|
|
1.1 ! root 1: .data ! 2: .align 2 ! 3: _sccsid:.data 2 ! 4: L12:.ascii "@(#)mon.c\11" ! 5: .ascii "2.0 (Tahoe) 5/7/84\0" ! 6: .data ! 7: .long L12 ! 8: .comm _countbase,4 ! 9: .align 2 ! 10: _cntrs:.long 0 ! 11: .align 2 ! 12: _profiling:.long 3 ! 13: .lcomm _s_sbuf,4 ! 14: .lcomm _s_bufsiz,4 ! 15: .lcomm _s_scale,4 ! 16: .lcomm _s_lowpc,4 ! 17: .comm _numctrs,4 ! 18: .text ! 19: LL0:.align 1 ! 20: .globl _monstartup ! 21: .data 1 ! 22: L31:.ascii "No space for monitor buffer(s)\12\0" ! 23: .text ! 24: .data 1 ! 25: L32:.ascii "No space for monitor buffer(s)\12\0" ! 26: .text ! 27: .set L22,0x0 ! 28: .data ! 29: .text ! 30: _monstartup:.word L22 ! 31: subl3 $64,fp,sp ! 32: subl3 4(fp),8(fp),r0 ! 33: mull2 $5,r0 ! 34: divl3 $100,r0,-64(fp) ! 35: cmpl -64(fp),$50 ! 36: jgeq L28 ! 37: movl $50,-64(fp) ! 38: L28:subl3 4(fp),8(fp),r0 ! 39: incl r0 ! 40: divl2 $2,r0 ! 41: addl2 $12,r0 ! 42: shll $3,-64(fp),r1 ! 43: addl3 r1,r0,-56(fp) ! 44: addl3 $1,-56(fp),r0 ! 45: andl3 $-2,r0,-56(fp) ! 46: pushl -56(fp) ! 47: callf $8,_sbrk ! 48: movl r0,-60(fp) ! 49: cmpl r0,$-1 ! 50: jneq L29 ! 51: pushl $32 ! 52: pushl $L31 ! 53: pushl $2 ! 54: callf $16,_write ! 55: ret#2 ! 56: L29:pushl $0 ! 57: callf $8,_sbrk ! 58: movl r0,minbrk ! 59: pushl -64(fp) ! 60: pushl -56(fp) ! 61: pushl -60(fp) ! 62: pushl 8(fp) ! 63: pushl 4(fp) ! 64: callf $24,_monitor ! 65: ret#2 ! 66: .align 1 ! 67: .globl mcount ! 68: .data 1 ! 69: L44:.ascii "mcount: counter overflow\12\0" ! 70: .text ! 71: .data 1 ! 72: L45:.ascii "mcount: counter overflow\12\0" ! 73: .text ! 74: .set L35,0x1800 ! 75: .data ! 76: .text ! 77: mcount:.word L35 ! 78: movl -8(fp),r11 ! 79: movl 4(fp),r12 ! 80: tstl _profiling ! 81: jneq L40 ! 82: incl _profiling ! 83: tstl (r12) ! 84: jneq L41 ! 85: movl _cntrs,r0 ! 86: incl _cntrs ! 87: cmpl r0,_numctrs ! 88: jeql L43 ! 89: movl r11,*_countbase ! 90: addl3 $4,_countbase,r0 ! 91: movl r0,(r12) ! 92: addl2 $8,_countbase ! 93: L41:incl *(r12) ! 94: decl _profiling ! 95: L40:ret#2 ! 96: L43:pushl $26 ! 97: pushl $L44 ! 98: pushl $2 ! 99: callf $16,_write ! 100: jbr L40 ! 101: .align 1 ! 102: .globl _monitor ! 103: .lcomm L50,4 ! 104: .lcomm L51,4 ! 105: .data 1 ! 106: L55:.ascii "mon.out\0" ! 107: .text ! 108: .data ! 109: .align 2 ! 110: L59:.long 0x48800000, 0x00000000 # .double 65536 ! 111: .text ! 112: .set L46,0x100C ! 113: .data ! 114: .text ! 115: _monitor:.word L46 ! 116: subl3 $56,fp,sp ! 117: tstl 4(fp) ! 118: jneq L52 ! 119: pushl $0 ! 120: callf $8,_moncontrol ! 121: pushl $438 ! 122: pushl $L55 ! 123: callf $12,_creat ! 124: movl r0,r12 ! 125: pushl L50 ! 126: pushl L51 ! 127: pushl r12 ! 128: callf $16,_write ! 129: pushl r12 ! 130: callf $8,_close ! 131: ret#2 ! 132: L52:movl 12(fp),L51 ! 133: movl 16(fp),L50 ! 134: movl 12(fp),-56(fp) ! 135: movl 4(fp),*-56(fp) ! 136: movl -56(fp),r0 ! 137: movl 8(fp),4(r0) ! 138: movl -56(fp),r0 ! 139: movl 20(fp),8(r0) ! 140: movl 20(fp),_numctrs ! 141: addl3 $12,12(fp),_countbase ! 142: shll $3,20(fp),r0 ! 143: addl2 $12,r0 ! 144: movl r0,r12 ! 145: addl2 r12,12(fp) ! 146: subl2 r12,16(fp) ! 147: jgtr L57 ! 148: ret#2 ! 149: L57:subl3 4(fp),8(fp),r12 ! 150: cmpl 16(fp),r12 ! 151: jgeq L58 ! 152: cvlf 16(fp) ! 153: stf r0 ! 154: clrl r1 ! 155: cvld r12 ! 156: std r2 ! 157: ldd r0 ! 158: divd r2 ! 159: muld L59 ! 160: cvdl r12 ! 161: jbr L60 ! 162: L58:movl $65536,r12 ! 163: L60:movl r12,_s_scale ! 164: movl 12(fp),_s_sbuf ! 165: movl 16(fp),_s_bufsiz ! 166: movl 4(fp),_s_lowpc ! 167: pushl $1 ! 168: callf $8,_moncontrol ! 169: ret#2 ! 170: .align 1 ! 171: .globl _moncontrol ! 172: .set L61,0x0 ! 173: .data ! 174: .text ! 175: _moncontrol:.word L61 ! 176: tstl 4(fp) ! 177: jeql L65 ! 178: pushl _s_scale ! 179: pushl _s_lowpc ! 180: pushl _s_bufsiz ! 181: pushl _s_sbuf ! 182: callf $20,_profil ! 183: clrl _profiling ! 184: jbr L67 ! 185: L65:pushl $0 ! 186: pushl $0 ! 187: pushl $0 ! 188: pushl $0 ! 189: callf $20,_profil ! 190: movl $3,_profiling ! 191: L67:ret#2 ! 192:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.