This is the mail archive of the newlib@sourceware.org mailing list for the newlib 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, AARCH64] Optimized memset


> Marcus Shawcroft wrote:
> On 10 July 2015 at 13:44, Wilco Dijkstra <wdijkstr@arm.com> wrote:
> 
> > It turns out to be slightly faster on A53 too, so I've updated my patch.
> >
> > Wilco
> >
> > ChangeLog:
> > 2015-07-10  Wilco Dijkstra  <wdijkstr@arm.com>
> >
> >         * newlib/libc/machine/aarch64/memset.S (memset):
> >         Rewrite of optimized memset.
> >
> > OK for commit?
> 
> Wilco, This patch appears to cause various aarch64_be-none-elf gcc
> testsuite tests to drop into infinite loops. One example is:
> 
> RUNTESTFLAGS="builtins.exp=fprintf.c" make check-gcc
> 
> would you mind investigating please?
> 
> I'm going to revert the patch while we investigate this.

It turns out there was a typo in this instruction due to testing for
different zva values:

	and	tmp1w, tmp1w, 4 (should be 15)

As a result memset fails if you use a dz zva value other than the
common setting of 64 bytes. With the change it correctly works with 
any legal setting, and aarch64_be-none-elf passes.

Attached is the fixed version of the patch.

Wilco

Attachment: 0001-Optimized-memset.txt
Description: Text document


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