commit c89ab64d18b7448a0407244b67cfc11f7d6b85f1
parent 47156bbbbd6da382601e384354bb5a07a526c19f
Author: Roberto E. Vargas Caballero <k0ga@shike2.com>
Date:   Mon, 28 Oct 2019 23:17:57 +0100
[libc] Simplify _getheap() in posix
Almost all the POSIX system have the symbol end, so the simplest way
to define _getheap is to use end. If some system does not support
end then it can use _brk() or some other form.
Diffstat:
13 files changed, 15 insertions(+), 36 deletions(-)
diff --git a/src/libc/arch/amd64/dragonfly/_getheap.c b/src/libc/arch/amd64/dragonfly/_getheap.c
@@ -0,0 +1 @@
+#include "../../posix/_getheap.c"
diff --git a/src/libc/arch/amd64/dragonfly/_getheap.s b/src/libc/arch/amd64/dragonfly/_getheap.s
@@ -1,6 +0,0 @@
-	.file	"_getheap.s"
-
-	.globl	_getheap
-_getheap:
-	movq	$end,%rax
-	retq
diff --git a/src/libc/arch/amd64/linux/_getheap.c b/src/libc/arch/amd64/linux/_getheap.c
@@ -0,0 +1 @@
+#include "../../posix/_getheap.c"
diff --git a/src/libc/arch/amd64/linux/_getheap.s b/src/libc/arch/amd64/linux/_getheap.s
@@ -1,6 +0,0 @@
-	.file	"_getheap.s"
-
-	.globl	_getheap
-_getheap:
-	movq	$0,%rax
-	jmp	_brk
diff --git a/src/libc/arch/amd64/netbsd/_getheap.c b/src/libc/arch/amd64/netbsd/_getheap.c
@@ -0,0 +1 @@
+#include "../../posix/_getheap.c"
diff --git a/src/libc/arch/amd64/netbsd/_getheap.s b/src/libc/arch/amd64/netbsd/_getheap.s
@@ -1,6 +0,0 @@
-	.file	"_getheap.s"
-
-	.globl	_getheap
-_getheap:
-	movq	$end,%rax
-	retq
diff --git a/src/libc/arch/amd64/openbsd/_getheap.c b/src/libc/arch/amd64/openbsd/_getheap.c
@@ -0,0 +1 @@
+#include "../../posix/_getheap.c"
diff --git a/src/libc/arch/amd64/openbsd/_getheap.s b/src/libc/arch/amd64/openbsd/_getheap.s
@@ -1,6 +0,0 @@
-	.file	"_getheap.s"
-
-	.globl	_getheap
-_getheap:
-	movq	$end,%rax
-	retq
diff --git a/src/libc/arch/arm32/linux/_getheap.c b/src/libc/arch/arm32/linux/_getheap.c
@@ -0,0 +1 @@
+#include "../../posix/_getheap.c"
diff --git a/src/libc/arch/arm32/linux/_getheap.s b/src/libc/arch/arm32/linux/_getheap.s
@@ -1,6 +0,0 @@
-	.file	"_getheap.s"
-
-	.globl	_getheap
-_getheap:
-	mov	r0,#0
-	b	_brk
diff --git a/src/libc/arch/arm64/linux/_getheap.c b/src/libc/arch/arm64/linux/_getheap.c
@@ -0,0 +1 @@
+#include "../../posix/_getheap.c"
diff --git a/src/libc/arch/arm64/linux/_getheap.s b/src/libc/arch/arm64/linux/_getheap.s
@@ -1,6 +0,0 @@
-	.file	"_getheap.s"
-
-	.globl	_getheap
-_getheap:
-	mov	x0,#0
-	b	_brk
diff --git a/src/libc/arch/posix/_getheap.c b/src/libc/arch/posix/_getheap.c
@@ -0,0 +1,9 @@
+#include "../../libc.h"
+
+void *
+_getheap(void)
+{
+	extern char end[];
+
+	return end;
+}