]> granicus.if.org Git - llvm/commit
[AArch64][WinCFI] Do not pair callee-save instructions in LoadStoreOptimizer
authorSander de Smalen <sander.desmalen@arm.com>
Wed, 7 Aug 2019 12:41:38 +0000 (12:41 +0000)
committerSander de Smalen <sander.desmalen@arm.com>
Wed, 7 Aug 2019 12:41:38 +0000 (12:41 +0000)
commitf7c0c16f0fbbd122ae07426b01c4788e5182f955
treea5c19c443576dee46f2cceff5262b968bdd444a9
parent50ef2839f968711c54af7e871d1bd49d668d5a46
[AArch64][WinCFI] Do not pair callee-save instructions in LoadStoreOptimizer

Prevent the LoadStoreOptimizer from pairing any load/store instructions with
instructions from the prologue/epilogue if the CFI information has encoded the
operations as separate instructions.  This would otherwise lead to a mismatch
of the actual prologue size from the size as recorded in the Windows CFI.

Reviewers: efriedma, mstorsjo, ssijaric

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D65817

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@368164 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AArch64/AArch64InstrInfo.cpp
test/CodeGen/AArch64/wineh1.mir
test/CodeGen/AArch64/wineh2.mir
test/DebugInfo/COFF/AArch64/arm64-register-variables.ll