home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / program / language / bcpl / BCPL / b / header < prev    next >
Encoding:
Text File  |  1988-02-22  |  3.1 KB  |  137 lines

  1. GET "LibHdr"
  2.  
  3. GET "b.Ops"
  4.  
  5. // MANIFESTs shared between the various phases.
  6.  
  7. MANIFEST {
  8.    MajorVersion = 2; MinorVersion = 4 }
  9.  
  10. MANIFEST {
  11. // Default extension level allowed
  12.    default.extension.level = 10000
  13.  
  14. // Structure of a stream data element
  15.    st.stream = 0; st.input = 1; st.link = 2; st.file = 3;
  16.    st.size = 4
  17.  
  18. // Structure of a tag value
  19.    tag.value = 0; tag.link = 1; tag.name = 2 }
  20.  
  21. MANIFEST {
  22. // Offsets in a 'global' object
  23.    gl.number = 0; gl.label = 1; gl.link = 2
  24.    gl.size = 3
  25.  
  26. // Offsets in a 'name' object
  27.    name.name = 0; name.type = 1; name.value = 2
  28.    name.size = 3
  29.  
  30. // Data relating to the name block vector
  31.    name.block.vector.size = 100
  32.  
  33.    name.block.size = 32
  34.    name.block.mask = 31
  35.    name.block.shift = 5 }
  36.  
  37.  
  38. MANIFEST {
  39. // Structure of a 'makelist' element
  40.    list.count = 0; list.link = 1; list.data = 2
  41.  
  42.    list.element.data.size =  10
  43.    list.element.size = list.element.data.size + list.data
  44.  
  45. // Structure of an element on the conditional compilation stack.
  46.    cc.tagptr = 0; cc.inverse = 1; cc.link = 2
  47.    cc.size = 3
  48.  
  49. // Miscellaneous values
  50.    NameTableSize = 47
  51.    GetMax = 20
  52.    WordMax = 255/BytesPerWord + 1 }
  53.  
  54. GLOBAL {
  55. // Globals shared between the SYN and TRN phases
  56.    PrintTree: syntrng+0
  57.    charCode: syntrng+1
  58.    transChars: syntrng+2
  59.    sourceStream: syntrng+3
  60.    ch: syntrng+4
  61.    lineCount: syntrng+5
  62.    free.list.element.chain: syntrng+6
  63.    zeroNode: syntrng+7
  64.    SmallNumber: syntrng+8
  65.    externals.list: syntrng+9
  66.    trnLineCount: syntrng+10
  67.    extension.level: syntrng+11
  68.    bitswidth: syntrng+12
  69.    slct.size.shift: syntrng+13
  70.    slct.shift.shift: syntrng+14
  71.    slct.mask: syntrng+15
  72.    slct.max.offset: syntrng+16 }
  73.  
  74. GLOBAL {
  75.    NextSymb: synrg+0
  76.    initialise.lex: synrg+1
  77.    SynReport: synrg+2
  78.  
  79.    symb: syng+0
  80.    operator: syng+1
  81.    decval: syng+2
  82.    wordNode: syng+3
  83.    wordv: syng+4
  84.    chbuf: syng+5; chCount: syng+6
  85.    nlPending: syng+7
  86.    nullTag: syng+8
  87.    getv: syng+9; getp: syng+10
  88.    nameTable: syng+11
  89.    rec.p: syng+12; rec.l: syng+13
  90.    caseCount: syng+14
  91.    tagptr: syng+15
  92.    ccstack: syng+16
  93.    free.ccstack.chain: syng+17;
  94.    mantissa: syng+18; exponent: syng+19;
  95.    digits: syng+20;
  96.    lispExtensions: syng+21 }
  97.  
  98. GLOBAL {
  99.    TransReport: trnrg+0
  100.    NextParam: trnrg+1
  101.    Trans: trnrg+2
  102.    DeclLabels: trnrg+3
  103.    FindName: trnrg+4
  104.    FindCell: trnrg+5
  105.    Name: trnrg+6
  106.    JumpCond: trnrg+7
  107.    Load: trnrg+8; LoadList: trnrg+9
  108.    EvalConst: trnrg+10; CheckConstant: trnrg+11
  109.    Assign: trnrg+12
  110.    CompLab: trnrg+13
  111.    CompDataLab: trnrg+14
  112.    /*Out1: trnrg+15;*/ Out2: trnrg+16; OutString: trnrg+17
  113.    CheckLabel: trnrg+18;
  114.    OutOp: trnrg+19;
  115.  
  116.    paramNumber: trng+0
  117.    ssp: trng+1
  118.    vecssp: trng+2
  119.    currentBranch: trng+3
  120.  
  121.    nameBlockV: trng+5
  122.    nameVecE: trng+6
  123.    namepBase: trng+7
  124.  
  125.    globList: trng+8; globCount: trng+9; globListE: trng+10
  126.  
  127.    casekvec: trng+11; caselvec: trng+12
  128.    caseptr: trng+13; caselim: trng+14
  129.  
  130.    breakLabel: trng+15; resultLabel: trng+16
  131.    defaultLabel: trng+17; endcaseLabel: trng+18; loopLabel: trng+19
  132.    returnLabel: trng+20;
  133.    ocount: trng+21;
  134.    undefCount: trng+22;
  135.    accessible: trng+23;
  136.    outLineCount: trng+24 }
  137.