mirror of
https://github.com/Mathewnd/Astral.git
synced 2026-10-30 14:08:21 +00:00
ustring: more functions
This commit is contained in:
+45
-13
@@ -4,17 +4,49 @@ global arch_u_strlen
|
||||
global arch_u_strlen_cont
|
||||
|
||||
arch_u_strlen:
|
||||
xor rcx, rcx
|
||||
.loop:
|
||||
cmp byte [rdi],0
|
||||
je .done
|
||||
inc rcx
|
||||
inc rdi
|
||||
jmp .loop
|
||||
.done:
|
||||
mov [rsi], rcx
|
||||
xor rax, rax
|
||||
ret
|
||||
xor rcx, rcx
|
||||
.loop:
|
||||
cmp byte [rdi],0
|
||||
je .done
|
||||
inc rcx
|
||||
inc rdi
|
||||
jmp .loop
|
||||
.done:
|
||||
mov [rsi], rcx
|
||||
xor rax, rax
|
||||
ret
|
||||
arch_u_strlen_cont:
|
||||
mov rax, 1
|
||||
ret
|
||||
mov rax, 1
|
||||
ret
|
||||
|
||||
global arch_u_memcpy
|
||||
global arch_u_memcpy_cont
|
||||
|
||||
arch_u_memcpy:
|
||||
mov rcx, rdx
|
||||
rep movsb
|
||||
xor rax, rax
|
||||
ret
|
||||
arch_u_memcpy_cont:
|
||||
mov rax, 1
|
||||
ret
|
||||
|
||||
global arch_u_strcpy
|
||||
global arch_u_strcpy_cont
|
||||
|
||||
arch_u_strcpy:
|
||||
.loop:
|
||||
mov al, [rsi]
|
||||
mov [rdi], al
|
||||
inc rsi
|
||||
inc rdi
|
||||
test al,al
|
||||
jz .done
|
||||
jmp .loop
|
||||
.done:
|
||||
xor rax,rax
|
||||
ret
|
||||
arch_u_strcpy_cont:
|
||||
mov rax, 1
|
||||
ret
|
||||
|
||||
|
||||
Reference in New Issue
Block a user