aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAndreas Krebbel <krebbel1@de.ibm.com>2005-11-09 11:34:56 +0000
committerAndreas Krebbel <krebbel@gcc.gnu.org>2005-11-09 11:34:56 +0000
commit7221b4a18ceb8d291f2d6f5f0d9f2b1bfccc058e (patch)
tree071d7820ff54f18fc2f96b4ce41a36a2ba6ebccc /gcc
parentf98ae2abfb923abe02c882b36c1952b29f9bb4b3 (diff)
downloadgcc-7221b4a18ceb8d291f2d6f5f0d9f2b1bfccc058e.zip
gcc-7221b4a18ceb8d291f2d6f5f0d9f2b1bfccc058e.tar.gz
gcc-7221b4a18ceb8d291f2d6f5f0d9f2b1bfccc058e.tar.bz2
flow.c (mark_set_1): Handle CLOBBERs like SETs if the register is live afterwards.
2005-11-09 Andreas Krebbel <krebbel1@de.ibm.com> * flow.c (mark_set_1): Handle CLOBBERs like SETs if the register is live afterwards. From-SVN: r106686
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/flow.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1b5992b..eddcaa9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-11-09 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * flow.c (mark_set_1): Handle CLOBBERs like SETs if the register
+ is live afterwards.
+
2005-11-08 Bernd Schmidt <bernd.schmidt@analog.com>
* config/bfin/t-bfin-elf (MULTILIB_OPTIONS, MULTILIB_DEFAULTS,
diff --git a/gcc/flow.c b/gcc/flow.c
index 1fc88b6..bdb4032 100644
--- a/gcc/flow.c
+++ b/gcc/flow.c
@@ -2816,7 +2816,7 @@ mark_set_1 (struct propagate_block_info *pbi, enum rtx_code code, rtx reg, rtx c
else
SET_REGNO_REG_SET (pbi->local_set, i);
}
- if (code != CLOBBER)
+ if (code != CLOBBER || needed_regno)
SET_REGNO_REG_SET (pbi->new_set, i);
some_was_live |= needed_regno;