summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/WinEH/wineh-no-demotion.ll
diff options
context:
space:
mode:
authorJoseph Tremoulet <jotrem@microsoft.com>2016-01-10 04:30:02 +0000
committerJoseph Tremoulet <jotrem@microsoft.com>2016-01-10 04:30:02 +0000
commit81e81960e36b6c5e6faf80991aacac8d266c9d2e (patch)
tree9e2a60628d5569f31bbaab1ede2ba3f8057af3f7 /llvm/test/CodeGen/WinEH/wineh-no-demotion.ll
parente28885e6936fc5487c9e11cda841282d2f43c9d1 (diff)
downloadbcm5719-llvm-81e81960e36b6c5e6faf80991aacac8d266c9d2e.tar.gz
bcm5719-llvm-81e81960e36b6c5e6faf80991aacac8d266c9d2e.zip
[WinEH] Verify consistent funclet unwind exits
Summary: A funclet EH pad may be exited by an unwind edge, which may be a cleanupret exiting its cleanuppad, an invoke exiting a funclet, or an unwind out of a nested funclet transitively exiting its parent. Funclet EH personalities require all such exceptional exits from a given funclet to have the same unwind destination, and EH preparation / state numbering / table generation implicitly depends on this. Formalize it as a rule of the IR in the LangRef and verifier. Reviewers: rnk, majnemer, andrew.w.kaylor Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D15962 llvm-svn: 257273
Diffstat (limited to 'llvm/test/CodeGen/WinEH/wineh-no-demotion.ll')
-rw-r--r--llvm/test/CodeGen/WinEH/wineh-no-demotion.ll4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/test/CodeGen/WinEH/wineh-no-demotion.ll b/llvm/test/CodeGen/WinEH/wineh-no-demotion.ll
index 4fb84db8909..0901e27c301 100644
--- a/llvm/test/CodeGen/WinEH/wineh-no-demotion.ll
+++ b/llvm/test/CodeGen/WinEH/wineh-no-demotion.ll
@@ -33,7 +33,7 @@ right:
shared:
%x = call i32 @g()
- invoke void @f() [ "funclet"(token %0) ]
+ invoke void @f()
to label %shared.cont unwind label %inner
shared.cont:
@@ -72,7 +72,7 @@ right:
shared:
%x = call i32 @g()
- invoke void @f() [ "funclet"(token %0) ]
+ invoke void @f()
to label %shared.cont unwind label %inner
shared.cont:
OpenPOWER on IntegriCloud