mirror of
https://github.com/odin-lang/Odin.git
synced 2026-04-19 21:10:30 +00:00
add mremap + flags
This commit is contained in:
@@ -1524,18 +1524,26 @@ AT_REMOVEDIR :: uintptr(0x200)
|
||||
AT_SYMLINK_FOLLOW :: uintptr(0x400)
|
||||
AT_SYMLINK_NOFOLLOW :: uintptr(0x100)
|
||||
|
||||
PROT_NONE :: 0x0
|
||||
PROT_READ :: 0x1
|
||||
PROT_WRITE :: 0x2
|
||||
PROT_EXEC :: 0x4
|
||||
// mmap flags
|
||||
PROT_NONE :: 0x0
|
||||
PROT_READ :: 0x1
|
||||
PROT_WRITE :: 0x2
|
||||
PROT_EXEC :: 0x4
|
||||
PROT_GROWSDOWN :: 0x01000000
|
||||
PROT_GROWSUP :: 0x02000000
|
||||
PROT_GROWSUP :: 0x02000000
|
||||
|
||||
MAP_FIXED :: 0x1
|
||||
MAP_PRIVATE :: 0x2
|
||||
MAP_SHARED :: 0x4
|
||||
MAP_ANONYMOUS :: 0x20
|
||||
MAP_FIXED :: 0x10
|
||||
MAP_SHARED :: 0x1
|
||||
MAP_PRIVATE :: 0x2
|
||||
MAP_SHARED_VALIDATE :: 0x3
|
||||
MAP_ANONYMOUS :: 0x20
|
||||
|
||||
// mremap flags
|
||||
MREMAP_MAYMOVE :: 1
|
||||
MREMAP_FIXED :: 2
|
||||
MREMAP_DONTUNMAP :: 4
|
||||
|
||||
// madvise flags
|
||||
MADV_NORMAL :: 0
|
||||
MADV_RANDOM :: 1
|
||||
MADV_SEQUENTIAL :: 2
|
||||
@@ -1815,6 +1823,10 @@ sys_mmap :: proc "contextless" (addr: rawptr, length: uint, prot, flags, fd: int
|
||||
return int(intrinsics.syscall(SYS_mmap, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), offset))
|
||||
}
|
||||
|
||||
sys_mremap :: proc "contextless" (addr: rawptr, old_length, new_length: uint, flags: int, new_addr: rawptr = nil) -> int {
|
||||
return int(intrinsics.syscall(SYS_mremap, uintptr(addr), uintptr(old_length), uintptr(new_length), uintptr(flags), uintptr(new_addr)))
|
||||
}
|
||||
|
||||
sys_munmap :: proc "contextless" (addr: rawptr, length: uint) -> int {
|
||||
return int(intrinsics.syscall(SYS_munmap, uintptr(addr), uintptr(length)))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user