qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v6 12/22] target/arm: default SVE length to 64 bytes for linu


From: Richard Henderson
Subject: Re: [PATCH v6 12/22] target/arm: default SVE length to 64 bytes for linux-user
Date: Thu, 6 Feb 2020 11:19:12 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1

On 2/5/20 5:10 PM, Alex Bennée wrote:
> -        /* with maximum vector length */
> +        /* with reasonable vector length */
>          env->vfp.zcr_el[1] = cpu_isar_feature(aa64_sve, cpu) ?
> -                             cpu->sve_max_vq - 1 : 0;
> +            MIN(cpu->sve_max_vq - 1, 3) : 0;
>          env->vfp.zcr_el[2] = env->vfp.zcr_el[1];
>          env->vfp.zcr_el[3] = env->vfp.zcr_el[1];

Let's reorg this to

    if (cpu_isar_feature(aa64_sve, cpu)) {
        env->vfp.zcr_el[1] = MIN(cpu->sve_max_vq - 1, 3);
        env->vfp.zcr_el[2] = cpu->sve_max_vq - 1;
        env->vfp.zcr_el[3] = cpu->sve_max_vq - 1;
    }

Using the MIN setting on el2 and el3 was wrong, as it meant that we could *not*
increase the setting later with PR_SVE_SET_VL, at least not without changes to
linux-user...


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]