[all-commits] [llvm/llvm-project] 88073d: [PowerPC] Create a FixedStack object for CR save i...
Sean Fertile via All-commits
all-commits at lists.llvm.org
Fri Feb 7 10:34:13 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 88073d40c7d84d59cffe7703e2a85694936fff68
https://github.com/llvm/llvm-project/commit/88073d40c7d84d59cffe7703e2a85694936fff68
Author: Sean Fertile <sd.fertile at gmail.com>
Date: 2020-02-07 (Fri, 07 Feb 2020)
Changed paths:
M llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
A llvm/test/CodeGen/PowerPC/ppc64-alloca-crspill.ll
A llvm/test/CodeGen/PowerPC/ppc64-crsave.mir
Log Message:
-----------
[PowerPC] Create a FixedStack object for CR save in linkage area.
hasReservedSpillSlot returns a dummy frame index of '0' on PPC64 for the
non-volatile condition registers, which leads to the CalleSavedInfo
either referencing an unrelated stack object, or an invalid object if
there are no stack objects. The latter case causes the mir-printer to
crash due to assertions that checks if the frame index referenced by a
CalleeSavedInfo is valid.
To fix the problem create an immutable FixedStack object at the correct offset
in the linkage area of the previous stack frame (ie SP + positive offset).
Differential Revision: https://reviews.llvm.org/D73709
More information about the All-commits
mailing list