> But I wonder if we can instead fix the memcpy inlining issue by
> making the predicates involved honor LOCAL_ALIGNMENT
> instead of relying on DECL_ALIGN?

The memcpy inlining issue is not the only one affected by alignment
issue, I guess?
So I think it would be better to fix DECL_ALIGN?


On Mon, Mar 30, 2020 at 5:15 PM Jakub Jelinek <ja...@redhat.com> wrote:
>
> On Mon, Mar 30, 2020 at 11:09:40AM +0200, Richard Biener wrote:
> > On Fri, Mar 27, 2020 at 7:27 PM Jakub Jelinek <ja...@redhat.com> wrote:
> > >
> > > On Sat, Mar 28, 2020 at 02:06:56AM +0800, Kito Cheng wrote:
> > > >       PR target/90811
> > > >       * ipa-increase-alignment.cc (increase_alignment_local_var): New.
> > > >       (increase_alignment_global_var): New.
> > > >       (pass_ipa_increase_alignment::gate): Remove.
> > >
> > > I'm afraid this is too early, pass_ipa_increase_alignment is part of
> > > all_small_ipa_passes list, those are run before the LTO streaming.
> > > See cgraphunit.c (ipa_passes).
> > > For OpenMP/OpenACC offloading, this has to run after the streaming,
> > > which means either a pass in the all_regular_ipa_passes list, or much 
> > > better
> > > (I don't see any advantage of this being an IPA pass) some new pass that 
> > > is
> > > run very early in the all_passes list.
> >
> > It's an IPA pass because we IPA propagate alignment.
>
> For global vars sure, but we are talking here about automatic vars, and the
> offloading targets really have serious problems dealing with the 16/32 byte
> alignment forced from x86 backend.
>
>         Jakub
>

Reply via email to