[PATCH v3 0/7] cpus: Convert cpu_list definition to CPUClass:list_cpus callback

Philippe Mathieu-Daudé posted 7 patches 5 days, 10 hours ago
include/hw/core/cpu.h      |  2 ++
target/i386/cpu.h          |  3 ---
target/ppc/cpu.h           |  4 ----
target/s390x/cpu.h         |  7 -------
target/s390x/cpu_models.h  |  3 +++
target/sparc/cpu.h         |  3 ---
cpu-target.c               | 25 ++++++++++++-------------
hw/s390x/s390-virtio-ccw.c |  2 +-
target/i386/cpu.c          |  3 ++-
target/ppc/cpu_init.c      |  3 ++-
target/s390x/cpu.c         |  1 +
target/sparc/cpu.c         |  3 ++-
12 files changed, 25 insertions(+), 34 deletions(-)
[PATCH v3 0/7] cpus: Convert cpu_list definition to CPUClass:list_cpus callback
Posted by Philippe Mathieu-Daudé 5 days, 10 hours ago
Since v2
- Added R-b tags
- Added missing s390x hunk

Since v1 (Thomas review comments)
- Move s390_set_qemu_cpu_model/s390_cpu_list to "cpu_models.h"
- Correct 'target/s390x: Register CPUClass:list_cpus' subject

'cpu_list' might be defined per target, and force code to be
built per-target. We can avoid that by introducing a CPUClass
callback.

This series combined with another which converts CPU_RESOLVING_TYPE
to a runtime helper, allows to move most of cpu-target to common.

Based-on: <20250324165356.39540-1-philmd@linaro.org>

Philippe Mathieu-Daudé (7):
  cpus: Introduce CPUClass::list_cpus() callback
  target/i386: Register CPUClass:list_cpus
  target/ppc: Register CPUClass:list_cpus
  target/sparc: Register CPUClass:list_cpus
  target/s390x: Declare s390_set_qemu_cpu_model/cpu_list in cpu_models.h
  target/s390x: Register CPUClass:list_cpus
  cpus: Remove #ifdef check on cpu_list definition

 include/hw/core/cpu.h      |  2 ++
 target/i386/cpu.h          |  3 ---
 target/ppc/cpu.h           |  4 ----
 target/s390x/cpu.h         |  7 -------
 target/s390x/cpu_models.h  |  3 +++
 target/sparc/cpu.h         |  3 ---
 cpu-target.c               | 25 ++++++++++++-------------
 hw/s390x/s390-virtio-ccw.c |  2 +-
 target/i386/cpu.c          |  3 ++-
 target/ppc/cpu_init.c      |  3 ++-
 target/s390x/cpu.c         |  1 +
 target/sparc/cpu.c         |  3 ++-
 12 files changed, 25 insertions(+), 34 deletions(-)

-- 
2.47.1