On Mon, Jul 13, 2020 at 4:19 AM Florian Weimer wrote: > > * H. J. Lu: > > > EDX are checked. Did you mean EAX/EBX from INDEX_1 and EAX from INDEX_7? > > They aren't used for CPU feature detection. > > Could they be used in the future? Then we should clear the usable view > of this. > > Apart from this, I have no further comments. > Here is the updated patch with this change, which I am checking in: diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c index ec150761a9..4c24ba7c31 100644 --- a/sysdeps/x86/cpu-features.c +++ b/sysdeps/x86/cpu-features.c @@ -79,6 +79,12 @@ update_usable (struct cpu_features *cpu_features) CPU_FEATURE_UNSET (cpu_features, INDEX_7_EDX_21); CPU_FEATURE_UNSET (cpu_features, INDEX_7_EDX_23); + /* EAX/EBX from COMMON_CPUID_INDEX_1 and EAX from COMMON_CPUID_INDEX_7 + aren't used for CPU feature detection. */ + cpu_features->features[COMMON_CPUID_INDEX_1].usable.eax = 0; + cpu_features->features[COMMON_CPUID_INDEX_1].usable.ebx = 0; + cpu_features->features[COMMON_CPUID_INDEX_7].usable.eax = 0; + /* Starting from COMMON_CPUID_INDEX_80000001, copy the cpuid bits to usable bits. */ CPU_FEATURE_SET_USABLE (cpu_features, LAHF64_SAHF64); Thanks. -- H.J.