diff options
| author | JonasWen <[email protected]> | 2022-06-15 17:19:51 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-06-15 17:19:51 +0800 |
| commit | b010e434ed3839e5064f7fc8337591a18d6b67cd (patch) | |
| tree | d886b359b18fba95dddda80d9d9f3677b48b3f3b /libcpu/arm | |
| parent | ccbecfc220ac3224c5469aac7a1392a64f3a7c3e (diff) | |
[libcpu][arm] ArmClang 编译优化错误 (#6071)
Diffstat (limited to 'libcpu/arm')
| -rw-r--r-- | libcpu/arm/cortex-m4/cpuport.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/libcpu/arm/cortex-m4/cpuport.c b/libcpu/arm/cortex-m4/cpuport.c index 6b748255c5..f060fa122d 100644 --- a/libcpu/arm/cortex-m4/cpuport.c +++ b/libcpu/arm/cortex-m4/cpuport.c @@ -15,6 +15,7 @@ * 2013-06-23 aozima support lazy stack optimized. * 2018-07-24 aozima enhancement hard fault exception handler. * 2019-07-03 yangjie add __rt_ffs() for armclang. + * 2022-06-12 jonas fixed __rt_ffs() for armclang. */ #include <rtthread.h> @@ -473,12 +474,12 @@ exit int __rt_ffs(int value) { __asm volatile( - "CMP r0, #0x00 \n" + "CMP %0, #0x00 \n" "BEQ 1f \n" - "RBIT r0, r0 \n" - "CLZ r0, r0 \n" - "ADDS r0, r0, #0x01 \n" + "RBIT %0, %0 \n" + "CLZ %0, %0 \n" + "ADDS %0, %0, #0x01 \n" "1: \n" |
