libasm/ft_strcmp.s

20 lines
258 B
ArmAsm

global ft_strcmp
ft_strcmp:
xor rdx, rdx
xor rax, rax
.loop:
mov al, [rsi + rdx]
cmp byte [rdi + rdx], al
jne .done
cmp byte [rdi + rdx], 0
je .done
inc rdx
jmp .loop
.done:
mov al, byte [rdi + rdx]
mov bl, byte [rsi + rdx]
sub rax, rbx
ret