Procházet zdrojové kódy

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>
Kyle McMartin před 17 roky
rodič
revize
e374d17cd7
1 změnil soubory, kde provedl 1 přidání a 1 odebrání
  1. 1 1
      include/asm-parisc/checksum.h

+ 1 - 1
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;
 }