http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45685
Eric Botcazou ebotcazou at gcc dot gnu.org changed:
What|Removed |Added
Status|NEW |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45685
--- Comment #10 from Jakub Jelinek jakub at gcc dot gnu.org 2010-11-24
15:27:41 UTC ---
I guess it would be helpful if some tree pass figured out that computing
cond_expr is usually quite expensive, and that instead of computing 4 different
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45685
--- Comment #11 from Richard Guenther rguenth at gcc dot gnu.org 2010-11-24
15:55:45 UTC ---
Separating predicate computation from predicate use should help this.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45685
Jakub Jelinek jakub at gcc dot gnu.org changed:
What|Removed |Added
CC||jakub at gcc dot
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45685
Richard Guenther rguenth at gcc dot gnu.org changed:
What|Removed |Added
Keywords|
--- Comment #6 from hjl dot tools at gmail dot com 2010-09-17 13:04 ---
(In reply to comment #4)
This all happens in IF conversion pass.
4.6 regresses in the sense that a branch is emitted instead of cmov for:
This is caused by revision 159106:
--- Comment #7 from matz at gcc dot gnu dot org 2010-09-17 13:45 ---
It might have been exposed by that revision, but that merely points out
a deficiency in RTL if conversion. The final gimple code doesn't have
explicit jumps in the inner loop, but uses cond_expr:
bb 3:
# s_22 = PHI