[AMDGPU] Move WQM/WWM intrinsic instruction selection to AMDGPUISelDAGToDAG
Reviewers: arsenm, nhaehnle
Reviewed By: arsenm
Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65328
llvm-svn: 367105
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp b/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
index ef04732..e8de282 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
@@ -2244,9 +2244,15 @@
unsigned IntrID = cast<ConstantSDNode>(N->getOperand(0))->getZExtValue();
unsigned Opcode;
switch (IntrID) {
+ case Intrinsic::amdgcn_wqm:
+ Opcode = AMDGPU::WQM;
+ break;
case Intrinsic::amdgcn_softwqm:
Opcode = AMDGPU::SOFT_WQM;
break;
+ case Intrinsic::amdgcn_wwm:
+ Opcode = AMDGPU::WWM;
+ break;
default:
SelectCode(N);
return;
diff --git a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
index 0975c30..9a323c6 100644
--- a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+++ b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
@@ -5979,16 +5979,6 @@
Op.getOperand(1), Op.getOperand(2));
return DAG.getNode(ISD::BITCAST, DL, VT, Node);
}
- case Intrinsic::amdgcn_wqm: {
- SDValue Src = Op.getOperand(1);
- return SDValue(DAG.getMachineNode(AMDGPU::WQM, DL, Src.getValueType(), Src),
- 0);
- }
- case Intrinsic::amdgcn_wwm: {
- SDValue Src = Op.getOperand(1);
- return SDValue(DAG.getMachineNode(AMDGPU::WWM, DL, Src.getValueType(), Src),
- 0);
- }
case Intrinsic::amdgcn_fmad_ftz:
return DAG.getNode(AMDGPUISD::FMAD_FTZ, DL, VT, Op.getOperand(1),
Op.getOperand(2), Op.getOperand(3));