diff options
author | iximeow <me@iximeow.net> | 2017-05-30 01:47:15 -0700 |
---|---|---|
committer | iximeow <me@iximeow.net> | 2017-05-30 01:47:15 -0700 |
commit | 9c7462d90cf6c48b0cd82cbf3ae4e8a458ed77f7 (patch) | |
tree | 79dc9ca500d38315d8a588349cc049b5f5d35fc0 /source/files/assembly/x86/perf/array.asm | |
parent | 19e231830858a14a4acbb59204f26a0ea0675de6 (diff) |
add a bunch of things
Diffstat (limited to 'source/files/assembly/x86/perf/array.asm')
-rw-r--r-- | source/files/assembly/x86/perf/array.asm | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/source/files/assembly/x86/perf/array.asm b/source/files/assembly/x86/perf/array.asm new file mode 100644 index 0000000..8ffab7c --- /dev/null +++ b/source/files/assembly/x86/perf/array.asm @@ -0,0 +1,33 @@ +section .text +global _start: + call do_work + mov rax, 60 + mov rdi, r13 + syscall + +do_work: + mov r14, arrrrrr + xor r15, r15 + xor r13, r13 + jmp tst + nop +lp: + movsxd rax, r15d + lea rax, [r14 + rax + 0x8] + movsx rax, byte [rax] + mov byte [rsp + 0x18], al + movzx rcx, al + and ecx, 0xf + mov rax, r13 + add eax, ecx + inc r15 + mov r13, rax +tst: + movsxd rax, dword [r14] + cmp r15, rax + jl lp + ret + +arrrrrr: + dd 134217728 + times 134217728 db 57h |