Google
 

Trailing-Edge - PDP-10 Archives - SRI_NIC_PERM_FS_1_19910112 - c/old/kc/cc7.fai
There are no other files named cc7.fai in the archive.
	TITLE	cc7
	.LIBRARY C:CLIB
	EXTERN	.START
initsy:
	ADJSP	17,3
	SETZB	2,maxsym
	MOVEM	2,minsym
	MOVEM	2,maxlab
	MOVEI	4,3777
	MOVEM	4,minloc
	SETZB	5,-2(17)
$3::
	MOVE	7,-2(17)
	CAIL	7,20000
	JRST	$2
	SETZ	10,
	MOVEI	11,htable
	ADD	11,-2(17)
	MOVEM	10,(11)
$1::
	MOVE	13,-2(17)
	AOS	-2(17)
	JRST	$3
$2::
	SETZB	12,-2(17)
$6::
	MOVE	15,-2(17)
	CAIL	15,1000
	JRST	$5
	SETZ	2,
	MOVEI	3,ttable
	ADD	3,-2(17)
	MOVEM	2,(3)
$4::
	MOVE	5,-2(17)
	AOS	-2(17)
	JRST	$6
$5::
	SETZB	4,-2(17)
$11::
	MOVE	7,-2(17)
	CAIL	7,12
	JRST	$10
	MOVE	11,-2(17)
	ADDI	11,40
	MOVE	13,-2(17)
	IMULI	13,3
	MOVEM	11,types(13)
	SETZ	10,
	MOVE	3,-2(17)
	IMULI	3,3
	MOVEM	10,types+1(3)
	SETZ	2,
	MOVE	14,-2(17)
	IMULI	14,3
	MOVEM	2,types+2(14)
$7::
	MOVE	15,-2(17)
	AOS	-2(17)
	JRST	$11
$10::
	MOVEI	12,11
	MOVEM	12,maxtyp
	MOVEI	4,45
	MOVEI	5,types
	MOVEM	4,17(5)
	SETZ	6,
	MOVEI	7,types
	MOVEM	6,20(7)
	MOVEI	3,types
	ADDI	3,17
	MOVEM	3,deflab
	MOVEI	10,types
	MOVEM	10,deftyp
	MOVEI	13,types
	ADDI	13,3
	MOVEM	13,charty
	MOVEI	14,types
	ADDI	14,30
	MOVEM	14,scalar
	MOVEI	2,1
	SETZB	4,-2(17)
	IMULI	4,3
	MOVEM	2,types+1(4)
	MOVEI	5,1
	MOVEI	12,types
	MOVEM	5,4(12)
	MOVEI	15,1
	MOVEI	3,types
	MOVEM	15,23(3)
	MOVEI	6,1
	MOVEI	7,types
	MOVEM	6,26(7)
	MOVEI	10,1
	MOVEI	11,types
	MOVEM	10,7(11)
	MOVEI	2,1
	MOVEI	4,types
	MOVEM	2,12(4)
	MOVEI	13,1
	MOVEI	14,types
	MOVEM	13,31(14)
	SETZB	3,-2(17)
	MOVEI	5,rw
	MOVEM	5,-1(17)
$12::
	MOVE	7,@-1(17)
	JUMPE	7,$13
	MOVE	2,@-1(17)
	PUSH	17,2
	PUSHJ	17,creats
	ADJSP	17,-1
	MOVEM	0,(17)
	MOVEI	2,1
	MOVE	4,(17)
	MOVEM	2,3(4)
	MOVE	5,-1(17)
	MOVE	3,1(5)
	MOVE	7,(17)
	MOVEM	3,4(7)
	MOVE	10,-1(17)
	MOVE	6,2(10)
	MOVE	12,(17)
	MOVEM	6,5(12)
	AOS	-2(17)
	MOVE	13,-2(17)
	IMULI	13,3
	ADDI	13,rw
	MOVEM	13,-1(17)
	JRST	$12
