Tue Jul 21 19:56:56 2009 UTC ()
remove stray semicolons, makes lint happy and lets the libc build proceed


(drochner)
diff -r1.2 -r1.3 src/common/lib/libc/string/popcount32.c
diff -r1.3 -r1.4 src/common/lib/libc/string/popcount64.c

cvs diff -r1.2 -r1.3 src/common/lib/libc/string/popcount32.c (expand / switch to unified diff)

--- src/common/lib/libc/string/popcount32.c 2009/07/21 17:37:51 1.2
+++ src/common/lib/libc/string/popcount32.c 2009/07/21 19:56:55 1.3
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: popcount32.c,v 1.2 2009/07/21 17:37:51 joerg Exp $ */ 1/* $NetBSD: popcount32.c,v 1.3 2009/07/21 19:56:55 drochner Exp $ */
2/*- 2/*-
3 * Copyright (c) 2009 The NetBSD Foundation, Inc. 3 * Copyright (c) 2009 The NetBSD Foundation, Inc.
4 * All rights reserved. 4 * All rights reserved.
5 * 5 *
6 * This code is derived from software contributed to The NetBSD Foundation 6 * This code is derived from software contributed to The NetBSD Foundation
7 * by Joerg Sonnenberger. 7 * by Joerg Sonnenberger.
8 * 8 *
9 * Redistribution and use in source and binary forms, with or without 9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions 10 * modification, are permitted provided that the following conditions
11 * are met: 11 * are met:
12 * 12 *
13 * 1. Redistributions of source code must retain the above copyright 13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer. 14 * notice, this list of conditions and the following disclaimer.
@@ -22,27 +22,27 @@ @@ -22,27 +22,27 @@
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 23 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24 * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 24 * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25 * INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, 25 * INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
26 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 26 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 27 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 29 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
30 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE. 31 * SUCH DAMAGE.
32 */ 32 */
33 33
34#include <sys/cdefs.h> 34#include <sys/cdefs.h>
35__RCSID("$NetBSD: popcount32.c,v 1.2 2009/07/21 17:37:51 joerg Exp $"); 35__RCSID("$NetBSD: popcount32.c,v 1.3 2009/07/21 19:56:55 drochner Exp $");
36 36
37#if !defined(_KERNEL) && !defined(_STANDALONE) 37#if !defined(_KERNEL) && !defined(_STANDALONE)
38#include <limits.h> 38#include <limits.h>
39#include <strings.h> 39#include <strings.h>
40#else 40#else
41#include <lib/libkern/libkern.h> 41#include <lib/libkern/libkern.h>
42#include <machine/limits.h> 42#include <machine/limits.h>
43#endif 43#endif
44 44
45/* 45/*
46 * This a hybrid algorithm for bit counting between parallel counting and 46 * This a hybrid algorithm for bit counting between parallel counting and
47 * using multiplication. The idea is to sum up the bits in each Byte, so 47 * using multiplication. The idea is to sum up the bits in each Byte, so
48 * that the final accumulation can be done with a single multiplication. 48 * that the final accumulation can be done with a single multiplication.
@@ -59,19 +59,19 @@ popcount32(uint32_t v) @@ -59,19 +59,19 @@ popcount32(uint32_t v)
59 v = (v & 0x33333333U) + ((v >> 2) & 0x33333333U); 59 v = (v & 0x33333333U) + ((v >> 2) & 0x33333333U);
60 v = (v + (v >> 4)) & 0x0f0f0f0fU; 60 v = (v + (v >> 4)) & 0x0f0f0f0fU;
61 c = (v * 0x01010101U) >> 24; 61 c = (v * 0x01010101U) >> 24;
62 /* 62 /*
63 * v = (v >> 16) + v; 63 * v = (v >> 16) + v;
64 * v = (v >> 8) + v; 64 * v = (v >> 8) + v;
65 * c = v & 255; 65 * c = v & 255;
66 */ 66 */
67 67
68 return c; 68 return c;
69} 69}
70 70
71#if UINT_MAX == 0xffffffffU 71#if UINT_MAX == 0xffffffffU
72__strong_alias(popcount, popcount32); 72__strong_alias(popcount, popcount32)
73#endif 73#endif
74 74
75#if ULONG_MAX == 0xffffffffU 75#if ULONG_MAX == 0xffffffffU
76__strong_alias(popcountl, popcount32); 76__strong_alias(popcountl, popcount32)
77#endif 77#endif

