This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: FW: register spilling
- From: Aldy Hernandez <aldyh at redhat dot com>
- To: umar janjua <umarj at enabtech dot com>
- Cc: gcc-help at gcc dot gnu dot org, gcc at gcc dot gnu dot org
- Date: 29 May 2002 18:59:15 +1000
- Subject: Re: FW: register spilling
- References: <10C6C1971DA00C4BB87AC0206E3CA38242AA41@1aurora.enabtech>
>>>>> "umar" == umar janjua <umarj@enabtech.com> writes:
> However during the RECAP , we identified that a case occurs where the gcc is
> storing address register directly into memory( i.e is not
> allowed). As we
did you try this?
`SECONDARY_RELOAD_CLASS (CLASS, MODE, X)'
`SECONDARY_INPUT_RELOAD_CLASS (CLASS, MODE, X)'
`SECONDARY_OUTPUT_RELOAD_CLASS (CLASS, MODE, X)'
Many machines have some registers that cannot be copied directly
to or from memory or even from other types of registers. An
example is the `MQ' register, which on most machines, can only be
copied to or from general registers, but not memory. Some
machines allow copying all registers to and from memory, but
require a scratch register for stores to some memory locations
(e.g., those with symbolic address on the RT, and those with
certain symbolic address on the Sparc when compiling PIC). In
some cases, both an intermediate and a scratch register are
required.