public inbox for cygwin-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] Cygwin: x86_64: add wmemset assembler entry point
@ 2022-08-08 16:17 Corinna Vinschen
  0 siblings, 0 replies; only message in thread
From: Corinna Vinschen @ 2022-08-08 16:17 UTC (permalink / raw)
  To: cygwin-cvs

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

commit 188d5f6c9ad5cbbd6f0fcb9aaf15bc9870597910
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Mon Aug 8 16:49:52 2022 +0200

    Cygwin: x86_64: add wmemset assembler entry point
    
    So far, wmemset used the C implemantation from newlib.  Let's use
    the optimized assembler code instead.
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/Makefile.am     | 6 +++---
 winsup/cygwin/x86_64/memset.s | 8 ++++++++
 2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/winsup/cygwin/Makefile.am b/winsup/cygwin/Makefile.am
index 6838be99a..b8436226b 100644
--- a/winsup/cygwin/Makefile.am
+++ b/winsup/cygwin/Makefile.am
@@ -56,7 +56,8 @@ TEST_LIB_NAME=libcygwin0.a
 if TARGET_X86_64
 TARGET_FILES= \
 	x86_64/memcpy.s \
-	x86_64/memset.s
+	x86_64/memset.s \
+	x86_64/mcountFunc.S
 endif
 
 LIB_FILES= \
@@ -357,8 +358,7 @@ MALLOC_FILES= \
 GMON_FILES= \
 	gmon.c \
 	mcount.c \
-	profil.c \
-	mcountFunc.S
+	profil.c
 
 GENERATED_FILES= \
 	sigfe.s
diff --git a/winsup/cygwin/x86_64/memset.s b/winsup/cygwin/x86_64/memset.s
index ac73b6ace..d3b95ecd2 100644
--- a/winsup/cygwin/x86_64/memset.s
+++ b/winsup/cygwin/x86_64/memset.s
@@ -67,3 +67,11 @@ L1:     rep
 	movq	16(%rsp),%rdi
 	ret
 	.seh_endproc
+
+	.globl  wmemset
+	.seh_proc wmemset
+wmemset:
+	.seh_endprologue
+	shlq	$1,%r8		/* cnt * sizeof (wchar_t) */
+	jmp	memset
+	.seh_endproc


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

only message in thread, other threads:[~2022-08-08 16:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-08 16:17 [newlib-cygwin] Cygwin: x86_64: add wmemset assembler entry point Corinna Vinschen

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).