Google
 

Trailing-Edge - PDP-10 Archives - bb-bt99e-bb - lnklod.c07
There is 1 other file named lnklod.c07 in the archive. Click here to see a list.
 REP 2/1	;07C1
	SUBTTL	D.M.NIXON/DMN/JLd/JBC/RKH/JNG/DCE/MCHC/DZN/PAH/PY	6-Dec-83
 WIT
	SUBTTL	D.M.NIXON/DMN/JLd/JBC/RKH/JNG/DCE/MCHC/DZN/PAH/PY	24-Jul-83
 REP 36/1	;07C2
	DECEVR==2026		;DEC EDIT VERSION
 WIT
	DECEVR==2046		;DEC EDIT VERSION
 INS 77/6	;07C3
	;1545	Set continuation bit for errors which will print module names.
 INS 110/6	;07C4
	;2037	Check more carefully for last triplet in SY.RF1
	;2045	Fix typechecking to not clobber other secondary triplets.
	;2046	Garbage collect the DY area occasionally if many typecheck blocks.
 REP 18/36	;07C5
		TXNN	T1,S.FXP	;THIS TRIPLET A FIXUP REQUEST?
		JRST	SYRF2A		;NO, TRY NEXT
		MOVE	T1,P1		;REMEMBER WHERE WE ARE
 WIT
	;**;[2037] Replace at SYRF2A+3 Lines	PY	12-Apr-83
		TXNE	T1,S.FXP	;[2037] This triplet a fixup request?
		 JRST	SYRF2B		;[2037] Yes
		TXNN	T1,S.LST	;[2037] Is this the last secondary?
		 JRST	SYRF2A		;[2037] No, try next
		POPJ P,			;[2037] Yes, no additive fixups here
	SYRF2B:	MOVE	T1,P1		;[2037] Remember where we are
 REP 21/66	;07C6
		PUSHJ	P,SYTY0A	;[2020] BUILD THE SECONDARY TRIPLETT
 WIT
		PUSHJ	P,SYTY0A	;[2020] BUILD THE SECONDARY TRIPLET
 REP 2/67	;07C7
	;[2020] Look for secondary triplett for typechecking.
 WIT
	;[2020] Look for secondary triplet for typechecking.
 REP 8/67	;07C8
		MOVEI	T2,(P1)		;[2020] POINT TO THE FIRST TRIPLETT
	SYTY1A:	ADDI	T2,.L		;[2020] ADVANCE TO NEXT TRIPLETT
 WIT
		MOVEI	T2,(P1)		;[2020] POINT TO THE FIRST TRIPLET
	SYTY1A:	ADDI	T2,.L		;[2020] ADVANCE TO NEXT TRIPLET
 REP 13/67	;07C9
		TXNE	T1,S.LST	;[2020] LAST ONE?
 WIT
	;**;[2045] Replace 1 Line at SYTY1A+4 Lines	PY	24-Jul-83
		TXNN	T1,S.LST	;[2045] LAST ONE?
 REP 17/67	;07C10
		MOVE	T1,P1		;[2020] GET THE POINTER
 WIT
	;**;[2045] Replace 1 Line at SYTY1N+2 Lines	PY	24-Jul-83
		SUBI	T1,.L		;[2045] GET POINTER TO PREVIOUS TRIPLET
 REP 30/67	;07C11
	; W1 Points To the list header word in the secondary triplett. [2020]
 WIT
	; W1 Points To the list header word in the secondary triplet. [2020]
 REP 56/67	;07C12
		PJRST	DY.RET##	;[2020] GIVE IT BACK AND RETURN
		POPJ	P,
 WIT
	;**;[2046] Replace at SYTY1P+7 Lines	PY	24-Jul-83
		JRST	SYTY1C		;[2046] RETURN BLOCK
 REP 71/67	;07C13
		PUSHJ	P,DY.RET##	;[2020] TOSS THE BLOCK
		JUMPN	P1,SYTY1L	;[2020] ARGUMENT CHECK ALL OF THEM
		POPJ	P,		;[2020] DONE
 WIT
	;**;[2046] Insert after SYTY1L+5 Lines		PY	24-Jul-83
		AOS	DYGCNT		;[2046] COUNT FOR GARBAGE COLLECTION
		PUSHJ	P,DY.RET##	;[2020] TOSS THE BLOCK
		JUMPN	P1,SYTY1L	;[2020] ARGUMENT CHECK ALL OF THEM
	;**;[2046] Replace before SYTY1I+7 Lines	PY	24-Jul-83
		JRST	SYTY1G		;[2046] DONE, CHECK FOR GARBAGE COLLECT
 REP 78/67	;07C14
		PJRST	DY.RET##	;[2020] TOSS IT AND RETURN
 WIT

	;**;[2046] Replace after SYTY1I+1 Line		PY	24-Jul-83
	;[2046] Here to return a block, and to garbage collect if not done recently.
	SYTY1C:	AOS	DYGCNT		;[2046] COUNT THE BLOCK
		PUSHJ	P,DY.RET##	;[2046] TOSS IT AND RETURN
	SYTY1G:	MOVE	T1,DYGCNT	;[2046] GET THE COUNT OF RETURNED BLOCKS
		CAIGE	T1,DY.MRB	;[2046] CHECK FOR LOTS OF THEM
		 POPJ	P,		;[2046] NOT TOO MANY
		SETZM	DYGCNT		;[2046] LOTS, RESET COUNTER
		PJRST	DY.GBC##	;[2046] AND GARBAGE COLLECT 
 REP 10/75	;07C15
	E$$CMF::.ERR.	(MS,0,V%L,L%F,S%F,CMF,<COBOL module must be loaded first>) ;[1174]
 WIT
	;**;[1545] Replace at E$$CMF	PY	1-Feb-83
	E$$CMF::.ERR.	(MS,.EC,V%L,L%F,S%F,CMF,<COBOL module must be loaded first>) ;[1545]
 REP 11/76	;07C16
	E$$MSR::.ERR.	(MS,0,V%L,L%F,S%F,MSR,</MIXFOR switch required to mix F40 and FORTRAN code>) ;[1174]
 WIT
	;**;[1545] Replace at E$$MSR	PY	1-Feb-83
	E$$MSR::.ERR.	(MS,.EC,V%L,L%F,S%F,MSR,</MIXFOR switch required to mix F40 and FORTRAN code>) ;[1545]
 REP 7/100	;07C17
	E$$FSI::.ERR.	(MS,0,V%L,L%W,S%W,FSI,<FORTRAN requires FOROTS, /FORSE switch ignored>) ;[1174]
 WIT
	;**;[1545] Replace at E$$FSI	PY	1-Feb-83
	E$$FSI::.ERR.	(MS,.EC,V%L,L%W,S%W,FSI,<FORTRAN requires FOROTS, /FORSE switch ignored>) ;[1545]
 REP 39/101	;07C18
	E01FSI::.ERR.	(MS,0,V%L,L%W,S%W,FSI) ;[1174]
 WIT
	;**;[1545] Replace at E01FSI	PY	1-Feb-83
	E01FSI::.ERR.	(MS,.EC,V%L,L%W,S%W,FSI) ;[1545]
 SUM 153689