[X86] Fix callee side of receiving byval args on the stack
authorHans Wennborg <hans@chromium.org>
Thu, 15 Jun 2023 13:01:36 +0000 (15:01 +0200)
committerHans Wennborg <hans@chromium.org>
Fri, 16 Jun 2023 12:11:21 +0000 (14:11 +0200)
commit6fa1a2c084ea877c782987169649cac111c3d463
treebe440abd796475c2c3db4be6d76450ec7211c17e
parentc9888dce44748bfbf3719351c3feb3359eaba017
[X86] Fix callee side of receiving byval args on the stack

See the discussion in
https://discourse.llvm.org/t/generic-llvm-ir-windows-x64-argument-passing-issue-in-llvm-11-0-0-and-later/71350

D51842 implemented byval lowering for Win64. D83175 made the call
lowering honor the "from now on treat this as a regular pointer" comment
also when the argument gets passed on the stack. However, it didn't
update the callee side.

Differential revision: https://reviews.llvm.org/D153020
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/win64-byval.ll