http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56161
Bug #: 56161 Summary: label: jmp label bug in 4.8.0-0.7 Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: major Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: hvtaifwkbgefb...@gmail.com Created attachment 29314 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29314 dcraw adobe_coeff.c bug dcraw function adobe_coeff function with -O1 or higher: movw %ax, black(%rip) # D.2960, black .L7: movslq %ebx, %rax # i, i leaq (%rax,%rax,4), %rax #, tmp119 movzwl table.2869+10(,%rax,8), %eax # table[i_40].maximum, D.2960 testw %ax, %ax # D.2960 je .L8 #, movw %ax, maximum(%rip) # D.2960, maximum .L8: movslq %ebx, %rbx # i, i leaq (%rbx,%rbx,4), %rax #, tmp126 cmpw $0, table.2869+12(,%rax,8) #, table[i_40].trans je .L5 #, .L10: jmp .L10 # .L6: addl $1, %ebx #, i addq $40, %rbp #, ivtmp.38 cmpl $5, %ebx #, i jne .L11 #, .L5: addq $152, %rsp #, .cfi_def_cfa_offset 40 popq %rbx # here, jmp .L10 is what I do not like very much. with -fno-tree-dce this code generation bug does not happen.