[Bug rtl-optimization/59535] [4.9 regression] -Os code size regressions for Thumb1/Thumb2 with LRA
ramana at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Dec 19 09:54:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59535
--- Comment #12 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> ---
(In reply to Ramana Radhakrishnan from comment #11)
> (In reply to Vladimir Makarov from comment #9)
> > (In reply to Richard Earnshaw from comment #5)
>
> > I think major problem is in wrong alternative choices as thumb lo/hi reg
> > usage is complicated.
>
> That is probably going to be the reason.
>
> >
> > I take this bug very seriously. If I cannot fix it till end of Jan (sorry,
> > it is a vacation time), probably we should switch to reload pass for thumb.
>
> Thanks very much for taking this so seriously.
>
>
> >
> > To be honest, I don't know why 12 is not fixed. It results in using
> > 12 by IRA and bigger code when even reload is used. I believe it
> > should fixed too.
>
>
> According to the ABI r12 is a caller saved register. Am I correct in
> understanding that we are taking out a caller-saved register to allow for
> lra to be able to choose other low regs and thereby prevent movements to and
> from r12 ?
>
Scratch that : it's already for t16 and Os. Changing LAST_HI_REGNUM to 14 in
arm.h should be enough.
regards
Ramana
More information about the Gcc-bugs
mailing list