plan 9 kernel history: overview | file list | diff list

1991/0623/pc/l.s (diff list | history)

1991/0623/sys/src/9/pc/l.s:1,101991/0625/sys/src/9/pc/l.s:1,26 (short | long | prev | next)
1991/0625    
#include "mem.h" 
1991/0614    
 
1991/0625    
GLOBL	gdtptr(SB),$6 
 
	DATA	gdtptr+0(SB)/2, $(6*8) 
	DATA	gdtptr+2(SB)/4, $gdt(SB) 
 
1991/0614    
/* 
1991/0622    
 *  boot processor 
1991/0614    
 */ 
TEXT	start(SB),$0 
 
	/* clear bss */ 
1991/0625    
	CLI			/* disable interrupts */ 
	MOVW	$NULLSEL,IDTR	/* force shutdown on error */ 
 
	/* point data segment at low memory */ 
	XORL	AX,AX 
	MOVW	AX,DS 
 
	/* load gdt address (valid after paging) */ 
	LEAL	gdtptr(SB),AX 
	MOVL	-KZERO(AX),GDTR 
 
1991/0614    
	CALL	main(SB) 
	/* never returns */ 
 
1991/0623/sys/src/9/pc/l.s:116,1341991/0625/sys/src/9/pc/l.s:132,143
1991/0623    
 */ 
1991/0622    
alltrap: 
1991/0623    
 
1991/0625    
	PUSHL	DS 
1991/0622    
	PUSHAL 
1991/0625    
	MOVL	$KDSEL, AX 
	MOVW	AX, DS 
1991/0614    
	CALL	trap(SB) 
1991/0622    
	POPAL 
1991/0623    
	ADDL	$#8,SP		/* pop the trap and error codes */ 
1991/0625    
	POPL	DS 
	ADDL	$8,SP		/* pop the trap and error codes */ 
1991/0622    
	IRETL 
1991/0619    
                 
1991/0623    
/* 
 *  stubs 
 */ 
1991/0619    
TEXT	main(SB),$0 
1991/0623    
                 
	RET 
                 
TEXT	trap(SB),$0 
1991/0619    
                 
	RET 


source code copyright © 1990-2005 Lucent Technologies; see license
Plan 9 distribution
comments to russ cox (rsc@swtch.com)