about summary refs log tree commit diff
path: root/ChangeLog
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2018-09-20 12:43:41 +0000
committerJoseph Myers <joseph@codesourcery.com>2018-09-20 12:43:41 +0000
commitd90c9b1a121295a5e31810b899ab637f68898857 (patch)
treea791eb9d53c27f6c53907ef83acab822794f0da0 /ChangeLog
parentdb9a8ad4ff3fc58e3773a9a4d0cabe3c1bc9c94c (diff)
downloadglibc-d90c9b1a121295a5e31810b899ab637f68898857.tar.gz
glibc-d90c9b1a121295a5e31810b899ab637f68898857.tar.xz
glibc-d90c9b1a121295a5e31810b899ab637f68898857.zip
Invert sense of list of i686-class processors in sysdeps/x86/cpu-features.h.
I noticed that sysdeps/x86/cpu-features.h had conditionals on whether
to define HAS_CPUID, HAS_I586 and HAS_I686 with a long list of
preprocessor macros for i686-and-later processors which however was
out of date.  This patch avoids the problem of the list getting out of
date by instead having conditionals on all the (few, old) pre-i686
processors for which GCC has preprocessor macros, rather than the
(many, expanding list) i686-and-later processors.  It seems HAS_I586
and HAS_I686 are unused so the only effect of these macros being
missing is that 32-bit glibc built for one of these processors would
end up doing runtime detection of CPUID availability.

i386 builds are prevented by a configure test so there is no need to
allow for them here.  __geode__ (no long nops?) and __k6__ (no CMOV,
at least according to GCC) are conservatively handled as i586, not
i686, here (as noted above, this is a theoretical distinction at
present in that only HAS_CPUID appears to be used).

Tested for x86.

	* sysdeps/x86/cpu-features.h [__geode__ || __k6__]: Handle like
	[__i586__ || __pentium__].
	[__i486__]: Handle explicitly.
	(HAS_CPUID): Define to 1 if above macros are undefined.
	(HAS_I586): Likewise.
	(HAS_I686): Likewise.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog9
1 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 8942396893..fc3fbffa23 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2018-09-20  Joseph Myers  <joseph@codesourcery.com>
+
+	* sysdeps/x86/cpu-features.h [__geode__ || __k6__]: Handle like
+	[__i586__ || __pentium__].
+	[__i486__]: Handle explicitly.
+	(HAS_CPUID): Define to 1 if above macros are undefined.
+	(HAS_I586): Likewise.
+	(HAS_I686): Likewise.
+
 2018-09-20  Florian Weimer  <fweimer@redhat.com>
 
 	* misc/tst-gethostid.c: New file.