[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 09/17] target-i386: move out CPU features initializa
From: |
Eduardo Habkost |
Subject: |
[Qemu-devel] [PATCH 09/17] target-i386: move out CPU features initialization to separate func |
Date: |
Mon, 12 Nov 2012 19:38:54 -0200 |
From: Igor Mammedov <address@hidden>
Later it will be used in cpu_x86_init() to init CPU from found cpudef.
This is will make it easier to reorder and clean up the cpu_x86_init()
code later.
Signed-off-by: Igor Mammedov <address@hidden>
[ehabkost: added error reporting to function]
Signed-off-by: Eduardo Habkost <address@hidden>
---
v2:
- rebased on top of "i386: cpu: remove duplicate feature names"
http://www.mail-archive.com/address@hidden/msg129458.html
v3 (ehabkost):
- Rebased on top of CPU model classes work in progress
- Added error reporting to new function
- Changed commit message
---
target-i386/cpu.c | 20 ++++++++++++++------
1 file changed, 14 insertions(+), 6 deletions(-)
diff --git a/target-i386/cpu.c b/target-i386/cpu.c
index 7f4e8f0..cef120e 100644
--- a/target-i386/cpu.c
+++ b/target-i386/cpu.c
@@ -1424,16 +1424,11 @@ static void filter_features_for_kvm(X86CPU *cpu)
}
#endif
-static int cpu_x86_register(X86CPU *cpu, const char *cpu_model, Error **errp)
+static int cpudef_2_x86_cpu(X86CPU *cpu, X86CPUDefinition *def, Error **errp)
{
CPUX86State *env = &cpu->env;
- X86CPUDefinition def1, *def = &def1;
Error *error = NULL;
- memset(def, 0, sizeof(*def));
-
- if (cpu_x86_find_by_name(def, cpu_model) < 0)
- return -1;
if (def->vendor1) {
env->cpuid_vendor1 = def->vendor1;
env->cpuid_vendor2 = def->vendor2;
@@ -1494,6 +1489,19 @@ static int cpu_x86_register(X86CPU *cpu, const char
*cpu_model, Error **errp)
return 0;
}
+static int cpu_x86_register(X86CPU *cpu, const char *cpu_model, Error **errp)
+{
+ X86CPUDefinition def1, *def = &def1;
+
+ memset(def, 0, sizeof(*def));
+
+ if (cpu_x86_find_by_name(def, cpu_model) < 0)
+ return -1;
+ if (cpudef_2_x86_cpu(cpu, def, errp) < 0)
+ return -1;
+ return 0;
+}
+
X86CPU *cpu_x86_init(const char *cpu_model)
{
X86CPU *cpu;
--
1.7.11.7
- [Qemu-devel] [PATCH 00/17] target-i386: CPU init cleanup for CPU classes/properties, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 04/17] target-i386: x86_cpudef_setup(): cosmetic change on comment, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 01/17] target-i386/cpu.c: coding style fix, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 03/17] target-i386: cpu: rename x86_def_t to X86CPUDefinition, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 02/17] target-i386: move cpu_x86_init() to cpu.c, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 05/17] target-i386: cpu_x86_init(): move error handling to end of function, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 06/17] target-i386: cpu_x86_init(): print error message in case of error, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 09/17] target-i386: move out CPU features initialization to separate func,
Eduardo Habkost <=
- [Qemu-devel] [PATCH 10/17] target-i386: kill cpu_x86_register(), Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 12/17] target-i386: cpu_x86_find_by_name(): split CPU model and feature string first, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 14/17] target-i386: cpu_x86_init(): rename cpu_model to cpu_string, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 08/17] target-i386: cpu_x86_register(): reorder CPU property setting, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 15/17] target-i386: cpu_x86_init(): eliminate extra 'def1' variable, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 11/17] target-i386: return Error from cpu_x86_find_by_name(), Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 07/17] target-i386: cpu_x86_register(): report errors using Error parameter, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 13/17] target-i386: cpu: create cpu_x86_find_cpudef() function, Eduardo Habkost, 2012/11/12
- [Qemu-devel] [PATCH 17/17] target-i386: cpu_x86_init(): reorder split of CPU string and creation of CPU object, Eduardo Habkost, 2012/11/12