On 3/6/23 09:52, Anton Johansson wrote:
This patchset fixes NB_MMU_MODES to 16 for all targets, meaning the
macro is no longer target-specific. 16 mmu modes is large enough to
cover all currently supported targets (12 arm, 10 ppc, ...), and is the
maxiumum supported by the softmmu tlb api.
As mentioned by Richard in response to our RFC, softmmu tlbs are
dynamically resized and so the overhead of an unused mmu index is fairly
low.
The grand goal is to allow for heterogeneous QEMU binaries
consisting of multiple frontends.
RFC: https://lists.nongnu.org/archive/html/qemu-devel/2022-12/msg04518.html
Anton Johansson (23):
include/exec: Set default `NB_MMU_MODES` to 16
target/alpha: Remove `NB_MMU_MODES` define
target/arm: Remove `NB_MMU_MODES` define
target/avr: Remove `NB_MMU_MODES` define
target/cris: Remove `NB_MMU_MODES` define
target/hexagon: Remove `NB_MMU_MODES` define
target/hppa: Remove `NB_MMU_MODES` define
target/i386: Remove `NB_MMU_MODES` define
target/loongarch: Remove `NB_MMU_MODES` define
target/m68k: Remove `NB_MMU_MODES` define
target/microblaze: Remove `NB_MMU_MODES` define
target/mips: Remove `NB_MMU_MODES` define
target/nios2: Remove `NB_MMU_MODES` define
target/openrisc: Remove `NB_MMU_MODES` define
target/ppc: Remove `NB_MMU_MODES` define
target/riscv: Remove `NB_MMU_MODES` define
target/rx: Remove `NB_MMU_MODES` define
target/s390x: Remove `NB_MMU_MODES` define
target/sh4: Remove `NB_MMU_MODES` define
target/sparc: Remove `NB_MMU_MODES` define
target/tricore: Remove `NB_MMU_MODES` define
target/xtensa: Remove `NB_MMU_MODES` define
include/exec: Remove guards around `NB_MMU_MODES`
Thanks, queued to tcg-next.
r~