diff options
Diffstat (limited to 'clang/test/CodeGen/stack-protector.c')
-rw-r--r-- | clang/test/CodeGen/stack-protector.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/clang/test/CodeGen/stack-protector.c b/clang/test/CodeGen/stack-protector.c new file mode 100644 index 0000000..eb4cea2 --- /dev/null +++ b/clang/test/CodeGen/stack-protector.c @@ -0,0 +1,14 @@ +// RUN: %clang_cc1 -emit-llvm -o - %s -stack-protector 0 | FileCheck -check-prefix=NOSSP %s +// NOSSP: define void @test1(i8* %msg) nounwind { +// RUN: %clang_cc1 -emit-llvm -o - %s -stack-protector 1 | FileCheck -check-prefix=WITHSSP %s +// WITHSSP: define void @test1(i8* %msg) nounwind ssp { +// RUN: %clang_cc1 -emit-llvm -o - %s -stack-protector 2 | FileCheck -check-prefix=SSPREQ %s +// SSPREQ: define void @test1(i8* %msg) nounwind sspreq { + +int printf(const char * _Format, ...); + +void test1(const char *msg) { + char a[strlen(msg) + 1]; + strcpy(a, msg); + printf("%s\n", a); +} |