diff options
Diffstat (limited to 'prologue.snippet.asm')
-rw-r--r-- | prologue.snippet.asm | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/prologue.snippet.asm b/prologue.snippet.asm new file mode 100644 index 0000000..e706651 --- /dev/null +++ b/prologue.snippet.asm @@ -0,0 +1,40 @@ +global _main + +extern _calloc +extern _fflush +extern _free +extern _getchar +extern _malloc +extern _printf +extern _putchar +extern _snprintf +extern _write + +default rel + +section .text + +_main: + push rbp ; PROLOGUE + mov rbp, rsp + push rbx + push r12 + mov edi, PARAMS_MEMSIZE + call _malloc + cmp rax, 0 + jz nomem + mov rbx, rax ;bufp + mov [buf], rax ;buf + +%ifdef HEATMAP + mov edi, SOURCE_LENGTH + mov esi, 4 + call _calloc + cmp rax, 0 + jz nomem + mov r12, rax +%endif + +; rbx = bufp +; r12 = heatmap + |