Lines Matching +full:half +full:-
1 /* SPDX-License-Identifier: GPL-2.0 */
9 * and adds in "sum" (32-bit)
11 * returns a 32-bit number suitable for feeding into itself
17 * it's best to have buff aligned on a 32-bit boundary
34 " addib,<= -4, %2, 2f\n" in ip_fast_csum()
43 " addib,> -1, %2, 1b\n" in ip_fast_csum()
51 " subi -1, %0, %0\n" in ip_fast_csum()
66 /* add the swapped two 16-bit halves of sum, in csum_fold()
67 a possible carry from adding the two 16-bit halves, in csum_fold()
68 will carry from the lower half into the upper half, in csum_fold()
69 giving us the correct sum in the upper half. */ in csum_fold()
89 * computes the checksum of the TCP/UDP pseudo-header
90 * returns a 16-bit checksum, already complemented
100 * this routine is used for miscellaneous IP-like checksums, mainly
117 len += proto; /* add 16-bit proto + len */ in csum_ipv6_magic()
129 " depdi 0, 31, 32, %0\n"/* clear upper half of incoming checksum */ in csum_ipv6_magic()
139 " extrd,u %0, 31, 32, %4\n"/* copy upper half down */ in csum_ipv6_magic()
140 " depdi 0, 31, 32, %0\n"/* clear upper half */ in csum_ipv6_magic()
141 " add,dc %4, %0, %0\n" /* fold into 32-bits, plus carry */ in csum_ipv6_magic()