This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH, alpha]: Fix PR42113


On Mon, Nov 23, 2009 at 12:13 AM, Richard Henderson <rth@redhat.com> wrote:

>> - operands[5] = operands[0];
>> + operands[5] = gen_lowpart (SImode, operands[0]);
>>
>>
>> operand[5] register is generated with:
>>
>> + operands[5] = gen_rtx_REG (SImode, REGNO (operands[0]));
>>
>> We have assignment to (match_dup 5), and an assignment to a subreg is
>> probably not valid for a comparison operator we are splitting to.
>
> The splitter is not constrained by reload_completed.
> Generating a new reg for a pseudo isn't valid.

Please note that this code will execute only for !can_create_pseudo,
so only when either reload_in_progress or reload_completed are active.
I was under impression that this is enough to avoid pseudos.
>
> The code was correct as reviewed, but not now.

Thanks, will put back original code.

Uros.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]