1 /* 2 * Licensed under the GPL 3 */ 4 5 #ifndef __UM_SYSDEP_CHECKSUM_H 6 #define __UM_SYSDEP_CHECKSUM_H 7 8 static inline unsigned add32_with_carry(unsigned a, unsigned b) 9 { 10 asm("addl %2,%0\n\t" 11 "adcl $0,%0" 12 : "=r" (a) 13 : "0" (a), "r" (b)); 14 return a; 15 } 16 17 extern __sum16 ip_compute_csum(const void *buff, int len); 18 19 #endif