aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Wilson <jim.wilson@linaro.org>2017-03-18 05:37:52 +0000
committerJim Wilson <jim.wilson@linaro.org>2017-03-18 05:37:52 +0000
commit4aa71decbc0d56eb5df0d475f39a74b97d93bad9 (patch)
tree6e2349e7d0095ab851073fde6d039a0022c248a0
parentbf86959fb18bc0e8a2320e0b78a34254ec5f70d1 (diff)
Fix aarch64 bootstrap compare failure.
gcc/ * combine.c (try_combine): Delete redundant i1 test. Call prev_nonnote_nondebug_insn instead of prev_nonnote_insn. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246253 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/combine.c7
2 files changed, 8 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3e108dda311..8b4aa584c3d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2017-03-17 Jim Wilson <jim.wilson@linaro.org>
+
+ * combine.c (try_combine): Delete redundant i1 test. Call
+ prev_nonnote_nondebug_insn instead of prev_nonnote_insn.
+
2017-03-17 Palmer Dabbelt <palmer@dabbelt.com
* doc/install.texi (Specific) <riscv32-*-elf>: Add riscv32-*-elf,
diff --git a/gcc/combine.c b/gcc/combine.c
index ff0df80a801..463737f9773 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -2806,9 +2806,8 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
bitmap_set_bit (links_regset, ll->regno);
FOR_EACH_LOG_LINK (ll, i2)
bitmap_set_bit (links_regset, ll->regno);
- if (i1)
- FOR_EACH_LOG_LINK (ll, i1)
- bitmap_set_bit (links_regset, ll->regno);
+ FOR_EACH_LOG_LINK (ll, i1)
+ bitmap_set_bit (links_regset, ll->regno);
if (i0)
FOR_EACH_LOG_LINK (ll, i0)
bitmap_set_bit (links_regset, ll->regno);
@@ -4142,7 +4141,7 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
multi-word registers. Later, when fixing up LOG_LINKS, we
deal with the case where a pseudo use moved. */
if (!bitmap_empty_p (new_regs_in_i2)
- && prev_nonnote_insn (i3) != i2
+ && prev_nonnote_nondebug_insn (i3) != i2
&& bitmap_first_set_bit (new_regs_in_i2) < FIRST_PSEUDO_REGISTER)
{
undo_all ();