$13::
	MOVE	14,maxsym
	MOVEM	14,minsym
	ADJSP	17,-3
	POPJ	17,
findsy:
	ADJSP	17,3
	PUSH	17,-4(17)
	PUSHJ	17,hash
	ADJSP	17,-1
	MOVEM	0,-2(17)
	SETZB	2,0(17)
$14::
	MOVEI	3,htable
	ADD	3,-2(17)
	MOVE	4,(3)
	MOVEM	4,-1(17)
	JUMPE	4,$15
	PUSH	17,-4(17)
	MOVE	4,-2(17)
	HRLI	4,331100
	PUSH	17,4
	PUSHJ	17,symcmp
	ADJSP	17,-2
	JUMPE	0,$16
	MOVE	3,-1(17)
	MOVEM	3,(17)
$16::
	MOVE	4,-2(17)
	ADDI	4,1
	ANDI	4,17777
	MOVEM	4,-2(17)
	JRST	$14
$15::
	MOVE	0,(17)
	ADJSP	17,-3
	POPJ	17,
freesy:
	ADJSP	17,4
	MOVE	3,maxsym
	SUBI	3,1
	IMULI	3,6
	ADDI	3,symbol
	MOVEM	3,(17)
	MOVE	3,-5(17)
	HRLI	3,331100
	PUSH	17,3
	PUSHJ	17,hash
	ADJSP	17,-1
	MOVEM	0,-1(17)
	MOVEM	0,-3(17)
$17::
	MOVE	3,-3(17)
	ADDI	3,1
	ANDI	3,17777
	MOVEM	3,-2(17)
	MOVE	4,-2(17)
	CAMN	4,-1(17)
	JRST	$20
	MOVEI	2,htable
	ADD	2,-3(17)
	MOVE	5,(2)
	CAME	5,-5(17)
	JRST	$21
	MOVEI	6,htable
	ADD	6,-2(17)
	MOVE	7,(6)
	JUMPN	7,$22
	SETZ	11,
	JRST	$23
$22::
	MOVEI	11,symbol
$23::
	MOVEI	13,htable
	ADD	13,-3(17)
	MOVEM	11,(13)
	MOVE	15,-5(17)
	CAME	15,(17)
	JRST	$24
	SOS	maxsym
	MOVE	4,maxsym
$24::
	ADJSP	17,-4
	POPJ	17,
$21::
	MOVE	14,-2(17)
	MOVEM	14,-3(17)
	JRST	$17
$20::
	ADJSP	17,-4
	POPJ	17,
creats:
	ADJSP	17,2
	PUSH	17,-3(17)
	PUSHJ	17,findha
	ADJSP	17,-1
	MOVEM	0,(17)
	MOVE	3,maxsym
	AOS	maxsym
	IMULI	3,6
	ADDI	3,symbol
	MOVEI	2,htable
	ADD	2,(17)
	MOVEM	3,(2)
	MOVEM	3,-1(17)
	PUSH	17,-3(17)
	MOVE	4,-2(17)
	HRLI	4,331100
	PUSH	17,4
	PUSHJ	17,symcpy
	ADJSP	17,-2
	SETZ	2,
	MOVE	4,-1(17)
	MOVEM	2,4(4)
	MOVE	5,-1(17)
	MOVEM	2,5(5)
	SETZ	3,
	MOVE	7,-1(17)
	MOVEM	3,3(7)
	MOVE	0,-1(17)
	ADJSP	17,-2
	POPJ	17,
	ADJSP	17,-2
	POPJ	17,
