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/wineh-exceptionpointer.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/wineh-exceptionpointer.ll')
-rw-r--r-- | llvm/test/CodeGen/X86/wineh-exceptionpointer.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/X86/wineh-exceptionpointer.ll b/llvm/test/CodeGen/X86/wineh-exceptionpointer.ll index 9c1f0aaf3de..f6fd4fe7c52 100644 --- a/llvm/test/CodeGen/X86/wineh-exceptionpointer.ll +++ b/llvm/test/CodeGen/X86/wineh-exceptionpointer.ll @@ -19,7 +19,7 @@ catch.body: %catch = catchpad within %cs1 [i32 5] %exn = call i8 addrspace(1)* @llvm.eh.exceptionpointer.p1i8(token %catch) %cast_exn = bitcast i8 addrspace(1)* %exn to i32 addrspace(1)* - call void @g(i32 addrspace(1)* %cast_exn) + call void @g(i32 addrspace(1)* %cast_exn) [ "funclet"(token %catch) ] catchret from %catch to label %exit exit: ret void |