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()8void 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