creatl:
	ADJSP	17,2
	PUSH	17,-3(17)
	PUSHJ	17,findha
	ADJSP	17,-1
	MOVEM	0,(17)
	MOVE	3,minloc
	IMULI	3,6
	ADDI	3,symbol
	MOVEI	2,htable
	ADD	2,(17)
	MOVEM	3,(2)
	MOVEM	3,-1(17)
	MOVE	5,minloc
	SOS	minloc
	PUSH	17,-3(17)
	MOVE	4,-2(17)
	HRLI	4,331100
	PUSH	17,4
	PUSHJ	17,symcpy
	ADJSP	17,-2
	SETZ	2,
	MOVE	4,-1(17)
	MOVEM	2,4(4)
	MOVE	5,-1(17)
	MOVEM	2,5(5)
	SETZ	3,
	MOVE	7,-1(17)
	MOVEM	3,3(7)
	MOVE	0,-1(17)
	ADJSP	17,-2
	POPJ	17,
	ADJSP	17,-2
	POPJ	17,
copysy:
	MOVE	3,-2(17)
	HRLI	3,331100
	PUSH	17,3
	MOVE	4,-2(17)
	HRLI	4,331100
	PUSH	17,4
	PUSHJ	17,symcpy
	ADJSP	17,-2
	MOVE	3,-2(17)
	MOVE	2,3(3)
	MOVE	5,-1(17)
	MOVEM	2,3(5)
	MOVE	6,-2(17)
	MOVE	4,4(6)
	MOVE	10,-1(17)
	MOVEM	4,4(10)
	MOVE	11,-2(17)
	MOVE	7,5(11)
	MOVE	13,-1(17)
	MOVEM	7,5(13)
	POPJ	17,
findha:
	ADJSP	17,1
	PUSH	17,-2(17)
	PUSHJ	17,hash
	ADJSP	17,-1
	MOVEM	0,(17)
$25::
	MOVEI	2,htable
	ADD	2,(17)
	MOVE	3,(2)
	JUMPE	3,$26
	MOVE	6,(17)
	ADDI	6,1
	ANDI	6,17777
	MOVEM	6,(17)
	JRST	$25
$26::
	MOVE	0,(17)
	ADJSP	17,-1
	POPJ	17,
	ADJSP	17,-1
	POPJ	17,
symcmp:
	ADJSP	17,1
	MOVEI	2,1
	MOVEM	2,(17)
$27::
	LDB	3,-2(17)
	LDB	5,-3(17)
	IBP	-3(17)
	CAME	3,5
	JRST	$30
	LDB	7,-2(17)
	IBP	-2(17)
	MOVEI	11,1
	JUMPE	7,.+2
	SETZ	11,
	JUMPN	11,$32
	MOVEI	12,1
	MOVE	14,(17)
	AOS	(17)
	CAIGE	14,12
	SETZ	12,
	JUMPE	12,$31
$32::
	MOVEI	0,1
	ADJSP	17,-1
	POPJ	17,
$31::
	JRST	$27
$30::
	SETZ	15,
	MOVE	0,15
	ADJSP	17,-1
	POPJ	17,
symcpy:
	ADJSP	17,1
	MOVEI	2,1
	MOVEM	2,(17)
$33::
	LDB	3,-3(17)
	IBP	-3(17)
	MOVE	6,-2(17)
	IBP	-2(17)
	DPB	3,6
	JUMPE	3,$34
	MOVE	3,(17)
	AOS	(17)
	CAIGE	3,12
	JRST	$35
	ADJSP	17,-1
	POPJ	17,
$35::
	JRST	$33
$34::
	ADJSP	17,-1
	POPJ	17,
symapp:
	ADJSP	17,1
	MOVEI	2,1
	MOVEM	2,(17)
$36::
	LDB	3,-2(17)
	JUMPE	3,$37
	MOVE	3,-2(17)
	IBP	-2(17)
	MOVE	4,(17)
	AOS	(17)
	JRST	$36
$37::
$40::
	LDB	2,-3(17)
	IBP	-3(17)
	MOVE	7,-2(17)
	IBP	-2(17)
	DPB	2,7
	JUMPE	2,$41
	MOVE	3,(17)
	AOS	(17)
	CAIGE	3,12
	JRST	$42
	ADJSP	17,-1
	POPJ	17,
$42::
	JRST	$40
$41::
	ADJSP	17,-1
	POPJ	17,
