Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/arch/x86/um/asm/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 804 B image not shown  

Quelle  checksum_32.h   Sprache: C

 
/*
 * Licensed under the GPL
 */


#ifndef __UM_SYSDEP_CHECKSUM_H
#define __UM_SYSDEP_CHECKSUM_H

static inline __sum16 ip_compute_csum(const void *buff, int len)
{
    return csum_fold (csum_partial(buff, len, 0));
}

#define _HAVE_ARCH_IPV6_CSUM
static __inline__ __sum16 csum_ipv6_magic(const struct in6_addr *saddr,
       const struct in6_addr *daddr,
       __u32 len, __u8 proto,
       __wsum sum)
{
 __asm__(
  "addl 0(%1), %0 ;\n"
  "adcl 4(%1), %0 ;\n"
  "adcl 8(%1), %0 ;\n"
  "adcl 12(%1), %0 ;\n"
  "adcl 0(%2), %0 ;\n"
  "adcl 4(%2), %0 ;\n"
  "adcl 8(%2), %0 ;\n"
  "adcl 12(%2), %0 ;\n"
  "adcl %3, %0 ;\n"
  "adcl %4, %0 ;\n"
  "adcl $0, %0 ;\n"
  : "=&r" (sum)
  : "r" (saddr), "r" (daddr),
    "r"(htonl(len)), "r"(htonl(proto)), "0"(sum));

 return csum_fold(sum);
}

#endif

Messung V0.5
C=90 H=96 G=93

¤ Dauer der Verarbeitung: 0.13 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.