diff options
| author | Paolo Bonzini <pbonzini@redhat.com> | 2025-07-05 14:05:42 +0200 |
|---|---|---|
| committer | Paolo Bonzini <pbonzini@redhat.com> | 2025-07-11 09:28:27 +0200 |
| commit | cb2273edf5df57cb270bc19d7e92d8be5870c17a (patch) | |
| tree | cc1c1d316687c3b23436e2b5e9c15a1973298e2a /target/i386/cpu.c | |
| parent | ed7f6da282e263403badb507b2532f51f8ed31cf (diff) | |
| download | focaccia-qemu-cb2273edf5df57cb270bc19d7e92d8be5870c17a.tar.gz focaccia-qemu-cb2273edf5df57cb270bc19d7e92d8be5870c17a.zip | |
target/i386: move max_features to class
max_features is always set to true for instances created by -cpu max or -cpu host; it's always false for other classes. Therefore it can be turned into a field in the X86CPUClass. Reviewed-by: Xiaoyao Li <xiaoyao.li@intel.com> Reviewed-by: Zhao Liu <zhao1.liu@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'target/i386/cpu.c')
| -rw-r--r-- | target/i386/cpu.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 0d35e95430..4d4e523424 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -6187,6 +6187,7 @@ static void max_x86_cpu_class_init(ObjectClass *oc, const void *data) xcc->ordering = 9; + xcc->max_features = true; xcc->model_description = "Enables all features supported by the accelerator in the current host"; @@ -6201,7 +6202,6 @@ static void max_x86_cpu_initfn(Object *obj) /* We can't fill the features array here because we don't know yet if * "migratable" is true or false. */ - cpu->max_features = true; object_property_set_bool(OBJECT(cpu), "pmu", true, &error_abort); /* @@ -8282,6 +8282,7 @@ static void x86_cpu_enable_xsave_components(X86CPU *cpu) */ void x86_cpu_expand_features(X86CPU *cpu, Error **errp) { + X86CPUClass *xcc = X86_CPU_GET_CLASS(cpu); CPUX86State *env = &cpu->env; FeatureWord w; int i; @@ -8301,12 +8302,12 @@ void x86_cpu_expand_features(X86CPU *cpu, Error **errp) } } - /*TODO: Now cpu->max_features doesn't overwrite features + /* TODO: Now xcc->max_features doesn't overwrite features * set using QOM properties, and we can convert * plus_features & minus_features to global properties * inside x86_cpu_parse_featurestr() too. */ - if (cpu->max_features) { + if (xcc->max_features) { for (w = 0; w < FEATURE_WORDS; w++) { /* Override only features that weren't set explicitly * by the user. |