This commit is contained in:
lazymio 2022-01-05 20:02:41 +01:00
parent b8817518ae
commit c3a49766d8
No known key found for this signature in database
GPG Key ID: DFF27E34A47CB873
1 changed files with 9 additions and 13 deletions

View File

@ -320,8 +320,6 @@ static const ARMCPUInfo aarch64_cpus[] = {
ARMCPU *cpu_aarch64_init(struct uc_struct *uc)
{
int i;
char *cpu_model = "cortex-a72";
ARMCPU *cpu;
CPUState *cs;
CPUClass *cc;
@ -331,6 +329,13 @@ ARMCPU *cpu_aarch64_init(struct uc_struct *uc)
return NULL;
}
if (uc->cpu_model == INT_MAX) {
uc->cpu_model = UC_CPU_AARCH64_A72;
} else if (uc->cpu_model >= sizeof(aarch64_cpus)) {
free(cpu);
return NULL;
}
cs = (CPUState *)cpu;
cc = (CPUClass *)&cpu->cc;
cs->cc = cc;
@ -349,17 +354,8 @@ ARMCPU *cpu_aarch64_init(struct uc_struct *uc)
/* init ARMCPU */
arm_cpu_initfn(uc, cs);
for (i = 0; i < ARRAY_SIZE(aarch64_cpus); i++) {
if (strcmp(cpu_model, aarch64_cpus[i].name) == 0) {
if (aarch64_cpus[i].initfn) {
aarch64_cpus[i].initfn(uc, cs);
}
break;
}
}
if (i == ARRAY_SIZE(aarch64_cpus)) {
free(cpu);
return NULL;
if (aarch64_cpus[uc->cpu_model].initfn) {
aarch64_cpus[uc->cpu_model].initfn(uc, cs);
}
/* postinit ARMCPU */