diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2014-05-19 22:14:34 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2014-05-19 22:14:34 +0000 |
commit | b4728c12e8b6e6f4d1906ec3221ee0a3a124e843 (patch) | |
tree | e8f050b2013cdd085dda9e756d08397464ed9b25 /clang/test/CodeGen | |
parent | 973141a0358f5d47f40acdf272b8d6a9f0cbfba6 (diff) | |
download | bcm5719-llvm-b4728c12e8b6e6f4d1906ec3221ee0a3a124e843.tar.gz bcm5719-llvm-b4728c12e8b6e6f4d1906ec3221ee0a3a124e843.zip |
Implement the no_split_stack attribute.
This is a GNU attribute that allows split stacks to be turned off on a
per-function basis.
Differential Revision: http://reviews.llvm.org/D3817
llvm-svn: 209167
Diffstat (limited to 'clang/test/CodeGen')
-rw-r--r-- | clang/test/CodeGen/split-stacks.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/clang/test/CodeGen/split-stacks.c b/clang/test/CodeGen/split-stacks.c index 98112467a56..bf4cf0f026a 100644 --- a/clang/test/CodeGen/split-stacks.c +++ b/clang/test/CodeGen/split-stacks.c @@ -5,13 +5,21 @@ int foo() { return 0; } +__attribute__((no_split_stack)) +int nosplit() { + return 0; +} + int main() { return foo(); } -// CHECK-SEGSTK: define i32 @foo() #0 { -// CHECK-SEGSTK: define i32 @main() #0 { -// CHECK-SEGSTK: #0 = { {{.*}} "split-stack" {{.*}} } +// CHECK-SEGSTK: define i32 @foo() [[SS:#[0-9]+]] { +// CHECK-SEGSTK: define i32 @nosplit() [[NSS:#[0-9]+]] { +// CHECK-SEGSTK: define i32 @main() [[SS]] { +// CHECK-SEGSTK-NOT: [[NSS]] = { {{.*}} "split-stack" {{.*}} } +// CHECK-SEGSTK: [[SS]] = { {{.*}} "split-stack" {{.*}} } +// CHECK-SEGSTK-NOT: [[NSS]] = { {{.*}} "split-stack" {{.*}} } // CHECK-NOSEGSTK: define i32 @foo() #0 { // CHECK-NOSEGSTK: define i32 @main() #0 { |