diff options
| author | Reid Kleckner <reid@kleckner.net> | 2015-04-22 22:13:09 +0000 |
|---|---|---|
| committer | Reid Kleckner <reid@kleckner.net> | 2015-04-22 22:13:09 +0000 |
| commit | 64a2a6a473553f178b74c785722d4f8dfd6b9eb1 (patch) | |
| tree | 03832e9e3ad863a9a103c0bd9e617dbe40ac7c6a /llvm/lib/CodeGen/WinEHPrepare.cpp | |
| parent | 1f6220b0c9db9061f1fa1bfa83eca3d28fa627a7 (diff) | |
| download | bcm5719-llvm-64a2a6a473553f178b74c785722d4f8dfd6b9eb1.tar.gz bcm5719-llvm-64a2a6a473553f178b74c785722d4f8dfd6b9eb1.zip | |
[SEH] Remove the old __C_specific_handler code now that WinEHPrepare works
This removes the -sehprepare flag and makes __C_specific_handler
functions always to use WinEHPrepare.
This was tested by building all of chromium_builder_tests and running a
few tests that use SEH, but if something breaks, we can revert this.
llvm-svn: 235557
Diffstat (limited to 'llvm/lib/CodeGen/WinEHPrepare.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/WinEHPrepare.cpp | 15 |
1 files changed, 0 insertions, 15 deletions
diff --git a/llvm/lib/CodeGen/WinEHPrepare.cpp b/llvm/lib/CodeGen/WinEHPrepare.cpp index b368f3b1754..67f7cdc8faf 100644 --- a/llvm/lib/CodeGen/WinEHPrepare.cpp +++ b/llvm/lib/CodeGen/WinEHPrepare.cpp @@ -323,11 +323,6 @@ FunctionPass *llvm::createWinEHPass(const TargetMachine *TM) { return new WinEHPrepare(TM); } -// FIXME: Remove this once the backend can handle the prepared IR. -static cl::opt<bool> - SEHPrepare("sehprepare", cl::Hidden, - cl::desc("Prepare functions with SEH personalities")); - bool WinEHPrepare::runOnFunction(Function &Fn) { // No need to prepare outlined handlers. if (Fn.hasFnAttribute("wineh-parent")) @@ -355,16 +350,6 @@ bool WinEHPrepare::runOnFunction(Function &Fn) { DT = &getAnalysis<DominatorTreeWrapperPass>().getDomTree(); - if (isAsynchronousEHPersonality(Personality) && !SEHPrepare) { - // Replace all resume instructions with unreachable. - // FIXME: Remove this once the backend can handle the prepared IR. - for (ResumeInst *Resume : Resumes) { - IRBuilder<>(Resume).CreateUnreachable(); - Resume->eraseFromParent(); - } - return true; - } - // If there were any landing pads, prepareExceptionHandlers will make changes. prepareExceptionHandlers(Fn, LPads); return true; |

