diff options
author | Kyle McMartin <kyle@minerva.i.cabal.ca> | 2008-05-31 12:15:42 -0400 |
---|---|---|
committer | Kyle McMartin <kyle@minerva.i.cabal.ca> | 2008-06-13 10:49:56 -0400 |
commit | e374d17cd74ec5967f81e2b0c67ec3219a2bbbcc (patch) | |
tree | e7383635119fc66a60edaaa36b4df2078337a86f /include | |
parent | f4441b62d46e7033e907dfd6a8bb0b75b5519e88 (diff) |
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 'include')
-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) | |||
65 | "2:\n" | 65 | "2:\n" |
66 | : "=r" (sum), "=r" (iph), "=r" (ihl) | 66 | : "=r" (sum), "=r" (iph), "=r" (ihl) |
67 | : "1" (iph), "2" (ihl) | 67 | : "1" (iph), "2" (ihl) |
68 | : "r19", "r20", "r21" ); | 68 | : "r19", "r20", "r21", "memory"); |
69 | 69 | ||
70 | return (__force __sum16)sum; | 70 | return (__force __sum16)sum; |
71 | } | 71 | } |