/* { dg-do compile } */ /* { dg-options "-Os -fdump-tree-optimized" } */ struct a {int a,b,c,d,e,f,g,h,i,j;}; do_inc (struct a *a) { a->a=1; a->b=2; a->c=3; a->e=4; a->f=5; a->g=5; a->h=5; a->i=5; a->j=5; } test(struct a *a) { do_inc (a); do_something (a); do_inc (a); do_something (a); do_inc (a); do_something (a); do_inc (a); do_something (a); do_inc (a); do_something (a); do_inc (a); do_something (a); do_inc (a); do_something (a); do_inc (a); do_something (a); do_inc (a); do_something (a); } /* { dg-final { scan-tree-dump-times "do_inc" 12 "optimized" } } */ /* { dg-final { cleanup-tree-dump "optimized" } } */