[llvm] [X86] Combine `store + vselect` to `masked_store` (PR #145176)

Abhishek Kaushik via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 23 01:09:49 PDT 2025


================
@@ -53403,6 +53404,76 @@ static SDValue combineMaskedStore(SDNode *N, SelectionDAG &DAG,
   return SDValue();
 }
 
+static SDValue foldToMaskedStore(StoreSDNode *Store, SelectionDAG &DAG,
+                                 const SDLoc &Dl,
+                                 const X86Subtarget &Subtarget) {
----------------
abhishek-kaushik22 wrote:

The legality check helps simplify the mask that is passed to mstore, before type legalization it's usually a `vXi1` which may not be legal

https://github.com/llvm/llvm-project/pull/145176


More information about the llvm-commits mailing list