| /* PR target/81979 */ | |
| /* { dg-do link } */ | |
| /* { dg-options "-O2 -w" } */ | |
| /* { dg-additional-options "-fPIC" { target fpic } } */ | |
| /* { dg-additional-options "-freorder-blocks-and-partition" { target freorder } } */ | |
| int d; | |
| __attribute__((noinline, noclone)) void | |
| foo (int x) | |
| { | |
| int c; | |
| while (c < 1) | |
| { | |
| int o; | |
| for (o = 0; o < 4; ++o) | |
| c /= (x != 0) ? 2 : x; | |
| } | |
| d = 1; | |
| for (;;) | |
| ; | |
| } | |
| int | |
| main () | |
| { | |
| asm volatile ("" : : "r" (&d) : "memory"); | |
| foo (d); | |
| asm volatile ("" : : "r" (&d) : "memory"); | |
| return 0; | |
| } |