1 /* { dg-do run } */ 2 /* { dg-options "-O1 -floop-nest-optimize" } */ 3 4 extern void abort (void); 5 6 int yu[4][1] = { { 1 }, { 2 }, { 3 }, { 4 } }; 7 8 static void __attribute__((noinline,noclone)) foo(void)9foo (void) 10 { 11 int zh, ro; 12 13 for (zh = 0; zh < 2; ++zh) 14 for (ro = 0; ro < 3; ++ro) 15 yu[ro][0] = yu[zh + 1][0]; 16 } 17 18 int main(void)19main (void) 20 { 21 foo (); 22 23 if (yu[0][0] != 2 24 || yu[1][0] != 2 25 || yu[2][0] != 2 26 || yu[3][0] != 4) 27 abort (); 28 29 return 0; 30 } 31