File:  [Power 6/32 Unix Tahoe 4.2BSD] / cci / d / memman / trap.s
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Sun Jul 28 12:24:19 2019 UTC (7 years ago) by root
Branches: bsd, MAIN
CVS tags: v12b, v121, HEAD
Power 6/32 Unix version 1.2b

LL0:
	.data
	.text
	.align	1
	.globl	_XTrap
_XTrap:
	.word	L12
 # 
 # XTrap(code)
 # long code;
 # {	register long r12, r11, r10, r9;
	jbr 	L14
L15:
 # 	long tpc, tpsl;
 # 
 # 	writes("\n** Unexpected exception type : ");
	.data	1
L17:
	.ascii	"\12** Unexpected exception type : \0"
	.text
	pushl	$L17
	callf	$8,_writes
 # 	writeh(code); writec('\n');
	pushl	4(fp)
	callf	$8,_writeh
	pushl	$10
	callf	$8,_writec
 # 	asm("movl 8(fp),r12");		/* par 0 */
movl 8(fp),r12
 # 	asm("movl 12(fp),r11");		/* par 1 */
movl 12(fp),r11
 # 	asm("movl 16(fp),r10");		/* par 2 */
movl 16(fp),r10
 # 	asm("movl 20(fp),r9");		/* par 3 */
movl 20(fp),r9
 # 
 # 	if ((code==0x20) || (code==0x2f) || (code==0x30)) {
	cmpl	4(fp),$32
	jeql	L9999
	cmpl	4(fp),$47
	jeql	L9999
	cmpl	4(fp),$48
	jneq	L20
L9999:
 # 		writes("** Par0 :  "); writeh(r12); writec('\n');
	.data	1
L21:
	.ascii	"** Par0 :  \0"
	.text
	pushl	$L21
	callf	$8,_writes
	pushl	r12
	callf	$8,_writeh
	pushl	$10
	callf	$8,_writec
 # 		writes("** Par1 :  "); writeh(r11); writec('\n');
	.data	1
L22:
	.ascii	"** Par1 :  \0"
	.text
	pushl	$L22
	callf	$8,_writes
	pushl	r11
	callf	$8,_writeh
	pushl	$10
	callf	$8,_writec
 # 		tpc = r10;
	movl	r10,-56(fp)
 # 		tpsl = r9; 
	movl	r9,-60(fp)
 # 		}
 # 	   else 	{
	jbr 	L23
L20:
 # 		if ((code==0x34) || (code==0x2b))  {
	cmpl	4(fp),$52
	jeql	L9998
	cmpl	4(fp),$43
	jneq	L24
L9998:
 # 			writes("** Par. :  "); writeh(r12); writec('\n');
	.data	1
L25:
	.ascii	"** Par. :  \0"
	.text
	pushl	$L25
	callf	$8,_writes
	pushl	r12
	callf	$8,_writeh
	pushl	$10
	callf	$8,_writec
 # 			tpc = r11;
	movl	r11,-56(fp)
 # 			tpsl = r10;
	movl	r10,-60(fp)
 # 			}
 # 		    else 	{
	jbr 	L26
L24:
 # 			tpc = r12;
	movl	r12,-56(fp)
 # 			tpsl = r11; }
	movl	r11,-60(fp)
L26:
 # 		}
L23:
 # 	writes("** PC   :  "); writeh(tpc); writec('\n');
	.data	1
L27:
	.ascii	"** PC   :  \0"
	.text
	pushl	$L27
	callf	$8,_writes
	pushl	-56(fp)
	callf	$8,_writeh
	pushl	$10
	callf	$8,_writec
 # 	writes("** PSL  :  "); writeh(tpsl); writec('\n');
	.data	1
L28:
	.ascii	"** PSL  :  \0"
	.text
	pushl	$L28
	callf	$8,_writes
	pushl	-60(fp)
	callf	$8,_writeh
	pushl	$10
	callf	$8,_writec
 # 	asm("halt");
halt
 # }
	ret
	.set	L12,0x1e00
L14:
	subl3	$60,fp,sp
	jbr 	L15
	.data

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.