|
|
Power 6/32 Unix version 1.2b
.data .comm _hand,4 .comm _user_psl,4 .comm _nblkdev,4 .comm _nchrdev,4 .comm _nswdev,4 .comm _mpid,4 .comm _runin,1 .comm _runout,1 .comm _runrun,4 .comm _kmapwnt,1 .comm _curpri,1 .comm _maxmem,4 .comm _physmem,4 .comm _nswap,4 .comm _updlock,4 .comm _rablock,4 .comm _rasize,4 .comm _rootdev,2 .comm _dumpdev,2 .comm _dumplo,4 .comm _swapdev,2 .comm _argdev,2 .comm _noproc,4 .comm _panicstr,4 .comm _wantin,4 .comm _boothowto,4 .comm _selwait,4 .comm _intenable,4 .comm _clk_enable,4 .comm _zdmap,136 .comm _dmmin,4 .comm _dmmax,4 .comm _dmtext,4 .comm _ckey_cache,255 .comm _dkey_cache,255 .comm _ckey_cnt,510 .comm _dkey_cnt,510 .comm _pidhash,126 .comm _proc,4 .comm _procNPROC,4 .comm _nproc,4 .comm _qs,256 .comm _whichqs,4 .comm _acctbuf,32 .comm _acctp,4 .comm _hostid,4 .comm _hostname,32 .comm _hostnamelen,4 .comm _boottime,8 .comm _time,8 .comm _tz,8 .comm _hz,4 .comm _phz,4 .comm _tick,4 .comm _lbolt,4 .comm _avenrun,24 .comm _sysent,0 .comm _nsysent,4 .text LL0:.align 1 .globl _trap .data 1 L123:.ascii "reserved addressing mode\0" .text .data 1 L125:.ascii "illegal opcode\0" .text .data 1 L127:.ascii "reserved operand\0" .text .data 1 L129:.ascii "breakpoint\0" .text .data 1 L131:.ascii "kernel call\0" .text .data 1 L133:.ascii "arithmetic exception\0" .text .data 1 L135:.ascii "system forced exception\0" .text .data 1 L137:.ascii "limit fault\0" .text .data 1 L139:.ascii "illegal access type\0" .text .data 1 L141:.ascii "trace trap\0" .text .data 1 L143:.ascii "page fault\0" .text .data 1 L145:.ascii "page table fault\0" .text .data 1 L147:.ascii "alignment fault\0" .text .data 1 L149:.ascii "kernel stack not valid\0" .text .data 1 L153:.ascii "System trap (%s), code = %x, pc = %x\12\0" .text .data 1 L155:.ascii "trap\0" .text .data 1 L173:.ascii "ptable fault\0" .text .data 1 L184:.ascii "KSP NOT VALID.\12\0" .text .set L112,0xE00 .data .text _trap:.word L112 subl3 $80,fp,sp addl3 $24,fp,r11 movl _u+1580,-64(fp) movl _u+1576,-68(fp) andl3 $16777216,-4(r11),r0 cmpl r0,$16777216 jneq L116 orl2 $32,8(fp) movl r11,_u+144 L116:movl 8(fp),r0 casel r0,$7,$40 .align 1 L2000000: .word L162-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L175-L2000000 .word L172-L2000000 .word L119-L2000000 .word L183-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L119-L2000000 .word L160-L2000000 .word L160-L2000000 .word L160-L2000000 .word L181-L2000000 .word L119-L2000000 .word L119-L2000000 .word L167-L2000000 .word L162-L2000000 .word L168-L2000000 .word L156-L2000000 .word L181-L2000000 .word L119-L2000000 .word L175-L2000000 .word L172-L2000000 .word L160-L2000000 .word L183-L2000000 L119:movl 8(fp),r0 casel r0,$0,$15 .align 1 L2000001: .word L122-L2000001 .word L124-L2000001 .word L126-L2000001 .word L128-L2000001 .word L120-L2000001 .word L130-L2000001 .word L132-L2000001 .word L134-L2000001 .word L136-L2000001 .word L138-L2000001 .word L140-L2000001 .word L120-L2000001 .word L142-L2000001 .word L144-L2000001 .word L146-L2000001 .word L148-L2000001 L120:pushl 16(fp) pushl 12(fp) pushl -72(fp) pushl $L153 callf $20,_printf pushl $L155 callf $8,_panic L156:movl $10,r10 L117:pushl r10 pushl _u+140 callf $12,_psignal L166:movl _u+140,r9 tstb 19(r9) jneq L9998 tstl 20(r9) jeql L188 bitl $16,36(r9) jneq L9997 orl3 24(r9),28(r9),r0 mcoml r0,r0 bitl r0,20(r9) jeql L188 L9997:callf $4,_issig tstl r0 jeql L188 L9998:callf $4,_psig L188:movb 12(r9),13(r9) tstl _runrun jeql L190 callf $4,_spl8 pushl r9 callf $8,_setrq incl _u+1636 callf $4,_swtch L190:tstl _u+2168 jeql L194 movl $_u+1576,-80(fp) subl3 -68(fp),*-80(fp),r0 mull2 $1000,r0 movl -80(fp),r1 subl3 -64(fp),4(r1),r1 divl2 $1000,r1 addl2 r1,r0 divl3 $1000,_tick,r1 divl2 r1,r0 movl r0,-76(fp) tstl r0 jeql L194 pushl r0 pushl $_u+2156 pushl -8(r11) callf $16,_addupc L194:movb 13(r9),_curpri ret L122:movl $L123,-72(fp) jbr L120 L124:movl $L125,-72(fp) jbr L120 L126:movl $L127,-72(fp) jbr L120 L128:movl $L129,-72(fp) jbr L120 L130:movl $L131,-72(fp) jbr L120 L132:movl $L133,-72(fp) jbr L120 L134:movl $L135,-72(fp) jbr L120 L136:movl $L137,-72(fp) jbr L120 L138:movl $L139,-72(fp) jbr L120 L140:movl $L141,-72(fp) jbr L120 L142:movl $L143,-72(fp) jbr L120 L144:movl $L145,-72(fp) jbr L120 L146:movl $L147,-72(fp) jbr L120 L148:movl $L149,-72(fp) jbr L120 L160:andl3 $-33,8(fp),_u+1440 movl $4,r10 jbr L117 L162:andl2 $-257,_u+68 tstl _user_psl jeql L163 andl2 $-257,*_user_psl L163:movl _u+140,r0 bitl $2097152,36(r0) jeql L166 tstl _u+2168 jeql L166 pushl $1 pushl $_u+2156 pushl 16(fp) callf $16,_addupc movl _u+140,r0 andl2 $-2097153,36(r0) jbr L166 L167:movl 12(fp),_u+1440 movl $8,r10 jbr L117 L168:pushl -20(r11) callf $8,_grow tstl r0 jneq L166 pushl 12(fp) callf $8,_grow tstl r0 jneq L166 movl $11,r10 jbr L117 L172:pushl $L173 callf $8,_panic L175:cvtbl _u+496,r10 pushl 12(fp) callf $8,_fastreclaim tstl r0 jneq L177 pushl $0 pushl 12(fp) callf $12,_pagein L177:cvtlb r10,_u+496 cmpl 8(fp),$12 jneq L166 ret L181:andl2 $-17,-4(r11) movl $5,r10 jbr L117 L183:movl $9,r10 pushl $L184 callf $8,_printf jbr L117 .align 1 .globl _syscall .data 1 L202:.ascii "syscall\0" .text .set L197,0xF80 .data .text _syscall:.word L197 subl3 $80,fp,sp addl3 $24,fp,r11 movl _u+1580,-64(fp) movl _u+1576,-68(fp) andl3 $16777216,-4(r11),r0 cmpl r0,$16777216 jeql L201 pushl $L202 callf $8,_panic L201:movl r11,_u+144 cmpl 12(fp),$139 jneq L203 callf $4,_sigcleanup jbr L205 L203:addl3 $4,-24(r11),r10 clrb _u+496 subl3 $2,16(fp),-72(fp) cmpl 12(fp),$63 jlequ L206 decl -72(fp) cmpl 12(fp),$127 jlequ L206 decl -72(fp) cmpl 12(fp),$32767 jlequ L206 subl2 $2,-72(fp) L206:cmpl 12(fp),_nsysent jlssu L9996 movl $_sysent+504,r0 jbr L9995 L9996:shll $3,12(fp),r0 addl2 $_sysent,r0 L9995:movl r0,r8 cmpl r8,$_sysent jneq L209 pushl r10 callf $8,_fuword movl r0,r9 addl2 $4,r10 cmpl 12(fp),_nsysent jlssu L9994 movl $_sysent+504,r0 jbr L9993 L9994:shll $3,12(fp),r0 addl2 $_sysent,r0 L9993:movl r0,r8 L209:shll $2,(r8),r9 jeql L211 prober $1,(r10),r9 bnequ ok movb $14,_u+496 jbr L212 ok:pushl r9 pushl $_u+404 pushl r10 callf $16,_bcopy L211:movl $_u+404,_u+436 movl _u+404,_u+1884 clrl _u+500 movl -80(r11),_u+504 pushl $_u+440 callf $8,_setjmp tstl r0 jeql L215 tstb _u+496 jneq L217 tstb _u+508 jneq L217 movb $4,_u+496 jbr L217 L215:clrb _u+508 calls $4,*4(r8) L217:cmpb _u+508,$1 jneq L218 movl -72(fp),16(fp) jbr L205 L218:tstb _u+496 jeql L220 L212:cvtbl _u+496,-84(r11) orl2 $1,-4(r11) jbr L205 L220:andl2 $-2,-4(r11) movl _u+500,-84(r11) movl _u+504,-80(r11) L205:movl _u+140,r7 tstb 19(r7) jneq L9992 tstl 20(r7) jeql L222 bitl $16,36(r7) jneq L9991 orl3 24(r7),28(r7),r0 mcoml r0,r0 bitl r0,20(r7) jeql L222 L9991:callf $4,_issig tstl r0 jeql L222 L9992:callf $4,_psig L222:movb 12(r7),13(r7) tstl _runrun jeql L223 callf $4,_spl8 pushl r7 callf $8,_setrq incl _u+1636 callf $4,_swtch L223:tstl _u+2168 jeql L224 movl $_u+1576,-80(fp) subl3 -68(fp),*-80(fp),r0 mull2 $1000,r0 movl -80(fp),r1 subl3 -64(fp),4(r1),r1 divl2 $1000,r1 addl2 r1,r0 divl3 $1000,_tick,r1 divl2 r1,r0 movl r0,-76(fp) tstl r0 jeql L224 pushl r0 pushl $_u+2156 pushl -8(r11) callf $16,_addupc L224:movb 13(r7),_curpri ret .align 1 .globl _nosys .set L227,0x0 .data .text _nosys:.word L227 cmpl _u+1224,$1 jeql L9990 cmpl _u+1224,$3 jneq L231 L9990:movb $22,_u+496 L231:pushl $12 pushl _u+140 callf $12,_psignal ret .align 1 .globl _nullsys .set L233,0x0 .data .text _nullsys:.word L233 ret .align 1 .globl _fpemulate .data .align 2 L304:.long 0x00000000 # .float 0 .text .data .align 2 L307:.long 0x00000000 # .float 0 .text .set L238,0x800 .data .text _fpemulate:.word L238 subl3 $100,fp,sp addl3 $32,fp,r11 clrl -64(fp) movl r11,_u+144 andl3 $255,20(fp),r0 cmpl r0,$199 jeql L265 jgtr L273 cmpl r0,$135 jeql L261 jgtr L274 cmpl r0,$119 jeql L260 jgtr L275 cmpl r0,$118 jneq L256 movl $_Kcvtlf,-72(fp) L2000003:movl $2,-80(fp) andl2 $-129,-4(r11) jbr L256 L2000005:cmpl r0,$2 jeql L289 cmpl r0,$3 jeql L292 jbr L279 L2000007:orl2 $2,-4(r11) bitl $32,-4(r11) jeql L297 L2000009:movl $1,20(fp) ret L260:movl $_Kcvtld,-76(fp) L2000011:movl $3,-80(fp) orl2 $128,-4(r11) jbr L256 L261:movl $_Kcvtdl,-68(fp) movl $1,-80(fp) movl 8(fp),-84(fp) jbr L256 L263:movl $_Kcvtdf,-72(fp) jbr L2000003 L265:movl $_Kaddd,-76(fp) L2000013:movl $3,-80(fp) jbr L256 L267:movl $_Ksubd,-76(fp) jbr L2000013 L269:movl $_Kmuld,-76(fp) jbr L2000013 L270:movl $_Kdivf,-72(fp) jbr L2000012 L271:movl $_Kdivd,-76(fp) jbr L2000013 L275:cmpl r0,$134 jneq L256 movl $_Kcvtfl,-68(fp) movl $1,-80(fp) movl 12(fp),-84(fp) jbr L256 L274:cmpl r0,$166 jeql L263 jgtr L276 cmpl r0,$151 jneq L256 movl $_Kcvtfd,-76(fp) jbr L2000011 L276:cmpl r0,$198 jneq L256 movl $_Kaddf,-72(fp) jbr L2000012 L2000015:cmpl r0,$214 jneq L256 movl $_Ksubf,-72(fp) jbr L2000012 L2000017:cmpl r0,$215 jeql L267 jleq L2000015 cmpl r0,$230 jneq L256 movl $_Kmulf,-72(fp) L2000012:movl $2,-80(fp) jbr L256 L273:cmpl r0,$231 jeql L269 jleq L2000017 cmpl r0,$247 jeql L271 jgtr L256 cmpl r0,$246 jeql L270 L256:movl -80(fp),r0 cmpl r0,$1 jneq L2000005 subl3 $64,fp,-(sp) pushl 16(fp) pushl 12(fp) pushl 8(fp) pushl 4(fp) calls $24,*-68(fp) movl r0,-88(fp) bitl $4,-64(fp) jeql L282 orl2 $2,-4(r11) bitl $32,-4(r11) jneq L2000009 clrl -88(fp) L282:tstl -88(fp) jneq L284 orl2 $4,-4(r11) L284:tstl -88(fp) jgeq L285 orl2 $8,-4(r11) L285:bitl $256,20(fp) jeql L286 cmpl -84(fp),$12 jleq L287 L287:subl3 $21,-84(fp),r0 movl -88(fp),(r11)[r0] ret L286:pushl $4 pushl -84(fp) subl3 $88,fp,-(sp) callf $16,_copyout ret L289:subl3 $64,fp,-(sp) pushl 16(fp) pushl 12(fp) pushl 8(fp) pushl 4(fp) calls $24,*-72(fp) movl r0,-92(fp) tstl r0 jneq L290 orl2 $4,-4(r11) L290:tstl -92(fp) jlss L2000008 jbr L279 L292:subl3 $64,fp,-(sp) pushl 16(fp) pushl 12(fp) pushl 8(fp) pushl 4(fp) calls $24,*-76(fp) movl r1,-96(fp) movl r0,-100(fp) tstl r0 jneq L293 tstl r1 jneq L293 orl2 $4,-4(r11) L293:tstl -100(fp) jgeq L279 L2000008:orl2 $8,-4(r11) L279:bitl $4,-64(fp) jneq L2000007 bitl $8,-64(fp) jeql L297 bitl $64,-4(r11) jeql L297 movl $2,20(fp) ret L297:movl -80(fp),r0 cmpl r0,$2 jeql L302 cmpl r0,$3 jeql L305 L300:ret L302:bitl $4,-64(fp) jneq L9989 bitl $8,-64(fp) jeql L303 L9989:movl L304,-92(fp) orl2 $4,-4(r11) L303:movl -92(fp),_u+96 jbr L300 L305:bitl $4,-64(fp) jneq L9988 bitl $8,-64(fp) jeql L306 L9988:clrl -96(fp) movl L307,-100(fp) orl2 $4,-4(r11) L306:movl -96(fp),_u+100 movl -100(fp),_u+96 jbr L300
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.