semihosting: Split out semihost_sys_read
commitaf0484b5025f8b7c951428a00b5bb3f172a2da8d
authorRichard Henderson <richard.henderson@linaro.org>
Thu, 28 Apr 2022 18:40:41 +0000 (28 11:40 -0700)
committerRichard Henderson <richard.henderson@linaro.org>
Mon, 27 Jun 2022 23:05:52 +0000 (28 04:35 +0530)
treee60333711f6d6467f0a91fb295e74fda62d6a6f7
parent5eadbbfca6232710036ccb9f5cf1481be537c0e7
semihosting: Split out semihost_sys_read

Split out the non-ARM specific portions of SYS_READ to a
reusable function.  This handles all GuestFD.  Isolate the
curious ARM-specific return value processing to a new
callback, common_semi_rw_cb.

Note that gdb_do_syscall %x reads target_ulong, not int.

Reviewed-by: Luc Michel <lmichel@kalray.eu>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
include/semihosting/syscalls.h
semihosting/arm-compat-semi.c
semihosting/syscalls.c