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] fix target/44606, reload bug on SPE


On 10/05/2010 07:36 PM, Nathan Froyd wrote:
> On Fri, Oct 01, 2010 at 12:16:50AM +0200, Eric Botcazou wrote:
>>> Bootstrapping in progress on x86-64.  OK to commit and backport to 4.5
>>> and 4.4?
>>>
>>> gcc/
>>> 	* reload1.c (emit_reload_insns): Adjust prototype.  Check for
>>> 	inherited output reloads.
>>
>> The return value must be documented.
>>
>>> 	(reload_as_needed): Delete insn if emit_reload_insns returns
>>> 	true.
>>> 	(choose_reload_regs): Save equiv in reload_override_in for
>>> 	output reloads.  Set reg_rtx from reload_override_in.
>>
>> I think that deleting new insns in reload is too risky on the branches.  Can't 
>> we tighten the above condition instead on the branches so that it will return 
>> false in this case?
> 
> Returning to this thread, are you indicating that the deleting insns
> approach is OK for trunk (I will post another patch addressing comments
> if so), but you'd like to see something like the following (untested)
> patch for release branches?  Or would you like to see something
> different for trunk as well?  Please clarify.  Thanks.

I think the following is probably appropriate given my failed attempt to
get this optimization to trigger.


Bernd

Attachment: no-inherit-out.diff
Description: Text document


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