mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
target/arm/tcg/tlb-insns: compile file once (system)
aarch64 specific code is guarded by cpu_isar_feature(aa64*), so it's safe to expose it. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-id: 20250512180502.2395029-47-pierrick.bouvier@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
committed by
Peter Maydell
parent
c04f6b5908
commit
31f4a08971
@@ -34,7 +34,6 @@ arm_ss.add(files(
|
||||
'mve_helper.c',
|
||||
'op_helper.c',
|
||||
'vec_helper.c',
|
||||
'tlb-insns.c',
|
||||
'arith_helper.c',
|
||||
'vfp_helper.c',
|
||||
))
|
||||
@@ -68,6 +67,7 @@ arm_common_system_ss.add(files(
|
||||
'iwmmxt_helper.c',
|
||||
'neon_helper.c',
|
||||
'tlb_helper.c',
|
||||
'tlb-insns.c',
|
||||
))
|
||||
arm_user_ss.add(files(
|
||||
'hflags.c',
|
||||
|
||||
@@ -35,7 +35,6 @@ static CPAccessResult access_ttlbis(CPUARMState *env, const ARMCPRegInfo *ri,
|
||||
return CP_ACCESS_OK;
|
||||
}
|
||||
|
||||
#ifdef TARGET_AARCH64
|
||||
/* Check for traps from EL1 due to HCR_EL2.TTLB or TTLBOS. */
|
||||
static CPAccessResult access_ttlbos(CPUARMState *env, const ARMCPRegInfo *ri,
|
||||
bool isread)
|
||||
@@ -46,7 +45,6 @@ static CPAccessResult access_ttlbos(CPUARMState *env, const ARMCPRegInfo *ri,
|
||||
}
|
||||
return CP_ACCESS_OK;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* IS variants of TLB operations must affect all cores */
|
||||
static void tlbiall_is_write(CPUARMState *env, const ARMCPRegInfo *ri,
|
||||
@@ -802,7 +800,6 @@ static const ARMCPRegInfo tlbi_el3_cp_reginfo[] = {
|
||||
.writefn = tlbi_aa64_vae3_write },
|
||||
};
|
||||
|
||||
#ifdef TARGET_AARCH64
|
||||
typedef struct {
|
||||
uint64_t base;
|
||||
uint64_t length;
|
||||
@@ -1270,8 +1267,6 @@ static const ARMCPRegInfo tlbi_rme_reginfo[] = {
|
||||
.writefn = tlbi_aa64_paallos_write },
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
void define_tlb_insn_regs(ARMCPU *cpu)
|
||||
{
|
||||
CPUARMState *env = &cpu->env;
|
||||
@@ -1299,7 +1294,6 @@ void define_tlb_insn_regs(ARMCPU *cpu)
|
||||
if (arm_feature(env, ARM_FEATURE_EL3)) {
|
||||
define_arm_cp_regs(cpu, tlbi_el3_cp_reginfo);
|
||||
}
|
||||
#ifdef TARGET_AARCH64
|
||||
if (cpu_isar_feature(aa64_tlbirange, cpu)) {
|
||||
define_arm_cp_regs(cpu, tlbirange_reginfo);
|
||||
}
|
||||
@@ -1309,5 +1303,4 @@ void define_tlb_insn_regs(ARMCPU *cpu)
|
||||
if (cpu_isar_feature(aa64_rme, cpu)) {
|
||||
define_arm_cp_regs(cpu, tlbi_rme_reginfo);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user