diff options
Diffstat (limited to 'test/CodeGen/unwind-attr.c')
-rw-r--r-- | test/CodeGen/unwind-attr.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/test/CodeGen/unwind-attr.c b/test/CodeGen/unwind-attr.c index 7a79cb6..e505a6e 100644 --- a/test/CodeGen/unwind-attr.c +++ b/test/CodeGen/unwind-attr.c @@ -3,22 +3,27 @@ int opaque(); -// CHECK: define [[INT:i.*]] @test0() { -// CHECK-NOEXC: define [[INT:i.*]] @test0() nounwind { +// CHECK: define [[INT:i.*]] @test0() [[TF:#[0-9]+]] { +// CHECK-NOEXC: define [[INT:i.*]] @test0() [[NUW:#[0-9]+]] { int test0(void) { return opaque(); } // <rdar://problem/8087431>: locally infer nounwind at -O0 -// CHECK: define [[INT:i.*]] @test1() nounwind { -// CHECK-NOEXC: define [[INT:i.*]] @test1() nounwind { +// CHECK: define [[INT:i.*]] @test1() [[NUW:#[0-9]+]] { +// CHECK-NOEXC: define [[INT:i.*]] @test1() [[NUW]] { int test1(void) { return 0; } // <rdar://problem/8283071>: not for weak functions -// CHECK: define weak [[INT:i.*]] @test2() { -// CHECK-NOEXC: define weak [[INT:i.*]] @test2() nounwind { +// CHECK: define weak [[INT:i.*]] @test2() [[TF]] { +// CHECK-NOEXC: define weak [[INT:i.*]] @test2() [[NUW]] { __attribute__((weak)) int test2(void) { return 0; } + +// CHECK: attributes [[TF]] = { "{{.*}} } +// CHECK: attributes [[NUW]] = { nounwind{{.*}} } + +// CHECK-NOEXC: attributes [[NUW]] = { nounwind{{.*}} } |