[Bug tree-optimization/43965] Missed VRP and/or jump-threading

2017-01-31 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43965

Jeffrey A. Law  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||law at redhat dot com
 Resolution|--- |FIXED

--- Comment #4 from Jeffrey A. Law  ---
Fixed by the combination of a variety of commits through the last few years. 
Now we get:

movl4(%esp), %eax
movl(%eax), %edx
movl8(%esp), %eax
testl   %edx, %edx
movl(%eax), %eax
je  .L2
movl(%edx), %ecx
xorl%edx, %edx
testl   %eax, %eax
je  .L3
.L5:
movl(%eax), %edx
.L3:
movl%ecx, %eax
subl%edx, %eax
cmpl%ecx, %edx
movl$0, %edx
cmove   %edx, %eax
ret
.p2align 4,,7
.p2align 3
.L2:
xorl%ecx, %ecx
testl   %eax, %eax
jne .L5
ret

[Bug tree-optimization/43965] Missed VRP and/or jump-threading

2012-06-29 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43965

Richard Guenther  changed:

   What|Removed |Added

 CC||matz at gcc dot gnu.org

--- Comment #3 from Richard Guenther  2012-06-29 
14:20:24 UTC ---
More like predicated value-numbering should figure this out.


[Bug tree-optimization/43965] Missed VRP and/or jump-threading

2010-05-03 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-05-03 09:55 ---
Confirmed.  This is a case where we'd have to do some interesting VRP and
jump-threading.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
  Component|middle-end  |tree-optimization
 Ever Confirmed|0   |1
   Keywords||missed-optimization
   Last reconfirmed|-00-00 00:00:00 |2010-05-03 09:55:51
   date||
Summary|doubled code (x86)  |Missed VRP and/or jump-
   ||threading


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43965