summaryrefslogtreecommitdiff
path: root/debian/patches/pfinet-gcc-4.3-fix.patch
diff options
context:
space:
mode:
authorSamuel Thibault <sthibault@debian.org>2009-09-26 19:58:11 +0000
committerSamuel Thibault <sthibault@debian.org>2009-09-26 19:58:11 +0000
commit2d0f394f25d61db2b257608d727ea21e5e91ed5b (patch)
tree868b9c9e145f6376fc138824679f68625f48253f /debian/patches/pfinet-gcc-4.3-fix.patch
parentb8c50c43d77a25c1fc416c30021e677f26b533fc (diff)
debian/patches/pfinet-gcc-4.3-fix.patch: Cherry-pick upstream patch to fix
build with gcc-4.3 debian/rules: Set CC to gcc-4.3 instead of gcc-4.2. debian/control: Build-Depend on gcc-4.3 instead of gcc-4.2.
Diffstat (limited to 'debian/patches/pfinet-gcc-4.3-fix.patch')
-rw-r--r--debian/patches/pfinet-gcc-4.3-fix.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/debian/patches/pfinet-gcc-4.3-fix.patch b/debian/patches/pfinet-gcc-4.3-fix.patch
new file mode 100644
index 00000000..c58878ae
--- /dev/null
+++ b/debian/patches/pfinet-gcc-4.3-fix.patch
@@ -0,0 +1,34 @@
+commit acb9f2e4bc53e0483e53549379c9c5631e452334
+Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
+Date: Sat Sep 26 21:29:00 2009 +0200
+
+ Add memory clobbers to assembly snippets
+
+ * pfinet/linux-src/include/asm-i386/checksum.h (ip_fast_csum):
+ Add memory clobber to assembly snippet.
+ (csum_ipv6_magic): Likewise.
+
+diff --git a/pfinet/linux-src/include/asm-i386/checksum.h b/pfinet/linux-src/include/asm-i386/checksum.h
+index ed02317..add8959 100644
+--- a/pfinet/linux-src/include/asm-i386/checksum.h
++++ b/pfinet/linux-src/include/asm-i386/checksum.h
+@@ -109,7 +109,8 @@ static inline unsigned short ip_fast_csum(unsigned char * iph,
+ are modified, we must also specify them as outputs, or gcc
+ will assume they contain their original values. */
+ : "=r" (sum), "=r" (iph), "=r" (ihl)
+- : "1" (iph), "2" (ihl));
++ : "1" (iph), "2" (ihl)
++ : "memory");
+ return(sum);
+ }
+
+@@ -185,7 +186,8 @@ static __inline__ unsigned short int csum_ipv6_magic(struct in6_addr *saddr,
+ "adcl $0, %0\n"
+ : "=&r" (sum)
+ : "r" (saddr), "r" (daddr),
+- "r"(htonl((__u32) (len))), "r"(htonl(proto)), "0"(sum));
++ "r"(htonl((__u32) (len))), "r"(htonl(proto)), "0"(sum)
++ : "memory");
+
+ return csum_fold(sum);
+ }