On 6/21/22 05:44, Xionghu Luo via Gcc-patches wrote: > Correct the format... > > test2: > .LFB0: > .cfi_startproc > xorl %edx, %edx > cmpl $3, (%rdi) > jle .L1 > movl 16(%rdi), %eax > cmpl $1, %eax > je .L4 > subl $2, %eax > cmpl $4, %eax > ja .L1 > movl CSWTCH.1(,%rax,4), %edx > .L1: > movl %edx, %eax > ret > .p2align 4,,10 > .p2align 3 > .L4: > movl $12, %edx > jmp .L1 > .cfi_endproc > .LFE0: > .size test2, .-test2 > .section .rodata > .align 16 > .type CSWTCH.1, @object > .size CSWTCH.1, 20 > CSWTCH.1: > .long 27 > .long 38 > .long 18 > .long 58 > .long 68 > > > > With the patch attatched: > > > test2: > .LFB0: > .cfi_startproc > xorl %edx, %edx > cmpl $3, (%rdi) > jle .L1 > movl 16(%rdi), %eax > subl $1, %eax > cmpl $5, %eax > jbe .L6 > .L1: > movl %edx, %eax > ret > .p2align 4,,10 > .p2align 3 > .L6: > movl CSWTCH.1(,%rax,4), %edx > movl %edx, %eax > ret > .cfi_endproc > .LFE0: > .size test2, .-test2 > .section .rodata > .align 16 > .type CSWTCH.1, @object > .size CSWTCH.1, 24 > CSWTCH.1: > .long 12 > .long 27 > .long 38 > .long 18 > .long 58 > .long 68 > > > > > On 2022/6/21 11:05, xionghuluo(罗雄虎) via Gcc-patches wrote: >> Current GCC generates: >> >> >> test2: >> .LFB0: >> .cfi_startproc >> xorl %edx, %edx >> cmpl $3, (%rdi) >> jle .L1 >> movl 16(%rdi), %eax >> cmpl $1, %eax >> je .L4 >> subl $2, %eax >> cmpl $4, %eax >> ja .L1 >> movl CSWTCH.1(,%rax,4), %edx >> .L1: >> movl %edx, %eax >> ret >> .p2align 4,,10 >> .p2align 3 >> .L4: >> movl $12, %edx >> jmp .L1 >> .cfi_endproc >> .LFE0: >> .size test2, .-test2 >> .section .rodata >> .align 16 >> .type CSWTCH.1, @object >> .size CSWTCH.1, 20 >> CSWTCH.1: >> .long 27 >> .long 38 >> .long 18 >> .long 58 >> .long 68 >> >> >> >> >> With the patch attatched: >> >> >> test2: >> .LFB0: >> .cfi_startproc >> xorl %edx, %edx >> cmpl $3, (%rdi) >> jle .L1 >> movl 16(%rdi), %eax >> subl $1, %eax >> cmpl $5, %eax >> jbe .L6 >> .L1: >> movl %edx, %eax >> ret >> .p2align 4,,10 >> .p2align 3 >> .L6: >> movl CSWTCH.1(,%rax,4), %edx >> movl %edx, %eax >> ret >> .cfi_endproc >> .LFE0: >> .size test2, .-test2 >> .section .rodata >> .align 16 >> .type CSWTCH.1, @object >> .size CSWTCH.1, 24 >> CSWTCH.1: >> .long 12 >> .long 27 >> .long 38 >> .long 18 >> .long 58 >> .long 68 >> >> >> Bootstrap and regression tested pass on x86_64-linux-gnu, OK for master? >
Sorry, but I don't see to which email this replies to? Can't find a patch. Martin