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][RFC] make lra.c:check_rtl set maybe_hot_insn_p


> On 11/27/13 10:30, Yvan Roux wrote:
> >>Please include either the patch you are pinging or at the least a link to it
> >>in the archives.
> >
> >Ok, sorry for that, here is the patch and Changelog
> >
> >Yvan
> >
> >
> >2013-11-17  Yvan Roux  <yvan.roux@linaro.org>
> >
> >         * config/arm/arm.md (store_minmaxsi): Use only when
> >         optimize_function_for_size_p.
> Thanks.
> 
> This is fine for the trunk.  And yes, having an insn's validity
> change based on what block it's in is most definitely bad.
> 
> I was a bit concerned have the x86 backend, as I happened to know it
> uses optimize_insn_for_* rather extensively.  But thankfully it's
> only used in splitters, expanders & peephole2 patterns, which should
> all be safe.

Yep, this was (is) the plan - have instructions independent on profile (since
they can be freely moved from hot parts to cold and in weird cases also from
cold to hot) while expanders/splitters and peep2s may use profile to choose
appropriate generation strategy.

I tried to review backend for places where splitters/peeps/expanders are used
and set profile according reset it to default for the possible cases where
we call them from profile unaware pass.

Honza
> 
> If you wouldn't mind, could you look at md.texi and see if there's a
> reasonable place to put verbage about this issue in the internals
> manual?  It might save someone time in the future :-)
> 
> Thanks,
> Jeff


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