https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61110
Bug 61110 depends on bug 114894, which changed state.
Bug 114894 Summary: `a == 0 ? 0 : a * b` -> `a * b` likewise for `a & b`
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114894
What|Removed |Added
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61110
--- Comment #5 from Andrew Pinski ---
Created attachment 58089
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=58089&action=edit
Start of rewriting value_replacement to use match-and-simplify
This is a start and does not remove the old code
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61110
Andrew Pinski changed:
What|Removed |Added
Status|NEW |ASSIGNED
Assignee|unassigned a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61110
Andrew Pinski changed:
What|Removed |Added
Keywords||missed-optimization
Status|U
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61110
Andrew Pinski changed:
What|Removed |Added
Depends on||25290
--- Comment #2 from Andrew Pinski
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61110
--- Comment #1 from Marc Glisse ---
Another extension is discussed here:
https://gcc.gnu.org/ml/gcc-patches/2014-05/msg00704.html
(also transform if there is a second phi but it could be turned into a cmove)