Add .register directive for gcc3.

Enforce in hardware the non-use of floating point in the kernel.
This commit is contained in:
Jake Burkholder 2001-12-29 07:22:27 +00:00
parent 2ba03674d0
commit 22a59ab32d
2 changed files with 16 additions and 4 deletions

View File

@ -33,6 +33,8 @@
#include "assym.s"
.register %g2,#ignore
.globl kernbase
.set kernbase,KERNBASE
@ -48,6 +50,7 @@ ENTRY(_start)
wrpr %g0, 1, %cwp
wrpr %g0, 0, %cleanwin
wrpr %g0, 0, %pil
wr %g0, 0, %fprs
SET(kstack0 + KSTACK_PAGES * PAGE_SIZE - PCB_SIZEOF, %l0, %o0)
sub %o0, SPOFF + CCFSZ, %sp
@ -60,6 +63,10 @@ ENTRY(_start)
! NOTREACHED
END(_start)
/*
* Signal trampoline, copied out to user stack. Must be 16 byte aligned or
* the argv and envp pointers can become misaligned.
*/
ENTRY(sigcode)
call %o4
nop
@ -68,8 +75,7 @@ ENTRY(sigcode)
ta %xcc, 9
mov SYS_exit, %g1
ta %xcc, 9
1: b %xcc, 1b
nop
illtrap
.align 16
esigcode:
END(sigcode)

View File

@ -33,6 +33,8 @@
#include "assym.s"
.register %g2,#ignore
.globl kernbase
.set kernbase,KERNBASE
@ -48,6 +50,7 @@ ENTRY(_start)
wrpr %g0, 1, %cwp
wrpr %g0, 0, %cleanwin
wrpr %g0, 0, %pil
wr %g0, 0, %fprs
SET(kstack0 + KSTACK_PAGES * PAGE_SIZE - PCB_SIZEOF, %l0, %o0)
sub %o0, SPOFF + CCFSZ, %sp
@ -60,6 +63,10 @@ ENTRY(_start)
! NOTREACHED
END(_start)
/*
* Signal trampoline, copied out to user stack. Must be 16 byte aligned or
* the argv and envp pointers can become misaligned.
*/
ENTRY(sigcode)
call %o4
nop
@ -68,8 +75,7 @@ ENTRY(sigcode)
ta %xcc, 9
mov SYS_exit, %g1
ta %xcc, 9
1: b %xcc, 1b
nop
illtrap
.align 16
esigcode:
END(sigcode)