]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.dg/tm/irrevocable-2.c
Merge from transactional-memory branch.
[thirdparty/gcc.git] / gcc / testsuite / gcc.dg / tm / irrevocable-2.c
1 /* { dg-do compile } */
2 /* { dg-options "-fgnu-tm -fdump-tree-tmedge" } */
3
4 /* Test that a direct call to __builtin__ITM_changeTransactionMode()
5 sets the irrevocable bit. */
6
7 int global;
8 int george;
9
10 foo()
11 {
12 __transaction_relaxed {
13 global++;
14 __builtin__ITM_changeTransactionMode (0);
15 george++;
16 }
17 }
18
19 /* { dg-final { scan-tree-dump-times "doesGoIrrevocable" 1 "tmedge" } } */
20 /* { dg-final { scan-tree-dump-times "hasNoIrrevocable" 0 "tmedge" } } */
21 /* { dg-final { cleanup-tree-dump "tmedge" } } */