diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1992-12-10 12:45:01 -0500 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1992-12-10 12:45:01 -0500 |
commit | 4090a6b33d502fbee5098555aca7d907e464f204 (patch) | |
tree | 6f6cca32207f0e2fa6c08a4c64f37abcf592c0e5 /gcc | |
parent | 89e8a20f3ec0e3215b6fc8cce6747afba3093c15 (diff) | |
download | gcc-4090a6b33d502fbee5098555aca7d907e464f204.zip gcc-4090a6b33d502fbee5098555aca7d907e464f204.tar.gz gcc-4090a6b33d502fbee5098555aca7d907e464f204.tar.bz2 |
(get_last_value): Never use value from later insn, even if reg is only
set once.
From-SVN: r2856
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/combine.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/combine.c b/gcc/combine.c index 8d1a845..9632ab2 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -8803,12 +8803,11 @@ get_last_value (x) return 0; /* If the value was set in a later insn that the ones we are processing, - we can't use it, but make a quick check to see if the previous insn - set it to something. This is commonly the case when the same pseudo - is used by repeated insns. */ + we can't use it even if the register was only set once, but make a quick + check to see if the previous insn set it to something. This is commonly + the case when the same pseudo is used by repeated insns. */ - if (reg_n_sets[regno] != 1 - && INSN_CUID (reg_last_set[regno]) >= subst_low_cuid) + if (INSN_CUID (reg_last_set[regno]) >= subst_low_cuid) { rtx insn, set; |