[SEH] Emit 32-bit SEH tables for the new EH IR
authorReid Kleckner <rnk@google.com>
Wed, 9 Sep 2015 21:10:03 +0000 (21:10 +0000)
committerReid Kleckner <rnk@google.com>
Wed, 9 Sep 2015 21:10:03 +0000 (21:10 +0000)
commit69d051c87d28550b8721143a4d3135b4fa593af0
treee53ff39e1db074a92cdd05142f9d9ccbf2f393de
parent6859e58f5badd1240edcc876c4ffd30cbba6292d
[SEH] Emit 32-bit SEH tables for the new EH IR

The 32-bit tables don't actually contain PC range data, so emitting them
is incredibly simple.

The 64-bit tables, on the other hand, use the same table for state
numbering as well as label ranges. This makes things more difficult, so
it will be implemented later.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@247192 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/CodeGen/WinEHFuncInfo.h
lib/CodeGen/AsmPrinter/WinException.cpp
lib/CodeGen/AsmPrinter/WinException.h
lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
lib/CodeGen/WinEHPrepare.cpp
lib/Target/X86/X86ISelLowering.cpp
lib/Target/X86/X86WinEHState.cpp
test/CodeGen/X86/win32-seh-catchpad.ll [new file with mode: 0644]