RE: x86/csum: Remove unnecessary odd handling

From: David Laight
Date: Wed Sep 06 2023 - 10:38:59 EST


From: Noah Goldstein
> Sent: 01 September 2023 23:21
...
> + return add32_with_carry(temp64 >> 32, temp64 & 0xffffffff);

The generic C alternative:
return (temp64 + ror64(temp64, 32)) >> 32;
is the same number of instructions but might get
better scheduling.

The C version of csum_fold() from arc/include/asm/checksum.h
is also better than the x86 asm version.
(And also pretty much all the other architecture dependant
copies.)

David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)