From 5ab6a4be50fc492d114bb3f423154dd39d7a807c Mon Sep 17 00:00:00 2001 From: Bernd Schmidt Date: Thu, 30 Nov 2000 12:15:58 +0000 Subject: [PATCH] Backport a change to the 2.95 branch From-SVN: r37883 --- gcc/ChangeLog | 4 ++++ gcc/reload.c | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e05c3c2e4b70..f602db0bdbe6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2000-11-30 Bernd Schmidt + 2000-07-12 Richard Henderson + * reload.c (push_secondary_reload): Make sure to add the new + reload at the end, after acquiring secondary memory. + 2000-09-14 Alexandre Oliva , Bernd Schmidt * reload.c (find_reloads_address_1): Generate reloads for auto_inc pseudos that refer to the original pseudos, not only to their diff --git a/gcc/reload.c b/gcc/reload.c index b22d6dd08ab1..7c2c14e65c91 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -591,7 +591,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. */ -- 2.47.2