public inbox for newlib-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] Fix issue with dst bias in memset
@ 2018-11-08 16:46 Richard Earnshaw
  0 siblings, 0 replies; only message in thread
From: Richard Earnshaw @ 2018-11-08 16:46 UTC (permalink / raw)
  To: newlib-cvs

https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=df7824d1a465473a1901f67e26fd1485756cb446

commit df7824d1a465473a1901f67e26fd1485756cb446
Author: Wilco Dijkstra <Wilco.Dijkstra@arm.com>
Date:   Thu Nov 8 15:50:42 2018 +0000

    Fix issue with dst bias in memset
    
    This patch fixes an issue in the previous memset loop change. If the
    zva size is >= 256 and there are more than 64 bytes left in the
    tail, we could enter the loop and thus need to rebias dst by 32 as
    well.
    
    Since no known CPUs use this size this can't be tested natively, so I've
    tested it on a simulator initialized with a large zva size.
    
    --

Diff:
---
 newlib/libc/machine/aarch64/memset.S | 1 +
 1 file changed, 1 insertion(+)

diff --git a/newlib/libc/machine/aarch64/memset.S b/newlib/libc/machine/aarch64/memset.S
index 7c8fe58..103e3f8 100644
--- a/newlib/libc/machine/aarch64/memset.S
+++ b/newlib/libc/machine/aarch64/memset.S
@@ -233,6 +233,7 @@ L(zva_other):
 	subs	count, count, zva_len
 	b.hs	3b
 4:	add	count, count, zva_len
+	sub	dst, dst, 32		/* Bias dst for tail loop.  */
 	b	L(tail64)
 
 	.size	memset, . - memset


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2018-11-08 16:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-08 16:46 [newlib-cygwin] Fix issue with dst bias in memset Richard Earnshaw

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).