27 lines
515 B
PHP
27 lines
515 B
PHP
input_fd dq -1
|
|
input dq -1
|
|
file_stat s_stat
|
|
|
|
;;; The input filename should be in rdi
|
|
load_file:
|
|
mov r8, rdi
|
|
;; Determine the file size of the input file
|
|
stat r8, file_stat
|
|
|
|
;; Open a file descriptor for the input file
|
|
open r8, 0
|
|
mov [input_fd], rax
|
|
|
|
;; Map the input file into memory
|
|
mmap 0, [file_stat.st_size], PROT_READ, MAP_PRIVATE, [input_fd], 0
|
|
mov [input], rax
|
|
|
|
;; Close the input file
|
|
close [input_fd]
|
|
ret
|
|
|
|
unload_file:
|
|
;; Unmap the mapped file
|
|
munmap [input], [file_stat.st_size]
|
|
|
|
ret |