Files
linux-kernel-module-cheat/userland/arch/arm/clz.S
2019-07-07 00:00:01 +00:00

18 lines
330 B
ArmAsm

/* https://cirosantilli.com/linux-kernel-module-cheat#arm-bitwise-instructions */
#include <lkmc.h>
LKMC_PROLOGUE
ldr r0, =0x7FFFFFFF
clz r1, r0
LKMC_ASSERT_EQ(r1, =1)
ldr r0, =0x3FFFFFFF
clz r1, r0
LKMC_ASSERT_EQ(r1, =2)
ldr r0, =0x1FFFFFFF
clz r1, r0
LKMC_ASSERT_EQ(r1, =3)
LKMC_EPILOGUE