summaryrefslogtreecommitdiff
path: root/gr-blocks/lib/count_bits.cc
diff options
context:
space:
mode:
authorMarcus Müller <mmueller@gnuradio.org>2019-08-07 21:45:12 +0200
committerMarcus Müller <marcus@hostalia.de>2019-08-09 23:04:28 +0200
commitf7bbf2c1d8d780294f3e016aff239ca35eb6516e (patch)
treee09ab6112e02b2215b2d59ac24d3d6ea2edac745 /gr-blocks/lib/count_bits.cc
parent78431dc6941e3acc67c858277dfe4a0ed583643c (diff)
Tree: clang-format without the include sorting
Diffstat (limited to 'gr-blocks/lib/count_bits.cc')
-rw-r--r--gr-blocks/lib/count_bits.cc67
1 files changed, 31 insertions, 36 deletions
diff --git a/gr-blocks/lib/count_bits.cc b/gr-blocks/lib/count_bits.cc
index c65dc94894..aaab97b66a 100644
--- a/gr-blocks/lib/count_bits.cc
+++ b/gr-blocks/lib/count_bits.cc
@@ -29,50 +29,45 @@
*/
namespace gr {
- namespace blocks {
+namespace blocks {
- unsigned int
- count_bits8(unsigned int x)
- {
- int count = 0;
+unsigned int count_bits8(unsigned int x)
+{
+ int count = 0;
- for(int i = 0; i < 8; i++) {
- if(x & (1 << i))
- count++;
- }
-
- return count;
+ for (int i = 0; i < 8; i++) {
+ if (x & (1 << i))
+ count++;
}
- unsigned int
- count_bits16(unsigned int x)
- {
- int count = 0;
+ return count;
+}
- for(int i = 0; i < 16; i++) {
- if(x & (1 << i))
- count++;
- }
+unsigned int count_bits16(unsigned int x)
+{
+ int count = 0;
- return count;
+ for (int i = 0; i < 16; i++) {
+ if (x & (1 << i))
+ count++;
}
- unsigned int
- count_bits32(unsigned int x)
- {
- unsigned res = (x & 0x55555555) + ((x >> 1) & 0x55555555);
- res = (res & 0x33333333) + ((res >> 2) & 0x33333333);
- res = (res & 0x0F0F0F0F) + ((res >> 4) & 0x0F0F0F0F);
- res = (res & 0x00FF00FF) + ((res >> 8) & 0x00FF00FF);
- return (res & 0x0000FFFF) + ((res >> 16) & 0x0000FFFF);
- }
+ return count;
+}
- unsigned int
- count_bits64(unsigned long long x)
- {
- return count_bits32((x >> 32) & 0xffffffff) + \
- count_bits32(x & 0xffffffff);
- }
+unsigned int count_bits32(unsigned int x)
+{
+ unsigned res = (x & 0x55555555) + ((x >> 1) & 0x55555555);
+ res = (res & 0x33333333) + ((res >> 2) & 0x33333333);
+ res = (res & 0x0F0F0F0F) + ((res >> 4) & 0x0F0F0F0F);
+ res = (res & 0x00FF00FF) + ((res >> 8) & 0x00FF00FF);
+ return (res & 0x0000FFFF) + ((res >> 16) & 0x0000FFFF);
+}
+
+unsigned int count_bits64(unsigned long long x)
+{
+ return count_bits32((x >> 32) & 0xffffffff) + count_bits32(x & 0xffffffff);
+}
- } /* namespace blocks */
+} /* namespace blocks */
} /* namespace gr */