summary |
tags |
clone url |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
f568a70)
SCCS-vsn: sys/tahoe/tahoe/locore.s 1.10
-/* locore.s 1.9 86/07/20 */
+/* locore.s 1.10 86/11/09 */
#include "../tahoe/mtpr.h"
#include "../tahoe/trap.h"
#include "../tahoe/mtpr.h"
#include "../tahoe/trap.h"
pushl $0;
SAVE_FPSTAT(8)
TRAP(TRCTRAP)
pushl $0;
SAVE_FPSTAT(8)
TRAP(TRCTRAP)
bitl $PSL_CURMOD,4(sp)
jeql align_excp # Can't emulate for kernel mode !
jbr non_aligned # Only emulated for user mode.
bitl $PSL_CURMOD,4(sp)
jeql align_excp # Can't emulate for kernel mode !
jbr non_aligned # Only emulated for user mode.
TRAP(SEGFLT)
SCBVEC(fpm): # Floating Point Emulation
TRAP(SEGFLT)
SCBVEC(fpm): # Floating Point Emulation
CHECK_SFE(16)
SAVE_FPSTAT(16)
incl _cnt+V_FPE # count emulation traps
callf $4,_fpemulate
REST_FPSTAT
CHECK_SFE(16)
SAVE_FPSTAT(16)
incl _cnt+V_FPE # count emulation traps
callf $4,_fpemulate
REST_FPSTAT
moval 8(sp),sp # Pop operand
tstl (sp) # Stack= PSL, PC, return_code
jneq _Xarithtrap # If not OK, emulate F.P. exception
moval 8(sp),sp # Pop operand
tstl (sp) # Stack= PSL, PC, return_code
jneq _Xarithtrap # If not OK, emulate F.P. exception
/* trap(), syscall(), and fpemulate() save r0-r12 in the entry mask */
orw2 $0x01fff,_trap
orw2 $0x01fff,_syscall
/* trap(), syscall(), and fpemulate() save r0-r12 in the entry mask */
orw2 $0x01fff,_trap
orw2 $0x01fff,_syscall
orw2 $0x01ffc,_panic # for debugging (no r0|r1)
callf $4,_fixctlrmask # setup for autoconfig
/* initialize system page table: scb and int stack writeable */
orw2 $0x01ffc,_panic # for debugging (no r0|r1)
callf $4,_fixctlrmask # setup for autoconfig
/* initialize system page table: scb and int stack writeable */
subl3 r0,r1,r0; ret # return (end - cp);
#endif
subl3 r0,r1,r0; ret # return (end - cp);
#endif
#include "../tahoealign/align.h"
.globl _alignment
#include "../tahoealign/align.h"
.globl _alignment