diff options
author | Reid Kleckner <reid@kleckner.net> | 2015-05-01 20:14:04 +0000 |
---|---|---|
committer | Reid Kleckner <reid@kleckner.net> | 2015-05-01 20:14:04 +0000 |
commit | 2747d3d55a2a4c67c2126b42c4eb823ed456b2a4 (patch) | |
tree | f175df2251cd7dde883fddb098ff5c5354eee7e1 /llvm/lib/CodeGen/WinEHPrepare.cpp | |
parent | 4856fc61b4820992534be6a0040dfc4ab9c7b207 (diff) | |
download | bcm5719-llvm-2747d3d55a2a4c67c2126b42c4eb823ed456b2a4.tar.gz bcm5719-llvm-2747d3d55a2a4c67c2126b42c4eb823ed456b2a4.zip |
Revert "[WinEH] Add an EH registration and state insertion pass for 32-bit x86"
This reverts commit r236339, it breaks the win32 clang-cl self-host.
llvm-svn: 236340
Diffstat (limited to 'llvm/lib/CodeGen/WinEHPrepare.cpp')
-rw-r--r-- | llvm/lib/CodeGen/WinEHPrepare.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/llvm/lib/CodeGen/WinEHPrepare.cpp b/llvm/lib/CodeGen/WinEHPrepare.cpp index db91c02ee46..c1067c5d560 100644 --- a/llvm/lib/CodeGen/WinEHPrepare.cpp +++ b/llvm/lib/CodeGen/WinEHPrepare.cpp @@ -8,11 +8,9 @@ //===----------------------------------------------------------------------===// // // This pass lowers LLVM IR exception handling into something closer to what the -// backend wants for functions using a personality function from a runtime -// provided by MSVC. Functions with other personality functions are left alone -// and may be prepared by other passes. In particular, all supported MSVC -// personality functions require cleanup code to be outlined, and the C++ -// personality requires catch handler code to be outlined. +// backend wants. It snifs the personality function to see which kind of +// preparation is necessary. If the personality function uses the Itanium LSDA, +// this pass delegates to the DWARF EH preparation pass. // //===----------------------------------------------------------------------===// @@ -33,6 +31,7 @@ #include "llvm/IR/Module.h" #include "llvm/IR/PatternMatch.h" #include "llvm/Pass.h" +#include "llvm/Support/CommandLine.h" #include "llvm/Support/Debug.h" #include "llvm/Support/raw_ostream.h" #include "llvm/Transforms/Utils/BasicBlockUtils.h" @@ -923,7 +922,7 @@ bool WinEHPrepare::prepareExceptionHandlers( if (SEHExceptionCodeSlot) { if (SEHExceptionCodeSlot->hasNUses(0)) SEHExceptionCodeSlot->eraseFromParent(); - else if (isAllocaPromotable(SEHExceptionCodeSlot)) + else PromoteMemToReg(SEHExceptionCodeSlot, *DT); } |