[llvm] [LegalizeDAG][X86][AArch64][LoongArch] Freeze index when converting extract_elt/extract_subvector to load/store on stack. (PR #88985)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 16 14:06:50 PDT 2024


================
@@ -1405,6 +1405,9 @@ SDValue SelectionDAGLegalize::ExpandExtractFromVectorThroughStack(SDValue Op) {
     Ch = DAG.getStore(DAG.getEntryNode(), dl, Vec, StackPtr, StoreMMO);
   }
 
+  // Freeze the index so we don't poison the clamping code we're about to emit.
+  Idx = DAG.getFreeze(Idx);
----------------
arsenm wrote:

I believe GlobalIsel has the same issue 

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


More information about the llvm-commits mailing list