Trailing-Edge
-
PDP-10 Archives
-
bb-jr93d-bb
-
7,6/ap017/listou.c17
There are 10 other files named listou.c17 in the archive. Click here to see a list.
REP 24/1 ;17C1
GLOBAL BIND LISTOV = #11^24 + 0^18 + #4554; ! Version Date: 3-Dec-86
WIT
GLOBAL BIND LISTOV = #11^24 + 0^18 + #4572; ! Version Date: 17-Aug-87
INS 276/1 ;17C2
***** Begin V11 Development *****
INS 316/1 ;17C3
***** End V11 Development *****
4572 DCE 17-Aug-87
Fix up the code which attempts to put out long polish (1072) blocks.
This affects arrays in COMMON when long symbols have been seen, and
when the array has a first dimension greater than 258.
***** End Revision History *****
REP 6/13 ;17C4
%4530% MACRO LADD=100$;
WIT
%4572% MACRO LADD=#100$, LSIXBIT=#010$, RHCHAIN=#000777$, ABSHALFWORD=0$;
REP 91/13 ;17C5
%4530% RDATWD = LADD^18 + 010 + (.SYM<SYMLENGTH>*2)-1;
%4530% ZNEWBLOCK(RLONGPOLISH);!NEXT WD IS GLOBAL REQUEST
%4530% INCR I FROM 0 TO .SYM<SYMPOINTER> - 1
WIT
![4572] Add ,, (number or half-words) -1 , sixbit
%4572% RDATWD = LADD^18 + (.SYM<SYMLENGTH>*2 -1)^9 + LSIXBIT;
%4572% ZNEWBLOCK(RLONGPOLISH);
![4572] Put out the full (possibly long) common block name
%4572% INCR I FROM 0 TO .SYM<SYMLENGTH> - 1
REP 100/13 ;17C6
%4530% RDATWD = 001001^18 + #777777;
%4530% ZNEWBLOCK(RLONGPOLISH);
%4530% RDATWD = .INSTRUCTION<RIGHT>^18 + #000777;
%4530% ZNEWBLOCK(RLONGPOLISH);
%4530% RDATWD = (.HILOC+.HIORIGIN)^18;
%4530% ZNEWBLOCK(RLONGPOLISH);
WIT
![4572] Add in the right half constant.
![4572] Left half zero to get absolute (no relocation).
%4572% RDATWD = ABSHALFWORD^18 + .INSTRUCTION<RIGHT>;
%4530% ZNEWBLOCK(RLONGPOLISH);
![4572] Right half chained fixup to current address.
%4572% RDATWD = RHCHAIN^18 + (.HILOC+.HIORIGIN);
%4530% ZNEWBLOCK(RLONGPOLISH);
SUM 247881