[llvm] [SystemZ] Eliminate call sequence instructions early. (PR #77812)

Ulrich Weigand via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 12 04:43:48 PST 2024


================
@@ -8096,6 +8096,24 @@ static void createPHIsForSelects(SmallVector<MachineInstr*, 8> &Selects,
   MF->getProperties().reset(MachineFunctionProperties::Property::NoPHIs);
 }
 
+MachineBasicBlock *
+SystemZTargetLowering::emitAdjCallStack(MachineInstr &MI,
+                                        MachineBasicBlock *BB) const {
+  // Do the work of MachineFrameInfo::computeMaxCallFrameSize() early and
+  // remove these nodes. Given that these nodes start out as a glued sequence
+  // it seems best to remove them here after instruction selection and
+  // scheduling.  NB: MIR testing does not work (yet) for call frames with
+  // this.
----------------
uweigand wrote:

Can you elaborate what that problem with MIR testing is, and whether we need to fix it before landing this upstream?

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


More information about the llvm-commits mailing list