This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Doc for -fcall-used-REG and -fcall-saved-REG
- To: gavin at cygnus dot com
- Subject: Re: Doc for -fcall-used-REG and -fcall-saved-REG
- From: Nick Ing-Simmons <nik at tiuk dot ti dot com>
- Date: Wed, 14 Oct 1998 16:02:56 +0100
- Cc: egcs at cygnus dot com
- Organization: via, but not speaking for : Texas Instruments Ltd.
- References: <m0zTED4-000s8JC@cetus.cygnus.com>
- Reply-To: Nick Ing-Simmons <nik at tiuk dot ti dot com>
Gavin Romig-Koch <gavin@cygnus.com> writes:
>
> Use of this flag for the stack pointer or the frame pointer is
> an error. Use of this flag for a register that has a fixed
> pervasive role in the machine's execution model, other than
> the stack pointer and frame pointer, will produce disastrous
> results.
>
>Or wether we know that there are no other such fixed registers,
>and can drop that second sentance? Does anyone know of other
>fixed pervasive role (perhaps machine specific) registers
>exist?
On my (TI internal) port of GCC2 to TMS320C80's RISC, there is a "return
address" register which is fixed-and pervasive in same manner. (Which register
is used does not matter but it has to be "pervasive" at least between caller and
callee!, and it is easier to fix it as part of ABI.)
In fact in that port it is quite permissible to re-use frame pointer in any
function which does not need alloca() style dynamic frame size.
--
Nick Ing-Simmons <nik@tiuk.ti.com>
Via, but not speaking for: Texas Instruments Ltd.