s390x fails to build the linux kernel ./cc1 -quiet -O smp.3.i
Program received signal SIGSEGV, Segmentation fault. 0x00000000008276f4 in subst_reloads (insn=0x7fc1f2451a00) at /space/rguenther/src/svn/trunk/gcc/reload.c:6181 6181 gcc_assert (GET_CODE (*r->where) != LABEL_REF (gdb) print *r->where $1 = (rtx) 0x2b testcase: typedef unsigned char __u8; typedef unsigned int __u32; typedef unsigned long __u64; struct _lowcore { __u8 pad8[0xc00-0x2a0]; __u64 save_area[16]; __u8 pad9[0xd40-0xc80]; __u64 thread_info; __u64 ext_call_fast; __u8 pad13[0x1200-0xe04]; __u64 floating_pt_save_area[16]; __u64 gpregs_save_area[16]; __u32 st_status_fixed_logout[4]; __u32 access_regs_save_area[16]; __u64 cregs_save_area[16]; }; int __cpu_up(unsigned int cpu) { struct _lowcore *cpu_lowcore; typedef struct { char _[sizeof(cpu_lowcore->cregs_save_area[0])]; } addrtype; asm volatile( "stctg %2,%3,0(%1)\n" : "=m" (*(addrtype *)(cpu_lowcore->cregs_save_area[0])) : "a" (&cpu_lowcore->cregs_save_area[0]), "i" (0), "i" (15)); } -- Summary: [4.4 Regression] ICE in subst_reloads Product: gcc Version: 4.4.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rguenth at gcc dot gnu dot org GCC target triplet: s390x-*-* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36822