https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61577
--- Comment #58 from EML <elowe at elowe dot com> --- 32 Bit: Second Test Program (derived from a crashing conftest) #include <ctype.h> int main () { int j = 0; j = islower(0); printf("j is: %d\n", j); return 0; } <snip> [.LCFI2:] mov r35 = r1 .body .loc 1 6 7 ;; st4 [r34] = r0 .loc 1 8 18 addl r14 = @ltoffx(__SB_masks#), r1 ;; ld8.mov r14 = [r14], __SB_masks# ;; ld4 r14 = [r14] .loc 1 8 16 ;; cmp.eq p6, p7 = 0, r14 (p6) br.cond.dptk .L2 .loc 1 8 35 discriminator 1 addl r14 = @ltoffx(__SB_masks#), r1 ;; ld8.mov r14 = [r14], __SB_masks# ;; ld4 r14 = [r14] ;; ld4 r14 = [r14] <<<--- crashes here. Missing addp4 r14 = 0,r14 .loc 1 8 16 discriminator 1 ;; and r14 = 64, r14 br .L3 ;; <snip> If you insert the addp4 r14 = 0,r14 before that command (like gcc 4.9.3 does), the program compiles and runs correctly I'll upload the .s for "IsLower.c" - it's definitely a 32 bit executable, so the correct options are being passed around.