https://gcc.gnu.org/bugzilla/show_bug.cgi?id=46763
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |missed-optimization --- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- -O3 produces: jmp .L6 .p2align 4,,10 .p2align 3 .L3: leal 1(%rbx), %edx movl %ebx, g(%rip) cmpl %edx, %ebp je .L1 .L4: movl %ebx, %eax movl %edx, %ebx .L6: testl %eax, %eax je .L3 addl $1, %eax movl %ebx, %edi movl %eax, g(%rip) call bar(int) leal 1(%rbx), %edx movl %eax, g(%rip) cmpl %edx, %ebp je .L1 movl %eax, %ebx jmp .L4