[WinEH] Make sure LSDA tables are 4 byte aligned
authorReid Kleckner <reid@kleckner.net>
Fri, 10 Jul 2015 00:08:49 +0000 (00:08 +0000)
committerReid Kleckner <reid@kleckner.net>
Fri, 10 Jul 2015 00:08:49 +0000 (00:08 +0000)
commitb4eeb6bca5f9037af0c319036e558ba08f18ee3d
tree476b180c5f8853e1682de2d92190d28a6d8c44a5
parent89a5e2532d8284fe01992acd1e96b6fce4ffffb8
[WinEH] Make sure LSDA tables are 4 byte aligned

Apparently this is important, otherwise _except_handler3 assumes that
the registration node is corrupted and ignores it.

Also fix a bug in WinEHPrepare where we would insert code after a
terminator instruction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241877 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/AsmPrinter/WinException.cpp
lib/Target/X86/X86WinEHState.cpp
test/CodeGen/WinEH/cppeh-prepared-catch-reordered.ll
test/CodeGen/WinEH/cppeh-prepared-catch.ll
test/CodeGen/WinEH/cppeh-prepared-cleanups.ll
test/CodeGen/X86/seh-catch-all-win32.ll
test/CodeGen/X86/win32-eh.ll