aboutsummaryrefslogtreecommitdiff
path: root/gcc/reload.c
diff options
context:
space:
mode:
authorMarcus Shawcroft <marcus.shawcroft@arm.com>2012-01-05 09:45:09 +0000
committerMarcus Shawcroft <mshawcroft@gcc.gnu.org>2012-01-05 09:45:09 +0000
commit6bfd2688d62e54328773003669b1ead08dd05766 (patch)
treee14a127fea714331dc76dac4690005e31f9e31f4 /gcc/reload.c
parentbfeb0869d61725d9bdf577911742ff312e980ef2 (diff)
downloadgcc-6bfd2688d62e54328773003669b1ead08dd05766.zip
gcc-6bfd2688d62e54328773003669b1ead08dd05766.tar.gz
gcc-6bfd2688d62e54328773003669b1ead08dd05766.tar.bz2
reload.c (find_reloads): Adjust LABEL_NUSES on REG_LABEL_OPERAND insertion.
* reload.c (find_reloads): Adjust LABEL_NUSES on REG_LABEL_OPERAND insertion. From-SVN: r182903
Diffstat (limited to 'gcc/reload.c')
-rw-r--r--gcc/reload.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/reload.c b/gcc/reload.c
index 896e8de..90085bd 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -4208,7 +4208,12 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known,
&& (!JUMP_P (insn)
|| !label_is_jump_target_p (XEXP (substitution, 0),
insn)))
- add_reg_note (insn, REG_LABEL_OPERAND, XEXP (substitution, 0));
+ {
+ add_reg_note (insn, REG_LABEL_OPERAND, XEXP (substitution, 0));
+ if (LABEL_P (XEXP (substitution, 0)))
+ ++LABEL_NUSES (XEXP (substitution, 0));
+ }
+
}
else
retval |= (substed_operand[i] != *recog_data.operand_loc[i]);