Trailing-Edge
-
PDP-10 Archives
-
decuslib20-03
-
decus/20-0078/comp/cgob.mac
There are 2 other files named cgob.mac in the archive. Click here to see a list.
00100 SUBTTL Written by Olof Bjorner Sep-73
00200
00300 COMMENT ;
00400
00500 Version: 4A [10,174,321,327]
00600
00700 Purpose: To compile an assignment statement
00800
00900 Contents: The subroutine CGAS which is called externally
01000 The following local subroutines:
01100 CGASTX for text assignment
01200 CGASFP for assignment to formal parameter
01300 CGASRI for assignment to remote identifier
01400 CGASAR for assignment to array element
01500 CGASEQ which compares two ZID-nodes and skips if they represent
01600 the same identifier
01700 ;
01800
01900 SEARCH SIMMAC,SIMMC2,SIMMCR
02000 sall
02100 CTITLE CGOB
02200 TWOSEG
02300 RELOC 400K
02400 MACINIT
02500 CGINIT
02600
02700 INTERN CGAS
02800
02900 EXTERN YZHBXC,YCGACT,YLXIAC
03000 EXTERN YO2ADI,YOPCOD,YTAC ;LOW SEGMENT VARIABLES
03100 edit(321)
03200 EXTERN YFORSI ;[321]
03300 EXTERN O2GA,O2GR,O2GI,O2AD ;Output routines
03400 EXTERN O2CF,O2DF,O2GF,O2GW,O2GWD,O2IV
03500 EXTERN CGRD,CGG4,CGR4,CGMO,CGMO1,CGVA,CGAD,CADS,CGAA
03600 EXTERN CGCA,CGCC,CGCO,CGG2,CGG3,CGIM,CGIM1,CGLO,CGLO1,CGR2,CGR3
03700 edit(174)
03800 EXTERN ORTXCH ;[174]
03900 ;Code generation routines
04000
04100 OPDEF EXITAS [GOTO CGASEXIT]
04200 OPDEF IFNOTSAME [PUSHJ XPDP,CGASEQ]
04300
04400 DSW CGSWAP,0,35,XL2 ;This switch is on if RHS can be compiled first
04500
04600 IFN QDEBUG,<
04700 CGASER: ASCIZ/ILL ZNNCOD DURING ASSIGNMENT COMPILATION/>