summaryrefslogtreecommitdiff
path: root/arm9/lib/src/MATH.c
blob: a14779acd0d5243f5764559494ffd25e9cad2626 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
#include "global.h"
#include "MATH.h"

ARM_FUNC u8 MATH_CountPopulation(u32 x) {
    x -= (x >> 1) & 0x55555555;
    x = (x & 0x33333333) + ((x >> 2) & 0x33333333);
    x += x >> 4;
    x &= 0x0f0f0f0f;
    x += x >> 8;
    x += x >> 16;
    return (u8)x;
}