From d0363a80690a299179d010c1d8a6d6430e7eb73f Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Mon, 21 Mar 2022 06:50:14 -0700 Subject: [PATCH] x86: Properly check FEATURE_AESKLE 1. Pass 0x19 to __cpuid for bit_AESKLE. 2. Enable FEATURE_AESKLE only if bit_AESKLE is set. PR target/104998 * common/config/i386/cpuinfo.h (get_available_features): Pass 0x19 to __cpuid for bit_AESKLE. Enable FEATURE_AESKLE only if bit_AESKLE is set. --- gcc/common/config/i386/cpuinfo.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/common/config/i386/cpuinfo.h b/gcc/common/config/i386/cpuinfo.h index 61b1a0f..239759d 100644 --- a/gcc/common/config/i386/cpuinfo.h +++ b/gcc/common/config/i386/cpuinfo.h @@ -779,11 +779,11 @@ get_available_features (struct __processor_model *cpu_model, /* Get Advanced Features at level 0x19 (eax = 0x19). */ if (max_cpuid_level >= 0x19) { - set_feature (FEATURE_AESKLE); - __cpuid (19, eax, ebx, ecx, edx); + __cpuid (0x19, eax, ebx, ecx, edx); /* Check if OS support keylocker. */ if (ebx & bit_AESKLE) { + set_feature (FEATURE_AESKLE); if (ebx & bit_WIDEKL) set_feature (FEATURE_WIDEKL); if (has_kl) -- 2.7.4