This is the mail archive of the gcc@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: Address mode offset spill


>
> One thing you certainly need to do is set REG_ALLOC_ORDER so that r0 is
> the last register allocated.
>
> You need to set TARGET_RTX_COSTS so that constants larger than 512 are
> more expensive than registers.  That should prevent the constant from
> being propagated into the insn.

Yeah. I 've already done it in macro  REG_ALLOC_ORDER and TARGET_RTX_COSTS .



>
>
> > So before cc1 crashed, the unrecognized insn doesn't go through the
> > LEGITIMIZE_RELOAD_ADDRESS and PREFERRED_RELOAD_CLASS macro.
> > Is there any solution I can handle the similar problems?
>
> You're right, for a pure load like this, you will need a secondary
> reload.
>
> Ian

you mean in Target hook "TARGET_SECONDARY_RELOAD"?  This is what I
haven't done yet. I will write it and try again.


Thank you very much.


    daniel


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