diff options
author | David Majnemer <david.majnemer@gmail.com> | 2015-12-15 21:27:27 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2015-12-15 21:27:27 +0000 |
commit | 3bb88c0210d955628f0b0daf5da52769815f3f25 (patch) | |
tree | 39b3e9cd4150a23f9e634dfa9024c6713635c49d /llvm/test/CodeGen/X86/win32-seh-nested-finally.ll | |
parent | 2a27fc40a85d4d962f8b95422b10aefa646aee20 (diff) | |
download | bcm5719-llvm-3bb88c0210d955628f0b0daf5da52769815f3f25.tar.gz bcm5719-llvm-3bb88c0210d955628f0b0daf5da52769815f3f25.zip |
[WinEH] Use operand bundles to describe call sites
SimplifyCFG allows tail merging with code which terminates in
unreachable which, in turn, makes it possible for an invoke to end up in
a funclet which it was not originally part of.
Using operand bundles on invokes allows us to determine whether or not
an invoke was part of a funclet in the source program.
Furthermore, it allows us to unambiguously answer questions about the
legality of inlining into call sites which the personality may have
trouble with.
Differential Revision: http://reviews.llvm.org/D15517
llvm-svn: 255674
Diffstat (limited to 'llvm/test/CodeGen/X86/win32-seh-nested-finally.ll')
-rw-r--r-- | llvm/test/CodeGen/X86/win32-seh-nested-finally.ll | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/test/CodeGen/X86/win32-seh-nested-finally.ll b/llvm/test/CodeGen/X86/win32-seh-nested-finally.ll index c91a14278ec..61bf79a76f8 100644 --- a/llvm/test/CodeGen/X86/win32-seh-nested-finally.ll +++ b/llvm/test/CodeGen/X86/win32-seh-nested-finally.ll @@ -18,7 +18,7 @@ invoke.cont.1: ; preds = %invoke.cont ehcleanup: ; preds = %entry %0 = cleanuppad within none [] - invoke void @f(i32 2) #3 + invoke void @f(i32 2) #3 [ "funclet"(token %0) ] to label %invoke.cont.2 unwind label %ehcleanup.3 invoke.cont.2: ; preds = %ehcleanup @@ -26,7 +26,7 @@ invoke.cont.2: ; preds = %ehcleanup ehcleanup.3: ; preds = %invoke.cont.2, %ehcleanup.end, %invoke.cont %1 = cleanuppad within none [] - call void @f(i32 3) #3 + call void @f(i32 3) #3 [ "funclet"(token %1) ] cleanupret from %1 unwind to caller } |