[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ARM SVE issues with non "standard" vector lengths
From: |
Richard Henderson |
Subject: |
Re: ARM SVE issues with non "standard" vector lengths |
Date: |
Sat, 25 Apr 2020 11:49:22 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 |
On 4/23/20 6:59 AM, Laurent Desnogues wrote:
> 2. sve_zip_p
>
> This generates extraneous data in the higher part of the result.
>
> I hit this when I got a wrong result on an instruction that ends up
> using sve_cntp which counts all bits set in each 64-bit chunk. There
> might be some other instructions beyond ZIP that generate extra data
> that would break sve_cntp. So perhaps it'd be easier to fix sve_cmtp
> (and hope that it's the only function that uses bits beyond vector
> length...).
I don't see how sve_zip_p can set high bits. If vl is not a multiple of 512,
it writes in units of uint16_t. This cannot produce values outside range.
Are you certain that the high bits were not set and left over by some previous
buggy operation, since the uint16_t writes would not clear any extra bits?
r~