diff options
| author | Reid Kleckner <reid@kleckner.net> | 2015-06-10 01:34:54 +0000 |
|---|---|---|
| committer | Reid Kleckner <reid@kleckner.net> | 2015-06-10 01:34:54 +0000 |
| commit | 673de15af9db9c5082c4c15d6960d7f669295a42 (patch) | |
| tree | 45e58aba504569398249a64a1f66391dd1e71b62 /llvm/test | |
| parent | 18f4c9f5a065322f1263fcd0d151581da45a815b (diff) | |
| download | bcm5719-llvm-673de15af9db9c5082c4c15d6960d7f669295a42.tar.gz bcm5719-llvm-673de15af9db9c5082c4c15d6960d7f669295a42.zip | |
[WinEH] Call llvm.stackrestore in __except blocks
We have to do this manually, the runtime only sets up ebp. Fixes a crash
when returning after catching an exception.
llvm-svn: 239451
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/CodeGen/X86/seh-safe-div-win32.ll | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/seh-safe-div-win32.ll b/llvm/test/CodeGen/X86/seh-safe-div-win32.ll index 66967797076..e5cbc587bb2 100644 --- a/llvm/test/CodeGen/X86/seh-safe-div-win32.ll +++ b/llvm/test/CodeGen/X86/seh-safe-div-win32.ll @@ -77,11 +77,15 @@ __try.cont: ; CHECK: [[handler0:Ltmp[0-9]+]]: # Block address taken ; CHECK: # %handler0 +; Restore SP +; CHECK: movl {{.*}}(%ebp), %esp ; CHECK: calll _puts ; CHECK: jmp [[cont_bb]] ; CHECK: [[handler1:Ltmp[0-9]+]]: # Block address taken ; CHECK: # %handler1 +; Restore SP +; CHECK: movl {{.*}}(%ebp), %esp ; CHECK: calll _puts ; CHECK: jmp [[cont_bb]] |

