diff options
author | Richard Stallman <rms@gnu.org> | 1992-09-02 21:21:19 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1992-09-02 21:21:19 +0000 |
commit | c07c29b98c3406fa3ff6c924b8400346a49732d3 (patch) | |
tree | a74631899825459c885c0d132c1bb548d722e3a8 /gcc | |
parent | 301a5c0b57e24135dd231d36de93f2b8121ec987 (diff) | |
download | gcc-c07c29b98c3406fa3ff6c924b8400346a49732d3.zip gcc-c07c29b98c3406fa3ff6c924b8400346a49732d3.tar.gz gcc-c07c29b98c3406fa3ff6c924b8400346a49732d3.tar.bz2 |
(find_reloads): If have any earlyclobbers, don't let any reloads overlap with them.
(find_reloads): If have any earlyclobbers, don't let any
reloads overlap with them. Make everything RELOAD_OTHER.
From-SVN: r2037
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/reload.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/reload.c b/gcc/reload.c index 3809423..c5f4343 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -3276,6 +3276,13 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p) if (output_address && reload_when_needed[i] == RELOAD_OTHER) reload_needed_for_multiple[i] = 1; + + /* If we have earlyclobbers, make sure nothing overlaps them. */ + if (n_earlyclobbers > 0) + { + reload_when_needed[i] = RELOAD_OTHER; + reload_needed_for_multiple[i] = 1; + } } } |