+++ /dev/null
-// RUN: %llvmgcc -S -emit-llvm %s -o - | grep llvm.gcroot
-// RUN: %llvmgcc -S -emit-llvm %s -o - | grep llvm.gcroot | count 6
-// RUN: %llvmgcc -S -emit-llvm %s -o - | llvm-as
-
-typedef struct foo_s
-{
- int a;
-} foo, __attribute__ ((gcroot)) *foo_p;
-
-foo my_foo;
-
-int alpha ()
-{
- foo my_foo2 = my_foo;
-
- return my_foo2.a;
-}
-
-int bar (foo a)
-{
- foo_p b;
- return b->a;
-}
-
-foo_p baz (foo_p a, foo_p b, foo_p *c)
-{
- a = b = *c;
- return a;
-}