[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 12:00:13 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 |
On 4/25/20 11:49 AM, Richard Henderson wrote:
> 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.
Bah. I was looking at zip2 first. zip1 uses the uint64_t path.
I see the problem now.
r~