diff options
author | J"orn Rennecke <amylaar@cygnus.co.uk> | 1999-03-10 10:59:54 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 1999-03-10 10:59:54 +0000 |
commit | 0c7f225984c0ef7a41393858ba8bdd473f17168c (patch) | |
tree | e1bf064b5a856935e3bfa6c88e8dba56d8c764bd /gcc | |
parent | 6cbd257eb5e361f019c5aff53e189e9123f30054 (diff) | |
download | gcc-0c7f225984c0ef7a41393858ba8bdd473f17168c.zip gcc-0c7f225984c0ef7a41393858ba8bdd473f17168c.tar.gz gcc-0c7f225984c0ef7a41393858ba8bdd473f17168c.tar.bz2 |
reload1.c (choose_reload_regs): When inheriting from the frame pointer, don't clobber it.
* reload1.c (choose_reload_regs): When inheriting from the frame
pointer, don't clobber it.
From-SVN: r25669
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/reload1.c | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index eeb5e18..f69c830 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Wed Mar 10 18:56:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk> + + * reload1.c (choose_reload_regs): When inheriting from the frame + pointer, don't clobber it. + Wed Mar 10 08:01:52 1999 Bruce Korb <korb@datadesign.com> * fixinc/fixinc.*: Resync-ed with the files in this diff --git a/gcc/reload1.c b/gcc/reload1.c index df62341..9109614 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -5930,6 +5930,9 @@ choose_reload_regs (chain) || (TEST_HARD_REG_BIT (reg_used_in_insn, i) && reload_out[r] && ! TEST_HARD_REG_BIT (reg_reloaded_dead, i)) + /* Don't clobber the frame pointer. */ + || (i == HARD_FRAME_POINTER_REGNUM + && reload_out[r]) /* Don't really use the inherited spill reg if we need it wider than we've got it. */ || (GET_MODE_SIZE (reload_mode[r]) |