Le 02/06/2022 à 03:33, Richard Henderson a écrit :
> Changes for v6:
> * Use exact masks for registering trapcc and ftrapcc.
> These insn overlap illegal scc and fscc operands,
> so we need to be exact about the registration.
>
>
> r~
>
>
> Richard Henderson (17):
> target/m68k: Raise the TRAPn exception with the correct pc
> target/m68k: Switch over exception type in m68k_interrupt_all
> target/m68k: Fix coding style in m68k_interrupt_all
> linux-user/m68k: Handle EXCP_TRAP1 through EXCP_TRAP15
> target/m68k: Remove retaddr in m68k_interrupt_all
> target/m68k: Fix address argument for EXCP_CHK
> target/m68k: Fix pc, c flag, and address argument for EXCP_DIV0
> target/m68k: Fix address argument for EXCP_TRACE
> target/m68k: Fix stack frame for EXCP_ILLEGAL
> target/m68k: Implement TRAPcc
> target/m68k: Implement TPF in terms of TRAPcc
> target/m68k: Implement TRAPV
> target/m68k: Implement FTRAPcc
> tests/tcg/m68k: Add trap.c
> linux-user/strace: Use is_error in print_syscall_err
> linux-user/strace: Adjust get_thread_area for m68k
> target/m68k: Mark helper_raise_exception as noreturn
>
> target/m68k/cpu.h | 8 ++
> target/m68k/helper.h | 14 +--
> linux-user/m68k/cpu_loop.c | 13 ++-
> linux-user/strace.c | 2 +-
> target/m68k/cpu.c | 1 +
> target/m68k/op_helper.c | 173 +++++++++++++++--------------
> target/m68k/translate.c | 191 ++++++++++++++++++++++++---------
> tests/tcg/m68k/trap.c | 129 ++++++++++++++++++++++
> linux-user/strace.list | 5 +
> tests/tcg/m68k/Makefile.target | 3 +
> 10 files changed, 396 insertions(+), 143 deletions(-)
> create mode 100644 tests/tcg/m68k/trap.c
>
Applied to my m68k-for-7.1 branch
Thanks,
Laurent