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, rs6000] Fix PR72827 (ada bootstrap failure)


> On Aug 31, 2016, at 9:00 AM, Bill Schmidt <wschmidt@linux.vnet.ibm.com> wrote:
> 
> 
> On 8/31/16 1:19 AM, Segher Boessenkool wrote:
>>> 
>> If (say) base=r1 offset=r0 this will now adjust r1?  That cannot be good.
> Mm, yeah, that wasn't well-thought.  Was thinking 0, not r0.  Will have
> to avoid
> that.

Unfortunately this kind of patch won't be able to address the problem.  If
we have a fixed base register (stack or frame pointer) and the offset register
has been assigned to r0, then the offset register is illegal to use in
replace_equiv_address.  As far as I can see, we can only fix this by making
a change in secondary reload so that we have a scratch register available.
Volunteers? :)

Bill


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