Very simple change to avoid a complete register save/restore pair when handling

ASTs after a syscall.
This commit is contained in:
mycroft 1994-09-09 03:58:38 +00:00
parent cf04bbff56
commit f66f685ad2

View File

@ -38,7 +38,7 @@
* from: Utah $Hdr: locore.s 1.66 92/12/22$
*
* from: @(#)locore.s 8.6 (Berkeley) 5/27/94
* $Id: locore.s,v 1.28 1994/09/09 03:11:31 mycroft Exp $
* $Id: locore.s,v 1.29 1994/09/09 03:58:38 mycroft Exp $
*/
/*
@ -402,11 +402,13 @@ _trap0:
movl d0,sp@- | push syscall number
jbsr _syscall | handle it
addql #4,sp | pop syscall arg
tstl _astpending
jne Lrei2
movl sp@(FR_SP),a0 | grab and restore
movl a0,usp | user SP
moveml sp@+,#0x7FFF | restore most registers
addql #8,sp | pop SP and stack adjust
jra rei | all done
jra Lchksir | all done
/*
* Routines for traps 1 and 2. The meaning of the two traps depends
@ -714,6 +716,7 @@ Lrei1:
moveml #0xFFFF,sp@- | save all registers
movl usp,a1 | including
movl a1,sp@(FR_SP) | the users SP
Lrei2:
clrl sp@- | VA == none
clrl sp@- | code == none
movl #T_ASTFLT,sp@- | type == async system trap