qemu/target/mips/tcg
Paolo Bonzini dfae46c3ba target/mips: tcg: detect out-of-bounds accesses to cpu_gpr and cpu_gpr_hi
In some cases (for example gen_compute_branch_nm in
nanomips_translate.c.inc) registers can be unused
on some paths and a negative value is passed in that case:

        gen_compute_branch_nm(ctx, OPC_BPOSGE32, 4, -1, -2,
                              imm << 1);

To avoid an out of bounds access in those cases, introduce
assertions.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-04-20 11:17:35 +02:00
..
sysemu gdbstub: move syscall handling to new file 2023-03-07 20:44:08 +00:00
dsp_helper.c cleanup: Tweak and re-run return_directly.cocci 2022-12-14 16:19:35 +01:00
exception.c target/mips: Replace tb_pc() with tb->pc 2023-03-01 07:33:17 -10:00
fpu_helper.c target/mips: Move TCG source files under tcg/ sub directory 2021-05-02 16:49:35 +02:00
ldst_helper.c target/mips: Fix SWM32 handling for microMIPS 2023-03-08 00:37:41 +01:00
lmmi_helper.c Replace config-time define HOST_WORDS_BIGENDIAN 2022-04-06 10:50:37 +02:00
meson.build target/mips: introduce decodetree structure for Cavium Octeon extension 2022-07-12 22:30:09 +02:00
micromips_translate.c.inc target/mips: Avoid tcg_const_* throughout 2023-03-13 06:44:37 -07:00
mips16e_translate.c.inc target/mips: Drop tcg_temp_free from mips16e_translate.c.inc 2023-03-05 13:44:08 -08:00
msa_helper.c target/mips: Replace [g_]assert(0) -> g_assert_not_reached() 2023-03-07 18:08:12 +01:00
msa_helper.h.inc target/mips: Move TCG source files under tcg/ sub directory 2021-05-02 16:49:35 +02:00
msa_translate.c target/mips: Drop tcg_temp_free from msa_translate.c 2023-03-13 06:42:05 -07:00
msa.decode target/mips: Remove one MSA unnecessary decodetree overlap group 2021-11-02 14:32:32 +01:00
mxu_translate.c target/mips: Avoid tcg_const_* throughout 2023-03-13 06:44:37 -07:00
nanomips_translate.c.inc target/mips: Avoid tcg_const_* throughout 2023-03-13 06:44:37 -07:00
octeon_translate.c target/mips: Drop tcg_temp_free from octeon_translate.c 2023-03-13 06:42:05 -07:00
octeon.decode target/mips: Cast offset field of Octeon BBIT to int16_t 2022-11-08 01:04:25 +01:00
op_helper.c target/mips: Extract NEC Vr54xx helpers to vr54xx_helper.c 2021-08-25 13:02:14 +02:00
rel6_translate.c target/mips: Rename 'rtype' as 'r' 2021-08-25 13:02:14 +02:00
rel6.decode target/mips: Rename 'rtype' as 'r' 2021-08-25 13:02:14 +02:00
sysemu_helper.h.inc target/mips: Use an exception for semihosting 2022-06-28 10:13:42 +05:30
tcg-internal.h target/mips: Convert to tcg_ops restore_state_to_opc 2022-10-26 11:11:28 +10:00
trace-events target/mips: Move TCG trace events to tcg/ sub directory 2021-06-24 16:48:07 +02:00
trace.h target/mips: Move TCG trace events to tcg/ sub directory 2021-06-24 16:48:07 +02:00
translate_addr_const.c target/mips: Drop tcg_temp_free from translate_addr_const.c 2023-03-13 06:42:05 -07:00
translate.c target/mips: tcg: detect out-of-bounds accesses to cpu_gpr and cpu_gpr_hi 2023-04-20 11:17:35 +02:00
translate.h target/mips: Advance pc after semihosting exception 2022-08-02 12:34:00 -07:00
tx79_translate.c target/mips: Avoid tcg_const_* throughout 2023-03-13 06:44:37 -07:00
tx79.decode target/mips: Rename 'rtype' as 'r' 2021-08-25 13:02:14 +02:00
txx9_translate.c target/mips: Move TCG source files under tcg/ sub directory 2021-05-02 16:49:35 +02:00
vr54xx_helper.c target/mips: Extract NEC Vr54xx helpers to vr54xx_helper.c 2021-08-25 13:02:14 +02:00
vr54xx_helper.h.inc target/mips: Extract NEC Vr54xx helper definitions 2021-08-25 13:02:14 +02:00
vr54xx_translate.c target/mips: Drop tcg_temp_free from vr54xx_translate.c 2023-03-13 06:42:05 -07:00
vr54xx.decode target/mips: Convert Vr54xx MSA* opcodes to decodetree 2021-08-25 13:02:14 +02:00