cvs diff -r1.3 -r1.4 src/common/lib/libc/string/popcount64.c (expand / switch to unified diff)

--- src/common/lib/libc/string/popcount64.c 2009/07/21 17:14:12 1.3
+++ src/common/lib/libc/string/popcount64.c 2009/07/21 19:56:55 1.4
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: popcount64.c,v 1.3 2009/07/21 17:14:12 joerg Exp $ */ 1/* $NetBSD: popcount64.c,v 1.4 2009/07/21 19:56:55 drochner Exp $ */
2/*- 2/*-
3 * Copyright (c) 2009 The NetBSD Foundation, Inc. 3 * Copyright (c) 2009 The NetBSD Foundation, Inc.
4 * All rights reserved. 4 * All rights reserved.
5 * 5 *
6 * This code is derived from software contributed to The NetBSD Foundation 6 * This code is derived from software contributed to The NetBSD Foundation
7 * by Joerg Sonnenberger. 7 * by Joerg Sonnenberger.
8 * 8 *
9 * Redistribution and use in source and binary forms, with or without 9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions 10 * modification, are permitted provided that the following conditions
11 * are met: 11 * are met:
12 * 12 *
13 * 1. Redistributions of source code must retain the above copyright 13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer. 14 * notice, this list of conditions and the following disclaimer.
@@ -22,27 +22,27 @@ @@ -22,27 +22,27 @@
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 23 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24 * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 24 * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25 * INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, 25 * INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
26 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 26 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 27 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 29 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
30 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE. 31 * SUCH DAMAGE.
32 */ 32 */
33 33
34#include <sys/cdefs.h> 34#include <sys/cdefs.h>
35__RCSID("$NetBSD: popcount64.c,v 1.3 2009/07/21 17:14:12 joerg Exp $"); 35__RCSID("$NetBSD: popcount64.c,v 1.4 2009/07/21 19:56:55 drochner Exp $");
36 36
37#if !defined(_KERNEL) && !defined(_STANDALONE) 37#if !defined(_KERNEL) && !defined(_STANDALONE)
38#include <limits.h> 38#include <limits.h>
39#include <strings.h> 39#include <strings.h>
40#else 40#else
41#include <lib/libkern/libkern.h> 41#include <lib/libkern/libkern.h>
42#include <machine/limits.h> 42#include <machine/limits.h>
43#endif 43#endif
44 44
45/* 45/*
46 * If uint64_t is larger than size_t, the follow assumes that 46 * If uint64_t is larger than size_t, the follow assumes that
47 * splitting into 32bit halfes is faster. 47 * splitting into 32bit halfes is faster.
48 * 48 *
@@ -63,20 +63,20 @@ popcount64(uint64_t v) @@ -63,20 +63,20 @@ popcount64(uint64_t v)
63{ 63{
64 unsigned int c; 64 unsigned int c;
65 65
66 v = v - ((v >> 1) & 0x5555555555555555ULL); 66 v = v - ((v >> 1) & 0x5555555555555555ULL);
67 v = (v & 0x3333333333333333ULL) + ((v >> 2) & 0x3333333333333333ULL); 67 v = (v & 0x3333333333333333ULL) + ((v >> 2) & 0x3333333333333333ULL);
68 v = ((v + (v >> 4)) & 0x0f0f0f0f0f0f0f0fULL) * 0x0101010101010101ULL; 68 v = ((v + (v >> 4)) & 0x0f0f0f0f0f0f0f0fULL) * 0x0101010101010101ULL;
69 c = v >> 56; 69 c = v >> 56;
70 70
71 return c; 71 return c;
72} 72}
73#endif 73#endif
74 74
75#if ULONG_MAX == 0xffffffffffffffffULL 75#if ULONG_MAX == 0xffffffffffffffffULL
76__strong_alias(popcountl, popcount64); 76__strong_alias(popcountl, popcount64)
77#endif 77#endif
78 78
79#if ULLONG_MAX == 0xffffffffffffffffULL 79#if ULLONG_MAX == 0xffffffffffffffffULL
80__strong_alias(popcountll, popcount64); 80__strong_alias(popcountll, popcount64)
81#endif 81#endif
82 82