! File: TN.BEG ! ! This work was supported by the Advanced Research ! Projects Agency of the Office of the Secretary of ! Defense (F44620-73-C-0074) and is monitored by the ! Air Force Office of Scientific Research. ! ! THIS IS THE BEGIN FILE FOR TEMP NAMES ! ! ! FIELDS OF A TN CELL (IN ADDITION TO COMMON FIELDS) ! -------------------------------------------------- MACRO BNDTYP =0,33,3$, ! TYPE TO WHICH THIS TN HAS BEEN BOUND REQD =0,30,3$, ! TYPE OF TEMP REQUIRED LDF =0,24,6$, ! LOOPDEPTH FIELD PREFF =0,0,18$, ! POINTER TO PREFERENCE LIST LONFU =1,18,18$, ! LON OF FIRST USE LONLU =1,0,18$, ! LON OF LAST USE FONFU =2,18,18$, ! FON OF FIRST USE FONLU =2,0,18$, ! FON OF LAST USE TNLITBIT =3,32,1$, ! THIS TN POINTS TO A LITERAL BNDLSTHDR =3,0,18$, ! POINTER TO LIST OF ALL THINGS BOUND ! TO THE SAME PLACE AS THIS ONE TNPERMIT =4,0,18$, ! IF NONZERO, POINTS TO A TN WHICH THIS ONE ! MAY LIVE WITH REGARDLESS OF LIFETIME ! OVERLAP. TNLITLEX =4,0,36$, ! CONTAINS LITLEXEME IF TNLITBIT IS ON XUSECOMPLEXITY =5,18,18$, ! MAX USE COMPLEXITY USECOMPLEXITY =5,0,18$; ! (MIN) USE COMPLEXITY ! DEFINITION OF "REQD" FIELD (IN TN CELLS) VALUES ! ------------------------------------------------ BIND NOREQDB=0, ! ANY BINDING IS POSSIBLE MEMREQDB=1, ! BINDING REQUIRED TO SPECIFIC MEMORY SLREQDB=2, ! " " " STATIC LOCAL ARREQDB=3, ! " " " ANY REGISTER SRREQDB=4, ! " " " A SPECIFIC REGISTER IGREQDB=5, ! IGNORE THIS TN (DUMMY ENTRY) DECREQDB=6, ! DECLARED TN (LOCAL OR REGISTER) RFREQDB=7; ! BIND TO REGISTER OR FORGET IT (FORGET IT BINDING IS IN OFFSETF) ! DEFINITION OF "BNDTYP" FIELD VALUES ! ----------------------------------- BIND BNDREG=1, BNDLOCAL=2, BNDPUSH=3, BNDPREF=4, BNDNCSE=5; ! TNREP AND LIST STRUCTURES FOR TN'S ! ---------------------------------- STRUCTURE TNREPR[I,J,K,L]= CASE .I OF SET .TNREPR<.K,.L>; GT[@.TNREPR,.J,.K,.L]; GT[.GT[@.TNREPR,1,0,18],.J,.K,.L] TES; MACRO TNR=1,1,18,18$, TNPTR=1,1,0,18$, ! POINTER TO THE TN THIS TNREP REPS TNLINKWORD=1,0,0,36$; ! LLINK+RLINK IN THE TNREP ! MACROS FOR SETTING THE FIELDS OF A TN ! ------------------------------------- MACRO TNSRREQD(T,R)=(GT[(T),REQD]_SRREQDB; GT[(T),REGF]_R)$, TNARREQD(T)=(GT[(T),REQD]_ARREQDB)$, TNSLREQD(T)=(GT[(T),REQD]_SLREQDB)$, TNDECREQD(T)=(GT[(T),REQD]_DECREQDB)$, TNFORGET(T)=(GT[(T),REQD]_IGREQDB)$; ! SIZE OF ALLOCATED STACKS ! -------------------------- BIND STKSIZE=64, DTDONTCARE=#777; ! DEPENDS ON SIZE OF DTDELETE FIELD