From f4089ca1d62c68c980d36147b220261bd9e22ae5 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Fri, 12 Mar 2004 21:35:27 +0000 Subject: Update. * sysdeps/unix/sysv/linux/x86_64/sysconf.c: New file. --- sysdeps/unix/sysv/linux/i386/sysconf.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'sysdeps/unix/sysv/linux/i386/sysconf.c') diff --git a/sysdeps/unix/sysv/linux/i386/sysconf.c b/sysdeps/unix/sysv/linux/i386/sysconf.c index 067c752924..54e78409d4 100644 --- a/sysdeps/unix/sysv/linux/i386/sysconf.c +++ b/sysdeps/unix/sysv/linux/i386/sysconf.c @@ -143,7 +143,13 @@ intel_check_word (int name, unsigned int value, bool *has_level_2, unsigned int byte = value & 0xff; if (byte == 0x40) - *no_level_2_or_3 = true; + { + *no_level_2_or_3 = true; + + if (folded_name == _SC_LEVEL3_CACHE_SIZE) + /* No need to look further. */ + break; + } else { struct intel_02_cache_info *found; @@ -290,6 +296,7 @@ __sysconf (int name) : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx) : "0" (0)); + /* This spells out "GenuineIntel". */ if (ebx == 0x756e6547 && ecx == 0x6c65746e && edx == 0x49656e69) return handle_intel (name, eax); // XXX Fill in more vendors. -- cgit v1.2.3