target/i386: Print CPUID subleaf info for unsupported feature

Some CPUID leaves have meaningful subleaf index. Print the subleaf info
in feature_word_description for CPUID features.

Signed-off-by: Xiaoyao Li <xiaoyao.li@intel.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20241217123932.948789-3-xiaoyao.li@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Xiaoyao Li 2024-12-17 07:39:32 -05:00 committed by Paolo Bonzini
parent 4a2fb19669
commit adf25ad70f

View file

@ -5780,11 +5780,15 @@ static char *feature_word_description(FeatureWordInfo *f)
{
const char *reg = get_register_name_32(f->cpuid.reg);
assert(reg);
return g_strdup_printf("CPUID.%02XH:%s",
f->cpuid.eax, reg);
if (!f->cpuid.needs_ecx) {
return g_strdup_printf("CPUID[eax=%02Xh].%s", f->cpuid.eax, reg);
} else {
return g_strdup_printf("CPUID[eax=%02Xh,ecx=%02Xh].%s",
f->cpuid.eax, f->cpuid.ecx, reg);
}
}
case MSR_FEATURE_WORD:
return g_strdup_printf("MSR(%02XH)",
return g_strdup_printf("MSR(%02Xh)",
f->msr.index);
}