On 2025-08-22 07:56, Philippe Mathieu-Daudé wrote:
On 22/8/25 16:31, Pierrick Bouvier wrote:
On 2025-08-04 11:39, Pierrick Bouvier wrote:
This series compiles once semihosting files in system mode.
The most complicated file was semihosting/arm-compat-semi.c, which was
carefully
cleaned in easy to understand steps.

v2
--

- use vaddr for syscalls.c/.h
- static qualifier for console_{in,out}_gf
- use vaddr for arm-compat-semi.c
- semihosting/arm-compat-semi: fix cast for common_semi_set_ret

v3
--

- keep common_semi_sys_exit_extended (Peter)

Pierrick Bouvier (12):
    semihosting/syscalls: compile once in system and per target for user
      mode
    semihosting/syscalls: replace uint64_t with vaddr where appropriate
    semihosting/guestfd: compile once for system/user
    semihosting/arm-compat-semi: change common_semi_sys_exit_extended
    target/riscv/common-semi-target: remove sizeof(target_ulong)
    target/{arm,riscv}/common-semi-target: eradicate target_ulong
    include/semihosting/common-semi: extract common_semi API
    semihosting/arm-compat-semi: eradicate sizeof(target_ulong)
    semihosting/arm-compat-semi: replace target_ulong with uint64_t
    semihosting/arm-compat-semi: eradicate target_long
    semihosting/arm-compat-semi: remove dependency on cpu.h
    semihosting/arm-compat-semi: compile once in system and per target for
      user mode

   include/semihosting/common-semi.h             |   6 +
   include/semihosting/guestfd.h                 |   7 --
   include/semihosting/semihost.h                |   2 +
   include/semihosting/syscalls.h                |  30 ++---
   semihosting/arm-compat-semi-stub.c            |  19 +++
   semihosting/arm-compat-semi.c                 |  65 ++++++++---
   semihosting/guestfd.c                         |  26 +----
   semihosting/syscalls.c                        | 109 +++++++++---------
   ...mon-semi-target.h => common-semi-target.c} |  22 ++--
   ...mon-semi-target.h => common-semi-target.c} |  27 +++--
   semihosting/meson.build                       |  18 +--
   target/arm/meson.build                        |   4 +
   target/riscv/meson.build                      |   4 +
   13 files changed, 190 insertions(+), 149 deletions(-)
   create mode 100644 semihosting/arm-compat-semi-stub.c
   rename target/arm/{common-semi-target.h => common-semi-target.c} (59%)
   rename target/riscv/{common-semi-target.h => common-semi-target.c}
(53%)


Ping on this series.
I'll be out next week, but it should be ready to be pulled once the
trunk reopens.

Modulo the comment on patch #9, the series is fully reviewed.


I'll send a v4 with this, thanks.

Reply via email to