         Edinburgh IMP77 Compiler - Version 8.4
    1 %begin; ! LC (Low-level compiler) for 8086
				.machine ppc
				.section	".text"
		.Ltext0:
				.align 2
		NEXTATOM.7165:
		.LFB190:
		.LVL633:
				stwu 1,-17232(1)
				mflr 0
				stw 0,17236(1)
				mfcr 12
				stw 19,17180(1)
				stw 20,17184(1)
				stw 21,17188(1)
				stw 22,17192(1)
				stw 23,17196(1)
				stw 24,17200(1)
				stw 25,17204(1)
				stw 26,17208(1)
				stw 27,17212(1)
				stw 28,17216(1)
				stw 29,17220(1)
				stw 30,17224(1)
				stw 31,17228(1)
				stw 12,17176(1)
				lwz 9,-28680(2)
				stw 9,17164(1)
				li 9,0
				addi 9,1,17232
				stw 9,17160(1)
    2
				bl _imp_initialise
		.LVL634:
    3 ! Statement -> CONST {tag = cexpr}+
    4 !              {WORD, BYTE} {tag { (cexpr:cexpr) }? {= {data}+ }? }*
    5 !              SPEC tag string
    6 !              PROC tag {string}? {tag}*
    7 !              END
    8 !              tag :
    9 !              {instruction, ELSE}? {IF expr comp expr}?
   10 !              CYCLE
   11 !              FINISH
   12 ! Instruction -> MOVE {string opd, cexpr opd opd}
   13 !                JUMP tag
   14 !                REPEAT
   15 !                RETURN {expr}?
   16 !                opd = expr
   17 !                tag {expr}*
   18 ! Data -> {string, cexpr { (cexpr) }? }
   19 ! Cexpr -> const {op const}*
   20 ! Expr -> {opd, const} {op {opd, const} }*
   21 ! Opd -> tag { ( {opd, const} ) }?
   22 ! Op -> + - & ! \ * / % << >>
   23 ! Comp -> = # < > <= >= [ ] [= ]=
   24 ! Comments are enclosed between { and } or | and NL.
   25
   26 ! Calling convention: Push parms, then XCALL or Push CS, CALL.
   27 !Entry: Push DS, Push BP, Mov BP,SP, {Sub SP,framesize}?,
   28 !        {Mov AX,Glaseg, Mov DS,AX}? Xor AX,AX, Push AX
   29 !Return: Mov SP,BP, Pop BP, Pop DS, Xret parmsize.
   30
   31 %constinteger source=1,diag=0,object=1,list=2;  !Streams
   32
   33 %constinteger linemax=80,atommax=50,tagmax=200,textmax=20
   34 %constinteger codemax=3499,glamax=499
   35 %byteintegerarray line(1:linemax)
   36 %byteintegerarray code(0:codemax)
   37 %byteintegerarray gla(0:glamax)
   38 %integerarray atomtype,atomval(1:atommax)
   39 %integerarray tag1,tag2,tagtype,tagval(1:tagmax)
   40 %integerarray texttype,textval(1:textmax)
   41 %integer type,val,t,v,atompos,ifpos,floc,parms
   42 %integer oldapos,oldcpos,oldtpos,access,textlevel
   43 %integer lineno=0,cloc=0,gloc=0,level=0,gpos=0,cpos=0,tagpos=1
   44 %string(31)program
				li 9,0
				stw 9,12820(1)
   45
   46 !Atom types
				stw 9,12412(1)
   47 %constinteger unknown=0,constant=1,string=2,label=3
   48 %constinteger var=4, wordbit=1, glabit=2, varmask=16_fc
				stw 9,12408(1)
   49 %constinteger proc=8,xproc=9,spec=10
   50 %constinteger op=11,comp=12,colon=13,sep=14,bracket=15,bx=16!wordbit
				stw 9,9008(1)
   51
   52 ! Keyword types
				stw 9,9188(1)
   53 %constinteger kconst=17,kword=18,kbyte=19,kspec=20,kproc=21
   54 %constinteger kend=22,kmove=23,kjump=24,kreturn=25,kprogram=26
				stw 9,9184(1)
   55 %constinteger kelse=27,kfinish=28,kcycle=29,krepeat=30
   56
				li 9,1
				stw 9,12400(1)
   57 !Operator codes
   58 %constinteger load=1,add=2,sub=3,and=4,or=5,xor=6,cmp=7,
   59               mul=8,div=9,rem=10,left=11,right=12,store=13,lea=14
   60
   61 !Keyword tag codes (1:36 = A:Z,0:9) 1st {*37 + 2nd {*37 + 3rd}? }?
   62 %constinteger if=339
   63 %ownintegerarray n1(kconst:krepeat)=
   64   4676, 32060, 3683, 26608, 22585, 7367, 18374, 14480, 24847, 22585,
   65   7308,  8561, 5035, 24843
   66 %ownintegerarray n2(kconst:krepeat)=
   67    723,     4,    5,     3,     3,    0,     5,    16, 29429, 10250,
   68      5, 13032,  449,  6902
   69
   70 !Fault numbers
   71 %constinteger complex=1,atom=2,consterr=3,bfull=4,form=5,ambig=6,
   72      nested=7,declate=8,far=9,labund=10,level0=11,varund=12,dfull=13,
   73      repexp=14,finexp=15,context=16,maxfault=16
   74
   75 %routine fault(%integer n)
		.LVL96:
				stwu 1,-2864(1)
				mflr 0
				stw 0,2868(1)
				stw 29,2852(1)
				stw 30,2856(1)
				stw 31,2860(1)
				mr 29,11
				lwz 9,-28680(2)
				stw 9,2844(1)
				li 9,0
		.LVL97:
		.LBB256:
		.LBB257:
				lis 9,_imp_OutStream@ha
				li 10,0
				stw 10,_imp_OutStream@l(9)
				lis 9,_imp_outfile+4@ha
				lwz 10,_imp_outfile+4@l(9)
				lis 9,_imp_OutFile@ha
				stw 10,_imp_OutFile@l(9)
				lis 3,.LANCHOR0@ha
		.LVL98:
				la 3,.LANCHOR0@l(3)
				addi 3,3,304
				bl check_outstream
		.LVL99:
		.LBE257:
		.LBE256:
   76 %ownstring(15)%array s(1:maxfault)=
   77 "Complex",
   78 "Atom",
   79 "Not constant",
   80 "Buffer full",
   81 "Form",
   82 "Ambiguous",
   83 "Nesting",
   84 "Too late",
   85 "Too far",
   86 "Label missing",
   87 "Code misplaced",
   88 "Name",
   89 "Dict full",
   90 "Repeat expected",
   91 "Finish expected",
   92 "Context"
   93 %integer i,sym
   94    selectoutput(diag); write(lineno,1); space
   95    i=1
				li 4,1
				lwz 3,3828(29)
				bl _imp_writeint
		.LVL100:
		.LBB258:
		.LBB259:
				bl _imp_space
		.LVL101:
				addi 30,29,8087
		.LVL102:
		.L85:
		.LBE259:
		.LBE258:
   96    %cycle
   97       sym=line(i); printsymbol(sym); i=i+1
				lbzu 31,1(30)
		.LVL103:
		.LBB260:
		.LBB261:
				mr 3,31
				bl _imp_printsymbol
		.LVL104:
		.LBE261:
		.LBE260:
   98    %repeatuntil sym=nl
				cmplwi 7,31,10
				bne 7,.L85
		.L86:
				li 5,256
				addi 4,1,540
				addi 3,1,2588
				bl memcpy
		.LVL105:
		.LBB262:
		.LBB263:
				li 5,256
				addi 4,1,2588
				addi 3,1,272
				bl memcpy
		.LVL106:
				addi 3,1,272
				bl _imp_printstring
		.LVL107:
		.LBE263:
		.LBE262:
   99    printstring(s(n)); write(atompos-1,1); newline
  100    selectoutput(list)
  101    printstring("** "); printstring(s(n))
				li 5,256
				addi 4,31,322
				addi 3,1,2332
				bl memcpy
		.LVL112:
				li 5,256
				addi 4,1,2332
				addi 3,1,796
				bl memcpy
		.LVL113:
				li 5,256
				addi 4,1,796
				addi 3,1,2332
				bl memcpy
		.LVL114:
		.LBE268:
		.LBB269:
		.LBB270:
				li 5,256
				addi 4,1,2332
				addi 3,1,272
				bl memcpy
		.LVL115:
				addi 3,1,272
				bl _imp_printstring
		.LVL116:
				li 5,256
				addi 4,1,1052
				addi 3,1,2076
				bl memcpy
		.LVL117:
		.LBE270:
		.LBE269:
		.LBB271:
		.LBB272:
				li 5,256
				addi 4,1,2076
				addi 3,1,272
				bl memcpy
		.LVL118:
				addi 3,1,272
				bl _imp_printstring
		.LVL119:
		.LBE272:
		.LBE271:
  102    write(atompos-1,1); newline
				lwz 3,3824(29)
				li 4,1
				addi 3,3,-1
				bl _imp_writeint
		.LVL120:
		.LBB273:
		.LBB274:
				bl _imp_newline
		.LVL121:
		.LBE274:
		.LBE273:
  103    %signalevent 15
				lis 9,_imp_current_file@ha
				lwz 4,_imp_current_file@l(9)
				cmpwi 7,4,0
				beq 7,.L87
				addi 3,1,1564
				bl _imp_c2istr
		.LVL122:
		.L88:
				lis 9,_imp_current_line@ha
				lwz 31,_imp_current_line@l(9)
				cmpwi 7,31,0
				beq 7,.L94
		.L89:
				lis 4,.LC14@ha
				la 4,.LC14@l(4)
				addi 3,1,1820
				bl _imp_c2istr
		.LVL123:
				li 5,256
				addi 4,1,1564
				addi 3,1,272
				bl memcpy
		.LVL124:
				li 5,256
				addi 4,1,1820
				addi 3,1,16
				bl memcpy
		.LVL125:
				li 8,0
				li 7,0
				li 6,15
				addi 5,1,16
				mr 4,31
				addi 3,1,272
				bl _signal_event
		.LVL126:
				li 5,256
				lis 4,.LANCHOR0@ha
				la 4,.LANCHOR0@l(4)
				addi 3,1,1820
				bl memcpy
		.LVL127:
				li 5,256
				addi 4,1,1820
				addi 3,1,1308
				bl memcpy
		.LVL128:
		.LBE275:
				li 5,256
				addi 4,1,1308
				addi 3,1,1564
				bl memcpy
		.LVL129:
				b .L88
		.L94:
				li 31,103
				b .L89
		.L95:
  104 %end
				lwz 3,3824(29)
				li 4,1
				addi 3,3,-1
				bl _imp_writeint
		.LVL108:
		.LBB264:
		.LBB265:
				bl _imp_newline
		.LVL109:
		.LBE265:
		.LBE264:
		.LBB266:
		.LBB267:
				lis 9,_imp_OutStream@ha
				li 10,2
				stw 10,_imp_OutStream@l(9)
				lis 9,_imp_outfile+556@ha
				lwz 10,_imp_outfile+556@l(9)
				lis 9,_imp_OutFile@ha
				stw 10,_imp_OutFile@l(9)
				lis 31,.LANCHOR0@ha
		.LVL110:
				la 31,.LANCHOR0@l(31)
				addi 3,31,304
				bl check_outstream
		.LVL111:
		.LBE267:
		.LBE266:
		.LBB268:
  105
				lwz 9,2844(1)
				lwz 10,-28680(2)
				xor. 9,9,10
				li 10,0
				bne 0,.L95
				lwz 0,2868(1)
				mtlr 0
				lwz 29,2852(1)
				lwz 30,2856(1)
				lwz 31,2860(1)
				addi 1,1,2864
				blr
		.L87:
		.LBB275:
				bl __stack_chk_fail
		.LVL130:
		.LFE186:
				.align 2
		PUTATOM.7056:
		.LFB189:
  106 %routine readline
				stwu 1,-2640(1)
				mflr 0
				stw 0,2644(1)
				stw 21,2596(1)
				stw 22,2600(1)
				stw 23,2604(1)
				stw 24,2608(1)
				stw 25,2612(1)
				stw 26,2616(1)
				stw 27,2620(1)
				stw 28,2624(1)
				stw 29,2628(1)
				stw 30,2632(1)
				stw 31,2636(1)
				mr 29,11
				lwz 9,-28680(2)
				stw 9,2588(1)
				li 9,0
				addi 9,1,2640
				stw 9,536(1)
				stw 11,532(1)
		.LVL138:
		.LBB276:
		.LBB277:
				lis 9,_imp_OutStream@ha
				li 10,2
				stw 10,_imp_OutStream@l(9)
				lis 9,_imp_outfile+556@ha
				lwz 10,_imp_outfile+556@l(9)
				lis 9,_imp_OutFile@ha
				stw 10,_imp_OutFile@l(9)
				lis 3,.LANCHOR0@ha
				la 3,.LANCHOR0@l(3)
				addi 3,3,304
				bl check_outstream
		.LVL139:
		.LBE277:
		.LBE276:
  107 %owninteger semi=0
  108 %OWNINTEGER QUOTE=0
  109 %integer sym,n1,n2,radix,i,quoted,lpos
  110
  111   %routine phex(%integer x)
		.LVL36:
				stwu 1,-32(1)
				mflr 0
				stw 0,36(1)
				stw 30,24(1)
				stw 31,28(1)
				mr 30,3
		.LVL37:
  112   %integer k,i
  113     %for i=12,-4,0 %cycle
  114       k=x>>i&15; k=k+7 %if k>9
				li 31,16
				b .L47
		.LVL38:
		.L46:
		.LBB224:
		.LBB225:
				addi 3,3,48
		.LVL39:
				bl _imp_printsymbol
		.LVL40:
		.LDL4:
		.LBE225:
		.LBE224:
				srw 3,30,31
				rlwinm 3,3,0,28,31
		.LVL43:
  115       printsymbol(k+'0')
				cmpwi 7,3,9
				ble 7,.L46
  116     %repeat
				cmpwi 7,31,0
				beq 7,.L51
		.LVL41:
		.L47:
				addi 3,3,7
		.LVL44:
				b .L46
		.LVL45:
		.L51:
  117   %end
				addi 31,31,-4
		.LVL42:
  118
				lwz 0,36(1)
				mtlr 0
				lwz 30,24(1)
		.LVL46:
				lwz 31,28(1)
		.LVL47:
				addi 1,1,32
				blr
		.L48:
		.LFE188:
				.align 2
		GFLUSH.7233:
		.LFB198:
  119   %routine putatom(%integer t,v)
		.LVL131:
				stwu 1,-32(1)
				stw 29,20(1)
				stw 30,24(1)
				stw 31,28(1)
				mr 29,3
				mr 30,4
				mr 31,11
  120     fault(complex) %if atompos>atommax
				lwz 11,0(11)
				lwz 9,3824(11)
				cmpwi 7,9,50
				bgt 7,.L99
		.LVL132:
		.L97:
  121     atomtype(atompos)=t; atomval(atompos)=v
				lwz 10,0(31)
				lwz 9,3824(10)
				addi 9,9,903
				slwi 9,9,2
				add 9,10,9
				stw 29,8(9)
				li 3,1
		.LVL136:
				bl FAULT.7019
		.LVL137:
				lwz 0,36(1)
				mtlr 0
				b .L97
		.LFE189:
				.align 2
		READLINE.7035:
		.LFB187:
  122     atompos=atompos+1
				lwz 10,0(31)
				lwz 9,3824(10)
				addi 9,9,855
				slwi 9,9,2
				stwx 30,10,9
				lwz 10,0(31)
				lwz 9,3824(10)
				addi 9,9,1
				stw 9,3824(10)
  123   %end
  124
				lwz 29,20(1)
		.LVL133:
				lwz 30,24(1)
		.LVL134:
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LVL135:
		.L99:
				mflr 0
				stw 0,36(1)
  125    selectoutput(list)
  126    %cycle
  127       %if semi=0 %start
				lis 28,.LANCHOR1@ha
		.LBB278:
				lwz 9,.LANCHOR1@l(28)
				cmpwi 7,9,0
				beq 7,.L208
		.L102:
  128         write(lineno+1,4)
				lwz 3,3828(29)
				li 4,4
				addi 3,3,1
				bl _imp_writeint
		.LVL140:
		.LBB279:
  129         printstring(" C"); phex(cloc); printstring(" D"); phex(gloc)
				lis 24,.LANCHOR0@ha
				la 24,.LANCHOR0@l(24)
				addi 23,24,578
		.LBE278:
				li 5,256
				mr 4,23
				addi 3,1,1820
				bl memcpy
		.LVL141:
				li 5,256
				addi 4,1,1820
				addi 3,1,540
				bl memcpy
		.LVL142:
				li 5,256
				addi 4,1,540
				addi 3,1,2332
				bl memcpy
		.LVL143:
		.LBE279:
		.LBB280:
		.LBB281:
				li 5,256
				addi 4,1,2332
				addi 3,1,272
				bl memcpy
		.LVL144:
				addi 3,1,272
				bl _imp_printstring
		.LVL145:
		.LBE281:
		.LBE280:
  130         space
				lwz 3,3420(29)
				bl PHEX.7047
		.LVL146:
		.LBB282:
  131       %finish
				li 5,256
				addi 4,24,834
				addi 3,1,1820
				bl memcpy
		.LVL147:
				li 5,256
				addi 4,1,1820
				addi 3,1,796
				bl memcpy
		.LVL148:
				li 5,256
				addi 4,1,796
				addi 3,1,2076
				bl memcpy
		.LVL149:
		.LBE282:
		.LBB283:
		.LBB284:
				li 5,256
				addi 4,1,2076
				addi 3,1,272
				bl memcpy
		.LVL150:
				addi 3,1,272
				bl _imp_printstring
		.LVL151:
		.LBE284:
		.LBE283:
  132       lpos=1; quoted=0
				lwz 3,3416(29)
				bl PHEX.7047
		.LVL152:
		.LBB285:
		.LBB286:
				bl _imp_space
		.LVL153:
				b .L102
		.LVL154:
		.L206:
		.LBE286:
		.LBE285:
  133       %cycle
  134 next:    %if lpos+quoted=linemax %start; ! line nearly too long: force end
  135             %if quoted=0 %then sym=nl %else sym=quote
				add 9,31,30
				cmpwi 7,9,80
				bne 7,.L104
				cmpwi 7,31,0
				bne 7,.L105
  136          %else
				stw 22,528(1)
		.LVL162:
		.LBB291:
		.LBB289:
				mr 3,22
				bl _imp_printsymbol
		.LVL163:
		.L106:
		.LBE289:
		.LBE291:
  137             readsymbol(sym)
  138          %finish
  139          printsymbol(sym)
				la 9,.LANCHOR1@l(28)
				lwz 3,4(9)
				stw 3,528(1)
		.LVL157:
		.LBB287:
		.LBB288:
				rlwinm 3,3,0,0xff
				bl _imp_printsymbol
		.LVL158:
		.L107:
		.LBE288:
		.LBE287:
  140          %if quoted=0 %start
				cmpwi 7,31,0
				bne 7,.L107
				b .L106
		.LVL172:
		.L108:
  141            quoted=1 %if sym='''' %or sym='"'
				lwz 9,528(1)
				cmpwi 7,9,39
				beq 7,.L108
  142            quote=sym %if quoted#0
				cmpwi 7,9,34
				beq 7,.L108
		.L109:
  143          %else
				la 10,.LANCHOR1@l(28)
				stw 9,4(10)
				b .L110
		.LVL173:
		.L113:
  144            quoted=0 %if sym=quote
				la 9,.LANCHOR1@l(28)
				lwz 10,4(9)
				lwz 9,528(1)
				cmpw 7,9,10
				beq 7,.L109
		.LVL159:
		.L110:
  145          %finish
  146          %if quoted=0 %start
  147             %if sym='{' %start; ! Comment
				lwz 9,528(1)
				cmpwi 7,9,123
				beq 7,.L112
		.L111:
		.LVL164:
		.LBB292:
  148                %cycle
  149                   readsymbol(sym)
  150                   printsymbol(sym)
  151                   %if sym=nl %start
				lwz 9,528(1)
				cmpwi 7,9,10
				bne 7,.L113
  152                      lineno=lineno+1; spaces(18)
				lwz 9,3828(29)
				addi 9,9,1
				stw 9,3828(29)
		.LVL178:
		.LBB300:
		.LBB301:
				li 3,18
				bl _imp_spaces
		.LVL179:
				b .L113
		.LVL180:
		.L205:
		.LBE301:
		.LBE300:
  153                   %finish
  154                %repeatuntil sym='}'
				lwz 9,528(1)
				cmpwi 7,9,125
				beq 7,.L206
		.L112:
		.LVL174:
		.LBB296:
		.LBB297:
				addi 3,1,528
		.LVL175:
				bl _imp_readsymbol
		.LVL176:
		.LBE297:
		.LBE296:
		.LBB298:
		.LBB299:
				lbz 3,531(1)
				bl _imp_printsymbol
		.LVL177:
		.LBE299:
		.LBE298:
  155                ->next
  156             %finish
				li 26,0
				mr 25,26
				b .L101
		.L208:
				mr 31,25
		.LVL155:
				b .L103
		.LVL156:
		.L105:
				mr 31,27
		.LVL160:
		.L118:
		.L121:
		.L122:
				li 30,1
				mr 31,26
				li 27,1
  157             sym=sym-32 %if 'a'<=sym<='z'; semi=0
  158             %if sym=';' %start
				lwz 9,528(1)
				cmpwi 7,9,59
				beq 7,.L205
		.L116:
  159               sym=nl; lineno=lineno-1; semi=1
				stw 22,528(1)
				li 22,10
				b .L103
		.LVL189:
		.L207:
		.L125:
  160             %finish
				addi 10,9,-97
				cmplwi 7,10,25
				bgt 7,.L115
		.LBE292:
				lwz 9,3828(29)
				addi 9,9,-1
				stw 9,3828(29)
  161             %if sym='|' %start
				cmpwi 7,9,124
				beq 7,.L119
				stw 27,.LANCHOR1@l(28)
				mr 31,25
		.LVL181:
		.L117:
  162               readsymbol(sym) %and printsymbol(sym) %until sym=nl
  163             %finish
  164          %finish
				addi 9,9,-32
		.LVL165:
				stw 9,528(1)
		.LVL166:
		.L115:
  165          lineno=lineno+1 %if sym=nl
				lwz 9,528(1)
				cmpwi 7,9,10
				beq 7,.L117
				lwz 9,528(1)
				cmpwi 7,9,10
				bne 7,.L119
  166          line(lpos)=sym; lpos=lpos+1
				add 10,29,30
				stb 9,8087(10)
				stw 26,.LANCHOR1@l(28)
				lwz 9,3828(29)
				addi 9,9,1
				stw 9,3828(29)
				add 9,29,30
				stb 21,8087(9)
				lwz 9,3828(29)
				addi 9,9,1
				stw 9,3828(29)
				add 9,29,30
				li 10,10
				stb 10,8087(9)
				li 21,10
  167       %repeatuntil sym=nl %and quoted=0
				addi 30,30,1
		.LVL161:
		.L103:
				mr 31,25
		.LVL167:
				b .L118
		.LVL168:
		.L104:
		.LBB293:
		.LBB294:
				addi 3,1,528
		.LVL169:
				bl _imp_readsymbol
		.LVL170:
		.LDL5:
		.LDL6:
		.LBE294:
		.LBE293:
		.LBB295:
		.LBB290:
				lbz 3,531(1)
				bl _imp_printsymbol
		.LVL171:
		.LBE290:
		.LBE295:
				addi 30,30,1
		.LVL182:
				addi 30,30,1
		.LVL187:
		.L124:
  168    %repeatuntil lpos>2; ! non-empty line
				cmpwi 7,31,0
				bne 7,.L103
				cmpwi 7,30,2
				bgt 7,.L207
		.LVL188:
		.L101:
  169
  170 ! Now decompose line into atoms
  171
				b .L124
		.LVL183:
		.L119:
		.LBB302:
		.LBB303:
				addi 3,1,528
		.LVL184:
				bl _imp_readsymbol
		.LVL185:
		.LBE303:
		.LBE302:
		.LBB304:
		.LBB305:
				lbz 3,531(1)
				bl _imp_printsymbol
		.LVL186:
		.LBE305:
		.LBE304:
  172    atompos=1; ifpos=0; lpos=1
				li 9,1
				stw 9,3824(29)
  173 nextatom:
				li 9,0
				stw 9,3412(29)
		.LVL190:
  174    %cycle
				li 30,1
		.LBB306:
  175       sym=line(lpos); lpos=lpos+1
				add 9,29,30
				lbz 4,8087(9)
				mr 9,4
				stw 4,528(1)
  176       ->tag %if 'A'<=sym<='Z'
				mr 30,31
				mr 30,31
				mr 30,31
				mr 30,31
				mr 30,31
				mr 30,31
				mr 30,31
				mr 30,31
				mr 30,31
				mr 30,31
				mr 30,31
				mr 30,31
				addi 31,30,1
		.LVL258:
		.LBB312:
  177       ->num %if '0'<=sym<='9'
  178       %if sym=nl %start
				cmpwi 7,4,10
				beq 7,.L209
		.L131:
  179         putatom(sep,0); atompos=1; %return
				addi 11,1,532
				li 4,0
		.LVL196:
				li 3,14
				bl PUTATOM.7056
		.LVL197:
				addi 10,4,-65
				rlwinm 10,10,0,0xff
				cmplwi 7,10,25
				ble 7,.L127
		.L128:
		.LVL259:
		.LBE312:
		.LBB313:
  180       %finish
				li 9,1
				stw 9,3824(29)
				addi 10,4,-48
				rlwinm 10,10,0,0xff
				cmplwi 7,10,9
				bgt 7,.L129
				addi 30,30,8087
				add 30,29,30
				li 10,0
		.LBE313:
  181       %if sym=':' %start
				cmpwi 7,4,58
				beq 7,.L210
		.L132:
  182          putatom(colon,0)
				addi 11,1,532
				li 4,0
		.LVL200:
				li 3,13
				bl PUTATOM.7056
		.LVL201:
  183       %finishelseif sym='+' %start
				b .L126
		.LVL202:
		.L211:
  184         putatom(op,add)
				addi 11,1,532
				li 4,2
		.LVL203:
				li 3,11
				bl PUTATOM.7056
		.LVL204:
  185       %finishelseif sym='-' %start
				cmpwi 7,4,43
				beq 7,.L211
		.L134:
				b .L126
		.LVL205:
		.L212:
  186         putatom(op,sub)
				addi 11,1,532
				li 4,3
		.LVL206:
				li 3,11
				bl PUTATOM.7056
		.LVL207:
  187       %finishelseif sym='&' %start
				cmpwi 7,4,45
				beq 7,.L212
		.L135:
				b .L126
		.LVL208:
		.L213:
  188         putatom(op,and)
				addi 11,1,532
				li 4,4
		.LVL209:
				li 3,11
				bl PUTATOM.7056
		.LVL210:
  189       %finishelseif sym='!' %start
				cmpwi 7,4,38
				beq 7,.L213
		.L136:
				b .L126
		.LVL211:
		.L214:
  190         putatom(op,or)
				addi 11,1,532
				li 4,5
		.LVL212:
				li 3,11
				bl PUTATOM.7056
		.LVL213:
  191       %finishelseif sym='\' %start
				cmpwi 7,4,33
				beq 7,.L214
		.L137:
				b .L126
		.LVL214:
		.L215:
  192         putatom(op,xor)
				addi 11,1,532
				li 4,6
		.LVL215:
				li 3,11
				bl PUTATOM.7056
		.LVL216:
  193       %finishelseif sym='*' %start
				cmpwi 7,4,92
				beq 7,.L215
		.L138:
				b .L126
		.LVL217:
		.L216:
  194         putatom(op,mul)
				addi 11,1,532
				li 4,8
		.LVL218:
				li 3,11
				bl PUTATOM.7056
		.LVL219:
  195       %finishelseif sym='%' %start
				cmpwi 7,4,42
				beq 7,.L216
		.L139:
				b .L126
		.LVL220:
		.L217:
  196         putatom(op,rem)
				addi 11,1,532
				li 4,10
		.LVL221:
				li 3,11
				bl PUTATOM.7056
		.LVL222:
  197       %finishelseif sym='/' %start
				cmpwi 7,4,37
				beq 7,.L217
		.L140:
				b .L126
		.LVL223:
		.L218:
  198         putatom(op,div)
				addi 11,1,532
				li 4,9
		.LVL224:
				li 3,11
				bl PUTATOM.7056
		.LVL225:
  199       %finishelseif sym='<' %or sym='>' %start
				cmpwi 7,4,47
				beq 7,.L218
		.L141:
				b .L126
		.LVL226:
		.L230:
  200          %if line(lpos)=sym %start; ! '<<', '>>'
				add 9,29,30
				lbz 9,8088(9)
				cmpwi 7,9,60
				beq 7,.L229
		.L145:
		.L146:
		.L147:
				add 9,29,30
				lbz 9,8088(9)
				cmpwi 7,9,62
				bne 7,.L145
  201             lpos=lpos+1
				cmpwi 7,4,60
				beq 7,.L142
				addi 30,30,2
		.LVL308:
				addi 30,30,2
		.LDL9:
		.LVL315:
  202             %if sym='<' %then putatom(op,left) %else putatom(op,right)
				cmpwi 7,4,62
				beq 7,.L219
		.L143:
  203          %else; ! '<', '>', '<=', '>='
				addi 11,1,532
				li 4,11
		.LVL309:
				li 3,11
				bl PUTATOM.7056
		.LVL310:
  204 square:         !+'[', ']', '[=', ']='
				b .L126
		.LVL311:
		.L142:
  205             %if line(lpos)='=' %start
				add 9,29,30
				lbz 9,8088(9)
				cmpwi 7,9,61
				beq 7,.L230
		.LVL312:
		.L148:
  206                lpos=lpos+1; sym=sym+128
				addi 31,30,2
		.LVL227:
				addi 11,1,532
				li 4,12
		.LVL316:
				li 3,11
				bl PUTATOM.7056
		.LVL317:
				b .L126
		.LVL318:
		.L224:
  207             %finish
				addi 4,4,128
		.LVL228:
				stw 4,528(1)
		.LVL229:
				b .L148
		.LVL230:
		.L220:
		.L150:
  208             putatom(comp,sym)
				addi 11,1,532
				lwz 4,528(1)
				li 3,12
				bl PUTATOM.7056
		.LVL313:
				mr 30,31
				b .L126
		.LVL314:
		.L219:
  209          %finish
  210       %finishelseif sym='(' %or sym=')' %start
  211         putatom(bracket,sym)
				addi 11,1,532
				li 3,15
				bl PUTATOM.7056
		.LVL231:
  212       %finishelseif sym='[' %or sym=']' %start
				addi 9,4,-40
				rlwinm 9,9,0,0xff
				cmplwi 7,9,1
				ble 7,.L220
		.L149:
				b .L126
		.LVL232:
		.L152:
  213          ->square
  214       %finishelseif sym='=' %or sym='#' %start
				addi 9,4,-91
				andi. 9,9,0xfd
				beq 0,.L145
		.L151:
  215          putatom(comp,sym)
				cmpwi 7,4,61
				beq 7,.L152
				addi 11,1,532
				li 3,12
				bl PUTATOM.7056
		.LVL233:
  216       %finishelseif sym='"' %start
				cmpwi 7,4,35
				beq 7,.L152
		.L153:
				b .L126
		.LVL234:
		.L221:
  217          putatom(string,lpos)
				addi 11,1,532
				mr 4,31
		.LVL235:
				li 3,2
				bl PUTATOM.7056
		.LVL236:
  218          lpos=lpos+1 %while line(lpos)#'"'; ! we know it's there
				cmpwi 7,4,34
				beq 7,.L221
		.L154:
  219          lpos=lpos+1
				add 9,29,30
				lbz 9,8088(9)
				cmpwi 7,9,34
				beq 7,.L155
				addi 9,30,8088
				add 9,29,9
		.L156:
				lbzu 10,1(9)
				cmpwi 7,10,34
				bne 7,.L156
		.L155:
				addi 30,31,1
		.LVL238:
  220       %finishelseif sym='''' %start
				addi 31,31,1
		.LVL237:
		.LDL7:
				b .L126
		.LVL239:
		.L222:
  221          sym=line(lpos); lpos=lpos+1 %if sym=''''
				add 9,29,30
				lbz 9,8088(9)
				stw 9,528(1)
  222          fault(atom) %if line(lpos+1)#''''
				cmpwi 7,4,39
				bne 7,.L157
				cmpwi 7,9,39
				beq 7,.L222
		.L158:
				add 9,29,31
				lbz 9,8088(9)
				cmpwi 7,9,39
				bne 7,.L223
		.LVL192:
		.L159:
  223          putatom(constant,sym); lpos=lpos+2
				addi 11,1,532
				lwz 4,528(1)
				li 3,1
				bl PUTATOM.7056
		.LVL193:
				addi 31,30,2
		.LVL240:
				b .L158
		.L223:
				mr 11,29
				li 3,2
				bl FAULT.7019
		.LVL241:
				b .L159
		.LVL242:
		.L157:
  224       %else
				addi 30,31,2
		.LVL194:
				b .L126
		.LVL195:
		.L209:
  225          fault(atom) %unless sym=' '
				cmpwi 7,4,32
				beq 7,.L126
		.LVL243:
  226       %finish
				mr 11,29
				li 3,2
				bl FAULT.7019
		.LVL244:
				b .L126
		.LVL245:
		.L164:
  227    %repeat
  228 num: i=0; radix=10; ! I accumulates number, default radix is ten
  229    %cycle
				li 4,0
		.LVL260:
  230       %if sym='_' %start; ! change radix
				cmpwi 7,9,95
				beq 7,.L194
		.L162:
		.LVL252:
		.LBB311:
				li 8,10
  231          radix=i; i=0
  232       %finishelseif '9'<sym<'A' %start
				li 6,0
				li 7,1
				b .L130
		.LVL261:
		.L226:
				stw 10,528(1)
		.LVL262:
				b .L166
		.LVL263:
		.L194:
				mr 8,4
		.LVL264:
				mr 4,6
		.LVL265:
				b .L161
		.LVL266:
		.L127:
  233 endconst: putatom(constant,i); lpos=lpos-1; ->nextatom
  234       %else
				addi 11,1,532
				li 3,1
				bl PUTATOM.7056
		.LVL256:
  235          sym=sym-7 %if sym>'9'; sym=sym-'0'
				addi 30,31,-1
		.LVL257:
		.L126:
  236          ->endconst %unless 0<=sym<radix
				addi 9,9,-7
		.LVL246:
		.L163:
		.LBB310:
  237          i=i*radix+sym
				mullw 4,8,4
		.LVL248:
				add 4,10,4
		.LVL249:
		.L161:
				cmpwi 7,9,57
				ble 7,.L163
  238       %finish
  239       sym=line(lpos); lpos=lpos+1
				addic. 10,9,-48
		.LVL247:
				blt 0,.L225
				lbzu 9,1(30)
				mr 10,7
		.LVL251:
		.L130:
		.L160:
				cmpwi 7,9,64
				bgt 7,.L164
				cmpwi 7,10,0
				beq 7,.L166
				stw 9,528(1)
		.LVL253:
				b .L166
		.LVL254:
		.L225:
				stw 10,528(1)
		.LVL255:
		.L165:
		.L166:
		.LBE311:
  240    %repeat
				addi 31,31,1
		.LVL250:
  241 tag: n1=sym-'A'+1; n2=0; i=1; ! I counts name length
				cmpw 7,10,8
				bge 7,.L226
		.L168:
		.LBE310:
  242    %cycle
				addi 31,4,-64
		.LVL267:
				mr 5,30
				addi 7,30,8087
				add 7,29,7
  243       sym=line(lpos)
				li 24,0
				b .L169
		.LVL268:
		.L170:
		.LBB314:
				lbzu 9,1(7)
		.LVL273:
		.LBB315:
  244       %if 'A'<=sym<='Z' %start
				li 8,1
  245          sym=sym-'A'+1
				addi 9,9,-64
		.LVL274:
  246       %finishelseif '0'<=sym<='9' %start
				b .L171
		.LVL275:
		.L172:
		.LDL8:
				stw 9,528(1)
		.LVL276:
  247          sym=sym-'0'+27
				addi 9,9,-21
		.LVL269:
		.L171:
				addi 10,9,-65
				rlwinm 10,10,0,0xff
				cmplwi 7,10,25
				bgt 7,.L170
		.LBE315:
  248       %else
  249          %if n1=if %start
				cmpwi 7,31,339
				bne 7,.L173
  250             fault(form) %unless ifpos=0
				lwz 9,3412(29)
		.LVL277:
				cmpwi 7,9,0
				bne 7,.L227
		.LVL278:
		.L174:
  251             ifpos=atompos; putatom(sep,0)
				addi 10,9,-48
				rlwinm 10,10,0,0xff
				cmplwi 7,10,9
				bgt 7,.L172
		.LBE314:
				lwz 9,3824(29)
				stw 9,3412(29)
				mr 11,29
				li 3,5
				bl FAULT.7019
		.LVL281:
				b .L174
		.LVL282:
		.L173:
		.LBB316:
  252          %else; ! Look up in dictionary
				addi 11,1,532
				li 4,0
				li 3,14
				bl PUTATOM.7056
		.LVL279:
				b .L126
		.LVL280:
		.L227:
  253             %for i=tagpos-1,-1,1 %cycle
  254                %if tag1(i)=n1 %and tag2(i)=n2 %start
				lwz 23,3408(29)
		.LVL283:
		.LBB308:
				lwzu 9,-4(10)
				cmpw 7,31,9
				bne 7,.L196
  255                   n1=tagtype(i); n2=tagval(i)
				lis 25,_imp_current_file@ha
				lis 26,_imp_current_line@ha
				lis 28,.LC15@ha
				la 28,.LC15@l(28)
		.LBB307:
				lis 27,.LANCHOR0@ha
				la 27,.LANCHOR0@l(27)
				b .L126
		.LVL191:
		.L129:
		.LBE307:
		.LBE306:
				subfic 9,23,2
		.LVL284:
		.LBE308:
				cmpwi 7,9,0
				blt 7,.L175
				lwz 4,_imp_current_file@l(25)
				cmpwi 7,4,0
				beq 7,.L176
				addi 3,1,1564
				bl _imp_c2istr
		.LVL285:
		.L177:
				lwz 22,_imp_current_line@l(26)
				cmpwi 7,22,0
				bne 7,.L178
				li 22,255
		.L178:
				mr 4,28
				addi 3,1,1820
				bl _imp_c2istr
		.LVL286:
				li 5,256
				addi 4,1,1564
				addi 3,1,272
				bl memcpy
		.LVL287:
				li 5,256
				addi 4,1,1820
				addi 3,1,16
				bl memcpy
		.LVL288:
				li 8,0
				li 7,1
				li 6,5
				addi 5,1,16
				mr 4,22
				addi 3,1,272
				bl _signal_event
		.LVL289:
		.L175:
				li 5,256
		.LVL291:
				mr 4,27
				addi 3,1,1052
				bl memcpy
		.LVL292:
				li 5,256
				addi 4,1,1052
				addi 3,1,1308
				bl memcpy
		.LVL293:
		.LBE309:
				li 5,256
				addi 4,1,1308
				addi 3,1,1564
				bl memcpy
		.LVL294:
				b .L177
		.L181:
		.LVL295:
		.L196:
		.L182:
				lwz 9,-800(10)
				cmpw 7,9,24
				bne 7,.L196
				slwi 9,8,2
				add 9,29,9
				lwz 3,1008(9)
		.LVL297:
  256                   n2=i %if n1=unknown
				lwz 4,208(9)
		.LVL298:
				cmpwi 7,3,0
				bne 7,.L183
  257                   putatom(n1,n2)
				addi 11,1,532
				bl PUTATOM.7056
		.LVL300:
  258                   ->nextatom
				cmpwi 7,23,1
				beq 7,.L179
				slwi 10,23,2
				addi 10,10,2604
				add 10,29,10
				addi 9,23,-1
				mtctr 9
				b .L180
		.LVL290:
		.L176:
		.LBB309:
				bdz .L179
		.L180:
				b .L126
		.LVL301:
		.L179:
		.LBE316:
  259                %finish
				addi 23,23,-1
		.LVL296:
				addi 8,23,-1
				mr 4,23
		.LVL299:
		.L183:
  260             %repeat
  261 ! Not found: enter name and details
  262             tag1(tagpos)=n1; tag2(tagpos)=n2
				lwz 4,3408(29)
				slwi 9,4,2
				add 9,29,9
				stw 31,2604(9)
  263             tagtype(tagpos)=unknown; tagval(tagpos)=0
				stw 24,1804(9)
				li 10,0
				stw 10,1004(9)
  264             putatom(unknown,tagpos)
				stw 10,204(9)
				addi 11,1,532
				li 3,0
				bl PUTATOM.7056
		.LVL302:
  265             %if tagpos>tagmax %then fault(dfull) %else tagpos=tagpos+1
				lwz 9,3408(29)
				cmpwi 7,9,200
				bgt 7,.L228
		.L184:
  266          %finish
				mr 11,29
				li 3,13
				bl FAULT.7019
		.LVL303:
				b .L184
		.LVL304:
		.L185:
  267          ->nextatom
  268       %finish
				lwz 9,3408(29)
				addi 9,9,1
				stw 9,3408(29)
				b .L126
		.L228:
  269       %if i<3 %start
				cmpwi 7,8,2
				bgt 7,.L185
  270          n1=n1*37+sym
				mulli 4,31,37
				add 31,4,9
		.LVL270:
		.L186:
		.L187:
  271       %finishelseif i<6 %start
  272          n2=n2*37+sym
				mulli 24,24,37
		.LVL305:
				add 24,24,9
		.LVL306:
				b .L187
		.LVL307:
		.L229:
  273       %finish
				cmpwi 7,8,5
				bgt 7,.L187
  274       i=i+1; lpos=lpos+1
				addi 8,8,1
		.LVL271:
		.L169:
				add 30,8,5
		.LVL272:
  275    %repeat
  276 %end
				lwz 9,2588(1)
				lwz 10,-28680(2)
				xor. 9,9,10
				li 10,0
				bne 0,.L224
				lwz 0,2644(1)
				mtlr 0
				lwz 21,2596(1)
				lwz 22,2600(1)
				lwz 23,2604(1)
				lwz 24,2608(1)
				lwz 25,2612(1)
				lwz 26,2616(1)
				lwz 27,2620(1)
				lwz 28,2624(1)
				lwz 29,2628(1)
				lwz 30,2632(1)
				lwz 31,2636(1)
		.LVL198:
				addi 1,1,2640
				blr
		.LVL199:
		.L210:
				bl __stack_chk_fail
		.LVL319:
		.LFE187:
				.align 2
		CEXPR.7186:
		.LFB194:
  277
  278 %routine nextatom
				stwu 1,-16(1)
  279    type=atomtype(atompos); val=atomval(atompos)
				lwz 8,3824(11)
				slwi 10,8,2
				add 10,11,10
				lwz 9,3620(10)
				stw 9,204(11)
  280    atompos=atompos+1 %unless type=sep
				lwz 10,3420(10)
				stw 10,200(11)
				cmpwi 7,9,14
				beq 7,.L1
  281 %end
				addi 8,8,1
				stw 8,3824(11)
		.L2:
		.L1:
  282
				addi 1,1,16
				blr
		.LFE190:
				.align 2
		OPENBRACKET.7169:
		.LFB191:
  283 %predicate open bracket
				stwu 1,-16(1)
  284   %falseunless atomtype(atompos)=bracket %and atomval(atompos)='('
				lwz 8,3824(11)
				slwi 9,8,2
				add 9,11,9
				lwz 10,3620(9)
				cmpwi 7,10,15
				beq 7,.L10
		.L4:
  285   atompos=atompos+1; %true
				lwz 9,3420(9)
		.L5:
				cmpwi 7,9,40
				bne 7,.L4
		.L6:
				addi 8,8,1
				stw 8,3824(11)
  286 %end
				addi 1,1,16
				blr
		.L10:
				li 3,1
				b .L4
		.LFE191:
				.align 2
		EQUALSIGN.7179:
		.LFB193:
  287
				li 3,0
  288 %routine close bracket
				stwu 1,-32(1)
				stw 31,28(1)
				mr 31,11
				lwz 9,3824(11)
				slwi 9,9,2
				add 9,11,9
  289   fault(form) %unless atomtype(atompos)=bracket %and atomval(atompos)=')'
				lwz 10,3620(9)
				cmpwi 7,10,15
				bne 7,.L266
  290   atompos=atompos+1
				lwz 9,3420(9)
				cmpwi 7,9,41
				beq 7,.L267
		.L266:
				mflr 0
				stw 0,36(1)
				lwz 9,3824(31)
				addi 9,9,1
				stw 9,3824(31)
  291 %end
  292
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL354:
				lwz 0,36(1)
				mtlr 0
		.L267:
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LFE192:
				.align 2
		GBYTE.7226:
		.LFB196:
  293 %predicate equal sign
				stwu 1,-16(1)
  294   %falseunless atomtype(atompos)=comp %and atomval(atompos)='='
				lwz 8,3824(11)
				slwi 9,8,2
				add 9,11,9
				lwz 10,3620(9)
				cmpwi 7,10,12
				beq 7,.L17
		.L11:
  295   atompos=atompos+1; %true
				lwz 9,3420(9)
		.L12:
				cmpwi 7,9,61
				bne 7,.L11
		.L13:
				addi 8,8,1
				stw 8,3824(11)
  296 %end
				addi 1,1,16
				blr
		.L17:
				li 3,1
				b .L11
		.LFE193:
				.align 2
		SATREFS.7270:
		.LFB202:
  297
				li 3,0
  298 %routinespec unary
  299
  300 %integerfn cexpr(%integer must)
		.LVL320:
				stwu 1,-1328(1)
				mflr 0
				stw 0,1332(1)
				stw 29,1316(1)
				stw 30,1320(1)
				stw 31,1324(1)
				mr 29,3
				mr 31,11
				lwz 9,-28680(2)
				stw 9,1308(1)
				li 9,0
  301 %integer value,oper
  302 %switch s(add:right)
  303    nextatom; unary
				bl NEXTATOM.7165
		.LVL321:
  304    value=val; fault(consterr) %unless type=constant
				mr 11,31
				bl UNARY.7184
		.LVL322:
				lwz 30,200(31)
		.LVL323:
  305    %cycle
				lwz 9,204(31)
				cmpwi 7,9,1
				bne 7,.L251
		.L232:
		.L233:
  306       %result=value %unless atomtype(atompos)=op
				lwz 8,3824(31)
				slwi 9,8,2
				add 9,31,9
				lwz 10,3620(9)
				cmpwi 7,10,11
				beq 7,.L252
		.LVL324:
		.L231:
				mr 11,31
				li 3,3
				bl FAULT.7019
		.LVL327:
				b .L233
		.L252:
		.L235:
  307       %if must=0 %start
				cmpwi 7,29,0
				bne 7,.L237
  308          %result=value %unless atomtype(atompos+1)=constant
				lwz 10,3624(9)
				cmpwi 7,10,1
				bne 7,.L231
		.L236:
		.L237:
  309       %finish
  310       oper=atomval(atompos); atompos=atompos+1
				lwz 30,3420(9)
		.LVL328:
  311       nextatom; fault(consterr) %unless type=constant
				addi 8,8,1
				stw 8,3824(31)
				mr 11,31
				bl NEXTATOM.7165
		.LVL329:
  312       ->s(oper)
				lwz 9,204(31)
				cmpwi 7,9,1
				bne 7,.L254
		.L238:
		.LVL330:
		.LDL10:
  313 s(add):  value=value+val; %continue
				mr 11,31
				li 3,3
				bl FAULT.7019
		.LVL339:
				b .L238
		.LVL340:
		.L240:
		.LBB317:
  314 s(sub):  value=value-val; %continue
  315 s(and):  value=value&val; %continue
  316 s(or):   value=value!val; %continue
  317 s(xor):  value=value!!val; %continue
  318 s(rem):  value=value-value//val*val; %continue
  319 s(div):  value=value//val; %continue
  320 s(mul):  value=value*val; %continue
  321 s(left): value=value<<val; %continue
  322 s(right):value=value>>val
  323    %repeat
  324 %end
  325
  326 %routine unary
				addi 9,30,-2
				cmplwi 7,9,10
				ble 7,.L239
				lis 9,_imp_current_file@ha
				lwz 4,_imp_current_file@l(9)
				cmpwi 7,4,0
				beq 7,.L240
				addi 3,1,796
				bl _imp_c2istr
		.LVL331:
		.L241:
				lis 9,_imp_current_line@ha
				lwz 31,_imp_current_line@l(9)
				cmpwi 7,31,0
				bne 7,.L242
				li 31,326
		.L242:
				li 5,256
				addi 4,1,796
				addi 3,1,16
				bl memcpy
		.LVL332:
				li 9,312
				stw 9,8(1)
				lis 10,.LC9@ha
				la 10,.LC9@l(10)
				mr 9,30
				lis 8,.LC10@ha
				la 8,.LC10@l(8)
				mr 7,30
				li 6,3
				li 5,6
				mr 4,31
				addi 3,1,16
				crxor 6,6,6
				bl _signal_eventf
		.LVL333:
		.L239:
		.L243:
				li 5,256
				lis 4,.LANCHOR0@ha
				la 4,.LANCHOR0@l(4)
				addi 3,1,1052
				bl memcpy
		.LVL341:
				li 5,256
				addi 4,1,1052
				addi 3,1,284
				bl memcpy
		.LVL342:
		.LBE317:
				li 5,256
				addi 4,1,284
				addi 3,1,796
				bl memcpy
		.LVL343:
				b .L241
		.L244:
		.LBB318:
				stwu 1,-32(1)
				mflr 0
				stw 0,36(1)
				stw 31,28(1)
				mr 31,11
  327 %integername v
  328   %returnunless type=op %and atomtype(atompos)=constant
				lwz 9,204(11)
				cmpwi 7,9,11
				bnelr 7
				lwz 9,3824(11)
				slwi 9,9,2
				add 9,11,9
  329   %returnunless val=sub %or val=xor
				lis 9,_imp_current_file@ha
				lwz 4,_imp_current_file@l(9)
				cmpwi 7,4,0
				beq 7,.L244
				addi 3,1,1052
				bl _imp_c2istr
		.LVL334:
		.L245:
				lis 9,_imp_current_line@ha
				lwz 31,_imp_current_line@l(9)
				cmpwi 7,31,0
				beq 7,.L255
		.L246:
				li 5,256
				addi 4,1,1052
				addi 3,1,16
				bl memcpy
		.LVL335:
				li 9,312
				stw 9,8(1)
				lis 10,.LC9@ha
				la 10,.LC9@l(10)
				mr 9,30
				lis 8,.LC11@ha
				la 8,.LC11@l(8)
				mr 7,30
				li 6,2
				li 5,8
				mr 4,31
				addi 3,1,16
				crxor 6,6,6
				bl _signal_eventf
		.LVL336:
		.LVL337:
				li 5,256
				lis 4,.LANCHOR0@ha
				la 4,.LANCHOR0@l(4)
				addi 3,1,1052
				bl memcpy
		.LVL344:
				li 5,256
				addi 4,1,1052
				addi 3,1,540
				bl memcpy
		.LVL345:
		.LBE318:
				li 5,256
				addi 4,1,540
				addi 3,1,1052
				bl memcpy
		.LVL346:
				b .L245
		.L255:
				li 31,329
				b .L246
		.LVL347:
		.L253:
				lwz 10,3620(9)
				cmpwi 7,10,1
				bnelr 7
		.L258:
				lwz 10,200(11)
				cmpwi 7,10,3
				beq 7,.L259
  330   v==atomval(atompos)
				mr 3,30
				lwz 9,1308(1)
				lwz 10,-28680(2)
				xor. 9,9,10
				li 10,0
				bne 0,.L253
				lwz 0,1332(1)
				mtlr 0
				lwz 29,1316(1)
		.LVL325:
				lwz 30,1320(1)
				lwz 31,1324(1)
				addi 1,1,1328
				blr
		.LVL326:
		.L251:
				b .L231
		.LVL338:
		.L254:
				bl __stack_chk_fail
		.LVL348:
		.LFE194:
				.align 2
		UNARY.7184:
		.LFB195:
				cmpwi 7,10,6
				bnelr 7
		.LVL349:
  331   v=\v; v=v+1 %if val=sub
				lwz 10,3420(9)
				not 10,10
				stw 10,3420(9)
		.LVL350:
				b .L261
		.L259:
		.LVL351:
  332   val=cexpr(0); type=constant
				li 3,0
				bl CEXPR.7186
		.LVL353:
				stw 3,200(31)
  333 %end
				lwz 10,3420(9)
				neg 10,10
				stw 10,3420(9)
		.LVL352:
		.L261:
				li 9,1
				stw 9,204(31)
		.L257:
  334
				lwz 0,36(1)
				mtlr 0
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LFE195:
				.align 2
		CLOSEBRACKET.7174:
		.LFB192:
  335 %routine gbyte(%integer b)
		.LVL355:
				stwu 1,-32(1)
				stw 30,24(1)
				stw 31,28(1)
				mr 30,3
				mr 31,11
  336   fault(bfull) %if gpos>glamax
				lwz 9,196(11)
				cmpwi 7,9,499
				bgt 7,.L272
		.LVL356:
		.L270:
  337   gla(gpos)=b&255; gpos=gpos+1; gloc=gloc+1
				lwz 9,196(31)
				add 10,31,9
				stb 30,7588(10)
				li 3,4
		.LVL359:
				bl FAULT.7019
		.LVL360:
				lwz 0,36(1)
				mtlr 0
				b .L270
		.LFE196:
				.align 2
		DUMPSTRING.7245:
		.LFB199:
  338 %end
				addi 9,9,1
				stw 9,196(31)
  339
				lwz 9,3416(31)
				addi 9,9,1
				stw 9,3416(31)
				lwz 30,24(1)
		.LVL357:
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LVL358:
		.L272:
				mflr 0
				stw 0,36(1)
  340 %routine gword(%integer x)
  341   gbyte(x); gbyte(x>>8)
				mr 11,31
				mr 3,23
				bl GBYTE.7226
		.LVL728:
  342 %end
				srwi 19,23,8
				b .L474
		.LVL723:
		.L563:
		.LBE485:
		.LBE484:
				mr 11,31
				mr 3,19
				bl GBYTE.7226
		.LVL729:
		.L476:
		.LBE486:
		.LBE487:
  343
  344 %routine gflush
				stwu 1,-1328(1)
				lwz 9,-28680(2)
				stw 9,1308(1)
				li 9,0
  345 %integer i
  346   %returnif gpos=0
				lwz 9,196(11)
				cmpwi 7,9,0
				bne 7,.L65
		.L52:
  347   selectoutput(object); printsymbol(2); printsymbol(4)
  348   printsymbol(gpos&255); printsymbol(gpos>>8&255)
  349   printsymbol(gla(i)) %for i=0,1,gpos-1
  350   gpos=0
				lwz 30,196(29)
		.LVL54:
				li 9,0
				stw 9,196(29)
				lwz 29,1316(1)
				lwz 30,1320(1)
				lwz 31,1324(1)
				lwz 0,1332(1)
				mtlr 0
  351 %end
				addic. 31,30,-1
		.LVL55:
				blt 0,.L67
		.L55:
		.LVL56:
				b .L52
		.LVL61:
		.L67:
				stw 28,1312(1)
		.LBB240:
				lis 9,_imp_current_file@ha
				lwz 4,_imp_current_file@l(9)
				cmpwi 7,4,0
				beq 7,.L56
				addi 3,1,796
				bl _imp_c2istr
		.LVL62:
		.L57:
				lis 9,_imp_current_line@ha
				lwz 28,_imp_current_line@l(9)
				cmpwi 7,28,0
				bne 7,.L58
				li 28,351
		.L58:
				lis 4,.LC12@ha
				la 4,.LC12@l(4)
				addi 3,1,1052
				bl _imp_c2istr
		.LVL63:
				li 5,256
				addi 4,1,796
				addi 3,1,272
				bl memcpy
		.LVL64:
				li 5,256
				addi 4,1,1052
				addi 3,1,16
				bl memcpy
		.LVL65:
				li 8,0
				li 7,1
				li 6,5
				addi 5,1,16
				mr 4,28
				addi 3,1,272
				bl _signal_event
		.LVL66:
				lwz 28,1312(1)
				b .L55
		.L56:
		.LBB239:
				li 5,256
				lis 4,.LANCHOR0@ha
				la 4,.LANCHOR0@l(4)
				addi 3,1,1052
				bl memcpy
		.LVL67:
				li 5,256
				addi 4,1,1052
				addi 3,1,540
				bl memcpy
		.LVL68:
		.LBE239:
				li 5,256
				addi 4,1,540
				addi 3,1,796
				bl memcpy
		.LVL69:
				b .L57
		.LVL70:
		.L66:
				mflr 0
				stw 0,1332(1)
				stw 28,1312(1)
				stw 29,1316(1)
				stw 30,1320(1)
				stw 31,1324(1)
		.LBE240:
  352
				lwz 9,1308(1)
				lwz 10,-28680(2)
				xor. 9,9,10
				li 10,0
				bne 0,.L66
				addi 1,1,1328
				blr
		.L65:
				mflr 0
				stw 0,1332(1)
				stw 29,1316(1)
				stw 30,1320(1)
				stw 31,1324(1)
				mr 29,11
		.L54:
		.LVL48:
		.LBB226:
		.LBB227:
				lis 9,_imp_OutStream@ha
				li 10,1
				stw 10,_imp_OutStream@l(9)
				lis 9,_imp_outfile+280@ha
				lwz 10,_imp_outfile+280@l(9)
				lis 9,_imp_OutFile@ha
				stw 10,_imp_OutFile@l(9)
				lis 3,.LANCHOR0@ha
				la 3,.LANCHOR0@l(3)
				addi 3,3,304
				bl check_outstream
		.LVL49:
		.LBE227:
		.LBE226:
		.LBB228:
		.LBB229:
				li 3,2
				bl _imp_printsymbol
		.LVL50:
		.LBE229:
		.LBE228:
		.LBB230:
		.LBB231:
				li 3,4
				bl _imp_printsymbol
		.LVL51:
		.LBE231:
		.LBE230:
		.LBB232:
		.LBB233:
				lbz 3,199(29)
				bl _imp_printsymbol
		.LVL52:
		.LBE233:
		.LBE232:
		.LBB234:
		.LBB235:
				lbz 3,198(29)
				bl _imp_printsymbol
		.LVL53:
		.LBE235:
		.LBE234:
		.LBB236:
				bl __stack_chk_fail
		.LVL71:
		.LFE198:
				.align 2
		FLUSH.7257:
		.LFB201:
  353 %routine dumpstring(%integer p)
		.LVL361:
				stwu 1,-48(1)
				mflr 0
				stw 0,52(1)
				stw 30,40(1)
				mr 30,11
		.LVL362:
  354 %integer l
				cmpwi 7,31,-1
				beq 7,.L59
				addi 31,29,7587
		.LVL57:
				add 30,31,30
		.LVL58:
		.L60:
		.LBB237:
		.LBB238:
				lbzu 3,1(31)
		.LVL59:
				bl _imp_printsymbol
		.LVL60:
		.LBE238:
		.LBE237:
				cmplw 7,31,30
				bne 7,.L60
		.L59:
		.LBE236:
  355   l=0
				li 31,0
		.LVL364:
		.L275:
  356   l=l+1 %and p=p+1 %while line(p)#'"'
  357   gbyte(l); p=p-l
				add 9,11,3
				lbz 9,8087(9)
				cmpwi 7,9,34
				beq 7,.L274
				stw 27,28(1)
				stw 28,32(1)
				stw 31,44(1)
				mr 10,3
				addi 3,3,8087
		.LVL363:
				add 3,11,3
				lbzu 9,1(3)
				cmpwi 7,9,34
				bne 7,.L275
		.L276:
				mr 11,30
				mr 3,31
				bl GBYTE.7226
		.LVL367:
				li 3,0
		.LVL376:
				bl GBYTE.7226
		.LVL377:
				b .L273
		.LVL378:
		.L282:
				lwz 27,28(1)
		.LVL379:
				lwz 28,32(1)
				lwz 31,44(1)
		.LVL380:
				b .L273
		.LFE199:
				.align 2
		POPTEXT.7291:
		.LFB205:
  358   gbyte(line(p)) %and p=p+1 %and l=l-1 %while l>0
				addi 31,31,1
		.LVL365:
				mr 27,31
				add 28,10,31
		.LDL11:
		.LVL366:
				subf 28,31,28
		.LVL368:
  359 %end
				cmpwi 7,31,0
				ble 7,.L282
				stw 29,36(1)
				addi 31,28,8086
		.LVL369:
				add 31,30,31
				addi 29,30,8086
				add 29,29,27
				add 29,29,28
		.LVL370:
		.L278:
				cmplw 7,31,29
				bne 7,.L278
  360
				mr 11,30
				lbzu 3,1(31)
		.LVL371:
				bl GBYTE.7226
		.LVL372:
		.LDL12:
				lwz 0,52(1)
				mtlr 0
				lwz 30,40(1)
				addi 1,1,48
				blr
		.L277:
		.LVL375:
		.L274:
  361 %routine dump(%integer byte)
		.LVL388:
				stwu 1,-32(1)
				stw 30,24(1)
				stw 31,28(1)
				mr 30,3
				mr 31,11
  362    fault(bfull) %if cpos>codemax
				lwz 9,192(11)
				cmpwi 7,9,3499
				bgt 7,.L292
		.LVL389:
		.L290:
  363    code(cpos)=byte&255; cpos=cpos+1; cloc=cloc+1
				lwz 9,192(31)
				add 10,31,9
				stb 30,4088(10)
				li 3,4
		.LVL392:
				bl FAULT.7019
		.LVL393:
				lwz 0,36(1)
				mtlr 0
				b .L290
		.LFE200:
				.align 2
		RETURN.7405:
		.LFB211:
  364 %end
				lwz 27,28(1)
		.LVL373:
				lwz 28,32(1)
				lwz 29,36(1)
				lwz 31,44(1)
		.LVL374:
		.L273:
				addi 9,9,1
				stw 9,192(31)
  365
				lwz 9,3420(31)
				addi 9,9,1
				stw 9,3420(31)
				lwz 30,24(1)
		.LVL390:
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LVL391:
		.L292:
				mflr 0
				stw 0,36(1)
  366 %routine flush
				stwu 1,-1328(1)
				lwz 9,-28680(2)
				stw 9,1308(1)
				li 9,0
  367 %integer i
  368    %returnif cpos=0
				lwz 9,192(11)
				cmpwi 7,9,0
				bne 7,.L81
		.L68:
  369    selectoutput(object); printsymbol(1); printsymbol(4)
  370    printsymbol(cpos&255); printsymbol(cpos>>8&255)
  371    printsymbol(code(i)) %for i=0,1,cpos-1
  372    cpos=0
				lwz 30,192(29)
		.LVL78:
				li 9,0
				stw 9,192(29)
				lwz 29,1316(1)
				lwz 30,1320(1)
				lwz 31,1324(1)
				lwz 0,1332(1)
				mtlr 0
  373 %end
				addic. 31,30,-1
		.LVL79:
				blt 0,.L83
		.L71:
		.LVL80:
				b .L68
		.LVL85:
		.L83:
				stw 28,1312(1)
		.LBB255:
				lis 9,_imp_current_file@ha
				lwz 4,_imp_current_file@l(9)
				cmpwi 7,4,0
				beq 7,.L72
				addi 3,1,796
				bl _imp_c2istr
		.LVL86:
		.L73:
				lis 9,_imp_current_line@ha
				lwz 28,_imp_current_line@l(9)
				cmpwi 7,28,0
				bne 7,.L74
				li 28,373
		.L74:
				lis 4,.LC13@ha
				la 4,.LC13@l(4)
				addi 3,1,1052
				bl _imp_c2istr
		.LVL87:
				li 5,256
				addi 4,1,796
				addi 3,1,272
				bl memcpy
		.LVL88:
				li 5,256
				addi 4,1,1052
				addi 3,1,16
				bl memcpy
		.LVL89:
				li 8,0
				li 7,1
				li 6,5
				addi 5,1,16
				mr 4,28
				addi 3,1,272
				bl _signal_event
		.LVL90:
				lwz 28,1312(1)
				b .L71
		.L72:
		.LBB254:
				li 5,256
				lis 4,.LANCHOR0@ha
				la 4,.LANCHOR0@l(4)
				addi 3,1,1052
				bl memcpy
		.LVL91:
				li 5,256
				addi 4,1,1052
				addi 3,1,540
				bl memcpy
		.LVL92:
		.LBE254:
				li 5,256
				addi 4,1,540
				addi 3,1,796
				bl memcpy
		.LVL93:
				b .L73
		.LVL94:
		.L82:
				mflr 0
				stw 0,1332(1)
				stw 28,1312(1)
				stw 29,1316(1)
				stw 30,1320(1)
				stw 31,1324(1)
		.LBE255:
  374
				lwz 9,1308(1)
				lwz 10,-28680(2)
				xor. 9,9,10
				li 10,0
				bne 0,.L82
				addi 1,1,1328
				blr
		.L81:
				mflr 0
				stw 0,1332(1)
				stw 29,1316(1)
				stw 30,1320(1)
				stw 31,1324(1)
				mr 29,11
		.L70:
		.LVL72:
		.LBB241:
		.LBB242:
				lis 9,_imp_OutStream@ha
				li 10,1
				stw 10,_imp_OutStream@l(9)
				lis 9,_imp_outfile+280@ha
				lwz 10,_imp_outfile+280@l(9)
				lis 9,_imp_OutFile@ha
				stw 10,_imp_OutFile@l(9)
				lis 3,.LANCHOR0@ha
				la 3,.LANCHOR0@l(3)
				addi 3,3,304
				bl check_outstream
		.LVL73:
		.LBE242:
		.LBE241:
		.LBB243:
		.LBB244:
				li 3,1
				bl _imp_printsymbol
		.LVL74:
		.LBE244:
		.LBE243:
		.LBB245:
		.LBB246:
				li 3,4
				bl _imp_printsymbol
		.LVL75:
		.LBE246:
		.LBE245:
		.LBB247:
		.LBB248:
				lbz 3,195(29)
				bl _imp_printsymbol
		.LVL76:
		.LBE248:
		.LBE247:
		.LBB249:
		.LBB250:
				lbz 3,194(29)
				bl _imp_printsymbol
		.LVL77:
		.LBE250:
		.LBE249:
		.LBB251:
				bl __stack_chk_fail
		.LVL95:
		.LFE201:
				.align 2
		FAULT.7019:
		.LFB186:
  375 %routine satrefs(%integer ref,val)
		.LVL0:
				stwu 1,-16(1)
  376 %integer abs,rel,disp
				cmpwi 7,31,-1
				beq 7,.L75
				addi 31,29,4087
		.LVL81:
				add 30,31,30
		.LVL82:
		.L76:
		.LBB252:
		.LBB253:
				lbzu 3,1(31)
		.LVL83:
				bl _imp_printsymbol
		.LVL84:
		.LBE253:
		.LBE252:
				cmplw 7,31,30
				bne 7,.L76
		.L75:
		.LBE251:
  377    %while ref#0 %cycle
  378      rel=ref; abs=rel-cloc+cpos; disp=val-rel-2
				mr. 9,3
				beq 0,.L18
				add. 9,9,3
		.LVL8:
				bne 0,.L20
		.L19:
		.LVL9:
		.L18:
  379      ref=code(abs+1)<<8+code(abs)
				lwz 5,3420(11)
				lwz 6,192(11)
		.LVL1:
		.L20:
				subf 8,5,9
				add 8,8,6
		.LVL2:
				addi 7,8,1
				add 7,11,7
				lbz 9,4088(7)
				slwi 9,9,8
				add 8,11,8
		.LVL5:
				lbz 3,4088(8)
		.LVL6:
				stb 10,4088(8)
  380      code(abs)=disp&255; code(abs+1)=disp>>8&255
				subf 9,9,4
		.LVL3:
				addi 10,9,-2
		.LVL4:
  381    %repeat
				srwi 10,10,8
		.LVL7:
				stb 10,4088(7)
		.LDL1:
  382 %end
  383
				addi 1,1,16
				blr
		.LFE202:
				.align 2
		GETSTRING.7466:
		.LFB216:
  384 %routine labelref(%integer type,val)
		.LVL406:
				stwu 1,-32(1)
				mflr 0
				stw 0,36(1)
				stw 30,24(1)
				stw 31,28(1)
				mr 31,4
				mr 30,11
  385 %integer tvv
  386    %if type=label %start
				cmpwi 7,3,3
				beq 7,.L310
		.L306:
				stw 29,20(1)
  387       val=val-(cloc+2)
				lwz 9,3420(11)
				addi 9,9,2
				subf 31,9,4
		.LVL414:
  388       dump(val); dump(val>>8)
				mr 3,31
		.LVL415:
				bl DUMP.7253
		.LVL416:
  389    %else
				mr 11,30
				srwi 3,31,8
				bl DUMP.7253
		.LVL417:
				b .L305
		.LVL418:
		.L311:
  390       fault(form) %unless type=unknown
				cmpwi 7,3,0
				bne 7,.L311
		.LVL407:
		.L308:
				slwi 31,31,2
		.LVL408:
				add 31,30,31
  391       tvv=tagval(val)
				lwz 29,204(31)
		.LVL409:
				li 3,5
		.LVL419:
				bl FAULT.7019
		.LVL420:
				b .L308
		.LFE203:
				.align 2
		DIRECT.7346:
		.LFB208:
  392       dump(tvv); dump(tvv>>8)
				mr 11,30
				mr 3,29
				bl DUMP.7253
		.LVL410:
  393       tagval(val)=cloc-2
				mr 11,30
				srwi 3,29,8
				bl DUMP.7253
		.LVL411:
				lwz 9,3420(30)
				addi 9,9,-2
				stw 9,204(31)
				lwz 29,20(1)
		.LVL412:
		.L307:
		.L305:
  394    %finish
  395 %end
  396
				lwz 0,36(1)
				mtlr 0
				lwz 30,24(1)
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LVL413:
		.L310:
  397 %routine pushtext(%integer t,v)
		.LVL382:
				stwu 1,-32(1)
				mflr 0
				stw 0,36(1)
				stw 29,20(1)
				stw 30,24(1)
				stw 31,28(1)
				mr 29,3
				mr 30,4
				mr 31,11
  398   textlevel=textlevel+1
				lwz 9,188(11)
				addi 9,9,1
				stw 9,188(11)
  399   fault(complex) %if textlevel>textmax
				cmpwi 7,9,20
				ble 7,.L287
  400   texttype(textlevel)=t; textval(textlevel)=v
				li 3,1
		.LVL383:
				bl FAULT.7019
		.LVL384:
		.L287:
				lwz 9,188(31)
				slwi 9,9,2
				add 31,31,9
				stw 29,104(31)
  401 %end
				stw 30,24(31)
  402
				lwz 0,36(1)
				mtlr 0
				lwz 29,20(1)
		.LVL385:
				lwz 30,24(1)
		.LVL386:
				lwz 31,28(1)
		.LVL387:
				addi 1,1,32
				blr
		.LFE204:
				.align 2
		DUMP.7253:
		.LFB200:
  403 %routine poptext
				stwu 1,-32(1)
				mflr 0
				stw 0,36(1)
				stw 31,28(1)
				mr 31,11
  404   fault(context) %if textlevel=0
				lwz 9,188(11)
				cmpwi 7,9,0
				bne 7,.L284
  405   type=texttype(textlevel); val=textval(textlevel)
				li 3,16
				bl FAULT.7019
		.LVL381:
		.L284:
				lwz 9,188(31)
				slwi 10,9,2
				add 10,31,10
				lwz 8,104(10)
				stw 8,204(31)
				addi 9,9,-1
  406   textlevel=textlevel-1
				lwz 10,24(10)
				stw 10,200(31)
				stw 9,188(31)
  407 %end
  408
				lwz 0,36(1)
				mtlr 0
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LFE205:
				.align 2
		PUSHTEXT.7287:
		.LFB204:
  409 %routinespec expr
  410
  411 %constinteger pushax=16_50,popax=16_58
  412
  413 %routine call(%integer t,v)
		.LVL526:
				stwu 1,-32(1)
				mflr 0
				stw 0,36(1)
				stw 29,20(1)
				stw 30,24(1)
				stw 31,28(1)
				mr 30,3
				mr 29,4
				mr 31,11
  414   type=atomtype(atompos)
				lwz 9,3824(11)
				addi 9,9,903
				slwi 9,9,2
				add 9,11,9
				lwz 9,8(9)
				stw 9,204(11)
  415   %if type#op %start
				addi 10,9,-11
				cmplwi 7,10,1
				ble 7,.L376
  416     %cycle
  417       %exitif type=sep %or type=comp
				cmpwi 7,9,14
				beq 7,.L376
		.LVL527:
		.L374:
  418       expr; dump(pushax); type=atomtype(atompos)
				mr 11,31
				bl EXPR.7295
		.LVL528:
				rlwinm 9,9,0,31,29
				cmpwi 7,9,12
				bne 7,.L374
		.L373:
		.L375:
		.L376:
  419     %repeat
				mr 11,31
				li 3,80
				bl DUMP.7253
		.LVL529:
  420   %finish
				lwz 9,3824(31)
				addi 9,9,903
				slwi 9,9,2
				add 9,31,9
				lwz 9,8(9)
				stw 9,204(31)
		.LDL16:
  421   %if t=spec %start
				cmpwi 7,30,10
				beq 7,.L381
		.L377:
  422     dump(16_FF); dump(16_1e); dump(v); dump(v>>8);  !Xcall
				mr 11,31
				li 3,255
				bl DUMP.7253
		.LVL536:
  423   %else
				mr 11,31
				li 3,30
				bl DUMP.7253
		.LVL537:
				b .L372
		.LFE206:
				.align 2
		COND.7540:
		.LFB218:
  424     dump(16_0e); dump(16_e8); labelref(label,v);    !PushCs, Call
				mr 11,31
				li 3,14
				bl DUMP.7253
		.LVL530:
				mr 11,31
				mr 3,29
				bl DUMP.7253
		.LVL538:
  425   %finish
				mr 11,31
				li 3,232
				bl DUMP.7253
		.LVL531:
				mr 11,31
				srwi 3,29,8
				bl DUMP.7253
		.LVL539:
  426 %end
				mr 11,31
				mr 4,29
				li 3,3
				bl LABELREF.7279
		.LVL532:
		.L378:
		.L372:
  427
				lwz 0,36(1)
				mtlr 0
				lwz 29,20(1)
		.LVL533:
				lwz 30,24(1)
		.LVL534:
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LVL535:
		.L381:
  428 %routine immediate(%integer op,val)
		.LVL16:
				stwu 1,-1328(1)
				mflr 0
				stw 0,1332(1)
				stw 30,1320(1)
				stw 31,1324(1)
				mr 31,3
				lwz 9,-28680(2)
				stw 9,1308(1)
				li 9,0
		.LVL17:
		.LDL3:
  429 %switch s(load:right)
  430   ->s(op)
  431 s(load): dump(16_b8); ->imm
  432 s(add):  dump(16_05); ->imm
  433 s(sub):  dump(16_2d); ->imm
  434 s(and):  dump(16_25); ->imm
  435 s(or):   dump(16_0d); ->imm
  436 s(xor):  dump(16_35); ->imm
  437 s(cmp):  dump(16_3d)
  438 imm: dump(val); dump(val>>8); %return
  439 s(left):
  440 s(right):
  441   %if val=1 %start
  442     val=16_d1
  443   %else
  444     dump(16_b1); dump(val&15);  !Mov CL,nn
  445     val=16_d3
  446   %finish
  447   dump(val)
  448   %if op=left %then dump(16_e0) %else dump(16_e8)
  449   %return
  450 s(mul):s(div):s(rem):
  451   dump(16_b9); dump(val); dump(val>>8);  !Mov CX,nn
  452   dump(16_99) %unless op=mul;            !Cwd
  453   dump(16_f7)
  454   %if op=mul %then dump(16_e9) %else dump(16_f9)
  455   %returnunless op=rem
  456   dump(16_8b); dump(16_c2);  !Mov ax,dx
  457 %end
  458
  459 %routine direct(%integer op,type,val,index)
		.LVL421:
				stwu 1,-48(1)
				mflr 0
				stw 0,52(1)
				stw 28,32(1)
				stw 30,40(1)
				stw 31,44(1)
				mr 30,3
				mr 28,5
				mr 31,11
  460 %ownintegerarray code(load:lea)=
				addi 9,3,-1
				cmplwi 7,9,11
				ble 7,.L31
				lis 9,_imp_current_file@ha
				lwz 4,_imp_current_file@l(9)
		.LVL18:
				cmpwi 7,4,0
				beq 7,.L32
				addi 3,1,796
		.LVL19:
				bl _imp_c2istr
		.LVL20:
		.L33:
				lis 9,_imp_current_line@ha
				lwz 30,_imp_current_line@l(9)
				cmpwi 7,30,0
				bne 7,.L34
				li 30,460
		.L34:
				li 5,256
				addi 4,1,796
				addi 3,1,16
				bl memcpy
		.LVL21:
				li 9,430
				stw 9,8(1)
				lis 10,.LC9@ha
				la 10,.LC9@l(10)
				mr 9,31
				lis 8,.LC10@ha
				la 8,.LC10@l(8)
				mr 7,31
				li 6,3
				li 5,6
				mr 4,30
				addi 3,1,16
				crxor 6,6,6
				bl _signal_eventf
		.LVL22:
		.L31:
		.L35:
				li 5,256
				lis 4,.LANCHOR0@ha
				la 4,.LANCHOR0@l(4)
				addi 3,1,1052
		.LVL28:
				bl memcpy
		.LVL29:
				li 5,256
				addi 4,1,1052
				addi 3,1,284
				bl memcpy
		.LVL30:
		.LBE222:
				li 5,256
				addi 4,1,284
				addi 3,1,796
				bl memcpy
		.LVL31:
				b .L33
		.L36:
		.LBB223:
  461   16_8a, 16_02, 16_2a, 16_22, 16_0a,
  462   16_32, 16_3a, 16_28, 16_38, 16_30,
  463   16_e0, 16_e8, 16_88, 16_8d
				lis 9,_imp_current_file@ha
				lwz 4,_imp_current_file@l(9)
				cmpwi 7,4,0
				beq 7,.L36
				addi 3,1,1052
				bl _imp_c2istr
		.LVL23:
		.L37:
				lis 9,_imp_current_line@ha
				lwz 30,_imp_current_line@l(9)
				cmpwi 7,30,0
				beq 7,.L43
		.L38:
				li 5,256
				addi 4,1,1052
				addi 3,1,16
				bl memcpy
		.LVL24:
				li 9,430
				stw 9,8(1)
				lis 10,.LC9@ha
				la 10,.LC9@l(10)
				mr 9,31
				lis 8,.LC11@ha
				la 8,.LC11@l(8)
				mr 7,31
				li 6,2
				li 5,8
				mr 4,30
				addi 3,1,16
				crxor 6,6,6
				bl _signal_eventf
		.LVL25:
				li 5,256
				lis 4,.LANCHOR0@ha
				la 4,.LANCHOR0@l(4)
				addi 3,1,1052
				bl memcpy
		.LVL32:
				li 5,256
				addi 4,1,1052
				addi 3,1,540
				bl memcpy
		.LVL33:
		.LBE223:
				li 5,256
				addi 4,1,540
				addi 3,1,1052
				bl memcpy
		.LVL34:
				b .L37
		.L43:
				li 30,463
				b .L38
		.L44:
  464 %integer oper,extra
				lwz 9,1308(1)
				lwz 10,-28680(2)
				xor. 9,9,10
				li 10,0
				bne 0,.L44
				lwz 0,1332(1)
				mtlr 0
				lwz 30,1320(1)
				lwz 31,1324(1)
		.LVL26:
				addi 1,1,1328
				blr
		.LVL27:
		.L32:
		.LBB222:
				bl __stack_chk_fail
		.LVL35:
		.LFE207:
				.align 2
		PHEX.7047:
		.LFB188:
  465   immediate(op,val) %andreturnif type=constant
				cmpwi 7,4,1
				beq 7,.L343
		.L313:
				stw 26,24(1)
				stw 27,28(1)
				stw 29,36(1)
				mr 29,4
				mr 27,6
  466   oper=code(op)
				addi 9,3,-1
				slwi 10,9,2
				lis 9,.LANCHOR0@ha
				la 9,.LANCHOR0@l(9)
				add 9,9,10
				lwz 26,1136(9)
		.LVL422:
				mr 3,26
				mr 4,5
		.LVL427:
				bl IMMEDIATE.7309
		.LVL428:
  467   ->shift %if op=left %or op=right
				addi 9,3,-11
				cmplwi 7,9,1
				ble 7,.L329
		.L316:
		.LVL423:
				b .L312
		.LVL429:
		.L344:
		.L319:
  468   extra=0; extra=oper %and oper=16_f6 %if op=mul
				li 26,0
		.LVL425:
				b .L317
		.LVL426:
		.L343:
  469   %if op=div %or op=rem %start
				cmpwi 7,30,8
				beq 7,.L317
		.L318:
				addi 9,30,-9
				cmplwi 7,9,1
				ble 7,.L344
  470     %if type&wordbit#0 %then dump(16_99) %else dump(16_98)
  471     extra=oper; oper=16_f6
				li 3,246
		.LVL424:
				li 3,153
				bl DUMP.7253
		.LVL430:
		.LDL13:
  472   %finish
				li 3,246
		.LVL431:
		.L317:
		.LDL14:
  473   oper=oper+1 %if type&wordbit#0
  474   dump(oper)
				mr 11,31
				addi 3,3,1
		.LVL432:
				bl DUMP.7253
		.LVL433:
  475   %if type=bx %then dump(16_c3+extra) %andreturn
				cmpwi 7,29,17
				beq 7,.L345
		.L320:
  476   %if type=unknown %start
				cmpwi 7,29,0
				beq 7,.L346
		.L321:
				mr 11,31
				addi 3,26,195
				bl DUMP.7253
		.LVL447:
  477     tagtype(val)=var+wordbit
				lwz 26,24(1)
		.LVL448:
				lwz 27,28(1)
		.LVL449:
				lwz 29,36(1)
		.LVL450:
				b .L312
		.LVL451:
		.L346:
				slwi 9,28,2
				add 9,31,9
				li 10,5
				stw 10,1004(9)
  478     tagval(val)=-2
				li 10,-2
				stw 10,204(9)
  479     fault(varund)
				mr 11,31
				li 3,12
				bl FAULT.7019
		.LVL452:
  480   %finish
  481   fault(form) %unless type&varmask=var
  482   %if type&glabit=0 %start
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL434:
		.LDL15:
				andi. 9,29,0x1
				beq 0,.L322
		.L323:
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL453:
		.L322:
		.LBB321:
  483     %if -128<=val<=127 %then oper=16_42 %else oper=16_82
  484     oper=oper+4 %if index=0
				cmpwi 7,27,0
				bne 7,.L326
  485   %else
				addi 3,3,4
		.LVL455:
		.L326:
  486     %if index=0 %start
				cmpwi 7,27,0
				beq 7,.L327
		.L328:
		.LVL435:
		.LBB319:
  487       oper=6
				li 3,6
  488     %finishelseif -128<=val<=127 %start
				addi 9,28,128
		.LBE321:
				cmplwi 7,9,255
				ble 7,.L325
		.LBE322:
  489       oper=16_44
				li 3,68
		.LBB320:
  490     %else
				li 3,66
		.LBB322:
  491       oper=16_84
				li 3,132
		.LVL436:
		.L327:
  492     %finish
  493   %finish
				li 3,130
		.L324:
		.L325:
		.LVL454:
  494   dump(oper+extra); dump(val)
				mr 11,31
				add 3,26,3
		.LVL437:
				bl DUMP.7253
		.LVL438:
				mr 11,31
				add 3,26,3
		.LVL456:
				bl DUMP.7253
		.LVL457:
  495   dump(val>>8) %if oper&16_40=0
				addi 9,28,128
		.LBE319:
				cmplwi 7,9,255
				ble 7,.L327
		.LBE320:
				mr 11,31
				mr 3,28
				bl DUMP.7253
		.LVL439:
				mr 11,31
				mr 3,28
				bl DUMP.7253
		.LVL458:
  496   dump(16_8B) %and dump(16_C2) %if op=rem
				mr 11,31
				srwi 3,28,8
				bl DUMP.7253
		.LVL440:
				cmpwi 7,30,10
				beq 7,.L334
				lwz 26,24(1)
		.LVL441:
				lwz 27,28(1)
		.LVL442:
				lwz 29,36(1)
		.LVL443:
		.L312:
				mr 11,31
				srwi 3,28,8
				bl DUMP.7253
		.LVL459:
				cmpwi 7,30,10
				beq 7,.L334
  497   %if type&wordbit=0 %and op=load %then dump(16_32) %and dump(16_e4)
				mr 11,31
				li 3,139
				bl DUMP.7253
		.LVL464:
  498   %return
				cmpwi 7,30,1
				beq 7,.L347
				lwz 26,24(1)
		.LVL460:
				lwz 27,28(1)
		.LVL461:
				lwz 29,36(1)
		.LVL462:
				b .L312
		.LVL463:
		.L334:
				mr 11,31
				li 3,194
				bl DUMP.7253
		.LVL465:
				lwz 26,24(1)
		.LVL466:
				lwz 27,28(1)
		.LVL467:
				lwz 29,36(1)
		.LVL468:
				b .L312
		.LVL469:
		.L347:
  499 shift: dump(pushax)
				mr 11,31
				li 3,50
				bl DUMP.7253
		.LVL470:
  500   direct(load,type,val,index); dump(16_89); dump(16_c1); !Mov Cx,Ax
				mr 11,31
				li 3,228
				bl DUMP.7253
		.LVL471:
				lwz 26,24(1)
		.LVL472:
				lwz 27,28(1)
		.LVL473:
				lwz 29,36(1)
		.LVL474:
				b .L312
		.L315:
		.LVL475:
		.L329:
				li 3,80
		.LVL476:
				bl DUMP.7253
		.LVL477:
				mr 11,31
				mr 6,27
				mr 5,28
				mr 4,29
				li 3,1
				bl DIRECT.7346
		.LVL478:
  501   dump(popax)
				mr 11,31
				li 3,137
				bl DUMP.7253
		.LVL479:
				mr 11,31
				li 3,88
				bl DUMP.7253
		.LVL481:
  502   %if type&wordbit=0 %then dump(16_d2) %else dump(16_d3)
				mr 11,31
				li 3,193
				bl DUMP.7253
		.LVL480:
				andi. 9,29,0x1
				bne 0,.L330
  503   dump(oper)
				mr 11,31
				li 3,210
				bl DUMP.7253
		.LVL482:
		.L331:
				mr 11,31
				mr 3,26
				bl DUMP.7253
		.LVL483:
		.L314:
  504 %end
				lwz 26,24(1)
		.LVL484:
				lwz 27,28(1)
		.LVL485:
				lwz 29,36(1)
		.LVL486:
				b .L312
		.LVL487:
		.L330:
  505
				lwz 0,52(1)
				mtlr 0
				lwz 28,32(1)
		.LVL444:
				lwz 30,40(1)
		.LVL445:
				lwz 31,44(1)
				addi 1,1,48
				blr
		.LVL446:
		.L345:
  506 %routine double(%integer t); ! index for word arrays
		.LVL402:
				stwu 1,-32(1)
				mflr 0
				stw 0,36(1)
				stw 31,28(1)
				mr 31,11
		.L300:
				mr 11,31
				li 3,211
				bl DUMP.7253
		.LVL488:
				b .L331
		.LFE208:
				.align 2
		EXPR.7295:
		.LFB210:
  507   %returnif t&wordbit=0
				andi. 9,3,0x1
				beqlr 0
  508   dump(16_03); dump(16_c0); !Add ax,ax
				li 3,3
		.LVL403:
				bl DUMP.7253
		.LVL404:
  509 %end
				mr 11,31
				li 3,192
				bl DUMP.7253
		.LVL405:
  510
				lwz 0,36(1)
				mtlr 0
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LFE209:
				.align 2
		LABELREF.7279:
		.LFB203:
  511 %routine expr
				stwu 1,-48(1)
				mflr 0
				stw 0,52(1)
				stw 27,28(1)
				stw 29,36(1)
				stw 30,40(1)
				stw 31,44(1)
				mr 31,11
		.LVL489:
  512 %integer oper,t,v,index
  513   oper=load
				li 29,1
  514   %cycle
  515     nextatom; unary
				mr 11,31
				bl NEXTATOM.7165
		.LVL494:
  516     %if type=constant %start
				mr 11,31
				bl UNARY.7184
		.LVL495:
				lwz 30,204(31)
				cmpwi 7,30,1
				beq 7,.L366
		.L350:
  517       atompos=atompos-1 %and val=cexpr(0) %if oper=load
				cmpwi 7,29,1
				beq 7,.L365
		.L351:
  518       immediate(oper,val)
				mr 11,31
				lwz 4,200(31)
				mr 3,29
				bl IMMEDIATE.7309
		.LVL491:
		.L352:
		.L361:
				lwz 9,3824(31)
				addi 9,9,-1
				stw 9,3824(31)
  519     %finishelseif type&varmask=var %start
				mr 11,31
				li 3,0
				bl CEXPR.7186
		.LVL497:
				stw 3,200(31)
				b .L351
		.L367:
				stw 28,32(1)
		.LVL498:
  520       t=type; v=val
  521       %if open bracket %start
				andi. 9,30,0x1
				beq 0,.L367
		.L353:
				lwz 28,200(31)
		.LVL499:
				mr 11,31
				bl OPENBRACKET.7169
		.LVL500:
				mr. 6,3
				bne 0,.L369
		.L354:
		.L357:
		.LVL501:
  522         dump(pushax) %unless oper=load
				cmpwi 7,29,1
				bne 7,.L370
  523         expr; double(t)
				mr 11,31
				bl EXPR.7295
		.LVL505:
				mr 11,31
				li 3,80
				bl DUMP.7253
		.LVL511:
				mr 11,31
				bl EXPR.7295
		.LVL512:
  524         dump(16_8b); dump(16_f0);  !Mov si,ax
				mr 11,31
				mr 3,30
				bl DOUBLE.7380
		.LVL506:
				mr 11,31
				li 3,139
				bl DUMP.7253
		.LVL507:
				mr 11,31
				mr 3,30
				bl DOUBLE.7380
		.LVL513:
				mr 11,31
				li 3,139
				bl DUMP.7253
		.LVL514:
  525         dump(popax) %unless oper=load
				mr 11,31
				li 3,240
				bl DUMP.7253
		.LVL508:
		.L356:
				mr 11,31
				li 3,240
				bl DUMP.7253
		.LVL515:
  526         close bracket
				mr 11,31
				bl CLOSEBRACKET.7174
		.LVL509:
				mr 11,31
				li 3,88
				bl DUMP.7253
		.LVL516:
				b .L356
		.LVL517:
		.L368:
		.L359:
  527         index=1
				li 27,1
				b .L349
		.LVL490:
		.L366:
				mr 6,27
  528       %finishelse index=0
				b .L357
		.LVL510:
		.L370:
  529       direct(oper,t,v,index)
				mr 11,31
				mr 5,28
				mr 4,30
				mr 3,29
				bl DIRECT.7346
		.LVL502:
  530     %finishelseif type=proc %or type=xproc %or type=spec %start
				lwz 28,32(1)
		.LVL503:
				b .L361
		.LVL504:
		.L369:
  531       %if oper=load %start
				cmpwi 7,29,1
				beq 7,.L371
		.L360:
  532         call(type,val)
				addi 9,30,-8
				cmplwi 7,9,2
				ble 7,.L368
		.L358:
				mr 11,31
				lwz 4,200(31)
				mr 3,30
				bl CALL.7298
		.LVL524:
  533       %else
				b .L361
		.L348:
  534         dump(pushax); call(type,val); dump(16_8b); dump(16_d8);!mov bx,ax
				mr 11,31
				li 3,80
				bl DUMP.7253
		.LVL518:
  535         dump(popax); direct(oper,bx,0,0)
				mr 11,31
				lwz 4,200(31)
				lwz 3,204(31)
				bl CALL.7298
		.LVL519:
				mr 11,31
				li 3,88
				bl DUMP.7253
		.LVL522:
  536       %finish
				mr 11,31
				li 3,139
				bl DUMP.7253
		.LVL520:
				mr 11,31
				li 6,0
				li 5,0
				li 4,17
				mr 3,29
				bl DIRECT.7346
		.LVL523:
				b .L361
		.L371:
  537     %else
				mr 11,31
				li 3,216
				bl DUMP.7253
		.LVL521:
  538       fault(form)
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL496:
				b .L361
		.L365:
  539     %finish
  540     %returnunless atomtype(atompos)=op
				lwz 9,3824(31)
				addi 9,9,903
				slwi 9,9,2
				add 9,31,9
				lwz 9,8(9)
				cmpwi 7,9,11
				bne 7,.L348
		.L363:
  541     nextatom
				mr 11,31
				bl NEXTATOM.7165
		.LVL492:
  542     oper=val
				lwz 29,200(31)
		.LVL493:
		.L349:
  543   %repeat
  544 %end
				lwz 0,52(1)
				mtlr 0
				lwz 27,28(1)
				lwz 29,36(1)
		.LVL525:
				lwz 30,40(1)
				lwz 31,44(1)
				addi 1,1,48
				blr
		.LFE210:
				.align 2
		CALL.7298:
		.LFB206:
  545
  546 %routine return
				stwu 1,-32(1)
				mflr 0
				stw 0,36(1)
				stw 31,28(1)
				mr 31,11
  547   dump(16_8b); dump(16_e5); !Mov sp,bp
				li 3,139
				bl DUMP.7253
		.LVL394:
  548   dump(16_5d); dump(16_1f); !Pop bp, pop ds
				mr 11,31
				li 3,229
				bl DUMP.7253
		.LVL395:
				mr 11,31
				li 3,93
				bl DUMP.7253
		.LVL396:
  549   %if parms=0 %then dump(16_cb) %elsestart
				mr 11,31
				li 3,31
				bl DUMP.7253
		.LVL397:
				lwz 9,24(31)
				cmpwi 7,9,0
				beq 7,.L297
		.L294:
  550     dump(16_ca)
				mr 11,31
				li 3,202
				bl DUMP.7253
		.LVL398:
				mr 11,31
				li 3,203
				bl DUMP.7253
		.LVL401:
  551     dump(parms); dump(parms>>8)
				mr 11,31
				lwz 3,24(31)
				bl DUMP.7253
		.LVL399:
				b .L295
		.LFE211:
				.align 2
		DOUBLE.7380:
		.LFB209:
  552   %finish
				lwz 3,24(31)
				mr 11,31
				srwi 3,3,8
				bl DUMP.7253
		.LVL400:
		.L295:
  553   access=0
				li 9,0
				stw 9,20(31)
  554 %end
  555
				lwz 0,36(1)
				mtlr 0
				lwz 31,28(1)
				addi 1,1,32
				blr
		.L297:
  556 %routine terminate declarations
  557 %integer i
  558   fault(level0) %if level=0
				lwz 9,9008(1)
				cmpwi 7,9,0
				beq 7,.L553
		.L520:
  559   %if level=1 %start
				lwz 9,9008(1)
				cmpwi 7,9,1
				beq 7,.L554
		.L521:
		.LBE468:
		.LBE467:
				mr 11,31
				li 3,11
				bl FAULT.7019
		.LVL844:
				b .L520
		.L554:
  560     level=2; i=-floc
				li 9,2
				stw 9,9008(1)
  561     %if i>127 %start
				lwz 30,9004(1)
				neg 30,30
		.LVL845:
				cmpwi 7,30,127
				ble 7,.L522
  562       dump(16_81); dump(16_ec); dump(i); dump(i>>8); !Sub sp,nn
				mr 11,31
				li 3,129
				bl DUMP.7253
		.LVL846:
  563     %finishelseunless i=0 %start
				mr 11,31
				li 3,236
				bl DUMP.7253
		.LVL847:
  564       dump(16_83); dump(16_ec); dump(i); !sub sp,n
				mr 11,31
				mr 3,30
				bl DUMP.7253
		.LVL848:
				mr 11,31
				li 3,131
				bl DUMP.7253
		.LVL850:
  565     %finish
				mr 11,31
				srwi 3,30,8
				bl DUMP.7253
		.LVL849:
		.L523:
		.L524:
				cmpwi 7,30,0
				beq 7,.L524
				mr 11,31
				li 3,236
				bl DUMP.7253
		.LVL851:
  566     floc=floc-2
				lwz 9,9004(1)
				addi 9,9,-2
				stw 9,9004(1)
				b .L521
		.L522:
				mr 11,31
				mr 3,30
				bl DUMP.7253
		.LVL852:
				b .L524
		.LVL853:
		.L555:
		.LBE469:
		.LBE533:
  567   %finish
  568 %end
  569
  570 %routine constdef
  571 %integer c
  572   %cycle
  573     nextatom; %returnif type=sep
				mr 11,31
				bl NEXTATOM.7165
		.LVL680:
  574     fault(ambig) %unless type=unknown; c=val
				lwz 9,9196(1)
				cmpwi 7,9,14
				beq 7,.L530
		.L449:
				cmpwi 7,9,0
				bne 7,.L556
		.L450:
  575     fault(form) %unless equal sign
				mr 11,31
				li 3,6
				bl FAULT.7019
		.LVL676:
				b .L450
		.LVL677:
		.L451:
				mr 11,31
				bl EQUALSIGN.7179
		.LVL682:
				cmpwi 7,3,0
				bne 7,.L451
  576     tagtype(c)=constant; tagval(c)=cexpr(1)
				li 22,1
				b .L447
		.L556:
				addi 9,30,251
				slwi 9,9,2
				addi 10,1,17168
				add 9,10,9
				stw 22,-8176(9)
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL683:
				b .L451
		.LVL684:
		.L441:
		.LBE471:
		.LBE470:
  577   %repeat
				mr 11,31
				mr 3,22
				bl CEXPR.7186
		.LVL678:
				addi 9,30,51
				slwi 9,9,2
				addi 10,1,17168
				add 9,10,9
				stw 3,-8176(9)
		.LVL679:
		.L447:
				lwz 30,9192(1)
		.LVL681:
  578 %end
  579
  580 %routine vardef(%integer key)
  581 %integer t,lb,ub,c,r
  582 %integername v
  583   %cycle
  584     nextatom
				mr 11,31
				bl NEXTATOM.7165
		.LVL737:
				b .L456
		.LVL738:
		.L565:
  585 next: %returnif type=sep
  586     fault(ambig) %unless type=unknown
				lwz 9,9196(1)
				cmpwi 7,9,14
				beq 7,.L530
		.L457:
				cmpwi 7,9,0
				bne 7,.L558
		.L458:
		.LDL21:
  587     t=var
				mr 11,31
				li 3,6
				bl FAULT.7019
		.LVL685:
				b .L458
		.LVL686:
		.L559:
  588     t=t+wordbit %if key=kword
  589     t=t+glabit %if level=0
				mr 21,20
				mr 10,21
				lwz 9,9008(1)
				cmpwi 7,9,0
				bne 7,.L459
  590     tagtype(val)=t; v==tagval(val)
				addi 20,20,2
				b .L455
		.L558:
				mr 10,20
		.L459:
		.LVL700:
				lwz 9,9192(1)
				addi 30,9,-1
				addi 9,9,251
				slwi 9,9,2
				addi 8,1,17168
				add 9,8,9
				stw 10,-8176(9)
		.LVL701:
  591     %if open bracket %start
				mr 11,31
				bl OPENBRACKET.7169
		.LVL702:
				mr. 22,3
				bne 0,.L559
		.L460:
		.L462:
		.LVL703:
  592       lb=cexpr(1); nextatom; fault(form) %unless type=colon
				mr 11,31
				li 3,1
				bl CEXPR.7186
		.LVL687:
				mr 22,3
		.LVL688:
  593       ub=cexpr(1)+1; close bracket
				mr 11,31
				bl NEXTATOM.7165
		.LVL689:
				mr 11,31
				li 3,1
				bl CEXPR.7186
		.LVL690:
				addi 23,3,1
		.LVL691:
  594     %finishelse lb=0 %and ub=1
				lwz 9,9196(1)
				cmpwi 7,9,13
				bne 7,.L557
		.L461:
				mr 11,31
				bl CLOSEBRACKET.7174
		.LVL692:
				b .L462
		.LVL693:
		.L557:
  595     lb=lb+lb %and ub=ub+ub %if key=kword
				cmpwi 4,22,18
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL694:
				b .L461
		.LVL695:
		.L560:
				beq 4,.L560
		.L463:
  596     %if level=0 %start
				slwi 22,22,1
		.LVL696:
				lwz 9,9008(1)
				cmpwi 7,9,0
				bne 7,.L464
  597       v=gloc-lb; t=v+ub
				slwi 23,23,1
		.LVL697:
				b .L463
		.LVL698:
		.L561:
				li 23,1
				lwz 9,12408(1)
				subf 22,22,9
		.LVL704:
				addi 30,30,52
		.LVL705:
				slwi 30,30,2
		.LVL706:
				addi 9,1,17168
				add 30,9,30
				stw 22,-8176(30)
  598       %if equal sign %start
				add 22,22,23
		.LVL707:
				mr 11,31
				bl EQUALSIGN.7179
		.LVL708:
				cmpwi 7,3,0
				bne 7,.L466
		.L465:
		.LVL709:
		.LBB474:
		.LBB475:
				li 9,1
				stw 9,_imp_OutStream@l(25)
				lwz 9,280(28)
				stw 9,_imp_OutFile@l(26)
				mr 3,29
				bl check_outstream
		.LVL710:
		.LBE475:
		.LBE474:
		.LBB476:
		.LBB477:
				li 3,2
				bl _imp_printsymbol
		.LVL711:
		.LBE477:
		.LBE476:
		.LBB478:
		.LBB479:
				li 3,3
				bl _imp_printsymbol
		.LVL712:
		.LBE479:
		.LBE478:
		.LBB480:
		.LBB481:
				rlwinm 3,22,0,0xff
				bl _imp_printsymbol
		.LVL713:
		.LBE481:
		.LBE480:
		.LBB482:
		.LBB483:
				rlwinm 3,22,24,24,31
				bl _imp_printsymbol
		.LVL714:
		.LBE483:
		.LBE482:
  599         %cycle
  600           nextatom
				mr 11,31
				bl NEXTATOM.7165
		.LVL717:
  601           %if gloc>=t %start
				lwz 9,12408(1)
				cmpw 7,22,9
				ble 7,.L561
		.L467:
  602             gflush; ->next
				mr 11,31
				bl GFLUSH.7233
		.LVL699:
		.L456:
  603           %finish
  604           %if type=string %start
				lwz 9,9196(1)
				cmpwi 7,9,2
				beq 7,.L562
		.L468:
  605             dumpstring(val)
				mr 11,31
				lwz 3,9192(1)
				bl DUMPSTRING.7245
		.LVL716:
		.L466:
  606           %finishelseif type=sep %start
  607             readline
				mr 11,31
				bl READLINE.7035
		.LVL718:
				b .L466
		.L470:
  608           %finishelsestart
				cmpwi 7,9,14
				bne 7,.L470
  609             atompos=atompos-1; c=Cexpr(1); r=1
				lwz 9,12816(1)
				addi 9,9,-1
				stw 9,12816(1)
  610             %if open bracket %start
				mr 11,31
				li 3,1
				bl CEXPR.7186
		.LVL719:
				mr 23,3
		.LVL720:
				mr 11,31
				bl OPENBRACKET.7169
		.LVL721:
				cmpwi 7,3,0
				bne 7,.L563
		.LVL722:
		.L471:
		.LBB484:
		.LBB485:
  611               r=cexpr(1); close bracket
				li 30,1
				mr 11,31
				li 3,1
				bl CEXPR.7186
		.LVL724:
				mr 30,3
		.LVL725:
  612             %finish
				mr 11,31
				bl CLOSEBRACKET.7174
		.LVL726:
  613             %while r>0 %cycle
  614               r=r-1; %if key=kword %then gword(c) %else gbyte(c)
				cmpwi 7,30,0
				bgt 7,.L471
				b .L466
		.L564:
		.LVL727:
		.LBB487:
		.LBB486:
				cmpwi 7,30,0
				ble 7,.L466
		.LVL730:
		.L474:
				addi 30,30,-1
		.LVL731:
  615             %repeat
				beq 4,.L564
		.L475:
  616           %finish
  617         %repeat
  618       %else
  619         selectoutput(object); printsymbol(2); printsymbol(3)
				mr 11,31
				mr 3,23
				bl GBYTE.7226
		.LVL732:
				b .L476
		.LVL733:
		.L464:
  620         printsymbol(t&255); printsymbol(t>>8&255); gloc=t
  621       %finish
  622     %else
				stw 22,12408(1)
				b .L455
		.LVL715:
		.L562:
  623       fault(declate) %if level=2
				cmpwi 7,9,2
				beq 7,.L565
		.L478:
  624       floc=floc-ub+lb; v=floc-lb
				lwz 9,9004(1)
				subf 23,23,9
		.LVL734:
				add 22,22,23
		.LVL735:
				stw 22,9004(1)
				mr 11,31
				li 3,8
				bl FAULT.7019
		.LVL739:
				b .L478
		.LVL740:
		.L547:
		.L480:
		.LBE473:
		.LBE472:
		.LBB488:
		.LBB489:
  625     %finish
				addi 9,30,52
				slwi 9,9,2
				addi 10,1,17168
				add 9,10,9
				stw 23,-8176(9)
		.LVL736:
		.L455:
  626   %repeat
  627 %end
  628
  629 %routine procdef(%integer key)
				addi 9,1,17232
				stw 9,8988(1)
				stw 31,8728(1)
  630 %integer p,sym
  631 %string(31)s
  632
  633   %routine getstring
				stwu 1,-1072(1)
				mflr 0
				stw 0,1076(1)
				stw 30,1064(1)
				stw 31,1068(1)
				mr 31,11
				lwz 9,-28680(2)
				stw 9,1052(1)
				li 9,0
  634     s=""
  635     %cycle
  636       sym=line(val); %returnif sym='"'; val=val+1; s=s.tostring(sym)
				addi 30,11,8
		.LVL10:
				li 5,31
				addi 4,1,28
				mr 3,30
				bl _imp_strncpy
		.LVL11:
				lwz 9,4(31)
				lwz 10,200(9)
				add 10,9,10
				lbz 10,8087(10)
				stw 10,0(31)
				lwz 9,4(31)
				lwz 10,200(9)
				add 10,9,10
				lbz 10,8087(10)
				stw 10,0(31)
  637     %repeat
				cmpwi 7,10,34
				beq 7,.L23
		.L25:
				cmpwi 7,10,34
				bne 7,.L25
		.L23:
  638   %end
				lwz 9,1052(1)
				lwz 10,-28680(2)
				xor. 9,9,10
				li 10,0
				bne 0,.L29
				lwz 0,1076(1)
				mtlr 0
				lwz 30,1064(1)
				lwz 31,1068(1)
				addi 1,1,1072
				blr
		.L29:
				bl __stack_chk_fail
		.LVL15:
		.LFE216:
				.align 2
		IMMEDIATE.7309:
		.LFB207:
  639
  640   nextatom; fault(ambig) %unless type=unknown
				lwz 10,200(9)
				addi 10,10,1
				stw 10,200(9)
		.LVL12:
		.LBB220:
		.LBB221:
				mr 11,31
				bl NEXTATOM.7165
		.LVL741:
  641   %if key=kspec %start
				lwz 9,9196(1)
				cmpwi 7,9,0
				bne 7,.L566
		.L481:
				cmpwi 7,22,20
				beq 7,.L567
		.L482:
  642     tagtype(val)=spec; tagval(val)=gloc
				mr 11,31
				li 3,6
				bl FAULT.7019
		.LVL750:
				b .L481
		.L567:
				lwz 9,9192(1)
				addi 10,9,251
				slwi 10,10,2
				addi 8,1,17168
				add 10,8,10
				li 8,10
				stw 8,-8176(10)
  643     nextatom; fault(form) %unless type=string
				addi 5,1,796
				mr 4,30
				addi 3,1,540
				bl _imp_join
		.LVL13:
		.LBE221:
		.LBE220:
				li 5,31
				addi 4,1,284
				mr 3,30
				bl _imp_strncpy
		.LVL14:
		.LDL2:
				addi 9,9,51
				slwi 9,9,2
				addi 10,1,17168
				add 9,10,9
				lwz 10,12408(1)
				stw 10,-8176(9)
				mr 11,31
				bl NEXTATOM.7165
		.LVL751:
  644     getstring; p=length(s)
				lwz 9,9196(1)
				cmpwi 7,9,2
				beq 7,.L483
				addi 11,1,8724
				bl GETSTRING.7466
		.LVL753:
  645     selectoutput(object); printsymbol(2)
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL752:
		.L483:
				lbz 30,8732(1)
		.LVL754:
		.LBB490:
		.LBB491:
				li 9,1
				stw 9,_imp_OutStream@l(25)
				lwz 9,280(28)
				stw 9,_imp_OutFile@l(26)
				mr 3,29
				bl check_outstream
		.LVL755:
		.LBE491:
		.LBE490:
		.LBB492:
		.LBB493:
				li 3,2
				bl _imp_printsymbol
		.LVL756:
		.LBE493:
		.LBE492:
		.LBB494:
		.LBB495:
				li 3,8
				bl _imp_printsymbol
		.LVL757:
		.LBE495:
		.LBE494:
		.LBB496:
		.LBB497:
				mr 3,30
				bl _imp_printsymbol
		.LVL758:
				li 5,256
				addi 4,1,7700
				addi 3,1,7444
				bl memcpy
		.LVL759:
		.LBE497:
		.LBE496:
		.LBB498:
		.LBB499:
				li 5,256
				addi 4,1,7444
				addi 3,1,16
				bl memcpy
		.LVL760:
				addi 3,1,16
				bl _imp_printstring
		.LVL761:
		.LBE499:
		.LBE498:
		.LBB500:
		.LBB501:
				li 3,7
				bl _imp_printsymbol
		.LVL762:
		.LBE501:
		.LBE500:
		.LBB502:
		.LBB503:
				li 3,0
				bl _imp_printsymbol
		.LVL763:
		.LBE503:
		.LBE502:
  646     printsymbol(8); printsymbol(p); printstring(s)
  647     printsymbol(7); printsymbol(0)
  648     gloc=gloc+4; %return
				lwz 9,12408(1)
				addi 9,9,4
				stw 9,12408(1)
				b .L530
		.LVL764:
		.L568:
  649   %finish
  650   fault(nested) %unless level=0; level=1; access=1; textlevel=0
				lwz 9,9008(1)
				cmpwi 7,9,0
				bne 7,.L568
		.L484:
  651   v=val; t=proc; nextatom
				lwz 9,9192(1)
				stw 9,9000(1)
				mr 11,31
				li 3,7
				bl FAULT.7019
		.LVL765:
				b .L484
		.L569:
  652   %if type=string %start
				li 9,8
				stw 9,8996(1)
				lwz 9,9196(1)
				cmpwi 7,9,2
				beq 7,.L569
		.L485:
  653     getstring
				li 9,1
				stw 9,9008(1)
				mr 11,31
				bl NEXTATOM.7165
		.LVL742:
				addi 11,1,8724
				bl GETSTRING.7466
		.LVL766:
		.LBB504:
		.LBB505:
				li 9,1
				stw 9,_imp_OutStream@l(25)
				lwz 9,280(28)
				stw 9,_imp_OutFile@l(26)
				mr 3,29
				bl check_outstream
		.LVL767:
		.LBE505:
		.LBE504:
		.LBB506:
		.LBB507:
				li 3,1
				bl _imp_printsymbol
		.LVL768:
		.LBE507:
		.LBE506:
		.LBB508:
		.LBB509:
				li 3,6
				bl _imp_printsymbol
		.LVL769:
		.LBE509:
		.LBE508:
		.LBB510:
		.LBB511:
				lbz 3,8732(1)
				bl _imp_printsymbol
		.LVL770:
				li 5,256
				addi 4,1,7956
				addi 3,1,7188
				bl memcpy
		.LVL771:
		.LBE511:
		.LBE510:
		.LBB512:
		.LBB513:
				li 5,256
				addi 4,1,7188
				addi 3,1,16
				bl memcpy
		.LVL772:
				addi 3,1,16
				bl _imp_printstring
		.LVL773:
		.LBE513:
		.LBE512:
  654     selectoutput(object); printsymbol(1); printsymbol(6)
				stw 9,9012(1)
  655     printsymbol(length(s)); printstring(s)
				li 9,0
				stw 9,9180(1)
  656     t=xproc; nextatom
				li 9,9
				stw 9,8996(1)
  657   %finish
				mr 11,31
				bl NEXTATOM.7165
		.LVL774:
				b .L485
		.L570:
  658   tagtype(v)=t; tagval(v)=cloc
				lwz 9,9000(1)
				addi 10,9,251
				slwi 10,10,2
				addi 8,1,17168
				add 10,8,10
				lwz 8,8996(1)
				stw 8,-8176(10)
  659   dump(16_1e); dump(16_55); !Push ds, push bp
				addi 9,9,51
				slwi 9,9,2
				addi 10,1,17168
				add 9,10,9
				lwz 10,12412(1)
				stw 10,-8176(9)
				mr 11,31
				li 3,30
				bl DUMP.7253
		.LVL743:
  660   dump(16_8b); dump(16_ec); !Mov BP,SP
				mr 11,31
				li 3,85
				bl DUMP.7253
		.LVL744:
				mr 11,31
				li 3,139
				bl DUMP.7253
		.LVL745:
  661   dump(16_33); dump(16_C0); !Xor AX,AX
				mr 11,31
				li 3,236
				bl DUMP.7253
		.LVL746:
				mr 11,31
				li 3,51
				bl DUMP.7253
		.LVL747:
  662   dump(pushax);             !For event mechanism
				mr 11,31
				li 3,192
				bl DUMP.7253
		.LVL748:
				mr 11,31
				li 3,80
				bl DUMP.7253
		.LVL749:
  663   %if t=xproc %start
				lwz 9,8996(1)
				cmpwi 7,9,9
				beq 7,.L570
		.L486:
  664     fault(labund) %if program=""
  665     dump(16_b8); flush; !Mov ax,nn=dseg
				mr 11,31
				li 3,184
				bl DUMP.7253
		.LVL776:
  666     printsymbol(7); printsymbol(length(program)); printstring(program)
				addi 4,1,8212
				addi 3,1,12824
				bl _imp_strcmp
		.LVL775:
				cmpwi 7,3,0
				beq 7,.L571
		.L487:
				mr 11,31
				bl FLUSH.7257
		.LVL777:
		.LBB514:
		.LBB515:
				li 3,7
				bl _imp_printsymbol
		.LVL778:
		.LBE515:
		.LBE514:
		.LBB516:
		.LBB517:
				lbz 3,12824(1)
				bl _imp_printsymbol
		.LVL779:
				li 5,256
				addi 4,1,8468
				addi 3,1,6932
				bl memcpy
		.LVL780:
		.LBE517:
		.LBE516:
		.LBB518:
		.LBB519:
				li 5,256
				addi 4,1,6932
				addi 3,1,16
				bl memcpy
		.LVL781:
				addi 3,1,16
				bl _imp_printstring
		.LVL782:
		.LBE519:
		.LBE518:
  667     cloc=cloc+2; dump(16_8E); dump(16_D8); !Mov ds,ax
				lwz 9,12412(1)
				addi 9,9,2
				stw 9,12412(1)
  668   %finish
				mr 11,31
				li 3,142
				bl DUMP.7253
		.LVL783:
  669   parms=0; oldtpos=v+1
				li 9,0
				stw 9,9016(1)
				mr 11,31
				li 3,216
				bl DUMP.7253
		.LVL784:
				b .L486
		.L571:
				mr 11,31
				li 3,10
				bl FAULT.7019
		.LVL785:
				b .L487
		.L490:
  670   %while type#sep %cycle
				lwz 9,9000(1)
				addi 9,9,1
				stw 9,8992(1)
  671     fault(ambig) %unless type=unknown
				lwz 9,9196(1)
				cmpwi 7,9,14
				beq 7,.L489
				cmpwi 7,9,0
				beq 7,.L490
  672     tagtype(val)=var+wordbit
				li 30,5
				b .L488
		.L566:
				lwz 9,9192(1)
				addi 9,9,251
				slwi 9,9,2
				addi 10,1,17168
				add 9,10,9
				stw 30,-8176(9)
				mr 11,31
				li 3,6
				bl FAULT.7019
		.LVL787:
				b .L490
		.L489:
  673     parms=parms+1; nextatom
				lwz 9,9016(1)
				addi 9,9,1
				stw 9,9016(1)
  674   %repeat
				mr 11,31
				bl NEXTATOM.7165
		.LVL786:
		.L488:
  675   p=tagpos-parms; parms=parms+parms; sym=parms+6
				lwz 5,12400(1)
				lwz 7,9016(1)
		.LVL788:
  676   %while p<tagpos %cycle
				slwi 9,7,1
				stw 9,9016(1)
  677     tagval(p)=sym; sym=sym-2; p=p+1
				addi 9,9,6
				stw 9,8724(1)
				li 10,0
				li 6,1
				subf 8,7,5
		.LVL789:
				addi 4,7,1
				mtctr 4
				cmpw 7,8,5
				bgt 7,.L540
				lis 7,0x8000
				cmpw 7,5,7
				beq 7,.L540
		.LVL790:
		.L491:
				mr 7,9
		.LVL791:
				addi 9,9,-2
				bdz .L543
				slwi 10,8,2
				add 10,27,10
				stw 7,204(10)
  678   %repeat
  679   floc=0
				addi 8,8,1
		.LVL792:
				mr 10,6
				b .L491
		.L540:
				li 7,1
				mtctr 7
				b .L491
		.L543:
		.L492:
				cmpwi 7,10,0
				bne 7,.L572
		.L493:
				li 9,0
				stw 9,9004(1)
		.L448:
		.LVL793:
		.L530:
		.LBE489:
		.LBE488:
  680 %end
  681
  682 %routine instruction
				stwu 1,-48(1)
				mflr 0
				stw 0,52(1)
				stw 25,20(1)
				stw 26,24(1)
				stw 27,28(1)
				stw 28,32(1)
				stw 29,36(1)
				stw 30,40(1)
				stw 31,44(1)
				mr 31,11
  683 %integer t,v,i,oper,st,sv,si,dt,dv
  684   nextatom
				bl NEXTATOM.7165
		.LVL551:
  685   %if type=kmove %start
				lwz 30,204(31)
				cmpwi 7,30,23
				bne 7,.L406
  686     nextatom; oper=16_a4; !Movb
				mr 11,31
				bl NEXTATOM.7165
		.LVL552:
  687     %if type=string %start
				lwz 9,204(31)
				cmpwi 7,9,2
				bne 7,.L407
		.LVL553:
				li 27,164
  688       st=var+glabit; sv=gloc; si=0
				li 30,6
		.L409:
		.LVL561:
		.L410:
  689       dumpstring(val); val=gloc-sv; gflush
				lwz 26,3416(31)
		.LVL554:
				mr 11,31
				lwz 3,200(31)
				bl DUMPSTRING.7245
		.LVL555:
  690       %if val&1=0 %start
				lwz 9,3416(31)
				subf 9,26,9
				stw 9,200(31)
				lwz 9,200(31)
				andi. 10,9,0x1
				bne 0,.L408
				li 28,0
  691         val=val>>1; oper=16_a5; !Movw
				mr 11,31
				bl GFLUSH.7233
		.LVL556:
				srwi 9,9,1
				stw 9,200(31)
		.LVL557:
  692       %finish
				li 27,165
		.LVL558:
		.L408:
  693       immediate(load,val); dump(pushax)
				mr 11,31
				lwz 4,200(31)
				li 3,1
				bl IMMEDIATE.7309
		.LVL559:
  694     %else
				mr 11,31
				li 3,80
				bl DUMP.7253
		.LVL560:
  695       expr; dump(pushax)
				mr 11,31
				bl EXPR.7295
		.LVL592:
  696       nextatom; st=type; sv=val; si=0
				mr 11,31
				li 3,80
				bl DUMP.7253
		.LVL593:
				mr 11,31
				bl NEXTATOM.7165
		.LVL594:
  697       fault(form) %unless st&varmask=var
				lwz 30,204(31)
		.LVL595:
  698       %if openbracket %start
				lwz 26,200(31)
		.LVL596:
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL597:
		.LDL18:
				mr 11,31
				bl OPENBRACKET.7169
		.LVL598:
				mr. 28,3
				beq 0,.L410
  699         expr; double(st); si=1; dump(pushax)
				mr 11,31
				bl EXPR.7295
		.LVL599:
  700         closebracket
				mr 11,31
				mr 3,30
				bl DOUBLE.7380
		.LVL600:
				mr 11,31
				bl CLOSEBRACKET.7174
		.LVL602:
  701       %finish
				li 28,1
				b .L410
		.LVL603:
		.L411:
  702       oper=16_a5 %if st&wordbit#0; !Movw
				mr 11,31
				li 3,80
				bl DUMP.7253
		.LVL601:
  703     %finish
				li 27,165
  704     nextatom; dt=type; dv=val
				mr 11,31
				bl NEXTATOM.7165
		.LVL562:
  705     fault(form) %unless dt&varmask=var
				lwz 29,204(31)
		.LVL563:
  706     %if openbracket %start
				lwz 25,200(31)
		.LVL564:
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL565:
		.LDL17:
				mr 11,31
				bl OPENBRACKET.7169
		.LVL566:
				cmpwi 7,3,0
				beq 7,.L411
  707       expr; double(dt); dump(16_8b); dump(16_f8); !Mov di,ax
				mr 11,31
				bl EXPR.7295
		.LVL567:
  708       direct(lea,dt,dv,0); dump(16_03); dump(16_f8); !add di,ax
				mr 11,31
				mr 3,29
				bl DOUBLE.7380
		.LVL568:
				mr 11,31
				li 6,0
				mr 5,25
				mr 4,29
				li 3,14
				bl DIRECT.7346
		.LVL571:
  709       closebracket
				mr 11,31
				li 3,139
				bl DUMP.7253
		.LVL569:
				mr 11,31
				li 3,3
				bl DUMP.7253
		.LVL572:
				mr 11,31
				bl CLOSEBRACKET.7174
		.LVL574:
		.L412:
  710     %else
				mr 11,31
				li 3,248
				bl DUMP.7253
		.LVL570:
				mr 11,31
				li 3,248
				bl DUMP.7253
		.LVL573:
  711       direct(lea,dt,dv,0); dump(16_8b); dump(16_f8); !Mov di,ax
				mr 11,31
				li 6,0
				mr 5,25
				mr 4,29
				li 3,14
				bl DIRECT.7346
		.LVL604:
  712     %finish
				mr 11,31
				li 3,139
				bl DUMP.7253
		.LVL605:
  713     direct(lea,st,sv,0); dump(16_8b); dump(16_f0); !Mov si,ax
				mr 11,31
				li 6,0
				mr 5,26
				mr 4,30
				li 3,14
				bl DIRECT.7346
		.LVL575:
				mr 11,31
				li 3,248
				bl DUMP.7253
		.LVL606:
				b .L412
		.L414:
  714     %if si#0 %Start
				mr 11,31
				li 3,139
				bl DUMP.7253
		.LVL576:
				cmpwi 7,28,0
				beq 7,.L413
  715       dump(popax); dump(16_03); dump(16_f0); !add,si,ax
				mr 11,31
				li 3,240
				bl DUMP.7253
		.LVL577:
				mr 11,31
				li 3,88
				bl DUMP.7253
		.LVL578:
  716     %finish
				mr 11,31
				li 3,3
				bl DUMP.7253
		.LVL579:
  717     %if dt&glabit=0 %then dump(16_16) %else dump(16_1e); !Push SS/DS
				mr 11,31
				li 3,240
				bl DUMP.7253
		.LVL580:
		.L413:
				andi. 9,29,0x1
				bne 0,.L414
  718     dump(16_07);  !Pop ES
				mr 11,31
				li 3,22
				bl DUMP.7253
		.LVL581:
		.L415:
				mr 11,31
				li 3,7
				bl DUMP.7253
		.LVL582:
  719     %if st&glabit=0 %start
				andi. 30,30,0x1
		.LVL583:
				bne 0,.L416
  720       dump(16_1e); dump(16_16); dump(16_1f); !Push DS,SS, Pop DS
				mr 11,31
				li 3,30
				bl DUMP.7253
		.LVL584:
  721     %finish
				mr 11,31
				li 3,22
				bl DUMP.7253
		.LVL585:
				mr 11,31
				li 3,30
				bl DUMP.7253
		.LVL607:
				b .L415
		.LVL608:
		.L406:
  722     dump(16_59); dump(16_F2); dump(oper); !Pop cx, rep
				mr 11,31
				li 3,31
				bl DUMP.7253
		.LVL586:
		.L416:
				mr 11,31
				li 3,89
				bl DUMP.7253
		.LVL587:
  723     dump(16_1f) %if st&glabit=0; !Pop DS
				mr 11,31
				li 3,242
				bl DUMP.7253
		.LVL588:
				cmpwi 7,30,0
				bne 7,.L405
  724   %finishelseif type=krepeat %start
				mr 11,31
				mr 3,27
				bl DUMP.7253
		.LVL589:
				mr 11,31
				li 3,31
				bl DUMP.7253
		.LVL590:
		.L417:
		.L429:
		.L405:
  725     poptext; fault(type) %unless type=repexp
				mr 11,31
				bl POPTEXT.7291
		.LVL609:
  726     dump(16_E9); labelref(label,val)
				cmpwi 7,30,30
				bne 7,.L418
				lwz 3,204(31)
				cmpwi 7,3,14
				beq 7,.L419
				mr 11,31
				li 3,233
				bl DUMP.7253
		.LVL611:
  727   %finishelseif type=kjump %start
				mr 11,31
				bl FAULT.7019
		.LVL610:
		.L419:
				mr 11,31
				lwz 4,200(31)
				li 3,3
				bl LABELREF.7279
		.LVL612:
				b .L405
		.L418:
  728     nextatom; dump(16_e9); labelref(type,val)
				mr 11,31
				bl NEXTATOM.7165
		.LVL613:
  729   %finishelseif type=kreturn %start
				cmpwi 7,30,24
				bne 7,.L420
				mr 11,31
				li 3,233
				bl DUMP.7253
		.LVL614:
				b .L405
		.L420:
  730     expr %unless atomtype(atompos)=sep
				mr 11,31
				lwz 4,200(31)
				lwz 3,204(31)
				bl LABELREF.7279
		.LVL615:
				lwz 9,3824(31)
				addi 9,9,903
				slwi 9,9,2
				add 9,31,9
				lwz 9,8(9)
				cmpwi 7,9,14
				beq 7,.L422
  731     return
				cmpwi 7,30,25
				bne 7,.L421
				mr 11,31
				bl EXPR.7295
		.LVL616:
		.L422:
				mr 11,31
				bl RETURN.7405
		.LVL617:
  732   %finishelseif type&varmask=var %start
				b .L405
		.L421:
  733     t=type; v=val; i=0
  734     %if open bracket %start
				andi. 9,30,0x1
				bne 0,.L423
		.LVL618:
				lwz 28,200(31)
		.LVL619:
				mr 11,31
				bl OPENBRACKET.7169
		.LVL620:
				mr. 29,3
				beq 0,.L424
  735       expr; double(t); dump(pushax)
				mr 11,31
				bl EXPR.7295
		.LVL621:
  736       close bracket
				mr 11,31
				mr 3,30
				bl DOUBLE.7380
		.LVL622:
				mr 11,31
				bl CLOSEBRACKET.7174
		.LVL624:
  737       i=1
				mr 11,31
				li 3,80
				bl DUMP.7253
		.LVL623:
				li 29,1
		.LVL625:
		.L424:
  738     %finish
  739     fault(form) %unless equal sign
				mr 11,31
				bl EQUALSIGN.7179
		.LVL626:
				cmpwi 7,3,0
				bne 7,.L425
  740     expr; dump(16_5e) %unless i=0; !pop si
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL627:
		.L425:
				mr 11,31
				bl EXPR.7295
		.LVL628:
  741     direct(store,t,v,i)
				cmpwi 7,29,0
				beq 7,.L426
				mr 11,31
				mr 6,29
				mr 5,28
				mr 4,30
				li 3,13
				bl DIRECT.7346
		.LVL630:
  742   %finishelseif type=proc %or type=xproc %or type=spec %start
				mr 11,31
				li 3,94
				bl DUMP.7253
		.LVL629:
		.L426:
				b .L405
		.LVL631:
		.L423:
  743     call(type,val)
				mr 11,31
				lwz 4,200(31)
				mr 3,30
				bl CALL.7298
		.LVL632:
  744   %else
				addi 9,30,-8
				cmplwi 7,9,2
				bgt 7,.L427
		.L428:
				b .L405
		.L427:
  745     atompos=atompos-1
				lwz 9,3824(31)
				addi 9,9,-1
				stw 9,3824(31)
  746   %finish
  747 %end
				b .L405
		.LFE217:
				.align 2
				.globl main
		main:
		.LFB185:
  748
				lwz 0,52(1)
				mtlr 0
				lwz 25,20(1)
				lwz 26,24(1)
				lwz 27,28(1)
				lwz 28,32(1)
				lwz 29,36(1)
				lwz 30,40(1)
				lwz 31,44(1)
				addi 1,1,48
				blr
		.LVL591:
		.L407:
  749 %integerfn cond; !Evaluate condition, return value of jump opcode
				stwu 1,-32(1)
				mflr 0
				stw 0,36(1)
				stw 31,28(1)
				mr 31,11
  750   expr; nextatom; fault(form) %unless type=comp
				bl EXPR.7295
		.LVL540:
  751   v=val; nextatom; unary
				mr 11,31
				bl NEXTATOM.7165
		.LVL541:
				lwz 9,200(31)
				stw 9,8(31)
  752   %if atomtype(atompos)#sep %or (type#constant %and type&varmask#var) %start
				lwz 9,204(31)
				cmpwi 7,9,12
				beq 7,.L383
				mr 11,31
				bl NEXTATOM.7165
		.LVL543:
				mr 11,31
				bl UNARY.7184
		.LVL544:
				lwz 9,3824(31)
				addi 9,9,903
				slwi 9,9,2
				add 9,31,9
				lwz 9,8(9)
				cmpwi 7,9,14
				bne 7,.L384
				lwz 9,204(31)
				cmpwi 7,9,1
				beq 7,.L385
		.L384:
				mr 11,31
				li 3,80
				bl DUMP.7253
		.LVL545:
  753     dump(pushax); atompos=atompos-1; expr
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL542:
		.L383:
  754     dump(16_8B); dump(16_D8); dump(popax); !Mov bx,ax
				lwz 9,3824(31)
				addi 9,9,-1
				stw 9,3824(31)
				mr 11,31
				li 3,139
				bl DUMP.7253
		.LVL547:
				mr 11,31
				li 3,216
				bl DUMP.7253
		.LVL548:
  755     type=bx
				mr 11,31
				bl EXPR.7295
		.LVL546:
				li 9,17
				stw 9,204(31)
		.L385:
  756   %finish
				mr 11,31
				li 3,88
				bl DUMP.7253
		.LVL549:
  757   direct(cmp,type,val,0)
				mr 11,31
				li 6,0
				lwz 5,200(31)
				lwz 4,204(31)
				li 3,7
				bl DIRECT.7346
		.LVL550:
  758   %result=16_72 %if v=']'+128
				lwz 9,8(31)
				cmpwi 7,9,221
				beq 7,.L382
		.L387:
  759   %result=16_73 %if v='['
				li 3,114
				cmpwi 7,9,91
				beq 7,.L382
		.L388:
  760   %result=16_74 %if v='#'
				li 3,115
				cmpwi 7,9,35
				beq 7,.L382
		.L389:
  761   %result=16_75 %if v='='
				li 3,116
				cmpwi 7,9,61
				beq 7,.L382
		.L390:
  762   %result=16_76 %if v=']'
				li 3,117
				cmpwi 7,9,93
				beq 7,.L382
		.L391:
  763   %result=16_77 %if v='['+128
				li 3,118
				cmpwi 7,9,219
				beq 7,.L382
		.L392:
  764   %result=16_7c %if v='>'+128
				li 3,119
				cmpwi 7,9,190
				beq 7,.L382
		.L393:
  765   %result=16_7d %if v='<'
				li 3,124
				cmpwi 7,9,60
				beq 7,.L382
		.L394:
  766   %result=16_7e %if v='>'
				li 3,125
				cmpwi 7,9,62
				beq 7,.L382
				li 3,127
		.L382:
  767   %result=16_7f; ! %if v='<'+128
				li 3,126
		.L386:
  768 %end
				lwz 0,36(1)
				mtlr 0
				lwz 31,28(1)
				addi 1,1,32
				blr
		.LFE218:
				.align 2
		INSTRUCTION.7501:
		.LFB217:
  769
  770 ! Main Program
  771
  772 %onevent 15 %start
				li 4,1
				lis 3,_imp_event+544@ha
				la 3,_imp_event+544@l(3)
				bl __sigsetjmp
		.LVL635:
				cmpwi 7,3,0
				bne 7,.L435
		.LVL636:
				li 4,0
				ori 4,4,0x8000
				lis 3,_imp_event@ha
				la 3,_imp_event@l(3)
				bl _imp_on_event_enter
		.LVL637:
		.L435:
  773 %finish
  774
  775 %if tagpos=1 %start; ! (not via event: first time)
				lwz 9,12400(1)
				cmpwi 7,9,1
				beq 7,.L546
		.L436:
  776 program = cliparam
  777 openinput(source,program.".lc")
  778 openoutput(object,program.".iob")
				li 5,31
				addi 4,1,276
				addi 3,1,12824
				bl _imp_strncpy
		.LVL642:
		.LBB444:
		.LBB445:
  779 openoutput(list,program.".lis")
				addi 5,1,1044
				addi 4,1,12824
				addi 3,1,788
				bl _imp_join
		.LVL643:
				li 5,256
				addi 4,1,532
				addi 3,1,5652
				bl memcpy
		.LVL644:
		.LBE445:
		.LBE444:
		.LBB446:
		.LBB447:
				li 5,256
				addi 4,1,5652
				addi 3,1,16
				bl memcpy
		.LVL645:
				addi 4,1,16
				li 3,1
				bl _imp_openinput
		.LVL646:
		.LBE447:
		.LBE446:
		.LBB448:
		.LBB449:
  780 selectoutput(list)
				addi 5,1,1812
				addi 4,1,12824
				addi 3,1,1556
				bl _imp_join
		.LVL647:
				li 5,256
				addi 4,1,1300
				addi 3,1,5908
				bl memcpy
		.LVL648:
		.LBE449:
		.LBE448:
		.LBB450:
		.LBB451:
				li 5,256
				addi 4,1,5908
				addi 3,1,16
				bl memcpy
		.LVL649:
				addi 4,1,16
				li 3,1
				bl _imp_openoutput
		.LVL650:
		.LBE451:
		.LBE450:
		.LBB452:
		.LBB453:
  781 printstring("                  LC Cross-compiler  06/01/81"); newline; newline
				addi 5,1,2324
				addi 4,1,12824
				addi 3,1,2580
				bl _imp_join
		.LVL651:
				li 5,256
				addi 4,1,2068
				addi 3,1,6164
				bl memcpy
		.LVL652:
		.LBE453:
		.LBE452:
		.LBB454:
		.LBB455:
				li 5,256
				addi 4,1,6164
				addi 3,1,16
				bl memcpy
		.LVL653:
				addi 4,1,16
				li 3,2
				bl _imp_openoutput
		.LVL654:
		.LBE455:
		.LBE454:
		.LBB456:
		.LBB457:
				lis 9,_imp_OutStream@ha
				li 10,2
				stw 10,_imp_OutStream@l(9)
				lis 9,_imp_outfile+556@ha
				lwz 10,_imp_outfile+556@l(9)
				lis 9,_imp_OutFile@ha
				stw 10,_imp_OutFile@l(9)
				lis 31,.LANCHOR0@ha
				la 31,.LANCHOR0@l(31)
				addi 3,31,304
				bl check_outstream
		.LVL655:
		.LBE457:
		.LBE456:
		.LBB458:
				li 5,256
				addi 4,31,1192
				addi 3,1,2580
				bl memcpy
		.LVL656:
				li 5,256
				addi 4,1,2580
				addi 3,1,2836
				bl memcpy
		.LVL657:
				li 5,256
				addi 4,1,2836
				addi 3,1,6420
				bl memcpy
		.LVL658:
		.LBE458:
		.LBB459:
		.LBB460:
				li 5,256
				addi 4,1,6420
				addi 3,1,16
				bl memcpy
		.LVL659:
				addi 3,1,16
				bl _imp_printstring
		.LVL660:
		.LBE460:
		.LBE459:
		.LBB461:
		.LBB462:
				bl _imp_newline
		.LVL661:
		.LBE462:
		.LBE461:
		.LBB463:
		.LBB464:
				bl _imp_newline
		.LVL662:
				lwz 8,12400(1)
				slwi 10,8,2
				addi 10,10,200
				addi 9,1,8992
				add 10,9,10
				li 7,0
				li 5,17
		.LBE464:
		.LBE463:
  782   %for type=kconst,1,krepeat %cycle
  783     tag1(tagpos)=n1(type); tag2(tagpos)=n2(type)
				addi 3,31,1448
				lwzx 11,7,3
				stw 11,2404(10)
  784     tagtype(tagpos)=type; tagval(tagpos)=-1
				addi 9,31,1504
				lwzx 11,7,9
				stw 11,1604(10)
				stw 5,804(10)
  785     tagpos=tagpos+1
				li 4,-1
				li 6,14
		.L437:
				stwu 4,4(10)
		.LDL19:
				addi 5,5,1
				addi 7,7,4
				cmpwi 0,6,1
				addi 6,6,-1
				bne 0,.L437
		.LDL20:
				li 9,30
				stw 9,9196(1)
				addi 8,8,14
				stw 8,12400(1)
		.LVL663:
		.LBB465:
		.LBB466:
				lis 9,_imp_InStream@ha
				li 10,1
				stw 10,_imp_InStream@l(9)
				lis 9,_imp_infile+280@ha
				lwz 10,_imp_infile+280@l(9)
				lis 9,_imp_InFile@ha
				stw 10,_imp_InFile@l(9)
				lis 3,.LANCHOR0@ha
				la 3,.LANCHOR0@l(3)
				addi 3,3,1560
				bl check_instream
		.LVL664:
		.LBE466:
		.LBE465:
  786   %repeat
  787   selectinput(source); program=""
  788 %finish
  789
  790 %cycle
				li 5,31
				addi 4,1,3092
				addi 3,1,12824
				bl _imp_strncpy
		.LVL665:
				b .L436
		.L440:
		.L443:
  791    readline
				addi 27,1,8992
				mr 31,27
		.LBB438:
		.LBB439:
				lis 25,_imp_OutStream@ha
				lis 26,_imp_OutFile@ha
				lis 28,_imp_outfile@ha
				la 28,_imp_outfile@l(28)
				lis 29,.LANCHOR0@ha
				la 29,.LANCHOR0@l(29)
				addi 29,29,304
		.LBE439:
		.LBE438:
				mr 11,31
				bl READLINE.7035
		.LVL638:
  792    %cycle;  !Deal with labels
  793       nextatom
				mr 11,31
				bl NEXTATOM.7165
		.LVL639:
  794       %exitunless type=unknown %and atomtype(atompos)=colon
				lwz 22,9196(1)
				cmpwi 7,22,0
				bne 7,.L443
  795       tagtype(val)=label; satrefs(tagval(val),cloc)
				li 23,3
				lwz 9,12816(1)
				addi 9,9,903
				slwi 9,9,2
				addi 10,1,17168
				add 9,10,9
				lwz 9,-8168(9)
				cmpwi 7,9,13
				bne 7,.L441
		.L442:
				lwz 9,9192(1)
				addi 10,9,251
				slwi 10,10,2
				addi 8,1,17168
				add 10,8,10
				stw 23,-8176(10)
  796       tagval(val)=cloc; atompos=atompos+1
				addi 9,9,51
				slwi 9,9,2
				add 9,8,9
				mr 11,31
				lwz 4,12412(1)
				lwz 3,-8176(9)
				bl SATREFS.7270
		.LVL640:
				lwz 9,9192(1)
				addi 9,9,51
				slwi 9,9,2
				addi 10,1,17168
				add 9,10,9
				lwz 10,12412(1)
				stw 10,-8176(9)
  797       access=1
				li 30,1
		.L439:
				lwz 9,12816(1)
				addi 9,9,1
				stw 9,12816(1)
				stw 30,9012(1)
  798    %repeat
				b .L439
		.L546:
		.LBB441:
		.LBB442:
		.LBB443:
				addi 3,1,5396
				bl _imp_cliparam
		.LVL641:
		.LBE443:
		.LBE442:
		.LBE441:
  799    %continueif type=sep %and ifpos=0
				cmpwi 7,22,14
				bne 7,.L444
  800    %if type=kconst %start
				lwz 10,12404(1)
				cmpwi 7,10,0
				beq 7,.L438
		.L452:
				cmpwi 7,22,17
				bne 7,.L441
		.LBB470:
		.LBB471:
  801       constdef
  802    %finishelseif type=kbyte %or type=kword %start
  803       vardef(type)
  804    %finishelseif type=kspec %or type=kproc %start
  805       procdef(type)
				mr 9,22
				mr 9,22
				addi 10,22,-18
				cmplwi 7,10,1
				bgt 7,.L452
				li 20,5
				cmpwi 7,22,18
				beq 7,.L454
				li 20,4
		.L454:
		.LBB472:
		.LBB473:
  806    %finishelseif type=kend %start
				addi 9,9,-20
				cmplwi 7,9,1
				ble 7,.L547
		.L479:
  807       %exitif level=0; level=0
				lwz 9,9008(1)
				cmpwi 7,9,0
				beq 7,.L495
		.L496:
  808       return %unless access=0; flush
				cmpwi 7,22,22
				beq 7,.L548
		.L494:
				lwz 9,9012(1)
				cmpwi 7,9,0
				beq 7,.L497
  809       val=oldtpos; oldtpos=tagpos; tagpos=val; ! Reset tagpos before moaning
				mr 11,31
				bl RETURN.7405
		.LVL798:
		.L497:
				lwz 9,8992(1)
				stw 9,9192(1)
  810       %while oldtpos>tagpos %cycle
				li 9,0
				stw 9,9008(1)
				lwz 10,12400(1)
				stw 10,8992(1)
  811          oldtpos=oldtpos-1; fault(labund) %if tagtype(oldtpos)=unknown
				mr 11,31
				bl FLUSH.7257
		.LVL799:
				stw 9,12400(1)
				li 23,0
				li 30,1
		.L498:
		.L499:
				lwz 10,8992(1)
				lwz 7,12400(1)
				mr 8,23
				subf 9,7,10
				addi 9,9,1
				mtctr 9
				cmpw 7,7,10
				bgt 7,.L542
				lis 9,0x7fff
				ori 9,9,0xffff
				cmpw 7,7,9
				beq 7,.L542
		.L501:
				bdz .L544
				addi 10,10,-1
  812       %repeat
				mr 24,27
		.L438:
				slwi 9,10,2
				add 9,27,9
				lwz 9,1004(9)
				mr 8,30
				cmpwi 7,9,0
				bne 7,.L501
				stw 10,8992(1)
  813       %unless textlevel=0 %start
				mr 11,24
				li 3,10
				bl FAULT.7019
		.LVL800:
				b .L498
		.L542:
				li 9,1
				mtctr 9
				b .L501
		.L544:
		.L500:
				cmpwi 7,8,0
				bne 7,.L573
		.L502:
				lwz 9,9180(1)
				cmpwi 7,9,0
				beq 7,.L530
  814          poptext; textlevel=0; fault(type)
				mr 11,31
				bl POPTEXT.7291
		.LVL801:
  815       %finish
				li 9,0
				stw 9,9180(1)
  816    %finishelseif type=kprogram %start
				mr 11,31
				lwz 3,9196(1)
				bl FAULT.7019
		.LVL802:
				b .L530
		.L573:
				stw 10,8992(1)
				b .L502
		.L549:
  817       fault(ambig) %unless program=""
  818       nextatom; fault(form) %unless type=string
				cmpwi 7,22,26
				beq 7,.L549
		.L503:
				mr 11,31
				bl NEXTATOM.7165
		.LVL805:
  819       fault(form) %if val='"'; !Null name not allowed
				addi 4,1,3348
				addi 3,1,12824
				bl _imp_strcmp
		.LVL803:
				cmpwi 7,3,0
				beq 7,.L504
				lwz 9,9196(1)
				cmpwi 7,9,2
				bne 7,.L574
		.L505:
				lwz 9,9192(1)
				cmpwi 7,9,34
				beq 7,.L575
		.L506:
  820       v=line(val)
				lwz 9,9192(1)
				addi 10,1,17168
				add 9,10,9
				lbz 9,-89(9)
				stw 9,9000(1)
		.L507:
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL818:
				b .L505
		.L575:
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL819:
				b .L506
		.L550:
  821       %cycle
  822          val=val+1; program=program.tostring(v); v=line(val)
				mr 11,31
				li 3,6
				bl FAULT.7019
		.LVL804:
		.L504:
				lwz 9,9192(1)
				addi 9,9,1
				stw 9,9192(1)
		.LVL806:
		.LBB520:
		.LBB521:
  823       %repeatuntil v='"'
				cmpwi 7,9,34
				bne 7,.L507
		.L508:
  824       program=program."_" %unless charno(program,length(program))='_'
				lbz 9,12824(1)
				add 9,10,9
				lbz 9,-4344(9)
				cmpwi 7,9,95
				beq 7,.L509
		.LBB522:
		.LBB523:
  825       selectoutput(object); printsymbol(2); printsymbol(6)
				addi 5,1,4116
				addi 4,1,12824
				addi 3,1,3860
				bl _imp_join
		.LVL807:
		.LBE521:
		.LBE520:
				li 5,31
				addi 4,1,3604
				addi 3,1,12824
				bl _imp_strncpy
		.LVL808:
  826       printsymbol(length(program)); printstring(program)
  827    %finishelseif type=kcycle %start
				addi 5,1,4884
				addi 4,1,12824
				addi 3,1,4628
				bl _imp_join
		.LVL809:
		.LBE523:
		.LBE522:
				li 5,31
				addi 4,1,4372
				addi 3,1,12824
				bl _imp_strncpy
		.LVL810:
		.L509:
		.LBB524:
		.LBB440:
				li 9,1
				stw 9,_imp_OutStream@l(25)
				lwz 9,280(28)
				stw 9,_imp_OutFile@l(26)
				mr 3,29
				bl check_outstream
		.LVL811:
		.LBE440:
		.LBE524:
		.LBB525:
		.LBB526:
				li 3,2
				bl _imp_printsymbol
		.LVL812:
		.LBE526:
		.LBE525:
		.LBB527:
		.LBB528:
				li 3,6
				bl _imp_printsymbol
		.LVL813:
		.LBE528:
		.LBE527:
		.LBB529:
		.LBB530:
				lbz 3,12824(1)
				bl _imp_printsymbol
		.LVL814:
				li 5,256
				addi 4,1,5140
				addi 3,1,6676
				bl memcpy
		.LVL815:
		.LBE530:
		.LBE529:
		.LBB531:
		.LBB532:
				li 5,256
				addi 4,1,6676
				addi 3,1,16
				bl memcpy
		.LVL816:
				addi 3,1,16
				bl _imp_printstring
		.LVL817:
				b .L530
		.L574:
		.LBE532:
		.LBE531:
  828       pushtext(repexp,cloc)
				lwz 9,9192(1)
				addi 10,1,17168
				add 9,10,9
				lbz 9,-89(9)
				stw 9,9000(1)
				mr 11,31
				lwz 4,12412(1)
				li 3,14
				bl PUSHTEXT.7287
		.LVL820:
				b .L530
		.L551:
  829    %finishelseif type=kelse %start
				cmpwi 7,22,29
				beq 7,.L550
		.L510:
  830       poptext; fault(type) %unless type=finexp
				mr 11,31
				bl POPTEXT.7291
		.LVL821:
  831       satrefs(val,cloc+3)
				cmpwi 7,22,27
				beq 7,.L551
		.L511:
				lwz 3,9196(1)
				cmpwi 7,3,15
				beq 7,.L512
				mr 11,31
				lwz 4,12412(1)
				addi 4,4,3
				lwz 3,9192(1)
				bl SATREFS.7270
		.LVL823:
  832       poptext;  fault(type) %unless type=finexp
				mr 11,31
				bl FAULT.7019
		.LVL822:
		.L512:
				mr 11,31
				bl POPTEXT.7291
		.LVL824:
  833       dump(16_e9); dump(val); dump(val>>8)
				lwz 3,9196(1)
				cmpwi 7,3,15
				beq 7,.L513
				mr 11,31
				li 3,233
				bl DUMP.7253
		.LVL826:
  834       %if ifpos=0 %start
				mr 11,31
				bl FAULT.7019
		.LVL825:
		.L513:
				mr 11,31
				lwz 3,9192(1)
				bl DUMP.7253
		.LVL827:
				lwz 9,12404(1)
				cmpwi 7,9,0
				bne 7,.L514
  835         pushtext(context,0)
				mr 11,31
				lwz 3,9192(1)
				srwi 3,3,8
				bl DUMP.7253
		.LVL828:
				mr 11,31
				li 4,0
				li 3,16
				bl PUSHTEXT.7287
		.LVL829:
		.L515:
  836       %else
  837         pushtext(finexp,cloc-2)
				mr 11,31
				lwz 4,12412(1)
				addi 4,4,-2
				li 3,15
				bl PUSHTEXT.7287
		.LVL831:
  838         atompos=ifpos+1; dump(cond!!1); dump(3)
				lwz 9,12404(1)
				addi 9,9,1
				stw 9,12816(1)
  839         dump(16_E9); dump(0); dump(0)
				mr 11,31
				bl COND.7540
		.LVL832:
				mr 11,31
				xori 3,3,0x1
				bl DUMP.7253
		.LVL833:
				mr 11,31
				li 3,233
				bl DUMP.7253
		.LVL835:
  840         atompos=ifpos %and fault(form) %unless ifpos=2
				mr 11,31
				li 3,3
				bl DUMP.7253
		.LVL834:
				mr 11,31
				li 3,0
				bl DUMP.7253
		.LVL836:
				lwz 9,12404(1)
				cmpwi 7,9,2
				bne 7,.L576
		.L516:
  841         IFPOS=0
				mr 11,31
				li 3,0
				bl DUMP.7253
		.LVL837:
				li 9,0
				stw 9,12404(1)
				b .L515
		.L576:
				stw 9,12816(1)
  842       %finish
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL838:
				b .L516
		.L552:
  843       pushtext(finexp,cloc-2)
				mr 11,31
				lwz 4,12412(1)
				addi 4,4,-2
				li 3,15
				bl PUSHTEXT.7287
		.LVL830:
				b .L530
		.L514:
  844    %finishelseif type=kfinish %start
  845       poptext; fault(type) %unless type=finexp %or type=context
				mr 11,31
				bl POPTEXT.7291
		.LVL839:
  846       satrefs(val,cloc)
				cmpwi 7,22,28
				beq 7,.L552
		.L517:
				lwz 3,9196(1)
				addi 9,3,-15
				cmplwi 7,9,1
				ble 7,.L518
				mr 11,31
				lwz 4,12412(1)
				lwz 3,9192(1)
				bl SATREFS.7270
		.LVL841:
  847       poptext; satrefs(val,cloc); access=1
				mr 11,31
				bl POPTEXT.7291
		.LVL842:
  848    %else
				mr 11,31
				bl FAULT.7019
		.LVL840:
		.L518:
				mr 11,31
				lwz 4,12412(1)
				lwz 3,9192(1)
				bl SATREFS.7270
		.LVL843:
				b .L530
		.L553:
		.LBB533:
		.LBB469:
  849       fault(varund) %if type=unknown
				cmpwi 7,22,0
				bne 7,.L519
				li 9,1
				stw 9,9012(1)
  850       terminate declarations
				mr 11,31
				li 3,12
				bl FAULT.7019
		.LVL666:
		.L519:
		.LBB467:
		.LBB468:
  851       %if ifpos=0 %start;  !  Statement
				lwz 9,12404(1)
				cmpwi 7,9,0
				beq 7,.L555
		.L525:
  852          atompos=atompos-1; instruction
				lwz 9,12816(1)
				addi 9,9,-1
				stw 9,12816(1)
  853       %finishelseif type=sep %start;  ! IF condition
				mr 11,31
				bl INSTRUCTION.7501
		.LVL854:
		.L526:
  854          fault(form) %unless ifpos=atompos
				lwz 10,12816(1)
				cmpw 7,9,10
				beq 7,.L528
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL667:
		.L528:
				lwz 9,12404(1)
				addi 9,9,1
				stw 9,12816(1)
  855          atompos=ifpos+1
				lwz 10,9196(1)
				cmpwi 7,10,14
				bne 7,.L527
  856          dump(cond!!1); dump(3); dump(16_E9); dump(0); dump(0)
				mr 11,31
				bl COND.7540
		.LVL668:
				mr 11,31
				xori 3,3,0x1
				bl DUMP.7253
		.LVL669:
  857          pushtext(finexp,0); pushtext(finexp,cloc-2)
				mr 11,31
				li 3,3
				bl DUMP.7253
		.LVL670:
				mr 11,31
				li 4,0
				li 3,15
				bl PUSHTEXT.7287
		.LVL674:
  858       %else;   ! Statement IF condition
				mr 11,31
				li 3,233
				bl DUMP.7253
		.LVL671:
				mr 11,31
				lwz 4,12412(1)
				addi 4,4,-2
				li 3,15
				bl PUSHTEXT.7287
		.LVL675:
				b .L526
		.L444:
  859          oldapos=atompos-1; atompos=ifpos+1
				mr 11,31
				li 3,0
				bl DUMP.7253
		.LVL672:
				lwz 23,12816(1)
				addi 23,23,-1
		.LVL855:
  860          dump(cond)
				mr 11,31
				li 3,0
				bl DUMP.7253
		.LVL673:
				addi 9,9,1
				stw 9,12816(1)
				mr 11,31
				bl COND.7540
		.LVL856:
				mr 11,31
				bl DUMP.7253
		.LVL857:
  861          oldcpos=cpos; dump(0)
				lwz 30,9184(1)
		.LVL858:
  862          atompos=oldapos; instruction
				mr 11,31
				li 3,0
				bl DUMP.7253
		.LVL859:
				stw 23,12816(1)
  863          v=cpos-oldcpos-1; fault(far) %if v>127
				mr 11,31
				bl INSTRUCTION.7501
		.LVL860:
				lwz 9,9184(1)
				subf 9,30,9
				addi 9,9,-1
				stw 9,9000(1)
  864          code(oldcpos)=v
				cmpwi 7,9,127
				ble 7,.L529
				addi 9,1,17168
				add 30,9,30
		.LVL862:
				lwz 9,9000(1)
				stb 9,-4088(30)
  865          access=1
				mr 11,31
				li 3,9
				bl FAULT.7019
		.LVL861:
		.L529:
				li 9,1
				stw 9,9012(1)
				b .L526
		.LVL863:
		.L495:
		.LBB534:
		.LBB535:
				lis 28,_imp_OutStream@ha
				li 9,1
				stw 9,_imp_OutStream@l(28)
				lis 29,_imp_OutFile@ha
				lis 30,_imp_outfile@ha
				la 30,_imp_outfile@l(30)
				lwz 9,280(30)
				stw 9,_imp_OutFile@l(29)
				lis 31,.LANCHOR0@ha
				la 31,.LANCHOR0@l(31)
				addi 31,31,304
				mr 3,31
				bl check_outstream
		.LVL864:
		.LBE535:
		.LBE534:
		.LBB536:
		.LBB537:
				li 3,10
				bl _imp_printsymbol
		.LVL865:
		.LBE537:
		.LBE536:
		.LBB538:
		.LBB539:
				li 9,2
				stw 9,_imp_OutStream@l(28)
				lwz 9,556(30)
				stw 9,_imp_OutFile@l(29)
				mr 3,31
				bl check_outstream
		.LVL866:
		.LBE539:
		.LBE538:
		.LBB540:
		.LBB541:
				bl _imp_newline
		.LVL867:
		.LBE541:
		.LBE540:
		.LBB542:
		.LBB543:
				li 3,0
				bl exit
		.LVL868:
		.LBE543:
		.LBE542:
		.LFE185:
				.section	.rodata
				.align 2
				.set	.LANCHOR0,. + 0
		.LC5:
				.byte	15
				.string	"test-new/lc.imp"
				.zero	239
		S.7314:
				.long	.L35
				.long	.L35
				.long	.L35
				.long	.L35
				.long	.L35
				.long	.L35
				.long	.L35
				.long	.L35
				.long	.L35
				.long	.L35
				.long	.L35
				.long	.L35
		__PRETTY_FUNCTION__.6588:
				.string	"_imp_SELECTOUTPUT"
		.LC8:
				.byte	3
				.string	"** "
				.zero	251
		.LC6:
				.byte	2
				.string	" C"
				.zero	252
		.LC7:
				.byte	2
				.string	" D"
				.zero	252
				.zero	2
		S.7193:
				.long	.L243
				.long	.L243
				.long	.L243
				.long	.L243
				.long	.L243
				.long	.L243
				.long	.L243
				.long	.L243
				.long	.L243
				.long	.L243
				.long	.L243
		CODE.7348:
				.long	138
				.long	2
				.long	42
				.long	34
				.long	10
				.long	50
				.long	58
				.long	40
				.long	56
				.long	48
				.long	224
				.long	232
				.long	136
				.long	141
		.LC3:
				.byte	45
				.string	"                  LC Cross-compiler  06/01/81"
				.zero	209
		N1.7016:
				.long	4676
				.long	32060
				.long	3683
				.long	26608
				.long	22585
				.long	7367
				.long	18374
				.long	14480
				.long	24847
				.long	22585
				.long	7308
				.long	8561
				.long	5035
				.long	24843
		N2.7017:
				.long	723
				.long	4
				.long	5
				.long	3
				.long	3
				.long	0
				.long	5
				.long	16
				.long	29429
				.long	10250
				.long	5
				.long	13032
				.long	449
				.long	6902
		__PRETTY_FUNCTION__.6584:
				.string	"_imp_SELECTINPUT"
				.section	".bss"
				.align 2
				.set	.LANCHOR1,. + 0
		SEMI.7037:
				.zero	4
		QUOTE.7038:
				.zero	4
				.section	.rodata.str1.4,"aMS",@progbits,1
				.align 2
		.LC9:
				.string	"test-new/lc.imp"
		.LC10:
				.string	"->S(%d) out of bounds at %s line %d"
		.LC11:
				.string	"switch jump to undefined label S(%d): at %s line %d"
		.LC12:
				.string	"Illegal cycle I = 0, 1, GPOS - 1"
				.zero	3
		.LC13:
				.string	"Illegal cycle I = 0, 1, CPOS - 1"
				.zero	3
		.LC14:
				.string	""
				.zero	3
		.LC15:
				.string	"Illegal cycle I = TAGPOS - 1,  -1, 1"
				.section	".text"
		.Letext0:
  866       %finish
  867       ifpos=0
				li 9,0
				stw 9,12404(1)
				b .L530
		.L527:
  868    %finish
  869   nextatom; fault(form) %unless type=sep %and ifpos=0
				mr 11,31
				bl NEXTATOM.7165
		.LVL794:
  870 %repeat
				lwz 9,9196(1)
				cmpwi 7,9,14
				bne 7,.L531
  871 selectoutput(object); printsymbol(10)
				lwz 9,12404(1)
				cmpwi 7,9,0
				beq 7,.L438
		.L531:
  872 selectoutput(list); newline
  873 %endofprogram
				mr 11,31
				li 3,5
				bl FAULT.7019
		.LVL795:
				b .L438
		.LVL796:
		.L572:
				stw 7,8724(1)
				b .L493
		.LVL797:
		.L548:
 1020 Statements compiled
