summaryrefslogtreecommitdiffstats
path: root/target/nios2/cpu.h
diff options
context:
space:
mode:
authorRichard Henderson2021-09-30 19:41:43 +0200
committerRichard Henderson2021-11-02 12:00:52 +0100
commitfac94cb36daacd202f718865ea82f5ff5a2b5a93 (patch)
tree26a907f1efdcb5d228d5ca74e74c6499235af720 /target/nios2/cpu.h
parenttarget/mips: Make mips_cpu_tlb_fill sysemu only (diff)
downloadqemu-fac94cb36daacd202f718865ea82f5ff5a2b5a93.tar.gz
qemu-fac94cb36daacd202f718865ea82f5ff5a2b5a93.tar.xz
qemu-fac94cb36daacd202f718865ea82f5ff5a2b5a93.zip
target/nios2: Implement nios2_cpu_record_sigsegv
Because the linux-user kuser page handling is currently implemented by detecting magic addresses in the unnamed 0xaa trap, we cannot simply remove nios2_cpu_tlb_fill and rely on the fallback code. Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'target/nios2/cpu.h')
-rw-r--r--target/nios2/cpu.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/target/nios2/cpu.h b/target/nios2/cpu.h
index a80587338a..1a69ed7a49 100644
--- a/target/nios2/cpu.h
+++ b/target/nios2/cpu.h
@@ -218,9 +218,15 @@ static inline int cpu_mmu_index(CPUNios2State *env, bool ifetch)
MMU_SUPERVISOR_IDX;
}
+#ifdef CONFIG_USER_ONLY
+void nios2_cpu_record_sigsegv(CPUState *cpu, vaddr addr,
+ MMUAccessType access_type,
+ bool maperr, uintptr_t ra);
+#else
bool nios2_cpu_tlb_fill(CPUState *cs, vaddr address, int size,
MMUAccessType access_type, int mmu_idx,
bool probe, uintptr_t retaddr);
+#endif
static inline int cpu_interrupts_enabled(CPUNios2State *env)
{