This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc 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]

GNU C Library master sources branch hjl/avx512f-mem/master created. glibc-2.22-677-gbb83a13


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, hjl/avx512f-mem/master has been created
        at  bb83a138162885366c6c5b974caa87ac03f33e2c (commit)

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=bb83a138162885366c6c5b974caa87ac03f33e2c

commit bb83a138162885366c6c5b974caa87ac03f33e2c
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Jan 15 12:44:13 2016 -0800

    Always use prefetchnta with non-temporal stores

diff --git a/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S b/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S
index 56e727b..6492c4f 100644
--- a/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S
+++ b/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S
@@ -340,15 +340,15 @@ L(preloop_large):
 	sub	%rdi, %r8
 	sub	%r8, %rsi
 	add	%r8, %rdx
-	prefetcht1 (%rsi)
-	prefetcht1 0x40(%rsi)
-	prefetcht1 0x80(%rsi)
-	prefetcht1 0xC0(%rsi)
+	prefetchnta (%rsi)
+	prefetchnta 0x40(%rsi)
+	prefetchnta 0x80(%rsi)
+	prefetchnta 0xC0(%rsi)
 L(gobble_256bytes_nt_loop):
-	prefetcht1 0x200(%rsi)
-	prefetcht1 0x240(%rsi)
-	prefetcht1 0x280(%rsi)
-	prefetcht1 0x2C0(%rsi)
+	prefetchnta 0x200(%rsi)
+	prefetchnta 0x240(%rsi)
+	prefetchnta 0x280(%rsi)
+	prefetchnta 0x2C0(%rsi)
 	prefetchnta 0x300(%rsi)
 	prefetchnta 0x340(%rsi)
 	prefetchnta 0x380(%rsi)
@@ -383,10 +383,10 @@ L(preloop_large_bkw):
 	sub	%r8, %rdx
 	add	%r9, %r8
 L(gobble_256bytes_nt_loop_bkw):
-	prefetcht1 -0x300(%rcx)
-	prefetcht1 -0x2C0(%rcx)
-	prefetcht1 -0x280(%rcx)
-	prefetcht1 -0x240(%rcx)
+	prefetchnta -0x300(%rcx)
+	prefetchnta -0x2C0(%rcx)
+	prefetchnta -0x280(%rcx)
+	prefetchnta -0x240(%rcx)
 	prefetchnta -0x400(%rcx)
 	prefetchnta -0x3C0(%rcx)
 	prefetchnta -0x380(%rcx)

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=a806d37903f0db0081a49a440b1f3a82f5e65916

commit a806d37903f0db0081a49a440b1f3a82f5e65916
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Jan 15 12:14:18 2016 -0800

    Use vmovdqu64 load with vmovntdq store

diff --git a/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S b/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S
index 75bc836..56e727b 100644
--- a/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S
+++ b/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S
@@ -353,10 +353,10 @@ L(gobble_256bytes_nt_loop):
 	prefetchnta 0x340(%rsi)
 	prefetchnta 0x380(%rsi)
 	prefetchnta 0x3C0(%rsi)
-	vmovups	(%rsi), %zmm0
-	vmovups	0x40(%rsi), %zmm1
-	vmovups	0x80(%rsi), %zmm2
-	vmovups	0xC0(%rsi), %zmm3
+	vmovdqu64	(%rsi), %zmm0
+	vmovdqu64	0x40(%rsi), %zmm1
+	vmovdqu64	0x80(%rsi), %zmm2
+	vmovdqu64	0xC0(%rsi), %zmm3
 	vmovntdq %zmm0, (%rdi)
 	vmovntdq %zmm1, 0x40(%rdi)
 	vmovntdq %zmm2, 0x80(%rdi)
@@ -391,10 +391,10 @@ L(gobble_256bytes_nt_loop_bkw):
 	prefetchnta -0x3C0(%rcx)
 	prefetchnta -0x380(%rcx)
 	prefetchnta -0x340(%rcx)
-	vmovups	-0x100(%rcx), %zmm0
-	vmovups	-0xC0(%rcx), %zmm1
-	vmovups	-0x80(%rcx), %zmm2
-	vmovups	-0x40(%rcx), %zmm3
+	vmovdqu64	-0x100(%rcx), %zmm0
+	vmovdqu64	-0xC0(%rcx), %zmm1
+	vmovdqu64	-0x80(%rcx), %zmm2
+	vmovdqu64	-0x40(%rcx), %zmm3
 	vmovntdq %zmm0,	-0x100(%r9)
 	vmovntdq %zmm1,	-0xC0(%r9)
 	vmovntdq %zmm2,	-0x80(%r9)

-----------------------------------------------------------------------


hooks/post-receive
-- 
GNU C Library master sources


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