Re-land "[WinEH] Add an EH registration and state insertion pass for 32-bit x86"
authorReid Kleckner <reid@kleckner.net>
Tue, 5 May 2015 17:44:16 +0000 (17:44 +0000)
committerReid Kleckner <reid@kleckner.net>
Tue, 5 May 2015 17:44:16 +0000 (17:44 +0000)
commit4def1cbf5dd653abe1b4c408bb531b49aad1ddfb
treef614fe93812d453f2862cd0f21063929f3a4b0b0
parent2f7322b3480ede79b80d2aac5f1827e277f4dbee
Re-land "[WinEH] Add an EH registration and state insertion pass for 32-bit x86"

This reverts commit r236360.

This change exposed a bug in WinEHPrepare by opting win32 code into EH
preparation. We already knew that WinEHPrepare has bugs, and is the
status quo for x64, so I don't think that's a reason to hold off on this
change. I disabled exceptions in the sanitizer tests in r236505 and an
earlier revision.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236508 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/MC/MCAsmInfo.h
lib/CodeGen/AsmPrinter/AsmPrinter.cpp
lib/CodeGen/WinEHPrepare.cpp
lib/Target/X86/CMakeLists.txt
lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
lib/Target/X86/X86.h
lib/Target/X86/X86TargetMachine.cpp
lib/Target/X86/X86WinEHState.cpp [new file with mode: 0644]
test/CodeGen/X86/inalloca-invoke.ll
test/CodeGen/X86/win32-eh.ll [new file with mode: 0644]