diff --git a/KernelLand/Kernel/arch/armv7/lib.S b/KernelLand/Kernel/arch/armv7/lib.S index e2f06130589c4c26cc5dc24c7a288e54a83fb0d6..554d7a111b2f97764430ce26b7d80fa61aa51494 100644 --- a/KernelLand/Kernel/arch/armv7/lib.S +++ b/KernelLand/Kernel/arch/armv7/lib.S @@ -82,3 +82,11 @@ __divmod32_asm: pop {r4} mov pc, lr +.globl __sync_fetch_and_and_4 +__sync_fetch_and_and_4: + mov r2, r0 + ldr r0, [r2] + mov r3, r0 + and r3, r1 + str r3, [r2] + mov pc, lr