summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Saab <ps@FreeBSD.org>2000-05-18 08:01:16 +0000
committerPaul Saab <ps@FreeBSD.org>2000-05-18 08:01:16 +0000
commit1149f976ef7c13de0205ace85e83270e8da8f45f (patch)
treec71e2790c16c6051ea544bb69df663d511510199
parent4baef561641b1e9932796c0a30f2e284cb02e83e (diff)
Notes
-rw-r--r--lib/libstand/alpha/_setjmp.S4
-rw-r--r--lib/libstand/sbrk.c5
2 files changed, 7 insertions, 2 deletions
diff --git a/lib/libstand/alpha/_setjmp.S b/lib/libstand/alpha/_setjmp.S
index 96be5ec5dfef..15879785a188 100644
--- a/lib/libstand/alpha/_setjmp.S
+++ b/lib/libstand/alpha/_setjmp.S
@@ -60,6 +60,7 @@ LEAF(_setjmp, 1)
/* Too bad we can't check if we actually used FP */
ldiq t0, 1
stq t0, (36 * 8)(a0) /* say we've used FP. */
+#if 0
stt fs0, ((2 + 37) * 8)(a0) /* saved bits of sc_fpregs */
stt fs1, ((3 + 37) * 8)(a0)
stt fs2, ((4 + 37) * 8)(a0)
@@ -71,6 +72,7 @@ LEAF(_setjmp, 1)
mf_fpcr ft0 /* get FP control reg */
stt ft0, (69 * 8)(a0) /* and store it in sc_fpcr */
stq zero, (70 * 8)(a0) /* FP software control XXX */
+#endif
stq zero, (71 * 8)(a0) /* sc_reserved[0] */
stq zero, (72 * 8)(a0) /* sc_reserved[1] */
stq zero, (73 * 8)(a0) /* sc_xxx[0] */
@@ -99,6 +101,7 @@ LEAF(_longjmp, 2)
ldq s6, ((15 + 4) * 8)(a0)
/* ldq ra, ((26 + 4) * 8)(a0) set above */
ldq sp, ((30 + 4) * 8)(a0)
+#if 0
ldt fs0, ((2 + 37) * 8)(a0) /* saved bits of sc_fpregs */
ldt fs1, ((3 + 37) * 8)(a0)
ldt fs2, ((4 + 37) * 8)(a0)
@@ -109,6 +112,7 @@ LEAF(_longjmp, 2)
ldt fs7, ((9 + 37) * 8)(a0)
ldt ft0, (69 * 8)(a0) /* get sc_fpcr */
mt_fpcr ft0 /* and restore it. */
+#endif
mov a1, v0 /* return second arg */
RET
diff --git a/lib/libstand/sbrk.c b/lib/libstand/sbrk.c
index fce03cf2a29f..326311130c4f 100644
--- a/lib/libstand/sbrk.c
+++ b/lib/libstand/sbrk.c
@@ -39,8 +39,9 @@ static void *heapbase;
void
setheap(void *base, void *top)
{
- heapbase = base;
- maxheap = top - base;
+ /* Align start address to 16 bytes for the malloc code. Sigh. */
+ heapbase = (void *)(((uintptr_t)base + 15) & ~15);
+ maxheap = top - heapbase;
}
char *