summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen
diff options
context:
space:
mode:
authorPeter Collingbourne <peter@pcc.me.uk>2014-05-19 22:14:34 +0000
committerPeter Collingbourne <peter@pcc.me.uk>2014-05-19 22:14:34 +0000
commitb4728c12e8b6e6f4d1906ec3221ee0a3a124e843 (patch)
treee8f050b2013cdd085dda9e756d08397464ed9b25 /clang/test/CodeGen
parent973141a0358f5d47f40acdf272b8d6a9f0cbfba6 (diff)
downloadbcm5719-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.c14
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 {
OpenPOWER on IntegriCloud