re PR target/64268 (bootstrap failure (ICE in wide_int_to_tree, at tree.c:1438) on powerpc in libgcc, stage2)

PR target/64268
	* combine.c (try_combine): Immediately return if any of I0,I1,I2
	are the same insn.

From-SVN: r218971
This commit is contained in:
Segher Boessenkool 2014-12-19 20:55:32 +01:00 committed by Segher Boessenkool
parent 1f0858d762
commit 3eb239f48b
2 changed files with 11 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2014-12-19 Segher Boessenkool <segher@kernel.crashing.org>
PR target/64268
* combine.c (try_combine): Immediately return if any of I0,I1,I2
are the same insn.
2014-12-19 Alan Lawrence <alan.lawrence@arm.com> 2014-12-19 Alan Lawrence <alan.lawrence@arm.com>
* config/aarch64/aarch64.c (<LOGICAL:optab>_one_cmpl<mode>3): * config/aarch64/aarch64.c (<LOGICAL:optab>_one_cmpl<mode>3):

View File

@ -2588,6 +2588,11 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
rtx new_other_notes; rtx new_other_notes;
int i; int i;
/* Immediately return if any of I0,I1,I2 are the same insn (I3 can
never be). */
if (i1 == i2 || i0 == i2 || (i0 && i0 == i1))
return 0;
/* Only try four-insn combinations when there's high likelihood of /* Only try four-insn combinations when there's high likelihood of
success. Look for simple insns, such as loads of constants or success. Look for simple insns, such as loads of constants or
binary operations involving a constant. */ binary operations involving a constant. */