diff options
| author | Paul Saab <ps@FreeBSD.org> | 2000-05-18 08:01:16 +0000 |
|---|---|---|
| committer | Paul Saab <ps@FreeBSD.org> | 2000-05-18 08:01:16 +0000 |
| commit | 1149f976ef7c13de0205ace85e83270e8da8f45f (patch) | |
| tree | c71e2790c16c6051ea544bb69df663d511510199 | |
| parent | 4baef561641b1e9932796c0a30f2e284cb02e83e (diff) | |
Notes
| -rw-r--r-- | lib/libstand/alpha/_setjmp.S | 4 | ||||
| -rw-r--r-- | lib/libstand/sbrk.c | 5 |
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 * |
