[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PATCH v4 1/5] linux-user: Implement aarch64
From: |
Peter Maydell |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH v4 1/5] linux-user: Implement aarch64 PR_SVE_SET/GET_VL |
Date: |
Tue, 6 Mar 2018 12:58:55 +0000 |
On 6 March 2018 at 12:28, Alex Bennée <address@hidden> wrote:
>
> Richard Henderson <address@hidden> writes:
>
>> As an implementation choice, widening VL has zeroed the
>> previously inaccessible portion of the sve registers.
>>
>> Reviewed-by: Peter Maydell <address@hidden>
>> Signed-off-by: Richard Henderson <address@hidden>
>> + int old_vq = (env->vfp.zcr_el[1] & 0xf) + 1;
>> + int vq = MAX(arg2 / 16, 1);
>> +
>> + if (vq < old_vq) {
>> + aarch64_sve_narrow_vq(env, vq);
>> + }
>> + env->vfp.zcr_el[1] = vq - 1;
>
> It seems odd not to have setting this inside cpu64.c. Won't a similar
> manipulation need to be made for system mode? I'd keep all the logic
> together in aarch64_sve_narrow_vq (or maybe call it aarch64_sve_set_vq
> and pass it the current exception level).
I think I asked Richard to put it into linux-user because it was
in target/arm in an earlier version of this series. The manipulation
that's happening here is kind of linux-specific (if it were for
system mode we'd need to think about ZCR_EL2 and ZCR_EL3 as well),
and the analogy is with cpu_set_tls/cpu_get_tls which are in
linux-user/arm/target_cpu.h.
NB: I've already put this series in target-arm.next -- do you want
me to drop them ? (That would mean they won't go in 2.12, given
RTH is away.)
thanks
-- PMM
- [Qemu-arm] [PATCH v4 0/5] target/arm linux-user changes for sve, Richard Henderson, 2018/03/03
- [Qemu-arm] [PATCH v4 2/5] aarch64-linux-user: Split out helpers for guest signal handling, Richard Henderson, 2018/03/03
- [Qemu-arm] [PATCH v4 4/5] aarch64-linux-user: Add support for EXTRA signal frame records, Richard Henderson, 2018/03/03
- [Qemu-arm] [PATCH v4 5/5] aarch64-linux-user: Add support for SVE signal frame records, Richard Henderson, 2018/03/03
- [Qemu-arm] [PATCH v4 3/5] aarch64-linux-user: Remove struct target_aux_context, Richard Henderson, 2018/03/03