aboutsummaryrefslogtreecommitdiff
path: root/gcc/reload1.c
diff options
context:
space:
mode:
authorBernd Schmidt <bernds@cygnus.co.uk>1999-12-14 12:40:02 +0000
committerBernd Schmidt <crux@gcc.gnu.org>1999-12-14 12:40:02 +0000
commite483bf9c62e9fa8c89e55d1bd527d4710e47e083 (patch)
tree2e5e982add263664b4d7762bdad0a5d567cf22eb /gcc/reload1.c
parent0a326ec99a63b868ff94e337f606d7110436338f (diff)
downloadgcc-e483bf9c62e9fa8c89e55d1bd527d4710e47e083.zip
gcc-e483bf9c62e9fa8c89e55d1bd527d4710e47e083.tar.gz
gcc-e483bf9c62e9fa8c89e55d1bd527d4710e47e083.tar.bz2
Undo one misguided optimization attempt in previous change.
From-SVN: r30915
Diffstat (limited to 'gcc/reload1.c')
-rw-r--r--gcc/reload1.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 4bdcaf8..bedcebb 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -948,18 +948,13 @@ reload (first, global, dumpfile)
}
}
- /* No point in trying to select reload registers if we know we're
- going to re-run everything again. */
- if (! something_changed)
- {
- select_reload_regs (dumpfile);
+ select_reload_regs (dumpfile);
+ if (failure)
+ goto failed;
- if (failure)
- goto failed;
+ if (insns_need_reload != 0 || did_spill)
+ something_changed |= finish_spills (global, dumpfile);
- if (insns_need_reload != 0 || did_spill)
- something_changed |= finish_spills (global, dumpfile);
- }
if (! something_changed)
break;