qemu-e2k/target/nios2
Richard Henderson 410c6aaa3b target/nios2: Implement Misaligned destination exception
Indirect branches, plus eret and bret optionally raise
an exception when branching to a misaligned address.
The exception is required when an mmu is enabled, but
enable it always because the fallback behaviour is not
documented (though presumably it discards low bits).

For the purposes of the linux-user cpu loop, if EXCP_UNALIGN
(misaligned data) were to arrive, it would be treated the
same as EXCP_UNALIGND (misaligned destination).  See the
!defined(CONFIG_NIOS2_ALIGNMENT_TRAP) block in kernel/traps.c.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20220421151735.31996-53-richard.henderson@linaro.org>
2022-04-26 08:17:05 -07:00
..
Kconfig meson: Introduce target-specific Kconfig 2021-07-09 18:21:34 +02:00
cpu-param.h tcg: Split out target/arch/cpu-param.h 2019-06-10 07:03:34 -07:00
cpu.c target/nios2: Support division error exception 2022-04-26 08:16:41 -07:00
cpu.h target/nios2: Drop CR_STATUS_EH from tb->flags 2022-04-26 08:17:05 -07:00
helper.c target/nios2: Enable unaligned traps for system mode 2022-04-26 08:17:05 -07:00
helper.h target/nios2: Support division error exception 2022-04-26 08:16:41 -07:00
meson.build target/nios2: Build helper.c for system only 2022-04-26 08:16:40 -07:00
mmu.c target/nios2: Use hw/registerfields.h for CR_TLBMISC fields 2022-04-26 08:16:41 -07:00
mmu.h target: Include missing 'cpu.h' 2022-03-06 13:15:42 +01:00
monitor.c hmp: Pass monitor to mon_get_cpu_env() 2020-11-13 12:45:51 +00:00
nios2-semi.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
op_helper.c target/nios2: Implement Misaligned destination exception 2022-04-26 08:17:05 -07:00
trace-events target/nios2: Replace MMU_LOG with tracepoints 2022-03-03 09:36:38 -10:00
translate.c target/nios2: Implement Misaligned destination exception 2022-04-26 08:17:05 -07:00