This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][GCC][mid-end] Allow larger copies when target supports unaligned access [Patch (1/2)]
On Thu, 16 Nov 2017, Tamar Christina wrote:
> Hi Richard,
>
> >
> > I'd have made it
> >
> > if { ([is-effective-target non_strict_align]
> > && ! ( [istarget ...] || ....))
> >
> > thus default it to 1 for non-strict-align targets.
> >
>
> Fair, I've switched it to a black list and have excluded the only one I know
> should not work. Most of the rest will get blocked by non_strict_align and for the
> few others I'll adjust the testcase accordingly if there are any issues.
>
> > > But this also raises a question, some targets have defined SLOW_UNALIGNED_ACCESS
> > > in a way that uses only internal state to determine the value where STRICT_ALIGNMENT
> > > is essentially ignored. e.g. PowerPC and riscv.
> > >
> > > The code generation *might* change for them but the tests won't run. I see now way to
> > > make the test accurate (as in, runs in all cases where the codegen changed)
> > > unless I expose SLOW_UNALIGNED_ACCESS as a define so I can test for it.
> > >
> > > Would this be the way to go?
> >
> > I don't think so. SLOW_UNALIGNED_ACCESS is per mode and specific to
> > a certain alignment.
> >
>
> Ah, right! that slipped my mind for a bit.
>
> Ok for trunk?
Ok.
Richard.