hash:
	ADJSP	17,3
	SETZB	2,-2(17)
	MOVEI	3,1
	MOVEM	3,(17)
$43::
	LDB	4,-4(17)
	IBP	-4(17)
	MOVEM	4,-1(17)
	JUMPE	4,$44
	MOVE	7,(17)
	AOS	(17)
	CAILE	7,12
	JRST	$44
	MOVE	11,-2(17)
	ADD	11,-2(17)
	ADD	11,-1(17)
	MOVEM	11,-2(17)
	JRST	$43
$44::
	MOVE	12,-2(17)
	ANDI	12,17777
	MOVE	0,12
	ADJSP	17,-3
	POPJ	17,
makety:
	ADJSP	17,1
	MOVE	3,maxtyp
	AOS	maxtyp
	IMULI	3,3
	ADDI	3,types
	PUSH	17,3
	PUSH	17,-3(17)
	PUSHJ	17,thash
	ADJSP	17,-1
	POP	17,3
	ADDI	0,ttable
	MOVE	2,0
	MOVEM	3,(2)
	MOVEM	3,(17)
	MOVE	4,@-2(17)
	MOVEM	4,@0(17)
	MOVE	6,-2(17)
	MOVE	5,1(6)
	MOVE	10,(17)
	MOVEM	5,1(10)
	MOVE	11,-2(17)
	MOVE	7,2(11)
	MOVE	13,(17)
	MOVEM	7,2(13)
	MOVE	0,(17)
	ADJSP	17,-1
	POPJ	17,
	ADJSP	17,-1
	POPJ	17,
gettyp:
	ADJSP	17,3
	PUSH	17,-4(17)
	PUSHJ	17,thash
	ADJSP	17,-1
	MOVEM	0,-1(17)
	MOVEM	0,-2(17)
$45::
	MOVEI	2,ttable
	ADD	2,-2(17)
	MOVE	3,(2)
	MOVEM	3,(17)
	JUMPE	3,$46
	MOVEI	5,1
	MOVE	6,@0(17)
	MOVE	7,@-4(17)
	CAME	6,7
	SETZ	5,
	JUMPE	5,$47
	MOVE	11,(17)
	MOVE	10,1(11)
	MOVE	13,-4(17)
	MOVE	12,1(13)
	CAME	10,12
	JRST	$47
	MOVE	15,(17)
	MOVE	14,2(15)
	MOVE	3,-4(17)
	MOVE	2,2(3)
	CAME	14,2
	JRST	$47
	MOVE	0,(17)
	ADJSP	17,-3
	POPJ	17,
$47::
	MOVE	5,-2(17)
	ADDI	5,1
	ANDI	5,777
	MOVEM	5,-2(17)
	CAME	5,-1(17)
	JRST	$50
	PUSH	17,[17]
	PUSHJ	17,error
	ADJSP	17,-1
	PUSH	17,[1]
	PUSHJ	17,exit
	ADJSP	17,-1
$50::
	JRST	$45
$46::
	PUSH	17,-4(17)
	PUSHJ	17,makety
	ADJSP	17,-1
	MOVE	0,0
	ADJSP	17,-3
	POPJ	17,
	ADJSP	17,-3
	POPJ	17,
addtyp:
	ADJSP	17,3
	MOVE	3,-4(17)
	MOVE	2,5(3)
	MOVEM	2,-2(17)
	MOVEI	4,1
	MOVE	6,-2(17)
	CAMLE	6,scalar
	SETZ	4,
	JUMPN	4,$52
	MOVEI	5,1
	MOVE	10,@-2(17)
	CAIE	10,44
	SETZ	5,
	JUMPE	5,$51
$52::
	MOVE	13,-5(17)
	MOVE	14,-4(17)
	MOVEM	13,5(14)
	MOVE	15,-2(17)
	MOVE	2,-5(17)
	MOVEM	15,2(2)
	ADJSP	17,-3
	POPJ	17,
$51::
	PUSH	17,-2(17)
	PUSHJ	17,makety
	ADJSP	17,-1
	MOVE	3,-4(17)
	MOVEM	0,5(3)
	MOVEM	0,(17)
$53::
	MOVE	4,-2(17)
	JUMPE	4,$54
	MOVEI	5,1
	MOVE	7,-2(17)
	MOVE	6,2(7)
	MOVEM	6,-1(17)
	CAMLE	6,scalar
	SETZ	5,
	JUMPN	5,$54
	MOVEI	10,1
	MOVE	12,@-1(17)
	CAIE	12,44
	SETZ	10,
	JUMPN	10,$54
	PUSH	17,-1(17)
	PUSHJ	17,makety
	ADJSP	17,-1
	MOVE	3,(17)
	MOVEM	0,2(3)
	MOVEM	0,(17)
	MOVE	4,-1(17)
	MOVEM	4,-2(17)
	JRST	$53
$54::
	MOVE	5,-5(17)
	MOVE	6,(17)
	MOVEM	5,2(6)
	MOVE	7,-1(17)
	MOVE	10,-5(17)
	MOVEM	7,2(10)
	ADJSP	17,-3
	POPJ	17,
extend:
	ADJSP	17,2
	MOVE	3,-3(17)
	MOVE	2,5(3)
	MOVEM	2,-1(17)
	MOVEI	4,1
	MOVE	6,-1(17)
	CAMLE	6,scalar
	SETZ	4,
	JUMPN	4,$56
	MOVEI	5,1
	MOVE	10,@-1(17)
	CAIE	10,44
	SETZ	5,
	JUMPE	5,$55
$56::
	MOVE	13,-4(17)
	MOVE	14,-3(17)
	MOVEM	13,5(14)
	MOVE	15,-1(17)
	MOVE	2,-4(17)
	MOVEM	15,2(2)
	ADJSP	17,-2
	POPJ	17,
$55::
$57::
	MOVE	4,-1(17)
	JUMPE	4,$60
	MOVEI	6,1
	MOVE	12,-1(17)
	MOVE	7,2(12)
	MOVEM	7,(17)
	CAMLE	7,scalar
	SETZ	6,
	JUMPN	6,$60
	MOVEI	5,1
	MOVE	11,@0(17)
	CAIE	11,44
	SETZ	5,
	JUMPN	5,$60
	MOVE	2,(17)
	MOVEM	2,-1(17)
	JRST	$57
$60::
	MOVE	4,-4(17)
	MOVE	12,-1(17)
	MOVEM	4,2(12)
	MOVE	14,(17)
	MOVE	15,-4(17)
	MOVEM	14,2(15)
	ADJSP	17,-2
	POPJ	17,
thash:
	ADJSP	17,1
	MOVE	3,-2(17)
	MOVE	2,2(3)
	JUMPN	2,$61
	SETZ	5,
	JRST	$62
$61::
	MOVE	7,-2(17)
	MOVE	5,2(7)
	SUBI	5,types
$62::
	MOVEM	5,(17)
	MOVE	10,@-2(17)
	MOVE	12,-2(17)
	ADD	10,1(12)
	ADD	10,(17)
	ANDI	10,777
	MOVE	0,10
	ADJSP	17,-1
	POPJ	17,
ridaut:
	ADJSP	17,3
$63::
	MOVE	3,minloc
	AOS	minloc
	CAML	3,-4(17)
	JRST	$64
	MOVE	4,minloc
	IMULI	4,6
	ADDI	4,symbol
	MOVEM	4,(17)
	MOVE	3,(17)
	HRLI	3,331100
	PUSH	17,3
	PUSHJ	17,hash
	ADJSP	17,-1
	MOVEM	0,-1(17)
	MOVEM	0,-2(17)
$65::
	MOVEI	2,htable
	ADD	2,-1(17)
	MOVE	3,(2)
	CAMN	3,(17)
	JRST	$66
	MOVE	5,-1(17)
	ADDI	5,1
	ANDI	5,17777
	MOVEM	5,-1(17)
	MOVE	6,-1(17)
	CAME	6,-2(17)
	JRST	$67
	MOVE	2,$70
	PUSH	17,2
	PUSH	17,stderr
	PUSHJ	17,fprint
	ADJSP	17,-2
	PUSH	17,[1]
	PUSHJ	17,exit
	ADJSP	17,-1
$67::
	JRST	$65
$66::
	MOVE	3,-1(17)
	ADDI	3,1
	ANDI	3,17777
	JUMPN	3,$71
	SETZ	4,
	JRST	$72
$71::
	MOVEI	4,symbol
$72::
	MOVEI	6,htable
	ADD	6,-1(17)
	MOVEM	4,(6)
	JRST	$63
$64::
	MOVE	10,-4(17)
	MOVEM	10,minloc
	ADJSP	17,-3
	POPJ	17,
$70::	POINT	9,.+1,8
	BYTE	(9) 103,157,155,160
	BYTE	(9) 151,154,145,162
	BYTE	(9) 40,145,162,162
	BYTE	(9) 157,162,40,43
	BYTE	(9) 61,56,12,0

stype:
	ADJSP	17,2
	MOVE	3,-3(17)
	MOVEM	3,-1(17)
$73::
	MOVE	4,-1(17)
	MOVE	2,2(4)
	MOVEM	2,(17)
	JUMPE	2,$74
	MOVE	7,(17)
	MOVEM	7,-1(17)
	JRST	$73
$74::
	MOVE	6,@-1(17)
	MOVE	0,6
	ADJSP	17,-2
	POPJ	17,
charar:
	MOVE	2,@-1(17)
	CAIN	2,127
	JRST	$75
	SETZ	4,
	MOVE	0,4
	POPJ	17,
$75::
$76::
	MOVE	6,-1(17)
	MOVE	5,2(6)
	MOVEM	5,-1(17)
	MOVE	7,@-1(17)
	CAIN	7,127
	JRST	$100
	MOVEI	11,1
	MOVE	12,@-1(17)
	CAIE	12,41
	SETZ	11,
	MOVE	0,11
	POPJ	17,
$100::
	JRST	$76
$77::
	POPJ	17,
charpo:
	MOVEI	2,1
	MOVE	3,@-1(17)
	CAIN	3,106
	SETZ	2,
	JUMPE	2,$101
	MOVE	5,@-1(17)
	CAIN	5,127
	JRST	$101
	SETZ	7,
	MOVE	0,7
	POPJ	17,
$101::
$102::
	MOVE	11,-1(17)
	MOVE	10,2(11)
	MOVEM	10,-1(17)
	MOVE	12,@-1(17)
	CAIN	12,127
	JRST	$104
	MOVEI	14,1
	MOVE	3,@-1(17)
	CAIE	3,41
	SETZ	14,
	MOVE	0,14
	POPJ	17,
$104::
	JRST	$102
$103::
	POPJ	17,

	INTERN	initsy,creats,findsy,hash,symcmp,freesy,findha,symcpy
	INTERN	creatl,copysy,symapp,makety,thash,gettyp,addtyp,extend
	INTERN	ridaut,stype,charar,charpo

	EXTERN	.iob,stdin,stdout,stderr,libpre,libpst,sprefi,spstfi
	EXTERN	tok,rw,map,errstr,module,input,output,symfna,in,out
	EXTERN	fsym,inc,mac,consta,nodes,csymbo,htable,symbol,isym
	EXTERN	deftyp,charty,deflab,scalar,ttable,types,tstack,line
	EXTERN	page,tline,scope,level,maclev,breakl,contle,eflag
	EXTERN	eof,minsym,maxsym,maxtyp,maxnod,maxlab,maxini,minloc
	EXTERN	maxaut,ncond,nelse,token,toksta,time,optimi,dump
	EXTERN	assemb,delete,vsym,syntax,.cpool,cpool,macptr,ch
	EXTERN	errlin,erptr,error,exit,fprint

	END