This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Changing call_used_regs etc. in a port (was: Re: Status of the MMIX GCC port...)
- To: hp at bitrange dot com
- Subject: Re: Changing call_used_regs etc. in a port (was: Re: Status of the MMIX GCC port...)
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- Date: Thu, 24 Feb 00 06:01:19 EST
- Cc: gcc at gcc dot gnu dot org
Aha. Thanks for the pointer. It might make some things easier.
However, the way fixed_regs, saved_regs and call_used_regs (and
other variables) are modified in INIT_ACCUMULATIVE_ARGS and
incoming_reg for a29k seems a bit questionable:
It is a bit questionable, but that is the only way to do it,
unfortunately.
If it is really intended that they can, and in cases like this,
should be modified by (e.g.) the target function-arg macros,
perhaps it should be documented and parametrized?
I agree. I'd suggest you look into whether it does, in fact, still work.
If so, make a change to the documentation to say it works and, if not,
see what's involved in making it work.
If for no other reason, than if it's *not* documented, then that
functionality may start to rot, and some core code will start to
rely on the register allocation variables be set only once per
compilation-unit.
I agree, but it's hard to see why that's *required*.
Is the a29k port in common use with gcc or egcs versions post 2.8.1,
for example gcc 2.95? More precisely, does that scheme still work?
I don't know the answer to either of those.