...
This commit is contained in:
26
src/CLI/Runtime/nub_mem.s
Normal file
26
src/CLI/Runtime/nub_mem.s
Normal file
@@ -0,0 +1,26 @@
|
||||
.intel_syntax noprefix
|
||||
|
||||
.text
|
||||
.globl nub_memcpy
|
||||
# func nub_memcpy(destination: ^u8, source: ^u8, count: u64): ^u8
|
||||
nub_memcpy:
|
||||
mov rcx, rdx
|
||||
rep movsb
|
||||
|
||||
.text
|
||||
.globl nub_memset
|
||||
# func nub_memset(destination: ^u8, value: i8, count: u64): ^u8
|
||||
nub_memset:
|
||||
push rdi
|
||||
mov rcx, rdx
|
||||
mov al, sil
|
||||
test rcx, rcx
|
||||
jz memset_done
|
||||
memset_loop:
|
||||
mov BYTE PTR [rdi], al
|
||||
inc rdi
|
||||
dec rcx
|
||||
jnz memset_loop
|
||||
memset_done:
|
||||
pop rax
|
||||
ret
|
||||
Reference in New Issue
Block a user