cpu32.c only contains CPU types used in 32-bit system emulation: rename it as cpu32-system.c; always compile the file but only register the QOM types for the 32-bit binary.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]> --- target/arm/tcg/{cpu32.c => cpu32-system.c} | 19 ++++++------------- target/arm/tcg/meson.build | 5 +---- 2 files changed, 7 insertions(+), 17 deletions(-) rename target/arm/tcg/{cpu32.c => cpu32-system.c} (98%) diff --git a/target/arm/tcg/cpu32.c b/target/arm/tcg/cpu32-system.c similarity index 98% rename from target/arm/tcg/cpu32.c rename to target/arm/tcg/cpu32-system.c index 8220d785f5b..51ed1f8f269 100644 --- a/target/arm/tcg/cpu32.c +++ b/target/arm/tcg/cpu32-system.c @@ -1,5 +1,5 @@ /* - * QEMU ARM TCG-only CPUs. + * QEMU ARM TCG-only CPUs (not needed for the AArch64 linux-user build) * * Copyright (c) 2012 SUSE LINUX Products GmbH * @@ -10,18 +10,13 @@ #include "qemu/osdep.h" #include "qemu/units.h" +#include "qemu/target-info.h" #include "cpu.h" #include "accel/tcg/cpu-ops.h" #include "internals.h" -#if !defined(CONFIG_USER_ONLY) #include "hw/core/boards.h" -#endif #include "cpregs.h" - -/* CPU models. These are not needed for the AArch64 linux-user build. */ -#if !defined(CONFIG_USER_ONLY) || !defined(TARGET_AARCH64) - static void arm926_initfn(Object *obj) { ARMCPU *cpu = ARM_CPU(obj); @@ -738,13 +733,11 @@ static const ARMCPUInfo arm_tcg_cpus[] = { static void arm_tcg_cpu_register_types(void) { - size_t i; - - for (i = 0; i < ARRAY_SIZE(arm_tcg_cpus); ++i) { - arm_cpu_register(&arm_tcg_cpus[i]); + if (target_arm()) { + for (size_t i = 0; i < ARRAY_SIZE(arm_tcg_cpus); ++i) { + arm_cpu_register(&arm_tcg_cpus[i]); + } } } type_init(arm_tcg_cpu_register_types) - -#endif /* !CONFIG_USER_ONLY || !TARGET_AARCH64 */ diff --git a/target/arm/tcg/meson.build b/target/arm/tcg/meson.build index f821331fbee..a6aac6deef0 100644 --- a/target/arm/tcg/meson.build +++ b/target/arm/tcg/meson.build @@ -29,10 +29,6 @@ translate32_d = [ arm_stubs_ss.add(files('stubs32.c')) -arm_ss.add(files( - 'cpu32.c', -)) - arm_ss.add(when: 'TARGET_AARCH64', if_true: gen_a64 + files( 'gengvec64.c', 'translate-a64.c', @@ -83,6 +79,7 @@ arm_common_user_system_ss.add(when: 'TARGET_AARCH64', if_true: files( arm_common_system_ss.add(files( 'cpregs-at.c', + 'cpu32-system.c', 'gicv5-cpuif.c', 'psci.c', 'tlb_helper.c', -- 2.53.0
