https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92294
--- Comment #7 from Marius Hillenbrand <mhillen at linux dot ibm.com> --- A simpler example derived from alias-2.c reproduces this issue on aarch64, ppc64, and s390x. int a; extern int b __attribute__ ((alias("a"))); int off; int foo() { /* make sure off is ahead of a and b in .bss, so that a has a non-negative * offset relative to the anchor. */ return off; } main() { b=1; a=2; if (b!=2) __builtin_abort (); return 0; } Note that gcc.c-torture/execute/alias-2.c did not reproduce this issue on ppc64(le) for me. Removing the array indexing reduces the complexity of the RTL dumps somewhat.