Lines Matching refs:a

131 static inline uint32_t lfs_max(uint32_t a, uint32_t b) {  in lfs_max()  argument
132 return (a > b) ? a : b; in lfs_max()
135 static inline uint32_t lfs_min(uint32_t a, uint32_t b) { in lfs_min() argument
136 return (a < b) ? a : b; in lfs_min()
140 static inline uint32_t lfs_aligndown(uint32_t a, uint32_t alignment) { in lfs_aligndown() argument
141 return a - (a % alignment); in lfs_aligndown()
144 static inline uint32_t lfs_alignup(uint32_t a, uint32_t alignment) { in lfs_alignup() argument
145 return lfs_aligndown(a + alignment-1, alignment); in lfs_alignup()
149 static inline uint32_t lfs_npw2(uint32_t a) { in lfs_npw2() argument
151 return 32 - __builtin_clz(a-1); in lfs_npw2()
155 a -= 1; in lfs_npw2()
156 s = (a > 0xffff) << 4; a >>= s; r |= s; in lfs_npw2()
157 s = (a > 0xff ) << 3; a >>= s; r |= s; in lfs_npw2()
158 s = (a > 0xf ) << 2; a >>= s; r |= s; in lfs_npw2()
159 s = (a > 0x3 ) << 1; a >>= s; r |= s; in lfs_npw2()
160 return (r | (a >> 1)) + 1; in lfs_npw2()
166 static inline uint32_t lfs_ctz(uint32_t a) { in lfs_ctz() argument
168 return __builtin_ctz(a); in lfs_ctz()
170 return lfs_npw2((a & -a) + 1) - 1; in lfs_ctz()
175 static inline uint32_t lfs_popc(uint32_t a) { in lfs_popc() argument
177 return __builtin_popcount(a); in lfs_popc()
179 a = a - ((a >> 1) & 0x55555555); in lfs_popc()
180 a = (a & 0x33333333) + ((a >> 2) & 0x33333333); in lfs_popc()
181 return (((a + (a >> 4)) & 0xf0f0f0f) * 0x1010101) >> 24; in lfs_popc()
187 static inline int lfs_scmp(uint32_t a, uint32_t b) { in lfs_scmp() argument
188 return (int)(unsigned)(a - b); in lfs_scmp()
192 static inline uint32_t lfs_fromle32(uint32_t a) { in lfs_fromle32() argument
197 return a; in lfs_fromle32()
202 return __builtin_bswap32(a); in lfs_fromle32()
204 return (((uint8_t*)&a)[0] << 0) | in lfs_fromle32()
205 (((uint8_t*)&a)[1] << 8) | in lfs_fromle32()
206 (((uint8_t*)&a)[2] << 16) | in lfs_fromle32()
207 (((uint8_t*)&a)[3] << 24); in lfs_fromle32()
211 static inline uint32_t lfs_tole32(uint32_t a) { in lfs_tole32() argument
212 return lfs_fromle32(a); in lfs_tole32()
216 static inline uint32_t lfs_frombe32(uint32_t a) { in lfs_frombe32() argument
221 return __builtin_bswap32(a); in lfs_frombe32()
226 return a; in lfs_frombe32()
228 return (((uint8_t*)&a)[0] << 24) | in lfs_frombe32()
229 (((uint8_t*)&a)[1] << 16) | in lfs_frombe32()
230 (((uint8_t*)&a)[2] << 8) | in lfs_frombe32()
231 (((uint8_t*)&a)[3] << 0); in lfs_frombe32()
235 static inline uint32_t lfs_tobe32(uint32_t a) { in lfs_tobe32() argument
236 return lfs_frombe32(a); in lfs_tobe32()