Reload question
Mark Mitchell
mark@codesourcery.com
Fri Jul 26 16:35:00 GMT 2002
--On Friday, July 26, 2002 12:18:10 PM +0100 Bernd Schmidt
<bernds@redhat.com> wrote:
> On Thu, 25 Jul 2002, Mark Mitchell wrote:
>
>> > In reload, after doing register allocation, we do, in "reload()":
>> >
>> > That mutates the instruction in place, with the possible result
>> > that it is no longer recognizable.
>> >
>> > Who is supposed to be responsible for making the instruction
>> > recognizable again?
>> >
>> > Reload itself. The insn won't match its constraints.
>>
>> But this happens *at the end* of reload. Search for:
>>
>> PUT_CODE (reg, MEM)
>>
>> in reload1.c.
>>
>> So, where in reload is the instruction supposed to be checked to see
>> that it is safe to make this transmogrification?
>
> find_reloads. If the modification isn't safe, we'll make a reload for
> the operand and thus ensure that when we get to the code that modifies
> pseudos into MEMs, the transformation is correct.
Thanks; that helped. I think I understand now what's wrong.
Thanks!
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
More information about the Gcc
mailing list