diff options
author | Sean Fertile <sd.fertile@gmail.com> | 2020-01-27 15:21:19 -0500 |
---|---|---|
committer | Sean Fertile <sd.fertile@gmail.com> | 2020-02-07 13:33:44 -0500 |
commit | 88073d40c7d84d59cffe7703e2a85694936fff68 (patch) | |
tree | c789e1ac347afb9597d5bcd95df95dbdc1f7fb03 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 278578744a4773d592c8b4be6827472a4a77a9c8 (diff) | |
download | llvm-88073d40c7d84d59cffe7703e2a85694936fff68.zip llvm-88073d40c7d84d59cffe7703e2a85694936fff68.tar.gz llvm-88073d40c7d84d59cffe7703e2a85694936fff68.tar.bz2 |
[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
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions