Re: [v2,2/2] powerpc32: add support for csum_add()
From: christophe leroy <hidden>
Date: 2015-04-28 19:01:30
Le 25/03/2015 02:30, Scott Wood a écrit :
On Tue, Feb 03, 2015 at 12:39:27PM +0100, LEROY Christophe wrote:quoted
The C version of csum_add() as defined in include/net/checksum.h gives the following assembly: 0: 7c 04 1a 14 add r0,r4,r3 4: 7c 64 00 10 subfc r3,r4,r0 8: 7c 63 19 10 subfe r3,r3,r3 c: 7c 63 00 50 subf r3,r3,r0 include/net/checksum.h also offers the possibility to define an arch specific function. This patch provides a ppc32 specific csum_add() inline function.What makes it 32-bit specific?
As far as I understand, the 64-bit will do a 64 bit addition, so we will
have to handle differently the carry, can't just be an addze like in 32-bit.
The generated code is most likely different on ppc64. I have no ppc64
compiler so I can't check what gcc generates for the following code:
|__wsumcsum_add(__wsum csum, __wsum addend)
{
u32 res= (__force u32)csum;
res+= (__force u32)addend;
return (__force __wsum)(res+ (res< (__force u32)addend));
}|
Can someone with a ppc64 compiler tell what we get ?
Christophe
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com