Lines Matching refs:b
20 static unsigned long binary_gcd(unsigned long a, unsigned long b) in binary_gcd() argument
22 unsigned long r = a | b; in binary_gcd()
24 b >>= __ffs(b); in binary_gcd()
25 if (b == 1) in binary_gcd()
32 if (a == b) in binary_gcd()
35 if (a < b) in binary_gcd()
36 swap(a, b); in binary_gcd()
37 a -= b; in binary_gcd()
50 unsigned long gcd(unsigned long a, unsigned long b) in gcd() argument
52 unsigned long r = a | b; in gcd()
54 if (!a || !b) in gcd()
59 return binary_gcd(a, b); in gcd()
65 while (!(b & r)) in gcd()
66 b >>= 1; in gcd()
67 if (b == r) in gcd()
75 if (a == b) in gcd()
78 if (a < b) in gcd()
79 swap(a, b); in gcd()
80 a -= b; in gcd()
83 a += b; in gcd()