diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-01-30 05:45:05 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-01-30 05:45:05 +0000 |
commit | 7586a6e6b7d79d4be031d2d0d6a35d5996cd0db9 (patch) | |
tree | c37b5c2f63d72a76a1a98f8bf54bec8ad8083b1a /test/CodeGen/function-attributes.c | |
parent | 4874a8143dc3032205f97527ff619730db3d1f57 (diff) |
Semantic analysis and CodeGen support for C11's _Noreturn. This is modeled as
an attribute for consistency with our other noreturn mechanisms.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173898 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/function-attributes.c')
-rw-r--r-- | test/CodeGen/function-attributes.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/test/CodeGen/function-attributes.c b/test/CodeGen/function-attributes.c index 6cbf40ba22..886bd8d2fb 100644 --- a/test/CodeGen/function-attributes.c +++ b/test/CodeGen/function-attributes.c @@ -32,10 +32,16 @@ void __attribute__((always_inline)) f8(void) { } // CHECK: call void @f9_t() // CHECK: noreturn -// CHECK: { +// CHECK: } void __attribute__((noreturn)) f9_t(void); void f9(void) { f9_t(); } +// CHECK: call void @f9a() +// CHECK: noreturn +// CHECK: } +_Noreturn void f9a(void); +void f9b(void) { f9a(); } + // FIXME: We should be setting nounwind on calls. // CHECK: call i32 @f10_t() // CHECK: readnone |