On 3/28/21 6:12 PM, Richard Henderson wrote: > On 3/26/21 1:36 PM, Claudio Fontana wrote: >> this function is used for kvm too, add it to the >> cpu-common module. >> >> Signed-off-by: Claudio Fontana <cfont...@suse.de> >> --- >> target/arm/cpu-common.c | 15 +++++++++++++++ >> target/arm/tcg/helper.c | 11 ----------- >> 2 files changed, 15 insertions(+), 11 deletions(-) >> >> diff --git a/target/arm/cpu-common.c b/target/arm/cpu-common.c >> index a34f7f19d8..892e075298 100644 >> --- a/target/arm/cpu-common.c >> +++ b/target/arm/cpu-common.c >> @@ -342,3 +342,18 @@ uint32_t sve_zcr_len_for_el(CPUARMState *env, int el) >> } >> >> /* #endif TARGET_AARCH64 , see matching comment above */ >> + >> +uint64_t arm_sctlr(CPUARMState *env, int el) >> +{ >> + /* Only EL0 needs to be adjusted for EL1&0 or EL2&0. */ >> + if (el == 0) { >> +#ifdef TARGET_AARCH64 >> + ARMMMUIdx mmu_idx = arm_mmu_idx_el(env, 0); >> + el = (mmu_idx == ARMMMUIdx_E20_0 || mmu_idx == ARMMMUIdx_SE20_0) >> + ? 2 : 1; >> +#else >> + el = 1; >> +#endif /* TARGET_AARCH64 */ >> + } > > My comment was merely an observation; I'm not sure it's a good idea. And you
I think it is valuable, it made things clearer to me. > should never make this functional change while moving code. Will add a separate patch. > > > r~ > Thanks, C