[COFF, ARM64] Fix localaddress to handle stack realignment and variable size objects
authorMandeep Singh Grang <mgrang@quicinc.org>
Fri, 1 Feb 2019 21:41:33 +0000 (21:41 +0000)
committerMandeep Singh Grang <mgrang@quicinc.org>
Fri, 1 Feb 2019 21:41:33 +0000 (21:41 +0000)
commit70d484d94e3ec1f6c563b3f2e85f88becb977a41
tree22c4744f728a5db40148af9e0a6a474f6dfc4eff
parente95550f508b850c5144b7d1a63bad5680fe83f6d
[COFF, ARM64] Fix localaddress to handle stack realignment and variable size objects

Summary: This fixes using the correct stack registers for SEH when stack realignment is needed or when variable size objects are present.

Reviewers: rnk, efriedma, ssijaric, TomTan

Reviewed By: rnk, efriedma

Subscribers: javed.absar, kristof.beyls, llvm-commits

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

llvm-svn: 352923
llvm/include/llvm/CodeGen/MachineFunction.h
llvm/include/llvm/CodeGen/TargetFrameLowering.h
llvm/lib/CodeGen/AsmPrinter/WinException.cpp
llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
llvm/lib/Target/AArch64/AArch64FrameLowering.h
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
llvm/lib/Target/AArch64/AArch64RegisterInfo.h
llvm/test/CodeGen/AArch64/seh-finally.ll
llvm/test/CodeGen/AArch64/seh-localescape.ll [deleted file]