Imported Upstream version 4.8.1
[platform/upstream/gcc48.git] / gcc / testsuite / gcc.dg / tm / wrap-4.c
1 /* { dg-do compile } */
2 /* { dg-options "-fgnu-tm -fdump-tree-optimized -O2" } */
3
4 static void candy() { candycane(); }
5
6 static void tootsie_roll () __attribute__((transaction_wrap (candy)));
7 static void tootsie_roll () { bark(); }
8
9 void foo()
10 {
11   __transaction_relaxed { candy(); }
12 }
13
14 /* We still have one call to candy()-- on the uninstrumented path
15    everything is as usual.  */
16 /* { dg-final { scan-tree-dump-times "candy \\(\\);" 1 "optimized" } } */
17
18 /* { dg-final { cleanup-tree-dump "optimized" } } */