From: Neumann Hon Date: Wed, 14 Jun 2023 17:34:16 +0000 (-0400) Subject: Revert "[SystemZ][z/OS] Correct value of length/4 of params field in PPA1." X-Git-Tag: upstream/17.0.6~5074 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=049324ac5e1d04b5711a0a23b50370ce140502e9;p=platform%2Fupstream%2Fllvm.git Revert "[SystemZ][z/OS] Correct value of length/4 of params field in PPA1." This reverts commit e0f7b0e0f704dc3759925602e474b9e669270fcb. --- diff --git a/llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp b/llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp index b24eade..2bfde51 100644 --- a/llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp +++ b/llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp @@ -1058,7 +1058,7 @@ void SystemZAsmPrinter::emitPPA1(MCSymbol *FnEndSym) { OutStreamer->AddComment("Length/4 of Parms"); OutStreamer->emitInt16( - static_cast(ZFI->getSizeOfFnParams() / 4)); // Parms/4. + static_cast(MFFrame.getMaxCallFrameSize() / 4)); // Parms/4. OutStreamer->AddComment("Length of Code"); OutStreamer->emitAbsoluteSymbolDiff(FnEndSym, CurrentFnEPMarkerSym, 4); diff --git a/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp b/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp index c50e939..643b529 100644 --- a/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp +++ b/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp @@ -1505,7 +1505,6 @@ SDValue SystemZTargetLowering::LowerFormalArguments( SmallVector ArgLocs; SystemZCCState CCInfo(CallConv, IsVarArg, MF, ArgLocs, *DAG.getContext()); CCInfo.AnalyzeFormalArguments(Ins, CC_SystemZ); - FuncInfo->setSizeOfFnParams(CCInfo.getStackSize()); unsigned NumFixedGPRs = 0; unsigned NumFixedFPRs = 0; diff --git a/llvm/lib/Target/SystemZ/SystemZMachineFunctionInfo.h b/llvm/lib/Target/SystemZ/SystemZMachineFunctionInfo.h index 7a0802a..3331959 100644 --- a/llvm/lib/Target/SystemZ/SystemZMachineFunctionInfo.h +++ b/llvm/lib/Target/SystemZ/SystemZMachineFunctionInfo.h @@ -27,9 +27,6 @@ struct GPRRegs { class SystemZMachineFunctionInfo : public MachineFunctionInfo { virtual void anchor(); - /// Size of expected parameter area for current function. (Fixed args only). - unsigned SizeOfFnParams; - SystemZ::GPRRegs SpillGPRRegs; SystemZ::GPRRegs RestoreGPRRegs; Register VarArgsFirstGPR; @@ -41,20 +38,14 @@ class SystemZMachineFunctionInfo : public MachineFunctionInfo { public: SystemZMachineFunctionInfo(const Function &F, const TargetSubtargetInfo *STI) - : SizeOfFnParams(0), VarArgsFirstGPR(0), VarArgsFirstFPR(0), - VarArgsFrameIndex(0), RegSaveFrameIndex(0), FramePointerSaveIndex(0), - NumLocalDynamics(0) {} + : VarArgsFirstGPR(0), VarArgsFirstFPR(0), VarArgsFrameIndex(0), + RegSaveFrameIndex(0), FramePointerSaveIndex(0), NumLocalDynamics(0) {} MachineFunctionInfo * clone(BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap &Src2DstMBB) const override; - // z/OS: Get and set the size of the expected parameter area for the - // current function. (ie. Size of param area in caller). - unsigned getSizeOfFnParams() const { return SizeOfFnParams; } - void setSizeOfFnParams(unsigned Size) { SizeOfFnParams = Size; } - // Get and set the first and last call-saved GPR that should be saved by // this function and the SP offset for the STMG. These are 0 if no GPRs // need to be saved or restored. diff --git a/llvm/test/CodeGen/SystemZ/zos-prologue-epilog.ll b/llvm/test/CodeGen/SystemZ/zos-prologue-epilog.ll index 6b8c3bf..13224c0 100644 --- a/llvm/test/CodeGen/SystemZ/zos-prologue-epilog.ll +++ b/llvm/test/CodeGen/SystemZ/zos-prologue-epilog.ll @@ -14,9 +14,6 @@ ; CHECK64: lg 7, 2072(4) ; CHECK64: aghi 4, 192 ; CHECK64: b 2(7) - -; CHECK64: @@PPA1_func0_0: -; CHECK64: .short 0 * Length/4 of Parms define void @func0() { call i64 (i64) @fun(i64 10) ret void @@ -30,9 +27,6 @@ define void @func0() { ; CHECK64: lmg 7, 15, 2072(4) ; CHECK64: aghi 4, 160 ; CHECK64: b 2(7) - -; CHECK64: @@PPA1_func1_0: -; CHECK64: .short 2 * Length/4 of Parms define void @func1(ptr %ptr) { %l01 = load volatile i64, ptr %ptr %l02 = load volatile i64, ptr %ptr @@ -344,9 +338,6 @@ define void @large_stack0() { ; CHECK64: @BB7_2: ; CHECK64: stmg 6, 7, 2064(4) ; CHECK64: lgr 3, 0 - -; CHECK64: @@PPA1_large_stack1_0: -; CHECK64: .short 6 * Length/4 of Parms define void @large_stack1(i64 %n1, i64 %n2, i64 %n3) { %arr = alloca [131072 x i64], align 8 call i64 (ptr, i64, i64, i64) @fun3(ptr %arr,