From: Frédéric Pétrot <[email protected]> Peter reported undefined behaviors in x-rv128 pmp configuration registers accesses detected by the clang sanitizer. This series introduces a 128-bit version of these accesses, and corrects other out-of-bound shifts within the handling of interrupts that were triggered afterwards.
Changes in v2: - I messed up and directly assigned a 0 to an Int128, so v2 corrects that Frédéric Pétrot (2): target/riscv: fix pmp sanitize error for x-rv128 target/riscv: fix riscv_cpu_do_interrupt sanitize error for x-rv128 target/riscv/cpu.h | 2 ++ target/riscv/tcg/cpu_helper.c | 14 ++++++-- target/riscv/tcg/csr.c | 66 ++++++++++++++++++++++++++--------- target/riscv/tcg/csr.h | 3 ++ target/riscv/tcg/pmp.c | 38 ++++++++++++++++++++ 5 files changed, 105 insertions(+), 18 deletions(-) -- 2.43.0
