summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AMDGPU
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2017-02-15 22:17:09 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2017-02-15 22:17:09 +0000
commita78ca62c643b05d83c0b33d3c5a83e99add81373 (patch)
treeb463b31eb640a47a205a4e0046aeb931d23c89bf /llvm/lib/Target/AMDGPU
parent454d0cea6a39b16a610c7258d9330a00d0032b1d (diff)
downloadbcm5719-llvm-a78ca62c643b05d83c0b33d3c5a83e99add81373.tar.gz
bcm5719-llvm-a78ca62c643b05d83c0b33d3c5a83e99add81373.zip
AMDGPU: Consolidate sendmsg/sendmsghalt handling and tests
llvm-svn: 295244
Diffstat (limited to 'llvm/lib/Target/AMDGPU')
-rw-r--r--llvm/lib/Target/AMDGPU/SIISelLowering.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
index 5c8aee79fdb..491880794f5 100644
--- a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+++ b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
@@ -2936,16 +2936,13 @@ SDValue SITargetLowering::LowerINTRINSIC_VOID(SDValue Op,
return DAG.getNode(Opc, DL, Op->getVTList(), Ops);
}
case Intrinsic::amdgcn_s_sendmsg:
+ case Intrinsic::amdgcn_s_sendmsghalt:
case AMDGPUIntrinsic::SI_sendmsg: {
+ unsigned NodeOp = (IntrinsicID == Intrinsic::amdgcn_s_sendmsghalt) ?
+ AMDGPUISD::SENDMSGHALT : AMDGPUISD::SENDMSG;
Chain = copyToM0(DAG, Chain, DL, Op.getOperand(3));
SDValue Glue = Chain.getValue(1);
- return DAG.getNode(AMDGPUISD::SENDMSG, DL, MVT::Other, Chain,
- Op.getOperand(2), Glue);
- }
- case Intrinsic::amdgcn_s_sendmsghalt: {
- Chain = copyToM0(DAG, Chain, DL, Op.getOperand(3));
- SDValue Glue = Chain.getValue(1);
- return DAG.getNode(AMDGPUISD::SENDMSGHALT, DL, MVT::Other, Chain,
+ return DAG.getNode(NodeOp, DL, MVT::Other, Chain,
Op.getOperand(2), Glue);
}
case AMDGPUIntrinsic::SI_tbuffer_store: {
OpenPOWER on IntegriCloud