home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / PDP-11 / Trees / V6 / usr / source / fort / f4 / f43.s < prev    next >
Encoding:
Text File  |  1975-07-17  |  896 b   |  84 lines

  1. /
  2. /
  3.  
  4. / f43 -- output globals and bdata bss's
  5.  
  6. .globl    globls
  7.  
  8. .globl    code
  9. .globl    dattab
  10. .globl    onedata
  11. .globl    error
  12. .globl    perror
  13.  
  14. globls:
  15.     mov    progt,r0
  16.     jmp    *1f(r0)
  17. 1:
  18.     1f
  19.     2f
  20.     3f
  21.     4f
  22. 1:
  23.     jsr    r5,code
  24.         <.globl    main\n\0>; .even
  25.     rts    r5
  26. 2:
  27. 3:
  28.     jsr    r5,code
  29.         <.globl    %n.\n\0>; .even
  30.         8
  31.     rts    r5
  32. 4:
  33. 1:
  34.     clr    r3
  35. 1:
  36.     cmp    r3,symtp
  37.     blo    2f
  38.     rts    r5
  39. 2:
  40.     mov    symtab(r3),r0
  41.     bic    $!270,r0
  42.     cmp    r0,$40            / common block
  43.     bne    2f
  44.     mov    symtab+6(r3),r2
  45.     beq    2f
  46.     mov    $dattab,r1
  47. 3:
  48.     cmp    r1,r4
  49.     bhis    3f
  50.     cmp    (r1),r3
  51.     beq    4f
  52.     add    $8.,r1
  53.     br    3b
  54. 3:
  55.     jsr    r5,code
  56.         <.bss\n.globl    %n\n%n:    .=.+%d.\n.text\n\0>; .even
  57.         r3
  58.         r3
  59.         r2
  60.     br    2f
  61. 4:
  62.     jsr    r5,code
  63.         <.data\n.globl    %n\n%n:\n\0>; .even
  64.         r3
  65.         r3
  66.     mov    r2,-(sp)
  67.     mov    r3,-(sp)
  68.     mov    r1,r3
  69.     jsr    r5,onedata
  70.     mov    (sp)+,r3
  71.     mov    (sp)+,r2
  72.     sub    r1,r2
  73.     bge    9f
  74.     jsr    r5,error; 22.        / data overrun
  75.     jsr    r5,perror
  76. 9:
  77.     jsr    r5,code
  78.         <.=.+%d.\n.text\n\0>; .even
  79.     r2
  80. 2:
  81.     add    $8,r3
  82.     br    1b
  83.  
  84.