diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2009-09-26 21:29:00 +0200 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2009-09-26 21:29:00 +0200 |
commit | acb9f2e4bc53e0483e53549379c9c5631e452334 (patch) | |
tree | 4cee7312e3f8059adad1198a65eb8255d1fb4e2a /pfinet | |
parent | 30f1d146129d191ad26bb171b68b2e42d18a8558 (diff) |
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.
Diffstat (limited to 'pfinet')
-rw-r--r-- | pfinet/linux-src/include/asm-i386/checksum.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/pfinet/linux-src/include/asm-i386/checksum.h b/pfinet/linux-src/include/asm-i386/checksum.h index ed023174..add89590 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); } |