mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2026-05-17 23:50:24 +08:00
code cleanup for interrupt description
This commit is contained in:
@@ -162,28 +162,28 @@ void rt_hw_cpu_shutdown(void)
|
||||
#if defined(__CC_ARM)
|
||||
__asm int __rt_ffs(int value)
|
||||
{
|
||||
CMP r0, #0x00
|
||||
BEQ exit
|
||||
RBIT r0, r0
|
||||
CLZ r0, r0
|
||||
ADDS r0, r0, #0x01
|
||||
CMP r0, #0x00
|
||||
BEQ exit
|
||||
RBIT r0, r0
|
||||
CLZ r0, r0
|
||||
ADDS r0, r0, #0x01
|
||||
|
||||
exit
|
||||
BX lr
|
||||
BX lr
|
||||
}
|
||||
#elif defined(__IAR_SYSTEMS_ICC__)
|
||||
int __rt_ffs(int value)
|
||||
{
|
||||
if (value == 0) return value;
|
||||
|
||||
__ASM("RBIT r0, r0");
|
||||
__ASM("CLZ r0, r0");
|
||||
__ASM("ADDS r0, r0, #0x01");
|
||||
if (value == 0) return value;
|
||||
|
||||
__ASM("RBIT r0, r0");
|
||||
__ASM("CLZ r0, r0");
|
||||
__ASM("ADDS r0, r0, #0x01");
|
||||
}
|
||||
#elif defined(__GNUC__)
|
||||
int __rt_ffs(int value)
|
||||
{
|
||||
return __builtin_ffs(value);
|
||||
return __builtin_ffs(value);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user