summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorYaxun Liu <Yaxun.Liu@amd.com>2017-11-22 16:13:35 +0000
committerYaxun Liu <Yaxun.Liu@amd.com>2017-11-22 16:13:35 +0000
commitc5962266044b4d328a29b6c2ebe7d3587a7b0cd2 (patch)
tree8b3bf9865fa59c9c5d2b074aa4e65d577da7cc9d /llvm/lib
parentb45d43c397a956ad533829123f476be5c8d3c3ab (diff)
downloadbcm5719-llvm-c5962266044b4d328a29b6c2ebe7d3587a7b0cd2.tar.gz
bcm5719-llvm-c5962266044b4d328a29b6c2ebe7d3587a7b0cd2.zip
[AMDGPU] Fix SITargetLowering::LowerCall for pointer info of byval argument
SITargetLowering::LowerCall uses dummy pointer info for byval argument, which causes flat load instead of buffer load. This patch fixes that. Differential Revision: https://reviews.llvm.org/D40040 llvm-svn: 318844
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/AMDGPU/SIISelLowering.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
index 3493de90fcb..2561f7f09fe 100644
--- a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+++ b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
@@ -2296,8 +2296,9 @@ SDValue SITargetLowering::LowerCall(CallLoweringInfo &CLI,
SDValue Cpy = DAG.getMemcpy(
Chain, DL, DstAddr, Arg, SizeNode, Outs[i].Flags.getByValAlign(),
/*isVol = */ false, /*AlwaysInline = */ true,
- /*isTailCall = */ false,
- DstInfo, MachinePointerInfo());
+ /*isTailCall = */ false, DstInfo,
+ MachinePointerInfo(UndefValue::get(Type::getInt8PtrTy(
+ *DAG.getContext(), AMDGPUASI.PRIVATE_ADDRESS))));
MemOpChains.push_back(Cpy);
} else {
OpenPOWER on IntegriCloud