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.19-879-gb4acef1


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  b4acef1ffe2e1ba6c608f31c1954a8100d3eabb0 (commit)
      from  61b1ef6e7cc4518cdadb808dfa78980cc15a63c3 (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=b4acef1ffe2e1ba6c608f31c1954a8100d3eabb0

commit b4acef1ffe2e1ba6c608f31c1954a8100d3eabb0
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Aug 12 17:02:51 2014 -0700

    Replace cpuid asm statement with __cpuid_count
    
    The compiler doesn't know that the cpuid asm statement in intel_check_word
    will trash RBX.  We are lucky that it doesn't cause any problems since
    RBX is also used by compiler for other purposes so that RBX is saved and
    restored.  This patch replaces it with __cpuid_count.
    
    	[BZ #17259]
    	* sysdeps/x86_64/cacheinfo.c (intel_check_word): Replace cpuid
    	asm statement with __cpuid_count.

diff --git a/ChangeLog b/ChangeLog
index d385cc9..e3a1f0a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2014-08-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #17259]
+	* sysdeps/x86_64/cacheinfo.c (intel_check_word): Replace cpuid
+	asm statement with __cpuid_count.
+
 2014-08-12  Mike Frysinger  <vapier@gentoo.org>
 
 	* configure.ac: Change __ehdr_start code to dereference the struct.
diff --git a/NEWS b/NEWS
index ad337e8..03132e2 100644
--- a/NEWS
+++ b/NEWS
@@ -22,7 +22,8 @@ Version 2.20
   16918, 16922, 16927, 16928, 16932, 16943, 16958, 16965, 16966, 16967,
   16977, 16978, 16984, 16990, 16996, 17009, 17022, 17031, 17042, 17048,
   17050, 17058, 17061, 17062, 17069, 17075, 17078, 17079, 17084, 17086,
-  17088, 17092, 17097, 17125, 17135, 17137, 17150, 17153, 17213, 17261.
+  17088, 17092, 17097, 17125, 17135, 17137, 17150, 17153, 17213, 17259,
+  17261.
 
 * Reverted change of ABI data structures for s390 and s390x:
   On s390 and s390x the size of struct ucontext and jmp_buf was increased in
diff --git a/sysdeps/x86_64/cacheinfo.c b/sysdeps/x86_64/cacheinfo.c
index 163af2a..ca13a53 100644
--- a/sysdeps/x86_64/cacheinfo.c
+++ b/sysdeps/x86_64/cacheinfo.c
@@ -191,9 +191,7 @@ intel_check_word (int name, unsigned int value, bool *has_level_2,
 	  unsigned int round = 0;
 	  while (1)
 	    {
-	      asm volatile ("xchgl %%ebx, %1; cpuid; xchgl %%ebx, %1"
-			    : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)
-			    : "0" (4), "2" (round));
+	      __cpuid_count (4, round, eax, ebx, ecx, edx);
 
 	      enum { null = 0, data = 1, inst = 2, uni = 3 } type = eax & 0x1f;
 	      if (type == null)

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

Summary of changes:
 ChangeLog                  |    6 ++++++
 NEWS                       |    3 ++-
 sysdeps/x86_64/cacheinfo.c |    4 +---
 3 files changed, 9 insertions(+), 4 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]