x86_64/context: fix check for xsave

This commit is contained in:
Matheus
2025-12-27 17:23:21 -03:00
parent b1640a3c10
commit c9c2471796
+3 -2
View File
@@ -42,10 +42,11 @@ typedef struct {
void arch_extracontext_detect(void) {
if (!arch_xsave_size) {
if (cpuid_base_max_leaf() >= 0x0d) {
cpuid_results_t results;
cpuid(1, &results);
if (cpuid_base_max_leaf() >= 0x0d && (results.ecx & (1 << 26))) {
xsave_method = XSAVE;
cpuid_results_t results;
cpuid_with_ecx(0x0d, 0, &results);
xcr0_value = ((uint64_t)results.edx << 32) | results.eax;
xcr0_value &= XCR0_MASK;