[llvm] [AMDGPU] Update base addr of dyn alloca considering GrowingUp stack (PR #119822)

Sergei Barannikov via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 16 09:52:55 PST 2024


================
@@ -4036,20 +4047,12 @@ SDValue SITargetLowering::lowerDYNAMIC_STACKALLOCImpl(SDValue Op,
       ISD::SHL, dl, VT, Size,
       DAG.getConstant(Subtarget->getWavefrontSizeLog2(), dl, MVT::i32));
 
-  Align StackAlign = TFL->getStackAlign();
-  Tmp1 = DAG.getNode(Opc, dl, VT, SP, ScaledSize); // Value
-  if (Alignment && *Alignment > StackAlign) {
-    Tmp1 = DAG.getNode(
-        ISD::AND, dl, VT, Tmp1,
-        DAG.getSignedConstant(-(uint64_t)Alignment->value()
-                                  << Subtarget->getWavefrontSizeLog2(),
-                              dl, VT));
-  }
+  Tmp1 = DAG.getNode(Opc, dl, VT, SPOld, ScaledSize); // Value
----------------
s-barannikov wrote:

It should be
```suggestion
  Tmp1 = DAG.getNode(Opc, dl, VT, Tmp1, ScaledSize); // Value
```
Also, rename Tmp1/Tmp2 to something more meaningful?


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


More information about the llvm-commits mailing list