re PR tree-optimization/42027 (Performance regression in convolution loop optimization)
PR tree-optimization/42027 * dojump.c (do_jump <TRUTH_AND_EXPR, TRUTH_OR_EXPR>): Go to TRUTH_ANDIF_EXPR resp. TRUTH_ORIF_EXPR expander, instead of falling through. From-SVN: r155196
This commit is contained in:
parent
83613dbea0
commit
c3223bafb1
@ -1,3 +1,10 @@
|
||||
2009-12-13 Michael Matz <matz@suse.de>
|
||||
|
||||
PR tree-optimization/42027
|
||||
* dojump.c (do_jump <TRUTH_AND_EXPR, TRUTH_OR_EXPR>): Go to
|
||||
TRUTH_ANDIF_EXPR resp. TRUTH_ORIF_EXPR expander, instead of
|
||||
falling through.
|
||||
|
||||
2009-12-13 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>
|
||||
|
||||
PR target/23726
|
||||
|
@ -458,6 +458,7 @@ do_jump (tree exp, rtx if_false_label, rtx if_true_label)
|
||||
case LTGT_EXPR:
|
||||
case TRUTH_ANDIF_EXPR:
|
||||
case TRUTH_ORIF_EXPR:
|
||||
other_code:
|
||||
do_jump_1 (code, TREE_OPERAND (exp, 0), TREE_OPERAND (exp, 1),
|
||||
if_false_label, if_true_label);
|
||||
break;
|
||||
@ -547,6 +548,8 @@ do_jump (tree exp, rtx if_false_label, rtx if_true_label)
|
||||
false) >= 4
|
||||
|| TREE_SIDE_EFFECTS (TREE_OPERAND (exp, 1)))
|
||||
goto normal;
|
||||
code = TRUTH_ANDIF_EXPR;
|
||||
goto other_code;
|
||||
|
||||
case BIT_IOR_EXPR:
|
||||
case TRUTH_OR_EXPR:
|
||||
@ -556,6 +559,8 @@ do_jump (tree exp, rtx if_false_label, rtx if_true_label)
|
||||
if (BRANCH_COST (optimize_insn_for_speed_p (), false)>= 4
|
||||
|| TREE_SIDE_EFFECTS (TREE_OPERAND (exp, 1)))
|
||||
goto normal;
|
||||
code = TRUTH_ORIF_EXPR;
|
||||
goto other_code;
|
||||
|
||||
/* Fall through and generate the normal code. */
|
||||
default:
|
||||
|
Loading…
Reference in New Issue
Block a user