Commit 65599eb4 by Denis Chertykov Committed by Denis Chertykov

regrename.c (regrename_optimize): frame pointer register can use a few hardregs.

	* regrename.c (regrename_optimize): frame pointer register can
	use a few hardregs.

From-SVN: r42305
parent ec54a908
Sat May 19 09:40:45 2001 Denis Chertykov <denisc@overta.ru>
* regrename.c (regrename_optimize): frame pointer register can
use a few hardregs.
2001-05-18 Jason Merrill <jason_merrill@redhat.com> 2001-05-18 Jason Merrill <jason_merrill@redhat.com>
* README.DWARF: Move into dwarfout.c. * README.DWARF: Move into dwarfout.c.
......
/* Register renaming for the GNU compiler. /* Register renaming for the GNU compiler.
Copyright (C) 2000 Free Software Foundation, Inc. Copyright (C) 2000, 2001 Free Software Foundation, Inc.
This file is part of GNU CC. This file is part of GNU CC.
...@@ -219,9 +219,14 @@ regrename_optimize () ...@@ -219,9 +219,14 @@ regrename_optimize ()
/* Don't clobber traceback for noreturn functions. */ /* Don't clobber traceback for noreturn functions. */
if (frame_pointer_needed) if (frame_pointer_needed)
{ {
SET_HARD_REG_BIT (unavailable, FRAME_POINTER_REGNUM); int i;
for (i = HARD_REGNO_NREGS (FRAME_POINTER_REGNUM, Pmode); i--;)
SET_HARD_REG_BIT (unavailable, FRAME_POINTER_REGNUM + i);
#if FRAME_POINTER_REGNUM != HARD_FRAME_POINTER_REGNUM #if FRAME_POINTER_REGNUM != HARD_FRAME_POINTER_REGNUM
SET_HARD_REG_BIT (unavailable, HARD_FRAME_POINTER_REGNUM); for (i = HARD_REGNO_NREGS (HARD_FRAME_POINTER_REGNUM, Pmode); i--;)
SET_HARD_REG_BIT (unavailable, HARD_FRAME_POINTER_REGNUM + i);
#endif #endif
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment