Commit c6279378 by Ulrich Weigand Committed by Ulrich Weigand

* combine.c (combine_simplify_rtx): Fix RTL sharing bug.

From-SVN: r70778
parent 12ea3302
2003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
* combine.c (combine_simplify_rtx): Fix RTL sharing bug.
2003-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
* pretty-print.h (pp_maybe_newline_and_indent): New macro.
......
......@@ -3636,9 +3636,11 @@ combine_simplify_rtx (rtx x, enum machine_mode op0_mode, int last,
return x;
/* Simplify the alternative arms; this may collapse the true and
false arms to store-flag values. */
true_rtx = subst (true_rtx, pc_rtx, pc_rtx, 0, 0);
false_rtx = subst (false_rtx, pc_rtx, pc_rtx, 0, 0);
false arms to store-flag values. Be careful to use copy_rtx
here since true_rtx or false_rtx might share RTL with x as a
result of the if_then_else_cond call above. */
true_rtx = subst (copy_rtx (true_rtx), pc_rtx, pc_rtx, 0, 0);
false_rtx = subst (copy_rtx (false_rtx), pc_rtx, pc_rtx, 0, 0);
/* If true_rtx and false_rtx are not general_operands, an if_then_else
is unlikely to be simpler. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment