This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: New RTL instruction for my port
- From: Jean Christophe Beyler <jean dot christophe dot beyler at gmail dot com>
- To: Richard Henderson <rth at redhat dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Thu, 7 Jan 2010 16:44:00 -0500
- Subject: Re: New RTL instruction for my port
- References: <c568a2600912141346x3123d831s8454a7ab09e2c28e@mail.gmail.com> <20091214220426.GA27329@caradoc.them.org> <c568a2600912141452j5197d559o14b49071ccdc69d9@mail.gmail.com> <20091214231021.GA31634@caradoc.them.org> <c568a2600912150708y67cbcf5avf7310385aa8bc47d@mail.gmail.com> <20091215152054.GA23142@caradoc.them.org> <c568a2600912150748w199bcedawd9f000e88cf43621@mail.gmail.com> <c568a2601001071258l4e6e1e22tbe94970c8f4a0816@mail.gmail.com> <4B464EA5.7050409@redhat.com>
I am almost convinced I had tried that already but apparently not.
This seems to have fixed my problem, thank you :-)
Jc
On Thu, Jan 7, 2010 at 4:14 PM, Richard Henderson <rth@redhat.com> wrote:
> On 01/07/2010 12:58 PM, Jean Christophe Beyler wrote:
>>
>> Dear all,
>>
>> I've gone to using unspec and I think I know why I have a problem. It
>> seems that actually, the problem lies with the fact that these
>> instructions are touching an internal register and how I am handling
>> that register.
>>
>> Since I don't want the register allocator to use that register, I put
>> a 1 in FIXED_REGISTERS. However, it's state is persistent across
>> function calls, meaning that if nothing changes its state, it will be
>> still set in the same way after a return call.
>>
>> However, CALL_USED_REGISTERS is defined as "1 for registers not
>> available across function calls. These must include the
>> FIXED_REGISTERS and also any registers that can be used without being
>> saved.".
>>
>> These two sentences seem in contradiction with what I want :
>>
>> - I want to define a register that is not available to the register
>> allocator but is available across function calls.
>>
>
> See CALL_REALLY_USED_REGISTERS.
>
>
> r~
>