diff options
author | Kyle McMartin <kyle@minerva.i.cabal.ca> | 2008-05-31 18:15:42 +0200 |
---|---|---|
committer | Kyle McMartin <kyle@minerva.i.cabal.ca> | 2008-06-13 16:49:56 +0200 |
commit | e374d17cd74ec5967f81e2b0c67ec3219a2bbbcc (patch) | |
tree | e7383635119fc66a60edaaa36b4df2078337a86f /include/asm-parisc/checksum.h | |
parent | parisc: fix off by one in setup_sigcontext32 (diff) | |
download | linux-e374d17cd74ec5967f81e2b0c67ec3219a2bbbcc.tar.xz linux-e374d17cd74ec5967f81e2b0c67ec3219a2bbbcc.zip |
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 <kyle@mcmartin.ca>
Diffstat (limited to '')
-rw-r--r-- | include/asm-parisc/checksum.h | 2 |
1 files changed, 1 insertions, 1 deletions
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; } |