From: Tom Herbert Date: Fri, 2 May 2014 23:28:40 +0000 (-0700) Subject: net: Change x86_64 add32_with_carry to allow memory operand X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=4405b4d635aa2c5c7eb8873696b54811531e0d08;p=openwrt%2Fstaging%2Fblogic.git net: Change x86_64 add32_with_carry to allow memory operand Note add32_with_carry(a, b) is suboptimal, as it forces a and b in registers. b could be a memory or a register operand. Signed-off-by: Tom Herbert Signed-off-by: David S. Miller --- diff --git a/arch/x86/include/asm/checksum_64.h b/arch/x86/include/asm/checksum_64.h index 3581761bd86c..cd00e1774491 100644 --- a/arch/x86/include/asm/checksum_64.h +++ b/arch/x86/include/asm/checksum_64.h @@ -184,7 +184,7 @@ static inline unsigned add32_with_carry(unsigned a, unsigned b) asm("addl %2,%0\n\t" "adcl $0,%0" : "=r" (a) - : "0" (a), "r" (b)); + : "0" (a), "rm" (b)); return a; }