Le 4/27/21 à 9:26 PM, Philippe Mathieu-Daudé a écrit :
This series fixes link failure when building either the leon3
machine or the sun4m ones.

The problem is we have hardware specific code in the architectural
translation code. Move this code to hw/sparc/.

The link failures can be reproduced doing:

   $ echo CONFIG_LEON3=y > default-configs/devices/sparc-softmmu.mak
   $ configure --without-default-devices
   $ ninja qemu-system-sparc

Indeed:

libqemu-sparc-softmmu.fa.p/target_sparc_win_helper.c.o: \
In function `cpu_put_psr':
xxx/qemu/build/../target/sparc/win_helper.c:91: \
  undefined reference to `cpu_check_irqs'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

   $ ./qemu-system-sparc -M leon3 -S

or:

   $ echo CONFIG_SUN4M=y > default-configs/devices/sparc-softmmu.mak

Philippe Mathieu-Daudé (2):
   hw/sparc: Allow building the leon3 machine stand-alone
   hw/sparc: Allow building without the leon3 machine

  target/sparc/cpu.h          |  6 ----
  hw/sparc/irq.c              | 61 +++++++++++++++++++++++++++++++++++++
  hw/sparc/leon3.c            | 37 +++++++++++++++++++++-
  hw/sparc/sun4m.c            | 32 -------------------
  target/sparc/int32_helper.c | 37 ----------------------
  hw/sparc/meson.build        |  1 +
  hw/sparc/trace-events       |  2 ++
  target/sparc/trace-events   |  4 ---
  8 files changed, 100 insertions(+), 80 deletions(-)
  create mode 100644 hw/sparc/irq.c


Reply via email to