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][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.


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