On Tue, Apr 10, 2018 at 09:55:35AM +0000, Bin Cheng wrote: > Hi Rainer, could you please help me double check that this solves the issue? > > Thanks, > bin > > gcc/testsuite > 2018-04-10 Bin Cheng <bin.ch...@arm.com> > > PR testsuite/85190 > * gcc.dg/vect/pr81196.c: Adjust pointer for aligned access.
> diff --git a/gcc/testsuite/gcc.dg/vect/pr81196.c > b/gcc/testsuite/gcc.dg/vect/pr81196.c > index 46d7a9e..15320ae 100644 > --- a/gcc/testsuite/gcc.dg/vect/pr81196.c > +++ b/gcc/testsuite/gcc.dg/vect/pr81196.c > @@ -4,14 +4,14 @@ > > void f(short*p){ > p=(short*)__builtin_assume_aligned(p,64); > - short*q=p+256; > + short*q=p+255; > for(;p!=q;++p,--q){ > short t=*p;*p=*q;*q=t; This is UB then though, because p will never be equal to q. > } > } > void b(short*p){ > p=(short*)__builtin_assume_aligned(p,64); > - short*q=p+256; > + short*q=p+255; > for(;p<q;++p,--q){ > short t=*p;*p=*q;*q=t; This one is fine, sure. Jakub