* [Bug rtl-optimization/10945] Trivial Bit Twiddling Optimizations Not Performed
[not found] <bug-10945-4@http.gcc.gnu.org/bugzilla/>
@ 2021-06-03 1:13 ` pinskia at gcc dot gnu.org
0 siblings, 0 replies; only message in thread
From: pinskia at gcc dot gnu.org @ 2021-06-03 1:13 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10945
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |7.0
Resolution|--- |FIXED
Status|NEW |RESOLVED
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
simple2.c and revised2.c produce the same code for a while now:
x:
movl 12(%esp), %edx
movl 8(%esp), %eax
xorl %edx, %eax
andl 4(%esp), %eax
xorl %edx, %eax
ret
y:
movl 12(%esp), %edx
movl 8(%esp), %eax
xorl %edx, %eax
andl 4(%esp), %eax
xorl %edx, %eax
ret
.cfi_endproc
---- CUT ----
as for simple.c and revised.c:
f:
.LFB0:
.cfi_startproc
movl 8(%esp), %edx
movl 12(%esp), %ecx
movl %edx, %eax
andl %ecx, %edx
orl %ecx, %eax
andl 4(%esp), %eax
orl %edx, %eax
ret
g:
movl 4(%esp), %edx
movl 8(%esp), %ecx
movl %edx, %eax
andl %ecx, %edx
orl %ecx, %eax
andl 12(%esp), %eax
orl %edx, %eax
ret
I am going to close it as fixed for GCC 7 (even though it has been fixed maybe
long before that).
^ permalink raw reply [flat|nested] only message in thread