diff options
Diffstat (limited to 'clang/test/CodeGen/2007-06-15-AnnotateAttribute.c')
-rw-r--r-- | clang/test/CodeGen/2007-06-15-AnnotateAttribute.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/clang/test/CodeGen/2007-06-15-AnnotateAttribute.c b/clang/test/CodeGen/2007-06-15-AnnotateAttribute.c new file mode 100644 index 00000000000..324b9755755 --- /dev/null +++ b/clang/test/CodeGen/2007-06-15-AnnotateAttribute.c @@ -0,0 +1,25 @@ +// RUN: %clang_cc1 -emit-llvm %s -o - | grep llvm.global.annotations +// RUN: %clang_cc1 -emit-llvm %s -o - | grep llvm.var.annotation | count 3 + +// XFAIL: * +#include <stdio.h> + +/* Global variable with attribute */ +int X __attribute__((annotate("GlobalValAnnotation"))); + +/* Function with attribute */ +int foo(int y) __attribute__((annotate("GlobalValAnnotation"))) + __attribute__((noinline)); + +int foo(int y __attribute__((annotate("LocalValAnnotation")))) { + int x __attribute__((annotate("LocalValAnnotation"))); + x = 34; + return y + x; +} + +int main() { + static int a __attribute__((annotate("GlobalValAnnotation"))); + a = foo(2); + printf("hello world%d\n", a); + return 0; +} |