aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>2000-07-12 10:20:17 -0700
committerRichard Henderson <rth@gcc.gnu.org>2000-07-12 10:20:17 -0700
commit6fe8aebc3fa621f18cdf1692bfec4f7635359545 (patch)
treea26e9127d7771895bca131268615a5d87f99e095 /gcc
parentb9bf5af85379fa84ae7bd7de702d143b770d5986 (diff)
downloadgcc-6fe8aebc3fa621f18cdf1692bfec4f7635359545.zip
gcc-6fe8aebc3fa621f18cdf1692bfec4f7635359545.tar.gz
gcc-6fe8aebc3fa621f18cdf1692bfec4f7635359545.tar.bz2
reload.c (push_secondary_reload): Make sure to add the new reload at the end, after acquiring secondary memory.
* reload.c (push_secondary_reload): Make sure to add the new reload at the end, after acquiring secondary memory. From-SVN: r34990
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/reload.c8
2 files changed, 12 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ed25fd3..8b962c7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-07-12 Richard Henderson <rth@cygnus.com>
+
+ * reload.c (push_secondary_reload): Make sure to add the new
+ reload at the end, after acquiring secondary memory.
+
2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* cpplex.c (is_macro_disabled): Use CPP_WTRADITIONAL.
diff --git a/gcc/reload.c b/gcc/reload.c
index 7f5f355..412852e 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -524,7 +524,13 @@ push_secondary_reload (in_p, x, opnum, optional, reload_class, reload_mode,
if (in_p && icode == CODE_FOR_nothing
&& SECONDARY_MEMORY_NEEDED (class, reload_class, mode))
- get_secondary_mem (x, reload_mode, opnum, type);
+ {
+ get_secondary_mem (x, reload_mode, opnum, type);
+
+ /* We may have just added new reloads. Make sure we add
+ the new reload at the end. */
+ s_reload = n_reloads;
+ }
#endif
/* We need to make a new secondary reload for this register class. */