[X86] EmitTruncSStore - X86ISD::VTRUNCSTORES/VTRUNCSTOREUS no longer take a mask operand (#185676)
X86ISD::VMTRUNCSTORES/VMTRUNCSTOREUS were split off some time ago
Fixes verification failure in X86SelectionDAGInfo::verifyTargetNode
(#185649)
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index 5cc2252..5edfd0c 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -28180,8 +28180,7 @@
SDValue Ptr, EVT MemVT, MachineMemOperand *MMO,
SelectionDAG &DAG) {
SDVTList VTs = DAG.getVTList(MVT::Other);
- SDValue Undef = DAG.getUNDEF(Ptr.getValueType());
- SDValue Ops[] = { Chain, Val, Ptr, Undef };
+ SDValue Ops[] = {Chain, Val, Ptr};
unsigned Opc = SignedSat ? X86ISD::VTRUNCSTORES : X86ISD::VTRUNCSTOREUS;
return DAG.getMemIntrinsicNode(Opc, DL, VTs, Ops, MemVT, MMO);
}
diff --git a/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp b/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
index f5e422c..77f8a3f 100644
--- a/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
+++ b/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
@@ -72,8 +72,6 @@
break;
case X86ISD::VP2INTERSECT:
// invalid number of results; expected 1, got 2
- case X86ISD::VTRUNCSTOREUS:
- case X86ISD::VTRUNCSTORES:
case X86ISD::FSETCCM_SAE:
// invalid number of operands; expected 3, got 4
case X86ISD::CVTTP2SI_SAE: