diff options
| author | Reid Kleckner <rnk@google.com> | 2015-09-11 17:27:52 +0000 |
|---|---|---|
| committer | Reid Kleckner <rnk@google.com> | 2015-09-11 17:27:52 +0000 |
| commit | 5dbee7baef101399992f4cea8a8ebbb94b1f3e39 (patch) | |
| tree | 560b131e6676fc83fe8c7fdecf3fba776bd53ab5 /llvm/test/CodeGen | |
| parent | 5c8bd88a4c3ad31e64b5a7100c9fc1785f208031 (diff) | |
| download | bcm5719-llvm-5dbee7baef101399992f4cea8a8ebbb94b1f3e39.tar.gz bcm5719-llvm-5dbee7baef101399992f4cea8a8ebbb94b1f3e39.zip | |
[IR] Print the label operands of a catchpad like an invoke
The rest of the EH pads are fine, since they have at most one label and
take fewer operands for the personality.
Old catchpad vs. new:
%5 = catchpad [i8* bitcast (i32 ()* @"\01?filt$0@0@main@@" to i8*)] to label %__except.ret.10 unwind label %catchendblock.9
-----
%5 = catchpad [i8* bitcast (i32 ()* @"\01?filt$0@0@main@@" to i8*)]
to label %__except.ret.10 unwind label %catchendblock.9
llvm-svn: 247433
Diffstat (limited to 'llvm/test/CodeGen')
| -rw-r--r-- | llvm/test/CodeGen/WinEH/wineh-cloning.ll | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/llvm/test/CodeGen/WinEH/wineh-cloning.ll b/llvm/test/CodeGen/WinEH/wineh-cloning.ll index f7fe58f844f..4500f96e6f6 100644 --- a/llvm/test/CodeGen/WinEH/wineh-cloning.ll +++ b/llvm/test/CodeGen/WinEH/wineh-cloning.ll @@ -33,7 +33,8 @@ endcatch: ; CHECK: invoke void @f() ; CHECK: to label %[[EntryCopy:[^ ]+]] unwind label %catch ; CHECK: catch: -; CHECK: catchpad [] to label %[[CatchCopy:[^ ]+]] unwind +; CHECK: catchpad [] +; CHECK-NEXT: to label %[[CatchCopy:[^ ]+]] unwind ; CHECK: [[CatchCopy]]: ; CHECK: [[LoadX2:%[^ ]+]] = load i32, i32* [[Slot]] ; CHECK: call void @h(i32 [[LoadX2]] @@ -96,7 +97,8 @@ exit: ; CHECK: invoke void @f() ; CHECK: to label %[[exit:[^ ]+]] unwind ; CHECK: catch: -; CHECK: catchpad [] to label %[[shared:[^ ]+]] unwind +; CHECK: catchpad [] +; CHECK-NEXT: to label %[[shared:[^ ]+]] unwind ; CHECK: cleanup: ; CHECK: cleanuppad [] ; CHECK: call void @f() @@ -411,7 +413,8 @@ unreachable: ; CHECK-NEXT: %cleanup = cleanuppad ; CHECK-NEXT: cleanupret %cleanup unwind label %outer ; CHECK: outer: -; CHECK-NEXT: %catch = catchpad [] to label %catch.body unwind label %endpad +; CHECK-NEXT: %catch = catchpad [] +; CHECK-NEXT: to label %catch.body unwind label %endpad ; CHECK: catch.body: ; CHECK-NEXT: catchret %catch to label %exit ; CHECK: endpad: |

