[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PATCH v2 07/14] target/arm/cpu64: max cpu:
From: |
Andrew Jones |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH v2 07/14] target/arm/cpu64: max cpu: Introduce sve<vl-bits> properties |
Date: |
Thu, 27 Jun 2019 12:46:38 +0200 |
User-agent: |
NeoMutt/20180716 |
On Wed, Jun 26, 2019 at 06:56:54PM +0200, Auger Eric wrote:
> > diff --git a/target/arm/helper.c b/target/arm/helper.c
> > index f500ccb6d31b..b7b719dba57f 100644
> > --- a/target/arm/helper.c
> > +++ b/target/arm/helper.c
> > @@ -5324,7 +5324,16 @@ static void zcr_write(CPUARMState *env, const
> > ARMCPRegInfo *ri,
> >
> > /* Bits other than [3:0] are RAZ/WI. */
> > QEMU_BUILD_BUG_ON(ARM_MAX_VQ > 16);
> > - raw_write(env, ri, value & 0xf);
> > + value &= 0xf;
> > +
> > + if (value) {
> > + /* get next vq that is smaller than or equal to value's vq */
> > + uint32_t vq = value + 1;
> > + vq = arm_cpu_vq_map_next_smaller(cpu, vq + 1);
> > + value = vq - 1;
> spec says:
>
> "if an unsupported vector length is requested in ZCR_ELx, the
> implementation is required to select the largest
> supported vector length that is less than the requested length. This
> does not alter the value of ZCR_ELx.LEN.
> "
>
> So I understand the value written in the reg should not be unmodified.
>
Sorry, I can't parse what you're trying to tell me here. Here we have
to write 'value', because that's what the guest is trying to do. As the
spec says in your quote, we have to pick the length the guest wants, or
the next smaller valid one, so that's what the code above does. So are
you just stating that you agree with this hunk of the code?
Thanks,
drew
Re: [Qemu-arm] [PATCH v2 07/14] target/arm/cpu64: max cpu: Introduce sve<vl-bits> properties, Auger Eric, 2019/06/26
Re: [Qemu-arm] [PATCH v2 07/14] target/arm/cpu64: max cpu: Introduce sve<vl-bits> properties, Richard Henderson, 2019/06/27
[Qemu-arm] [PATCH v2 11/14] target/arm/kvm64: max cpu: Enable SVE when available, Andrew Jones, 2019/06/21