diff --git a/as/stdlib.c b/as/stdlib.c index 95b4e39..34916ed 100644 --- a/as/stdlib.c +++ b/as/stdlib.c @@ -128,6 +128,7 @@ void *malloc(int size) if (malloc_pointer_head == 0) { char *p = brk(0); int size = 0x32000000; + brk(p + size); // printf("init %d\n", p); malloc_pointer_head = p; malloc_remaining_size = size; diff --git a/cc/stdlib.c b/cc/stdlib.c index 36cafa2..beb334e 100644 --- a/cc/stdlib.c +++ b/cc/stdlib.c @@ -128,6 +128,7 @@ void *malloc(int size) if (malloc_pointer_head == 0) { char *p = brk(0); int size = 0x32000000; + brk(p + size); // printf("init %d\n", p); malloc_pointer_head = p; malloc_remaining_size = size; diff --git a/ld/stdlib.c b/ld/stdlib.c index 9bbadc6..9dc40b7 100644 --- a/ld/stdlib.c +++ b/ld/stdlib.c @@ -128,6 +128,7 @@ void *malloc(int size) if (malloc_pointer_head == 0) { char *p = brk(0); int size = 0x32000000; + brk(p + size); // printf("init %d\n", p); malloc_pointer_head = p; malloc_remaining_size = size;