[WinEH] Don't let UnwindHelp alias the return address
authorReid Kleckner <rnk@google.com>
Mon, 16 Nov 2015 18:47:25 +0000 (18:47 +0000)
committerReid Kleckner <rnk@google.com>
Mon, 16 Nov 2015 18:47:25 +0000 (18:47 +0000)
commite689ed5002a7e9f8e4a32ece8af8807ca4c2cb25
treeb757b196e599be0c6d8ba22aa3506b6a5ba85cc0
parent0929f1339a162688ca7f5b57f244937815e30e06
[WinEH] Don't let UnwindHelp alias the return address

On top of that, don't bother allocating and initializing UnwindHelp if
we don't have any funclets. Currently we always use RBP as our frame
pointer when funclets are present, so this change makes it impossible to
come here without any fixed stack objects.

Fixes PR25533.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@253245 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86FrameLowering.cpp
test/CodeGen/X86/win-cleanuppad.ll
test/CodeGen/X86/wineh-no-ehpads.ll [new file with mode: 0644]