qemu-cr16/tcg
Richard Henderson 33ea495cd3 include/hw/core/cpu: Invert the indexing into CPUTLBDescFast
This array is within CPUNegativeOffsetState, which means the
last element of the array has an offset from env with the
smallest magnitude.  This can be encoded into fewer bits
when generating TCG fast path memory references.

When we changed the NB_MMU_MODES to be a global constant,
rather than a per-target value, we pessimized the code
generated for targets which use only a few mmu indexes.
By inverting the array index, we counteract that.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2025-09-23 16:55:32 -07:00
..
aarch64 include/hw/core/cpu: Introduce cpu_tlb_fast 2025-09-23 16:55:28 -07:00
arm include/hw/core/cpu: Introduce cpu_tlb_fast 2025-09-23 16:55:28 -07:00
i386 tcg/i386: Use vgf2p8affineqb for MO_8 vector shifts 2025-09-04 09:49:30 +02:00
loongarch64 tcg: Drop TCGContext.page_{mask,bits} 2025-05-28 08:08:47 +01:00
mips tcg: Drop TCGContext.page_{mask,bits} 2025-05-28 08:08:47 +01:00
ppc tcg: Drop TCGContext.page_{mask,bits} 2025-05-28 08:08:47 +01:00
riscv tcg/riscv: Fix typo in tgen_extract 2025-06-30 07:42:38 -06:00
s390x tcg: Drop TCGContext.page_{mask,bits} 2025-05-28 08:08:47 +01:00
sparc64 tcg: Drop TCGContext.page_{mask,bits} 2025-05-28 08:08:47 +01:00
tci tcg: Remove tcg_out_op 2025-04-28 13:40:17 -07:00
debuginfo.c accel/tcg: Move perf and debuginfo support to tcg/ 2024-01-29 21:04:10 +10:00
meson.build meson: remove lib{system, user}_ss aliases 2025-05-26 17:31:06 +02:00
optimize.c tcg/optimize: Fix folding of vector bitsel 2025-09-23 16:53:38 -07:00
perf.c tcg: Drop TCGContext.page_{mask,bits} 2025-05-28 08:08:47 +01:00
region.c tcg: Pass max_threads not max_cpus to tcg_init 2025-04-23 15:07:32 -07:00
tcg-common.c tcg: Constify tcg_op_defs 2025-01-16 20:57:16 -08:00
tcg-has.h tcg: Remove add2/sub2 opcodes 2025-04-28 13:40:17 -07:00
tcg-internal.h tcg: Add TCGType to tcg_op_insert_{after,before} 2025-04-28 13:40:15 -07:00
tcg-op-gvec.c tcg: Split out tcg_gen_gvec_dup_imm_var 2025-06-23 11:44:28 -07:00
tcg-op-ldst.c tcg: Add tcg_gen_atomic_{xchg,fetch_and,fetch_or}_i128 2025-08-30 16:37:24 +01:00
tcg-op-vec.c tcg: Only include 'tcg-has.h' when necessary 2025-01-16 20:57:16 -08:00
tcg-op.c tcg: Merge INDEX_op_st*_{i32,i64} 2025-04-28 13:40:17 -07:00
tcg.c include/hw/core/cpu: Invert the indexing into CPUTLBDescFast 2025-09-23 16:55:32 -07:00
tci.c tcg: Merge INDEX_op_{ld,st}_{i32,i64,i128} 2025-04-28 13:40:17 -07:00