/* { dg-do compile } */ /* { dg-options "-O -mgpopt -march=r2 -mbypass-cache" } */ /* Implicit ldio/stio operations must not use GP-relative addresses for small data objects in R2. This is because the address offset field has been reduced to 12 bits in R2, and %gprel is a 16-bit relocation. */ extern volatile unsigned int frob; volatile unsigned int frob = 0; void foo (unsigned int val) { frob = val; } /* { dg-final { scan-assembler "stwio\\t" } } */ /* { dg-final { scan-assembler-not "stwio\\t.*%gprel(frob)" } } */