mbox series

[v2,0/8] target/arm: Fix insn exception priorities

Message ID 20210821195958.41312-1-richard.henderson@linaro.org
Headers show
Series target/arm: Fix insn exception priorities | expand

Message

Richard Henderson Aug. 21, 2021, 7:59 p.m. UTC
Raise pc alignment faults.
Fix single-step and pc-align priority over breakpoints.
Not yet fixing insn abort priority over breakpoints.

Based-on: 20210813131809.28655-1-peter.maydell@linaro.org
("linux-user: Clean up siginfo_t handling for arm, aarch64")

Changes for v2:
  * Handle the exceptions in cpu_loop.
  * Fix how the instruction is raised for aa32 el1.
  * Add pc alignment test cases.


r~


Peter Maydell (1):
  target/arm: Take an exception if PSTATE.IL is set

Richard Henderson (7):
  target/arm: Merge disas_a64_insn into aarch64_tr_translate_insn
  linux-user/aarch64: Handle EC_PCALIGNMENT
  linux-user/arm: Report SIGBUS and SIGSEGV correctly
  target/arm: Take an exception if PC is misaligned
  target/arm: Assert thumb pc is aligned
  target/arm: Suppress bp for exceptions with more priority
  tests/tcg: Add arm and aarch64 pc alignment tests

 target/arm/cpu.h                  |   1 +
 target/arm/helper.h               |   1 +
 target/arm/syndrome.h             |  10 ++
 target/arm/translate.h            |   2 +
 linux-user/aarch64/cpu_loop.c     |  44 +++--
 linux-user/arm/cpu_loop.c         |  39 ++++-
 target/arm/debug_helper.c         |  23 +++
 target/arm/gdbstub.c              |   9 +-
 target/arm/helper-a64.c           |   1 +
 target/arm/helper.c               |   8 +
 target/arm/machine.c              |   9 +
 target/arm/tlb_helper.c           |  24 +++
 target/arm/translate-a64.c        | 276 ++++++++++++++++--------------
 target/arm/translate.c            |  63 ++++++-
 tests/tcg/aarch64/pcalign-a64.c   |  37 ++++
 tests/tcg/arm/pcalign-a32.c       |  46 +++++
 tests/tcg/aarch64/Makefile.target |   4 +-
 tests/tcg/arm/Makefile.target     |   4 +
 18 files changed, 441 insertions(+), 160 deletions(-)
 create mode 100644 tests/tcg/aarch64/pcalign-a64.c
 create mode 100644 tests/tcg/arm/pcalign-a32.c

Comments

Peter Maydell Sept. 13, 2021, 1:29 p.m. UTC | #1
On Sat, 21 Aug 2021 at 21:02, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> Raise pc alignment faults.
> Fix single-step and pc-align priority over breakpoints.
> Not yet fixing insn abort priority over breakpoints.
>
> Based-on: 20210813131809.28655-1-peter.maydell@linaro.org
> ("linux-user: Clean up siginfo_t handling for arm, aarch64")
>
> Changes for v2:
>   * Handle the exceptions in cpu_loop.
>   * Fix how the instruction is raised for aa32 el1.
>   * Add pc alignment test cases.

I'm going to take patches 1 and 2 from this series into
target-arm.next.

thanks
-- PMM