This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: flow patch for building ia64
- To: amacleod at cygnus dot com
- Subject: Re: flow patch for building ia64
- From: Richard Henderson <rth at redhat dot com>
- Date: Mon, 30 Jul 2001 09:27:36 -0700
- Cc: gcc-bugs at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- References: <200107301614.JAA04882@seadog.cygnus.com>
On Mon, Jul 30, 2001 at 09:14:22AM -0700, amacleod@cygnus.com wrote:
> Which of the magic pseudos should be clear?
>
> /*FP RA CCV UNAT PFS LC EC */
CCV, PFS, and UNAT are call used; SP FP RA LC EC are call saved.
> Are there simply numerous places which reference call_used
> or some derivitive that also should have FIXED registers or'd in
> as well?
That's one part of it. The other part is that you'd need to
update all of the backends.
> + #ifdef CALL_REALLY_USED_REGISTERS
> + static char call_really_used_regs[] = CALL_REALLY_USED_REGISTERS;
> + #endif
Suggest you always define this array, falling back to call_used
registers. Also, -fcall-used will need to modify this, so it
can't be static.
> + Until this problem has been
> + resolved this macro can be used to overcome the situation
> + where we have a number of 'symbolic' registers at the end
> + of the fixed register list,
Symbolic registers have nothing to do with this. LC and EC
are real hard registers and we're not treating them live
across calls.
r~