From: Eduardo Habkost Date: Tue, 20 Sep 2016 23:57:00 +0000 (-0300) Subject: tests: Test CPUID level handling for old machines X-Git-Tag: v2.8.0-rc0~115^2~16 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=df3e9af8fd02f22d03871975daa23ecbfcd48490;p=thirdparty%2Fqemu.git tests: Test CPUID level handling for old machines We're going to change the way level/xlevel/xlevel2 are handled when enabling features, but we need to keep the old behavior on existing machine types. Add test cases for that. Reviewed-by: Richard Henderson Signed-off-by: Eduardo Habkost --- diff --git a/tests/test-x86-cpuid-compat.c b/tests/test-x86-cpuid-compat.c index b81cfeb25e4..f7003ee39d1 100644 --- a/tests/test-x86-cpuid-compat.c +++ b/tests/test-x86-cpuid-compat.c @@ -104,5 +104,18 @@ int main(int argc, char **argv) "-cpu 486,xlevel2=0xC0000002,+xstore", "xlevel2", 0xC0000002); + /* Check compatibility of old machine-types that didn't + * auto-increase level/xlevel/xlevel2: */ + + add_cpuid_test("x86/cpuid/auto-level/pc-2.7", + "-machine pc-i440fx-2.7 -cpu 486,+arat,+avx512vbmi,+xsaveopt", + "level", 1); + add_cpuid_test("x86/cpuid/auto-xlevel/pc-2.7", + "-machine pc-i440fx-2.7 -cpu 486,+3dnow,+sse4a,+invtsc,+npt", + "xlevel", 0); + add_cpuid_test("x86/cpuid/auto-xlevel2/pc-2.7", + "-machine pc-i440fx-2.7 -cpu 486,+xstore", + "xlevel2", 0); + return g_test_run(); }