aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1998-07-06 20:33:33 +0000
committerJeff Law <law@gcc.gnu.org>1998-07-06 14:33:33 -0600
commit3b39dde8e3159fe1e286fa3e90fcdab33267cdee (patch)
tree16d461ceb1205343e6d43218a91bc19a6239d494
parent6c011b01ce31ae105faef46b7d6c583533269a8e (diff)
downloadgcc-3b39dde8e3159fe1e286fa3e90fcdab33267cdee.zip
gcc-3b39dde8e3159fe1e286fa3e90fcdab33267cdee.tar.gz
gcc-3b39dde8e3159fe1e286fa3e90fcdab33267cdee.tar.bz2
* Disable the following change from gcc2. Not appropriate for egcs:
Sun Jun 7 09:30:31 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> * reload.c (find_reloads): Give preference to pseudo that was the reloaded output of previous insn. From-SVN: r20955
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/reload.c8
2 files changed, 15 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cc0455c..62f27b0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+Mon Jul 6 21:28:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Disable the following change from gcc2. Not appropriate for egcs:
+
+ Sun Jun 7 09:30:31 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ * reload.c (find_reloads): Give preference to pseudo that was the
+ reloaded output of previous insn.
+
Mon Jul 6 21:07:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* aclocal.m4 (GCC_FUNC_PRINTF_PTR): Don't define HOST_PTR_PRINTF.
diff --git a/gcc/reload.c b/gcc/reload.c
index c010943..ab04ae3 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -3222,14 +3222,20 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p)
&& this_alternative_matches[i] < 0)
bad = 1;
+#if 0
/* If this is a pseudo-register that is set in the previous
insns, there's a good chance that it will already be in a
spill register and we can use that spill register. So
- make this case cheaper. */
+ make this case cheaper.
+
+ Disabled for egcs. egcs has better inheritance code and
+ this change causes problems with the improved reload
+ inheritance code. */
if (GET_CODE (operand) == REG
&& REGNO (operand) >= FIRST_PSEUDO_REGISTER
&& REGNO (operand) == last_output_reload_regno)
reject--;
+#endif
/* If this is a constant that is reloaded into the desired
class by copying it to memory first, count that as another