[llvm] b0d9d4d - [X86] EmitTruncSStore - X86ISD::VTRUNCSTORES/VTRUNCSTOREUS no longer take a mask operand (#185676)

via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 10 09:57:37 PDT 2026


Author: Simon Pilgrim
Date: 2026-03-10T16:57:29Z
New Revision: b0d9d4d240722209126f866a3776bf921d65aeda

URL: https://github.com/llvm/llvm-project/commit/b0d9d4d240722209126f866a3776bf921d65aeda
DIFF: https://github.com/llvm/llvm-project/commit/b0d9d4d240722209126f866a3776bf921d65aeda.diff

LOG: [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)

Added: 
    

Modified: 
    llvm/lib/Target/X86/X86ISelLowering.cpp
    llvm/lib/Target/X86/X86SelectionDAGInfo.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index 5cc2252fdc4f1..5edfd0c91b2b7 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -28180,8 +28180,7 @@ EmitTruncSStore(bool SignedSat, SDValue Chain, const SDLoc &DL, SDValue Val,
                 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 f5e422cbd0f89..77f8a3f266e10 100644
--- a/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
+++ b/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
@@ -72,8 +72,6 @@ void X86SelectionDAGInfo::verifyTargetNode(const SelectionDAG &DAG,
     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:


        


More information about the llvm-commits mailing list