diff options
| author | zhouji <[email protected]> | 2021-05-24 17:09:29 +0800 |
|---|---|---|
| committer | zhouji <[email protected]> | 2021-05-27 17:39:03 +0800 |
| commit | d6e86a67bbf791d19d7637cdcca69de3904470af (patch) | |
| tree | d0ff4143d0aef96f19c486d11fb96b01cb4a9038 /libcpu/arm/cortex-a | |
| parent | 59bec273644d49f9da4c78ae9d0ccc1162e0088a (diff) | |
[add] 在cortex-a中增加,打开RT_USING_CPU_FFS宏定义时的_rt_ffs实现。
Diffstat (limited to 'libcpu/arm/cortex-a')
| -rw-r--r-- | libcpu/arm/cortex-a/cpu.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libcpu/arm/cortex-a/cpu.c b/libcpu/arm/cortex-a/cpu.c index 7367bddd9f..c95c58a13c 100644 --- a/libcpu/arm/cortex-a/cpu.c +++ b/libcpu/arm/cortex-a/cpu.c @@ -75,4 +75,21 @@ RT_WEAK void rt_hw_cpu_shutdown() } } +#ifdef RT_USING_CPU_FFS +/** + * This function finds the first bit set (beginning with the least significant bit) + * in value and return the index of that bit. + * + * Bits are numbered starting at 1 (the least significant bit). A return value of + * zero from any of these functions means that the argument was zero. + * + * @return return the index of the first bit set. If value is 0, then this function + * shall return 0. + */ +int __rt_ffs(int value) +{ + return __builtin_ffs(value); +} +#endif + /*@}*/ |
