Revert "Revert "Reapply D70800: Fix AArch64 AAPCS frame record chain""
authorOwen Anderson <resistor@mac.com>
Tue, 1 Sep 2020 19:25:30 +0000 (19:25 +0000)
committerOwen Anderson <resistor@mac.com>
Tue, 1 Sep 2020 19:29:03 +0000 (19:29 +0000)
commit5987da8764b71cd59fec772323cc2003bd82da38
tree1a208806b3d61ea18cf7a1792ade89fa0a6b4d30
parentae95ceeb8f98d81f615c69da02f73b5ee6b1519a
Revert "Revert "Reapply D70800: Fix AArch64 AAPCS frame record chain""

This reverts commit bc9a29b9ee6ade4894252b1470977142c32b4602.

The reasoning that this patch was wrong was itself incorrect
(see discussion on llvm-commits). This patch does seem to be exposing
a latent SVE code generation bug on non-public tests, which should
not block a correctness fix for public, non-SVE use cases.
llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
llvm/test/CodeGen/AArch64/framelayout-fp-csr.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/framelayout-frame-record.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/framelayout-unaligned-fp.ll [new file with mode: 0644]