1 /* { dg-do compile } */
2 /* { dg-options "-fgnu-tm -O -fdump-tree-tmmark" } */
3 
4 struct large { int x[100]; };
5 struct large large_global;
6 extern struct large function (void) __attribute__((transaction_safe));
7 
f()8 void f()
9 {
10   __transaction_atomic {
11       large_global = function();
12   }
13 }
14 
15 /* { dg-final { scan-tree-dump-times "memmoveRtWt \\\(&large_global," 1 "tmmark" } } */
16 /* { dg-final { cleanup-tree-dump "tmmark" } } */
17