diff options
| author | Reid Kleckner <reid@kleckner.net> | 2015-04-17 01:01:27 +0000 |
|---|---|---|
| committer | Reid Kleckner <reid@kleckner.net> | 2015-04-17 01:01:27 +0000 |
| commit | d4523e3c5189dfefe4d59a1d226eefa624edeae1 (patch) | |
| tree | d8cf75f6bde24a7014ec5264aa8769bbfffc0999 /llvm/test/CodeGen/WinEH/seh-inlined-finally.ll | |
| parent | de50d36ab39b9d591bae6562f76a6e0c3169e84b (diff) | |
| download | bcm5719-llvm-d4523e3c5189dfefe4d59a1d226eefa624edeae1.tar.gz bcm5719-llvm-d4523e3c5189dfefe4d59a1d226eefa624edeae1.zip | |
[SEH] Reimplement x64 SEH using WinEHPrepare
This now emits simple, unoptimized xdata tables for __C_specific_handler
based on the handlers listed in @llvm.eh.actions calls produced by
WinEHPrepare.
This adds support for running __finally blocks when exceptions are
thrown, and removes the old landingpad fan-in codepath.
I ran some manual execution tests on small basic test cases with and
without optimization, as well as on Chrome base_unittests, which uses a
small amount of SEH. I'm sure there are bugs, and we may need to
revert.
llvm-svn: 235154
Diffstat (limited to 'llvm/test/CodeGen/WinEH/seh-inlined-finally.ll')
| -rw-r--r-- | llvm/test/CodeGen/WinEH/seh-inlined-finally.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/WinEH/seh-inlined-finally.ll b/llvm/test/CodeGen/WinEH/seh-inlined-finally.ll index 2e6171a8ced..21645cfc8ca 100644 --- a/llvm/test/CodeGen/WinEH/seh-inlined-finally.ll +++ b/llvm/test/CodeGen/WinEH/seh-inlined-finally.ll @@ -1,4 +1,4 @@ -; RUN: opt -S -winehprepare -sehprepare < %s | FileCheck %s +; RUN: opt -S -winehprepare < %s | FileCheck %s ; Check that things work when the mid-level optimizer inlines the finally ; block. |

