[PATCH] Initialize __x86_shared_non_temporal_threshold only if zero

H.J. Lu hjl.tools@gmail.com
Sun May 8 15:57:00 GMT 2016


Support setting processor-specific __x86_shared_non_temporal_threshold
value in init_cpu_features.

Tested on x86 and x86-64.  Any comments and feebacks?

H.J.
---
	* sysdeps/x86/cacheinfo.c (__x86_shared_non_temporal_threshold):
	Initialize only if it is zero.
---
 sysdeps/x86/cacheinfo.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/sysdeps/x86/cacheinfo.c b/sysdeps/x86/cacheinfo.c
index 143b333..788f42d 100644
--- a/sysdeps/x86/cacheinfo.c
+++ b/sysdeps/x86/cacheinfo.c
@@ -669,5 +669,6 @@ init_cacheinfo (void)
   /* The large memcpy micro benchmark in glibc shows that 6 times of
      shared cache size is the approximate value above which non-temporal
      store becomes faster.  */
-  __x86_shared_non_temporal_threshold = __x86_shared_cache_size * 6;
+  if (__x86_shared_non_temporal_threshold == 0)
+    __x86_shared_non_temporal_threshold = __x86_shared_cache_size * 6;
 }
-- 
2.5.5



More information about the Libc-alpha mailing list