/* $Header$ */ loc adi w loc sbi w : loc $1-$3 adi w inc dec: inc loc adi w : loc $2+1 adi w inc loc sbi w : loc $2-1 sbi w dec loc adi w : loc $2-1 adi w dec loc sbi w : loc $2+1 sbi w ldc adi 2*w ldc sbi 2*w : ldc $1-$3 adi 2*w loc adi w loc adi w : loc $1+$3 adi w ldc adi 2*w ldc adi 2*w : ldc $1+$3 adi 2*w loc adi w loc mli w : loc $3 mli w loc $1*$3 adi w loc adi w loc 1 sli w : loc $3 sli w loc 2*$1 adi w adp 0 : adp adp : adp $1+$2 adp lof : lof $1+$2 adp ldf : ldf $1+$2 adp !=0 loi w : lof $1 adp !=0 loi 2*w : ldf $1 adp stf : stf $1+$2 adp sdf : sdf $1+$2 adp !=0 sti w : stf $1 adp !=0 sti 2*w : sdf $1 asp 0 : asp asp : asp $1+$2 blm 0 : asp 2*p cmi w zeq : beq $2 cmi w zge : bge $2 cmi w zgt : bgt $2 cmi w zle : ble $2 cmi w zlt : blt $2 cmi w zne : bne $2 cmu w zeq : beq $2 cmu w zne : bne $2 dvi ngi $1 : ngi $1 dvi $1 lae adp : lae $1+$2 lae blm w : loi w ste $1 lae blm 2*w : loi 2*w sde $1 lae ldf : lde $1+$2 lae lof : loe $1+$2 lae loi w : loe $1 lae loi 2*w : lde $1 #ifdef INT lae loi loe $1-w ? $2%w==0: lae $3 loi $2+w lae loi lde $1-2*w ? $2%w==0: lae $3 loi $2+2*w lae $3+$4 loi lae loi ? $2%w==0 && $4%w==0: lae $3 loi $2+$4 lae sti ste $1+$2 : lae $1 sti $2+w lae sti sde $1+$2 : lae $1 sti $2+2*w lae sti loc ste $1-w : loc $3 lae $4 sti $2+w lae sti lol ste $1-w : lol $3 lae $4 sti $2+w #endif lae lae blm loe $1+$3 ste $2+$3 : lae $1 lae $2 blm $3+w lae lae blm lde $1+$3 sde $2+$3 : lae $1 lae $2 blm $3+2*w lae lae blm lae $1+$3 lae $2+$3 blm : lae $1 lae $2 blm $3+$6 lae lal blm lae $1+$3 lal $2+$3 blm ? samesign($2,$5): lae $1 lal $2 blm $3+$6 lal lae blm lal $1+$3 lae $2+$3 blm ? samesign($1,$4): lal $1 lae $2 blm $3+$6 lal lal blm lal $1+$3 lal $2+$3 blm ? samesign($1,$4) && samesign($2,$5): lal $1 lal $2 blm $3+$6 lal lal sbs w ? samesign($1,$2): loc $1-$2 lae sdf : sde $1+$2 lae stf : ste $1+$2 lae sti w : ste $1 lae sti 2*w : sde $1 lal adp ? samesign($1,$1+$2): lal $1+$2 lal blm w : loi w stl $1 lal blm 2*w : loi 2*w sdl $1 #ifdef INT /*lal sti loc stl $1-w ? notreg($4) && samesign($1,$4): */ /* loc $3 lal $4 sti $2+w */ /*lal sti loe stl $1-w ? notreg($4) && samesign($1,$4): */ /* loe $3 lal $4 sti $2+w */ #endif lal ldf ? samesign($1,$1+$2): ldl $1+$2 lal lof ? samesign($1,$1+$2): lol $1+$2 lal loi w : lol $1 lal loi 2*w : ldl $1 #ifdef INT /*lal loi lol $1-w ? notreg($3) && samesign($1,$3) && $2%w==0: */ /* lal $3 loi $2+w */ /*lal loi ldl $1-2*w ? notreg($3) && samesign($1,$3) && $2%w==0: */ /* lal $3 loi $2+2*w */ lal loi lal loi $1-$3 ? samesign($1,$3) && $2%w==0 && $4%w==0: lal $3 loi $2+$4 /*lal sti stl $1+$2 ? notreg($3) && samesign($1,$3): lal $1 sti $2+w */ /*lal sti sdl $1+$2 ? notreg($3) && samesign($1,$3): lal $1 sti $2+2*w*/ #endif lal sdf ? samesign($1,$1+$2): sdl $1+$2 lal stf ? samesign($1,$1+$2): stl $1+$2 lal sti w : stl $1 lal sti 2*w : sdl $1 #ifdef INT lde lde $1-2*w : lae $2 loi 4*w lde loe $1-w : lae $2 loi 3*w #endif lde sde $1 : lde sde lde $1+2*w sde $2+2*w : lae $1 lae $2 blm 4*w #ifdef INT /*ldl ldl $1-2*w ? notreg($1) && notreg($2) && samesign($1,$2):*/ /* lal $2 loi 4*w */ /*ldl lol $1-w ? notreg($1) && notreg($2) && samesign($1,$2): */ /* lal $2 loi 3*w */ #endif ldl sdl $1: lxa loi lxa $1 sti $2 : lxa lof lxa $1 stf $2 : lxa ldf lxa $1 sdf $2 : lxa >1 stf lxa $1 lof $2 : dup w lxa $1 stf $2 lxa >1 sdf lxa $1 ldf $2 : dup 2*w lxa $1 sdf $2 lxl lof lxl $1 stf $2 : lxl ldf lxl $1 sdf $2 : lxl >1 stf lxl $1 lof $2 : dup w lxl $1 stf $2 lxl >1 sdf lxl $1 ldf $2 : dup 2*w lxl $1 sdf $2 lxa >1 sti lxa $1 loi $2 ? $2%w==0: dup $2 lxa $1 sti $2 loc -1 adi w : dec loc dec ? sfit($1-1,8*w) : loc $1-1 loc -1 bgt : zge $2 loc -1 ble : zlt $2 loc -1 dvi w : ngi w ldc -1 dvi 2*w : ngi 2*w loc -1 loe adi w : loe $2 dec loc -1 lol adi w : lol $2 dec loc -1 mli w : ngi w ldc -1 mli 2*w : ngi 2*w loc -1 sbi w : inc loc inc ? sfit($1+1,8*w) : loc $1+1 loc 0 adi w : ldc 0 adi 2*w : loc 0 ads w : ldc 0 ads 2*w : zer adi $1 : loc 0 beq : zeq $2 loc 0 bge : zge $2 loc 0 bgt : zgt $2 loc 0 ble : zle $2 loc 0 blt : zlt $2 loc 0 bne : zne $2 loc 0 cmi w teq : teq loc 0 cmi w tge : tge loc 0 cmi w tgt : tgt loc 0 cmi w tle : tle loc 0 cmi w tlt : tlt loc 0 cmi w tne : tne loc 0 cmu w teq : teq loc 0 cmu w tne : tne loc 0 cmu w zeq : zeq $3 loc 0 cmu w zne : zne $3 loc 0 ior w : ldc 0 ior 2*w : zer ior $1 : loc 0 ste : zre $2 loc 0 stl : zrl $2 loc 0 sbi w : ldc 0 sbi 2*w : zer sbi $1 : loc 0 xor w : ldc 0 xor 2*w : zer xor $1 : loc 1 adi w : inc loc 1 bge : zgt $2 loc 1 blt : zle $2 loc 1 dvi w : ldc 1 dvi 2*w : loc 1 dvu w : loc 1 dvu 2*w : loc 1 loe adi w : loe $2 inc loc 1 lol adi w : lol $2 inc loc 0 mli w : asp w loc 0 ldc 0 mli 2*w : asp 2*w ldc 0 loc 0 mlu w : asp w loc 0 ldc 0 mlu 2*w : asp 2*w ldc 0 loc 1 mli w : ldc 1 mli 2*w : loc 1 mlu w : ldc 1 mlu 2*w : loc 1 sbi w : dec loc loe mli w : loe $2 loc $1 mli w loc loe mlu w : loe $2 loc $1 mlu w loc loe adi w loc : loe $2 loc $1 adi w loc $4 loc loe adi w inc : loe $2 loc $1 adi w inc loc loe adi w dec : loe $2 loc $1 adi w dec loc lol mli w : lol $2 loc $1 mli w loc lol mlu w : lol $2 loc $1 mlu w loc lol adi w loc : lol $2 loc $1 adi w loc $4 loc lol adi w inc : lol $2 loc $1 adi w dec loc lol adi w dec : lol $2 loc $1 adi w dec ldc lde mli 2*w : lde $2 ldc $1 mli 2*w ldc lde mlu 2*w : lde $2 ldc $1 mlu 2*w ldc lde adi 2*w : lde $2 ldc $1 adi 2*w ldc ldl mli 2*w : ldl $2 ldc $1 mli 2*w ldc ldl mlu 2*w : ldl $2 ldc $1 mlu 2*w ldc ldl adi 2*w : ldl $2 ldc $1 adi 2*w loc 2 mli w : loc 1 sli w loc 4 mli w : loc 2 sli w loc 8 mli w : loc 3 sli w loc 16 mli w : loc 4 sli w loc 32 mli w : loc 5 sli w loc 64 mli w : loc 6 sli w loc 128 mli w : loc 7 sli w loc 256 mli w : loc 8 sli w loc 2 mlu w : loc 1 slu w loc 4 mlu w : loc 2 slu w loc 8 mlu w : loc 3 slu w loc 16 mlu w : loc 4 slu w loc 32 mlu w : loc 5 slu w loc 64 mlu w : loc 6 slu w loc 128 mlu w : loc 7 slu w loc 256 mlu w : loc 8 slu w loc 2 dvi w : loc 1 sri w loc 4 dvi w : loc 2 sri w loc 8 dvi w : loc 3 sri w loc 16 dvi w : loc 4 sri w loc 32 dvi w : loc 5 sri w loc 64 dvi w : loc 6 sri w loc 128 dvi w : loc 7 sri w loc 256 dvi w : loc 8 sri w loc 2 dvu w : loc 1 sru w loc 4 dvu w : loc 2 sru w loc 8 dvu w : loc 3 sru w loc 16 dvu w : loc 4 sru w loc 32 dvu w : loc 5 sru w loc 64 dvu w : loc 6 sru w loc 128 dvu w : loc 7 sru w loc 256 dvu w : loc 8 sru w loc adi undefined : adi $1 loc sbi undefined : sbi $1 loc mli undefined : mli $1 loc dvi undefined : dvi $1 loc rmi undefined : rmi $1 loc ngi undefined : ngi $1 loc sli undefined : sli $1 loc sri undefined : sri $1 loc adu undefined : adu $1 loc sbu undefined : sbu $1 loc mlu undefined : mlu $1 loc dvu undefined : dvu $1 loc rmu undefined : rmu $1 loc slu undefined : slu $1 loc sru undefined : sru $1 loc adf undefined : adf $1 loc sbf undefined : sbf $1 loc mlf undefined : mlf $1 loc dvf undefined : dvf $1 loc ngf undefined : ngf $1 loc fif undefined : fif $1 loc fef undefined : fef $1 loc zer undefined : zer $1 loc zrf undefined : zrf $1 loc los w : loi $1 loc sts w : sti $1 loc ads w : adp $1 ldc ads 2*w ? sfit($1,8*w): adp $1 loc ass w : asp $1 loc bls w : blm $1 loc dus w : dup $1 loc loc $1 cii : loc loc $1 cuu : loc loc $1 cff : loc and undefined : and $1 loc ior undefined : ior $1 loc xor undefined : xor $1 loc com undefined : com $1 loc rol undefined : rol $1 loc 0 rol : loc ror undefined : ror $1 loc 0 ror : loc inn undefined : inn $1 loc set undefined : set $1 loc cmi undefined : cmi $1 loc cmu undefined : cmu $1 loc cmf undefined : cmf $1 loe dec ste $1: dee $1 loe inc ste $1: ine $1 loe loc 0 mli w : loc 0 #ifdef INT loe loe $1-w : lde $2 loe loe $1+w beq : lde $1 beq $3 loe loe $1+w bge : lde $1 ble $3 loe loe $1+w bgt : lde $1 blt $3 loe loe $1+w ble : lde $1 bge $3 loe loe $1+w blt : lde $1 bgt $3 loe loe $1+w bne : lde $1 bne $3 loe loe $1+w cmi w : lde $1 cmi w ngi w #endif ngi w teq : teq ngi w tge : tle ngi w tgt : tlt ngi w tle : tge ngi w tlt : tgt ngi w tne : tne #ifdef INT loe loe $1+w mli w : lde $1 mli w loe loe $1+w adi w : lde $1 adi w loe loe $1 : loe $1 dup w #endif loe ste $1 : lol blm w ? p==w : loi w sil $1 ldl blm w ? p==2*w : loi w sil $1 lol dec stl $1 : del $1 lol inc stl $1 : inl $1 lol loc 0 mli w : loc 0 lol loi w ? w==p : lil $1 ldl loi w ? p==2*w : lil $1 #ifdef INT /*lol lol $1-w ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $2 */ /*lol lol $1+w beq ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $1 beq $3 */ /*lol lol $1+w bge ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $1 ble $3 */ /*lol lol $1+w bgt ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $1 blt $3 */ /*lol lol $1+w ble ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $1 bge $3 */ /*lol lol $1+w blt ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $1 bgt $3 */ /*lol lol $1+w bne ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $1 bne $3 */ /*lol lol $1+w cmi w ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $1 cmi w ngi w */ /*lol lol $1+w mli w ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $1 mli w */ /*lol lol $1+w adi w ? notreg($1) && notreg($2) && samesign($1,$2): */ /* ldl $1 adi w */ lol lol $1 : lol $1 dup w #endif lol stl $1: lol sti w ? p==w : sil $1 ldl sti w ? p==2*w : sil $1 mli ngi $1: ngi $1 mli $1 ngi adi $1: sbi $1 ngf adf $1: sbf $1 ngi sbi $1: adi $1 ngf sbf $1: adf $1 ngi ngi $1: ngf ngf $1: #ifdef INT sde sde $1+2*w : lae $1 sti 4*w sde ste $1+2*w : lae $1 sti 3*w sde loc ste $1-w : loc $2 lae $3 sti 3*w sde lol ste $1-w : lol $2 lae $3 sti 3*w sde lde $1 : dup 2*w sde $1 #endif sdf 0 : sti 2*w #ifdef INT /*sdl sdl $1+2*w ? notreg($1) && notreg($2) && samesign($1,$2): */ /* lal $1 sti 4*w */ /*sdl stl $1+2*w ? notreg($1) && notreg($2) && samesign($1,$2): */ /* lal $1 sti 3*w */ /*sdl loc stl $1-w ? notreg($1) && notreg($3) && samesign($1,$3): */ /* loc $2 lal $3 sti 3*w */ /*sdl loe stl $1-w ? notreg($1) && notreg($3) && samesign($1,$3): */ /* loe $2 lal $3 sti 3*w */ sdl ldl $1 : dup 2*w sdl $1 ste loe $1 : dup w ste $1 ste ste $1-w : sde $2 ste loc ste $1-w : loc $2 sde $3 ste lol ste $1-w : lol $2 sde $3 stl lol $1 : dup w stl $1 #endif stf 0 : sti w sdl ldl $1 ret 2*w : ret 2*w #ifdef INT /*stl stl $1+w ? notreg($1) && notreg($2) && samesign($1,$2): sdl $1 */ /*stl loc stl $1-w ? notreg($1) && notreg($3) && samesign($1,$3): */ /* loc $2 sdl $3 */ /*stl loe stl $1-w ? notreg($1) && notreg($3) && samesign($1,$3): */ /* loe $2 sdl $3 */ #endif stl lol $1 ret w : ret w lal sti lal $1 loi $2 ret $2 : ret $2 loc sbi w loc sbi w : loc $1+$3 sbi w ldc sbi 2*w ldc sbi 2*w : ldc $1+$3 sbi 2*w loc sbi w loc adi w : loc $1-$3 sbi w ldc sbi 2*w ldc adi 2*w : ldc $1-$3 sbi 2*w loc sbi w loc mli w : loc $3 mli w loc $1*$3 sbi w loc sbi w loc 1 sli w : loc $3 sli w loc 2*$1 sbi w teq teq : tne teq tne : teq teq zne : zeq $2 teq zeq : zne $2 tge teq : tlt tge tne : tge tge zeq : zlt $2 tge zne : zge $2 tgt teq : tle tgt tne : tgt tgt zeq : zle $2 tgt zne : zgt $2 tle teq : tgt tle tne : tle tle zeq : zgt $2 tle zne : zle $2 tlt teq : tge tlt tne : tlt tlt zeq : zge $2 tlt zne : zlt $2 tne teq : teq tne tne : tne tne zeq : zeq $2 tne zne : zne $2 #ifdef INT loc 0 loc 0 loc 0 : zer 3*w zer defined loc 0 : zer $1+w #endif loi 1 loc and w ? ($2&255)==255: loi 1 loi =0&&$5<128 : loi 1 loc $5 cmi w zeq $7 loi 1 loc 1 loc w cii loc cmi w zne ? $5>=0&&$5<128 : loi 1 loc $5 cmi w zne $7 loi 1 loc 1 loc w cii loc w loc w ciu loc 255 and w: loi 1 cmp teq : cms p teq cmp tne : cms p tne cmp zeq : cms p zeq $2 cmp zne : cms p zne $2 cmu defined teq : cms $1 teq cmu defined tne : cms $1 tne cms w zeq : beq $2 cms w zne : bne $2 lol lae aar w adp : adp $4 lol $1 lae $2 aar w loe lae aar w adp : adp $4 loe $1 lae $2 aar w cmi defined zeq : cms $1 zeq $2 cmi defined zne : cms $1 zne $2 #ifdef INT loe $4 inc dup w ste : ine $1 loe $1 loe $4 dec dup w ste : dee $1 loe $1 lol $4 inc dup w stl : inl $1 lol $1 lol $4 dec dup w stl : del $1 lol $1 adp dup p ste adp -$1 ? p==w : dup p adp $1 ste $3 adp dup p sde adp -$1 ? p==2*w : dup p adp $1 sde $3 adp dup p stl adp -$1 ? p==w : dup p adp $1 stl $3 adp dup p sdl adp -$1 ? p==2*w : dup p adp $1 sdl $3 inc dup w ste dec : dup w inc ste $3 inc dup w stl dec : dup w inc stl $3 #endif bra lab $1 : lab $2 zeq bra lab $1 : zne $2 lab $1 zge bra lab $1: zlt $2 lab $1 zgt bra lab $1 : zle $2 lab $1 zlt bra lab $1 : zge $2 lab $1 zle bra lab $1 : zgt $2 lab $1 zne bra lab $1 : zeq $2 lab $1 beq bra lab $1 : bne $2 lab $1 bge bra lab $1 : blt $2 lab $1 bgt bra lab $1 : ble $2 lab $1 blt bra lab $1 : bge $2 lab $1 ble bra lab $1 : bgt $2 lab $1 bne bra lab $1 : beq $2 lab $1 lin lin : lin $2 lin lab lin : lab $2 lin $3 lin ret : ret $2 lin bra : bra $2 #ifdef INT dup p stl loi w ? p==w : stl $2 lil $2 dup p sdl loi w ? p==2*w : sdl $2 lil $2 dup p stl sti w ? p==w : stl $2 sil $2 dup p sdl sti w ? p==2*w : sdl $2 sil $2 #endif loc 0 cms w : tne zer w : loc 0 loc loc adi w ? sfit($1+$2,8*w) : loc $1+$2 loc loc sbi w ? sfit($1-$2,8*w) : loc $1-$2 loc loc mli w ? sfit($1*$2,8*w) : loc $1*$2 loc loc !=0 dvi w : loc $1/$2 loc loc and w : loc $1&$2 loc loc ior w : loc $1|$2 loc 0 loc 0 ior 2*w : loc loc xor w : loc $1^$2 loc 0 loc 0 xor 2*w : loc loc rol w : loc rotate($1,$2) loc loc ror w : loc rotate($1,8*w-$2) loc ngi w ? sfit(-$1,8*w) : loc -$1 loc com w : loc ~$1 ldc ngi 2*w : ldc -$1 /*loc lae aar w ? $1>=rom(2,0) && $1 <= rom(2,0)+rom(2,1) : */ /* adp ($1-rom(2,0))*rom(2,2) */ /*loc lae lar w ? $1>=rom(2,0) && $1 <= rom(2,0)+rom(2,1) : */ /* adp ($1-rom(2,0))*rom(2,2) loi rom(2,2) */ /*loc lae sar w ? $1>=rom(2,0) && $1 <= rom(2,0)+rom(2,1) : */ /* adp ($1-rom(2,0))*rom(2,2) sti rom(2,2) */ loc teq : loc $1==0 loc tne : loc $1!=0 loc tge : loc $1>=0 loc tle : loc $1<=0 loc tgt : loc $1>0 loc tlt : loc $1<0 loc 0 zeq : bra $2 loc zeq : loc !=0 zne : bra $2 loc zne : loc >=0 zge : bra $2 loc zge : loc <=0 zle : bra $2 loc zle : loc >0 zgt : bra $2 loc zgt : loc <0 zlt : bra $2 loc zlt : loc loc $1 beq : bra $3 loc loc beq : loc loc !=$1 bne : bra $3 loc loc bne : loc loc bge ? $1>=$2 : bra $3 loc loc bge : loc loc ble ? $1<=$2 : bra $3 loc loc ble : loc loc bgt ? $1>$2 : bra $3 loc loc bgt : loc loc blt ? $1<$2 : bra $3 loc loc blt : lae loi >4*w lal sti $2 : lae $1 lal $3 blm $2 lal loi >4*w lae sti $2 : lal $1 lae $3 blm $2 lal loi >4*w lal sti $2 ? ( $3<=$1-$2 || $3>=$1+$2 ) : lal $1 lal $3 blm $2 lae loi >4*w lae sti $2 ? ($3<=$1-$2 || $3>=$1+$2) : lae $1 lae $3 blm $2 loc 0 loc w loc cif : zrf $3 loc >=0 loc w loc 2*w ciu : ldc $1 loc loc w loc 2*w cii : ldc $1 loi loc >=0 inn $1 ? $2<$1*8 : lof ($2/(8*w))*w loc $2&(8*w-1) inn w ldl loc >=0 inn 2*w ? $2<16*w : lol $1+($2/(8*w))*w loc $2&(8*w-1) inn w lde loc >=0 inn 2*w ? $2<16*w : loe $1+($2/(8*w))*w loc $2&(8*w-1) inn w ldf loc >=0 inn 2*w ? $2<16*w : lof $1+($2/(8*w))*w loc $2&(8*w-1) inn w loc inn ? $1<0 || $1>=8*$2 : asp $2 loc 0 lol loc adi w stl $1 : loc $2 lol $1 adi w stl $4 lol loe adi w stl $1 : loe $2 lol $1 adi w stl $4 lol lol !=$1 adi w stl $1 : lol $2 lol $1 adi w stl $4 loe loc adi w ste $1 : loc $2 loe $1 adi w ste $4 loe loe !=$1 adi w ste $1 : loe $2 loe $1 adi w ste $4 loe lol adi w ste $1 : lol $2 loe $1 adi w ste $4 lol loc ior w stl $1 : loc $2 lol $1 ior w stl $4 lol loe ior w stl $1 : loe $2 lol $1 ior w stl $4 lol lol !=$1 ior w stl $1 : lol $2 lol $1 ior w stl $4 loe loc ior w ste $1 : loc $2 loe $1 ior w ste $4 loe loe !=$1 ior w ste $1 : loe $2 loe $1 ior w ste $4 loe lol ior w ste $1 : lol $2 loe $1 ior w ste $4 lol loc and w stl $1 : loc $2 lol $1 and w stl $4 lol loe and w stl $1 : loe $2 lol $1 and w stl $4 lol lol !=$1 and w stl $1 : lol $2 lol $1 and w stl $4 loe loc and w ste $1 : loc $2 loe $1 and w ste $4 loe loe !=$1 and w ste $1 : loe $2 loe $1 and w ste $4 loe lol and w ste $1 : lol $2 loe $1 and w ste $4 loi asp $1 : asp p lal loi 4*w loc loc loc loc ior 4*w ? ($3==0)+($4==0)+($5==0)+($6==0)>2 : lol $1+3*w loc $3 ior w lol $1+2*w loc $4 ior w lol $1+w loc $5 ior w lol $1 loc $6 ior w loc dup 2 stl loc dup 2 stl : loc $1 stl $3 loc $4 stl $6 loc $1 loc $4 lol lol adp stl $2 sti != p ? p==w : lol $1 sti $5 lol $2 adp $3 stl $4 ldl ldl adp sdl $2 sti != p ? p==2*w : ldl $1 sti $5 ldl $2 adp $3 sdl $4 loe loe adp ste $2 sti !=p ? p==w : loe $1 sti $5 loe $2 adp $3 ste $4 lde lde adp sde $2 sti !=p ? p==2*w : lde $1 sti $5 lde $2 adp $3 sde $4 #ifndef INT dup w stl : stl $2 lol $2 dup w ste : ste $2 loe $2 dup w sil : sil $2 lil $2 dup w loe sti w ? p==w : loe $2 sti w loe $2 loi w dup w lde sti w ? p==2*w : lde $2 sti w lde $2 loi w dup w lol stf ? p==w : lol $2 stf $3 lol $2 lof $3 dup w ldl stf ? p==2*w : ldl $2 stf $3 ldl $2 lof $3 dup w loe stf ? p==w : loe $2 stf $3 loe $2 lof $3 dup w lde stf ? p==2*w : lde $2 stf $3 lde $2 lof $3 dup 2*w sdl : sdl $2 ldl $2 dup 2*w sde : sde $2 lde $2 dup 2*w lol sti 2*w ? p==w : lol $2 sti 2*w lol $2 loi 2*w dup 2*w ldl sti 2*w ? p==2*w : ldl $2 sti 2*w ldl $2 loi 2*w dup 2*w loe sti 2*w ? p==w : loe $2 sti 2*w loe $2 loi 2*w dup 2*w lde sti 2*w ? p==2*w : lde $2 sti 2*w lde $2 loi 2*w dup 2*w lol sdf ? p==w : lol $2 sdf $3 lol $2 ldf $3 dup 2*w ldl sdf ? p==2*w : ldl $2 sdf $3 ldl $2 ldf $3 dup 2*w loe sdf ? p==w : loe $2 sdf $3 loe $2 ldf $3 dup 2*w lde sdf ? p==2*w : lde $2 sdf $3 lde $2 ldf $3 lol dup w : lol $1 lol $1 loe dup w : loe $1 loe $1 lil dup w : lil $1 lil $1 loe loi w dup 2 ? p==w : loe $1 loi w loe $1 loi w lde loi w dup 2 ? p==2*w : lde $1 loi w lde $1 loi w ldl dup 2*w : ldl $1 ldl $1 lde dup 2*w : lde $1 lde $1 #endif adp stl lol $2 adp -$1 ? p==w : dup p adp $1 stl $2 adp sdl ldl $2 adp -$1 ? p==2*w : dup p adp $1 sdl $2 adp ste loe $2 adp -$1 ? p==w : dup p adp $1 ste $2 adp sde lde $2 adp -$1 ? p==2*w : dup p adp $1 sde $2 adp sil lil $2 adp -$1 ? p==w : dup p adp $1 sil $2 adp lol sti p lol $2 loi p adp -$1 ? p==w : dup p adp $1 lol $2 sti p adp ldl sti p ldl $2 loi p adp -$1 ? p==2*w : dup p adp $1 ldl $2 sti p adp loe sti p loe $2 loi p adp -$1 ? p==w : dup p adp $1 loe $2 sti p adp lde sti p lde $2 loi p adp -$1 ? p==2*w : dup p adp $1 lde $2 sti p /* dead code patterns */ bra aar : bra $1 bra adf : bra $1 bra adi : bra $1 bra adp : bra $1 bra ads : bra $1 bra adu : bra $1 bra and : bra $1 bra asp : bra $1 bra ass : bra $1 bra beq : bra $1 bra bge : bra $1 bra bgt : bra $1 bra ble : bra $1 bra blm : bra $1 bra bls : bra $1 bra blt : bra $1 bra bne : bra $1 bra bra : bra $1 bra cai : bra $1 bra cal : bra $1 bra cff : bra $1 bra cfi : bra $1 bra cfu : bra $1 bra cif : bra $1 bra cii : bra $1 bra ciu : bra $1 bra cmf : bra $1 bra cmi : bra $1 bra cmp : bra $1 bra cms : bra $1 bra cmu : bra $1 bra com : bra $1 bra csa : bra $1 bra csb : bra $1 bra cuf : bra $1 bra cui : bra $1 bra cuu : bra $1 bra dch : bra $1 bra dec : bra $1 bra dee : bra $1 bra del : bra $1 bra dup : bra $1 bra dus : bra $1 bra dvf : bra $1 bra dvi : bra $1 bra dvu : bra $1 bra exg : bra $1 bra fef : bra $1 bra fif : bra $1 bra fil : bra $1 bra gto : bra $1 bra inc : bra $1 bra ine : bra $1 bra inl : bra $1 bra inn : bra $1 bra ior : bra $1 bra lae : bra $1 bra lal : bra $1 bra lar : bra $1 bra ldc : bra $1 bra lde : bra $1 bra ldf : bra $1 bra ldl : bra $1 bra lfr : bra $1 bra lil : bra $1 bra lim : bra $1 bra lin : bra $1 bra lni : bra $1 bra loc : bra $1 bra loe : bra $1 bra lof : bra $1 bra loi : bra $1 bra lol : bra $1 bra lor : bra $1 bra los : bra $1 bra lpb : bra $1 bra lpi : bra $1 bra lxa : bra $1 bra lxl : bra $1 bra mlf : bra $1 bra mli : bra $1 bra mlu : bra $1 bra mon : bra $1 bra ngf : bra $1 bra ngi : bra $1 bra nop : bra $1 bra rck : bra $1 bra ret : bra $1 bra rmi : bra $1 bra rmu : bra $1 bra rol : bra $1 bra ror : bra $1 bra rtt : bra $1 bra sar : bra $1 bra sbf : bra $1 bra sbi : bra $1 bra sbs : bra $1 bra sbu : bra $1 bra sde : bra $1 bra sdf : bra $1 bra sdl : bra $1 bra set : bra $1 bra sig : bra $1 bra sil : bra $1 bra sim : bra $1 bra sli : bra $1 bra slu : bra $1 bra sri : bra $1 bra sru : bra $1 bra ste : bra $1 bra stf : bra $1 bra sti : bra $1 bra stl : bra $1 bra str : bra $1 bra sts : bra $1 bra teq : bra $1 bra tge : bra $1 bra tgt : bra $1 bra tle : bra $1 bra tlt : bra $1 bra tne : bra $1 bra trp : bra $1 bra xor : bra $1 bra zeq : bra $1 bra zer : bra $1 bra zge : bra $1 bra zgt : bra $1 bra zle : bra $1 bra zlt : bra $1 bra zne : bra $1 bra zre : bra $1 bra zrf : bra $1 bra zrl : bra $1