]> git.corax.cc Git - corax/commitdiff
libc: Remove brk() and sbrk() syscalls
authorMatthias Kruk <m@m10k.eu>
Sat, 8 Aug 2020 08:31:40 +0000 (17:31 +0900)
committerMatthias Kruk <m@m10k.eu>
Sat, 8 Aug 2020 08:31:40 +0000 (17:31 +0900)
include/unistd.h
libc/syscall.S

index 5011b687ba1c389c1d572450b46040e623037772..211d3d76f0bdbab348c051a38db0d89241ddcd44 100644 (file)
@@ -10,7 +10,5 @@ extern pid_t vfork(void);
 extern int execfve(void*, const char**, const char**);
 extern int execeve(void*, size_t, char *const [], char *const []);
 extern unsigned int sleep(unsigned int);
-extern int brk(void*);
-extern void* sbrk(int);
 
 #endif /* _UNISTD_H */
index d662ea463b294ef9ac17f050702287d486573d0b..832db24dc190e4c5bb08be92cb9bd5e249a19a62 100644 (file)
@@ -15,8 +15,6 @@
        .global vfork
        .global _exit
        .global execeve
-       .global brk
-       .global sbrk
        .global mmap
        .global munmap
        .global sigaction
@@ -99,34 +97,6 @@ execeve:
        popl    %ebx
        ret
 
-brk:
-        pushl   $0
-        call    sbrk
-
-        /*
-         * The eax register contains the current sbrk, 8(%esp) the desired sbrk.
-         * We have to pass the difference to sbrk() to increase or decrease it.
-         */
-        movl    8(%esp), %edx
-        subl    %eax, %edx
-
-        /* sbrk(8(%esp) - sbrk(0)) */
-        movl    %edx, (%esp)
-        call    sbrk
-
-        addl    $4, %esp
-        ret
-
-sbrk:
-        pushl   %ebx
-
-        movl    $SYS_SBRK, %eax
-        movl    8(%esp), %ebx
-        int    $SYSCALL_POSIX
-
-        popl    %ebx
-        ret
-
 mmap:
         pushl   %ebx
         pushl   %ebp