From: Kyle McMartin Date: Sat, 31 May 2008 16:15:42 +0000 (-0400) Subject: parisc: fix miscompilation of ip_fast_csum with gcc >= 4.3 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=e374d17cd74ec5967f81e2b0c67ec3219a2bbbcc;p=openwrt%2Fstaging%2Fblogic.git parisc: fix miscompilation of ip_fast_csum with gcc >= 4.3 ip_fast_csum needs an asm "memory" clobber, otherwise the aggressive optimizations in gcc-4.3 cause it to be miscompiled. Signed-off-by: Kyle McMartin --- diff --git a/include/asm-parisc/checksum.h b/include/asm-parisc/checksum.h index cc3ec1bd8919..e9639ccc3fce 100644 --- a/include/asm-parisc/checksum.h +++ b/include/asm-parisc/checksum.h @@ -65,7 +65,7 @@ static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) "2:\n" : "=r" (sum), "=r" (iph), "=r" (ihl) : "1" (iph), "2" (ihl) - : "r19", "r20", "r21" ); + : "r19", "r20", "r21", "memory"); return (__force __sum16)sum; }