/* { dg-options "-G4 -mexplicit-relocs -mno-local-sdata" } */ /* { dg-final { scan-assembler-not "%gp_?rel\\(l4a\\)" } } */ /* { dg-final { scan-assembler-not "%gp_?rel\\(l4b\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(l4c\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(e4a\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(e4b\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(c4\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(g4a\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(g4b\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(g4c\\)" } } */ /* { dg-final { scan-assembler-not "%gp_?rel\\(l8a\\)" } } */ /* { dg-final { scan-assembler-not "%gp_?rel\\(l8b\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(l8c\\)" } } */ /* { dg-final { scan-assembler-not "%gp_?rel\\(e8a\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(e8b\\)" } } */ /* { dg-final { scan-assembler-not "%gp_?rel\\(c8\\)" } } */ /* { dg-final { scan-assembler-not "%gp_?rel\\(g8a\\)" } } */ /* { dg-final { scan-assembler-not "%gp_?rel\\(g8b\\)" } } */ /* { dg-final { scan-assembler "%gp_?rel\\(g8c\\)" } } */ static volatile int l4a; static volatile int l4b = 1; static volatile int __attribute__((section(".sdata"))) l4c; extern int e4a; extern int __attribute__((section(".sdata"))) e4b; int __attribute__((common)) c4; int __attribute__((nocommon)) g4a; int g4b = 1; int __attribute__((section(".sdata"))) g4c = 2; static volatile int l8a[2]; static volatile int l8b[2] = { 1, 2 }; static volatile int __attribute__((section(".sdata"))) l8c[2]; extern int e8a[2]; extern int __attribute__((section(".sdata"))) e8b[2]; int __attribute__((common)) c8[2]; int __attribute__((nocommon)) g8a[2]; int g8b[2] = { 1, 2 }; int __attribute__((section(".sdata"))) g8c[2] = { 1, 2 }; int f32a (void) { return l4a; } int f32b (void) { return l4b; } int f32c (void) { return l4c; } int f32d (void) { return e4a; } int f32e (void) { return e4b; } int f32f (void) { return c4; } int f32g (void) { return g4a; } int f32h (void) { return g4b; } int f32i (void) { return g4c; } int f64a (void) { return l8a[0]; } int f64b (void) { return l8b[0]; } int f64c (void) { return l8c[0]; } int f64d (void) { return e8a[0]; } int f64e (void) { return e8b[0]; } int f64f (void) { return c8[0]; } int f64g (void) { return g8a[0]; } int f64h (void) { return g8b[0]; } int f64i (void) { return g8c[0]; }