Trailing-Edge
-
PDP-10 Archives
-
decuslib20-03
-
decus/20-0078/comp/or.mac
There are 2 other files named or.mac in the archive. Click here to see a list.
00100 SALL
00200 COMMENT;
00300 AUTHOR: STEFAN ARNBORG 15-MAY-1973
00400
00500 VERSION: 4 [3,30,40,134,174,216,321]
00600
00700 PURPOSE: TO REPLACE OPERANDS IN THE OPERAND STACK
00800 BY THE RESULT OPERATOR AFTER CHECKING ITS OPERANDS
00900 THE OPERANDS ARE MOVED TO THE EXPRESSION TREE AREA
01000
01100 CONTENTS: A ROUTINE OREN DOING MOST OF THE COMMON PROCESSING OF
01200 OPERATORS, AND INDIVIDUAL ROUTINES FOR SPECIAL OPERATORS.
01300 A ROUTINE FOR MOVING OPERANDS, ORMV
01400
01500 ;
01600 SEARCH SIMMAC,SIMMC2
01700 CTITLE OR
01800 ; GLOBAL ROUTINES
01900 EXTERN CABSTU,CGCA,CGPU,CGAD,CGCC,CGCO,CGIM,CGIM1,CGLO,CGLO1,CAUSTD
02000 EXTERN CGMO,CGMO1,CGVA,O2AD,O2GI,O2GWD,O2LN1
02100 EXTERN CADS,CGG2,CGG3,CGG4,CGR2,CGR3,CGR4,O2CF,O2GA,O2GF,O2GR,O2GW
02200 EXTERN CACO,CADISP,CARL,CAUD,CGEN,O2DF,O2IV,O2RF
02300 EXTERN CAUNPR ;[40]
02400 EXTERN ORTXCH ;[174]
02500 EXTERN ORDT,ORLU,ORRP,ORSM,ORCC,ORBU,ORCT,ORTY,ORCN
02600 INTERN OREN,ORMV
02700 OPDEF UNDISP [PUSHJ XPDP,CAUD]
02800 ; GLOBAL VARIABLES
02900 DSW SPAREN,YORPAR,36
03000 EXTERN YORLID,YCGSWC,YBKST,YBKSTP,YEXPP,YFOP,YFORSI,YPROCI,YNOPD,YNZCN,YNZID,YNZNS
03100 EXTERN YOPST,YOPSTB,YOPSTP,YORACT,YORFOR,YORFX,YORZHB,YORZQU
03200 EXTERN YORPAR,YRDSTP,YSTEPP,YZHBXC,YZHET
03300 EXTERN YEXPL,O2AB,YUNDEC,YCALID,YDCSTP
03400 ; MACRO USED FOR CODEWORD TABLE EXPANSION
03500 DEFINE OPTAB(N,V,D1,D2)=<
03600 IFG <SYMBL2-V>,<
03700 REPEAT <V-$$LC>,<Z>
03800 IFNDEF $'N,<Z>
03900 IFDEF $'N,<$'N>
04000 $$LC=V+1
04100 >
04200 >
04300 ; MACRO USED FOR SHIFTING FIELDS OF THE CODE WORDS INTO REGISTER XP1
04400 DEFINE SHIFT(B)=<
04500 IFNDEF $$SCT,<
04600 $$SCT=-1
04700 >
04800 %2=B-$$SCT
04900 LSHC XP1,%2
05000 $$SCT=B
05100 >