Message ID | 20240704112511.184257-5-ewanhai-oc@zhaoxin.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Add support for Zhaoxin Yongfeng CPU model and other improvements | expand |
diff --git a/target/i386/cpu.c b/target/i386/cpu.c index a3747fc487..c52a4cf3ba 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -6945,9 +6945,7 @@ void cpu_x86_cpuid(CPUX86State *env, uint32_t index, uint32_t count, * So don't set it here for Intel to make Linux guests happy. */ if (threads_per_pkg > 1) { - if (env->cpuid_vendor1 != CPUID_VENDOR_INTEL_1 || - env->cpuid_vendor2 != CPUID_VENDOR_INTEL_2 || - env->cpuid_vendor3 != CPUID_VENDOR_INTEL_3) { + if (!IS_INTEL_CPU(env) && !IS_ZHAOXIN_CPU(env)) { *ecx |= 1 << 1; /* CmpLegacy bit */ } }
Zhaoxin CPUs handle the CMPLegacy bit in the same way as Intel CPUs. This patch simplifies the existing logic by using the IS_XXX_CPU macro and includes checks for Zhaoxin vendor to align their behavior with Intel. Signed-off-by: EwanHai <ewanhai-oc@zhaoxin.com> --- target/i386/cpu.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)