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