Files
libasm/srcs/ft_strlen.s

25 lines
270 B
ArmAsm

section .text
global ft_strlen
ft_strlen:
test rdi, rdi
jz .err
mov rsi, rdi
jmp .loop_start
.increase_pointer:
lea rsi, [rsi + 1]
.loop_start:
mov al, [rsi]
test al, al
jnz .increase_pointer
.end:
sub rsi, rdi
mov rax, rsi
ret
.err:
xor rax, rax
ret