[llvm] 24be429 - SystemZ: Use correctly offset MachinePointerInfo in CC lowering (#177793)
via llvm-commits
llvm-commits at lists.llvm.org
Sat Jan 24 15:02:44 PST 2026
Author: Matt Arsenault
Date: 2026-01-25T00:02:39+01:00
New Revision: 24be429c8e5c4fb8bef03ab8bffcd833d103acc5
URL: https://github.com/llvm/llvm-project/commit/24be429c8e5c4fb8bef03ab8bffcd833d103acc5
DIFF: https://github.com/llvm/llvm-project/commit/24be429c8e5c4fb8bef03ab8bffcd833d103acc5.diff
LOG: SystemZ: Use correctly offset MachinePointerInfo in CC lowering (#177793)
Previously this was just using the original base address as
the pointer info.
Added:
Modified:
llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp b/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
index ad37edf1b6939..3bc90a16f51db 100644
--- a/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
+++ b/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
@@ -2365,9 +2365,11 @@ SystemZTargetLowering::LowerCall(CallLoweringInfo &CLI,
SlotVT = Outs[I].VT;
SDValue SpillSlot = DAG.CreateStackTemporary(SlotVT);
int FI = cast<FrameIndexSDNode>(SpillSlot)->getIndex();
+
+ MachinePointerInfo StackPtrInfo =
+ MachinePointerInfo::getFixedStack(MF, FI);
MemOpChains.push_back(
- DAG.getStore(Chain, DL, ArgValue, SpillSlot,
- MachinePointerInfo::getFixedStack(MF, FI)));
+ DAG.getStore(Chain, DL, ArgValue, SpillSlot, StackPtrInfo));
// If the original argument was split (e.g. i128), we need
// to store all parts of it here (and pass just one address).
assert(Outs[I].PartOffset == 0);
@@ -2379,7 +2381,7 @@ SystemZTargetLowering::LowerCall(CallLoweringInfo &CLI,
DAG.getIntPtrConstant(PartOffset, DL));
MemOpChains.push_back(
DAG.getStore(Chain, DL, PartValue, Address,
- MachinePointerInfo::getFixedStack(MF, FI)));
+ StackPtrInfo.getWithOffset(PartOffset)));
assert(PartOffset && "Offset should be non-zero.");
assert((PartOffset + PartValue.getValueType().getStoreSize() <=
SlotVT.getStoreSize()) && "Not enough space for argument part!");
More information about the llvm-commits
mailing list