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 master updated. glibc-2.26-126-g098b9dd


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, master has been updated
       via  098b9dd46814f7e624e42a8844c169f3edc67052 (commit)
      from  486afa6d27156665959e59b86e7aad18c3832cbe (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

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

commit 098b9dd46814f7e624e42a8844c169f3edc67052
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Aug 18 06:18:55 2017 -0700

    x86-64: Check FMA_Usable in ifunc-mathvec-avx2.h [BZ #21966]
    
    Since the AVX2 version of mathvec functions uses FMA, it can only be
    used when FMA is usable.
    
    	[BZ #21966]
    	* sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx2.h
    	(IFUNC_SELECTOR): Don't use the AVX2 version if FMA isn't
    	usable.

diff --git a/ChangeLog b/ChangeLog
index 9ffc40c..8da8e34 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2017-08-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #21966]
+	* sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx2.h
+	(IFUNC_SELECTOR): Don't use the AVX2 version if FMA isn't
+	usable.
+
 2017-08-17  DJ Delorie  <dj@redhat.com>
 
 	* bug17079.c: Update to new test harness.
diff --git a/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx2.h b/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx2.h
index a43d4c5..ccda274 100644
--- a/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx2.h
+++ b/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx2.h
@@ -31,7 +31,8 @@ IFUNC_SELECTOR (void)
 {
   const struct cpu_features* cpu_features = __get_cpu_features ();
 
-  if (CPU_FEATURES_ARCH_P (cpu_features, AVX2_Usable))
+  if (CPU_FEATURES_ARCH_P (cpu_features, FMA_Usable)
+      && CPU_FEATURES_ARCH_P (cpu_features, AVX2_Usable))
     return OPTIMIZE (avx2);
 
   return OPTIMIZE (sse_wrapper);

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

Summary of changes:
 ChangeLog                                         |    7 +++++++
 sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx2.h |    3 ++-
 2 files changed, 9 insertions(+), 1 deletions(-)


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]