diff options
Diffstat (limited to 'firmware/export')
-rw-r--r-- | firmware/export/system.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/firmware/export/system.h b/firmware/export/system.h index f6d441ef2a..0a13ec2208 100644 --- a/firmware/export/system.h +++ b/firmware/export/system.h | |||
@@ -157,7 +157,12 @@ int get_cpu_boost_counter(void); | |||
157 | ((type *)((intptr_t)(memberptr) - OFFSETOF(type, membername))) | 157 | ((type *)((intptr_t)(memberptr) - OFFSETOF(type, membername))) |
158 | 158 | ||
159 | /* returns index of first set bit or 32 if no bits are set */ | 159 | /* returns index of first set bit or 32 if no bits are set */ |
160 | #if defined(CPU_ARM) && ARM_ARCH >= 5 && !defined(__thumb__) | ||
161 | static inline int find_first_set_bit(uint32_t val) | ||
162 | { return LIKELY(val) ? __builtin_ctz(val) : 32; } | ||
163 | #else | ||
160 | int find_first_set_bit(uint32_t val); | 164 | int find_first_set_bit(uint32_t val); |
165 | #endif | ||
161 | 166 | ||
162 | static inline __attribute__((always_inline)) | 167 | static inline __attribute__((always_inline)) |
163 | uint32_t isolate_first_bit(uint32_t val) | 168 | uint32_t isolate_first_bit(uint32_t val) |