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

Abhishek Kaushik via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 5 21:52:09 PDT 2025


abhishek-kaushik22 wrote:

> This seems to be breaking one of our internal software. Backend crashes with:
> 
> ```
> ScalarizeVectorOperand Op #4: t94: ch = masked_store<(store (s64) into %ir.add.ptr, !alias.scope !2182)> t12, t98, t11, undef:i64, t96
> ```
> 
> Relevant lines of backtrace:
> 
> ```
> #8 llvm::DAGTypeLegalizer::run() 
> #9 0x000055c40ae936b2 llvm::SelectionDAG::LegalizeTypes() 
> #10 0x000055c40ae53808 llvm::SelectionDAGISel::CodeGenAndEmitDAG()
> ```

Is the error `"Do not know how to scalarize this operator's operand!"`? I see there is no case in `ScalarizeVectorOperand` to scalarize `ISD::MSTORE`, but it shouldn't be too hard to add one. Can you please share what target is this failing on and maybe a minimal reproducer?

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


More information about the llvm-commits mailing list