[PATCH] x86-64: memcmp-avx2-movbe.S needs saturating subtraction [BZ #21662]

Richard Henderson rth@twiddle.net
Fri Jun 23 21:05:00 GMT 2017


On 06/23/2017 01:52 PM, Florian Weimer wrote:
> On 06/23/2017 10:48 PM, Richard Henderson wrote:
>> On 06/23/2017 06:51 AM, Florian Weimer wrote:
>>> +    shll    $8, %eax
>>> +    shll    $8, %ecx
>>>        bswap    %eax
>>>        bswap    %ecx
>>> +    movzbl    -1(%rdi, %rdx), %edi
>>> +    movzbl    -1(%rsi, %rdx), %esi
>>> +    orl    %edi, %eax
>>> +    orl    %esi, %ecx
>>
>> Do you really need to re-load and merge the final byte?
>> It would appear you could leave the low byte zero.
> 
> Sorry, I don't understand.  Is this the same issue as H.J. raised and
> improved?
> 
> The final/third byte certainly can affect the outcome of the comparison.

Obviously I didn't intend to imply that one can completely ignore the final 
byte.  From the larger context that I didn't quote, it appeared that the last 
byte has already been loaded.

That said, I take it all back -- I mis-read the diff.


r~



More information about the Libc-alpha mailing list