aboutsummaryrefslogtreecommitdiffstats
path: root/lcc
diff options
context:
space:
mode:
authorzakk <zakk@edf5b092-35ff-0310-97b2-ce42778d08ea>2005-08-26 17:39:27 +0000
committerzakk <zakk@edf5b092-35ff-0310-97b2-ce42778d08ea>2005-08-26 17:39:27 +0000
commit6bf20c78f5b69d40bcc4931df93d29198435ab67 (patch)
treee3eda937a05d7db42de725b7013bd0344b987f34 /lcc
parent872d4d7f55af706737ffb361bb76ad13e7496770 (diff)
downloadioquake3-aero-6bf20c78f5b69d40bcc4931df93d29198435ab67.tar.gz
ioquake3-aero-6bf20c78f5b69d40bcc4931df93d29198435ab67.zip
newlines fixed
git-svn-id: svn://svn.icculus.org/quake3/trunk@6 edf5b092-35ff-0310-97b2-ce42778d08ea
Diffstat (limited to 'lcc')
-rwxr-xr-xlcc/COPYRIGHT122
-rwxr-xr-xlcc/LOG182
-rwxr-xr-xlcc/README42
-rwxr-xr-xlcc/README.id6
-rwxr-xr-xlcc/alpha/osf/tst/8q.1bk184
-rwxr-xr-xlcc/alpha/osf/tst/8q.2bk4
-rwxr-xr-xlcc/alpha/osf/tst/8q.sbk386
-rwxr-xr-xlcc/alpha/osf/tst/array.1bk8
-rwxr-xr-xlcc/alpha/osf/tst/array.2bk4
-rwxr-xr-xlcc/alpha/osf/tst/array.sbk520
-rwxr-xr-xlcc/alpha/osf/tst/cf.1bk102
-rwxr-xr-xlcc/alpha/osf/tst/cf.sbk340
-rwxr-xr-xlcc/alpha/osf/tst/cq.1bk90
-rwxr-xr-xlcc/alpha/osf/tst/cq.2bk8
-rwxr-xr-xlcc/alpha/osf/tst/cq.sbk33808
-rwxr-xr-xlcc/alpha/osf/tst/cvt.1bk22
-rwxr-xr-xlcc/alpha/osf/tst/cvt.2bk4
-rwxr-xr-xlcc/alpha/osf/tst/cvt.sbk1488
-rwxr-xr-xlcc/alpha/osf/tst/fields.1bk10
-rwxr-xr-xlcc/alpha/osf/tst/fields.2bk8
-rwxr-xr-xlcc/alpha/osf/tst/fields.sbk650
-rwxr-xr-xlcc/alpha/osf/tst/front.2bk58
-rwxr-xr-xlcc/alpha/osf/tst/front.sbk760
-rwxr-xr-xlcc/alpha/osf/tst/incr.2bk18
-rwxr-xr-xlcc/alpha/osf/tst/incr.sbk302
-rwxr-xr-xlcc/alpha/osf/tst/init.1bk32
-rwxr-xr-xlcc/alpha/osf/tst/init.2bk6
-rwxr-xr-xlcc/alpha/osf/tst/init.sbk666
-rwxr-xr-xlcc/alpha/osf/tst/limits.1bk28
-rwxr-xr-xlcc/alpha/osf/tst/limits.sbk810
-rwxr-xr-xlcc/alpha/osf/tst/paranoia.1bk390
-rwxr-xr-xlcc/alpha/osf/tst/paranoia.2bk32
-rwxr-xr-xlcc/alpha/osf/tst/paranoia.sbk38582
-rwxr-xr-xlcc/alpha/osf/tst/sort.1bk40
-rwxr-xr-xlcc/alpha/osf/tst/sort.2bk10
-rwxr-xr-xlcc/alpha/osf/tst/sort.sbk646
-rwxr-xr-xlcc/alpha/osf/tst/spill.2bk12
-rwxr-xr-xlcc/alpha/osf/tst/spill.sbk544
-rwxr-xr-xlcc/alpha/osf/tst/stdarg.1bk12
-rwxr-xr-xlcc/alpha/osf/tst/stdarg.2bk2
-rwxr-xr-xlcc/alpha/osf/tst/stdarg.sbk860
-rwxr-xr-xlcc/alpha/osf/tst/struct.1bk10
-rwxr-xr-xlcc/alpha/osf/tst/struct.2bk4
-rwxr-xr-xlcc/alpha/osf/tst/struct.sbk886
-rwxr-xr-xlcc/alpha/osf/tst/switch.1bk152
-rwxr-xr-xlcc/alpha/osf/tst/switch.2bk14
-rwxr-xr-xlcc/alpha/osf/tst/switch.sbk1806
-rwxr-xr-xlcc/alpha/osf/tst/wf1.1bk148
-rwxr-xr-xlcc/alpha/osf/tst/wf1.2bk4
-rwxr-xr-xlcc/alpha/osf/tst/wf1.sbk800
-rwxr-xr-xlcc/alpha/osf/tst/yacc.1bk20
-rwxr-xr-xlcc/alpha/osf/tst/yacc.2bk6
-rwxr-xr-xlcc/alpha/osf/tst/yacc.sbk4804
-rwxr-xr-xlcc/buildnt.bat6
-rwxr-xr-xlcc/buildnt.sh8
-rwxr-xr-xlcc/cpp/cpp.c644
-rwxr-xr-xlcc/cpp/cpp.h326
-rwxr-xr-xlcc/cpp/eval.c1040
-rwxr-xr-xlcc/cpp/getopt.c104
-rwxr-xr-xlcc/cpp/hideset.c224
-rwxr-xr-xlcc/cpp/include.c244
-rwxr-xr-xlcc/cpp/lex.c1162
-rwxr-xr-xlcc/cpp/macro.c1030
-rwxr-xr-xlcc/cpp/nlist.c208
-rwxr-xr-xlcc/cpp/tokens.c740
-rwxr-xr-xlcc/cpp/unix.c232
-rwxr-xr-xlcc/custom.mk2
-rwxr-xr-xlcc/doc/4.html1508
-rwxr-xr-xlcc/doc/bprint.1166
-rwxr-xr-xlcc/doc/install.html1592
-rwxr-xr-xlcc/doc/lcc.11210
-rwxr-xr-xlcc/etc/bprint.c950
-rwxr-xr-xlcc/etc/gcc-solaris.c100
-rwxr-xr-xlcc/etc/irix.c128
-rwxr-xr-xlcc/etc/lcc.c1586
-rwxr-xr-xlcc/etc/linux.c148
-rwxr-xr-xlcc/etc/ops.c380
-rwxr-xr-xlcc/etc/osf.c106
-rwxr-xr-xlcc/etc/solaris.c100
-rwxr-xr-xlcc/etc/win32.c86
-rwxr-xr-xlcc/include/alpha/osf/assert.h28
-rwxr-xr-xlcc/include/alpha/osf/ctype.h50
-rwxr-xr-xlcc/include/alpha/osf/errno.h16
-rwxr-xr-xlcc/include/alpha/osf/float.h74
-rwxr-xr-xlcc/include/alpha/osf/limits.h48
-rwxr-xr-xlcc/include/alpha/osf/locale.h72
-rwxr-xr-xlcc/include/alpha/osf/math.h58
-rwxr-xr-xlcc/include/alpha/osf/setjmp.h20
-rwxr-xr-xlcc/include/alpha/osf/signal.h40
-rwxr-xr-xlcc/include/alpha/osf/stdarg.h56
-rwxr-xr-xlcc/include/alpha/osf/stddef.h44
-rwxr-xr-xlcc/include/alpha/osf/stdio.h226
-rwxr-xr-xlcc/include/alpha/osf/stdlib.h108
-rwxr-xr-xlcc/include/alpha/osf/string.h70
-rwxr-xr-xlcc/include/alpha/osf/time.h100
-rwxr-xr-xlcc/include/mips/irix/assert.h28
-rwxr-xr-xlcc/include/mips/irix/ctype.h80
-rwxr-xr-xlcc/include/mips/irix/errno.h16
-rwxr-xr-xlcc/include/mips/irix/float.h74
-rwxr-xr-xlcc/include/mips/irix/limits.h48
-rwxr-xr-xlcc/include/mips/irix/locale.h72
-rwxr-xr-xlcc/include/mips/irix/math.h58
-rwxr-xr-xlcc/include/mips/irix/setjmp.h20
-rwxr-xr-xlcc/include/mips/irix/signal.h40
-rwxr-xr-xlcc/include/mips/irix/stdarg.h44
-rwxr-xr-xlcc/include/mips/irix/stddef.h44
-rwxr-xr-xlcc/include/mips/irix/stdio.h206
-rwxr-xr-xlcc/include/mips/irix/stdlib.h108
-rwxr-xr-xlcc/include/mips/irix/string.h70
-rwxr-xr-xlcc/include/mips/irix/time.h96
-rwxr-xr-xlcc/include/sparc/solaris/assert.h28
-rwxr-xr-xlcc/include/sparc/solaris/ctype.h92
-rwxr-xr-xlcc/include/sparc/solaris/errno.h16
-rwxr-xr-xlcc/include/sparc/solaris/float.h74
-rwxr-xr-xlcc/include/sparc/solaris/limits.h48
-rwxr-xr-xlcc/include/sparc/solaris/locale.h72
-rwxr-xr-xlcc/include/sparc/solaris/math.h60
-rwxr-xr-xlcc/include/sparc/solaris/setjmp.h20
-rwxr-xr-xlcc/include/sparc/solaris/signal.h40
-rwxr-xr-xlcc/include/sparc/solaris/stdarg.h44
-rwxr-xr-xlcc/include/sparc/solaris/stddef.h44
-rwxr-xr-xlcc/include/sparc/solaris/stdio.h208
-rwxr-xr-xlcc/include/sparc/solaris/stdlib.h108
-rwxr-xr-xlcc/include/sparc/solaris/string.h70
-rwxr-xr-xlcc/include/sparc/solaris/time.h96
-rwxr-xr-xlcc/include/x86/linux/assert.h28
-rwxr-xr-xlcc/include/x86/linux/float.h74
-rwxr-xr-xlcc/include/x86/linux/stdarg.h42
-rwxr-xr-xlcc/lburg/gram.c1360
-rwxr-xr-xlcc/lburg/gram.y404
-rwxr-xr-xlcc/lburg/lburg.1358
-rwxr-xr-xlcc/lburg/lburg.c1342
-rwxr-xr-xlcc/lburg/lburg.h130
-rwxr-xr-xlcc/lib/assert.c30
-rwxr-xr-xlcc/lib/bbexit.c246
-rwxr-xr-xlcc/lib/yynull.c24
-rwxr-xr-xlcc/makefile620
-rwxr-xr-xlcc/makefile.nt766
-rwxr-xr-xlcc/mips/irix/tst/8q.1bk184
-rwxr-xr-xlcc/mips/irix/tst/8q.2bk4
-rwxr-xr-xlcc/mips/irix/tst/8q.sbk338
-rwxr-xr-xlcc/mips/irix/tst/array.1bk8
-rwxr-xr-xlcc/mips/irix/tst/array.2bk4
-rwxr-xr-xlcc/mips/irix/tst/array.sbk470
-rwxr-xr-xlcc/mips/irix/tst/cf.1bk102
-rwxr-xr-xlcc/mips/irix/tst/cf.sbk306
-rwxr-xr-xlcc/mips/irix/tst/cq.1bk96
-rwxr-xr-xlcc/mips/irix/tst/cq.2bk50
-rwxr-xr-xlcc/mips/irix/tst/cq.sbk27240
-rwxr-xr-xlcc/mips/irix/tst/cvt.1bk22
-rwxr-xr-xlcc/mips/irix/tst/cvt.2bk4
-rwxr-xr-xlcc/mips/irix/tst/cvt.sbk1114
-rwxr-xr-xlcc/mips/irix/tst/fields.1bk10
-rwxr-xr-xlcc/mips/irix/tst/fields.2bk8
-rwxr-xr-xlcc/mips/irix/tst/fields.sbk608
-rwxr-xr-xlcc/mips/irix/tst/front.2bk58
-rwxr-xr-xlcc/mips/irix/tst/front.sbk832
-rwxr-xr-xlcc/mips/irix/tst/incr.2bk18
-rwxr-xr-xlcc/mips/irix/tst/incr.sbk298
-rwxr-xr-xlcc/mips/irix/tst/init.1bk32
-rwxr-xr-xlcc/mips/irix/tst/init.2bk6
-rwxr-xr-xlcc/mips/irix/tst/init.sbk650
-rwxr-xr-xlcc/mips/irix/tst/limits.1bk28
-rwxr-xr-xlcc/mips/irix/tst/limits.sbk792
-rwxr-xr-xlcc/mips/irix/tst/paranoia.1bk356
-rwxr-xr-xlcc/mips/irix/tst/paranoia.2bk32
-rwxr-xr-xlcc/mips/irix/tst/paranoia.sbk37314
-rwxr-xr-xlcc/mips/irix/tst/sort.1bk40
-rwxr-xr-xlcc/mips/irix/tst/sort.2bk10
-rwxr-xr-xlcc/mips/irix/tst/sort.sbk616
-rwxr-xr-xlcc/mips/irix/tst/spill.2bk12
-rwxr-xr-xlcc/mips/irix/tst/spill.sbk542
-rwxr-xr-xlcc/mips/irix/tst/stdarg.1bk12
-rwxr-xr-xlcc/mips/irix/tst/stdarg.2bk2
-rwxr-xr-xlcc/mips/irix/tst/stdarg.sbk790
-rwxr-xr-xlcc/mips/irix/tst/struct.1bk10
-rwxr-xr-xlcc/mips/irix/tst/struct.2bk4
-rwxr-xr-xlcc/mips/irix/tst/struct.sbk970
-rwxr-xr-xlcc/mips/irix/tst/switch.1bk152
-rwxr-xr-xlcc/mips/irix/tst/switch.2bk10
-rwxr-xr-xlcc/mips/irix/tst/switch.sbk1672
-rwxr-xr-xlcc/mips/irix/tst/wf1.1bk148
-rwxr-xr-xlcc/mips/irix/tst/wf1.2bk4
-rwxr-xr-xlcc/mips/irix/tst/wf1.sbk756
-rwxr-xr-xlcc/mips/irix/tst/yacc.1bk20
-rwxr-xr-xlcc/mips/irix/tst/yacc.2bk6
-rwxr-xr-xlcc/mips/irix/tst/yacc.sbk4472
-rwxr-xr-xlcc/msdev/rcc.dsp480
-rwxr-xr-xlcc/msdev/rcc.dsw58
-rwxr-xr-xlcc/packing.lst864
-rwxr-xr-xlcc/sparc/solaris/tst/8q.1bk184
-rwxr-xr-xlcc/sparc/solaris/tst/8q.2bk4
-rwxr-xr-xlcc/sparc/solaris/tst/8q.sbk288
-rwxr-xr-xlcc/sparc/solaris/tst/array.1bk8
-rwxr-xr-xlcc/sparc/solaris/tst/array.2bk4
-rwxr-xr-xlcc/sparc/solaris/tst/array.sbk344
-rwxr-xr-xlcc/sparc/solaris/tst/cf.1bk102
-rwxr-xr-xlcc/sparc/solaris/tst/cf.sbk286
-rwxr-xr-xlcc/sparc/solaris/tst/cq.1bk96
-rwxr-xr-xlcc/sparc/solaris/tst/cq.2bk50
-rwxr-xr-xlcc/sparc/solaris/tst/cq.sbk26644
-rwxr-xr-xlcc/sparc/solaris/tst/cvt.1bk22
-rwxr-xr-xlcc/sparc/solaris/tst/cvt.2bk4
-rwxr-xr-xlcc/sparc/solaris/tst/cvt.sbk1430
-rwxr-xr-xlcc/sparc/solaris/tst/fields.1bk10
-rwxr-xr-xlcc/sparc/solaris/tst/fields.2bk8
-rwxr-xr-xlcc/sparc/solaris/tst/fields.sbk618
-rwxr-xr-xlcc/sparc/solaris/tst/front.2bk58
-rwxr-xr-xlcc/sparc/solaris/tst/front.sbk520
-rwxr-xr-xlcc/sparc/solaris/tst/incr.2bk18
-rwxr-xr-xlcc/sparc/solaris/tst/incr.sbk214
-rwxr-xr-xlcc/sparc/solaris/tst/init.1bk32
-rwxr-xr-xlcc/sparc/solaris/tst/init.2bk6
-rwxr-xr-xlcc/sparc/solaris/tst/init.sbk554
-rwxr-xr-xlcc/sparc/solaris/tst/limits.1bk28
-rwxr-xr-xlcc/sparc/solaris/tst/limits.sbk768
-rwxr-xr-xlcc/sparc/solaris/tst/paranoia.1bk356
-rwxr-xr-xlcc/sparc/solaris/tst/paranoia.2bk32
-rwxr-xr-xlcc/sparc/solaris/tst/paranoia.sbk42136
-rwxr-xr-xlcc/sparc/solaris/tst/sort.1bk40
-rwxr-xr-xlcc/sparc/solaris/tst/sort.2bk10
-rwxr-xr-xlcc/sparc/solaris/tst/sort.sbk404
-rwxr-xr-xlcc/sparc/solaris/tst/spill.2bk12
-rwxr-xr-xlcc/sparc/solaris/tst/spill.sbk414
-rwxr-xr-xlcc/sparc/solaris/tst/stdarg.1bk12
-rwxr-xr-xlcc/sparc/solaris/tst/stdarg.2bk2
-rwxr-xr-xlcc/sparc/solaris/tst/stdarg.sbk752
-rwxr-xr-xlcc/sparc/solaris/tst/struct.1bk10
-rwxr-xr-xlcc/sparc/solaris/tst/struct.2bk4
-rwxr-xr-xlcc/sparc/solaris/tst/struct.sbk754
-rwxr-xr-xlcc/sparc/solaris/tst/switch.1bk152
-rwxr-xr-xlcc/sparc/solaris/tst/switch.2bk10
-rwxr-xr-xlcc/sparc/solaris/tst/switch.sbk1426
-rwxr-xr-xlcc/sparc/solaris/tst/wf1.1bk148
-rwxr-xr-xlcc/sparc/solaris/tst/wf1.2bk4
-rwxr-xr-xlcc/sparc/solaris/tst/wf1.sbk622
-rwxr-xr-xlcc/sparc/solaris/tst/yacc.1bk20
-rwxr-xr-xlcc/sparc/solaris/tst/yacc.2bk6
-rwxr-xr-xlcc/sparc/solaris/tst/yacc.sbk4494
-rwxr-xr-xlcc/src/2html.c1110
-rwxr-xr-xlcc/src/alloc.c188
-rwxr-xr-xlcc/src/alpha.md2384
-rwxr-xr-xlcc/src/asdl.c798
-rwxr-xr-xlcc/src/bind.c46
-rwxr-xr-xlcc/src/bytecode.c730
-rwxr-xr-xlcc/src/c.h1446
-rwxr-xr-xlcc/src/config.h204
-rwxr-xr-xlcc/src/dag.c1470
-rwxr-xr-xlcc/src/dagcheck.md420
-rwxr-xr-xlcc/src/decl.c2320
-rwxr-xr-xlcc/src/enode.c1086
-rwxr-xr-xlcc/src/error.c274
-rwxr-xr-xlcc/src/event.c56
-rwxr-xr-xlcc/src/expr.c1418
-rwxr-xr-xlcc/src/gen.c1660
-rwxr-xr-xlcc/src/init.c636
-rwxr-xr-xlcc/src/inits.c16
-rwxr-xr-xlcc/src/input.c268
-rwxr-xr-xlcc/src/lex.c1844
-rwxr-xr-xlcc/src/list.c112
-rwxr-xr-xlcc/src/main.c450
-rwxr-xr-xlcc/src/mips.md2240
-rwxr-xr-xlcc/src/null.c148
-rwxr-xr-xlcc/src/output.c268
-rwxr-xr-xlcc/src/pass2.c1330
-rwxr-xr-xlcc/src/prof.c454
-rwxr-xr-xlcc/src/profio.c552
-rwxr-xr-xlcc/src/rcc.asdl140
-rwxr-xr-xlcc/src/run.sh102
-rwxr-xr-xlcc/src/simp.c1174
-rwxr-xr-xlcc/src/sparc.md2326
-rwxr-xr-xlcc/src/stab.c660
-rwxr-xr-xlcc/src/stab.h226
-rwxr-xr-xlcc/src/stmt.c1394
-rwxr-xr-xlcc/src/string.c244
-rwxr-xr-xlcc/src/sym.c630
-rwxr-xr-xlcc/src/symbolic.c988
-rwxr-xr-xlcc/src/token.h266
-rwxr-xr-xlcc/src/trace.c360
-rwxr-xr-xlcc/src/tree.c446
-rwxr-xr-xlcc/src/types.c1496
-rwxr-xr-xlcc/src/x86.md1996
-rwxr-xr-xlcc/src/x86linux.md2162
-rwxr-xr-xlcc/tst/8q.c78
-rwxr-xr-xlcc/tst/array.c96
-rwxr-xr-xlcc/tst/cf.064
-rwxr-xr-xlcc/tst/cf.c64
-rwxr-xr-xlcc/tst/cq.c10632
-rwxr-xr-xlcc/tst/cvt.c70
-rwxr-xr-xlcc/tst/fields.c68
-rwxr-xr-xlcc/tst/front.c240
-rwxr-xr-xlcc/tst/incr.c78
-rwxr-xr-xlcc/tst/init.c118
-rwxr-xr-xlcc/tst/limits.c38
-rwxr-xr-xlcc/tst/paranoia.c4406
-rwxr-xr-xlcc/tst/sort.c130
-rwxr-xr-xlcc/tst/spill.c34
-rwxr-xr-xlcc/tst/stdarg.c102
-rwxr-xr-xlcc/tst/struct.c138
-rwxr-xr-xlcc/tst/switch.c274
-rwxr-xr-xlcc/tst/wf1.0230
-rwxr-xr-xlcc/tst/wf1.c202
-rwxr-xr-xlcc/tst/yacc.02
-rwxr-xr-xlcc/tst/yacc.c1182
-rwxr-xr-xlcc/x86/linux/tst/8q.1bk184
-rwxr-xr-xlcc/x86/linux/tst/8q.2bk4
-rwxr-xr-xlcc/x86/linux/tst/8q.sbk360
-rwxr-xr-xlcc/x86/linux/tst/array.1bk8
-rwxr-xr-xlcc/x86/linux/tst/array.2bk4
-rwxr-xr-xlcc/x86/linux/tst/array.sbk470
-rwxr-xr-xlcc/x86/linux/tst/cf.1bk102
-rwxr-xr-xlcc/x86/linux/tst/cf.sbk322
-rwxr-xr-xlcc/x86/linux/tst/cq.1bk96
-rwxr-xr-xlcc/x86/linux/tst/cq.2bk50
-rwxr-xr-xlcc/x86/linux/tst/cq.sbk31512
-rwxr-xr-xlcc/x86/linux/tst/cvt.1bk22
-rwxr-xr-xlcc/x86/linux/tst/cvt.2bk4
-rwxr-xr-xlcc/x86/linux/tst/cvt.sbk1584
-rwxr-xr-xlcc/x86/linux/tst/fields.1bk10
-rwxr-xr-xlcc/x86/linux/tst/fields.2bk8
-rwxr-xr-xlcc/x86/linux/tst/fields.sbk642
-rwxr-xr-xlcc/x86/linux/tst/front.2bk58
-rwxr-xr-xlcc/x86/linux/tst/front.sbk1060
-rwxr-xr-xlcc/x86/linux/tst/incr.2bk18
-rwxr-xr-xlcc/x86/linux/tst/incr.sbk362
-rwxr-xr-xlcc/x86/linux/tst/init.1bk32
-rwxr-xr-xlcc/x86/linux/tst/init.2bk6
-rwxr-xr-xlcc/x86/linux/tst/init.sbk672
-rwxr-xr-xlcc/x86/linux/tst/limits.1bk28
-rwxr-xr-xlcc/x86/linux/tst/limits.sbk792
-rwxr-xr-xlcc/x86/linux/tst/paranoia.1bk366
-rwxr-xr-xlcc/x86/linux/tst/paranoia.2bk32
-rwxr-xr-xlcc/x86/linux/tst/paranoia.sbk40496
-rwxr-xr-xlcc/x86/linux/tst/sort.1bk40
-rwxr-xr-xlcc/x86/linux/tst/sort.2bk10
-rwxr-xr-xlcc/x86/linux/tst/sort.sbk660
-rwxr-xr-xlcc/x86/linux/tst/spill.2bk12
-rwxr-xr-xlcc/x86/linux/tst/spill.sbk564
-rwxr-xr-xlcc/x86/linux/tst/stdarg.1bk12
-rwxr-xr-xlcc/x86/linux/tst/stdarg.2bk2
-rwxr-xr-xlcc/x86/linux/tst/stdarg.sbk790
-rwxr-xr-xlcc/x86/linux/tst/struct.1bk10
-rwxr-xr-xlcc/x86/linux/tst/struct.2bk4
-rwxr-xr-xlcc/x86/linux/tst/struct.sbk954
-rwxr-xr-xlcc/x86/linux/tst/switch.1bk152
-rwxr-xr-xlcc/x86/linux/tst/switch.2bk10
-rwxr-xr-xlcc/x86/linux/tst/switch.sbk1798
-rwxr-xr-xlcc/x86/linux/tst/wf1.1bk148
-rwxr-xr-xlcc/x86/linux/tst/wf1.2bk4
-rwxr-xr-xlcc/x86/linux/tst/wf1.sbk874
-rwxr-xr-xlcc/x86/linux/tst/yacc.1bk20
-rwxr-xr-xlcc/x86/linux/tst/yacc.2bk6
-rwxr-xr-xlcc/x86/linux/tst/yacc.sbk5052
-rwxr-xr-xlcc/x86/win32/tst/8q.1bk184
-rwxr-xr-xlcc/x86/win32/tst/8q.2bk4
-rwxr-xr-xlcc/x86/win32/tst/8q.sbk352
-rwxr-xr-xlcc/x86/win32/tst/array.1bk8
-rwxr-xr-xlcc/x86/win32/tst/array.2bk4
-rwxr-xr-xlcc/x86/win32/tst/array.sbk480
-rwxr-xr-xlcc/x86/win32/tst/cf.1bk102
-rwxr-xr-xlcc/x86/win32/tst/cf.sbk370
-rwxr-xr-xlcc/x86/win32/tst/cq.1bk96
-rwxr-xr-xlcc/x86/win32/tst/cq.2bk50
-rwxr-xr-xlcc/x86/win32/tst/cq.sbk33284
-rwxr-xr-xlcc/x86/win32/tst/cvt.1bk22
-rwxr-xr-xlcc/x86/win32/tst/cvt.2bk4
-rwxr-xr-xlcc/x86/win32/tst/cvt.sbk1484
-rwxr-xr-xlcc/x86/win32/tst/fields.1bk10
-rwxr-xr-xlcc/x86/win32/tst/fields.2bk8
-rwxr-xr-xlcc/x86/win32/tst/fields.sbk646
-rwxr-xr-xlcc/x86/win32/tst/front.2bk58
-rwxr-xr-xlcc/x86/win32/tst/front.sbk872
-rwxr-xr-xlcc/x86/win32/tst/incr.2bk18
-rwxr-xr-xlcc/x86/win32/tst/incr.sbk332
-rwxr-xr-xlcc/x86/win32/tst/init.1bk32
-rwxr-xr-xlcc/x86/win32/tst/init.2bk6
-rwxr-xr-xlcc/x86/win32/tst/init.sbk672
-rwxr-xr-xlcc/x86/win32/tst/limits.1bk28
-rwxr-xr-xlcc/x86/win32/tst/limits.sbk828
-rwxr-xr-xlcc/x86/win32/tst/paranoia.1bk358
-rwxr-xr-xlcc/x86/win32/tst/paranoia.2bk32
-rwxr-xr-xlcc/x86/win32/tst/paranoia.sbk40960
-rwxr-xr-xlcc/x86/win32/tst/sort.1bk40
-rwxr-xr-xlcc/x86/win32/tst/sort.2bk10
-rwxr-xr-xlcc/x86/win32/tst/sort.sbk648
-rwxr-xr-xlcc/x86/win32/tst/spill.2bk12
-rwxr-xr-xlcc/x86/win32/tst/spill.sbk518
-rwxr-xr-xlcc/x86/win32/tst/stdarg.1bk12
-rwxr-xr-xlcc/x86/win32/tst/stdarg.2bk2
-rwxr-xr-xlcc/x86/win32/tst/stdarg.sbk830
-rwxr-xr-xlcc/x86/win32/tst/struct.1bk10
-rwxr-xr-xlcc/x86/win32/tst/struct.2bk4
-rwxr-xr-xlcc/x86/win32/tst/struct.sbk906
-rwxr-xr-xlcc/x86/win32/tst/switch.1bk152
-rwxr-xr-xlcc/x86/win32/tst/switch.2bk10
-rwxr-xr-xlcc/x86/win32/tst/switch.sbk1920
-rwxr-xr-xlcc/x86/win32/tst/wf1.1bk148
-rwxr-xr-xlcc/x86/win32/tst/wf1.2bk4
-rwxr-xr-xlcc/x86/win32/tst/wf1.sbk902
-rwxr-xr-xlcc/x86/win32/tst/yacc.1bk20
-rwxr-xr-xlcc/x86/win32/tst/yacc.2bk6
-rwxr-xr-xlcc/x86/win32/tst/yacc.sbk4978
402 files changed, 259670 insertions, 259670 deletions
diff --git a/lcc/COPYRIGHT b/lcc/COPYRIGHT
index f98a895..961a48f 100755
--- a/lcc/COPYRIGHT
+++ b/lcc/COPYRIGHT
@@ -1,61 +1,61 @@
-The authors of this software are Christopher W. Fraser and
-David R. Hanson.
-
-Copyright (c) 1991,1992,1993,1994,1995,1996,1997,1998 by AT&T,
-Christopher W. Fraser, and David R. Hanson. All Rights Reserved.
-
-Permission to use, copy, modify, and distribute this software for any
-purpose, subject to the provisions described below, without fee is
-hereby granted, provided that this entire notice is included in all
-copies of any software that is or includes a copy or modification of
-this software and in all copies of the supporting documentation for
-such software.
-
-THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED
-WARRANTY. IN PARTICULAR, NEITHER THE AUTHORS NOR AT&T MAKE ANY
-REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY
-OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE.
-
-
-lcc is not public-domain software, shareware, and it is not protected
-by a `copyleft' agreement, like the code from the Free Software
-Foundation.
-
-lcc is available free for your personal research and instructional use
-under the `fair use' provisions of the copyright law. You may, however,
-redistribute lcc in whole or in part provided you acknowledge its
-source and include this CPYRIGHT file. You may, for example, include
-the distribution in a CDROM of free software, provided you charge only
-for the media, or mirror the distribution files at your site.
-
-You may not sell lcc or any product derived from it in which it is a
-significant part of the value of the product. Using the lcc front end
-to build a C syntax checker is an example of this kind of product.
-
-You may use parts of lcc in products as long as you charge for only
-those components that are entirely your own and you acknowledge the use
-of lcc clearly in all product documentation and distribution media. You
-must state clearly that your product uses or is based on parts of lcc
-and that lcc is available free of charge. You must also request that
-bug reports on your product be reported to you. Using the lcc front
-end to build a C compiler for the Motorola 88000 chip and charging for
-and distributing only the 88000 code generator is an example of this
-kind of product.
-
-Using parts of lcc in other products is more problematic. For example,
-using parts of lcc in a C++ compiler could save substantial time and
-effort and therefore contribute significantly to the profitability of
-the product. This kind of use, or any use where others stand to make a
-profit from what is primarily our work, requires a license agreement
-with Addison-Wesley. Per-copy and unlimited use licenses are
-available; for more information, contact
-
- J. Carter Shanklin
- Addison Wesley Longman, Inc.
- 2725 Sand Hill Rd.
- Menlo Park, CA 94025
- 650/854-0300 x2478 FAX: 650/614-2930 jcs@awl.com
------
-Chris Fraser / cwfraser@microsoft.com
-David Hanson / drh@microsoft.com
-$Revision: 145 $ $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $
+The authors of this software are Christopher W. Fraser and
+David R. Hanson.
+
+Copyright (c) 1991,1992,1993,1994,1995,1996,1997,1998 by AT&T,
+Christopher W. Fraser, and David R. Hanson. All Rights Reserved.
+
+Permission to use, copy, modify, and distribute this software for any
+purpose, subject to the provisions described below, without fee is
+hereby granted, provided that this entire notice is included in all
+copies of any software that is or includes a copy or modification of
+this software and in all copies of the supporting documentation for
+such software.
+
+THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED
+WARRANTY. IN PARTICULAR, NEITHER THE AUTHORS NOR AT&T MAKE ANY
+REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY
+OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE.
+
+
+lcc is not public-domain software, shareware, and it is not protected
+by a `copyleft' agreement, like the code from the Free Software
+Foundation.
+
+lcc is available free for your personal research and instructional use
+under the `fair use' provisions of the copyright law. You may, however,
+redistribute lcc in whole or in part provided you acknowledge its
+source and include this CPYRIGHT file. You may, for example, include
+the distribution in a CDROM of free software, provided you charge only
+for the media, or mirror the distribution files at your site.
+
+You may not sell lcc or any product derived from it in which it is a
+significant part of the value of the product. Using the lcc front end
+to build a C syntax checker is an example of this kind of product.
+
+You may use parts of lcc in products as long as you charge for only
+those components that are entirely your own and you acknowledge the use
+of lcc clearly in all product documentation and distribution media. You
+must state clearly that your product uses or is based on parts of lcc
+and that lcc is available free of charge. You must also request that
+bug reports on your product be reported to you. Using the lcc front
+end to build a C compiler for the Motorola 88000 chip and charging for
+and distributing only the 88000 code generator is an example of this
+kind of product.
+
+Using parts of lcc in other products is more problematic. For example,
+using parts of lcc in a C++ compiler could save substantial time and
+effort and therefore contribute significantly to the profitability of
+the product. This kind of use, or any use where others stand to make a
+profit from what is primarily our work, requires a license agreement
+with Addison-Wesley. Per-copy and unlimited use licenses are
+available; for more information, contact
+
+ J. Carter Shanklin
+ Addison Wesley Longman, Inc.
+ 2725 Sand Hill Rd.
+ Menlo Park, CA 94025
+ 650/854-0300 x2478 FAX: 650/614-2930 jcs@awl.com
+-----
+Chris Fraser / cwfraser@microsoft.com
+David Hanson / drh@microsoft.com
+$Revision: 145 $ $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $
diff --git a/lcc/LOG b/lcc/LOG
index 3d83da3..dd23f62 100755
--- a/lcc/LOG
+++ b/lcc/LOG
@@ -1,91 +1,91 @@
-From lcc 4.0 to 4.1:
-
-Changes:
-
-See doc/4.html for changes in the code-generation interface.
-
-Warns about constants that are too large, eg, short x = 70000;
-
-Warns about expressions that have no effect.
-
-Unsigned shorts are now used for wide-character constants, and
-wchar_t is a typedef for unsigned short.
-
-More assertions in gen.c to confirm that the register allocator is
-configured correctly; ie, that the various masks, wildcards,
-clobbers, and targets are internally consistent. Full checking
-appears impractical, but there's still more than than there was
-before.
-
-On the SPARC, lcc now emits .type and .size directives
-unconditionally.
-
-On the x86, constants are now emitted into the text segment.
-
-If the environment variable "LCCDIR" is defined, it gives the directory
-that contains the preprocessor, the compiler proper, and the
-lcc-specific libraries.
-
-Under Windows, lcc searches the directories named in the environment
-variable "include" for header files.
-
-Errors fixed:
-
-Erroneously complained about unknown sizes for some const fields, eg,
-typedef struct foo ref; struct foo { const ref *q; int a; };
-f(ref *p, int i) { return p->q[i].a; }
-
--A -A erroneously complained about static main's that didn't conform
-to the ANSI-mandated "int main(void)" or "int main(int, char **)".
-
-Silently generated incorrect code for a structure copy with a
-post-incremented target, eg,
-struct { int x; } data = {1}, copy[2], *q = copy;
-main() { *q++ = data; }
-
-Generated incorrect values in some expressions with constant pointers.
-
-Silently truncated string literals longer than 4095 characters.
-
-Failed to emit debugging information for uninitialized globals.
-
-Failed to diagnose missing sizes in some multi-dimensioned array
-declarators, eg, extern int x[][10]; int x[5][];
-
-Silently emitted incorrect sizes and initalizations for some
-incomplete multi-dimensioned arrays involving pointers and whose size
-is determined by the number of initializers.
-
-Set only the x.name field for some back-end symbols (eg, wildcards),
-and the uninitialized name field crashed some debugging output.
-
-uses() failed to check the register *set* as well as the register
-mask. There's no known bug demo, but a wildcard set might be
-contrived that would need the test.
-
-Crashed with -b on some conditional expressions involving calls, eg,
-int p; void g(void) { p ? f() : 1; }
-
-On the MIPS, sometimes generated an incorrect frame size and thus a
-crash when floating-point registers were saved.
-
-On the SPARC, erroneously reused a register variable as a temporary
-when the variable is compiler-generated.
-
-On the SPARC with -b, emitted incorrect code for returning structs.
-
-On the x86, conversion from float to int rounded instead of truncated
-with the default floating-point mode.
-
-On the x86, eliminate rtargets for kids after the first (see p. 419).
-
-On the x86, substitute reg for freg, in order to use the common reg
-rules. Needed only for debugging output, since we're not using any
-float regs as regs at this time.
-
-On the x86, "double f(); main(){f();}" wasn't popping the FP register stack.
-
-On the x86, ECX was saved by the callee, when it should have been
-saved by the caller.
-
-$Id: LOG 145 2001-10-17 21:53:10Z timo $
+From lcc 4.0 to 4.1:
+
+Changes:
+
+See doc/4.html for changes in the code-generation interface.
+
+Warns about constants that are too large, eg, short x = 70000;
+
+Warns about expressions that have no effect.
+
+Unsigned shorts are now used for wide-character constants, and
+wchar_t is a typedef for unsigned short.
+
+More assertions in gen.c to confirm that the register allocator is
+configured correctly; ie, that the various masks, wildcards,
+clobbers, and targets are internally consistent. Full checking
+appears impractical, but there's still more than than there was
+before.
+
+On the SPARC, lcc now emits .type and .size directives
+unconditionally.
+
+On the x86, constants are now emitted into the text segment.
+
+If the environment variable "LCCDIR" is defined, it gives the directory
+that contains the preprocessor, the compiler proper, and the
+lcc-specific libraries.
+
+Under Windows, lcc searches the directories named in the environment
+variable "include" for header files.
+
+Errors fixed:
+
+Erroneously complained about unknown sizes for some const fields, eg,
+typedef struct foo ref; struct foo { const ref *q; int a; };
+f(ref *p, int i) { return p->q[i].a; }
+
+-A -A erroneously complained about static main's that didn't conform
+to the ANSI-mandated "int main(void)" or "int main(int, char **)".
+
+Silently generated incorrect code for a structure copy with a
+post-incremented target, eg,
+struct { int x; } data = {1}, copy[2], *q = copy;
+main() { *q++ = data; }
+
+Generated incorrect values in some expressions with constant pointers.
+
+Silently truncated string literals longer than 4095 characters.
+
+Failed to emit debugging information for uninitialized globals.
+
+Failed to diagnose missing sizes in some multi-dimensioned array
+declarators, eg, extern int x[][10]; int x[5][];
+
+Silently emitted incorrect sizes and initalizations for some
+incomplete multi-dimensioned arrays involving pointers and whose size
+is determined by the number of initializers.
+
+Set only the x.name field for some back-end symbols (eg, wildcards),
+and the uninitialized name field crashed some debugging output.
+
+uses() failed to check the register *set* as well as the register
+mask. There's no known bug demo, but a wildcard set might be
+contrived that would need the test.
+
+Crashed with -b on some conditional expressions involving calls, eg,
+int p; void g(void) { p ? f() : 1; }
+
+On the MIPS, sometimes generated an incorrect frame size and thus a
+crash when floating-point registers were saved.
+
+On the SPARC, erroneously reused a register variable as a temporary
+when the variable is compiler-generated.
+
+On the SPARC with -b, emitted incorrect code for returning structs.
+
+On the x86, conversion from float to int rounded instead of truncated
+with the default floating-point mode.
+
+On the x86, eliminate rtargets for kids after the first (see p. 419).
+
+On the x86, substitute reg for freg, in order to use the common reg
+rules. Needed only for debugging output, since we're not using any
+float regs as regs at this time.
+
+On the x86, "double f(); main(){f();}" wasn't popping the FP register stack.
+
+On the x86, ECX was saved by the callee, when it should have been
+saved by the caller.
+
+$Id: LOG 145 2001-10-17 21:53:10Z timo $
diff --git a/lcc/README b/lcc/README
index 4f64dee..4ba4d3f 100755
--- a/lcc/README
+++ b/lcc/README
@@ -1,21 +1,21 @@
-This hierarchy is the distribution for lcc version 4.1.
-
-lcc version 3.x is described in the book "A Retargetable C Compiler:
-Design and Implementation" (Addison-Wesley, 1995, ISBN 0-8053-1670-1).
-There are significant differences between 3.x and 4.x, most notably in
-the intermediate code. doc/4.html summarizes the differences.
-
-VERSION 4.1 IS INCOMPATIBLE WITH EARLIER VERSIONS OF LCC. DO NOT
-UNLOAD THIS DISTRIBUTION ON TOP OF A 3.X DISTRIBUTION.
-
-LOG describes the changes since the last release.
-
-CPYRIGHT describes the conditions under you can use, copy, modify, and
-distribute lcc or works derived from lcc.
-
-doc/install.html is an HTML file that gives a complete description of
-the distribution and installation instructions.
-
-Chris Fraser / cwfraser@microsoft.com
-David Hanson / drh@microsoft.com
-$Revision: 145 $ $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $
+This hierarchy is the distribution for lcc version 4.1.
+
+lcc version 3.x is described in the book "A Retargetable C Compiler:
+Design and Implementation" (Addison-Wesley, 1995, ISBN 0-8053-1670-1).
+There are significant differences between 3.x and 4.x, most notably in
+the intermediate code. doc/4.html summarizes the differences.
+
+VERSION 4.1 IS INCOMPATIBLE WITH EARLIER VERSIONS OF LCC. DO NOT
+UNLOAD THIS DISTRIBUTION ON TOP OF A 3.X DISTRIBUTION.
+
+LOG describes the changes since the last release.
+
+CPYRIGHT describes the conditions under you can use, copy, modify, and
+distribute lcc or works derived from lcc.
+
+doc/install.html is an HTML file that gives a complete description of
+the distribution and installation instructions.
+
+Chris Fraser / cwfraser@microsoft.com
+David Hanson / drh@microsoft.com
+$Revision: 145 $ $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $
diff --git a/lcc/README.id b/lcc/README.id
index 2277953..6611a37 100755
--- a/lcc/README.id
+++ b/lcc/README.id
@@ -1,3 +1,3 @@
-2001-10-31 Timothee Besset <ttimo@idsoftware.com>
-updated from the $/source/lcc code
-modified for portability and use with >= 1.31 mod source release
+2001-10-31 Timothee Besset <ttimo@idsoftware.com>
+updated from the $/source/lcc code
+modified for portability and use with >= 1.31 mod source release
diff --git a/lcc/alpha/osf/tst/8q.1bk b/lcc/alpha/osf/tst/8q.1bk
index c66df8e..7ed6437 100755
--- a/lcc/alpha/osf/tst/8q.1bk
+++ b/lcc/alpha/osf/tst/8q.1bk
@@ -1,92 +1,92 @@
-1 5 8 6 3 7 2 4
-1 6 8 3 7 4 2 5
-1 7 4 6 8 2 5 3
-1 7 5 8 2 4 6 3
-2 4 6 8 3 1 7 5
-2 5 7 1 3 8 6 4
-2 5 7 4 1 8 6 3
-2 6 1 7 4 8 3 5
-2 6 8 3 1 4 7 5
-2 7 3 6 8 5 1 4
-2 7 5 8 1 4 6 3
-2 8 6 1 3 5 7 4
-3 1 7 5 8 2 4 6
-3 5 2 8 1 7 4 6
-3 5 2 8 6 4 7 1
-3 5 7 1 4 2 8 6
-3 5 8 4 1 7 2 6
-3 6 2 5 8 1 7 4
-3 6 2 7 1 4 8 5
-3 6 2 7 5 1 8 4
-3 6 4 1 8 5 7 2
-3 6 4 2 8 5 7 1
-3 6 8 1 4 7 5 2
-3 6 8 1 5 7 2 4
-3 6 8 2 4 1 7 5
-3 7 2 8 5 1 4 6
-3 7 2 8 6 4 1 5
-3 8 4 7 1 6 2 5
-4 1 5 8 2 7 3 6
-4 1 5 8 6 3 7 2
-4 2 5 8 6 1 3 7
-4 2 7 3 6 8 1 5
-4 2 7 3 6 8 5 1
-4 2 7 5 1 8 6 3
-4 2 8 5 7 1 3 6
-4 2 8 6 1 3 5 7
-4 6 1 5 2 8 3 7
-4 6 8 2 7 1 3 5
-4 6 8 3 1 7 5 2
-4 7 1 8 5 2 6 3
-4 7 3 8 2 5 1 6
-4 7 5 2 6 1 3 8
-4 7 5 3 1 6 8 2
-4 8 1 3 6 2 7 5
-4 8 1 5 7 2 6 3
-4 8 5 3 1 7 2 6
-5 1 4 6 8 2 7 3
-5 1 8 4 2 7 3 6
-5 1 8 6 3 7 2 4
-5 2 4 6 8 3 1 7
-5 2 4 7 3 8 6 1
-5 2 6 1 7 4 8 3
-5 2 8 1 4 7 3 6
-5 3 1 6 8 2 4 7
-5 3 1 7 2 8 6 4
-5 3 8 4 7 1 6 2
-5 7 1 3 8 6 4 2
-5 7 1 4 2 8 6 3
-5 7 2 4 8 1 3 6
-5 7 2 6 3 1 4 8
-5 7 2 6 3 1 8 4
-5 7 4 1 3 8 6 2
-5 8 4 1 3 6 2 7
-5 8 4 1 7 2 6 3
-6 1 5 2 8 3 7 4
-6 2 7 1 3 5 8 4
-6 2 7 1 4 8 5 3
-6 3 1 7 5 8 2 4
-6 3 1 8 4 2 7 5
-6 3 1 8 5 2 4 7
-6 3 5 7 1 4 2 8
-6 3 5 8 1 4 2 7
-6 3 7 2 4 8 1 5
-6 3 7 2 8 5 1 4
-6 3 7 4 1 8 2 5
-6 4 1 5 8 2 7 3
-6 4 2 8 5 7 1 3
-6 4 7 1 3 5 2 8
-6 4 7 1 8 2 5 3
-6 8 2 4 1 7 5 3
-7 1 3 8 6 4 2 5
-7 2 4 1 8 5 3 6
-7 2 6 3 1 4 8 5
-7 3 1 6 8 5 2 4
-7 3 8 2 5 1 6 4
-7 4 2 5 8 1 3 6
-7 4 2 8 6 1 3 5
-7 5 3 1 6 8 2 4
-8 2 4 1 7 5 3 6
-8 2 5 3 1 7 4 6
-8 3 1 6 2 5 7 4
-8 4 1 3 6 2 7 5
+1 5 8 6 3 7 2 4
+1 6 8 3 7 4 2 5
+1 7 4 6 8 2 5 3
+1 7 5 8 2 4 6 3
+2 4 6 8 3 1 7 5
+2 5 7 1 3 8 6 4
+2 5 7 4 1 8 6 3
+2 6 1 7 4 8 3 5
+2 6 8 3 1 4 7 5
+2 7 3 6 8 5 1 4
+2 7 5 8 1 4 6 3
+2 8 6 1 3 5 7 4
+3 1 7 5 8 2 4 6
+3 5 2 8 1 7 4 6
+3 5 2 8 6 4 7 1
+3 5 7 1 4 2 8 6
+3 5 8 4 1 7 2 6
+3 6 2 5 8 1 7 4
+3 6 2 7 1 4 8 5
+3 6 2 7 5 1 8 4
+3 6 4 1 8 5 7 2
+3 6 4 2 8 5 7 1
+3 6 8 1 4 7 5 2
+3 6 8 1 5 7 2 4
+3 6 8 2 4 1 7 5
+3 7 2 8 5 1 4 6
+3 7 2 8 6 4 1 5
+3 8 4 7 1 6 2 5
+4 1 5 8 2 7 3 6
+4 1 5 8 6 3 7 2
+4 2 5 8 6 1 3 7
+4 2 7 3 6 8 1 5
+4 2 7 3 6 8 5 1
+4 2 7 5 1 8 6 3
+4 2 8 5 7 1 3 6
+4 2 8 6 1 3 5 7
+4 6 1 5 2 8 3 7
+4 6 8 2 7 1 3 5
+4 6 8 3 1 7 5 2
+4 7 1 8 5 2 6 3
+4 7 3 8 2 5 1 6
+4 7 5 2 6 1 3 8
+4 7 5 3 1 6 8 2
+4 8 1 3 6 2 7 5
+4 8 1 5 7 2 6 3
+4 8 5 3 1 7 2 6
+5 1 4 6 8 2 7 3
+5 1 8 4 2 7 3 6
+5 1 8 6 3 7 2 4
+5 2 4 6 8 3 1 7
+5 2 4 7 3 8 6 1
+5 2 6 1 7 4 8 3
+5 2 8 1 4 7 3 6
+5 3 1 6 8 2 4 7
+5 3 1 7 2 8 6 4
+5 3 8 4 7 1 6 2
+5 7 1 3 8 6 4 2
+5 7 1 4 2 8 6 3
+5 7 2 4 8 1 3 6
+5 7 2 6 3 1 4 8
+5 7 2 6 3 1 8 4
+5 7 4 1 3 8 6 2
+5 8 4 1 3 6 2 7
+5 8 4 1 7 2 6 3
+6 1 5 2 8 3 7 4
+6 2 7 1 3 5 8 4
+6 2 7 1 4 8 5 3
+6 3 1 7 5 8 2 4
+6 3 1 8 4 2 7 5
+6 3 1 8 5 2 4 7
+6 3 5 7 1 4 2 8
+6 3 5 8 1 4 2 7
+6 3 7 2 4 8 1 5
+6 3 7 2 8 5 1 4
+6 3 7 4 1 8 2 5
+6 4 1 5 8 2 7 3
+6 4 2 8 5 7 1 3
+6 4 7 1 3 5 2 8
+6 4 7 1 8 2 5 3
+6 8 2 4 1 7 5 3
+7 1 3 8 6 4 2 5
+7 2 4 1 8 5 3 6
+7 2 6 3 1 4 8 5
+7 3 1 6 8 5 2 4
+7 3 8 2 5 1 6 4
+7 4 2 5 8 1 3 6
+7 4 2 8 6 1 3 5
+7 5 3 1 6 8 2 4
+8 2 4 1 7 5 3 6
+8 2 5 3 1 7 4 6
+8 3 1 6 2 5 7 4
+8 4 1 3 6 2 7 5
diff --git a/lcc/alpha/osf/tst/8q.2bk b/lcc/alpha/osf/tst/8q.2bk
index fb28350..d4dc0ed 100755
--- a/lcc/alpha/osf/tst/8q.2bk
+++ b/lcc/alpha/osf/tst/8q.2bk
@@ -1,2 +1,2 @@
-tst/8q.c:30: warning: missing return value
-tst/8q.c:39: warning: missing return value
+tst/8q.c:30: warning: missing return value
+tst/8q.c:39: warning: missing return value
diff --git a/lcc/alpha/osf/tst/8q.sbk b/lcc/alpha/osf/tst/8q.sbk
index df86e78..a1cd7d7 100755
--- a/lcc/alpha/osf/tst/8q.sbk
+++ b/lcc/alpha/osf/tst/8q.sbk
@@ -1,193 +1,193 @@
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-mov $31,$14
-L.2:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lda $25,1
-stl $25,down($27)
-stl $25,up($27)
-L.3:
-lda $14,1($14)
-cmplt $14,15,$23
-bne $23,L.2
-mov $31,$14
-L.6:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lda $25,1
-stl $25,rows($27)
-L.7:
-lda $14,1($14)
-cmplt $14,8,$23
-bne $23,L.6
-mov $31,$16
-jsr $26,queens
-ldgp $gp,0($26)
-mov $31,$0
-L.1:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end main
-.globl queens
-.text
-.ent queens
-queens:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4006000,-64
-.frame $sp,80,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $26,16($sp)
-mov $16,$14
-.prologue 1
-mov $31,$13
-L.11:
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-ldl $25,rows($25)
-cmpeq $25,$31,$23
-bne $23,L.15
-subl $13,$14,$25
-lda $25,7($25)
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-ldl $25,up($25)
-cmpeq $25,$31,$23
-bne $23,L.15
-addl $13,$14,$25
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-ldl $25,down($25)
-cmpeq $25,$31,$23
-bne $23,L.15
-addl $13,$14,$25
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-stl $31,down($25)
-subl $13,$14,$25
-lda $25,7($25)
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-stl $31,up($25)
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-stl $31,rows($25)
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-stl $13,x($27)
-cmpeq $14,7,$23
-beq $23,L.17
-jsr $26,print
-ldgp $gp,0($26)
-br L.18
-L.17:
-lda $16,1($14)
-jsr $26,queens
-ldgp $gp,0($26)
-L.18:
-lda $27,1
-addl $13,$14,$25
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-stl $27,down($25)
-subl $13,$14,$25
-lda $25,7($25)
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-stl $27,up($25)
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-stl $27,rows($25)
-L.15:
-L.12:
-lda $13,1($13)
-cmplt $13,8,$23
-bne $23,L.11
-mov $31,$0
-L.10:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end queens
-.globl print
-.text
-.ent print
-print:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-mov $31,$14
-L.20:
-lda $16,L.24
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-ldl $27,x($27)
-lda $17,49($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.21:
-lda $14,1($14)
-cmplt $14,8,$23
-bne $23,L.20
-lda $16,L.25
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.19:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end print
-.globl x
-.comm x,32
-.globl rows
-.comm rows,32
-.globl down
-.comm down,60
-.globl up
-.comm up,60
-.rdata
-.align 0
-L.25:
-.byte 10
-.byte 0
-.align 0
-L.24:
-.byte 37
-.byte 99
-.byte 32
-.byte 0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+mov $31,$14
+L.2:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lda $25,1
+stl $25,down($27)
+stl $25,up($27)
+L.3:
+lda $14,1($14)
+cmplt $14,15,$23
+bne $23,L.2
+mov $31,$14
+L.6:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lda $25,1
+stl $25,rows($27)
+L.7:
+lda $14,1($14)
+cmplt $14,8,$23
+bne $23,L.6
+mov $31,$16
+jsr $26,queens
+ldgp $gp,0($26)
+mov $31,$0
+L.1:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end main
+.globl queens
+.text
+.ent queens
+queens:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4006000,-64
+.frame $sp,80,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $26,16($sp)
+mov $16,$14
+.prologue 1
+mov $31,$13
+L.11:
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+ldl $25,rows($25)
+cmpeq $25,$31,$23
+bne $23,L.15
+subl $13,$14,$25
+lda $25,7($25)
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+ldl $25,up($25)
+cmpeq $25,$31,$23
+bne $23,L.15
+addl $13,$14,$25
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+ldl $25,down($25)
+cmpeq $25,$31,$23
+bne $23,L.15
+addl $13,$14,$25
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+stl $31,down($25)
+subl $13,$14,$25
+lda $25,7($25)
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+stl $31,up($25)
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+stl $31,rows($25)
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+stl $13,x($27)
+cmpeq $14,7,$23
+beq $23,L.17
+jsr $26,print
+ldgp $gp,0($26)
+br L.18
+L.17:
+lda $16,1($14)
+jsr $26,queens
+ldgp $gp,0($26)
+L.18:
+lda $27,1
+addl $13,$14,$25
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+stl $27,down($25)
+subl $13,$14,$25
+lda $25,7($25)
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+stl $27,up($25)
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+stl $27,rows($25)
+L.15:
+L.12:
+lda $13,1($13)
+cmplt $13,8,$23
+bne $23,L.11
+mov $31,$0
+L.10:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end queens
+.globl print
+.text
+.ent print
+print:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+mov $31,$14
+L.20:
+lda $16,L.24
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+ldl $27,x($27)
+lda $17,49($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.21:
+lda $14,1($14)
+cmplt $14,8,$23
+bne $23,L.20
+lda $16,L.25
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.19:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end print
+.globl x
+.comm x,32
+.globl rows
+.comm rows,32
+.globl down
+.comm down,60
+.globl up
+.comm up,60
+.rdata
+.align 0
+L.25:
+.byte 10
+.byte 0
+.align 0
+L.24:
+.byte 37
+.byte 99
+.byte 32
+.byte 0
diff --git a/lcc/alpha/osf/tst/array.1bk b/lcc/alpha/osf/tst/array.1bk
index e188568..4d3817c 100755
--- a/lcc/alpha/osf/tst/array.1bk
+++ b/lcc/alpha/osf/tst/array.1bk
@@ -1,4 +1,4 @@
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
diff --git a/lcc/alpha/osf/tst/array.2bk b/lcc/alpha/osf/tst/array.2bk
index 0a9b206..c8cf31e 100755
--- a/lcc/alpha/osf/tst/array.2bk
+++ b/lcc/alpha/osf/tst/array.2bk
@@ -1,2 +1,2 @@
-tst/array.c:33: warning: missing return value
-tst/array.c:48: warning: missing return value
+tst/array.c:33: warning: missing return value
+tst/array.c:48: warning: missing return value
diff --git a/lcc/alpha/osf/tst/array.sbk b/lcc/alpha/osf/tst/array.sbk
index f47573a..9bf7176 100755
--- a/lcc/alpha/osf/tst/array.sbk
+++ b/lcc/alpha/osf/tst/array.sbk
@@ -1,260 +1,260 @@
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-144($sp)
-.mask 0x4007000,-120
-.frame $sp,144,$26,48
-stq $12,0($sp)
-stq $13,8($sp)
-stq $14,16($sp)
-stq $26,24($sp)
-.prologue 1
-mov $31,$13
-L.2:
-mov $31,$14
-L.6:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,4,$25
-lda $25,x($25)
-addq $27,$25,$27
-lda $25,1000
-mull $25,$13,$25
-addl $25,$14,$25
-stl $25,($27)
-L.7:
-lda $14,1($14)
-cmplt $14,4,$23
-bne $23,L.6
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$25
-sll $27,4,$27
-lda $27,x($27)
-stq $27,y($25)
-L.3:
-lda $13,1($13)
-cmplt $13,3,$23
-bne $23,L.2
-jsr $26,f
-ldgp $gp,0($26)
-mov $31,$13
-L.10:
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,4,$25
-lda $22,-104+144($sp)
-addq $25,$22,$25
-mov $25,$12
-sll $27,3,$27
-stq $25,y($27)
-mov $31,$14
-L.14:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$12,$25
-sll $13,8*(8-4),$22
-sra $22,8*(8-4),$22
-sll $22,4,$22
-lda $22,x($22)
-addq $27,$22,$27
-ldl $27,($27)
-stl $27,($25)
-L.15:
-lda $14,1($14)
-cmplt $14,4,$23
-bne $23,L.14
-L.11:
-lda $13,1($13)
-cmplt $13,3,$23
-bne $23,L.10
-lda $16,-104+144($sp)
-lda $17,y
-jsr $26,g
-ldgp $gp,0($26)
-mov $31,$0
-L.1:
-ldq $12,0($sp)
-ldq $13,8($sp)
-ldq $14,16($sp)
-ldq $26,24($sp)
-lda $sp,144($sp)
-ret
-.end main
-.globl f
-.text
-.ent f
-f:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4006000,-64
-.frame $sp,80,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $26,16($sp)
-.prologue 1
-mov $31,$13
-L.19:
-mov $31,$14
-L.23:
-lda $16,L.27
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,4,$25
-lda $25,x($25)
-addq $27,$25,$27
-ldl $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.24:
-lda $14,1($14)
-cmplt $14,4,$23
-bne $23,L.23
-L.20:
-lda $13,1($13)
-cmplt $13,3,$23
-bne $23,L.19
-lda $16,L.28
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$13
-L.29:
-mov $31,$14
-L.33:
-lda $16,L.27
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,3,$25
-ldq $25,y($25)
-addq $27,$25,$27
-ldl $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.34:
-lda $14,1($14)
-cmplt $14,4,$23
-bne $23,L.33
-L.30:
-lda $13,1($13)
-cmplt $13,3,$23
-bne $23,L.29
-lda $16,L.28
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.18:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end f
-.globl g
-.text
-.ent g
-g:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.mask 0x4007800,-64
-.frame $sp,96,$26,48
-stq $11,0($sp)
-stq $12,8($sp)
-stq $13,16($sp)
-stq $14,24($sp)
-stq $26,32($sp)
-mov $16,$14
-mov $17,$13
-.prologue 1
-mov $31,$11
-L.38:
-mov $31,$12
-L.42:
-lda $16,L.27
-sll $12,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-sll $11,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,4,$25
-addq $25,$14,$25
-addq $27,$25,$27
-ldl $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.43:
-lda $12,1($12)
-cmplt $12,4,$23
-bne $23,L.42
-L.39:
-lda $11,1($11)
-cmplt $11,3,$23
-bne $23,L.38
-lda $16,L.28
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$11
-L.46:
-mov $31,$12
-L.50:
-lda $16,L.27
-sll $12,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-sll $11,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,3,$25
-addq $25,$13,$25
-ldq $25,($25)
-addq $27,$25,$27
-ldl $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.51:
-lda $12,1($12)
-cmplt $12,4,$23
-bne $23,L.50
-L.47:
-lda $11,1($11)
-cmplt $11,3,$23
-bne $23,L.46
-lda $16,L.28
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.37:
-ldq $11,0($sp)
-ldq $12,8($sp)
-ldq $13,16($sp)
-ldq $14,24($sp)
-ldq $26,32($sp)
-lda $sp,96($sp)
-ret
-.end g
-.globl y
-.comm y,24
-.globl x
-.comm x,48
-.rdata
-.align 0
-L.28:
-.byte 10
-.byte 0
-.align 0
-L.27:
-.byte 32
-.byte 37
-.byte 100
-.byte 0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-144($sp)
+.mask 0x4007000,-120
+.frame $sp,144,$26,48
+stq $12,0($sp)
+stq $13,8($sp)
+stq $14,16($sp)
+stq $26,24($sp)
+.prologue 1
+mov $31,$13
+L.2:
+mov $31,$14
+L.6:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,4,$25
+lda $25,x($25)
+addq $27,$25,$27
+lda $25,1000
+mull $25,$13,$25
+addl $25,$14,$25
+stl $25,($27)
+L.7:
+lda $14,1($14)
+cmplt $14,4,$23
+bne $23,L.6
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$25
+sll $27,4,$27
+lda $27,x($27)
+stq $27,y($25)
+L.3:
+lda $13,1($13)
+cmplt $13,3,$23
+bne $23,L.2
+jsr $26,f
+ldgp $gp,0($26)
+mov $31,$13
+L.10:
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,4,$25
+lda $22,-104+144($sp)
+addq $25,$22,$25
+mov $25,$12
+sll $27,3,$27
+stq $25,y($27)
+mov $31,$14
+L.14:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$12,$25
+sll $13,8*(8-4),$22
+sra $22,8*(8-4),$22
+sll $22,4,$22
+lda $22,x($22)
+addq $27,$22,$27
+ldl $27,($27)
+stl $27,($25)
+L.15:
+lda $14,1($14)
+cmplt $14,4,$23
+bne $23,L.14
+L.11:
+lda $13,1($13)
+cmplt $13,3,$23
+bne $23,L.10
+lda $16,-104+144($sp)
+lda $17,y
+jsr $26,g
+ldgp $gp,0($26)
+mov $31,$0
+L.1:
+ldq $12,0($sp)
+ldq $13,8($sp)
+ldq $14,16($sp)
+ldq $26,24($sp)
+lda $sp,144($sp)
+ret
+.end main
+.globl f
+.text
+.ent f
+f:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4006000,-64
+.frame $sp,80,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $26,16($sp)
+.prologue 1
+mov $31,$13
+L.19:
+mov $31,$14
+L.23:
+lda $16,L.27
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,4,$25
+lda $25,x($25)
+addq $27,$25,$27
+ldl $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.24:
+lda $14,1($14)
+cmplt $14,4,$23
+bne $23,L.23
+L.20:
+lda $13,1($13)
+cmplt $13,3,$23
+bne $23,L.19
+lda $16,L.28
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$13
+L.29:
+mov $31,$14
+L.33:
+lda $16,L.27
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,3,$25
+ldq $25,y($25)
+addq $27,$25,$27
+ldl $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.34:
+lda $14,1($14)
+cmplt $14,4,$23
+bne $23,L.33
+L.30:
+lda $13,1($13)
+cmplt $13,3,$23
+bne $23,L.29
+lda $16,L.28
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.18:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end f
+.globl g
+.text
+.ent g
+g:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.mask 0x4007800,-64
+.frame $sp,96,$26,48
+stq $11,0($sp)
+stq $12,8($sp)
+stq $13,16($sp)
+stq $14,24($sp)
+stq $26,32($sp)
+mov $16,$14
+mov $17,$13
+.prologue 1
+mov $31,$11
+L.38:
+mov $31,$12
+L.42:
+lda $16,L.27
+sll $12,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+sll $11,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,4,$25
+addq $25,$14,$25
+addq $27,$25,$27
+ldl $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.43:
+lda $12,1($12)
+cmplt $12,4,$23
+bne $23,L.42
+L.39:
+lda $11,1($11)
+cmplt $11,3,$23
+bne $23,L.38
+lda $16,L.28
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$11
+L.46:
+mov $31,$12
+L.50:
+lda $16,L.27
+sll $12,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+sll $11,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,3,$25
+addq $25,$13,$25
+ldq $25,($25)
+addq $27,$25,$27
+ldl $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.51:
+lda $12,1($12)
+cmplt $12,4,$23
+bne $23,L.50
+L.47:
+lda $11,1($11)
+cmplt $11,3,$23
+bne $23,L.46
+lda $16,L.28
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.37:
+ldq $11,0($sp)
+ldq $12,8($sp)
+ldq $13,16($sp)
+ldq $14,24($sp)
+ldq $26,32($sp)
+lda $sp,96($sp)
+ret
+.end g
+.globl y
+.comm y,24
+.globl x
+.comm x,48
+.rdata
+.align 0
+L.28:
+.byte 10
+.byte 0
+.align 0
+L.27:
+.byte 32
+.byte 37
+.byte 100
+.byte 0
diff --git a/lcc/alpha/osf/tst/cf.1bk b/lcc/alpha/osf/tst/cf.1bk
index 24e21ba..9e331c5 100755
--- a/lcc/alpha/osf/tst/cf.1bk
+++ b/lcc/alpha/osf/tst/cf.1bk
@@ -1,51 +1,51 @@
-char freq
-011 8.1
-012 6.1
-040 11.9
-! 0.2
-" 1.5
-% 0.6
-& 0.4
-' 0.4
-( 2.9
-) 2.9
-* 0.8
-+ 1.3
-, 1.3
-- 0.4
-. 0.6
-/ 1.0
-0 2.5
-1 1.9
-2 0.6
-3 0.2
-7 0.4
-8 0.2
-; 3.8
-< 0.8
-= 2.7
-> 0.2
-[ 1.5
-\ 0.8
-] 1.5
-a 3.1
-c 4.4
-e 2.3
-f 6.0
-g 1.3
-h 1.0
-i 5.0
-l 1.0
-m 0.2
-n 3.3
-o 2.1
-p 1.0
-q 0.4
-r 4.2
-s 0.6
-t 3.8
-u 1.2
-v 0.6
-w 0.2
-{ 0.6
-} 0.6
+char freq
+011 8.1
+012 6.1
+040 11.9
+! 0.2
+" 1.5
+% 0.6
+& 0.4
+' 0.4
+( 2.9
+) 2.9
+* 0.8
++ 1.3
+, 1.3
+- 0.4
+. 0.6
+/ 1.0
+0 2.5
+1 1.9
+2 0.6
+3 0.2
+7 0.4
+8 0.2
+; 3.8
+< 0.8
+= 2.7
+> 0.2
+[ 1.5
+\ 0.8
+] 1.5
+a 3.1
+c 4.4
+e 2.3
+f 6.0
+g 1.3
+h 1.0
+i 5.0
+l 1.0
+m 0.2
+n 3.3
+o 2.1
+p 1.0
+q 0.4
+r 4.2
+s 0.6
+t 3.8
+u 1.2
+v 0.6
+w 0.2
+{ 0.6
+} 0.6
diff --git a/lcc/alpha/osf/tst/cf.sbk b/lcc/alpha/osf/tst/cf.sbk
index 16683fa..6690b5c 100755
--- a/lcc/alpha/osf/tst/cf.sbk
+++ b/lcc/alpha/osf/tst/cf.sbk
@@ -1,170 +1,170 @@
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.fmask 0x200,-96
-.mask 0x4007000,-64
-.frame $sp,96,$26,48
-stt $f9,0($sp)
-stq $12,8($sp)
-stq $13,16($sp)
-stq $14,24($sp)
-stq $26,32($sp)
-stq $16,48($sp)
-stq $17,56($sp)
-.prologue 1
-ldl $27,-48+96($sp)
-cmple $27,1,$23
-beq $23,L.2
-lds $f9,L.4
-br L.3
-L.2:
-ldq $27,-40+96($sp)
-ldq $16,8($27)
-jsr $26,atof
-ldgp $gp,0($26)
-lds $f29,L.5
-divs $f0,$f29,$f9
-L.3:
-mov $31,$14
-L.6:
-mov $14,$27
-lda $14,1($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lds $f30,L.4
-sts $f30,f($27)
-L.7:
-lda $27,127
-cmple $14,$27,$23
-bne $23,L.6
-mov $31,$13
-br L.11
-L.10:
-sll $12,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lda $27,f($27)
-lds $f30,($27)
-lds $f29,L.13
-adds $f30,$f29,$f30
-sts $f30,($27)
-lda $13,1($13)
-L.11:
-jsr $26,getchar
-ldgp $gp,0($26)
-mov $0,$12
-lda $25,-1
-cmpeq $0,$25,$23
-beq $23,L.10
-lda $16,L.14
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$14
-L.15:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lds $f30,f($27)
-lds $f29,L.4
-cmpteq $f30,$f29,$f1
-fbne $f1,L.19
-stq $13,-56+96($sp)
-ldt $f29,-56+96($sp)
-cvtqs $f29,$f29
-divs $f30,$f29,$f30
-cmptlt $f30,$f9,$f1
-fbne $f1,L.19
-cmple $14,32,$23
-beq $23,L.21
-lda $16,L.23
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.22
-L.21:
-lda $16,L.24
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.22:
-lda $16,L.25
-lds $f30,L.5
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lds $f29,f($27)
-muls $f30,$f29,$f30
-stq $13,-56+96($sp)
-ldt $f29,-56+96($sp)
-cvtqs $f29,$f29
-divs $f30,$f29,$f30
-cvtst $f30,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-L.19:
-L.16:
-lda $14,1($14)
-lda $27,127
-cmple $14,$27,$23
-bne $23,L.15
-mov $31,$0
-L.1:
-ldt $f9,0($sp)
-ldq $12,8($sp)
-ldq $13,16($sp)
-ldq $14,24($sp)
-ldq $26,32($sp)
-lda $sp,96($sp)
-ret
-.end main
-.globl f
-.comm f,512
-.rdata
-.align 0
-L.25:
-.byte 9
-.byte 37
-.byte 46
-.byte 49
-.byte 102
-.byte 10
-.byte 0
-.align 0
-L.24:
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.23:
-.byte 37
-.byte 48
-.byte 51
-.byte 111
-.byte 0
-.align 0
-L.14:
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 9
-.byte 102
-.byte 114
-.byte 101
-.byte 113
-.byte 10
-.byte 0
-.align 2
-L.13:
-.long 0x3f800000
-.align 2
-L.5:
-.long 0x42c80000
-.align 2
-L.4:
-.long 0x0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.fmask 0x200,-96
+.mask 0x4007000,-64
+.frame $sp,96,$26,48
+stt $f9,0($sp)
+stq $12,8($sp)
+stq $13,16($sp)
+stq $14,24($sp)
+stq $26,32($sp)
+stq $16,48($sp)
+stq $17,56($sp)
+.prologue 1
+ldl $27,-48+96($sp)
+cmple $27,1,$23
+beq $23,L.2
+lds $f9,L.4
+br L.3
+L.2:
+ldq $27,-40+96($sp)
+ldq $16,8($27)
+jsr $26,atof
+ldgp $gp,0($26)
+lds $f29,L.5
+divs $f0,$f29,$f9
+L.3:
+mov $31,$14
+L.6:
+mov $14,$27
+lda $14,1($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lds $f30,L.4
+sts $f30,f($27)
+L.7:
+lda $27,127
+cmple $14,$27,$23
+bne $23,L.6
+mov $31,$13
+br L.11
+L.10:
+sll $12,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lda $27,f($27)
+lds $f30,($27)
+lds $f29,L.13
+adds $f30,$f29,$f30
+sts $f30,($27)
+lda $13,1($13)
+L.11:
+jsr $26,getchar
+ldgp $gp,0($26)
+mov $0,$12
+lda $25,-1
+cmpeq $0,$25,$23
+beq $23,L.10
+lda $16,L.14
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$14
+L.15:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lds $f30,f($27)
+lds $f29,L.4
+cmpteq $f30,$f29,$f1
+fbne $f1,L.19
+stq $13,-56+96($sp)
+ldt $f29,-56+96($sp)
+cvtqs $f29,$f29
+divs $f30,$f29,$f30
+cmptlt $f30,$f9,$f1
+fbne $f1,L.19
+cmple $14,32,$23
+beq $23,L.21
+lda $16,L.23
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.22
+L.21:
+lda $16,L.24
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.22:
+lda $16,L.25
+lds $f30,L.5
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lds $f29,f($27)
+muls $f30,$f29,$f30
+stq $13,-56+96($sp)
+ldt $f29,-56+96($sp)
+cvtqs $f29,$f29
+divs $f30,$f29,$f30
+cvtst $f30,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+L.19:
+L.16:
+lda $14,1($14)
+lda $27,127
+cmple $14,$27,$23
+bne $23,L.15
+mov $31,$0
+L.1:
+ldt $f9,0($sp)
+ldq $12,8($sp)
+ldq $13,16($sp)
+ldq $14,24($sp)
+ldq $26,32($sp)
+lda $sp,96($sp)
+ret
+.end main
+.globl f
+.comm f,512
+.rdata
+.align 0
+L.25:
+.byte 9
+.byte 37
+.byte 46
+.byte 49
+.byte 102
+.byte 10
+.byte 0
+.align 0
+L.24:
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.23:
+.byte 37
+.byte 48
+.byte 51
+.byte 111
+.byte 0
+.align 0
+L.14:
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 9
+.byte 102
+.byte 114
+.byte 101
+.byte 113
+.byte 10
+.byte 0
+.align 2
+L.13:
+.long 0x3f800000
+.align 2
+L.5:
+.long 0x42c80000
+.align 2
+L.4:
+.long 0x0
diff --git a/lcc/alpha/osf/tst/cq.1bk b/lcc/alpha/osf/tst/cq.1bk
index d040603..c5c903d 100755
--- a/lcc/alpha/osf/tst/cq.1bk
+++ b/lcc/alpha/osf/tst/cq.1bk
@@ -1,45 +1,45 @@
-Section s22 returned 0.
-s241,er4
-Section s241 returned 4.
-Section s243 returned 0.
-Section s244 returned 0.
-Section s25 returned 0.
- 8 bits in chars.
- 32 bits in ints.
- 16 bits in shorts.
- 64 bits in longs.
- 32 bits in unsigneds.
- 32 bits in floats.
- 64 bits in doubles.
-1.192093e-07 is the least number that can be added to 1. (float).
-2.220446e-16 is the least number that can be added to 1. (double).
-Section s26 returned 0.
-Section s4 returned 0.
-Section s61 returned 0.
-Section s626 returned 0.
-Section s71 returned 0.
-Section s72 returned 0.
-Section s757 returned 0.
-Section s7813 returned 0.
-Section s714 returned 0.
-Section s715 returned 0.
-Register count for char is unreliable.
-Register count for pointer is unreliable.
-Register count for int is unreliable.
-Section s81 returned 0.
-Section s84 returned 0.
-char alignment: 1
-short alignment: 2
-int alignment: 4
-long alignment: 8
-unsigned alignment: 4
-float alignment: 4
-double alignment: 8
-Sign extension in fields
-Be especially careful with 1-bit fields!
-Section s85 returned 0.
-Section s86 returned 0.
-Section s88 returned 0.
-Section s9 returned 0.
-
-Failed.
+Section s22 returned 0.
+s241,er4
+Section s241 returned 4.
+Section s243 returned 0.
+Section s244 returned 0.
+Section s25 returned 0.
+ 8 bits in chars.
+ 32 bits in ints.
+ 16 bits in shorts.
+ 64 bits in longs.
+ 32 bits in unsigneds.
+ 32 bits in floats.
+ 64 bits in doubles.
+1.192093e-07 is the least number that can be added to 1. (float).
+2.220446e-16 is the least number that can be added to 1. (double).
+Section s26 returned 0.
+Section s4 returned 0.
+Section s61 returned 0.
+Section s626 returned 0.
+Section s71 returned 0.
+Section s72 returned 0.
+Section s757 returned 0.
+Section s7813 returned 0.
+Section s714 returned 0.
+Section s715 returned 0.
+Register count for char is unreliable.
+Register count for pointer is unreliable.
+Register count for int is unreliable.
+Section s81 returned 0.
+Section s84 returned 0.
+char alignment: 1
+short alignment: 2
+int alignment: 4
+long alignment: 8
+unsigned alignment: 4
+float alignment: 4
+double alignment: 8
+Sign extension in fields
+Be especially careful with 1-bit fields!
+Section s85 returned 0.
+Section s86 returned 0.
+Section s88 returned 0.
+Section s9 returned 0.
+
+Failed.
diff --git a/lcc/alpha/osf/tst/cq.2bk b/lcc/alpha/osf/tst/cq.2bk
index f4e4562..a612b54 100755
--- a/lcc/alpha/osf/tst/cq.2bk
+++ b/lcc/alpha/osf/tst/cq.2bk
@@ -1,4 +1,4 @@
-tst/cq.c:533: warning: missing return value
-tst/cq.c:1169: warning: missing return value
-tst/cq.c:5294: warning: unreachable code
-tst/cq.c:5303: warning: missing return value
+tst/cq.c:533: warning: missing return value
+tst/cq.c:1169: warning: missing return value
+tst/cq.c:5294: warning: unreachable code
+tst/cq.c:5303: warning: missing return value
diff --git a/lcc/alpha/osf/tst/cq.sbk b/lcc/alpha/osf/tst/cq.sbk
index 2971313..40e9f11 100755
--- a/lcc/alpha/osf/tst/cq.sbk
+++ b/lcc/alpha/osf/tst/cq.sbk
@@ -1,16904 +1,16904 @@
-.sdata
-.align 3
-L.2:
-.quad s22
-.quad s241
-.quad s243
-.quad s244
-.quad s25
-.quad s26
-.quad s4
-.quad s61
-.quad s626
-.quad s71
-.quad s72
-.quad s757
-.quad s7813
-.quad s714
-.quad s715
-.quad s81
-.quad s84
-.quad s85
-.quad s86
-.quad s88
-.quad s9
-.lcomm L.3,68
-.lcomm L.4,8
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-stq $16,32($sp)
-stq $17,40($sp)
-.prologue 1
-lda $27,1
-stl $27,L.3+36
-lda $27,1
-stl $27,L.3+40
-lda $27,1
-stl $27,L.3+44
-lda $27,1
-stl $27,L.3+48
-lda $27,L.3
-stq $27,L.4
-mov $31,$14
-br L.12
-L.9:
-ldq $16,L.4
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-ldq $27,L.2($27)
-jsr $26,($27)
-ldgp $gp,0($26)
-stl $0,L.3+52
-ldl $27,L.3+56
-ldl $25,L.3+52
-addl $27,$25,$27
-stl $27,L.3+56
-ldl $27,L.3+36
-cmpeq $27,$31,$23
-bne $23,L.17
-lda $16,L.20
-lda $17,L.3+60
-ldl $18,L.3+52
-jsr $26,printf
-ldgp $gp,0($26)
-L.17:
-L.10:
-lda $14,1($14)
-L.12:
-mov $14,$27
-lda $25,21
-cmpult $27,$25,$23
-bne $23,L.9
-ldl $27,L.3+56
-cmpeq $27,$31,$23
-beq $23,L.23
-lda $16,L.26
-jsr $26,printf
-ldgp $gp,0($26)
-br L.24
-L.23:
-lda $16,L.27
-jsr $26,printf
-ldgp $gp,0($26)
-L.24:
-mov $31,$0
-L.1:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end main
-.sdata
-.align 0
-L.29:
-.byte 115
-.byte 50
-.byte 50
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.30:
-.byte 115
-.byte 50
-.byte 50
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s22
-.text
-.text
-.ent s22
-s22:
-ldgp $gp,0($27)
-lda $sp,-128($sp)
-.mask 0x5007800,-88
-.frame $sp,128,$26,48
-stq $11,0($sp)
-stq $12,8($sp)
-stq $13,16($sp)
-stq $14,24($sp)
-stq $24,32($sp)
-stq $26,40($sp)
-stq $16,80($sp)
-.prologue 1
-mov $31,$12
-lda $14,L.30
-ldq $27,-48+128($sp)
-lda $13,60($27)
-L.31:
-L.32:
-mov $13,$27
-lda $13,1($27)
-mov $14,$25
-lda $14,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.31
-lda $11,1
-lda $27,2
-stl $27,-64+128($sp)
-lda $27,3
-stl $27,-68+128($sp)
-lda $27,4
-stl $27,-60+128($sp)
-ldl $27,-64+128($sp)
-addl $11,$27,$27
-ldl $25,-68+128($sp)
-addl $27,$25,$27
-ldl $25,-60+128($sp)
-addl $27,$25,$27
-cmpeq $27,10,$23
-bne $23,L.34
-lda $12,1($12)
-ldq $27,-48+128($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.36
-lda $16,L.29
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.36:
-L.34:
-lda $27,2
-stl $27,-72+128($sp)
-ldl $27,-72+128($sp)
-cmpeq $27,$11,$23
-beq $23,L.38
-lda $12,4($12)
-ldq $27,-48+128($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.40
-lda $16,L.29
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.40:
-L.38:
-mov $12,$0
-L.28:
-ldq $11,0($sp)
-ldq $12,8($sp)
-ldq $13,16($sp)
-ldq $14,24($sp)
-ldq $24,32($sp)
-ldq $26,40($sp)
-lda $sp,128($sp)
-ret
-.end s22
-.sdata
-.align 0
-L.43:
-.byte 115
-.byte 50
-.byte 52
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.44:
-.byte 115
-.byte 50
-.byte 52
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 3
-L.45:
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad 0x6
-.quad 0x0
-.quad 0x8
-.quad 0x0
-.quad 0xc
-.quad 0x0
-.quad 0x10
-.quad 0x0
-.quad 0x12
-.quad 0x0
-.quad 0x14
-.quad 0x0
-.quad 0x18
-.quad 0x0
-.quad 0x1c
-.quad 0x0
-.quad 0x1e
-.quad 0x0
-.quad 0x20
-.quad 0x0
-.quad 0x24
-.globl s241
-.text
-.text
-.ent s241
-s241:
-ldgp $gp,0($27)
-lda $sp,-1072($sp)
-.mask 0x5007c00,-1024
-.frame $sp,1072,$26,48
-stq $10,0($sp)
-stq $11,8($sp)
-stq $12,16($sp)
-stq $13,24($sp)
-stq $14,32($sp)
-stq $24,40($sp)
-stq $26,48($sp)
-mov $16,$14
-.prologue 1
-mov $31,$10
-stl $31,-996+1072($sp)
-lda $12,L.44
-lda $11,60($14)
-L.46:
-L.47:
-mov $11,$27
-lda $11,1($27)
-mov $12,$25
-lda $12,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.46
-br L.49
-lda $10,1($10)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.51
-lda $16,L.43
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.51:
-L.49:
-br L.53
-lda $10,2($10)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.55
-lda $16,L.43
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.55:
-L.53:
-lda $10,4($10)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.59
-lda $16,L.43
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.59:
-L.57:
-br L.61
-lda $10,8($10)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.63
-lda $16,L.43
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.63:
-L.61:
-mov $31,$13
-L.65:
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$25
-stq $27,L.45($25)
-L.66:
-lda $13,1($13)
-cmplt $13,17,$23
-bne $23,L.65
-lda $13,18
-L.69:
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-lda $27,L.45($27)
-stq $27,-1008+1072($sp)
-ldq $16,($27)
-jsr $26,pow2
-ldgp $gp,0($26)
-ldq $25,-1008+1072($sp)
-stq $0,($25)
-subl $13,1,$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,3,$25
-ldq $25,L.45($25)
-subq $25,1,$25
-stq $25,L.45($27)
-lda $13,2($13)
-L.70:
-cmplt $13,39,$23
-bne $23,L.69
-stq $31,-368+1072($sp)
-stq $31,-680+1072($sp)
-stq $31,-992+1072($sp)
-lda $27,1
-stq $27,-360+1072($sp)
-lda $27,1
-stq $27,-672+1072($sp)
-lda $27,1
-stq $27,-984+1072($sp)
-lda $27,2
-stq $27,-352+1072($sp)
-lda $27,2
-stq $27,-664+1072($sp)
-lda $27,2
-stq $27,-976+1072($sp)
-lda $27,3
-stq $27,-344+1072($sp)
-lda $27,3
-stq $27,-656+1072($sp)
-lda $27,3
-stq $27,-968+1072($sp)
-lda $27,4
-stq $27,-336+1072($sp)
-lda $27,4
-stq $27,-648+1072($sp)
-lda $27,4
-stq $27,-960+1072($sp)
-lda $27,5
-stq $27,-328+1072($sp)
-lda $27,5
-stq $27,-640+1072($sp)
-lda $27,5
-stq $27,-952+1072($sp)
-lda $27,6
-stq $27,-320+1072($sp)
-lda $27,6
-stq $27,-632+1072($sp)
-lda $27,6
-stq $27,-944+1072($sp)
-lda $27,7
-stq $27,-312+1072($sp)
-lda $27,7
-stq $27,-624+1072($sp)
-lda $27,7
-stq $27,-936+1072($sp)
-lda $27,8
-stq $27,-304+1072($sp)
-lda $27,8
-stq $27,-616+1072($sp)
-lda $27,8
-stq $27,-928+1072($sp)
-lda $27,9
-stq $27,-296+1072($sp)
-lda $27,9
-stq $27,-608+1072($sp)
-lda $27,9
-stq $27,-920+1072($sp)
-lda $27,10
-stq $27,-288+1072($sp)
-lda $27,10
-stq $27,-600+1072($sp)
-lda $27,10
-stq $27,-912+1072($sp)
-lda $27,11
-stq $27,-280+1072($sp)
-lda $27,11
-stq $27,-592+1072($sp)
-lda $27,11
-stq $27,-904+1072($sp)
-lda $27,12
-stq $27,-272+1072($sp)
-lda $27,12
-stq $27,-584+1072($sp)
-lda $27,12
-stq $27,-896+1072($sp)
-lda $27,13
-stq $27,-264+1072($sp)
-lda $27,13
-stq $27,-576+1072($sp)
-lda $27,13
-stq $27,-888+1072($sp)
-lda $27,14
-stq $27,-256+1072($sp)
-lda $27,14
-stq $27,-568+1072($sp)
-lda $27,14
-stq $27,-880+1072($sp)
-lda $27,15
-stq $27,-248+1072($sp)
-lda $27,15
-stq $27,-560+1072($sp)
-lda $27,15
-stq $27,-872+1072($sp)
-lda $27,16
-stq $27,-240+1072($sp)
-lda $27,16
-stq $27,-552+1072($sp)
-lda $27,16
-stq $27,-864+1072($sp)
-lda $27,63
-stq $27,-232+1072($sp)
-lda $27,63
-stq $27,-544+1072($sp)
-lda $27,63
-stq $27,-856+1072($sp)
-lda $27,64
-stq $27,-224+1072($sp)
-lda $27,64
-stq $27,-536+1072($sp)
-lda $27,64
-stq $27,-848+1072($sp)
-lda $27,255
-stq $27,-216+1072($sp)
-lda $27,255
-stq $27,-528+1072($sp)
-lda $27,255
-stq $27,-840+1072($sp)
-lda $27,256
-stq $27,-208+1072($sp)
-lda $27,256
-stq $27,-520+1072($sp)
-lda $27,256
-stq $27,-832+1072($sp)
-lda $27,4095
-stq $27,-200+1072($sp)
-lda $27,4095
-stq $27,-512+1072($sp)
-lda $27,4095
-stq $27,-824+1072($sp)
-lda $27,4096
-stq $27,-192+1072($sp)
-lda $27,4096
-stq $27,-504+1072($sp)
-lda $27,4096
-stq $27,-816+1072($sp)
-lda $27,65535
-stq $27,-184+1072($sp)
-lda $27,65535
-stq $27,-496+1072($sp)
-lda $27,65535
-stq $27,-808+1072($sp)
-lda $27,65536
-stq $27,-176+1072($sp)
-lda $27,65536
-stq $27,-488+1072($sp)
-lda $27,65536
-stq $27,-800+1072($sp)
-lda $27,262143
-stq $27,-168+1072($sp)
-lda $27,262143
-stq $27,-480+1072($sp)
-lda $27,262143
-stq $27,-792+1072($sp)
-lda $27,262144
-stq $27,-160+1072($sp)
-lda $27,262144
-stq $27,-472+1072($sp)
-lda $27,262144
-stq $27,-784+1072($sp)
-lda $27,1048575
-stq $27,-152+1072($sp)
-lda $27,1048575
-stq $27,-464+1072($sp)
-lda $27,1048575
-stq $27,-776+1072($sp)
-lda $27,1048576
-stq $27,-144+1072($sp)
-lda $27,1048576
-stq $27,-456+1072($sp)
-lda $27,1048576
-stq $27,-768+1072($sp)
-lda $27,16777215
-stq $27,-136+1072($sp)
-lda $27,16777215
-stq $27,-448+1072($sp)
-lda $27,16777215
-stq $27,-760+1072($sp)
-lda $27,16777216
-stq $27,-128+1072($sp)
-lda $27,16777216
-stq $27,-440+1072($sp)
-lda $27,16777216
-stq $27,-752+1072($sp)
-lda $27,268435455
-stq $27,-120+1072($sp)
-lda $27,268435455
-stq $27,-432+1072($sp)
-lda $27,268435455
-stq $27,-744+1072($sp)
-lda $27,268435456
-stq $27,-112+1072($sp)
-lda $27,268435456
-stq $27,-424+1072($sp)
-lda $27,268435456
-stq $27,-736+1072($sp)
-lda $27,1073741823
-stq $27,-104+1072($sp)
-lda $27,1073741823
-stq $27,-416+1072($sp)
-lda $27,1073741823
-stq $27,-728+1072($sp)
-lda $27,1073741824
-stq $27,-96+1072($sp)
-lda $27,1073741824
-stq $27,-408+1072($sp)
-lda $27,1073741824
-stq $27,-720+1072($sp)
-lda $27,4294967295
-stq $27,-88+1072($sp)
-lda $27,4294967295
-stq $27,-400+1072($sp)
-lda $27,4294967295
-stq $27,-712+1072($sp)
-lda $27,4294967296
-stq $27,-80+1072($sp)
-lda $27,4294967296
-stq $27,-392+1072($sp)
-lda $27,4294967296
-stq $27,-704+1072($sp)
-lda $27,68719476735
-stq $27,-72+1072($sp)
-lda $27,68719476735
-stq $27,-384+1072($sp)
-lda $27,68719476735
-stq $27,-696+1072($sp)
-lda $27,68719476736
-stq $27,-64+1072($sp)
-lda $27,68719476736
-stq $27,-376+1072($sp)
-lda $27,68719476736
-stq $27,-688+1072($sp)
-mov $31,$13
-L.187:
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-lda $25,-368+1072($sp)
-addq $27,$25,$25
-ldq $25,($25)
-ldq $22,L.45($27)
-cmpeq $22,$25,$23
-beq $23,L.194
-lda $22,-680+1072($sp)
-addq $27,$22,$22
-ldq $22,($22)
-cmpeq $25,$22,$23
-beq $23,L.194
-lda $25,-992+1072($sp)
-addq $27,$25,$27
-ldq $27,($27)
-cmpeq $22,$27,$23
-bne $23,L.191
-L.194:
-ldl $27,40($14)
-cmpeq $27,$31,$23
-bne $23,L.195
-lda $16,L.197
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.198
-jsr $26,printf
-ldgp $gp,0($26)
-L.195:
-L.191:
-L.188:
-lda $13,1($13)
-cmplt $13,39,$23
-bne $23,L.187
-ldl $27,-996+1072($sp)
-cmpeq $27,$31,$23
-bne $23,L.199
-lda $10,16
-L.199:
-mov $10,$0
-L.42:
-ldq $10,0($sp)
-ldq $11,8($sp)
-ldq $12,16($sp)
-ldq $13,24($sp)
-ldq $14,32($sp)
-ldq $24,40($sp)
-ldq $26,48($sp)
-lda $sp,1072($sp)
-ret
-.end s241
-.globl pow2
-.text
-.ent pow2
-pow2:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-lda $14,1
-br L.203
-L.202:
-sll $14,1,$14
-L.203:
-mov $16,$27
-subq $27,1,$16
-cmpeq $27,$31,$23
-beq $23,L.202
-mov $14,$0
-L.201:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end pow2
-.sdata
-.align 0
-L.206:
-.byte 115
-.byte 50
-.byte 52
-.byte 51
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.207:
-.byte 115
-.byte 50
-.byte 52
-.byte 51
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s243
-.text
-.text
-.ent s243
-s243:
-ldgp $gp,0($27)
-lda $sp,-352($sp)
-.mask 0x5007000,-320
-.frame $sp,352,$26,48
-stq $12,0($sp)
-stq $13,8($sp)
-stq $14,16($sp)
-stq $24,24($sp)
-stq $26,32($sp)
-stq $16,304($sp)
-.prologue 1
-mov $31,$12
-lda $14,L.207
-ldq $27,-48+352($sp)
-lda $13,60($27)
-L.208:
-L.209:
-mov $13,$27
-lda $13,1($27)
-mov $14,$25
-lda $14,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.208
-lda $16,-312+352($sp)
-jsr $26,zerofill
-ldgp $gp,0($26)
-lda $27,1
-stb $27,-215+352($sp)
-lda $27,1
-stb $27,-247+352($sp)
-lda $27,1
-stb $27,-186+352($sp)
-lda $27,1
-stb $27,-264+352($sp)
-lda $27,1
-stb $27,-214+352($sp)
-lda $27,1
-stb $27,-246+352($sp)
-lda $27,1
-stb $27,-279+352($sp)
-lda $27,1
-stb $27,-263+352($sp)
-lda $27,1
-stb $27,-213+352($sp)
-lda $27,1
-stb $27,-245+352($sp)
-lda $27,1
-stb $27,-278+352($sp)
-lda $27,1
-stb $27,-262+352($sp)
-lda $27,1
-stb $27,-212+352($sp)
-lda $27,1
-stb $27,-244+352($sp)
-lda $27,1
-stb $27,-277+352($sp)
-lda $27,1
-stb $27,-261+352($sp)
-lda $27,1
-stb $27,-211+352($sp)
-lda $27,1
-stb $27,-243+352($sp)
-lda $27,1
-stb $27,-275+352($sp)
-lda $27,1
-stb $27,-260+352($sp)
-lda $27,1
-stb $27,-210+352($sp)
-lda $27,1
-stb $27,-242+352($sp)
-lda $27,1
-stb $27,-274+352($sp)
-lda $27,1
-stb $27,-259+352($sp)
-lda $27,1
-stb $27,-209+352($sp)
-lda $27,1
-stb $27,-241+352($sp)
-lda $27,1
-stb $27,-272+352($sp)
-lda $27,1
-stb $27,-258+352($sp)
-lda $27,1
-stb $27,-208+352($sp)
-lda $27,1
-stb $27,-240+352($sp)
-lda $27,1
-stb $27,-271+352($sp)
-lda $27,1
-stb $27,-257+352($sp)
-lda $27,1
-stb $27,-207+352($sp)
-lda $27,1
-stb $27,-239+352($sp)
-lda $27,1
-stb $27,-217+352($sp)
-lda $27,1
-stb $27,-256+352($sp)
-lda $27,1
-stb $27,-206+352($sp)
-lda $27,1
-stb $27,-238+352($sp)
-lda $27,1
-stb $27,-251+352($sp)
-lda $27,1
-stb $27,-255+352($sp)
-lda $27,1
-stb $27,-205+352($sp)
-lda $27,1
-stb $27,-237+352($sp)
-lda $27,1
-stb $27,-267+352($sp)
-lda $27,1
-stb $27,-204+352($sp)
-lda $27,1
-stb $27,-236+352($sp)
-lda $27,1
-stb $27,-218+352($sp)
-lda $27,1
-stb $27,-203+352($sp)
-lda $27,1
-stb $27,-235+352($sp)
-lda $27,1
-stb $27,-188+352($sp)
-lda $27,1
-stb $27,-302+352($sp)
-lda $27,1
-stb $27,-202+352($sp)
-lda $27,1
-stb $27,-234+352($sp)
-lda $27,1
-stb $27,-303+352($sp)
-lda $27,1
-stb $27,-201+352($sp)
-lda $27,1
-stb $27,-233+352($sp)
-lda $27,1
-stb $27,-189+352($sp)
-lda $27,1
-stb $27,-304+352($sp)
-lda $27,1
-stb $27,-200+352($sp)
-lda $27,1
-stb $27,-232+352($sp)
-lda $27,1
-stb $27,-187+352($sp)
-lda $27,1
-stb $27,-299+352($sp)
-lda $27,1
-stb $27,-199+352($sp)
-lda $27,1
-stb $27,-231+352($sp)
-lda $27,1
-stb $27,-221+352($sp)
-lda $27,1
-stb $27,-300+352($sp)
-lda $27,1
-stb $27,-198+352($sp)
-lda $27,1
-stb $27,-230+352($sp)
-lda $27,1
-stb $27,-219+352($sp)
-lda $27,1
-stb $27,-197+352($sp)
-lda $27,1
-stb $27,-229+352($sp)
-lda $27,1
-stb $27,-269+352($sp)
-lda $27,1
-stb $27,-220+352($sp)
-lda $27,1
-stb $27,-196+352($sp)
-lda $27,1
-stb $27,-228+352($sp)
-lda $27,1
-stb $27,-253+352($sp)
-lda $27,1
-stb $27,-273+352($sp)
-lda $27,1
-stb $27,-195+352($sp)
-lda $27,1
-stb $27,-227+352($sp)
-lda $27,1
-stb $27,-270+352($sp)
-lda $27,1
-stb $27,-194+352($sp)
-lda $27,1
-stb $27,-226+352($sp)
-lda $27,1
-stb $27,-254+352($sp)
-lda $27,1
-stb $27,-312+352($sp)
-stb $27,-193+352($sp)
-lda $27,1
-stb $27,-225+352($sp)
-lda $27,1
-stb $27,-252+352($sp)
-lda $27,1
-stb $27,-280+352($sp)
-lda $27,1
-stb $27,-192+352($sp)
-lda $27,1
-stb $27,-224+352($sp)
-lda $27,1
-stb $27,-250+352($sp)
-lda $27,1
-stb $27,-191+352($sp)
-lda $27,1
-stb $27,-223+352($sp)
-lda $27,1
-stb $27,-268+352($sp)
-lda $27,1
-stb $27,-190+352($sp)
-lda $27,1
-stb $27,-222+352($sp)
-lda $27,1
-stb $27,-266+352($sp)
-lda $27,1
-stb $27,-249+352($sp)
-lda $27,1
-stb $27,-265+352($sp)
-lda $16,-312+352($sp)
-jsr $26,sumof
-ldgp $gp,0($26)
-lda $25,98
-cmpeq $0,$25,$23
-bne $23,L.308
-lda $12,1($12)
-ldq $27,-48+352($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.310
-lda $16,L.206
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.310:
-L.308:
-br L.312
-lda $12,8($12)
-ldq $27,-48+352($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.314
-lda $16,L.206
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.314:
-L.312:
-mov $12,$0
-L.205:
-ldq $12,0($sp)
-ldq $13,8($sp)
-ldq $14,16($sp)
-ldq $24,24($sp)
-ldq $26,32($sp)
-lda $sp,352($sp)
-ret
-.end s243
-.globl zerofill
-.text
-.ent zerofill
-zerofill:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x5004000,-64
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $24,8($sp)
-stq $26,16($sp)
-.prologue 1
-mov $31,$14
-L.317:
-mov $16,$27
-lda $16,1($27)
-stb $31,($27)
-L.318:
-lda $14,1($14)
-lda $27,256
-cmplt $14,$27,$23
-bne $23,L.317
-mov $31,$0
-L.316:
-ldq $14,0($sp)
-ldq $24,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end zerofill
-.globl sumof
-.text
-.ent sumof
-sumof:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.mask 0x4007000,-72
-.frame $sp,96,$26,48
-stq $12,0($sp)
-stq $13,8($sp)
-stq $14,16($sp)
-stq $26,24($sp)
-.prologue 1
-mov $16,$12
-mov $31,$14
-mov $31,$13
-L.322:
-mov $12,$27
-lda $12,1($27)
-ldb $27,($27)
-addl $14,$27,$14
-L.323:
-lda $13,1($13)
-lda $27,256
-cmplt $13,$27,$23
-bne $23,L.322
-mov $14,$0
-L.321:
-ldq $12,0($sp)
-ldq $13,8($sp)
-ldq $14,16($sp)
-ldq $26,24($sp)
-lda $sp,96($sp)
-ret
-.end sumof
-.sdata
-.align 0
-L.327:
-.byte 115
-.byte 50
-.byte 52
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.328:
-.byte 115
-.byte 50
-.byte 52
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s244
-.text
-.text
-.ent s244
-s244:
-ldgp $gp,0($27)
-lda $sp,-176($sp)
-.mask 0x5007c00,-128
-.frame $sp,176,$26,48
-stq $10,0($sp)
-stq $11,8($sp)
-stq $12,16($sp)
-stq $13,24($sp)
-stq $14,32($sp)
-stq $24,40($sp)
-stq $26,48($sp)
-stq $16,128($sp)
-.prologue 1
-lda $13,L.328
-ldq $27,-48+176($sp)
-lda $12,60($27)
-L.329:
-L.330:
-mov $12,$27
-lda $12,1($27)
-mov $13,$25
-lda $13,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.329
-mov $31,$10
-mov $31,$11
-ldt $f30,L.332
-stt $f30,-120+176($sp)
-stt $f30,-112+176($sp)
-ldt $f30,L.332
-stt $f30,-104+176($sp)
-ldt $f30,L.332
-stt $f30,-96+176($sp)
-ldt $f30,L.332
-stt $f30,-88+176($sp)
-ldt $f30,L.332
-stt $f30,-80+176($sp)
-ldt $f30,L.332
-stt $f30,-72+176($sp)
-ldt $f30,L.332
-stt $f30,-64+176($sp)
-mov $31,$11
-mov $31,$14
-L.340:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-lda $25,-120+176($sp)
-addq $27,$25,$27
-ldt $f30,($27)
-lda $27,1($14)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-lda $25,-120+176($sp)
-addq $27,$25,$27
-ldt $f29,($27)
-cmpteq $f30,$f29,$f1
-fbne $f1,L.344
-lda $11,1
-L.344:
-L.341:
-lda $14,1($14)
-cmplt $14,7,$23
-bne $23,L.340
-cmpeq $11,$31,$23
-bne $23,L.346
-ldq $27,-48+176($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.348
-lda $16,L.327
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.348:
-lda $10,1($10)
-L.346:
-br L.350
-ldq $27,-48+176($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.352
-lda $16,L.327
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.352:
-lda $10,2($10)
-L.350:
-mov $10,$0
-L.326:
-ldq $10,0($sp)
-ldq $11,8($sp)
-ldq $12,16($sp)
-ldq $13,24($sp)
-ldq $14,32($sp)
-ldq $24,40($sp)
-ldq $26,48($sp)
-lda $sp,176($sp)
-ret
-.end s244
-.sdata
-.align 0
-L.355:
-.byte 115
-.byte 50
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.356:
-.byte 115
-.byte 50
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s25
-.text
-.text
-.ent s25
-s25:
-ldgp $gp,0($27)
-lda $sp,-128($sp)
-.mask 0x5007e00,-72
-.frame $sp,128,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-mov $16,$14
-.prologue 1
-lda $10,L.356
-lda $9,60($14)
-L.357:
-L.358:
-mov $9,$27
-lda $9,1($27)
-mov $10,$25
-lda $10,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.357
-stl $31,-60+128($sp)
-lda $12,L.360
-lda $27,1($12)
-ldb $27,($27)
-ldb $25,($12)
-cmpeq $25,$27,$23
-beq $23,L.364
-lda $25,2($12)
-ldb $25,($25)
-cmpeq $27,$25,$23
-beq $23,L.364
-cmpeq $25,46,$23
-bne $23,L.361
-L.364:
-ldl $27,-60+128($sp)
-lda $27,1($27)
-stl $27,-60+128($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.365
-lda $16,L.355
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.365:
-L.361:
-lda $27,3($12)
-ldb $27,($27)
-cmpeq $27,$31,$23
-bne $23,L.367
-ldl $27,-60+128($sp)
-lda $27,4($27)
-stl $27,-60+128($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.369
-lda $16,L.355
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.369:
-L.367:
-lda $27,L.373+1
-ldb $27,($27)
-cmpeq $27,34,$23
-bne $23,L.371
-ldl $27,-60+128($sp)
-lda $27,8($27)
-stl $27,-60+128($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.375
-lda $16,L.355
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.375:
-L.371:
-lda $12,L.377
-ldb $27,($12)
-cmpeq $27,10,$23
-beq $23,L.385
-lda $27,1($12)
-ldb $27,($27)
-cmpeq $27,9,$23
-beq $23,L.385
-lda $27,2($12)
-ldb $27,($27)
-cmpeq $27,8,$23
-beq $23,L.385
-lda $27,3($12)
-ldb $27,($27)
-cmpeq $27,13,$23
-beq $23,L.385
-lda $27,4($12)
-ldb $27,($27)
-cmpeq $27,12,$23
-beq $23,L.385
-lda $27,5($12)
-ldb $27,($27)
-lda $25,92
-cmpeq $27,$25,$23
-beq $23,L.385
-lda $27,6($12)
-ldb $27,($27)
-cmpeq $27,39,$23
-bne $23,L.378
-L.385:
-ldl $27,-60+128($sp)
-lda $27,16($27)
-stl $27,-60+128($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.386
-lda $16,L.355
-lda $17,16
-jsr $26,printf
-ldgp $gp,0($26)
-L.386:
-L.378:
-lda $27,L.388
-mov $27,$11
-mov $27,$12
-stl $31,-64+128($sp)
-mov $31,$13
-br L.392
-L.389:
-addq $13,$12,$27
-ldb $27,($27)
-addq $13,$11,$25
-ldb $25,($25)
-cmpeq $27,$25,$23
-bne $23,L.393
-lda $27,1
-stl $27,-64+128($sp)
-L.393:
-L.390:
-lda $13,1($13)
-L.392:
-mov $13,$27
-lda $25,7
-cmpult $27,$25,$23
-bne $23,L.389
-ldl $27,-64+128($sp)
-cmpeq $27,$31,$23
-bne $23,L.395
-ldl $27,-60+128($sp)
-lda $27,32($27)
-stl $27,-60+128($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.397
-lda $16,L.355
-lda $17,32
-jsr $26,printf
-ldgp $gp,0($26)
-L.397:
-L.395:
-ldl $0,-60+128($sp)
-L.354:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,128($sp)
-ret
-.end s25
-.sdata
-.align 0
-L.400:
-.byte 115
-.byte 50
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.401:
-.byte 37
-.byte 51
-.byte 100
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 37
-.byte 115
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.402:
-.byte 37
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 97
-.byte 100
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 49
-.byte 46
-.byte 32
-.byte 40
-.byte 37
-.byte 115
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.globl s26
-.text
-.text
-.ent s26
-s26:
-ldgp $gp,0($27)
-lda $sp,-160($sp)
-.fmask 0x3e0,-128
-.mask 0x5007c00,-72
-.frame $sp,160,$26,48
-stt $f5,0($sp)
-stt $f6,8($sp)
-stt $f7,16($sp)
-stt $f8,24($sp)
-stt $f9,32($sp)
-stq $10,40($sp)
-stq $11,48($sp)
-stq $12,56($sp)
-stq $13,64($sp)
-stq $14,72($sp)
-stq $24,80($sp)
-stq $26,88($sp)
-mov $16,$14
-.prologue 1
-lda $12,L.400
-lda $11,60($14)
-L.403:
-L.404:
-mov $11,$27
-lda $11,1($27)
-mov $12,$25
-lda $12,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.403
-stl $31,($14)
-mov $31,$10
-lda $13,1
-br L.407
-L.406:
-sll $13,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $27,1,$27
-addl $27,0,$27
-mov $27,$13
-ldl $27,($14)
-lda $27,1($27)
-stl $27,($14)
-L.407:
-sll $10,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $13,8*(8-1),$25
-sra $25,8*(8-1),$25
-cmpeq $27,$25,$23
-beq $23,L.406
-ldl $27,($14)
-sll $27,2,$27
-stl $27,4($14)
-ldl $27,($14)
-sll $27,1,$27
-stl $27,8($14)
-ldl $27,($14)
-sll $27,3,$27
-stl $27,12($14)
-ldl $27,($14)
-sll $27,2,$27
-stl $27,16($14)
-ldl $27,($14)
-sll $27,2,$27
-stl $27,20($14)
-ldl $27,($14)
-sll $27,3,$27
-stl $27,24($14)
-lds $f30,L.409
-fmov $f30,$f7
-fmov $f30,$f9
-lds $f8,L.410
-br L.412
-L.411:
-adds $f7,$f9,$f8
-cvtst $f9,$f30
-ldt $f29,L.414
-divt $f30,$f29,$f30
-cvtts $f30,$f9
-L.412:
-cmpteq $f8,$f7,$f1
-fbeq $f1,L.411
-ldt $f30,L.415
-cvtst $f9,$f29
-mult $f30,$f29,$f30
-cvtts $f30,$f30
-sts $f30,28($14)
-ldt $f5,L.416
-lds $f9,L.409
-ldt $f6,L.417
-br L.419
-L.418:
-cvtst $f9,$f30
-addt $f5,$f30,$f6
-ldt $f29,L.414
-divt $f30,$f29,$f30
-cvtts $f30,$f9
-L.419:
-cmpteq $f6,$f5,$f1
-fbeq $f1,L.418
-ldt $f30,L.415
-cvtst $f9,$f29
-mult $f30,$f29,$f30
-cvtts $f30,$f30
-sts $f30,32($14)
-ldl $27,40($14)
-cmpeq $27,$31,$23
-bne $23,L.421
-lda $16,L.401
-ldl $17,($14)
-lda $18,L.423
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.401
-ldl $17,4($14)
-lda $18,L.424
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.401
-ldl $17,8($14)
-lda $18,L.425
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.401
-ldl $17,12($14)
-lda $18,L.426
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.401
-ldl $17,16($14)
-lda $18,L.427
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.401
-ldl $17,20($14)
-lda $18,L.428
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.401
-ldl $17,24($14)
-lda $18,L.429
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.402
-lds $f30,28($14)
-cvtst $f30,$f17
-lda $18,L.428
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.402
-lds $f30,32($14)
-cvtst $f30,$f17
-lda $18,L.429
-jsr $26,printf
-ldgp $gp,0($26)
-L.421:
-mov $31,$0
-L.399:
-ldt $f5,0($sp)
-ldt $f6,8($sp)
-ldt $f7,16($sp)
-ldt $f8,24($sp)
-ldt $f9,32($sp)
-ldq $10,40($sp)
-ldq $11,48($sp)
-ldq $12,56($sp)
-ldq $13,64($sp)
-ldq $14,72($sp)
-ldq $24,80($sp)
-ldq $26,88($sp)
-lda $sp,160($sp)
-ret
-.end s26
-.sdata
-.align 0
-L.431:
-.byte 115
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.432:
-.byte 115
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s4
-.text
-.text
-.ent s4
-s4:
-ldgp $gp,0($27)
-lda $sp,-160($sp)
-.mask 0x5007e00,-104
-.frame $sp,160,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-mov $16,$14
-.prologue 1
-stl $31,-60+160($sp)
-lda $10,L.432
-lda $9,60($14)
-L.433:
-L.434:
-mov $9,$27
-lda $9,1($27)
-mov $10,$25
-lda $10,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.433
-mov $31,$13
-L.436:
-mov $13,$16
-jsr $26,svtest
-ldgp $gp,0($26)
-mov $0,$27
-stl $27,-84+160($sp)
-jsr $26,zero
-ldgp $gp,0($26)
-ldl $25,-84+160($sp)
-cmpeq $25,$0,$23
-bne $23,L.440
-lda $27,1
-stl $27,-60+160($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.442
-lda $16,L.431
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.442:
-L.440:
-L.437:
-lda $13,1($13)
-cmplt $13,3,$23
-bne $23,L.436
-jsr $26,setev
-ldgp $gp,0($26)
-jsr $26,testev
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-bne $23,L.444
-ldl $27,-60+160($sp)
-lda $27,2($27)
-stl $27,-60+160($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.446
-lda $16,L.431
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.446:
-L.444:
-br L.448
-ldl $27,-60+160($sp)
-lda $27,4($27)
-stl $27,-60+160($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.450
-lda $16,L.431
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.450:
-L.448:
-lda $12,0xffffffff
-lda $11,1
-mov $31,$13
-br L.455
-L.452:
-and $11,$12,$11
-srl $12,1,$12
-L.453:
-lda $13,1($13)
-L.455:
-mov $13,$27
-ldl $25,($14)
-sll $25,2,$25
-cmpult $27,$25,$23
-bne $23,L.452
-lda $27,1
-cmpeq $11,$27,$23
-beq $23,L.458
-cmpeq $12,$31,$23
-bne $23,L.456
-L.458:
-ldl $27,-60+160($sp)
-lda $27,8($27)
-stl $27,-60+160($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.459
-lda $16,L.431
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.459:
-L.456:
-ldl $0,-60+160($sp)
-L.430:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,160($sp)
-ret
-.end s4
-.lcomm L.462,4
-.globl svtest
-.text
-.text
-.ent svtest
-svtest:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-cmpeq $16,$31,$23
-bne $23,L.465
-cmpeq $16,1,$23
-bne $23,L.466
-cmpeq $16,2,$23
-bne $23,L.469
-br L.463
-L.465:
-lda $27,1978
-stl $27,L.462
-stl $31,-60+64($sp)
-br L.464
-L.466:
-ldl $27,L.462
-lda $25,1978
-cmpeq $27,$25,$23
-bne $23,L.467
-lda $27,1
-stl $27,-60+64($sp)
-br L.464
-L.467:
-lda $27,1929
-stl $27,L.462
-stl $31,-60+64($sp)
-br L.464
-L.469:
-ldl $27,L.462
-lda $25,1929
-cmpeq $27,$25,$23
-bne $23,L.470
-lda $27,1
-stl $27,-60+64($sp)
-br L.464
-L.470:
-stl $31,-60+64($sp)
-L.463:
-L.464:
-ldl $0,-60+64($sp)
-L.461:
-lda $sp,64($sp)
-ret
-.end svtest
-.lcomm L.473,4
-.globl zero
-.text
-.text
-.ent zero
-zero:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-lda $27,2
-stl $27,L.473
-stl $31,-60+64($sp)
-ldl $0,-60+64($sp)
-L.472:
-lda $sp,64($sp)
-ret
-.end zero
-.globl testev
-.text
-.ent testev
-testev:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-ldl $27,extvar
-lda $25,1066
-cmpeq $27,$25,$23
-bne $23,L.475
-lda $0,1
-br L.474
-L.475:
-mov $31,$0
-L.474:
-lda $sp,64($sp)
-ret
-.end testev
-.sdata
-.align 0
-L.478:
-.byte 115
-.byte 54
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.479:
-.byte 115
-.byte 54
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.480:
-.byte 65
-.byte 66
-.byte 67
-.byte 68
-.byte 69
-.byte 70
-.byte 71
-.byte 72
-.byte 73
-.byte 74
-.byte 75
-.byte 76
-.byte 77
-.byte 78
-.byte 79
-.byte 80
-.byte 81
-.byte 82
-.byte 83
-.byte 84
-.byte 85
-.byte 86
-.byte 87
-.byte 88
-.byte 89
-.byte 90
-.byte 0
-.align 0
-L.481:
-.byte 97
-.byte 98
-.byte 99
-.byte 100
-.byte 101
-.byte 102
-.byte 103
-.byte 104
-.byte 105
-.byte 106
-.byte 107
-.byte 108
-.byte 109
-.byte 110
-.byte 111
-.byte 112
-.byte 113
-.byte 114
-.byte 115
-.byte 116
-.byte 117
-.byte 118
-.byte 119
-.byte 120
-.byte 121
-.byte 122
-.byte 0
-.align 0
-L.482:
-.byte 48
-.byte 49
-.byte 50
-.byte 51
-.byte 52
-.byte 53
-.byte 54
-.byte 55
-.byte 56
-.byte 57
-.byte 0
-.align 0
-L.483:
-.byte 126
-.byte 33
-.byte 34
-.byte 35
-.byte 37
-.byte 38
-.byte 40
-.byte 41
-.byte 95
-.byte 61
-.byte 45
-.byte 94
-.byte 124
-.byte 123
-.byte 125
-.byte 91
-.byte 93
-.byte 43
-.byte 59
-.byte 42
-.byte 58
-.byte 60
-.byte 62
-.byte 44
-.byte 46
-.byte 63
-.byte 47
-.byte 0
-.align 0
-L.484:
-.byte 10
-.byte 9
-.byte 8
-.byte 13
-.byte 12
-.byte 92
-.byte 39
-.byte 0
-.align 0
-L.485:
-.byte 32
-.byte 0
-.byte 0
-.globl s61
-.text
-.text
-.ent s61
-s61:
-ldgp $gp,0($27)
-lda $sp,-192($sp)
-.mask 0x5007e00,-136
-.frame $sp,192,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-stq $16,144($sp)
-.prologue 1
-lda $12,L.479
-ldq $27,-48+192($sp)
-lda $11,60($27)
-mov $31,$9
-L.486:
-L.487:
-mov $11,$27
-lda $11,1($27)
-mov $12,$25
-lda $12,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.486
-lda $27,-19
-stw $27,-110+192($sp)
-lda $27,-110+192($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-stq $27,-120+192($sp)
-ldq $27,-120+192($sp)
-lda $25,-19
-cmpeq $27,$25,$23
-bne $23,L.489
-lda $9,1($9)
-ldq $27,-48+192($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.491
-lda $16,L.478
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.491:
-L.489:
-lda $27,L.480
-stq $27,-104+192($sp)
-lda $27,L.481
-stq $27,-96+192($sp)
-lda $27,L.482
-stq $27,-88+192($sp)
-lda $27,L.483
-stq $27,-80+192($sp)
-lda $27,L.484
-stq $27,-72+192($sp)
-lda $27,L.485
-stq $27,-64+192($sp)
-mov $31,$13
-mov $31,$14
-br L.503
-L.502:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-lda $25,-104+192($sp)
-addq $27,$25,$27
-ldq $25,($27)
-lda $22,1($25)
-stq $22,($27)
-ldb $27,($25)
-cmplt $27,$31,$23
-beq $23,L.505
-lda $13,1
-L.505:
-L.503:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-lda $25,-104+192($sp)
-addq $27,$25,$27
-ldq $27,($27)
-ldb $27,($27)
-cmpeq $27,$31,$23
-beq $23,L.502
-L.499:
-lda $14,1($14)
-cmplt $14,6,$23
-bne $23,L.503
-cmpeq $13,$31,$23
-bne $23,L.507
-lda $9,2($9)
-ldq $27,-48+192($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.509
-lda $16,L.478
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.509:
-L.507:
-lda $10,1048579
-mov $10,$27
-stw $27,-106+192($sp)
-mov $10,$27
-stb $27,-107+192($sp)
-lda $27,-106+192($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$25
-sra $25,8*(8-4),$25
-cmpeq $25,$10,$23
-bne $23,L.514
-cmpeq $27,3,$23
-beq $23,L.513
-L.514:
-lda $27,-107+192($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$25
-sra $25,8*(8-4),$25
-cmpeq $25,$10,$23
-bne $23,L.511
-cmpeq $27,3,$23
-bne $23,L.511
-L.513:
-lda $9,8($9)
-ldq $27,-48+192($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.515
-lda $16,L.478
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.515:
-L.511:
-mov $9,$0
-L.477:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,192($sp)
-ret
-.end s61
-.sdata
-.align 0
-L.518:
-.byte 115
-.byte 54
-.byte 50
-.byte 54
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.519:
-.byte 115
-.byte 54
-.byte 50
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s626
-.text
-.text
-.ent s626
-s626:
-ldgp $gp,0($27)
-lda $sp,-240($sp)
-.fmask 0x3c0,-216
-.mask 0x5007e00,-152
-.frame $sp,240,$26,48
-stt $f6,0($sp)
-stt $f7,8($sp)
-stt $f8,16($sp)
-stt $f9,24($sp)
-stq $9,32($sp)
-stq $10,40($sp)
-stq $11,48($sp)
-stq $12,56($sp)
-stq $13,64($sp)
-stq $14,72($sp)
-stq $24,80($sp)
-stq $26,88($sp)
-mov $16,$14
-.prologue 1
-lda $10,L.519
-lda $9,60($14)
-stl $31,-128+240($sp)
-L.520:
-L.521:
-mov $9,$27
-lda $9,1($27)
-mov $10,$25
-lda $10,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.520
-lds $f9,L.409
-lda $27,1
-stq $27,-96+240($sp)
-mov $27,$12
-mov $31,$13
-br L.526
-L.523:
-lds $f30,L.527
-muls $f30,$f9,$f9
-sll $12,1,$27
-ldq $25,-96+240($sp)
-or $27,$25,$12
-L.524:
-lda $13,1($13)
-L.526:
-ldl $27,12($14)
-subl $27,2,$27
-cmplt $13,$27,$23
-bne $23,L.523
-stq $12,-56+240($sp)
-ldt $f30,-56+240($sp)
-cvtqs $f30,$f30
-sts $f30,-140+240($sp)
-lds $f30,-140+240($sp)
-subs $f9,$f30,$f30
-divs $f30,$f9,$f9
-cvtst $f9,$f30
-ldt $f29,L.414
-lds $f28,28($14)
-cvtst $f28,$f28
-mult $f29,$f28,$f29
-cmptle $f30,$f29,$f1
-fbne $f1,L.528
-ldl $27,-128+240($sp)
-lda $27,2($27)
-stl $27,-128+240($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.530
-lda $16,L.518
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.530:
-L.528:
-lda $27,125
-stb $27,-105+240($sp)
-lda $27,125
-stw $27,-108+240($sp)
-lda $27,125
-stl $27,-112+240($sp)
-lda $27,15625
-stl $27,-120+240($sp)
-lda $27,125
-stl $27,-116+240($sp)
-lda $27,15625
-stl $27,-124+240($sp)
-lda $27,125
-stq $27,-104+240($sp)
-lda $27,15625
-stq $27,-136+240($sp)
-lds $f7,L.532
-ldt $f6,L.533
-ldt $f8,L.534
-mov $31,$13
-L.535:
-lda $27,-84+240($sp)
-addq $13,$27,$27
-stb $31,($27)
-L.536:
-lda $13,1($13)
-cmplt $13,28,$23
-bne $23,L.535
-lda $27,-105+240($sp)
-ldb $27,($27)
-mull $27,$27,$27
-ldl $25,-120+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.539
-lda $27,1
-stb $27,-84+240($sp)
-L.539:
-lda $27,-108+240($sp)
-ldw $27,($27)
-lda $25,-105+240($sp)
-ldb $25,($25)
-mull $27,$25,$27
-ldl $25,-120+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.541
-lda $27,1
-stb $27,-83+240($sp)
-L.541:
-lda $27,-108+240($sp)
-ldw $27,($27)
-mull $27,$27,$27
-ldl $25,-120+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.544
-lda $27,1
-stb $27,-82+240($sp)
-L.544:
-ldl $27,-112+240($sp)
-lda $25,-105+240($sp)
-ldb $25,($25)
-mull $27,$25,$27
-ldl $25,-120+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.547
-lda $27,1
-stb $27,-81+240($sp)
-L.547:
-ldl $27,-112+240($sp)
-lda $25,-108+240($sp)
-ldw $25,($25)
-mull $27,$25,$27
-ldl $25,-120+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.550
-lda $27,1
-stb $27,-80+240($sp)
-L.550:
-ldl $27,-112+240($sp)
-mull $27,$27,$27
-ldl $25,-120+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.553
-lda $27,1
-stb $27,-79+240($sp)
-L.553:
-ldl $27,-116+240($sp)
-zap $27,240,$27
-lda $25,-105+240($sp)
-ldb $25,($25)
-mull $27,$25,$27
-zap $27,240,$27
-ldl $25,-124+240($sp)
-zap $25,240,$25
-cmpeq $27,$25,$23
-bne $23,L.556
-lda $27,1
-stb $27,-78+240($sp)
-L.556:
-ldl $27,-116+240($sp)
-zap $27,240,$27
-lda $25,-108+240($sp)
-ldw $25,($25)
-mull $27,$25,$27
-zap $27,240,$27
-ldl $25,-124+240($sp)
-zap $25,240,$25
-cmpeq $27,$25,$23
-bne $23,L.559
-lda $27,1
-stb $27,-77+240($sp)
-L.559:
-ldl $27,-116+240($sp)
-zap $27,240,$27
-ldl $25,-112+240($sp)
-mull $27,$25,$27
-zap $27,240,$27
-ldl $25,-124+240($sp)
-zap $25,240,$25
-cmpeq $27,$25,$23
-bne $23,L.562
-lda $27,1
-stb $27,-76+240($sp)
-L.562:
-ldl $27,-116+240($sp)
-zap $27,240,$27
-mull $27,$27,$27
-zap $27,240,$27
-ldl $25,-124+240($sp)
-zap $25,240,$25
-cmpeq $27,$25,$23
-bne $23,L.565
-lda $27,1
-stb $27,-75+240($sp)
-L.565:
-ldq $27,-104+240($sp)
-lda $25,-105+240($sp)
-ldb $25,($25)
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-mulq $27,$25,$27
-ldq $25,-136+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.568
-lda $27,1
-stb $27,-74+240($sp)
-L.568:
-ldq $27,-104+240($sp)
-lda $25,-108+240($sp)
-ldw $25,($25)
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-mulq $27,$25,$27
-ldq $25,-136+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.571
-lda $27,1
-stb $27,-73+240($sp)
-L.571:
-ldq $27,-104+240($sp)
-ldl $25,-112+240($sp)
-mulq $27,$25,$27
-ldq $25,-136+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.574
-lda $27,1
-stb $27,-72+240($sp)
-L.574:
-ldq $27,-104+240($sp)
-ldl $25,-116+240($sp)
-zap $25,240,$25
-mulq $27,$25,$27
-ldl $25,-124+240($sp)
-zap $25,240,$25
-cmpeq $27,$25,$23
-bne $23,L.577
-lda $27,1
-stb $27,-71+240($sp)
-L.577:
-ldq $27,-104+240($sp)
-mulq $27,$27,$27
-ldq $25,-136+240($sp)
-cmpeq $27,$25,$23
-bne $23,L.580
-lda $27,1
-stb $27,-70+240($sp)
-L.580:
-lda $27,-105+240($sp)
-ldb $27,($27)
-stq $27,-56+240($sp)
-ldt $f30,-56+240($sp)
-cvtqs $f30,$f30
-muls $f7,$f30,$f30
-cvtst $f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.583
-lda $27,1
-stb $27,-69+240($sp)
-L.583:
-lda $27,-108+240($sp)
-ldw $27,($27)
-stq $27,-56+240($sp)
-ldt $f30,-56+240($sp)
-cvtqs $f30,$f30
-muls $f7,$f30,$f30
-cvtst $f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.586
-lda $27,1
-stb $27,-68+240($sp)
-L.586:
-lds $f30,-112+240($sp)
-cvtlq $f30,$f30
-cvtqs $f30,$f30
-muls $f7,$f30,$f30
-cvtst $f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.589
-lda $27,1
-stb $27,-67+240($sp)
-L.589:
-ldl $27,-116+240($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+240($sp)
-ldt $f29,-56+240($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+240($sp)
-ldt $f29,-56+240($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f30
-muls $f7,$f30,$f30
-cvtst $f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.592
-lda $27,1
-stb $27,-66+240($sp)
-L.592:
-ldt $f30,-104+240($sp)
-cvtqs $f30,$f30
-muls $f7,$f30,$f30
-cvtst $f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.596
-lda $27,1
-stb $27,-65+240($sp)
-L.596:
-muls $f7,$f7,$f30
-cvtst $f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.599
-lda $27,1
-stb $27,-64+240($sp)
-L.599:
-lda $27,-105+240($sp)
-ldb $27,($27)
-stq $27,-56+240($sp)
-ldt $f30,-56+240($sp)
-cvtqt $f30,$f30
-mult $f6,$f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.602
-lda $27,1
-stb $27,-63+240($sp)
-L.602:
-lda $27,-108+240($sp)
-ldw $27,($27)
-stq $27,-56+240($sp)
-ldt $f30,-56+240($sp)
-cvtqt $f30,$f30
-mult $f6,$f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.605
-lda $27,1
-stb $27,-62+240($sp)
-L.605:
-lds $f30,-112+240($sp)
-cvtlq $f30,$f30
-cvtqt $f30,$f30
-mult $f6,$f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.608
-lda $27,1
-stb $27,-61+240($sp)
-L.608:
-ldl $27,-116+240($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+240($sp)
-ldt $f29,-56+240($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+240($sp)
-ldt $f29,-56+240($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-mult $f6,$f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.611
-lda $27,1
-stb $27,-60+240($sp)
-L.611:
-ldt $f30,-104+240($sp)
-cvtqt $f30,$f30
-mult $f6,$f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.614
-lda $27,1
-stb $27,-59+240($sp)
-L.614:
-cvtst $f7,$f30
-mult $f6,$f30,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.617
-lda $27,1
-stb $27,-58+240($sp)
-L.617:
-mult $f6,$f6,$f30
-cmpteq $f30,$f8,$f1
-fbne $f1,L.620
-lda $27,1
-stb $27,-57+240($sp)
-L.620:
-mov $31,$11
-mov $31,$13
-L.623:
-sll $11,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-84+240($sp)
-addq $13,$25,$25
-ldb $25,($25)
-addl $27,$25,$27
-mov $27,$11
-L.624:
-lda $13,1($13)
-cmplt $13,28,$23
-bne $23,L.623
-sll $11,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-bne $23,L.627
-ldl $27,-128+240($sp)
-lda $27,4($27)
-stl $27,-128+240($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.629
-lda $16,L.518
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.631
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$13
-L.632:
-lda $16,L.636
-lda $27,-84+240($sp)
-addq $13,$27,$27
-ldb $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.633:
-lda $13,1($13)
-cmplt $13,28,$23
-bne $23,L.632
-lda $16,L.637
-jsr $26,printf
-ldgp $gp,0($26)
-L.629:
-L.627:
-lda $27,32768
-stq $27,-104+240($sp)
-ldq $25,-104+240($sp)
-cmple $25,$27,$23
-bne $23,L.638
-ldl $27,-128+240($sp)
-lda $27,8($27)
-stl $27,-128+240($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.640
-lda $16,L.518
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.640:
-L.638:
-ldl $0,-128+240($sp)
-L.517:
-ldt $f6,0($sp)
-ldt $f7,8($sp)
-ldt $f8,16($sp)
-ldt $f9,24($sp)
-ldq $9,32($sp)
-ldq $10,40($sp)
-ldq $11,48($sp)
-ldq $12,56($sp)
-ldq $13,64($sp)
-ldq $14,72($sp)
-ldq $24,80($sp)
-ldq $26,88($sp)
-lda $sp,240($sp)
-ret
-.end s626
-.sdata
-.align 0
-L.643:
-.byte 115
-.byte 55
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.644:
-.byte 115
-.byte 55
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.645:
-.byte 0x71
-.globl s71
-.text
-.text
-.ent s71
-s71:
-ldgp $gp,0($27)
-lda $sp,-176($sp)
-.mask 0x5007c00,-128
-.frame $sp,176,$26,48
-stq $10,0($sp)
-stq $11,8($sp)
-stq $12,16($sp)
-stq $13,24($sp)
-stq $14,32($sp)
-stq $24,40($sp)
-stq $26,48($sp)
-mov $16,$14
-.prologue 1
-lda $13,L.644
-lda $12,60($14)
-mov $31,$11
-L.646:
-L.647:
-mov $12,$27
-lda $12,1($27)
-mov $13,$25
-lda $13,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.646
-lda $27,L.651
-ldb $27,($27)
-lda $25,L.645
-ldb $25,($25)
-cmpeq $27,$25,$23
-bne $23,L.649
-lda $11,1($11)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.652
-lda $16,L.643
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.652:
-L.649:
-br L.654
-lda $11,2($11)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.656
-lda $16,L.643
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.656:
-L.654:
-lda $27,1942
-stl $27,-76+176($sp)
-ldl $27,-76+176($sp)
-lda $25,1942
-cmpeq $27,$25,$23
-beq $23,L.664
-ldl $27,-76+176($sp)
-ldl $25,-76+176($sp)
-cmpeq $27,$25,$23
-bne $23,L.659
-L.664:
-lda $11,4($11)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.665
-lda $16,L.643
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.665:
-L.659:
-lda $16,-5
-jsr $26,McCarthy
-ldgp $gp,0($26)
-lda $25,91
-cmpeq $0,$25,$23
-bne $23,L.667
-lda $11,8($11)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.669
-lda $16,L.643
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.669:
-L.667:
-lda $10,2
-lda $27,3
-stl $27,-100+176($sp)
-lda $27,-100+176($sp)
-stq $27,-112+176($sp)
-mov $10,$16
-ldq $17,-112+176($sp)
-jsr $26,clobber
-ldgp $gp,0($26)
-cmpeq $10,2,$23
-beq $23,L.673
-ldl $27,-100+176($sp)
-cmpeq $27,2,$23
-bne $23,L.671
-L.673:
-lda $11,16($11)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.674
-lda $16,L.643
-lda $17,16
-jsr $26,printf
-ldgp $gp,0($26)
-L.674:
-L.671:
-lds $f30,32($14)
-cmpteq $f30,$f30,$f1
-fbne $f1,L.676
-lda $11,32($11)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.678
-lda $16,L.643
-lda $17,32
-jsr $26,printf
-ldgp $gp,0($26)
-L.678:
-L.676:
-mov $11,$0
-L.642:
-ldq $10,0($sp)
-ldq $11,8($sp)
-ldq $12,16($sp)
-ldq $13,24($sp)
-ldq $14,32($sp)
-ldq $24,40($sp)
-ldq $26,48($sp)
-lda $sp,176($sp)
-ret
-.end s71
-.globl McCarthy
-.text
-.ent McCarthy
-McCarthy:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-.prologue 1
-ldl $27,-48+64($sp)
-lda $25,100
-cmple $27,$25,$23
-bne $23,L.681
-ldl $27,-48+64($sp)
-subl $27,10,$0
-br L.680
-L.681:
-ldl $27,-48+64($sp)
-lda $16,11($27)
-jsr $26,McCarthy
-ldgp $gp,0($26)
-mov $0,$27
-mov $27,$16
-jsr $26,McCarthy
-ldgp $gp,0($26)
-mov $0,$27
-L.680:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end McCarthy
-.globl clobber
-.text
-.ent clobber
-clobber:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-lda $16,3
-lda $27,2
-stl $27,($17)
-mov $31,$0
-L.683:
-lda $sp,64($sp)
-ret
-.end clobber
-.sdata
-.align 0
-L.685:
-.byte 76
-.byte 111
-.byte 99
-.byte 97
-.byte 108
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.686:
-.byte 115
-.byte 55
-.byte 49
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.687:
-.byte 115
-.byte 55
-.byte 49
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s714
-.text
-.text
-.ent s714
-s714:
-ldgp $gp,0($27)
-lda $sp,-256($sp)
-.fmask 0x3c0,-232
-.mask 0x5007e00,-168
-.frame $sp,256,$26,48
-stt $f6,0($sp)
-stt $f7,8($sp)
-stt $f8,16($sp)
-stt $f9,24($sp)
-stq $9,32($sp)
-stq $10,40($sp)
-stq $11,48($sp)
-stq $12,56($sp)
-stq $13,64($sp)
-stq $14,72($sp)
-stq $24,80($sp)
-stq $26,88($sp)
-stq $16,208($sp)
-.prologue 1
-lda $27,L.687
-stq $27,-96+256($sp)
-ldq $27,-48+256($sp)
-lda $25,60($27)
-stq $25,-104+256($sp)
-stl $31,-108+256($sp)
-mov $31,$13
-ldl $14,48($27)
-L.688:
-L.689:
-ldq $27,-104+256($sp)
-lda $25,1($27)
-stq $25,-104+256($sp)
-ldq $25,-96+256($sp)
-lda $22,1($25)
-stq $22,-96+256($sp)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.688
-lda $12,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $12,($27)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.691
-lda $13,1
-cmpeq $14,$31,$23
-bne $23,L.693
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.693:
-L.691:
-lda $12,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.695
-lda $13,2
-cmpeq $14,$31,$23
-bne $23,L.697
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.697:
-L.695:
-lda $12,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.699
-lda $13,3
-cmpeq $14,$31,$23
-bne $23,L.701
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.701:
-L.699:
-lda $12,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.703
-lda $13,4
-cmpeq $14,$31,$23
-bne $23,L.705
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.705:
-L.703:
-lda $12,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.707
-lda $13,5
-cmpeq $14,$31,$23
-bne $23,L.709
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.709:
-L.707:
-lda $12,5
-lds $f7,L.527
-cvttqc $f7,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.711
-lda $13,6
-cmpeq $14,$31,$23
-bne $23,L.713
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.713:
-L.711:
-lda $12,5
-ldt $f6,L.414
-cvttqc $f6,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.715
-lda $13,7
-cmpeq $14,$31,$23
-bne $23,L.717
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.717:
-L.715:
-lda $11,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.719
-lda $13,8
-cmpeq $14,$31,$23
-bne $23,L.721
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.721:
-L.719:
-lda $11,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $11,($27)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.723
-lda $13,9
-cmpeq $14,$31,$23
-bne $23,L.725
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.725:
-L.723:
-lda $11,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.727
-lda $13,10
-cmpeq $14,$31,$23
-bne $23,L.729
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.729:
-L.727:
-lda $11,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.731
-lda $13,11
-cmpeq $14,$31,$23
-bne $23,L.733
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.733:
-L.731:
-lda $11,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.735
-lda $13,12
-cmpeq $14,$31,$23
-bne $23,L.737
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.737:
-L.735:
-lda $11,5
-lds $f7,L.527
-cvttqc $f7,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.739
-lda $13,13
-cmpeq $14,$31,$23
-bne $23,L.741
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.741:
-L.739:
-lda $11,5
-ldt $f6,L.414
-cvttqc $f6,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.743
-lda $13,14
-cmpeq $14,$31,$23
-bne $23,L.745
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.745:
-L.743:
-lda $10,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $10,($27)
-cmpeq $10,2,$23
-bne $23,L.747
-lda $13,15
-cmpeq $14,$31,$23
-bne $23,L.749
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.749:
-L.747:
-lda $10,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $10,($27)
-cmpeq $10,2,$23
-bne $23,L.751
-lda $13,16
-cmpeq $14,$31,$23
-bne $23,L.753
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.753:
-L.751:
-lda $10,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $10,-68+256($sp)
-cmpeq $10,2,$23
-bne $23,L.755
-lda $13,17
-cmpeq $14,$31,$23
-bne $23,L.757
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.757:
-L.755:
-lda $10,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-mov $27,$10
-cmpeq $10,2,$23
-bne $23,L.759
-lda $13,18
-cmpeq $14,$31,$23
-bne $23,L.761
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.761:
-L.759:
-lda $10,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-mov $27,$10
-cmpeq $10,2,$23
-bne $23,L.763
-lda $13,19
-cmpeq $14,$31,$23
-bne $23,L.765
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.765:
-L.763:
-lda $10,5
-lds $f7,L.527
-cvttqc $f7,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,2,$23
-bne $23,L.767
-lda $13,20
-cmpeq $14,$31,$23
-bne $23,L.769
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.769:
-L.767:
-lda $10,5
-ldt $f6,L.414
-cvttqc $f6,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,2,$23
-bne $23,L.771
-lda $13,21
-cmpeq $14,$31,$23
-bne $23,L.773
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.773:
-L.771:
-lda $9,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$9
-sra $9,8*(8-4),$9
-cmpeq $9,2,$23
-bne $23,L.775
-lda $13,22
-cmpeq $14,$31,$23
-bne $23,L.777
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.777:
-L.775:
-lda $9,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$9
-sra $9,8*(8-4),$9
-cmpeq $9,2,$23
-bne $23,L.779
-lda $13,23
-cmpeq $14,$31,$23
-bne $23,L.781
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.781:
-L.779:
-lda $9,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $9,-68+256($sp)
-cmpeq $9,2,$23
-bne $23,L.783
-lda $13,24
-cmpeq $14,$31,$23
-bne $23,L.785
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.785:
-L.783:
-lda $9,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $9,-80+256($sp)
-cmpeq $9,2,$23
-bne $23,L.787
-lda $13,25
-cmpeq $14,$31,$23
-bne $23,L.789
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.789:
-L.787:
-lda $9,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $9,-84+256($sp)
-zap $9,240,$9
-cmpeq $9,2,$23
-bne $23,L.791
-lda $13,26
-cmpeq $14,$31,$23
-bne $23,L.793
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.793:
-L.791:
-lda $9,5
-lds $f7,L.527
-cvttqc $f7,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,2,$23
-bne $23,L.795
-lda $13,27
-cmpeq $14,$31,$23
-bne $23,L.797
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.797:
-L.795:
-lda $9,5
-ldt $f6,L.414
-cvttqc $f6,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,2,$23
-bne $23,L.799
-lda $13,28
-cmpeq $14,$31,$23
-bne $23,L.801
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.801:
-L.799:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.803
-lda $13,29
-cmpeq $14,$31,$23
-bne $23,L.805
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.805:
-L.803:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.807
-lda $13,30
-cmpeq $14,$31,$23
-bne $23,L.809
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.809:
-L.807:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.811
-lda $13,31
-cmpeq $14,$31,$23
-bne $23,L.813
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.813:
-L.811:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.815
-lda $13,32
-cmpeq $14,$31,$23
-bne $23,L.817
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.817:
-L.815:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-84+256($sp)
-ldl $25,-84+256($sp)
-zap $25,240,$25
-stl $25,-60+256($sp)
-ldl $25,-60+256($sp)
-zap $25,240,$25
-cmpeq $25,$27,$23
-bne $23,L.819
-lda $13,33
-cmpeq $14,$31,$23
-bne $23,L.821
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.821:
-L.819:
-lda $27,5
-stl $27,-60+256($sp)
-lds $f7,L.527
-lds $f30,L.826
-cmptlt $f7,$f30,$f1
-fbne $f1,L.824
-subs $f7,$f30,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-112+256($sp)
-br L.825
-L.824:
-cvttqc $f7,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-112+256($sp)
-L.825:
-ldl $27,-112+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.827
-lda $13,34
-cmpeq $14,$31,$23
-bne $23,L.829
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.829:
-L.827:
-lda $27,5
-stl $27,-60+256($sp)
-ldt $f6,L.414
-ldt $f30,L.834
-cmptlt $f6,$f30,$f1
-fbne $f1,L.832
-subt $f6,$f30,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-116+256($sp)
-br L.833
-L.832:
-cvttqc $f6,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-116+256($sp)
-L.833:
-ldl $27,-116+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.835
-lda $13,35
-cmpeq $14,$31,$23
-bne $23,L.837
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.837:
-L.835:
-lds $f9,L.839
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f9,-56+256($sp)
-cvtqs $f9,$f9
-lds $f30,L.527
-cmpteq $f9,$f30,$f1
-fbne $f1,L.840
-lda $13,36
-cmpeq $14,$31,$23
-bne $23,L.842
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.842:
-L.840:
-lds $f9,L.839
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f9,-56+256($sp)
-cvtqs $f9,$f9
-lds $f30,L.527
-cmpteq $f9,$f30,$f1
-fbne $f1,L.844
-lda $13,37
-cmpeq $14,$31,$23
-bne $23,L.846
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.846:
-L.844:
-lds $f9,L.839
-lda $27,2
-stl $27,-68+256($sp)
-lds $f9,-68+256($sp)
-cvtlq $f9,$f9
-cvtqs $f9,$f9
-lds $f30,L.527
-cmpteq $f9,$f30,$f1
-fbne $f1,L.848
-lda $13,38
-cmpeq $14,$31,$23
-bne $23,L.850
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.850:
-L.848:
-lds $f9,L.839
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f9,-80+256($sp)
-cvtqs $f9,$f9
-lds $f30,L.527
-cmpteq $f9,$f30,$f1
-fbne $f1,L.852
-lda $13,39
-cmpeq $14,$31,$23
-bne $23,L.854
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.854:
-L.852:
-lds $f9,L.839
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f9
-lds $f30,L.527
-cmpteq $f9,$f30,$f1
-fbne $f1,L.856
-lda $13,40
-cmpeq $14,$31,$23
-bne $23,L.858
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.858:
-L.856:
-lds $f9,L.839
-lds $f30,L.527
-fmov $f30,$f7
-fmov $f7,$f9
-cmpteq $f9,$f30,$f1
-fbne $f1,L.860
-lda $13,41
-cmpeq $14,$31,$23
-bne $23,L.862
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.862:
-L.860:
-lds $f9,L.839
-ldt $f6,L.414
-cvtts $f6,$f9
-lds $f30,L.527
-cmpteq $f9,$f30,$f1
-fbne $f1,L.864
-lda $13,42
-cmpeq $14,$31,$23
-bne $23,L.866
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.866:
-L.864:
-ldt $f8,L.868
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f8,-56+256($sp)
-cvtqt $f8,$f8
-ldt $f30,L.414
-cmpteq $f8,$f30,$f1
-fbne $f1,L.869
-lda $13,43
-cmpeq $14,$31,$23
-bne $23,L.871
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.871:
-L.869:
-ldt $f8,L.868
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f8,-56+256($sp)
-cvtqt $f8,$f8
-ldt $f30,L.414
-cmpteq $f8,$f30,$f1
-fbne $f1,L.873
-lda $13,44
-cmpeq $14,$31,$23
-bne $23,L.875
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.875:
-L.873:
-ldt $f8,L.868
-lda $27,2
-stl $27,-68+256($sp)
-lds $f8,-68+256($sp)
-cvtlq $f8,$f8
-cvtqt $f8,$f8
-ldt $f30,L.414
-cmpteq $f8,$f30,$f1
-fbne $f1,L.877
-lda $13,45
-cmpeq $14,$31,$23
-bne $23,L.879
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.879:
-L.877:
-ldt $f8,L.868
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f8,-80+256($sp)
-cvtqt $f8,$f8
-ldt $f30,L.414
-cmpteq $f8,$f30,$f1
-fbne $f1,L.881
-lda $13,46
-cmpeq $14,$31,$23
-bne $23,L.883
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.883:
-L.881:
-ldt $f8,L.868
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f8
-ldt $f30,L.414
-cmpteq $f8,$f30,$f1
-fbne $f1,L.885
-lda $13,47
-cmpeq $14,$31,$23
-bne $23,L.887
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.887:
-L.885:
-ldt $f8,L.868
-lds $f7,L.527
-cvtst $f7,$f8
-ldt $f30,L.414
-cmpteq $f8,$f30,$f1
-fbne $f1,L.889
-lda $13,48
-cmpeq $14,$31,$23
-bne $23,L.891
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.891:
-L.889:
-ldt $f8,L.868
-ldt $f30,L.414
-fmov $f30,$f6
-fmov $f6,$f8
-cmpteq $f8,$f30,$f1
-fbne $f1,L.893
-lda $13,49
-cmpeq $14,$31,$23
-bne $23,L.895
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.895:
-L.893:
-lda $12,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-addl $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,7,$23
-bne $23,L.897
-lda $13,50
-cmpeq $14,$31,$23
-bne $23,L.899
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.899:
-L.897:
-lda $12,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-addl $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,7,$23
-bne $23,L.901
-lda $13,51
-cmpeq $14,$31,$23
-bne $23,L.903
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.903:
-L.901:
-lda $12,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-addl $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,7,$23
-bne $23,L.905
-lda $13,52
-cmpeq $14,$31,$23
-bne $23,L.907
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.907:
-L.905:
-lda $12,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-addq $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,7,$23
-bne $23,L.909
-lda $13,53
-cmpeq $14,$31,$23
-bne $23,L.911
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.911:
-L.909:
-lda $12,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-addl $27,$25,$27
-zap $27,240,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,7,$23
-bne $23,L.913
-lda $13,54
-cmpeq $14,$31,$23
-bne $23,L.915
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.915:
-L.913:
-lda $12,5
-lds $f7,L.527
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-adds $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,7,$23
-bne $23,L.917
-lda $13,55
-cmpeq $14,$31,$23
-bne $23,L.919
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.919:
-L.917:
-lda $12,5
-ldt $f6,L.414
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-addt $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,7,$23
-bne $23,L.921
-lda $13,56
-cmpeq $14,$31,$23
-bne $23,L.923
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.923:
-L.921:
-lda $11,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-addl $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,7,$23
-bne $23,L.925
-lda $13,57
-cmpeq $14,$31,$23
-bne $23,L.927
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.927:
-L.925:
-lda $11,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-addl $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,7,$23
-bne $23,L.929
-lda $13,58
-cmpeq $14,$31,$23
-bne $23,L.931
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.931:
-L.929:
-lda $11,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-addl $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,7,$23
-bne $23,L.933
-lda $13,59
-cmpeq $14,$31,$23
-bne $23,L.935
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.935:
-L.933:
-lda $11,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-addq $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,7,$23
-bne $23,L.937
-lda $13,60
-cmpeq $14,$31,$23
-bne $23,L.939
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.939:
-L.937:
-lda $11,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-addl $27,$25,$27
-zap $27,240,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,7,$23
-bne $23,L.941
-lda $13,61
-cmpeq $14,$31,$23
-bne $23,L.943
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.943:
-L.941:
-lda $11,5
-lds $f7,L.527
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-adds $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,7,$23
-bne $23,L.945
-lda $13,62
-cmpeq $14,$31,$23
-bne $23,L.947
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.947:
-L.945:
-lda $11,5
-ldt $f6,L.414
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-addt $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,7,$23
-bne $23,L.949
-lda $13,63
-cmpeq $14,$31,$23
-bne $23,L.951
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.951:
-L.949:
-lda $10,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-addl $10,$27,$10
-cmpeq $10,7,$23
-bne $23,L.953
-lda $13,64
-cmpeq $14,$31,$23
-bne $23,L.955
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.955:
-L.953:
-lda $10,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-addl $10,$27,$10
-cmpeq $10,7,$23
-bne $23,L.957
-lda $13,65
-cmpeq $14,$31,$23
-bne $23,L.959
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.959:
-L.957:
-lda $10,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-addl $10,$27,$10
-cmpeq $10,7,$23
-bne $23,L.961
-lda $13,66
-cmpeq $14,$31,$23
-bne $23,L.963
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.963:
-L.961:
-lda $10,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-addq $27,$25,$27
-mov $27,$10
-cmpeq $10,7,$23
-bne $23,L.965
-lda $13,67
-cmpeq $14,$31,$23
-bne $23,L.967
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.967:
-L.965:
-lda $10,5
-lda $27,2
-stl $27,-84+256($sp)
-mov $10,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-addl $27,$25,$27
-zap $27,240,$27
-mov $27,$10
-cmpeq $10,7,$23
-bne $23,L.969
-lda $13,68
-cmpeq $14,$31,$23
-bne $23,L.971
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.971:
-L.969:
-lda $10,5
-lds $f7,L.527
-stq $10,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-adds $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,7,$23
-bne $23,L.973
-lda $13,69
-cmpeq $14,$31,$23
-bne $23,L.975
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.975:
-L.973:
-lda $10,5
-ldt $f6,L.414
-stq $10,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-addt $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,7,$23
-bne $23,L.977
-lda $13,70
-cmpeq $14,$31,$23
-bne $23,L.979
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.979:
-L.977:
-lda $9,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-addq $9,$27,$9
-cmpeq $9,7,$23
-bne $23,L.981
-lda $13,71
-cmpeq $14,$31,$23
-bne $23,L.983
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.983:
-L.981:
-lda $9,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-addq $9,$27,$9
-cmpeq $9,7,$23
-bne $23,L.985
-lda $13,72
-cmpeq $14,$31,$23
-bne $23,L.987
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.987:
-L.985:
-lda $9,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-addq $9,$27,$9
-cmpeq $9,7,$23
-bne $23,L.989
-lda $13,73
-cmpeq $14,$31,$23
-bne $23,L.991
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.991:
-L.989:
-lda $9,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-addq $9,$27,$9
-cmpeq $9,7,$23
-bne $23,L.993
-lda $13,74
-cmpeq $14,$31,$23
-bne $23,L.995
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.995:
-L.993:
-lda $9,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-addq $9,$27,$9
-cmpeq $9,7,$23
-bne $23,L.997
-lda $13,75
-cmpeq $14,$31,$23
-bne $23,L.999
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.999:
-L.997:
-lda $9,5
-lds $f7,L.527
-stq $9,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-adds $f30,$f7,$f30
-cvttqc $f30,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,7,$23
-bne $23,L.1001
-lda $13,76
-cmpeq $14,$31,$23
-bne $23,L.1003
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1003:
-L.1001:
-lda $9,5
-ldt $f6,L.414
-stq $9,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-addt $f30,$f6,$f30
-cvttqc $f30,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,7,$23
-bne $23,L.1005
-lda $13,77
-cmpeq $14,$31,$23
-bne $23,L.1007
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1007:
-L.1005:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-addl $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,7
-cmpeq $27,$25,$23
-bne $23,L.1009
-lda $13,78
-cmpeq $14,$31,$23
-bne $23,L.1011
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1011:
-L.1009:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-addl $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,7
-cmpeq $27,$25,$23
-bne $23,L.1013
-lda $13,79
-cmpeq $14,$31,$23
-bne $23,L.1015
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1015:
-L.1013:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-addl $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,7
-cmpeq $27,$25,$23
-bne $23,L.1017
-lda $13,80
-cmpeq $14,$31,$23
-bne $23,L.1019
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1019:
-L.1017:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-addq $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,7
-cmpeq $27,$25,$23
-bne $23,L.1021
-lda $13,81
-cmpeq $14,$31,$23
-bne $23,L.1023
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1023:
-L.1021:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-addl $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,7
-cmpeq $27,$25,$23
-bne $23,L.1025
-lda $13,82
-cmpeq $14,$31,$23
-bne $23,L.1027
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1027:
-L.1025:
-lda $27,5
-stl $27,-60+256($sp)
-lds $f7,L.527
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f30
-adds $f30,$f7,$f30
-lds $f29,L.826
-cmptlt $f30,$f29,$f1
-fbne $f1,L.1030
-subs $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-120+256($sp)
-br L.1031
-L.1030:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-120+256($sp)
-L.1031:
-ldl $27,-120+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,7
-cmpeq $27,$25,$23
-bne $23,L.1032
-lda $13,83
-cmpeq $14,$31,$23
-bne $23,L.1034
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1034:
-L.1032:
-lda $27,5
-stl $27,-60+256($sp)
-ldt $f6,L.414
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-addt $f30,$f6,$f30
-ldt $f29,L.834
-cmptlt $f30,$f29,$f1
-fbne $f1,L.1037
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-124+256($sp)
-br L.1038
-L.1037:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-124+256($sp)
-L.1038:
-ldl $27,-124+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,7
-cmpeq $27,$25,$23
-bne $23,L.1039
-lda $13,84
-cmpeq $14,$31,$23
-bne $23,L.1041
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1041:
-L.1039:
-lds $f9,L.839
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-adds $f9,$f30,$f9
-lds $f30,L.1045
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1043
-lda $13,85
-cmpeq $14,$31,$23
-bne $23,L.1046
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1046:
-L.1043:
-lds $f9,L.839
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-adds $f9,$f30,$f9
-lds $f30,L.1045
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1048
-lda $13,86
-cmpeq $14,$31,$23
-bne $23,L.1050
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1050:
-L.1048:
-lds $f9,L.839
-lda $27,2
-stl $27,-68+256($sp)
-lds $f30,-68+256($sp)
-cvtlq $f30,$f30
-cvtqs $f30,$f30
-adds $f9,$f30,$f9
-lds $f30,L.1045
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1052
-lda $13,87
-cmpeq $14,$31,$23
-bne $23,L.1054
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1054:
-L.1052:
-lds $f9,L.839
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f30,-80+256($sp)
-cvtqs $f30,$f30
-adds $f9,$f30,$f9
-lds $f30,L.1045
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1056
-lda $13,88
-cmpeq $14,$31,$23
-bne $23,L.1058
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1058:
-L.1056:
-lds $f9,L.839
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f30
-adds $f9,$f30,$f9
-lds $f30,L.1045
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1060
-lda $13,89
-cmpeq $14,$31,$23
-bne $23,L.1062
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1062:
-L.1060:
-lds $f9,L.839
-lds $f7,L.527
-adds $f9,$f7,$f9
-lds $f30,L.1045
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1064
-lda $13,90
-cmpeq $14,$31,$23
-bne $23,L.1066
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1066:
-L.1064:
-lds $f9,L.839
-ldt $f6,L.414
-cvtst $f9,$f30
-addt $f30,$f6,$f30
-cvtts $f30,$f9
-lds $f30,L.1045
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1068
-lda $13,91
-cmpeq $14,$31,$23
-bne $23,L.1070
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1070:
-L.1068:
-ldt $f8,L.868
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-addt $f8,$f30,$f8
-ldt $f30,L.1074
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1072
-lda $13,92
-cmpeq $14,$31,$23
-bne $23,L.1075
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1075:
-L.1072:
-ldt $f8,L.868
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-addt $f8,$f30,$f8
-ldt $f30,L.1074
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1077
-lda $13,93
-cmpeq $14,$31,$23
-bne $23,L.1079
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1079:
-L.1077:
-ldt $f8,L.868
-lda $27,2
-stl $27,-68+256($sp)
-lds $f30,-68+256($sp)
-cvtlq $f30,$f30
-cvtqt $f30,$f30
-addt $f8,$f30,$f8
-ldt $f30,L.1074
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1081
-lda $13,94
-cmpeq $14,$31,$23
-bne $23,L.1083
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1083:
-L.1081:
-ldt $f8,L.868
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f30,-80+256($sp)
-cvtqt $f30,$f30
-addt $f8,$f30,$f8
-ldt $f30,L.1074
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1085
-lda $13,95
-cmpeq $14,$31,$23
-bne $23,L.1087
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1087:
-L.1085:
-ldt $f8,L.868
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-addt $f8,$f30,$f8
-ldt $f30,L.1074
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1089
-lda $13,96
-cmpeq $14,$31,$23
-bne $23,L.1091
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1091:
-L.1089:
-ldt $f8,L.868
-lds $f7,L.527
-cvtst $f7,$f30
-addt $f8,$f30,$f8
-ldt $f30,L.1074
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1093
-lda $13,97
-cmpeq $14,$31,$23
-bne $23,L.1095
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1095:
-L.1093:
-ldt $f8,L.868
-ldt $f6,L.414
-addt $f8,$f6,$f8
-ldt $f30,L.1074
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1097
-lda $13,98
-cmpeq $14,$31,$23
-bne $23,L.1099
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1099:
-L.1097:
-lda $12,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-subl $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,3,$23
-bne $23,L.1101
-lda $13,99
-cmpeq $14,$31,$23
-bne $23,L.1103
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1103:
-L.1101:
-lda $12,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-subl $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,3,$23
-bne $23,L.1105
-lda $13,100
-cmpeq $14,$31,$23
-bne $23,L.1107
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1107:
-L.1105:
-lda $12,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-subl $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,3,$23
-bne $23,L.1109
-lda $13,101
-cmpeq $14,$31,$23
-bne $23,L.1111
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1111:
-L.1109:
-lda $12,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-subq $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,3,$23
-bne $23,L.1113
-lda $13,102
-cmpeq $14,$31,$23
-bne $23,L.1115
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1115:
-L.1113:
-lda $12,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-subl $27,$25,$27
-zap $27,240,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,3,$23
-bne $23,L.1117
-lda $13,103
-cmpeq $14,$31,$23
-bne $23,L.1119
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1119:
-L.1117:
-lda $12,5
-lds $f7,L.527
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-subs $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,3,$23
-bne $23,L.1121
-lda $13,104
-cmpeq $14,$31,$23
-bne $23,L.1123
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1123:
-L.1121:
-lda $12,5
-ldt $f6,L.414
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-subt $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,3,$23
-bne $23,L.1125
-lda $13,105
-cmpeq $14,$31,$23
-bne $23,L.1127
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1127:
-L.1125:
-lda $11,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-subl $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,3,$23
-bne $23,L.1129
-lda $13,106
-cmpeq $14,$31,$23
-bne $23,L.1131
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1131:
-L.1129:
-lda $11,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-subl $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,3,$23
-bne $23,L.1133
-lda $13,107
-cmpeq $14,$31,$23
-bne $23,L.1135
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1135:
-L.1133:
-lda $11,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-subl $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,3,$23
-bne $23,L.1137
-lda $13,108
-cmpeq $14,$31,$23
-bne $23,L.1139
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1139:
-L.1137:
-lda $11,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-subq $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,3,$23
-bne $23,L.1141
-lda $13,109
-cmpeq $14,$31,$23
-bne $23,L.1143
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1143:
-L.1141:
-lda $11,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-subl $27,$25,$27
-zap $27,240,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,3,$23
-bne $23,L.1145
-lda $13,110
-cmpeq $14,$31,$23
-bne $23,L.1147
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1147:
-L.1145:
-lda $11,5
-lds $f7,L.527
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-subs $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,3,$23
-bne $23,L.1149
-lda $13,111
-cmpeq $14,$31,$23
-bne $23,L.1151
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1151:
-L.1149:
-lda $11,5
-ldt $f6,L.414
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-subt $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,3,$23
-bne $23,L.1153
-lda $13,112
-cmpeq $14,$31,$23
-bne $23,L.1155
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1155:
-L.1153:
-lda $10,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-subl $10,$27,$10
-cmpeq $10,3,$23
-bne $23,L.1157
-lda $13,113
-cmpeq $14,$31,$23
-bne $23,L.1159
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1159:
-L.1157:
-lda $10,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-subl $10,$27,$10
-cmpeq $10,3,$23
-bne $23,L.1161
-lda $13,114
-cmpeq $14,$31,$23
-bne $23,L.1163
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1163:
-L.1161:
-lda $10,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-subl $10,$27,$10
-cmpeq $10,3,$23
-bne $23,L.1165
-lda $13,115
-cmpeq $14,$31,$23
-bne $23,L.1167
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1167:
-L.1165:
-lda $10,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-subq $27,$25,$27
-mov $27,$10
-cmpeq $10,3,$23
-bne $23,L.1169
-lda $13,116
-cmpeq $14,$31,$23
-bne $23,L.1171
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1171:
-L.1169:
-lda $10,5
-lda $27,2
-stl $27,-84+256($sp)
-mov $10,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-subl $27,$25,$27
-zap $27,240,$27
-mov $27,$10
-cmpeq $10,3,$23
-bne $23,L.1173
-lda $13,117
-cmpeq $14,$31,$23
-bne $23,L.1175
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1175:
-L.1173:
-lda $10,5
-lds $f7,L.527
-stq $10,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-subs $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,3,$23
-bne $23,L.1177
-lda $13,118
-cmpeq $14,$31,$23
-bne $23,L.1179
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1179:
-L.1177:
-lda $10,5
-ldt $f6,L.414
-stq $10,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-subt $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,3,$23
-bne $23,L.1181
-lda $13,119
-cmpeq $14,$31,$23
-bne $23,L.1183
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1183:
-L.1181:
-lda $9,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-subq $9,$27,$9
-cmpeq $9,3,$23
-bne $23,L.1185
-lda $13,120
-cmpeq $14,$31,$23
-bne $23,L.1187
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1187:
-L.1185:
-lda $9,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-subq $9,$27,$9
-cmpeq $9,3,$23
-bne $23,L.1189
-lda $13,121
-cmpeq $14,$31,$23
-bne $23,L.1191
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1191:
-L.1189:
-lda $9,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-subq $9,$27,$9
-cmpeq $9,3,$23
-bne $23,L.1193
-lda $13,122
-cmpeq $14,$31,$23
-bne $23,L.1195
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1195:
-L.1193:
-lda $9,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-subq $9,$27,$9
-cmpeq $9,3,$23
-bne $23,L.1197
-lda $13,123
-cmpeq $14,$31,$23
-bne $23,L.1199
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1199:
-L.1197:
-lda $9,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-subq $9,$27,$9
-cmpeq $9,3,$23
-bne $23,L.1201
-lda $13,124
-cmpeq $14,$31,$23
-bne $23,L.1203
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1203:
-L.1201:
-lda $9,5
-lds $f7,L.527
-stq $9,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-subs $f30,$f7,$f30
-cvttqc $f30,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,3,$23
-bne $23,L.1205
-lda $13,125
-cmpeq $14,$31,$23
-bne $23,L.1207
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1207:
-L.1205:
-lda $9,5
-ldt $f6,L.414
-stq $9,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-subt $f30,$f6,$f30
-cvttqc $f30,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,3,$23
-bne $23,L.1209
-lda $13,126
-cmpeq $14,$31,$23
-bne $23,L.1211
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1211:
-L.1209:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-subl $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,3
-cmpeq $27,$25,$23
-bne $23,L.1213
-lda $13,127
-cmpeq $14,$31,$23
-bne $23,L.1215
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1215:
-L.1213:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-subl $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,3
-cmpeq $27,$25,$23
-bne $23,L.1217
-lda $13,128
-cmpeq $14,$31,$23
-bne $23,L.1219
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1219:
-L.1217:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-subl $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,3
-cmpeq $27,$25,$23
-bne $23,L.1221
-lda $13,129
-cmpeq $14,$31,$23
-bne $23,L.1223
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1223:
-L.1221:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-subq $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,3
-cmpeq $27,$25,$23
-bne $23,L.1225
-lda $13,130
-cmpeq $14,$31,$23
-bne $23,L.1227
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1227:
-L.1225:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-subl $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,3
-cmpeq $27,$25,$23
-bne $23,L.1229
-lda $13,131
-cmpeq $14,$31,$23
-bne $23,L.1231
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1231:
-L.1229:
-lda $27,5
-stl $27,-60+256($sp)
-lds $f7,L.527
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f30
-subs $f30,$f7,$f30
-lds $f29,L.826
-cmptlt $f30,$f29,$f1
-fbne $f1,L.1234
-subs $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-128+256($sp)
-br L.1235
-L.1234:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-128+256($sp)
-L.1235:
-ldl $27,-128+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,3
-cmpeq $27,$25,$23
-bne $23,L.1236
-lda $13,132
-cmpeq $14,$31,$23
-bne $23,L.1238
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1238:
-L.1236:
-lda $27,5
-stl $27,-60+256($sp)
-ldt $f6,L.414
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-subt $f30,$f6,$f30
-ldt $f29,L.834
-cmptlt $f30,$f29,$f1
-fbne $f1,L.1241
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-132+256($sp)
-br L.1242
-L.1241:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-132+256($sp)
-L.1242:
-ldl $27,-132+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,3
-cmpeq $27,$25,$23
-bne $23,L.1243
-lda $13,133
-cmpeq $14,$31,$23
-bne $23,L.1245
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1245:
-L.1243:
-lds $f9,L.839
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-subs $f9,$f30,$f9
-lds $f30,L.1249
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1247
-lda $13,134
-cmpeq $14,$31,$23
-bne $23,L.1250
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1250:
-L.1247:
-lds $f9,L.839
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-subs $f9,$f30,$f9
-lds $f30,L.1249
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1252
-lda $13,135
-cmpeq $14,$31,$23
-bne $23,L.1254
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1254:
-L.1252:
-lds $f9,L.839
-lda $27,2
-stl $27,-68+256($sp)
-lds $f30,-68+256($sp)
-cvtlq $f30,$f30
-cvtqs $f30,$f30
-subs $f9,$f30,$f9
-lds $f30,L.1249
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1256
-lda $13,136
-cmpeq $14,$31,$23
-bne $23,L.1258
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1258:
-L.1256:
-lds $f9,L.839
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f30,-80+256($sp)
-cvtqs $f30,$f30
-subs $f9,$f30,$f9
-lds $f30,L.1249
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1260
-lda $13,137
-cmpeq $14,$31,$23
-bne $23,L.1262
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1262:
-L.1260:
-lds $f9,L.839
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f30
-subs $f9,$f30,$f9
-lds $f30,L.1249
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1264
-lda $13,138
-cmpeq $14,$31,$23
-bne $23,L.1266
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1266:
-L.1264:
-lds $f9,L.839
-lds $f7,L.527
-subs $f9,$f7,$f9
-lds $f30,L.1249
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1268
-lda $13,139
-cmpeq $14,$31,$23
-bne $23,L.1270
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1270:
-L.1268:
-lds $f9,L.839
-ldt $f6,L.414
-cvtst $f9,$f30
-subt $f30,$f6,$f30
-cvtts $f30,$f9
-lds $f30,L.1249
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1272
-lda $13,140
-cmpeq $14,$31,$23
-bne $23,L.1274
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1274:
-L.1272:
-ldt $f8,L.868
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-subt $f8,$f30,$f8
-ldt $f30,L.1278
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1276
-lda $13,141
-cmpeq $14,$31,$23
-bne $23,L.1279
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1279:
-L.1276:
-ldt $f8,L.868
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-subt $f8,$f30,$f8
-ldt $f30,L.1278
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1281
-lda $13,142
-cmpeq $14,$31,$23
-bne $23,L.1283
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1283:
-L.1281:
-ldt $f8,L.868
-lda $27,2
-stl $27,-68+256($sp)
-lds $f30,-68+256($sp)
-cvtlq $f30,$f30
-cvtqt $f30,$f30
-subt $f8,$f30,$f8
-ldt $f30,L.1278
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1285
-lda $13,143
-cmpeq $14,$31,$23
-bne $23,L.1287
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1287:
-L.1285:
-ldt $f8,L.868
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f30,-80+256($sp)
-cvtqt $f30,$f30
-subt $f8,$f30,$f8
-ldt $f30,L.1278
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1289
-lda $13,144
-cmpeq $14,$31,$23
-bne $23,L.1291
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1291:
-L.1289:
-ldt $f8,L.868
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-subt $f8,$f30,$f8
-ldt $f30,L.1278
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1293
-lda $13,145
-cmpeq $14,$31,$23
-bne $23,L.1295
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1295:
-L.1293:
-ldt $f8,L.868
-lds $f7,L.527
-cvtst $f7,$f30
-subt $f8,$f30,$f8
-ldt $f30,L.1278
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1297
-lda $13,146
-cmpeq $14,$31,$23
-bne $23,L.1299
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1299:
-L.1297:
-ldt $f8,L.868
-ldt $f6,L.414
-subt $f8,$f6,$f8
-ldt $f30,L.1278
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1301
-lda $13,147
-cmpeq $14,$31,$23
-bne $23,L.1303
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1303:
-L.1301:
-lda $12,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-mull $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,10,$23
-bne $23,L.1305
-lda $13,148
-cmpeq $14,$31,$23
-bne $23,L.1307
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1307:
-L.1305:
-lda $12,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-mull $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,10,$23
-bne $23,L.1309
-lda $13,149
-cmpeq $14,$31,$23
-bne $23,L.1311
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1311:
-L.1309:
-lda $12,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-mull $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,10,$23
-bne $23,L.1313
-lda $13,150
-cmpeq $14,$31,$23
-bne $23,L.1315
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1315:
-L.1313:
-lda $12,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-mulq $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,10,$23
-bne $23,L.1317
-lda $13,151
-cmpeq $14,$31,$23
-bne $23,L.1319
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1319:
-L.1317:
-lda $12,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-mull $27,$25,$27
-zap $27,240,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,10,$23
-bne $23,L.1321
-lda $13,152
-cmpeq $14,$31,$23
-bne $23,L.1323
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1323:
-L.1321:
-lda $12,5
-lds $f7,L.527
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-muls $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,10,$23
-bne $23,L.1325
-lda $13,153
-cmpeq $14,$31,$23
-bne $23,L.1327
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1327:
-L.1325:
-lda $12,5
-ldt $f6,L.414
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-mult $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,10,$23
-bne $23,L.1329
-lda $13,154
-cmpeq $14,$31,$23
-bne $23,L.1331
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1331:
-L.1329:
-lda $11,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-mull $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,10,$23
-bne $23,L.1333
-lda $13,155
-cmpeq $14,$31,$23
-bne $23,L.1335
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1335:
-L.1333:
-lda $11,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-mull $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,10,$23
-bne $23,L.1337
-lda $13,156
-cmpeq $14,$31,$23
-bne $23,L.1339
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1339:
-L.1337:
-lda $11,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-mull $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,10,$23
-bne $23,L.1341
-lda $13,157
-cmpeq $14,$31,$23
-bne $23,L.1343
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1343:
-L.1341:
-lda $11,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-mulq $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,10,$23
-bne $23,L.1345
-lda $13,158
-cmpeq $14,$31,$23
-bne $23,L.1347
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1347:
-L.1345:
-lda $11,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-mull $27,$25,$27
-zap $27,240,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,10,$23
-bne $23,L.1349
-lda $13,159
-cmpeq $14,$31,$23
-bne $23,L.1351
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1351:
-L.1349:
-lda $11,5
-lds $f7,L.527
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-muls $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,10,$23
-bne $23,L.1353
-lda $13,160
-cmpeq $14,$31,$23
-bne $23,L.1355
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1355:
-L.1353:
-lda $11,5
-ldt $f6,L.414
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-mult $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,10,$23
-bne $23,L.1357
-lda $13,161
-cmpeq $14,$31,$23
-bne $23,L.1359
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1359:
-L.1357:
-lda $10,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-mull $10,$27,$10
-cmpeq $10,10,$23
-bne $23,L.1361
-lda $13,162
-cmpeq $14,$31,$23
-bne $23,L.1363
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1363:
-L.1361:
-lda $10,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-mull $10,$27,$10
-cmpeq $10,10,$23
-bne $23,L.1365
-lda $13,163
-cmpeq $14,$31,$23
-bne $23,L.1367
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1367:
-L.1365:
-lda $10,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-mull $10,$27,$10
-cmpeq $10,10,$23
-bne $23,L.1369
-lda $13,164
-cmpeq $14,$31,$23
-bne $23,L.1371
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1371:
-L.1369:
-lda $10,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-mulq $27,$25,$27
-mov $27,$10
-cmpeq $10,10,$23
-bne $23,L.1373
-lda $13,165
-cmpeq $14,$31,$23
-bne $23,L.1375
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1375:
-L.1373:
-lda $10,5
-lda $27,2
-stl $27,-84+256($sp)
-mov $10,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-mull $27,$25,$27
-zap $27,240,$27
-mov $27,$10
-cmpeq $10,10,$23
-bne $23,L.1377
-lda $13,166
-cmpeq $14,$31,$23
-bne $23,L.1379
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1379:
-L.1377:
-lda $10,5
-lds $f7,L.527
-stq $10,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-muls $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,10,$23
-bne $23,L.1381
-lda $13,167
-cmpeq $14,$31,$23
-bne $23,L.1383
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1383:
-L.1381:
-lda $10,5
-ldt $f6,L.414
-stq $10,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-mult $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,10,$23
-bne $23,L.1385
-lda $13,168
-cmpeq $14,$31,$23
-bne $23,L.1387
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1387:
-L.1385:
-lda $9,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-mulq $9,$27,$9
-cmpeq $9,10,$23
-bne $23,L.1389
-lda $13,169
-cmpeq $14,$31,$23
-bne $23,L.1391
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1391:
-L.1389:
-lda $9,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-mulq $9,$27,$9
-cmpeq $9,10,$23
-bne $23,L.1393
-lda $13,170
-cmpeq $14,$31,$23
-bne $23,L.1395
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1395:
-L.1393:
-lda $9,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-mulq $9,$27,$9
-cmpeq $9,10,$23
-bne $23,L.1397
-lda $13,171
-cmpeq $14,$31,$23
-bne $23,L.1399
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1399:
-L.1397:
-lda $9,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-mulq $9,$27,$9
-cmpeq $9,10,$23
-bne $23,L.1401
-lda $13,172
-cmpeq $14,$31,$23
-bne $23,L.1403
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1403:
-L.1401:
-lda $9,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-mulq $9,$27,$9
-cmpeq $9,10,$23
-bne $23,L.1405
-lda $13,173
-cmpeq $14,$31,$23
-bne $23,L.1407
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1407:
-L.1405:
-lda $9,5
-lds $f7,L.527
-stq $9,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-muls $f30,$f7,$f30
-cvttqc $f30,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,10,$23
-bne $23,L.1409
-lda $13,174
-cmpeq $14,$31,$23
-bne $23,L.1411
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1411:
-L.1409:
-lda $9,5
-ldt $f6,L.414
-stq $9,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-mult $f30,$f6,$f30
-cvttqc $f30,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,10,$23
-bne $23,L.1413
-lda $13,175
-cmpeq $14,$31,$23
-bne $23,L.1415
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1415:
-L.1413:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-mull $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,10
-cmpeq $27,$25,$23
-bne $23,L.1417
-lda $13,176
-cmpeq $14,$31,$23
-bne $23,L.1419
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1419:
-L.1417:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-mull $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,10
-cmpeq $27,$25,$23
-bne $23,L.1421
-lda $13,177
-cmpeq $14,$31,$23
-bne $23,L.1423
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1423:
-L.1421:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-mull $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,10
-cmpeq $27,$25,$23
-bne $23,L.1425
-lda $13,178
-cmpeq $14,$31,$23
-bne $23,L.1427
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1427:
-L.1425:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-mulq $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,10
-cmpeq $27,$25,$23
-bne $23,L.1429
-lda $13,179
-cmpeq $14,$31,$23
-bne $23,L.1431
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1431:
-L.1429:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-mull $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,10
-cmpeq $27,$25,$23
-bne $23,L.1433
-lda $13,180
-cmpeq $14,$31,$23
-bne $23,L.1435
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1435:
-L.1433:
-lda $27,5
-stl $27,-60+256($sp)
-lds $f7,L.527
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f30
-muls $f30,$f7,$f30
-lds $f29,L.826
-cmptlt $f30,$f29,$f1
-fbne $f1,L.1438
-subs $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-136+256($sp)
-br L.1439
-L.1438:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-136+256($sp)
-L.1439:
-ldl $27,-136+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,10
-cmpeq $27,$25,$23
-bne $23,L.1440
-lda $13,181
-cmpeq $14,$31,$23
-bne $23,L.1442
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1442:
-L.1440:
-lda $27,5
-stl $27,-60+256($sp)
-ldt $f6,L.414
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-mult $f30,$f6,$f30
-ldt $f29,L.834
-cmptlt $f30,$f29,$f1
-fbne $f1,L.1445
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-140+256($sp)
-br L.1446
-L.1445:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-140+256($sp)
-L.1446:
-ldl $27,-140+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,10
-cmpeq $27,$25,$23
-bne $23,L.1447
-lda $13,182
-cmpeq $14,$31,$23
-bne $23,L.1449
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1449:
-L.1447:
-lds $f9,L.839
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-muls $f9,$f30,$f9
-lds $f30,L.1453
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1451
-lda $13,183
-cmpeq $14,$31,$23
-bne $23,L.1454
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1454:
-L.1451:
-lds $f9,L.839
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-muls $f9,$f30,$f9
-lds $f30,L.1453
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1456
-lda $13,184
-cmpeq $14,$31,$23
-bne $23,L.1458
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1458:
-L.1456:
-lds $f9,L.839
-lda $27,2
-stl $27,-68+256($sp)
-lds $f30,-68+256($sp)
-cvtlq $f30,$f30
-cvtqs $f30,$f30
-muls $f9,$f30,$f9
-lds $f30,L.1453
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1460
-lda $13,185
-cmpeq $14,$31,$23
-bne $23,L.1462
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1462:
-L.1460:
-lds $f9,L.839
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f30,-80+256($sp)
-cvtqs $f30,$f30
-muls $f9,$f30,$f9
-lds $f30,L.1453
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1464
-lda $13,186
-cmpeq $14,$31,$23
-bne $23,L.1466
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1466:
-L.1464:
-lds $f9,L.839
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f30
-muls $f9,$f30,$f9
-lds $f30,L.1453
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1468
-lda $13,187
-cmpeq $14,$31,$23
-bne $23,L.1470
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1470:
-L.1468:
-lds $f9,L.839
-lds $f7,L.527
-muls $f9,$f7,$f9
-lds $f30,L.1453
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1472
-lda $13,188
-cmpeq $14,$31,$23
-bne $23,L.1474
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1474:
-L.1472:
-lds $f9,L.839
-ldt $f6,L.414
-cvtst $f9,$f30
-mult $f30,$f6,$f30
-cvtts $f30,$f9
-lds $f30,L.1453
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1476
-lda $13,189
-cmpeq $14,$31,$23
-bne $23,L.1478
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1478:
-L.1476:
-ldt $f8,L.868
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-mult $f8,$f30,$f8
-ldt $f30,L.1482
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1480
-lda $13,190
-cmpeq $14,$31,$23
-bne $23,L.1483
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1483:
-L.1480:
-ldt $f8,L.868
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-mult $f8,$f30,$f8
-ldt $f30,L.1482
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1485
-lda $13,191
-cmpeq $14,$31,$23
-bne $23,L.1487
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1487:
-L.1485:
-ldt $f8,L.868
-lda $27,2
-stl $27,-68+256($sp)
-lds $f30,-68+256($sp)
-cvtlq $f30,$f30
-cvtqt $f30,$f30
-mult $f8,$f30,$f8
-ldt $f30,L.1482
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1489
-lda $13,192
-cmpeq $14,$31,$23
-bne $23,L.1491
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1491:
-L.1489:
-ldt $f8,L.868
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f30,-80+256($sp)
-cvtqt $f30,$f30
-mult $f8,$f30,$f8
-ldt $f30,L.1482
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1493
-lda $13,193
-cmpeq $14,$31,$23
-bne $23,L.1495
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1495:
-L.1493:
-ldt $f8,L.868
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-mult $f8,$f30,$f8
-ldt $f30,L.1482
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1497
-lda $13,194
-cmpeq $14,$31,$23
-bne $23,L.1499
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1499:
-L.1497:
-ldt $f8,L.868
-lds $f7,L.527
-cvtst $f7,$f30
-mult $f8,$f30,$f8
-ldt $f30,L.1482
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1501
-lda $13,195
-cmpeq $14,$31,$23
-bne $23,L.1503
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1503:
-L.1501:
-ldt $f8,L.868
-ldt $f6,L.414
-mult $f8,$f6,$f8
-ldt $f30,L.1482
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1505
-lda $13,196
-cmpeq $14,$31,$23
-bne $23,L.1507
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1507:
-L.1505:
-lda $12,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-divl $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.1509
-lda $13,197
-cmpeq $14,$31,$23
-bne $23,L.1511
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1511:
-L.1509:
-lda $12,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-divl $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.1513
-lda $13,198
-cmpeq $14,$31,$23
-bne $23,L.1515
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1515:
-L.1513:
-lda $12,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-divl $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.1517
-lda $13,199
-cmpeq $14,$31,$23
-bne $23,L.1519
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1519:
-L.1517:
-lda $12,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-divq $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.1521
-lda $13,200
-cmpeq $14,$31,$23
-bne $23,L.1523
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1523:
-L.1521:
-lda $12,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-divlu $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.1525
-lda $13,201
-cmpeq $14,$31,$23
-bne $23,L.1527
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1527:
-L.1525:
-lda $12,5
-lds $f7,L.527
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-divs $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.1529
-lda $13,202
-cmpeq $14,$31,$23
-bne $23,L.1531
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1531:
-L.1529:
-lda $12,5
-ldt $f6,L.414
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-divt $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,2,$23
-bne $23,L.1533
-lda $13,203
-cmpeq $14,$31,$23
-bne $23,L.1535
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1535:
-L.1533:
-lda $11,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-divl $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.1537
-lda $13,204
-cmpeq $14,$31,$23
-bne $23,L.1539
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1539:
-L.1537:
-lda $11,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-divl $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.1541
-lda $13,205
-cmpeq $14,$31,$23
-bne $23,L.1543
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1543:
-L.1541:
-lda $11,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-divl $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.1545
-lda $13,206
-cmpeq $14,$31,$23
-bne $23,L.1547
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1547:
-L.1545:
-lda $11,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-divq $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.1549
-lda $13,207
-cmpeq $14,$31,$23
-bne $23,L.1551
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1551:
-L.1549:
-lda $11,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-divlu $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.1553
-lda $13,208
-cmpeq $14,$31,$23
-bne $23,L.1555
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1555:
-L.1553:
-lda $11,5
-lds $f7,L.527
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-divs $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.1557
-lda $13,209
-cmpeq $14,$31,$23
-bne $23,L.1559
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1559:
-L.1557:
-lda $11,5
-ldt $f6,L.414
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-divt $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,2,$23
-bne $23,L.1561
-lda $13,210
-cmpeq $14,$31,$23
-bne $23,L.1563
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1563:
-L.1561:
-lda $10,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-divl $10,$27,$10
-cmpeq $10,2,$23
-bne $23,L.1565
-lda $13,211
-cmpeq $14,$31,$23
-bne $23,L.1567
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1567:
-L.1565:
-lda $10,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-divl $10,$27,$10
-cmpeq $10,2,$23
-bne $23,L.1569
-lda $13,212
-cmpeq $14,$31,$23
-bne $23,L.1571
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1571:
-L.1569:
-lda $10,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-divl $10,$27,$10
-cmpeq $10,2,$23
-bne $23,L.1573
-lda $13,213
-cmpeq $14,$31,$23
-bne $23,L.1575
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1575:
-L.1573:
-lda $10,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-divq $27,$25,$27
-mov $27,$10
-cmpeq $10,2,$23
-bne $23,L.1577
-lda $13,214
-cmpeq $14,$31,$23
-bne $23,L.1579
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1579:
-L.1577:
-lda $10,5
-lda $27,2
-stl $27,-84+256($sp)
-mov $10,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-divlu $27,$25,$27
-mov $27,$10
-cmpeq $10,2,$23
-bne $23,L.1581
-lda $13,215
-cmpeq $14,$31,$23
-bne $23,L.1583
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1583:
-L.1581:
-lda $10,5
-lds $f7,L.527
-stq $10,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-divs $f30,$f7,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,2,$23
-bne $23,L.1585
-lda $13,216
-cmpeq $14,$31,$23
-bne $23,L.1587
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1587:
-L.1585:
-lda $10,5
-ldt $f6,L.414
-stq $10,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-divt $f30,$f6,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $10,-56+256($sp)
-cmpeq $10,2,$23
-bne $23,L.1589
-lda $13,217
-cmpeq $14,$31,$23
-bne $23,L.1591
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1591:
-L.1589:
-lda $9,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-divq $9,$27,$9
-cmpeq $9,2,$23
-bne $23,L.1593
-lda $13,218
-cmpeq $14,$31,$23
-bne $23,L.1595
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1595:
-L.1593:
-lda $9,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-divq $9,$27,$9
-cmpeq $9,2,$23
-bne $23,L.1597
-lda $13,219
-cmpeq $14,$31,$23
-bne $23,L.1599
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1599:
-L.1597:
-lda $9,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-divq $9,$27,$9
-cmpeq $9,2,$23
-bne $23,L.1601
-lda $13,220
-cmpeq $14,$31,$23
-bne $23,L.1603
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1603:
-L.1601:
-lda $9,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-divq $9,$27,$9
-cmpeq $9,2,$23
-bne $23,L.1605
-lda $13,221
-cmpeq $14,$31,$23
-bne $23,L.1607
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1607:
-L.1605:
-lda $9,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-divq $9,$27,$9
-cmpeq $9,2,$23
-bne $23,L.1609
-lda $13,222
-cmpeq $14,$31,$23
-bne $23,L.1611
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1611:
-L.1609:
-lda $9,5
-lds $f7,L.527
-stq $9,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-divs $f30,$f7,$f30
-cvttqc $f30,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,2,$23
-bne $23,L.1613
-lda $13,223
-cmpeq $14,$31,$23
-bne $23,L.1615
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1615:
-L.1613:
-lda $9,5
-ldt $f6,L.414
-stq $9,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-divt $f30,$f6,$f30
-cvttqc $f30,$f1
-stt $f1,-56+256($sp)
-ldq $9,-56+256($sp)
-cmpeq $9,2,$23
-bne $23,L.1617
-lda $13,224
-cmpeq $14,$31,$23
-bne $23,L.1619
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1619:
-L.1617:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-divlu $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.1621
-lda $13,225
-cmpeq $14,$31,$23
-bne $23,L.1623
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1623:
-L.1621:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-divlu $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.1625
-lda $13,226
-cmpeq $14,$31,$23
-bne $23,L.1627
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1627:
-L.1625:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-divlu $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.1629
-lda $13,227
-cmpeq $14,$31,$23
-bne $23,L.1631
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1631:
-L.1629:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-divq $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.1633
-lda $13,228
-cmpeq $14,$31,$23
-bne $23,L.1635
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1635:
-L.1633:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-144+256($sp)
-stl $27,-84+256($sp)
-ldl $25,-60+256($sp)
-zap $25,240,$25
-ldl $22,-84+256($sp)
-zap $22,240,$22
-divlu $25,$22,$25
-stl $25,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-144+256($sp)
-zap $25,240,$25
-cmpeq $27,$25,$23
-bne $23,L.1637
-lda $13,229
-cmpeq $14,$31,$23
-bne $23,L.1639
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1639:
-L.1637:
-lda $27,5
-stl $27,-60+256($sp)
-lds $f7,L.527
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f30
-divs $f30,$f7,$f30
-lds $f29,L.826
-cmptlt $f30,$f29,$f1
-fbne $f1,L.1642
-subs $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-148+256($sp)
-br L.1643
-L.1642:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-148+256($sp)
-L.1643:
-ldl $27,-148+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.1644
-lda $13,230
-cmpeq $14,$31,$23
-bne $23,L.1646
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1646:
-L.1644:
-lda $27,5
-stl $27,-60+256($sp)
-ldt $f6,L.414
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-divt $f30,$f6,$f30
-ldt $f29,L.834
-cmptlt $f30,$f29,$f1
-fbne $f1,L.1649
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-152+256($sp)
-br L.1650
-L.1649:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,-152+256($sp)
-L.1650:
-ldl $27,-152+256($sp)
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,2
-cmpeq $27,$25,$23
-bne $23,L.1651
-lda $13,231
-cmpeq $14,$31,$23
-bne $23,L.1653
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1653:
-L.1651:
-lds $f9,L.839
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-divs $f9,$f30,$f9
-cvtst $f9,$f30
-ldt $f29,L.1657
-cmpteq $f30,$f29,$f1
-fbne $f1,L.1655
-lda $13,232
-cmpeq $14,$31,$23
-bne $23,L.1658
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1658:
-L.1655:
-lds $f9,L.839
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqs $f30,$f30
-divs $f9,$f30,$f9
-cvtst $f9,$f30
-ldt $f29,L.1657
-cmpteq $f30,$f29,$f1
-fbne $f1,L.1660
-lda $13,233
-cmpeq $14,$31,$23
-bne $23,L.1662
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1662:
-L.1660:
-lds $f9,L.839
-lda $27,2
-stl $27,-68+256($sp)
-lds $f30,-68+256($sp)
-cvtlq $f30,$f30
-cvtqs $f30,$f30
-divs $f9,$f30,$f9
-cvtst $f9,$f30
-ldt $f29,L.1657
-cmpteq $f30,$f29,$f1
-fbne $f1,L.1664
-lda $13,234
-cmpeq $14,$31,$23
-bne $23,L.1666
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1666:
-L.1664:
-lds $f9,L.839
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f30,-80+256($sp)
-cvtqs $f30,$f30
-divs $f9,$f30,$f9
-cvtst $f9,$f30
-ldt $f29,L.1657
-cmpteq $f30,$f29,$f1
-fbne $f1,L.1668
-lda $13,235
-cmpeq $14,$31,$23
-bne $23,L.1670
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1670:
-L.1668:
-lds $f9,L.839
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f30
-divs $f9,$f30,$f9
-cvtst $f9,$f30
-ldt $f29,L.1657
-cmpteq $f30,$f29,$f1
-fbne $f1,L.1672
-lda $13,236
-cmpeq $14,$31,$23
-bne $23,L.1674
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1674:
-L.1672:
-lds $f9,L.839
-lds $f7,L.527
-divs $f9,$f7,$f9
-cvtst $f9,$f30
-ldt $f29,L.1657
-cmpteq $f30,$f29,$f1
-fbne $f1,L.1676
-lda $13,237
-cmpeq $14,$31,$23
-bne $23,L.1678
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1678:
-L.1676:
-lds $f9,L.839
-ldt $f6,L.414
-cvtst $f9,$f30
-divt $f30,$f6,$f30
-cvtts $f30,$f9
-cvtst $f9,$f30
-ldt $f29,L.1657
-cmpteq $f30,$f29,$f1
-fbne $f1,L.1680
-lda $13,238
-cmpeq $14,$31,$23
-bne $23,L.1682
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1682:
-L.1680:
-ldt $f8,L.868
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-divt $f8,$f30,$f8
-ldt $f30,L.1657
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1684
-lda $13,239
-cmpeq $14,$31,$23
-bne $23,L.1686
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1686:
-L.1684:
-ldt $f8,L.868
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-stq $27,-56+256($sp)
-ldt $f30,-56+256($sp)
-cvtqt $f30,$f30
-divt $f8,$f30,$f8
-ldt $f30,L.1657
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1688
-lda $13,240
-cmpeq $14,$31,$23
-bne $23,L.1690
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1690:
-L.1688:
-ldt $f8,L.868
-lda $27,2
-stl $27,-68+256($sp)
-lds $f30,-68+256($sp)
-cvtlq $f30,$f30
-cvtqt $f30,$f30
-divt $f8,$f30,$f8
-ldt $f30,L.1657
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1692
-lda $13,241
-cmpeq $14,$31,$23
-bne $23,L.1694
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1694:
-L.1692:
-ldt $f8,L.868
-lda $27,2
-stq $27,-80+256($sp)
-ldt $f30,-80+256($sp)
-cvtqt $f30,$f30
-divt $f8,$f30,$f8
-ldt $f30,L.1657
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1696
-lda $13,242
-cmpeq $14,$31,$23
-bne $23,L.1698
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1698:
-L.1696:
-ldt $f8,L.868
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-ldt $f30,L.594
-srl $27,1,$25
-stq $25,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-divt $f8,$f30,$f8
-ldt $f30,L.1657
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1700
-lda $13,243
-cmpeq $14,$31,$23
-bne $23,L.1702
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1702:
-L.1700:
-ldt $f8,L.868
-lds $f7,L.527
-cvtst $f7,$f30
-divt $f8,$f30,$f8
-ldt $f30,L.1657
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1704
-lda $13,244
-cmpeq $14,$31,$23
-bne $23,L.1706
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1706:
-L.1704:
-ldt $f8,L.868
-ldt $f6,L.414
-divt $f8,$f6,$f8
-ldt $f30,L.1657
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1708
-lda $13,245
-cmpeq $14,$31,$23
-bne $23,L.1710
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1710:
-L.1708:
-lda $12,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-reml $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1712
-lda $13,246
-cmpeq $14,$31,$23
-bne $23,L.1714
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1714:
-L.1712:
-lda $12,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-reml $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1716
-lda $13,247
-cmpeq $14,$31,$23
-bne $23,L.1718
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1718:
-L.1716:
-lda $12,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-reml $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1720
-lda $13,248
-cmpeq $14,$31,$23
-bne $23,L.1722
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1722:
-L.1720:
-lda $12,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-remq $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1724
-lda $13,249
-cmpeq $14,$31,$23
-bne $23,L.1726
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1726:
-L.1724:
-lda $12,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-remlu $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1728
-lda $13,250
-cmpeq $14,$31,$23
-bne $23,L.1730
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1730:
-L.1728:
-lda $11,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-reml $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1732
-lda $13,251
-cmpeq $14,$31,$23
-bne $23,L.1734
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1734:
-L.1732:
-lda $11,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-reml $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1736
-lda $13,252
-cmpeq $14,$31,$23
-bne $23,L.1738
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1738:
-L.1736:
-lda $11,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-reml $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1740
-lda $13,253
-cmpeq $14,$31,$23
-bne $23,L.1742
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1742:
-L.1740:
-lda $11,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-remq $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1744
-lda $13,254
-cmpeq $14,$31,$23
-bne $23,L.1746
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1746:
-L.1744:
-lda $11,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-remlu $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1748
-lda $13,255
-cmpeq $14,$31,$23
-bne $23,L.1750
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1750:
-L.1748:
-lda $10,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-reml $10,$27,$10
-cmpeq $10,1,$23
-bne $23,L.1752
-lda $13,256
-cmpeq $14,$31,$23
-bne $23,L.1754
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1754:
-L.1752:
-lda $10,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-reml $10,$27,$10
-cmpeq $10,1,$23
-bne $23,L.1756
-lda $13,257
-cmpeq $14,$31,$23
-bne $23,L.1758
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1758:
-L.1756:
-lda $10,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-reml $10,$27,$10
-cmpeq $10,1,$23
-bne $23,L.1760
-lda $13,258
-cmpeq $14,$31,$23
-bne $23,L.1762
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1762:
-L.1760:
-lda $10,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-remq $27,$25,$27
-mov $27,$10
-cmpeq $10,1,$23
-bne $23,L.1764
-lda $13,259
-cmpeq $14,$31,$23
-bne $23,L.1766
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1766:
-L.1764:
-lda $10,5
-lda $27,2
-stl $27,-84+256($sp)
-mov $10,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-remlu $27,$25,$27
-mov $27,$10
-cmpeq $10,1,$23
-bne $23,L.1768
-lda $13,260
-cmpeq $14,$31,$23
-bne $23,L.1770
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1770:
-L.1768:
-lda $9,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-remq $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1772
-lda $13,261
-cmpeq $14,$31,$23
-bne $23,L.1774
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1774:
-L.1772:
-lda $9,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-remq $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1776
-lda $13,262
-cmpeq $14,$31,$23
-bne $23,L.1778
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1778:
-L.1776:
-lda $9,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-remq $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1780
-lda $13,263
-cmpeq $14,$31,$23
-bne $23,L.1782
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1782:
-L.1780:
-lda $9,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-remq $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1784
-lda $13,264
-cmpeq $14,$31,$23
-bne $23,L.1786
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1786:
-L.1784:
-lda $9,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-remq $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1788
-lda $13,265
-cmpeq $14,$31,$23
-bne $23,L.1790
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1790:
-L.1788:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-remlu $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1792
-lda $13,266
-cmpeq $14,$31,$23
-bne $23,L.1794
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1794:
-L.1792:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-remlu $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1796
-lda $13,267
-cmpeq $14,$31,$23
-bne $23,L.1798
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1798:
-L.1796:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-remlu $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1800
-lda $13,268
-cmpeq $14,$31,$23
-bne $23,L.1802
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1802:
-L.1800:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-remq $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1804
-lda $13,269
-cmpeq $14,$31,$23
-bne $23,L.1806
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1806:
-L.1804:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-remlu $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1808
-lda $13,270
-cmpeq $14,$31,$23
-bne $23,L.1810
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1810:
-L.1808:
-lda $12,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1812
-lda $13,271
-cmpeq $14,$31,$23
-bne $23,L.1814
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1814:
-L.1812:
-lda $12,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1816
-lda $13,272
-cmpeq $14,$31,$23
-bne $23,L.1818
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1818:
-L.1816:
-lda $12,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1820
-lda $13,273
-cmpeq $14,$31,$23
-bne $23,L.1822
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1822:
-L.1820:
-lda $12,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldq $25,-80+256($sp)
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1824
-lda $13,274
-cmpeq $14,$31,$23
-bne $23,L.1826
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1826:
-L.1824:
-lda $12,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,1,$23
-bne $23,L.1828
-lda $13,275
-cmpeq $14,$31,$23
-bne $23,L.1830
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1830:
-L.1828:
-lda $11,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1832
-lda $13,276
-cmpeq $14,$31,$23
-bne $23,L.1834
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1834:
-L.1832:
-lda $11,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1836
-lda $13,277
-cmpeq $14,$31,$23
-bne $23,L.1838
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1838:
-L.1836:
-lda $11,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1840
-lda $13,278
-cmpeq $14,$31,$23
-bne $23,L.1842
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1842:
-L.1840:
-lda $11,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldq $25,-80+256($sp)
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1844
-lda $13,279
-cmpeq $14,$31,$23
-bne $23,L.1846
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1846:
-L.1844:
-lda $11,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-sra $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,1,$23
-bne $23,L.1848
-lda $13,280
-cmpeq $14,$31,$23
-bne $23,L.1850
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1850:
-L.1848:
-lda $10,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sra $10,$27,$10
-addl $10,0,$10
-cmpeq $10,1,$23
-bne $23,L.1852
-lda $13,281
-cmpeq $14,$31,$23
-bne $23,L.1854
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1854:
-L.1852:
-lda $10,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sra $10,$27,$10
-addl $10,0,$10
-cmpeq $10,1,$23
-bne $23,L.1856
-lda $13,282
-cmpeq $14,$31,$23
-bne $23,L.1858
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1858:
-L.1856:
-lda $10,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-sra $10,$27,$10
-addl $10,0,$10
-cmpeq $10,1,$23
-bne $23,L.1860
-lda $13,283
-cmpeq $14,$31,$23
-bne $23,L.1862
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1862:
-L.1860:
-lda $10,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-sra $10,$27,$10
-addl $10,0,$10
-cmpeq $10,1,$23
-bne $23,L.1864
-lda $13,284
-cmpeq $14,$31,$23
-bne $23,L.1866
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1866:
-L.1864:
-lda $10,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-sra $10,$27,$10
-addl $10,0,$10
-cmpeq $10,1,$23
-bne $23,L.1868
-lda $13,285
-cmpeq $14,$31,$23
-bne $23,L.1870
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1870:
-L.1868:
-lda $9,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sra $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1872
-lda $13,286
-cmpeq $14,$31,$23
-bne $23,L.1874
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1874:
-L.1872:
-lda $9,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sra $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1876
-lda $13,287
-cmpeq $14,$31,$23
-bne $23,L.1878
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1878:
-L.1876:
-lda $9,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-sra $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1880
-lda $13,288
-cmpeq $14,$31,$23
-bne $23,L.1882
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1882:
-L.1880:
-lda $9,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-sra $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1884
-lda $13,289
-cmpeq $14,$31,$23
-bne $23,L.1886
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1886:
-L.1884:
-lda $9,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-sra $9,$27,$9
-cmpeq $9,1,$23
-bne $23,L.1888
-lda $13,290
-cmpeq $14,$31,$23
-bne $23,L.1890
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1890:
-L.1888:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-srl $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1892
-lda $13,291
-cmpeq $14,$31,$23
-bne $23,L.1894
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1894:
-L.1892:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-srl $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1896
-lda $13,292
-cmpeq $14,$31,$23
-bne $23,L.1898
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1898:
-L.1896:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-srl $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1900
-lda $13,293
-cmpeq $14,$31,$23
-bne $23,L.1902
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1902:
-L.1900:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-srl $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1904
-lda $13,294
-cmpeq $14,$31,$23
-bne $23,L.1906
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1906:
-L.1904:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-srl $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,1
-cmpeq $27,$25,$23
-bne $23,L.1908
-lda $13,295
-cmpeq $14,$31,$23
-bne $23,L.1910
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1910:
-L.1908:
-lda $12,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,20,$23
-bne $23,L.1912
-lda $13,296
-cmpeq $14,$31,$23
-bne $23,L.1914
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1914:
-L.1912:
-lda $12,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,20,$23
-bne $23,L.1916
-lda $13,297
-cmpeq $14,$31,$23
-bne $23,L.1918
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1918:
-L.1916:
-lda $12,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,20,$23
-bne $23,L.1920
-lda $13,298
-cmpeq $14,$31,$23
-bne $23,L.1922
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1922:
-L.1920:
-lda $12,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldq $25,-80+256($sp)
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,20,$23
-bne $23,L.1924
-lda $13,299
-cmpeq $14,$31,$23
-bne $23,L.1926
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1926:
-L.1924:
-lda $12,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,20,$23
-bne $23,L.1928
-lda $13,300
-cmpeq $14,$31,$23
-bne $23,L.1930
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1930:
-L.1928:
-lda $11,5
-lda $27,2
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,20,$23
-bne $23,L.1932
-lda $13,301
-cmpeq $14,$31,$23
-bne $23,L.1934
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1934:
-L.1932:
-lda $11,5
-lda $27,2
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,20,$23
-bne $23,L.1936
-lda $13,302
-cmpeq $14,$31,$23
-bne $23,L.1938
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1938:
-L.1936:
-lda $11,5
-lda $27,2
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,20,$23
-bne $23,L.1940
-lda $13,303
-cmpeq $14,$31,$23
-bne $23,L.1942
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1942:
-L.1940:
-lda $11,5
-lda $27,2
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldq $25,-80+256($sp)
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,20,$23
-bne $23,L.1944
-lda $13,304
-cmpeq $14,$31,$23
-bne $23,L.1946
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1946:
-L.1944:
-lda $11,5
-lda $27,2
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-sll $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,20,$23
-bne $23,L.1948
-lda $13,305
-cmpeq $14,$31,$23
-bne $23,L.1950
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1950:
-L.1948:
-lda $10,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $10,$27,$10
-addl $10,0,$10
-cmpeq $10,20,$23
-bne $23,L.1952
-lda $13,306
-cmpeq $14,$31,$23
-bne $23,L.1954
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1954:
-L.1952:
-lda $10,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $10,$27,$10
-addl $10,0,$10
-cmpeq $10,20,$23
-bne $23,L.1956
-lda $13,307
-cmpeq $14,$31,$23
-bne $23,L.1958
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1958:
-L.1956:
-lda $10,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-sll $10,$27,$10
-addl $10,0,$10
-cmpeq $10,20,$23
-bne $23,L.1960
-lda $13,308
-cmpeq $14,$31,$23
-bne $23,L.1962
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1962:
-L.1960:
-lda $10,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-sll $10,$27,$10
-addl $10,0,$10
-cmpeq $10,20,$23
-bne $23,L.1964
-lda $13,309
-cmpeq $14,$31,$23
-bne $23,L.1966
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1966:
-L.1964:
-lda $10,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-sll $10,$27,$10
-addl $10,0,$10
-cmpeq $10,20,$23
-bne $23,L.1968
-lda $13,310
-cmpeq $14,$31,$23
-bne $23,L.1970
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1970:
-L.1968:
-lda $9,5
-lda $27,2
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $9,$27,$9
-cmpeq $9,20,$23
-bne $23,L.1972
-lda $13,311
-cmpeq $14,$31,$23
-bne $23,L.1974
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1974:
-L.1972:
-lda $9,5
-lda $27,2
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $9,$27,$9
-cmpeq $9,20,$23
-bne $23,L.1976
-lda $13,312
-cmpeq $14,$31,$23
-bne $23,L.1978
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1978:
-L.1976:
-lda $9,5
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-sll $9,$27,$9
-cmpeq $9,20,$23
-bne $23,L.1980
-lda $13,313
-cmpeq $14,$31,$23
-bne $23,L.1982
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1982:
-L.1980:
-lda $9,5
-lda $27,2
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-sll $9,$27,$9
-cmpeq $9,20,$23
-bne $23,L.1984
-lda $13,314
-cmpeq $14,$31,$23
-bne $23,L.1986
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1986:
-L.1984:
-lda $9,5
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-sll $9,$27,$9
-cmpeq $9,20,$23
-bne $23,L.1988
-lda $13,315
-cmpeq $14,$31,$23
-bne $23,L.1990
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1990:
-L.1988:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-sll $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,20
-cmpeq $27,$25,$23
-bne $23,L.1992
-lda $13,316
-cmpeq $14,$31,$23
-bne $23,L.1994
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1994:
-L.1992:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-sll $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,20
-cmpeq $27,$25,$23
-bne $23,L.1996
-lda $13,317
-cmpeq $14,$31,$23
-bne $23,L.1998
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.1998:
-L.1996:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-sll $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,20
-cmpeq $27,$25,$23
-bne $23,L.2000
-lda $13,318
-cmpeq $14,$31,$23
-bne $23,L.2002
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2002:
-L.2000:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-sll $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,20
-cmpeq $27,$25,$23
-bne $23,L.2004
-lda $13,319
-cmpeq $14,$31,$23
-bne $23,L.2006
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2006:
-L.2004:
-lda $27,5
-stl $27,-60+256($sp)
-lda $27,2
-stl $27,-84+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-sll $27,$25,$27
-zap $27,240,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,20
-cmpeq $27,$25,$23
-bne $23,L.2008
-lda $13,320
-cmpeq $14,$31,$23
-bne $23,L.2010
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2010:
-L.2008:
-lda $12,12
-lda $27,10
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-and $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,8,$23
-bne $23,L.2012
-lda $13,321
-cmpeq $14,$31,$23
-bne $23,L.2014
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2014:
-L.2012:
-lda $12,12
-lda $27,10
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-and $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,8,$23
-bne $23,L.2016
-lda $13,322
-cmpeq $14,$31,$23
-bne $23,L.2018
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2018:
-L.2016:
-lda $12,12
-lda $27,10
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-and $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,8,$23
-bne $23,L.2020
-lda $13,323
-cmpeq $14,$31,$23
-bne $23,L.2022
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2022:
-L.2020:
-lda $12,12
-lda $27,10
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-and $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,8,$23
-bne $23,L.2024
-lda $13,324
-cmpeq $14,$31,$23
-bne $23,L.2026
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2026:
-L.2024:
-lda $12,12
-lda $27,10
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-and $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,8,$23
-bne $23,L.2028
-lda $13,325
-cmpeq $14,$31,$23
-bne $23,L.2030
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2030:
-L.2028:
-lda $11,12
-lda $27,10
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-and $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,8,$23
-bne $23,L.2032
-lda $13,326
-cmpeq $14,$31,$23
-bne $23,L.2034
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2034:
-L.2032:
-lda $11,12
-lda $27,10
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-and $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,8,$23
-bne $23,L.2036
-lda $13,327
-cmpeq $14,$31,$23
-bne $23,L.2038
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2038:
-L.2036:
-lda $11,12
-lda $27,10
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-and $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,8,$23
-bne $23,L.2040
-lda $13,328
-cmpeq $14,$31,$23
-bne $23,L.2042
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2042:
-L.2040:
-lda $11,12
-lda $27,10
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-and $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,8,$23
-bne $23,L.2044
-lda $13,329
-cmpeq $14,$31,$23
-bne $23,L.2046
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2046:
-L.2044:
-lda $11,12
-lda $27,10
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-and $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,8,$23
-bne $23,L.2048
-lda $13,330
-cmpeq $14,$31,$23
-bne $23,L.2050
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2050:
-L.2048:
-lda $10,12
-lda $27,10
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-and $10,$27,$10
-addl $10,0,$10
-cmpeq $10,8,$23
-bne $23,L.2052
-lda $13,331
-cmpeq $14,$31,$23
-bne $23,L.2054
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2054:
-L.2052:
-lda $10,12
-lda $27,10
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-and $10,$27,$10
-addl $10,0,$10
-cmpeq $10,8,$23
-bne $23,L.2056
-lda $13,332
-cmpeq $14,$31,$23
-bne $23,L.2058
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2058:
-L.2056:
-lda $10,12
-lda $27,10
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-and $10,$27,$10
-addl $10,0,$10
-cmpeq $10,8,$23
-bne $23,L.2060
-lda $13,333
-cmpeq $14,$31,$23
-bne $23,L.2062
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2062:
-L.2060:
-lda $10,12
-lda $27,10
-stq $27,-80+256($sp)
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-and $27,$25,$27
-mov $27,$10
-cmpeq $10,8,$23
-bne $23,L.2064
-lda $13,334
-cmpeq $14,$31,$23
-bne $23,L.2066
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2066:
-L.2064:
-lda $10,12
-lda $27,10
-stl $27,-84+256($sp)
-mov $10,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-and $27,$25,$27
-mov $27,$10
-cmpeq $10,8,$23
-bne $23,L.2068
-lda $13,335
-cmpeq $14,$31,$23
-bne $23,L.2070
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2070:
-L.2068:
-lda $9,12
-lda $27,10
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-and $9,$27,$9
-cmpeq $9,8,$23
-bne $23,L.2072
-lda $13,336
-cmpeq $14,$31,$23
-bne $23,L.2074
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2074:
-L.2072:
-lda $9,12
-lda $27,10
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-and $9,$27,$9
-cmpeq $9,8,$23
-bne $23,L.2076
-lda $13,337
-cmpeq $14,$31,$23
-bne $23,L.2078
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2078:
-L.2076:
-lda $9,12
-lda $27,10
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-and $9,$27,$9
-cmpeq $9,8,$23
-bne $23,L.2080
-lda $13,338
-cmpeq $14,$31,$23
-bne $23,L.2082
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2082:
-L.2080:
-lda $9,12
-lda $27,10
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-and $9,$27,$9
-cmpeq $9,8,$23
-bne $23,L.2084
-lda $13,339
-cmpeq $14,$31,$23
-bne $23,L.2086
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2086:
-L.2084:
-lda $9,12
-lda $27,10
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-and $9,$27,$9
-cmpeq $9,8,$23
-bne $23,L.2088
-lda $13,340
-cmpeq $14,$31,$23
-bne $23,L.2090
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2090:
-L.2088:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-and $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,8
-cmpeq $27,$25,$23
-bne $23,L.2092
-lda $13,341
-cmpeq $14,$31,$23
-bne $23,L.2094
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2094:
-L.2092:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-and $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,8
-cmpeq $27,$25,$23
-bne $23,L.2096
-lda $13,342
-cmpeq $14,$31,$23
-bne $23,L.2098
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2098:
-L.2096:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-and $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,8
-cmpeq $27,$25,$23
-bne $23,L.2100
-lda $13,343
-cmpeq $14,$31,$23
-bne $23,L.2102
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2102:
-L.2100:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-and $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,8
-cmpeq $27,$25,$23
-bne $23,L.2104
-lda $13,344
-cmpeq $14,$31,$23
-bne $23,L.2106
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2106:
-L.2104:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stl $27,-84+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-and $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,8
-cmpeq $27,$25,$23
-bne $23,L.2108
-lda $13,345
-cmpeq $14,$31,$23
-bne $23,L.2110
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2110:
-L.2108:
-lda $12,12
-lda $27,10
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-xor $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,6,$23
-bne $23,L.2112
-lda $13,346
-cmpeq $14,$31,$23
-bne $23,L.2114
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2114:
-L.2112:
-lda $12,12
-lda $27,10
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-xor $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,6,$23
-bne $23,L.2116
-lda $13,347
-cmpeq $14,$31,$23
-bne $23,L.2118
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2118:
-L.2116:
-lda $12,12
-lda $27,10
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-xor $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,6,$23
-bne $23,L.2120
-lda $13,348
-cmpeq $14,$31,$23
-bne $23,L.2122
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2122:
-L.2120:
-lda $12,12
-lda $27,10
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-xor $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,6,$23
-bne $23,L.2124
-lda $13,349
-cmpeq $14,$31,$23
-bne $23,L.2126
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2126:
-L.2124:
-lda $12,12
-lda $27,10
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-xor $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,6,$23
-bne $23,L.2128
-lda $13,350
-cmpeq $14,$31,$23
-bne $23,L.2130
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2130:
-L.2128:
-lda $11,12
-lda $27,10
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-xor $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,6,$23
-bne $23,L.2132
-lda $13,351
-cmpeq $14,$31,$23
-bne $23,L.2134
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2134:
-L.2132:
-lda $11,12
-lda $27,10
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-xor $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,6,$23
-bne $23,L.2136
-lda $13,352
-cmpeq $14,$31,$23
-bne $23,L.2138
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2138:
-L.2136:
-lda $11,12
-lda $27,10
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-xor $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,6,$23
-bne $23,L.2140
-lda $13,353
-cmpeq $14,$31,$23
-bne $23,L.2142
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2142:
-L.2140:
-lda $11,12
-lda $27,10
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-xor $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,6,$23
-bne $23,L.2144
-lda $13,354
-cmpeq $14,$31,$23
-bne $23,L.2146
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2146:
-L.2144:
-lda $11,12
-lda $27,10
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-xor $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,6,$23
-bne $23,L.2148
-lda $13,355
-cmpeq $14,$31,$23
-bne $23,L.2150
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2150:
-L.2148:
-lda $10,12
-lda $27,10
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-xor $10,$27,$10
-addl $10,0,$10
-cmpeq $10,6,$23
-bne $23,L.2152
-lda $13,356
-cmpeq $14,$31,$23
-bne $23,L.2154
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2154:
-L.2152:
-lda $10,12
-lda $27,10
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-xor $10,$27,$10
-addl $10,0,$10
-cmpeq $10,6,$23
-bne $23,L.2156
-lda $13,357
-cmpeq $14,$31,$23
-bne $23,L.2158
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2158:
-L.2156:
-lda $10,12
-lda $27,10
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-xor $10,$27,$10
-addl $10,0,$10
-cmpeq $10,6,$23
-bne $23,L.2160
-lda $13,358
-cmpeq $14,$31,$23
-bne $23,L.2162
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2162:
-L.2160:
-lda $10,12
-lda $27,10
-stq $27,-80+256($sp)
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-xor $27,$25,$27
-mov $27,$10
-cmpeq $10,6,$23
-bne $23,L.2164
-lda $13,359
-cmpeq $14,$31,$23
-bne $23,L.2166
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2166:
-L.2164:
-lda $10,12
-lda $27,10
-stl $27,-84+256($sp)
-mov $10,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-xor $27,$25,$27
-mov $27,$10
-cmpeq $10,6,$23
-bne $23,L.2168
-lda $13,360
-cmpeq $14,$31,$23
-bne $23,L.2170
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2170:
-L.2168:
-lda $9,12
-lda $27,10
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-xor $9,$27,$9
-cmpeq $9,6,$23
-bne $23,L.2172
-lda $13,361
-cmpeq $14,$31,$23
-bne $23,L.2174
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2174:
-L.2172:
-lda $9,12
-lda $27,10
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-xor $9,$27,$9
-cmpeq $9,6,$23
-bne $23,L.2176
-lda $13,362
-cmpeq $14,$31,$23
-bne $23,L.2178
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2178:
-L.2176:
-lda $9,12
-lda $27,10
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-xor $9,$27,$9
-cmpeq $9,6,$23
-bne $23,L.2180
-lda $13,363
-cmpeq $14,$31,$23
-bne $23,L.2182
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2182:
-L.2180:
-lda $9,12
-lda $27,10
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-xor $9,$27,$9
-cmpeq $9,6,$23
-bne $23,L.2184
-lda $13,364
-cmpeq $14,$31,$23
-bne $23,L.2186
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2186:
-L.2184:
-lda $9,12
-lda $27,10
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-xor $9,$27,$9
-cmpeq $9,6,$23
-bne $23,L.2188
-lda $13,365
-cmpeq $14,$31,$23
-bne $23,L.2190
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2190:
-L.2188:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-xor $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,6
-cmpeq $27,$25,$23
-bne $23,L.2192
-lda $13,366
-cmpeq $14,$31,$23
-bne $23,L.2194
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2194:
-L.2192:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-xor $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,6
-cmpeq $27,$25,$23
-bne $23,L.2196
-lda $13,367
-cmpeq $14,$31,$23
-bne $23,L.2198
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2198:
-L.2196:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-xor $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,6
-cmpeq $27,$25,$23
-bne $23,L.2200
-lda $13,368
-cmpeq $14,$31,$23
-bne $23,L.2202
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2202:
-L.2200:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-xor $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,6
-cmpeq $27,$25,$23
-bne $23,L.2204
-lda $13,369
-cmpeq $14,$31,$23
-bne $23,L.2206
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2206:
-L.2204:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stl $27,-84+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-xor $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,6
-cmpeq $27,$25,$23
-bne $23,L.2208
-lda $13,370
-cmpeq $14,$31,$23
-bne $23,L.2210
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2210:
-L.2208:
-lda $12,12
-lda $27,10
-stb $27,-61+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-or $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,14,$23
-bne $23,L.2212
-lda $13,371
-cmpeq $14,$31,$23
-bne $23,L.2214
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2214:
-L.2212:
-lda $12,12
-lda $27,10
-stw $27,-64+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-or $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,14,$23
-bne $23,L.2216
-lda $13,372
-cmpeq $14,$31,$23
-bne $23,L.2218
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2218:
-L.2216:
-lda $12,12
-lda $27,10
-stl $27,-68+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-68+256($sp)
-or $27,$25,$27
-addl $27,0,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,14,$23
-bne $23,L.2220
-lda $13,373
-cmpeq $14,$31,$23
-bne $23,L.2222
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2222:
-L.2220:
-lda $12,12
-lda $27,10
-stq $27,-80+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-or $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,14,$23
-bne $23,L.2224
-lda $13,374
-cmpeq $14,$31,$23
-bne $23,L.2226
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2226:
-L.2224:
-lda $12,12
-lda $27,10
-stl $27,-84+256($sp)
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-or $27,$25,$27
-mov $27,$12
-sll $12,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,14,$23
-bne $23,L.2228
-lda $13,375
-cmpeq $14,$31,$23
-bne $23,L.2230
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2230:
-L.2228:
-lda $11,12
-lda $27,10
-stb $27,-61+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-or $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,14,$23
-bne $23,L.2232
-lda $13,376
-cmpeq $14,$31,$23
-bne $23,L.2234
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2234:
-L.2232:
-lda $11,12
-lda $27,10
-stw $27,-64+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-or $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,14,$23
-bne $23,L.2236
-lda $13,377
-cmpeq $14,$31,$23
-bne $23,L.2238
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2238:
-L.2236:
-lda $11,12
-lda $27,10
-stl $27,-68+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-68+256($sp)
-or $27,$25,$27
-addl $27,0,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,14,$23
-bne $23,L.2240
-lda $13,378
-cmpeq $14,$31,$23
-bne $23,L.2242
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2242:
-L.2240:
-lda $11,12
-lda $27,10
-stq $27,-80+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-or $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,14,$23
-bne $23,L.2244
-lda $13,379
-cmpeq $14,$31,$23
-bne $23,L.2246
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2246:
-L.2244:
-lda $11,12
-lda $27,10
-stl $27,-84+256($sp)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-or $27,$25,$27
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,14,$23
-bne $23,L.2248
-lda $13,380
-cmpeq $14,$31,$23
-bne $23,L.2250
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2250:
-L.2248:
-lda $10,12
-lda $27,10
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-or $10,$27,$10
-addl $10,0,$10
-cmpeq $10,14,$23
-bne $23,L.2252
-lda $13,381
-cmpeq $14,$31,$23
-bne $23,L.2254
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2254:
-L.2252:
-lda $10,12
-lda $27,10
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-or $10,$27,$10
-addl $10,0,$10
-cmpeq $10,14,$23
-bne $23,L.2256
-lda $13,382
-cmpeq $14,$31,$23
-bne $23,L.2258
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2258:
-L.2256:
-lda $10,12
-lda $27,10
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-or $10,$27,$10
-addl $10,0,$10
-cmpeq $10,14,$23
-bne $23,L.2260
-lda $13,383
-cmpeq $14,$31,$23
-bne $23,L.2262
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2262:
-L.2260:
-lda $10,12
-lda $27,10
-stq $27,-80+256($sp)
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-ldq $25,-80+256($sp)
-or $27,$25,$27
-mov $27,$10
-cmpeq $10,14,$23
-bne $23,L.2264
-lda $13,384
-cmpeq $14,$31,$23
-bne $23,L.2266
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2266:
-L.2264:
-lda $10,12
-lda $27,10
-stl $27,-84+256($sp)
-mov $10,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-or $27,$25,$27
-mov $27,$10
-cmpeq $10,14,$23
-bne $23,L.2268
-lda $13,385
-cmpeq $14,$31,$23
-bne $23,L.2270
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2270:
-L.2268:
-lda $9,12
-lda $27,10
-stb $27,-61+256($sp)
-lda $27,-61+256($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-or $9,$27,$9
-cmpeq $9,14,$23
-bne $23,L.2272
-lda $13,386
-cmpeq $14,$31,$23
-bne $23,L.2274
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2274:
-L.2272:
-lda $9,12
-lda $27,10
-stw $27,-64+256($sp)
-lda $27,-64+256($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-or $9,$27,$9
-cmpeq $9,14,$23
-bne $23,L.2276
-lda $13,387
-cmpeq $14,$31,$23
-bne $23,L.2278
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2278:
-L.2276:
-lda $9,12
-lda $27,10
-stl $27,-68+256($sp)
-ldl $27,-68+256($sp)
-or $9,$27,$9
-cmpeq $9,14,$23
-bne $23,L.2280
-lda $13,388
-cmpeq $14,$31,$23
-bne $23,L.2282
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2282:
-L.2280:
-lda $9,12
-lda $27,10
-stq $27,-80+256($sp)
-ldq $27,-80+256($sp)
-or $9,$27,$9
-cmpeq $9,14,$23
-bne $23,L.2284
-lda $13,389
-cmpeq $14,$31,$23
-bne $23,L.2286
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2286:
-L.2284:
-lda $9,12
-lda $27,10
-stl $27,-84+256($sp)
-ldl $27,-84+256($sp)
-zap $27,240,$27
-or $9,$27,$9
-cmpeq $9,14,$23
-bne $23,L.2288
-lda $13,390
-cmpeq $14,$31,$23
-bne $23,L.2290
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2290:
-L.2288:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stb $27,-61+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-61+256($sp)
-ldb $25,($25)
-or $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,14
-cmpeq $27,$25,$23
-bne $23,L.2292
-lda $13,391
-cmpeq $14,$31,$23
-bne $23,L.2294
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2294:
-L.2292:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stw $27,-64+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,-64+256($sp)
-ldw $25,($25)
-or $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,14
-cmpeq $27,$25,$23
-bne $23,L.2296
-lda $13,392
-cmpeq $14,$31,$23
-bne $23,L.2298
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2298:
-L.2296:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stl $27,-68+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-68+256($sp)
-or $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,14
-cmpeq $27,$25,$23
-bne $23,L.2300
-lda $13,393
-cmpeq $14,$31,$23
-bne $23,L.2302
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2302:
-L.2300:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stq $27,-80+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldq $25,-80+256($sp)
-or $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,14
-cmpeq $27,$25,$23
-bne $23,L.2304
-lda $13,394
-cmpeq $14,$31,$23
-bne $23,L.2306
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2306:
-L.2304:
-lda $27,12
-stl $27,-60+256($sp)
-lda $27,10
-stl $27,-84+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-ldl $25,-84+256($sp)
-zap $25,240,$25
-or $27,$25,$27
-stl $27,-60+256($sp)
-ldl $27,-60+256($sp)
-zap $27,240,$27
-lda $25,14
-cmpeq $27,$25,$23
-bne $23,L.2308
-lda $13,395
-cmpeq $14,$31,$23
-bne $23,L.2310
-lda $16,L.685
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2310:
-L.2308:
-cmpeq $13,$31,$23
-bne $23,L.2312
-lda $27,1
-stl $27,-108+256($sp)
-ldq $27,-48+256($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.2314
-lda $16,L.686
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.2314:
-L.2312:
-ldl $0,-108+256($sp)
-L.684:
-ldt $f6,0($sp)
-ldt $f7,8($sp)
-ldt $f8,16($sp)
-ldt $f9,24($sp)
-ldq $9,32($sp)
-ldq $10,40($sp)
-ldq $11,48($sp)
-ldq $12,56($sp)
-ldq $13,64($sp)
-ldq $14,72($sp)
-ldq $24,80($sp)
-ldq $26,88($sp)
-lda $sp,256($sp)
-ret
-.end s714
-.sdata
-.align 0
-L.2317:
-.byte 115
-.byte 55
-.byte 49
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.2318:
-.byte 115
-.byte 55
-.byte 49
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s715
-.text
-.text
-.ent s715
-s715:
-ldgp $gp,0($27)
-lda $sp,-128($sp)
-.mask 0x5007800,-88
-.frame $sp,128,$26,48
-stq $11,0($sp)
-stq $12,8($sp)
-stq $13,16($sp)
-stq $14,24($sp)
-stq $24,32($sp)
-stq $26,40($sp)
-stq $16,80($sp)
-.prologue 1
-stl $31,-68+128($sp)
-stl $31,-60+128($sp)
-lda $14,L.2318
-ldq $25,-48+128($sp)
-lda $13,60($25)
-mov $31,$11
-L.2319:
-L.2320:
-mov $13,$27
-lda $13,1($27)
-mov $14,$25
-lda $14,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.2319
-lda $27,1
-mov $27,$12
-lda $12,1($12)
-lda $12,1($12)
-lda $12,1($12)
-lda $12,1($12)
-lda $27,1($12)
-mov $27,$12
-cmpeq $27,6,$23
-bne $23,L.2322
-ldq $27,-48+128($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.2324
-lda $16,L.2317
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.2324:
-lda $11,1($11)
-L.2322:
-ldl $16,-60+128($sp)
-lda $27,3
-stl $27,-64+128($sp)
-ldl $27,-64+128($sp)
-lda $17,2($27)
-ldl $18,-68+128($sp)
-jsr $26,s715f
-ldgp $gp,0($26)
-cmpeq $0,5,$23
-bne $23,L.2326
-ldq $27,-48+128($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.2328
-lda $16,L.2317
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.2328:
-lda $11,2($11)
-L.2326:
-mov $11,$0
-L.2316:
-ldq $11,0($sp)
-ldq $12,8($sp)
-ldq $13,16($sp)
-ldq $14,24($sp)
-ldq $24,32($sp)
-ldq $26,40($sp)
-lda $sp,128($sp)
-ret
-.end s715
-.globl s715f
-.text
-.ent s715f
-s715f:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-mov $17,$0
-L.2330:
-lda $sp,64($sp)
-ret
-.end s715f
-.sdata
-.align 0
-L.2332:
-.byte 115
-.byte 55
-.byte 50
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.2333:
-.byte 115
-.byte 55
-.byte 50
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s72
-.text
-.text
-.ent s72
-s72:
-ldgp $gp,0($27)
-lda $sp,-176($sp)
-.fmask 0x300,-168
-.mask 0x5007e00,-104
-.frame $sp,176,$26,48
-stt $f8,0($sp)
-stt $f9,8($sp)
-stq $9,16($sp)
-stq $10,24($sp)
-stq $11,32($sp)
-stq $12,40($sp)
-stq $13,48($sp)
-stq $14,56($sp)
-stq $24,64($sp)
-stq $26,72($sp)
-mov $16,$14
-.prologue 1
-lda $12,L.2333
-lda $11,60($14)
-mov $31,$9
-L.2334:
-L.2335:
-mov $11,$27
-lda $11,1($27)
-mov $12,$25
-lda $12,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.2334
-lda $27,2
-stl $27,-60+176($sp)
-ldl $27,-60+176($sp)
-cmpeq $27,2,$23
-bne $23,L.2337
-lda $27,1
-lda $9,1($9)
-lda $16,L.2332
-mov $27,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2337:
-ldl $27,-60+176($sp)
-negl $27,$25
-addl $27,$25,$27
-cmpeq $27,$31,$23
-bne $23,L.2339
-lda $27,2
-lda $9,2($9)
-lda $16,L.2332
-mov $27,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2339:
-stl $31,-60+176($sp)
-mov $31,$13
-br L.2344
-L.2341:
-ldl $27,-60+176($sp)
-sll $27,1,$27
-addl $27,0,$27
-or $27,1,$27
-addl $27,0,$27
-stl $27,-60+176($sp)
-L.2342:
-lda $13,1($13)
-L.2344:
-ldl $27,4($14)
-cmplt $13,$27,$23
-bne $23,L.2341
-ldl $27,-60+176($sp)
-not $27,$27
-addl $27,0,$27
-cmpeq $27,$31,$23
-bne $23,L.2345
-lda $27,4
-lda $9,4($9)
-lda $16,L.2332
-mov $27,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2345:
-lda $27,5
-stl $27,-60+176($sp)
-ldl $27,-60+176($sp)
-lda $27,1($27)
-stl $27,-60+176($sp)
-cmpeq $27,6,$23
-beq $23,L.2352
-ldl $27,-60+176($sp)
-subl $27,1,$27
-stl $27,-60+176($sp)
-cmpeq $27,5,$23
-beq $23,L.2352
-ldl $27,-60+176($sp)
-lda $25,1($27)
-stl $25,-60+176($sp)
-cmpeq $27,5,$23
-beq $23,L.2352
-ldl $27,-60+176($sp)
-subl $27,1,$25
-stl $25,-60+176($sp)
-cmpeq $27,6,$23
-beq $23,L.2352
-ldl $27,-60+176($sp)
-cmpeq $27,5,$23
-bne $23,L.2347
-L.2352:
-lda $27,8
-lda $9,8($9)
-lda $16,L.2332
-mov $27,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2347:
-lda $27,26
-stb $27,-65+176($sp)
-lda $27,26
-stq $27,-80+176($sp)
-ldt $f9,L.2353
-lda $27,26
-stw $27,-68+176($sp)
-lda $27,26
-stl $27,-84+176($sp)
-lda $27,26
-stl $27,-64+176($sp)
-lds $f8,L.2354
-mov $31,$10
-lda $27,-68+176($sp)
-ldw $27,($27)
-sll $27,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,26,$23
-beq $23,L.2361
-ldl $27,-64+176($sp)
-sll $27,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,26,$23
-beq $23,L.2361
-ldq $27,-80+176($sp)
-sll $27,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,26,$23
-beq $23,L.2361
-ldl $27,-84+176($sp)
-zap $27,240,$27
-sll $27,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,26,$23
-beq $23,L.2361
-cvttqc $f8,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-sll $27,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,26,$23
-beq $23,L.2361
-cvttqc $f9,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-sll $27,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,26,$23
-bne $23,L.2355
-L.2361:
-lda $10,1($10)
-L.2355:
-lda $27,-65+176($sp)
-ldb $27,($27)
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,26,$23
-beq $23,L.2368
-ldl $27,-64+176($sp)
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,26,$23
-beq $23,L.2368
-ldq $27,-80+176($sp)
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,26,$23
-beq $23,L.2368
-ldl $27,-84+176($sp)
-zap $27,240,$27
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,26,$23
-beq $23,L.2368
-cvttqc $f8,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,26,$23
-beq $23,L.2368
-cvttqc $f9,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,26,$23
-bne $23,L.2362
-L.2368:
-lda $10,2($10)
-L.2362:
-lda $27,-65+176($sp)
-ldb $27,($27)
-cmpeq $27,26,$23
-beq $23,L.2375
-lda $27,-68+176($sp)
-ldw $27,($27)
-cmpeq $27,26,$23
-beq $23,L.2375
-ldq $27,-80+176($sp)
-cmpeq $27,26,$23
-beq $23,L.2375
-ldl $27,-84+176($sp)
-zap $27,240,$27
-cmpeq $27,26,$23
-beq $23,L.2375
-cvttqc $f8,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-cmpeq $27,26,$23
-beq $23,L.2375
-cvttqc $f9,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-cmpeq $27,26,$23
-bne $23,L.2369
-L.2375:
-lda $10,4($10)
-L.2369:
-lda $27,-65+176($sp)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-cmpeq $27,26,$23
-beq $23,L.2382
-lda $27,-68+176($sp)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-cmpeq $27,26,$23
-beq $23,L.2382
-ldl $27,-64+176($sp)
-cmpeq $27,26,$23
-beq $23,L.2382
-ldl $27,-84+176($sp)
-zap $27,240,$27
-cmpeq $27,26,$23
-beq $23,L.2382
-cvttqc $f8,$f1
-stt $f1,-56+176($sp)
-ldq $27,-56+176($sp)
-cmpeq $27,26,$23
-beq $23,L.2382
-cvttqc $f9,$f1
-stt $f1,-56+176($sp)
-ldq $27,-56+176($sp)
-cmpeq $27,26,$23
-bne $23,L.2376
-L.2382:
-lda $10,8($10)
-L.2376:
-lda $27,26
-lda $25,-65+176($sp)
-ldb $25,($25)
-cmpeq $25,$27,$23
-beq $23,L.2391
-lda $25,-68+176($sp)
-ldw $25,($25)
-cmpeq $25,$27,$23
-beq $23,L.2391
-ldl $25,-64+176($sp)
-cmpeq $25,$27,$23
-beq $23,L.2391
-ldq $25,-80+176($sp)
-cmpeq $25,$27,$23
-beq $23,L.2391
-lds $f30,L.826
-cmptlt $f8,$f30,$f1
-fbne $f1,L.2392
-subs $f8,$f30,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-88+176($sp)
-br L.2393
-L.2392:
-cvttqc $f8,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-stl $27,-88+176($sp)
-L.2393:
-ldl $27,-88+176($sp)
-zap $27,240,$27
-lda $25,26
-cmpeq $27,$25,$23
-beq $23,L.2391
-ldt $f30,L.834
-cmptlt $f9,$f30,$f1
-fbne $f1,L.2394
-subt $f9,$f30,$f30
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-92+176($sp)
-br L.2395
-L.2394:
-cvttqc $f9,$f1
-cvtql $f1,$f1
-sts $f1,-56+176($sp)
-ldl $27,-56+176($sp)
-stl $27,-92+176($sp)
-L.2395:
-ldl $27,-92+176($sp)
-zap $27,240,$27
-lda $25,26
-cmpeq $27,$25,$23
-bne $23,L.2383
-L.2391:
-lda $10,16($10)
-L.2383:
-ldt $f30,L.2353
-lda $27,-65+176($sp)
-ldb $27,($27)
-stq $27,-56+176($sp)
-ldt $f29,-56+176($sp)
-cvtqs $f29,$f29
-cvtst $f29,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2402
-lda $27,-68+176($sp)
-ldw $27,($27)
-stq $27,-56+176($sp)
-ldt $f29,-56+176($sp)
-cvtqs $f29,$f29
-cvtst $f29,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2402
-lds $f29,-64+176($sp)
-cvtlq $f29,$f29
-cvtqs $f29,$f29
-cvtst $f29,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2402
-ldt $f29,-80+176($sp)
-cvtqs $f29,$f29
-cvtst $f29,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2402
-ldl $27,-84+176($sp)
-zap $27,240,$27
-ldt $f29,L.594
-srl $27,1,$25
-stq $25,-56+176($sp)
-ldt $f28,-56+176($sp)
-cvtqt $f28,$f28
-mult $f29,$f28,$f29
-and $27,1,$27
-stq $27,-56+176($sp)
-ldt $f28,-56+176($sp)
-cvtqt $f28,$f28
-addt $f29,$f28,$f29
-cvtts $f29,$f29
-cvtst $f29,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2402
-cvtts $f9,$f29
-cvtst $f29,$f29
-cmpteq $f29,$f30,$f1
-fbne $f1,L.2396
-L.2402:
-lda $10,32($10)
-L.2396:
-ldt $f30,L.2353
-lda $27,-65+176($sp)
-ldb $27,($27)
-stq $27,-56+176($sp)
-ldt $f29,-56+176($sp)
-cvtqt $f29,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2409
-lda $27,-68+176($sp)
-ldw $27,($27)
-stq $27,-56+176($sp)
-ldt $f29,-56+176($sp)
-cvtqt $f29,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2409
-lds $f29,-64+176($sp)
-cvtlq $f29,$f29
-cvtqt $f29,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2409
-ldt $f29,-80+176($sp)
-cvtqt $f29,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2409
-ldl $27,-84+176($sp)
-zap $27,240,$27
-ldt $f29,L.594
-srl $27,1,$25
-stq $25,-56+176($sp)
-ldt $f28,-56+176($sp)
-cvtqt $f28,$f28
-mult $f29,$f28,$f29
-and $27,1,$27
-stq $27,-56+176($sp)
-ldt $f28,-56+176($sp)
-cvtqt $f28,$f28
-addt $f29,$f28,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.2409
-cvtst $f8,$f29
-cmpteq $f29,$f30,$f1
-fbne $f1,L.2403
-L.2409:
-lda $10,64($10)
-L.2403:
-cmpeq $10,$31,$23
-bne $23,L.2410
-lda $27,16
-lda $9,16($9)
-lda $16,L.2332
-mov $27,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2410:
-mov $9,$0
-L.2331:
-ldt $f8,0($sp)
-ldt $f9,8($sp)
-ldq $9,16($sp)
-ldq $10,24($sp)
-ldq $11,32($sp)
-ldq $12,40($sp)
-ldq $13,48($sp)
-ldq $14,56($sp)
-ldq $24,64($sp)
-ldq $26,72($sp)
-lda $sp,176($sp)
-ret
-.end s72
-.sdata
-.align 0
-L.2413:
-.byte 115
-.byte 55
-.byte 53
-.byte 55
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.2414:
-.byte 115
-.byte 55
-.byte 53
-.byte 55
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s757
-.text
-.text
-.ent s757
-s757:
-ldgp $gp,0($27)
-lda $sp,-272($sp)
-.mask 0x5007e00,-216
-.frame $sp,272,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-mov $16,$14
-.prologue 1
-lda $27,L.2414
-stq $27,-152+272($sp)
-lda $27,60($14)
-stq $27,-160+272($sp)
-stl $31,-164+272($sp)
-L.2415:
-L.2416:
-ldq $27,-160+272($sp)
-lda $25,1($27)
-stq $25,-160+272($sp)
-ldq $25,-152+272($sp)
-lda $22,1($25)
-stq $22,-152+272($sp)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.2415
-lda $27,40
-stl $27,-168+272($sp)
-ldl $27,-168+272($sp)
-sll $27,3,$25
-addl $25,0,$25
-sll $25,2,$25
-addl $25,0,$25
-lda $22,1280
-cmpeq $25,$22,$23
-beq $23,L.2420
-sra $27,3,$27
-addl $27,0,$27
-sra $27,2,$27
-addl $27,0,$27
-cmpeq $27,1,$23
-bne $23,L.2418
-L.2420:
-ldl $27,-164+272($sp)
-lda $27,1($27)
-stl $27,-164+272($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.2421
-lda $16,L.2413
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.2421:
-L.2418:
-mov $31,$9
-stl $31,-136+272($sp)
-br L.2426
-L.2423:
-lda $27,1
-stl $27,-128+272($sp)
-ldl $27,-128+272($sp)
-zap $27,240,$27
-ldl $25,16($14)
-subl $25,1,$25
-sll $27,$25,$27
-zap $27,240,$27
-stl $27,-132+272($sp)
-stl $31,-140+272($sp)
-ldl $27,-140+272($sp)
-zap $27,240,$27
-not $27,$27
-zap $27,240,$27
-ldl $25,-136+272($sp)
-srl $27,$25,$22
-stl $22,-144+272($sp)
-sll $27,$25,$27
-zap $27,240,$27
-stl $27,-140+272($sp)
-stl $31,-124+272($sp)
-br L.2430
-L.2427:
-ldl $27,-124+272($sp)
-ldl $25,-136+272($sp)
-cmplt $27,$25,$23
-beq $23,L.2438
-lda $27,1
-stl $27,-180+272($sp)
-br L.2439
-L.2438:
-stl $31,-180+272($sp)
-L.2439:
-ldl $27,-128+272($sp)
-zap $27,240,$27
-ldl $25,-140+272($sp)
-zap $25,240,$25
-and $27,$25,$27
-cmpeq $27,$31,$23
-beq $23,L.2440
-lda $27,1
-stl $27,-184+272($sp)
-br L.2441
-L.2440:
-stl $31,-184+272($sp)
-L.2441:
-ldl $27,-180+272($sp)
-ldl $25,-184+272($sp)
-cmpeq $27,$25,$23
-beq $23,L.2437
-ldl $27,-124+272($sp)
-ldl $25,-136+272($sp)
-cmplt $27,$25,$23
-beq $23,L.2442
-lda $27,1
-stl $27,-188+272($sp)
-br L.2443
-L.2442:
-stl $31,-188+272($sp)
-L.2443:
-ldl $27,-132+272($sp)
-zap $27,240,$27
-ldl $25,-144+272($sp)
-zap $25,240,$25
-and $27,$25,$27
-cmpeq $27,$31,$23
-beq $23,L.2444
-lda $27,1
-stl $27,-192+272($sp)
-br L.2445
-L.2444:
-stl $31,-192+272($sp)
-L.2445:
-ldl $27,-188+272($sp)
-ldl $25,-192+272($sp)
-cmpeq $27,$25,$23
-bne $23,L.2431
-L.2437:
-lda $9,1
-L.2431:
-ldl $27,-128+272($sp)
-zap $27,240,$27
-sll $27,1,$27
-zap $27,240,$27
-stl $27,-128+272($sp)
-ldl $27,-132+272($sp)
-zap $27,240,$27
-srl $27,1,$27
-stl $27,-132+272($sp)
-L.2428:
-ldl $27,-124+272($sp)
-lda $27,1($27)
-stl $27,-124+272($sp)
-L.2430:
-ldl $27,-124+272($sp)
-ldl $25,16($14)
-cmplt $27,$25,$23
-bne $23,L.2427
-L.2424:
-ldl $27,-136+272($sp)
-lda $27,1($27)
-stl $27,-136+272($sp)
-L.2426:
-ldl $27,-136+272($sp)
-ldl $25,16($14)
-cmplt $27,$25,$23
-bne $23,L.2423
-cmpeq $9,$31,$23
-bne $23,L.2446
-ldl $27,-164+272($sp)
-lda $27,2($27)
-stl $27,-164+272($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.2448
-lda $16,L.2413
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.2448:
-L.2446:
-lda $10,3
-lda $11,2
-lda $12,1
-cmplt $10,$11,$23
-beq $23,L.2456
-lda $27,1
-stl $27,-184+272($sp)
-br L.2457
-L.2456:
-stl $31,-184+272($sp)
-L.2457:
-ldl $27,-184+272($sp)
-cmplt $27,$12,$23
-beq $23,L.2454
-lda $27,1
-stl $27,-180+272($sp)
-br L.2455
-L.2454:
-stl $31,-180+272($sp)
-L.2455:
-ldl $27,-180+272($sp)
-cmpeq $27,1,$23
-bne $23,L.2450
-ldl $27,-164+272($sp)
-lda $27,4($27)
-stl $27,-164+272($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.2458
-lda $16,L.2413
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.2458:
-L.2450:
-lda $27,-116+272($sp)
-lda $25,-120+272($sp)
-cmpeq $27,$25,$23
-beq $23,L.2460
-ldl $27,-164+272($sp)
-lda $27,8($27)
-stl $27,-164+272($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.2463
-lda $16,L.2413
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.2463:
-L.2460:
-lda $27,-116+272($sp)
-lda $25,-120+272($sp)
-cmpult $27,$25,$23
-beq $23,L.2465
-ldl $27,40($14)
-cmpeq $27,$31,$23
-bne $23,L.2468
-lda $16,L.2470
-jsr $26,printf
-ldgp $gp,0($26)
-L.2468:
-L.2465:
-mov $31,$9
-stl $31,-124+272($sp)
-L.2471:
-ldl $27,-124+272($sp)
-sll $27,2,$27
-lda $25,-120+272($sp)
-addq $27,$25,$27
-lda $25,1
-stl $25,($27)
-L.2472:
-ldl $27,-124+272($sp)
-lda $27,1($27)
-stl $27,-124+272($sp)
-ldl $27,-124+272($sp)
-cmplt $27,16,$23
-bne $23,L.2471
-stl $31,-116+272($sp)
-stl $31,-104+272($sp)
-stl $31,-96+272($sp)
-stl $31,-92+272($sp)
-stl $31,-84+272($sp)
-stl $31,-68+272($sp)
-mov $31,$10
-L.2481:
-mov $31,$11
-L.2485:
-mov $31,$12
-L.2489:
-mov $31,$13
-L.2493:
-cmplt $10,$11,$23
-beq $23,L.2504
-lda $27,1
-stl $27,-192+272($sp)
-br L.2505
-L.2504:
-stl $31,-192+272($sp)
-L.2505:
-cmplt $12,$13,$23
-beq $23,L.2506
-lda $27,1
-stl $27,-196+272($sp)
-br L.2507
-L.2506:
-stl $31,-196+272($sp)
-L.2507:
-ldl $27,-192+272($sp)
-ldl $25,-196+272($sp)
-cmpeq $27,$25,$23
-beq $23,L.2502
-lda $27,1
-stl $27,-188+272($sp)
-br L.2503
-L.2502:
-stl $31,-188+272($sp)
-L.2503:
-ldl $27,-188+272($sp)
-sll $10,3,$25
-addl $25,0,$25
-sll $11,2,$22
-addl $22,0,$22
-addl $25,$22,$25
-sll $12,1,$22
-addl $22,0,$22
-addl $25,$22,$25
-addl $25,$13,$25
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-lda $22,-120+272($sp)
-addq $25,$22,$25
-ldl $25,($25)
-cmpeq $27,$25,$23
-bne $23,L.2497
-lda $9,1
-L.2497:
-L.2494:
-lda $13,1($13)
-cmplt $13,2,$23
-bne $23,L.2493
-L.2490:
-lda $12,1($12)
-cmplt $12,2,$23
-bne $23,L.2489
-L.2486:
-lda $11,1($11)
-cmplt $11,2,$23
-bne $23,L.2485
-L.2482:
-lda $10,1($10)
-cmplt $10,2,$23
-bne $23,L.2481
-cmpeq $9,$31,$23
-bne $23,L.2508
-ldl $27,-164+272($sp)
-lda $27,16($27)
-stl $27,-164+272($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.2510
-lda $16,L.2413
-lda $17,16
-jsr $26,printf
-ldgp $gp,0($26)
-L.2510:
-L.2508:
-stq $31,-176+272($sp)
-ldq $27,-176+272($sp)
-cmpeq $27,$31,$23
-bne $23,L.2512
-ldl $27,-164+272($sp)
-lda $27,32($27)
-stl $27,-164+272($sp)
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.2514
-lda $16,L.2413
-lda $17,32
-jsr $26,printf
-ldgp $gp,0($26)
-L.2514:
-L.2512:
-ldl $0,-164+272($sp)
-L.2412:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,272($sp)
-ret
-.end s757
-.sdata
-.align 0
-L.2517:
-.byte 76
-.byte 111
-.byte 99
-.byte 97
-.byte 108
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.2518:
-.byte 115
-.byte 55
-.byte 56
-.byte 49
-.byte 51
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.2519:
-.byte 115
-.byte 55
-.byte 56
-.byte 49
-.byte 51
-.byte 32
-.byte 32
-.byte 0
-.globl s7813
-.text
-.text
-.ent s7813
-s7813:
-ldgp $gp,0($27)
-lda $sp,-192($sp)
-.mask 0x5007e00,-136
-.frame $sp,192,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-stq $16,144($sp)
-.prologue 1
-lda $9,L.2519
-ldq $27,-48+192($sp)
-lda $25,60($27)
-stq $25,-64+192($sp)
-mov $31,$13
-stl $31,-68+192($sp)
-ldl $14,48($27)
-L.2520:
-L.2521:
-ldq $27,-64+192($sp)
-lda $25,1($27)
-stq $25,-64+192($sp)
-mov $9,$25
-lda $9,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.2520
-br L.2523
-lda $13,1
-cmpeq $14,$31,$23
-bne $23,L.2525
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2525:
-L.2523:
-br L.2527
-lda $13,2
-cmpeq $14,$31,$23
-bne $23,L.2529
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2529:
-L.2527:
-br L.2531
-lda $13,3
-cmpeq $14,$31,$23
-bne $23,L.2533
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2533:
-L.2531:
-br L.2535
-lda $13,4
-cmpeq $14,$31,$23
-bne $23,L.2537
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2537:
-L.2535:
-br L.2539
-lda $13,5
-cmpeq $14,$31,$23
-bne $23,L.2541
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2541:
-L.2539:
-br L.2543
-lda $13,6
-cmpeq $14,$31,$23
-bne $23,L.2545
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2545:
-L.2543:
-br L.2547
-lda $13,7
-cmpeq $14,$31,$23
-bne $23,L.2549
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2549:
-L.2547:
-br L.2551
-lda $13,8
-cmpeq $14,$31,$23
-bne $23,L.2553
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2553:
-L.2551:
-br L.2555
-lda $13,9
-cmpeq $14,$31,$23
-bne $23,L.2557
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2557:
-L.2555:
-br L.2559
-lda $13,10
-cmpeq $14,$31,$23
-bne $23,L.2561
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2561:
-L.2559:
-br L.2563
-lda $13,11
-cmpeq $14,$31,$23
-bne $23,L.2565
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2565:
-L.2563:
-br L.2567
-lda $13,12
-cmpeq $14,$31,$23
-bne $23,L.2569
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2569:
-L.2567:
-br L.2571
-lda $13,13
-cmpeq $14,$31,$23
-bne $23,L.2573
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2573:
-L.2571:
-br L.2575
-lda $13,14
-cmpeq $14,$31,$23
-bne $23,L.2577
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2577:
-L.2575:
-br L.2579
-lda $13,15
-cmpeq $14,$31,$23
-bne $23,L.2581
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2581:
-L.2579:
-br L.2583
-lda $13,16
-cmpeq $14,$31,$23
-bne $23,L.2585
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2585:
-L.2583:
-br L.2587
-lda $13,17
-cmpeq $14,$31,$23
-bne $23,L.2589
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2589:
-L.2587:
-br L.2591
-lda $13,18
-cmpeq $14,$31,$23
-bne $23,L.2593
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2593:
-L.2591:
-br L.2595
-lda $13,16
-cmpeq $14,$31,$23
-bne $23,L.2597
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2597:
-L.2595:
-br L.2599
-lda $13,20
-cmpeq $14,$31,$23
-bne $23,L.2601
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2601:
-L.2599:
-br L.2603
-lda $13,21
-cmpeq $14,$31,$23
-bne $23,L.2605
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2605:
-L.2603:
-br L.2607
-lda $13,22
-cmpeq $14,$31,$23
-bne $23,L.2609
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2609:
-L.2607:
-br L.2611
-lda $13,23
-cmpeq $14,$31,$23
-bne $23,L.2613
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2613:
-L.2611:
-br L.2615
-lda $13,24
-cmpeq $14,$31,$23
-bne $23,L.2617
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2617:
-L.2615:
-br L.2619
-lda $13,25
-cmpeq $14,$31,$23
-bne $23,L.2621
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2621:
-L.2619:
-br L.2623
-lda $13,26
-cmpeq $14,$31,$23
-bne $23,L.2625
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2625:
-L.2623:
-br L.2627
-lda $13,27
-cmpeq $14,$31,$23
-bne $23,L.2629
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2629:
-L.2627:
-br L.2631
-lda $13,28
-cmpeq $14,$31,$23
-bne $23,L.2633
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2633:
-L.2631:
-br L.2635
-lda $13,26
-cmpeq $14,$31,$23
-bne $23,L.2637
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2637:
-L.2635:
-br L.2639
-lda $13,30
-cmpeq $14,$31,$23
-bne $23,L.2641
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2641:
-L.2639:
-br L.2643
-lda $13,31
-cmpeq $14,$31,$23
-bne $23,L.2645
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2645:
-L.2643:
-br L.2647
-lda $13,32
-cmpeq $14,$31,$23
-bne $23,L.2649
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2649:
-L.2647:
-br L.2651
-lda $13,33
-cmpeq $14,$31,$23
-bne $23,L.2653
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2653:
-L.2651:
-br L.2655
-lda $13,34
-cmpeq $14,$31,$23
-bne $23,L.2657
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2657:
-L.2655:
-br L.2659
-lda $13,35
-cmpeq $14,$31,$23
-bne $23,L.2661
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2661:
-L.2659:
-br L.2663
-lda $13,36
-cmpeq $14,$31,$23
-bne $23,L.2665
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2665:
-L.2663:
-br L.2667
-lda $13,37
-cmpeq $14,$31,$23
-bne $23,L.2669
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2669:
-L.2667:
-br L.2671
-lda $13,38
-cmpeq $14,$31,$23
-bne $23,L.2673
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2673:
-L.2671:
-br L.2675
-lda $13,39
-cmpeq $14,$31,$23
-bne $23,L.2677
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2677:
-L.2675:
-br L.2679
-lda $13,40
-cmpeq $14,$31,$23
-bne $23,L.2681
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2681:
-L.2679:
-br L.2683
-lda $13,41
-cmpeq $14,$31,$23
-bne $23,L.2685
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2685:
-L.2683:
-br L.2687
-lda $13,42
-cmpeq $14,$31,$23
-bne $23,L.2689
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2689:
-L.2687:
-br L.2691
-lda $13,43
-cmpeq $14,$31,$23
-bne $23,L.2693
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2693:
-L.2691:
-br L.2695
-lda $13,44
-cmpeq $14,$31,$23
-bne $23,L.2697
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2697:
-L.2695:
-br L.2699
-lda $13,45
-cmpeq $14,$31,$23
-bne $23,L.2701
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2701:
-L.2699:
-br L.2703
-lda $13,46
-cmpeq $14,$31,$23
-bne $23,L.2705
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2705:
-L.2703:
-br L.2707
-lda $13,47
-cmpeq $14,$31,$23
-bne $23,L.2709
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2709:
-L.2707:
-br L.2711
-lda $13,48
-cmpeq $14,$31,$23
-bne $23,L.2713
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2713:
-L.2711:
-br L.2715
-lda $13,49
-cmpeq $14,$31,$23
-bne $23,L.2717
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2717:
-L.2715:
-br L.2719
-lda $13,50
-cmpeq $14,$31,$23
-bne $23,L.2721
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2721:
-L.2719:
-br L.2723
-lda $13,51
-cmpeq $14,$31,$23
-bne $23,L.2725
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2725:
-L.2723:
-br L.2727
-lda $13,52
-cmpeq $14,$31,$23
-bne $23,L.2729
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2729:
-L.2727:
-br L.2731
-lda $13,53
-cmpeq $14,$31,$23
-bne $23,L.2733
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2733:
-L.2731:
-br L.2735
-lda $13,54
-cmpeq $14,$31,$23
-bne $23,L.2737
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2737:
-L.2735:
-br L.2739
-lda $13,55
-cmpeq $14,$31,$23
-bne $23,L.2741
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2741:
-L.2739:
-br L.2743
-lda $13,56
-cmpeq $14,$31,$23
-bne $23,L.2745
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2745:
-L.2743:
-br L.2747
-lda $13,57
-cmpeq $14,$31,$23
-bne $23,L.2749
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2749:
-L.2747:
-br L.2751
-lda $13,58
-cmpeq $14,$31,$23
-bne $23,L.2753
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2753:
-L.2751:
-br L.2755
-lda $13,56
-cmpeq $14,$31,$23
-bne $23,L.2757
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2757:
-L.2755:
-br L.2759
-lda $13,60
-cmpeq $14,$31,$23
-bne $23,L.2761
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2761:
-L.2759:
-br L.2763
-lda $13,61
-cmpeq $14,$31,$23
-bne $23,L.2765
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2765:
-L.2763:
-br L.2767
-lda $13,62
-cmpeq $14,$31,$23
-bne $23,L.2769
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2769:
-L.2767:
-br L.2771
-lda $13,63
-cmpeq $14,$31,$23
-bne $23,L.2773
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2773:
-L.2771:
-br L.2775
-lda $13,64
-cmpeq $14,$31,$23
-bne $23,L.2777
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2777:
-L.2775:
-br L.2779
-lda $13,65
-cmpeq $14,$31,$23
-bne $23,L.2781
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2781:
-L.2779:
-br L.2783
-lda $13,66
-cmpeq $14,$31,$23
-bne $23,L.2785
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2785:
-L.2783:
-br L.2787
-lda $13,67
-cmpeq $14,$31,$23
-bne $23,L.2789
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2789:
-L.2787:
-br L.2791
-lda $13,68
-cmpeq $14,$31,$23
-bne $23,L.2793
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2793:
-L.2791:
-br L.2795
-lda $13,69
-cmpeq $14,$31,$23
-bne $23,L.2797
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2797:
-L.2795:
-br L.2799
-lda $13,70
-cmpeq $14,$31,$23
-bne $23,L.2801
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2801:
-L.2799:
-br L.2803
-lda $13,71
-cmpeq $14,$31,$23
-bne $23,L.2805
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2805:
-L.2803:
-br L.2807
-lda $13,72
-cmpeq $14,$31,$23
-bne $23,L.2809
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2809:
-L.2807:
-br L.2811
-lda $13,73
-cmpeq $14,$31,$23
-bne $23,L.2813
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2813:
-L.2811:
-br L.2815
-lda $13,74
-cmpeq $14,$31,$23
-bne $23,L.2817
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2817:
-L.2815:
-br L.2819
-lda $13,75
-cmpeq $14,$31,$23
-bne $23,L.2821
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2821:
-L.2819:
-cmpeq $13,$31,$23
-bne $23,L.2823
-ldq $27,-48+192($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.2825
-lda $16,L.2518
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.2825:
-ldl $27,-68+192($sp)
-lda $27,1($27)
-stl $27,-68+192($sp)
-L.2823:
-mov $31,$13
-mov $31,$11
-mov $31,$12
-mov $12,$27
-lda $12,1($27)
-mov $31,$25
-cmpeq $27,$25,$23
-bne $23,L.2828
-mov $11,$27
-lda $11,1($27)
-cmpeq $27,$25,$23
-bne $23,L.2828
-lda $27,1
-stl $27,-80+192($sp)
-br L.2829
-L.2828:
-stl $31,-80+192($sp)
-L.2829:
-ldl $10,-80+192($sp)
-cmpeq $12,1,$23
-bne $23,L.2830
-lda $13,1
-cmpeq $14,$31,$23
-bne $23,L.2832
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2832:
-L.2830:
-cmpeq $11,$31,$23
-bne $23,L.2834
-lda $13,2
-cmpeq $14,$31,$23
-bne $23,L.2836
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2836:
-L.2834:
-cmpeq $10,$31,$23
-bne $23,L.2838
-lda $13,3
-cmpeq $14,$31,$23
-bne $23,L.2840
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2840:
-L.2838:
-cmpeq $12,$31,$23
-bne $23,L.2843
-mov $11,$25
-lda $11,1($25)
-cmpeq $25,$31,$23
-bne $23,L.2843
-lda $27,1
-stl $27,-84+192($sp)
-br L.2844
-L.2843:
-stl $31,-84+192($sp)
-L.2844:
-ldl $10,-84+192($sp)
-cmpeq $12,1,$23
-bne $23,L.2845
-lda $13,4
-cmpeq $14,$31,$23
-bne $23,L.2847
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2847:
-L.2845:
-cmpeq $11,1,$23
-bne $23,L.2849
-lda $13,5
-cmpeq $14,$31,$23
-bne $23,L.2851
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2851:
-L.2849:
-cmpeq $10,$31,$23
-bne $23,L.2853
-lda $13,6
-cmpeq $14,$31,$23
-bne $23,L.2855
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2855:
-L.2853:
-mov $12,$27
-subl $27,1,$12
-mov $31,$25
-cmpeq $27,$25,$23
-bne $23,L.2858
-cmpeq $11,$25,$23
-bne $23,L.2858
-lda $27,1
-stl $27,-88+192($sp)
-br L.2859
-L.2858:
-stl $31,-88+192($sp)
-L.2859:
-ldl $10,-88+192($sp)
-cmpeq $12,$31,$23
-bne $23,L.2860
-lda $13,7
-cmpeq $14,$31,$23
-bne $23,L.2862
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2862:
-L.2860:
-cmpeq $11,1,$23
-bne $23,L.2864
-lda $13,8
-cmpeq $14,$31,$23
-bne $23,L.2866
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2866:
-L.2864:
-cmpeq $10,1,$23
-bne $23,L.2868
-lda $13,9
-cmpeq $14,$31,$23
-bne $23,L.2870
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2870:
-L.2868:
-cmpeq $12,$31,$23
-bne $23,L.2873
-mov $11,$25
-subl $25,1,$11
-cmpeq $25,$31,$23
-bne $23,L.2873
-lda $27,1
-stl $27,-92+192($sp)
-br L.2874
-L.2873:
-stl $31,-92+192($sp)
-L.2874:
-ldl $10,-92+192($sp)
-cmpeq $12,$31,$23
-bne $23,L.2875
-lda $13,10
-cmpeq $14,$31,$23
-bne $23,L.2877
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2877:
-L.2875:
-cmpeq $11,1,$23
-bne $23,L.2879
-lda $13,11
-cmpeq $14,$31,$23
-bne $23,L.2881
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2881:
-L.2879:
-cmpeq $10,$31,$23
-bne $23,L.2883
-lda $13,12
-cmpeq $14,$31,$23
-bne $23,L.2885
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2885:
-L.2883:
-cmpeq $13,$31,$23
-bne $23,L.2887
-ldq $27,-48+192($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.2889
-lda $16,L.2518
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.2889:
-ldl $27,-68+192($sp)
-lda $27,2($27)
-stl $27,-68+192($sp)
-L.2887:
-mov $31,$13
-mov $31,$11
-mov $31,$12
-mov $12,$27
-lda $12,1($27)
-mov $31,$25
-cmpeq $27,$25,$23
-beq $23,L.2894
-cmpeq $11,$25,$23
-bne $23,L.2892
-L.2894:
-lda $27,1
-stl $27,-96+192($sp)
-br L.2893
-L.2892:
-stl $31,-96+192($sp)
-L.2893:
-ldl $10,-96+192($sp)
-cmpeq $12,1,$23
-bne $23,L.2895
-lda $13,1
-cmpeq $14,$31,$23
-bne $23,L.2897
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2897:
-L.2895:
-cmpeq $11,$31,$23
-bne $23,L.2899
-lda $13,2
-cmpeq $14,$31,$23
-bne $23,L.2901
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2901:
-L.2899:
-cmpeq $10,$31,$23
-bne $23,L.2903
-lda $13,3
-cmpeq $14,$31,$23
-bne $23,L.2905
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2905:
-L.2903:
-mov $11,$27
-lda $11,1($27)
-mov $31,$25
-cmpeq $27,$25,$23
-beq $23,L.2910
-cmpeq $12,$25,$23
-bne $23,L.2908
-L.2910:
-lda $27,1
-stl $27,-100+192($sp)
-br L.2909
-L.2908:
-stl $31,-100+192($sp)
-L.2909:
-ldl $10,-100+192($sp)
-cmpeq $12,1,$23
-bne $23,L.2911
-lda $13,4
-cmpeq $14,$31,$23
-bne $23,L.2913
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2913:
-L.2911:
-cmpeq $11,1,$23
-bne $23,L.2915
-lda $13,5
-cmpeq $14,$31,$23
-bne $23,L.2917
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2917:
-L.2915:
-cmpeq $10,1,$23
-bne $23,L.2919
-lda $13,6
-cmpeq $14,$31,$23
-bne $23,L.2921
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2921:
-L.2919:
-mov $12,$27
-subl $27,1,$12
-mov $31,$25
-cmpeq $27,$25,$23
-beq $23,L.2926
-mov $11,$27
-subl $27,1,$11
-cmpeq $27,$25,$23
-bne $23,L.2924
-L.2926:
-lda $27,1
-stl $27,-104+192($sp)
-br L.2925
-L.2924:
-stl $31,-104+192($sp)
-L.2925:
-ldl $10,-104+192($sp)
-cmpeq $12,$31,$23
-bne $23,L.2927
-lda $13,7
-cmpeq $14,$31,$23
-bne $23,L.2929
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2929:
-L.2927:
-cmpeq $11,1,$23
-bne $23,L.2931
-lda $13,8
-cmpeq $14,$31,$23
-bne $23,L.2933
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2933:
-L.2931:
-cmpeq $10,1,$23
-bne $23,L.2935
-lda $13,9
-cmpeq $14,$31,$23
-bne $23,L.2937
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2937:
-L.2935:
-mov $31,$27
-cmpeq $12,$27,$23
-beq $23,L.2942
-mov $11,$25
-subl $25,1,$11
-cmpeq $25,$27,$23
-bne $23,L.2940
-L.2942:
-lda $27,1
-stl $27,-108+192($sp)
-br L.2941
-L.2940:
-stl $31,-108+192($sp)
-L.2941:
-ldl $10,-108+192($sp)
-cmpeq $12,$31,$23
-bne $23,L.2943
-lda $13,10
-cmpeq $14,$31,$23
-bne $23,L.2945
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2945:
-L.2943:
-cmpeq $11,$31,$23
-bne $23,L.2947
-lda $13,11
-cmpeq $14,$31,$23
-bne $23,L.2949
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2949:
-L.2947:
-cmpeq $10,1,$23
-bne $23,L.2951
-lda $13,12
-cmpeq $14,$31,$23
-bne $23,L.2953
-lda $16,L.2517
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.2953:
-L.2951:
-cmpeq $13,$31,$23
-bne $23,L.2955
-ldq $27,-48+192($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.2957
-lda $16,L.2518
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.2957:
-ldl $27,-68+192($sp)
-lda $27,4($27)
-stl $27,-68+192($sp)
-L.2955:
-mov $31,$11
-mov $31,$12
-stl $31,-72+192($sp)
-lda $25,1
-stl $25,-76+192($sp)
-ldl $25,-76+192($sp)
-cmpeq $25,$31,$23
-bne $23,L.2961
-ldl $27,-72+192($sp)
-stl $27,-112+192($sp)
-br L.2962
-L.2961:
-ldl $27,-76+192($sp)
-cmpeq $27,$31,$23
-bne $23,L.2963
-mov $12,$27
-lda $12,1($27)
-stl $27,-116+192($sp)
-br L.2964
-L.2963:
-mov $11,$27
-lda $11,1($27)
-stl $27,-116+192($sp)
-L.2964:
-ldl $27,-116+192($sp)
-stl $27,-112+192($sp)
-L.2962:
-ldl $10,-112+192($sp)
-cmpeq $10,$31,$23
-beq $23,L.2968
-cmpeq $12,$31,$23
-beq $23,L.2968
-cmpeq $11,$31,$23
-bne $23,L.2965
-L.2968:
-ldq $27,-48+192($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.2969
-lda $16,L.2518
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.2969:
-ldl $27,-68+192($sp)
-lda $27,8($27)
-stl $27,-68+192($sp)
-L.2965:
-ldl $27,-76+192($sp)
-cmpeq $27,$31,$23
-bne $23,L.2976
-ldl $27,-72+192($sp)
-stl $27,-120+192($sp)
-br L.2977
-L.2976:
-lda $27,1
-stl $27,-120+192($sp)
-L.2977:
-ldl $25,-120+192($sp)
-cmpeq $25,$31,$23
-beq $23,L.2975
-ldl $25,-72+192($sp)
-cmpeq $25,$31,$23
-bne $23,L.2978
-lda $27,1
-stl $27,-124+192($sp)
-br L.2979
-L.2978:
-ldl $27,-72+192($sp)
-stl $27,-124+192($sp)
-L.2979:
-ldl $27,-124+192($sp)
-cmpeq $27,$31,$23
-bne $23,L.2971
-L.2975:
-ldq $27,-48+192($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.2980
-lda $16,L.2518
-lda $17,16
-jsr $26,printf
-ldgp $gp,0($26)
-L.2980:
-ldl $27,-68+192($sp)
-lda $27,16($27)
-stl $27,-68+192($sp)
-L.2971:
-ldl $0,-68+192($sp)
-L.2516:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,192($sp)
-ret
-.end s7813
-.sdata
-.align 0
-L.2983:
-.byte 115
-.byte 56
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.2984:
-.byte 115
-.byte 56
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.2985:
-.byte 82
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 117
-.byte 110
-.byte 114
-.byte 101
-.byte 108
-.byte 105
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.2986:
-.byte 37
-.byte 100
-.byte 32
-.byte 114
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 118
-.byte 97
-.byte 114
-.byte 105
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.globl s81
-.text
-.text
-.ent s81
-s81:
-ldgp $gp,0($27)
-lda $sp,-160($sp)
-.mask 0x5007e00,-104
-.frame $sp,160,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-stq $16,112($sp)
-.prologue 1
-stl $31,-96+160($sp)
-stl $31,-84+160($sp)
-stl $31,-88+160($sp)
-stl $31,-92+160($sp)
-lda $27,L.2984
-stq $27,-72+160($sp)
-ldq $27,-48+160($sp)
-lda $27,60($27)
-stq $27,-80+160($sp)
-L.2987:
-L.2988:
-ldq $27,-80+160($sp)
-lda $25,1($27)
-stq $25,-80+160($sp)
-ldq $25,-72+160($sp)
-lda $22,1($25)
-stq $22,-72+160($sp)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.2987
-lda $27,1
-stl $27,-60+160($sp)
-mov $31,$11
-L.2990:
-ldl $27,-60+160($sp)
-mov $27,$25
-mov $25,$14
-mov $25,$10
-lda $13,-60+160($sp)
-lda $9,-60+160($sp)
-mov $27,$12
-stl $27,-64+160($sp)
-sll $14,8*(8-1),$27
-sra $27,8*(8-1),$27
-sll $10,8*(8-1),$25
-sra $25,8*(8-1),$25
-cmpeq $27,$25,$23
-bne $23,L.2994
-lda $27,1
-stl $27,-84+160($sp)
-L.2994:
-mov $13,$27
-mov $9,$25
-cmpeq $27,$25,$23
-bne $23,L.2996
-lda $27,1
-stl $27,-88+160($sp)
-L.2996:
-ldl $27,-64+160($sp)
-cmpeq $12,$27,$23
-bne $23,L.2998
-lda $27,1
-stl $27,-92+160($sp)
-L.2998:
-ldl $27,-60+160($sp)
-sll $27,1,$27
-addl $27,0,$27
-stl $27,-60+160($sp)
-L.2991:
-lda $11,1($11)
-cmplt $11,50,$23
-bne $23,L.2990
-ldl $27,-84+160($sp)
-cmpeq $27,$31,$23
-bne $23,L.3000
-ldl $27,-96+160($sp)
-lda $27,1($27)
-stl $27,-96+160($sp)
-ldq $27,-48+160($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3002
-lda $16,L.2983
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.3002:
-L.3000:
-ldl $27,-88+160($sp)
-cmpeq $27,$31,$23
-bne $23,L.3004
-ldl $27,-96+160($sp)
-lda $27,2($27)
-stl $27,-96+160($sp)
-ldq $27,-48+160($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3006
-lda $16,L.2983
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.3006:
-L.3004:
-ldl $27,-92+160($sp)
-cmpeq $27,$31,$23
-bne $23,L.3008
-ldl $27,-96+160($sp)
-lda $27,4($27)
-stl $27,-96+160($sp)
-ldq $27,-48+160($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3010
-lda $16,L.2983
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.3010:
-L.3008:
-jsr $26,regc
-ldgp $gp,0($26)
-stl $0,-60+160($sp)
-ldq $27,-48+160($sp)
-ldl $27,40($27)
-cmpeq $27,$31,$23
-bne $23,L.3012
-ldl $27,-60+160($sp)
-cmplt $27,$31,$23
-beq $23,L.3014
-lda $16,L.2985
-lda $17,L.423
-jsr $26,printf
-ldgp $gp,0($26)
-br L.3015
-L.3014:
-lda $16,L.2986
-ldl $17,-60+160($sp)
-lda $18,L.423
-jsr $26,printf
-ldgp $gp,0($26)
-L.3015:
-L.3012:
-jsr $26,regp
-ldgp $gp,0($26)
-stl $0,-60+160($sp)
-ldq $27,-48+160($sp)
-ldl $27,40($27)
-cmpeq $27,$31,$23
-bne $23,L.3016
-ldl $27,-60+160($sp)
-cmplt $27,$31,$23
-beq $23,L.3018
-lda $16,L.2985
-lda $17,L.3020
-jsr $26,printf
-ldgp $gp,0($26)
-br L.3019
-L.3018:
-lda $16,L.2986
-ldl $17,-60+160($sp)
-lda $18,L.3020
-jsr $26,printf
-ldgp $gp,0($26)
-L.3019:
-L.3016:
-jsr $26,regi
-ldgp $gp,0($26)
-stl $0,-60+160($sp)
-ldq $27,-48+160($sp)
-ldl $27,40($27)
-cmpeq $27,$31,$23
-bne $23,L.3021
-ldl $27,-60+160($sp)
-cmplt $27,$31,$23
-beq $23,L.3023
-lda $16,L.2985
-lda $17,L.424
-jsr $26,printf
-ldgp $gp,0($26)
-br L.3024
-L.3023:
-lda $16,L.2986
-ldl $17,-60+160($sp)
-lda $18,L.424
-jsr $26,printf
-ldgp $gp,0($26)
-L.3024:
-L.3021:
-ldl $0,-96+160($sp)
-L.2982:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,160($sp)
-ret
-.end s81
-.globl regc
-.text
-.ent regc
-regc:
-ldgp $gp,0($27)
-lda $sp,-272($sp)
-.mask 0x5007e00,-216
-.frame $sp,272,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-.prologue 1
-stb $31,-190+272($sp)
-lda $27,1
-stb $27,-169+272($sp)
-lda $27,2
-stb $27,-170+272($sp)
-lda $27,3
-stb $27,-171+272($sp)
-lda $14,4
-lda $27,5
-stb $27,-172+272($sp)
-lda $13,6
-lda $27,7
-stb $27,-173+272($sp)
-lda $12,8
-lda $27,9
-stb $27,-174+272($sp)
-lda $11,10
-lda $27,11
-stb $27,-175+272($sp)
-lda $10,12
-lda $27,13
-stb $27,-176+272($sp)
-lda $9,14
-lda $27,15
-stb $27,-177+272($sp)
-lda $27,16
-stb $27,-57+272($sp)
-lda $27,17
-stb $27,-178+272($sp)
-lda $27,18
-stb $27,-58+272($sp)
-lda $27,19
-stb $27,-179+272($sp)
-lda $27,20
-stb $27,-59+272($sp)
-lda $27,21
-stb $27,-180+272($sp)
-lda $27,22
-stb $27,-60+272($sp)
-lda $27,23
-stb $27,-181+272($sp)
-lda $27,24
-stb $27,-61+272($sp)
-lda $27,25
-stb $27,-182+272($sp)
-lda $27,26
-stb $27,-62+272($sp)
-lda $27,27
-stb $27,-183+272($sp)
-lda $27,28
-stb $27,-63+272($sp)
-lda $27,29
-stb $27,-184+272($sp)
-lda $27,30
-stb $27,-64+272($sp)
-lda $27,31
-stb $27,-185+272($sp)
-lda $27,32
-stb $27,-65+272($sp)
-lda $27,33
-stb $27,-186+272($sp)
-lda $27,34
-stb $27,-66+272($sp)
-lda $27,35
-stb $27,-187+272($sp)
-lda $27,36
-stb $27,-188+272($sp)
-lda $27,37
-stb $27,-189+272($sp)
-lda $27,38
-stb $27,-191+272($sp)
-lda $27,-169+272($sp)
-lda $25,-190+272($sp)
-subq $27,$25,$25
-stl $25,-156+272($sp)
-lda $25,-170+272($sp)
-subq $25,$27,$27
-stl $27,-152+272($sp)
-lda $27,-171+272($sp)
-lda $25,-170+272($sp)
-subq $27,$25,$27
-stl $27,-148+272($sp)
-lda $27,-172+272($sp)
-lda $25,-171+272($sp)
-subq $27,$25,$27
-stl $27,-144+272($sp)
-lda $27,-173+272($sp)
-lda $25,-172+272($sp)
-subq $27,$25,$27
-stl $27,-140+272($sp)
-lda $27,-174+272($sp)
-lda $25,-173+272($sp)
-subq $27,$25,$27
-stl $27,-136+272($sp)
-lda $27,-175+272($sp)
-lda $25,-174+272($sp)
-subq $27,$25,$27
-stl $27,-132+272($sp)
-lda $27,-176+272($sp)
-lda $25,-175+272($sp)
-subq $27,$25,$27
-stl $27,-128+272($sp)
-lda $27,-177+272($sp)
-lda $25,-176+272($sp)
-subq $27,$25,$27
-stl $27,-124+272($sp)
-lda $27,-178+272($sp)
-lda $25,-177+272($sp)
-subq $27,$25,$27
-stl $27,-120+272($sp)
-lda $27,-179+272($sp)
-lda $25,-178+272($sp)
-subq $27,$25,$27
-stl $27,-116+272($sp)
-lda $27,-180+272($sp)
-lda $25,-179+272($sp)
-subq $27,$25,$27
-stl $27,-112+272($sp)
-lda $27,-181+272($sp)
-lda $25,-180+272($sp)
-subq $27,$25,$27
-stl $27,-108+272($sp)
-lda $27,-182+272($sp)
-lda $25,-181+272($sp)
-subq $27,$25,$27
-stl $27,-104+272($sp)
-lda $27,-183+272($sp)
-lda $25,-182+272($sp)
-subq $27,$25,$27
-stl $27,-100+272($sp)
-lda $27,-184+272($sp)
-lda $25,-183+272($sp)
-subq $27,$25,$27
-stl $27,-96+272($sp)
-lda $27,-185+272($sp)
-lda $25,-184+272($sp)
-subq $27,$25,$27
-stl $27,-92+272($sp)
-lda $27,-186+272($sp)
-lda $25,-185+272($sp)
-subq $27,$25,$27
-stl $27,-88+272($sp)
-lda $27,-187+272($sp)
-lda $25,-186+272($sp)
-subq $27,$25,$27
-stl $27,-84+272($sp)
-lda $27,-188+272($sp)
-lda $25,-187+272($sp)
-subq $27,$25,$27
-stl $27,-80+272($sp)
-lda $27,-189+272($sp)
-lda $25,-188+272($sp)
-subq $27,$25,$27
-stl $27,-76+272($sp)
-lda $27,-191+272($sp)
-lda $25,-189+272($sp)
-subq $27,$25,$27
-stl $27,-72+272($sp)
-ldl $27,-156+272($sp)
-stl $27,-168+272($sp)
-lda $27,1
-stl $27,-164+272($sp)
-stl $31,-160+272($sp)
-L.3047:
-ldl $27,-164+272($sp)
-cmpeq $27,1,$23
-bne $23,L.3053
-cmpeq $27,2,$23
-bne $23,L.3056
-cmpeq $27,3,$23
-bne $23,L.3061
-br L.3051
-L.3053:
-ldl $27,-160+272($sp)
-sll $27,2,$27
-lda $25,-156+272($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-168+272($sp)
-cmpeq $27,$25,$23
-bne $23,L.3052
-lda $27,2
-ldl $25,-160+272($sp)
-sll $25,2,$25
-lda $22,-156+272($sp)
-addq $25,$22,$25
-ldl $25,($25)
-stl $25,-200+272($sp)
-stl $27,-164+272($sp)
-lda $27,1
-stl $27,-196+272($sp)
-br L.3052
-L.3056:
-ldl $27,-160+272($sp)
-sll $27,2,$27
-lda $25,-156+272($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-168+272($sp)
-cmpeq $27,$25,$23
-beq $23,L.3057
-lda $27,3
-stl $27,-164+272($sp)
-br L.3052
-L.3057:
-ldl $27,-160+272($sp)
-sll $27,2,$27
-lda $25,-156+272($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-200+272($sp)
-cmpeq $27,$25,$23
-beq $23,L.3059
-ldl $27,-196+272($sp)
-lda $27,1($27)
-stl $27,-196+272($sp)
-br L.3052
-L.3059:
-lda $27,4
-stl $27,-164+272($sp)
-br L.3052
-L.3061:
-ldl $27,-160+272($sp)
-sll $27,2,$27
-lda $25,-156+272($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-168+272($sp)
-cmpeq $27,$25,$23
-bne $23,L.3052
-lda $27,4
-stl $27,-164+272($sp)
-L.3051:
-L.3052:
-L.3048:
-ldl $27,-160+272($sp)
-lda $27,1($27)
-stl $27,-160+272($sp)
-ldl $27,-160+272($sp)
-cmplt $27,22,$23
-bne $23,L.3047
-ldl $27,-164+272($sp)
-cmpeq $27,3,$23
-beq $23,L.3064
-lda $27,16
-ldl $25,-196+272($sp)
-subl $27,$25,$0
-br L.3025
-L.3064:
-lda $0,-1
-L.3025:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,272($sp)
-ret
-.end regc
-.globl regi
-.text
-.ent regi
-regi:
-ldgp $gp,0($27)
-lda $sp,-368($sp)
-.mask 0x5007e00,-312
-.frame $sp,368,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-.prologue 1
-stl $31,-284+368($sp)
-lda $27,1
-stl $27,-200+368($sp)
-lda $27,2
-stl $27,-204+368($sp)
-lda $27,3
-stl $27,-208+368($sp)
-lda $14,4
-lda $27,5
-stl $27,-212+368($sp)
-lda $13,6
-lda $27,7
-stl $27,-216+368($sp)
-lda $12,8
-lda $27,9
-stl $27,-220+368($sp)
-lda $11,10
-lda $27,11
-stl $27,-224+368($sp)
-lda $10,12
-lda $27,13
-stl $27,-228+368($sp)
-lda $9,14
-lda $27,15
-stl $27,-232+368($sp)
-lda $27,16
-stl $27,-60+368($sp)
-lda $27,17
-stl $27,-236+368($sp)
-lda $27,18
-stl $27,-64+368($sp)
-lda $27,19
-stl $27,-240+368($sp)
-lda $27,20
-stl $27,-68+368($sp)
-lda $27,21
-stl $27,-244+368($sp)
-lda $27,22
-stl $27,-72+368($sp)
-lda $27,23
-stl $27,-248+368($sp)
-lda $27,24
-stl $27,-76+368($sp)
-lda $27,25
-stl $27,-252+368($sp)
-lda $27,26
-stl $27,-80+368($sp)
-lda $27,27
-stl $27,-256+368($sp)
-lda $27,28
-stl $27,-84+368($sp)
-lda $27,29
-stl $27,-260+368($sp)
-lda $27,30
-stl $27,-88+368($sp)
-lda $27,31
-stl $27,-264+368($sp)
-lda $27,32
-stl $27,-92+368($sp)
-lda $27,33
-stl $27,-268+368($sp)
-lda $27,34
-stl $27,-96+368($sp)
-lda $27,35
-stl $27,-272+368($sp)
-lda $27,36
-stl $27,-276+368($sp)
-lda $27,37
-stl $27,-280+368($sp)
-lda $27,38
-stl $27,-288+368($sp)
-lda $27,-200+368($sp)
-stq $27,-304+368($sp)
-lda $25,-284+368($sp)
-subq $27,$25,$25
-divq $25,4,$25
-mov $25,$27
-stl $27,-184+368($sp)
-lda $27,-204+368($sp)
-ldq $25,-304+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-180+368($sp)
-lda $27,-208+368($sp)
-lda $25,-204+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-176+368($sp)
-lda $27,-212+368($sp)
-lda $25,-208+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-172+368($sp)
-lda $27,-216+368($sp)
-lda $25,-212+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-168+368($sp)
-lda $27,-220+368($sp)
-lda $25,-216+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-164+368($sp)
-lda $27,-224+368($sp)
-lda $25,-220+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-160+368($sp)
-lda $27,-228+368($sp)
-lda $25,-224+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-156+368($sp)
-lda $27,-232+368($sp)
-lda $25,-228+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-152+368($sp)
-lda $27,-236+368($sp)
-lda $25,-232+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-148+368($sp)
-lda $27,-240+368($sp)
-lda $25,-236+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-144+368($sp)
-lda $27,-244+368($sp)
-lda $25,-240+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-140+368($sp)
-lda $27,-248+368($sp)
-lda $25,-244+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-136+368($sp)
-lda $27,-252+368($sp)
-lda $25,-248+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-132+368($sp)
-lda $27,-256+368($sp)
-lda $25,-252+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-128+368($sp)
-lda $27,-260+368($sp)
-lda $25,-256+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-124+368($sp)
-lda $27,-264+368($sp)
-lda $25,-260+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-120+368($sp)
-lda $27,-268+368($sp)
-lda $25,-264+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-116+368($sp)
-lda $27,-272+368($sp)
-lda $25,-268+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-112+368($sp)
-lda $27,-276+368($sp)
-lda $25,-272+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-108+368($sp)
-lda $27,-280+368($sp)
-lda $25,-276+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-104+368($sp)
-lda $27,-288+368($sp)
-lda $25,-280+368($sp)
-subq $27,$25,$27
-divq $27,4,$27
-stl $27,-100+368($sp)
-ldl $27,-184+368($sp)
-stl $27,-196+368($sp)
-lda $27,1
-stl $27,-192+368($sp)
-stl $31,-188+368($sp)
-L.3088:
-ldl $27,-192+368($sp)
-cmpeq $27,1,$23
-bne $23,L.3094
-cmpeq $27,2,$23
-bne $23,L.3097
-cmpeq $27,3,$23
-bne $23,L.3102
-br L.3092
-L.3094:
-ldl $27,-188+368($sp)
-sll $27,2,$27
-lda $25,-184+368($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-196+368($sp)
-cmpeq $27,$25,$23
-bne $23,L.3093
-lda $27,2
-ldl $25,-188+368($sp)
-sll $25,2,$25
-lda $22,-184+368($sp)
-addq $25,$22,$25
-ldl $25,($25)
-stl $25,-296+368($sp)
-stl $27,-192+368($sp)
-lda $27,1
-stl $27,-292+368($sp)
-br L.3093
-L.3097:
-ldl $27,-188+368($sp)
-sll $27,2,$27
-lda $25,-184+368($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-196+368($sp)
-cmpeq $27,$25,$23
-beq $23,L.3098
-lda $27,3
-stl $27,-192+368($sp)
-br L.3093
-L.3098:
-ldl $27,-188+368($sp)
-sll $27,2,$27
-lda $25,-184+368($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-296+368($sp)
-cmpeq $27,$25,$23
-beq $23,L.3100
-ldl $27,-292+368($sp)
-lda $27,1($27)
-stl $27,-292+368($sp)
-br L.3093
-L.3100:
-lda $27,4
-stl $27,-192+368($sp)
-br L.3093
-L.3102:
-ldl $27,-188+368($sp)
-sll $27,2,$27
-lda $25,-184+368($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-196+368($sp)
-cmpeq $27,$25,$23
-bne $23,L.3093
-lda $27,4
-stl $27,-192+368($sp)
-L.3092:
-L.3093:
-L.3089:
-ldl $27,-188+368($sp)
-lda $27,1($27)
-stl $27,-188+368($sp)
-ldl $27,-188+368($sp)
-cmplt $27,22,$23
-bne $23,L.3088
-ldl $27,-192+368($sp)
-cmpeq $27,3,$23
-beq $23,L.3105
-lda $27,16
-ldl $25,-292+368($sp)
-subl $27,$25,$0
-br L.3066
-L.3105:
-lda $0,-1
-L.3066:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,368($sp)
-ret
-.end regi
-.globl regp
-.text
-.ent regp
-regp:
-ldgp $gp,0($27)
-lda $sp,-512($sp)
-.mask 0x5007e00,-456
-.frame $sp,512,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-.prologue 1
-lda $27,-416+512($sp)
-stq $27,-416+512($sp)
-lda $27,-368+512($sp)
-stq $27,-368+512($sp)
-lda $27,-376+512($sp)
-stq $27,-376+512($sp)
-lda $27,-384+512($sp)
-stq $27,-384+512($sp)
-lda $14,-240+512($sp)
-lda $27,-240+512($sp)
-stq $27,-240+512($sp)
-lda $13,-248+512($sp)
-lda $27,-248+512($sp)
-stq $27,-248+512($sp)
-lda $12,-256+512($sp)
-lda $27,-256+512($sp)
-stq $27,-256+512($sp)
-lda $11,-264+512($sp)
-lda $27,-264+512($sp)
-stq $27,-264+512($sp)
-lda $10,-272+512($sp)
-lda $27,-272+512($sp)
-stq $27,-272+512($sp)
-lda $9,-280+512($sp)
-lda $27,-280+512($sp)
-stq $27,-280+512($sp)
-lda $27,-288+512($sp)
-stq $27,-64+512($sp)
-lda $27,-288+512($sp)
-stq $27,-288+512($sp)
-lda $27,-296+512($sp)
-stq $27,-72+512($sp)
-lda $27,-296+512($sp)
-stq $27,-296+512($sp)
-lda $27,-304+512($sp)
-stq $27,-80+512($sp)
-lda $27,-304+512($sp)
-stq $27,-304+512($sp)
-lda $27,-312+512($sp)
-stq $27,-88+512($sp)
-lda $27,-312+512($sp)
-stq $27,-312+512($sp)
-lda $27,-320+512($sp)
-stq $27,-96+512($sp)
-lda $27,-320+512($sp)
-stq $27,-320+512($sp)
-lda $27,-328+512($sp)
-stq $27,-104+512($sp)
-lda $27,-328+512($sp)
-stq $27,-328+512($sp)
-lda $27,-336+512($sp)
-stq $27,-112+512($sp)
-lda $27,-336+512($sp)
-stq $27,-336+512($sp)
-lda $27,-344+512($sp)
-stq $27,-120+512($sp)
-lda $27,-344+512($sp)
-stq $27,-344+512($sp)
-lda $27,-352+512($sp)
-stq $27,-128+512($sp)
-lda $27,-352+512($sp)
-stq $27,-352+512($sp)
-lda $27,-360+512($sp)
-stq $27,-136+512($sp)
-lda $27,-360+512($sp)
-stq $27,-360+512($sp)
-lda $27,-392+512($sp)
-stq $27,-392+512($sp)
-lda $27,-400+512($sp)
-stq $27,-400+512($sp)
-lda $27,-424+512($sp)
-stq $27,-424+512($sp)
-lda $27,-368+512($sp)
-stq $27,-440+512($sp)
-lda $25,-416+512($sp)
-subq $27,$25,$25
-divq $25,8,$25
-mov $25,$27
-stl $27,-224+512($sp)
-lda $27,-376+512($sp)
-ldq $25,-440+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-220+512($sp)
-lda $27,-384+512($sp)
-lda $25,-376+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-216+512($sp)
-lda $27,-240+512($sp)
-lda $25,-384+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-212+512($sp)
-lda $27,-248+512($sp)
-lda $25,-240+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-208+512($sp)
-lda $27,-256+512($sp)
-lda $25,-248+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-204+512($sp)
-lda $27,-264+512($sp)
-lda $25,-256+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-200+512($sp)
-lda $27,-272+512($sp)
-lda $25,-264+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-196+512($sp)
-lda $27,-280+512($sp)
-lda $25,-272+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-192+512($sp)
-lda $27,-288+512($sp)
-lda $25,-280+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-188+512($sp)
-lda $27,-296+512($sp)
-lda $25,-288+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-184+512($sp)
-lda $27,-304+512($sp)
-lda $25,-296+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-180+512($sp)
-lda $27,-312+512($sp)
-lda $25,-304+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-176+512($sp)
-lda $27,-320+512($sp)
-lda $25,-312+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-172+512($sp)
-lda $27,-328+512($sp)
-lda $25,-320+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-168+512($sp)
-lda $27,-336+512($sp)
-lda $25,-328+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-164+512($sp)
-lda $27,-344+512($sp)
-lda $25,-336+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-160+512($sp)
-lda $27,-352+512($sp)
-lda $25,-344+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-156+512($sp)
-lda $27,-360+512($sp)
-lda $25,-352+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-152+512($sp)
-lda $27,-392+512($sp)
-lda $25,-360+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-148+512($sp)
-lda $27,-400+512($sp)
-lda $25,-392+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-144+512($sp)
-lda $27,-424+512($sp)
-lda $25,-400+512($sp)
-subq $27,$25,$27
-divq $27,8,$27
-stl $27,-140+512($sp)
-ldl $27,-224+512($sp)
-stl $27,-404+512($sp)
-lda $27,1
-stl $27,-232+512($sp)
-stl $31,-228+512($sp)
-L.3129:
-ldl $27,-232+512($sp)
-cmpeq $27,1,$23
-bne $23,L.3135
-cmpeq $27,2,$23
-bne $23,L.3138
-cmpeq $27,3,$23
-bne $23,L.3143
-br L.3133
-L.3135:
-ldl $27,-228+512($sp)
-sll $27,2,$27
-lda $25,-224+512($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-404+512($sp)
-cmpeq $27,$25,$23
-bne $23,L.3134
-lda $27,2
-ldl $25,-228+512($sp)
-sll $25,2,$25
-lda $22,-224+512($sp)
-addq $25,$22,$25
-ldl $25,($25)
-stl $25,-432+512($sp)
-stl $27,-232+512($sp)
-lda $27,1
-stl $27,-428+512($sp)
-br L.3134
-L.3138:
-ldl $27,-228+512($sp)
-sll $27,2,$27
-lda $25,-224+512($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-404+512($sp)
-cmpeq $27,$25,$23
-beq $23,L.3139
-lda $27,3
-stl $27,-232+512($sp)
-br L.3134
-L.3139:
-ldl $27,-228+512($sp)
-sll $27,2,$27
-lda $25,-224+512($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-432+512($sp)
-cmpeq $27,$25,$23
-beq $23,L.3141
-ldl $27,-428+512($sp)
-lda $27,1($27)
-stl $27,-428+512($sp)
-br L.3134
-L.3141:
-lda $27,4
-stl $27,-232+512($sp)
-br L.3134
-L.3143:
-ldl $27,-228+512($sp)
-sll $27,2,$27
-lda $25,-224+512($sp)
-addq $27,$25,$27
-ldl $27,($27)
-ldl $25,-404+512($sp)
-cmpeq $27,$25,$23
-bne $23,L.3134
-lda $27,4
-stl $27,-232+512($sp)
-L.3133:
-L.3134:
-L.3130:
-ldl $27,-228+512($sp)
-lda $27,1($27)
-stl $27,-228+512($sp)
-ldl $27,-228+512($sp)
-cmplt $27,22,$23
-bne $23,L.3129
-ldl $27,-232+512($sp)
-cmpeq $27,3,$23
-beq $23,L.3146
-lda $27,16
-ldl $25,-428+512($sp)
-subl $27,$25,$0
-br L.3107
-L.3146:
-lda $0,-1
-L.3107:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,512($sp)
-ret
-.end regp
-.lcomm L.3149,420
-.sdata
-.align 0
-L.3150:
-.byte 115
-.byte 56
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.3151:
-.byte 115
-.byte 56
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s84
-.text
-.text
-.ent s84
-s84:
-ldgp $gp,0($27)
-lda $sp,-368($sp)
-.fmask 0x200,-368
-.mask 0x5007e00,-304
-.frame $sp,368,$26,48
-stt $f9,0($sp)
-stq $9,8($sp)
-stq $10,16($sp)
-stq $11,24($sp)
-stq $12,32($sp)
-stq $13,40($sp)
-stq $14,48($sp)
-stq $24,56($sp)
-stq $26,64($sp)
-mov $16,$14
-.prologue 1
-lda $10,L.3151
-lda $9,60($14)
-stl $31,-268+368($sp)
-L.3152:
-L.3153:
-mov $9,$27
-lda $9,1($27)
-mov $10,$25
-lda $10,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.3152
-lda $16,3
-jsr $26,fip
-ldgp $gp,0($26)
-stq $0,-280+368($sp)
-ldq $27,-280+368($sp)
-ldl $27,($27)
-cmpeq $27,3,$23
-bne $23,L.3155
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.3157
-lda $16,L.3150
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.3157:
-ldl $27,-268+368($sp)
-lda $27,1($27)
-stl $27,-268+368($sp)
-L.3155:
-lda $27,glork
-stq $27,-288+368($sp)
-lda $16,4
-ldq $27,-288+368($sp)
-jsr $26,($27)
-ldgp $gp,0($26)
-cmpeq $0,4,$23
-bne $23,L.3159
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.3161
-lda $16,L.3150
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.3161:
-ldl $27,-268+368($sp)
-lda $27,2($27)
-stl $27,-268+368($sp)
-L.3159:
-mov $31,$12
-L.3163:
-sll $12,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lda $25,-124+368($sp)
-addq $27,$25,$27
-stq $12,-56+368($sp)
-ldt $f30,-56+368($sp)
-cvtqs $f30,$f30
-sts $f30,($27)
-sll $12,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$25
-lda $22,-264+368($sp)
-addq $25,$22,$25
-sll $27,2,$27
-lda $22,-124+368($sp)
-addq $27,$22,$27
-stq $27,($25)
-L.3164:
-lda $12,1($12)
-cmplt $12,17,$23
-bne $23,L.3163
-lds $f9,L.410
-mov $31,$12
-L.3167:
-sll $12,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-lda $25,-264+368($sp)
-addq $27,$25,$27
-ldq $27,($27)
-lds $f30,($27)
-adds $f9,$f30,$f9
-L.3168:
-lda $12,1($12)
-cmplt $12,17,$23
-bne $23,L.3167
-lds $f30,L.3173
-cmpteq $f9,$f30,$f1
-fbne $f1,L.3171
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.3174
-lda $16,L.3150
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.3174:
-ldl $27,-268+368($sp)
-lda $27,4($27)
-stl $27,-268+368($sp)
-L.3171:
-mov $31,$11
-L.3176:
-mov $31,$12
-L.3180:
-mov $31,$13
-L.3184:
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lda $25,28
-sll $12,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $22,140
-sll $11,8*(8-4),$8
-sra $8,8*(8-4),$8
-mulq $22,$8,$22
-lda $22,L.3149($22)
-addq $25,$22,$25
-addq $27,$25,$27
-lda $25,35
-mull $25,$11,$25
-lda $22,7
-mull $22,$12,$22
-addl $25,$22,$25
-addl $25,$13,$25
-stl $25,($27)
-L.3185:
-lda $13,1($13)
-cmplt $13,7,$23
-bne $23,L.3184
-L.3181:
-lda $12,1($12)
-cmplt $12,5,$23
-bne $23,L.3180
-L.3177:
-lda $11,1($11)
-cmplt $11,3,$23
-bne $23,L.3176
-lda $11,1
-lda $12,2
-lda $13,3
-lda $16,L.3149
-lda $17,105
-mov $31,$18
-jsr $26,array
-ldgp $gp,0($26)
-mov $0,$27
-stl $27,-292+368($sp)
-lda $25,140
-sll $11,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $16,L.3149($25)
-lda $25,35
-mov $25,$17
-mov $25,$18
-jsr $26,array
-ldgp $gp,0($26)
-mov $0,$27
-stl $27,-296+368($sp)
-lda $25,28
-sll $12,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $22,140
-sll $11,8*(8-4),$8
-sra $8,8*(8-4),$8
-mulq $22,$8,$22
-lda $22,L.3149($22)
-addq $25,$22,$16
-lda $17,7
-lda $18,49
-jsr $26,array
-ldgp $gp,0($26)
-ldl $25,-292+368($sp)
-ldl $22,-296+368($sp)
-addl $25,$22,$25
-addl $25,$0,$27
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-lda $22,28
-sll $12,8*(8-4),$8
-sra $8,8*(8-4),$8
-mulq $22,$8,$22
-lda $8,140
-sll $11,8*(8-4),$7
-sra $7,8*(8-4),$7
-mulq $8,$7,$8
-lda $8,L.3149($8)
-addq $22,$8,$22
-addq $25,$22,$25
-ldl $25,($25)
-addl $27,$25,$27
-subl $27,52,$27
-cmpeq $27,$31,$23
-bne $23,L.3188
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.3190
-lda $16,L.3150
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.3190:
-ldl $27,-268+368($sp)
-lda $27,8($27)
-stl $27,-268+368($sp)
-L.3188:
-ldl $0,-268+368($sp)
-L.3148:
-ldt $f9,0($sp)
-ldq $9,8($sp)
-ldq $10,16($sp)
-ldq $11,24($sp)
-ldq $12,32($sp)
-ldq $13,40($sp)
-ldq $14,48($sp)
-ldq $24,56($sp)
-ldq $26,64($sp)
-lda $sp,368($sp)
-ret
-.end s84
-.globl array
-.text
-.ent array
-array:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-mov $31,$14
-br L.3196
-L.3193:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$16,$27
-ldl $27,($27)
-addl $14,$18,$25
-cmpeq $27,$25,$23
-bne $23,L.3197
-lda $0,1
-br L.3192
-L.3197:
-L.3194:
-lda $14,1($14)
-L.3196:
-cmplt $14,$17,$23
-bne $23,L.3193
-mov $31,$0
-L.3192:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end array
-.lcomm L.3200,4
-.globl fip
-.text
-.text
-.ent fip
-fip:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-lda $27,L.3200
-stl $16,L.3200
-mov $27,$0
-L.3199:
-lda $sp,64($sp)
-ret
-.end fip
-.globl glork
-.text
-.ent glork
-glork:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-mov $16,$0
-L.3201:
-lda $sp,64($sp)
-ret
-.end glork
-.sdata
-.align 0
-L.3203:
-.byte 115
-.byte 56
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.3204:
-.byte 115
-.byte 56
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 3
-L.3212:
-.quad L.423
-.quad L.425
-.quad L.424
-.quad L.426
-.quad L.427
-.quad L.428
-.quad L.429
-.align 0
-L.3213:
-.byte 32
-.byte 97
-.byte 108
-.byte 105
-.byte 103
-.byte 110
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 58
-.byte 32
-.byte 0
-.globl s85
-.text
-.text
-.ent s85
-s85:
-ldgp $gp,0($27)
-lda $sp,-528($sp)
-.mask 0x5007c00,-480
-.frame $sp,528,$26,48
-stq $10,0($sp)
-stq $11,8($sp)
-stq $12,16($sp)
-stq $13,24($sp)
-stq $14,32($sp)
-stq $24,40($sp)
-stq $26,48($sp)
-mov $16,$14
-.prologue 1
-lda $12,L.3204
-lda $11,60($14)
-mov $31,$10
-L.3217:
-L.3218:
-mov $11,$27
-lda $11,1($27)
-mov $12,$25
-lda $12,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.3217
-lda $25,-348+528($sp)
-lda $22,-368+528($sp)
-subq $25,$22,$25
-cmple $25,$31,$23
-bne $23,L.3228
-lda $25,-344+528($sp)
-lda $22,-348+528($sp)
-subq $25,$22,$25
-cmple $25,$31,$23
-bne $23,L.3228
-lda $25,-336+528($sp)
-lda $22,-344+528($sp)
-subq $25,$22,$25
-cmple $25,$31,$23
-beq $23,L.3220
-L.3228:
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.3229
-lda $16,L.3203
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.3229:
-lda $10,1($10)
-L.3220:
-lda $27,-409+528($sp)
-lda $25,-410+528($sp)
-subq $27,$25,$27
-stl $27,-324+528($sp)
-lda $27,-412+528($sp)
-lda $25,-414+528($sp)
-subq $27,$25,$27
-stl $27,-320+528($sp)
-lda $27,-420+528($sp)
-lda $25,-424+528($sp)
-subq $27,$25,$27
-stl $27,-316+528($sp)
-lda $27,-432+528($sp)
-lda $25,-440+528($sp)
-subq $27,$25,$27
-stl $27,-312+528($sp)
-lda $27,-444+528($sp)
-lda $25,-448+528($sp)
-subq $27,$25,$27
-stl $27,-308+528($sp)
-lda $27,-452+528($sp)
-lda $25,-456+528($sp)
-subq $27,$25,$27
-stl $27,-304+528($sp)
-lda $27,-464+528($sp)
-lda $25,-472+528($sp)
-subq $27,$25,$27
-stl $27,-300+528($sp)
-ldl $27,40($14)
-cmpeq $27,$31,$23
-bne $23,L.3244
-mov $31,$13
-L.3246:
-lda $16,L.3250
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$25
-ldq $17,L.3212($25)
-lda $18,L.3213
-sll $27,2,$27
-lda $25,-324+528($sp)
-addq $27,$25,$27
-ldl $19,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.3247:
-lda $13,1($13)
-cmplt $13,7,$23
-bne $23,L.3246
-L.3244:
-ldl $27,-328+528($sp)
-or $27,56,$27
-stl $27,-328+528($sp)
-ldl $27,-328+528($sp)
-mov $27,$25
-and $25,0xfffffffc,$25
-sll $27,26,$27
-addl $27,0,$27
-sra $27,29,$27
-addl $27,0,$27
-sll $27,30,$27
-addl $27,0,$27
-sra $27,30,$27
-addl $27,0,$27
-and $27,3,$27
-or $25,$27,$27
-stl $27,-328+528($sp)
-ldl $27,-328+528($sp)
-mov $27,$25
-and $25,0xffffffc7,$25
-sll $27,30,$27
-addl $27,0,$27
-sra $27,30,$27
-addl $27,0,$27
-sll $27,29,$27
-addl $27,0,$27
-sra $27,29,$27
-addl $27,0,$27
-sll $27,3,$27
-zap $27,240,$27
-and $27,56,$27
-or $25,$27,$27
-stl $27,-328+528($sp)
-ldl $27,-328+528($sp)
-sll $27,26,$27
-addl $27,0,$27
-sra $27,29,$27
-addl $27,0,$27
-cmpeq $27,3,$23
-bne $23,L.3251
-ldl $27,-328+528($sp)
-sll $27,26,$27
-addl $27,0,$27
-sra $27,29,$27
-addl $27,0,$27
-lda $25,-1
-cmpeq $27,$25,$23
-beq $23,L.3253
-ldl $27,40($14)
-cmpeq $27,$31,$23
-bne $23,L.3254
-lda $16,L.3257
-jsr $26,printf
-ldgp $gp,0($26)
-br L.3254
-L.3253:
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.3258
-lda $16,L.3203
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.3258:
-lda $10,2($10)
-L.3254:
-L.3251:
-ldl $27,-328+528($sp)
-or $27,64,$27
-stl $27,-328+528($sp)
-ldl $27,-328+528($sp)
-sll $27,25,$27
-addl $27,0,$27
-sra $27,31,$27
-addl $27,0,$27
-cmpeq $27,1,$23
-bne $23,L.3260
-ldl $27,40($14)
-cmpeq $27,$31,$23
-bne $23,L.3262
-lda $16,L.3264
-jsr $26,printf
-ldgp $gp,0($26)
-L.3262:
-L.3260:
-lda $27,-296+528($sp)
-subq $27,$27,$27
-cmpeq $27,$31,$23
-beq $23,L.3272
-cmpeq $27,$31,$23
-beq $23,L.3272
-cmpeq $27,$31,$23
-beq $23,L.3272
-cmpeq $27,$31,$23
-beq $23,L.3272
-cmpeq $27,$31,$23
-beq $23,L.3272
-cmpeq $27,$31,$23
-beq $23,L.3272
-cmpeq $27,$31,$23
-bne $23,L.3265
-L.3272:
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.3273
-lda $16,L.3203
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.3273:
-lda $10,4($10)
-L.3265:
-br L.3275
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.3277
-lda $16,L.3203
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.3277:
-lda $10,8($10)
-L.3275:
-lda $27,-408+528($sp)
-stq $27,-336+528($sp)
-lda $27,2
-stb $27,-408+528($sp)
-ldq $27,-336+528($sp)
-ldb $25,($27)
-lda $25,1($25)
-stb $25,($27)
-lda $27,-408+528($sp)
-ldb $27,($27)
-cmpeq $27,3,$23
-bne $23,L.3281
-ldl $27,44($14)
-cmpeq $27,$31,$23
-bne $23,L.3283
-lda $16,L.3203
-lda $17,16
-jsr $26,printf
-ldgp $gp,0($26)
-L.3283:
-lda $10,16($10)
-L.3281:
-mov $10,$0
-L.3202:
-ldq $10,0($sp)
-ldq $11,8($sp)
-ldq $12,16($sp)
-ldq $13,24($sp)
-ldq $14,32($sp)
-ldq $24,40($sp)
-ldq $26,48($sp)
-lda $sp,528($sp)
-ret
-.end s85
-.sdata
-.align 0
-L.3286:
-.byte 115
-.byte 56
-.byte 54
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.3287:
-.byte 115
-.byte 56
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 2
-L.3288:
-.long 0x1
-.long 0x3
-.long 0x5
-.align 3
-L.3289:
-.quad L.3288+8
-.lcomm L.3291,40
-.sdata
-.align 2
-L.3292:
-.long 0x3f800000
-.long 0x40400000
-.long 0x40a00000
-.long 0x40000000
-.long 0x40800000
-.long 0x40c00000
-.long 0x40400000
-.long 0x40a00000
-.long 0x40e00000
-.long 0x0
-.long 0x0
-.long 0x0
-.align 2
-L.3293:
-.long 0x3f800000
-.long 0x40400000
-.long 0x40a00000
-.long 0x40000000
-.long 0x40800000
-.long 0x40c00000
-.long 0x40400000
-.long 0x40a00000
-.long 0x40e00000
-.space 12
-.align 2
-L.3294:
-.long 0x3f800000
-.long 0x40400000
-.long 0x40a00000
-.long 0x40000000
-.long 0x40800000
-.long 0x40c00000
-.long 0x40400000
-.long 0x40a00000
-.long 0x40e00000
-.space 12
-.align 2
-L.3295:
-.long 0x3f800000
-.space 8
-.long 0x40000000
-.space 8
-.long 0x40400000
-.space 8
-.long 0x40800000
-.space 8
-.globl s86
-.text
-.text
-.ent s86
-s86:
-ldgp $gp,0($27)
-lda $sp,-144($sp)
-.mask 0x5007e00,-88
-.frame $sp,144,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-stq $16,96($sp)
-.prologue 1
-ldq $27,L.3289
-lda $27,-4($27)
-stq $27,-80+144($sp)
-jsr $26,one
-ldgp $gp,0($26)
-sll $0,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-ldq $25,-80+144($sp)
-addq $27,$25,$14
-lda $9,L.3287
-ldq $27,-48+144($sp)
-lda $27,60($27)
-stq $27,-64+144($sp)
-stl $31,-68+144($sp)
-L.3296:
-L.3297:
-ldq $27,-64+144($sp)
-lda $25,1($27)
-stq $25,-64+144($sp)
-mov $9,$25
-lda $9,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.3296
-ldq $27,L.3289
-ldl $27,($27)
-cmpeq $27,5,$23
-bne $23,L.3299
-ldq $27,-48+144($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3301
-lda $16,L.3286
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.3301:
-ldl $27,-68+144($sp)
-lda $27,1($27)
-stl $27,-68+144($sp)
-L.3299:
-ldq $27,-80+144($sp)
-ldl $27,($27)
-cmpeq $27,3,$23
-bne $23,L.3303
-ldq $27,-48+144($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3305
-lda $16,L.3286
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.3305:
-ldl $27,-68+144($sp)
-lda $27,2($27)
-stl $27,-68+144($sp)
-L.3303:
-ldl $27,($14)
-cmpeq $27,5,$23
-bne $23,L.3307
-ldq $27,-48+144($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3309
-lda $16,L.3286
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.3309:
-ldl $27,-68+144($sp)
-lda $27,4($27)
-stl $27,-68+144($sp)
-L.3307:
-mov $31,$10
-mov $31,$13
-L.3311:
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-ldl $27,L.3291($27)
-cmpeq $27,$31,$23
-bne $23,L.3315
-lda $10,1
-L.3315:
-L.3312:
-lda $13,1($13)
-cmplt $13,10,$23
-bne $23,L.3311
-cmpeq $10,$31,$23
-bne $23,L.3317
-ldq $27,-48+144($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3319
-lda $16,L.3286
-lda $17,8
-jsr $26,printf
-ldgp $gp,0($26)
-L.3319:
-ldl $27,-68+144($sp)
-lda $27,8($27)
-stl $27,-68+144($sp)
-L.3317:
-mov $31,$10
-mov $31,$12
-L.3321:
-mov $31,$13
-L.3325:
-lda $27,3
-mull $27,$12,$27
-addl $27,$13,$11
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lda $25,12
-sll $12,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $22,L.3293($25)
-addq $27,$22,$22
-lds $f30,($22)
-lda $25,L.3294($25)
-addq $27,$25,$27
-lds $f29,($27)
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.3331
-sll $11,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lds $f29,L.3292($27)
-cmpteq $f30,$f29,$f1
-fbne $f1,L.3329
-L.3331:
-lda $10,1
-L.3329:
-L.3326:
-lda $13,1($13)
-cmplt $13,3,$23
-bne $23,L.3325
-L.3322:
-lda $12,1($12)
-cmplt $12,4,$23
-bne $23,L.3321
-cmpeq $10,$31,$23
-bne $23,L.3332
-ldq $27,-48+144($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3334
-lda $16,L.3286
-lda $17,16
-jsr $26,printf
-ldgp $gp,0($26)
-L.3334:
-ldl $27,-68+144($sp)
-lda $27,16($27)
-stl $27,-68+144($sp)
-L.3332:
-mov $31,$10
-mov $31,$13
-L.3336:
-lda $27,12
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-mulq $27,$25,$27
-lds $f30,L.3295($27)
-lda $27,1($13)
-stq $27,-56+144($sp)
-ldt $f29,-56+144($sp)
-cvtqs $f29,$f29
-cmpteq $f30,$f29,$f1
-fbne $f1,L.3340
-lda $10,1
-L.3340:
-L.3337:
-lda $13,1($13)
-cmplt $13,4,$23
-bne $23,L.3336
-cmpeq $10,$31,$23
-bne $23,L.3342
-ldq $27,-48+144($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3344
-lda $16,L.3286
-lda $17,32
-jsr $26,printf
-ldgp $gp,0($26)
-L.3344:
-ldl $27,-68+144($sp)
-lda $27,32($27)
-stl $27,-68+144($sp)
-L.3342:
-ldl $0,-68+144($sp)
-L.3285:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,144($sp)
-ret
-.end s86
-.globl one
-.text
-.ent one
-one:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-lda $0,1
-L.3346:
-lda $sp,64($sp)
-ret
-.end one
-.sdata
-.align 0
-L.3348:
-.byte 115
-.byte 56
-.byte 56
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.3349:
-.byte 115
-.byte 56
-.byte 56
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s88
-.text
-.text
-.ent s88
-s88:
-ldgp $gp,0($27)
-lda $sp,-128($sp)
-.mask 0x5007800,-88
-.frame $sp,128,$26,48
-stq $11,0($sp)
-stq $12,8($sp)
-stq $13,16($sp)
-stq $14,24($sp)
-stq $24,32($sp)
-stq $26,40($sp)
-stq $16,80($sp)
-.prologue 1
-lda $14,L.3349
-ldq $27,-48+128($sp)
-lda $13,60($27)
-mov $31,$12
-L.3351:
-L.3352:
-mov $13,$27
-lda $13,1($27)
-mov $14,$25
-lda $14,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.3351
-br L.3354
-ldq $27,-48+128($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3356
-lda $16,L.3348
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.3356:
-lda $12,1($12)
-L.3354:
-lda $27,-76+128($sp)
-stq $27,metricp
-lda $27,2
-stl $27,-76+128($sp)
-ldq $27,metricp
-lda $25,3
-stl $25,($27)
-ldl $27,-76+128($sp)
-cmpeq $27,3,$23
-bne $23,L.3358
-ldq $27,-48+128($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3360
-lda $16,L.3348
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.3360:
-lda $12,2($12)
-L.3358:
-ldt $f30,L.417
-stt $f30,-72+128($sp)
-stt $f30,-64+128($sp)
-lda $11,-72+128($sp)
-ldt $f30,L.416
-stt $f30,($11)
-ldt $f30,L.416
-stt $f30,8($11)
-ldt $f30,-72+128($sp)
-ldt $f29,-64+128($sp)
-addt $f30,$f29,$f30
-ldt $f29,L.414
-cmpteq $f30,$f29,$f1
-fbne $f1,L.3363
-ldq $27,-48+128($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3366
-lda $16,L.3348
-lda $17,4
-jsr $26,printf
-ldgp $gp,0($26)
-L.3366:
-lda $12,4($12)
-L.3363:
-mov $12,$0
-L.3347:
-ldq $11,0($sp)
-ldq $12,8($sp)
-ldq $13,16($sp)
-ldq $14,24($sp)
-ldq $24,32($sp)
-ldq $26,40($sp)
-lda $sp,128($sp)
-ret
-.end s88
-.sdata
-.align 0
-L.3369:
-.byte 115
-.byte 57
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.3370:
-.byte 115
-.byte 57
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s9
-.text
-.text
-.ent s9
-s9:
-ldgp $gp,0($27)
-lda $sp,-144($sp)
-.mask 0x5007e00,-88
-.frame $sp,144,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-stq $16,96($sp)
-.prologue 1
-lda $12,L.3370
-ldq $27,-48+144($sp)
-lda $11,60($27)
-mov $31,$10
-L.3371:
-L.3372:
-mov $11,$27
-lda $11,1($27)
-mov $12,$25
-lda $12,1($25)
-ldb $25,($25)
-stb $25,($27)
-sll $25,8*(8-1),$27
-sra $27,8*(8-1),$27
-cmpeq $27,$31,$23
-beq $23,L.3371
-mov $31,$13
-mov $31,$14
-L.3374:
-lda $27,2
-mov $27,$9
-stl $27,-60+144($sp)
-lda $27,3
-stl $27,-64+144($sp)
-stl $27,-68+144($sp)
-ldl $27,-68+144($sp)
-cmpeq $27,3,$23
-beq $23,L.3380
-ldl $27,-64+144($sp)
-cmpeq $27,3,$23
-bne $23,L.3378
-L.3380:
-lda $13,1
-L.3378:
-ldl $27,-60+144($sp)
-cmpeq $27,2,$23
-beq $23,L.3383
-cmpeq $9,2,$23
-bne $23,L.3381
-L.3383:
-lda $13,1
-L.3381:
-L.3375:
-lda $14,1($14)
-cmplt $14,2,$23
-bne $23,L.3374
-cmpeq $13,$31,$23
-bne $23,L.3388
-ldq $27,-48+144($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3386
-lda $16,L.3369
-lda $17,1
-jsr $26,printf
-ldgp $gp,0($26)
-L.3386:
-lda $10,1($10)
-br L.3388
-ldq $27,-48+144($sp)
-ldl $27,44($27)
-cmpeq $27,$31,$23
-bne $23,L.3389
-lda $16,L.3369
-lda $17,2
-jsr $26,printf
-ldgp $gp,0($26)
-L.3389:
-lda $10,2($10)
-L.3388:
-mov $10,$0
-L.3368:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,144($sp)
-ret
-.end s9
-.globl setev
-.text
-.ent setev
-setev:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-lda $27,1066
-stl $27,extvar
-mov $31,$0
-L.3391:
-lda $sp,64($sp)
-ret
-.end setev
-.globl rfs
-.comm rfs,8
-.globl crc
-.comm crc,4
-.globl rrc
-.comm rrc,4
-.globl flgl
-.comm flgl,4
-.globl flgd
-.comm flgd,4
-.globl flgm
-.comm flgm,4
-.globl flgs
-.comm flgs,4
-.globl dprec
-.comm dprec,4
-.globl fprec
-.comm fprec,4
-.globl dbits
-.comm dbits,4
-.globl fbits
-.comm fbits,4
-.globl ubits
-.comm ubits,4
-.globl lbits
-.comm lbits,4
-.globl metricp
-.comm metricp,8
-.globl extvar
-.comm extvar,4
-.rdata
-.align 0
-L.3264:
-.byte 66
-.byte 101
-.byte 32
-.byte 101
-.byte 115
-.byte 112
-.byte 101
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 101
-.byte 102
-.byte 117
-.byte 108
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 49
-.byte 45
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 102
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.3257:
-.byte 83
-.byte 105
-.byte 103
-.byte 110
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 101
-.byte 110
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 102
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.3250:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 2
-L.3173:
-.long 0x43080000
-.align 0
-L.3020:
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.2470:
-.byte 73
-.byte 110
-.byte 99
-.byte 114
-.byte 101
-.byte 97
-.byte 115
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 97
-.byte 114
-.byte 114
-.byte 97
-.byte 121
-.byte 32
-.byte 101
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 114
-.byte 101
-.byte 97
-.byte 115
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 108
-.byte 111
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 10
-.byte 0
-.align 2
-L.2354:
-.long 0x41d00000
-.align 3
-L.2353:
-.long 0x0
-.long 0x403a0000
-.align 3
-L.1657:
-.long 0x0
-.long 0x40040000
-.align 3
-L.1482:
-.long 0x0
-.long 0x40240000
-.align 2
-L.1453:
-.long 0x41200000
-.align 3
-L.1278:
-.long 0x0
-.long 0x40080000
-.align 2
-L.1249:
-.long 0x40400000
-.align 3
-L.1074:
-.long 0x0
-.long 0x401c0000
-.align 2
-L.1045:
-.long 0x40e00000
-.align 3
-L.868:
-.long 0x0
-.long 0x40140000
-.align 2
-L.839:
-.long 0x40a00000
-.align 3
-L.834:
-.long 0x0
-.long 0x41e00000
-.align 2
-L.826:
-.long 0x4f000000
-.align 0
-L.651:
-.byte 113
-.byte 117
-.byte 101
-.byte 101
-.byte 112
-.byte 0
-.align 0
-L.637:
-.byte 10
-.byte 0
-.align 0
-L.636:
-.byte 37
-.byte 100
-.byte 0
-.align 0
-L.631:
-.byte 32
-.byte 32
-.byte 32
-.byte 107
-.byte 101
-.byte 121
-.byte 61
-.byte 0
-.align 3
-L.594:
-.long 0x0
-.long 0x40000000
-.align 3
-L.534:
-.long 0x0
-.long 0x40ce8480
-.align 3
-L.533:
-.long 0x0
-.long 0x405f4000
-.align 2
-L.532:
-.long 0x42fa0000
-.align 2
-L.527:
-.long 0x40000000
-.align 0
-L.429:
-.byte 100
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 0
-.align 0
-L.428:
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 0
-.align 0
-L.427:
-.byte 117
-.byte 110
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 0
-.align 0
-L.426:
-.byte 108
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.425:
-.byte 115
-.byte 104
-.byte 111
-.byte 114
-.byte 116
-.byte 0
-.align 0
-L.424:
-.byte 105
-.byte 110
-.byte 116
-.byte 0
-.align 0
-L.423:
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 0
-.align 3
-L.417:
-.long 0x0
-.long 0x0
-.align 3
-L.416:
-.long 0x0
-.long 0x3ff00000
-.align 3
-L.415:
-.long 0x0
-.long 0x40100000
-.align 3
-L.414:
-.long 0x0
-.long 0x40000000
-.align 2
-L.410:
-.long 0x0
-.align 2
-L.409:
-.long 0x3f800000
-.align 0
-L.388:
-.byte 113
-.byte 117
-.byte 101
-.byte 101
-.byte 112
-.byte 33
-.byte 0
-.align 0
-L.377:
-.byte 10
-.byte 9
-.byte 8
-.byte 13
-.byte 12
-.byte 92
-.byte 39
-.byte 0
-.align 0
-L.373:
-.byte 46
-.byte 34
-.byte 46
-.byte 0
-.align 0
-L.360:
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 3
-L.332:
-.long 0x0
-.long 0x40938800
-.align 0
-L.198:
-.byte 32
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 108
-.byte 111
-.byte 110
-.byte 103
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.197:
-.byte 68
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 99
-.byte 116
-.byte 97
-.byte 108
-.byte 47
-.byte 104
-.byte 101
-.byte 120
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 116
-.byte 97
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 109
-.byte 101
-.byte 115
-.byte 32
-.byte 103
-.byte 105
-.byte 118
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.27:
-.byte 10
-.byte 70
-.byte 97
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.26:
-.byte 10
-.byte 78
-.byte 111
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 100
-.byte 101
-.byte 116
-.byte 101
-.byte 99
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.20:
-.byte 83
-.byte 101
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 116
-.byte 117
-.byte 114
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
+.sdata
+.align 3
+L.2:
+.quad s22
+.quad s241
+.quad s243
+.quad s244
+.quad s25
+.quad s26
+.quad s4
+.quad s61
+.quad s626
+.quad s71
+.quad s72
+.quad s757
+.quad s7813
+.quad s714
+.quad s715
+.quad s81
+.quad s84
+.quad s85
+.quad s86
+.quad s88
+.quad s9
+.lcomm L.3,68
+.lcomm L.4,8
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+stq $16,32($sp)
+stq $17,40($sp)
+.prologue 1
+lda $27,1
+stl $27,L.3+36
+lda $27,1
+stl $27,L.3+40
+lda $27,1
+stl $27,L.3+44
+lda $27,1
+stl $27,L.3+48
+lda $27,L.3
+stq $27,L.4
+mov $31,$14
+br L.12
+L.9:
+ldq $16,L.4
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+ldq $27,L.2($27)
+jsr $26,($27)
+ldgp $gp,0($26)
+stl $0,L.3+52
+ldl $27,L.3+56
+ldl $25,L.3+52
+addl $27,$25,$27
+stl $27,L.3+56
+ldl $27,L.3+36
+cmpeq $27,$31,$23
+bne $23,L.17
+lda $16,L.20
+lda $17,L.3+60
+ldl $18,L.3+52
+jsr $26,printf
+ldgp $gp,0($26)
+L.17:
+L.10:
+lda $14,1($14)
+L.12:
+mov $14,$27
+lda $25,21
+cmpult $27,$25,$23
+bne $23,L.9
+ldl $27,L.3+56
+cmpeq $27,$31,$23
+beq $23,L.23
+lda $16,L.26
+jsr $26,printf
+ldgp $gp,0($26)
+br L.24
+L.23:
+lda $16,L.27
+jsr $26,printf
+ldgp $gp,0($26)
+L.24:
+mov $31,$0
+L.1:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end main
+.sdata
+.align 0
+L.29:
+.byte 115
+.byte 50
+.byte 50
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.30:
+.byte 115
+.byte 50
+.byte 50
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s22
+.text
+.text
+.ent s22
+s22:
+ldgp $gp,0($27)
+lda $sp,-128($sp)
+.mask 0x5007800,-88
+.frame $sp,128,$26,48
+stq $11,0($sp)
+stq $12,8($sp)
+stq $13,16($sp)
+stq $14,24($sp)
+stq $24,32($sp)
+stq $26,40($sp)
+stq $16,80($sp)
+.prologue 1
+mov $31,$12
+lda $14,L.30
+ldq $27,-48+128($sp)
+lda $13,60($27)
+L.31:
+L.32:
+mov $13,$27
+lda $13,1($27)
+mov $14,$25
+lda $14,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.31
+lda $11,1
+lda $27,2
+stl $27,-64+128($sp)
+lda $27,3
+stl $27,-68+128($sp)
+lda $27,4
+stl $27,-60+128($sp)
+ldl $27,-64+128($sp)
+addl $11,$27,$27
+ldl $25,-68+128($sp)
+addl $27,$25,$27
+ldl $25,-60+128($sp)
+addl $27,$25,$27
+cmpeq $27,10,$23
+bne $23,L.34
+lda $12,1($12)
+ldq $27,-48+128($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.36
+lda $16,L.29
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.36:
+L.34:
+lda $27,2
+stl $27,-72+128($sp)
+ldl $27,-72+128($sp)
+cmpeq $27,$11,$23
+beq $23,L.38
+lda $12,4($12)
+ldq $27,-48+128($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.40
+lda $16,L.29
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.40:
+L.38:
+mov $12,$0
+L.28:
+ldq $11,0($sp)
+ldq $12,8($sp)
+ldq $13,16($sp)
+ldq $14,24($sp)
+ldq $24,32($sp)
+ldq $26,40($sp)
+lda $sp,128($sp)
+ret
+.end s22
+.sdata
+.align 0
+L.43:
+.byte 115
+.byte 50
+.byte 52
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.44:
+.byte 115
+.byte 50
+.byte 52
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 3
+L.45:
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad 0x6
+.quad 0x0
+.quad 0x8
+.quad 0x0
+.quad 0xc
+.quad 0x0
+.quad 0x10
+.quad 0x0
+.quad 0x12
+.quad 0x0
+.quad 0x14
+.quad 0x0
+.quad 0x18
+.quad 0x0
+.quad 0x1c
+.quad 0x0
+.quad 0x1e
+.quad 0x0
+.quad 0x20
+.quad 0x0
+.quad 0x24
+.globl s241
+.text
+.text
+.ent s241
+s241:
+ldgp $gp,0($27)
+lda $sp,-1072($sp)
+.mask 0x5007c00,-1024
+.frame $sp,1072,$26,48
+stq $10,0($sp)
+stq $11,8($sp)
+stq $12,16($sp)
+stq $13,24($sp)
+stq $14,32($sp)
+stq $24,40($sp)
+stq $26,48($sp)
+mov $16,$14
+.prologue 1
+mov $31,$10
+stl $31,-996+1072($sp)
+lda $12,L.44
+lda $11,60($14)
+L.46:
+L.47:
+mov $11,$27
+lda $11,1($27)
+mov $12,$25
+lda $12,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.46
+br L.49
+lda $10,1($10)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.51
+lda $16,L.43
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.51:
+L.49:
+br L.53
+lda $10,2($10)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.55
+lda $16,L.43
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.55:
+L.53:
+lda $10,4($10)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.59
+lda $16,L.43
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.59:
+L.57:
+br L.61
+lda $10,8($10)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.63
+lda $16,L.43
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.63:
+L.61:
+mov $31,$13
+L.65:
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$25
+stq $27,L.45($25)
+L.66:
+lda $13,1($13)
+cmplt $13,17,$23
+bne $23,L.65
+lda $13,18
+L.69:
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+lda $27,L.45($27)
+stq $27,-1008+1072($sp)
+ldq $16,($27)
+jsr $26,pow2
+ldgp $gp,0($26)
+ldq $25,-1008+1072($sp)
+stq $0,($25)
+subl $13,1,$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,3,$25
+ldq $25,L.45($25)
+subq $25,1,$25
+stq $25,L.45($27)
+lda $13,2($13)
+L.70:
+cmplt $13,39,$23
+bne $23,L.69
+stq $31,-368+1072($sp)
+stq $31,-680+1072($sp)
+stq $31,-992+1072($sp)
+lda $27,1
+stq $27,-360+1072($sp)
+lda $27,1
+stq $27,-672+1072($sp)
+lda $27,1
+stq $27,-984+1072($sp)
+lda $27,2
+stq $27,-352+1072($sp)
+lda $27,2
+stq $27,-664+1072($sp)
+lda $27,2
+stq $27,-976+1072($sp)
+lda $27,3
+stq $27,-344+1072($sp)
+lda $27,3
+stq $27,-656+1072($sp)
+lda $27,3
+stq $27,-968+1072($sp)
+lda $27,4
+stq $27,-336+1072($sp)
+lda $27,4
+stq $27,-648+1072($sp)
+lda $27,4
+stq $27,-960+1072($sp)
+lda $27,5
+stq $27,-328+1072($sp)
+lda $27,5
+stq $27,-640+1072($sp)
+lda $27,5
+stq $27,-952+1072($sp)
+lda $27,6
+stq $27,-320+1072($sp)
+lda $27,6
+stq $27,-632+1072($sp)
+lda $27,6
+stq $27,-944+1072($sp)
+lda $27,7
+stq $27,-312+1072($sp)
+lda $27,7
+stq $27,-624+1072($sp)
+lda $27,7
+stq $27,-936+1072($sp)
+lda $27,8
+stq $27,-304+1072($sp)
+lda $27,8
+stq $27,-616+1072($sp)
+lda $27,8
+stq $27,-928+1072($sp)
+lda $27,9
+stq $27,-296+1072($sp)
+lda $27,9
+stq $27,-608+1072($sp)
+lda $27,9
+stq $27,-920+1072($sp)
+lda $27,10
+stq $27,-288+1072($sp)
+lda $27,10
+stq $27,-600+1072($sp)
+lda $27,10
+stq $27,-912+1072($sp)
+lda $27,11
+stq $27,-280+1072($sp)
+lda $27,11
+stq $27,-592+1072($sp)
+lda $27,11
+stq $27,-904+1072($sp)
+lda $27,12
+stq $27,-272+1072($sp)
+lda $27,12
+stq $27,-584+1072($sp)
+lda $27,12
+stq $27,-896+1072($sp)
+lda $27,13
+stq $27,-264+1072($sp)
+lda $27,13
+stq $27,-576+1072($sp)
+lda $27,13
+stq $27,-888+1072($sp)
+lda $27,14
+stq $27,-256+1072($sp)
+lda $27,14
+stq $27,-568+1072($sp)
+lda $27,14
+stq $27,-880+1072($sp)
+lda $27,15
+stq $27,-248+1072($sp)
+lda $27,15
+stq $27,-560+1072($sp)
+lda $27,15
+stq $27,-872+1072($sp)
+lda $27,16
+stq $27,-240+1072($sp)
+lda $27,16
+stq $27,-552+1072($sp)
+lda $27,16
+stq $27,-864+1072($sp)
+lda $27,63
+stq $27,-232+1072($sp)
+lda $27,63
+stq $27,-544+1072($sp)
+lda $27,63
+stq $27,-856+1072($sp)
+lda $27,64
+stq $27,-224+1072($sp)
+lda $27,64
+stq $27,-536+1072($sp)
+lda $27,64
+stq $27,-848+1072($sp)
+lda $27,255
+stq $27,-216+1072($sp)
+lda $27,255
+stq $27,-528+1072($sp)
+lda $27,255
+stq $27,-840+1072($sp)
+lda $27,256
+stq $27,-208+1072($sp)
+lda $27,256
+stq $27,-520+1072($sp)
+lda $27,256
+stq $27,-832+1072($sp)
+lda $27,4095
+stq $27,-200+1072($sp)
+lda $27,4095
+stq $27,-512+1072($sp)
+lda $27,4095
+stq $27,-824+1072($sp)
+lda $27,4096
+stq $27,-192+1072($sp)
+lda $27,4096
+stq $27,-504+1072($sp)
+lda $27,4096
+stq $27,-816+1072($sp)
+lda $27,65535
+stq $27,-184+1072($sp)
+lda $27,65535
+stq $27,-496+1072($sp)
+lda $27,65535
+stq $27,-808+1072($sp)
+lda $27,65536
+stq $27,-176+1072($sp)
+lda $27,65536
+stq $27,-488+1072($sp)
+lda $27,65536
+stq $27,-800+1072($sp)
+lda $27,262143
+stq $27,-168+1072($sp)
+lda $27,262143
+stq $27,-480+1072($sp)
+lda $27,262143
+stq $27,-792+1072($sp)
+lda $27,262144
+stq $27,-160+1072($sp)
+lda $27,262144
+stq $27,-472+1072($sp)
+lda $27,262144
+stq $27,-784+1072($sp)
+lda $27,1048575
+stq $27,-152+1072($sp)
+lda $27,1048575
+stq $27,-464+1072($sp)
+lda $27,1048575
+stq $27,-776+1072($sp)
+lda $27,1048576
+stq $27,-144+1072($sp)
+lda $27,1048576
+stq $27,-456+1072($sp)
+lda $27,1048576
+stq $27,-768+1072($sp)
+lda $27,16777215
+stq $27,-136+1072($sp)
+lda $27,16777215
+stq $27,-448+1072($sp)
+lda $27,16777215
+stq $27,-760+1072($sp)
+lda $27,16777216
+stq $27,-128+1072($sp)
+lda $27,16777216
+stq $27,-440+1072($sp)
+lda $27,16777216
+stq $27,-752+1072($sp)
+lda $27,268435455
+stq $27,-120+1072($sp)
+lda $27,268435455
+stq $27,-432+1072($sp)
+lda $27,268435455
+stq $27,-744+1072($sp)
+lda $27,268435456
+stq $27,-112+1072($sp)
+lda $27,268435456
+stq $27,-424+1072($sp)
+lda $27,268435456
+stq $27,-736+1072($sp)
+lda $27,1073741823
+stq $27,-104+1072($sp)
+lda $27,1073741823
+stq $27,-416+1072($sp)
+lda $27,1073741823
+stq $27,-728+1072($sp)
+lda $27,1073741824
+stq $27,-96+1072($sp)
+lda $27,1073741824
+stq $27,-408+1072($sp)
+lda $27,1073741824
+stq $27,-720+1072($sp)
+lda $27,4294967295
+stq $27,-88+1072($sp)
+lda $27,4294967295
+stq $27,-400+1072($sp)
+lda $27,4294967295
+stq $27,-712+1072($sp)
+lda $27,4294967296
+stq $27,-80+1072($sp)
+lda $27,4294967296
+stq $27,-392+1072($sp)
+lda $27,4294967296
+stq $27,-704+1072($sp)
+lda $27,68719476735
+stq $27,-72+1072($sp)
+lda $27,68719476735
+stq $27,-384+1072($sp)
+lda $27,68719476735
+stq $27,-696+1072($sp)
+lda $27,68719476736
+stq $27,-64+1072($sp)
+lda $27,68719476736
+stq $27,-376+1072($sp)
+lda $27,68719476736
+stq $27,-688+1072($sp)
+mov $31,$13
+L.187:
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+lda $25,-368+1072($sp)
+addq $27,$25,$25
+ldq $25,($25)
+ldq $22,L.45($27)
+cmpeq $22,$25,$23
+beq $23,L.194
+lda $22,-680+1072($sp)
+addq $27,$22,$22
+ldq $22,($22)
+cmpeq $25,$22,$23
+beq $23,L.194
+lda $25,-992+1072($sp)
+addq $27,$25,$27
+ldq $27,($27)
+cmpeq $22,$27,$23
+bne $23,L.191
+L.194:
+ldl $27,40($14)
+cmpeq $27,$31,$23
+bne $23,L.195
+lda $16,L.197
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.198
+jsr $26,printf
+ldgp $gp,0($26)
+L.195:
+L.191:
+L.188:
+lda $13,1($13)
+cmplt $13,39,$23
+bne $23,L.187
+ldl $27,-996+1072($sp)
+cmpeq $27,$31,$23
+bne $23,L.199
+lda $10,16
+L.199:
+mov $10,$0
+L.42:
+ldq $10,0($sp)
+ldq $11,8($sp)
+ldq $12,16($sp)
+ldq $13,24($sp)
+ldq $14,32($sp)
+ldq $24,40($sp)
+ldq $26,48($sp)
+lda $sp,1072($sp)
+ret
+.end s241
+.globl pow2
+.text
+.ent pow2
+pow2:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+lda $14,1
+br L.203
+L.202:
+sll $14,1,$14
+L.203:
+mov $16,$27
+subq $27,1,$16
+cmpeq $27,$31,$23
+beq $23,L.202
+mov $14,$0
+L.201:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end pow2
+.sdata
+.align 0
+L.206:
+.byte 115
+.byte 50
+.byte 52
+.byte 51
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.207:
+.byte 115
+.byte 50
+.byte 52
+.byte 51
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s243
+.text
+.text
+.ent s243
+s243:
+ldgp $gp,0($27)
+lda $sp,-352($sp)
+.mask 0x5007000,-320
+.frame $sp,352,$26,48
+stq $12,0($sp)
+stq $13,8($sp)
+stq $14,16($sp)
+stq $24,24($sp)
+stq $26,32($sp)
+stq $16,304($sp)
+.prologue 1
+mov $31,$12
+lda $14,L.207
+ldq $27,-48+352($sp)
+lda $13,60($27)
+L.208:
+L.209:
+mov $13,$27
+lda $13,1($27)
+mov $14,$25
+lda $14,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.208
+lda $16,-312+352($sp)
+jsr $26,zerofill
+ldgp $gp,0($26)
+lda $27,1
+stb $27,-215+352($sp)
+lda $27,1
+stb $27,-247+352($sp)
+lda $27,1
+stb $27,-186+352($sp)
+lda $27,1
+stb $27,-264+352($sp)
+lda $27,1
+stb $27,-214+352($sp)
+lda $27,1
+stb $27,-246+352($sp)
+lda $27,1
+stb $27,-279+352($sp)
+lda $27,1
+stb $27,-263+352($sp)
+lda $27,1
+stb $27,-213+352($sp)
+lda $27,1
+stb $27,-245+352($sp)
+lda $27,1
+stb $27,-278+352($sp)
+lda $27,1
+stb $27,-262+352($sp)
+lda $27,1
+stb $27,-212+352($sp)
+lda $27,1
+stb $27,-244+352($sp)
+lda $27,1
+stb $27,-277+352($sp)
+lda $27,1
+stb $27,-261+352($sp)
+lda $27,1
+stb $27,-211+352($sp)
+lda $27,1
+stb $27,-243+352($sp)
+lda $27,1
+stb $27,-275+352($sp)
+lda $27,1
+stb $27,-260+352($sp)
+lda $27,1
+stb $27,-210+352($sp)
+lda $27,1
+stb $27,-242+352($sp)
+lda $27,1
+stb $27,-274+352($sp)
+lda $27,1
+stb $27,-259+352($sp)
+lda $27,1
+stb $27,-209+352($sp)
+lda $27,1
+stb $27,-241+352($sp)
+lda $27,1
+stb $27,-272+352($sp)
+lda $27,1
+stb $27,-258+352($sp)
+lda $27,1
+stb $27,-208+352($sp)
+lda $27,1
+stb $27,-240+352($sp)
+lda $27,1
+stb $27,-271+352($sp)
+lda $27,1
+stb $27,-257+352($sp)
+lda $27,1
+stb $27,-207+352($sp)
+lda $27,1
+stb $27,-239+352($sp)
+lda $27,1
+stb $27,-217+352($sp)
+lda $27,1
+stb $27,-256+352($sp)
+lda $27,1
+stb $27,-206+352($sp)
+lda $27,1
+stb $27,-238+352($sp)
+lda $27,1
+stb $27,-251+352($sp)
+lda $27,1
+stb $27,-255+352($sp)
+lda $27,1
+stb $27,-205+352($sp)
+lda $27,1
+stb $27,-237+352($sp)
+lda $27,1
+stb $27,-267+352($sp)
+lda $27,1
+stb $27,-204+352($sp)
+lda $27,1
+stb $27,-236+352($sp)
+lda $27,1
+stb $27,-218+352($sp)
+lda $27,1
+stb $27,-203+352($sp)
+lda $27,1
+stb $27,-235+352($sp)
+lda $27,1
+stb $27,-188+352($sp)
+lda $27,1
+stb $27,-302+352($sp)
+lda $27,1
+stb $27,-202+352($sp)
+lda $27,1
+stb $27,-234+352($sp)
+lda $27,1
+stb $27,-303+352($sp)
+lda $27,1
+stb $27,-201+352($sp)
+lda $27,1
+stb $27,-233+352($sp)
+lda $27,1
+stb $27,-189+352($sp)
+lda $27,1
+stb $27,-304+352($sp)
+lda $27,1
+stb $27,-200+352($sp)
+lda $27,1
+stb $27,-232+352($sp)
+lda $27,1
+stb $27,-187+352($sp)
+lda $27,1
+stb $27,-299+352($sp)
+lda $27,1
+stb $27,-199+352($sp)
+lda $27,1
+stb $27,-231+352($sp)
+lda $27,1
+stb $27,-221+352($sp)
+lda $27,1
+stb $27,-300+352($sp)
+lda $27,1
+stb $27,-198+352($sp)
+lda $27,1
+stb $27,-230+352($sp)
+lda $27,1
+stb $27,-219+352($sp)
+lda $27,1
+stb $27,-197+352($sp)
+lda $27,1
+stb $27,-229+352($sp)
+lda $27,1
+stb $27,-269+352($sp)
+lda $27,1
+stb $27,-220+352($sp)
+lda $27,1
+stb $27,-196+352($sp)
+lda $27,1
+stb $27,-228+352($sp)
+lda $27,1
+stb $27,-253+352($sp)
+lda $27,1
+stb $27,-273+352($sp)
+lda $27,1
+stb $27,-195+352($sp)
+lda $27,1
+stb $27,-227+352($sp)
+lda $27,1
+stb $27,-270+352($sp)
+lda $27,1
+stb $27,-194+352($sp)
+lda $27,1
+stb $27,-226+352($sp)
+lda $27,1
+stb $27,-254+352($sp)
+lda $27,1
+stb $27,-312+352($sp)
+stb $27,-193+352($sp)
+lda $27,1
+stb $27,-225+352($sp)
+lda $27,1
+stb $27,-252+352($sp)
+lda $27,1
+stb $27,-280+352($sp)
+lda $27,1
+stb $27,-192+352($sp)
+lda $27,1
+stb $27,-224+352($sp)
+lda $27,1
+stb $27,-250+352($sp)
+lda $27,1
+stb $27,-191+352($sp)
+lda $27,1
+stb $27,-223+352($sp)
+lda $27,1
+stb $27,-268+352($sp)
+lda $27,1
+stb $27,-190+352($sp)
+lda $27,1
+stb $27,-222+352($sp)
+lda $27,1
+stb $27,-266+352($sp)
+lda $27,1
+stb $27,-249+352($sp)
+lda $27,1
+stb $27,-265+352($sp)
+lda $16,-312+352($sp)
+jsr $26,sumof
+ldgp $gp,0($26)
+lda $25,98
+cmpeq $0,$25,$23
+bne $23,L.308
+lda $12,1($12)
+ldq $27,-48+352($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.310
+lda $16,L.206
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.310:
+L.308:
+br L.312
+lda $12,8($12)
+ldq $27,-48+352($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.314
+lda $16,L.206
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.314:
+L.312:
+mov $12,$0
+L.205:
+ldq $12,0($sp)
+ldq $13,8($sp)
+ldq $14,16($sp)
+ldq $24,24($sp)
+ldq $26,32($sp)
+lda $sp,352($sp)
+ret
+.end s243
+.globl zerofill
+.text
+.ent zerofill
+zerofill:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x5004000,-64
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $24,8($sp)
+stq $26,16($sp)
+.prologue 1
+mov $31,$14
+L.317:
+mov $16,$27
+lda $16,1($27)
+stb $31,($27)
+L.318:
+lda $14,1($14)
+lda $27,256
+cmplt $14,$27,$23
+bne $23,L.317
+mov $31,$0
+L.316:
+ldq $14,0($sp)
+ldq $24,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end zerofill
+.globl sumof
+.text
+.ent sumof
+sumof:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.mask 0x4007000,-72
+.frame $sp,96,$26,48
+stq $12,0($sp)
+stq $13,8($sp)
+stq $14,16($sp)
+stq $26,24($sp)
+.prologue 1
+mov $16,$12
+mov $31,$14
+mov $31,$13
+L.322:
+mov $12,$27
+lda $12,1($27)
+ldb $27,($27)
+addl $14,$27,$14
+L.323:
+lda $13,1($13)
+lda $27,256
+cmplt $13,$27,$23
+bne $23,L.322
+mov $14,$0
+L.321:
+ldq $12,0($sp)
+ldq $13,8($sp)
+ldq $14,16($sp)
+ldq $26,24($sp)
+lda $sp,96($sp)
+ret
+.end sumof
+.sdata
+.align 0
+L.327:
+.byte 115
+.byte 50
+.byte 52
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.328:
+.byte 115
+.byte 50
+.byte 52
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s244
+.text
+.text
+.ent s244
+s244:
+ldgp $gp,0($27)
+lda $sp,-176($sp)
+.mask 0x5007c00,-128
+.frame $sp,176,$26,48
+stq $10,0($sp)
+stq $11,8($sp)
+stq $12,16($sp)
+stq $13,24($sp)
+stq $14,32($sp)
+stq $24,40($sp)
+stq $26,48($sp)
+stq $16,128($sp)
+.prologue 1
+lda $13,L.328
+ldq $27,-48+176($sp)
+lda $12,60($27)
+L.329:
+L.330:
+mov $12,$27
+lda $12,1($27)
+mov $13,$25
+lda $13,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.329
+mov $31,$10
+mov $31,$11
+ldt $f30,L.332
+stt $f30,-120+176($sp)
+stt $f30,-112+176($sp)
+ldt $f30,L.332
+stt $f30,-104+176($sp)
+ldt $f30,L.332
+stt $f30,-96+176($sp)
+ldt $f30,L.332
+stt $f30,-88+176($sp)
+ldt $f30,L.332
+stt $f30,-80+176($sp)
+ldt $f30,L.332
+stt $f30,-72+176($sp)
+ldt $f30,L.332
+stt $f30,-64+176($sp)
+mov $31,$11
+mov $31,$14
+L.340:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+lda $25,-120+176($sp)
+addq $27,$25,$27
+ldt $f30,($27)
+lda $27,1($14)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+lda $25,-120+176($sp)
+addq $27,$25,$27
+ldt $f29,($27)
+cmpteq $f30,$f29,$f1
+fbne $f1,L.344
+lda $11,1
+L.344:
+L.341:
+lda $14,1($14)
+cmplt $14,7,$23
+bne $23,L.340
+cmpeq $11,$31,$23
+bne $23,L.346
+ldq $27,-48+176($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.348
+lda $16,L.327
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.348:
+lda $10,1($10)
+L.346:
+br L.350
+ldq $27,-48+176($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.352
+lda $16,L.327
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.352:
+lda $10,2($10)
+L.350:
+mov $10,$0
+L.326:
+ldq $10,0($sp)
+ldq $11,8($sp)
+ldq $12,16($sp)
+ldq $13,24($sp)
+ldq $14,32($sp)
+ldq $24,40($sp)
+ldq $26,48($sp)
+lda $sp,176($sp)
+ret
+.end s244
+.sdata
+.align 0
+L.355:
+.byte 115
+.byte 50
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.356:
+.byte 115
+.byte 50
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s25
+.text
+.text
+.ent s25
+s25:
+ldgp $gp,0($27)
+lda $sp,-128($sp)
+.mask 0x5007e00,-72
+.frame $sp,128,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+mov $16,$14
+.prologue 1
+lda $10,L.356
+lda $9,60($14)
+L.357:
+L.358:
+mov $9,$27
+lda $9,1($27)
+mov $10,$25
+lda $10,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.357
+stl $31,-60+128($sp)
+lda $12,L.360
+lda $27,1($12)
+ldb $27,($27)
+ldb $25,($12)
+cmpeq $25,$27,$23
+beq $23,L.364
+lda $25,2($12)
+ldb $25,($25)
+cmpeq $27,$25,$23
+beq $23,L.364
+cmpeq $25,46,$23
+bne $23,L.361
+L.364:
+ldl $27,-60+128($sp)
+lda $27,1($27)
+stl $27,-60+128($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.365
+lda $16,L.355
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.365:
+L.361:
+lda $27,3($12)
+ldb $27,($27)
+cmpeq $27,$31,$23
+bne $23,L.367
+ldl $27,-60+128($sp)
+lda $27,4($27)
+stl $27,-60+128($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.369
+lda $16,L.355
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.369:
+L.367:
+lda $27,L.373+1
+ldb $27,($27)
+cmpeq $27,34,$23
+bne $23,L.371
+ldl $27,-60+128($sp)
+lda $27,8($27)
+stl $27,-60+128($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.375
+lda $16,L.355
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.375:
+L.371:
+lda $12,L.377
+ldb $27,($12)
+cmpeq $27,10,$23
+beq $23,L.385
+lda $27,1($12)
+ldb $27,($27)
+cmpeq $27,9,$23
+beq $23,L.385
+lda $27,2($12)
+ldb $27,($27)
+cmpeq $27,8,$23
+beq $23,L.385
+lda $27,3($12)
+ldb $27,($27)
+cmpeq $27,13,$23
+beq $23,L.385
+lda $27,4($12)
+ldb $27,($27)
+cmpeq $27,12,$23
+beq $23,L.385
+lda $27,5($12)
+ldb $27,($27)
+lda $25,92
+cmpeq $27,$25,$23
+beq $23,L.385
+lda $27,6($12)
+ldb $27,($27)
+cmpeq $27,39,$23
+bne $23,L.378
+L.385:
+ldl $27,-60+128($sp)
+lda $27,16($27)
+stl $27,-60+128($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.386
+lda $16,L.355
+lda $17,16
+jsr $26,printf
+ldgp $gp,0($26)
+L.386:
+L.378:
+lda $27,L.388
+mov $27,$11
+mov $27,$12
+stl $31,-64+128($sp)
+mov $31,$13
+br L.392
+L.389:
+addq $13,$12,$27
+ldb $27,($27)
+addq $13,$11,$25
+ldb $25,($25)
+cmpeq $27,$25,$23
+bne $23,L.393
+lda $27,1
+stl $27,-64+128($sp)
+L.393:
+L.390:
+lda $13,1($13)
+L.392:
+mov $13,$27
+lda $25,7
+cmpult $27,$25,$23
+bne $23,L.389
+ldl $27,-64+128($sp)
+cmpeq $27,$31,$23
+bne $23,L.395
+ldl $27,-60+128($sp)
+lda $27,32($27)
+stl $27,-60+128($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.397
+lda $16,L.355
+lda $17,32
+jsr $26,printf
+ldgp $gp,0($26)
+L.397:
+L.395:
+ldl $0,-60+128($sp)
+L.354:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,128($sp)
+ret
+.end s25
+.sdata
+.align 0
+L.400:
+.byte 115
+.byte 50
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.401:
+.byte 37
+.byte 51
+.byte 100
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 37
+.byte 115
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.402:
+.byte 37
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 97
+.byte 100
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 49
+.byte 46
+.byte 32
+.byte 40
+.byte 37
+.byte 115
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.globl s26
+.text
+.text
+.ent s26
+s26:
+ldgp $gp,0($27)
+lda $sp,-160($sp)
+.fmask 0x3e0,-128
+.mask 0x5007c00,-72
+.frame $sp,160,$26,48
+stt $f5,0($sp)
+stt $f6,8($sp)
+stt $f7,16($sp)
+stt $f8,24($sp)
+stt $f9,32($sp)
+stq $10,40($sp)
+stq $11,48($sp)
+stq $12,56($sp)
+stq $13,64($sp)
+stq $14,72($sp)
+stq $24,80($sp)
+stq $26,88($sp)
+mov $16,$14
+.prologue 1
+lda $12,L.400
+lda $11,60($14)
+L.403:
+L.404:
+mov $11,$27
+lda $11,1($27)
+mov $12,$25
+lda $12,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.403
+stl $31,($14)
+mov $31,$10
+lda $13,1
+br L.407
+L.406:
+sll $13,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $27,1,$27
+addl $27,0,$27
+mov $27,$13
+ldl $27,($14)
+lda $27,1($27)
+stl $27,($14)
+L.407:
+sll $10,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $13,8*(8-1),$25
+sra $25,8*(8-1),$25
+cmpeq $27,$25,$23
+beq $23,L.406
+ldl $27,($14)
+sll $27,2,$27
+stl $27,4($14)
+ldl $27,($14)
+sll $27,1,$27
+stl $27,8($14)
+ldl $27,($14)
+sll $27,3,$27
+stl $27,12($14)
+ldl $27,($14)
+sll $27,2,$27
+stl $27,16($14)
+ldl $27,($14)
+sll $27,2,$27
+stl $27,20($14)
+ldl $27,($14)
+sll $27,3,$27
+stl $27,24($14)
+lds $f30,L.409
+fmov $f30,$f7
+fmov $f30,$f9
+lds $f8,L.410
+br L.412
+L.411:
+adds $f7,$f9,$f8
+cvtst $f9,$f30
+ldt $f29,L.414
+divt $f30,$f29,$f30
+cvtts $f30,$f9
+L.412:
+cmpteq $f8,$f7,$f1
+fbeq $f1,L.411
+ldt $f30,L.415
+cvtst $f9,$f29
+mult $f30,$f29,$f30
+cvtts $f30,$f30
+sts $f30,28($14)
+ldt $f5,L.416
+lds $f9,L.409
+ldt $f6,L.417
+br L.419
+L.418:
+cvtst $f9,$f30
+addt $f5,$f30,$f6
+ldt $f29,L.414
+divt $f30,$f29,$f30
+cvtts $f30,$f9
+L.419:
+cmpteq $f6,$f5,$f1
+fbeq $f1,L.418
+ldt $f30,L.415
+cvtst $f9,$f29
+mult $f30,$f29,$f30
+cvtts $f30,$f30
+sts $f30,32($14)
+ldl $27,40($14)
+cmpeq $27,$31,$23
+bne $23,L.421
+lda $16,L.401
+ldl $17,($14)
+lda $18,L.423
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.401
+ldl $17,4($14)
+lda $18,L.424
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.401
+ldl $17,8($14)
+lda $18,L.425
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.401
+ldl $17,12($14)
+lda $18,L.426
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.401
+ldl $17,16($14)
+lda $18,L.427
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.401
+ldl $17,20($14)
+lda $18,L.428
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.401
+ldl $17,24($14)
+lda $18,L.429
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.402
+lds $f30,28($14)
+cvtst $f30,$f17
+lda $18,L.428
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.402
+lds $f30,32($14)
+cvtst $f30,$f17
+lda $18,L.429
+jsr $26,printf
+ldgp $gp,0($26)
+L.421:
+mov $31,$0
+L.399:
+ldt $f5,0($sp)
+ldt $f6,8($sp)
+ldt $f7,16($sp)
+ldt $f8,24($sp)
+ldt $f9,32($sp)
+ldq $10,40($sp)
+ldq $11,48($sp)
+ldq $12,56($sp)
+ldq $13,64($sp)
+ldq $14,72($sp)
+ldq $24,80($sp)
+ldq $26,88($sp)
+lda $sp,160($sp)
+ret
+.end s26
+.sdata
+.align 0
+L.431:
+.byte 115
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.432:
+.byte 115
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s4
+.text
+.text
+.ent s4
+s4:
+ldgp $gp,0($27)
+lda $sp,-160($sp)
+.mask 0x5007e00,-104
+.frame $sp,160,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+mov $16,$14
+.prologue 1
+stl $31,-60+160($sp)
+lda $10,L.432
+lda $9,60($14)
+L.433:
+L.434:
+mov $9,$27
+lda $9,1($27)
+mov $10,$25
+lda $10,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.433
+mov $31,$13
+L.436:
+mov $13,$16
+jsr $26,svtest
+ldgp $gp,0($26)
+mov $0,$27
+stl $27,-84+160($sp)
+jsr $26,zero
+ldgp $gp,0($26)
+ldl $25,-84+160($sp)
+cmpeq $25,$0,$23
+bne $23,L.440
+lda $27,1
+stl $27,-60+160($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.442
+lda $16,L.431
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.442:
+L.440:
+L.437:
+lda $13,1($13)
+cmplt $13,3,$23
+bne $23,L.436
+jsr $26,setev
+ldgp $gp,0($26)
+jsr $26,testev
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+bne $23,L.444
+ldl $27,-60+160($sp)
+lda $27,2($27)
+stl $27,-60+160($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.446
+lda $16,L.431
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.446:
+L.444:
+br L.448
+ldl $27,-60+160($sp)
+lda $27,4($27)
+stl $27,-60+160($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.450
+lda $16,L.431
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.450:
+L.448:
+lda $12,0xffffffff
+lda $11,1
+mov $31,$13
+br L.455
+L.452:
+and $11,$12,$11
+srl $12,1,$12
+L.453:
+lda $13,1($13)
+L.455:
+mov $13,$27
+ldl $25,($14)
+sll $25,2,$25
+cmpult $27,$25,$23
+bne $23,L.452
+lda $27,1
+cmpeq $11,$27,$23
+beq $23,L.458
+cmpeq $12,$31,$23
+bne $23,L.456
+L.458:
+ldl $27,-60+160($sp)
+lda $27,8($27)
+stl $27,-60+160($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.459
+lda $16,L.431
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.459:
+L.456:
+ldl $0,-60+160($sp)
+L.430:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,160($sp)
+ret
+.end s4
+.lcomm L.462,4
+.globl svtest
+.text
+.text
+.ent svtest
+svtest:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+cmpeq $16,$31,$23
+bne $23,L.465
+cmpeq $16,1,$23
+bne $23,L.466
+cmpeq $16,2,$23
+bne $23,L.469
+br L.463
+L.465:
+lda $27,1978
+stl $27,L.462
+stl $31,-60+64($sp)
+br L.464
+L.466:
+ldl $27,L.462
+lda $25,1978
+cmpeq $27,$25,$23
+bne $23,L.467
+lda $27,1
+stl $27,-60+64($sp)
+br L.464
+L.467:
+lda $27,1929
+stl $27,L.462
+stl $31,-60+64($sp)
+br L.464
+L.469:
+ldl $27,L.462
+lda $25,1929
+cmpeq $27,$25,$23
+bne $23,L.470
+lda $27,1
+stl $27,-60+64($sp)
+br L.464
+L.470:
+stl $31,-60+64($sp)
+L.463:
+L.464:
+ldl $0,-60+64($sp)
+L.461:
+lda $sp,64($sp)
+ret
+.end svtest
+.lcomm L.473,4
+.globl zero
+.text
+.text
+.ent zero
+zero:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+lda $27,2
+stl $27,L.473
+stl $31,-60+64($sp)
+ldl $0,-60+64($sp)
+L.472:
+lda $sp,64($sp)
+ret
+.end zero
+.globl testev
+.text
+.ent testev
+testev:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+ldl $27,extvar
+lda $25,1066
+cmpeq $27,$25,$23
+bne $23,L.475
+lda $0,1
+br L.474
+L.475:
+mov $31,$0
+L.474:
+lda $sp,64($sp)
+ret
+.end testev
+.sdata
+.align 0
+L.478:
+.byte 115
+.byte 54
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.479:
+.byte 115
+.byte 54
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.480:
+.byte 65
+.byte 66
+.byte 67
+.byte 68
+.byte 69
+.byte 70
+.byte 71
+.byte 72
+.byte 73
+.byte 74
+.byte 75
+.byte 76
+.byte 77
+.byte 78
+.byte 79
+.byte 80
+.byte 81
+.byte 82
+.byte 83
+.byte 84
+.byte 85
+.byte 86
+.byte 87
+.byte 88
+.byte 89
+.byte 90
+.byte 0
+.align 0
+L.481:
+.byte 97
+.byte 98
+.byte 99
+.byte 100
+.byte 101
+.byte 102
+.byte 103
+.byte 104
+.byte 105
+.byte 106
+.byte 107
+.byte 108
+.byte 109
+.byte 110
+.byte 111
+.byte 112
+.byte 113
+.byte 114
+.byte 115
+.byte 116
+.byte 117
+.byte 118
+.byte 119
+.byte 120
+.byte 121
+.byte 122
+.byte 0
+.align 0
+L.482:
+.byte 48
+.byte 49
+.byte 50
+.byte 51
+.byte 52
+.byte 53
+.byte 54
+.byte 55
+.byte 56
+.byte 57
+.byte 0
+.align 0
+L.483:
+.byte 126
+.byte 33
+.byte 34
+.byte 35
+.byte 37
+.byte 38
+.byte 40
+.byte 41
+.byte 95
+.byte 61
+.byte 45
+.byte 94
+.byte 124
+.byte 123
+.byte 125
+.byte 91
+.byte 93
+.byte 43
+.byte 59
+.byte 42
+.byte 58
+.byte 60
+.byte 62
+.byte 44
+.byte 46
+.byte 63
+.byte 47
+.byte 0
+.align 0
+L.484:
+.byte 10
+.byte 9
+.byte 8
+.byte 13
+.byte 12
+.byte 92
+.byte 39
+.byte 0
+.align 0
+L.485:
+.byte 32
+.byte 0
+.byte 0
+.globl s61
+.text
+.text
+.ent s61
+s61:
+ldgp $gp,0($27)
+lda $sp,-192($sp)
+.mask 0x5007e00,-136
+.frame $sp,192,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+stq $16,144($sp)
+.prologue 1
+lda $12,L.479
+ldq $27,-48+192($sp)
+lda $11,60($27)
+mov $31,$9
+L.486:
+L.487:
+mov $11,$27
+lda $11,1($27)
+mov $12,$25
+lda $12,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.486
+lda $27,-19
+stw $27,-110+192($sp)
+lda $27,-110+192($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+stq $27,-120+192($sp)
+ldq $27,-120+192($sp)
+lda $25,-19
+cmpeq $27,$25,$23
+bne $23,L.489
+lda $9,1($9)
+ldq $27,-48+192($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.491
+lda $16,L.478
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.491:
+L.489:
+lda $27,L.480
+stq $27,-104+192($sp)
+lda $27,L.481
+stq $27,-96+192($sp)
+lda $27,L.482
+stq $27,-88+192($sp)
+lda $27,L.483
+stq $27,-80+192($sp)
+lda $27,L.484
+stq $27,-72+192($sp)
+lda $27,L.485
+stq $27,-64+192($sp)
+mov $31,$13
+mov $31,$14
+br L.503
+L.502:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+lda $25,-104+192($sp)
+addq $27,$25,$27
+ldq $25,($27)
+lda $22,1($25)
+stq $22,($27)
+ldb $27,($25)
+cmplt $27,$31,$23
+beq $23,L.505
+lda $13,1
+L.505:
+L.503:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+lda $25,-104+192($sp)
+addq $27,$25,$27
+ldq $27,($27)
+ldb $27,($27)
+cmpeq $27,$31,$23
+beq $23,L.502
+L.499:
+lda $14,1($14)
+cmplt $14,6,$23
+bne $23,L.503
+cmpeq $13,$31,$23
+bne $23,L.507
+lda $9,2($9)
+ldq $27,-48+192($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.509
+lda $16,L.478
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.509:
+L.507:
+lda $10,1048579
+mov $10,$27
+stw $27,-106+192($sp)
+mov $10,$27
+stb $27,-107+192($sp)
+lda $27,-106+192($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$25
+sra $25,8*(8-4),$25
+cmpeq $25,$10,$23
+bne $23,L.514
+cmpeq $27,3,$23
+beq $23,L.513
+L.514:
+lda $27,-107+192($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$25
+sra $25,8*(8-4),$25
+cmpeq $25,$10,$23
+bne $23,L.511
+cmpeq $27,3,$23
+bne $23,L.511
+L.513:
+lda $9,8($9)
+ldq $27,-48+192($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.515
+lda $16,L.478
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.515:
+L.511:
+mov $9,$0
+L.477:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,192($sp)
+ret
+.end s61
+.sdata
+.align 0
+L.518:
+.byte 115
+.byte 54
+.byte 50
+.byte 54
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.519:
+.byte 115
+.byte 54
+.byte 50
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s626
+.text
+.text
+.ent s626
+s626:
+ldgp $gp,0($27)
+lda $sp,-240($sp)
+.fmask 0x3c0,-216
+.mask 0x5007e00,-152
+.frame $sp,240,$26,48
+stt $f6,0($sp)
+stt $f7,8($sp)
+stt $f8,16($sp)
+stt $f9,24($sp)
+stq $9,32($sp)
+stq $10,40($sp)
+stq $11,48($sp)
+stq $12,56($sp)
+stq $13,64($sp)
+stq $14,72($sp)
+stq $24,80($sp)
+stq $26,88($sp)
+mov $16,$14
+.prologue 1
+lda $10,L.519
+lda $9,60($14)
+stl $31,-128+240($sp)
+L.520:
+L.521:
+mov $9,$27
+lda $9,1($27)
+mov $10,$25
+lda $10,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.520
+lds $f9,L.409
+lda $27,1
+stq $27,-96+240($sp)
+mov $27,$12
+mov $31,$13
+br L.526
+L.523:
+lds $f30,L.527
+muls $f30,$f9,$f9
+sll $12,1,$27
+ldq $25,-96+240($sp)
+or $27,$25,$12
+L.524:
+lda $13,1($13)
+L.526:
+ldl $27,12($14)
+subl $27,2,$27
+cmplt $13,$27,$23
+bne $23,L.523
+stq $12,-56+240($sp)
+ldt $f30,-56+240($sp)
+cvtqs $f30,$f30
+sts $f30,-140+240($sp)
+lds $f30,-140+240($sp)
+subs $f9,$f30,$f30
+divs $f30,$f9,$f9
+cvtst $f9,$f30
+ldt $f29,L.414
+lds $f28,28($14)
+cvtst $f28,$f28
+mult $f29,$f28,$f29
+cmptle $f30,$f29,$f1
+fbne $f1,L.528
+ldl $27,-128+240($sp)
+lda $27,2($27)
+stl $27,-128+240($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.530
+lda $16,L.518
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.530:
+L.528:
+lda $27,125
+stb $27,-105+240($sp)
+lda $27,125
+stw $27,-108+240($sp)
+lda $27,125
+stl $27,-112+240($sp)
+lda $27,15625
+stl $27,-120+240($sp)
+lda $27,125
+stl $27,-116+240($sp)
+lda $27,15625
+stl $27,-124+240($sp)
+lda $27,125
+stq $27,-104+240($sp)
+lda $27,15625
+stq $27,-136+240($sp)
+lds $f7,L.532
+ldt $f6,L.533
+ldt $f8,L.534
+mov $31,$13
+L.535:
+lda $27,-84+240($sp)
+addq $13,$27,$27
+stb $31,($27)
+L.536:
+lda $13,1($13)
+cmplt $13,28,$23
+bne $23,L.535
+lda $27,-105+240($sp)
+ldb $27,($27)
+mull $27,$27,$27
+ldl $25,-120+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.539
+lda $27,1
+stb $27,-84+240($sp)
+L.539:
+lda $27,-108+240($sp)
+ldw $27,($27)
+lda $25,-105+240($sp)
+ldb $25,($25)
+mull $27,$25,$27
+ldl $25,-120+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.541
+lda $27,1
+stb $27,-83+240($sp)
+L.541:
+lda $27,-108+240($sp)
+ldw $27,($27)
+mull $27,$27,$27
+ldl $25,-120+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.544
+lda $27,1
+stb $27,-82+240($sp)
+L.544:
+ldl $27,-112+240($sp)
+lda $25,-105+240($sp)
+ldb $25,($25)
+mull $27,$25,$27
+ldl $25,-120+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.547
+lda $27,1
+stb $27,-81+240($sp)
+L.547:
+ldl $27,-112+240($sp)
+lda $25,-108+240($sp)
+ldw $25,($25)
+mull $27,$25,$27
+ldl $25,-120+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.550
+lda $27,1
+stb $27,-80+240($sp)
+L.550:
+ldl $27,-112+240($sp)
+mull $27,$27,$27
+ldl $25,-120+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.553
+lda $27,1
+stb $27,-79+240($sp)
+L.553:
+ldl $27,-116+240($sp)
+zap $27,240,$27
+lda $25,-105+240($sp)
+ldb $25,($25)
+mull $27,$25,$27
+zap $27,240,$27
+ldl $25,-124+240($sp)
+zap $25,240,$25
+cmpeq $27,$25,$23
+bne $23,L.556
+lda $27,1
+stb $27,-78+240($sp)
+L.556:
+ldl $27,-116+240($sp)
+zap $27,240,$27
+lda $25,-108+240($sp)
+ldw $25,($25)
+mull $27,$25,$27
+zap $27,240,$27
+ldl $25,-124+240($sp)
+zap $25,240,$25
+cmpeq $27,$25,$23
+bne $23,L.559
+lda $27,1
+stb $27,-77+240($sp)
+L.559:
+ldl $27,-116+240($sp)
+zap $27,240,$27
+ldl $25,-112+240($sp)
+mull $27,$25,$27
+zap $27,240,$27
+ldl $25,-124+240($sp)
+zap $25,240,$25
+cmpeq $27,$25,$23
+bne $23,L.562
+lda $27,1
+stb $27,-76+240($sp)
+L.562:
+ldl $27,-116+240($sp)
+zap $27,240,$27
+mull $27,$27,$27
+zap $27,240,$27
+ldl $25,-124+240($sp)
+zap $25,240,$25
+cmpeq $27,$25,$23
+bne $23,L.565
+lda $27,1
+stb $27,-75+240($sp)
+L.565:
+ldq $27,-104+240($sp)
+lda $25,-105+240($sp)
+ldb $25,($25)
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+mulq $27,$25,$27
+ldq $25,-136+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.568
+lda $27,1
+stb $27,-74+240($sp)
+L.568:
+ldq $27,-104+240($sp)
+lda $25,-108+240($sp)
+ldw $25,($25)
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+mulq $27,$25,$27
+ldq $25,-136+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.571
+lda $27,1
+stb $27,-73+240($sp)
+L.571:
+ldq $27,-104+240($sp)
+ldl $25,-112+240($sp)
+mulq $27,$25,$27
+ldq $25,-136+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.574
+lda $27,1
+stb $27,-72+240($sp)
+L.574:
+ldq $27,-104+240($sp)
+ldl $25,-116+240($sp)
+zap $25,240,$25
+mulq $27,$25,$27
+ldl $25,-124+240($sp)
+zap $25,240,$25
+cmpeq $27,$25,$23
+bne $23,L.577
+lda $27,1
+stb $27,-71+240($sp)
+L.577:
+ldq $27,-104+240($sp)
+mulq $27,$27,$27
+ldq $25,-136+240($sp)
+cmpeq $27,$25,$23
+bne $23,L.580
+lda $27,1
+stb $27,-70+240($sp)
+L.580:
+lda $27,-105+240($sp)
+ldb $27,($27)
+stq $27,-56+240($sp)
+ldt $f30,-56+240($sp)
+cvtqs $f30,$f30
+muls $f7,$f30,$f30
+cvtst $f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.583
+lda $27,1
+stb $27,-69+240($sp)
+L.583:
+lda $27,-108+240($sp)
+ldw $27,($27)
+stq $27,-56+240($sp)
+ldt $f30,-56+240($sp)
+cvtqs $f30,$f30
+muls $f7,$f30,$f30
+cvtst $f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.586
+lda $27,1
+stb $27,-68+240($sp)
+L.586:
+lds $f30,-112+240($sp)
+cvtlq $f30,$f30
+cvtqs $f30,$f30
+muls $f7,$f30,$f30
+cvtst $f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.589
+lda $27,1
+stb $27,-67+240($sp)
+L.589:
+ldl $27,-116+240($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+240($sp)
+ldt $f29,-56+240($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+240($sp)
+ldt $f29,-56+240($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f30
+muls $f7,$f30,$f30
+cvtst $f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.592
+lda $27,1
+stb $27,-66+240($sp)
+L.592:
+ldt $f30,-104+240($sp)
+cvtqs $f30,$f30
+muls $f7,$f30,$f30
+cvtst $f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.596
+lda $27,1
+stb $27,-65+240($sp)
+L.596:
+muls $f7,$f7,$f30
+cvtst $f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.599
+lda $27,1
+stb $27,-64+240($sp)
+L.599:
+lda $27,-105+240($sp)
+ldb $27,($27)
+stq $27,-56+240($sp)
+ldt $f30,-56+240($sp)
+cvtqt $f30,$f30
+mult $f6,$f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.602
+lda $27,1
+stb $27,-63+240($sp)
+L.602:
+lda $27,-108+240($sp)
+ldw $27,($27)
+stq $27,-56+240($sp)
+ldt $f30,-56+240($sp)
+cvtqt $f30,$f30
+mult $f6,$f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.605
+lda $27,1
+stb $27,-62+240($sp)
+L.605:
+lds $f30,-112+240($sp)
+cvtlq $f30,$f30
+cvtqt $f30,$f30
+mult $f6,$f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.608
+lda $27,1
+stb $27,-61+240($sp)
+L.608:
+ldl $27,-116+240($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+240($sp)
+ldt $f29,-56+240($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+240($sp)
+ldt $f29,-56+240($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+mult $f6,$f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.611
+lda $27,1
+stb $27,-60+240($sp)
+L.611:
+ldt $f30,-104+240($sp)
+cvtqt $f30,$f30
+mult $f6,$f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.614
+lda $27,1
+stb $27,-59+240($sp)
+L.614:
+cvtst $f7,$f30
+mult $f6,$f30,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.617
+lda $27,1
+stb $27,-58+240($sp)
+L.617:
+mult $f6,$f6,$f30
+cmpteq $f30,$f8,$f1
+fbne $f1,L.620
+lda $27,1
+stb $27,-57+240($sp)
+L.620:
+mov $31,$11
+mov $31,$13
+L.623:
+sll $11,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-84+240($sp)
+addq $13,$25,$25
+ldb $25,($25)
+addl $27,$25,$27
+mov $27,$11
+L.624:
+lda $13,1($13)
+cmplt $13,28,$23
+bne $23,L.623
+sll $11,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+bne $23,L.627
+ldl $27,-128+240($sp)
+lda $27,4($27)
+stl $27,-128+240($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.629
+lda $16,L.518
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.631
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$13
+L.632:
+lda $16,L.636
+lda $27,-84+240($sp)
+addq $13,$27,$27
+ldb $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.633:
+lda $13,1($13)
+cmplt $13,28,$23
+bne $23,L.632
+lda $16,L.637
+jsr $26,printf
+ldgp $gp,0($26)
+L.629:
+L.627:
+lda $27,32768
+stq $27,-104+240($sp)
+ldq $25,-104+240($sp)
+cmple $25,$27,$23
+bne $23,L.638
+ldl $27,-128+240($sp)
+lda $27,8($27)
+stl $27,-128+240($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.640
+lda $16,L.518
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.640:
+L.638:
+ldl $0,-128+240($sp)
+L.517:
+ldt $f6,0($sp)
+ldt $f7,8($sp)
+ldt $f8,16($sp)
+ldt $f9,24($sp)
+ldq $9,32($sp)
+ldq $10,40($sp)
+ldq $11,48($sp)
+ldq $12,56($sp)
+ldq $13,64($sp)
+ldq $14,72($sp)
+ldq $24,80($sp)
+ldq $26,88($sp)
+lda $sp,240($sp)
+ret
+.end s626
+.sdata
+.align 0
+L.643:
+.byte 115
+.byte 55
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.644:
+.byte 115
+.byte 55
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.645:
+.byte 0x71
+.globl s71
+.text
+.text
+.ent s71
+s71:
+ldgp $gp,0($27)
+lda $sp,-176($sp)
+.mask 0x5007c00,-128
+.frame $sp,176,$26,48
+stq $10,0($sp)
+stq $11,8($sp)
+stq $12,16($sp)
+stq $13,24($sp)
+stq $14,32($sp)
+stq $24,40($sp)
+stq $26,48($sp)
+mov $16,$14
+.prologue 1
+lda $13,L.644
+lda $12,60($14)
+mov $31,$11
+L.646:
+L.647:
+mov $12,$27
+lda $12,1($27)
+mov $13,$25
+lda $13,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.646
+lda $27,L.651
+ldb $27,($27)
+lda $25,L.645
+ldb $25,($25)
+cmpeq $27,$25,$23
+bne $23,L.649
+lda $11,1($11)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.652
+lda $16,L.643
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.652:
+L.649:
+br L.654
+lda $11,2($11)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.656
+lda $16,L.643
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.656:
+L.654:
+lda $27,1942
+stl $27,-76+176($sp)
+ldl $27,-76+176($sp)
+lda $25,1942
+cmpeq $27,$25,$23
+beq $23,L.664
+ldl $27,-76+176($sp)
+ldl $25,-76+176($sp)
+cmpeq $27,$25,$23
+bne $23,L.659
+L.664:
+lda $11,4($11)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.665
+lda $16,L.643
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.665:
+L.659:
+lda $16,-5
+jsr $26,McCarthy
+ldgp $gp,0($26)
+lda $25,91
+cmpeq $0,$25,$23
+bne $23,L.667
+lda $11,8($11)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.669
+lda $16,L.643
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.669:
+L.667:
+lda $10,2
+lda $27,3
+stl $27,-100+176($sp)
+lda $27,-100+176($sp)
+stq $27,-112+176($sp)
+mov $10,$16
+ldq $17,-112+176($sp)
+jsr $26,clobber
+ldgp $gp,0($26)
+cmpeq $10,2,$23
+beq $23,L.673
+ldl $27,-100+176($sp)
+cmpeq $27,2,$23
+bne $23,L.671
+L.673:
+lda $11,16($11)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.674
+lda $16,L.643
+lda $17,16
+jsr $26,printf
+ldgp $gp,0($26)
+L.674:
+L.671:
+lds $f30,32($14)
+cmpteq $f30,$f30,$f1
+fbne $f1,L.676
+lda $11,32($11)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.678
+lda $16,L.643
+lda $17,32
+jsr $26,printf
+ldgp $gp,0($26)
+L.678:
+L.676:
+mov $11,$0
+L.642:
+ldq $10,0($sp)
+ldq $11,8($sp)
+ldq $12,16($sp)
+ldq $13,24($sp)
+ldq $14,32($sp)
+ldq $24,40($sp)
+ldq $26,48($sp)
+lda $sp,176($sp)
+ret
+.end s71
+.globl McCarthy
+.text
+.ent McCarthy
+McCarthy:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+.prologue 1
+ldl $27,-48+64($sp)
+lda $25,100
+cmple $27,$25,$23
+bne $23,L.681
+ldl $27,-48+64($sp)
+subl $27,10,$0
+br L.680
+L.681:
+ldl $27,-48+64($sp)
+lda $16,11($27)
+jsr $26,McCarthy
+ldgp $gp,0($26)
+mov $0,$27
+mov $27,$16
+jsr $26,McCarthy
+ldgp $gp,0($26)
+mov $0,$27
+L.680:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end McCarthy
+.globl clobber
+.text
+.ent clobber
+clobber:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+lda $16,3
+lda $27,2
+stl $27,($17)
+mov $31,$0
+L.683:
+lda $sp,64($sp)
+ret
+.end clobber
+.sdata
+.align 0
+L.685:
+.byte 76
+.byte 111
+.byte 99
+.byte 97
+.byte 108
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.686:
+.byte 115
+.byte 55
+.byte 49
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.687:
+.byte 115
+.byte 55
+.byte 49
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s714
+.text
+.text
+.ent s714
+s714:
+ldgp $gp,0($27)
+lda $sp,-256($sp)
+.fmask 0x3c0,-232
+.mask 0x5007e00,-168
+.frame $sp,256,$26,48
+stt $f6,0($sp)
+stt $f7,8($sp)
+stt $f8,16($sp)
+stt $f9,24($sp)
+stq $9,32($sp)
+stq $10,40($sp)
+stq $11,48($sp)
+stq $12,56($sp)
+stq $13,64($sp)
+stq $14,72($sp)
+stq $24,80($sp)
+stq $26,88($sp)
+stq $16,208($sp)
+.prologue 1
+lda $27,L.687
+stq $27,-96+256($sp)
+ldq $27,-48+256($sp)
+lda $25,60($27)
+stq $25,-104+256($sp)
+stl $31,-108+256($sp)
+mov $31,$13
+ldl $14,48($27)
+L.688:
+L.689:
+ldq $27,-104+256($sp)
+lda $25,1($27)
+stq $25,-104+256($sp)
+ldq $25,-96+256($sp)
+lda $22,1($25)
+stq $22,-96+256($sp)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.688
+lda $12,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $12,($27)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.691
+lda $13,1
+cmpeq $14,$31,$23
+bne $23,L.693
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.693:
+L.691:
+lda $12,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.695
+lda $13,2
+cmpeq $14,$31,$23
+bne $23,L.697
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.697:
+L.695:
+lda $12,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.699
+lda $13,3
+cmpeq $14,$31,$23
+bne $23,L.701
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.701:
+L.699:
+lda $12,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.703
+lda $13,4
+cmpeq $14,$31,$23
+bne $23,L.705
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.705:
+L.703:
+lda $12,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.707
+lda $13,5
+cmpeq $14,$31,$23
+bne $23,L.709
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.709:
+L.707:
+lda $12,5
+lds $f7,L.527
+cvttqc $f7,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.711
+lda $13,6
+cmpeq $14,$31,$23
+bne $23,L.713
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.713:
+L.711:
+lda $12,5
+ldt $f6,L.414
+cvttqc $f6,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.715
+lda $13,7
+cmpeq $14,$31,$23
+bne $23,L.717
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.717:
+L.715:
+lda $11,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.719
+lda $13,8
+cmpeq $14,$31,$23
+bne $23,L.721
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.721:
+L.719:
+lda $11,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $11,($27)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.723
+lda $13,9
+cmpeq $14,$31,$23
+bne $23,L.725
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.725:
+L.723:
+lda $11,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.727
+lda $13,10
+cmpeq $14,$31,$23
+bne $23,L.729
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.729:
+L.727:
+lda $11,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.731
+lda $13,11
+cmpeq $14,$31,$23
+bne $23,L.733
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.733:
+L.731:
+lda $11,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.735
+lda $13,12
+cmpeq $14,$31,$23
+bne $23,L.737
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.737:
+L.735:
+lda $11,5
+lds $f7,L.527
+cvttqc $f7,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.739
+lda $13,13
+cmpeq $14,$31,$23
+bne $23,L.741
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.741:
+L.739:
+lda $11,5
+ldt $f6,L.414
+cvttqc $f6,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.743
+lda $13,14
+cmpeq $14,$31,$23
+bne $23,L.745
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.745:
+L.743:
+lda $10,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $10,($27)
+cmpeq $10,2,$23
+bne $23,L.747
+lda $13,15
+cmpeq $14,$31,$23
+bne $23,L.749
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.749:
+L.747:
+lda $10,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $10,($27)
+cmpeq $10,2,$23
+bne $23,L.751
+lda $13,16
+cmpeq $14,$31,$23
+bne $23,L.753
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.753:
+L.751:
+lda $10,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $10,-68+256($sp)
+cmpeq $10,2,$23
+bne $23,L.755
+lda $13,17
+cmpeq $14,$31,$23
+bne $23,L.757
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.757:
+L.755:
+lda $10,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+mov $27,$10
+cmpeq $10,2,$23
+bne $23,L.759
+lda $13,18
+cmpeq $14,$31,$23
+bne $23,L.761
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.761:
+L.759:
+lda $10,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+mov $27,$10
+cmpeq $10,2,$23
+bne $23,L.763
+lda $13,19
+cmpeq $14,$31,$23
+bne $23,L.765
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.765:
+L.763:
+lda $10,5
+lds $f7,L.527
+cvttqc $f7,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,2,$23
+bne $23,L.767
+lda $13,20
+cmpeq $14,$31,$23
+bne $23,L.769
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.769:
+L.767:
+lda $10,5
+ldt $f6,L.414
+cvttqc $f6,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,2,$23
+bne $23,L.771
+lda $13,21
+cmpeq $14,$31,$23
+bne $23,L.773
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.773:
+L.771:
+lda $9,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$9
+sra $9,8*(8-4),$9
+cmpeq $9,2,$23
+bne $23,L.775
+lda $13,22
+cmpeq $14,$31,$23
+bne $23,L.777
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.777:
+L.775:
+lda $9,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$9
+sra $9,8*(8-4),$9
+cmpeq $9,2,$23
+bne $23,L.779
+lda $13,23
+cmpeq $14,$31,$23
+bne $23,L.781
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.781:
+L.779:
+lda $9,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $9,-68+256($sp)
+cmpeq $9,2,$23
+bne $23,L.783
+lda $13,24
+cmpeq $14,$31,$23
+bne $23,L.785
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.785:
+L.783:
+lda $9,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $9,-80+256($sp)
+cmpeq $9,2,$23
+bne $23,L.787
+lda $13,25
+cmpeq $14,$31,$23
+bne $23,L.789
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.789:
+L.787:
+lda $9,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $9,-84+256($sp)
+zap $9,240,$9
+cmpeq $9,2,$23
+bne $23,L.791
+lda $13,26
+cmpeq $14,$31,$23
+bne $23,L.793
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.793:
+L.791:
+lda $9,5
+lds $f7,L.527
+cvttqc $f7,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,2,$23
+bne $23,L.795
+lda $13,27
+cmpeq $14,$31,$23
+bne $23,L.797
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.797:
+L.795:
+lda $9,5
+ldt $f6,L.414
+cvttqc $f6,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,2,$23
+bne $23,L.799
+lda $13,28
+cmpeq $14,$31,$23
+bne $23,L.801
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.801:
+L.799:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.803
+lda $13,29
+cmpeq $14,$31,$23
+bne $23,L.805
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.805:
+L.803:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.807
+lda $13,30
+cmpeq $14,$31,$23
+bne $23,L.809
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.809:
+L.807:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.811
+lda $13,31
+cmpeq $14,$31,$23
+bne $23,L.813
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.813:
+L.811:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.815
+lda $13,32
+cmpeq $14,$31,$23
+bne $23,L.817
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.817:
+L.815:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-84+256($sp)
+ldl $25,-84+256($sp)
+zap $25,240,$25
+stl $25,-60+256($sp)
+ldl $25,-60+256($sp)
+zap $25,240,$25
+cmpeq $25,$27,$23
+bne $23,L.819
+lda $13,33
+cmpeq $14,$31,$23
+bne $23,L.821
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.821:
+L.819:
+lda $27,5
+stl $27,-60+256($sp)
+lds $f7,L.527
+lds $f30,L.826
+cmptlt $f7,$f30,$f1
+fbne $f1,L.824
+subs $f7,$f30,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-112+256($sp)
+br L.825
+L.824:
+cvttqc $f7,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-112+256($sp)
+L.825:
+ldl $27,-112+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.827
+lda $13,34
+cmpeq $14,$31,$23
+bne $23,L.829
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.829:
+L.827:
+lda $27,5
+stl $27,-60+256($sp)
+ldt $f6,L.414
+ldt $f30,L.834
+cmptlt $f6,$f30,$f1
+fbne $f1,L.832
+subt $f6,$f30,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-116+256($sp)
+br L.833
+L.832:
+cvttqc $f6,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-116+256($sp)
+L.833:
+ldl $27,-116+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.835
+lda $13,35
+cmpeq $14,$31,$23
+bne $23,L.837
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.837:
+L.835:
+lds $f9,L.839
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f9,-56+256($sp)
+cvtqs $f9,$f9
+lds $f30,L.527
+cmpteq $f9,$f30,$f1
+fbne $f1,L.840
+lda $13,36
+cmpeq $14,$31,$23
+bne $23,L.842
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.842:
+L.840:
+lds $f9,L.839
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f9,-56+256($sp)
+cvtqs $f9,$f9
+lds $f30,L.527
+cmpteq $f9,$f30,$f1
+fbne $f1,L.844
+lda $13,37
+cmpeq $14,$31,$23
+bne $23,L.846
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.846:
+L.844:
+lds $f9,L.839
+lda $27,2
+stl $27,-68+256($sp)
+lds $f9,-68+256($sp)
+cvtlq $f9,$f9
+cvtqs $f9,$f9
+lds $f30,L.527
+cmpteq $f9,$f30,$f1
+fbne $f1,L.848
+lda $13,38
+cmpeq $14,$31,$23
+bne $23,L.850
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.850:
+L.848:
+lds $f9,L.839
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f9,-80+256($sp)
+cvtqs $f9,$f9
+lds $f30,L.527
+cmpteq $f9,$f30,$f1
+fbne $f1,L.852
+lda $13,39
+cmpeq $14,$31,$23
+bne $23,L.854
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.854:
+L.852:
+lds $f9,L.839
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f9
+lds $f30,L.527
+cmpteq $f9,$f30,$f1
+fbne $f1,L.856
+lda $13,40
+cmpeq $14,$31,$23
+bne $23,L.858
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.858:
+L.856:
+lds $f9,L.839
+lds $f30,L.527
+fmov $f30,$f7
+fmov $f7,$f9
+cmpteq $f9,$f30,$f1
+fbne $f1,L.860
+lda $13,41
+cmpeq $14,$31,$23
+bne $23,L.862
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.862:
+L.860:
+lds $f9,L.839
+ldt $f6,L.414
+cvtts $f6,$f9
+lds $f30,L.527
+cmpteq $f9,$f30,$f1
+fbne $f1,L.864
+lda $13,42
+cmpeq $14,$31,$23
+bne $23,L.866
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.866:
+L.864:
+ldt $f8,L.868
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f8,-56+256($sp)
+cvtqt $f8,$f8
+ldt $f30,L.414
+cmpteq $f8,$f30,$f1
+fbne $f1,L.869
+lda $13,43
+cmpeq $14,$31,$23
+bne $23,L.871
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.871:
+L.869:
+ldt $f8,L.868
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f8,-56+256($sp)
+cvtqt $f8,$f8
+ldt $f30,L.414
+cmpteq $f8,$f30,$f1
+fbne $f1,L.873
+lda $13,44
+cmpeq $14,$31,$23
+bne $23,L.875
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.875:
+L.873:
+ldt $f8,L.868
+lda $27,2
+stl $27,-68+256($sp)
+lds $f8,-68+256($sp)
+cvtlq $f8,$f8
+cvtqt $f8,$f8
+ldt $f30,L.414
+cmpteq $f8,$f30,$f1
+fbne $f1,L.877
+lda $13,45
+cmpeq $14,$31,$23
+bne $23,L.879
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.879:
+L.877:
+ldt $f8,L.868
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f8,-80+256($sp)
+cvtqt $f8,$f8
+ldt $f30,L.414
+cmpteq $f8,$f30,$f1
+fbne $f1,L.881
+lda $13,46
+cmpeq $14,$31,$23
+bne $23,L.883
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.883:
+L.881:
+ldt $f8,L.868
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f8
+ldt $f30,L.414
+cmpteq $f8,$f30,$f1
+fbne $f1,L.885
+lda $13,47
+cmpeq $14,$31,$23
+bne $23,L.887
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.887:
+L.885:
+ldt $f8,L.868
+lds $f7,L.527
+cvtst $f7,$f8
+ldt $f30,L.414
+cmpteq $f8,$f30,$f1
+fbne $f1,L.889
+lda $13,48
+cmpeq $14,$31,$23
+bne $23,L.891
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.891:
+L.889:
+ldt $f8,L.868
+ldt $f30,L.414
+fmov $f30,$f6
+fmov $f6,$f8
+cmpteq $f8,$f30,$f1
+fbne $f1,L.893
+lda $13,49
+cmpeq $14,$31,$23
+bne $23,L.895
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.895:
+L.893:
+lda $12,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+addl $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,7,$23
+bne $23,L.897
+lda $13,50
+cmpeq $14,$31,$23
+bne $23,L.899
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.899:
+L.897:
+lda $12,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+addl $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,7,$23
+bne $23,L.901
+lda $13,51
+cmpeq $14,$31,$23
+bne $23,L.903
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.903:
+L.901:
+lda $12,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+addl $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,7,$23
+bne $23,L.905
+lda $13,52
+cmpeq $14,$31,$23
+bne $23,L.907
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.907:
+L.905:
+lda $12,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+addq $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,7,$23
+bne $23,L.909
+lda $13,53
+cmpeq $14,$31,$23
+bne $23,L.911
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.911:
+L.909:
+lda $12,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+addl $27,$25,$27
+zap $27,240,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,7,$23
+bne $23,L.913
+lda $13,54
+cmpeq $14,$31,$23
+bne $23,L.915
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.915:
+L.913:
+lda $12,5
+lds $f7,L.527
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+adds $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,7,$23
+bne $23,L.917
+lda $13,55
+cmpeq $14,$31,$23
+bne $23,L.919
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.919:
+L.917:
+lda $12,5
+ldt $f6,L.414
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+addt $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,7,$23
+bne $23,L.921
+lda $13,56
+cmpeq $14,$31,$23
+bne $23,L.923
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.923:
+L.921:
+lda $11,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+addl $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,7,$23
+bne $23,L.925
+lda $13,57
+cmpeq $14,$31,$23
+bne $23,L.927
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.927:
+L.925:
+lda $11,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+addl $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,7,$23
+bne $23,L.929
+lda $13,58
+cmpeq $14,$31,$23
+bne $23,L.931
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.931:
+L.929:
+lda $11,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+addl $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,7,$23
+bne $23,L.933
+lda $13,59
+cmpeq $14,$31,$23
+bne $23,L.935
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.935:
+L.933:
+lda $11,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+addq $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,7,$23
+bne $23,L.937
+lda $13,60
+cmpeq $14,$31,$23
+bne $23,L.939
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.939:
+L.937:
+lda $11,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+addl $27,$25,$27
+zap $27,240,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,7,$23
+bne $23,L.941
+lda $13,61
+cmpeq $14,$31,$23
+bne $23,L.943
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.943:
+L.941:
+lda $11,5
+lds $f7,L.527
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+adds $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,7,$23
+bne $23,L.945
+lda $13,62
+cmpeq $14,$31,$23
+bne $23,L.947
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.947:
+L.945:
+lda $11,5
+ldt $f6,L.414
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+addt $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,7,$23
+bne $23,L.949
+lda $13,63
+cmpeq $14,$31,$23
+bne $23,L.951
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.951:
+L.949:
+lda $10,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+addl $10,$27,$10
+cmpeq $10,7,$23
+bne $23,L.953
+lda $13,64
+cmpeq $14,$31,$23
+bne $23,L.955
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.955:
+L.953:
+lda $10,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+addl $10,$27,$10
+cmpeq $10,7,$23
+bne $23,L.957
+lda $13,65
+cmpeq $14,$31,$23
+bne $23,L.959
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.959:
+L.957:
+lda $10,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+addl $10,$27,$10
+cmpeq $10,7,$23
+bne $23,L.961
+lda $13,66
+cmpeq $14,$31,$23
+bne $23,L.963
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.963:
+L.961:
+lda $10,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+addq $27,$25,$27
+mov $27,$10
+cmpeq $10,7,$23
+bne $23,L.965
+lda $13,67
+cmpeq $14,$31,$23
+bne $23,L.967
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.967:
+L.965:
+lda $10,5
+lda $27,2
+stl $27,-84+256($sp)
+mov $10,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+addl $27,$25,$27
+zap $27,240,$27
+mov $27,$10
+cmpeq $10,7,$23
+bne $23,L.969
+lda $13,68
+cmpeq $14,$31,$23
+bne $23,L.971
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.971:
+L.969:
+lda $10,5
+lds $f7,L.527
+stq $10,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+adds $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,7,$23
+bne $23,L.973
+lda $13,69
+cmpeq $14,$31,$23
+bne $23,L.975
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.975:
+L.973:
+lda $10,5
+ldt $f6,L.414
+stq $10,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+addt $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,7,$23
+bne $23,L.977
+lda $13,70
+cmpeq $14,$31,$23
+bne $23,L.979
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.979:
+L.977:
+lda $9,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+addq $9,$27,$9
+cmpeq $9,7,$23
+bne $23,L.981
+lda $13,71
+cmpeq $14,$31,$23
+bne $23,L.983
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.983:
+L.981:
+lda $9,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+addq $9,$27,$9
+cmpeq $9,7,$23
+bne $23,L.985
+lda $13,72
+cmpeq $14,$31,$23
+bne $23,L.987
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.987:
+L.985:
+lda $9,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+addq $9,$27,$9
+cmpeq $9,7,$23
+bne $23,L.989
+lda $13,73
+cmpeq $14,$31,$23
+bne $23,L.991
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.991:
+L.989:
+lda $9,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+addq $9,$27,$9
+cmpeq $9,7,$23
+bne $23,L.993
+lda $13,74
+cmpeq $14,$31,$23
+bne $23,L.995
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.995:
+L.993:
+lda $9,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+addq $9,$27,$9
+cmpeq $9,7,$23
+bne $23,L.997
+lda $13,75
+cmpeq $14,$31,$23
+bne $23,L.999
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.999:
+L.997:
+lda $9,5
+lds $f7,L.527
+stq $9,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+adds $f30,$f7,$f30
+cvttqc $f30,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,7,$23
+bne $23,L.1001
+lda $13,76
+cmpeq $14,$31,$23
+bne $23,L.1003
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1003:
+L.1001:
+lda $9,5
+ldt $f6,L.414
+stq $9,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+addt $f30,$f6,$f30
+cvttqc $f30,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,7,$23
+bne $23,L.1005
+lda $13,77
+cmpeq $14,$31,$23
+bne $23,L.1007
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1007:
+L.1005:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+addl $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,7
+cmpeq $27,$25,$23
+bne $23,L.1009
+lda $13,78
+cmpeq $14,$31,$23
+bne $23,L.1011
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1011:
+L.1009:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+addl $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,7
+cmpeq $27,$25,$23
+bne $23,L.1013
+lda $13,79
+cmpeq $14,$31,$23
+bne $23,L.1015
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1015:
+L.1013:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+addl $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,7
+cmpeq $27,$25,$23
+bne $23,L.1017
+lda $13,80
+cmpeq $14,$31,$23
+bne $23,L.1019
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1019:
+L.1017:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+addq $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,7
+cmpeq $27,$25,$23
+bne $23,L.1021
+lda $13,81
+cmpeq $14,$31,$23
+bne $23,L.1023
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1023:
+L.1021:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+addl $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,7
+cmpeq $27,$25,$23
+bne $23,L.1025
+lda $13,82
+cmpeq $14,$31,$23
+bne $23,L.1027
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1027:
+L.1025:
+lda $27,5
+stl $27,-60+256($sp)
+lds $f7,L.527
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f30
+adds $f30,$f7,$f30
+lds $f29,L.826
+cmptlt $f30,$f29,$f1
+fbne $f1,L.1030
+subs $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-120+256($sp)
+br L.1031
+L.1030:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-120+256($sp)
+L.1031:
+ldl $27,-120+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,7
+cmpeq $27,$25,$23
+bne $23,L.1032
+lda $13,83
+cmpeq $14,$31,$23
+bne $23,L.1034
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1034:
+L.1032:
+lda $27,5
+stl $27,-60+256($sp)
+ldt $f6,L.414
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+addt $f30,$f6,$f30
+ldt $f29,L.834
+cmptlt $f30,$f29,$f1
+fbne $f1,L.1037
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-124+256($sp)
+br L.1038
+L.1037:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-124+256($sp)
+L.1038:
+ldl $27,-124+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,7
+cmpeq $27,$25,$23
+bne $23,L.1039
+lda $13,84
+cmpeq $14,$31,$23
+bne $23,L.1041
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1041:
+L.1039:
+lds $f9,L.839
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+adds $f9,$f30,$f9
+lds $f30,L.1045
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1043
+lda $13,85
+cmpeq $14,$31,$23
+bne $23,L.1046
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1046:
+L.1043:
+lds $f9,L.839
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+adds $f9,$f30,$f9
+lds $f30,L.1045
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1048
+lda $13,86
+cmpeq $14,$31,$23
+bne $23,L.1050
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1050:
+L.1048:
+lds $f9,L.839
+lda $27,2
+stl $27,-68+256($sp)
+lds $f30,-68+256($sp)
+cvtlq $f30,$f30
+cvtqs $f30,$f30
+adds $f9,$f30,$f9
+lds $f30,L.1045
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1052
+lda $13,87
+cmpeq $14,$31,$23
+bne $23,L.1054
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1054:
+L.1052:
+lds $f9,L.839
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f30,-80+256($sp)
+cvtqs $f30,$f30
+adds $f9,$f30,$f9
+lds $f30,L.1045
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1056
+lda $13,88
+cmpeq $14,$31,$23
+bne $23,L.1058
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1058:
+L.1056:
+lds $f9,L.839
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f30
+adds $f9,$f30,$f9
+lds $f30,L.1045
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1060
+lda $13,89
+cmpeq $14,$31,$23
+bne $23,L.1062
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1062:
+L.1060:
+lds $f9,L.839
+lds $f7,L.527
+adds $f9,$f7,$f9
+lds $f30,L.1045
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1064
+lda $13,90
+cmpeq $14,$31,$23
+bne $23,L.1066
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1066:
+L.1064:
+lds $f9,L.839
+ldt $f6,L.414
+cvtst $f9,$f30
+addt $f30,$f6,$f30
+cvtts $f30,$f9
+lds $f30,L.1045
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1068
+lda $13,91
+cmpeq $14,$31,$23
+bne $23,L.1070
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1070:
+L.1068:
+ldt $f8,L.868
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+addt $f8,$f30,$f8
+ldt $f30,L.1074
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1072
+lda $13,92
+cmpeq $14,$31,$23
+bne $23,L.1075
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1075:
+L.1072:
+ldt $f8,L.868
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+addt $f8,$f30,$f8
+ldt $f30,L.1074
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1077
+lda $13,93
+cmpeq $14,$31,$23
+bne $23,L.1079
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1079:
+L.1077:
+ldt $f8,L.868
+lda $27,2
+stl $27,-68+256($sp)
+lds $f30,-68+256($sp)
+cvtlq $f30,$f30
+cvtqt $f30,$f30
+addt $f8,$f30,$f8
+ldt $f30,L.1074
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1081
+lda $13,94
+cmpeq $14,$31,$23
+bne $23,L.1083
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1083:
+L.1081:
+ldt $f8,L.868
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f30,-80+256($sp)
+cvtqt $f30,$f30
+addt $f8,$f30,$f8
+ldt $f30,L.1074
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1085
+lda $13,95
+cmpeq $14,$31,$23
+bne $23,L.1087
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1087:
+L.1085:
+ldt $f8,L.868
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+addt $f8,$f30,$f8
+ldt $f30,L.1074
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1089
+lda $13,96
+cmpeq $14,$31,$23
+bne $23,L.1091
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1091:
+L.1089:
+ldt $f8,L.868
+lds $f7,L.527
+cvtst $f7,$f30
+addt $f8,$f30,$f8
+ldt $f30,L.1074
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1093
+lda $13,97
+cmpeq $14,$31,$23
+bne $23,L.1095
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1095:
+L.1093:
+ldt $f8,L.868
+ldt $f6,L.414
+addt $f8,$f6,$f8
+ldt $f30,L.1074
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1097
+lda $13,98
+cmpeq $14,$31,$23
+bne $23,L.1099
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1099:
+L.1097:
+lda $12,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+subl $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,3,$23
+bne $23,L.1101
+lda $13,99
+cmpeq $14,$31,$23
+bne $23,L.1103
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1103:
+L.1101:
+lda $12,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+subl $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,3,$23
+bne $23,L.1105
+lda $13,100
+cmpeq $14,$31,$23
+bne $23,L.1107
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1107:
+L.1105:
+lda $12,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+subl $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,3,$23
+bne $23,L.1109
+lda $13,101
+cmpeq $14,$31,$23
+bne $23,L.1111
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1111:
+L.1109:
+lda $12,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+subq $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,3,$23
+bne $23,L.1113
+lda $13,102
+cmpeq $14,$31,$23
+bne $23,L.1115
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1115:
+L.1113:
+lda $12,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+subl $27,$25,$27
+zap $27,240,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,3,$23
+bne $23,L.1117
+lda $13,103
+cmpeq $14,$31,$23
+bne $23,L.1119
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1119:
+L.1117:
+lda $12,5
+lds $f7,L.527
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+subs $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,3,$23
+bne $23,L.1121
+lda $13,104
+cmpeq $14,$31,$23
+bne $23,L.1123
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1123:
+L.1121:
+lda $12,5
+ldt $f6,L.414
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+subt $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,3,$23
+bne $23,L.1125
+lda $13,105
+cmpeq $14,$31,$23
+bne $23,L.1127
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1127:
+L.1125:
+lda $11,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+subl $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,3,$23
+bne $23,L.1129
+lda $13,106
+cmpeq $14,$31,$23
+bne $23,L.1131
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1131:
+L.1129:
+lda $11,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+subl $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,3,$23
+bne $23,L.1133
+lda $13,107
+cmpeq $14,$31,$23
+bne $23,L.1135
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1135:
+L.1133:
+lda $11,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+subl $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,3,$23
+bne $23,L.1137
+lda $13,108
+cmpeq $14,$31,$23
+bne $23,L.1139
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1139:
+L.1137:
+lda $11,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+subq $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,3,$23
+bne $23,L.1141
+lda $13,109
+cmpeq $14,$31,$23
+bne $23,L.1143
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1143:
+L.1141:
+lda $11,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+subl $27,$25,$27
+zap $27,240,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,3,$23
+bne $23,L.1145
+lda $13,110
+cmpeq $14,$31,$23
+bne $23,L.1147
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1147:
+L.1145:
+lda $11,5
+lds $f7,L.527
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+subs $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,3,$23
+bne $23,L.1149
+lda $13,111
+cmpeq $14,$31,$23
+bne $23,L.1151
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1151:
+L.1149:
+lda $11,5
+ldt $f6,L.414
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+subt $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,3,$23
+bne $23,L.1153
+lda $13,112
+cmpeq $14,$31,$23
+bne $23,L.1155
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1155:
+L.1153:
+lda $10,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+subl $10,$27,$10
+cmpeq $10,3,$23
+bne $23,L.1157
+lda $13,113
+cmpeq $14,$31,$23
+bne $23,L.1159
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1159:
+L.1157:
+lda $10,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+subl $10,$27,$10
+cmpeq $10,3,$23
+bne $23,L.1161
+lda $13,114
+cmpeq $14,$31,$23
+bne $23,L.1163
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1163:
+L.1161:
+lda $10,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+subl $10,$27,$10
+cmpeq $10,3,$23
+bne $23,L.1165
+lda $13,115
+cmpeq $14,$31,$23
+bne $23,L.1167
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1167:
+L.1165:
+lda $10,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+subq $27,$25,$27
+mov $27,$10
+cmpeq $10,3,$23
+bne $23,L.1169
+lda $13,116
+cmpeq $14,$31,$23
+bne $23,L.1171
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1171:
+L.1169:
+lda $10,5
+lda $27,2
+stl $27,-84+256($sp)
+mov $10,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+subl $27,$25,$27
+zap $27,240,$27
+mov $27,$10
+cmpeq $10,3,$23
+bne $23,L.1173
+lda $13,117
+cmpeq $14,$31,$23
+bne $23,L.1175
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1175:
+L.1173:
+lda $10,5
+lds $f7,L.527
+stq $10,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+subs $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,3,$23
+bne $23,L.1177
+lda $13,118
+cmpeq $14,$31,$23
+bne $23,L.1179
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1179:
+L.1177:
+lda $10,5
+ldt $f6,L.414
+stq $10,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+subt $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,3,$23
+bne $23,L.1181
+lda $13,119
+cmpeq $14,$31,$23
+bne $23,L.1183
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1183:
+L.1181:
+lda $9,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+subq $9,$27,$9
+cmpeq $9,3,$23
+bne $23,L.1185
+lda $13,120
+cmpeq $14,$31,$23
+bne $23,L.1187
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1187:
+L.1185:
+lda $9,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+subq $9,$27,$9
+cmpeq $9,3,$23
+bne $23,L.1189
+lda $13,121
+cmpeq $14,$31,$23
+bne $23,L.1191
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1191:
+L.1189:
+lda $9,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+subq $9,$27,$9
+cmpeq $9,3,$23
+bne $23,L.1193
+lda $13,122
+cmpeq $14,$31,$23
+bne $23,L.1195
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1195:
+L.1193:
+lda $9,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+subq $9,$27,$9
+cmpeq $9,3,$23
+bne $23,L.1197
+lda $13,123
+cmpeq $14,$31,$23
+bne $23,L.1199
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1199:
+L.1197:
+lda $9,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+subq $9,$27,$9
+cmpeq $9,3,$23
+bne $23,L.1201
+lda $13,124
+cmpeq $14,$31,$23
+bne $23,L.1203
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1203:
+L.1201:
+lda $9,5
+lds $f7,L.527
+stq $9,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+subs $f30,$f7,$f30
+cvttqc $f30,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,3,$23
+bne $23,L.1205
+lda $13,125
+cmpeq $14,$31,$23
+bne $23,L.1207
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1207:
+L.1205:
+lda $9,5
+ldt $f6,L.414
+stq $9,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+subt $f30,$f6,$f30
+cvttqc $f30,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,3,$23
+bne $23,L.1209
+lda $13,126
+cmpeq $14,$31,$23
+bne $23,L.1211
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1211:
+L.1209:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+subl $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,3
+cmpeq $27,$25,$23
+bne $23,L.1213
+lda $13,127
+cmpeq $14,$31,$23
+bne $23,L.1215
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1215:
+L.1213:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+subl $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,3
+cmpeq $27,$25,$23
+bne $23,L.1217
+lda $13,128
+cmpeq $14,$31,$23
+bne $23,L.1219
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1219:
+L.1217:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+subl $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,3
+cmpeq $27,$25,$23
+bne $23,L.1221
+lda $13,129
+cmpeq $14,$31,$23
+bne $23,L.1223
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1223:
+L.1221:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+subq $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,3
+cmpeq $27,$25,$23
+bne $23,L.1225
+lda $13,130
+cmpeq $14,$31,$23
+bne $23,L.1227
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1227:
+L.1225:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+subl $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,3
+cmpeq $27,$25,$23
+bne $23,L.1229
+lda $13,131
+cmpeq $14,$31,$23
+bne $23,L.1231
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1231:
+L.1229:
+lda $27,5
+stl $27,-60+256($sp)
+lds $f7,L.527
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f30
+subs $f30,$f7,$f30
+lds $f29,L.826
+cmptlt $f30,$f29,$f1
+fbne $f1,L.1234
+subs $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-128+256($sp)
+br L.1235
+L.1234:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-128+256($sp)
+L.1235:
+ldl $27,-128+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,3
+cmpeq $27,$25,$23
+bne $23,L.1236
+lda $13,132
+cmpeq $14,$31,$23
+bne $23,L.1238
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1238:
+L.1236:
+lda $27,5
+stl $27,-60+256($sp)
+ldt $f6,L.414
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+subt $f30,$f6,$f30
+ldt $f29,L.834
+cmptlt $f30,$f29,$f1
+fbne $f1,L.1241
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-132+256($sp)
+br L.1242
+L.1241:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-132+256($sp)
+L.1242:
+ldl $27,-132+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,3
+cmpeq $27,$25,$23
+bne $23,L.1243
+lda $13,133
+cmpeq $14,$31,$23
+bne $23,L.1245
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1245:
+L.1243:
+lds $f9,L.839
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+subs $f9,$f30,$f9
+lds $f30,L.1249
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1247
+lda $13,134
+cmpeq $14,$31,$23
+bne $23,L.1250
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1250:
+L.1247:
+lds $f9,L.839
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+subs $f9,$f30,$f9
+lds $f30,L.1249
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1252
+lda $13,135
+cmpeq $14,$31,$23
+bne $23,L.1254
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1254:
+L.1252:
+lds $f9,L.839
+lda $27,2
+stl $27,-68+256($sp)
+lds $f30,-68+256($sp)
+cvtlq $f30,$f30
+cvtqs $f30,$f30
+subs $f9,$f30,$f9
+lds $f30,L.1249
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1256
+lda $13,136
+cmpeq $14,$31,$23
+bne $23,L.1258
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1258:
+L.1256:
+lds $f9,L.839
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f30,-80+256($sp)
+cvtqs $f30,$f30
+subs $f9,$f30,$f9
+lds $f30,L.1249
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1260
+lda $13,137
+cmpeq $14,$31,$23
+bne $23,L.1262
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1262:
+L.1260:
+lds $f9,L.839
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f30
+subs $f9,$f30,$f9
+lds $f30,L.1249
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1264
+lda $13,138
+cmpeq $14,$31,$23
+bne $23,L.1266
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1266:
+L.1264:
+lds $f9,L.839
+lds $f7,L.527
+subs $f9,$f7,$f9
+lds $f30,L.1249
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1268
+lda $13,139
+cmpeq $14,$31,$23
+bne $23,L.1270
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1270:
+L.1268:
+lds $f9,L.839
+ldt $f6,L.414
+cvtst $f9,$f30
+subt $f30,$f6,$f30
+cvtts $f30,$f9
+lds $f30,L.1249
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1272
+lda $13,140
+cmpeq $14,$31,$23
+bne $23,L.1274
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1274:
+L.1272:
+ldt $f8,L.868
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+subt $f8,$f30,$f8
+ldt $f30,L.1278
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1276
+lda $13,141
+cmpeq $14,$31,$23
+bne $23,L.1279
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1279:
+L.1276:
+ldt $f8,L.868
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+subt $f8,$f30,$f8
+ldt $f30,L.1278
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1281
+lda $13,142
+cmpeq $14,$31,$23
+bne $23,L.1283
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1283:
+L.1281:
+ldt $f8,L.868
+lda $27,2
+stl $27,-68+256($sp)
+lds $f30,-68+256($sp)
+cvtlq $f30,$f30
+cvtqt $f30,$f30
+subt $f8,$f30,$f8
+ldt $f30,L.1278
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1285
+lda $13,143
+cmpeq $14,$31,$23
+bne $23,L.1287
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1287:
+L.1285:
+ldt $f8,L.868
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f30,-80+256($sp)
+cvtqt $f30,$f30
+subt $f8,$f30,$f8
+ldt $f30,L.1278
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1289
+lda $13,144
+cmpeq $14,$31,$23
+bne $23,L.1291
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1291:
+L.1289:
+ldt $f8,L.868
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+subt $f8,$f30,$f8
+ldt $f30,L.1278
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1293
+lda $13,145
+cmpeq $14,$31,$23
+bne $23,L.1295
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1295:
+L.1293:
+ldt $f8,L.868
+lds $f7,L.527
+cvtst $f7,$f30
+subt $f8,$f30,$f8
+ldt $f30,L.1278
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1297
+lda $13,146
+cmpeq $14,$31,$23
+bne $23,L.1299
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1299:
+L.1297:
+ldt $f8,L.868
+ldt $f6,L.414
+subt $f8,$f6,$f8
+ldt $f30,L.1278
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1301
+lda $13,147
+cmpeq $14,$31,$23
+bne $23,L.1303
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1303:
+L.1301:
+lda $12,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+mull $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,10,$23
+bne $23,L.1305
+lda $13,148
+cmpeq $14,$31,$23
+bne $23,L.1307
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1307:
+L.1305:
+lda $12,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+mull $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,10,$23
+bne $23,L.1309
+lda $13,149
+cmpeq $14,$31,$23
+bne $23,L.1311
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1311:
+L.1309:
+lda $12,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+mull $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,10,$23
+bne $23,L.1313
+lda $13,150
+cmpeq $14,$31,$23
+bne $23,L.1315
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1315:
+L.1313:
+lda $12,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+mulq $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,10,$23
+bne $23,L.1317
+lda $13,151
+cmpeq $14,$31,$23
+bne $23,L.1319
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1319:
+L.1317:
+lda $12,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+mull $27,$25,$27
+zap $27,240,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,10,$23
+bne $23,L.1321
+lda $13,152
+cmpeq $14,$31,$23
+bne $23,L.1323
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1323:
+L.1321:
+lda $12,5
+lds $f7,L.527
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+muls $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,10,$23
+bne $23,L.1325
+lda $13,153
+cmpeq $14,$31,$23
+bne $23,L.1327
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1327:
+L.1325:
+lda $12,5
+ldt $f6,L.414
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+mult $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,10,$23
+bne $23,L.1329
+lda $13,154
+cmpeq $14,$31,$23
+bne $23,L.1331
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1331:
+L.1329:
+lda $11,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+mull $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,10,$23
+bne $23,L.1333
+lda $13,155
+cmpeq $14,$31,$23
+bne $23,L.1335
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1335:
+L.1333:
+lda $11,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+mull $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,10,$23
+bne $23,L.1337
+lda $13,156
+cmpeq $14,$31,$23
+bne $23,L.1339
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1339:
+L.1337:
+lda $11,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+mull $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,10,$23
+bne $23,L.1341
+lda $13,157
+cmpeq $14,$31,$23
+bne $23,L.1343
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1343:
+L.1341:
+lda $11,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+mulq $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,10,$23
+bne $23,L.1345
+lda $13,158
+cmpeq $14,$31,$23
+bne $23,L.1347
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1347:
+L.1345:
+lda $11,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+mull $27,$25,$27
+zap $27,240,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,10,$23
+bne $23,L.1349
+lda $13,159
+cmpeq $14,$31,$23
+bne $23,L.1351
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1351:
+L.1349:
+lda $11,5
+lds $f7,L.527
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+muls $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,10,$23
+bne $23,L.1353
+lda $13,160
+cmpeq $14,$31,$23
+bne $23,L.1355
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1355:
+L.1353:
+lda $11,5
+ldt $f6,L.414
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+mult $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,10,$23
+bne $23,L.1357
+lda $13,161
+cmpeq $14,$31,$23
+bne $23,L.1359
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1359:
+L.1357:
+lda $10,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+mull $10,$27,$10
+cmpeq $10,10,$23
+bne $23,L.1361
+lda $13,162
+cmpeq $14,$31,$23
+bne $23,L.1363
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1363:
+L.1361:
+lda $10,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+mull $10,$27,$10
+cmpeq $10,10,$23
+bne $23,L.1365
+lda $13,163
+cmpeq $14,$31,$23
+bne $23,L.1367
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1367:
+L.1365:
+lda $10,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+mull $10,$27,$10
+cmpeq $10,10,$23
+bne $23,L.1369
+lda $13,164
+cmpeq $14,$31,$23
+bne $23,L.1371
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1371:
+L.1369:
+lda $10,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+mulq $27,$25,$27
+mov $27,$10
+cmpeq $10,10,$23
+bne $23,L.1373
+lda $13,165
+cmpeq $14,$31,$23
+bne $23,L.1375
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1375:
+L.1373:
+lda $10,5
+lda $27,2
+stl $27,-84+256($sp)
+mov $10,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+mull $27,$25,$27
+zap $27,240,$27
+mov $27,$10
+cmpeq $10,10,$23
+bne $23,L.1377
+lda $13,166
+cmpeq $14,$31,$23
+bne $23,L.1379
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1379:
+L.1377:
+lda $10,5
+lds $f7,L.527
+stq $10,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+muls $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,10,$23
+bne $23,L.1381
+lda $13,167
+cmpeq $14,$31,$23
+bne $23,L.1383
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1383:
+L.1381:
+lda $10,5
+ldt $f6,L.414
+stq $10,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+mult $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,10,$23
+bne $23,L.1385
+lda $13,168
+cmpeq $14,$31,$23
+bne $23,L.1387
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1387:
+L.1385:
+lda $9,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+mulq $9,$27,$9
+cmpeq $9,10,$23
+bne $23,L.1389
+lda $13,169
+cmpeq $14,$31,$23
+bne $23,L.1391
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1391:
+L.1389:
+lda $9,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+mulq $9,$27,$9
+cmpeq $9,10,$23
+bne $23,L.1393
+lda $13,170
+cmpeq $14,$31,$23
+bne $23,L.1395
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1395:
+L.1393:
+lda $9,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+mulq $9,$27,$9
+cmpeq $9,10,$23
+bne $23,L.1397
+lda $13,171
+cmpeq $14,$31,$23
+bne $23,L.1399
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1399:
+L.1397:
+lda $9,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+mulq $9,$27,$9
+cmpeq $9,10,$23
+bne $23,L.1401
+lda $13,172
+cmpeq $14,$31,$23
+bne $23,L.1403
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1403:
+L.1401:
+lda $9,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+mulq $9,$27,$9
+cmpeq $9,10,$23
+bne $23,L.1405
+lda $13,173
+cmpeq $14,$31,$23
+bne $23,L.1407
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1407:
+L.1405:
+lda $9,5
+lds $f7,L.527
+stq $9,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+muls $f30,$f7,$f30
+cvttqc $f30,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,10,$23
+bne $23,L.1409
+lda $13,174
+cmpeq $14,$31,$23
+bne $23,L.1411
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1411:
+L.1409:
+lda $9,5
+ldt $f6,L.414
+stq $9,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+mult $f30,$f6,$f30
+cvttqc $f30,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,10,$23
+bne $23,L.1413
+lda $13,175
+cmpeq $14,$31,$23
+bne $23,L.1415
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1415:
+L.1413:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+mull $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,10
+cmpeq $27,$25,$23
+bne $23,L.1417
+lda $13,176
+cmpeq $14,$31,$23
+bne $23,L.1419
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1419:
+L.1417:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+mull $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,10
+cmpeq $27,$25,$23
+bne $23,L.1421
+lda $13,177
+cmpeq $14,$31,$23
+bne $23,L.1423
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1423:
+L.1421:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+mull $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,10
+cmpeq $27,$25,$23
+bne $23,L.1425
+lda $13,178
+cmpeq $14,$31,$23
+bne $23,L.1427
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1427:
+L.1425:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+mulq $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,10
+cmpeq $27,$25,$23
+bne $23,L.1429
+lda $13,179
+cmpeq $14,$31,$23
+bne $23,L.1431
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1431:
+L.1429:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+mull $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,10
+cmpeq $27,$25,$23
+bne $23,L.1433
+lda $13,180
+cmpeq $14,$31,$23
+bne $23,L.1435
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1435:
+L.1433:
+lda $27,5
+stl $27,-60+256($sp)
+lds $f7,L.527
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f30
+muls $f30,$f7,$f30
+lds $f29,L.826
+cmptlt $f30,$f29,$f1
+fbne $f1,L.1438
+subs $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-136+256($sp)
+br L.1439
+L.1438:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-136+256($sp)
+L.1439:
+ldl $27,-136+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,10
+cmpeq $27,$25,$23
+bne $23,L.1440
+lda $13,181
+cmpeq $14,$31,$23
+bne $23,L.1442
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1442:
+L.1440:
+lda $27,5
+stl $27,-60+256($sp)
+ldt $f6,L.414
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+mult $f30,$f6,$f30
+ldt $f29,L.834
+cmptlt $f30,$f29,$f1
+fbne $f1,L.1445
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-140+256($sp)
+br L.1446
+L.1445:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-140+256($sp)
+L.1446:
+ldl $27,-140+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,10
+cmpeq $27,$25,$23
+bne $23,L.1447
+lda $13,182
+cmpeq $14,$31,$23
+bne $23,L.1449
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1449:
+L.1447:
+lds $f9,L.839
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+muls $f9,$f30,$f9
+lds $f30,L.1453
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1451
+lda $13,183
+cmpeq $14,$31,$23
+bne $23,L.1454
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1454:
+L.1451:
+lds $f9,L.839
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+muls $f9,$f30,$f9
+lds $f30,L.1453
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1456
+lda $13,184
+cmpeq $14,$31,$23
+bne $23,L.1458
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1458:
+L.1456:
+lds $f9,L.839
+lda $27,2
+stl $27,-68+256($sp)
+lds $f30,-68+256($sp)
+cvtlq $f30,$f30
+cvtqs $f30,$f30
+muls $f9,$f30,$f9
+lds $f30,L.1453
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1460
+lda $13,185
+cmpeq $14,$31,$23
+bne $23,L.1462
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1462:
+L.1460:
+lds $f9,L.839
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f30,-80+256($sp)
+cvtqs $f30,$f30
+muls $f9,$f30,$f9
+lds $f30,L.1453
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1464
+lda $13,186
+cmpeq $14,$31,$23
+bne $23,L.1466
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1466:
+L.1464:
+lds $f9,L.839
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f30
+muls $f9,$f30,$f9
+lds $f30,L.1453
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1468
+lda $13,187
+cmpeq $14,$31,$23
+bne $23,L.1470
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1470:
+L.1468:
+lds $f9,L.839
+lds $f7,L.527
+muls $f9,$f7,$f9
+lds $f30,L.1453
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1472
+lda $13,188
+cmpeq $14,$31,$23
+bne $23,L.1474
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1474:
+L.1472:
+lds $f9,L.839
+ldt $f6,L.414
+cvtst $f9,$f30
+mult $f30,$f6,$f30
+cvtts $f30,$f9
+lds $f30,L.1453
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1476
+lda $13,189
+cmpeq $14,$31,$23
+bne $23,L.1478
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1478:
+L.1476:
+ldt $f8,L.868
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+mult $f8,$f30,$f8
+ldt $f30,L.1482
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1480
+lda $13,190
+cmpeq $14,$31,$23
+bne $23,L.1483
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1483:
+L.1480:
+ldt $f8,L.868
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+mult $f8,$f30,$f8
+ldt $f30,L.1482
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1485
+lda $13,191
+cmpeq $14,$31,$23
+bne $23,L.1487
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1487:
+L.1485:
+ldt $f8,L.868
+lda $27,2
+stl $27,-68+256($sp)
+lds $f30,-68+256($sp)
+cvtlq $f30,$f30
+cvtqt $f30,$f30
+mult $f8,$f30,$f8
+ldt $f30,L.1482
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1489
+lda $13,192
+cmpeq $14,$31,$23
+bne $23,L.1491
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1491:
+L.1489:
+ldt $f8,L.868
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f30,-80+256($sp)
+cvtqt $f30,$f30
+mult $f8,$f30,$f8
+ldt $f30,L.1482
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1493
+lda $13,193
+cmpeq $14,$31,$23
+bne $23,L.1495
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1495:
+L.1493:
+ldt $f8,L.868
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+mult $f8,$f30,$f8
+ldt $f30,L.1482
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1497
+lda $13,194
+cmpeq $14,$31,$23
+bne $23,L.1499
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1499:
+L.1497:
+ldt $f8,L.868
+lds $f7,L.527
+cvtst $f7,$f30
+mult $f8,$f30,$f8
+ldt $f30,L.1482
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1501
+lda $13,195
+cmpeq $14,$31,$23
+bne $23,L.1503
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1503:
+L.1501:
+ldt $f8,L.868
+ldt $f6,L.414
+mult $f8,$f6,$f8
+ldt $f30,L.1482
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1505
+lda $13,196
+cmpeq $14,$31,$23
+bne $23,L.1507
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1507:
+L.1505:
+lda $12,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+divl $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.1509
+lda $13,197
+cmpeq $14,$31,$23
+bne $23,L.1511
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1511:
+L.1509:
+lda $12,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+divl $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.1513
+lda $13,198
+cmpeq $14,$31,$23
+bne $23,L.1515
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1515:
+L.1513:
+lda $12,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+divl $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.1517
+lda $13,199
+cmpeq $14,$31,$23
+bne $23,L.1519
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1519:
+L.1517:
+lda $12,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+divq $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.1521
+lda $13,200
+cmpeq $14,$31,$23
+bne $23,L.1523
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1523:
+L.1521:
+lda $12,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+divlu $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.1525
+lda $13,201
+cmpeq $14,$31,$23
+bne $23,L.1527
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1527:
+L.1525:
+lda $12,5
+lds $f7,L.527
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+divs $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.1529
+lda $13,202
+cmpeq $14,$31,$23
+bne $23,L.1531
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1531:
+L.1529:
+lda $12,5
+ldt $f6,L.414
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+divt $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,2,$23
+bne $23,L.1533
+lda $13,203
+cmpeq $14,$31,$23
+bne $23,L.1535
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1535:
+L.1533:
+lda $11,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+divl $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.1537
+lda $13,204
+cmpeq $14,$31,$23
+bne $23,L.1539
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1539:
+L.1537:
+lda $11,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+divl $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.1541
+lda $13,205
+cmpeq $14,$31,$23
+bne $23,L.1543
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1543:
+L.1541:
+lda $11,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+divl $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.1545
+lda $13,206
+cmpeq $14,$31,$23
+bne $23,L.1547
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1547:
+L.1545:
+lda $11,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+divq $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.1549
+lda $13,207
+cmpeq $14,$31,$23
+bne $23,L.1551
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1551:
+L.1549:
+lda $11,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+divlu $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.1553
+lda $13,208
+cmpeq $14,$31,$23
+bne $23,L.1555
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1555:
+L.1553:
+lda $11,5
+lds $f7,L.527
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+divs $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.1557
+lda $13,209
+cmpeq $14,$31,$23
+bne $23,L.1559
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1559:
+L.1557:
+lda $11,5
+ldt $f6,L.414
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+divt $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,2,$23
+bne $23,L.1561
+lda $13,210
+cmpeq $14,$31,$23
+bne $23,L.1563
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1563:
+L.1561:
+lda $10,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+divl $10,$27,$10
+cmpeq $10,2,$23
+bne $23,L.1565
+lda $13,211
+cmpeq $14,$31,$23
+bne $23,L.1567
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1567:
+L.1565:
+lda $10,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+divl $10,$27,$10
+cmpeq $10,2,$23
+bne $23,L.1569
+lda $13,212
+cmpeq $14,$31,$23
+bne $23,L.1571
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1571:
+L.1569:
+lda $10,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+divl $10,$27,$10
+cmpeq $10,2,$23
+bne $23,L.1573
+lda $13,213
+cmpeq $14,$31,$23
+bne $23,L.1575
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1575:
+L.1573:
+lda $10,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+divq $27,$25,$27
+mov $27,$10
+cmpeq $10,2,$23
+bne $23,L.1577
+lda $13,214
+cmpeq $14,$31,$23
+bne $23,L.1579
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1579:
+L.1577:
+lda $10,5
+lda $27,2
+stl $27,-84+256($sp)
+mov $10,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+divlu $27,$25,$27
+mov $27,$10
+cmpeq $10,2,$23
+bne $23,L.1581
+lda $13,215
+cmpeq $14,$31,$23
+bne $23,L.1583
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1583:
+L.1581:
+lda $10,5
+lds $f7,L.527
+stq $10,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+divs $f30,$f7,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,2,$23
+bne $23,L.1585
+lda $13,216
+cmpeq $14,$31,$23
+bne $23,L.1587
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1587:
+L.1585:
+lda $10,5
+ldt $f6,L.414
+stq $10,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+divt $f30,$f6,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $10,-56+256($sp)
+cmpeq $10,2,$23
+bne $23,L.1589
+lda $13,217
+cmpeq $14,$31,$23
+bne $23,L.1591
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1591:
+L.1589:
+lda $9,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+divq $9,$27,$9
+cmpeq $9,2,$23
+bne $23,L.1593
+lda $13,218
+cmpeq $14,$31,$23
+bne $23,L.1595
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1595:
+L.1593:
+lda $9,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+divq $9,$27,$9
+cmpeq $9,2,$23
+bne $23,L.1597
+lda $13,219
+cmpeq $14,$31,$23
+bne $23,L.1599
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1599:
+L.1597:
+lda $9,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+divq $9,$27,$9
+cmpeq $9,2,$23
+bne $23,L.1601
+lda $13,220
+cmpeq $14,$31,$23
+bne $23,L.1603
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1603:
+L.1601:
+lda $9,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+divq $9,$27,$9
+cmpeq $9,2,$23
+bne $23,L.1605
+lda $13,221
+cmpeq $14,$31,$23
+bne $23,L.1607
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1607:
+L.1605:
+lda $9,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+divq $9,$27,$9
+cmpeq $9,2,$23
+bne $23,L.1609
+lda $13,222
+cmpeq $14,$31,$23
+bne $23,L.1611
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1611:
+L.1609:
+lda $9,5
+lds $f7,L.527
+stq $9,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+divs $f30,$f7,$f30
+cvttqc $f30,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,2,$23
+bne $23,L.1613
+lda $13,223
+cmpeq $14,$31,$23
+bne $23,L.1615
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1615:
+L.1613:
+lda $9,5
+ldt $f6,L.414
+stq $9,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+divt $f30,$f6,$f30
+cvttqc $f30,$f1
+stt $f1,-56+256($sp)
+ldq $9,-56+256($sp)
+cmpeq $9,2,$23
+bne $23,L.1617
+lda $13,224
+cmpeq $14,$31,$23
+bne $23,L.1619
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1619:
+L.1617:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+divlu $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.1621
+lda $13,225
+cmpeq $14,$31,$23
+bne $23,L.1623
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1623:
+L.1621:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+divlu $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.1625
+lda $13,226
+cmpeq $14,$31,$23
+bne $23,L.1627
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1627:
+L.1625:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+divlu $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.1629
+lda $13,227
+cmpeq $14,$31,$23
+bne $23,L.1631
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1631:
+L.1629:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+divq $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.1633
+lda $13,228
+cmpeq $14,$31,$23
+bne $23,L.1635
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1635:
+L.1633:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-144+256($sp)
+stl $27,-84+256($sp)
+ldl $25,-60+256($sp)
+zap $25,240,$25
+ldl $22,-84+256($sp)
+zap $22,240,$22
+divlu $25,$22,$25
+stl $25,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-144+256($sp)
+zap $25,240,$25
+cmpeq $27,$25,$23
+bne $23,L.1637
+lda $13,229
+cmpeq $14,$31,$23
+bne $23,L.1639
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1639:
+L.1637:
+lda $27,5
+stl $27,-60+256($sp)
+lds $f7,L.527
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f30
+divs $f30,$f7,$f30
+lds $f29,L.826
+cmptlt $f30,$f29,$f1
+fbne $f1,L.1642
+subs $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-148+256($sp)
+br L.1643
+L.1642:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-148+256($sp)
+L.1643:
+ldl $27,-148+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.1644
+lda $13,230
+cmpeq $14,$31,$23
+bne $23,L.1646
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1646:
+L.1644:
+lda $27,5
+stl $27,-60+256($sp)
+ldt $f6,L.414
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+divt $f30,$f6,$f30
+ldt $f29,L.834
+cmptlt $f30,$f29,$f1
+fbne $f1,L.1649
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-152+256($sp)
+br L.1650
+L.1649:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,-152+256($sp)
+L.1650:
+ldl $27,-152+256($sp)
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,2
+cmpeq $27,$25,$23
+bne $23,L.1651
+lda $13,231
+cmpeq $14,$31,$23
+bne $23,L.1653
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1653:
+L.1651:
+lds $f9,L.839
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+divs $f9,$f30,$f9
+cvtst $f9,$f30
+ldt $f29,L.1657
+cmpteq $f30,$f29,$f1
+fbne $f1,L.1655
+lda $13,232
+cmpeq $14,$31,$23
+bne $23,L.1658
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1658:
+L.1655:
+lds $f9,L.839
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqs $f30,$f30
+divs $f9,$f30,$f9
+cvtst $f9,$f30
+ldt $f29,L.1657
+cmpteq $f30,$f29,$f1
+fbne $f1,L.1660
+lda $13,233
+cmpeq $14,$31,$23
+bne $23,L.1662
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1662:
+L.1660:
+lds $f9,L.839
+lda $27,2
+stl $27,-68+256($sp)
+lds $f30,-68+256($sp)
+cvtlq $f30,$f30
+cvtqs $f30,$f30
+divs $f9,$f30,$f9
+cvtst $f9,$f30
+ldt $f29,L.1657
+cmpteq $f30,$f29,$f1
+fbne $f1,L.1664
+lda $13,234
+cmpeq $14,$31,$23
+bne $23,L.1666
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1666:
+L.1664:
+lds $f9,L.839
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f30,-80+256($sp)
+cvtqs $f30,$f30
+divs $f9,$f30,$f9
+cvtst $f9,$f30
+ldt $f29,L.1657
+cmpteq $f30,$f29,$f1
+fbne $f1,L.1668
+lda $13,235
+cmpeq $14,$31,$23
+bne $23,L.1670
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1670:
+L.1668:
+lds $f9,L.839
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f30
+divs $f9,$f30,$f9
+cvtst $f9,$f30
+ldt $f29,L.1657
+cmpteq $f30,$f29,$f1
+fbne $f1,L.1672
+lda $13,236
+cmpeq $14,$31,$23
+bne $23,L.1674
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1674:
+L.1672:
+lds $f9,L.839
+lds $f7,L.527
+divs $f9,$f7,$f9
+cvtst $f9,$f30
+ldt $f29,L.1657
+cmpteq $f30,$f29,$f1
+fbne $f1,L.1676
+lda $13,237
+cmpeq $14,$31,$23
+bne $23,L.1678
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1678:
+L.1676:
+lds $f9,L.839
+ldt $f6,L.414
+cvtst $f9,$f30
+divt $f30,$f6,$f30
+cvtts $f30,$f9
+cvtst $f9,$f30
+ldt $f29,L.1657
+cmpteq $f30,$f29,$f1
+fbne $f1,L.1680
+lda $13,238
+cmpeq $14,$31,$23
+bne $23,L.1682
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1682:
+L.1680:
+ldt $f8,L.868
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+divt $f8,$f30,$f8
+ldt $f30,L.1657
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1684
+lda $13,239
+cmpeq $14,$31,$23
+bne $23,L.1686
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1686:
+L.1684:
+ldt $f8,L.868
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+stq $27,-56+256($sp)
+ldt $f30,-56+256($sp)
+cvtqt $f30,$f30
+divt $f8,$f30,$f8
+ldt $f30,L.1657
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1688
+lda $13,240
+cmpeq $14,$31,$23
+bne $23,L.1690
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1690:
+L.1688:
+ldt $f8,L.868
+lda $27,2
+stl $27,-68+256($sp)
+lds $f30,-68+256($sp)
+cvtlq $f30,$f30
+cvtqt $f30,$f30
+divt $f8,$f30,$f8
+ldt $f30,L.1657
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1692
+lda $13,241
+cmpeq $14,$31,$23
+bne $23,L.1694
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1694:
+L.1692:
+ldt $f8,L.868
+lda $27,2
+stq $27,-80+256($sp)
+ldt $f30,-80+256($sp)
+cvtqt $f30,$f30
+divt $f8,$f30,$f8
+ldt $f30,L.1657
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1696
+lda $13,242
+cmpeq $14,$31,$23
+bne $23,L.1698
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1698:
+L.1696:
+ldt $f8,L.868
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+ldt $f30,L.594
+srl $27,1,$25
+stq $25,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+divt $f8,$f30,$f8
+ldt $f30,L.1657
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1700
+lda $13,243
+cmpeq $14,$31,$23
+bne $23,L.1702
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1702:
+L.1700:
+ldt $f8,L.868
+lds $f7,L.527
+cvtst $f7,$f30
+divt $f8,$f30,$f8
+ldt $f30,L.1657
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1704
+lda $13,244
+cmpeq $14,$31,$23
+bne $23,L.1706
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1706:
+L.1704:
+ldt $f8,L.868
+ldt $f6,L.414
+divt $f8,$f6,$f8
+ldt $f30,L.1657
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1708
+lda $13,245
+cmpeq $14,$31,$23
+bne $23,L.1710
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1710:
+L.1708:
+lda $12,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+reml $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1712
+lda $13,246
+cmpeq $14,$31,$23
+bne $23,L.1714
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1714:
+L.1712:
+lda $12,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+reml $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1716
+lda $13,247
+cmpeq $14,$31,$23
+bne $23,L.1718
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1718:
+L.1716:
+lda $12,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+reml $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1720
+lda $13,248
+cmpeq $14,$31,$23
+bne $23,L.1722
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1722:
+L.1720:
+lda $12,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+remq $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1724
+lda $13,249
+cmpeq $14,$31,$23
+bne $23,L.1726
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1726:
+L.1724:
+lda $12,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+remlu $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1728
+lda $13,250
+cmpeq $14,$31,$23
+bne $23,L.1730
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1730:
+L.1728:
+lda $11,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+reml $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1732
+lda $13,251
+cmpeq $14,$31,$23
+bne $23,L.1734
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1734:
+L.1732:
+lda $11,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+reml $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1736
+lda $13,252
+cmpeq $14,$31,$23
+bne $23,L.1738
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1738:
+L.1736:
+lda $11,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+reml $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1740
+lda $13,253
+cmpeq $14,$31,$23
+bne $23,L.1742
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1742:
+L.1740:
+lda $11,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+remq $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1744
+lda $13,254
+cmpeq $14,$31,$23
+bne $23,L.1746
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1746:
+L.1744:
+lda $11,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+remlu $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1748
+lda $13,255
+cmpeq $14,$31,$23
+bne $23,L.1750
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1750:
+L.1748:
+lda $10,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+reml $10,$27,$10
+cmpeq $10,1,$23
+bne $23,L.1752
+lda $13,256
+cmpeq $14,$31,$23
+bne $23,L.1754
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1754:
+L.1752:
+lda $10,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+reml $10,$27,$10
+cmpeq $10,1,$23
+bne $23,L.1756
+lda $13,257
+cmpeq $14,$31,$23
+bne $23,L.1758
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1758:
+L.1756:
+lda $10,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+reml $10,$27,$10
+cmpeq $10,1,$23
+bne $23,L.1760
+lda $13,258
+cmpeq $14,$31,$23
+bne $23,L.1762
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1762:
+L.1760:
+lda $10,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+remq $27,$25,$27
+mov $27,$10
+cmpeq $10,1,$23
+bne $23,L.1764
+lda $13,259
+cmpeq $14,$31,$23
+bne $23,L.1766
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1766:
+L.1764:
+lda $10,5
+lda $27,2
+stl $27,-84+256($sp)
+mov $10,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+remlu $27,$25,$27
+mov $27,$10
+cmpeq $10,1,$23
+bne $23,L.1768
+lda $13,260
+cmpeq $14,$31,$23
+bne $23,L.1770
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1770:
+L.1768:
+lda $9,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+remq $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1772
+lda $13,261
+cmpeq $14,$31,$23
+bne $23,L.1774
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1774:
+L.1772:
+lda $9,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+remq $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1776
+lda $13,262
+cmpeq $14,$31,$23
+bne $23,L.1778
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1778:
+L.1776:
+lda $9,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+remq $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1780
+lda $13,263
+cmpeq $14,$31,$23
+bne $23,L.1782
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1782:
+L.1780:
+lda $9,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+remq $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1784
+lda $13,264
+cmpeq $14,$31,$23
+bne $23,L.1786
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1786:
+L.1784:
+lda $9,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+remq $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1788
+lda $13,265
+cmpeq $14,$31,$23
+bne $23,L.1790
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1790:
+L.1788:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+remlu $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1792
+lda $13,266
+cmpeq $14,$31,$23
+bne $23,L.1794
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1794:
+L.1792:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+remlu $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1796
+lda $13,267
+cmpeq $14,$31,$23
+bne $23,L.1798
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1798:
+L.1796:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+remlu $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1800
+lda $13,268
+cmpeq $14,$31,$23
+bne $23,L.1802
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1802:
+L.1800:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+remq $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1804
+lda $13,269
+cmpeq $14,$31,$23
+bne $23,L.1806
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1806:
+L.1804:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+remlu $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1808
+lda $13,270
+cmpeq $14,$31,$23
+bne $23,L.1810
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1810:
+L.1808:
+lda $12,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1812
+lda $13,271
+cmpeq $14,$31,$23
+bne $23,L.1814
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1814:
+L.1812:
+lda $12,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1816
+lda $13,272
+cmpeq $14,$31,$23
+bne $23,L.1818
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1818:
+L.1816:
+lda $12,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1820
+lda $13,273
+cmpeq $14,$31,$23
+bne $23,L.1822
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1822:
+L.1820:
+lda $12,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldq $25,-80+256($sp)
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1824
+lda $13,274
+cmpeq $14,$31,$23
+bne $23,L.1826
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1826:
+L.1824:
+lda $12,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,1,$23
+bne $23,L.1828
+lda $13,275
+cmpeq $14,$31,$23
+bne $23,L.1830
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1830:
+L.1828:
+lda $11,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1832
+lda $13,276
+cmpeq $14,$31,$23
+bne $23,L.1834
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1834:
+L.1832:
+lda $11,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1836
+lda $13,277
+cmpeq $14,$31,$23
+bne $23,L.1838
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1838:
+L.1836:
+lda $11,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1840
+lda $13,278
+cmpeq $14,$31,$23
+bne $23,L.1842
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1842:
+L.1840:
+lda $11,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldq $25,-80+256($sp)
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1844
+lda $13,279
+cmpeq $14,$31,$23
+bne $23,L.1846
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1846:
+L.1844:
+lda $11,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+sra $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,1,$23
+bne $23,L.1848
+lda $13,280
+cmpeq $14,$31,$23
+bne $23,L.1850
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1850:
+L.1848:
+lda $10,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sra $10,$27,$10
+addl $10,0,$10
+cmpeq $10,1,$23
+bne $23,L.1852
+lda $13,281
+cmpeq $14,$31,$23
+bne $23,L.1854
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1854:
+L.1852:
+lda $10,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sra $10,$27,$10
+addl $10,0,$10
+cmpeq $10,1,$23
+bne $23,L.1856
+lda $13,282
+cmpeq $14,$31,$23
+bne $23,L.1858
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1858:
+L.1856:
+lda $10,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+sra $10,$27,$10
+addl $10,0,$10
+cmpeq $10,1,$23
+bne $23,L.1860
+lda $13,283
+cmpeq $14,$31,$23
+bne $23,L.1862
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1862:
+L.1860:
+lda $10,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+sra $10,$27,$10
+addl $10,0,$10
+cmpeq $10,1,$23
+bne $23,L.1864
+lda $13,284
+cmpeq $14,$31,$23
+bne $23,L.1866
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1866:
+L.1864:
+lda $10,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+sra $10,$27,$10
+addl $10,0,$10
+cmpeq $10,1,$23
+bne $23,L.1868
+lda $13,285
+cmpeq $14,$31,$23
+bne $23,L.1870
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1870:
+L.1868:
+lda $9,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sra $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1872
+lda $13,286
+cmpeq $14,$31,$23
+bne $23,L.1874
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1874:
+L.1872:
+lda $9,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sra $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1876
+lda $13,287
+cmpeq $14,$31,$23
+bne $23,L.1878
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1878:
+L.1876:
+lda $9,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+sra $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1880
+lda $13,288
+cmpeq $14,$31,$23
+bne $23,L.1882
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1882:
+L.1880:
+lda $9,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+sra $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1884
+lda $13,289
+cmpeq $14,$31,$23
+bne $23,L.1886
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1886:
+L.1884:
+lda $9,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+sra $9,$27,$9
+cmpeq $9,1,$23
+bne $23,L.1888
+lda $13,290
+cmpeq $14,$31,$23
+bne $23,L.1890
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1890:
+L.1888:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+srl $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1892
+lda $13,291
+cmpeq $14,$31,$23
+bne $23,L.1894
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1894:
+L.1892:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+srl $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1896
+lda $13,292
+cmpeq $14,$31,$23
+bne $23,L.1898
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1898:
+L.1896:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+srl $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1900
+lda $13,293
+cmpeq $14,$31,$23
+bne $23,L.1902
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1902:
+L.1900:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+srl $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1904
+lda $13,294
+cmpeq $14,$31,$23
+bne $23,L.1906
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1906:
+L.1904:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+srl $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,1
+cmpeq $27,$25,$23
+bne $23,L.1908
+lda $13,295
+cmpeq $14,$31,$23
+bne $23,L.1910
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1910:
+L.1908:
+lda $12,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,20,$23
+bne $23,L.1912
+lda $13,296
+cmpeq $14,$31,$23
+bne $23,L.1914
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1914:
+L.1912:
+lda $12,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,20,$23
+bne $23,L.1916
+lda $13,297
+cmpeq $14,$31,$23
+bne $23,L.1918
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1918:
+L.1916:
+lda $12,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,20,$23
+bne $23,L.1920
+lda $13,298
+cmpeq $14,$31,$23
+bne $23,L.1922
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1922:
+L.1920:
+lda $12,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldq $25,-80+256($sp)
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,20,$23
+bne $23,L.1924
+lda $13,299
+cmpeq $14,$31,$23
+bne $23,L.1926
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1926:
+L.1924:
+lda $12,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,20,$23
+bne $23,L.1928
+lda $13,300
+cmpeq $14,$31,$23
+bne $23,L.1930
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1930:
+L.1928:
+lda $11,5
+lda $27,2
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,20,$23
+bne $23,L.1932
+lda $13,301
+cmpeq $14,$31,$23
+bne $23,L.1934
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1934:
+L.1932:
+lda $11,5
+lda $27,2
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,20,$23
+bne $23,L.1936
+lda $13,302
+cmpeq $14,$31,$23
+bne $23,L.1938
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1938:
+L.1936:
+lda $11,5
+lda $27,2
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,20,$23
+bne $23,L.1940
+lda $13,303
+cmpeq $14,$31,$23
+bne $23,L.1942
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1942:
+L.1940:
+lda $11,5
+lda $27,2
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldq $25,-80+256($sp)
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,20,$23
+bne $23,L.1944
+lda $13,304
+cmpeq $14,$31,$23
+bne $23,L.1946
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1946:
+L.1944:
+lda $11,5
+lda $27,2
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+sll $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,20,$23
+bne $23,L.1948
+lda $13,305
+cmpeq $14,$31,$23
+bne $23,L.1950
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1950:
+L.1948:
+lda $10,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $10,$27,$10
+addl $10,0,$10
+cmpeq $10,20,$23
+bne $23,L.1952
+lda $13,306
+cmpeq $14,$31,$23
+bne $23,L.1954
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1954:
+L.1952:
+lda $10,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $10,$27,$10
+addl $10,0,$10
+cmpeq $10,20,$23
+bne $23,L.1956
+lda $13,307
+cmpeq $14,$31,$23
+bne $23,L.1958
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1958:
+L.1956:
+lda $10,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+sll $10,$27,$10
+addl $10,0,$10
+cmpeq $10,20,$23
+bne $23,L.1960
+lda $13,308
+cmpeq $14,$31,$23
+bne $23,L.1962
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1962:
+L.1960:
+lda $10,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+sll $10,$27,$10
+addl $10,0,$10
+cmpeq $10,20,$23
+bne $23,L.1964
+lda $13,309
+cmpeq $14,$31,$23
+bne $23,L.1966
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1966:
+L.1964:
+lda $10,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+sll $10,$27,$10
+addl $10,0,$10
+cmpeq $10,20,$23
+bne $23,L.1968
+lda $13,310
+cmpeq $14,$31,$23
+bne $23,L.1970
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1970:
+L.1968:
+lda $9,5
+lda $27,2
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $9,$27,$9
+cmpeq $9,20,$23
+bne $23,L.1972
+lda $13,311
+cmpeq $14,$31,$23
+bne $23,L.1974
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1974:
+L.1972:
+lda $9,5
+lda $27,2
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $9,$27,$9
+cmpeq $9,20,$23
+bne $23,L.1976
+lda $13,312
+cmpeq $14,$31,$23
+bne $23,L.1978
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1978:
+L.1976:
+lda $9,5
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+sll $9,$27,$9
+cmpeq $9,20,$23
+bne $23,L.1980
+lda $13,313
+cmpeq $14,$31,$23
+bne $23,L.1982
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1982:
+L.1980:
+lda $9,5
+lda $27,2
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+sll $9,$27,$9
+cmpeq $9,20,$23
+bne $23,L.1984
+lda $13,314
+cmpeq $14,$31,$23
+bne $23,L.1986
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1986:
+L.1984:
+lda $9,5
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+sll $9,$27,$9
+cmpeq $9,20,$23
+bne $23,L.1988
+lda $13,315
+cmpeq $14,$31,$23
+bne $23,L.1990
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1990:
+L.1988:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+sll $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,20
+cmpeq $27,$25,$23
+bne $23,L.1992
+lda $13,316
+cmpeq $14,$31,$23
+bne $23,L.1994
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1994:
+L.1992:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+sll $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,20
+cmpeq $27,$25,$23
+bne $23,L.1996
+lda $13,317
+cmpeq $14,$31,$23
+bne $23,L.1998
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.1998:
+L.1996:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+sll $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,20
+cmpeq $27,$25,$23
+bne $23,L.2000
+lda $13,318
+cmpeq $14,$31,$23
+bne $23,L.2002
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2002:
+L.2000:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+sll $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,20
+cmpeq $27,$25,$23
+bne $23,L.2004
+lda $13,319
+cmpeq $14,$31,$23
+bne $23,L.2006
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2006:
+L.2004:
+lda $27,5
+stl $27,-60+256($sp)
+lda $27,2
+stl $27,-84+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+sll $27,$25,$27
+zap $27,240,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,20
+cmpeq $27,$25,$23
+bne $23,L.2008
+lda $13,320
+cmpeq $14,$31,$23
+bne $23,L.2010
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2010:
+L.2008:
+lda $12,12
+lda $27,10
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+and $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,8,$23
+bne $23,L.2012
+lda $13,321
+cmpeq $14,$31,$23
+bne $23,L.2014
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2014:
+L.2012:
+lda $12,12
+lda $27,10
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+and $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,8,$23
+bne $23,L.2016
+lda $13,322
+cmpeq $14,$31,$23
+bne $23,L.2018
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2018:
+L.2016:
+lda $12,12
+lda $27,10
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+and $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,8,$23
+bne $23,L.2020
+lda $13,323
+cmpeq $14,$31,$23
+bne $23,L.2022
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2022:
+L.2020:
+lda $12,12
+lda $27,10
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+and $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,8,$23
+bne $23,L.2024
+lda $13,324
+cmpeq $14,$31,$23
+bne $23,L.2026
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2026:
+L.2024:
+lda $12,12
+lda $27,10
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+and $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,8,$23
+bne $23,L.2028
+lda $13,325
+cmpeq $14,$31,$23
+bne $23,L.2030
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2030:
+L.2028:
+lda $11,12
+lda $27,10
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+and $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,8,$23
+bne $23,L.2032
+lda $13,326
+cmpeq $14,$31,$23
+bne $23,L.2034
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2034:
+L.2032:
+lda $11,12
+lda $27,10
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+and $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,8,$23
+bne $23,L.2036
+lda $13,327
+cmpeq $14,$31,$23
+bne $23,L.2038
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2038:
+L.2036:
+lda $11,12
+lda $27,10
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+and $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,8,$23
+bne $23,L.2040
+lda $13,328
+cmpeq $14,$31,$23
+bne $23,L.2042
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2042:
+L.2040:
+lda $11,12
+lda $27,10
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+and $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,8,$23
+bne $23,L.2044
+lda $13,329
+cmpeq $14,$31,$23
+bne $23,L.2046
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2046:
+L.2044:
+lda $11,12
+lda $27,10
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+and $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,8,$23
+bne $23,L.2048
+lda $13,330
+cmpeq $14,$31,$23
+bne $23,L.2050
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2050:
+L.2048:
+lda $10,12
+lda $27,10
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+and $10,$27,$10
+addl $10,0,$10
+cmpeq $10,8,$23
+bne $23,L.2052
+lda $13,331
+cmpeq $14,$31,$23
+bne $23,L.2054
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2054:
+L.2052:
+lda $10,12
+lda $27,10
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+and $10,$27,$10
+addl $10,0,$10
+cmpeq $10,8,$23
+bne $23,L.2056
+lda $13,332
+cmpeq $14,$31,$23
+bne $23,L.2058
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2058:
+L.2056:
+lda $10,12
+lda $27,10
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+and $10,$27,$10
+addl $10,0,$10
+cmpeq $10,8,$23
+bne $23,L.2060
+lda $13,333
+cmpeq $14,$31,$23
+bne $23,L.2062
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2062:
+L.2060:
+lda $10,12
+lda $27,10
+stq $27,-80+256($sp)
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+and $27,$25,$27
+mov $27,$10
+cmpeq $10,8,$23
+bne $23,L.2064
+lda $13,334
+cmpeq $14,$31,$23
+bne $23,L.2066
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2066:
+L.2064:
+lda $10,12
+lda $27,10
+stl $27,-84+256($sp)
+mov $10,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+and $27,$25,$27
+mov $27,$10
+cmpeq $10,8,$23
+bne $23,L.2068
+lda $13,335
+cmpeq $14,$31,$23
+bne $23,L.2070
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2070:
+L.2068:
+lda $9,12
+lda $27,10
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+and $9,$27,$9
+cmpeq $9,8,$23
+bne $23,L.2072
+lda $13,336
+cmpeq $14,$31,$23
+bne $23,L.2074
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2074:
+L.2072:
+lda $9,12
+lda $27,10
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+and $9,$27,$9
+cmpeq $9,8,$23
+bne $23,L.2076
+lda $13,337
+cmpeq $14,$31,$23
+bne $23,L.2078
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2078:
+L.2076:
+lda $9,12
+lda $27,10
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+and $9,$27,$9
+cmpeq $9,8,$23
+bne $23,L.2080
+lda $13,338
+cmpeq $14,$31,$23
+bne $23,L.2082
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2082:
+L.2080:
+lda $9,12
+lda $27,10
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+and $9,$27,$9
+cmpeq $9,8,$23
+bne $23,L.2084
+lda $13,339
+cmpeq $14,$31,$23
+bne $23,L.2086
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2086:
+L.2084:
+lda $9,12
+lda $27,10
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+and $9,$27,$9
+cmpeq $9,8,$23
+bne $23,L.2088
+lda $13,340
+cmpeq $14,$31,$23
+bne $23,L.2090
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2090:
+L.2088:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+and $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,8
+cmpeq $27,$25,$23
+bne $23,L.2092
+lda $13,341
+cmpeq $14,$31,$23
+bne $23,L.2094
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2094:
+L.2092:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+and $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,8
+cmpeq $27,$25,$23
+bne $23,L.2096
+lda $13,342
+cmpeq $14,$31,$23
+bne $23,L.2098
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2098:
+L.2096:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+and $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,8
+cmpeq $27,$25,$23
+bne $23,L.2100
+lda $13,343
+cmpeq $14,$31,$23
+bne $23,L.2102
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2102:
+L.2100:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+and $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,8
+cmpeq $27,$25,$23
+bne $23,L.2104
+lda $13,344
+cmpeq $14,$31,$23
+bne $23,L.2106
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2106:
+L.2104:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stl $27,-84+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+and $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,8
+cmpeq $27,$25,$23
+bne $23,L.2108
+lda $13,345
+cmpeq $14,$31,$23
+bne $23,L.2110
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2110:
+L.2108:
+lda $12,12
+lda $27,10
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+xor $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,6,$23
+bne $23,L.2112
+lda $13,346
+cmpeq $14,$31,$23
+bne $23,L.2114
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2114:
+L.2112:
+lda $12,12
+lda $27,10
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+xor $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,6,$23
+bne $23,L.2116
+lda $13,347
+cmpeq $14,$31,$23
+bne $23,L.2118
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2118:
+L.2116:
+lda $12,12
+lda $27,10
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+xor $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,6,$23
+bne $23,L.2120
+lda $13,348
+cmpeq $14,$31,$23
+bne $23,L.2122
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2122:
+L.2120:
+lda $12,12
+lda $27,10
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+xor $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,6,$23
+bne $23,L.2124
+lda $13,349
+cmpeq $14,$31,$23
+bne $23,L.2126
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2126:
+L.2124:
+lda $12,12
+lda $27,10
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+xor $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,6,$23
+bne $23,L.2128
+lda $13,350
+cmpeq $14,$31,$23
+bne $23,L.2130
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2130:
+L.2128:
+lda $11,12
+lda $27,10
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+xor $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,6,$23
+bne $23,L.2132
+lda $13,351
+cmpeq $14,$31,$23
+bne $23,L.2134
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2134:
+L.2132:
+lda $11,12
+lda $27,10
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+xor $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,6,$23
+bne $23,L.2136
+lda $13,352
+cmpeq $14,$31,$23
+bne $23,L.2138
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2138:
+L.2136:
+lda $11,12
+lda $27,10
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+xor $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,6,$23
+bne $23,L.2140
+lda $13,353
+cmpeq $14,$31,$23
+bne $23,L.2142
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2142:
+L.2140:
+lda $11,12
+lda $27,10
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+xor $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,6,$23
+bne $23,L.2144
+lda $13,354
+cmpeq $14,$31,$23
+bne $23,L.2146
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2146:
+L.2144:
+lda $11,12
+lda $27,10
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+xor $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,6,$23
+bne $23,L.2148
+lda $13,355
+cmpeq $14,$31,$23
+bne $23,L.2150
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2150:
+L.2148:
+lda $10,12
+lda $27,10
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+xor $10,$27,$10
+addl $10,0,$10
+cmpeq $10,6,$23
+bne $23,L.2152
+lda $13,356
+cmpeq $14,$31,$23
+bne $23,L.2154
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2154:
+L.2152:
+lda $10,12
+lda $27,10
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+xor $10,$27,$10
+addl $10,0,$10
+cmpeq $10,6,$23
+bne $23,L.2156
+lda $13,357
+cmpeq $14,$31,$23
+bne $23,L.2158
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2158:
+L.2156:
+lda $10,12
+lda $27,10
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+xor $10,$27,$10
+addl $10,0,$10
+cmpeq $10,6,$23
+bne $23,L.2160
+lda $13,358
+cmpeq $14,$31,$23
+bne $23,L.2162
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2162:
+L.2160:
+lda $10,12
+lda $27,10
+stq $27,-80+256($sp)
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+xor $27,$25,$27
+mov $27,$10
+cmpeq $10,6,$23
+bne $23,L.2164
+lda $13,359
+cmpeq $14,$31,$23
+bne $23,L.2166
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2166:
+L.2164:
+lda $10,12
+lda $27,10
+stl $27,-84+256($sp)
+mov $10,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+xor $27,$25,$27
+mov $27,$10
+cmpeq $10,6,$23
+bne $23,L.2168
+lda $13,360
+cmpeq $14,$31,$23
+bne $23,L.2170
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2170:
+L.2168:
+lda $9,12
+lda $27,10
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+xor $9,$27,$9
+cmpeq $9,6,$23
+bne $23,L.2172
+lda $13,361
+cmpeq $14,$31,$23
+bne $23,L.2174
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2174:
+L.2172:
+lda $9,12
+lda $27,10
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+xor $9,$27,$9
+cmpeq $9,6,$23
+bne $23,L.2176
+lda $13,362
+cmpeq $14,$31,$23
+bne $23,L.2178
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2178:
+L.2176:
+lda $9,12
+lda $27,10
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+xor $9,$27,$9
+cmpeq $9,6,$23
+bne $23,L.2180
+lda $13,363
+cmpeq $14,$31,$23
+bne $23,L.2182
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2182:
+L.2180:
+lda $9,12
+lda $27,10
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+xor $9,$27,$9
+cmpeq $9,6,$23
+bne $23,L.2184
+lda $13,364
+cmpeq $14,$31,$23
+bne $23,L.2186
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2186:
+L.2184:
+lda $9,12
+lda $27,10
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+xor $9,$27,$9
+cmpeq $9,6,$23
+bne $23,L.2188
+lda $13,365
+cmpeq $14,$31,$23
+bne $23,L.2190
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2190:
+L.2188:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+xor $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,6
+cmpeq $27,$25,$23
+bne $23,L.2192
+lda $13,366
+cmpeq $14,$31,$23
+bne $23,L.2194
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2194:
+L.2192:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+xor $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,6
+cmpeq $27,$25,$23
+bne $23,L.2196
+lda $13,367
+cmpeq $14,$31,$23
+bne $23,L.2198
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2198:
+L.2196:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+xor $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,6
+cmpeq $27,$25,$23
+bne $23,L.2200
+lda $13,368
+cmpeq $14,$31,$23
+bne $23,L.2202
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2202:
+L.2200:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+xor $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,6
+cmpeq $27,$25,$23
+bne $23,L.2204
+lda $13,369
+cmpeq $14,$31,$23
+bne $23,L.2206
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2206:
+L.2204:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stl $27,-84+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+xor $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,6
+cmpeq $27,$25,$23
+bne $23,L.2208
+lda $13,370
+cmpeq $14,$31,$23
+bne $23,L.2210
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2210:
+L.2208:
+lda $12,12
+lda $27,10
+stb $27,-61+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+or $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,14,$23
+bne $23,L.2212
+lda $13,371
+cmpeq $14,$31,$23
+bne $23,L.2214
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2214:
+L.2212:
+lda $12,12
+lda $27,10
+stw $27,-64+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+or $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,14,$23
+bne $23,L.2216
+lda $13,372
+cmpeq $14,$31,$23
+bne $23,L.2218
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2218:
+L.2216:
+lda $12,12
+lda $27,10
+stl $27,-68+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-68+256($sp)
+or $27,$25,$27
+addl $27,0,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,14,$23
+bne $23,L.2220
+lda $13,373
+cmpeq $14,$31,$23
+bne $23,L.2222
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2222:
+L.2220:
+lda $12,12
+lda $27,10
+stq $27,-80+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+or $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,14,$23
+bne $23,L.2224
+lda $13,374
+cmpeq $14,$31,$23
+bne $23,L.2226
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2226:
+L.2224:
+lda $12,12
+lda $27,10
+stl $27,-84+256($sp)
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+or $27,$25,$27
+mov $27,$12
+sll $12,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,14,$23
+bne $23,L.2228
+lda $13,375
+cmpeq $14,$31,$23
+bne $23,L.2230
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2230:
+L.2228:
+lda $11,12
+lda $27,10
+stb $27,-61+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+or $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,14,$23
+bne $23,L.2232
+lda $13,376
+cmpeq $14,$31,$23
+bne $23,L.2234
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2234:
+L.2232:
+lda $11,12
+lda $27,10
+stw $27,-64+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+or $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,14,$23
+bne $23,L.2236
+lda $13,377
+cmpeq $14,$31,$23
+bne $23,L.2238
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2238:
+L.2236:
+lda $11,12
+lda $27,10
+stl $27,-68+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-68+256($sp)
+or $27,$25,$27
+addl $27,0,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,14,$23
+bne $23,L.2240
+lda $13,378
+cmpeq $14,$31,$23
+bne $23,L.2242
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2242:
+L.2240:
+lda $11,12
+lda $27,10
+stq $27,-80+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+or $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,14,$23
+bne $23,L.2244
+lda $13,379
+cmpeq $14,$31,$23
+bne $23,L.2246
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2246:
+L.2244:
+lda $11,12
+lda $27,10
+stl $27,-84+256($sp)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+or $27,$25,$27
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,14,$23
+bne $23,L.2248
+lda $13,380
+cmpeq $14,$31,$23
+bne $23,L.2250
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2250:
+L.2248:
+lda $10,12
+lda $27,10
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+or $10,$27,$10
+addl $10,0,$10
+cmpeq $10,14,$23
+bne $23,L.2252
+lda $13,381
+cmpeq $14,$31,$23
+bne $23,L.2254
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2254:
+L.2252:
+lda $10,12
+lda $27,10
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+or $10,$27,$10
+addl $10,0,$10
+cmpeq $10,14,$23
+bne $23,L.2256
+lda $13,382
+cmpeq $14,$31,$23
+bne $23,L.2258
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2258:
+L.2256:
+lda $10,12
+lda $27,10
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+or $10,$27,$10
+addl $10,0,$10
+cmpeq $10,14,$23
+bne $23,L.2260
+lda $13,383
+cmpeq $14,$31,$23
+bne $23,L.2262
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2262:
+L.2260:
+lda $10,12
+lda $27,10
+stq $27,-80+256($sp)
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+ldq $25,-80+256($sp)
+or $27,$25,$27
+mov $27,$10
+cmpeq $10,14,$23
+bne $23,L.2264
+lda $13,384
+cmpeq $14,$31,$23
+bne $23,L.2266
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2266:
+L.2264:
+lda $10,12
+lda $27,10
+stl $27,-84+256($sp)
+mov $10,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+or $27,$25,$27
+mov $27,$10
+cmpeq $10,14,$23
+bne $23,L.2268
+lda $13,385
+cmpeq $14,$31,$23
+bne $23,L.2270
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2270:
+L.2268:
+lda $9,12
+lda $27,10
+stb $27,-61+256($sp)
+lda $27,-61+256($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+or $9,$27,$9
+cmpeq $9,14,$23
+bne $23,L.2272
+lda $13,386
+cmpeq $14,$31,$23
+bne $23,L.2274
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2274:
+L.2272:
+lda $9,12
+lda $27,10
+stw $27,-64+256($sp)
+lda $27,-64+256($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+or $9,$27,$9
+cmpeq $9,14,$23
+bne $23,L.2276
+lda $13,387
+cmpeq $14,$31,$23
+bne $23,L.2278
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2278:
+L.2276:
+lda $9,12
+lda $27,10
+stl $27,-68+256($sp)
+ldl $27,-68+256($sp)
+or $9,$27,$9
+cmpeq $9,14,$23
+bne $23,L.2280
+lda $13,388
+cmpeq $14,$31,$23
+bne $23,L.2282
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2282:
+L.2280:
+lda $9,12
+lda $27,10
+stq $27,-80+256($sp)
+ldq $27,-80+256($sp)
+or $9,$27,$9
+cmpeq $9,14,$23
+bne $23,L.2284
+lda $13,389
+cmpeq $14,$31,$23
+bne $23,L.2286
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2286:
+L.2284:
+lda $9,12
+lda $27,10
+stl $27,-84+256($sp)
+ldl $27,-84+256($sp)
+zap $27,240,$27
+or $9,$27,$9
+cmpeq $9,14,$23
+bne $23,L.2288
+lda $13,390
+cmpeq $14,$31,$23
+bne $23,L.2290
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2290:
+L.2288:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stb $27,-61+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-61+256($sp)
+ldb $25,($25)
+or $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,14
+cmpeq $27,$25,$23
+bne $23,L.2292
+lda $13,391
+cmpeq $14,$31,$23
+bne $23,L.2294
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2294:
+L.2292:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stw $27,-64+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,-64+256($sp)
+ldw $25,($25)
+or $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,14
+cmpeq $27,$25,$23
+bne $23,L.2296
+lda $13,392
+cmpeq $14,$31,$23
+bne $23,L.2298
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2298:
+L.2296:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stl $27,-68+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-68+256($sp)
+or $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,14
+cmpeq $27,$25,$23
+bne $23,L.2300
+lda $13,393
+cmpeq $14,$31,$23
+bne $23,L.2302
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2302:
+L.2300:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stq $27,-80+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldq $25,-80+256($sp)
+or $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,14
+cmpeq $27,$25,$23
+bne $23,L.2304
+lda $13,394
+cmpeq $14,$31,$23
+bne $23,L.2306
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2306:
+L.2304:
+lda $27,12
+stl $27,-60+256($sp)
+lda $27,10
+stl $27,-84+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+ldl $25,-84+256($sp)
+zap $25,240,$25
+or $27,$25,$27
+stl $27,-60+256($sp)
+ldl $27,-60+256($sp)
+zap $27,240,$27
+lda $25,14
+cmpeq $27,$25,$23
+bne $23,L.2308
+lda $13,395
+cmpeq $14,$31,$23
+bne $23,L.2310
+lda $16,L.685
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2310:
+L.2308:
+cmpeq $13,$31,$23
+bne $23,L.2312
+lda $27,1
+stl $27,-108+256($sp)
+ldq $27,-48+256($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.2314
+lda $16,L.686
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.2314:
+L.2312:
+ldl $0,-108+256($sp)
+L.684:
+ldt $f6,0($sp)
+ldt $f7,8($sp)
+ldt $f8,16($sp)
+ldt $f9,24($sp)
+ldq $9,32($sp)
+ldq $10,40($sp)
+ldq $11,48($sp)
+ldq $12,56($sp)
+ldq $13,64($sp)
+ldq $14,72($sp)
+ldq $24,80($sp)
+ldq $26,88($sp)
+lda $sp,256($sp)
+ret
+.end s714
+.sdata
+.align 0
+L.2317:
+.byte 115
+.byte 55
+.byte 49
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.2318:
+.byte 115
+.byte 55
+.byte 49
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s715
+.text
+.text
+.ent s715
+s715:
+ldgp $gp,0($27)
+lda $sp,-128($sp)
+.mask 0x5007800,-88
+.frame $sp,128,$26,48
+stq $11,0($sp)
+stq $12,8($sp)
+stq $13,16($sp)
+stq $14,24($sp)
+stq $24,32($sp)
+stq $26,40($sp)
+stq $16,80($sp)
+.prologue 1
+stl $31,-68+128($sp)
+stl $31,-60+128($sp)
+lda $14,L.2318
+ldq $25,-48+128($sp)
+lda $13,60($25)
+mov $31,$11
+L.2319:
+L.2320:
+mov $13,$27
+lda $13,1($27)
+mov $14,$25
+lda $14,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.2319
+lda $27,1
+mov $27,$12
+lda $12,1($12)
+lda $12,1($12)
+lda $12,1($12)
+lda $12,1($12)
+lda $27,1($12)
+mov $27,$12
+cmpeq $27,6,$23
+bne $23,L.2322
+ldq $27,-48+128($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.2324
+lda $16,L.2317
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.2324:
+lda $11,1($11)
+L.2322:
+ldl $16,-60+128($sp)
+lda $27,3
+stl $27,-64+128($sp)
+ldl $27,-64+128($sp)
+lda $17,2($27)
+ldl $18,-68+128($sp)
+jsr $26,s715f
+ldgp $gp,0($26)
+cmpeq $0,5,$23
+bne $23,L.2326
+ldq $27,-48+128($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.2328
+lda $16,L.2317
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.2328:
+lda $11,2($11)
+L.2326:
+mov $11,$0
+L.2316:
+ldq $11,0($sp)
+ldq $12,8($sp)
+ldq $13,16($sp)
+ldq $14,24($sp)
+ldq $24,32($sp)
+ldq $26,40($sp)
+lda $sp,128($sp)
+ret
+.end s715
+.globl s715f
+.text
+.ent s715f
+s715f:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+mov $17,$0
+L.2330:
+lda $sp,64($sp)
+ret
+.end s715f
+.sdata
+.align 0
+L.2332:
+.byte 115
+.byte 55
+.byte 50
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.2333:
+.byte 115
+.byte 55
+.byte 50
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s72
+.text
+.text
+.ent s72
+s72:
+ldgp $gp,0($27)
+lda $sp,-176($sp)
+.fmask 0x300,-168
+.mask 0x5007e00,-104
+.frame $sp,176,$26,48
+stt $f8,0($sp)
+stt $f9,8($sp)
+stq $9,16($sp)
+stq $10,24($sp)
+stq $11,32($sp)
+stq $12,40($sp)
+stq $13,48($sp)
+stq $14,56($sp)
+stq $24,64($sp)
+stq $26,72($sp)
+mov $16,$14
+.prologue 1
+lda $12,L.2333
+lda $11,60($14)
+mov $31,$9
+L.2334:
+L.2335:
+mov $11,$27
+lda $11,1($27)
+mov $12,$25
+lda $12,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.2334
+lda $27,2
+stl $27,-60+176($sp)
+ldl $27,-60+176($sp)
+cmpeq $27,2,$23
+bne $23,L.2337
+lda $27,1
+lda $9,1($9)
+lda $16,L.2332
+mov $27,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2337:
+ldl $27,-60+176($sp)
+negl $27,$25
+addl $27,$25,$27
+cmpeq $27,$31,$23
+bne $23,L.2339
+lda $27,2
+lda $9,2($9)
+lda $16,L.2332
+mov $27,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2339:
+stl $31,-60+176($sp)
+mov $31,$13
+br L.2344
+L.2341:
+ldl $27,-60+176($sp)
+sll $27,1,$27
+addl $27,0,$27
+or $27,1,$27
+addl $27,0,$27
+stl $27,-60+176($sp)
+L.2342:
+lda $13,1($13)
+L.2344:
+ldl $27,4($14)
+cmplt $13,$27,$23
+bne $23,L.2341
+ldl $27,-60+176($sp)
+not $27,$27
+addl $27,0,$27
+cmpeq $27,$31,$23
+bne $23,L.2345
+lda $27,4
+lda $9,4($9)
+lda $16,L.2332
+mov $27,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2345:
+lda $27,5
+stl $27,-60+176($sp)
+ldl $27,-60+176($sp)
+lda $27,1($27)
+stl $27,-60+176($sp)
+cmpeq $27,6,$23
+beq $23,L.2352
+ldl $27,-60+176($sp)
+subl $27,1,$27
+stl $27,-60+176($sp)
+cmpeq $27,5,$23
+beq $23,L.2352
+ldl $27,-60+176($sp)
+lda $25,1($27)
+stl $25,-60+176($sp)
+cmpeq $27,5,$23
+beq $23,L.2352
+ldl $27,-60+176($sp)
+subl $27,1,$25
+stl $25,-60+176($sp)
+cmpeq $27,6,$23
+beq $23,L.2352
+ldl $27,-60+176($sp)
+cmpeq $27,5,$23
+bne $23,L.2347
+L.2352:
+lda $27,8
+lda $9,8($9)
+lda $16,L.2332
+mov $27,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2347:
+lda $27,26
+stb $27,-65+176($sp)
+lda $27,26
+stq $27,-80+176($sp)
+ldt $f9,L.2353
+lda $27,26
+stw $27,-68+176($sp)
+lda $27,26
+stl $27,-84+176($sp)
+lda $27,26
+stl $27,-64+176($sp)
+lds $f8,L.2354
+mov $31,$10
+lda $27,-68+176($sp)
+ldw $27,($27)
+sll $27,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,26,$23
+beq $23,L.2361
+ldl $27,-64+176($sp)
+sll $27,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,26,$23
+beq $23,L.2361
+ldq $27,-80+176($sp)
+sll $27,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,26,$23
+beq $23,L.2361
+ldl $27,-84+176($sp)
+zap $27,240,$27
+sll $27,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,26,$23
+beq $23,L.2361
+cvttqc $f8,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+sll $27,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,26,$23
+beq $23,L.2361
+cvttqc $f9,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+sll $27,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,26,$23
+bne $23,L.2355
+L.2361:
+lda $10,1($10)
+L.2355:
+lda $27,-65+176($sp)
+ldb $27,($27)
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,26,$23
+beq $23,L.2368
+ldl $27,-64+176($sp)
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,26,$23
+beq $23,L.2368
+ldq $27,-80+176($sp)
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,26,$23
+beq $23,L.2368
+ldl $27,-84+176($sp)
+zap $27,240,$27
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,26,$23
+beq $23,L.2368
+cvttqc $f8,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,26,$23
+beq $23,L.2368
+cvttqc $f9,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,26,$23
+bne $23,L.2362
+L.2368:
+lda $10,2($10)
+L.2362:
+lda $27,-65+176($sp)
+ldb $27,($27)
+cmpeq $27,26,$23
+beq $23,L.2375
+lda $27,-68+176($sp)
+ldw $27,($27)
+cmpeq $27,26,$23
+beq $23,L.2375
+ldq $27,-80+176($sp)
+cmpeq $27,26,$23
+beq $23,L.2375
+ldl $27,-84+176($sp)
+zap $27,240,$27
+cmpeq $27,26,$23
+beq $23,L.2375
+cvttqc $f8,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+cmpeq $27,26,$23
+beq $23,L.2375
+cvttqc $f9,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+cmpeq $27,26,$23
+bne $23,L.2369
+L.2375:
+lda $10,4($10)
+L.2369:
+lda $27,-65+176($sp)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+cmpeq $27,26,$23
+beq $23,L.2382
+lda $27,-68+176($sp)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+cmpeq $27,26,$23
+beq $23,L.2382
+ldl $27,-64+176($sp)
+cmpeq $27,26,$23
+beq $23,L.2382
+ldl $27,-84+176($sp)
+zap $27,240,$27
+cmpeq $27,26,$23
+beq $23,L.2382
+cvttqc $f8,$f1
+stt $f1,-56+176($sp)
+ldq $27,-56+176($sp)
+cmpeq $27,26,$23
+beq $23,L.2382
+cvttqc $f9,$f1
+stt $f1,-56+176($sp)
+ldq $27,-56+176($sp)
+cmpeq $27,26,$23
+bne $23,L.2376
+L.2382:
+lda $10,8($10)
+L.2376:
+lda $27,26
+lda $25,-65+176($sp)
+ldb $25,($25)
+cmpeq $25,$27,$23
+beq $23,L.2391
+lda $25,-68+176($sp)
+ldw $25,($25)
+cmpeq $25,$27,$23
+beq $23,L.2391
+ldl $25,-64+176($sp)
+cmpeq $25,$27,$23
+beq $23,L.2391
+ldq $25,-80+176($sp)
+cmpeq $25,$27,$23
+beq $23,L.2391
+lds $f30,L.826
+cmptlt $f8,$f30,$f1
+fbne $f1,L.2392
+subs $f8,$f30,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-88+176($sp)
+br L.2393
+L.2392:
+cvttqc $f8,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+stl $27,-88+176($sp)
+L.2393:
+ldl $27,-88+176($sp)
+zap $27,240,$27
+lda $25,26
+cmpeq $27,$25,$23
+beq $23,L.2391
+ldt $f30,L.834
+cmptlt $f9,$f30,$f1
+fbne $f1,L.2394
+subt $f9,$f30,$f30
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-92+176($sp)
+br L.2395
+L.2394:
+cvttqc $f9,$f1
+cvtql $f1,$f1
+sts $f1,-56+176($sp)
+ldl $27,-56+176($sp)
+stl $27,-92+176($sp)
+L.2395:
+ldl $27,-92+176($sp)
+zap $27,240,$27
+lda $25,26
+cmpeq $27,$25,$23
+bne $23,L.2383
+L.2391:
+lda $10,16($10)
+L.2383:
+ldt $f30,L.2353
+lda $27,-65+176($sp)
+ldb $27,($27)
+stq $27,-56+176($sp)
+ldt $f29,-56+176($sp)
+cvtqs $f29,$f29
+cvtst $f29,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2402
+lda $27,-68+176($sp)
+ldw $27,($27)
+stq $27,-56+176($sp)
+ldt $f29,-56+176($sp)
+cvtqs $f29,$f29
+cvtst $f29,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2402
+lds $f29,-64+176($sp)
+cvtlq $f29,$f29
+cvtqs $f29,$f29
+cvtst $f29,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2402
+ldt $f29,-80+176($sp)
+cvtqs $f29,$f29
+cvtst $f29,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2402
+ldl $27,-84+176($sp)
+zap $27,240,$27
+ldt $f29,L.594
+srl $27,1,$25
+stq $25,-56+176($sp)
+ldt $f28,-56+176($sp)
+cvtqt $f28,$f28
+mult $f29,$f28,$f29
+and $27,1,$27
+stq $27,-56+176($sp)
+ldt $f28,-56+176($sp)
+cvtqt $f28,$f28
+addt $f29,$f28,$f29
+cvtts $f29,$f29
+cvtst $f29,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2402
+cvtts $f9,$f29
+cvtst $f29,$f29
+cmpteq $f29,$f30,$f1
+fbne $f1,L.2396
+L.2402:
+lda $10,32($10)
+L.2396:
+ldt $f30,L.2353
+lda $27,-65+176($sp)
+ldb $27,($27)
+stq $27,-56+176($sp)
+ldt $f29,-56+176($sp)
+cvtqt $f29,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2409
+lda $27,-68+176($sp)
+ldw $27,($27)
+stq $27,-56+176($sp)
+ldt $f29,-56+176($sp)
+cvtqt $f29,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2409
+lds $f29,-64+176($sp)
+cvtlq $f29,$f29
+cvtqt $f29,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2409
+ldt $f29,-80+176($sp)
+cvtqt $f29,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2409
+ldl $27,-84+176($sp)
+zap $27,240,$27
+ldt $f29,L.594
+srl $27,1,$25
+stq $25,-56+176($sp)
+ldt $f28,-56+176($sp)
+cvtqt $f28,$f28
+mult $f29,$f28,$f29
+and $27,1,$27
+stq $27,-56+176($sp)
+ldt $f28,-56+176($sp)
+cvtqt $f28,$f28
+addt $f29,$f28,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.2409
+cvtst $f8,$f29
+cmpteq $f29,$f30,$f1
+fbne $f1,L.2403
+L.2409:
+lda $10,64($10)
+L.2403:
+cmpeq $10,$31,$23
+bne $23,L.2410
+lda $27,16
+lda $9,16($9)
+lda $16,L.2332
+mov $27,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2410:
+mov $9,$0
+L.2331:
+ldt $f8,0($sp)
+ldt $f9,8($sp)
+ldq $9,16($sp)
+ldq $10,24($sp)
+ldq $11,32($sp)
+ldq $12,40($sp)
+ldq $13,48($sp)
+ldq $14,56($sp)
+ldq $24,64($sp)
+ldq $26,72($sp)
+lda $sp,176($sp)
+ret
+.end s72
+.sdata
+.align 0
+L.2413:
+.byte 115
+.byte 55
+.byte 53
+.byte 55
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.2414:
+.byte 115
+.byte 55
+.byte 53
+.byte 55
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s757
+.text
+.text
+.ent s757
+s757:
+ldgp $gp,0($27)
+lda $sp,-272($sp)
+.mask 0x5007e00,-216
+.frame $sp,272,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+mov $16,$14
+.prologue 1
+lda $27,L.2414
+stq $27,-152+272($sp)
+lda $27,60($14)
+stq $27,-160+272($sp)
+stl $31,-164+272($sp)
+L.2415:
+L.2416:
+ldq $27,-160+272($sp)
+lda $25,1($27)
+stq $25,-160+272($sp)
+ldq $25,-152+272($sp)
+lda $22,1($25)
+stq $22,-152+272($sp)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.2415
+lda $27,40
+stl $27,-168+272($sp)
+ldl $27,-168+272($sp)
+sll $27,3,$25
+addl $25,0,$25
+sll $25,2,$25
+addl $25,0,$25
+lda $22,1280
+cmpeq $25,$22,$23
+beq $23,L.2420
+sra $27,3,$27
+addl $27,0,$27
+sra $27,2,$27
+addl $27,0,$27
+cmpeq $27,1,$23
+bne $23,L.2418
+L.2420:
+ldl $27,-164+272($sp)
+lda $27,1($27)
+stl $27,-164+272($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.2421
+lda $16,L.2413
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.2421:
+L.2418:
+mov $31,$9
+stl $31,-136+272($sp)
+br L.2426
+L.2423:
+lda $27,1
+stl $27,-128+272($sp)
+ldl $27,-128+272($sp)
+zap $27,240,$27
+ldl $25,16($14)
+subl $25,1,$25
+sll $27,$25,$27
+zap $27,240,$27
+stl $27,-132+272($sp)
+stl $31,-140+272($sp)
+ldl $27,-140+272($sp)
+zap $27,240,$27
+not $27,$27
+zap $27,240,$27
+ldl $25,-136+272($sp)
+srl $27,$25,$22
+stl $22,-144+272($sp)
+sll $27,$25,$27
+zap $27,240,$27
+stl $27,-140+272($sp)
+stl $31,-124+272($sp)
+br L.2430
+L.2427:
+ldl $27,-124+272($sp)
+ldl $25,-136+272($sp)
+cmplt $27,$25,$23
+beq $23,L.2438
+lda $27,1
+stl $27,-180+272($sp)
+br L.2439
+L.2438:
+stl $31,-180+272($sp)
+L.2439:
+ldl $27,-128+272($sp)
+zap $27,240,$27
+ldl $25,-140+272($sp)
+zap $25,240,$25
+and $27,$25,$27
+cmpeq $27,$31,$23
+beq $23,L.2440
+lda $27,1
+stl $27,-184+272($sp)
+br L.2441
+L.2440:
+stl $31,-184+272($sp)
+L.2441:
+ldl $27,-180+272($sp)
+ldl $25,-184+272($sp)
+cmpeq $27,$25,$23
+beq $23,L.2437
+ldl $27,-124+272($sp)
+ldl $25,-136+272($sp)
+cmplt $27,$25,$23
+beq $23,L.2442
+lda $27,1
+stl $27,-188+272($sp)
+br L.2443
+L.2442:
+stl $31,-188+272($sp)
+L.2443:
+ldl $27,-132+272($sp)
+zap $27,240,$27
+ldl $25,-144+272($sp)
+zap $25,240,$25
+and $27,$25,$27
+cmpeq $27,$31,$23
+beq $23,L.2444
+lda $27,1
+stl $27,-192+272($sp)
+br L.2445
+L.2444:
+stl $31,-192+272($sp)
+L.2445:
+ldl $27,-188+272($sp)
+ldl $25,-192+272($sp)
+cmpeq $27,$25,$23
+bne $23,L.2431
+L.2437:
+lda $9,1
+L.2431:
+ldl $27,-128+272($sp)
+zap $27,240,$27
+sll $27,1,$27
+zap $27,240,$27
+stl $27,-128+272($sp)
+ldl $27,-132+272($sp)
+zap $27,240,$27
+srl $27,1,$27
+stl $27,-132+272($sp)
+L.2428:
+ldl $27,-124+272($sp)
+lda $27,1($27)
+stl $27,-124+272($sp)
+L.2430:
+ldl $27,-124+272($sp)
+ldl $25,16($14)
+cmplt $27,$25,$23
+bne $23,L.2427
+L.2424:
+ldl $27,-136+272($sp)
+lda $27,1($27)
+stl $27,-136+272($sp)
+L.2426:
+ldl $27,-136+272($sp)
+ldl $25,16($14)
+cmplt $27,$25,$23
+bne $23,L.2423
+cmpeq $9,$31,$23
+bne $23,L.2446
+ldl $27,-164+272($sp)
+lda $27,2($27)
+stl $27,-164+272($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.2448
+lda $16,L.2413
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.2448:
+L.2446:
+lda $10,3
+lda $11,2
+lda $12,1
+cmplt $10,$11,$23
+beq $23,L.2456
+lda $27,1
+stl $27,-184+272($sp)
+br L.2457
+L.2456:
+stl $31,-184+272($sp)
+L.2457:
+ldl $27,-184+272($sp)
+cmplt $27,$12,$23
+beq $23,L.2454
+lda $27,1
+stl $27,-180+272($sp)
+br L.2455
+L.2454:
+stl $31,-180+272($sp)
+L.2455:
+ldl $27,-180+272($sp)
+cmpeq $27,1,$23
+bne $23,L.2450
+ldl $27,-164+272($sp)
+lda $27,4($27)
+stl $27,-164+272($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.2458
+lda $16,L.2413
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.2458:
+L.2450:
+lda $27,-116+272($sp)
+lda $25,-120+272($sp)
+cmpeq $27,$25,$23
+beq $23,L.2460
+ldl $27,-164+272($sp)
+lda $27,8($27)
+stl $27,-164+272($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.2463
+lda $16,L.2413
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.2463:
+L.2460:
+lda $27,-116+272($sp)
+lda $25,-120+272($sp)
+cmpult $27,$25,$23
+beq $23,L.2465
+ldl $27,40($14)
+cmpeq $27,$31,$23
+bne $23,L.2468
+lda $16,L.2470
+jsr $26,printf
+ldgp $gp,0($26)
+L.2468:
+L.2465:
+mov $31,$9
+stl $31,-124+272($sp)
+L.2471:
+ldl $27,-124+272($sp)
+sll $27,2,$27
+lda $25,-120+272($sp)
+addq $27,$25,$27
+lda $25,1
+stl $25,($27)
+L.2472:
+ldl $27,-124+272($sp)
+lda $27,1($27)
+stl $27,-124+272($sp)
+ldl $27,-124+272($sp)
+cmplt $27,16,$23
+bne $23,L.2471
+stl $31,-116+272($sp)
+stl $31,-104+272($sp)
+stl $31,-96+272($sp)
+stl $31,-92+272($sp)
+stl $31,-84+272($sp)
+stl $31,-68+272($sp)
+mov $31,$10
+L.2481:
+mov $31,$11
+L.2485:
+mov $31,$12
+L.2489:
+mov $31,$13
+L.2493:
+cmplt $10,$11,$23
+beq $23,L.2504
+lda $27,1
+stl $27,-192+272($sp)
+br L.2505
+L.2504:
+stl $31,-192+272($sp)
+L.2505:
+cmplt $12,$13,$23
+beq $23,L.2506
+lda $27,1
+stl $27,-196+272($sp)
+br L.2507
+L.2506:
+stl $31,-196+272($sp)
+L.2507:
+ldl $27,-192+272($sp)
+ldl $25,-196+272($sp)
+cmpeq $27,$25,$23
+beq $23,L.2502
+lda $27,1
+stl $27,-188+272($sp)
+br L.2503
+L.2502:
+stl $31,-188+272($sp)
+L.2503:
+ldl $27,-188+272($sp)
+sll $10,3,$25
+addl $25,0,$25
+sll $11,2,$22
+addl $22,0,$22
+addl $25,$22,$25
+sll $12,1,$22
+addl $22,0,$22
+addl $25,$22,$25
+addl $25,$13,$25
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+lda $22,-120+272($sp)
+addq $25,$22,$25
+ldl $25,($25)
+cmpeq $27,$25,$23
+bne $23,L.2497
+lda $9,1
+L.2497:
+L.2494:
+lda $13,1($13)
+cmplt $13,2,$23
+bne $23,L.2493
+L.2490:
+lda $12,1($12)
+cmplt $12,2,$23
+bne $23,L.2489
+L.2486:
+lda $11,1($11)
+cmplt $11,2,$23
+bne $23,L.2485
+L.2482:
+lda $10,1($10)
+cmplt $10,2,$23
+bne $23,L.2481
+cmpeq $9,$31,$23
+bne $23,L.2508
+ldl $27,-164+272($sp)
+lda $27,16($27)
+stl $27,-164+272($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.2510
+lda $16,L.2413
+lda $17,16
+jsr $26,printf
+ldgp $gp,0($26)
+L.2510:
+L.2508:
+stq $31,-176+272($sp)
+ldq $27,-176+272($sp)
+cmpeq $27,$31,$23
+bne $23,L.2512
+ldl $27,-164+272($sp)
+lda $27,32($27)
+stl $27,-164+272($sp)
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.2514
+lda $16,L.2413
+lda $17,32
+jsr $26,printf
+ldgp $gp,0($26)
+L.2514:
+L.2512:
+ldl $0,-164+272($sp)
+L.2412:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,272($sp)
+ret
+.end s757
+.sdata
+.align 0
+L.2517:
+.byte 76
+.byte 111
+.byte 99
+.byte 97
+.byte 108
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.2518:
+.byte 115
+.byte 55
+.byte 56
+.byte 49
+.byte 51
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.2519:
+.byte 115
+.byte 55
+.byte 56
+.byte 49
+.byte 51
+.byte 32
+.byte 32
+.byte 0
+.globl s7813
+.text
+.text
+.ent s7813
+s7813:
+ldgp $gp,0($27)
+lda $sp,-192($sp)
+.mask 0x5007e00,-136
+.frame $sp,192,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+stq $16,144($sp)
+.prologue 1
+lda $9,L.2519
+ldq $27,-48+192($sp)
+lda $25,60($27)
+stq $25,-64+192($sp)
+mov $31,$13
+stl $31,-68+192($sp)
+ldl $14,48($27)
+L.2520:
+L.2521:
+ldq $27,-64+192($sp)
+lda $25,1($27)
+stq $25,-64+192($sp)
+mov $9,$25
+lda $9,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.2520
+br L.2523
+lda $13,1
+cmpeq $14,$31,$23
+bne $23,L.2525
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2525:
+L.2523:
+br L.2527
+lda $13,2
+cmpeq $14,$31,$23
+bne $23,L.2529
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2529:
+L.2527:
+br L.2531
+lda $13,3
+cmpeq $14,$31,$23
+bne $23,L.2533
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2533:
+L.2531:
+br L.2535
+lda $13,4
+cmpeq $14,$31,$23
+bne $23,L.2537
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2537:
+L.2535:
+br L.2539
+lda $13,5
+cmpeq $14,$31,$23
+bne $23,L.2541
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2541:
+L.2539:
+br L.2543
+lda $13,6
+cmpeq $14,$31,$23
+bne $23,L.2545
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2545:
+L.2543:
+br L.2547
+lda $13,7
+cmpeq $14,$31,$23
+bne $23,L.2549
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2549:
+L.2547:
+br L.2551
+lda $13,8
+cmpeq $14,$31,$23
+bne $23,L.2553
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2553:
+L.2551:
+br L.2555
+lda $13,9
+cmpeq $14,$31,$23
+bne $23,L.2557
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2557:
+L.2555:
+br L.2559
+lda $13,10
+cmpeq $14,$31,$23
+bne $23,L.2561
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2561:
+L.2559:
+br L.2563
+lda $13,11
+cmpeq $14,$31,$23
+bne $23,L.2565
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2565:
+L.2563:
+br L.2567
+lda $13,12
+cmpeq $14,$31,$23
+bne $23,L.2569
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2569:
+L.2567:
+br L.2571
+lda $13,13
+cmpeq $14,$31,$23
+bne $23,L.2573
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2573:
+L.2571:
+br L.2575
+lda $13,14
+cmpeq $14,$31,$23
+bne $23,L.2577
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2577:
+L.2575:
+br L.2579
+lda $13,15
+cmpeq $14,$31,$23
+bne $23,L.2581
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2581:
+L.2579:
+br L.2583
+lda $13,16
+cmpeq $14,$31,$23
+bne $23,L.2585
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2585:
+L.2583:
+br L.2587
+lda $13,17
+cmpeq $14,$31,$23
+bne $23,L.2589
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2589:
+L.2587:
+br L.2591
+lda $13,18
+cmpeq $14,$31,$23
+bne $23,L.2593
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2593:
+L.2591:
+br L.2595
+lda $13,16
+cmpeq $14,$31,$23
+bne $23,L.2597
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2597:
+L.2595:
+br L.2599
+lda $13,20
+cmpeq $14,$31,$23
+bne $23,L.2601
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2601:
+L.2599:
+br L.2603
+lda $13,21
+cmpeq $14,$31,$23
+bne $23,L.2605
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2605:
+L.2603:
+br L.2607
+lda $13,22
+cmpeq $14,$31,$23
+bne $23,L.2609
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2609:
+L.2607:
+br L.2611
+lda $13,23
+cmpeq $14,$31,$23
+bne $23,L.2613
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2613:
+L.2611:
+br L.2615
+lda $13,24
+cmpeq $14,$31,$23
+bne $23,L.2617
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2617:
+L.2615:
+br L.2619
+lda $13,25
+cmpeq $14,$31,$23
+bne $23,L.2621
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2621:
+L.2619:
+br L.2623
+lda $13,26
+cmpeq $14,$31,$23
+bne $23,L.2625
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2625:
+L.2623:
+br L.2627
+lda $13,27
+cmpeq $14,$31,$23
+bne $23,L.2629
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2629:
+L.2627:
+br L.2631
+lda $13,28
+cmpeq $14,$31,$23
+bne $23,L.2633
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2633:
+L.2631:
+br L.2635
+lda $13,26
+cmpeq $14,$31,$23
+bne $23,L.2637
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2637:
+L.2635:
+br L.2639
+lda $13,30
+cmpeq $14,$31,$23
+bne $23,L.2641
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2641:
+L.2639:
+br L.2643
+lda $13,31
+cmpeq $14,$31,$23
+bne $23,L.2645
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2645:
+L.2643:
+br L.2647
+lda $13,32
+cmpeq $14,$31,$23
+bne $23,L.2649
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2649:
+L.2647:
+br L.2651
+lda $13,33
+cmpeq $14,$31,$23
+bne $23,L.2653
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2653:
+L.2651:
+br L.2655
+lda $13,34
+cmpeq $14,$31,$23
+bne $23,L.2657
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2657:
+L.2655:
+br L.2659
+lda $13,35
+cmpeq $14,$31,$23
+bne $23,L.2661
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2661:
+L.2659:
+br L.2663
+lda $13,36
+cmpeq $14,$31,$23
+bne $23,L.2665
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2665:
+L.2663:
+br L.2667
+lda $13,37
+cmpeq $14,$31,$23
+bne $23,L.2669
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2669:
+L.2667:
+br L.2671
+lda $13,38
+cmpeq $14,$31,$23
+bne $23,L.2673
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2673:
+L.2671:
+br L.2675
+lda $13,39
+cmpeq $14,$31,$23
+bne $23,L.2677
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2677:
+L.2675:
+br L.2679
+lda $13,40
+cmpeq $14,$31,$23
+bne $23,L.2681
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2681:
+L.2679:
+br L.2683
+lda $13,41
+cmpeq $14,$31,$23
+bne $23,L.2685
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2685:
+L.2683:
+br L.2687
+lda $13,42
+cmpeq $14,$31,$23
+bne $23,L.2689
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2689:
+L.2687:
+br L.2691
+lda $13,43
+cmpeq $14,$31,$23
+bne $23,L.2693
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2693:
+L.2691:
+br L.2695
+lda $13,44
+cmpeq $14,$31,$23
+bne $23,L.2697
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2697:
+L.2695:
+br L.2699
+lda $13,45
+cmpeq $14,$31,$23
+bne $23,L.2701
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2701:
+L.2699:
+br L.2703
+lda $13,46
+cmpeq $14,$31,$23
+bne $23,L.2705
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2705:
+L.2703:
+br L.2707
+lda $13,47
+cmpeq $14,$31,$23
+bne $23,L.2709
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2709:
+L.2707:
+br L.2711
+lda $13,48
+cmpeq $14,$31,$23
+bne $23,L.2713
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2713:
+L.2711:
+br L.2715
+lda $13,49
+cmpeq $14,$31,$23
+bne $23,L.2717
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2717:
+L.2715:
+br L.2719
+lda $13,50
+cmpeq $14,$31,$23
+bne $23,L.2721
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2721:
+L.2719:
+br L.2723
+lda $13,51
+cmpeq $14,$31,$23
+bne $23,L.2725
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2725:
+L.2723:
+br L.2727
+lda $13,52
+cmpeq $14,$31,$23
+bne $23,L.2729
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2729:
+L.2727:
+br L.2731
+lda $13,53
+cmpeq $14,$31,$23
+bne $23,L.2733
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2733:
+L.2731:
+br L.2735
+lda $13,54
+cmpeq $14,$31,$23
+bne $23,L.2737
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2737:
+L.2735:
+br L.2739
+lda $13,55
+cmpeq $14,$31,$23
+bne $23,L.2741
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2741:
+L.2739:
+br L.2743
+lda $13,56
+cmpeq $14,$31,$23
+bne $23,L.2745
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2745:
+L.2743:
+br L.2747
+lda $13,57
+cmpeq $14,$31,$23
+bne $23,L.2749
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2749:
+L.2747:
+br L.2751
+lda $13,58
+cmpeq $14,$31,$23
+bne $23,L.2753
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2753:
+L.2751:
+br L.2755
+lda $13,56
+cmpeq $14,$31,$23
+bne $23,L.2757
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2757:
+L.2755:
+br L.2759
+lda $13,60
+cmpeq $14,$31,$23
+bne $23,L.2761
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2761:
+L.2759:
+br L.2763
+lda $13,61
+cmpeq $14,$31,$23
+bne $23,L.2765
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2765:
+L.2763:
+br L.2767
+lda $13,62
+cmpeq $14,$31,$23
+bne $23,L.2769
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2769:
+L.2767:
+br L.2771
+lda $13,63
+cmpeq $14,$31,$23
+bne $23,L.2773
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2773:
+L.2771:
+br L.2775
+lda $13,64
+cmpeq $14,$31,$23
+bne $23,L.2777
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2777:
+L.2775:
+br L.2779
+lda $13,65
+cmpeq $14,$31,$23
+bne $23,L.2781
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2781:
+L.2779:
+br L.2783
+lda $13,66
+cmpeq $14,$31,$23
+bne $23,L.2785
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2785:
+L.2783:
+br L.2787
+lda $13,67
+cmpeq $14,$31,$23
+bne $23,L.2789
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2789:
+L.2787:
+br L.2791
+lda $13,68
+cmpeq $14,$31,$23
+bne $23,L.2793
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2793:
+L.2791:
+br L.2795
+lda $13,69
+cmpeq $14,$31,$23
+bne $23,L.2797
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2797:
+L.2795:
+br L.2799
+lda $13,70
+cmpeq $14,$31,$23
+bne $23,L.2801
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2801:
+L.2799:
+br L.2803
+lda $13,71
+cmpeq $14,$31,$23
+bne $23,L.2805
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2805:
+L.2803:
+br L.2807
+lda $13,72
+cmpeq $14,$31,$23
+bne $23,L.2809
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2809:
+L.2807:
+br L.2811
+lda $13,73
+cmpeq $14,$31,$23
+bne $23,L.2813
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2813:
+L.2811:
+br L.2815
+lda $13,74
+cmpeq $14,$31,$23
+bne $23,L.2817
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2817:
+L.2815:
+br L.2819
+lda $13,75
+cmpeq $14,$31,$23
+bne $23,L.2821
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2821:
+L.2819:
+cmpeq $13,$31,$23
+bne $23,L.2823
+ldq $27,-48+192($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.2825
+lda $16,L.2518
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.2825:
+ldl $27,-68+192($sp)
+lda $27,1($27)
+stl $27,-68+192($sp)
+L.2823:
+mov $31,$13
+mov $31,$11
+mov $31,$12
+mov $12,$27
+lda $12,1($27)
+mov $31,$25
+cmpeq $27,$25,$23
+bne $23,L.2828
+mov $11,$27
+lda $11,1($27)
+cmpeq $27,$25,$23
+bne $23,L.2828
+lda $27,1
+stl $27,-80+192($sp)
+br L.2829
+L.2828:
+stl $31,-80+192($sp)
+L.2829:
+ldl $10,-80+192($sp)
+cmpeq $12,1,$23
+bne $23,L.2830
+lda $13,1
+cmpeq $14,$31,$23
+bne $23,L.2832
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2832:
+L.2830:
+cmpeq $11,$31,$23
+bne $23,L.2834
+lda $13,2
+cmpeq $14,$31,$23
+bne $23,L.2836
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2836:
+L.2834:
+cmpeq $10,$31,$23
+bne $23,L.2838
+lda $13,3
+cmpeq $14,$31,$23
+bne $23,L.2840
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2840:
+L.2838:
+cmpeq $12,$31,$23
+bne $23,L.2843
+mov $11,$25
+lda $11,1($25)
+cmpeq $25,$31,$23
+bne $23,L.2843
+lda $27,1
+stl $27,-84+192($sp)
+br L.2844
+L.2843:
+stl $31,-84+192($sp)
+L.2844:
+ldl $10,-84+192($sp)
+cmpeq $12,1,$23
+bne $23,L.2845
+lda $13,4
+cmpeq $14,$31,$23
+bne $23,L.2847
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2847:
+L.2845:
+cmpeq $11,1,$23
+bne $23,L.2849
+lda $13,5
+cmpeq $14,$31,$23
+bne $23,L.2851
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2851:
+L.2849:
+cmpeq $10,$31,$23
+bne $23,L.2853
+lda $13,6
+cmpeq $14,$31,$23
+bne $23,L.2855
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2855:
+L.2853:
+mov $12,$27
+subl $27,1,$12
+mov $31,$25
+cmpeq $27,$25,$23
+bne $23,L.2858
+cmpeq $11,$25,$23
+bne $23,L.2858
+lda $27,1
+stl $27,-88+192($sp)
+br L.2859
+L.2858:
+stl $31,-88+192($sp)
+L.2859:
+ldl $10,-88+192($sp)
+cmpeq $12,$31,$23
+bne $23,L.2860
+lda $13,7
+cmpeq $14,$31,$23
+bne $23,L.2862
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2862:
+L.2860:
+cmpeq $11,1,$23
+bne $23,L.2864
+lda $13,8
+cmpeq $14,$31,$23
+bne $23,L.2866
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2866:
+L.2864:
+cmpeq $10,1,$23
+bne $23,L.2868
+lda $13,9
+cmpeq $14,$31,$23
+bne $23,L.2870
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2870:
+L.2868:
+cmpeq $12,$31,$23
+bne $23,L.2873
+mov $11,$25
+subl $25,1,$11
+cmpeq $25,$31,$23
+bne $23,L.2873
+lda $27,1
+stl $27,-92+192($sp)
+br L.2874
+L.2873:
+stl $31,-92+192($sp)
+L.2874:
+ldl $10,-92+192($sp)
+cmpeq $12,$31,$23
+bne $23,L.2875
+lda $13,10
+cmpeq $14,$31,$23
+bne $23,L.2877
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2877:
+L.2875:
+cmpeq $11,1,$23
+bne $23,L.2879
+lda $13,11
+cmpeq $14,$31,$23
+bne $23,L.2881
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2881:
+L.2879:
+cmpeq $10,$31,$23
+bne $23,L.2883
+lda $13,12
+cmpeq $14,$31,$23
+bne $23,L.2885
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2885:
+L.2883:
+cmpeq $13,$31,$23
+bne $23,L.2887
+ldq $27,-48+192($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.2889
+lda $16,L.2518
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.2889:
+ldl $27,-68+192($sp)
+lda $27,2($27)
+stl $27,-68+192($sp)
+L.2887:
+mov $31,$13
+mov $31,$11
+mov $31,$12
+mov $12,$27
+lda $12,1($27)
+mov $31,$25
+cmpeq $27,$25,$23
+beq $23,L.2894
+cmpeq $11,$25,$23
+bne $23,L.2892
+L.2894:
+lda $27,1
+stl $27,-96+192($sp)
+br L.2893
+L.2892:
+stl $31,-96+192($sp)
+L.2893:
+ldl $10,-96+192($sp)
+cmpeq $12,1,$23
+bne $23,L.2895
+lda $13,1
+cmpeq $14,$31,$23
+bne $23,L.2897
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2897:
+L.2895:
+cmpeq $11,$31,$23
+bne $23,L.2899
+lda $13,2
+cmpeq $14,$31,$23
+bne $23,L.2901
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2901:
+L.2899:
+cmpeq $10,$31,$23
+bne $23,L.2903
+lda $13,3
+cmpeq $14,$31,$23
+bne $23,L.2905
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2905:
+L.2903:
+mov $11,$27
+lda $11,1($27)
+mov $31,$25
+cmpeq $27,$25,$23
+beq $23,L.2910
+cmpeq $12,$25,$23
+bne $23,L.2908
+L.2910:
+lda $27,1
+stl $27,-100+192($sp)
+br L.2909
+L.2908:
+stl $31,-100+192($sp)
+L.2909:
+ldl $10,-100+192($sp)
+cmpeq $12,1,$23
+bne $23,L.2911
+lda $13,4
+cmpeq $14,$31,$23
+bne $23,L.2913
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2913:
+L.2911:
+cmpeq $11,1,$23
+bne $23,L.2915
+lda $13,5
+cmpeq $14,$31,$23
+bne $23,L.2917
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2917:
+L.2915:
+cmpeq $10,1,$23
+bne $23,L.2919
+lda $13,6
+cmpeq $14,$31,$23
+bne $23,L.2921
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2921:
+L.2919:
+mov $12,$27
+subl $27,1,$12
+mov $31,$25
+cmpeq $27,$25,$23
+beq $23,L.2926
+mov $11,$27
+subl $27,1,$11
+cmpeq $27,$25,$23
+bne $23,L.2924
+L.2926:
+lda $27,1
+stl $27,-104+192($sp)
+br L.2925
+L.2924:
+stl $31,-104+192($sp)
+L.2925:
+ldl $10,-104+192($sp)
+cmpeq $12,$31,$23
+bne $23,L.2927
+lda $13,7
+cmpeq $14,$31,$23
+bne $23,L.2929
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2929:
+L.2927:
+cmpeq $11,1,$23
+bne $23,L.2931
+lda $13,8
+cmpeq $14,$31,$23
+bne $23,L.2933
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2933:
+L.2931:
+cmpeq $10,1,$23
+bne $23,L.2935
+lda $13,9
+cmpeq $14,$31,$23
+bne $23,L.2937
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2937:
+L.2935:
+mov $31,$27
+cmpeq $12,$27,$23
+beq $23,L.2942
+mov $11,$25
+subl $25,1,$11
+cmpeq $25,$27,$23
+bne $23,L.2940
+L.2942:
+lda $27,1
+stl $27,-108+192($sp)
+br L.2941
+L.2940:
+stl $31,-108+192($sp)
+L.2941:
+ldl $10,-108+192($sp)
+cmpeq $12,$31,$23
+bne $23,L.2943
+lda $13,10
+cmpeq $14,$31,$23
+bne $23,L.2945
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2945:
+L.2943:
+cmpeq $11,$31,$23
+bne $23,L.2947
+lda $13,11
+cmpeq $14,$31,$23
+bne $23,L.2949
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2949:
+L.2947:
+cmpeq $10,1,$23
+bne $23,L.2951
+lda $13,12
+cmpeq $14,$31,$23
+bne $23,L.2953
+lda $16,L.2517
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.2953:
+L.2951:
+cmpeq $13,$31,$23
+bne $23,L.2955
+ldq $27,-48+192($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.2957
+lda $16,L.2518
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.2957:
+ldl $27,-68+192($sp)
+lda $27,4($27)
+stl $27,-68+192($sp)
+L.2955:
+mov $31,$11
+mov $31,$12
+stl $31,-72+192($sp)
+lda $25,1
+stl $25,-76+192($sp)
+ldl $25,-76+192($sp)
+cmpeq $25,$31,$23
+bne $23,L.2961
+ldl $27,-72+192($sp)
+stl $27,-112+192($sp)
+br L.2962
+L.2961:
+ldl $27,-76+192($sp)
+cmpeq $27,$31,$23
+bne $23,L.2963
+mov $12,$27
+lda $12,1($27)
+stl $27,-116+192($sp)
+br L.2964
+L.2963:
+mov $11,$27
+lda $11,1($27)
+stl $27,-116+192($sp)
+L.2964:
+ldl $27,-116+192($sp)
+stl $27,-112+192($sp)
+L.2962:
+ldl $10,-112+192($sp)
+cmpeq $10,$31,$23
+beq $23,L.2968
+cmpeq $12,$31,$23
+beq $23,L.2968
+cmpeq $11,$31,$23
+bne $23,L.2965
+L.2968:
+ldq $27,-48+192($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.2969
+lda $16,L.2518
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.2969:
+ldl $27,-68+192($sp)
+lda $27,8($27)
+stl $27,-68+192($sp)
+L.2965:
+ldl $27,-76+192($sp)
+cmpeq $27,$31,$23
+bne $23,L.2976
+ldl $27,-72+192($sp)
+stl $27,-120+192($sp)
+br L.2977
+L.2976:
+lda $27,1
+stl $27,-120+192($sp)
+L.2977:
+ldl $25,-120+192($sp)
+cmpeq $25,$31,$23
+beq $23,L.2975
+ldl $25,-72+192($sp)
+cmpeq $25,$31,$23
+bne $23,L.2978
+lda $27,1
+stl $27,-124+192($sp)
+br L.2979
+L.2978:
+ldl $27,-72+192($sp)
+stl $27,-124+192($sp)
+L.2979:
+ldl $27,-124+192($sp)
+cmpeq $27,$31,$23
+bne $23,L.2971
+L.2975:
+ldq $27,-48+192($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.2980
+lda $16,L.2518
+lda $17,16
+jsr $26,printf
+ldgp $gp,0($26)
+L.2980:
+ldl $27,-68+192($sp)
+lda $27,16($27)
+stl $27,-68+192($sp)
+L.2971:
+ldl $0,-68+192($sp)
+L.2516:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,192($sp)
+ret
+.end s7813
+.sdata
+.align 0
+L.2983:
+.byte 115
+.byte 56
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.2984:
+.byte 115
+.byte 56
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.2985:
+.byte 82
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 117
+.byte 110
+.byte 114
+.byte 101
+.byte 108
+.byte 105
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.2986:
+.byte 37
+.byte 100
+.byte 32
+.byte 114
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 118
+.byte 97
+.byte 114
+.byte 105
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.globl s81
+.text
+.text
+.ent s81
+s81:
+ldgp $gp,0($27)
+lda $sp,-160($sp)
+.mask 0x5007e00,-104
+.frame $sp,160,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+stq $16,112($sp)
+.prologue 1
+stl $31,-96+160($sp)
+stl $31,-84+160($sp)
+stl $31,-88+160($sp)
+stl $31,-92+160($sp)
+lda $27,L.2984
+stq $27,-72+160($sp)
+ldq $27,-48+160($sp)
+lda $27,60($27)
+stq $27,-80+160($sp)
+L.2987:
+L.2988:
+ldq $27,-80+160($sp)
+lda $25,1($27)
+stq $25,-80+160($sp)
+ldq $25,-72+160($sp)
+lda $22,1($25)
+stq $22,-72+160($sp)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.2987
+lda $27,1
+stl $27,-60+160($sp)
+mov $31,$11
+L.2990:
+ldl $27,-60+160($sp)
+mov $27,$25
+mov $25,$14
+mov $25,$10
+lda $13,-60+160($sp)
+lda $9,-60+160($sp)
+mov $27,$12
+stl $27,-64+160($sp)
+sll $14,8*(8-1),$27
+sra $27,8*(8-1),$27
+sll $10,8*(8-1),$25
+sra $25,8*(8-1),$25
+cmpeq $27,$25,$23
+bne $23,L.2994
+lda $27,1
+stl $27,-84+160($sp)
+L.2994:
+mov $13,$27
+mov $9,$25
+cmpeq $27,$25,$23
+bne $23,L.2996
+lda $27,1
+stl $27,-88+160($sp)
+L.2996:
+ldl $27,-64+160($sp)
+cmpeq $12,$27,$23
+bne $23,L.2998
+lda $27,1
+stl $27,-92+160($sp)
+L.2998:
+ldl $27,-60+160($sp)
+sll $27,1,$27
+addl $27,0,$27
+stl $27,-60+160($sp)
+L.2991:
+lda $11,1($11)
+cmplt $11,50,$23
+bne $23,L.2990
+ldl $27,-84+160($sp)
+cmpeq $27,$31,$23
+bne $23,L.3000
+ldl $27,-96+160($sp)
+lda $27,1($27)
+stl $27,-96+160($sp)
+ldq $27,-48+160($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3002
+lda $16,L.2983
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.3002:
+L.3000:
+ldl $27,-88+160($sp)
+cmpeq $27,$31,$23
+bne $23,L.3004
+ldl $27,-96+160($sp)
+lda $27,2($27)
+stl $27,-96+160($sp)
+ldq $27,-48+160($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3006
+lda $16,L.2983
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.3006:
+L.3004:
+ldl $27,-92+160($sp)
+cmpeq $27,$31,$23
+bne $23,L.3008
+ldl $27,-96+160($sp)
+lda $27,4($27)
+stl $27,-96+160($sp)
+ldq $27,-48+160($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3010
+lda $16,L.2983
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.3010:
+L.3008:
+jsr $26,regc
+ldgp $gp,0($26)
+stl $0,-60+160($sp)
+ldq $27,-48+160($sp)
+ldl $27,40($27)
+cmpeq $27,$31,$23
+bne $23,L.3012
+ldl $27,-60+160($sp)
+cmplt $27,$31,$23
+beq $23,L.3014
+lda $16,L.2985
+lda $17,L.423
+jsr $26,printf
+ldgp $gp,0($26)
+br L.3015
+L.3014:
+lda $16,L.2986
+ldl $17,-60+160($sp)
+lda $18,L.423
+jsr $26,printf
+ldgp $gp,0($26)
+L.3015:
+L.3012:
+jsr $26,regp
+ldgp $gp,0($26)
+stl $0,-60+160($sp)
+ldq $27,-48+160($sp)
+ldl $27,40($27)
+cmpeq $27,$31,$23
+bne $23,L.3016
+ldl $27,-60+160($sp)
+cmplt $27,$31,$23
+beq $23,L.3018
+lda $16,L.2985
+lda $17,L.3020
+jsr $26,printf
+ldgp $gp,0($26)
+br L.3019
+L.3018:
+lda $16,L.2986
+ldl $17,-60+160($sp)
+lda $18,L.3020
+jsr $26,printf
+ldgp $gp,0($26)
+L.3019:
+L.3016:
+jsr $26,regi
+ldgp $gp,0($26)
+stl $0,-60+160($sp)
+ldq $27,-48+160($sp)
+ldl $27,40($27)
+cmpeq $27,$31,$23
+bne $23,L.3021
+ldl $27,-60+160($sp)
+cmplt $27,$31,$23
+beq $23,L.3023
+lda $16,L.2985
+lda $17,L.424
+jsr $26,printf
+ldgp $gp,0($26)
+br L.3024
+L.3023:
+lda $16,L.2986
+ldl $17,-60+160($sp)
+lda $18,L.424
+jsr $26,printf
+ldgp $gp,0($26)
+L.3024:
+L.3021:
+ldl $0,-96+160($sp)
+L.2982:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,160($sp)
+ret
+.end s81
+.globl regc
+.text
+.ent regc
+regc:
+ldgp $gp,0($27)
+lda $sp,-272($sp)
+.mask 0x5007e00,-216
+.frame $sp,272,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+.prologue 1
+stb $31,-190+272($sp)
+lda $27,1
+stb $27,-169+272($sp)
+lda $27,2
+stb $27,-170+272($sp)
+lda $27,3
+stb $27,-171+272($sp)
+lda $14,4
+lda $27,5
+stb $27,-172+272($sp)
+lda $13,6
+lda $27,7
+stb $27,-173+272($sp)
+lda $12,8
+lda $27,9
+stb $27,-174+272($sp)
+lda $11,10
+lda $27,11
+stb $27,-175+272($sp)
+lda $10,12
+lda $27,13
+stb $27,-176+272($sp)
+lda $9,14
+lda $27,15
+stb $27,-177+272($sp)
+lda $27,16
+stb $27,-57+272($sp)
+lda $27,17
+stb $27,-178+272($sp)
+lda $27,18
+stb $27,-58+272($sp)
+lda $27,19
+stb $27,-179+272($sp)
+lda $27,20
+stb $27,-59+272($sp)
+lda $27,21
+stb $27,-180+272($sp)
+lda $27,22
+stb $27,-60+272($sp)
+lda $27,23
+stb $27,-181+272($sp)
+lda $27,24
+stb $27,-61+272($sp)
+lda $27,25
+stb $27,-182+272($sp)
+lda $27,26
+stb $27,-62+272($sp)
+lda $27,27
+stb $27,-183+272($sp)
+lda $27,28
+stb $27,-63+272($sp)
+lda $27,29
+stb $27,-184+272($sp)
+lda $27,30
+stb $27,-64+272($sp)
+lda $27,31
+stb $27,-185+272($sp)
+lda $27,32
+stb $27,-65+272($sp)
+lda $27,33
+stb $27,-186+272($sp)
+lda $27,34
+stb $27,-66+272($sp)
+lda $27,35
+stb $27,-187+272($sp)
+lda $27,36
+stb $27,-188+272($sp)
+lda $27,37
+stb $27,-189+272($sp)
+lda $27,38
+stb $27,-191+272($sp)
+lda $27,-169+272($sp)
+lda $25,-190+272($sp)
+subq $27,$25,$25
+stl $25,-156+272($sp)
+lda $25,-170+272($sp)
+subq $25,$27,$27
+stl $27,-152+272($sp)
+lda $27,-171+272($sp)
+lda $25,-170+272($sp)
+subq $27,$25,$27
+stl $27,-148+272($sp)
+lda $27,-172+272($sp)
+lda $25,-171+272($sp)
+subq $27,$25,$27
+stl $27,-144+272($sp)
+lda $27,-173+272($sp)
+lda $25,-172+272($sp)
+subq $27,$25,$27
+stl $27,-140+272($sp)
+lda $27,-174+272($sp)
+lda $25,-173+272($sp)
+subq $27,$25,$27
+stl $27,-136+272($sp)
+lda $27,-175+272($sp)
+lda $25,-174+272($sp)
+subq $27,$25,$27
+stl $27,-132+272($sp)
+lda $27,-176+272($sp)
+lda $25,-175+272($sp)
+subq $27,$25,$27
+stl $27,-128+272($sp)
+lda $27,-177+272($sp)
+lda $25,-176+272($sp)
+subq $27,$25,$27
+stl $27,-124+272($sp)
+lda $27,-178+272($sp)
+lda $25,-177+272($sp)
+subq $27,$25,$27
+stl $27,-120+272($sp)
+lda $27,-179+272($sp)
+lda $25,-178+272($sp)
+subq $27,$25,$27
+stl $27,-116+272($sp)
+lda $27,-180+272($sp)
+lda $25,-179+272($sp)
+subq $27,$25,$27
+stl $27,-112+272($sp)
+lda $27,-181+272($sp)
+lda $25,-180+272($sp)
+subq $27,$25,$27
+stl $27,-108+272($sp)
+lda $27,-182+272($sp)
+lda $25,-181+272($sp)
+subq $27,$25,$27
+stl $27,-104+272($sp)
+lda $27,-183+272($sp)
+lda $25,-182+272($sp)
+subq $27,$25,$27
+stl $27,-100+272($sp)
+lda $27,-184+272($sp)
+lda $25,-183+272($sp)
+subq $27,$25,$27
+stl $27,-96+272($sp)
+lda $27,-185+272($sp)
+lda $25,-184+272($sp)
+subq $27,$25,$27
+stl $27,-92+272($sp)
+lda $27,-186+272($sp)
+lda $25,-185+272($sp)
+subq $27,$25,$27
+stl $27,-88+272($sp)
+lda $27,-187+272($sp)
+lda $25,-186+272($sp)
+subq $27,$25,$27
+stl $27,-84+272($sp)
+lda $27,-188+272($sp)
+lda $25,-187+272($sp)
+subq $27,$25,$27
+stl $27,-80+272($sp)
+lda $27,-189+272($sp)
+lda $25,-188+272($sp)
+subq $27,$25,$27
+stl $27,-76+272($sp)
+lda $27,-191+272($sp)
+lda $25,-189+272($sp)
+subq $27,$25,$27
+stl $27,-72+272($sp)
+ldl $27,-156+272($sp)
+stl $27,-168+272($sp)
+lda $27,1
+stl $27,-164+272($sp)
+stl $31,-160+272($sp)
+L.3047:
+ldl $27,-164+272($sp)
+cmpeq $27,1,$23
+bne $23,L.3053
+cmpeq $27,2,$23
+bne $23,L.3056
+cmpeq $27,3,$23
+bne $23,L.3061
+br L.3051
+L.3053:
+ldl $27,-160+272($sp)
+sll $27,2,$27
+lda $25,-156+272($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-168+272($sp)
+cmpeq $27,$25,$23
+bne $23,L.3052
+lda $27,2
+ldl $25,-160+272($sp)
+sll $25,2,$25
+lda $22,-156+272($sp)
+addq $25,$22,$25
+ldl $25,($25)
+stl $25,-200+272($sp)
+stl $27,-164+272($sp)
+lda $27,1
+stl $27,-196+272($sp)
+br L.3052
+L.3056:
+ldl $27,-160+272($sp)
+sll $27,2,$27
+lda $25,-156+272($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-168+272($sp)
+cmpeq $27,$25,$23
+beq $23,L.3057
+lda $27,3
+stl $27,-164+272($sp)
+br L.3052
+L.3057:
+ldl $27,-160+272($sp)
+sll $27,2,$27
+lda $25,-156+272($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-200+272($sp)
+cmpeq $27,$25,$23
+beq $23,L.3059
+ldl $27,-196+272($sp)
+lda $27,1($27)
+stl $27,-196+272($sp)
+br L.3052
+L.3059:
+lda $27,4
+stl $27,-164+272($sp)
+br L.3052
+L.3061:
+ldl $27,-160+272($sp)
+sll $27,2,$27
+lda $25,-156+272($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-168+272($sp)
+cmpeq $27,$25,$23
+bne $23,L.3052
+lda $27,4
+stl $27,-164+272($sp)
+L.3051:
+L.3052:
+L.3048:
+ldl $27,-160+272($sp)
+lda $27,1($27)
+stl $27,-160+272($sp)
+ldl $27,-160+272($sp)
+cmplt $27,22,$23
+bne $23,L.3047
+ldl $27,-164+272($sp)
+cmpeq $27,3,$23
+beq $23,L.3064
+lda $27,16
+ldl $25,-196+272($sp)
+subl $27,$25,$0
+br L.3025
+L.3064:
+lda $0,-1
+L.3025:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,272($sp)
+ret
+.end regc
+.globl regi
+.text
+.ent regi
+regi:
+ldgp $gp,0($27)
+lda $sp,-368($sp)
+.mask 0x5007e00,-312
+.frame $sp,368,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+.prologue 1
+stl $31,-284+368($sp)
+lda $27,1
+stl $27,-200+368($sp)
+lda $27,2
+stl $27,-204+368($sp)
+lda $27,3
+stl $27,-208+368($sp)
+lda $14,4
+lda $27,5
+stl $27,-212+368($sp)
+lda $13,6
+lda $27,7
+stl $27,-216+368($sp)
+lda $12,8
+lda $27,9
+stl $27,-220+368($sp)
+lda $11,10
+lda $27,11
+stl $27,-224+368($sp)
+lda $10,12
+lda $27,13
+stl $27,-228+368($sp)
+lda $9,14
+lda $27,15
+stl $27,-232+368($sp)
+lda $27,16
+stl $27,-60+368($sp)
+lda $27,17
+stl $27,-236+368($sp)
+lda $27,18
+stl $27,-64+368($sp)
+lda $27,19
+stl $27,-240+368($sp)
+lda $27,20
+stl $27,-68+368($sp)
+lda $27,21
+stl $27,-244+368($sp)
+lda $27,22
+stl $27,-72+368($sp)
+lda $27,23
+stl $27,-248+368($sp)
+lda $27,24
+stl $27,-76+368($sp)
+lda $27,25
+stl $27,-252+368($sp)
+lda $27,26
+stl $27,-80+368($sp)
+lda $27,27
+stl $27,-256+368($sp)
+lda $27,28
+stl $27,-84+368($sp)
+lda $27,29
+stl $27,-260+368($sp)
+lda $27,30
+stl $27,-88+368($sp)
+lda $27,31
+stl $27,-264+368($sp)
+lda $27,32
+stl $27,-92+368($sp)
+lda $27,33
+stl $27,-268+368($sp)
+lda $27,34
+stl $27,-96+368($sp)
+lda $27,35
+stl $27,-272+368($sp)
+lda $27,36
+stl $27,-276+368($sp)
+lda $27,37
+stl $27,-280+368($sp)
+lda $27,38
+stl $27,-288+368($sp)
+lda $27,-200+368($sp)
+stq $27,-304+368($sp)
+lda $25,-284+368($sp)
+subq $27,$25,$25
+divq $25,4,$25
+mov $25,$27
+stl $27,-184+368($sp)
+lda $27,-204+368($sp)
+ldq $25,-304+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-180+368($sp)
+lda $27,-208+368($sp)
+lda $25,-204+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-176+368($sp)
+lda $27,-212+368($sp)
+lda $25,-208+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-172+368($sp)
+lda $27,-216+368($sp)
+lda $25,-212+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-168+368($sp)
+lda $27,-220+368($sp)
+lda $25,-216+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-164+368($sp)
+lda $27,-224+368($sp)
+lda $25,-220+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-160+368($sp)
+lda $27,-228+368($sp)
+lda $25,-224+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-156+368($sp)
+lda $27,-232+368($sp)
+lda $25,-228+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-152+368($sp)
+lda $27,-236+368($sp)
+lda $25,-232+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-148+368($sp)
+lda $27,-240+368($sp)
+lda $25,-236+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-144+368($sp)
+lda $27,-244+368($sp)
+lda $25,-240+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-140+368($sp)
+lda $27,-248+368($sp)
+lda $25,-244+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-136+368($sp)
+lda $27,-252+368($sp)
+lda $25,-248+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-132+368($sp)
+lda $27,-256+368($sp)
+lda $25,-252+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-128+368($sp)
+lda $27,-260+368($sp)
+lda $25,-256+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-124+368($sp)
+lda $27,-264+368($sp)
+lda $25,-260+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-120+368($sp)
+lda $27,-268+368($sp)
+lda $25,-264+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-116+368($sp)
+lda $27,-272+368($sp)
+lda $25,-268+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-112+368($sp)
+lda $27,-276+368($sp)
+lda $25,-272+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-108+368($sp)
+lda $27,-280+368($sp)
+lda $25,-276+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-104+368($sp)
+lda $27,-288+368($sp)
+lda $25,-280+368($sp)
+subq $27,$25,$27
+divq $27,4,$27
+stl $27,-100+368($sp)
+ldl $27,-184+368($sp)
+stl $27,-196+368($sp)
+lda $27,1
+stl $27,-192+368($sp)
+stl $31,-188+368($sp)
+L.3088:
+ldl $27,-192+368($sp)
+cmpeq $27,1,$23
+bne $23,L.3094
+cmpeq $27,2,$23
+bne $23,L.3097
+cmpeq $27,3,$23
+bne $23,L.3102
+br L.3092
+L.3094:
+ldl $27,-188+368($sp)
+sll $27,2,$27
+lda $25,-184+368($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-196+368($sp)
+cmpeq $27,$25,$23
+bne $23,L.3093
+lda $27,2
+ldl $25,-188+368($sp)
+sll $25,2,$25
+lda $22,-184+368($sp)
+addq $25,$22,$25
+ldl $25,($25)
+stl $25,-296+368($sp)
+stl $27,-192+368($sp)
+lda $27,1
+stl $27,-292+368($sp)
+br L.3093
+L.3097:
+ldl $27,-188+368($sp)
+sll $27,2,$27
+lda $25,-184+368($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-196+368($sp)
+cmpeq $27,$25,$23
+beq $23,L.3098
+lda $27,3
+stl $27,-192+368($sp)
+br L.3093
+L.3098:
+ldl $27,-188+368($sp)
+sll $27,2,$27
+lda $25,-184+368($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-296+368($sp)
+cmpeq $27,$25,$23
+beq $23,L.3100
+ldl $27,-292+368($sp)
+lda $27,1($27)
+stl $27,-292+368($sp)
+br L.3093
+L.3100:
+lda $27,4
+stl $27,-192+368($sp)
+br L.3093
+L.3102:
+ldl $27,-188+368($sp)
+sll $27,2,$27
+lda $25,-184+368($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-196+368($sp)
+cmpeq $27,$25,$23
+bne $23,L.3093
+lda $27,4
+stl $27,-192+368($sp)
+L.3092:
+L.3093:
+L.3089:
+ldl $27,-188+368($sp)
+lda $27,1($27)
+stl $27,-188+368($sp)
+ldl $27,-188+368($sp)
+cmplt $27,22,$23
+bne $23,L.3088
+ldl $27,-192+368($sp)
+cmpeq $27,3,$23
+beq $23,L.3105
+lda $27,16
+ldl $25,-292+368($sp)
+subl $27,$25,$0
+br L.3066
+L.3105:
+lda $0,-1
+L.3066:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,368($sp)
+ret
+.end regi
+.globl regp
+.text
+.ent regp
+regp:
+ldgp $gp,0($27)
+lda $sp,-512($sp)
+.mask 0x5007e00,-456
+.frame $sp,512,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+.prologue 1
+lda $27,-416+512($sp)
+stq $27,-416+512($sp)
+lda $27,-368+512($sp)
+stq $27,-368+512($sp)
+lda $27,-376+512($sp)
+stq $27,-376+512($sp)
+lda $27,-384+512($sp)
+stq $27,-384+512($sp)
+lda $14,-240+512($sp)
+lda $27,-240+512($sp)
+stq $27,-240+512($sp)
+lda $13,-248+512($sp)
+lda $27,-248+512($sp)
+stq $27,-248+512($sp)
+lda $12,-256+512($sp)
+lda $27,-256+512($sp)
+stq $27,-256+512($sp)
+lda $11,-264+512($sp)
+lda $27,-264+512($sp)
+stq $27,-264+512($sp)
+lda $10,-272+512($sp)
+lda $27,-272+512($sp)
+stq $27,-272+512($sp)
+lda $9,-280+512($sp)
+lda $27,-280+512($sp)
+stq $27,-280+512($sp)
+lda $27,-288+512($sp)
+stq $27,-64+512($sp)
+lda $27,-288+512($sp)
+stq $27,-288+512($sp)
+lda $27,-296+512($sp)
+stq $27,-72+512($sp)
+lda $27,-296+512($sp)
+stq $27,-296+512($sp)
+lda $27,-304+512($sp)
+stq $27,-80+512($sp)
+lda $27,-304+512($sp)
+stq $27,-304+512($sp)
+lda $27,-312+512($sp)
+stq $27,-88+512($sp)
+lda $27,-312+512($sp)
+stq $27,-312+512($sp)
+lda $27,-320+512($sp)
+stq $27,-96+512($sp)
+lda $27,-320+512($sp)
+stq $27,-320+512($sp)
+lda $27,-328+512($sp)
+stq $27,-104+512($sp)
+lda $27,-328+512($sp)
+stq $27,-328+512($sp)
+lda $27,-336+512($sp)
+stq $27,-112+512($sp)
+lda $27,-336+512($sp)
+stq $27,-336+512($sp)
+lda $27,-344+512($sp)
+stq $27,-120+512($sp)
+lda $27,-344+512($sp)
+stq $27,-344+512($sp)
+lda $27,-352+512($sp)
+stq $27,-128+512($sp)
+lda $27,-352+512($sp)
+stq $27,-352+512($sp)
+lda $27,-360+512($sp)
+stq $27,-136+512($sp)
+lda $27,-360+512($sp)
+stq $27,-360+512($sp)
+lda $27,-392+512($sp)
+stq $27,-392+512($sp)
+lda $27,-400+512($sp)
+stq $27,-400+512($sp)
+lda $27,-424+512($sp)
+stq $27,-424+512($sp)
+lda $27,-368+512($sp)
+stq $27,-440+512($sp)
+lda $25,-416+512($sp)
+subq $27,$25,$25
+divq $25,8,$25
+mov $25,$27
+stl $27,-224+512($sp)
+lda $27,-376+512($sp)
+ldq $25,-440+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-220+512($sp)
+lda $27,-384+512($sp)
+lda $25,-376+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-216+512($sp)
+lda $27,-240+512($sp)
+lda $25,-384+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-212+512($sp)
+lda $27,-248+512($sp)
+lda $25,-240+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-208+512($sp)
+lda $27,-256+512($sp)
+lda $25,-248+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-204+512($sp)
+lda $27,-264+512($sp)
+lda $25,-256+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-200+512($sp)
+lda $27,-272+512($sp)
+lda $25,-264+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-196+512($sp)
+lda $27,-280+512($sp)
+lda $25,-272+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-192+512($sp)
+lda $27,-288+512($sp)
+lda $25,-280+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-188+512($sp)
+lda $27,-296+512($sp)
+lda $25,-288+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-184+512($sp)
+lda $27,-304+512($sp)
+lda $25,-296+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-180+512($sp)
+lda $27,-312+512($sp)
+lda $25,-304+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-176+512($sp)
+lda $27,-320+512($sp)
+lda $25,-312+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-172+512($sp)
+lda $27,-328+512($sp)
+lda $25,-320+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-168+512($sp)
+lda $27,-336+512($sp)
+lda $25,-328+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-164+512($sp)
+lda $27,-344+512($sp)
+lda $25,-336+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-160+512($sp)
+lda $27,-352+512($sp)
+lda $25,-344+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-156+512($sp)
+lda $27,-360+512($sp)
+lda $25,-352+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-152+512($sp)
+lda $27,-392+512($sp)
+lda $25,-360+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-148+512($sp)
+lda $27,-400+512($sp)
+lda $25,-392+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-144+512($sp)
+lda $27,-424+512($sp)
+lda $25,-400+512($sp)
+subq $27,$25,$27
+divq $27,8,$27
+stl $27,-140+512($sp)
+ldl $27,-224+512($sp)
+stl $27,-404+512($sp)
+lda $27,1
+stl $27,-232+512($sp)
+stl $31,-228+512($sp)
+L.3129:
+ldl $27,-232+512($sp)
+cmpeq $27,1,$23
+bne $23,L.3135
+cmpeq $27,2,$23
+bne $23,L.3138
+cmpeq $27,3,$23
+bne $23,L.3143
+br L.3133
+L.3135:
+ldl $27,-228+512($sp)
+sll $27,2,$27
+lda $25,-224+512($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-404+512($sp)
+cmpeq $27,$25,$23
+bne $23,L.3134
+lda $27,2
+ldl $25,-228+512($sp)
+sll $25,2,$25
+lda $22,-224+512($sp)
+addq $25,$22,$25
+ldl $25,($25)
+stl $25,-432+512($sp)
+stl $27,-232+512($sp)
+lda $27,1
+stl $27,-428+512($sp)
+br L.3134
+L.3138:
+ldl $27,-228+512($sp)
+sll $27,2,$27
+lda $25,-224+512($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-404+512($sp)
+cmpeq $27,$25,$23
+beq $23,L.3139
+lda $27,3
+stl $27,-232+512($sp)
+br L.3134
+L.3139:
+ldl $27,-228+512($sp)
+sll $27,2,$27
+lda $25,-224+512($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-432+512($sp)
+cmpeq $27,$25,$23
+beq $23,L.3141
+ldl $27,-428+512($sp)
+lda $27,1($27)
+stl $27,-428+512($sp)
+br L.3134
+L.3141:
+lda $27,4
+stl $27,-232+512($sp)
+br L.3134
+L.3143:
+ldl $27,-228+512($sp)
+sll $27,2,$27
+lda $25,-224+512($sp)
+addq $27,$25,$27
+ldl $27,($27)
+ldl $25,-404+512($sp)
+cmpeq $27,$25,$23
+bne $23,L.3134
+lda $27,4
+stl $27,-232+512($sp)
+L.3133:
+L.3134:
+L.3130:
+ldl $27,-228+512($sp)
+lda $27,1($27)
+stl $27,-228+512($sp)
+ldl $27,-228+512($sp)
+cmplt $27,22,$23
+bne $23,L.3129
+ldl $27,-232+512($sp)
+cmpeq $27,3,$23
+beq $23,L.3146
+lda $27,16
+ldl $25,-428+512($sp)
+subl $27,$25,$0
+br L.3107
+L.3146:
+lda $0,-1
+L.3107:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,512($sp)
+ret
+.end regp
+.lcomm L.3149,420
+.sdata
+.align 0
+L.3150:
+.byte 115
+.byte 56
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.3151:
+.byte 115
+.byte 56
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s84
+.text
+.text
+.ent s84
+s84:
+ldgp $gp,0($27)
+lda $sp,-368($sp)
+.fmask 0x200,-368
+.mask 0x5007e00,-304
+.frame $sp,368,$26,48
+stt $f9,0($sp)
+stq $9,8($sp)
+stq $10,16($sp)
+stq $11,24($sp)
+stq $12,32($sp)
+stq $13,40($sp)
+stq $14,48($sp)
+stq $24,56($sp)
+stq $26,64($sp)
+mov $16,$14
+.prologue 1
+lda $10,L.3151
+lda $9,60($14)
+stl $31,-268+368($sp)
+L.3152:
+L.3153:
+mov $9,$27
+lda $9,1($27)
+mov $10,$25
+lda $10,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.3152
+lda $16,3
+jsr $26,fip
+ldgp $gp,0($26)
+stq $0,-280+368($sp)
+ldq $27,-280+368($sp)
+ldl $27,($27)
+cmpeq $27,3,$23
+bne $23,L.3155
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.3157
+lda $16,L.3150
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.3157:
+ldl $27,-268+368($sp)
+lda $27,1($27)
+stl $27,-268+368($sp)
+L.3155:
+lda $27,glork
+stq $27,-288+368($sp)
+lda $16,4
+ldq $27,-288+368($sp)
+jsr $26,($27)
+ldgp $gp,0($26)
+cmpeq $0,4,$23
+bne $23,L.3159
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.3161
+lda $16,L.3150
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.3161:
+ldl $27,-268+368($sp)
+lda $27,2($27)
+stl $27,-268+368($sp)
+L.3159:
+mov $31,$12
+L.3163:
+sll $12,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lda $25,-124+368($sp)
+addq $27,$25,$27
+stq $12,-56+368($sp)
+ldt $f30,-56+368($sp)
+cvtqs $f30,$f30
+sts $f30,($27)
+sll $12,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$25
+lda $22,-264+368($sp)
+addq $25,$22,$25
+sll $27,2,$27
+lda $22,-124+368($sp)
+addq $27,$22,$27
+stq $27,($25)
+L.3164:
+lda $12,1($12)
+cmplt $12,17,$23
+bne $23,L.3163
+lds $f9,L.410
+mov $31,$12
+L.3167:
+sll $12,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+lda $25,-264+368($sp)
+addq $27,$25,$27
+ldq $27,($27)
+lds $f30,($27)
+adds $f9,$f30,$f9
+L.3168:
+lda $12,1($12)
+cmplt $12,17,$23
+bne $23,L.3167
+lds $f30,L.3173
+cmpteq $f9,$f30,$f1
+fbne $f1,L.3171
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.3174
+lda $16,L.3150
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.3174:
+ldl $27,-268+368($sp)
+lda $27,4($27)
+stl $27,-268+368($sp)
+L.3171:
+mov $31,$11
+L.3176:
+mov $31,$12
+L.3180:
+mov $31,$13
+L.3184:
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lda $25,28
+sll $12,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $22,140
+sll $11,8*(8-4),$8
+sra $8,8*(8-4),$8
+mulq $22,$8,$22
+lda $22,L.3149($22)
+addq $25,$22,$25
+addq $27,$25,$27
+lda $25,35
+mull $25,$11,$25
+lda $22,7
+mull $22,$12,$22
+addl $25,$22,$25
+addl $25,$13,$25
+stl $25,($27)
+L.3185:
+lda $13,1($13)
+cmplt $13,7,$23
+bne $23,L.3184
+L.3181:
+lda $12,1($12)
+cmplt $12,5,$23
+bne $23,L.3180
+L.3177:
+lda $11,1($11)
+cmplt $11,3,$23
+bne $23,L.3176
+lda $11,1
+lda $12,2
+lda $13,3
+lda $16,L.3149
+lda $17,105
+mov $31,$18
+jsr $26,array
+ldgp $gp,0($26)
+mov $0,$27
+stl $27,-292+368($sp)
+lda $25,140
+sll $11,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $16,L.3149($25)
+lda $25,35
+mov $25,$17
+mov $25,$18
+jsr $26,array
+ldgp $gp,0($26)
+mov $0,$27
+stl $27,-296+368($sp)
+lda $25,28
+sll $12,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $22,140
+sll $11,8*(8-4),$8
+sra $8,8*(8-4),$8
+mulq $22,$8,$22
+lda $22,L.3149($22)
+addq $25,$22,$16
+lda $17,7
+lda $18,49
+jsr $26,array
+ldgp $gp,0($26)
+ldl $25,-292+368($sp)
+ldl $22,-296+368($sp)
+addl $25,$22,$25
+addl $25,$0,$27
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+lda $22,28
+sll $12,8*(8-4),$8
+sra $8,8*(8-4),$8
+mulq $22,$8,$22
+lda $8,140
+sll $11,8*(8-4),$7
+sra $7,8*(8-4),$7
+mulq $8,$7,$8
+lda $8,L.3149($8)
+addq $22,$8,$22
+addq $25,$22,$25
+ldl $25,($25)
+addl $27,$25,$27
+subl $27,52,$27
+cmpeq $27,$31,$23
+bne $23,L.3188
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.3190
+lda $16,L.3150
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.3190:
+ldl $27,-268+368($sp)
+lda $27,8($27)
+stl $27,-268+368($sp)
+L.3188:
+ldl $0,-268+368($sp)
+L.3148:
+ldt $f9,0($sp)
+ldq $9,8($sp)
+ldq $10,16($sp)
+ldq $11,24($sp)
+ldq $12,32($sp)
+ldq $13,40($sp)
+ldq $14,48($sp)
+ldq $24,56($sp)
+ldq $26,64($sp)
+lda $sp,368($sp)
+ret
+.end s84
+.globl array
+.text
+.ent array
+array:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+mov $31,$14
+br L.3196
+L.3193:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$16,$27
+ldl $27,($27)
+addl $14,$18,$25
+cmpeq $27,$25,$23
+bne $23,L.3197
+lda $0,1
+br L.3192
+L.3197:
+L.3194:
+lda $14,1($14)
+L.3196:
+cmplt $14,$17,$23
+bne $23,L.3193
+mov $31,$0
+L.3192:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end array
+.lcomm L.3200,4
+.globl fip
+.text
+.text
+.ent fip
+fip:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+lda $27,L.3200
+stl $16,L.3200
+mov $27,$0
+L.3199:
+lda $sp,64($sp)
+ret
+.end fip
+.globl glork
+.text
+.ent glork
+glork:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+mov $16,$0
+L.3201:
+lda $sp,64($sp)
+ret
+.end glork
+.sdata
+.align 0
+L.3203:
+.byte 115
+.byte 56
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.3204:
+.byte 115
+.byte 56
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 3
+L.3212:
+.quad L.423
+.quad L.425
+.quad L.424
+.quad L.426
+.quad L.427
+.quad L.428
+.quad L.429
+.align 0
+L.3213:
+.byte 32
+.byte 97
+.byte 108
+.byte 105
+.byte 103
+.byte 110
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 58
+.byte 32
+.byte 0
+.globl s85
+.text
+.text
+.ent s85
+s85:
+ldgp $gp,0($27)
+lda $sp,-528($sp)
+.mask 0x5007c00,-480
+.frame $sp,528,$26,48
+stq $10,0($sp)
+stq $11,8($sp)
+stq $12,16($sp)
+stq $13,24($sp)
+stq $14,32($sp)
+stq $24,40($sp)
+stq $26,48($sp)
+mov $16,$14
+.prologue 1
+lda $12,L.3204
+lda $11,60($14)
+mov $31,$10
+L.3217:
+L.3218:
+mov $11,$27
+lda $11,1($27)
+mov $12,$25
+lda $12,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.3217
+lda $25,-348+528($sp)
+lda $22,-368+528($sp)
+subq $25,$22,$25
+cmple $25,$31,$23
+bne $23,L.3228
+lda $25,-344+528($sp)
+lda $22,-348+528($sp)
+subq $25,$22,$25
+cmple $25,$31,$23
+bne $23,L.3228
+lda $25,-336+528($sp)
+lda $22,-344+528($sp)
+subq $25,$22,$25
+cmple $25,$31,$23
+beq $23,L.3220
+L.3228:
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.3229
+lda $16,L.3203
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.3229:
+lda $10,1($10)
+L.3220:
+lda $27,-409+528($sp)
+lda $25,-410+528($sp)
+subq $27,$25,$27
+stl $27,-324+528($sp)
+lda $27,-412+528($sp)
+lda $25,-414+528($sp)
+subq $27,$25,$27
+stl $27,-320+528($sp)
+lda $27,-420+528($sp)
+lda $25,-424+528($sp)
+subq $27,$25,$27
+stl $27,-316+528($sp)
+lda $27,-432+528($sp)
+lda $25,-440+528($sp)
+subq $27,$25,$27
+stl $27,-312+528($sp)
+lda $27,-444+528($sp)
+lda $25,-448+528($sp)
+subq $27,$25,$27
+stl $27,-308+528($sp)
+lda $27,-452+528($sp)
+lda $25,-456+528($sp)
+subq $27,$25,$27
+stl $27,-304+528($sp)
+lda $27,-464+528($sp)
+lda $25,-472+528($sp)
+subq $27,$25,$27
+stl $27,-300+528($sp)
+ldl $27,40($14)
+cmpeq $27,$31,$23
+bne $23,L.3244
+mov $31,$13
+L.3246:
+lda $16,L.3250
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$25
+ldq $17,L.3212($25)
+lda $18,L.3213
+sll $27,2,$27
+lda $25,-324+528($sp)
+addq $27,$25,$27
+ldl $19,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.3247:
+lda $13,1($13)
+cmplt $13,7,$23
+bne $23,L.3246
+L.3244:
+ldl $27,-328+528($sp)
+or $27,56,$27
+stl $27,-328+528($sp)
+ldl $27,-328+528($sp)
+mov $27,$25
+and $25,0xfffffffc,$25
+sll $27,26,$27
+addl $27,0,$27
+sra $27,29,$27
+addl $27,0,$27
+sll $27,30,$27
+addl $27,0,$27
+sra $27,30,$27
+addl $27,0,$27
+and $27,3,$27
+or $25,$27,$27
+stl $27,-328+528($sp)
+ldl $27,-328+528($sp)
+mov $27,$25
+and $25,0xffffffc7,$25
+sll $27,30,$27
+addl $27,0,$27
+sra $27,30,$27
+addl $27,0,$27
+sll $27,29,$27
+addl $27,0,$27
+sra $27,29,$27
+addl $27,0,$27
+sll $27,3,$27
+zap $27,240,$27
+and $27,56,$27
+or $25,$27,$27
+stl $27,-328+528($sp)
+ldl $27,-328+528($sp)
+sll $27,26,$27
+addl $27,0,$27
+sra $27,29,$27
+addl $27,0,$27
+cmpeq $27,3,$23
+bne $23,L.3251
+ldl $27,-328+528($sp)
+sll $27,26,$27
+addl $27,0,$27
+sra $27,29,$27
+addl $27,0,$27
+lda $25,-1
+cmpeq $27,$25,$23
+beq $23,L.3253
+ldl $27,40($14)
+cmpeq $27,$31,$23
+bne $23,L.3254
+lda $16,L.3257
+jsr $26,printf
+ldgp $gp,0($26)
+br L.3254
+L.3253:
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.3258
+lda $16,L.3203
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.3258:
+lda $10,2($10)
+L.3254:
+L.3251:
+ldl $27,-328+528($sp)
+or $27,64,$27
+stl $27,-328+528($sp)
+ldl $27,-328+528($sp)
+sll $27,25,$27
+addl $27,0,$27
+sra $27,31,$27
+addl $27,0,$27
+cmpeq $27,1,$23
+bne $23,L.3260
+ldl $27,40($14)
+cmpeq $27,$31,$23
+bne $23,L.3262
+lda $16,L.3264
+jsr $26,printf
+ldgp $gp,0($26)
+L.3262:
+L.3260:
+lda $27,-296+528($sp)
+subq $27,$27,$27
+cmpeq $27,$31,$23
+beq $23,L.3272
+cmpeq $27,$31,$23
+beq $23,L.3272
+cmpeq $27,$31,$23
+beq $23,L.3272
+cmpeq $27,$31,$23
+beq $23,L.3272
+cmpeq $27,$31,$23
+beq $23,L.3272
+cmpeq $27,$31,$23
+beq $23,L.3272
+cmpeq $27,$31,$23
+bne $23,L.3265
+L.3272:
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.3273
+lda $16,L.3203
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.3273:
+lda $10,4($10)
+L.3265:
+br L.3275
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.3277
+lda $16,L.3203
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.3277:
+lda $10,8($10)
+L.3275:
+lda $27,-408+528($sp)
+stq $27,-336+528($sp)
+lda $27,2
+stb $27,-408+528($sp)
+ldq $27,-336+528($sp)
+ldb $25,($27)
+lda $25,1($25)
+stb $25,($27)
+lda $27,-408+528($sp)
+ldb $27,($27)
+cmpeq $27,3,$23
+bne $23,L.3281
+ldl $27,44($14)
+cmpeq $27,$31,$23
+bne $23,L.3283
+lda $16,L.3203
+lda $17,16
+jsr $26,printf
+ldgp $gp,0($26)
+L.3283:
+lda $10,16($10)
+L.3281:
+mov $10,$0
+L.3202:
+ldq $10,0($sp)
+ldq $11,8($sp)
+ldq $12,16($sp)
+ldq $13,24($sp)
+ldq $14,32($sp)
+ldq $24,40($sp)
+ldq $26,48($sp)
+lda $sp,528($sp)
+ret
+.end s85
+.sdata
+.align 0
+L.3286:
+.byte 115
+.byte 56
+.byte 54
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.3287:
+.byte 115
+.byte 56
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 2
+L.3288:
+.long 0x1
+.long 0x3
+.long 0x5
+.align 3
+L.3289:
+.quad L.3288+8
+.lcomm L.3291,40
+.sdata
+.align 2
+L.3292:
+.long 0x3f800000
+.long 0x40400000
+.long 0x40a00000
+.long 0x40000000
+.long 0x40800000
+.long 0x40c00000
+.long 0x40400000
+.long 0x40a00000
+.long 0x40e00000
+.long 0x0
+.long 0x0
+.long 0x0
+.align 2
+L.3293:
+.long 0x3f800000
+.long 0x40400000
+.long 0x40a00000
+.long 0x40000000
+.long 0x40800000
+.long 0x40c00000
+.long 0x40400000
+.long 0x40a00000
+.long 0x40e00000
+.space 12
+.align 2
+L.3294:
+.long 0x3f800000
+.long 0x40400000
+.long 0x40a00000
+.long 0x40000000
+.long 0x40800000
+.long 0x40c00000
+.long 0x40400000
+.long 0x40a00000
+.long 0x40e00000
+.space 12
+.align 2
+L.3295:
+.long 0x3f800000
+.space 8
+.long 0x40000000
+.space 8
+.long 0x40400000
+.space 8
+.long 0x40800000
+.space 8
+.globl s86
+.text
+.text
+.ent s86
+s86:
+ldgp $gp,0($27)
+lda $sp,-144($sp)
+.mask 0x5007e00,-88
+.frame $sp,144,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+stq $16,96($sp)
+.prologue 1
+ldq $27,L.3289
+lda $27,-4($27)
+stq $27,-80+144($sp)
+jsr $26,one
+ldgp $gp,0($26)
+sll $0,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+ldq $25,-80+144($sp)
+addq $27,$25,$14
+lda $9,L.3287
+ldq $27,-48+144($sp)
+lda $27,60($27)
+stq $27,-64+144($sp)
+stl $31,-68+144($sp)
+L.3296:
+L.3297:
+ldq $27,-64+144($sp)
+lda $25,1($27)
+stq $25,-64+144($sp)
+mov $9,$25
+lda $9,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.3296
+ldq $27,L.3289
+ldl $27,($27)
+cmpeq $27,5,$23
+bne $23,L.3299
+ldq $27,-48+144($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3301
+lda $16,L.3286
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.3301:
+ldl $27,-68+144($sp)
+lda $27,1($27)
+stl $27,-68+144($sp)
+L.3299:
+ldq $27,-80+144($sp)
+ldl $27,($27)
+cmpeq $27,3,$23
+bne $23,L.3303
+ldq $27,-48+144($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3305
+lda $16,L.3286
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.3305:
+ldl $27,-68+144($sp)
+lda $27,2($27)
+stl $27,-68+144($sp)
+L.3303:
+ldl $27,($14)
+cmpeq $27,5,$23
+bne $23,L.3307
+ldq $27,-48+144($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3309
+lda $16,L.3286
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.3309:
+ldl $27,-68+144($sp)
+lda $27,4($27)
+stl $27,-68+144($sp)
+L.3307:
+mov $31,$10
+mov $31,$13
+L.3311:
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+ldl $27,L.3291($27)
+cmpeq $27,$31,$23
+bne $23,L.3315
+lda $10,1
+L.3315:
+L.3312:
+lda $13,1($13)
+cmplt $13,10,$23
+bne $23,L.3311
+cmpeq $10,$31,$23
+bne $23,L.3317
+ldq $27,-48+144($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3319
+lda $16,L.3286
+lda $17,8
+jsr $26,printf
+ldgp $gp,0($26)
+L.3319:
+ldl $27,-68+144($sp)
+lda $27,8($27)
+stl $27,-68+144($sp)
+L.3317:
+mov $31,$10
+mov $31,$12
+L.3321:
+mov $31,$13
+L.3325:
+lda $27,3
+mull $27,$12,$27
+addl $27,$13,$11
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lda $25,12
+sll $12,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $22,L.3293($25)
+addq $27,$22,$22
+lds $f30,($22)
+lda $25,L.3294($25)
+addq $27,$25,$27
+lds $f29,($27)
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.3331
+sll $11,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lds $f29,L.3292($27)
+cmpteq $f30,$f29,$f1
+fbne $f1,L.3329
+L.3331:
+lda $10,1
+L.3329:
+L.3326:
+lda $13,1($13)
+cmplt $13,3,$23
+bne $23,L.3325
+L.3322:
+lda $12,1($12)
+cmplt $12,4,$23
+bne $23,L.3321
+cmpeq $10,$31,$23
+bne $23,L.3332
+ldq $27,-48+144($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3334
+lda $16,L.3286
+lda $17,16
+jsr $26,printf
+ldgp $gp,0($26)
+L.3334:
+ldl $27,-68+144($sp)
+lda $27,16($27)
+stl $27,-68+144($sp)
+L.3332:
+mov $31,$10
+mov $31,$13
+L.3336:
+lda $27,12
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+mulq $27,$25,$27
+lds $f30,L.3295($27)
+lda $27,1($13)
+stq $27,-56+144($sp)
+ldt $f29,-56+144($sp)
+cvtqs $f29,$f29
+cmpteq $f30,$f29,$f1
+fbne $f1,L.3340
+lda $10,1
+L.3340:
+L.3337:
+lda $13,1($13)
+cmplt $13,4,$23
+bne $23,L.3336
+cmpeq $10,$31,$23
+bne $23,L.3342
+ldq $27,-48+144($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3344
+lda $16,L.3286
+lda $17,32
+jsr $26,printf
+ldgp $gp,0($26)
+L.3344:
+ldl $27,-68+144($sp)
+lda $27,32($27)
+stl $27,-68+144($sp)
+L.3342:
+ldl $0,-68+144($sp)
+L.3285:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,144($sp)
+ret
+.end s86
+.globl one
+.text
+.ent one
+one:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+lda $0,1
+L.3346:
+lda $sp,64($sp)
+ret
+.end one
+.sdata
+.align 0
+L.3348:
+.byte 115
+.byte 56
+.byte 56
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.3349:
+.byte 115
+.byte 56
+.byte 56
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s88
+.text
+.text
+.ent s88
+s88:
+ldgp $gp,0($27)
+lda $sp,-128($sp)
+.mask 0x5007800,-88
+.frame $sp,128,$26,48
+stq $11,0($sp)
+stq $12,8($sp)
+stq $13,16($sp)
+stq $14,24($sp)
+stq $24,32($sp)
+stq $26,40($sp)
+stq $16,80($sp)
+.prologue 1
+lda $14,L.3349
+ldq $27,-48+128($sp)
+lda $13,60($27)
+mov $31,$12
+L.3351:
+L.3352:
+mov $13,$27
+lda $13,1($27)
+mov $14,$25
+lda $14,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.3351
+br L.3354
+ldq $27,-48+128($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3356
+lda $16,L.3348
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.3356:
+lda $12,1($12)
+L.3354:
+lda $27,-76+128($sp)
+stq $27,metricp
+lda $27,2
+stl $27,-76+128($sp)
+ldq $27,metricp
+lda $25,3
+stl $25,($27)
+ldl $27,-76+128($sp)
+cmpeq $27,3,$23
+bne $23,L.3358
+ldq $27,-48+128($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3360
+lda $16,L.3348
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.3360:
+lda $12,2($12)
+L.3358:
+ldt $f30,L.417
+stt $f30,-72+128($sp)
+stt $f30,-64+128($sp)
+lda $11,-72+128($sp)
+ldt $f30,L.416
+stt $f30,($11)
+ldt $f30,L.416
+stt $f30,8($11)
+ldt $f30,-72+128($sp)
+ldt $f29,-64+128($sp)
+addt $f30,$f29,$f30
+ldt $f29,L.414
+cmpteq $f30,$f29,$f1
+fbne $f1,L.3363
+ldq $27,-48+128($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3366
+lda $16,L.3348
+lda $17,4
+jsr $26,printf
+ldgp $gp,0($26)
+L.3366:
+lda $12,4($12)
+L.3363:
+mov $12,$0
+L.3347:
+ldq $11,0($sp)
+ldq $12,8($sp)
+ldq $13,16($sp)
+ldq $14,24($sp)
+ldq $24,32($sp)
+ldq $26,40($sp)
+lda $sp,128($sp)
+ret
+.end s88
+.sdata
+.align 0
+L.3369:
+.byte 115
+.byte 57
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.3370:
+.byte 115
+.byte 57
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s9
+.text
+.text
+.ent s9
+s9:
+ldgp $gp,0($27)
+lda $sp,-144($sp)
+.mask 0x5007e00,-88
+.frame $sp,144,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+stq $16,96($sp)
+.prologue 1
+lda $12,L.3370
+ldq $27,-48+144($sp)
+lda $11,60($27)
+mov $31,$10
+L.3371:
+L.3372:
+mov $11,$27
+lda $11,1($27)
+mov $12,$25
+lda $12,1($25)
+ldb $25,($25)
+stb $25,($27)
+sll $25,8*(8-1),$27
+sra $27,8*(8-1),$27
+cmpeq $27,$31,$23
+beq $23,L.3371
+mov $31,$13
+mov $31,$14
+L.3374:
+lda $27,2
+mov $27,$9
+stl $27,-60+144($sp)
+lda $27,3
+stl $27,-64+144($sp)
+stl $27,-68+144($sp)
+ldl $27,-68+144($sp)
+cmpeq $27,3,$23
+beq $23,L.3380
+ldl $27,-64+144($sp)
+cmpeq $27,3,$23
+bne $23,L.3378
+L.3380:
+lda $13,1
+L.3378:
+ldl $27,-60+144($sp)
+cmpeq $27,2,$23
+beq $23,L.3383
+cmpeq $9,2,$23
+bne $23,L.3381
+L.3383:
+lda $13,1
+L.3381:
+L.3375:
+lda $14,1($14)
+cmplt $14,2,$23
+bne $23,L.3374
+cmpeq $13,$31,$23
+bne $23,L.3388
+ldq $27,-48+144($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3386
+lda $16,L.3369
+lda $17,1
+jsr $26,printf
+ldgp $gp,0($26)
+L.3386:
+lda $10,1($10)
+br L.3388
+ldq $27,-48+144($sp)
+ldl $27,44($27)
+cmpeq $27,$31,$23
+bne $23,L.3389
+lda $16,L.3369
+lda $17,2
+jsr $26,printf
+ldgp $gp,0($26)
+L.3389:
+lda $10,2($10)
+L.3388:
+mov $10,$0
+L.3368:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,144($sp)
+ret
+.end s9
+.globl setev
+.text
+.ent setev
+setev:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+lda $27,1066
+stl $27,extvar
+mov $31,$0
+L.3391:
+lda $sp,64($sp)
+ret
+.end setev
+.globl rfs
+.comm rfs,8
+.globl crc
+.comm crc,4
+.globl rrc
+.comm rrc,4
+.globl flgl
+.comm flgl,4
+.globl flgd
+.comm flgd,4
+.globl flgm
+.comm flgm,4
+.globl flgs
+.comm flgs,4
+.globl dprec
+.comm dprec,4
+.globl fprec
+.comm fprec,4
+.globl dbits
+.comm dbits,4
+.globl fbits
+.comm fbits,4
+.globl ubits
+.comm ubits,4
+.globl lbits
+.comm lbits,4
+.globl metricp
+.comm metricp,8
+.globl extvar
+.comm extvar,4
+.rdata
+.align 0
+L.3264:
+.byte 66
+.byte 101
+.byte 32
+.byte 101
+.byte 115
+.byte 112
+.byte 101
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 101
+.byte 102
+.byte 117
+.byte 108
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 49
+.byte 45
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 102
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.3257:
+.byte 83
+.byte 105
+.byte 103
+.byte 110
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 101
+.byte 110
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 102
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.3250:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 2
+L.3173:
+.long 0x43080000
+.align 0
+L.3020:
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.2470:
+.byte 73
+.byte 110
+.byte 99
+.byte 114
+.byte 101
+.byte 97
+.byte 115
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 97
+.byte 114
+.byte 114
+.byte 97
+.byte 121
+.byte 32
+.byte 101
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 114
+.byte 101
+.byte 97
+.byte 115
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 108
+.byte 111
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 10
+.byte 0
+.align 2
+L.2354:
+.long 0x41d00000
+.align 3
+L.2353:
+.long 0x0
+.long 0x403a0000
+.align 3
+L.1657:
+.long 0x0
+.long 0x40040000
+.align 3
+L.1482:
+.long 0x0
+.long 0x40240000
+.align 2
+L.1453:
+.long 0x41200000
+.align 3
+L.1278:
+.long 0x0
+.long 0x40080000
+.align 2
+L.1249:
+.long 0x40400000
+.align 3
+L.1074:
+.long 0x0
+.long 0x401c0000
+.align 2
+L.1045:
+.long 0x40e00000
+.align 3
+L.868:
+.long 0x0
+.long 0x40140000
+.align 2
+L.839:
+.long 0x40a00000
+.align 3
+L.834:
+.long 0x0
+.long 0x41e00000
+.align 2
+L.826:
+.long 0x4f000000
+.align 0
+L.651:
+.byte 113
+.byte 117
+.byte 101
+.byte 101
+.byte 112
+.byte 0
+.align 0
+L.637:
+.byte 10
+.byte 0
+.align 0
+L.636:
+.byte 37
+.byte 100
+.byte 0
+.align 0
+L.631:
+.byte 32
+.byte 32
+.byte 32
+.byte 107
+.byte 101
+.byte 121
+.byte 61
+.byte 0
+.align 3
+L.594:
+.long 0x0
+.long 0x40000000
+.align 3
+L.534:
+.long 0x0
+.long 0x40ce8480
+.align 3
+L.533:
+.long 0x0
+.long 0x405f4000
+.align 2
+L.532:
+.long 0x42fa0000
+.align 2
+L.527:
+.long 0x40000000
+.align 0
+L.429:
+.byte 100
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 0
+.align 0
+L.428:
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 0
+.align 0
+L.427:
+.byte 117
+.byte 110
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 0
+.align 0
+L.426:
+.byte 108
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.425:
+.byte 115
+.byte 104
+.byte 111
+.byte 114
+.byte 116
+.byte 0
+.align 0
+L.424:
+.byte 105
+.byte 110
+.byte 116
+.byte 0
+.align 0
+L.423:
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 0
+.align 3
+L.417:
+.long 0x0
+.long 0x0
+.align 3
+L.416:
+.long 0x0
+.long 0x3ff00000
+.align 3
+L.415:
+.long 0x0
+.long 0x40100000
+.align 3
+L.414:
+.long 0x0
+.long 0x40000000
+.align 2
+L.410:
+.long 0x0
+.align 2
+L.409:
+.long 0x3f800000
+.align 0
+L.388:
+.byte 113
+.byte 117
+.byte 101
+.byte 101
+.byte 112
+.byte 33
+.byte 0
+.align 0
+L.377:
+.byte 10
+.byte 9
+.byte 8
+.byte 13
+.byte 12
+.byte 92
+.byte 39
+.byte 0
+.align 0
+L.373:
+.byte 46
+.byte 34
+.byte 46
+.byte 0
+.align 0
+L.360:
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 3
+L.332:
+.long 0x0
+.long 0x40938800
+.align 0
+L.198:
+.byte 32
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 108
+.byte 111
+.byte 110
+.byte 103
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.197:
+.byte 68
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 99
+.byte 116
+.byte 97
+.byte 108
+.byte 47
+.byte 104
+.byte 101
+.byte 120
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 116
+.byte 97
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 109
+.byte 101
+.byte 115
+.byte 32
+.byte 103
+.byte 105
+.byte 118
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.27:
+.byte 10
+.byte 70
+.byte 97
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.26:
+.byte 10
+.byte 78
+.byte 111
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 100
+.byte 101
+.byte 116
+.byte 101
+.byte 99
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.20:
+.byte 83
+.byte 101
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 116
+.byte 117
+.byte 114
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
diff --git a/lcc/alpha/osf/tst/cvt.1bk b/lcc/alpha/osf/tst/cvt.1bk
index 74c79f1..b28b302 100755
--- a/lcc/alpha/osf/tst/cvt.1bk
+++ b/lcc/alpha/osf/tst/cvt.1bk
@@ -1,11 +1,11 @@
-1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
-2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
-3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
-4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
-5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
-6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
-7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
-8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
-9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
-10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
-11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
+1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
+2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
+3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
+4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
+5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
+6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
+7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
+8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
+9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
+10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
+11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
diff --git a/lcc/alpha/osf/tst/cvt.2bk b/lcc/alpha/osf/tst/cvt.2bk
index b3ab360..241527d 100755
--- a/lcc/alpha/osf/tst/cvt.2bk
+++ b/lcc/alpha/osf/tst/cvt.2bk
@@ -1,2 +1,2 @@
-tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
-tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
+tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
+tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
diff --git a/lcc/alpha/osf/tst/cvt.sbk b/lcc/alpha/osf/tst/cvt.sbk
index d81c370..f93ef64 100755
--- a/lcc/alpha/osf/tst/cvt.sbk
+++ b/lcc/alpha/osf/tst/cvt.sbk
@@ -1,744 +1,744 @@
-.globl print
-.text
-.text
-.ent print
-print:
-ldgp $gp,0($27)
-lda $sp,-112($sp)
-.mask 0x4000000,-64
-.frame $sp,112,$26,48
-stq $26,48($sp)
-.prologue 1
-lda $16,L.2
-lda $27,c
-ldb $17,($27)
-lda $27,s
-ldw $18,($27)
-ldl $19,i
-ldq $20,l
-lda $27,C
-ldbu $21,($27)
-lda $27,S
-ldwu $27,($27)
-stq $27,0($sp)
-ldl $27,I
-zap $27,240,$27
-stq $27,8($sp)
-ldq $27,L
-stq $27,16($sp)
-lds $f30,f
-cvtst $f30,$f30
-stt $f30,24($sp)
-ldt $f30,d
-stt $f30,32($sp)
-ldt $f30,D
-stt $f30,40($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-L.1:
-ldq $26,48($sp)
-lda $sp,112($sp)
-ret
-.end print
-.globl main
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-160($sp)
-.mask 0x5007e00,-104
-.frame $sp,160,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-.prologue 1
-lda $27,c
-lda $25,1
-stb $25,c
-ldb $27,($27)
-mov $27,$25
-stw $25,s
-stl $27,i
-sll $27,8*(8-4),$25
-sra $25,8*(8-4),$25
-stq $25,l
-mov $27,$25
-mov $25,$22
-stb $22,C
-mov $25,$22
-stw $22,S
-stl $25,I
-mov $27,$25
-stq $25,L
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqs $f30,$f30
-sts $f30,f
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqt $f30,$f30
-stt $f30,d
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-lda $27,s
-lda $25,2
-stw $25,s
-ldw $27,($27)
-mov $27,$25
-stb $25,c
-stl $27,i
-sll $27,8*(8-4),$25
-sra $25,8*(8-4),$25
-stq $25,l
-mov $27,$25
-mov $25,$22
-stb $22,C
-mov $25,$22
-stw $22,S
-stl $25,I
-mov $27,$25
-stq $25,L
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqs $f30,$f30
-sts $f30,f
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqt $f30,$f30
-stt $f30,d
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-lda $27,3
-stl $27,i
-ldl $27,i
-mov $27,$25
-stb $25,c
-mov $27,$25
-stw $25,s
-sll $27,8*(8-4),$25
-sra $25,8*(8-4),$25
-stq $25,l
-mov $27,$25
-mov $25,$22
-stb $22,C
-mov $25,$22
-stw $22,S
-stl $25,I
-mov $27,$25
-stq $25,L
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqs $f30,$f30
-sts $f30,f
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqt $f30,$f30
-stt $f30,d
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-lda $27,4
-stq $27,l
-ldq $27,l
-mov $27,$25
-stb $25,c
-mov $27,$25
-stw $25,s
-mov $27,$25
-stl $25,i
-mov $27,$25
-mov $25,$22
-stb $22,C
-mov $25,$22
-stw $22,S
-stl $25,I
-mov $27,$25
-stq $25,L
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqs $f30,$f30
-sts $f30,f
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqt $f30,$f30
-stt $f30,d
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-lda $27,C
-lda $25,5
-stb $25,C
-ldbu $27,($27)
-mov $27,$25
-stb $25,c
-mov $27,$25
-stw $25,s
-stl $27,i
-sll $27,8*(8-4),$25
-sra $25,8*(8-4),$25
-stq $25,l
-mov $27,$25
-mov $25,$22
-stw $22,S
-stl $25,I
-mov $27,$25
-stq $25,L
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqs $f30,$f30
-sts $f30,f
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqt $f30,$f30
-stt $f30,d
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-lda $27,S
-lda $25,6
-stw $25,S
-ldwu $27,($27)
-mov $27,$25
-stb $25,c
-mov $27,$25
-stw $25,s
-stl $27,i
-sll $27,8*(8-4),$25
-sra $25,8*(8-4),$25
-stq $25,l
-mov $27,$25
-mov $25,$22
-stb $22,C
-stl $25,I
-mov $27,$25
-stq $25,L
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqs $f30,$f30
-sts $f30,f
-stq $27,-56+160($sp)
-ldt $f30,-56+160($sp)
-cvtqt $f30,$f30
-stt $f30,d
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-lda $27,7
-stl $27,I
-ldl $27,I
-zap $27,240,$27
-mov $27,$25
-mov $25,$22
-stb $22,c
-mov $25,$22
-stw $22,s
-stl $25,i
-and $27,(1<<(8*4))-1,$25
-stq $25,l
-mov $27,$25
-stb $25,C
-mov $27,$25
-stw $25,S
-and $27,(1<<(8*4))-1,$25
-stq $25,L
-ldt $f30,L.4
-srl $27,1,$25
-stq $25,-56+160($sp)
-ldt $f29,-56+160($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+160($sp)
-ldt $f29,-56+160($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f29
-sts $f29,f
-stt $f30,d
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-lda $27,8
-stq $27,L
-ldq $27,L
-mov $27,$25
-mov $25,$22
-stb $22,c
-mov $25,$22
-stw $22,s
-stl $25,i
-mov $27,$25
-stq $25,l
-mov $27,$25
-stb $25,C
-lda $25,S
-mov $27,$22
-stw $22,S
-ldwu $25,($25)
-stl $25,I
-ldt $f30,L.4
-srl $27,1,$25
-stq $25,-56+160($sp)
-ldt $f29,-56+160($sp)
-cvtqt $f29,$f29
-mult $f30,$f29,$f30
-and $27,1,$27
-stq $27,-56+160($sp)
-ldt $f29,-56+160($sp)
-cvtqt $f29,$f29
-addt $f30,$f29,$f30
-cvtts $f30,$f29
-sts $f29,f
-stt $f30,d
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-lds $f30,L.5
-sts $f30,f
-lds $f30,f
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-mov $27,$25
-stb $25,c
-mov $27,$25
-stw $25,s
-stl $27,i
-cvttqc $f30,$f1
-stt $f1,-56+160($sp)
-ldq $27,-56+160($sp)
-stq $27,l
-lds $f29,L.9
-cmptlt $f30,$f29,$f1
-fbne $f1,L.7
-subs $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-addl $27,0x80000000,$14
-zap $14,240,$14
-br L.8
-L.7:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-mov $27,$14
-L.8:
-mov $14,$27
-stb $27,C
-lds $f30,f
-lds $f29,L.9
-cmptlt $f30,$f29,$f1
-fbne $f1,L.11
-subs $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-addl $27,0x80000000,$13
-zap $13,240,$13
-br L.12
-L.11:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-mov $27,$13
-L.12:
-mov $13,$27
-stw $27,S
-lds $f30,f
-lds $f29,L.9
-cmptlt $f30,$f29,$f1
-fbne $f1,L.14
-subs $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-addl $27,0x80000000,$12
-zap $12,240,$12
-br L.15
-L.14:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-mov $27,$12
-L.15:
-stl $12,I
-lds $f30,f
-lds $f29,L.19
-cmptlt $f30,$f29,$f1
-fbne $f1,L.17
-subs $f30,$f29,$f29
-cvttqc $f29,$f1
-stt $f1,-56+160($sp)
-ldq $27,-56+160($sp)
-lda $11,0x8000000000000000($27)
-br L.18
-L.17:
-cvttqc $f30,$f1
-stt $f1,-56+160($sp)
-ldq $27,-56+160($sp)
-mov $27,$11
-L.18:
-stq $11,L
-lds $f30,f
-cvtst $f30,$f30
-stt $f30,d
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-ldt $f30,L.20
-stt $f30,d
-ldt $f30,d
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-mov $27,$25
-stb $25,c
-mov $27,$25
-stw $25,s
-stl $27,i
-cvttqc $f30,$f1
-stt $f1,-56+160($sp)
-ldq $27,-56+160($sp)
-stq $27,l
-ldt $f29,L.24
-cmptlt $f30,$f29,$f1
-fbne $f1,L.22
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-addl $27,0x80000000,$10
-zap $10,240,$10
-br L.23
-L.22:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-mov $27,$10
-L.23:
-mov $10,$27
-stb $27,C
-ldt $f30,d
-ldt $f29,L.24
-cmptlt $f30,$f29,$f1
-fbne $f1,L.26
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-addl $27,0x80000000,$9
-zap $9,240,$9
-br L.27
-L.26:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-mov $27,$9
-L.27:
-mov $9,$27
-stw $27,S
-ldt $f30,d
-ldt $f29,L.24
-cmptlt $f30,$f29,$f1
-fbne $f1,L.29
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-60+160($sp)
-br L.30
-L.29:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-stl $27,-60+160($sp)
-L.30:
-ldl $27,-60+160($sp)
-zap $27,240,$27
-stl $27,I
-ldt $f30,d
-ldt $f29,L.34
-cmptlt $f30,$f29,$f1
-fbne $f1,L.32
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-stt $f1,-56+160($sp)
-ldq $27,-56+160($sp)
-lda $27,0x8000000000000000($27)
-stq $27,-72+160($sp)
-br L.33
-L.32:
-cvttqc $f30,$f1
-stt $f1,-56+160($sp)
-ldq $27,-56+160($sp)
-stq $27,-72+160($sp)
-L.33:
-ldq $27,-72+160($sp)
-stq $27,L
-ldt $f30,d
-cvtts $f30,$f29
-sts $f29,f
-stt $f30,D
-jsr $26,print
-ldgp $gp,0($26)
-ldt $f30,L.35
-stt $f30,D
-ldt $f30,D
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-mov $27,$25
-stb $25,c
-mov $27,$25
-stw $25,s
-stl $27,i
-cvttqc $f30,$f1
-stt $f1,-56+160($sp)
-ldq $27,-56+160($sp)
-stq $27,l
-ldt $f29,L.39
-cmptlt $f30,$f29,$f1
-fbne $f1,L.37
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-76+160($sp)
-br L.38
-L.37:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-stl $27,-76+160($sp)
-L.38:
-ldl $27,-76+160($sp)
-zap $27,240,$27
-stb $27,C
-ldt $f30,D
-ldt $f29,L.39
-cmptlt $f30,$f29,$f1
-fbne $f1,L.41
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-80+160($sp)
-br L.42
-L.41:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-stl $27,-80+160($sp)
-L.42:
-ldl $27,-80+160($sp)
-zap $27,240,$27
-stw $27,S
-ldt $f30,D
-ldt $f29,L.39
-cmptlt $f30,$f29,$f1
-fbne $f1,L.44
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-addl $27,0x80000000,$27
-zap $27,240,$27
-stl $27,-84+160($sp)
-br L.45
-L.44:
-cvttqc $f30,$f1
-cvtql $f1,$f1
-sts $f1,-56+160($sp)
-ldl $27,-56+160($sp)
-stl $27,-84+160($sp)
-L.45:
-ldl $27,-84+160($sp)
-zap $27,240,$27
-stl $27,I
-ldt $f30,D
-ldt $f29,L.49
-cmptlt $f30,$f29,$f1
-fbne $f1,L.47
-subt $f30,$f29,$f29
-cvttqc $f29,$f1
-stt $f1,-56+160($sp)
-ldq $27,-56+160($sp)
-lda $27,0x8000000000000000($27)
-stq $27,-96+160($sp)
-br L.48
-L.47:
-cvttqc $f30,$f1
-stt $f1,-56+160($sp)
-ldq $27,-56+160($sp)
-stq $27,-96+160($sp)
-L.48:
-ldq $27,-96+160($sp)
-stq $27,L
-ldt $f30,D
-cvtts $f30,$f29
-sts $f29,f
-stt $f30,d
-jsr $26,print
-ldgp $gp,0($26)
-stq $31,p
-stq $31,p
-stq $31,p
-stq $31,p
-ldq $27,P
-stq $27,p
-stq $31,P
-stq $31,P
-stq $31,P
-stq $31,P
-ldq $27,p
-stq $27,P
-mov $31,$0
-L.3:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,160($sp)
-ret
-.end main
-.globl P
-.comm P,8
-.globl p
-.comm p,8
-.globl D
-.comm D,8
-.globl d
-.comm d,8
-.globl f
-.comm f,4
-.globl L
-.comm L,8
-.globl I
-.comm I,4
-.globl S
-.comm S,2
-.globl C
-.comm C,1
-.globl l
-.comm l,8
-.globl i
-.comm i,4
-.globl s
-.comm s,2
-.globl c
-.comm c,1
-.rdata
-.align 3
-L.49:
-.long 0x0
-.long 0x43e00000
-.align 3
-L.39:
-.long 0x0
-.long 0x41e00000
-.align 3
-L.35:
-.long 0x0
-.long 0x40260000
-.align 3
-L.34:
-.long 0x0
-.long 0x43e00000
-.align 3
-L.24:
-.long 0x0
-.long 0x41e00000
-.align 3
-L.20:
-.long 0x0
-.long 0x40240000
-.align 2
-L.19:
-.long 0x5f000000
-.align 2
-L.9:
-.long 0x4f000000
-.align 2
-L.5:
-.long 0x41100000
-.align 3
-L.4:
-.long 0x0
-.long 0x40000000
-.align 0
-L.2:
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 108
-.byte 100
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 108
-.byte 117
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 37
-.byte 108
-.byte 102
-.byte 10
-.byte 0
+.globl print
+.text
+.text
+.ent print
+print:
+ldgp $gp,0($27)
+lda $sp,-112($sp)
+.mask 0x4000000,-64
+.frame $sp,112,$26,48
+stq $26,48($sp)
+.prologue 1
+lda $16,L.2
+lda $27,c
+ldb $17,($27)
+lda $27,s
+ldw $18,($27)
+ldl $19,i
+ldq $20,l
+lda $27,C
+ldbu $21,($27)
+lda $27,S
+ldwu $27,($27)
+stq $27,0($sp)
+ldl $27,I
+zap $27,240,$27
+stq $27,8($sp)
+ldq $27,L
+stq $27,16($sp)
+lds $f30,f
+cvtst $f30,$f30
+stt $f30,24($sp)
+ldt $f30,d
+stt $f30,32($sp)
+ldt $f30,D
+stt $f30,40($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+L.1:
+ldq $26,48($sp)
+lda $sp,112($sp)
+ret
+.end print
+.globl main
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-160($sp)
+.mask 0x5007e00,-104
+.frame $sp,160,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+.prologue 1
+lda $27,c
+lda $25,1
+stb $25,c
+ldb $27,($27)
+mov $27,$25
+stw $25,s
+stl $27,i
+sll $27,8*(8-4),$25
+sra $25,8*(8-4),$25
+stq $25,l
+mov $27,$25
+mov $25,$22
+stb $22,C
+mov $25,$22
+stw $22,S
+stl $25,I
+mov $27,$25
+stq $25,L
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqs $f30,$f30
+sts $f30,f
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqt $f30,$f30
+stt $f30,d
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+lda $27,s
+lda $25,2
+stw $25,s
+ldw $27,($27)
+mov $27,$25
+stb $25,c
+stl $27,i
+sll $27,8*(8-4),$25
+sra $25,8*(8-4),$25
+stq $25,l
+mov $27,$25
+mov $25,$22
+stb $22,C
+mov $25,$22
+stw $22,S
+stl $25,I
+mov $27,$25
+stq $25,L
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqs $f30,$f30
+sts $f30,f
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqt $f30,$f30
+stt $f30,d
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+lda $27,3
+stl $27,i
+ldl $27,i
+mov $27,$25
+stb $25,c
+mov $27,$25
+stw $25,s
+sll $27,8*(8-4),$25
+sra $25,8*(8-4),$25
+stq $25,l
+mov $27,$25
+mov $25,$22
+stb $22,C
+mov $25,$22
+stw $22,S
+stl $25,I
+mov $27,$25
+stq $25,L
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqs $f30,$f30
+sts $f30,f
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqt $f30,$f30
+stt $f30,d
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+lda $27,4
+stq $27,l
+ldq $27,l
+mov $27,$25
+stb $25,c
+mov $27,$25
+stw $25,s
+mov $27,$25
+stl $25,i
+mov $27,$25
+mov $25,$22
+stb $22,C
+mov $25,$22
+stw $22,S
+stl $25,I
+mov $27,$25
+stq $25,L
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqs $f30,$f30
+sts $f30,f
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqt $f30,$f30
+stt $f30,d
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+lda $27,C
+lda $25,5
+stb $25,C
+ldbu $27,($27)
+mov $27,$25
+stb $25,c
+mov $27,$25
+stw $25,s
+stl $27,i
+sll $27,8*(8-4),$25
+sra $25,8*(8-4),$25
+stq $25,l
+mov $27,$25
+mov $25,$22
+stw $22,S
+stl $25,I
+mov $27,$25
+stq $25,L
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqs $f30,$f30
+sts $f30,f
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqt $f30,$f30
+stt $f30,d
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+lda $27,S
+lda $25,6
+stw $25,S
+ldwu $27,($27)
+mov $27,$25
+stb $25,c
+mov $27,$25
+stw $25,s
+stl $27,i
+sll $27,8*(8-4),$25
+sra $25,8*(8-4),$25
+stq $25,l
+mov $27,$25
+mov $25,$22
+stb $22,C
+stl $25,I
+mov $27,$25
+stq $25,L
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqs $f30,$f30
+sts $f30,f
+stq $27,-56+160($sp)
+ldt $f30,-56+160($sp)
+cvtqt $f30,$f30
+stt $f30,d
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+lda $27,7
+stl $27,I
+ldl $27,I
+zap $27,240,$27
+mov $27,$25
+mov $25,$22
+stb $22,c
+mov $25,$22
+stw $22,s
+stl $25,i
+and $27,(1<<(8*4))-1,$25
+stq $25,l
+mov $27,$25
+stb $25,C
+mov $27,$25
+stw $25,S
+and $27,(1<<(8*4))-1,$25
+stq $25,L
+ldt $f30,L.4
+srl $27,1,$25
+stq $25,-56+160($sp)
+ldt $f29,-56+160($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+160($sp)
+ldt $f29,-56+160($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f29
+sts $f29,f
+stt $f30,d
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+lda $27,8
+stq $27,L
+ldq $27,L
+mov $27,$25
+mov $25,$22
+stb $22,c
+mov $25,$22
+stw $22,s
+stl $25,i
+mov $27,$25
+stq $25,l
+mov $27,$25
+stb $25,C
+lda $25,S
+mov $27,$22
+stw $22,S
+ldwu $25,($25)
+stl $25,I
+ldt $f30,L.4
+srl $27,1,$25
+stq $25,-56+160($sp)
+ldt $f29,-56+160($sp)
+cvtqt $f29,$f29
+mult $f30,$f29,$f30
+and $27,1,$27
+stq $27,-56+160($sp)
+ldt $f29,-56+160($sp)
+cvtqt $f29,$f29
+addt $f30,$f29,$f30
+cvtts $f30,$f29
+sts $f29,f
+stt $f30,d
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+lds $f30,L.5
+sts $f30,f
+lds $f30,f
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+mov $27,$25
+stb $25,c
+mov $27,$25
+stw $25,s
+stl $27,i
+cvttqc $f30,$f1
+stt $f1,-56+160($sp)
+ldq $27,-56+160($sp)
+stq $27,l
+lds $f29,L.9
+cmptlt $f30,$f29,$f1
+fbne $f1,L.7
+subs $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+addl $27,0x80000000,$14
+zap $14,240,$14
+br L.8
+L.7:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+mov $27,$14
+L.8:
+mov $14,$27
+stb $27,C
+lds $f30,f
+lds $f29,L.9
+cmptlt $f30,$f29,$f1
+fbne $f1,L.11
+subs $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+addl $27,0x80000000,$13
+zap $13,240,$13
+br L.12
+L.11:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+mov $27,$13
+L.12:
+mov $13,$27
+stw $27,S
+lds $f30,f
+lds $f29,L.9
+cmptlt $f30,$f29,$f1
+fbne $f1,L.14
+subs $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+addl $27,0x80000000,$12
+zap $12,240,$12
+br L.15
+L.14:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+mov $27,$12
+L.15:
+stl $12,I
+lds $f30,f
+lds $f29,L.19
+cmptlt $f30,$f29,$f1
+fbne $f1,L.17
+subs $f30,$f29,$f29
+cvttqc $f29,$f1
+stt $f1,-56+160($sp)
+ldq $27,-56+160($sp)
+lda $11,0x8000000000000000($27)
+br L.18
+L.17:
+cvttqc $f30,$f1
+stt $f1,-56+160($sp)
+ldq $27,-56+160($sp)
+mov $27,$11
+L.18:
+stq $11,L
+lds $f30,f
+cvtst $f30,$f30
+stt $f30,d
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+ldt $f30,L.20
+stt $f30,d
+ldt $f30,d
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+mov $27,$25
+stb $25,c
+mov $27,$25
+stw $25,s
+stl $27,i
+cvttqc $f30,$f1
+stt $f1,-56+160($sp)
+ldq $27,-56+160($sp)
+stq $27,l
+ldt $f29,L.24
+cmptlt $f30,$f29,$f1
+fbne $f1,L.22
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+addl $27,0x80000000,$10
+zap $10,240,$10
+br L.23
+L.22:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+mov $27,$10
+L.23:
+mov $10,$27
+stb $27,C
+ldt $f30,d
+ldt $f29,L.24
+cmptlt $f30,$f29,$f1
+fbne $f1,L.26
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+addl $27,0x80000000,$9
+zap $9,240,$9
+br L.27
+L.26:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+mov $27,$9
+L.27:
+mov $9,$27
+stw $27,S
+ldt $f30,d
+ldt $f29,L.24
+cmptlt $f30,$f29,$f1
+fbne $f1,L.29
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-60+160($sp)
+br L.30
+L.29:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+stl $27,-60+160($sp)
+L.30:
+ldl $27,-60+160($sp)
+zap $27,240,$27
+stl $27,I
+ldt $f30,d
+ldt $f29,L.34
+cmptlt $f30,$f29,$f1
+fbne $f1,L.32
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+stt $f1,-56+160($sp)
+ldq $27,-56+160($sp)
+lda $27,0x8000000000000000($27)
+stq $27,-72+160($sp)
+br L.33
+L.32:
+cvttqc $f30,$f1
+stt $f1,-56+160($sp)
+ldq $27,-56+160($sp)
+stq $27,-72+160($sp)
+L.33:
+ldq $27,-72+160($sp)
+stq $27,L
+ldt $f30,d
+cvtts $f30,$f29
+sts $f29,f
+stt $f30,D
+jsr $26,print
+ldgp $gp,0($26)
+ldt $f30,L.35
+stt $f30,D
+ldt $f30,D
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+mov $27,$25
+stb $25,c
+mov $27,$25
+stw $25,s
+stl $27,i
+cvttqc $f30,$f1
+stt $f1,-56+160($sp)
+ldq $27,-56+160($sp)
+stq $27,l
+ldt $f29,L.39
+cmptlt $f30,$f29,$f1
+fbne $f1,L.37
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-76+160($sp)
+br L.38
+L.37:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+stl $27,-76+160($sp)
+L.38:
+ldl $27,-76+160($sp)
+zap $27,240,$27
+stb $27,C
+ldt $f30,D
+ldt $f29,L.39
+cmptlt $f30,$f29,$f1
+fbne $f1,L.41
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-80+160($sp)
+br L.42
+L.41:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+stl $27,-80+160($sp)
+L.42:
+ldl $27,-80+160($sp)
+zap $27,240,$27
+stw $27,S
+ldt $f30,D
+ldt $f29,L.39
+cmptlt $f30,$f29,$f1
+fbne $f1,L.44
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+addl $27,0x80000000,$27
+zap $27,240,$27
+stl $27,-84+160($sp)
+br L.45
+L.44:
+cvttqc $f30,$f1
+cvtql $f1,$f1
+sts $f1,-56+160($sp)
+ldl $27,-56+160($sp)
+stl $27,-84+160($sp)
+L.45:
+ldl $27,-84+160($sp)
+zap $27,240,$27
+stl $27,I
+ldt $f30,D
+ldt $f29,L.49
+cmptlt $f30,$f29,$f1
+fbne $f1,L.47
+subt $f30,$f29,$f29
+cvttqc $f29,$f1
+stt $f1,-56+160($sp)
+ldq $27,-56+160($sp)
+lda $27,0x8000000000000000($27)
+stq $27,-96+160($sp)
+br L.48
+L.47:
+cvttqc $f30,$f1
+stt $f1,-56+160($sp)
+ldq $27,-56+160($sp)
+stq $27,-96+160($sp)
+L.48:
+ldq $27,-96+160($sp)
+stq $27,L
+ldt $f30,D
+cvtts $f30,$f29
+sts $f29,f
+stt $f30,d
+jsr $26,print
+ldgp $gp,0($26)
+stq $31,p
+stq $31,p
+stq $31,p
+stq $31,p
+ldq $27,P
+stq $27,p
+stq $31,P
+stq $31,P
+stq $31,P
+stq $31,P
+ldq $27,p
+stq $27,P
+mov $31,$0
+L.3:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,160($sp)
+ret
+.end main
+.globl P
+.comm P,8
+.globl p
+.comm p,8
+.globl D
+.comm D,8
+.globl d
+.comm d,8
+.globl f
+.comm f,4
+.globl L
+.comm L,8
+.globl I
+.comm I,4
+.globl S
+.comm S,2
+.globl C
+.comm C,1
+.globl l
+.comm l,8
+.globl i
+.comm i,4
+.globl s
+.comm s,2
+.globl c
+.comm c,1
+.rdata
+.align 3
+L.49:
+.long 0x0
+.long 0x43e00000
+.align 3
+L.39:
+.long 0x0
+.long 0x41e00000
+.align 3
+L.35:
+.long 0x0
+.long 0x40260000
+.align 3
+L.34:
+.long 0x0
+.long 0x43e00000
+.align 3
+L.24:
+.long 0x0
+.long 0x41e00000
+.align 3
+L.20:
+.long 0x0
+.long 0x40240000
+.align 2
+L.19:
+.long 0x5f000000
+.align 2
+L.9:
+.long 0x4f000000
+.align 2
+L.5:
+.long 0x41100000
+.align 3
+L.4:
+.long 0x0
+.long 0x40000000
+.align 0
+L.2:
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 108
+.byte 100
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 108
+.byte 117
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 37
+.byte 108
+.byte 102
+.byte 10
+.byte 0
diff --git a/lcc/alpha/osf/tst/fields.1bk b/lcc/alpha/osf/tst/fields.1bk
index f30b13f..56fdeb9 100755
--- a/lcc/alpha/osf/tst/fields.1bk
+++ b/lcc/alpha/osf/tst/fields.1bk
@@ -1,5 +1,5 @@
-x = 1 2 3 4 -3 6
-y = 3 8 9
-x = 1 2 3 0 0 6
-y = 2 8 16
-p->a = 0x3, p->b = 0xf
+x = 1 2 3 4 -3 6
+y = 3 8 9
+x = 1 2 3 0 0 6
+y = 2 8 16
+p->a = 0x3, p->b = 0xf
diff --git a/lcc/alpha/osf/tst/fields.2bk b/lcc/alpha/osf/tst/fields.2bk
index e689d78..51e1736 100755
--- a/lcc/alpha/osf/tst/fields.2bk
+++ b/lcc/alpha/osf/tst/fields.2bk
@@ -1,4 +1,4 @@
-tst/fields.c:6: warning: initializer exceeds bit-field width
-tst/fields.c:8: warning: initializer exceeds bit-field width
-tst/fields.c:30: warning: missing return value
-tst/fields.c:34: warning: missing return value
+tst/fields.c:6: warning: initializer exceeds bit-field width
+tst/fields.c:8: warning: initializer exceeds bit-field width
+tst/fields.c:30: warning: missing return value
+tst/fields.c:34: warning: missing return value
diff --git a/lcc/alpha/osf/tst/fields.sbk b/lcc/alpha/osf/tst/fields.sbk
index 0c8f38c..b261035 100755
--- a/lcc/alpha/osf/tst/fields.sbk
+++ b/lcc/alpha/osf/tst/fields.sbk
@@ -1,325 +1,325 @@
-.sdata
-.globl x
-.align 2
-x:
-.long 0x1
-.byte 0x2
-.space 3
-.byte 0x3
-.byte 0x40
-.space 2
-.byte 0x50
-.byte 0x6
-.space 2
-.globl i
-.align 2
-i:
-.long 0x10
-.globl y
-.align 2
-y:
-.byte 0x23
-.space 3
-.byte 0x9
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4000000,-72
-.frame $sp,80,$26,48
-stq $26,8($sp)
-.prologue 1
-lda $16,L.4
-ldl $17,x
-lda $27,x+4
-ldb $18,($27)
-ldl $27,x+8
-sll $27,20,$27
-addl $27,0,$27
-sra $27,20,$19
-addl $19,0,$19
-ldl $27,x+8
-sll $27,16,$27
-addl $27,0,$27
-sra $27,28,$20
-addl $20,0,$20
-ldl $27,x+12
-sll $27,25,$27
-addl $27,0,$27
-sra $27,29,$21
-addl $21,0,$21
-lda $27,x+13
-ldb $27,($27)
-stq $27,0($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.10
-ldl $27,y
-zap $27,240,$27
-and $27,3,$17
-srl $27,2,$27
-and $27,15,$18
-ldl $19,y+4
-zap $19,240,$19
-jsr $26,printf
-ldgp $gp,0($26)
-ldl $27,x+8
-and $27,0xffff0fff,$27
-ldl $25,i
-sll $25,28,$25
-addl $25,0,$25
-sra $25,28,$25
-addl $25,0,$25
-sll $25,12,$25
-zap $25,240,$25
-and $25,0xf000,$25
-or $27,$25,$27
-stl $27,x+8
-ldl $27,x+12
-and $27,0xffffff8f,$27
-stl $27,x+12
-lda $16,L.4
-ldl $17,x
-lda $27,x+4
-ldb $18,($27)
-ldl $27,x+8
-sll $27,20,$27
-addl $27,0,$27
-sra $27,20,$19
-addl $19,0,$19
-ldl $27,x+8
-sll $27,16,$27
-addl $27,0,$27
-sra $27,28,$20
-addl $20,0,$20
-ldl $27,x+12
-sll $27,25,$27
-addl $27,0,$27
-sra $27,29,$21
-addl $21,0,$21
-lda $27,x+13
-ldb $27,($27)
-stq $27,0($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-ldl $27,y
-zap $27,240,$27
-and $27,0xfffffffc,$27
-or $27,2,$27
-stl $27,y
-ldl $27,i
-stl $27,y+4
-lda $16,L.10
-ldl $27,y
-zap $27,240,$27
-and $27,3,$17
-srl $27,2,$27
-and $27,15,$18
-ldl $19,y+4
-zap $19,240,$19
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,x
-jsr $26,f2
-ldgp $gp,0($26)
-mov $31,$0
-L.3:
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end main
-.globl f1
-.text
-.ent f1
-f1:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-mov $16,$14
-.prologue 1
-ldl $27,($14)
-zap $27,240,$27
-and $27,0xffffffc3,$27
-stl $27,($14)
-ldl $27,($14)
-zap $27,240,$27
-and $27,0xfffffffc,$27
-and $31,3,$25
-and $25,3,$25
-or $27,$25,$27
-stl $27,($14)
-ldl $27,($14)
-zap $27,240,$27
-and $27,60,$27
-cmpeq $27,$31,$23
-bne $23,L.22
-lda $16,L.24
-jsr $26,printf
-ldgp $gp,0($26)
-L.22:
-ldl $27,($14)
-zap $27,240,$27
-or $27,3,$27
-stl $27,($14)
-ldl $27,($14)
-zap $27,240,$27
-or $27,60,$27
-stl $27,($14)
-lda $16,L.25
-ldl $27,($14)
-zap $27,240,$27
-and $27,3,$17
-srl $27,2,$27
-and $27,15,$18
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.21:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end f1
-.globl f2
-.text
-.ent f2
-f2:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4006000,-64
-.frame $sp,80,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $26,16($sp)
-mov $16,$14
-.prologue 1
-ldl $27,i
-cmpeq $27,$31,$23
-beq $23,L.28
-lda $13,1
-br L.29
-L.28:
-mov $31,$13
-L.29:
-ldl $27,($14)
-zap $27,240,$27
-and $27,0xfffffffc,$27
-mov $13,$25
-and $25,3,$25
-and $25,3,$25
-or $27,$25,$27
-stl $27,($14)
-mov $14,$16
-jsr $26,f1
-ldgp $gp,0($26)
-ldl $27,($14)
-zap $27,240,$27
-and $27,0xffffffc3,$27
-mov $31,$25
-and $25,15,$25
-sll $25,2,$25
-zap $25,240,$25
-and $25,60,$25
-or $27,$25,$27
-stl $27,($14)
-mov $31,$0
-L.26:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end f2
-.rdata
-.align 0
-L.25:
-.byte 112
-.byte 45
-.byte 62
-.byte 97
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 44
-.byte 32
-.byte 112
-.byte 45
-.byte 62
-.byte 98
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 0
-L.24:
-.byte 112
-.byte 45
-.byte 62
-.byte 98
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.10:
-.byte 121
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.4:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
+.sdata
+.globl x
+.align 2
+x:
+.long 0x1
+.byte 0x2
+.space 3
+.byte 0x3
+.byte 0x40
+.space 2
+.byte 0x50
+.byte 0x6
+.space 2
+.globl i
+.align 2
+i:
+.long 0x10
+.globl y
+.align 2
+y:
+.byte 0x23
+.space 3
+.byte 0x9
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4000000,-72
+.frame $sp,80,$26,48
+stq $26,8($sp)
+.prologue 1
+lda $16,L.4
+ldl $17,x
+lda $27,x+4
+ldb $18,($27)
+ldl $27,x+8
+sll $27,20,$27
+addl $27,0,$27
+sra $27,20,$19
+addl $19,0,$19
+ldl $27,x+8
+sll $27,16,$27
+addl $27,0,$27
+sra $27,28,$20
+addl $20,0,$20
+ldl $27,x+12
+sll $27,25,$27
+addl $27,0,$27
+sra $27,29,$21
+addl $21,0,$21
+lda $27,x+13
+ldb $27,($27)
+stq $27,0($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.10
+ldl $27,y
+zap $27,240,$27
+and $27,3,$17
+srl $27,2,$27
+and $27,15,$18
+ldl $19,y+4
+zap $19,240,$19
+jsr $26,printf
+ldgp $gp,0($26)
+ldl $27,x+8
+and $27,0xffff0fff,$27
+ldl $25,i
+sll $25,28,$25
+addl $25,0,$25
+sra $25,28,$25
+addl $25,0,$25
+sll $25,12,$25
+zap $25,240,$25
+and $25,0xf000,$25
+or $27,$25,$27
+stl $27,x+8
+ldl $27,x+12
+and $27,0xffffff8f,$27
+stl $27,x+12
+lda $16,L.4
+ldl $17,x
+lda $27,x+4
+ldb $18,($27)
+ldl $27,x+8
+sll $27,20,$27
+addl $27,0,$27
+sra $27,20,$19
+addl $19,0,$19
+ldl $27,x+8
+sll $27,16,$27
+addl $27,0,$27
+sra $27,28,$20
+addl $20,0,$20
+ldl $27,x+12
+sll $27,25,$27
+addl $27,0,$27
+sra $27,29,$21
+addl $21,0,$21
+lda $27,x+13
+ldb $27,($27)
+stq $27,0($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+ldl $27,y
+zap $27,240,$27
+and $27,0xfffffffc,$27
+or $27,2,$27
+stl $27,y
+ldl $27,i
+stl $27,y+4
+lda $16,L.10
+ldl $27,y
+zap $27,240,$27
+and $27,3,$17
+srl $27,2,$27
+and $27,15,$18
+ldl $19,y+4
+zap $19,240,$19
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,x
+jsr $26,f2
+ldgp $gp,0($26)
+mov $31,$0
+L.3:
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end main
+.globl f1
+.text
+.ent f1
+f1:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+mov $16,$14
+.prologue 1
+ldl $27,($14)
+zap $27,240,$27
+and $27,0xffffffc3,$27
+stl $27,($14)
+ldl $27,($14)
+zap $27,240,$27
+and $27,0xfffffffc,$27
+and $31,3,$25
+and $25,3,$25
+or $27,$25,$27
+stl $27,($14)
+ldl $27,($14)
+zap $27,240,$27
+and $27,60,$27
+cmpeq $27,$31,$23
+bne $23,L.22
+lda $16,L.24
+jsr $26,printf
+ldgp $gp,0($26)
+L.22:
+ldl $27,($14)
+zap $27,240,$27
+or $27,3,$27
+stl $27,($14)
+ldl $27,($14)
+zap $27,240,$27
+or $27,60,$27
+stl $27,($14)
+lda $16,L.25
+ldl $27,($14)
+zap $27,240,$27
+and $27,3,$17
+srl $27,2,$27
+and $27,15,$18
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.21:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end f1
+.globl f2
+.text
+.ent f2
+f2:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4006000,-64
+.frame $sp,80,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $26,16($sp)
+mov $16,$14
+.prologue 1
+ldl $27,i
+cmpeq $27,$31,$23
+beq $23,L.28
+lda $13,1
+br L.29
+L.28:
+mov $31,$13
+L.29:
+ldl $27,($14)
+zap $27,240,$27
+and $27,0xfffffffc,$27
+mov $13,$25
+and $25,3,$25
+and $25,3,$25
+or $27,$25,$27
+stl $27,($14)
+mov $14,$16
+jsr $26,f1
+ldgp $gp,0($26)
+ldl $27,($14)
+zap $27,240,$27
+and $27,0xffffffc3,$27
+mov $31,$25
+and $25,15,$25
+sll $25,2,$25
+zap $25,240,$25
+and $25,60,$25
+or $27,$25,$27
+stl $27,($14)
+mov $31,$0
+L.26:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end f2
+.rdata
+.align 0
+L.25:
+.byte 112
+.byte 45
+.byte 62
+.byte 97
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 44
+.byte 32
+.byte 112
+.byte 45
+.byte 62
+.byte 98
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 0
+L.24:
+.byte 112
+.byte 45
+.byte 62
+.byte 98
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.10:
+.byte 121
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.4:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
diff --git a/lcc/alpha/osf/tst/front.2bk b/lcc/alpha/osf/tst/front.2bk
index 841e6a5..bbd390a 100755
--- a/lcc/alpha/osf/tst/front.2bk
+++ b/lcc/alpha/osf/tst/front.2bk
@@ -1,29 +1,29 @@
-tst/front.c:3: warning: missing return value
-tst/front.c:10: warning: missing return value
-tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
-tst/front.c:21: warning: missing return value
-tst/front.c:32: warning: missing return value
-tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
-tst/front.c:38: warning: missing return value
-tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
-tst/front.c:63: warning: missing return value
-tst/front.c:68: warning: missing return value
-tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
-tst/front.c:69: warning: missing return value
-tst/front.c:71: invalid storage class `static' for `int function goo'
-tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
-tst/front.c:71: warning: missing return value
-tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
-tst/front.c:74: warning: missing return value
-tst/front.c:81: warning: missing return value
-tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
-tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
-tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
-tst/front.c:92: warning: missing return value
-tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
-tst/front.c:98: warning: missing return value
-tst/front.c:101: conflicting argument declarations for function `gg1'
-tst/front.c:101: warning: missing return value
-tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
-tst/front.c:113: warning: missing return value
-tst/front.c:120: warning: missing return value
+tst/front.c:3: warning: missing return value
+tst/front.c:10: warning: missing return value
+tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
+tst/front.c:21: warning: missing return value
+tst/front.c:32: warning: missing return value
+tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
+tst/front.c:38: warning: missing return value
+tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
+tst/front.c:63: warning: missing return value
+tst/front.c:68: warning: missing return value
+tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
+tst/front.c:69: warning: missing return value
+tst/front.c:71: invalid storage class `static' for `int function goo'
+tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
+tst/front.c:71: warning: missing return value
+tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
+tst/front.c:74: warning: missing return value
+tst/front.c:81: warning: missing return value
+tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
+tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
+tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
+tst/front.c:92: warning: missing return value
+tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
+tst/front.c:98: warning: missing return value
+tst/front.c:101: conflicting argument declarations for function `gg1'
+tst/front.c:101: warning: missing return value
+tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
+tst/front.c:113: warning: missing return value
+tst/front.c:120: warning: missing return value
diff --git a/lcc/alpha/osf/tst/front.sbk b/lcc/alpha/osf/tst/front.sbk
index 366aab1..f7fd430 100755
--- a/lcc/alpha/osf/tst/front.sbk
+++ b/lcc/alpha/osf/tst/front.sbk
@@ -1,380 +1,380 @@
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-mov $31,$16
-jsr $26,exit
-ldgp $gp,0($26)
-mov $31,$0
-L.1:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end main
-.globl nested
-.text
-.ent nested
-nested:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-cmplt $16,4,$23
-beq $23,L.6
-lda $27,114
-cmpeq $17,$27,$23
-bne $23,L.9
-L.6:
-cmpeq $16,1,$23
-beq $23,L.8
-lda $27,104
-cmpeq $17,$27,$23
-bne $23,L.9
-lda $27,105
-cmpeq $17,$27,$23
-bne $23,L.9
-L.8:
-cmpeq $16,2,$23
-beq $23,L.3
-lda $27,111
-cmpeq $17,$27,$23
-bne $23,L.9
-lda $27,121
-cmpeq $17,$27,$23
-beq $23,L.3
-L.9:
-mov $17,$16
-L.3:
-mov $31,$0
-L.2:
-lda $sp,64($sp)
-ret
-.end nested
-.globl s
-.text
-.ent s
-s:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-L.10:
-lda $sp,64($sp)
-ret
-.end s
-.sdata
-.globl Dy
-.align 2
-Dy:
-.long 0x0
-.space 4
-.globl Dz
-.align 2
-Dz:
-.long 0x1
-.space 4
-.globl Dfunc
-.text
-.text
-.ent Dfunc
-Dfunc:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end Dfunc
-.globl f
-.text
-.ent f
-f:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end f
-.globl f1
-.text
-.ent f1
-f1:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end f1
-.globl f2
-.text
-.ent f2
-f2:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-stq $17,24($sp)
-.prologue 1
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end f2
-.globl g
-.text
-.ent g
-g:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-.prologue 1
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end g
-.globl h
-.text
-.ent h
-h:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-.prologue 1
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end h
-.globl h1
-.text
-.ent h1
-h1:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-stq $17,24($sp)
-.prologue 1
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end h1
-.globl h2
-.text
-.ent h2
-h2:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end h2
-.sdata
-.align 2
-L.21:
-.long 0x1
-.globl set1
-.text
-.text
-.ent set1
-set1:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end set1
-.sdata
-.align 2
-L.23:
-.long 0x2
-.globl set2
-.text
-.text
-.ent set2
-set2:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end set2
-.text
-.ent goo
-goo:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end goo
-.globl sss
-.text
-.ent sss
-sss:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end sss
-.lcomm L.27,4
-.globl rrr
-.text
-.text
-.ent rrr
-rrr:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end rrr
-.globl setstatic
-.text
-.ent setstatic
-setstatic:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end setstatic
-.globl gx1
-.text
-.ent gx1
-gx1:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stt $f16,16($sp)
-.prologue 1
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end gx1
-.globl ff1
-.text
-.ent ff1
-ff1:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end ff1
-.globl gg1
-.text
-.ent gg1
-gg1:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end gg1
-.globl hh1
-.text
-.ent hh1
-hh1:
-ldgp $gp,0($27)
-lda $sp,-48($sp)
-.frame $sp,48,$26,48
-.prologue 1
-lda $sp,48($sp)
-ret
-.end hh1
-.globl cmp
-.text
-.ent cmp
-cmp:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-stq $17,24($sp)
-.prologue 1
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end cmp
-.globl sort
-.text
-.ent sort
-sort:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end sort
-.globl onearg
-.text
-.ent onearg
-onearg:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end onearg
-.extern xr 4
-.globl ss4
-.comm ss4,4
-.lcomm ss2,4
-.lcomm ss5,4
-.globl ss3
-.comm ss3,4
-.lcomm ss1,4
-.lcomm yy,4
-.globl z
-.comm z,4
-.globl y
-.comm y,8
-.globl x
-.comm x,8
-.globl b
-.comm b,4
-.globl a
-.comm a,4
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+mov $31,$16
+jsr $26,exit
+ldgp $gp,0($26)
+mov $31,$0
+L.1:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end main
+.globl nested
+.text
+.ent nested
+nested:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+cmplt $16,4,$23
+beq $23,L.6
+lda $27,114
+cmpeq $17,$27,$23
+bne $23,L.9
+L.6:
+cmpeq $16,1,$23
+beq $23,L.8
+lda $27,104
+cmpeq $17,$27,$23
+bne $23,L.9
+lda $27,105
+cmpeq $17,$27,$23
+bne $23,L.9
+L.8:
+cmpeq $16,2,$23
+beq $23,L.3
+lda $27,111
+cmpeq $17,$27,$23
+bne $23,L.9
+lda $27,121
+cmpeq $17,$27,$23
+beq $23,L.3
+L.9:
+mov $17,$16
+L.3:
+mov $31,$0
+L.2:
+lda $sp,64($sp)
+ret
+.end nested
+.globl s
+.text
+.ent s
+s:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+L.10:
+lda $sp,64($sp)
+ret
+.end s
+.sdata
+.globl Dy
+.align 2
+Dy:
+.long 0x0
+.space 4
+.globl Dz
+.align 2
+Dz:
+.long 0x1
+.space 4
+.globl Dfunc
+.text
+.text
+.ent Dfunc
+Dfunc:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end Dfunc
+.globl f
+.text
+.ent f
+f:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end f
+.globl f1
+.text
+.ent f1
+f1:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end f1
+.globl f2
+.text
+.ent f2
+f2:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+stq $17,24($sp)
+.prologue 1
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end f2
+.globl g
+.text
+.ent g
+g:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+.prologue 1
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end g
+.globl h
+.text
+.ent h
+h:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+.prologue 1
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end h
+.globl h1
+.text
+.ent h1
+h1:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+stq $17,24($sp)
+.prologue 1
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end h1
+.globl h2
+.text
+.ent h2
+h2:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end h2
+.sdata
+.align 2
+L.21:
+.long 0x1
+.globl set1
+.text
+.text
+.ent set1
+set1:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end set1
+.sdata
+.align 2
+L.23:
+.long 0x2
+.globl set2
+.text
+.text
+.ent set2
+set2:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end set2
+.text
+.ent goo
+goo:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end goo
+.globl sss
+.text
+.ent sss
+sss:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end sss
+.lcomm L.27,4
+.globl rrr
+.text
+.text
+.ent rrr
+rrr:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end rrr
+.globl setstatic
+.text
+.ent setstatic
+setstatic:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end setstatic
+.globl gx1
+.text
+.ent gx1
+gx1:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stt $f16,16($sp)
+.prologue 1
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end gx1
+.globl ff1
+.text
+.ent ff1
+ff1:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end ff1
+.globl gg1
+.text
+.ent gg1
+gg1:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end gg1
+.globl hh1
+.text
+.ent hh1
+hh1:
+ldgp $gp,0($27)
+lda $sp,-48($sp)
+.frame $sp,48,$26,48
+.prologue 1
+lda $sp,48($sp)
+ret
+.end hh1
+.globl cmp
+.text
+.ent cmp
+cmp:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+stq $17,24($sp)
+.prologue 1
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end cmp
+.globl sort
+.text
+.ent sort
+sort:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end sort
+.globl onearg
+.text
+.ent onearg
+onearg:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end onearg
+.extern xr 4
+.globl ss4
+.comm ss4,4
+.lcomm ss2,4
+.lcomm ss5,4
+.globl ss3
+.comm ss3,4
+.lcomm ss1,4
+.lcomm yy,4
+.globl z
+.comm z,4
+.globl y
+.comm y,8
+.globl x
+.comm x,8
+.globl b
+.comm b,4
+.globl a
+.comm a,4
diff --git a/lcc/alpha/osf/tst/incr.2bk b/lcc/alpha/osf/tst/incr.2bk
index b86c400..d9ef13c 100755
--- a/lcc/alpha/osf/tst/incr.2bk
+++ b/lcc/alpha/osf/tst/incr.2bk
@@ -1,9 +1,9 @@
-tst/incr.c:1: warning: missing return value
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:11: warning: missing return value
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:21: warning: missing return value
-tst/incr.c:30: warning: missing return value
-tst/incr.c:39: warning: missing return value
+tst/incr.c:1: warning: missing return value
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:11: warning: missing return value
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:21: warning: missing return value
+tst/incr.c:30: warning: missing return value
+tst/incr.c:39: warning: missing return value
diff --git a/lcc/alpha/osf/tst/incr.sbk b/lcc/alpha/osf/tst/incr.sbk
index 5a9555a..3386683 100755
--- a/lcc/alpha/osf/tst/incr.sbk
+++ b/lcc/alpha/osf/tst/incr.sbk
@@ -1,151 +1,151 @@
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-mov $31,$0
-L.1:
-lda $sp,64($sp)
-ret
-.end main
-.globl memchar
-.text
-.ent memchar
-memchar:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.mask 0x5000000,-88
-.frame $sp,96,$26,48
-stq $24,0($sp)
-stq $26,8($sp)
-.prologue 1
-ldq $27,-72+96($sp)
-lda $25,1($27)
-stq $25,-72+96($sp)
-ldb $27,($27)
-stb $27,-57+96($sp)
-ldq $27,-72+96($sp)
-lda $27,1($27)
-stq $27,-72+96($sp)
-ldb $27,($27)
-stb $27,-57+96($sp)
-ldq $27,-72+96($sp)
-lda $25,-1($27)
-stq $25,-72+96($sp)
-ldb $27,($27)
-stb $27,-57+96($sp)
-ldq $27,-72+96($sp)
-lda $27,-1($27)
-stq $27,-72+96($sp)
-ldb $27,($27)
-stb $27,-57+96($sp)
-mov $31,$0
-L.2:
-ldq $24,0($sp)
-ldq $26,8($sp)
-lda $sp,96($sp)
-ret
-.end memchar
-.globl memint
-.text
-.ent memint
-memint:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.frame $sp,80,$26,48
-.prologue 1
-ldq $27,-72+80($sp)
-lda $25,4($27)
-stq $25,-72+80($sp)
-ldl $27,($27)
-stl $27,-60+80($sp)
-ldq $27,-72+80($sp)
-lda $27,4($27)
-stq $27,-72+80($sp)
-ldl $27,($27)
-stl $27,-60+80($sp)
-ldq $27,-72+80($sp)
-lda $25,-4($27)
-stq $25,-72+80($sp)
-ldl $27,($27)
-stl $27,-60+80($sp)
-ldq $27,-72+80($sp)
-lda $27,-4($27)
-stq $27,-72+80($sp)
-ldl $27,($27)
-stl $27,-60+80($sp)
-mov $31,$0
-L.3:
-lda $sp,80($sp)
-ret
-.end memint
-.globl regchar
-.text
-.ent regchar
-regchar:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.mask 0x5006000,-72
-.frame $sp,96,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $24,16($sp)
-stq $26,24($sp)
-.prologue 1
-mov $13,$27
-lda $13,1($27)
-ldb $14,($27)
-lda $27,1($13)
-mov $27,$13
-ldb $14,($27)
-mov $13,$27
-lda $13,-1($27)
-ldb $14,($27)
-lda $27,-1($13)
-mov $27,$13
-ldb $14,($27)
-mov $31,$0
-L.4:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $24,16($sp)
-ldq $26,24($sp)
-lda $sp,96($sp)
-ret
-.end regchar
-.globl regint
-.text
-.ent regint
-regint:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4006000,-64
-.frame $sp,80,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $26,16($sp)
-.prologue 1
-mov $13,$27
-lda $13,4($27)
-ldl $14,($27)
-lda $27,4($13)
-mov $27,$13
-ldl $14,($27)
-mov $13,$27
-lda $13,-4($27)
-ldl $14,($27)
-lda $27,-4($13)
-mov $27,$13
-ldl $14,($27)
-mov $31,$0
-L.5:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end regint
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+mov $31,$0
+L.1:
+lda $sp,64($sp)
+ret
+.end main
+.globl memchar
+.text
+.ent memchar
+memchar:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.mask 0x5000000,-88
+.frame $sp,96,$26,48
+stq $24,0($sp)
+stq $26,8($sp)
+.prologue 1
+ldq $27,-72+96($sp)
+lda $25,1($27)
+stq $25,-72+96($sp)
+ldb $27,($27)
+stb $27,-57+96($sp)
+ldq $27,-72+96($sp)
+lda $27,1($27)
+stq $27,-72+96($sp)
+ldb $27,($27)
+stb $27,-57+96($sp)
+ldq $27,-72+96($sp)
+lda $25,-1($27)
+stq $25,-72+96($sp)
+ldb $27,($27)
+stb $27,-57+96($sp)
+ldq $27,-72+96($sp)
+lda $27,-1($27)
+stq $27,-72+96($sp)
+ldb $27,($27)
+stb $27,-57+96($sp)
+mov $31,$0
+L.2:
+ldq $24,0($sp)
+ldq $26,8($sp)
+lda $sp,96($sp)
+ret
+.end memchar
+.globl memint
+.text
+.ent memint
+memint:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.frame $sp,80,$26,48
+.prologue 1
+ldq $27,-72+80($sp)
+lda $25,4($27)
+stq $25,-72+80($sp)
+ldl $27,($27)
+stl $27,-60+80($sp)
+ldq $27,-72+80($sp)
+lda $27,4($27)
+stq $27,-72+80($sp)
+ldl $27,($27)
+stl $27,-60+80($sp)
+ldq $27,-72+80($sp)
+lda $25,-4($27)
+stq $25,-72+80($sp)
+ldl $27,($27)
+stl $27,-60+80($sp)
+ldq $27,-72+80($sp)
+lda $27,-4($27)
+stq $27,-72+80($sp)
+ldl $27,($27)
+stl $27,-60+80($sp)
+mov $31,$0
+L.3:
+lda $sp,80($sp)
+ret
+.end memint
+.globl regchar
+.text
+.ent regchar
+regchar:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.mask 0x5006000,-72
+.frame $sp,96,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $24,16($sp)
+stq $26,24($sp)
+.prologue 1
+mov $13,$27
+lda $13,1($27)
+ldb $14,($27)
+lda $27,1($13)
+mov $27,$13
+ldb $14,($27)
+mov $13,$27
+lda $13,-1($27)
+ldb $14,($27)
+lda $27,-1($13)
+mov $27,$13
+ldb $14,($27)
+mov $31,$0
+L.4:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $24,16($sp)
+ldq $26,24($sp)
+lda $sp,96($sp)
+ret
+.end regchar
+.globl regint
+.text
+.ent regint
+regint:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4006000,-64
+.frame $sp,80,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $26,16($sp)
+.prologue 1
+mov $13,$27
+lda $13,4($27)
+ldl $14,($27)
+lda $27,4($13)
+mov $27,$13
+ldl $14,($27)
+mov $13,$27
+lda $13,-4($27)
+ldl $14,($27)
+lda $27,-4($13)
+mov $27,$13
+ldl $14,($27)
+mov $31,$0
+L.5:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end regint
diff --git a/lcc/alpha/osf/tst/init.1bk b/lcc/alpha/osf/tst/init.1bk
index 042f3bb..77aff09 100755
--- a/lcc/alpha/osf/tst/init.1bk
+++ b/lcc/alpha/osf/tst/init.1bk
@@ -1,16 +1,16 @@
- 1 2 3 4
- 5 6
- 7
-if
-for
-else
-while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-0 0 0
+ 1 2 3 4
+ 5 6
+ 7
+if
+for
+else
+while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+0 0 0
diff --git a/lcc/alpha/osf/tst/init.2bk b/lcc/alpha/osf/tst/init.2bk
index da08062..aafe415 100755
--- a/lcc/alpha/osf/tst/init.2bk
+++ b/lcc/alpha/osf/tst/init.2bk
@@ -1,3 +1,3 @@
-tst/init.c:36: warning: missing return value
-tst/init.c:49: warning: missing return value
-tst/init.c:59: warning: missing return value
+tst/init.c:36: warning: missing return value
+tst/init.c:49: warning: missing return value
+tst/init.c:59: warning: missing return value
diff --git a/lcc/alpha/osf/tst/init.sbk b/lcc/alpha/osf/tst/init.sbk
index 3ecc4a0..c45840c 100755
--- a/lcc/alpha/osf/tst/init.sbk
+++ b/lcc/alpha/osf/tst/init.sbk
@@ -1,333 +1,333 @@
-.sdata
-.globl words
-.align 2
-words:
-.long 0x1
-.long 0x2
-.long 0x3
-.byte 105
-.byte 102
-.byte 0
-.space 3
-.space 2
-.long 0x4
-.long 0x5
-.space 4
-.byte 102
-.byte 111
-.byte 114
-.space 3
-.space 2
-.long 0x6
-.long 0x7
-.long 0x8
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.space 1
-.space 2
-.long 0x9
-.long 0xa
-.long 0xb
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.space 1
-.space 2
-.long 0x0
-.space 8
-.space 8
-.globl wordlist
-.align 3
-wordlist:
-.quad words
-.globl x
-.align 2
-x:
-.long 0x1
-.long 0x2
-.long 0x3
-.long 0x4
-.long 0x0
-.long 0x5
-.long 0x6
-.space 12
-.long 0x7
-.space 16
-.globl y
-.align 3
-y:
-.quad x
-.quad x+20
-.quad x+40
-.quad 0x0
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4006000,-64
-.frame $sp,80,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $26,16($sp)
-.prologue 1
-mov $31,$13
-br L.8
-L.5:
-mov $31,$14
-br L.12
-L.9:
-lda $16,L.13
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,3,$25
-ldq $25,y($25)
-addq $27,$25,$27
-ldl $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.10:
-lda $14,1($14)
-L.12:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-sll $13,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,3,$25
-ldq $25,y($25)
-addq $27,$25,$27
-ldl $27,($27)
-cmpeq $27,$31,$23
-beq $23,L.9
-lda $16,L.14
-jsr $26,printf
-ldgp $gp,0($26)
-L.6:
-lda $13,1($13)
-L.8:
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-ldq $27,y($27)
-cmpeq $27,$31,$23
-beq $23,L.5
-jsr $26,f
-ldgp $gp,0($26)
-ldq $16,wordlist
-jsr $26,g
-ldgp $gp,0($26)
-mov $31,$0
-L.4:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end main
-.sdata
-.align 3
-L.16:
-.quad L.17
-.quad L.18
-.quad L.19
-.quad L.20
-.quad 0x0
-.globl f
-.text
-.text
-.ent f
-f:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-lda $14,L.16
-br L.24
-L.21:
-lda $16,L.25
-ldq $17,($14)
-jsr $26,printf
-ldgp $gp,0($26)
-L.22:
-lda $14,8($14)
-L.24:
-ldq $27,($14)
-cmpeq $27,$31,$23
-beq $23,L.21
-mov $31,$0
-L.15:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end f
-.globl g
-.text
-.ent g
-g:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4006000,-64
-.frame $sp,80,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $26,16($sp)
-mov $16,$14
-.prologue 1
-br L.30
-L.27:
-mov $31,$13
-br L.34
-L.31:
-lda $16,L.35
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$14,$27
-ldl $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.32:
-lda $13,1($13)
-L.34:
-mov $13,$27
-lda $25,3
-cmpult $27,$25,$23
-bne $23,L.31
-lda $16,L.25
-lda $17,12($14)
-jsr $26,printf
-ldgp $gp,0($26)
-L.28:
-lda $14,20($14)
-L.30:
-ldl $27,($14)
-cmpeq $27,$31,$23
-beq $23,L.27
-jsr $26,h
-ldgp $gp,0($26)
-mov $31,$0
-L.26:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end g
-.globl h
-.text
-.ent h
-h:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-mov $31,$14
-br L.40
-L.37:
-lda $16,L.41
-lda $27,20
-sll $14,8*(8-4),$25
-sra $25,8*(8-4),$25
-mulq $27,$25,$27
-ldl $17,words($27)
-ldl $18,words+4($27)
-ldl $19,words+8($27)
-lda $20,words+12($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.38:
-lda $14,1($14)
-L.40:
-mov $14,$27
-lda $25,5
-cmpult $27,$25,$23
-bne $23,L.37
-mov $31,$0
-L.36:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end h
-.rdata
-.align 0
-L.41:
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.35:
-.byte 37
-.byte 100
-.byte 32
-.byte 0
-.align 0
-L.25:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.20:
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.byte 0
-.align 0
-L.19:
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 0
-L.18:
-.byte 102
-.byte 111
-.byte 114
-.byte 0
-.align 0
-L.17:
-.byte 105
-.byte 102
-.byte 0
-.align 0
-L.14:
-.byte 10
-.byte 0
-.align 0
-L.13:
-.byte 32
-.byte 37
-.byte 100
-.byte 0
+.sdata
+.globl words
+.align 2
+words:
+.long 0x1
+.long 0x2
+.long 0x3
+.byte 105
+.byte 102
+.byte 0
+.space 3
+.space 2
+.long 0x4
+.long 0x5
+.space 4
+.byte 102
+.byte 111
+.byte 114
+.space 3
+.space 2
+.long 0x6
+.long 0x7
+.long 0x8
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.space 1
+.space 2
+.long 0x9
+.long 0xa
+.long 0xb
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.space 1
+.space 2
+.long 0x0
+.space 8
+.space 8
+.globl wordlist
+.align 3
+wordlist:
+.quad words
+.globl x
+.align 2
+x:
+.long 0x1
+.long 0x2
+.long 0x3
+.long 0x4
+.long 0x0
+.long 0x5
+.long 0x6
+.space 12
+.long 0x7
+.space 16
+.globl y
+.align 3
+y:
+.quad x
+.quad x+20
+.quad x+40
+.quad 0x0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4006000,-64
+.frame $sp,80,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $26,16($sp)
+.prologue 1
+mov $31,$13
+br L.8
+L.5:
+mov $31,$14
+br L.12
+L.9:
+lda $16,L.13
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,3,$25
+ldq $25,y($25)
+addq $27,$25,$27
+ldl $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.10:
+lda $14,1($14)
+L.12:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+sll $13,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,3,$25
+ldq $25,y($25)
+addq $27,$25,$27
+ldl $27,($27)
+cmpeq $27,$31,$23
+beq $23,L.9
+lda $16,L.14
+jsr $26,printf
+ldgp $gp,0($26)
+L.6:
+lda $13,1($13)
+L.8:
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+ldq $27,y($27)
+cmpeq $27,$31,$23
+beq $23,L.5
+jsr $26,f
+ldgp $gp,0($26)
+ldq $16,wordlist
+jsr $26,g
+ldgp $gp,0($26)
+mov $31,$0
+L.4:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end main
+.sdata
+.align 3
+L.16:
+.quad L.17
+.quad L.18
+.quad L.19
+.quad L.20
+.quad 0x0
+.globl f
+.text
+.text
+.ent f
+f:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+lda $14,L.16
+br L.24
+L.21:
+lda $16,L.25
+ldq $17,($14)
+jsr $26,printf
+ldgp $gp,0($26)
+L.22:
+lda $14,8($14)
+L.24:
+ldq $27,($14)
+cmpeq $27,$31,$23
+beq $23,L.21
+mov $31,$0
+L.15:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end f
+.globl g
+.text
+.ent g
+g:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4006000,-64
+.frame $sp,80,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $26,16($sp)
+mov $16,$14
+.prologue 1
+br L.30
+L.27:
+mov $31,$13
+br L.34
+L.31:
+lda $16,L.35
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$14,$27
+ldl $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.32:
+lda $13,1($13)
+L.34:
+mov $13,$27
+lda $25,3
+cmpult $27,$25,$23
+bne $23,L.31
+lda $16,L.25
+lda $17,12($14)
+jsr $26,printf
+ldgp $gp,0($26)
+L.28:
+lda $14,20($14)
+L.30:
+ldl $27,($14)
+cmpeq $27,$31,$23
+beq $23,L.27
+jsr $26,h
+ldgp $gp,0($26)
+mov $31,$0
+L.26:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end g
+.globl h
+.text
+.ent h
+h:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+mov $31,$14
+br L.40
+L.37:
+lda $16,L.41
+lda $27,20
+sll $14,8*(8-4),$25
+sra $25,8*(8-4),$25
+mulq $27,$25,$27
+ldl $17,words($27)
+ldl $18,words+4($27)
+ldl $19,words+8($27)
+lda $20,words+12($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.38:
+lda $14,1($14)
+L.40:
+mov $14,$27
+lda $25,5
+cmpult $27,$25,$23
+bne $23,L.37
+mov $31,$0
+L.36:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end h
+.rdata
+.align 0
+L.41:
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.35:
+.byte 37
+.byte 100
+.byte 32
+.byte 0
+.align 0
+L.25:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.20:
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.byte 0
+.align 0
+L.19:
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 0
+L.18:
+.byte 102
+.byte 111
+.byte 114
+.byte 0
+.align 0
+L.17:
+.byte 105
+.byte 102
+.byte 0
+.align 0
+L.14:
+.byte 10
+.byte 0
+.align 0
+L.13:
+.byte 32
+.byte 37
+.byte 100
+.byte 0
diff --git a/lcc/alpha/osf/tst/limits.1bk b/lcc/alpha/osf/tst/limits.1bk
index 2bc818a..2b1efe5 100755
--- a/lcc/alpha/osf/tst/limits.1bk
+++ b/lcc/alpha/osf/tst/limits.1bk
@@ -1,14 +1,14 @@
-UCHAR_MAX: 000000ff=255
-USHRT_MAX: 0000ffff=65535
-UINT_MAX: ffffffff=-1
-ULONG_MAX: ffffffffffffffff=-1
-CHAR_MAX: 0000007f=127
-SCHAR_MAX: 0000007f=127
-SHRT_MAX: 00007fff=32767
-INT_MAX: 7fffffff=2147483647
-LONG_MAX: 7fffffffffffffff=9223372036854775807
-CHAR_MIN: ffffff80=-128
-SCHAR_MIN: ffffff80=-128
-SHRT_MIN: ffff8000=-32768
-INT_MIN: 80000000=-2147483648
-LONG_MIN: 8000000000000000=-9223372036854775808
+UCHAR_MAX: 000000ff=255
+USHRT_MAX: 0000ffff=65535
+UINT_MAX: ffffffff=-1
+ULONG_MAX: ffffffffffffffff=-1
+CHAR_MAX: 0000007f=127
+SCHAR_MAX: 0000007f=127
+SHRT_MAX: 00007fff=32767
+INT_MAX: 7fffffff=2147483647
+LONG_MAX: 7fffffffffffffff=9223372036854775807
+CHAR_MIN: ffffff80=-128
+SCHAR_MIN: ffffff80=-128
+SHRT_MIN: ffff8000=-32768
+INT_MIN: 80000000=-2147483648
+LONG_MIN: 8000000000000000=-9223372036854775808
diff --git a/lcc/alpha/osf/tst/limits.sbk b/lcc/alpha/osf/tst/limits.sbk
index 811ce42..3e5e644 100755
--- a/lcc/alpha/osf/tst/limits.sbk
+++ b/lcc/alpha/osf/tst/limits.sbk
@@ -1,405 +1,405 @@
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-lda $16,L.2
-lda $27,255
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.3
-lda $27,65535
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.4
-lda $27,0xffffffff
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.5
-lda $27,0xffffffffffffffff
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.6
-lda $27,127
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.7
-lda $27,127
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.8
-lda $27,32767
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.9
-lda $27,2147483647
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.10
-lda $27,9223372036854775807
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.11
-lda $27,-128
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.12
-lda $27,-128
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.13
-lda $27,-32768
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.14
-lda $27,-2147483648
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.15
-lda $27,-9223372036854775808
-mov $27,$17
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.1:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end main
-.rdata
-.align 0
-L.15:
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.14:
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.13:
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.12:
-.byte 83
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.11:
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.10:
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.9:
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.8:
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.7:
-.byte 83
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.6:
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.5:
-.byte 85
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.4:
-.byte 85
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.3:
-.byte 85
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.2:
-.byte 85
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+lda $16,L.2
+lda $27,255
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.3
+lda $27,65535
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.4
+lda $27,0xffffffff
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.5
+lda $27,0xffffffffffffffff
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.6
+lda $27,127
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.7
+lda $27,127
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.8
+lda $27,32767
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.9
+lda $27,2147483647
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.10
+lda $27,9223372036854775807
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.11
+lda $27,-128
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.12
+lda $27,-128
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.13
+lda $27,-32768
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.14
+lda $27,-2147483648
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.15
+lda $27,-9223372036854775808
+mov $27,$17
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.1:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end main
+.rdata
+.align 0
+L.15:
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.14:
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.13:
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.12:
+.byte 83
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.11:
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.10:
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.9:
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.8:
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.7:
+.byte 83
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.6:
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.5:
+.byte 85
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.4:
+.byte 85
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.3:
+.byte 85
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.2:
+.byte 85
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
diff --git a/lcc/alpha/osf/tst/paranoia.1bk b/lcc/alpha/osf/tst/paranoia.1bk
index c74a883..d947458 100755
--- a/lcc/alpha/osf/tst/paranoia.1bk
+++ b/lcc/alpha/osf/tst/paranoia.1bk
@@ -1,195 +1,195 @@
-Lest this program stop prematurely, i.e. before displaying
-
- `END OF TEST',
-
-try to persuade the computer NOT to terminate execution when an
-error like Over/Underflow or Division by Zero occurs, but rather
-to persevere with a surrogate value after, perhaps, displaying some
-warning. If persuasion avails naught, don't despair but run this
-program anyway to see how many milestones it passes, and then
-amend it to make further progress.
-
-Answer questions with Y, y, N or n (unless otherwise indicated).
-
-
-Diagnosis resumes after milestone Number 0 Page: 1
-
-Users are invited to help debug and augment this program so it will
-cope with unanticipated and newly uncovered arithmetic pathologies.
-
-Please send suggestions and interesting results to
- Richard Karpinski
- Computer Center U-76
- University of California
- San Francisco, CA 94143-0704, USA
-
-In doing so, please include the following information:
- Precision: double;
- Version: 10 February 1989;
- Computer:
-
- Compiler:
-
- Optimization level:
-
- Other relevant compiler options:
-
-Diagnosis resumes after milestone Number 1 Page: 2
-
-Running this program should reveal these characteristics:
- Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
- Precision = number of significant digits carried.
- U2 = Radix/Radix^Precision = One Ulp
- (OneUlpnit in the Last Place) of 1.000xxx .
- U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
- Adequacy of guard digits for Mult., Div. and Subt.
- Whether arithmetic is chopped, correctly rounded, or something else
- for Mult., Div., Add/Subt. and Sqrt.
- Whether a Sticky Bit used correctly for rounding.
- UnderflowThreshold = an underflow threshold.
- E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
- V = an overflow threshold, roughly.
- V0 tells, roughly, whether Infinity is represented.
- Comparisions are checked for consistency with subtraction
- and for contamination with pseudo-zeros.
- Sqrt is tested. Y^X is not tested.
- Extra-precise subexpressions are revealed but NOT YET tested.
- Decimal-Binary conversion is NOT YET tested for accuracy.
-
-Diagnosis resumes after milestone Number 2 Page: 3
-
-The program attempts to discriminate among
- FLAWs, like lack of a sticky bit,
- Serious DEFECTs, like lack of a guard digit, and
- FAILUREs, like 2+2 == 5 .
-Failures may confound subsequent diagnoses.
-
-The diagnostic capabilities of this program go beyond an earlier
-program called `MACHAR', which can be found at the end of the
-book `Software Manual for the Elementary Functions' (1980) by
-W. J. Cody and W. Waite. Although both programs try to discover
-the Radix, Precision and range (over/underflow thresholds)
-of the arithmetic, this program tries to cope with a wider variety
-of pathologies, and to say how well the arithmetic is implemented.
-
-The program is based upon a conventional radix representation for
-floating-point numbers, but also allows logarithmic encoding
-as used by certain early WANG machines.
-
-BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
-see source comments for more history.
-
-Diagnosis resumes after milestone Number 3 Page: 4
-
-Program is now RUNNING tests on small integers:
--1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
-
-Searching for Radix and Precision.
-Radix = 2.000000 .
-Closest relative separation found is U1 = 1.1102230e-16 .
-
-Recalculating radix and precision
- confirms closest relative separation U1 .
-Radix confirmed.
-The number of significant digits of the Radix is 53.000000 .
-
-Diagnosis resumes after milestone Number 30 Page: 5
-
-Subtraction appears to be normalized, as it should be.
-Checking for guard digit in *, /, and -.
- *, /, and - appear to have guard digits, as they should.
-
-Diagnosis resumes after milestone Number 40 Page: 6
-
-Checking rounding on multiply, divide and add/subtract.
-Multiplication appears to round correctly.
-Division appears to round correctly.
-Addition/Subtraction appears to round correctly.
-Checking for sticky bit.
-Sticky bit apparently used correctly.
-
-Does Multiplication commute? Testing on 20 random pairs.
- No failures found in 20 integer pairs.
-
-Running test of square root(x).
-Testing if sqrt(X * X) == X for 20 Integers X.
-Test for sqrt monotonicity.
-sqrt has passed a test for Monotonicity.
-Testing whether sqrt is rounded or chopped.
-Square root appears to be correctly rounded.
-
-Diagnosis resumes after milestone Number 90 Page: 7
-
-Testing powers Z^i for small Integers Z and i.
-... no discrepancis found.
-
-Seeking Underflow thresholds UfThold and E0.
-Smallest strictly positive number found is E0 = 2.22507e-308 .
-Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
-What the machine gets for (Z + Z) / Z is 2.00000000000000000e+00 .
-This is O.K., provided Over/Underflow has NOT just been signaled.
-
-Diagnosis resumes after milestone Number 120 Page: 8
-
-
-FLAW: X = 3.05947655544740190e-308
- is not equal to Z = 2.22507385850720140e-308 .
-yet X - Z yields 0.00000000000000000e+00 .
- Should this NOT signal Underflow, this is a SERIOUS DEFECT
-that causes confusion when innocent statements like
- if (X == Z) ... else ... (f(X) - f(Z)) / (X - Z) ...
-encounter Division by Zero although actually
-X / Z = 1 + 0.375 .
-The Underflow threshold is 2.22507385850720140e-308, below which
-calculation may suffer larger Relative error than merely roundoff.
-Since underflow occurs below the threshold
-UfThold = (2.00000000000000000e+00) ^ (-1.02200000000000000e+03)
-only underflow should afflict the expression
- (2.00000000000000000e+00) ^ (-1.02200000000000000e+03);
-actually calculating yields: 0.00000000000000000e+00 .
-This computed value is O.K.
-
-Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065220e+00 as X -> 1.
-Accuracy seems adequate.
-Testing powers Z^Q at four nearly extreme values.
- ... no discrepancies found.
-
-
-Diagnosis resumes after milestone Number 160 Page: 9
-
-Searching for Overflow threshold:
-This may generate an error.
-
-* * * FLOATING-POINT ERROR * * *
-Can `Z = -Y' overflow?
-Trying it on Y = -8.98846567431157950e+307 .
-Seems O.K.
-Overflow threshold is V = 1.79769313486231570e+308 .
-There is no saturation value because the system traps on overflow.
-No Overflow should be signaled for V * 1 = 1.79769313486231570e+308
- nor for V / 1 = 1.79769313486231570e+308 .
-Any overflow signal separating this * from the one
-above is a DEFECT.
-
-
-Diagnosis resumes after milestone Number 190 Page: 10
-
-
-What message and/or values does Division by Zero produce?
- Trying to compute 1 / 0 produces ...
-* * * FLOATING-POINT ERROR * * *
-
- Trying to compute 0 / 0 produces ...
-* * * FLOATING-POINT ERROR * * *
-
-Diagnosis resumes after milestone Number 220 Page: 11
-
-
-
-No failures, defects nor flaws have been discovered.
-Rounding appears to conform to the proposed IEEE standard P754,
-except for possibly Double Rounding during Gradual Underflow.
-The arithmetic diagnosed appears to be Excellent!
-
-A total of 3 floating point exceptions were registered.
-END OF TEST.
+Lest this program stop prematurely, i.e. before displaying
+
+ `END OF TEST',
+
+try to persuade the computer NOT to terminate execution when an
+error like Over/Underflow or Division by Zero occurs, but rather
+to persevere with a surrogate value after, perhaps, displaying some
+warning. If persuasion avails naught, don't despair but run this
+program anyway to see how many milestones it passes, and then
+amend it to make further progress.
+
+Answer questions with Y, y, N or n (unless otherwise indicated).
+
+
+Diagnosis resumes after milestone Number 0 Page: 1
+
+Users are invited to help debug and augment this program so it will
+cope with unanticipated and newly uncovered arithmetic pathologies.
+
+Please send suggestions and interesting results to
+ Richard Karpinski
+ Computer Center U-76
+ University of California
+ San Francisco, CA 94143-0704, USA
+
+In doing so, please include the following information:
+ Precision: double;
+ Version: 10 February 1989;
+ Computer:
+
+ Compiler:
+
+ Optimization level:
+
+ Other relevant compiler options:
+
+Diagnosis resumes after milestone Number 1 Page: 2
+
+Running this program should reveal these characteristics:
+ Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
+ Precision = number of significant digits carried.
+ U2 = Radix/Radix^Precision = One Ulp
+ (OneUlpnit in the Last Place) of 1.000xxx .
+ U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
+ Adequacy of guard digits for Mult., Div. and Subt.
+ Whether arithmetic is chopped, correctly rounded, or something else
+ for Mult., Div., Add/Subt. and Sqrt.
+ Whether a Sticky Bit used correctly for rounding.
+ UnderflowThreshold = an underflow threshold.
+ E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
+ V = an overflow threshold, roughly.
+ V0 tells, roughly, whether Infinity is represented.
+ Comparisions are checked for consistency with subtraction
+ and for contamination with pseudo-zeros.
+ Sqrt is tested. Y^X is not tested.
+ Extra-precise subexpressions are revealed but NOT YET tested.
+ Decimal-Binary conversion is NOT YET tested for accuracy.
+
+Diagnosis resumes after milestone Number 2 Page: 3
+
+The program attempts to discriminate among
+ FLAWs, like lack of a sticky bit,
+ Serious DEFECTs, like lack of a guard digit, and
+ FAILUREs, like 2+2 == 5 .
+Failures may confound subsequent diagnoses.
+
+The diagnostic capabilities of this program go beyond an earlier
+program called `MACHAR', which can be found at the end of the
+book `Software Manual for the Elementary Functions' (1980) by
+W. J. Cody and W. Waite. Although both programs try to discover
+the Radix, Precision and range (over/underflow thresholds)
+of the arithmetic, this program tries to cope with a wider variety
+of pathologies, and to say how well the arithmetic is implemented.
+
+The program is based upon a conventional radix representation for
+floating-point numbers, but also allows logarithmic encoding
+as used by certain early WANG machines.
+
+BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
+see source comments for more history.
+
+Diagnosis resumes after milestone Number 3 Page: 4
+
+Program is now RUNNING tests on small integers:
+-1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
+
+Searching for Radix and Precision.
+Radix = 2.000000 .
+Closest relative separation found is U1 = 1.1102230e-16 .
+
+Recalculating radix and precision
+ confirms closest relative separation U1 .
+Radix confirmed.
+The number of significant digits of the Radix is 53.000000 .
+
+Diagnosis resumes after milestone Number 30 Page: 5
+
+Subtraction appears to be normalized, as it should be.
+Checking for guard digit in *, /, and -.
+ *, /, and - appear to have guard digits, as they should.
+
+Diagnosis resumes after milestone Number 40 Page: 6
+
+Checking rounding on multiply, divide and add/subtract.
+Multiplication appears to round correctly.
+Division appears to round correctly.
+Addition/Subtraction appears to round correctly.
+Checking for sticky bit.
+Sticky bit apparently used correctly.
+
+Does Multiplication commute? Testing on 20 random pairs.
+ No failures found in 20 integer pairs.
+
+Running test of square root(x).
+Testing if sqrt(X * X) == X for 20 Integers X.
+Test for sqrt monotonicity.
+sqrt has passed a test for Monotonicity.
+Testing whether sqrt is rounded or chopped.
+Square root appears to be correctly rounded.
+
+Diagnosis resumes after milestone Number 90 Page: 7
+
+Testing powers Z^i for small Integers Z and i.
+... no discrepancis found.
+
+Seeking Underflow thresholds UfThold and E0.
+Smallest strictly positive number found is E0 = 2.22507e-308 .
+Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
+What the machine gets for (Z + Z) / Z is 2.00000000000000000e+00 .
+This is O.K., provided Over/Underflow has NOT just been signaled.
+
+Diagnosis resumes after milestone Number 120 Page: 8
+
+
+FLAW: X = 3.05947655544740190e-308
+ is not equal to Z = 2.22507385850720140e-308 .
+yet X - Z yields 0.00000000000000000e+00 .
+ Should this NOT signal Underflow, this is a SERIOUS DEFECT
+that causes confusion when innocent statements like
+ if (X == Z) ... else ... (f(X) - f(Z)) / (X - Z) ...
+encounter Division by Zero although actually
+X / Z = 1 + 0.375 .
+The Underflow threshold is 2.22507385850720140e-308, below which
+calculation may suffer larger Relative error than merely roundoff.
+Since underflow occurs below the threshold
+UfThold = (2.00000000000000000e+00) ^ (-1.02200000000000000e+03)
+only underflow should afflict the expression
+ (2.00000000000000000e+00) ^ (-1.02200000000000000e+03);
+actually calculating yields: 0.00000000000000000e+00 .
+This computed value is O.K.
+
+Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065220e+00 as X -> 1.
+Accuracy seems adequate.
+Testing powers Z^Q at four nearly extreme values.
+ ... no discrepancies found.
+
+
+Diagnosis resumes after milestone Number 160 Page: 9
+
+Searching for Overflow threshold:
+This may generate an error.
+
+* * * FLOATING-POINT ERROR * * *
+Can `Z = -Y' overflow?
+Trying it on Y = -8.98846567431157950e+307 .
+Seems O.K.
+Overflow threshold is V = 1.79769313486231570e+308 .
+There is no saturation value because the system traps on overflow.
+No Overflow should be signaled for V * 1 = 1.79769313486231570e+308
+ nor for V / 1 = 1.79769313486231570e+308 .
+Any overflow signal separating this * from the one
+above is a DEFECT.
+
+
+Diagnosis resumes after milestone Number 190 Page: 10
+
+
+What message and/or values does Division by Zero produce?
+ Trying to compute 1 / 0 produces ...
+* * * FLOATING-POINT ERROR * * *
+
+ Trying to compute 0 / 0 produces ...
+* * * FLOATING-POINT ERROR * * *
+
+Diagnosis resumes after milestone Number 220 Page: 11
+
+
+
+No failures, defects nor flaws have been discovered.
+Rounding appears to conform to the proposed IEEE standard P754,
+except for possibly Double Rounding during Gradual Underflow.
+The arithmetic diagnosed appears to be Excellent!
+
+A total of 3 floating point exceptions were registered.
+END OF TEST.
diff --git a/lcc/alpha/osf/tst/paranoia.2bk b/lcc/alpha/osf/tst/paranoia.2bk
index f6ddf16..2718174 100755
--- a/lcc/alpha/osf/tst/paranoia.2bk
+++ b/lcc/alpha/osf/tst/paranoia.2bk
@@ -1,16 +1,16 @@
-tst/paranoia.c:1867: warning: missing return value
-tst/paranoia.c:1874: warning: missing return value
-tst/paranoia.c:1884: warning: missing return value
-tst/paranoia.c:1924: warning: missing return value
-tst/paranoia.c:1939: warning: missing return value
-tst/paranoia.c:1956: warning: missing return value
-tst/paranoia.c:1975: warning: missing return value
-tst/paranoia.c:1988: warning: missing return value
-tst/paranoia.c:1995: warning: missing return value
-tst/paranoia.c:2055: warning: missing return value
-tst/paranoia.c:2062: warning: missing return value
-tst/paranoia.c:2070: warning: missing return value
-tst/paranoia.c:2087: warning: missing return value
-tst/paranoia.c:2115: warning: missing return value
-tst/paranoia.c:2144: warning: missing return value
-tst/paranoia.c:2173: warning: missing return value
+tst/paranoia.c:1867: warning: missing return value
+tst/paranoia.c:1874: warning: missing return value
+tst/paranoia.c:1884: warning: missing return value
+tst/paranoia.c:1924: warning: missing return value
+tst/paranoia.c:1939: warning: missing return value
+tst/paranoia.c:1956: warning: missing return value
+tst/paranoia.c:1975: warning: missing return value
+tst/paranoia.c:1988: warning: missing return value
+tst/paranoia.c:1995: warning: missing return value
+tst/paranoia.c:2055: warning: missing return value
+tst/paranoia.c:2062: warning: missing return value
+tst/paranoia.c:2070: warning: missing return value
+tst/paranoia.c:2087: warning: missing return value
+tst/paranoia.c:2115: warning: missing return value
+tst/paranoia.c:2144: warning: missing return value
+tst/paranoia.c:2173: warning: missing return value
diff --git a/lcc/alpha/osf/tst/paranoia.sbk b/lcc/alpha/osf/tst/paranoia.sbk
index da869df..faa3dc5 100755
--- a/lcc/alpha/osf/tst/paranoia.sbk
+++ b/lcc/alpha/osf/tst/paranoia.sbk
@@ -1,19291 +1,19291 @@
-.sdata
-.globl Zero
-.align 3
-Zero:
-.long 0x0
-.long 0x0
-.globl Half
-.align 3
-Half:
-.long 0x0
-.long 0x3fe00000
-.globl One
-.align 3
-One:
-.long 0x0
-.long 0x3ff00000
-.globl Two
-.align 3
-Two:
-.long 0x0
-.long 0x40000000
-.globl Three
-.align 3
-Three:
-.long 0x0
-.long 0x40080000
-.globl Four
-.align 3
-Four:
-.long 0x0
-.long 0x40100000
-.globl Five
-.align 3
-Five:
-.long 0x0
-.long 0x40140000
-.globl Eight
-.align 3
-Eight:
-.long 0x0
-.long 0x40200000
-.globl Nine
-.align 3
-Nine:
-.long 0x0
-.long 0x40220000
-.globl TwentySeven
-.align 3
-TwentySeven:
-.long 0x0
-.long 0x403b0000
-.globl ThirtyTwo
-.align 3
-ThirtyTwo:
-.long 0x0
-.long 0x40400000
-.globl TwoForty
-.align 3
-TwoForty:
-.long 0x0
-.long 0x406e0000
-.globl MinusOne
-.align 3
-MinusOne:
-.long 0x0
-.long 0xbff00000
-.globl OneAndHalf
-.align 3
-OneAndHalf:
-.long 0x0
-.long 0x3ff80000
-.globl NoTrials
-.align 2
-NoTrials:
-.long 0x14
-.globl sigfpe
-.text
-.text
-.ent sigfpe
-sigfpe:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-.prologue 1
-ldl $27,fpecount
-lda $27,1($27)
-stl $27,fpecount
-lda $16,L.3
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,_iob+56
-jsr $26,fflush
-ldgp $gp,0($26)
-ldq $27,sigsave
-cmpeq $27,$31,$23
-bne $23,L.5
-lda $16,8
-ldq $17,sigsave
-jsr $26,signal
-ldgp $gp,0($26)
-stq $31,sigsave
-lda $16,ovfl_buf
-lda $17,1
-jsr $26,longjmp
-ldgp $gp,0($26)
-L.5:
-jsr $26,abort
-ldgp $gp,0($26)
-L.2:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end sigfpe
-.sdata
-.align 3
-L.756:
-.quad L.757
-.quad L.758
-.quad L.759
-.quad L.760
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-256($sp)
-.mask 0x4007e00,-208
-.frame $sp,256,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $26,48($sp)
-.prologue 1
-ldt $f30,L.8
-stt $f30,Zero
-ldt $f30,L.9
-stt $f30,One
-ldt $f30,One
-addt $f30,$f30,$f29
-stt $f29,Two
-ldt $f29,Two
-addt $f29,$f30,$f28
-stt $f28,Three
-ldt $f28,Three
-addt $f28,$f30,$f27
-stt $f27,Four
-ldt $f27,Four
-addt $f27,$f30,$f26
-stt $f26,Five
-addt $f27,$f27,$f26
-stt $f26,Eight
-mult $f28,$f28,$f26
-stt $f26,Nine
-ldt $f26,Nine
-mult $f26,$f28,$f26
-stt $f26,TwentySeven
-ldt $f26,Eight
-mult $f27,$f26,$f26
-stt $f26,ThirtyTwo
-ldt $f26,Five
-mult $f27,$f26,$f26
-mult $f26,$f28,$f28
-mult $f28,$f27,$f28
-stt $f28,TwoForty
-negt $f30,$f28
-stt $f28,MinusOne
-divt $f30,$f29,$f29
-stt $f29,Half
-ldt $f29,Half
-addt $f30,$f29,$f30
-stt $f30,OneAndHalf
-stl $31,ErrCnt
-stl $31,ErrCnt+4
-stl $31,ErrCnt+8
-stl $31,ErrCnt+12
-lda $27,1
-stl $27,PageNo
-stl $31,Milestone
-lda $16,8
-lda $17,sigfpe
-jsr $26,signal
-ldgp $gp,0($26)
-jsr $26,Instructions
-ldgp $gp,0($26)
-jsr $26,Pause
-ldgp $gp,0($26)
-jsr $26,Heading
-ldgp $gp,0($26)
-jsr $26,Pause
-ldgp $gp,0($26)
-jsr $26,Characteristics
-ldgp $gp,0($26)
-jsr $26,Pause
-ldgp $gp,0($26)
-jsr $26,History
-ldgp $gp,0($26)
-jsr $26,Pause
-ldgp $gp,0($26)
-lda $27,7
-stl $27,Milestone
-lda $16,L.13
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$16
-ldt $f30,Zero
-addt $f30,$f30,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.16
-ldt $f29,One
-subt $f29,$f29,$f28
-cmpteq $f28,$f30,$f1
-fbeq $f1,L.16
-cmptle $f29,$f30,$f1
-fbne $f1,L.16
-addt $f29,$f29,$f30
-ldt $f29,Two
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.16
-lda $14,1
-br L.17
-L.16:
-mov $31,$14
-L.17:
-mov $14,$17
-lda $18,L.15
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,Zero
-negt $f30,$f30
-stt $f30,Z
-ldt $f30,Z
-ldt $f29,L.8
-cmpteq $f30,$f29,$f1
-fbne $f1,L.18
-ldl $27,ErrCnt
-lda $27,1($27)
-stl $27,ErrCnt
-lda $16,L.20
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,L.21
-stt $f30,U1
-ldt $f30,L.9
-stt $f30,Radix
-jsr $26,TstPtUf
-ldgp $gp,0($26)
-L.18:
-mov $31,$16
-ldt $f30,Three
-ldt $f29,Two
-ldt $f28,One
-addt $f29,$f28,$f27
-cmpteq $f30,$f27,$f1
-fbeq $f1,L.24
-ldt $f27,Four
-addt $f30,$f28,$f26
-cmpteq $f27,$f26,$f1
-fbeq $f1,L.24
-ldt $f26,Zero
-negt $f29,$f25
-mult $f29,$f25,$f29
-addt $f27,$f29,$f29
-cmpteq $f29,$f26,$f1
-fbeq $f1,L.24
-subt $f27,$f30,$f30
-subt $f30,$f28,$f30
-cmpteq $f30,$f26,$f1
-fbeq $f1,L.24
-lda $13,1
-br L.25
-L.24:
-mov $31,$13
-L.25:
-mov $13,$17
-lda $18,L.23
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,MinusOne
-stt $f30,-64+256($sp)
-ldt $f29,One
-ldt $f28,L.8
-subt $f28,$f29,$f28
-cmpteq $f30,$f28,$f1
-fbeq $f1,L.28
-ldt $f28,Zero
-addt $f30,$f29,$f27
-cmpteq $f27,$f28,$f1
-fbeq $f1,L.28
-addt $f29,$f30,$f27
-cmpteq $f27,$f28,$f1
-fbeq $f1,L.28
-fmov $f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-ldt $f29,Zero
-ldt $f28,-64+256($sp)
-addt $f28,$f0,$f30
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.28
-ldt $f30,MinusOne
-mult $f30,$f30,$f28
-addt $f30,$f28,$f30
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.28
-lda $12,1
-br L.29
-L.28:
-mov $31,$12
-L.29:
-mov $31,$16
-mov $12,$17
-lda $18,L.27
-jsr $26,TstCond
-ldgp $gp,0($26)
-mov $31,$16
-ldt $f30,Half
-ldt $f29,MinusOne
-addt $f30,$f29,$f29
-addt $f29,$f30,$f30
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.32
-lda $11,1
-br L.33
-L.32:
-mov $31,$11
-L.33:
-mov $11,$17
-lda $18,L.31
-jsr $26,TstCond
-ldgp $gp,0($26)
-lda $27,10
-stl $27,Milestone
-mov $31,$16
-ldt $f30,Nine
-ldt $f29,Three
-mult $f29,$f29,$f28
-cmpteq $f30,$f28,$f1
-fbeq $f1,L.36
-ldt $f28,TwentySeven
-mult $f30,$f29,$f30
-cmpteq $f28,$f30,$f1
-fbeq $f1,L.36
-ldt $f30,Eight
-ldt $f29,Four
-addt $f29,$f29,$f27
-cmpteq $f30,$f27,$f1
-fbeq $f1,L.36
-ldt $f27,ThirtyTwo
-mult $f30,$f29,$f30
-cmpteq $f27,$f30,$f1
-fbeq $f1,L.36
-subt $f27,$f28,$f30
-subt $f30,$f29,$f30
-ldt $f29,One
-subt $f30,$f29,$f30
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.36
-lda $10,1
-br L.37
-L.36:
-mov $31,$10
-L.37:
-mov $10,$17
-lda $18,L.35
-jsr $26,TstCond
-ldgp $gp,0($26)
-mov $31,$16
-ldt $f30,Five
-ldt $f29,Four
-ldt $f28,One
-addt $f29,$f28,$f28
-cmpteq $f30,$f28,$f1
-fbeq $f1,L.40
-ldt $f28,TwoForty
-ldt $f27,Three
-mult $f29,$f30,$f26
-mult $f26,$f27,$f26
-mult $f26,$f29,$f26
-cmpteq $f28,$f26,$f1
-fbeq $f1,L.40
-ldt $f26,Zero
-divt $f28,$f27,$f25
-mult $f29,$f29,$f24
-mult $f24,$f30,$f24
-subt $f25,$f24,$f25
-cmpteq $f25,$f26,$f1
-fbeq $f1,L.40
-divt $f28,$f29,$f25
-mult $f30,$f27,$f24
-mult $f24,$f29,$f24
-subt $f25,$f24,$f25
-cmpteq $f25,$f26,$f1
-fbeq $f1,L.40
-divt $f28,$f30,$f30
-mult $f29,$f27,$f28
-mult $f28,$f29,$f29
-subt $f30,$f29,$f30
-cmpteq $f30,$f26,$f1
-fbeq $f1,L.40
-lda $9,1
-br L.41
-L.40:
-mov $31,$9
-L.41:
-mov $9,$17
-lda $18,L.39
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldl $27,ErrCnt
-cmpeq $27,$31,$23
-beq $23,L.42
-lda $16,L.44
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-L.42:
-lda $16,L.46
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,One
-stt $f30,W
-L.47:
-ldt $f30,W
-addt $f30,$f30,$f30
-stt $f30,W
-ldt $f30,W
-ldt $f29,One
-addt $f30,$f29,$f28
-stt $f28,Y
-ldt $f28,Y
-subt $f28,$f30,$f30
-stt $f30,Z
-ldt $f30,Z
-subt $f30,$f29,$f30
-stt $f30,Y
-L.48:
-ldt $f16,Y
-jsr $26,fabs
-ldgp $gp,0($26)
-ldt $f29,MinusOne
-addt $f29,$f0,$f30
-ldt $f29,Zero
-cmptlt $f30,$f29,$f1
-fbne $f1,L.47
-ldt $f30,Zero
-stt $f30,Precision
-ldt $f30,One
-stt $f30,Y
-L.50:
-ldt $f30,W
-ldt $f29,Y
-addt $f30,$f29,$f28
-stt $f28,Radix
-addt $f29,$f29,$f29
-stt $f29,Y
-ldt $f29,Radix
-subt $f29,$f30,$f30
-stt $f30,Radix
-L.51:
-ldt $f30,Radix
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.50
-ldt $f30,Radix
-ldt $f29,Two
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.53
-ldt $f30,One
-stt $f30,Radix
-L.53:
-lda $16,L.55
-ldt $f17,Radix
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Radix
-ldt $f29,L.9
-cmpteq $f30,$f29,$f1
-fbne $f1,L.56
-ldt $f30,One
-stt $f30,W
-L.58:
-ldt $f30,One
-ldt $f29,Precision
-addt $f29,$f30,$f29
-stt $f29,Precision
-ldt $f29,W
-ldt $f28,Radix
-mult $f29,$f28,$f29
-stt $f29,W
-ldt $f29,W
-addt $f29,$f30,$f30
-stt $f30,Y
-L.59:
-ldt $f30,Y
-ldt $f29,W
-subt $f30,$f29,$f30
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbne $f1,L.58
-L.56:
-ldt $f30,One
-ldt $f29,W
-divt $f30,$f29,$f30
-stt $f30,U1
-ldt $f30,U1
-ldt $f29,Radix
-mult $f29,$f30,$f29
-stt $f29,U2
-lda $16,L.61
-fmov $f30,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.62
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Radix
-stt $f30,E0
-ldt $f30,U1
-stt $f30,E1
-ldt $f30,U2
-stt $f30,E9
-ldt $f30,Precision
-stt $f30,E3
-ldt $f30,Four
-ldt $f29,Three
-divt $f30,$f29,$f30
-stt $f30,X
-ldt $f30,X
-ldt $f29,One
-subt $f30,$f29,$f30
-stt $f30,Third
-ldt $f30,Third
-ldt $f29,Half
-subt $f29,$f30,$f29
-stt $f29,F6
-ldt $f29,F6
-addt $f29,$f29,$f29
-stt $f29,X
-ldt $f29,X
-subt $f29,$f30,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-stt $f0,X
-ldt $f30,X
-ldt $f29,U2
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.63
-ldt $f30,U2
-stt $f30,X
-L.63:
-L.65:
-ldt $f30,X
-stt $f30,U2
-ldt $f30,U2
-ldt $f29,Half
-mult $f29,$f30,$f29
-ldt $f28,ThirtyTwo
-mult $f28,$f30,$f28
-mult $f28,$f30,$f30
-addt $f29,$f30,$f30
-stt $f30,Y
-ldt $f30,One
-ldt $f29,Y
-addt $f30,$f29,$f29
-stt $f29,Y
-ldt $f29,Y
-subt $f29,$f30,$f30
-stt $f30,X
-L.66:
-ldt $f30,X
-ldt $f29,U2
-cmptle $f29,$f30,$f1
-fbne $f1,L.68
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.65
-L.68:
-ldt $f30,Two
-ldt $f29,Three
-divt $f30,$f29,$f30
-stt $f30,X
-ldt $f30,Half
-ldt $f29,X
-subt $f29,$f30,$f29
-stt $f29,F6
-ldt $f29,F6
-addt $f29,$f29,$f28
-stt $f28,Third
-ldt $f28,Third
-subt $f28,$f30,$f30
-stt $f30,X
-ldt $f30,X
-addt $f30,$f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-stt $f0,X
-ldt $f30,X
-ldt $f29,U1
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.69
-ldt $f30,U1
-stt $f30,X
-L.69:
-L.71:
-ldt $f30,X
-stt $f30,U1
-ldt $f30,Half
-ldt $f29,U1
-mult $f30,$f29,$f28
-ldt $f27,ThirtyTwo
-mult $f27,$f29,$f27
-mult $f27,$f29,$f29
-addt $f28,$f29,$f29
-stt $f29,Y
-ldt $f29,Y
-subt $f30,$f29,$f29
-stt $f29,Y
-ldt $f29,Y
-addt $f30,$f29,$f29
-stt $f29,X
-ldt $f29,X
-subt $f30,$f29,$f29
-stt $f29,Y
-ldt $f29,Y
-addt $f30,$f29,$f30
-stt $f30,X
-L.72:
-ldt $f30,X
-ldt $f29,U1
-cmptle $f29,$f30,$f1
-fbne $f1,L.74
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.71
-L.74:
-ldt $f30,U1
-ldt $f29,E1
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.75
-lda $16,L.77
-jsr $26,printf
-ldgp $gp,0($26)
-br L.76
-L.75:
-lda $16,L.78
-ldt $f17,U1
-jsr $26,printf
-ldgp $gp,0($26)
-L.76:
-ldt $f30,U1
-ldt $f29,One
-divt $f29,$f30,$f29
-stt $f29,W
-ldt $f29,Half
-subt $f29,$f30,$f28
-addt $f28,$f29,$f29
-stt $f29,F9
-ldt $f29,U2
-divt $f29,$f30,$f30
-ldt $f29,L.79
-addt $f30,$f29,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-stt $f0,Radix
-ldt $f30,Radix
-ldt $f29,E0
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.80
-lda $16,L.82
-jsr $26,printf
-ldgp $gp,0($26)
-br L.81
-L.80:
-lda $16,L.83
-ldt $f17,Radix
-jsr $26,printf
-ldgp $gp,0($26)
-L.81:
-lda $16,2
-ldt $f30,Eight
-ldt $f29,Radix
-addt $f30,$f30,$f30
-cmptle $f29,$f30,$f1
-fbeq $f1,L.86
-lda $27,1
-stl $27,-68+256($sp)
-br L.87
-L.86:
-stl $31,-68+256($sp)
-L.87:
-ldl $17,-68+256($sp)
-lda $18,L.85
-jsr $26,TstCond
-ldgp $gp,0($26)
-lda $16,3
-ldt $f30,Radix
-ldt $f29,Two
-cmpteq $f30,$f29,$f1
-fbne $f1,L.93
-ldt $f29,L.94
-cmpteq $f30,$f29,$f1
-fbne $f1,L.93
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.90
-L.93:
-lda $27,1
-stl $27,-72+256($sp)
-br L.91
-L.90:
-stl $31,-72+256($sp)
-L.91:
-ldl $17,-72+256($sp)
-lda $18,L.89
-jsr $26,TstCond
-ldgp $gp,0($26)
-lda $27,20
-stl $27,Milestone
-mov $31,$16
-ldt $f30,Half
-ldt $f29,F9
-subt $f29,$f30,$f29
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.97
-lda $27,1
-stl $27,-76+256($sp)
-br L.98
-L.97:
-stl $31,-76+256($sp)
-L.98:
-ldl $17,-76+256($sp)
-lda $18,L.96
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,F9
-stt $f30,X
-lda $27,1
-stl $27,I
-ldt $f30,Half
-ldt $f29,X
-subt $f29,$f30,$f29
-stt $f29,Y
-ldt $f29,Y
-subt $f29,$f30,$f30
-stt $f30,Z
-mov $31,$16
-ldt $f30,X
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.103
-ldt $f30,Z
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.101
-L.103:
-lda $27,1
-stl $27,-80+256($sp)
-br L.102
-L.101:
-stl $31,-80+256($sp)
-L.102:
-ldl $17,-80+256($sp)
-lda $18,L.100
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,One
-ldt $f29,U2
-addt $f30,$f29,$f28
-stt $f28,X
-stl $31,I
-lda $27,25
-stl $27,Milestone
-ldt $f28,Radix
-subt $f28,$f30,$f27
-stt $f27,BMinusU2
-ldt $f27,BMinusU2
-subt $f27,$f29,$f29
-addt $f29,$f30,$f29
-stt $f29,BMinusU2
-cmpteq $f28,$f30,$f1
-fbne $f1,L.104
-ldt $f16,U1
-jsr $26,log
-ldgp $gp,0($26)
-fmov $f0,$f30
-stt $f30,-88+256($sp)
-ldt $f16,Radix
-jsr $26,log
-ldgp $gp,0($26)
-ldt $f29,TwoForty
-negt $f29,$f29
-ldt $f28,-88+256($sp)
-mult $f29,$f28,$f29
-divt $f29,$f0,$f30
-stt $f30,X
-ldt $f30,Half
-ldt $f29,X
-addt $f30,$f29,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-stt $f0,Y
-ldt $f30,X
-ldt $f29,Y
-subt $f30,$f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-ldt $f29,Four
-mult $f0,$f29,$f30
-ldt $f29,One
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.106
-ldt $f30,Y
-stt $f30,X
-L.106:
-ldt $f30,X
-ldt $f29,TwoForty
-divt $f30,$f29,$f30
-stt $f30,Precision
-ldt $f30,Half
-ldt $f29,Precision
-addt $f30,$f29,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-stt $f0,Y
-ldt $f30,Precision
-ldt $f29,Y
-subt $f30,$f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-ldt $f29,TwoForty
-mult $f0,$f29,$f30
-ldt $f29,Half
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.108
-ldt $f30,Y
-stt $f30,Precision
-L.108:
-L.104:
-ldt $f30,Precision
-stt $f30,-88+256($sp)
-fmov $f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,-88+256($sp)
-cmpteq $f29,$f0,$f1
-fbeq $f1,L.112
-ldt $f30,Radix
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.110
-L.112:
-lda $16,L.113
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.114
-jsr $26,printf
-ldgp $gp,0($26)
-L.110:
-ldt $f30,Radix
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.115
-lda $16,L.117
-jsr $26,printf
-ldgp $gp,0($26)
-br L.116
-L.115:
-lda $16,L.118
-ldt $f17,Precision
-jsr $26,printf
-ldgp $gp,0($26)
-L.116:
-lda $16,1
-ldt $f30,Nine
-ldt $f29,U2
-mult $f29,$f30,$f29
-mult $f29,$f30,$f30
-ldt $f29,TwoForty
-mult $f30,$f29,$f30
-ldt $f29,One
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.121
-lda $27,1
-stl $27,-92+256($sp)
-br L.122
-L.121:
-stl $31,-92+256($sp)
-L.122:
-ldl $17,-92+256($sp)
-lda $18,L.120
-jsr $26,TstCond
-ldgp $gp,0($26)
-lda $27,30
-stl $27,Milestone
-ldt $f30,Four
-ldt $f29,Three
-ldt $f28,One
-divt $f28,$f30,$f27
-divt $f30,$f29,$f30
-subt $f30,$f28,$f30
-subt $f30,$f27,$f30
-mult $f30,$f29,$f30
-subt $f30,$f27,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-stt $f0,X
-L.123:
-ldt $f30,X
-stt $f30,Z2
-ldt $f30,One
-ldt $f29,Z2
-ldt $f28,Half
-mult $f28,$f29,$f28
-ldt $f27,ThirtyTwo
-mult $f27,$f29,$f27
-mult $f27,$f29,$f29
-addt $f28,$f29,$f29
-addt $f30,$f29,$f29
-subt $f29,$f30,$f30
-stt $f30,X
-L.124:
-ldt $f30,X
-ldt $f29,Z2
-cmptle $f29,$f30,$f1
-fbne $f1,L.126
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.123
-L.126:
-ldt $f30,Three
-ldt $f29,Four
-divt $f30,$f29,$f28
-ldt $f27,Two
-divt $f27,$f30,$f27
-subt $f28,$f27,$f28
-mult $f28,$f30,$f30
-ldt $f28,One
-divt $f28,$f29,$f29
-subt $f30,$f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-stt $f0,Z
-stt $f0,Y
-stt $f0,X
-L.127:
-ldt $f30,Z
-stt $f30,Z1
-ldt $f30,One
-ldt $f29,Two
-divt $f30,$f29,$f30
-ldt $f29,Z1
-ldt $f28,Half
-mult $f28,$f29,$f28
-ldt $f27,ThirtyTwo
-mult $f27,$f29,$f27
-mult $f27,$f29,$f29
-addt $f28,$f29,$f29
-subt $f30,$f29,$f29
-addt $f29,$f30,$f29
-subt $f30,$f29,$f29
-addt $f29,$f30,$f30
-stt $f30,Z
-L.128:
-ldt $f30,Z
-ldt $f29,Z1
-cmptle $f29,$f30,$f1
-fbne $f1,L.130
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.127
-L.130:
-L.131:
-L.134:
-ldt $f30,Y
-stt $f30,Y1
-ldt $f30,Half
-ldt $f29,Y1
-mult $f30,$f29,$f28
-ldt $f27,ThirtyTwo
-mult $f27,$f29,$f27
-mult $f27,$f29,$f29
-addt $f28,$f29,$f29
-subt $f30,$f29,$f29
-addt $f29,$f30,$f29
-subt $f30,$f29,$f29
-addt $f29,$f30,$f30
-stt $f30,Y
-L.135:
-ldt $f30,Y
-ldt $f29,Y1
-cmptle $f29,$f30,$f1
-fbne $f1,L.137
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.134
-L.137:
-ldt $f30,X
-stt $f30,X1
-ldt $f30,X1
-ldt $f29,F9
-ldt $f28,Half
-mult $f28,$f30,$f28
-ldt $f27,ThirtyTwo
-mult $f27,$f30,$f27
-mult $f27,$f30,$f30
-addt $f28,$f30,$f30
-subt $f30,$f29,$f30
-addt $f30,$f29,$f30
-stt $f30,X
-L.132:
-ldt $f30,X
-ldt $f29,X1
-cmptle $f29,$f30,$f1
-fbne $f1,L.138
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.131
-L.138:
-ldt $f30,X1
-ldt $f29,Y1
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.141
-ldt $f29,Z1
-cmpteq $f30,$f29,$f1
-fbne $f1,L.139
-L.141:
-lda $16,1
-lda $17,L.142
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.143
-ldt $f17,X1
-ldt $f18,Y1
-ldt $f19,Z1
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.144
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.145
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.146
-jsr $26,notify
-ldgp $gp,0($26)
-ldt $f30,U1
-ldt $f29,X1
-cmpteq $f29,$f30,$f1
-fbne $f1,L.150
-ldt $f29,Y1
-cmpteq $f29,$f30,$f1
-fbne $f1,L.150
-ldt $f29,Z1
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.140
-L.150:
-lda $16,L.151
-jsr $26,printf
-ldgp $gp,0($26)
-br L.140
-L.139:
-ldt $f30,Z1
-ldt $f29,U1
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.154
-ldt $f30,Z2
-ldt $f29,U2
-cmpteq $f30,$f29,$f1
-fbne $f1,L.152
-L.154:
-ldt $f30,Z1
-ldt $f29,U1
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.157
-ldt $f30,Z2
-ldt $f29,U2
-cmptlt $f30,$f29,$f1
-fbne $f1,L.155
-L.157:
-mov $31,$16
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.159
-jsr $26,notify
-ldgp $gp,0($26)
-lda $16,L.160
-ldt $f30,U1
-fmov $f30,$f17
-ldt $f29,Z1
-subt $f29,$f30,$f18
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.161
-ldt $f30,U2
-fmov $f30,$f17
-ldt $f29,Z2
-subt $f29,$f30,$f18
-jsr $26,printf
-ldgp $gp,0($26)
-br L.156
-L.155:
-ldt $f30,Zero
-ldt $f29,Z1
-cmptle $f29,$f30,$f1
-fbne $f1,L.164
-ldt $f29,Z2
-cmptle $f29,$f30,$f1
-fbeq $f1,L.162
-L.164:
-lda $16,L.165
-ldt $f17,Radix
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.166
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.167
-ldt $f17,Z1
-ldt $f18,Z2
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.168
-jsr $26,notify
-ldgp $gp,0($26)
-L.162:
-ldt $f30,Z1
-ldt $f29,Z2
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.171
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbne $f1,L.169
-L.171:
-ldt $f30,Z1
-ldt $f29,U1
-divt $f30,$f29,$f30
-stt $f30,X
-ldt $f30,Z2
-ldt $f29,U2
-divt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,X
-cmptle $f30,$f29,$f1
-fbne $f1,L.172
-ldt $f30,Y
-stt $f30,X
-L.172:
-ldt $f16,X
-jsr $26,log
-ldgp $gp,0($26)
-negt $f0,$f30
-stt $f30,Q
-lda $16,L.174
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f16,Radix
-jsr $26,log
-ldgp $gp,0($26)
-fmov $f0,$f30
-lda $16,L.175
-ldt $f29,Q
-divt $f29,$f30,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f16,L.94
-jsr $26,log
-ldgp $gp,0($26)
-fmov $f0,$f30
-lda $16,L.176
-ldt $f29,Q
-divt $f29,$f30,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-L.169:
-lda $16,L.151
-jsr $26,printf
-ldgp $gp,0($26)
-L.156:
-L.152:
-L.140:
-jsr $26,Pause
-ldgp $gp,0($26)
-lda $27,35
-stl $27,Milestone
-ldt $f30,Radix
-ldt $f29,Two
-cmptlt $f30,$f29,$f1
-fbne $f1,L.177
-ldt $f30,Radix
-ldt $f29,W
-mult $f30,$f30,$f30
-divt $f29,$f30,$f30
-stt $f30,X
-ldt $f30,X
-ldt $f29,One
-addt $f30,$f29,$f29
-stt $f29,Y
-ldt $f29,Y
-subt $f29,$f30,$f30
-stt $f30,Z
-ldt $f30,Z
-ldt $f29,U2
-addt $f30,$f29,$f28
-stt $f28,T
-ldt $f28,T
-subt $f28,$f30,$f30
-stt $f30,X
-mov $31,$16
-ldt $f30,X
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.181
-lda $27,1
-stl $27,-96+256($sp)
-br L.182
-L.181:
-stl $31,-96+256($sp)
-L.182:
-ldl $17,-96+256($sp)
-lda $18,L.180
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,X
-ldt $f29,U2
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.183
-lda $16,L.185
-jsr $26,printf
-ldgp $gp,0($26)
-L.183:
-L.177:
-lda $16,L.186
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,F9
-ldt $f29,One
-mult $f30,$f29,$f28
-stt $f28,Y
-mult $f29,$f30,$f28
-stt $f28,Z
-ldt $f28,Half
-subt $f30,$f28,$f30
-stt $f30,X
-ldt $f30,X
-ldt $f27,Y
-subt $f27,$f28,$f27
-subt $f27,$f30,$f27
-stt $f27,Y
-ldt $f27,Z
-subt $f27,$f28,$f28
-subt $f28,$f30,$f30
-stt $f30,Z
-ldt $f30,U2
-addt $f29,$f30,$f28
-stt $f28,X
-ldt $f28,X
-ldt $f27,Radix
-mult $f28,$f27,$f26
-stt $f26,T
-mult $f27,$f28,$f28
-stt $f28,R
-ldt $f28,T
-subt $f28,$f27,$f28
-stt $f28,X
-mult $f27,$f30,$f30
-ldt $f28,X
-subt $f28,$f30,$f28
-stt $f28,X
-ldt $f28,R
-subt $f28,$f27,$f28
-stt $f28,T
-ldt $f28,T
-subt $f28,$f30,$f30
-stt $f30,T
-subt $f27,$f29,$f30
-ldt $f29,X
-mult $f29,$f30,$f29
-stt $f29,X
-ldt $f29,T
-mult $f29,$f30,$f30
-stt $f30,T
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.187
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.187
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.187
-ldt $f29,T
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.187
-lda $27,1
-stl $27,GMult
-br L.188
-L.187:
-mov $31,$27
-stl $27,GMult
-lda $16,1
-mov $27,$17
-lda $18,L.189
-jsr $26,TstCond
-ldgp $gp,0($26)
-L.188:
-ldt $f30,Radix
-ldt $f29,U2
-mult $f30,$f29,$f30
-stt $f30,Z
-ldt $f30,Z
-ldt $f29,One
-addt $f29,$f30,$f29
-stt $f29,X
-ldt $f29,X
-addt $f29,$f30,$f30
-mult $f29,$f29,$f29
-subt $f30,$f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-ldt $f29,U2
-subt $f0,$f29,$f30
-stt $f30,Y
-ldt $f30,One
-subt $f30,$f29,$f30
-stt $f30,X
-ldt $f30,X
-subt $f30,$f29,$f29
-mult $f30,$f30,$f30
-subt $f29,$f30,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-ldt $f29,U1
-subt $f0,$f29,$f30
-stt $f30,Z
-mov $31,$16
-ldt $f30,Zero
-ldt $f29,Y
-cmptle $f29,$f30,$f1
-fbeq $f1,L.192
-ldt $f29,Z
-cmptle $f29,$f30,$f1
-fbeq $f1,L.192
-lda $27,1
-stl $27,-96+256($sp)
-br L.193
-L.192:
-stl $31,-96+256($sp)
-L.193:
-ldl $17,-96+256($sp)
-lda $18,L.191
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,One
-ldt $f29,U2
-subt $f30,$f29,$f28
-stt $f28,Y
-addt $f30,$f29,$f29
-stt $f29,X
-ldt $f29,Y
-divt $f30,$f29,$f29
-stt $f29,Z
-ldt $f29,Z
-ldt $f28,X
-subt $f29,$f28,$f29
-stt $f29,Y
-ldt $f29,Three
-divt $f30,$f29,$f30
-stt $f30,X
-ldt $f30,Nine
-divt $f29,$f30,$f29
-stt $f29,Z
-ldt $f29,Z
-ldt $f28,X
-subt $f28,$f29,$f28
-stt $f28,X
-ldt $f28,TwentySeven
-divt $f30,$f28,$f30
-stt $f30,T
-ldt $f30,T
-subt $f29,$f30,$f30
-stt $f30,Z
-lda $16,2
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.196
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.196
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.196
-lda $27,1
-stl $27,-100+256($sp)
-br L.197
-L.196:
-stl $31,-100+256($sp)
-L.197:
-ldl $17,-100+256($sp)
-lda $18,L.195
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,F9
-ldt $f29,One
-divt $f30,$f29,$f28
-stt $f28,Y
-ldt $f28,Half
-subt $f30,$f28,$f30
-stt $f30,X
-ldt $f30,Y
-subt $f30,$f28,$f30
-ldt $f28,X
-subt $f30,$f28,$f30
-stt $f30,Y
-ldt $f30,U2
-addt $f29,$f30,$f30
-stt $f30,X
-ldt $f30,X
-divt $f30,$f29,$f29
-stt $f29,T
-ldt $f29,T
-subt $f29,$f30,$f30
-stt $f30,X
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.198
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.198
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.198
-lda $27,1
-stl $27,GDiv
-br L.199
-L.198:
-mov $31,$27
-stl $27,GDiv
-lda $16,1
-mov $27,$17
-lda $18,L.200
-jsr $26,TstCond
-ldgp $gp,0($26)
-L.199:
-ldt $f30,One
-ldt $f29,U2
-addt $f30,$f29,$f29
-divt $f30,$f29,$f30
-stt $f30,X
-ldt $f30,Half
-ldt $f29,X
-subt $f29,$f30,$f29
-subt $f29,$f30,$f30
-stt $f30,Y
-lda $16,1
-ldt $f30,Y
-ldt $f29,Zero
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.203
-lda $27,1
-stl $27,-104+256($sp)
-br L.204
-L.203:
-stl $31,-104+256($sp)
-L.204:
-ldl $17,-104+256($sp)
-lda $18,L.202
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,One
-ldt $f29,U2
-subt $f30,$f29,$f28
-stt $f28,X
-ldt $f28,Radix
-mult $f28,$f29,$f29
-addt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,X
-mult $f30,$f28,$f29
-stt $f29,Z
-ldt $f29,Y
-mult $f29,$f28,$f27
-stt $f27,T
-ldt $f27,Z
-divt $f27,$f28,$f27
-stt $f27,R
-ldt $f27,T
-divt $f27,$f28,$f28
-stt $f28,StickyBit
-ldt $f28,R
-subt $f28,$f30,$f30
-stt $f30,X
-ldt $f30,StickyBit
-subt $f30,$f29,$f30
-stt $f30,Y
-mov $31,$16
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.207
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.207
-lda $27,1
-stl $27,-108+256($sp)
-br L.208
-L.207:
-stl $31,-108+256($sp)
-L.208:
-ldl $17,-108+256($sp)
-lda $18,L.206
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,One
-ldt $f29,U1
-subt $f30,$f29,$f29
-stt $f29,Y
-ldt $f29,F9
-subt $f30,$f29,$f29
-stt $f29,X
-ldt $f29,Y
-subt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,Radix
-ldt $f29,U2
-subt $f30,$f29,$f29
-stt $f29,T
-ldt $f29,BMinusU2
-subt $f30,$f29,$f29
-stt $f29,Z
-ldt $f29,T
-subt $f30,$f29,$f30
-stt $f30,T
-ldt $f30,U1
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.209
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.209
-ldt $f30,U2
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.209
-ldt $f29,T
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.209
-lda $27,1
-stl $27,GAddSub
-br L.210
-L.209:
-mov $31,$27
-stl $27,GAddSub
-lda $16,1
-mov $27,$17
-lda $18,L.211
-jsr $26,TstCond
-ldgp $gp,0($26)
-L.210:
-ldt $f30,F9
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbne $f1,L.212
-subt $f30,$f29,$f30
-ldt $f29,Zero
-cmptlt $f30,$f29,$f1
-fbne $f1,L.212
-lda $16,1
-lda $17,L.214
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.215
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.216
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.217
-jsr $26,printf
-ldgp $gp,0($26)
-L.212:
-ldl $27,GMult
-cmpeq $27,1,$23
-beq $23,L.218
-ldl $27,GDiv
-cmpeq $27,1,$23
-beq $23,L.218
-ldl $27,GAddSub
-cmpeq $27,1,$23
-beq $23,L.218
-lda $16,L.220
-jsr $26,printf
-ldgp $gp,0($26)
-L.218:
-lda $27,40
-stl $27,Milestone
-jsr $26,Pause
-ldgp $gp,0($26)
-lda $16,L.221
-jsr $26,printf
-ldgp $gp,0($26)
-stl $31,RMult
-stl $31,RDiv
-stl $31,RAddSub
-ldt $f30,Two
-ldt $f29,Radix
-divt $f29,$f30,$f29
-stt $f29,RadixD2
-stt $f30,A1
-stl $31,Done
-L.222:
-ldt $f30,Radix
-stt $f30,AInvrse
-L.225:
-ldt $f30,AInvrse
-stt $f30,X
-ldt $f29,A1
-divt $f30,$f29,$f30
-stt $f30,AInvrse
-L.226:
-ldt $f16,AInvrse
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,AInvrse
-cmpteq $f0,$f29,$f1
-fbne $f1,L.225
-ldt $f30,X
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbne $f1,L.231
-ldt $f30,A1
-ldt $f29,Three
-cmptle $f30,$f29,$f1
-fbne $f1,L.229
-L.231:
-lda $27,1
-stl $27,-112+256($sp)
-br L.230
-L.229:
-stl $31,-112+256($sp)
-L.230:
-ldl $27,-112+256($sp)
-stl $27,Done
-ldl $27,Done
-cmpeq $27,$31,$23
-beq $23,L.232
-ldt $f30,Nine
-ldt $f29,One
-addt $f30,$f29,$f30
-stt $f30,A1
-L.232:
-L.223:
-ldl $27,Done
-cmpeq $27,$31,$23
-bne $23,L.222
-ldt $f30,X
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.234
-ldt $f30,Radix
-stt $f30,A1
-L.234:
-ldt $f30,A1
-ldt $f29,One
-divt $f29,$f30,$f29
-stt $f29,AInvrse
-stt $f30,X
-ldt $f30,AInvrse
-stt $f30,Y
-stl $31,Done
-L.236:
-ldt $f30,Half
-ldt $f29,X
-ldt $f28,Y
-mult $f29,$f28,$f29
-subt $f29,$f30,$f29
-stt $f29,Z
-mov $31,$16
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.241
-lda $27,1
-stl $27,-112+256($sp)
-br L.242
-L.241:
-stl $31,-112+256($sp)
-L.242:
-ldl $17,-112+256($sp)
-lda $18,L.240
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,X
-ldt $f29,Radix
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.244
-lda $27,1
-stl $27,-116+256($sp)
-br L.245
-L.244:
-stl $31,-116+256($sp)
-L.245:
-ldl $27,-116+256($sp)
-stl $27,Done
-ldt $f30,Radix
-stt $f30,X
-ldt $f30,One
-ldt $f29,X
-divt $f30,$f29,$f30
-stt $f30,Y
-L.237:
-ldl $27,Done
-cmpeq $27,$31,$23
-bne $23,L.236
-ldt $f30,One
-ldt $f29,U2
-addt $f30,$f29,$f28
-stt $f28,Y2
-subt $f30,$f29,$f30
-stt $f30,Y1
-ldt $f30,OneAndHalf
-subt $f30,$f29,$f28
-stt $f28,X
-addt $f30,$f29,$f28
-stt $f28,Y
-ldt $f28,X
-ldt $f27,Y2
-subt $f28,$f29,$f26
-mult $f26,$f27,$f26
-stt $f26,Z
-ldt $f26,Y
-ldt $f25,Y1
-mult $f26,$f25,$f24
-stt $f24,T
-ldt $f24,Z
-subt $f24,$f28,$f24
-stt $f24,Z
-ldt $f24,T
-subt $f24,$f28,$f24
-stt $f24,T
-mult $f28,$f27,$f28
-stt $f28,X
-addt $f26,$f29,$f29
-mult $f29,$f25,$f29
-stt $f29,Y
-ldt $f29,X
-subt $f29,$f30,$f29
-stt $f29,X
-ldt $f29,Y
-subt $f29,$f30,$f30
-stt $f30,Y
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.246
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.246
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.246
-ldt $f29,T
-cmptle $f29,$f30,$f1
-fbeq $f1,L.246
-ldt $f30,OneAndHalf
-ldt $f29,U2
-addt $f30,$f29,$f28
-ldt $f27,Y2
-mult $f28,$f27,$f26
-stt $f26,X
-subt $f30,$f29,$f30
-subt $f30,$f29,$f26
-stt $f26,Y
-addt $f28,$f29,$f28
-stt $f28,Z
-ldt $f28,Y1
-mult $f30,$f28,$f30
-stt $f30,T
-ldt $f30,Z
-addt $f30,$f29,$f26
-ldt $f25,X
-subt $f25,$f26,$f25
-stt $f25,X
-ldt $f25,Y
-mult $f25,$f28,$f24
-stt $f24,StickyBit
-mult $f30,$f27,$f30
-stt $f30,S
-ldt $f30,T
-subt $f30,$f25,$f30
-stt $f30,T
-subt $f29,$f25,$f30
-ldt $f25,StickyBit
-addt $f30,$f25,$f30
-stt $f30,Y
-ldt $f30,S
-addt $f26,$f29,$f26
-subt $f30,$f26,$f30
-stt $f30,Z
-addt $f27,$f29,$f30
-mult $f30,$f28,$f30
-stt $f30,StickyBit
-mult $f27,$f28,$f30
-stt $f30,Y1
-ldt $f30,StickyBit
-subt $f30,$f27,$f30
-stt $f30,StickyBit
-ldt $f30,Y1
-ldt $f29,Half
-subt $f30,$f29,$f30
-stt $f30,Y1
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.248
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.248
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.248
-ldt $f29,T
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.248
-ldt $f29,StickyBit
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.248
-ldt $f30,Y1
-ldt $f29,Half
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.248
-lda $27,1
-stl $27,RMult
-lda $16,L.250
-jsr $26,printf
-ldgp $gp,0($26)
-br L.249
-L.248:
-ldt $f30,U2
-ldt $f29,Zero
-ldt $f28,X
-addt $f28,$f30,$f28
-cmpteq $f28,$f29,$f1
-fbeq $f1,L.251
-ldt $f28,Y
-cmptlt $f28,$f29,$f1
-fbeq $f1,L.251
-ldt $f28,Z
-addt $f28,$f30,$f28
-cmpteq $f28,$f29,$f1
-fbeq $f1,L.251
-ldt $f28,T
-cmptlt $f28,$f29,$f1
-fbeq $f1,L.251
-ldt $f28,StickyBit
-addt $f28,$f30,$f30
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.251
-ldt $f30,Y1
-ldt $f29,Half
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.251
-lda $27,2
-stl $27,RMult
-lda $16,L.253
-jsr $26,printf
-ldgp $gp,0($26)
-br L.252
-L.251:
-lda $16,L.254
-jsr $26,printf
-ldgp $gp,0($26)
-L.252:
-L.249:
-ldl $27,RMult
-cmpeq $27,1,$23
-beq $23,L.247
-ldl $27,GMult
-cmpeq $27,$31,$23
-beq $23,L.247
-lda $16,L.257
-jsr $26,notify
-ldgp $gp,0($26)
-br L.247
-L.246:
-lda $16,L.254
-jsr $26,printf
-ldgp $gp,0($26)
-L.247:
-lda $27,45
-stl $27,Milestone
-ldt $f30,One
-ldt $f29,U2
-addt $f30,$f29,$f28
-stt $f28,Y2
-subt $f30,$f29,$f30
-stt $f30,Y1
-ldt $f30,OneAndHalf
-addt $f30,$f29,$f28
-addt $f28,$f29,$f27
-stt $f27,Z
-ldt $f27,Z
-ldt $f26,Y2
-divt $f27,$f26,$f25
-stt $f25,X
-subt $f30,$f29,$f25
-subt $f25,$f29,$f25
-stt $f25,T
-ldt $f25,T
-ldt $f24,Y1
-subt $f25,$f29,$f23
-divt $f23,$f24,$f23
-stt $f23,Y
-addt $f27,$f29,$f27
-divt $f27,$f26,$f27
-stt $f27,Z
-ldt $f27,X
-subt $f27,$f30,$f27
-stt $f27,X
-ldt $f27,Y
-subt $f27,$f25,$f27
-stt $f27,Y
-divt $f25,$f24,$f27
-stt $f27,T
-ldt $f27,Z
-subt $f27,$f28,$f28
-stt $f28,Z
-subt $f29,$f30,$f30
-ldt $f29,T
-addt $f30,$f29,$f30
-stt $f30,T
-ldt $f30,Zero
-ldt $f29,X
-cmptle $f29,$f30,$f1
-fbeq $f1,L.258
-ldt $f29,Y
-cmptle $f29,$f30,$f1
-fbeq $f1,L.258
-ldt $f29,Z
-cmptle $f29,$f30,$f1
-fbeq $f1,L.258
-ldt $f29,T
-cmptle $f29,$f30,$f1
-fbeq $f1,L.258
-ldt $f30,OneAndHalf
-ldt $f29,Y2
-divt $f30,$f29,$f28
-stt $f28,X
-ldt $f28,U2
-subt $f30,$f28,$f27
-stt $f27,Y
-addt $f30,$f28,$f27
-stt $f27,Z
-ldt $f27,Y
-ldt $f26,X
-subt $f26,$f27,$f26
-stt $f26,X
-ldt $f26,Y1
-divt $f30,$f26,$f25
-stt $f25,T
-divt $f27,$f26,$f27
-stt $f27,Y
-ldt $f27,Z
-ldt $f26,T
-addt $f27,$f28,$f25
-subt $f26,$f25,$f26
-stt $f26,T
-ldt $f26,Y
-subt $f26,$f27,$f26
-stt $f26,Y
-divt $f27,$f29,$f27
-stt $f27,Z
-addt $f29,$f28,$f28
-divt $f28,$f29,$f28
-stt $f28,Y1
-ldt $f28,Z
-subt $f28,$f30,$f30
-stt $f30,Z
-ldt $f30,Y1
-subt $f30,$f29,$f30
-stt $f30,Y2
-ldt $f30,F9
-ldt $f29,U1
-subt $f30,$f29,$f29
-divt $f29,$f30,$f30
-stt $f30,Y1
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.260
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.260
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.260
-ldt $f29,T
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.260
-ldt $f29,Y2
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.260
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.260
-ldt $f30,Half
-ldt $f29,Y1
-subt $f29,$f30,$f29
-ldt $f28,F9
-subt $f28,$f30,$f30
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.260
-lda $27,1
-stl $27,RDiv
-lda $16,L.262
-jsr $26,printf
-ldgp $gp,0($26)
-ldl $27,GDiv
-cmpeq $27,$31,$23
-beq $23,L.261
-lda $16,L.265
-jsr $26,notify
-ldgp $gp,0($26)
-br L.261
-L.260:
-ldt $f30,Zero
-ldt $f29,X
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.266
-ldt $f29,Y
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.266
-ldt $f29,Z
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.266
-ldt $f29,T
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.266
-ldt $f29,Y2
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.266
-ldt $f30,Half
-ldt $f29,Y1
-subt $f29,$f30,$f29
-ldt $f28,F9
-subt $f28,$f30,$f30
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.266
-lda $27,2
-stl $27,RDiv
-lda $16,L.268
-jsr $26,printf
-ldgp $gp,0($26)
-L.266:
-L.261:
-L.258:
-ldl $27,RDiv
-cmpeq $27,$31,$23
-beq $23,L.269
-lda $16,L.271
-jsr $26,printf
-ldgp $gp,0($26)
-L.269:
-ldt $f30,Radix
-ldt $f29,One
-divt $f29,$f30,$f29
-stt $f29,BInvrse
-mov $31,$16
-ldt $f29,Half
-ldt $f28,BInvrse
-mult $f28,$f30,$f30
-subt $f30,$f29,$f30
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.274
-lda $27,1
-stl $27,-112+256($sp)
-br L.275
-L.274:
-stl $31,-112+256($sp)
-L.275:
-ldl $17,-112+256($sp)
-lda $18,L.273
-jsr $26,TstCond
-ldgp $gp,0($26)
-lda $27,50
-stl $27,Milestone
-mov $31,$16
-ldt $f30,Half
-ldt $f29,F9
-ldt $f28,U1
-addt $f29,$f28,$f29
-subt $f29,$f30,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.278
-ldt $f30,One
-ldt $f29,BMinusU2
-ldt $f28,U2
-addt $f29,$f28,$f29
-subt $f29,$f30,$f29
-ldt $f28,Radix
-subt $f28,$f30,$f30
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.278
-lda $27,1
-stl $27,-116+256($sp)
-br L.279
-L.278:
-stl $31,-116+256($sp)
-L.279:
-ldl $17,-116+256($sp)
-lda $18,L.277
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,One
-ldt $f29,U1
-mult $f29,$f29,$f29
-subt $f30,$f29,$f29
-stt $f29,X
-ldt $f29,U2
-subt $f30,$f29,$f28
-mult $f29,$f28,$f29
-addt $f30,$f29,$f29
-stt $f29,Y
-ldt $f29,Half
-ldt $f28,F9
-subt $f28,$f29,$f28
-stt $f28,Z
-ldt $f28,X
-subt $f28,$f29,$f29
-ldt $f28,Z
-subt $f29,$f28,$f29
-stt $f29,X
-ldt $f29,Y
-subt $f29,$f30,$f30
-stt $f30,Y
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.280
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.280
-lda $27,2
-stl $27,RAddSub
-lda $16,L.282
-jsr $26,printf
-ldgp $gp,0($26)
-L.280:
-ldl $27,GAddSub
-cmpeq $27,1,$23
-beq $23,L.283
-ldt $f30,Half
-ldt $f29,U2
-addt $f30,$f29,$f28
-mult $f28,$f29,$f28
-stt $f28,X
-subt $f30,$f29,$f30
-mult $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,One
-ldt $f28,X
-addt $f30,$f28,$f28
-stt $f28,X
-ldt $f28,Y
-addt $f30,$f28,$f28
-stt $f28,Y
-addt $f30,$f29,$f29
-ldt $f28,X
-subt $f29,$f28,$f29
-stt $f29,X
-ldt $f29,Y
-subt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.285
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.285
-ldt $f30,Half
-ldt $f29,U2
-ldt $f28,U1
-addt $f30,$f29,$f27
-mult $f27,$f28,$f27
-stt $f27,X
-subt $f30,$f29,$f30
-mult $f30,$f28,$f30
-stt $f30,Y
-ldt $f30,One
-ldt $f29,X
-subt $f30,$f29,$f29
-stt $f29,X
-ldt $f29,Y
-subt $f30,$f29,$f29
-stt $f29,Y
-ldt $f29,F9
-ldt $f28,X
-subt $f29,$f28,$f29
-stt $f29,X
-ldt $f29,Y
-subt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,Zero
-ldt $f29,X
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.287
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.287
-lda $27,1
-stl $27,RAddSub
-lda $16,L.289
-jsr $26,printf
-ldgp $gp,0($26)
-ldl $27,GAddSub
-cmpeq $27,$31,$23
-beq $23,L.284
-lda $16,L.292
-jsr $26,notify
-ldgp $gp,0($26)
-br L.284
-L.287:
-lda $16,L.293
-jsr $26,printf
-ldgp $gp,0($26)
-br L.284
-L.285:
-lda $16,L.293
-jsr $26,printf
-ldgp $gp,0($26)
-br L.284
-L.283:
-lda $16,L.293
-jsr $26,printf
-ldgp $gp,0($26)
-L.284:
-ldt $f30,One
-stt $f30,S
-ldt $f29,Half
-addt $f30,$f29,$f28
-mult $f29,$f28,$f28
-addt $f30,$f28,$f28
-stt $f28,X
-ldt $f28,U2
-addt $f30,$f28,$f30
-mult $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,X
-ldt $f29,Y
-subt $f30,$f29,$f28
-stt $f28,Z
-subt $f29,$f30,$f30
-stt $f30,T
-ldt $f30,Z
-ldt $f29,T
-addt $f30,$f29,$f30
-stt $f30,StickyBit
-ldt $f30,StickyBit
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.294
-ldt $f30,Zero
-stt $f30,S
-lda $16,3
-lda $17,L.296
-jsr $26,BadCond
-ldgp $gp,0($26)
-L.294:
-ldt $f30,Zero
-stt $f30,StickyBit
-ldl $27,GMult
-cmpeq $27,1,$23
-beq $23,L.297
-ldl $27,GDiv
-cmpeq $27,1,$23
-beq $23,L.297
-ldl $27,GAddSub
-cmpeq $27,1,$23
-beq $23,L.297
-ldl $27,RMult
-cmpeq $27,1,$23
-beq $23,L.297
-ldl $27,RDiv
-cmpeq $27,1,$23
-beq $23,L.297
-ldl $27,RAddSub
-cmpeq $27,1,$23
-beq $23,L.297
-ldt $f16,RadixD2
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,RadixD2
-cmpteq $f0,$f29,$f1
-fbeq $f1,L.297
-lda $16,L.299
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Half
-ldt $f29,U2
-ldt $f28,U1
-addt $f30,$f28,$f28
-mult $f28,$f29,$f28
-stt $f28,X
-mult $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,One
-ldt $f29,Y
-addt $f30,$f29,$f29
-stt $f29,Z
-ldt $f29,X
-addt $f30,$f29,$f30
-stt $f30,T
-ldt $f30,One
-ldt $f29,Z
-subt $f29,$f30,$f29
-ldt $f28,Zero
-cmptle $f29,$f28,$f1
-fbeq $f1,L.300
-ldt $f29,T
-subt $f29,$f30,$f30
-ldt $f29,U2
-cmptlt $f30,$f29,$f1
-fbne $f1,L.300
-ldt $f30,T
-ldt $f29,Y
-addt $f30,$f29,$f30
-stt $f30,Z
-ldt $f30,Z
-ldt $f29,X
-subt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,T
-ldt $f29,Z
-subt $f29,$f30,$f29
-ldt $f28,U2
-cmptlt $f29,$f28,$f1
-fbne $f1,L.302
-ldt $f29,Y
-subt $f29,$f30,$f30
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.302
-ldt $f30,Half
-ldt $f29,U1
-addt $f30,$f29,$f28
-mult $f28,$f29,$f28
-stt $f28,X
-mult $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,One
-ldt $f29,Y
-subt $f30,$f29,$f29
-stt $f29,Z
-ldt $f29,X
-subt $f30,$f29,$f30
-stt $f30,T
-ldt $f30,Zero
-ldt $f29,Z
-ldt $f28,One
-subt $f29,$f28,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.304
-ldt $f29,T
-ldt $f28,F9
-subt $f29,$f28,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.304
-ldt $f30,U1
-ldt $f29,Half
-subt $f29,$f30,$f29
-mult $f29,$f30,$f30
-stt $f30,Z
-ldt $f30,F9
-ldt $f29,Z
-subt $f30,$f29,$f29
-stt $f29,T
-ldt $f29,Y
-subt $f30,$f29,$f30
-stt $f30,Q
-ldt $f30,F9
-ldt $f29,Zero
-ldt $f28,T
-subt $f28,$f30,$f28
-cmpteq $f28,$f29,$f1
-fbeq $f1,L.306
-ldt $f28,U1
-subt $f30,$f28,$f30
-ldt $f28,Q
-subt $f30,$f28,$f30
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.306
-ldt $f30,One
-ldt $f29,U2
-ldt $f28,OneAndHalf
-addt $f30,$f29,$f27
-mult $f27,$f28,$f27
-stt $f27,Z
-addt $f28,$f29,$f28
-ldt $f27,Z
-subt $f28,$f27,$f28
-addt $f28,$f29,$f28
-stt $f28,T
-ldt $f28,Radix
-ldt $f27,Half
-divt $f27,$f28,$f27
-addt $f30,$f27,$f27
-stt $f27,X
-mult $f28,$f29,$f29
-addt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,X
-ldt $f29,Y
-mult $f30,$f29,$f30
-stt $f30,Z
-ldt $f30,Zero
-ldt $f29,T
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.308
-ldt $f29,X
-ldt $f28,Radix
-ldt $f27,U2
-mult $f28,$f27,$f28
-addt $f29,$f28,$f29
-ldt $f28,Z
-subt $f29,$f28,$f29
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.308
-ldt $f30,Radix
-ldt $f29,Two
-cmpteq $f30,$f29,$f1
-fbne $f1,L.310
-ldt $f30,Two
-ldt $f29,U2
-addt $f30,$f29,$f29
-stt $f29,X
-ldt $f29,X
-divt $f29,$f30,$f30
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,One
-subt $f30,$f29,$f30
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.311
-ldt $f30,S
-stt $f30,StickyBit
-br L.311
-L.310:
-ldt $f30,S
-stt $f30,StickyBit
-L.311:
-L.308:
-L.306:
-L.304:
-L.302:
-L.300:
-L.297:
-ldt $f30,StickyBit
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.314
-lda $16,L.316
-jsr $26,printf
-ldgp $gp,0($26)
-br L.315
-L.314:
-lda $16,L.317
-jsr $26,printf
-ldgp $gp,0($26)
-L.315:
-lda $16,3
-ldl $25,GMult
-cmpeq $25,$31,$23
-bne $23,L.320
-ldl $25,GDiv
-cmpeq $25,$31,$23
-bne $23,L.320
-ldl $25,GAddSub
-cmpeq $25,$31,$23
-bne $23,L.320
-ldl $25,RMult
-cmpeq $25,$31,$23
-bne $23,L.320
-ldl $25,RDiv
-cmpeq $25,$31,$23
-bne $23,L.320
-ldl $25,RAddSub
-cmpeq $25,$31,$23
-bne $23,L.320
-lda $27,1
-stl $27,-120+256($sp)
-br L.321
-L.320:
-stl $31,-120+256($sp)
-L.321:
-ldl $17,-120+256($sp)
-lda $18,L.319
-jsr $26,TstCond
-ldgp $gp,0($26)
-lda $27,60
-stl $27,Milestone
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.322
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.323
-ldl $17,NoTrials
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f16,L.324
-jsr $26,sqrt
-ldgp $gp,0($26)
-stt $f0,Random9
-ldt $f30,Third
-stt $f30,Random1
-lda $27,1
-stl $27,I
-L.325:
-jsr $26,Random
-ldgp $gp,0($26)
-stt $f0,X
-jsr $26,Random
-ldgp $gp,0($26)
-stt $f0,Y
-ldt $f30,Y
-ldt $f29,X
-mult $f30,$f29,$f28
-stt $f28,Z9
-mult $f29,$f30,$f30
-stt $f30,Z
-ldt $f30,Z
-ldt $f29,Z9
-subt $f30,$f29,$f30
-stt $f30,Z9
-ldl $27,I
-lda $27,1($27)
-stl $27,I
-L.326:
-ldl $27,I
-ldl $25,NoTrials
-cmple $27,$25,$23
-beq $23,L.328
-ldt $f30,Z9
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.325
-L.328:
-ldl $27,I
-ldl $25,NoTrials
-cmpeq $27,$25,$23
-beq $23,L.329
-ldt $f30,One
-ldt $f29,Half
-ldt $f28,Three
-divt $f29,$f28,$f29
-addt $f30,$f29,$f29
-stt $f29,Random1
-ldt $f28,U2
-ldt $f27,U1
-addt $f28,$f27,$f28
-addt $f28,$f30,$f30
-stt $f30,Random2
-ldt $f28,Random1
-ldt $f27,Random2
-mult $f28,$f27,$f26
-stt $f26,Z
-mult $f27,$f28,$f28
-stt $f28,Y
-mult $f29,$f30,$f30
-subt $f30,$f30,$f30
-stt $f30,Z9
-L.329:
-ldl $27,I
-ldl $25,NoTrials
-cmpeq $27,$25,$23
-bne $23,L.331
-ldt $f30,Z9
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.331
-lda $16,2
-lda $17,L.333
-jsr $26,BadCond
-ldgp $gp,0($26)
-br L.332
-L.331:
-lda $16,L.334
-ldl $17,NoTrials
-jsr $26,printf
-ldgp $gp,0($26)
-L.332:
-lda $27,70
-stl $27,Milestone
-lda $16,L.335
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Zero
-stt $f30,-136+256($sp)
-fmov $f30,$f16
-jsr $26,sqrt
-ldgp $gp,0($26)
-ldt $f29,-136+256($sp)
-cmpteq $f29,$f0,$f1
-fbeq $f1,L.338
-ldt $f30,Zero
-negt $f30,$f30
-stt $f30,-144+256($sp)
-fmov $f30,$f16
-jsr $26,sqrt
-ldgp $gp,0($26)
-ldt $f29,-144+256($sp)
-cmpteq $f29,$f0,$f1
-fbeq $f1,L.338
-ldt $f30,One
-stt $f30,-152+256($sp)
-fmov $f30,$f16
-jsr $26,sqrt
-ldgp $gp,0($26)
-fmov $f0,$f30
-ldt $f29,-152+256($sp)
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.338
-lda $27,1
-stl $27,-124+256($sp)
-br L.339
-L.338:
-stl $31,-124+256($sp)
-L.339:
-mov $31,$16
-ldl $17,-124+256($sp)
-lda $18,L.337
-jsr $26,TstCond
-ldgp $gp,0($26)
-ldt $f30,Zero
-stt $f30,MinSqEr
-stt $f30,MaxSqEr
-stt $f30,J
-ldt $f30,Radix
-stt $f30,X
-ldt $f30,U2
-stt $f30,OneUlp
-lda $16,1
-jsr $26,SqXMinX
-ldgp $gp,0($26)
-ldt $f30,BInvrse
-stt $f30,X
-ldt $f29,U1
-mult $f30,$f29,$f30
-stt $f30,OneUlp
-lda $16,1
-jsr $26,SqXMinX
-ldgp $gp,0($26)
-ldt $f30,U1
-stt $f30,X
-mult $f30,$f30,$f30
-stt $f30,OneUlp
-lda $16,1
-jsr $26,SqXMinX
-ldgp $gp,0($26)
-ldt $f30,J
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.340
-jsr $26,Pause
-ldgp $gp,0($26)
-L.340:
-lda $16,L.342
-ldl $17,NoTrials
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Zero
-stt $f30,J
-ldt $f30,Two
-stt $f30,X
-ldt $f30,Radix
-stt $f30,Y
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbne $f1,L.343
-L.345:
-ldt $f30,Y
-stt $f30,X
-ldt $f29,Radix
-mult $f29,$f30,$f30
-stt $f30,Y
-L.346:
-ldt $f30,Y
-ldt $f29,X
-subt $f30,$f29,$f30
-lds $f29,NoTrials
-cvtlq $f29,$f29
-cvtqt $f29,$f29
-cmptlt $f30,$f29,$f1
-fbne $f1,L.345
-L.343:
-ldt $f30,X
-ldt $f29,U2
-mult $f30,$f29,$f30
-stt $f30,OneUlp
-lda $27,1
-stl $27,I
-br L.349
-L.348:
-ldt $f30,X
-ldt $f29,One
-addt $f30,$f29,$f30
-stt $f30,X
-lda $16,2
-jsr $26,SqXMinX
-ldgp $gp,0($26)
-ldt $f30,J
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbne $f1,L.351
-br L.350
-L.351:
-ldl $27,I
-lda $27,1($27)
-stl $27,I
-L.349:
-ldl $27,I
-ldl $25,NoTrials
-cmple $27,$25,$23
-bne $23,L.348
-L.350:
-lda $16,L.353
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,-1
-stl $27,I
-ldt $f30,BMinusU2
-stt $f30,X
-ldt $f30,Radix
-stt $f30,Y
-ldt $f29,U2
-mult $f30,$f29,$f29
-addt $f30,$f29,$f30
-stt $f30,Z
-stl $31,NotMonot
-stl $31,Monot
-br L.355
-L.354:
-ldl $27,I
-lda $27,1($27)
-stl $27,I
-ldt $f16,X
-jsr $26,sqrt
-ldgp $gp,0($26)
-stt $f0,X
-ldt $f16,Y
-jsr $26,sqrt
-ldgp $gp,0($26)
-stt $f0,Q
-ldt $f16,Z
-jsr $26,sqrt
-ldgp $gp,0($26)
-stt $f0,Z
-ldt $f30,Q
-ldt $f29,X
-cmptle $f29,$f30,$f1
-fbeq $f1,L.359
-ldt $f29,Z
-cmptle $f30,$f29,$f1
-fbne $f1,L.357
-L.359:
-lda $27,1
-stl $27,NotMonot
-br L.358
-L.357:
-ldt $f30,Q
-ldt $f29,Half
-addt $f30,$f29,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-stt $f0,Q
-ldl $27,I
-cmple $27,$31,$23
-beq $23,L.362
-ldt $f30,Q
-ldt $f29,Radix
-mult $f30,$f30,$f30
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.360
-L.362:
-lda $27,1
-stl $27,Monot
-br L.361
-L.360:
-ldl $27,I
-cmple $27,$31,$23
-bne $23,L.363
-ldl $27,I
-cmple $27,1,$23
-bne $23,L.365
-lda $27,1
-stl $27,Monot
-br L.364
-L.365:
-ldt $f30,Y
-ldt $f29,BInvrse
-mult $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,U1
-subt $f30,$f29,$f28
-stt $f28,X
-addt $f30,$f29,$f30
-stt $f30,Z
-br L.364
-L.363:
-ldt $f30,Q
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,U2
-subt $f30,$f29,$f28
-stt $f28,X
-addt $f30,$f29,$f30
-stt $f30,Z
-L.364:
-L.361:
-L.358:
-L.355:
-ldl $25,NotMonot
-cmpeq $25,$31,$23
-beq $23,L.367
-ldl $25,Monot
-cmpeq $25,$31,$23
-bne $23,L.354
-L.367:
-ldl $27,Monot
-cmpeq $27,$31,$23
-bne $23,L.368
-lda $16,L.370
-jsr $26,printf
-ldgp $gp,0($26)
-br L.369
-L.368:
-lda $16,2
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.371
-ldt $f17,Y
-jsr $26,printf
-ldgp $gp,0($26)
-L.369:
-lda $27,80
-stl $27,Milestone
-ldt $f30,Half
-ldt $f29,MinSqEr
-addt $f29,$f30,$f29
-stt $f29,MinSqEr
-ldt $f29,MaxSqEr
-subt $f29,$f30,$f30
-stt $f30,MaxSqEr
-ldt $f30,One
-ldt $f29,U2
-addt $f30,$f29,$f16
-jsr $26,sqrt
-ldgp $gp,0($26)
-ldt $f29,One
-ldt $f28,U2
-subt $f0,$f29,$f30
-divt $f30,$f28,$f30
-stt $f30,Y
-ldt $f30,Y
-subt $f30,$f29,$f30
-ldt $f29,Eight
-divt $f28,$f29,$f29
-addt $f30,$f29,$f30
-stt $f30,SqEr
-ldt $f30,SqEr
-ldt $f29,MaxSqEr
-cmptle $f30,$f29,$f1
-fbne $f1,L.372
-ldt $f30,SqEr
-stt $f30,MaxSqEr
-L.372:
-ldt $f30,Y
-ldt $f29,U2
-ldt $f28,Eight
-divt $f29,$f28,$f29
-addt $f30,$f29,$f30
-stt $f30,SqEr
-ldt $f30,SqEr
-ldt $f29,MinSqEr
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.374
-ldt $f30,SqEr
-stt $f30,MinSqEr
-L.374:
-ldt $f16,F9
-jsr $26,sqrt
-ldgp $gp,0($26)
-ldt $f29,U2
-ldt $f28,U1
-subt $f0,$f29,$f30
-ldt $f27,One
-subt $f27,$f29,$f29
-subt $f30,$f29,$f30
-divt $f30,$f28,$f30
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,Eight
-divt $f28,$f29,$f29
-addt $f30,$f29,$f30
-stt $f30,SqEr
-ldt $f30,SqEr
-ldt $f29,MaxSqEr
-cmptle $f30,$f29,$f1
-fbne $f1,L.376
-ldt $f30,SqEr
-stt $f30,MaxSqEr
-L.376:
-ldt $f30,Y
-ldt $f29,One
-addt $f30,$f29,$f30
-ldt $f29,U1
-ldt $f28,Eight
-divt $f29,$f28,$f29
-addt $f30,$f29,$f30
-stt $f30,SqEr
-ldt $f30,SqEr
-ldt $f29,MinSqEr
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.378
-ldt $f30,SqEr
-stt $f30,MinSqEr
-L.378:
-ldt $f30,U2
-stt $f30,OneUlp
-ldt $f30,OneUlp
-stt $f30,X
-lda $27,1
-stl $27,Indx
-L.380:
-ldt $f30,X
-ldt $f29,U1
-addt $f30,$f29,$f29
-addt $f29,$f30,$f30
-ldt $f29,F9
-addt $f30,$f29,$f16
-jsr $26,sqrt
-ldgp $gp,0($26)
-stt $f0,Y
-ldt $f30,U2
-ldt $f29,X
-ldt $f28,OneUlp
-ldt $f27,Y
-subt $f27,$f30,$f27
-ldt $f26,One
-subt $f26,$f30,$f30
-addt $f30,$f29,$f30
-subt $f27,$f30,$f30
-divt $f30,$f28,$f30
-stt $f30,Y
-ldt $f30,Half
-ldt $f27,U1
-subt $f27,$f29,$f27
-ldt $f26,F9
-addt $f27,$f26,$f27
-mult $f27,$f30,$f27
-mult $f27,$f29,$f27
-mult $f27,$f29,$f29
-divt $f29,$f28,$f29
-stt $f29,Z
-ldt $f29,Y
-addt $f29,$f30,$f30
-ldt $f29,Z
-addt $f30,$f29,$f30
-stt $f30,SqEr
-ldt $f30,SqEr
-ldt $f29,MinSqEr
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.384
-ldt $f30,SqEr
-stt $f30,MinSqEr
-L.384:
-ldt $f30,Y
-ldt $f29,Half
-subt $f30,$f29,$f30
-ldt $f29,Z
-addt $f30,$f29,$f30
-stt $f30,SqEr
-ldt $f30,SqEr
-ldt $f29,MaxSqEr
-cmptle $f30,$f29,$f1
-fbne $f1,L.386
-ldt $f30,SqEr
-stt $f30,MaxSqEr
-L.386:
-ldl $27,Indx
-cmpeq $27,1,$23
-bne $23,L.390
-cmpeq $27,3,$23
-beq $23,L.388
-L.390:
-ldt $f16,X
-jsr $26,Sign
-ldgp $gp,0($26)
-fmov $f0,$f30
-stt $f30,-160+256($sp)
-ldt $f16,OneUlp
-jsr $26,sqrt
-ldgp $gp,0($26)
-ldt $f29,Eight
-ldt $f28,Nine
-mult $f28,$f0,$f30
-divt $f29,$f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,OneUlp
-ldt $f28,-160+256($sp)
-mult $f29,$f28,$f29
-mult $f29,$f0,$f30
-stt $f30,X
-br L.389
-L.388:
-ldt $f30,U1
-stt $f30,OneUlp
-ldt $f30,OneUlp
-negt $f30,$f30
-stt $f30,X
-L.389:
-L.381:
-ldl $27,Indx
-lda $27,1($27)
-stl $27,Indx
-ldl $27,Indx
-cmple $27,3,$23
-bne $23,L.380
-lda $27,85
-stl $27,Milestone
-stl $31,SqRWrng
-stl $31,Anomaly
-stl $31,RSqrt
-ldt $f30,Radix
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbne $f1,L.391
-lda $16,L.393
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Precision
-stt $f30,-160+256($sp)
-fmov $f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-fmov $f0,$f30
-ldt $f16,Radix
-ldt $f29,One
-ldt $f28,-160+256($sp)
-addt $f29,$f28,$f29
-subt $f29,$f30,$f17
-jsr $26,pow
-ldgp $gp,0($26)
-fmov $f0,$f30
-ldt $f29,Half
-addt $f29,$f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-stt $f0,D
-ldt $f30,D
-ldt $f29,Radix
-divt $f30,$f29,$f29
-stt $f29,X
-ldt $f29,A1
-divt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,X
-stt $f30,-168+256($sp)
-fmov $f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,-168+256($sp)
-cmpteq $f29,$f0,$f1
-fbeq $f1,L.396
-ldt $f30,Y
-stt $f30,-176+256($sp)
-fmov $f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,-176+256($sp)
-cmpteq $f29,$f0,$f1
-fbne $f1,L.394
-L.396:
-lda $27,1
-stl $27,Anomaly
-br L.395
-L.394:
-ldt $f30,Zero
-stt $f30,X
-ldt $f30,X
-stt $f30,Z2
-ldt $f30,One
-stt $f30,Y
-ldt $f29,Y
-stt $f29,Y2
-ldt $f29,Radix
-subt $f29,$f30,$f30
-stt $f30,Z1
-ldt $f30,Four
-ldt $f29,D
-mult $f30,$f29,$f30
-stt $f30,FourD
-L.397:
-ldt $f30,Y2
-ldt $f29,Z2
-cmptle $f30,$f29,$f1
-fbne $f1,L.400
-ldt $f30,Radix
-stt $f30,Q
-ldt $f30,Y
-stt $f30,Y1
-L.402:
-ldt $f30,Q
-stt $f30,-184+256($sp)
-ldt $f29,Half
-ldt $f28,Y1
-divt $f30,$f28,$f28
-subt $f29,$f28,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,Y1
-mult $f0,$f29,$f30
-ldt $f29,-184+256($sp)
-addt $f29,$f30,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-stt $f0,X1
-ldt $f30,Y1
-stt $f30,Q
-ldt $f30,X1
-stt $f30,Y1
-L.403:
-ldt $f30,X1
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.402
-ldt $f30,Q
-ldt $f29,One
-cmptle $f30,$f29,$f1
-fbeq $f1,L.405
-ldt $f30,Y2
-stt $f30,Z2
-ldt $f30,Y
-stt $f30,Z
-L.405:
-L.400:
-ldt $f30,Y
-ldt $f29,Two
-addt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,X
-ldt $f29,Eight
-addt $f30,$f29,$f30
-stt $f30,X
-ldt $f30,Y2
-ldt $f29,X
-addt $f30,$f29,$f30
-stt $f30,Y2
-ldt $f30,Y2
-ldt $f29,FourD
-cmptlt $f30,$f29,$f1
-fbne $f1,L.407
-ldt $f30,Y2
-ldt $f29,FourD
-subt $f30,$f29,$f30
-stt $f30,Y2
-L.407:
-L.398:
-ldt $f30,Y
-ldt $f29,D
-cmptlt $f30,$f29,$f1
-fbne $f1,L.397
-ldt $f30,FourD
-ldt $f29,Z2
-subt $f30,$f29,$f29
-stt $f29,X8
-ldt $f29,X8
-ldt $f28,Z
-mult $f28,$f28,$f28
-addt $f29,$f28,$f28
-divt $f28,$f30,$f30
-stt $f30,Q
-ldt $f30,Eight
-divt $f29,$f30,$f30
-stt $f30,X8
-ldt $f30,Q
-stt $f30,-184+256($sp)
-fmov $f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,-184+256($sp)
-cmpteq $f29,$f0,$f1
-fbne $f1,L.409
-lda $27,1
-stl $27,Anomaly
-br L.410
-L.409:
-stl $31,Break
-L.411:
-ldt $f30,Z1
-ldt $f29,Z
-mult $f30,$f29,$f30
-stt $f30,X
-ldt $f30,X
-stt $f30,-192+256($sp)
-ldt $f29,Radix
-divt $f30,$f29,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,Radix
-mult $f0,$f29,$f30
-ldt $f29,-192+256($sp)
-subt $f29,$f30,$f30
-stt $f30,X
-ldt $f30,X
-ldt $f29,One
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.414
-lda $27,1
-stl $27,Break
-br L.415
-L.414:
-ldt $f30,Z1
-ldt $f29,One
-subt $f30,$f29,$f30
-stt $f30,Z1
-L.415:
-L.412:
-ldl $27,Break
-cmpeq $27,$31,$23
-beq $23,L.416
-ldt $f30,Z1
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.411
-L.416:
-ldt $f30,Z1
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.417
-ldl $27,Break
-cmpeq $27,$31,$23
-beq $23,L.417
-lda $27,1
-stl $27,Anomaly
-br L.418
-L.417:
-ldt $f30,Z1
-ldt $f29,RadixD2
-cmptle $f30,$f29,$f1
-fbne $f1,L.419
-ldt $f30,Z1
-ldt $f29,Radix
-subt $f30,$f29,$f30
-stt $f30,Z1
-L.419:
-L.421:
-jsr $26,NewD
-ldgp $gp,0($26)
-L.422:
-ldt $f30,U2
-ldt $f29,D
-mult $f30,$f29,$f30
-ldt $f29,F9
-cmptlt $f30,$f29,$f1
-fbne $f1,L.421
-ldt $f30,D
-ldt $f29,Radix
-mult $f30,$f29,$f29
-subt $f29,$f30,$f29
-ldt $f28,W
-subt $f28,$f30,$f30
-cmpteq $f29,$f30,$f1
-fbne $f1,L.424
-lda $27,1
-stl $27,Anomaly
-br L.425
-L.424:
-ldt $f30,D
-stt $f30,Z2
-stl $31,I
-ldt $f29,Z
-ldt $f28,One
-addt $f28,$f29,$f28
-ldt $f27,Half
-mult $f28,$f27,$f28
-addt $f30,$f28,$f28
-stt $f28,Y
-addt $f30,$f29,$f30
-ldt $f29,Q
-addt $f30,$f29,$f30
-stt $f30,X
-jsr $26,SR3750
-ldgp $gp,0($26)
-ldt $f30,D
-ldt $f29,Z
-ldt $f28,One
-subt $f28,$f29,$f28
-ldt $f27,Half
-mult $f28,$f27,$f28
-addt $f30,$f28,$f28
-addt $f28,$f30,$f28
-stt $f28,Y
-subt $f30,$f29,$f29
-addt $f29,$f30,$f30
-stt $f30,X
-ldt $f30,X
-ldt $f29,Q
-addt $f30,$f29,$f29
-addt $f29,$f30,$f30
-stt $f30,X
-jsr $26,SR3750
-ldgp $gp,0($26)
-jsr $26,NewD
-ldgp $gp,0($26)
-ldt $f30,Z2
-ldt $f29,D
-subt $f29,$f30,$f29
-ldt $f28,W
-subt $f28,$f30,$f30
-cmpteq $f29,$f30,$f1
-fbne $f1,L.426
-lda $27,1
-stl $27,Anomaly
-br L.427
-L.426:
-ldt $f30,Z2
-ldt $f29,D
-subt $f29,$f30,$f29
-ldt $f28,Z
-ldt $f27,One
-subt $f27,$f28,$f27
-ldt $f26,Half
-mult $f27,$f26,$f27
-addt $f30,$f27,$f27
-addt $f29,$f27,$f27
-stt $f27,Y
-subt $f30,$f28,$f30
-ldt $f28,Q
-addt $f30,$f28,$f30
-addt $f29,$f30,$f30
-stt $f30,X
-jsr $26,SR3750
-ldgp $gp,0($26)
-ldt $f30,One
-ldt $f29,Z
-addt $f30,$f29,$f30
-ldt $f29,Half
-mult $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,Q
-stt $f30,X
-jsr $26,SR3750
-ldgp $gp,0($26)
-ldl $27,I
-cmpeq $27,$31,$23
-beq $23,L.428
-lda $27,1
-stl $27,Anomaly
-L.428:
-L.427:
-L.425:
-L.418:
-L.410:
-L.395:
-ldl $25,I
-cmpeq $25,$31,$23
-bne $23,L.432
-ldl $25,Anomaly
-cmpeq $25,$31,$23
-bne $23,L.430
-L.432:
-mov $31,$16
-lda $17,L.433
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.434
-ldt $f17,W
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.435
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,1
-stl $27,SqRWrng
-L.430:
-L.391:
-ldl $27,Anomaly
-cmpeq $27,$31,$23
-beq $23,L.436
-ldt $f30,Zero
-ldt $f29,MinSqEr
-cmptlt $f29,$f30,$f1
-fbne $f1,L.438
-ldt $f29,MaxSqEr
-cmptle $f29,$f30,$f1
-fbeq $f1,L.438
-lda $27,1
-stl $27,RSqrt
-lda $16,L.440
-jsr $26,printf
-ldgp $gp,0($26)
-br L.439
-L.438:
-ldt $f30,U2
-ldt $f29,Half
-ldt $f28,MaxSqEr
-addt $f28,$f30,$f28
-subt $f30,$f29,$f30
-cmptle $f28,$f30,$f1
-fbeq $f1,L.444
-ldt $f30,MinSqEr
-cmptle $f30,$f29,$f1
-fbeq $f1,L.444
-ldt $f28,Radix
-addt $f30,$f28,$f30
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.441
-L.444:
-lda $27,1
-stl $27,SqRWrng
-br L.442
-L.441:
-lda $27,2
-stl $27,RSqrt
-lda $16,L.445
-jsr $26,printf
-ldgp $gp,0($26)
-L.442:
-L.439:
-L.436:
-ldl $27,SqRWrng
-cmpeq $27,$31,$23
-bne $23,L.446
-lda $16,L.448
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.449
-ldt $f30,MinSqEr
-ldt $f29,Half
-subt $f30,$f29,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.450
-ldt $f30,Half
-ldt $f29,MaxSqEr
-addt $f30,$f29,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,1
-ldt $f30,Radix
-ldt $f29,MaxSqEr
-ldt $f28,MinSqEr
-subt $f29,$f28,$f29
-mult $f30,$f30,$f30
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.453
-lda $27,1
-stl $27,-156+256($sp)
-br L.454
-L.453:
-stl $31,-156+256($sp)
-L.454:
-ldl $17,-156+256($sp)
-lda $18,L.452
-jsr $26,TstCond
-ldgp $gp,0($26)
-L.446:
-lda $27,90
-stl $27,Milestone
-jsr $26,Pause
-ldgp $gp,0($26)
-lda $16,L.455
-jsr $26,printf
-ldgp $gp,0($26)
-stl $31,N
-stl $31,I
-ldt $f30,Zero
-negt $f30,$f30
-stt $f30,Z
-lda $25,3
-stl $25,M
-stl $31,Break
-L.456:
-ldt $f30,One
-stt $f30,X
-jsr $26,SR3980
-ldgp $gp,0($26)
-ldl $27,I
-cmple $27,10,$23
-beq $23,L.459
-lda $27,1023
-stl $27,I
-jsr $26,SR3980
-ldgp $gp,0($26)
-L.459:
-ldt $f30,Z
-ldt $f29,MinusOne
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.461
-lda $27,1
-stl $27,Break
-br L.462
-L.461:
-ldt $f30,MinusOne
-stt $f30,Z
-jsr $26,PrintIfNPositive
-ldgp $gp,0($26)
-stl $31,N
-lda $27,-4
-stl $27,I
-L.462:
-L.457:
-ldl $27,Break
-cmpeq $27,$31,$23
-bne $23,L.456
-jsr $26,PrintIfNPositive
-ldgp $gp,0($26)
-ldl $27,N
-stl $27,N1
-stl $31,N
-ldt $f30,A1
-stt $f30,Z
-ldt $f16,W
-jsr $26,log
-ldgp $gp,0($26)
-fmov $f0,$f30
-stt $f30,-160+256($sp)
-ldt $f16,A1
-jsr $26,log
-ldgp $gp,0($26)
-fmov $f0,$f30
-ldt $f29,Two
-ldt $f28,-160+256($sp)
-mult $f29,$f28,$f29
-divt $f29,$f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-cvttqc $f0,$f1
-cvtql $f1,$f1
-sts $f1,-56+256($sp)
-ldl $27,-56+256($sp)
-stl $27,M
-stl $31,Break
-L.463:
-ldt $f30,Z
-stt $f30,X
-lda $27,1
-stl $27,I
-jsr $26,SR3980
-ldgp $gp,0($26)
-ldt $f30,Z
-ldt $f29,AInvrse
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.466
-lda $27,1
-stl $27,Break
-br L.467
-L.466:
-ldt $f30,AInvrse
-stt $f30,Z
-L.467:
-L.464:
-ldl $27,Break
-cmpeq $27,$31,$23
-bne $23,L.463
-lda $27,100
-stl $27,Milestone
-ldl $27,NoTrials
-stl $27,M
-ldt $f30,Three
-stt $f30,Z
-L.468:
-ldt $f30,Z
-stt $f30,X
-lda $27,1
-stl $27,I
-jsr $26,SR3980
-ldgp $gp,0($26)
-L.471:
-ldt $f30,Z
-ldt $f29,Two
-addt $f30,$f29,$f30
-stt $f30,Z
-L.472:
-ldt $f30,Three
-stt $f30,-168+256($sp)
-ldt $f29,Z
-divt $f29,$f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,-168+256($sp)
-mult $f29,$f0,$f30
-ldt $f29,Z
-cmpteq $f30,$f29,$f1
-fbne $f1,L.471
-L.469:
-ldt $f30,Z
-ldt $f29,Eight
-ldt $f28,Three
-mult $f29,$f28,$f29
-cmptlt $f30,$f29,$f1
-fbne $f1,L.468
-ldl $27,N
-cmple $27,$31,$23
-bne $23,L.474
-lda $16,L.476
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.477
-jsr $26,printf
-ldgp $gp,0($26)
-L.474:
-jsr $26,PrintIfNPositive
-ldgp $gp,0($26)
-ldl $27,N
-ldl $25,N1
-addl $27,$25,$27
-stl $27,N
-ldl $27,N
-cmpeq $27,$31,$23
-beq $23,L.478
-lda $16,L.480
-jsr $26,printf
-ldgp $gp,0($26)
-L.478:
-ldl $27,N
-cmple $27,$31,$23
-bne $23,L.481
-jsr $26,Pause
-ldgp $gp,0($26)
-br L.482
-L.481:
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-L.482:
-lda $27,110
-stl $27,Milestone
-lda $16,L.483
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,U1
-stt $f30,D
-ldt $f30,Precision
-stt $f30,-168+256($sp)
-fmov $f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,-168+256($sp)
-cmpteq $f29,$f0,$f1
-fbne $f1,L.484
-ldt $f30,BInvrse
-stt $f30,D
-ldt $f30,Precision
-stt $f30,X
-L.486:
-ldt $f30,D
-ldt $f29,BInvrse
-mult $f30,$f29,$f30
-stt $f30,D
-ldt $f30,X
-ldt $f29,One
-subt $f30,$f29,$f30
-stt $f30,X
-L.487:
-ldt $f30,X
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.486
-L.484:
-ldt $f30,One
-stt $f30,Y
-ldt $f30,D
-stt $f30,Z
-L.489:
-ldt $f30,Y
-stt $f30,C
-ldt $f30,Z
-stt $f30,Y
-ldt $f30,Y
-mult $f30,$f30,$f30
-stt $f30,Z
-L.490:
-ldt $f30,Z
-ldt $f29,Y
-cmptle $f29,$f30,$f1
-fbne $f1,L.492
-addt $f30,$f30,$f29
-cmptle $f29,$f30,$f1
-fbeq $f1,L.489
-L.492:
-ldt $f30,C
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,D
-mult $f30,$f29,$f30
-stt $f30,Z
-L.493:
-ldt $f30,Y
-stt $f30,C
-ldt $f30,Z
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,D
-mult $f30,$f29,$f30
-stt $f30,Z
-L.494:
-ldt $f30,Z
-ldt $f29,Y
-cmptle $f29,$f30,$f1
-fbne $f1,L.496
-addt $f30,$f30,$f29
-cmptle $f29,$f30,$f1
-fbeq $f1,L.493
-L.496:
-ldt $f30,Radix
-ldt $f29,Two
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.497
-ldt $f30,Two
-stt $f30,HInvrse
-br L.498
-L.497:
-ldt $f30,Radix
-stt $f30,HInvrse
-L.498:
-ldt $f30,One
-ldt $f29,HInvrse
-divt $f30,$f29,$f29
-stt $f29,H
-ldt $f29,C
-divt $f30,$f29,$f30
-stt $f30,CInvrse
-stt $f29,E0
-ldt $f30,E0
-ldt $f29,H
-mult $f30,$f29,$f30
-stt $f30,Z
-L.499:
-ldt $f30,E0
-stt $f30,Y
-ldt $f30,Z
-stt $f30,E0
-ldt $f30,E0
-ldt $f29,H
-mult $f30,$f29,$f30
-stt $f30,Z
-L.500:
-ldt $f30,Z
-ldt $f29,E0
-cmptle $f29,$f30,$f1
-fbne $f1,L.502
-addt $f30,$f30,$f29
-cmptle $f29,$f30,$f1
-fbeq $f1,L.499
-L.502:
-ldt $f30,E0
-stt $f30,UfThold
-ldt $f30,Zero
-stt $f30,E1
-stt $f30,Q
-ldt $f30,U2
-stt $f30,E9
-ldt $f30,One
-ldt $f29,E9
-addt $f30,$f29,$f30
-stt $f30,S
-ldt $f30,C
-ldt $f29,S
-mult $f30,$f29,$f29
-stt $f29,D
-ldt $f29,D
-cmptle $f29,$f30,$f1
-fbeq $f1,L.503
-ldt $f30,Radix
-ldt $f29,U2
-mult $f30,$f29,$f30
-stt $f30,E9
-ldt $f30,One
-ldt $f29,E9
-addt $f30,$f29,$f30
-stt $f30,S
-ldt $f30,C
-ldt $f29,S
-mult $f30,$f29,$f29
-stt $f29,D
-ldt $f29,D
-cmptle $f29,$f30,$f1
-fbeq $f1,L.504
-mov $31,$16
-lda $17,L.507
-jsr $26,BadCond
-ldgp $gp,0($26)
-ldt $f30,E0
-stt $f30,Underflow
-ldt $f30,Zero
-stt $f30,Y1
-ldt $f30,Z
-stt $f30,PseudoZero
-jsr $26,Pause
-ldgp $gp,0($26)
-br L.504
-L.503:
-ldt $f30,D
-stt $f30,Underflow
-ldt $f30,Underflow
-ldt $f29,H
-mult $f30,$f29,$f30
-stt $f30,PseudoZero
-ldt $f30,Zero
-stt $f30,UfThold
-L.508:
-ldt $f30,Underflow
-stt $f30,Y1
-ldt $f30,PseudoZero
-stt $f30,Underflow
-ldt $f30,E1
-addt $f30,$f30,$f29
-cmptle $f29,$f30,$f1
-fbeq $f1,L.511
-ldt $f30,Underflow
-ldt $f29,HInvrse
-mult $f30,$f29,$f30
-stt $f30,Y2
-ldt $f30,Y1
-ldt $f29,Y2
-subt $f30,$f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-stt $f0,E1
-ldt $f30,Y1
-stt $f30,Q
-ldt $f30,UfThold
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.513
-ldt $f30,Y1
-ldt $f29,Y2
-cmpteq $f30,$f29,$f1
-fbne $f1,L.513
-ldt $f30,Y1
-stt $f30,UfThold
-L.513:
-L.511:
-ldt $f30,PseudoZero
-ldt $f29,H
-mult $f30,$f29,$f30
-stt $f30,PseudoZero
-L.509:
-ldt $f30,PseudoZero
-ldt $f29,Underflow
-cmptle $f29,$f30,$f1
-fbne $f1,L.515
-addt $f30,$f30,$f29
-cmptle $f29,$f30,$f1
-fbeq $f1,L.508
-L.515:
-L.504:
-ldt $f30,PseudoZero
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.516
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,PseudoZero
-stt $f30,Z
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.518
-mov $31,$16
-lda $17,L.520
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.521
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.522
-ldt $f17,PseudoZero
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,PseudoZero
-negt $f30,$f30
-stt $f30,X
-ldt $f30,X
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.519
-lda $16,L.525
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.526
-ldt $f17,X
-jsr $26,printf
-ldgp $gp,0($26)
-br L.519
-L.518:
-lda $16,3
-lda $17,L.527
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.528
-ldt $f17,PseudoZero
-jsr $26,printf
-ldgp $gp,0($26)
-L.519:
-jsr $26,TstPtUf
-ldgp $gp,0($26)
-L.516:
-lda $27,120
-stl $27,Milestone
-ldt $f30,CInvrse
-ldt $f29,Y
-mult $f30,$f29,$f29
-ldt $f28,Y1
-mult $f30,$f28,$f30
-cmptle $f29,$f30,$f1
-fbne $f1,L.529
-ldt $f30,H
-ldt $f29,S
-mult $f30,$f29,$f30
-stt $f30,S
-ldt $f30,Underflow
-stt $f30,E0
-L.529:
-ldt $f30,E1
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.531
-ldt $f29,E0
-cmpteq $f30,$f29,$f1
-fbne $f1,L.531
-lda $16,2
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-ldt $f30,E1
-ldt $f29,E0
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.533
-lda $16,L.535
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.536
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,PseudoZero
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.534
-ldt $f30,E1
-stt $f30,E0
-br L.534
-L.533:
-lda $16,L.539
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.540
-jsr $26,printf
-ldgp $gp,0($26)
-L.534:
-L.531:
-lda $16,L.541
-ldt $f17,E0
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,E0
-stt $f30,Z
-jsr $26,TstPtUf
-ldgp $gp,0($26)
-ldt $f30,E0
-stt $f30,Underflow
-ldl $27,N
-cmpeq $27,1,$23
-beq $23,L.542
-ldt $f30,Y
-stt $f30,Underflow
-L.542:
-lda $27,4
-stl $27,I
-ldt $f30,E1
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.544
-lda $27,3
-stl $27,I
-L.544:
-ldt $f30,UfThold
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.546
-ldl $27,I
-subl $27,2,$27
-stl $27,I
-L.546:
-lda $27,1
-stl $27,UfNGrad
-ldl $27,I
-cmplt $27,1,$23
-bne $23,L.548
-cmple $27,4,$23
-beq $23,L.548
-subl $27,1,$27
-sll $27,3,$27
-ldq $27,L.571($27)
-jmp ($27)
-.rdata
-.align 3
-L.571:
-.quad L.550
-.quad L.557
-.quad L.562
-.quad L.563
-.text
-L.550:
-ldt $f30,Underflow
-stt $f30,UfThold
-ldt $f30,CInvrse
-ldt $f29,Q
-mult $f30,$f29,$f29
-ldt $f28,Y
-mult $f30,$f28,$f30
-ldt $f28,S
-mult $f30,$f28,$f30
-cmpteq $f29,$f30,$f1
-fbne $f1,L.551
-ldt $f30,Y
-stt $f30,UfThold
-mov $31,$16
-lda $17,L.553
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.554
-ldt $f17,UfThold
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.555
-ldt $f17,C
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.556
-jsr $26,printf
-ldgp $gp,0($26)
-L.551:
-jsr $26,Pause
-ldgp $gp,0($26)
-br L.549
-L.557:
-mov $31,$16
-lda $17,L.558
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.559
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.560
-ldt $f17,Q
-ldt $f18,Y2
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Q
-ldt $f29,Y2
-subt $f30,$f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-fmov $f0,$f30
-lda $16,L.561
-fmov $f30,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Q
-stt $f30,UfThold
-br L.549
-L.562:
-ldt $f30,X
-stt $f30,X
-br L.549
-L.563:
-ldt $f30,UfThold
-ldt $f29,Q
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.564
-ldt $f29,E1
-ldt $f28,E0
-cmpteq $f29,$f28,$f1
-fbeq $f1,L.564
-ldt $f28,E9
-divt $f29,$f28,$f29
-subt $f30,$f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-ldt $f29,E1
-cmptle $f0,$f29,$f1
-fbeq $f1,L.564
-stl $31,UfNGrad
-lda $16,L.566
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.567
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,E0
-ldt $f29,CInvrse
-mult $f30,$f29,$f28
-stt $f28,Y
-ldt $f28,U2
-ldt $f27,Y
-ldt $f26,OneAndHalf
-addt $f26,$f28,$f26
-mult $f27,$f26,$f27
-stt $f27,Y
-ldt $f27,One
-addt $f27,$f28,$f28
-mult $f29,$f28,$f29
-stt $f29,X
-ldt $f29,Y
-ldt $f28,X
-divt $f29,$f28,$f29
-stt $f29,Y
-ldt $f29,Y
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.569
-lda $27,1
-stl $27,-172+256($sp)
-br L.570
-L.569:
-stl $31,-172+256($sp)
-L.570:
-ldl $27,-172+256($sp)
-stl $27,IEEE
-L.564:
-L.548:
-L.549:
-ldl $27,UfNGrad
-cmpeq $27,$31,$23
-bne $23,L.572
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,sigfpe
-stq $27,sigsave
-lda $16,ovfl_buf
-jsr $26,setjmp
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-bne $23,L.574
-lda $16,L.576
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,H
-addt $f30,$f30,$f30
-stt $f30,R
-br L.575
-L.574:
-ldt $f30,Underflow
-ldt $f29,UfThold
-divt $f30,$f29,$f16
-jsr $26,sqrt
-ldgp $gp,0($26)
-stt $f0,R
-L.575:
-stq $31,sigsave
-ldt $f30,R
-ldt $f29,H
-cmptle $f30,$f29,$f1
-fbeq $f1,L.577
-ldt $f30,R
-ldt $f29,UfThold
-mult $f30,$f29,$f29
-stt $f29,Z
-ldt $f29,One
-ldt $f28,H
-ldt $f27,Z
-mult $f30,$f28,$f30
-addt $f29,$f28,$f28
-mult $f30,$f28,$f30
-addt $f29,$f30,$f30
-mult $f27,$f30,$f30
-stt $f30,X
-br L.578
-L.577:
-ldt $f30,UfThold
-stt $f30,Z
-ldt $f30,One
-ldt $f29,H
-ldt $f28,Z
-mult $f29,$f29,$f27
-addt $f30,$f29,$f29
-mult $f27,$f29,$f29
-addt $f30,$f29,$f30
-mult $f28,$f30,$f30
-stt $f30,X
-L.578:
-ldt $f30,X
-ldt $f29,Z
-cmpteq $f30,$f29,$f1
-fbne $f1,L.579
-subt $f30,$f29,$f30
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.579
-lda $16,3
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.581
-ldt $f17,X
-ldt $f18,Z
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,X
-ldt $f29,Z
-subt $f30,$f29,$f30
-stt $f30,Z9
-lda $16,L.582
-ldt $f17,Z9
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.583
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.584
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.585
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.586
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.587
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.588
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,sigfpe
-stq $27,sigsave
-lda $16,ovfl_buf
-jsr $26,setjmp
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-bne $23,L.589
-lda $16,L.591
-jsr $26,printf
-ldgp $gp,0($26)
-br L.590
-L.589:
-lda $16,L.592
-ldt $f30,Half
-ldt $f29,X
-ldt $f28,Z
-divt $f29,$f28,$f29
-subt $f29,$f30,$f29
-subt $f29,$f30,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-L.590:
-stq $31,sigsave
-L.579:
-L.572:
-lda $16,L.593
-ldt $f17,UfThold
-lda $18,L.594
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.595
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.596
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,U1
-mult $f30,$f30,$f29
-stt $f29,Y2
-ldt $f29,Y2
-mult $f29,$f29,$f29
-stt $f29,Y
-ldt $f29,Y
-mult $f29,$f30,$f30
-stt $f30,Y2
-ldt $f30,Y2
-ldt $f29,UfThold
-cmptle $f30,$f29,$f1
-fbeq $f1,L.597
-ldt $f30,Y
-ldt $f29,E0
-cmptle $f30,$f29,$f1
-fbne $f1,L.599
-lda $16,2
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $27,5
-stl $27,I
-br L.600
-L.599:
-lda $16,1
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $27,4
-stl $27,I
-L.600:
-lda $16,L.601
-ldl $17,I
-jsr $26,printf
-ldgp $gp,0($26)
-L.597:
-lda $27,130
-stl $27,Milestone
-ldt $f16,UfThold
-jsr $26,log
-ldgp $gp,0($26)
-fmov $f0,$f30
-stt $f30,-176+256($sp)
-ldt $f16,HInvrse
-jsr $26,log
-ldgp $gp,0($26)
-ldt $f29,Half
-ldt $f28,TwoForty
-ldt $f27,-176+256($sp)
-mult $f28,$f27,$f28
-divt $f28,$f0,$f30
-subt $f29,$f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-negt $f0,$f30
-ldt $f29,TwoForty
-divt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,Y
-addt $f30,$f30,$f30
-stt $f30,Y2
-lda $16,L.602
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.603
-ldt $f17,HInvrse
-ldt $f18,Y
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.604
-ldt $f17,HInvrse
-ldt $f18,Y
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f16,HInvrse
-ldt $f17,Y2
-jsr $26,pow
-ldgp $gp,0($26)
-stt $f0,V9
-lda $16,L.605
-ldt $f17,V9
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,V9
-ldt $f29,Zero
-cmptlt $f30,$f29,$f1
-fbne $f1,L.608
-ldt $f29,Radix
-addt $f29,$f29,$f29
-ldt $f28,E9
-addt $f29,$f28,$f29
-ldt $f28,UfThold
-mult $f29,$f28,$f29
-cmptle $f30,$f29,$f1
-fbne $f1,L.606
-L.608:
-lda $16,1
-lda $17,L.609
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.610
-ldt $f17,UfThold
-jsr $26,printf
-ldgp $gp,0($26)
-br L.607
-L.606:
-ldt $f30,V9
-ldt $f29,UfThold
-ldt $f28,One
-ldt $f27,E9
-addt $f28,$f27,$f28
-mult $f29,$f28,$f29
-cmptle $f30,$f29,$f1
-fbeq $f1,L.611
-lda $16,L.613
-jsr $26,printf
-ldgp $gp,0($26)
-br L.612
-L.611:
-lda $16,2
-lda $17,L.609
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.610
-ldt $f17,UfThold
-jsr $26,printf
-ldgp $gp,0($26)
-L.612:
-L.607:
-lda $27,140
-stl $27,Milestone
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Zero
-stt $f30,X
-lda $27,2
-stl $27,I
-ldt $f29,Two
-ldt $f28,Three
-mult $f29,$f28,$f29
-stt $f29,Y
-stt $f30,Q
-stl $31,N
-L.614:
-ldt $f30,X
-stt $f30,Z
-ldl $27,I
-lda $27,1($27)
-stl $27,I
-ldl $27,I
-ldt $f30,Y
-addl $27,$27,$27
-stq $27,-56+256($sp)
-ldt $f29,-56+256($sp)
-cvtqt $f29,$f29
-divt $f30,$f29,$f30
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,Q
-addt $f30,$f29,$f30
-stt $f30,R
-ldt $f30,Z
-ldt $f29,R
-addt $f30,$f29,$f28
-stt $f28,X
-ldt $f28,X
-subt $f30,$f28,$f30
-addt $f30,$f29,$f30
-stt $f30,Q
-L.615:
-ldt $f30,X
-ldt $f29,Z
-cmptle $f30,$f29,$f1
-fbeq $f1,L.614
-ldt $f30,OneAndHalf
-ldt $f29,One
-ldt $f28,Eight
-divt $f29,$f28,$f29
-addt $f30,$f29,$f29
-ldt $f28,X
-ldt $f27,ThirtyTwo
-mult $f30,$f27,$f30
-divt $f28,$f30,$f30
-addt $f29,$f30,$f30
-stt $f30,Z
-ldt $f30,Z
-mult $f30,$f30,$f30
-stt $f30,X
-ldt $f30,X
-mult $f30,$f30,$f30
-stt $f30,Exp2
-ldt $f30,F9
-stt $f30,X
-ldt $f30,X
-ldt $f29,U1
-subt $f30,$f29,$f30
-stt $f30,Y
-lda $16,L.617
-ldt $f17,Exp2
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,1
-stl $27,I
-L.618:
-ldt $f30,X
-ldt $f29,BInvrse
-subt $f30,$f29,$f28
-stt $f28,Z
-ldt $f28,One
-addt $f30,$f28,$f27
-ldt $f26,Z
-subt $f28,$f29,$f29
-subt $f26,$f29,$f29
-divt $f27,$f29,$f29
-stt $f29,Z
-fmov $f30,$f16
-ldt $f17,Z
-jsr $26,pow
-ldgp $gp,0($26)
-ldt $f29,Exp2
-subt $f0,$f29,$f30
-stt $f30,Q
-ldt $f16,Q
-jsr $26,fabs
-ldgp $gp,0($26)
-ldt $f29,TwoForty
-ldt $f28,U2
-mult $f29,$f28,$f29
-cmptle $f0,$f29,$f1
-fbne $f1,L.622
-lda $27,1
-stl $27,N
-ldt $f30,BInvrse
-ldt $f29,X
-subt $f29,$f30,$f29
-ldt $f28,One
-subt $f28,$f30,$f30
-subt $f29,$f30,$f30
-stt $f30,V9
-lda $16,2
-lda $17,L.624
-jsr $26,BadCond
-ldgp $gp,0($26)
-ldt $f16,X
-ldt $f17,Z
-jsr $26,pow
-ldgp $gp,0($26)
-fmov $f0,$f30
-lda $16,L.625
-fmov $f30,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.626
-ldt $f17,V9
-ldt $f18,Z
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.627
-ldt $f17,Q
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.628
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.629
-jsr $26,printf
-ldgp $gp,0($26)
-br L.620
-L.622:
-ldt $f30,Y
-ldt $f29,X
-subt $f30,$f29,$f29
-ldt $f28,Two
-mult $f29,$f28,$f29
-addt $f29,$f30,$f29
-stt $f29,Z
-stt $f30,X
-ldt $f30,Z
-stt $f30,Y
-ldt $f30,X
-ldt $f29,F9
-subt $f30,$f29,$f30
-ldt $f29,One
-mult $f30,$f30,$f30
-addt $f29,$f30,$f30
-stt $f30,Z
-ldt $f30,Z
-ldt $f29,One
-cmptle $f30,$f29,$f1
-fbne $f1,L.630
-ldl $27,I
-ldl $25,NoTrials
-cmplt $27,$25,$23
-beq $23,L.630
-ldl $27,I
-lda $27,1($27)
-stl $27,I
-br L.618
-L.630:
-ldt $f30,X
-ldt $f29,One
-cmptle $f30,$f29,$f1
-fbne $f1,L.632
-ldl $27,N
-cmpeq $27,$31,$23
-beq $23,L.620
-lda $16,L.636
-jsr $26,printf
-ldgp $gp,0($26)
-br L.620
-L.632:
-ldt $f30,U2
-ldt $f29,One
-addt $f29,$f30,$f29
-stt $f29,X
-addt $f30,$f30,$f30
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,X
-addt $f30,$f29,$f30
-stt $f30,Y
-lda $27,1
-stl $27,I
-br L.618
-L.620:
-lda $27,150
-stl $27,Milestone
-lda $16,L.637
-jsr $26,printf
-ldgp $gp,0($26)
-stl $31,N
-ldt $f30,A1
-stt $f30,Z
-ldt $f16,C
-jsr $26,log
-ldgp $gp,0($26)
-fmov $f0,$f30
-stt $f30,-184+256($sp)
-ldt $f16,A1
-jsr $26,log
-ldgp $gp,0($26)
-ldt $f29,Half
-ldt $f28,-184+256($sp)
-divt $f28,$f0,$f30
-subt $f29,$f30,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-stt $f0,Q
-stl $31,Break
-L.638:
-ldt $f30,CInvrse
-stt $f30,X
-ldt $f16,Z
-ldt $f17,Q
-jsr $26,pow
-ldgp $gp,0($26)
-stt $f0,Y
-jsr $26,IsYeqX
-ldgp $gp,0($26)
-ldt $f30,Q
-negt $f30,$f30
-stt $f30,Q
-ldt $f30,C
-stt $f30,X
-ldt $f16,Z
-ldt $f17,Q
-jsr $26,pow
-ldgp $gp,0($26)
-stt $f0,Y
-jsr $26,IsYeqX
-ldgp $gp,0($26)
-ldt $f30,Z
-ldt $f29,One
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.641
-lda $27,1
-stl $27,Break
-br L.642
-L.641:
-ldt $f30,AInvrse
-stt $f30,Z
-L.642:
-L.639:
-ldl $27,Break
-cmpeq $27,$31,$23
-bne $23,L.638
-jsr $26,PrintIfNPositive
-ldgp $gp,0($26)
-ldl $27,N
-cmpeq $27,$31,$23
-beq $23,L.643
-lda $16,L.645
-jsr $26,printf
-ldgp $gp,0($26)
-L.643:
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,160
-stl $27,Milestone
-jsr $26,Pause
-ldgp $gp,0($26)
-lda $16,L.646
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.647
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,CInvrse
-negt $f30,$f30
-stt $f30,Y
-ldt $f30,HInvrse
-ldt $f29,Y
-mult $f30,$f29,$f30
-stt $f30,V9
-lda $27,sigfpe
-stq $27,sigsave
-lda $16,ovfl_buf
-jsr $26,setjmp
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-bne $23,L.648
-stl $31,I
-ldt $f30,Y
-stt $f30,V9
-br L.650
-L.648:
-L.651:
-ldt $f30,Y
-stt $f30,V
-ldt $f30,V9
-stt $f30,Y
-ldt $f30,HInvrse
-ldt $f29,Y
-mult $f30,$f29,$f30
-stt $f30,V9
-L.652:
-ldt $f30,V9
-ldt $f29,Y
-cmptlt $f30,$f29,$f1
-fbne $f1,L.651
-lda $27,1
-stl $27,I
-L.650:
-stq $31,sigsave
-ldt $f30,V9
-stt $f30,Z
-lda $16,L.654
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.655
-ldt $f17,Y
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Y
-negt $f30,$f29
-stt $f29,V9
-ldt $f29,V9
-stt $f29,V0
-ldt $f29,V
-subt $f29,$f30,$f30
-ldt $f28,V0
-addt $f29,$f28,$f29
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.656
-lda $16,L.658
-jsr $26,printf
-ldgp $gp,0($26)
-br L.657
-L.656:
-lda $16,L.659
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,3
-lda $17,L.660
-jsr $26,BadCond
-ldgp $gp,0($26)
-L.657:
-ldt $f30,Z
-ldt $f29,Y
-cmpteq $f30,$f29,$f1
-fbne $f1,L.661
-lda $16,1
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.663
-ldt $f17,Y
-ldt $f18,Z
-jsr $26,printf
-ldgp $gp,0($26)
-L.661:
-ldl $27,I
-cmpeq $27,$31,$23
-bne $23,L.664
-ldt $f30,V
-ldt $f29,HInvrse
-ldt $f28,U2
-mult $f29,$f28,$f27
-subt $f27,$f29,$f27
-mult $f30,$f27,$f27
-stt $f27,Y
-ldt $f27,Y
-ldt $f26,One
-subt $f26,$f29,$f29
-mult $f29,$f28,$f29
-mult $f29,$f30,$f30
-addt $f27,$f30,$f30
-stt $f30,Z
-ldt $f30,Z
-ldt $f29,V0
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.666
-ldt $f30,Z
-stt $f30,Y
-L.666:
-ldt $f30,Y
-ldt $f29,V0
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.668
-ldt $f30,Y
-stt $f30,V
-L.668:
-ldt $f30,V0
-ldt $f29,V
-subt $f30,$f29,$f29
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.665
-ldt $f30,V0
-stt $f30,V
-br L.665
-L.664:
-ldt $f30,Y
-ldt $f29,HInvrse
-ldt $f28,U2
-mult $f29,$f28,$f27
-subt $f27,$f29,$f27
-mult $f30,$f27,$f27
-stt $f27,V
-ldt $f27,V
-ldt $f26,One
-subt $f26,$f29,$f29
-mult $f29,$f28,$f29
-mult $f29,$f30,$f30
-addt $f27,$f30,$f30
-stt $f30,V
-L.665:
-lda $16,L.672
-ldt $f17,V
-jsr $26,printf
-ldgp $gp,0($26)
-ldl $27,I
-cmpeq $27,$31,$23
-bne $23,L.673
-lda $16,L.675
-ldt $f17,V0
-jsr $26,printf
-ldgp $gp,0($26)
-br L.674
-L.673:
-lda $16,L.676
-jsr $26,printf
-ldgp $gp,0($26)
-L.674:
-ldt $f30,V
-ldt $f29,One
-mult $f30,$f29,$f30
-stt $f30,V9
-lda $16,L.677
-ldt $f17,V9
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,V
-ldt $f29,One
-divt $f30,$f29,$f30
-stt $f30,V9
-lda $16,L.678
-ldt $f17,V9
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.679
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.680
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,170
-stl $27,Milestone
-ldt $f30,V
-negt $f30,$f29
-cmptlt $f29,$f30,$f1
-fbeq $f1,L.685
-ldt $f29,V0
-negt $f29,$f28
-cmptlt $f28,$f29,$f1
-fbeq $f1,L.685
-ldt $f29,UfThold
-negt $f29,$f28
-cmptlt $f28,$f30,$f1
-fbeq $f1,L.685
-cmptlt $f29,$f30,$f1
-fbne $f1,L.681
-L.685:
-mov $31,$16
-lda $17,L.686
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.687
-ldt $f17,V
-ldt $f18,V0
-ldt $f19,UfThold
-jsr $26,printf
-ldgp $gp,0($26)
-L.681:
-lda $27,175
-stl $27,Milestone
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,1
-stl $27,Indx
-L.688:
-ldl $27,Indx
-cmpeq $27,1,$23
-bne $23,L.694
-cmpeq $27,2,$23
-bne $23,L.695
-cmpeq $27,3,$23
-bne $23,L.696
-br L.692
-L.694:
-ldt $f30,UfThold
-stt $f30,Z
-br L.693
-L.695:
-ldt $f30,E0
-stt $f30,Z
-br L.693
-L.696:
-ldt $f30,PseudoZero
-stt $f30,Z
-L.692:
-L.693:
-ldt $f30,Z
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.697
-ldt $f16,Z
-jsr $26,sqrt
-ldgp $gp,0($26)
-stt $f0,V9
-ldt $f30,V9
-mult $f30,$f30,$f30
-stt $f30,Y
-ldt $f30,Y
-ldt $f29,One
-ldt $f28,Radix
-ldt $f27,E9
-mult $f28,$f27,$f28
-ldt $f27,Z
-subt $f29,$f28,$f26
-divt $f30,$f26,$f26
-cmptlt $f26,$f27,$f1
-fbne $f1,L.701
-addt $f29,$f28,$f29
-mult $f29,$f27,$f29
-cmptle $f30,$f29,$f1
-fbne $f1,L.699
-L.701:
-ldt $f30,V9
-ldt $f29,U1
-cmptle $f30,$f29,$f1
-fbne $f1,L.702
-lda $16,1
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-br L.703
-L.702:
-lda $16,2
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-L.703:
-lda $16,L.704
-ldt $f17,Z
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.705
-ldt $f17,Y
-jsr $26,printf
-ldgp $gp,0($26)
-L.699:
-L.697:
-L.689:
-ldl $27,Indx
-lda $27,1($27)
-stl $27,Indx
-ldl $27,Indx
-cmple $27,3,$23
-bne $23,L.688
-lda $27,180
-stl $27,Milestone
-lda $27,1
-stl $27,Indx
-L.706:
-ldl $27,Indx
-cmpeq $27,1,$23
-beq $23,L.710
-ldt $f30,V
-stt $f30,Z
-br L.711
-L.710:
-ldt $f30,V0
-stt $f30,Z
-L.711:
-ldt $f16,Z
-jsr $26,sqrt
-ldgp $gp,0($26)
-stt $f0,V9
-ldt $f30,V9
-ldt $f29,One
-ldt $f28,Radix
-ldt $f27,E9
-mult $f28,$f27,$f28
-subt $f29,$f28,$f29
-mult $f29,$f30,$f29
-stt $f29,X
-ldt $f29,X
-mult $f30,$f29,$f30
-stt $f30,V9
-ldt $f30,V9
-ldt $f29,Z
-ldt $f28,One
-ldt $f27,Two
-ldt $f26,Radix
-mult $f27,$f26,$f27
-ldt $f26,E9
-mult $f27,$f26,$f27
-subt $f28,$f27,$f28
-mult $f28,$f29,$f28
-cmptlt $f30,$f28,$f1
-fbne $f1,L.714
-cmptle $f30,$f29,$f1
-fbne $f1,L.712
-L.714:
-ldt $f30,V9
-stt $f30,Y
-ldt $f30,X
-ldt $f29,W
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.715
-lda $16,1
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-br L.716
-L.715:
-lda $16,2
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-L.716:
-lda $16,L.717
-ldt $f17,Z
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.718
-ldt $f17,Y
-jsr $26,printf
-ldgp $gp,0($26)
-L.712:
-L.707:
-ldl $27,Indx
-lda $27,1($27)
-stl $27,Indx
-ldl $27,Indx
-cmple $27,2,$23
-bne $23,L.706
-lda $27,190
-stl $27,Milestone
-jsr $26,Pause
-ldgp $gp,0($26)
-ldt $f30,UfThold
-ldt $f29,V
-mult $f30,$f29,$f30
-stt $f30,X
-ldt $f30,Radix
-mult $f30,$f30,$f30
-stt $f30,Y
-ldt $f30,X
-ldt $f29,Y
-mult $f30,$f29,$f28
-ldt $f27,One
-cmptlt $f28,$f27,$f1
-fbne $f1,L.721
-cmptle $f30,$f29,$f1
-fbne $f1,L.719
-L.721:
-ldt $f30,X
-ldt $f29,Y
-ldt $f28,U1
-mult $f30,$f29,$f27
-cmptlt $f27,$f28,$f1
-fbne $f1,L.724
-divt $f29,$f28,$f29
-cmptle $f30,$f29,$f1
-fbne $f1,L.722
-L.724:
-lda $16,2
-lda $17,L.725
-jsr $26,BadCond
-ldgp $gp,0($26)
-br L.723
-L.722:
-lda $16,3
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-L.723:
-lda $16,L.726
-ldt $f17,X
-lda $18,L.727
-jsr $26,printf
-ldgp $gp,0($26)
-L.719:
-lda $27,200
-stl $27,Milestone
-lda $27,1
-stl $27,Indx
-L.728:
-ldt $f30,F9
-stt $f30,X
-ldl $27,Indx
-cmplt $27,2,$23
-bne $23,L.732
-cmple $27,5,$23
-beq $23,L.732
-subl $27,2,$27
-sll $27,3,$27
-ldq $27,L.738($27)
-jmp ($27)
-.rdata
-.align 3
-L.738:
-.quad L.734
-.quad L.735
-.quad L.736
-.quad L.737
-.text
-L.734:
-ldt $f30,One
-ldt $f29,U2
-addt $f30,$f29,$f30
-stt $f30,X
-br L.733
-L.735:
-ldt $f30,V
-stt $f30,X
-br L.733
-L.736:
-ldt $f30,UfThold
-stt $f30,X
-br L.733
-L.737:
-ldt $f30,Radix
-stt $f30,X
-L.732:
-L.733:
-ldt $f30,X
-stt $f30,Y
-lda $27,sigfpe
-stq $27,sigsave
-lda $16,ovfl_buf
-jsr $26,setjmp
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-bne $23,L.739
-lda $16,L.741
-ldt $f17,X
-jsr $26,printf
-ldgp $gp,0($26)
-br L.740
-L.739:
-ldt $f30,Half
-ldt $f29,Y
-ldt $f28,X
-divt $f29,$f28,$f29
-subt $f29,$f30,$f29
-subt $f29,$f30,$f30
-stt $f30,V9
-ldt $f30,V9
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.742
-br L.729
-L.742:
-ldt $f30,V9
-ldt $f29,U1
-negt $f29,$f29
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.744
-ldl $27,Indx
-cmplt $27,5,$23
-beq $23,L.744
-lda $16,3
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-br L.745
-L.744:
-lda $16,1
-lda $17,L.158
-jsr $26,BadCond
-ldgp $gp,0($26)
-L.745:
-lda $16,L.746
-ldt $f17,X
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.747
-ldt $f17,V9
-jsr $26,printf
-ldgp $gp,0($26)
-L.740:
-stq $31,sigsave
-L.729:
-ldl $27,Indx
-lda $27,1($27)
-stl $27,Indx
-ldl $27,Indx
-cmple $27,5,$23
-bne $23,L.728
-lda $27,210
-stl $27,Milestone
-ldt $f30,Zero
-stt $f30,MyZero
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.748
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,sigfpe
-stq $27,sigsave
-lda $16,L.749
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,ovfl_buf
-jsr $26,setjmp
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-beq $23,L.750
-lda $16,L.752
-ldt $f30,One
-ldt $f29,MyZero
-divt $f30,$f29,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-L.750:
-stq $31,sigsave
-lda $27,sigfpe
-stq $27,sigsave
-lda $16,L.753
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,ovfl_buf
-jsr $26,setjmp
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-beq $23,L.754
-lda $16,L.752
-ldt $f30,Zero
-ldt $f29,MyZero
-divt $f30,$f29,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-L.754:
-stq $31,sigsave
-lda $27,220
-stl $27,Milestone
-jsr $26,Pause
-ldgp $gp,0($26)
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-stl $31,-188+256($sp)
-L.761:
-ldl $27,-188+256($sp)
-sll $27,2,$27
-ldl $27,ErrCnt($27)
-cmpeq $27,$31,$23
-bne $23,L.765
-lda $16,L.767
-ldl $27,-188+256($sp)
-sll $27,3,$25
-ldq $17,L.756($25)
-sll $27,2,$27
-ldl $18,ErrCnt($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.765:
-L.762:
-ldl $27,-188+256($sp)
-lda $27,1($27)
-stl $27,-188+256($sp)
-ldl $27,-188+256($sp)
-cmplt $27,4,$23
-bne $23,L.761
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-ldl $27,ErrCnt
-ldl $25,ErrCnt+4
-addl $27,$25,$27
-ldl $25,ErrCnt+8
-addl $27,$25,$27
-ldl $25,ErrCnt+12
-addl $27,$25,$27
-cmple $27,$31,$23
-bne $23,L.768
-ldl $25,ErrCnt
-ldl $22,ErrCnt+4
-addl $25,$22,$25
-ldl $22,ErrCnt+8
-addl $25,$22,$25
-cmpeq $25,$31,$23
-beq $23,L.773
-ldl $25,ErrCnt+12
-cmple $25,$31,$23
-bne $23,L.773
-lda $16,L.778
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.779
-jsr $26,printf
-ldgp $gp,0($26)
-L.773:
-ldl $25,ErrCnt
-ldl $22,ErrCnt+4
-addl $25,$22,$25
-cmpeq $25,$31,$23
-beq $23,L.780
-ldl $25,ErrCnt+8
-cmple $25,$31,$23
-bne $23,L.780
-lda $16,L.784
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.785
-jsr $26,printf
-ldgp $gp,0($26)
-L.780:
-ldl $27,ErrCnt
-ldl $25,ErrCnt+4
-addl $27,$25,$27
-cmple $27,$31,$23
-bne $23,L.786
-lda $16,L.789
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.790
-jsr $26,printf
-ldgp $gp,0($26)
-L.786:
-ldl $27,ErrCnt
-cmple $27,$31,$23
-bne $23,L.769
-lda $16,L.793
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.794
-jsr $26,printf
-ldgp $gp,0($26)
-br L.769
-L.768:
-lda $16,L.795
-jsr $26,printf
-ldgp $gp,0($26)
-ldl $27,RMult
-cmpeq $27,1,$23
-beq $23,L.800
-ldl $27,RDiv
-cmpeq $27,1,$23
-beq $23,L.800
-ldl $27,RAddSub
-cmpeq $27,1,$23
-beq $23,L.800
-ldl $27,RSqrt
-cmpeq $27,1,$23
-bne $23,L.796
-L.800:
-lda $16,L.801
-jsr $26,printf
-ldgp $gp,0($26)
-br L.797
-L.796:
-ldt $f30,One
-ldt $f29,StickyBit
-cmptlt $f29,$f30,$f1
-fbne $f1,L.802
-ldt $f29,Radix
-ldt $f28,Two
-subt $f29,$f28,$f28
-ldt $f27,Nine
-subt $f29,$f27,$f29
-subt $f29,$f30,$f30
-mult $f28,$f30,$f30
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.802
-lda $16,L.804
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.805
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Two
-ldt $f29,Radix
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.806
-ldt $f29,Precision
-ldt $f28,TwentySeven
-ldt $f27,Four
-ldt $f26,Three
-mult $f27,$f26,$f27
-mult $f27,$f30,$f30
-subt $f29,$f30,$f30
-subt $f29,$f28,$f29
-subt $f29,$f28,$f29
-ldt $f28,One
-addt $f29,$f28,$f29
-mult $f30,$f29,$f30
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.806
-lda $16,L.808
-jsr $26,printf
-ldgp $gp,0($26)
-br L.807
-L.806:
-lda $16,L.809
-jsr $26,printf
-ldgp $gp,0($26)
-L.807:
-ldl $27,IEEE
-cmpeq $27,$31,$23
-bne $23,L.810
-lda $16,L.812
-jsr $26,printf
-ldgp $gp,0($26)
-br L.811
-L.810:
-lda $16,L.813
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.814
-jsr $26,printf
-ldgp $gp,0($26)
-L.811:
-L.802:
-lda $16,L.815
-jsr $26,printf
-ldgp $gp,0($26)
-L.797:
-L.769:
-ldl $27,fpecount
-cmpeq $27,$31,$23
-bne $23,L.816
-lda $16,L.818
-ldl $17,fpecount
-jsr $26,printf
-ldgp $gp,0($26)
-L.816:
-lda $16,L.819
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.7:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $26,48($sp)
-lda $sp,256($sp)
-ret
-.end main
-.globl Sign
-.text
-.ent Sign
-Sign:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.fmask 0x200,-80
-.mask 0x4000000,-72
-.frame $sp,80,$26,48
-stt $f9,0($sp)
-stq $26,8($sp)
-.prologue 1
-ldt $f30,L.8
-cmptlt $f16,$f30,$f1
-fbne $f1,L.822
-ldt $f9,L.9
-br L.823
-L.822:
-ldt $f9,L.824
-L.823:
-fmov $f9,$f0
-L.820:
-ldt $f9,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end Sign
-.globl Pause
-.text
-.ent Pause
-Pause:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-lda $16,L.826
-ldl $17,Milestone
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.827
-ldl $17,PageNo
-jsr $26,printf
-ldgp $gp,0($26)
-ldl $27,Milestone
-lda $27,1($27)
-stl $27,Milestone
-ldl $27,PageNo
-lda $27,1($27)
-stl $27,PageNo
-mov $31,$0
-L.825:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end Pause
-.globl TstCond
-.text
-.ent TstCond
-TstCond:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-stq $17,24($sp)
-stq $18,32($sp)
-.prologue 1
-ldl $27,-40+64($sp)
-cmpeq $27,$31,$23
-beq $23,L.829
-ldl $16,-48+64($sp)
-ldq $17,-32+64($sp)
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.812
-jsr $26,printf
-ldgp $gp,0($26)
-L.829:
-mov $31,$0
-L.828:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end TstCond
-.sdata
-.align 3
-L.832:
-.quad L.833
-.quad L.834
-.quad L.835
-.quad L.836
-.globl BadCond
-.text
-.text
-.ent BadCond
-BadCond:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-mov $16,$14
-stq $17,40($sp)
-.prologue 1
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-lda $27,ErrCnt($27)
-ldl $25,($27)
-lda $25,1($25)
-stl $25,($27)
-lda $16,L.837
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-ldq $17,L.832($27)
-ldq $18,-40+80($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.831:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end BadCond
-.globl Random
-.text
-.ent Random
-Random:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.fmask 0x300,-72
-.mask 0x4000000,-64
-.frame $sp,80,$26,48
-stt $f8,0($sp)
-stt $f9,8($sp)
-stq $26,16($sp)
-.prologue 1
-ldt $f30,Random1
-ldt $f29,Random9
-addt $f30,$f29,$f9
-mult $f9,$f9,$f8
-mult $f8,$f8,$f8
-mult $f9,$f8,$f9
-fmov $f9,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-subt $f9,$f0,$f8
-ldt $f30,L.839
-mult $f30,$f9,$f30
-addt $f8,$f30,$f30
-stt $f30,Random1
-ldt $f0,Random1
-L.838:
-ldt $f8,0($sp)
-ldt $f9,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end Random
-.globl SqXMinX
-.text
-.ent SqXMinX
-SqXMinX:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.fmask 0x200,-80
-.mask 0x4000000,-72
-.frame $sp,80,$26,48
-stt $f9,0($sp)
-stq $26,8($sp)
-stq $16,32($sp)
-.prologue 1
-ldt $f30,X
-ldt $f29,BInvrse
-mult $f30,$f29,$f9
-subt $f30,$f9,$f29
-stt $f29,-64+80($sp)
-mult $f30,$f30,$f16
-jsr $26,sqrt
-ldgp $gp,0($26)
-subt $f0,$f9,$f30
-ldt $f29,-64+80($sp)
-subt $f30,$f29,$f30
-ldt $f29,OneUlp
-divt $f30,$f29,$f30
-stt $f30,SqEr
-ldt $f30,SqEr
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.841
-ldt $f30,SqEr
-ldt $f29,MinSqEr
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.843
-ldt $f30,SqEr
-stt $f30,MinSqEr
-L.843:
-ldt $f30,SqEr
-ldt $f29,MaxSqEr
-cmptle $f30,$f29,$f1
-fbne $f1,L.845
-ldt $f30,SqEr
-stt $f30,MaxSqEr
-L.845:
-ldt $f30,J
-ldt $f29,L.9
-addt $f30,$f29,$f30
-stt $f30,J
-ldl $16,-48+80($sp)
-lda $17,L.45
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.847
-ldt $f30,X
-mult $f30,$f30,$f17
-fmov $f30,$f18
-ldt $f30,OneUlp
-ldt $f29,SqEr
-mult $f30,$f29,$f19
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.848
-jsr $26,printf
-ldgp $gp,0($26)
-L.841:
-mov $31,$0
-L.840:
-ldt $f9,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end SqXMinX
-.globl NewD
-.text
-.ent NewD
-NewD:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-ldt $f30,Z1
-ldt $f29,Q
-mult $f30,$f29,$f30
-stt $f30,X
-ldt $f30,Half
-ldt $f29,X
-ldt $f28,Radix
-divt $f29,$f28,$f29
-subt $f30,$f29,$f16
-jsr $26,floor
-ldgp $gp,0($26)
-ldt $f29,Radix
-mult $f0,$f29,$f30
-ldt $f28,X
-addt $f30,$f28,$f30
-stt $f30,X
-ldt $f30,X
-ldt $f28,Z
-ldt $f27,D
-ldt $f26,Q
-mult $f30,$f28,$f25
-subt $f26,$f25,$f26
-divt $f26,$f29,$f26
-mult $f30,$f30,$f25
-divt $f27,$f29,$f29
-mult $f25,$f29,$f29
-addt $f26,$f29,$f29
-stt $f29,Q
-ldt $f29,Two
-mult $f29,$f30,$f30
-mult $f30,$f27,$f30
-subt $f28,$f30,$f30
-stt $f30,Z
-ldt $f30,Z
-ldt $f29,Zero
-cmptle $f30,$f29,$f1
-fbeq $f1,L.850
-ldt $f30,Z
-negt $f30,$f30
-stt $f30,Z
-ldt $f30,Z1
-negt $f30,$f30
-stt $f30,Z1
-L.850:
-ldt $f30,Radix
-ldt $f29,D
-mult $f30,$f29,$f30
-stt $f30,D
-mov $31,$0
-L.849:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end NewD
-.globl SR3750
-.text
-.ent SR3750
-SR3750:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-ldt $f30,X
-ldt $f29,Radix
-ldt $f28,Z2
-subt $f30,$f29,$f27
-subt $f28,$f29,$f29
-cmptlt $f27,$f29,$f1
-fbne $f1,L.853
-subt $f30,$f28,$f30
-ldt $f29,W
-subt $f29,$f28,$f29
-cmptle $f30,$f29,$f1
-fbeq $f1,L.853
-ldl $27,I
-lda $27,1($27)
-stl $27,I
-ldt $f30,X
-ldt $f29,D
-mult $f30,$f29,$f16
-jsr $26,sqrt
-ldgp $gp,0($26)
-stt $f0,X2
-ldt $f30,Z2
-ldt $f29,Y
-ldt $f28,X2
-subt $f28,$f30,$f28
-subt $f29,$f30,$f30
-subt $f28,$f30,$f30
-stt $f30,Y2
-ldt $f30,Half
-ldt $f28,X8
-subt $f29,$f30,$f29
-divt $f28,$f29,$f29
-stt $f29,X2
-ldt $f29,X2
-mult $f30,$f29,$f28
-mult $f28,$f29,$f28
-subt $f29,$f28,$f29
-stt $f29,X2
-ldt $f29,Y2
-addt $f29,$f30,$f29
-ldt $f28,X2
-subt $f30,$f28,$f30
-addt $f29,$f30,$f30
-stt $f30,SqEr
-ldt $f30,SqEr
-ldt $f29,MinSqEr
-cmptlt $f30,$f29,$f1
-fbeq $f1,L.855
-ldt $f30,SqEr
-stt $f30,MinSqEr
-L.855:
-ldt $f30,Y2
-ldt $f29,X2
-subt $f30,$f29,$f30
-stt $f30,SqEr
-ldt $f30,SqEr
-ldt $f29,MaxSqEr
-cmptle $f30,$f29,$f1
-fbne $f1,L.857
-ldt $f30,SqEr
-stt $f30,MaxSqEr
-L.857:
-L.853:
-mov $31,$0
-L.852:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end SR3750
-.globl IsYeqX
-.text
-.ent IsYeqX
-IsYeqX:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-ldt $f30,Y
-ldt $f29,X
-cmpteq $f30,$f29,$f1
-fbne $f1,L.860
-ldl $27,N
-cmple $27,$31,$23
-beq $23,L.862
-ldt $f30,Zero
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbeq $f1,L.864
-ldt $f29,Q
-cmptle $f29,$f30,$f1
-fbeq $f1,L.864
-lda $16,L.866
-jsr $26,printf
-ldgp $gp,0($26)
-br L.865
-L.864:
-lda $16,2
-lda $17,L.867
-jsr $26,BadCond
-ldgp $gp,0($26)
-L.865:
-lda $16,L.868
-ldt $f17,Z
-ldt $f18,Q
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.869
-ldt $f17,Y
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.870
-ldt $f17,X
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.871
-ldt $f30,Y
-ldt $f29,X
-subt $f30,$f29,$f17
-jsr $26,printf
-ldgp $gp,0($26)
-L.862:
-ldl $27,N
-lda $27,1($27)
-stl $27,N
-L.860:
-mov $31,$0
-L.859:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end IsYeqX
-.globl SR3980
-.text
-.ent SR3980
-SR3980:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-L.873:
-lds $f30,I
-cvtlq $f30,$f30
-cvtqt $f30,$f30
-stt $f30,Q
-ldt $f16,Z
-ldt $f17,Q
-jsr $26,pow
-ldgp $gp,0($26)
-stt $f0,Y
-jsr $26,IsYeqX
-ldgp $gp,0($26)
-ldl $27,I
-lda $27,1($27)
-stl $27,I
-ldl $25,M
-cmple $27,$25,$23
-bne $23,L.876
-br L.875
-L.876:
-ldt $f30,Z
-ldt $f29,X
-mult $f30,$f29,$f30
-stt $f30,X
-L.874:
-ldt $f30,X
-ldt $f29,W
-cmptlt $f30,$f29,$f1
-fbne $f1,L.873
-L.875:
-mov $31,$0
-L.872:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end SR3980
-.globl PrintIfNPositive
-.text
-.ent PrintIfNPositive
-PrintIfNPositive:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-ldl $27,N
-cmple $27,$31,$23
-bne $23,L.879
-lda $16,L.881
-ldl $17,N
-jsr $26,printf
-ldgp $gp,0($26)
-L.879:
-mov $31,$0
-L.878:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end PrintIfNPositive
-.globl TstPtUf
-.text
-.ent TstPtUf
-TstPtUf:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-stl $31,N
-ldt $f30,Z
-ldt $f29,Zero
-cmpteq $f30,$f29,$f1
-fbne $f1,L.883
-lda $16,L.885
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.886
-jsr $26,printf
-ldgp $gp,0($26)
-lda $27,sigfpe
-stq $27,sigsave
-lda $16,ovfl_buf
-jsr $26,setjmp
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-bne $23,L.887
-br L.889
-L.887:
-ldt $f30,Z
-addt $f30,$f30,$f29
-divt $f29,$f30,$f30
-stt $f30,Q9
-lda $16,L.890
-ldt $f17,Q9
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Q9
-ldt $f29,Two
-subt $f30,$f29,$f16
-jsr $26,fabs
-ldgp $gp,0($26)
-ldt $f29,Radix
-ldt $f28,U2
-mult $f29,$f28,$f29
-cmptlt $f0,$f29,$f1
-fbeq $f1,L.891
-lda $16,L.893
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.894
-jsr $26,printf
-ldgp $gp,0($26)
-br L.892
-L.891:
-ldt $f30,Q9
-ldt $f29,One
-cmptlt $f30,$f29,$f1
-fbne $f1,L.897
-ldt $f29,Two
-cmptle $f30,$f29,$f1
-fbne $f1,L.895
-L.897:
-L.889:
-lda $27,1
-stl $27,N
-ldl $27,ErrCnt+4
-lda $27,1($27)
-stl $27,ErrCnt+4
-lda $16,L.900
-jsr $26,printf
-ldgp $gp,0($26)
-br L.896
-L.895:
-lda $27,1
-stl $27,N
-ldl $27,ErrCnt+8
-lda $27,1($27)
-stl $27,ErrCnt+8
-lda $16,L.903
-jsr $26,printf
-ldgp $gp,0($26)
-L.896:
-L.892:
-stq $31,sigsave
-ldt $f30,Z
-ldt $f29,One
-mult $f30,$f29,$f28
-stt $f28,V9
-ldt $f28,V9
-stt $f28,Random1
-mult $f29,$f30,$f28
-stt $f28,V9
-ldt $f28,V9
-stt $f28,Random2
-divt $f30,$f29,$f30
-stt $f30,V9
-ldt $f30,Z
-ldt $f29,Random1
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.904
-ldt $f29,Random2
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.904
-ldt $f29,V9
-cmpteq $f30,$f29,$f1
-fbeq $f1,L.904
-ldl $27,N
-cmple $27,$31,$23
-bne $23,L.905
-jsr $26,Pause
-ldgp $gp,0($26)
-br L.905
-L.904:
-lda $27,1
-stl $27,N
-lda $16,2
-lda $17,L.908
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.909
-ldt $f17,Z
-jsr $26,printf
-ldgp $gp,0($26)
-ldt $f30,Z
-ldt $f29,Random1
-cmpteq $f30,$f29,$f1
-fbne $f1,L.910
-lda $16,L.912
-ldt $f17,Random1
-jsr $26,printf
-ldgp $gp,0($26)
-L.910:
-ldt $f30,Random2
-ldt $f29,Z
-cmpteq $f29,$f30,$f1
-fbne $f1,L.913
-ldt $f29,Random1
-cmpteq $f30,$f29,$f1
-fbne $f1,L.913
-lda $16,L.915
-ldt $f17,Random2
-jsr $26,printf
-ldgp $gp,0($26)
-L.913:
-ldt $f30,Z
-ldt $f29,V9
-cmpteq $f30,$f29,$f1
-fbne $f1,L.916
-lda $16,L.918
-ldt $f17,V9
-jsr $26,printf
-ldgp $gp,0($26)
-L.916:
-ldt $f30,Random2
-ldt $f29,Random1
-cmpteq $f30,$f29,$f1
-fbne $f1,L.919
-ldl $27,ErrCnt+8
-lda $27,1($27)
-stl $27,ErrCnt+8
-lda $16,2
-lda $17,L.923
-jsr $26,BadCond
-ldgp $gp,0($26)
-lda $16,L.924
-ldt $f17,Random2
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.925
-ldt $f17,Random1
-jsr $26,printf
-ldgp $gp,0($26)
-L.919:
-jsr $26,Pause
-ldgp $gp,0($26)
-L.905:
-L.883:
-mov $31,$0
-L.882:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end TstPtUf
-.globl notify
-.text
-.ent notify
-notify:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-.prologue 1
-lda $16,L.927
-ldq $17,-48+64($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,L.928
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.926:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end notify
-.globl msglist
-.text
-.ent msglist
-msglist:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-mov $16,$14
-.prologue 1
-br L.931
-L.930:
-lda $16,L.933
-mov $14,$27
-lda $14,8($27)
-ldq $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.931:
-ldq $27,($14)
-cmpeq $27,$31,$23
-beq $23,L.930
-mov $31,$0
-L.929:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end msglist
-.sdata
-.align 3
-L.935:
-.quad L.936
-.quad L.937
-.quad L.938
-.quad L.939
-.quad L.940
-.quad L.941
-.quad L.942
-.quad L.943
-.quad L.944
-.quad 0x0
-.globl Instructions
-.text
-.text
-.ent Instructions
-Instructions:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-lda $16,L.935
-jsr $26,msglist
-ldgp $gp,0($26)
-mov $31,$0
-L.934:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end Instructions
-.sdata
-.align 3
-L.946:
-.quad L.947
-.quad L.948
-.quad L.949
-.quad L.950
-.quad L.951
-.quad L.952
-.quad L.953
-.quad L.954
-.quad L.955
-.quad L.956
-.quad L.957
-.quad L.958
-.quad L.959
-.quad L.960
-.quad 0x0
-.globl Heading
-.text
-.text
-.ent Heading
-Heading:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-lda $16,L.946
-jsr $26,msglist
-ldgp $gp,0($26)
-mov $31,$0
-L.945:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end Heading
-.sdata
-.align 3
-L.962:
-.quad L.963
-.quad L.964
-.quad L.965
-.quad L.966
-.quad L.967
-.quad L.968
-.quad L.969
-.quad L.970
-.quad L.971
-.quad L.972
-.quad L.973
-.quad L.974
-.quad L.975
-.quad L.976
-.quad L.977
-.quad L.978
-.quad L.979
-.quad L.980
-.quad L.981
-.quad 0x0
-.globl Characteristics
-.text
-.text
-.ent Characteristics
-Characteristics:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-lda $16,L.962
-jsr $26,msglist
-ldgp $gp,0($26)
-mov $31,$0
-L.961:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end Characteristics
-.sdata
-.align 3
-L.983:
-.quad L.984
-.quad L.985
-.quad L.986
-.quad L.987
-.quad L.988
-.quad L.989
-.quad L.990
-.quad L.991
-.quad L.992
-.quad L.993
-.quad L.994
-.quad L.995
-.quad L.996
-.quad L.997
-.quad L.998
-.quad L.999
-.quad L.1000
-.quad 0x0
-.globl History
-.text
-.text
-.ent History
-History:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-lda $16,L.983
-jsr $26,msglist
-ldgp $gp,0($26)
-mov $31,$0
-L.982:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end History
-.globl pow
-.text
-.ent pow
-pow:
-ldgp $gp,0($27)
-lda $sp,-128($sp)
-.fmask 0x380,-112
-.mask 0x4006000,-88
-.frame $sp,128,$26,48
-stt $f7,0($sp)
-stt $f8,8($sp)
-stt $f9,16($sp)
-stq $13,24($sp)
-stq $14,32($sp)
-stq $26,40($sp)
-fmov $f16,$f9
-fmov $f17,$f8
-.prologue 1
-mov $31,$13
-stl $31,-64+128($sp)
-ldt $f30,L.8
-cmpteq $f8,$f30,$f1
-fbeq $f1,L.1002
-ldt $f0,L.9
-br L.1001
-L.1002:
-ldt $f30,L.1007
-cmptlt $f8,$f30,$f1
-fbne $f1,L.1006
-ldt $f30,L.1008
-cmptle $f8,$f30,$f1
-fbne $f1,L.1004
-L.1006:
-ldt $f30,L.824
-cmpteq $f9,$f30,$f1
-fbne $f1,L.1004
-fmov $f9,$f16
-jsr $26,log
-ldgp $gp,0($26)
-fmov $f0,$f30
-mult $f8,$f30,$f16
-jsr $26,exp
-ldgp $gp,0($26)
-fmov $f0,$f30
-br L.1001
-L.1004:
-ldt $f30,L.8
-cmptlt $f8,$f30,$f1
-fbeq $f1,L.1009
-negt $f8,$f8
-lda $27,1
-stl $27,-64+128($sp)
-L.1009:
-fmov $f8,$f16
-lda $17,-72+128($sp)
-jsr $26,modf
-ldgp $gp,0($26)
-fmov $f0,$f8
-ldt $f30,L.8
-cmpteq $f8,$f30,$f1
-fbne $f1,L.1011
-fmov $f9,$f16
-jsr $26,log
-ldgp $gp,0($26)
-fmov $f0,$f30
-mult $f8,$f30,$f16
-jsr $26,exp
-ldgp $gp,0($26)
-fmov $f0,$f7
-br L.1012
-L.1011:
-ldt $f7,L.9
-L.1012:
-fmov $f9,$f16
-lda $17,-60+128($sp)
-jsr $26,frexp
-ldgp $gp,0($26)
-fmov $f0,$f9
-ldt $f30,-72+128($sp)
-cvttqc $f30,$f1
-stt $f1,-56+128($sp)
-ldq $27,-56+128($sp)
-mov $27,$14
-cmpeq $27,$31,$23
-bne $23,L.1013
-L.1015:
-and $14,1,$27
-cmpeq $27,$31,$23
-bne $23,L.1019
-mult $f7,$f9,$f7
-ldl $27,-60+128($sp)
-addl $13,$27,$13
-L.1019:
-sra $14,1,$27
-mov $27,$14
-cmpeq $27,$31,$23
-beq $23,L.1021
-br L.1017
-L.1021:
-mult $f9,$f9,$f9
-ldl $27,-60+128($sp)
-sll $27,1,$27
-addl $27,0,$27
-stl $27,-60+128($sp)
-ldt $f30,L.1025
-cmptlt $f9,$f30,$f1
-fbeq $f1,L.1015
-ldt $f30,L.1026
-mult $f30,$f9,$f9
-ldl $27,-60+128($sp)
-subl $27,1,$27
-stl $27,-60+128($sp)
-br L.1015
-L.1017:
-L.1013:
-ldl $27,-64+128($sp)
-cmpeq $27,$31,$23
-bne $23,L.1027
-ldt $f30,L.9
-divt $f30,$f7,$f7
-negl $13,$13
-L.1027:
-fmov $f7,$f16
-mov $13,$17
-jsr $26,ldexp
-ldgp $gp,0($26)
-fmov $f0,$f30
-L.1001:
-ldt $f7,0($sp)
-ldt $f8,8($sp)
-ldt $f9,16($sp)
-ldq $13,24($sp)
-ldq $14,32($sp)
-ldq $26,40($sp)
-lda $sp,128($sp)
-ret
-.end pow
-.globl UfNGrad
-.comm UfNGrad,4
-.globl SqRWrng
-.comm SqRWrng,4
-.globl IEEE
-.comm IEEE,4
-.globl Anomaly
-.comm Anomaly,4
-.globl Monot
-.comm Monot,4
-.globl NotMonot
-.comm NotMonot,4
-.globl Done
-.comm Done,4
-.globl Break
-.comm Break,4
-.globl RSqrt
-.comm RSqrt,4
-.globl RAddSub
-.comm RAddSub,4
-.globl RDiv
-.comm RDiv,4
-.globl RMult
-.comm RMult,4
-.globl GAddSub
-.comm GAddSub,4
-.globl GDiv
-.comm GDiv,4
-.globl GMult
-.comm GMult,4
-.globl N1
-.comm N1,4
-.globl N
-.comm N,4
-.globl M
-.comm M,4
-.globl PageNo
-.comm PageNo,4
-.globl Milestone
-.comm Milestone,4
-.globl fpecount
-.comm fpecount,4
-.globl ErrCnt
-.comm ErrCnt,16
-.globl Z9
-.comm Z9,8
-.globl Z2
-.comm Z2,8
-.globl Z1
-.comm Z1,8
-.globl PseudoZero
-.comm PseudoZero,8
-.globl Z
-.comm Z,8
-.globl Random2
-.comm Random2,8
-.globl Y2
-.comm Y2,8
-.globl Y1
-.comm Y1,8
-.globl Y
-.comm Y,8
-.globl Random1
-.comm Random1,8
-.globl X8
-.comm X8,8
-.globl X2
-.comm X2,8
-.globl X1
-.comm X1,8
-.globl X
-.comm X,8
-.globl W
-.comm W,8
-.globl V9
-.comm V9,8
-.globl V0
-.comm V0,8
-.globl V
-.comm V,8
-.globl U2
-.comm U2,8
-.globl U1
-.comm U1,8
-.globl UfThold
-.comm UfThold,8
-.globl OneUlp
-.comm OneUlp,8
-.globl S
-.comm S,8
-.globl Underflow
-.comm Underflow,8
-.globl T
-.comm T,8
-.globl Random9
-.comm Random9,8
-.globl R
-.comm R,8
-.globl Q9
-.comm Q9,8
-.globl Q
-.comm Q,8
-.globl Precision
-.comm Precision,8
-.globl MyZero
-.comm MyZero,8
-.globl J
-.comm J,8
-.globl StickyBit
-.comm StickyBit,8
-.globl I
-.comm I,4
-.globl HInvrse
-.comm HInvrse,8
-.globl H
-.comm H,8
-.globl F9
-.comm F9,8
-.globl F6
-.comm F6,8
-.globl Third
-.comm Third,8
-.globl E9
-.comm E9,8
-.globl MaxSqEr
-.comm MaxSqEr,8
-.globl SqEr
-.comm SqEr,8
-.globl MinSqEr
-.comm MinSqEr,8
-.globl E3
-.comm E3,8
-.globl Exp2
-.comm Exp2,8
-.globl E1
-.comm E1,8
-.globl E0
-.comm E0,8
-.globl FourD
-.comm FourD,8
-.globl D
-.comm D,8
-.globl CInvrse
-.comm CInvrse,8
-.globl C
-.comm C,8
-.globl A1
-.comm A1,8
-.globl AInvrse
-.comm AInvrse,8
-.globl ch
-.comm ch,8
-.globl Indx
-.comm Indx,4
-.globl BMinusU2
-.comm BMinusU2,8
-.globl RadixD2
-.comm RadixD2,8
-.globl BInvrse
-.comm BInvrse,8
-.globl Radix
-.comm Radix,8
-.globl sigsave
-.comm sigsave,8
-.globl ovfl_buf
-.comm ovfl_buf,336
-.extern _iob 0
-.rdata
-.align 3
-L.1026:
-.long 0x0
-.long 0x40000000
-.align 3
-L.1025:
-.long 0x0
-.long 0x3fe00000
-.align 3
-L.1008:
-.long 0x0
-.long 0x40913000
-.align 3
-L.1007:
-.long 0x0
-.long 0xc0913000
-.align 0
-L.1000:
-.byte 115
-.byte 101
-.byte 101
-.byte 32
-.byte 115
-.byte 111
-.byte 117
-.byte 114
-.byte 99
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 109
-.byte 111
-.byte 114
-.byte 101
-.byte 32
-.byte 104
-.byte 105
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 46
-.byte 0
-.align 0
-L.999:
-.byte 66
-.byte 65
-.byte 83
-.byte 73
-.byte 67
-.byte 32
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 40
-.byte 67
-.byte 41
-.byte 32
-.byte 49
-.byte 57
-.byte 56
-.byte 51
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 80
-.byte 114
-.byte 111
-.byte 102
-.byte 46
-.byte 32
-.byte 87
-.byte 46
-.byte 32
-.byte 77
-.byte 46
-.byte 32
-.byte 75
-.byte 97
-.byte 104
-.byte 97
-.byte 110
-.byte 59
-.byte 0
-.align 0
-L.998:
-.byte 97
-.byte 115
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 99
-.byte 101
-.byte 114
-.byte 116
-.byte 97
-.byte 105
-.byte 110
-.byte 32
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 121
-.byte 32
-.byte 87
-.byte 65
-.byte 78
-.byte 71
-.byte 32
-.byte 109
-.byte 97
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.997:
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 45
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 44
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 108
-.byte 115
-.byte 111
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 32
-.byte 108
-.byte 111
-.byte 103
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 105
-.byte 99
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.996:
-.byte 10
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 98
-.byte 97
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 117
-.byte 112
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 110
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 114
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 114
-.byte 101
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 101
-.byte 110
-.byte 116
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 0
-.align 0
-L.995:
-.byte 111
-.byte 102
-.byte 32
-.byte 112
-.byte 97
-.byte 116
-.byte 104
-.byte 111
-.byte 108
-.byte 111
-.byte 103
-.byte 105
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 115
-.byte 97
-.byte 121
-.byte 32
-.byte 104
-.byte 111
-.byte 119
-.byte 32
-.byte 119
-.byte 101
-.byte 108
-.byte 108
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 109
-.byte 112
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.994:
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 116
-.byte 114
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 112
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 119
-.byte 105
-.byte 100
-.byte 101
-.byte 114
-.byte 32
-.byte 118
-.byte 97
-.byte 114
-.byte 105
-.byte 101
-.byte 116
-.byte 121
-.byte 0
-.align 0
-L.993:
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 44
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 32
-.byte 40
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 115
-.byte 41
-.byte 0
-.align 0
-L.992:
-.byte 87
-.byte 46
-.byte 32
-.byte 74
-.byte 46
-.byte 32
-.byte 67
-.byte 111
-.byte 100
-.byte 121
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 87
-.byte 46
-.byte 32
-.byte 87
-.byte 97
-.byte 105
-.byte 116
-.byte 101
-.byte 46
-.byte 32
-.byte 65
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 98
-.byte 111
-.byte 116
-.byte 104
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 115
-.byte 32
-.byte 116
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.991:
-.byte 98
-.byte 111
-.byte 111
-.byte 107
-.byte 32
-.byte 32
-.byte 96
-.byte 83
-.byte 111
-.byte 102
-.byte 116
-.byte 119
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 77
-.byte 97
-.byte 110
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 69
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 70
-.byte 117
-.byte 110
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 39
-.byte 32
-.byte 40
-.byte 49
-.byte 57
-.byte 56
-.byte 48
-.byte 41
-.byte 32
-.byte 98
-.byte 121
-.byte 0
-.align 0
-L.990:
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 96
-.byte 77
-.byte 65
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 39
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 0
-.align 0
-L.989:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 99
-.byte 97
-.byte 112
-.byte 97
-.byte 98
-.byte 105
-.byte 108
-.byte 105
-.byte 116
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 103
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 121
-.byte 111
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 105
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.988:
-.byte 70
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 115
-.byte 101
-.byte 113
-.byte 117
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.987:
-.byte 32
-.byte 32
-.byte 32
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 50
-.byte 43
-.byte 50
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 53
-.byte 32
-.byte 46
-.byte 0
-.align 0
-L.986:
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 0
-.align 0
-L.985:
-.byte 32
-.byte 32
-.byte 32
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 44
-.byte 0
-.align 0
-L.984:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 97
-.byte 116
-.byte 116
-.byte 101
-.byte 109
-.byte 112
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 105
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 97
-.byte 109
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.981:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 68
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 45
-.byte 66
-.byte 105
-.byte 110
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 89
-.byte 69
-.byte 84
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 97
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 46
-.byte 0
-.align 0
-L.980:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 69
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 101
-.byte 118
-.byte 101
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 89
-.byte 69
-.byte 84
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.979:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 32
-.byte 32
-.byte 89
-.byte 94
-.byte 88
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.978:
-.byte 9
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 116
-.byte 97
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 112
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 45
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 115
-.byte 46
-.byte 0
-.align 0
-L.977:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 99
-.byte 121
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.976:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 86
-.byte 48
-.byte 32
-.byte 32
-.byte 116
-.byte 101
-.byte 108
-.byte 108
-.byte 115
-.byte 44
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 32
-.byte 73
-.byte 110
-.byte 102
-.byte 105
-.byte 110
-.byte 105
-.byte 116
-.byte 121
-.byte 32
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.975:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 86
-.byte 32
-.byte 61
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 44
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 46
-.byte 0
-.align 0
-L.974:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 69
-.byte 48
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 101
-.byte 108
-.byte 108
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 98
-.byte 114
-.byte 117
-.byte 112
-.byte 116
-.byte 44
-.byte 32
-.byte 103
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 117
-.byte 122
-.byte 122
-.byte 121
-.byte 46
-.byte 0
-.align 0
-L.973:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 84
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.972:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 87
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 32
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 66
-.byte 105
-.byte 116
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 46
-.byte 0
-.align 0
-L.971:
-.byte 9
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 46
-.byte 44
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 46
-.byte 44
-.byte 32
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 46
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 83
-.byte 113
-.byte 114
-.byte 116
-.byte 46
-.byte 0
-.align 0
-L.970:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 87
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 116
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 0
-L.969:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 65
-.byte 100
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 46
-.byte 44
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 46
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 46
-.byte 0
-.align 0
-L.968:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 47
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 79
-.byte 110
-.byte 101
-.byte 32
-.byte 85
-.byte 108
-.byte 112
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 108
-.byte 105
-.byte 116
-.byte 116
-.byte 108
-.byte 101
-.byte 32
-.byte 108
-.byte 101
-.byte 115
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 32
-.byte 46
-.byte 0
-.align 0
-L.967:
-.byte 9
-.byte 40
-.byte 79
-.byte 110
-.byte 101
-.byte 85
-.byte 108
-.byte 112
-.byte 110
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 76
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 80
-.byte 108
-.byte 97
-.byte 99
-.byte 101
-.byte 41
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 48
-.byte 48
-.byte 120
-.byte 120
-.byte 120
-.byte 32
-.byte 46
-.byte 0
-.align 0
-L.966:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 47
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 79
-.byte 110
-.byte 101
-.byte 32
-.byte 85
-.byte 108
-.byte 112
-.byte 0
-.align 0
-L.965:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 114
-.byte 105
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.964:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 44
-.byte 32
-.byte 52
-.byte 44
-.byte 32
-.byte 56
-.byte 44
-.byte 32
-.byte 49
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 54
-.byte 44
-.byte 32
-.byte 49
-.byte 48
-.byte 48
-.byte 44
-.byte 32
-.byte 50
-.byte 53
-.byte 54
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 0
-L.963:
-.byte 82
-.byte 117
-.byte 110
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 114
-.byte 101
-.byte 118
-.byte 101
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 115
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 115
-.byte 58
-.byte 0
-.align 0
-L.960:
-.byte 9
-.byte 79
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 101
-.byte 118
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 105
-.byte 108
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 112
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 58
-.byte 0
-.align 0
-L.959:
-.byte 9
-.byte 79
-.byte 112
-.byte 116
-.byte 105
-.byte 109
-.byte 105
-.byte 122
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 101
-.byte 118
-.byte 101
-.byte 108
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.958:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 105
-.byte 108
-.byte 101
-.byte 114
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.957:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.956:
-.byte 9
-.byte 86
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 9
-.byte 49
-.byte 48
-.byte 32
-.byte 70
-.byte 101
-.byte 98
-.byte 114
-.byte 117
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 49
-.byte 57
-.byte 56
-.byte 57
-.byte 59
-.byte 0
-.align 0
-L.955:
-.byte 9
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 9
-.byte 100
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 59
-.byte 0
-.align 0
-L.954:
-.byte 73
-.byte 110
-.byte 32
-.byte 100
-.byte 111
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 115
-.byte 111
-.byte 44
-.byte 32
-.byte 112
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 108
-.byte 117
-.byte 100
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 108
-.byte 108
-.byte 111
-.byte 119
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 110
-.byte 102
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 0
-.align 0
-L.953:
-.byte 9
-.byte 83
-.byte 97
-.byte 110
-.byte 32
-.byte 70
-.byte 114
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 44
-.byte 32
-.byte 67
-.byte 65
-.byte 32
-.byte 57
-.byte 52
-.byte 49
-.byte 52
-.byte 51
-.byte 45
-.byte 48
-.byte 55
-.byte 48
-.byte 52
-.byte 44
-.byte 32
-.byte 85
-.byte 83
-.byte 65
-.byte 10
-.byte 0
-.align 0
-L.952:
-.byte 9
-.byte 85
-.byte 110
-.byte 105
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 116
-.byte 121
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 67
-.byte 97
-.byte 108
-.byte 105
-.byte 102
-.byte 111
-.byte 114
-.byte 110
-.byte 105
-.byte 97
-.byte 0
-.align 0
-L.951:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 67
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 85
-.byte 45
-.byte 55
-.byte 54
-.byte 0
-.align 0
-L.950:
-.byte 9
-.byte 82
-.byte 105
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 75
-.byte 97
-.byte 114
-.byte 112
-.byte 105
-.byte 110
-.byte 115
-.byte 107
-.byte 105
-.byte 0
-.align 0
-L.949:
-.byte 80
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 115
-.byte 117
-.byte 103
-.byte 103
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 0
-.align 0
-L.948:
-.byte 99
-.byte 111
-.byte 112
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 117
-.byte 110
-.byte 97
-.byte 110
-.byte 116
-.byte 105
-.byte 99
-.byte 105
-.byte 112
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 110
-.byte 101
-.byte 119
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 110
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 112
-.byte 97
-.byte 116
-.byte 104
-.byte 111
-.byte 108
-.byte 111
-.byte 103
-.byte 105
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.947:
-.byte 85
-.byte 115
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 105
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 104
-.byte 101
-.byte 108
-.byte 112
-.byte 32
-.byte 100
-.byte 101
-.byte 98
-.byte 117
-.byte 103
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 117
-.byte 103
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 119
-.byte 105
-.byte 108
-.byte 108
-.byte 0
-.align 0
-L.944:
-.byte 65
-.byte 110
-.byte 115
-.byte 119
-.byte 101
-.byte 114
-.byte 32
-.byte 113
-.byte 117
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 89
-.byte 44
-.byte 32
-.byte 121
-.byte 44
-.byte 32
-.byte 78
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 110
-.byte 32
-.byte 40
-.byte 117
-.byte 110
-.byte 108
-.byte 101
-.byte 115
-.byte 115
-.byte 32
-.byte 111
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 119
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 100
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.943:
-.byte 97
-.byte 109
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 107
-.byte 101
-.byte 32
-.byte 102
-.byte 117
-.byte 114
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.942:
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 97
-.byte 110
-.byte 121
-.byte 119
-.byte 97
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 32
-.byte 104
-.byte 111
-.byte 119
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 109
-.byte 105
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 111
-.byte 110
-.byte 101
-.byte 115
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 115
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 110
-.byte 0
-.align 0
-L.941:
-.byte 119
-.byte 97
-.byte 114
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 46
-.byte 32
-.byte 32
-.byte 73
-.byte 102
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 117
-.byte 97
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 118
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 32
-.byte 110
-.byte 97
-.byte 117
-.byte 103
-.byte 104
-.byte 116
-.byte 44
-.byte 32
-.byte 100
-.byte 111
-.byte 110
-.byte 39
-.byte 116
-.byte 32
-.byte 100
-.byte 101
-.byte 115
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 114
-.byte 117
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 0
-L.940:
-.byte 116
-.byte 111
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 101
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 115
-.byte 117
-.byte 114
-.byte 114
-.byte 111
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 97
-.byte 102
-.byte 116
-.byte 101
-.byte 114
-.byte 44
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 104
-.byte 97
-.byte 112
-.byte 115
-.byte 44
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 112
-.byte 108
-.byte 97
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 0
-.align 0
-L.939:
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 44
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.938:
-.byte 116
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 117
-.byte 97
-.byte 100
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 116
-.byte 101
-.byte 114
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 101
-.byte 99
-.byte 117
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 97
-.byte 110
-.byte 0
-.align 0
-L.937:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 96
-.byte 69
-.byte 78
-.byte 68
-.byte 32
-.byte 79
-.byte 70
-.byte 32
-.byte 84
-.byte 69
-.byte 83
-.byte 84
-.byte 39
-.byte 44
-.byte 10
-.byte 0
-.align 0
-L.936:
-.byte 76
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 112
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 109
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 101
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 105
-.byte 46
-.byte 101
-.byte 46
-.byte 32
-.byte 98
-.byte 101
-.byte 102
-.byte 111
-.byte 114
-.byte 101
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 112
-.byte 108
-.byte 97
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.933:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.928:
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 76
-.byte 69
-.byte 65
-.byte 83
-.byte 69
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 73
-.byte 70
-.byte 89
-.byte 32
-.byte 75
-.byte 65
-.byte 82
-.byte 80
-.byte 73
-.byte 78
-.byte 75
-.byte 83
-.byte 73
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.927:
-.byte 37
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 116
-.byte 46
-.byte 46
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.925:
-.byte 9
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 90
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.924:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 49
-.byte 32
-.byte 42
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.923:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 100
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 117
-.byte 116
-.byte 101
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.918:
-.byte 90
-.byte 32
-.byte 47
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.915:
-.byte 49
-.byte 32
-.byte 42
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.912:
-.byte 90
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 0
-L.909:
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.908:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 0
-.align 0
-L.903:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.900:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 86
-.byte 69
-.byte 82
-.byte 89
-.byte 32
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.894:
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 106
-.byte 117
-.byte 115
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.893:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 44
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 0
-L.890:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 109
-.byte 97
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 101
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 40
-.byte 90
-.byte 32
-.byte 43
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.886:
-.byte 40
-.byte 90
-.byte 32
-.byte 43
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 115
-.byte 97
-.byte 102
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.885:
-.byte 83
-.byte 105
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 100
-.byte 101
-.byte 110
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 101
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 0
-.align 0
-L.881:
-.byte 83
-.byte 105
-.byte 109
-.byte 105
-.byte 108
-.byte 97
-.byte 114
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 116
-.byte 105
-.byte 109
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.871:
-.byte 9
-.byte 9
-.byte 116
-.byte 104
-.byte 101
-.byte 121
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.870:
-.byte 9
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 117
-.byte 110
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 59
-.byte 10
-.byte 0
-.align 0
-L.869:
-.byte 9
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 59
-.byte 10
-.byte 0
-.align 0
-L.868:
-.byte 9
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 10
-.byte 0
-.align 0
-L.867:
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.866:
-.byte 87
-.byte 65
-.byte 82
-.byte 78
-.byte 73
-.byte 78
-.byte 71
-.byte 58
-.byte 32
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.848:
-.byte 9
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 101
-.byte 97
-.byte 100
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 48
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.847:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 3
-L.839:
-.long 0x88e368f1
-.long 0x3ed4f8b5
-.align 0
-L.837:
-.byte 37
-.byte 115
-.byte 58
-.byte 32
-.byte 32
-.byte 37
-.byte 115
-.byte 0
-.align 0
-L.836:
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 0
-.align 0
-L.835:
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 0
-.align 0
-L.834:
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 0
-.align 0
-L.833:
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 0
-.align 0
-L.827:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 97
-.byte 103
-.byte 101
-.byte 58
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 10
-.byte 0
-.align 0
-L.826:
-.byte 10
-.byte 68
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 109
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 102
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 109
-.byte 105
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 111
-.byte 110
-.byte 101
-.byte 32
-.byte 78
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 0
-.align 3
-L.824:
-.long 0x0
-.long 0xbff00000
-.align 0
-L.819:
-.byte 69
-.byte 78
-.byte 68
-.byte 32
-.byte 79
-.byte 70
-.byte 32
-.byte 84
-.byte 69
-.byte 83
-.byte 84
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.818:
-.byte 10
-.byte 65
-.byte 32
-.byte 116
-.byte 111
-.byte 116
-.byte 97
-.byte 108
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 119
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.815:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 69
-.byte 120
-.byte 99
-.byte 101
-.byte 108
-.byte 108
-.byte 101
-.byte 110
-.byte 116
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.814:
-.byte 32
-.byte 100
-.byte 117
-.byte 114
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 71
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.813:
-.byte 44
-.byte 10
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 115
-.byte 105
-.byte 98
-.byte 108
-.byte 121
-.byte 32
-.byte 68
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 32
-.byte 82
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.812:
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.809:
-.byte 56
-.byte 53
-.byte 52
-.byte 0
-.align 0
-L.808:
-.byte 55
-.byte 53
-.byte 52
-.byte 0
-.align 0
-L.805:
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 112
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 73
-.byte 69
-.byte 69
-.byte 69
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 110
-.byte 100
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 80
-.byte 0
-.align 0
-L.804:
-.byte 82
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 111
-.byte 114
-.byte 109
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 0
-.align 0
-L.801:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 83
-.byte 97
-.byte 116
-.byte 105
-.byte 115
-.byte 102
-.byte 97
-.byte 99
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.795:
-.byte 78
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 100
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 115
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 98
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.794:
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 39
-.byte 115
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 115
-.byte 101
-.byte 113
-.byte 117
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.793:
-.byte 80
-.byte 111
-.byte 116
-.byte 101
-.byte 110
-.byte 116
-.byte 105
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 102
-.byte 97
-.byte 116
-.byte 97
-.byte 108
-.byte 32
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 112
-.byte 111
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 0
-L.790:
-.byte 117
-.byte 110
-.byte 97
-.byte 99
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 32
-.byte 83
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 68
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.789:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 0
-.align 0
-L.785:
-.byte 100
-.byte 101
-.byte 115
-.byte 112
-.byte 105
-.byte 116
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 110
-.byte 105
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 68
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.784:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 65
-.byte 99
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.779:
-.byte 83
-.byte 97
-.byte 116
-.byte 105
-.byte 115
-.byte 102
-.byte 97
-.byte 99
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.778:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 0
-.align 0
-L.767:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 32
-.byte 37
-.byte 45
-.byte 50
-.byte 57
-.byte 115
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.760:
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 0
-L.759:
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 0
-L.758:
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 0
-L.757:
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 115
-.byte 32
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 0
-L.753:
-.byte 10
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 48
-.byte 32
-.byte 47
-.byte 32
-.byte 48
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 115
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 0
-L.752:
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.749:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 49
-.byte 32
-.byte 47
-.byte 32
-.byte 48
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 115
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 0
-L.748:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 109
-.byte 101
-.byte 115
-.byte 115
-.byte 97
-.byte 103
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 47
-.byte 111
-.byte 114
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 32
-.byte 100
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 63
-.byte 10
-.byte 0
-.align 0
-L.747:
-.byte 32
-.byte 32
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 101
-.byte 97
-.byte 100
-.byte 44
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.746:
-.byte 32
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.741:
-.byte 32
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 32
-.byte 116
-.byte 114
-.byte 97
-.byte 112
-.byte 115
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.727:
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.726:
-.byte 32
-.byte 117
-.byte 110
-.byte 98
-.byte 97
-.byte 108
-.byte 97
-.byte 110
-.byte 99
-.byte 101
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 59
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 42
-.byte 32
-.byte 86
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.725:
-.byte 66
-.byte 97
-.byte 100
-.byte 108
-.byte 121
-.byte 0
-.align 0
-L.718:
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 90
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 50
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.717:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.705:
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 90
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.704:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 119
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.687:
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 44
-.byte 32
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 10
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 0
-.align 0
-L.686:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 0
-.align 0
-L.680:
-.byte 97
-.byte 98
-.byte 111
-.byte 118
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.679:
-.byte 65
-.byte 110
-.byte 121
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 42
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 111
-.byte 110
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.678:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 86
-.byte 32
-.byte 47
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.677:
-.byte 78
-.byte 111
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 86
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.676:
-.byte 84
-.byte 104
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 115
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 98
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 115
-.byte 121
-.byte 115
-.byte 116
-.byte 101
-.byte 109
-.byte 32
-.byte 116
-.byte 114
-.byte 97
-.byte 112
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.675:
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 86
-.byte 48
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.672:
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 86
-.byte 32
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.663:
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 115
-.byte 104
-.byte 114
-.byte 105
-.byte 110
-.byte 107
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.660:
-.byte 45
-.byte 40
-.byte 45
-.byte 89
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 89
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.659:
-.byte 102
-.byte 105
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 0
-.align 0
-L.658:
-.byte 83
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.655:
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.654:
-.byte 67
-.byte 97
-.byte 110
-.byte 32
-.byte 96
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 45
-.byte 89
-.byte 39
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 63
-.byte 10
-.byte 0
-.align 0
-L.647:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 103
-.byte 101
-.byte 110
-.byte 101
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.646:
-.byte 83
-.byte 101
-.byte 97
-.byte 114
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.645:
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.637:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 119
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 94
-.byte 81
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 114
-.byte 32
-.byte 110
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 121
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 101
-.byte 109
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.636:
-.byte 65
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 97
-.byte 100
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 116
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.629:
-.byte 9
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 105
-.byte 110
-.byte 121
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.628:
-.byte 9
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 117
-.byte 99
-.byte 104
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 115
-.byte 112
-.byte 111
-.byte 105
-.byte 108
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 10
-.byte 0
-.align 0
-L.627:
-.byte 9
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.626:
-.byte 9
-.byte 40
-.byte 49
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 59
-.byte 10
-.byte 0
-.align 0
-L.625:
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 10
-.byte 0
-.align 0
-L.624:
-.byte 67
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 0
-.align 0
-L.617:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 88
-.byte 94
-.byte 40
-.byte 40
-.byte 88
-.byte 32
-.byte 43
-.byte 32
-.byte 49
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 41
-.byte 41
-.byte 32
-.byte 118
-.byte 115
-.byte 46
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 40
-.byte 50
-.byte 41
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 62
-.byte 32
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.613:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.610:
-.byte 32
-.byte 32
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.609:
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 116
-.byte 119
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 48
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 10
-.byte 0
-.align 0
-L.605:
-.byte 97
-.byte 99
-.byte 116
-.byte 117
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 58
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.604:
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 97
-.byte 102
-.byte 102
-.byte 108
-.byte 105
-.byte 99
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 10
-.byte 9
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 59
-.byte 10
-.byte 0
-.align 0
-L.603:
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 10
-.byte 111
-.byte 110
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 0
-.align 0
-L.602:
-.byte 83
-.byte 105
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.601:
-.byte 82
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 110
-.byte 97
-.byte 114
-.byte 114
-.byte 111
-.byte 119
-.byte 59
-.byte 32
-.byte 85
-.byte 49
-.byte 94
-.byte 37
-.byte 100
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.596:
-.byte 109
-.byte 101
-.byte 114
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.595:
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 115
-.byte 117
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 32
-.byte 108
-.byte 97
-.byte 114
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 82
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 0
-.align 0
-L.594:
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 0
-.align 0
-L.593:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.592:
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 32
-.byte 43
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.591:
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.588:
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 97
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 97
-.byte 99
-.byte 116
-.byte 117
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 10
-.byte 0
-.align 0
-L.587:
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 40
-.byte 102
-.byte 40
-.byte 88
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 102
-.byte 40
-.byte 90
-.byte 41
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.586:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 0
-L.585:
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 110
-.byte 111
-.byte 99
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 116
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.584:
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 10
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 115
-.byte 32
-.byte 0
-.align 0
-L.583:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 44
-.byte 32
-.byte 0
-.align 0
-L.582:
-.byte 121
-.byte 101
-.byte 116
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 90
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.581:
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.576:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 47
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.567:
-.byte 40
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 41
-.byte 32
-.byte 60
-.byte 32
-.byte 69
-.byte 48
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.566:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 103
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 59
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 32
-.byte 65
-.byte 98
-.byte 115
-.byte 111
-.byte 108
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 69
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 61
-.byte 10
-.byte 0
-.align 0
-L.561:
-.byte 124
-.byte 81
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 124
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.560:
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 81
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.559:
-.byte 81
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 89
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.byte 32
-.byte 100
-.byte 101
-.byte 110
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 124
-.byte 81
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 124
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 48
-.byte 59
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 115
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.558:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 101
-.byte 115
-.byte 32
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 10
-.byte 0
-.align 0
-L.556:
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 32
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.555:
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 100
-.byte 111
-.byte 119
-.byte 110
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.554:
-.byte 97
-.byte 112
-.byte 112
-.byte 114
-.byte 111
-.byte 97
-.byte 99
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.553:
-.byte 69
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 100
-.byte 101
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.541:
-.byte 83
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 115
-.byte 116
-.byte 114
-.byte 105
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 69
-.byte 48
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.540:
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.539:
-.byte 68
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 32
-.byte 104
-.byte 105
-.byte 103
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.536:
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 99
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.535:
-.byte 80
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 116
-.byte 115
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 32
-.byte 104
-.byte 105
-.byte 103
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.528:
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.527:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 100
-.byte 108
-.byte 121
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.526:
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 44
-.byte 32
-.byte 105
-.byte 115
-.byte 110
-.byte 39
-.byte 116
-.byte 59
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.525:
-.byte 66
-.byte 117
-.byte 116
-.byte 32
-.byte 45
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.522:
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 58
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.521:
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 100
-.byte 108
-.byte 121
-.byte 32
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.520:
-.byte 80
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 97
-.byte 110
-.byte 10
-.byte 0
-.align 0
-L.507:
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.483:
-.byte 83
-.byte 101
-.byte 101
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 69
-.byte 48
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.480:
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.477:
-.byte 9
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.476:
-.byte 69
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 97
-.byte 108
-.byte 105
-.byte 100
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.455:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 119
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 94
-.byte 105
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.452:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.450:
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 117
-.byte 108
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.449:
-.byte 79
-.byte 98
-.byte 115
-.byte 101
-.byte 114
-.byte 118
-.byte 101
-.byte 100
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 114
-.byte 117
-.byte 110
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 0
-L.448:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.445:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.440:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.435:
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.434:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.433:
-.byte 65
-.byte 110
-.byte 111
-.byte 109
-.byte 97
-.byte 108
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 60
-.byte 32
-.byte 0
-.align 0
-L.393:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.371:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 88
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 110
-.byte 45
-.byte 109
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 88
-.byte 32
-.byte 110
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.370:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 105
-.byte 116
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.353:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 109
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 105
-.byte 116
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.342:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 88
-.byte 41
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 88
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 88
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.337:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 48
-.byte 46
-.byte 48
-.byte 44
-.byte 32
-.byte 45
-.byte 48
-.byte 46
-.byte 48
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.335:
-.byte 10
-.byte 82
-.byte 117
-.byte 110
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 40
-.byte 120
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.334:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 78
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.333:
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 89
-.byte 32
-.byte 42
-.byte 32
-.byte 88
-.byte 32
-.byte 116
-.byte 114
-.byte 105
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 3
-L.324:
-.long 0x0
-.long 0x40080000
-.align 0
-L.323:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 100
-.byte 111
-.byte 109
-.byte 32
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.322:
-.byte 68
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 117
-.byte 116
-.byte 101
-.byte 63
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.319:
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 40
-.byte 115
-.byte 41
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 40
-.byte 115
-.byte 41
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 10
-.byte 40
-.byte 110
-.byte 111
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 98
-.byte 111
-.byte 118
-.byte 101
-.byte 41
-.byte 32
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 101
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 0
-L.317:
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.316:
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.299:
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.296:
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 41
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 89
-.byte 32
-.byte 45
-.byte 32
-.byte 88
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 110
-.byte 32
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.293:
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.292:
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 0
-.align 0
-L.289:
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.282:
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.277:
-.byte 73
-.byte 110
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 108
-.byte 101
-.byte 116
-.byte 101
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 114
-.byte 121
-.byte 45
-.byte 112
-.byte 114
-.byte 111
-.byte 112
-.byte 97
-.byte 103
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.273:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 42
-.byte 32
-.byte 40
-.byte 32
-.byte 49
-.byte 32
-.byte 47
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 0
-.align 0
-L.271:
-.byte 47
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.268:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.265:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.262:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.257:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.254:
-.byte 42
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.253:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.250:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.240:
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 40
-.byte 49
-.byte 47
-.byte 88
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 0
-.align 0
-L.221:
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 100
-.byte 100
-.byte 47
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.220:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 42
-.byte 44
-.byte 32
-.byte 47
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 45
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 121
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.217:
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 41
-.byte 32
-.byte 123
-.byte 46
-.byte 46
-.byte 46
-.byte 46
-.byte 46
-.byte 125
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 32
-.byte 123
-.byte 46
-.byte 46
-.byte 46
-.byte 47
-.byte 40
-.byte 88
-.byte 45
-.byte 49
-.byte 46
-.byte 48
-.byte 41
-.byte 46
-.byte 46
-.byte 46
-.byte 125
-.byte 10
-.byte 0
-.align 0
-L.216:
-.byte 32
-.byte 32
-.byte 115
-.byte 117
-.byte 99
-.byte 104
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 103
-.byte 97
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 97
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.215:
-.byte 32
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 32
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 32
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 101
-.byte 98
-.byte 121
-.byte 32
-.byte 118
-.byte 105
-.byte 116
-.byte 105
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.214:
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 32
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 32
-.byte 60
-.byte 32
-.byte 49
-.byte 32
-.byte 32
-.byte 97
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 10
-.byte 0
-.align 0
-L.211:
-.byte 45
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 99
-.byte 101
-.byte 108
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 111
-.byte 98
-.byte 115
-.byte 99
-.byte 117
-.byte 114
-.byte 101
-.byte 100
-.byte 0
-.align 0
-L.206:
-.byte 42
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 47
-.byte 111
-.byte 114
-.byte 32
-.byte 47
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.202:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 49
-.byte 47
-.byte 49
-.byte 46
-.byte 48
-.byte 48
-.byte 48
-.byte 46
-.byte 46
-.byte 49
-.byte 32
-.byte 62
-.byte 61
-.byte 32
-.byte 49
-.byte 0
-.align 0
-L.200:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 88
-.byte 47
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 88
-.byte 0
-.align 0
-L.195:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 101
-.byte 100
-.byte 32
-.byte 49
-.byte 32
-.byte 117
-.byte 108
-.byte 112
-.byte 10
-.byte 111
-.byte 114
-.byte 32
-.byte 32
-.byte 49
-.byte 47
-.byte 51
-.byte 32
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 32
-.byte 51
-.byte 47
-.byte 57
-.byte 32
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 32
-.byte 57
-.byte 47
-.byte 50
-.byte 55
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 97
-.byte 103
-.byte 114
-.byte 101
-.byte 101
-.byte 0
-.align 0
-L.191:
-.byte 42
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.189:
-.byte 42
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 49
-.byte 42
-.byte 88
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 88
-.byte 0
-.align 0
-L.186:
-.byte 10
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 42
-.byte 44
-.byte 32
-.byte 47
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 45
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.185:
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 108
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 46
-.byte 0
-.align 0
-L.180:
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 108
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 88
-.byte 61
-.byte 89
-.byte 44
-.byte 88
-.byte 43
-.byte 90
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 89
-.byte 43
-.byte 90
-.byte 33
-.byte 0
-.align 0
-L.176:
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.175:
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 98
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 32
-.byte 66
-.byte 45
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 44
-.byte 32
-.byte 105
-.byte 46
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.174:
-.byte 83
-.byte 111
-.byte 109
-.byte 101
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 10
-.byte 0
-.align 0
-L.168:
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 110
-.byte 10
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.167:
-.byte 90
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 90
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 0
-L.166:
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 101
-.byte 120
-.byte 97
-.byte 99
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 97
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 10
-.byte 0
-.align 0
-L.165:
-.byte 66
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 117
-.byte 110
-.byte 117
-.byte 115
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 102
-.byte 0
-.align 0
-L.161:
-.byte 9
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 90
-.byte 50
-.byte 32
-.byte 45
-.byte 32
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.160:
-.byte 9
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 90
-.byte 49
-.byte 32
-.byte 45
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.159:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.158:
-.byte 0
-.align 0
-L.151:
-.byte 84
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 102
-.byte 101
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 117
-.byte 114
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.146:
-.byte 80
-.byte 111
-.byte 115
-.byte 115
-.byte 105
-.byte 98
-.byte 108
-.byte 121
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 32
-.byte 112
-.byte 97
-.byte 114
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 0
-L.145:
-.byte 98
-.byte 121
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 101
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.144:
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 115
-.byte 121
-.byte 109
-.byte 112
-.byte 116
-.byte 111
-.byte 109
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.143:
-.byte 114
-.byte 101
-.byte 115
-.byte 112
-.byte 101
-.byte 99
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 10
-.byte 0
-.align 0
-L.142:
-.byte 68
-.byte 105
-.byte 115
-.byte 97
-.byte 103
-.byte 114
-.byte 101
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 109
-.byte 111
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 32
-.byte 88
-.byte 49
-.byte 44
-.byte 32
-.byte 89
-.byte 49
-.byte 44
-.byte 32
-.byte 90
-.byte 49
-.byte 44
-.byte 10
-.byte 0
-.align 0
-L.120:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 111
-.byte 114
-.byte 115
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 53
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 105
-.byte 103
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.118:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.117:
-.byte 108
-.byte 111
-.byte 103
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 105
-.byte 99
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 111
-.byte 108
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 85
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.114:
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 44
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 105
-.byte 116
-.byte 115
-.byte 101
-.byte 108
-.byte 102
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 109
-.byte 105
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.113:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 10
-.byte 0
-.align 0
-L.100:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 102
-.byte 117
-.byte 122
-.byte 122
-.byte 121
-.byte 44
-.byte 88
-.byte 61
-.byte 49
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 88
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 0
-L.96:
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 60
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 70
-.byte 65
-.byte 76
-.byte 83
-.byte 69
-.byte 44
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 46
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 63
-.byte 0
-.align 3
-L.94:
-.long 0x0
-.long 0x40240000
-.align 0
-L.89:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 103
-.byte 111
-.byte 111
-.byte 100
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 50
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 48
-.byte 0
-.align 0
-L.85:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 98
-.byte 105
-.byte 103
-.byte 58
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 98
-.byte 108
-.byte 101
-.byte 109
-.byte 115
-.byte 0
-.align 0
-L.83:
-.byte 77
-.byte 89
-.byte 83
-.byte 84
-.byte 69
-.byte 82
-.byte 89
-.byte 58
-.byte 32
-.byte 114
-.byte 101
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.82:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 105
-.byte 114
-.byte 109
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 3
-L.79:
-.long 0x47ae147b
-.long 0x3f847ae1
-.align 0
-L.78:
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 98
-.byte 101
-.byte 116
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.77:
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 105
-.byte 114
-.byte 109
-.byte 115
-.byte 32
-.byte 99
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.62:
-.byte 82
-.byte 101
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 10
-.byte 32
-.byte 0
-.align 0
-L.61:
-.byte 67
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 10
-.byte 0
-.align 0
-L.55:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.46:
-.byte 83
-.byte 101
-.byte 97
-.byte 114
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.45:
-.byte 10
-.byte 0
-.align 0
-L.44:
-.byte 45
-.byte 49
-.byte 44
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 44
-.byte 32
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 44
-.byte 32
-.byte 51
-.byte 44
-.byte 32
-.byte 52
-.byte 44
-.byte 32
-.byte 53
-.byte 44
-.byte 32
-.byte 57
-.byte 44
-.byte 32
-.byte 50
-.byte 55
-.byte 44
-.byte 32
-.byte 51
-.byte 50
-.byte 32
-.byte 38
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.39:
-.byte 53
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 52
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 51
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 56
-.byte 48
-.byte 44
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 52
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 54
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 53
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 52
-.byte 56
-.byte 0
-.align 0
-L.35:
-.byte 57
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 51
-.byte 42
-.byte 51
-.byte 44
-.byte 32
-.byte 50
-.byte 55
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 57
-.byte 42
-.byte 51
-.byte 44
-.byte 32
-.byte 51
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 56
-.byte 42
-.byte 52
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 51
-.byte 50
-.byte 45
-.byte 50
-.byte 55
-.byte 45
-.byte 52
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 0
-L.31:
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 32
-.byte 43
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 0
-L.27:
-.byte 45
-.byte 49
-.byte 43
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 43
-.byte 97
-.byte 98
-.byte 115
-.byte 40
-.byte 49
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 45
-.byte 49
-.byte 43
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 42
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 0
-L.23:
-.byte 51
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 50
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 52
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 51
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 52
-.byte 43
-.byte 50
-.byte 42
-.byte 40
-.byte 45
-.byte 50
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 52
-.byte 45
-.byte 51
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 3
-L.21:
-.long 0xd2f1a9fc
-.long 0x3f50624d
-.align 0
-L.20:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 45
-.byte 48
-.byte 46
-.byte 48
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 111
-.byte 110
-.byte 45
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.15:
-.byte 48
-.byte 43
-.byte 48
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 32
-.byte 60
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 43
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 50
-.byte 0
-.align 0
-L.13:
-.byte 80
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 119
-.byte 32
-.byte 82
-.byte 85
-.byte 78
-.byte 78
-.byte 73
-.byte 78
-.byte 71
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 115
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 58
-.byte 10
-.byte 0
-.align 3
-L.9:
-.long 0x0
-.long 0x3ff00000
-.align 3
-L.8:
-.long 0x0
-.long 0x0
-.align 0
-L.3:
-.byte 10
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 70
-.byte 76
-.byte 79
-.byte 65
-.byte 84
-.byte 73
-.byte 78
-.byte 71
-.byte 45
-.byte 80
-.byte 79
-.byte 73
-.byte 78
-.byte 84
-.byte 32
-.byte 69
-.byte 82
-.byte 82
-.byte 79
-.byte 82
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 10
-.byte 0
+.sdata
+.globl Zero
+.align 3
+Zero:
+.long 0x0
+.long 0x0
+.globl Half
+.align 3
+Half:
+.long 0x0
+.long 0x3fe00000
+.globl One
+.align 3
+One:
+.long 0x0
+.long 0x3ff00000
+.globl Two
+.align 3
+Two:
+.long 0x0
+.long 0x40000000
+.globl Three
+.align 3
+Three:
+.long 0x0
+.long 0x40080000
+.globl Four
+.align 3
+Four:
+.long 0x0
+.long 0x40100000
+.globl Five
+.align 3
+Five:
+.long 0x0
+.long 0x40140000
+.globl Eight
+.align 3
+Eight:
+.long 0x0
+.long 0x40200000
+.globl Nine
+.align 3
+Nine:
+.long 0x0
+.long 0x40220000
+.globl TwentySeven
+.align 3
+TwentySeven:
+.long 0x0
+.long 0x403b0000
+.globl ThirtyTwo
+.align 3
+ThirtyTwo:
+.long 0x0
+.long 0x40400000
+.globl TwoForty
+.align 3
+TwoForty:
+.long 0x0
+.long 0x406e0000
+.globl MinusOne
+.align 3
+MinusOne:
+.long 0x0
+.long 0xbff00000
+.globl OneAndHalf
+.align 3
+OneAndHalf:
+.long 0x0
+.long 0x3ff80000
+.globl NoTrials
+.align 2
+NoTrials:
+.long 0x14
+.globl sigfpe
+.text
+.text
+.ent sigfpe
+sigfpe:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+.prologue 1
+ldl $27,fpecount
+lda $27,1($27)
+stl $27,fpecount
+lda $16,L.3
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,_iob+56
+jsr $26,fflush
+ldgp $gp,0($26)
+ldq $27,sigsave
+cmpeq $27,$31,$23
+bne $23,L.5
+lda $16,8
+ldq $17,sigsave
+jsr $26,signal
+ldgp $gp,0($26)
+stq $31,sigsave
+lda $16,ovfl_buf
+lda $17,1
+jsr $26,longjmp
+ldgp $gp,0($26)
+L.5:
+jsr $26,abort
+ldgp $gp,0($26)
+L.2:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end sigfpe
+.sdata
+.align 3
+L.756:
+.quad L.757
+.quad L.758
+.quad L.759
+.quad L.760
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-256($sp)
+.mask 0x4007e00,-208
+.frame $sp,256,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $26,48($sp)
+.prologue 1
+ldt $f30,L.8
+stt $f30,Zero
+ldt $f30,L.9
+stt $f30,One
+ldt $f30,One
+addt $f30,$f30,$f29
+stt $f29,Two
+ldt $f29,Two
+addt $f29,$f30,$f28
+stt $f28,Three
+ldt $f28,Three
+addt $f28,$f30,$f27
+stt $f27,Four
+ldt $f27,Four
+addt $f27,$f30,$f26
+stt $f26,Five
+addt $f27,$f27,$f26
+stt $f26,Eight
+mult $f28,$f28,$f26
+stt $f26,Nine
+ldt $f26,Nine
+mult $f26,$f28,$f26
+stt $f26,TwentySeven
+ldt $f26,Eight
+mult $f27,$f26,$f26
+stt $f26,ThirtyTwo
+ldt $f26,Five
+mult $f27,$f26,$f26
+mult $f26,$f28,$f28
+mult $f28,$f27,$f28
+stt $f28,TwoForty
+negt $f30,$f28
+stt $f28,MinusOne
+divt $f30,$f29,$f29
+stt $f29,Half
+ldt $f29,Half
+addt $f30,$f29,$f30
+stt $f30,OneAndHalf
+stl $31,ErrCnt
+stl $31,ErrCnt+4
+stl $31,ErrCnt+8
+stl $31,ErrCnt+12
+lda $27,1
+stl $27,PageNo
+stl $31,Milestone
+lda $16,8
+lda $17,sigfpe
+jsr $26,signal
+ldgp $gp,0($26)
+jsr $26,Instructions
+ldgp $gp,0($26)
+jsr $26,Pause
+ldgp $gp,0($26)
+jsr $26,Heading
+ldgp $gp,0($26)
+jsr $26,Pause
+ldgp $gp,0($26)
+jsr $26,Characteristics
+ldgp $gp,0($26)
+jsr $26,Pause
+ldgp $gp,0($26)
+jsr $26,History
+ldgp $gp,0($26)
+jsr $26,Pause
+ldgp $gp,0($26)
+lda $27,7
+stl $27,Milestone
+lda $16,L.13
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$16
+ldt $f30,Zero
+addt $f30,$f30,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.16
+ldt $f29,One
+subt $f29,$f29,$f28
+cmpteq $f28,$f30,$f1
+fbeq $f1,L.16
+cmptle $f29,$f30,$f1
+fbne $f1,L.16
+addt $f29,$f29,$f30
+ldt $f29,Two
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.16
+lda $14,1
+br L.17
+L.16:
+mov $31,$14
+L.17:
+mov $14,$17
+lda $18,L.15
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,Zero
+negt $f30,$f30
+stt $f30,Z
+ldt $f30,Z
+ldt $f29,L.8
+cmpteq $f30,$f29,$f1
+fbne $f1,L.18
+ldl $27,ErrCnt
+lda $27,1($27)
+stl $27,ErrCnt
+lda $16,L.20
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,L.21
+stt $f30,U1
+ldt $f30,L.9
+stt $f30,Radix
+jsr $26,TstPtUf
+ldgp $gp,0($26)
+L.18:
+mov $31,$16
+ldt $f30,Three
+ldt $f29,Two
+ldt $f28,One
+addt $f29,$f28,$f27
+cmpteq $f30,$f27,$f1
+fbeq $f1,L.24
+ldt $f27,Four
+addt $f30,$f28,$f26
+cmpteq $f27,$f26,$f1
+fbeq $f1,L.24
+ldt $f26,Zero
+negt $f29,$f25
+mult $f29,$f25,$f29
+addt $f27,$f29,$f29
+cmpteq $f29,$f26,$f1
+fbeq $f1,L.24
+subt $f27,$f30,$f30
+subt $f30,$f28,$f30
+cmpteq $f30,$f26,$f1
+fbeq $f1,L.24
+lda $13,1
+br L.25
+L.24:
+mov $31,$13
+L.25:
+mov $13,$17
+lda $18,L.23
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,MinusOne
+stt $f30,-64+256($sp)
+ldt $f29,One
+ldt $f28,L.8
+subt $f28,$f29,$f28
+cmpteq $f30,$f28,$f1
+fbeq $f1,L.28
+ldt $f28,Zero
+addt $f30,$f29,$f27
+cmpteq $f27,$f28,$f1
+fbeq $f1,L.28
+addt $f29,$f30,$f27
+cmpteq $f27,$f28,$f1
+fbeq $f1,L.28
+fmov $f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+ldt $f29,Zero
+ldt $f28,-64+256($sp)
+addt $f28,$f0,$f30
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.28
+ldt $f30,MinusOne
+mult $f30,$f30,$f28
+addt $f30,$f28,$f30
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.28
+lda $12,1
+br L.29
+L.28:
+mov $31,$12
+L.29:
+mov $31,$16
+mov $12,$17
+lda $18,L.27
+jsr $26,TstCond
+ldgp $gp,0($26)
+mov $31,$16
+ldt $f30,Half
+ldt $f29,MinusOne
+addt $f30,$f29,$f29
+addt $f29,$f30,$f30
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.32
+lda $11,1
+br L.33
+L.32:
+mov $31,$11
+L.33:
+mov $11,$17
+lda $18,L.31
+jsr $26,TstCond
+ldgp $gp,0($26)
+lda $27,10
+stl $27,Milestone
+mov $31,$16
+ldt $f30,Nine
+ldt $f29,Three
+mult $f29,$f29,$f28
+cmpteq $f30,$f28,$f1
+fbeq $f1,L.36
+ldt $f28,TwentySeven
+mult $f30,$f29,$f30
+cmpteq $f28,$f30,$f1
+fbeq $f1,L.36
+ldt $f30,Eight
+ldt $f29,Four
+addt $f29,$f29,$f27
+cmpteq $f30,$f27,$f1
+fbeq $f1,L.36
+ldt $f27,ThirtyTwo
+mult $f30,$f29,$f30
+cmpteq $f27,$f30,$f1
+fbeq $f1,L.36
+subt $f27,$f28,$f30
+subt $f30,$f29,$f30
+ldt $f29,One
+subt $f30,$f29,$f30
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.36
+lda $10,1
+br L.37
+L.36:
+mov $31,$10
+L.37:
+mov $10,$17
+lda $18,L.35
+jsr $26,TstCond
+ldgp $gp,0($26)
+mov $31,$16
+ldt $f30,Five
+ldt $f29,Four
+ldt $f28,One
+addt $f29,$f28,$f28
+cmpteq $f30,$f28,$f1
+fbeq $f1,L.40
+ldt $f28,TwoForty
+ldt $f27,Three
+mult $f29,$f30,$f26
+mult $f26,$f27,$f26
+mult $f26,$f29,$f26
+cmpteq $f28,$f26,$f1
+fbeq $f1,L.40
+ldt $f26,Zero
+divt $f28,$f27,$f25
+mult $f29,$f29,$f24
+mult $f24,$f30,$f24
+subt $f25,$f24,$f25
+cmpteq $f25,$f26,$f1
+fbeq $f1,L.40
+divt $f28,$f29,$f25
+mult $f30,$f27,$f24
+mult $f24,$f29,$f24
+subt $f25,$f24,$f25
+cmpteq $f25,$f26,$f1
+fbeq $f1,L.40
+divt $f28,$f30,$f30
+mult $f29,$f27,$f28
+mult $f28,$f29,$f29
+subt $f30,$f29,$f30
+cmpteq $f30,$f26,$f1
+fbeq $f1,L.40
+lda $9,1
+br L.41
+L.40:
+mov $31,$9
+L.41:
+mov $9,$17
+lda $18,L.39
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldl $27,ErrCnt
+cmpeq $27,$31,$23
+beq $23,L.42
+lda $16,L.44
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+L.42:
+lda $16,L.46
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,One
+stt $f30,W
+L.47:
+ldt $f30,W
+addt $f30,$f30,$f30
+stt $f30,W
+ldt $f30,W
+ldt $f29,One
+addt $f30,$f29,$f28
+stt $f28,Y
+ldt $f28,Y
+subt $f28,$f30,$f30
+stt $f30,Z
+ldt $f30,Z
+subt $f30,$f29,$f30
+stt $f30,Y
+L.48:
+ldt $f16,Y
+jsr $26,fabs
+ldgp $gp,0($26)
+ldt $f29,MinusOne
+addt $f29,$f0,$f30
+ldt $f29,Zero
+cmptlt $f30,$f29,$f1
+fbne $f1,L.47
+ldt $f30,Zero
+stt $f30,Precision
+ldt $f30,One
+stt $f30,Y
+L.50:
+ldt $f30,W
+ldt $f29,Y
+addt $f30,$f29,$f28
+stt $f28,Radix
+addt $f29,$f29,$f29
+stt $f29,Y
+ldt $f29,Radix
+subt $f29,$f30,$f30
+stt $f30,Radix
+L.51:
+ldt $f30,Radix
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.50
+ldt $f30,Radix
+ldt $f29,Two
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.53
+ldt $f30,One
+stt $f30,Radix
+L.53:
+lda $16,L.55
+ldt $f17,Radix
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Radix
+ldt $f29,L.9
+cmpteq $f30,$f29,$f1
+fbne $f1,L.56
+ldt $f30,One
+stt $f30,W
+L.58:
+ldt $f30,One
+ldt $f29,Precision
+addt $f29,$f30,$f29
+stt $f29,Precision
+ldt $f29,W
+ldt $f28,Radix
+mult $f29,$f28,$f29
+stt $f29,W
+ldt $f29,W
+addt $f29,$f30,$f30
+stt $f30,Y
+L.59:
+ldt $f30,Y
+ldt $f29,W
+subt $f30,$f29,$f30
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbne $f1,L.58
+L.56:
+ldt $f30,One
+ldt $f29,W
+divt $f30,$f29,$f30
+stt $f30,U1
+ldt $f30,U1
+ldt $f29,Radix
+mult $f29,$f30,$f29
+stt $f29,U2
+lda $16,L.61
+fmov $f30,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.62
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Radix
+stt $f30,E0
+ldt $f30,U1
+stt $f30,E1
+ldt $f30,U2
+stt $f30,E9
+ldt $f30,Precision
+stt $f30,E3
+ldt $f30,Four
+ldt $f29,Three
+divt $f30,$f29,$f30
+stt $f30,X
+ldt $f30,X
+ldt $f29,One
+subt $f30,$f29,$f30
+stt $f30,Third
+ldt $f30,Third
+ldt $f29,Half
+subt $f29,$f30,$f29
+stt $f29,F6
+ldt $f29,F6
+addt $f29,$f29,$f29
+stt $f29,X
+ldt $f29,X
+subt $f29,$f30,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+stt $f0,X
+ldt $f30,X
+ldt $f29,U2
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.63
+ldt $f30,U2
+stt $f30,X
+L.63:
+L.65:
+ldt $f30,X
+stt $f30,U2
+ldt $f30,U2
+ldt $f29,Half
+mult $f29,$f30,$f29
+ldt $f28,ThirtyTwo
+mult $f28,$f30,$f28
+mult $f28,$f30,$f30
+addt $f29,$f30,$f30
+stt $f30,Y
+ldt $f30,One
+ldt $f29,Y
+addt $f30,$f29,$f29
+stt $f29,Y
+ldt $f29,Y
+subt $f29,$f30,$f30
+stt $f30,X
+L.66:
+ldt $f30,X
+ldt $f29,U2
+cmptle $f29,$f30,$f1
+fbne $f1,L.68
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.65
+L.68:
+ldt $f30,Two
+ldt $f29,Three
+divt $f30,$f29,$f30
+stt $f30,X
+ldt $f30,Half
+ldt $f29,X
+subt $f29,$f30,$f29
+stt $f29,F6
+ldt $f29,F6
+addt $f29,$f29,$f28
+stt $f28,Third
+ldt $f28,Third
+subt $f28,$f30,$f30
+stt $f30,X
+ldt $f30,X
+addt $f30,$f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+stt $f0,X
+ldt $f30,X
+ldt $f29,U1
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.69
+ldt $f30,U1
+stt $f30,X
+L.69:
+L.71:
+ldt $f30,X
+stt $f30,U1
+ldt $f30,Half
+ldt $f29,U1
+mult $f30,$f29,$f28
+ldt $f27,ThirtyTwo
+mult $f27,$f29,$f27
+mult $f27,$f29,$f29
+addt $f28,$f29,$f29
+stt $f29,Y
+ldt $f29,Y
+subt $f30,$f29,$f29
+stt $f29,Y
+ldt $f29,Y
+addt $f30,$f29,$f29
+stt $f29,X
+ldt $f29,X
+subt $f30,$f29,$f29
+stt $f29,Y
+ldt $f29,Y
+addt $f30,$f29,$f30
+stt $f30,X
+L.72:
+ldt $f30,X
+ldt $f29,U1
+cmptle $f29,$f30,$f1
+fbne $f1,L.74
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.71
+L.74:
+ldt $f30,U1
+ldt $f29,E1
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.75
+lda $16,L.77
+jsr $26,printf
+ldgp $gp,0($26)
+br L.76
+L.75:
+lda $16,L.78
+ldt $f17,U1
+jsr $26,printf
+ldgp $gp,0($26)
+L.76:
+ldt $f30,U1
+ldt $f29,One
+divt $f29,$f30,$f29
+stt $f29,W
+ldt $f29,Half
+subt $f29,$f30,$f28
+addt $f28,$f29,$f29
+stt $f29,F9
+ldt $f29,U2
+divt $f29,$f30,$f30
+ldt $f29,L.79
+addt $f30,$f29,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+stt $f0,Radix
+ldt $f30,Radix
+ldt $f29,E0
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.80
+lda $16,L.82
+jsr $26,printf
+ldgp $gp,0($26)
+br L.81
+L.80:
+lda $16,L.83
+ldt $f17,Radix
+jsr $26,printf
+ldgp $gp,0($26)
+L.81:
+lda $16,2
+ldt $f30,Eight
+ldt $f29,Radix
+addt $f30,$f30,$f30
+cmptle $f29,$f30,$f1
+fbeq $f1,L.86
+lda $27,1
+stl $27,-68+256($sp)
+br L.87
+L.86:
+stl $31,-68+256($sp)
+L.87:
+ldl $17,-68+256($sp)
+lda $18,L.85
+jsr $26,TstCond
+ldgp $gp,0($26)
+lda $16,3
+ldt $f30,Radix
+ldt $f29,Two
+cmpteq $f30,$f29,$f1
+fbne $f1,L.93
+ldt $f29,L.94
+cmpteq $f30,$f29,$f1
+fbne $f1,L.93
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.90
+L.93:
+lda $27,1
+stl $27,-72+256($sp)
+br L.91
+L.90:
+stl $31,-72+256($sp)
+L.91:
+ldl $17,-72+256($sp)
+lda $18,L.89
+jsr $26,TstCond
+ldgp $gp,0($26)
+lda $27,20
+stl $27,Milestone
+mov $31,$16
+ldt $f30,Half
+ldt $f29,F9
+subt $f29,$f30,$f29
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.97
+lda $27,1
+stl $27,-76+256($sp)
+br L.98
+L.97:
+stl $31,-76+256($sp)
+L.98:
+ldl $17,-76+256($sp)
+lda $18,L.96
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,F9
+stt $f30,X
+lda $27,1
+stl $27,I
+ldt $f30,Half
+ldt $f29,X
+subt $f29,$f30,$f29
+stt $f29,Y
+ldt $f29,Y
+subt $f29,$f30,$f30
+stt $f30,Z
+mov $31,$16
+ldt $f30,X
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.103
+ldt $f30,Z
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.101
+L.103:
+lda $27,1
+stl $27,-80+256($sp)
+br L.102
+L.101:
+stl $31,-80+256($sp)
+L.102:
+ldl $17,-80+256($sp)
+lda $18,L.100
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,One
+ldt $f29,U2
+addt $f30,$f29,$f28
+stt $f28,X
+stl $31,I
+lda $27,25
+stl $27,Milestone
+ldt $f28,Radix
+subt $f28,$f30,$f27
+stt $f27,BMinusU2
+ldt $f27,BMinusU2
+subt $f27,$f29,$f29
+addt $f29,$f30,$f29
+stt $f29,BMinusU2
+cmpteq $f28,$f30,$f1
+fbne $f1,L.104
+ldt $f16,U1
+jsr $26,log
+ldgp $gp,0($26)
+fmov $f0,$f30
+stt $f30,-88+256($sp)
+ldt $f16,Radix
+jsr $26,log
+ldgp $gp,0($26)
+ldt $f29,TwoForty
+negt $f29,$f29
+ldt $f28,-88+256($sp)
+mult $f29,$f28,$f29
+divt $f29,$f0,$f30
+stt $f30,X
+ldt $f30,Half
+ldt $f29,X
+addt $f30,$f29,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+stt $f0,Y
+ldt $f30,X
+ldt $f29,Y
+subt $f30,$f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+ldt $f29,Four
+mult $f0,$f29,$f30
+ldt $f29,One
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.106
+ldt $f30,Y
+stt $f30,X
+L.106:
+ldt $f30,X
+ldt $f29,TwoForty
+divt $f30,$f29,$f30
+stt $f30,Precision
+ldt $f30,Half
+ldt $f29,Precision
+addt $f30,$f29,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+stt $f0,Y
+ldt $f30,Precision
+ldt $f29,Y
+subt $f30,$f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+ldt $f29,TwoForty
+mult $f0,$f29,$f30
+ldt $f29,Half
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.108
+ldt $f30,Y
+stt $f30,Precision
+L.108:
+L.104:
+ldt $f30,Precision
+stt $f30,-88+256($sp)
+fmov $f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,-88+256($sp)
+cmpteq $f29,$f0,$f1
+fbeq $f1,L.112
+ldt $f30,Radix
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.110
+L.112:
+lda $16,L.113
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.114
+jsr $26,printf
+ldgp $gp,0($26)
+L.110:
+ldt $f30,Radix
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.115
+lda $16,L.117
+jsr $26,printf
+ldgp $gp,0($26)
+br L.116
+L.115:
+lda $16,L.118
+ldt $f17,Precision
+jsr $26,printf
+ldgp $gp,0($26)
+L.116:
+lda $16,1
+ldt $f30,Nine
+ldt $f29,U2
+mult $f29,$f30,$f29
+mult $f29,$f30,$f30
+ldt $f29,TwoForty
+mult $f30,$f29,$f30
+ldt $f29,One
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.121
+lda $27,1
+stl $27,-92+256($sp)
+br L.122
+L.121:
+stl $31,-92+256($sp)
+L.122:
+ldl $17,-92+256($sp)
+lda $18,L.120
+jsr $26,TstCond
+ldgp $gp,0($26)
+lda $27,30
+stl $27,Milestone
+ldt $f30,Four
+ldt $f29,Three
+ldt $f28,One
+divt $f28,$f30,$f27
+divt $f30,$f29,$f30
+subt $f30,$f28,$f30
+subt $f30,$f27,$f30
+mult $f30,$f29,$f30
+subt $f30,$f27,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+stt $f0,X
+L.123:
+ldt $f30,X
+stt $f30,Z2
+ldt $f30,One
+ldt $f29,Z2
+ldt $f28,Half
+mult $f28,$f29,$f28
+ldt $f27,ThirtyTwo
+mult $f27,$f29,$f27
+mult $f27,$f29,$f29
+addt $f28,$f29,$f29
+addt $f30,$f29,$f29
+subt $f29,$f30,$f30
+stt $f30,X
+L.124:
+ldt $f30,X
+ldt $f29,Z2
+cmptle $f29,$f30,$f1
+fbne $f1,L.126
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.123
+L.126:
+ldt $f30,Three
+ldt $f29,Four
+divt $f30,$f29,$f28
+ldt $f27,Two
+divt $f27,$f30,$f27
+subt $f28,$f27,$f28
+mult $f28,$f30,$f30
+ldt $f28,One
+divt $f28,$f29,$f29
+subt $f30,$f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+stt $f0,Z
+stt $f0,Y
+stt $f0,X
+L.127:
+ldt $f30,Z
+stt $f30,Z1
+ldt $f30,One
+ldt $f29,Two
+divt $f30,$f29,$f30
+ldt $f29,Z1
+ldt $f28,Half
+mult $f28,$f29,$f28
+ldt $f27,ThirtyTwo
+mult $f27,$f29,$f27
+mult $f27,$f29,$f29
+addt $f28,$f29,$f29
+subt $f30,$f29,$f29
+addt $f29,$f30,$f29
+subt $f30,$f29,$f29
+addt $f29,$f30,$f30
+stt $f30,Z
+L.128:
+ldt $f30,Z
+ldt $f29,Z1
+cmptle $f29,$f30,$f1
+fbne $f1,L.130
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.127
+L.130:
+L.131:
+L.134:
+ldt $f30,Y
+stt $f30,Y1
+ldt $f30,Half
+ldt $f29,Y1
+mult $f30,$f29,$f28
+ldt $f27,ThirtyTwo
+mult $f27,$f29,$f27
+mult $f27,$f29,$f29
+addt $f28,$f29,$f29
+subt $f30,$f29,$f29
+addt $f29,$f30,$f29
+subt $f30,$f29,$f29
+addt $f29,$f30,$f30
+stt $f30,Y
+L.135:
+ldt $f30,Y
+ldt $f29,Y1
+cmptle $f29,$f30,$f1
+fbne $f1,L.137
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.134
+L.137:
+ldt $f30,X
+stt $f30,X1
+ldt $f30,X1
+ldt $f29,F9
+ldt $f28,Half
+mult $f28,$f30,$f28
+ldt $f27,ThirtyTwo
+mult $f27,$f30,$f27
+mult $f27,$f30,$f30
+addt $f28,$f30,$f30
+subt $f30,$f29,$f30
+addt $f30,$f29,$f30
+stt $f30,X
+L.132:
+ldt $f30,X
+ldt $f29,X1
+cmptle $f29,$f30,$f1
+fbne $f1,L.138
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.131
+L.138:
+ldt $f30,X1
+ldt $f29,Y1
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.141
+ldt $f29,Z1
+cmpteq $f30,$f29,$f1
+fbne $f1,L.139
+L.141:
+lda $16,1
+lda $17,L.142
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.143
+ldt $f17,X1
+ldt $f18,Y1
+ldt $f19,Z1
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.144
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.145
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.146
+jsr $26,notify
+ldgp $gp,0($26)
+ldt $f30,U1
+ldt $f29,X1
+cmpteq $f29,$f30,$f1
+fbne $f1,L.150
+ldt $f29,Y1
+cmpteq $f29,$f30,$f1
+fbne $f1,L.150
+ldt $f29,Z1
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.140
+L.150:
+lda $16,L.151
+jsr $26,printf
+ldgp $gp,0($26)
+br L.140
+L.139:
+ldt $f30,Z1
+ldt $f29,U1
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.154
+ldt $f30,Z2
+ldt $f29,U2
+cmpteq $f30,$f29,$f1
+fbne $f1,L.152
+L.154:
+ldt $f30,Z1
+ldt $f29,U1
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.157
+ldt $f30,Z2
+ldt $f29,U2
+cmptlt $f30,$f29,$f1
+fbne $f1,L.155
+L.157:
+mov $31,$16
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.159
+jsr $26,notify
+ldgp $gp,0($26)
+lda $16,L.160
+ldt $f30,U1
+fmov $f30,$f17
+ldt $f29,Z1
+subt $f29,$f30,$f18
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.161
+ldt $f30,U2
+fmov $f30,$f17
+ldt $f29,Z2
+subt $f29,$f30,$f18
+jsr $26,printf
+ldgp $gp,0($26)
+br L.156
+L.155:
+ldt $f30,Zero
+ldt $f29,Z1
+cmptle $f29,$f30,$f1
+fbne $f1,L.164
+ldt $f29,Z2
+cmptle $f29,$f30,$f1
+fbeq $f1,L.162
+L.164:
+lda $16,L.165
+ldt $f17,Radix
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.166
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.167
+ldt $f17,Z1
+ldt $f18,Z2
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.168
+jsr $26,notify
+ldgp $gp,0($26)
+L.162:
+ldt $f30,Z1
+ldt $f29,Z2
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.171
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbne $f1,L.169
+L.171:
+ldt $f30,Z1
+ldt $f29,U1
+divt $f30,$f29,$f30
+stt $f30,X
+ldt $f30,Z2
+ldt $f29,U2
+divt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,X
+cmptle $f30,$f29,$f1
+fbne $f1,L.172
+ldt $f30,Y
+stt $f30,X
+L.172:
+ldt $f16,X
+jsr $26,log
+ldgp $gp,0($26)
+negt $f0,$f30
+stt $f30,Q
+lda $16,L.174
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f16,Radix
+jsr $26,log
+ldgp $gp,0($26)
+fmov $f0,$f30
+lda $16,L.175
+ldt $f29,Q
+divt $f29,$f30,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f16,L.94
+jsr $26,log
+ldgp $gp,0($26)
+fmov $f0,$f30
+lda $16,L.176
+ldt $f29,Q
+divt $f29,$f30,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+L.169:
+lda $16,L.151
+jsr $26,printf
+ldgp $gp,0($26)
+L.156:
+L.152:
+L.140:
+jsr $26,Pause
+ldgp $gp,0($26)
+lda $27,35
+stl $27,Milestone
+ldt $f30,Radix
+ldt $f29,Two
+cmptlt $f30,$f29,$f1
+fbne $f1,L.177
+ldt $f30,Radix
+ldt $f29,W
+mult $f30,$f30,$f30
+divt $f29,$f30,$f30
+stt $f30,X
+ldt $f30,X
+ldt $f29,One
+addt $f30,$f29,$f29
+stt $f29,Y
+ldt $f29,Y
+subt $f29,$f30,$f30
+stt $f30,Z
+ldt $f30,Z
+ldt $f29,U2
+addt $f30,$f29,$f28
+stt $f28,T
+ldt $f28,T
+subt $f28,$f30,$f30
+stt $f30,X
+mov $31,$16
+ldt $f30,X
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.181
+lda $27,1
+stl $27,-96+256($sp)
+br L.182
+L.181:
+stl $31,-96+256($sp)
+L.182:
+ldl $17,-96+256($sp)
+lda $18,L.180
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,X
+ldt $f29,U2
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.183
+lda $16,L.185
+jsr $26,printf
+ldgp $gp,0($26)
+L.183:
+L.177:
+lda $16,L.186
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,F9
+ldt $f29,One
+mult $f30,$f29,$f28
+stt $f28,Y
+mult $f29,$f30,$f28
+stt $f28,Z
+ldt $f28,Half
+subt $f30,$f28,$f30
+stt $f30,X
+ldt $f30,X
+ldt $f27,Y
+subt $f27,$f28,$f27
+subt $f27,$f30,$f27
+stt $f27,Y
+ldt $f27,Z
+subt $f27,$f28,$f28
+subt $f28,$f30,$f30
+stt $f30,Z
+ldt $f30,U2
+addt $f29,$f30,$f28
+stt $f28,X
+ldt $f28,X
+ldt $f27,Radix
+mult $f28,$f27,$f26
+stt $f26,T
+mult $f27,$f28,$f28
+stt $f28,R
+ldt $f28,T
+subt $f28,$f27,$f28
+stt $f28,X
+mult $f27,$f30,$f30
+ldt $f28,X
+subt $f28,$f30,$f28
+stt $f28,X
+ldt $f28,R
+subt $f28,$f27,$f28
+stt $f28,T
+ldt $f28,T
+subt $f28,$f30,$f30
+stt $f30,T
+subt $f27,$f29,$f30
+ldt $f29,X
+mult $f29,$f30,$f29
+stt $f29,X
+ldt $f29,T
+mult $f29,$f30,$f30
+stt $f30,T
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.187
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.187
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.187
+ldt $f29,T
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.187
+lda $27,1
+stl $27,GMult
+br L.188
+L.187:
+mov $31,$27
+stl $27,GMult
+lda $16,1
+mov $27,$17
+lda $18,L.189
+jsr $26,TstCond
+ldgp $gp,0($26)
+L.188:
+ldt $f30,Radix
+ldt $f29,U2
+mult $f30,$f29,$f30
+stt $f30,Z
+ldt $f30,Z
+ldt $f29,One
+addt $f29,$f30,$f29
+stt $f29,X
+ldt $f29,X
+addt $f29,$f30,$f30
+mult $f29,$f29,$f29
+subt $f30,$f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+ldt $f29,U2
+subt $f0,$f29,$f30
+stt $f30,Y
+ldt $f30,One
+subt $f30,$f29,$f30
+stt $f30,X
+ldt $f30,X
+subt $f30,$f29,$f29
+mult $f30,$f30,$f30
+subt $f29,$f30,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+ldt $f29,U1
+subt $f0,$f29,$f30
+stt $f30,Z
+mov $31,$16
+ldt $f30,Zero
+ldt $f29,Y
+cmptle $f29,$f30,$f1
+fbeq $f1,L.192
+ldt $f29,Z
+cmptle $f29,$f30,$f1
+fbeq $f1,L.192
+lda $27,1
+stl $27,-96+256($sp)
+br L.193
+L.192:
+stl $31,-96+256($sp)
+L.193:
+ldl $17,-96+256($sp)
+lda $18,L.191
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,One
+ldt $f29,U2
+subt $f30,$f29,$f28
+stt $f28,Y
+addt $f30,$f29,$f29
+stt $f29,X
+ldt $f29,Y
+divt $f30,$f29,$f29
+stt $f29,Z
+ldt $f29,Z
+ldt $f28,X
+subt $f29,$f28,$f29
+stt $f29,Y
+ldt $f29,Three
+divt $f30,$f29,$f30
+stt $f30,X
+ldt $f30,Nine
+divt $f29,$f30,$f29
+stt $f29,Z
+ldt $f29,Z
+ldt $f28,X
+subt $f28,$f29,$f28
+stt $f28,X
+ldt $f28,TwentySeven
+divt $f30,$f28,$f30
+stt $f30,T
+ldt $f30,T
+subt $f29,$f30,$f30
+stt $f30,Z
+lda $16,2
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.196
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.196
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.196
+lda $27,1
+stl $27,-100+256($sp)
+br L.197
+L.196:
+stl $31,-100+256($sp)
+L.197:
+ldl $17,-100+256($sp)
+lda $18,L.195
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,F9
+ldt $f29,One
+divt $f30,$f29,$f28
+stt $f28,Y
+ldt $f28,Half
+subt $f30,$f28,$f30
+stt $f30,X
+ldt $f30,Y
+subt $f30,$f28,$f30
+ldt $f28,X
+subt $f30,$f28,$f30
+stt $f30,Y
+ldt $f30,U2
+addt $f29,$f30,$f30
+stt $f30,X
+ldt $f30,X
+divt $f30,$f29,$f29
+stt $f29,T
+ldt $f29,T
+subt $f29,$f30,$f30
+stt $f30,X
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.198
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.198
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.198
+lda $27,1
+stl $27,GDiv
+br L.199
+L.198:
+mov $31,$27
+stl $27,GDiv
+lda $16,1
+mov $27,$17
+lda $18,L.200
+jsr $26,TstCond
+ldgp $gp,0($26)
+L.199:
+ldt $f30,One
+ldt $f29,U2
+addt $f30,$f29,$f29
+divt $f30,$f29,$f30
+stt $f30,X
+ldt $f30,Half
+ldt $f29,X
+subt $f29,$f30,$f29
+subt $f29,$f30,$f30
+stt $f30,Y
+lda $16,1
+ldt $f30,Y
+ldt $f29,Zero
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.203
+lda $27,1
+stl $27,-104+256($sp)
+br L.204
+L.203:
+stl $31,-104+256($sp)
+L.204:
+ldl $17,-104+256($sp)
+lda $18,L.202
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,One
+ldt $f29,U2
+subt $f30,$f29,$f28
+stt $f28,X
+ldt $f28,Radix
+mult $f28,$f29,$f29
+addt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,X
+mult $f30,$f28,$f29
+stt $f29,Z
+ldt $f29,Y
+mult $f29,$f28,$f27
+stt $f27,T
+ldt $f27,Z
+divt $f27,$f28,$f27
+stt $f27,R
+ldt $f27,T
+divt $f27,$f28,$f28
+stt $f28,StickyBit
+ldt $f28,R
+subt $f28,$f30,$f30
+stt $f30,X
+ldt $f30,StickyBit
+subt $f30,$f29,$f30
+stt $f30,Y
+mov $31,$16
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.207
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.207
+lda $27,1
+stl $27,-108+256($sp)
+br L.208
+L.207:
+stl $31,-108+256($sp)
+L.208:
+ldl $17,-108+256($sp)
+lda $18,L.206
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,One
+ldt $f29,U1
+subt $f30,$f29,$f29
+stt $f29,Y
+ldt $f29,F9
+subt $f30,$f29,$f29
+stt $f29,X
+ldt $f29,Y
+subt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,Radix
+ldt $f29,U2
+subt $f30,$f29,$f29
+stt $f29,T
+ldt $f29,BMinusU2
+subt $f30,$f29,$f29
+stt $f29,Z
+ldt $f29,T
+subt $f30,$f29,$f30
+stt $f30,T
+ldt $f30,U1
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.209
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.209
+ldt $f30,U2
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.209
+ldt $f29,T
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.209
+lda $27,1
+stl $27,GAddSub
+br L.210
+L.209:
+mov $31,$27
+stl $27,GAddSub
+lda $16,1
+mov $27,$17
+lda $18,L.211
+jsr $26,TstCond
+ldgp $gp,0($26)
+L.210:
+ldt $f30,F9
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbne $f1,L.212
+subt $f30,$f29,$f30
+ldt $f29,Zero
+cmptlt $f30,$f29,$f1
+fbne $f1,L.212
+lda $16,1
+lda $17,L.214
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.215
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.216
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.217
+jsr $26,printf
+ldgp $gp,0($26)
+L.212:
+ldl $27,GMult
+cmpeq $27,1,$23
+beq $23,L.218
+ldl $27,GDiv
+cmpeq $27,1,$23
+beq $23,L.218
+ldl $27,GAddSub
+cmpeq $27,1,$23
+beq $23,L.218
+lda $16,L.220
+jsr $26,printf
+ldgp $gp,0($26)
+L.218:
+lda $27,40
+stl $27,Milestone
+jsr $26,Pause
+ldgp $gp,0($26)
+lda $16,L.221
+jsr $26,printf
+ldgp $gp,0($26)
+stl $31,RMult
+stl $31,RDiv
+stl $31,RAddSub
+ldt $f30,Two
+ldt $f29,Radix
+divt $f29,$f30,$f29
+stt $f29,RadixD2
+stt $f30,A1
+stl $31,Done
+L.222:
+ldt $f30,Radix
+stt $f30,AInvrse
+L.225:
+ldt $f30,AInvrse
+stt $f30,X
+ldt $f29,A1
+divt $f30,$f29,$f30
+stt $f30,AInvrse
+L.226:
+ldt $f16,AInvrse
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,AInvrse
+cmpteq $f0,$f29,$f1
+fbne $f1,L.225
+ldt $f30,X
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbne $f1,L.231
+ldt $f30,A1
+ldt $f29,Three
+cmptle $f30,$f29,$f1
+fbne $f1,L.229
+L.231:
+lda $27,1
+stl $27,-112+256($sp)
+br L.230
+L.229:
+stl $31,-112+256($sp)
+L.230:
+ldl $27,-112+256($sp)
+stl $27,Done
+ldl $27,Done
+cmpeq $27,$31,$23
+beq $23,L.232
+ldt $f30,Nine
+ldt $f29,One
+addt $f30,$f29,$f30
+stt $f30,A1
+L.232:
+L.223:
+ldl $27,Done
+cmpeq $27,$31,$23
+bne $23,L.222
+ldt $f30,X
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.234
+ldt $f30,Radix
+stt $f30,A1
+L.234:
+ldt $f30,A1
+ldt $f29,One
+divt $f29,$f30,$f29
+stt $f29,AInvrse
+stt $f30,X
+ldt $f30,AInvrse
+stt $f30,Y
+stl $31,Done
+L.236:
+ldt $f30,Half
+ldt $f29,X
+ldt $f28,Y
+mult $f29,$f28,$f29
+subt $f29,$f30,$f29
+stt $f29,Z
+mov $31,$16
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.241
+lda $27,1
+stl $27,-112+256($sp)
+br L.242
+L.241:
+stl $31,-112+256($sp)
+L.242:
+ldl $17,-112+256($sp)
+lda $18,L.240
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,X
+ldt $f29,Radix
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.244
+lda $27,1
+stl $27,-116+256($sp)
+br L.245
+L.244:
+stl $31,-116+256($sp)
+L.245:
+ldl $27,-116+256($sp)
+stl $27,Done
+ldt $f30,Radix
+stt $f30,X
+ldt $f30,One
+ldt $f29,X
+divt $f30,$f29,$f30
+stt $f30,Y
+L.237:
+ldl $27,Done
+cmpeq $27,$31,$23
+bne $23,L.236
+ldt $f30,One
+ldt $f29,U2
+addt $f30,$f29,$f28
+stt $f28,Y2
+subt $f30,$f29,$f30
+stt $f30,Y1
+ldt $f30,OneAndHalf
+subt $f30,$f29,$f28
+stt $f28,X
+addt $f30,$f29,$f28
+stt $f28,Y
+ldt $f28,X
+ldt $f27,Y2
+subt $f28,$f29,$f26
+mult $f26,$f27,$f26
+stt $f26,Z
+ldt $f26,Y
+ldt $f25,Y1
+mult $f26,$f25,$f24
+stt $f24,T
+ldt $f24,Z
+subt $f24,$f28,$f24
+stt $f24,Z
+ldt $f24,T
+subt $f24,$f28,$f24
+stt $f24,T
+mult $f28,$f27,$f28
+stt $f28,X
+addt $f26,$f29,$f29
+mult $f29,$f25,$f29
+stt $f29,Y
+ldt $f29,X
+subt $f29,$f30,$f29
+stt $f29,X
+ldt $f29,Y
+subt $f29,$f30,$f30
+stt $f30,Y
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.246
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.246
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.246
+ldt $f29,T
+cmptle $f29,$f30,$f1
+fbeq $f1,L.246
+ldt $f30,OneAndHalf
+ldt $f29,U2
+addt $f30,$f29,$f28
+ldt $f27,Y2
+mult $f28,$f27,$f26
+stt $f26,X
+subt $f30,$f29,$f30
+subt $f30,$f29,$f26
+stt $f26,Y
+addt $f28,$f29,$f28
+stt $f28,Z
+ldt $f28,Y1
+mult $f30,$f28,$f30
+stt $f30,T
+ldt $f30,Z
+addt $f30,$f29,$f26
+ldt $f25,X
+subt $f25,$f26,$f25
+stt $f25,X
+ldt $f25,Y
+mult $f25,$f28,$f24
+stt $f24,StickyBit
+mult $f30,$f27,$f30
+stt $f30,S
+ldt $f30,T
+subt $f30,$f25,$f30
+stt $f30,T
+subt $f29,$f25,$f30
+ldt $f25,StickyBit
+addt $f30,$f25,$f30
+stt $f30,Y
+ldt $f30,S
+addt $f26,$f29,$f26
+subt $f30,$f26,$f30
+stt $f30,Z
+addt $f27,$f29,$f30
+mult $f30,$f28,$f30
+stt $f30,StickyBit
+mult $f27,$f28,$f30
+stt $f30,Y1
+ldt $f30,StickyBit
+subt $f30,$f27,$f30
+stt $f30,StickyBit
+ldt $f30,Y1
+ldt $f29,Half
+subt $f30,$f29,$f30
+stt $f30,Y1
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.248
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.248
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.248
+ldt $f29,T
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.248
+ldt $f29,StickyBit
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.248
+ldt $f30,Y1
+ldt $f29,Half
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.248
+lda $27,1
+stl $27,RMult
+lda $16,L.250
+jsr $26,printf
+ldgp $gp,0($26)
+br L.249
+L.248:
+ldt $f30,U2
+ldt $f29,Zero
+ldt $f28,X
+addt $f28,$f30,$f28
+cmpteq $f28,$f29,$f1
+fbeq $f1,L.251
+ldt $f28,Y
+cmptlt $f28,$f29,$f1
+fbeq $f1,L.251
+ldt $f28,Z
+addt $f28,$f30,$f28
+cmpteq $f28,$f29,$f1
+fbeq $f1,L.251
+ldt $f28,T
+cmptlt $f28,$f29,$f1
+fbeq $f1,L.251
+ldt $f28,StickyBit
+addt $f28,$f30,$f30
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.251
+ldt $f30,Y1
+ldt $f29,Half
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.251
+lda $27,2
+stl $27,RMult
+lda $16,L.253
+jsr $26,printf
+ldgp $gp,0($26)
+br L.252
+L.251:
+lda $16,L.254
+jsr $26,printf
+ldgp $gp,0($26)
+L.252:
+L.249:
+ldl $27,RMult
+cmpeq $27,1,$23
+beq $23,L.247
+ldl $27,GMult
+cmpeq $27,$31,$23
+beq $23,L.247
+lda $16,L.257
+jsr $26,notify
+ldgp $gp,0($26)
+br L.247
+L.246:
+lda $16,L.254
+jsr $26,printf
+ldgp $gp,0($26)
+L.247:
+lda $27,45
+stl $27,Milestone
+ldt $f30,One
+ldt $f29,U2
+addt $f30,$f29,$f28
+stt $f28,Y2
+subt $f30,$f29,$f30
+stt $f30,Y1
+ldt $f30,OneAndHalf
+addt $f30,$f29,$f28
+addt $f28,$f29,$f27
+stt $f27,Z
+ldt $f27,Z
+ldt $f26,Y2
+divt $f27,$f26,$f25
+stt $f25,X
+subt $f30,$f29,$f25
+subt $f25,$f29,$f25
+stt $f25,T
+ldt $f25,T
+ldt $f24,Y1
+subt $f25,$f29,$f23
+divt $f23,$f24,$f23
+stt $f23,Y
+addt $f27,$f29,$f27
+divt $f27,$f26,$f27
+stt $f27,Z
+ldt $f27,X
+subt $f27,$f30,$f27
+stt $f27,X
+ldt $f27,Y
+subt $f27,$f25,$f27
+stt $f27,Y
+divt $f25,$f24,$f27
+stt $f27,T
+ldt $f27,Z
+subt $f27,$f28,$f28
+stt $f28,Z
+subt $f29,$f30,$f30
+ldt $f29,T
+addt $f30,$f29,$f30
+stt $f30,T
+ldt $f30,Zero
+ldt $f29,X
+cmptle $f29,$f30,$f1
+fbeq $f1,L.258
+ldt $f29,Y
+cmptle $f29,$f30,$f1
+fbeq $f1,L.258
+ldt $f29,Z
+cmptle $f29,$f30,$f1
+fbeq $f1,L.258
+ldt $f29,T
+cmptle $f29,$f30,$f1
+fbeq $f1,L.258
+ldt $f30,OneAndHalf
+ldt $f29,Y2
+divt $f30,$f29,$f28
+stt $f28,X
+ldt $f28,U2
+subt $f30,$f28,$f27
+stt $f27,Y
+addt $f30,$f28,$f27
+stt $f27,Z
+ldt $f27,Y
+ldt $f26,X
+subt $f26,$f27,$f26
+stt $f26,X
+ldt $f26,Y1
+divt $f30,$f26,$f25
+stt $f25,T
+divt $f27,$f26,$f27
+stt $f27,Y
+ldt $f27,Z
+ldt $f26,T
+addt $f27,$f28,$f25
+subt $f26,$f25,$f26
+stt $f26,T
+ldt $f26,Y
+subt $f26,$f27,$f26
+stt $f26,Y
+divt $f27,$f29,$f27
+stt $f27,Z
+addt $f29,$f28,$f28
+divt $f28,$f29,$f28
+stt $f28,Y1
+ldt $f28,Z
+subt $f28,$f30,$f30
+stt $f30,Z
+ldt $f30,Y1
+subt $f30,$f29,$f30
+stt $f30,Y2
+ldt $f30,F9
+ldt $f29,U1
+subt $f30,$f29,$f29
+divt $f29,$f30,$f30
+stt $f30,Y1
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.260
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.260
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.260
+ldt $f29,T
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.260
+ldt $f29,Y2
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.260
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.260
+ldt $f30,Half
+ldt $f29,Y1
+subt $f29,$f30,$f29
+ldt $f28,F9
+subt $f28,$f30,$f30
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.260
+lda $27,1
+stl $27,RDiv
+lda $16,L.262
+jsr $26,printf
+ldgp $gp,0($26)
+ldl $27,GDiv
+cmpeq $27,$31,$23
+beq $23,L.261
+lda $16,L.265
+jsr $26,notify
+ldgp $gp,0($26)
+br L.261
+L.260:
+ldt $f30,Zero
+ldt $f29,X
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.266
+ldt $f29,Y
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.266
+ldt $f29,Z
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.266
+ldt $f29,T
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.266
+ldt $f29,Y2
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.266
+ldt $f30,Half
+ldt $f29,Y1
+subt $f29,$f30,$f29
+ldt $f28,F9
+subt $f28,$f30,$f30
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.266
+lda $27,2
+stl $27,RDiv
+lda $16,L.268
+jsr $26,printf
+ldgp $gp,0($26)
+L.266:
+L.261:
+L.258:
+ldl $27,RDiv
+cmpeq $27,$31,$23
+beq $23,L.269
+lda $16,L.271
+jsr $26,printf
+ldgp $gp,0($26)
+L.269:
+ldt $f30,Radix
+ldt $f29,One
+divt $f29,$f30,$f29
+stt $f29,BInvrse
+mov $31,$16
+ldt $f29,Half
+ldt $f28,BInvrse
+mult $f28,$f30,$f30
+subt $f30,$f29,$f30
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.274
+lda $27,1
+stl $27,-112+256($sp)
+br L.275
+L.274:
+stl $31,-112+256($sp)
+L.275:
+ldl $17,-112+256($sp)
+lda $18,L.273
+jsr $26,TstCond
+ldgp $gp,0($26)
+lda $27,50
+stl $27,Milestone
+mov $31,$16
+ldt $f30,Half
+ldt $f29,F9
+ldt $f28,U1
+addt $f29,$f28,$f29
+subt $f29,$f30,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.278
+ldt $f30,One
+ldt $f29,BMinusU2
+ldt $f28,U2
+addt $f29,$f28,$f29
+subt $f29,$f30,$f29
+ldt $f28,Radix
+subt $f28,$f30,$f30
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.278
+lda $27,1
+stl $27,-116+256($sp)
+br L.279
+L.278:
+stl $31,-116+256($sp)
+L.279:
+ldl $17,-116+256($sp)
+lda $18,L.277
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,One
+ldt $f29,U1
+mult $f29,$f29,$f29
+subt $f30,$f29,$f29
+stt $f29,X
+ldt $f29,U2
+subt $f30,$f29,$f28
+mult $f29,$f28,$f29
+addt $f30,$f29,$f29
+stt $f29,Y
+ldt $f29,Half
+ldt $f28,F9
+subt $f28,$f29,$f28
+stt $f28,Z
+ldt $f28,X
+subt $f28,$f29,$f29
+ldt $f28,Z
+subt $f29,$f28,$f29
+stt $f29,X
+ldt $f29,Y
+subt $f29,$f30,$f30
+stt $f30,Y
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.280
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.280
+lda $27,2
+stl $27,RAddSub
+lda $16,L.282
+jsr $26,printf
+ldgp $gp,0($26)
+L.280:
+ldl $27,GAddSub
+cmpeq $27,1,$23
+beq $23,L.283
+ldt $f30,Half
+ldt $f29,U2
+addt $f30,$f29,$f28
+mult $f28,$f29,$f28
+stt $f28,X
+subt $f30,$f29,$f30
+mult $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,One
+ldt $f28,X
+addt $f30,$f28,$f28
+stt $f28,X
+ldt $f28,Y
+addt $f30,$f28,$f28
+stt $f28,Y
+addt $f30,$f29,$f29
+ldt $f28,X
+subt $f29,$f28,$f29
+stt $f29,X
+ldt $f29,Y
+subt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.285
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.285
+ldt $f30,Half
+ldt $f29,U2
+ldt $f28,U1
+addt $f30,$f29,$f27
+mult $f27,$f28,$f27
+stt $f27,X
+subt $f30,$f29,$f30
+mult $f30,$f28,$f30
+stt $f30,Y
+ldt $f30,One
+ldt $f29,X
+subt $f30,$f29,$f29
+stt $f29,X
+ldt $f29,Y
+subt $f30,$f29,$f29
+stt $f29,Y
+ldt $f29,F9
+ldt $f28,X
+subt $f29,$f28,$f29
+stt $f29,X
+ldt $f29,Y
+subt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,Zero
+ldt $f29,X
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.287
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.287
+lda $27,1
+stl $27,RAddSub
+lda $16,L.289
+jsr $26,printf
+ldgp $gp,0($26)
+ldl $27,GAddSub
+cmpeq $27,$31,$23
+beq $23,L.284
+lda $16,L.292
+jsr $26,notify
+ldgp $gp,0($26)
+br L.284
+L.287:
+lda $16,L.293
+jsr $26,printf
+ldgp $gp,0($26)
+br L.284
+L.285:
+lda $16,L.293
+jsr $26,printf
+ldgp $gp,0($26)
+br L.284
+L.283:
+lda $16,L.293
+jsr $26,printf
+ldgp $gp,0($26)
+L.284:
+ldt $f30,One
+stt $f30,S
+ldt $f29,Half
+addt $f30,$f29,$f28
+mult $f29,$f28,$f28
+addt $f30,$f28,$f28
+stt $f28,X
+ldt $f28,U2
+addt $f30,$f28,$f30
+mult $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,X
+ldt $f29,Y
+subt $f30,$f29,$f28
+stt $f28,Z
+subt $f29,$f30,$f30
+stt $f30,T
+ldt $f30,Z
+ldt $f29,T
+addt $f30,$f29,$f30
+stt $f30,StickyBit
+ldt $f30,StickyBit
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.294
+ldt $f30,Zero
+stt $f30,S
+lda $16,3
+lda $17,L.296
+jsr $26,BadCond
+ldgp $gp,0($26)
+L.294:
+ldt $f30,Zero
+stt $f30,StickyBit
+ldl $27,GMult
+cmpeq $27,1,$23
+beq $23,L.297
+ldl $27,GDiv
+cmpeq $27,1,$23
+beq $23,L.297
+ldl $27,GAddSub
+cmpeq $27,1,$23
+beq $23,L.297
+ldl $27,RMult
+cmpeq $27,1,$23
+beq $23,L.297
+ldl $27,RDiv
+cmpeq $27,1,$23
+beq $23,L.297
+ldl $27,RAddSub
+cmpeq $27,1,$23
+beq $23,L.297
+ldt $f16,RadixD2
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,RadixD2
+cmpteq $f0,$f29,$f1
+fbeq $f1,L.297
+lda $16,L.299
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Half
+ldt $f29,U2
+ldt $f28,U1
+addt $f30,$f28,$f28
+mult $f28,$f29,$f28
+stt $f28,X
+mult $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,One
+ldt $f29,Y
+addt $f30,$f29,$f29
+stt $f29,Z
+ldt $f29,X
+addt $f30,$f29,$f30
+stt $f30,T
+ldt $f30,One
+ldt $f29,Z
+subt $f29,$f30,$f29
+ldt $f28,Zero
+cmptle $f29,$f28,$f1
+fbeq $f1,L.300
+ldt $f29,T
+subt $f29,$f30,$f30
+ldt $f29,U2
+cmptlt $f30,$f29,$f1
+fbne $f1,L.300
+ldt $f30,T
+ldt $f29,Y
+addt $f30,$f29,$f30
+stt $f30,Z
+ldt $f30,Z
+ldt $f29,X
+subt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,T
+ldt $f29,Z
+subt $f29,$f30,$f29
+ldt $f28,U2
+cmptlt $f29,$f28,$f1
+fbne $f1,L.302
+ldt $f29,Y
+subt $f29,$f30,$f30
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.302
+ldt $f30,Half
+ldt $f29,U1
+addt $f30,$f29,$f28
+mult $f28,$f29,$f28
+stt $f28,X
+mult $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,One
+ldt $f29,Y
+subt $f30,$f29,$f29
+stt $f29,Z
+ldt $f29,X
+subt $f30,$f29,$f30
+stt $f30,T
+ldt $f30,Zero
+ldt $f29,Z
+ldt $f28,One
+subt $f29,$f28,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.304
+ldt $f29,T
+ldt $f28,F9
+subt $f29,$f28,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.304
+ldt $f30,U1
+ldt $f29,Half
+subt $f29,$f30,$f29
+mult $f29,$f30,$f30
+stt $f30,Z
+ldt $f30,F9
+ldt $f29,Z
+subt $f30,$f29,$f29
+stt $f29,T
+ldt $f29,Y
+subt $f30,$f29,$f30
+stt $f30,Q
+ldt $f30,F9
+ldt $f29,Zero
+ldt $f28,T
+subt $f28,$f30,$f28
+cmpteq $f28,$f29,$f1
+fbeq $f1,L.306
+ldt $f28,U1
+subt $f30,$f28,$f30
+ldt $f28,Q
+subt $f30,$f28,$f30
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.306
+ldt $f30,One
+ldt $f29,U2
+ldt $f28,OneAndHalf
+addt $f30,$f29,$f27
+mult $f27,$f28,$f27
+stt $f27,Z
+addt $f28,$f29,$f28
+ldt $f27,Z
+subt $f28,$f27,$f28
+addt $f28,$f29,$f28
+stt $f28,T
+ldt $f28,Radix
+ldt $f27,Half
+divt $f27,$f28,$f27
+addt $f30,$f27,$f27
+stt $f27,X
+mult $f28,$f29,$f29
+addt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,X
+ldt $f29,Y
+mult $f30,$f29,$f30
+stt $f30,Z
+ldt $f30,Zero
+ldt $f29,T
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.308
+ldt $f29,X
+ldt $f28,Radix
+ldt $f27,U2
+mult $f28,$f27,$f28
+addt $f29,$f28,$f29
+ldt $f28,Z
+subt $f29,$f28,$f29
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.308
+ldt $f30,Radix
+ldt $f29,Two
+cmpteq $f30,$f29,$f1
+fbne $f1,L.310
+ldt $f30,Two
+ldt $f29,U2
+addt $f30,$f29,$f29
+stt $f29,X
+ldt $f29,X
+divt $f29,$f30,$f30
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,One
+subt $f30,$f29,$f30
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.311
+ldt $f30,S
+stt $f30,StickyBit
+br L.311
+L.310:
+ldt $f30,S
+stt $f30,StickyBit
+L.311:
+L.308:
+L.306:
+L.304:
+L.302:
+L.300:
+L.297:
+ldt $f30,StickyBit
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.314
+lda $16,L.316
+jsr $26,printf
+ldgp $gp,0($26)
+br L.315
+L.314:
+lda $16,L.317
+jsr $26,printf
+ldgp $gp,0($26)
+L.315:
+lda $16,3
+ldl $25,GMult
+cmpeq $25,$31,$23
+bne $23,L.320
+ldl $25,GDiv
+cmpeq $25,$31,$23
+bne $23,L.320
+ldl $25,GAddSub
+cmpeq $25,$31,$23
+bne $23,L.320
+ldl $25,RMult
+cmpeq $25,$31,$23
+bne $23,L.320
+ldl $25,RDiv
+cmpeq $25,$31,$23
+bne $23,L.320
+ldl $25,RAddSub
+cmpeq $25,$31,$23
+bne $23,L.320
+lda $27,1
+stl $27,-120+256($sp)
+br L.321
+L.320:
+stl $31,-120+256($sp)
+L.321:
+ldl $17,-120+256($sp)
+lda $18,L.319
+jsr $26,TstCond
+ldgp $gp,0($26)
+lda $27,60
+stl $27,Milestone
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.322
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.323
+ldl $17,NoTrials
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f16,L.324
+jsr $26,sqrt
+ldgp $gp,0($26)
+stt $f0,Random9
+ldt $f30,Third
+stt $f30,Random1
+lda $27,1
+stl $27,I
+L.325:
+jsr $26,Random
+ldgp $gp,0($26)
+stt $f0,X
+jsr $26,Random
+ldgp $gp,0($26)
+stt $f0,Y
+ldt $f30,Y
+ldt $f29,X
+mult $f30,$f29,$f28
+stt $f28,Z9
+mult $f29,$f30,$f30
+stt $f30,Z
+ldt $f30,Z
+ldt $f29,Z9
+subt $f30,$f29,$f30
+stt $f30,Z9
+ldl $27,I
+lda $27,1($27)
+stl $27,I
+L.326:
+ldl $27,I
+ldl $25,NoTrials
+cmple $27,$25,$23
+beq $23,L.328
+ldt $f30,Z9
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.325
+L.328:
+ldl $27,I
+ldl $25,NoTrials
+cmpeq $27,$25,$23
+beq $23,L.329
+ldt $f30,One
+ldt $f29,Half
+ldt $f28,Three
+divt $f29,$f28,$f29
+addt $f30,$f29,$f29
+stt $f29,Random1
+ldt $f28,U2
+ldt $f27,U1
+addt $f28,$f27,$f28
+addt $f28,$f30,$f30
+stt $f30,Random2
+ldt $f28,Random1
+ldt $f27,Random2
+mult $f28,$f27,$f26
+stt $f26,Z
+mult $f27,$f28,$f28
+stt $f28,Y
+mult $f29,$f30,$f30
+subt $f30,$f30,$f30
+stt $f30,Z9
+L.329:
+ldl $27,I
+ldl $25,NoTrials
+cmpeq $27,$25,$23
+bne $23,L.331
+ldt $f30,Z9
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.331
+lda $16,2
+lda $17,L.333
+jsr $26,BadCond
+ldgp $gp,0($26)
+br L.332
+L.331:
+lda $16,L.334
+ldl $17,NoTrials
+jsr $26,printf
+ldgp $gp,0($26)
+L.332:
+lda $27,70
+stl $27,Milestone
+lda $16,L.335
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Zero
+stt $f30,-136+256($sp)
+fmov $f30,$f16
+jsr $26,sqrt
+ldgp $gp,0($26)
+ldt $f29,-136+256($sp)
+cmpteq $f29,$f0,$f1
+fbeq $f1,L.338
+ldt $f30,Zero
+negt $f30,$f30
+stt $f30,-144+256($sp)
+fmov $f30,$f16
+jsr $26,sqrt
+ldgp $gp,0($26)
+ldt $f29,-144+256($sp)
+cmpteq $f29,$f0,$f1
+fbeq $f1,L.338
+ldt $f30,One
+stt $f30,-152+256($sp)
+fmov $f30,$f16
+jsr $26,sqrt
+ldgp $gp,0($26)
+fmov $f0,$f30
+ldt $f29,-152+256($sp)
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.338
+lda $27,1
+stl $27,-124+256($sp)
+br L.339
+L.338:
+stl $31,-124+256($sp)
+L.339:
+mov $31,$16
+ldl $17,-124+256($sp)
+lda $18,L.337
+jsr $26,TstCond
+ldgp $gp,0($26)
+ldt $f30,Zero
+stt $f30,MinSqEr
+stt $f30,MaxSqEr
+stt $f30,J
+ldt $f30,Radix
+stt $f30,X
+ldt $f30,U2
+stt $f30,OneUlp
+lda $16,1
+jsr $26,SqXMinX
+ldgp $gp,0($26)
+ldt $f30,BInvrse
+stt $f30,X
+ldt $f29,U1
+mult $f30,$f29,$f30
+stt $f30,OneUlp
+lda $16,1
+jsr $26,SqXMinX
+ldgp $gp,0($26)
+ldt $f30,U1
+stt $f30,X
+mult $f30,$f30,$f30
+stt $f30,OneUlp
+lda $16,1
+jsr $26,SqXMinX
+ldgp $gp,0($26)
+ldt $f30,J
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.340
+jsr $26,Pause
+ldgp $gp,0($26)
+L.340:
+lda $16,L.342
+ldl $17,NoTrials
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Zero
+stt $f30,J
+ldt $f30,Two
+stt $f30,X
+ldt $f30,Radix
+stt $f30,Y
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbne $f1,L.343
+L.345:
+ldt $f30,Y
+stt $f30,X
+ldt $f29,Radix
+mult $f29,$f30,$f30
+stt $f30,Y
+L.346:
+ldt $f30,Y
+ldt $f29,X
+subt $f30,$f29,$f30
+lds $f29,NoTrials
+cvtlq $f29,$f29
+cvtqt $f29,$f29
+cmptlt $f30,$f29,$f1
+fbne $f1,L.345
+L.343:
+ldt $f30,X
+ldt $f29,U2
+mult $f30,$f29,$f30
+stt $f30,OneUlp
+lda $27,1
+stl $27,I
+br L.349
+L.348:
+ldt $f30,X
+ldt $f29,One
+addt $f30,$f29,$f30
+stt $f30,X
+lda $16,2
+jsr $26,SqXMinX
+ldgp $gp,0($26)
+ldt $f30,J
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbne $f1,L.351
+br L.350
+L.351:
+ldl $27,I
+lda $27,1($27)
+stl $27,I
+L.349:
+ldl $27,I
+ldl $25,NoTrials
+cmple $27,$25,$23
+bne $23,L.348
+L.350:
+lda $16,L.353
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,-1
+stl $27,I
+ldt $f30,BMinusU2
+stt $f30,X
+ldt $f30,Radix
+stt $f30,Y
+ldt $f29,U2
+mult $f30,$f29,$f29
+addt $f30,$f29,$f30
+stt $f30,Z
+stl $31,NotMonot
+stl $31,Monot
+br L.355
+L.354:
+ldl $27,I
+lda $27,1($27)
+stl $27,I
+ldt $f16,X
+jsr $26,sqrt
+ldgp $gp,0($26)
+stt $f0,X
+ldt $f16,Y
+jsr $26,sqrt
+ldgp $gp,0($26)
+stt $f0,Q
+ldt $f16,Z
+jsr $26,sqrt
+ldgp $gp,0($26)
+stt $f0,Z
+ldt $f30,Q
+ldt $f29,X
+cmptle $f29,$f30,$f1
+fbeq $f1,L.359
+ldt $f29,Z
+cmptle $f30,$f29,$f1
+fbne $f1,L.357
+L.359:
+lda $27,1
+stl $27,NotMonot
+br L.358
+L.357:
+ldt $f30,Q
+ldt $f29,Half
+addt $f30,$f29,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+stt $f0,Q
+ldl $27,I
+cmple $27,$31,$23
+beq $23,L.362
+ldt $f30,Q
+ldt $f29,Radix
+mult $f30,$f30,$f30
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.360
+L.362:
+lda $27,1
+stl $27,Monot
+br L.361
+L.360:
+ldl $27,I
+cmple $27,$31,$23
+bne $23,L.363
+ldl $27,I
+cmple $27,1,$23
+bne $23,L.365
+lda $27,1
+stl $27,Monot
+br L.364
+L.365:
+ldt $f30,Y
+ldt $f29,BInvrse
+mult $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,U1
+subt $f30,$f29,$f28
+stt $f28,X
+addt $f30,$f29,$f30
+stt $f30,Z
+br L.364
+L.363:
+ldt $f30,Q
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,U2
+subt $f30,$f29,$f28
+stt $f28,X
+addt $f30,$f29,$f30
+stt $f30,Z
+L.364:
+L.361:
+L.358:
+L.355:
+ldl $25,NotMonot
+cmpeq $25,$31,$23
+beq $23,L.367
+ldl $25,Monot
+cmpeq $25,$31,$23
+bne $23,L.354
+L.367:
+ldl $27,Monot
+cmpeq $27,$31,$23
+bne $23,L.368
+lda $16,L.370
+jsr $26,printf
+ldgp $gp,0($26)
+br L.369
+L.368:
+lda $16,2
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.371
+ldt $f17,Y
+jsr $26,printf
+ldgp $gp,0($26)
+L.369:
+lda $27,80
+stl $27,Milestone
+ldt $f30,Half
+ldt $f29,MinSqEr
+addt $f29,$f30,$f29
+stt $f29,MinSqEr
+ldt $f29,MaxSqEr
+subt $f29,$f30,$f30
+stt $f30,MaxSqEr
+ldt $f30,One
+ldt $f29,U2
+addt $f30,$f29,$f16
+jsr $26,sqrt
+ldgp $gp,0($26)
+ldt $f29,One
+ldt $f28,U2
+subt $f0,$f29,$f30
+divt $f30,$f28,$f30
+stt $f30,Y
+ldt $f30,Y
+subt $f30,$f29,$f30
+ldt $f29,Eight
+divt $f28,$f29,$f29
+addt $f30,$f29,$f30
+stt $f30,SqEr
+ldt $f30,SqEr
+ldt $f29,MaxSqEr
+cmptle $f30,$f29,$f1
+fbne $f1,L.372
+ldt $f30,SqEr
+stt $f30,MaxSqEr
+L.372:
+ldt $f30,Y
+ldt $f29,U2
+ldt $f28,Eight
+divt $f29,$f28,$f29
+addt $f30,$f29,$f30
+stt $f30,SqEr
+ldt $f30,SqEr
+ldt $f29,MinSqEr
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.374
+ldt $f30,SqEr
+stt $f30,MinSqEr
+L.374:
+ldt $f16,F9
+jsr $26,sqrt
+ldgp $gp,0($26)
+ldt $f29,U2
+ldt $f28,U1
+subt $f0,$f29,$f30
+ldt $f27,One
+subt $f27,$f29,$f29
+subt $f30,$f29,$f30
+divt $f30,$f28,$f30
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,Eight
+divt $f28,$f29,$f29
+addt $f30,$f29,$f30
+stt $f30,SqEr
+ldt $f30,SqEr
+ldt $f29,MaxSqEr
+cmptle $f30,$f29,$f1
+fbne $f1,L.376
+ldt $f30,SqEr
+stt $f30,MaxSqEr
+L.376:
+ldt $f30,Y
+ldt $f29,One
+addt $f30,$f29,$f30
+ldt $f29,U1
+ldt $f28,Eight
+divt $f29,$f28,$f29
+addt $f30,$f29,$f30
+stt $f30,SqEr
+ldt $f30,SqEr
+ldt $f29,MinSqEr
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.378
+ldt $f30,SqEr
+stt $f30,MinSqEr
+L.378:
+ldt $f30,U2
+stt $f30,OneUlp
+ldt $f30,OneUlp
+stt $f30,X
+lda $27,1
+stl $27,Indx
+L.380:
+ldt $f30,X
+ldt $f29,U1
+addt $f30,$f29,$f29
+addt $f29,$f30,$f30
+ldt $f29,F9
+addt $f30,$f29,$f16
+jsr $26,sqrt
+ldgp $gp,0($26)
+stt $f0,Y
+ldt $f30,U2
+ldt $f29,X
+ldt $f28,OneUlp
+ldt $f27,Y
+subt $f27,$f30,$f27
+ldt $f26,One
+subt $f26,$f30,$f30
+addt $f30,$f29,$f30
+subt $f27,$f30,$f30
+divt $f30,$f28,$f30
+stt $f30,Y
+ldt $f30,Half
+ldt $f27,U1
+subt $f27,$f29,$f27
+ldt $f26,F9
+addt $f27,$f26,$f27
+mult $f27,$f30,$f27
+mult $f27,$f29,$f27
+mult $f27,$f29,$f29
+divt $f29,$f28,$f29
+stt $f29,Z
+ldt $f29,Y
+addt $f29,$f30,$f30
+ldt $f29,Z
+addt $f30,$f29,$f30
+stt $f30,SqEr
+ldt $f30,SqEr
+ldt $f29,MinSqEr
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.384
+ldt $f30,SqEr
+stt $f30,MinSqEr
+L.384:
+ldt $f30,Y
+ldt $f29,Half
+subt $f30,$f29,$f30
+ldt $f29,Z
+addt $f30,$f29,$f30
+stt $f30,SqEr
+ldt $f30,SqEr
+ldt $f29,MaxSqEr
+cmptle $f30,$f29,$f1
+fbne $f1,L.386
+ldt $f30,SqEr
+stt $f30,MaxSqEr
+L.386:
+ldl $27,Indx
+cmpeq $27,1,$23
+bne $23,L.390
+cmpeq $27,3,$23
+beq $23,L.388
+L.390:
+ldt $f16,X
+jsr $26,Sign
+ldgp $gp,0($26)
+fmov $f0,$f30
+stt $f30,-160+256($sp)
+ldt $f16,OneUlp
+jsr $26,sqrt
+ldgp $gp,0($26)
+ldt $f29,Eight
+ldt $f28,Nine
+mult $f28,$f0,$f30
+divt $f29,$f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,OneUlp
+ldt $f28,-160+256($sp)
+mult $f29,$f28,$f29
+mult $f29,$f0,$f30
+stt $f30,X
+br L.389
+L.388:
+ldt $f30,U1
+stt $f30,OneUlp
+ldt $f30,OneUlp
+negt $f30,$f30
+stt $f30,X
+L.389:
+L.381:
+ldl $27,Indx
+lda $27,1($27)
+stl $27,Indx
+ldl $27,Indx
+cmple $27,3,$23
+bne $23,L.380
+lda $27,85
+stl $27,Milestone
+stl $31,SqRWrng
+stl $31,Anomaly
+stl $31,RSqrt
+ldt $f30,Radix
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbne $f1,L.391
+lda $16,L.393
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Precision
+stt $f30,-160+256($sp)
+fmov $f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+fmov $f0,$f30
+ldt $f16,Radix
+ldt $f29,One
+ldt $f28,-160+256($sp)
+addt $f29,$f28,$f29
+subt $f29,$f30,$f17
+jsr $26,pow
+ldgp $gp,0($26)
+fmov $f0,$f30
+ldt $f29,Half
+addt $f29,$f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+stt $f0,D
+ldt $f30,D
+ldt $f29,Radix
+divt $f30,$f29,$f29
+stt $f29,X
+ldt $f29,A1
+divt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,X
+stt $f30,-168+256($sp)
+fmov $f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,-168+256($sp)
+cmpteq $f29,$f0,$f1
+fbeq $f1,L.396
+ldt $f30,Y
+stt $f30,-176+256($sp)
+fmov $f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,-176+256($sp)
+cmpteq $f29,$f0,$f1
+fbne $f1,L.394
+L.396:
+lda $27,1
+stl $27,Anomaly
+br L.395
+L.394:
+ldt $f30,Zero
+stt $f30,X
+ldt $f30,X
+stt $f30,Z2
+ldt $f30,One
+stt $f30,Y
+ldt $f29,Y
+stt $f29,Y2
+ldt $f29,Radix
+subt $f29,$f30,$f30
+stt $f30,Z1
+ldt $f30,Four
+ldt $f29,D
+mult $f30,$f29,$f30
+stt $f30,FourD
+L.397:
+ldt $f30,Y2
+ldt $f29,Z2
+cmptle $f30,$f29,$f1
+fbne $f1,L.400
+ldt $f30,Radix
+stt $f30,Q
+ldt $f30,Y
+stt $f30,Y1
+L.402:
+ldt $f30,Q
+stt $f30,-184+256($sp)
+ldt $f29,Half
+ldt $f28,Y1
+divt $f30,$f28,$f28
+subt $f29,$f28,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,Y1
+mult $f0,$f29,$f30
+ldt $f29,-184+256($sp)
+addt $f29,$f30,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+stt $f0,X1
+ldt $f30,Y1
+stt $f30,Q
+ldt $f30,X1
+stt $f30,Y1
+L.403:
+ldt $f30,X1
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.402
+ldt $f30,Q
+ldt $f29,One
+cmptle $f30,$f29,$f1
+fbeq $f1,L.405
+ldt $f30,Y2
+stt $f30,Z2
+ldt $f30,Y
+stt $f30,Z
+L.405:
+L.400:
+ldt $f30,Y
+ldt $f29,Two
+addt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,X
+ldt $f29,Eight
+addt $f30,$f29,$f30
+stt $f30,X
+ldt $f30,Y2
+ldt $f29,X
+addt $f30,$f29,$f30
+stt $f30,Y2
+ldt $f30,Y2
+ldt $f29,FourD
+cmptlt $f30,$f29,$f1
+fbne $f1,L.407
+ldt $f30,Y2
+ldt $f29,FourD
+subt $f30,$f29,$f30
+stt $f30,Y2
+L.407:
+L.398:
+ldt $f30,Y
+ldt $f29,D
+cmptlt $f30,$f29,$f1
+fbne $f1,L.397
+ldt $f30,FourD
+ldt $f29,Z2
+subt $f30,$f29,$f29
+stt $f29,X8
+ldt $f29,X8
+ldt $f28,Z
+mult $f28,$f28,$f28
+addt $f29,$f28,$f28
+divt $f28,$f30,$f30
+stt $f30,Q
+ldt $f30,Eight
+divt $f29,$f30,$f30
+stt $f30,X8
+ldt $f30,Q
+stt $f30,-184+256($sp)
+fmov $f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,-184+256($sp)
+cmpteq $f29,$f0,$f1
+fbne $f1,L.409
+lda $27,1
+stl $27,Anomaly
+br L.410
+L.409:
+stl $31,Break
+L.411:
+ldt $f30,Z1
+ldt $f29,Z
+mult $f30,$f29,$f30
+stt $f30,X
+ldt $f30,X
+stt $f30,-192+256($sp)
+ldt $f29,Radix
+divt $f30,$f29,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,Radix
+mult $f0,$f29,$f30
+ldt $f29,-192+256($sp)
+subt $f29,$f30,$f30
+stt $f30,X
+ldt $f30,X
+ldt $f29,One
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.414
+lda $27,1
+stl $27,Break
+br L.415
+L.414:
+ldt $f30,Z1
+ldt $f29,One
+subt $f30,$f29,$f30
+stt $f30,Z1
+L.415:
+L.412:
+ldl $27,Break
+cmpeq $27,$31,$23
+beq $23,L.416
+ldt $f30,Z1
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.411
+L.416:
+ldt $f30,Z1
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.417
+ldl $27,Break
+cmpeq $27,$31,$23
+beq $23,L.417
+lda $27,1
+stl $27,Anomaly
+br L.418
+L.417:
+ldt $f30,Z1
+ldt $f29,RadixD2
+cmptle $f30,$f29,$f1
+fbne $f1,L.419
+ldt $f30,Z1
+ldt $f29,Radix
+subt $f30,$f29,$f30
+stt $f30,Z1
+L.419:
+L.421:
+jsr $26,NewD
+ldgp $gp,0($26)
+L.422:
+ldt $f30,U2
+ldt $f29,D
+mult $f30,$f29,$f30
+ldt $f29,F9
+cmptlt $f30,$f29,$f1
+fbne $f1,L.421
+ldt $f30,D
+ldt $f29,Radix
+mult $f30,$f29,$f29
+subt $f29,$f30,$f29
+ldt $f28,W
+subt $f28,$f30,$f30
+cmpteq $f29,$f30,$f1
+fbne $f1,L.424
+lda $27,1
+stl $27,Anomaly
+br L.425
+L.424:
+ldt $f30,D
+stt $f30,Z2
+stl $31,I
+ldt $f29,Z
+ldt $f28,One
+addt $f28,$f29,$f28
+ldt $f27,Half
+mult $f28,$f27,$f28
+addt $f30,$f28,$f28
+stt $f28,Y
+addt $f30,$f29,$f30
+ldt $f29,Q
+addt $f30,$f29,$f30
+stt $f30,X
+jsr $26,SR3750
+ldgp $gp,0($26)
+ldt $f30,D
+ldt $f29,Z
+ldt $f28,One
+subt $f28,$f29,$f28
+ldt $f27,Half
+mult $f28,$f27,$f28
+addt $f30,$f28,$f28
+addt $f28,$f30,$f28
+stt $f28,Y
+subt $f30,$f29,$f29
+addt $f29,$f30,$f30
+stt $f30,X
+ldt $f30,X
+ldt $f29,Q
+addt $f30,$f29,$f29
+addt $f29,$f30,$f30
+stt $f30,X
+jsr $26,SR3750
+ldgp $gp,0($26)
+jsr $26,NewD
+ldgp $gp,0($26)
+ldt $f30,Z2
+ldt $f29,D
+subt $f29,$f30,$f29
+ldt $f28,W
+subt $f28,$f30,$f30
+cmpteq $f29,$f30,$f1
+fbne $f1,L.426
+lda $27,1
+stl $27,Anomaly
+br L.427
+L.426:
+ldt $f30,Z2
+ldt $f29,D
+subt $f29,$f30,$f29
+ldt $f28,Z
+ldt $f27,One
+subt $f27,$f28,$f27
+ldt $f26,Half
+mult $f27,$f26,$f27
+addt $f30,$f27,$f27
+addt $f29,$f27,$f27
+stt $f27,Y
+subt $f30,$f28,$f30
+ldt $f28,Q
+addt $f30,$f28,$f30
+addt $f29,$f30,$f30
+stt $f30,X
+jsr $26,SR3750
+ldgp $gp,0($26)
+ldt $f30,One
+ldt $f29,Z
+addt $f30,$f29,$f30
+ldt $f29,Half
+mult $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,Q
+stt $f30,X
+jsr $26,SR3750
+ldgp $gp,0($26)
+ldl $27,I
+cmpeq $27,$31,$23
+beq $23,L.428
+lda $27,1
+stl $27,Anomaly
+L.428:
+L.427:
+L.425:
+L.418:
+L.410:
+L.395:
+ldl $25,I
+cmpeq $25,$31,$23
+bne $23,L.432
+ldl $25,Anomaly
+cmpeq $25,$31,$23
+bne $23,L.430
+L.432:
+mov $31,$16
+lda $17,L.433
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.434
+ldt $f17,W
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.435
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,1
+stl $27,SqRWrng
+L.430:
+L.391:
+ldl $27,Anomaly
+cmpeq $27,$31,$23
+beq $23,L.436
+ldt $f30,Zero
+ldt $f29,MinSqEr
+cmptlt $f29,$f30,$f1
+fbne $f1,L.438
+ldt $f29,MaxSqEr
+cmptle $f29,$f30,$f1
+fbeq $f1,L.438
+lda $27,1
+stl $27,RSqrt
+lda $16,L.440
+jsr $26,printf
+ldgp $gp,0($26)
+br L.439
+L.438:
+ldt $f30,U2
+ldt $f29,Half
+ldt $f28,MaxSqEr
+addt $f28,$f30,$f28
+subt $f30,$f29,$f30
+cmptle $f28,$f30,$f1
+fbeq $f1,L.444
+ldt $f30,MinSqEr
+cmptle $f30,$f29,$f1
+fbeq $f1,L.444
+ldt $f28,Radix
+addt $f30,$f28,$f30
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.441
+L.444:
+lda $27,1
+stl $27,SqRWrng
+br L.442
+L.441:
+lda $27,2
+stl $27,RSqrt
+lda $16,L.445
+jsr $26,printf
+ldgp $gp,0($26)
+L.442:
+L.439:
+L.436:
+ldl $27,SqRWrng
+cmpeq $27,$31,$23
+bne $23,L.446
+lda $16,L.448
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.449
+ldt $f30,MinSqEr
+ldt $f29,Half
+subt $f30,$f29,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.450
+ldt $f30,Half
+ldt $f29,MaxSqEr
+addt $f30,$f29,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,1
+ldt $f30,Radix
+ldt $f29,MaxSqEr
+ldt $f28,MinSqEr
+subt $f29,$f28,$f29
+mult $f30,$f30,$f30
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.453
+lda $27,1
+stl $27,-156+256($sp)
+br L.454
+L.453:
+stl $31,-156+256($sp)
+L.454:
+ldl $17,-156+256($sp)
+lda $18,L.452
+jsr $26,TstCond
+ldgp $gp,0($26)
+L.446:
+lda $27,90
+stl $27,Milestone
+jsr $26,Pause
+ldgp $gp,0($26)
+lda $16,L.455
+jsr $26,printf
+ldgp $gp,0($26)
+stl $31,N
+stl $31,I
+ldt $f30,Zero
+negt $f30,$f30
+stt $f30,Z
+lda $25,3
+stl $25,M
+stl $31,Break
+L.456:
+ldt $f30,One
+stt $f30,X
+jsr $26,SR3980
+ldgp $gp,0($26)
+ldl $27,I
+cmple $27,10,$23
+beq $23,L.459
+lda $27,1023
+stl $27,I
+jsr $26,SR3980
+ldgp $gp,0($26)
+L.459:
+ldt $f30,Z
+ldt $f29,MinusOne
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.461
+lda $27,1
+stl $27,Break
+br L.462
+L.461:
+ldt $f30,MinusOne
+stt $f30,Z
+jsr $26,PrintIfNPositive
+ldgp $gp,0($26)
+stl $31,N
+lda $27,-4
+stl $27,I
+L.462:
+L.457:
+ldl $27,Break
+cmpeq $27,$31,$23
+bne $23,L.456
+jsr $26,PrintIfNPositive
+ldgp $gp,0($26)
+ldl $27,N
+stl $27,N1
+stl $31,N
+ldt $f30,A1
+stt $f30,Z
+ldt $f16,W
+jsr $26,log
+ldgp $gp,0($26)
+fmov $f0,$f30
+stt $f30,-160+256($sp)
+ldt $f16,A1
+jsr $26,log
+ldgp $gp,0($26)
+fmov $f0,$f30
+ldt $f29,Two
+ldt $f28,-160+256($sp)
+mult $f29,$f28,$f29
+divt $f29,$f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+cvttqc $f0,$f1
+cvtql $f1,$f1
+sts $f1,-56+256($sp)
+ldl $27,-56+256($sp)
+stl $27,M
+stl $31,Break
+L.463:
+ldt $f30,Z
+stt $f30,X
+lda $27,1
+stl $27,I
+jsr $26,SR3980
+ldgp $gp,0($26)
+ldt $f30,Z
+ldt $f29,AInvrse
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.466
+lda $27,1
+stl $27,Break
+br L.467
+L.466:
+ldt $f30,AInvrse
+stt $f30,Z
+L.467:
+L.464:
+ldl $27,Break
+cmpeq $27,$31,$23
+bne $23,L.463
+lda $27,100
+stl $27,Milestone
+ldl $27,NoTrials
+stl $27,M
+ldt $f30,Three
+stt $f30,Z
+L.468:
+ldt $f30,Z
+stt $f30,X
+lda $27,1
+stl $27,I
+jsr $26,SR3980
+ldgp $gp,0($26)
+L.471:
+ldt $f30,Z
+ldt $f29,Two
+addt $f30,$f29,$f30
+stt $f30,Z
+L.472:
+ldt $f30,Three
+stt $f30,-168+256($sp)
+ldt $f29,Z
+divt $f29,$f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,-168+256($sp)
+mult $f29,$f0,$f30
+ldt $f29,Z
+cmpteq $f30,$f29,$f1
+fbne $f1,L.471
+L.469:
+ldt $f30,Z
+ldt $f29,Eight
+ldt $f28,Three
+mult $f29,$f28,$f29
+cmptlt $f30,$f29,$f1
+fbne $f1,L.468
+ldl $27,N
+cmple $27,$31,$23
+bne $23,L.474
+lda $16,L.476
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.477
+jsr $26,printf
+ldgp $gp,0($26)
+L.474:
+jsr $26,PrintIfNPositive
+ldgp $gp,0($26)
+ldl $27,N
+ldl $25,N1
+addl $27,$25,$27
+stl $27,N
+ldl $27,N
+cmpeq $27,$31,$23
+beq $23,L.478
+lda $16,L.480
+jsr $26,printf
+ldgp $gp,0($26)
+L.478:
+ldl $27,N
+cmple $27,$31,$23
+bne $23,L.481
+jsr $26,Pause
+ldgp $gp,0($26)
+br L.482
+L.481:
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+L.482:
+lda $27,110
+stl $27,Milestone
+lda $16,L.483
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,U1
+stt $f30,D
+ldt $f30,Precision
+stt $f30,-168+256($sp)
+fmov $f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,-168+256($sp)
+cmpteq $f29,$f0,$f1
+fbne $f1,L.484
+ldt $f30,BInvrse
+stt $f30,D
+ldt $f30,Precision
+stt $f30,X
+L.486:
+ldt $f30,D
+ldt $f29,BInvrse
+mult $f30,$f29,$f30
+stt $f30,D
+ldt $f30,X
+ldt $f29,One
+subt $f30,$f29,$f30
+stt $f30,X
+L.487:
+ldt $f30,X
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.486
+L.484:
+ldt $f30,One
+stt $f30,Y
+ldt $f30,D
+stt $f30,Z
+L.489:
+ldt $f30,Y
+stt $f30,C
+ldt $f30,Z
+stt $f30,Y
+ldt $f30,Y
+mult $f30,$f30,$f30
+stt $f30,Z
+L.490:
+ldt $f30,Z
+ldt $f29,Y
+cmptle $f29,$f30,$f1
+fbne $f1,L.492
+addt $f30,$f30,$f29
+cmptle $f29,$f30,$f1
+fbeq $f1,L.489
+L.492:
+ldt $f30,C
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,D
+mult $f30,$f29,$f30
+stt $f30,Z
+L.493:
+ldt $f30,Y
+stt $f30,C
+ldt $f30,Z
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,D
+mult $f30,$f29,$f30
+stt $f30,Z
+L.494:
+ldt $f30,Z
+ldt $f29,Y
+cmptle $f29,$f30,$f1
+fbne $f1,L.496
+addt $f30,$f30,$f29
+cmptle $f29,$f30,$f1
+fbeq $f1,L.493
+L.496:
+ldt $f30,Radix
+ldt $f29,Two
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.497
+ldt $f30,Two
+stt $f30,HInvrse
+br L.498
+L.497:
+ldt $f30,Radix
+stt $f30,HInvrse
+L.498:
+ldt $f30,One
+ldt $f29,HInvrse
+divt $f30,$f29,$f29
+stt $f29,H
+ldt $f29,C
+divt $f30,$f29,$f30
+stt $f30,CInvrse
+stt $f29,E0
+ldt $f30,E0
+ldt $f29,H
+mult $f30,$f29,$f30
+stt $f30,Z
+L.499:
+ldt $f30,E0
+stt $f30,Y
+ldt $f30,Z
+stt $f30,E0
+ldt $f30,E0
+ldt $f29,H
+mult $f30,$f29,$f30
+stt $f30,Z
+L.500:
+ldt $f30,Z
+ldt $f29,E0
+cmptle $f29,$f30,$f1
+fbne $f1,L.502
+addt $f30,$f30,$f29
+cmptle $f29,$f30,$f1
+fbeq $f1,L.499
+L.502:
+ldt $f30,E0
+stt $f30,UfThold
+ldt $f30,Zero
+stt $f30,E1
+stt $f30,Q
+ldt $f30,U2
+stt $f30,E9
+ldt $f30,One
+ldt $f29,E9
+addt $f30,$f29,$f30
+stt $f30,S
+ldt $f30,C
+ldt $f29,S
+mult $f30,$f29,$f29
+stt $f29,D
+ldt $f29,D
+cmptle $f29,$f30,$f1
+fbeq $f1,L.503
+ldt $f30,Radix
+ldt $f29,U2
+mult $f30,$f29,$f30
+stt $f30,E9
+ldt $f30,One
+ldt $f29,E9
+addt $f30,$f29,$f30
+stt $f30,S
+ldt $f30,C
+ldt $f29,S
+mult $f30,$f29,$f29
+stt $f29,D
+ldt $f29,D
+cmptle $f29,$f30,$f1
+fbeq $f1,L.504
+mov $31,$16
+lda $17,L.507
+jsr $26,BadCond
+ldgp $gp,0($26)
+ldt $f30,E0
+stt $f30,Underflow
+ldt $f30,Zero
+stt $f30,Y1
+ldt $f30,Z
+stt $f30,PseudoZero
+jsr $26,Pause
+ldgp $gp,0($26)
+br L.504
+L.503:
+ldt $f30,D
+stt $f30,Underflow
+ldt $f30,Underflow
+ldt $f29,H
+mult $f30,$f29,$f30
+stt $f30,PseudoZero
+ldt $f30,Zero
+stt $f30,UfThold
+L.508:
+ldt $f30,Underflow
+stt $f30,Y1
+ldt $f30,PseudoZero
+stt $f30,Underflow
+ldt $f30,E1
+addt $f30,$f30,$f29
+cmptle $f29,$f30,$f1
+fbeq $f1,L.511
+ldt $f30,Underflow
+ldt $f29,HInvrse
+mult $f30,$f29,$f30
+stt $f30,Y2
+ldt $f30,Y1
+ldt $f29,Y2
+subt $f30,$f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+stt $f0,E1
+ldt $f30,Y1
+stt $f30,Q
+ldt $f30,UfThold
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.513
+ldt $f30,Y1
+ldt $f29,Y2
+cmpteq $f30,$f29,$f1
+fbne $f1,L.513
+ldt $f30,Y1
+stt $f30,UfThold
+L.513:
+L.511:
+ldt $f30,PseudoZero
+ldt $f29,H
+mult $f30,$f29,$f30
+stt $f30,PseudoZero
+L.509:
+ldt $f30,PseudoZero
+ldt $f29,Underflow
+cmptle $f29,$f30,$f1
+fbne $f1,L.515
+addt $f30,$f30,$f29
+cmptle $f29,$f30,$f1
+fbeq $f1,L.508
+L.515:
+L.504:
+ldt $f30,PseudoZero
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.516
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,PseudoZero
+stt $f30,Z
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.518
+mov $31,$16
+lda $17,L.520
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.521
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.522
+ldt $f17,PseudoZero
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,PseudoZero
+negt $f30,$f30
+stt $f30,X
+ldt $f30,X
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.519
+lda $16,L.525
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.526
+ldt $f17,X
+jsr $26,printf
+ldgp $gp,0($26)
+br L.519
+L.518:
+lda $16,3
+lda $17,L.527
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.528
+ldt $f17,PseudoZero
+jsr $26,printf
+ldgp $gp,0($26)
+L.519:
+jsr $26,TstPtUf
+ldgp $gp,0($26)
+L.516:
+lda $27,120
+stl $27,Milestone
+ldt $f30,CInvrse
+ldt $f29,Y
+mult $f30,$f29,$f29
+ldt $f28,Y1
+mult $f30,$f28,$f30
+cmptle $f29,$f30,$f1
+fbne $f1,L.529
+ldt $f30,H
+ldt $f29,S
+mult $f30,$f29,$f30
+stt $f30,S
+ldt $f30,Underflow
+stt $f30,E0
+L.529:
+ldt $f30,E1
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.531
+ldt $f29,E0
+cmpteq $f30,$f29,$f1
+fbne $f1,L.531
+lda $16,2
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+ldt $f30,E1
+ldt $f29,E0
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.533
+lda $16,L.535
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.536
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,PseudoZero
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.534
+ldt $f30,E1
+stt $f30,E0
+br L.534
+L.533:
+lda $16,L.539
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.540
+jsr $26,printf
+ldgp $gp,0($26)
+L.534:
+L.531:
+lda $16,L.541
+ldt $f17,E0
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,E0
+stt $f30,Z
+jsr $26,TstPtUf
+ldgp $gp,0($26)
+ldt $f30,E0
+stt $f30,Underflow
+ldl $27,N
+cmpeq $27,1,$23
+beq $23,L.542
+ldt $f30,Y
+stt $f30,Underflow
+L.542:
+lda $27,4
+stl $27,I
+ldt $f30,E1
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.544
+lda $27,3
+stl $27,I
+L.544:
+ldt $f30,UfThold
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.546
+ldl $27,I
+subl $27,2,$27
+stl $27,I
+L.546:
+lda $27,1
+stl $27,UfNGrad
+ldl $27,I
+cmplt $27,1,$23
+bne $23,L.548
+cmple $27,4,$23
+beq $23,L.548
+subl $27,1,$27
+sll $27,3,$27
+ldq $27,L.571($27)
+jmp ($27)
+.rdata
+.align 3
+L.571:
+.quad L.550
+.quad L.557
+.quad L.562
+.quad L.563
+.text
+L.550:
+ldt $f30,Underflow
+stt $f30,UfThold
+ldt $f30,CInvrse
+ldt $f29,Q
+mult $f30,$f29,$f29
+ldt $f28,Y
+mult $f30,$f28,$f30
+ldt $f28,S
+mult $f30,$f28,$f30
+cmpteq $f29,$f30,$f1
+fbne $f1,L.551
+ldt $f30,Y
+stt $f30,UfThold
+mov $31,$16
+lda $17,L.553
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.554
+ldt $f17,UfThold
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.555
+ldt $f17,C
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.556
+jsr $26,printf
+ldgp $gp,0($26)
+L.551:
+jsr $26,Pause
+ldgp $gp,0($26)
+br L.549
+L.557:
+mov $31,$16
+lda $17,L.558
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.559
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.560
+ldt $f17,Q
+ldt $f18,Y2
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Q
+ldt $f29,Y2
+subt $f30,$f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+fmov $f0,$f30
+lda $16,L.561
+fmov $f30,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Q
+stt $f30,UfThold
+br L.549
+L.562:
+ldt $f30,X
+stt $f30,X
+br L.549
+L.563:
+ldt $f30,UfThold
+ldt $f29,Q
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.564
+ldt $f29,E1
+ldt $f28,E0
+cmpteq $f29,$f28,$f1
+fbeq $f1,L.564
+ldt $f28,E9
+divt $f29,$f28,$f29
+subt $f30,$f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+ldt $f29,E1
+cmptle $f0,$f29,$f1
+fbeq $f1,L.564
+stl $31,UfNGrad
+lda $16,L.566
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.567
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,E0
+ldt $f29,CInvrse
+mult $f30,$f29,$f28
+stt $f28,Y
+ldt $f28,U2
+ldt $f27,Y
+ldt $f26,OneAndHalf
+addt $f26,$f28,$f26
+mult $f27,$f26,$f27
+stt $f27,Y
+ldt $f27,One
+addt $f27,$f28,$f28
+mult $f29,$f28,$f29
+stt $f29,X
+ldt $f29,Y
+ldt $f28,X
+divt $f29,$f28,$f29
+stt $f29,Y
+ldt $f29,Y
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.569
+lda $27,1
+stl $27,-172+256($sp)
+br L.570
+L.569:
+stl $31,-172+256($sp)
+L.570:
+ldl $27,-172+256($sp)
+stl $27,IEEE
+L.564:
+L.548:
+L.549:
+ldl $27,UfNGrad
+cmpeq $27,$31,$23
+bne $23,L.572
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,sigfpe
+stq $27,sigsave
+lda $16,ovfl_buf
+jsr $26,setjmp
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+bne $23,L.574
+lda $16,L.576
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,H
+addt $f30,$f30,$f30
+stt $f30,R
+br L.575
+L.574:
+ldt $f30,Underflow
+ldt $f29,UfThold
+divt $f30,$f29,$f16
+jsr $26,sqrt
+ldgp $gp,0($26)
+stt $f0,R
+L.575:
+stq $31,sigsave
+ldt $f30,R
+ldt $f29,H
+cmptle $f30,$f29,$f1
+fbeq $f1,L.577
+ldt $f30,R
+ldt $f29,UfThold
+mult $f30,$f29,$f29
+stt $f29,Z
+ldt $f29,One
+ldt $f28,H
+ldt $f27,Z
+mult $f30,$f28,$f30
+addt $f29,$f28,$f28
+mult $f30,$f28,$f30
+addt $f29,$f30,$f30
+mult $f27,$f30,$f30
+stt $f30,X
+br L.578
+L.577:
+ldt $f30,UfThold
+stt $f30,Z
+ldt $f30,One
+ldt $f29,H
+ldt $f28,Z
+mult $f29,$f29,$f27
+addt $f30,$f29,$f29
+mult $f27,$f29,$f29
+addt $f30,$f29,$f30
+mult $f28,$f30,$f30
+stt $f30,X
+L.578:
+ldt $f30,X
+ldt $f29,Z
+cmpteq $f30,$f29,$f1
+fbne $f1,L.579
+subt $f30,$f29,$f30
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.579
+lda $16,3
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.581
+ldt $f17,X
+ldt $f18,Z
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,X
+ldt $f29,Z
+subt $f30,$f29,$f30
+stt $f30,Z9
+lda $16,L.582
+ldt $f17,Z9
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.583
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.584
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.585
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.586
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.587
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.588
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,sigfpe
+stq $27,sigsave
+lda $16,ovfl_buf
+jsr $26,setjmp
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+bne $23,L.589
+lda $16,L.591
+jsr $26,printf
+ldgp $gp,0($26)
+br L.590
+L.589:
+lda $16,L.592
+ldt $f30,Half
+ldt $f29,X
+ldt $f28,Z
+divt $f29,$f28,$f29
+subt $f29,$f30,$f29
+subt $f29,$f30,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+L.590:
+stq $31,sigsave
+L.579:
+L.572:
+lda $16,L.593
+ldt $f17,UfThold
+lda $18,L.594
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.595
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.596
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,U1
+mult $f30,$f30,$f29
+stt $f29,Y2
+ldt $f29,Y2
+mult $f29,$f29,$f29
+stt $f29,Y
+ldt $f29,Y
+mult $f29,$f30,$f30
+stt $f30,Y2
+ldt $f30,Y2
+ldt $f29,UfThold
+cmptle $f30,$f29,$f1
+fbeq $f1,L.597
+ldt $f30,Y
+ldt $f29,E0
+cmptle $f30,$f29,$f1
+fbne $f1,L.599
+lda $16,2
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $27,5
+stl $27,I
+br L.600
+L.599:
+lda $16,1
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $27,4
+stl $27,I
+L.600:
+lda $16,L.601
+ldl $17,I
+jsr $26,printf
+ldgp $gp,0($26)
+L.597:
+lda $27,130
+stl $27,Milestone
+ldt $f16,UfThold
+jsr $26,log
+ldgp $gp,0($26)
+fmov $f0,$f30
+stt $f30,-176+256($sp)
+ldt $f16,HInvrse
+jsr $26,log
+ldgp $gp,0($26)
+ldt $f29,Half
+ldt $f28,TwoForty
+ldt $f27,-176+256($sp)
+mult $f28,$f27,$f28
+divt $f28,$f0,$f30
+subt $f29,$f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+negt $f0,$f30
+ldt $f29,TwoForty
+divt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,Y
+addt $f30,$f30,$f30
+stt $f30,Y2
+lda $16,L.602
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.603
+ldt $f17,HInvrse
+ldt $f18,Y
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.604
+ldt $f17,HInvrse
+ldt $f18,Y
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f16,HInvrse
+ldt $f17,Y2
+jsr $26,pow
+ldgp $gp,0($26)
+stt $f0,V9
+lda $16,L.605
+ldt $f17,V9
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,V9
+ldt $f29,Zero
+cmptlt $f30,$f29,$f1
+fbne $f1,L.608
+ldt $f29,Radix
+addt $f29,$f29,$f29
+ldt $f28,E9
+addt $f29,$f28,$f29
+ldt $f28,UfThold
+mult $f29,$f28,$f29
+cmptle $f30,$f29,$f1
+fbne $f1,L.606
+L.608:
+lda $16,1
+lda $17,L.609
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.610
+ldt $f17,UfThold
+jsr $26,printf
+ldgp $gp,0($26)
+br L.607
+L.606:
+ldt $f30,V9
+ldt $f29,UfThold
+ldt $f28,One
+ldt $f27,E9
+addt $f28,$f27,$f28
+mult $f29,$f28,$f29
+cmptle $f30,$f29,$f1
+fbeq $f1,L.611
+lda $16,L.613
+jsr $26,printf
+ldgp $gp,0($26)
+br L.612
+L.611:
+lda $16,2
+lda $17,L.609
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.610
+ldt $f17,UfThold
+jsr $26,printf
+ldgp $gp,0($26)
+L.612:
+L.607:
+lda $27,140
+stl $27,Milestone
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Zero
+stt $f30,X
+lda $27,2
+stl $27,I
+ldt $f29,Two
+ldt $f28,Three
+mult $f29,$f28,$f29
+stt $f29,Y
+stt $f30,Q
+stl $31,N
+L.614:
+ldt $f30,X
+stt $f30,Z
+ldl $27,I
+lda $27,1($27)
+stl $27,I
+ldl $27,I
+ldt $f30,Y
+addl $27,$27,$27
+stq $27,-56+256($sp)
+ldt $f29,-56+256($sp)
+cvtqt $f29,$f29
+divt $f30,$f29,$f30
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,Q
+addt $f30,$f29,$f30
+stt $f30,R
+ldt $f30,Z
+ldt $f29,R
+addt $f30,$f29,$f28
+stt $f28,X
+ldt $f28,X
+subt $f30,$f28,$f30
+addt $f30,$f29,$f30
+stt $f30,Q
+L.615:
+ldt $f30,X
+ldt $f29,Z
+cmptle $f30,$f29,$f1
+fbeq $f1,L.614
+ldt $f30,OneAndHalf
+ldt $f29,One
+ldt $f28,Eight
+divt $f29,$f28,$f29
+addt $f30,$f29,$f29
+ldt $f28,X
+ldt $f27,ThirtyTwo
+mult $f30,$f27,$f30
+divt $f28,$f30,$f30
+addt $f29,$f30,$f30
+stt $f30,Z
+ldt $f30,Z
+mult $f30,$f30,$f30
+stt $f30,X
+ldt $f30,X
+mult $f30,$f30,$f30
+stt $f30,Exp2
+ldt $f30,F9
+stt $f30,X
+ldt $f30,X
+ldt $f29,U1
+subt $f30,$f29,$f30
+stt $f30,Y
+lda $16,L.617
+ldt $f17,Exp2
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,1
+stl $27,I
+L.618:
+ldt $f30,X
+ldt $f29,BInvrse
+subt $f30,$f29,$f28
+stt $f28,Z
+ldt $f28,One
+addt $f30,$f28,$f27
+ldt $f26,Z
+subt $f28,$f29,$f29
+subt $f26,$f29,$f29
+divt $f27,$f29,$f29
+stt $f29,Z
+fmov $f30,$f16
+ldt $f17,Z
+jsr $26,pow
+ldgp $gp,0($26)
+ldt $f29,Exp2
+subt $f0,$f29,$f30
+stt $f30,Q
+ldt $f16,Q
+jsr $26,fabs
+ldgp $gp,0($26)
+ldt $f29,TwoForty
+ldt $f28,U2
+mult $f29,$f28,$f29
+cmptle $f0,$f29,$f1
+fbne $f1,L.622
+lda $27,1
+stl $27,N
+ldt $f30,BInvrse
+ldt $f29,X
+subt $f29,$f30,$f29
+ldt $f28,One
+subt $f28,$f30,$f30
+subt $f29,$f30,$f30
+stt $f30,V9
+lda $16,2
+lda $17,L.624
+jsr $26,BadCond
+ldgp $gp,0($26)
+ldt $f16,X
+ldt $f17,Z
+jsr $26,pow
+ldgp $gp,0($26)
+fmov $f0,$f30
+lda $16,L.625
+fmov $f30,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.626
+ldt $f17,V9
+ldt $f18,Z
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.627
+ldt $f17,Q
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.628
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.629
+jsr $26,printf
+ldgp $gp,0($26)
+br L.620
+L.622:
+ldt $f30,Y
+ldt $f29,X
+subt $f30,$f29,$f29
+ldt $f28,Two
+mult $f29,$f28,$f29
+addt $f29,$f30,$f29
+stt $f29,Z
+stt $f30,X
+ldt $f30,Z
+stt $f30,Y
+ldt $f30,X
+ldt $f29,F9
+subt $f30,$f29,$f30
+ldt $f29,One
+mult $f30,$f30,$f30
+addt $f29,$f30,$f30
+stt $f30,Z
+ldt $f30,Z
+ldt $f29,One
+cmptle $f30,$f29,$f1
+fbne $f1,L.630
+ldl $27,I
+ldl $25,NoTrials
+cmplt $27,$25,$23
+beq $23,L.630
+ldl $27,I
+lda $27,1($27)
+stl $27,I
+br L.618
+L.630:
+ldt $f30,X
+ldt $f29,One
+cmptle $f30,$f29,$f1
+fbne $f1,L.632
+ldl $27,N
+cmpeq $27,$31,$23
+beq $23,L.620
+lda $16,L.636
+jsr $26,printf
+ldgp $gp,0($26)
+br L.620
+L.632:
+ldt $f30,U2
+ldt $f29,One
+addt $f29,$f30,$f29
+stt $f29,X
+addt $f30,$f30,$f30
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,X
+addt $f30,$f29,$f30
+stt $f30,Y
+lda $27,1
+stl $27,I
+br L.618
+L.620:
+lda $27,150
+stl $27,Milestone
+lda $16,L.637
+jsr $26,printf
+ldgp $gp,0($26)
+stl $31,N
+ldt $f30,A1
+stt $f30,Z
+ldt $f16,C
+jsr $26,log
+ldgp $gp,0($26)
+fmov $f0,$f30
+stt $f30,-184+256($sp)
+ldt $f16,A1
+jsr $26,log
+ldgp $gp,0($26)
+ldt $f29,Half
+ldt $f28,-184+256($sp)
+divt $f28,$f0,$f30
+subt $f29,$f30,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+stt $f0,Q
+stl $31,Break
+L.638:
+ldt $f30,CInvrse
+stt $f30,X
+ldt $f16,Z
+ldt $f17,Q
+jsr $26,pow
+ldgp $gp,0($26)
+stt $f0,Y
+jsr $26,IsYeqX
+ldgp $gp,0($26)
+ldt $f30,Q
+negt $f30,$f30
+stt $f30,Q
+ldt $f30,C
+stt $f30,X
+ldt $f16,Z
+ldt $f17,Q
+jsr $26,pow
+ldgp $gp,0($26)
+stt $f0,Y
+jsr $26,IsYeqX
+ldgp $gp,0($26)
+ldt $f30,Z
+ldt $f29,One
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.641
+lda $27,1
+stl $27,Break
+br L.642
+L.641:
+ldt $f30,AInvrse
+stt $f30,Z
+L.642:
+L.639:
+ldl $27,Break
+cmpeq $27,$31,$23
+bne $23,L.638
+jsr $26,PrintIfNPositive
+ldgp $gp,0($26)
+ldl $27,N
+cmpeq $27,$31,$23
+beq $23,L.643
+lda $16,L.645
+jsr $26,printf
+ldgp $gp,0($26)
+L.643:
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,160
+stl $27,Milestone
+jsr $26,Pause
+ldgp $gp,0($26)
+lda $16,L.646
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.647
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,CInvrse
+negt $f30,$f30
+stt $f30,Y
+ldt $f30,HInvrse
+ldt $f29,Y
+mult $f30,$f29,$f30
+stt $f30,V9
+lda $27,sigfpe
+stq $27,sigsave
+lda $16,ovfl_buf
+jsr $26,setjmp
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+bne $23,L.648
+stl $31,I
+ldt $f30,Y
+stt $f30,V9
+br L.650
+L.648:
+L.651:
+ldt $f30,Y
+stt $f30,V
+ldt $f30,V9
+stt $f30,Y
+ldt $f30,HInvrse
+ldt $f29,Y
+mult $f30,$f29,$f30
+stt $f30,V9
+L.652:
+ldt $f30,V9
+ldt $f29,Y
+cmptlt $f30,$f29,$f1
+fbne $f1,L.651
+lda $27,1
+stl $27,I
+L.650:
+stq $31,sigsave
+ldt $f30,V9
+stt $f30,Z
+lda $16,L.654
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.655
+ldt $f17,Y
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Y
+negt $f30,$f29
+stt $f29,V9
+ldt $f29,V9
+stt $f29,V0
+ldt $f29,V
+subt $f29,$f30,$f30
+ldt $f28,V0
+addt $f29,$f28,$f29
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.656
+lda $16,L.658
+jsr $26,printf
+ldgp $gp,0($26)
+br L.657
+L.656:
+lda $16,L.659
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,3
+lda $17,L.660
+jsr $26,BadCond
+ldgp $gp,0($26)
+L.657:
+ldt $f30,Z
+ldt $f29,Y
+cmpteq $f30,$f29,$f1
+fbne $f1,L.661
+lda $16,1
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.663
+ldt $f17,Y
+ldt $f18,Z
+jsr $26,printf
+ldgp $gp,0($26)
+L.661:
+ldl $27,I
+cmpeq $27,$31,$23
+bne $23,L.664
+ldt $f30,V
+ldt $f29,HInvrse
+ldt $f28,U2
+mult $f29,$f28,$f27
+subt $f27,$f29,$f27
+mult $f30,$f27,$f27
+stt $f27,Y
+ldt $f27,Y
+ldt $f26,One
+subt $f26,$f29,$f29
+mult $f29,$f28,$f29
+mult $f29,$f30,$f30
+addt $f27,$f30,$f30
+stt $f30,Z
+ldt $f30,Z
+ldt $f29,V0
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.666
+ldt $f30,Z
+stt $f30,Y
+L.666:
+ldt $f30,Y
+ldt $f29,V0
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.668
+ldt $f30,Y
+stt $f30,V
+L.668:
+ldt $f30,V0
+ldt $f29,V
+subt $f30,$f29,$f29
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.665
+ldt $f30,V0
+stt $f30,V
+br L.665
+L.664:
+ldt $f30,Y
+ldt $f29,HInvrse
+ldt $f28,U2
+mult $f29,$f28,$f27
+subt $f27,$f29,$f27
+mult $f30,$f27,$f27
+stt $f27,V
+ldt $f27,V
+ldt $f26,One
+subt $f26,$f29,$f29
+mult $f29,$f28,$f29
+mult $f29,$f30,$f30
+addt $f27,$f30,$f30
+stt $f30,V
+L.665:
+lda $16,L.672
+ldt $f17,V
+jsr $26,printf
+ldgp $gp,0($26)
+ldl $27,I
+cmpeq $27,$31,$23
+bne $23,L.673
+lda $16,L.675
+ldt $f17,V0
+jsr $26,printf
+ldgp $gp,0($26)
+br L.674
+L.673:
+lda $16,L.676
+jsr $26,printf
+ldgp $gp,0($26)
+L.674:
+ldt $f30,V
+ldt $f29,One
+mult $f30,$f29,$f30
+stt $f30,V9
+lda $16,L.677
+ldt $f17,V9
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,V
+ldt $f29,One
+divt $f30,$f29,$f30
+stt $f30,V9
+lda $16,L.678
+ldt $f17,V9
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.679
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.680
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,170
+stl $27,Milestone
+ldt $f30,V
+negt $f30,$f29
+cmptlt $f29,$f30,$f1
+fbeq $f1,L.685
+ldt $f29,V0
+negt $f29,$f28
+cmptlt $f28,$f29,$f1
+fbeq $f1,L.685
+ldt $f29,UfThold
+negt $f29,$f28
+cmptlt $f28,$f30,$f1
+fbeq $f1,L.685
+cmptlt $f29,$f30,$f1
+fbne $f1,L.681
+L.685:
+mov $31,$16
+lda $17,L.686
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.687
+ldt $f17,V
+ldt $f18,V0
+ldt $f19,UfThold
+jsr $26,printf
+ldgp $gp,0($26)
+L.681:
+lda $27,175
+stl $27,Milestone
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,1
+stl $27,Indx
+L.688:
+ldl $27,Indx
+cmpeq $27,1,$23
+bne $23,L.694
+cmpeq $27,2,$23
+bne $23,L.695
+cmpeq $27,3,$23
+bne $23,L.696
+br L.692
+L.694:
+ldt $f30,UfThold
+stt $f30,Z
+br L.693
+L.695:
+ldt $f30,E0
+stt $f30,Z
+br L.693
+L.696:
+ldt $f30,PseudoZero
+stt $f30,Z
+L.692:
+L.693:
+ldt $f30,Z
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.697
+ldt $f16,Z
+jsr $26,sqrt
+ldgp $gp,0($26)
+stt $f0,V9
+ldt $f30,V9
+mult $f30,$f30,$f30
+stt $f30,Y
+ldt $f30,Y
+ldt $f29,One
+ldt $f28,Radix
+ldt $f27,E9
+mult $f28,$f27,$f28
+ldt $f27,Z
+subt $f29,$f28,$f26
+divt $f30,$f26,$f26
+cmptlt $f26,$f27,$f1
+fbne $f1,L.701
+addt $f29,$f28,$f29
+mult $f29,$f27,$f29
+cmptle $f30,$f29,$f1
+fbne $f1,L.699
+L.701:
+ldt $f30,V9
+ldt $f29,U1
+cmptle $f30,$f29,$f1
+fbne $f1,L.702
+lda $16,1
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+br L.703
+L.702:
+lda $16,2
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+L.703:
+lda $16,L.704
+ldt $f17,Z
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.705
+ldt $f17,Y
+jsr $26,printf
+ldgp $gp,0($26)
+L.699:
+L.697:
+L.689:
+ldl $27,Indx
+lda $27,1($27)
+stl $27,Indx
+ldl $27,Indx
+cmple $27,3,$23
+bne $23,L.688
+lda $27,180
+stl $27,Milestone
+lda $27,1
+stl $27,Indx
+L.706:
+ldl $27,Indx
+cmpeq $27,1,$23
+beq $23,L.710
+ldt $f30,V
+stt $f30,Z
+br L.711
+L.710:
+ldt $f30,V0
+stt $f30,Z
+L.711:
+ldt $f16,Z
+jsr $26,sqrt
+ldgp $gp,0($26)
+stt $f0,V9
+ldt $f30,V9
+ldt $f29,One
+ldt $f28,Radix
+ldt $f27,E9
+mult $f28,$f27,$f28
+subt $f29,$f28,$f29
+mult $f29,$f30,$f29
+stt $f29,X
+ldt $f29,X
+mult $f30,$f29,$f30
+stt $f30,V9
+ldt $f30,V9
+ldt $f29,Z
+ldt $f28,One
+ldt $f27,Two
+ldt $f26,Radix
+mult $f27,$f26,$f27
+ldt $f26,E9
+mult $f27,$f26,$f27
+subt $f28,$f27,$f28
+mult $f28,$f29,$f28
+cmptlt $f30,$f28,$f1
+fbne $f1,L.714
+cmptle $f30,$f29,$f1
+fbne $f1,L.712
+L.714:
+ldt $f30,V9
+stt $f30,Y
+ldt $f30,X
+ldt $f29,W
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.715
+lda $16,1
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+br L.716
+L.715:
+lda $16,2
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+L.716:
+lda $16,L.717
+ldt $f17,Z
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.718
+ldt $f17,Y
+jsr $26,printf
+ldgp $gp,0($26)
+L.712:
+L.707:
+ldl $27,Indx
+lda $27,1($27)
+stl $27,Indx
+ldl $27,Indx
+cmple $27,2,$23
+bne $23,L.706
+lda $27,190
+stl $27,Milestone
+jsr $26,Pause
+ldgp $gp,0($26)
+ldt $f30,UfThold
+ldt $f29,V
+mult $f30,$f29,$f30
+stt $f30,X
+ldt $f30,Radix
+mult $f30,$f30,$f30
+stt $f30,Y
+ldt $f30,X
+ldt $f29,Y
+mult $f30,$f29,$f28
+ldt $f27,One
+cmptlt $f28,$f27,$f1
+fbne $f1,L.721
+cmptle $f30,$f29,$f1
+fbne $f1,L.719
+L.721:
+ldt $f30,X
+ldt $f29,Y
+ldt $f28,U1
+mult $f30,$f29,$f27
+cmptlt $f27,$f28,$f1
+fbne $f1,L.724
+divt $f29,$f28,$f29
+cmptle $f30,$f29,$f1
+fbne $f1,L.722
+L.724:
+lda $16,2
+lda $17,L.725
+jsr $26,BadCond
+ldgp $gp,0($26)
+br L.723
+L.722:
+lda $16,3
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+L.723:
+lda $16,L.726
+ldt $f17,X
+lda $18,L.727
+jsr $26,printf
+ldgp $gp,0($26)
+L.719:
+lda $27,200
+stl $27,Milestone
+lda $27,1
+stl $27,Indx
+L.728:
+ldt $f30,F9
+stt $f30,X
+ldl $27,Indx
+cmplt $27,2,$23
+bne $23,L.732
+cmple $27,5,$23
+beq $23,L.732
+subl $27,2,$27
+sll $27,3,$27
+ldq $27,L.738($27)
+jmp ($27)
+.rdata
+.align 3
+L.738:
+.quad L.734
+.quad L.735
+.quad L.736
+.quad L.737
+.text
+L.734:
+ldt $f30,One
+ldt $f29,U2
+addt $f30,$f29,$f30
+stt $f30,X
+br L.733
+L.735:
+ldt $f30,V
+stt $f30,X
+br L.733
+L.736:
+ldt $f30,UfThold
+stt $f30,X
+br L.733
+L.737:
+ldt $f30,Radix
+stt $f30,X
+L.732:
+L.733:
+ldt $f30,X
+stt $f30,Y
+lda $27,sigfpe
+stq $27,sigsave
+lda $16,ovfl_buf
+jsr $26,setjmp
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+bne $23,L.739
+lda $16,L.741
+ldt $f17,X
+jsr $26,printf
+ldgp $gp,0($26)
+br L.740
+L.739:
+ldt $f30,Half
+ldt $f29,Y
+ldt $f28,X
+divt $f29,$f28,$f29
+subt $f29,$f30,$f29
+subt $f29,$f30,$f30
+stt $f30,V9
+ldt $f30,V9
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.742
+br L.729
+L.742:
+ldt $f30,V9
+ldt $f29,U1
+negt $f29,$f29
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.744
+ldl $27,Indx
+cmplt $27,5,$23
+beq $23,L.744
+lda $16,3
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+br L.745
+L.744:
+lda $16,1
+lda $17,L.158
+jsr $26,BadCond
+ldgp $gp,0($26)
+L.745:
+lda $16,L.746
+ldt $f17,X
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.747
+ldt $f17,V9
+jsr $26,printf
+ldgp $gp,0($26)
+L.740:
+stq $31,sigsave
+L.729:
+ldl $27,Indx
+lda $27,1($27)
+stl $27,Indx
+ldl $27,Indx
+cmple $27,5,$23
+bne $23,L.728
+lda $27,210
+stl $27,Milestone
+ldt $f30,Zero
+stt $f30,MyZero
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.748
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,sigfpe
+stq $27,sigsave
+lda $16,L.749
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,ovfl_buf
+jsr $26,setjmp
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+beq $23,L.750
+lda $16,L.752
+ldt $f30,One
+ldt $f29,MyZero
+divt $f30,$f29,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+L.750:
+stq $31,sigsave
+lda $27,sigfpe
+stq $27,sigsave
+lda $16,L.753
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,ovfl_buf
+jsr $26,setjmp
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+beq $23,L.754
+lda $16,L.752
+ldt $f30,Zero
+ldt $f29,MyZero
+divt $f30,$f29,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+L.754:
+stq $31,sigsave
+lda $27,220
+stl $27,Milestone
+jsr $26,Pause
+ldgp $gp,0($26)
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+stl $31,-188+256($sp)
+L.761:
+ldl $27,-188+256($sp)
+sll $27,2,$27
+ldl $27,ErrCnt($27)
+cmpeq $27,$31,$23
+bne $23,L.765
+lda $16,L.767
+ldl $27,-188+256($sp)
+sll $27,3,$25
+ldq $17,L.756($25)
+sll $27,2,$27
+ldl $18,ErrCnt($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.765:
+L.762:
+ldl $27,-188+256($sp)
+lda $27,1($27)
+stl $27,-188+256($sp)
+ldl $27,-188+256($sp)
+cmplt $27,4,$23
+bne $23,L.761
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+ldl $27,ErrCnt
+ldl $25,ErrCnt+4
+addl $27,$25,$27
+ldl $25,ErrCnt+8
+addl $27,$25,$27
+ldl $25,ErrCnt+12
+addl $27,$25,$27
+cmple $27,$31,$23
+bne $23,L.768
+ldl $25,ErrCnt
+ldl $22,ErrCnt+4
+addl $25,$22,$25
+ldl $22,ErrCnt+8
+addl $25,$22,$25
+cmpeq $25,$31,$23
+beq $23,L.773
+ldl $25,ErrCnt+12
+cmple $25,$31,$23
+bne $23,L.773
+lda $16,L.778
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.779
+jsr $26,printf
+ldgp $gp,0($26)
+L.773:
+ldl $25,ErrCnt
+ldl $22,ErrCnt+4
+addl $25,$22,$25
+cmpeq $25,$31,$23
+beq $23,L.780
+ldl $25,ErrCnt+8
+cmple $25,$31,$23
+bne $23,L.780
+lda $16,L.784
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.785
+jsr $26,printf
+ldgp $gp,0($26)
+L.780:
+ldl $27,ErrCnt
+ldl $25,ErrCnt+4
+addl $27,$25,$27
+cmple $27,$31,$23
+bne $23,L.786
+lda $16,L.789
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.790
+jsr $26,printf
+ldgp $gp,0($26)
+L.786:
+ldl $27,ErrCnt
+cmple $27,$31,$23
+bne $23,L.769
+lda $16,L.793
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.794
+jsr $26,printf
+ldgp $gp,0($26)
+br L.769
+L.768:
+lda $16,L.795
+jsr $26,printf
+ldgp $gp,0($26)
+ldl $27,RMult
+cmpeq $27,1,$23
+beq $23,L.800
+ldl $27,RDiv
+cmpeq $27,1,$23
+beq $23,L.800
+ldl $27,RAddSub
+cmpeq $27,1,$23
+beq $23,L.800
+ldl $27,RSqrt
+cmpeq $27,1,$23
+bne $23,L.796
+L.800:
+lda $16,L.801
+jsr $26,printf
+ldgp $gp,0($26)
+br L.797
+L.796:
+ldt $f30,One
+ldt $f29,StickyBit
+cmptlt $f29,$f30,$f1
+fbne $f1,L.802
+ldt $f29,Radix
+ldt $f28,Two
+subt $f29,$f28,$f28
+ldt $f27,Nine
+subt $f29,$f27,$f29
+subt $f29,$f30,$f30
+mult $f28,$f30,$f30
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.802
+lda $16,L.804
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.805
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Two
+ldt $f29,Radix
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.806
+ldt $f29,Precision
+ldt $f28,TwentySeven
+ldt $f27,Four
+ldt $f26,Three
+mult $f27,$f26,$f27
+mult $f27,$f30,$f30
+subt $f29,$f30,$f30
+subt $f29,$f28,$f29
+subt $f29,$f28,$f29
+ldt $f28,One
+addt $f29,$f28,$f29
+mult $f30,$f29,$f30
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.806
+lda $16,L.808
+jsr $26,printf
+ldgp $gp,0($26)
+br L.807
+L.806:
+lda $16,L.809
+jsr $26,printf
+ldgp $gp,0($26)
+L.807:
+ldl $27,IEEE
+cmpeq $27,$31,$23
+bne $23,L.810
+lda $16,L.812
+jsr $26,printf
+ldgp $gp,0($26)
+br L.811
+L.810:
+lda $16,L.813
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.814
+jsr $26,printf
+ldgp $gp,0($26)
+L.811:
+L.802:
+lda $16,L.815
+jsr $26,printf
+ldgp $gp,0($26)
+L.797:
+L.769:
+ldl $27,fpecount
+cmpeq $27,$31,$23
+bne $23,L.816
+lda $16,L.818
+ldl $17,fpecount
+jsr $26,printf
+ldgp $gp,0($26)
+L.816:
+lda $16,L.819
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.7:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $26,48($sp)
+lda $sp,256($sp)
+ret
+.end main
+.globl Sign
+.text
+.ent Sign
+Sign:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.fmask 0x200,-80
+.mask 0x4000000,-72
+.frame $sp,80,$26,48
+stt $f9,0($sp)
+stq $26,8($sp)
+.prologue 1
+ldt $f30,L.8
+cmptlt $f16,$f30,$f1
+fbne $f1,L.822
+ldt $f9,L.9
+br L.823
+L.822:
+ldt $f9,L.824
+L.823:
+fmov $f9,$f0
+L.820:
+ldt $f9,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end Sign
+.globl Pause
+.text
+.ent Pause
+Pause:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+lda $16,L.826
+ldl $17,Milestone
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.827
+ldl $17,PageNo
+jsr $26,printf
+ldgp $gp,0($26)
+ldl $27,Milestone
+lda $27,1($27)
+stl $27,Milestone
+ldl $27,PageNo
+lda $27,1($27)
+stl $27,PageNo
+mov $31,$0
+L.825:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end Pause
+.globl TstCond
+.text
+.ent TstCond
+TstCond:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+stq $17,24($sp)
+stq $18,32($sp)
+.prologue 1
+ldl $27,-40+64($sp)
+cmpeq $27,$31,$23
+beq $23,L.829
+ldl $16,-48+64($sp)
+ldq $17,-32+64($sp)
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.812
+jsr $26,printf
+ldgp $gp,0($26)
+L.829:
+mov $31,$0
+L.828:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end TstCond
+.sdata
+.align 3
+L.832:
+.quad L.833
+.quad L.834
+.quad L.835
+.quad L.836
+.globl BadCond
+.text
+.text
+.ent BadCond
+BadCond:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+mov $16,$14
+stq $17,40($sp)
+.prologue 1
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+lda $27,ErrCnt($27)
+ldl $25,($27)
+lda $25,1($25)
+stl $25,($27)
+lda $16,L.837
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+ldq $17,L.832($27)
+ldq $18,-40+80($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.831:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end BadCond
+.globl Random
+.text
+.ent Random
+Random:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.fmask 0x300,-72
+.mask 0x4000000,-64
+.frame $sp,80,$26,48
+stt $f8,0($sp)
+stt $f9,8($sp)
+stq $26,16($sp)
+.prologue 1
+ldt $f30,Random1
+ldt $f29,Random9
+addt $f30,$f29,$f9
+mult $f9,$f9,$f8
+mult $f8,$f8,$f8
+mult $f9,$f8,$f9
+fmov $f9,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+subt $f9,$f0,$f8
+ldt $f30,L.839
+mult $f30,$f9,$f30
+addt $f8,$f30,$f30
+stt $f30,Random1
+ldt $f0,Random1
+L.838:
+ldt $f8,0($sp)
+ldt $f9,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end Random
+.globl SqXMinX
+.text
+.ent SqXMinX
+SqXMinX:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.fmask 0x200,-80
+.mask 0x4000000,-72
+.frame $sp,80,$26,48
+stt $f9,0($sp)
+stq $26,8($sp)
+stq $16,32($sp)
+.prologue 1
+ldt $f30,X
+ldt $f29,BInvrse
+mult $f30,$f29,$f9
+subt $f30,$f9,$f29
+stt $f29,-64+80($sp)
+mult $f30,$f30,$f16
+jsr $26,sqrt
+ldgp $gp,0($26)
+subt $f0,$f9,$f30
+ldt $f29,-64+80($sp)
+subt $f30,$f29,$f30
+ldt $f29,OneUlp
+divt $f30,$f29,$f30
+stt $f30,SqEr
+ldt $f30,SqEr
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.841
+ldt $f30,SqEr
+ldt $f29,MinSqEr
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.843
+ldt $f30,SqEr
+stt $f30,MinSqEr
+L.843:
+ldt $f30,SqEr
+ldt $f29,MaxSqEr
+cmptle $f30,$f29,$f1
+fbne $f1,L.845
+ldt $f30,SqEr
+stt $f30,MaxSqEr
+L.845:
+ldt $f30,J
+ldt $f29,L.9
+addt $f30,$f29,$f30
+stt $f30,J
+ldl $16,-48+80($sp)
+lda $17,L.45
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.847
+ldt $f30,X
+mult $f30,$f30,$f17
+fmov $f30,$f18
+ldt $f30,OneUlp
+ldt $f29,SqEr
+mult $f30,$f29,$f19
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.848
+jsr $26,printf
+ldgp $gp,0($26)
+L.841:
+mov $31,$0
+L.840:
+ldt $f9,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end SqXMinX
+.globl NewD
+.text
+.ent NewD
+NewD:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+ldt $f30,Z1
+ldt $f29,Q
+mult $f30,$f29,$f30
+stt $f30,X
+ldt $f30,Half
+ldt $f29,X
+ldt $f28,Radix
+divt $f29,$f28,$f29
+subt $f30,$f29,$f16
+jsr $26,floor
+ldgp $gp,0($26)
+ldt $f29,Radix
+mult $f0,$f29,$f30
+ldt $f28,X
+addt $f30,$f28,$f30
+stt $f30,X
+ldt $f30,X
+ldt $f28,Z
+ldt $f27,D
+ldt $f26,Q
+mult $f30,$f28,$f25
+subt $f26,$f25,$f26
+divt $f26,$f29,$f26
+mult $f30,$f30,$f25
+divt $f27,$f29,$f29
+mult $f25,$f29,$f29
+addt $f26,$f29,$f29
+stt $f29,Q
+ldt $f29,Two
+mult $f29,$f30,$f30
+mult $f30,$f27,$f30
+subt $f28,$f30,$f30
+stt $f30,Z
+ldt $f30,Z
+ldt $f29,Zero
+cmptle $f30,$f29,$f1
+fbeq $f1,L.850
+ldt $f30,Z
+negt $f30,$f30
+stt $f30,Z
+ldt $f30,Z1
+negt $f30,$f30
+stt $f30,Z1
+L.850:
+ldt $f30,Radix
+ldt $f29,D
+mult $f30,$f29,$f30
+stt $f30,D
+mov $31,$0
+L.849:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end NewD
+.globl SR3750
+.text
+.ent SR3750
+SR3750:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+ldt $f30,X
+ldt $f29,Radix
+ldt $f28,Z2
+subt $f30,$f29,$f27
+subt $f28,$f29,$f29
+cmptlt $f27,$f29,$f1
+fbne $f1,L.853
+subt $f30,$f28,$f30
+ldt $f29,W
+subt $f29,$f28,$f29
+cmptle $f30,$f29,$f1
+fbeq $f1,L.853
+ldl $27,I
+lda $27,1($27)
+stl $27,I
+ldt $f30,X
+ldt $f29,D
+mult $f30,$f29,$f16
+jsr $26,sqrt
+ldgp $gp,0($26)
+stt $f0,X2
+ldt $f30,Z2
+ldt $f29,Y
+ldt $f28,X2
+subt $f28,$f30,$f28
+subt $f29,$f30,$f30
+subt $f28,$f30,$f30
+stt $f30,Y2
+ldt $f30,Half
+ldt $f28,X8
+subt $f29,$f30,$f29
+divt $f28,$f29,$f29
+stt $f29,X2
+ldt $f29,X2
+mult $f30,$f29,$f28
+mult $f28,$f29,$f28
+subt $f29,$f28,$f29
+stt $f29,X2
+ldt $f29,Y2
+addt $f29,$f30,$f29
+ldt $f28,X2
+subt $f30,$f28,$f30
+addt $f29,$f30,$f30
+stt $f30,SqEr
+ldt $f30,SqEr
+ldt $f29,MinSqEr
+cmptlt $f30,$f29,$f1
+fbeq $f1,L.855
+ldt $f30,SqEr
+stt $f30,MinSqEr
+L.855:
+ldt $f30,Y2
+ldt $f29,X2
+subt $f30,$f29,$f30
+stt $f30,SqEr
+ldt $f30,SqEr
+ldt $f29,MaxSqEr
+cmptle $f30,$f29,$f1
+fbne $f1,L.857
+ldt $f30,SqEr
+stt $f30,MaxSqEr
+L.857:
+L.853:
+mov $31,$0
+L.852:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end SR3750
+.globl IsYeqX
+.text
+.ent IsYeqX
+IsYeqX:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+ldt $f30,Y
+ldt $f29,X
+cmpteq $f30,$f29,$f1
+fbne $f1,L.860
+ldl $27,N
+cmple $27,$31,$23
+beq $23,L.862
+ldt $f30,Zero
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbeq $f1,L.864
+ldt $f29,Q
+cmptle $f29,$f30,$f1
+fbeq $f1,L.864
+lda $16,L.866
+jsr $26,printf
+ldgp $gp,0($26)
+br L.865
+L.864:
+lda $16,2
+lda $17,L.867
+jsr $26,BadCond
+ldgp $gp,0($26)
+L.865:
+lda $16,L.868
+ldt $f17,Z
+ldt $f18,Q
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.869
+ldt $f17,Y
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.870
+ldt $f17,X
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.871
+ldt $f30,Y
+ldt $f29,X
+subt $f30,$f29,$f17
+jsr $26,printf
+ldgp $gp,0($26)
+L.862:
+ldl $27,N
+lda $27,1($27)
+stl $27,N
+L.860:
+mov $31,$0
+L.859:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end IsYeqX
+.globl SR3980
+.text
+.ent SR3980
+SR3980:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+L.873:
+lds $f30,I
+cvtlq $f30,$f30
+cvtqt $f30,$f30
+stt $f30,Q
+ldt $f16,Z
+ldt $f17,Q
+jsr $26,pow
+ldgp $gp,0($26)
+stt $f0,Y
+jsr $26,IsYeqX
+ldgp $gp,0($26)
+ldl $27,I
+lda $27,1($27)
+stl $27,I
+ldl $25,M
+cmple $27,$25,$23
+bne $23,L.876
+br L.875
+L.876:
+ldt $f30,Z
+ldt $f29,X
+mult $f30,$f29,$f30
+stt $f30,X
+L.874:
+ldt $f30,X
+ldt $f29,W
+cmptlt $f30,$f29,$f1
+fbne $f1,L.873
+L.875:
+mov $31,$0
+L.872:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end SR3980
+.globl PrintIfNPositive
+.text
+.ent PrintIfNPositive
+PrintIfNPositive:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+ldl $27,N
+cmple $27,$31,$23
+bne $23,L.879
+lda $16,L.881
+ldl $17,N
+jsr $26,printf
+ldgp $gp,0($26)
+L.879:
+mov $31,$0
+L.878:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end PrintIfNPositive
+.globl TstPtUf
+.text
+.ent TstPtUf
+TstPtUf:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+stl $31,N
+ldt $f30,Z
+ldt $f29,Zero
+cmpteq $f30,$f29,$f1
+fbne $f1,L.883
+lda $16,L.885
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.886
+jsr $26,printf
+ldgp $gp,0($26)
+lda $27,sigfpe
+stq $27,sigsave
+lda $16,ovfl_buf
+jsr $26,setjmp
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+bne $23,L.887
+br L.889
+L.887:
+ldt $f30,Z
+addt $f30,$f30,$f29
+divt $f29,$f30,$f30
+stt $f30,Q9
+lda $16,L.890
+ldt $f17,Q9
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Q9
+ldt $f29,Two
+subt $f30,$f29,$f16
+jsr $26,fabs
+ldgp $gp,0($26)
+ldt $f29,Radix
+ldt $f28,U2
+mult $f29,$f28,$f29
+cmptlt $f0,$f29,$f1
+fbeq $f1,L.891
+lda $16,L.893
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.894
+jsr $26,printf
+ldgp $gp,0($26)
+br L.892
+L.891:
+ldt $f30,Q9
+ldt $f29,One
+cmptlt $f30,$f29,$f1
+fbne $f1,L.897
+ldt $f29,Two
+cmptle $f30,$f29,$f1
+fbne $f1,L.895
+L.897:
+L.889:
+lda $27,1
+stl $27,N
+ldl $27,ErrCnt+4
+lda $27,1($27)
+stl $27,ErrCnt+4
+lda $16,L.900
+jsr $26,printf
+ldgp $gp,0($26)
+br L.896
+L.895:
+lda $27,1
+stl $27,N
+ldl $27,ErrCnt+8
+lda $27,1($27)
+stl $27,ErrCnt+8
+lda $16,L.903
+jsr $26,printf
+ldgp $gp,0($26)
+L.896:
+L.892:
+stq $31,sigsave
+ldt $f30,Z
+ldt $f29,One
+mult $f30,$f29,$f28
+stt $f28,V9
+ldt $f28,V9
+stt $f28,Random1
+mult $f29,$f30,$f28
+stt $f28,V9
+ldt $f28,V9
+stt $f28,Random2
+divt $f30,$f29,$f30
+stt $f30,V9
+ldt $f30,Z
+ldt $f29,Random1
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.904
+ldt $f29,Random2
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.904
+ldt $f29,V9
+cmpteq $f30,$f29,$f1
+fbeq $f1,L.904
+ldl $27,N
+cmple $27,$31,$23
+bne $23,L.905
+jsr $26,Pause
+ldgp $gp,0($26)
+br L.905
+L.904:
+lda $27,1
+stl $27,N
+lda $16,2
+lda $17,L.908
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.909
+ldt $f17,Z
+jsr $26,printf
+ldgp $gp,0($26)
+ldt $f30,Z
+ldt $f29,Random1
+cmpteq $f30,$f29,$f1
+fbne $f1,L.910
+lda $16,L.912
+ldt $f17,Random1
+jsr $26,printf
+ldgp $gp,0($26)
+L.910:
+ldt $f30,Random2
+ldt $f29,Z
+cmpteq $f29,$f30,$f1
+fbne $f1,L.913
+ldt $f29,Random1
+cmpteq $f30,$f29,$f1
+fbne $f1,L.913
+lda $16,L.915
+ldt $f17,Random2
+jsr $26,printf
+ldgp $gp,0($26)
+L.913:
+ldt $f30,Z
+ldt $f29,V9
+cmpteq $f30,$f29,$f1
+fbne $f1,L.916
+lda $16,L.918
+ldt $f17,V9
+jsr $26,printf
+ldgp $gp,0($26)
+L.916:
+ldt $f30,Random2
+ldt $f29,Random1
+cmpteq $f30,$f29,$f1
+fbne $f1,L.919
+ldl $27,ErrCnt+8
+lda $27,1($27)
+stl $27,ErrCnt+8
+lda $16,2
+lda $17,L.923
+jsr $26,BadCond
+ldgp $gp,0($26)
+lda $16,L.924
+ldt $f17,Random2
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.925
+ldt $f17,Random1
+jsr $26,printf
+ldgp $gp,0($26)
+L.919:
+jsr $26,Pause
+ldgp $gp,0($26)
+L.905:
+L.883:
+mov $31,$0
+L.882:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end TstPtUf
+.globl notify
+.text
+.ent notify
+notify:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+.prologue 1
+lda $16,L.927
+ldq $17,-48+64($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,L.928
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.926:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end notify
+.globl msglist
+.text
+.ent msglist
+msglist:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+mov $16,$14
+.prologue 1
+br L.931
+L.930:
+lda $16,L.933
+mov $14,$27
+lda $14,8($27)
+ldq $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.931:
+ldq $27,($14)
+cmpeq $27,$31,$23
+beq $23,L.930
+mov $31,$0
+L.929:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end msglist
+.sdata
+.align 3
+L.935:
+.quad L.936
+.quad L.937
+.quad L.938
+.quad L.939
+.quad L.940
+.quad L.941
+.quad L.942
+.quad L.943
+.quad L.944
+.quad 0x0
+.globl Instructions
+.text
+.text
+.ent Instructions
+Instructions:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+lda $16,L.935
+jsr $26,msglist
+ldgp $gp,0($26)
+mov $31,$0
+L.934:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end Instructions
+.sdata
+.align 3
+L.946:
+.quad L.947
+.quad L.948
+.quad L.949
+.quad L.950
+.quad L.951
+.quad L.952
+.quad L.953
+.quad L.954
+.quad L.955
+.quad L.956
+.quad L.957
+.quad L.958
+.quad L.959
+.quad L.960
+.quad 0x0
+.globl Heading
+.text
+.text
+.ent Heading
+Heading:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+lda $16,L.946
+jsr $26,msglist
+ldgp $gp,0($26)
+mov $31,$0
+L.945:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end Heading
+.sdata
+.align 3
+L.962:
+.quad L.963
+.quad L.964
+.quad L.965
+.quad L.966
+.quad L.967
+.quad L.968
+.quad L.969
+.quad L.970
+.quad L.971
+.quad L.972
+.quad L.973
+.quad L.974
+.quad L.975
+.quad L.976
+.quad L.977
+.quad L.978
+.quad L.979
+.quad L.980
+.quad L.981
+.quad 0x0
+.globl Characteristics
+.text
+.text
+.ent Characteristics
+Characteristics:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+lda $16,L.962
+jsr $26,msglist
+ldgp $gp,0($26)
+mov $31,$0
+L.961:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end Characteristics
+.sdata
+.align 3
+L.983:
+.quad L.984
+.quad L.985
+.quad L.986
+.quad L.987
+.quad L.988
+.quad L.989
+.quad L.990
+.quad L.991
+.quad L.992
+.quad L.993
+.quad L.994
+.quad L.995
+.quad L.996
+.quad L.997
+.quad L.998
+.quad L.999
+.quad L.1000
+.quad 0x0
+.globl History
+.text
+.text
+.ent History
+History:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+lda $16,L.983
+jsr $26,msglist
+ldgp $gp,0($26)
+mov $31,$0
+L.982:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end History
+.globl pow
+.text
+.ent pow
+pow:
+ldgp $gp,0($27)
+lda $sp,-128($sp)
+.fmask 0x380,-112
+.mask 0x4006000,-88
+.frame $sp,128,$26,48
+stt $f7,0($sp)
+stt $f8,8($sp)
+stt $f9,16($sp)
+stq $13,24($sp)
+stq $14,32($sp)
+stq $26,40($sp)
+fmov $f16,$f9
+fmov $f17,$f8
+.prologue 1
+mov $31,$13
+stl $31,-64+128($sp)
+ldt $f30,L.8
+cmpteq $f8,$f30,$f1
+fbeq $f1,L.1002
+ldt $f0,L.9
+br L.1001
+L.1002:
+ldt $f30,L.1007
+cmptlt $f8,$f30,$f1
+fbne $f1,L.1006
+ldt $f30,L.1008
+cmptle $f8,$f30,$f1
+fbne $f1,L.1004
+L.1006:
+ldt $f30,L.824
+cmpteq $f9,$f30,$f1
+fbne $f1,L.1004
+fmov $f9,$f16
+jsr $26,log
+ldgp $gp,0($26)
+fmov $f0,$f30
+mult $f8,$f30,$f16
+jsr $26,exp
+ldgp $gp,0($26)
+fmov $f0,$f30
+br L.1001
+L.1004:
+ldt $f30,L.8
+cmptlt $f8,$f30,$f1
+fbeq $f1,L.1009
+negt $f8,$f8
+lda $27,1
+stl $27,-64+128($sp)
+L.1009:
+fmov $f8,$f16
+lda $17,-72+128($sp)
+jsr $26,modf
+ldgp $gp,0($26)
+fmov $f0,$f8
+ldt $f30,L.8
+cmpteq $f8,$f30,$f1
+fbne $f1,L.1011
+fmov $f9,$f16
+jsr $26,log
+ldgp $gp,0($26)
+fmov $f0,$f30
+mult $f8,$f30,$f16
+jsr $26,exp
+ldgp $gp,0($26)
+fmov $f0,$f7
+br L.1012
+L.1011:
+ldt $f7,L.9
+L.1012:
+fmov $f9,$f16
+lda $17,-60+128($sp)
+jsr $26,frexp
+ldgp $gp,0($26)
+fmov $f0,$f9
+ldt $f30,-72+128($sp)
+cvttqc $f30,$f1
+stt $f1,-56+128($sp)
+ldq $27,-56+128($sp)
+mov $27,$14
+cmpeq $27,$31,$23
+bne $23,L.1013
+L.1015:
+and $14,1,$27
+cmpeq $27,$31,$23
+bne $23,L.1019
+mult $f7,$f9,$f7
+ldl $27,-60+128($sp)
+addl $13,$27,$13
+L.1019:
+sra $14,1,$27
+mov $27,$14
+cmpeq $27,$31,$23
+beq $23,L.1021
+br L.1017
+L.1021:
+mult $f9,$f9,$f9
+ldl $27,-60+128($sp)
+sll $27,1,$27
+addl $27,0,$27
+stl $27,-60+128($sp)
+ldt $f30,L.1025
+cmptlt $f9,$f30,$f1
+fbeq $f1,L.1015
+ldt $f30,L.1026
+mult $f30,$f9,$f9
+ldl $27,-60+128($sp)
+subl $27,1,$27
+stl $27,-60+128($sp)
+br L.1015
+L.1017:
+L.1013:
+ldl $27,-64+128($sp)
+cmpeq $27,$31,$23
+bne $23,L.1027
+ldt $f30,L.9
+divt $f30,$f7,$f7
+negl $13,$13
+L.1027:
+fmov $f7,$f16
+mov $13,$17
+jsr $26,ldexp
+ldgp $gp,0($26)
+fmov $f0,$f30
+L.1001:
+ldt $f7,0($sp)
+ldt $f8,8($sp)
+ldt $f9,16($sp)
+ldq $13,24($sp)
+ldq $14,32($sp)
+ldq $26,40($sp)
+lda $sp,128($sp)
+ret
+.end pow
+.globl UfNGrad
+.comm UfNGrad,4
+.globl SqRWrng
+.comm SqRWrng,4
+.globl IEEE
+.comm IEEE,4
+.globl Anomaly
+.comm Anomaly,4
+.globl Monot
+.comm Monot,4
+.globl NotMonot
+.comm NotMonot,4
+.globl Done
+.comm Done,4
+.globl Break
+.comm Break,4
+.globl RSqrt
+.comm RSqrt,4
+.globl RAddSub
+.comm RAddSub,4
+.globl RDiv
+.comm RDiv,4
+.globl RMult
+.comm RMult,4
+.globl GAddSub
+.comm GAddSub,4
+.globl GDiv
+.comm GDiv,4
+.globl GMult
+.comm GMult,4
+.globl N1
+.comm N1,4
+.globl N
+.comm N,4
+.globl M
+.comm M,4
+.globl PageNo
+.comm PageNo,4
+.globl Milestone
+.comm Milestone,4
+.globl fpecount
+.comm fpecount,4
+.globl ErrCnt
+.comm ErrCnt,16
+.globl Z9
+.comm Z9,8
+.globl Z2
+.comm Z2,8
+.globl Z1
+.comm Z1,8
+.globl PseudoZero
+.comm PseudoZero,8
+.globl Z
+.comm Z,8
+.globl Random2
+.comm Random2,8
+.globl Y2
+.comm Y2,8
+.globl Y1
+.comm Y1,8
+.globl Y
+.comm Y,8
+.globl Random1
+.comm Random1,8
+.globl X8
+.comm X8,8
+.globl X2
+.comm X2,8
+.globl X1
+.comm X1,8
+.globl X
+.comm X,8
+.globl W
+.comm W,8
+.globl V9
+.comm V9,8
+.globl V0
+.comm V0,8
+.globl V
+.comm V,8
+.globl U2
+.comm U2,8
+.globl U1
+.comm U1,8
+.globl UfThold
+.comm UfThold,8
+.globl OneUlp
+.comm OneUlp,8
+.globl S
+.comm S,8
+.globl Underflow
+.comm Underflow,8
+.globl T
+.comm T,8
+.globl Random9
+.comm Random9,8
+.globl R
+.comm R,8
+.globl Q9
+.comm Q9,8
+.globl Q
+.comm Q,8
+.globl Precision
+.comm Precision,8
+.globl MyZero
+.comm MyZero,8
+.globl J
+.comm J,8
+.globl StickyBit
+.comm StickyBit,8
+.globl I
+.comm I,4
+.globl HInvrse
+.comm HInvrse,8
+.globl H
+.comm H,8
+.globl F9
+.comm F9,8
+.globl F6
+.comm F6,8
+.globl Third
+.comm Third,8
+.globl E9
+.comm E9,8
+.globl MaxSqEr
+.comm MaxSqEr,8
+.globl SqEr
+.comm SqEr,8
+.globl MinSqEr
+.comm MinSqEr,8
+.globl E3
+.comm E3,8
+.globl Exp2
+.comm Exp2,8
+.globl E1
+.comm E1,8
+.globl E0
+.comm E0,8
+.globl FourD
+.comm FourD,8
+.globl D
+.comm D,8
+.globl CInvrse
+.comm CInvrse,8
+.globl C
+.comm C,8
+.globl A1
+.comm A1,8
+.globl AInvrse
+.comm AInvrse,8
+.globl ch
+.comm ch,8
+.globl Indx
+.comm Indx,4
+.globl BMinusU2
+.comm BMinusU2,8
+.globl RadixD2
+.comm RadixD2,8
+.globl BInvrse
+.comm BInvrse,8
+.globl Radix
+.comm Radix,8
+.globl sigsave
+.comm sigsave,8
+.globl ovfl_buf
+.comm ovfl_buf,336
+.extern _iob 0
+.rdata
+.align 3
+L.1026:
+.long 0x0
+.long 0x40000000
+.align 3
+L.1025:
+.long 0x0
+.long 0x3fe00000
+.align 3
+L.1008:
+.long 0x0
+.long 0x40913000
+.align 3
+L.1007:
+.long 0x0
+.long 0xc0913000
+.align 0
+L.1000:
+.byte 115
+.byte 101
+.byte 101
+.byte 32
+.byte 115
+.byte 111
+.byte 117
+.byte 114
+.byte 99
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 109
+.byte 111
+.byte 114
+.byte 101
+.byte 32
+.byte 104
+.byte 105
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 46
+.byte 0
+.align 0
+L.999:
+.byte 66
+.byte 65
+.byte 83
+.byte 73
+.byte 67
+.byte 32
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 40
+.byte 67
+.byte 41
+.byte 32
+.byte 49
+.byte 57
+.byte 56
+.byte 51
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 80
+.byte 114
+.byte 111
+.byte 102
+.byte 46
+.byte 32
+.byte 87
+.byte 46
+.byte 32
+.byte 77
+.byte 46
+.byte 32
+.byte 75
+.byte 97
+.byte 104
+.byte 97
+.byte 110
+.byte 59
+.byte 0
+.align 0
+L.998:
+.byte 97
+.byte 115
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 99
+.byte 101
+.byte 114
+.byte 116
+.byte 97
+.byte 105
+.byte 110
+.byte 32
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 121
+.byte 32
+.byte 87
+.byte 65
+.byte 78
+.byte 71
+.byte 32
+.byte 109
+.byte 97
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.997:
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 45
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 44
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 108
+.byte 115
+.byte 111
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 32
+.byte 108
+.byte 111
+.byte 103
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 105
+.byte 99
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.996:
+.byte 10
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 98
+.byte 97
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 117
+.byte 112
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 110
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 114
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 114
+.byte 101
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 101
+.byte 110
+.byte 116
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 0
+.align 0
+L.995:
+.byte 111
+.byte 102
+.byte 32
+.byte 112
+.byte 97
+.byte 116
+.byte 104
+.byte 111
+.byte 108
+.byte 111
+.byte 103
+.byte 105
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 115
+.byte 97
+.byte 121
+.byte 32
+.byte 104
+.byte 111
+.byte 119
+.byte 32
+.byte 119
+.byte 101
+.byte 108
+.byte 108
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 109
+.byte 112
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.994:
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 116
+.byte 114
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 112
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 119
+.byte 105
+.byte 100
+.byte 101
+.byte 114
+.byte 32
+.byte 118
+.byte 97
+.byte 114
+.byte 105
+.byte 101
+.byte 116
+.byte 121
+.byte 0
+.align 0
+L.993:
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 44
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 32
+.byte 40
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 115
+.byte 41
+.byte 0
+.align 0
+L.992:
+.byte 87
+.byte 46
+.byte 32
+.byte 74
+.byte 46
+.byte 32
+.byte 67
+.byte 111
+.byte 100
+.byte 121
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 87
+.byte 46
+.byte 32
+.byte 87
+.byte 97
+.byte 105
+.byte 116
+.byte 101
+.byte 46
+.byte 32
+.byte 65
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 98
+.byte 111
+.byte 116
+.byte 104
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 115
+.byte 32
+.byte 116
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.991:
+.byte 98
+.byte 111
+.byte 111
+.byte 107
+.byte 32
+.byte 32
+.byte 96
+.byte 83
+.byte 111
+.byte 102
+.byte 116
+.byte 119
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 77
+.byte 97
+.byte 110
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 69
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 70
+.byte 117
+.byte 110
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 39
+.byte 32
+.byte 40
+.byte 49
+.byte 57
+.byte 56
+.byte 48
+.byte 41
+.byte 32
+.byte 98
+.byte 121
+.byte 0
+.align 0
+L.990:
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 96
+.byte 77
+.byte 65
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 39
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 0
+.align 0
+L.989:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 99
+.byte 97
+.byte 112
+.byte 97
+.byte 98
+.byte 105
+.byte 108
+.byte 105
+.byte 116
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 103
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 121
+.byte 111
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 105
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.988:
+.byte 70
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 115
+.byte 101
+.byte 113
+.byte 117
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.987:
+.byte 32
+.byte 32
+.byte 32
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 50
+.byte 43
+.byte 50
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 53
+.byte 32
+.byte 46
+.byte 0
+.align 0
+L.986:
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 0
+.align 0
+L.985:
+.byte 32
+.byte 32
+.byte 32
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 44
+.byte 0
+.align 0
+L.984:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 97
+.byte 116
+.byte 116
+.byte 101
+.byte 109
+.byte 112
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 105
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 97
+.byte 109
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.981:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 68
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 45
+.byte 66
+.byte 105
+.byte 110
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 89
+.byte 69
+.byte 84
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 97
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 46
+.byte 0
+.align 0
+L.980:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 69
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 101
+.byte 118
+.byte 101
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 89
+.byte 69
+.byte 84
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.979:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 32
+.byte 32
+.byte 89
+.byte 94
+.byte 88
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.978:
+.byte 9
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 116
+.byte 97
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 112
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 45
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 115
+.byte 46
+.byte 0
+.align 0
+L.977:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 99
+.byte 121
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.976:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 86
+.byte 48
+.byte 32
+.byte 32
+.byte 116
+.byte 101
+.byte 108
+.byte 108
+.byte 115
+.byte 44
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 32
+.byte 73
+.byte 110
+.byte 102
+.byte 105
+.byte 110
+.byte 105
+.byte 116
+.byte 121
+.byte 32
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.975:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 86
+.byte 32
+.byte 61
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 44
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 46
+.byte 0
+.align 0
+L.974:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 69
+.byte 48
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 101
+.byte 108
+.byte 108
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 98
+.byte 114
+.byte 117
+.byte 112
+.byte 116
+.byte 44
+.byte 32
+.byte 103
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 117
+.byte 122
+.byte 122
+.byte 121
+.byte 46
+.byte 0
+.align 0
+L.973:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 84
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.972:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 87
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 32
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 66
+.byte 105
+.byte 116
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 46
+.byte 0
+.align 0
+L.971:
+.byte 9
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 46
+.byte 44
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 46
+.byte 44
+.byte 32
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 46
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 83
+.byte 113
+.byte 114
+.byte 116
+.byte 46
+.byte 0
+.align 0
+L.970:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 87
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 116
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 0
+L.969:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 65
+.byte 100
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 46
+.byte 44
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 46
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 46
+.byte 0
+.align 0
+L.968:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 47
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 79
+.byte 110
+.byte 101
+.byte 32
+.byte 85
+.byte 108
+.byte 112
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 108
+.byte 105
+.byte 116
+.byte 116
+.byte 108
+.byte 101
+.byte 32
+.byte 108
+.byte 101
+.byte 115
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 32
+.byte 46
+.byte 0
+.align 0
+L.967:
+.byte 9
+.byte 40
+.byte 79
+.byte 110
+.byte 101
+.byte 85
+.byte 108
+.byte 112
+.byte 110
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 76
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 80
+.byte 108
+.byte 97
+.byte 99
+.byte 101
+.byte 41
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 48
+.byte 48
+.byte 120
+.byte 120
+.byte 120
+.byte 32
+.byte 46
+.byte 0
+.align 0
+L.966:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 47
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 79
+.byte 110
+.byte 101
+.byte 32
+.byte 85
+.byte 108
+.byte 112
+.byte 0
+.align 0
+L.965:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 114
+.byte 105
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.964:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 44
+.byte 32
+.byte 52
+.byte 44
+.byte 32
+.byte 56
+.byte 44
+.byte 32
+.byte 49
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 54
+.byte 44
+.byte 32
+.byte 49
+.byte 48
+.byte 48
+.byte 44
+.byte 32
+.byte 50
+.byte 53
+.byte 54
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 0
+L.963:
+.byte 82
+.byte 117
+.byte 110
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 114
+.byte 101
+.byte 118
+.byte 101
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 115
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 115
+.byte 58
+.byte 0
+.align 0
+L.960:
+.byte 9
+.byte 79
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 101
+.byte 118
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 105
+.byte 108
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 112
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 58
+.byte 0
+.align 0
+L.959:
+.byte 9
+.byte 79
+.byte 112
+.byte 116
+.byte 105
+.byte 109
+.byte 105
+.byte 122
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 101
+.byte 118
+.byte 101
+.byte 108
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.958:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 105
+.byte 108
+.byte 101
+.byte 114
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.957:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.956:
+.byte 9
+.byte 86
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 9
+.byte 49
+.byte 48
+.byte 32
+.byte 70
+.byte 101
+.byte 98
+.byte 114
+.byte 117
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 49
+.byte 57
+.byte 56
+.byte 57
+.byte 59
+.byte 0
+.align 0
+L.955:
+.byte 9
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 9
+.byte 100
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 59
+.byte 0
+.align 0
+L.954:
+.byte 73
+.byte 110
+.byte 32
+.byte 100
+.byte 111
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 115
+.byte 111
+.byte 44
+.byte 32
+.byte 112
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 108
+.byte 117
+.byte 100
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 108
+.byte 108
+.byte 111
+.byte 119
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 110
+.byte 102
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 0
+.align 0
+L.953:
+.byte 9
+.byte 83
+.byte 97
+.byte 110
+.byte 32
+.byte 70
+.byte 114
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 44
+.byte 32
+.byte 67
+.byte 65
+.byte 32
+.byte 57
+.byte 52
+.byte 49
+.byte 52
+.byte 51
+.byte 45
+.byte 48
+.byte 55
+.byte 48
+.byte 52
+.byte 44
+.byte 32
+.byte 85
+.byte 83
+.byte 65
+.byte 10
+.byte 0
+.align 0
+L.952:
+.byte 9
+.byte 85
+.byte 110
+.byte 105
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 116
+.byte 121
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 67
+.byte 97
+.byte 108
+.byte 105
+.byte 102
+.byte 111
+.byte 114
+.byte 110
+.byte 105
+.byte 97
+.byte 0
+.align 0
+L.951:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 67
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 85
+.byte 45
+.byte 55
+.byte 54
+.byte 0
+.align 0
+L.950:
+.byte 9
+.byte 82
+.byte 105
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 75
+.byte 97
+.byte 114
+.byte 112
+.byte 105
+.byte 110
+.byte 115
+.byte 107
+.byte 105
+.byte 0
+.align 0
+L.949:
+.byte 80
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 115
+.byte 117
+.byte 103
+.byte 103
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 0
+.align 0
+L.948:
+.byte 99
+.byte 111
+.byte 112
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 117
+.byte 110
+.byte 97
+.byte 110
+.byte 116
+.byte 105
+.byte 99
+.byte 105
+.byte 112
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 110
+.byte 101
+.byte 119
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 110
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 112
+.byte 97
+.byte 116
+.byte 104
+.byte 111
+.byte 108
+.byte 111
+.byte 103
+.byte 105
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.947:
+.byte 85
+.byte 115
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 105
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 104
+.byte 101
+.byte 108
+.byte 112
+.byte 32
+.byte 100
+.byte 101
+.byte 98
+.byte 117
+.byte 103
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 117
+.byte 103
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 119
+.byte 105
+.byte 108
+.byte 108
+.byte 0
+.align 0
+L.944:
+.byte 65
+.byte 110
+.byte 115
+.byte 119
+.byte 101
+.byte 114
+.byte 32
+.byte 113
+.byte 117
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 89
+.byte 44
+.byte 32
+.byte 121
+.byte 44
+.byte 32
+.byte 78
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 110
+.byte 32
+.byte 40
+.byte 117
+.byte 110
+.byte 108
+.byte 101
+.byte 115
+.byte 115
+.byte 32
+.byte 111
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 119
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 100
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.943:
+.byte 97
+.byte 109
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 107
+.byte 101
+.byte 32
+.byte 102
+.byte 117
+.byte 114
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.942:
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 97
+.byte 110
+.byte 121
+.byte 119
+.byte 97
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 32
+.byte 104
+.byte 111
+.byte 119
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 109
+.byte 105
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 111
+.byte 110
+.byte 101
+.byte 115
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 115
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 110
+.byte 0
+.align 0
+L.941:
+.byte 119
+.byte 97
+.byte 114
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 46
+.byte 32
+.byte 32
+.byte 73
+.byte 102
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 117
+.byte 97
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 118
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 32
+.byte 110
+.byte 97
+.byte 117
+.byte 103
+.byte 104
+.byte 116
+.byte 44
+.byte 32
+.byte 100
+.byte 111
+.byte 110
+.byte 39
+.byte 116
+.byte 32
+.byte 100
+.byte 101
+.byte 115
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 114
+.byte 117
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 0
+L.940:
+.byte 116
+.byte 111
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 101
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 115
+.byte 117
+.byte 114
+.byte 114
+.byte 111
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 97
+.byte 102
+.byte 116
+.byte 101
+.byte 114
+.byte 44
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 104
+.byte 97
+.byte 112
+.byte 115
+.byte 44
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 112
+.byte 108
+.byte 97
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 0
+.align 0
+L.939:
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 44
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.938:
+.byte 116
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 117
+.byte 97
+.byte 100
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 116
+.byte 101
+.byte 114
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 101
+.byte 99
+.byte 117
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 97
+.byte 110
+.byte 0
+.align 0
+L.937:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 96
+.byte 69
+.byte 78
+.byte 68
+.byte 32
+.byte 79
+.byte 70
+.byte 32
+.byte 84
+.byte 69
+.byte 83
+.byte 84
+.byte 39
+.byte 44
+.byte 10
+.byte 0
+.align 0
+L.936:
+.byte 76
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 112
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 109
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 101
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 105
+.byte 46
+.byte 101
+.byte 46
+.byte 32
+.byte 98
+.byte 101
+.byte 102
+.byte 111
+.byte 114
+.byte 101
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 112
+.byte 108
+.byte 97
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.933:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.928:
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 76
+.byte 69
+.byte 65
+.byte 83
+.byte 69
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 73
+.byte 70
+.byte 89
+.byte 32
+.byte 75
+.byte 65
+.byte 82
+.byte 80
+.byte 73
+.byte 78
+.byte 75
+.byte 83
+.byte 73
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.927:
+.byte 37
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 116
+.byte 46
+.byte 46
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.925:
+.byte 9
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 90
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.924:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 49
+.byte 32
+.byte 42
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.923:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 100
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 117
+.byte 116
+.byte 101
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.918:
+.byte 90
+.byte 32
+.byte 47
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.915:
+.byte 49
+.byte 32
+.byte 42
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.912:
+.byte 90
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 0
+L.909:
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.908:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 0
+.align 0
+L.903:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.900:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 86
+.byte 69
+.byte 82
+.byte 89
+.byte 32
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.894:
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 106
+.byte 117
+.byte 115
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.893:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 44
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 0
+L.890:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 109
+.byte 97
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 101
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 40
+.byte 90
+.byte 32
+.byte 43
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.886:
+.byte 40
+.byte 90
+.byte 32
+.byte 43
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 115
+.byte 97
+.byte 102
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.885:
+.byte 83
+.byte 105
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 100
+.byte 101
+.byte 110
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 101
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 0
+.align 0
+L.881:
+.byte 83
+.byte 105
+.byte 109
+.byte 105
+.byte 108
+.byte 97
+.byte 114
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 116
+.byte 105
+.byte 109
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.871:
+.byte 9
+.byte 9
+.byte 116
+.byte 104
+.byte 101
+.byte 121
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.870:
+.byte 9
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 117
+.byte 110
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 59
+.byte 10
+.byte 0
+.align 0
+L.869:
+.byte 9
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 59
+.byte 10
+.byte 0
+.align 0
+L.868:
+.byte 9
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 10
+.byte 0
+.align 0
+L.867:
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.866:
+.byte 87
+.byte 65
+.byte 82
+.byte 78
+.byte 73
+.byte 78
+.byte 71
+.byte 58
+.byte 32
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.848:
+.byte 9
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 101
+.byte 97
+.byte 100
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 48
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.847:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 3
+L.839:
+.long 0x88e368f1
+.long 0x3ed4f8b5
+.align 0
+L.837:
+.byte 37
+.byte 115
+.byte 58
+.byte 32
+.byte 32
+.byte 37
+.byte 115
+.byte 0
+.align 0
+L.836:
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 0
+.align 0
+L.835:
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 0
+.align 0
+L.834:
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 0
+.align 0
+L.833:
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 0
+.align 0
+L.827:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 97
+.byte 103
+.byte 101
+.byte 58
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 10
+.byte 0
+.align 0
+L.826:
+.byte 10
+.byte 68
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 109
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 102
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 109
+.byte 105
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 111
+.byte 110
+.byte 101
+.byte 32
+.byte 78
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 0
+.align 3
+L.824:
+.long 0x0
+.long 0xbff00000
+.align 0
+L.819:
+.byte 69
+.byte 78
+.byte 68
+.byte 32
+.byte 79
+.byte 70
+.byte 32
+.byte 84
+.byte 69
+.byte 83
+.byte 84
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.818:
+.byte 10
+.byte 65
+.byte 32
+.byte 116
+.byte 111
+.byte 116
+.byte 97
+.byte 108
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 119
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.815:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 69
+.byte 120
+.byte 99
+.byte 101
+.byte 108
+.byte 108
+.byte 101
+.byte 110
+.byte 116
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.814:
+.byte 32
+.byte 100
+.byte 117
+.byte 114
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 71
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.813:
+.byte 44
+.byte 10
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 115
+.byte 105
+.byte 98
+.byte 108
+.byte 121
+.byte 32
+.byte 68
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 32
+.byte 82
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.812:
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.809:
+.byte 56
+.byte 53
+.byte 52
+.byte 0
+.align 0
+L.808:
+.byte 55
+.byte 53
+.byte 52
+.byte 0
+.align 0
+L.805:
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 112
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 73
+.byte 69
+.byte 69
+.byte 69
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 110
+.byte 100
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 80
+.byte 0
+.align 0
+L.804:
+.byte 82
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 111
+.byte 114
+.byte 109
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 0
+.align 0
+L.801:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 83
+.byte 97
+.byte 116
+.byte 105
+.byte 115
+.byte 102
+.byte 97
+.byte 99
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.795:
+.byte 78
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 100
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 115
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 98
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.794:
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 39
+.byte 115
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 115
+.byte 101
+.byte 113
+.byte 117
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.793:
+.byte 80
+.byte 111
+.byte 116
+.byte 101
+.byte 110
+.byte 116
+.byte 105
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 102
+.byte 97
+.byte 116
+.byte 97
+.byte 108
+.byte 32
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 112
+.byte 111
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 0
+L.790:
+.byte 117
+.byte 110
+.byte 97
+.byte 99
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 32
+.byte 83
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 68
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.789:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 0
+.align 0
+L.785:
+.byte 100
+.byte 101
+.byte 115
+.byte 112
+.byte 105
+.byte 116
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 110
+.byte 105
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 68
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.784:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 65
+.byte 99
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.779:
+.byte 83
+.byte 97
+.byte 116
+.byte 105
+.byte 115
+.byte 102
+.byte 97
+.byte 99
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.778:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 0
+.align 0
+L.767:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 32
+.byte 37
+.byte 45
+.byte 50
+.byte 57
+.byte 115
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.760:
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 0
+L.759:
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 0
+L.758:
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 0
+L.757:
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 115
+.byte 32
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 0
+L.753:
+.byte 10
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 48
+.byte 32
+.byte 47
+.byte 32
+.byte 48
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 115
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 0
+L.752:
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.749:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 49
+.byte 32
+.byte 47
+.byte 32
+.byte 48
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 115
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 0
+L.748:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 109
+.byte 101
+.byte 115
+.byte 115
+.byte 97
+.byte 103
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 47
+.byte 111
+.byte 114
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 32
+.byte 100
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 63
+.byte 10
+.byte 0
+.align 0
+L.747:
+.byte 32
+.byte 32
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 101
+.byte 97
+.byte 100
+.byte 44
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.746:
+.byte 32
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.741:
+.byte 32
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 32
+.byte 116
+.byte 114
+.byte 97
+.byte 112
+.byte 115
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.727:
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.726:
+.byte 32
+.byte 117
+.byte 110
+.byte 98
+.byte 97
+.byte 108
+.byte 97
+.byte 110
+.byte 99
+.byte 101
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 59
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 42
+.byte 32
+.byte 86
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.725:
+.byte 66
+.byte 97
+.byte 100
+.byte 108
+.byte 121
+.byte 0
+.align 0
+L.718:
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 90
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 50
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.717:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.705:
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 90
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.704:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 119
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.687:
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 44
+.byte 32
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 10
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 0
+.align 0
+L.686:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 0
+.align 0
+L.680:
+.byte 97
+.byte 98
+.byte 111
+.byte 118
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.679:
+.byte 65
+.byte 110
+.byte 121
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 42
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 111
+.byte 110
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.678:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 86
+.byte 32
+.byte 47
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.677:
+.byte 78
+.byte 111
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 86
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.676:
+.byte 84
+.byte 104
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 115
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 98
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 115
+.byte 121
+.byte 115
+.byte 116
+.byte 101
+.byte 109
+.byte 32
+.byte 116
+.byte 114
+.byte 97
+.byte 112
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.675:
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 86
+.byte 48
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.672:
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 86
+.byte 32
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.663:
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 115
+.byte 104
+.byte 114
+.byte 105
+.byte 110
+.byte 107
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.660:
+.byte 45
+.byte 40
+.byte 45
+.byte 89
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 89
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.659:
+.byte 102
+.byte 105
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 0
+.align 0
+L.658:
+.byte 83
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.655:
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.654:
+.byte 67
+.byte 97
+.byte 110
+.byte 32
+.byte 96
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 45
+.byte 89
+.byte 39
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 63
+.byte 10
+.byte 0
+.align 0
+L.647:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 103
+.byte 101
+.byte 110
+.byte 101
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.646:
+.byte 83
+.byte 101
+.byte 97
+.byte 114
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.645:
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.637:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 119
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 94
+.byte 81
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 114
+.byte 32
+.byte 110
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 121
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 101
+.byte 109
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.636:
+.byte 65
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 97
+.byte 100
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 116
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.629:
+.byte 9
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 105
+.byte 110
+.byte 121
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.628:
+.byte 9
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 117
+.byte 99
+.byte 104
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 115
+.byte 112
+.byte 111
+.byte 105
+.byte 108
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 10
+.byte 0
+.align 0
+L.627:
+.byte 9
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.626:
+.byte 9
+.byte 40
+.byte 49
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 59
+.byte 10
+.byte 0
+.align 0
+L.625:
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 10
+.byte 0
+.align 0
+L.624:
+.byte 67
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 0
+.align 0
+L.617:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 88
+.byte 94
+.byte 40
+.byte 40
+.byte 88
+.byte 32
+.byte 43
+.byte 32
+.byte 49
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 41
+.byte 41
+.byte 32
+.byte 118
+.byte 115
+.byte 46
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 40
+.byte 50
+.byte 41
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 62
+.byte 32
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.613:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.610:
+.byte 32
+.byte 32
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.609:
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 116
+.byte 119
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 48
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 10
+.byte 0
+.align 0
+L.605:
+.byte 97
+.byte 99
+.byte 116
+.byte 117
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 58
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.604:
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 97
+.byte 102
+.byte 102
+.byte 108
+.byte 105
+.byte 99
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 10
+.byte 9
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 59
+.byte 10
+.byte 0
+.align 0
+L.603:
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 10
+.byte 111
+.byte 110
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 0
+.align 0
+L.602:
+.byte 83
+.byte 105
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.601:
+.byte 82
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 110
+.byte 97
+.byte 114
+.byte 114
+.byte 111
+.byte 119
+.byte 59
+.byte 32
+.byte 85
+.byte 49
+.byte 94
+.byte 37
+.byte 100
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.596:
+.byte 109
+.byte 101
+.byte 114
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.595:
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 115
+.byte 117
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 32
+.byte 108
+.byte 97
+.byte 114
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 82
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 0
+.align 0
+L.594:
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 0
+.align 0
+L.593:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.592:
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 32
+.byte 43
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.591:
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.588:
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 97
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 97
+.byte 99
+.byte 116
+.byte 117
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 10
+.byte 0
+.align 0
+L.587:
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 40
+.byte 102
+.byte 40
+.byte 88
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 102
+.byte 40
+.byte 90
+.byte 41
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.586:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 0
+L.585:
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 110
+.byte 111
+.byte 99
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 116
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.584:
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 10
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 115
+.byte 32
+.byte 0
+.align 0
+L.583:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 44
+.byte 32
+.byte 0
+.align 0
+L.582:
+.byte 121
+.byte 101
+.byte 116
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 90
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.581:
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.576:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 47
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.567:
+.byte 40
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 41
+.byte 32
+.byte 60
+.byte 32
+.byte 69
+.byte 48
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.566:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 103
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 59
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 32
+.byte 65
+.byte 98
+.byte 115
+.byte 111
+.byte 108
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 69
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 61
+.byte 10
+.byte 0
+.align 0
+L.561:
+.byte 124
+.byte 81
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 124
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.560:
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 81
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.559:
+.byte 81
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 89
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.byte 32
+.byte 100
+.byte 101
+.byte 110
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 124
+.byte 81
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 124
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 48
+.byte 59
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 115
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.558:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 101
+.byte 115
+.byte 32
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 10
+.byte 0
+.align 0
+L.556:
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 32
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.555:
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 100
+.byte 111
+.byte 119
+.byte 110
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.554:
+.byte 97
+.byte 112
+.byte 112
+.byte 114
+.byte 111
+.byte 97
+.byte 99
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.553:
+.byte 69
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 100
+.byte 101
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.541:
+.byte 83
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 115
+.byte 116
+.byte 114
+.byte 105
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 69
+.byte 48
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.540:
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.539:
+.byte 68
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 32
+.byte 104
+.byte 105
+.byte 103
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.536:
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 99
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.535:
+.byte 80
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 116
+.byte 115
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 32
+.byte 104
+.byte 105
+.byte 103
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.528:
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.527:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 100
+.byte 108
+.byte 121
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.526:
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 44
+.byte 32
+.byte 105
+.byte 115
+.byte 110
+.byte 39
+.byte 116
+.byte 59
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.525:
+.byte 66
+.byte 117
+.byte 116
+.byte 32
+.byte 45
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.522:
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 58
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.521:
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 100
+.byte 108
+.byte 121
+.byte 32
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.520:
+.byte 80
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 97
+.byte 110
+.byte 10
+.byte 0
+.align 0
+L.507:
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.483:
+.byte 83
+.byte 101
+.byte 101
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 69
+.byte 48
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.480:
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.477:
+.byte 9
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.476:
+.byte 69
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 97
+.byte 108
+.byte 105
+.byte 100
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.455:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 119
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 94
+.byte 105
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.452:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.450:
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 117
+.byte 108
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.449:
+.byte 79
+.byte 98
+.byte 115
+.byte 101
+.byte 114
+.byte 118
+.byte 101
+.byte 100
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 114
+.byte 117
+.byte 110
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 0
+L.448:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.445:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.440:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.435:
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.434:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.433:
+.byte 65
+.byte 110
+.byte 111
+.byte 109
+.byte 97
+.byte 108
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 60
+.byte 32
+.byte 0
+.align 0
+L.393:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.371:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 88
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 110
+.byte 45
+.byte 109
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 88
+.byte 32
+.byte 110
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.370:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 105
+.byte 116
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.353:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 109
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 105
+.byte 116
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.342:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 88
+.byte 41
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 88
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 88
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.337:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 48
+.byte 46
+.byte 48
+.byte 44
+.byte 32
+.byte 45
+.byte 48
+.byte 46
+.byte 48
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.335:
+.byte 10
+.byte 82
+.byte 117
+.byte 110
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 40
+.byte 120
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.334:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 78
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.333:
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 89
+.byte 32
+.byte 42
+.byte 32
+.byte 88
+.byte 32
+.byte 116
+.byte 114
+.byte 105
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 3
+L.324:
+.long 0x0
+.long 0x40080000
+.align 0
+L.323:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 100
+.byte 111
+.byte 109
+.byte 32
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.322:
+.byte 68
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 117
+.byte 116
+.byte 101
+.byte 63
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.319:
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 40
+.byte 115
+.byte 41
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 40
+.byte 115
+.byte 41
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 10
+.byte 40
+.byte 110
+.byte 111
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 98
+.byte 111
+.byte 118
+.byte 101
+.byte 41
+.byte 32
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 101
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 0
+L.317:
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.316:
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.299:
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.296:
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 41
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 89
+.byte 32
+.byte 45
+.byte 32
+.byte 88
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 110
+.byte 32
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.293:
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.292:
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 0
+.align 0
+L.289:
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.282:
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.277:
+.byte 73
+.byte 110
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 108
+.byte 101
+.byte 116
+.byte 101
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 114
+.byte 121
+.byte 45
+.byte 112
+.byte 114
+.byte 111
+.byte 112
+.byte 97
+.byte 103
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.273:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 42
+.byte 32
+.byte 40
+.byte 32
+.byte 49
+.byte 32
+.byte 47
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 0
+.align 0
+L.271:
+.byte 47
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.268:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.265:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.262:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.257:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.254:
+.byte 42
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.253:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.250:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.240:
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 40
+.byte 49
+.byte 47
+.byte 88
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 0
+.align 0
+L.221:
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 100
+.byte 100
+.byte 47
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.220:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 42
+.byte 44
+.byte 32
+.byte 47
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 45
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 121
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.217:
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 41
+.byte 32
+.byte 123
+.byte 46
+.byte 46
+.byte 46
+.byte 46
+.byte 46
+.byte 125
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 32
+.byte 123
+.byte 46
+.byte 46
+.byte 46
+.byte 47
+.byte 40
+.byte 88
+.byte 45
+.byte 49
+.byte 46
+.byte 48
+.byte 41
+.byte 46
+.byte 46
+.byte 46
+.byte 125
+.byte 10
+.byte 0
+.align 0
+L.216:
+.byte 32
+.byte 32
+.byte 115
+.byte 117
+.byte 99
+.byte 104
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 103
+.byte 97
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 97
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.215:
+.byte 32
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 32
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 32
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 101
+.byte 98
+.byte 121
+.byte 32
+.byte 118
+.byte 105
+.byte 116
+.byte 105
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.214:
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 32
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 32
+.byte 60
+.byte 32
+.byte 49
+.byte 32
+.byte 32
+.byte 97
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 10
+.byte 0
+.align 0
+L.211:
+.byte 45
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 99
+.byte 101
+.byte 108
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 111
+.byte 98
+.byte 115
+.byte 99
+.byte 117
+.byte 114
+.byte 101
+.byte 100
+.byte 0
+.align 0
+L.206:
+.byte 42
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 47
+.byte 111
+.byte 114
+.byte 32
+.byte 47
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.202:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 49
+.byte 47
+.byte 49
+.byte 46
+.byte 48
+.byte 48
+.byte 48
+.byte 46
+.byte 46
+.byte 49
+.byte 32
+.byte 62
+.byte 61
+.byte 32
+.byte 49
+.byte 0
+.align 0
+L.200:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 88
+.byte 47
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 88
+.byte 0
+.align 0
+L.195:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 101
+.byte 100
+.byte 32
+.byte 49
+.byte 32
+.byte 117
+.byte 108
+.byte 112
+.byte 10
+.byte 111
+.byte 114
+.byte 32
+.byte 32
+.byte 49
+.byte 47
+.byte 51
+.byte 32
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 32
+.byte 51
+.byte 47
+.byte 57
+.byte 32
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 32
+.byte 57
+.byte 47
+.byte 50
+.byte 55
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 97
+.byte 103
+.byte 114
+.byte 101
+.byte 101
+.byte 0
+.align 0
+L.191:
+.byte 42
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.189:
+.byte 42
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 49
+.byte 42
+.byte 88
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 88
+.byte 0
+.align 0
+L.186:
+.byte 10
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 42
+.byte 44
+.byte 32
+.byte 47
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 45
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.185:
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 108
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 46
+.byte 0
+.align 0
+L.180:
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 108
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 88
+.byte 61
+.byte 89
+.byte 44
+.byte 88
+.byte 43
+.byte 90
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 89
+.byte 43
+.byte 90
+.byte 33
+.byte 0
+.align 0
+L.176:
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.175:
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 98
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 32
+.byte 66
+.byte 45
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 44
+.byte 32
+.byte 105
+.byte 46
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.174:
+.byte 83
+.byte 111
+.byte 109
+.byte 101
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 10
+.byte 0
+.align 0
+L.168:
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 110
+.byte 10
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.167:
+.byte 90
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 90
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 0
+L.166:
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 101
+.byte 120
+.byte 97
+.byte 99
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 97
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 10
+.byte 0
+.align 0
+L.165:
+.byte 66
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 117
+.byte 110
+.byte 117
+.byte 115
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 102
+.byte 0
+.align 0
+L.161:
+.byte 9
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 90
+.byte 50
+.byte 32
+.byte 45
+.byte 32
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.160:
+.byte 9
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 90
+.byte 49
+.byte 32
+.byte 45
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.159:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.158:
+.byte 0
+.align 0
+L.151:
+.byte 84
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 102
+.byte 101
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 117
+.byte 114
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.146:
+.byte 80
+.byte 111
+.byte 115
+.byte 115
+.byte 105
+.byte 98
+.byte 108
+.byte 121
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 32
+.byte 112
+.byte 97
+.byte 114
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 0
+L.145:
+.byte 98
+.byte 121
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 101
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.144:
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 115
+.byte 121
+.byte 109
+.byte 112
+.byte 116
+.byte 111
+.byte 109
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.143:
+.byte 114
+.byte 101
+.byte 115
+.byte 112
+.byte 101
+.byte 99
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 10
+.byte 0
+.align 0
+L.142:
+.byte 68
+.byte 105
+.byte 115
+.byte 97
+.byte 103
+.byte 114
+.byte 101
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 109
+.byte 111
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 32
+.byte 88
+.byte 49
+.byte 44
+.byte 32
+.byte 89
+.byte 49
+.byte 44
+.byte 32
+.byte 90
+.byte 49
+.byte 44
+.byte 10
+.byte 0
+.align 0
+L.120:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 111
+.byte 114
+.byte 115
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 53
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 105
+.byte 103
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.118:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.117:
+.byte 108
+.byte 111
+.byte 103
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 105
+.byte 99
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 111
+.byte 108
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 85
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.114:
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 44
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 105
+.byte 116
+.byte 115
+.byte 101
+.byte 108
+.byte 102
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 109
+.byte 105
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.113:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 10
+.byte 0
+.align 0
+L.100:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 102
+.byte 117
+.byte 122
+.byte 122
+.byte 121
+.byte 44
+.byte 88
+.byte 61
+.byte 49
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 88
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 0
+L.96:
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 60
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 70
+.byte 65
+.byte 76
+.byte 83
+.byte 69
+.byte 44
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 46
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 63
+.byte 0
+.align 3
+L.94:
+.long 0x0
+.long 0x40240000
+.align 0
+L.89:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 103
+.byte 111
+.byte 111
+.byte 100
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 50
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 48
+.byte 0
+.align 0
+L.85:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 98
+.byte 105
+.byte 103
+.byte 58
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 98
+.byte 108
+.byte 101
+.byte 109
+.byte 115
+.byte 0
+.align 0
+L.83:
+.byte 77
+.byte 89
+.byte 83
+.byte 84
+.byte 69
+.byte 82
+.byte 89
+.byte 58
+.byte 32
+.byte 114
+.byte 101
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.82:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 105
+.byte 114
+.byte 109
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 3
+L.79:
+.long 0x47ae147b
+.long 0x3f847ae1
+.align 0
+L.78:
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 98
+.byte 101
+.byte 116
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.77:
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 105
+.byte 114
+.byte 109
+.byte 115
+.byte 32
+.byte 99
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.62:
+.byte 82
+.byte 101
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 10
+.byte 32
+.byte 0
+.align 0
+L.61:
+.byte 67
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 10
+.byte 0
+.align 0
+L.55:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.46:
+.byte 83
+.byte 101
+.byte 97
+.byte 114
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.45:
+.byte 10
+.byte 0
+.align 0
+L.44:
+.byte 45
+.byte 49
+.byte 44
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 44
+.byte 32
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 44
+.byte 32
+.byte 51
+.byte 44
+.byte 32
+.byte 52
+.byte 44
+.byte 32
+.byte 53
+.byte 44
+.byte 32
+.byte 57
+.byte 44
+.byte 32
+.byte 50
+.byte 55
+.byte 44
+.byte 32
+.byte 51
+.byte 50
+.byte 32
+.byte 38
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.39:
+.byte 53
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 52
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 51
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 56
+.byte 48
+.byte 44
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 52
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 54
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 53
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 52
+.byte 56
+.byte 0
+.align 0
+L.35:
+.byte 57
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 51
+.byte 42
+.byte 51
+.byte 44
+.byte 32
+.byte 50
+.byte 55
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 57
+.byte 42
+.byte 51
+.byte 44
+.byte 32
+.byte 51
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 56
+.byte 42
+.byte 52
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 51
+.byte 50
+.byte 45
+.byte 50
+.byte 55
+.byte 45
+.byte 52
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 0
+L.31:
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 32
+.byte 43
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 0
+L.27:
+.byte 45
+.byte 49
+.byte 43
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 43
+.byte 97
+.byte 98
+.byte 115
+.byte 40
+.byte 49
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 45
+.byte 49
+.byte 43
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 42
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 0
+L.23:
+.byte 51
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 50
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 52
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 51
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 52
+.byte 43
+.byte 50
+.byte 42
+.byte 40
+.byte 45
+.byte 50
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 52
+.byte 45
+.byte 51
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 3
+L.21:
+.long 0xd2f1a9fc
+.long 0x3f50624d
+.align 0
+L.20:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 45
+.byte 48
+.byte 46
+.byte 48
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 111
+.byte 110
+.byte 45
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.15:
+.byte 48
+.byte 43
+.byte 48
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 32
+.byte 60
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 43
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 50
+.byte 0
+.align 0
+L.13:
+.byte 80
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 119
+.byte 32
+.byte 82
+.byte 85
+.byte 78
+.byte 78
+.byte 73
+.byte 78
+.byte 71
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 115
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 58
+.byte 10
+.byte 0
+.align 3
+L.9:
+.long 0x0
+.long 0x3ff00000
+.align 3
+L.8:
+.long 0x0
+.long 0x0
+.align 0
+L.3:
+.byte 10
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 70
+.byte 76
+.byte 79
+.byte 65
+.byte 84
+.byte 73
+.byte 78
+.byte 71
+.byte 45
+.byte 80
+.byte 79
+.byte 73
+.byte 78
+.byte 84
+.byte 32
+.byte 69
+.byte 82
+.byte 82
+.byte 79
+.byte 82
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 10
+.byte 0
diff --git a/lcc/alpha/osf/tst/sort.1bk b/lcc/alpha/osf/tst/sort.1bk
index 380d529..75e1f0d 100755
--- a/lcc/alpha/osf/tst/sort.1bk
+++ b/lcc/alpha/osf/tst/sort.1bk
@@ -1,20 +1,20 @@
-exchange(1,9)
-exchange(3,7)
-exchange(5,6)
-exchange(0,5)
-exchange(0,3)
-exchange(0,0)
-exchange(1,2)
-exchange(6,6)
-exchange(8,9)
-exchange(7,8)
--51
--1
-0
-1
-3
-10
-18
-32
-567
-789
+exchange(1,9)
+exchange(3,7)
+exchange(5,6)
+exchange(0,5)
+exchange(0,3)
+exchange(0,0)
+exchange(1,2)
+exchange(6,6)
+exchange(8,9)
+exchange(7,8)
+-51
+-1
+0
+1
+3
+10
+18
+32
+567
+789
diff --git a/lcc/alpha/osf/tst/sort.2bk b/lcc/alpha/osf/tst/sort.2bk
index 27488a1..81e6f38 100755
--- a/lcc/alpha/osf/tst/sort.2bk
+++ b/lcc/alpha/osf/tst/sort.2bk
@@ -1,5 +1,5 @@
-tst/sort.c:23: warning: missing return value
-tst/sort.c:30: warning: missing return value
-tst/sort.c:37: warning: missing return value
-tst/sort.c:41: warning: missing return value
-tst/sort.c:65: warning: missing return value
+tst/sort.c:23: warning: missing return value
+tst/sort.c:30: warning: missing return value
+tst/sort.c:37: warning: missing return value
+tst/sort.c:41: warning: missing return value
+tst/sort.c:65: warning: missing return value
diff --git a/lcc/alpha/osf/tst/sort.sbk b/lcc/alpha/osf/tst/sort.sbk
index cb5b857..4abc71b 100755
--- a/lcc/alpha/osf/tst/sort.sbk
+++ b/lcc/alpha/osf/tst/sort.sbk
@@ -1,323 +1,323 @@
-.sdata
-.globl in
-.align 2
-in:
-.long 0xa
-.long 0x20
-.long 0xffffffff
-.long 0x237
-.long 0x3
-.long 0x12
-.long 0x1
-.long 0xffffffcd
-.long 0x315
-.long 0x0
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-lda $16,in
-lda $17,10
-jsr $26,sort
-ldgp $gp,0($26)
-mov $31,$14
-br L.5
-L.2:
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-ldl $16,in($27)
-jsr $26,putd
-ldgp $gp,0($26)
-lda $16,10
-jsr $26,putchar
-ldgp $gp,0($26)
-L.3:
-lda $14,1($14)
-L.5:
-mov $14,$27
-lda $25,10
-cmpult $27,$25,$23
-bne $23,L.2
-mov $31,$0
-L.1:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end main
-.globl putd
-.text
-.ent putd
-putd:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x5004000,-64
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $24,8($sp)
-stq $26,16($sp)
-mov $16,$14
-.prologue 1
-cmplt $14,$31,$23
-beq $23,L.7
-lda $16,45
-jsr $26,putchar
-ldgp $gp,0($26)
-negl $14,$14
-L.7:
-divl $14,10,$27
-cmpeq $27,$31,$23
-bne $23,L.9
-divl $14,10,$16
-jsr $26,putd
-ldgp $gp,0($26)
-L.9:
-reml $14,10,$27
-lda $16,48($27)
-jsr $26,putchar
-ldgp $gp,0($26)
-mov $31,$0
-L.6:
-ldq $14,0($sp)
-ldq $24,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end putd
-.globl sort
-.text
-.ent sort
-sort:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-stq $17,24($sp)
-.prologue 1
-ldq $27,-48+64($sp)
-stq $27,xx
-mov $27,$16
-mov $31,$17
-ldl $27,-40+64($sp)
-subl $27,1,$27
-stl $27,-40+64($sp)
-mov $27,$18
-jsr $26,quick
-ldgp $gp,0($26)
-mov $31,$0
-L.11:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end sort
-.globl quick
-.text
-.ent quick
-quick:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.mask 0x4007800,-64
-.frame $sp,96,$26,48
-stq $11,0($sp)
-stq $12,8($sp)
-stq $13,16($sp)
-stq $14,24($sp)
-stq $26,32($sp)
-mov $16,$14
-mov $17,$13
-mov $18,$12
-.prologue 1
-cmplt $13,$12,$23
-bne $23,L.13
-br L.12
-L.13:
-mov $14,$16
-mov $13,$17
-mov $12,$18
-jsr $26,partition
-ldgp $gp,0($26)
-mov $0,$11
-mov $14,$16
-mov $13,$17
-subl $11,1,$18
-jsr $26,quick
-ldgp $gp,0($26)
-mov $14,$16
-lda $17,1($11)
-mov $12,$18
-jsr $26,quick
-ldgp $gp,0($26)
-mov $31,$0
-L.12:
-ldq $11,0($sp)
-ldq $12,8($sp)
-ldq $13,16($sp)
-ldq $14,24($sp)
-ldq $26,32($sp)
-lda $sp,96($sp)
-ret
-.end quick
-.globl partition
-.text
-.ent partition
-partition:
-ldgp $gp,0($27)
-lda $sp,-112($sp)
-.mask 0x4007c00,-72
-.frame $sp,112,$26,48
-stq $10,0($sp)
-stq $11,8($sp)
-stq $12,16($sp)
-stq $13,24($sp)
-stq $14,32($sp)
-stq $26,40($sp)
-mov $16,$14
-mov $17,$13
-mov $18,$12
-.prologue 1
-lda $12,1($12)
-mov $13,$10
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$14,$27
-ldl $11,($27)
-br L.17
-L.16:
-lda $13,1($13)
-br L.20
-L.19:
-lda $13,1($13)
-L.20:
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$14,$27
-ldl $27,($27)
-cmplt $27,$11,$23
-bne $23,L.19
-subl $12,1,$12
-br L.23
-L.22:
-subl $12,1,$12
-L.23:
-sll $12,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$14,$27
-ldl $27,($27)
-cmple $27,$11,$23
-beq $23,L.22
-cmplt $13,$12,$23
-beq $23,L.25
-sll $13,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$14,$16
-sll $12,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$14,$17
-jsr $26,exchange
-ldgp $gp,0($26)
-L.25:
-L.17:
-cmplt $13,$12,$23
-bne $23,L.16
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$14,$16
-sll $12,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,2,$27
-addq $27,$14,$17
-jsr $26,exchange
-ldgp $gp,0($26)
-mov $12,$0
-L.15:
-ldq $10,0($sp)
-ldq $11,8($sp)
-ldq $12,16($sp)
-ldq $13,24($sp)
-ldq $14,32($sp)
-ldq $26,40($sp)
-lda $sp,112($sp)
-ret
-.end partition
-.globl exchange
-.text
-.ent exchange
-exchange:
-ldgp $gp,0($27)
-lda $sp,-112($sp)
-.mask 0x5006000,-88
-.frame $sp,112,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $24,16($sp)
-stq $26,24($sp)
-mov $16,$14
-mov $17,$13
-.prologue 1
-lda $16,L.28
-ldq $27,xx
-stq $27,-80+112($sp)
-mov $14,$25
-subq $25,$27,$25
-stq $25,-72+112($sp)
-divq $25,4,$17
-mov $13,$27
-ldq $25,-80+112($sp)
-subq $27,$25,$27
-divq $27,4,$18
-jsr $26,printf
-ldgp $gp,0($26)
-ldl $27,($14)
-stl $27,-60+112($sp)
-ldl $27,($13)
-stl $27,($14)
-ldl $27,-60+112($sp)
-stl $27,($13)
-mov $31,$0
-L.27:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $24,16($sp)
-ldq $26,24($sp)
-lda $sp,112($sp)
-ret
-.end exchange
-.globl xx
-.comm xx,8
-.rdata
-.align 0
-L.28:
-.byte 101
-.byte 120
-.byte 99
-.byte 104
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 40
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 41
-.byte 10
-.byte 0
+.sdata
+.globl in
+.align 2
+in:
+.long 0xa
+.long 0x20
+.long 0xffffffff
+.long 0x237
+.long 0x3
+.long 0x12
+.long 0x1
+.long 0xffffffcd
+.long 0x315
+.long 0x0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+lda $16,in
+lda $17,10
+jsr $26,sort
+ldgp $gp,0($26)
+mov $31,$14
+br L.5
+L.2:
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+ldl $16,in($27)
+jsr $26,putd
+ldgp $gp,0($26)
+lda $16,10
+jsr $26,putchar
+ldgp $gp,0($26)
+L.3:
+lda $14,1($14)
+L.5:
+mov $14,$27
+lda $25,10
+cmpult $27,$25,$23
+bne $23,L.2
+mov $31,$0
+L.1:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end main
+.globl putd
+.text
+.ent putd
+putd:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x5004000,-64
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $24,8($sp)
+stq $26,16($sp)
+mov $16,$14
+.prologue 1
+cmplt $14,$31,$23
+beq $23,L.7
+lda $16,45
+jsr $26,putchar
+ldgp $gp,0($26)
+negl $14,$14
+L.7:
+divl $14,10,$27
+cmpeq $27,$31,$23
+bne $23,L.9
+divl $14,10,$16
+jsr $26,putd
+ldgp $gp,0($26)
+L.9:
+reml $14,10,$27
+lda $16,48($27)
+jsr $26,putchar
+ldgp $gp,0($26)
+mov $31,$0
+L.6:
+ldq $14,0($sp)
+ldq $24,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end putd
+.globl sort
+.text
+.ent sort
+sort:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+stq $17,24($sp)
+.prologue 1
+ldq $27,-48+64($sp)
+stq $27,xx
+mov $27,$16
+mov $31,$17
+ldl $27,-40+64($sp)
+subl $27,1,$27
+stl $27,-40+64($sp)
+mov $27,$18
+jsr $26,quick
+ldgp $gp,0($26)
+mov $31,$0
+L.11:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end sort
+.globl quick
+.text
+.ent quick
+quick:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.mask 0x4007800,-64
+.frame $sp,96,$26,48
+stq $11,0($sp)
+stq $12,8($sp)
+stq $13,16($sp)
+stq $14,24($sp)
+stq $26,32($sp)
+mov $16,$14
+mov $17,$13
+mov $18,$12
+.prologue 1
+cmplt $13,$12,$23
+bne $23,L.13
+br L.12
+L.13:
+mov $14,$16
+mov $13,$17
+mov $12,$18
+jsr $26,partition
+ldgp $gp,0($26)
+mov $0,$11
+mov $14,$16
+mov $13,$17
+subl $11,1,$18
+jsr $26,quick
+ldgp $gp,0($26)
+mov $14,$16
+lda $17,1($11)
+mov $12,$18
+jsr $26,quick
+ldgp $gp,0($26)
+mov $31,$0
+L.12:
+ldq $11,0($sp)
+ldq $12,8($sp)
+ldq $13,16($sp)
+ldq $14,24($sp)
+ldq $26,32($sp)
+lda $sp,96($sp)
+ret
+.end quick
+.globl partition
+.text
+.ent partition
+partition:
+ldgp $gp,0($27)
+lda $sp,-112($sp)
+.mask 0x4007c00,-72
+.frame $sp,112,$26,48
+stq $10,0($sp)
+stq $11,8($sp)
+stq $12,16($sp)
+stq $13,24($sp)
+stq $14,32($sp)
+stq $26,40($sp)
+mov $16,$14
+mov $17,$13
+mov $18,$12
+.prologue 1
+lda $12,1($12)
+mov $13,$10
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$14,$27
+ldl $11,($27)
+br L.17
+L.16:
+lda $13,1($13)
+br L.20
+L.19:
+lda $13,1($13)
+L.20:
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$14,$27
+ldl $27,($27)
+cmplt $27,$11,$23
+bne $23,L.19
+subl $12,1,$12
+br L.23
+L.22:
+subl $12,1,$12
+L.23:
+sll $12,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$14,$27
+ldl $27,($27)
+cmple $27,$11,$23
+beq $23,L.22
+cmplt $13,$12,$23
+beq $23,L.25
+sll $13,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$14,$16
+sll $12,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$14,$17
+jsr $26,exchange
+ldgp $gp,0($26)
+L.25:
+L.17:
+cmplt $13,$12,$23
+bne $23,L.16
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$14,$16
+sll $12,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,2,$27
+addq $27,$14,$17
+jsr $26,exchange
+ldgp $gp,0($26)
+mov $12,$0
+L.15:
+ldq $10,0($sp)
+ldq $11,8($sp)
+ldq $12,16($sp)
+ldq $13,24($sp)
+ldq $14,32($sp)
+ldq $26,40($sp)
+lda $sp,112($sp)
+ret
+.end partition
+.globl exchange
+.text
+.ent exchange
+exchange:
+ldgp $gp,0($27)
+lda $sp,-112($sp)
+.mask 0x5006000,-88
+.frame $sp,112,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $24,16($sp)
+stq $26,24($sp)
+mov $16,$14
+mov $17,$13
+.prologue 1
+lda $16,L.28
+ldq $27,xx
+stq $27,-80+112($sp)
+mov $14,$25
+subq $25,$27,$25
+stq $25,-72+112($sp)
+divq $25,4,$17
+mov $13,$27
+ldq $25,-80+112($sp)
+subq $27,$25,$27
+divq $27,4,$18
+jsr $26,printf
+ldgp $gp,0($26)
+ldl $27,($14)
+stl $27,-60+112($sp)
+ldl $27,($13)
+stl $27,($14)
+ldl $27,-60+112($sp)
+stl $27,($13)
+mov $31,$0
+L.27:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $24,16($sp)
+ldq $26,24($sp)
+lda $sp,112($sp)
+ret
+.end exchange
+.globl xx
+.comm xx,8
+.rdata
+.align 0
+L.28:
+.byte 101
+.byte 120
+.byte 99
+.byte 104
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 40
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 41
+.byte 10
+.byte 0
diff --git a/lcc/alpha/osf/tst/spill.2bk b/lcc/alpha/osf/tst/spill.2bk
index f7e3521..afd73e2 100755
--- a/lcc/alpha/osf/tst/spill.2bk
+++ b/lcc/alpha/osf/tst/spill.2bk
@@ -1,6 +1,6 @@
-tst/spill.c:1: warning: missing return value
-tst/spill.c:3: warning: missing return value
-tst/spill.c:5: warning: missing return value
-tst/spill.c:7: warning: missing return value
-tst/spill.c:9: warning: missing return value
-tst/spill.c:17: warning: missing return value
+tst/spill.c:1: warning: missing return value
+tst/spill.c:3: warning: missing return value
+tst/spill.c:5: warning: missing return value
+tst/spill.c:7: warning: missing return value
+tst/spill.c:9: warning: missing return value
+tst/spill.c:17: warning: missing return value
diff --git a/lcc/alpha/osf/tst/spill.sbk b/lcc/alpha/osf/tst/spill.sbk
index d05e700..e90d4f4 100755
--- a/lcc/alpha/osf/tst/spill.sbk
+++ b/lcc/alpha/osf/tst/spill.sbk
@@ -1,272 +1,272 @@
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-mov $31,$0
-L.1:
-lda $sp,64($sp)
-ret
-.end main
-.globl f
-.text
-.ent f
-f:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4000000,-80
-.frame $sp,80,$26,48
-stq $26,0($sp)
-stq $16,32($sp)
-.prologue 1
-jsr $26,f
-ldgp $gp,0($26)
-mov $0,$27
-stl $27,-60+80($sp)
-jsr $26,f
-ldgp $gp,0($26)
-ldl $25,-60+80($sp)
-addl $25,$0,$27
-stl $27,-48+80($sp)
-mov $31,$0
-L.2:
-ldq $26,0($sp)
-lda $sp,80($sp)
-ret
-.end f
-.globl f2
-.text
-.ent f2
-f2:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-stq $16,32($sp)
-.prologue 1
-jsr $26,f
-ldgp $gp,0($26)
-mov $0,$27
-stl $27,-60+80($sp)
-ldl $25,-48+80($sp)
-cmpeq $25,$31,$23
-bne $23,L.5
-jsr $26,f
-ldgp $gp,0($26)
-mov $0,$27
-mov $27,$14
-br L.6
-L.5:
-lda $14,1
-L.6:
-ldl $27,-60+80($sp)
-addl $27,$14,$27
-stl $27,-48+80($sp)
-mov $31,$0
-L.3:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end f2
-.globl f3
-.text
-.ent f3
-f3:
-ldgp $gp,0($27)
-lda $sp,-144($sp)
-.mask 0x4007e00,-96
-.frame $sp,144,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $26,48($sp)
-stq $16,96($sp)
-stq $17,104($sp)
-.prologue 1
-mov $31,$14
-mov $31,$13
-mov $31,$12
-mov $31,$11
-mov $31,$10
-mov $31,$9
-stl $31,-60+144($sp)
-stl $31,-64+144($sp)
-stl $31,-68+144($sp)
-stl $31,-72+144($sp)
-ldq $27,-40+144($sp)
-stq $27,-88+144($sp)
-lda $25,4($27)
-stq $25,-40+144($sp)
-ldl $25,-48+144($sp)
-cmpeq $25,$31,$23
-bne $23,L.9
-jsr $26,f
-ldgp $gp,0($26)
-mov $0,$27
-stl $27,-76+144($sp)
-br L.10
-L.9:
-stl $31,-76+144($sp)
-L.10:
-ldl $27,-76+144($sp)
-ldq $25,-88+144($sp)
-stl $27,($25)
-mov $31,$0
-L.7:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $26,48($sp)
-lda $sp,144($sp)
-ret
-.end f3
-.globl f4
-.text
-.ent f4
-f4:
-ldgp $gp,0($27)
-lda $sp,-128($sp)
-.mask 0x4007e00,-80
-.frame $sp,128,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $26,48($sp)
-.prologue 1
-mov $31,$14
-mov $31,$13
-mov $31,$12
-mov $31,$11
-mov $31,$10
-mov $31,$9
-ldl $27,i
-sll $27,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,3,$25
-ldt $f30,a($25)
-ldt $f29,b($25)
-ldt $f28,L.15
-addt $f30,$f29,$f27
-cmpteq $f27,$f28,$f1
-fbne $f1,L.13
-cmpeq $27,$31,$23
-bne $23,L.13
-subt $f30,$f29,$f30
-cmpteq $f30,$f28,$f1
-fbne $f1,L.13
-lda $27,1
-stl $27,-60+128($sp)
-br L.14
-L.13:
-stl $31,-60+128($sp)
-L.14:
-ldl $27,-60+128($sp)
-stl $27,i
-mov $31,$0
-L.11:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $26,48($sp)
-lda $sp,128($sp)
-ret
-.end f4
-.globl f5
-.text
-.ent f5
-f5:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-ldl $27,k
-ldl $25,m
-ldq $22,A
-mull $27,$25,$8
-sll $8,8*(8-4),$8
-sra $8,8*(8-4),$8
-sll $8,3,$8
-addq $8,$22,$8
-ldl $7,j
-mull $7,$25,$25
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,3,$25
-addq $25,$22,$25
-ldl $22,n
-ldq $6,B
-mull $27,$22,$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-addq $27,$6,$27
-mull $7,$22,$22
-sll $22,8*(8-4),$22
-sra $22,8*(8-4),$22
-sll $22,3,$22
-addq $22,$6,$22
-ldt $f30,($8)
-ldt $f29,($25)
-mult $f30,$f29,$f30
-ldt $f29,($27)
-ldt $f28,($22)
-mult $f29,$f28,$f29
-addt $f30,$f29,$f30
-stt $f30,x
-ldt $f30,($8)
-ldt $f29,($22)
-mult $f30,$f29,$f30
-ldt $f29,($27)
-ldt $f28,($25)
-mult $f29,$f28,$f29
-subt $f30,$f29,$f30
-stt $f30,x
-mov $31,$0
-L.16:
-lda $sp,64($sp)
-ret
-.end f5
-.globl x
-.comm x,8
-.globl B
-.comm B,8
-.globl A
-.comm A,8
-.globl n
-.comm n,4
-.globl m
-.comm m,4
-.globl k
-.comm k,4
-.globl j
-.comm j,4
-.globl i
-.comm i,4
-.globl b
-.comm b,80
-.globl a
-.comm a,80
-.rdata
-.align 3
-L.15:
-.long 0x0
-.long 0x0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+mov $31,$0
+L.1:
+lda $sp,64($sp)
+ret
+.end main
+.globl f
+.text
+.ent f
+f:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4000000,-80
+.frame $sp,80,$26,48
+stq $26,0($sp)
+stq $16,32($sp)
+.prologue 1
+jsr $26,f
+ldgp $gp,0($26)
+mov $0,$27
+stl $27,-60+80($sp)
+jsr $26,f
+ldgp $gp,0($26)
+ldl $25,-60+80($sp)
+addl $25,$0,$27
+stl $27,-48+80($sp)
+mov $31,$0
+L.2:
+ldq $26,0($sp)
+lda $sp,80($sp)
+ret
+.end f
+.globl f2
+.text
+.ent f2
+f2:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+stq $16,32($sp)
+.prologue 1
+jsr $26,f
+ldgp $gp,0($26)
+mov $0,$27
+stl $27,-60+80($sp)
+ldl $25,-48+80($sp)
+cmpeq $25,$31,$23
+bne $23,L.5
+jsr $26,f
+ldgp $gp,0($26)
+mov $0,$27
+mov $27,$14
+br L.6
+L.5:
+lda $14,1
+L.6:
+ldl $27,-60+80($sp)
+addl $27,$14,$27
+stl $27,-48+80($sp)
+mov $31,$0
+L.3:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end f2
+.globl f3
+.text
+.ent f3
+f3:
+ldgp $gp,0($27)
+lda $sp,-144($sp)
+.mask 0x4007e00,-96
+.frame $sp,144,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $26,48($sp)
+stq $16,96($sp)
+stq $17,104($sp)
+.prologue 1
+mov $31,$14
+mov $31,$13
+mov $31,$12
+mov $31,$11
+mov $31,$10
+mov $31,$9
+stl $31,-60+144($sp)
+stl $31,-64+144($sp)
+stl $31,-68+144($sp)
+stl $31,-72+144($sp)
+ldq $27,-40+144($sp)
+stq $27,-88+144($sp)
+lda $25,4($27)
+stq $25,-40+144($sp)
+ldl $25,-48+144($sp)
+cmpeq $25,$31,$23
+bne $23,L.9
+jsr $26,f
+ldgp $gp,0($26)
+mov $0,$27
+stl $27,-76+144($sp)
+br L.10
+L.9:
+stl $31,-76+144($sp)
+L.10:
+ldl $27,-76+144($sp)
+ldq $25,-88+144($sp)
+stl $27,($25)
+mov $31,$0
+L.7:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $26,48($sp)
+lda $sp,144($sp)
+ret
+.end f3
+.globl f4
+.text
+.ent f4
+f4:
+ldgp $gp,0($27)
+lda $sp,-128($sp)
+.mask 0x4007e00,-80
+.frame $sp,128,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $26,48($sp)
+.prologue 1
+mov $31,$14
+mov $31,$13
+mov $31,$12
+mov $31,$11
+mov $31,$10
+mov $31,$9
+ldl $27,i
+sll $27,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,3,$25
+ldt $f30,a($25)
+ldt $f29,b($25)
+ldt $f28,L.15
+addt $f30,$f29,$f27
+cmpteq $f27,$f28,$f1
+fbne $f1,L.13
+cmpeq $27,$31,$23
+bne $23,L.13
+subt $f30,$f29,$f30
+cmpteq $f30,$f28,$f1
+fbne $f1,L.13
+lda $27,1
+stl $27,-60+128($sp)
+br L.14
+L.13:
+stl $31,-60+128($sp)
+L.14:
+ldl $27,-60+128($sp)
+stl $27,i
+mov $31,$0
+L.11:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $26,48($sp)
+lda $sp,128($sp)
+ret
+.end f4
+.globl f5
+.text
+.ent f5
+f5:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+ldl $27,k
+ldl $25,m
+ldq $22,A
+mull $27,$25,$8
+sll $8,8*(8-4),$8
+sra $8,8*(8-4),$8
+sll $8,3,$8
+addq $8,$22,$8
+ldl $7,j
+mull $7,$25,$25
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,3,$25
+addq $25,$22,$25
+ldl $22,n
+ldq $6,B
+mull $27,$22,$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+addq $27,$6,$27
+mull $7,$22,$22
+sll $22,8*(8-4),$22
+sra $22,8*(8-4),$22
+sll $22,3,$22
+addq $22,$6,$22
+ldt $f30,($8)
+ldt $f29,($25)
+mult $f30,$f29,$f30
+ldt $f29,($27)
+ldt $f28,($22)
+mult $f29,$f28,$f29
+addt $f30,$f29,$f30
+stt $f30,x
+ldt $f30,($8)
+ldt $f29,($22)
+mult $f30,$f29,$f30
+ldt $f29,($27)
+ldt $f28,($25)
+mult $f29,$f28,$f29
+subt $f30,$f29,$f30
+stt $f30,x
+mov $31,$0
+L.16:
+lda $sp,64($sp)
+ret
+.end f5
+.globl x
+.comm x,8
+.globl B
+.comm B,8
+.globl A
+.comm A,8
+.globl n
+.comm n,4
+.globl m
+.comm m,4
+.globl k
+.comm k,4
+.globl j
+.comm j,4
+.globl i
+.comm i,4
+.globl b
+.comm b,80
+.globl a
+.comm a,80
+.rdata
+.align 3
+L.15:
+.long 0x0
+.long 0x0
diff --git a/lcc/alpha/osf/tst/stdarg.1bk b/lcc/alpha/osf/tst/stdarg.1bk
index 097aef7..e973176 100755
--- a/lcc/alpha/osf/tst/stdarg.1bk
+++ b/lcc/alpha/osf/tst/stdarg.1bk
@@ -1,6 +1,6 @@
-test 1
-test 2
-test 3
-test 4
-test 5.000000
-{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
+test 1
+test 2
+test 3
+test 4
+test 5.000000
+{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
diff --git a/lcc/alpha/osf/tst/stdarg.2bk b/lcc/alpha/osf/tst/stdarg.2bk
index a832cf9..2b3f417 100755
--- a/lcc/alpha/osf/tst/stdarg.2bk
+++ b/lcc/alpha/osf/tst/stdarg.2bk
@@ -1 +1 @@
-tst/stdarg.c:51: warning: missing return value
+tst/stdarg.c:51: warning: missing return value
diff --git a/lcc/alpha/osf/tst/stdarg.sbk b/lcc/alpha/osf/tst/stdarg.sbk
index e5570c2..e33da40 100755
--- a/lcc/alpha/osf/tst/stdarg.sbk
+++ b/lcc/alpha/osf/tst/stdarg.sbk
@@ -1,430 +1,430 @@
-.sdata
-.globl x
-.align 2
-x:
-.long 0x1
-.long 0x2
-.long 0x3
-.long 0x4
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-128($sp)
-.mask 0x4000000,-72
-.frame $sp,128,$26,48
-stq $26,56($sp)
-.prologue 1
-lda $16,L.3
-jsr $26,print
-ldgp $gp,0($26)
-lda $16,L.4
-lda $17,L.5
-jsr $26,print
-ldgp $gp,0($26)
-lda $16,L.6
-lda $17,3
-lda $18,10
-jsr $26,print
-ldgp $gp,0($26)
-lda $16,L.7
-lda $17,L.8
-lda $18,L.9
-lda $19,4
-lda $20,10
-jsr $26,print
-ldgp $gp,0($26)
-lda $16,L.10
-lda $17,L.8
-lda $18,L.9
-ldt $f19,L.11
-lda $20,10
-jsr $26,print
-ldgp $gp,0($26)
-lda $16,L.12
-lda $27,x
-mov $27,$1
-uldq $17,0($1)
-uldq $18,8($1)
-mov $27,$1
-uldq $19,0($1)
-uldq $20,8($1)
-mov $27,$1
-uldq $21,0($1)
-ldl $4,8($1)
-ldl $2,12($1)
-stl $4,0($30)
-stl $2,4($30)
-mov $27,$1
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,8($30)
-stl $2,12($30)
-ldl $4,8($1)
-ldl $2,12($1)
-stl $4,16($30)
-stl $2,20($30)
-mov $27,$1
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,24($30)
-stl $2,28($30)
-ldl $4,8($1)
-ldl $2,12($1)
-stl $4,32($30)
-stl $2,36($30)
-mov $27,$1
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,40($30)
-stl $2,44($30)
-ldl $4,8($1)
-ldl $2,12($1)
-stl $4,48($30)
-stl $2,52($30)
-jsr $26,print
-ldgp $gp,0($26)
-mov $31,$0
-L.2:
-ldq $26,56($sp)
-lda $sp,128($sp)
-ret
-.end main
-.globl print
-.text
-.ent print
-print:
-ldgp $gp,0($27)
-lda $sp,-160($sp)
-.mask 0x4006000,-144
-.frame $sp,160,$26,96
-stq $13,0($sp)
-stq $14,8($sp)
-stq $26,16($sp)
-stq $16,112($sp)
-stq $17,120($sp)
-stt $f17,72($sp)
-stq $18,128($sp)
-stt $f18,80($sp)
-stq $19,136($sp)
-stt $f19,88($sp)
-stq $20,144($sp)
-stt $f20,96($sp)
-stq $21,152($sp)
-stt $f21,104($sp)
-.prologue 1
-lda $27,-48+160($sp)
-stq $27,-120+160($sp)
-lda $27,-40+160($sp)
-ldq $25,-120+160($sp)
-subq $27,$25,$27
-stl $27,-112+160($sp)
-br L.21
-L.18:
-ldq $27,-48+160($sp)
-ldb $27,($27)
-cmpeq $27,37,$23
-beq $23,L.22
-ldq $27,-48+160($sp)
-lda $27,1($27)
-stq $27,-48+160($sp)
-ldb $14,($27)
-lda $27,115
-cmpeq $14,$27,$23
-bne $23,L.74
-cmple $14,$27,$23
-beq $23,L.100
-L.99:
-lda $27,98
-cmplt $14,$27,$23
-bne $23,L.24
-lda $27,102
-cmple $14,$27,$23
-beq $23,L.24
-subl $14,98,$27
-sll $27,3,$27
-ldq $27,L.101($27)
-jmp ($27)
-.rdata
-.align 3
-L.101:
-.quad L.27
-.quad L.41
-.quad L.52
-.quad L.24
-.quad L.85
-.text
-L.100:
-lda $27,119
-cmpeq $14,$27,$23
-bne $23,L.63
-br L.24
-L.27:
-ldl $27,-112+160($sp)
-lda $27,16($27)
-stl $27,-112+160($sp)
-lda $27,-136+160($sp)
-ldl $25,-112+160($sp)
-ldq $22,-120+160($sp)
-addq $25,$22,$25
-lda $1,-16($25)
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,0($27)
-stl $2,4($27)
-ldl $4,8($1)
-ldl $2,12($1)
-stl $4,8($27)
-stl $2,12($27)
-lda $16,L.37
-ldl $17,-136+160($sp)
-ldl $18,-132+160($sp)
-ldl $19,-128+160($sp)
-ldl $20,-124+160($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-br L.23
-L.41:
-lda $16,L.42
-ldl $27,-112+160($sp)
-lda $27,8($27)
-stl $27,-112+160($sp)
-ldl $27,-112+160($sp)
-ldq $25,-120+160($sp)
-addq $27,$25,$27
-lda $27,-8($27)
-ldb $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-br L.23
-L.52:
-lda $16,L.53
-ldl $27,-112+160($sp)
-lda $27,8($27)
-stl $27,-112+160($sp)
-ldl $27,-112+160($sp)
-ldq $25,-120+160($sp)
-addq $27,$25,$27
-ldl $17,-8($27)
-jsr $26,printf
-ldgp $gp,0($26)
-br L.23
-L.63:
-lda $16,L.64
-ldl $27,-112+160($sp)
-lda $27,8($27)
-stl $27,-112+160($sp)
-ldl $27,-112+160($sp)
-ldq $25,-120+160($sp)
-addq $27,$25,$27
-lda $27,-8($27)
-ldw $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-br L.23
-L.74:
-lda $16,L.75
-ldl $27,-112+160($sp)
-lda $27,8($27)
-stl $27,-112+160($sp)
-ldl $27,-112+160($sp)
-ldq $25,-120+160($sp)
-addq $27,$25,$27
-ldq $17,-8($27)
-jsr $26,printf
-ldgp $gp,0($26)
-br L.23
-L.85:
-lda $16,L.86
-ldl $27,-112+160($sp)
-lda $27,8($27)
-stl $27,-112+160($sp)
-ldl $27,-112+160($sp)
-cmple $27,48,$23
-beq $23,L.97
-ldl $27,-112+160($sp)
-ldq $25,-120+160($sp)
-addq $27,$25,$27
-lda $13,-56($27)
-br L.98
-L.97:
-ldl $27,-112+160($sp)
-ldq $25,-120+160($sp)
-addq $27,$25,$27
-lda $13,-8($27)
-L.98:
-ldt $f17,($13)
-jsr $26,printf
-ldgp $gp,0($26)
-br L.23
-L.24:
-lda $16,L.42
-ldq $27,-48+160($sp)
-ldb $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-br L.23
-L.22:
-lda $16,L.42
-ldq $27,-48+160($sp)
-ldb $17,($27)
-jsr $26,printf
-ldgp $gp,0($26)
-L.23:
-L.19:
-ldq $27,-48+160($sp)
-lda $27,1($27)
-stq $27,-48+160($sp)
-L.21:
-ldq $27,-48+160($sp)
-ldb $27,($27)
-cmpeq $27,$31,$23
-beq $23,L.18
-mov $31,$0
-L.13:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $26,16($sp)
-lda $sp,160($sp)
-ret
-.end print
-.rdata
-.align 0
-L.86:
-.byte 37
-.byte 102
-.byte 0
-.align 0
-L.75:
-.byte 37
-.byte 115
-.byte 0
-.align 0
-L.64:
-.byte 37
-.byte 120
-.byte 0
-.align 0
-L.53:
-.byte 37
-.byte 100
-.byte 0
-.align 0
-L.42:
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.37:
-.byte 123
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 125
-.byte 0
-.align 0
-L.12:
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 10
-.byte 0
-.align 3
-L.11:
-.long 0x0
-.long 0x40140000
-.align 0
-L.10:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 32
-.byte 37
-.byte 102
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.9:
-.byte 115
-.byte 116
-.byte 0
-.align 0
-L.8:
-.byte 116
-.byte 101
-.byte 0
-.align 0
-L.7:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 32
-.byte 37
-.byte 119
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.6:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 100
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.5:
-.byte 50
-.byte 0
-.align 0
-L.4:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.3:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 49
-.byte 10
-.byte 0
+.sdata
+.globl x
+.align 2
+x:
+.long 0x1
+.long 0x2
+.long 0x3
+.long 0x4
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-128($sp)
+.mask 0x4000000,-72
+.frame $sp,128,$26,48
+stq $26,56($sp)
+.prologue 1
+lda $16,L.3
+jsr $26,print
+ldgp $gp,0($26)
+lda $16,L.4
+lda $17,L.5
+jsr $26,print
+ldgp $gp,0($26)
+lda $16,L.6
+lda $17,3
+lda $18,10
+jsr $26,print
+ldgp $gp,0($26)
+lda $16,L.7
+lda $17,L.8
+lda $18,L.9
+lda $19,4
+lda $20,10
+jsr $26,print
+ldgp $gp,0($26)
+lda $16,L.10
+lda $17,L.8
+lda $18,L.9
+ldt $f19,L.11
+lda $20,10
+jsr $26,print
+ldgp $gp,0($26)
+lda $16,L.12
+lda $27,x
+mov $27,$1
+uldq $17,0($1)
+uldq $18,8($1)
+mov $27,$1
+uldq $19,0($1)
+uldq $20,8($1)
+mov $27,$1
+uldq $21,0($1)
+ldl $4,8($1)
+ldl $2,12($1)
+stl $4,0($30)
+stl $2,4($30)
+mov $27,$1
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,8($30)
+stl $2,12($30)
+ldl $4,8($1)
+ldl $2,12($1)
+stl $4,16($30)
+stl $2,20($30)
+mov $27,$1
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,24($30)
+stl $2,28($30)
+ldl $4,8($1)
+ldl $2,12($1)
+stl $4,32($30)
+stl $2,36($30)
+mov $27,$1
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,40($30)
+stl $2,44($30)
+ldl $4,8($1)
+ldl $2,12($1)
+stl $4,48($30)
+stl $2,52($30)
+jsr $26,print
+ldgp $gp,0($26)
+mov $31,$0
+L.2:
+ldq $26,56($sp)
+lda $sp,128($sp)
+ret
+.end main
+.globl print
+.text
+.ent print
+print:
+ldgp $gp,0($27)
+lda $sp,-160($sp)
+.mask 0x4006000,-144
+.frame $sp,160,$26,96
+stq $13,0($sp)
+stq $14,8($sp)
+stq $26,16($sp)
+stq $16,112($sp)
+stq $17,120($sp)
+stt $f17,72($sp)
+stq $18,128($sp)
+stt $f18,80($sp)
+stq $19,136($sp)
+stt $f19,88($sp)
+stq $20,144($sp)
+stt $f20,96($sp)
+stq $21,152($sp)
+stt $f21,104($sp)
+.prologue 1
+lda $27,-48+160($sp)
+stq $27,-120+160($sp)
+lda $27,-40+160($sp)
+ldq $25,-120+160($sp)
+subq $27,$25,$27
+stl $27,-112+160($sp)
+br L.21
+L.18:
+ldq $27,-48+160($sp)
+ldb $27,($27)
+cmpeq $27,37,$23
+beq $23,L.22
+ldq $27,-48+160($sp)
+lda $27,1($27)
+stq $27,-48+160($sp)
+ldb $14,($27)
+lda $27,115
+cmpeq $14,$27,$23
+bne $23,L.74
+cmple $14,$27,$23
+beq $23,L.100
+L.99:
+lda $27,98
+cmplt $14,$27,$23
+bne $23,L.24
+lda $27,102
+cmple $14,$27,$23
+beq $23,L.24
+subl $14,98,$27
+sll $27,3,$27
+ldq $27,L.101($27)
+jmp ($27)
+.rdata
+.align 3
+L.101:
+.quad L.27
+.quad L.41
+.quad L.52
+.quad L.24
+.quad L.85
+.text
+L.100:
+lda $27,119
+cmpeq $14,$27,$23
+bne $23,L.63
+br L.24
+L.27:
+ldl $27,-112+160($sp)
+lda $27,16($27)
+stl $27,-112+160($sp)
+lda $27,-136+160($sp)
+ldl $25,-112+160($sp)
+ldq $22,-120+160($sp)
+addq $25,$22,$25
+lda $1,-16($25)
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,0($27)
+stl $2,4($27)
+ldl $4,8($1)
+ldl $2,12($1)
+stl $4,8($27)
+stl $2,12($27)
+lda $16,L.37
+ldl $17,-136+160($sp)
+ldl $18,-132+160($sp)
+ldl $19,-128+160($sp)
+ldl $20,-124+160($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+br L.23
+L.41:
+lda $16,L.42
+ldl $27,-112+160($sp)
+lda $27,8($27)
+stl $27,-112+160($sp)
+ldl $27,-112+160($sp)
+ldq $25,-120+160($sp)
+addq $27,$25,$27
+lda $27,-8($27)
+ldb $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+br L.23
+L.52:
+lda $16,L.53
+ldl $27,-112+160($sp)
+lda $27,8($27)
+stl $27,-112+160($sp)
+ldl $27,-112+160($sp)
+ldq $25,-120+160($sp)
+addq $27,$25,$27
+ldl $17,-8($27)
+jsr $26,printf
+ldgp $gp,0($26)
+br L.23
+L.63:
+lda $16,L.64
+ldl $27,-112+160($sp)
+lda $27,8($27)
+stl $27,-112+160($sp)
+ldl $27,-112+160($sp)
+ldq $25,-120+160($sp)
+addq $27,$25,$27
+lda $27,-8($27)
+ldw $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+br L.23
+L.74:
+lda $16,L.75
+ldl $27,-112+160($sp)
+lda $27,8($27)
+stl $27,-112+160($sp)
+ldl $27,-112+160($sp)
+ldq $25,-120+160($sp)
+addq $27,$25,$27
+ldq $17,-8($27)
+jsr $26,printf
+ldgp $gp,0($26)
+br L.23
+L.85:
+lda $16,L.86
+ldl $27,-112+160($sp)
+lda $27,8($27)
+stl $27,-112+160($sp)
+ldl $27,-112+160($sp)
+cmple $27,48,$23
+beq $23,L.97
+ldl $27,-112+160($sp)
+ldq $25,-120+160($sp)
+addq $27,$25,$27
+lda $13,-56($27)
+br L.98
+L.97:
+ldl $27,-112+160($sp)
+ldq $25,-120+160($sp)
+addq $27,$25,$27
+lda $13,-8($27)
+L.98:
+ldt $f17,($13)
+jsr $26,printf
+ldgp $gp,0($26)
+br L.23
+L.24:
+lda $16,L.42
+ldq $27,-48+160($sp)
+ldb $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+br L.23
+L.22:
+lda $16,L.42
+ldq $27,-48+160($sp)
+ldb $17,($27)
+jsr $26,printf
+ldgp $gp,0($26)
+L.23:
+L.19:
+ldq $27,-48+160($sp)
+lda $27,1($27)
+stq $27,-48+160($sp)
+L.21:
+ldq $27,-48+160($sp)
+ldb $27,($27)
+cmpeq $27,$31,$23
+beq $23,L.18
+mov $31,$0
+L.13:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $26,16($sp)
+lda $sp,160($sp)
+ret
+.end print
+.rdata
+.align 0
+L.86:
+.byte 37
+.byte 102
+.byte 0
+.align 0
+L.75:
+.byte 37
+.byte 115
+.byte 0
+.align 0
+L.64:
+.byte 37
+.byte 120
+.byte 0
+.align 0
+L.53:
+.byte 37
+.byte 100
+.byte 0
+.align 0
+L.42:
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.37:
+.byte 123
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 125
+.byte 0
+.align 0
+L.12:
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 10
+.byte 0
+.align 3
+L.11:
+.long 0x0
+.long 0x40140000
+.align 0
+L.10:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 32
+.byte 37
+.byte 102
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.9:
+.byte 115
+.byte 116
+.byte 0
+.align 0
+L.8:
+.byte 116
+.byte 101
+.byte 0
+.align 0
+L.7:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 32
+.byte 37
+.byte 119
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.6:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 100
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.5:
+.byte 50
+.byte 0
+.align 0
+L.4:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.3:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 49
+.byte 10
+.byte 0
diff --git a/lcc/alpha/osf/tst/struct.1bk b/lcc/alpha/osf/tst/struct.1bk
index 2358779..807f3da 100755
--- a/lcc/alpha/osf/tst/struct.1bk
+++ b/lcc/alpha/osf/tst/struct.1bk
@@ -1,5 +1,5 @@
-(-1,-1) is not within [10,10; 310,310]
-(1,1) is not within [10,10; 310,310]
-(20,300) is within [10,10; 310,310]
-(500,400) is not within [10,10; 310,310]
-ab
+(-1,-1) is not within [10,10; 310,310]
+(1,1) is not within [10,10; 310,310]
+(20,300) is within [10,10; 310,310]
+(500,400) is not within [10,10; 310,310]
+ab
diff --git a/lcc/alpha/osf/tst/struct.2bk b/lcc/alpha/osf/tst/struct.2bk
index 8a01bb1..cb0fbd0 100755
--- a/lcc/alpha/osf/tst/struct.2bk
+++ b/lcc/alpha/osf/tst/struct.2bk
@@ -1,2 +1,2 @@
-tst/struct.c:49: warning: missing return value
-tst/struct.c:68: warning: missing return value
+tst/struct.c:49: warning: missing return value
+tst/struct.c:68: warning: missing return value
diff --git a/lcc/alpha/osf/tst/struct.sbk b/lcc/alpha/osf/tst/struct.sbk
index 5fd21f4..9dac672 100755
--- a/lcc/alpha/osf/tst/struct.sbk
+++ b/lcc/alpha/osf/tst/struct.sbk
@@ -1,443 +1,443 @@
-.globl addpoint
-.text
-.text
-.ent addpoint
-addpoint:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-stq $17,24($sp)
-stq $18,32($sp)
-.prologue 1
-ldl $27,-40+64($sp)
-ldl $25,-32+64($sp)
-addl $27,$25,$27
-stl $27,-40+64($sp)
-ldl $27,-36+64($sp)
-ldl $25,-28+64($sp)
-addl $27,$25,$27
-stl $27,-36+64($sp)
-lda $1,-40+64($sp)
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,0($16)
-stl $2,4($16)
-L.1:
-lda $sp,64($sp)
-ret
-.end addpoint
-.globl canonrect
-.text
-.ent canonrect
-canonrect:
-ldgp $gp,0($27)
-lda $sp,-112($sp)
-.mask 0x4007800,-80
-.frame $sp,112,$26,48
-stq $11,0($sp)
-stq $12,8($sp)
-stq $13,16($sp)
-stq $14,24($sp)
-stq $26,32($sp)
-stq $17,72($sp)
-stq $18,80($sp)
-.prologue 1
-ldl $27,-40+112($sp)
-ldl $25,-32+112($sp)
-cmplt $27,$25,$23
-beq $23,L.10
-ldl $14,-40+112($sp)
-br L.11
-L.10:
-ldl $14,-32+112($sp)
-L.11:
-stl $14,-72+112($sp)
-ldl $27,-36+112($sp)
-ldl $25,-28+112($sp)
-cmplt $27,$25,$23
-beq $23,L.20
-ldl $13,-36+112($sp)
-br L.21
-L.20:
-ldl $13,-28+112($sp)
-L.21:
-stl $13,-68+112($sp)
-ldl $27,-40+112($sp)
-ldl $25,-32+112($sp)
-cmple $27,$25,$23
-bne $23,L.26
-ldl $12,-40+112($sp)
-br L.27
-L.26:
-ldl $12,-32+112($sp)
-L.27:
-stl $12,-64+112($sp)
-ldl $27,-36+112($sp)
-ldl $25,-28+112($sp)
-cmple $27,$25,$23
-bne $23,L.37
-ldl $11,-36+112($sp)
-br L.38
-L.37:
-ldl $11,-28+112($sp)
-L.38:
-stl $11,-60+112($sp)
-lda $1,-72+112($sp)
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,0($16)
-stl $2,4($16)
-ldl $4,8($1)
-ldl $2,12($1)
-stl $4,8($16)
-stl $2,12($16)
-L.5:
-ldq $11,0($sp)
-ldq $12,8($sp)
-ldq $13,16($sp)
-ldq $14,24($sp)
-ldq $26,32($sp)
-lda $sp,112($sp)
-ret
-.end canonrect
-.globl makepoint
-.text
-.ent makepoint
-makepoint:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-stl $17,-64+64($sp)
-stl $18,-60+64($sp)
-lda $1,-64+64($sp)
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,0($16)
-stl $2,4($16)
-L.39:
-lda $sp,64($sp)
-ret
-.end makepoint
-.globl makerect
-.text
-.ent makerect
-makerect:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4000000,-80
-.frame $sp,80,$26,48
-stq $26,0($sp)
-stq $16,32($sp)
-stq $17,40($sp)
-stq $18,48($sp)
-.prologue 1
-lda $27,-72+80($sp)
-lda $1,-40+80($sp)
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,0($27)
-stl $2,4($27)
-lda $27,-64+80($sp)
-lda $1,-32+80($sp)
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,0($27)
-stl $2,4($27)
-ldq $16,-48+80($sp)
-lda $1,-72+80($sp)
-uldq $17,0($1)
-uldq $18,8($1)
-jsr $26,canonrect
-ldgp $gp,0($26)
-L.42:
-ldq $26,0($sp)
-lda $sp,80($sp)
-ret
-.end makerect
-.globl ptinrect
-.text
-.ent ptinrect
-ptinrect:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-stq $16,32($sp)
-stq $17,40($sp)
-stq $18,48($sp)
-.prologue 1
-ldl $27,-48+80($sp)
-ldl $25,-40+80($sp)
-cmplt $27,$25,$23
-bne $23,L.53
-ldl $25,-32+80($sp)
-cmplt $27,$25,$23
-beq $23,L.53
-ldl $27,-44+80($sp)
-ldl $25,-36+80($sp)
-cmplt $27,$25,$23
-bne $23,L.53
-ldl $27,-44+80($sp)
-ldl $25,-28+80($sp)
-cmplt $27,$25,$23
-beq $23,L.53
-lda $14,1
-br L.54
-L.53:
-mov $31,$14
-L.54:
-mov $14,$0
-L.45:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end ptinrect
-.sdata
-.globl y
-.align 0
-y:
-.byte 97
-.byte 98
-.byte 0
-.globl odd
-.text
-.text
-.ent odd
-odd:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4000000,-80
-.frame $sp,80,$26,48
-stq $26,0($sp)
-stq $16,32($sp)
-.prologue 1
-lda $27,-59+80($sp)
-lda $1,-48+80($sp)
-ldb $4,0($1)
-ldb $2,1($1)
-stb $4,0($27)
-stb $2,1($27)
-ldb $4,2($1)
-stb $4,2($27)
-lda $16,L.56
-lda $17,-59+80($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.55:
-ldq $26,0($sp)
-lda $sp,80($sp)
-ret
-.end odd
-.rdata
-.align 2
-L.58:
-.long 0x0
-.long 0x0
-.align 2
-L.59:
-.long 0x140
-.long 0x140
-.align 2
-L.60:
-.long 0xffffffff
-.long 0xffffffff
-.long 0x1
-.long 0x1
-.long 0x14
-.long 0x12c
-.long 0x1f4
-.long 0x190
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-176($sp)
-.mask 0x4004000,-168
-.frame $sp,176,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-lda $27,-120+176($sp)
-lda $1,L.58
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,0($27)
-stl $2,4($27)
-lda $27,-128+176($sp)
-lda $1,L.59
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,0($27)
-stl $2,4($27)
-lda $27,-88+176($sp)
-lda $1,L.60
-addq $1,32,$1
-addq $27,32,$3
-L.76:
-addq $1,-8,$1
-addq $3,-8,$3
-ldl $4,0($1)
-ldl $2,4($1)
-stl $4,0($3)
-stl $2,4($3)
-cmpult $27,$3,$23
-bne $23,L.76
-lda $16,-136+176($sp)
-lda $27,-10
-mov $27,$17
-mov $27,$18
-jsr $26,makepoint
-ldgp $gp,0($26)
-lda $16,-144+176($sp)
-lda $1,-128+176($sp)
-uldq $17,0($1)
-lda $1,-136+176($sp)
-uldq $18,0($1)
-jsr $26,addpoint
-ldgp $gp,0($26)
-lda $16,-152+176($sp)
-lda $27,10
-mov $27,$17
-mov $27,$18
-jsr $26,makepoint
-ldgp $gp,0($26)
-lda $16,-160+176($sp)
-lda $1,-120+176($sp)
-uldq $17,0($1)
-lda $1,-152+176($sp)
-uldq $18,0($1)
-jsr $26,addpoint
-ldgp $gp,0($26)
-lda $16,-104+176($sp)
-lda $1,-144+176($sp)
-uldq $17,0($1)
-lda $1,-160+176($sp)
-uldq $18,0($1)
-jsr $26,makerect
-ldgp $gp,0($26)
-mov $31,$14
-br L.64
-L.61:
-lda $16,-112+176($sp)
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-lda $25,-88+176($sp)
-addq $27,$25,$25
-ldl $17,($25)
-lda $25,-84+176($sp)
-addq $27,$25,$27
-ldl $18,($27)
-jsr $26,makepoint
-ldgp $gp,0($26)
-lda $16,L.65
-sll $14,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,3,$27
-lda $25,-88+176($sp)
-addq $27,$25,$27
-ldl $17,($27)
-ldl $18,-108+176($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-lda $1,-112+176($sp)
-uldq $16,0($1)
-lda $1,-104+176($sp)
-uldq $17,0($1)
-uldq $18,8($1)
-jsr $26,ptinrect
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-beq $23,L.68
-lda $16,L.70
-jsr $26,printf
-ldgp $gp,0($26)
-L.68:
-lda $16,L.71
-ldl $17,-104+176($sp)
-ldl $18,-100+176($sp)
-ldl $19,-96+176($sp)
-ldl $20,-92+176($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-L.62:
-lda $14,1($14)
-L.64:
-mov $14,$27
-lda $25,4
-cmpult $27,$25,$23
-bne $23,L.61
-lda $1,y
-uldq $16,0($1)
-jsr $26,odd
-ldgp $gp,0($26)
-mov $31,$16
-jsr $26,exit
-ldgp $gp,0($26)
-mov $31,$0
-L.57:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,176($sp)
-ret
-.end main
-.rdata
-.align 0
-L.71:
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 105
-.byte 110
-.byte 32
-.byte 91
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 59
-.byte 32
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 93
-.byte 10
-.byte 0
-.align 0
-L.70:
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 0
-.align 0
-L.65:
-.byte 40
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 0
-.align 0
-L.56:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
+.globl addpoint
+.text
+.text
+.ent addpoint
+addpoint:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+stq $17,24($sp)
+stq $18,32($sp)
+.prologue 1
+ldl $27,-40+64($sp)
+ldl $25,-32+64($sp)
+addl $27,$25,$27
+stl $27,-40+64($sp)
+ldl $27,-36+64($sp)
+ldl $25,-28+64($sp)
+addl $27,$25,$27
+stl $27,-36+64($sp)
+lda $1,-40+64($sp)
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,0($16)
+stl $2,4($16)
+L.1:
+lda $sp,64($sp)
+ret
+.end addpoint
+.globl canonrect
+.text
+.ent canonrect
+canonrect:
+ldgp $gp,0($27)
+lda $sp,-112($sp)
+.mask 0x4007800,-80
+.frame $sp,112,$26,48
+stq $11,0($sp)
+stq $12,8($sp)
+stq $13,16($sp)
+stq $14,24($sp)
+stq $26,32($sp)
+stq $17,72($sp)
+stq $18,80($sp)
+.prologue 1
+ldl $27,-40+112($sp)
+ldl $25,-32+112($sp)
+cmplt $27,$25,$23
+beq $23,L.10
+ldl $14,-40+112($sp)
+br L.11
+L.10:
+ldl $14,-32+112($sp)
+L.11:
+stl $14,-72+112($sp)
+ldl $27,-36+112($sp)
+ldl $25,-28+112($sp)
+cmplt $27,$25,$23
+beq $23,L.20
+ldl $13,-36+112($sp)
+br L.21
+L.20:
+ldl $13,-28+112($sp)
+L.21:
+stl $13,-68+112($sp)
+ldl $27,-40+112($sp)
+ldl $25,-32+112($sp)
+cmple $27,$25,$23
+bne $23,L.26
+ldl $12,-40+112($sp)
+br L.27
+L.26:
+ldl $12,-32+112($sp)
+L.27:
+stl $12,-64+112($sp)
+ldl $27,-36+112($sp)
+ldl $25,-28+112($sp)
+cmple $27,$25,$23
+bne $23,L.37
+ldl $11,-36+112($sp)
+br L.38
+L.37:
+ldl $11,-28+112($sp)
+L.38:
+stl $11,-60+112($sp)
+lda $1,-72+112($sp)
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,0($16)
+stl $2,4($16)
+ldl $4,8($1)
+ldl $2,12($1)
+stl $4,8($16)
+stl $2,12($16)
+L.5:
+ldq $11,0($sp)
+ldq $12,8($sp)
+ldq $13,16($sp)
+ldq $14,24($sp)
+ldq $26,32($sp)
+lda $sp,112($sp)
+ret
+.end canonrect
+.globl makepoint
+.text
+.ent makepoint
+makepoint:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+stl $17,-64+64($sp)
+stl $18,-60+64($sp)
+lda $1,-64+64($sp)
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,0($16)
+stl $2,4($16)
+L.39:
+lda $sp,64($sp)
+ret
+.end makepoint
+.globl makerect
+.text
+.ent makerect
+makerect:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4000000,-80
+.frame $sp,80,$26,48
+stq $26,0($sp)
+stq $16,32($sp)
+stq $17,40($sp)
+stq $18,48($sp)
+.prologue 1
+lda $27,-72+80($sp)
+lda $1,-40+80($sp)
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,0($27)
+stl $2,4($27)
+lda $27,-64+80($sp)
+lda $1,-32+80($sp)
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,0($27)
+stl $2,4($27)
+ldq $16,-48+80($sp)
+lda $1,-72+80($sp)
+uldq $17,0($1)
+uldq $18,8($1)
+jsr $26,canonrect
+ldgp $gp,0($26)
+L.42:
+ldq $26,0($sp)
+lda $sp,80($sp)
+ret
+.end makerect
+.globl ptinrect
+.text
+.ent ptinrect
+ptinrect:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+stq $16,32($sp)
+stq $17,40($sp)
+stq $18,48($sp)
+.prologue 1
+ldl $27,-48+80($sp)
+ldl $25,-40+80($sp)
+cmplt $27,$25,$23
+bne $23,L.53
+ldl $25,-32+80($sp)
+cmplt $27,$25,$23
+beq $23,L.53
+ldl $27,-44+80($sp)
+ldl $25,-36+80($sp)
+cmplt $27,$25,$23
+bne $23,L.53
+ldl $27,-44+80($sp)
+ldl $25,-28+80($sp)
+cmplt $27,$25,$23
+beq $23,L.53
+lda $14,1
+br L.54
+L.53:
+mov $31,$14
+L.54:
+mov $14,$0
+L.45:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end ptinrect
+.sdata
+.globl y
+.align 0
+y:
+.byte 97
+.byte 98
+.byte 0
+.globl odd
+.text
+.text
+.ent odd
+odd:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4000000,-80
+.frame $sp,80,$26,48
+stq $26,0($sp)
+stq $16,32($sp)
+.prologue 1
+lda $27,-59+80($sp)
+lda $1,-48+80($sp)
+ldb $4,0($1)
+ldb $2,1($1)
+stb $4,0($27)
+stb $2,1($27)
+ldb $4,2($1)
+stb $4,2($27)
+lda $16,L.56
+lda $17,-59+80($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.55:
+ldq $26,0($sp)
+lda $sp,80($sp)
+ret
+.end odd
+.rdata
+.align 2
+L.58:
+.long 0x0
+.long 0x0
+.align 2
+L.59:
+.long 0x140
+.long 0x140
+.align 2
+L.60:
+.long 0xffffffff
+.long 0xffffffff
+.long 0x1
+.long 0x1
+.long 0x14
+.long 0x12c
+.long 0x1f4
+.long 0x190
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-176($sp)
+.mask 0x4004000,-168
+.frame $sp,176,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+lda $27,-120+176($sp)
+lda $1,L.58
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,0($27)
+stl $2,4($27)
+lda $27,-128+176($sp)
+lda $1,L.59
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,0($27)
+stl $2,4($27)
+lda $27,-88+176($sp)
+lda $1,L.60
+addq $1,32,$1
+addq $27,32,$3
+L.76:
+addq $1,-8,$1
+addq $3,-8,$3
+ldl $4,0($1)
+ldl $2,4($1)
+stl $4,0($3)
+stl $2,4($3)
+cmpult $27,$3,$23
+bne $23,L.76
+lda $16,-136+176($sp)
+lda $27,-10
+mov $27,$17
+mov $27,$18
+jsr $26,makepoint
+ldgp $gp,0($26)
+lda $16,-144+176($sp)
+lda $1,-128+176($sp)
+uldq $17,0($1)
+lda $1,-136+176($sp)
+uldq $18,0($1)
+jsr $26,addpoint
+ldgp $gp,0($26)
+lda $16,-152+176($sp)
+lda $27,10
+mov $27,$17
+mov $27,$18
+jsr $26,makepoint
+ldgp $gp,0($26)
+lda $16,-160+176($sp)
+lda $1,-120+176($sp)
+uldq $17,0($1)
+lda $1,-152+176($sp)
+uldq $18,0($1)
+jsr $26,addpoint
+ldgp $gp,0($26)
+lda $16,-104+176($sp)
+lda $1,-144+176($sp)
+uldq $17,0($1)
+lda $1,-160+176($sp)
+uldq $18,0($1)
+jsr $26,makerect
+ldgp $gp,0($26)
+mov $31,$14
+br L.64
+L.61:
+lda $16,-112+176($sp)
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+lda $25,-88+176($sp)
+addq $27,$25,$25
+ldl $17,($25)
+lda $25,-84+176($sp)
+addq $27,$25,$27
+ldl $18,($27)
+jsr $26,makepoint
+ldgp $gp,0($26)
+lda $16,L.65
+sll $14,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,3,$27
+lda $25,-88+176($sp)
+addq $27,$25,$27
+ldl $17,($27)
+ldl $18,-108+176($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+lda $1,-112+176($sp)
+uldq $16,0($1)
+lda $1,-104+176($sp)
+uldq $17,0($1)
+uldq $18,8($1)
+jsr $26,ptinrect
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+beq $23,L.68
+lda $16,L.70
+jsr $26,printf
+ldgp $gp,0($26)
+L.68:
+lda $16,L.71
+ldl $17,-104+176($sp)
+ldl $18,-100+176($sp)
+ldl $19,-96+176($sp)
+ldl $20,-92+176($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+L.62:
+lda $14,1($14)
+L.64:
+mov $14,$27
+lda $25,4
+cmpult $27,$25,$23
+bne $23,L.61
+lda $1,y
+uldq $16,0($1)
+jsr $26,odd
+ldgp $gp,0($26)
+mov $31,$16
+jsr $26,exit
+ldgp $gp,0($26)
+mov $31,$0
+L.57:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,176($sp)
+ret
+.end main
+.rdata
+.align 0
+L.71:
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 105
+.byte 110
+.byte 32
+.byte 91
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 59
+.byte 32
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 93
+.byte 10
+.byte 0
+.align 0
+L.70:
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 0
+.align 0
+L.65:
+.byte 40
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 0
+.align 0
+L.56:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
diff --git a/lcc/alpha/osf/tst/switch.1bk b/lcc/alpha/osf/tst/switch.1bk
index 559e8e3..de46a73 100755
--- a/lcc/alpha/osf/tst/switch.1bk
+++ b/lcc/alpha/osf/tst/switch.1bk
@@ -1,76 +1,76 @@
-b = 0x8
-f = 0xc
-n = 0xa
-r = 0xd
-t = 0x9
-v = 0xb
-x = 0x78
-f:
-x = 0
-x = 1
-x = 2
-x = 2
-x = 2
-x = 2
-x = 2
-x = 7
-x = 8
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 16
-x = 17
-x = 18
-x = 19
-x = 20
-g:
-1 1
-1 2
-2 3
-2 4
-2 5
-3 6
-d 6
-3 7
-d 7
-3 8
-d 8
-d 9
-d 10
-h:
-i = 8
-i = 16
-i = 120
-i = 128
-i = 248
-i = 264
-i = 272
-i = 280
-i = 288
-i = 296
-i = 304
-i = 312
-488 defaults
-x = 0x1000000
-x = 0x2000000
-x = 0x3000000
-x = 0x4000000
-x = 0x5000000
-x = 0x6000000 (default)
-x = 0x7000000 (default)
-0
-1
-2
-3
-4
-5
-0
-1
-2
-3
-4
-5
+b = 0x8
+f = 0xc
+n = 0xa
+r = 0xd
+t = 0x9
+v = 0xb
+x = 0x78
+f:
+x = 0
+x = 1
+x = 2
+x = 2
+x = 2
+x = 2
+x = 2
+x = 7
+x = 8
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 16
+x = 17
+x = 18
+x = 19
+x = 20
+g:
+1 1
+1 2
+2 3
+2 4
+2 5
+3 6
+d 6
+3 7
+d 7
+3 8
+d 8
+d 9
+d 10
+h:
+i = 8
+i = 16
+i = 120
+i = 128
+i = 248
+i = 264
+i = 272
+i = 280
+i = 288
+i = 296
+i = 304
+i = 312
+488 defaults
+x = 0x1000000
+x = 0x2000000
+x = 0x3000000
+x = 0x4000000
+x = 0x5000000
+x = 0x6000000 (default)
+x = 0x7000000 (default)
+0
+1
+2
+3
+4
+5
+0
+1
+2
+3
+4
+5
diff --git a/lcc/alpha/osf/tst/switch.2bk b/lcc/alpha/osf/tst/switch.2bk
index ee469b4..6dee58e 100755
--- a/lcc/alpha/osf/tst/switch.2bk
+++ b/lcc/alpha/osf/tst/switch.2bk
@@ -1,7 +1,7 @@
-tst/switch.c:55: warning: missing return value
-tst/switch.c:73: warning: missing return value
-tst/switch.c:97: warning: missing return value
-tst/switch.c:101: warning: overflow in converting constant expression from `int' to `unsigned int'
-tst/switch.c:102: warning: overflow in converting constant expression from `int' to `unsigned int'
-tst/switch.c:112: warning: missing return value
-tst/switch.c:137: warning: missing return value
+tst/switch.c:55: warning: missing return value
+tst/switch.c:73: warning: missing return value
+tst/switch.c:97: warning: missing return value
+tst/switch.c:101: warning: overflow in converting constant expression from `int' to `unsigned int'
+tst/switch.c:102: warning: overflow in converting constant expression from `int' to `unsigned int'
+tst/switch.c:112: warning: missing return value
+tst/switch.c:137: warning: missing return value
diff --git a/lcc/alpha/osf/tst/switch.sbk b/lcc/alpha/osf/tst/switch.sbk
index ec8a537..3ac6382 100755
--- a/lcc/alpha/osf/tst/switch.sbk
+++ b/lcc/alpha/osf/tst/switch.sbk
@@ -1,903 +1,903 @@
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4006000,-64
-.frame $sp,80,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $26,16($sp)
-.prologue 1
-lda $14,L.6
-br L.5
-L.2:
-ldb $16,($14)
-jsr $26,backslash
-ldgp $gp,0($26)
-mov $0,$27
-lda $16,L.7
-ldb $17,($14)
-mov $27,$18
-jsr $26,printf
-ldgp $gp,0($26)
-L.3:
-lda $14,1($14)
-L.5:
-ldb $27,($14)
-cmpeq $27,$31,$23
-beq $23,L.2
-jsr $26,f
-ldgp $gp,0($26)
-jsr $26,g
-ldgp $gp,0($26)
-jsr $26,h
-ldgp $gp,0($26)
-lda $13,16777216
-br L.11
-L.8:
-mov $13,$16
-jsr $26,big
-ldgp $gp,0($26)
-L.9:
-lda $13,16777216($13)
-L.11:
-and $13,117440512,$27
-addl $27,0,$27
-cmpeq $27,$31,$23
-beq $23,L.8
-jsr $26,limit
-ldgp $gp,0($26)
-mov $31,$0
-L.1:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end main
-.globl backslash
-.text
-.ent backslash
-backslash:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-lda $27,102
-cmpeq $16,$27,$23
-bne $23,L.16
-cmple $16,$27,$23
-beq $23,L.22
-L.21:
-lda $27,98
-cmpeq $16,$27,$23
-bne $23,L.15
-br L.13
-L.22:
-lda $27,110
-cmpeq $16,$27,$23
-bne $23,L.17
-cmplt $16,$27,$23
-bne $23,L.13
-L.23:
-lda $27,114
-cmpeq $16,$27,$23
-bne $23,L.18
-lda $27,116
-cmpeq $16,$27,$23
-bne $23,L.19
-lda $27,118
-cmpeq $16,$27,$23
-bne $23,L.20
-br L.13
-L.15:
-lda $0,8
-br L.12
-L.16:
-lda $0,12
-br L.12
-L.17:
-lda $0,10
-br L.12
-L.18:
-lda $0,13
-br L.12
-L.19:
-lda $0,9
-br L.12
-L.20:
-lda $0,11
-br L.12
-L.13:
-mov $16,$0
-L.12:
-lda $sp,64($sp)
-ret
-.end backslash
-.globl f
-.text
-.ent f
-f:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.mask 0x4007000,-72
-.frame $sp,96,$26,48
-stq $12,0($sp)
-stq $13,8($sp)
-stq $14,16($sp)
-stq $26,24($sp)
-.prologue 1
-mov $31,$13
-lda $16,L.25
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$14
-L.26:
-mov $14,$12
-cmplt $14,1,$23
-bne $23,L.30
-cmple $14,20,$23
-beq $23,L.30
-subl $14,1,$27
-sll $27,3,$27
-ldq $27,L.42($27)
-jmp ($27)
-.rdata
-.align 3
-L.42:
-.quad L.32
-.quad L.33
-.quad L.30
-.quad L.30
-.quad L.30
-.quad L.30
-.quad L.34
-.quad L.35
-.quad L.36
-.quad L.30
-.quad L.30
-.quad L.30
-.quad L.30
-.quad L.30
-.quad L.30
-.quad L.37
-.quad L.38
-.quad L.39
-.quad L.40
-.quad L.41
-.text
-L.32:
-mov $14,$13
-br L.31
-L.33:
-mov $14,$13
-br L.31
-L.34:
-mov $14,$13
-br L.31
-L.35:
-mov $14,$13
-br L.31
-L.36:
-mov $14,$13
-br L.31
-L.37:
-mov $14,$13
-br L.31
-L.38:
-mov $14,$13
-br L.31
-L.39:
-mov $14,$13
-br L.31
-L.40:
-mov $14,$13
-br L.31
-L.41:
-mov $14,$13
-L.30:
-L.31:
-lda $16,L.43
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.27:
-lda $14,1($14)
-cmple $14,20,$23
-bne $23,L.26
-mov $31,$0
-L.24:
-ldq $12,0($sp)
-ldq $13,8($sp)
-ldq $14,16($sp)
-ldq $26,24($sp)
-lda $sp,96($sp)
-ret
-.end f
-.globl g
-.text
-.ent g
-g:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-lda $16,L.45
-jsr $26,printf
-ldgp $gp,0($26)
-lda $14,1
-L.46:
-lda $27,1001
-cmplt $14,$27,$23
-bne $23,L.63
-lda $27,1004
-cmple $14,$27,$23
-beq $23,L.64
-subl $14,1001,$27
-sll $27,3,$27
-ldq $27,L.65($27)
-jmp ($27)
-.rdata
-.align 3
-L.65:
-.quad L.59
-.quad L.59
-.quad L.59
-.quad L.59
-.text
-L.63:
-cmplt $14,1,$23
-bne $23,L.50
-cmple $14,8,$23
-beq $23,L.50
-subl $14,1,$27
-sll $27,3,$27
-ldq $27,L.66($27)
-jmp ($27)
-.rdata
-.align 3
-L.66:
-.quad L.52
-.quad L.52
-.quad L.54
-.quad L.54
-.quad L.54
-.quad L.56
-.quad L.56
-.quad L.56
-.text
-L.64:
-lda $27,3001
-cmplt $14,$27,$23
-bne $23,L.50
-lda $27,3004
-cmple $14,$27,$23
-beq $23,L.50
-subl $14,3001,$27
-sll $27,3,$27
-ldq $27,L.67($27)
-jmp ($27)
-.rdata
-.align 3
-L.67:
-.quad L.61
-.quad L.61
-.quad L.61
-.quad L.61
-.text
-L.52:
-lda $16,L.53
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.51
-L.54:
-lda $16,L.55
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.51
-L.56:
-lda $16,L.57
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.50:
-lda $16,L.58
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.51
-L.59:
-lda $16,L.60
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.51
-L.61:
-lda $16,L.62
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.51:
-L.47:
-lda $14,1($14)
-cmple $14,10,$23
-bne $23,L.46
-mov $31,$0
-L.44:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end g
-.globl h
-.text
-.ent h
-h:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4006000,-64
-.frame $sp,80,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $26,16($sp)
-.prologue 1
-mov $31,$13
-lda $16,L.69
-jsr $26,printf
-ldgp $gp,0($26)
-lda $14,1
-L.70:
-lda $27,264
-cmpeq $14,$27,$23
-bne $23,L.82
-cmple $14,$27,$23
-beq $23,L.90
-L.89:
-lda $27,120
-cmpeq $14,$27,$23
-bne $23,L.80
-cmple $14,$27,$23
-beq $23,L.92
-L.91:
-cmpeq $14,8,$23
-bne $23,L.79
-cmplt $14,8,$23
-bne $23,L.74
-L.93:
-cmpeq $14,16,$23
-bne $23,L.78
-br L.74
-L.92:
-lda $27,128
-cmpeq $14,$27,$23
-bne $23,L.76
-cmplt $14,$27,$23
-bne $23,L.74
-L.94:
-lda $27,248
-cmpeq $14,$27,$23
-bne $23,L.83
-br L.74
-L.90:
-lda $27,288
-cmpeq $14,$27,$23
-bne $23,L.87
-cmple $14,$27,$23
-beq $23,L.96
-L.95:
-lda $27,272
-cmpeq $14,$27,$23
-bne $23,L.84
-cmplt $14,$27,$23
-bne $23,L.74
-L.97:
-lda $27,280
-cmpeq $14,$27,$23
-bne $23,L.81
-br L.74
-L.96:
-lda $27,304
-cmpeq $14,$27,$23
-bne $23,L.85
-cmple $14,$27,$23
-beq $23,L.99
-L.98:
-lda $27,296
-cmpeq $14,$27,$23
-bne $23,L.86
-br L.74
-L.99:
-lda $27,312
-cmpeq $14,$27,$23
-bne $23,L.88
-br L.74
-L.74:
-lda $13,1($13)
-br L.71
-L.76:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.78:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.79:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.80:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.81:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.82:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.83:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.84:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.85:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.86:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.87:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.75
-L.88:
-lda $16,L.77
-mov $14,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.75:
-L.71:
-lda $14,1($14)
-lda $27,500
-cmple $14,$27,$23
-bne $23,L.70
-lda $16,L.100
-mov $13,$17
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.68:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $26,16($sp)
-lda $sp,80($sp)
-ret
-.end h
-.globl big
-.text
-.ent big
-big:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-stq $16,32($sp)
-.prologue 1
-ldl $27,-48+80($sp)
-zap $27,240,$27
-and $27,0x6000000,$14
-lda $25,33554432
-cmpeq $14,$25,$23
-bne $23,L.107
-cmple $14,$25,$23
-beq $23,L.111
-L.110:
-lda $25,-2
-cmpeq $14,$25,$23
-bne $23,L.105
-lda $25,-1
-cmpeq $14,$25,$23
-bne $23,L.105
-cmpeq $14,$31,$23
-bne $23,L.105
-br L.102
-L.111:
-mov $14,$27
-lda $25,67108864
-cmpeq $27,$25,$23
-bne $23,L.108
-br L.102
-L.105:
-lda $16,L.106
-ldl $17,-48+80($sp)
-zap $17,240,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.103
-L.107:
-lda $16,L.106
-ldl $17,-48+80($sp)
-zap $17,240,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.103
-L.108:
-lda $16,L.106
-ldl $17,-48+80($sp)
-zap $17,240,$17
-jsr $26,printf
-ldgp $gp,0($26)
-br L.103
-L.102:
-lda $16,L.109
-ldl $17,-48+80($sp)
-zap $17,240,$17
-jsr $26,printf
-ldgp $gp,0($26)
-L.103:
-mov $31,$0
-L.101:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end big
-.globl limit
-.text
-.ent limit
-limit:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-lda $14,-2147483648
-L.113:
-lda $27,-2147483648
-cmplt $14,$27,$23
-bne $23,L.117
-lda $27,-2147483644
-cmple $14,$27,$23
-beq $23,L.117
-subl $14,-2147483648,$27
-sll $27,3,$27
-ldq $27,L.130($27)
-jmp ($27)
-.rdata
-.align 3
-L.130:
-.quad L.119
-.quad L.121
-.quad L.123
-.quad L.125
-.quad L.127
-.text
-L.119:
-lda $16,L.120
-jsr $26,printf
-ldgp $gp,0($26)
-br L.118
-L.121:
-lda $16,L.122
-jsr $26,printf
-ldgp $gp,0($26)
-br L.118
-L.123:
-lda $16,L.124
-jsr $26,printf
-ldgp $gp,0($26)
-br L.118
-L.125:
-lda $16,L.126
-jsr $26,printf
-ldgp $gp,0($26)
-br L.118
-L.127:
-lda $16,L.128
-jsr $26,printf
-ldgp $gp,0($26)
-br L.118
-L.117:
-lda $16,L.129
-jsr $26,printf
-ldgp $gp,0($26)
-L.118:
-L.114:
-lda $14,1($14)
-lda $27,-2147483643
-cmple $14,$27,$23
-bne $23,L.113
-lda $14,2147483647
-L.131:
-lda $27,2147483643
-cmplt $14,$27,$23
-bne $23,L.135
-lda $27,2147483647
-cmple $14,$27,$23
-beq $23,L.135
-subl $14,2147483643,$27
-sll $27,3,$27
-ldq $27,L.142($27)
-jmp ($27)
-.rdata
-.align 3
-L.142:
-.quad L.141
-.quad L.140
-.quad L.139
-.quad L.138
-.quad L.137
-.text
-L.137:
-lda $16,L.120
-jsr $26,printf
-ldgp $gp,0($26)
-br L.136
-L.138:
-lda $16,L.122
-jsr $26,printf
-ldgp $gp,0($26)
-br L.136
-L.139:
-lda $16,L.124
-jsr $26,printf
-ldgp $gp,0($26)
-br L.136
-L.140:
-lda $16,L.126
-jsr $26,printf
-ldgp $gp,0($26)
-br L.136
-L.141:
-lda $16,L.128
-jsr $26,printf
-ldgp $gp,0($26)
-br L.136
-L.135:
-lda $16,L.129
-jsr $26,printf
-ldgp $gp,0($26)
-L.136:
-L.132:
-subl $14,1,$14
-lda $27,2147483642
-cmplt $14,$27,$23
-beq $23,L.131
-mov $31,$0
-L.112:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end limit
-.rdata
-.align 0
-L.129:
-.byte 53
-.byte 10
-.byte 0
-.align 0
-L.128:
-.byte 52
-.byte 10
-.byte 0
-.align 0
-L.126:
-.byte 51
-.byte 10
-.byte 0
-.align 0
-L.124:
-.byte 50
-.byte 10
-.byte 0
-.align 0
-L.122:
-.byte 49
-.byte 10
-.byte 0
-.align 0
-L.120:
-.byte 48
-.byte 10
-.byte 0
-.align 0
-L.109:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 32
-.byte 40
-.byte 100
-.byte 101
-.byte 102
-.byte 97
-.byte 117
-.byte 108
-.byte 116
-.byte 41
-.byte 10
-.byte 0
-.align 0
-L.106:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 0
-L.100:
-.byte 37
-.byte 100
-.byte 32
-.byte 100
-.byte 101
-.byte 102
-.byte 97
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.77:
-.byte 105
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.69:
-.byte 104
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.62:
-.byte 54
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.60:
-.byte 53
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.58:
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.57:
-.byte 51
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.55:
-.byte 50
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.53:
-.byte 49
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.45:
-.byte 103
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.43:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.25:
-.byte 102
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.7:
-.byte 37
-.byte 99
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 0
-L.6:
-.byte 98
-.byte 102
-.byte 110
-.byte 114
-.byte 116
-.byte 118
-.byte 120
-.byte 0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4006000,-64
+.frame $sp,80,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $26,16($sp)
+.prologue 1
+lda $14,L.6
+br L.5
+L.2:
+ldb $16,($14)
+jsr $26,backslash
+ldgp $gp,0($26)
+mov $0,$27
+lda $16,L.7
+ldb $17,($14)
+mov $27,$18
+jsr $26,printf
+ldgp $gp,0($26)
+L.3:
+lda $14,1($14)
+L.5:
+ldb $27,($14)
+cmpeq $27,$31,$23
+beq $23,L.2
+jsr $26,f
+ldgp $gp,0($26)
+jsr $26,g
+ldgp $gp,0($26)
+jsr $26,h
+ldgp $gp,0($26)
+lda $13,16777216
+br L.11
+L.8:
+mov $13,$16
+jsr $26,big
+ldgp $gp,0($26)
+L.9:
+lda $13,16777216($13)
+L.11:
+and $13,117440512,$27
+addl $27,0,$27
+cmpeq $27,$31,$23
+beq $23,L.8
+jsr $26,limit
+ldgp $gp,0($26)
+mov $31,$0
+L.1:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end main
+.globl backslash
+.text
+.ent backslash
+backslash:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+lda $27,102
+cmpeq $16,$27,$23
+bne $23,L.16
+cmple $16,$27,$23
+beq $23,L.22
+L.21:
+lda $27,98
+cmpeq $16,$27,$23
+bne $23,L.15
+br L.13
+L.22:
+lda $27,110
+cmpeq $16,$27,$23
+bne $23,L.17
+cmplt $16,$27,$23
+bne $23,L.13
+L.23:
+lda $27,114
+cmpeq $16,$27,$23
+bne $23,L.18
+lda $27,116
+cmpeq $16,$27,$23
+bne $23,L.19
+lda $27,118
+cmpeq $16,$27,$23
+bne $23,L.20
+br L.13
+L.15:
+lda $0,8
+br L.12
+L.16:
+lda $0,12
+br L.12
+L.17:
+lda $0,10
+br L.12
+L.18:
+lda $0,13
+br L.12
+L.19:
+lda $0,9
+br L.12
+L.20:
+lda $0,11
+br L.12
+L.13:
+mov $16,$0
+L.12:
+lda $sp,64($sp)
+ret
+.end backslash
+.globl f
+.text
+.ent f
+f:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.mask 0x4007000,-72
+.frame $sp,96,$26,48
+stq $12,0($sp)
+stq $13,8($sp)
+stq $14,16($sp)
+stq $26,24($sp)
+.prologue 1
+mov $31,$13
+lda $16,L.25
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$14
+L.26:
+mov $14,$12
+cmplt $14,1,$23
+bne $23,L.30
+cmple $14,20,$23
+beq $23,L.30
+subl $14,1,$27
+sll $27,3,$27
+ldq $27,L.42($27)
+jmp ($27)
+.rdata
+.align 3
+L.42:
+.quad L.32
+.quad L.33
+.quad L.30
+.quad L.30
+.quad L.30
+.quad L.30
+.quad L.34
+.quad L.35
+.quad L.36
+.quad L.30
+.quad L.30
+.quad L.30
+.quad L.30
+.quad L.30
+.quad L.30
+.quad L.37
+.quad L.38
+.quad L.39
+.quad L.40
+.quad L.41
+.text
+L.32:
+mov $14,$13
+br L.31
+L.33:
+mov $14,$13
+br L.31
+L.34:
+mov $14,$13
+br L.31
+L.35:
+mov $14,$13
+br L.31
+L.36:
+mov $14,$13
+br L.31
+L.37:
+mov $14,$13
+br L.31
+L.38:
+mov $14,$13
+br L.31
+L.39:
+mov $14,$13
+br L.31
+L.40:
+mov $14,$13
+br L.31
+L.41:
+mov $14,$13
+L.30:
+L.31:
+lda $16,L.43
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.27:
+lda $14,1($14)
+cmple $14,20,$23
+bne $23,L.26
+mov $31,$0
+L.24:
+ldq $12,0($sp)
+ldq $13,8($sp)
+ldq $14,16($sp)
+ldq $26,24($sp)
+lda $sp,96($sp)
+ret
+.end f
+.globl g
+.text
+.ent g
+g:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+lda $16,L.45
+jsr $26,printf
+ldgp $gp,0($26)
+lda $14,1
+L.46:
+lda $27,1001
+cmplt $14,$27,$23
+bne $23,L.63
+lda $27,1004
+cmple $14,$27,$23
+beq $23,L.64
+subl $14,1001,$27
+sll $27,3,$27
+ldq $27,L.65($27)
+jmp ($27)
+.rdata
+.align 3
+L.65:
+.quad L.59
+.quad L.59
+.quad L.59
+.quad L.59
+.text
+L.63:
+cmplt $14,1,$23
+bne $23,L.50
+cmple $14,8,$23
+beq $23,L.50
+subl $14,1,$27
+sll $27,3,$27
+ldq $27,L.66($27)
+jmp ($27)
+.rdata
+.align 3
+L.66:
+.quad L.52
+.quad L.52
+.quad L.54
+.quad L.54
+.quad L.54
+.quad L.56
+.quad L.56
+.quad L.56
+.text
+L.64:
+lda $27,3001
+cmplt $14,$27,$23
+bne $23,L.50
+lda $27,3004
+cmple $14,$27,$23
+beq $23,L.50
+subl $14,3001,$27
+sll $27,3,$27
+ldq $27,L.67($27)
+jmp ($27)
+.rdata
+.align 3
+L.67:
+.quad L.61
+.quad L.61
+.quad L.61
+.quad L.61
+.text
+L.52:
+lda $16,L.53
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.51
+L.54:
+lda $16,L.55
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.51
+L.56:
+lda $16,L.57
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.50:
+lda $16,L.58
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.51
+L.59:
+lda $16,L.60
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.51
+L.61:
+lda $16,L.62
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.51:
+L.47:
+lda $14,1($14)
+cmple $14,10,$23
+bne $23,L.46
+mov $31,$0
+L.44:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end g
+.globl h
+.text
+.ent h
+h:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4006000,-64
+.frame $sp,80,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $26,16($sp)
+.prologue 1
+mov $31,$13
+lda $16,L.69
+jsr $26,printf
+ldgp $gp,0($26)
+lda $14,1
+L.70:
+lda $27,264
+cmpeq $14,$27,$23
+bne $23,L.82
+cmple $14,$27,$23
+beq $23,L.90
+L.89:
+lda $27,120
+cmpeq $14,$27,$23
+bne $23,L.80
+cmple $14,$27,$23
+beq $23,L.92
+L.91:
+cmpeq $14,8,$23
+bne $23,L.79
+cmplt $14,8,$23
+bne $23,L.74
+L.93:
+cmpeq $14,16,$23
+bne $23,L.78
+br L.74
+L.92:
+lda $27,128
+cmpeq $14,$27,$23
+bne $23,L.76
+cmplt $14,$27,$23
+bne $23,L.74
+L.94:
+lda $27,248
+cmpeq $14,$27,$23
+bne $23,L.83
+br L.74
+L.90:
+lda $27,288
+cmpeq $14,$27,$23
+bne $23,L.87
+cmple $14,$27,$23
+beq $23,L.96
+L.95:
+lda $27,272
+cmpeq $14,$27,$23
+bne $23,L.84
+cmplt $14,$27,$23
+bne $23,L.74
+L.97:
+lda $27,280
+cmpeq $14,$27,$23
+bne $23,L.81
+br L.74
+L.96:
+lda $27,304
+cmpeq $14,$27,$23
+bne $23,L.85
+cmple $14,$27,$23
+beq $23,L.99
+L.98:
+lda $27,296
+cmpeq $14,$27,$23
+bne $23,L.86
+br L.74
+L.99:
+lda $27,312
+cmpeq $14,$27,$23
+bne $23,L.88
+br L.74
+L.74:
+lda $13,1($13)
+br L.71
+L.76:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.78:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.79:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.80:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.81:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.82:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.83:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.84:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.85:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.86:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.87:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.75
+L.88:
+lda $16,L.77
+mov $14,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.75:
+L.71:
+lda $14,1($14)
+lda $27,500
+cmple $14,$27,$23
+bne $23,L.70
+lda $16,L.100
+mov $13,$17
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.68:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $26,16($sp)
+lda $sp,80($sp)
+ret
+.end h
+.globl big
+.text
+.ent big
+big:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+stq $16,32($sp)
+.prologue 1
+ldl $27,-48+80($sp)
+zap $27,240,$27
+and $27,0x6000000,$14
+lda $25,33554432
+cmpeq $14,$25,$23
+bne $23,L.107
+cmple $14,$25,$23
+beq $23,L.111
+L.110:
+lda $25,-2
+cmpeq $14,$25,$23
+bne $23,L.105
+lda $25,-1
+cmpeq $14,$25,$23
+bne $23,L.105
+cmpeq $14,$31,$23
+bne $23,L.105
+br L.102
+L.111:
+mov $14,$27
+lda $25,67108864
+cmpeq $27,$25,$23
+bne $23,L.108
+br L.102
+L.105:
+lda $16,L.106
+ldl $17,-48+80($sp)
+zap $17,240,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.103
+L.107:
+lda $16,L.106
+ldl $17,-48+80($sp)
+zap $17,240,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.103
+L.108:
+lda $16,L.106
+ldl $17,-48+80($sp)
+zap $17,240,$17
+jsr $26,printf
+ldgp $gp,0($26)
+br L.103
+L.102:
+lda $16,L.109
+ldl $17,-48+80($sp)
+zap $17,240,$17
+jsr $26,printf
+ldgp $gp,0($26)
+L.103:
+mov $31,$0
+L.101:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end big
+.globl limit
+.text
+.ent limit
+limit:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+lda $14,-2147483648
+L.113:
+lda $27,-2147483648
+cmplt $14,$27,$23
+bne $23,L.117
+lda $27,-2147483644
+cmple $14,$27,$23
+beq $23,L.117
+subl $14,-2147483648,$27
+sll $27,3,$27
+ldq $27,L.130($27)
+jmp ($27)
+.rdata
+.align 3
+L.130:
+.quad L.119
+.quad L.121
+.quad L.123
+.quad L.125
+.quad L.127
+.text
+L.119:
+lda $16,L.120
+jsr $26,printf
+ldgp $gp,0($26)
+br L.118
+L.121:
+lda $16,L.122
+jsr $26,printf
+ldgp $gp,0($26)
+br L.118
+L.123:
+lda $16,L.124
+jsr $26,printf
+ldgp $gp,0($26)
+br L.118
+L.125:
+lda $16,L.126
+jsr $26,printf
+ldgp $gp,0($26)
+br L.118
+L.127:
+lda $16,L.128
+jsr $26,printf
+ldgp $gp,0($26)
+br L.118
+L.117:
+lda $16,L.129
+jsr $26,printf
+ldgp $gp,0($26)
+L.118:
+L.114:
+lda $14,1($14)
+lda $27,-2147483643
+cmple $14,$27,$23
+bne $23,L.113
+lda $14,2147483647
+L.131:
+lda $27,2147483643
+cmplt $14,$27,$23
+bne $23,L.135
+lda $27,2147483647
+cmple $14,$27,$23
+beq $23,L.135
+subl $14,2147483643,$27
+sll $27,3,$27
+ldq $27,L.142($27)
+jmp ($27)
+.rdata
+.align 3
+L.142:
+.quad L.141
+.quad L.140
+.quad L.139
+.quad L.138
+.quad L.137
+.text
+L.137:
+lda $16,L.120
+jsr $26,printf
+ldgp $gp,0($26)
+br L.136
+L.138:
+lda $16,L.122
+jsr $26,printf
+ldgp $gp,0($26)
+br L.136
+L.139:
+lda $16,L.124
+jsr $26,printf
+ldgp $gp,0($26)
+br L.136
+L.140:
+lda $16,L.126
+jsr $26,printf
+ldgp $gp,0($26)
+br L.136
+L.141:
+lda $16,L.128
+jsr $26,printf
+ldgp $gp,0($26)
+br L.136
+L.135:
+lda $16,L.129
+jsr $26,printf
+ldgp $gp,0($26)
+L.136:
+L.132:
+subl $14,1,$14
+lda $27,2147483642
+cmplt $14,$27,$23
+beq $23,L.131
+mov $31,$0
+L.112:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end limit
+.rdata
+.align 0
+L.129:
+.byte 53
+.byte 10
+.byte 0
+.align 0
+L.128:
+.byte 52
+.byte 10
+.byte 0
+.align 0
+L.126:
+.byte 51
+.byte 10
+.byte 0
+.align 0
+L.124:
+.byte 50
+.byte 10
+.byte 0
+.align 0
+L.122:
+.byte 49
+.byte 10
+.byte 0
+.align 0
+L.120:
+.byte 48
+.byte 10
+.byte 0
+.align 0
+L.109:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 32
+.byte 40
+.byte 100
+.byte 101
+.byte 102
+.byte 97
+.byte 117
+.byte 108
+.byte 116
+.byte 41
+.byte 10
+.byte 0
+.align 0
+L.106:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 0
+L.100:
+.byte 37
+.byte 100
+.byte 32
+.byte 100
+.byte 101
+.byte 102
+.byte 97
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.77:
+.byte 105
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.69:
+.byte 104
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.62:
+.byte 54
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.60:
+.byte 53
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.58:
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.57:
+.byte 51
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.55:
+.byte 50
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.53:
+.byte 49
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.45:
+.byte 103
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.43:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.25:
+.byte 102
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.7:
+.byte 37
+.byte 99
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 0
+L.6:
+.byte 98
+.byte 102
+.byte 110
+.byte 114
+.byte 116
+.byte 118
+.byte 120
+.byte 0
diff --git a/lcc/alpha/osf/tst/wf1.1bk b/lcc/alpha/osf/tst/wf1.1bk
index 095e087..a846267 100755
--- a/lcc/alpha/osf/tst/wf1.1bk
+++ b/lcc/alpha/osf/tst/wf1.1bk
@@ -1,74 +1,74 @@
-5 a
-2 and
-5 buf
-16 c
-8 char
-1 compare
-4 cond
-5 count
-1 d
-1 die
-3 else
-1 entry
-1 eof
-4 err
-1 error
-1 exit
-1 folded
-1 for
-1 free
-1 frequencies
-1 frequency
-1 get
-2 getchar
-3 getword
-14 if
-2 in
-1 index
-1 input
-1 install
-8 int
-1 into
-1 is
-4 isletter
-1 it
-1 itself
-5 left
-1 letter
-7 lookup
-1 main
-2 malloc
-1 message
-2 n
-1 necessary
-12 next
-9 node
-4 of
-1 on
-1 or
-1 otherwise
-2 out
-8 p
-3 print
-2 printf
-16 return
-5 right
-4 root
-25 s
-2 storage
-3 strcmp
-1 strcpy
-1 strlen
-8 struct
-1 structures
-2 subtree
-1 t
-5 tprint
-9 tree
-1 uses
-1 version
-1 wf
-3 while
-21 word
-9 words
-2 z
+5 a
+2 and
+5 buf
+16 c
+8 char
+1 compare
+4 cond
+5 count
+1 d
+1 die
+3 else
+1 entry
+1 eof
+4 err
+1 error
+1 exit
+1 folded
+1 for
+1 free
+1 frequencies
+1 frequency
+1 get
+2 getchar
+3 getword
+14 if
+2 in
+1 index
+1 input
+1 install
+8 int
+1 into
+1 is
+4 isletter
+1 it
+1 itself
+5 left
+1 letter
+7 lookup
+1 main
+2 malloc
+1 message
+2 n
+1 necessary
+12 next
+9 node
+4 of
+1 on
+1 or
+1 otherwise
+2 out
+8 p
+3 print
+2 printf
+16 return
+5 right
+4 root
+25 s
+2 storage
+3 strcmp
+1 strcpy
+1 strlen
+8 struct
+1 structures
+2 subtree
+1 t
+5 tprint
+9 tree
+1 uses
+1 version
+1 wf
+3 while
+21 word
+9 words
+2 z
diff --git a/lcc/alpha/osf/tst/wf1.2bk b/lcc/alpha/osf/tst/wf1.2bk
index 0e7a8a6..190e4a1 100755
--- a/lcc/alpha/osf/tst/wf1.2bk
+++ b/lcc/alpha/osf/tst/wf1.2bk
@@ -1,2 +1,2 @@
-tst/wf1.c:29: warning: missing return value
-tst/wf1.c:87: warning: missing return value
+tst/wf1.c:29: warning: missing return value
+tst/wf1.c:87: warning: missing return value
diff --git a/lcc/alpha/osf/tst/wf1.sbk b/lcc/alpha/osf/tst/wf1.sbk
index 22f279e..507b38f 100755
--- a/lcc/alpha/osf/tst/wf1.sbk
+++ b/lcc/alpha/osf/tst/wf1.sbk
@@ -1,400 +1,400 @@
-.globl main
-.text
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.mask 0x4000000,-96
-.frame $sp,96,$26,48
-stq $26,0($sp)
-.prologue 1
-stq $31,-88+96($sp)
-stl $31,next
-br L.3
-L.2:
-lda $16,-76+96($sp)
-lda $17,-88+96($sp)
-jsr $26,lookup
-ldgp $gp,0($26)
-ldl $25,($0)
-lda $25,1($25)
-stl $25,($0)
-L.3:
-lda $16,-76+96($sp)
-jsr $26,getword
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-beq $23,L.2
-ldq $16,-88+96($sp)
-jsr $26,tprint
-ldgp $gp,0($26)
-mov $31,$0
-L.1:
-ldq $26,0($sp)
-lda $sp,96($sp)
-ret
-.end main
-.globl err
-.text
-.ent err
-err:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-.prologue 1
-lda $16,L.6
-ldq $17,-48+64($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-lda $16,1
-jsr $26,exit
-ldgp $gp,0($26)
-mov $31,$0
-L.5:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end err
-.globl getword
-.text
-.ent getword
-getword:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.mask 0x5006000,-72
-.frame $sp,96,$26,48
-stq $13,0($sp)
-stq $14,8($sp)
-stq $24,16($sp)
-stq $26,24($sp)
-stq $16,48($sp)
-.prologue 1
-L.8:
-L.9:
-jsr $26,getchar
-ldgp $gp,0($26)
-mov $0,$27
-mov $27,$14
-lda $25,-1
-cmpeq $27,$25,$23
-bne $23,L.11
-mov $14,$16
-jsr $26,isletter
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-bne $23,L.8
-L.11:
-ldq $13,-48+96($sp)
-br L.15
-L.12:
-mov $13,$27
-lda $13,1($27)
-mov $14,$25
-stb $25,($27)
-L.13:
-jsr $26,getchar
-ldgp $gp,0($26)
-mov $0,$14
-L.15:
-mov $14,$16
-jsr $26,isletter
-ldgp $gp,0($26)
-mov $0,$14
-cmpeq $0,$31,$23
-beq $23,L.12
-stb $31,($13)
-mov $13,$27
-ldq $25,-48+96($sp)
-cmpule $27,$25,$23
-bne $23,L.16
-lda $0,1
-br L.7
-L.16:
-mov $31,$0
-L.7:
-ldq $13,0($sp)
-ldq $14,8($sp)
-ldq $24,16($sp)
-ldq $26,24($sp)
-lda $sp,96($sp)
-ret
-.end getword
-.globl isletter
-.text
-.ent isletter
-isletter:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-lda $27,65
-cmplt $16,$27,$23
-bne $23,L.19
-lda $27,90
-cmple $16,$27,$23
-beq $23,L.19
-lda $16,32($16)
-L.19:
-lda $27,97
-cmplt $16,$27,$23
-bne $23,L.21
-lda $27,122
-cmple $16,$27,$23
-beq $23,L.21
-mov $16,$0
-br L.18
-L.21:
-mov $31,$0
-L.18:
-lda $sp,64($sp)
-ret
-.end isletter
-.globl lookup
-.text
-.ent lookup
-lookup:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-stq $16,32($sp)
-mov $17,$14
-.prologue 1
-ldq $27,($14)
-cmpeq $27,$31,$23
-bne $23,L.24
-ldq $16,-48+80($sp)
-ldq $27,($14)
-ldq $17,24($27)
-jsr $26,strcmp
-ldgp $gp,0($26)
-stl $0,-60+80($sp)
-ldl $27,-60+80($sp)
-cmplt $27,$31,$23
-beq $23,L.26
-ldq $16,-48+80($sp)
-ldq $27,($14)
-lda $17,8($27)
-jsr $26,lookup
-ldgp $gp,0($26)
-mov $0,$27
-br L.23
-L.26:
-ldl $27,-60+80($sp)
-cmple $27,$31,$23
-bne $23,L.28
-ldq $16,-48+80($sp)
-ldq $27,($14)
-lda $17,16($27)
-jsr $26,lookup
-ldgp $gp,0($26)
-mov $0,$27
-br L.23
-L.28:
-ldq $0,($14)
-br L.23
-L.24:
-ldl $27,next
-lda $25,2000
-cmplt $27,$25,$23
-bne $23,L.30
-lda $16,L.32
-jsr $26,err
-ldgp $gp,0($26)
-L.30:
-ldl $27,next
-sll $27,5,$27
-stl $31,words($27)
-ldl $27,next
-sll $27,5,$27
-stq $31,words+16($27)
-stq $31,words+8($27)
-ldq $16,-48+80($sp)
-jsr $26,strlen
-ldgp $gp,0($26)
-mov $0,$27
-lda $16,1($27)
-jsr $26,malloc
-ldgp $gp,0($26)
-ldl $25,next
-sll $25,5,$25
-stq $0,words+24($25)
-ldl $27,next
-sll $27,5,$27
-ldq $27,words+24($27)
-cmpeq $27,$31,$23
-beq $23,L.36
-lda $16,L.39
-jsr $26,err
-ldgp $gp,0($26)
-L.36:
-ldl $27,next
-sll $27,5,$27
-ldq $16,words+24($27)
-ldq $17,-48+80($sp)
-jsr $26,strcpy
-ldgp $gp,0($26)
-ldl $27,next
-lda $25,1($27)
-stl $25,next
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,5,$27
-lda $27,words($27)
-stq $27,($14)
-mov $27,$0
-L.23:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end lookup
-.globl tprint
-.text
-.ent tprint
-tprint:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-mov $16,$14
-.prologue 1
-mov $14,$27
-cmpeq $27,$31,$23
-bne $23,L.42
-ldq $16,8($14)
-jsr $26,tprint
-ldgp $gp,0($26)
-lda $16,L.44
-ldl $17,($14)
-ldq $18,24($14)
-jsr $26,printf
-ldgp $gp,0($26)
-ldq $16,16($14)
-jsr $26,tprint
-ldgp $gp,0($26)
-L.42:
-mov $31,$0
-L.41:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end tprint
-.globl strcmp
-.text
-.ent strcmp
-strcmp:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-br L.47
-L.46:
-mov $16,$27
-lda $16,1($27)
-ldb $27,($27)
-cmpeq $27,$31,$23
-beq $23,L.49
-mov $31,$0
-br L.45
-L.49:
-lda $17,1($17)
-L.47:
-ldb $27,($16)
-ldb $25,($17)
-cmpeq $27,$25,$23
-bne $23,L.46
-ldb $27,($16)
-cmpeq $27,$31,$23
-beq $23,L.51
-lda $0,-1
-br L.45
-L.51:
-ldb $27,($17)
-cmpeq $27,$31,$23
-beq $23,L.53
-lda $0,1
-br L.45
-L.53:
-ldb $27,($16)
-ldb $25,($17)
-subl $27,$25,$0
-L.45:
-lda $sp,64($sp)
-ret
-.end strcmp
-.globl next
-.comm next,4
-.globl words
-.comm words,64000
-.rdata
-.align 0
-L.44:
-.byte 37
-.byte 100
-.byte 9
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.39:
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 119
-.byte 111
-.byte 114
-.byte 100
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 97
-.byte 103
-.byte 101
-.byte 0
-.align 0
-L.32:
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 110
-.byte 111
-.byte 100
-.byte 101
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 97
-.byte 103
-.byte 101
-.byte 0
-.align 0
-L.6:
-.byte 63
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
+.globl main
+.text
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.mask 0x4000000,-96
+.frame $sp,96,$26,48
+stq $26,0($sp)
+.prologue 1
+stq $31,-88+96($sp)
+stl $31,next
+br L.3
+L.2:
+lda $16,-76+96($sp)
+lda $17,-88+96($sp)
+jsr $26,lookup
+ldgp $gp,0($26)
+ldl $25,($0)
+lda $25,1($25)
+stl $25,($0)
+L.3:
+lda $16,-76+96($sp)
+jsr $26,getword
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+beq $23,L.2
+ldq $16,-88+96($sp)
+jsr $26,tprint
+ldgp $gp,0($26)
+mov $31,$0
+L.1:
+ldq $26,0($sp)
+lda $sp,96($sp)
+ret
+.end main
+.globl err
+.text
+.ent err
+err:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+.prologue 1
+lda $16,L.6
+ldq $17,-48+64($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+lda $16,1
+jsr $26,exit
+ldgp $gp,0($26)
+mov $31,$0
+L.5:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end err
+.globl getword
+.text
+.ent getword
+getword:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.mask 0x5006000,-72
+.frame $sp,96,$26,48
+stq $13,0($sp)
+stq $14,8($sp)
+stq $24,16($sp)
+stq $26,24($sp)
+stq $16,48($sp)
+.prologue 1
+L.8:
+L.9:
+jsr $26,getchar
+ldgp $gp,0($26)
+mov $0,$27
+mov $27,$14
+lda $25,-1
+cmpeq $27,$25,$23
+bne $23,L.11
+mov $14,$16
+jsr $26,isletter
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+bne $23,L.8
+L.11:
+ldq $13,-48+96($sp)
+br L.15
+L.12:
+mov $13,$27
+lda $13,1($27)
+mov $14,$25
+stb $25,($27)
+L.13:
+jsr $26,getchar
+ldgp $gp,0($26)
+mov $0,$14
+L.15:
+mov $14,$16
+jsr $26,isletter
+ldgp $gp,0($26)
+mov $0,$14
+cmpeq $0,$31,$23
+beq $23,L.12
+stb $31,($13)
+mov $13,$27
+ldq $25,-48+96($sp)
+cmpule $27,$25,$23
+bne $23,L.16
+lda $0,1
+br L.7
+L.16:
+mov $31,$0
+L.7:
+ldq $13,0($sp)
+ldq $14,8($sp)
+ldq $24,16($sp)
+ldq $26,24($sp)
+lda $sp,96($sp)
+ret
+.end getword
+.globl isletter
+.text
+.ent isletter
+isletter:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+lda $27,65
+cmplt $16,$27,$23
+bne $23,L.19
+lda $27,90
+cmple $16,$27,$23
+beq $23,L.19
+lda $16,32($16)
+L.19:
+lda $27,97
+cmplt $16,$27,$23
+bne $23,L.21
+lda $27,122
+cmple $16,$27,$23
+beq $23,L.21
+mov $16,$0
+br L.18
+L.21:
+mov $31,$0
+L.18:
+lda $sp,64($sp)
+ret
+.end isletter
+.globl lookup
+.text
+.ent lookup
+lookup:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+stq $16,32($sp)
+mov $17,$14
+.prologue 1
+ldq $27,($14)
+cmpeq $27,$31,$23
+bne $23,L.24
+ldq $16,-48+80($sp)
+ldq $27,($14)
+ldq $17,24($27)
+jsr $26,strcmp
+ldgp $gp,0($26)
+stl $0,-60+80($sp)
+ldl $27,-60+80($sp)
+cmplt $27,$31,$23
+beq $23,L.26
+ldq $16,-48+80($sp)
+ldq $27,($14)
+lda $17,8($27)
+jsr $26,lookup
+ldgp $gp,0($26)
+mov $0,$27
+br L.23
+L.26:
+ldl $27,-60+80($sp)
+cmple $27,$31,$23
+bne $23,L.28
+ldq $16,-48+80($sp)
+ldq $27,($14)
+lda $17,16($27)
+jsr $26,lookup
+ldgp $gp,0($26)
+mov $0,$27
+br L.23
+L.28:
+ldq $0,($14)
+br L.23
+L.24:
+ldl $27,next
+lda $25,2000
+cmplt $27,$25,$23
+bne $23,L.30
+lda $16,L.32
+jsr $26,err
+ldgp $gp,0($26)
+L.30:
+ldl $27,next
+sll $27,5,$27
+stl $31,words($27)
+ldl $27,next
+sll $27,5,$27
+stq $31,words+16($27)
+stq $31,words+8($27)
+ldq $16,-48+80($sp)
+jsr $26,strlen
+ldgp $gp,0($26)
+mov $0,$27
+lda $16,1($27)
+jsr $26,malloc
+ldgp $gp,0($26)
+ldl $25,next
+sll $25,5,$25
+stq $0,words+24($25)
+ldl $27,next
+sll $27,5,$27
+ldq $27,words+24($27)
+cmpeq $27,$31,$23
+beq $23,L.36
+lda $16,L.39
+jsr $26,err
+ldgp $gp,0($26)
+L.36:
+ldl $27,next
+sll $27,5,$27
+ldq $16,words+24($27)
+ldq $17,-48+80($sp)
+jsr $26,strcpy
+ldgp $gp,0($26)
+ldl $27,next
+lda $25,1($27)
+stl $25,next
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,5,$27
+lda $27,words($27)
+stq $27,($14)
+mov $27,$0
+L.23:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end lookup
+.globl tprint
+.text
+.ent tprint
+tprint:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+mov $16,$14
+.prologue 1
+mov $14,$27
+cmpeq $27,$31,$23
+bne $23,L.42
+ldq $16,8($14)
+jsr $26,tprint
+ldgp $gp,0($26)
+lda $16,L.44
+ldl $17,($14)
+ldq $18,24($14)
+jsr $26,printf
+ldgp $gp,0($26)
+ldq $16,16($14)
+jsr $26,tprint
+ldgp $gp,0($26)
+L.42:
+mov $31,$0
+L.41:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end tprint
+.globl strcmp
+.text
+.ent strcmp
+strcmp:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+br L.47
+L.46:
+mov $16,$27
+lda $16,1($27)
+ldb $27,($27)
+cmpeq $27,$31,$23
+beq $23,L.49
+mov $31,$0
+br L.45
+L.49:
+lda $17,1($17)
+L.47:
+ldb $27,($16)
+ldb $25,($17)
+cmpeq $27,$25,$23
+bne $23,L.46
+ldb $27,($16)
+cmpeq $27,$31,$23
+beq $23,L.51
+lda $0,-1
+br L.45
+L.51:
+ldb $27,($17)
+cmpeq $27,$31,$23
+beq $23,L.53
+lda $0,1
+br L.45
+L.53:
+ldb $27,($16)
+ldb $25,($17)
+subl $27,$25,$0
+L.45:
+lda $sp,64($sp)
+ret
+.end strcmp
+.globl next
+.comm next,4
+.globl words
+.comm words,64000
+.rdata
+.align 0
+L.44:
+.byte 37
+.byte 100
+.byte 9
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.39:
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 119
+.byte 111
+.byte 114
+.byte 100
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 97
+.byte 103
+.byte 101
+.byte 0
+.align 0
+L.32:
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 110
+.byte 111
+.byte 100
+.byte 101
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 97
+.byte 103
+.byte 101
+.byte 0
+.align 0
+L.6:
+.byte 63
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
diff --git a/lcc/alpha/osf/tst/yacc.1bk b/lcc/alpha/osf/tst/yacc.1bk
index b08a02f..60de9b5 100755
--- a/lcc/alpha/osf/tst/yacc.1bk
+++ b/lcc/alpha/osf/tst/yacc.1bk
@@ -1,10 +1,10 @@
-a
-b
-load
-negate
-push 5
-c
-load
-multiply
-add
-store
+a
+b
+load
+negate
+push 5
+c
+load
+multiply
+add
+store
diff --git a/lcc/alpha/osf/tst/yacc.2bk b/lcc/alpha/osf/tst/yacc.2bk
index a84aa5b..9a4fd61 100755
--- a/lcc/alpha/osf/tst/yacc.2bk
+++ b/lcc/alpha/osf/tst/yacc.2bk
@@ -1,3 +1,3 @@
-tst/yacc.c:345: warning: missing return value
-tst/yacc.c:349: warning: missing return value
-tst/yacc.c:359: warning: missing return value
+tst/yacc.c:345: warning: missing return value
+tst/yacc.c:349: warning: missing return value
+tst/yacc.c:359: warning: missing return value
diff --git a/lcc/alpha/osf/tst/yacc.sbk b/lcc/alpha/osf/tst/yacc.sbk
index e445a42..d39c8c2 100755
--- a/lcc/alpha/osf/tst/yacc.sbk
+++ b/lcc/alpha/osf/tst/yacc.sbk
@@ -1,2402 +1,2402 @@
-.sdata
-.globl yyin
-.align 3
-yyin:
-.quad _iob
-.globl yyout
-.align 3
-yyout:
-.quad _iob+56
-.globl yylex
-.text
-.text
-.ent yylex
-yylex:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x4004000,-72
-.frame $sp,80,$26,48
-stq $14,0($sp)
-stq $26,8($sp)
-.prologue 1
-br L.5
-L.4:
-L.7:
-lda $27,-1
-cmplt $14,$27,$23
-bne $23,L.8
-cmple $14,4,$23
-beq $23,L.8
-subl $14,-1,$27
-sll $27,3,$27
-ldq $27,L.19($27)
-jmp ($27)
-.rdata
-.align 3
-L.19:
-.quad L.9
-.quad L.10
-.quad L.13
-.quad L.14
-.quad L.9
-.quad L.16
-.text
-L.10:
-jsr $26,yywrap
-ldgp $gp,0($26)
-cmpeq $0,$31,$23
-bne $23,L.9
-mov $31,$0
-br L.3
-L.13:
-lda $0,257
-br L.3
-L.14:
-lda $0,258
-br L.3
-L.16:
-lda $27,yytext
-ldb $0,($27)
-br L.3
-L.8:
-ldq $16,yyout
-lda $17,L.18
-mov $14,$18
-jsr $26,fprintf
-ldgp $gp,0($26)
-L.9:
-L.5:
-jsr $26,yylook
-ldgp $gp,0($26)
-mov $0,$14
-cmplt $0,$31,$23
-beq $23,L.4
-mov $31,$0
-L.3:
-ldq $14,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end yylex
-.sdata
-.globl yyvstop
-.align 2
-yyvstop:
-.long 0x0
-.long 0x4
-.long 0x0
-.long 0x3
-.long 0x4
-.long 0x0
-.long 0x2
-.long 0x4
-.long 0x0
-.long 0x1
-.long 0x4
-.long 0x0
-.long 0x2
-.long 0x0
-.long 0x1
-.long 0x0
-.long 0x0
-.globl yycrank
-.align 0
-yycrank:
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x3
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x4
-.byte 0x1
-.byte 0x3
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x5
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x6
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.globl yysvec
-.align 3
-yysvec:
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.quad yycrank-2
-.quad 0x0
-.quad 0x0
-.quad yycrank
-.quad yysvec+24
-.quad 0x0
-.quad yycrank
-.quad 0x0
-.quad yyvstop+4
-.quad yycrank
-.quad 0x0
-.quad yyvstop+12
-.quad yycrank+4
-.quad 0x0
-.quad yyvstop+24
-.quad yycrank+38
-.quad 0x0
-.quad yyvstop+36
-.quad yycrank
-.quad yysvec+120
-.quad yyvstop+48
-.quad yycrank
-.quad yysvec+144
-.quad yyvstop+56
-.quad 0x0
-.quad 0x0
-.quad 0x0
-.globl yytop
-.align 3
-yytop:
-.quad yycrank+282
-.globl yybgin
-.align 3
-yybgin:
-.quad yysvec+24
-.globl yymatch
-.align 0
-yymatch:
-.byte 0
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 9
-.byte 10
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 9
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 65
-.byte 1
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 0
-.globl yyextra
-.align 0
-yyextra:
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.globl yylineno
-.align 2
-yylineno:
-.long 0x1
-.globl yysptr
-.align 3
-yysptr:
-.quad yysbuf
-.globl yyprevious
-.align 2
-yyprevious:
-.long 0xa
-.globl yylook
-.text
-.text
-.ent yylook
-yylook:
-ldgp $gp,0($27)
-lda $sp,-160($sp)
-.mask 0x5007e00,-104
-.frame $sp,160,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-.prologue 1
-ldl $27,yymorfg
-cmpeq $27,$31,$23
-beq $23,L.35
-lda $11,yytext
-br L.36
-L.35:
-stl $31,yymorfg
-ldl $27,yyleng
-lda $11,yytext($27)
-L.36:
-L.37:
-lda $13,yylstate
-ldq $27,yybgin
-mov $27,$14
-stq $27,yyestate
-ldl $27,yyprevious
-cmpeq $27,10,$23
-beq $23,L.41
-lda $14,24($14)
-L.41:
-L.43:
-ldq $12,($14)
-mov $12,$27
-lda $25,yycrank
-cmpeq $27,$25,$23
-beq $23,L.47
-ldq $27,8($14)
-stq $27,-64+160($sp)
-ldq $27,-64+160($sp)
-cmpeq $27,$31,$23
-beq $23,L.49
-br L.94
-L.49:
-ldq $27,-64+160($sp)
-ldq $27,($27)
-lda $25,yycrank
-cmpeq $27,$25,$23
-beq $23,L.51
-br L.94
-L.51:
-L.47:
-mov $11,$27
-stq $27,-88+160($sp)
-lda $11,1($27)
-ldq $25,yysptr
-lda $22,yysbuf
-cmpule $25,$22,$23
-bne $23,L.61
-ldq $25,yysptr
-lda $25,-1($25)
-stq $25,yysptr
-ldb $25,($25)
-stl $25,-76+160($sp)
-br L.62
-L.61:
-ldq $25,yyin
-ldl $22,($25)
-subl $22,1,$22
-stl $22,($25)
-cmplt $22,$31,$23
-beq $23,L.63
-ldq $16,yyin
-jsr $26,_filbuf
-ldgp $gp,0($26)
-mov $0,$27
-stl $27,-80+160($sp)
-br L.64
-L.63:
-ldq $27,yyin
-lda $27,8($27)
-ldq $25,($27)
-lda $22,1($25)
-stq $22,($27)
-ldbu $27,($25)
-stl $27,-80+160($sp)
-L.64:
-ldl $27,-80+160($sp)
-stl $27,-76+160($sp)
-L.62:
-ldl $27,-76+160($sp)
-stl $27,yytchar
-cmpeq $27,10,$23
-beq $23,L.59
-ldl $27,yylineno
-lda $27,1($27)
-stl $27,yylineno
-ldl $27,yytchar
-stl $27,-72+160($sp)
-br L.60
-L.59:
-ldl $27,yytchar
-stl $27,-72+160($sp)
-L.60:
-ldl $27,-72+160($sp)
-lda $25,-1
-cmpeq $27,$25,$23
-beq $23,L.57
-stl $31,-68+160($sp)
-br L.58
-L.57:
-ldl $27,yytchar
-stl $27,-68+160($sp)
-L.58:
-ldl $27,-68+160($sp)
-mov $27,$10
-ldq $25,-88+160($sp)
-stb $27,($25)
-L.65:
-mov $12,$9
-mov $12,$27
-lda $25,yycrank
-cmpule $27,$25,$23
-bne $23,L.66
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-addq $27,$9,$12
-mov $12,$27
-ldq $25,yytop
-cmpule $27,$25,$23
-beq $23,L.67
-lda $27,24
-ldb $25,($12)
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-mulq $27,$25,$27
-lda $27,yysvec($27)
-mov $14,$25
-cmpeq $27,$25,$23
-beq $23,L.67
-lda $27,yysvec
-lda $25,24
-lda $22,1($12)
-ldb $22,($22)
-sll $22,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $25,yysvec($25)
-cmpeq $25,$27,$23
-beq $23,L.70
-lda $27,-1($11)
-mov $27,$11
-ldb $27,($27)
-stl $27,yytchar
-ldl $27,yytchar
-cmpeq $27,10,$23
-beq $23,L.72
-ldl $27,yylineno
-subl $27,1,$27
-stl $27,yylineno
-L.72:
-ldq $27,yysptr
-lda $25,1($27)
-stq $25,yysptr
-ldl $25,yytchar
-stb $25,($27)
-br L.94
-L.70:
-mov $13,$27
-lda $13,8($27)
-lda $25,24
-lda $22,1($12)
-ldb $22,($22)
-sll $22,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $25,yysvec($25)
-mov $25,$14
-stq $25,($27)
-br L.43
-L.66:
-mov $12,$27
-lda $25,yycrank
-cmpult $27,$25,$23
-beq $23,L.75
-lda $27,yycrank
-mov $12,$25
-subq $27,$25,$27
-divq $27,2,$27
-sll $27,1,$27
-lda $27,yycrank($27)
-mov $27,$9
-mov $27,$12
-sll $10,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-addq $27,$12,$12
-mov $12,$27
-ldq $25,yytop
-cmpule $27,$25,$23
-beq $23,L.77
-lda $27,24
-ldb $25,($12)
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-mulq $27,$25,$27
-lda $27,yysvec($27)
-mov $14,$25
-cmpeq $27,$25,$23
-beq $23,L.77
-lda $27,yysvec
-lda $25,24
-lda $22,1($12)
-ldb $22,($22)
-sll $22,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $25,yysvec($25)
-cmpeq $25,$27,$23
-beq $23,L.79
-lda $27,-1($11)
-mov $27,$11
-ldb $27,($27)
-stl $27,yytchar
-ldl $27,yytchar
-cmpeq $27,10,$23
-beq $23,L.81
-ldl $27,yylineno
-subl $27,1,$27
-stl $27,yylineno
-L.81:
-ldq $27,yysptr
-lda $25,1($27)
-stq $25,yysptr
-ldl $25,yytchar
-stb $25,($27)
-br L.94
-L.79:
-mov $13,$27
-lda $13,8($27)
-lda $25,24
-lda $22,1($12)
-ldb $22,($22)
-sll $22,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $25,yysvec($25)
-mov $25,$14
-stq $25,($27)
-br L.43
-L.77:
-lda $27,yymatch($10)
-ldb $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-addq $27,$9,$12
-mov $12,$27
-ldq $25,yytop
-cmpule $27,$25,$23
-beq $23,L.83
-lda $27,24
-ldb $25,($12)
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-mulq $27,$25,$27
-lda $27,yysvec($27)
-mov $14,$25
-cmpeq $27,$25,$23
-beq $23,L.83
-lda $27,yysvec
-lda $25,24
-lda $22,1($12)
-ldb $22,($22)
-sll $22,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $25,yysvec($25)
-cmpeq $25,$27,$23
-beq $23,L.85
-lda $27,-1($11)
-mov $27,$11
-ldb $27,($27)
-stl $27,yytchar
-ldl $27,yytchar
-cmpeq $27,10,$23
-beq $23,L.87
-ldl $27,yylineno
-subl $27,1,$27
-stl $27,yylineno
-L.87:
-ldq $27,yysptr
-lda $25,1($27)
-stq $25,yysptr
-ldl $25,yytchar
-stb $25,($27)
-br L.94
-L.85:
-mov $13,$27
-lda $13,8($27)
-lda $25,24
-lda $22,1($12)
-ldb $22,($22)
-sll $22,8*(8-4),$22
-sra $22,8*(8-4),$22
-mulq $25,$22,$25
-lda $25,yysvec($25)
-mov $25,$14
-stq $25,($27)
-br L.43
-L.83:
-L.75:
-L.67:
-ldq $27,8($14)
-mov $27,$14
-cmpeq $27,$31,$23
-bne $23,L.89
-ldq $27,($14)
-mov $27,$12
-lda $25,yycrank
-cmpeq $27,$25,$23
-bne $23,L.89
-br L.65
-L.89:
-lda $27,-1($11)
-mov $27,$11
-ldb $27,($27)
-stl $27,yytchar
-ldl $27,yytchar
-cmpeq $27,10,$23
-beq $23,L.91
-ldl $27,yylineno
-subl $27,1,$27
-stl $27,yylineno
-L.91:
-ldq $27,yysptr
-lda $25,1($27)
-stq $25,yysptr
-ldl $25,yytchar
-stb $25,($27)
-br L.94
-L.93:
-mov $11,$27
-lda $11,-1($27)
-stb $31,($27)
-ldq $27,($13)
-mov $31,$25
-mov $27,$22
-cmpeq $22,$25,$23
-bne $23,L.96
-ldq $27,16($27)
-stq $27,yyfnd
-cmpeq $27,$25,$23
-bne $23,L.96
-ldq $27,yyfnd
-ldl $27,($27)
-cmple $27,$31,$23
-bne $23,L.96
-stq $13,yyolsp
-ldq $27,yyfnd
-ldl $27,($27)
-lda $27,yyextra($27)
-ldb $27,($27)
-cmpeq $27,$31,$23
-bne $23,L.98
-br L.101
-L.100:
-lda $13,-8($13)
-mov $11,$27
-lda $11,-1($27)
-ldb $27,($27)
-stl $27,yytchar
-ldl $27,yytchar
-cmpeq $27,10,$23
-beq $23,L.103
-ldl $27,yylineno
-subl $27,1,$27
-stl $27,yylineno
-L.103:
-ldq $27,yysptr
-lda $25,1($27)
-stq $25,yysptr
-ldl $25,yytchar
-stb $25,($27)
-L.101:
-ldq $27,($13)
-ldq $16,16($27)
-ldq $27,yyfnd
-ldl $27,($27)
-negl $27,$17
-jsr $26,yyback
-ldgp $gp,0($26)
-cmpeq $0,1,$23
-bne $23,L.105
-mov $13,$27
-lda $25,yylstate
-cmpule $27,$25,$23
-beq $23,L.100
-L.105:
-L.98:
-ldb $27,($11)
-stl $27,yyprevious
-stq $13,yylsp
-lda $27,yytext
-mov $11,$25
-subq $25,$27,$27
-lda $27,1($27)
-stl $27,yyleng
-ldl $27,yyleng
-stb $31,yytext($27)
-ldq $27,yyfnd
-lda $25,4($27)
-stq $25,yyfnd
-ldl $0,($27)
-br L.34
-L.96:
-ldb $27,($11)
-stl $27,yytchar
-ldl $27,yytchar
-cmpeq $27,10,$23
-beq $23,L.106
-ldl $27,yylineno
-subl $27,1,$27
-stl $27,yylineno
-L.106:
-ldq $27,yysptr
-lda $25,1($27)
-stq $25,yysptr
-ldl $25,yytchar
-stb $25,($27)
-L.94:
-mov $13,$27
-lda $13,-8($27)
-lda $25,yylstate
-cmpule $27,$25,$23
-beq $23,L.93
-lda $27,yytext
-ldb $27,($27)
-cmpeq $27,$31,$23
-beq $23,L.108
-lda $27,yysbuf
-stq $27,yysptr
-mov $31,$0
-br L.34
-L.108:
-ldq $27,yysptr
-lda $25,yysbuf
-cmpule $27,$25,$23
-bne $23,L.118
-ldq $27,yysptr
-lda $27,-1($27)
-stq $27,yysptr
-ldb $27,($27)
-stl $27,-76+160($sp)
-br L.119
-L.118:
-ldq $27,yyin
-ldl $25,($27)
-subl $25,1,$25
-stl $25,($27)
-cmplt $25,$31,$23
-beq $23,L.120
-ldq $16,yyin
-jsr $26,_filbuf
-ldgp $gp,0($26)
-mov $0,$27
-stl $27,-80+160($sp)
-br L.121
-L.120:
-ldq $27,yyin
-lda $27,8($27)
-ldq $25,($27)
-lda $22,1($25)
-stq $22,($27)
-ldbu $27,($25)
-stl $27,-80+160($sp)
-L.121:
-ldl $27,-80+160($sp)
-stl $27,-76+160($sp)
-L.119:
-ldl $27,-76+160($sp)
-stl $27,yytchar
-cmpeq $27,10,$23
-beq $23,L.116
-ldl $27,yylineno
-lda $27,1($27)
-stl $27,yylineno
-ldl $27,yytchar
-stl $27,-72+160($sp)
-br L.117
-L.116:
-ldl $27,yytchar
-stl $27,-72+160($sp)
-L.117:
-ldl $27,-72+160($sp)
-lda $25,-1
-cmpeq $27,$25,$23
-beq $23,L.114
-stl $31,-68+160($sp)
-br L.115
-L.114:
-ldl $27,yytchar
-stl $27,-68+160($sp)
-L.115:
-ldl $27,-68+160($sp)
-stb $27,yytext
-sll $27,8*(8-1),$27
-sra $27,8*(8-1),$27
-stl $27,yyprevious
-ldl $27,yyprevious
-cmple $27,$31,$23
-bne $23,L.122
-ldq $27,yyout
-ldl $25,($27)
-subl $25,1,$25
-stl $25,($27)
-cmplt $25,$31,$23
-beq $23,L.125
-ldl $27,yyprevious
-and $27,(1<<(8*1))-1,$27
-mov $27,$16
-ldq $17,yyout
-jsr $26,_flsbuf
-ldgp $gp,0($26)
-br L.126
-L.125:
-ldq $27,yyout
-lda $27,8($27)
-ldq $25,($27)
-lda $22,1($25)
-stq $22,($27)
-ldl $27,yyprevious
-stb $27,($25)
-L.126:
-L.122:
-lda $11,yytext
-br L.37
-L.34:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,160($sp)
-ret
-.end yylook
-.globl yyback
-.text
-.ent yyback
-yyback:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-mov $16,$27
-cmpeq $27,$31,$23
-beq $23,L.131
-mov $31,$0
-br L.127
-L.130:
-mov $16,$27
-lda $16,4($27)
-ldl $27,($27)
-cmpeq $27,$17,$23
-beq $23,L.133
-lda $0,1
-br L.127
-L.133:
-L.131:
-ldl $27,($16)
-cmpeq $27,$31,$23
-beq $23,L.130
-mov $31,$0
-L.127:
-lda $sp,64($sp)
-ret
-.end yyback
-.globl yyinput
-.text
-.ent yyinput
-yyinput:
-ldgp $gp,0($27)
-lda $sp,-96($sp)
-.mask 0x4007800,-64
-.frame $sp,96,$26,48
-stq $11,0($sp)
-stq $12,8($sp)
-stq $13,16($sp)
-stq $14,24($sp)
-stq $26,32($sp)
-.prologue 1
-ldq $27,yysptr
-lda $25,yysbuf
-cmpule $27,$25,$23
-bne $23,L.144
-ldq $27,yysptr
-lda $27,-1($27)
-stq $27,yysptr
-ldb $12,($27)
-br L.145
-L.144:
-ldq $27,yyin
-ldl $25,($27)
-subl $25,1,$25
-stl $25,($27)
-cmplt $25,$31,$23
-beq $23,L.146
-ldq $16,yyin
-jsr $26,_filbuf
-ldgp $gp,0($26)
-mov $0,$27
-mov $27,$11
-br L.147
-L.146:
-ldq $27,yyin
-lda $27,8($27)
-ldq $25,($27)
-lda $22,1($25)
-stq $22,($27)
-ldbu $11,($25)
-L.147:
-mov $11,$12
-L.145:
-stl $12,yytchar
-cmpeq $12,10,$23
-beq $23,L.142
-ldl $27,yylineno
-lda $27,1($27)
-stl $27,yylineno
-ldl $13,yytchar
-br L.143
-L.142:
-ldl $13,yytchar
-L.143:
-lda $27,-1
-cmpeq $13,$27,$23
-beq $23,L.140
-mov $31,$14
-br L.141
-L.140:
-ldl $14,yytchar
-L.141:
-mov $14,$0
-L.135:
-ldq $11,0($sp)
-ldq $12,8($sp)
-ldq $13,16($sp)
-ldq $14,24($sp)
-ldq $26,32($sp)
-lda $sp,96($sp)
-ret
-.end yyinput
-.globl yyoutput
-.text
-.ent yyoutput
-yyoutput:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x5000000,-72
-.frame $sp,80,$26,48
-stq $24,0($sp)
-stq $26,8($sp)
-stq $16,32($sp)
-.prologue 1
-ldq $27,yyout
-ldl $25,($27)
-subl $25,1,$25
-stl $25,($27)
-cmplt $25,$31,$23
-beq $23,L.150
-ldl $27,-48+80($sp)
-and $27,(1<<(8*1))-1,$27
-mov $27,$16
-ldq $17,yyout
-jsr $26,_flsbuf
-ldgp $gp,0($26)
-br L.151
-L.150:
-ldq $27,yyout
-lda $27,8($27)
-ldq $25,($27)
-lda $22,1($25)
-stq $22,($27)
-ldl $27,-48+80($sp)
-stb $27,($25)
-L.151:
-mov $31,$0
-L.148:
-ldq $24,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end yyoutput
-.globl yyunput
-.text
-.ent yyunput
-yyunput:
-ldgp $gp,0($27)
-lda $sp,-80($sp)
-.mask 0x5000000,-72
-.frame $sp,80,$26,48
-stq $24,0($sp)
-stq $26,8($sp)
-.prologue 1
-stl $16,yytchar
-ldl $27,yytchar
-cmpeq $27,10,$23
-beq $23,L.153
-ldl $27,yylineno
-subl $27,1,$27
-stl $27,yylineno
-L.153:
-ldq $27,yysptr
-lda $25,1($27)
-stq $25,yysptr
-ldl $25,yytchar
-stb $25,($27)
-mov $31,$0
-L.152:
-ldq $24,0($sp)
-ldq $26,8($sp)
-lda $sp,80($sp)
-ret
-.end yyunput
-.globl main
-.text
-.ent main
-main:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-.prologue 1
-jsr $26,yyparse
-ldgp $gp,0($26)
-mov $31,$0
-L.155:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end main
-.globl yyerror
-.text
-.ent yyerror
-yyerror:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.mask 0x4000000,-64
-.frame $sp,64,$26,48
-stq $26,0($sp)
-stq $16,16($sp)
-.prologue 1
-lda $16,L.157
-ldq $17,-48+64($sp)
-jsr $26,printf
-ldgp $gp,0($26)
-mov $31,$0
-L.156:
-ldq $26,0($sp)
-lda $sp,64($sp)
-ret
-.end yyerror
-.sdata
-.globl yyexca
-.align 1
-yyexca:
-.word 0xffff
-.word 0x1
-.word 0x0
-.word 0xffff
-.word 0xfffe
-.word 0x0
-.globl yyact
-.align 1
-yyact:
-.word 0xc
-.word 0x2
-.word 0x9
-.word 0x8
-.word 0x11
-.word 0xb
-.word 0x19
-.word 0x11
-.word 0xf
-.word 0x12
-.word 0x10
-.word 0xa
-.word 0x12
-.word 0x11
-.word 0xf
-.word 0x7
-.word 0x10
-.word 0xd
-.word 0x12
-.word 0x5
-.word 0x3
-.word 0x1
-.word 0x0
-.word 0x13
-.word 0x14
-.word 0x0
-.word 0x0
-.word 0x15
-.word 0x16
-.word 0x17
-.word 0x18
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x6
-.word 0xe
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x4
-.word 0x6
-.globl yypact
-.align 1
-yypact:
-.word 0xfc18
-.word 0xfff7
-.word 0xfc18
-.word 0x5
-.word 0xfff9
-.word 0xffc5
-.word 0xfc18
-.word 0xfc18
-.word 0xfc18
-.word 0xffd8
-.word 0xffe3
-.word 0xffd8
-.word 0xffd8
-.word 0xfc18
-.word 0xfc18
-.word 0xffd8
-.word 0xffd8
-.word 0xffd8
-.word 0xffd8
-.word 0xffda
-.word 0xffdd
-.word 0xffda
-.word 0xffda
-.word 0xfc18
-.word 0xfc18
-.word 0xfc18
-.globl yypgo
-.align 1
-yypgo:
-.word 0x0
-.word 0x15
-.word 0x14
-.word 0x11
-.word 0xb
-.globl yyr1
-.align 1
-yyr1:
-.word 0x0
-.word 0x1
-.word 0x1
-.word 0x1
-.word 0x1
-.word 0x2
-.word 0x4
-.word 0x4
-.word 0x4
-.word 0x4
-.word 0x4
-.word 0x4
-.word 0x4
-.word 0x4
-.word 0x3
-.globl yyr2
-.align 1
-yyr2:
-.word 0x0
-.word 0x0
-.word 0x2
-.word 0x3
-.word 0x3
-.word 0x3
-.word 0x3
-.word 0x3
-.word 0x3
-.word 0x3
-.word 0x2
-.word 0x3
-.word 0x1
-.word 0x1
-.word 0x1
-.globl yychk
-.align 1
-yychk:
-.word 0xfc18
-.word 0xffff
-.word 0xa
-.word 0xfffe
-.word 0x100
-.word 0xfffd
-.word 0x101
-.word 0xa
-.word 0xa
-.word 0x3d
-.word 0xfffc
-.word 0x2d
-.word 0x28
-.word 0xfffd
-.word 0x102
-.word 0x2b
-.word 0x2d
-.word 0x2a
-.word 0x2f
-.word 0xfffc
-.word 0xfffc
-.word 0xfffc
-.word 0xfffc
-.word 0xfffc
-.word 0xfffc
-.word 0x29
-.globl yydef
-.align 1
-yydef:
-.word 0x1
-.word 0xfffe
-.word 0x2
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0xe
-.word 0x3
-.word 0x4
-.word 0x0
-.word 0x5
-.word 0x0
-.word 0x0
-.word 0xc
-.word 0xd
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0xa
-.word 0x0
-.word 0x6
-.word 0x7
-.word 0x8
-.word 0x9
-.word 0xb
-.globl yychar
-.align 2
-yychar:
-.long 0xffffffff
-.globl yynerrs
-.align 2
-yynerrs:
-.long 0x0
-.globl yyerrflag
-.align 1
-yyerrflag:
-.word 0x0
-.globl yyparse
-.text
-.text
-.ent yyparse
-yyparse:
-ldgp $gp,0($27)
-lda $sp,-432($sp)
-.mask 0x5007e00,-376
-.frame $sp,432,$26,48
-stq $9,0($sp)
-stq $10,8($sp)
-stq $11,16($sp)
-stq $12,24($sp)
-stq $13,32($sp)
-stq $14,40($sp)
-stq $24,48($sp)
-stq $26,56($sp)
-.prologue 1
-mov $31,$27
-mov $27,$13
-lda $25,-1
-stl $25,yychar
-stl $31,yynerrs
-stw $27,yyerrflag
-lda $12,-360+432($sp)
-lda $10,yyv-4
-L.161:
-lda $27,2($12)
-mov $27,$12
-lda $25,-58+432($sp)
-cmpule $27,$25,$23
-bne $23,L.162
-lda $16,L.165
-jsr $26,yyerror
-ldgp $gp,0($26)
-lda $0,1
-br L.158
-L.162:
-stw $13,($12)
-lda $10,4($10)
-ldl $27,yyval
-stl $27,($10)
-L.166:
-sll $13,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yypact($27)
-ldw $11,($27)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-1000
-cmple $27,$25,$23
-beq $23,L.167
-br L.169
-L.167:
-ldl $27,yychar
-cmplt $27,$31,$23
-beq $23,L.170
-jsr $26,yylex
-ldgp $gp,0($26)
-stl $0,yychar
-cmplt $0,$31,$23
-beq $23,L.172
-stl $31,yychar
-L.172:
-L.170:
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-ldl $25,yychar
-addl $27,$25,$27
-mov $27,$11
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmplt $27,$31,$23
-bne $23,L.176
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,249
-cmplt $27,$25,$23
-bne $23,L.174
-L.176:
-br L.169
-L.174:
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yyact($27)
-ldw $27,($27)
-mov $27,$11
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yychk($27)
-ldw $27,($27)
-ldl $25,yychar
-cmpeq $27,$25,$23
-beq $23,L.177
-lda $27,-1
-stl $27,yychar
-ldl $27,yylval
-stl $27,yyval
-mov $11,$13
-lda $27,yyerrflag
-ldw $27,($27)
-cmple $27,$31,$23
-bne $23,L.161
-lda $27,yyerrflag
-ldw $27,($27)
-subl $27,1,$27
-stw $27,yyerrflag
-br L.161
-L.177:
-L.169:
-sll $13,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yydef($27)
-ldw $27,($27)
-mov $27,$11
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-lda $25,-2
-cmpeq $27,$25,$23
-beq $23,L.181
-ldl $27,yychar
-cmplt $27,$31,$23
-beq $23,L.183
-jsr $26,yylex
-ldgp $gp,0($26)
-stl $0,yychar
-cmplt $0,$31,$23
-beq $23,L.185
-stl $31,yychar
-L.185:
-L.183:
-lda $9,yyexca
-br L.190
-L.187:
-L.188:
-lda $9,4($9)
-L.190:
-ldw $27,($9)
-lda $25,-1
-cmpeq $27,$25,$23
-beq $23,L.187
-lda $27,2($9)
-ldw $27,($27)
-sll $13,8*(8-2),$25
-sra $25,8*(8-2),$25
-cmpeq $27,$25,$23
-beq $23,L.187
-br L.192
-L.191:
-ldw $27,($9)
-ldl $25,yychar
-cmpeq $27,$25,$23
-beq $23,L.194
-br L.193
-L.194:
-L.192:
-lda $27,4($9)
-mov $27,$9
-ldw $27,($27)
-cmplt $27,$31,$23
-beq $23,L.191
-L.193:
-lda $27,2($9)
-ldw $27,($27)
-mov $27,$11
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmplt $27,$31,$23
-beq $23,L.196
-mov $31,$0
-br L.158
-L.196:
-L.181:
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmpeq $27,$31,$23
-beq $23,L.198
-lda $27,yyerrflag
-ldw $27,($27)
-stl $27,-364+432($sp)
-ldl $27,-364+432($sp)
-cmplt $27,$31,$23
-bne $23,L.200
-cmple $27,3,$23
-beq $23,L.200
-sll $27,3,$27
-ldq $27,L.216($27)
-jmp ($27)
-.rdata
-.align 3
-L.216:
-.quad L.203
-.quad L.206
-.quad L.206
-.quad L.213
-.text
-L.203:
-lda $16,L.204
-jsr $26,yyerror
-ldgp $gp,0($26)
-L.205:
-ldl $27,yynerrs
-lda $27,1($27)
-stl $27,yynerrs
-L.206:
-lda $27,3
-stw $27,yyerrflag
-br L.208
-L.207:
-ldw $27,($12)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yypact($27)
-ldw $27,($27)
-lda $27,256($27)
-mov $27,$11
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-cmplt $27,$31,$23
-bne $23,L.210
-lda $25,249
-cmplt $27,$25,$23
-beq $23,L.210
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yyact($27)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yychk($27)
-ldw $27,($27)
-lda $25,256
-cmpeq $27,$25,$23
-beq $23,L.210
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yyact($27)
-ldw $13,($27)
-br L.161
-L.210:
-ldw $27,($12)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yypact($27)
-ldw $11,($27)
-lda $12,-2($12)
-lda $10,-4($10)
-L.208:
-mov $12,$27
-lda $25,-358+432($sp)
-cmpult $27,$25,$23
-beq $23,L.207
-L.212:
-lda $0,1
-br L.158
-L.213:
-ldl $27,yychar
-cmpeq $27,$31,$23
-beq $23,L.214
-br L.212
-L.214:
-lda $27,-1
-stl $27,yychar
-br L.166
-L.200:
-L.198:
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $25,yyr2($27)
-ldw $22,($25)
-sll $22,8*(8-4),$22
-sra $22,8*(8-4),$22
-sll $22,1,$22
-subq $12,$22,$12
-mov $10,$14
-ldw $25,($25)
-sll $25,8*(8-4),$25
-sra $25,8*(8-4),$25
-sll $25,2,$25
-subq $10,$25,$10
-ldl $25,4($10)
-stl $25,yyval
-stw $11,-360+432($sp)
-lda $27,yyr1($27)
-ldw $11,($27)
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yypgo($27)
-ldw $27,($27)
-ldw $25,($12)
-addl $27,$25,$27
-lda $27,1($27)
-stw $27,-58+432($sp)
-lda $27,-58+432($sp)
-ldw $27,($27)
-lda $25,249
-cmplt $27,$25,$23
-beq $23,L.219
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yyact($27)
-ldw $27,($27)
-mov $27,$13
-sll $27,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yychk($27)
-ldw $27,($27)
-sll $11,8*(8-2),$25
-sra $25,8*(8-2),$25
-negl $25,$25
-cmpeq $27,$25,$23
-bne $23,L.217
-L.219:
-sll $11,8*(8-2),$27
-sra $27,8*(8-2),$27
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yypgo($27)
-ldw $27,($27)
-sll $27,8*(8-4),$27
-sra $27,8*(8-4),$27
-sll $27,1,$27
-lda $27,yyact($27)
-ldw $13,($27)
-L.217:
-lda $27,-360+432($sp)
-ldw $27,($27)
-stl $27,-364+432($sp)
-ldl $27,-364+432($sp)
-cmplt $27,4,$23
-bne $23,L.161
-cmple $27,14,$23
-beq $23,L.161
-subl $27,4,$27
-sll $27,3,$27
-ldq $27,L.241($27)
-jmp ($27)
-.rdata
-.align 3
-L.241:
-.quad L.223
-.quad L.224
-.quad L.226
-.quad L.228
-.quad L.230
-.quad L.232
-.quad L.234
-.quad L.161
-.quad L.236
-.quad L.238
-.quad L.240
-.text
-L.223:
-stw $31,yyerrflag
-br L.161
-L.224:
-lda $16,L.225
-jsr $26,printf
-ldgp $gp,0($26)
-br L.161
-L.226:
-lda $16,L.227
-jsr $26,printf
-ldgp $gp,0($26)
-br L.161
-L.228:
-lda $16,L.229
-jsr $26,printf
-ldgp $gp,0($26)
-br L.161
-L.230:
-lda $16,L.231
-jsr $26,printf
-ldgp $gp,0($26)
-br L.161
-L.232:
-lda $16,L.233
-jsr $26,printf
-ldgp $gp,0($26)
-br L.161
-L.234:
-lda $16,L.235
-jsr $26,printf
-ldgp $gp,0($26)
-br L.161
-L.236:
-lda $16,L.237
-jsr $26,printf
-ldgp $gp,0($26)
-br L.161
-L.238:
-lda $16,L.239
-lda $17,yytext
-jsr $26,printf
-ldgp $gp,0($26)
-br L.161
-L.240:
-lda $16,L.157
-lda $17,yytext
-jsr $26,printf
-ldgp $gp,0($26)
-br L.161
-L.158:
-ldq $9,0($sp)
-ldq $10,8($sp)
-ldq $11,16($sp)
-ldq $12,24($sp)
-ldq $13,32($sp)
-ldq $14,40($sp)
-ldq $24,48($sp)
-ldq $26,56($sp)
-lda $sp,432($sp)
-ret
-.end yyparse
-.globl yywrap
-.text
-.ent yywrap
-yywrap:
-ldgp $gp,0($27)
-lda $sp,-64($sp)
-.frame $sp,64,$26,48
-.prologue 1
-lda $0,1
-L.242:
-lda $sp,64($sp)
-ret
-.end yywrap
-.globl yyv
-.comm yyv,600
-.globl yyfnd
-.comm yyfnd,8
-.globl yyolsp
-.comm yyolsp,8
-.globl yylsp
-.comm yylsp,8
-.globl yylstate
-.comm yylstate,1600
-.globl yyestate
-.comm yyestate,8
-.globl yytchar
-.comm yytchar,4
-.globl yysbuf
-.comm yysbuf,200
-.globl yymorfg
-.comm yymorfg,4
-.globl yytext
-.comm yytext,200
-.globl yyleng
-.comm yyleng,4
-.extern _iob 0
-.globl yyval
-.comm yyval,4
-.globl yylval
-.comm yylval,4
-.rdata
-.align 0
-L.239:
-.byte 112
-.byte 117
-.byte 115
-.byte 104
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.237:
-.byte 108
-.byte 111
-.byte 97
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.235:
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.233:
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.231:
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 121
-.byte 10
-.byte 0
-.align 0
-L.229:
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 10
-.byte 97
-.byte 100
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.227:
-.byte 97
-.byte 100
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.225:
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.204:
-.byte 115
-.byte 121
-.byte 110
-.byte 116
-.byte 97
-.byte 120
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 0
-.align 0
-L.165:
-.byte 121
-.byte 97
-.byte 99
-.byte 99
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 0
-L.157:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.18:
-.byte 98
-.byte 97
-.byte 100
-.byte 32
-.byte 115
-.byte 119
-.byte 105
-.byte 116
-.byte 99
-.byte 104
-.byte 32
-.byte 121
-.byte 121
-.byte 108
-.byte 111
-.byte 111
-.byte 107
-.byte 32
-.byte 37
-.byte 100
-.byte 0
+.sdata
+.globl yyin
+.align 3
+yyin:
+.quad _iob
+.globl yyout
+.align 3
+yyout:
+.quad _iob+56
+.globl yylex
+.text
+.text
+.ent yylex
+yylex:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x4004000,-72
+.frame $sp,80,$26,48
+stq $14,0($sp)
+stq $26,8($sp)
+.prologue 1
+br L.5
+L.4:
+L.7:
+lda $27,-1
+cmplt $14,$27,$23
+bne $23,L.8
+cmple $14,4,$23
+beq $23,L.8
+subl $14,-1,$27
+sll $27,3,$27
+ldq $27,L.19($27)
+jmp ($27)
+.rdata
+.align 3
+L.19:
+.quad L.9
+.quad L.10
+.quad L.13
+.quad L.14
+.quad L.9
+.quad L.16
+.text
+L.10:
+jsr $26,yywrap
+ldgp $gp,0($26)
+cmpeq $0,$31,$23
+bne $23,L.9
+mov $31,$0
+br L.3
+L.13:
+lda $0,257
+br L.3
+L.14:
+lda $0,258
+br L.3
+L.16:
+lda $27,yytext
+ldb $0,($27)
+br L.3
+L.8:
+ldq $16,yyout
+lda $17,L.18
+mov $14,$18
+jsr $26,fprintf
+ldgp $gp,0($26)
+L.9:
+L.5:
+jsr $26,yylook
+ldgp $gp,0($26)
+mov $0,$14
+cmplt $0,$31,$23
+beq $23,L.4
+mov $31,$0
+L.3:
+ldq $14,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end yylex
+.sdata
+.globl yyvstop
+.align 2
+yyvstop:
+.long 0x0
+.long 0x4
+.long 0x0
+.long 0x3
+.long 0x4
+.long 0x0
+.long 0x2
+.long 0x4
+.long 0x0
+.long 0x1
+.long 0x4
+.long 0x0
+.long 0x2
+.long 0x0
+.long 0x1
+.long 0x0
+.long 0x0
+.globl yycrank
+.align 0
+yycrank:
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x3
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x4
+.byte 0x1
+.byte 0x3
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x5
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x6
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.globl yysvec
+.align 3
+yysvec:
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.quad yycrank-2
+.quad 0x0
+.quad 0x0
+.quad yycrank
+.quad yysvec+24
+.quad 0x0
+.quad yycrank
+.quad 0x0
+.quad yyvstop+4
+.quad yycrank
+.quad 0x0
+.quad yyvstop+12
+.quad yycrank+4
+.quad 0x0
+.quad yyvstop+24
+.quad yycrank+38
+.quad 0x0
+.quad yyvstop+36
+.quad yycrank
+.quad yysvec+120
+.quad yyvstop+48
+.quad yycrank
+.quad yysvec+144
+.quad yyvstop+56
+.quad 0x0
+.quad 0x0
+.quad 0x0
+.globl yytop
+.align 3
+yytop:
+.quad yycrank+282
+.globl yybgin
+.align 3
+yybgin:
+.quad yysvec+24
+.globl yymatch
+.align 0
+yymatch:
+.byte 0
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 9
+.byte 10
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 9
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 65
+.byte 1
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 0
+.globl yyextra
+.align 0
+yyextra:
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.globl yylineno
+.align 2
+yylineno:
+.long 0x1
+.globl yysptr
+.align 3
+yysptr:
+.quad yysbuf
+.globl yyprevious
+.align 2
+yyprevious:
+.long 0xa
+.globl yylook
+.text
+.text
+.ent yylook
+yylook:
+ldgp $gp,0($27)
+lda $sp,-160($sp)
+.mask 0x5007e00,-104
+.frame $sp,160,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+.prologue 1
+ldl $27,yymorfg
+cmpeq $27,$31,$23
+beq $23,L.35
+lda $11,yytext
+br L.36
+L.35:
+stl $31,yymorfg
+ldl $27,yyleng
+lda $11,yytext($27)
+L.36:
+L.37:
+lda $13,yylstate
+ldq $27,yybgin
+mov $27,$14
+stq $27,yyestate
+ldl $27,yyprevious
+cmpeq $27,10,$23
+beq $23,L.41
+lda $14,24($14)
+L.41:
+L.43:
+ldq $12,($14)
+mov $12,$27
+lda $25,yycrank
+cmpeq $27,$25,$23
+beq $23,L.47
+ldq $27,8($14)
+stq $27,-64+160($sp)
+ldq $27,-64+160($sp)
+cmpeq $27,$31,$23
+beq $23,L.49
+br L.94
+L.49:
+ldq $27,-64+160($sp)
+ldq $27,($27)
+lda $25,yycrank
+cmpeq $27,$25,$23
+beq $23,L.51
+br L.94
+L.51:
+L.47:
+mov $11,$27
+stq $27,-88+160($sp)
+lda $11,1($27)
+ldq $25,yysptr
+lda $22,yysbuf
+cmpule $25,$22,$23
+bne $23,L.61
+ldq $25,yysptr
+lda $25,-1($25)
+stq $25,yysptr
+ldb $25,($25)
+stl $25,-76+160($sp)
+br L.62
+L.61:
+ldq $25,yyin
+ldl $22,($25)
+subl $22,1,$22
+stl $22,($25)
+cmplt $22,$31,$23
+beq $23,L.63
+ldq $16,yyin
+jsr $26,_filbuf
+ldgp $gp,0($26)
+mov $0,$27
+stl $27,-80+160($sp)
+br L.64
+L.63:
+ldq $27,yyin
+lda $27,8($27)
+ldq $25,($27)
+lda $22,1($25)
+stq $22,($27)
+ldbu $27,($25)
+stl $27,-80+160($sp)
+L.64:
+ldl $27,-80+160($sp)
+stl $27,-76+160($sp)
+L.62:
+ldl $27,-76+160($sp)
+stl $27,yytchar
+cmpeq $27,10,$23
+beq $23,L.59
+ldl $27,yylineno
+lda $27,1($27)
+stl $27,yylineno
+ldl $27,yytchar
+stl $27,-72+160($sp)
+br L.60
+L.59:
+ldl $27,yytchar
+stl $27,-72+160($sp)
+L.60:
+ldl $27,-72+160($sp)
+lda $25,-1
+cmpeq $27,$25,$23
+beq $23,L.57
+stl $31,-68+160($sp)
+br L.58
+L.57:
+ldl $27,yytchar
+stl $27,-68+160($sp)
+L.58:
+ldl $27,-68+160($sp)
+mov $27,$10
+ldq $25,-88+160($sp)
+stb $27,($25)
+L.65:
+mov $12,$9
+mov $12,$27
+lda $25,yycrank
+cmpule $27,$25,$23
+bne $23,L.66
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+addq $27,$9,$12
+mov $12,$27
+ldq $25,yytop
+cmpule $27,$25,$23
+beq $23,L.67
+lda $27,24
+ldb $25,($12)
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+mulq $27,$25,$27
+lda $27,yysvec($27)
+mov $14,$25
+cmpeq $27,$25,$23
+beq $23,L.67
+lda $27,yysvec
+lda $25,24
+lda $22,1($12)
+ldb $22,($22)
+sll $22,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $25,yysvec($25)
+cmpeq $25,$27,$23
+beq $23,L.70
+lda $27,-1($11)
+mov $27,$11
+ldb $27,($27)
+stl $27,yytchar
+ldl $27,yytchar
+cmpeq $27,10,$23
+beq $23,L.72
+ldl $27,yylineno
+subl $27,1,$27
+stl $27,yylineno
+L.72:
+ldq $27,yysptr
+lda $25,1($27)
+stq $25,yysptr
+ldl $25,yytchar
+stb $25,($27)
+br L.94
+L.70:
+mov $13,$27
+lda $13,8($27)
+lda $25,24
+lda $22,1($12)
+ldb $22,($22)
+sll $22,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $25,yysvec($25)
+mov $25,$14
+stq $25,($27)
+br L.43
+L.66:
+mov $12,$27
+lda $25,yycrank
+cmpult $27,$25,$23
+beq $23,L.75
+lda $27,yycrank
+mov $12,$25
+subq $27,$25,$27
+divq $27,2,$27
+sll $27,1,$27
+lda $27,yycrank($27)
+mov $27,$9
+mov $27,$12
+sll $10,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+addq $27,$12,$12
+mov $12,$27
+ldq $25,yytop
+cmpule $27,$25,$23
+beq $23,L.77
+lda $27,24
+ldb $25,($12)
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+mulq $27,$25,$27
+lda $27,yysvec($27)
+mov $14,$25
+cmpeq $27,$25,$23
+beq $23,L.77
+lda $27,yysvec
+lda $25,24
+lda $22,1($12)
+ldb $22,($22)
+sll $22,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $25,yysvec($25)
+cmpeq $25,$27,$23
+beq $23,L.79
+lda $27,-1($11)
+mov $27,$11
+ldb $27,($27)
+stl $27,yytchar
+ldl $27,yytchar
+cmpeq $27,10,$23
+beq $23,L.81
+ldl $27,yylineno
+subl $27,1,$27
+stl $27,yylineno
+L.81:
+ldq $27,yysptr
+lda $25,1($27)
+stq $25,yysptr
+ldl $25,yytchar
+stb $25,($27)
+br L.94
+L.79:
+mov $13,$27
+lda $13,8($27)
+lda $25,24
+lda $22,1($12)
+ldb $22,($22)
+sll $22,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $25,yysvec($25)
+mov $25,$14
+stq $25,($27)
+br L.43
+L.77:
+lda $27,yymatch($10)
+ldb $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+addq $27,$9,$12
+mov $12,$27
+ldq $25,yytop
+cmpule $27,$25,$23
+beq $23,L.83
+lda $27,24
+ldb $25,($12)
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+mulq $27,$25,$27
+lda $27,yysvec($27)
+mov $14,$25
+cmpeq $27,$25,$23
+beq $23,L.83
+lda $27,yysvec
+lda $25,24
+lda $22,1($12)
+ldb $22,($22)
+sll $22,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $25,yysvec($25)
+cmpeq $25,$27,$23
+beq $23,L.85
+lda $27,-1($11)
+mov $27,$11
+ldb $27,($27)
+stl $27,yytchar
+ldl $27,yytchar
+cmpeq $27,10,$23
+beq $23,L.87
+ldl $27,yylineno
+subl $27,1,$27
+stl $27,yylineno
+L.87:
+ldq $27,yysptr
+lda $25,1($27)
+stq $25,yysptr
+ldl $25,yytchar
+stb $25,($27)
+br L.94
+L.85:
+mov $13,$27
+lda $13,8($27)
+lda $25,24
+lda $22,1($12)
+ldb $22,($22)
+sll $22,8*(8-4),$22
+sra $22,8*(8-4),$22
+mulq $25,$22,$25
+lda $25,yysvec($25)
+mov $25,$14
+stq $25,($27)
+br L.43
+L.83:
+L.75:
+L.67:
+ldq $27,8($14)
+mov $27,$14
+cmpeq $27,$31,$23
+bne $23,L.89
+ldq $27,($14)
+mov $27,$12
+lda $25,yycrank
+cmpeq $27,$25,$23
+bne $23,L.89
+br L.65
+L.89:
+lda $27,-1($11)
+mov $27,$11
+ldb $27,($27)
+stl $27,yytchar
+ldl $27,yytchar
+cmpeq $27,10,$23
+beq $23,L.91
+ldl $27,yylineno
+subl $27,1,$27
+stl $27,yylineno
+L.91:
+ldq $27,yysptr
+lda $25,1($27)
+stq $25,yysptr
+ldl $25,yytchar
+stb $25,($27)
+br L.94
+L.93:
+mov $11,$27
+lda $11,-1($27)
+stb $31,($27)
+ldq $27,($13)
+mov $31,$25
+mov $27,$22
+cmpeq $22,$25,$23
+bne $23,L.96
+ldq $27,16($27)
+stq $27,yyfnd
+cmpeq $27,$25,$23
+bne $23,L.96
+ldq $27,yyfnd
+ldl $27,($27)
+cmple $27,$31,$23
+bne $23,L.96
+stq $13,yyolsp
+ldq $27,yyfnd
+ldl $27,($27)
+lda $27,yyextra($27)
+ldb $27,($27)
+cmpeq $27,$31,$23
+bne $23,L.98
+br L.101
+L.100:
+lda $13,-8($13)
+mov $11,$27
+lda $11,-1($27)
+ldb $27,($27)
+stl $27,yytchar
+ldl $27,yytchar
+cmpeq $27,10,$23
+beq $23,L.103
+ldl $27,yylineno
+subl $27,1,$27
+stl $27,yylineno
+L.103:
+ldq $27,yysptr
+lda $25,1($27)
+stq $25,yysptr
+ldl $25,yytchar
+stb $25,($27)
+L.101:
+ldq $27,($13)
+ldq $16,16($27)
+ldq $27,yyfnd
+ldl $27,($27)
+negl $27,$17
+jsr $26,yyback
+ldgp $gp,0($26)
+cmpeq $0,1,$23
+bne $23,L.105
+mov $13,$27
+lda $25,yylstate
+cmpule $27,$25,$23
+beq $23,L.100
+L.105:
+L.98:
+ldb $27,($11)
+stl $27,yyprevious
+stq $13,yylsp
+lda $27,yytext
+mov $11,$25
+subq $25,$27,$27
+lda $27,1($27)
+stl $27,yyleng
+ldl $27,yyleng
+stb $31,yytext($27)
+ldq $27,yyfnd
+lda $25,4($27)
+stq $25,yyfnd
+ldl $0,($27)
+br L.34
+L.96:
+ldb $27,($11)
+stl $27,yytchar
+ldl $27,yytchar
+cmpeq $27,10,$23
+beq $23,L.106
+ldl $27,yylineno
+subl $27,1,$27
+stl $27,yylineno
+L.106:
+ldq $27,yysptr
+lda $25,1($27)
+stq $25,yysptr
+ldl $25,yytchar
+stb $25,($27)
+L.94:
+mov $13,$27
+lda $13,-8($27)
+lda $25,yylstate
+cmpule $27,$25,$23
+beq $23,L.93
+lda $27,yytext
+ldb $27,($27)
+cmpeq $27,$31,$23
+beq $23,L.108
+lda $27,yysbuf
+stq $27,yysptr
+mov $31,$0
+br L.34
+L.108:
+ldq $27,yysptr
+lda $25,yysbuf
+cmpule $27,$25,$23
+bne $23,L.118
+ldq $27,yysptr
+lda $27,-1($27)
+stq $27,yysptr
+ldb $27,($27)
+stl $27,-76+160($sp)
+br L.119
+L.118:
+ldq $27,yyin
+ldl $25,($27)
+subl $25,1,$25
+stl $25,($27)
+cmplt $25,$31,$23
+beq $23,L.120
+ldq $16,yyin
+jsr $26,_filbuf
+ldgp $gp,0($26)
+mov $0,$27
+stl $27,-80+160($sp)
+br L.121
+L.120:
+ldq $27,yyin
+lda $27,8($27)
+ldq $25,($27)
+lda $22,1($25)
+stq $22,($27)
+ldbu $27,($25)
+stl $27,-80+160($sp)
+L.121:
+ldl $27,-80+160($sp)
+stl $27,-76+160($sp)
+L.119:
+ldl $27,-76+160($sp)
+stl $27,yytchar
+cmpeq $27,10,$23
+beq $23,L.116
+ldl $27,yylineno
+lda $27,1($27)
+stl $27,yylineno
+ldl $27,yytchar
+stl $27,-72+160($sp)
+br L.117
+L.116:
+ldl $27,yytchar
+stl $27,-72+160($sp)
+L.117:
+ldl $27,-72+160($sp)
+lda $25,-1
+cmpeq $27,$25,$23
+beq $23,L.114
+stl $31,-68+160($sp)
+br L.115
+L.114:
+ldl $27,yytchar
+stl $27,-68+160($sp)
+L.115:
+ldl $27,-68+160($sp)
+stb $27,yytext
+sll $27,8*(8-1),$27
+sra $27,8*(8-1),$27
+stl $27,yyprevious
+ldl $27,yyprevious
+cmple $27,$31,$23
+bne $23,L.122
+ldq $27,yyout
+ldl $25,($27)
+subl $25,1,$25
+stl $25,($27)
+cmplt $25,$31,$23
+beq $23,L.125
+ldl $27,yyprevious
+and $27,(1<<(8*1))-1,$27
+mov $27,$16
+ldq $17,yyout
+jsr $26,_flsbuf
+ldgp $gp,0($26)
+br L.126
+L.125:
+ldq $27,yyout
+lda $27,8($27)
+ldq $25,($27)
+lda $22,1($25)
+stq $22,($27)
+ldl $27,yyprevious
+stb $27,($25)
+L.126:
+L.122:
+lda $11,yytext
+br L.37
+L.34:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,160($sp)
+ret
+.end yylook
+.globl yyback
+.text
+.ent yyback
+yyback:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+mov $16,$27
+cmpeq $27,$31,$23
+beq $23,L.131
+mov $31,$0
+br L.127
+L.130:
+mov $16,$27
+lda $16,4($27)
+ldl $27,($27)
+cmpeq $27,$17,$23
+beq $23,L.133
+lda $0,1
+br L.127
+L.133:
+L.131:
+ldl $27,($16)
+cmpeq $27,$31,$23
+beq $23,L.130
+mov $31,$0
+L.127:
+lda $sp,64($sp)
+ret
+.end yyback
+.globl yyinput
+.text
+.ent yyinput
+yyinput:
+ldgp $gp,0($27)
+lda $sp,-96($sp)
+.mask 0x4007800,-64
+.frame $sp,96,$26,48
+stq $11,0($sp)
+stq $12,8($sp)
+stq $13,16($sp)
+stq $14,24($sp)
+stq $26,32($sp)
+.prologue 1
+ldq $27,yysptr
+lda $25,yysbuf
+cmpule $27,$25,$23
+bne $23,L.144
+ldq $27,yysptr
+lda $27,-1($27)
+stq $27,yysptr
+ldb $12,($27)
+br L.145
+L.144:
+ldq $27,yyin
+ldl $25,($27)
+subl $25,1,$25
+stl $25,($27)
+cmplt $25,$31,$23
+beq $23,L.146
+ldq $16,yyin
+jsr $26,_filbuf
+ldgp $gp,0($26)
+mov $0,$27
+mov $27,$11
+br L.147
+L.146:
+ldq $27,yyin
+lda $27,8($27)
+ldq $25,($27)
+lda $22,1($25)
+stq $22,($27)
+ldbu $11,($25)
+L.147:
+mov $11,$12
+L.145:
+stl $12,yytchar
+cmpeq $12,10,$23
+beq $23,L.142
+ldl $27,yylineno
+lda $27,1($27)
+stl $27,yylineno
+ldl $13,yytchar
+br L.143
+L.142:
+ldl $13,yytchar
+L.143:
+lda $27,-1
+cmpeq $13,$27,$23
+beq $23,L.140
+mov $31,$14
+br L.141
+L.140:
+ldl $14,yytchar
+L.141:
+mov $14,$0
+L.135:
+ldq $11,0($sp)
+ldq $12,8($sp)
+ldq $13,16($sp)
+ldq $14,24($sp)
+ldq $26,32($sp)
+lda $sp,96($sp)
+ret
+.end yyinput
+.globl yyoutput
+.text
+.ent yyoutput
+yyoutput:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x5000000,-72
+.frame $sp,80,$26,48
+stq $24,0($sp)
+stq $26,8($sp)
+stq $16,32($sp)
+.prologue 1
+ldq $27,yyout
+ldl $25,($27)
+subl $25,1,$25
+stl $25,($27)
+cmplt $25,$31,$23
+beq $23,L.150
+ldl $27,-48+80($sp)
+and $27,(1<<(8*1))-1,$27
+mov $27,$16
+ldq $17,yyout
+jsr $26,_flsbuf
+ldgp $gp,0($26)
+br L.151
+L.150:
+ldq $27,yyout
+lda $27,8($27)
+ldq $25,($27)
+lda $22,1($25)
+stq $22,($27)
+ldl $27,-48+80($sp)
+stb $27,($25)
+L.151:
+mov $31,$0
+L.148:
+ldq $24,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end yyoutput
+.globl yyunput
+.text
+.ent yyunput
+yyunput:
+ldgp $gp,0($27)
+lda $sp,-80($sp)
+.mask 0x5000000,-72
+.frame $sp,80,$26,48
+stq $24,0($sp)
+stq $26,8($sp)
+.prologue 1
+stl $16,yytchar
+ldl $27,yytchar
+cmpeq $27,10,$23
+beq $23,L.153
+ldl $27,yylineno
+subl $27,1,$27
+stl $27,yylineno
+L.153:
+ldq $27,yysptr
+lda $25,1($27)
+stq $25,yysptr
+ldl $25,yytchar
+stb $25,($27)
+mov $31,$0
+L.152:
+ldq $24,0($sp)
+ldq $26,8($sp)
+lda $sp,80($sp)
+ret
+.end yyunput
+.globl main
+.text
+.ent main
+main:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+.prologue 1
+jsr $26,yyparse
+ldgp $gp,0($26)
+mov $31,$0
+L.155:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end main
+.globl yyerror
+.text
+.ent yyerror
+yyerror:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.mask 0x4000000,-64
+.frame $sp,64,$26,48
+stq $26,0($sp)
+stq $16,16($sp)
+.prologue 1
+lda $16,L.157
+ldq $17,-48+64($sp)
+jsr $26,printf
+ldgp $gp,0($26)
+mov $31,$0
+L.156:
+ldq $26,0($sp)
+lda $sp,64($sp)
+ret
+.end yyerror
+.sdata
+.globl yyexca
+.align 1
+yyexca:
+.word 0xffff
+.word 0x1
+.word 0x0
+.word 0xffff
+.word 0xfffe
+.word 0x0
+.globl yyact
+.align 1
+yyact:
+.word 0xc
+.word 0x2
+.word 0x9
+.word 0x8
+.word 0x11
+.word 0xb
+.word 0x19
+.word 0x11
+.word 0xf
+.word 0x12
+.word 0x10
+.word 0xa
+.word 0x12
+.word 0x11
+.word 0xf
+.word 0x7
+.word 0x10
+.word 0xd
+.word 0x12
+.word 0x5
+.word 0x3
+.word 0x1
+.word 0x0
+.word 0x13
+.word 0x14
+.word 0x0
+.word 0x0
+.word 0x15
+.word 0x16
+.word 0x17
+.word 0x18
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x6
+.word 0xe
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x4
+.word 0x6
+.globl yypact
+.align 1
+yypact:
+.word 0xfc18
+.word 0xfff7
+.word 0xfc18
+.word 0x5
+.word 0xfff9
+.word 0xffc5
+.word 0xfc18
+.word 0xfc18
+.word 0xfc18
+.word 0xffd8
+.word 0xffe3
+.word 0xffd8
+.word 0xffd8
+.word 0xfc18
+.word 0xfc18
+.word 0xffd8
+.word 0xffd8
+.word 0xffd8
+.word 0xffd8
+.word 0xffda
+.word 0xffdd
+.word 0xffda
+.word 0xffda
+.word 0xfc18
+.word 0xfc18
+.word 0xfc18
+.globl yypgo
+.align 1
+yypgo:
+.word 0x0
+.word 0x15
+.word 0x14
+.word 0x11
+.word 0xb
+.globl yyr1
+.align 1
+yyr1:
+.word 0x0
+.word 0x1
+.word 0x1
+.word 0x1
+.word 0x1
+.word 0x2
+.word 0x4
+.word 0x4
+.word 0x4
+.word 0x4
+.word 0x4
+.word 0x4
+.word 0x4
+.word 0x4
+.word 0x3
+.globl yyr2
+.align 1
+yyr2:
+.word 0x0
+.word 0x0
+.word 0x2
+.word 0x3
+.word 0x3
+.word 0x3
+.word 0x3
+.word 0x3
+.word 0x3
+.word 0x3
+.word 0x2
+.word 0x3
+.word 0x1
+.word 0x1
+.word 0x1
+.globl yychk
+.align 1
+yychk:
+.word 0xfc18
+.word 0xffff
+.word 0xa
+.word 0xfffe
+.word 0x100
+.word 0xfffd
+.word 0x101
+.word 0xa
+.word 0xa
+.word 0x3d
+.word 0xfffc
+.word 0x2d
+.word 0x28
+.word 0xfffd
+.word 0x102
+.word 0x2b
+.word 0x2d
+.word 0x2a
+.word 0x2f
+.word 0xfffc
+.word 0xfffc
+.word 0xfffc
+.word 0xfffc
+.word 0xfffc
+.word 0xfffc
+.word 0x29
+.globl yydef
+.align 1
+yydef:
+.word 0x1
+.word 0xfffe
+.word 0x2
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0xe
+.word 0x3
+.word 0x4
+.word 0x0
+.word 0x5
+.word 0x0
+.word 0x0
+.word 0xc
+.word 0xd
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0xa
+.word 0x0
+.word 0x6
+.word 0x7
+.word 0x8
+.word 0x9
+.word 0xb
+.globl yychar
+.align 2
+yychar:
+.long 0xffffffff
+.globl yynerrs
+.align 2
+yynerrs:
+.long 0x0
+.globl yyerrflag
+.align 1
+yyerrflag:
+.word 0x0
+.globl yyparse
+.text
+.text
+.ent yyparse
+yyparse:
+ldgp $gp,0($27)
+lda $sp,-432($sp)
+.mask 0x5007e00,-376
+.frame $sp,432,$26,48
+stq $9,0($sp)
+stq $10,8($sp)
+stq $11,16($sp)
+stq $12,24($sp)
+stq $13,32($sp)
+stq $14,40($sp)
+stq $24,48($sp)
+stq $26,56($sp)
+.prologue 1
+mov $31,$27
+mov $27,$13
+lda $25,-1
+stl $25,yychar
+stl $31,yynerrs
+stw $27,yyerrflag
+lda $12,-360+432($sp)
+lda $10,yyv-4
+L.161:
+lda $27,2($12)
+mov $27,$12
+lda $25,-58+432($sp)
+cmpule $27,$25,$23
+bne $23,L.162
+lda $16,L.165
+jsr $26,yyerror
+ldgp $gp,0($26)
+lda $0,1
+br L.158
+L.162:
+stw $13,($12)
+lda $10,4($10)
+ldl $27,yyval
+stl $27,($10)
+L.166:
+sll $13,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yypact($27)
+ldw $11,($27)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-1000
+cmple $27,$25,$23
+beq $23,L.167
+br L.169
+L.167:
+ldl $27,yychar
+cmplt $27,$31,$23
+beq $23,L.170
+jsr $26,yylex
+ldgp $gp,0($26)
+stl $0,yychar
+cmplt $0,$31,$23
+beq $23,L.172
+stl $31,yychar
+L.172:
+L.170:
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+ldl $25,yychar
+addl $27,$25,$27
+mov $27,$11
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmplt $27,$31,$23
+bne $23,L.176
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,249
+cmplt $27,$25,$23
+bne $23,L.174
+L.176:
+br L.169
+L.174:
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yyact($27)
+ldw $27,($27)
+mov $27,$11
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yychk($27)
+ldw $27,($27)
+ldl $25,yychar
+cmpeq $27,$25,$23
+beq $23,L.177
+lda $27,-1
+stl $27,yychar
+ldl $27,yylval
+stl $27,yyval
+mov $11,$13
+lda $27,yyerrflag
+ldw $27,($27)
+cmple $27,$31,$23
+bne $23,L.161
+lda $27,yyerrflag
+ldw $27,($27)
+subl $27,1,$27
+stw $27,yyerrflag
+br L.161
+L.177:
+L.169:
+sll $13,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yydef($27)
+ldw $27,($27)
+mov $27,$11
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+lda $25,-2
+cmpeq $27,$25,$23
+beq $23,L.181
+ldl $27,yychar
+cmplt $27,$31,$23
+beq $23,L.183
+jsr $26,yylex
+ldgp $gp,0($26)
+stl $0,yychar
+cmplt $0,$31,$23
+beq $23,L.185
+stl $31,yychar
+L.185:
+L.183:
+lda $9,yyexca
+br L.190
+L.187:
+L.188:
+lda $9,4($9)
+L.190:
+ldw $27,($9)
+lda $25,-1
+cmpeq $27,$25,$23
+beq $23,L.187
+lda $27,2($9)
+ldw $27,($27)
+sll $13,8*(8-2),$25
+sra $25,8*(8-2),$25
+cmpeq $27,$25,$23
+beq $23,L.187
+br L.192
+L.191:
+ldw $27,($9)
+ldl $25,yychar
+cmpeq $27,$25,$23
+beq $23,L.194
+br L.193
+L.194:
+L.192:
+lda $27,4($9)
+mov $27,$9
+ldw $27,($27)
+cmplt $27,$31,$23
+beq $23,L.191
+L.193:
+lda $27,2($9)
+ldw $27,($27)
+mov $27,$11
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmplt $27,$31,$23
+beq $23,L.196
+mov $31,$0
+br L.158
+L.196:
+L.181:
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmpeq $27,$31,$23
+beq $23,L.198
+lda $27,yyerrflag
+ldw $27,($27)
+stl $27,-364+432($sp)
+ldl $27,-364+432($sp)
+cmplt $27,$31,$23
+bne $23,L.200
+cmple $27,3,$23
+beq $23,L.200
+sll $27,3,$27
+ldq $27,L.216($27)
+jmp ($27)
+.rdata
+.align 3
+L.216:
+.quad L.203
+.quad L.206
+.quad L.206
+.quad L.213
+.text
+L.203:
+lda $16,L.204
+jsr $26,yyerror
+ldgp $gp,0($26)
+L.205:
+ldl $27,yynerrs
+lda $27,1($27)
+stl $27,yynerrs
+L.206:
+lda $27,3
+stw $27,yyerrflag
+br L.208
+L.207:
+ldw $27,($12)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yypact($27)
+ldw $27,($27)
+lda $27,256($27)
+mov $27,$11
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+cmplt $27,$31,$23
+bne $23,L.210
+lda $25,249
+cmplt $27,$25,$23
+beq $23,L.210
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yyact($27)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yychk($27)
+ldw $27,($27)
+lda $25,256
+cmpeq $27,$25,$23
+beq $23,L.210
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yyact($27)
+ldw $13,($27)
+br L.161
+L.210:
+ldw $27,($12)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yypact($27)
+ldw $11,($27)
+lda $12,-2($12)
+lda $10,-4($10)
+L.208:
+mov $12,$27
+lda $25,-358+432($sp)
+cmpult $27,$25,$23
+beq $23,L.207
+L.212:
+lda $0,1
+br L.158
+L.213:
+ldl $27,yychar
+cmpeq $27,$31,$23
+beq $23,L.214
+br L.212
+L.214:
+lda $27,-1
+stl $27,yychar
+br L.166
+L.200:
+L.198:
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $25,yyr2($27)
+ldw $22,($25)
+sll $22,8*(8-4),$22
+sra $22,8*(8-4),$22
+sll $22,1,$22
+subq $12,$22,$12
+mov $10,$14
+ldw $25,($25)
+sll $25,8*(8-4),$25
+sra $25,8*(8-4),$25
+sll $25,2,$25
+subq $10,$25,$10
+ldl $25,4($10)
+stl $25,yyval
+stw $11,-360+432($sp)
+lda $27,yyr1($27)
+ldw $11,($27)
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yypgo($27)
+ldw $27,($27)
+ldw $25,($12)
+addl $27,$25,$27
+lda $27,1($27)
+stw $27,-58+432($sp)
+lda $27,-58+432($sp)
+ldw $27,($27)
+lda $25,249
+cmplt $27,$25,$23
+beq $23,L.219
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yyact($27)
+ldw $27,($27)
+mov $27,$13
+sll $27,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yychk($27)
+ldw $27,($27)
+sll $11,8*(8-2),$25
+sra $25,8*(8-2),$25
+negl $25,$25
+cmpeq $27,$25,$23
+bne $23,L.217
+L.219:
+sll $11,8*(8-2),$27
+sra $27,8*(8-2),$27
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yypgo($27)
+ldw $27,($27)
+sll $27,8*(8-4),$27
+sra $27,8*(8-4),$27
+sll $27,1,$27
+lda $27,yyact($27)
+ldw $13,($27)
+L.217:
+lda $27,-360+432($sp)
+ldw $27,($27)
+stl $27,-364+432($sp)
+ldl $27,-364+432($sp)
+cmplt $27,4,$23
+bne $23,L.161
+cmple $27,14,$23
+beq $23,L.161
+subl $27,4,$27
+sll $27,3,$27
+ldq $27,L.241($27)
+jmp ($27)
+.rdata
+.align 3
+L.241:
+.quad L.223
+.quad L.224
+.quad L.226
+.quad L.228
+.quad L.230
+.quad L.232
+.quad L.234
+.quad L.161
+.quad L.236
+.quad L.238
+.quad L.240
+.text
+L.223:
+stw $31,yyerrflag
+br L.161
+L.224:
+lda $16,L.225
+jsr $26,printf
+ldgp $gp,0($26)
+br L.161
+L.226:
+lda $16,L.227
+jsr $26,printf
+ldgp $gp,0($26)
+br L.161
+L.228:
+lda $16,L.229
+jsr $26,printf
+ldgp $gp,0($26)
+br L.161
+L.230:
+lda $16,L.231
+jsr $26,printf
+ldgp $gp,0($26)
+br L.161
+L.232:
+lda $16,L.233
+jsr $26,printf
+ldgp $gp,0($26)
+br L.161
+L.234:
+lda $16,L.235
+jsr $26,printf
+ldgp $gp,0($26)
+br L.161
+L.236:
+lda $16,L.237
+jsr $26,printf
+ldgp $gp,0($26)
+br L.161
+L.238:
+lda $16,L.239
+lda $17,yytext
+jsr $26,printf
+ldgp $gp,0($26)
+br L.161
+L.240:
+lda $16,L.157
+lda $17,yytext
+jsr $26,printf
+ldgp $gp,0($26)
+br L.161
+L.158:
+ldq $9,0($sp)
+ldq $10,8($sp)
+ldq $11,16($sp)
+ldq $12,24($sp)
+ldq $13,32($sp)
+ldq $14,40($sp)
+ldq $24,48($sp)
+ldq $26,56($sp)
+lda $sp,432($sp)
+ret
+.end yyparse
+.globl yywrap
+.text
+.ent yywrap
+yywrap:
+ldgp $gp,0($27)
+lda $sp,-64($sp)
+.frame $sp,64,$26,48
+.prologue 1
+lda $0,1
+L.242:
+lda $sp,64($sp)
+ret
+.end yywrap
+.globl yyv
+.comm yyv,600
+.globl yyfnd
+.comm yyfnd,8
+.globl yyolsp
+.comm yyolsp,8
+.globl yylsp
+.comm yylsp,8
+.globl yylstate
+.comm yylstate,1600
+.globl yyestate
+.comm yyestate,8
+.globl yytchar
+.comm yytchar,4
+.globl yysbuf
+.comm yysbuf,200
+.globl yymorfg
+.comm yymorfg,4
+.globl yytext
+.comm yytext,200
+.globl yyleng
+.comm yyleng,4
+.extern _iob 0
+.globl yyval
+.comm yyval,4
+.globl yylval
+.comm yylval,4
+.rdata
+.align 0
+L.239:
+.byte 112
+.byte 117
+.byte 115
+.byte 104
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.237:
+.byte 108
+.byte 111
+.byte 97
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.235:
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.233:
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.231:
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 121
+.byte 10
+.byte 0
+.align 0
+L.229:
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 10
+.byte 97
+.byte 100
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.227:
+.byte 97
+.byte 100
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.225:
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.204:
+.byte 115
+.byte 121
+.byte 110
+.byte 116
+.byte 97
+.byte 120
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 0
+.align 0
+L.165:
+.byte 121
+.byte 97
+.byte 99
+.byte 99
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 0
+L.157:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.18:
+.byte 98
+.byte 97
+.byte 100
+.byte 32
+.byte 115
+.byte 119
+.byte 105
+.byte 116
+.byte 99
+.byte 104
+.byte 32
+.byte 121
+.byte 121
+.byte 108
+.byte 111
+.byte 111
+.byte 107
+.byte 32
+.byte 37
+.byte 100
+.byte 0
diff --git a/lcc/buildnt.bat b/lcc/buildnt.bat
index 7c48b13..16dc72f 100755
--- a/lcc/buildnt.bat
+++ b/lcc/buildnt.bat
@@ -1,3 +1,3 @@
-call vcvars32
-set BUILDDIR=bin
-nmake -f makefile.nt all
+call vcvars32
+set BUILDDIR=bin
+nmake -f makefile.nt all
diff --git a/lcc/buildnt.sh b/lcc/buildnt.sh
index 5d44b76..665d5ff 100755
--- a/lcc/buildnt.sh
+++ b/lcc/buildnt.sh
@@ -1,4 +1,4 @@
-#!/bin/sh
-export BUILDDIR=.\\out
-mkdir out
-nmake -f makefile.nt all
+#!/bin/sh
+export BUILDDIR=.\\out
+mkdir out
+nmake -f makefile.nt all
diff --git a/lcc/cpp/cpp.c b/lcc/cpp/cpp.c
index f632332..6baa473 100755
--- a/lcc/cpp/cpp.c
+++ b/lcc/cpp/cpp.c
@@ -1,322 +1,322 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#include <stdarg.h>
-#include "cpp.h"
-
-char rcsid[] = "cpp.c - faked rcsid";
-
-#define OUTS 16384
-char outbuf[OUTS];
-char *outp = outbuf;
-Source *cursource;
-int nerrs;
-struct token nltoken = { NL, 0, 0, 0, 1, (uchar*)"\n" };
-char *curtime;
-int incdepth;
-int ifdepth;
-int ifsatisfied[NIF];
-int skipping;
-
-
-int
-main(int argc, char **argv)
-{
- Tokenrow tr;
- time_t t;
- char ebuf[BUFSIZ];
-
- setbuf(stderr, ebuf);
- t = time(NULL);
- curtime = ctime(&t);
- maketokenrow(3, &tr);
- expandlex();
- setup(argc, argv);
- fixlex();
- iniths();
- genline();
- process(&tr);
- flushout();
- fflush(stderr);
- exit(nerrs > 0);
- return 0;
-}
-
-void
-process(Tokenrow *trp)
-{
- int anymacros = 0;
-
- for (;;) {
- if (trp->tp >= trp->lp) {
- trp->tp = trp->lp = trp->bp;
- outp = outbuf;
- anymacros |= gettokens(trp, 1);
- trp->tp = trp->bp;
- }
- if (trp->tp->type == END) {
- if (--incdepth>=0) {
- if (cursource->ifdepth)
- error(ERROR,
- "Unterminated conditional in #include");
- unsetsource();
- cursource->line += cursource->lineinc;
- trp->tp = trp->lp;
- genline();
- continue;
- }
- if (ifdepth)
- error(ERROR, "Unterminated #if/#ifdef/#ifndef");
- break;
- }
- if (trp->tp->type==SHARP) {
- trp->tp += 1;
- control(trp);
- } else if (!skipping && anymacros)
- expandrow(trp, NULL);
- if (skipping)
- setempty(trp);
- puttokens(trp);
- anymacros = 0;
- cursource->line += cursource->lineinc;
- if (cursource->lineinc>1) {
- genline();
- }
- }
-}
-
-void
-control(Tokenrow *trp)
-{
- Nlist *np;
- Token *tp;
-
- tp = trp->tp;
- if (tp->type!=NAME) {
- if (tp->type==NUMBER)
- goto kline;
- if (tp->type != NL)
- error(ERROR, "Unidentifiable control line");
- return; /* else empty line */
- }
- if ((np = lookup(tp, 0))==NULL || (np->flag&ISKW)==0 && !skipping) {
- error(WARNING, "Unknown preprocessor control %t", tp);
- return;
- }
- if (skipping) {
- switch (np->val) {
- case KENDIF:
- if (--ifdepth<skipping)
- skipping = 0;
- --cursource->ifdepth;
- setempty(trp);
- return;
-
- case KIFDEF:
- case KIFNDEF:
- case KIF:
- if (++ifdepth >= NIF)
- error(FATAL, "#if too deeply nested");
- ++cursource->ifdepth;
- return;
-
- case KELIF:
- case KELSE:
- if (ifdepth<=skipping)
- break;
- return;
-
- default:
- return;
- }
- }
- switch (np->val) {
- case KDEFINE:
- dodefine(trp);
- break;
-
- case KUNDEF:
- tp += 1;
- if (tp->type!=NAME || trp->lp - trp->bp != 4) {
- error(ERROR, "Syntax error in #undef");
- break;
- }
- if ((np = lookup(tp, 0)) != NULL)
- np->flag &= ~ISDEFINED;
- break;
-
- case KPRAGMA:
- return;
-
- case KIFDEF:
- case KIFNDEF:
- case KIF:
- if (++ifdepth >= NIF)
- error(FATAL, "#if too deeply nested");
- ++cursource->ifdepth;
- ifsatisfied[ifdepth] = 0;
- if (eval(trp, np->val))
- ifsatisfied[ifdepth] = 1;
- else
- skipping = ifdepth;
- break;
-
- case KELIF:
- if (ifdepth==0) {
- error(ERROR, "#elif with no #if");
- return;
- }
- if (ifsatisfied[ifdepth]==2)
- error(ERROR, "#elif after #else");
- if (eval(trp, np->val)) {
- if (ifsatisfied[ifdepth])
- skipping = ifdepth;
- else {
- skipping = 0;
- ifsatisfied[ifdepth] = 1;
- }
- } else
- skipping = ifdepth;
- break;
-
- case KELSE:
- if (ifdepth==0 || cursource->ifdepth==0) {
- error(ERROR, "#else with no #if");
- return;
- }
- if (ifsatisfied[ifdepth]==2)
- error(ERROR, "#else after #else");
- if (trp->lp - trp->bp != 3)
- error(ERROR, "Syntax error in #else");
- skipping = ifsatisfied[ifdepth]? ifdepth: 0;
- ifsatisfied[ifdepth] = 2;
- break;
-
- case KENDIF:
- if (ifdepth==0 || cursource->ifdepth==0) {
- error(ERROR, "#endif with no #if");
- return;
- }
- --ifdepth;
- --cursource->ifdepth;
- if (trp->lp - trp->bp != 3)
- error(WARNING, "Syntax error in #endif");
- break;
-
- case KERROR:
- trp->tp = tp+1;
- error(WARNING, "#error directive: %r", trp);
- break;
-
- case KLINE:
- trp->tp = tp+1;
- expandrow(trp, "<line>");
- tp = trp->bp+2;
- kline:
- if (tp+1>=trp->lp || tp->type!=NUMBER || tp+3<trp->lp
- || (tp+3==trp->lp && ((tp+1)->type!=STRING)||*(tp+1)->t=='L')){
- error(ERROR, "Syntax error in #line");
- return;
- }
- cursource->line = atol((char*)tp->t)-1;
- if (cursource->line<0 || cursource->line>=32768)
- error(WARNING, "#line specifies number out of range");
- tp = tp+1;
- if (tp+1<trp->lp)
- cursource->filename=(char*)newstring(tp->t+1,tp->len-2,0);
- return;
-
- case KDEFINED:
- error(ERROR, "Bad syntax for control line");
- break;
-
- case KINCLUDE:
- doinclude(trp);
- trp->lp = trp->bp;
- return;
-
- case KEVAL:
- eval(trp, np->val);
- break;
-
- default:
- error(ERROR, "Preprocessor control `%t' not yet implemented", tp);
- break;
- }
- setempty(trp);
- return;
-}
-
-void *
-domalloc(int size)
-{
- void *p = malloc(size);
-
- if (p==NULL)
- error(FATAL, "Out of memory from malloc");
- return p;
-}
-
-void
-dofree(void *p)
-{
- free(p);
-}
-
-void
-error(enum errtype type, char *string, ...)
-{
- va_list ap;
- char *cp, *ep;
- Token *tp;
- Tokenrow *trp;
- Source *s;
- int i;
-
- fprintf(stderr, "cpp: ");
- for (s=cursource; s; s=s->next)
- if (*s->filename)
- fprintf(stderr, "%s:%d ", s->filename, s->line);
- va_start(ap, string);
- for (ep=string; *ep; ep++) {
- if (*ep=='%') {
- switch (*++ep) {
-
- case 's':
- cp = va_arg(ap, char *);
- fprintf(stderr, "%s", cp);
- break;
- case 'd':
- i = va_arg(ap, int);
- fprintf(stderr, "%d", i);
- break;
- case 't':
- tp = va_arg(ap, Token *);
- fprintf(stderr, "%.*s", tp->len, tp->t);
- break;
-
- case 'r':
- trp = va_arg(ap, Tokenrow *);
- for (tp=trp->tp; tp<trp->lp&&tp->type!=NL; tp++) {
- if (tp>trp->tp && tp->wslen)
- fputc(' ', stderr);
- fprintf(stderr, "%.*s", tp->len, tp->t);
- }
- break;
-
- default:
- fputc(*ep, stderr);
- break;
- }
- } else
- fputc(*ep, stderr);
- }
- va_end(ap);
- fputc('\n', stderr);
- if (type==FATAL)
- exit(1);
- if (type!=WARNING)
- nerrs = 1;
- fflush(stderr);
-}
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <time.h>
+#include <stdarg.h>
+#include "cpp.h"
+
+char rcsid[] = "cpp.c - faked rcsid";
+
+#define OUTS 16384
+char outbuf[OUTS];
+char *outp = outbuf;
+Source *cursource;
+int nerrs;
+struct token nltoken = { NL, 0, 0, 0, 1, (uchar*)"\n" };
+char *curtime;
+int incdepth;
+int ifdepth;
+int ifsatisfied[NIF];
+int skipping;
+
+
+int
+main(int argc, char **argv)
+{
+ Tokenrow tr;
+ time_t t;
+ char ebuf[BUFSIZ];
+
+ setbuf(stderr, ebuf);
+ t = time(NULL);
+ curtime = ctime(&t);
+ maketokenrow(3, &tr);
+ expandlex();
+ setup(argc, argv);
+ fixlex();
+ iniths();
+ genline();
+ process(&tr);
+ flushout();
+ fflush(stderr);
+ exit(nerrs > 0);
+ return 0;
+}
+
+void
+process(Tokenrow *trp)
+{
+ int anymacros = 0;
+
+ for (;;) {
+ if (trp->tp >= trp->lp) {
+ trp->tp = trp->lp = trp->bp;
+ outp = outbuf;
+ anymacros |= gettokens(trp, 1);
+ trp->tp = trp->bp;
+ }
+ if (trp->tp->type == END) {
+ if (--incdepth>=0) {
+ if (cursource->ifdepth)
+ error(ERROR,
+ "Unterminated conditional in #include");
+ unsetsource();
+ cursource->line += cursource->lineinc;
+ trp->tp = trp->lp;
+ genline();
+ continue;
+ }
+ if (ifdepth)
+ error(ERROR, "Unterminated #if/#ifdef/#ifndef");
+ break;
+ }
+ if (trp->tp->type==SHARP) {
+ trp->tp += 1;
+ control(trp);
+ } else if (!skipping && anymacros)
+ expandrow(trp, NULL);
+ if (skipping)
+ setempty(trp);
+ puttokens(trp);
+ anymacros = 0;
+ cursource->line += cursource->lineinc;
+ if (cursource->lineinc>1) {
+ genline();
+ }
+ }
+}
+
+void
+control(Tokenrow *trp)
+{
+ Nlist *np;
+ Token *tp;
+
+ tp = trp->tp;
+ if (tp->type!=NAME) {
+ if (tp->type==NUMBER)
+ goto kline;
+ if (tp->type != NL)
+ error(ERROR, "Unidentifiable control line");
+ return; /* else empty line */
+ }
+ if ((np = lookup(tp, 0))==NULL || (np->flag&ISKW)==0 && !skipping) {
+ error(WARNING, "Unknown preprocessor control %t", tp);
+ return;
+ }
+ if (skipping) {
+ switch (np->val) {
+ case KENDIF:
+ if (--ifdepth<skipping)
+ skipping = 0;
+ --cursource->ifdepth;
+ setempty(trp);
+ return;
+
+ case KIFDEF:
+ case KIFNDEF:
+ case KIF:
+ if (++ifdepth >= NIF)
+ error(FATAL, "#if too deeply nested");
+ ++cursource->ifdepth;
+ return;
+
+ case KELIF:
+ case KELSE:
+ if (ifdepth<=skipping)
+ break;
+ return;
+
+ default:
+ return;
+ }
+ }
+ switch (np->val) {
+ case KDEFINE:
+ dodefine(trp);
+ break;
+
+ case KUNDEF:
+ tp += 1;
+ if (tp->type!=NAME || trp->lp - trp->bp != 4) {
+ error(ERROR, "Syntax error in #undef");
+ break;
+ }
+ if ((np = lookup(tp, 0)) != NULL)
+ np->flag &= ~ISDEFINED;
+ break;
+
+ case KPRAGMA:
+ return;
+
+ case KIFDEF:
+ case KIFNDEF:
+ case KIF:
+ if (++ifdepth >= NIF)
+ error(FATAL, "#if too deeply nested");
+ ++cursource->ifdepth;
+ ifsatisfied[ifdepth] = 0;
+ if (eval(trp, np->val))
+ ifsatisfied[ifdepth] = 1;
+ else
+ skipping = ifdepth;
+ break;
+
+ case KELIF:
+ if (ifdepth==0) {
+ error(ERROR, "#elif with no #if");
+ return;
+ }
+ if (ifsatisfied[ifdepth]==2)
+ error(ERROR, "#elif after #else");
+ if (eval(trp, np->val)) {
+ if (ifsatisfied[ifdepth])
+ skipping = ifdepth;
+ else {
+ skipping = 0;
+ ifsatisfied[ifdepth] = 1;
+ }
+ } else
+ skipping = ifdepth;
+ break;
+
+ case KELSE:
+ if (ifdepth==0 || cursource->ifdepth==0) {
+ error(ERROR, "#else with no #if");
+ return;
+ }
+ if (ifsatisfied[ifdepth]==2)
+ error(ERROR, "#else after #else");
+ if (trp->lp - trp->bp != 3)
+ error(ERROR, "Syntax error in #else");
+ skipping = ifsatisfied[ifdepth]? ifdepth: 0;
+ ifsatisfied[ifdepth] = 2;
+ break;
+
+ case KENDIF:
+ if (ifdepth==0 || cursource->ifdepth==0) {
+ error(ERROR, "#endif with no #if");
+ return;
+ }
+ --ifdepth;
+ --cursource->ifdepth;
+ if (trp->lp - trp->bp != 3)
+ error(WARNING, "Syntax error in #endif");
+ break;
+
+ case KERROR:
+ trp->tp = tp+1;
+ error(WARNING, "#error directive: %r", trp);
+ break;
+
+ case KLINE:
+ trp->tp = tp+1;
+ expandrow(trp, "<line>");
+ tp = trp->bp+2;
+ kline:
+ if (tp+1>=trp->lp || tp->type!=NUMBER || tp+3<trp->lp
+ || (tp+3==trp->lp && ((tp+1)->type!=STRING)||*(tp+1)->t=='L')){
+ error(ERROR, "Syntax error in #line");
+ return;
+ }
+ cursource->line = atol((char*)tp->t)-1;
+ if (cursource->line<0 || cursource->line>=32768)
+ error(WARNING, "#line specifies number out of range");
+ tp = tp+1;
+ if (tp+1<trp->lp)
+ cursource->filename=(char*)newstring(tp->t+1,tp->len-2,0);
+ return;
+
+ case KDEFINED:
+ error(ERROR, "Bad syntax for control line");
+ break;
+
+ case KINCLUDE:
+ doinclude(trp);
+ trp->lp = trp->bp;
+ return;
+
+ case KEVAL:
+ eval(trp, np->val);
+ break;
+
+ default:
+ error(ERROR, "Preprocessor control `%t' not yet implemented", tp);
+ break;
+ }
+ setempty(trp);
+ return;
+}
+
+void *
+domalloc(int size)
+{
+ void *p = malloc(size);
+
+ if (p==NULL)
+ error(FATAL, "Out of memory from malloc");
+ return p;
+}
+
+void
+dofree(void *p)
+{
+ free(p);
+}
+
+void
+error(enum errtype type, char *string, ...)
+{
+ va_list ap;
+ char *cp, *ep;
+ Token *tp;
+ Tokenrow *trp;
+ Source *s;
+ int i;
+
+ fprintf(stderr, "cpp: ");
+ for (s=cursource; s; s=s->next)
+ if (*s->filename)
+ fprintf(stderr, "%s:%d ", s->filename, s->line);
+ va_start(ap, string);
+ for (ep=string; *ep; ep++) {
+ if (*ep=='%') {
+ switch (*++ep) {
+
+ case 's':
+ cp = va_arg(ap, char *);
+ fprintf(stderr, "%s", cp);
+ break;
+ case 'd':
+ i = va_arg(ap, int);
+ fprintf(stderr, "%d", i);
+ break;
+ case 't':
+ tp = va_arg(ap, Token *);
+ fprintf(stderr, "%.*s", tp->len, tp->t);
+ break;
+
+ case 'r':
+ trp = va_arg(ap, Tokenrow *);
+ for (tp=trp->tp; tp<trp->lp&&tp->type!=NL; tp++) {
+ if (tp>trp->tp && tp->wslen)
+ fputc(' ', stderr);
+ fprintf(stderr, "%.*s", tp->len, tp->t);
+ }
+ break;
+
+ default:
+ fputc(*ep, stderr);
+ break;
+ }
+ } else
+ fputc(*ep, stderr);
+ }
+ va_end(ap);
+ fputc('\n', stderr);
+ if (type==FATAL)
+ exit(1);
+ if (type!=WARNING)
+ nerrs = 1;
+ fflush(stderr);
+}
diff --git a/lcc/cpp/cpp.h b/lcc/cpp/cpp.h
index 3c8a61c..d72f24a 100755
--- a/lcc/cpp/cpp.h
+++ b/lcc/cpp/cpp.h
@@ -1,163 +1,163 @@
-#define INS 32768 /* input buffer */
-#define OBS 4096 /* outbut buffer */
-#define NARG 32 /* Max number arguments to a macro */
-#define NINCLUDE 32 /* Max number of include directories (-I) */
-#define NIF 32 /* depth of nesting of #if */
-#ifndef EOF
-#define EOF (-1)
-#endif
-#ifndef NULL
-#define NULL 0
-#endif
-
-#ifndef __alpha
-typedef unsigned char uchar;
-#endif
-
-enum toktype { END, UNCLASS, NAME, NUMBER, STRING, CCON, NL, WS, DSHARP,
- EQ, NEQ, LEQ, GEQ, LSH, RSH, LAND, LOR, PPLUS, MMINUS,
- ARROW, SBRA, SKET, LP, RP, DOT, AND, STAR, PLUS, MINUS,
- TILDE, NOT, SLASH, PCT, LT, GT, CIRC, OR, QUEST,
- COLON, ASGN, COMMA, SHARP, SEMIC, CBRA, CKET,
- ASPLUS, ASMINUS, ASSTAR, ASSLASH, ASPCT, ASCIRC, ASLSH,
- ASRSH, ASOR, ASAND, ELLIPS,
- DSHARP1, NAME1, DEFINED, UMINUS };
-
-enum kwtype { KIF, KIFDEF, KIFNDEF, KELIF, KELSE, KENDIF, KINCLUDE, KDEFINE,
- KUNDEF, KLINE, KERROR, KPRAGMA, KDEFINED,
- KLINENO, KFILE, KDATE, KTIME, KSTDC, KEVAL };
-
-#define ISDEFINED 01 /* has #defined value */
-#define ISKW 02 /* is PP keyword */
-#define ISUNCHANGE 04 /* can't be #defined in PP */
-#define ISMAC 010 /* builtin macro, e.g. __LINE__ */
-
-#define EOB 0xFE /* sentinel for end of input buffer */
-#define EOFC 0xFD /* sentinel for end of input file */
-#define XPWS 1 /* token flag: white space to assure token sep. */
-
-typedef struct token {
- unsigned char type;
- unsigned char flag;
- unsigned short hideset;
- unsigned int wslen;
- unsigned int len;
- uchar *t;
-} Token;
-
-typedef struct tokenrow {
- Token *tp; /* current one to scan */
- Token *bp; /* base (allocated value) */
- Token *lp; /* last+1 token used */
- int max; /* number allocated */
-} Tokenrow;
-
-typedef struct source {
- char *filename; /* name of file of the source */
- int line; /* current line number */
- int lineinc; /* adjustment for \\n lines */
- uchar *inb; /* input buffer */
- uchar *inp; /* input pointer */
- uchar *inl; /* end of input */
- int fd; /* input source */
- int ifdepth; /* conditional nesting in include */
- struct source *next; /* stack for #include */
-} Source;
-
-typedef struct nlist {
- struct nlist *next;
- uchar *name;
- int len;
- Tokenrow *vp; /* value as macro */
- Tokenrow *ap; /* list of argument names, if any */
- char val; /* value as preprocessor name */
- char flag; /* is defined, is pp name */
-} Nlist;
-
-typedef struct includelist {
- char deleted;
- char always;
- char *file;
-} Includelist;
-
-#define new(t) (t *)domalloc(sizeof(t))
-#define quicklook(a,b) (namebit[(a)&077] & (1<<((b)&037)))
-#define quickset(a,b) namebit[(a)&077] |= (1<<((b)&037))
-extern unsigned long namebit[077+1];
-
-enum errtype { WARNING, ERROR, FATAL };
-
-void expandlex(void);
-void fixlex(void);
-void setup(int, char **);
-int gettokens(Tokenrow *, int);
-int comparetokens(Tokenrow *, Tokenrow *);
-Source *setsource(char *, int, char *);
-void unsetsource(void);
-void puttokens(Tokenrow *);
-void process(Tokenrow *);
-void *domalloc(int);
-void dofree(void *);
-void error(enum errtype, char *, ...);
-void flushout(void);
-int fillbuf(Source *);
-int trigraph(Source *);
-int foldline(Source *);
-Nlist *lookup(Token *, int);
-void control(Tokenrow *);
-void dodefine(Tokenrow *);
-void doadefine(Tokenrow *, int);
-void doinclude(Tokenrow *);
-void doif(Tokenrow *, enum kwtype);
-void expand(Tokenrow *, Nlist *);
-void builtin(Tokenrow *, int);
-int gatherargs(Tokenrow *, Tokenrow **, int *);
-void substargs(Nlist *, Tokenrow *, Tokenrow **);
-void expandrow(Tokenrow *, char *);
-void maketokenrow(int, Tokenrow *);
-Tokenrow *copytokenrow(Tokenrow *, Tokenrow *);
-Token *growtokenrow(Tokenrow *);
-Tokenrow *normtokenrow(Tokenrow *);
-void adjustrow(Tokenrow *, int);
-void movetokenrow(Tokenrow *, Tokenrow *);
-void insertrow(Tokenrow *, int, Tokenrow *);
-void peektokens(Tokenrow *, char *);
-void doconcat(Tokenrow *);
-Tokenrow *stringify(Tokenrow *);
-int lookuparg(Nlist *, Token *);
-long eval(Tokenrow *, int);
-void genline(void);
-void setempty(Tokenrow *);
-void makespace(Tokenrow *);
-char *outnum(char *, int);
-int digit(int);
-uchar *newstring(uchar *, int, int);
-int checkhideset(int, Nlist *);
-void prhideset(int);
-int newhideset(int, Nlist *);
-int unionhideset(int, int);
-void iniths(void);
-void setobjname(char *);
-#define rowlen(tokrow) ((tokrow)->lp - (tokrow)->bp)
-
-extern char *outp;
-extern Token nltoken;
-extern Source *cursource;
-extern char *curtime;
-extern int incdepth;
-extern int ifdepth;
-extern int ifsatisfied[NIF];
-extern int Mflag;
-extern int skipping;
-extern int verbose;
-extern int Cplusplus;
-extern Nlist *kwdefined;
-extern Includelist includelist[NINCLUDE];
-extern char wd[];
-
-extern int creat(char *, int);
-extern int open(char *, int);
-extern int close(int);
-extern int dup2(int, int);
-extern int write(int, char *, size_t);
-extern int read(int, char *, size_t);
+#define INS 32768 /* input buffer */
+#define OBS 4096 /* outbut buffer */
+#define NARG 32 /* Max number arguments to a macro */
+#define NINCLUDE 32 /* Max number of include directories (-I) */
+#define NIF 32 /* depth of nesting of #if */
+#ifndef EOF
+#define EOF (-1)
+#endif
+#ifndef NULL
+#define NULL 0
+#endif
+
+#ifndef __alpha
+typedef unsigned char uchar;
+#endif
+
+enum toktype { END, UNCLASS, NAME, NUMBER, STRING, CCON, NL, WS, DSHARP,
+ EQ, NEQ, LEQ, GEQ, LSH, RSH, LAND, LOR, PPLUS, MMINUS,
+ ARROW, SBRA, SKET, LP, RP, DOT, AND, STAR, PLUS, MINUS,
+ TILDE, NOT, SLASH, PCT, LT, GT, CIRC, OR, QUEST,
+ COLON, ASGN, COMMA, SHARP, SEMIC, CBRA, CKET,
+ ASPLUS, ASMINUS, ASSTAR, ASSLASH, ASPCT, ASCIRC, ASLSH,
+ ASRSH, ASOR, ASAND, ELLIPS,
+ DSHARP1, NAME1, DEFINED, UMINUS };
+
+enum kwtype { KIF, KIFDEF, KIFNDEF, KELIF, KELSE, KENDIF, KINCLUDE, KDEFINE,
+ KUNDEF, KLINE, KERROR, KPRAGMA, KDEFINED,
+ KLINENO, KFILE, KDATE, KTIME, KSTDC, KEVAL };
+
+#define ISDEFINED 01 /* has #defined value */
+#define ISKW 02 /* is PP keyword */
+#define ISUNCHANGE 04 /* can't be #defined in PP */
+#define ISMAC 010 /* builtin macro, e.g. __LINE__ */
+
+#define EOB 0xFE /* sentinel for end of input buffer */
+#define EOFC 0xFD /* sentinel for end of input file */
+#define XPWS 1 /* token flag: white space to assure token sep. */
+
+typedef struct token {
+ unsigned char type;
+ unsigned char flag;
+ unsigned short hideset;
+ unsigned int wslen;
+ unsigned int len;
+ uchar *t;
+} Token;
+
+typedef struct tokenrow {
+ Token *tp; /* current one to scan */
+ Token *bp; /* base (allocated value) */
+ Token *lp; /* last+1 token used */
+ int max; /* number allocated */
+} Tokenrow;
+
+typedef struct source {
+ char *filename; /* name of file of the source */
+ int line; /* current line number */
+ int lineinc; /* adjustment for \\n lines */
+ uchar *inb; /* input buffer */
+ uchar *inp; /* input pointer */
+ uchar *inl; /* end of input */
+ int fd; /* input source */
+ int ifdepth; /* conditional nesting in include */
+ struct source *next; /* stack for #include */
+} Source;
+
+typedef struct nlist {
+ struct nlist *next;
+ uchar *name;
+ int len;
+ Tokenrow *vp; /* value as macro */
+ Tokenrow *ap; /* list of argument names, if any */
+ char val; /* value as preprocessor name */
+ char flag; /* is defined, is pp name */
+} Nlist;
+
+typedef struct includelist {
+ char deleted;
+ char always;
+ char *file;
+} Includelist;
+
+#define new(t) (t *)domalloc(sizeof(t))
+#define quicklook(a,b) (namebit[(a)&077] & (1<<((b)&037)))
+#define quickset(a,b) namebit[(a)&077] |= (1<<((b)&037))
+extern unsigned long namebit[077+1];
+
+enum errtype { WARNING, ERROR, FATAL };
+
+void expandlex(void);
+void fixlex(void);
+void setup(int, char **);
+int gettokens(Tokenrow *, int);
+int comparetokens(Tokenrow *, Tokenrow *);
+Source *setsource(char *, int, char *);
+void unsetsource(void);
+void puttokens(Tokenrow *);
+void process(Tokenrow *);
+void *domalloc(int);
+void dofree(void *);
+void error(enum errtype, char *, ...);
+void flushout(void);
+int fillbuf(Source *);
+int trigraph(Source *);
+int foldline(Source *);
+Nlist *lookup(Token *, int);
+void control(Tokenrow *);
+void dodefine(Tokenrow *);
+void doadefine(Tokenrow *, int);
+void doinclude(Tokenrow *);
+void doif(Tokenrow *, enum kwtype);
+void expand(Tokenrow *, Nlist *);
+void builtin(Tokenrow *, int);
+int gatherargs(Tokenrow *, Tokenrow **, int *);
+void substargs(Nlist *, Tokenrow *, Tokenrow **);
+void expandrow(Tokenrow *, char *);
+void maketokenrow(int, Tokenrow *);
+Tokenrow *copytokenrow(Tokenrow *, Tokenrow *);
+Token *growtokenrow(Tokenrow *);
+Tokenrow *normtokenrow(Tokenrow *);
+void adjustrow(Tokenrow *, int);
+void movetokenrow(Tokenrow *, Tokenrow *);
+void insertrow(Tokenrow *, int, Tokenrow *);
+void peektokens(Tokenrow *, char *);
+void doconcat(Tokenrow *);
+Tokenrow *stringify(Tokenrow *);
+int lookuparg(Nlist *, Token *);
+long eval(Tokenrow *, int);
+void genline(void);
+void setempty(Tokenrow *);
+void makespace(Tokenrow *);
+char *outnum(char *, int);
+int digit(int);
+uchar *newstring(uchar *, int, int);
+int checkhideset(int, Nlist *);
+void prhideset(int);
+int newhideset(int, Nlist *);
+int unionhideset(int, int);
+void iniths(void);
+void setobjname(char *);
+#define rowlen(tokrow) ((tokrow)->lp - (tokrow)->bp)
+
+extern char *outp;
+extern Token nltoken;
+extern Source *cursource;
+extern char *curtime;
+extern int incdepth;
+extern int ifdepth;
+extern int ifsatisfied[NIF];
+extern int Mflag;
+extern int skipping;
+extern int verbose;
+extern int Cplusplus;
+extern Nlist *kwdefined;
+extern Includelist includelist[NINCLUDE];
+extern char wd[];
+
+extern int creat(char *, int);
+extern int open(char *, int);
+extern int close(int);
+extern int dup2(int, int);
+extern int write(int, char *, size_t);
+extern int read(int, char *, size_t);
diff --git a/lcc/cpp/eval.c b/lcc/cpp/eval.c
index 2442ac2..7061eff 100755
--- a/lcc/cpp/eval.c
+++ b/lcc/cpp/eval.c
@@ -1,520 +1,520 @@
-#include <stdlib.h>
-#include <string.h>
-#include "cpp.h"
-
-#define NSTAK 32
-#define SGN 0
-#define UNS 1
-#define UND 2
-
-#define UNSMARK 0x1000
-
-struct value {
- long val;
- int type;
-};
-
-/* conversion types */
-#define RELAT 1
-#define ARITH 2
-#define LOGIC 3
-#define SPCL 4
-#define SHIFT 5
-#define UNARY 6
-
-/* operator priority, arity, and conversion type, indexed by tokentype */
-struct pri {
- char pri;
- char arity;
- char ctype;
-} priority[] = {
- { 0, 0, 0 }, /* END */
- { 0, 0, 0 }, /* UNCLASS */
- { 0, 0, 0 }, /* NAME */
- { 0, 0, 0 }, /* NUMBER */
- { 0, 0, 0 }, /* STRING */
- { 0, 0, 0 }, /* CCON */
- { 0, 0, 0 }, /* NL */
- { 0, 0, 0 }, /* WS */
- { 0, 0, 0 }, /* DSHARP */
- { 11, 2, RELAT }, /* EQ */
- { 11, 2, RELAT }, /* NEQ */
- { 12, 2, RELAT }, /* LEQ */
- { 12, 2, RELAT }, /* GEQ */
- { 13, 2, SHIFT }, /* LSH */
- { 13, 2, SHIFT }, /* RSH */
- { 7, 2, LOGIC }, /* LAND */
- { 6, 2, LOGIC }, /* LOR */
- { 0, 0, 0 }, /* PPLUS */
- { 0, 0, 0 }, /* MMINUS */
- { 0, 0, 0 }, /* ARROW */
- { 0, 0, 0 }, /* SBRA */
- { 0, 0, 0 }, /* SKET */
- { 3, 0, 0 }, /* LP */
- { 3, 0, 0 }, /* RP */
- { 0, 0, 0 }, /* DOT */
- { 10, 2, ARITH }, /* AND */
- { 15, 2, ARITH }, /* STAR */
- { 14, 2, ARITH }, /* PLUS */
- { 14, 2, ARITH }, /* MINUS */
- { 16, 1, UNARY }, /* TILDE */
- { 16, 1, UNARY }, /* NOT */
- { 15, 2, ARITH }, /* SLASH */
- { 15, 2, ARITH }, /* PCT */
- { 12, 2, RELAT }, /* LT */
- { 12, 2, RELAT }, /* GT */
- { 9, 2, ARITH }, /* CIRC */
- { 8, 2, ARITH }, /* OR */
- { 5, 2, SPCL }, /* QUEST */
- { 5, 2, SPCL }, /* COLON */
- { 0, 0, 0 }, /* ASGN */
- { 4, 2, 0 }, /* COMMA */
- { 0, 0, 0 }, /* SHARP */
- { 0, 0, 0 }, /* SEMIC */
- { 0, 0, 0 }, /* CBRA */
- { 0, 0, 0 }, /* CKET */
- { 0, 0, 0 }, /* ASPLUS */
- { 0, 0, 0 }, /* ASMINUS */
- { 0, 0, 0 }, /* ASSTAR */
- { 0, 0, 0 }, /* ASSLASH */
- { 0, 0, 0 }, /* ASPCT */
- { 0, 0, 0 }, /* ASCIRC */
- { 0, 0, 0 }, /* ASLSH */
- { 0, 0, 0 }, /* ASRSH */
- { 0, 0, 0 }, /* ASOR */
- { 0, 0, 0 }, /* ASAND */
- { 0, 0, 0 }, /* ELLIPS */
- { 0, 0, 0 }, /* DSHARP1 */
- { 0, 0, 0 }, /* NAME1 */
- { 16, 1, UNARY }, /* DEFINED */
- { 16, 0, UNARY }, /* UMINUS */
-};
-
-int evalop(struct pri);
-struct value tokval(Token *);
-struct value vals[NSTAK], *vp;
-enum toktype ops[NSTAK], *op;
-
-/*
- * Evaluate an #if #elif #ifdef #ifndef line. trp->tp points to the keyword.
- */
-long
-eval(Tokenrow *trp, int kw)
-{
- Token *tp;
- Nlist *np;
- int ntok, rand;
-
- trp->tp++;
- if (kw==KIFDEF || kw==KIFNDEF) {
- if (trp->lp - trp->bp != 4 || trp->tp->type!=NAME) {
- error(ERROR, "Syntax error in #ifdef/#ifndef");
- return 0;
- }
- np = lookup(trp->tp, 0);
- return (kw==KIFDEF) == (np && np->flag&(ISDEFINED|ISMAC));
- }
- ntok = trp->tp - trp->bp;
- kwdefined->val = KDEFINED; /* activate special meaning of defined */
- expandrow(trp, "<if>");
- kwdefined->val = NAME;
- vp = vals;
- op = ops;
- *op++ = END;
- for (rand=0, tp = trp->bp+ntok; tp < trp->lp; tp++) {
- switch(tp->type) {
- case WS:
- case NL:
- continue;
-
- /* nilary */
- case NAME:
- case NAME1:
- case NUMBER:
- case CCON:
- case STRING:
- if (rand)
- goto syntax;
- *vp++ = tokval(tp);
- rand = 1;
- continue;
-
- /* unary */
- case DEFINED:
- case TILDE:
- case NOT:
- if (rand)
- goto syntax;
- *op++ = tp->type;
- continue;
-
- /* unary-binary */
- case PLUS: case MINUS: case STAR: case AND:
- if (rand==0) {
- if (tp->type==MINUS)
- *op++ = UMINUS;
- if (tp->type==STAR || tp->type==AND) {
- error(ERROR, "Illegal operator * or & in #if/#elsif");
- return 0;
- }
- continue;
- }
- /* flow through */
-
- /* plain binary */
- case EQ: case NEQ: case LEQ: case GEQ: case LSH: case RSH:
- case LAND: case LOR: case SLASH: case PCT:
- case LT: case GT: case CIRC: case OR: case QUEST:
- case COLON: case COMMA:
- if (rand==0)
- goto syntax;
- if (evalop(priority[tp->type])!=0)
- return 0;
- *op++ = tp->type;
- rand = 0;
- continue;
-
- case LP:
- if (rand)
- goto syntax;
- *op++ = LP;
- continue;
-
- case RP:
- if (!rand)
- goto syntax;
- if (evalop(priority[RP])!=0)
- return 0;
- if (op<=ops || op[-1]!=LP) {
- goto syntax;
- }
- op--;
- continue;
-
- default:
- error(ERROR,"Bad operator (%t) in #if/#elsif", tp);
- return 0;
- }
- }
- if (rand==0)
- goto syntax;
- if (evalop(priority[END])!=0)
- return 0;
- if (op!=&ops[1] || vp!=&vals[1]) {
- error(ERROR, "Botch in #if/#elsif");
- return 0;
- }
- if (vals[0].type==UND)
- error(ERROR, "Undefined expression value");
- return vals[0].val;
-syntax:
- error(ERROR, "Syntax error in #if/#elsif");
- return 0;
-}
-
-int
-evalop(struct pri pri)
-{
- struct value v1, v2;
- long rv1, rv2;
- int rtype, oper;
-
- rv2=0;
- rtype=0;
- while (pri.pri < priority[op[-1]].pri) {
- oper = *--op;
- if (priority[oper].arity==2) {
- v2 = *--vp;
- rv2 = v2.val;
- }
- v1 = *--vp;
- rv1 = v1.val;
-/*lint -e574 -e644 */
- switch (priority[oper].ctype) {
- case 0:
- default:
- error(WARNING, "Syntax error in #if/#endif");
- return 1;
- case ARITH:
- case RELAT:
- if (v1.type==UNS || v2.type==UNS)
- rtype = UNS;
- else
- rtype = SGN;
- if (v1.type==UND || v2.type==UND)
- rtype = UND;
- if (priority[oper].ctype==RELAT && rtype==UNS) {
- oper |= UNSMARK;
- rtype = SGN;
- }
- break;
- case SHIFT:
- if (v1.type==UND || v2.type==UND)
- rtype = UND;
- else
- rtype = v1.type;
- if (rtype==UNS)
- oper |= UNSMARK;
- break;
- case UNARY:
- rtype = v1.type;
- break;
- case LOGIC:
- case SPCL:
- break;
- }
- switch (oper) {
- case EQ: case EQ|UNSMARK:
- rv1 = rv1==rv2; break;
- case NEQ: case NEQ|UNSMARK:
- rv1 = rv1!=rv2; break;
- case LEQ:
- rv1 = rv1<=rv2; break;
- case GEQ:
- rv1 = rv1>=rv2; break;
- case LT:
- rv1 = rv1<rv2; break;
- case GT:
- rv1 = rv1>rv2; break;
- case LEQ|UNSMARK:
- rv1 = (unsigned long)rv1<=rv2; break;
- case GEQ|UNSMARK:
- rv1 = (unsigned long)rv1>=rv2; break;
- case LT|UNSMARK:
- rv1 = (unsigned long)rv1<rv2; break;
- case GT|UNSMARK:
- rv1 = (unsigned long)rv1>rv2; break;
- case LSH:
- rv1 <<= rv2; break;
- case LSH|UNSMARK:
- rv1 = (unsigned long)rv1<<rv2; break;
- case RSH:
- rv1 >>= rv2; break;
- case RSH|UNSMARK:
- rv1 = (unsigned long)rv1>>rv2; break;
- case LAND:
- rtype = UND;
- if (v1.type==UND)
- break;
- if (rv1!=0) {
- if (v2.type==UND)
- break;
- rv1 = rv2!=0;
- } else
- rv1 = 0;
- rtype = SGN;
- break;
- case LOR:
- rtype = UND;
- if (v1.type==UND)
- break;
- if (rv1==0) {
- if (v2.type==UND)
- break;
- rv1 = rv2!=0;
- } else
- rv1 = 1;
- rtype = SGN;
- break;
- case AND:
- rv1 &= rv2; break;
- case STAR:
- rv1 *= rv2; break;
- case PLUS:
- rv1 += rv2; break;
- case MINUS:
- rv1 -= rv2; break;
- case UMINUS:
- if (v1.type==UND)
- rtype = UND;
- rv1 = -rv1; break;
- case OR:
- rv1 |= rv2; break;
- case CIRC:
- rv1 ^= rv2; break;
- case TILDE:
- rv1 = ~rv1; break;
- case NOT:
- rv1 = !rv1; if (rtype!=UND) rtype = SGN; break;
- case SLASH:
- if (rv2==0) {
- rtype = UND;
- break;
- }
- if (rtype==UNS)
- rv1 /= (unsigned long)rv2;
- else
- rv1 /= rv2;
- break;
- case PCT:
- if (rv2==0) {
- rtype = UND;
- break;
- }
- if (rtype==UNS)
- rv1 %= (unsigned long)rv2;
- else
- rv1 %= rv2;
- break;
- case COLON:
- if (op[-1] != QUEST)
- error(ERROR, "Bad ?: in #if/endif");
- else {
- op--;
- if ((--vp)->val==0)
- v1 = v2;
- rtype = v1.type;
- rv1 = v1.val;
- }
- break;
- case DEFINED:
- break;
- default:
- error(ERROR, "Eval botch (unknown operator)");
- return 1;
- }
-/*lint +e574 +e644 */
- v1.val = rv1;
- v1.type = rtype;
- *vp++ = v1;
- }
- return 0;
-}
-
-struct value
-tokval(Token *tp)
-{
- struct value v;
- Nlist *np;
- int i, base, c;
- unsigned long n;
- uchar *p;
-
- v.type = SGN;
- v.val = 0;
- switch (tp->type) {
-
- case NAME:
- v.val = 0;
- break;
-
- case NAME1:
- if ((np = lookup(tp, 0)) != NULL && np->flag&(ISDEFINED|ISMAC))
- v.val = 1;
- break;
-
- case NUMBER:
- n = 0;
- base = 10;
- p = tp->t;
- c = p[tp->len];
- p[tp->len] = '\0';
- if (*p=='0') {
- base = 8;
- if (p[1]=='x' || p[1]=='X') {
- base = 16;
- p++;
- }
- p++;
- }
- for (;; p++) {
- if ((i = digit(*p)) < 0)
- break;
- if (i>=base)
- error(WARNING,
- "Bad digit in number %t", tp);
- n *= base;
- n += i;
- }
- if (n>=0x80000000 && base!=10)
- v.type = UNS;
- for (; *p; p++) {
- if (*p=='u' || *p=='U')
- v.type = UNS;
- else if (*p=='l' || *p=='L')
- ;
- else {
- error(ERROR,
- "Bad number %t in #if/#elsif", tp);
- break;
- }
- }
- v.val = n;
- tp->t[tp->len] = c;
- break;
-
- case CCON:
- n = 0;
- p = tp->t;
- if (*p=='L') {
- p += 1;
- error(WARNING, "Wide char constant value undefined");
- }
- p += 1;
- if (*p=='\\') {
- p += 1;
- if ((i = digit(*p))>=0 && i<=7) {
- n = i;
- p += 1;
- if ((i = digit(*p))>=0 && i<=7) {
- p += 1;
- n <<= 3;
- n += i;
- if ((i = digit(*p))>=0 && i<=7) {
- p += 1;
- n <<= 3;
- n += i;
- }
- }
- } else if (*p=='x') {
- p += 1;
- while ((i = digit(*p))>=0 && i<=15) {
- p += 1;
- n <<= 4;
- n += i;
- }
- } else {
- static char cvcon[]
- = "b\bf\fn\nr\rt\tv\v''\"\"??\\\\";
- for (i=0; i<sizeof(cvcon); i+=2) {
- if (*p == cvcon[i]) {
- n = cvcon[i+1];
- break;
- }
- }
- p += 1;
- if (i>=sizeof(cvcon))
- error(WARNING,
- "Undefined escape in character constant");
- }
- } else if (*p=='\'')
- error(ERROR, "Empty character constant");
- else
- n = *p++;
- if (*p!='\'')
- error(WARNING, "Multibyte character constant undefined");
- else if (n>127)
- error(WARNING, "Character constant taken as not signed");
- v.val = n;
- break;
-
- case STRING:
- error(ERROR, "String in #if/#elsif");
- break;
- }
- return v;
-}
-
-int
-digit(int i)
-{
- if ('0'<=i && i<='9')
- i -= '0';
- else if ('a'<=i && i<='f')
- i -= 'a'-10;
- else if ('A'<=i && i<='F')
- i -= 'A'-10;
- else
- i = -1;
- return i;
-}
+#include <stdlib.h>
+#include <string.h>
+#include "cpp.h"
+
+#define NSTAK 32
+#define SGN 0
+#define UNS 1
+#define UND 2
+
+#define UNSMARK 0x1000
+
+struct value {
+ long val;
+ int type;
+};
+
+/* conversion types */
+#define RELAT 1
+#define ARITH 2
+#define LOGIC 3
+#define SPCL 4
+#define SHIFT 5
+#define UNARY 6
+
+/* operator priority, arity, and conversion type, indexed by tokentype */
+struct pri {
+ char pri;
+ char arity;
+ char ctype;
+} priority[] = {
+ { 0, 0, 0 }, /* END */
+ { 0, 0, 0 }, /* UNCLASS */
+ { 0, 0, 0 }, /* NAME */
+ { 0, 0, 0 }, /* NUMBER */
+ { 0, 0, 0 }, /* STRING */
+ { 0, 0, 0 }, /* CCON */
+ { 0, 0, 0 }, /* NL */
+ { 0, 0, 0 }, /* WS */
+ { 0, 0, 0 }, /* DSHARP */
+ { 11, 2, RELAT }, /* EQ */
+ { 11, 2, RELAT }, /* NEQ */
+ { 12, 2, RELAT }, /* LEQ */
+ { 12, 2, RELAT }, /* GEQ */
+ { 13, 2, SHIFT }, /* LSH */
+ { 13, 2, SHIFT }, /* RSH */
+ { 7, 2, LOGIC }, /* LAND */
+ { 6, 2, LOGIC }, /* LOR */
+ { 0, 0, 0 }, /* PPLUS */
+ { 0, 0, 0 }, /* MMINUS */
+ { 0, 0, 0 }, /* ARROW */
+ { 0, 0, 0 }, /* SBRA */
+ { 0, 0, 0 }, /* SKET */
+ { 3, 0, 0 }, /* LP */
+ { 3, 0, 0 }, /* RP */
+ { 0, 0, 0 }, /* DOT */
+ { 10, 2, ARITH }, /* AND */
+ { 15, 2, ARITH }, /* STAR */
+ { 14, 2, ARITH }, /* PLUS */
+ { 14, 2, ARITH }, /* MINUS */
+ { 16, 1, UNARY }, /* TILDE */
+ { 16, 1, UNARY }, /* NOT */
+ { 15, 2, ARITH }, /* SLASH */
+ { 15, 2, ARITH }, /* PCT */
+ { 12, 2, RELAT }, /* LT */
+ { 12, 2, RELAT }, /* GT */
+ { 9, 2, ARITH }, /* CIRC */
+ { 8, 2, ARITH }, /* OR */
+ { 5, 2, SPCL }, /* QUEST */
+ { 5, 2, SPCL }, /* COLON */
+ { 0, 0, 0 }, /* ASGN */
+ { 4, 2, 0 }, /* COMMA */
+ { 0, 0, 0 }, /* SHARP */
+ { 0, 0, 0 }, /* SEMIC */
+ { 0, 0, 0 }, /* CBRA */
+ { 0, 0, 0 }, /* CKET */
+ { 0, 0, 0 }, /* ASPLUS */
+ { 0, 0, 0 }, /* ASMINUS */
+ { 0, 0, 0 }, /* ASSTAR */
+ { 0, 0, 0 }, /* ASSLASH */
+ { 0, 0, 0 }, /* ASPCT */
+ { 0, 0, 0 }, /* ASCIRC */
+ { 0, 0, 0 }, /* ASLSH */
+ { 0, 0, 0 }, /* ASRSH */
+ { 0, 0, 0 }, /* ASOR */
+ { 0, 0, 0 }, /* ASAND */
+ { 0, 0, 0 }, /* ELLIPS */
+ { 0, 0, 0 }, /* DSHARP1 */
+ { 0, 0, 0 }, /* NAME1 */
+ { 16, 1, UNARY }, /* DEFINED */
+ { 16, 0, UNARY }, /* UMINUS */
+};
+
+int evalop(struct pri);
+struct value tokval(Token *);
+struct value vals[NSTAK], *vp;
+enum toktype ops[NSTAK], *op;
+
+/*
+ * Evaluate an #if #elif #ifdef #ifndef line. trp->tp points to the keyword.
+ */
+long
+eval(Tokenrow *trp, int kw)
+{
+ Token *tp;
+ Nlist *np;
+ int ntok, rand;
+
+ trp->tp++;
+ if (kw==KIFDEF || kw==KIFNDEF) {
+ if (trp->lp - trp->bp != 4 || trp->tp->type!=NAME) {
+ error(ERROR, "Syntax error in #ifdef/#ifndef");
+ return 0;
+ }
+ np = lookup(trp->tp, 0);
+ return (kw==KIFDEF) == (np && np->flag&(ISDEFINED|ISMAC));
+ }
+ ntok = trp->tp - trp->bp;
+ kwdefined->val = KDEFINED; /* activate special meaning of defined */
+ expandrow(trp, "<if>");
+ kwdefined->val = NAME;
+ vp = vals;
+ op = ops;
+ *op++ = END;
+ for (rand=0, tp = trp->bp+ntok; tp < trp->lp; tp++) {
+ switch(tp->type) {
+ case WS:
+ case NL:
+ continue;
+
+ /* nilary */
+ case NAME:
+ case NAME1:
+ case NUMBER:
+ case CCON:
+ case STRING:
+ if (rand)
+ goto syntax;
+ *vp++ = tokval(tp);
+ rand = 1;
+ continue;
+
+ /* unary */
+ case DEFINED:
+ case TILDE:
+ case NOT:
+ if (rand)
+ goto syntax;
+ *op++ = tp->type;
+ continue;
+
+ /* unary-binary */
+ case PLUS: case MINUS: case STAR: case AND:
+ if (rand==0) {
+ if (tp->type==MINUS)
+ *op++ = UMINUS;
+ if (tp->type==STAR || tp->type==AND) {
+ error(ERROR, "Illegal operator * or & in #if/#elsif");
+ return 0;
+ }
+ continue;
+ }
+ /* flow through */
+
+ /* plain binary */
+ case EQ: case NEQ: case LEQ: case GEQ: case LSH: case RSH:
+ case LAND: case LOR: case SLASH: case PCT:
+ case LT: case GT: case CIRC: case OR: case QUEST:
+ case COLON: case COMMA:
+ if (rand==0)
+ goto syntax;
+ if (evalop(priority[tp->type])!=0)
+ return 0;
+ *op++ = tp->type;
+ rand = 0;
+ continue;
+
+ case LP:
+ if (rand)
+ goto syntax;
+ *op++ = LP;
+ continue;
+
+ case RP:
+ if (!rand)
+ goto syntax;
+ if (evalop(priority[RP])!=0)
+ return 0;
+ if (op<=ops || op[-1]!=LP) {
+ goto syntax;
+ }
+ op--;
+ continue;
+
+ default:
+ error(ERROR,"Bad operator (%t) in #if/#elsif", tp);
+ return 0;
+ }
+ }
+ if (rand==0)
+ goto syntax;
+ if (evalop(priority[END])!=0)
+ return 0;
+ if (op!=&ops[1] || vp!=&vals[1]) {
+ error(ERROR, "Botch in #if/#elsif");
+ return 0;
+ }
+ if (vals[0].type==UND)
+ error(ERROR, "Undefined expression value");
+ return vals[0].val;
+syntax:
+ error(ERROR, "Syntax error in #if/#elsif");
+ return 0;
+}
+
+int
+evalop(struct pri pri)
+{
+ struct value v1, v2;
+ long rv1, rv2;
+ int rtype, oper;
+
+ rv2=0;
+ rtype=0;
+ while (pri.pri < priority[op[-1]].pri) {
+ oper = *--op;
+ if (priority[oper].arity==2) {
+ v2 = *--vp;
+ rv2 = v2.val;
+ }
+ v1 = *--vp;
+ rv1 = v1.val;
+/*lint -e574 -e644 */
+ switch (priority[oper].ctype) {
+ case 0:
+ default:
+ error(WARNING, "Syntax error in #if/#endif");
+ return 1;
+ case ARITH:
+ case RELAT:
+ if (v1.type==UNS || v2.type==UNS)
+ rtype = UNS;
+ else
+ rtype = SGN;
+ if (v1.type==UND || v2.type==UND)
+ rtype = UND;
+ if (priority[oper].ctype==RELAT && rtype==UNS) {
+ oper |= UNSMARK;
+ rtype = SGN;
+ }
+ break;
+ case SHIFT:
+ if (v1.type==UND || v2.type==UND)
+ rtype = UND;
+ else
+ rtype = v1.type;
+ if (rtype==UNS)
+ oper |= UNSMARK;
+ break;
+ case UNARY:
+ rtype = v1.type;
+ break;
+ case LOGIC:
+ case SPCL:
+ break;
+ }
+ switch (oper) {
+ case EQ: case EQ|UNSMARK:
+ rv1 = rv1==rv2; break;
+ case NEQ: case NEQ|UNSMARK:
+ rv1 = rv1!=rv2; break;
+ case LEQ:
+ rv1 = rv1<=rv2; break;
+ case GEQ:
+ rv1 = rv1>=rv2; break;
+ case LT:
+ rv1 = rv1<rv2; break;
+ case GT:
+ rv1 = rv1>rv2; break;
+ case LEQ|UNSMARK:
+ rv1 = (unsigned long)rv1<=rv2; break;
+ case GEQ|UNSMARK:
+ rv1 = (unsigned long)rv1>=rv2; break;
+ case LT|UNSMARK:
+ rv1 = (unsigned long)rv1<rv2; break;
+ case GT|UNSMARK:
+ rv1 = (unsigned long)rv1>rv2; break;
+ case LSH:
+ rv1 <<= rv2; break;
+ case LSH|UNSMARK:
+ rv1 = (unsigned long)rv1<<rv2; break;
+ case RSH:
+ rv1 >>= rv2; break;
+ case RSH|UNSMARK:
+ rv1 = (unsigned long)rv1>>rv2; break;
+ case LAND:
+ rtype = UND;
+ if (v1.type==UND)
+ break;
+ if (rv1!=0) {
+ if (v2.type==UND)
+ break;
+ rv1 = rv2!=0;
+ } else
+ rv1 = 0;
+ rtype = SGN;
+ break;
+ case LOR:
+ rtype = UND;
+ if (v1.type==UND)
+ break;
+ if (rv1==0) {
+ if (v2.type==UND)
+ break;
+ rv1 = rv2!=0;
+ } else
+ rv1 = 1;
+ rtype = SGN;
+ break;
+ case AND:
+ rv1 &= rv2; break;
+ case STAR:
+ rv1 *= rv2; break;
+ case PLUS:
+ rv1 += rv2; break;
+ case MINUS:
+ rv1 -= rv2; break;
+ case UMINUS:
+ if (v1.type==UND)
+ rtype = UND;
+ rv1 = -rv1; break;
+ case OR:
+ rv1 |= rv2; break;
+ case CIRC:
+ rv1 ^= rv2; break;
+ case TILDE:
+ rv1 = ~rv1; break;
+ case NOT:
+ rv1 = !rv1; if (rtype!=UND) rtype = SGN; break;
+ case SLASH:
+ if (rv2==0) {
+ rtype = UND;
+ break;
+ }
+ if (rtype==UNS)
+ rv1 /= (unsigned long)rv2;
+ else
+ rv1 /= rv2;
+ break;
+ case PCT:
+ if (rv2==0) {
+ rtype = UND;
+ break;
+ }
+ if (rtype==UNS)
+ rv1 %= (unsigned long)rv2;
+ else
+ rv1 %= rv2;
+ break;
+ case COLON:
+ if (op[-1] != QUEST)
+ error(ERROR, "Bad ?: in #if/endif");
+ else {
+ op--;
+ if ((--vp)->val==0)
+ v1 = v2;
+ rtype = v1.type;
+ rv1 = v1.val;
+ }
+ break;
+ case DEFINED:
+ break;
+ default:
+ error(ERROR, "Eval botch (unknown operator)");
+ return 1;
+ }
+/*lint +e574 +e644 */
+ v1.val = rv1;
+ v1.type = rtype;
+ *vp++ = v1;
+ }
+ return 0;
+}
+
+struct value
+tokval(Token *tp)
+{
+ struct value v;
+ Nlist *np;
+ int i, base, c;
+ unsigned long n;
+ uchar *p;
+
+ v.type = SGN;
+ v.val = 0;
+ switch (tp->type) {
+
+ case NAME:
+ v.val = 0;
+ break;
+
+ case NAME1:
+ if ((np = lookup(tp, 0)) != NULL && np->flag&(ISDEFINED|ISMAC))
+ v.val = 1;
+ break;
+
+ case NUMBER:
+ n = 0;
+ base = 10;
+ p = tp->t;
+ c = p[tp->len];
+ p[tp->len] = '\0';
+ if (*p=='0') {
+ base = 8;
+ if (p[1]=='x' || p[1]=='X') {
+ base = 16;
+ p++;
+ }
+ p++;
+ }
+ for (;; p++) {
+ if ((i = digit(*p)) < 0)
+ break;
+ if (i>=base)
+ error(WARNING,
+ "Bad digit in number %t", tp);
+ n *= base;
+ n += i;
+ }
+ if (n>=0x80000000 && base!=10)
+ v.type = UNS;
+ for (; *p; p++) {
+ if (*p=='u' || *p=='U')
+ v.type = UNS;
+ else if (*p=='l' || *p=='L')
+ ;
+ else {
+ error(ERROR,
+ "Bad number %t in #if/#elsif", tp);
+ break;
+ }
+ }
+ v.val = n;
+ tp->t[tp->len] = c;
+ break;
+
+ case CCON:
+ n = 0;
+ p = tp->t;
+ if (*p=='L') {
+ p += 1;
+ error(WARNING, "Wide char constant value undefined");
+ }
+ p += 1;
+ if (*p=='\\') {
+ p += 1;
+ if ((i = digit(*p))>=0 && i<=7) {
+ n = i;
+ p += 1;
+ if ((i = digit(*p))>=0 && i<=7) {
+ p += 1;
+ n <<= 3;
+ n += i;
+ if ((i = digit(*p))>=0 && i<=7) {
+ p += 1;
+ n <<= 3;
+ n += i;
+ }
+ }
+ } else if (*p=='x') {
+ p += 1;
+ while ((i = digit(*p))>=0 && i<=15) {
+ p += 1;
+ n <<= 4;
+ n += i;
+ }
+ } else {
+ static char cvcon[]
+ = "b\bf\fn\nr\rt\tv\v''\"\"??\\\\";
+ for (i=0; i<sizeof(cvcon); i+=2) {
+ if (*p == cvcon[i]) {
+ n = cvcon[i+1];
+ break;
+ }
+ }
+ p += 1;
+ if (i>=sizeof(cvcon))
+ error(WARNING,
+ "Undefined escape in character constant");
+ }
+ } else if (*p=='\'')
+ error(ERROR, "Empty character constant");
+ else
+ n = *p++;
+ if (*p!='\'')
+ error(WARNING, "Multibyte character constant undefined");
+ else if (n>127)
+ error(WARNING, "Character constant taken as not signed");
+ v.val = n;
+ break;
+
+ case STRING:
+ error(ERROR, "String in #if/#elsif");
+ break;
+ }
+ return v;
+}
+
+int
+digit(int i)
+{
+ if ('0'<=i && i<='9')
+ i -= '0';
+ else if ('a'<=i && i<='f')
+ i -= 'a'-10;
+ else if ('A'<=i && i<='F')
+ i -= 'A'-10;
+ else
+ i = -1;
+ return i;
+}
diff --git a/lcc/cpp/getopt.c b/lcc/cpp/getopt.c
index 69e9ab4..07fd798 100755
--- a/lcc/cpp/getopt.c
+++ b/lcc/cpp/getopt.c
@@ -1,52 +1,52 @@
-#include <stdio.h>
-#define EPR fprintf(stderr,
-#define ERR(str, chr) if(opterr){EPR "%s%c\n", str, chr);}
-int opterr = 1;
-int optind = 1;
-int optopt;
-char *optarg;
-char *strchr();
-
-int
-getopt (int argc, char *const argv[], const char *opts)
-{
- static int sp = 1;
- int c;
- char *cp;
-
- if (sp == 1)
- if (optind >= argc ||
- argv[optind][0] != '-' || argv[optind][1] == '\0')
- return -1;
- else if (strcmp(argv[optind], "--") == 0) {
- optind++;
- return -1;
- }
- optopt = c = argv[optind][sp];
- if (c == ':' || (cp=strchr(opts, c)) == 0) {
- ERR (": illegal option -- ", c);
- if (argv[optind][++sp] == '\0') {
- optind++;
- sp = 1;
- }
- return '?';
- }
- if (*++cp == ':') {
- if (argv[optind][sp+1] != '\0')
- optarg = &argv[optind++][sp+1];
- else if (++optind >= argc) {
- ERR (": option requires an argument -- ", c);
- sp = 1;
- return '?';
- } else
- optarg = argv[optind++];
- sp = 1;
- } else {
- if (argv[optind][++sp] == '\0') {
- sp = 1;
- optind++;
- }
- optarg = 0;
- }
- return c;
-}
+#include <stdio.h>
+#define EPR fprintf(stderr,
+#define ERR(str, chr) if(opterr){EPR "%s%c\n", str, chr);}
+int opterr = 1;
+int optind = 1;
+int optopt;
+char *optarg;
+char *strchr();
+
+int
+getopt (int argc, char *const argv[], const char *opts)
+{
+ static int sp = 1;
+ int c;
+ char *cp;
+
+ if (sp == 1)
+ if (optind >= argc ||
+ argv[optind][0] != '-' || argv[optind][1] == '\0')
+ return -1;
+ else if (strcmp(argv[optind], "--") == 0) {
+ optind++;
+ return -1;
+ }
+ optopt = c = argv[optind][sp];
+ if (c == ':' || (cp=strchr(opts, c)) == 0) {
+ ERR (": illegal option -- ", c);
+ if (argv[optind][++sp] == '\0') {
+ optind++;
+ sp = 1;
+ }
+ return '?';
+ }
+ if (*++cp == ':') {
+ if (argv[optind][sp+1] != '\0')
+ optarg = &argv[optind++][sp+1];
+ else if (++optind >= argc) {
+ ERR (": option requires an argument -- ", c);
+ sp = 1;
+ return '?';
+ } else
+ optarg = argv[optind++];
+ sp = 1;
+ } else {
+ if (argv[optind][++sp] == '\0') {
+ sp = 1;
+ optind++;
+ }
+ optarg = 0;
+ }
+ return c;
+}
diff --git a/lcc/cpp/hideset.c b/lcc/cpp/hideset.c
index 637a441..bd2540d 100755
--- a/lcc/cpp/hideset.c
+++ b/lcc/cpp/hideset.c
@@ -1,112 +1,112 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "cpp.h"
-
-/*
- * A hideset is a null-terminated array of Nlist pointers.
- * They are referred to by indices in the hidesets array.
- * Hideset 0 is empty.
- */
-
-#define HSSIZ 32
-typedef Nlist **Hideset;
-Hideset *hidesets;
-int nhidesets = 0;
-int maxhidesets = 3;
-int inserths(Hideset, Hideset, Nlist *);
-
-/*
- * Test for membership in a hideset
- */
-int
-checkhideset(int hs, Nlist *np)
-{
- Hideset hsp;
-
- if (hs>=nhidesets)
- abort();
- for (hsp = hidesets[hs]; *hsp; hsp++) {
- if (*hsp == np)
- return 1;
- }
- return 0;
-}
-
-/*
- * Return the (possibly new) hideset obtained by adding np to hs.
- */
-int
-newhideset(int hs, Nlist *np)
-{
- int i, len;
- Nlist *nhs[HSSIZ+3];
- Hideset hs1, hs2;
-
- len = inserths(nhs, hidesets[hs], np);
- for (i=0; i<nhidesets; i++) {
- for (hs1=nhs, hs2=hidesets[i]; *hs1==*hs2; hs1++, hs2++)
- if (*hs1 == NULL)
- return i;
- }
- if (len>=HSSIZ)
- return hs;
- if (nhidesets >= maxhidesets) {
- maxhidesets = 3*maxhidesets/2+1;
- hidesets = (Hideset *)realloc(hidesets, (sizeof (Hideset *))*maxhidesets);
- if (hidesets == NULL)
- error(FATAL, "Out of memory from realloc");
- }
- hs1 = (Hideset)domalloc(len*sizeof(Hideset));
- memmove(hs1, nhs, len*sizeof(Hideset));
- hidesets[nhidesets] = hs1;
- return nhidesets++;
-}
-
-int
-inserths(Hideset dhs, Hideset shs, Nlist *np)
-{
- Hideset odhs = dhs;
-
- while (*shs && *shs < np)
- *dhs++ = *shs++;
- if (*shs != np)
- *dhs++ = np;
- do {
- *dhs++ = *shs;
- } while (*shs++);
- return dhs - odhs;
-}
-
-/*
- * Hideset union
- */
-int
-unionhideset(int hs1, int hs2)
-{
- Hideset hp;
-
- for (hp = hidesets[hs2]; *hp; hp++)
- hs1 = newhideset(hs1, *hp);
- return hs1;
-}
-
-void
-iniths(void)
-{
- hidesets = (Hideset *)domalloc(maxhidesets*sizeof(Hideset *));
- hidesets[0] = (Hideset)domalloc(sizeof(Hideset));
- *hidesets[0] = NULL;
- nhidesets++;
-}
-
-void
-prhideset(int hs)
-{
- Hideset np;
-
- for (np = hidesets[hs]; *np; np++) {
- fprintf(stderr, (char*)(*np)->name, (*np)->len);
- fprintf(stderr, " ");
- }
-}
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "cpp.h"
+
+/*
+ * A hideset is a null-terminated array of Nlist pointers.
+ * They are referred to by indices in the hidesets array.
+ * Hideset 0 is empty.
+ */
+
+#define HSSIZ 32
+typedef Nlist **Hideset;
+Hideset *hidesets;
+int nhidesets = 0;
+int maxhidesets = 3;
+int inserths(Hideset, Hideset, Nlist *);
+
+/*
+ * Test for membership in a hideset
+ */
+int
+checkhideset(int hs, Nlist *np)
+{
+ Hideset hsp;
+
+ if (hs>=nhidesets)
+ abort();
+ for (hsp = hidesets[hs]; *hsp; hsp++) {
+ if (*hsp == np)
+ return 1;
+ }
+ return 0;
+}
+
+/*
+ * Return the (possibly new) hideset obtained by adding np to hs.
+ */
+int
+newhideset(int hs, Nlist *np)
+{
+ int i, len;
+ Nlist *nhs[HSSIZ+3];
+ Hideset hs1, hs2;
+
+ len = inserths(nhs, hidesets[hs], np);
+ for (i=0; i<nhidesets; i++) {
+ for (hs1=nhs, hs2=hidesets[i]; *hs1==*hs2; hs1++, hs2++)
+ if (*hs1 == NULL)
+ return i;
+ }
+ if (len>=HSSIZ)
+ return hs;
+ if (nhidesets >= maxhidesets) {
+ maxhidesets = 3*maxhidesets/2+1;
+ hidesets = (Hideset *)realloc(hidesets, (sizeof (Hideset *))*maxhidesets);
+ if (hidesets == NULL)
+ error(FATAL, "Out of memory from realloc");
+ }
+ hs1 = (Hideset)domalloc(len*sizeof(Hideset));
+ memmove(hs1, nhs, len*sizeof(Hideset));
+ hidesets[nhidesets] = hs1;
+ return nhidesets++;
+}
+
+int
+inserths(Hideset dhs, Hideset shs, Nlist *np)
+{
+ Hideset odhs = dhs;
+
+ while (*shs && *shs < np)
+ *dhs++ = *shs++;
+ if (*shs != np)
+ *dhs++ = np;
+ do {
+ *dhs++ = *shs;
+ } while (*shs++);
+ return dhs - odhs;
+}
+
+/*
+ * Hideset union
+ */
+int
+unionhideset(int hs1, int hs2)
+{
+ Hideset hp;
+
+ for (hp = hidesets[hs2]; *hp; hp++)
+ hs1 = newhideset(hs1, *hp);
+ return hs1;
+}
+
+void
+iniths(void)
+{
+ hidesets = (Hideset *)domalloc(maxhidesets*sizeof(Hideset *));
+ hidesets[0] = (Hideset)domalloc(sizeof(Hideset));
+ *hidesets[0] = NULL;
+ nhidesets++;
+}
+
+void
+prhideset(int hs)
+{
+ Hideset np;
+
+ for (np = hidesets[hs]; *np; np++) {
+ fprintf(stderr, (char*)(*np)->name, (*np)->len);
+ fprintf(stderr, " ");
+ }
+}
diff --git a/lcc/cpp/include.c b/lcc/cpp/include.c
index 66f1fc3..72ec8ae 100755
--- a/lcc/cpp/include.c
+++ b/lcc/cpp/include.c
@@ -1,122 +1,122 @@
-#include <stdlib.h>
-#include <string.h>
-#include "cpp.h"
-
-Includelist includelist[NINCLUDE];
-
-extern char *objname;
-
-void
-doinclude(Tokenrow *trp)
-{
- char fname[256], iname[256];
- Includelist *ip;
- int angled, len, fd, i;
-
- trp->tp += 1;
- if (trp->tp>=trp->lp)
- goto syntax;
- if (trp->tp->type!=STRING && trp->tp->type!=LT) {
- len = trp->tp - trp->bp;
- expandrow(trp, "<include>");
- trp->tp = trp->bp+len;
- }
- if (trp->tp->type==STRING) {
- len = trp->tp->len-2;
- if (len > sizeof(fname) - 1)
- len = sizeof(fname) - 1;
- strncpy(fname, (char*)trp->tp->t+1, len);
- angled = 0;
- } else if (trp->tp->type==LT) {
- len = 0;
- trp->tp++;
- while (trp->tp->type!=GT) {
- if (trp->tp>trp->lp || len+trp->tp->len+2 >= sizeof(fname))
- goto syntax;
- strncpy(fname+len, (char*)trp->tp->t, trp->tp->len);
- len += trp->tp->len;
- trp->tp++;
- }
- angled = 1;
- } else
- goto syntax;
- trp->tp += 2;
- if (trp->tp < trp->lp || len==0)
- goto syntax;
- fname[len] = '\0';
- if (fname[0]=='/') {
- fd = open(fname, 0);
- strcpy(iname, fname);
- } else for (fd = -1,i=NINCLUDE-1; i>=0; i--) {
- ip = &includelist[i];
- if (ip->file==NULL || ip->deleted || (angled && ip->always==0))
- continue;
- if (strlen(fname)+strlen(ip->file)+2 > sizeof(iname))
- continue;
- strcpy(iname, ip->file);
- strcat(iname, "/");
- strcat(iname, fname);
- if ((fd = open(iname, 0)) >= 0)
- break;
- }
- if ( Mflag>1 || !angled&&Mflag==1 ) {
- write(1,objname,strlen(objname));
- write(1,iname,strlen(iname));
- write(1,"\n",1);
- }
- if (fd >= 0) {
- if (++incdepth > 10)
- error(FATAL, "#include too deeply nested");
- setsource((char*)newstring((uchar*)iname, strlen(iname), 0), fd, NULL);
- genline();
- } else {
- trp->tp = trp->bp+2;
- error(ERROR, "Could not find include file %r", trp);
- }
- return;
-syntax:
- error(ERROR, "Syntax error in #include");
- return;
-}
-
-/*
- * Generate a line directive for cursource
- */
-void
-genline(void)
-{
- static Token ta = { UNCLASS };
- static Tokenrow tr = { &ta, &ta, &ta+1, 1 };
- uchar *p;
-
- ta.t = p = (uchar*)outp;
- strcpy((char*)p, "#line ");
- p += sizeof("#line ")-1;
- p = (uchar*)outnum((char*)p, cursource->line);
- *p++ = ' '; *p++ = '"';
- if (cursource->filename[0]!='/' && wd[0]) {
- strcpy((char*)p, wd);
- p += strlen(wd);
- *p++ = '/';
- }
- strcpy((char*)p, cursource->filename);
- p += strlen((char*)p);
- *p++ = '"'; *p++ = '\n';
- ta.len = (char*)p-outp;
- outp = (char*)p;
- tr.tp = tr.bp;
- puttokens(&tr);
-}
-
-void
-setobjname(char *f)
-{
- int n = strlen(f);
- objname = (char*)domalloc(n+5);
- strcpy(objname,f);
- if(objname[n-2]=='.'){
- strcpy(objname+n-1,"$O: ");
- }else{
- strcpy(objname+n,"$O: ");
- }
-}
+#include <stdlib.h>
+#include <string.h>
+#include "cpp.h"
+
+Includelist includelist[NINCLUDE];
+
+extern char *objname;
+
+void
+doinclude(Tokenrow *trp)
+{
+ char fname[256], iname[256];
+ Includelist *ip;
+ int angled, len, fd, i;
+
+ trp->tp += 1;
+ if (trp->tp>=trp->lp)
+ goto syntax;
+ if (trp->tp->type!=STRING && trp->tp->type!=LT) {
+ len = trp->tp - trp->bp;
+ expandrow(trp, "<include>");
+ trp->tp = trp->bp+len;
+ }
+ if (trp->tp->type==STRING) {
+ len = trp->tp->len-2;
+ if (len > sizeof(fname) - 1)
+ len = sizeof(fname) - 1;
+ strncpy(fname, (char*)trp->tp->t+1, len);
+ angled = 0;
+ } else if (trp->tp->type==LT) {
+ len = 0;
+ trp->tp++;
+ while (trp->tp->type!=GT) {
+ if (trp->tp>trp->lp || len+trp->tp->len+2 >= sizeof(fname))
+ goto syntax;
+ strncpy(fname+len, (char*)trp->tp->t, trp->tp->len);
+ len += trp->tp->len;
+ trp->tp++;
+ }
+ angled = 1;
+ } else
+ goto syntax;
+ trp->tp += 2;
+ if (trp->tp < trp->lp || len==0)
+ goto syntax;
+ fname[len] = '\0';
+ if (fname[0]=='/') {
+ fd = open(fname, 0);
+ strcpy(iname, fname);
+ } else for (fd = -1,i=NINCLUDE-1; i>=0; i--) {
+ ip = &includelist[i];
+ if (ip->file==NULL || ip->deleted || (angled && ip->always==0))
+ continue;
+ if (strlen(fname)+strlen(ip->file)+2 > sizeof(iname))
+ continue;
+ strcpy(iname, ip->file);
+ strcat(iname, "/");
+ strcat(iname, fname);
+ if ((fd = open(iname, 0)) >= 0)
+ break;
+ }
+ if ( Mflag>1 || !angled&&Mflag==1 ) {
+ write(1,objname,strlen(objname));
+ write(1,iname,strlen(iname));
+ write(1,"\n",1);
+ }
+ if (fd >= 0) {
+ if (++incdepth > 10)
+ error(FATAL, "#include too deeply nested");
+ setsource((char*)newstring((uchar*)iname, strlen(iname), 0), fd, NULL);
+ genline();
+ } else {
+ trp->tp = trp->bp+2;
+ error(ERROR, "Could not find include file %r", trp);
+ }
+ return;
+syntax:
+ error(ERROR, "Syntax error in #include");
+ return;
+}
+
+/*
+ * Generate a line directive for cursource
+ */
+void
+genline(void)
+{
+ static Token ta = { UNCLASS };
+ static Tokenrow tr = { &ta, &ta, &ta+1, 1 };
+ uchar *p;
+
+ ta.t = p = (uchar*)outp;
+ strcpy((char*)p, "#line ");
+ p += sizeof("#line ")-1;
+ p = (uchar*)outnum((char*)p, cursource->line);
+ *p++ = ' '; *p++ = '"';
+ if (cursource->filename[0]!='/' && wd[0]) {
+ strcpy((char*)p, wd);
+ p += strlen(wd);
+ *p++ = '/';
+ }
+ strcpy((char*)p, cursource->filename);
+ p += strlen((char*)p);
+ *p++ = '"'; *p++ = '\n';
+ ta.len = (char*)p-outp;
+ outp = (char*)p;
+ tr.tp = tr.bp;
+ puttokens(&tr);
+}
+
+void
+setobjname(char *f)
+{
+ int n = strlen(f);
+ objname = (char*)domalloc(n+5);
+ strcpy(objname,f);
+ if(objname[n-2]=='.'){
+ strcpy(objname+n-1,"$O: ");
+ }else{
+ strcpy(objname+n,"$O: ");
+ }
+}
diff --git a/lcc/cpp/lex.c b/lcc/cpp/lex.c
index 8513a17..fc4c5db 100755
--- a/lcc/cpp/lex.c
+++ b/lcc/cpp/lex.c
@@ -1,581 +1,581 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "cpp.h"
-
-/*
- * lexical FSM encoding
- * when in state state, and one of the characters
- * in ch arrives, enter nextstate.
- * States >= S_SELF are either final, or at least require special action.
- * In 'fsm' there is a line for each state X charset X nextstate.
- * List chars that overwrite previous entries later (e.g. C_ALPH
- * can be overridden by '_' by a later entry; and C_XX is the
- * the universal set, and should always be first.
- * States above S_SELF are represented in the big table as negative values.
- * S_SELF and S_SELFB encode the resulting token type in the upper bits.
- * These actions differ in that S_SELF doesn't have a lookahead char,
- * S_SELFB does.
- *
- * The encoding is blown out into a big table for time-efficiency.
- * Entries have
- * nextstate: 6 bits; ?\ marker: 1 bit; tokentype: 9 bits.
- */
-
-#define MAXSTATE 32
-#define ACT(tok,act) ((tok<<7)+act)
-#define QBSBIT 0100
-#define GETACT(st) (st>>7)&0x1ff
-
-/* character classes */
-#define C_WS 1
-#define C_ALPH 2
-#define C_NUM 3
-#define C_EOF 4
-#define C_XX 5
-
-enum state {
- START=0, NUM1, NUM2, NUM3, ID1, ST1, ST2, ST3, COM1, COM2, COM3, COM4,
- CC1, CC2, WS1, PLUS1, MINUS1, STAR1, SLASH1, PCT1, SHARP1,
- CIRC1, GT1, GT2, LT1, LT2, OR1, AND1, ASG1, NOT1, DOTS1,
- S_SELF=MAXSTATE, S_SELFB, S_EOF, S_NL, S_EOFSTR,
- S_STNL, S_COMNL, S_EOFCOM, S_COMMENT, S_EOB, S_WS, S_NAME
-};
-
-int tottok;
-int tokkind[256];
-struct fsm {
- int state; /* if in this state */
- uchar ch[4]; /* and see one of these characters */
- int nextstate; /* enter this state if +ve */
-};
-
-/*const*/ struct fsm fsm[] = {
- /* start state */
- START, { C_XX }, ACT(UNCLASS,S_SELF),
- START, { ' ', '\t', '\v' }, WS1,
- START, { C_NUM }, NUM1,
- START, { '.' }, NUM3,
- START, { C_ALPH }, ID1,
- START, { 'L' }, ST1,
- START, { '"' }, ST2,
- START, { '\'' }, CC1,
- START, { '/' }, COM1,
- START, { EOFC }, S_EOF,
- START, { '\n' }, S_NL,
- START, { '-' }, MINUS1,
- START, { '+' }, PLUS1,
- START, { '<' }, LT1,
- START, { '>' }, GT1,
- START, { '=' }, ASG1,
- START, { '!' }, NOT1,
- START, { '&' }, AND1,
- START, { '|' }, OR1,
- START, { '#' }, SHARP1,
- START, { '%' }, PCT1,
- START, { '[' }, ACT(SBRA,S_SELF),
- START, { ']' }, ACT(SKET,S_SELF),
- START, { '(' }, ACT(LP,S_SELF),
- START, { ')' }, ACT(RP,S_SELF),
- START, { '*' }, STAR1,
- START, { ',' }, ACT(COMMA,S_SELF),
- START, { '?' }, ACT(QUEST,S_SELF),
- START, { ':' }, ACT(COLON,S_SELF),
- START, { ';' }, ACT(SEMIC,S_SELF),
- START, { '{' }, ACT(CBRA,S_SELF),
- START, { '}' }, ACT(CKET,S_SELF),
- START, { '~' }, ACT(TILDE,S_SELF),
- START, { '^' }, CIRC1,
-
- /* saw a digit */
- NUM1, { C_XX }, ACT(NUMBER,S_SELFB),
- NUM1, { C_NUM, C_ALPH, '.' }, NUM1,
- NUM1, { 'E', 'e' }, NUM2,
- NUM1, { '_' }, ACT(NUMBER,S_SELFB),
-
- /* saw possible start of exponent, digits-e */
- NUM2, { C_XX }, ACT(NUMBER,S_SELFB),
- NUM2, { '+', '-' }, NUM1,
- NUM2, { C_NUM, C_ALPH }, NUM1,
- NUM2, { '_' }, ACT(NUMBER,S_SELFB),
-
- /* saw a '.', which could be a number or an operator */
- NUM3, { C_XX }, ACT(DOT,S_SELFB),
- NUM3, { '.' }, DOTS1,
- NUM3, { C_NUM }, NUM1,
-
- DOTS1, { C_XX }, ACT(UNCLASS, S_SELFB),
- DOTS1, { C_NUM }, NUM1,
- DOTS1, { '.' }, ACT(ELLIPS, S_SELF),
-
- /* saw a letter or _ */
- ID1, { C_XX }, ACT(NAME,S_NAME),
- ID1, { C_ALPH, C_NUM }, ID1,
-
- /* saw L (start of wide string?) */
- ST1, { C_XX }, ACT(NAME,S_NAME),
- ST1, { C_ALPH, C_NUM }, ID1,
- ST1, { '"' }, ST2,
- ST1, { '\'' }, CC1,
-
- /* saw " beginning string */
- ST2, { C_XX }, ST2,
- ST2, { '"' }, ACT(STRING, S_SELF),
- ST2, { '\\' }, ST3,
- ST2, { '\n' }, S_STNL,
- ST2, { EOFC }, S_EOFSTR,
-
- /* saw \ in string */
- ST3, { C_XX }, ST2,
- ST3, { '\n' }, S_STNL,
- ST3, { EOFC }, S_EOFSTR,
-
- /* saw ' beginning character const */
- CC1, { C_XX }, CC1,
- CC1, { '\'' }, ACT(CCON, S_SELF),
- CC1, { '\\' }, CC2,
- CC1, { '\n' }, S_STNL,
- CC1, { EOFC }, S_EOFSTR,
-
- /* saw \ in ccon */
- CC2, { C_XX }, CC1,
- CC2, { '\n' }, S_STNL,
- CC2, { EOFC }, S_EOFSTR,
-
- /* saw /, perhaps start of comment */
- COM1, { C_XX }, ACT(SLASH, S_SELFB),
- COM1, { '=' }, ACT(ASSLASH, S_SELF),
- COM1, { '*' }, COM2,
- COM1, { '/' }, COM4,
-
- /* saw / then *, start of comment */
- COM2, { C_XX }, COM2,
- COM2, { '\n' }, S_COMNL,
- COM2, { '*' }, COM3,
- COM2, { EOFC }, S_EOFCOM,
-
- /* saw the * possibly ending a comment */
- COM3, { C_XX }, COM2,
- COM3, { '\n' }, S_COMNL,
- COM3, { '*' }, COM3,
- COM3, { '/' }, S_COMMENT,
-
- /* // comment */
- COM4, { C_XX }, COM4,
- COM4, { '\n' }, S_NL,
- COM4, { EOFC }, S_EOFCOM,
-
- /* saw white space, eat it up */
- WS1, { C_XX }, S_WS,
- WS1, { ' ', '\t', '\v' }, WS1,
-
- /* saw -, check --, -=, -> */
- MINUS1, { C_XX }, ACT(MINUS, S_SELFB),
- MINUS1, { '-' }, ACT(MMINUS, S_SELF),
- MINUS1, { '=' }, ACT(ASMINUS,S_SELF),
- MINUS1, { '>' }, ACT(ARROW,S_SELF),
-
- /* saw +, check ++, += */
- PLUS1, { C_XX }, ACT(PLUS, S_SELFB),
- PLUS1, { '+' }, ACT(PPLUS, S_SELF),
- PLUS1, { '=' }, ACT(ASPLUS, S_SELF),
-
- /* saw <, check <<, <<=, <= */
- LT1, { C_XX }, ACT(LT, S_SELFB),
- LT1, { '<' }, LT2,
- LT1, { '=' }, ACT(LEQ, S_SELF),
- LT2, { C_XX }, ACT(LSH, S_SELFB),
- LT2, { '=' }, ACT(ASLSH, S_SELF),
-
- /* saw >, check >>, >>=, >= */
- GT1, { C_XX }, ACT(GT, S_SELFB),
- GT1, { '>' }, GT2,
- GT1, { '=' }, ACT(GEQ, S_SELF),
- GT2, { C_XX }, ACT(RSH, S_SELFB),
- GT2, { '=' }, ACT(ASRSH, S_SELF),
-
- /* = */
- ASG1, { C_XX }, ACT(ASGN, S_SELFB),
- ASG1, { '=' }, ACT(EQ, S_SELF),
-
- /* ! */
- NOT1, { C_XX }, ACT(NOT, S_SELFB),
- NOT1, { '=' }, ACT(NEQ, S_SELF),
-
- /* & */
- AND1, { C_XX }, ACT(AND, S_SELFB),
- AND1, { '&' }, ACT(LAND, S_SELF),
- AND1, { '=' }, ACT(ASAND, S_SELF),
-
- /* | */
- OR1, { C_XX }, ACT(OR, S_SELFB),
- OR1, { '|' }, ACT(LOR, S_SELF),
- OR1, { '=' }, ACT(ASOR, S_SELF),
-
- /* # */
- SHARP1, { C_XX }, ACT(SHARP, S_SELFB),
- SHARP1, { '#' }, ACT(DSHARP, S_SELF),
-
- /* % */
- PCT1, { C_XX }, ACT(PCT, S_SELFB),
- PCT1, { '=' }, ACT(ASPCT, S_SELF),
-
- /* * */
- STAR1, { C_XX }, ACT(STAR, S_SELFB),
- STAR1, { '=' }, ACT(ASSTAR, S_SELF),
-
- /* ^ */
- CIRC1, { C_XX }, ACT(CIRC, S_SELFB),
- CIRC1, { '=' }, ACT(ASCIRC, S_SELF),
-
- -1
-};
-
-/* first index is char, second is state */
-/* increase #states to power of 2 to encourage use of shift */
-short bigfsm[256][MAXSTATE];
-
-void
-expandlex(void)
-{
- /*const*/ struct fsm *fp;
- int i, j, nstate;
-
- for (fp = fsm; fp->state>=0; fp++) {
- for (i=0; fp->ch[i]; i++) {
- nstate = fp->nextstate;
- if (nstate >= S_SELF)
- nstate = ~nstate;
- switch (fp->ch[i]) {
-
- case C_XX: /* random characters */
- for (j=0; j<256; j++)
- bigfsm[j][fp->state] = nstate;
- continue;
- case C_ALPH:
- for (j=0; j<=256; j++)
- if ('a'<=j&&j<='z' || 'A'<=j&&j<='Z'
- || j=='_')
- bigfsm[j][fp->state] = nstate;
- continue;
- case C_NUM:
- for (j='0'; j<='9'; j++)
- bigfsm[j][fp->state] = nstate;
- continue;
- default:
- bigfsm[fp->ch[i]][fp->state] = nstate;
- }
- }
- }
- /* install special cases for ? (trigraphs), \ (splicing), runes, and EOB */
- for (i=0; i<MAXSTATE; i++) {
- for (j=0; j<0xFF; j++)
- if (j=='?' || j=='\\') {
- if (bigfsm[j][i]>0)
- bigfsm[j][i] = ~bigfsm[j][i];
- bigfsm[j][i] &= ~QBSBIT;
- }
- bigfsm[EOB][i] = ~S_EOB;
- if (bigfsm[EOFC][i]>=0)
- bigfsm[EOFC][i] = ~S_EOF;
- }
-}
-
-void
-fixlex(void)
-{
- /* do C++ comments? */
- if (Cplusplus==0)
- bigfsm['/'][COM1] = bigfsm['x'][COM1];
-}
-
-/*
- * fill in a row of tokens from input, terminated by NL or END
- * First token is put at trp->lp.
- * Reset is non-zero when the input buffer can be "rewound."
- * The value is a flag indicating that possible macros have
- * been seen in the row.
- */
-int
-gettokens(Tokenrow *trp, int reset)
-{
- register int c, state, oldstate;
- register uchar *ip;
- register Token *tp, *maxp;
- int runelen;
- Source *s = cursource;
- int nmac = 0;
- extern char outbuf[];
-
- tp = trp->lp;
- ip = s->inp;
- if (reset) {
- s->lineinc = 0;
- if (ip>=s->inl) { /* nothing in buffer */
- s->inl = s->inb;
- fillbuf(s);
- ip = s->inp = s->inb;
- } else if (ip >= s->inb+(3*INS/4)) {
- memmove(s->inb, ip, 4+s->inl-ip);
- s->inl = s->inb+(s->inl-ip);
- ip = s->inp = s->inb;
- }
- }
- maxp = &trp->bp[trp->max];
- runelen = 1;
- for (;;) {
- continue2:
- if (tp>=maxp) {
- trp->lp = tp;
- tp = growtokenrow(trp);
- maxp = &trp->bp[trp->max];
- }
- tp->type = UNCLASS;
- tp->hideset = 0;
- tp->t = ip;
- tp->wslen = 0;
- tp->flag = 0;
- state = START;
- for (;;) {
- oldstate = state;
- c = *ip;
- if ((state = bigfsm[c][state]) >= 0) {
- ip += runelen;
- runelen = 1;
- continue;
- }
- state = ~state;
- reswitch:
- switch (state&0177) {
- case S_SELF:
- ip += runelen;
- runelen = 1;
- case S_SELFB:
- tp->type = GETACT(state);
- tp->len = ip - tp->t;
- tp++;
- goto continue2;
-
- case S_NAME: /* like S_SELFB but with nmac check */
- tp->type = NAME;
- tp->len = ip - tp->t;
- nmac |= quicklook(tp->t[0], tp->len>1?tp->t[1]:0);
- tp++;
- goto continue2;
-
- case S_WS:
- tp->wslen = ip - tp->t;
- tp->t = ip;
- state = START;
- continue;
-
- default:
- if ((state&QBSBIT)==0) {
- ip += runelen;
- runelen = 1;
- continue;
- }
- state &= ~QBSBIT;
- s->inp = ip;
- if (c=='?') { /* check trigraph */
- if (trigraph(s)) {
- state = oldstate;
- continue;
- }
- goto reswitch;
- }
- if (c=='\\') { /* line-folding */
- if (foldline(s)) {
- s->lineinc++;
- state = oldstate;
- continue;
- }
- goto reswitch;
- }
- error(WARNING, "Lexical botch in cpp");
- ip += runelen;
- runelen = 1;
- continue;
-
- case S_EOB:
- s->inp = ip;
- fillbuf(cursource);
- state = oldstate;
- continue;
-
- case S_EOF:
- tp->type = END;
- tp->len = 0;
- s->inp = ip;
- if (tp!=trp->bp && (tp-1)->type!=NL && cursource->fd!=-1)
- error(WARNING,"No newline at end of file");
- trp->lp = tp+1;
- return nmac;
-
- case S_STNL:
- error(ERROR, "Unterminated string or char const");
- case S_NL:
- tp->t = ip;
- tp->type = NL;
- tp->len = 1;
- tp->wslen = 0;
- s->lineinc++;
- s->inp = ip+1;
- trp->lp = tp+1;
- return nmac;
-
- case S_EOFSTR:
- error(FATAL, "EOF in string or char constant");
- break;
-
- case S_COMNL:
- s->lineinc++;
- state = COM2;
- ip += runelen;
- runelen = 1;
- if (ip >= s->inb+(7*INS/8)) { /* very long comment */
- memmove(tp->t, ip, 4+s->inl-ip);
- s->inl -= ip-tp->t;
- ip = tp->t+1;
- }
- continue;
-
- case S_EOFCOM:
- error(WARNING, "EOF inside comment");
- --ip;
- case S_COMMENT:
- ++ip;
- tp->t = ip;
- tp->t[-1] = ' ';
- tp->wslen = 1;
- state = START;
- continue;
- }
- break;
- }
- ip += runelen;
- runelen = 1;
- tp->len = ip - tp->t;
- tp++;
- }
-}
-
-/* have seen ?; handle the trigraph it starts (if any) else 0 */
-int
-trigraph(Source *s)
-{
- int c;
-
- while (s->inp+2 >= s->inl && fillbuf(s)!=EOF)
- ;
- if (s->inp[1]!='?')
- return 0;
- c = 0;
- switch(s->inp[2]) {
- case '=':
- c = '#'; break;
- case '(':
- c = '['; break;
- case '/':
- c = '\\'; break;
- case ')':
- c = ']'; break;
- case '\'':
- c = '^'; break;
- case '<':
- c = '{'; break;
- case '!':
- c = '|'; break;
- case '>':
- c = '}'; break;
- case '-':
- c = '~'; break;
- }
- if (c) {
- *s->inp = c;
- memmove(s->inp+1, s->inp+3, s->inl-s->inp+2);
- s->inl -= 2;
- }
- return c;
-}
-
-int
-foldline(Source *s)
-{
- while (s->inp+1 >= s->inl && fillbuf(s)!=EOF)
- ;
- if (s->inp[1] == '\n') {
- memmove(s->inp, s->inp+2, s->inl-s->inp+3);
- s->inl -= 2;
- return 1;
- }
- return 0;
-}
-
-int
-fillbuf(Source *s)
-{
- int n, nr;
-
- nr = INS/8;
- if ((char *)s->inl+nr > (char *)s->inb+INS)
- error(FATAL, "Input buffer overflow");
- if (s->fd<0 || (n=read(s->fd, (char *)s->inl, INS/8)) <= 0)
- n = 0;
- if ((*s->inp&0xff) == EOB) /* sentinel character appears in input */
- *s->inp = EOFC;
- s->inl += n;
- s->inl[0] = s->inl[1]= s->inl[2]= s->inl[3] = EOB;
- if (n==0) {
- s->inl[0] = s->inl[1]= s->inl[2]= s->inl[3] = EOFC;
- return EOF;
- }
- return 0;
-}
-
-/*
- * Push down to new source of characters.
- * If fd>0 and str==NULL, then from a file `name';
- * if fd==-1 and str, then from the string.
- */
-Source *
-setsource(char *name, int fd, char *str)
-{
- Source *s = new(Source);
- int len;
-
- s->line = 1;
- s->lineinc = 0;
- s->fd = fd;
- s->filename = name;
- s->next = cursource;
- s->ifdepth = 0;
- cursource = s;
- /* slop at right for EOB */
- if (str) {
- len = strlen(str);
- s->inb = domalloc(len+4);
- s->inp = s->inb;
- strncpy((char *)s->inp, str, len);
- } else {
- s->inb = domalloc(INS+4);
- s->inp = s->inb;
- len = 0;
- }
- s->inl = s->inp+len;
- s->inl[0] = s->inl[1] = EOB;
- return s;
-}
-
-void
-unsetsource(void)
-{
- Source *s = cursource;
-
- if (s->fd>=0) {
- close(s->fd);
- dofree(s->inb);
- }
- cursource = s->next;
- dofree(s);
-}
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "cpp.h"
+
+/*
+ * lexical FSM encoding
+ * when in state state, and one of the characters
+ * in ch arrives, enter nextstate.
+ * States >= S_SELF are either final, or at least require special action.
+ * In 'fsm' there is a line for each state X charset X nextstate.
+ * List chars that overwrite previous entries later (e.g. C_ALPH
+ * can be overridden by '_' by a later entry; and C_XX is the
+ * the universal set, and should always be first.
+ * States above S_SELF are represented in the big table as negative values.
+ * S_SELF and S_SELFB encode the resulting token type in the upper bits.
+ * These actions differ in that S_SELF doesn't have a lookahead char,
+ * S_SELFB does.
+ *
+ * The encoding is blown out into a big table for time-efficiency.
+ * Entries have
+ * nextstate: 6 bits; ?\ marker: 1 bit; tokentype: 9 bits.
+ */
+
+#define MAXSTATE 32
+#define ACT(tok,act) ((tok<<7)+act)
+#define QBSBIT 0100
+#define GETACT(st) (st>>7)&0x1ff
+
+/* character classes */
+#define C_WS 1
+#define C_ALPH 2
+#define C_NUM 3
+#define C_EOF 4
+#define C_XX 5
+
+enum state {
+ START=0, NUM1, NUM2, NUM3, ID1, ST1, ST2, ST3, COM1, COM2, COM3, COM4,
+ CC1, CC2, WS1, PLUS1, MINUS1, STAR1, SLASH1, PCT1, SHARP1,
+ CIRC1, GT1, GT2, LT1, LT2, OR1, AND1, ASG1, NOT1, DOTS1,
+ S_SELF=MAXSTATE, S_SELFB, S_EOF, S_NL, S_EOFSTR,
+ S_STNL, S_COMNL, S_EOFCOM, S_COMMENT, S_EOB, S_WS, S_NAME
+};
+
+int tottok;
+int tokkind[256];
+struct fsm {
+ int state; /* if in this state */
+ uchar ch[4]; /* and see one of these characters */
+ int nextstate; /* enter this state if +ve */
+};
+
+/*const*/ struct fsm fsm[] = {
+ /* start state */
+ START, { C_XX }, ACT(UNCLASS,S_SELF),
+ START, { ' ', '\t', '\v' }, WS1,
+ START, { C_NUM }, NUM1,
+ START, { '.' }, NUM3,
+ START, { C_ALPH }, ID1,
+ START, { 'L' }, ST1,
+ START, { '"' }, ST2,
+ START, { '\'' }, CC1,
+ START, { '/' }, COM1,
+ START, { EOFC }, S_EOF,
+ START, { '\n' }, S_NL,
+ START, { '-' }, MINUS1,
+ START, { '+' }, PLUS1,
+ START, { '<' }, LT1,
+ START, { '>' }, GT1,
+ START, { '=' }, ASG1,
+ START, { '!' }, NOT1,
+ START, { '&' }, AND1,
+ START, { '|' }, OR1,
+ START, { '#' }, SHARP1,
+ START, { '%' }, PCT1,
+ START, { '[' }, ACT(SBRA,S_SELF),
+ START, { ']' }, ACT(SKET,S_SELF),
+ START, { '(' }, ACT(LP,S_SELF),
+ START, { ')' }, ACT(RP,S_SELF),
+ START, { '*' }, STAR1,
+ START, { ',' }, ACT(COMMA,S_SELF),
+ START, { '?' }, ACT(QUEST,S_SELF),
+ START, { ':' }, ACT(COLON,S_SELF),
+ START, { ';' }, ACT(SEMIC,S_SELF),
+ START, { '{' }, ACT(CBRA,S_SELF),
+ START, { '}' }, ACT(CKET,S_SELF),
+ START, { '~' }, ACT(TILDE,S_SELF),
+ START, { '^' }, CIRC1,
+
+ /* saw a digit */
+ NUM1, { C_XX }, ACT(NUMBER,S_SELFB),
+ NUM1, { C_NUM, C_ALPH, '.' }, NUM1,
+ NUM1, { 'E', 'e' }, NUM2,
+ NUM1, { '_' }, ACT(NUMBER,S_SELFB),
+
+ /* saw possible start of exponent, digits-e */
+ NUM2, { C_XX }, ACT(NUMBER,S_SELFB),
+ NUM2, { '+', '-' }, NUM1,
+ NUM2, { C_NUM, C_ALPH }, NUM1,
+ NUM2, { '_' }, ACT(NUMBER,S_SELFB),
+
+ /* saw a '.', which could be a number or an operator */
+ NUM3, { C_XX }, ACT(DOT,S_SELFB),
+ NUM3, { '.' }, DOTS1,
+ NUM3, { C_NUM }, NUM1,
+
+ DOTS1, { C_XX }, ACT(UNCLASS, S_SELFB),
+ DOTS1, { C_NUM }, NUM1,
+ DOTS1, { '.' }, ACT(ELLIPS, S_SELF),
+
+ /* saw a letter or _ */
+ ID1, { C_XX }, ACT(NAME,S_NAME),
+ ID1, { C_ALPH, C_NUM }, ID1,
+
+ /* saw L (start of wide string?) */
+ ST1, { C_XX }, ACT(NAME,S_NAME),
+ ST1, { C_ALPH, C_NUM }, ID1,
+ ST1, { '"' }, ST2,
+ ST1, { '\'' }, CC1,
+
+ /* saw " beginning string */
+ ST2, { C_XX }, ST2,
+ ST2, { '"' }, ACT(STRING, S_SELF),
+ ST2, { '\\' }, ST3,
+ ST2, { '\n' }, S_STNL,
+ ST2, { EOFC }, S_EOFSTR,
+
+ /* saw \ in string */
+ ST3, { C_XX }, ST2,
+ ST3, { '\n' }, S_STNL,
+ ST3, { EOFC }, S_EOFSTR,
+
+ /* saw ' beginning character const */
+ CC1, { C_XX }, CC1,
+ CC1, { '\'' }, ACT(CCON, S_SELF),
+ CC1, { '\\' }, CC2,
+ CC1, { '\n' }, S_STNL,
+ CC1, { EOFC }, S_EOFSTR,
+
+ /* saw \ in ccon */
+ CC2, { C_XX }, CC1,
+ CC2, { '\n' }, S_STNL,
+ CC2, { EOFC }, S_EOFSTR,
+
+ /* saw /, perhaps start of comment */
+ COM1, { C_XX }, ACT(SLASH, S_SELFB),
+ COM1, { '=' }, ACT(ASSLASH, S_SELF),
+ COM1, { '*' }, COM2,
+ COM1, { '/' }, COM4,
+
+ /* saw / then *, start of comment */
+ COM2, { C_XX }, COM2,
+ COM2, { '\n' }, S_COMNL,
+ COM2, { '*' }, COM3,
+ COM2, { EOFC }, S_EOFCOM,
+
+ /* saw the * possibly ending a comment */
+ COM3, { C_XX }, COM2,
+ COM3, { '\n' }, S_COMNL,
+ COM3, { '*' }, COM3,
+ COM3, { '/' }, S_COMMENT,
+
+ /* // comment */
+ COM4, { C_XX }, COM4,
+ COM4, { '\n' }, S_NL,
+ COM4, { EOFC }, S_EOFCOM,
+
+ /* saw white space, eat it up */
+ WS1, { C_XX }, S_WS,
+ WS1, { ' ', '\t', '\v' }, WS1,
+
+ /* saw -, check --, -=, -> */
+ MINUS1, { C_XX }, ACT(MINUS, S_SELFB),
+ MINUS1, { '-' }, ACT(MMINUS, S_SELF),
+ MINUS1, { '=' }, ACT(ASMINUS,S_SELF),
+ MINUS1, { '>' }, ACT(ARROW,S_SELF),
+
+ /* saw +, check ++, += */
+ PLUS1, { C_XX }, ACT(PLUS, S_SELFB),
+ PLUS1, { '+' }, ACT(PPLUS, S_SELF),
+ PLUS1, { '=' }, ACT(ASPLUS, S_SELF),
+
+ /* saw <, check <<, <<=, <= */
+ LT1, { C_XX }, ACT(LT, S_SELFB),
+ LT1, { '<' }, LT2,
+ LT1, { '=' }, ACT(LEQ, S_SELF),
+ LT2, { C_XX }, ACT(LSH, S_SELFB),
+ LT2, { '=' }, ACT(ASLSH, S_SELF),
+
+ /* saw >, check >>, >>=, >= */
+ GT1, { C_XX }, ACT(GT, S_SELFB),
+ GT1, { '>' }, GT2,
+ GT1, { '=' }, ACT(GEQ, S_SELF),
+ GT2, { C_XX }, ACT(RSH, S_SELFB),
+ GT2, { '=' }, ACT(ASRSH, S_SELF),
+
+ /* = */
+ ASG1, { C_XX }, ACT(ASGN, S_SELFB),
+ ASG1, { '=' }, ACT(EQ, S_SELF),
+
+ /* ! */
+ NOT1, { C_XX }, ACT(NOT, S_SELFB),
+ NOT1, { '=' }, ACT(NEQ, S_SELF),
+
+ /* & */
+ AND1, { C_XX }, ACT(AND, S_SELFB),
+ AND1, { '&' }, ACT(LAND, S_SELF),
+ AND1, { '=' }, ACT(ASAND, S_SELF),
+
+ /* | */
+ OR1, { C_XX }, ACT(OR, S_SELFB),
+ OR1, { '|' }, ACT(LOR, S_SELF),
+ OR1, { '=' }, ACT(ASOR, S_SELF),
+
+ /* # */
+ SHARP1, { C_XX }, ACT(SHARP, S_SELFB),
+ SHARP1, { '#' }, ACT(DSHARP, S_SELF),
+
+ /* % */
+ PCT1, { C_XX }, ACT(PCT, S_SELFB),
+ PCT1, { '=' }, ACT(ASPCT, S_SELF),
+
+ /* * */
+ STAR1, { C_XX }, ACT(STAR, S_SELFB),
+ STAR1, { '=' }, ACT(ASSTAR, S_SELF),
+
+ /* ^ */
+ CIRC1, { C_XX }, ACT(CIRC, S_SELFB),
+ CIRC1, { '=' }, ACT(ASCIRC, S_SELF),
+
+ -1
+};
+
+/* first index is char, second is state */
+/* increase #states to power of 2 to encourage use of shift */
+short bigfsm[256][MAXSTATE];
+
+void
+expandlex(void)
+{
+ /*const*/ struct fsm *fp;
+ int i, j, nstate;
+
+ for (fp = fsm; fp->state>=0; fp++) {
+ for (i=0; fp->ch[i]; i++) {
+ nstate = fp->nextstate;
+ if (nstate >= S_SELF)
+ nstate = ~nstate;
+ switch (fp->ch[i]) {
+
+ case C_XX: /* random characters */
+ for (j=0; j<256; j++)
+ bigfsm[j][fp->state] = nstate;
+ continue;
+ case C_ALPH:
+ for (j=0; j<=256; j++)
+ if ('a'<=j&&j<='z' || 'A'<=j&&j<='Z'
+ || j=='_')
+ bigfsm[j][fp->state] = nstate;
+ continue;
+ case C_NUM:
+ for (j='0'; j<='9'; j++)
+ bigfsm[j][fp->state] = nstate;
+ continue;
+ default:
+ bigfsm[fp->ch[i]][fp->state] = nstate;
+ }
+ }
+ }
+ /* install special cases for ? (trigraphs), \ (splicing), runes, and EOB */
+ for (i=0; i<MAXSTATE; i++) {
+ for (j=0; j<0xFF; j++)
+ if (j=='?' || j=='\\') {
+ if (bigfsm[j][i]>0)
+ bigfsm[j][i] = ~bigfsm[j][i];
+ bigfsm[j][i] &= ~QBSBIT;
+ }
+ bigfsm[EOB][i] = ~S_EOB;
+ if (bigfsm[EOFC][i]>=0)
+ bigfsm[EOFC][i] = ~S_EOF;
+ }
+}
+
+void
+fixlex(void)
+{
+ /* do C++ comments? */
+ if (Cplusplus==0)
+ bigfsm['/'][COM1] = bigfsm['x'][COM1];
+}
+
+/*
+ * fill in a row of tokens from input, terminated by NL or END
+ * First token is put at trp->lp.
+ * Reset is non-zero when the input buffer can be "rewound."
+ * The value is a flag indicating that possible macros have
+ * been seen in the row.
+ */
+int
+gettokens(Tokenrow *trp, int reset)
+{
+ register int c, state, oldstate;
+ register uchar *ip;
+ register Token *tp, *maxp;
+ int runelen;
+ Source *s = cursource;
+ int nmac = 0;
+ extern char outbuf[];
+
+ tp = trp->lp;
+ ip = s->inp;
+ if (reset) {
+ s->lineinc = 0;
+ if (ip>=s->inl) { /* nothing in buffer */
+ s->inl = s->inb;
+ fillbuf(s);
+ ip = s->inp = s->inb;
+ } else if (ip >= s->inb+(3*INS/4)) {
+ memmove(s->inb, ip, 4+s->inl-ip);
+ s->inl = s->inb+(s->inl-ip);
+ ip = s->inp = s->inb;
+ }
+ }
+ maxp = &trp->bp[trp->max];
+ runelen = 1;
+ for (;;) {
+ continue2:
+ if (tp>=maxp) {
+ trp->lp = tp;
+ tp = growtokenrow(trp);
+ maxp = &trp->bp[trp->max];
+ }
+ tp->type = UNCLASS;
+ tp->hideset = 0;
+ tp->t = ip;
+ tp->wslen = 0;
+ tp->flag = 0;
+ state = START;
+ for (;;) {
+ oldstate = state;
+ c = *ip;
+ if ((state = bigfsm[c][state]) >= 0) {
+ ip += runelen;
+ runelen = 1;
+ continue;
+ }
+ state = ~state;
+ reswitch:
+ switch (state&0177) {
+ case S_SELF:
+ ip += runelen;
+ runelen = 1;
+ case S_SELFB:
+ tp->type = GETACT(state);
+ tp->len = ip - tp->t;
+ tp++;
+ goto continue2;
+
+ case S_NAME: /* like S_SELFB but with nmac check */
+ tp->type = NAME;
+ tp->len = ip - tp->t;
+ nmac |= quicklook(tp->t[0], tp->len>1?tp->t[1]:0);
+ tp++;
+ goto continue2;
+
+ case S_WS:
+ tp->wslen = ip - tp->t;
+ tp->t = ip;
+ state = START;
+ continue;
+
+ default:
+ if ((state&QBSBIT)==0) {
+ ip += runelen;
+ runelen = 1;
+ continue;
+ }
+ state &= ~QBSBIT;
+ s->inp = ip;
+ if (c=='?') { /* check trigraph */
+ if (trigraph(s)) {
+ state = oldstate;
+ continue;
+ }
+ goto reswitch;
+ }
+ if (c=='\\') { /* line-folding */
+ if (foldline(s)) {
+ s->lineinc++;
+ state = oldstate;
+ continue;
+ }
+ goto reswitch;
+ }
+ error(WARNING, "Lexical botch in cpp");
+ ip += runelen;
+ runelen = 1;
+ continue;
+
+ case S_EOB:
+ s->inp = ip;
+ fillbuf(cursource);
+ state = oldstate;
+ continue;
+
+ case S_EOF:
+ tp->type = END;
+ tp->len = 0;
+ s->inp = ip;
+ if (tp!=trp->bp && (tp-1)->type!=NL && cursource->fd!=-1)
+ error(WARNING,"No newline at end of file");
+ trp->lp = tp+1;
+ return nmac;
+
+ case S_STNL:
+ error(ERROR, "Unterminated string or char const");
+ case S_NL:
+ tp->t = ip;
+ tp->type = NL;
+ tp->len = 1;
+ tp->wslen = 0;
+ s->lineinc++;
+ s->inp = ip+1;
+ trp->lp = tp+1;
+ return nmac;
+
+ case S_EOFSTR:
+ error(FATAL, "EOF in string or char constant");
+ break;
+
+ case S_COMNL:
+ s->lineinc++;
+ state = COM2;
+ ip += runelen;
+ runelen = 1;
+ if (ip >= s->inb+(7*INS/8)) { /* very long comment */
+ memmove(tp->t, ip, 4+s->inl-ip);
+ s->inl -= ip-tp->t;
+ ip = tp->t+1;
+ }
+ continue;
+
+ case S_EOFCOM:
+ error(WARNING, "EOF inside comment");
+ --ip;
+ case S_COMMENT:
+ ++ip;
+ tp->t = ip;
+ tp->t[-1] = ' ';
+ tp->wslen = 1;
+ state = START;
+ continue;
+ }
+ break;
+ }
+ ip += runelen;
+ runelen = 1;
+ tp->len = ip - tp->t;
+ tp++;
+ }
+}
+
+/* have seen ?; handle the trigraph it starts (if any) else 0 */
+int
+trigraph(Source *s)
+{
+ int c;
+
+ while (s->inp+2 >= s->inl && fillbuf(s)!=EOF)
+ ;
+ if (s->inp[1]!='?')
+ return 0;
+ c = 0;
+ switch(s->inp[2]) {
+ case '=':
+ c = '#'; break;
+ case '(':
+ c = '['; break;
+ case '/':
+ c = '\\'; break;
+ case ')':
+ c = ']'; break;
+ case '\'':
+ c = '^'; break;
+ case '<':
+ c = '{'; break;
+ case '!':
+ c = '|'; break;
+ case '>':
+ c = '}'; break;
+ case '-':
+ c = '~'; break;
+ }
+ if (c) {
+ *s->inp = c;
+ memmove(s->inp+1, s->inp+3, s->inl-s->inp+2);
+ s->inl -= 2;
+ }
+ return c;
+}
+
+int
+foldline(Source *s)
+{
+ while (s->inp+1 >= s->inl && fillbuf(s)!=EOF)
+ ;
+ if (s->inp[1] == '\n') {
+ memmove(s->inp, s->inp+2, s->inl-s->inp+3);
+ s->inl -= 2;
+ return 1;
+ }
+ return 0;
+}
+
+int
+fillbuf(Source *s)
+{
+ int n, nr;
+
+ nr = INS/8;
+ if ((char *)s->inl+nr > (char *)s->inb+INS)
+ error(FATAL, "Input buffer overflow");
+ if (s->fd<0 || (n=read(s->fd, (char *)s->inl, INS/8)) <= 0)
+ n = 0;
+ if ((*s->inp&0xff) == EOB) /* sentinel character appears in input */
+ *s->inp = EOFC;
+ s->inl += n;
+ s->inl[0] = s->inl[1]= s->inl[2]= s->inl[3] = EOB;
+ if (n==0) {
+ s->inl[0] = s->inl[1]= s->inl[2]= s->inl[3] = EOFC;
+ return EOF;
+ }
+ return 0;
+}
+
+/*
+ * Push down to new source of characters.
+ * If fd>0 and str==NULL, then from a file `name';
+ * if fd==-1 and str, then from the string.
+ */
+Source *
+setsource(char *name, int fd, char *str)
+{
+ Source *s = new(Source);
+ int len;
+
+ s->line = 1;
+ s->lineinc = 0;
+ s->fd = fd;
+ s->filename = name;
+ s->next = cursource;
+ s->ifdepth = 0;
+ cursource = s;
+ /* slop at right for EOB */
+ if (str) {
+ len = strlen(str);
+ s->inb = domalloc(len+4);
+ s->inp = s->inb;
+ strncpy((char *)s->inp, str, len);
+ } else {
+ s->inb = domalloc(INS+4);
+ s->inp = s->inb;
+ len = 0;
+ }
+ s->inl = s->inp+len;
+ s->inl[0] = s->inl[1] = EOB;
+ return s;
+}
+
+void
+unsetsource(void)
+{
+ Source *s = cursource;
+
+ if (s->fd>=0) {
+ close(s->fd);
+ dofree(s->inb);
+ }
+ cursource = s->next;
+ dofree(s);
+}
diff --git a/lcc/cpp/macro.c b/lcc/cpp/macro.c
index 2268c4b..55b4b2c 100755
--- a/lcc/cpp/macro.c
+++ b/lcc/cpp/macro.c
@@ -1,515 +1,515 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "cpp.h"
-
-/*
- * do a macro definition. tp points to the name being defined in the line
- */
-void
-dodefine(Tokenrow *trp)
-{
- Token *tp;
- Nlist *np;
- Tokenrow *def, *args;
-
- tp = trp->tp+1;
- if (tp>=trp->lp || tp->type!=NAME) {
- error(ERROR, "#defined token is not a name");
- return;
- }
- np = lookup(tp, 1);
- if (np->flag&ISUNCHANGE) {
- error(ERROR, "#defined token %t can't be redefined", tp);
- return;
- }
- /* collect arguments */
- tp += 1;
- args = NULL;
- if (tp<trp->lp && tp->type==LP && tp->wslen==0) {
- /* macro with args */
- int narg = 0;
- tp += 1;
- args = new(Tokenrow);
- maketokenrow(2, args);
- if (tp->type!=RP) {
- int err = 0;
- for (;;) {
- Token *atp;
- if (tp->type!=NAME) {
- err++;
- break;
- }
- if (narg>=args->max)
- growtokenrow(args);
- for (atp=args->bp; atp<args->lp; atp++)
- if (atp->len==tp->len
- && strncmp((char*)atp->t, (char*)tp->t, tp->len)==0)
- error(ERROR, "Duplicate macro argument");
- *args->lp++ = *tp;
- narg++;
- tp += 1;
- if (tp->type==RP)
- break;
- if (tp->type!=COMMA) {
- err++;
- break;
- }
- tp += 1;
- }
- if (err) {
- error(ERROR, "Syntax error in macro parameters");
- return;
- }
- }
- tp += 1;
- }
- trp->tp = tp;
- if (((trp->lp)-1)->type==NL)
- trp->lp -= 1;
- def = normtokenrow(trp);
- if (np->flag&ISDEFINED) {
- if (comparetokens(def, np->vp)
- || (np->ap==NULL) != (args==NULL)
- || np->ap && comparetokens(args, np->ap))
- error(ERROR, "Macro redefinition of %t", trp->bp+2);
- }
- if (args) {
- Tokenrow *tap;
- tap = normtokenrow(args);
- dofree(args->bp);
- args = tap;
- }
- np->ap = args;
- np->vp = def;
- np->flag |= ISDEFINED;
-}
-
-/*
- * Definition received via -D or -U
- */
-void
-doadefine(Tokenrow *trp, int type)
-{
- Nlist *np;
- static Token onetoken[1] = {{ NUMBER, 0, 0, 0, 1, (uchar*)"1" }};
- static Tokenrow onetr = { onetoken, onetoken, onetoken+1, 1 };
-
- trp->tp = trp->bp;
- if (type=='U') {
- if (trp->lp-trp->tp != 2 || trp->tp->type!=NAME)
- goto syntax;
- if ((np = lookup(trp->tp, 0)) == NULL)
- return;
- np->flag &= ~ISDEFINED;
- return;
- }
- if (trp->tp >= trp->lp || trp->tp->type!=NAME)
- goto syntax;
- np = lookup(trp->tp, 1);
- np->flag |= ISDEFINED;
- trp->tp += 1;
- if (trp->tp >= trp->lp || trp->tp->type==END) {
- np->vp = &onetr;
- return;
- }
- if (trp->tp->type!=ASGN)
- goto syntax;
- trp->tp += 1;
- if ((trp->lp-1)->type == END)
- trp->lp -= 1;
- np->vp = normtokenrow(trp);
- return;
-syntax:
- error(FATAL, "Illegal -D or -U argument %r", trp);
-}
-
-/*
- * Do macro expansion in a row of tokens.
- * Flag is NULL if more input can be gathered.
- */
-void
-expandrow(Tokenrow *trp, char *flag)
-{
- Token *tp;
- Nlist *np;
-
- if (flag)
- setsource(flag, -1, "");
- for (tp = trp->tp; tp<trp->lp; ) {
- if (tp->type!=NAME
- || quicklook(tp->t[0], tp->len>1?tp->t[1]:0)==0
- || (np = lookup(tp, 0))==NULL
- || (np->flag&(ISDEFINED|ISMAC))==0
- || tp->hideset && checkhideset(tp->hideset, np)) {
- tp++;
- continue;
- }
- trp->tp = tp;
- if (np->val==KDEFINED) {
- tp->type = DEFINED;
- if ((tp+1)<trp->lp && (tp+1)->type==NAME)
- (tp+1)->type = NAME1;
- else if ((tp+3)<trp->lp && (tp+1)->type==LP
- && (tp+2)->type==NAME && (tp+3)->type==RP)
- (tp+2)->type = NAME1;
- else
- error(ERROR, "Incorrect syntax for `defined'");
- tp++;
- continue;
- }
- if (np->flag&ISMAC)
- builtin(trp, np->val);
- else {
- expand(trp, np);
- }
- tp = trp->tp;
- }
- if (flag)
- unsetsource();
-}
-
-/*
- * Expand the macro whose name is np, at token trp->tp, in the tokenrow.
- * Return trp->tp at the first token next to be expanded
- * (ordinarily the beginning of the expansion)
- */
-void
-expand(Tokenrow *trp, Nlist *np)
-{
- Tokenrow ntr;
- int ntokc, narg, i;
- Token *tp;
- Tokenrow *atr[NARG+1];
- int hs;
-
- copytokenrow(&ntr, np->vp); /* copy macro value */
- if (np->ap==NULL) /* parameterless */
- ntokc = 1;
- else {
- ntokc = gatherargs(trp, atr, &narg);
- if (narg<0) { /* not actually a call (no '(') */
- trp->tp++;
- return;
- }
- if (narg != rowlen(np->ap)) {
- error(ERROR, "Disagreement in number of macro arguments");
- trp->tp->hideset = newhideset(trp->tp->hideset, np);
- trp->tp += ntokc;
- return;
- }
- substargs(np, &ntr, atr); /* put args into replacement */
- for (i=0; i<narg; i++) {
- dofree(atr[i]->bp);
- dofree(atr[i]);
- }
- }
- doconcat(&ntr); /* execute ## operators */
- hs = newhideset(trp->tp->hideset, np);
- for (tp=ntr.bp; tp<ntr.lp; tp++) { /* distribute hidesets */
- if (tp->type==NAME) {
- if (tp->hideset==0)
- tp->hideset = hs;
- else
- tp->hideset = unionhideset(tp->hideset, hs);
- }
- }
- ntr.tp = ntr.bp;
- insertrow(trp, ntokc, &ntr);
- trp->tp -= rowlen(&ntr);
- dofree(ntr.bp);
- return;
-}
-
-/*
- * Gather an arglist, starting in trp with tp pointing at the macro name.
- * Return total number of tokens passed, stash number of args found.
- * trp->tp is not changed relative to the tokenrow.
- */
-int
-gatherargs(Tokenrow *trp, Tokenrow **atr, int *narg)
-{
- int parens = 1;
- int ntok = 0;
- Token *bp, *lp;
- Tokenrow ttr;
- int ntokp;
- int needspace;
-
- *narg = -1; /* means that there is no macro call */
- /* look for the ( */
- for (;;) {
- trp->tp++;
- ntok++;
- if (trp->tp >= trp->lp) {
- gettokens(trp, 0);
- if ((trp->lp-1)->type==END) {
- trp->lp -= 1;
- trp->tp -= ntok;
- return ntok;
- }
- }
- if (trp->tp->type==LP)
- break;
- if (trp->tp->type!=NL)
- return ntok;
- }
- *narg = 0;
- ntok++;
- ntokp = ntok;
- trp->tp++;
- /* search for the terminating ), possibly extending the row */
- needspace = 0;
- while (parens>0) {
- if (trp->tp >= trp->lp)
- gettokens(trp, 0);
- if (needspace) {
- needspace = 0;
- makespace(trp);
- }
- if (trp->tp->type==END) {
- trp->lp -= 1;
- trp->tp -= ntok;
- error(ERROR, "EOF in macro arglist");
- return ntok;
- }
- if (trp->tp->type==NL) {
- trp->tp += 1;
- adjustrow(trp, -1);
- trp->tp -= 1;
- makespace(trp);
- needspace = 1;
- continue;
- }
- if (trp->tp->type==LP)
- parens++;
- else if (trp->tp->type==RP)
- parens--;
- trp->tp++;
- ntok++;
- }
- trp->tp -= ntok;
- /* Now trp->tp won't move underneath us */
- lp = bp = trp->tp+ntokp;
- for (; parens>=0; lp++) {
- if (lp->type == LP) {
- parens++;
- continue;
- }
- if (lp->type==RP)
- parens--;
- if (lp->type==DSHARP)
- lp->type = DSHARP1; /* ## not special in arg */
- if (lp->type==COMMA && parens==0 || parens<0 && (lp-1)->type!=LP) {
- if (*narg>=NARG-1)
- error(FATAL, "Sorry, too many macro arguments");
- ttr.bp = ttr.tp = bp;
- ttr.lp = lp;
- atr[(*narg)++] = normtokenrow(&ttr);
- bp = lp+1;
- }
- }
- return ntok;
-}
-
-/*
- * substitute the argument list into the replacement string
- * This would be simple except for ## and #
- */
-void
-substargs(Nlist *np, Tokenrow *rtr, Tokenrow **atr)
-{
- Tokenrow tatr;
- Token *tp;
- int ntok, argno;
-
- for (rtr->tp=rtr->bp; rtr->tp<rtr->lp; ) {
- if (rtr->tp->type==SHARP) { /* string operator */
- tp = rtr->tp;
- rtr->tp += 1;
- if ((argno = lookuparg(np, rtr->tp))<0) {
- error(ERROR, "# not followed by macro parameter");
- continue;
- }
- ntok = 1 + (rtr->tp - tp);
- rtr->tp = tp;
- insertrow(rtr, ntok, stringify(atr[argno]));
- continue;
- }
- if (rtr->tp->type==NAME
- && (argno = lookuparg(np, rtr->tp)) >= 0) {
- if ((rtr->tp+1)->type==DSHARP
- || rtr->tp!=rtr->bp && (rtr->tp-1)->type==DSHARP)
- insertrow(rtr, 1, atr[argno]);
- else {
- copytokenrow(&tatr, atr[argno]);
- expandrow(&tatr, "<macro>");
- insertrow(rtr, 1, &tatr);
- dofree(tatr.bp);
- }
- continue;
- }
- rtr->tp++;
- }
-}
-
-/*
- * Evaluate the ## operators in a tokenrow
- */
-void
-doconcat(Tokenrow *trp)
-{
- Token *ltp, *ntp;
- Tokenrow ntr;
- int len;
-
- for (trp->tp=trp->bp; trp->tp<trp->lp; trp->tp++) {
- if (trp->tp->type==DSHARP1)
- trp->tp->type = DSHARP;
- else if (trp->tp->type==DSHARP) {
- char tt[128];
- ltp = trp->tp-1;
- ntp = trp->tp+1;
- if (ltp<trp->bp || ntp>=trp->lp) {
- error(ERROR, "## occurs at border of replacement");
- continue;
- }
- len = ltp->len + ntp->len;
- strncpy((char*)tt, (char*)ltp->t, ltp->len);
- strncpy((char*)tt+ltp->len, (char*)ntp->t, ntp->len);
- tt[len] = '\0';
- setsource("<##>", -1, tt);
- maketokenrow(3, &ntr);
- gettokens(&ntr, 1);
- unsetsource();
- if (ntr.lp-ntr.bp!=2 || ntr.bp->type==UNCLASS)
- error(WARNING, "Bad token %r produced by ##", &ntr);
- ntr.lp = ntr.bp+1;
- trp->tp = ltp;
- makespace(&ntr);
- insertrow(trp, (ntp-ltp)+1, &ntr);
- dofree(ntr.bp);
- trp->tp--;
- }
- }
-}
-
-/*
- * tp is a potential parameter name of macro mac;
- * look it up in mac's arglist, and if found, return the
- * corresponding index in the argname array. Return -1 if not found.
- */
-int
-lookuparg(Nlist *mac, Token *tp)
-{
- Token *ap;
-
- if (tp->type!=NAME || mac->ap==NULL)
- return -1;
- for (ap=mac->ap->bp; ap<mac->ap->lp; ap++) {
- if (ap->len==tp->len && strncmp((char*)ap->t,(char*)tp->t,ap->len)==0)
- return ap - mac->ap->bp;
- }
- return -1;
-}
-
-/*
- * Return a quoted version of the tokenrow (from # arg)
- */
-#define STRLEN 512
-Tokenrow *
-stringify(Tokenrow *vp)
-{
- static Token t = { STRING };
- static Tokenrow tr = { &t, &t, &t+1, 1 };
- Token *tp;
- uchar s[STRLEN];
- uchar *sp = s, *cp;
- int i, instring;
-
- *sp++ = '"';
- for (tp = vp->bp; tp < vp->lp; tp++) {
- instring = tp->type==STRING || tp->type==CCON;
- if (sp+2*tp->len >= &s[STRLEN-10]) {
- error(ERROR, "Stringified macro arg is too long");
- break;
- }
- if (tp->wslen && (tp->flag&XPWS)==0)
- *sp++ = ' ';
- for (i=0, cp=tp->t; i<tp->len; i++) {
- if (instring && (*cp=='"' || *cp=='\\'))
- *sp++ = '\\';
- *sp++ = *cp++;
- }
- }
- *sp++ = '"';
- *sp = '\0';
- sp = s;
- t.len = strlen((char*)sp);
- t.t = newstring(sp, t.len, 0);
- return &tr;
-}
-
-/*
- * expand a builtin name
- */
-void
-builtin(Tokenrow *trp, int biname)
-{
- char *op;
- Token *tp;
- Source *s;
-
- tp = trp->tp;
- trp->tp++;
- /* need to find the real source */
- s = cursource;
- while (s && s->fd==-1)
- s = s->next;
- if (s==NULL)
- s = cursource;
- /* most are strings */
- tp->type = STRING;
- if (tp->wslen) {
- *outp++ = ' ';
- tp->wslen = 1;
- }
- op = outp;
- *op++ = '"';
- switch (biname) {
-
- case KLINENO:
- tp->type = NUMBER;
- op = outnum(op-1, s->line);
- break;
-
- case KFILE: {
- char *src = s->filename;
- while ((*op++ = *src++) != 0)
- if (src[-1] == '\\')
- *op++ = '\\';
- op--;
- break;
- }
-
- case KDATE:
- strncpy(op, curtime+4, 7);
- strncpy(op+7, curtime+20, 4);
- op += 11;
- break;
-
- case KTIME:
- strncpy(op, curtime+11, 8);
- op += 8;
- break;
-
- default:
- error(ERROR, "cpp botch: unknown internal macro");
- return;
- }
- if (tp->type==STRING)
- *op++ = '"';
- tp->t = (uchar*)outp;
- tp->len = op - outp;
- outp = op;
-}
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "cpp.h"
+
+/*
+ * do a macro definition. tp points to the name being defined in the line
+ */
+void
+dodefine(Tokenrow *trp)
+{
+ Token *tp;
+ Nlist *np;
+ Tokenrow *def, *args;
+
+ tp = trp->tp+1;
+ if (tp>=trp->lp || tp->type!=NAME) {
+ error(ERROR, "#defined token is not a name");
+ return;
+ }
+ np = lookup(tp, 1);
+ if (np->flag&ISUNCHANGE) {
+ error(ERROR, "#defined token %t can't be redefined", tp);
+ return;
+ }
+ /* collect arguments */
+ tp += 1;
+ args = NULL;
+ if (tp<trp->lp && tp->type==LP && tp->wslen==0) {
+ /* macro with args */
+ int narg = 0;
+ tp += 1;
+ args = new(Tokenrow);
+ maketokenrow(2, args);
+ if (tp->type!=RP) {
+ int err = 0;
+ for (;;) {
+ Token *atp;
+ if (tp->type!=NAME) {
+ err++;
+ break;
+ }
+ if (narg>=args->max)
+ growtokenrow(args);
+ for (atp=args->bp; atp<args->lp; atp++)
+ if (atp->len==tp->len
+ && strncmp((char*)atp->t, (char*)tp->t, tp->len)==0)
+ error(ERROR, "Duplicate macro argument");
+ *args->lp++ = *tp;
+ narg++;
+ tp += 1;
+ if (tp->type==RP)
+ break;
+ if (tp->type!=COMMA) {
+ err++;
+ break;
+ }
+ tp += 1;
+ }
+ if (err) {
+ error(ERROR, "Syntax error in macro parameters");
+ return;
+ }
+ }
+ tp += 1;
+ }
+ trp->tp = tp;
+ if (((trp->lp)-1)->type==NL)
+ trp->lp -= 1;
+ def = normtokenrow(trp);
+ if (np->flag&ISDEFINED) {
+ if (comparetokens(def, np->vp)
+ || (np->ap==NULL) != (args==NULL)
+ || np->ap && comparetokens(args, np->ap))
+ error(ERROR, "Macro redefinition of %t", trp->bp+2);
+ }
+ if (args) {
+ Tokenrow *tap;
+ tap = normtokenrow(args);
+ dofree(args->bp);
+ args = tap;
+ }
+ np->ap = args;
+ np->vp = def;
+ np->flag |= ISDEFINED;
+}
+
+/*
+ * Definition received via -D or -U
+ */
+void
+doadefine(Tokenrow *trp, int type)
+{
+ Nlist *np;
+ static Token onetoken[1] = {{ NUMBER, 0, 0, 0, 1, (uchar*)"1" }};
+ static Tokenrow onetr = { onetoken, onetoken, onetoken+1, 1 };
+
+ trp->tp = trp->bp;
+ if (type=='U') {
+ if (trp->lp-trp->tp != 2 || trp->tp->type!=NAME)
+ goto syntax;
+ if ((np = lookup(trp->tp, 0)) == NULL)
+ return;
+ np->flag &= ~ISDEFINED;
+ return;
+ }
+ if (trp->tp >= trp->lp || trp->tp->type!=NAME)
+ goto syntax;
+ np = lookup(trp->tp, 1);
+ np->flag |= ISDEFINED;
+ trp->tp += 1;
+ if (trp->tp >= trp->lp || trp->tp->type==END) {
+ np->vp = &onetr;
+ return;
+ }
+ if (trp->tp->type!=ASGN)
+ goto syntax;
+ trp->tp += 1;
+ if ((trp->lp-1)->type == END)
+ trp->lp -= 1;
+ np->vp = normtokenrow(trp);
+ return;
+syntax:
+ error(FATAL, "Illegal -D or -U argument %r", trp);
+}
+
+/*
+ * Do macro expansion in a row of tokens.
+ * Flag is NULL if more input can be gathered.
+ */
+void
+expandrow(Tokenrow *trp, char *flag)
+{
+ Token *tp;
+ Nlist *np;
+
+ if (flag)
+ setsource(flag, -1, "");
+ for (tp = trp->tp; tp<trp->lp; ) {
+ if (tp->type!=NAME
+ || quicklook(tp->t[0], tp->len>1?tp->t[1]:0)==0
+ || (np = lookup(tp, 0))==NULL
+ || (np->flag&(ISDEFINED|ISMAC))==0
+ || tp->hideset && checkhideset(tp->hideset, np)) {
+ tp++;
+ continue;
+ }
+ trp->tp = tp;
+ if (np->val==KDEFINED) {
+ tp->type = DEFINED;
+ if ((tp+1)<trp->lp && (tp+1)->type==NAME)
+ (tp+1)->type = NAME1;
+ else if ((tp+3)<trp->lp && (tp+1)->type==LP
+ && (tp+2)->type==NAME && (tp+3)->type==RP)
+ (tp+2)->type = NAME1;
+ else
+ error(ERROR, "Incorrect syntax for `defined'");
+ tp++;
+ continue;
+ }
+ if (np->flag&ISMAC)
+ builtin(trp, np->val);
+ else {
+ expand(trp, np);
+ }
+ tp = trp->tp;
+ }
+ if (flag)
+ unsetsource();
+}
+
+/*
+ * Expand the macro whose name is np, at token trp->tp, in the tokenrow.
+ * Return trp->tp at the first token next to be expanded
+ * (ordinarily the beginning of the expansion)
+ */
+void
+expand(Tokenrow *trp, Nlist *np)
+{
+ Tokenrow ntr;
+ int ntokc, narg, i;
+ Token *tp;
+ Tokenrow *atr[NARG+1];
+ int hs;
+
+ copytokenrow(&ntr, np->vp); /* copy macro value */
+ if (np->ap==NULL) /* parameterless */
+ ntokc = 1;
+ else {
+ ntokc = gatherargs(trp, atr, &narg);
+ if (narg<0) { /* not actually a call (no '(') */
+ trp->tp++;
+ return;
+ }
+ if (narg != rowlen(np->ap)) {
+ error(ERROR, "Disagreement in number of macro arguments");
+ trp->tp->hideset = newhideset(trp->tp->hideset, np);
+ trp->tp += ntokc;
+ return;
+ }
+ substargs(np, &ntr, atr); /* put args into replacement */
+ for (i=0; i<narg; i++) {
+ dofree(atr[i]->bp);
+ dofree(atr[i]);
+ }
+ }
+ doconcat(&ntr); /* execute ## operators */
+ hs = newhideset(trp->tp->hideset, np);
+ for (tp=ntr.bp; tp<ntr.lp; tp++) { /* distribute hidesets */
+ if (tp->type==NAME) {
+ if (tp->hideset==0)
+ tp->hideset = hs;
+ else
+ tp->hideset = unionhideset(tp->hideset, hs);
+ }
+ }
+ ntr.tp = ntr.bp;
+ insertrow(trp, ntokc, &ntr);
+ trp->tp -= rowlen(&ntr);
+ dofree(ntr.bp);
+ return;
+}
+
+/*
+ * Gather an arglist, starting in trp with tp pointing at the macro name.
+ * Return total number of tokens passed, stash number of args found.
+ * trp->tp is not changed relative to the tokenrow.
+ */
+int
+gatherargs(Tokenrow *trp, Tokenrow **atr, int *narg)
+{
+ int parens = 1;
+ int ntok = 0;
+ Token *bp, *lp;
+ Tokenrow ttr;
+ int ntokp;
+ int needspace;
+
+ *narg = -1; /* means that there is no macro call */
+ /* look for the ( */
+ for (;;) {
+ trp->tp++;
+ ntok++;
+ if (trp->tp >= trp->lp) {
+ gettokens(trp, 0);
+ if ((trp->lp-1)->type==END) {
+ trp->lp -= 1;
+ trp->tp -= ntok;
+ return ntok;
+ }
+ }
+ if (trp->tp->type==LP)
+ break;
+ if (trp->tp->type!=NL)
+ return ntok;
+ }
+ *narg = 0;
+ ntok++;
+ ntokp = ntok;
+ trp->tp++;
+ /* search for the terminating ), possibly extending the row */
+ needspace = 0;
+ while (parens>0) {
+ if (trp->tp >= trp->lp)
+ gettokens(trp, 0);
+ if (needspace) {
+ needspace = 0;
+ makespace(trp);
+ }
+ if (trp->tp->type==END) {
+ trp->lp -= 1;
+ trp->tp -= ntok;
+ error(ERROR, "EOF in macro arglist");
+ return ntok;
+ }
+ if (trp->tp->type==NL) {
+ trp->tp += 1;
+ adjustrow(trp, -1);
+ trp->tp -= 1;
+ makespace(trp);
+ needspace = 1;
+ continue;
+ }
+ if (trp->tp->type==LP)
+ parens++;
+ else if (trp->tp->type==RP)
+ parens--;
+ trp->tp++;
+ ntok++;
+ }
+ trp->tp -= ntok;
+ /* Now trp->tp won't move underneath us */
+ lp = bp = trp->tp+ntokp;
+ for (; parens>=0; lp++) {
+ if (lp->type == LP) {
+ parens++;
+ continue;
+ }
+ if (lp->type==RP)
+ parens--;
+ if (lp->type==DSHARP)
+ lp->type = DSHARP1; /* ## not special in arg */
+ if (lp->type==COMMA && parens==0 || parens<0 && (lp-1)->type!=LP) {
+ if (*narg>=NARG-1)
+ error(FATAL, "Sorry, too many macro arguments");
+ ttr.bp = ttr.tp = bp;
+ ttr.lp = lp;
+ atr[(*narg)++] = normtokenrow(&ttr);
+ bp = lp+1;
+ }
+ }
+ return ntok;
+}
+
+/*
+ * substitute the argument list into the replacement string
+ * This would be simple except for ## and #
+ */
+void
+substargs(Nlist *np, Tokenrow *rtr, Tokenrow **atr)
+{
+ Tokenrow tatr;
+ Token *tp;
+ int ntok, argno;
+
+ for (rtr->tp=rtr->bp; rtr->tp<rtr->lp; ) {
+ if (rtr->tp->type==SHARP) { /* string operator */
+ tp = rtr->tp;
+ rtr->tp += 1;
+ if ((argno = lookuparg(np, rtr->tp))<0) {
+ error(ERROR, "# not followed by macro parameter");
+ continue;
+ }
+ ntok = 1 + (rtr->tp - tp);
+ rtr->tp = tp;
+ insertrow(rtr, ntok, stringify(atr[argno]));
+ continue;
+ }
+ if (rtr->tp->type==NAME
+ && (argno = lookuparg(np, rtr->tp)) >= 0) {
+ if ((rtr->tp+1)->type==DSHARP
+ || rtr->tp!=rtr->bp && (rtr->tp-1)->type==DSHARP)
+ insertrow(rtr, 1, atr[argno]);
+ else {
+ copytokenrow(&tatr, atr[argno]);
+ expandrow(&tatr, "<macro>");
+ insertrow(rtr, 1, &tatr);
+ dofree(tatr.bp);
+ }
+ continue;
+ }
+ rtr->tp++;
+ }
+}
+
+/*
+ * Evaluate the ## operators in a tokenrow
+ */
+void
+doconcat(Tokenrow *trp)
+{
+ Token *ltp, *ntp;
+ Tokenrow ntr;
+ int len;
+
+ for (trp->tp=trp->bp; trp->tp<trp->lp; trp->tp++) {
+ if (trp->tp->type==DSHARP1)
+ trp->tp->type = DSHARP;
+ else if (trp->tp->type==DSHARP) {
+ char tt[128];
+ ltp = trp->tp-1;
+ ntp = trp->tp+1;
+ if (ltp<trp->bp || ntp>=trp->lp) {
+ error(ERROR, "## occurs at border of replacement");
+ continue;
+ }
+ len = ltp->len + ntp->len;
+ strncpy((char*)tt, (char*)ltp->t, ltp->len);
+ strncpy((char*)tt+ltp->len, (char*)ntp->t, ntp->len);
+ tt[len] = '\0';
+ setsource("<##>", -1, tt);
+ maketokenrow(3, &ntr);
+ gettokens(&ntr, 1);
+ unsetsource();
+ if (ntr.lp-ntr.bp!=2 || ntr.bp->type==UNCLASS)
+ error(WARNING, "Bad token %r produced by ##", &ntr);
+ ntr.lp = ntr.bp+1;
+ trp->tp = ltp;
+ makespace(&ntr);
+ insertrow(trp, (ntp-ltp)+1, &ntr);
+ dofree(ntr.bp);
+ trp->tp--;
+ }
+ }
+}
+
+/*
+ * tp is a potential parameter name of macro mac;
+ * look it up in mac's arglist, and if found, return the
+ * corresponding index in the argname array. Return -1 if not found.
+ */
+int
+lookuparg(Nlist *mac, Token *tp)
+{
+ Token *ap;
+
+ if (tp->type!=NAME || mac->ap==NULL)
+ return -1;
+ for (ap=mac->ap->bp; ap<mac->ap->lp; ap++) {
+ if (ap->len==tp->len && strncmp((char*)ap->t,(char*)tp->t,ap->len)==0)
+ return ap - mac->ap->bp;
+ }
+ return -1;
+}
+
+/*
+ * Return a quoted version of the tokenrow (from # arg)
+ */
+#define STRLEN 512
+Tokenrow *
+stringify(Tokenrow *vp)
+{
+ static Token t = { STRING };
+ static Tokenrow tr = { &t, &t, &t+1, 1 };
+ Token *tp;
+ uchar s[STRLEN];
+ uchar *sp = s, *cp;
+ int i, instring;
+
+ *sp++ = '"';
+ for (tp = vp->bp; tp < vp->lp; tp++) {
+ instring = tp->type==STRING || tp->type==CCON;
+ if (sp+2*tp->len >= &s[STRLEN-10]) {
+ error(ERROR, "Stringified macro arg is too long");
+ break;
+ }
+ if (tp->wslen && (tp->flag&XPWS)==0)
+ *sp++ = ' ';
+ for (i=0, cp=tp->t; i<tp->len; i++) {
+ if (instring && (*cp=='"' || *cp=='\\'))
+ *sp++ = '\\';
+ *sp++ = *cp++;
+ }
+ }
+ *sp++ = '"';
+ *sp = '\0';
+ sp = s;
+ t.len = strlen((char*)sp);
+ t.t = newstring(sp, t.len, 0);
+ return &tr;
+}
+
+/*
+ * expand a builtin name
+ */
+void
+builtin(Tokenrow *trp, int biname)
+{
+ char *op;
+ Token *tp;
+ Source *s;
+
+ tp = trp->tp;
+ trp->tp++;
+ /* need to find the real source */
+ s = cursource;
+ while (s && s->fd==-1)
+ s = s->next;
+ if (s==NULL)
+ s = cursource;
+ /* most are strings */
+ tp->type = STRING;
+ if (tp->wslen) {
+ *outp++ = ' ';
+ tp->wslen = 1;
+ }
+ op = outp;
+ *op++ = '"';
+ switch (biname) {
+
+ case KLINENO:
+ tp->type = NUMBER;
+ op = outnum(op-1, s->line);
+ break;
+
+ case KFILE: {
+ char *src = s->filename;
+ while ((*op++ = *src++) != 0)
+ if (src[-1] == '\\')
+ *op++ = '\\';
+ op--;
+ break;
+ }
+
+ case KDATE:
+ strncpy(op, curtime+4, 7);
+ strncpy(op+7, curtime+20, 4);
+ op += 11;
+ break;
+
+ case KTIME:
+ strncpy(op, curtime+11, 8);
+ op += 8;
+ break;
+
+ default:
+ error(ERROR, "cpp botch: unknown internal macro");
+ return;
+ }
+ if (tp->type==STRING)
+ *op++ = '"';
+ tp->t = (uchar*)outp;
+ tp->len = op - outp;
+ outp = op;
+}
diff --git a/lcc/cpp/nlist.c b/lcc/cpp/nlist.c
index c77fff1..33c2db9 100755
--- a/lcc/cpp/nlist.c
+++ b/lcc/cpp/nlist.c
@@ -1,104 +1,104 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "cpp.h"
-
-extern int getopt(int, char *const *, const char *);
-extern char *optarg;
-extern int optind;
-extern int verbose;
-extern int Cplusplus;
-Nlist *kwdefined;
-char wd[128];
-
-#define NLSIZE 128
-
-static Nlist *nlist[NLSIZE];
-
-struct kwtab {
- char *kw;
- int val;
- int flag;
-} kwtab[] = {
- "if", KIF, ISKW,
- "ifdef", KIFDEF, ISKW,
- "ifndef", KIFNDEF, ISKW,
- "elif", KELIF, ISKW,
- "else", KELSE, ISKW,
- "endif", KENDIF, ISKW,
- "include", KINCLUDE, ISKW,
- "define", KDEFINE, ISKW,
- "undef", KUNDEF, ISKW,
- "line", KLINE, ISKW,
- "error", KERROR, ISKW,
- "pragma", KPRAGMA, ISKW,
- "eval", KEVAL, ISKW,
- "defined", KDEFINED, ISDEFINED+ISUNCHANGE,
- "__LINE__", KLINENO, ISMAC+ISUNCHANGE,
- "__FILE__", KFILE, ISMAC+ISUNCHANGE,
- "__DATE__", KDATE, ISMAC+ISUNCHANGE,
- "__TIME__", KTIME, ISMAC+ISUNCHANGE,
- "__STDC__", KSTDC, ISUNCHANGE,
- NULL
-};
-
-unsigned long namebit[077+1];
-Nlist *np;
-
-void
-setup_kwtab(void)
-{
- struct kwtab *kp;
- Nlist *np;
- Token t;
- static Token deftoken[1] = {{ NAME, 0, 0, 0, 7, (uchar*)"defined" }};
- static Tokenrow deftr = { deftoken, deftoken, deftoken+1, 1 };
-
- for (kp=kwtab; kp->kw; kp++) {
- t.t = (uchar*)kp->kw;
- t.len = strlen(kp->kw);
- np = lookup(&t, 1);
- np->flag = kp->flag;
- np->val = kp->val;
- if (np->val == KDEFINED) {
- kwdefined = np;
- np->val = NAME;
- np->vp = &deftr;
- np->ap = 0;
- }
- }
-}
-
-Nlist *
-lookup(Token *tp, int install)
-{
- unsigned int h;
- Nlist *np;
- uchar *cp, *cpe;
-
- h = 0;
- for (cp=tp->t, cpe=cp+tp->len; cp<cpe; )
- h += *cp++;
- h %= NLSIZE;
- np = nlist[h];
- while (np) {
- if (*tp->t==*np->name && tp->len==np->len
- && strncmp((char*)tp->t, (char*)np->name, tp->len)==0)
- return np;
- np = np->next;
- }
- if (install) {
- np = new(Nlist);
- np->vp = NULL;
- np->ap = NULL;
- np->flag = 0;
- np->val = 0;
- np->len = tp->len;
- np->name = newstring(tp->t, tp->len, 0);
- np->next = nlist[h];
- nlist[h] = np;
- quickset(tp->t[0], tp->len>1? tp->t[1]:0);
- return np;
- }
- return NULL;
-}
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "cpp.h"
+
+extern int getopt(int, char *const *, const char *);
+extern char *optarg;
+extern int optind;
+extern int verbose;
+extern int Cplusplus;
+Nlist *kwdefined;
+char wd[128];
+
+#define NLSIZE 128
+
+static Nlist *nlist[NLSIZE];
+
+struct kwtab {
+ char *kw;
+ int val;
+ int flag;
+} kwtab[] = {
+ "if", KIF, ISKW,
+ "ifdef", KIFDEF, ISKW,
+ "ifndef", KIFNDEF, ISKW,
+ "elif", KELIF, ISKW,
+ "else", KELSE, ISKW,
+ "endif", KENDIF, ISKW,
+ "include", KINCLUDE, ISKW,
+ "define", KDEFINE, ISKW,
+ "undef", KUNDEF, ISKW,
+ "line", KLINE, ISKW,
+ "error", KERROR, ISKW,
+ "pragma", KPRAGMA, ISKW,
+ "eval", KEVAL, ISKW,
+ "defined", KDEFINED, ISDEFINED+ISUNCHANGE,
+ "__LINE__", KLINENO, ISMAC+ISUNCHANGE,
+ "__FILE__", KFILE, ISMAC+ISUNCHANGE,
+ "__DATE__", KDATE, ISMAC+ISUNCHANGE,
+ "__TIME__", KTIME, ISMAC+ISUNCHANGE,
+ "__STDC__", KSTDC, ISUNCHANGE,
+ NULL
+};
+
+unsigned long namebit[077+1];
+Nlist *np;
+
+void
+setup_kwtab(void)
+{
+ struct kwtab *kp;
+ Nlist *np;
+ Token t;
+ static Token deftoken[1] = {{ NAME, 0, 0, 0, 7, (uchar*)"defined" }};
+ static Tokenrow deftr = { deftoken, deftoken, deftoken+1, 1 };
+
+ for (kp=kwtab; kp->kw; kp++) {
+ t.t = (uchar*)kp->kw;
+ t.len = strlen(kp->kw);
+ np = lookup(&t, 1);
+ np->flag = kp->flag;
+ np->val = kp->val;
+ if (np->val == KDEFINED) {
+ kwdefined = np;
+ np->val = NAME;
+ np->vp = &deftr;
+ np->ap = 0;
+ }
+ }
+}
+
+Nlist *
+lookup(Token *tp, int install)
+{
+ unsigned int h;
+ Nlist *np;
+ uchar *cp, *cpe;
+
+ h = 0;
+ for (cp=tp->t, cpe=cp+tp->len; cp<cpe; )
+ h += *cp++;
+ h %= NLSIZE;
+ np = nlist[h];
+ while (np) {
+ if (*tp->t==*np->name && tp->len==np->len
+ && strncmp((char*)tp->t, (char*)np->name, tp->len)==0)
+ return np;
+ np = np->next;
+ }
+ if (install) {
+ np = new(Nlist);
+ np->vp = NULL;
+ np->ap = NULL;
+ np->flag = 0;
+ np->val = 0;
+ np->len = tp->len;
+ np->name = newstring(tp->t, tp->len, 0);
+ np->next = nlist[h];
+ nlist[h] = np;
+ quickset(tp->t[0], tp->len>1? tp->t[1]:0);
+ return np;
+ }
+ return NULL;
+}
diff --git a/lcc/cpp/tokens.c b/lcc/cpp/tokens.c
index 701cbcc..ebbd186 100755
--- a/lcc/cpp/tokens.c
+++ b/lcc/cpp/tokens.c
@@ -1,370 +1,370 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "cpp.h"
-
-static char wbuf[2*OBS];
-static char *wbp = wbuf;
-
-/*
- * 1 for tokens that don't need whitespace when they get inserted
- * by macro expansion
- */
-static const char wstab[] = {
- 0, /* END */
- 0, /* UNCLASS */
- 0, /* NAME */
- 0, /* NUMBER */
- 0, /* STRING */
- 0, /* CCON */
- 1, /* NL */
- 0, /* WS */
- 0, /* DSHARP */
- 0, /* EQ */
- 0, /* NEQ */
- 0, /* LEQ */
- 0, /* GEQ */
- 0, /* LSH */
- 0, /* RSH */
- 0, /* LAND */
- 0, /* LOR */
- 0, /* PPLUS */
- 0, /* MMINUS */
- 0, /* ARROW */
- 1, /* SBRA */
- 1, /* SKET */
- 1, /* LP */
- 1, /* RP */
- 0, /* DOT */
- 0, /* AND */
- 0, /* STAR */
- 0, /* PLUS */
- 0, /* MINUS */
- 0, /* TILDE */
- 0, /* NOT */
- 0, /* SLASH */
- 0, /* PCT */
- 0, /* LT */
- 0, /* GT */
- 0, /* CIRC */
- 0, /* OR */
- 0, /* QUEST */
- 0, /* COLON */
- 0, /* ASGN */
- 1, /* COMMA */
- 0, /* SHARP */
- 1, /* SEMIC */
- 1, /* CBRA */
- 1, /* CKET */
- 0, /* ASPLUS */
- 0, /* ASMINUS */
- 0, /* ASSTAR */
- 0, /* ASSLASH */
- 0, /* ASPCT */
- 0, /* ASCIRC */
- 0, /* ASLSH */
- 0, /* ASRSH */
- 0, /* ASOR */
- 0, /* ASAND */
- 0, /* ELLIPS */
- 0, /* DSHARP1 */
- 0, /* NAME1 */
- 0, /* DEFINED */
- 0, /* UMINUS */
-};
-
-void
-maketokenrow(int size, Tokenrow *trp)
-{
- trp->max = size;
- if (size>0)
- trp->bp = (Token *)domalloc(size*sizeof(Token));
- else
- trp->bp = NULL;
- trp->tp = trp->bp;
- trp->lp = trp->bp;
-}
-
-Token *
-growtokenrow(Tokenrow *trp)
-{
- int ncur = trp->tp - trp->bp;
- int nlast = trp->lp - trp->bp;
-
- trp->max = 3*trp->max/2 + 1;
- trp->bp = (Token *)realloc(trp->bp, trp->max*sizeof(Token));
- if (trp->bp == NULL)
- error(FATAL, "Out of memory from realloc");
- trp->lp = &trp->bp[nlast];
- trp->tp = &trp->bp[ncur];
- return trp->lp;
-}
-
-/*
- * Compare a row of tokens, ignoring the content of WS; return !=0 if different
- */
-int
-comparetokens(Tokenrow *tr1, Tokenrow *tr2)
-{
- Token *tp1, *tp2;
-
- tp1 = tr1->tp;
- tp2 = tr2->tp;
- if (tr1->lp-tp1 != tr2->lp-tp2)
- return 1;
- for (; tp1<tr1->lp ; tp1++, tp2++) {
- if (tp1->type != tp2->type
- || (tp1->wslen==0) != (tp2->wslen==0)
- || tp1->len != tp2->len
- || strncmp((char*)tp1->t, (char*)tp2->t, tp1->len)!=0)
- return 1;
- }
- return 0;
-}
-
-/*
- * replace ntok tokens starting at dtr->tp with the contents of str.
- * tp ends up pointing just beyond the replacement.
- * Canonical whitespace is assured on each side.
- */
-void
-insertrow(Tokenrow *dtr, int ntok, Tokenrow *str)
-{
- int nrtok = rowlen(str);
-
- dtr->tp += ntok;
- adjustrow(dtr, nrtok-ntok);
- dtr->tp -= ntok;
- movetokenrow(dtr, str);
- makespace(dtr);
- dtr->tp += nrtok;
- makespace(dtr);
-}
-
-/*
- * make sure there is WS before trp->tp, if tokens might merge in the output
- */
-void
-makespace(Tokenrow *trp)
-{
- uchar *tt;
- Token *tp = trp->tp;
-
- if (tp >= trp->lp)
- return;
- if (tp->wslen) {
- if (tp->flag&XPWS
- && (wstab[tp->type] || trp->tp>trp->bp && wstab[(tp-1)->type])) {
- tp->wslen = 0;
- return;
- }
- tp->t[-1] = ' ';
- return;
- }
- if (wstab[tp->type] || trp->tp>trp->bp && wstab[(tp-1)->type])
- return;
- tt = newstring(tp->t, tp->len, 1);
- *tt++ = ' ';
- tp->t = tt;
- tp->wslen = 1;
- tp->flag |= XPWS;
-}
-
-/*
- * Copy an entire tokenrow into another, at tp.
- * It is assumed that there is enough space.
- * Not strictly conforming.
- */
-void
-movetokenrow(Tokenrow *dtr, Tokenrow *str)
-{
- int nby;
-
- /* nby = sizeof(Token) * (str->lp - str->bp); */
- nby = (char *)str->lp - (char *)str->bp;
- memmove(dtr->tp, str->bp, nby);
-}
-
-/*
- * Move the tokens in a row, starting at tr->tp, rightward by nt tokens;
- * nt may be negative (left move).
- * The row may need to be grown.
- * Non-strictly conforming because of the (char *), but easily fixed
- */
-void
-adjustrow(Tokenrow *trp, int nt)
-{
- int nby, size;
-
- if (nt==0)
- return;
- size = (trp->lp - trp->bp) + nt;
- while (size > trp->max)
- growtokenrow(trp);
- /* nby = sizeof(Token) * (trp->lp - trp->tp); */
- nby = (char *)trp->lp - (char *)trp->tp;
- if (nby)
- memmove(trp->tp+nt, trp->tp, nby);
- trp->lp += nt;
-}
-
-/*
- * Copy a row of tokens into the destination holder, allocating
- * the space for the contents. Return the destination.
- */
-Tokenrow *
-copytokenrow(Tokenrow *dtr, Tokenrow *str)
-{
- int len = rowlen(str);
-
- maketokenrow(len, dtr);
- movetokenrow(dtr, str);
- dtr->lp += len;
- return dtr;
-}
-
-/*
- * Produce a copy of a row of tokens. Start at trp->tp.
- * The value strings are copied as well. The first token
- * has WS available.
- */
-Tokenrow *
-normtokenrow(Tokenrow *trp)
-{
- Token *tp;
- Tokenrow *ntrp = new(Tokenrow);
- int len;
-
- len = trp->lp - trp->tp;
- if (len<=0)
- len = 1;
- maketokenrow(len, ntrp);
- for (tp=trp->tp; tp < trp->lp; tp++) {
- *ntrp->lp = *tp;
- if (tp->len) {
- ntrp->lp->t = newstring(tp->t, tp->len, 1);
- *ntrp->lp->t++ = ' ';
- if (tp->wslen)
- ntrp->lp->wslen = 1;
- }
- ntrp->lp++;
- }
- if (ntrp->lp > ntrp->bp)
- ntrp->bp->wslen = 0;
- return ntrp;
-}
-
-/*
- * Debugging
- */
-void
-peektokens(Tokenrow *trp, char *str)
-{
- Token *tp;
-
- tp = trp->tp;
- flushout();
- if (str)
- fprintf(stderr, "%s ", str);
- if (tp<trp->bp || tp>trp->lp)
- fprintf(stderr, "(tp offset %d) ", tp-trp->bp);
- for (tp=trp->bp; tp<trp->lp && tp<trp->bp+32; tp++) {
- if (tp->type!=NL) {
- int c = tp->t[tp->len];
- tp->t[tp->len] = 0;
- fprintf(stderr, "%s", tp->t);
- tp->t[tp->len] = c;
- }
- if (tp->type==NAME) {
- fprintf(stderr, tp==trp->tp?"{*":"{");
- prhideset(tp->hideset);
- fprintf(stderr, "} ");
- } else
- fprintf(stderr, tp==trp->tp?"{%x*} ":"{%x} ", tp->type);
- }
- fprintf(stderr, "\n");
- fflush(stderr);
-}
-
-void
-puttokens(Tokenrow *trp)
-{
- Token *tp;
- int len;
- uchar *p;
-
- if (verbose)
- peektokens(trp, "");
- tp = trp->bp;
- for (; tp<trp->lp; tp++) {
- len = tp->len+tp->wslen;
- p = tp->t-tp->wslen;
- while (tp<trp->lp-1 && p+len == (tp+1)->t - (tp+1)->wslen) {
- tp++;
- len += tp->wslen+tp->len;
- }
- if (len>OBS/2) { /* handle giant token */
- if (wbp > wbuf)
- write(1, wbuf, wbp-wbuf);
- write(1, (char *)p, len);
- wbp = wbuf;
- } else {
- memcpy(wbp, p, len);
- wbp += len;
- }
- if (wbp >= &wbuf[OBS]) {
- write(1, wbuf, OBS);
- if (wbp > &wbuf[OBS])
- memcpy(wbuf, wbuf+OBS, wbp - &wbuf[OBS]);
- wbp -= OBS;
- }
- }
- trp->tp = tp;
- if (cursource->fd==0)
- flushout();
-}
-
-void
-flushout(void)
-{
- if (wbp>wbuf) {
- write(1, wbuf, wbp-wbuf);
- wbp = wbuf;
- }
-}
-
-/*
- * turn a row into just a newline
- */
-void
-setempty(Tokenrow *trp)
-{
- trp->tp = trp->bp;
- trp->lp = trp->bp+1;
- *trp->bp = nltoken;
-}
-
-/*
- * generate a number
- */
-char *
-outnum(char *p, int n)
-{
- if (n>=10)
- p = outnum(p, n/10);
- *p++ = n%10 + '0';
- return p;
-}
-
-/*
- * allocate and initialize a new string from s, of length l, at offset o
- * Null terminated.
- */
-uchar *
-newstring(uchar *s, int l, int o)
-{
- uchar *ns = (uchar *)domalloc(l+o+1);
-
- ns[l+o] = '\0';
- return (uchar*)strncpy((char*)ns+o, (char*)s, l) - o;
-}
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "cpp.h"
+
+static char wbuf[2*OBS];
+static char *wbp = wbuf;
+
+/*
+ * 1 for tokens that don't need whitespace when they get inserted
+ * by macro expansion
+ */
+static const char wstab[] = {
+ 0, /* END */
+ 0, /* UNCLASS */
+ 0, /* NAME */
+ 0, /* NUMBER */
+ 0, /* STRING */
+ 0, /* CCON */
+ 1, /* NL */
+ 0, /* WS */
+ 0, /* DSHARP */
+ 0, /* EQ */
+ 0, /* NEQ */
+ 0, /* LEQ */
+ 0, /* GEQ */
+ 0, /* LSH */
+ 0, /* RSH */
+ 0, /* LAND */
+ 0, /* LOR */
+ 0, /* PPLUS */
+ 0, /* MMINUS */
+ 0, /* ARROW */
+ 1, /* SBRA */
+ 1, /* SKET */
+ 1, /* LP */
+ 1, /* RP */
+ 0, /* DOT */
+ 0, /* AND */
+ 0, /* STAR */
+ 0, /* PLUS */
+ 0, /* MINUS */
+ 0, /* TILDE */
+ 0, /* NOT */
+ 0, /* SLASH */
+ 0, /* PCT */
+ 0, /* LT */
+ 0, /* GT */
+ 0, /* CIRC */
+ 0, /* OR */
+ 0, /* QUEST */
+ 0, /* COLON */
+ 0, /* ASGN */
+ 1, /* COMMA */
+ 0, /* SHARP */
+ 1, /* SEMIC */
+ 1, /* CBRA */
+ 1, /* CKET */
+ 0, /* ASPLUS */
+ 0, /* ASMINUS */
+ 0, /* ASSTAR */
+ 0, /* ASSLASH */
+ 0, /* ASPCT */
+ 0, /* ASCIRC */
+ 0, /* ASLSH */
+ 0, /* ASRSH */
+ 0, /* ASOR */
+ 0, /* ASAND */
+ 0, /* ELLIPS */
+ 0, /* DSHARP1 */
+ 0, /* NAME1 */
+ 0, /* DEFINED */
+ 0, /* UMINUS */
+};
+
+void
+maketokenrow(int size, Tokenrow *trp)
+{
+ trp->max = size;
+ if (size>0)
+ trp->bp = (Token *)domalloc(size*sizeof(Token));
+ else
+ trp->bp = NULL;
+ trp->tp = trp->bp;
+ trp->lp = trp->bp;
+}
+
+Token *
+growtokenrow(Tokenrow *trp)
+{
+ int ncur = trp->tp - trp->bp;
+ int nlast = trp->lp - trp->bp;
+
+ trp->max = 3*trp->max/2 + 1;
+ trp->bp = (Token *)realloc(trp->bp, trp->max*sizeof(Token));
+ if (trp->bp == NULL)
+ error(FATAL, "Out of memory from realloc");
+ trp->lp = &trp->bp[nlast];
+ trp->tp = &trp->bp[ncur];
+ return trp->lp;
+}
+
+/*
+ * Compare a row of tokens, ignoring the content of WS; return !=0 if different
+ */
+int
+comparetokens(Tokenrow *tr1, Tokenrow *tr2)
+{
+ Token *tp1, *tp2;
+
+ tp1 = tr1->tp;
+ tp2 = tr2->tp;
+ if (tr1->lp-tp1 != tr2->lp-tp2)
+ return 1;
+ for (; tp1<tr1->lp ; tp1++, tp2++) {
+ if (tp1->type != tp2->type
+ || (tp1->wslen==0) != (tp2->wslen==0)
+ || tp1->len != tp2->len
+ || strncmp((char*)tp1->t, (char*)tp2->t, tp1->len)!=0)
+ return 1;
+ }
+ return 0;
+}
+
+/*
+ * replace ntok tokens starting at dtr->tp with the contents of str.
+ * tp ends up pointing just beyond the replacement.
+ * Canonical whitespace is assured on each side.
+ */
+void
+insertrow(Tokenrow *dtr, int ntok, Tokenrow *str)
+{
+ int nrtok = rowlen(str);
+
+ dtr->tp += ntok;
+ adjustrow(dtr, nrtok-ntok);
+ dtr->tp -= ntok;
+ movetokenrow(dtr, str);
+ makespace(dtr);
+ dtr->tp += nrtok;
+ makespace(dtr);
+}
+
+/*
+ * make sure there is WS before trp->tp, if tokens might merge in the output
+ */
+void
+makespace(Tokenrow *trp)
+{
+ uchar *tt;
+ Token *tp = trp->tp;
+
+ if (tp >= trp->lp)
+ return;
+ if (tp->wslen) {
+ if (tp->flag&XPWS
+ && (wstab[tp->type] || trp->tp>trp->bp && wstab[(tp-1)->type])) {
+ tp->wslen = 0;
+ return;
+ }
+ tp->t[-1] = ' ';
+ return;
+ }
+ if (wstab[tp->type] || trp->tp>trp->bp && wstab[(tp-1)->type])
+ return;
+ tt = newstring(tp->t, tp->len, 1);
+ *tt++ = ' ';
+ tp->t = tt;
+ tp->wslen = 1;
+ tp->flag |= XPWS;
+}
+
+/*
+ * Copy an entire tokenrow into another, at tp.
+ * It is assumed that there is enough space.
+ * Not strictly conforming.
+ */
+void
+movetokenrow(Tokenrow *dtr, Tokenrow *str)
+{
+ int nby;
+
+ /* nby = sizeof(Token) * (str->lp - str->bp); */
+ nby = (char *)str->lp - (char *)str->bp;
+ memmove(dtr->tp, str->bp, nby);
+}
+
+/*
+ * Move the tokens in a row, starting at tr->tp, rightward by nt tokens;
+ * nt may be negative (left move).
+ * The row may need to be grown.
+ * Non-strictly conforming because of the (char *), but easily fixed
+ */
+void
+adjustrow(Tokenrow *trp, int nt)
+{
+ int nby, size;
+
+ if (nt==0)
+ return;
+ size = (trp->lp - trp->bp) + nt;
+ while (size > trp->max)
+ growtokenrow(trp);
+ /* nby = sizeof(Token) * (trp->lp - trp->tp); */
+ nby = (char *)trp->lp - (char *)trp->tp;
+ if (nby)
+ memmove(trp->tp+nt, trp->tp, nby);
+ trp->lp += nt;
+}
+
+/*
+ * Copy a row of tokens into the destination holder, allocating
+ * the space for the contents. Return the destination.
+ */
+Tokenrow *
+copytokenrow(Tokenrow *dtr, Tokenrow *str)
+{
+ int len = rowlen(str);
+
+ maketokenrow(len, dtr);
+ movetokenrow(dtr, str);
+ dtr->lp += len;
+ return dtr;
+}
+
+/*
+ * Produce a copy of a row of tokens. Start at trp->tp.
+ * The value strings are copied as well. The first token
+ * has WS available.
+ */
+Tokenrow *
+normtokenrow(Tokenrow *trp)
+{
+ Token *tp;
+ Tokenrow *ntrp = new(Tokenrow);
+ int len;
+
+ len = trp->lp - trp->tp;
+ if (len<=0)
+ len = 1;
+ maketokenrow(len, ntrp);
+ for (tp=trp->tp; tp < trp->lp; tp++) {
+ *ntrp->lp = *tp;
+ if (tp->len) {
+ ntrp->lp->t = newstring(tp->t, tp->len, 1);
+ *ntrp->lp->t++ = ' ';
+ if (tp->wslen)
+ ntrp->lp->wslen = 1;
+ }
+ ntrp->lp++;
+ }
+ if (ntrp->lp > ntrp->bp)
+ ntrp->bp->wslen = 0;
+ return ntrp;
+}
+
+/*
+ * Debugging
+ */
+void
+peektokens(Tokenrow *trp, char *str)
+{
+ Token *tp;
+
+ tp = trp->tp;
+ flushout();
+ if (str)
+ fprintf(stderr, "%s ", str);
+ if (tp<trp->bp || tp>trp->lp)
+ fprintf(stderr, "(tp offset %d) ", tp-trp->bp);
+ for (tp=trp->bp; tp<trp->lp && tp<trp->bp+32; tp++) {
+ if (tp->type!=NL) {
+ int c = tp->t[tp->len];
+ tp->t[tp->len] = 0;
+ fprintf(stderr, "%s", tp->t);
+ tp->t[tp->len] = c;
+ }
+ if (tp->type==NAME) {
+ fprintf(stderr, tp==trp->tp?"{*":"{");
+ prhideset(tp->hideset);
+ fprintf(stderr, "} ");
+ } else
+ fprintf(stderr, tp==trp->tp?"{%x*} ":"{%x} ", tp->type);
+ }
+ fprintf(stderr, "\n");
+ fflush(stderr);
+}
+
+void
+puttokens(Tokenrow *trp)
+{
+ Token *tp;
+ int len;
+ uchar *p;
+
+ if (verbose)
+ peektokens(trp, "");
+ tp = trp->bp;
+ for (; tp<trp->lp; tp++) {
+ len = tp->len+tp->wslen;
+ p = tp->t-tp->wslen;
+ while (tp<trp->lp-1 && p+len == (tp+1)->t - (tp+1)->wslen) {
+ tp++;
+ len += tp->wslen+tp->len;
+ }
+ if (len>OBS/2) { /* handle giant token */
+ if (wbp > wbuf)
+ write(1, wbuf, wbp-wbuf);
+ write(1, (char *)p, len);
+ wbp = wbuf;
+ } else {
+ memcpy(wbp, p, len);
+ wbp += len;
+ }
+ if (wbp >= &wbuf[OBS]) {
+ write(1, wbuf, OBS);
+ if (wbp > &wbuf[OBS])
+ memcpy(wbuf, wbuf+OBS, wbp - &wbuf[OBS]);
+ wbp -= OBS;
+ }
+ }
+ trp->tp = tp;
+ if (cursource->fd==0)
+ flushout();
+}
+
+void
+flushout(void)
+{
+ if (wbp>wbuf) {
+ write(1, wbuf, wbp-wbuf);
+ wbp = wbuf;
+ }
+}
+
+/*
+ * turn a row into just a newline
+ */
+void
+setempty(Tokenrow *trp)
+{
+ trp->tp = trp->bp;
+ trp->lp = trp->bp+1;
+ *trp->bp = nltoken;
+}
+
+/*
+ * generate a number
+ */
+char *
+outnum(char *p, int n)
+{
+ if (n>=10)
+ p = outnum(p, n/10);
+ *p++ = n%10 + '0';
+ return p;
+}
+
+/*
+ * allocate and initialize a new string from s, of length l, at offset o
+ * Null terminated.
+ */
+uchar *
+newstring(uchar *s, int l, int o)
+{
+ uchar *ns = (uchar *)domalloc(l+o+1);
+
+ ns[l+o] = '\0';
+ return (uchar*)strncpy((char*)ns+o, (char*)s, l) - o;
+}
diff --git a/lcc/cpp/unix.c b/lcc/cpp/unix.c
index 332ab0c..a845a60 100755
--- a/lcc/cpp/unix.c
+++ b/lcc/cpp/unix.c
@@ -1,116 +1,116 @@
-#include <stdio.h>
-#include <stddef.h>
-#include <stdlib.h>
-#include <string.h>
-#include "cpp.h"
-
-extern int getopt(int, char *const *, const char *);
-extern char *optarg, rcsid[];
-extern int optind;
-int verbose;
-int Mflag; /* only print active include files */
-char *objname; /* "src.$O: " */
-int Cplusplus = 1;
-
-void
-setup(int argc, char **argv)
-{
- int c, fd, i;
- char *fp, *dp;
- Tokenrow tr;
- extern void setup_kwtab(void);
-
- setup_kwtab();
- while ((c = getopt(argc, argv, "MNOVv+I:D:U:F:lg")) != -1)
- switch (c) {
- case 'N':
- for (i=0; i<NINCLUDE; i++)
- if (includelist[i].always==1)
- includelist[i].deleted = 1;
- break;
- case 'I':
- for (i=NINCLUDE-2; i>=0; i--) {
- if (includelist[i].file==NULL) {
- includelist[i].always = 1;
- includelist[i].file = optarg;
- break;
- }
- }
- if (i<0)
- error(FATAL, "Too many -I directives");
- break;
- case 'D':
- case 'U':
- setsource("<cmdarg>", -1, optarg);
- maketokenrow(3, &tr);
- gettokens(&tr, 1);
- doadefine(&tr, c);
- unsetsource();
- break;
- case 'M':
- Mflag++;
- break;
- case 'v':
- fprintf(stderr, "%s %s\n", argv[0], rcsid);
- break;
- case 'V':
- verbose++;
- break;
- case '+':
- Cplusplus++;
- break;
- default:
- break;
- }
- dp = ".";
- fp = "<stdin>";
- fd = 0;
- if (optind<argc) {
- if ((fp = strrchr(argv[optind], '/')) != NULL) {
- int len = fp - argv[optind];
- dp = (char*)newstring((uchar*)argv[optind], len+1, 0);
- dp[len] = '\0';
- }
- fp = (char*)newstring((uchar*)argv[optind], strlen(argv[optind]), 0);
- if ((fd = open(fp, 0)) <= 0)
- error(FATAL, "Can't open input file %s", fp);
- }
- if (optind+1<argc) {
- int fdo = creat(argv[optind+1], 0666);
- if (fdo<0)
- error(FATAL, "Can't open output file %s", argv[optind+1]);
- dup2(fdo, 1);
- }
- if(Mflag)
- setobjname(fp);
- includelist[NINCLUDE-1].always = 0;
- includelist[NINCLUDE-1].file = dp;
- setsource(fp, fd, NULL);
-}
-
-
-
-/* memmove is defined here because some vendors don't provide it at
- all and others do a terrible job (like calling malloc) */
-void *
-memmove(void *dp, const void *sp, size_t n)
-{
- unsigned char *cdp, *csp;
-
- if (n<=0)
- return 0;
- cdp = dp;
- csp = (unsigned char *)sp;
- if (cdp < csp) {
- do {
- *cdp++ = *csp++;
- } while (--n);
- } else {
- cdp += n;
- csp += n;
- do {
- *--cdp = *--csp;
- } while (--n);
- }
- return 0;
-}
+#include <stdio.h>
+#include <stddef.h>
+#include <stdlib.h>
+#include <string.h>
+#include "cpp.h"
+
+extern int getopt(int, char *const *, const char *);
+extern char *optarg, rcsid[];
+extern int optind;
+int verbose;
+int Mflag; /* only print active include files */
+char *objname; /* "src.$O: " */
+int Cplusplus = 1;
+
+void
+setup(int argc, char **argv)
+{
+ int c, fd, i;
+ char *fp, *dp;
+ Tokenrow tr;
+ extern void setup_kwtab(void);
+
+ setup_kwtab();
+ while ((c = getopt(argc, argv, "MNOVv+I:D:U:F:lg")) != -1)
+ switch (c) {
+ case 'N':
+ for (i=0; i<NINCLUDE; i++)
+ if (includelist[i].always==1)
+ includelist[i].deleted = 1;
+ break;
+ case 'I':
+ for (i=NINCLUDE-2; i>=0; i--) {
+ if (includelist[i].file==NULL) {
+ includelist[i].always = 1;
+ includelist[i].file = optarg;
+ break;
+ }
+ }
+ if (i<0)
+ error(FATAL, "Too many -I directives");
+ break;
+ case 'D':
+ case 'U':
+ setsource("<cmdarg>", -1, optarg);
+ maketokenrow(3, &tr);
+ gettokens(&tr, 1);
+ doadefine(&tr, c);
+ unsetsource();
+ break;
+ case 'M':
+ Mflag++;
+ break;
+ case 'v':
+ fprintf(stderr, "%s %s\n", argv[0], rcsid);
+ break;
+ case 'V':
+ verbose++;
+ break;
+ case '+':
+ Cplusplus++;
+ break;
+ default:
+ break;
+ }
+ dp = ".";
+ fp = "<stdin>";
+ fd = 0;
+ if (optind<argc) {
+ if ((fp = strrchr(argv[optind], '/')) != NULL) {
+ int len = fp - argv[optind];
+ dp = (char*)newstring((uchar*)argv[optind], len+1, 0);
+ dp[len] = '\0';
+ }
+ fp = (char*)newstring((uchar*)argv[optind], strlen(argv[optind]), 0);
+ if ((fd = open(fp, 0)) <= 0)
+ error(FATAL, "Can't open input file %s", fp);
+ }
+ if (optind+1<argc) {
+ int fdo = creat(argv[optind+1], 0666);
+ if (fdo<0)
+ error(FATAL, "Can't open output file %s", argv[optind+1]);
+ dup2(fdo, 1);
+ }
+ if(Mflag)
+ setobjname(fp);
+ includelist[NINCLUDE-1].always = 0;
+ includelist[NINCLUDE-1].file = dp;
+ setsource(fp, fd, NULL);
+}
+
+
+
+/* memmove is defined here because some vendors don't provide it at
+ all and others do a terrible job (like calling malloc) */
+void *
+memmove(void *dp, const void *sp, size_t n)
+{
+ unsigned char *cdp, *csp;
+
+ if (n<=0)
+ return 0;
+ cdp = dp;
+ csp = (unsigned char *)sp;
+ if (cdp < csp) {
+ do {
+ *cdp++ = *csp++;
+ } while (--n);
+ } else {
+ cdp += n;
+ csp += n;
+ do {
+ *--cdp = *--csp;
+ } while (--n);
+ }
+ return 0;
+}
diff --git a/lcc/custom.mk b/lcc/custom.mk
index 2f32731..f655c03 100755
--- a/lcc/custom.mk
+++ b/lcc/custom.mk
@@ -1 +1 @@
-BUILDDIR=/tmp
+BUILDDIR=/tmp
diff --git a/lcc/doc/4.html b/lcc/doc/4.html
index 0158d8b..a2e1213 100755
--- a/lcc/doc/4.html
+++ b/lcc/doc/4.html
@@ -1,754 +1,754 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-
-<head>
-<link HREF="mailto:drh@microsoft.com" REV="made" TITLE="David R. Hanson">
-<title>The lcc 4.1 Code-Generation Interface</title>
-</head>
-
-<body>
-
-<h1>The lcc 4.1 Code-Generation Interface</h1>
-
-<p ALIGN="LEFT"><strong><a HREF="http://www.research.microsoft.com/~cwfraser/">Christopher
-W. Fraser</a> and <a HREF="http://www.research.microsoft.com/~drh/">David R. Hanson</a>, <a
-HREF="http://www.research.microsoft.com/">Microsoft Research</a></strong></p>
-
-<h2>Contents</h2>
-
-<dir>
- <li><a HREF="#intro">Introduction</a> </li>
- <li><a HREF="#metrics">5.1 Type Metrics</a></li>
- <li><a HREF="#symbols">5.3 Symbols</a> </li>
- <li><a HREF="#operators">5.5 Dag Operators</a></li>
- <li><a HREF="#flags">5.6 Interface Flags</a></li>
- <li><a HREF="#definitions">5.8 Definitions</a></li>
- <li><a HREF="#constants">5.9 Constants</a></li>
- <li><a HREF="#upcalls">5.12 Upcalls</a></li>
-</dir>
-
-<h2><a NAME="intro">Introduction</a></h2>
-
-<p>Version 4.1 is the latest release of <a
-HREF="http://www.cs.princeton.edu/software/lcc/">lcc</a>, the ANSI C compiler described in
-our book <cite>A Retargetable C Compiler: Design and Implementation</cite>
-(Addison-Wesley, 1995, ISBN 0-8053-1670-1). This document summarizes the differences
-between the 4.1 code-generation interface and the 3.x interface described in Chap. 5 of <cite>A
-Retargetable C Compiler</cite>.</p>
-
-<p>Previous versions of lcc supported only three sizes of integers, two sizes of floats,
-and insisted that pointers fit in unsigned integers (see Sec. 5.1 of <cite>A Retargetable
-C Compiler</cite>). These assumptions simplified the compiler, and were suitable for
-32-bit architectures. But on 64-bit architectures, such as the DEC ALPHA, it's natural to
-have four sizes of integers and perhaps three sizes of floats, and on 16-bit
-architectures, 32-bit pointers don't fit in unsigned integers. Also, the 3.x constaints
-limited the use of lcc's back ends for other languages, such as Java.</p>
-
-<p>Version 4.x removes all of these restrictions: It supports any number of sizes for
-integers and floats, and the size of pointers need not be related to the size of any of
-the integer types. The major changes in the code-generation interface are:
-
-<ul>
- <li>The number of type suffixes has been reduced to 6.</li>
- <li>Dag operators are composed of a generic operator, a type suffix, and a size.</li>
- <li>Unsigned variants of several operators have been added.</li>
- <li>Several interface functions have new signatures.</li>
-</ul>
-
-<p>In addition, version 4.x is written in ANSI C and uses the standard I/O library and
-other standard C functions.</p>
-
-<p>The sections below parallel the subsections of Chap. 5 of <cite>A Retargetable C
-Compiler</cite> and summarize the differences between the 3.x and 4.x code-generation
-interface. Unaffected subsections are omitted. Page citations refer to pages in <cite>A
-Retargetable C Compiler</cite>.</p>
-
-<h2><a NAME="metrics">5.1 Type Metrics</a></h2>
-
-<p>There are now 10 metrics in an interface record:</p>
-
-<pre>Metrics charmetric;
-Metrics shortmetric;
-Metrics intmetric;
-Metrics longmetric;
-Metrics longlongmetric;
-Metrics floatmetric;
-Metrics doublemetric;
-Metrics longdoublemetric;
-Metrics ptrmetric;
-Metrics structmetric;</pre>
-
-<p>Each of these specifies the size and alignment of the corresponding type. <code>ptrmetric</code>
-describes all pointers.</p>
-
-<h2><a NAME="symbols">5.3 Symbols</a></h2>
-
-<p>The actual value of a constant is stored in the <code>u.c.v</code> field of a symbol,
-which holds a <code>Value</code>:</p>
-
-<pre>typedef union value {
- long i;
- unsigned long u;
- long double d;
- void *p;
- void (*g)(void);
-} Value;</pre>
-
-<p>The value is stored in the appropriate field according to its type, which is given by
-the symbol's <code>type</code> field.</p>
-
-<h2><a NAME="operators">5.5 Dag Operators</a></h2>
-
-<p>The <code>op</code> field a of <code>node</code> structure holds a dag operator, which
-consists of a generic operator, a type suffix, and a size indicator. The type suffixes
-are:</p>
-
-<pre>enum {
- F=FLOAT,
- I=INT,
- U=UNSIGNED,
- P=POINTER,
- V=VOID,
- B=STRUCT
-};
-
-#define sizeop(n) ((n)&lt;&lt;10)</pre>
-
-<p>Given a generic operator <code>o</code>, a type suffix <code>t</code>, and a size <code>s</code>,
-a type- and size-specific operator is formed by <code>o+t+sizeop(s)</code>. For example, <code>ADD+F+sizeop(4)</code>
-forms the operator <code>ADDF4</code>, which denotes the sum of two 4-byte floats.
-Similarly, <code>ADD+F+sizeop(8)</code> forms <code>ADDF8</code>, which denotes 8-byte
-floating addition. In the 3.x code-generation interface, <code>ADDF</code> and <code>ADDD</code>
-denoted these operations. There was no size indicator in the 3.x operators because the
-type suffix supplied both a type and a size.</p>
-
-<p>Table 5.1 lists each generic operator, its valid type suffixes, and the number of <code>kids</code>
-and <code>syms</code> that it uses; multiple values for <code>kids</code> indicate
-type-specific variants. The notations in the <strong>syms</strong> column give the number
-of <code>syms</code> values and a one-letter code that suggests their uses: 1V indicates
-that <code>syms[0]</code> points to a symbol for a variable, 1C indicates that <code>syms[0]</code>
-is a constant, and 1L indicates that <code>syms[0]</code> is a label. For 1S, <code>syms[0]</code>
-is a constant whose value is a size in bytes; 2S adds <code>syms[1]</code>, which is a
-constant whose value is an alignment. For most operators, the type suffix and size
-indicator denote the type and size of operation to perform and the type and size of the
-result.</p>
-
-<table WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0">
- <tr>
- <td COLSPAN="6" ALIGN="CENTER"><strong>Table 5.1<img SRC="/~drh/resources/dot_clear.gif"
- ALT="|" WIDTH="18" HEIGHT="1">Node Operators.</strong></td>
- </tr>
- <tr>
- <td><strong>syms</strong></td>
- <td><strong>kids</strong></td>
- <td><strong>Operator</strong></td>
- <td><strong>Type Suffixes</strong></td>
- <td><strong>Sizes</strong></td>
- <td><strong>Operation</strong></td>
- </tr>
- <tr>
- <td>1V</td>
- <td>0</td>
- <td><code>ADDRF</code></td>
- <td><code>...P..</code></td>
- <td>p</td>
- <td>address of a parameter</td>
- </tr>
- <tr>
- <td>1V</td>
- <td>0</td>
- <td><code>ADDRG</code></td>
- <td><code>...P..</code></td>
- <td>p</td>
- <td>address of a global</td>
- </tr>
- <tr>
- <td>1V</td>
- <td>0</td>
- <td><code>ADDRL</code></td>
- <td><code>...P..</code></td>
- <td>p</td>
- <td>address of a local</td>
- </tr>
- <tr>
- <td>1C</td>
- <td>0</td>
- <td><code>CNST</code></td>
- <td><code>FIUP..</code></td>
- <td>fdx csilh p</td>
- <td>constant</td>
- </tr>
- <tr ALIGN="LEFT" VALIGN="TOP">
- <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="1" HEIGHT="12"></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- </tr>
- <tr>
- <td></td>
- <td>1</td>
- <td><code>BCOM</code></td>
- <td><code>.IU...</code></td>
- <td>ilh</td>
- <td>bitwise complement</td>
- </tr>
- <tr>
- <td>1S</td>
- <td>1</td>
- <td><code>CVF</code></td>
- <td><code>FI....</code></td>
- <td>fdx ilh</td>
- <td>convert from float</td>
- </tr>
- <tr>
- <td>1S</td>
- <td>1</td>
- <td><code>CVI</code></td>
- <td><code>FIU...</code></td>
- <td>fdx csilh csilhp</td>
- <td>convert from signed integer</td>
- </tr>
- <tr>
- <td>1S</td>
- <td>1</td>
- <td><code>CVP</code></td>
- <td><code>..U..</code></td>
- <td>p</td>
- <td>convert from pointer</td>
- </tr>
- <tr>
- <td>1S</td>
- <td>1</td>
- <td><code>CVU</code></td>
- <td><code>.IUP..</code></td>
- <td>csilh p</td>
- <td>convert from unsigned integer</td>
- </tr>
- <tr>
- <td></td>
- <td>1</td>
- <td><code>INDIR</code></td>
- <td><code>FIUP.B</code></td>
- <td>fdx csilh p</td>
- <td>fetch</td>
- </tr>
- <tr>
- <td></td>
- <td>1</td>
- <td><code>NEG</code></td>
- <td><code>FI....</code></td>
- <td>fdx ilh</td>
- <td>negation</td>
- </tr>
- <tr>
- <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="1" HEIGHT="12"></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>ADD</code></td>
- <td><code>FIUP..</code></td>
- <td>fdx ilh ilhp p</td>
- <td>addition</td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>BAND</code></td>
- <td><code>.IU...</code></td>
- <td>ilh</td>
- <td>bitwise AND</td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>BOR</code></td>
- <td><code>.IU...</code></td>
- <td>ilh</td>
- <td>bitwise inclusive OR</td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>BXOR</code></td>
- <td><code>.IU...</code></td>
- <td>ilh</td>
- <td>bitwise exclusive OR</td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>DIV</code></td>
- <td><code>FIU...</code></td>
- <td>fdx ilh</td>
- <td>division</td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>LSH</code></td>
- <td><code>.IU...</code></td>
- <td>ilh</td>
- <td>left shift</td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>MOD</code></td>
- <td><code>.IU...</code></td>
- <td>ilh</td>
- <td>modulus</td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>MUL</code></td>
- <td><code>FIU...</code></td>
- <td>fdx ilh</td>
- <td>multiplication</td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>RSH</code></td>
- <td><code>.IU...</code></td>
- <td>ilh</td>
- <td>right shift</td>
- </tr>
- <tr>
- <td></td>
- <td>2</td>
- <td><code>SUB</code></td>
- <td><code>FIUP..</code></td>
- <td>fdx ilh ilhp p</td>
- <td>subtraction</td>
- </tr>
- <tr>
- <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="1" HEIGHT="12"></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- </tr>
- <tr>
- <td>2S</td>
- <td>2</td>
- <td><code>ASGN</code></td>
- <td><code>FIUP.B</code></td>
- <td>fdx csilh p</td>
- <td>assignment</td>
- </tr>
- <tr>
- <td>1L</td>
- <td>2</td>
- <td><code>EQ</code></td>
- <td><code>FIU...</code></td>
- <td>fdx ilh ilhp</td>
- <td>jump if equal</td>
- </tr>
- <tr>
- <td>1L</td>
- <td>2</td>
- <td><code>GE</code></td>
- <td><code>FIU...</code></td>
- <td>fdx ilh ilhp</td>
- <td>jump if greater than or equal</td>
- </tr>
- <tr>
- <td>1L</td>
- <td>2</td>
- <td><code>GT</code></td>
- <td><code>FIU...</code></td>
- <td>fdx ilh ilhp</td>
- <td>jump if greater than</td>
- </tr>
- <tr>
- <td>1L</td>
- <td>2</td>
- <td><code>LE</code></td>
- <td><code>FIU...</code></td>
- <td>fdx ilh ilhp</td>
- <td>jump if less than or equal</td>
- </tr>
- <tr>
- <td>1L</td>
- <td>2</td>
- <td><code>LT</code></td>
- <td><code>FIU...</code></td>
- <td>fdx ilh ilhp</td>
- <td>jump if less than</td>
- </tr>
- <tr>
- <td>1L</td>
- <td>2</td>
- <td><code>NE</code></td>
- <td><code>FIU...</code></td>
- <td>fdx ilh ilhp</td>
- <td>jump if not equal</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- </tr>
- <tr>
- <td>2S</td>
- <td>1</td>
- <td><code>ARG</code></td>
- <td><code>FIUP.B</code></td>
- <td>fdx ilh p</td>
- <td>argument</td>
- </tr>
- <tr>
- <td>1</td>
- <td>1 or 2</td>
- <td><code>CALL</code></td>
- <td><code>FIUPVB</code></td>
- <td>fdx ilh p</td>
- <td>function call</td>
- </tr>
- <tr>
- <td></td>
- <td>1</td>
- <td><code>RET</code></td>
- <td><code>FIUPV.</code></td>
- <td>fdx ilh p</td>
- <td>return from function</td>
- </tr>
- <tr>
- <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="1" HEIGHT="12"></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- </tr>
- <tr>
- <td></td>
- <td>1</td>
- <td><code>JUMP</code></td>
- <td><code>....V.</code></td>
- <td></td>
- <td>unconditional jump</td>
- </tr>
- <tr>
- <td>1L</td>
- <td>0</td>
- <td><code>LABEL</code></td>
- <td><code>....V.</code></td>
- <td></td>
- <td>label definition</td>
- </tr>
-</table>
-
-<p>The entries in the <strong>Sizes</strong> column indicate sizes of the operators that
-back ends must implement. Letters denote the size of float (f), double (d), long double
-(x), character (c), short integer (s), integer (i), long integer (l), &quot;long
-long&quot; integer (h) , and pointer (p). These sizes are separated into sets for each
-type suffix, except that a single set is used for both I and U when the set for I is
-identical to the set for U.</p>
-
-<p>The actual values for the size indicators, fdxcsilhp, depend on the target. A
-specification like <code>ADDF</code>f denotes the operator <code>ADD+F+sizeop(</code>f<code>)</code>,
-where &quot;f&quot; is replaced by a target-dependent value, e.g., <code>ADDF4</code> and <code>ADDF8</code>.
-For example, back ends must implement the following <code>CVI</code> and <code>MUL</code>
-operators.</p>
-
-<blockquote>
- <p><code>CVIF</code>f <code>CVIF</code>d <code>CVIF</code>x<br>
- <code>CVII</code>c <code>CVII</code>s <code>CVII</code>i <code>CVII</code>l <code>CVII</code>h<br>
- <code>CVIU</code>c <code>CVIU</code>s <code>CVIU</code>i <code>CVIU</code>l <code>CVIU</code>h
- <code>CVIU</code>p<br>
- <br>
- <code>MULF</code>f <code>MULF</code>d <code>MULF</code>x<br>
- <code>MULI</code>i <code>MULI</code>l <code>MULI</code>h<br>
- <code>MULU</code>i <code>MULU</code>l <code>MULU</code>h</p>
-</blockquote>
-
-<p>On most platforms, there are fewer than three sizes of floats and six sizes of
-integers, and pointers are usually the same size as one of the integers. And lcc doesn't
-support the &quot;long long&quot; type, so h is not currently used. So the set of
-platform-specific operators is usually smaller than the list above suggests. For example,
-the X86, SPARC, and MIPS back ends implement the following <code>CVI</code> and <code>MUL</code>
-operators.</p>
-
-<blockquote>
- <p><code>CVIF</code>4 <code>CVIF</code>8<br>
- <code>CVII</code>1 <code>CVII</code>2 <code>CVII</code>4<br>
- <code>CVIU</code>1 <code>CVIU</code>2 <code>CVIU</code>4 <br>
- <br>
- <code>MULF</code>4 <code>MULF</code>8<br>
- <code>MULI</code>4<br>
- <code>MULU</code>4</p>
-</blockquote>
-
-<p>The set of operators is thus target-dependent; for example, <code>ADDI8</code> appears
-only if the target supports an 8-byte integer type. <a
-HREF="ftp://ftp.cs.princeton.edu/pub/packages/lcc/contrib/ops.c"><code>ops.c</code></a> is
-a program that, given a set of sizes, prints the required operators and their values,
-e.g.,</p>
-
-<blockquote>
- <pre>% <em>ops c=1 s=2 i=4 l=4 h=4 f=4 d=8 x=8 p=4</em>
-...
- CVIF4=4225 CVIF8=8321
- CVII1=1157 CVII2=2181 CVII4=4229
- CVIU1=1158 CVIU2=2182 CVIU4=4230
-...
- MULF4=4561 MULF8=8657
- MULI4=4565
- MULU4=4566
-...
-131 operators</pre>
-</blockquote>
-
-<p>The type suffix for a conversion operator denotes the type of the result and the size
-indicator gives the size of the result. For example, <code>CVUI4</code> converts an
-unsigned (<code>U</code>) to a 4-byte signed integer (<code>I4</code>). The <code>syms[0]</code>
-field points to a symbol-table entry for a integer constant that gives the size of the
-source operand. For example, if <code>syms[0]</code> in a <code>CVUI4</code> points to a
-symbol-table entry for 2, the conversion widens a 2-byte unsigned integer to a 4-byte
-signed integer. Conversions that widen unsigned integers zero-extend; those that widen
-signed integers sign-extend.</p>
-
-<p>The front end composes conversions between types <em>T</em><sub>1</sub> and <em>T</em><sub>2</sub>
-by widening <em>T</em><sub>1</sub> to it's &quot;supertype&quot;, if necessary, converting
-that result to <em>T</em><sub>2</sub>'s supertype, then narrowing the result to <em>T</em><sub>2</sub>,
-if necessary. The following table lists the supertypes; omitted entries are their own
-supertypes.</p>
-
-<blockquote>
- <table BORDER="0" CELLPADDING="0" CELLSPACING="0">
- <tr>
- <td><strong>Type</strong></td>
- <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="24" HEIGHT="1"></td>
- <td><strong>Supertype</strong></td>
- </tr>
- <tr>
- <td>signed char</td>
- <td></td>
- <td>int</td>
- </tr>
- <tr>
- <td>signed short</td>
- <td></td>
- <td>int</td>
- </tr>
- <tr ALIGN="LEFT" VALIGN="TOP">
- <td>unsigned char</td>
- <td></td>
- <td>int, if sizeof (char) &lt; sizeof (int)<br>
- unsigned, otherwise</td>
- </tr>
- <tr ALIGN="LEFT" VALIGN="TOP">
- <td>unsigned short</td>
- <td></td>
- <td>int, if sizeof (short) &lt; sizeof (int)<br>
- unsigned, otherwise</td>
- </tr>
- <tr ALIGN="LEFT" VALIGN="TOP">
- <td>void *</td>
- <td></td>
- <td>an unsigned type as large as a pointer</td>
- </tr>
- </table>
-</blockquote>
-
-<p>Pointers are converted to an unsigned type of the same size, even when that type is not
-one of the integer types.</p>
-
-<p>For example, the front end converts a signed short to a float by first converting it to
-an int and then to a float. It converts an unsigned short to an int with a single <code>CVUI</code>i
-conversion, when shorts are smaller than ints.</p>
-
-<p>There are now signed and unsigned variants of <code>ASGN</code>, <code>INDIR</code>, <code>BCOM</code>,
-<code>BOR</code>, <code>BXOR</code>, <code>BAND</code>, <code>ARG</code>, <code>CALL</code>,
-and <code>RET</code> to simplify code generation on platforms that use different
-instructions or register set for signed and unsigned operations. Likewise there are now
-pointer variants of <code>ASGN</code>, <code>INDIR</code>, <code>ARG</code>, <code>CALL</code>,
-and <code>RET</code>.</p>
-
-<h2><a NAME="flags">5.6 Interface Flags</a></h2>
-
-<pre>unsigned unsigned_char:1;</pre>
-
-<p>tells the front end whether plain characters are signed or unsigned. If it's zero, char
-is a signed type; otherwise, char is an unsigned type.</p>
-
-<p>All the interface flags can be set by command-line options, e.g., <code>-Wf-unsigned_char=1</code>
-causes plain characters to be unsigned.</p>
-
-<h2><a NAME="definitions">5.8 Definitions</a></h2>
-
-<p>The front end announces local variables by calling</p>
-
-<pre>void (*local)(Symbol);</pre>
-
-<p>It announces temporaries likewise; these have the symbol's <code>temporary</code> flag
-set, which indicates that the symbol will be used only in the next call to <code>gen</code>.
-If a temporary's <code>u.t.cse</code> field is nonnull, it points to the node that
-computes the value assigned to the temporary; see page 346.</p>
-
-<p>The front end calls</p>
-
-<pre>void (*address)(Symbol p, Symbol q, long n);</pre>
-
-<p>to initialize <code>q</code> to a symbol that represents an address of the form <em>x</em>+<code>n</code>,
-where <em>x</em> is the address represented by <code>p</code> and the long integer <code>n</code>
-is positive or negative.</p>
-
-<h2><a NAME="constants">5.9 Constants</a></h2>
-
-<p>The interface function</p>
-
-<pre>void (*defconst)(int suffix, int size, Value v);</pre>
-
-<p>initializes constants. defconst emits directives to define a cell and initialize it to
-a constant value. v is the constant value, suffix identifies the type of the value, and
-size is the size of the value in bytes. The value of suffix indicates which field of v
-holds the value, as shown in the following table.</p>
-
-<blockquote>
- <table BORDER="0" CELLPADDING="1" CELLSPACING="1">
- <tr>
- <td><strong>suffix</strong></td>
- <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="24" HEIGHT="1"></td>
- <td><strong>v Field</strong></td>
- <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="24" HEIGHT="1"></td>
- <td><strong>size</strong></td>
- </tr>
- <tr>
- <td><code>F</code></td>
- <td></td>
- <td><code>v.d</code></td>
- <td></td>
- <td>float, double, long double</td>
- </tr>
- <tr>
- <td><code>I</code></td>
- <td></td>
- <td><code>v.i</code></td>
- <td></td>
- <td>signed char, signed short, signed int, signed long</td>
- </tr>
- <tr>
- <td><code>U</code></td>
- <td></td>
- <td><code>v.u</code></td>
- <td></td>
- <td>unsigned char, unsigned short, unsigned int, unsigned long</td>
- </tr>
- <tr>
- <td><code>P</code></td>
- <td></td>
- <td><code>v.p</code></td>
- <td></td>
- <td>void *</td>
- </tr>
- </table>
-</blockquote>
-
-<p><code>defconst</code> must narrow <code>v.</code>x when <code>size</code> is less than <code>sizeof</code>
-<code>v.</code>x; e.g., to emit an unsigned char, <code>defconst</code> should emit <code>(unsigned
-char)v.i</code>.</p>
-
-<h2><a NAME="upcalls">5.12 Upcalls</a></h2>
-
-<p>lcc 4.x uses standard I/O and its I/O functions have been changed accordingly. lcc
-reads input from the standard input, emits code to the standard output, and writes
-diagnostics to the standard error output. It uses <code>freopen</code> to redirect these
-streams to explicit files, when necessary.</p>
-
-<p><code>bp</code>, <code>outflush</code>, and <code>outs</code> have been eliminated.</p>
-
-<pre>extern void fprint(FILE *f, const char *fmt, ...);
-extern void print(const char *fmt, ...);</pre>
-
-<p>print formatted data to file <code>f</code> (<code>fprint</code>) or the standard
-output (<code>print</code>). These functions are like standard C's <code>printf</code> and
-<code>fprintf</code>, but support only some of the standard conversion specifiers and do
-not support flags, precision, and field-width specifications. They support the following
-new conversion specifiers in addition to those described on page 99.</p>
-
-<blockquote>
- <table BORDER="0" CELLPADDING="0" CELLSPACING="0">
- <tr>
- <td><strong>Specifiers</strong></td>
- <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="24" HEIGHT="1"></td>
- <td><strong>Corresponding printf Specifiers</strong></td>
- </tr>
- <tr>
- <td><code>%c</code></td>
- <td></td>
- <td><code>%c</code></td>
- </tr>
- <tr>
- <td><code>%d %D</code></td>
- <td></td>
- <td><code>%d %ld</code></td>
- </tr>
- <tr>
- <td><code>%u %U</code></td>
- <td></td>
- <td><code>%u %lu</code></td>
- </tr>
- <tr>
- <td><code>%x %X</code></td>
- <td></td>
- <td><code>%x %lx</code></td>
- </tr>
- <tr>
- <td><code>%f %e %g</code></td>
- <td></td>
- <td><code>%e %f %g</code></td>
- </tr>
- <tr ALIGN="LEFT" VALIGN="TOP">
- <td><code>%p</code></td>
- <td></td>
- <td>Converts the corresponding void * argument to unsigned long and prints it with the <code>printf</code>
- <code>%#x</code> specifier or just <code>%x</code> when the argument is null.</td>
- </tr>
- <tr ALIGN="LEFT" VALIGN="TOP">
- <td><code>%I</code></td>
- <td></td>
- <td>Prints the number of spaces given by the corresponding argument.</td>
- </tr>
- </table>
-</blockquote>
-
-<pre>#define generic(op) ((op)&amp;0x3F0)
-#define specific(op) ((op)&amp;0x3FF)</pre>
-
-<p><code>generic(op)</code> returns the generic variant of <code>op</code>; that is,
-without its type suffix and size indicator. <code>specific(op)</code> returns the
-type-specific variant of <code>op</code>; that is, without its size indicator.</p>
-
-<p><code>newconst</code> has been replaced by</p>
-
-<pre>extern Symbol intconst(int n);</pre>
-
-<p>which installs the integer constant <code>n</code> in the symbol table, if necessary,
-and returns a pointer to the symbol-table entry.</p>
-
-<hr>
-
-<address>
- <a HREF="http://www.research.microsoft.com/~cwfraser/">Chris Fraser</a> / <a
- HREF="mailto:cwfraser@microsoft.com">cwfraser@microsoft.com</a><br>
- <a HREF="http://www.research.microsoft.com/~drh/">David Hanson</a> / <a
- HREF="mailto:drh@microsoft.com">drh@microsoft.com</a><br>
- $Revision: 145 $ $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $
-</address>
-</body>
-</html>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+
+<head>
+<link HREF="mailto:drh@microsoft.com" REV="made" TITLE="David R. Hanson">
+<title>The lcc 4.1 Code-Generation Interface</title>
+</head>
+
+<body>
+
+<h1>The lcc 4.1 Code-Generation Interface</h1>
+
+<p ALIGN="LEFT"><strong><a HREF="http://www.research.microsoft.com/~cwfraser/">Christopher
+W. Fraser</a> and <a HREF="http://www.research.microsoft.com/~drh/">David R. Hanson</a>, <a
+HREF="http://www.research.microsoft.com/">Microsoft Research</a></strong></p>
+
+<h2>Contents</h2>
+
+<dir>
+ <li><a HREF="#intro">Introduction</a> </li>
+ <li><a HREF="#metrics">5.1 Type Metrics</a></li>
+ <li><a HREF="#symbols">5.3 Symbols</a> </li>
+ <li><a HREF="#operators">5.5 Dag Operators</a></li>
+ <li><a HREF="#flags">5.6 Interface Flags</a></li>
+ <li><a HREF="#definitions">5.8 Definitions</a></li>
+ <li><a HREF="#constants">5.9 Constants</a></li>
+ <li><a HREF="#upcalls">5.12 Upcalls</a></li>
+</dir>
+
+<h2><a NAME="intro">Introduction</a></h2>
+
+<p>Version 4.1 is the latest release of <a
+HREF="http://www.cs.princeton.edu/software/lcc/">lcc</a>, the ANSI C compiler described in
+our book <cite>A Retargetable C Compiler: Design and Implementation</cite>
+(Addison-Wesley, 1995, ISBN 0-8053-1670-1). This document summarizes the differences
+between the 4.1 code-generation interface and the 3.x interface described in Chap. 5 of <cite>A
+Retargetable C Compiler</cite>.</p>
+
+<p>Previous versions of lcc supported only three sizes of integers, two sizes of floats,
+and insisted that pointers fit in unsigned integers (see Sec. 5.1 of <cite>A Retargetable
+C Compiler</cite>). These assumptions simplified the compiler, and were suitable for
+32-bit architectures. But on 64-bit architectures, such as the DEC ALPHA, it's natural to
+have four sizes of integers and perhaps three sizes of floats, and on 16-bit
+architectures, 32-bit pointers don't fit in unsigned integers. Also, the 3.x constaints
+limited the use of lcc's back ends for other languages, such as Java.</p>
+
+<p>Version 4.x removes all of these restrictions: It supports any number of sizes for
+integers and floats, and the size of pointers need not be related to the size of any of
+the integer types. The major changes in the code-generation interface are:
+
+<ul>
+ <li>The number of type suffixes has been reduced to 6.</li>
+ <li>Dag operators are composed of a generic operator, a type suffix, and a size.</li>
+ <li>Unsigned variants of several operators have been added.</li>
+ <li>Several interface functions have new signatures.</li>
+</ul>
+
+<p>In addition, version 4.x is written in ANSI C and uses the standard I/O library and
+other standard C functions.</p>
+
+<p>The sections below parallel the subsections of Chap. 5 of <cite>A Retargetable C
+Compiler</cite> and summarize the differences between the 3.x and 4.x code-generation
+interface. Unaffected subsections are omitted. Page citations refer to pages in <cite>A
+Retargetable C Compiler</cite>.</p>
+
+<h2><a NAME="metrics">5.1 Type Metrics</a></h2>
+
+<p>There are now 10 metrics in an interface record:</p>
+
+<pre>Metrics charmetric;
+Metrics shortmetric;
+Metrics intmetric;
+Metrics longmetric;
+Metrics longlongmetric;
+Metrics floatmetric;
+Metrics doublemetric;
+Metrics longdoublemetric;
+Metrics ptrmetric;
+Metrics structmetric;</pre>
+
+<p>Each of these specifies the size and alignment of the corresponding type. <code>ptrmetric</code>
+describes all pointers.</p>
+
+<h2><a NAME="symbols">5.3 Symbols</a></h2>
+
+<p>The actual value of a constant is stored in the <code>u.c.v</code> field of a symbol,
+which holds a <code>Value</code>:</p>
+
+<pre>typedef union value {
+ long i;
+ unsigned long u;
+ long double d;
+ void *p;
+ void (*g)(void);
+} Value;</pre>
+
+<p>The value is stored in the appropriate field according to its type, which is given by
+the symbol's <code>type</code> field.</p>
+
+<h2><a NAME="operators">5.5 Dag Operators</a></h2>
+
+<p>The <code>op</code> field a of <code>node</code> structure holds a dag operator, which
+consists of a generic operator, a type suffix, and a size indicator. The type suffixes
+are:</p>
+
+<pre>enum {
+ F=FLOAT,
+ I=INT,
+ U=UNSIGNED,
+ P=POINTER,
+ V=VOID,
+ B=STRUCT
+};
+
+#define sizeop(n) ((n)&lt;&lt;10)</pre>
+
+<p>Given a generic operator <code>o</code>, a type suffix <code>t</code>, and a size <code>s</code>,
+a type- and size-specific operator is formed by <code>o+t+sizeop(s)</code>. For example, <code>ADD+F+sizeop(4)</code>
+forms the operator <code>ADDF4</code>, which denotes the sum of two 4-byte floats.
+Similarly, <code>ADD+F+sizeop(8)</code> forms <code>ADDF8</code>, which denotes 8-byte
+floating addition. In the 3.x code-generation interface, <code>ADDF</code> and <code>ADDD</code>
+denoted these operations. There was no size indicator in the 3.x operators because the
+type suffix supplied both a type and a size.</p>
+
+<p>Table 5.1 lists each generic operator, its valid type suffixes, and the number of <code>kids</code>
+and <code>syms</code> that it uses; multiple values for <code>kids</code> indicate
+type-specific variants. The notations in the <strong>syms</strong> column give the number
+of <code>syms</code> values and a one-letter code that suggests their uses: 1V indicates
+that <code>syms[0]</code> points to a symbol for a variable, 1C indicates that <code>syms[0]</code>
+is a constant, and 1L indicates that <code>syms[0]</code> is a label. For 1S, <code>syms[0]</code>
+is a constant whose value is a size in bytes; 2S adds <code>syms[1]</code>, which is a
+constant whose value is an alignment. For most operators, the type suffix and size
+indicator denote the type and size of operation to perform and the type and size of the
+result.</p>
+
+<table WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <tr>
+ <td COLSPAN="6" ALIGN="CENTER"><strong>Table 5.1<img SRC="/~drh/resources/dot_clear.gif"
+ ALT="|" WIDTH="18" HEIGHT="1">Node Operators.</strong></td>
+ </tr>
+ <tr>
+ <td><strong>syms</strong></td>
+ <td><strong>kids</strong></td>
+ <td><strong>Operator</strong></td>
+ <td><strong>Type Suffixes</strong></td>
+ <td><strong>Sizes</strong></td>
+ <td><strong>Operation</strong></td>
+ </tr>
+ <tr>
+ <td>1V</td>
+ <td>0</td>
+ <td><code>ADDRF</code></td>
+ <td><code>...P..</code></td>
+ <td>p</td>
+ <td>address of a parameter</td>
+ </tr>
+ <tr>
+ <td>1V</td>
+ <td>0</td>
+ <td><code>ADDRG</code></td>
+ <td><code>...P..</code></td>
+ <td>p</td>
+ <td>address of a global</td>
+ </tr>
+ <tr>
+ <td>1V</td>
+ <td>0</td>
+ <td><code>ADDRL</code></td>
+ <td><code>...P..</code></td>
+ <td>p</td>
+ <td>address of a local</td>
+ </tr>
+ <tr>
+ <td>1C</td>
+ <td>0</td>
+ <td><code>CNST</code></td>
+ <td><code>FIUP..</code></td>
+ <td>fdx csilh p</td>
+ <td>constant</td>
+ </tr>
+ <tr ALIGN="LEFT" VALIGN="TOP">
+ <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="1" HEIGHT="12"></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>1</td>
+ <td><code>BCOM</code></td>
+ <td><code>.IU...</code></td>
+ <td>ilh</td>
+ <td>bitwise complement</td>
+ </tr>
+ <tr>
+ <td>1S</td>
+ <td>1</td>
+ <td><code>CVF</code></td>
+ <td><code>FI....</code></td>
+ <td>fdx ilh</td>
+ <td>convert from float</td>
+ </tr>
+ <tr>
+ <td>1S</td>
+ <td>1</td>
+ <td><code>CVI</code></td>
+ <td><code>FIU...</code></td>
+ <td>fdx csilh csilhp</td>
+ <td>convert from signed integer</td>
+ </tr>
+ <tr>
+ <td>1S</td>
+ <td>1</td>
+ <td><code>CVP</code></td>
+ <td><code>..U..</code></td>
+ <td>p</td>
+ <td>convert from pointer</td>
+ </tr>
+ <tr>
+ <td>1S</td>
+ <td>1</td>
+ <td><code>CVU</code></td>
+ <td><code>.IUP..</code></td>
+ <td>csilh p</td>
+ <td>convert from unsigned integer</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>1</td>
+ <td><code>INDIR</code></td>
+ <td><code>FIUP.B</code></td>
+ <td>fdx csilh p</td>
+ <td>fetch</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>1</td>
+ <td><code>NEG</code></td>
+ <td><code>FI....</code></td>
+ <td>fdx ilh</td>
+ <td>negation</td>
+ </tr>
+ <tr>
+ <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="1" HEIGHT="12"></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>ADD</code></td>
+ <td><code>FIUP..</code></td>
+ <td>fdx ilh ilhp p</td>
+ <td>addition</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>BAND</code></td>
+ <td><code>.IU...</code></td>
+ <td>ilh</td>
+ <td>bitwise AND</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>BOR</code></td>
+ <td><code>.IU...</code></td>
+ <td>ilh</td>
+ <td>bitwise inclusive OR</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>BXOR</code></td>
+ <td><code>.IU...</code></td>
+ <td>ilh</td>
+ <td>bitwise exclusive OR</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>DIV</code></td>
+ <td><code>FIU...</code></td>
+ <td>fdx ilh</td>
+ <td>division</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>LSH</code></td>
+ <td><code>.IU...</code></td>
+ <td>ilh</td>
+ <td>left shift</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>MOD</code></td>
+ <td><code>.IU...</code></td>
+ <td>ilh</td>
+ <td>modulus</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>MUL</code></td>
+ <td><code>FIU...</code></td>
+ <td>fdx ilh</td>
+ <td>multiplication</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>RSH</code></td>
+ <td><code>.IU...</code></td>
+ <td>ilh</td>
+ <td>right shift</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>2</td>
+ <td><code>SUB</code></td>
+ <td><code>FIUP..</code></td>
+ <td>fdx ilh ilhp p</td>
+ <td>subtraction</td>
+ </tr>
+ <tr>
+ <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="1" HEIGHT="12"></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>2S</td>
+ <td>2</td>
+ <td><code>ASGN</code></td>
+ <td><code>FIUP.B</code></td>
+ <td>fdx csilh p</td>
+ <td>assignment</td>
+ </tr>
+ <tr>
+ <td>1L</td>
+ <td>2</td>
+ <td><code>EQ</code></td>
+ <td><code>FIU...</code></td>
+ <td>fdx ilh ilhp</td>
+ <td>jump if equal</td>
+ </tr>
+ <tr>
+ <td>1L</td>
+ <td>2</td>
+ <td><code>GE</code></td>
+ <td><code>FIU...</code></td>
+ <td>fdx ilh ilhp</td>
+ <td>jump if greater than or equal</td>
+ </tr>
+ <tr>
+ <td>1L</td>
+ <td>2</td>
+ <td><code>GT</code></td>
+ <td><code>FIU...</code></td>
+ <td>fdx ilh ilhp</td>
+ <td>jump if greater than</td>
+ </tr>
+ <tr>
+ <td>1L</td>
+ <td>2</td>
+ <td><code>LE</code></td>
+ <td><code>FIU...</code></td>
+ <td>fdx ilh ilhp</td>
+ <td>jump if less than or equal</td>
+ </tr>
+ <tr>
+ <td>1L</td>
+ <td>2</td>
+ <td><code>LT</code></td>
+ <td><code>FIU...</code></td>
+ <td>fdx ilh ilhp</td>
+ <td>jump if less than</td>
+ </tr>
+ <tr>
+ <td>1L</td>
+ <td>2</td>
+ <td><code>NE</code></td>
+ <td><code>FIU...</code></td>
+ <td>fdx ilh ilhp</td>
+ <td>jump if not equal</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>2S</td>
+ <td>1</td>
+ <td><code>ARG</code></td>
+ <td><code>FIUP.B</code></td>
+ <td>fdx ilh p</td>
+ <td>argument</td>
+ </tr>
+ <tr>
+ <td>1</td>
+ <td>1 or 2</td>
+ <td><code>CALL</code></td>
+ <td><code>FIUPVB</code></td>
+ <td>fdx ilh p</td>
+ <td>function call</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>1</td>
+ <td><code>RET</code></td>
+ <td><code>FIUPV.</code></td>
+ <td>fdx ilh p</td>
+ <td>return from function</td>
+ </tr>
+ <tr>
+ <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="1" HEIGHT="12"></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>1</td>
+ <td><code>JUMP</code></td>
+ <td><code>....V.</code></td>
+ <td></td>
+ <td>unconditional jump</td>
+ </tr>
+ <tr>
+ <td>1L</td>
+ <td>0</td>
+ <td><code>LABEL</code></td>
+ <td><code>....V.</code></td>
+ <td></td>
+ <td>label definition</td>
+ </tr>
+</table>
+
+<p>The entries in the <strong>Sizes</strong> column indicate sizes of the operators that
+back ends must implement. Letters denote the size of float (f), double (d), long double
+(x), character (c), short integer (s), integer (i), long integer (l), &quot;long
+long&quot; integer (h) , and pointer (p). These sizes are separated into sets for each
+type suffix, except that a single set is used for both I and U when the set for I is
+identical to the set for U.</p>
+
+<p>The actual values for the size indicators, fdxcsilhp, depend on the target. A
+specification like <code>ADDF</code>f denotes the operator <code>ADD+F+sizeop(</code>f<code>)</code>,
+where &quot;f&quot; is replaced by a target-dependent value, e.g., <code>ADDF4</code> and <code>ADDF8</code>.
+For example, back ends must implement the following <code>CVI</code> and <code>MUL</code>
+operators.</p>
+
+<blockquote>
+ <p><code>CVIF</code>f <code>CVIF</code>d <code>CVIF</code>x<br>
+ <code>CVII</code>c <code>CVII</code>s <code>CVII</code>i <code>CVII</code>l <code>CVII</code>h<br>
+ <code>CVIU</code>c <code>CVIU</code>s <code>CVIU</code>i <code>CVIU</code>l <code>CVIU</code>h
+ <code>CVIU</code>p<br>
+ <br>
+ <code>MULF</code>f <code>MULF</code>d <code>MULF</code>x<br>
+ <code>MULI</code>i <code>MULI</code>l <code>MULI</code>h<br>
+ <code>MULU</code>i <code>MULU</code>l <code>MULU</code>h</p>
+</blockquote>
+
+<p>On most platforms, there are fewer than three sizes of floats and six sizes of
+integers, and pointers are usually the same size as one of the integers. And lcc doesn't
+support the &quot;long long&quot; type, so h is not currently used. So the set of
+platform-specific operators is usually smaller than the list above suggests. For example,
+the X86, SPARC, and MIPS back ends implement the following <code>CVI</code> and <code>MUL</code>
+operators.</p>
+
+<blockquote>
+ <p><code>CVIF</code>4 <code>CVIF</code>8<br>
+ <code>CVII</code>1 <code>CVII</code>2 <code>CVII</code>4<br>
+ <code>CVIU</code>1 <code>CVIU</code>2 <code>CVIU</code>4 <br>
+ <br>
+ <code>MULF</code>4 <code>MULF</code>8<br>
+ <code>MULI</code>4<br>
+ <code>MULU</code>4</p>
+</blockquote>
+
+<p>The set of operators is thus target-dependent; for example, <code>ADDI8</code> appears
+only if the target supports an 8-byte integer type. <a
+HREF="ftp://ftp.cs.princeton.edu/pub/packages/lcc/contrib/ops.c"><code>ops.c</code></a> is
+a program that, given a set of sizes, prints the required operators and their values,
+e.g.,</p>
+
+<blockquote>
+ <pre>% <em>ops c=1 s=2 i=4 l=4 h=4 f=4 d=8 x=8 p=4</em>
+...
+ CVIF4=4225 CVIF8=8321
+ CVII1=1157 CVII2=2181 CVII4=4229
+ CVIU1=1158 CVIU2=2182 CVIU4=4230
+...
+ MULF4=4561 MULF8=8657
+ MULI4=4565
+ MULU4=4566
+...
+131 operators</pre>
+</blockquote>
+
+<p>The type suffix for a conversion operator denotes the type of the result and the size
+indicator gives the size of the result. For example, <code>CVUI4</code> converts an
+unsigned (<code>U</code>) to a 4-byte signed integer (<code>I4</code>). The <code>syms[0]</code>
+field points to a symbol-table entry for a integer constant that gives the size of the
+source operand. For example, if <code>syms[0]</code> in a <code>CVUI4</code> points to a
+symbol-table entry for 2, the conversion widens a 2-byte unsigned integer to a 4-byte
+signed integer. Conversions that widen unsigned integers zero-extend; those that widen
+signed integers sign-extend.</p>
+
+<p>The front end composes conversions between types <em>T</em><sub>1</sub> and <em>T</em><sub>2</sub>
+by widening <em>T</em><sub>1</sub> to it's &quot;supertype&quot;, if necessary, converting
+that result to <em>T</em><sub>2</sub>'s supertype, then narrowing the result to <em>T</em><sub>2</sub>,
+if necessary. The following table lists the supertypes; omitted entries are their own
+supertypes.</p>
+
+<blockquote>
+ <table BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <tr>
+ <td><strong>Type</strong></td>
+ <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="24" HEIGHT="1"></td>
+ <td><strong>Supertype</strong></td>
+ </tr>
+ <tr>
+ <td>signed char</td>
+ <td></td>
+ <td>int</td>
+ </tr>
+ <tr>
+ <td>signed short</td>
+ <td></td>
+ <td>int</td>
+ </tr>
+ <tr ALIGN="LEFT" VALIGN="TOP">
+ <td>unsigned char</td>
+ <td></td>
+ <td>int, if sizeof (char) &lt; sizeof (int)<br>
+ unsigned, otherwise</td>
+ </tr>
+ <tr ALIGN="LEFT" VALIGN="TOP">
+ <td>unsigned short</td>
+ <td></td>
+ <td>int, if sizeof (short) &lt; sizeof (int)<br>
+ unsigned, otherwise</td>
+ </tr>
+ <tr ALIGN="LEFT" VALIGN="TOP">
+ <td>void *</td>
+ <td></td>
+ <td>an unsigned type as large as a pointer</td>
+ </tr>
+ </table>
+</blockquote>
+
+<p>Pointers are converted to an unsigned type of the same size, even when that type is not
+one of the integer types.</p>
+
+<p>For example, the front end converts a signed short to a float by first converting it to
+an int and then to a float. It converts an unsigned short to an int with a single <code>CVUI</code>i
+conversion, when shorts are smaller than ints.</p>
+
+<p>There are now signed and unsigned variants of <code>ASGN</code>, <code>INDIR</code>, <code>BCOM</code>,
+<code>BOR</code>, <code>BXOR</code>, <code>BAND</code>, <code>ARG</code>, <code>CALL</code>,
+and <code>RET</code> to simplify code generation on platforms that use different
+instructions or register set for signed and unsigned operations. Likewise there are now
+pointer variants of <code>ASGN</code>, <code>INDIR</code>, <code>ARG</code>, <code>CALL</code>,
+and <code>RET</code>.</p>
+
+<h2><a NAME="flags">5.6 Interface Flags</a></h2>
+
+<pre>unsigned unsigned_char:1;</pre>
+
+<p>tells the front end whether plain characters are signed or unsigned. If it's zero, char
+is a signed type; otherwise, char is an unsigned type.</p>
+
+<p>All the interface flags can be set by command-line options, e.g., <code>-Wf-unsigned_char=1</code>
+causes plain characters to be unsigned.</p>
+
+<h2><a NAME="definitions">5.8 Definitions</a></h2>
+
+<p>The front end announces local variables by calling</p>
+
+<pre>void (*local)(Symbol);</pre>
+
+<p>It announces temporaries likewise; these have the symbol's <code>temporary</code> flag
+set, which indicates that the symbol will be used only in the next call to <code>gen</code>.
+If a temporary's <code>u.t.cse</code> field is nonnull, it points to the node that
+computes the value assigned to the temporary; see page 346.</p>
+
+<p>The front end calls</p>
+
+<pre>void (*address)(Symbol p, Symbol q, long n);</pre>
+
+<p>to initialize <code>q</code> to a symbol that represents an address of the form <em>x</em>+<code>n</code>,
+where <em>x</em> is the address represented by <code>p</code> and the long integer <code>n</code>
+is positive or negative.</p>
+
+<h2><a NAME="constants">5.9 Constants</a></h2>
+
+<p>The interface function</p>
+
+<pre>void (*defconst)(int suffix, int size, Value v);</pre>
+
+<p>initializes constants. defconst emits directives to define a cell and initialize it to
+a constant value. v is the constant value, suffix identifies the type of the value, and
+size is the size of the value in bytes. The value of suffix indicates which field of v
+holds the value, as shown in the following table.</p>
+
+<blockquote>
+ <table BORDER="0" CELLPADDING="1" CELLSPACING="1">
+ <tr>
+ <td><strong>suffix</strong></td>
+ <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="24" HEIGHT="1"></td>
+ <td><strong>v Field</strong></td>
+ <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="24" HEIGHT="1"></td>
+ <td><strong>size</strong></td>
+ </tr>
+ <tr>
+ <td><code>F</code></td>
+ <td></td>
+ <td><code>v.d</code></td>
+ <td></td>
+ <td>float, double, long double</td>
+ </tr>
+ <tr>
+ <td><code>I</code></td>
+ <td></td>
+ <td><code>v.i</code></td>
+ <td></td>
+ <td>signed char, signed short, signed int, signed long</td>
+ </tr>
+ <tr>
+ <td><code>U</code></td>
+ <td></td>
+ <td><code>v.u</code></td>
+ <td></td>
+ <td>unsigned char, unsigned short, unsigned int, unsigned long</td>
+ </tr>
+ <tr>
+ <td><code>P</code></td>
+ <td></td>
+ <td><code>v.p</code></td>
+ <td></td>
+ <td>void *</td>
+ </tr>
+ </table>
+</blockquote>
+
+<p><code>defconst</code> must narrow <code>v.</code>x when <code>size</code> is less than <code>sizeof</code>
+<code>v.</code>x; e.g., to emit an unsigned char, <code>defconst</code> should emit <code>(unsigned
+char)v.i</code>.</p>
+
+<h2><a NAME="upcalls">5.12 Upcalls</a></h2>
+
+<p>lcc 4.x uses standard I/O and its I/O functions have been changed accordingly. lcc
+reads input from the standard input, emits code to the standard output, and writes
+diagnostics to the standard error output. It uses <code>freopen</code> to redirect these
+streams to explicit files, when necessary.</p>
+
+<p><code>bp</code>, <code>outflush</code>, and <code>outs</code> have been eliminated.</p>
+
+<pre>extern void fprint(FILE *f, const char *fmt, ...);
+extern void print(const char *fmt, ...);</pre>
+
+<p>print formatted data to file <code>f</code> (<code>fprint</code>) or the standard
+output (<code>print</code>). These functions are like standard C's <code>printf</code> and
+<code>fprintf</code>, but support only some of the standard conversion specifiers and do
+not support flags, precision, and field-width specifications. They support the following
+new conversion specifiers in addition to those described on page 99.</p>
+
+<blockquote>
+ <table BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <tr>
+ <td><strong>Specifiers</strong></td>
+ <td><img SRC="/~drh/resources/dot_clear.gif" ALT="|" WIDTH="24" HEIGHT="1"></td>
+ <td><strong>Corresponding printf Specifiers</strong></td>
+ </tr>
+ <tr>
+ <td><code>%c</code></td>
+ <td></td>
+ <td><code>%c</code></td>
+ </tr>
+ <tr>
+ <td><code>%d %D</code></td>
+ <td></td>
+ <td><code>%d %ld</code></td>
+ </tr>
+ <tr>
+ <td><code>%u %U</code></td>
+ <td></td>
+ <td><code>%u %lu</code></td>
+ </tr>
+ <tr>
+ <td><code>%x %X</code></td>
+ <td></td>
+ <td><code>%x %lx</code></td>
+ </tr>
+ <tr>
+ <td><code>%f %e %g</code></td>
+ <td></td>
+ <td><code>%e %f %g</code></td>
+ </tr>
+ <tr ALIGN="LEFT" VALIGN="TOP">
+ <td><code>%p</code></td>
+ <td></td>
+ <td>Converts the corresponding void * argument to unsigned long and prints it with the <code>printf</code>
+ <code>%#x</code> specifier or just <code>%x</code> when the argument is null.</td>
+ </tr>
+ <tr ALIGN="LEFT" VALIGN="TOP">
+ <td><code>%I</code></td>
+ <td></td>
+ <td>Prints the number of spaces given by the corresponding argument.</td>
+ </tr>
+ </table>
+</blockquote>
+
+<pre>#define generic(op) ((op)&amp;0x3F0)
+#define specific(op) ((op)&amp;0x3FF)</pre>
+
+<p><code>generic(op)</code> returns the generic variant of <code>op</code>; that is,
+without its type suffix and size indicator. <code>specific(op)</code> returns the
+type-specific variant of <code>op</code>; that is, without its size indicator.</p>
+
+<p><code>newconst</code> has been replaced by</p>
+
+<pre>extern Symbol intconst(int n);</pre>
+
+<p>which installs the integer constant <code>n</code> in the symbol table, if necessary,
+and returns a pointer to the symbol-table entry.</p>
+
+<hr>
+
+<address>
+ <a HREF="http://www.research.microsoft.com/~cwfraser/">Chris Fraser</a> / <a
+ HREF="mailto:cwfraser@microsoft.com">cwfraser@microsoft.com</a><br>
+ <a HREF="http://www.research.microsoft.com/~drh/">David Hanson</a> / <a
+ HREF="mailto:drh@microsoft.com">drh@microsoft.com</a><br>
+ $Revision: 145 $ $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $
+</address>
+</body>
+</html>
diff --git a/lcc/doc/bprint.1 b/lcc/doc/bprint.1
index 794c957..8cf9971 100755
--- a/lcc/doc/bprint.1
+++ b/lcc/doc/bprint.1
@@ -1,83 +1,83 @@
-.\" $Id: bprint.1 145 2001-10-17 21:53:10Z timo $
-.TH BPRINT 1 "local \- $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $"
-.SH NAME
-bprint \- expression profiler
-.SH SYNOPSIS
-.B bprint
-[
-.I option ...
-]
-[
-.I file ...
-]
-.SH DESCRIPTION
-.I bprint
-produces on the standard output a listing of the programs compiled by
-.I lcc
-with the
-.B \-b
-option.
-Executing an
-.B a.out
-so compiled appends profiling data to
-.BR prof.out .
-The first token of each expression in the listing is preceded
-by the number of times it was executed
-enclosed in angle brackets as determined from the data in
-.BR prof.out .
-.I bprint
-interprets the following options.
-.TP
-.B \-c
-Compress the
-.B prof.out
-file, which otherwise grows with every execution of
-.BR a.out .
-.TP
-.B \-b
-Print an annotated listing as described above.
-.TP
-.B \-n
-Include line numbers in the listing.
-.TP
-.B \-f
-Print only the number of invocations of each function.
-A second
-.B \-f
-summarizes call sites instead of callers.
-.TP
-.BI \-I \*Sdir
-specifies additional directories in which to seek
-files given in
-.B prof.out
-that do not begin with `/'.
-.PP
-If any file names are given, only the requested data for those files are printed
-in the order presented.
-If no options are given,
-.B \-b
-is assumed.
-.SH FILES
-.PP
-.ta \w'$LCCDIR/liblcc.{a,lib}XX'u
-.nf
-prof.out profiling data
-$LCCDIR/liblcc.{a,lib} \fIlcc\fP-specific library
-.SH "SEE ALSO"
-.IR lcc (1),
-.IR prof (1)
-.SH BUGS
-Macros and comments can confuse
-.I bprint
-because it uses post-expansion source coordinates
-to annotate pre-expansion source files.
-If
-.I bprint
-sees that it's about to print a statement count
-.I inside
-a number or identifier, it moves the count to just
-.I before
-the token.
-.PP
-Can't cope with an ill-formed
-.BR prof.out .
+.\" $Id: bprint.1 145 2001-10-17 21:53:10Z timo $
+.TH BPRINT 1 "local \- $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $"
+.SH NAME
+bprint \- expression profiler
+.SH SYNOPSIS
+.B bprint
+[
+.I option ...
+]
+[
+.I file ...
+]
+.SH DESCRIPTION
+.I bprint
+produces on the standard output a listing of the programs compiled by
+.I lcc
+with the
+.B \-b
+option.
+Executing an
+.B a.out
+so compiled appends profiling data to
+.BR prof.out .
+The first token of each expression in the listing is preceded
+by the number of times it was executed
+enclosed in angle brackets as determined from the data in
+.BR prof.out .
+.I bprint
+interprets the following options.
+.TP
+.B \-c
+Compress the
+.B prof.out
+file, which otherwise grows with every execution of
+.BR a.out .
+.TP
+.B \-b
+Print an annotated listing as described above.
+.TP
+.B \-n
+Include line numbers in the listing.
+.TP
+.B \-f
+Print only the number of invocations of each function.
+A second
+.B \-f
+summarizes call sites instead of callers.
+.TP
+.BI \-I \*Sdir
+specifies additional directories in which to seek
+files given in
+.B prof.out
+that do not begin with `/'.
+.PP
+If any file names are given, only the requested data for those files are printed
+in the order presented.
+If no options are given,
+.B \-b
+is assumed.
+.SH FILES
+.PP
+.ta \w'$LCCDIR/liblcc.{a,lib}XX'u
+.nf
+prof.out profiling data
+$LCCDIR/liblcc.{a,lib} \fIlcc\fP-specific library
+.SH "SEE ALSO"
+.IR lcc (1),
+.IR prof (1)
+.SH BUGS
+Macros and comments can confuse
+.I bprint
+because it uses post-expansion source coordinates
+to annotate pre-expansion source files.
+If
+.I bprint
+sees that it's about to print a statement count
+.I inside
+a number or identifier, it moves the count to just
+.I before
+the token.
+.PP
+Can't cope with an ill-formed
+.BR prof.out .
diff --git a/lcc/doc/install.html b/lcc/doc/install.html
index fd9c88b..3cc59a8 100755
--- a/lcc/doc/install.html
+++ b/lcc/doc/install.html
@@ -1,796 +1,796 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-
-<head>
-<link HREF="mailto:drh@cs.princeton.edu" REV="made" TITLE="David R. Hanson">
-<title>Installing lcc</title>
-</head>
-
-<body>
-
-<h1>Installing lcc</h1>
-
-<p ALIGN="LEFT"><strong><a HREF="http://www.research.microsoft.com/~cwfraser/">Christopher
-W. Fraser</a> and <a HREF="http://www.research.microsoft.com/~drh/">David R. Hanson</a>, <a
-HREF="http://www.research.microsoft.com/">Microsoft Research</a></strong></p>
-
-<h2>Contents</h2>
-
-<dir>
- <li><a HREF="#intro">Introduction</a></li>
- <li><a HREF="#unix">Installation on UNIX</a></li>
- <li><a HREF="#driver">Building the Driver</a></li>
- <li><a HREF="#rcc">Building the Compiler and Accessories</a></li>
- <li><a HREF="#win32">Installation on Windows NT 4.0 and Windows 95/98</a></li>
- <li><a HREF="#bugs">Reporting Bugs</a></li>
- <li><a HREF="#mailinglist">Keeping in Touch</a></li>
-</dir>
-
-<h2><a NAME="intro">Introduction</a></h2>
-
-<p><a HREF="http://www.cs.princeton.edu/software/lcc/">lcc</a> is the ANSI C compiler
-described in our book <cite>A Retargetable C Compiler: Design and Implementation</cite>
-(Addison-Wesley, 1995, ISBN 0-8053-1670-1).</p>
-
-<p>If you're installing lcc on a UNIX system, read the remainder of this section and
-continue with the next section. If you're installing lcc on a Windows NT 4.0 or Windows
-95/98 system, and you intend only to <u>use</u> lcc, you can run the <a
-href="ftp://ftp.cs.princeton.edu/pub/packages/lcc/lcc41.exe">InstallShield executable</a>,
-which installs the binaries and the documentation. If you want to <u>modify</u> lcc or <u>rebuild</u>
-it from the source files, you need the <a
-href="ftp://ftp.cs.princeton.edu/packages/lcc/lcc41.zip">complete distribution</a>, and
-you should read the rest of the section, the following three sections, and the <a
-HREF="#win32">Windows NT/95/98</a> section.</p>
-
-<p>Extract the distribution into its own directory. All non-absolute paths below are
-relative to this directory. The distribution holds the following subdirectories.</p>
-
-<blockquote>
- <table BORDER="0" CELLPADDING="1" CELLSPACING="1" WIDTH="80%">
- <tr>
- <td><a HREF="../src"><code>src</code></a></td>
- <td></td>
- <td>source code</td>
- </tr>
- <tr>
- <td><a HREF="../etc"><code>etc</code></a></td>
- <td></td>
- <td>driver, accessories</td>
- </tr>
- <tr>
- <td><a HREF="../lib"><code>lib</code></a></td>
- <td></td>
- <td>runtime library source code</td>
- </tr>
- <tr>
- <td><a HREF="../cpp"><code>cpp</code></a></td>
- <td></td>
- <td>preprocessor source code</td>
- </tr>
- <tr>
- <td><a HREF="../lburg"><code>lburg</code></a></td>
- <td></td>
- <td>code-generator generator source code</td>
- </tr>
- <tr>
- <td><a HREF="../doc"><code>doc</code></a></td>
- <td></td>
- <td>this document, man pages</td>
- </tr>
- <tr>
- <td><code><a HREF="../include">include</a>/*/*</code></td>
- <td></td>
- <td>include files</td>
- </tr>
- <tr>
- <td><a HREF="../tst"><code>tst</code></a></td>
- <td></td>
- <td>test suite</td>
- </tr>
- <tr>
- <td><code><a HREF="../alpha">alpha</a>/*/tst</code></td>
- <td></td>
- <td>ALPHA test outputs</td>
- </tr>
- <tr>
- <td><code><a HREF="../mips">mips</a>/*/tst</code></td>
- <td></td>
- <td>MIPS test outputs</td>
- </tr>
- <tr>
- <td><code><a HREF="../sparc">sparc</a>/*/tst</code></td>
- <td></td>
- <td>SPARC test outputs</td>
- </tr>
- <tr>
- <td><code><a HREF="../x86">x86</a>/*/tst</code></td>
- <td></td>
- <td>X86 test outputs</td>
- </tr>
- </table>
-</blockquote>
-
-<p><code>doc/install.html</code> is the HTML file for this document. <a HREF="4.html"><code>doc/4.html</code></a>
-describes the internal differences between lcc 3.x and 4.1.</p>
-
-<p>The installation makefile is designed so that lcc can be installed from a read-only
-file system or directory, which is common in networked environments, so the distribution
-can be unloaded on a central file server. <strong>You will need an existing ANSI/ISO C
-compiler to build and install lcc.</strong></p>
-
-<h2><a NAME="unix">Installation on UNIX</a></h2>
-
-<p>The compilation components (the preprocessor, include files, and compiler proper, etc.)
-are installed in a single <em>build directory</em>. On multi-platform systems supported by
-a central file server, it's common to store the build directory in a location specific to
-the platform and to the version of lcc, and to point a symbolic link to this location. For
-example,</p>
-
-<blockquote>
- <pre>% ln -s /usr/local/lib/lcc-4.1/sparc-solaris /usr/local/lib/lcc</pre>
-</blockquote>
-
-<p>points <code>/usr/local/lib/lcc</code> to a build directory for lcc version 4.1 on the
-SPARC under Solaris. Links into <code>/usr/local/lib</code> are created for the programs <code>lcc</code>
-and <code>bprint</code>. Thus, a new distribution can be installed by building it in its
-own build directory and changing one symbolic link to point to that directory. If these
-conventions or their equivalents are followed, the host-specific parts of the driver
-program, <code>lcc</code>, can be used unmodified.</p>
-
-<p>Installation on a UNIX system involves the following steps. Below, the build directory
-is referred to as <code>BUILDDIR</code>.
-
-<ol>
- <li>Create the build directory, using a version- and platform-specific naming convention as
- suggested above, and record the name of this directory in the <code>BUILDDIR</code>
- environment variable:<blockquote>
- <pre>% setenv BUILDDIR /usr/local/lib/lcc-4.1/sparc-solaris
-% mkdir -p $BUILDDIR</pre>
- </blockquote>
- <p>Here and below, commands assume the C shell. Also, you'll need a version of <code>mkdir</code>
- that supports the <code>-p</code> option, which creates intermediate directories as
- necessary.</p>
- </li>
- <li>Copy the man pages to the repository for local man pages, e.g.,<blockquote>
- <pre>% cp doc/*.1 /usr/local/man/man1</pre>
- </blockquote>
- <p>Some users copy the man pages to the build directory and create the appropriate
- symbolic links, e.g., </p>
- <blockquote>
- <pre>% cp doc/*.1 $BUILDDIR
-% ln -s $BUILDDIR/*.1 /usr/local/man/man1</pre>
- </blockquote>
- </li>
- <li>Platform-specific include files are in directories named <code>include/</code><em>target</em><code>/</code><em>os</em>.
- Create the include directory in the build directory, and copy the include hierarchy for
- your platform to this directory, e.g.,<blockquote>
- <pre>% mkdir $BUILDDIR/include
-% cp -p -R include/sparc/solaris/* $BUILDDIR/include</pre>
- </blockquote>
- <p>Again, some users create a symbolic link to the appropriate directory in the
- distribution instead of copying the include files. For example, at Princeton, the
- distributions are stored under <code>/proj/pkg/lcc</code>, so the included files are
- &quot;installed&quot; by creating one symbolic link: </p>
- <blockquote>
- <pre>% ln -s /proj/pkg/lcc/4.1/include/sparc/solaris $BUILDDIR/include</pre>
- </blockquote>
- <p>If you're installing lcc on Linux, you <em>must</em> also plant a symbolic link named <code>gcc</code>
- to gcc's library directory, because lcc uses gcc's C preprocessor and most of gcc's header
- files:</p>
- <blockquote>
- <pre>% ln -s /usr/lib/gcc-lib/i486-linux/2.7.2.2 $BUILDDIR/gcc</pre>
- </blockquote>
- <p>The library directory shown above may be different on your Linux machine; to determine
- the correct directory, browse <code>/usr/lib/gcc-lib</code>, or execute</p>
- <blockquote>
- <pre>% cc -v tst/8q.c</pre>
- </blockquote>
- <p>and examine the diagnostic output. Make sure that <code>$BUILDDIR/gcc/cpp</code> and <code>$BUILDDIR/gcc/include</code>
- point to, respectively, gcc's C preprocessor and header files. On Linux, lcc looks for
- include files in <code>$BUILDDIR/include</code>, <code>$BUILDDIR/gcc/include</code>, and <code>/usr/include</code>,
- in that order; see <a HREF="#driver"><em>Building the Driver</em></a> and <a
- href="../etc/linux.c"><code>etc/linux.c</code></a> for details.</p>
- </li>
- <li>The <a HREF="../makefile"><code>makefile</code></a> includes the file named by the <code>CUSTOM</code>
- macro; the default is <code>custom.mk</code>, and an empty <code>custom.mk</code> is
- included in the distribution. If desired, prepare a site-specification customization file
- and define <code>CUSTOM</code> to the path of that file when invoking make in steps 5 and
- 6, e.g.,<blockquote>
- <pre>make CUSTOM=/users/drh/solaris.mk</pre>
- </blockquote>
- <p>You can, for example, use customization files to record site-specific values for macros
- instead of using environment variables, and to record targets for the steps in this list.</p>
- </li>
- <li>Build the host-specific driver, creating a custom host-specific part, if necessary. See <a
- HREF="#driver"><em>Building the Driver</em></a>.</li>
- <li>Build the preprocessor, compiler proper, library, and other accessories. See <a
- HREF="#rcc"><em>Building the Compiler</em></a>.</li>
- <li>Plant symbolic links to the build directory and to the installed programs, e.g.,<blockquote>
- <pre>% ln -s $BUILDDIR /usr/local/lib/lcc
-% ln -s /usr/local/lib/{lcc,bprint} /usr/local/bin</pre>
- </blockquote>
- <p>Some users copy <code>bprint</code> and <code>lcc</code> into <code>/usr/local/bin</code>
- instead of creating symbolic links. The advantange of creating the links for <code>lcc</code>
- and <code>bprint</code> as shown is that, once established, they point indirectly to
- whatever <code>/usr/local/lib/lcc</code> points to; installing a new version of lcc, say,
- 4.2, can be done by changing <code>/usr/local/lib/lcc</code> to point to the 4.2 build
- directory.</p>
- </li>
-</ol>
-
-<h2><a NAME="driver">Building the Driver</a></h2>
-
-<p>The preprocessor, compiler, assembler, and loader are invoked by a driver program, <code>lcc</code>,
-which is similar to <code>cc</code> on most systems. It's described in the man page <code>doc/lcc.1</code>.
-The driver is built by combining the host-independent part, <a href="../etc/lcc.c"><code>etc/lcc.c</code></a>,
-with a small host-specific part. Distributed host-specific parts are named <code>etc/</code><em>os</em><code>.c</code>,
-where <em>os</em> is the name of the operating system for the host on which <code>lcc</code>
-is being installed. If you're following the installations conventions described above, you
-can probably use one of the host-specific parts unmodified; otherwise, pick one that is
-closely related to your platform, copy it to <em>whatever</em><code>.c</code>, and edit it
-as described below. You should not have to edit <code>etc/lcc.c</code>.</p>
-
-<p>We'll use <a HREF="../etc/solaris.c"><code>etc/solaris.c</code></a> as an example in
-describing how the host-specific part works. This example illustrates all the important
-features. Make sure you have the environment variable <code>BUILDDIR</code> set correctly,
-and build the driver with a <code>make</code> command, e.g.,</p>
-
-<blockquote>
- <pre>% make HOSTFILE=etc/solaris.c lcc
-cc -g -c -DTEMPDIR=\&quot;/tmp\&quot; -o /usr/local/lib/lcc-4.1/sparc-solaris/lcc.o etc/lcc.c
-cc -g -c -o /usr/local/lib/lcc-4.1/sparc-solaris/host.o etc/solaris.c
-cc -g -o /usr/local/lib/lcc-4.1/sparc-solaris/lcc /usr/local/lib/lcc-4.1/sparc-solaris/lcc.o /usr/local/lib/lcc-4.1/sparc-solaris/host.o</pre>
-</blockquote>
-
-<p>The symbolic name <code>HOSTFILE</code> specifies the path to the host-specific part,
-either one in the distribution or <em>whatever</em><code>.c</code>. Some versions of make
-may require the <code>-e</code> option in order to read the environment.</p>
-
-<p>Here's <code>etc/solaris.c</code>:</p>
-
-<blockquote>
- <pre>/* Sparcs running Solaris 2.5.1 at CS Dept., Princeton University */
-
-#include &lt;string.h&gt;
-
-static char rcsid[] = &quot;$ Id: solaris.c,v 1.10 1998/09/14 20:36:33 drh Exp $&quot;;
-
-#ifndef LCCDIR
-#define LCCDIR &quot;/usr/local/lib/lcc/&quot;
-#endif
-#ifndef SUNDIR
-#define SUNDIR &quot;/opt/SUNWspro/SC4.2/lib/&quot;
-#endif
-
-char *suffixes[] = { &quot;.c&quot;, &quot;.i&quot;, &quot;.s&quot;, &quot;.o&quot;, &quot;.out&quot;, 0 };
-char inputs[256] = &quot;&quot;;
-char *cpp[] = { LCCDIR &quot;cpp&quot;,
- &quot;-D__STDC__=1&quot;, &quot;-Dsparc&quot;, &quot;-D__sparc__&quot;, &quot;-Dsun&quot;, &quot;-D__sun__&quot;, &quot;-Dunix&quot;,
- &quot;$1&quot;, &quot;$2&quot;, &quot;$3&quot;, 0 };
-char *include[] = { &quot;-I&quot; LCCDIR &quot;include&quot;, &quot;-I/usr/local/include&quot;,
- &quot;-I/usr/include&quot;, 0 };
-char *com[] = { LCCDIR &quot;rcc&quot;, &quot;-target=sparc/solaris&quot;,
- &quot;$1&quot;, &quot;$2&quot;, &quot;$3&quot;, 0 };
-char *as[] = { &quot;/usr/ccs/bin/as&quot;, &quot;-Qy&quot;, &quot;-s&quot;, &quot;-o&quot;, &quot;$3&quot;, &quot;$1&quot;, &quot;$2&quot;, 0 };
-char *ld[] = { &quot;/usr/ccs/bin/ld&quot;, &quot;-o&quot;, &quot;$3&quot;, &quot;$1&quot;,
- SUNDIR &quot;crti.o&quot;, SUNDIR &quot;crt1.o&quot;,
- SUNDIR &quot;values-xa.o&quot;, &quot;$2&quot;, &quot;&quot;,
- &quot;-Y&quot;, &quot;P,&quot; SUNDIR &quot;:/usr/ccs/lib:/usr/lib&quot;, &quot;-Qy&quot;,
- &quot;-L&quot; LCCDIR, &quot;-llcc&quot;, &quot;-lm&quot;, &quot;-lc&quot;, SUNDIR &quot;crtn.o&quot;, 0 };
-
-extern char *concat(char *, char *);
-
-int option(char *arg) {
- if (strncmp(arg, &quot;-lccdir=&quot;, 8) == 0) {
- cpp[0] = concat(&amp;arg[8], &quot;/cpp&quot;);
- include[0] = concat(&quot;-I&quot;, concat(&amp;arg[8], &quot;/include&quot;));
- ld[12] = concat(&quot;-L&quot;, &amp;arg[8]);
- com[0] = concat(&amp;arg[8], &quot;/rcc&quot;);
- } else if (strcmp(arg, &quot;-p&quot;) == 0) {
- ld[5] = SUNDIR &quot;mcrt1.o&quot;;
- ld[10] = &quot;P,&quot; SUNDIR &quot;libp:/usr/ccs/lib/libp:/usr/lib/libp:&quot;
- SUNDIR &quot;:/usr/ccs/lib:/usr/lib&quot;;
- } else if (strcmp(arg, &quot;-b&quot;) == 0)
- ;
- else if (strncmp(arg, &quot;-ld=&quot;, 4) == 0)
- ld[0] = &amp;arg[4];
- else
- return 0;
- return 1;
-}</pre>
-</blockquote>
-
-<p><code>LCCDIR</code> defaults to <code>&quot;/usr/local/lib/lcc/&quot;</code> unless
-it's defined by a <code>-D</code> option as part of <code>CFLAGS</code> in the make
-command, e.g.,</p>
-
-<blockquote>
- <pre>% make HOSTFILE=etc/solaris.c CFLAGS='-DLCCDIR=\&quot;/v/lib/lcc/\&quot;' lcc</pre>
-</blockquote>
-
-<p>Note the trailing slash; <code>SUNDIR</code> is provided so you can use <code>etc/solaris.c</code>
-even if you have a different version of the Sun Pro compiler suite. If you're using the
-gcc compiler tools instead of the Sun Pro tools, see <a HREF="../etc/gcc-solaris.c"><code>etc/gcc-solaris.c</code></a>.</p>
-
-<p>Most of the host-specific code is platform-specific data and templates for the commands
-that invoke the preprocessor, compiler, assembler, and loader. The <code>suffixes</code>
-array lists the file name suffixes for C source files, preprocessed source files, assembly
-language source files, object files, and executable files. <code>suffixes</code> must be
-terminated with a null pointer, as shown above. The initialization of <code>suffixes</code>
-in <code><a HREF="../etc/solaris.c">etc/solaris.c</a></code> are the typical ones for UNIX
-systems. Each element of <code>suffixes</code> is actually a list of suffixes, separated
-by semicolons; <code><a HREF="../etc/win32.c">etc/win32.c</a></code> holds an example:</p>
-
-<blockquote>
- <pre>char *suffixes[] = { &quot;.c;.C&quot;, &quot;.i;.I&quot;, &quot;.asm;.ASM;.s;.S&quot;, &quot;.obj;.OBJ&quot;, &quot;.exe&quot;, 0 };</pre>
-</blockquote>
-
-<p>When a list is given, the first suffix is used whenever lcc needs to generate a file
-name. For example, with <code><a HREF="../etc/win32.c">etc/win32.c</a></code>, lcc emits
-the generated assembly code into <code>.asm</code> files.</p>
-
-<p>The <code>inputs</code> array holds a null-terminated string of directories separated
-by colons or semicolons. These are used as the default value of <code>LCCINPUTS</code>, if
-the environment variable <code>LCCINPUTS</code> is not set; see the <a HREF="lcc.pdf">man
-page</a>.</p>
-
-<p>Each command template is an array of pointers to strings terminated with a null
-pointer; the strings are full path names of commands, arguments, or argument placeholders,
-which are described below. Commands are executed in a child process, and templates can
-contain multiple commands by separating commands with newlines. The driver runs each
-command in a new process.</p>
-
-<p>The <code>cpp</code> array gives the command for running lcc's preprocessor, <code>cpp</code>.
-Literal arguments specified in templates, e.g., <code>&quot;-Dsparc&quot;</code> in the <code>cpp</code>
-command above, are passed to the command as given.</p>
-
-<p>The strings <code>&quot;$1&quot;</code>, <code>&quot;$2&quot;</code>, and <code>&quot;$3&quot;</code>
-in templates are placeholders for <em>lists</em> of arguments that are substituted in a
-copy of the template before the command is executed. <code>$1</code> is replaced by the <em>options</em>
-specified by the user; for the preprocessor, this list always contains at least <code>-D__LCC__</code>.
-<code>$2</code> is replaced by the <em>input</em> files, and <code>$3</code> is replaced
-by the <em>output</em> file.</p>
-
-<p>Zero-length arguments after replacement are removed from the argument list before the
-command is invoked. So, for example, if the preprocessor is invoked without an output
-file, <code>&quot;$3&quot;</code> becomes <code>&quot;&quot;</code>, which is removed from
-the final argument list.</p>
-
-<p>The <code>include</code> array is a list of <code>-I</code> options that specify which
-directives should be searched to satisfy include directives. These directories are
-searched in the order given. The first directory should be the one to which the ANSI
-header files were copied as described in <a HREF="#unix">UNIX</a> or <a HREF="#win32">Windows</a>
-installation instructions. The driver adds these options to <code>cpp</code>'s arguments
-when it invokes the preprocessor, except when <code>-N</code> is specified.</p>
-
-<p><code>com</code> gives the command for invoking the compiler. This template can appear
-as shown above in a custom host-specific part, but the option <code>-target=sparc/solaris</code>
-should be edited to the <em>target</em><code>/</code><em>os</em> for your platform. If <code>com[1]</code>
-includes the string &quot;<code>win32</code>&quot;, the driver assumes it's running on
-Windows. lcc can generate code for <em>all</em> of the <em>target</em><code>/</code><em>os</em>
-combinations listed in the file <code>src/bind.c</code>. The <code>-target</code> option
-specifies the default combination. The driver's <code>-Wf</code> option can be used to
-specify other combinations; the <a HREF="lcc.pdf">man page</a> elaborates.</p>
-
-<p><code>as</code> gives the command for invoking the assembler. On Linux, you must be
-running at least version 2.8.1 of the GNU assembler; earlier versions mis-assemble some
-instructions emitted by lcc.</p>
-
-<p><code>ld</code> gives the command for invoking the loader. For the other commands, the
-list <code>$2</code> contains a single file; for <code>ld</code>, <code>$2</code> contains
-all &quot;.o&quot; files and libraries, and <code>$3</code> is <code>a.out</code>, unless
-the <code>-o</code> option is specified. As suggested in the code above, <code>ld</code>
-must also specify the appropriate startup code and default libraries, including the lcc
-library, <code>liblcc.a</code>.</p>
-
-<p>The <code>option</code> function is described below; the minimal <code>option</code>
-function just returns 0.</p>
-
-<p>You can test <code>lcc</code> with the options <code>-v -v</code> to display the
-commands that would be executed, e.g.,</p>
-
-<blockquote>
- <pre>% $BUILDDIR/lcc -v -v foo.c baz.c mylib.a -lX11
-/usr/local/lib/lcc-4.1/lcc $ Id: solaris.c,v 1.10 1998/09/14 20:36:33 drh Exp $
-foo.c:
-/usr/local/lib/lcc/cpp -D__STDC__=1 -Dsparc -D__sparc__ -Dsun -D__sun__ -Dunix -D__LCC__ -I/usr/local/lib/lcc/include -I/usr/local/include -I/usr/include foo.c /tmp/lcc266290.i
-/usr/local/lib/lcc/rcc -target=sparc/solaris -v /tmp/lcc266290.i /tmp/lcc266291.
-s
-/usr/ccs/bin/as -Qy -s -o /tmp/lcc266292.o /tmp/lcc266291.s
-baz.c:
-/usr/local/lib/lcc/cpp -D__STDC__=1 -Dsparc -D__sparc__ -Dsun -D__sun__ -Dunix -D__LCC__ -I/usr/local/lib/lcc/include -I/usr/local/include -I/usr/include baz.c /tmp/lcc266290.i
-/usr/local/lib/lcc/rcc -target=sparc/solaris -v /tmp/lcc266290.i /tmp/lcc266291.s
-/usr/ccs/bin/as -Qy -s -o /tmp/lcc266293.o /tmp/lcc266291.s
-/usr/ccs/bin/ld -o a.out /opt/SUNWspro/SC4.2/lib/crti.o /opt/SUNWspro/SC4.2/lib/crt1.o /opt/SUNWspro/SC4.2/lib/values-xa.o /tmp/lcc266292.o /tmp/lcc266293.o mylib.a -lX11 -Y P,/opt/SUNWspro/SC4.2/lib/:/usr/ccs/lib:/usr/lib -Qy -L/usr/local/lib/lcc/ -llcc -lm -lc /opt/SUNWspro/SC4.2/lib/crtn.o
-rm /tmp/lcc266293.o /tmp/lcc266290.i /tmp/lcc266291.s /tmp/lcc266292.o</pre>
-</blockquote>
-
-<p>As the output shows, <code>lcc</code> places temporary files in <code>/tmp</code>; if
-any of the environment variables <code>TMP</code>, <code>TEMP</code>, and <code>TMPDIR</code>
-are set, they override this default (in the order shown) as does the <code>-tempdir=</code><em>dir</em>
-option. The default can be changed by defining <code>TEMPDIR</code> in <code>CFLAGS</code>
-when building the driver.</p>
-
-<p>The <code>option</code> function is called for the options <code>-Wo</code>, <code>-g</code>,
-<code>-p</code>, <code>-pg</code>, and <code>-b</code> because these compiler options
-might also affect the loader's arguments. For these options, the driver calls <code>option(arg)</code>
-to give the host-specific code an opportunity to edit the <code>ld</code> command, if
-necessary. <code>option</code> can change <code>ld</code>, if necessary, and return 1 to
-announce its acceptance of the option. If the option is unsupported, <code>option</code>
-should return 0.</p>
-
-<p>For example, in response to <code>-g</code>, the <code>option</code> function shown
-above accepts the option but does nothing else, because the <code>ld</code> and <code>as</code>
-commands don't need to be modified on the SPARC. <code>-g</code> will also be added to the
-compiler's options by the host-independent part of the driver. The <code>-p</code> causes <code>option</code>
-to change the name of the startup code and changed the list of libraries. The <code>-b</code>
-option turns on <code>lcc</code>'s per-expression profiling, the code for which is in <code>liblcc.a</code>,
-so <code>option</code> need no nothing.</p>
-
-<p>On SPARCs, the driver also recognizes <code>-Bstatic</code> and <code>-Bdynamic</code>
-as linker options. The driver recognizes but ignores &quot;<code>-target</code> <em>name</em>&quot;
-option.</p>
-
-<p>The option <code>-Wo</code><em>arg</em> causes the driver to pass <em>arg</em> to <code>option</code>.
-Such options have no other effect; this mechanism is provided to support system-specific
-options that affect the commands executed by the driver. As illustrated above,
-host-specific parts should support the <code>-Wo-lccdir=</code><em>dir</em> option, which
-causes lcc's compilation components to be found in <em>dir</em>, because this option is
-used by the test scripts, and because the driver simulates a <code>-Wo-lccdir</code>
-option with the value of the environment variable <code>LCCDIR</code>, if it's defined.
-The code above rebuilds the paths to the include files, preprocessor, compiler, and
-library by calling <code>concat</code>, which is defined in <code>etc/lcc.c</code>.</p>
-
-<h2><a NAME="rcc">Building the Compiler and Accessories</a></h2>
-
-<p>To build the rest of compilation components make sure <code>BUILDDIR</code> is set
-appropriately and type &quot;<code>make all</code>&quot;. This command builds <code>librcc.a</code>
-(the compiler's private library), <code>rcc</code> (the compiler proper), <code>lburg</code>
-(the code-generator generator), <code>cpp</code> (the preprocessor), <code>liblcc.a</code>
-(the runtime library), and <code>bprint</code> (the profile printer), all in <code>BUILDDIR</code>.
-There may be warnings, but there should be no errors. If you're using an ANSI/ISO compiler
-other than <code>cc</code>, specify its name with the <code>CC=</code> option, e.g.,
-&quot;<code>make CC=gcc all</code>&quot;. If you're running on a DEC ALPHA, use &quot;<code>make
-CC='cc -std1' all</code>&quot;; the <code>-std1</code> option is essential on the ALPHA.
-If you're on a DEC 5000 running Ultrix 4.3, use &quot;<code>make CC=c89 all</code>&quot;.</p>
-
-<p>Once <code>rcc</code> is built with the host C compiler, run the test suite to verify
-that <code>rcc</code> is working correctly. If any of the steps below fail, contact us
-(see <a HREF="#bugs"><em>Reporting Bugs</em></a>). The commands in the makefile run the
-shell script <code>src/run.sh</code> on each C program in the test suite, <code>tst/*.c</code>.
-It uses the driver, <code>$BUILDDIR/lcc</code>, so you must have the driver in the build
-directory before testing <code>rcc</code>. The <em>target</em><code>/</code><em>os</em>
-combination is read from the variable <code>TARGET</code>, which must be specified when
-invoking <code>make</code>:</p>
-
-<blockquote>
- <pre>% make TARGET=sparc/solaris test
-mkdir -p /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/8q.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/array.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/cf.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/cq.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/cvt.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/fields.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/front.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/incr.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/init.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/limits.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/paranoia.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/sort.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/spill.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/stdarg.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/struct.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/switch.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/wf1.s:
-/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/yacc.s:</pre>
-</blockquote>
-
-<p>Each line in the output above is of the form</p>
-
-<blockquote>
- <p><code>$BUILDDIR/rcc -target=</code><em>target</em><code>/</code><em>os</em><code>$BUILDDIR/</code><em>target</em><code>/</code><em>os</em><code>/</code><em>X</em><code>.s:</code></p>
-</blockquote>
-
-<p>where <em>X</em> is the base name of the C program <em>X</em><code>.c</code> in the
-test suite. This output identifies the compiler and the target, e.g., &quot;<code>$BUILDDIR/rcc</code>
-is generating code for a <code>sparc</code> running the <code>solaris</code> operating
-system.&quot;</p>
-
-<p>For each program in the test suite, <code>src/run.sh</code> compiles the program, drops
-the generated assembly language code in <code>BUILDDIR</code>/<em>target</em><code>/</code><em>os</em>,
-and uses <code>diff</code> to compare the generated assembly code with the expected code
-(the code expected for <code>tst/8q.c</code> on the SPARC under Solaris is in <code>sparc/solaris/tst/8q.sbk</code>,
-etc.). If there are differences, the script executes the generated code with the input
-given in <code>tst</code> (the input for <code>tst/8q.c</code> is in <code>tst/8q.0</code>,
-etc.) and compares the output with the expected output (the expected output from <code>tst/8q.c</code>
-on the SPARC under Solaris is in <code>sparc/solaris/tst/8q.1bk</code>, etc.). The script
-also compares the diagnostics from the compiler with the expected diagnostics.</p>
-
-<p>On some systems, there may be a few differences between the generated code and the
-expected code. These differences occur because the expected code is generated by cross
-compilation and the least significant bits of some floating-point constants differ from
-those bits in constants generated on your system. On Linux, there may be differences
-because of differences in the header files between our system and yours. There should be
-no differences in the output from executing the test programs.</p>
-
-<p>Next, run the &quot;triple test&quot;, which builds <code>rcc</code> using itself:</p>
-
-<blockquote>
- <pre>% make triple
-/usr/local/lib/lcc-4.1/sparc-solaris/lcc -o /usr/local/lib/lcc-4.1/sparc-solaris/1rcc -d0.6 -Wo-lccdir=/usr/local/lib/lcc-4.1/sparc-solaris -B/usr/local/lib/lcc-4.1/sparc-solaris/ -Isrc src/*.c
-src/alloc.c:
-...
-src/x86.c:
-/usr/local/lib/lcc-4.1/sparc-solaris/lcc -o /usr/local/lib/lcc-4.1/sparc-solaris/1rcc -d0.6 -Wo-lccdir=/usr/local/lib/lcc-4.1/sparc-solaris -B/usr/local/lib/lcc-4.1/sparc-solaris/ -Isrc src/*.c
-src/alloc.c:
-...
-src/x86.c:
-strip /usr/local/lib/lcc-4.1/sparc-solaris/[12]rcc
-dd if=/usr/local/lib/lcc-4.1/sparc-solaris/1rcc of=/usr/local/lib/lcc-4.1/sparc-solaris/rcc1 bs=512 skip=1
-769+1 records in
-769+1 records out
-dd if=/usr/local/lib/lcc-4.1/sparc-solaris/2rcc of=/usr/local/lib/lcc-4.1/sparc-solaris/rcc2 bs=512 skip=1
-769+1 records in
-769+1 records out
-if cmp /usr/local/lib/lcc-4.1/sparc-solaris/rcc[12]; then \
- mv /usr/local/lib/lcc-4.1/sparc-solaris/2rcc /usr/local/lib/lcc-4.1/sparc-solaris/rcc; \
- rm -f /usr/local/lib/lcc-4.1/sparc-solaris/1rcc /usr/local/lib/lcc-4.1/sparc-solaris/rcc[12]; fi</pre>
-</blockquote>
-
-<p>This command builds <code>rcc</code> twice; once using the <code>rcc</code> built by <code>cc</code>
-and again using the <code>rcc</code> built by <code>lcc</code>. The resulting binaries are
-compared. They should be identical, as shown at the end of the output above. If they
-aren't, our compiler is generating incorrect code; <a HREF="#bugs">contact</a> us.</p>
-
-<p>The final version of <code>rcc</code> should also pass the test suite; that is, the
-output from</p>
-
-<blockquote>
- <pre>% make TARGET=sparc/solaris test</pre>
-</blockquote>
-
-<p>should be identical to that from the previous <code>make test</code>.</p>
-
-<p>The command &quot;<code>make clean</code>&quot; cleans up, but does not remove <code>rcc</code>,
-etc., and &quot;<code>make clobber</code>&quot; cleans up and removes <code>lcc</code>, <code>rcc</code>,
-and the other accessories. Test directories under <code>BUILDDIR</code> are <em>not</em>
-removed; you'll need to remove these by hand, e.g.,</p>
-
-<blockquote>
- <pre>% rm -fr $BUILDDIR/sparc</pre>
-</blockquote>
-
-<p>The code generators for the other targets can be tested by specifying the desired <em>target</em><code>/</code><em>os</em>
-and setting an environment variable that controls what <code>src/run.sh</code> does. For
-example, to test the MIPS code generator, type</p>
-
-<blockquote>
- <pre>% setenv REMOTEHOST noexecute
-% make TARGET=mips/irix test</pre>
-</blockquote>
-
-<p>As above, <code>src/run.sh</code> compares the MIPS code generated with what's
-expected. There should be no differences. Setting <code>REMOTEHOST</code> to <code>noexecute</code>
-suppresses the assembly and execution of the generated code. If you set <code>REMOTEHOST</code>
-to the name of a MIPS machine to which you can <code>rlogin</code>, <code>src/run.sh</code>
-will <code>rcp</code> the generated code to that machine and execute it there, if
-necessary. See <code>src/run.sh</code> for the details.</p>
-
-<p>You can use lcc as a cross compiler. The options <code>-S</code> and <code>-Wf-target=</code><em>target/os</em>
-generate assembly code for the specified target, which is any of those listed in the file <code>src/bind.c</code>.
-For example, </p>
-
-<blockquote>
- <pre>% lcc -Wf-target=mips/irix -S tst/8q.c</pre>
-</blockquote>
-
-<p>generates MIPS code for <code>tst/8q.c</code> in <code>8q.s</code>.</p>
-
-<p>lcc can also generate code for a &quot;symbolic&quot; target. This target is used
-routinely in front-end development, and its output is a printable representation of the
-input program, e.g., the dags constructed by the front end are printed, and other
-interface functions print their arguments. You can specify this target with the option <code>-Wf-target=symbolic</code>.
-For example,</p>
-
-<blockquote>
- <pre>% lcc -Wf-target=symbolic -S tst/8q.c</pre>
-</blockquote>
-
-<p>generates symbolic output for <code>tst/8q.c</code> in <code>8q.s</code>. Adding <code>-Wf-html</code>
-causes the symbolic target to emit HTML instead of plain text. Finally, the option <code>-Wf-target=null</code>
-specifies the &quot;null&quot; target for which lcc emits nothing and thus only checks the
-syntax and semantics of its input files.</p>
-
-<h2><a NAME="win32">Installation on Windows NT 4.0 or Windows 95/98</a></h2>
-
-<p>On Windows NT 4.0 and Windows 95/98, lcc is designed to work with Microsoft's Visual
-C++ 5.0 (VC) and Microsoft's Assembler, MASM 6.11d. It uses the VC header files,
-libraries, and command-line tools, and it uses MASM to assemble the code it generates. If
-you have MASM 6.11, make sure you <a
-HREF="http://support.microsoft.com/support/kb/articles/Q138/9/83.asp">upgrade to 6.11d</a>,
-because earlier 6.11 releases do not generate correct COFF object files.</p>
-
-<p>Building the distribution components from the ground up requires Microsoft's Visual
-C/C++ 5.0 compiler, Microsoft's make, <code>nmake</code>, and the standard Windows command
-interpreter. <a HREF="../makefile.nt"><code>makefile.nt</code></a> is written to use only <code>nmake</code>.
-As on UNIX systems, the compilation components are installed in a single <em>build
-directory</em>, and the top-level programs, <code>lcc.exe</code> and <code>bprint.exe</code>,
-are installed in a directory on the PATH. If the conventions used below are followed, the
-Windows-specific parts of the driver program, <code>lcc.exe</code>, can be used
-unmodified.</p>
-
-<p>Building from the source distribution on a Windows system involves the following steps.
-Below, the build directory is referred to as <code>BUILDDIR</code>, and the distribution
-is in <code>\dist\lcc\4.1</code>.
-
-<ol>
- <li>Create the build directory, perhaps using a version- and platform-specific naming
- convention as suggested in <a HREF="#unix"><em>Installation on UNIX</em></a>, and record
- the name of this directory in the <code>BUILDDIR</code> environment variable:<blockquote>
- <pre>C:\dist\lcc\4.1&gt;set BUILDDIR=\progra~1\lcc\4.1\bin
-C:\dist\lcc\4.1&gt;mkdir %BUILDDIR%</pre>
- </blockquote>
- <p>The default build, or installation, directory is <code>\Program Files\lcc\4.1\bin</code>,
- but the <code>nmake</code> commands require that you use the corresponding 8.3 file name, <code>progra~1</code>,
- instead of <code>Program Files</code>.</p>
- </li>
- <li><a HREF="../etc/win32.c"><code>etc\win32.c</code></a> is the Windows-specific part of
- the driver. It assumes that environment variable <code>include</code> gives the locations
- of the VC header files and that the linker (<code>link.exe</code>) and the assembler (<code>ml.exe</code>)
- are on the PATH. It also assumes that the macro <code>LCCDIR</code> gives the build
- directory. If necessary, revise a copy of <a HREF="../etc/win32.c"><code>etc\win32.c</code></a>
- to reflect the conventions on your computer (see <a HREF="#driver"><em>Building the Driver</em></a>),
- then build the driver, specifying the default temporary directory, if necessary:<blockquote>
- <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt TEMPDIR=\\temp HOSTFILE=etc/win32.c lcc
-...
- cl -nologo -Zi -MLd -Fd\progra~1\lcc\4.1\bin\ -c -DTEMPDIR=\&quot;\\temp\&quot; -Fo\progra~1\lcc\4.1\bin\lcc.obj etc/lcc.c
-lcc.c
- cl -nologo -Zi -MLd -Fd\progra~1\lcc\4.1\bin\ -c -Fo\progra~1\lcc\4.1\bin\host.obj etc/win32.c
-win32.c
- cl -nologo -Zi -MLd -Fd\progra~1\lcc\4.1\bin\ -Fe\progra~1\lcc\4.1\bin\lcc.exe \progra~1\lcc\4.1\bin\lcc.obj \progra~1\lcc\4.1\bin\host.obj</pre>
- </blockquote>
- <p>If you make a copy of <code>etc\win32.c</code>, specify the path of the copy as the
- value of <code>HOSTFILE</code>. For example, if you copy <code>etc\win32.c</code> to <code>BUILDDIR</code>
- and edit it, use the command</p>
- <blockquote>
- <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt TEMPDIR=\\temp HOSTFILE=%BUILDDIR%\win32.c lcc</pre>
- </blockquote>
- </li>
- <li>Build the preprocessor, compiler proper, library, and other accessories (see <a
- HREF="#rcc"><em>Building the Compiler</em></a>):<blockquote>
- <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt all</pre>
- </blockquote>
- <p>This command uses the VC command-line tools <code>cl</code> and <code>lib</code> to
- build <code>bprint.exe</code>, <code>cpp.exe</code>, <code>lburg.exe</code>, <code>liblcc.lib</code>,
- <code>librcc.lib</code>, and <code>rcc.exe</code>, all in <code>BUILDDIR</code>. There may
- be some warnings, but there should be no warnings.</p>
- </li>
- <li>Create a test directory and run the test suite:<blockquote>
- <pre>C:\dist\lcc\4.1&gt;mkdir %BUILDDIR%\x86\win32\tst
-C:\dist\lcc\4.1&gt;nmake -f makefile.nt test</pre>
- </blockquote>
- <p>This command compiles each program in <a HREF="../tst">tst</a>, compares the generated
- assembly code and diagnostics with the expected assembly code and diagnostics, executes
- the program, and compares the output with the expected output (using <code>fc</code>). For
- example, when the nmake command compiles <a HREF="../tst/8q.c"><code>tst\8q.c</code></a>,
- it leaves the generated assembly code and diagnostic output in <code>%BUILDDIR%\x86\win32\tst\8q.s</code>
- and <code>%BUILDDIR%\x86\win32\tst\8q.2</code>, and it compares them with the expected
- results in <code>x86\win32\tst\8q.sbk</code>. It builds the executable program in <code>%BUILDDIR%\x86\win32\tst\8q.exe</code>,
- runs it, and redirects the output to <code>%BUILDDIR%\x86\win32\tst\8q.1</code>, which it
- compares with <code>x86\win32\tst\8q.1bk</code>. The output from this step is voluminous,
- but there should be no differences and no errors.</p>
- </li>
- <li>Run the &quot;triple&quot; test, which compiles <code>rcc</code> with itself and
- verifies the results:<blockquote>
- <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt triple
-...
-\progra~1\lcc\4.1\bin\x86.c:
- Assembling: C:/TEMP/lcc2001.asm
- fc /b \progra~1\lcc\4.1\bin\1rcc.exe \progra~1\lcc\4.1\bin\2rcc.exe
-Comparing files \progra~1\lcc\4.1\bin\1rcc.exe and \progra~1\lcc\4.1\bin\2RCC.EXE
-00000088: B4 D5</pre>
- </blockquote>
- <p>This command builds <code>rcc</code> twice; once using the <code>rcc</code> built by VC
- and again using the <code>rcc</code> built by <code>lcc</code>. The resulting binaries are
- compared using <code>fc</code>. They should be identical, except for one or two bytes of
- timestamp data, as shown at the end of the output above. If they aren't, our compiler is
- generating incorrect code; <a HREF="#bugs">contact</a> us.</p>
- </li>
- <li>Copy <code>lcc.exe</code> and <code>bprint.exe</code> to a directory on your PATH, e.g.,<blockquote>
- <pre>C:\dist\lcc\4.1&gt;copy %BUILDDIR%\lcc.exe \bin
- 1 file(s) copied.
-
-C:\dist\lcc\4.1&gt;copy %BUILDDIR%\bprint.exe \bin
- 1 file(s) copied.</pre>
- </blockquote>
- </li>
- <li>Finally, clean up:<blockquote>
- <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt clean</pre>
- </blockquote>
- <p>This command removes the derived files in <code>BUILDDIR</code>, but does not remove <code>rcc.exe</code>,
- etc.; &quot;<code>nmake -f makefile.nt clobber</code>&quot; cleans up and removes all
- executables and libraries. Test directories under <code>BUILDDIR</code> are <em>not</em>
- removed; you'll need to remove these by hand, e.g.,</p>
- <blockquote>
- <pre>C:\dist\lcc\4.1&gt;rmdir %BUILDDIR%\x86 /s
-\progra~1\lcc\4.1\bin\x86, Are you sure (Y/N)? y</pre>
- </blockquote>
- </li>
-</ol>
-
-<h2><a NAME="bugs">Reporting Bugs</a></h2>
-
-<p>lcc is a large, complex program. We find and repair errors routinely. If you think that
-you've found a error, follow the steps below, which are adapted from the instructions in
-Chapter 1 of <cite>A Retargetable C Compiler: Design and Implementation</cite>.
-
-<ol>
- <li>If you don't have a source file that displays the error, create one. Most errors are
- exposed when programmers try to compile a program they think is valid, so you probably
- have a demonstration program already.</li>
- <li>Preprocess the source file and capture the preprocessor output. Discard the original
- code.</li>
- <li>Prune your source code until it can be pruned no more without sending the error into
- hiding. We prune most error demonstrations to fewer than five lines.</li>
- <li>Confirm that the source file displays the error with the <em>distributed</em> version of
- lcc. If you've changed lcc and the error appears only in your version, then you'll have to
- chase the error yourself, even if it turns out to be our fault, because we can't work on
- your code.</li>
- <li>Annotate your code with comments that explain why you think that lcc is wrong. If lcc
- dies with an assertion failure, please tell us where it died. If lcc crashes, please
- report the last part of the call chain if you can. If lcc is rejecting a program you think
- is valid, please tell us why you think it's valid, and include supporting page numbers in
- the ANSI Standard, Appendix A in <cite>The C Programming Language</cite>, or the
- appropriate section in <cite>C: A Reference Manual</cite>, 4th edition by S. B. Harbison
- and G. L. Steele, Jr. (Prentice Hall, 1995). If lcc silently generates incorrect code for
- some construct, please include the corrupt assembly code in the comments and flag the
- incorrect instructions if you can.</li>
- <li>Confirm that your error hasn't been fixed already. The latest version of lcc is always
- available for anonymous <code>ftp</code> from <code>ftp.cs.princeton.edu</code> in <a
- HREF="ftp://ftp.cs.princeton.edu/pub/lcc"><code>pub/lcc</code></a>. A <a
- HREF="ftp://ftp.cs.princeton.edu/pub/lcc/README"><code>README</code></a> file there gives
- acquistion details, and the <a HREF="../LOG"><code>LOG</code></a> file reports what errors
- were fixed and when they were fixed. If you report a error that's been fixed, you might
- get a canned reply.</li>
- <li>Send your program by electronic mail to <code>lcc-bugs@cs.princeton.edu</code>. Please
- send only valid C programs; put all remarks in C comments so that we can process reports
- semiautomatically.</li>
-</ol>
-
-<h2><a NAME="mailinglist">Keeping in Touch</a></h2>
-
-<p>There is an lcc mailing list for general information about lcc. To be added to the
-list, send a message with the 1-line body</p>
-
-<blockquote>
- <pre>subscribe lcc</pre>
-</blockquote>
-
-<p>to <code>majordomo@cs.princeton.edu</code>. This line must appear in the message body;
-&quot;Subject:&quot; lines are ignored. To learn more about mailing lists served by <code>majordomo</code>,
-send a message with the 1-word body &quot;<code>help</code>&quot; to <code>majordomo@cs.princeton.edu</code>.
-Mail sent to <code>lcc@cs.princeton.edu</code> is forwarded to everyone on the mailing
-list.</p>
-
-<p>There is also an <code>lcc-bugs</code> mailing list for reporting bugs; subscribe to it
-by sending a message with the 1-line body </p>
-
-<blockquote>
- <pre>subscribe lcc-bugs</pre>
-</blockquote>
-
-<p>to <code>majordomo@cs.princeton.edu</code>. Mail addressed to <var>lcc-bugs@cs.princeton.edu</var>
-is forwarded to everyone on this list.</p>
-
-<hr>
-
-<address>
- <a HREF="http://www.research.microsoft.com/~cwfraser/">Chris Fraser</a> / <a
- HREF="mailto:cwfraser@microsoft.com">cwfraser@microsoft.com</a><br>
- <a HREF="http://www.research.microsoft.com/~drh/">David Hanson</a> / <a
- HREF="mailto:drh@microsoft.com">drh@microsoft.com</a><br>
- $Revision: 145 $ $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $
-</address>
-</body>
-</html>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+
+<head>
+<link HREF="mailto:drh@cs.princeton.edu" REV="made" TITLE="David R. Hanson">
+<title>Installing lcc</title>
+</head>
+
+<body>
+
+<h1>Installing lcc</h1>
+
+<p ALIGN="LEFT"><strong><a HREF="http://www.research.microsoft.com/~cwfraser/">Christopher
+W. Fraser</a> and <a HREF="http://www.research.microsoft.com/~drh/">David R. Hanson</a>, <a
+HREF="http://www.research.microsoft.com/">Microsoft Research</a></strong></p>
+
+<h2>Contents</h2>
+
+<dir>
+ <li><a HREF="#intro">Introduction</a></li>
+ <li><a HREF="#unix">Installation on UNIX</a></li>
+ <li><a HREF="#driver">Building the Driver</a></li>
+ <li><a HREF="#rcc">Building the Compiler and Accessories</a></li>
+ <li><a HREF="#win32">Installation on Windows NT 4.0 and Windows 95/98</a></li>
+ <li><a HREF="#bugs">Reporting Bugs</a></li>
+ <li><a HREF="#mailinglist">Keeping in Touch</a></li>
+</dir>
+
+<h2><a NAME="intro">Introduction</a></h2>
+
+<p><a HREF="http://www.cs.princeton.edu/software/lcc/">lcc</a> is the ANSI C compiler
+described in our book <cite>A Retargetable C Compiler: Design and Implementation</cite>
+(Addison-Wesley, 1995, ISBN 0-8053-1670-1).</p>
+
+<p>If you're installing lcc on a UNIX system, read the remainder of this section and
+continue with the next section. If you're installing lcc on a Windows NT 4.0 or Windows
+95/98 system, and you intend only to <u>use</u> lcc, you can run the <a
+href="ftp://ftp.cs.princeton.edu/pub/packages/lcc/lcc41.exe">InstallShield executable</a>,
+which installs the binaries and the documentation. If you want to <u>modify</u> lcc or <u>rebuild</u>
+it from the source files, you need the <a
+href="ftp://ftp.cs.princeton.edu/packages/lcc/lcc41.zip">complete distribution</a>, and
+you should read the rest of the section, the following three sections, and the <a
+HREF="#win32">Windows NT/95/98</a> section.</p>
+
+<p>Extract the distribution into its own directory. All non-absolute paths below are
+relative to this directory. The distribution holds the following subdirectories.</p>
+
+<blockquote>
+ <table BORDER="0" CELLPADDING="1" CELLSPACING="1" WIDTH="80%">
+ <tr>
+ <td><a HREF="../src"><code>src</code></a></td>
+ <td></td>
+ <td>source code</td>
+ </tr>
+ <tr>
+ <td><a HREF="../etc"><code>etc</code></a></td>
+ <td></td>
+ <td>driver, accessories</td>
+ </tr>
+ <tr>
+ <td><a HREF="../lib"><code>lib</code></a></td>
+ <td></td>
+ <td>runtime library source code</td>
+ </tr>
+ <tr>
+ <td><a HREF="../cpp"><code>cpp</code></a></td>
+ <td></td>
+ <td>preprocessor source code</td>
+ </tr>
+ <tr>
+ <td><a HREF="../lburg"><code>lburg</code></a></td>
+ <td></td>
+ <td>code-generator generator source code</td>
+ </tr>
+ <tr>
+ <td><a HREF="../doc"><code>doc</code></a></td>
+ <td></td>
+ <td>this document, man pages</td>
+ </tr>
+ <tr>
+ <td><code><a HREF="../include">include</a>/*/*</code></td>
+ <td></td>
+ <td>include files</td>
+ </tr>
+ <tr>
+ <td><a HREF="../tst"><code>tst</code></a></td>
+ <td></td>
+ <td>test suite</td>
+ </tr>
+ <tr>
+ <td><code><a HREF="../alpha">alpha</a>/*/tst</code></td>
+ <td></td>
+ <td>ALPHA test outputs</td>
+ </tr>
+ <tr>
+ <td><code><a HREF="../mips">mips</a>/*/tst</code></td>
+ <td></td>
+ <td>MIPS test outputs</td>
+ </tr>
+ <tr>
+ <td><code><a HREF="../sparc">sparc</a>/*/tst</code></td>
+ <td></td>
+ <td>SPARC test outputs</td>
+ </tr>
+ <tr>
+ <td><code><a HREF="../x86">x86</a>/*/tst</code></td>
+ <td></td>
+ <td>X86 test outputs</td>
+ </tr>
+ </table>
+</blockquote>
+
+<p><code>doc/install.html</code> is the HTML file for this document. <a HREF="4.html"><code>doc/4.html</code></a>
+describes the internal differences between lcc 3.x and 4.1.</p>
+
+<p>The installation makefile is designed so that lcc can be installed from a read-only
+file system or directory, which is common in networked environments, so the distribution
+can be unloaded on a central file server. <strong>You will need an existing ANSI/ISO C
+compiler to build and install lcc.</strong></p>
+
+<h2><a NAME="unix">Installation on UNIX</a></h2>
+
+<p>The compilation components (the preprocessor, include files, and compiler proper, etc.)
+are installed in a single <em>build directory</em>. On multi-platform systems supported by
+a central file server, it's common to store the build directory in a location specific to
+the platform and to the version of lcc, and to point a symbolic link to this location. For
+example,</p>
+
+<blockquote>
+ <pre>% ln -s /usr/local/lib/lcc-4.1/sparc-solaris /usr/local/lib/lcc</pre>
+</blockquote>
+
+<p>points <code>/usr/local/lib/lcc</code> to a build directory for lcc version 4.1 on the
+SPARC under Solaris. Links into <code>/usr/local/lib</code> are created for the programs <code>lcc</code>
+and <code>bprint</code>. Thus, a new distribution can be installed by building it in its
+own build directory and changing one symbolic link to point to that directory. If these
+conventions or their equivalents are followed, the host-specific parts of the driver
+program, <code>lcc</code>, can be used unmodified.</p>
+
+<p>Installation on a UNIX system involves the following steps. Below, the build directory
+is referred to as <code>BUILDDIR</code>.
+
+<ol>
+ <li>Create the build directory, using a version- and platform-specific naming convention as
+ suggested above, and record the name of this directory in the <code>BUILDDIR</code>
+ environment variable:<blockquote>
+ <pre>% setenv BUILDDIR /usr/local/lib/lcc-4.1/sparc-solaris
+% mkdir -p $BUILDDIR</pre>
+ </blockquote>
+ <p>Here and below, commands assume the C shell. Also, you'll need a version of <code>mkdir</code>
+ that supports the <code>-p</code> option, which creates intermediate directories as
+ necessary.</p>
+ </li>
+ <li>Copy the man pages to the repository for local man pages, e.g.,<blockquote>
+ <pre>% cp doc/*.1 /usr/local/man/man1</pre>
+ </blockquote>
+ <p>Some users copy the man pages to the build directory and create the appropriate
+ symbolic links, e.g., </p>
+ <blockquote>
+ <pre>% cp doc/*.1 $BUILDDIR
+% ln -s $BUILDDIR/*.1 /usr/local/man/man1</pre>
+ </blockquote>
+ </li>
+ <li>Platform-specific include files are in directories named <code>include/</code><em>target</em><code>/</code><em>os</em>.
+ Create the include directory in the build directory, and copy the include hierarchy for
+ your platform to this directory, e.g.,<blockquote>
+ <pre>% mkdir $BUILDDIR/include
+% cp -p -R include/sparc/solaris/* $BUILDDIR/include</pre>
+ </blockquote>
+ <p>Again, some users create a symbolic link to the appropriate directory in the
+ distribution instead of copying the include files. For example, at Princeton, the
+ distributions are stored under <code>/proj/pkg/lcc</code>, so the included files are
+ &quot;installed&quot; by creating one symbolic link: </p>
+ <blockquote>
+ <pre>% ln -s /proj/pkg/lcc/4.1/include/sparc/solaris $BUILDDIR/include</pre>
+ </blockquote>
+ <p>If you're installing lcc on Linux, you <em>must</em> also plant a symbolic link named <code>gcc</code>
+ to gcc's library directory, because lcc uses gcc's C preprocessor and most of gcc's header
+ files:</p>
+ <blockquote>
+ <pre>% ln -s /usr/lib/gcc-lib/i486-linux/2.7.2.2 $BUILDDIR/gcc</pre>
+ </blockquote>
+ <p>The library directory shown above may be different on your Linux machine; to determine
+ the correct directory, browse <code>/usr/lib/gcc-lib</code>, or execute</p>
+ <blockquote>
+ <pre>% cc -v tst/8q.c</pre>
+ </blockquote>
+ <p>and examine the diagnostic output. Make sure that <code>$BUILDDIR/gcc/cpp</code> and <code>$BUILDDIR/gcc/include</code>
+ point to, respectively, gcc's C preprocessor and header files. On Linux, lcc looks for
+ include files in <code>$BUILDDIR/include</code>, <code>$BUILDDIR/gcc/include</code>, and <code>/usr/include</code>,
+ in that order; see <a HREF="#driver"><em>Building the Driver</em></a> and <a
+ href="../etc/linux.c"><code>etc/linux.c</code></a> for details.</p>
+ </li>
+ <li>The <a HREF="../makefile"><code>makefile</code></a> includes the file named by the <code>CUSTOM</code>
+ macro; the default is <code>custom.mk</code>, and an empty <code>custom.mk</code> is
+ included in the distribution. If desired, prepare a site-specification customization file
+ and define <code>CUSTOM</code> to the path of that file when invoking make in steps 5 and
+ 6, e.g.,<blockquote>
+ <pre>make CUSTOM=/users/drh/solaris.mk</pre>
+ </blockquote>
+ <p>You can, for example, use customization files to record site-specific values for macros
+ instead of using environment variables, and to record targets for the steps in this list.</p>
+ </li>
+ <li>Build the host-specific driver, creating a custom host-specific part, if necessary. See <a
+ HREF="#driver"><em>Building the Driver</em></a>.</li>
+ <li>Build the preprocessor, compiler proper, library, and other accessories. See <a
+ HREF="#rcc"><em>Building the Compiler</em></a>.</li>
+ <li>Plant symbolic links to the build directory and to the installed programs, e.g.,<blockquote>
+ <pre>% ln -s $BUILDDIR /usr/local/lib/lcc
+% ln -s /usr/local/lib/{lcc,bprint} /usr/local/bin</pre>
+ </blockquote>
+ <p>Some users copy <code>bprint</code> and <code>lcc</code> into <code>/usr/local/bin</code>
+ instead of creating symbolic links. The advantange of creating the links for <code>lcc</code>
+ and <code>bprint</code> as shown is that, once established, they point indirectly to
+ whatever <code>/usr/local/lib/lcc</code> points to; installing a new version of lcc, say,
+ 4.2, can be done by changing <code>/usr/local/lib/lcc</code> to point to the 4.2 build
+ directory.</p>
+ </li>
+</ol>
+
+<h2><a NAME="driver">Building the Driver</a></h2>
+
+<p>The preprocessor, compiler, assembler, and loader are invoked by a driver program, <code>lcc</code>,
+which is similar to <code>cc</code> on most systems. It's described in the man page <code>doc/lcc.1</code>.
+The driver is built by combining the host-independent part, <a href="../etc/lcc.c"><code>etc/lcc.c</code></a>,
+with a small host-specific part. Distributed host-specific parts are named <code>etc/</code><em>os</em><code>.c</code>,
+where <em>os</em> is the name of the operating system for the host on which <code>lcc</code>
+is being installed. If you're following the installations conventions described above, you
+can probably use one of the host-specific parts unmodified; otherwise, pick one that is
+closely related to your platform, copy it to <em>whatever</em><code>.c</code>, and edit it
+as described below. You should not have to edit <code>etc/lcc.c</code>.</p>
+
+<p>We'll use <a HREF="../etc/solaris.c"><code>etc/solaris.c</code></a> as an example in
+describing how the host-specific part works. This example illustrates all the important
+features. Make sure you have the environment variable <code>BUILDDIR</code> set correctly,
+and build the driver with a <code>make</code> command, e.g.,</p>
+
+<blockquote>
+ <pre>% make HOSTFILE=etc/solaris.c lcc
+cc -g -c -DTEMPDIR=\&quot;/tmp\&quot; -o /usr/local/lib/lcc-4.1/sparc-solaris/lcc.o etc/lcc.c
+cc -g -c -o /usr/local/lib/lcc-4.1/sparc-solaris/host.o etc/solaris.c
+cc -g -o /usr/local/lib/lcc-4.1/sparc-solaris/lcc /usr/local/lib/lcc-4.1/sparc-solaris/lcc.o /usr/local/lib/lcc-4.1/sparc-solaris/host.o</pre>
+</blockquote>
+
+<p>The symbolic name <code>HOSTFILE</code> specifies the path to the host-specific part,
+either one in the distribution or <em>whatever</em><code>.c</code>. Some versions of make
+may require the <code>-e</code> option in order to read the environment.</p>
+
+<p>Here's <code>etc/solaris.c</code>:</p>
+
+<blockquote>
+ <pre>/* Sparcs running Solaris 2.5.1 at CS Dept., Princeton University */
+
+#include &lt;string.h&gt;
+
+static char rcsid[] = &quot;$ Id: solaris.c,v 1.10 1998/09/14 20:36:33 drh Exp $&quot;;
+
+#ifndef LCCDIR
+#define LCCDIR &quot;/usr/local/lib/lcc/&quot;
+#endif
+#ifndef SUNDIR
+#define SUNDIR &quot;/opt/SUNWspro/SC4.2/lib/&quot;
+#endif
+
+char *suffixes[] = { &quot;.c&quot;, &quot;.i&quot;, &quot;.s&quot;, &quot;.o&quot;, &quot;.out&quot;, 0 };
+char inputs[256] = &quot;&quot;;
+char *cpp[] = { LCCDIR &quot;cpp&quot;,
+ &quot;-D__STDC__=1&quot;, &quot;-Dsparc&quot;, &quot;-D__sparc__&quot;, &quot;-Dsun&quot;, &quot;-D__sun__&quot;, &quot;-Dunix&quot;,
+ &quot;$1&quot;, &quot;$2&quot;, &quot;$3&quot;, 0 };
+char *include[] = { &quot;-I&quot; LCCDIR &quot;include&quot;, &quot;-I/usr/local/include&quot;,
+ &quot;-I/usr/include&quot;, 0 };
+char *com[] = { LCCDIR &quot;rcc&quot;, &quot;-target=sparc/solaris&quot;,
+ &quot;$1&quot;, &quot;$2&quot;, &quot;$3&quot;, 0 };
+char *as[] = { &quot;/usr/ccs/bin/as&quot;, &quot;-Qy&quot;, &quot;-s&quot;, &quot;-o&quot;, &quot;$3&quot;, &quot;$1&quot;, &quot;$2&quot;, 0 };
+char *ld[] = { &quot;/usr/ccs/bin/ld&quot;, &quot;-o&quot;, &quot;$3&quot;, &quot;$1&quot;,
+ SUNDIR &quot;crti.o&quot;, SUNDIR &quot;crt1.o&quot;,
+ SUNDIR &quot;values-xa.o&quot;, &quot;$2&quot;, &quot;&quot;,
+ &quot;-Y&quot;, &quot;P,&quot; SUNDIR &quot;:/usr/ccs/lib:/usr/lib&quot;, &quot;-Qy&quot;,
+ &quot;-L&quot; LCCDIR, &quot;-llcc&quot;, &quot;-lm&quot;, &quot;-lc&quot;, SUNDIR &quot;crtn.o&quot;, 0 };
+
+extern char *concat(char *, char *);
+
+int option(char *arg) {
+ if (strncmp(arg, &quot;-lccdir=&quot;, 8) == 0) {
+ cpp[0] = concat(&amp;arg[8], &quot;/cpp&quot;);
+ include[0] = concat(&quot;-I&quot;, concat(&amp;arg[8], &quot;/include&quot;));
+ ld[12] = concat(&quot;-L&quot;, &amp;arg[8]);
+ com[0] = concat(&amp;arg[8], &quot;/rcc&quot;);
+ } else if (strcmp(arg, &quot;-p&quot;) == 0) {
+ ld[5] = SUNDIR &quot;mcrt1.o&quot;;
+ ld[10] = &quot;P,&quot; SUNDIR &quot;libp:/usr/ccs/lib/libp:/usr/lib/libp:&quot;
+ SUNDIR &quot;:/usr/ccs/lib:/usr/lib&quot;;
+ } else if (strcmp(arg, &quot;-b&quot;) == 0)
+ ;
+ else if (strncmp(arg, &quot;-ld=&quot;, 4) == 0)
+ ld[0] = &amp;arg[4];
+ else
+ return 0;
+ return 1;
+}</pre>
+</blockquote>
+
+<p><code>LCCDIR</code> defaults to <code>&quot;/usr/local/lib/lcc/&quot;</code> unless
+it's defined by a <code>-D</code> option as part of <code>CFLAGS</code> in the make
+command, e.g.,</p>
+
+<blockquote>
+ <pre>% make HOSTFILE=etc/solaris.c CFLAGS='-DLCCDIR=\&quot;/v/lib/lcc/\&quot;' lcc</pre>
+</blockquote>
+
+<p>Note the trailing slash; <code>SUNDIR</code> is provided so you can use <code>etc/solaris.c</code>
+even if you have a different version of the Sun Pro compiler suite. If you're using the
+gcc compiler tools instead of the Sun Pro tools, see <a HREF="../etc/gcc-solaris.c"><code>etc/gcc-solaris.c</code></a>.</p>
+
+<p>Most of the host-specific code is platform-specific data and templates for the commands
+that invoke the preprocessor, compiler, assembler, and loader. The <code>suffixes</code>
+array lists the file name suffixes for C source files, preprocessed source files, assembly
+language source files, object files, and executable files. <code>suffixes</code> must be
+terminated with a null pointer, as shown above. The initialization of <code>suffixes</code>
+in <code><a HREF="../etc/solaris.c">etc/solaris.c</a></code> are the typical ones for UNIX
+systems. Each element of <code>suffixes</code> is actually a list of suffixes, separated
+by semicolons; <code><a HREF="../etc/win32.c">etc/win32.c</a></code> holds an example:</p>
+
+<blockquote>
+ <pre>char *suffixes[] = { &quot;.c;.C&quot;, &quot;.i;.I&quot;, &quot;.asm;.ASM;.s;.S&quot;, &quot;.obj;.OBJ&quot;, &quot;.exe&quot;, 0 };</pre>
+</blockquote>
+
+<p>When a list is given, the first suffix is used whenever lcc needs to generate a file
+name. For example, with <code><a HREF="../etc/win32.c">etc/win32.c</a></code>, lcc emits
+the generated assembly code into <code>.asm</code> files.</p>
+
+<p>The <code>inputs</code> array holds a null-terminated string of directories separated
+by colons or semicolons. These are used as the default value of <code>LCCINPUTS</code>, if
+the environment variable <code>LCCINPUTS</code> is not set; see the <a HREF="lcc.pdf">man
+page</a>.</p>
+
+<p>Each command template is an array of pointers to strings terminated with a null
+pointer; the strings are full path names of commands, arguments, or argument placeholders,
+which are described below. Commands are executed in a child process, and templates can
+contain multiple commands by separating commands with newlines. The driver runs each
+command in a new process.</p>
+
+<p>The <code>cpp</code> array gives the command for running lcc's preprocessor, <code>cpp</code>.
+Literal arguments specified in templates, e.g., <code>&quot;-Dsparc&quot;</code> in the <code>cpp</code>
+command above, are passed to the command as given.</p>
+
+<p>The strings <code>&quot;$1&quot;</code>, <code>&quot;$2&quot;</code>, and <code>&quot;$3&quot;</code>
+in templates are placeholders for <em>lists</em> of arguments that are substituted in a
+copy of the template before the command is executed. <code>$1</code> is replaced by the <em>options</em>
+specified by the user; for the preprocessor, this list always contains at least <code>-D__LCC__</code>.
+<code>$2</code> is replaced by the <em>input</em> files, and <code>$3</code> is replaced
+by the <em>output</em> file.</p>
+
+<p>Zero-length arguments after replacement are removed from the argument list before the
+command is invoked. So, for example, if the preprocessor is invoked without an output
+file, <code>&quot;$3&quot;</code> becomes <code>&quot;&quot;</code>, which is removed from
+the final argument list.</p>
+
+<p>The <code>include</code> array is a list of <code>-I</code> options that specify which
+directives should be searched to satisfy include directives. These directories are
+searched in the order given. The first directory should be the one to which the ANSI
+header files were copied as described in <a HREF="#unix">UNIX</a> or <a HREF="#win32">Windows</a>
+installation instructions. The driver adds these options to <code>cpp</code>'s arguments
+when it invokes the preprocessor, except when <code>-N</code> is specified.</p>
+
+<p><code>com</code> gives the command for invoking the compiler. This template can appear
+as shown above in a custom host-specific part, but the option <code>-target=sparc/solaris</code>
+should be edited to the <em>target</em><code>/</code><em>os</em> for your platform. If <code>com[1]</code>
+includes the string &quot;<code>win32</code>&quot;, the driver assumes it's running on
+Windows. lcc can generate code for <em>all</em> of the <em>target</em><code>/</code><em>os</em>
+combinations listed in the file <code>src/bind.c</code>. The <code>-target</code> option
+specifies the default combination. The driver's <code>-Wf</code> option can be used to
+specify other combinations; the <a HREF="lcc.pdf">man page</a> elaborates.</p>
+
+<p><code>as</code> gives the command for invoking the assembler. On Linux, you must be
+running at least version 2.8.1 of the GNU assembler; earlier versions mis-assemble some
+instructions emitted by lcc.</p>
+
+<p><code>ld</code> gives the command for invoking the loader. For the other commands, the
+list <code>$2</code> contains a single file; for <code>ld</code>, <code>$2</code> contains
+all &quot;.o&quot; files and libraries, and <code>$3</code> is <code>a.out</code>, unless
+the <code>-o</code> option is specified. As suggested in the code above, <code>ld</code>
+must also specify the appropriate startup code and default libraries, including the lcc
+library, <code>liblcc.a</code>.</p>
+
+<p>The <code>option</code> function is described below; the minimal <code>option</code>
+function just returns 0.</p>
+
+<p>You can test <code>lcc</code> with the options <code>-v -v</code> to display the
+commands that would be executed, e.g.,</p>
+
+<blockquote>
+ <pre>% $BUILDDIR/lcc -v -v foo.c baz.c mylib.a -lX11
+/usr/local/lib/lcc-4.1/lcc $ Id: solaris.c,v 1.10 1998/09/14 20:36:33 drh Exp $
+foo.c:
+/usr/local/lib/lcc/cpp -D__STDC__=1 -Dsparc -D__sparc__ -Dsun -D__sun__ -Dunix -D__LCC__ -I/usr/local/lib/lcc/include -I/usr/local/include -I/usr/include foo.c /tmp/lcc266290.i
+/usr/local/lib/lcc/rcc -target=sparc/solaris -v /tmp/lcc266290.i /tmp/lcc266291.
+s
+/usr/ccs/bin/as -Qy -s -o /tmp/lcc266292.o /tmp/lcc266291.s
+baz.c:
+/usr/local/lib/lcc/cpp -D__STDC__=1 -Dsparc -D__sparc__ -Dsun -D__sun__ -Dunix -D__LCC__ -I/usr/local/lib/lcc/include -I/usr/local/include -I/usr/include baz.c /tmp/lcc266290.i
+/usr/local/lib/lcc/rcc -target=sparc/solaris -v /tmp/lcc266290.i /tmp/lcc266291.s
+/usr/ccs/bin/as -Qy -s -o /tmp/lcc266293.o /tmp/lcc266291.s
+/usr/ccs/bin/ld -o a.out /opt/SUNWspro/SC4.2/lib/crti.o /opt/SUNWspro/SC4.2/lib/crt1.o /opt/SUNWspro/SC4.2/lib/values-xa.o /tmp/lcc266292.o /tmp/lcc266293.o mylib.a -lX11 -Y P,/opt/SUNWspro/SC4.2/lib/:/usr/ccs/lib:/usr/lib -Qy -L/usr/local/lib/lcc/ -llcc -lm -lc /opt/SUNWspro/SC4.2/lib/crtn.o
+rm /tmp/lcc266293.o /tmp/lcc266290.i /tmp/lcc266291.s /tmp/lcc266292.o</pre>
+</blockquote>
+
+<p>As the output shows, <code>lcc</code> places temporary files in <code>/tmp</code>; if
+any of the environment variables <code>TMP</code>, <code>TEMP</code>, and <code>TMPDIR</code>
+are set, they override this default (in the order shown) as does the <code>-tempdir=</code><em>dir</em>
+option. The default can be changed by defining <code>TEMPDIR</code> in <code>CFLAGS</code>
+when building the driver.</p>
+
+<p>The <code>option</code> function is called for the options <code>-Wo</code>, <code>-g</code>,
+<code>-p</code>, <code>-pg</code>, and <code>-b</code> because these compiler options
+might also affect the loader's arguments. For these options, the driver calls <code>option(arg)</code>
+to give the host-specific code an opportunity to edit the <code>ld</code> command, if
+necessary. <code>option</code> can change <code>ld</code>, if necessary, and return 1 to
+announce its acceptance of the option. If the option is unsupported, <code>option</code>
+should return 0.</p>
+
+<p>For example, in response to <code>-g</code>, the <code>option</code> function shown
+above accepts the option but does nothing else, because the <code>ld</code> and <code>as</code>
+commands don't need to be modified on the SPARC. <code>-g</code> will also be added to the
+compiler's options by the host-independent part of the driver. The <code>-p</code> causes <code>option</code>
+to change the name of the startup code and changed the list of libraries. The <code>-b</code>
+option turns on <code>lcc</code>'s per-expression profiling, the code for which is in <code>liblcc.a</code>,
+so <code>option</code> need no nothing.</p>
+
+<p>On SPARCs, the driver also recognizes <code>-Bstatic</code> and <code>-Bdynamic</code>
+as linker options. The driver recognizes but ignores &quot;<code>-target</code> <em>name</em>&quot;
+option.</p>
+
+<p>The option <code>-Wo</code><em>arg</em> causes the driver to pass <em>arg</em> to <code>option</code>.
+Such options have no other effect; this mechanism is provided to support system-specific
+options that affect the commands executed by the driver. As illustrated above,
+host-specific parts should support the <code>-Wo-lccdir=</code><em>dir</em> option, which
+causes lcc's compilation components to be found in <em>dir</em>, because this option is
+used by the test scripts, and because the driver simulates a <code>-Wo-lccdir</code>
+option with the value of the environment variable <code>LCCDIR</code>, if it's defined.
+The code above rebuilds the paths to the include files, preprocessor, compiler, and
+library by calling <code>concat</code>, which is defined in <code>etc/lcc.c</code>.</p>
+
+<h2><a NAME="rcc">Building the Compiler and Accessories</a></h2>
+
+<p>To build the rest of compilation components make sure <code>BUILDDIR</code> is set
+appropriately and type &quot;<code>make all</code>&quot;. This command builds <code>librcc.a</code>
+(the compiler's private library), <code>rcc</code> (the compiler proper), <code>lburg</code>
+(the code-generator generator), <code>cpp</code> (the preprocessor), <code>liblcc.a</code>
+(the runtime library), and <code>bprint</code> (the profile printer), all in <code>BUILDDIR</code>.
+There may be warnings, but there should be no errors. If you're using an ANSI/ISO compiler
+other than <code>cc</code>, specify its name with the <code>CC=</code> option, e.g.,
+&quot;<code>make CC=gcc all</code>&quot;. If you're running on a DEC ALPHA, use &quot;<code>make
+CC='cc -std1' all</code>&quot;; the <code>-std1</code> option is essential on the ALPHA.
+If you're on a DEC 5000 running Ultrix 4.3, use &quot;<code>make CC=c89 all</code>&quot;.</p>
+
+<p>Once <code>rcc</code> is built with the host C compiler, run the test suite to verify
+that <code>rcc</code> is working correctly. If any of the steps below fail, contact us
+(see <a HREF="#bugs"><em>Reporting Bugs</em></a>). The commands in the makefile run the
+shell script <code>src/run.sh</code> on each C program in the test suite, <code>tst/*.c</code>.
+It uses the driver, <code>$BUILDDIR/lcc</code>, so you must have the driver in the build
+directory before testing <code>rcc</code>. The <em>target</em><code>/</code><em>os</em>
+combination is read from the variable <code>TARGET</code>, which must be specified when
+invoking <code>make</code>:</p>
+
+<blockquote>
+ <pre>% make TARGET=sparc/solaris test
+mkdir -p /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/8q.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/array.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/cf.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/cq.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/cvt.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/fields.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/front.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/incr.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/init.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/limits.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/paranoia.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/sort.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/spill.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/stdarg.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/struct.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/switch.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/wf1.s:
+/usr/local/lib/lcc-4.1/sparc-solaris/rcc -target=sparc/solaris /usr/local/lib/lcc-4.1/sparc-solaris/sparc/solaris/tst/yacc.s:</pre>
+</blockquote>
+
+<p>Each line in the output above is of the form</p>
+
+<blockquote>
+ <p><code>$BUILDDIR/rcc -target=</code><em>target</em><code>/</code><em>os</em><code>$BUILDDIR/</code><em>target</em><code>/</code><em>os</em><code>/</code><em>X</em><code>.s:</code></p>
+</blockquote>
+
+<p>where <em>X</em> is the base name of the C program <em>X</em><code>.c</code> in the
+test suite. This output identifies the compiler and the target, e.g., &quot;<code>$BUILDDIR/rcc</code>
+is generating code for a <code>sparc</code> running the <code>solaris</code> operating
+system.&quot;</p>
+
+<p>For each program in the test suite, <code>src/run.sh</code> compiles the program, drops
+the generated assembly language code in <code>BUILDDIR</code>/<em>target</em><code>/</code><em>os</em>,
+and uses <code>diff</code> to compare the generated assembly code with the expected code
+(the code expected for <code>tst/8q.c</code> on the SPARC under Solaris is in <code>sparc/solaris/tst/8q.sbk</code>,
+etc.). If there are differences, the script executes the generated code with the input
+given in <code>tst</code> (the input for <code>tst/8q.c</code> is in <code>tst/8q.0</code>,
+etc.) and compares the output with the expected output (the expected output from <code>tst/8q.c</code>
+on the SPARC under Solaris is in <code>sparc/solaris/tst/8q.1bk</code>, etc.). The script
+also compares the diagnostics from the compiler with the expected diagnostics.</p>
+
+<p>On some systems, there may be a few differences between the generated code and the
+expected code. These differences occur because the expected code is generated by cross
+compilation and the least significant bits of some floating-point constants differ from
+those bits in constants generated on your system. On Linux, there may be differences
+because of differences in the header files between our system and yours. There should be
+no differences in the output from executing the test programs.</p>
+
+<p>Next, run the &quot;triple test&quot;, which builds <code>rcc</code> using itself:</p>
+
+<blockquote>
+ <pre>% make triple
+/usr/local/lib/lcc-4.1/sparc-solaris/lcc -o /usr/local/lib/lcc-4.1/sparc-solaris/1rcc -d0.6 -Wo-lccdir=/usr/local/lib/lcc-4.1/sparc-solaris -B/usr/local/lib/lcc-4.1/sparc-solaris/ -Isrc src/*.c
+src/alloc.c:
+...
+src/x86.c:
+/usr/local/lib/lcc-4.1/sparc-solaris/lcc -o /usr/local/lib/lcc-4.1/sparc-solaris/1rcc -d0.6 -Wo-lccdir=/usr/local/lib/lcc-4.1/sparc-solaris -B/usr/local/lib/lcc-4.1/sparc-solaris/ -Isrc src/*.c
+src/alloc.c:
+...
+src/x86.c:
+strip /usr/local/lib/lcc-4.1/sparc-solaris/[12]rcc
+dd if=/usr/local/lib/lcc-4.1/sparc-solaris/1rcc of=/usr/local/lib/lcc-4.1/sparc-solaris/rcc1 bs=512 skip=1
+769+1 records in
+769+1 records out
+dd if=/usr/local/lib/lcc-4.1/sparc-solaris/2rcc of=/usr/local/lib/lcc-4.1/sparc-solaris/rcc2 bs=512 skip=1
+769+1 records in
+769+1 records out
+if cmp /usr/local/lib/lcc-4.1/sparc-solaris/rcc[12]; then \
+ mv /usr/local/lib/lcc-4.1/sparc-solaris/2rcc /usr/local/lib/lcc-4.1/sparc-solaris/rcc; \
+ rm -f /usr/local/lib/lcc-4.1/sparc-solaris/1rcc /usr/local/lib/lcc-4.1/sparc-solaris/rcc[12]; fi</pre>
+</blockquote>
+
+<p>This command builds <code>rcc</code> twice; once using the <code>rcc</code> built by <code>cc</code>
+and again using the <code>rcc</code> built by <code>lcc</code>. The resulting binaries are
+compared. They should be identical, as shown at the end of the output above. If they
+aren't, our compiler is generating incorrect code; <a HREF="#bugs">contact</a> us.</p>
+
+<p>The final version of <code>rcc</code> should also pass the test suite; that is, the
+output from</p>
+
+<blockquote>
+ <pre>% make TARGET=sparc/solaris test</pre>
+</blockquote>
+
+<p>should be identical to that from the previous <code>make test</code>.</p>
+
+<p>The command &quot;<code>make clean</code>&quot; cleans up, but does not remove <code>rcc</code>,
+etc., and &quot;<code>make clobber</code>&quot; cleans up and removes <code>lcc</code>, <code>rcc</code>,
+and the other accessories. Test directories under <code>BUILDDIR</code> are <em>not</em>
+removed; you'll need to remove these by hand, e.g.,</p>
+
+<blockquote>
+ <pre>% rm -fr $BUILDDIR/sparc</pre>
+</blockquote>
+
+<p>The code generators for the other targets can be tested by specifying the desired <em>target</em><code>/</code><em>os</em>
+and setting an environment variable that controls what <code>src/run.sh</code> does. For
+example, to test the MIPS code generator, type</p>
+
+<blockquote>
+ <pre>% setenv REMOTEHOST noexecute
+% make TARGET=mips/irix test</pre>
+</blockquote>
+
+<p>As above, <code>src/run.sh</code> compares the MIPS code generated with what's
+expected. There should be no differences. Setting <code>REMOTEHOST</code> to <code>noexecute</code>
+suppresses the assembly and execution of the generated code. If you set <code>REMOTEHOST</code>
+to the name of a MIPS machine to which you can <code>rlogin</code>, <code>src/run.sh</code>
+will <code>rcp</code> the generated code to that machine and execute it there, if
+necessary. See <code>src/run.sh</code> for the details.</p>
+
+<p>You can use lcc as a cross compiler. The options <code>-S</code> and <code>-Wf-target=</code><em>target/os</em>
+generate assembly code for the specified target, which is any of those listed in the file <code>src/bind.c</code>.
+For example, </p>
+
+<blockquote>
+ <pre>% lcc -Wf-target=mips/irix -S tst/8q.c</pre>
+</blockquote>
+
+<p>generates MIPS code for <code>tst/8q.c</code> in <code>8q.s</code>.</p>
+
+<p>lcc can also generate code for a &quot;symbolic&quot; target. This target is used
+routinely in front-end development, and its output is a printable representation of the
+input program, e.g., the dags constructed by the front end are printed, and other
+interface functions print their arguments. You can specify this target with the option <code>-Wf-target=symbolic</code>.
+For example,</p>
+
+<blockquote>
+ <pre>% lcc -Wf-target=symbolic -S tst/8q.c</pre>
+</blockquote>
+
+<p>generates symbolic output for <code>tst/8q.c</code> in <code>8q.s</code>. Adding <code>-Wf-html</code>
+causes the symbolic target to emit HTML instead of plain text. Finally, the option <code>-Wf-target=null</code>
+specifies the &quot;null&quot; target for which lcc emits nothing and thus only checks the
+syntax and semantics of its input files.</p>
+
+<h2><a NAME="win32">Installation on Windows NT 4.0 or Windows 95/98</a></h2>
+
+<p>On Windows NT 4.0 and Windows 95/98, lcc is designed to work with Microsoft's Visual
+C++ 5.0 (VC) and Microsoft's Assembler, MASM 6.11d. It uses the VC header files,
+libraries, and command-line tools, and it uses MASM to assemble the code it generates. If
+you have MASM 6.11, make sure you <a
+HREF="http://support.microsoft.com/support/kb/articles/Q138/9/83.asp">upgrade to 6.11d</a>,
+because earlier 6.11 releases do not generate correct COFF object files.</p>
+
+<p>Building the distribution components from the ground up requires Microsoft's Visual
+C/C++ 5.0 compiler, Microsoft's make, <code>nmake</code>, and the standard Windows command
+interpreter. <a HREF="../makefile.nt"><code>makefile.nt</code></a> is written to use only <code>nmake</code>.
+As on UNIX systems, the compilation components are installed in a single <em>build
+directory</em>, and the top-level programs, <code>lcc.exe</code> and <code>bprint.exe</code>,
+are installed in a directory on the PATH. If the conventions used below are followed, the
+Windows-specific parts of the driver program, <code>lcc.exe</code>, can be used
+unmodified.</p>
+
+<p>Building from the source distribution on a Windows system involves the following steps.
+Below, the build directory is referred to as <code>BUILDDIR</code>, and the distribution
+is in <code>\dist\lcc\4.1</code>.
+
+<ol>
+ <li>Create the build directory, perhaps using a version- and platform-specific naming
+ convention as suggested in <a HREF="#unix"><em>Installation on UNIX</em></a>, and record
+ the name of this directory in the <code>BUILDDIR</code> environment variable:<blockquote>
+ <pre>C:\dist\lcc\4.1&gt;set BUILDDIR=\progra~1\lcc\4.1\bin
+C:\dist\lcc\4.1&gt;mkdir %BUILDDIR%</pre>
+ </blockquote>
+ <p>The default build, or installation, directory is <code>\Program Files\lcc\4.1\bin</code>,
+ but the <code>nmake</code> commands require that you use the corresponding 8.3 file name, <code>progra~1</code>,
+ instead of <code>Program Files</code>.</p>
+ </li>
+ <li><a HREF="../etc/win32.c"><code>etc\win32.c</code></a> is the Windows-specific part of
+ the driver. It assumes that environment variable <code>include</code> gives the locations
+ of the VC header files and that the linker (<code>link.exe</code>) and the assembler (<code>ml.exe</code>)
+ are on the PATH. It also assumes that the macro <code>LCCDIR</code> gives the build
+ directory. If necessary, revise a copy of <a HREF="../etc/win32.c"><code>etc\win32.c</code></a>
+ to reflect the conventions on your computer (see <a HREF="#driver"><em>Building the Driver</em></a>),
+ then build the driver, specifying the default temporary directory, if necessary:<blockquote>
+ <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt TEMPDIR=\\temp HOSTFILE=etc/win32.c lcc
+...
+ cl -nologo -Zi -MLd -Fd\progra~1\lcc\4.1\bin\ -c -DTEMPDIR=\&quot;\\temp\&quot; -Fo\progra~1\lcc\4.1\bin\lcc.obj etc/lcc.c
+lcc.c
+ cl -nologo -Zi -MLd -Fd\progra~1\lcc\4.1\bin\ -c -Fo\progra~1\lcc\4.1\bin\host.obj etc/win32.c
+win32.c
+ cl -nologo -Zi -MLd -Fd\progra~1\lcc\4.1\bin\ -Fe\progra~1\lcc\4.1\bin\lcc.exe \progra~1\lcc\4.1\bin\lcc.obj \progra~1\lcc\4.1\bin\host.obj</pre>
+ </blockquote>
+ <p>If you make a copy of <code>etc\win32.c</code>, specify the path of the copy as the
+ value of <code>HOSTFILE</code>. For example, if you copy <code>etc\win32.c</code> to <code>BUILDDIR</code>
+ and edit it, use the command</p>
+ <blockquote>
+ <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt TEMPDIR=\\temp HOSTFILE=%BUILDDIR%\win32.c lcc</pre>
+ </blockquote>
+ </li>
+ <li>Build the preprocessor, compiler proper, library, and other accessories (see <a
+ HREF="#rcc"><em>Building the Compiler</em></a>):<blockquote>
+ <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt all</pre>
+ </blockquote>
+ <p>This command uses the VC command-line tools <code>cl</code> and <code>lib</code> to
+ build <code>bprint.exe</code>, <code>cpp.exe</code>, <code>lburg.exe</code>, <code>liblcc.lib</code>,
+ <code>librcc.lib</code>, and <code>rcc.exe</code>, all in <code>BUILDDIR</code>. There may
+ be some warnings, but there should be no warnings.</p>
+ </li>
+ <li>Create a test directory and run the test suite:<blockquote>
+ <pre>C:\dist\lcc\4.1&gt;mkdir %BUILDDIR%\x86\win32\tst
+C:\dist\lcc\4.1&gt;nmake -f makefile.nt test</pre>
+ </blockquote>
+ <p>This command compiles each program in <a HREF="../tst">tst</a>, compares the generated
+ assembly code and diagnostics with the expected assembly code and diagnostics, executes
+ the program, and compares the output with the expected output (using <code>fc</code>). For
+ example, when the nmake command compiles <a HREF="../tst/8q.c"><code>tst\8q.c</code></a>,
+ it leaves the generated assembly code and diagnostic output in <code>%BUILDDIR%\x86\win32\tst\8q.s</code>
+ and <code>%BUILDDIR%\x86\win32\tst\8q.2</code>, and it compares them with the expected
+ results in <code>x86\win32\tst\8q.sbk</code>. It builds the executable program in <code>%BUILDDIR%\x86\win32\tst\8q.exe</code>,
+ runs it, and redirects the output to <code>%BUILDDIR%\x86\win32\tst\8q.1</code>, which it
+ compares with <code>x86\win32\tst\8q.1bk</code>. The output from this step is voluminous,
+ but there should be no differences and no errors.</p>
+ </li>
+ <li>Run the &quot;triple&quot; test, which compiles <code>rcc</code> with itself and
+ verifies the results:<blockquote>
+ <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt triple
+...
+\progra~1\lcc\4.1\bin\x86.c:
+ Assembling: C:/TEMP/lcc2001.asm
+ fc /b \progra~1\lcc\4.1\bin\1rcc.exe \progra~1\lcc\4.1\bin\2rcc.exe
+Comparing files \progra~1\lcc\4.1\bin\1rcc.exe and \progra~1\lcc\4.1\bin\2RCC.EXE
+00000088: B4 D5</pre>
+ </blockquote>
+ <p>This command builds <code>rcc</code> twice; once using the <code>rcc</code> built by VC
+ and again using the <code>rcc</code> built by <code>lcc</code>. The resulting binaries are
+ compared using <code>fc</code>. They should be identical, except for one or two bytes of
+ timestamp data, as shown at the end of the output above. If they aren't, our compiler is
+ generating incorrect code; <a HREF="#bugs">contact</a> us.</p>
+ </li>
+ <li>Copy <code>lcc.exe</code> and <code>bprint.exe</code> to a directory on your PATH, e.g.,<blockquote>
+ <pre>C:\dist\lcc\4.1&gt;copy %BUILDDIR%\lcc.exe \bin
+ 1 file(s) copied.
+
+C:\dist\lcc\4.1&gt;copy %BUILDDIR%\bprint.exe \bin
+ 1 file(s) copied.</pre>
+ </blockquote>
+ </li>
+ <li>Finally, clean up:<blockquote>
+ <pre>C:\dist\lcc\4.1&gt;nmake -f makefile.nt clean</pre>
+ </blockquote>
+ <p>This command removes the derived files in <code>BUILDDIR</code>, but does not remove <code>rcc.exe</code>,
+ etc.; &quot;<code>nmake -f makefile.nt clobber</code>&quot; cleans up and removes all
+ executables and libraries. Test directories under <code>BUILDDIR</code> are <em>not</em>
+ removed; you'll need to remove these by hand, e.g.,</p>
+ <blockquote>
+ <pre>C:\dist\lcc\4.1&gt;rmdir %BUILDDIR%\x86 /s
+\progra~1\lcc\4.1\bin\x86, Are you sure (Y/N)? y</pre>
+ </blockquote>
+ </li>
+</ol>
+
+<h2><a NAME="bugs">Reporting Bugs</a></h2>
+
+<p>lcc is a large, complex program. We find and repair errors routinely. If you think that
+you've found a error, follow the steps below, which are adapted from the instructions in
+Chapter 1 of <cite>A Retargetable C Compiler: Design and Implementation</cite>.
+
+<ol>
+ <li>If you don't have a source file that displays the error, create one. Most errors are
+ exposed when programmers try to compile a program they think is valid, so you probably
+ have a demonstration program already.</li>
+ <li>Preprocess the source file and capture the preprocessor output. Discard the original
+ code.</li>
+ <li>Prune your source code until it can be pruned no more without sending the error into
+ hiding. We prune most error demonstrations to fewer than five lines.</li>
+ <li>Confirm that the source file displays the error with the <em>distributed</em> version of
+ lcc. If you've changed lcc and the error appears only in your version, then you'll have to
+ chase the error yourself, even if it turns out to be our fault, because we can't work on
+ your code.</li>
+ <li>Annotate your code with comments that explain why you think that lcc is wrong. If lcc
+ dies with an assertion failure, please tell us where it died. If lcc crashes, please
+ report the last part of the call chain if you can. If lcc is rejecting a program you think
+ is valid, please tell us why you think it's valid, and include supporting page numbers in
+ the ANSI Standard, Appendix A in <cite>The C Programming Language</cite>, or the
+ appropriate section in <cite>C: A Reference Manual</cite>, 4th edition by S. B. Harbison
+ and G. L. Steele, Jr. (Prentice Hall, 1995). If lcc silently generates incorrect code for
+ some construct, please include the corrupt assembly code in the comments and flag the
+ incorrect instructions if you can.</li>
+ <li>Confirm that your error hasn't been fixed already. The latest version of lcc is always
+ available for anonymous <code>ftp</code> from <code>ftp.cs.princeton.edu</code> in <a
+ HREF="ftp://ftp.cs.princeton.edu/pub/lcc"><code>pub/lcc</code></a>. A <a
+ HREF="ftp://ftp.cs.princeton.edu/pub/lcc/README"><code>README</code></a> file there gives
+ acquistion details, and the <a HREF="../LOG"><code>LOG</code></a> file reports what errors
+ were fixed and when they were fixed. If you report a error that's been fixed, you might
+ get a canned reply.</li>
+ <li>Send your program by electronic mail to <code>lcc-bugs@cs.princeton.edu</code>. Please
+ send only valid C programs; put all remarks in C comments so that we can process reports
+ semiautomatically.</li>
+</ol>
+
+<h2><a NAME="mailinglist">Keeping in Touch</a></h2>
+
+<p>There is an lcc mailing list for general information about lcc. To be added to the
+list, send a message with the 1-line body</p>
+
+<blockquote>
+ <pre>subscribe lcc</pre>
+</blockquote>
+
+<p>to <code>majordomo@cs.princeton.edu</code>. This line must appear in the message body;
+&quot;Subject:&quot; lines are ignored. To learn more about mailing lists served by <code>majordomo</code>,
+send a message with the 1-word body &quot;<code>help</code>&quot; to <code>majordomo@cs.princeton.edu</code>.
+Mail sent to <code>lcc@cs.princeton.edu</code> is forwarded to everyone on the mailing
+list.</p>
+
+<p>There is also an <code>lcc-bugs</code> mailing list for reporting bugs; subscribe to it
+by sending a message with the 1-line body </p>
+
+<blockquote>
+ <pre>subscribe lcc-bugs</pre>
+</blockquote>
+
+<p>to <code>majordomo@cs.princeton.edu</code>. Mail addressed to <var>lcc-bugs@cs.princeton.edu</var>
+is forwarded to everyone on this list.</p>
+
+<hr>
+
+<address>
+ <a HREF="http://www.research.microsoft.com/~cwfraser/">Chris Fraser</a> / <a
+ HREF="mailto:cwfraser@microsoft.com">cwfraser@microsoft.com</a><br>
+ <a HREF="http://www.research.microsoft.com/~drh/">David Hanson</a> / <a
+ HREF="mailto:drh@microsoft.com">drh@microsoft.com</a><br>
+ $Revision: 145 $ $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $
+</address>
+</body>
+</html>
diff --git a/lcc/doc/lcc.1 b/lcc/doc/lcc.1
index 53c2cc5..fe91bca 100755
--- a/lcc/doc/lcc.1
+++ b/lcc/doc/lcc.1
@@ -1,605 +1,605 @@
-.\" $Id: lcc.1 145 2001-10-17 21:53:10Z timo $
-.TH LCC 1 "local \- $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $"
-.SH NAME
-lcc \- ANSI C compiler
-.SH SYNOPSIS
-.B lcc
-[
-.I option
-|
-.I file
-]...
-.br
-.SH DESCRIPTION
-.PP
-.I lcc
-is an ANSI C compiler for a variety of platforms.
-.PP
-Arguments whose names end with `.c' (plus `.C' under Windows) are taken to be
-C source programs; they are preprocessed, compiled, and
-each object program is left on the file
-whose name is that of the source with `.o' (UNIX) or `.obj' (Windows)
-substituted for the extension.
-Arguments whose names end with `.i' are treated similarly,
-except they are not preprocessed.
-In the same way,
-arguments ending with `.s' (plus `.S', `.asm', and `.ASM', under Windows)
-are taken to be assembly source programs
-and are assembled, producing an object file.
-If there are no arguments,
-.I lcc
-summarizes its options on the standard error.
-.PP
-.I lcc
-deletes an object file if and only if exactly one
-source file is mentioned and no other file
-(source, object, library) or
-.B \-l
-option is mentioned.
-.PP
-If the environment variable
-.B LCCINPUTS
-is set,
-.I lcc
-assumes it gives a semicolon- or colon-separated list of directories in which to
-look for source and object files whose names do not begin with `/'.
-These directories are also added to the list of directories
-searched for libraries.
-If
-.B LCCINPUTS
-is defined, it must contain `.' in order for the current directory
-to be searched for input files.
-.PP
-.I lcc
-uses ANSI standard header files (see `FILES' below).
-Include files not found in the ANSI header files
-are taken from the normal default include areas,
-which usually includes
-.BR /usr/include .
-Under Windows, if the environment variable
-.B include
-is defined, it gives a semicolon-separated list of directories in which to search for
-header files.
-.PP
-.I lcc
-interprets the following options; unrecognized options are
-taken as loader options (see
-.IR ld (1))
-unless
-.BR \-c ,
-.BR \-S ,
-or
-.B \-E
-precedes them.
-Except for
-.BR \-l ,
-all options are processed before any of the files
-and apply to all of the files.
-Applicable options are passed to each compilation phase in the order given.
-.TP
-.B \-c
-Suppress the loading phase of the compilation, and force
-an object file to be produced even if only one program is compiled.
-.TP
-.B \-g
-Produce additional symbol table information for the local debuggers.
-.I lcc
-warns when
-.B \-g
-is unsupported.
-.TP
-.BI \-Wf\-g n , x
-Set the debugging level to
-.I n
-and emit source code as comments into the generated assembly code;
-.I x
-must be the assembly language comment character.
-If
-.I n
-is omitted, it defaults to 1, which is similar to
-.BR \-g .
-Omitting
-.BI , x
-just sets the debugging level to
-.IR n .
-.TP
-.B \-w
-Suppress warning diagnostics, such as those
-announcing unreferenced statics, locals, and parameters.
-The line
-.I
-#pragma ref id
-simulates a reference to the variable
-.IR id .
-.TP
-.BI \-d n
-Generate jump tables for switches whose density is at least
-.IR n ,
-a floating point constant between zero and one.
-The default is 0.5.
-.TP
-.B \-A
-Warns about
-declarations and casts of function types without prototypes,
-assignments between pointers to ints and pointers to enums, and
-conversions from pointers to smaller integral types.
-A second
-.B \-A
-warns about
-unrecognized control lines,
-nonANSI language extensions and source characters in literals,
-unreferenced variables and static functions,
-declaring arrays of incomplete types,
-and exceeding
-.I some
-ANSI environmental limits, like more than 257 cases in switches.
-It also arranges for duplicate global definitions in separately compiled
-files to cause loader errors.
-.TP
-.B \-P
-Writes declarations for all defined globals on standard error.
-Function declarations include prototypes;
-editing this output can simplify conversion to ANSI C.
-This output may not correspond to the input when
-there are several typedefs for the same type.
-.TP
-.B \-n
-Arrange for the compiler to produce code
-that tests for dereferencing zero pointers.
-The code reports the offending file and line number and calls
-.IR abort (3).
-.TP
-.B \-O
-is ignored.
-.TP
-.B \-S
-Compile the named C programs, and leave the
-assembler-language output on corresponding files suffixed `.s' or `.asm'.
-.TP
-.B \-E
-Run only the preprocessor on the named C programs
-and unsuffixed file arguments,
-and send the result to the standard output.
-.TP
-.BI \-o " output"
-Name the output file
-.IR output .
-If
-.B \-c
-or
-.B \-S
-is specified and there is exactly one source file,
-this option names the object or assembly file, respectively.
-Otherwise, this option names the final executable
-file generated by the loader, and `a.out' (UNIX) or `a.exe' (Windows) is left undisturbed.
-.I lcc
-warns if
-.B \-o
-and
-.B \-c
-or
-.B \-S
-are given with more than one source file and ignores the
-.B \-o
-option.
-.TP
-.BI \-D name=def
-Define the
-.I name
-to the preprocessor, as if by `#define'.
-If
-.I =def
-is omitted, the name is defined as "1".
-.TP
-.BI \-U name
-Remove any initial definition of
-.IR name .
-.TP
-.BI \-I dir
-`#include' files
-whose names do not begin with `/' are always
-sought first in the directory of the
-.I file
-arguments, then in directories named in
-.B \-I
-options, then in directories on a standard list.
-.TP
-.B \-N
-Do not search
-.I any
-of the standard directories for `#include' files.
-Only those directories specified by subsequent explicit
-.B \-I
-options will be searched, in the order given.
-.TP
-.BI \-B str
-Use the compiler
-.BI "" str rcc
-instead of the default version.
-Note that
-.I str
-often requires a trailing slash.
-On Sparcs only,
-.B \-Bstatic
-and
-.BI \-Bdynamic
-are passed to the loader; see
-.IR ld (1).
-.TP
-.BI \-Wo\-lccdir= dir
-Find the preprocessor, compiler proper, and include directory
-in the directory
-.I dir/
-or
-.I
-dir\\.
-If the environment variable
-.B LCCDIR
-is defined, it gives this directory.
-.I lcc
-warns when this option is unsupported.
-.TP
-.B \-Wf-unsigned_char=1
-.br
-.ns
-.TP
-.B \-Wf-unsigned_char=0
-makes plain
-.B char
-an unsigned (1) or signed (0) type; by default,
-.B char
-is signed.
-.TP
-.B \-Wf\-wchar_t=unsigned_char
-.br
-.ns
-.TP
-.B \-Wf\-wchar_t=unsigned_short
-.br
-.ns
-.TP
-.B \-Wf\-wchar_t=unsigned_int
-Makes wide characters the type indicated; by default,
-wide characters are unsigned short ints, and
-.B wchar_t
-is a typedef for unsigned short defined in stddef.h.
-The definition for
-.B wchar_t
-in stddef.h must correspond to the type specified.
-.TP
-.B \-v
-Print commands as they are executed; some of the executed
-programs are directed to print their version numbers.
-More than one occurrence of
-.B \-v
-causes the commands to be printed, but
-.I not
-executed.
-.TP
-.BR \-help " or " \-?
-Print a message on the standard error summarizing
-.IR lcc 's
-options and giving the values of the environment variables
-.B LCCINPUTS
-and
-.BR LCCDIR ,
-if they are defined.
-Under Windows, the values of
-.B include
-and
-.B lib
-are also given, if they are defined.
-.TP
-.B \-b
-Produce code that counts the number of times each expression is executed.
-If loading takes place, arrange for a
-.B prof.out
-file to be written when the object program terminates.
-A listing annotated with execution counts can then be generated with
-.IR bprint (1).
-.I lcc
-warns when
-.B \-b
-is unsupported.
-.B \-Wf\-C
-is similar, but counts only the number of function calls.
-.TP
-.B \-p
-Produce code that counts the number of times each function is called.
-If loading takes place, replace the standard startup
-function by one that automatically calls
-.IR monitor (3)
-at the start and arranges to write a
-.B mon.out
-file when the object program terminates normally.
-An execution profile can then be generated with
-.IR prof (1).
-.I lcc
-warns when
-.B \-p
-is unsupported.
-.TP
-.B \-pg
-Causes the compiler to produce counting code like
-.BR \-p ,
-but invokes a run-time recording mechanism that keeps more
-extensive statistics and produces a
-.B gmon.out
-file at normal termination.
-Also, a profiling library is searched, in lieu of the standard C library.
-An execution profile can then be generated with
-.IR gprof (1).
-.I lcc
-warns when
-.B \-pg
-is unsupported.
-.TP
-.BI \-t name
-.br
-.ns
-.TP
-.BI \-t
-Produce code to print the name of the function, an activation number,
-and the name and value of each argument at function entry.
-At function exit, produce code to print
-the name of the function, the activation number, and the return value.
-By default,
-.I printf
-does the printing; if
-.I name
-appears, it does.
-For null
-.I char*
-values, "(null)" is printed.
-.BI \-target
-.I name
-is accepted, but ignored.
-.TP
-.BI \-tempdir= dir
-Store temporary files in the directory
-.I dir/
-or
-.I
-dir\\.
-The default is usually
-.BR /tmp .
-.TP
-.BI \-W xarg
-pass argument
-.I arg
-to the program indicated by
-.IR x ;
-.I x
-can be one of
-.BR p ,
-.BR f ,
-.BR a ,
-or
-.BR l ,
-which refer, respectively, to the preprocessor, the compiler proper,
-the assembler, and the loader.
-.I arg
-is passed as given; if a
-.B \-
-is expected, it must be given explicitly.
-.BI \-Wo arg
-specifies a system-specific option,
-.IR arg .
-.PP
-Other arguments
-are taken to be either loader option arguments, or C-compatible
-object programs, typically produced by an earlier
-.I lcc
-run, or perhaps libraries of C-compatible routines.
-Duplicate object files are ignored.
-These programs, together with the results of any
-compilations specified, are loaded (in the order
-given) to produce an executable program with name
-.BR a.out
-(UNIX) or
-.BR a.exe
-(Windows).
-.PP
-.I lcc
-assigns the most frequently referenced scalar parameters and
-locals to registers whenever possible.
-For each block,
-explicit register declarations are obeyed first;
-remaining registers are assigned to automatic locals if they
-are `referenced' at least 3 times.
-Each top-level occurrence of an identifier
-counts as 1 reference. Occurrences in a loop,
-either of the then/else arms of an if statement, or a case
-in a switch statement each count, respectively, as 10, 1/2, or 1/10 references.
-These values are adjusted accordingly for nested control structures.
-.B \-Wf\-a
-causes
-.I lcc
-to read a
-.B prof.out
-file from a previous execution and to use the data therein
-to compute reference counts (see
-.BR \-b ).
-.PP
-.I lcc
-is a cross compiler;
-.BI \-Wf\-target= target/os
-causes
-.I lcc
-to generate code for
-.I target
-running the operating system denoted by
-.IR os .
-The supported
-.I target/os
-combinations may include
-.PP
-.RS
-.ta \w'sparc/solarisxx'u
-.nf
-alpha/osf ALPHA, OSF 3.2
-mips/irix big-endian MIPS, IRIX 5.2
-mips/ultrix little-endian MIPS, ULTRIX 4.3
-sparc/solaris SPARC, Solaris 2.3
-x86/win32 x86, Windows NT 4.0/Windows 95/98
-x86/linux x86, Linux
-symbolic text rendition of the generated code
-null no output
-.fi
-.RE
-.PP
-For
-.BR \-Wf\-target=symbolic ,
-the option
-.B \-Wf-html
-causes the text rendition to be emitted as HTML.
-.B
-.SH LIMITATIONS
-.PP
-.I lcc
-accepts the C programming language
-as described in the ANSI standard.
-If
-.I lcc
-is used with the GNU C preprocessor, the
-.B \-Wp\-trigraphs
-option is required to enable trigraph sequences.
-.PP
-Plain int bit fields are signed.
-Bit fields are aligned like unsigned integers but are otherwise laid out
-as by most standard C compilers.
-Some compilers, such as the GNU C compiler,
-may choose other, incompatible layouts.
-.PP
-Likewise, calling conventions are intended to be compatible with
-the host C compiler,
-except possibly for passing and returning structures.
-Specifically,
-.I lcc
-passes and returns structures like host ANSI C compilers
-on most targets, but some older host C compilers use different conventions.
-Consequently, calls to/from such functions compiled with
-older C compilers may not work.
-Calling a function that returns
-a structure without declaring it as such violates
-the ANSI standard and may cause a fault.
-.SH FILES
-.PP
-The file names listed below are
-.IR typical ,
-but vary among installations; installation-dependent variants
-can be displayed by running
-.I lcc
-with the
-.B \-v
-option.
-.PP
-.RS
-.ta \w'$LCCDIR/liblcc.{a,lib}XX'u
-.nf
-file.{c,C} input file
-file.{s,asm} assembly-language file
-file.{o,obj} object file
-a.{out,exe} loaded output
-/tmp/lcc* temporary files
-$LCCDIR/cpp preprocessor
-$LCCDIR/rcc compiler
-$LCCDIR/liblcc.{a,lib} \fIlcc\fP-specific library
-/lib/crt0.o runtime startup (UNIX)
-/lib/[gm]crt0.o startups for profiling (UNIX)
-/lib/libc.a standard library (UNIX)
-$LCCDIR/include ANSI standard headers
-/usr/local/include local headers
-/usr/include traditional headers
-prof.out file produced for \fIbprint\fR(1)
-mon.out file produced for \fIprof\fR(1)
-gmon.out file produced for \fIgprof\fR(1)
-.fi
-.RE
-.PP
-.I lcc
-predefines the macro
-.B __LCC__
-on all systems.
-It may also predefine some installation-dependent symbols; option
-.B \-v
-exposes them.
-.SH "SEE ALSO"
-.PP
-C. W. Fraser and D. R. Hanson,
-.I A Retargetable C Compiler: Design and Implementation,
-Addison-Wesley, 1995. ISBN 0-8053-1670-1.
-.PP
-The World-Wide Web page at http://www.cs.princeton.edu/software/lcc/.
-.PP
-S. P. Harbison and G. L. Steele, Jr.,
-.I C: A Reference Manual,
-4th ed., Prentice-Hall, 1995.
-.PP
-B. W. Kernighan and D. M. Ritchie,
-.I The C Programming Language,
-2nd ed., Prentice-Hall, 1988.
-.PP
-American National Standards Inst.,
-.I American National Standard for Information Systems\(emProgramming
-.IR Language\(emC ,
-ANSI X3.159-1989, New York, 1990.
-.br
-.SH BUGS
-Mail bug reports along with the shortest preprocessed program
-that exposes them and the details reported by
-.IR lcc 's
-.B \-v
-option to lcc-bugs@princeton.edu. The WWW page at
-URL http://www.cs.princeton.edu/software/lcc/
-includes detailed instructions for reporting bugs.
-.PP
-The ANSI standard headers conform to the specifications in
-the Standard, which may be too restrictive for some applications,
-but necessary for portability.
-Functions given in the ANSI headers may be missing from
-some local C libraries (e.g., wide-character functions)
-or may not correspond exactly to the local versions;
-for example, the ANSI standard
-stdio.h
-specifies that
-.IR printf ,
-.IR fprintf ,
-and
-.I sprintf
-return the number of characters written to the file or array,
-but some existing libraries don't implement this convention.
-.PP
-On the MIPS and SPARC, old-style variadic functions must use
-varargs.h
-from MIPS or Sun. New-style is recommended.
-.PP
-With
-.BR \-b ,
-files compiled
-.I without
-.B \-b
-may cause
-.I bprint
-to print erroneous call graphs.
-For example, if
-.B f
-calls
-.B g
-calls
-.B h
-and
-.B f
-and
-.B h
-are compiled with
-.BR \-b ,
-but
-.B g
-is not,
-.B bprint
-will report that
-.B f
-called
-.BR h .
-The total number of calls is correct, however.
+.\" $Id: lcc.1 145 2001-10-17 21:53:10Z timo $
+.TH LCC 1 "local \- $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $"
+.SH NAME
+lcc \- ANSI C compiler
+.SH SYNOPSIS
+.B lcc
+[
+.I option
+|
+.I file
+]...
+.br
+.SH DESCRIPTION
+.PP
+.I lcc
+is an ANSI C compiler for a variety of platforms.
+.PP
+Arguments whose names end with `.c' (plus `.C' under Windows) are taken to be
+C source programs; they are preprocessed, compiled, and
+each object program is left on the file
+whose name is that of the source with `.o' (UNIX) or `.obj' (Windows)
+substituted for the extension.
+Arguments whose names end with `.i' are treated similarly,
+except they are not preprocessed.
+In the same way,
+arguments ending with `.s' (plus `.S', `.asm', and `.ASM', under Windows)
+are taken to be assembly source programs
+and are assembled, producing an object file.
+If there are no arguments,
+.I lcc
+summarizes its options on the standard error.
+.PP
+.I lcc
+deletes an object file if and only if exactly one
+source file is mentioned and no other file
+(source, object, library) or
+.B \-l
+option is mentioned.
+.PP
+If the environment variable
+.B LCCINPUTS
+is set,
+.I lcc
+assumes it gives a semicolon- or colon-separated list of directories in which to
+look for source and object files whose names do not begin with `/'.
+These directories are also added to the list of directories
+searched for libraries.
+If
+.B LCCINPUTS
+is defined, it must contain `.' in order for the current directory
+to be searched for input files.
+.PP
+.I lcc
+uses ANSI standard header files (see `FILES' below).
+Include files not found in the ANSI header files
+are taken from the normal default include areas,
+which usually includes
+.BR /usr/include .
+Under Windows, if the environment variable
+.B include
+is defined, it gives a semicolon-separated list of directories in which to search for
+header files.
+.PP
+.I lcc
+interprets the following options; unrecognized options are
+taken as loader options (see
+.IR ld (1))
+unless
+.BR \-c ,
+.BR \-S ,
+or
+.B \-E
+precedes them.
+Except for
+.BR \-l ,
+all options are processed before any of the files
+and apply to all of the files.
+Applicable options are passed to each compilation phase in the order given.
+.TP
+.B \-c
+Suppress the loading phase of the compilation, and force
+an object file to be produced even if only one program is compiled.
+.TP
+.B \-g
+Produce additional symbol table information for the local debuggers.
+.I lcc
+warns when
+.B \-g
+is unsupported.
+.TP
+.BI \-Wf\-g n , x
+Set the debugging level to
+.I n
+and emit source code as comments into the generated assembly code;
+.I x
+must be the assembly language comment character.
+If
+.I n
+is omitted, it defaults to 1, which is similar to
+.BR \-g .
+Omitting
+.BI , x
+just sets the debugging level to
+.IR n .
+.TP
+.B \-w
+Suppress warning diagnostics, such as those
+announcing unreferenced statics, locals, and parameters.
+The line
+.I
+#pragma ref id
+simulates a reference to the variable
+.IR id .
+.TP
+.BI \-d n
+Generate jump tables for switches whose density is at least
+.IR n ,
+a floating point constant between zero and one.
+The default is 0.5.
+.TP
+.B \-A
+Warns about
+declarations and casts of function types without prototypes,
+assignments between pointers to ints and pointers to enums, and
+conversions from pointers to smaller integral types.
+A second
+.B \-A
+warns about
+unrecognized control lines,
+nonANSI language extensions and source characters in literals,
+unreferenced variables and static functions,
+declaring arrays of incomplete types,
+and exceeding
+.I some
+ANSI environmental limits, like more than 257 cases in switches.
+It also arranges for duplicate global definitions in separately compiled
+files to cause loader errors.
+.TP
+.B \-P
+Writes declarations for all defined globals on standard error.
+Function declarations include prototypes;
+editing this output can simplify conversion to ANSI C.
+This output may not correspond to the input when
+there are several typedefs for the same type.
+.TP
+.B \-n
+Arrange for the compiler to produce code
+that tests for dereferencing zero pointers.
+The code reports the offending file and line number and calls
+.IR abort (3).
+.TP
+.B \-O
+is ignored.
+.TP
+.B \-S
+Compile the named C programs, and leave the
+assembler-language output on corresponding files suffixed `.s' or `.asm'.
+.TP
+.B \-E
+Run only the preprocessor on the named C programs
+and unsuffixed file arguments,
+and send the result to the standard output.
+.TP
+.BI \-o " output"
+Name the output file
+.IR output .
+If
+.B \-c
+or
+.B \-S
+is specified and there is exactly one source file,
+this option names the object or assembly file, respectively.
+Otherwise, this option names the final executable
+file generated by the loader, and `a.out' (UNIX) or `a.exe' (Windows) is left undisturbed.
+.I lcc
+warns if
+.B \-o
+and
+.B \-c
+or
+.B \-S
+are given with more than one source file and ignores the
+.B \-o
+option.
+.TP
+.BI \-D name=def
+Define the
+.I name
+to the preprocessor, as if by `#define'.
+If
+.I =def
+is omitted, the name is defined as "1".
+.TP
+.BI \-U name
+Remove any initial definition of
+.IR name .
+.TP
+.BI \-I dir
+`#include' files
+whose names do not begin with `/' are always
+sought first in the directory of the
+.I file
+arguments, then in directories named in
+.B \-I
+options, then in directories on a standard list.
+.TP
+.B \-N
+Do not search
+.I any
+of the standard directories for `#include' files.
+Only those directories specified by subsequent explicit
+.B \-I
+options will be searched, in the order given.
+.TP
+.BI \-B str
+Use the compiler
+.BI "" str rcc
+instead of the default version.
+Note that
+.I str
+often requires a trailing slash.
+On Sparcs only,
+.B \-Bstatic
+and
+.BI \-Bdynamic
+are passed to the loader; see
+.IR ld (1).
+.TP
+.BI \-Wo\-lccdir= dir
+Find the preprocessor, compiler proper, and include directory
+in the directory
+.I dir/
+or
+.I
+dir\\.
+If the environment variable
+.B LCCDIR
+is defined, it gives this directory.
+.I lcc
+warns when this option is unsupported.
+.TP
+.B \-Wf-unsigned_char=1
+.br
+.ns
+.TP
+.B \-Wf-unsigned_char=0
+makes plain
+.B char
+an unsigned (1) or signed (0) type; by default,
+.B char
+is signed.
+.TP
+.B \-Wf\-wchar_t=unsigned_char
+.br
+.ns
+.TP
+.B \-Wf\-wchar_t=unsigned_short
+.br
+.ns
+.TP
+.B \-Wf\-wchar_t=unsigned_int
+Makes wide characters the type indicated; by default,
+wide characters are unsigned short ints, and
+.B wchar_t
+is a typedef for unsigned short defined in stddef.h.
+The definition for
+.B wchar_t
+in stddef.h must correspond to the type specified.
+.TP
+.B \-v
+Print commands as they are executed; some of the executed
+programs are directed to print their version numbers.
+More than one occurrence of
+.B \-v
+causes the commands to be printed, but
+.I not
+executed.
+.TP
+.BR \-help " or " \-?
+Print a message on the standard error summarizing
+.IR lcc 's
+options and giving the values of the environment variables
+.B LCCINPUTS
+and
+.BR LCCDIR ,
+if they are defined.
+Under Windows, the values of
+.B include
+and
+.B lib
+are also given, if they are defined.
+.TP
+.B \-b
+Produce code that counts the number of times each expression is executed.
+If loading takes place, arrange for a
+.B prof.out
+file to be written when the object program terminates.
+A listing annotated with execution counts can then be generated with
+.IR bprint (1).
+.I lcc
+warns when
+.B \-b
+is unsupported.
+.B \-Wf\-C
+is similar, but counts only the number of function calls.
+.TP
+.B \-p
+Produce code that counts the number of times each function is called.
+If loading takes place, replace the standard startup
+function by one that automatically calls
+.IR monitor (3)
+at the start and arranges to write a
+.B mon.out
+file when the object program terminates normally.
+An execution profile can then be generated with
+.IR prof (1).
+.I lcc
+warns when
+.B \-p
+is unsupported.
+.TP
+.B \-pg
+Causes the compiler to produce counting code like
+.BR \-p ,
+but invokes a run-time recording mechanism that keeps more
+extensive statistics and produces a
+.B gmon.out
+file at normal termination.
+Also, a profiling library is searched, in lieu of the standard C library.
+An execution profile can then be generated with
+.IR gprof (1).
+.I lcc
+warns when
+.B \-pg
+is unsupported.
+.TP
+.BI \-t name
+.br
+.ns
+.TP
+.BI \-t
+Produce code to print the name of the function, an activation number,
+and the name and value of each argument at function entry.
+At function exit, produce code to print
+the name of the function, the activation number, and the return value.
+By default,
+.I printf
+does the printing; if
+.I name
+appears, it does.
+For null
+.I char*
+values, "(null)" is printed.
+.BI \-target
+.I name
+is accepted, but ignored.
+.TP
+.BI \-tempdir= dir
+Store temporary files in the directory
+.I dir/
+or
+.I
+dir\\.
+The default is usually
+.BR /tmp .
+.TP
+.BI \-W xarg
+pass argument
+.I arg
+to the program indicated by
+.IR x ;
+.I x
+can be one of
+.BR p ,
+.BR f ,
+.BR a ,
+or
+.BR l ,
+which refer, respectively, to the preprocessor, the compiler proper,
+the assembler, and the loader.
+.I arg
+is passed as given; if a
+.B \-
+is expected, it must be given explicitly.
+.BI \-Wo arg
+specifies a system-specific option,
+.IR arg .
+.PP
+Other arguments
+are taken to be either loader option arguments, or C-compatible
+object programs, typically produced by an earlier
+.I lcc
+run, or perhaps libraries of C-compatible routines.
+Duplicate object files are ignored.
+These programs, together with the results of any
+compilations specified, are loaded (in the order
+given) to produce an executable program with name
+.BR a.out
+(UNIX) or
+.BR a.exe
+(Windows).
+.PP
+.I lcc
+assigns the most frequently referenced scalar parameters and
+locals to registers whenever possible.
+For each block,
+explicit register declarations are obeyed first;
+remaining registers are assigned to automatic locals if they
+are `referenced' at least 3 times.
+Each top-level occurrence of an identifier
+counts as 1 reference. Occurrences in a loop,
+either of the then/else arms of an if statement, or a case
+in a switch statement each count, respectively, as 10, 1/2, or 1/10 references.
+These values are adjusted accordingly for nested control structures.
+.B \-Wf\-a
+causes
+.I lcc
+to read a
+.B prof.out
+file from a previous execution and to use the data therein
+to compute reference counts (see
+.BR \-b ).
+.PP
+.I lcc
+is a cross compiler;
+.BI \-Wf\-target= target/os
+causes
+.I lcc
+to generate code for
+.I target
+running the operating system denoted by
+.IR os .
+The supported
+.I target/os
+combinations may include
+.PP
+.RS
+.ta \w'sparc/solarisxx'u
+.nf
+alpha/osf ALPHA, OSF 3.2
+mips/irix big-endian MIPS, IRIX 5.2
+mips/ultrix little-endian MIPS, ULTRIX 4.3
+sparc/solaris SPARC, Solaris 2.3
+x86/win32 x86, Windows NT 4.0/Windows 95/98
+x86/linux x86, Linux
+symbolic text rendition of the generated code
+null no output
+.fi
+.RE
+.PP
+For
+.BR \-Wf\-target=symbolic ,
+the option
+.B \-Wf-html
+causes the text rendition to be emitted as HTML.
+.B
+.SH LIMITATIONS
+.PP
+.I lcc
+accepts the C programming language
+as described in the ANSI standard.
+If
+.I lcc
+is used with the GNU C preprocessor, the
+.B \-Wp\-trigraphs
+option is required to enable trigraph sequences.
+.PP
+Plain int bit fields are signed.
+Bit fields are aligned like unsigned integers but are otherwise laid out
+as by most standard C compilers.
+Some compilers, such as the GNU C compiler,
+may choose other, incompatible layouts.
+.PP
+Likewise, calling conventions are intended to be compatible with
+the host C compiler,
+except possibly for passing and returning structures.
+Specifically,
+.I lcc
+passes and returns structures like host ANSI C compilers
+on most targets, but some older host C compilers use different conventions.
+Consequently, calls to/from such functions compiled with
+older C compilers may not work.
+Calling a function that returns
+a structure without declaring it as such violates
+the ANSI standard and may cause a fault.
+.SH FILES
+.PP
+The file names listed below are
+.IR typical ,
+but vary among installations; installation-dependent variants
+can be displayed by running
+.I lcc
+with the
+.B \-v
+option.
+.PP
+.RS
+.ta \w'$LCCDIR/liblcc.{a,lib}XX'u
+.nf
+file.{c,C} input file
+file.{s,asm} assembly-language file
+file.{o,obj} object file
+a.{out,exe} loaded output
+/tmp/lcc* temporary files
+$LCCDIR/cpp preprocessor
+$LCCDIR/rcc compiler
+$LCCDIR/liblcc.{a,lib} \fIlcc\fP-specific library
+/lib/crt0.o runtime startup (UNIX)
+/lib/[gm]crt0.o startups for profiling (UNIX)
+/lib/libc.a standard library (UNIX)
+$LCCDIR/include ANSI standard headers
+/usr/local/include local headers
+/usr/include traditional headers
+prof.out file produced for \fIbprint\fR(1)
+mon.out file produced for \fIprof\fR(1)
+gmon.out file produced for \fIgprof\fR(1)
+.fi
+.RE
+.PP
+.I lcc
+predefines the macro
+.B __LCC__
+on all systems.
+It may also predefine some installation-dependent symbols; option
+.B \-v
+exposes them.
+.SH "SEE ALSO"
+.PP
+C. W. Fraser and D. R. Hanson,
+.I A Retargetable C Compiler: Design and Implementation,
+Addison-Wesley, 1995. ISBN 0-8053-1670-1.
+.PP
+The World-Wide Web page at http://www.cs.princeton.edu/software/lcc/.
+.PP
+S. P. Harbison and G. L. Steele, Jr.,
+.I C: A Reference Manual,
+4th ed., Prentice-Hall, 1995.
+.PP
+B. W. Kernighan and D. M. Ritchie,
+.I The C Programming Language,
+2nd ed., Prentice-Hall, 1988.
+.PP
+American National Standards Inst.,
+.I American National Standard for Information Systems\(emProgramming
+.IR Language\(emC ,
+ANSI X3.159-1989, New York, 1990.
+.br
+.SH BUGS
+Mail bug reports along with the shortest preprocessed program
+that exposes them and the details reported by
+.IR lcc 's
+.B \-v
+option to lcc-bugs@princeton.edu. The WWW page at
+URL http://www.cs.princeton.edu/software/lcc/
+includes detailed instructions for reporting bugs.
+.PP
+The ANSI standard headers conform to the specifications in
+the Standard, which may be too restrictive for some applications,
+but necessary for portability.
+Functions given in the ANSI headers may be missing from
+some local C libraries (e.g., wide-character functions)
+or may not correspond exactly to the local versions;
+for example, the ANSI standard
+stdio.h
+specifies that
+.IR printf ,
+.IR fprintf ,
+and
+.I sprintf
+return the number of characters written to the file or array,
+but some existing libraries don't implement this convention.
+.PP
+On the MIPS and SPARC, old-style variadic functions must use
+varargs.h
+from MIPS or Sun. New-style is recommended.
+.PP
+With
+.BR \-b ,
+files compiled
+.I without
+.B \-b
+may cause
+.I bprint
+to print erroneous call graphs.
+For example, if
+.B f
+calls
+.B g
+calls
+.B h
+and
+.B f
+and
+.B h
+are compiled with
+.BR \-b ,
+but
+.B g
+is not,
+.B bprint
+will report that
+.B f
+called
+.BR h .
+The total number of calls is correct, however.
diff --git a/lcc/etc/bprint.c b/lcc/etc/bprint.c
index 856d40b..d22f537 100755
--- a/lcc/etc/bprint.c
+++ b/lcc/etc/bprint.c
@@ -1,475 +1,475 @@
-#include <assert.h>
-#include <ctype.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-/* bprint [ -c | -Idir... | -f | -b | -n ] [ file... ]
- * annotate listings of files with prof.out data
- */
-
-
-#define NDIRS (sizeof dirs/sizeof dirs[0] - 1)
-#define NEW(p,a) ((p) = alloc(sizeof *(p)))
-#define newarray(m,n,a) alloc((m)*(n))
-#define NELEMS(a) ((int)(sizeof (a)/sizeof ((a)[0])))
-
-#define MAXTOKEN 64
-
-struct count { /* count data: */
- int x, y; /* source coordinate */
- int count; /* associated execution count */
-};
-
-char *progname;
-int number;
-char *dirs[20];
-int fcount;
-
-struct file { /* per-file prof.out data: */
- struct file *link; /* link to next file */
- char *name; /* file name */
- int size; /* size of counts[] */
- int count; /* counts[0..count-1] hold valid data */
- struct count *counts; /* count data */
- struct func { /* function data: */
- struct func *link; /* link to next function */
- char *name; /* function name */
- struct count count; /* total number of calls */
- struct caller { /* caller data: */
- struct caller *link; /* link to next caller */
- char *name; /* caller's name */
- char *file; /* call site: file, x, y */
- int x, y;
- int count; /* number of calls from this site */
- } *callers;
- } *funcs; /* list of functions */
-} *filelist;
-FILE *fp;
-
-extern int process(char *);
-extern int findfunc(char *, char *);
-extern int findcount(char *, int, int);
-
-void *alloc(unsigned);
-char *string(char *);
-int process(char *);
-void emitdata(char *);
-void printfile(struct file *, int);
-void printfuncs(struct file *, int);
-
-/* alloc - allocate n bytes or die */
-void *alloc(unsigned n) {
- void *new = malloc(n);
-
- assert(new);
- return new;
-}
-
-/* emitdata - write prof.out data to file */
-void emitdata(char *file) {
- FILE *fp;
-
- if (fp = fopen(file, "w")) {
- struct file *p;
- for (p = filelist; p; p = p->link) {
- int i;
- struct func *q;
- struct caller *r;
- fprintf(fp, "1\n%s\n", p->name);
- for (i = 0, q = p->funcs; q; i++, q = q->link)
- if (r = q->callers)
- for (i--; r; r = r->link)
- i++;
- fprintf(fp, "%d\n", i);
- for (q = p->funcs; q; q = q->link)
- if (q->count.count == 0 || !q->callers)
- fprintf(fp, "%s 1 %d %d %d ? ? 0 0\n", q->name, q->count.x,
- q->count.y, q->count.count);
- else
- for (r = q->callers; r; r = r->link)
- fprintf(fp, "%s 1 %d %d %d %s %s %d %d\n", q->name, q->count.x,
- q->count.y, r->count, r->name, r->file, r->x, r->y);
- fprintf(fp, "%d\n", p->count);
- for (i = 0; i < p->count; i++)
- fprintf(fp, "1 %d %d %d\n", p->counts[i].x,
- p->counts[i].y, p->counts[i].count);
- }
- fclose(fp);
- } else
- fprintf(stderr, "%s: can't create `%s'\n", progname, file);
-}
-
-/* openfile - open name for reading, searching -I directories */
-FILE *openfile(char *name) {
- int i;
- FILE *fp;
-
- if (*name != '/')
- for (i = 0; dirs[i]; i++) {
- char buf[200];
- sprintf(buf, "%s/%s", dirs[i], name);
- if (fp = fopen(buf, "r"))
- return fp;
- }
- return fopen(name, "r");
-}
-
-/* printfile - print annotated listing for p */
-void printfile(struct file *p, int nf) {
- int lineno;
- FILE *fp;
- char *s, buf[512];
- struct count *u = p->counts, *r, *uend;
-
- if (u == 0 || p->count <= 0)
- return;
- uend = &p->counts[p->count];
- if ((fp = openfile(p->name)) == NULL) {
- fprintf(stderr, "%s: can't open `%s'\n", progname, p->name);
- return;
- }
- if (nf)
- printf("%s%s:\n\n", nf == 1 ? "" : "\f", p->name);
- for (lineno = 1; fgets(buf, sizeof buf, fp); lineno++) {
- if (number)
- printf("%d\t", lineno);
- while (u < uend && u->y < lineno)
- u++;
- for (s = buf; *s; ) {
- char *t = s + 1;
- while (u < uend && u->y == lineno && u->x < s - buf)
- u++;
- if (isalnum(*s) || *s == '_')
- while (isalnum(*t) || *t == '_')
- t++;
- while (u < uend && u->y == lineno && u->x < t - buf) {
- printf("<%d>", u->count);
- for (r = u++; u < uend && u->x == r->x && u->y == r->y && u->count == r->count; u++)
- ;
- }
- while (s < t)
- putchar(*s++);
- }
- if (*s)
- printf("%s", s);
- }
- fclose(fp);
-}
-
-/* printfuncs - summarize data for functions in p */
-void printfuncs(struct file *p, int nf) {
- struct func *q;
-
- if (nf)
- printf("%s:\n", p->name);
- for (q = p->funcs; q; q = q->link)
- if (fcount <= 1 || q->count.count == 0 || !q->callers)
- printf("%d\t%s\n", q->count.count, q->name);
- else {
- struct caller *r;
- for (r = q->callers; r; r = r->link)
- printf("%d\t%s\tfrom %s\tin %s:%d.%d\n", r->count, q->name, r->name,
- r->file, r->y, r->x + 1);
- }
-
-}
-
-/* string - save a copy of str, if necessary */
-char *string(char *str) {
- static struct string { struct string *link; char str[1]; } *list;
- struct string *p;
-
- for (p = list; p; p = p->link)
- if (strcmp(p->str, str) == 0)
- return p->str;
- p = (struct string *)alloc(strlen(str) + sizeof *p);
- strcpy(p->str, str);
- p->link = list;
- list = p;
- return p->str;
-}
-/* acaller - add caller and site (file,x,y) to callee's callers list */
-static void acaller(char *caller, char *file, int x, int y, int count, struct func *callee) {
- struct caller *q;
-
- assert(callee);
- for (q = callee->callers; q && (caller != q->name
- || file != q->file || x != q->x || y != q->y); q = q->link)
- ;
- if (!q) {
- struct caller **r;
- NEW(q, PERM);
- q->name = caller;
- q->file = file;
- q->x = x;
- q->y = y;
- q->count = 0;
- for (r = &callee->callers; *r && (strcmp(q->name, (*r)->name) > 0
- || strcmp(q->file, (*r)->file) > 0 || q->y > (*r)->y || q->y > (*r)->y); r = &(*r)->link)
- ;
- q->link = *r;
- *r = q;
- }
- q->count += count;
-}
-
-/* compare - return <0, 0, >0 if a<b, a==b, a>b, resp. */
-static int compare(struct count *a, struct count *b) {
- if (a->y == b->y)
- return a->x - b->x;
- return a->y - b->y;
-}
-
-/* findfile - return file name's file list entry, or 0 */
-static struct file *findfile(char *name) {
- struct file *p;
-
- for (p = filelist; p; p = p->link)
- if (p->name == name)
- return p;
- return 0;
-}
-
-/* afunction - add function name and its data to file's function list */
-static struct func *afunction(char *name, char *file, int x, int y, int count) {
- struct file *p = findfile(file);
- struct func *q;
-
- assert(p);
- for (q = p->funcs; q && name != q->name; q = q->link)
- ;
- if (!q) {
- struct func **r;
- NEW(q, PERM);
- q->name = name;
- q->count.x = x;
- q->count.y = y;
- q->count.count = 0;
- q->callers = 0;
- for (r = &p->funcs; *r && compare(&q->count, &(*r)->count) > 0; r = &(*r)->link)
- ;
- q->link = *r;
- *r = q;
- }
- q->count.count += count;
- return q;
-}
-
-/* apoint - append execution point i to file's data */
-static void apoint(int i, char *file, int x, int y, int count) {
- struct file *p = findfile(file);
-
- assert(p);
- if (i >= p->size) {
- int j;
- if (p->size == 0) {
- p->size = i >= 200 ? 2*i : 200;
- p->counts = newarray(p->size, sizeof *p->counts, PERM);
- } else {
- struct count *new;
- p->size = 2*i;
- new = newarray(p->size, sizeof *new, PERM);
- for (j = 0; j < p->count; j++)
- new[j] = p->counts[j];
- p->counts = new;
- }
- for (j = p->count; j < p->size; j++) {
- static struct count z;
- p->counts[j] = z;
- }
- }
- p->counts[i].x = x;
- p->counts[i].y = y;
- p->counts[i].count += count;
- if (i >= p->count)
- p->count = i + 1;
-}
-
-/* findcount - return count associated with (file,x,y) or -1 */
-int findcount(char *file, int x, int y) {
- static struct file *cursor;
-
- if (cursor == 0 || cursor->name != file)
- cursor = findfile(file);
- if (cursor) {
- int l, u;
- struct count *c = cursor->counts;
- for (l = 0, u = cursor->count - 1; l <= u; ) {
- int k = (l + u)/2;
- if (c[k].y > y || c[k].y == y && c[k].x > x)
- u = k - 1;
- else if (c[k].y < y || c[k].y == y && c[k].x < x)
- l = k + 1;
- else
- return c[k].count;
- }
- }
- return -1;
-}
-
-/* findfunc - return count associated with function name in file or -1 */
-int findfunc(char *name, char *file) {
- static struct file *cursor;
-
- if (cursor == 0 || cursor->name != file)
- cursor = findfile(file);
- if (cursor) {
- struct func *p;
- for (p = cursor->funcs; p; p = p->link)
- if (p->name == name)
- return p->count.count;
- }
- return -1;
-}
-
-/* getd - read a nonnegative number */
-static int getd(void) {
- int c, n = 0;
-
- while ((c = getc(fp)) != EOF && (c == ' ' || c == '\n' || c == '\t'))
- ;
- if (c >= '0' && c <= '9') {
- do
- n = 10*n + (c - '0');
- while ((c = getc(fp)) >= '0' && c <= '9');
- return n;
- }
- return -1;
-}
-
-/* getstr - read a string */
-static char *getstr(void) {
- int c;
- char buf[MAXTOKEN], *s = buf;
-
- while ((c = getc(fp)) != EOF && c != ' ' && c != '\n' && c != '\t')
- if (s - buf < (int)sizeof buf - 2)
- *s++ = c;
- *s = 0;
- return s == buf ? (char *)0 : string(buf);
-}
-
-/* gather - read prof.out data from fd */
-static int gather(void) {
- int i, nfiles, nfuncs, npoints;
- char *files[64];
-
- if ((nfiles = getd()) < 0)
- return 0;
- assert(nfiles < NELEMS(files));
- for (i = 0; i < nfiles; i++) {
- if ((files[i] = getstr()) == 0)
- return -1;
- if (!findfile(files[i])) {
- struct file *new;
- NEW(new, PERM);
- new->name = files[i];
- new->size = new->count = 0;
- new->counts = 0;
- new->funcs = 0;
- new->link = filelist;
- filelist = new;
- }
- }
- if ((nfuncs = getd()) < 0)
- return -1;
- for (i = 0; i < nfuncs; i++) {
- struct func *q;
- char *name, *file;
- int f, x, y, count;
- if ((name = getstr()) == 0 || (f = getd()) <= 0
- || (x = getd()) < 0 || (y = getd()) < 0 || (count = getd()) < 0)
- return -1;
- q = afunction(name, files[f-1], x, y, count);
- if ((name = getstr()) == 0 || (file = getstr()) == 0
- || (x = getd()) < 0 || (y = getd()) < 0)
- return -1;
- if (*name != '?')
- acaller(name, file, x, y, count, q);
- }
- if ((npoints = getd()) < 0)
- return -1;
- for (i = 0; i < npoints; i++) {
- int f, x, y, count;
- if ((f = getd()) < 0 || (x = getd()) < 0 || (y = getd()) < 0
- || (count = getd()) < 0)
- return -1;
- if (f)
- apoint(i, files[f-1], x, y, count);
- }
- return 1;
-}
-
-/* process - read prof.out data from file */
-int process(char *file) {
- int more;
-
- if ((fp = fopen(file, "r")) != NULL) {
- struct file *p;
- while ((more = gather()) > 0)
- ;
- fclose(fp);
- if (more < 0)
- return more;
- for (p = filelist; p; p = p->link)
- qsort(p->counts, p->count, sizeof *p->counts,
- (int (*)(const void *, const void *))
- compare);
-
- return 1;
- }
- return 0;
-}
-int main(int argc, char *argv[]) {
- int i;
- struct file *p;
- void (*f)(struct file *, int) = printfile;
-
- progname = argv[0];
- if ((i = process("prof.out")) <= 0) {
- fprintf(stderr, "%s: can't %s `%s'\n", progname,
- i == 0 ? "open" : "interpret", "prof.out");
- exit(1);
- }
- for (i = 1; i < argc && *argv[i] == '-'; i++)
- if (strcmp(argv[i], "-c") == 0) {
- emitdata("prof.out");
- exit(0);
- } else if (strcmp(argv[i], "-b") == 0)
- f = printfile;
- else if (strcmp(argv[i], "-f") == 0) {
- fcount++;
- f = printfuncs;
- } else if (strcmp(argv[i], "-n") == 0)
- number++;
- else if (strncmp(argv[i], "-I", 2) == 0) {
- int j;
- for (j = 0; j < NDIRS && dirs[j]; j++)
- ;
- if (j < NDIRS)
- dirs[j] = &argv[i][2];
- else
- fprintf(stderr, "%s: too many -I options\n", progname);
- } else {
- fprintf(stderr, "usage: %s [ -c | -b | -n | -f | -Idir... ] [ file... ]\n", progname);
- exit(1);
- }
- for (p = filelist; p; p = p->link)
- qsort(p->counts, p->count, sizeof *p->counts,
- (int (*)(const void *, const void *))compare);
- if (i < argc) {
- int nf = i < argc - 1 ? 1 : 0;
- for ( ; i < argc; i++, nf ? nf++ : 0)
- if (p = findfile(string(argv[i])))
- (*f)(p, nf);
- else
- fprintf(stderr, "%s: no data for `%s'\n", progname, argv[i]);
- } else {
- int nf = filelist && filelist->link ? 1 : 0;
- for (p = filelist; p; p = p->link, nf ? nf++ : 0)
- (*f)(p, nf);
- }
- return 0;
-}
-
+#include <assert.h>
+#include <ctype.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+/* bprint [ -c | -Idir... | -f | -b | -n ] [ file... ]
+ * annotate listings of files with prof.out data
+ */
+
+
+#define NDIRS (sizeof dirs/sizeof dirs[0] - 1)
+#define NEW(p,a) ((p) = alloc(sizeof *(p)))
+#define newarray(m,n,a) alloc((m)*(n))
+#define NELEMS(a) ((int)(sizeof (a)/sizeof ((a)[0])))
+
+#define MAXTOKEN 64
+
+struct count { /* count data: */
+ int x, y; /* source coordinate */
+ int count; /* associated execution count */
+};
+
+char *progname;
+int number;
+char *dirs[20];
+int fcount;
+
+struct file { /* per-file prof.out data: */
+ struct file *link; /* link to next file */
+ char *name; /* file name */
+ int size; /* size of counts[] */
+ int count; /* counts[0..count-1] hold valid data */
+ struct count *counts; /* count data */
+ struct func { /* function data: */
+ struct func *link; /* link to next function */
+ char *name; /* function name */
+ struct count count; /* total number of calls */
+ struct caller { /* caller data: */
+ struct caller *link; /* link to next caller */
+ char *name; /* caller's name */
+ char *file; /* call site: file, x, y */
+ int x, y;
+ int count; /* number of calls from this site */
+ } *callers;
+ } *funcs; /* list of functions */
+} *filelist;
+FILE *fp;
+
+extern int process(char *);
+extern int findfunc(char *, char *);
+extern int findcount(char *, int, int);
+
+void *alloc(unsigned);
+char *string(char *);
+int process(char *);
+void emitdata(char *);
+void printfile(struct file *, int);
+void printfuncs(struct file *, int);
+
+/* alloc - allocate n bytes or die */
+void *alloc(unsigned n) {
+ void *new = malloc(n);
+
+ assert(new);
+ return new;
+}
+
+/* emitdata - write prof.out data to file */
+void emitdata(char *file) {
+ FILE *fp;
+
+ if (fp = fopen(file, "w")) {
+ struct file *p;
+ for (p = filelist; p; p = p->link) {
+ int i;
+ struct func *q;
+ struct caller *r;
+ fprintf(fp, "1\n%s\n", p->name);
+ for (i = 0, q = p->funcs; q; i++, q = q->link)
+ if (r = q->callers)
+ for (i--; r; r = r->link)
+ i++;
+ fprintf(fp, "%d\n", i);
+ for (q = p->funcs; q; q = q->link)
+ if (q->count.count == 0 || !q->callers)
+ fprintf(fp, "%s 1 %d %d %d ? ? 0 0\n", q->name, q->count.x,
+ q->count.y, q->count.count);
+ else
+ for (r = q->callers; r; r = r->link)
+ fprintf(fp, "%s 1 %d %d %d %s %s %d %d\n", q->name, q->count.x,
+ q->count.y, r->count, r->name, r->file, r->x, r->y);
+ fprintf(fp, "%d\n", p->count);
+ for (i = 0; i < p->count; i++)
+ fprintf(fp, "1 %d %d %d\n", p->counts[i].x,
+ p->counts[i].y, p->counts[i].count);
+ }
+ fclose(fp);
+ } else
+ fprintf(stderr, "%s: can't create `%s'\n", progname, file);
+}
+
+/* openfile - open name for reading, searching -I directories */
+FILE *openfile(char *name) {
+ int i;
+ FILE *fp;
+
+ if (*name != '/')
+ for (i = 0; dirs[i]; i++) {
+ char buf[200];
+ sprintf(buf, "%s/%s", dirs[i], name);
+ if (fp = fopen(buf, "r"))
+ return fp;
+ }
+ return fopen(name, "r");
+}
+
+/* printfile - print annotated listing for p */
+void printfile(struct file *p, int nf) {
+ int lineno;
+ FILE *fp;
+ char *s, buf[512];
+ struct count *u = p->counts, *r, *uend;
+
+ if (u == 0 || p->count <= 0)
+ return;
+ uend = &p->counts[p->count];
+ if ((fp = openfile(p->name)) == NULL) {
+ fprintf(stderr, "%s: can't open `%s'\n", progname, p->name);
+ return;
+ }
+ if (nf)
+ printf("%s%s:\n\n", nf == 1 ? "" : "\f", p->name);
+ for (lineno = 1; fgets(buf, sizeof buf, fp); lineno++) {
+ if (number)
+ printf("%d\t", lineno);
+ while (u < uend && u->y < lineno)
+ u++;
+ for (s = buf; *s; ) {
+ char *t = s + 1;
+ while (u < uend && u->y == lineno && u->x < s - buf)
+ u++;
+ if (isalnum(*s) || *s == '_')
+ while (isalnum(*t) || *t == '_')
+ t++;
+ while (u < uend && u->y == lineno && u->x < t - buf) {
+ printf("<%d>", u->count);
+ for (r = u++; u < uend && u->x == r->x && u->y == r->y && u->count == r->count; u++)
+ ;
+ }
+ while (s < t)
+ putchar(*s++);
+ }
+ if (*s)
+ printf("%s", s);
+ }
+ fclose(fp);
+}
+
+/* printfuncs - summarize data for functions in p */
+void printfuncs(struct file *p, int nf) {
+ struct func *q;
+
+ if (nf)
+ printf("%s:\n", p->name);
+ for (q = p->funcs; q; q = q->link)
+ if (fcount <= 1 || q->count.count == 0 || !q->callers)
+ printf("%d\t%s\n", q->count.count, q->name);
+ else {
+ struct caller *r;
+ for (r = q->callers; r; r = r->link)
+ printf("%d\t%s\tfrom %s\tin %s:%d.%d\n", r->count, q->name, r->name,
+ r->file, r->y, r->x + 1);
+ }
+
+}
+
+/* string - save a copy of str, if necessary */
+char *string(char *str) {
+ static struct string { struct string *link; char str[1]; } *list;
+ struct string *p;
+
+ for (p = list; p; p = p->link)
+ if (strcmp(p->str, str) == 0)
+ return p->str;
+ p = (struct string *)alloc(strlen(str) + sizeof *p);
+ strcpy(p->str, str);
+ p->link = list;
+ list = p;
+ return p->str;
+}
+/* acaller - add caller and site (file,x,y) to callee's callers list */
+static void acaller(char *caller, char *file, int x, int y, int count, struct func *callee) {
+ struct caller *q;
+
+ assert(callee);
+ for (q = callee->callers; q && (caller != q->name
+ || file != q->file || x != q->x || y != q->y); q = q->link)
+ ;
+ if (!q) {
+ struct caller **r;
+ NEW(q, PERM);
+ q->name = caller;
+ q->file = file;
+ q->x = x;
+ q->y = y;
+ q->count = 0;
+ for (r = &callee->callers; *r && (strcmp(q->name, (*r)->name) > 0
+ || strcmp(q->file, (*r)->file) > 0 || q->y > (*r)->y || q->y > (*r)->y); r = &(*r)->link)
+ ;
+ q->link = *r;
+ *r = q;
+ }
+ q->count += count;
+}
+
+/* compare - return <0, 0, >0 if a<b, a==b, a>b, resp. */
+static int compare(struct count *a, struct count *b) {
+ if (a->y == b->y)
+ return a->x - b->x;
+ return a->y - b->y;
+}
+
+/* findfile - return file name's file list entry, or 0 */
+static struct file *findfile(char *name) {
+ struct file *p;
+
+ for (p = filelist; p; p = p->link)
+ if (p->name == name)
+ return p;
+ return 0;
+}
+
+/* afunction - add function name and its data to file's function list */
+static struct func *afunction(char *name, char *file, int x, int y, int count) {
+ struct file *p = findfile(file);
+ struct func *q;
+
+ assert(p);
+ for (q = p->funcs; q && name != q->name; q = q->link)
+ ;
+ if (!q) {
+ struct func **r;
+ NEW(q, PERM);
+ q->name = name;
+ q->count.x = x;
+ q->count.y = y;
+ q->count.count = 0;
+ q->callers = 0;
+ for (r = &p->funcs; *r && compare(&q->count, &(*r)->count) > 0; r = &(*r)->link)
+ ;
+ q->link = *r;
+ *r = q;
+ }
+ q->count.count += count;
+ return q;
+}
+
+/* apoint - append execution point i to file's data */
+static void apoint(int i, char *file, int x, int y, int count) {
+ struct file *p = findfile(file);
+
+ assert(p);
+ if (i >= p->size) {
+ int j;
+ if (p->size == 0) {
+ p->size = i >= 200 ? 2*i : 200;
+ p->counts = newarray(p->size, sizeof *p->counts, PERM);
+ } else {
+ struct count *new;
+ p->size = 2*i;
+ new = newarray(p->size, sizeof *new, PERM);
+ for (j = 0; j < p->count; j++)
+ new[j] = p->counts[j];
+ p->counts = new;
+ }
+ for (j = p->count; j < p->size; j++) {
+ static struct count z;
+ p->counts[j] = z;
+ }
+ }
+ p->counts[i].x = x;
+ p->counts[i].y = y;
+ p->counts[i].count += count;
+ if (i >= p->count)
+ p->count = i + 1;
+}
+
+/* findcount - return count associated with (file,x,y) or -1 */
+int findcount(char *file, int x, int y) {
+ static struct file *cursor;
+
+ if (cursor == 0 || cursor->name != file)
+ cursor = findfile(file);
+ if (cursor) {
+ int l, u;
+ struct count *c = cursor->counts;
+ for (l = 0, u = cursor->count - 1; l <= u; ) {
+ int k = (l + u)/2;
+ if (c[k].y > y || c[k].y == y && c[k].x > x)
+ u = k - 1;
+ else if (c[k].y < y || c[k].y == y && c[k].x < x)
+ l = k + 1;
+ else
+ return c[k].count;
+ }
+ }
+ return -1;
+}
+
+/* findfunc - return count associated with function name in file or -1 */
+int findfunc(char *name, char *file) {
+ static struct file *cursor;
+
+ if (cursor == 0 || cursor->name != file)
+ cursor = findfile(file);
+ if (cursor) {
+ struct func *p;
+ for (p = cursor->funcs; p; p = p->link)
+ if (p->name == name)
+ return p->count.count;
+ }
+ return -1;
+}
+
+/* getd - read a nonnegative number */
+static int getd(void) {
+ int c, n = 0;
+
+ while ((c = getc(fp)) != EOF && (c == ' ' || c == '\n' || c == '\t'))
+ ;
+ if (c >= '0' && c <= '9') {
+ do
+ n = 10*n + (c - '0');
+ while ((c = getc(fp)) >= '0' && c <= '9');
+ return n;
+ }
+ return -1;
+}
+
+/* getstr - read a string */
+static char *getstr(void) {
+ int c;
+ char buf[MAXTOKEN], *s = buf;
+
+ while ((c = getc(fp)) != EOF && c != ' ' && c != '\n' && c != '\t')
+ if (s - buf < (int)sizeof buf - 2)
+ *s++ = c;
+ *s = 0;
+ return s == buf ? (char *)0 : string(buf);
+}
+
+/* gather - read prof.out data from fd */
+static int gather(void) {
+ int i, nfiles, nfuncs, npoints;
+ char *files[64];
+
+ if ((nfiles = getd()) < 0)
+ return 0;
+ assert(nfiles < NELEMS(files));
+ for (i = 0; i < nfiles; i++) {
+ if ((files[i] = getstr()) == 0)
+ return -1;
+ if (!findfile(files[i])) {
+ struct file *new;
+ NEW(new, PERM);
+ new->name = files[i];
+ new->size = new->count = 0;
+ new->counts = 0;
+ new->funcs = 0;
+ new->link = filelist;
+ filelist = new;
+ }
+ }
+ if ((nfuncs = getd()) < 0)
+ return -1;
+ for (i = 0; i < nfuncs; i++) {
+ struct func *q;
+ char *name, *file;
+ int f, x, y, count;
+ if ((name = getstr()) == 0 || (f = getd()) <= 0
+ || (x = getd()) < 0 || (y = getd()) < 0 || (count = getd()) < 0)
+ return -1;
+ q = afunction(name, files[f-1], x, y, count);
+ if ((name = getstr()) == 0 || (file = getstr()) == 0
+ || (x = getd()) < 0 || (y = getd()) < 0)
+ return -1;
+ if (*name != '?')
+ acaller(name, file, x, y, count, q);
+ }
+ if ((npoints = getd()) < 0)
+ return -1;
+ for (i = 0; i < npoints; i++) {
+ int f, x, y, count;
+ if ((f = getd()) < 0 || (x = getd()) < 0 || (y = getd()) < 0
+ || (count = getd()) < 0)
+ return -1;
+ if (f)
+ apoint(i, files[f-1], x, y, count);
+ }
+ return 1;
+}
+
+/* process - read prof.out data from file */
+int process(char *file) {
+ int more;
+
+ if ((fp = fopen(file, "r")) != NULL) {
+ struct file *p;
+ while ((more = gather()) > 0)
+ ;
+ fclose(fp);
+ if (more < 0)
+ return more;
+ for (p = filelist; p; p = p->link)
+ qsort(p->counts, p->count, sizeof *p->counts,
+ (int (*)(const void *, const void *))
+ compare);
+
+ return 1;
+ }
+ return 0;
+}
+int main(int argc, char *argv[]) {
+ int i;
+ struct file *p;
+ void (*f)(struct file *, int) = printfile;
+
+ progname = argv[0];
+ if ((i = process("prof.out")) <= 0) {
+ fprintf(stderr, "%s: can't %s `%s'\n", progname,
+ i == 0 ? "open" : "interpret", "prof.out");
+ exit(1);
+ }
+ for (i = 1; i < argc && *argv[i] == '-'; i++)
+ if (strcmp(argv[i], "-c") == 0) {
+ emitdata("prof.out");
+ exit(0);
+ } else if (strcmp(argv[i], "-b") == 0)
+ f = printfile;
+ else if (strcmp(argv[i], "-f") == 0) {
+ fcount++;
+ f = printfuncs;
+ } else if (strcmp(argv[i], "-n") == 0)
+ number++;
+ else if (strncmp(argv[i], "-I", 2) == 0) {
+ int j;
+ for (j = 0; j < NDIRS && dirs[j]; j++)
+ ;
+ if (j < NDIRS)
+ dirs[j] = &argv[i][2];
+ else
+ fprintf(stderr, "%s: too many -I options\n", progname);
+ } else {
+ fprintf(stderr, "usage: %s [ -c | -b | -n | -f | -Idir... ] [ file... ]\n", progname);
+ exit(1);
+ }
+ for (p = filelist; p; p = p->link)
+ qsort(p->counts, p->count, sizeof *p->counts,
+ (int (*)(const void *, const void *))compare);
+ if (i < argc) {
+ int nf = i < argc - 1 ? 1 : 0;
+ for ( ; i < argc; i++, nf ? nf++ : 0)
+ if (p = findfile(string(argv[i])))
+ (*f)(p, nf);
+ else
+ fprintf(stderr, "%s: no data for `%s'\n", progname, argv[i]);
+ } else {
+ int nf = filelist && filelist->link ? 1 : 0;
+ for (p = filelist; p; p = p->link, nf ? nf++ : 0)
+ (*f)(p, nf);
+ }
+ return 0;
+}
+
diff --git a/lcc/etc/gcc-solaris.c b/lcc/etc/gcc-solaris.c
index c38769c..24b6cd4 100755
--- a/lcc/etc/gcc-solaris.c
+++ b/lcc/etc/gcc-solaris.c
@@ -1,50 +1,50 @@
-/* SPARCs running Solaris 2.5.1 w/GCC tools
- at CS Dept., Princeton University */
-
-#include <string.h>
-
-
-#ifndef LCCDIR
-#define LCCDIR "/usr/local/lib/lcc/"
-#endif
-#ifndef GCCDIR
-#define GCCDIR "/usr/local/gnu/bin/"
-#endif
-#ifndef GCCLIB
-#define GCCLIB "/usr/local/gnu/lib/gcc-lib/sparc-sun-solaris2.5/2.7.2/"
-#endif
-
-char *suffixes[] = { ".c", ".i", ".s", ".o", ".out", 0 };
-char inputs[256] = "";
-char *cpp[] = { LCCDIR "cpp",
- "-D__STDC__=1", "-Dsparc", "-D__sparc__", "-Dsun", "-D__sun__", "-Dunix",
- "$1", "$2", "$3", 0 };
-char *include[] = { "-I" LCCDIR "include", "-I/usr/local/include",
- "-I" GCCLIB "include", "-I/usr/include", 0 };
-char *com[] = { LCCDIR "rcc", "-target=sparc/solaris",
- "$1", "$2", "$3", 0 };
-char *as[] = { GCCDIR "as", "-f", "-o", "$3", "$1", "$2", 0 };
-char *ld[] = { GCCDIR "ld", "-o", "$3", "$1",
- GCCLIB "crti.o", GCCLIB "crt1.o",
- GCCLIB "crtbegin.o", "$2", "", "", "-L" LCCDIR, "-llcc",
- "-L" GCCLIB, "-lgcc", "-lm", "-lc", "",
- GCCLIB "crtend.o", GCCLIB "crtn.o", 0 };
-
-extern char *concat(char *, char *);
-
-int option(char *arg) {
- if (strncmp(arg, "-lccdir=", 8) == 0) {
- cpp[0] = concat(&arg[8], "/cpp");
- include[0] = concat("-I", concat(&arg[8], "/include"));
- ld[10] = concat("-L", &arg[8]);
- com[0] = concat(&arg[8], "/rcc");
- } else if (strcmp(arg, "-g") == 0)
- ;
- else if (strcmp(arg, "-pg") == 0) {
- ld[8] = GCCLIB "gmon.o";
- } else if (strcmp(arg, "-b") == 0)
- ;
- else
- return 0;
- return 1;
-}
+/* SPARCs running Solaris 2.5.1 w/GCC tools
+ at CS Dept., Princeton University */
+
+#include <string.h>
+
+
+#ifndef LCCDIR
+#define LCCDIR "/usr/local/lib/lcc/"
+#endif
+#ifndef GCCDIR
+#define GCCDIR "/usr/local/gnu/bin/"
+#endif
+#ifndef GCCLIB
+#define GCCLIB "/usr/local/gnu/lib/gcc-lib/sparc-sun-solaris2.5/2.7.2/"
+#endif
+
+char *suffixes[] = { ".c", ".i", ".s", ".o", ".out", 0 };
+char inputs[256] = "";
+char *cpp[] = { LCCDIR "cpp",
+ "-D__STDC__=1", "-Dsparc", "-D__sparc__", "-Dsun", "-D__sun__", "-Dunix",
+ "$1", "$2", "$3", 0 };
+char *include[] = { "-I" LCCDIR "include", "-I/usr/local/include",
+ "-I" GCCLIB "include", "-I/usr/include", 0 };
+char *com[] = { LCCDIR "rcc", "-target=sparc/solaris",
+ "$1", "$2", "$3", 0 };
+char *as[] = { GCCDIR "as", "-f", "-o", "$3", "$1", "$2", 0 };
+char *ld[] = { GCCDIR "ld", "-o", "$3", "$1",
+ GCCLIB "crti.o", GCCLIB "crt1.o",
+ GCCLIB "crtbegin.o", "$2", "", "", "-L" LCCDIR, "-llcc",
+ "-L" GCCLIB, "-lgcc", "-lm", "-lc", "",
+ GCCLIB "crtend.o", GCCLIB "crtn.o", 0 };
+
+extern char *concat(char *, char *);
+
+int option(char *arg) {
+ if (strncmp(arg, "-lccdir=", 8) == 0) {
+ cpp[0] = concat(&arg[8], "/cpp");
+ include[0] = concat("-I", concat(&arg[8], "/include"));
+ ld[10] = concat("-L", &arg[8]);
+ com[0] = concat(&arg[8], "/rcc");
+ } else if (strcmp(arg, "-g") == 0)
+ ;
+ else if (strcmp(arg, "-pg") == 0) {
+ ld[8] = GCCLIB "gmon.o";
+ } else if (strcmp(arg, "-b") == 0)
+ ;
+ else
+ return 0;
+ return 1;
+}
diff --git a/lcc/etc/irix.c b/lcc/etc/irix.c
index cc09f1e..1b123e2 100755
--- a/lcc/etc/irix.c
+++ b/lcc/etc/irix.c
@@ -1,64 +1,64 @@
-/* SGI big endian MIPSes running IRIX 5.2 at CS Dept., Princeton University */
-
-#include <string.h>
-
-
-#ifndef LCCDIR
-#define LCCDIR "/usr/local/lib/lcc/"
-#endif
-
-char *suffixes[] = { ".c", ".i", ".s", ".o", ".out", 0 };
-char inputs[256] = "";
-char *cpp[] = { LCCDIR "cpp", "-D__STDC__=1",
- "-DLANGUAGE_C",
- "-DMIPSEB",
- "-DSYSTYPE_SVR4",
- "-D_CFE",
- "-D_LANGUAGE_C",
- "-D_MIPSEB",
- "-D_MIPS_FPSET=16",
- "-D_MIPS_ISA=_MIPS_ISA_MIPS1",
- "-D_MIPS_SIM=_MIPS_SIM_ABI32",
- "-D_MIPS_SZINT=32",
- "-D_MIPS_SZLONG=32",
- "-D_MIPS_SZPTR=32",
- "-D_SGI_SOURCE",
- "-D_SVR4_SOURCE",
- "-D_SYSTYPE_SVR4",
- "-D__host_mips",
- "-D__mips=1",
- "-D__sgi",
- "-D__unix",
- "-Dhost_mips",
- "-Dmips",
- "-Dsgi",
- "-Dunix",
- "$1", "$2", "$3", 0 };
-char *com[] = { LCCDIR "rcc", "-target=mips/irix", "$1", "$2", "$3", "", 0 };
-char *include[] = { "-I" LCCDIR "include", "-I/usr/local/include",
- "-I/usr/include", 0 };
-char *as[] = { "/usr/bin/as", "-o", "$3", "$1", "-nocpp", "-KPIC", "$2", 0 };
-char *ld[] = { "/usr/bin/ld", "-require_dynamic_link", "_rld_new_interface",
- "-elf", "-_SYSTYPE_SVR4", "-Wx,-G", "0", "-g0", "-KPIC", "-dont_warn_unused",
- "-o", "$3", "/usr/lib/crt1.o", "-L/usr/local/lib",
- "$1", "$2", "", "-L" LCCDIR, "-llcc", "-lc", "-lm", "/usr/lib/crtn.o", 0
-};
-
-extern char *concat(char *, char *);
-
-int option(char *arg) {
- if (strncmp(arg, "-lccdir=", 8) == 0) {
- cpp[0] = concat(&arg[8], "/cpp");
- include[0] = concat("-I", concat(&arg[8], "/include"));
- com[0] = concat(&arg[8], "/rcc");
- ld[17] = concat("-L", &arg[8]);
- } else if (strcmp(arg, "-g") == 0)
- ;
- else if (strcmp(arg, "-p") == 0)
- ld[12] = "/usr/lib/mcrt1.o";
- else if (strcmp(arg, "-b") == 0)
- ;
- else
- return 0;
- return 1;
-}
+/* SGI big endian MIPSes running IRIX 5.2 at CS Dept., Princeton University */
+
+#include <string.h>
+
+
+#ifndef LCCDIR
+#define LCCDIR "/usr/local/lib/lcc/"
+#endif
+
+char *suffixes[] = { ".c", ".i", ".s", ".o", ".out", 0 };
+char inputs[256] = "";
+char *cpp[] = { LCCDIR "cpp", "-D__STDC__=1",
+ "-DLANGUAGE_C",
+ "-DMIPSEB",
+ "-DSYSTYPE_SVR4",
+ "-D_CFE",
+ "-D_LANGUAGE_C",
+ "-D_MIPSEB",
+ "-D_MIPS_FPSET=16",
+ "-D_MIPS_ISA=_MIPS_ISA_MIPS1",
+ "-D_MIPS_SIM=_MIPS_SIM_ABI32",
+ "-D_MIPS_SZINT=32",
+ "-D_MIPS_SZLONG=32",
+ "-D_MIPS_SZPTR=32",
+ "-D_SGI_SOURCE",
+ "-D_SVR4_SOURCE",
+ "-D_SYSTYPE_SVR4",
+ "-D__host_mips",
+ "-D__mips=1",
+ "-D__sgi",
+ "-D__unix",
+ "-Dhost_mips",
+ "-Dmips",
+ "-Dsgi",
+ "-Dunix",
+ "$1", "$2", "$3", 0 };
+char *com[] = { LCCDIR "rcc", "-target=mips/irix", "$1", "$2", "$3", "", 0 };
+char *include[] = { "-I" LCCDIR "include", "-I/usr/local/include",
+ "-I/usr/include", 0 };
+char *as[] = { "/usr/bin/as", "-o", "$3", "$1", "-nocpp", "-KPIC", "$2", 0 };
+char *ld[] = { "/usr/bin/ld", "-require_dynamic_link", "_rld_new_interface",
+ "-elf", "-_SYSTYPE_SVR4", "-Wx,-G", "0", "-g0", "-KPIC", "-dont_warn_unused",
+ "-o", "$3", "/usr/lib/crt1.o", "-L/usr/local/lib",
+ "$1", "$2", "", "-L" LCCDIR, "-llcc", "-lc", "-lm", "/usr/lib/crtn.o", 0
+};
+
+extern char *concat(char *, char *);
+
+int option(char *arg) {
+ if (strncmp(arg, "-lccdir=", 8) == 0) {
+ cpp[0] = concat(&arg[8], "/cpp");
+ include[0] = concat("-I", concat(&arg[8], "/include"));
+ com[0] = concat(&arg[8], "/rcc");
+ ld[17] = concat("-L", &arg[8]);
+ } else if (strcmp(arg, "-g") == 0)
+ ;
+ else if (strcmp(arg, "-p") == 0)
+ ld[12] = "/usr/lib/mcrt1.o";
+ else if (strcmp(arg, "-b") == 0)
+ ;
+ else
+ return 0;
+ return 1;
+}
diff --git a/lcc/etc/lcc.c b/lcc/etc/lcc.c
index c70abbb..a52119b 100755
--- a/lcc/etc/lcc.c
+++ b/lcc/etc/lcc.c
@@ -1,793 +1,793 @@
-/*
- * lcc [ option ]... [ file | -llib ]...
- * front end for the ANSI C compiler
- */
-static char rcsid[] = "Id: dummy rcsid";
-
-#include <stdio.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <string.h>
-#include <assert.h>
-#include <ctype.h>
-#include <signal.h>
-
-#ifndef TEMPDIR
-#define TEMPDIR "/tmp"
-#endif
-
-typedef struct list *List;
-struct list { /* circular list nodes: */
- char *str; /* option or file name */
- List link; /* next list element */
-};
-
-static void *alloc(int);
-static List append(char *,List);
-extern char *basepath(char *);
-static int callsys(char *[]);
-extern char *concat(char *, char *);
-static int compile(char *, char *);
-static void compose(char *[], List, List, List);
-static void error(char *, char *);
-static char *exists(char *);
-static char *first(char *);
-static int filename(char *, char *);
-static List find(char *, List);
-static void help(void);
-static void initinputs(void);
-static void interrupt(int);
-static void opt(char *);
-static List path2list(const char *);
-extern int main(int, char *[]);
-extern char *replace(const char *, int, int);
-static void rm(List);
-extern char *strsave(const char *);
-extern char *stringf(const char *, ...);
-extern int suffix(char *, char *[], int);
-extern char *tempname(char *);
-
-extern int access(char *, int);
-extern int getpid(void);
-
-extern char *cpp[], *include[], *com[], *as[],*ld[], inputs[], *suffixes[];
-extern int option(char *);
-
-static int errcnt; /* number of errors */
-static int Eflag; /* -E specified */
-static int Sflag; /* -S specified */
-static int cflag; /* -c specified */
-static int verbose; /* incremented for each -v */
-static List llist[2]; /* loader files, flags */
-static List alist; /* assembler flags */
-static List clist; /* compiler flags */
-static List plist; /* preprocessor flags */
-static List ilist; /* list of additional includes from LCCINPUTS */
-static List rmlist; /* list of files to remove */
-static char *outfile; /* ld output file or -[cS] object file */
-static int ac; /* argument count */
-static char **av; /* argument vector */
-char *tempdir = TEMPDIR; /* directory for temporary files */
-static char *progname;
-static List lccinputs; /* list of input directories */
-
-main(int argc, char *argv[]) {
- int i, j, nf;
-
- progname = argv[0];
- ac = argc + 50;
- av = alloc(ac*sizeof(char *));
- if (signal(SIGINT, SIG_IGN) != SIG_IGN)
- signal(SIGINT, interrupt);
- if (signal(SIGTERM, SIG_IGN) != SIG_IGN)
- signal(SIGTERM, interrupt);
-#ifdef SIGHUP
- if (signal(SIGHUP, SIG_IGN) != SIG_IGN)
- signal(SIGHUP, interrupt);
-#endif
- if (getenv("TMP"))
- tempdir = getenv("TMP");
- else if (getenv("TEMP"))
- tempdir = getenv("TEMP");
- else if (getenv("TMPDIR"))
- tempdir = getenv("TMPDIR");
- assert(tempdir);
- i = strlen(tempdir);
- for (; i > 0 && tempdir[i-1] == '/' || tempdir[i-1] == '\\'; i--)
- tempdir[i-1] = '\0';
- if (argc <= 1) {
- help();
- exit(0);
- }
- plist = append("-D__LCC__", 0);
- initinputs();
- if (getenv("LCCDIR"))
- option(stringf("-lccdir=%s", getenv("LCCDIR")));
- for (nf = 0, i = j = 1; i < argc; i++) {
- if (strcmp(argv[i], "-o") == 0) {
- if (++i < argc) {
- if (suffix(argv[i], suffixes, 2) >= 0) {
- error("-o would overwrite %s", argv[i]);
- exit(8);
- }
- outfile = argv[i];
- continue;
- } else {
- error("unrecognized option `%s'", argv[i-1]);
- exit(8);
- }
- } else if (strcmp(argv[i], "-target") == 0) {
- if (argv[i+1] && *argv[i+1] != '-')
- i++;
- continue;
- } else if (*argv[i] == '-' && argv[i][1] != 'l') {
- opt(argv[i]);
- continue;
- } else if (*argv[i] != '-' && suffix(argv[i], suffixes, 3) >= 0)
- nf++;
- argv[j++] = argv[i];
- }
- if ((cflag || Sflag) && outfile && nf != 1) {
- fprintf(stderr, "%s: -o %s ignored\n", progname, outfile);
- outfile = 0;
- }
- argv[j] = 0;
- for (i = 0; include[i]; i++)
- plist = append(include[i], plist);
- if (ilist) {
- List b = ilist;
- do {
- b = b->link;
- plist = append(b->str, plist);
- } while (b != ilist);
- }
- ilist = 0;
- for (i = 1; argv[i]; i++)
- if (*argv[i] == '-')
- opt(argv[i]);
- else {
- char *name = exists(argv[i]);
- if (name) {
- if (strcmp(name, argv[i]) != 0
- || nf > 1 && suffix(name, suffixes, 3) >= 0)
- fprintf(stderr, "%s:\n", name);
- filename(name, 0);
- } else
- error("can't find `%s'", argv[i]);
- }
- if (errcnt == 0 && !Eflag && !Sflag && !cflag && llist[1]) {
- compose(ld, llist[0], llist[1],
- append(outfile ? outfile : concat("a", first(suffixes[4])), 0));
- if (callsys(av))
- errcnt++;
- }
- rm(rmlist);
- return errcnt ? EXIT_FAILURE : EXIT_SUCCESS;
-}
-
-/* alloc - allocate n bytes or die */
-static void *alloc(int n) {
- static char *avail, *limit;
-
- n = (n + sizeof(char *) - 1)&~(sizeof(char *) - 1);
- if (n >= limit - avail) {
- avail = malloc(n + 4*1024);
- assert(avail);
- limit = avail + n + 4*1024;
- }
- avail += n;
- return avail - n;
-}
-
-/* append - append a node with string str onto list, return new list */
-static List append(char *str, List list) {
- List p = alloc(sizeof *p);
-
- p->str = str;
- if (list) {
- p->link = list->link;
- list->link = p;
- } else
- p->link = p;
- return p;
-}
-
-/* basepath - return base name for name, e.g. /usr/drh/foo.c => foo */
-char *basepath(char *name) {
- char *s, *b, *t = 0;
-
- for (b = s = name; *s; s++)
- if (*s == '/' || *s == '\\') {
- b = s + 1;
- t = 0;
- } else if (*s == '.')
- t = s;
- s = strsave(b);
- if (t)
- s[t-b] = 0;
- return s;
-}
-
-#ifdef WIN32
-#include <process.h>
-#else
-#define _P_WAIT 0
-extern int fork(void);
-extern int wait(int *);
-extern void execv(const char *, char *[]);
-
-static int _spawnvp(int mode, const char *cmdname, char *argv[]) {
- int pid, n, status;
-
- switch (pid = fork()) {
- case -1:
- fprintf(stderr, "%s: no more processes\n", progname);
- return 100;
- case 0:
- // TTimo removing hardcoded paths, searching in $PATH
- execvp(cmdname, argv);
- fprintf(stderr, "%s: ", progname);
- perror(cmdname);
- fflush(stdout);
- exit(100);
- }
- while ((n = wait(&status)) != pid && n != -1)
- ;
- if (n == -1)
- status = -1;
- if (status&0377) {
- fprintf(stderr, "%s: fatal error in %s\n", progname, cmdname);
- status |= 0400;
- }
- return (status>>8)&0377;
-}
-#endif
-
-/* callsys - execute the command described by av[0...], return status */
-static int callsys(char **av) {
- int i, status = 0;
- static char **argv;
- static int argc;
-
- for (i = 0; av[i] != NULL; i++)
- ;
- if (i + 1 > argc) {
- argc = i + 1;
- if (argv == NULL)
- argv = malloc(argc*sizeof *argv);
- else
- argv = realloc(argv, argc*sizeof *argv);
- assert(argv);
- }
- for (i = 0; status == 0 && av[i] != NULL; ) {
- int j = 0;
- char *s;
- for ( ; av[i] != NULL && (s = strchr(av[i], '\n')) == NULL; i++)
- argv[j++] = av[i];
- if (s != NULL) {
- if (s > av[i])
- argv[j++] = stringf("%.*s", s - av[i], av[i]);
- if (s[1] != '\0')
- av[i] = s + 1;
- else
- i++;
- }
- argv[j] = NULL;
- if (verbose > 0) {
- int k;
- fprintf(stderr, "%s", argv[0]);
- for (k = 1; argv[k] != NULL; k++)
- fprintf(stderr, " %s", argv[k]);
- fprintf(stderr, "\n");
- }
- if (verbose < 2)
- status = _spawnvp(_P_WAIT, argv[0], argv);
- if (status == -1) {
- fprintf(stderr, "%s: ", progname);
- perror(argv[0]);
- }
- }
- return status;
-}
-
-/* concat - return concatenation of strings s1 and s2 */
-char *concat(char *s1, char *s2) {
- int n = strlen(s1);
- char *s = alloc(n + strlen(s2) + 1);
-
- strcpy(s, s1);
- strcpy(s + n, s2);
- return s;
-}
-
-/* compile - compile src into dst, return status */
-static int compile(char *src, char *dst) {
- compose(com, clist, append(src, 0), append(dst, 0));
- return callsys(av);
-}
-
-/* compose - compose cmd into av substituting a, b, c for $1, $2, $3, resp. */
-static void compose(char *cmd[], List a, List b, List c) {
- int i, j;
- List lists[3];
-
- lists[0] = a;
- lists[1] = b;
- lists[2] = c;
- for (i = j = 0; cmd[i]; i++) {
- char *s = strchr(cmd[i], '$');
- if (s && isdigit(s[1])) {
- int k = s[1] - '0';
- assert(k >=1 && k <= 3);
- if (b = lists[k-1]) {
- b = b->link;
- av[j] = alloc(strlen(cmd[i]) + strlen(b->str) - 1);
- strncpy(av[j], cmd[i], s - cmd[i]);
- av[j][s-cmd[i]] = '\0';
- strcat(av[j], b->str);
- strcat(av[j++], s + 2);
- while (b != lists[k-1]) {
- b = b->link;
- assert(j < ac);
- av[j++] = b->str;
- };
- }
- } else if (*cmd[i]) {
- assert(j < ac);
- av[j++] = cmd[i];
- }
- }
- av[j] = NULL;
-}
-
-/* error - issue error msg according to fmt, bump error count */
-static void error(char *fmt, char *msg) {
- fprintf(stderr, "%s: ", progname);
- fprintf(stderr, fmt, msg);
- fprintf(stderr, "\n");
- errcnt++;
-}
-
-/* exists - if `name' readable return its path name or return null */
-static char *exists(char *name) {
- List b;
-
- if ( (name[0] == '/' || name[0] == '\\' || name[2] == ':')
- && access(name, 4) == 0)
- return name;
- if (!(name[0] == '/' || name[0] == '\\' || name[2] == ':')
- && (b = lccinputs))
- do {
- b = b->link;
- if (b->str[0]) {
- char buf[1024];
- sprintf(buf, "%s/%s", b->str, name);
- if (access(buf, 4) == 0)
- return strsave(buf);
- } else if (access(name, 4) == 0)
- return name;
- } while (b != lccinputs);
- if (verbose > 1)
- return name;
- return 0;
-}
-
-/* first - return first component in semicolon separated list */
-static char *first(char *list) {
- char *s = strchr(list, ';');
-
- if (s) {
- char buf[1024];
- strncpy(buf, list, s-list);
- buf[s-list] = '\0';
- return strsave(buf);
- } else
- return list;
-}
-
-/* filename - process file name argument `name', return status */
-static int filename(char *name, char *base) {
- int status = 0;
- static char *stemp, *itemp;
-
- if (base == 0)
- base = basepath(name);
- switch (suffix(name, suffixes, 4)) {
- case 0: /* C source files */
- compose(cpp, plist, append(name, 0), 0);
- if (Eflag) {
- status = callsys(av);
- break;
- }
- if (itemp == NULL)
- itemp = tempname(first(suffixes[1]));
- compose(cpp, plist, append(name, 0), append(itemp, 0));
- status = callsys(av);
- if (status == 0)
- return filename(itemp, base);
- break;
- case 1: /* preprocessed source files */
- if (Eflag)
- break;
- if (Sflag)
- status = compile(name, outfile ? outfile : concat(base, first(suffixes[2])));
- else if ((status = compile(name, stemp?stemp:(stemp=tempname(first(suffixes[2]))))) == 0)
- return filename(stemp, base);
- break;
- case 2: /* assembly language files */
- if (Eflag)
- break;
- if (!Sflag) {
- char *ofile;
- if (cflag && outfile)
- ofile = outfile;
- else if (cflag)
- ofile = concat(base, first(suffixes[3]));
- else
- ofile = tempname(first(suffixes[3]));
- compose(as, alist, append(name, 0), append(ofile, 0));
- status = callsys(av);
- if (!find(ofile, llist[1]))
- llist[1] = append(ofile, llist[1]);
- }
- break;
- case 3: /* object files */
- if (!find(name, llist[1]))
- llist[1] = append(name, llist[1]);
- break;
- default:
- if (Eflag) {
- compose(cpp, plist, append(name, 0), 0);
- status = callsys(av);
- }
- llist[1] = append(name, llist[1]);
- break;
- }
- if (status)
- errcnt++;
- return status;
-}
-
-/* find - find 1st occurrence of str in list, return list node or 0 */
-static List find(char *str, List list) {
- List b;
-
- if (b = list)
- do {
- if (strcmp(str, b->str) == 0)
- return b;
- } while ((b = b->link) != list);
- return 0;
-}
-
-/* help - print help message */
-static void help(void) {
- static char *msgs[] = {
-"", " [ option | file ]...\n",
-" except for -l, options are processed left-to-right before files\n",
-" unrecognized options are taken to be linker options\n",
-"-A warn about nonANSI usage; 2nd -A warns more\n",
-"-b emit expression-level profiling code; see bprint(1)\n",
-#ifdef sparc
-"-Bstatic -Bdynamic specify static or dynamic libraries\n",
-#endif
-"-Bdir/ use the compiler named `dir/rcc'\n",
-"-c compile only\n",
-"-dn set switch statement density to `n'\n",
-"-Dname -Dname=def define the preprocessor symbol `name'\n",
-"-E run only the preprocessor on the named C programs and unsuffixed files\n",
-"-g produce symbol table information for debuggers\n",
-"-help or -? print this message\n",
-"-Idir add `dir' to the beginning of the list of #include directories\n",
-"-lx search library `x'\n",
-"-N do not search the standard directories for #include files\n",
-"-n emit code to check for dereferencing zero pointers\n",
-"-O is ignored\n",
-"-o file leave the output in `file'\n",
-"-P print ANSI-style declarations for globals\n",
-"-p -pg emit profiling code; see prof(1) and gprof(1)\n",
-"-S compile to assembly language\n",
-#ifdef linux
-"-static specify static libraries (default is dynamic)\n",
-#endif
-"-t -tname emit function tracing calls to printf or to `name'\n",
-"-target name is ignored\n",
-"-tempdir=dir place temporary files in `dir/'", "\n"
-"-Uname undefine the preprocessor symbol `name'\n",
-"-v show commands as they are executed; 2nd -v suppresses execution\n",
-"-w suppress warnings\n",
-"-Woarg specify system-specific `arg'\n",
-"-W[pfal]arg pass `arg' to the preprocessor, compiler, assembler, or linker\n",
- 0 };
- int i;
- char *s;
-
- msgs[0] = progname;
- for (i = 0; msgs[i]; i++) {
- fprintf(stderr, "%s", msgs[i]);
- if (strncmp("-tempdir", msgs[i], 8) == 0 && tempdir)
- fprintf(stderr, "; default=%s", tempdir);
- }
-#define xx(v) if (s = getenv(#v)) fprintf(stderr, #v "=%s\n", s)
- xx(LCCINPUTS);
- xx(LCCDIR);
-#ifdef WIN32
- xx(include);
- xx(lib);
-#endif
-#undef xx
-}
-
-/* initinputs - if LCCINPUTS or include is defined, use them to initialize various lists */
-static void initinputs(void) {
- char *s = getenv("LCCINPUTS");
- List list, b;
-
- if (s == 0 || (s = inputs)[0] == 0)
- s = ".";
- if (s) {
- lccinputs = path2list(s);
- if (b = lccinputs)
- do {
- b = b->link;
- if (strcmp(b->str, ".") != 0) {
- ilist = append(concat("-I", b->str), ilist);
- if (strstr(com[1], "win32") == NULL)
- llist[0] = append(concat("-L", b->str), llist[0]);
- } else
- b->str = "";
- } while (b != lccinputs);
- }
-#ifdef WIN32
- if (list = b = path2list(getenv("include")))
- do {
- b = b->link;
- ilist = append(stringf("-I\"%s\"", b->str), ilist);
- } while (b != list);
-#endif
-}
-
-/* interrupt - catch interrupt signals */
-static void interrupt(int n) {
- rm(rmlist);
- exit(n = 100);
-}
-
-/* opt - process option in arg */
-static void opt(char *arg) {
- switch (arg[1]) { /* multi-character options */
- case 'W': /* -Wxarg */
- if (arg[2] && arg[3])
- switch (arg[2]) {
- case 'o':
- if (option(&arg[3]))
- return;
- break;
- case 'p':
- plist = append(&arg[3], plist);
- return;
- case 'f':
- if (strcmp(&arg[3], "-C") || option("-b")) {
- clist = append(&arg[3], clist);
- return;
- }
- break; /* and fall thru */
- case 'a':
- alist = append(&arg[3], alist);
- return;
- case 'l':
- llist[0] = append(&arg[3], llist[0]);
- return;
- }
- fprintf(stderr, "%s: %s ignored\n", progname, arg);
- return;
- case 'd': /* -dn */
- arg[1] = 's';
- clist = append(arg, clist);
- return;
- case 't': /* -t -tname -tempdir=dir */
- if (strncmp(arg, "-tempdir=", 9) == 0)
- tempdir = arg + 9;
- else
- clist = append(arg, clist);
- return;
- case 'p': /* -p -pg */
- if (option(arg))
- clist = append(arg, clist);
- else
- fprintf(stderr, "%s: %s ignored\n", progname, arg);
- return;
- case 'D': /* -Dname -Dname=def */
- case 'U': /* -Uname */
- case 'I': /* -Idir */
- plist = append(arg, plist);
- return;
- case 'B': /* -Bdir -Bstatic -Bdynamic */
-#ifdef sparc
- if (strcmp(arg, "-Bstatic") == 0 || strcmp(arg, "-Bdynamic") == 0)
- llist[1] = append(arg, llist[1]);
- else
-#endif
- {
- static char *path;
- if (path)
- error("-B overwrites earlier option", 0);
- path = arg + 2;
- if (strstr(com[1], "win32") != NULL)
- com[0] = concat(replace(path, '/', '\\'), concat("rcc", first(suffixes[4])));
- else
- com[0] = concat(path, "rcc");
- if (path[0] == 0)
- error("missing directory in -B option", 0);
- }
- return;
- case 'h':
- if (strcmp(arg, "-help") == 0) {
- static int printed = 0;
- case '?':
- if (!printed)
- help();
- printed = 1;
- return;
- }
-#ifdef linux
- case 's':
- if (strcmp(arg,"-static") == 0) {
- if (!option(arg))
- fprintf(stderr, "%s: %s ignored\n", progname, arg);
- return;
- }
-#endif
- }
- if (arg[2] == 0)
- switch (arg[1]) { /* single-character options */
- case 'S':
- Sflag++;
- return;
- case 'O':
- fprintf(stderr, "%s: %s ignored\n", progname, arg);
- return;
- case 'A': case 'n': case 'w': case 'P':
- clist = append(arg, clist);
- return;
- case 'g': case 'b':
- if (option(arg))
- clist = append(arg[1] == 'g' ? "-g2" : arg, clist);
- else
- fprintf(stderr, "%s: %s ignored\n", progname, arg);
- return;
- case 'G':
- if (option(arg)) {
- clist = append("-g3", clist);
- llist[0] = append("-N", llist[0]);
- } else
- fprintf(stderr, "%s: %s ignored\n", progname, arg);
- return;
- case 'E':
- Eflag++;
- return;
- case 'c':
- cflag++;
- return;
- case 'N':
- if (strcmp(basepath(cpp[0]), "gcc-cpp") == 0)
- plist = append("-nostdinc", plist);
- include[0] = 0;
- ilist = 0;
- return;
- case 'v':
- if (verbose++ == 0) {
- if (strcmp(basepath(cpp[0]), "gcc-cpp") == 0)
- plist = append(arg, plist);
- clist = append(arg, clist);
- fprintf(stderr, "%s %s\n", progname, rcsid);
- }
- return;
- }
- if (cflag || Sflag || Eflag)
- fprintf(stderr, "%s: %s ignored\n", progname, arg);
- else
- llist[1] = append(arg, llist[1]);
-}
-
-/* path2list - convert a colon- or semicolon-separated list to a list */
-static List path2list(const char *path) {
- List list = NULL;
- char sep = ':';
-
- if (path == NULL)
- return NULL;
- if (strchr(path, ';'))
- sep = ';';
- while (*path) {
- char *p, buf[512];
- if (p = strchr(path, sep)) {
- assert(p - path < sizeof buf);
- strncpy(buf, path, p - path);
- buf[p-path] = '\0';
- } else {
- assert(strlen(path) < sizeof buf);
- strcpy(buf, path);
- }
- if (!find(buf, list))
- list = append(strsave(buf), list);
- if (p == 0)
- break;
- path = p + 1;
- }
- return list;
-}
-
-/* replace - copy str, then replace occurrences of from with to, return the copy */
-char *replace(const char *str, int from, int to) {
- char *s = strsave(str), *p = s;
-
- for ( ; (p = strchr(p, from)) != NULL; p++)
- *p = to;
- return s;
-}
-
-/* rm - remove files in list */
-static void rm(List list) {
- if (list) {
- List b = list;
- if (verbose)
- fprintf(stderr, "rm");
- do {
- if (verbose)
- fprintf(stderr, " %s", b->str);
- if (verbose < 2)
- remove(b->str);
- } while ((b = b->link) != list);
- if (verbose)
- fprintf(stderr, "\n");
- }
-}
-
-/* strsave - return a saved copy of string str */
-char *strsave(const char *str) {
- return strcpy(alloc(strlen(str)+1), str);
-}
-
-/* stringf - format and return a string */
-char *stringf(const char *fmt, ...) {
- char buf[1024];
- va_list ap;
- int n;
-
- va_start(ap, fmt);
- n = vsprintf(buf, fmt, ap);
- va_end(ap);
- return strsave(buf);
-}
-
-/* suffix - if one of tails[0..n-1] holds a proper suffix of name, return its index */
-int suffix(char *name, char *tails[], int n) {
- int i, len = strlen(name);
-
- for (i = 0; i < n; i++) {
- char *s = tails[i], *t;
- for ( ; t = strchr(s, ';'); s = t + 1) {
- int m = t - s;
- if (len > m && strncmp(&name[len-m], s, m) == 0)
- return i;
- }
- if (*s) {
- int m = strlen(s);
- if (len > m && strncmp(&name[len-m], s, m) == 0)
- return i;
- }
- }
- return -1;
-}
-
-/* tempname - generate a temporary file name in tempdir with given suffix */
-char *tempname(char *suffix) {
- static int n;
- char *name = stringf("%s/lcc%d%d%s", tempdir, getpid(), n++, suffix);
-
- if (strstr(com[1], "win32") != NULL)
- name = replace(name, '/', '\\');
- rmlist = append(name, rmlist);
- return name;
-}
+/*
+ * lcc [ option ]... [ file | -llib ]...
+ * front end for the ANSI C compiler
+ */
+static char rcsid[] = "Id: dummy rcsid";
+
+#include <stdio.h>
+#include <stdarg.h>
+#include <stdlib.h>
+#include <string.h>
+#include <assert.h>
+#include <ctype.h>
+#include <signal.h>
+
+#ifndef TEMPDIR
+#define TEMPDIR "/tmp"
+#endif
+
+typedef struct list *List;
+struct list { /* circular list nodes: */
+ char *str; /* option or file name */
+ List link; /* next list element */
+};
+
+static void *alloc(int);
+static List append(char *,List);
+extern char *basepath(char *);
+static int callsys(char *[]);
+extern char *concat(char *, char *);
+static int compile(char *, char *);
+static void compose(char *[], List, List, List);
+static void error(char *, char *);
+static char *exists(char *);
+static char *first(char *);
+static int filename(char *, char *);
+static List find(char *, List);
+static void help(void);
+static void initinputs(void);
+static void interrupt(int);
+static void opt(char *);
+static List path2list(const char *);
+extern int main(int, char *[]);
+extern char *replace(const char *, int, int);
+static void rm(List);
+extern char *strsave(const char *);
+extern char *stringf(const char *, ...);
+extern int suffix(char *, char *[], int);
+extern char *tempname(char *);
+
+extern int access(char *, int);
+extern int getpid(void);
+
+extern char *cpp[], *include[], *com[], *as[],*ld[], inputs[], *suffixes[];
+extern int option(char *);
+
+static int errcnt; /* number of errors */
+static int Eflag; /* -E specified */
+static int Sflag; /* -S specified */
+static int cflag; /* -c specified */
+static int verbose; /* incremented for each -v */
+static List llist[2]; /* loader files, flags */
+static List alist; /* assembler flags */
+static List clist; /* compiler flags */
+static List plist; /* preprocessor flags */
+static List ilist; /* list of additional includes from LCCINPUTS */
+static List rmlist; /* list of files to remove */
+static char *outfile; /* ld output file or -[cS] object file */
+static int ac; /* argument count */
+static char **av; /* argument vector */
+char *tempdir = TEMPDIR; /* directory for temporary files */
+static char *progname;
+static List lccinputs; /* list of input directories */
+
+main(int argc, char *argv[]) {
+ int i, j, nf;
+
+ progname = argv[0];
+ ac = argc + 50;
+ av = alloc(ac*sizeof(char *));
+ if (signal(SIGINT, SIG_IGN) != SIG_IGN)
+ signal(SIGINT, interrupt);
+ if (signal(SIGTERM, SIG_IGN) != SIG_IGN)
+ signal(SIGTERM, interrupt);
+#ifdef SIGHUP
+ if (signal(SIGHUP, SIG_IGN) != SIG_IGN)
+ signal(SIGHUP, interrupt);
+#endif
+ if (getenv("TMP"))
+ tempdir = getenv("TMP");
+ else if (getenv("TEMP"))
+ tempdir = getenv("TEMP");
+ else if (getenv("TMPDIR"))
+ tempdir = getenv("TMPDIR");
+ assert(tempdir);
+ i = strlen(tempdir);
+ for (; i > 0 && tempdir[i-1] == '/' || tempdir[i-1] == '\\'; i--)
+ tempdir[i-1] = '\0';
+ if (argc <= 1) {
+ help();
+ exit(0);
+ }
+ plist = append("-D__LCC__", 0);
+ initinputs();
+ if (getenv("LCCDIR"))
+ option(stringf("-lccdir=%s", getenv("LCCDIR")));
+ for (nf = 0, i = j = 1; i < argc; i++) {
+ if (strcmp(argv[i], "-o") == 0) {
+ if (++i < argc) {
+ if (suffix(argv[i], suffixes, 2) >= 0) {
+ error("-o would overwrite %s", argv[i]);
+ exit(8);
+ }
+ outfile = argv[i];
+ continue;
+ } else {
+ error("unrecognized option `%s'", argv[i-1]);
+ exit(8);
+ }
+ } else if (strcmp(argv[i], "-target") == 0) {
+ if (argv[i+1] && *argv[i+1] != '-')
+ i++;
+ continue;
+ } else if (*argv[i] == '-' && argv[i][1] != 'l') {
+ opt(argv[i]);
+ continue;
+ } else if (*argv[i] != '-' && suffix(argv[i], suffixes, 3) >= 0)
+ nf++;
+ argv[j++] = argv[i];
+ }
+ if ((cflag || Sflag) && outfile && nf != 1) {
+ fprintf(stderr, "%s: -o %s ignored\n", progname, outfile);
+ outfile = 0;
+ }
+ argv[j] = 0;
+ for (i = 0; include[i]; i++)
+ plist = append(include[i], plist);
+ if (ilist) {
+ List b = ilist;
+ do {
+ b = b->link;
+ plist = append(b->str, plist);
+ } while (b != ilist);
+ }
+ ilist = 0;
+ for (i = 1; argv[i]; i++)
+ if (*argv[i] == '-')
+ opt(argv[i]);
+ else {
+ char *name = exists(argv[i]);
+ if (name) {
+ if (strcmp(name, argv[i]) != 0
+ || nf > 1 && suffix(name, suffixes, 3) >= 0)
+ fprintf(stderr, "%s:\n", name);
+ filename(name, 0);
+ } else
+ error("can't find `%s'", argv[i]);
+ }
+ if (errcnt == 0 && !Eflag && !Sflag && !cflag && llist[1]) {
+ compose(ld, llist[0], llist[1],
+ append(outfile ? outfile : concat("a", first(suffixes[4])), 0));
+ if (callsys(av))
+ errcnt++;
+ }
+ rm(rmlist);
+ return errcnt ? EXIT_FAILURE : EXIT_SUCCESS;
+}
+
+/* alloc - allocate n bytes or die */
+static void *alloc(int n) {
+ static char *avail, *limit;
+
+ n = (n + sizeof(char *) - 1)&~(sizeof(char *) - 1);
+ if (n >= limit - avail) {
+ avail = malloc(n + 4*1024);
+ assert(avail);
+ limit = avail + n + 4*1024;
+ }
+ avail += n;
+ return avail - n;
+}
+
+/* append - append a node with string str onto list, return new list */
+static List append(char *str, List list) {
+ List p = alloc(sizeof *p);
+
+ p->str = str;
+ if (list) {
+ p->link = list->link;
+ list->link = p;
+ } else
+ p->link = p;
+ return p;
+}
+
+/* basepath - return base name for name, e.g. /usr/drh/foo.c => foo */
+char *basepath(char *name) {
+ char *s, *b, *t = 0;
+
+ for (b = s = name; *s; s++)
+ if (*s == '/' || *s == '\\') {
+ b = s + 1;
+ t = 0;
+ } else if (*s == '.')
+ t = s;
+ s = strsave(b);
+ if (t)
+ s[t-b] = 0;
+ return s;
+}
+
+#ifdef WIN32
+#include <process.h>
+#else
+#define _P_WAIT 0
+extern int fork(void);
+extern int wait(int *);
+extern void execv(const char *, char *[]);
+
+static int _spawnvp(int mode, const char *cmdname, char *argv[]) {
+ int pid, n, status;
+
+ switch (pid = fork()) {
+ case -1:
+ fprintf(stderr, "%s: no more processes\n", progname);
+ return 100;
+ case 0:
+ // TTimo removing hardcoded paths, searching in $PATH
+ execvp(cmdname, argv);
+ fprintf(stderr, "%s: ", progname);
+ perror(cmdname);
+ fflush(stdout);
+ exit(100);
+ }
+ while ((n = wait(&status)) != pid && n != -1)
+ ;
+ if (n == -1)
+ status = -1;
+ if (status&0377) {
+ fprintf(stderr, "%s: fatal error in %s\n", progname, cmdname);
+ status |= 0400;
+ }
+ return (status>>8)&0377;
+}
+#endif
+
+/* callsys - execute the command described by av[0...], return status */
+static int callsys(char **av) {
+ int i, status = 0;
+ static char **argv;
+ static int argc;
+
+ for (i = 0; av[i] != NULL; i++)
+ ;
+ if (i + 1 > argc) {
+ argc = i + 1;
+ if (argv == NULL)
+ argv = malloc(argc*sizeof *argv);
+ else
+ argv = realloc(argv, argc*sizeof *argv);
+ assert(argv);
+ }
+ for (i = 0; status == 0 && av[i] != NULL; ) {
+ int j = 0;
+ char *s;
+ for ( ; av[i] != NULL && (s = strchr(av[i], '\n')) == NULL; i++)
+ argv[j++] = av[i];
+ if (s != NULL) {
+ if (s > av[i])
+ argv[j++] = stringf("%.*s", s - av[i], av[i]);
+ if (s[1] != '\0')
+ av[i] = s + 1;
+ else
+ i++;
+ }
+ argv[j] = NULL;
+ if (verbose > 0) {
+ int k;
+ fprintf(stderr, "%s", argv[0]);
+ for (k = 1; argv[k] != NULL; k++)
+ fprintf(stderr, " %s", argv[k]);
+ fprintf(stderr, "\n");
+ }
+ if (verbose < 2)
+ status = _spawnvp(_P_WAIT, argv[0], argv);
+ if (status == -1) {
+ fprintf(stderr, "%s: ", progname);
+ perror(argv[0]);
+ }
+ }
+ return status;
+}
+
+/* concat - return concatenation of strings s1 and s2 */
+char *concat(char *s1, char *s2) {
+ int n = strlen(s1);
+ char *s = alloc(n + strlen(s2) + 1);
+
+ strcpy(s, s1);
+ strcpy(s + n, s2);
+ return s;
+}
+
+/* compile - compile src into dst, return status */
+static int compile(char *src, char *dst) {
+ compose(com, clist, append(src, 0), append(dst, 0));
+ return callsys(av);
+}
+
+/* compose - compose cmd into av substituting a, b, c for $1, $2, $3, resp. */
+static void compose(char *cmd[], List a, List b, List c) {
+ int i, j;
+ List lists[3];
+
+ lists[0] = a;
+ lists[1] = b;
+ lists[2] = c;
+ for (i = j = 0; cmd[i]; i++) {
+ char *s = strchr(cmd[i], '$');
+ if (s && isdigit(s[1])) {
+ int k = s[1] - '0';
+ assert(k >=1 && k <= 3);
+ if (b = lists[k-1]) {
+ b = b->link;
+ av[j] = alloc(strlen(cmd[i]) + strlen(b->str) - 1);
+ strncpy(av[j], cmd[i], s - cmd[i]);
+ av[j][s-cmd[i]] = '\0';
+ strcat(av[j], b->str);
+ strcat(av[j++], s + 2);
+ while (b != lists[k-1]) {
+ b = b->link;
+ assert(j < ac);
+ av[j++] = b->str;
+ };
+ }
+ } else if (*cmd[i]) {
+ assert(j < ac);
+ av[j++] = cmd[i];
+ }
+ }
+ av[j] = NULL;
+}
+
+/* error - issue error msg according to fmt, bump error count */
+static void error(char *fmt, char *msg) {
+ fprintf(stderr, "%s: ", progname);
+ fprintf(stderr, fmt, msg);
+ fprintf(stderr, "\n");
+ errcnt++;
+}
+
+/* exists - if `name' readable return its path name or return null */
+static char *exists(char *name) {
+ List b;
+
+ if ( (name[0] == '/' || name[0] == '\\' || name[2] == ':')
+ && access(name, 4) == 0)
+ return name;
+ if (!(name[0] == '/' || name[0] == '\\' || name[2] == ':')
+ && (b = lccinputs))
+ do {
+ b = b->link;
+ if (b->str[0]) {
+ char buf[1024];
+ sprintf(buf, "%s/%s", b->str, name);
+ if (access(buf, 4) == 0)
+ return strsave(buf);
+ } else if (access(name, 4) == 0)
+ return name;
+ } while (b != lccinputs);
+ if (verbose > 1)
+ return name;
+ return 0;
+}
+
+/* first - return first component in semicolon separated list */
+static char *first(char *list) {
+ char *s = strchr(list, ';');
+
+ if (s) {
+ char buf[1024];
+ strncpy(buf, list, s-list);
+ buf[s-list] = '\0';
+ return strsave(buf);
+ } else
+ return list;
+}
+
+/* filename - process file name argument `name', return status */
+static int filename(char *name, char *base) {
+ int status = 0;
+ static char *stemp, *itemp;
+
+ if (base == 0)
+ base = basepath(name);
+ switch (suffix(name, suffixes, 4)) {
+ case 0: /* C source files */
+ compose(cpp, plist, append(name, 0), 0);
+ if (Eflag) {
+ status = callsys(av);
+ break;
+ }
+ if (itemp == NULL)
+ itemp = tempname(first(suffixes[1]));
+ compose(cpp, plist, append(name, 0), append(itemp, 0));
+ status = callsys(av);
+ if (status == 0)
+ return filename(itemp, base);
+ break;
+ case 1: /* preprocessed source files */
+ if (Eflag)
+ break;
+ if (Sflag)
+ status = compile(name, outfile ? outfile : concat(base, first(suffixes[2])));
+ else if ((status = compile(name, stemp?stemp:(stemp=tempname(first(suffixes[2]))))) == 0)
+ return filename(stemp, base);
+ break;
+ case 2: /* assembly language files */
+ if (Eflag)
+ break;
+ if (!Sflag) {
+ char *ofile;
+ if (cflag && outfile)
+ ofile = outfile;
+ else if (cflag)
+ ofile = concat(base, first(suffixes[3]));
+ else
+ ofile = tempname(first(suffixes[3]));
+ compose(as, alist, append(name, 0), append(ofile, 0));
+ status = callsys(av);
+ if (!find(ofile, llist[1]))
+ llist[1] = append(ofile, llist[1]);
+ }
+ break;
+ case 3: /* object files */
+ if (!find(name, llist[1]))
+ llist[1] = append(name, llist[1]);
+ break;
+ default:
+ if (Eflag) {
+ compose(cpp, plist, append(name, 0), 0);
+ status = callsys(av);
+ }
+ llist[1] = append(name, llist[1]);
+ break;
+ }
+ if (status)
+ errcnt++;
+ return status;
+}
+
+/* find - find 1st occurrence of str in list, return list node or 0 */
+static List find(char *str, List list) {
+ List b;
+
+ if (b = list)
+ do {
+ if (strcmp(str, b->str) == 0)
+ return b;
+ } while ((b = b->link) != list);
+ return 0;
+}
+
+/* help - print help message */
+static void help(void) {
+ static char *msgs[] = {
+"", " [ option | file ]...\n",
+" except for -l, options are processed left-to-right before files\n",
+" unrecognized options are taken to be linker options\n",
+"-A warn about nonANSI usage; 2nd -A warns more\n",
+"-b emit expression-level profiling code; see bprint(1)\n",
+#ifdef sparc
+"-Bstatic -Bdynamic specify static or dynamic libraries\n",
+#endif
+"-Bdir/ use the compiler named `dir/rcc'\n",
+"-c compile only\n",
+"-dn set switch statement density to `n'\n",
+"-Dname -Dname=def define the preprocessor symbol `name'\n",
+"-E run only the preprocessor on the named C programs and unsuffixed files\n",
+"-g produce symbol table information for debuggers\n",
+"-help or -? print this message\n",
+"-Idir add `dir' to the beginning of the list of #include directories\n",
+"-lx search library `x'\n",
+"-N do not search the standard directories for #include files\n",
+"-n emit code to check for dereferencing zero pointers\n",
+"-O is ignored\n",
+"-o file leave the output in `file'\n",
+"-P print ANSI-style declarations for globals\n",
+"-p -pg emit profiling code; see prof(1) and gprof(1)\n",
+"-S compile to assembly language\n",
+#ifdef linux
+"-static specify static libraries (default is dynamic)\n",
+#endif
+"-t -tname emit function tracing calls to printf or to `name'\n",
+"-target name is ignored\n",
+"-tempdir=dir place temporary files in `dir/'", "\n"
+"-Uname undefine the preprocessor symbol `name'\n",
+"-v show commands as they are executed; 2nd -v suppresses execution\n",
+"-w suppress warnings\n",
+"-Woarg specify system-specific `arg'\n",
+"-W[pfal]arg pass `arg' to the preprocessor, compiler, assembler, or linker\n",
+ 0 };
+ int i;
+ char *s;
+
+ msgs[0] = progname;
+ for (i = 0; msgs[i]; i++) {
+ fprintf(stderr, "%s", msgs[i]);
+ if (strncmp("-tempdir", msgs[i], 8) == 0 && tempdir)
+ fprintf(stderr, "; default=%s", tempdir);
+ }
+#define xx(v) if (s = getenv(#v)) fprintf(stderr, #v "=%s\n", s)
+ xx(LCCINPUTS);
+ xx(LCCDIR);
+#ifdef WIN32
+ xx(include);
+ xx(lib);
+#endif
+#undef xx
+}
+
+/* initinputs - if LCCINPUTS or include is defined, use them to initialize various lists */
+static void initinputs(void) {
+ char *s = getenv("LCCINPUTS");
+ List list, b;
+
+ if (s == 0 || (s = inputs)[0] == 0)
+ s = ".";
+ if (s) {
+ lccinputs = path2list(s);
+ if (b = lccinputs)
+ do {
+ b = b->link;
+ if (strcmp(b->str, ".") != 0) {
+ ilist = append(concat("-I", b->str), ilist);
+ if (strstr(com[1], "win32") == NULL)
+ llist[0] = append(concat("-L", b->str), llist[0]);
+ } else
+ b->str = "";
+ } while (b != lccinputs);
+ }
+#ifdef WIN32
+ if (list = b = path2list(getenv("include")))
+ do {
+ b = b->link;
+ ilist = append(stringf("-I\"%s\"", b->str), ilist);
+ } while (b != list);
+#endif
+}
+
+/* interrupt - catch interrupt signals */
+static void interrupt(int n) {
+ rm(rmlist);
+ exit(n = 100);
+}
+
+/* opt - process option in arg */
+static void opt(char *arg) {
+ switch (arg[1]) { /* multi-character options */
+ case 'W': /* -Wxarg */
+ if (arg[2] && arg[3])
+ switch (arg[2]) {
+ case 'o':
+ if (option(&arg[3]))
+ return;
+ break;
+ case 'p':
+ plist = append(&arg[3], plist);
+ return;
+ case 'f':
+ if (strcmp(&arg[3], "-C") || option("-b")) {
+ clist = append(&arg[3], clist);
+ return;
+ }
+ break; /* and fall thru */
+ case 'a':
+ alist = append(&arg[3], alist);
+ return;
+ case 'l':
+ llist[0] = append(&arg[3], llist[0]);
+ return;
+ }
+ fprintf(stderr, "%s: %s ignored\n", progname, arg);
+ return;
+ case 'd': /* -dn */
+ arg[1] = 's';
+ clist = append(arg, clist);
+ return;
+ case 't': /* -t -tname -tempdir=dir */
+ if (strncmp(arg, "-tempdir=", 9) == 0)
+ tempdir = arg + 9;
+ else
+ clist = append(arg, clist);
+ return;
+ case 'p': /* -p -pg */
+ if (option(arg))
+ clist = append(arg, clist);
+ else
+ fprintf(stderr, "%s: %s ignored\n", progname, arg);
+ return;
+ case 'D': /* -Dname -Dname=def */
+ case 'U': /* -Uname */
+ case 'I': /* -Idir */
+ plist = append(arg, plist);
+ return;
+ case 'B': /* -Bdir -Bstatic -Bdynamic */
+#ifdef sparc
+ if (strcmp(arg, "-Bstatic") == 0 || strcmp(arg, "-Bdynamic") == 0)
+ llist[1] = append(arg, llist[1]);
+ else
+#endif
+ {
+ static char *path;
+ if (path)
+ error("-B overwrites earlier option", 0);
+ path = arg + 2;
+ if (strstr(com[1], "win32") != NULL)
+ com[0] = concat(replace(path, '/', '\\'), concat("rcc", first(suffixes[4])));
+ else
+ com[0] = concat(path, "rcc");
+ if (path[0] == 0)
+ error("missing directory in -B option", 0);
+ }
+ return;
+ case 'h':
+ if (strcmp(arg, "-help") == 0) {
+ static int printed = 0;
+ case '?':
+ if (!printed)
+ help();
+ printed = 1;
+ return;
+ }
+#ifdef linux
+ case 's':
+ if (strcmp(arg,"-static") == 0) {
+ if (!option(arg))
+ fprintf(stderr, "%s: %s ignored\n", progname, arg);
+ return;
+ }
+#endif
+ }
+ if (arg[2] == 0)
+ switch (arg[1]) { /* single-character options */
+ case 'S':
+ Sflag++;
+ return;
+ case 'O':
+ fprintf(stderr, "%s: %s ignored\n", progname, arg);
+ return;
+ case 'A': case 'n': case 'w': case 'P':
+ clist = append(arg, clist);
+ return;
+ case 'g': case 'b':
+ if (option(arg))
+ clist = append(arg[1] == 'g' ? "-g2" : arg, clist);
+ else
+ fprintf(stderr, "%s: %s ignored\n", progname, arg);
+ return;
+ case 'G':
+ if (option(arg)) {
+ clist = append("-g3", clist);
+ llist[0] = append("-N", llist[0]);
+ } else
+ fprintf(stderr, "%s: %s ignored\n", progname, arg);
+ return;
+ case 'E':
+ Eflag++;
+ return;
+ case 'c':
+ cflag++;
+ return;
+ case 'N':
+ if (strcmp(basepath(cpp[0]), "gcc-cpp") == 0)
+ plist = append("-nostdinc", plist);
+ include[0] = 0;
+ ilist = 0;
+ return;
+ case 'v':
+ if (verbose++ == 0) {
+ if (strcmp(basepath(cpp[0]), "gcc-cpp") == 0)
+ plist = append(arg, plist);
+ clist = append(arg, clist);
+ fprintf(stderr, "%s %s\n", progname, rcsid);
+ }
+ return;
+ }
+ if (cflag || Sflag || Eflag)
+ fprintf(stderr, "%s: %s ignored\n", progname, arg);
+ else
+ llist[1] = append(arg, llist[1]);
+}
+
+/* path2list - convert a colon- or semicolon-separated list to a list */
+static List path2list(const char *path) {
+ List list = NULL;
+ char sep = ':';
+
+ if (path == NULL)
+ return NULL;
+ if (strchr(path, ';'))
+ sep = ';';
+ while (*path) {
+ char *p, buf[512];
+ if (p = strchr(path, sep)) {
+ assert(p - path < sizeof buf);
+ strncpy(buf, path, p - path);
+ buf[p-path] = '\0';
+ } else {
+ assert(strlen(path) < sizeof buf);
+ strcpy(buf, path);
+ }
+ if (!find(buf, list))
+ list = append(strsave(buf), list);
+ if (p == 0)
+ break;
+ path = p + 1;
+ }
+ return list;
+}
+
+/* replace - copy str, then replace occurrences of from with to, return the copy */
+char *replace(const char *str, int from, int to) {
+ char *s = strsave(str), *p = s;
+
+ for ( ; (p = strchr(p, from)) != NULL; p++)
+ *p = to;
+ return s;
+}
+
+/* rm - remove files in list */
+static void rm(List list) {
+ if (list) {
+ List b = list;
+ if (verbose)
+ fprintf(stderr, "rm");
+ do {
+ if (verbose)
+ fprintf(stderr, " %s", b->str);
+ if (verbose < 2)
+ remove(b->str);
+ } while ((b = b->link) != list);
+ if (verbose)
+ fprintf(stderr, "\n");
+ }
+}
+
+/* strsave - return a saved copy of string str */
+char *strsave(const char *str) {
+ return strcpy(alloc(strlen(str)+1), str);
+}
+
+/* stringf - format and return a string */
+char *stringf(const char *fmt, ...) {
+ char buf[1024];
+ va_list ap;
+ int n;
+
+ va_start(ap, fmt);
+ n = vsprintf(buf, fmt, ap);
+ va_end(ap);
+ return strsave(buf);
+}
+
+/* suffix - if one of tails[0..n-1] holds a proper suffix of name, return its index */
+int suffix(char *name, char *tails[], int n) {
+ int i, len = strlen(name);
+
+ for (i = 0; i < n; i++) {
+ char *s = tails[i], *t;
+ for ( ; t = strchr(s, ';'); s = t + 1) {
+ int m = t - s;
+ if (len > m && strncmp(&name[len-m], s, m) == 0)
+ return i;
+ }
+ if (*s) {
+ int m = strlen(s);
+ if (len > m && strncmp(&name[len-m], s, m) == 0)
+ return i;
+ }
+ }
+ return -1;
+}
+
+/* tempname - generate a temporary file name in tempdir with given suffix */
+char *tempname(char *suffix) {
+ static int n;
+ char *name = stringf("%s/lcc%d%d%s", tempdir, getpid(), n++, suffix);
+
+ if (strstr(com[1], "win32") != NULL)
+ name = replace(name, '/', '\\');
+ rmlist = append(name, rmlist);
+ return name;
+}
diff --git a/lcc/etc/linux.c b/lcc/etc/linux.c
index 58a8b81..a65636d 100755
--- a/lcc/etc/linux.c
+++ b/lcc/etc/linux.c
@@ -1,74 +1,74 @@
-/* x86s running Linux */
-
-#include <string.h>
-
-static char rcsid[] = "Dummy rcsid";
-
-/*
-TTimo - 10-18-2001
-our binaries are named q3lcc q3rcc and q3cpp
-removed hardcoded paths
-removed __linux__ preprocessor define (confuses the preprocessor, we are doing bytecode!)
-*/
-
-#ifndef LCCDIR
-#define LCCDIR ""
-//#define LCCDIR "/usr/local/lib/lcc/"
-#endif
-
-char *suffixes[] = { ".c", ".i", ".asm", ".o", ".out", 0 };
-char inputs[256] = "";
-// TTimo experimental: do not compile with the __linux__ define, we are doing bytecode!
-char *cpp[] = { LCCDIR "q3cpp",
- "-U__GNUC__", "-D_POSIX_SOURCE", "-D__STDC__=1", "-D__STRICT_ANSI__",
- "-Dunix", "-Di386", "-Dlinux",
- "-D__unix__", "-D__i386__", "-D__signed__=signed",
- "$1", "$2", "$3", 0 };
-char *include[] = {"-I" LCCDIR "include", "-I" LCCDIR "gcc/include", "-I/usr/include",
- "-I" SYSTEM "include", 0 };
-char *com[] = {LCCDIR "q3rcc", "-target=x86/linux", "$1", "$2", "$3", 0 };
-char *as[] = { "/usr/bin/as", "-o", "$3", "$1", "$2", 0 };
-// NOTE TTimo I don't think we have any use with the native linkage
-// our target is always bytecode..
-char *ld[] = {
- /* 0 */ "/usr/bin/ld", "-m", "elf_i386", "-dynamic-linker",
- /* 4 */ "/lib/ld-linux.so.2", "-o", "$3",
- /* 7 */ "/usr/lib/crt1.o", "/usr/lib/crti.o",
- /* 9 */ SYSTEM "crtbegin.o",
- "$1", "$2",
- /* 12 */ "-L" LCCDIR,
- /* 13 */ "-llcc",
- /* 14 */ "-L" LCCDIR "/gcc", "-lgcc", "-lc", "-lm",
- /* 18 */ "",
- /* 19 */ SYSTEM "crtend.o", "/usr/lib/crtn.o",
- /* 20 */ "-L" SYSTEM,
- 0 };
-
-extern char *concat(char *, char *);
-
-int option(char *arg) {
- if (strncmp(arg, "-lccdir=", 8) == 0) {
- cpp[0] = concat(&arg[8], "/gcc/cpp");
- include[0] = concat("-I", concat(&arg[8], "/include"));
- include[1] = concat("-I", concat(&arg[8], "/gcc/include"));
- ld[9] = concat(&arg[8], "/gcc/crtbegin.o");
- ld[12] = concat("-L", &arg[8]);
- ld[14] = concat("-L", concat(&arg[8], "/gcc"));
- ld[19] = concat(&arg[8], "/gcc/crtend.o");
- com[0] = concat(&arg[8], "/rcc");
- } else if (strcmp(arg, "-p") == 0 || strcmp(arg, "-pg") == 0) {
- ld[7] = "/usr/lib/gcrt1.o";
- ld[18] = "-lgmon";
- } else if (strcmp(arg, "-b") == 0)
- ;
- else if (strcmp(arg, "-g") == 0)
- ;
- else if (strncmp(arg, "-ld=", 4) == 0)
- ld[0] = &arg[4];
- else if (strcmp(arg, "-static") == 0) {
- ld[3] = "-static";
- ld[4] = "";
- } else
- return 0;
- return 1;
-}
+/* x86s running Linux */
+
+#include <string.h>
+
+static char rcsid[] = "Dummy rcsid";
+
+/*
+TTimo - 10-18-2001
+our binaries are named q3lcc q3rcc and q3cpp
+removed hardcoded paths
+removed __linux__ preprocessor define (confuses the preprocessor, we are doing bytecode!)
+*/
+
+#ifndef LCCDIR
+#define LCCDIR ""
+//#define LCCDIR "/usr/local/lib/lcc/"
+#endif
+
+char *suffixes[] = { ".c", ".i", ".asm", ".o", ".out", 0 };
+char inputs[256] = "";
+// TTimo experimental: do not compile with the __linux__ define, we are doing bytecode!
+char *cpp[] = { LCCDIR "q3cpp",
+ "-U__GNUC__", "-D_POSIX_SOURCE", "-D__STDC__=1", "-D__STRICT_ANSI__",
+ "-Dunix", "-Di386", "-Dlinux",
+ "-D__unix__", "-D__i386__", "-D__signed__=signed",
+ "$1", "$2", "$3", 0 };
+char *include[] = {"-I" LCCDIR "include", "-I" LCCDIR "gcc/include", "-I/usr/include",
+ "-I" SYSTEM "include", 0 };
+char *com[] = {LCCDIR "q3rcc", "-target=x86/linux", "$1", "$2", "$3", 0 };
+char *as[] = { "/usr/bin/as", "-o", "$3", "$1", "$2", 0 };
+// NOTE TTimo I don't think we have any use with the native linkage
+// our target is always bytecode..
+char *ld[] = {
+ /* 0 */ "/usr/bin/ld", "-m", "elf_i386", "-dynamic-linker",
+ /* 4 */ "/lib/ld-linux.so.2", "-o", "$3",
+ /* 7 */ "/usr/lib/crt1.o", "/usr/lib/crti.o",
+ /* 9 */ SYSTEM "crtbegin.o",
+ "$1", "$2",
+ /* 12 */ "-L" LCCDIR,
+ /* 13 */ "-llcc",
+ /* 14 */ "-L" LCCDIR "/gcc", "-lgcc", "-lc", "-lm",
+ /* 18 */ "",
+ /* 19 */ SYSTEM "crtend.o", "/usr/lib/crtn.o",
+ /* 20 */ "-L" SYSTEM,
+ 0 };
+
+extern char *concat(char *, char *);
+
+int option(char *arg) {
+ if (strncmp(arg, "-lccdir=", 8) == 0) {
+ cpp[0] = concat(&arg[8], "/gcc/cpp");
+ include[0] = concat("-I", concat(&arg[8], "/include"));
+ include[1] = concat("-I", concat(&arg[8], "/gcc/include"));
+ ld[9] = concat(&arg[8], "/gcc/crtbegin.o");
+ ld[12] = concat("-L", &arg[8]);
+ ld[14] = concat("-L", concat(&arg[8], "/gcc"));
+ ld[19] = concat(&arg[8], "/gcc/crtend.o");
+ com[0] = concat(&arg[8], "/rcc");
+ } else if (strcmp(arg, "-p") == 0 || strcmp(arg, "-pg") == 0) {
+ ld[7] = "/usr/lib/gcrt1.o";
+ ld[18] = "-lgmon";
+ } else if (strcmp(arg, "-b") == 0)
+ ;
+ else if (strcmp(arg, "-g") == 0)
+ ;
+ else if (strncmp(arg, "-ld=", 4) == 0)
+ ld[0] = &arg[4];
+ else if (strcmp(arg, "-static") == 0) {
+ ld[3] = "-static";
+ ld[4] = "";
+ } else
+ return 0;
+ return 1;
+}
diff --git a/lcc/etc/ops.c b/lcc/etc/ops.c
index dd570b7..39d2357 100755
--- a/lcc/etc/ops.c
+++ b/lcc/etc/ops.c
@@ -1,190 +1,190 @@
-#include "c.h"
-
-/* ops [ {csilhfdxp}=n ]...
- * prints lcc dag operator set for a given set of type sizes.
- */
-
-
-static char list[] = { 'c', 's', 'i', 'l', 'h', 'f', 'd', 'x', 'p', 0 };
-static int sizes[] = { 1, 2, 4, 4, 8, 4, 8, 16, 8 };
-
-static int doop(int op, int type, const char *sz, const char *opname) {
- int count = 0;
- static int last;
-
- if (op == LOAD)
- return 0;
- if (last != 0 && last != op)
- printf("\n");
- last = op;
- if (type == B || type == V) {
- printf(" %s=%d", opname, op + type);
- count++;
- } else {
- int i, done = 0;
- const char *s;
- for (i = 0; sz[i] != '\0' && (s = strchr(list, sz[i])) != NULL; i++) {
- int n = sizes[s-list];
- if ((done&(1<<n)) == 0) {
- printf(" %s%d=%d", opname, n, op + type + sizeop(n));
- count++;
- }
- done |= 1<<n;
- }
- }
- printf("\n");
- return count;
-}
-
-int main(int argc, char *argv[]) {
- int i, count = 0;
-
- for (i = 1; i < argc; i++) {
- char c, *s;
- int n;
- if (sscanf(argv[i], "%c=%d", &c, &n) == 2
- && n > 0 && (s = strchr(list, c)) != NULL)
- sizes[s-list] = n;
- else {
- fprintf(stderr, "usage: %s [ {csilhfdxp}=n ]...\n", argv[0]);
- exit(EXIT_FAILURE);
- }
- }
-#define gop(x,n)
-#define op(x,t,s) count += doop(x,t,#s,#x #t);
-gop(CNST,1)
- op(CNST,F,fdx)
- op(CNST,I,csilh)
- op(CNST,P,p)
- op(CNST,U,csilh)
-gop(ARG,2)
- op(ARG,B,-)
- op(ARG,F,fdx)
- op(ARG,I,ilh)
- op(ARG,P,p)
- op(ARG,U,ilh)
-gop(ASGN,3)
- op(ASGN,B,-)
- op(ASGN,F,fdx)
- op(ASGN,I,csilh)
- op(ASGN,P,p)
- op(ASGN,U,csilh)
-gop(INDIR,4)
- op(INDIR,B,-)
- op(INDIR,F,fdx)
- op(INDIR,I,csilh)
- op(INDIR,P,p)
- op(INDIR,U,csilh)
-gop(CVF,7)
- op(CVF,F,fdx)
- op(CVF,I,ilh)
-gop(CVI,8)
- op(CVI,F,fdx)
- op(CVI,I,csilh)
- op(CVI,U,csilhp)
-gop(CVP,9)
- op(CVP,U,p)
-gop(CVU,11)
- op(CVU,I,csilh)
- op(CVU,P,p)
- op(CVU,U,csilh)
-gop(NEG,12)
- op(NEG,F,fdx)
- op(NEG,I,ilh)
-gop(CALL,13)
- op(CALL,B,-)
- op(CALL,F,fdx)
- op(CALL,I,ilh)
- op(CALL,P,p)
- op(CALL,U,ilh)
- op(CALL,V,-)
-gop(RET,15)
- op(RET,F,fdx)
- op(RET,I,ilh)
- op(RET,P,p)
- op(RET,U,ilh)
- op(RET,V,-)
-gop(ADDRG,16)
- op(ADDRG,P,p)
-gop(ADDRF,17)
- op(ADDRF,P,p)
-gop(ADDRL,18)
- op(ADDRL,P,p)
-gop(ADD,19)
- op(ADD,F,fdx)
- op(ADD,I,ilh)
- op(ADD,P,p)
- op(ADD,U,ilhp)
-gop(SUB,20)
- op(SUB,F,fdx)
- op(SUB,I,ilh)
- op(SUB,P,p)
- op(SUB,U,ilhp)
-gop(LSH,21)
- op(LSH,I,ilh)
- op(LSH,U,ilh)
-gop(MOD,22)
- op(MOD,I,ilh)
- op(MOD,U,ilh)
-gop(RSH,23)
- op(RSH,I,ilh)
- op(RSH,U,ilh)
-gop(BAND,24)
- op(BAND,I,ilh)
- op(BAND,U,ilh)
-gop(BCOM,25)
- op(BCOM,I,ilh)
- op(BCOM,U,ilh)
-gop(BOR,26)
- op(BOR,I,ilh)
- op(BOR,U,ilh)
-gop(BXOR,27)
- op(BXOR,I,ilh)
- op(BXOR,U,ilh)
-gop(DIV,28)
- op(DIV,F,fdx)
- op(DIV,I,ilh)
- op(DIV,U,ilh)
-gop(MUL,29)
- op(MUL,F,fdx)
- op(MUL,I,ilh)
- op(MUL,U,ilh)
-gop(EQ,30)
- op(EQ,F,fdx)
- op(EQ,I,ilh)
- op(EQ,U,ilhp)
-gop(GE,31)
- op(GE,F,fdx)
- op(GE,I,ilh)
- op(GE,U,ilhp)
-gop(GT,32)
- op(GT,F,fdx)
- op(GT,I,ilh)
- op(GT,U,ilhp)
-gop(LE,33)
- op(LE,F,fdx)
- op(LE,I,ilh)
- op(LE,U,ilhp)
-gop(LT,34)
- op(LT,F,fdx)
- op(LT,I,ilh)
- op(LT,U,ilhp)
-gop(NE,35)
- op(NE,F,fdx)
- op(NE,I,ilh)
- op(NE,U,ilhp)
-gop(JUMP,36)
- op(JUMP,V,-)
-gop(LABEL,37)
- op(LABEL,V,-)
-gop(LOAD,14)
- op(LOAD,B,-)
- op(LOAD,F,fdx)
- op(LOAD,I,csilh)
- op(LOAD,P,p)
- op(LOAD,U,csilhp)
-#undef gop
-#undef op
- fprintf(stderr, "%d operators\n", count);
- return EXIT_SUCCESS;
-}
+#include "c.h"
+
+/* ops [ {csilhfdxp}=n ]...
+ * prints lcc dag operator set for a given set of type sizes.
+ */
+
+
+static char list[] = { 'c', 's', 'i', 'l', 'h', 'f', 'd', 'x', 'p', 0 };
+static int sizes[] = { 1, 2, 4, 4, 8, 4, 8, 16, 8 };
+
+static int doop(int op, int type, const char *sz, const char *opname) {
+ int count = 0;
+ static int last;
+
+ if (op == LOAD)
+ return 0;
+ if (last != 0 && last != op)
+ printf("\n");
+ last = op;
+ if (type == B || type == V) {
+ printf(" %s=%d", opname, op + type);
+ count++;
+ } else {
+ int i, done = 0;
+ const char *s;
+ for (i = 0; sz[i] != '\0' && (s = strchr(list, sz[i])) != NULL; i++) {
+ int n = sizes[s-list];
+ if ((done&(1<<n)) == 0) {
+ printf(" %s%d=%d", opname, n, op + type + sizeop(n));
+ count++;
+ }
+ done |= 1<<n;
+ }
+ }
+ printf("\n");
+ return count;
+}
+
+int main(int argc, char *argv[]) {
+ int i, count = 0;
+
+ for (i = 1; i < argc; i++) {
+ char c, *s;
+ int n;
+ if (sscanf(argv[i], "%c=%d", &c, &n) == 2
+ && n > 0 && (s = strchr(list, c)) != NULL)
+ sizes[s-list] = n;
+ else {
+ fprintf(stderr, "usage: %s [ {csilhfdxp}=n ]...\n", argv[0]);
+ exit(EXIT_FAILURE);
+ }
+ }
+#define gop(x,n)
+#define op(x,t,s) count += doop(x,t,#s,#x #t);
+gop(CNST,1)
+ op(CNST,F,fdx)
+ op(CNST,I,csilh)
+ op(CNST,P,p)
+ op(CNST,U,csilh)
+gop(ARG,2)
+ op(ARG,B,-)
+ op(ARG,F,fdx)
+ op(ARG,I,ilh)
+ op(ARG,P,p)
+ op(ARG,U,ilh)
+gop(ASGN,3)
+ op(ASGN,B,-)
+ op(ASGN,F,fdx)
+ op(ASGN,I,csilh)
+ op(ASGN,P,p)
+ op(ASGN,U,csilh)
+gop(INDIR,4)
+ op(INDIR,B,-)
+ op(INDIR,F,fdx)
+ op(INDIR,I,csilh)
+ op(INDIR,P,p)
+ op(INDIR,U,csilh)
+gop(CVF,7)
+ op(CVF,F,fdx)
+ op(CVF,I,ilh)
+gop(CVI,8)
+ op(CVI,F,fdx)
+ op(CVI,I,csilh)
+ op(CVI,U,csilhp)
+gop(CVP,9)
+ op(CVP,U,p)
+gop(CVU,11)
+ op(CVU,I,csilh)
+ op(CVU,P,p)
+ op(CVU,U,csilh)
+gop(NEG,12)
+ op(NEG,F,fdx)
+ op(NEG,I,ilh)
+gop(CALL,13)
+ op(CALL,B,-)
+ op(CALL,F,fdx)
+ op(CALL,I,ilh)
+ op(CALL,P,p)
+ op(CALL,U,ilh)
+ op(CALL,V,-)
+gop(RET,15)
+ op(RET,F,fdx)
+ op(RET,I,ilh)
+ op(RET,P,p)
+ op(RET,U,ilh)
+ op(RET,V,-)
+gop(ADDRG,16)
+ op(ADDRG,P,p)
+gop(ADDRF,17)
+ op(ADDRF,P,p)
+gop(ADDRL,18)
+ op(ADDRL,P,p)
+gop(ADD,19)
+ op(ADD,F,fdx)
+ op(ADD,I,ilh)
+ op(ADD,P,p)
+ op(ADD,U,ilhp)
+gop(SUB,20)
+ op(SUB,F,fdx)
+ op(SUB,I,ilh)
+ op(SUB,P,p)
+ op(SUB,U,ilhp)
+gop(LSH,21)
+ op(LSH,I,ilh)
+ op(LSH,U,ilh)
+gop(MOD,22)
+ op(MOD,I,ilh)
+ op(MOD,U,ilh)
+gop(RSH,23)
+ op(RSH,I,ilh)
+ op(RSH,U,ilh)
+gop(BAND,24)
+ op(BAND,I,ilh)
+ op(BAND,U,ilh)
+gop(BCOM,25)
+ op(BCOM,I,ilh)
+ op(BCOM,U,ilh)
+gop(BOR,26)
+ op(BOR,I,ilh)
+ op(BOR,U,ilh)
+gop(BXOR,27)
+ op(BXOR,I,ilh)
+ op(BXOR,U,ilh)
+gop(DIV,28)
+ op(DIV,F,fdx)
+ op(DIV,I,ilh)
+ op(DIV,U,ilh)
+gop(MUL,29)
+ op(MUL,F,fdx)
+ op(MUL,I,ilh)
+ op(MUL,U,ilh)
+gop(EQ,30)
+ op(EQ,F,fdx)
+ op(EQ,I,ilh)
+ op(EQ,U,ilhp)
+gop(GE,31)
+ op(GE,F,fdx)
+ op(GE,I,ilh)
+ op(GE,U,ilhp)
+gop(GT,32)
+ op(GT,F,fdx)
+ op(GT,I,ilh)
+ op(GT,U,ilhp)
+gop(LE,33)
+ op(LE,F,fdx)
+ op(LE,I,ilh)
+ op(LE,U,ilhp)
+gop(LT,34)
+ op(LT,F,fdx)
+ op(LT,I,ilh)
+ op(LT,U,ilhp)
+gop(NE,35)
+ op(NE,F,fdx)
+ op(NE,I,ilh)
+ op(NE,U,ilhp)
+gop(JUMP,36)
+ op(JUMP,V,-)
+gop(LABEL,37)
+ op(LABEL,V,-)
+gop(LOAD,14)
+ op(LOAD,B,-)
+ op(LOAD,F,fdx)
+ op(LOAD,I,csilh)
+ op(LOAD,P,p)
+ op(LOAD,U,csilhp)
+#undef gop
+#undef op
+ fprintf(stderr, "%d operators\n", count);
+ return EXIT_SUCCESS;
+}
diff --git a/lcc/etc/osf.c b/lcc/etc/osf.c
index 4c57b09..3f1d686 100755
--- a/lcc/etc/osf.c
+++ b/lcc/etc/osf.c
@@ -1,53 +1,53 @@
-/* DEC ALPHAs running OSF/1 V3.2A (Rev. 17) at Princeton University */
-
-#include <string.h>
-
-
-#ifndef LCCDIR
-#define LCCDIR "/usr/local/lib/lcc/"
-#endif
-
-char *suffixes[] = { ".c", ".i", ".s", ".o", ".out", 0 };
-char inputs[256] = "";
-char *cpp[] = {
- LCCDIR "cpp", "-D__STDC__=1",
- "-DLANGUAGE_C", "-D__LANGUAGE_C__",
- "-D_unix", "-D__unix__", "-D_osf", "-D__osf__", "-Dunix",
- "-Dalpha", "-D_alpha", "-D__alpha",
- "-D__SYSTYPE_BSD", "-D_SYSTYPE_BSD",
- "$1", "$2", "$3", 0 };
-char *com[] = { LCCDIR "rcc", "-target=alpha/osf", "$1", "$2", "$3", "", 0 };
-char *include[] = { "-I" LCCDIR "include", "-I/usr/local/include",
- "-I/usr/include", 0 };
-char *as[] = { "/bin/as", "-o", "$3", "", "$1", "-nocpp", "$2", 0 };
-char *ld[] = { "/usr/bin/ld", "-o", "$3", "/usr/lib/cmplrs/cc/crt0.o",
- "$1", "$2", "", "", "-L" LCCDIR, "-llcc", "-lm", "-lc", 0 };
-
-extern char *concat(char *, char *);
-extern int access(const char *, int);
-
-int option(char *arg) {
- if (strncmp(arg, "-lccdir=", 8) == 0) {
- cpp[0] = concat(&arg[8], "/cpp");
- include[0] = concat("-I", concat(&arg[8], "/include"));
- com[0] = concat(&arg[8], "/rcc");
- ld[8] = concat("-L", &arg[8]);
- } else if (strcmp(arg, "-g4") == 0
- && access("/u/drh/lib/alpha/rcc", 4) == 0
- && access("/u/drh/book/cdb/alpha/osf/cdbld", 4) == 0) {
- com[0] = "/u/drh/lib/alpha/rcc";
- com[5] = "-g4";
- ld[0] = "/u/drh/book/cdb/alpha/osf/cdbld";
- ld[1] = "-o";
- ld[2] = "$3";
- ld[3] = "$1";
- ld[4] = "$2";
- ld[5] = 0;
- } else if (strcmp(arg, "-g") == 0)
- return 1;
- else if (strcmp(arg, "-b") == 0)
- ;
- else
- return 0;
- return 1;
-}
+/* DEC ALPHAs running OSF/1 V3.2A (Rev. 17) at Princeton University */
+
+#include <string.h>
+
+
+#ifndef LCCDIR
+#define LCCDIR "/usr/local/lib/lcc/"
+#endif
+
+char *suffixes[] = { ".c", ".i", ".s", ".o", ".out", 0 };
+char inputs[256] = "";
+char *cpp[] = {
+ LCCDIR "cpp", "-D__STDC__=1",
+ "-DLANGUAGE_C", "-D__LANGUAGE_C__",
+ "-D_unix", "-D__unix__", "-D_osf", "-D__osf__", "-Dunix",
+ "-Dalpha", "-D_alpha", "-D__alpha",
+ "-D__SYSTYPE_BSD", "-D_SYSTYPE_BSD",
+ "$1", "$2", "$3", 0 };
+char *com[] = { LCCDIR "rcc", "-target=alpha/osf", "$1", "$2", "$3", "", 0 };
+char *include[] = { "-I" LCCDIR "include", "-I/usr/local/include",
+ "-I/usr/include", 0 };
+char *as[] = { "/bin/as", "-o", "$3", "", "$1", "-nocpp", "$2", 0 };
+char *ld[] = { "/usr/bin/ld", "-o", "$3", "/usr/lib/cmplrs/cc/crt0.o",
+ "$1", "$2", "", "", "-L" LCCDIR, "-llcc", "-lm", "-lc", 0 };
+
+extern char *concat(char *, char *);
+extern int access(const char *, int);
+
+int option(char *arg) {
+ if (strncmp(arg, "-lccdir=", 8) == 0) {
+ cpp[0] = concat(&arg[8], "/cpp");
+ include[0] = concat("-I", concat(&arg[8], "/include"));
+ com[0] = concat(&arg[8], "/rcc");
+ ld[8] = concat("-L", &arg[8]);
+ } else if (strcmp(arg, "-g4") == 0
+ && access("/u/drh/lib/alpha/rcc", 4) == 0
+ && access("/u/drh/book/cdb/alpha/osf/cdbld", 4) == 0) {
+ com[0] = "/u/drh/lib/alpha/rcc";
+ com[5] = "-g4";
+ ld[0] = "/u/drh/book/cdb/alpha/osf/cdbld";
+ ld[1] = "-o";
+ ld[2] = "$3";
+ ld[3] = "$1";
+ ld[4] = "$2";
+ ld[5] = 0;
+ } else if (strcmp(arg, "-g") == 0)
+ return 1;
+ else if (strcmp(arg, "-b") == 0)
+ ;
+ else
+ return 0;
+ return 1;
+}
diff --git a/lcc/etc/solaris.c b/lcc/etc/solaris.c
index 453b101..1cd755e 100755
--- a/lcc/etc/solaris.c
+++ b/lcc/etc/solaris.c
@@ -1,50 +1,50 @@
-/* SPARCs running Solaris 2.5.1 at CS Dept., Princeton University */
-
-#include <string.h>
-
-
-#ifndef LCCDIR
-#define LCCDIR "/usr/local/lib/lcc/"
-#endif
-#ifndef SUNDIR
-#define SUNDIR "/opt/SUNWspro/SC4.2/lib/"
-#endif
-
-char *suffixes[] = { ".c", ".i", ".s", ".o", ".out", 0 };
-char inputs[256] = "";
-char *cpp[] = { LCCDIR "cpp",
- "-D__STDC__=1", "-Dsparc", "-D__sparc__", "-Dsun", "-D__sun__", "-Dunix",
- "$1", "$2", "$3", 0 };
-char *include[] = { "-I" LCCDIR "include", "-I/usr/local/include",
- "-I/usr/include", 0 };
-char *com[] = { LCCDIR "rcc", "-target=sparc/solaris",
- "$1", "$2", "$3", 0 };
-char *as[] = { "/usr/ccs/bin/as", "-Qy", "-s", "-o", "$3", "$1", "$2", 0 };
-char *ld[] = { "/usr/ccs/bin/ld", "-o", "$3", "$1",
- SUNDIR "crti.o", SUNDIR "crt1.o",
- SUNDIR "values-xa.o", "$2", "",
- "-Y", "P," SUNDIR ":/usr/ccs/lib:/usr/lib", "-Qy",
- "-L" LCCDIR, "-llcc", "-lm", "-lc", SUNDIR "crtn.o", 0 };
-
-extern char *concat(char *, char *);
-
-int option(char *arg) {
- if (strncmp(arg, "-lccdir=", 8) == 0) {
- cpp[0] = concat(&arg[8], "/cpp");
- include[0] = concat("-I", concat(&arg[8], "/include"));
- ld[12] = concat("-L", &arg[8]);
- com[0] = concat(&arg[8], "/rcc");
- } else if (strcmp(arg, "-g") == 0)
- ;
- else if (strcmp(arg, "-p") == 0) {
- ld[5] = SUNDIR "mcrt1.o";
- ld[10] = "P," SUNDIR "libp:/usr/ccs/lib/libp:/usr/lib/libp:"
- SUNDIR ":/usr/ccs/lib:/usr/lib";
- } else if (strcmp(arg, "-b") == 0)
- ;
- else if (strncmp(arg, "-ld=", 4) == 0)
- ld[0] = &arg[4];
- else
- return 0;
- return 1;
-}
+/* SPARCs running Solaris 2.5.1 at CS Dept., Princeton University */
+
+#include <string.h>
+
+
+#ifndef LCCDIR
+#define LCCDIR "/usr/local/lib/lcc/"
+#endif
+#ifndef SUNDIR
+#define SUNDIR "/opt/SUNWspro/SC4.2/lib/"
+#endif
+
+char *suffixes[] = { ".c", ".i", ".s", ".o", ".out", 0 };
+char inputs[256] = "";
+char *cpp[] = { LCCDIR "cpp",
+ "-D__STDC__=1", "-Dsparc", "-D__sparc__", "-Dsun", "-D__sun__", "-Dunix",
+ "$1", "$2", "$3", 0 };
+char *include[] = { "-I" LCCDIR "include", "-I/usr/local/include",
+ "-I/usr/include", 0 };
+char *com[] = { LCCDIR "rcc", "-target=sparc/solaris",
+ "$1", "$2", "$3", 0 };
+char *as[] = { "/usr/ccs/bin/as", "-Qy", "-s", "-o", "$3", "$1", "$2", 0 };
+char *ld[] = { "/usr/ccs/bin/ld", "-o", "$3", "$1",
+ SUNDIR "crti.o", SUNDIR "crt1.o",
+ SUNDIR "values-xa.o", "$2", "",
+ "-Y", "P," SUNDIR ":/usr/ccs/lib:/usr/lib", "-Qy",
+ "-L" LCCDIR, "-llcc", "-lm", "-lc", SUNDIR "crtn.o", 0 };
+
+extern char *concat(char *, char *);
+
+int option(char *arg) {
+ if (strncmp(arg, "-lccdir=", 8) == 0) {
+ cpp[0] = concat(&arg[8], "/cpp");
+ include[0] = concat("-I", concat(&arg[8], "/include"));
+ ld[12] = concat("-L", &arg[8]);
+ com[0] = concat(&arg[8], "/rcc");
+ } else if (strcmp(arg, "-g") == 0)
+ ;
+ else if (strcmp(arg, "-p") == 0) {
+ ld[5] = SUNDIR "mcrt1.o";
+ ld[10] = "P," SUNDIR "libp:/usr/ccs/lib/libp:/usr/lib/libp:"
+ SUNDIR ":/usr/ccs/lib:/usr/lib";
+ } else if (strcmp(arg, "-b") == 0)
+ ;
+ else if (strncmp(arg, "-ld=", 4) == 0)
+ ld[0] = &arg[4];
+ else
+ return 0;
+ return 1;
+}
diff --git a/lcc/etc/win32.c b/lcc/etc/win32.c
index 097fa42..4b316dc 100755
--- a/lcc/etc/win32.c
+++ b/lcc/etc/win32.c
@@ -1,43 +1,43 @@
-/* x86s running MS Windows NT 4.0 */
-
-#include <string.h>
-
-
-#ifndef LCCDIR
-// JDC #define LCCDIR "\\progra~1\\lcc\\4.1\\bin\\"
-//#define LCCDIR "\\quake3\\source\\lcc\\bin\\" // JDC
-// TTimo: q3cpp q3rcc & no hardcoded paths
-#define LCCDIR ""
-#endif
-
-char *suffixes[] = { ".c;.C", ".i;.I", ".asm;.ASM;.s;.S", ".obj;.OBJ", ".exe", 0 };
-char inputs[256] = "";
-char *cpp[] = { LCCDIR "q3cpp", "-D__STDC__=1", "-Dwin32", "-D_WIN32", "-D_M_IX86",
- "$1", "$2", "$3", 0 };
-char *include[] = { "-I" LCCDIR "include", 0 };
-char *com[] = { LCCDIR "q3rcc", "-target=x86/win32", "$1", "$2", "$3", 0 };
-char *as[] = { "ml", "-nologo", "-c", "-Cp", "-coff", "-Fo$3", "$1", "$2", 0 };
-char *ld[] = { "link", "-nologo",
- "-align:0x1000", "-subsystem:console", "-entry:mainCRTStartup",
- "$2", "-OUT:$3", "$1", LCCDIR "liblcc.lib", "libc.lib", "kernel32.lib", 0 };
-
-extern char *concat(char *, char *);
-extern char *replace(const char *, int, int);
-
-int option(char *arg) {
- if (strncmp(arg, "-lccdir=", 8) == 0) {
- arg = replace(arg + 8, '/', '\\');
- if (arg[strlen(arg)-1] == '\\')
- arg[strlen(arg)-1] = '\0';
- cpp[0] = concat(arg, "\\cpp.exe");
- include[0] = concat("-I", concat(arg, "\\include"));
- com[0] = concat(arg, "\\rcc.exe");
- ld[8] = concat(arg, "\\liblcc.lib");
- } else if (strcmp(arg, "-b") == 0)
- ;
- else if (strncmp(arg, "-ld=", 4) == 0)
- ld[0] = &arg[4];
- else
- return 0;
- return 1;
-}
+/* x86s running MS Windows NT 4.0 */
+
+#include <string.h>
+
+
+#ifndef LCCDIR
+// JDC #define LCCDIR "\\progra~1\\lcc\\4.1\\bin\\"
+//#define LCCDIR "\\quake3\\source\\lcc\\bin\\" // JDC
+// TTimo: q3cpp q3rcc & no hardcoded paths
+#define LCCDIR ""
+#endif
+
+char *suffixes[] = { ".c;.C", ".i;.I", ".asm;.ASM;.s;.S", ".obj;.OBJ", ".exe", 0 };
+char inputs[256] = "";
+char *cpp[] = { LCCDIR "q3cpp", "-D__STDC__=1", "-Dwin32", "-D_WIN32", "-D_M_IX86",
+ "$1", "$2", "$3", 0 };
+char *include[] = { "-I" LCCDIR "include", 0 };
+char *com[] = { LCCDIR "q3rcc", "-target=x86/win32", "$1", "$2", "$3", 0 };
+char *as[] = { "ml", "-nologo", "-c", "-Cp", "-coff", "-Fo$3", "$1", "$2", 0 };
+char *ld[] = { "link", "-nologo",
+ "-align:0x1000", "-subsystem:console", "-entry:mainCRTStartup",
+ "$2", "-OUT:$3", "$1", LCCDIR "liblcc.lib", "libc.lib", "kernel32.lib", 0 };
+
+extern char *concat(char *, char *);
+extern char *replace(const char *, int, int);
+
+int option(char *arg) {
+ if (strncmp(arg, "-lccdir=", 8) == 0) {
+ arg = replace(arg + 8, '/', '\\');
+ if (arg[strlen(arg)-1] == '\\')
+ arg[strlen(arg)-1] = '\0';
+ cpp[0] = concat(arg, "\\cpp.exe");
+ include[0] = concat("-I", concat(arg, "\\include"));
+ com[0] = concat(arg, "\\rcc.exe");
+ ld[8] = concat(arg, "\\liblcc.lib");
+ } else if (strcmp(arg, "-b") == 0)
+ ;
+ else if (strncmp(arg, "-ld=", 4) == 0)
+ ld[0] = &arg[4];
+ else
+ return 0;
+ return 1;
+}
diff --git a/lcc/include/alpha/osf/assert.h b/lcc/include/alpha/osf/assert.h
index e7f8777..ee0b0bf 100755
--- a/lcc/include/alpha/osf/assert.h
+++ b/lcc/include/alpha/osf/assert.h
@@ -1,14 +1,14 @@
-#ifndef __ASSERT
-#define __ASSERT
-
-void assert(int);
-
-#endif /* __ASSERT */
-
-#undef assert
-#ifdef NDEBUG
-#define assert(ignore) ((void)0)
-#else
-extern void __assert(char *, char *, unsigned);
-#define assert(e) ((void)((e)||(__assert(#e, __FILE__, __LINE__),0)))
-#endif /* NDEBUG */
+#ifndef __ASSERT
+#define __ASSERT
+
+void assert(int);
+
+#endif /* __ASSERT */
+
+#undef assert
+#ifdef NDEBUG
+#define assert(ignore) ((void)0)
+#else
+extern void __assert(char *, char *, unsigned);
+#define assert(e) ((void)((e)||(__assert(#e, __FILE__, __LINE__),0)))
+#endif /* NDEBUG */
diff --git a/lcc/include/alpha/osf/ctype.h b/lcc/include/alpha/osf/ctype.h
index 86b8149..02e0131 100755
--- a/lcc/include/alpha/osf/ctype.h
+++ b/lcc/include/alpha/osf/ctype.h
@@ -1,25 +1,25 @@
-#ifndef __CTYPE
-#define __CTYPE
-
-extern int isalnum(int);
-extern int isalpha(int);
-extern int iscntrl(int);
-extern int isdigit(int);
-extern int isgraph(int);
-extern int islower(int);
-extern int isprint(int);
-extern int ispunct(int);
-extern int isspace(int);
-extern int isupper(int);
-extern int isxdigit(int);
-extern int tolower(int);
-extern int toupper(int);
-
-#define __U 01
-#define __L 02
-#define __N 04
-#define __S 010
-#define __P 020
-#define __C 040
-
-#endif /* __CTYPE */
+#ifndef __CTYPE
+#define __CTYPE
+
+extern int isalnum(int);
+extern int isalpha(int);
+extern int iscntrl(int);
+extern int isdigit(int);
+extern int isgraph(int);
+extern int islower(int);
+extern int isprint(int);
+extern int ispunct(int);
+extern int isspace(int);
+extern int isupper(int);
+extern int isxdigit(int);
+extern int tolower(int);
+extern int toupper(int);
+
+#define __U 01
+#define __L 02
+#define __N 04
+#define __S 010
+#define __P 020
+#define __C 040
+
+#endif /* __CTYPE */
diff --git a/lcc/include/alpha/osf/errno.h b/lcc/include/alpha/osf/errno.h
index 5ab3f0f..c914e05 100755
--- a/lcc/include/alpha/osf/errno.h
+++ b/lcc/include/alpha/osf/errno.h
@@ -1,8 +1,8 @@
-#ifndef __ERRNO
-#define __ERRNO
-
-#define EDOM 33
-#define ERANGE 34
-extern int errno;
-
-#endif /* __ERRNO */
+#ifndef __ERRNO
+#define __ERRNO
+
+#define EDOM 33
+#define ERANGE 34
+extern int errno;
+
+#endif /* __ERRNO */
diff --git a/lcc/include/alpha/osf/float.h b/lcc/include/alpha/osf/float.h
index 8a8ddb1..a3e1eb5 100755
--- a/lcc/include/alpha/osf/float.h
+++ b/lcc/include/alpha/osf/float.h
@@ -1,37 +1,37 @@
-#ifndef __FLOAT
-#define __FLOAT
-
-#define FLT_ROUNDS 1
-#define FLT_RADIX 2
-
-#define FLT_DIG 6
-#define FLT_EPSILON 1.19209289550781250000e-07
-#define FLT_MANT_DIG 24
-#define FLT_MAX 3.40282346638528860000e+38
-#define FLT_MAX_10_EXP 38
-#define FLT_MAX_EXP 128
-#define FLT_MIN 1.17549435082228750000e-38
-#define FLT_MIN_10_EXP -37
-#define FLT_MIN_EXP -125
-
-#define DBL_DIG 15
-#define DBL_EPSILON 2.22044604925031310000e-16
-#define DBL_MANT_DIG 53
-#define DBL_MAX 1.79769313486231570000e+308
-#define DBL_MAX_10_EXP 308
-#define DBL_MAX_EXP 1024
-#define DBL_MIN 2.22507385850720140000e-308
-#define DBL_MIN_10_EXP -307
-#define DBL_MIN_EXP -1021
-
-#define LDBL_MANT_DIG DBL_MANT_DIG
-#define LDBL_EPSILON DBL_EPSILON
-#define LDBL_DIG DBL_DIG
-#define LDBL_MIN_EXP DBL_MIN_EXP
-#define LDBL_MIN DBL_MIN
-#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
-#define LDBL_MAX_EXP DBL_MAX_EXP
-#define LDBL_MAX DBL_MAX
-#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
-
-#endif /* __FLOAT */
+#ifndef __FLOAT
+#define __FLOAT
+
+#define FLT_ROUNDS 1
+#define FLT_RADIX 2
+
+#define FLT_DIG 6
+#define FLT_EPSILON 1.19209289550781250000e-07
+#define FLT_MANT_DIG 24
+#define FLT_MAX 3.40282346638528860000e+38
+#define FLT_MAX_10_EXP 38
+#define FLT_MAX_EXP 128
+#define FLT_MIN 1.17549435082228750000e-38
+#define FLT_MIN_10_EXP -37
+#define FLT_MIN_EXP -125
+
+#define DBL_DIG 15
+#define DBL_EPSILON 2.22044604925031310000e-16
+#define DBL_MANT_DIG 53
+#define DBL_MAX 1.79769313486231570000e+308
+#define DBL_MAX_10_EXP 308
+#define DBL_MAX_EXP 1024
+#define DBL_MIN 2.22507385850720140000e-308
+#define DBL_MIN_10_EXP -307
+#define DBL_MIN_EXP -1021
+
+#define LDBL_MANT_DIG DBL_MANT_DIG
+#define LDBL_EPSILON DBL_EPSILON
+#define LDBL_DIG DBL_DIG
+#define LDBL_MIN_EXP DBL_MIN_EXP
+#define LDBL_MIN DBL_MIN
+#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
+#define LDBL_MAX_EXP DBL_MAX_EXP
+#define LDBL_MAX DBL_MAX
+#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
+
+#endif /* __FLOAT */
diff --git a/lcc/include/alpha/osf/limits.h b/lcc/include/alpha/osf/limits.h
index 06b8e28..4b4122b 100755
--- a/lcc/include/alpha/osf/limits.h
+++ b/lcc/include/alpha/osf/limits.h
@@ -1,24 +1,24 @@
-#ifndef __LIMITS
-#define __LIMITS
-
-#define CHAR_BIT 8
-#define MB_LEN_MAX 1
-
-#define UCHAR_MAX 0xff
-#define USHRT_MAX 0xffff
-#define UINT_MAX (~0U)
-#define ULONG_MAX (~0UL)
-
-#define CHAR_MAX SCHAR_MAX
-#define SCHAR_MAX 0x7f
-#define SHRT_MAX 0x7fff
-#define INT_MAX 0x7fffffff
-#define LONG_MAX 0x7fffffffffffffffL
-
-#define CHAR_MIN SCHAR_MIN
-#define SCHAR_MIN (-SCHAR_MAX-1)
-#define SHRT_MIN (-SHRT_MAX-1)
-#define INT_MIN (-INT_MAX-1)
-#define LONG_MIN (-LONG_MAX-1)
-
-#endif /* __LIMITS */
+#ifndef __LIMITS
+#define __LIMITS
+
+#define CHAR_BIT 8
+#define MB_LEN_MAX 1
+
+#define UCHAR_MAX 0xff
+#define USHRT_MAX 0xffff
+#define UINT_MAX (~0U)
+#define ULONG_MAX (~0UL)
+
+#define CHAR_MAX SCHAR_MAX
+#define SCHAR_MAX 0x7f
+#define SHRT_MAX 0x7fff
+#define INT_MAX 0x7fffffff
+#define LONG_MAX 0x7fffffffffffffffL
+
+#define CHAR_MIN SCHAR_MIN
+#define SCHAR_MIN (-SCHAR_MAX-1)
+#define SHRT_MIN (-SHRT_MAX-1)
+#define INT_MIN (-INT_MAX-1)
+#define LONG_MIN (-LONG_MAX-1)
+
+#endif /* __LIMITS */
diff --git a/lcc/include/alpha/osf/locale.h b/lcc/include/alpha/osf/locale.h
index a861b47..acce293 100755
--- a/lcc/include/alpha/osf/locale.h
+++ b/lcc/include/alpha/osf/locale.h
@@ -1,36 +1,36 @@
-#ifndef __LOCALE
-#define __LOCALE
-
-#define LC_ALL 0
-#define LC_COLLATE 1
-#define LC_CTYPE 2
-#define LC_MONETARY 3
-#define LC_NUMERIC 4
-#define LC_TIME 5
-#define NULL 0
-
-struct lconv {
- char *decimal_point;
- char *thousands_sep;
- char *grouping;
- char *int_curr_symbol;
- char *currency_symbol;
- char *mon_decimal_point;
- char *mon_thousands_sep;
- char *mon_grouping;
- char *positive_sign;
- char *negative_sign;
- char int_frac_digits;
- char frac_digits;
- char p_cs_precedes;
- char p_sep_by_space;
- char n_cs_precedes;
- char n_sep_by_space;
- char p_sign_posn;
- char n_sign_posn;
-};
-
-char *setlocale(int, const char *);
-struct lconv *localeconv(void);
-
-#endif /* __LOCALE */
+#ifndef __LOCALE
+#define __LOCALE
+
+#define LC_ALL 0
+#define LC_COLLATE 1
+#define LC_CTYPE 2
+#define LC_MONETARY 3
+#define LC_NUMERIC 4
+#define LC_TIME 5
+#define NULL 0
+
+struct lconv {
+ char *decimal_point;
+ char *thousands_sep;
+ char *grouping;
+ char *int_curr_symbol;
+ char *currency_symbol;
+ char *mon_decimal_point;
+ char *mon_thousands_sep;
+ char *mon_grouping;
+ char *positive_sign;
+ char *negative_sign;
+ char int_frac_digits;
+ char frac_digits;
+ char p_cs_precedes;
+ char p_sep_by_space;
+ char n_cs_precedes;
+ char n_sep_by_space;
+ char p_sign_posn;
+ char n_sign_posn;
+};
+
+char *setlocale(int, const char *);
+struct lconv *localeconv(void);
+
+#endif /* __LOCALE */
diff --git a/lcc/include/alpha/osf/math.h b/lcc/include/alpha/osf/math.h
index bb39d69..d2a31f4 100755
--- a/lcc/include/alpha/osf/math.h
+++ b/lcc/include/alpha/osf/math.h
@@ -1,29 +1,29 @@
-#ifndef __MATH
-#define __MATH
-
-#define HUGE_VAL 1.79769313486231570000e+308
-
-extern double acos(double);
-extern double asin(double);
-extern double atan(double);
-extern double atan2(double, double);
-extern double cos(double);
-extern double sin(double);
-extern double tan(double);
-extern double cosh(double);
-extern double sinh(double);
-extern double tanh(double);
-extern double exp(double);
-extern double frexp(double, int *);
-extern double ldexp(double, int);
-extern double log(double);
-extern double log10(double);
-extern double modf(double, double *);
-extern double pow(double, double);
-extern double sqrt(double);
-extern double ceil(double);
-extern double fabs(double);
-extern double floor(double);
-extern double fmod(double, double);
-
-#endif /* __MATH */
+#ifndef __MATH
+#define __MATH
+
+#define HUGE_VAL 1.79769313486231570000e+308
+
+extern double acos(double);
+extern double asin(double);
+extern double atan(double);
+extern double atan2(double, double);
+extern double cos(double);
+extern double sin(double);
+extern double tan(double);
+extern double cosh(double);
+extern double sinh(double);
+extern double tanh(double);
+extern double exp(double);
+extern double frexp(double, int *);
+extern double ldexp(double, int);
+extern double log(double);
+extern double log10(double);
+extern double modf(double, double *);
+extern double pow(double, double);
+extern double sqrt(double);
+extern double ceil(double);
+extern double fabs(double);
+extern double floor(double);
+extern double fmod(double, double);
+
+#endif /* __MATH */
diff --git a/lcc/include/alpha/osf/setjmp.h b/lcc/include/alpha/osf/setjmp.h
index 83216dd..48caf9e 100755
--- a/lcc/include/alpha/osf/setjmp.h
+++ b/lcc/include/alpha/osf/setjmp.h
@@ -1,10 +1,10 @@
-#ifndef __SETJMP
-#define __SETJMP
-
-
-
-typedef int jmp_buf[35+1+48];
-int setjmp(jmp_buf);
-void longjmp(jmp_buf, int);
-
-#endif /* __SETJMP */
+#ifndef __SETJMP
+#define __SETJMP
+
+
+
+typedef int jmp_buf[35+1+48];
+int setjmp(jmp_buf);
+void longjmp(jmp_buf, int);
+
+#endif /* __SETJMP */
diff --git a/lcc/include/alpha/osf/signal.h b/lcc/include/alpha/osf/signal.h
index 22f98bc..c208a6b 100755
--- a/lcc/include/alpha/osf/signal.h
+++ b/lcc/include/alpha/osf/signal.h
@@ -1,20 +1,20 @@
-#ifndef __SIGNAL
-#define __SIGNAL
-
-typedef int sig_atomic_t;
-
-#define SIG_DFL ((void (*)(int))0)
-#define SIG_ERR ((void (*)(int))-1)
-#define SIG_IGN ((void (*)(int))1)
-
-#define SIGABRT 6
-#define SIGFPE 8
-#define SIGILL 4
-#define SIGINT 2
-#define SIGSEGV 11
-#define SIGTERM 15
-
-void (*signal(int, void (*)(int)))(int);
-int raise(int);
-
-#endif /* __SIGNAL */
+#ifndef __SIGNAL
+#define __SIGNAL
+
+typedef int sig_atomic_t;
+
+#define SIG_DFL ((void (*)(int))0)
+#define SIG_ERR ((void (*)(int))-1)
+#define SIG_IGN ((void (*)(int))1)
+
+#define SIGABRT 6
+#define SIGFPE 8
+#define SIGILL 4
+#define SIGINT 2
+#define SIGSEGV 11
+#define SIGTERM 15
+
+void (*signal(int, void (*)(int)))(int);
+int raise(int);
+
+#endif /* __SIGNAL */
diff --git a/lcc/include/alpha/osf/stdarg.h b/lcc/include/alpha/osf/stdarg.h
index 1b4947e..a05c92b 100755
--- a/lcc/include/alpha/osf/stdarg.h
+++ b/lcc/include/alpha/osf/stdarg.h
@@ -1,28 +1,28 @@
-#ifndef __STDARG
-#define __STDARG
-
-#if !defined(_VA_LIST)
-#define _VA_LIST
-typedef struct {
- char *_a0; /* pointer to first homed integer arg */
- int _offset; /* byte offset of next param */
- float _tmp;
-} __va_list;
-#endif
-typedef __va_list va_list;
-
-#define va_start(list, start) ((void)( \
- (list)._a0 = (__typecode(__firstarg)==1 ? \
- (char*)&__firstarg+48 : (char *)&__firstarg), \
- (list)._offset = (__typecode(start)==1 ? \
- (char*)&start+56 : (char *)&start+8)-(list)._a0))
-#define va_arg(list, mode) (*(mode *)( \
- (list)._offset += (int)((sizeof(mode)+7)&~7), \
- (__typecode(mode)==1 && sizeof(mode)==4) ? \
- ((list)._tmp = (float)*(double *)((list)._a0 + (list)._offset - \
- ((list)._offset <= 48 ? 56 : 8))), (char *)&(list)._tmp : \
- (__typecode(mode)==1 && (list)._offset <= 48) ? \
- (list)._a0 + (list)._offset - 56 : \
- (list)._a0 + (list)._offset - (int)((sizeof(mode)+7)&~7)))
-#define va_end(list) ((void)0)
-#endif
+#ifndef __STDARG
+#define __STDARG
+
+#if !defined(_VA_LIST)
+#define _VA_LIST
+typedef struct {
+ char *_a0; /* pointer to first homed integer arg */
+ int _offset; /* byte offset of next param */
+ float _tmp;
+} __va_list;
+#endif
+typedef __va_list va_list;
+
+#define va_start(list, start) ((void)( \
+ (list)._a0 = (__typecode(__firstarg)==1 ? \
+ (char*)&__firstarg+48 : (char *)&__firstarg), \
+ (list)._offset = (__typecode(start)==1 ? \
+ (char*)&start+56 : (char *)&start+8)-(list)._a0))
+#define va_arg(list, mode) (*(mode *)( \
+ (list)._offset += (int)((sizeof(mode)+7)&~7), \
+ (__typecode(mode)==1 && sizeof(mode)==4) ? \
+ ((list)._tmp = (float)*(double *)((list)._a0 + (list)._offset - \
+ ((list)._offset <= 48 ? 56 : 8))), (char *)&(list)._tmp : \
+ (__typecode(mode)==1 && (list)._offset <= 48) ? \
+ (list)._a0 + (list)._offset - 56 : \
+ (list)._a0 + (list)._offset - (int)((sizeof(mode)+7)&~7)))
+#define va_end(list) ((void)0)
+#endif
diff --git a/lcc/include/alpha/osf/stddef.h b/lcc/include/alpha/osf/stddef.h
index 459bfd6..4e87e1c 100755
--- a/lcc/include/alpha/osf/stddef.h
+++ b/lcc/include/alpha/osf/stddef.h
@@ -1,22 +1,22 @@
-#ifndef __STDDEF
-#define __STDDEF
-
-
-#define NULL 0
-#define offsetof(ty,mem) ((size_t)((char*)&((ty*)0)->mem - (char*)0))
-
-typedef long ptrdiff_t;
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
-#define _WCHAR_T
-#define _WCHAR_T_
-typedef unsigned short wchar_t;
-#endif
-
-#endif /* __STDDEF */
+#ifndef __STDDEF
+#define __STDDEF
+
+
+#define NULL 0
+#define offsetof(ty,mem) ((size_t)((char*)&((ty*)0)->mem - (char*)0))
+
+typedef long ptrdiff_t;
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
+#define _WCHAR_T
+#define _WCHAR_T_
+typedef unsigned short wchar_t;
+#endif
+
+#endif /* __STDDEF */
diff --git a/lcc/include/alpha/osf/stdio.h b/lcc/include/alpha/osf/stdio.h
index 6777a8f..216bec7 100755
--- a/lcc/include/alpha/osf/stdio.h
+++ b/lcc/include/alpha/osf/stdio.h
@@ -1,113 +1,113 @@
-#ifndef __STDIO
-#define __STDIO
-
-#define _IOFBF 0
-#define _IOLBF 0200
-#define _IONBF 04
-#define BUFSIZ 8192
-#define EOF (-1)
-
-typedef struct _iobuf {
- int _cnt;
- unsigned char *_ptr;
- unsigned char *_base;
- int _bufsiz;
- short _flag;
- short _file;
- char *__newbase;
- void *_lock;
- unsigned char *_bufendp;
-} FILE;
-extern FILE _iob[];
-#define FILENAME_MAX 255
-#define FOPEN_MAX 64
-
-#if !defined(_FPOS_T) && !defined(_FPOS_T_)
-#define _FPOS_T
-#define _FPOS_T_
-typedef long fpos_t;
-#endif
-
-#define L_tmpnam 21
-#define NULL 0
-#define SEEK_CUR 1
-#define SEEK_END 2
-#define SEEK_SET 0
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-#if !defined(_VA_LIST)
-#define _VA_LIST
-typedef struct {
- char *_a0; /* pointer to first homed integer arg */
- int _offset; /* byte offset of next param */
- float _tmp;
-} __va_list;
-#endif
-
-#define stderr (&_iob[2])
-#define stdin (&_iob[0])
-#define stdout (&_iob[1])
-#define TMP_MAX 16384
-
-extern int remove(const char *);
-extern int rename(const char *, const char *);
-extern FILE *tmpfile(void);
-extern char *tmpnam(char *);
-extern int fclose(FILE *);
-extern int fflush(FILE *);
-extern FILE *fopen(const char *, const char *);
-extern FILE *freopen(const char *, const char *, FILE *);
-extern void setbuf(FILE *, char *);
-extern int setvbuf(FILE *, char *, int, size_t);
-extern int fprintf(FILE *, const char *, ...);
-extern int fscanf(FILE *, const char *, ...);
-extern int printf(const char *, ...);
-extern int scanf(const char *, ...);
-extern int sprintf(char *, const char *, ...);
-extern int sscanf(const char *, const char *, ...);
-extern int vfprintf(FILE *, const char *, __va_list);
-extern int vprintf(const char *, __va_list);
-extern int vsprintf(char *, const char *, __va_list);
-extern int fgetc(FILE *);
-extern char *fgets(char *, int, FILE *);
-extern int fputc(int, FILE *);
-extern int fputs(const char *, FILE *);
-extern int getc(FILE *);
-extern int getchar(void);
-extern char *gets(char *);
-extern int putc(int, FILE *);
-extern int putchar(int);
-extern int puts(const char *);
-extern int ungetc(int, FILE *);
-extern size_t fread(void *, size_t, size_t, FILE *);
-extern size_t fwrite(const void *, size_t, size_t, FILE *);
-extern int fgetpos(FILE *, fpos_t *);
-extern int fseek(FILE *, long int, int);
-extern int fsetpos(FILE *, const fpos_t *);
-extern long int ftell(FILE *);
-extern void rewind(FILE *);
-extern void clearerr(FILE *);
-extern int feof(FILE *);
-extern int ferror(FILE *);
-extern void perror(const char *);
-
-#define _IOEOF 020
-#define _IOERR 040
-
-#define getc(p) (--(p)->_cnt < 0 ? _filbuf(p) : (int) *(p)->_ptr++)
-#define putc(x, p) (--(p)->_cnt < 0 ? \
- _flsbuf((unsigned char) (x), p) : \
- (int) (*(p)->_ptr++ = (unsigned char) (x)))
-extern int _filbuf(FILE *), _flsbuf(unsigned, FILE *);
-#define feof(p) ((p)->_flag&_IOEOF)
-#define ferror(p) ((p)->_flag&_IOERR)
-#define clearerr(p) ((p)->_flag &= ~(_IOERR|_IOEOF))
-#define getchar() getc(stdin)
-#define putchar(x) putc((x),stdout)
-
-#endif /* __STDIO */
+#ifndef __STDIO
+#define __STDIO
+
+#define _IOFBF 0
+#define _IOLBF 0200
+#define _IONBF 04
+#define BUFSIZ 8192
+#define EOF (-1)
+
+typedef struct _iobuf {
+ int _cnt;
+ unsigned char *_ptr;
+ unsigned char *_base;
+ int _bufsiz;
+ short _flag;
+ short _file;
+ char *__newbase;
+ void *_lock;
+ unsigned char *_bufendp;
+} FILE;
+extern FILE _iob[];
+#define FILENAME_MAX 255
+#define FOPEN_MAX 64
+
+#if !defined(_FPOS_T) && !defined(_FPOS_T_)
+#define _FPOS_T
+#define _FPOS_T_
+typedef long fpos_t;
+#endif
+
+#define L_tmpnam 21
+#define NULL 0
+#define SEEK_CUR 1
+#define SEEK_END 2
+#define SEEK_SET 0
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+#if !defined(_VA_LIST)
+#define _VA_LIST
+typedef struct {
+ char *_a0; /* pointer to first homed integer arg */
+ int _offset; /* byte offset of next param */
+ float _tmp;
+} __va_list;
+#endif
+
+#define stderr (&_iob[2])
+#define stdin (&_iob[0])
+#define stdout (&_iob[1])
+#define TMP_MAX 16384
+
+extern int remove(const char *);
+extern int rename(const char *, const char *);
+extern FILE *tmpfile(void);
+extern char *tmpnam(char *);
+extern int fclose(FILE *);
+extern int fflush(FILE *);
+extern FILE *fopen(const char *, const char *);
+extern FILE *freopen(const char *, const char *, FILE *);
+extern void setbuf(FILE *, char *);
+extern int setvbuf(FILE *, char *, int, size_t);
+extern int fprintf(FILE *, const char *, ...);
+extern int fscanf(FILE *, const char *, ...);
+extern int printf(const char *, ...);
+extern int scanf(const char *, ...);
+extern int sprintf(char *, const char *, ...);
+extern int sscanf(const char *, const char *, ...);
+extern int vfprintf(FILE *, const char *, __va_list);
+extern int vprintf(const char *, __va_list);
+extern int vsprintf(char *, const char *, __va_list);
+extern int fgetc(FILE *);
+extern char *fgets(char *, int, FILE *);
+extern int fputc(int, FILE *);
+extern int fputs(const char *, FILE *);
+extern int getc(FILE *);
+extern int getchar(void);
+extern char *gets(char *);
+extern int putc(int, FILE *);
+extern int putchar(int);
+extern int puts(const char *);
+extern int ungetc(int, FILE *);
+extern size_t fread(void *, size_t, size_t, FILE *);
+extern size_t fwrite(const void *, size_t, size_t, FILE *);
+extern int fgetpos(FILE *, fpos_t *);
+extern int fseek(FILE *, long int, int);
+extern int fsetpos(FILE *, const fpos_t *);
+extern long int ftell(FILE *);
+extern void rewind(FILE *);
+extern void clearerr(FILE *);
+extern int feof(FILE *);
+extern int ferror(FILE *);
+extern void perror(const char *);
+
+#define _IOEOF 020
+#define _IOERR 040
+
+#define getc(p) (--(p)->_cnt < 0 ? _filbuf(p) : (int) *(p)->_ptr++)
+#define putc(x, p) (--(p)->_cnt < 0 ? \
+ _flsbuf((unsigned char) (x), p) : \
+ (int) (*(p)->_ptr++ = (unsigned char) (x)))
+extern int _filbuf(FILE *), _flsbuf(unsigned, FILE *);
+#define feof(p) ((p)->_flag&_IOEOF)
+#define ferror(p) ((p)->_flag&_IOERR)
+#define clearerr(p) ((p)->_flag &= ~(_IOERR|_IOEOF))
+#define getchar() getc(stdin)
+#define putchar(x) putc((x),stdout)
+
+#endif /* __STDIO */
diff --git a/lcc/include/alpha/osf/stdlib.h b/lcc/include/alpha/osf/stdlib.h
index e224f65..ac1204c 100755
--- a/lcc/include/alpha/osf/stdlib.h
+++ b/lcc/include/alpha/osf/stdlib.h
@@ -1,54 +1,54 @@
-#ifndef __STDLIB
-#define __STDLIB
-
-#define EXIT_FAILURE 1
-#define EXIT_SUCCESS 0
-#define MB_CUR_MAX 1
-#define NULL 0
-#define RAND_MAX 32767
-
-typedef struct { int quot, rem; } div_t;
-typedef struct { long quot, rem; } ldiv_t;
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
-#define _WCHAR_T
-#define _WCHAR_T_
-typedef unsigned char wchar_t;
-#endif
-
-extern double atof(const char *);
-extern int atoi(const char *);
-extern long int atol(const char *);
-extern double strtod(const char *, char **);
-extern long int strtol(const char *, char **, int);
-extern unsigned long int strtoul(const char *, char **, int);
-extern int rand(void);
-extern void srand(unsigned int);
-extern void *calloc(size_t, size_t);
-extern void free(void *);
-extern void *malloc(size_t);
-extern void *realloc(void *, size_t);
-extern void abort(void);
-extern int atexit(void (*)(void));
-extern void exit(int);
-extern char *getenv(const char *);
-extern int system(const char *);
-extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
-extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
-extern int abs(int);
-extern div_t div(int, int);
-extern long int labs(long int);
-extern ldiv_t ldiv(long int, long int);
-extern int mblen(const char *, size_t);
-extern int mbtowc(wchar_t *, const char *, size_t);
-extern int wctomb(char *, wchar_t);
-extern size_t mbstowcs(wchar_t *, const char *, size_t);
-extern size_t wcstombs(char *, const wchar_t *, size_t);
-
-#endif /* __STDLIB */
+#ifndef __STDLIB
+#define __STDLIB
+
+#define EXIT_FAILURE 1
+#define EXIT_SUCCESS 0
+#define MB_CUR_MAX 1
+#define NULL 0
+#define RAND_MAX 32767
+
+typedef struct { int quot, rem; } div_t;
+typedef struct { long quot, rem; } ldiv_t;
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
+#define _WCHAR_T
+#define _WCHAR_T_
+typedef unsigned char wchar_t;
+#endif
+
+extern double atof(const char *);
+extern int atoi(const char *);
+extern long int atol(const char *);
+extern double strtod(const char *, char **);
+extern long int strtol(const char *, char **, int);
+extern unsigned long int strtoul(const char *, char **, int);
+extern int rand(void);
+extern void srand(unsigned int);
+extern void *calloc(size_t, size_t);
+extern void free(void *);
+extern void *malloc(size_t);
+extern void *realloc(void *, size_t);
+extern void abort(void);
+extern int atexit(void (*)(void));
+extern void exit(int);
+extern char *getenv(const char *);
+extern int system(const char *);
+extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
+extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
+extern int abs(int);
+extern div_t div(int, int);
+extern long int labs(long int);
+extern ldiv_t ldiv(long int, long int);
+extern int mblen(const char *, size_t);
+extern int mbtowc(wchar_t *, const char *, size_t);
+extern int wctomb(char *, wchar_t);
+extern size_t mbstowcs(wchar_t *, const char *, size_t);
+extern size_t wcstombs(char *, const wchar_t *, size_t);
+
+#endif /* __STDLIB */
diff --git a/lcc/include/alpha/osf/string.h b/lcc/include/alpha/osf/string.h
index f19b1e4..8432820 100755
--- a/lcc/include/alpha/osf/string.h
+++ b/lcc/include/alpha/osf/string.h
@@ -1,35 +1,35 @@
-#ifndef __STRING
-#define __STRING
-
-#define NULL 0
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-void *memcpy(void *, const void *, size_t);
-void *memmove(void *, const void *, size_t);
-char *strcpy(char *, const char *);
-char *strncpy(char *, const char *, size_t);
-char *strcat(char *, const char *);
-char *strncat(char *, const char *, size_t);
-int memcmp(const void *, const void *, size_t);
-int strcmp(const char *, const char *);
-int strcoll(const char *, const char *);
-int strncmp(const char *, const char *, size_t);
-size_t strxfrm(char *, const char *, size_t);
-void *memchr(const void *, int, size_t);
-char *strchr(const char *, int);
-size_t strcspn(const char *, const char *);
-char *strpbrk(const char *, const char *);
-char *strrchr(const char *, int);
-size_t strspn(const char *, const char *);
-char *strstr(const char *, const char *);
-char *strtok(char *, const char *);
-void *memset(void *, int, size_t);
-char *strerror(int);
-size_t strlen(const char *);
-
-#endif /* __STRING */
+#ifndef __STRING
+#define __STRING
+
+#define NULL 0
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+void *memcpy(void *, const void *, size_t);
+void *memmove(void *, const void *, size_t);
+char *strcpy(char *, const char *);
+char *strncpy(char *, const char *, size_t);
+char *strcat(char *, const char *);
+char *strncat(char *, const char *, size_t);
+int memcmp(const void *, const void *, size_t);
+int strcmp(const char *, const char *);
+int strcoll(const char *, const char *);
+int strncmp(const char *, const char *, size_t);
+size_t strxfrm(char *, const char *, size_t);
+void *memchr(const void *, int, size_t);
+char *strchr(const char *, int);
+size_t strcspn(const char *, const char *);
+char *strpbrk(const char *, const char *);
+char *strrchr(const char *, int);
+size_t strspn(const char *, const char *);
+char *strstr(const char *, const char *);
+char *strtok(char *, const char *);
+void *memset(void *, int, size_t);
+char *strerror(int);
+size_t strlen(const char *);
+
+#endif /* __STRING */
diff --git a/lcc/include/alpha/osf/time.h b/lcc/include/alpha/osf/time.h
index 019c624..a855400 100755
--- a/lcc/include/alpha/osf/time.h
+++ b/lcc/include/alpha/osf/time.h
@@ -1,50 +1,50 @@
-#ifndef __TIME
-#define __TIME
-
-#define CLOCKS_PER_SEC 1000000
-#ifndef NULL
-#define NULL 0
-#endif
-
-#if !defined(_CLOCK_T) && !defined(_CLOCK_T_)
-#define _CLOCK_T
-#define _CLOCK_T_
-typedef long clock_t;
-#endif
-
-#if !defined(_TIME_T) && !defined(_TIME_T_)
-#define _TIME_T
-#define _TIME_T_
-typedef long time_t;
-#endif
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-struct tm {
- int tm_sec;
- int tm_min;
- int tm_hour;
- int tm_mday;
- int tm_mon;
- int tm_year;
- int tm_wday;
- int tm_yday;
- int tm_isdst;
-long __tm_gmtoff;
- char *__tm_zone;
-};
-extern clock_t clock(void);
-extern double difftime(time_t, time_t);
-extern time_t mktime(struct tm *);
-extern time_t time(time_t *);
-extern char *asctime(const struct tm *);
-extern char *ctime(const time_t *);
-extern struct tm *gmtime(const time_t *);
-extern struct tm *localtime(const time_t *);
-extern size_t strftime(char *, size_t, const char *, const struct tm *);
-
-#endif /* __TIME */
+#ifndef __TIME
+#define __TIME
+
+#define CLOCKS_PER_SEC 1000000
+#ifndef NULL
+#define NULL 0
+#endif
+
+#if !defined(_CLOCK_T) && !defined(_CLOCK_T_)
+#define _CLOCK_T
+#define _CLOCK_T_
+typedef long clock_t;
+#endif
+
+#if !defined(_TIME_T) && !defined(_TIME_T_)
+#define _TIME_T
+#define _TIME_T_
+typedef long time_t;
+#endif
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+struct tm {
+ int tm_sec;
+ int tm_min;
+ int tm_hour;
+ int tm_mday;
+ int tm_mon;
+ int tm_year;
+ int tm_wday;
+ int tm_yday;
+ int tm_isdst;
+long __tm_gmtoff;
+ char *__tm_zone;
+};
+extern clock_t clock(void);
+extern double difftime(time_t, time_t);
+extern time_t mktime(struct tm *);
+extern time_t time(time_t *);
+extern char *asctime(const struct tm *);
+extern char *ctime(const time_t *);
+extern struct tm *gmtime(const time_t *);
+extern struct tm *localtime(const time_t *);
+extern size_t strftime(char *, size_t, const char *, const struct tm *);
+
+#endif /* __TIME */
diff --git a/lcc/include/mips/irix/assert.h b/lcc/include/mips/irix/assert.h
index 5b4776c..04b0e3a 100755
--- a/lcc/include/mips/irix/assert.h
+++ b/lcc/include/mips/irix/assert.h
@@ -1,14 +1,14 @@
-#ifndef __ASSERT
-#define __ASSERT
-
-void assert(int);
-
-#endif /* __ASSERT */
-
-#undef assert
-#ifdef NDEBUG
-#define assert(ignore) ((void)0)
-#else
-extern int _assert(char *, char *, unsigned);
-#define assert(e) ((void)((e)||_assert(#e, __FILE__, __LINE__)))
-#endif /* NDEBUG */
+#ifndef __ASSERT
+#define __ASSERT
+
+void assert(int);
+
+#endif /* __ASSERT */
+
+#undef assert
+#ifdef NDEBUG
+#define assert(ignore) ((void)0)
+#else
+extern int _assert(char *, char *, unsigned);
+#define assert(e) ((void)((e)||_assert(#e, __FILE__, __LINE__)))
+#endif /* NDEBUG */
diff --git a/lcc/include/mips/irix/ctype.h b/lcc/include/mips/irix/ctype.h
index 7239547..2a43440 100755
--- a/lcc/include/mips/irix/ctype.h
+++ b/lcc/include/mips/irix/ctype.h
@@ -1,40 +1,40 @@
-#ifndef __CTYPE
-#define __CTYPE
-
-extern int isalnum(int);
-extern int isalpha(int);
-extern int iscntrl(int);
-extern int isdigit(int);
-extern int isgraph(int);
-extern int islower(int);
-extern int isprint(int);
-extern int ispunct(int);
-extern int isspace(int);
-extern int isupper(int);
-extern int isxdigit(int);
-extern int tolower(int);
-extern int toupper(int);
-
-#define __U 01
-#define __L 02
-#define __N 04
-#define __S 010
-#define __P 020
-#define __C 040
-#define __B 0100
-#define __X 0200
-
-extern unsigned char _ctype[];
-#define isalnum(c) ((_ctype+1)[c]&(__U|__L|__N))
-#define isalpha(c) ((_ctype+1)[c]&(__U|__L))
-#define iscntrl(c) ((_ctype+1)[c]&__C)
-#define isdigit(c) ((_ctype+1)[c]&__N)
-#define isgraph(c) ((_ctype+1)[c]&(__P|__U|__L|__N))
-#define islower(c) ((_ctype+1)[c]&__L)
-#define isprint(c) ((_ctype+1)[c]&(__P|__U|__L|__N|__B))
-#define ispunct(c) ((_ctype+1)[c]&__P)
-#define isspace(c) ((_ctype+1)[c]&__S)
-#define isupper(c) ((_ctype+1)[c]&__U)
-#define isxdigit(c) ((_ctype+1)[c]&__X)
-
-#endif /* __CTYPE */
+#ifndef __CTYPE
+#define __CTYPE
+
+extern int isalnum(int);
+extern int isalpha(int);
+extern int iscntrl(int);
+extern int isdigit(int);
+extern int isgraph(int);
+extern int islower(int);
+extern int isprint(int);
+extern int ispunct(int);
+extern int isspace(int);
+extern int isupper(int);
+extern int isxdigit(int);
+extern int tolower(int);
+extern int toupper(int);
+
+#define __U 01
+#define __L 02
+#define __N 04
+#define __S 010
+#define __P 020
+#define __C 040
+#define __B 0100
+#define __X 0200
+
+extern unsigned char _ctype[];
+#define isalnum(c) ((_ctype+1)[c]&(__U|__L|__N))
+#define isalpha(c) ((_ctype+1)[c]&(__U|__L))
+#define iscntrl(c) ((_ctype+1)[c]&__C)
+#define isdigit(c) ((_ctype+1)[c]&__N)
+#define isgraph(c) ((_ctype+1)[c]&(__P|__U|__L|__N))
+#define islower(c) ((_ctype+1)[c]&__L)
+#define isprint(c) ((_ctype+1)[c]&(__P|__U|__L|__N|__B))
+#define ispunct(c) ((_ctype+1)[c]&__P)
+#define isspace(c) ((_ctype+1)[c]&__S)
+#define isupper(c) ((_ctype+1)[c]&__U)
+#define isxdigit(c) ((_ctype+1)[c]&__X)
+
+#endif /* __CTYPE */
diff --git a/lcc/include/mips/irix/errno.h b/lcc/include/mips/irix/errno.h
index 5ab3f0f..c914e05 100755
--- a/lcc/include/mips/irix/errno.h
+++ b/lcc/include/mips/irix/errno.h
@@ -1,8 +1,8 @@
-#ifndef __ERRNO
-#define __ERRNO
-
-#define EDOM 33
-#define ERANGE 34
-extern int errno;
-
-#endif /* __ERRNO */
+#ifndef __ERRNO
+#define __ERRNO
+
+#define EDOM 33
+#define ERANGE 34
+extern int errno;
+
+#endif /* __ERRNO */
diff --git a/lcc/include/mips/irix/float.h b/lcc/include/mips/irix/float.h
index 8a8ddb1..a3e1eb5 100755
--- a/lcc/include/mips/irix/float.h
+++ b/lcc/include/mips/irix/float.h
@@ -1,37 +1,37 @@
-#ifndef __FLOAT
-#define __FLOAT
-
-#define FLT_ROUNDS 1
-#define FLT_RADIX 2
-
-#define FLT_DIG 6
-#define FLT_EPSILON 1.19209289550781250000e-07
-#define FLT_MANT_DIG 24
-#define FLT_MAX 3.40282346638528860000e+38
-#define FLT_MAX_10_EXP 38
-#define FLT_MAX_EXP 128
-#define FLT_MIN 1.17549435082228750000e-38
-#define FLT_MIN_10_EXP -37
-#define FLT_MIN_EXP -125
-
-#define DBL_DIG 15
-#define DBL_EPSILON 2.22044604925031310000e-16
-#define DBL_MANT_DIG 53
-#define DBL_MAX 1.79769313486231570000e+308
-#define DBL_MAX_10_EXP 308
-#define DBL_MAX_EXP 1024
-#define DBL_MIN 2.22507385850720140000e-308
-#define DBL_MIN_10_EXP -307
-#define DBL_MIN_EXP -1021
-
-#define LDBL_MANT_DIG DBL_MANT_DIG
-#define LDBL_EPSILON DBL_EPSILON
-#define LDBL_DIG DBL_DIG
-#define LDBL_MIN_EXP DBL_MIN_EXP
-#define LDBL_MIN DBL_MIN
-#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
-#define LDBL_MAX_EXP DBL_MAX_EXP
-#define LDBL_MAX DBL_MAX
-#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
-
-#endif /* __FLOAT */
+#ifndef __FLOAT
+#define __FLOAT
+
+#define FLT_ROUNDS 1
+#define FLT_RADIX 2
+
+#define FLT_DIG 6
+#define FLT_EPSILON 1.19209289550781250000e-07
+#define FLT_MANT_DIG 24
+#define FLT_MAX 3.40282346638528860000e+38
+#define FLT_MAX_10_EXP 38
+#define FLT_MAX_EXP 128
+#define FLT_MIN 1.17549435082228750000e-38
+#define FLT_MIN_10_EXP -37
+#define FLT_MIN_EXP -125
+
+#define DBL_DIG 15
+#define DBL_EPSILON 2.22044604925031310000e-16
+#define DBL_MANT_DIG 53
+#define DBL_MAX 1.79769313486231570000e+308
+#define DBL_MAX_10_EXP 308
+#define DBL_MAX_EXP 1024
+#define DBL_MIN 2.22507385850720140000e-308
+#define DBL_MIN_10_EXP -307
+#define DBL_MIN_EXP -1021
+
+#define LDBL_MANT_DIG DBL_MANT_DIG
+#define LDBL_EPSILON DBL_EPSILON
+#define LDBL_DIG DBL_DIG
+#define LDBL_MIN_EXP DBL_MIN_EXP
+#define LDBL_MIN DBL_MIN
+#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
+#define LDBL_MAX_EXP DBL_MAX_EXP
+#define LDBL_MAX DBL_MAX
+#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
+
+#endif /* __FLOAT */
diff --git a/lcc/include/mips/irix/limits.h b/lcc/include/mips/irix/limits.h
index 98251f8..30944a5 100755
--- a/lcc/include/mips/irix/limits.h
+++ b/lcc/include/mips/irix/limits.h
@@ -1,24 +1,24 @@
-#ifndef __LIMITS
-#define __LIMITS
-
-#define CHAR_BIT 8
-#define MB_LEN_MAX 1
-
-#define UCHAR_MAX 0xff
-#define USHRT_MAX 0xffff
-#define UINT_MAX (~0U)
-#define ULONG_MAX (~0UL)
-
-#define CHAR_MAX SCHAR_MAX
-#define SCHAR_MAX 0x7f
-#define SHRT_MAX 0x7fff
-#define INT_MAX 0x7fffffff
-#define LONG_MAX 0x7fffffffL
-
-#define CHAR_MIN SCHAR_MIN
-#define SCHAR_MIN (-SCHAR_MAX-1)
-#define SHRT_MIN (-SHRT_MAX-1)
-#define INT_MIN (-INT_MAX-1)
-#define LONG_MIN (-LONG_MAX-1)
-
-#endif /* __LIMITS */
+#ifndef __LIMITS
+#define __LIMITS
+
+#define CHAR_BIT 8
+#define MB_LEN_MAX 1
+
+#define UCHAR_MAX 0xff
+#define USHRT_MAX 0xffff
+#define UINT_MAX (~0U)
+#define ULONG_MAX (~0UL)
+
+#define CHAR_MAX SCHAR_MAX
+#define SCHAR_MAX 0x7f
+#define SHRT_MAX 0x7fff
+#define INT_MAX 0x7fffffff
+#define LONG_MAX 0x7fffffffL
+
+#define CHAR_MIN SCHAR_MIN
+#define SCHAR_MIN (-SCHAR_MAX-1)
+#define SHRT_MIN (-SHRT_MAX-1)
+#define INT_MIN (-INT_MAX-1)
+#define LONG_MIN (-LONG_MAX-1)
+
+#endif /* __LIMITS */
diff --git a/lcc/include/mips/irix/locale.h b/lcc/include/mips/irix/locale.h
index a861b47..acce293 100755
--- a/lcc/include/mips/irix/locale.h
+++ b/lcc/include/mips/irix/locale.h
@@ -1,36 +1,36 @@
-#ifndef __LOCALE
-#define __LOCALE
-
-#define LC_ALL 0
-#define LC_COLLATE 1
-#define LC_CTYPE 2
-#define LC_MONETARY 3
-#define LC_NUMERIC 4
-#define LC_TIME 5
-#define NULL 0
-
-struct lconv {
- char *decimal_point;
- char *thousands_sep;
- char *grouping;
- char *int_curr_symbol;
- char *currency_symbol;
- char *mon_decimal_point;
- char *mon_thousands_sep;
- char *mon_grouping;
- char *positive_sign;
- char *negative_sign;
- char int_frac_digits;
- char frac_digits;
- char p_cs_precedes;
- char p_sep_by_space;
- char n_cs_precedes;
- char n_sep_by_space;
- char p_sign_posn;
- char n_sign_posn;
-};
-
-char *setlocale(int, const char *);
-struct lconv *localeconv(void);
-
-#endif /* __LOCALE */
+#ifndef __LOCALE
+#define __LOCALE
+
+#define LC_ALL 0
+#define LC_COLLATE 1
+#define LC_CTYPE 2
+#define LC_MONETARY 3
+#define LC_NUMERIC 4
+#define LC_TIME 5
+#define NULL 0
+
+struct lconv {
+ char *decimal_point;
+ char *thousands_sep;
+ char *grouping;
+ char *int_curr_symbol;
+ char *currency_symbol;
+ char *mon_decimal_point;
+ char *mon_thousands_sep;
+ char *mon_grouping;
+ char *positive_sign;
+ char *negative_sign;
+ char int_frac_digits;
+ char frac_digits;
+ char p_cs_precedes;
+ char p_sep_by_space;
+ char n_cs_precedes;
+ char n_sep_by_space;
+ char p_sign_posn;
+ char n_sign_posn;
+};
+
+char *setlocale(int, const char *);
+struct lconv *localeconv(void);
+
+#endif /* __LOCALE */
diff --git a/lcc/include/mips/irix/math.h b/lcc/include/mips/irix/math.h
index bb39d69..d2a31f4 100755
--- a/lcc/include/mips/irix/math.h
+++ b/lcc/include/mips/irix/math.h
@@ -1,29 +1,29 @@
-#ifndef __MATH
-#define __MATH
-
-#define HUGE_VAL 1.79769313486231570000e+308
-
-extern double acos(double);
-extern double asin(double);
-extern double atan(double);
-extern double atan2(double, double);
-extern double cos(double);
-extern double sin(double);
-extern double tan(double);
-extern double cosh(double);
-extern double sinh(double);
-extern double tanh(double);
-extern double exp(double);
-extern double frexp(double, int *);
-extern double ldexp(double, int);
-extern double log(double);
-extern double log10(double);
-extern double modf(double, double *);
-extern double pow(double, double);
-extern double sqrt(double);
-extern double ceil(double);
-extern double fabs(double);
-extern double floor(double);
-extern double fmod(double, double);
-
-#endif /* __MATH */
+#ifndef __MATH
+#define __MATH
+
+#define HUGE_VAL 1.79769313486231570000e+308
+
+extern double acos(double);
+extern double asin(double);
+extern double atan(double);
+extern double atan2(double, double);
+extern double cos(double);
+extern double sin(double);
+extern double tan(double);
+extern double cosh(double);
+extern double sinh(double);
+extern double tanh(double);
+extern double exp(double);
+extern double frexp(double, int *);
+extern double ldexp(double, int);
+extern double log(double);
+extern double log10(double);
+extern double modf(double, double *);
+extern double pow(double, double);
+extern double sqrt(double);
+extern double ceil(double);
+extern double fabs(double);
+extern double floor(double);
+extern double fmod(double, double);
+
+#endif /* __MATH */
diff --git a/lcc/include/mips/irix/setjmp.h b/lcc/include/mips/irix/setjmp.h
index d4247f9..384a1ca 100755
--- a/lcc/include/mips/irix/setjmp.h
+++ b/lcc/include/mips/irix/setjmp.h
@@ -1,10 +1,10 @@
-#ifndef __SETJMP
-#define __SETJMP
-
-
-
-typedef int jmp_buf[28];
-int setjmp(jmp_buf);
-void longjmp(jmp_buf, int);
-
-#endif /* __SETJMP */
+#ifndef __SETJMP
+#define __SETJMP
+
+
+
+typedef int jmp_buf[28];
+int setjmp(jmp_buf);
+void longjmp(jmp_buf, int);
+
+#endif /* __SETJMP */
diff --git a/lcc/include/mips/irix/signal.h b/lcc/include/mips/irix/signal.h
index 22f98bc..c208a6b 100755
--- a/lcc/include/mips/irix/signal.h
+++ b/lcc/include/mips/irix/signal.h
@@ -1,20 +1,20 @@
-#ifndef __SIGNAL
-#define __SIGNAL
-
-typedef int sig_atomic_t;
-
-#define SIG_DFL ((void (*)(int))0)
-#define SIG_ERR ((void (*)(int))-1)
-#define SIG_IGN ((void (*)(int))1)
-
-#define SIGABRT 6
-#define SIGFPE 8
-#define SIGILL 4
-#define SIGINT 2
-#define SIGSEGV 11
-#define SIGTERM 15
-
-void (*signal(int, void (*)(int)))(int);
-int raise(int);
-
-#endif /* __SIGNAL */
+#ifndef __SIGNAL
+#define __SIGNAL
+
+typedef int sig_atomic_t;
+
+#define SIG_DFL ((void (*)(int))0)
+#define SIG_ERR ((void (*)(int))-1)
+#define SIG_IGN ((void (*)(int))1)
+
+#define SIGABRT 6
+#define SIGFPE 8
+#define SIGILL 4
+#define SIGINT 2
+#define SIGSEGV 11
+#define SIGTERM 15
+
+void (*signal(int, void (*)(int)))(int);
+int raise(int);
+
+#endif /* __SIGNAL */
diff --git a/lcc/include/mips/irix/stdarg.h b/lcc/include/mips/irix/stdarg.h
index 6c3a486..594db32 100755
--- a/lcc/include/mips/irix/stdarg.h
+++ b/lcc/include/mips/irix/stdarg.h
@@ -1,22 +1,22 @@
-#ifndef __STDARG
-#define __STDARG
-
-#if !defined(_VA_LIST)
-#define _VA_LIST
-typedef char *__va_list;
-#endif
-typedef __va_list va_list;
-
-#define va_start(list, start) ((void)((list) = (sizeof(start)<4 ? \
- (char *)((int *)&(start)+1) : (char *)(&(start)+1))))
-#define __va_arg(list, mode, n) \
- (*(mode *)(&(list += ((sizeof(mode)+n)&~n))[-(int)((sizeof(mode)+n)&~n)]))
-#define _bigendian_va_arg(list, mode, n) (\
- sizeof(mode)==1 ? *(mode *)(&(list += 4)[-1]) : \
- sizeof(mode)==2 ? *(mode *)(&(list += 4)[-2]) : __va_arg(list, mode, n))
-#define _littleendian_va_arg(list, mode, n) __va_arg(list, mode, n)
-#define va_end(list) ((void)0)
-#define va_arg(list, mode) (sizeof(mode)==8 ? \
- *(mode *)(&(list = (char*)(((int)list + 15)&~7U))[-8]) : \
- _bigendian_va_arg(list, mode, 3U))
-#endif
+#ifndef __STDARG
+#define __STDARG
+
+#if !defined(_VA_LIST)
+#define _VA_LIST
+typedef char *__va_list;
+#endif
+typedef __va_list va_list;
+
+#define va_start(list, start) ((void)((list) = (sizeof(start)<4 ? \
+ (char *)((int *)&(start)+1) : (char *)(&(start)+1))))
+#define __va_arg(list, mode, n) \
+ (*(mode *)(&(list += ((sizeof(mode)+n)&~n))[-(int)((sizeof(mode)+n)&~n)]))
+#define _bigendian_va_arg(list, mode, n) (\
+ sizeof(mode)==1 ? *(mode *)(&(list += 4)[-1]) : \
+ sizeof(mode)==2 ? *(mode *)(&(list += 4)[-2]) : __va_arg(list, mode, n))
+#define _littleendian_va_arg(list, mode, n) __va_arg(list, mode, n)
+#define va_end(list) ((void)0)
+#define va_arg(list, mode) (sizeof(mode)==8 ? \
+ *(mode *)(&(list = (char*)(((int)list + 15)&~7U))[-8]) : \
+ _bigendian_va_arg(list, mode, 3U))
+#endif
diff --git a/lcc/include/mips/irix/stddef.h b/lcc/include/mips/irix/stddef.h
index 459bfd6..4e87e1c 100755
--- a/lcc/include/mips/irix/stddef.h
+++ b/lcc/include/mips/irix/stddef.h
@@ -1,22 +1,22 @@
-#ifndef __STDDEF
-#define __STDDEF
-
-
-#define NULL 0
-#define offsetof(ty,mem) ((size_t)((char*)&((ty*)0)->mem - (char*)0))
-
-typedef long ptrdiff_t;
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
-#define _WCHAR_T
-#define _WCHAR_T_
-typedef unsigned short wchar_t;
-#endif
-
-#endif /* __STDDEF */
+#ifndef __STDDEF
+#define __STDDEF
+
+
+#define NULL 0
+#define offsetof(ty,mem) ((size_t)((char*)&((ty*)0)->mem - (char*)0))
+
+typedef long ptrdiff_t;
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
+#define _WCHAR_T
+#define _WCHAR_T_
+typedef unsigned short wchar_t;
+#endif
+
+#endif /* __STDDEF */
diff --git a/lcc/include/mips/irix/stdio.h b/lcc/include/mips/irix/stdio.h
index 77d996a..2668465 100755
--- a/lcc/include/mips/irix/stdio.h
+++ b/lcc/include/mips/irix/stdio.h
@@ -1,103 +1,103 @@
-#ifndef __STDIO
-#define __STDIO
-
-#define _IOFBF 0
-#define _IOLBF 0100
-#define _IONBF 04
-#define BUFSIZ 1024
-#define EOF (-1)
-
-extern struct _iobuf {
- int _cnt;
- unsigned char *_ptr;
- unsigned char *_base;
- char _flag;
- char _file;
-} _iob[];
-#define FILE struct _iobuf
-#define FILENAME_MAX 256
-#define FOPEN_MAX 100
-
-#if !defined(_FPOS_T) && !defined(_FPOS_T_)
-#define _FPOS_T
-#define _FPOS_T_
-typedef long fpos_t;
-#endif
-
-#define L_tmpnam 25
-#define NULL 0
-#define SEEK_CUR 1
-#define SEEK_END 2
-#define SEEK_SET 0
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-#if !defined(_VA_LIST)
-#define _VA_LIST
-typedef char *__va_list;
-#endif
-
-#define stderr (&_iob[2])
-#define stdin (&_iob[0])
-#define stdout (&_iob[1])
-#define TMP_MAX 17576
-
-extern int remove(const char *);
-extern int rename(const char *, const char *);
-extern FILE *tmpfile(void);
-extern char *tmpnam(char *);
-extern int fclose(FILE *);
-extern int fflush(FILE *);
-extern FILE *fopen(const char *, const char *);
-extern FILE *freopen(const char *, const char *, FILE *);
-extern void setbuf(FILE *, char *);
-extern int setvbuf(FILE *, char *, int, size_t);
-extern int fprintf(FILE *, const char *, ...);
-extern int fscanf(FILE *, const char *, ...);
-extern int printf(const char *, ...);
-extern int scanf(const char *, ...);
-extern int sprintf(char *, const char *, ...);
-extern int sscanf(const char *, const char *, ...);
-extern int vfprintf(FILE *, const char *, __va_list);
-extern int vprintf(const char *, __va_list);
-extern int vsprintf(char *, const char *, __va_list);
-extern int fgetc(FILE *);
-extern char *fgets(char *, int, FILE *);
-extern int fputc(int, FILE *);
-extern int fputs(const char *, FILE *);
-extern int getc(FILE *);
-extern int getchar(void);
-extern char *gets(char *);
-extern int putc(int, FILE *);
-extern int putchar(int);
-extern int puts(const char *);
-extern int ungetc(int, FILE *);
-extern size_t fread(void *, size_t, size_t, FILE *);
-extern size_t fwrite(const void *, size_t, size_t, FILE *);
-extern int fgetpos(FILE *, fpos_t *);
-extern int fseek(FILE *, long int, int);
-extern int fsetpos(FILE *, const fpos_t *);
-extern long int ftell(FILE *);
-extern void rewind(FILE *);
-extern void clearerr(FILE *);
-extern int feof(FILE *);
-extern int ferror(FILE *);
-extern void perror(const char *);
-
-#define _IOEOF 020
-#define _IOERR 040
-
-#define getc(p) (--(p)->_cnt < 0 ? _filbuf(p) : (int) *(p)->_ptr++)
-#define putc(x, p) (--(p)->_cnt < 0 ? _flsbuf((unsigned char) (x), p) : (int) (*(p)->_ptr++ = (unsigned char) (x)))
-extern int _filbuf(FILE *), _flsbuf(unsigned, FILE *);
-#define feof(p) ((p)->_flag&_IOEOF)
-#define ferror(p) ((p)->_flag&_IOERR)
-#define clearerr(p) ((p)->_flag &= ~(_IOERR|_IOEOF))
-#define getchar() getc(stdin)
-#define putchar(x) putc((x),stdout)
-
-#endif /* __STDIO */
+#ifndef __STDIO
+#define __STDIO
+
+#define _IOFBF 0
+#define _IOLBF 0100
+#define _IONBF 04
+#define BUFSIZ 1024
+#define EOF (-1)
+
+extern struct _iobuf {
+ int _cnt;
+ unsigned char *_ptr;
+ unsigned char *_base;
+ char _flag;
+ char _file;
+} _iob[];
+#define FILE struct _iobuf
+#define FILENAME_MAX 256
+#define FOPEN_MAX 100
+
+#if !defined(_FPOS_T) && !defined(_FPOS_T_)
+#define _FPOS_T
+#define _FPOS_T_
+typedef long fpos_t;
+#endif
+
+#define L_tmpnam 25
+#define NULL 0
+#define SEEK_CUR 1
+#define SEEK_END 2
+#define SEEK_SET 0
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+#if !defined(_VA_LIST)
+#define _VA_LIST
+typedef char *__va_list;
+#endif
+
+#define stderr (&_iob[2])
+#define stdin (&_iob[0])
+#define stdout (&_iob[1])
+#define TMP_MAX 17576
+
+extern int remove(const char *);
+extern int rename(const char *, const char *);
+extern FILE *tmpfile(void);
+extern char *tmpnam(char *);
+extern int fclose(FILE *);
+extern int fflush(FILE *);
+extern FILE *fopen(const char *, const char *);
+extern FILE *freopen(const char *, const char *, FILE *);
+extern void setbuf(FILE *, char *);
+extern int setvbuf(FILE *, char *, int, size_t);
+extern int fprintf(FILE *, const char *, ...);
+extern int fscanf(FILE *, const char *, ...);
+extern int printf(const char *, ...);
+extern int scanf(const char *, ...);
+extern int sprintf(char *, const char *, ...);
+extern int sscanf(const char *, const char *, ...);
+extern int vfprintf(FILE *, const char *, __va_list);
+extern int vprintf(const char *, __va_list);
+extern int vsprintf(char *, const char *, __va_list);
+extern int fgetc(FILE *);
+extern char *fgets(char *, int, FILE *);
+extern int fputc(int, FILE *);
+extern int fputs(const char *, FILE *);
+extern int getc(FILE *);
+extern int getchar(void);
+extern char *gets(char *);
+extern int putc(int, FILE *);
+extern int putchar(int);
+extern int puts(const char *);
+extern int ungetc(int, FILE *);
+extern size_t fread(void *, size_t, size_t, FILE *);
+extern size_t fwrite(const void *, size_t, size_t, FILE *);
+extern int fgetpos(FILE *, fpos_t *);
+extern int fseek(FILE *, long int, int);
+extern int fsetpos(FILE *, const fpos_t *);
+extern long int ftell(FILE *);
+extern void rewind(FILE *);
+extern void clearerr(FILE *);
+extern int feof(FILE *);
+extern int ferror(FILE *);
+extern void perror(const char *);
+
+#define _IOEOF 020
+#define _IOERR 040
+
+#define getc(p) (--(p)->_cnt < 0 ? _filbuf(p) : (int) *(p)->_ptr++)
+#define putc(x, p) (--(p)->_cnt < 0 ? _flsbuf((unsigned char) (x), p) : (int) (*(p)->_ptr++ = (unsigned char) (x)))
+extern int _filbuf(FILE *), _flsbuf(unsigned, FILE *);
+#define feof(p) ((p)->_flag&_IOEOF)
+#define ferror(p) ((p)->_flag&_IOERR)
+#define clearerr(p) ((p)->_flag &= ~(_IOERR|_IOEOF))
+#define getchar() getc(stdin)
+#define putchar(x) putc((x),stdout)
+
+#endif /* __STDIO */
diff --git a/lcc/include/mips/irix/stdlib.h b/lcc/include/mips/irix/stdlib.h
index e224f65..ac1204c 100755
--- a/lcc/include/mips/irix/stdlib.h
+++ b/lcc/include/mips/irix/stdlib.h
@@ -1,54 +1,54 @@
-#ifndef __STDLIB
-#define __STDLIB
-
-#define EXIT_FAILURE 1
-#define EXIT_SUCCESS 0
-#define MB_CUR_MAX 1
-#define NULL 0
-#define RAND_MAX 32767
-
-typedef struct { int quot, rem; } div_t;
-typedef struct { long quot, rem; } ldiv_t;
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
-#define _WCHAR_T
-#define _WCHAR_T_
-typedef unsigned char wchar_t;
-#endif
-
-extern double atof(const char *);
-extern int atoi(const char *);
-extern long int atol(const char *);
-extern double strtod(const char *, char **);
-extern long int strtol(const char *, char **, int);
-extern unsigned long int strtoul(const char *, char **, int);
-extern int rand(void);
-extern void srand(unsigned int);
-extern void *calloc(size_t, size_t);
-extern void free(void *);
-extern void *malloc(size_t);
-extern void *realloc(void *, size_t);
-extern void abort(void);
-extern int atexit(void (*)(void));
-extern void exit(int);
-extern char *getenv(const char *);
-extern int system(const char *);
-extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
-extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
-extern int abs(int);
-extern div_t div(int, int);
-extern long int labs(long int);
-extern ldiv_t ldiv(long int, long int);
-extern int mblen(const char *, size_t);
-extern int mbtowc(wchar_t *, const char *, size_t);
-extern int wctomb(char *, wchar_t);
-extern size_t mbstowcs(wchar_t *, const char *, size_t);
-extern size_t wcstombs(char *, const wchar_t *, size_t);
-
-#endif /* __STDLIB */
+#ifndef __STDLIB
+#define __STDLIB
+
+#define EXIT_FAILURE 1
+#define EXIT_SUCCESS 0
+#define MB_CUR_MAX 1
+#define NULL 0
+#define RAND_MAX 32767
+
+typedef struct { int quot, rem; } div_t;
+typedef struct { long quot, rem; } ldiv_t;
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
+#define _WCHAR_T
+#define _WCHAR_T_
+typedef unsigned char wchar_t;
+#endif
+
+extern double atof(const char *);
+extern int atoi(const char *);
+extern long int atol(const char *);
+extern double strtod(const char *, char **);
+extern long int strtol(const char *, char **, int);
+extern unsigned long int strtoul(const char *, char **, int);
+extern int rand(void);
+extern void srand(unsigned int);
+extern void *calloc(size_t, size_t);
+extern void free(void *);
+extern void *malloc(size_t);
+extern void *realloc(void *, size_t);
+extern void abort(void);
+extern int atexit(void (*)(void));
+extern void exit(int);
+extern char *getenv(const char *);
+extern int system(const char *);
+extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
+extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
+extern int abs(int);
+extern div_t div(int, int);
+extern long int labs(long int);
+extern ldiv_t ldiv(long int, long int);
+extern int mblen(const char *, size_t);
+extern int mbtowc(wchar_t *, const char *, size_t);
+extern int wctomb(char *, wchar_t);
+extern size_t mbstowcs(wchar_t *, const char *, size_t);
+extern size_t wcstombs(char *, const wchar_t *, size_t);
+
+#endif /* __STDLIB */
diff --git a/lcc/include/mips/irix/string.h b/lcc/include/mips/irix/string.h
index f19b1e4..8432820 100755
--- a/lcc/include/mips/irix/string.h
+++ b/lcc/include/mips/irix/string.h
@@ -1,35 +1,35 @@
-#ifndef __STRING
-#define __STRING
-
-#define NULL 0
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-void *memcpy(void *, const void *, size_t);
-void *memmove(void *, const void *, size_t);
-char *strcpy(char *, const char *);
-char *strncpy(char *, const char *, size_t);
-char *strcat(char *, const char *);
-char *strncat(char *, const char *, size_t);
-int memcmp(const void *, const void *, size_t);
-int strcmp(const char *, const char *);
-int strcoll(const char *, const char *);
-int strncmp(const char *, const char *, size_t);
-size_t strxfrm(char *, const char *, size_t);
-void *memchr(const void *, int, size_t);
-char *strchr(const char *, int);
-size_t strcspn(const char *, const char *);
-char *strpbrk(const char *, const char *);
-char *strrchr(const char *, int);
-size_t strspn(const char *, const char *);
-char *strstr(const char *, const char *);
-char *strtok(char *, const char *);
-void *memset(void *, int, size_t);
-char *strerror(int);
-size_t strlen(const char *);
-
-#endif /* __STRING */
+#ifndef __STRING
+#define __STRING
+
+#define NULL 0
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+void *memcpy(void *, const void *, size_t);
+void *memmove(void *, const void *, size_t);
+char *strcpy(char *, const char *);
+char *strncpy(char *, const char *, size_t);
+char *strcat(char *, const char *);
+char *strncat(char *, const char *, size_t);
+int memcmp(const void *, const void *, size_t);
+int strcmp(const char *, const char *);
+int strcoll(const char *, const char *);
+int strncmp(const char *, const char *, size_t);
+size_t strxfrm(char *, const char *, size_t);
+void *memchr(const void *, int, size_t);
+char *strchr(const char *, int);
+size_t strcspn(const char *, const char *);
+char *strpbrk(const char *, const char *);
+char *strrchr(const char *, int);
+size_t strspn(const char *, const char *);
+char *strstr(const char *, const char *);
+char *strtok(char *, const char *);
+void *memset(void *, int, size_t);
+char *strerror(int);
+size_t strlen(const char *);
+
+#endif /* __STRING */
diff --git a/lcc/include/mips/irix/time.h b/lcc/include/mips/irix/time.h
index 55a4922..07d8b41 100755
--- a/lcc/include/mips/irix/time.h
+++ b/lcc/include/mips/irix/time.h
@@ -1,48 +1,48 @@
-#ifndef __TIME
-#define __TIME
-
-#define CLOCKS_PER_SEC 1000000
-#ifndef NULL
-#define NULL 0
-#endif
-
-#if !defined(_CLOCK_T) && !defined(_CLOCK_T_)
-#define _CLOCK_T
-#define _CLOCK_T_
-typedef long clock_t;
-#endif
-
-#if !defined(_TIME_T) && !defined(_TIME_T_)
-#define _TIME_T
-#define _TIME_T_
-typedef long time_t;
-#endif
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-struct tm {
- int tm_sec;
- int tm_min;
- int tm_hour;
- int tm_mday;
- int tm_mon;
- int tm_year;
- int tm_wday;
- int tm_yday;
- int tm_isdst;
-};
-extern clock_t clock(void);
-extern double difftime(time_t, time_t);
-extern time_t mktime(struct tm *);
-extern time_t time(time_t *);
-extern char *asctime(const struct tm *);
-extern char *ctime(const time_t *);
-extern struct tm *gmtime(const time_t *);
-extern struct tm *localtime(const time_t *);
-extern size_t strftime(char *, size_t, const char *, const struct tm *);
-
-#endif /* __TIME */
+#ifndef __TIME
+#define __TIME
+
+#define CLOCKS_PER_SEC 1000000
+#ifndef NULL
+#define NULL 0
+#endif
+
+#if !defined(_CLOCK_T) && !defined(_CLOCK_T_)
+#define _CLOCK_T
+#define _CLOCK_T_
+typedef long clock_t;
+#endif
+
+#if !defined(_TIME_T) && !defined(_TIME_T_)
+#define _TIME_T
+#define _TIME_T_
+typedef long time_t;
+#endif
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+struct tm {
+ int tm_sec;
+ int tm_min;
+ int tm_hour;
+ int tm_mday;
+ int tm_mon;
+ int tm_year;
+ int tm_wday;
+ int tm_yday;
+ int tm_isdst;
+};
+extern clock_t clock(void);
+extern double difftime(time_t, time_t);
+extern time_t mktime(struct tm *);
+extern time_t time(time_t *);
+extern char *asctime(const struct tm *);
+extern char *ctime(const time_t *);
+extern struct tm *gmtime(const time_t *);
+extern struct tm *localtime(const time_t *);
+extern size_t strftime(char *, size_t, const char *, const struct tm *);
+
+#endif /* __TIME */
diff --git a/lcc/include/sparc/solaris/assert.h b/lcc/include/sparc/solaris/assert.h
index e7f8777..ee0b0bf 100755
--- a/lcc/include/sparc/solaris/assert.h
+++ b/lcc/include/sparc/solaris/assert.h
@@ -1,14 +1,14 @@
-#ifndef __ASSERT
-#define __ASSERT
-
-void assert(int);
-
-#endif /* __ASSERT */
-
-#undef assert
-#ifdef NDEBUG
-#define assert(ignore) ((void)0)
-#else
-extern void __assert(char *, char *, unsigned);
-#define assert(e) ((void)((e)||(__assert(#e, __FILE__, __LINE__),0)))
-#endif /* NDEBUG */
+#ifndef __ASSERT
+#define __ASSERT
+
+void assert(int);
+
+#endif /* __ASSERT */
+
+#undef assert
+#ifdef NDEBUG
+#define assert(ignore) ((void)0)
+#else
+extern void __assert(char *, char *, unsigned);
+#define assert(e) ((void)((e)||(__assert(#e, __FILE__, __LINE__),0)))
+#endif /* NDEBUG */
diff --git a/lcc/include/sparc/solaris/ctype.h b/lcc/include/sparc/solaris/ctype.h
index 368c736..b25b2a4 100755
--- a/lcc/include/sparc/solaris/ctype.h
+++ b/lcc/include/sparc/solaris/ctype.h
@@ -1,46 +1,46 @@
-#ifndef __CTYPE
-#define __CTYPE
-
-extern int isalnum(int);
-extern int isalpha(int);
-extern int iscntrl(int);
-extern int isdigit(int);
-extern int isgraph(int);
-extern int islower(int);
-extern int isprint(int);
-extern int ispunct(int);
-extern int isspace(int);
-extern int isupper(int);
-extern int isxdigit(int);
-extern int tolower(int);
-extern int toupper(int);
-
-#define __U 01
-#define __L 02
-#define __N 04
-#define __S 010
-#define __P 020
-#define __C 040
-#define _U 01
-#define _L 02
-#define _N 04
-#define _S 010
-#define _P 020
-#define _C 040
-#define _B 0100
-#define _X 0200
-
-extern unsigned char __ctype[];
-#define isalpha(c) ((__ctype + 1)[c] & (_U | _L))
-#define isupper(c) ((__ctype + 1)[c] & _U)
-#define islower(c) ((__ctype + 1)[c] & _L)
-#define isdigit(c) ((__ctype + 1)[c] & _N)
-#define isxdigit(c) ((__ctype + 1)[c] & _X)
-#define isalnum(c) ((__ctype + 1)[c] & (_U | _L | _N))
-#define isspace(c) ((__ctype + 1)[c] & _S)
-#define ispunct(c) ((__ctype + 1)[c] & _P)
-#define isprint(c) ((__ctype + 1)[c] & (_P | _U | _L | _N | _B))
-#define isgraph(c) ((__ctype + 1)[c] & (_P | _U | _L | _N))
-#define iscntrl(c) ((__ctype + 1)[c] & _C)
-
-#endif /* __CTYPE */
+#ifndef __CTYPE
+#define __CTYPE
+
+extern int isalnum(int);
+extern int isalpha(int);
+extern int iscntrl(int);
+extern int isdigit(int);
+extern int isgraph(int);
+extern int islower(int);
+extern int isprint(int);
+extern int ispunct(int);
+extern int isspace(int);
+extern int isupper(int);
+extern int isxdigit(int);
+extern int tolower(int);
+extern int toupper(int);
+
+#define __U 01
+#define __L 02
+#define __N 04
+#define __S 010
+#define __P 020
+#define __C 040
+#define _U 01
+#define _L 02
+#define _N 04
+#define _S 010
+#define _P 020
+#define _C 040
+#define _B 0100
+#define _X 0200
+
+extern unsigned char __ctype[];
+#define isalpha(c) ((__ctype + 1)[c] & (_U | _L))
+#define isupper(c) ((__ctype + 1)[c] & _U)
+#define islower(c) ((__ctype + 1)[c] & _L)
+#define isdigit(c) ((__ctype + 1)[c] & _N)
+#define isxdigit(c) ((__ctype + 1)[c] & _X)
+#define isalnum(c) ((__ctype + 1)[c] & (_U | _L | _N))
+#define isspace(c) ((__ctype + 1)[c] & _S)
+#define ispunct(c) ((__ctype + 1)[c] & _P)
+#define isprint(c) ((__ctype + 1)[c] & (_P | _U | _L | _N | _B))
+#define isgraph(c) ((__ctype + 1)[c] & (_P | _U | _L | _N))
+#define iscntrl(c) ((__ctype + 1)[c] & _C)
+
+#endif /* __CTYPE */
diff --git a/lcc/include/sparc/solaris/errno.h b/lcc/include/sparc/solaris/errno.h
index 5ab3f0f..c914e05 100755
--- a/lcc/include/sparc/solaris/errno.h
+++ b/lcc/include/sparc/solaris/errno.h
@@ -1,8 +1,8 @@
-#ifndef __ERRNO
-#define __ERRNO
-
-#define EDOM 33
-#define ERANGE 34
-extern int errno;
-
-#endif /* __ERRNO */
+#ifndef __ERRNO
+#define __ERRNO
+
+#define EDOM 33
+#define ERANGE 34
+extern int errno;
+
+#endif /* __ERRNO */
diff --git a/lcc/include/sparc/solaris/float.h b/lcc/include/sparc/solaris/float.h
index 8a8ddb1..a3e1eb5 100755
--- a/lcc/include/sparc/solaris/float.h
+++ b/lcc/include/sparc/solaris/float.h
@@ -1,37 +1,37 @@
-#ifndef __FLOAT
-#define __FLOAT
-
-#define FLT_ROUNDS 1
-#define FLT_RADIX 2
-
-#define FLT_DIG 6
-#define FLT_EPSILON 1.19209289550781250000e-07
-#define FLT_MANT_DIG 24
-#define FLT_MAX 3.40282346638528860000e+38
-#define FLT_MAX_10_EXP 38
-#define FLT_MAX_EXP 128
-#define FLT_MIN 1.17549435082228750000e-38
-#define FLT_MIN_10_EXP -37
-#define FLT_MIN_EXP -125
-
-#define DBL_DIG 15
-#define DBL_EPSILON 2.22044604925031310000e-16
-#define DBL_MANT_DIG 53
-#define DBL_MAX 1.79769313486231570000e+308
-#define DBL_MAX_10_EXP 308
-#define DBL_MAX_EXP 1024
-#define DBL_MIN 2.22507385850720140000e-308
-#define DBL_MIN_10_EXP -307
-#define DBL_MIN_EXP -1021
-
-#define LDBL_MANT_DIG DBL_MANT_DIG
-#define LDBL_EPSILON DBL_EPSILON
-#define LDBL_DIG DBL_DIG
-#define LDBL_MIN_EXP DBL_MIN_EXP
-#define LDBL_MIN DBL_MIN
-#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
-#define LDBL_MAX_EXP DBL_MAX_EXP
-#define LDBL_MAX DBL_MAX
-#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
-
-#endif /* __FLOAT */
+#ifndef __FLOAT
+#define __FLOAT
+
+#define FLT_ROUNDS 1
+#define FLT_RADIX 2
+
+#define FLT_DIG 6
+#define FLT_EPSILON 1.19209289550781250000e-07
+#define FLT_MANT_DIG 24
+#define FLT_MAX 3.40282346638528860000e+38
+#define FLT_MAX_10_EXP 38
+#define FLT_MAX_EXP 128
+#define FLT_MIN 1.17549435082228750000e-38
+#define FLT_MIN_10_EXP -37
+#define FLT_MIN_EXP -125
+
+#define DBL_DIG 15
+#define DBL_EPSILON 2.22044604925031310000e-16
+#define DBL_MANT_DIG 53
+#define DBL_MAX 1.79769313486231570000e+308
+#define DBL_MAX_10_EXP 308
+#define DBL_MAX_EXP 1024
+#define DBL_MIN 2.22507385850720140000e-308
+#define DBL_MIN_10_EXP -307
+#define DBL_MIN_EXP -1021
+
+#define LDBL_MANT_DIG DBL_MANT_DIG
+#define LDBL_EPSILON DBL_EPSILON
+#define LDBL_DIG DBL_DIG
+#define LDBL_MIN_EXP DBL_MIN_EXP
+#define LDBL_MIN DBL_MIN
+#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
+#define LDBL_MAX_EXP DBL_MAX_EXP
+#define LDBL_MAX DBL_MAX
+#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
+
+#endif /* __FLOAT */
diff --git a/lcc/include/sparc/solaris/limits.h b/lcc/include/sparc/solaris/limits.h
index 98251f8..30944a5 100755
--- a/lcc/include/sparc/solaris/limits.h
+++ b/lcc/include/sparc/solaris/limits.h
@@ -1,24 +1,24 @@
-#ifndef __LIMITS
-#define __LIMITS
-
-#define CHAR_BIT 8
-#define MB_LEN_MAX 1
-
-#define UCHAR_MAX 0xff
-#define USHRT_MAX 0xffff
-#define UINT_MAX (~0U)
-#define ULONG_MAX (~0UL)
-
-#define CHAR_MAX SCHAR_MAX
-#define SCHAR_MAX 0x7f
-#define SHRT_MAX 0x7fff
-#define INT_MAX 0x7fffffff
-#define LONG_MAX 0x7fffffffL
-
-#define CHAR_MIN SCHAR_MIN
-#define SCHAR_MIN (-SCHAR_MAX-1)
-#define SHRT_MIN (-SHRT_MAX-1)
-#define INT_MIN (-INT_MAX-1)
-#define LONG_MIN (-LONG_MAX-1)
-
-#endif /* __LIMITS */
+#ifndef __LIMITS
+#define __LIMITS
+
+#define CHAR_BIT 8
+#define MB_LEN_MAX 1
+
+#define UCHAR_MAX 0xff
+#define USHRT_MAX 0xffff
+#define UINT_MAX (~0U)
+#define ULONG_MAX (~0UL)
+
+#define CHAR_MAX SCHAR_MAX
+#define SCHAR_MAX 0x7f
+#define SHRT_MAX 0x7fff
+#define INT_MAX 0x7fffffff
+#define LONG_MAX 0x7fffffffL
+
+#define CHAR_MIN SCHAR_MIN
+#define SCHAR_MIN (-SCHAR_MAX-1)
+#define SHRT_MIN (-SHRT_MAX-1)
+#define INT_MIN (-INT_MAX-1)
+#define LONG_MIN (-LONG_MAX-1)
+
+#endif /* __LIMITS */
diff --git a/lcc/include/sparc/solaris/locale.h b/lcc/include/sparc/solaris/locale.h
index a861b47..acce293 100755
--- a/lcc/include/sparc/solaris/locale.h
+++ b/lcc/include/sparc/solaris/locale.h
@@ -1,36 +1,36 @@
-#ifndef __LOCALE
-#define __LOCALE
-
-#define LC_ALL 0
-#define LC_COLLATE 1
-#define LC_CTYPE 2
-#define LC_MONETARY 3
-#define LC_NUMERIC 4
-#define LC_TIME 5
-#define NULL 0
-
-struct lconv {
- char *decimal_point;
- char *thousands_sep;
- char *grouping;
- char *int_curr_symbol;
- char *currency_symbol;
- char *mon_decimal_point;
- char *mon_thousands_sep;
- char *mon_grouping;
- char *positive_sign;
- char *negative_sign;
- char int_frac_digits;
- char frac_digits;
- char p_cs_precedes;
- char p_sep_by_space;
- char n_cs_precedes;
- char n_sep_by_space;
- char p_sign_posn;
- char n_sign_posn;
-};
-
-char *setlocale(int, const char *);
-struct lconv *localeconv(void);
-
-#endif /* __LOCALE */
+#ifndef __LOCALE
+#define __LOCALE
+
+#define LC_ALL 0
+#define LC_COLLATE 1
+#define LC_CTYPE 2
+#define LC_MONETARY 3
+#define LC_NUMERIC 4
+#define LC_TIME 5
+#define NULL 0
+
+struct lconv {
+ char *decimal_point;
+ char *thousands_sep;
+ char *grouping;
+ char *int_curr_symbol;
+ char *currency_symbol;
+ char *mon_decimal_point;
+ char *mon_thousands_sep;
+ char *mon_grouping;
+ char *positive_sign;
+ char *negative_sign;
+ char int_frac_digits;
+ char frac_digits;
+ char p_cs_precedes;
+ char p_sep_by_space;
+ char n_cs_precedes;
+ char n_sep_by_space;
+ char p_sign_posn;
+ char n_sign_posn;
+};
+
+char *setlocale(int, const char *);
+struct lconv *localeconv(void);
+
+#endif /* __LOCALE */
diff --git a/lcc/include/sparc/solaris/math.h b/lcc/include/sparc/solaris/math.h
index 13740db..93b8bdc 100755
--- a/lcc/include/sparc/solaris/math.h
+++ b/lcc/include/sparc/solaris/math.h
@@ -1,30 +1,30 @@
-#ifndef __MATH
-#define __MATH
-
-extern double infinity(void);
-#define HUGE_VAL (infinity())
-
-extern double acos(double);
-extern double asin(double);
-extern double atan(double);
-extern double atan2(double, double);
-extern double cos(double);
-extern double sin(double);
-extern double tan(double);
-extern double cosh(double);
-extern double sinh(double);
-extern double tanh(double);
-extern double exp(double);
-extern double frexp(double, int *);
-extern double ldexp(double, int);
-extern double log(double);
-extern double log10(double);
-extern double modf(double, double *);
-extern double pow(double, double);
-extern double sqrt(double);
-extern double ceil(double);
-extern double fabs(double);
-extern double floor(double);
-extern double fmod(double, double);
-
-#endif /* __MATH */
+#ifndef __MATH
+#define __MATH
+
+extern double infinity(void);
+#define HUGE_VAL (infinity())
+
+extern double acos(double);
+extern double asin(double);
+extern double atan(double);
+extern double atan2(double, double);
+extern double cos(double);
+extern double sin(double);
+extern double tan(double);
+extern double cosh(double);
+extern double sinh(double);
+extern double tanh(double);
+extern double exp(double);
+extern double frexp(double, int *);
+extern double ldexp(double, int);
+extern double log(double);
+extern double log10(double);
+extern double modf(double, double *);
+extern double pow(double, double);
+extern double sqrt(double);
+extern double ceil(double);
+extern double fabs(double);
+extern double floor(double);
+extern double fmod(double, double);
+
+#endif /* __MATH */
diff --git a/lcc/include/sparc/solaris/setjmp.h b/lcc/include/sparc/solaris/setjmp.h
index b6a9ca3..c5a063b 100755
--- a/lcc/include/sparc/solaris/setjmp.h
+++ b/lcc/include/sparc/solaris/setjmp.h
@@ -1,10 +1,10 @@
-#ifndef __SETJMP
-#define __SETJMP
-
-
-
-typedef int jmp_buf[12];
-int setjmp(jmp_buf);
-void longjmp(jmp_buf, int);
-
-#endif /* __SETJMP */
+#ifndef __SETJMP
+#define __SETJMP
+
+
+
+typedef int jmp_buf[12];
+int setjmp(jmp_buf);
+void longjmp(jmp_buf, int);
+
+#endif /* __SETJMP */
diff --git a/lcc/include/sparc/solaris/signal.h b/lcc/include/sparc/solaris/signal.h
index 22f98bc..c208a6b 100755
--- a/lcc/include/sparc/solaris/signal.h
+++ b/lcc/include/sparc/solaris/signal.h
@@ -1,20 +1,20 @@
-#ifndef __SIGNAL
-#define __SIGNAL
-
-typedef int sig_atomic_t;
-
-#define SIG_DFL ((void (*)(int))0)
-#define SIG_ERR ((void (*)(int))-1)
-#define SIG_IGN ((void (*)(int))1)
-
-#define SIGABRT 6
-#define SIGFPE 8
-#define SIGILL 4
-#define SIGINT 2
-#define SIGSEGV 11
-#define SIGTERM 15
-
-void (*signal(int, void (*)(int)))(int);
-int raise(int);
-
-#endif /* __SIGNAL */
+#ifndef __SIGNAL
+#define __SIGNAL
+
+typedef int sig_atomic_t;
+
+#define SIG_DFL ((void (*)(int))0)
+#define SIG_ERR ((void (*)(int))-1)
+#define SIG_IGN ((void (*)(int))1)
+
+#define SIGABRT 6
+#define SIGFPE 8
+#define SIGILL 4
+#define SIGINT 2
+#define SIGSEGV 11
+#define SIGTERM 15
+
+void (*signal(int, void (*)(int)))(int);
+int raise(int);
+
+#endif /* __SIGNAL */
diff --git a/lcc/include/sparc/solaris/stdarg.h b/lcc/include/sparc/solaris/stdarg.h
index cbdf869..5a99f45 100755
--- a/lcc/include/sparc/solaris/stdarg.h
+++ b/lcc/include/sparc/solaris/stdarg.h
@@ -1,22 +1,22 @@
-#ifndef __STDARG
-#define __STDARG
-
-#if !defined(_VA_LIST)
-#define _VA_LIST
-typedef char *__va_list;
-#endif
-typedef __va_list va_list;
-
-#define va_start(list, start) ((void)((list) = (sizeof(start)<4 ? \
- (char *)((int *)&(start)+1) : (char *)(&(start)+1))))
-#define __va_arg(list, mode, n) \
- (*(mode *)(&(list += ((sizeof(mode)+n)&~n))[-(int)((sizeof(mode)+n)&~n)]))
-#define _bigendian_va_arg(list, mode, n) (\
- sizeof(mode)==1 ? *(mode *)(&(list += 4)[-1]) : \
- sizeof(mode)==2 ? *(mode *)(&(list += 4)[-2]) : __va_arg(list, mode, n))
-#define _littleendian_va_arg(list, mode, n) __va_arg(list, mode, n)
-#define va_end(list) ((void)0)
-#define va_arg(list, mode) (sizeof(mode)>8 ? \
- **(mode **)(&(list += 4)[-4]) : \
- _bigendian_va_arg(list, mode, 3U))
-#endif
+#ifndef __STDARG
+#define __STDARG
+
+#if !defined(_VA_LIST)
+#define _VA_LIST
+typedef char *__va_list;
+#endif
+typedef __va_list va_list;
+
+#define va_start(list, start) ((void)((list) = (sizeof(start)<4 ? \
+ (char *)((int *)&(start)+1) : (char *)(&(start)+1))))
+#define __va_arg(list, mode, n) \
+ (*(mode *)(&(list += ((sizeof(mode)+n)&~n))[-(int)((sizeof(mode)+n)&~n)]))
+#define _bigendian_va_arg(list, mode, n) (\
+ sizeof(mode)==1 ? *(mode *)(&(list += 4)[-1]) : \
+ sizeof(mode)==2 ? *(mode *)(&(list += 4)[-2]) : __va_arg(list, mode, n))
+#define _littleendian_va_arg(list, mode, n) __va_arg(list, mode, n)
+#define va_end(list) ((void)0)
+#define va_arg(list, mode) (sizeof(mode)>8 ? \
+ **(mode **)(&(list += 4)[-4]) : \
+ _bigendian_va_arg(list, mode, 3U))
+#endif
diff --git a/lcc/include/sparc/solaris/stddef.h b/lcc/include/sparc/solaris/stddef.h
index 459bfd6..4e87e1c 100755
--- a/lcc/include/sparc/solaris/stddef.h
+++ b/lcc/include/sparc/solaris/stddef.h
@@ -1,22 +1,22 @@
-#ifndef __STDDEF
-#define __STDDEF
-
-
-#define NULL 0
-#define offsetof(ty,mem) ((size_t)((char*)&((ty*)0)->mem - (char*)0))
-
-typedef long ptrdiff_t;
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
-#define _WCHAR_T
-#define _WCHAR_T_
-typedef unsigned short wchar_t;
-#endif
-
-#endif /* __STDDEF */
+#ifndef __STDDEF
+#define __STDDEF
+
+
+#define NULL 0
+#define offsetof(ty,mem) ((size_t)((char*)&((ty*)0)->mem - (char*)0))
+
+typedef long ptrdiff_t;
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
+#define _WCHAR_T
+#define _WCHAR_T_
+typedef unsigned short wchar_t;
+#endif
+
+#endif /* __STDDEF */
diff --git a/lcc/include/sparc/solaris/stdio.h b/lcc/include/sparc/solaris/stdio.h
index 4e4a629..b0e3232 100755
--- a/lcc/include/sparc/solaris/stdio.h
+++ b/lcc/include/sparc/solaris/stdio.h
@@ -1,104 +1,104 @@
-#ifndef __STDIO
-#define __STDIO
-
-#define _IOFBF 0
-#define _IOLBF 0100
-#define _IONBF 04
-#define BUFSIZ 1024
-#define EOF (-1)
-
-typedef struct {
- int _cnt;
- unsigned char *_ptr;
- unsigned char *_base;
- unsigned char _flag;
- unsigned char _file;
-} FILE;
-extern FILE __iob[];
-#define FILENAME_MAX 1024
-#define FOPEN_MAX 20
-
-#if !defined(_FPOS_T) && !defined(_FPOS_T_)
-#define _FPOS_T
-#define _FPOS_T_
-typedef long fpos_t;
-#endif
-
-#define L_tmpnam 25
-#define NULL 0
-#define SEEK_CUR 1
-#define SEEK_END 2
-#define SEEK_SET 0
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-#if !defined(_VA_LIST)
-#define _VA_LIST
-typedef char *__va_list;
-#endif
-
-#define stderr (&__iob[2])
-#define stdin (&__iob[0])
-#define stdout (&__iob[1])
-#define TMP_MAX 17576
-
-extern int remove(const char *);
-extern int rename(const char *, const char *);
-extern FILE *tmpfile(void);
-extern char *tmpnam(char *);
-extern int fclose(FILE *);
-extern int fflush(FILE *);
-extern FILE *fopen(const char *, const char *);
-extern FILE *freopen(const char *, const char *, FILE *);
-extern void setbuf(FILE *, char *);
-extern int setvbuf(FILE *, char *, int, size_t);
-extern int fprintf(FILE *, const char *, ...);
-extern int fscanf(FILE *, const char *, ...);
-extern int printf(const char *, ...);
-extern int scanf(const char *, ...);
-extern int sprintf(char *, const char *, ...);
-extern int sscanf(const char *, const char *, ...);
-extern int vfprintf(FILE *, const char *, __va_list);
-extern int vprintf(const char *, __va_list);
-extern int vsprintf(char *, const char *, __va_list);
-extern int fgetc(FILE *);
-extern char *fgets(char *, int, FILE *);
-extern int fputc(int, FILE *);
-extern int fputs(const char *, FILE *);
-extern int getc(FILE *);
-extern int getchar(void);
-extern char *gets(char *);
-extern int putc(int, FILE *);
-extern int putchar(int);
-extern int puts(const char *);
-extern int ungetc(int, FILE *);
-extern size_t fread(void *, size_t, size_t, FILE *);
-extern size_t fwrite(const void *, size_t, size_t, FILE *);
-extern int fgetpos(FILE *, fpos_t *);
-extern int fseek(FILE *, long int, int);
-extern int fsetpos(FILE *, const fpos_t *);
-extern long int ftell(FILE *);
-extern void rewind(FILE *);
-extern void clearerr(FILE *);
-extern int feof(FILE *);
-extern int ferror(FILE *);
-extern void perror(const char *);
-
-#define _IOEOF 020
-#define _IOERR 040
-
-#define getc(p) (--(p)->_cnt < 0 ? __filbuf(p) : (int)*(p)->_ptr++)
-#define putc(x, p) (--(p)->_cnt < 0 ? __flsbuf((unsigned char) (x), (p)) \
- : (int)(*(p)->_ptr++ = (x)))
-extern int __filbuf(FILE *), __flsbuf(unsigned, FILE *);
-#define feof(p) ((p)->_flag&_IOEOF)
-#define ferror(p) ((p)->_flag&_IOERR)
-#define clearerr(p) ((p)->_flag &= ~(_IOERR|_IOEOF))
-#define getchar() getc(stdin)
-#define putchar(x) putc((x),stdout)
-
-#endif /* __STDIO */
+#ifndef __STDIO
+#define __STDIO
+
+#define _IOFBF 0
+#define _IOLBF 0100
+#define _IONBF 04
+#define BUFSIZ 1024
+#define EOF (-1)
+
+typedef struct {
+ int _cnt;
+ unsigned char *_ptr;
+ unsigned char *_base;
+ unsigned char _flag;
+ unsigned char _file;
+} FILE;
+extern FILE __iob[];
+#define FILENAME_MAX 1024
+#define FOPEN_MAX 20
+
+#if !defined(_FPOS_T) && !defined(_FPOS_T_)
+#define _FPOS_T
+#define _FPOS_T_
+typedef long fpos_t;
+#endif
+
+#define L_tmpnam 25
+#define NULL 0
+#define SEEK_CUR 1
+#define SEEK_END 2
+#define SEEK_SET 0
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+#if !defined(_VA_LIST)
+#define _VA_LIST
+typedef char *__va_list;
+#endif
+
+#define stderr (&__iob[2])
+#define stdin (&__iob[0])
+#define stdout (&__iob[1])
+#define TMP_MAX 17576
+
+extern int remove(const char *);
+extern int rename(const char *, const char *);
+extern FILE *tmpfile(void);
+extern char *tmpnam(char *);
+extern int fclose(FILE *);
+extern int fflush(FILE *);
+extern FILE *fopen(const char *, const char *);
+extern FILE *freopen(const char *, const char *, FILE *);
+extern void setbuf(FILE *, char *);
+extern int setvbuf(FILE *, char *, int, size_t);
+extern int fprintf(FILE *, const char *, ...);
+extern int fscanf(FILE *, const char *, ...);
+extern int printf(const char *, ...);
+extern int scanf(const char *, ...);
+extern int sprintf(char *, const char *, ...);
+extern int sscanf(const char *, const char *, ...);
+extern int vfprintf(FILE *, const char *, __va_list);
+extern int vprintf(const char *, __va_list);
+extern int vsprintf(char *, const char *, __va_list);
+extern int fgetc(FILE *);
+extern char *fgets(char *, int, FILE *);
+extern int fputc(int, FILE *);
+extern int fputs(const char *, FILE *);
+extern int getc(FILE *);
+extern int getchar(void);
+extern char *gets(char *);
+extern int putc(int, FILE *);
+extern int putchar(int);
+extern int puts(const char *);
+extern int ungetc(int, FILE *);
+extern size_t fread(void *, size_t, size_t, FILE *);
+extern size_t fwrite(const void *, size_t, size_t, FILE *);
+extern int fgetpos(FILE *, fpos_t *);
+extern int fseek(FILE *, long int, int);
+extern int fsetpos(FILE *, const fpos_t *);
+extern long int ftell(FILE *);
+extern void rewind(FILE *);
+extern void clearerr(FILE *);
+extern int feof(FILE *);
+extern int ferror(FILE *);
+extern void perror(const char *);
+
+#define _IOEOF 020
+#define _IOERR 040
+
+#define getc(p) (--(p)->_cnt < 0 ? __filbuf(p) : (int)*(p)->_ptr++)
+#define putc(x, p) (--(p)->_cnt < 0 ? __flsbuf((unsigned char) (x), (p)) \
+ : (int)(*(p)->_ptr++ = (x)))
+extern int __filbuf(FILE *), __flsbuf(unsigned, FILE *);
+#define feof(p) ((p)->_flag&_IOEOF)
+#define ferror(p) ((p)->_flag&_IOERR)
+#define clearerr(p) ((p)->_flag &= ~(_IOERR|_IOEOF))
+#define getchar() getc(stdin)
+#define putchar(x) putc((x),stdout)
+
+#endif /* __STDIO */
diff --git a/lcc/include/sparc/solaris/stdlib.h b/lcc/include/sparc/solaris/stdlib.h
index e224f65..ac1204c 100755
--- a/lcc/include/sparc/solaris/stdlib.h
+++ b/lcc/include/sparc/solaris/stdlib.h
@@ -1,54 +1,54 @@
-#ifndef __STDLIB
-#define __STDLIB
-
-#define EXIT_FAILURE 1
-#define EXIT_SUCCESS 0
-#define MB_CUR_MAX 1
-#define NULL 0
-#define RAND_MAX 32767
-
-typedef struct { int quot, rem; } div_t;
-typedef struct { long quot, rem; } ldiv_t;
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
-#define _WCHAR_T
-#define _WCHAR_T_
-typedef unsigned char wchar_t;
-#endif
-
-extern double atof(const char *);
-extern int atoi(const char *);
-extern long int atol(const char *);
-extern double strtod(const char *, char **);
-extern long int strtol(const char *, char **, int);
-extern unsigned long int strtoul(const char *, char **, int);
-extern int rand(void);
-extern void srand(unsigned int);
-extern void *calloc(size_t, size_t);
-extern void free(void *);
-extern void *malloc(size_t);
-extern void *realloc(void *, size_t);
-extern void abort(void);
-extern int atexit(void (*)(void));
-extern void exit(int);
-extern char *getenv(const char *);
-extern int system(const char *);
-extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
-extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
-extern int abs(int);
-extern div_t div(int, int);
-extern long int labs(long int);
-extern ldiv_t ldiv(long int, long int);
-extern int mblen(const char *, size_t);
-extern int mbtowc(wchar_t *, const char *, size_t);
-extern int wctomb(char *, wchar_t);
-extern size_t mbstowcs(wchar_t *, const char *, size_t);
-extern size_t wcstombs(char *, const wchar_t *, size_t);
-
-#endif /* __STDLIB */
+#ifndef __STDLIB
+#define __STDLIB
+
+#define EXIT_FAILURE 1
+#define EXIT_SUCCESS 0
+#define MB_CUR_MAX 1
+#define NULL 0
+#define RAND_MAX 32767
+
+typedef struct { int quot, rem; } div_t;
+typedef struct { long quot, rem; } ldiv_t;
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+#if !defined(_WCHAR_T) && !defined(_WCHAR_T_)
+#define _WCHAR_T
+#define _WCHAR_T_
+typedef unsigned char wchar_t;
+#endif
+
+extern double atof(const char *);
+extern int atoi(const char *);
+extern long int atol(const char *);
+extern double strtod(const char *, char **);
+extern long int strtol(const char *, char **, int);
+extern unsigned long int strtoul(const char *, char **, int);
+extern int rand(void);
+extern void srand(unsigned int);
+extern void *calloc(size_t, size_t);
+extern void free(void *);
+extern void *malloc(size_t);
+extern void *realloc(void *, size_t);
+extern void abort(void);
+extern int atexit(void (*)(void));
+extern void exit(int);
+extern char *getenv(const char *);
+extern int system(const char *);
+extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
+extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
+extern int abs(int);
+extern div_t div(int, int);
+extern long int labs(long int);
+extern ldiv_t ldiv(long int, long int);
+extern int mblen(const char *, size_t);
+extern int mbtowc(wchar_t *, const char *, size_t);
+extern int wctomb(char *, wchar_t);
+extern size_t mbstowcs(wchar_t *, const char *, size_t);
+extern size_t wcstombs(char *, const wchar_t *, size_t);
+
+#endif /* __STDLIB */
diff --git a/lcc/include/sparc/solaris/string.h b/lcc/include/sparc/solaris/string.h
index f19b1e4..8432820 100755
--- a/lcc/include/sparc/solaris/string.h
+++ b/lcc/include/sparc/solaris/string.h
@@ -1,35 +1,35 @@
-#ifndef __STRING
-#define __STRING
-
-#define NULL 0
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-void *memcpy(void *, const void *, size_t);
-void *memmove(void *, const void *, size_t);
-char *strcpy(char *, const char *);
-char *strncpy(char *, const char *, size_t);
-char *strcat(char *, const char *);
-char *strncat(char *, const char *, size_t);
-int memcmp(const void *, const void *, size_t);
-int strcmp(const char *, const char *);
-int strcoll(const char *, const char *);
-int strncmp(const char *, const char *, size_t);
-size_t strxfrm(char *, const char *, size_t);
-void *memchr(const void *, int, size_t);
-char *strchr(const char *, int);
-size_t strcspn(const char *, const char *);
-char *strpbrk(const char *, const char *);
-char *strrchr(const char *, int);
-size_t strspn(const char *, const char *);
-char *strstr(const char *, const char *);
-char *strtok(char *, const char *);
-void *memset(void *, int, size_t);
-char *strerror(int);
-size_t strlen(const char *);
-
-#endif /* __STRING */
+#ifndef __STRING
+#define __STRING
+
+#define NULL 0
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+void *memcpy(void *, const void *, size_t);
+void *memmove(void *, const void *, size_t);
+char *strcpy(char *, const char *);
+char *strncpy(char *, const char *, size_t);
+char *strcat(char *, const char *);
+char *strncat(char *, const char *, size_t);
+int memcmp(const void *, const void *, size_t);
+int strcmp(const char *, const char *);
+int strcoll(const char *, const char *);
+int strncmp(const char *, const char *, size_t);
+size_t strxfrm(char *, const char *, size_t);
+void *memchr(const void *, int, size_t);
+char *strchr(const char *, int);
+size_t strcspn(const char *, const char *);
+char *strpbrk(const char *, const char *);
+char *strrchr(const char *, int);
+size_t strspn(const char *, const char *);
+char *strstr(const char *, const char *);
+char *strtok(char *, const char *);
+void *memset(void *, int, size_t);
+char *strerror(int);
+size_t strlen(const char *);
+
+#endif /* __STRING */
diff --git a/lcc/include/sparc/solaris/time.h b/lcc/include/sparc/solaris/time.h
index 55a4922..07d8b41 100755
--- a/lcc/include/sparc/solaris/time.h
+++ b/lcc/include/sparc/solaris/time.h
@@ -1,48 +1,48 @@
-#ifndef __TIME
-#define __TIME
-
-#define CLOCKS_PER_SEC 1000000
-#ifndef NULL
-#define NULL 0
-#endif
-
-#if !defined(_CLOCK_T) && !defined(_CLOCK_T_)
-#define _CLOCK_T
-#define _CLOCK_T_
-typedef long clock_t;
-#endif
-
-#if !defined(_TIME_T) && !defined(_TIME_T_)
-#define _TIME_T
-#define _TIME_T_
-typedef long time_t;
-#endif
-
-#if !defined(_SIZE_T) && !defined(_SIZE_T_)
-#define _SIZE_T
-#define _SIZE_T_
-typedef unsigned long size_t;
-#endif
-
-struct tm {
- int tm_sec;
- int tm_min;
- int tm_hour;
- int tm_mday;
- int tm_mon;
- int tm_year;
- int tm_wday;
- int tm_yday;
- int tm_isdst;
-};
-extern clock_t clock(void);
-extern double difftime(time_t, time_t);
-extern time_t mktime(struct tm *);
-extern time_t time(time_t *);
-extern char *asctime(const struct tm *);
-extern char *ctime(const time_t *);
-extern struct tm *gmtime(const time_t *);
-extern struct tm *localtime(const time_t *);
-extern size_t strftime(char *, size_t, const char *, const struct tm *);
-
-#endif /* __TIME */
+#ifndef __TIME
+#define __TIME
+
+#define CLOCKS_PER_SEC 1000000
+#ifndef NULL
+#define NULL 0
+#endif
+
+#if !defined(_CLOCK_T) && !defined(_CLOCK_T_)
+#define _CLOCK_T
+#define _CLOCK_T_
+typedef long clock_t;
+#endif
+
+#if !defined(_TIME_T) && !defined(_TIME_T_)
+#define _TIME_T
+#define _TIME_T_
+typedef long time_t;
+#endif
+
+#if !defined(_SIZE_T) && !defined(_SIZE_T_)
+#define _SIZE_T
+#define _SIZE_T_
+typedef unsigned long size_t;
+#endif
+
+struct tm {
+ int tm_sec;
+ int tm_min;
+ int tm_hour;
+ int tm_mday;
+ int tm_mon;
+ int tm_year;
+ int tm_wday;
+ int tm_yday;
+ int tm_isdst;
+};
+extern clock_t clock(void);
+extern double difftime(time_t, time_t);
+extern time_t mktime(struct tm *);
+extern time_t time(time_t *);
+extern char *asctime(const struct tm *);
+extern char *ctime(const time_t *);
+extern struct tm *gmtime(const time_t *);
+extern struct tm *localtime(const time_t *);
+extern size_t strftime(char *, size_t, const char *, const struct tm *);
+
+#endif /* __TIME */
diff --git a/lcc/include/x86/linux/assert.h b/lcc/include/x86/linux/assert.h
index 5b4776c..04b0e3a 100755
--- a/lcc/include/x86/linux/assert.h
+++ b/lcc/include/x86/linux/assert.h
@@ -1,14 +1,14 @@
-#ifndef __ASSERT
-#define __ASSERT
-
-void assert(int);
-
-#endif /* __ASSERT */
-
-#undef assert
-#ifdef NDEBUG
-#define assert(ignore) ((void)0)
-#else
-extern int _assert(char *, char *, unsigned);
-#define assert(e) ((void)((e)||_assert(#e, __FILE__, __LINE__)))
-#endif /* NDEBUG */
+#ifndef __ASSERT
+#define __ASSERT
+
+void assert(int);
+
+#endif /* __ASSERT */
+
+#undef assert
+#ifdef NDEBUG
+#define assert(ignore) ((void)0)
+#else
+extern int _assert(char *, char *, unsigned);
+#define assert(e) ((void)((e)||_assert(#e, __FILE__, __LINE__)))
+#endif /* NDEBUG */
diff --git a/lcc/include/x86/linux/float.h b/lcc/include/x86/linux/float.h
index 1c0197f..fde462b 100755
--- a/lcc/include/x86/linux/float.h
+++ b/lcc/include/x86/linux/float.h
@@ -1,37 +1,37 @@
-#ifndef __FLOAT
-#define __FLOAT
-
-#define FLT_ROUNDS (__flt_rounds())
-#define FLT_RADIX 2
-
-#define FLT_DIG 6
-#define FLT_EPSILON 1.19209289550781250000e-07
-#define FLT_MANT_DIG 24
-#define FLT_MAX 3.40282346638528860000e+38
-#define FLT_MAX_10_EXP 38
-#define FLT_MAX_EXP 128
-#define FLT_MIN 1.17549435082228750000e-38
-#define FLT_MIN_10_EXP -37
-#define FLT_MIN_EXP -125
-
-#define DBL_DIG 15
-#define DBL_EPSILON 2.22044604925031310000e-16
-#define DBL_MANT_DIG 53
-#define DBL_MAX 1.79769313486231570000e+308
-#define DBL_MAX_10_EXP 308
-#define DBL_MAX_EXP 1024
-#define DBL_MIN 2.22507385850720140000e-308
-#define DBL_MIN_10_EXP -307
-#define DBL_MIN_EXP -1021
-
-#define LDBL_MANT_DIG DBL_MANT_DIG
-#define LDBL_EPSILON DBL_EPSILON
-#define LDBL_DIG DBL_DIG
-#define LDBL_MIN_EXP DBL_MIN_EXP
-#define LDBL_MIN DBL_MIN
-#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
-#define LDBL_MAX_EXP DBL_MAX_EXP
-#define LDBL_MAX DBL_MAX
-#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
-
-#endif /* __FLOAT */
+#ifndef __FLOAT
+#define __FLOAT
+
+#define FLT_ROUNDS (__flt_rounds())
+#define FLT_RADIX 2
+
+#define FLT_DIG 6
+#define FLT_EPSILON 1.19209289550781250000e-07
+#define FLT_MANT_DIG 24
+#define FLT_MAX 3.40282346638528860000e+38
+#define FLT_MAX_10_EXP 38
+#define FLT_MAX_EXP 128
+#define FLT_MIN 1.17549435082228750000e-38
+#define FLT_MIN_10_EXP -37
+#define FLT_MIN_EXP -125
+
+#define DBL_DIG 15
+#define DBL_EPSILON 2.22044604925031310000e-16
+#define DBL_MANT_DIG 53
+#define DBL_MAX 1.79769313486231570000e+308
+#define DBL_MAX_10_EXP 308
+#define DBL_MAX_EXP 1024
+#define DBL_MIN 2.22507385850720140000e-308
+#define DBL_MIN_10_EXP -307
+#define DBL_MIN_EXP -1021
+
+#define LDBL_MANT_DIG DBL_MANT_DIG
+#define LDBL_EPSILON DBL_EPSILON
+#define LDBL_DIG DBL_DIG
+#define LDBL_MIN_EXP DBL_MIN_EXP
+#define LDBL_MIN DBL_MIN
+#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
+#define LDBL_MAX_EXP DBL_MAX_EXP
+#define LDBL_MAX DBL_MAX
+#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
+
+#endif /* __FLOAT */
diff --git a/lcc/include/x86/linux/stdarg.h b/lcc/include/x86/linux/stdarg.h
index 504ee48..a68f1a9 100755
--- a/lcc/include/x86/linux/stdarg.h
+++ b/lcc/include/x86/linux/stdarg.h
@@ -1,21 +1,21 @@
-#ifndef __STDARG
-#define __STDARG
-
-#if !defined(_VA_LIST)
-#define _VA_LIST
-typedef char *__va_list;
-#endif
-typedef __va_list va_list;
-
-#define va_start(list, start) ((void)((list) = (sizeof(start)<4 ? \
- (char *)((int *)&(start)+1) : (char *)(&(start)+1))))
-#define __va_arg(list, mode, n) \
- (*(mode *)(&(list += ((sizeof(mode)+n)&~n))[-(int)((sizeof(mode)+n)&~n)]))
-#define _bigendian_va_arg(list, mode, n) (\
- sizeof(mode)==1 ? *(mode *)(&(list += 4)[-1]) : \
- sizeof(mode)==2 ? *(mode *)(&(list += 4)[-2]) : __va_arg(list, mode, n))
-#define _littleendian_va_arg(list, mode, n) __va_arg(list, mode, n)
-#define va_end(list) ((void)0)
-#define va_arg(list, mode) _littleendian_va_arg(list, mode, 3U)
-typedef void *__gnuc_va_list;
-#endif
+#ifndef __STDARG
+#define __STDARG
+
+#if !defined(_VA_LIST)
+#define _VA_LIST
+typedef char *__va_list;
+#endif
+typedef __va_list va_list;
+
+#define va_start(list, start) ((void)((list) = (sizeof(start)<4 ? \
+ (char *)((int *)&(start)+1) : (char *)(&(start)+1))))
+#define __va_arg(list, mode, n) \
+ (*(mode *)(&(list += ((sizeof(mode)+n)&~n))[-(int)((sizeof(mode)+n)&~n)]))
+#define _bigendian_va_arg(list, mode, n) (\
+ sizeof(mode)==1 ? *(mode *)(&(list += 4)[-1]) : \
+ sizeof(mode)==2 ? *(mode *)(&(list += 4)[-2]) : __va_arg(list, mode, n))
+#define _littleendian_va_arg(list, mode, n) __va_arg(list, mode, n)
+#define va_end(list) ((void)0)
+#define va_arg(list, mode) _littleendian_va_arg(list, mode, 3U)
+typedef void *__gnuc_va_list;
+#endif
diff --git a/lcc/lburg/gram.c b/lcc/lburg/gram.c
index b484e57..6e1f6e4 100755
--- a/lcc/lburg/gram.c
+++ b/lcc/lburg/gram.c
@@ -1,680 +1,680 @@
-#if defined(__STDC__) || defined(__cplusplus)
-#define YYCONST const
-#define YYPARAMS(x) x
-#define YYDEFUN(name, arglist, args) name(args)
-#define YYAND ,
-#define YYPTR void *
-#else
-#define YYCONST
-#define YYPARAMS(x) ()
-#define YYDEFUN(name, arglist, args) name arglist args;
-#define YYAND ;
-#define YYPTR char *
-#endif
-#ifndef lint
-YYCONST static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley +Cygnus.28) 01/20/91";
-#endif
-#define YYBYACC 1
-#ifndef YYDONT_INCLUDE_STDIO
-#include <stdio.h>
-#endif
-#ifdef __cplusplus
-#include <stdlib.h> /* for malloc/realloc/free */
-#endif
-#line 2 "lburg/gram.y"
-#include <stdio.h>
-#include "lburg.h"
-/*lint -e616 -e527 -e652 -esym(552,yynerrs) -esym(563,yynewstate,yyerrlab) */
-static int yylineno = 0;
-#line 8 "lburg/gram.y"
-typedef union {
- int n;
- char *string;
- Tree tree;
-} YYSTYPE;
-#line 37 "y.tab.c"
-#define TERMINAL 257
-#define START 258
-#define PPERCENT 259
-#define ID 260
-#define TEMPLATE 261
-#define CODE 262
-#define INT 263
-#define YYERRCODE 256
-static YYCONST short yylhs[] = { -1,
- 0, 0, 4, 4, 6, 6, 6, 6, 7, 7,
- 5, 5, 5, 5, 1, 3, 3, 3, 2,
-};
-static YYCONST short yylen[] = { 2,
- 3, 1, 0, 2, 3, 3, 1, 2, 0, 4,
- 0, 7, 2, 3, 1, 1, 4, 6, 1,
-};
-static YYCONST short yydefred[] = { 3,
- 0, 0, 0, 9, 0, 11, 7, 4, 8, 0,
- 15, 0, 0, 0, 5, 6, 0, 13, 0, 0,
- 14, 0, 10, 0, 0, 0, 0, 0, 19, 0,
- 17, 0, 12, 0, 18,
-};
-static YYCONST short yydgoto[] = { 1,
- 12, 30, 25, 2, 13, 8, 10,
-};
-static YYCONST short yysindex[] = { 0,
- 0, -4, -2, 0, -250, 0, 0, 0, 0, -9,
- 0, 1, -10, -49, 0, 0, 3, 0, -44, -248,
- 0, -244, 0, -22, -242, -244, -245, -37, 0, 10,
- 0, -244, 0, -20, 0,
-};
-static YYCONST short yyrindex[] = { 0,
- 0, 22, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 23, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, -39, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0,
-};
-static YYCONST short yygindex[] = { 0,
- 11, 0, -23, 0, 0, 0, 0,
-};
-#define YYTABLESIZE 255
-static YYCONST short yytable[] = { 18,
- 15, 16, 28, 31, 16, 7, 32, 9, 34, 11,
- 16, 20, 21, 22, 23, 24, 29, 26, 27, 33,
- 35, 2, 1, 19, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 16, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 17, 0, 0, 0, 11,
- 14, 3, 4, 5, 6,
-};
-static YYCONST short yycheck[] = { 10,
- 10, 41, 26, 41, 44, 10, 44, 10, 32, 260,
- 10, 61, 10, 58, 263, 260, 262, 40, 261, 10,
- 41, 0, 0, 13, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 261, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 256, -1, -1, -1, 260,
- 260, 256, 257, 258, 259,
-};
-#define YYFINAL 1
-#ifndef YYDEBUG
-#define YYDEBUG 0
-#endif
-#define YYMAXTOKEN 263
-#if YYDEBUG
-static YYCONST char *YYCONST yyname[] = {
-"end-of-file",0,0,0,0,0,0,0,0,0,"'\\n'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,"'('","')'",0,0,"','",0,0,0,0,0,0,0,0,0,0,0,0,0,"':'",0,0,
-"'='",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-"TERMINAL","START","PPERCENT","ID","TEMPLATE","CODE","INT",
-};
-static YYCONST char *YYCONST yyrule[] = {
-"$accept : spec",
-"spec : decls PPERCENT rules",
-"spec : decls",
-"decls :",
-"decls : decls decl",
-"decl : TERMINAL blist '\\n'",
-"decl : START nonterm '\\n'",
-"decl : '\\n'",
-"decl : error '\\n'",
-"blist :",
-"blist : blist ID '=' INT",
-"rules :",
-"rules : rules nonterm ':' tree TEMPLATE cost '\\n'",
-"rules : rules '\\n'",
-"rules : rules error '\\n'",
-"nonterm : ID",
-"tree : ID",
-"tree : ID '(' tree ')'",
-"tree : ID '(' tree ',' tree ')'",
-"cost : CODE",
-};
-#endif
-#define YYLEX yylex()
-#define YYEMPTY -1
-#define yyclearin (yychar=(YYEMPTY))
-#define yyerrok (yyerrflag=0)
-#ifndef YYINITDEPTH
-#define YYINITDEPTH 200
-#endif
-#ifdef YYSTACKSIZE
-#ifndef YYMAXDEPTH
-#define YYMAXDEPTH YYSTACKSIZE
-#endif
-#else
-#ifdef YYMAXDEPTH
-#define YYSTACKSIZE YYMAXDEPTH
-#else
-#define YYSTACKSIZE 500
-#define YYMAXDEPTH 500
-#endif
-#endif
-#ifndef YYMAXSTACKSIZE
-#define YYMAXSTACKSIZE 10000
-#endif
-int yydebug;
-int yynerrs;
-int yyerrflag;
-int yychar;
-YYSTYPE yyval;
-YYSTYPE yylval;
-static short *yyss;
-static YYSTYPE *yyvs;
-static int yystacksize;
-#define yyfree(x) free(x)
-extern int yylex();
-
-static YYPTR
-YYDEFUN (yymalloc, (bytes), unsigned bytes)
-{
- YYPTR ptr = (YYPTR) malloc (bytes);
- if (ptr != 0) return (ptr);
- yyerror ("yyparse: memory exhausted");
- return (0);
-}
-
-static YYPTR
-YYDEFUN (yyrealloc, (old, bytes), YYPTR old YYAND unsigned bytes)
-{
- YYPTR ptr = (YYPTR) realloc (old, bytes);
- if (ptr != 0) return (ptr);
- yyerror ("yyparse: memory exhausted");
- return (0);
-}
-
-static int
-#ifdef __GNUC__
-inline
-#endif
-yygrow ()
-{
- int old_stacksize = yystacksize;
- short *new_yyss;
- YYSTYPE *new_yyvs;
-
- if (yystacksize == YYMAXSTACKSIZE)
- return (1);
- yystacksize += (yystacksize + 1 ) / 2;
- if (yystacksize > YYMAXSTACKSIZE)
- yystacksize = YYMAXSTACKSIZE;
-#if YYDEBUG
- if (yydebug)
- printf("yydebug: growing stack size from %d to %d\n",
- old_stacksize, yystacksize);
-#endif
- new_yyss = (short *) yyrealloc ((char *)yyss, yystacksize * sizeof (short));
- if (new_yyss == 0)
- return (1);
- new_yyvs = (YYSTYPE *) yyrealloc ((char *)yyvs, yystacksize * sizeof (YYSTYPE));
- if (new_yyvs == 0)
- {
- yyfree (new_yyss);
- return (1);
- }
- yyss = new_yyss;
- yyvs = new_yyvs;
- return (0);
-}
-#line 60 "lburg/gram.y"
-#include <assert.h>
-#include <stdarg.h>
-#include <ctype.h>
-#include <string.h>
-#include <limits.h>
-
-int errcnt = 0;
-FILE *infp = NULL;
-FILE *outfp = NULL;
-static char buf[BUFSIZ], *bp = buf;
-static int ppercent = 0;
-static int code = 0;
-
-static int get(void) {
- if (*bp == 0) {
- bp = buf;
- *bp = 0;
- if (fgets(buf, sizeof buf, infp) == NULL)
- return EOF;
- yylineno++;
- while (buf[0] == '%' && buf[1] == '{' && buf[2] == '\n') {
- for (;;) {
- if (fgets(buf, sizeof buf, infp) == NULL) {
- yywarn("unterminated %{...%}\n");
- return EOF;
- }
- yylineno++;
- if (strcmp(buf, "%}\n") == 0)
- break;
- fputs(buf, outfp);
- }
- if (fgets(buf, sizeof buf, infp) == NULL)
- return EOF;
- yylineno++;
- }
- }
- return *bp++;
-}
-
-void yyerror(char *fmt, ...) {
- va_list ap;
-
- va_start(ap, fmt);
- if (yylineno > 0)
- fprintf(stderr, "line %d: ", yylineno);
- vfprintf(stderr, fmt, ap);
- if (fmt[strlen(fmt)-1] != '\n')
- fprintf(stderr, "\n");
- errcnt++;
- va_end(ap);
-}
-
-int yylex(void) {
- int c;
-
- if (code) {
- char *p;
- bp += strspn(bp, " \t\f");
- p = strchr(bp, '\n');
- if (p == NULL)
- p = strchr(bp, '\n');
- while (p > bp && isspace(p[-1]))
- p--;
- yylval.string = alloc(p - bp + 1);
- strncpy(yylval.string, bp, p - bp);
- yylval.string[p - bp] = 0;
- bp = p;
- code--;
- return CODE;
- }
- while ((c = get()) != EOF) {
- switch (c) {
- case ' ': case '\f': case '\t':
- continue;
- case '\n':
- case '(': case ')': case ',':
- case ':': case '=':
- return c;
- }
- if (c == '%' && *bp == '%') {
- bp++;
- return ppercent++ ? 0 : PPERCENT;
- } else if (c == '%' && strncmp(bp, "term", 4) == 0
- && isspace(bp[4])) {
- bp += 4;
- return TERMINAL;
- } else if (c == '%' && strncmp(bp, "start", 5) == 0
- && isspace(bp[5])) {
- bp += 5;
- return START;
- } else if (c == '"') {
- char *p = strchr(bp, '"');
- if (p == NULL) {
- yyerror("missing \" in assembler template\n");
- p = strchr(bp, '\n');
- if (p == NULL)
- p = strchr(bp, '\0');
- }
- assert(p);
- yylval.string = alloc(p - bp + 1);
- strncpy(yylval.string, bp, p - bp);
- yylval.string[p - bp] = 0;
- bp = *p == '"' ? p + 1 : p;
- code++;
- return TEMPLATE;
- } else if (isdigit(c)) {
- int n = 0;
- do {
- int d = c - '0';
- if (n > (INT_MAX - d)/10)
- yyerror("integer greater than %d\n", INT_MAX);
- else
- n = 10*n + d;
- c = get();
- } while (c != EOF && isdigit(c));
- bp--;
- yylval.n = n;
- return INT;
- } else if (isalpha(c)) {
- char *p = bp - 1;
- while (isalpha(*bp) || isdigit(*bp) || *bp == '_')
- bp++;
- yylval.string = alloc(bp - p + 1);
- strncpy(yylval.string, p, bp - p);
- yylval.string[bp - p] = 0;
- return ID;
- } else if (isprint(c))
- yyerror("invalid character `%c'\n", c);
- else
- yyerror("invalid character `\\%03o'\n", (unsigned char)c);
- }
- return 0;
-}
-
-void yywarn(char *fmt, ...) {
- va_list ap;
-
- va_start(ap, fmt);
- if (yylineno > 0)
- fprintf(stderr, "line %d: ", yylineno);
- fprintf(stderr, "warning: ");
- vfprintf(stderr, fmt, ap);
-}
-#line 403 "y.tab.c"
-#define YYABORT goto yyabort
-#define YYACCEPT goto yyaccept
-#define YYERROR goto yyerrlab
-
-#if YYDEBUG
-#ifdef __cplusplus
-extern "C" char *getenv();
-#else
-extern char *getenv();
-#endif
-#endif
-
-int
-yyparse()
-{
- register int yym, yyn, yystate;
- register YYSTYPE *yyvsp;
- register short *yyssp;
- short *yysse;
-#if YYDEBUG
- register YYCONST char *yys;
-
- if (yys = getenv("YYDEBUG"))
- {
- yyn = *yys;
- if (yyn >= '0' && yyn <= '9')
- yydebug = yyn - '0';
- }
-#endif
-
- yynerrs = 0;
- yyerrflag = 0;
- yychar = (-1);
-
- if (yyss == 0)
- {
- yyss = (short *) yymalloc (YYSTACKSIZE * sizeof (short));
- if (yyss == 0)
- goto yyabort;
- yyvs = (YYSTYPE *) yymalloc (YYSTACKSIZE * sizeof (YYSTYPE));
- if (yyvs == 0)
- {
- yyfree (yyss);
- goto yyabort;
- }
- yystacksize = YYSTACKSIZE;
- }
- yysse = yyss + yystacksize - 1;
- yyssp = yyss;
- yyvsp = yyvs;
- *yyssp = yystate = 0;
- goto yyloop;
-
-yypush_lex:
- yyval = yylval;
- yystate = yytable[yyn];
-yypush:
- if (yyssp >= yysse)
- {
- int depth = yyssp - yyss;
- if (yygrow() != 0)
- goto yyoverflow;
- yysse = yyss + yystacksize -1;
- yyssp = depth + yyss;
- yyvsp = depth + yyvs;
- }
- *++yyssp = yystate;
- *++yyvsp = yyval;
-
-yyloop:
- if (yyn = yydefred[yystate]) goto yyreduce;
- yyn = yysindex[yystate];
- if (yychar < 0)
- {
- if ((yychar = yylex()) < 0) yychar = 0;
-#if YYDEBUG
- if (yydebug)
- {
- yys = 0;
- if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
- if (!yys) yys = "illegal-symbol";
- printf("yydebug: state %d, reading %d (%s)\n", yystate,
- yychar, yys);
- }
-#endif
- }
- if (yyn != 0
- && ((yyn += yychar), ((unsigned)yyn <= (unsigned)YYTABLESIZE))
- && yycheck[yyn] == yychar)
- {
-#if YYDEBUG
- if (yydebug)
- printf("yydebug: state %d, shifting to state %d\n",
- yystate, yytable[yyn]);
-#endif
- if (yyerrflag > 0) --yyerrflag;
- yychar = (-1);
- goto yypush_lex;
- }
- yyn = yyrindex[yystate];
- if (yyn != 0
- && ((yyn += yychar), ((unsigned)yyn <= (unsigned)YYTABLESIZE))
- && yycheck[yyn] == yychar)
- {
- yyn = yytable[yyn];
- goto yyreduce;
- }
- if (yyerrflag) goto yyinrecovery;
-#ifdef lint
- goto yynewerror;
-#endif
-yynewerror:
- yyerror("syntax error");
-#ifdef lint
- goto yyerrlab;
-#endif
-yyerrlab:
- ++yynerrs;
-yyinrecovery:
- if (yyerrflag < 3)
- {
- yyerrflag = 3;
- for (;;)
- {
- yyn = yysindex[*yyssp];
- if (yyn != 0
- && ((yyn += YYERRCODE), ((unsigned)yyn <= (unsigned)YYTABLESIZE))
- && yycheck[yyn] == YYERRCODE)
- {
-#if YYDEBUG
- if (yydebug)
- printf("yydebug: state %d, error recovery shifting\
- to state %d\n", *yyssp, yytable[yyn]);
-#endif
- goto yypush_lex;
- }
- else
- {
-#if YYDEBUG
- if (yydebug)
- printf("yydebug: error recovery discarding state %d\n",
- *yyssp);
-#endif
- if (yyssp <= yyss) goto yyabort;
- --yyssp;
- --yyvsp;
- }
- }
- }
- else
- {
- if (yychar == 0) goto yyabort;
-#if YYDEBUG
- if (yydebug)
- {
- yys = 0;
- if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
- if (!yys) yys = "illegal-symbol";
- printf("yydebug: state %d, error recovery discards token %d (%s)\n",
- yystate, yychar, yys);
- }
-#endif
- yychar = (-1);
- goto yyloop;
- }
-yyreduce:
-#if YYDEBUG
- if (yydebug)
- printf("yydebug: state %d, reducing by rule %d (%s)\n",
- yystate, yyn, yyrule[yyn]);
-#endif
- yym = yylen[yyn];
- yyval = yyvsp[1-yym];
- switch (yyn)
- {
-case 1:
-#line 22 "lburg/gram.y"
-{ yylineno = 0; }
-break;
-case 2:
-#line 23 "lburg/gram.y"
-{ yylineno = 0; }
-break;
-case 6:
-#line 31 "lburg/gram.y"
-{
- if (nonterm(yyvsp[-1].string)->number != 1)
- yyerror("redeclaration of the start symbol\n");
- }
-break;
-case 8:
-#line 36 "lburg/gram.y"
-{ yyerrok; }
-break;
-case 10:
-#line 40 "lburg/gram.y"
-{ term(yyvsp[-2].string, yyvsp[0].n); }
-break;
-case 12:
-#line 44 "lburg/gram.y"
-{ rule(yyvsp[-5].string, yyvsp[-3].tree, yyvsp[-2].string, yyvsp[-1].string); }
-break;
-case 14:
-#line 46 "lburg/gram.y"
-{ yyerrok; }
-break;
-case 15:
-#line 49 "lburg/gram.y"
-{ nonterm(yyval.string = yyvsp[0].string); }
-break;
-case 16:
-#line 52 "lburg/gram.y"
-{ yyval.tree = tree(yyvsp[0].string, 0, 0); }
-break;
-case 17:
-#line 53 "lburg/gram.y"
-{ yyval.tree = tree(yyvsp[-3].string, yyvsp[-1].tree, 0); }
-break;
-case 18:
-#line 54 "lburg/gram.y"
-{ yyval.tree = tree(yyvsp[-5].string, yyvsp[-3].tree, yyvsp[-1].tree); }
-break;
-case 19:
-#line 57 "lburg/gram.y"
-{ if (*yyvsp[0].string == 0) yyval.string = "0"; }
-break;
-#line 630 "y.tab.c"
- }
- yyssp -= yym;
- yyvsp -= yym;
- yym = yylhs[yyn];
- yystate = *yyssp;
- if (yystate == 0 && yym == 0)
- {
-#if YYDEBUG
- if (yydebug)
- printf("yydebug: after reduction, shifting from state 0 to\
- state %d\n", YYFINAL);
-#endif
- yystate = YYFINAL;
- *++yyssp = YYFINAL;
- *++yyvsp = yyval;
- if (yychar < 0)
- {
- if ((yychar = yylex()) < 0) yychar = 0;
-#if YYDEBUG
- if (yydebug)
- {
- yys = 0;
- if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
- if (!yys) yys = "illegal-symbol";
- printf("yydebug: state %d, reading %d (%s)\n",
- YYFINAL, yychar, yys);
- }
-#endif
- }
- if (yychar == 0) goto yyaccept;
- goto yyloop;
- }
- yyn = yygindex[yym];
- if (yyn != 0
- && ((yyn += yystate), ((unsigned)yyn <= (unsigned)YYTABLESIZE))
- && yycheck[yyn] == yystate)
- yystate = yytable[yyn];
- else
- yystate = yydgoto[yym];
-#if YYDEBUG
- if (yydebug)
- printf("yydebug: after reduction, shifting from state %d \
-to state %d\n", *yyssp, yystate);
-#endif
- goto yypush;
-yyoverflow:
- yyerror("yacc stack overflow");
-yyabort:
- return (1);
-yyaccept:
- return (0);
-}
+#if defined(__STDC__) || defined(__cplusplus)
+#define YYCONST const
+#define YYPARAMS(x) x
+#define YYDEFUN(name, arglist, args) name(args)
+#define YYAND ,
+#define YYPTR void *
+#else
+#define YYCONST
+#define YYPARAMS(x) ()
+#define YYDEFUN(name, arglist, args) name arglist args;
+#define YYAND ;
+#define YYPTR char *
+#endif
+#ifndef lint
+YYCONST static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley +Cygnus.28) 01/20/91";
+#endif
+#define YYBYACC 1
+#ifndef YYDONT_INCLUDE_STDIO
+#include <stdio.h>
+#endif
+#ifdef __cplusplus
+#include <stdlib.h> /* for malloc/realloc/free */
+#endif
+#line 2 "lburg/gram.y"
+#include <stdio.h>
+#include "lburg.h"
+/*lint -e616 -e527 -e652 -esym(552,yynerrs) -esym(563,yynewstate,yyerrlab) */
+static int yylineno = 0;
+#line 8 "lburg/gram.y"
+typedef union {
+ int n;
+ char *string;
+ Tree tree;
+} YYSTYPE;
+#line 37 "y.tab.c"
+#define TERMINAL 257
+#define START 258
+#define PPERCENT 259
+#define ID 260
+#define TEMPLATE 261
+#define CODE 262
+#define INT 263
+#define YYERRCODE 256
+static YYCONST short yylhs[] = { -1,
+ 0, 0, 4, 4, 6, 6, 6, 6, 7, 7,
+ 5, 5, 5, 5, 1, 3, 3, 3, 2,
+};
+static YYCONST short yylen[] = { 2,
+ 3, 1, 0, 2, 3, 3, 1, 2, 0, 4,
+ 0, 7, 2, 3, 1, 1, 4, 6, 1,
+};
+static YYCONST short yydefred[] = { 3,
+ 0, 0, 0, 9, 0, 11, 7, 4, 8, 0,
+ 15, 0, 0, 0, 5, 6, 0, 13, 0, 0,
+ 14, 0, 10, 0, 0, 0, 0, 0, 19, 0,
+ 17, 0, 12, 0, 18,
+};
+static YYCONST short yydgoto[] = { 1,
+ 12, 30, 25, 2, 13, 8, 10,
+};
+static YYCONST short yysindex[] = { 0,
+ 0, -4, -2, 0, -250, 0, 0, 0, 0, -9,
+ 0, 1, -10, -49, 0, 0, 3, 0, -44, -248,
+ 0, -244, 0, -22, -242, -244, -245, -37, 0, 10,
+ 0, -244, 0, -20, 0,
+};
+static YYCONST short yyrindex[] = { 0,
+ 0, 22, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 23, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -39, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0,
+};
+static YYCONST short yygindex[] = { 0,
+ 11, 0, -23, 0, 0, 0, 0,
+};
+#define YYTABLESIZE 255
+static YYCONST short yytable[] = { 18,
+ 15, 16, 28, 31, 16, 7, 32, 9, 34, 11,
+ 16, 20, 21, 22, 23, 24, 29, 26, 27, 33,
+ 35, 2, 1, 19, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 16, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 17, 0, 0, 0, 11,
+ 14, 3, 4, 5, 6,
+};
+static YYCONST short yycheck[] = { 10,
+ 10, 41, 26, 41, 44, 10, 44, 10, 32, 260,
+ 10, 61, 10, 58, 263, 260, 262, 40, 261, 10,
+ 41, 0, 0, 13, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 261, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 256, -1, -1, -1, 260,
+ 260, 256, 257, 258, 259,
+};
+#define YYFINAL 1
+#ifndef YYDEBUG
+#define YYDEBUG 0
+#endif
+#define YYMAXTOKEN 263
+#if YYDEBUG
+static YYCONST char *YYCONST yyname[] = {
+"end-of-file",0,0,0,0,0,0,0,0,0,"'\\n'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,"'('","')'",0,0,"','",0,0,0,0,0,0,0,0,0,0,0,0,0,"':'",0,0,
+"'='",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+"TERMINAL","START","PPERCENT","ID","TEMPLATE","CODE","INT",
+};
+static YYCONST char *YYCONST yyrule[] = {
+"$accept : spec",
+"spec : decls PPERCENT rules",
+"spec : decls",
+"decls :",
+"decls : decls decl",
+"decl : TERMINAL blist '\\n'",
+"decl : START nonterm '\\n'",
+"decl : '\\n'",
+"decl : error '\\n'",
+"blist :",
+"blist : blist ID '=' INT",
+"rules :",
+"rules : rules nonterm ':' tree TEMPLATE cost '\\n'",
+"rules : rules '\\n'",
+"rules : rules error '\\n'",
+"nonterm : ID",
+"tree : ID",
+"tree : ID '(' tree ')'",
+"tree : ID '(' tree ',' tree ')'",
+"cost : CODE",
+};
+#endif
+#define YYLEX yylex()
+#define YYEMPTY -1
+#define yyclearin (yychar=(YYEMPTY))
+#define yyerrok (yyerrflag=0)
+#ifndef YYINITDEPTH
+#define YYINITDEPTH 200
+#endif
+#ifdef YYSTACKSIZE
+#ifndef YYMAXDEPTH
+#define YYMAXDEPTH YYSTACKSIZE
+#endif
+#else
+#ifdef YYMAXDEPTH
+#define YYSTACKSIZE YYMAXDEPTH
+#else
+#define YYSTACKSIZE 500
+#define YYMAXDEPTH 500
+#endif
+#endif
+#ifndef YYMAXSTACKSIZE
+#define YYMAXSTACKSIZE 10000
+#endif
+int yydebug;
+int yynerrs;
+int yyerrflag;
+int yychar;
+YYSTYPE yyval;
+YYSTYPE yylval;
+static short *yyss;
+static YYSTYPE *yyvs;
+static int yystacksize;
+#define yyfree(x) free(x)
+extern int yylex();
+
+static YYPTR
+YYDEFUN (yymalloc, (bytes), unsigned bytes)
+{
+ YYPTR ptr = (YYPTR) malloc (bytes);
+ if (ptr != 0) return (ptr);
+ yyerror ("yyparse: memory exhausted");
+ return (0);
+}
+
+static YYPTR
+YYDEFUN (yyrealloc, (old, bytes), YYPTR old YYAND unsigned bytes)
+{
+ YYPTR ptr = (YYPTR) realloc (old, bytes);
+ if (ptr != 0) return (ptr);
+ yyerror ("yyparse: memory exhausted");
+ return (0);
+}
+
+static int
+#ifdef __GNUC__
+inline
+#endif
+yygrow ()
+{
+ int old_stacksize = yystacksize;
+ short *new_yyss;
+ YYSTYPE *new_yyvs;
+
+ if (yystacksize == YYMAXSTACKSIZE)
+ return (1);
+ yystacksize += (yystacksize + 1 ) / 2;
+ if (yystacksize > YYMAXSTACKSIZE)
+ yystacksize = YYMAXSTACKSIZE;
+#if YYDEBUG
+ if (yydebug)
+ printf("yydebug: growing stack size from %d to %d\n",
+ old_stacksize, yystacksize);
+#endif
+ new_yyss = (short *) yyrealloc ((char *)yyss, yystacksize * sizeof (short));
+ if (new_yyss == 0)
+ return (1);
+ new_yyvs = (YYSTYPE *) yyrealloc ((char *)yyvs, yystacksize * sizeof (YYSTYPE));
+ if (new_yyvs == 0)
+ {
+ yyfree (new_yyss);
+ return (1);
+ }
+ yyss = new_yyss;
+ yyvs = new_yyvs;
+ return (0);
+}
+#line 60 "lburg/gram.y"
+#include <assert.h>
+#include <stdarg.h>
+#include <ctype.h>
+#include <string.h>
+#include <limits.h>
+
+int errcnt = 0;
+FILE *infp = NULL;
+FILE *outfp = NULL;
+static char buf[BUFSIZ], *bp = buf;
+static int ppercent = 0;
+static int code = 0;
+
+static int get(void) {
+ if (*bp == 0) {
+ bp = buf;
+ *bp = 0;
+ if (fgets(buf, sizeof buf, infp) == NULL)
+ return EOF;
+ yylineno++;
+ while (buf[0] == '%' && buf[1] == '{' && buf[2] == '\n') {
+ for (;;) {
+ if (fgets(buf, sizeof buf, infp) == NULL) {
+ yywarn("unterminated %{...%}\n");
+ return EOF;
+ }
+ yylineno++;
+ if (strcmp(buf, "%}\n") == 0)
+ break;
+ fputs(buf, outfp);
+ }
+ if (fgets(buf, sizeof buf, infp) == NULL)
+ return EOF;
+ yylineno++;
+ }
+ }
+ return *bp++;
+}
+
+void yyerror(char *fmt, ...) {
+ va_list ap;
+
+ va_start(ap, fmt);
+ if (yylineno > 0)
+ fprintf(stderr, "line %d: ", yylineno);
+ vfprintf(stderr, fmt, ap);
+ if (fmt[strlen(fmt)-1] != '\n')
+ fprintf(stderr, "\n");
+ errcnt++;
+ va_end(ap);
+}
+
+int yylex(void) {
+ int c;
+
+ if (code) {
+ char *p;
+ bp += strspn(bp, " \t\f");
+ p = strchr(bp, '\n');
+ if (p == NULL)
+ p = strchr(bp, '\n');
+ while (p > bp && isspace(p[-1]))
+ p--;
+ yylval.string = alloc(p - bp + 1);
+ strncpy(yylval.string, bp, p - bp);
+ yylval.string[p - bp] = 0;
+ bp = p;
+ code--;
+ return CODE;
+ }
+ while ((c = get()) != EOF) {
+ switch (c) {
+ case ' ': case '\f': case '\t':
+ continue;
+ case '\n':
+ case '(': case ')': case ',':
+ case ':': case '=':
+ return c;
+ }
+ if (c == '%' && *bp == '%') {
+ bp++;
+ return ppercent++ ? 0 : PPERCENT;
+ } else if (c == '%' && strncmp(bp, "term", 4) == 0
+ && isspace(bp[4])) {
+ bp += 4;
+ return TERMINAL;
+ } else if (c == '%' && strncmp(bp, "start", 5) == 0
+ && isspace(bp[5])) {
+ bp += 5;
+ return START;
+ } else if (c == '"') {
+ char *p = strchr(bp, '"');
+ if (p == NULL) {
+ yyerror("missing \" in assembler template\n");
+ p = strchr(bp, '\n');
+ if (p == NULL)
+ p = strchr(bp, '\0');
+ }
+ assert(p);
+ yylval.string = alloc(p - bp + 1);
+ strncpy(yylval.string, bp, p - bp);
+ yylval.string[p - bp] = 0;
+ bp = *p == '"' ? p + 1 : p;
+ code++;
+ return TEMPLATE;
+ } else if (isdigit(c)) {
+ int n = 0;
+ do {
+ int d = c - '0';
+ if (n > (INT_MAX - d)/10)
+ yyerror("integer greater than %d\n", INT_MAX);
+ else
+ n = 10*n + d;
+ c = get();
+ } while (c != EOF && isdigit(c));
+ bp--;
+ yylval.n = n;
+ return INT;
+ } else if (isalpha(c)) {
+ char *p = bp - 1;
+ while (isalpha(*bp) || isdigit(*bp) || *bp == '_')
+ bp++;
+ yylval.string = alloc(bp - p + 1);
+ strncpy(yylval.string, p, bp - p);
+ yylval.string[bp - p] = 0;
+ return ID;
+ } else if (isprint(c))
+ yyerror("invalid character `%c'\n", c);
+ else
+ yyerror("invalid character `\\%03o'\n", (unsigned char)c);
+ }
+ return 0;
+}
+
+void yywarn(char *fmt, ...) {
+ va_list ap;
+
+ va_start(ap, fmt);
+ if (yylineno > 0)
+ fprintf(stderr, "line %d: ", yylineno);
+ fprintf(stderr, "warning: ");
+ vfprintf(stderr, fmt, ap);
+}
+#line 403 "y.tab.c"
+#define YYABORT goto yyabort
+#define YYACCEPT goto yyaccept
+#define YYERROR goto yyerrlab
+
+#if YYDEBUG
+#ifdef __cplusplus
+extern "C" char *getenv();
+#else
+extern char *getenv();
+#endif
+#endif
+
+int
+yyparse()
+{
+ register int yym, yyn, yystate;
+ register YYSTYPE *yyvsp;
+ register short *yyssp;
+ short *yysse;
+#if YYDEBUG
+ register YYCONST char *yys;
+
+ if (yys = getenv("YYDEBUG"))
+ {
+ yyn = *yys;
+ if (yyn >= '0' && yyn <= '9')
+ yydebug = yyn - '0';
+ }
+#endif
+
+ yynerrs = 0;
+ yyerrflag = 0;
+ yychar = (-1);
+
+ if (yyss == 0)
+ {
+ yyss = (short *) yymalloc (YYSTACKSIZE * sizeof (short));
+ if (yyss == 0)
+ goto yyabort;
+ yyvs = (YYSTYPE *) yymalloc (YYSTACKSIZE * sizeof (YYSTYPE));
+ if (yyvs == 0)
+ {
+ yyfree (yyss);
+ goto yyabort;
+ }
+ yystacksize = YYSTACKSIZE;
+ }
+ yysse = yyss + yystacksize - 1;
+ yyssp = yyss;
+ yyvsp = yyvs;
+ *yyssp = yystate = 0;
+ goto yyloop;
+
+yypush_lex:
+ yyval = yylval;
+ yystate = yytable[yyn];
+yypush:
+ if (yyssp >= yysse)
+ {
+ int depth = yyssp - yyss;
+ if (yygrow() != 0)
+ goto yyoverflow;
+ yysse = yyss + yystacksize -1;
+ yyssp = depth + yyss;
+ yyvsp = depth + yyvs;
+ }
+ *++yyssp = yystate;
+ *++yyvsp = yyval;
+
+yyloop:
+ if (yyn = yydefred[yystate]) goto yyreduce;
+ yyn = yysindex[yystate];
+ if (yychar < 0)
+ {
+ if ((yychar = yylex()) < 0) yychar = 0;
+#if YYDEBUG
+ if (yydebug)
+ {
+ yys = 0;
+ if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
+ if (!yys) yys = "illegal-symbol";
+ printf("yydebug: state %d, reading %d (%s)\n", yystate,
+ yychar, yys);
+ }
+#endif
+ }
+ if (yyn != 0
+ && ((yyn += yychar), ((unsigned)yyn <= (unsigned)YYTABLESIZE))
+ && yycheck[yyn] == yychar)
+ {
+#if YYDEBUG
+ if (yydebug)
+ printf("yydebug: state %d, shifting to state %d\n",
+ yystate, yytable[yyn]);
+#endif
+ if (yyerrflag > 0) --yyerrflag;
+ yychar = (-1);
+ goto yypush_lex;
+ }
+ yyn = yyrindex[yystate];
+ if (yyn != 0
+ && ((yyn += yychar), ((unsigned)yyn <= (unsigned)YYTABLESIZE))
+ && yycheck[yyn] == yychar)
+ {
+ yyn = yytable[yyn];
+ goto yyreduce;
+ }
+ if (yyerrflag) goto yyinrecovery;
+#ifdef lint
+ goto yynewerror;
+#endif
+yynewerror:
+ yyerror("syntax error");
+#ifdef lint
+ goto yyerrlab;
+#endif
+yyerrlab:
+ ++yynerrs;
+yyinrecovery:
+ if (yyerrflag < 3)
+ {
+ yyerrflag = 3;
+ for (;;)
+ {
+ yyn = yysindex[*yyssp];
+ if (yyn != 0
+ && ((yyn += YYERRCODE), ((unsigned)yyn <= (unsigned)YYTABLESIZE))
+ && yycheck[yyn] == YYERRCODE)
+ {
+#if YYDEBUG
+ if (yydebug)
+ printf("yydebug: state %d, error recovery shifting\
+ to state %d\n", *yyssp, yytable[yyn]);
+#endif
+ goto yypush_lex;
+ }
+ else
+ {
+#if YYDEBUG
+ if (yydebug)
+ printf("yydebug: error recovery discarding state %d\n",
+ *yyssp);
+#endif
+ if (yyssp <= yyss) goto yyabort;
+ --yyssp;
+ --yyvsp;
+ }
+ }
+ }
+ else
+ {
+ if (yychar == 0) goto yyabort;
+#if YYDEBUG
+ if (yydebug)
+ {
+ yys = 0;
+ if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
+ if (!yys) yys = "illegal-symbol";
+ printf("yydebug: state %d, error recovery discards token %d (%s)\n",
+ yystate, yychar, yys);
+ }
+#endif
+ yychar = (-1);
+ goto yyloop;
+ }
+yyreduce:
+#if YYDEBUG
+ if (yydebug)
+ printf("yydebug: state %d, reducing by rule %d (%s)\n",
+ yystate, yyn, yyrule[yyn]);
+#endif
+ yym = yylen[yyn];
+ yyval = yyvsp[1-yym];
+ switch (yyn)
+ {
+case 1:
+#line 22 "lburg/gram.y"
+{ yylineno = 0; }
+break;
+case 2:
+#line 23 "lburg/gram.y"
+{ yylineno = 0; }
+break;
+case 6:
+#line 31 "lburg/gram.y"
+{
+ if (nonterm(yyvsp[-1].string)->number != 1)
+ yyerror("redeclaration of the start symbol\n");
+ }
+break;
+case 8:
+#line 36 "lburg/gram.y"
+{ yyerrok; }
+break;
+case 10:
+#line 40 "lburg/gram.y"
+{ term(yyvsp[-2].string, yyvsp[0].n); }
+break;
+case 12:
+#line 44 "lburg/gram.y"
+{ rule(yyvsp[-5].string, yyvsp[-3].tree, yyvsp[-2].string, yyvsp[-1].string); }
+break;
+case 14:
+#line 46 "lburg/gram.y"
+{ yyerrok; }
+break;
+case 15:
+#line 49 "lburg/gram.y"
+{ nonterm(yyval.string = yyvsp[0].string); }
+break;
+case 16:
+#line 52 "lburg/gram.y"
+{ yyval.tree = tree(yyvsp[0].string, 0, 0); }
+break;
+case 17:
+#line 53 "lburg/gram.y"
+{ yyval.tree = tree(yyvsp[-3].string, yyvsp[-1].tree, 0); }
+break;
+case 18:
+#line 54 "lburg/gram.y"
+{ yyval.tree = tree(yyvsp[-5].string, yyvsp[-3].tree, yyvsp[-1].tree); }
+break;
+case 19:
+#line 57 "lburg/gram.y"
+{ if (*yyvsp[0].string == 0) yyval.string = "0"; }
+break;
+#line 630 "y.tab.c"
+ }
+ yyssp -= yym;
+ yyvsp -= yym;
+ yym = yylhs[yyn];
+ yystate = *yyssp;
+ if (yystate == 0 && yym == 0)
+ {
+#if YYDEBUG
+ if (yydebug)
+ printf("yydebug: after reduction, shifting from state 0 to\
+ state %d\n", YYFINAL);
+#endif
+ yystate = YYFINAL;
+ *++yyssp = YYFINAL;
+ *++yyvsp = yyval;
+ if (yychar < 0)
+ {
+ if ((yychar = yylex()) < 0) yychar = 0;
+#if YYDEBUG
+ if (yydebug)
+ {
+ yys = 0;
+ if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
+ if (!yys) yys = "illegal-symbol";
+ printf("yydebug: state %d, reading %d (%s)\n",
+ YYFINAL, yychar, yys);
+ }
+#endif
+ }
+ if (yychar == 0) goto yyaccept;
+ goto yyloop;
+ }
+ yyn = yygindex[yym];
+ if (yyn != 0
+ && ((yyn += yystate), ((unsigned)yyn <= (unsigned)YYTABLESIZE))
+ && yycheck[yyn] == yystate)
+ yystate = yytable[yyn];
+ else
+ yystate = yydgoto[yym];
+#if YYDEBUG
+ if (yydebug)
+ printf("yydebug: after reduction, shifting from state %d \
+to state %d\n", *yyssp, yystate);
+#endif
+ goto yypush;
+yyoverflow:
+ yyerror("yacc stack overflow");
+yyabort:
+ return (1);
+yyaccept:
+ return (0);
+}
diff --git a/lcc/lburg/gram.y b/lcc/lburg/gram.y
index 860d22a..1ecd8a9 100755
--- a/lcc/lburg/gram.y
+++ b/lcc/lburg/gram.y
@@ -1,202 +1,202 @@
-%{
-#include <stdio.h>
-#include "lburg.h"
-static char rcsid[] = "$Id: gram.y 145 2001-10-17 21:53:10Z timo $";
-/*lint -e616 -e527 -e652 -esym(552,yynerrs) -esym(563,yynewstate,yyerrlab) */
-static int yylineno = 0;
-%}
-%union {
- int n;
- char *string;
- Tree tree;
-}
-%term TERMINAL
-%term START
-%term PPERCENT
-
-%token <string> ID TEMPLATE CODE
-%token <n> INT
-%type <string> nonterm cost
-%type <tree> tree
-%%
-spec : decls PPERCENT rules { yylineno = 0; }
- | decls { yylineno = 0; }
- ;
-
-decls : /* lambda */
- | decls decl
- ;
-
-decl : TERMINAL blist '\n'
- | START nonterm '\n' {
- if (nonterm($2)->number != 1)
- yyerror("redeclaration of the start symbol\n");
- }
- | '\n'
- | error '\n' { yyerrok; }
- ;
-
-blist : /* lambda */
- | blist ID '=' INT { term($2, $4); }
- ;
-
-rules : /* lambda */
- | rules nonterm ':' tree TEMPLATE cost '\n' { rule($2, $4, $5, $6); }
- | rules '\n'
- | rules error '\n' { yyerrok; }
- ;
-
-nonterm : ID { nonterm($$ = $1); }
- ;
-
-tree : ID { $$ = tree($1, 0, 0); }
- | ID '(' tree ')' { $$ = tree($1, $3, 0); }
- | ID '(' tree ',' tree ')' { $$ = tree($1, $3, $5); }
- ;
-
-cost : CODE { if (*$1 == 0) $$ = "0"; }
- ;
-%%
-#include <assert.h>
-#include <stdarg.h>
-#include <ctype.h>
-#include <string.h>
-#include <limits.h>
-
-int errcnt = 0;
-FILE *infp = NULL;
-FILE *outfp = NULL;
-static char buf[BUFSIZ], *bp = buf;
-static int ppercent = 0;
-static int code = 0;
-
-static int get(void) {
- if (*bp == 0) {
- bp = buf;
- *bp = 0;
- if (fgets(buf, sizeof buf, infp) == NULL)
- return EOF;
- yylineno++;
- while (buf[0] == '%' && buf[1] == '{' && buf[2] == '\n') {
- for (;;) {
- if (fgets(buf, sizeof buf, infp) == NULL) {
- yywarn("unterminated %{...%}\n");
- return EOF;
- }
- yylineno++;
- if (strcmp(buf, "%}\n") == 0)
- break;
- fputs(buf, outfp);
- }
- if (fgets(buf, sizeof buf, infp) == NULL)
- return EOF;
- yylineno++;
- }
- }
- return *bp++;
-}
-
-void yyerror(char *fmt, ...) {
- va_list ap;
-
- va_start(ap, fmt);
- if (yylineno > 0)
- fprintf(stderr, "line %d: ", yylineno);
- vfprintf(stderr, fmt, ap);
- if (fmt[strlen(fmt)-1] != '\n')
- fprintf(stderr, "\n");
- errcnt++;
- va_end(ap);
-}
-
-int yylex(void) {
- int c;
-
- if (code) {
- char *p;
- bp += strspn(bp, " \t\f");
- p = strchr(bp, '\n');
- if (p == NULL)
- p = strchr(bp, '\n');
- while (p > bp && isspace(p[-1]))
- p--;
- yylval.string = alloc(p - bp + 1);
- strncpy(yylval.string, bp, p - bp);
- yylval.string[p - bp] = 0;
- bp = p;
- code--;
- return CODE;
- }
- while ((c = get()) != EOF) {
- switch (c) {
- case ' ': case '\f': case '\t':
- continue;
- case '\n':
- case '(': case ')': case ',':
- case ':': case '=':
- return c;
- }
- if (c == '%' && *bp == '%') {
- bp++;
- return ppercent++ ? 0 : PPERCENT;
- } else if (c == '%' && strncmp(bp, "term", 4) == 0
- && isspace(bp[4])) {
- bp += 4;
- return TERMINAL;
- } else if (c == '%' && strncmp(bp, "start", 5) == 0
- && isspace(bp[5])) {
- bp += 5;
- return START;
- } else if (c == '"') {
- char *p = strchr(bp, '"');
- if (p == NULL) {
- yyerror("missing \" in assembler template\n");
- p = strchr(bp, '\n');
- if (p == NULL)
- p = strchr(bp, '\0');
- }
- assert(p);
- yylval.string = alloc(p - bp + 1);
- strncpy(yylval.string, bp, p - bp);
- yylval.string[p - bp] = 0;
- bp = *p == '"' ? p + 1 : p;
- code++;
- return TEMPLATE;
- } else if (isdigit(c)) {
- int n = 0;
- do {
- int d = c - '0';
- if (n > (INT_MAX - d)/10)
- yyerror("integer greater than %d\n", INT_MAX);
- else
- n = 10*n + d;
- c = get();
- } while (c != EOF && isdigit(c));
- bp--;
- yylval.n = n;
- return INT;
- } else if (isalpha(c)) {
- char *p = bp - 1;
- while (isalpha(*bp) || isdigit(*bp) || *bp == '_')
- bp++;
- yylval.string = alloc(bp - p + 1);
- strncpy(yylval.string, p, bp - p);
- yylval.string[bp - p] = 0;
- return ID;
- } else if (isprint(c))
- yyerror("invalid character `%c'\n", c);
- else
- yyerror("invalid character `\\%03o'\n", (unsigned char)c);
- }
- return 0;
-}
-
-void yywarn(char *fmt, ...) {
- va_list ap;
-
- va_start(ap, fmt);
- if (yylineno > 0)
- fprintf(stderr, "line %d: ", yylineno);
- fprintf(stderr, "warning: ");
- vfprintf(stderr, fmt, ap);
-}
+%{
+#include <stdio.h>
+#include "lburg.h"
+static char rcsid[] = "$Id: gram.y 145 2001-10-17 21:53:10Z timo $";
+/*lint -e616 -e527 -e652 -esym(552,yynerrs) -esym(563,yynewstate,yyerrlab) */
+static int yylineno = 0;
+%}
+%union {
+ int n;
+ char *string;
+ Tree tree;
+}
+%term TERMINAL
+%term START
+%term PPERCENT
+
+%token <string> ID TEMPLATE CODE
+%token <n> INT
+%type <string> nonterm cost
+%type <tree> tree
+%%
+spec : decls PPERCENT rules { yylineno = 0; }
+ | decls { yylineno = 0; }
+ ;
+
+decls : /* lambda */
+ | decls decl
+ ;
+
+decl : TERMINAL blist '\n'
+ | START nonterm '\n' {
+ if (nonterm($2)->number != 1)
+ yyerror("redeclaration of the start symbol\n");
+ }
+ | '\n'
+ | error '\n' { yyerrok; }
+ ;
+
+blist : /* lambda */
+ | blist ID '=' INT { term($2, $4); }
+ ;
+
+rules : /* lambda */
+ | rules nonterm ':' tree TEMPLATE cost '\n' { rule($2, $4, $5, $6); }
+ | rules '\n'
+ | rules error '\n' { yyerrok; }
+ ;
+
+nonterm : ID { nonterm($$ = $1); }
+ ;
+
+tree : ID { $$ = tree($1, 0, 0); }
+ | ID '(' tree ')' { $$ = tree($1, $3, 0); }
+ | ID '(' tree ',' tree ')' { $$ = tree($1, $3, $5); }
+ ;
+
+cost : CODE { if (*$1 == 0) $$ = "0"; }
+ ;
+%%
+#include <assert.h>
+#include <stdarg.h>
+#include <ctype.h>
+#include <string.h>
+#include <limits.h>
+
+int errcnt = 0;
+FILE *infp = NULL;
+FILE *outfp = NULL;
+static char buf[BUFSIZ], *bp = buf;
+static int ppercent = 0;
+static int code = 0;
+
+static int get(void) {
+ if (*bp == 0) {
+ bp = buf;
+ *bp = 0;
+ if (fgets(buf, sizeof buf, infp) == NULL)
+ return EOF;
+ yylineno++;
+ while (buf[0] == '%' && buf[1] == '{' && buf[2] == '\n') {
+ for (;;) {
+ if (fgets(buf, sizeof buf, infp) == NULL) {
+ yywarn("unterminated %{...%}\n");
+ return EOF;
+ }
+ yylineno++;
+ if (strcmp(buf, "%}\n") == 0)
+ break;
+ fputs(buf, outfp);
+ }
+ if (fgets(buf, sizeof buf, infp) == NULL)
+ return EOF;
+ yylineno++;
+ }
+ }
+ return *bp++;
+}
+
+void yyerror(char *fmt, ...) {
+ va_list ap;
+
+ va_start(ap, fmt);
+ if (yylineno > 0)
+ fprintf(stderr, "line %d: ", yylineno);
+ vfprintf(stderr, fmt, ap);
+ if (fmt[strlen(fmt)-1] != '\n')
+ fprintf(stderr, "\n");
+ errcnt++;
+ va_end(ap);
+}
+
+int yylex(void) {
+ int c;
+
+ if (code) {
+ char *p;
+ bp += strspn(bp, " \t\f");
+ p = strchr(bp, '\n');
+ if (p == NULL)
+ p = strchr(bp, '\n');
+ while (p > bp && isspace(p[-1]))
+ p--;
+ yylval.string = alloc(p - bp + 1);
+ strncpy(yylval.string, bp, p - bp);
+ yylval.string[p - bp] = 0;
+ bp = p;
+ code--;
+ return CODE;
+ }
+ while ((c = get()) != EOF) {
+ switch (c) {
+ case ' ': case '\f': case '\t':
+ continue;
+ case '\n':
+ case '(': case ')': case ',':
+ case ':': case '=':
+ return c;
+ }
+ if (c == '%' && *bp == '%') {
+ bp++;
+ return ppercent++ ? 0 : PPERCENT;
+ } else if (c == '%' && strncmp(bp, "term", 4) == 0
+ && isspace(bp[4])) {
+ bp += 4;
+ return TERMINAL;
+ } else if (c == '%' && strncmp(bp, "start", 5) == 0
+ && isspace(bp[5])) {
+ bp += 5;
+ return START;
+ } else if (c == '"') {
+ char *p = strchr(bp, '"');
+ if (p == NULL) {
+ yyerror("missing \" in assembler template\n");
+ p = strchr(bp, '\n');
+ if (p == NULL)
+ p = strchr(bp, '\0');
+ }
+ assert(p);
+ yylval.string = alloc(p - bp + 1);
+ strncpy(yylval.string, bp, p - bp);
+ yylval.string[p - bp] = 0;
+ bp = *p == '"' ? p + 1 : p;
+ code++;
+ return TEMPLATE;
+ } else if (isdigit(c)) {
+ int n = 0;
+ do {
+ int d = c - '0';
+ if (n > (INT_MAX - d)/10)
+ yyerror("integer greater than %d\n", INT_MAX);
+ else
+ n = 10*n + d;
+ c = get();
+ } while (c != EOF && isdigit(c));
+ bp--;
+ yylval.n = n;
+ return INT;
+ } else if (isalpha(c)) {
+ char *p = bp - 1;
+ while (isalpha(*bp) || isdigit(*bp) || *bp == '_')
+ bp++;
+ yylval.string = alloc(bp - p + 1);
+ strncpy(yylval.string, p, bp - p);
+ yylval.string[bp - p] = 0;
+ return ID;
+ } else if (isprint(c))
+ yyerror("invalid character `%c'\n", c);
+ else
+ yyerror("invalid character `\\%03o'\n", (unsigned char)c);
+ }
+ return 0;
+}
+
+void yywarn(char *fmt, ...) {
+ va_list ap;
+
+ va_start(ap, fmt);
+ if (yylineno > 0)
+ fprintf(stderr, "line %d: ", yylineno);
+ fprintf(stderr, "warning: ");
+ vfprintf(stderr, fmt, ap);
+}
diff --git a/lcc/lburg/lburg.1 b/lcc/lburg/lburg.1
index d633e6b..8cf7250 100755
--- a/lcc/lburg/lburg.1
+++ b/lcc/lburg/lburg.1
@@ -1,179 +1,179 @@
-.TH LBURG 1 "local \- 11/30/94"
-.\" $Id: lburg.1 145 2001-10-17 21:53:10Z timo $
-.SH NAME
-lburg \- lcc's code-generator generator
-.SH SYNOPSIS
-.B lburg
-[
-.I option
-]...
-[ [
-.I input
-]
-.I output
-]
-.br
-.SH DESCRIPTION
-.PP
-.I lburg
-reads an lcc-style BURG specification from
-.I input
-and writes a pattern-matching code generator to
-.IR output .
-If
-.I input
-is `\-' or is omitted,
-.I lburg
-reads the standard input;
-If
-.I output
-is `\-' or is omitted,
-.I lburg
-writes to the standard output.
-.PP
-.I lburg
-accepts specifications that conform to the following EBNF grammar.
-Terminals are enclosed in single quotes or are
-given in uppercase, all other symbols are nonterminals or English phrases,
-{X} denotes zero or more instances of X, and [X] denotes an optional X.
-.PP
-.nf
-.RS
-.ft CW
-spec: `%{' configuration `%}' { dcl } `%%' { rule }
- [ `%%' C code ]
-
-dcl: `%start' nonterm
- `%term' { ID `=' INT }
-
-rule: nonterm `:' tree template [ C expression ]
-
-tree: term `(' tree `,' tree `)'
- term `(' tree `)'
- term
- nonterm
-
-nonterm: ID
-
-template: `"' { any character except double quote } `"'
-.RE
-.fi
-.PP
-Specifications are structurally similar to
-.IR yacc 's.
-Text between
-`\f(CW%{\fP'
-and
-`\f(CW%}\fP'
-is called the configuration section; there may be several such segments.
-All are concatenated and copied verbatim into the head of the output.
-Text after the second
-`\f(CW%%\fP',
-if any, is also copied verbatim into the output, at the end.
-.PP
-Specifications consist of declarations, a
-`\f(CW%%\fP'
-separator, and rules.
-Input is line-oriented; each declaration and rule must appear on a separate line,
-and declarations must begin in column 1.
-Declarations declare terminals \(em the operators in subject
-trees \(em and associate a unique, positive external symbol
-number with each one.
-Nonterminals are declared by their presence
-on the left side of rules. The
-\f(CW%start\fP
-declaration optionally declares a nonterminal as the start symbol.
-In the grammar above,
-\f(CWterm\fP
-and
-\f(CWnonterm\fP
-denote identifiers that are terminals and nonterminals.
-.PP
-Rules define tree patterns in a fully parenthesized prefix
-form. Every nonterminal denotes a tree.
-Each operator has a fixed
-arity, which is inferred from the rules in which it is used.
-A chain rule is a rule whose pattern is another nonterminal.
-If no start symbol is declared, the nonterminal defined by the first rule is used.
-.PP
-Each rule ends with an expression that computes the cost of matching
-that rule; omitted costs
-default to zero. Costs of chain rules must be constants.
-.PP
-The configuration section configures the output
-for the trees being parsed and the client's environment.
-As shown, this section must define
-\f(CWNODEPTR_TYPE\fP
-to be a visible typedef symbol for a pointer to a
-node in the subject tree.
-The labeller invokes
-\f(CWOP_LABEL(p)\fP,
-\f(CWLEFT\_CHILD(p)\fP, and
-\f(CWRIGHT\_CHILD(p)\fP
-to read the operator and children from the node pointed to by \f(CWp\fP.
-If the configuration section defines these operations as macros, they are implemented in-line;
-otherwise, they must be implemented as functions.
-.PP
-The matcher
-computes and stores a single integral state in each node of the subject tree.
-The configuration section must define a macro
-\f(CWSTATE_LABEL(p)\fP
-to access the state field of the node pointed to
-by \f(CWp\fP. It must be large enough to hold a pointer, and
-a macro is required because it is used as an lvalue.
-.PP
-.SH OPTIONS
-.TP
-.BI \-p \ prefix
-.br
-.ns
-.TP
-.BI \-p prefix
-Use
-.I prefix
-as the disambiquating prefix for visible names and fields.
-The default is `\f(CW_\fP'.
-.TP
-.B \-T
-Arrange for
-.sp
-.nf
-.ft CW
- void _trace(NODEPTR_TYPE p, int eruleno,
- int cost, int bestcost);
-.sp
-.fi
-.ft R
-to be called at each successful match.
-\f(CWp\fP
-identifies the node and
-\f(CWeruleno\fP
-identifies the matching rule; the rules are numbered
-beginning at 1 in the order they appear in the input.
-\f(CWcost\fP
-is the cost of the match and
-\f(CWbestcost\fP
-is the cost of the best previous match. The current match
-wins only if
-\f(CWcost\fP
-is less than \f(CWbestcost\fP.
-32767 represents the infinite cost of no previous match.
-\f(CW_trace\fP must be declared in the configuration section.
-.SH "SEE ALSO"
-.IR lcc (1)
-.PP
-C. W. Fraser and D. R. Hanson,
-.IR A Retargetable C Compiler: Design and Implementation ,
-Benjamin/Cummings, Redwood City, CA, 1995,
-ISBN 0-8053-1670-1. Chapter 14.
-.PP
-C. W. Fraser, D. R. Hanson and T. A. Proebsting,
-`Engineering a simple, efficient code generator generator,'
-.I
-ACM Letters on Programming Languages and Systems
-.BR 1 ,
-3 (Sep. 1992), 213-226.
-.br
-.SH BUGS
-Mail bug reports along with the shortest input
-that exposes them to drh@cs.princeton.edu.
+.TH LBURG 1 "local \- 11/30/94"
+.\" $Id: lburg.1 145 2001-10-17 21:53:10Z timo $
+.SH NAME
+lburg \- lcc's code-generator generator
+.SH SYNOPSIS
+.B lburg
+[
+.I option
+]...
+[ [
+.I input
+]
+.I output
+]
+.br
+.SH DESCRIPTION
+.PP
+.I lburg
+reads an lcc-style BURG specification from
+.I input
+and writes a pattern-matching code generator to
+.IR output .
+If
+.I input
+is `\-' or is omitted,
+.I lburg
+reads the standard input;
+If
+.I output
+is `\-' or is omitted,
+.I lburg
+writes to the standard output.
+.PP
+.I lburg
+accepts specifications that conform to the following EBNF grammar.
+Terminals are enclosed in single quotes or are
+given in uppercase, all other symbols are nonterminals or English phrases,
+{X} denotes zero or more instances of X, and [X] denotes an optional X.
+.PP
+.nf
+.RS
+.ft CW
+spec: `%{' configuration `%}' { dcl } `%%' { rule }
+ [ `%%' C code ]
+
+dcl: `%start' nonterm
+ `%term' { ID `=' INT }
+
+rule: nonterm `:' tree template [ C expression ]
+
+tree: term `(' tree `,' tree `)'
+ term `(' tree `)'
+ term
+ nonterm
+
+nonterm: ID
+
+template: `"' { any character except double quote } `"'
+.RE
+.fi
+.PP
+Specifications are structurally similar to
+.IR yacc 's.
+Text between
+`\f(CW%{\fP'
+and
+`\f(CW%}\fP'
+is called the configuration section; there may be several such segments.
+All are concatenated and copied verbatim into the head of the output.
+Text after the second
+`\f(CW%%\fP',
+if any, is also copied verbatim into the output, at the end.
+.PP
+Specifications consist of declarations, a
+`\f(CW%%\fP'
+separator, and rules.
+Input is line-oriented; each declaration and rule must appear on a separate line,
+and declarations must begin in column 1.
+Declarations declare terminals \(em the operators in subject
+trees \(em and associate a unique, positive external symbol
+number with each one.
+Nonterminals are declared by their presence
+on the left side of rules. The
+\f(CW%start\fP
+declaration optionally declares a nonterminal as the start symbol.
+In the grammar above,
+\f(CWterm\fP
+and
+\f(CWnonterm\fP
+denote identifiers that are terminals and nonterminals.
+.PP
+Rules define tree patterns in a fully parenthesized prefix
+form. Every nonterminal denotes a tree.
+Each operator has a fixed
+arity, which is inferred from the rules in which it is used.
+A chain rule is a rule whose pattern is another nonterminal.
+If no start symbol is declared, the nonterminal defined by the first rule is used.
+.PP
+Each rule ends with an expression that computes the cost of matching
+that rule; omitted costs
+default to zero. Costs of chain rules must be constants.
+.PP
+The configuration section configures the output
+for the trees being parsed and the client's environment.
+As shown, this section must define
+\f(CWNODEPTR_TYPE\fP
+to be a visible typedef symbol for a pointer to a
+node in the subject tree.
+The labeller invokes
+\f(CWOP_LABEL(p)\fP,
+\f(CWLEFT\_CHILD(p)\fP, and
+\f(CWRIGHT\_CHILD(p)\fP
+to read the operator and children from the node pointed to by \f(CWp\fP.
+If the configuration section defines these operations as macros, they are implemented in-line;
+otherwise, they must be implemented as functions.
+.PP
+The matcher
+computes and stores a single integral state in each node of the subject tree.
+The configuration section must define a macro
+\f(CWSTATE_LABEL(p)\fP
+to access the state field of the node pointed to
+by \f(CWp\fP. It must be large enough to hold a pointer, and
+a macro is required because it is used as an lvalue.
+.PP
+.SH OPTIONS
+.TP
+.BI \-p \ prefix
+.br
+.ns
+.TP
+.BI \-p prefix
+Use
+.I prefix
+as the disambiquating prefix for visible names and fields.
+The default is `\f(CW_\fP'.
+.TP
+.B \-T
+Arrange for
+.sp
+.nf
+.ft CW
+ void _trace(NODEPTR_TYPE p, int eruleno,
+ int cost, int bestcost);
+.sp
+.fi
+.ft R
+to be called at each successful match.
+\f(CWp\fP
+identifies the node and
+\f(CWeruleno\fP
+identifies the matching rule; the rules are numbered
+beginning at 1 in the order they appear in the input.
+\f(CWcost\fP
+is the cost of the match and
+\f(CWbestcost\fP
+is the cost of the best previous match. The current match
+wins only if
+\f(CWcost\fP
+is less than \f(CWbestcost\fP.
+32767 represents the infinite cost of no previous match.
+\f(CW_trace\fP must be declared in the configuration section.
+.SH "SEE ALSO"
+.IR lcc (1)
+.PP
+C. W. Fraser and D. R. Hanson,
+.IR A Retargetable C Compiler: Design and Implementation ,
+Benjamin/Cummings, Redwood City, CA, 1995,
+ISBN 0-8053-1670-1. Chapter 14.
+.PP
+C. W. Fraser, D. R. Hanson and T. A. Proebsting,
+`Engineering a simple, efficient code generator generator,'
+.I
+ACM Letters on Programming Languages and Systems
+.BR 1 ,
+3 (Sep. 1992), 213-226.
+.br
+.SH BUGS
+Mail bug reports along with the shortest input
+that exposes them to drh@cs.princeton.edu.
diff --git a/lcc/lburg/lburg.c b/lcc/lburg/lburg.c
index a34e4e7..c43c96a 100755
--- a/lcc/lburg/lburg.c
+++ b/lcc/lburg/lburg.c
@@ -1,671 +1,671 @@
-#include <assert.h>
-#include <ctype.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <time.h>
-#include "lburg.h"
-
-static char rcsid[] = "lburg.c - faked rcsid";
-
-static char *prefix = "";
-static int Tflag = 0;
-static int ntnumber = 0;
-static Nonterm start = 0;
-static Term terms;
-static Nonterm nts;
-static Rule rules;
-static int nrules;
-static struct block {
- struct block *link;
-} *memlist; /* list of allocated blocks */
-
-static char *stringf(char *fmt, ...);
-static void print(char *fmt, ...);
-static void ckreach(Nonterm p);
-static void emitclosure(Nonterm nts);
-static void emitcost(Tree t, char *v);
-static void emitdefs(Nonterm nts, int ntnumber);
-static void emitheader(void);
-static void emitkids(Rule rules, int nrules);
-static void emitnts(Rule rules, int nrules);
-static void emitrecalc(char *pre, Term root, Term kid);
-static void emitrecord(char *pre, Rule r, char *c, int cost);
-static void emitrule(Nonterm nts);
-static void emitlabel(Term terms, Nonterm start, int ntnumber);
-static void emitstring(Rule rules);
-static void emitstruct(Nonterm nts, int ntnumber);
-static void emittest(Tree t, char *v, char *suffix);
-
-int main(int argc, char *argv[]) {
- int c, i;
- Nonterm p;
-
- for (i = 1; i < argc; i++)
- if (strcmp(argv[i], "-T") == 0)
- Tflag = 1;
- else if (strncmp(argv[i], "-p", 2) == 0 && argv[i][2])
- prefix = &argv[i][2];
- else if (strncmp(argv[i], "-p", 2) == 0 && i + 1 < argc)
- prefix = argv[++i];
- else if (*argv[i] == '-' && argv[i][1]) {
- yyerror("usage: %s [-T | -p prefix]... [ [ input ] output ] \n",
- argv[0]);
- exit(1);
- } else if (infp == NULL) {
- if (strcmp(argv[i], "-") == 0)
- infp = stdin;
- else if ((infp = fopen(argv[i], "r")) == NULL) {
- yyerror("%s: can't read `%s'\n", argv[0], argv[i]);
- exit(1);
- }
- } else if (outfp == NULL) {
- if (strcmp(argv[i], "-") == 0)
- outfp = stdout;
- if ((outfp = fopen(argv[i], "w")) == NULL) {
- yyerror("%s: can't write `%s'\n", argv[0], argv[i]);
- exit(1);
- }
- }
- if (infp == NULL)
- infp = stdin;
- if (outfp == NULL)
- outfp = stdout;
- yyparse();
- if (start)
- ckreach(start);
- for (p = nts; p; p = p->link) {
- if (p->rules == NULL)
- yyerror("undefined nonterminal `%s'\n", p->name);
- if (!p->reached)
- yyerror("can't reach nonterminal `%s'\n", p->name);
- }
- emitheader();
- emitdefs(nts, ntnumber);
- emitstruct(nts, ntnumber);
- emitnts(rules, nrules);
- emitstring(rules);
- emitrule(nts);
- emitclosure(nts);
- if (start)
- emitlabel(terms, start, ntnumber);
- emitkids(rules, nrules);
- if (!feof(infp))
- while ((c = getc(infp)) != EOF)
- putc(c, outfp);
- while (memlist) { /* for purify */
- struct block *q = memlist->link;
- free(memlist);
- memlist = q;
- }
- return errcnt > 0;
-}
-
-/* alloc - allocate nbytes or issue fatal error */
-void *alloc(int nbytes) {
- struct block *p = calloc(1, sizeof *p + nbytes);
-
- if (p == NULL) {
- yyerror("out of memory\n");
- exit(1);
- }
- p->link = memlist;
- memlist = p;
- return p + 1;
-}
-
-/* stringf - format and save a string */
-static char *stringf(char *fmt, ...) {
- va_list ap;
- char buf[512];
-
- va_start(ap, fmt);
- vsprintf(buf, fmt, ap);
- va_end(ap);
- return strcpy(alloc(strlen(buf) + 1), buf);
-}
-
-struct entry {
- union {
- char *name;
- struct term t;
- struct nonterm nt;
- } sym;
- struct entry *link;
-} *table[211];
-#define HASHSIZE (sizeof table/sizeof table[0])
-
-/* hash - return hash number for str */
-static unsigned hash(char *str) {
- unsigned h = 0;
-
- while (*str)
- h = (h<<1) + *str++;
- return h;
-}
-
-/* lookup - lookup symbol name */
-static void *lookup(char *name) {
- struct entry *p = table[hash(name)%HASHSIZE];
-
- for ( ; p; p = p->link)
- if (strcmp(name, p->sym.name) == 0)
- return &p->sym;
- return 0;
-}
-
-/* install - install symbol name */
-static void *install(char *name) {
- struct entry *p = alloc(sizeof *p);
- int i = hash(name)%HASHSIZE;
-
- p->sym.name = name;
- p->link = table[i];
- table[i] = p;
- return &p->sym;
-}
-
-/* nonterm - create a new terminal id, if necessary */
-Nonterm nonterm(char *id) {
- Nonterm p = lookup(id), *q = &nts;
-
- if (p && p->kind == NONTERM)
- return p;
- if (p && p->kind == TERM)
- yyerror("`%s' is a terminal\n", id);
- p = install(id);
- p->kind = NONTERM;
- p->number = ++ntnumber;
- if (p->number == 1)
- start = p;
- while (*q && (*q)->number < p->number)
- q = &(*q)->link;
- assert(*q == 0 || (*q)->number != p->number);
- p->link = *q;
- *q = p;
- return p;
-}
-
-/* term - create a new terminal id with external symbol number esn */
-Term term(char *id, int esn) {
- Term p = lookup(id), *q = &terms;
-
- if (p)
- yyerror("redefinition of terminal `%s'\n", id);
- else
- p = install(id);
- p->kind = TERM;
- p->esn = esn;
- p->arity = -1;
- while (*q && (*q)->esn < p->esn)
- q = &(*q)->link;
- if (*q && (*q)->esn == p->esn)
- yyerror("duplicate external symbol number `%s=%d'\n",
- p->name, p->esn);
- p->link = *q;
- *q = p;
- return p;
-}
-
-/* tree - create & initialize a tree node with the given fields */
-Tree tree(char *id, Tree left, Tree right) {
- Tree t = alloc(sizeof *t);
- Term p = lookup(id);
- int arity = 0;
-
- if (left && right)
- arity = 2;
- else if (left)
- arity = 1;
- if (p == NULL && arity > 0) {
- yyerror("undefined terminal `%s'\n", id);
- p = term(id, -1);
- } else if (p == NULL && arity == 0)
- p = (Term)nonterm(id);
- else if (p && p->kind == NONTERM && arity > 0) {
- yyerror("`%s' is a nonterminal\n", id);
- p = term(id, -1);
- }
- if (p->kind == TERM && p->arity == -1)
- p->arity = arity;
- if (p->kind == TERM && arity != p->arity)
- yyerror("inconsistent arity for terminal `%s'\n", id);
- t->op = p;
- t->nterms = p->kind == TERM;
- if ((t->left = left) != NULL)
- t->nterms += left->nterms;
- if ((t->right = right) != NULL)
- t->nterms += right->nterms;
- return t;
-}
-
-/* rule - create & initialize a rule with the given fields */
-Rule rule(char *id, Tree pattern, char *template, char *code) {
- Rule r = alloc(sizeof *r), *q;
- Term p = pattern->op;
- char *end;
-
- r->lhs = nonterm(id);
- r->packed = ++r->lhs->lhscount;
- for (q = &r->lhs->rules; *q; q = &(*q)->decode)
- ;
- *q = r;
- r->pattern = pattern;
- r->ern = ++nrules;
- r->template = template;
- r->code = code;
- r->cost = strtol(code, &end, 10);
- if (*end) {
- r->cost = -1;
- r->code = stringf("(%s)", code);
- }
- if (p->kind == TERM) {
- for (q = &p->rules; *q; q = &(*q)->next)
- ;
- *q = r;
- } else if (pattern->left == NULL && pattern->right == NULL) {
- Nonterm p = pattern->op;
- r->chain = p->chain;
- p->chain = r;
- if (r->cost == -1)
- yyerror("illegal nonconstant cost `%s'\n", code);
- }
- for (q = &rules; *q; q = &(*q)->link)
- ;
- r->link = *q;
- *q = r;
- return r;
-}
-
-/* print - formatted output */
-static void print(char *fmt, ...) {
- va_list ap;
-
- va_start(ap, fmt);
- for ( ; *fmt; fmt++)
- if (*fmt == '%')
- switch (*++fmt) {
- case 'd': fprintf(outfp, "%d", va_arg(ap, int)); break;
- case 's': fputs(va_arg(ap, char *), outfp); break;
- case 'P': fprintf(outfp, "%s_", prefix); break;
- case 'T': {
- Tree t = va_arg(ap, Tree);
- print("%S", t->op);
- if (t->left && t->right)
- print("(%T,%T)", t->left, t->right);
- else if (t->left)
- print("(%T)", t->left);
- break;
- }
- case 'R': {
- Rule r = va_arg(ap, Rule);
- print("%S: %T", r->lhs, r->pattern);
- break;
- }
- case 'S': fputs(va_arg(ap, Term)->name, outfp); break;
- case '1': case '2': case '3': case '4': case '5': {
- int n = *fmt - '0';
- while (n-- > 0)
- putc('\t', outfp);
- break;
- }
- default: putc(*fmt, outfp); break;
- }
- else
- putc(*fmt, outfp);
- va_end(ap);
-}
-
-/* reach - mark all nonterminals in tree t as reachable */
-static void reach(Tree t) {
- Nonterm p = t->op;
-
- if (p->kind == NONTERM)
- if (!p->reached)
- ckreach(p);
- if (t->left)
- reach(t->left);
- if (t->right)
- reach(t->right);
-}
-
-/* ckreach - mark all nonterminals reachable from p */
-static void ckreach(Nonterm p) {
- Rule r;
-
- p->reached = 1;
- for (r = p->rules; r; r = r->decode)
- reach(r->pattern);
-}
-
-/* emitcase - emit one case in function state */
-static void emitcase(Term p, int ntnumber) {
- Rule r;
-
- print("%1case %d: /* %S */\n", p->esn, p);
- switch (p->arity) {
- case 0: case -1:
- break;
- case 1:
- print("%2%Plabel(LEFT_CHILD(a));\n");
- break;
- case 2:
- print("%2%Plabel(LEFT_CHILD(a));\n");
- print("%2%Plabel(RIGHT_CHILD(a));\n");
- break;
- default: assert(0);
- }
- for (r = p->rules; r; r = r->next) {
- char *indent = "\t\t\0";
- switch (p->arity) {
- case 0: case -1:
- print("%2/* %R */\n", r);
- if (r->cost == -1) {
- print("%2c = %s;\n", r->code);
- emitrecord("\t\t", r, "c", 0);
- } else
- emitrecord("\t\t", r, r->code, 0);
- break;
- case 1:
- if (r->pattern->nterms > 1) {
- print("%2if (%1/* %R */\n", r);
- emittest(r->pattern->left, "LEFT_CHILD(a)", " ");
- print("%2) {\n");
- indent = "\t\t\t";
- } else
- print("%2/* %R */\n", r);
- if (r->pattern->nterms == 2 && r->pattern->left
- && r->pattern->right == NULL)
- emitrecalc(indent, r->pattern->op, r->pattern->left->op);
- print("%sc = ", indent);
- emitcost(r->pattern->left, "LEFT_CHILD(a)");
- print("%s;\n", r->code);
- emitrecord(indent, r, "c", 0);
- if (indent[2])
- print("%2}\n");
- break;
- case 2:
- if (r->pattern->nterms > 1) {
- print("%2if (%1/* %R */\n", r);
- emittest(r->pattern->left, "LEFT_CHILD(a)",
- r->pattern->right->nterms ? " && " : " ");
- emittest(r->pattern->right, "RIGHT_CHILD(a)", " ");
- print("%2) {\n");
- indent = "\t\t\t";
- } else
- print("%2/* %R */\n", r);
- print("%sc = ", indent);
- emitcost(r->pattern->left, "LEFT_CHILD(a)");
- emitcost(r->pattern->right, "RIGHT_CHILD(a)");
- print("%s;\n", r->code);
- emitrecord(indent, r, "c", 0);
- if (indent[2])
- print("%2}\n");
- break;
- default: assert(0);
- }
- }
- print("%2break;\n");
-}
-
-/* emitclosure - emit the closure functions */
-static void emitclosure(Nonterm nts) {
- Nonterm p;
-
- for (p = nts; p; p = p->link)
- if (p->chain)
- print("static void %Pclosure_%S(NODEPTR_TYPE, int);\n", p);
- print("\n");
- for (p = nts; p; p = p->link)
- if (p->chain) {
- Rule r;
- print("static void %Pclosure_%S(NODEPTR_TYPE a, int c) {\n"
-"%1struct %Pstate *p = STATE_LABEL(a);\n", p);
- for (r = p->chain; r; r = r->chain)
- emitrecord("\t", r, "c", r->cost);
- print("}\n\n");
- }
-}
-
-/* emitcost - emit cost computation for tree t */
-static void emitcost(Tree t, char *v) {
- Nonterm p = t->op;
-
- if (p->kind == TERM) {
- if (t->left)
- emitcost(t->left, stringf("LEFT_CHILD(%s)", v));
- if (t->right)
- emitcost(t->right, stringf("RIGHT_CHILD(%s)", v));
- } else
- print("((struct %Pstate *)(%s->x.state))->cost[%P%S_NT] + ", v, p);
-}
-
-/* emitdefs - emit nonterminal defines and data structures */
-static void emitdefs(Nonterm nts, int ntnumber) {
- Nonterm p;
-
- for (p = nts; p; p = p->link)
- print("#define %P%S_NT %d\n", p, p->number);
- print("\n");
- print("static char *%Pntname[] = {\n%10,\n");
- for (p = nts; p; p = p->link)
- print("%1\"%S\",\n", p);
- print("%10\n};\n\n");
-}
-
-/* emitheader - emit initial definitions */
-static void emitheader(void) {
- time_t timer = time(NULL);
-
- print("/*\ngenerated at %sby %s\n*/\n", ctime(&timer), rcsid);
- print("static void %Pkids(NODEPTR_TYPE, int, NODEPTR_TYPE[]);\n");
- print("static void %Plabel(NODEPTR_TYPE);\n");
- print("static int %Prule(void*, int);\n\n");
-}
-
-/* computekids - compute paths to kids in tree t */
-static char *computekids(Tree t, char *v, char *bp, int *ip) {
- Term p = t->op;
-
- if (p->kind == NONTERM) {
- sprintf(bp, "\t\tkids[%d] = %s;\n", (*ip)++, v);
- bp += strlen(bp);
- } else if (p->arity > 0) {
- bp = computekids(t->left, stringf("LEFT_CHILD(%s)", v), bp, ip);
- if (p->arity == 2)
- bp = computekids(t->right, stringf("RIGHT_CHILD(%s)", v), bp, ip);
- }
- return bp;
-}
-
-/* emitkids - emit _kids */
-static void emitkids(Rule rules, int nrules) {
- int i;
- Rule r, *rc = alloc((nrules + 1 + 1)*sizeof *rc);
- char **str = alloc((nrules + 1 + 1)*sizeof *str);
-
- for (i = 0, r = rules; r; r = r->link) {
- int j = 0;
- char buf[1024], *bp = buf;
- *computekids(r->pattern, "p", bp, &j) = 0;
- for (j = 0; str[j] && strcmp(str[j], buf); j++)
- ;
- if (str[j] == NULL)
- str[j] = strcpy(alloc(strlen(buf) + 1), buf);
- r->kids = rc[j];
- rc[j] = r;
- }
- print("static void %Pkids(NODEPTR_TYPE p, int eruleno, NODEPTR_TYPE kids[]) {\n"
-"%1if (!p)\n%2fatal(\"%Pkids\", \"Null tree\\n\", 0);\n"
-"%1if (!kids)\n%2fatal(\"%Pkids\", \"Null kids\\n\", 0);\n"
-"%1switch (eruleno) {\n");
- for (i = 0; (r = rc[i]) != NULL; i++) {
- for ( ; r; r = r->kids)
- print("%1case %d: /* %R */\n", r->ern, r);
- print("%s%2break;\n", str[i]);
- }
- print("%1default:\n%2fatal(\"%Pkids\", \"Bad rule number %%d\\n\", eruleno);\n%1}\n}\n\n");
-}
-
-/* emitlabel - emit label function */
-static void emitlabel(Term terms, Nonterm start, int ntnumber) {
- int i;
- Term p;
-
- print("static void %Plabel(NODEPTR_TYPE a) {\n%1int c;\n"
-"%1struct %Pstate *p;\n\n"
-"%1if (!a)\n%2fatal(\"%Plabel\", \"Null tree\\n\", 0);\n");
- print("%1STATE_LABEL(a) = p = allocate(sizeof *p, FUNC);\n"
-"%1p->rule._stmt = 0;\n");
- for (i = 1; i <= ntnumber; i++)
- print("%1p->cost[%d] =\n", i);
- print("%20x7fff;\n%1switch (OP_LABEL(a)) {\n");
- for (p = terms; p; p = p->link)
- emitcase(p, ntnumber);
- print("%1default:\n"
-"%2fatal(\"%Plabel\", \"Bad terminal %%d\\n\", OP_LABEL(a));\n%1}\n}\n\n");
-}
-
-/* computents - fill in bp with _nts vector for tree t */
-static char *computents(Tree t, char *bp) {
- if (t) {
- Nonterm p = t->op;
- if (p->kind == NONTERM) {
- sprintf(bp, "%s_%s_NT, ", prefix, p->name);
- bp += strlen(bp);
- } else
- bp = computents(t->right, computents(t->left, bp));
- }
- return bp;
-}
-
-/* emitnts - emit _nts ragged array */
-static void emitnts(Rule rules, int nrules) {
- Rule r;
- int i, j, *nts = alloc((nrules + 1)*sizeof *nts);
- char **str = alloc((nrules + 1)*sizeof *str);
-
- for (i = 0, r = rules; r; r = r->link) {
- char buf[1024];
- *computents(r->pattern, buf) = 0;
- for (j = 0; str[j] && strcmp(str[j], buf); j++)
- ;
- if (str[j] == NULL) {
- print("static short %Pnts_%d[] = { %s0 };\n", j, buf);
- str[j] = strcpy(alloc(strlen(buf) + 1), buf);
- }
- nts[i++] = j;
- }
- print("\nstatic short *%Pnts[] = {\n");
- for (i = j = 0, r = rules; r; r = r->link) {
- for ( ; j < r->ern; j++)
- print("%10,%1/* %d */\n", j);
- print("%1%Pnts_%d,%1/* %d */\n", nts[i++], j++);
- }
- print("};\n\n");
-}
-
-/* emitrecalc - emit code that tests for recalculation of INDIR?(VREGP) */
-static void emitrecalc(char *pre, Term root, Term kid) {
- if (root->kind == TERM && strncmp(root->name, "INDIR", 5) == 0
- && kid->kind == TERM && strcmp(kid->name, "VREGP" ) == 0) {
- Nonterm p;
- print("%sif (mayrecalc(a)) {\n", pre);
- print("%s%1struct %Pstate *q = a->syms[RX]->u.t.cse->x.state;\n", pre);
- for (p = nts; p; p = p->link) {
- print("%s%1if (q->cost[%P%S_NT] == 0) {\n", pre, p);
- print("%s%2p->cost[%P%S_NT] = 0;\n", pre, p);
- print("%s%2p->rule.%P%S = q->rule.%P%S;\n", pre, p, p);
- print("%s%1}\n", pre);
- }
- print("%s}\n", pre);
- }
-}
-
-/* emitrecord - emit code that tests for a winning match of rule r */
-static void emitrecord(char *pre, Rule r, char *c, int cost) {
- if (Tflag)
- print("%s%Ptrace(a, %d, %s + %d, p->cost[%P%S_NT]);\n",
- pre, r->ern, c, cost, r->lhs);
- print("%sif (", pre);
- print("%s + %d < p->cost[%P%S_NT]) {\n"
-"%s%1p->cost[%P%S_NT] = %s + %d;\n%s%1p->rule.%P%S = %d;\n",
- c, cost, r->lhs, pre, r->lhs, c, cost, pre, r->lhs,
- r->packed);
- if (r->lhs->chain)
- print("%s%1%Pclosure_%S(a, %s + %d);\n", pre, r->lhs, c, cost);
- print("%s}\n", pre);
-}
-
-/* emitrule - emit decoding vectors and _rule */
-static void emitrule(Nonterm nts) {
- Nonterm p;
-
- for (p = nts; p; p = p->link) {
- Rule r;
- print("static short %Pdecode_%S[] = {\n%10,\n", p);
- for (r = p->rules; r; r = r->decode)
- print("%1%d,\n", r->ern);
- print("};\n\n");
- }
- print("static int %Prule(void *state, int goalnt) {\n"
-"%1if (goalnt < 1 || goalnt > %d)\n%2fatal(\"%Prule\", \"Bad goal nonterminal %%d\\n\", goalnt);\n"
-"%1if (!state)\n%2return 0;\n%1switch (goalnt) {\n", ntnumber);
- for (p = nts; p; p = p->link)
- print("%1case %P%S_NT:"
-"%1return %Pdecode_%S[((struct %Pstate *)state)->rule.%P%S];\n", p, p, p);
- print("%1default:\n%2fatal(\"%Prule\", \"Bad goal nonterminal %%d\\n\", goalnt);\n%2return 0;\n%1}\n}\n\n");
-}
-
-/* emitstring - emit arrays of templates, instruction flags, and rules */
-static void emitstring(Rule rules) {
- Rule r;
-
- print("static char *%Ptemplates[] = {\n");
- print("/* 0 */%10,\n");
- for (r = rules; r; r = r->link)
- print("/* %d */%1\"%s\",%1/* %R */\n", r->ern, r->template, r);
- print("};\n");
- print("\nstatic char %Pisinstruction[] = {\n");
- print("/* 0 */%10,\n");
- for (r = rules; r; r = r->link) {
- int len = strlen(r->template);
- print("/* %d */%1%d,%1/* %s */\n", r->ern,
- len >= 2 && r->template[len-2] == '\\' && r->template[len-1] == 'n',
- r->template);
- }
- print("};\n");
- print("\nstatic char *%Pstring[] = {\n");
- print("/* 0 */%10,\n");
- for (r = rules; r; r = r->link)
- print("/* %d */%1\"%R\",\n", r->ern, r);
- print("};\n\n");
-}
-
-/* emitstruct - emit the definition of the state structure */
-static void emitstruct(Nonterm nts, int ntnumber) {
- print("struct %Pstate {\n%1short cost[%d];\n%1struct {\n", ntnumber + 1);
- for ( ; nts; nts = nts->link) {
- int n = 1, m = nts->lhscount;
- while ((m >>= 1) != 0)
- n++;
- print("%2unsigned int %P%S:%d;\n", nts, n);
- }
- print("%1} rule;\n};\n\n");
-}
-
-/* emittest - emit clause for testing a match */
-static void emittest(Tree t, char *v, char *suffix) {
- Term p = t->op;
-
- if (p->kind == TERM) {
- print("%3%s->op == %d%s/* %S */\n", v, p->esn,
- t->nterms > 1 ? " && " : suffix, p);
- if (t->left)
- emittest(t->left, stringf("LEFT_CHILD(%s)", v),
- t->right && t->right->nterms ? " && " : suffix);
- if (t->right)
- emittest(t->right, stringf("RIGHT_CHILD(%s)", v), suffix);
- }
-}
+#include <assert.h>
+#include <ctype.h>
+#include <stdarg.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <time.h>
+#include "lburg.h"
+
+static char rcsid[] = "lburg.c - faked rcsid";
+
+static char *prefix = "";
+static int Tflag = 0;
+static int ntnumber = 0;
+static Nonterm start = 0;
+static Term terms;
+static Nonterm nts;
+static Rule rules;
+static int nrules;
+static struct block {
+ struct block *link;
+} *memlist; /* list of allocated blocks */
+
+static char *stringf(char *fmt, ...);
+static void print(char *fmt, ...);
+static void ckreach(Nonterm p);
+static void emitclosure(Nonterm nts);
+static void emitcost(Tree t, char *v);
+static void emitdefs(Nonterm nts, int ntnumber);
+static void emitheader(void);
+static void emitkids(Rule rules, int nrules);
+static void emitnts(Rule rules, int nrules);
+static void emitrecalc(char *pre, Term root, Term kid);
+static void emitrecord(char *pre, Rule r, char *c, int cost);
+static void emitrule(Nonterm nts);
+static void emitlabel(Term terms, Nonterm start, int ntnumber);
+static void emitstring(Rule rules);
+static void emitstruct(Nonterm nts, int ntnumber);
+static void emittest(Tree t, char *v, char *suffix);
+
+int main(int argc, char *argv[]) {
+ int c, i;
+ Nonterm p;
+
+ for (i = 1; i < argc; i++)
+ if (strcmp(argv[i], "-T") == 0)
+ Tflag = 1;
+ else if (strncmp(argv[i], "-p", 2) == 0 && argv[i][2])
+ prefix = &argv[i][2];
+ else if (strncmp(argv[i], "-p", 2) == 0 && i + 1 < argc)
+ prefix = argv[++i];
+ else if (*argv[i] == '-' && argv[i][1]) {
+ yyerror("usage: %s [-T | -p prefix]... [ [ input ] output ] \n",
+ argv[0]);
+ exit(1);
+ } else if (infp == NULL) {
+ if (strcmp(argv[i], "-") == 0)
+ infp = stdin;
+ else if ((infp = fopen(argv[i], "r")) == NULL) {
+ yyerror("%s: can't read `%s'\n", argv[0], argv[i]);
+ exit(1);
+ }
+ } else if (outfp == NULL) {
+ if (strcmp(argv[i], "-") == 0)
+ outfp = stdout;
+ if ((outfp = fopen(argv[i], "w")) == NULL) {
+ yyerror("%s: can't write `%s'\n", argv[0], argv[i]);
+ exit(1);
+ }
+ }
+ if (infp == NULL)
+ infp = stdin;
+ if (outfp == NULL)
+ outfp = stdout;
+ yyparse();
+ if (start)
+ ckreach(start);
+ for (p = nts; p; p = p->link) {
+ if (p->rules == NULL)
+ yyerror("undefined nonterminal `%s'\n", p->name);
+ if (!p->reached)
+ yyerror("can't reach nonterminal `%s'\n", p->name);
+ }
+ emitheader();
+ emitdefs(nts, ntnumber);
+ emitstruct(nts, ntnumber);
+ emitnts(rules, nrules);
+ emitstring(rules);
+ emitrule(nts);
+ emitclosure(nts);
+ if (start)
+ emitlabel(terms, start, ntnumber);
+ emitkids(rules, nrules);
+ if (!feof(infp))
+ while ((c = getc(infp)) != EOF)
+ putc(c, outfp);
+ while (memlist) { /* for purify */
+ struct block *q = memlist->link;
+ free(memlist);
+ memlist = q;
+ }
+ return errcnt > 0;
+}
+
+/* alloc - allocate nbytes or issue fatal error */
+void *alloc(int nbytes) {
+ struct block *p = calloc(1, sizeof *p + nbytes);
+
+ if (p == NULL) {
+ yyerror("out of memory\n");
+ exit(1);
+ }
+ p->link = memlist;
+ memlist = p;
+ return p + 1;
+}
+
+/* stringf - format and save a string */
+static char *stringf(char *fmt, ...) {
+ va_list ap;
+ char buf[512];
+
+ va_start(ap, fmt);
+ vsprintf(buf, fmt, ap);
+ va_end(ap);
+ return strcpy(alloc(strlen(buf) + 1), buf);
+}
+
+struct entry {
+ union {
+ char *name;
+ struct term t;
+ struct nonterm nt;
+ } sym;
+ struct entry *link;
+} *table[211];
+#define HASHSIZE (sizeof table/sizeof table[0])
+
+/* hash - return hash number for str */
+static unsigned hash(char *str) {
+ unsigned h = 0;
+
+ while (*str)
+ h = (h<<1) + *str++;
+ return h;
+}
+
+/* lookup - lookup symbol name */
+static void *lookup(char *name) {
+ struct entry *p = table[hash(name)%HASHSIZE];
+
+ for ( ; p; p = p->link)
+ if (strcmp(name, p->sym.name) == 0)
+ return &p->sym;
+ return 0;
+}
+
+/* install - install symbol name */
+static void *install(char *name) {
+ struct entry *p = alloc(sizeof *p);
+ int i = hash(name)%HASHSIZE;
+
+ p->sym.name = name;
+ p->link = table[i];
+ table[i] = p;
+ return &p->sym;
+}
+
+/* nonterm - create a new terminal id, if necessary */
+Nonterm nonterm(char *id) {
+ Nonterm p = lookup(id), *q = &nts;
+
+ if (p && p->kind == NONTERM)
+ return p;
+ if (p && p->kind == TERM)
+ yyerror("`%s' is a terminal\n", id);
+ p = install(id);
+ p->kind = NONTERM;
+ p->number = ++ntnumber;
+ if (p->number == 1)
+ start = p;
+ while (*q && (*q)->number < p->number)
+ q = &(*q)->link;
+ assert(*q == 0 || (*q)->number != p->number);
+ p->link = *q;
+ *q = p;
+ return p;
+}
+
+/* term - create a new terminal id with external symbol number esn */
+Term term(char *id, int esn) {
+ Term p = lookup(id), *q = &terms;
+
+ if (p)
+ yyerror("redefinition of terminal `%s'\n", id);
+ else
+ p = install(id);
+ p->kind = TERM;
+ p->esn = esn;
+ p->arity = -1;
+ while (*q && (*q)->esn < p->esn)
+ q = &(*q)->link;
+ if (*q && (*q)->esn == p->esn)
+ yyerror("duplicate external symbol number `%s=%d'\n",
+ p->name, p->esn);
+ p->link = *q;
+ *q = p;
+ return p;
+}
+
+/* tree - create & initialize a tree node with the given fields */
+Tree tree(char *id, Tree left, Tree right) {
+ Tree t = alloc(sizeof *t);
+ Term p = lookup(id);
+ int arity = 0;
+
+ if (left && right)
+ arity = 2;
+ else if (left)
+ arity = 1;
+ if (p == NULL && arity > 0) {
+ yyerror("undefined terminal `%s'\n", id);
+ p = term(id, -1);
+ } else if (p == NULL && arity == 0)
+ p = (Term)nonterm(id);
+ else if (p && p->kind == NONTERM && arity > 0) {
+ yyerror("`%s' is a nonterminal\n", id);
+ p = term(id, -1);
+ }
+ if (p->kind == TERM && p->arity == -1)
+ p->arity = arity;
+ if (p->kind == TERM && arity != p->arity)
+ yyerror("inconsistent arity for terminal `%s'\n", id);
+ t->op = p;
+ t->nterms = p->kind == TERM;
+ if ((t->left = left) != NULL)
+ t->nterms += left->nterms;
+ if ((t->right = right) != NULL)
+ t->nterms += right->nterms;
+ return t;
+}
+
+/* rule - create & initialize a rule with the given fields */
+Rule rule(char *id, Tree pattern, char *template, char *code) {
+ Rule r = alloc(sizeof *r), *q;
+ Term p = pattern->op;
+ char *end;
+
+ r->lhs = nonterm(id);
+ r->packed = ++r->lhs->lhscount;
+ for (q = &r->lhs->rules; *q; q = &(*q)->decode)
+ ;
+ *q = r;
+ r->pattern = pattern;
+ r->ern = ++nrules;
+ r->template = template;
+ r->code = code;
+ r->cost = strtol(code, &end, 10);
+ if (*end) {
+ r->cost = -1;
+ r->code = stringf("(%s)", code);
+ }
+ if (p->kind == TERM) {
+ for (q = &p->rules; *q; q = &(*q)->next)
+ ;
+ *q = r;
+ } else if (pattern->left == NULL && pattern->right == NULL) {
+ Nonterm p = pattern->op;
+ r->chain = p->chain;
+ p->chain = r;
+ if (r->cost == -1)
+ yyerror("illegal nonconstant cost `%s'\n", code);
+ }
+ for (q = &rules; *q; q = &(*q)->link)
+ ;
+ r->link = *q;
+ *q = r;
+ return r;
+}
+
+/* print - formatted output */
+static void print(char *fmt, ...) {
+ va_list ap;
+
+ va_start(ap, fmt);
+ for ( ; *fmt; fmt++)
+ if (*fmt == '%')
+ switch (*++fmt) {
+ case 'd': fprintf(outfp, "%d", va_arg(ap, int)); break;
+ case 's': fputs(va_arg(ap, char *), outfp); break;
+ case 'P': fprintf(outfp, "%s_", prefix); break;
+ case 'T': {
+ Tree t = va_arg(ap, Tree);
+ print("%S", t->op);
+ if (t->left && t->right)
+ print("(%T,%T)", t->left, t->right);
+ else if (t->left)
+ print("(%T)", t->left);
+ break;
+ }
+ case 'R': {
+ Rule r = va_arg(ap, Rule);
+ print("%S: %T", r->lhs, r->pattern);
+ break;
+ }
+ case 'S': fputs(va_arg(ap, Term)->name, outfp); break;
+ case '1': case '2': case '3': case '4': case '5': {
+ int n = *fmt - '0';
+ while (n-- > 0)
+ putc('\t', outfp);
+ break;
+ }
+ default: putc(*fmt, outfp); break;
+ }
+ else
+ putc(*fmt, outfp);
+ va_end(ap);
+}
+
+/* reach - mark all nonterminals in tree t as reachable */
+static void reach(Tree t) {
+ Nonterm p = t->op;
+
+ if (p->kind == NONTERM)
+ if (!p->reached)
+ ckreach(p);
+ if (t->left)
+ reach(t->left);
+ if (t->right)
+ reach(t->right);
+}
+
+/* ckreach - mark all nonterminals reachable from p */
+static void ckreach(Nonterm p) {
+ Rule r;
+
+ p->reached = 1;
+ for (r = p->rules; r; r = r->decode)
+ reach(r->pattern);
+}
+
+/* emitcase - emit one case in function state */
+static void emitcase(Term p, int ntnumber) {
+ Rule r;
+
+ print("%1case %d: /* %S */\n", p->esn, p);
+ switch (p->arity) {
+ case 0: case -1:
+ break;
+ case 1:
+ print("%2%Plabel(LEFT_CHILD(a));\n");
+ break;
+ case 2:
+ print("%2%Plabel(LEFT_CHILD(a));\n");
+ print("%2%Plabel(RIGHT_CHILD(a));\n");
+ break;
+ default: assert(0);
+ }
+ for (r = p->rules; r; r = r->next) {
+ char *indent = "\t\t\0";
+ switch (p->arity) {
+ case 0: case -1:
+ print("%2/* %R */\n", r);
+ if (r->cost == -1) {
+ print("%2c = %s;\n", r->code);
+ emitrecord("\t\t", r, "c", 0);
+ } else
+ emitrecord("\t\t", r, r->code, 0);
+ break;
+ case 1:
+ if (r->pattern->nterms > 1) {
+ print("%2if (%1/* %R */\n", r);
+ emittest(r->pattern->left, "LEFT_CHILD(a)", " ");
+ print("%2) {\n");
+ indent = "\t\t\t";
+ } else
+ print("%2/* %R */\n", r);
+ if (r->pattern->nterms == 2 && r->pattern->left
+ && r->pattern->right == NULL)
+ emitrecalc(indent, r->pattern->op, r->pattern->left->op);
+ print("%sc = ", indent);
+ emitcost(r->pattern->left, "LEFT_CHILD(a)");
+ print("%s;\n", r->code);
+ emitrecord(indent, r, "c", 0);
+ if (indent[2])
+ print("%2}\n");
+ break;
+ case 2:
+ if (r->pattern->nterms > 1) {
+ print("%2if (%1/* %R */\n", r);
+ emittest(r->pattern->left, "LEFT_CHILD(a)",
+ r->pattern->right->nterms ? " && " : " ");
+ emittest(r->pattern->right, "RIGHT_CHILD(a)", " ");
+ print("%2) {\n");
+ indent = "\t\t\t";
+ } else
+ print("%2/* %R */\n", r);
+ print("%sc = ", indent);
+ emitcost(r->pattern->left, "LEFT_CHILD(a)");
+ emitcost(r->pattern->right, "RIGHT_CHILD(a)");
+ print("%s;\n", r->code);
+ emitrecord(indent, r, "c", 0);
+ if (indent[2])
+ print("%2}\n");
+ break;
+ default: assert(0);
+ }
+ }
+ print("%2break;\n");
+}
+
+/* emitclosure - emit the closure functions */
+static void emitclosure(Nonterm nts) {
+ Nonterm p;
+
+ for (p = nts; p; p = p->link)
+ if (p->chain)
+ print("static void %Pclosure_%S(NODEPTR_TYPE, int);\n", p);
+ print("\n");
+ for (p = nts; p; p = p->link)
+ if (p->chain) {
+ Rule r;
+ print("static void %Pclosure_%S(NODEPTR_TYPE a, int c) {\n"
+"%1struct %Pstate *p = STATE_LABEL(a);\n", p);
+ for (r = p->chain; r; r = r->chain)
+ emitrecord("\t", r, "c", r->cost);
+ print("}\n\n");
+ }
+}
+
+/* emitcost - emit cost computation for tree t */
+static void emitcost(Tree t, char *v) {
+ Nonterm p = t->op;
+
+ if (p->kind == TERM) {
+ if (t->left)
+ emitcost(t->left, stringf("LEFT_CHILD(%s)", v));
+ if (t->right)
+ emitcost(t->right, stringf("RIGHT_CHILD(%s)", v));
+ } else
+ print("((struct %Pstate *)(%s->x.state))->cost[%P%S_NT] + ", v, p);
+}
+
+/* emitdefs - emit nonterminal defines and data structures */
+static void emitdefs(Nonterm nts, int ntnumber) {
+ Nonterm p;
+
+ for (p = nts; p; p = p->link)
+ print("#define %P%S_NT %d\n", p, p->number);
+ print("\n");
+ print("static char *%Pntname[] = {\n%10,\n");
+ for (p = nts; p; p = p->link)
+ print("%1\"%S\",\n", p);
+ print("%10\n};\n\n");
+}
+
+/* emitheader - emit initial definitions */
+static void emitheader(void) {
+ time_t timer = time(NULL);
+
+ print("/*\ngenerated at %sby %s\n*/\n", ctime(&timer), rcsid);
+ print("static void %Pkids(NODEPTR_TYPE, int, NODEPTR_TYPE[]);\n");
+ print("static void %Plabel(NODEPTR_TYPE);\n");
+ print("static int %Prule(void*, int);\n\n");
+}
+
+/* computekids - compute paths to kids in tree t */
+static char *computekids(Tree t, char *v, char *bp, int *ip) {
+ Term p = t->op;
+
+ if (p->kind == NONTERM) {
+ sprintf(bp, "\t\tkids[%d] = %s;\n", (*ip)++, v);
+ bp += strlen(bp);
+ } else if (p->arity > 0) {
+ bp = computekids(t->left, stringf("LEFT_CHILD(%s)", v), bp, ip);
+ if (p->arity == 2)
+ bp = computekids(t->right, stringf("RIGHT_CHILD(%s)", v), bp, ip);
+ }
+ return bp;
+}
+
+/* emitkids - emit _kids */
+static void emitkids(Rule rules, int nrules) {
+ int i;
+ Rule r, *rc = alloc((nrules + 1 + 1)*sizeof *rc);
+ char **str = alloc((nrules + 1 + 1)*sizeof *str);
+
+ for (i = 0, r = rules; r; r = r->link) {
+ int j = 0;
+ char buf[1024], *bp = buf;
+ *computekids(r->pattern, "p", bp, &j) = 0;
+ for (j = 0; str[j] && strcmp(str[j], buf); j++)
+ ;
+ if (str[j] == NULL)
+ str[j] = strcpy(alloc(strlen(buf) + 1), buf);
+ r->kids = rc[j];
+ rc[j] = r;
+ }
+ print("static void %Pkids(NODEPTR_TYPE p, int eruleno, NODEPTR_TYPE kids[]) {\n"
+"%1if (!p)\n%2fatal(\"%Pkids\", \"Null tree\\n\", 0);\n"
+"%1if (!kids)\n%2fatal(\"%Pkids\", \"Null kids\\n\", 0);\n"
+"%1switch (eruleno) {\n");
+ for (i = 0; (r = rc[i]) != NULL; i++) {
+ for ( ; r; r = r->kids)
+ print("%1case %d: /* %R */\n", r->ern, r);
+ print("%s%2break;\n", str[i]);
+ }
+ print("%1default:\n%2fatal(\"%Pkids\", \"Bad rule number %%d\\n\", eruleno);\n%1}\n}\n\n");
+}
+
+/* emitlabel - emit label function */
+static void emitlabel(Term terms, Nonterm start, int ntnumber) {
+ int i;
+ Term p;
+
+ print("static void %Plabel(NODEPTR_TYPE a) {\n%1int c;\n"
+"%1struct %Pstate *p;\n\n"
+"%1if (!a)\n%2fatal(\"%Plabel\", \"Null tree\\n\", 0);\n");
+ print("%1STATE_LABEL(a) = p = allocate(sizeof *p, FUNC);\n"
+"%1p->rule._stmt = 0;\n");
+ for (i = 1; i <= ntnumber; i++)
+ print("%1p->cost[%d] =\n", i);
+ print("%20x7fff;\n%1switch (OP_LABEL(a)) {\n");
+ for (p = terms; p; p = p->link)
+ emitcase(p, ntnumber);
+ print("%1default:\n"
+"%2fatal(\"%Plabel\", \"Bad terminal %%d\\n\", OP_LABEL(a));\n%1}\n}\n\n");
+}
+
+/* computents - fill in bp with _nts vector for tree t */
+static char *computents(Tree t, char *bp) {
+ if (t) {
+ Nonterm p = t->op;
+ if (p->kind == NONTERM) {
+ sprintf(bp, "%s_%s_NT, ", prefix, p->name);
+ bp += strlen(bp);
+ } else
+ bp = computents(t->right, computents(t->left, bp));
+ }
+ return bp;
+}
+
+/* emitnts - emit _nts ragged array */
+static void emitnts(Rule rules, int nrules) {
+ Rule r;
+ int i, j, *nts = alloc((nrules + 1)*sizeof *nts);
+ char **str = alloc((nrules + 1)*sizeof *str);
+
+ for (i = 0, r = rules; r; r = r->link) {
+ char buf[1024];
+ *computents(r->pattern, buf) = 0;
+ for (j = 0; str[j] && strcmp(str[j], buf); j++)
+ ;
+ if (str[j] == NULL) {
+ print("static short %Pnts_%d[] = { %s0 };\n", j, buf);
+ str[j] = strcpy(alloc(strlen(buf) + 1), buf);
+ }
+ nts[i++] = j;
+ }
+ print("\nstatic short *%Pnts[] = {\n");
+ for (i = j = 0, r = rules; r; r = r->link) {
+ for ( ; j < r->ern; j++)
+ print("%10,%1/* %d */\n", j);
+ print("%1%Pnts_%d,%1/* %d */\n", nts[i++], j++);
+ }
+ print("};\n\n");
+}
+
+/* emitrecalc - emit code that tests for recalculation of INDIR?(VREGP) */
+static void emitrecalc(char *pre, Term root, Term kid) {
+ if (root->kind == TERM && strncmp(root->name, "INDIR", 5) == 0
+ && kid->kind == TERM && strcmp(kid->name, "VREGP" ) == 0) {
+ Nonterm p;
+ print("%sif (mayrecalc(a)) {\n", pre);
+ print("%s%1struct %Pstate *q = a->syms[RX]->u.t.cse->x.state;\n", pre);
+ for (p = nts; p; p = p->link) {
+ print("%s%1if (q->cost[%P%S_NT] == 0) {\n", pre, p);
+ print("%s%2p->cost[%P%S_NT] = 0;\n", pre, p);
+ print("%s%2p->rule.%P%S = q->rule.%P%S;\n", pre, p, p);
+ print("%s%1}\n", pre);
+ }
+ print("%s}\n", pre);
+ }
+}
+
+/* emitrecord - emit code that tests for a winning match of rule r */
+static void emitrecord(char *pre, Rule r, char *c, int cost) {
+ if (Tflag)
+ print("%s%Ptrace(a, %d, %s + %d, p->cost[%P%S_NT]);\n",
+ pre, r->ern, c, cost, r->lhs);
+ print("%sif (", pre);
+ print("%s + %d < p->cost[%P%S_NT]) {\n"
+"%s%1p->cost[%P%S_NT] = %s + %d;\n%s%1p->rule.%P%S = %d;\n",
+ c, cost, r->lhs, pre, r->lhs, c, cost, pre, r->lhs,
+ r->packed);
+ if (r->lhs->chain)
+ print("%s%1%Pclosure_%S(a, %s + %d);\n", pre, r->lhs, c, cost);
+ print("%s}\n", pre);
+}
+
+/* emitrule - emit decoding vectors and _rule */
+static void emitrule(Nonterm nts) {
+ Nonterm p;
+
+ for (p = nts; p; p = p->link) {
+ Rule r;
+ print("static short %Pdecode_%S[] = {\n%10,\n", p);
+ for (r = p->rules; r; r = r->decode)
+ print("%1%d,\n", r->ern);
+ print("};\n\n");
+ }
+ print("static int %Prule(void *state, int goalnt) {\n"
+"%1if (goalnt < 1 || goalnt > %d)\n%2fatal(\"%Prule\", \"Bad goal nonterminal %%d\\n\", goalnt);\n"
+"%1if (!state)\n%2return 0;\n%1switch (goalnt) {\n", ntnumber);
+ for (p = nts; p; p = p->link)
+ print("%1case %P%S_NT:"
+"%1return %Pdecode_%S[((struct %Pstate *)state)->rule.%P%S];\n", p, p, p);
+ print("%1default:\n%2fatal(\"%Prule\", \"Bad goal nonterminal %%d\\n\", goalnt);\n%2return 0;\n%1}\n}\n\n");
+}
+
+/* emitstring - emit arrays of templates, instruction flags, and rules */
+static void emitstring(Rule rules) {
+ Rule r;
+
+ print("static char *%Ptemplates[] = {\n");
+ print("/* 0 */%10,\n");
+ for (r = rules; r; r = r->link)
+ print("/* %d */%1\"%s\",%1/* %R */\n", r->ern, r->template, r);
+ print("};\n");
+ print("\nstatic char %Pisinstruction[] = {\n");
+ print("/* 0 */%10,\n");
+ for (r = rules; r; r = r->link) {
+ int len = strlen(r->template);
+ print("/* %d */%1%d,%1/* %s */\n", r->ern,
+ len >= 2 && r->template[len-2] == '\\' && r->template[len-1] == 'n',
+ r->template);
+ }
+ print("};\n");
+ print("\nstatic char *%Pstring[] = {\n");
+ print("/* 0 */%10,\n");
+ for (r = rules; r; r = r->link)
+ print("/* %d */%1\"%R\",\n", r->ern, r);
+ print("};\n\n");
+}
+
+/* emitstruct - emit the definition of the state structure */
+static void emitstruct(Nonterm nts, int ntnumber) {
+ print("struct %Pstate {\n%1short cost[%d];\n%1struct {\n", ntnumber + 1);
+ for ( ; nts; nts = nts->link) {
+ int n = 1, m = nts->lhscount;
+ while ((m >>= 1) != 0)
+ n++;
+ print("%2unsigned int %P%S:%d;\n", nts, n);
+ }
+ print("%1} rule;\n};\n\n");
+}
+
+/* emittest - emit clause for testing a match */
+static void emittest(Tree t, char *v, char *suffix) {
+ Term p = t->op;
+
+ if (p->kind == TERM) {
+ print("%3%s->op == %d%s/* %S */\n", v, p->esn,
+ t->nterms > 1 ? " && " : suffix, p);
+ if (t->left)
+ emittest(t->left, stringf("LEFT_CHILD(%s)", v),
+ t->right && t->right->nterms ? " && " : suffix);
+ if (t->right)
+ emittest(t->right, stringf("RIGHT_CHILD(%s)", v), suffix);
+ }
+}
diff --git a/lcc/lburg/lburg.h b/lcc/lburg/lburg.h
index 238fe98..b67e802 100755
--- a/lcc/lburg/lburg.h
+++ b/lcc/lburg/lburg.h
@@ -1,65 +1,65 @@
-#ifndef BURG_INCLUDED
-#define BURG_INCLUDED
-
-/* iburg.c: */
-extern void *alloc(int nbytes);
-
-typedef enum { TERM=1, NONTERM } Kind;
-typedef struct rule *Rule;
-typedef struct term *Term;
-struct term { /* terminals: */
- char *name; /* terminal name */
- Kind kind; /* TERM */
- int esn; /* external symbol number */
- int arity; /* operator arity */
- Term link; /* next terminal in esn order */
- Rule rules; /* rules whose pattern starts with term */
-};
-
-typedef struct nonterm *Nonterm;
-struct nonterm { /* nonterminals: */
- char *name; /* nonterminal name */
- Kind kind; /* NONTERM */
- int number; /* identifying number */
- int lhscount; /* # times nt appears in a rule lhs */
- int reached; /* 1 iff reached from start nonterminal */
- Rule rules; /* rules w/nonterminal on lhs */
- Rule chain; /* chain rules w/nonterminal on rhs */
- Nonterm link; /* next terminal in number order */
-};
-extern Nonterm nonterm(char *id);
-extern Term term(char *id, int esn);
-
-typedef struct tree *Tree;
-struct tree { /* tree patterns: */
- void *op; /* a terminal or nonterminal */
- Tree left, right; /* operands */
- int nterms; /* number of terminal nodes in this tree */
-};
-extern Tree tree(char *op, Tree left, Tree right);
-
-struct rule { /* rules: */
- Nonterm lhs; /* lefthand side nonterminal */
- Tree pattern; /* rule pattern */
- int ern; /* external rule number */
- int packed; /* packed external rule number */
- int cost; /* cost, if a constant */
- char *code; /* cost, if an expression */
- char *template; /* assembler template */
- Rule link; /* next rule in ern order */
- Rule next; /* next rule with same pattern root */
- Rule chain; /* next chain rule with same rhs */
- Rule decode; /* next rule with same lhs */
- Rule kids; /* next rule with same _kids pattern */
-};
-extern Rule rule(char *id, Tree pattern, char *template, char *code);
-
-/* gram.y: */
-void yyerror(char *fmt, ...);
-int yyparse(void);
-void yywarn(char *fmt, ...);
-extern int errcnt;
-extern FILE *infp;
-extern FILE *outfp;
-
-#endif
+#ifndef BURG_INCLUDED
+#define BURG_INCLUDED
+
+/* iburg.c: */
+extern void *alloc(int nbytes);
+
+typedef enum { TERM=1, NONTERM } Kind;
+typedef struct rule *Rule;
+typedef struct term *Term;
+struct term { /* terminals: */
+ char *name; /* terminal name */
+ Kind kind; /* TERM */
+ int esn; /* external symbol number */
+ int arity; /* operator arity */
+ Term link; /* next terminal in esn order */
+ Rule rules; /* rules whose pattern starts with term */
+};
+
+typedef struct nonterm *Nonterm;
+struct nonterm { /* nonterminals: */
+ char *name; /* nonterminal name */
+ Kind kind; /* NONTERM */
+ int number; /* identifying number */
+ int lhscount; /* # times nt appears in a rule lhs */
+ int reached; /* 1 iff reached from start nonterminal */
+ Rule rules; /* rules w/nonterminal on lhs */
+ Rule chain; /* chain rules w/nonterminal on rhs */
+ Nonterm link; /* next terminal in number order */
+};
+extern Nonterm nonterm(char *id);
+extern Term term(char *id, int esn);
+
+typedef struct tree *Tree;
+struct tree { /* tree patterns: */
+ void *op; /* a terminal or nonterminal */
+ Tree left, right; /* operands */
+ int nterms; /* number of terminal nodes in this tree */
+};
+extern Tree tree(char *op, Tree left, Tree right);
+
+struct rule { /* rules: */
+ Nonterm lhs; /* lefthand side nonterminal */
+ Tree pattern; /* rule pattern */
+ int ern; /* external rule number */
+ int packed; /* packed external rule number */
+ int cost; /* cost, if a constant */
+ char *code; /* cost, if an expression */
+ char *template; /* assembler template */
+ Rule link; /* next rule in ern order */
+ Rule next; /* next rule with same pattern root */
+ Rule chain; /* next chain rule with same rhs */
+ Rule decode; /* next rule with same lhs */
+ Rule kids; /* next rule with same _kids pattern */
+};
+extern Rule rule(char *id, Tree pattern, char *template, char *code);
+
+/* gram.y: */
+void yyerror(char *fmt, ...);
+int yyparse(void);
+void yywarn(char *fmt, ...);
+extern int errcnt;
+extern FILE *infp;
+extern FILE *outfp;
+
+#endif
diff --git a/lcc/lib/assert.c b/lcc/lib/assert.c
index 5ef6367..10958a8 100755
--- a/lcc/lib/assert.c
+++ b/lcc/lib/assert.c
@@ -1,15 +1,15 @@
-#include <stdio.h>
-#include <stdlib.h>
-
-
-int _assert(char *e, char *file, int line) {
- fprintf(stderr, "assertion failed:");
- if (e)
- fprintf(stderr, " %s", e);
- if (file)
- fprintf(stderr, " file %s", file);
- fprintf(stderr, " line %d\n", line);
- fflush(stderr);
- abort();
- return 0;
-}
+#include <stdio.h>
+#include <stdlib.h>
+
+
+int _assert(char *e, char *file, int line) {
+ fprintf(stderr, "assertion failed:");
+ if (e)
+ fprintf(stderr, " %s", e);
+ if (file)
+ fprintf(stderr, " file %s", file);
+ fprintf(stderr, " line %d\n", line);
+ fflush(stderr);
+ abort();
+ return 0;
+}
diff --git a/lcc/lib/bbexit.c b/lcc/lib/bbexit.c
index 1d14bf6..471d606 100755
--- a/lcc/lib/bbexit.c
+++ b/lcc/lib/bbexit.c
@@ -1,123 +1,123 @@
-#include <stdio.h>
-#include <stdlib.h>
-
-
-struct callsite {
- char *file, *name;
- union coordinate {
- struct { unsigned int index:6,x:10,y:16; } be;
- struct { unsigned int y:16,x:10,index:6; } le;
- unsigned int coord;
- } u;
-} *_caller;
-
-static struct _bbdata {
- struct _bbdata *link;
- unsigned npoints, *counts;
- union coordinate *coords;
- char **files;
- struct func {
- struct func *link;
- struct caller {
- struct caller *link;
- struct callsite *caller;
- unsigned count;
- } *callers;
- char *name;
- union coordinate src;
- } *funcs;
-} tail, *_bblist = &tail;
-
-static void unpack(unsigned int coord, int *index, int *x, int *y) {
- static union { int x; char endian; } little = { 1 };
- union coordinate u;
-
- u.coord = coord;
- if (little.endian) {
- *index = u.le.index;
- *x = u.le.x;
- *y = u.le.y;
- } else {
- *index = u.be.index;
- *x = u.be.x;
- *y = u.be.y;
- }
-}
-
-static void profout(struct _bbdata *p, FILE *fp) {
- int i, index, x, y;
- struct func *f;
- struct caller *q;
-
- for (i = 0; p->files[i]; i++)
- ;
- fprintf(fp, "%d\n", i);
- for (i = 0; p->files[i]; i++)
- fprintf(fp, "%s\n", p->files[i]);
- for (i = 0, f = p->funcs; f; i++, f = f->link)
- if (q = f->callers)
- for (i--; q; q = q->link)
- i++;
- fprintf(fp, "%d\n", i);
- for (f = p->funcs; f; f = f->link) {
- int n = 0;
- for (q = f->callers; q; n += q->count, q = q->link) {
- unpack(f->src.coord, &index, &x, &y);
- fprintf(fp, "%s %d %d %d %d", f->name, index, x, y, q->count);
- if (q->caller) {
- unpack(q->caller->u.coord, &index, &x, &y);
- fprintf(fp, " %s %s %d %d\n", q->caller->name, q->caller->file, x, y);
- } else
- fprintf(fp, " ? ? 0 0\n");
- }
- if (n == 0) {
- unpack(f->src.coord, &index, &x, &y);
- fprintf(fp, "%s %d %d %d 0 ? ? 0 0\n", f->name, index, x, y);
- }
- }
- fprintf(fp, "%d\n", p->npoints);
- for (i = 0; i < p->npoints; i++) {
- unpack(p->coords[i].coord, &index, &x, &y);
- fprintf(fp, "%d %d %d %d\n", index, x, y, p->counts[i]);
- }
-}
-
-static void bbexit(void) {
- FILE *fp;
-
- if (_bblist != &tail && (fp = fopen("prof.out", "a"))) {
- for ( ; _bblist != &tail; _bblist = _bblist->link)
- profout(_bblist, fp);
- fclose(fp);
- }
-}
-
-void _epilogue(struct func *callee) {
- _caller = 0;
-}
-
-void _prologue(struct func *callee, struct _bbdata *yylink) {
- static struct caller callers[4096];
- static int next;
- struct caller *p;
-
- if (!yylink->link) {
- yylink->link = _bblist;
- _bblist = yylink;
- if (next == 0)
- atexit(bbexit);
- }
- for (p = callee->callers; p; p = p->link)
- if (p->caller == _caller) {
- p->count++;
- break;
- }
- if (!p && next < sizeof callers/sizeof callers[0]) {
- p = &callers[next++];
- p->caller = _caller;
- p->count = 1;
- p->link = callee->callers;
- callee->callers = p;
- }
- _caller = 0;
-}
+#include <stdio.h>
+#include <stdlib.h>
+
+
+struct callsite {
+ char *file, *name;
+ union coordinate {
+ struct { unsigned int index:6,x:10,y:16; } be;
+ struct { unsigned int y:16,x:10,index:6; } le;
+ unsigned int coord;
+ } u;
+} *_caller;
+
+static struct _bbdata {
+ struct _bbdata *link;
+ unsigned npoints, *counts;
+ union coordinate *coords;
+ char **files;
+ struct func {
+ struct func *link;
+ struct caller {
+ struct caller *link;
+ struct callsite *caller;
+ unsigned count;
+ } *callers;
+ char *name;
+ union coordinate src;
+ } *funcs;
+} tail, *_bblist = &tail;
+
+static void unpack(unsigned int coord, int *index, int *x, int *y) {
+ static union { int x; char endian; } little = { 1 };
+ union coordinate u;
+
+ u.coord = coord;
+ if (little.endian) {
+ *index = u.le.index;
+ *x = u.le.x;
+ *y = u.le.y;
+ } else {
+ *index = u.be.index;
+ *x = u.be.x;
+ *y = u.be.y;
+ }
+}
+
+static void profout(struct _bbdata *p, FILE *fp) {
+ int i, index, x, y;
+ struct func *f;
+ struct caller *q;
+
+ for (i = 0; p->files[i]; i++)
+ ;
+ fprintf(fp, "%d\n", i);
+ for (i = 0; p->files[i]; i++)
+ fprintf(fp, "%s\n", p->files[i]);
+ for (i = 0, f = p->funcs; f; i++, f = f->link)
+ if (q = f->callers)
+ for (i--; q; q = q->link)
+ i++;
+ fprintf(fp, "%d\n", i);
+ for (f = p->funcs; f; f = f->link) {
+ int n = 0;
+ for (q = f->callers; q; n += q->count, q = q->link) {
+ unpack(f->src.coord, &index, &x, &y);
+ fprintf(fp, "%s %d %d %d %d", f->name, index, x, y, q->count);
+ if (q->caller) {
+ unpack(q->caller->u.coord, &index, &x, &y);
+ fprintf(fp, " %s %s %d %d\n", q->caller->name, q->caller->file, x, y);
+ } else
+ fprintf(fp, " ? ? 0 0\n");
+ }
+ if (n == 0) {
+ unpack(f->src.coord, &index, &x, &y);
+ fprintf(fp, "%s %d %d %d 0 ? ? 0 0\n", f->name, index, x, y);
+ }
+ }
+ fprintf(fp, "%d\n", p->npoints);
+ for (i = 0; i < p->npoints; i++) {
+ unpack(p->coords[i].coord, &index, &x, &y);
+ fprintf(fp, "%d %d %d %d\n", index, x, y, p->counts[i]);
+ }
+}
+
+static void bbexit(void) {
+ FILE *fp;
+
+ if (_bblist != &tail && (fp = fopen("prof.out", "a"))) {
+ for ( ; _bblist != &tail; _bblist = _bblist->link)
+ profout(_bblist, fp);
+ fclose(fp);
+ }
+}
+
+void _epilogue(struct func *callee) {
+ _caller = 0;
+}
+
+void _prologue(struct func *callee, struct _bbdata *yylink) {
+ static struct caller callers[4096];
+ static int next;
+ struct caller *p;
+
+ if (!yylink->link) {
+ yylink->link = _bblist;
+ _bblist = yylink;
+ if (next == 0)
+ atexit(bbexit);
+ }
+ for (p = callee->callers; p; p = p->link)
+ if (p->caller == _caller) {
+ p->count++;
+ break;
+ }
+ if (!p && next < sizeof callers/sizeof callers[0]) {
+ p = &callers[next++];
+ p->caller = _caller;
+ p->count = 1;
+ p->link = callee->callers;
+ callee->callers = p;
+ }
+ _caller = 0;
+}
diff --git a/lcc/lib/yynull.c b/lcc/lib/yynull.c
index 8c01190..7dbc968 100755
--- a/lcc/lib/yynull.c
+++ b/lcc/lib/yynull.c
@@ -1,12 +1,12 @@
-#include <stdio.h>
-#include <stdlib.h>
-
-
-void _YYnull(char *file, int line) {
- fprintf(stderr, "null pointer dereferenced:");
- if (file)
- fprintf(stderr, " file %s,", file);
- fprintf(stderr, " line %d\n", line);
- fflush(stderr);
- abort();
-}
+#include <stdio.h>
+#include <stdlib.h>
+
+
+void _YYnull(char *file, int line) {
+ fprintf(stderr, "null pointer dereferenced:");
+ if (file)
+ fprintf(stderr, " file %s,", file);
+ fprintf(stderr, " line %d\n", line);
+ fflush(stderr);
+ abort();
+}
diff --git a/lcc/makefile b/lcc/makefile
index 475a15e..232d2c1 100755
--- a/lcc/makefile
+++ b/lcc/makefile
@@ -1,310 +1,310 @@
-# $Id: makefile 145 2001-10-17 21:53:10Z timo $
-HOSTFILE=etc/linux.c
-TEMPDIR=/tmp
-A=.a
-O=.o
-E=
-CC=cc
-CFLAGS=-g
-LDFLAGS=
-LD=cc
-AR=ar ruv
-RANLIB=ranlib
-DIFF=diff
-RM=rm -f
-RMDIR=rmdir
-TSTDIR=$(BUILDDIR)/$(TARGET)/tst
-CUSTOM=custom.mk
-include $(CUSTOM)
-B=$(BUILDDIR)/
-T=$(TSTDIR)/
-
-# $Id: makefile 145 2001-10-17 21:53:10Z timo $
-
-what:
- -@echo make all rcc lburg cpp lcc bprint liblcc triple clean clobber
-
-all:: rcc lburg cpp lcc bprint liblcc
-
-rcc: $Brcc$E
-lburg: $Blburg$E
-cpp: $Bcpp$E
-lcc: $Blcc$E
-bprint: $Bbprint$E
-liblcc: $Bliblcc$A
-
-RCCOBJS=$Balloc$O \
- $Bbind$O \
- $Bdag$O \
- $Bdagcheck$O \
- $Bdecl$O \
- $Benode$O \
- $Berror$O \
- $Bexpr$O \
- $Bevent$O \
- $Binit$O \
- $Binits$O \
- $Binput$O \
- $Blex$O \
- $Blist$O \
- $Bmain$O \
- $Boutput$O \
- $Bprof$O \
- $Bprofio$O \
- $Bsimp$O \
- $Bstmt$O \
- $Bstring$O \
- $Bsym$O \
- $Btrace$O \
- $Btree$O \
- $Btypes$O \
- $Bnull$O \
- $Bsymbolic$O \
- $Bgen$O \
- $Bbytecode$O \
- $Balpha$O \
- $Bmips$O \
- $Bsparc$O \
- $Bstab$O \
- $Bx86$O \
- $Bx86linux$O
-
-$Brcc$E:: $Bmain$O $Blibrcc$A $(EXTRAOBJS)
- $(LD) $(LDFLAGS) -o $@ $Bmain$O $(EXTRAOBJS) $Blibrcc$A $(EXTRALIBS)
-
-$Blibrcc$A: $(RCCOBJS)
- $(AR) $@ $(RCCOBJS); $(RANLIB) $@ || true
-
-$(RCCOBJS): src/c.h src/token.h src/config.h
-
-$Balloc$O: src/alloc.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/alloc.c
-$Bbind$O: src/bind.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/bind.c
-$Bdag$O: src/dag.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/dag.c
-$Bdecl$O: src/decl.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/decl.c
-$Benode$O: src/enode.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/enode.c
-$Berror$O: src/error.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/error.c
-$Bevent$O: src/event.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/event.c
-$Bexpr$O: src/expr.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/expr.c
-$Bgen$O: src/gen.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/gen.c
-$Binit$O: src/init.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/init.c
-$Binits$O: src/inits.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/inits.c
-$Binput$O: src/input.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/input.c
-$Blex$O: src/lex.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/lex.c
-$Blist$O: src/list.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/list.c
-$Bmain$O: src/main.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/main.c
-$Bnull$O: src/null.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/null.c
-$Boutput$O: src/output.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/output.c
-$Bprof$O: src/prof.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/prof.c
-$Bprofio$O: src/profio.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/profio.c
-$Bsimp$O: src/simp.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/simp.c
-$Bstmt$O: src/stmt.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/stmt.c
-$Bstring$O: src/string.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/string.c
-$Bsym$O: src/sym.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/sym.c
-$Bsymbolic$O: src/symbolic.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/symbolic.c
-$Bbytecode$O: src/bytecode.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/bytecode.c
-$Btrace$O: src/trace.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/trace.c
-$Btree$O: src/tree.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/tree.c
-$Btypes$O: src/types.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/types.c
-$Bstab$O: src/stab.c src/stab.h; $(CC) $(CFLAGS) -c -Isrc -o $@ src/stab.c
-
-$Bdagcheck$O: $Bdagcheck.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bdagcheck.c
-$Balpha$O: $Balpha.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Balpha.c
-$Bmips$O: $Bmips.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bmips.c
-$Bsparc$O: $Bsparc.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bsparc.c
-$Bx86$O: $Bx86.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bx86.c
-$Bx86linux$O: $Bx86linux.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bx86linux.c
-
-$Bdagcheck.c: $Blburg$E src/dagcheck.md; $Blburg src/dagcheck.md $@
-$Balpha.c: $Blburg$E src/alpha.md; $Blburg src/alpha.md $@
-$Bmips.c: $Blburg$E src/mips.md; $Blburg src/mips.md $@
-$Bsparc.c: $Blburg$E src/sparc.md; $Blburg src/sparc.md $@
-$Bx86.c: $Blburg$E src/x86.md; $Blburg src/x86.md $@
-$Bx86linux.c: $Blburg$E src/x86linux.md; $Blburg src/x86linux.md $@
-
-$Brcc.h: src/rcc.asdl; $(ASDL_HOME)/bin/asdlGen --c -d $B src/rcc.asdl
-$Brcc$O: $Brcc.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -o $@ $Brcc.c
-$Basdl$O: src/asdl.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -o $@ src/asdl.c
-$Bpass2$O: src/pass2.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -o $@ src/pass2.c
-$B2html$O: src/2html.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -o $@ src/2html.c
-
-$Bpass2$E: $Bpass2$O $(EXTRAOBJS) $Blibrcc$A; $(LD) $(LDFLAGS) -o $@ $Bpass2$O $(EXTRAOBJS) $Blibrcc$A $(EXTRALIBS)
-$B2html$E: $B2html$O $Brcc$O; $(LD) $(LDFLAGS) -o $@ $B2html$O $Brcc$O $(EXTRALIBS)
-
-$Bbprint$E: $Bbprint$O; $(LD) $(LDFLAGS) -o $@ $Bbprint$O
-
-$Bbprint$O: etc/bprint.c; $(CC) $(CFLAGS) -c -Isrc -o $@ etc/bprint.c
-
-$Blcc$E: $Blcc$O $Bhost$O; $(LD) $(LDFLAGS) -o $@ $Blcc$O $Bhost$O
-
-SYSTEM=$(shell cc -print-search-dirs | head -n 1 | cut -b 10-)
-
-$Blcc$O: etc/lcc.c; $(CC) $(CFLAGS) -c -DTEMPDIR=\"$(TEMPDIR)\" -o $@ etc/lcc.c
-$Bhost$O: $(HOSTFILE); $(CC) $(CFLAGS) -c -DSYSTEM=\"$(SYSTEM)\" -o $@ $(HOSTFILE)
-
-LIBOBJS=$Bassert$O $Bbbexit$O $Byynull$O
-
-$Bliblcc$A: $(LIBOBJS); $(AR) $@ $Bassert$O $Bbbexit$O $Byynull$O; $(RANLIB) $@ || true
-
-$Bassert$O: lib/assert.c; $(CC) $(CFLAGS) -c -o $@ lib/assert.c
-$Byynull$O: lib/yynull.c; $(CC) $(CFLAGS) -c -o $@ lib/yynull.c
-$Bbbexit$O: lib/bbexit.c; $(CC) $(CFLAGS) -c -o $@ lib/bbexit.c
-
-$Blburg$E: $Blburg$O $Bgram$O; $(LD) $(LDFLAGS) -o $@ $Blburg$O $Bgram$O
-
-$Blburg$O $Bgram$O: lburg/lburg.h
-
-$Blburg$O: lburg/lburg.c; $(CC) $(CFLAGS) -c -Ilburg -o $@ lburg/lburg.c
-$Bgram$O: lburg/gram.c; $(CC) $(CFLAGS) -c -Ilburg -o $@ lburg/gram.c
-
-CPPOBJS=$Bcpp$O $Blexer$O $Bnlist$O $Btokens$O $Bmacro$O $Beval$O \
- $Binclude$O $Bhideset$O $Bgetopt$O $Bunix$O
-
-$Bcpp$E: $(CPPOBJS)
- $(LD) $(LDFLAGS) -o $@ $(CPPOBJS)
-
-$(CPPOBJS): cpp/cpp.h
-
-$Bcpp$O: cpp/cpp.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/cpp.c
-$Blexer$O: cpp/lex.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/lex.c
-$Bnlist$O: cpp/nlist.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/nlist.c
-$Btokens$O: cpp/tokens.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/tokens.c
-$Bmacro$O: cpp/macro.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/macro.c
-$Beval$O: cpp/eval.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/eval.c
-$Binclude$O: cpp/include.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/include.c
-$Bhideset$O: cpp/hideset.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/hideset.c
-$Bgetopt$O: cpp/getopt.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/getopt.c
-$Bunix$O: cpp/unix.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/unix.c
-
-test: $T8q.s \
- $Tarray.s \
- $Tcf.s \
- $Tcq.s \
- $Tcvt.s \
- $Tfields.s \
- $Tfront.s \
- $Tincr.s \
- $Tinit.s \
- $Tlimits.s \
- $Tparanoia.s \
- $Tsort.s \
- $Tspill.s \
- $Tstdarg.s \
- $Tstruct.s \
- $Tswitch.s \
- $Twf1.s \
- $Tyacc.s
-
-$T8q.s: tst/8q.c tst/8q.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tarray.s: tst/array.c tst/array.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tcf.s: tst/cf.c tst/cf.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tcq.s: tst/cq.c tst/cq.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tcvt.s: tst/cvt.c tst/cvt.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tfields.s: tst/fields.c tst/fields.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tfront.s: tst/front.c tst/front.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tincr.s: tst/incr.c tst/incr.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tinit.s: tst/init.c tst/init.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tlimits.s: tst/limits.c tst/limits.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tparanoia.s: tst/paranoia.c tst/paranoia.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tsort.s: tst/sort.c tst/sort.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tspill.s: tst/spill.c tst/spill.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tstdarg.s: tst/stdarg.c tst/stdarg.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tstruct.s: tst/struct.c tst/struct.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tswitch.s: tst/switch.c tst/switch.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Twf1.s: tst/wf1.c tst/wf1.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-$Tyacc.s: tst/yacc.c tst/yacc.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
-
-testclean:
- $(RM) $T8q$E $T8q.s $T8q.2 $T8q.1
- $(RM) $Tarray$E $Tarray.s $Tarray.2 $Tarray.1
- $(RM) $Tcf$E $Tcf.s $Tcf.2 $Tcf.1
- $(RM) $Tcq$E $Tcq.s $Tcq.2 $Tcq.1
- $(RM) $Tcvt$E $Tcvt.s $Tcvt.2 $Tcvt.1
- $(RM) $Tfields$E $Tfields.s $Tfields.2 $Tfields.1
- $(RM) $Tfront$E $Tfront.s $Tfront.2 $Tfront.1
- $(RM) $Tincr$E $Tincr.s $Tincr.2 $Tincr.1
- $(RM) $Tinit$E $Tinit.s $Tinit.2 $Tinit.1
- $(RM) $Tlimits$E $Tlimits.s $Tlimits.2 $Tlimits.1
- $(RM) $Tparanoia$E $Tparanoia.s $Tparanoia.2 $Tparanoia.1
- $(RM) $Tsort$E $Tsort.s $Tsort.2 $Tsort.1
- $(RM) $Tspill$E $Tspill.s $Tspill.2 $Tspill.1
- $(RM) $Tstdarg$E $Tstdarg.s $Tstdarg.2 $Tstdarg.1
- $(RM) $Tstruct$E $Tstruct.s $Tstruct.2 $Tstruct.1
- $(RM) $Tswitch$E $Tswitch.s $Tswitch.2 $Tswitch.1
- $(RM) $Twf1$E $Twf1.s $Twf1.2 $Twf1.1
- $(RM) $Tyacc$E $Tyacc.s $Tyacc.2 $Tyacc.1
-
-install:: all
- install -d /usr/local/lib/lcc
- install -d /usr/local/lib/lcc/gcc
- install $Blcc$E /usr/local/bin
- install $Bcpp$E /usr/local/lib/lcc/gcc
- install $Brcc$E /usr/local/lib/lcc
- install $Bliblcc$A /usr/local/lib/lcc
- install $Blibrcc$A /usr/local/lib/lcc
-
-uninstall::
- $(RM) /usr/local/lib/lcc/librcc$A
- $(RM) /usr/local/lib/lcc/liblcc$A
- $(RM) /usr/local/lib/lcc/rcc$E
- $(RM) /usr/local/lib/lcc/gcc/cpp$E
- $(RM) /usr/local/bin/lcc$E
- $(RMDIR) /usr/local/lib/lcc/gcc
- $(RMDIR) /usr/local/lib/lcc
-
-clean:: testclean
- $(RM) $B*$O
- $(RM) $Bdagcheck.c $Balpha.c $Bmips.c $Bx86.c $Bsparc.c $Bx86linux.c $Bgram.c
- $(RM) $Brcc.c $Brcc.h
- $(RM) $Brcc1$E $Brcc1$E $B1rcc$E $B2rcc$E
- $(RM) $B*.ilk
-
-clobber:: clean
- $(RM) $Brcc$E $B2html$E $Bpass2$E $Blburg$E $Bcpp$E $Blcc$E $Bbprint$E $B*$A
- $(RM) $B*.pdb $B*.pch
-
-RCCSRCS=src/alloc.c \
- src/bind.c \
- src/dag.c \
- src/decl.c \
- src/enode.c \
- src/error.c \
- src/expr.c \
- src/event.c \
- src/init.c \
- src/inits.c \
- src/input.c \
- src/lex.c \
- src/list.c \
- src/main.c \
- src/output.c \
- src/prof.c \
- src/profio.c \
- src/simp.c \
- src/stmt.c \
- src/string.c \
- src/sym.c \
- src/trace.c \
- src/tree.c \
- src/types.c \
- src/null.c \
- src/symbolic.c \
- src/bytecode.c \
- src/gen.c \
- src/stab.c \
- $Bdagcheck.c \
- $Balpha.c \
- $Bmips.c \
- $Bsparc.c \
- $Bx86linux.c \
- $Bx86.c
-
-C=$Blcc -A -d0.6 -Wo-lccdir=$(BUILDDIR) -Isrc -I$(BUILDDIR)
-triple: $Brcc$E $Blcc$E $Bcpp$E
- $C -o $B1rcc$E -B$B $(RCCSRCS)
- $C -o $B2rcc$E -B$B1 $(RCCSRCS)
- strip $B1rcc$E $B2rcc$E
- dd if=$B1rcc$E of=$Brcc1$E bs=512 skip=1
- dd if=$B2rcc$E of=$Brcc2$E bs=512 skip=1
- if cmp $Brcc1$E $Brcc2$E; then \
- mv $B2rcc$E $Brcc$E; \
- $(RM) $B1rcc$E $Brcc[12]$E; fi
+# $Id: makefile 145 2001-10-17 21:53:10Z timo $
+HOSTFILE=etc/linux.c
+TEMPDIR=/tmp
+A=.a
+O=.o
+E=
+CC=cc
+CFLAGS=-g
+LDFLAGS=
+LD=cc
+AR=ar ruv
+RANLIB=ranlib
+DIFF=diff
+RM=rm -f
+RMDIR=rmdir
+TSTDIR=$(BUILDDIR)/$(TARGET)/tst
+CUSTOM=custom.mk
+include $(CUSTOM)
+B=$(BUILDDIR)/
+T=$(TSTDIR)/
+
+# $Id: makefile 145 2001-10-17 21:53:10Z timo $
+
+what:
+ -@echo make all rcc lburg cpp lcc bprint liblcc triple clean clobber
+
+all:: rcc lburg cpp lcc bprint liblcc
+
+rcc: $Brcc$E
+lburg: $Blburg$E
+cpp: $Bcpp$E
+lcc: $Blcc$E
+bprint: $Bbprint$E
+liblcc: $Bliblcc$A
+
+RCCOBJS=$Balloc$O \
+ $Bbind$O \
+ $Bdag$O \
+ $Bdagcheck$O \
+ $Bdecl$O \
+ $Benode$O \
+ $Berror$O \
+ $Bexpr$O \
+ $Bevent$O \
+ $Binit$O \
+ $Binits$O \
+ $Binput$O \
+ $Blex$O \
+ $Blist$O \
+ $Bmain$O \
+ $Boutput$O \
+ $Bprof$O \
+ $Bprofio$O \
+ $Bsimp$O \
+ $Bstmt$O \
+ $Bstring$O \
+ $Bsym$O \
+ $Btrace$O \
+ $Btree$O \
+ $Btypes$O \
+ $Bnull$O \
+ $Bsymbolic$O \
+ $Bgen$O \
+ $Bbytecode$O \
+ $Balpha$O \
+ $Bmips$O \
+ $Bsparc$O \
+ $Bstab$O \
+ $Bx86$O \
+ $Bx86linux$O
+
+$Brcc$E:: $Bmain$O $Blibrcc$A $(EXTRAOBJS)
+ $(LD) $(LDFLAGS) -o $@ $Bmain$O $(EXTRAOBJS) $Blibrcc$A $(EXTRALIBS)
+
+$Blibrcc$A: $(RCCOBJS)
+ $(AR) $@ $(RCCOBJS); $(RANLIB) $@ || true
+
+$(RCCOBJS): src/c.h src/token.h src/config.h
+
+$Balloc$O: src/alloc.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/alloc.c
+$Bbind$O: src/bind.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/bind.c
+$Bdag$O: src/dag.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/dag.c
+$Bdecl$O: src/decl.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/decl.c
+$Benode$O: src/enode.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/enode.c
+$Berror$O: src/error.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/error.c
+$Bevent$O: src/event.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/event.c
+$Bexpr$O: src/expr.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/expr.c
+$Bgen$O: src/gen.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/gen.c
+$Binit$O: src/init.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/init.c
+$Binits$O: src/inits.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/inits.c
+$Binput$O: src/input.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/input.c
+$Blex$O: src/lex.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/lex.c
+$Blist$O: src/list.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/list.c
+$Bmain$O: src/main.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/main.c
+$Bnull$O: src/null.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/null.c
+$Boutput$O: src/output.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/output.c
+$Bprof$O: src/prof.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/prof.c
+$Bprofio$O: src/profio.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/profio.c
+$Bsimp$O: src/simp.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/simp.c
+$Bstmt$O: src/stmt.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/stmt.c
+$Bstring$O: src/string.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/string.c
+$Bsym$O: src/sym.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/sym.c
+$Bsymbolic$O: src/symbolic.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/symbolic.c
+$Bbytecode$O: src/bytecode.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/bytecode.c
+$Btrace$O: src/trace.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/trace.c
+$Btree$O: src/tree.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/tree.c
+$Btypes$O: src/types.c; $(CC) $(CFLAGS) -c -Isrc -o $@ src/types.c
+$Bstab$O: src/stab.c src/stab.h; $(CC) $(CFLAGS) -c -Isrc -o $@ src/stab.c
+
+$Bdagcheck$O: $Bdagcheck.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bdagcheck.c
+$Balpha$O: $Balpha.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Balpha.c
+$Bmips$O: $Bmips.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bmips.c
+$Bsparc$O: $Bsparc.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bsparc.c
+$Bx86$O: $Bx86.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bx86.c
+$Bx86linux$O: $Bx86linux.c; $(CC) $(CFLAGS) -c -Isrc -o $@ $Bx86linux.c
+
+$Bdagcheck.c: $Blburg$E src/dagcheck.md; $Blburg src/dagcheck.md $@
+$Balpha.c: $Blburg$E src/alpha.md; $Blburg src/alpha.md $@
+$Bmips.c: $Blburg$E src/mips.md; $Blburg src/mips.md $@
+$Bsparc.c: $Blburg$E src/sparc.md; $Blburg src/sparc.md $@
+$Bx86.c: $Blburg$E src/x86.md; $Blburg src/x86.md $@
+$Bx86linux.c: $Blburg$E src/x86linux.md; $Blburg src/x86linux.md $@
+
+$Brcc.h: src/rcc.asdl; $(ASDL_HOME)/bin/asdlGen --c -d $B src/rcc.asdl
+$Brcc$O: $Brcc.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -o $@ $Brcc.c
+$Basdl$O: src/asdl.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -o $@ src/asdl.c
+$Bpass2$O: src/pass2.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -o $@ src/pass2.c
+$B2html$O: src/2html.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -o $@ src/2html.c
+
+$Bpass2$E: $Bpass2$O $(EXTRAOBJS) $Blibrcc$A; $(LD) $(LDFLAGS) -o $@ $Bpass2$O $(EXTRAOBJS) $Blibrcc$A $(EXTRALIBS)
+$B2html$E: $B2html$O $Brcc$O; $(LD) $(LDFLAGS) -o $@ $B2html$O $Brcc$O $(EXTRALIBS)
+
+$Bbprint$E: $Bbprint$O; $(LD) $(LDFLAGS) -o $@ $Bbprint$O
+
+$Bbprint$O: etc/bprint.c; $(CC) $(CFLAGS) -c -Isrc -o $@ etc/bprint.c
+
+$Blcc$E: $Blcc$O $Bhost$O; $(LD) $(LDFLAGS) -o $@ $Blcc$O $Bhost$O
+
+SYSTEM=$(shell cc -print-search-dirs | head -n 1 | cut -b 10-)
+
+$Blcc$O: etc/lcc.c; $(CC) $(CFLAGS) -c -DTEMPDIR=\"$(TEMPDIR)\" -o $@ etc/lcc.c
+$Bhost$O: $(HOSTFILE); $(CC) $(CFLAGS) -c -DSYSTEM=\"$(SYSTEM)\" -o $@ $(HOSTFILE)
+
+LIBOBJS=$Bassert$O $Bbbexit$O $Byynull$O
+
+$Bliblcc$A: $(LIBOBJS); $(AR) $@ $Bassert$O $Bbbexit$O $Byynull$O; $(RANLIB) $@ || true
+
+$Bassert$O: lib/assert.c; $(CC) $(CFLAGS) -c -o $@ lib/assert.c
+$Byynull$O: lib/yynull.c; $(CC) $(CFLAGS) -c -o $@ lib/yynull.c
+$Bbbexit$O: lib/bbexit.c; $(CC) $(CFLAGS) -c -o $@ lib/bbexit.c
+
+$Blburg$E: $Blburg$O $Bgram$O; $(LD) $(LDFLAGS) -o $@ $Blburg$O $Bgram$O
+
+$Blburg$O $Bgram$O: lburg/lburg.h
+
+$Blburg$O: lburg/lburg.c; $(CC) $(CFLAGS) -c -Ilburg -o $@ lburg/lburg.c
+$Bgram$O: lburg/gram.c; $(CC) $(CFLAGS) -c -Ilburg -o $@ lburg/gram.c
+
+CPPOBJS=$Bcpp$O $Blexer$O $Bnlist$O $Btokens$O $Bmacro$O $Beval$O \
+ $Binclude$O $Bhideset$O $Bgetopt$O $Bunix$O
+
+$Bcpp$E: $(CPPOBJS)
+ $(LD) $(LDFLAGS) -o $@ $(CPPOBJS)
+
+$(CPPOBJS): cpp/cpp.h
+
+$Bcpp$O: cpp/cpp.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/cpp.c
+$Blexer$O: cpp/lex.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/lex.c
+$Bnlist$O: cpp/nlist.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/nlist.c
+$Btokens$O: cpp/tokens.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/tokens.c
+$Bmacro$O: cpp/macro.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/macro.c
+$Beval$O: cpp/eval.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/eval.c
+$Binclude$O: cpp/include.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/include.c
+$Bhideset$O: cpp/hideset.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/hideset.c
+$Bgetopt$O: cpp/getopt.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/getopt.c
+$Bunix$O: cpp/unix.c; $(CC) $(CFLAGS) -c -Icpp -o $@ cpp/unix.c
+
+test: $T8q.s \
+ $Tarray.s \
+ $Tcf.s \
+ $Tcq.s \
+ $Tcvt.s \
+ $Tfields.s \
+ $Tfront.s \
+ $Tincr.s \
+ $Tinit.s \
+ $Tlimits.s \
+ $Tparanoia.s \
+ $Tsort.s \
+ $Tspill.s \
+ $Tstdarg.s \
+ $Tstruct.s \
+ $Tswitch.s \
+ $Twf1.s \
+ $Tyacc.s
+
+$T8q.s: tst/8q.c tst/8q.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tarray.s: tst/array.c tst/array.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tcf.s: tst/cf.c tst/cf.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tcq.s: tst/cq.c tst/cq.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tcvt.s: tst/cvt.c tst/cvt.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tfields.s: tst/fields.c tst/fields.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tfront.s: tst/front.c tst/front.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tincr.s: tst/incr.c tst/incr.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tinit.s: tst/init.c tst/init.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tlimits.s: tst/limits.c tst/limits.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tparanoia.s: tst/paranoia.c tst/paranoia.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tsort.s: tst/sort.c tst/sort.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tspill.s: tst/spill.c tst/spill.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tstdarg.s: tst/stdarg.c tst/stdarg.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tstruct.s: tst/struct.c tst/struct.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tswitch.s: tst/switch.c tst/switch.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Twf1.s: tst/wf1.c tst/wf1.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+$Tyacc.s: tst/yacc.c tst/yacc.0 all; @env BUILDDIR=$(BUILDDIR) TSTDIR=$(TSTDIR) src/run.sh $@
+
+testclean:
+ $(RM) $T8q$E $T8q.s $T8q.2 $T8q.1
+ $(RM) $Tarray$E $Tarray.s $Tarray.2 $Tarray.1
+ $(RM) $Tcf$E $Tcf.s $Tcf.2 $Tcf.1
+ $(RM) $Tcq$E $Tcq.s $Tcq.2 $Tcq.1
+ $(RM) $Tcvt$E $Tcvt.s $Tcvt.2 $Tcvt.1
+ $(RM) $Tfields$E $Tfields.s $Tfields.2 $Tfields.1
+ $(RM) $Tfront$E $Tfront.s $Tfront.2 $Tfront.1
+ $(RM) $Tincr$E $Tincr.s $Tincr.2 $Tincr.1
+ $(RM) $Tinit$E $Tinit.s $Tinit.2 $Tinit.1
+ $(RM) $Tlimits$E $Tlimits.s $Tlimits.2 $Tlimits.1
+ $(RM) $Tparanoia$E $Tparanoia.s $Tparanoia.2 $Tparanoia.1
+ $(RM) $Tsort$E $Tsort.s $Tsort.2 $Tsort.1
+ $(RM) $Tspill$E $Tspill.s $Tspill.2 $Tspill.1
+ $(RM) $Tstdarg$E $Tstdarg.s $Tstdarg.2 $Tstdarg.1
+ $(RM) $Tstruct$E $Tstruct.s $Tstruct.2 $Tstruct.1
+ $(RM) $Tswitch$E $Tswitch.s $Tswitch.2 $Tswitch.1
+ $(RM) $Twf1$E $Twf1.s $Twf1.2 $Twf1.1
+ $(RM) $Tyacc$E $Tyacc.s $Tyacc.2 $Tyacc.1
+
+install:: all
+ install -d /usr/local/lib/lcc
+ install -d /usr/local/lib/lcc/gcc
+ install $Blcc$E /usr/local/bin
+ install $Bcpp$E /usr/local/lib/lcc/gcc
+ install $Brcc$E /usr/local/lib/lcc
+ install $Bliblcc$A /usr/local/lib/lcc
+ install $Blibrcc$A /usr/local/lib/lcc
+
+uninstall::
+ $(RM) /usr/local/lib/lcc/librcc$A
+ $(RM) /usr/local/lib/lcc/liblcc$A
+ $(RM) /usr/local/lib/lcc/rcc$E
+ $(RM) /usr/local/lib/lcc/gcc/cpp$E
+ $(RM) /usr/local/bin/lcc$E
+ $(RMDIR) /usr/local/lib/lcc/gcc
+ $(RMDIR) /usr/local/lib/lcc
+
+clean:: testclean
+ $(RM) $B*$O
+ $(RM) $Bdagcheck.c $Balpha.c $Bmips.c $Bx86.c $Bsparc.c $Bx86linux.c $Bgram.c
+ $(RM) $Brcc.c $Brcc.h
+ $(RM) $Brcc1$E $Brcc1$E $B1rcc$E $B2rcc$E
+ $(RM) $B*.ilk
+
+clobber:: clean
+ $(RM) $Brcc$E $B2html$E $Bpass2$E $Blburg$E $Bcpp$E $Blcc$E $Bbprint$E $B*$A
+ $(RM) $B*.pdb $B*.pch
+
+RCCSRCS=src/alloc.c \
+ src/bind.c \
+ src/dag.c \
+ src/decl.c \
+ src/enode.c \
+ src/error.c \
+ src/expr.c \
+ src/event.c \
+ src/init.c \
+ src/inits.c \
+ src/input.c \
+ src/lex.c \
+ src/list.c \
+ src/main.c \
+ src/output.c \
+ src/prof.c \
+ src/profio.c \
+ src/simp.c \
+ src/stmt.c \
+ src/string.c \
+ src/sym.c \
+ src/trace.c \
+ src/tree.c \
+ src/types.c \
+ src/null.c \
+ src/symbolic.c \
+ src/bytecode.c \
+ src/gen.c \
+ src/stab.c \
+ $Bdagcheck.c \
+ $Balpha.c \
+ $Bmips.c \
+ $Bsparc.c \
+ $Bx86linux.c \
+ $Bx86.c
+
+C=$Blcc -A -d0.6 -Wo-lccdir=$(BUILDDIR) -Isrc -I$(BUILDDIR)
+triple: $Brcc$E $Blcc$E $Bcpp$E
+ $C -o $B1rcc$E -B$B $(RCCSRCS)
+ $C -o $B2rcc$E -B$B1 $(RCCSRCS)
+ strip $B1rcc$E $B2rcc$E
+ dd if=$B1rcc$E of=$Brcc1$E bs=512 skip=1
+ dd if=$B2rcc$E of=$Brcc2$E bs=512 skip=1
+ if cmp $Brcc1$E $Brcc2$E; then \
+ mv $B2rcc$E $Brcc$E; \
+ $(RM) $B1rcc$E $Brcc[12]$E; fi
diff --git a/lcc/makefile.nt b/lcc/makefile.nt
index 2cd94b0..7508dc4 100755
--- a/lcc/makefile.nt
+++ b/lcc/makefile.nt
@@ -1,383 +1,383 @@
-# $Id: makefile.nt 314 2002-10-05 17:07:57Z timo $
-HOSTFILE=etc/win32.c
-TARGET=x86\win32
-TEMPDIR=\\temp
-A=.lib
-O=.obj
-E=.exe
-CC=cl -nologo
-CFLAGS=-DWIN32 -Zi -MLd -Fd$(BUILDDIR)^\
-LD=cl -nologo
-LDFLAGS=-Zi -MLd -Fd$(BUILDDIR)^\
-B=$(BUILDDIR)^\
-T=$B$(TARGET)\tst^\
-C=$Blcc -Wo-lccdir=$(BUILDDIR) -Wf-target=$(TARGET) -I$B$(TARGET)/include
-# $Id: makefile.nt 314 2002-10-05 17:07:57Z timo $
-
-what:
- -@echo make all q3rcc lburg q3cpp lcc bprint liblcc triple clean clobber
-
-all:: q3rcc lburg q3cpp lcc bprint liblcc
-
-q3rcc: $Bq3rcc$E
-lburg: $Blburg$E
-q3cpp: $Bq3cpp$E
-lcc: $Blcc$E
-bprint: $Bbprint$E
-liblcc: $Bliblcc$A
-
-RCCOBJS=$Balloc$O \
- $Bbind$O \
- $Bdag$O \
- $Bdagcheck$O \
- $Bdecl$O \
- $Benode$O \
- $Berror$O \
- $Bexpr$O \
- $Bevent$O \
- $Binit$O \
- $Binits$O \
- $Binput$O \
- $Blex$O \
- $Blist$O \
- $Bmain$O \
- $Boutput$O \
- $Bprof$O \
- $Bprofio$O \
- $Bsimp$O \
- $Bstmt$O \
- $Bstring$O \
- $Bsym$O \
- $Btrace$O \
- $Btree$O \
- $Btypes$O \
- $Bnull$O \
- $Bsymbolic$O \
- $Bgen$O \
- $Bbytecode$O \
- $Balpha$O \
- $Bmips$O \
- $Bsparc$O \
- $Bstab$O \
- $Bx86$O \
- $Bx86linux$O
-
-$Bq3rcc$E:: $Bmain$O $Blibrcc$A $(EXTRAOBJS)
- $(LD) $(LDFLAGS) -Fe$@ $Bmain$O $(EXTRAOBJS) $Blibrcc$A $(EXTRALIBS)
-
-$Blibrcc$A: $(RCCOBJS)
- lib -out:$@ $(RCCOBJS)
-
-$(RCCOBJS): src/c.h src/token.h src/config.h
-
-$Balloc$O: src/alloc.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/alloc.c
-$Bbind$O: src/bind.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/bind.c
-$Bdag$O: src/dag.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/dag.c
-$Bdecl$O: src/decl.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/decl.c
-$Benode$O: src/enode.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/enode.c
-$Berror$O: src/error.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/error.c
-$Bevent$O: src/event.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/event.c
-$Bexpr$O: src/expr.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/expr.c
-$Bgen$O: src/gen.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/gen.c
-$Binit$O: src/init.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/init.c
-$Binits$O: src/inits.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/inits.c
-$Binput$O: src/input.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/input.c
-$Blex$O: src/lex.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/lex.c
-$Blist$O: src/list.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/list.c
-$Bmain$O: src/main.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/main.c
-$Bnull$O: src/null.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/null.c
-$Boutput$O: src/output.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/output.c
-$Bprof$O: src/prof.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/prof.c
-$Bprofio$O: src/profio.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/profio.c
-$Bsimp$O: src/simp.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/simp.c
-$Bstmt$O: src/stmt.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/stmt.c
-$Bstring$O: src/string.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/string.c
-$Bsym$O: src/sym.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/sym.c
-$Bsymbolic$O: src/symbolic.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/symbolic.c
-$Bbytecode$O: src/bytecode.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/bytecode.c
-$Btrace$O: src/trace.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/trace.c
-$Btree$O: src/tree.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/tree.c
-$Btypes$O: src/types.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/types.c
-$Bstab$O: src/stab.c src/stab.h; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/stab.c
-
-$Bdagcheck$O: $Bdagcheck.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bdagcheck.c
-$Balpha$O: $Balpha.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Balpha.c
-$Bmips$O: $Bmips.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bmips.c
-$Bsparc$O: $Bsparc.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bsparc.c
-$Bx86$O: $Bx86.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bx86.c
-$Bx86linux$O: $Bx86linux.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bx86linux.c
-
-$Bdagcheck.c: $Blburg$E src/dagcheck.md; $Blburg src/dagcheck.md $@
-$Balpha.c: $Blburg$E src/alpha.md; $Blburg src/alpha.md $@
-$Bmips.c: $Blburg$E src/mips.md; $Blburg src/mips.md $@
-$Bsparc.c: $Blburg$E src/sparc.md; $Blburg src/sparc.md $@
-$Bx86.c: $Blburg$E src/x86.md; $Blburg src/x86.md $@
-$Bx86linux.c: $Blburg$E src/x86linux.md; $Blburg src/x86linux.md $@
-
-$Brcc.h: src/rcc.asdl; $(ASDL_HOME)/bin/asdlGen --c -d $B src/rcc.asdl
-$Brcc$O: $Brcc.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -Fo$@ $Brcc.c
-$Basdl$O: src/asdl.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -Fo$@ src/asdl.c
-$Bpass2$O: src/pass2.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -Fo$@ src/pass2.c
-$B2html$O: src/2html.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -Fo$@ src/2html.c
-
-$Bpass2$E: $Bpass2$O $(EXTRAOBJS) $Blibrcc$A; $(LD) $(LDFLAGS) -Fe$@ $Bpass2$O $(EXTRAOBJS) $Blibrcc$A $(EXTRALIBS)
-$B2html$E: $B2html$O $Brcc$O; $(LD) $(LDFLAGS) -Fe$@ $B2html$O $Brcc$O $(EXTRALIBS)
-
-$Bbprint$E: $Bbprint$O; $(LD) $(LDFLAGS) -Fe$@ $Bbprint$O
-
-$Bbprint$O: etc/bprint.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ etc/bprint.c
-
-$Blcc$E: $Blcc$O $Bhost$O; $(LD) $(LDFLAGS) -Fe$@ $Blcc$O $Bhost$O
-
-$Blcc$O: etc/lcc.c; $(CC) $(CFLAGS) -c -DTEMPDIR=\"$(TEMPDIR)\" -Fo$@ etc/lcc.c
-$Bhost$O: $(HOSTFILE); $(CC) $(CFLAGS) -c -Fo$@ $(HOSTFILE)
-
-LIBOBJS=$Bassert$O $Bbbexit$O $Byynull$O
-
-$Bliblcc$A: $(LIBOBJS); lib -out:$@ $Bassert$O $Bbbexit$O $Byynull$O
-
-$Bassert$O: lib/assert.c; $(CC) -c -Fo$@ lib/assert.c
-$Byynull$O: lib/yynull.c; $(CC) -c -Fo$@ lib/yynull.c
-$Bbbexit$O: lib/bbexit.c; $(CC) -c -Fo$@ lib/bbexit.c
-
-$Blburg$E: $Blburg$O $Bgram$O; $(LD) $(LDFLAGS) -Fe$@ $Blburg$O $Bgram$O
-
-$Blburg$O $Bgram$O: lburg/lburg.h
-
-$Blburg$O: lburg/lburg.c; $(CC) $(CFLAGS) -c -Ilburg -Fo$@ lburg/lburg.c
-$Bgram$O: lburg/gram.c; $(CC) $(CFLAGS) -c -Ilburg -Fo$@ lburg/gram.c
-
-CPPOBJS=$Bcpp$O $Blexer$O $Bnlist$O $Btokens$O $Bmacro$O $Beval$O \
- $Binclude$O $Bhideset$O $Bgetopt$O $Bunix$O
-
-$Bq3cpp$E: $(CPPOBJS)
- $(LD) $(LDFLAGS) -Fe$@ $(CPPOBJS)
-
-$(CPPOBJS): cpp/cpp.h
-
-$Bcpp$O: cpp/cpp.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/cpp.c
-$Blexer$O: cpp/lex.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/lex.c
-$Bnlist$O: cpp/nlist.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/nlist.c
-$Btokens$O: cpp/tokens.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/tokens.c
-$Bmacro$O: cpp/macro.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/macro.c
-$Beval$O: cpp/eval.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/eval.c
-$Binclude$O: cpp/include.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/include.c
-$Bhideset$O: cpp/hideset.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/hideset.c
-$Bgetopt$O: cpp/getopt.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/getopt.c
-$Bunix$O: cpp/unix.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/unix.c
-
-test: $T8q.s \
- $Tarray.s \
- $Tcf.s \
- $Tcq.s \
- $Tcvt.s \
- $Tfields.s \
- $Tfront.s \
- $Tincr.s \
- $Tinit.s \
- $Tlimits.s \
- $Tparanoia.s \
- $Tsort.s \
- $Tspill.s \
- $Tstdarg.s \
- $Tstruct.s \
- $Tswitch.s \
- $Twf1.s \
- $Tyacc.s
-
-$T8q.s: tst\8q.c tst\8q.0 all
- -$C -S -Wf-errout=$T8q.2 -o $T8q.s tst/8q.c
- fc $(TARGET)\tst\8q.sbk $T8q.s
- fc $(TARGET)\tst\8q.2bk $T8q.2
- $C -o $T8q$E $T8q.s
- -$T8q$E <tst/8q.0 >$T8q.1
- fc $(TARGET)\tst\8q.1bk $T8q.1
-$Tarray.s: tst\array.c tst\array.0 all
- -$C -S -Wf-errout=$Tarray.2 -o $Tarray.s tst/array.c
- fc $(TARGET)\tst\array.sbk $Tarray.s
- fc $(TARGET)\tst\array.2bk $Tarray.2
- $C -o $Tarray$E $Tarray.s
- -$Tarray$E <tst/array.0 >$Tarray.1
- fc $(TARGET)\tst\array.1bk $Tarray.1
-$Tcf.s: tst\cf.c tst\cf.0 all
- -$C -S -Wf-errout=$Tcf.2 -o $Tcf.s tst/cf.c
- fc $(TARGET)\tst\cf.sbk $Tcf.s
- fc $(TARGET)\tst\cf.2bk $Tcf.2
- $C -o $Tcf$E $Tcf.s
- -$Tcf$E <tst/cf.0 >$Tcf.1
- fc $(TARGET)\tst\cf.1bk $Tcf.1
-$Tcq.s: tst\cq.c tst\cq.0 all
- -$C -S -Wf-errout=$Tcq.2 -o $Tcq.s tst/cq.c
- fc $(TARGET)\tst\cq.sbk $Tcq.s
- fc $(TARGET)\tst\cq.2bk $Tcq.2
- $C -o $Tcq$E $Tcq.s
- -$Tcq$E <tst/cq.0 >$Tcq.1
- fc $(TARGET)\tst\cq.1bk $Tcq.1
-$Tcvt.s: tst\cvt.c tst\cvt.0 all
- -$C -S -Wf-errout=$Tcvt.2 -o $Tcvt.s tst/cvt.c
- fc $(TARGET)\tst\cvt.sbk $Tcvt.s
- fc $(TARGET)\tst\cvt.2bk $Tcvt.2
- $C -o $Tcvt$E $Tcvt.s
- -$Tcvt$E <tst/cvt.0 >$Tcvt.1
- fc $(TARGET)\tst\cvt.1bk $Tcvt.1
-$Tfields.s: tst\fields.c tst\fields.0 all
- -$C -S -Wf-errout=$Tfields.2 -o $Tfields.s tst/fields.c
- fc $(TARGET)\tst\fields.sbk $Tfields.s
- fc $(TARGET)\tst\fields.2bk $Tfields.2
- $C -o $Tfields$E $Tfields.s
- -$Tfields$E <tst/fields.0 >$Tfields.1
- fc $(TARGET)\tst\fields.1bk $Tfields.1
-$Tfront.s: tst\front.c tst\front.0 all
- -$C -S -Wf-errout=$Tfront.2 -o $Tfront.s tst/front.c
- fc $(TARGET)\tst\front.sbk $Tfront.s
- fc $(TARGET)\tst\front.2bk $Tfront.2
-$Tincr.s: tst\incr.c tst\incr.0 all
- -$C -S -Wf-errout=$Tincr.2 -o $Tincr.s tst/incr.c
- fc $(TARGET)\tst\incr.sbk $Tincr.s
- fc $(TARGET)\tst\incr.2bk $Tincr.2
- $C -o $Tincr$E $Tincr.s
- -$Tincr$E <tst/incr.0 >$Tincr.1
- fc $(TARGET)\tst\incr.1bk $Tincr.1
-$Tinit.s: tst\init.c tst\init.0 all
- -$C -S -Wf-errout=$Tinit.2 -o $Tinit.s tst/init.c
- fc $(TARGET)\tst\init.sbk $Tinit.s
- fc $(TARGET)\tst\init.2bk $Tinit.2
- $C -o $Tinit$E $Tinit.s
- -$Tinit$E <tst/init.0 >$Tinit.1
- fc $(TARGET)\tst\init.1bk $Tinit.1
-$Tlimits.s: tst\limits.c tst\limits.0 all
- -$C -S -Wf-errout=$Tlimits.2 -o $Tlimits.s tst/limits.c
- fc $(TARGET)\tst\limits.sbk $Tlimits.s
- fc $(TARGET)\tst\limits.2bk $Tlimits.2
- $C -o $Tlimits$E $Tlimits.s
- -$Tlimits$E <tst/limits.0 >$Tlimits.1
- fc $(TARGET)\tst\limits.1bk $Tlimits.1
-$Tparanoia.s: tst\paranoia.c tst\paranoia.0 all
- -$C -S -Wf-errout=$Tparanoia.2 -o $Tparanoia.s tst/paranoia.c
- fc $(TARGET)\tst\paranoia.sbk $Tparanoia.s
- fc $(TARGET)\tst\paranoia.2bk $Tparanoia.2
- $C -o $Tparanoia$E $Tparanoia.s
- -$Tparanoia$E <tst/paranoia.0 >$Tparanoia.1
- fc $(TARGET)\tst\paranoia.1bk $Tparanoia.1
-$Tsort.s: tst\sort.c tst\sort.0 all
- -$C -S -Wf-errout=$Tsort.2 -o $Tsort.s tst/sort.c
- fc $(TARGET)\tst\sort.sbk $Tsort.s
- fc $(TARGET)\tst\sort.2bk $Tsort.2
- $C -o $Tsort$E $Tsort.s
- -$Tsort$E <tst/sort.0 >$Tsort.1
- fc $(TARGET)\tst\sort.1bk $Tsort.1
-$Tspill.s: tst\spill.c tst\spill.0 all
- -$C -S -Wf-errout=$Tspill.2 -o $Tspill.s tst/spill.c
- fc $(TARGET)\tst\spill.sbk $Tspill.s
- fc $(TARGET)\tst\spill.2bk $Tspill.2
- $C -o $Tspill$E $Tspill.s
- -$Tspill$E <tst/spill.0 >$Tspill.1
- fc $(TARGET)\tst\spill.1bk $Tspill.1
-$Tstdarg.s: tst\stdarg.c tst\stdarg.0 all
- -$C -S -Wf-errout=$Tstdarg.2 -o $Tstdarg.s tst/stdarg.c
- fc $(TARGET)\tst\stdarg.sbk $Tstdarg.s
- fc $(TARGET)\tst\stdarg.2bk $Tstdarg.2
- $C -o $Tstdarg$E $Tstdarg.s
- -$Tstdarg$E <tst/stdarg.0 >$Tstdarg.1
- fc $(TARGET)\tst\stdarg.1bk $Tstdarg.1
-$Tstruct.s: tst\struct.c tst\struct.0 all
- -$C -S -Wf-errout=$Tstruct.2 -o $Tstruct.s tst/struct.c
- fc $(TARGET)\tst\struct.sbk $Tstruct.s
- fc $(TARGET)\tst\struct.2bk $Tstruct.2
- $C -o $Tstruct$E $Tstruct.s
- -$Tstruct$E <tst/struct.0 >$Tstruct.1
- fc $(TARGET)\tst\struct.1bk $Tstruct.1
-$Tswitch.s: tst\switch.c tst\switch.0 all
- -$C -S -Wf-errout=$Tswitch.2 -o $Tswitch.s tst/switch.c
- fc $(TARGET)\tst\switch.sbk $Tswitch.s
- fc $(TARGET)\tst\switch.2bk $Tswitch.2
- $C -o $Tswitch$E $Tswitch.s
- -$Tswitch$E <tst/switch.0 >$Tswitch.1
- fc $(TARGET)\tst\switch.1bk $Tswitch.1
-$Twf1.s: tst\wf1.c tst\wf1.0 all
- -$C -S -Wf-errout=$Twf1.2 -o $Twf1.s tst/wf1.c
- fc $(TARGET)\tst\wf1.sbk $Twf1.s
- fc $(TARGET)\tst\wf1.2bk $Twf1.2
- $C -o $Twf1$E $Twf1.s
- -$Twf1$E <tst/wf1.0 >$Twf1.1
- fc $(TARGET)\tst\wf1.1bk $Twf1.1
-$Tyacc.s: tst\yacc.c tst\yacc.0 all
- -$C -S -Wf-errout=$Tyacc.2 -o $Tyacc.s tst/yacc.c
- fc $(TARGET)\tst\yacc.sbk $Tyacc.s
- fc $(TARGET)\tst\yacc.2bk $Tyacc.2
- $C -o $Tyacc$E $Tyacc.s
- -$Tyacc$E <tst/yacc.0 >$Tyacc.1
- fc $(TARGET)\tst\yacc.1bk $Tyacc.1
-
-testclean:
- -del /q $T8q$E $T8q.s $T8q.2 $T8q.1
- -del /q $Tarray$E $Tarray.s $Tarray.2 $Tarray.1
- -del /q $Tcf$E $Tcf.s $Tcf.2 $Tcf.1
- -del /q $Tcq$E $Tcq.s $Tcq.2 $Tcq.1
- -del /q $Tcvt$E $Tcvt.s $Tcvt.2 $Tcvt.1
- -del /q $Tfields$E $Tfields.s $Tfields.2 $Tfields.1
- -del /q $Tfront$E $Tfront.s $Tfront.2 $Tfront.1
- -del /q $Tincr$E $Tincr.s $Tincr.2 $Tincr.1
- -del /q $Tinit$E $Tinit.s $Tinit.2 $Tinit.1
- -del /q $Tlimits$E $Tlimits.s $Tlimits.2 $Tlimits.1
- -del /q $Tparanoia$E $Tparanoia.s $Tparanoia.2 $Tparanoia.1
- -del /q $Tsort$E $Tsort.s $Tsort.2 $Tsort.1
- -del /q $Tspill$E $Tspill.s $Tspill.2 $Tspill.1
- -del /q $Tstdarg$E $Tstdarg.s $Tstdarg.2 $Tstdarg.1
- -del /q $Tstruct$E $Tstruct.s $Tstruct.2 $Tstruct.1
- -del /q $Tswitch$E $Tswitch.s $Tswitch.2 $Tswitch.1
- -del /q $Twf1$E $Twf1.s $Twf1.2 $Twf1.1
- -del /q $Tyacc$E $Tyacc.s $Tyacc.2 $Tyacc.1
-
-clean:: testclean
- -del /q $B*$O
- -del /q $Bdagcheck.c $Balpha.c $Bmips.c $Bx86.c $Bsparc.c $Bx86linux.c $Bgram.c
- -del /q $Brcc.c $Brcc.h
- -del /q $Bq3rcc1$E $Brcc1$E $B1rcc$E $B2rcc$E
- -del /q $B*.ilk
-
-clobber:: clean
- -del /q $Bq3rcc$E $B2html$E $Bpass2$E $Blburg$E $Bq3cpp$E $Blcc$E $Bbprint$E $B*$A
- -del /q $B*.pdb $B*.pch
-
-RCCSRCS=src/alloc.c \
- src/bind.c \
- src/dag.c \
- src/decl.c \
- src/enode.c \
- src/error.c \
- src/expr.c \
- src/event.c \
- src/init.c \
- src/inits.c \
- src/input.c \
- src/lex.c \
- src/list.c \
- src/main.c \
- src/output.c \
- src/prof.c \
- src/profio.c \
- src/simp.c \
- src/stmt.c \
- src/string.c \
- src/sym.c \
- src/trace.c \
- src/tree.c \
- src/types.c \
- src/null.c \
- src/symbolic.c \
- src/bytecode.c \
- src/gen.c \
- src/stab.c \
- $Bdagcheck.c \
- $Balpha.c \
- $Bmips.c \
- $Bsparc.c \
- $Bx86linux.c \
- $Bx86.c
-
-C=$Blcc -A -d0.6 -Wo-lccdir=$(BUILDDIR) -Isrc -I$(BUILDDIR)
-triple: $Bq3rcc$E $Blcc$E $Bq3cpp$E
- $C -o $B1rcc$E -B$B $(RCCSRCS)
- $C -o $B2rcc$E -B$B1 $(RCCSRCS)
- fc /b $B1rcc$E $B2rcc$E
+# $Id: makefile.nt 314 2002-10-05 17:07:57Z timo $
+HOSTFILE=etc/win32.c
+TARGET=x86\win32
+TEMPDIR=\\temp
+A=.lib
+O=.obj
+E=.exe
+CC=cl -nologo
+CFLAGS=-DWIN32 -Zi -MLd -Fd$(BUILDDIR)^\
+LD=cl -nologo
+LDFLAGS=-Zi -MLd -Fd$(BUILDDIR)^\
+B=$(BUILDDIR)^\
+T=$B$(TARGET)\tst^\
+C=$Blcc -Wo-lccdir=$(BUILDDIR) -Wf-target=$(TARGET) -I$B$(TARGET)/include
+# $Id: makefile.nt 314 2002-10-05 17:07:57Z timo $
+
+what:
+ -@echo make all q3rcc lburg q3cpp lcc bprint liblcc triple clean clobber
+
+all:: q3rcc lburg q3cpp lcc bprint liblcc
+
+q3rcc: $Bq3rcc$E
+lburg: $Blburg$E
+q3cpp: $Bq3cpp$E
+lcc: $Blcc$E
+bprint: $Bbprint$E
+liblcc: $Bliblcc$A
+
+RCCOBJS=$Balloc$O \
+ $Bbind$O \
+ $Bdag$O \
+ $Bdagcheck$O \
+ $Bdecl$O \
+ $Benode$O \
+ $Berror$O \
+ $Bexpr$O \
+ $Bevent$O \
+ $Binit$O \
+ $Binits$O \
+ $Binput$O \
+ $Blex$O \
+ $Blist$O \
+ $Bmain$O \
+ $Boutput$O \
+ $Bprof$O \
+ $Bprofio$O \
+ $Bsimp$O \
+ $Bstmt$O \
+ $Bstring$O \
+ $Bsym$O \
+ $Btrace$O \
+ $Btree$O \
+ $Btypes$O \
+ $Bnull$O \
+ $Bsymbolic$O \
+ $Bgen$O \
+ $Bbytecode$O \
+ $Balpha$O \
+ $Bmips$O \
+ $Bsparc$O \
+ $Bstab$O \
+ $Bx86$O \
+ $Bx86linux$O
+
+$Bq3rcc$E:: $Bmain$O $Blibrcc$A $(EXTRAOBJS)
+ $(LD) $(LDFLAGS) -Fe$@ $Bmain$O $(EXTRAOBJS) $Blibrcc$A $(EXTRALIBS)
+
+$Blibrcc$A: $(RCCOBJS)
+ lib -out:$@ $(RCCOBJS)
+
+$(RCCOBJS): src/c.h src/token.h src/config.h
+
+$Balloc$O: src/alloc.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/alloc.c
+$Bbind$O: src/bind.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/bind.c
+$Bdag$O: src/dag.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/dag.c
+$Bdecl$O: src/decl.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/decl.c
+$Benode$O: src/enode.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/enode.c
+$Berror$O: src/error.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/error.c
+$Bevent$O: src/event.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/event.c
+$Bexpr$O: src/expr.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/expr.c
+$Bgen$O: src/gen.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/gen.c
+$Binit$O: src/init.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/init.c
+$Binits$O: src/inits.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/inits.c
+$Binput$O: src/input.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/input.c
+$Blex$O: src/lex.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/lex.c
+$Blist$O: src/list.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/list.c
+$Bmain$O: src/main.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/main.c
+$Bnull$O: src/null.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/null.c
+$Boutput$O: src/output.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/output.c
+$Bprof$O: src/prof.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/prof.c
+$Bprofio$O: src/profio.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/profio.c
+$Bsimp$O: src/simp.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/simp.c
+$Bstmt$O: src/stmt.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/stmt.c
+$Bstring$O: src/string.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/string.c
+$Bsym$O: src/sym.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/sym.c
+$Bsymbolic$O: src/symbolic.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/symbolic.c
+$Bbytecode$O: src/bytecode.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/bytecode.c
+$Btrace$O: src/trace.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/trace.c
+$Btree$O: src/tree.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/tree.c
+$Btypes$O: src/types.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/types.c
+$Bstab$O: src/stab.c src/stab.h; $(CC) $(CFLAGS) -c -Isrc -Fo$@ src/stab.c
+
+$Bdagcheck$O: $Bdagcheck.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bdagcheck.c
+$Balpha$O: $Balpha.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Balpha.c
+$Bmips$O: $Bmips.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bmips.c
+$Bsparc$O: $Bsparc.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bsparc.c
+$Bx86$O: $Bx86.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bx86.c
+$Bx86linux$O: $Bx86linux.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ $Bx86linux.c
+
+$Bdagcheck.c: $Blburg$E src/dagcheck.md; $Blburg src/dagcheck.md $@
+$Balpha.c: $Blburg$E src/alpha.md; $Blburg src/alpha.md $@
+$Bmips.c: $Blburg$E src/mips.md; $Blburg src/mips.md $@
+$Bsparc.c: $Blburg$E src/sparc.md; $Blburg src/sparc.md $@
+$Bx86.c: $Blburg$E src/x86.md; $Blburg src/x86.md $@
+$Bx86linux.c: $Blburg$E src/x86linux.md; $Blburg src/x86linux.md $@
+
+$Brcc.h: src/rcc.asdl; $(ASDL_HOME)/bin/asdlGen --c -d $B src/rcc.asdl
+$Brcc$O: $Brcc.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -Fo$@ $Brcc.c
+$Basdl$O: src/asdl.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -Fo$@ src/asdl.c
+$Bpass2$O: src/pass2.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -Fo$@ src/pass2.c
+$B2html$O: src/2html.c $Brcc.h src/c.h; $(CC) $(CFLAGS) -c -Isrc -I$B -I$(ASDL_HOME)/include/asdlGen -Fo$@ src/2html.c
+
+$Bpass2$E: $Bpass2$O $(EXTRAOBJS) $Blibrcc$A; $(LD) $(LDFLAGS) -Fe$@ $Bpass2$O $(EXTRAOBJS) $Blibrcc$A $(EXTRALIBS)
+$B2html$E: $B2html$O $Brcc$O; $(LD) $(LDFLAGS) -Fe$@ $B2html$O $Brcc$O $(EXTRALIBS)
+
+$Bbprint$E: $Bbprint$O; $(LD) $(LDFLAGS) -Fe$@ $Bbprint$O
+
+$Bbprint$O: etc/bprint.c; $(CC) $(CFLAGS) -c -Isrc -Fo$@ etc/bprint.c
+
+$Blcc$E: $Blcc$O $Bhost$O; $(LD) $(LDFLAGS) -Fe$@ $Blcc$O $Bhost$O
+
+$Blcc$O: etc/lcc.c; $(CC) $(CFLAGS) -c -DTEMPDIR=\"$(TEMPDIR)\" -Fo$@ etc/lcc.c
+$Bhost$O: $(HOSTFILE); $(CC) $(CFLAGS) -c -Fo$@ $(HOSTFILE)
+
+LIBOBJS=$Bassert$O $Bbbexit$O $Byynull$O
+
+$Bliblcc$A: $(LIBOBJS); lib -out:$@ $Bassert$O $Bbbexit$O $Byynull$O
+
+$Bassert$O: lib/assert.c; $(CC) -c -Fo$@ lib/assert.c
+$Byynull$O: lib/yynull.c; $(CC) -c -Fo$@ lib/yynull.c
+$Bbbexit$O: lib/bbexit.c; $(CC) -c -Fo$@ lib/bbexit.c
+
+$Blburg$E: $Blburg$O $Bgram$O; $(LD) $(LDFLAGS) -Fe$@ $Blburg$O $Bgram$O
+
+$Blburg$O $Bgram$O: lburg/lburg.h
+
+$Blburg$O: lburg/lburg.c; $(CC) $(CFLAGS) -c -Ilburg -Fo$@ lburg/lburg.c
+$Bgram$O: lburg/gram.c; $(CC) $(CFLAGS) -c -Ilburg -Fo$@ lburg/gram.c
+
+CPPOBJS=$Bcpp$O $Blexer$O $Bnlist$O $Btokens$O $Bmacro$O $Beval$O \
+ $Binclude$O $Bhideset$O $Bgetopt$O $Bunix$O
+
+$Bq3cpp$E: $(CPPOBJS)
+ $(LD) $(LDFLAGS) -Fe$@ $(CPPOBJS)
+
+$(CPPOBJS): cpp/cpp.h
+
+$Bcpp$O: cpp/cpp.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/cpp.c
+$Blexer$O: cpp/lex.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/lex.c
+$Bnlist$O: cpp/nlist.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/nlist.c
+$Btokens$O: cpp/tokens.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/tokens.c
+$Bmacro$O: cpp/macro.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/macro.c
+$Beval$O: cpp/eval.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/eval.c
+$Binclude$O: cpp/include.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/include.c
+$Bhideset$O: cpp/hideset.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/hideset.c
+$Bgetopt$O: cpp/getopt.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/getopt.c
+$Bunix$O: cpp/unix.c; $(CC) $(CFLAGS) -c -Icpp -Fo$@ cpp/unix.c
+
+test: $T8q.s \
+ $Tarray.s \
+ $Tcf.s \
+ $Tcq.s \
+ $Tcvt.s \
+ $Tfields.s \
+ $Tfront.s \
+ $Tincr.s \
+ $Tinit.s \
+ $Tlimits.s \
+ $Tparanoia.s \
+ $Tsort.s \
+ $Tspill.s \
+ $Tstdarg.s \
+ $Tstruct.s \
+ $Tswitch.s \
+ $Twf1.s \
+ $Tyacc.s
+
+$T8q.s: tst\8q.c tst\8q.0 all
+ -$C -S -Wf-errout=$T8q.2 -o $T8q.s tst/8q.c
+ fc $(TARGET)\tst\8q.sbk $T8q.s
+ fc $(TARGET)\tst\8q.2bk $T8q.2
+ $C -o $T8q$E $T8q.s
+ -$T8q$E <tst/8q.0 >$T8q.1
+ fc $(TARGET)\tst\8q.1bk $T8q.1
+$Tarray.s: tst\array.c tst\array.0 all
+ -$C -S -Wf-errout=$Tarray.2 -o $Tarray.s tst/array.c
+ fc $(TARGET)\tst\array.sbk $Tarray.s
+ fc $(TARGET)\tst\array.2bk $Tarray.2
+ $C -o $Tarray$E $Tarray.s
+ -$Tarray$E <tst/array.0 >$Tarray.1
+ fc $(TARGET)\tst\array.1bk $Tarray.1
+$Tcf.s: tst\cf.c tst\cf.0 all
+ -$C -S -Wf-errout=$Tcf.2 -o $Tcf.s tst/cf.c
+ fc $(TARGET)\tst\cf.sbk $Tcf.s
+ fc $(TARGET)\tst\cf.2bk $Tcf.2
+ $C -o $Tcf$E $Tcf.s
+ -$Tcf$E <tst/cf.0 >$Tcf.1
+ fc $(TARGET)\tst\cf.1bk $Tcf.1
+$Tcq.s: tst\cq.c tst\cq.0 all
+ -$C -S -Wf-errout=$Tcq.2 -o $Tcq.s tst/cq.c
+ fc $(TARGET)\tst\cq.sbk $Tcq.s
+ fc $(TARGET)\tst\cq.2bk $Tcq.2
+ $C -o $Tcq$E $Tcq.s
+ -$Tcq$E <tst/cq.0 >$Tcq.1
+ fc $(TARGET)\tst\cq.1bk $Tcq.1
+$Tcvt.s: tst\cvt.c tst\cvt.0 all
+ -$C -S -Wf-errout=$Tcvt.2 -o $Tcvt.s tst/cvt.c
+ fc $(TARGET)\tst\cvt.sbk $Tcvt.s
+ fc $(TARGET)\tst\cvt.2bk $Tcvt.2
+ $C -o $Tcvt$E $Tcvt.s
+ -$Tcvt$E <tst/cvt.0 >$Tcvt.1
+ fc $(TARGET)\tst\cvt.1bk $Tcvt.1
+$Tfields.s: tst\fields.c tst\fields.0 all
+ -$C -S -Wf-errout=$Tfields.2 -o $Tfields.s tst/fields.c
+ fc $(TARGET)\tst\fields.sbk $Tfields.s
+ fc $(TARGET)\tst\fields.2bk $Tfields.2
+ $C -o $Tfields$E $Tfields.s
+ -$Tfields$E <tst/fields.0 >$Tfields.1
+ fc $(TARGET)\tst\fields.1bk $Tfields.1
+$Tfront.s: tst\front.c tst\front.0 all
+ -$C -S -Wf-errout=$Tfront.2 -o $Tfront.s tst/front.c
+ fc $(TARGET)\tst\front.sbk $Tfront.s
+ fc $(TARGET)\tst\front.2bk $Tfront.2
+$Tincr.s: tst\incr.c tst\incr.0 all
+ -$C -S -Wf-errout=$Tincr.2 -o $Tincr.s tst/incr.c
+ fc $(TARGET)\tst\incr.sbk $Tincr.s
+ fc $(TARGET)\tst\incr.2bk $Tincr.2
+ $C -o $Tincr$E $Tincr.s
+ -$Tincr$E <tst/incr.0 >$Tincr.1
+ fc $(TARGET)\tst\incr.1bk $Tincr.1
+$Tinit.s: tst\init.c tst\init.0 all
+ -$C -S -Wf-errout=$Tinit.2 -o $Tinit.s tst/init.c
+ fc $(TARGET)\tst\init.sbk $Tinit.s
+ fc $(TARGET)\tst\init.2bk $Tinit.2
+ $C -o $Tinit$E $Tinit.s
+ -$Tinit$E <tst/init.0 >$Tinit.1
+ fc $(TARGET)\tst\init.1bk $Tinit.1
+$Tlimits.s: tst\limits.c tst\limits.0 all
+ -$C -S -Wf-errout=$Tlimits.2 -o $Tlimits.s tst/limits.c
+ fc $(TARGET)\tst\limits.sbk $Tlimits.s
+ fc $(TARGET)\tst\limits.2bk $Tlimits.2
+ $C -o $Tlimits$E $Tlimits.s
+ -$Tlimits$E <tst/limits.0 >$Tlimits.1
+ fc $(TARGET)\tst\limits.1bk $Tlimits.1
+$Tparanoia.s: tst\paranoia.c tst\paranoia.0 all
+ -$C -S -Wf-errout=$Tparanoia.2 -o $Tparanoia.s tst/paranoia.c
+ fc $(TARGET)\tst\paranoia.sbk $Tparanoia.s
+ fc $(TARGET)\tst\paranoia.2bk $Tparanoia.2
+ $C -o $Tparanoia$E $Tparanoia.s
+ -$Tparanoia$E <tst/paranoia.0 >$Tparanoia.1
+ fc $(TARGET)\tst\paranoia.1bk $Tparanoia.1
+$Tsort.s: tst\sort.c tst\sort.0 all
+ -$C -S -Wf-errout=$Tsort.2 -o $Tsort.s tst/sort.c
+ fc $(TARGET)\tst\sort.sbk $Tsort.s
+ fc $(TARGET)\tst\sort.2bk $Tsort.2
+ $C -o $Tsort$E $Tsort.s
+ -$Tsort$E <tst/sort.0 >$Tsort.1
+ fc $(TARGET)\tst\sort.1bk $Tsort.1
+$Tspill.s: tst\spill.c tst\spill.0 all
+ -$C -S -Wf-errout=$Tspill.2 -o $Tspill.s tst/spill.c
+ fc $(TARGET)\tst\spill.sbk $Tspill.s
+ fc $(TARGET)\tst\spill.2bk $Tspill.2
+ $C -o $Tspill$E $Tspill.s
+ -$Tspill$E <tst/spill.0 >$Tspill.1
+ fc $(TARGET)\tst\spill.1bk $Tspill.1
+$Tstdarg.s: tst\stdarg.c tst\stdarg.0 all
+ -$C -S -Wf-errout=$Tstdarg.2 -o $Tstdarg.s tst/stdarg.c
+ fc $(TARGET)\tst\stdarg.sbk $Tstdarg.s
+ fc $(TARGET)\tst\stdarg.2bk $Tstdarg.2
+ $C -o $Tstdarg$E $Tstdarg.s
+ -$Tstdarg$E <tst/stdarg.0 >$Tstdarg.1
+ fc $(TARGET)\tst\stdarg.1bk $Tstdarg.1
+$Tstruct.s: tst\struct.c tst\struct.0 all
+ -$C -S -Wf-errout=$Tstruct.2 -o $Tstruct.s tst/struct.c
+ fc $(TARGET)\tst\struct.sbk $Tstruct.s
+ fc $(TARGET)\tst\struct.2bk $Tstruct.2
+ $C -o $Tstruct$E $Tstruct.s
+ -$Tstruct$E <tst/struct.0 >$Tstruct.1
+ fc $(TARGET)\tst\struct.1bk $Tstruct.1
+$Tswitch.s: tst\switch.c tst\switch.0 all
+ -$C -S -Wf-errout=$Tswitch.2 -o $Tswitch.s tst/switch.c
+ fc $(TARGET)\tst\switch.sbk $Tswitch.s
+ fc $(TARGET)\tst\switch.2bk $Tswitch.2
+ $C -o $Tswitch$E $Tswitch.s
+ -$Tswitch$E <tst/switch.0 >$Tswitch.1
+ fc $(TARGET)\tst\switch.1bk $Tswitch.1
+$Twf1.s: tst\wf1.c tst\wf1.0 all
+ -$C -S -Wf-errout=$Twf1.2 -o $Twf1.s tst/wf1.c
+ fc $(TARGET)\tst\wf1.sbk $Twf1.s
+ fc $(TARGET)\tst\wf1.2bk $Twf1.2
+ $C -o $Twf1$E $Twf1.s
+ -$Twf1$E <tst/wf1.0 >$Twf1.1
+ fc $(TARGET)\tst\wf1.1bk $Twf1.1
+$Tyacc.s: tst\yacc.c tst\yacc.0 all
+ -$C -S -Wf-errout=$Tyacc.2 -o $Tyacc.s tst/yacc.c
+ fc $(TARGET)\tst\yacc.sbk $Tyacc.s
+ fc $(TARGET)\tst\yacc.2bk $Tyacc.2
+ $C -o $Tyacc$E $Tyacc.s
+ -$Tyacc$E <tst/yacc.0 >$Tyacc.1
+ fc $(TARGET)\tst\yacc.1bk $Tyacc.1
+
+testclean:
+ -del /q $T8q$E $T8q.s $T8q.2 $T8q.1
+ -del /q $Tarray$E $Tarray.s $Tarray.2 $Tarray.1
+ -del /q $Tcf$E $Tcf.s $Tcf.2 $Tcf.1
+ -del /q $Tcq$E $Tcq.s $Tcq.2 $Tcq.1
+ -del /q $Tcvt$E $Tcvt.s $Tcvt.2 $Tcvt.1
+ -del /q $Tfields$E $Tfields.s $Tfields.2 $Tfields.1
+ -del /q $Tfront$E $Tfront.s $Tfront.2 $Tfront.1
+ -del /q $Tincr$E $Tincr.s $Tincr.2 $Tincr.1
+ -del /q $Tinit$E $Tinit.s $Tinit.2 $Tinit.1
+ -del /q $Tlimits$E $Tlimits.s $Tlimits.2 $Tlimits.1
+ -del /q $Tparanoia$E $Tparanoia.s $Tparanoia.2 $Tparanoia.1
+ -del /q $Tsort$E $Tsort.s $Tsort.2 $Tsort.1
+ -del /q $Tspill$E $Tspill.s $Tspill.2 $Tspill.1
+ -del /q $Tstdarg$E $Tstdarg.s $Tstdarg.2 $Tstdarg.1
+ -del /q $Tstruct$E $Tstruct.s $Tstruct.2 $Tstruct.1
+ -del /q $Tswitch$E $Tswitch.s $Tswitch.2 $Tswitch.1
+ -del /q $Twf1$E $Twf1.s $Twf1.2 $Twf1.1
+ -del /q $Tyacc$E $Tyacc.s $Tyacc.2 $Tyacc.1
+
+clean:: testclean
+ -del /q $B*$O
+ -del /q $Bdagcheck.c $Balpha.c $Bmips.c $Bx86.c $Bsparc.c $Bx86linux.c $Bgram.c
+ -del /q $Brcc.c $Brcc.h
+ -del /q $Bq3rcc1$E $Brcc1$E $B1rcc$E $B2rcc$E
+ -del /q $B*.ilk
+
+clobber:: clean
+ -del /q $Bq3rcc$E $B2html$E $Bpass2$E $Blburg$E $Bq3cpp$E $Blcc$E $Bbprint$E $B*$A
+ -del /q $B*.pdb $B*.pch
+
+RCCSRCS=src/alloc.c \
+ src/bind.c \
+ src/dag.c \
+ src/decl.c \
+ src/enode.c \
+ src/error.c \
+ src/expr.c \
+ src/event.c \
+ src/init.c \
+ src/inits.c \
+ src/input.c \
+ src/lex.c \
+ src/list.c \
+ src/main.c \
+ src/output.c \
+ src/prof.c \
+ src/profio.c \
+ src/simp.c \
+ src/stmt.c \
+ src/string.c \
+ src/sym.c \
+ src/trace.c \
+ src/tree.c \
+ src/types.c \
+ src/null.c \
+ src/symbolic.c \
+ src/bytecode.c \
+ src/gen.c \
+ src/stab.c \
+ $Bdagcheck.c \
+ $Balpha.c \
+ $Bmips.c \
+ $Bsparc.c \
+ $Bx86linux.c \
+ $Bx86.c
+
+C=$Blcc -A -d0.6 -Wo-lccdir=$(BUILDDIR) -Isrc -I$(BUILDDIR)
+triple: $Bq3rcc$E $Blcc$E $Bq3cpp$E
+ $C -o $B1rcc$E -B$B $(RCCSRCS)
+ $C -o $B2rcc$E -B$B1 $(RCCSRCS)
+ fc /b $B1rcc$E $B2rcc$E
diff --git a/lcc/mips/irix/tst/8q.1bk b/lcc/mips/irix/tst/8q.1bk
index c66df8e..7ed6437 100755
--- a/lcc/mips/irix/tst/8q.1bk
+++ b/lcc/mips/irix/tst/8q.1bk
@@ -1,92 +1,92 @@
-1 5 8 6 3 7 2 4
-1 6 8 3 7 4 2 5
-1 7 4 6 8 2 5 3
-1 7 5 8 2 4 6 3
-2 4 6 8 3 1 7 5
-2 5 7 1 3 8 6 4
-2 5 7 4 1 8 6 3
-2 6 1 7 4 8 3 5
-2 6 8 3 1 4 7 5
-2 7 3 6 8 5 1 4
-2 7 5 8 1 4 6 3
-2 8 6 1 3 5 7 4
-3 1 7 5 8 2 4 6
-3 5 2 8 1 7 4 6
-3 5 2 8 6 4 7 1
-3 5 7 1 4 2 8 6
-3 5 8 4 1 7 2 6
-3 6 2 5 8 1 7 4
-3 6 2 7 1 4 8 5
-3 6 2 7 5 1 8 4
-3 6 4 1 8 5 7 2
-3 6 4 2 8 5 7 1
-3 6 8 1 4 7 5 2
-3 6 8 1 5 7 2 4
-3 6 8 2 4 1 7 5
-3 7 2 8 5 1 4 6
-3 7 2 8 6 4 1 5
-3 8 4 7 1 6 2 5
-4 1 5 8 2 7 3 6
-4 1 5 8 6 3 7 2
-4 2 5 8 6 1 3 7
-4 2 7 3 6 8 1 5
-4 2 7 3 6 8 5 1
-4 2 7 5 1 8 6 3
-4 2 8 5 7 1 3 6
-4 2 8 6 1 3 5 7
-4 6 1 5 2 8 3 7
-4 6 8 2 7 1 3 5
-4 6 8 3 1 7 5 2
-4 7 1 8 5 2 6 3
-4 7 3 8 2 5 1 6
-4 7 5 2 6 1 3 8
-4 7 5 3 1 6 8 2
-4 8 1 3 6 2 7 5
-4 8 1 5 7 2 6 3
-4 8 5 3 1 7 2 6
-5 1 4 6 8 2 7 3
-5 1 8 4 2 7 3 6
-5 1 8 6 3 7 2 4
-5 2 4 6 8 3 1 7
-5 2 4 7 3 8 6 1
-5 2 6 1 7 4 8 3
-5 2 8 1 4 7 3 6
-5 3 1 6 8 2 4 7
-5 3 1 7 2 8 6 4
-5 3 8 4 7 1 6 2
-5 7 1 3 8 6 4 2
-5 7 1 4 2 8 6 3
-5 7 2 4 8 1 3 6
-5 7 2 6 3 1 4 8
-5 7 2 6 3 1 8 4
-5 7 4 1 3 8 6 2
-5 8 4 1 3 6 2 7
-5 8 4 1 7 2 6 3
-6 1 5 2 8 3 7 4
-6 2 7 1 3 5 8 4
-6 2 7 1 4 8 5 3
-6 3 1 7 5 8 2 4
-6 3 1 8 4 2 7 5
-6 3 1 8 5 2 4 7
-6 3 5 7 1 4 2 8
-6 3 5 8 1 4 2 7
-6 3 7 2 4 8 1 5
-6 3 7 2 8 5 1 4
-6 3 7 4 1 8 2 5
-6 4 1 5 8 2 7 3
-6 4 2 8 5 7 1 3
-6 4 7 1 3 5 2 8
-6 4 7 1 8 2 5 3
-6 8 2 4 1 7 5 3
-7 1 3 8 6 4 2 5
-7 2 4 1 8 5 3 6
-7 2 6 3 1 4 8 5
-7 3 1 6 8 5 2 4
-7 3 8 2 5 1 6 4
-7 4 2 5 8 1 3 6
-7 4 2 8 6 1 3 5
-7 5 3 1 6 8 2 4
-8 2 4 1 7 5 3 6
-8 2 5 3 1 7 4 6
-8 3 1 6 2 5 7 4
-8 4 1 3 6 2 7 5
+1 5 8 6 3 7 2 4
+1 6 8 3 7 4 2 5
+1 7 4 6 8 2 5 3
+1 7 5 8 2 4 6 3
+2 4 6 8 3 1 7 5
+2 5 7 1 3 8 6 4
+2 5 7 4 1 8 6 3
+2 6 1 7 4 8 3 5
+2 6 8 3 1 4 7 5
+2 7 3 6 8 5 1 4
+2 7 5 8 1 4 6 3
+2 8 6 1 3 5 7 4
+3 1 7 5 8 2 4 6
+3 5 2 8 1 7 4 6
+3 5 2 8 6 4 7 1
+3 5 7 1 4 2 8 6
+3 5 8 4 1 7 2 6
+3 6 2 5 8 1 7 4
+3 6 2 7 1 4 8 5
+3 6 2 7 5 1 8 4
+3 6 4 1 8 5 7 2
+3 6 4 2 8 5 7 1
+3 6 8 1 4 7 5 2
+3 6 8 1 5 7 2 4
+3 6 8 2 4 1 7 5
+3 7 2 8 5 1 4 6
+3 7 2 8 6 4 1 5
+3 8 4 7 1 6 2 5
+4 1 5 8 2 7 3 6
+4 1 5 8 6 3 7 2
+4 2 5 8 6 1 3 7
+4 2 7 3 6 8 1 5
+4 2 7 3 6 8 5 1
+4 2 7 5 1 8 6 3
+4 2 8 5 7 1 3 6
+4 2 8 6 1 3 5 7
+4 6 1 5 2 8 3 7
+4 6 8 2 7 1 3 5
+4 6 8 3 1 7 5 2
+4 7 1 8 5 2 6 3
+4 7 3 8 2 5 1 6
+4 7 5 2 6 1 3 8
+4 7 5 3 1 6 8 2
+4 8 1 3 6 2 7 5
+4 8 1 5 7 2 6 3
+4 8 5 3 1 7 2 6
+5 1 4 6 8 2 7 3
+5 1 8 4 2 7 3 6
+5 1 8 6 3 7 2 4
+5 2 4 6 8 3 1 7
+5 2 4 7 3 8 6 1
+5 2 6 1 7 4 8 3
+5 2 8 1 4 7 3 6
+5 3 1 6 8 2 4 7
+5 3 1 7 2 8 6 4
+5 3 8 4 7 1 6 2
+5 7 1 3 8 6 4 2
+5 7 1 4 2 8 6 3
+5 7 2 4 8 1 3 6
+5 7 2 6 3 1 4 8
+5 7 2 6 3 1 8 4
+5 7 4 1 3 8 6 2
+5 8 4 1 3 6 2 7
+5 8 4 1 7 2 6 3
+6 1 5 2 8 3 7 4
+6 2 7 1 3 5 8 4
+6 2 7 1 4 8 5 3
+6 3 1 7 5 8 2 4
+6 3 1 8 4 2 7 5
+6 3 1 8 5 2 4 7
+6 3 5 7 1 4 2 8
+6 3 5 8 1 4 2 7
+6 3 7 2 4 8 1 5
+6 3 7 2 8 5 1 4
+6 3 7 4 1 8 2 5
+6 4 1 5 8 2 7 3
+6 4 2 8 5 7 1 3
+6 4 7 1 3 5 2 8
+6 4 7 1 8 2 5 3
+6 8 2 4 1 7 5 3
+7 1 3 8 6 4 2 5
+7 2 4 1 8 5 3 6
+7 2 6 3 1 4 8 5
+7 3 1 6 8 5 2 4
+7 3 8 2 5 1 6 4
+7 4 2 5 8 1 3 6
+7 4 2 8 6 1 3 5
+7 5 3 1 6 8 2 4
+8 2 4 1 7 5 3 6
+8 2 5 3 1 7 4 6
+8 3 1 6 2 5 7 4
+8 4 1 3 6 2 7 5
diff --git a/lcc/mips/irix/tst/8q.2bk b/lcc/mips/irix/tst/8q.2bk
index fb28350..d4dc0ed 100755
--- a/lcc/mips/irix/tst/8q.2bk
+++ b/lcc/mips/irix/tst/8q.2bk
@@ -1,2 +1,2 @@
-tst/8q.c:30: warning: missing return value
-tst/8q.c:39: warning: missing return value
+tst/8q.c:30: warning: missing return value
+tst/8q.c:39: warning: missing return value
diff --git a/lcc/mips/irix/tst/8q.sbk b/lcc/mips/irix/tst/8q.sbk
index 20e2fd1..9e5d75f 100755
--- a/lcc/mips/irix/tst/8q.sbk
+++ b/lcc/mips/irix/tst/8q.sbk
@@ -1,169 +1,169 @@
-.set reorder
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-move $30,$0
-L.2:
-sll $24,$30,2
-la $15,1
-sw $15,down($24)
-sw $15,up($24)
-L.3:
-la $30,1($30)
-la $24,15
-blt $30,$24,L.2
-move $30,$0
-L.6:
-sll $24,$30,2
-la $15,1
-sw $15,rows($24)
-L.7:
-la $30,1($30)
-la $24,8
-blt $30,$24,L.6
-move $4,$0
-jal queens
-move $2,$0
-L.1:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end main
-.globl queens
-.text
-.align 2
-.ent queens
-queens:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2800000,-4
-sw $23,16($sp)
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-move $30,$4
-move $23,$0
-L.11:
-sll $15,$23,2
-lw $15,rows($15)
-beq $15,$0,L.15
-subu $15,$23,$30
-sll $15,$15,2
-lw $15,up+28($15)
-beq $15,$0,L.15
-addu $15,$23,$30
-sll $15,$15,2
-lw $15,down($15)
-beq $15,$0,L.15
-addu $15,$23,$30
-sll $15,$15,2
-sw $0,down($15)
-subu $15,$23,$30
-sll $15,$15,2
-sw $0,up+28($15)
-sll $15,$23,2
-sw $0,rows($15)
-sll $24,$30,2
-sw $23,x($24)
-la $24,7
-bne $30,$24,L.19
-jal print
-b L.20
-L.19:
-la $4,1($30)
-jal queens
-L.20:
-la $24,1
-addu $15,$23,$30
-sll $15,$15,2
-sw $24,down($15)
-subu $15,$23,$30
-sll $15,$15,2
-sw $24,up+28($15)
-sll $15,$23,2
-sw $24,rows($15)
-L.15:
-L.12:
-la $23,1($23)
-la $24,8
-blt $23,$24,L.11
-move $2,$0
-L.10:
-lw $23,16($sp)
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end queens
-.globl print
-.text
-.align 2
-.ent print
-print:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-move $30,$0
-L.23:
-la $4,L.27
-sll $24,$30,2
-lw $24,x($24)
-la $5,49($24)
-jal printf
-L.24:
-la $30,1($30)
-la $24,8
-blt $30,$24,L.23
-la $4,L.28
-jal printf
-move $2,$0
-L.22:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end print
-.globl x
-.comm x,32
-.globl rows
-.comm rows,32
-.globl down
-.comm down,60
-.globl up
-.comm up,60
-.rdata
-.align 0
-L.28:
-.byte 10
-.byte 0
-.align 0
-L.27:
-.byte 37
-.byte 99
-.byte 32
-.byte 0
+.set reorder
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+move $30,$0
+L.2:
+sll $24,$30,2
+la $15,1
+sw $15,down($24)
+sw $15,up($24)
+L.3:
+la $30,1($30)
+la $24,15
+blt $30,$24,L.2
+move $30,$0
+L.6:
+sll $24,$30,2
+la $15,1
+sw $15,rows($24)
+L.7:
+la $30,1($30)
+la $24,8
+blt $30,$24,L.6
+move $4,$0
+jal queens
+move $2,$0
+L.1:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end main
+.globl queens
+.text
+.align 2
+.ent queens
+queens:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2800000,-4
+sw $23,16($sp)
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+move $30,$4
+move $23,$0
+L.11:
+sll $15,$23,2
+lw $15,rows($15)
+beq $15,$0,L.15
+subu $15,$23,$30
+sll $15,$15,2
+lw $15,up+28($15)
+beq $15,$0,L.15
+addu $15,$23,$30
+sll $15,$15,2
+lw $15,down($15)
+beq $15,$0,L.15
+addu $15,$23,$30
+sll $15,$15,2
+sw $0,down($15)
+subu $15,$23,$30
+sll $15,$15,2
+sw $0,up+28($15)
+sll $15,$23,2
+sw $0,rows($15)
+sll $24,$30,2
+sw $23,x($24)
+la $24,7
+bne $30,$24,L.19
+jal print
+b L.20
+L.19:
+la $4,1($30)
+jal queens
+L.20:
+la $24,1
+addu $15,$23,$30
+sll $15,$15,2
+sw $24,down($15)
+subu $15,$23,$30
+sll $15,$15,2
+sw $24,up+28($15)
+sll $15,$23,2
+sw $24,rows($15)
+L.15:
+L.12:
+la $23,1($23)
+la $24,8
+blt $23,$24,L.11
+move $2,$0
+L.10:
+lw $23,16($sp)
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end queens
+.globl print
+.text
+.align 2
+.ent print
+print:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+move $30,$0
+L.23:
+la $4,L.27
+sll $24,$30,2
+lw $24,x($24)
+la $5,49($24)
+jal printf
+L.24:
+la $30,1($30)
+la $24,8
+blt $30,$24,L.23
+la $4,L.28
+jal printf
+move $2,$0
+L.22:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end print
+.globl x
+.comm x,32
+.globl rows
+.comm rows,32
+.globl down
+.comm down,60
+.globl up
+.comm up,60
+.rdata
+.align 0
+L.28:
+.byte 10
+.byte 0
+.align 0
+L.27:
+.byte 37
+.byte 99
+.byte 32
+.byte 0
diff --git a/lcc/mips/irix/tst/array.1bk b/lcc/mips/irix/tst/array.1bk
index e188568..4d3817c 100755
--- a/lcc/mips/irix/tst/array.1bk
+++ b/lcc/mips/irix/tst/array.1bk
@@ -1,4 +1,4 @@
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
diff --git a/lcc/mips/irix/tst/array.2bk b/lcc/mips/irix/tst/array.2bk
index 0a9b206..c8cf31e 100755
--- a/lcc/mips/irix/tst/array.2bk
+++ b/lcc/mips/irix/tst/array.2bk
@@ -1,2 +1,2 @@
-tst/array.c:33: warning: missing return value
-tst/array.c:48: warning: missing return value
+tst/array.c:33: warning: missing return value
+tst/array.c:48: warning: missing return value
diff --git a/lcc/mips/irix/tst/array.sbk b/lcc/mips/irix/tst/array.sbk
index 575358e..ef5edd9 100755
--- a/lcc/mips/irix/tst/array.sbk
+++ b/lcc/mips/irix/tst/array.sbk
@@ -1,235 +1,235 @@
-.set reorder
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,88,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-88
-.mask 0xc2c00000,-56
-sw $22,16($sp)
-sw $23,20($sp)
-.cprestore 24
-sw $30,28($sp)
-sw $31,32($sp)
-move $23,$0
-L.2:
-move $30,$0
-L.6:
-sll $24,$30,2
-sll $15,$23,4
-la $15,x($15)
-addu $24,$24,$15
-la $15,1000
-mul $15,$15,$23
-addu $15,$15,$30
-sw $15,($24)
-L.7:
-la $30,1($30)
-la $24,4
-blt $30,$24,L.6
-sll $24,$23,2
-sll $15,$23,4
-la $15,x($15)
-sw $15,y($24)
-L.3:
-la $23,1($23)
-la $24,3
-blt $23,$24,L.2
-jal f
-move $23,$0
-L.10:
-sll $24,$23,4
-la $15,-48+88($sp)
-addu $24,$24,$15
-move $22,$24
-sll $15,$23,2
-sw $24,y($15)
-move $30,$0
-L.14:
-sll $24,$30,2
-addu $15,$24,$22
-sll $14,$23,4
-la $14,x($14)
-addu $24,$24,$14
-lw $24,($24)
-sw $24,($15)
-L.15:
-la $30,1($30)
-la $24,4
-blt $30,$24,L.14
-L.11:
-la $23,1($23)
-la $24,3
-blt $23,$24,L.10
-la $4,-48+88($sp)
-la $5,y
-jal g
-move $2,$0
-L.1:
-lw $22,16($sp)
-lw $23,20($sp)
-lw $25,24($sp)
-lw $30,28($sp)
-lw $31,32($sp)
-addu $sp,$sp,88
-j $31
-.end main
-.globl f
-.text
-.align 2
-.ent f
-f:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2800000,-4
-sw $23,16($sp)
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-move $23,$0
-L.19:
-move $30,$0
-L.23:
-la $4,L.27
-sll $24,$30,2
-sll $15,$23,4
-la $15,x($15)
-addu $24,$24,$15
-lw $5,($24)
-jal printf
-L.24:
-la $30,1($30)
-la $24,4
-blt $30,$24,L.23
-L.20:
-la $23,1($23)
-la $24,3
-blt $23,$24,L.19
-la $4,L.28
-jal printf
-move $23,$0
-L.29:
-move $30,$0
-L.33:
-la $4,L.27
-sll $24,$30,2
-sll $15,$23,2
-lw $15,y($15)
-addu $24,$24,$15
-lw $5,($24)
-jal printf
-L.34:
-la $30,1($30)
-la $24,4
-blt $30,$24,L.33
-L.30:
-la $23,1($23)
-la $24,3
-blt $23,$24,L.29
-la $4,L.28
-jal printf
-move $2,$0
-L.18:
-lw $23,16($sp)
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end f
-.globl g
-.text
-.align 2
-.ent g
-g:
-.frame $sp,40,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-40
-.mask 0xc2e00000,-4
-sw $21,16($sp)
-sw $22,20($sp)
-sw $23,24($sp)
-.cprestore 28
-sw $30,32($sp)
-sw $31,36($sp)
-move $30,$4
-move $23,$5
-move $21,$0
-L.38:
-move $22,$0
-L.42:
-la $4,L.27
-sll $24,$22,2
-sll $15,$21,4
-addu $15,$15,$30
-addu $24,$24,$15
-lw $5,($24)
-jal printf
-L.43:
-la $22,1($22)
-la $24,4
-blt $22,$24,L.42
-L.39:
-la $21,1($21)
-la $24,3
-blt $21,$24,L.38
-la $4,L.28
-jal printf
-move $21,$0
-L.46:
-move $22,$0
-L.50:
-la $4,L.27
-sll $24,$22,2
-sll $15,$21,2
-addu $15,$15,$23
-lw $15,($15)
-addu $24,$24,$15
-lw $5,($24)
-jal printf
-L.51:
-la $22,1($22)
-la $24,4
-blt $22,$24,L.50
-L.47:
-la $21,1($21)
-la $24,3
-blt $21,$24,L.46
-la $4,L.28
-jal printf
-move $2,$0
-L.37:
-lw $21,16($sp)
-lw $22,20($sp)
-lw $23,24($sp)
-lw $25,28($sp)
-lw $30,32($sp)
-lw $31,36($sp)
-addu $sp,$sp,40
-j $31
-.end g
-.globl y
-.comm y,12
-.globl x
-.comm x,48
-.rdata
-.align 0
-L.28:
-.byte 10
-.byte 0
-.align 0
-L.27:
-.byte 32
-.byte 37
-.byte 100
-.byte 0
+.set reorder
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,88,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-88
+.mask 0xc2c00000,-56
+sw $22,16($sp)
+sw $23,20($sp)
+.cprestore 24
+sw $30,28($sp)
+sw $31,32($sp)
+move $23,$0
+L.2:
+move $30,$0
+L.6:
+sll $24,$30,2
+sll $15,$23,4
+la $15,x($15)
+addu $24,$24,$15
+la $15,1000
+mul $15,$15,$23
+addu $15,$15,$30
+sw $15,($24)
+L.7:
+la $30,1($30)
+la $24,4
+blt $30,$24,L.6
+sll $24,$23,2
+sll $15,$23,4
+la $15,x($15)
+sw $15,y($24)
+L.3:
+la $23,1($23)
+la $24,3
+blt $23,$24,L.2
+jal f
+move $23,$0
+L.10:
+sll $24,$23,4
+la $15,-48+88($sp)
+addu $24,$24,$15
+move $22,$24
+sll $15,$23,2
+sw $24,y($15)
+move $30,$0
+L.14:
+sll $24,$30,2
+addu $15,$24,$22
+sll $14,$23,4
+la $14,x($14)
+addu $24,$24,$14
+lw $24,($24)
+sw $24,($15)
+L.15:
+la $30,1($30)
+la $24,4
+blt $30,$24,L.14
+L.11:
+la $23,1($23)
+la $24,3
+blt $23,$24,L.10
+la $4,-48+88($sp)
+la $5,y
+jal g
+move $2,$0
+L.1:
+lw $22,16($sp)
+lw $23,20($sp)
+lw $25,24($sp)
+lw $30,28($sp)
+lw $31,32($sp)
+addu $sp,$sp,88
+j $31
+.end main
+.globl f
+.text
+.align 2
+.ent f
+f:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2800000,-4
+sw $23,16($sp)
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+move $23,$0
+L.19:
+move $30,$0
+L.23:
+la $4,L.27
+sll $24,$30,2
+sll $15,$23,4
+la $15,x($15)
+addu $24,$24,$15
+lw $5,($24)
+jal printf
+L.24:
+la $30,1($30)
+la $24,4
+blt $30,$24,L.23
+L.20:
+la $23,1($23)
+la $24,3
+blt $23,$24,L.19
+la $4,L.28
+jal printf
+move $23,$0
+L.29:
+move $30,$0
+L.33:
+la $4,L.27
+sll $24,$30,2
+sll $15,$23,2
+lw $15,y($15)
+addu $24,$24,$15
+lw $5,($24)
+jal printf
+L.34:
+la $30,1($30)
+la $24,4
+blt $30,$24,L.33
+L.30:
+la $23,1($23)
+la $24,3
+blt $23,$24,L.29
+la $4,L.28
+jal printf
+move $2,$0
+L.18:
+lw $23,16($sp)
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end f
+.globl g
+.text
+.align 2
+.ent g
+g:
+.frame $sp,40,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-40
+.mask 0xc2e00000,-4
+sw $21,16($sp)
+sw $22,20($sp)
+sw $23,24($sp)
+.cprestore 28
+sw $30,32($sp)
+sw $31,36($sp)
+move $30,$4
+move $23,$5
+move $21,$0
+L.38:
+move $22,$0
+L.42:
+la $4,L.27
+sll $24,$22,2
+sll $15,$21,4
+addu $15,$15,$30
+addu $24,$24,$15
+lw $5,($24)
+jal printf
+L.43:
+la $22,1($22)
+la $24,4
+blt $22,$24,L.42
+L.39:
+la $21,1($21)
+la $24,3
+blt $21,$24,L.38
+la $4,L.28
+jal printf
+move $21,$0
+L.46:
+move $22,$0
+L.50:
+la $4,L.27
+sll $24,$22,2
+sll $15,$21,2
+addu $15,$15,$23
+lw $15,($15)
+addu $24,$24,$15
+lw $5,($24)
+jal printf
+L.51:
+la $22,1($22)
+la $24,4
+blt $22,$24,L.50
+L.47:
+la $21,1($21)
+la $24,3
+blt $21,$24,L.46
+la $4,L.28
+jal printf
+move $2,$0
+L.37:
+lw $21,16($sp)
+lw $22,20($sp)
+lw $23,24($sp)
+lw $25,28($sp)
+lw $30,32($sp)
+lw $31,36($sp)
+addu $sp,$sp,40
+j $31
+.end g
+.globl y
+.comm y,12
+.globl x
+.comm x,48
+.rdata
+.align 0
+L.28:
+.byte 10
+.byte 0
+.align 0
+L.27:
+.byte 32
+.byte 37
+.byte 100
+.byte 0
diff --git a/lcc/mips/irix/tst/cf.1bk b/lcc/mips/irix/tst/cf.1bk
index 24e21ba..9e331c5 100755
--- a/lcc/mips/irix/tst/cf.1bk
+++ b/lcc/mips/irix/tst/cf.1bk
@@ -1,51 +1,51 @@
-char freq
-011 8.1
-012 6.1
-040 11.9
-! 0.2
-" 1.5
-% 0.6
-& 0.4
-' 0.4
-( 2.9
-) 2.9
-* 0.8
-+ 1.3
-, 1.3
-- 0.4
-. 0.6
-/ 1.0
-0 2.5
-1 1.9
-2 0.6
-3 0.2
-7 0.4
-8 0.2
-; 3.8
-< 0.8
-= 2.7
-> 0.2
-[ 1.5
-\ 0.8
-] 1.5
-a 3.1
-c 4.4
-e 2.3
-f 6.0
-g 1.3
-h 1.0
-i 5.0
-l 1.0
-m 0.2
-n 3.3
-o 2.1
-p 1.0
-q 0.4
-r 4.2
-s 0.6
-t 3.8
-u 1.2
-v 0.6
-w 0.2
-{ 0.6
-} 0.6
+char freq
+011 8.1
+012 6.1
+040 11.9
+! 0.2
+" 1.5
+% 0.6
+& 0.4
+' 0.4
+( 2.9
+) 2.9
+* 0.8
++ 1.3
+, 1.3
+- 0.4
+. 0.6
+/ 1.0
+0 2.5
+1 1.9
+2 0.6
+3 0.2
+7 0.4
+8 0.2
+; 3.8
+< 0.8
+= 2.7
+> 0.2
+[ 1.5
+\ 0.8
+] 1.5
+a 3.1
+c 4.4
+e 2.3
+f 6.0
+g 1.3
+h 1.0
+i 5.0
+l 1.0
+m 0.2
+n 3.3
+o 2.1
+p 1.0
+q 0.4
+r 4.2
+s 0.6
+t 3.8
+u 1.2
+v 0.6
+w 0.2
+{ 0.6
+} 0.6
diff --git a/lcc/mips/irix/tst/cf.sbk b/lcc/mips/irix/tst/cf.sbk
index 62189cf..89fdaf8 100755
--- a/lcc/mips/irix/tst/cf.sbk
+++ b/lcc/mips/irix/tst/cf.sbk
@@ -1,153 +1,153 @@
-.set reorder
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,48,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-48
-.fmask 0xc0000000,-32
-.mask 0xc2c00000,-8
-s.d $f30,16($sp)
-sw $22,24($sp)
-sw $23,28($sp)
-.cprestore 32
-sw $30,36($sp)
-sw $31,40($sp)
-sw $4,48($sp)
-sw $5,52($sp)
-lw $24,0+48($sp)
-la $15,1
-bgt $24,$15,L.2
-l.s $f30,L.4
-b L.3
-L.2:
-lw $24,4+48($sp)
-lw $4,4($24)
-jal atof
-l.s $f16,L.5
-div.s $f30,$f0,$f16
-L.3:
-move $30,$0
-L.6:
-move $24,$30
-la $30,1($24)
-sll $24,$24,2
-l.s $f18,L.4
-s.s $f18,f($24)
-L.7:
-la $24,127
-ble $30,$24,L.6
-move $23,$0
-b L.11
-L.10:
-sll $24,$22,2
-la $24,f($24)
-l.s $f18,($24)
-l.s $f16,L.13
-add.s $f18,$f18,$f16
-s.s $f18,($24)
-la $23,1($23)
-L.11:
-jal getchar
-move $22,$2
-la $15,-1
-bne $2,$15,L.10
-la $4,L.14
-jal printf
-move $30,$0
-L.15:
-sll $24,$30,2
-l.s $f18,f($24)
-l.s $f16,L.4
-c.eq.s $f18,$f16; bc1t L.19
-mtc1 $23,$f16; cvt.s.w $f16,$f16
-div.s $f18,$f18,$f16
-c.lt.s $f18,$f30; bc1t L.19
-la $24,32
-bgt $30,$24,L.21
-la $4,L.23
-move $5,$30
-jal printf
-b L.22
-L.21:
-la $4,L.24
-move $5,$30
-jal printf
-L.22:
-la $4,L.25
-l.s $f18,L.5
-sll $24,$30,2
-l.s $f16,f($24)
-mul.s $f18,$f18,$f16
-mtc1 $23,$f16; cvt.s.w $f16,$f16
-div.s $f18,$f18,$f16
-cvt.d.s $f18,$f18
-mfc1.d $6,$f18
-jal printf
-L.19:
-L.16:
-la $30,1($30)
-la $24,127
-ble $30,$24,L.15
-move $2,$0
-L.1:
-l.d $f30,16($sp)
-lw $22,24($sp)
-lw $23,28($sp)
-lw $25,32($sp)
-lw $30,36($sp)
-lw $31,40($sp)
-addu $sp,$sp,48
-j $31
-.end main
-.globl f
-.comm f,512
-.rdata
-.align 0
-L.25:
-.byte 9
-.byte 37
-.byte 46
-.byte 49
-.byte 102
-.byte 10
-.byte 0
-.align 0
-L.24:
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.23:
-.byte 37
-.byte 48
-.byte 51
-.byte 111
-.byte 0
-.align 0
-L.14:
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 9
-.byte 102
-.byte 114
-.byte 101
-.byte 113
-.byte 10
-.byte 0
-.align 2
-L.13:
-.word 0x3f800000
-.align 2
-L.5:
-.word 0x42c80000
-.align 2
-L.4:
-.word 0x0
+.set reorder
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,48,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-48
+.fmask 0xc0000000,-32
+.mask 0xc2c00000,-8
+s.d $f30,16($sp)
+sw $22,24($sp)
+sw $23,28($sp)
+.cprestore 32
+sw $30,36($sp)
+sw $31,40($sp)
+sw $4,48($sp)
+sw $5,52($sp)
+lw $24,0+48($sp)
+la $15,1
+bgt $24,$15,L.2
+l.s $f30,L.4
+b L.3
+L.2:
+lw $24,4+48($sp)
+lw $4,4($24)
+jal atof
+l.s $f16,L.5
+div.s $f30,$f0,$f16
+L.3:
+move $30,$0
+L.6:
+move $24,$30
+la $30,1($24)
+sll $24,$24,2
+l.s $f18,L.4
+s.s $f18,f($24)
+L.7:
+la $24,127
+ble $30,$24,L.6
+move $23,$0
+b L.11
+L.10:
+sll $24,$22,2
+la $24,f($24)
+l.s $f18,($24)
+l.s $f16,L.13
+add.s $f18,$f18,$f16
+s.s $f18,($24)
+la $23,1($23)
+L.11:
+jal getchar
+move $22,$2
+la $15,-1
+bne $2,$15,L.10
+la $4,L.14
+jal printf
+move $30,$0
+L.15:
+sll $24,$30,2
+l.s $f18,f($24)
+l.s $f16,L.4
+c.eq.s $f18,$f16; bc1t L.19
+mtc1 $23,$f16; cvt.s.w $f16,$f16
+div.s $f18,$f18,$f16
+c.lt.s $f18,$f30; bc1t L.19
+la $24,32
+bgt $30,$24,L.21
+la $4,L.23
+move $5,$30
+jal printf
+b L.22
+L.21:
+la $4,L.24
+move $5,$30
+jal printf
+L.22:
+la $4,L.25
+l.s $f18,L.5
+sll $24,$30,2
+l.s $f16,f($24)
+mul.s $f18,$f18,$f16
+mtc1 $23,$f16; cvt.s.w $f16,$f16
+div.s $f18,$f18,$f16
+cvt.d.s $f18,$f18
+mfc1.d $6,$f18
+jal printf
+L.19:
+L.16:
+la $30,1($30)
+la $24,127
+ble $30,$24,L.15
+move $2,$0
+L.1:
+l.d $f30,16($sp)
+lw $22,24($sp)
+lw $23,28($sp)
+lw $25,32($sp)
+lw $30,36($sp)
+lw $31,40($sp)
+addu $sp,$sp,48
+j $31
+.end main
+.globl f
+.comm f,512
+.rdata
+.align 0
+L.25:
+.byte 9
+.byte 37
+.byte 46
+.byte 49
+.byte 102
+.byte 10
+.byte 0
+.align 0
+L.24:
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.23:
+.byte 37
+.byte 48
+.byte 51
+.byte 111
+.byte 0
+.align 0
+L.14:
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 9
+.byte 102
+.byte 114
+.byte 101
+.byte 113
+.byte 10
+.byte 0
+.align 2
+L.13:
+.word 0x3f800000
+.align 2
+L.5:
+.word 0x42c80000
+.align 2
+L.4:
+.word 0x0
diff --git a/lcc/mips/irix/tst/cq.1bk b/lcc/mips/irix/tst/cq.1bk
index b7b7643..ec956b7 100755
--- a/lcc/mips/irix/tst/cq.1bk
+++ b/lcc/mips/irix/tst/cq.1bk
@@ -1,48 +1,48 @@
-Section s22 returned 0.
-Decimal and octal/hex constants sometimes give
- different results when assigned to longs.
-Decimal and octal/hex constants sometimes give
- different results when assigned to longs.
-Section s241 returned 0.
-Section s243 returned 0.
-Section s244 returned 0.
-Section s25 returned 0.
- 8 bits in chars.
- 32 bits in ints.
- 16 bits in shorts.
- 32 bits in longs.
- 32 bits in unsigneds.
- 32 bits in floats.
- 64 bits in doubles.
-1.192093e-07 is the least number that can be added to 1. (float).
-2.220446e-16 is the least number that can be added to 1. (double).
-Section s26 returned 0.
-Section s4 returned 0.
-Section s61 returned 0.
-Section s626 returned 0.
-Section s71 returned 0.
-Section s72 returned 0.
-Section s757 returned 0.
-Section s7813 returned 0.
-Section s714 returned 0.
-Section s715 returned 0.
-Register count for char is unreliable.
-Register count for pointer is unreliable.
-Register count for int is unreliable.
-Section s81 returned 0.
-Section s84 returned 0.
-char alignment: 1
-short alignment: 2
-int alignment: 4
-long alignment: 4
-unsigned alignment: 4
-float alignment: 4
-double alignment: 8
-Sign extension in fields
-Be especially careful with 1-bit fields!
-Section s85 returned 0.
-Section s86 returned 0.
-Section s88 returned 0.
-Section s9 returned 0.
-
-No errors detected.
+Section s22 returned 0.
+Decimal and octal/hex constants sometimes give
+ different results when assigned to longs.
+Decimal and octal/hex constants sometimes give
+ different results when assigned to longs.
+Section s241 returned 0.
+Section s243 returned 0.
+Section s244 returned 0.
+Section s25 returned 0.
+ 8 bits in chars.
+ 32 bits in ints.
+ 16 bits in shorts.
+ 32 bits in longs.
+ 32 bits in unsigneds.
+ 32 bits in floats.
+ 64 bits in doubles.
+1.192093e-07 is the least number that can be added to 1. (float).
+2.220446e-16 is the least number that can be added to 1. (double).
+Section s26 returned 0.
+Section s4 returned 0.
+Section s61 returned 0.
+Section s626 returned 0.
+Section s71 returned 0.
+Section s72 returned 0.
+Section s757 returned 0.
+Section s7813 returned 0.
+Section s714 returned 0.
+Section s715 returned 0.
+Register count for char is unreliable.
+Register count for pointer is unreliable.
+Register count for int is unreliable.
+Section s81 returned 0.
+Section s84 returned 0.
+char alignment: 1
+short alignment: 2
+int alignment: 4
+long alignment: 4
+unsigned alignment: 4
+float alignment: 4
+double alignment: 8
+Sign extension in fields
+Be especially careful with 1-bit fields!
+Section s85 returned 0.
+Section s86 returned 0.
+Section s88 returned 0.
+Section s9 returned 0.
+
+No errors detected.
diff --git a/lcc/mips/irix/tst/cq.2bk b/lcc/mips/irix/tst/cq.2bk
index 295f5b6..7c6ba5e 100755
--- a/lcc/mips/irix/tst/cq.2bk
+++ b/lcc/mips/irix/tst/cq.2bk
@@ -1,25 +1,25 @@
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `4294967296'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `040000000000'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `0x100000000'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `68719476735'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `0777777777777'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `0xfffffffff'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `68719476736'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `01000000000000'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `0x1000000000'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:533: warning: missing return value
-tst/cq.c:1169: warning: missing return value
-tst/cq.c:5294: warning: unreachable code
-tst/cq.c:5303: warning: missing return value
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `4294967296'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `040000000000'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `0x100000000'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `68719476735'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `0777777777777'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `0xfffffffff'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `68719476736'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `01000000000000'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `0x1000000000'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:533: warning: missing return value
+tst/cq.c:1169: warning: missing return value
+tst/cq.c:5294: warning: unreachable code
+tst/cq.c:5303: warning: missing return value
diff --git a/lcc/mips/irix/tst/cq.sbk b/lcc/mips/irix/tst/cq.sbk
index 41cc964..bc4e80e 100755
--- a/lcc/mips/irix/tst/cq.sbk
+++ b/lcc/mips/irix/tst/cq.sbk
@@ -1,13620 +1,13620 @@
-.set reorder
-.data
-.align 2
-L.2:
-.word s22
-.word s241
-.word s243
-.word s244
-.word s25
-.word s26
-.word s4
-.word s61
-.word s626
-.word s71
-.word s72
-.word s757
-.word s7813
-.word s714
-.word s715
-.word s81
-.word s84
-.word s85
-.word s86
-.word s88
-.word s9
-.lcomm L.3,68
-.lcomm L.4,4
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-sw $4,32($sp)
-sw $5,36($sp)
-la $24,1
-sw $24,L.3+36
-la $24,1
-sw $24,L.3+40
-la $24,1
-sw $24,L.3+44
-la $24,1
-sw $24,L.3+48
-la $24,L.3
-sw $24,L.4
-move $30,$0
-b L.12
-L.9:
-lw $4,L.4
-sll $24,$30,2
-lw $25,L.2($24)
-jal $25
-sw $2,L.3+52
-lw $24,L.3+56
-lw $15,L.3+52
-addu $24,$24,$15
-sw $24,L.3+56
-lw $24,L.3+36
-beq $24,$0,L.17
-la $4,L.20
-la $5,L.3+60
-lw $6,L.3+52
-jal printf
-L.17:
-L.10:
-la $30,1($30)
-L.12:
-move $24,$30
-la $15,21
-bltu $24,$15,L.9
-lw $24,L.3+56
-bne $24,$0,L.23
-la $4,L.26
-jal printf
-b L.24
-L.23:
-la $4,L.27
-jal printf
-L.24:
-move $2,$0
-L.1:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end main
-.data
-.align 0
-L.29:
-.byte 115
-.byte 50
-.byte 50
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.30:
-.byte 115
-.byte 50
-.byte 50
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s22
-.text
-.text
-.align 2
-.ent s22
-s22:
-.frame $sp,56,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-56
-.mask 0xc2e00000,-20
-sw $21,16($sp)
-sw $22,20($sp)
-sw $23,24($sp)
-.cprestore 28
-sw $30,32($sp)
-sw $31,36($sp)
-sw $4,56($sp)
-move $22,$0
-la $30,L.30
-lw $24,0+56($sp)
-la $23,60($24)
-L.31:
-L.32:
-move $24,$23
-la $23,1($24)
-move $15,$30
-la $30,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.31
-la $21,1
-la $24,2
-sw $24,-8+56($sp)
-la $24,3
-sw $24,-12+56($sp)
-la $24,4
-sw $24,-4+56($sp)
-lw $24,-8+56($sp)
-addu $24,$21,$24
-lw $15,-12+56($sp)
-addu $24,$24,$15
-lw $15,-4+56($sp)
-addu $24,$24,$15
-la $15,10
-beq $24,$15,L.34
-la $22,1($22)
-lw $24,0+56($sp)
-lw $24,44($24)
-beq $24,$0,L.36
-la $4,L.29
-la $5,1
-jal printf
-L.36:
-L.34:
-la $24,2
-sw $24,-16+56($sp)
-lw $24,-16+56($sp)
-bne $24,$21,L.38
-la $22,4($22)
-lw $24,0+56($sp)
-lw $24,44($24)
-beq $24,$0,L.40
-la $4,L.29
-la $5,4
-jal printf
-L.40:
-L.38:
-move $2,$22
-L.28:
-lw $21,16($sp)
-lw $22,20($sp)
-lw $23,24($sp)
-lw $25,28($sp)
-lw $30,32($sp)
-lw $31,36($sp)
-addu $sp,$sp,56
-j $31
-.end s22
-.data
-.align 0
-L.43:
-.byte 115
-.byte 50
-.byte 52
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.44:
-.byte 115
-.byte 50
-.byte 52
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.data
-.align 2
-L.45:
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x6
-.word 0x0
-.word 0x8
-.word 0x0
-.word 0xc
-.word 0x0
-.word 0x10
-.word 0x0
-.word 0x12
-.word 0x0
-.word 0x14
-.word 0x0
-.word 0x18
-.word 0x0
-.word 0x1c
-.word 0x0
-.word 0x1e
-.word 0x0
-.word 0x20
-.word 0x0
-.word 0x24
-.globl s241
-.text
-.text
-.align 2
-.ent s241
-s241:
-.frame $sp,520,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-520
-.mask 0xc2f00000,-480
-sw $20,16($sp)
-sw $21,20($sp)
-sw $22,24($sp)
-sw $23,28($sp)
-.cprestore 32
-sw $30,36($sp)
-sw $31,40($sp)
-move $30,$4
-move $20,$0
-sw $0,-472+520($sp)
-la $22,L.44
-la $21,60($30)
-L.46:
-L.47:
-move $24,$21
-la $21,1($24)
-move $15,$22
-la $22,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.46
-b L.49
-la $20,1($20)
-lw $24,44($30)
-beq $24,$0,L.51
-la $4,L.43
-la $5,1
-jal printf
-L.51:
-L.49:
-b L.53
-la $20,2($20)
-lw $24,44($30)
-beq $24,$0,L.55
-la $4,L.43
-la $5,2
-jal printf
-L.55:
-L.53:
-b L.57
-la $20,4($20)
-lw $24,44($30)
-beq $24,$0,L.59
-la $4,L.43
-la $5,4
-jal printf
-L.59:
-L.57:
-b L.61
-la $20,8($20)
-lw $24,44($30)
-beq $24,$0,L.63
-la $4,L.43
-la $5,8
-jal printf
-L.63:
-L.61:
-move $23,$0
-L.65:
-sll $24,$23,2
-sw $23,L.45($24)
-L.66:
-la $23,1($23)
-la $24,17
-blt $23,$24,L.65
-la $23,18
-L.69:
-sll $24,$23,2
-la $24,L.45($24)
-sw $24,-476+520($sp)
-lw $4,($24)
-jal pow2
-lw $15,-476+520($sp)
-sw $2,($15)
-sll $24,$23,2
-lw $15,L.45($24)
-subu $15,$15,1
-sw $15,L.45-4($24)
-la $23,2($23)
-L.70:
-la $24,39
-blt $23,$24,L.69
-sw $0,-156+520($sp)
-sw $0,-312+520($sp)
-sw $0,-468+520($sp)
-la $24,1
-sw $24,-152+520($sp)
-la $24,1
-sw $24,-308+520($sp)
-la $24,1
-sw $24,-464+520($sp)
-la $24,2
-sw $24,-148+520($sp)
-la $24,2
-sw $24,-304+520($sp)
-la $24,2
-sw $24,-460+520($sp)
-la $24,3
-sw $24,-144+520($sp)
-la $24,3
-sw $24,-300+520($sp)
-la $24,3
-sw $24,-456+520($sp)
-la $24,4
-sw $24,-140+520($sp)
-la $24,4
-sw $24,-296+520($sp)
-la $24,4
-sw $24,-452+520($sp)
-la $24,5
-sw $24,-136+520($sp)
-la $24,5
-sw $24,-292+520($sp)
-la $24,5
-sw $24,-448+520($sp)
-la $24,6
-sw $24,-132+520($sp)
-la $24,6
-sw $24,-288+520($sp)
-la $24,6
-sw $24,-444+520($sp)
-la $24,7
-sw $24,-128+520($sp)
-la $24,7
-sw $24,-284+520($sp)
-la $24,7
-sw $24,-440+520($sp)
-la $24,8
-sw $24,-124+520($sp)
-la $24,8
-sw $24,-280+520($sp)
-la $24,8
-sw $24,-436+520($sp)
-la $24,9
-sw $24,-120+520($sp)
-la $24,9
-sw $24,-276+520($sp)
-la $24,9
-sw $24,-432+520($sp)
-la $24,10
-sw $24,-116+520($sp)
-la $24,10
-sw $24,-272+520($sp)
-la $24,10
-sw $24,-428+520($sp)
-la $24,11
-sw $24,-112+520($sp)
-la $24,11
-sw $24,-268+520($sp)
-la $24,11
-sw $24,-424+520($sp)
-la $24,12
-sw $24,-108+520($sp)
-la $24,12
-sw $24,-264+520($sp)
-la $24,12
-sw $24,-420+520($sp)
-la $24,13
-sw $24,-104+520($sp)
-la $24,13
-sw $24,-260+520($sp)
-la $24,13
-sw $24,-416+520($sp)
-la $24,14
-sw $24,-100+520($sp)
-la $24,14
-sw $24,-256+520($sp)
-la $24,14
-sw $24,-412+520($sp)
-la $24,15
-sw $24,-96+520($sp)
-la $24,15
-sw $24,-252+520($sp)
-la $24,15
-sw $24,-408+520($sp)
-la $24,16
-sw $24,-92+520($sp)
-la $24,16
-sw $24,-248+520($sp)
-la $24,16
-sw $24,-404+520($sp)
-la $24,63
-sw $24,-88+520($sp)
-la $24,63
-sw $24,-244+520($sp)
-la $24,63
-sw $24,-400+520($sp)
-la $24,64
-sw $24,-84+520($sp)
-la $24,64
-sw $24,-240+520($sp)
-la $24,64
-sw $24,-396+520($sp)
-la $24,255
-sw $24,-80+520($sp)
-la $24,255
-sw $24,-236+520($sp)
-la $24,255
-sw $24,-392+520($sp)
-la $24,256
-sw $24,-76+520($sp)
-la $24,256
-sw $24,-232+520($sp)
-la $24,256
-sw $24,-388+520($sp)
-la $24,4095
-sw $24,-72+520($sp)
-la $24,4095
-sw $24,-228+520($sp)
-la $24,4095
-sw $24,-384+520($sp)
-la $24,4096
-sw $24,-68+520($sp)
-la $24,4096
-sw $24,-224+520($sp)
-la $24,4096
-sw $24,-380+520($sp)
-la $24,65535
-sw $24,-64+520($sp)
-la $24,65535
-sw $24,-220+520($sp)
-la $24,65535
-sw $24,-376+520($sp)
-la $24,65536
-sw $24,-60+520($sp)
-la $24,65536
-sw $24,-216+520($sp)
-la $24,65536
-sw $24,-372+520($sp)
-la $24,262143
-sw $24,-56+520($sp)
-la $24,262143
-sw $24,-212+520($sp)
-la $24,262143
-sw $24,-368+520($sp)
-la $24,262144
-sw $24,-52+520($sp)
-la $24,262144
-sw $24,-208+520($sp)
-la $24,262144
-sw $24,-364+520($sp)
-la $24,1048575
-sw $24,-48+520($sp)
-la $24,1048575
-sw $24,-204+520($sp)
-la $24,1048575
-sw $24,-360+520($sp)
-la $24,1048576
-sw $24,-44+520($sp)
-la $24,1048576
-sw $24,-200+520($sp)
-la $24,1048576
-sw $24,-356+520($sp)
-la $24,16777215
-sw $24,-40+520($sp)
-la $24,16777215
-sw $24,-196+520($sp)
-la $24,16777215
-sw $24,-352+520($sp)
-la $24,16777216
-sw $24,-36+520($sp)
-la $24,16777216
-sw $24,-192+520($sp)
-la $24,16777216
-sw $24,-348+520($sp)
-la $24,268435455
-sw $24,-32+520($sp)
-la $24,268435455
-sw $24,-188+520($sp)
-la $24,268435455
-sw $24,-344+520($sp)
-la $24,268435456
-sw $24,-28+520($sp)
-la $24,268435456
-sw $24,-184+520($sp)
-la $24,268435456
-sw $24,-340+520($sp)
-la $24,1073741823
-sw $24,-24+520($sp)
-la $24,1073741823
-sw $24,-180+520($sp)
-la $24,1073741823
-sw $24,-336+520($sp)
-la $24,1073741824
-sw $24,-20+520($sp)
-la $24,1073741824
-sw $24,-176+520($sp)
-la $24,1073741824
-sw $24,-332+520($sp)
-la $24,0xffffffff
-sw $24,-16+520($sp)
-la $24,0xffffffff
-sw $24,-172+520($sp)
-la $24,0xffffffff
-sw $24,-328+520($sp)
-la $24,0xffffffff
-sw $24,-12+520($sp)
-la $24,0xffffffff
-sw $24,-168+520($sp)
-la $24,0xffffffff
-sw $24,-324+520($sp)
-la $24,0xffffffff
-sw $24,-8+520($sp)
-la $24,0xffffffff
-sw $24,-164+520($sp)
-la $24,0xffffffff
-sw $24,-320+520($sp)
-la $24,0xffffffff
-sw $24,-4+520($sp)
-la $24,0xffffffff
-sw $24,-160+520($sp)
-la $24,0xffffffff
-sw $24,-316+520($sp)
-move $23,$0
-L.188:
-sll $24,$23,2
-la $15,-156+520($sp)
-addu $15,$24,$15
-lw $15,($15)
-lw $14,L.45($24)
-bne $14,$15,L.195
-la $14,-312+520($sp)
-addu $14,$24,$14
-lw $14,($14)
-bne $15,$14,L.195
-la $15,-468+520($sp)
-addu $24,$24,$15
-lw $24,($24)
-beq $14,$24,L.192
-L.195:
-lw $24,40($30)
-beq $24,$0,L.196
-la $4,L.198
-jal printf
-la $4,L.199
-jal printf
-L.196:
-L.192:
-L.189:
-la $23,1($23)
-la $24,39
-blt $23,$24,L.188
-lw $24,-472+520($sp)
-beq $24,$0,L.200
-la $20,16
-L.200:
-move $2,$20
-L.42:
-lw $20,16($sp)
-lw $21,20($sp)
-lw $22,24($sp)
-lw $23,28($sp)
-lw $25,32($sp)
-lw $30,36($sp)
-lw $31,40($sp)
-addu $sp,$sp,520
-j $31
-.end s241
-.globl pow2
-.text
-.align 2
-.ent pow2
-pow2:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-.mask 0x40000000,-8
-sw $30,0($sp)
-la $30,1
-b L.204
-L.203:
-sll $30,$30,1
-L.204:
-move $24,$4
-subu $4,$24,1
-bne $24,$0,L.203
-move $2,$30
-L.202:
-lw $30,0($sp)
-addu $sp,$sp,8
-j $31
-.end pow2
-.data
-.align 0
-L.207:
-.byte 115
-.byte 50
-.byte 52
-.byte 51
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.208:
-.byte 115
-.byte 50
-.byte 52
-.byte 51
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s243
-.text
-.text
-.align 2
-.ent s243
-s243:
-.frame $sp,296,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-296
-.mask 0xc2c00000,-264
-sw $22,16($sp)
-sw $23,20($sp)
-.cprestore 24
-sw $30,28($sp)
-sw $31,32($sp)
-sw $4,296($sp)
-move $22,$0
-la $30,L.208
-lw $24,0+296($sp)
-la $23,60($24)
-L.209:
-L.210:
-move $24,$23
-la $23,1($24)
-move $15,$30
-la $30,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.209
-la $4,-256+296($sp)
-jal zerofill
-la $24,1
-sb $24,-159+296($sp)
-la $24,1
-sb $24,-191+296($sp)
-la $24,1
-sb $24,-130+296($sp)
-la $24,1
-sb $24,-208+296($sp)
-la $24,1
-sb $24,-158+296($sp)
-la $24,1
-sb $24,-190+296($sp)
-la $24,1
-sb $24,-223+296($sp)
-la $24,1
-sb $24,-207+296($sp)
-la $24,1
-sb $24,-157+296($sp)
-la $24,1
-sb $24,-189+296($sp)
-la $24,1
-sb $24,-222+296($sp)
-la $24,1
-sb $24,-206+296($sp)
-la $24,1
-sb $24,-156+296($sp)
-la $24,1
-sb $24,-188+296($sp)
-la $24,1
-sb $24,-221+296($sp)
-la $24,1
-sb $24,-205+296($sp)
-la $24,1
-sb $24,-155+296($sp)
-la $24,1
-sb $24,-187+296($sp)
-la $24,1
-sb $24,-219+296($sp)
-la $24,1
-sb $24,-204+296($sp)
-la $24,1
-sb $24,-154+296($sp)
-la $24,1
-sb $24,-186+296($sp)
-la $24,1
-sb $24,-218+296($sp)
-la $24,1
-sb $24,-203+296($sp)
-la $24,1
-sb $24,-153+296($sp)
-la $24,1
-sb $24,-185+296($sp)
-la $24,1
-sb $24,-216+296($sp)
-la $24,1
-sb $24,-202+296($sp)
-la $24,1
-sb $24,-152+296($sp)
-la $24,1
-sb $24,-184+296($sp)
-la $24,1
-sb $24,-215+296($sp)
-la $24,1
-sb $24,-201+296($sp)
-la $24,1
-sb $24,-151+296($sp)
-la $24,1
-sb $24,-183+296($sp)
-la $24,1
-sb $24,-161+296($sp)
-la $24,1
-sb $24,-200+296($sp)
-la $24,1
-sb $24,-150+296($sp)
-la $24,1
-sb $24,-182+296($sp)
-la $24,1
-sb $24,-195+296($sp)
-la $24,1
-sb $24,-199+296($sp)
-la $24,1
-sb $24,-149+296($sp)
-la $24,1
-sb $24,-181+296($sp)
-la $24,1
-sb $24,-211+296($sp)
-la $24,1
-sb $24,-148+296($sp)
-la $24,1
-sb $24,-180+296($sp)
-la $24,1
-sb $24,-162+296($sp)
-la $24,1
-sb $24,-147+296($sp)
-la $24,1
-sb $24,-179+296($sp)
-la $24,1
-sb $24,-132+296($sp)
-la $24,1
-sb $24,-246+296($sp)
-la $24,1
-sb $24,-146+296($sp)
-la $24,1
-sb $24,-178+296($sp)
-la $24,1
-sb $24,-247+296($sp)
-la $24,1
-sb $24,-145+296($sp)
-la $24,1
-sb $24,-177+296($sp)
-la $24,1
-sb $24,-133+296($sp)
-la $24,1
-sb $24,-248+296($sp)
-la $24,1
-sb $24,-144+296($sp)
-la $24,1
-sb $24,-176+296($sp)
-la $24,1
-sb $24,-131+296($sp)
-la $24,1
-sb $24,-243+296($sp)
-la $24,1
-sb $24,-143+296($sp)
-la $24,1
-sb $24,-175+296($sp)
-la $24,1
-sb $24,-165+296($sp)
-la $24,1
-sb $24,-244+296($sp)
-la $24,1
-sb $24,-142+296($sp)
-la $24,1
-sb $24,-174+296($sp)
-la $24,1
-sb $24,-163+296($sp)
-la $24,1
-sb $24,-141+296($sp)
-la $24,1
-sb $24,-173+296($sp)
-la $24,1
-sb $24,-213+296($sp)
-la $24,1
-sb $24,-164+296($sp)
-la $24,1
-sb $24,-140+296($sp)
-la $24,1
-sb $24,-172+296($sp)
-la $24,1
-sb $24,-197+296($sp)
-la $24,1
-sb $24,-217+296($sp)
-la $24,1
-sb $24,-139+296($sp)
-la $24,1
-sb $24,-171+296($sp)
-la $24,1
-sb $24,-214+296($sp)
-la $24,1
-sb $24,-138+296($sp)
-la $24,1
-sb $24,-170+296($sp)
-la $24,1
-sb $24,-198+296($sp)
-la $24,1
-sb $24,-256+296($sp)
-sb $24,-137+296($sp)
-la $24,1
-sb $24,-169+296($sp)
-la $24,1
-sb $24,-196+296($sp)
-la $24,1
-sb $24,-224+296($sp)
-la $24,1
-sb $24,-136+296($sp)
-la $24,1
-sb $24,-168+296($sp)
-la $24,1
-sb $24,-194+296($sp)
-la $24,1
-sb $24,-135+296($sp)
-la $24,1
-sb $24,-167+296($sp)
-la $24,1
-sb $24,-212+296($sp)
-la $24,1
-sb $24,-134+296($sp)
-la $24,1
-sb $24,-166+296($sp)
-la $24,1
-sb $24,-210+296($sp)
-la $24,1
-sb $24,-193+296($sp)
-la $24,1
-sb $24,-209+296($sp)
-la $4,-256+296($sp)
-jal sumof
-la $15,98
-beq $2,$15,L.309
-la $22,1($22)
-lw $24,0+296($sp)
-lw $24,44($24)
-beq $24,$0,L.311
-la $4,L.207
-la $5,1
-jal printf
-L.311:
-L.309:
-b L.313
-la $22,8($22)
-lw $24,0+296($sp)
-lw $24,44($24)
-beq $24,$0,L.315
-la $4,L.207
-la $5,8
-jal printf
-L.315:
-L.313:
-move $2,$22
-L.206:
-lw $22,16($sp)
-lw $23,20($sp)
-lw $25,24($sp)
-lw $30,28($sp)
-lw $31,32($sp)
-addu $sp,$sp,296
-j $31
-.end s243
-.globl zerofill
-.text
-.align 2
-.ent zerofill
-zerofill:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-.mask 0x40000000,-8
-sw $30,0($sp)
-move $30,$0
-L.318:
-move $24,$4
-la $4,1($24)
-sb $0,($24)
-L.319:
-la $30,1($30)
-la $24,256
-blt $30,$24,L.318
-move $2,$0
-L.317:
-lw $30,0($sp)
-addu $sp,$sp,8
-j $31
-.end zerofill
-.globl sumof
-.text
-.align 2
-.ent sumof
-sumof:
-.frame $sp,16,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-16
-.mask 0x40c00000,-8
-sw $22,0($sp)
-sw $23,4($sp)
-sw $30,8($sp)
-move $22,$4
-move $30,$0
-move $23,$0
-L.323:
-move $24,$22
-la $22,1($24)
-lb $24,($24)
-addu $30,$30,$24
-L.324:
-la $23,1($23)
-la $24,256
-blt $23,$24,L.323
-move $2,$30
-L.322:
-lw $22,0($sp)
-lw $23,4($sp)
-lw $30,8($sp)
-addu $sp,$sp,16
-j $31
-.end sumof
-.data
-.align 0
-L.328:
-.byte 115
-.byte 50
-.byte 52
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.329:
-.byte 115
-.byte 50
-.byte 52
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s244
-.text
-.text
-.align 2
-.ent s244
-s244:
-.frame $sp,112,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-112
-.mask 0xc2f00000,-72
-sw $20,16($sp)
-sw $21,20($sp)
-sw $22,24($sp)
-sw $23,28($sp)
-.cprestore 32
-sw $30,36($sp)
-sw $31,40($sp)
-sw $4,112($sp)
-la $23,L.329
-lw $24,0+112($sp)
-la $22,60($24)
-L.330:
-L.331:
-move $24,$22
-la $22,1($24)
-move $15,$23
-la $23,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.330
-move $20,$0
-move $21,$0
-l.d $f18,L.333
-s.d $f18,-64+112($sp)
-s.d $f18,-56+112($sp)
-l.d $f18,L.333
-s.d $f18,-48+112($sp)
-l.d $f18,L.333
-s.d $f18,-40+112($sp)
-l.d $f18,L.333
-s.d $f18,-32+112($sp)
-l.d $f18,L.333
-s.d $f18,-24+112($sp)
-l.d $f18,L.333
-s.d $f18,-16+112($sp)
-l.d $f18,L.333
-s.d $f18,-8+112($sp)
-move $21,$0
-move $30,$0
-L.341:
-sll $24,$30,3
-la $15,-64+112($sp)
-addu $15,$24,$15
-l.d $f18,($15)
-la $15,-56+112($sp)
-addu $24,$24,$15
-l.d $f16,($24)
-c.eq.d $f18,$f16; bc1t L.345
-la $21,1
-L.345:
-L.342:
-la $30,1($30)
-la $24,7
-blt $30,$24,L.341
-beq $21,$0,L.348
-lw $24,0+112($sp)
-lw $24,44($24)
-beq $24,$0,L.350
-la $4,L.328
-la $5,1
-jal printf
-L.350:
-la $20,1($20)
-L.348:
-b L.352
-lw $24,0+112($sp)
-lw $24,44($24)
-beq $24,$0,L.354
-la $4,L.328
-la $5,2
-jal printf
-L.354:
-la $20,2($20)
-L.352:
-move $2,$20
-L.327:
-lw $20,16($sp)
-lw $21,20($sp)
-lw $22,24($sp)
-lw $23,28($sp)
-lw $25,32($sp)
-lw $30,36($sp)
-lw $31,40($sp)
-addu $sp,$sp,112
-j $31
-.end s244
-.data
-.align 0
-L.357:
-.byte 115
-.byte 50
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.358:
-.byte 115
-.byte 50
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s25
-.text
-.text
-.align 2
-.ent s25
-s25:
-.frame $sp,56,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-56
-.mask 0xc2fe0000,-4
-sw $17,16($sp)
-sw $18,20($sp)
-sw $19,24($sp)
-sw $20,28($sp)
-sw $21,32($sp)
-sw $22,36($sp)
-sw $23,40($sp)
-.cprestore 44
-sw $30,48($sp)
-sw $31,52($sp)
-move $30,$4
-la $20,L.358
-la $19,60($30)
-L.359:
-L.360:
-move $24,$19
-la $19,1($24)
-move $15,$20
-la $20,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.359
-move $18,$0
-la $22,L.362
-lb $24,1($22)
-lb $15,($22)
-bne $15,$24,L.366
-lb $15,2($22)
-bne $24,$15,L.366
-la $24,46
-beq $15,$24,L.363
-L.366:
-la $18,1($18)
-lw $24,44($30)
-beq $24,$0,L.367
-la $4,L.357
-la $5,1
-jal printf
-L.367:
-L.363:
-lb $24,3($22)
-beq $24,$0,L.369
-la $18,4($18)
-lw $24,44($30)
-beq $24,$0,L.371
-la $4,L.357
-la $5,4
-jal printf
-L.371:
-L.369:
-lb $24,L.375+1
-la $15,34
-beq $24,$15,L.373
-la $18,8($18)
-lw $24,44($30)
-beq $24,$0,L.377
-la $4,L.357
-la $5,8
-jal printf
-L.377:
-L.373:
-la $22,L.379
-lb $24,($22)
-la $15,10
-bne $24,$15,L.387
-lb $24,1($22)
-la $15,9
-bne $24,$15,L.387
-lb $24,2($22)
-la $15,8
-bne $24,$15,L.387
-lb $24,3($22)
-la $15,13
-bne $24,$15,L.387
-lb $24,4($22)
-la $15,12
-bne $24,$15,L.387
-lb $24,5($22)
-la $15,92
-bne $24,$15,L.387
-lb $24,6($22)
-la $15,39
-beq $24,$15,L.380
-L.387:
-la $18,16($18)
-lw $24,44($30)
-beq $24,$0,L.388
-la $4,L.357
-la $5,16
-jal printf
-L.388:
-L.380:
-la $24,L.390
-move $21,$24
-move $22,$24
-move $17,$0
-move $23,$0
-b L.394
-L.391:
-addu $24,$23,$22
-lb $24,($24)
-addu $15,$23,$21
-lb $15,($15)
-beq $24,$15,L.395
-la $17,1
-L.395:
-L.392:
-la $23,1($23)
-L.394:
-move $24,$23
-la $15,7
-bltu $24,$15,L.391
-beq $17,$0,L.397
-la $18,32($18)
-lw $24,44($30)
-beq $24,$0,L.399
-la $4,L.357
-la $5,32
-jal printf
-L.399:
-L.397:
-move $2,$18
-L.356:
-lw $17,16($sp)
-lw $18,20($sp)
-lw $19,24($sp)
-lw $20,28($sp)
-lw $21,32($sp)
-lw $22,36($sp)
-lw $23,40($sp)
-lw $25,44($sp)
-lw $30,48($sp)
-lw $31,52($sp)
-addu $sp,$sp,56
-j $31
-.end s25
-.sdata
-.align 0
-L.402:
-.byte 115
-.byte 50
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.data
-.align 0
-L.403:
-.byte 37
-.byte 51
-.byte 100
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 37
-.byte 115
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.data
-.align 0
-L.404:
-.byte 37
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 97
-.byte 100
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 49
-.byte 46
-.byte 32
-.byte 40
-.byte 37
-.byte 115
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.globl s26
-.text
-.text
-.align 2
-.ent s26
-s26:
-.frame $sp,96,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-96
-.fmask 0xffc00000,-40
-.mask 0xc2f00000,-8
-s.d $f22,24($sp)
-s.d $f24,32($sp)
-s.d $f26,40($sp)
-s.d $f28,48($sp)
-s.d $f30,56($sp)
-sw $20,64($sp)
-sw $21,68($sp)
-sw $22,72($sp)
-sw $23,76($sp)
-.cprestore 80
-sw $30,84($sp)
-sw $31,88($sp)
-move $30,$4
-la $22,L.402
-la $21,60($30)
-L.405:
-L.406:
-move $24,$21
-la $21,1($24)
-move $15,$22
-la $22,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.405
-sw $0,($30)
-move $20,$0
-la $23,1
-b L.409
-L.408:
-sll $24,$23,8*(4-1); sra $24,$24,8*(4-1)
-sll $24,$24,1
-move $23,$24
-lw $24,($30)
-la $24,1($24)
-sw $24,($30)
-L.409:
-sll $24,$20,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$23,8*(4-1); sra $15,$15,8*(4-1)
-bne $24,$15,L.408
-lw $24,($30)
-sll $24,$24,2
-sw $24,4($30)
-lw $24,($30)
-sll $24,$24,1
-sw $24,8($30)
-lw $24,($30)
-sll $24,$24,2
-sw $24,12($30)
-lw $24,($30)
-sll $24,$24,2
-sw $24,16($30)
-lw $24,($30)
-sll $24,$24,2
-sw $24,20($30)
-lw $24,($30)
-sll $24,$24,3
-sw $24,24($30)
-l.s $f18,L.411
-mov.s $f26,$f18
-mov.s $f30,$f18
-l.s $f28,L.412
-b L.414
-L.413:
-add.s $f28,$f26,$f30
-cvt.d.s $f18,$f30
-l.d $f16,L.416
-div.d $f18,$f18,$f16
-cvt.s.d $f30,$f18
-L.414:
-c.eq.s $f28,$f26; bc1f L.413
-l.d $f18,L.417
-cvt.d.s $f16,$f30
-mul.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-s.s $f18,28($30)
-l.d $f22,L.418
-l.s $f30,L.411
-l.d $f24,L.419
-b L.421
-L.420:
-cvt.d.s $f18,$f30
-add.d $f24,$f22,$f18
-l.d $f16,L.416
-div.d $f18,$f18,$f16
-cvt.s.d $f30,$f18
-L.421:
-c.eq.d $f24,$f22; bc1f L.420
-l.d $f18,L.417
-cvt.d.s $f16,$f30
-mul.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-s.s $f18,32($30)
-lw $24,40($30)
-beq $24,$0,L.423
-la $4,L.403
-lw $5,($30)
-la $6,L.425
-jal printf
-la $4,L.403
-lw $5,4($30)
-la $6,L.426
-jal printf
-la $4,L.403
-lw $5,8($30)
-la $6,L.427
-jal printf
-la $4,L.403
-lw $5,12($30)
-la $6,L.428
-jal printf
-la $4,L.403
-lw $5,16($30)
-la $6,L.429
-jal printf
-la $4,L.403
-lw $5,20($30)
-la $6,L.430
-jal printf
-la $4,L.403
-lw $5,24($30)
-la $6,L.431
-jal printf
-la $4,L.404
-l.s $f18,28($30)
-cvt.d.s $f18,$f18
-mfc1.d $6,$f18
-la $24,L.430
-sw $24,16($sp)
-jal printf
-la $4,L.404
-l.s $f18,32($30)
-cvt.d.s $f18,$f18
-mfc1.d $6,$f18
-la $24,L.431
-sw $24,16($sp)
-jal printf
-L.423:
-move $2,$0
-L.401:
-l.d $f22,24($sp)
-l.d $f24,32($sp)
-l.d $f26,40($sp)
-l.d $f28,48($sp)
-l.d $f30,56($sp)
-lw $20,64($sp)
-lw $21,68($sp)
-lw $22,72($sp)
-lw $23,76($sp)
-lw $25,80($sp)
-lw $30,84($sp)
-lw $31,88($sp)
-addu $sp,$sp,96
-j $31
-.end s26
-.data
-.align 0
-L.433:
-.byte 115
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.434:
-.byte 115
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s4
-.text
-.text
-.align 2
-.ent s4
-s4:
-.frame $sp,72,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-72
-.mask 0xc2fc0000,-24
-sw $18,16($sp)
-sw $19,20($sp)
-sw $20,24($sp)
-sw $21,28($sp)
-sw $22,32($sp)
-sw $23,36($sp)
-.cprestore 40
-sw $30,44($sp)
-sw $31,48($sp)
-move $30,$4
-move $18,$0
-la $20,L.434
-la $19,60($30)
-L.435:
-L.436:
-move $24,$19
-la $19,1($24)
-move $15,$20
-la $20,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.435
-move $23,$0
-L.438:
-move $4,$23
-jal svtest
-move $24,$2
-sw $24,-16+72($sp)
-jal zero
-lw $15,-16+72($sp)
-beq $15,$2,L.442
-la $18,1
-lw $24,44($30)
-beq $24,$0,L.444
-la $4,L.433
-la $5,1
-jal printf
-L.444:
-L.442:
-L.439:
-la $23,1($23)
-la $24,3
-blt $23,$24,L.438
-jal setev
-jal testev
-beq $2,$0,L.446
-la $18,2($18)
-lw $24,44($30)
-beq $24,$0,L.448
-la $4,L.433
-la $5,2
-jal printf
-L.448:
-L.446:
-b L.450
-la $18,4($18)
-lw $24,44($30)
-beq $24,$0,L.452
-la $4,L.433
-la $5,4
-jal printf
-L.452:
-L.450:
-la $22,0xffffffff
-la $21,1
-move $23,$0
-b L.457
-L.454:
-and $21,$21,$22
-srl $22,$22,1
-L.455:
-la $23,1($23)
-L.457:
-move $24,$23
-lw $15,($30)
-sll $15,$15,2
-bltu $24,$15,L.454
-la $24,1
-bne $21,$24,L.460
-beq $22,$0,L.458
-L.460:
-la $18,8($18)
-lw $24,44($30)
-beq $24,$0,L.461
-la $4,L.433
-la $5,8
-jal printf
-L.461:
-L.458:
-move $2,$18
-L.432:
-lw $18,16($sp)
-lw $19,20($sp)
-lw $20,24($sp)
-lw $21,28($sp)
-lw $22,32($sp)
-lw $23,36($sp)
-lw $25,40($sp)
-lw $30,44($sp)
-lw $31,48($sp)
-addu $sp,$sp,72
-j $31
-.end s4
-.lcomm L.464,4
-.globl svtest
-.text
-.text
-.align 2
-.ent svtest
-svtest:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-beq $4,$0,L.467
-la $24,1
-beq $4,$24,L.468
-la $24,2
-beq $4,$24,L.471
-b L.465
-L.467:
-la $24,1978
-sw $24,L.464
-sw $0,-4+8($sp)
-b L.466
-L.468:
-lw $24,L.464
-la $15,1978
-beq $24,$15,L.469
-la $24,1
-sw $24,-4+8($sp)
-b L.466
-L.469:
-la $24,1929
-sw $24,L.464
-sw $0,-4+8($sp)
-b L.466
-L.471:
-lw $24,L.464
-la $15,1929
-beq $24,$15,L.472
-la $24,1
-sw $24,-4+8($sp)
-b L.466
-L.472:
-sw $0,-4+8($sp)
-L.465:
-L.466:
-lw $2,-4+8($sp)
-L.463:
-addu $sp,$sp,8
-j $31
-.end svtest
-.lcomm L.475,4
-.globl zero
-.text
-.text
-.align 2
-.ent zero
-zero:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-la $24,2
-sw $24,L.475
-sw $0,-4+8($sp)
-lw $2,-4+8($sp)
-L.474:
-addu $sp,$sp,8
-j $31
-.end zero
-.globl testev
-.text
-.align 2
-.ent testev
-testev:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-lw $24,extvar
-la $15,1066
-beq $24,$15,L.477
-la $2,1
-b L.476
-L.477:
-move $2,$0
-L.476:
-j $31
-.end testev
-.data
-.align 0
-L.480:
-.byte 115
-.byte 54
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.481:
-.byte 115
-.byte 54
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.data
-.align 0
-L.482:
-.byte 65
-.byte 66
-.byte 67
-.byte 68
-.byte 69
-.byte 70
-.byte 71
-.byte 72
-.byte 73
-.byte 74
-.byte 75
-.byte 76
-.byte 77
-.byte 78
-.byte 79
-.byte 80
-.byte 81
-.byte 82
-.byte 83
-.byte 84
-.byte 85
-.byte 86
-.byte 87
-.byte 88
-.byte 89
-.byte 90
-.byte 0
-.data
-.align 0
-L.483:
-.byte 97
-.byte 98
-.byte 99
-.byte 100
-.byte 101
-.byte 102
-.byte 103
-.byte 104
-.byte 105
-.byte 106
-.byte 107
-.byte 108
-.byte 109
-.byte 110
-.byte 111
-.byte 112
-.byte 113
-.byte 114
-.byte 115
-.byte 116
-.byte 117
-.byte 118
-.byte 119
-.byte 120
-.byte 121
-.byte 122
-.byte 0
-.data
-.align 0
-L.484:
-.byte 48
-.byte 49
-.byte 50
-.byte 51
-.byte 52
-.byte 53
-.byte 54
-.byte 55
-.byte 56
-.byte 57
-.byte 0
-.data
-.align 0
-L.485:
-.byte 126
-.byte 33
-.byte 34
-.byte 35
-.byte 37
-.byte 38
-.byte 40
-.byte 41
-.byte 95
-.byte 61
-.byte 45
-.byte 94
-.byte 124
-.byte 123
-.byte 125
-.byte 91
-.byte 93
-.byte 43
-.byte 59
-.byte 42
-.byte 58
-.byte 60
-.byte 62
-.byte 44
-.byte 46
-.byte 63
-.byte 47
-.byte 0
-.data
-.align 0
-L.486:
-.byte 10
-.byte 9
-.byte 8
-.byte 13
-.byte 12
-.byte 92
-.byte 39
-.byte 0
-.data
-.align 0
-L.487:
-.byte 32
-.byte 0
-.byte 0
-.globl s61
-.text
-.text
-.align 2
-.ent s61
-s61:
-.frame $sp,88,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-88
-.mask 0xc2fe0000,-36
-sw $17,16($sp)
-sw $18,20($sp)
-sw $19,24($sp)
-sw $20,28($sp)
-sw $21,32($sp)
-sw $22,36($sp)
-sw $23,40($sp)
-.cprestore 44
-sw $30,48($sp)
-sw $31,52($sp)
-sw $4,88($sp)
-la $22,L.481
-lw $24,0+88($sp)
-la $21,60($24)
-move $19,$0
-L.488:
-L.489:
-move $24,$21
-la $21,1($24)
-move $15,$22
-la $22,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.488
-la $24,-19
-sh $24,-26+88($sp)
-lh $24,-26+88($sp)
-sw $24,-32+88($sp)
-lw $24,-32+88($sp)
-la $15,-19
-beq $24,$15,L.491
-la $19,1($19)
-lw $24,0+88($sp)
-lw $24,44($24)
-beq $24,$0,L.493
-la $4,L.480
-la $5,1
-jal printf
-L.493:
-L.491:
-la $24,L.482
-sw $24,-24+88($sp)
-la $24,L.483
-sw $24,-20+88($sp)
-la $24,L.484
-sw $24,-16+88($sp)
-la $24,L.485
-sw $24,-12+88($sp)
-la $24,L.486
-sw $24,-8+88($sp)
-la $24,L.487
-sw $24,-4+88($sp)
-move $23,$0
-move $30,$0
-b L.505
-L.504:
-sll $24,$30,2
-la $15,-24+88($sp)
-addu $24,$24,$15
-lw $15,($24)
-la $14,1($15)
-sw $14,($24)
-lb $24,($15)
-bge $24,$0,L.507
-la $23,1
-L.507:
-L.505:
-sll $24,$30,2
-la $15,-24+88($sp)
-addu $24,$24,$15
-lw $24,($24)
-lb $24,($24)
-bne $24,$0,L.504
-L.501:
-la $30,1($30)
-la $24,6
-blt $30,$24,L.505
-beq $23,$0,L.509
-la $19,2($19)
-lw $24,0+88($sp)
-lw $24,44($24)
-beq $24,$0,L.511
-la $4,L.480
-la $5,2
-jal printf
-L.511:
-L.509:
-la $20,1048579
-move $18,$20
-move $17,$20
-sll $24,$18,8*(4-2); sra $24,$24,8*(4-2)
-beq $24,$20,L.516
-la $15,3
-bne $24,$15,L.515
-L.516:
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-beq $24,$20,L.513
-la $15,3
-beq $24,$15,L.513
-L.515:
-la $19,8($19)
-lw $24,0+88($sp)
-lw $24,44($24)
-beq $24,$0,L.517
-la $4,L.480
-la $5,8
-jal printf
-L.517:
-L.513:
-move $2,$19
-L.479:
-lw $17,16($sp)
-lw $18,20($sp)
-lw $19,24($sp)
-lw $20,28($sp)
-lw $21,32($sp)
-lw $22,36($sp)
-lw $23,40($sp)
-lw $25,44($sp)
-lw $30,48($sp)
-lw $31,52($sp)
-addu $sp,$sp,88
-j $31
-.end s61
-.data
-.align 0
-L.520:
-.byte 115
-.byte 54
-.byte 50
-.byte 54
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.521:
-.byte 115
-.byte 54
-.byte 50
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s626
-.text
-.text
-.align 2
-.ent s626
-s626:
-.frame $sp,152,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-152
-.fmask 0xff000000,-112
-.mask 0xc2ff0000,-64
-s.d $f24,16($sp)
-s.d $f26,24($sp)
-s.d $f28,32($sp)
-s.d $f30,40($sp)
-sw $16,48($sp)
-sw $17,52($sp)
-sw $18,56($sp)
-sw $19,60($sp)
-sw $20,64($sp)
-sw $21,68($sp)
-sw $22,72($sp)
-sw $23,76($sp)
-.cprestore 80
-sw $30,84($sp)
-sw $31,88($sp)
-move $30,$4
-la $20,L.521
-la $19,60($30)
-sw $0,-52+152($sp)
-L.522:
-L.523:
-move $24,$19
-la $19,1($24)
-move $15,$20
-la $20,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.522
-l.s $f30,L.411
-la $24,1
-move $18,$24
-move $22,$24
-move $23,$0
-b L.528
-L.525:
-l.s $f18,L.529
-mul.s $f30,$f18,$f30
-sll $24,$22,1
-or $22,$24,$18
-L.526:
-la $23,1($23)
-L.528:
-lw $24,12($30)
-subu $24,$24,2
-blt $23,$24,L.525
-mtc1 $22,$f18; cvt.s.w $f18,$f18
-s.s $f18,-60+152($sp)
-l.s $f18,-60+152($sp)
-sub.s $f18,$f30,$f18
-div.s $f30,$f18,$f30
-cvt.d.s $f18,$f30
-l.d $f16,L.416
-l.s $f10,28($30)
-cvt.d.s $f10,$f10
-mul.d $f16,$f16,$f10
-c.le.d $f18,$f16; bc1t L.530
-lw $24,-52+152($sp)
-la $24,2($24)
-sw $24,-52+152($sp)
-lw $24,44($30)
-beq $24,$0,L.532
-la $4,L.520
-la $5,2
-jal printf
-L.532:
-L.530:
-la $16,125
-la $24,125
-sh $24,-30+152($sp)
-la $24,125
-sw $24,-36+152($sp)
-la $24,15625
-sw $24,-44+152($sp)
-la $24,125
-sw $24,-40+152($sp)
-la $24,15625
-sw $24,-48+152($sp)
-la $17,125
-la $24,15625
-sw $24,-56+152($sp)
-l.s $f26,L.534
-l.d $f24,L.535
-l.d $f28,L.536
-move $23,$0
-L.537:
-la $24,-28+152($sp)
-addu $24,$23,$24
-sb $0,($24)
-L.538:
-la $23,1($23)
-la $24,28
-blt $23,$24,L.537
-sll $24,$16,8*(4-1); sra $24,$24,8*(4-1)
-mul $24,$24,$24
-lw $15,-44+152($sp)
-beq $24,$15,L.541
-la $24,1
-sb $24,-28+152($sp)
-L.541:
-lh $24,-30+152($sp)
-sll $15,$16,8*(4-1); sra $15,$15,8*(4-1)
-mul $24,$24,$15
-lw $15,-44+152($sp)
-beq $24,$15,L.543
-la $24,1
-sb $24,-27+152($sp)
-L.543:
-lh $24,-30+152($sp)
-mul $24,$24,$24
-lw $15,-44+152($sp)
-beq $24,$15,L.546
-la $24,1
-sb $24,-26+152($sp)
-L.546:
-lw $24,-36+152($sp)
-sll $15,$16,8*(4-1); sra $15,$15,8*(4-1)
-mul $24,$24,$15
-lw $15,-44+152($sp)
-beq $24,$15,L.549
-la $24,1
-sb $24,-25+152($sp)
-L.549:
-lw $24,-36+152($sp)
-lh $15,-30+152($sp)
-mul $24,$24,$15
-lw $15,-44+152($sp)
-beq $24,$15,L.552
-la $24,1
-sb $24,-24+152($sp)
-L.552:
-lw $24,-36+152($sp)
-mul $24,$24,$24
-lw $15,-44+152($sp)
-beq $24,$15,L.555
-la $24,1
-sb $24,-23+152($sp)
-L.555:
-lw $24,-40+152($sp)
-sll $15,$16,8*(4-1); sra $15,$15,8*(4-1)
-mul $24,$24,$15
-lw $15,-48+152($sp)
-beq $24,$15,L.558
-la $24,1
-sb $24,-22+152($sp)
-L.558:
-lw $24,-40+152($sp)
-lh $15,-30+152($sp)
-mul $24,$24,$15
-lw $15,-48+152($sp)
-beq $24,$15,L.561
-la $24,1
-sb $24,-21+152($sp)
-L.561:
-lw $24,-40+152($sp)
-lw $15,-36+152($sp)
-mul $24,$24,$15
-lw $15,-48+152($sp)
-beq $24,$15,L.564
-la $24,1
-sb $24,-20+152($sp)
-L.564:
-lw $24,-40+152($sp)
-mul $24,$24,$24
-lw $15,-48+152($sp)
-beq $24,$15,L.567
-la $24,1
-sb $24,-19+152($sp)
-L.567:
-sll $24,$16,8*(4-1); sra $24,$24,8*(4-1)
-mul $24,$17,$24
-lw $15,-56+152($sp)
-beq $24,$15,L.570
-la $24,1
-sb $24,-18+152($sp)
-L.570:
-lh $24,-30+152($sp)
-mul $24,$17,$24
-lw $15,-56+152($sp)
-beq $24,$15,L.573
-la $24,1
-sb $24,-17+152($sp)
-L.573:
-lw $24,-36+152($sp)
-mul $24,$17,$24
-lw $15,-56+152($sp)
-beq $24,$15,L.576
-la $24,1
-sb $24,-16+152($sp)
-L.576:
-move $24,$17
-lw $15,-40+152($sp)
-mul $24,$24,$15
-lw $15,-48+152($sp)
-beq $24,$15,L.579
-la $24,1
-sb $24,-15+152($sp)
-L.579:
-mul $24,$17,$17
-lw $15,-56+152($sp)
-beq $24,$15,L.582
-la $24,1
-sb $24,-14+152($sp)
-L.582:
-sll $24,$16,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-mul.s $f18,$f26,$f18
-cvt.d.s $f18,$f18
-c.eq.d $f18,$f28; bc1t L.585
-la $24,1
-sb $24,-13+152($sp)
-L.585:
-lh $24,-30+152($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-mul.s $f18,$f26,$f18
-cvt.d.s $f18,$f18
-c.eq.d $f18,$f28; bc1t L.588
-la $24,1
-sb $24,-12+152($sp)
-L.588:
-lw $24,-36+152($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-mul.s $f18,$f26,$f18
-cvt.d.s $f18,$f18
-c.eq.d $f18,$f28; bc1t L.591
-la $24,1
-sb $24,-11+152($sp)
-L.591:
-lw $24,-40+152($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-mul.s $f18,$f26,$f18
-cvt.d.s $f18,$f18
-c.eq.d $f18,$f28; bc1t L.594
-la $24,1
-sb $24,-10+152($sp)
-L.594:
-mtc1 $17,$f18; cvt.s.w $f18,$f18
-mul.s $f18,$f26,$f18
-cvt.d.s $f18,$f18
-c.eq.d $f18,$f28; bc1t L.598
-la $24,1
-sb $24,-9+152($sp)
-L.598:
-mul.s $f18,$f26,$f26
-cvt.d.s $f18,$f18
-c.eq.d $f18,$f28; bc1t L.601
-la $24,1
-sb $24,-8+152($sp)
-L.601:
-sll $24,$16,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-mul.d $f18,$f24,$f18
-c.eq.d $f18,$f28; bc1t L.604
-la $24,1
-sb $24,-7+152($sp)
-L.604:
-lh $24,-30+152($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-mul.d $f18,$f24,$f18
-c.eq.d $f18,$f28; bc1t L.607
-la $24,1
-sb $24,-6+152($sp)
-L.607:
-lw $24,-36+152($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-mul.d $f18,$f24,$f18
-c.eq.d $f18,$f28; bc1t L.610
-la $24,1
-sb $24,-5+152($sp)
-L.610:
-lw $24,-40+152($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-mul.d $f18,$f24,$f18
-c.eq.d $f18,$f28; bc1t L.613
-la $24,1
-sb $24,-4+152($sp)
-L.613:
-mtc1 $17,$f18; cvt.d.w $f18,$f18
-mul.d $f18,$f24,$f18
-c.eq.d $f18,$f28; bc1t L.616
-la $24,1
-sb $24,-3+152($sp)
-L.616:
-cvt.d.s $f18,$f26
-mul.d $f18,$f24,$f18
-c.eq.d $f18,$f28; bc1t L.619
-la $24,1
-sb $24,-2+152($sp)
-L.619:
-mul.d $f18,$f24,$f24
-c.eq.d $f18,$f28; bc1t L.622
-la $24,1
-sb $24,-1+152($sp)
-L.622:
-move $21,$0
-move $23,$0
-L.625:
-sll $24,$21,8*(4-1); sra $24,$24,8*(4-1)
-la $15,-28+152($sp)
-addu $15,$23,$15
-lb $15,($15)
-addu $24,$24,$15
-move $21,$24
-L.626:
-la $23,1($23)
-la $24,28
-blt $23,$24,L.625
-sll $24,$21,8*(4-1); sra $24,$24,8*(4-1)
-beq $24,$0,L.629
-lw $24,-52+152($sp)
-la $24,4($24)
-sw $24,-52+152($sp)
-lw $24,44($30)
-beq $24,$0,L.631
-la $4,L.520
-la $5,4
-jal printf
-la $4,L.633
-jal printf
-move $23,$0
-L.634:
-la $4,L.638
-la $24,-28+152($sp)
-addu $24,$23,$24
-lb $5,($24)
-jal printf
-L.635:
-la $23,1($23)
-la $24,28
-blt $23,$24,L.634
-la $4,L.639
-jal printf
-L.631:
-L.629:
-la $17,32768
-move $24,$17
-la $15,0x8000
-bleu $24,$15,L.640
-lw $24,-52+152($sp)
-la $24,8($24)
-sw $24,-52+152($sp)
-lw $24,44($30)
-beq $24,$0,L.642
-la $4,L.520
-la $5,8
-jal printf
-L.642:
-L.640:
-lw $2,-52+152($sp)
-L.519:
-l.d $f24,16($sp)
-l.d $f26,24($sp)
-l.d $f28,32($sp)
-l.d $f30,40($sp)
-lw $16,48($sp)
-lw $17,52($sp)
-lw $18,56($sp)
-lw $19,60($sp)
-lw $20,64($sp)
-lw $21,68($sp)
-lw $22,72($sp)
-lw $23,76($sp)
-lw $25,80($sp)
-lw $30,84($sp)
-lw $31,88($sp)
-addu $sp,$sp,152
-j $31
-.end s626
-.data
-.align 0
-L.645:
-.byte 115
-.byte 55
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.646:
-.byte 115
-.byte 55
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.sdata
-.align 0
-L.647:
-.byte 0x71
-.globl s71
-.text
-.text
-.align 2
-.ent s71
-s71:
-.frame $sp,96,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-96
-.mask 0xc2f00000,-56
-sw $20,16($sp)
-sw $21,20($sp)
-sw $22,24($sp)
-sw $23,28($sp)
-.cprestore 32
-sw $30,36($sp)
-sw $31,40($sp)
-move $30,$4
-la $23,L.646
-la $22,60($30)
-move $21,$0
-L.648:
-L.649:
-move $24,$22
-la $22,1($24)
-move $15,$23
-la $23,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.648
-lb $24,L.653
-lb $15,L.647
-beq $24,$15,L.651
-la $21,1($21)
-lw $24,44($30)
-beq $24,$0,L.654
-la $4,L.645
-la $5,1
-jal printf
-L.654:
-L.651:
-b L.656
-la $21,2($21)
-lw $24,44($30)
-beq $24,$0,L.658
-la $4,L.645
-la $5,2
-jal printf
-L.658:
-L.656:
-la $24,1942
-sw $24,-20+96($sp)
-lw $24,-20+96($sp)
-la $15,1942
-bne $24,$15,L.666
-lw $24,-20+96($sp)
-lw $15,-20+96($sp)
-beq $24,$15,L.661
-L.666:
-la $21,4($21)
-lw $24,44($30)
-beq $24,$0,L.667
-la $4,L.645
-la $5,4
-jal printf
-L.667:
-L.661:
-la $4,-5
-jal McCarthy
-la $15,91
-beq $2,$15,L.669
-la $21,8($21)
-lw $24,44($30)
-beq $24,$0,L.671
-la $4,L.645
-la $5,8
-jal printf
-L.671:
-L.669:
-la $20,2
-la $24,3
-sw $24,-44+96($sp)
-la $24,-44+96($sp)
-sw $24,-48+96($sp)
-move $4,$20
-lw $5,-48+96($sp)
-jal clobber
-la $24,2
-bne $20,$24,L.675
-lw $15,-44+96($sp)
-beq $15,$24,L.673
-L.675:
-la $21,16($21)
-lw $24,44($30)
-beq $24,$0,L.676
-la $4,L.645
-la $5,16
-jal printf
-L.676:
-L.673:
-l.s $f18,32($30)
-c.eq.s $f18,$f18; bc1t L.678
-la $21,32($21)
-lw $24,44($30)
-beq $24,$0,L.680
-la $4,L.645
-la $5,32
-jal printf
-L.680:
-L.678:
-move $2,$21
-L.644:
-lw $20,16($sp)
-lw $21,20($sp)
-lw $22,24($sp)
-lw $23,28($sp)
-lw $25,32($sp)
-lw $30,36($sp)
-lw $31,40($sp)
-addu $sp,$sp,96
-j $31
-.end s71
-.globl McCarthy
-.text
-.align 2
-.ent McCarthy
-McCarthy:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-lw $24,0+24($sp)
-la $15,100
-ble $24,$15,L.683
-lw $24,0+24($sp)
-subu $2,$24,10
-b L.682
-L.683:
-lw $24,0+24($sp)
-la $4,11($24)
-jal McCarthy
-move $24,$2
-move $4,$24
-jal McCarthy
-move $24,$2
-L.682:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end McCarthy
-.globl clobber
-.text
-.align 2
-.ent clobber
-clobber:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-la $4,3
-la $24,2
-sw $24,($5)
-move $2,$0
-L.685:
-j $31
-.end clobber
-.data
-.align 0
-L.687:
-.byte 76
-.byte 111
-.byte 99
-.byte 97
-.byte 108
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.data
-.align 0
-L.688:
-.byte 115
-.byte 55
-.byte 49
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.689:
-.byte 115
-.byte 55
-.byte 49
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s714
-.text
-.text
-.align 2
-.ent s714
-s714:
-.frame $sp,160,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-160
-.fmask 0xff000000,-120
-.mask 0xc2ff0000,-72
-s.d $f24,16($sp)
-s.d $f26,24($sp)
-s.d $f28,32($sp)
-s.d $f30,40($sp)
-sw $16,48($sp)
-sw $17,52($sp)
-sw $18,56($sp)
-sw $19,60($sp)
-sw $20,64($sp)
-sw $21,68($sp)
-sw $22,72($sp)
-sw $23,76($sp)
-.cprestore 80
-sw $30,84($sp)
-sw $31,88($sp)
-sw $4,160($sp)
-la $24,L.689
-sw $24,-16+160($sp)
-lw $24,0+160($sp)
-la $15,60($24)
-sw $15,-20+160($sp)
-sw $0,-24+160($sp)
-move $23,$0
-lw $30,48($24)
-L.690:
-L.691:
-lw $24,-20+160($sp)
-la $15,1($24)
-sw $15,-20+160($sp)
-lw $15,-16+160($sp)
-la $14,1($15)
-sw $14,-16+160($sp)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.690
-la $22,5
-la $17,2
-move $22,$17
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.693
-la $23,1
-beq $30,$0,L.695
-la $4,L.687
-move $5,$23
-jal printf
-L.695:
-L.693:
-la $22,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.697
-la $23,2
-beq $30,$0,L.699
-la $4,L.687
-move $5,$23
-jal printf
-L.699:
-L.697:
-la $22,5
-la $24,2
-sw $24,-4+160($sp)
-lw $15,-4+160($sp)
-move $22,$15
-sll $15,$22,8*(4-1); sra $15,$15,8*(4-1)
-beq $15,$24,L.701
-la $23,3
-beq $30,$0,L.703
-la $4,L.687
-move $5,$23
-jal printf
-L.703:
-L.701:
-la $22,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.705
-la $23,4
-beq $30,$0,L.707
-la $4,L.687
-move $5,$23
-jal printf
-L.707:
-L.705:
-la $22,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.709
-la $23,5
-beq $30,$0,L.711
-la $4,L.687
-move $5,$23
-jal printf
-L.711:
-L.709:
-la $22,5
-l.s $f26,L.529
-trunc.w.s $f2,$f26,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.713
-la $23,6
-beq $30,$0,L.715
-la $4,L.687
-move $5,$23
-jal printf
-L.715:
-L.713:
-la $22,5
-l.d $f24,L.416
-trunc.w.d $f2,$f24,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.717
-la $23,7
-beq $30,$0,L.719
-la $4,L.687
-move $5,$23
-jal printf
-L.719:
-L.717:
-la $21,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.721
-la $23,8
-beq $30,$0,L.723
-la $4,L.687
-move $5,$23
-jal printf
-L.723:
-L.721:
-la $21,5
-la $16,2
-move $21,$16
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.725
-la $23,9
-beq $30,$0,L.727
-la $4,L.687
-move $5,$23
-jal printf
-L.727:
-L.725:
-la $21,5
-la $24,2
-sw $24,-4+160($sp)
-lw $15,-4+160($sp)
-move $21,$15
-sll $15,$21,8*(4-2); sra $15,$15,8*(4-2)
-beq $15,$24,L.729
-la $23,10
-beq $30,$0,L.731
-la $4,L.687
-move $5,$23
-jal printf
-L.731:
-L.729:
-la $21,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.733
-la $23,11
-beq $30,$0,L.735
-la $4,L.687
-move $5,$23
-jal printf
-L.735:
-L.733:
-la $21,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.737
-la $23,12
-beq $30,$0,L.739
-la $4,L.687
-move $5,$23
-jal printf
-L.739:
-L.737:
-la $21,5
-l.s $f26,L.529
-trunc.w.s $f2,$f26,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.741
-la $23,13
-beq $30,$0,L.743
-la $4,L.687
-move $5,$23
-jal printf
-L.743:
-L.741:
-la $21,5
-l.d $f24,L.416
-trunc.w.d $f2,$f24,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.745
-la $23,14
-beq $30,$0,L.747
-la $4,L.687
-move $5,$23
-jal printf
-L.747:
-L.745:
-la $20,5
-la $17,2
-sll $20,$17,8*(4-1); sra $20,$20,8*(4-1)
-la $24,2
-beq $20,$24,L.749
-la $23,15
-beq $30,$0,L.751
-la $4,L.687
-move $5,$23
-jal printf
-L.751:
-L.749:
-la $20,5
-la $16,2
-sll $20,$16,8*(4-2); sra $20,$20,8*(4-2)
-la $24,2
-beq $20,$24,L.753
-la $23,16
-beq $30,$0,L.755
-la $4,L.687
-move $5,$23
-jal printf
-L.755:
-L.753:
-la $20,5
-la $24,2
-sw $24,-4+160($sp)
-lw $20,-4+160($sp)
-beq $20,$24,L.757
-la $23,17
-beq $30,$0,L.759
-la $4,L.687
-move $5,$23
-jal printf
-L.759:
-L.757:
-la $20,5
-la $24,2
-sw $24,-8+160($sp)
-lw $20,-8+160($sp)
-la $24,2
-beq $20,$24,L.761
-la $23,18
-beq $30,$0,L.763
-la $4,L.687
-move $5,$23
-jal printf
-L.763:
-L.761:
-la $20,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-move $20,$24
-la $24,2
-beq $20,$24,L.765
-la $23,19
-beq $30,$0,L.767
-la $4,L.687
-move $5,$23
-jal printf
-L.767:
-L.765:
-la $20,5
-l.s $f26,L.529
-trunc.w.s $f2,$f26,$20; mfc1 $20,$f2
-la $24,2
-beq $20,$24,L.769
-la $23,20
-beq $30,$0,L.771
-la $4,L.687
-move $5,$23
-jal printf
-L.771:
-L.769:
-la $20,5
-l.d $f24,L.416
-trunc.w.d $f2,$f24,$20; mfc1 $20,$f2
-la $24,2
-beq $20,$24,L.773
-la $23,21
-beq $30,$0,L.775
-la $4,L.687
-move $5,$23
-jal printf
-L.775:
-L.773:
-la $19,5
-la $17,2
-sll $19,$17,8*(4-1); sra $19,$19,8*(4-1)
-la $24,2
-beq $19,$24,L.777
-la $23,22
-beq $30,$0,L.779
-la $4,L.687
-move $5,$23
-jal printf
-L.779:
-L.777:
-la $19,5
-la $16,2
-sll $19,$16,8*(4-2); sra $19,$19,8*(4-2)
-la $24,2
-beq $19,$24,L.781
-la $23,23
-beq $30,$0,L.783
-la $4,L.687
-move $5,$23
-jal printf
-L.783:
-L.781:
-la $19,5
-la $24,2
-sw $24,-4+160($sp)
-lw $19,-4+160($sp)
-la $24,2
-beq $19,$24,L.785
-la $23,24
-beq $30,$0,L.787
-la $4,L.687
-move $5,$23
-jal printf
-L.787:
-L.785:
-la $19,5
-la $24,2
-sw $24,-8+160($sp)
-lw $19,-8+160($sp)
-beq $19,$24,L.789
-la $23,25
-beq $30,$0,L.791
-la $4,L.687
-move $5,$23
-jal printf
-L.791:
-L.789:
-la $19,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-move $19,$24
-la $24,2
-beq $19,$24,L.793
-la $23,26
-beq $30,$0,L.795
-la $4,L.687
-move $5,$23
-jal printf
-L.795:
-L.793:
-la $19,5
-l.s $f26,L.529
-trunc.w.s $f2,$f26,$19; mfc1 $19,$f2
-la $24,2
-beq $19,$24,L.797
-la $23,27
-beq $30,$0,L.799
-la $4,L.687
-move $5,$23
-jal printf
-L.799:
-L.797:
-la $19,5
-l.d $f24,L.416
-trunc.w.d $f2,$f24,$19; mfc1 $19,$f2
-la $24,2
-beq $19,$24,L.801
-la $23,28
-beq $30,$0,L.803
-la $4,L.687
-move $5,$23
-jal printf
-L.803:
-L.801:
-la $18,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-move $18,$24
-la $24,2
-beq $18,$24,L.805
-la $23,29
-beq $30,$0,L.807
-la $4,L.687
-move $5,$23
-jal printf
-L.807:
-L.805:
-la $18,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-move $18,$24
-la $24,2
-beq $18,$24,L.809
-la $23,30
-beq $30,$0,L.811
-la $4,L.687
-move $5,$23
-jal printf
-L.811:
-L.809:
-la $18,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-move $18,$24
-la $24,2
-beq $18,$24,L.813
-la $23,31
-beq $30,$0,L.815
-la $4,L.687
-move $5,$23
-jal printf
-L.815:
-L.813:
-la $18,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-move $18,$24
-la $24,2
-beq $18,$24,L.817
-la $23,32
-beq $30,$0,L.819
-la $4,L.687
-move $5,$23
-jal printf
-L.819:
-L.817:
-la $18,5
-la $24,2
-sw $24,-12+160($sp)
-lw $18,-12+160($sp)
-beq $18,$24,L.821
-la $23,33
-beq $30,$0,L.823
-la $4,L.687
-move $5,$23
-jal printf
-L.823:
-L.821:
-la $18,5
-l.s $f26,L.529
-l.s $f18,L.828
-c.lt.s $f26,$f18; bc1t L.826
-sub.s $f18,$f26,$f18
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-28+160($sp)
-b L.827
-L.826:
-trunc.w.s $f2,$f26,$24; mfc1 $24,$f2
-sw $24,-28+160($sp)
-L.827:
-lw $18,-28+160($sp)
-la $24,2
-beq $18,$24,L.829
-la $23,34
-beq $30,$0,L.831
-la $4,L.687
-move $5,$23
-jal printf
-L.831:
-L.829:
-la $18,5
-l.d $f24,L.416
-l.d $f18,L.836
-c.lt.d $f24,$f18; bc1t L.834
-sub.d $f18,$f24,$f18
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-32+160($sp)
-b L.835
-L.834:
-trunc.w.d $f2,$f24,$24; mfc1 $24,$f2
-sw $24,-32+160($sp)
-L.835:
-lw $18,-32+160($sp)
-la $24,2
-beq $18,$24,L.837
-la $23,35
-beq $30,$0,L.839
-la $4,L.687
-move $5,$23
-jal printf
-L.839:
-L.837:
-l.s $f30,L.841
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f30; cvt.s.w $f30,$f30
-l.s $f18,L.529
-c.eq.s $f30,$f18; bc1t L.842
-la $23,36
-beq $30,$0,L.844
-la $4,L.687
-move $5,$23
-jal printf
-L.844:
-L.842:
-l.s $f30,L.841
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f30; cvt.s.w $f30,$f30
-l.s $f18,L.529
-c.eq.s $f30,$f18; bc1t L.846
-la $23,37
-beq $30,$0,L.848
-la $4,L.687
-move $5,$23
-jal printf
-L.848:
-L.846:
-l.s $f30,L.841
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f30; cvt.s.w $f30,$f30
-l.s $f18,L.529
-c.eq.s $f30,$f18; bc1t L.850
-la $23,38
-beq $30,$0,L.852
-la $4,L.687
-move $5,$23
-jal printf
-L.852:
-L.850:
-l.s $f30,L.841
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f30; cvt.s.w $f30,$f30
-l.s $f18,L.529
-c.eq.s $f30,$f18; bc1t L.854
-la $23,39
-beq $30,$0,L.856
-la $4,L.687
-move $5,$23
-jal printf
-L.856:
-L.854:
-l.s $f30,L.841
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f30,$f18
-l.s $f18,L.529
-c.eq.s $f30,$f18; bc1t L.858
-la $23,40
-beq $30,$0,L.860
-la $4,L.687
-move $5,$23
-jal printf
-L.860:
-L.858:
-l.s $f30,L.841
-l.s $f18,L.529
-mov.s $f26,$f18
-mov.s $f30,$f26
-c.eq.s $f30,$f18; bc1t L.862
-la $23,41
-beq $30,$0,L.864
-la $4,L.687
-move $5,$23
-jal printf
-L.864:
-L.862:
-l.s $f30,L.841
-l.d $f24,L.416
-cvt.s.d $f30,$f24
-l.s $f18,L.529
-c.eq.s $f30,$f18; bc1t L.866
-la $23,42
-beq $30,$0,L.868
-la $4,L.687
-move $5,$23
-jal printf
-L.868:
-L.866:
-l.d $f28,L.870
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f28; cvt.d.w $f28,$f28
-l.d $f18,L.416
-c.eq.d $f28,$f18; bc1t L.871
-la $23,43
-beq $30,$0,L.873
-la $4,L.687
-move $5,$23
-jal printf
-L.873:
-L.871:
-l.d $f28,L.870
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f28; cvt.d.w $f28,$f28
-l.d $f18,L.416
-c.eq.d $f28,$f18; bc1t L.875
-la $23,44
-beq $30,$0,L.877
-la $4,L.687
-move $5,$23
-jal printf
-L.877:
-L.875:
-l.d $f28,L.870
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f28; cvt.d.w $f28,$f28
-l.d $f18,L.416
-c.eq.d $f28,$f18; bc1t L.879
-la $23,45
-beq $30,$0,L.881
-la $4,L.687
-move $5,$23
-jal printf
-L.881:
-L.879:
-l.d $f28,L.870
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f28; cvt.d.w $f28,$f28
-l.d $f18,L.416
-c.eq.d $f28,$f18; bc1t L.883
-la $23,46
-beq $30,$0,L.885
-la $4,L.687
-move $5,$23
-jal printf
-L.885:
-L.883:
-l.d $f28,L.870
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f28,$f18,$f16
-l.d $f18,L.416
-c.eq.d $f28,$f18; bc1t L.887
-la $23,47
-beq $30,$0,L.889
-la $4,L.687
-move $5,$23
-jal printf
-L.889:
-L.887:
-l.d $f28,L.870
-l.s $f26,L.529
-cvt.d.s $f28,$f26
-l.d $f18,L.416
-c.eq.d $f28,$f18; bc1t L.891
-la $23,48
-beq $30,$0,L.893
-la $4,L.687
-move $5,$23
-jal printf
-L.893:
-L.891:
-l.d $f28,L.870
-l.d $f18,L.416
-mov.d $f24,$f18
-mov.d $f28,$f24
-c.eq.d $f28,$f18; bc1t L.895
-la $23,49
-beq $30,$0,L.897
-la $4,L.687
-move $5,$23
-jal printf
-L.897:
-L.895:
-la $22,5
-la $17,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-addu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,7
-beq $24,$15,L.899
-la $23,50
-beq $30,$0,L.901
-la $4,L.687
-move $5,$23
-jal printf
-L.901:
-L.899:
-la $22,5
-la $16,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-addu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,7
-beq $24,$15,L.903
-la $23,51
-beq $30,$0,L.905
-la $4,L.687
-move $5,$23
-jal printf
-L.905:
-L.903:
-la $22,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-4+160($sp)
-addu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,7
-beq $24,$15,L.907
-la $23,52
-beq $30,$0,L.909
-la $4,L.687
-move $5,$23
-jal printf
-L.909:
-L.907:
-la $22,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-addu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,7
-beq $24,$15,L.911
-la $23,53
-beq $30,$0,L.913
-la $4,L.687
-move $5,$23
-jal printf
-L.913:
-L.911:
-la $22,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-addu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,7
-beq $24,$15,L.915
-la $23,54
-beq $30,$0,L.917
-la $4,L.687
-move $5,$23
-jal printf
-L.917:
-L.915:
-la $22,5
-l.s $f26,L.529
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-add.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,7
-beq $24,$15,L.919
-la $23,55
-beq $30,$0,L.921
-la $4,L.687
-move $5,$23
-jal printf
-L.921:
-L.919:
-la $22,5
-l.d $f24,L.416
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-add.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,7
-beq $24,$15,L.923
-la $23,56
-beq $30,$0,L.925
-la $4,L.687
-move $5,$23
-jal printf
-L.925:
-L.923:
-la $21,5
-la $17,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-addu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,7
-beq $24,$15,L.927
-la $23,57
-beq $30,$0,L.929
-la $4,L.687
-move $5,$23
-jal printf
-L.929:
-L.927:
-la $21,5
-la $16,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-addu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,7
-beq $24,$15,L.931
-la $23,58
-beq $30,$0,L.933
-la $4,L.687
-move $5,$23
-jal printf
-L.933:
-L.931:
-la $21,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-4+160($sp)
-addu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,7
-beq $24,$15,L.935
-la $23,59
-beq $30,$0,L.937
-la $4,L.687
-move $5,$23
-jal printf
-L.937:
-L.935:
-la $21,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-addu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,7
-beq $24,$15,L.939
-la $23,60
-beq $30,$0,L.941
-la $4,L.687
-move $5,$23
-jal printf
-L.941:
-L.939:
-la $21,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-addu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,7
-beq $24,$15,L.943
-la $23,61
-beq $30,$0,L.945
-la $4,L.687
-move $5,$23
-jal printf
-L.945:
-L.943:
-la $21,5
-l.s $f26,L.529
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-add.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,7
-beq $24,$15,L.947
-la $23,62
-beq $30,$0,L.949
-la $4,L.687
-move $5,$23
-jal printf
-L.949:
-L.947:
-la $21,5
-l.d $f24,L.416
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-add.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,7
-beq $24,$15,L.951
-la $23,63
-beq $30,$0,L.953
-la $4,L.687
-move $5,$23
-jal printf
-L.953:
-L.951:
-la $20,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-addu $20,$20,$24
-la $24,7
-beq $20,$24,L.955
-la $23,64
-beq $30,$0,L.957
-la $4,L.687
-move $5,$23
-jal printf
-L.957:
-L.955:
-la $20,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-addu $20,$20,$24
-la $24,7
-beq $20,$24,L.959
-la $23,65
-beq $30,$0,L.961
-la $4,L.687
-move $5,$23
-jal printf
-L.961:
-L.959:
-la $20,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-addu $20,$20,$24
-la $24,7
-beq $20,$24,L.963
-la $23,66
-beq $30,$0,L.965
-la $4,L.687
-move $5,$23
-jal printf
-L.965:
-L.963:
-la $20,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-addu $20,$20,$24
-la $24,7
-beq $20,$24,L.967
-la $23,67
-beq $30,$0,L.969
-la $4,L.687
-move $5,$23
-jal printf
-L.969:
-L.967:
-la $20,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$20
-lw $15,-12+160($sp)
-addu $24,$24,$15
-move $20,$24
-la $24,7
-beq $20,$24,L.971
-la $23,68
-beq $30,$0,L.973
-la $4,L.687
-move $5,$23
-jal printf
-L.973:
-L.971:
-la $20,5
-l.s $f26,L.529
-mtc1 $20,$f18; cvt.s.w $f18,$f18
-add.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$20; mfc1 $20,$f2
-la $24,7
-beq $20,$24,L.975
-la $23,69
-beq $30,$0,L.977
-la $4,L.687
-move $5,$23
-jal printf
-L.977:
-L.975:
-la $20,5
-l.d $f24,L.416
-mtc1 $20,$f18; cvt.d.w $f18,$f18
-add.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$20; mfc1 $20,$f2
-la $24,7
-beq $20,$24,L.979
-la $23,70
-beq $30,$0,L.981
-la $4,L.687
-move $5,$23
-jal printf
-L.981:
-L.979:
-la $19,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-addu $19,$19,$24
-la $24,7
-beq $19,$24,L.983
-la $23,71
-beq $30,$0,L.985
-la $4,L.687
-move $5,$23
-jal printf
-L.985:
-L.983:
-la $19,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-addu $19,$19,$24
-la $24,7
-beq $19,$24,L.987
-la $23,72
-beq $30,$0,L.989
-la $4,L.687
-move $5,$23
-jal printf
-L.989:
-L.987:
-la $19,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-addu $19,$19,$24
-la $24,7
-beq $19,$24,L.991
-la $23,73
-beq $30,$0,L.993
-la $4,L.687
-move $5,$23
-jal printf
-L.993:
-L.991:
-la $19,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-addu $19,$19,$24
-la $24,7
-beq $19,$24,L.995
-la $23,74
-beq $30,$0,L.997
-la $4,L.687
-move $5,$23
-jal printf
-L.997:
-L.995:
-la $19,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$19
-lw $15,-12+160($sp)
-addu $24,$24,$15
-move $19,$24
-la $24,7
-beq $19,$24,L.999
-la $23,75
-beq $30,$0,L.1001
-la $4,L.687
-move $5,$23
-jal printf
-L.1001:
-L.999:
-la $19,5
-l.s $f26,L.529
-mtc1 $19,$f18; cvt.s.w $f18,$f18
-add.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$19; mfc1 $19,$f2
-la $24,7
-beq $19,$24,L.1003
-la $23,76
-beq $30,$0,L.1005
-la $4,L.687
-move $5,$23
-jal printf
-L.1005:
-L.1003:
-la $19,5
-l.d $f24,L.416
-mtc1 $19,$f18; cvt.d.w $f18,$f18
-add.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$19; mfc1 $19,$f2
-la $24,7
-beq $19,$24,L.1007
-la $23,77
-beq $30,$0,L.1009
-la $4,L.687
-move $5,$23
-jal printf
-L.1009:
-L.1007:
-la $18,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-addu $18,$18,$24
-la $24,7
-beq $18,$24,L.1011
-la $23,78
-beq $30,$0,L.1013
-la $4,L.687
-move $5,$23
-jal printf
-L.1013:
-L.1011:
-la $18,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-addu $18,$18,$24
-la $24,7
-beq $18,$24,L.1015
-la $23,79
-beq $30,$0,L.1017
-la $4,L.687
-move $5,$23
-jal printf
-L.1017:
-L.1015:
-la $18,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-addu $18,$18,$24
-la $24,7
-beq $18,$24,L.1019
-la $23,80
-beq $30,$0,L.1021
-la $4,L.687
-move $5,$23
-jal printf
-L.1021:
-L.1019:
-la $18,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-addu $18,$18,$24
-la $24,7
-beq $18,$24,L.1023
-la $23,81
-beq $30,$0,L.1025
-la $4,L.687
-move $5,$23
-jal printf
-L.1025:
-L.1023:
-la $18,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-addu $18,$18,$24
-la $24,7
-beq $18,$24,L.1027
-la $23,82
-beq $30,$0,L.1029
-la $4,L.687
-move $5,$23
-jal printf
-L.1029:
-L.1027:
-la $18,5
-l.s $f26,L.529
-l.d $f18,L.596
-srl $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-add.s $f18,$f18,$f26
-l.s $f16,L.828
-c.lt.s $f18,$f16; bc1t L.1032
-sub.s $f16,$f18,$f16
-trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-36+160($sp)
-b L.1033
-L.1032:
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-36+160($sp)
-L.1033:
-lw $18,-36+160($sp)
-la $24,7
-beq $18,$24,L.1034
-la $23,83
-beq $30,$0,L.1036
-la $4,L.687
-move $5,$23
-jal printf
-L.1036:
-L.1034:
-la $18,5
-l.d $f24,L.416
-l.d $f18,L.596
-srl $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-add.d $f18,$f18,$f24
-l.d $f16,L.836
-c.lt.d $f18,$f16; bc1t L.1039
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-40+160($sp)
-b L.1040
-L.1039:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-40+160($sp)
-L.1040:
-lw $18,-40+160($sp)
-la $24,7
-beq $18,$24,L.1041
-la $23,84
-beq $30,$0,L.1043
-la $4,L.687
-move $5,$23
-jal printf
-L.1043:
-L.1041:
-l.s $f30,L.841
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-add.s $f30,$f30,$f18
-l.s $f18,L.1047
-c.eq.s $f30,$f18; bc1t L.1045
-la $23,85
-beq $30,$0,L.1048
-la $4,L.687
-move $5,$23
-jal printf
-L.1048:
-L.1045:
-l.s $f30,L.841
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-add.s $f30,$f30,$f18
-l.s $f18,L.1047
-c.eq.s $f30,$f18; bc1t L.1050
-la $23,86
-beq $30,$0,L.1052
-la $4,L.687
-move $5,$23
-jal printf
-L.1052:
-L.1050:
-l.s $f30,L.841
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-add.s $f30,$f30,$f18
-l.s $f18,L.1047
-c.eq.s $f30,$f18; bc1t L.1054
-la $23,87
-beq $30,$0,L.1056
-la $4,L.687
-move $5,$23
-jal printf
-L.1056:
-L.1054:
-l.s $f30,L.841
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-add.s $f30,$f30,$f18
-l.s $f18,L.1047
-c.eq.s $f30,$f18; bc1t L.1058
-la $23,88
-beq $30,$0,L.1060
-la $4,L.687
-move $5,$23
-jal printf
-L.1060:
-L.1058:
-l.s $f30,L.841
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-add.s $f30,$f30,$f18
-l.s $f18,L.1047
-c.eq.s $f30,$f18; bc1t L.1062
-la $23,89
-beq $30,$0,L.1064
-la $4,L.687
-move $5,$23
-jal printf
-L.1064:
-L.1062:
-l.s $f30,L.841
-l.s $f26,L.529
-add.s $f30,$f30,$f26
-l.s $f18,L.1047
-c.eq.s $f30,$f18; bc1t L.1066
-la $23,90
-beq $30,$0,L.1068
-la $4,L.687
-move $5,$23
-jal printf
-L.1068:
-L.1066:
-l.s $f30,L.841
-l.d $f24,L.416
-cvt.d.s $f18,$f30
-add.d $f18,$f18,$f24
-cvt.s.d $f30,$f18
-l.s $f18,L.1047
-c.eq.s $f30,$f18; bc1t L.1070
-la $23,91
-beq $30,$0,L.1072
-la $4,L.687
-move $5,$23
-jal printf
-L.1072:
-L.1070:
-l.d $f28,L.870
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-add.d $f28,$f28,$f18
-l.d $f18,L.1076
-c.eq.d $f28,$f18; bc1t L.1074
-la $23,92
-beq $30,$0,L.1077
-la $4,L.687
-move $5,$23
-jal printf
-L.1077:
-L.1074:
-l.d $f28,L.870
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-add.d $f28,$f28,$f18
-l.d $f18,L.1076
-c.eq.d $f28,$f18; bc1t L.1079
-la $23,93
-beq $30,$0,L.1081
-la $4,L.687
-move $5,$23
-jal printf
-L.1081:
-L.1079:
-l.d $f28,L.870
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-add.d $f28,$f28,$f18
-l.d $f18,L.1076
-c.eq.d $f28,$f18; bc1t L.1083
-la $23,94
-beq $30,$0,L.1085
-la $4,L.687
-move $5,$23
-jal printf
-L.1085:
-L.1083:
-l.d $f28,L.870
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-add.d $f28,$f28,$f18
-l.d $f18,L.1076
-c.eq.d $f28,$f18; bc1t L.1087
-la $23,95
-beq $30,$0,L.1089
-la $4,L.687
-move $5,$23
-jal printf
-L.1089:
-L.1087:
-l.d $f28,L.870
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-add.d $f28,$f28,$f18
-l.d $f18,L.1076
-c.eq.d $f28,$f18; bc1t L.1091
-la $23,96
-beq $30,$0,L.1093
-la $4,L.687
-move $5,$23
-jal printf
-L.1093:
-L.1091:
-l.d $f28,L.870
-l.s $f26,L.529
-cvt.d.s $f18,$f26
-add.d $f28,$f28,$f18
-l.d $f18,L.1076
-c.eq.d $f28,$f18; bc1t L.1095
-la $23,97
-beq $30,$0,L.1097
-la $4,L.687
-move $5,$23
-jal printf
-L.1097:
-L.1095:
-l.d $f28,L.870
-l.d $f24,L.416
-add.d $f28,$f28,$f24
-l.d $f18,L.1076
-c.eq.d $f28,$f18; bc1t L.1099
-la $23,98
-beq $30,$0,L.1101
-la $4,L.687
-move $5,$23
-jal printf
-L.1101:
-L.1099:
-la $22,5
-la $17,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-subu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,3
-beq $24,$15,L.1103
-la $23,99
-beq $30,$0,L.1105
-la $4,L.687
-move $5,$23
-jal printf
-L.1105:
-L.1103:
-la $22,5
-la $16,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-subu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,3
-beq $24,$15,L.1107
-la $23,100
-beq $30,$0,L.1109
-la $4,L.687
-move $5,$23
-jal printf
-L.1109:
-L.1107:
-la $22,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-4+160($sp)
-subu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,3
-beq $24,$15,L.1111
-la $23,101
-beq $30,$0,L.1113
-la $4,L.687
-move $5,$23
-jal printf
-L.1113:
-L.1111:
-la $22,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-subu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,3
-beq $24,$15,L.1115
-la $23,102
-beq $30,$0,L.1117
-la $4,L.687
-move $5,$23
-jal printf
-L.1117:
-L.1115:
-la $22,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-subu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,3
-beq $24,$15,L.1119
-la $23,103
-beq $30,$0,L.1121
-la $4,L.687
-move $5,$23
-jal printf
-L.1121:
-L.1119:
-la $22,5
-l.s $f26,L.529
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-sub.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,3
-beq $24,$15,L.1123
-la $23,104
-beq $30,$0,L.1125
-la $4,L.687
-move $5,$23
-jal printf
-L.1125:
-L.1123:
-la $22,5
-l.d $f24,L.416
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-sub.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,3
-beq $24,$15,L.1127
-la $23,105
-beq $30,$0,L.1129
-la $4,L.687
-move $5,$23
-jal printf
-L.1129:
-L.1127:
-la $21,5
-la $17,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-subu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,3
-beq $24,$15,L.1131
-la $23,106
-beq $30,$0,L.1133
-la $4,L.687
-move $5,$23
-jal printf
-L.1133:
-L.1131:
-la $21,5
-la $16,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-subu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,3
-beq $24,$15,L.1135
-la $23,107
-beq $30,$0,L.1137
-la $4,L.687
-move $5,$23
-jal printf
-L.1137:
-L.1135:
-la $21,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-4+160($sp)
-subu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,3
-beq $24,$15,L.1139
-la $23,108
-beq $30,$0,L.1141
-la $4,L.687
-move $5,$23
-jal printf
-L.1141:
-L.1139:
-la $21,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-subu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,3
-beq $24,$15,L.1143
-la $23,109
-beq $30,$0,L.1145
-la $4,L.687
-move $5,$23
-jal printf
-L.1145:
-L.1143:
-la $21,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-subu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,3
-beq $24,$15,L.1147
-la $23,110
-beq $30,$0,L.1149
-la $4,L.687
-move $5,$23
-jal printf
-L.1149:
-L.1147:
-la $21,5
-l.s $f26,L.529
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-sub.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,3
-beq $24,$15,L.1151
-la $23,111
-beq $30,$0,L.1153
-la $4,L.687
-move $5,$23
-jal printf
-L.1153:
-L.1151:
-la $21,5
-l.d $f24,L.416
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-sub.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,3
-beq $24,$15,L.1155
-la $23,112
-beq $30,$0,L.1157
-la $4,L.687
-move $5,$23
-jal printf
-L.1157:
-L.1155:
-la $20,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-subu $20,$20,$24
-la $24,3
-beq $20,$24,L.1159
-la $23,113
-beq $30,$0,L.1161
-la $4,L.687
-move $5,$23
-jal printf
-L.1161:
-L.1159:
-la $20,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-subu $20,$20,$24
-la $24,3
-beq $20,$24,L.1163
-la $23,114
-beq $30,$0,L.1165
-la $4,L.687
-move $5,$23
-jal printf
-L.1165:
-L.1163:
-la $20,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-subu $20,$20,$24
-la $24,3
-beq $20,$24,L.1167
-la $23,115
-beq $30,$0,L.1169
-la $4,L.687
-move $5,$23
-jal printf
-L.1169:
-L.1167:
-la $20,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-subu $20,$20,$24
-la $24,3
-beq $20,$24,L.1171
-la $23,116
-beq $30,$0,L.1173
-la $4,L.687
-move $5,$23
-jal printf
-L.1173:
-L.1171:
-la $20,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$20
-lw $15,-12+160($sp)
-subu $24,$24,$15
-move $20,$24
-la $24,3
-beq $20,$24,L.1175
-la $23,117
-beq $30,$0,L.1177
-la $4,L.687
-move $5,$23
-jal printf
-L.1177:
-L.1175:
-la $20,5
-l.s $f26,L.529
-mtc1 $20,$f18; cvt.s.w $f18,$f18
-sub.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$20; mfc1 $20,$f2
-la $24,3
-beq $20,$24,L.1179
-la $23,118
-beq $30,$0,L.1181
-la $4,L.687
-move $5,$23
-jal printf
-L.1181:
-L.1179:
-la $20,5
-l.d $f24,L.416
-mtc1 $20,$f18; cvt.d.w $f18,$f18
-sub.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$20; mfc1 $20,$f2
-la $24,3
-beq $20,$24,L.1183
-la $23,119
-beq $30,$0,L.1185
-la $4,L.687
-move $5,$23
-jal printf
-L.1185:
-L.1183:
-la $19,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-subu $19,$19,$24
-la $24,3
-beq $19,$24,L.1187
-la $23,120
-beq $30,$0,L.1189
-la $4,L.687
-move $5,$23
-jal printf
-L.1189:
-L.1187:
-la $19,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-subu $19,$19,$24
-la $24,3
-beq $19,$24,L.1191
-la $23,121
-beq $30,$0,L.1193
-la $4,L.687
-move $5,$23
-jal printf
-L.1193:
-L.1191:
-la $19,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-subu $19,$19,$24
-la $24,3
-beq $19,$24,L.1195
-la $23,122
-beq $30,$0,L.1197
-la $4,L.687
-move $5,$23
-jal printf
-L.1197:
-L.1195:
-la $19,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-subu $19,$19,$24
-la $24,3
-beq $19,$24,L.1199
-la $23,123
-beq $30,$0,L.1201
-la $4,L.687
-move $5,$23
-jal printf
-L.1201:
-L.1199:
-la $19,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$19
-lw $15,-12+160($sp)
-subu $24,$24,$15
-move $19,$24
-la $24,3
-beq $19,$24,L.1203
-la $23,124
-beq $30,$0,L.1205
-la $4,L.687
-move $5,$23
-jal printf
-L.1205:
-L.1203:
-la $19,5
-l.s $f26,L.529
-mtc1 $19,$f18; cvt.s.w $f18,$f18
-sub.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$19; mfc1 $19,$f2
-la $24,3
-beq $19,$24,L.1207
-la $23,125
-beq $30,$0,L.1209
-la $4,L.687
-move $5,$23
-jal printf
-L.1209:
-L.1207:
-la $19,5
-l.d $f24,L.416
-mtc1 $19,$f18; cvt.d.w $f18,$f18
-sub.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$19; mfc1 $19,$f2
-la $24,3
-beq $19,$24,L.1211
-la $23,126
-beq $30,$0,L.1213
-la $4,L.687
-move $5,$23
-jal printf
-L.1213:
-L.1211:
-la $18,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-subu $18,$18,$24
-la $24,3
-beq $18,$24,L.1215
-la $23,127
-beq $30,$0,L.1217
-la $4,L.687
-move $5,$23
-jal printf
-L.1217:
-L.1215:
-la $18,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-subu $18,$18,$24
-la $24,3
-beq $18,$24,L.1219
-la $23,128
-beq $30,$0,L.1221
-la $4,L.687
-move $5,$23
-jal printf
-L.1221:
-L.1219:
-la $18,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-subu $18,$18,$24
-la $24,3
-beq $18,$24,L.1223
-la $23,129
-beq $30,$0,L.1225
-la $4,L.687
-move $5,$23
-jal printf
-L.1225:
-L.1223:
-la $18,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-subu $18,$18,$24
-la $24,3
-beq $18,$24,L.1227
-la $23,130
-beq $30,$0,L.1229
-la $4,L.687
-move $5,$23
-jal printf
-L.1229:
-L.1227:
-la $18,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-subu $18,$18,$24
-la $24,3
-beq $18,$24,L.1231
-la $23,131
-beq $30,$0,L.1233
-la $4,L.687
-move $5,$23
-jal printf
-L.1233:
-L.1231:
-la $18,5
-l.s $f26,L.529
-l.d $f18,L.596
-srl $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-sub.s $f18,$f18,$f26
-l.s $f16,L.828
-c.lt.s $f18,$f16; bc1t L.1236
-sub.s $f16,$f18,$f16
-trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-44+160($sp)
-b L.1237
-L.1236:
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-44+160($sp)
-L.1237:
-lw $18,-44+160($sp)
-la $24,3
-beq $18,$24,L.1238
-la $23,132
-beq $30,$0,L.1240
-la $4,L.687
-move $5,$23
-jal printf
-L.1240:
-L.1238:
-la $18,5
-l.d $f24,L.416
-l.d $f18,L.596
-srl $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-sub.d $f18,$f18,$f24
-l.d $f16,L.836
-c.lt.d $f18,$f16; bc1t L.1243
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-48+160($sp)
-b L.1244
-L.1243:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-48+160($sp)
-L.1244:
-lw $18,-48+160($sp)
-la $24,3
-beq $18,$24,L.1245
-la $23,133
-beq $30,$0,L.1247
-la $4,L.687
-move $5,$23
-jal printf
-L.1247:
-L.1245:
-l.s $f30,L.841
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-sub.s $f30,$f30,$f18
-l.s $f18,L.1251
-c.eq.s $f30,$f18; bc1t L.1249
-la $23,134
-beq $30,$0,L.1252
-la $4,L.687
-move $5,$23
-jal printf
-L.1252:
-L.1249:
-l.s $f30,L.841
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-sub.s $f30,$f30,$f18
-l.s $f18,L.1251
-c.eq.s $f30,$f18; bc1t L.1254
-la $23,135
-beq $30,$0,L.1256
-la $4,L.687
-move $5,$23
-jal printf
-L.1256:
-L.1254:
-l.s $f30,L.841
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-sub.s $f30,$f30,$f18
-l.s $f18,L.1251
-c.eq.s $f30,$f18; bc1t L.1258
-la $23,136
-beq $30,$0,L.1260
-la $4,L.687
-move $5,$23
-jal printf
-L.1260:
-L.1258:
-l.s $f30,L.841
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-sub.s $f30,$f30,$f18
-l.s $f18,L.1251
-c.eq.s $f30,$f18; bc1t L.1262
-la $23,137
-beq $30,$0,L.1264
-la $4,L.687
-move $5,$23
-jal printf
-L.1264:
-L.1262:
-l.s $f30,L.841
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-sub.s $f30,$f30,$f18
-l.s $f18,L.1251
-c.eq.s $f30,$f18; bc1t L.1266
-la $23,138
-beq $30,$0,L.1268
-la $4,L.687
-move $5,$23
-jal printf
-L.1268:
-L.1266:
-l.s $f30,L.841
-l.s $f26,L.529
-sub.s $f30,$f30,$f26
-l.s $f18,L.1251
-c.eq.s $f30,$f18; bc1t L.1270
-la $23,139
-beq $30,$0,L.1272
-la $4,L.687
-move $5,$23
-jal printf
-L.1272:
-L.1270:
-l.s $f30,L.841
-l.d $f24,L.416
-cvt.d.s $f18,$f30
-sub.d $f18,$f18,$f24
-cvt.s.d $f30,$f18
-l.s $f18,L.1251
-c.eq.s $f30,$f18; bc1t L.1274
-la $23,140
-beq $30,$0,L.1276
-la $4,L.687
-move $5,$23
-jal printf
-L.1276:
-L.1274:
-l.d $f28,L.870
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-sub.d $f28,$f28,$f18
-l.d $f18,L.1280
-c.eq.d $f28,$f18; bc1t L.1278
-la $23,141
-beq $30,$0,L.1281
-la $4,L.687
-move $5,$23
-jal printf
-L.1281:
-L.1278:
-l.d $f28,L.870
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-sub.d $f28,$f28,$f18
-l.d $f18,L.1280
-c.eq.d $f28,$f18; bc1t L.1283
-la $23,142
-beq $30,$0,L.1285
-la $4,L.687
-move $5,$23
-jal printf
-L.1285:
-L.1283:
-l.d $f28,L.870
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-sub.d $f28,$f28,$f18
-l.d $f18,L.1280
-c.eq.d $f28,$f18; bc1t L.1287
-la $23,143
-beq $30,$0,L.1289
-la $4,L.687
-move $5,$23
-jal printf
-L.1289:
-L.1287:
-l.d $f28,L.870
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-sub.d $f28,$f28,$f18
-l.d $f18,L.1280
-c.eq.d $f28,$f18; bc1t L.1291
-la $23,144
-beq $30,$0,L.1293
-la $4,L.687
-move $5,$23
-jal printf
-L.1293:
-L.1291:
-l.d $f28,L.870
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-sub.d $f28,$f28,$f18
-l.d $f18,L.1280
-c.eq.d $f28,$f18; bc1t L.1295
-la $23,145
-beq $30,$0,L.1297
-la $4,L.687
-move $5,$23
-jal printf
-L.1297:
-L.1295:
-l.d $f28,L.870
-l.s $f26,L.529
-cvt.d.s $f18,$f26
-sub.d $f28,$f28,$f18
-l.d $f18,L.1280
-c.eq.d $f28,$f18; bc1t L.1299
-la $23,146
-beq $30,$0,L.1301
-la $4,L.687
-move $5,$23
-jal printf
-L.1301:
-L.1299:
-l.d $f28,L.870
-l.d $f24,L.416
-sub.d $f28,$f28,$f24
-l.d $f18,L.1280
-c.eq.d $f28,$f18; bc1t L.1303
-la $23,147
-beq $30,$0,L.1305
-la $4,L.687
-move $5,$23
-jal printf
-L.1305:
-L.1303:
-la $22,5
-la $17,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-mul $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,10
-beq $24,$15,L.1307
-la $23,148
-beq $30,$0,L.1309
-la $4,L.687
-move $5,$23
-jal printf
-L.1309:
-L.1307:
-la $22,5
-la $16,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-mul $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,10
-beq $24,$15,L.1311
-la $23,149
-beq $30,$0,L.1313
-la $4,L.687
-move $5,$23
-jal printf
-L.1313:
-L.1311:
-la $22,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-4+160($sp)
-mul $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,10
-beq $24,$15,L.1315
-la $23,150
-beq $30,$0,L.1317
-la $4,L.687
-move $5,$23
-jal printf
-L.1317:
-L.1315:
-la $22,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-mul $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,10
-beq $24,$15,L.1319
-la $23,151
-beq $30,$0,L.1321
-la $4,L.687
-move $5,$23
-jal printf
-L.1321:
-L.1319:
-la $22,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-mul $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,10
-beq $24,$15,L.1323
-la $23,152
-beq $30,$0,L.1325
-la $4,L.687
-move $5,$23
-jal printf
-L.1325:
-L.1323:
-la $22,5
-l.s $f26,L.529
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-mul.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,10
-beq $24,$15,L.1327
-la $23,153
-beq $30,$0,L.1329
-la $4,L.687
-move $5,$23
-jal printf
-L.1329:
-L.1327:
-la $22,5
-l.d $f24,L.416
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-mul.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,10
-beq $24,$15,L.1331
-la $23,154
-beq $30,$0,L.1333
-la $4,L.687
-move $5,$23
-jal printf
-L.1333:
-L.1331:
-la $21,5
-la $17,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-mul $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,10
-beq $24,$15,L.1335
-la $23,155
-beq $30,$0,L.1337
-la $4,L.687
-move $5,$23
-jal printf
-L.1337:
-L.1335:
-la $21,5
-la $16,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-mul $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,10
-beq $24,$15,L.1339
-la $23,156
-beq $30,$0,L.1341
-la $4,L.687
-move $5,$23
-jal printf
-L.1341:
-L.1339:
-la $21,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-4+160($sp)
-mul $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,10
-beq $24,$15,L.1343
-la $23,157
-beq $30,$0,L.1345
-la $4,L.687
-move $5,$23
-jal printf
-L.1345:
-L.1343:
-la $21,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-mul $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,10
-beq $24,$15,L.1347
-la $23,158
-beq $30,$0,L.1349
-la $4,L.687
-move $5,$23
-jal printf
-L.1349:
-L.1347:
-la $21,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-mul $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,10
-beq $24,$15,L.1351
-la $23,159
-beq $30,$0,L.1353
-la $4,L.687
-move $5,$23
-jal printf
-L.1353:
-L.1351:
-la $21,5
-l.s $f26,L.529
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-mul.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,10
-beq $24,$15,L.1355
-la $23,160
-beq $30,$0,L.1357
-la $4,L.687
-move $5,$23
-jal printf
-L.1357:
-L.1355:
-la $21,5
-l.d $f24,L.416
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-mul.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,10
-beq $24,$15,L.1359
-la $23,161
-beq $30,$0,L.1361
-la $4,L.687
-move $5,$23
-jal printf
-L.1361:
-L.1359:
-la $20,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mul $20,$20,$24
-la $24,10
-beq $20,$24,L.1363
-la $23,162
-beq $30,$0,L.1365
-la $4,L.687
-move $5,$23
-jal printf
-L.1365:
-L.1363:
-la $20,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mul $20,$20,$24
-la $24,10
-beq $20,$24,L.1367
-la $23,163
-beq $30,$0,L.1369
-la $4,L.687
-move $5,$23
-jal printf
-L.1369:
-L.1367:
-la $20,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mul $20,$20,$24
-la $24,10
-beq $20,$24,L.1371
-la $23,164
-beq $30,$0,L.1373
-la $4,L.687
-move $5,$23
-jal printf
-L.1373:
-L.1371:
-la $20,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mul $20,$20,$24
-la $24,10
-beq $20,$24,L.1375
-la $23,165
-beq $30,$0,L.1377
-la $4,L.687
-move $5,$23
-jal printf
-L.1377:
-L.1375:
-la $20,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$20
-lw $15,-12+160($sp)
-mul $24,$24,$15
-move $20,$24
-la $24,10
-beq $20,$24,L.1379
-la $23,166
-beq $30,$0,L.1381
-la $4,L.687
-move $5,$23
-jal printf
-L.1381:
-L.1379:
-la $20,5
-l.s $f26,L.529
-mtc1 $20,$f18; cvt.s.w $f18,$f18
-mul.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$20; mfc1 $20,$f2
-la $24,10
-beq $20,$24,L.1383
-la $23,167
-beq $30,$0,L.1385
-la $4,L.687
-move $5,$23
-jal printf
-L.1385:
-L.1383:
-la $20,5
-l.d $f24,L.416
-mtc1 $20,$f18; cvt.d.w $f18,$f18
-mul.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$20; mfc1 $20,$f2
-la $24,10
-beq $20,$24,L.1387
-la $23,168
-beq $30,$0,L.1389
-la $4,L.687
-move $5,$23
-jal printf
-L.1389:
-L.1387:
-la $19,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mul $19,$19,$24
-la $24,10
-beq $19,$24,L.1391
-la $23,169
-beq $30,$0,L.1393
-la $4,L.687
-move $5,$23
-jal printf
-L.1393:
-L.1391:
-la $19,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mul $19,$19,$24
-la $24,10
-beq $19,$24,L.1395
-la $23,170
-beq $30,$0,L.1397
-la $4,L.687
-move $5,$23
-jal printf
-L.1397:
-L.1395:
-la $19,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mul $19,$19,$24
-la $24,10
-beq $19,$24,L.1399
-la $23,171
-beq $30,$0,L.1401
-la $4,L.687
-move $5,$23
-jal printf
-L.1401:
-L.1399:
-la $19,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mul $19,$19,$24
-la $24,10
-beq $19,$24,L.1403
-la $23,172
-beq $30,$0,L.1405
-la $4,L.687
-move $5,$23
-jal printf
-L.1405:
-L.1403:
-la $19,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$19
-lw $15,-12+160($sp)
-mul $24,$24,$15
-move $19,$24
-la $24,10
-beq $19,$24,L.1407
-la $23,173
-beq $30,$0,L.1409
-la $4,L.687
-move $5,$23
-jal printf
-L.1409:
-L.1407:
-la $19,5
-l.s $f26,L.529
-mtc1 $19,$f18; cvt.s.w $f18,$f18
-mul.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$19; mfc1 $19,$f2
-la $24,10
-beq $19,$24,L.1411
-la $23,174
-beq $30,$0,L.1413
-la $4,L.687
-move $5,$23
-jal printf
-L.1413:
-L.1411:
-la $19,5
-l.d $f24,L.416
-mtc1 $19,$f18; cvt.d.w $f18,$f18
-mul.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$19; mfc1 $19,$f2
-la $24,10
-beq $19,$24,L.1415
-la $23,175
-beq $30,$0,L.1417
-la $4,L.687
-move $5,$23
-jal printf
-L.1417:
-L.1415:
-la $18,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mul $18,$18,$24
-la $24,10
-beq $18,$24,L.1419
-la $23,176
-beq $30,$0,L.1421
-la $4,L.687
-move $5,$23
-jal printf
-L.1421:
-L.1419:
-la $18,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mul $18,$18,$24
-la $24,10
-beq $18,$24,L.1423
-la $23,177
-beq $30,$0,L.1425
-la $4,L.687
-move $5,$23
-jal printf
-L.1425:
-L.1423:
-la $18,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mul $18,$18,$24
-la $24,10
-beq $18,$24,L.1427
-la $23,178
-beq $30,$0,L.1429
-la $4,L.687
-move $5,$23
-jal printf
-L.1429:
-L.1427:
-la $18,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mul $18,$18,$24
-la $24,10
-beq $18,$24,L.1431
-la $23,179
-beq $30,$0,L.1433
-la $4,L.687
-move $5,$23
-jal printf
-L.1433:
-L.1431:
-la $18,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-mul $18,$18,$24
-la $24,10
-beq $18,$24,L.1435
-la $23,180
-beq $30,$0,L.1437
-la $4,L.687
-move $5,$23
-jal printf
-L.1437:
-L.1435:
-la $18,5
-l.s $f26,L.529
-l.d $f18,L.596
-srl $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-mul.s $f18,$f18,$f26
-l.s $f16,L.828
-c.lt.s $f18,$f16; bc1t L.1440
-sub.s $f16,$f18,$f16
-trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-52+160($sp)
-b L.1441
-L.1440:
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-52+160($sp)
-L.1441:
-lw $18,-52+160($sp)
-la $24,10
-beq $18,$24,L.1442
-la $23,181
-beq $30,$0,L.1444
-la $4,L.687
-move $5,$23
-jal printf
-L.1444:
-L.1442:
-la $18,5
-l.d $f24,L.416
-l.d $f18,L.596
-srl $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-mul.d $f18,$f18,$f24
-l.d $f16,L.836
-c.lt.d $f18,$f16; bc1t L.1447
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-56+160($sp)
-b L.1448
-L.1447:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-56+160($sp)
-L.1448:
-lw $18,-56+160($sp)
-la $24,10
-beq $18,$24,L.1449
-la $23,182
-beq $30,$0,L.1451
-la $4,L.687
-move $5,$23
-jal printf
-L.1451:
-L.1449:
-l.s $f30,L.841
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-mul.s $f30,$f30,$f18
-l.s $f18,L.1455
-c.eq.s $f30,$f18; bc1t L.1453
-la $23,183
-beq $30,$0,L.1456
-la $4,L.687
-move $5,$23
-jal printf
-L.1456:
-L.1453:
-l.s $f30,L.841
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-mul.s $f30,$f30,$f18
-l.s $f18,L.1455
-c.eq.s $f30,$f18; bc1t L.1458
-la $23,184
-beq $30,$0,L.1460
-la $4,L.687
-move $5,$23
-jal printf
-L.1460:
-L.1458:
-l.s $f30,L.841
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-mul.s $f30,$f30,$f18
-l.s $f18,L.1455
-c.eq.s $f30,$f18; bc1t L.1462
-la $23,185
-beq $30,$0,L.1464
-la $4,L.687
-move $5,$23
-jal printf
-L.1464:
-L.1462:
-l.s $f30,L.841
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-mul.s $f30,$f30,$f18
-l.s $f18,L.1455
-c.eq.s $f30,$f18; bc1t L.1466
-la $23,186
-beq $30,$0,L.1468
-la $4,L.687
-move $5,$23
-jal printf
-L.1468:
-L.1466:
-l.s $f30,L.841
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-mul.s $f30,$f30,$f18
-l.s $f18,L.1455
-c.eq.s $f30,$f18; bc1t L.1470
-la $23,187
-beq $30,$0,L.1472
-la $4,L.687
-move $5,$23
-jal printf
-L.1472:
-L.1470:
-l.s $f30,L.841
-l.s $f26,L.529
-mul.s $f30,$f30,$f26
-l.s $f18,L.1455
-c.eq.s $f30,$f18; bc1t L.1474
-la $23,188
-beq $30,$0,L.1476
-la $4,L.687
-move $5,$23
-jal printf
-L.1476:
-L.1474:
-l.s $f30,L.841
-l.d $f24,L.416
-cvt.d.s $f18,$f30
-mul.d $f18,$f18,$f24
-cvt.s.d $f30,$f18
-l.s $f18,L.1455
-c.eq.s $f30,$f18; bc1t L.1478
-la $23,189
-beq $30,$0,L.1480
-la $4,L.687
-move $5,$23
-jal printf
-L.1480:
-L.1478:
-l.d $f28,L.870
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-mul.d $f28,$f28,$f18
-l.d $f18,L.1484
-c.eq.d $f28,$f18; bc1t L.1482
-la $23,190
-beq $30,$0,L.1485
-la $4,L.687
-move $5,$23
-jal printf
-L.1485:
-L.1482:
-l.d $f28,L.870
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-mul.d $f28,$f28,$f18
-l.d $f18,L.1484
-c.eq.d $f28,$f18; bc1t L.1487
-la $23,191
-beq $30,$0,L.1489
-la $4,L.687
-move $5,$23
-jal printf
-L.1489:
-L.1487:
-l.d $f28,L.870
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-mul.d $f28,$f28,$f18
-l.d $f18,L.1484
-c.eq.d $f28,$f18; bc1t L.1491
-la $23,192
-beq $30,$0,L.1493
-la $4,L.687
-move $5,$23
-jal printf
-L.1493:
-L.1491:
-l.d $f28,L.870
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-mul.d $f28,$f28,$f18
-l.d $f18,L.1484
-c.eq.d $f28,$f18; bc1t L.1495
-la $23,193
-beq $30,$0,L.1497
-la $4,L.687
-move $5,$23
-jal printf
-L.1497:
-L.1495:
-l.d $f28,L.870
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-mul.d $f28,$f28,$f18
-l.d $f18,L.1484
-c.eq.d $f28,$f18; bc1t L.1499
-la $23,194
-beq $30,$0,L.1501
-la $4,L.687
-move $5,$23
-jal printf
-L.1501:
-L.1499:
-l.d $f28,L.870
-l.s $f26,L.529
-cvt.d.s $f18,$f26
-mul.d $f28,$f28,$f18
-l.d $f18,L.1484
-c.eq.d $f28,$f18; bc1t L.1503
-la $23,195
-beq $30,$0,L.1505
-la $4,L.687
-move $5,$23
-jal printf
-L.1505:
-L.1503:
-l.d $f28,L.870
-l.d $f24,L.416
-mul.d $f28,$f28,$f24
-l.d $f18,L.1484
-c.eq.d $f28,$f18; bc1t L.1507
-la $23,196
-beq $30,$0,L.1509
-la $4,L.687
-move $5,$23
-jal printf
-L.1509:
-L.1507:
-la $22,5
-la $17,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-div $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.1511
-la $23,197
-beq $30,$0,L.1513
-la $4,L.687
-move $5,$23
-jal printf
-L.1513:
-L.1511:
-la $22,5
-la $16,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-div $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.1515
-la $23,198
-beq $30,$0,L.1517
-la $4,L.687
-move $5,$23
-jal printf
-L.1517:
-L.1515:
-la $22,5
-la $24,2
-sw $24,-4+160($sp)
-sll $15,$22,8*(4-1); sra $15,$15,8*(4-1)
-lw $14,-4+160($sp)
-div $15,$15,$14
-move $22,$15
-sll $15,$22,8*(4-1); sra $15,$15,8*(4-1)
-beq $15,$24,L.1519
-la $23,199
-beq $30,$0,L.1521
-la $4,L.687
-move $5,$23
-jal printf
-L.1521:
-L.1519:
-la $22,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-div $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.1523
-la $23,200
-beq $30,$0,L.1525
-la $4,L.687
-move $5,$23
-jal printf
-L.1525:
-L.1523:
-la $22,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-divu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.1527
-la $23,201
-beq $30,$0,L.1529
-la $4,L.687
-move $5,$23
-jal printf
-L.1529:
-L.1527:
-la $22,5
-l.s $f26,L.529
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-div.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.1531
-la $23,202
-beq $30,$0,L.1533
-la $4,L.687
-move $5,$23
-jal printf
-L.1533:
-L.1531:
-la $22,5
-l.d $f24,L.416
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-div.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,2
-beq $24,$15,L.1535
-la $23,203
-beq $30,$0,L.1537
-la $4,L.687
-move $5,$23
-jal printf
-L.1537:
-L.1535:
-la $21,5
-la $17,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-div $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.1539
-la $23,204
-beq $30,$0,L.1541
-la $4,L.687
-move $5,$23
-jal printf
-L.1541:
-L.1539:
-la $21,5
-la $16,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-div $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.1543
-la $23,205
-beq $30,$0,L.1545
-la $4,L.687
-move $5,$23
-jal printf
-L.1545:
-L.1543:
-la $21,5
-la $24,2
-sw $24,-4+160($sp)
-sll $15,$21,8*(4-2); sra $15,$15,8*(4-2)
-lw $14,-4+160($sp)
-div $15,$15,$14
-move $21,$15
-sll $15,$21,8*(4-2); sra $15,$15,8*(4-2)
-beq $15,$24,L.1547
-la $23,206
-beq $30,$0,L.1549
-la $4,L.687
-move $5,$23
-jal printf
-L.1549:
-L.1547:
-la $21,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-div $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.1551
-la $23,207
-beq $30,$0,L.1553
-la $4,L.687
-move $5,$23
-jal printf
-L.1553:
-L.1551:
-la $21,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-divu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.1555
-la $23,208
-beq $30,$0,L.1557
-la $4,L.687
-move $5,$23
-jal printf
-L.1557:
-L.1555:
-la $21,5
-l.s $f26,L.529
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-div.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.1559
-la $23,209
-beq $30,$0,L.1561
-la $4,L.687
-move $5,$23
-jal printf
-L.1561:
-L.1559:
-la $21,5
-l.d $f24,L.416
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-div.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,2
-beq $24,$15,L.1563
-la $23,210
-beq $30,$0,L.1565
-la $4,L.687
-move $5,$23
-jal printf
-L.1565:
-L.1563:
-la $20,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-div $20,$20,$24
-la $24,2
-beq $20,$24,L.1567
-la $23,211
-beq $30,$0,L.1569
-la $4,L.687
-move $5,$23
-jal printf
-L.1569:
-L.1567:
-la $20,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-div $20,$20,$24
-la $24,2
-beq $20,$24,L.1571
-la $23,212
-beq $30,$0,L.1573
-la $4,L.687
-move $5,$23
-jal printf
-L.1573:
-L.1571:
-la $20,5
-la $24,2
-sw $24,-4+160($sp)
-lw $15,-4+160($sp)
-div $20,$20,$15
-beq $20,$24,L.1575
-la $23,213
-beq $30,$0,L.1577
-la $4,L.687
-move $5,$23
-jal printf
-L.1577:
-L.1575:
-la $20,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-div $20,$20,$24
-la $24,2
-beq $20,$24,L.1579
-la $23,214
-beq $30,$0,L.1581
-la $4,L.687
-move $5,$23
-jal printf
-L.1581:
-L.1579:
-la $20,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$20
-lw $15,-12+160($sp)
-divu $24,$24,$15
-move $20,$24
-la $24,2
-beq $20,$24,L.1583
-la $23,215
-beq $30,$0,L.1585
-la $4,L.687
-move $5,$23
-jal printf
-L.1585:
-L.1583:
-la $20,5
-l.s $f26,L.529
-mtc1 $20,$f18; cvt.s.w $f18,$f18
-div.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$20; mfc1 $20,$f2
-la $24,2
-beq $20,$24,L.1587
-la $23,216
-beq $30,$0,L.1589
-la $4,L.687
-move $5,$23
-jal printf
-L.1589:
-L.1587:
-la $20,5
-l.d $f24,L.416
-mtc1 $20,$f18; cvt.d.w $f18,$f18
-div.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$20; mfc1 $20,$f2
-la $24,2
-beq $20,$24,L.1591
-la $23,217
-beq $30,$0,L.1593
-la $4,L.687
-move $5,$23
-jal printf
-L.1593:
-L.1591:
-la $19,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-div $19,$19,$24
-la $24,2
-beq $19,$24,L.1595
-la $23,218
-beq $30,$0,L.1597
-la $4,L.687
-move $5,$23
-jal printf
-L.1597:
-L.1595:
-la $19,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-div $19,$19,$24
-la $24,2
-beq $19,$24,L.1599
-la $23,219
-beq $30,$0,L.1601
-la $4,L.687
-move $5,$23
-jal printf
-L.1601:
-L.1599:
-la $19,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-div $19,$19,$24
-la $24,2
-beq $19,$24,L.1603
-la $23,220
-beq $30,$0,L.1605
-la $4,L.687
-move $5,$23
-jal printf
-L.1605:
-L.1603:
-la $19,5
-la $24,2
-sw $24,-8+160($sp)
-lw $15,-8+160($sp)
-div $19,$19,$15
-beq $19,$24,L.1607
-la $23,221
-beq $30,$0,L.1609
-la $4,L.687
-move $5,$23
-jal printf
-L.1609:
-L.1607:
-la $19,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$19
-lw $15,-12+160($sp)
-divu $24,$24,$15
-move $19,$24
-la $24,2
-beq $19,$24,L.1611
-la $23,222
-beq $30,$0,L.1613
-la $4,L.687
-move $5,$23
-jal printf
-L.1613:
-L.1611:
-la $19,5
-l.s $f26,L.529
-mtc1 $19,$f18; cvt.s.w $f18,$f18
-div.s $f18,$f18,$f26
-trunc.w.s $f2,$f18,$19; mfc1 $19,$f2
-la $24,2
-beq $19,$24,L.1615
-la $23,223
-beq $30,$0,L.1617
-la $4,L.687
-move $5,$23
-jal printf
-L.1617:
-L.1615:
-la $19,5
-l.d $f24,L.416
-mtc1 $19,$f18; cvt.d.w $f18,$f18
-div.d $f18,$f18,$f24
-trunc.w.d $f2,$f18,$19; mfc1 $19,$f2
-la $24,2
-beq $19,$24,L.1619
-la $23,224
-beq $30,$0,L.1621
-la $4,L.687
-move $5,$23
-jal printf
-L.1621:
-L.1619:
-la $18,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-divu $18,$18,$24
-la $24,2
-beq $18,$24,L.1623
-la $23,225
-beq $30,$0,L.1625
-la $4,L.687
-move $5,$23
-jal printf
-L.1625:
-L.1623:
-la $18,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-divu $18,$18,$24
-la $24,2
-beq $18,$24,L.1627
-la $23,226
-beq $30,$0,L.1629
-la $4,L.687
-move $5,$23
-jal printf
-L.1629:
-L.1627:
-la $18,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-divu $18,$18,$24
-la $24,2
-beq $18,$24,L.1631
-la $23,227
-beq $30,$0,L.1633
-la $4,L.687
-move $5,$23
-jal printf
-L.1633:
-L.1631:
-la $18,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-divu $18,$18,$24
-la $24,2
-beq $18,$24,L.1635
-la $23,228
-beq $30,$0,L.1637
-la $4,L.687
-move $5,$23
-jal printf
-L.1637:
-L.1635:
-la $18,5
-la $24,2
-sw $24,-12+160($sp)
-lw $15,-12+160($sp)
-divu $18,$18,$15
-beq $18,$24,L.1639
-la $23,229
-beq $30,$0,L.1641
-la $4,L.687
-move $5,$23
-jal printf
-L.1641:
-L.1639:
-la $18,5
-l.s $f26,L.529
-l.d $f18,L.596
-srl $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-div.s $f18,$f18,$f26
-l.s $f16,L.828
-c.lt.s $f18,$f16; bc1t L.1644
-sub.s $f16,$f18,$f16
-trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-60+160($sp)
-b L.1645
-L.1644:
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-60+160($sp)
-L.1645:
-lw $18,-60+160($sp)
-la $24,2
-beq $18,$24,L.1646
-la $23,230
-beq $30,$0,L.1648
-la $4,L.687
-move $5,$23
-jal printf
-L.1648:
-L.1646:
-la $18,5
-l.d $f24,L.416
-l.d $f18,L.596
-srl $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$18,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-div.d $f18,$f18,$f24
-l.d $f16,L.836
-c.lt.d $f18,$f16; bc1t L.1651
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-64+160($sp)
-b L.1652
-L.1651:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-64+160($sp)
-L.1652:
-lw $18,-64+160($sp)
-la $24,2
-beq $18,$24,L.1653
-la $23,231
-beq $30,$0,L.1655
-la $4,L.687
-move $5,$23
-jal printf
-L.1655:
-L.1653:
-l.s $f30,L.841
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-div.s $f30,$f30,$f18
-cvt.d.s $f18,$f30
-l.d $f16,L.1659
-c.eq.d $f18,$f16; bc1t L.1657
-la $23,232
-beq $30,$0,L.1660
-la $4,L.687
-move $5,$23
-jal printf
-L.1660:
-L.1657:
-l.s $f30,L.841
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-div.s $f30,$f30,$f18
-cvt.d.s $f18,$f30
-l.d $f16,L.1659
-c.eq.d $f18,$f16; bc1t L.1662
-la $23,233
-beq $30,$0,L.1664
-la $4,L.687
-move $5,$23
-jal printf
-L.1664:
-L.1662:
-l.s $f30,L.841
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-div.s $f30,$f30,$f18
-cvt.d.s $f18,$f30
-l.d $f16,L.1659
-c.eq.d $f18,$f16; bc1t L.1666
-la $23,234
-beq $30,$0,L.1668
-la $4,L.687
-move $5,$23
-jal printf
-L.1668:
-L.1666:
-l.s $f30,L.841
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-div.s $f30,$f30,$f18
-cvt.d.s $f18,$f30
-l.d $f16,L.1659
-c.eq.d $f18,$f16; bc1t L.1670
-la $23,235
-beq $30,$0,L.1672
-la $4,L.687
-move $5,$23
-jal printf
-L.1672:
-L.1670:
-l.s $f30,L.841
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f18,$f18
-div.s $f30,$f30,$f18
-cvt.d.s $f18,$f30
-l.d $f16,L.1659
-c.eq.d $f18,$f16; bc1t L.1674
-la $23,236
-beq $30,$0,L.1676
-la $4,L.687
-move $5,$23
-jal printf
-L.1676:
-L.1674:
-l.s $f30,L.841
-l.s $f26,L.529
-div.s $f30,$f30,$f26
-cvt.d.s $f18,$f30
-l.d $f16,L.1659
-c.eq.d $f18,$f16; bc1t L.1678
-la $23,237
-beq $30,$0,L.1680
-la $4,L.687
-move $5,$23
-jal printf
-L.1680:
-L.1678:
-l.s $f30,L.841
-l.d $f24,L.416
-cvt.d.s $f18,$f30
-div.d $f18,$f18,$f24
-cvt.s.d $f30,$f18
-cvt.d.s $f18,$f30
-l.d $f16,L.1659
-c.eq.d $f18,$f16; bc1t L.1682
-la $23,238
-beq $30,$0,L.1684
-la $4,L.687
-move $5,$23
-jal printf
-L.1684:
-L.1682:
-l.d $f28,L.870
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-div.d $f28,$f28,$f18
-l.d $f18,L.1659
-c.eq.d $f28,$f18; bc1t L.1686
-la $23,239
-beq $30,$0,L.1688
-la $4,L.687
-move $5,$23
-jal printf
-L.1688:
-L.1686:
-l.d $f28,L.870
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-div.d $f28,$f28,$f18
-l.d $f18,L.1659
-c.eq.d $f28,$f18; bc1t L.1690
-la $23,240
-beq $30,$0,L.1692
-la $4,L.687
-move $5,$23
-jal printf
-L.1692:
-L.1690:
-l.d $f28,L.870
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-div.d $f28,$f28,$f18
-l.d $f18,L.1659
-c.eq.d $f28,$f18; bc1t L.1694
-la $23,241
-beq $30,$0,L.1696
-la $4,L.687
-move $5,$23
-jal printf
-L.1696:
-L.1694:
-l.d $f28,L.870
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-div.d $f28,$f28,$f18
-l.d $f18,L.1659
-c.eq.d $f28,$f18; bc1t L.1698
-la $23,242
-beq $30,$0,L.1700
-la $4,L.687
-move $5,$23
-jal printf
-L.1700:
-L.1698:
-l.d $f28,L.870
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-l.d $f18,L.596
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-div.d $f28,$f28,$f18
-l.d $f18,L.1659
-c.eq.d $f28,$f18; bc1t L.1702
-la $23,243
-beq $30,$0,L.1704
-la $4,L.687
-move $5,$23
-jal printf
-L.1704:
-L.1702:
-l.d $f28,L.870
-l.s $f26,L.529
-cvt.d.s $f18,$f26
-div.d $f28,$f28,$f18
-l.d $f18,L.1659
-c.eq.d $f28,$f18; bc1t L.1706
-la $23,244
-beq $30,$0,L.1708
-la $4,L.687
-move $5,$23
-jal printf
-L.1708:
-L.1706:
-l.d $f28,L.870
-l.d $f24,L.416
-div.d $f28,$f28,$f24
-l.d $f18,L.1659
-c.eq.d $f28,$f18; bc1t L.1710
-la $23,245
-beq $30,$0,L.1712
-la $4,L.687
-move $5,$23
-jal printf
-L.1712:
-L.1710:
-la $22,5
-la $17,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-rem $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1714
-la $23,246
-beq $30,$0,L.1716
-la $4,L.687
-move $5,$23
-jal printf
-L.1716:
-L.1714:
-la $22,5
-la $16,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-rem $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1718
-la $23,247
-beq $30,$0,L.1720
-la $4,L.687
-move $5,$23
-jal printf
-L.1720:
-L.1718:
-la $22,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-4+160($sp)
-rem $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1722
-la $23,248
-beq $30,$0,L.1724
-la $4,L.687
-move $5,$23
-jal printf
-L.1724:
-L.1722:
-la $22,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-rem $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1726
-la $23,249
-beq $30,$0,L.1728
-la $4,L.687
-move $5,$23
-jal printf
-L.1728:
-L.1726:
-la $22,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-remu $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1730
-la $23,250
-beq $30,$0,L.1732
-la $4,L.687
-move $5,$23
-jal printf
-L.1732:
-L.1730:
-la $21,5
-la $17,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-rem $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1734
-la $23,251
-beq $30,$0,L.1736
-la $4,L.687
-move $5,$23
-jal printf
-L.1736:
-L.1734:
-la $21,5
-la $16,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-rem $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1738
-la $23,252
-beq $30,$0,L.1740
-la $4,L.687
-move $5,$23
-jal printf
-L.1740:
-L.1738:
-la $21,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-4+160($sp)
-rem $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1742
-la $23,253
-beq $30,$0,L.1744
-la $4,L.687
-move $5,$23
-jal printf
-L.1744:
-L.1742:
-la $21,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-rem $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1746
-la $23,254
-beq $30,$0,L.1748
-la $4,L.687
-move $5,$23
-jal printf
-L.1748:
-L.1746:
-la $21,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-remu $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1750
-la $23,255
-beq $30,$0,L.1752
-la $4,L.687
-move $5,$23
-jal printf
-L.1752:
-L.1750:
-la $20,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-rem $20,$20,$24
-la $24,1
-beq $20,$24,L.1754
-la $23,256
-beq $30,$0,L.1756
-la $4,L.687
-move $5,$23
-jal printf
-L.1756:
-L.1754:
-la $20,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-rem $20,$20,$24
-la $24,1
-beq $20,$24,L.1758
-la $23,257
-beq $30,$0,L.1760
-la $4,L.687
-move $5,$23
-jal printf
-L.1760:
-L.1758:
-la $20,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-rem $20,$20,$24
-la $24,1
-beq $20,$24,L.1762
-la $23,258
-beq $30,$0,L.1764
-la $4,L.687
-move $5,$23
-jal printf
-L.1764:
-L.1762:
-la $20,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-rem $20,$20,$24
-la $24,1
-beq $20,$24,L.1766
-la $23,259
-beq $30,$0,L.1768
-la $4,L.687
-move $5,$23
-jal printf
-L.1768:
-L.1766:
-la $20,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$20
-lw $15,-12+160($sp)
-remu $24,$24,$15
-move $20,$24
-la $24,1
-beq $20,$24,L.1770
-la $23,260
-beq $30,$0,L.1772
-la $4,L.687
-move $5,$23
-jal printf
-L.1772:
-L.1770:
-la $19,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-rem $19,$19,$24
-la $24,1
-beq $19,$24,L.1774
-la $23,261
-beq $30,$0,L.1776
-la $4,L.687
-move $5,$23
-jal printf
-L.1776:
-L.1774:
-la $19,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-rem $19,$19,$24
-la $24,1
-beq $19,$24,L.1778
-la $23,262
-beq $30,$0,L.1780
-la $4,L.687
-move $5,$23
-jal printf
-L.1780:
-L.1778:
-la $19,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-rem $19,$19,$24
-la $24,1
-beq $19,$24,L.1782
-la $23,263
-beq $30,$0,L.1784
-la $4,L.687
-move $5,$23
-jal printf
-L.1784:
-L.1782:
-la $19,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-rem $19,$19,$24
-la $24,1
-beq $19,$24,L.1786
-la $23,264
-beq $30,$0,L.1788
-la $4,L.687
-move $5,$23
-jal printf
-L.1788:
-L.1786:
-la $19,5
-la $24,2
-sw $24,-12+160($sp)
-move $24,$19
-lw $15,-12+160($sp)
-remu $24,$24,$15
-move $19,$24
-la $24,1
-beq $19,$24,L.1790
-la $23,265
-beq $30,$0,L.1792
-la $4,L.687
-move $5,$23
-jal printf
-L.1792:
-L.1790:
-la $18,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-remu $18,$18,$24
-la $24,1
-beq $18,$24,L.1794
-la $23,266
-beq $30,$0,L.1796
-la $4,L.687
-move $5,$23
-jal printf
-L.1796:
-L.1794:
-la $18,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-remu $18,$18,$24
-la $24,1
-beq $18,$24,L.1798
-la $23,267
-beq $30,$0,L.1800
-la $4,L.687
-move $5,$23
-jal printf
-L.1800:
-L.1798:
-la $18,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-remu $18,$18,$24
-la $24,1
-beq $18,$24,L.1802
-la $23,268
-beq $30,$0,L.1804
-la $4,L.687
-move $5,$23
-jal printf
-L.1804:
-L.1802:
-la $18,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-remu $18,$18,$24
-la $24,1
-beq $18,$24,L.1806
-la $23,269
-beq $30,$0,L.1808
-la $4,L.687
-move $5,$23
-jal printf
-L.1808:
-L.1806:
-la $18,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-remu $18,$18,$24
-la $24,1
-beq $18,$24,L.1810
-la $23,270
-beq $30,$0,L.1812
-la $4,L.687
-move $5,$23
-jal printf
-L.1812:
-L.1810:
-la $22,5
-la $17,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-sra $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1814
-la $23,271
-beq $30,$0,L.1816
-la $4,L.687
-move $5,$23
-jal printf
-L.1816:
-L.1814:
-la $22,5
-la $16,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-sra $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1818
-la $23,272
-beq $30,$0,L.1820
-la $4,L.687
-move $5,$23
-jal printf
-L.1820:
-L.1818:
-la $22,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-4+160($sp)
-sra $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1822
-la $23,273
-beq $30,$0,L.1824
-la $4,L.687
-move $5,$23
-jal printf
-L.1824:
-L.1822:
-la $22,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-sra $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1826
-la $23,274
-beq $30,$0,L.1828
-la $4,L.687
-move $5,$23
-jal printf
-L.1828:
-L.1826:
-la $22,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-sra $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,1
-beq $24,$15,L.1830
-la $23,275
-beq $30,$0,L.1832
-la $4,L.687
-move $5,$23
-jal printf
-L.1832:
-L.1830:
-la $21,5
-la $17,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-sra $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1834
-la $23,276
-beq $30,$0,L.1836
-la $4,L.687
-move $5,$23
-jal printf
-L.1836:
-L.1834:
-la $21,5
-la $16,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-sra $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1838
-la $23,277
-beq $30,$0,L.1840
-la $4,L.687
-move $5,$23
-jal printf
-L.1840:
-L.1838:
-la $21,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-4+160($sp)
-sra $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1842
-la $23,278
-beq $30,$0,L.1844
-la $4,L.687
-move $5,$23
-jal printf
-L.1844:
-L.1842:
-la $21,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-sra $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1846
-la $23,279
-beq $30,$0,L.1848
-la $4,L.687
-move $5,$23
-jal printf
-L.1848:
-L.1846:
-la $21,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-sra $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,1
-beq $24,$15,L.1850
-la $23,280
-beq $30,$0,L.1852
-la $4,L.687
-move $5,$23
-jal printf
-L.1852:
-L.1850:
-la $20,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-sra $20,$20,$24
-la $24,1
-beq $20,$24,L.1854
-la $23,281
-beq $30,$0,L.1856
-la $4,L.687
-move $5,$23
-jal printf
-L.1856:
-L.1854:
-la $20,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-sra $20,$20,$24
-la $24,1
-beq $20,$24,L.1858
-la $23,282
-beq $30,$0,L.1860
-la $4,L.687
-move $5,$23
-jal printf
-L.1860:
-L.1858:
-la $20,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-sra $20,$20,$24
-la $24,1
-beq $20,$24,L.1862
-la $23,283
-beq $30,$0,L.1864
-la $4,L.687
-move $5,$23
-jal printf
-L.1864:
-L.1862:
-la $20,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-sra $20,$20,$24
-la $24,1
-beq $20,$24,L.1866
-la $23,284
-beq $30,$0,L.1868
-la $4,L.687
-move $5,$23
-jal printf
-L.1868:
-L.1866:
-la $20,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-sra $20,$20,$24
-la $24,1
-beq $20,$24,L.1870
-la $23,285
-beq $30,$0,L.1872
-la $4,L.687
-move $5,$23
-jal printf
-L.1872:
-L.1870:
-la $19,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-sra $19,$19,$24
-la $24,1
-beq $19,$24,L.1874
-la $23,286
-beq $30,$0,L.1876
-la $4,L.687
-move $5,$23
-jal printf
-L.1876:
-L.1874:
-la $19,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-sra $19,$19,$24
-la $24,1
-beq $19,$24,L.1878
-la $23,287
-beq $30,$0,L.1880
-la $4,L.687
-move $5,$23
-jal printf
-L.1880:
-L.1878:
-la $19,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-sra $19,$19,$24
-la $24,1
-beq $19,$24,L.1882
-la $23,288
-beq $30,$0,L.1884
-la $4,L.687
-move $5,$23
-jal printf
-L.1884:
-L.1882:
-la $19,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-sra $19,$19,$24
-la $24,1
-beq $19,$24,L.1886
-la $23,289
-beq $30,$0,L.1888
-la $4,L.687
-move $5,$23
-jal printf
-L.1888:
-L.1886:
-la $19,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-sra $19,$19,$24
-la $24,1
-beq $19,$24,L.1890
-la $23,290
-beq $30,$0,L.1892
-la $4,L.687
-move $5,$23
-jal printf
-L.1892:
-L.1890:
-la $18,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-srl $18,$18,$24
-la $24,1
-beq $18,$24,L.1894
-la $23,291
-beq $30,$0,L.1896
-la $4,L.687
-move $5,$23
-jal printf
-L.1896:
-L.1894:
-la $18,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-srl $18,$18,$24
-la $24,1
-beq $18,$24,L.1898
-la $23,292
-beq $30,$0,L.1900
-la $4,L.687
-move $5,$23
-jal printf
-L.1900:
-L.1898:
-la $18,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-srl $18,$18,$24
-la $24,1
-beq $18,$24,L.1902
-la $23,293
-beq $30,$0,L.1904
-la $4,L.687
-move $5,$23
-jal printf
-L.1904:
-L.1902:
-la $18,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-srl $18,$18,$24
-la $24,1
-beq $18,$24,L.1906
-la $23,294
-beq $30,$0,L.1908
-la $4,L.687
-move $5,$23
-jal printf
-L.1908:
-L.1906:
-la $18,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-srl $18,$18,$24
-la $24,1
-beq $18,$24,L.1910
-la $23,295
-beq $30,$0,L.1912
-la $4,L.687
-move $5,$23
-jal printf
-L.1912:
-L.1910:
-la $22,5
-la $17,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-sll $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,20
-beq $24,$15,L.1914
-la $23,296
-beq $30,$0,L.1916
-la $4,L.687
-move $5,$23
-jal printf
-L.1916:
-L.1914:
-la $22,5
-la $16,2
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-sll $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,20
-beq $24,$15,L.1918
-la $23,297
-beq $30,$0,L.1920
-la $4,L.687
-move $5,$23
-jal printf
-L.1920:
-L.1918:
-la $22,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-4+160($sp)
-sll $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,20
-beq $24,$15,L.1922
-la $23,298
-beq $30,$0,L.1924
-la $4,L.687
-move $5,$23
-jal printf
-L.1924:
-L.1922:
-la $22,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-sll $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,20
-beq $24,$15,L.1926
-la $23,299
-beq $30,$0,L.1928
-la $4,L.687
-move $5,$23
-jal printf
-L.1928:
-L.1926:
-la $22,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-sll $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,20
-beq $24,$15,L.1930
-la $23,300
-beq $30,$0,L.1932
-la $4,L.687
-move $5,$23
-jal printf
-L.1932:
-L.1930:
-la $21,5
-la $17,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-sll $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,20
-beq $24,$15,L.1934
-la $23,301
-beq $30,$0,L.1936
-la $4,L.687
-move $5,$23
-jal printf
-L.1936:
-L.1934:
-la $21,5
-la $16,2
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-sll $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,20
-beq $24,$15,L.1938
-la $23,302
-beq $30,$0,L.1940
-la $4,L.687
-move $5,$23
-jal printf
-L.1940:
-L.1938:
-la $21,5
-la $24,2
-sw $24,-4+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-4+160($sp)
-sll $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,20
-beq $24,$15,L.1942
-la $23,303
-beq $30,$0,L.1944
-la $4,L.687
-move $5,$23
-jal printf
-L.1944:
-L.1942:
-la $21,5
-la $24,2
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-sll $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,20
-beq $24,$15,L.1946
-la $23,304
-beq $30,$0,L.1948
-la $4,L.687
-move $5,$23
-jal printf
-L.1948:
-L.1946:
-la $21,5
-la $24,2
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-sll $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,20
-beq $24,$15,L.1950
-la $23,305
-beq $30,$0,L.1952
-la $4,L.687
-move $5,$23
-jal printf
-L.1952:
-L.1950:
-la $20,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-sll $20,$20,$24
-la $24,20
-beq $20,$24,L.1954
-la $23,306
-beq $30,$0,L.1956
-la $4,L.687
-move $5,$23
-jal printf
-L.1956:
-L.1954:
-la $20,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-sll $20,$20,$24
-la $24,20
-beq $20,$24,L.1958
-la $23,307
-beq $30,$0,L.1960
-la $4,L.687
-move $5,$23
-jal printf
-L.1960:
-L.1958:
-la $20,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-sll $20,$20,$24
-la $24,20
-beq $20,$24,L.1962
-la $23,308
-beq $30,$0,L.1964
-la $4,L.687
-move $5,$23
-jal printf
-L.1964:
-L.1962:
-la $20,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-sll $20,$20,$24
-la $24,20
-beq $20,$24,L.1966
-la $23,309
-beq $30,$0,L.1968
-la $4,L.687
-move $5,$23
-jal printf
-L.1968:
-L.1966:
-la $20,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-sll $20,$20,$24
-la $24,20
-beq $20,$24,L.1970
-la $23,310
-beq $30,$0,L.1972
-la $4,L.687
-move $5,$23
-jal printf
-L.1972:
-L.1970:
-la $19,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-sll $19,$19,$24
-la $24,20
-beq $19,$24,L.1974
-la $23,311
-beq $30,$0,L.1976
-la $4,L.687
-move $5,$23
-jal printf
-L.1976:
-L.1974:
-la $19,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-sll $19,$19,$24
-la $24,20
-beq $19,$24,L.1978
-la $23,312
-beq $30,$0,L.1980
-la $4,L.687
-move $5,$23
-jal printf
-L.1980:
-L.1978:
-la $19,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-sll $19,$19,$24
-la $24,20
-beq $19,$24,L.1982
-la $23,313
-beq $30,$0,L.1984
-la $4,L.687
-move $5,$23
-jal printf
-L.1984:
-L.1982:
-la $19,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-sll $19,$19,$24
-la $24,20
-beq $19,$24,L.1986
-la $23,314
-beq $30,$0,L.1988
-la $4,L.687
-move $5,$23
-jal printf
-L.1988:
-L.1986:
-la $19,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-sll $19,$19,$24
-la $24,20
-beq $19,$24,L.1990
-la $23,315
-beq $30,$0,L.1992
-la $4,L.687
-move $5,$23
-jal printf
-L.1992:
-L.1990:
-la $18,5
-la $17,2
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-sll $18,$18,$24
-la $24,20
-beq $18,$24,L.1994
-la $23,316
-beq $30,$0,L.1996
-la $4,L.687
-move $5,$23
-jal printf
-L.1996:
-L.1994:
-la $18,5
-la $16,2
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-sll $18,$18,$24
-la $24,20
-beq $18,$24,L.1998
-la $23,317
-beq $30,$0,L.2000
-la $4,L.687
-move $5,$23
-jal printf
-L.2000:
-L.1998:
-la $18,5
-la $24,2
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-sll $18,$18,$24
-la $24,20
-beq $18,$24,L.2002
-la $23,318
-beq $30,$0,L.2004
-la $4,L.687
-move $5,$23
-jal printf
-L.2004:
-L.2002:
-la $18,5
-la $24,2
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-sll $18,$18,$24
-la $24,20
-beq $18,$24,L.2006
-la $23,319
-beq $30,$0,L.2008
-la $4,L.687
-move $5,$23
-jal printf
-L.2008:
-L.2006:
-la $18,5
-la $24,2
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-sll $18,$18,$24
-la $24,20
-beq $18,$24,L.2010
-la $23,320
-beq $30,$0,L.2012
-la $4,L.687
-move $5,$23
-jal printf
-L.2012:
-L.2010:
-la $22,12
-la $17,10
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-and $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,8
-beq $24,$15,L.2014
-la $23,321
-beq $30,$0,L.2016
-la $4,L.687
-move $5,$23
-jal printf
-L.2016:
-L.2014:
-la $22,12
-la $16,10
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-and $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,8
-beq $24,$15,L.2018
-la $23,322
-beq $30,$0,L.2020
-la $4,L.687
-move $5,$23
-jal printf
-L.2020:
-L.2018:
-la $22,12
-la $24,10
-sw $24,-4+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-4+160($sp)
-and $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,8
-beq $24,$15,L.2022
-la $23,323
-beq $30,$0,L.2024
-la $4,L.687
-move $5,$23
-jal printf
-L.2024:
-L.2022:
-la $22,12
-la $24,10
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-and $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,8
-beq $24,$15,L.2026
-la $23,324
-beq $30,$0,L.2028
-la $4,L.687
-move $5,$23
-jal printf
-L.2028:
-L.2026:
-la $22,12
-la $24,10
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-and $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,8
-beq $24,$15,L.2030
-la $23,325
-beq $30,$0,L.2032
-la $4,L.687
-move $5,$23
-jal printf
-L.2032:
-L.2030:
-la $21,12
-la $17,10
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-and $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,8
-beq $24,$15,L.2034
-la $23,326
-beq $30,$0,L.2036
-la $4,L.687
-move $5,$23
-jal printf
-L.2036:
-L.2034:
-la $21,12
-la $16,10
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-and $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,8
-beq $24,$15,L.2038
-la $23,327
-beq $30,$0,L.2040
-la $4,L.687
-move $5,$23
-jal printf
-L.2040:
-L.2038:
-la $21,12
-la $24,10
-sw $24,-4+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-4+160($sp)
-and $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,8
-beq $24,$15,L.2042
-la $23,328
-beq $30,$0,L.2044
-la $4,L.687
-move $5,$23
-jal printf
-L.2044:
-L.2042:
-la $21,12
-la $24,10
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-and $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,8
-beq $24,$15,L.2046
-la $23,329
-beq $30,$0,L.2048
-la $4,L.687
-move $5,$23
-jal printf
-L.2048:
-L.2046:
-la $21,12
-la $24,10
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-and $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,8
-beq $24,$15,L.2050
-la $23,330
-beq $30,$0,L.2052
-la $4,L.687
-move $5,$23
-jal printf
-L.2052:
-L.2050:
-la $20,12
-la $17,10
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-and $20,$20,$24
-la $24,8
-beq $20,$24,L.2054
-la $23,331
-beq $30,$0,L.2056
-la $4,L.687
-move $5,$23
-jal printf
-L.2056:
-L.2054:
-la $20,12
-la $16,10
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-and $20,$20,$24
-la $24,8
-beq $20,$24,L.2058
-la $23,332
-beq $30,$0,L.2060
-la $4,L.687
-move $5,$23
-jal printf
-L.2060:
-L.2058:
-la $20,12
-la $24,10
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-and $20,$20,$24
-la $24,8
-beq $20,$24,L.2062
-la $23,333
-beq $30,$0,L.2064
-la $4,L.687
-move $5,$23
-jal printf
-L.2064:
-L.2062:
-la $20,12
-la $24,10
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-and $20,$20,$24
-la $24,8
-beq $20,$24,L.2066
-la $23,334
-beq $30,$0,L.2068
-la $4,L.687
-move $5,$23
-jal printf
-L.2068:
-L.2066:
-la $20,12
-la $24,10
-sw $24,-12+160($sp)
-move $24,$20
-lw $15,-12+160($sp)
-and $24,$24,$15
-move $20,$24
-la $24,8
-beq $20,$24,L.2070
-la $23,335
-beq $30,$0,L.2072
-la $4,L.687
-move $5,$23
-jal printf
-L.2072:
-L.2070:
-la $19,12
-la $17,10
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-and $19,$19,$24
-la $24,8
-beq $19,$24,L.2074
-la $23,336
-beq $30,$0,L.2076
-la $4,L.687
-move $5,$23
-jal printf
-L.2076:
-L.2074:
-la $19,12
-la $16,10
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-and $19,$19,$24
-la $24,8
-beq $19,$24,L.2078
-la $23,337
-beq $30,$0,L.2080
-la $4,L.687
-move $5,$23
-jal printf
-L.2080:
-L.2078:
-la $19,12
-la $24,10
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-and $19,$19,$24
-la $24,8
-beq $19,$24,L.2082
-la $23,338
-beq $30,$0,L.2084
-la $4,L.687
-move $5,$23
-jal printf
-L.2084:
-L.2082:
-la $19,12
-la $24,10
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-and $19,$19,$24
-la $24,8
-beq $19,$24,L.2086
-la $23,339
-beq $30,$0,L.2088
-la $4,L.687
-move $5,$23
-jal printf
-L.2088:
-L.2086:
-la $19,12
-la $24,10
-sw $24,-12+160($sp)
-move $24,$19
-lw $15,-12+160($sp)
-and $24,$24,$15
-move $19,$24
-la $24,8
-beq $19,$24,L.2090
-la $23,340
-beq $30,$0,L.2092
-la $4,L.687
-move $5,$23
-jal printf
-L.2092:
-L.2090:
-la $18,12
-la $17,10
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-and $18,$18,$24
-la $24,8
-beq $18,$24,L.2094
-la $23,341
-beq $30,$0,L.2096
-la $4,L.687
-move $5,$23
-jal printf
-L.2096:
-L.2094:
-la $18,12
-la $16,10
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-and $18,$18,$24
-la $24,8
-beq $18,$24,L.2098
-la $23,342
-beq $30,$0,L.2100
-la $4,L.687
-move $5,$23
-jal printf
-L.2100:
-L.2098:
-la $18,12
-la $24,10
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-and $18,$18,$24
-la $24,8
-beq $18,$24,L.2102
-la $23,343
-beq $30,$0,L.2104
-la $4,L.687
-move $5,$23
-jal printf
-L.2104:
-L.2102:
-la $18,12
-la $24,10
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-and $18,$18,$24
-la $24,8
-beq $18,$24,L.2106
-la $23,344
-beq $30,$0,L.2108
-la $4,L.687
-move $5,$23
-jal printf
-L.2108:
-L.2106:
-la $18,12
-la $24,10
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-and $18,$18,$24
-la $24,8
-beq $18,$24,L.2110
-la $23,345
-beq $30,$0,L.2112
-la $4,L.687
-move $5,$23
-jal printf
-L.2112:
-L.2110:
-la $22,12
-la $17,10
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-xor $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,6
-beq $24,$15,L.2114
-la $23,346
-beq $30,$0,L.2116
-la $4,L.687
-move $5,$23
-jal printf
-L.2116:
-L.2114:
-la $22,12
-la $16,10
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-xor $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,6
-beq $24,$15,L.2118
-la $23,347
-beq $30,$0,L.2120
-la $4,L.687
-move $5,$23
-jal printf
-L.2120:
-L.2118:
-la $22,12
-la $24,10
-sw $24,-4+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-4+160($sp)
-xor $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,6
-beq $24,$15,L.2122
-la $23,348
-beq $30,$0,L.2124
-la $4,L.687
-move $5,$23
-jal printf
-L.2124:
-L.2122:
-la $22,12
-la $24,10
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-xor $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,6
-beq $24,$15,L.2126
-la $23,349
-beq $30,$0,L.2128
-la $4,L.687
-move $5,$23
-jal printf
-L.2128:
-L.2126:
-la $22,12
-la $24,10
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-xor $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,6
-beq $24,$15,L.2130
-la $23,350
-beq $30,$0,L.2132
-la $4,L.687
-move $5,$23
-jal printf
-L.2132:
-L.2130:
-la $21,12
-la $17,10
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-xor $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,6
-beq $24,$15,L.2134
-la $23,351
-beq $30,$0,L.2136
-la $4,L.687
-move $5,$23
-jal printf
-L.2136:
-L.2134:
-la $21,12
-la $16,10
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-xor $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,6
-beq $24,$15,L.2138
-la $23,352
-beq $30,$0,L.2140
-la $4,L.687
-move $5,$23
-jal printf
-L.2140:
-L.2138:
-la $21,12
-la $24,10
-sw $24,-4+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-4+160($sp)
-xor $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,6
-beq $24,$15,L.2142
-la $23,353
-beq $30,$0,L.2144
-la $4,L.687
-move $5,$23
-jal printf
-L.2144:
-L.2142:
-la $21,12
-la $24,10
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-xor $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,6
-beq $24,$15,L.2146
-la $23,354
-beq $30,$0,L.2148
-la $4,L.687
-move $5,$23
-jal printf
-L.2148:
-L.2146:
-la $21,12
-la $24,10
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-xor $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,6
-beq $24,$15,L.2150
-la $23,355
-beq $30,$0,L.2152
-la $4,L.687
-move $5,$23
-jal printf
-L.2152:
-L.2150:
-la $20,12
-la $17,10
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-xor $20,$20,$24
-la $24,6
-beq $20,$24,L.2154
-la $23,356
-beq $30,$0,L.2156
-la $4,L.687
-move $5,$23
-jal printf
-L.2156:
-L.2154:
-la $20,12
-la $16,10
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-xor $20,$20,$24
-la $24,6
-beq $20,$24,L.2158
-la $23,357
-beq $30,$0,L.2160
-la $4,L.687
-move $5,$23
-jal printf
-L.2160:
-L.2158:
-la $20,12
-la $24,10
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-xor $20,$20,$24
-la $24,6
-beq $20,$24,L.2162
-la $23,358
-beq $30,$0,L.2164
-la $4,L.687
-move $5,$23
-jal printf
-L.2164:
-L.2162:
-la $20,12
-la $24,10
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-xor $20,$20,$24
-la $24,6
-beq $20,$24,L.2166
-la $23,359
-beq $30,$0,L.2168
-la $4,L.687
-move $5,$23
-jal printf
-L.2168:
-L.2166:
-la $20,12
-la $24,10
-sw $24,-12+160($sp)
-move $24,$20
-lw $15,-12+160($sp)
-xor $24,$24,$15
-move $20,$24
-la $24,6
-beq $20,$24,L.2170
-la $23,360
-beq $30,$0,L.2172
-la $4,L.687
-move $5,$23
-jal printf
-L.2172:
-L.2170:
-la $19,12
-la $17,10
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-xor $19,$19,$24
-la $24,6
-beq $19,$24,L.2174
-la $23,361
-beq $30,$0,L.2176
-la $4,L.687
-move $5,$23
-jal printf
-L.2176:
-L.2174:
-la $19,12
-la $16,10
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-xor $19,$19,$24
-la $24,6
-beq $19,$24,L.2178
-la $23,362
-beq $30,$0,L.2180
-la $4,L.687
-move $5,$23
-jal printf
-L.2180:
-L.2178:
-la $19,12
-la $24,10
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-xor $19,$19,$24
-la $24,6
-beq $19,$24,L.2182
-la $23,363
-beq $30,$0,L.2184
-la $4,L.687
-move $5,$23
-jal printf
-L.2184:
-L.2182:
-la $19,12
-la $24,10
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-xor $19,$19,$24
-la $24,6
-beq $19,$24,L.2186
-la $23,364
-beq $30,$0,L.2188
-la $4,L.687
-move $5,$23
-jal printf
-L.2188:
-L.2186:
-la $19,12
-la $24,10
-sw $24,-12+160($sp)
-move $24,$19
-lw $15,-12+160($sp)
-xor $24,$24,$15
-move $19,$24
-la $24,6
-beq $19,$24,L.2190
-la $23,365
-beq $30,$0,L.2192
-la $4,L.687
-move $5,$23
-jal printf
-L.2192:
-L.2190:
-la $18,12
-la $17,10
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-xor $18,$18,$24
-la $24,6
-beq $18,$24,L.2194
-la $23,366
-beq $30,$0,L.2196
-la $4,L.687
-move $5,$23
-jal printf
-L.2196:
-L.2194:
-la $18,12
-la $16,10
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-xor $18,$18,$24
-la $24,6
-beq $18,$24,L.2198
-la $23,367
-beq $30,$0,L.2200
-la $4,L.687
-move $5,$23
-jal printf
-L.2200:
-L.2198:
-la $18,12
-la $24,10
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-xor $18,$18,$24
-la $24,6
-beq $18,$24,L.2202
-la $23,368
-beq $30,$0,L.2204
-la $4,L.687
-move $5,$23
-jal printf
-L.2204:
-L.2202:
-la $18,12
-la $24,10
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-xor $18,$18,$24
-la $24,6
-beq $18,$24,L.2206
-la $23,369
-beq $30,$0,L.2208
-la $4,L.687
-move $5,$23
-jal printf
-L.2208:
-L.2206:
-la $18,12
-la $24,10
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-xor $18,$18,$24
-la $24,6
-beq $18,$24,L.2210
-la $23,370
-beq $30,$0,L.2212
-la $4,L.687
-move $5,$23
-jal printf
-L.2212:
-L.2210:
-la $22,12
-la $17,10
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-or $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,14
-beq $24,$15,L.2214
-la $23,371
-beq $30,$0,L.2216
-la $4,L.687
-move $5,$23
-jal printf
-L.2216:
-L.2214:
-la $22,12
-la $16,10
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-or $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,14
-beq $24,$15,L.2218
-la $23,372
-beq $30,$0,L.2220
-la $4,L.687
-move $5,$23
-jal printf
-L.2220:
-L.2218:
-la $22,12
-la $24,10
-sw $24,-4+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-4+160($sp)
-or $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,14
-beq $24,$15,L.2222
-la $23,373
-beq $30,$0,L.2224
-la $4,L.687
-move $5,$23
-jal printf
-L.2224:
-L.2222:
-la $22,12
-la $24,10
-sw $24,-8+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-8+160($sp)
-or $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,14
-beq $24,$15,L.2226
-la $23,374
-beq $30,$0,L.2228
-la $4,L.687
-move $5,$23
-jal printf
-L.2228:
-L.2226:
-la $22,12
-la $24,10
-sw $24,-12+160($sp)
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-lw $15,-12+160($sp)
-or $24,$24,$15
-move $22,$24
-sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
-la $15,14
-beq $24,$15,L.2230
-la $23,375
-beq $30,$0,L.2232
-la $4,L.687
-move $5,$23
-jal printf
-L.2232:
-L.2230:
-la $21,12
-la $17,10
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-or $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,14
-beq $24,$15,L.2234
-la $23,376
-beq $30,$0,L.2236
-la $4,L.687
-move $5,$23
-jal printf
-L.2236:
-L.2234:
-la $21,12
-la $16,10
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-or $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,14
-beq $24,$15,L.2238
-la $23,377
-beq $30,$0,L.2240
-la $4,L.687
-move $5,$23
-jal printf
-L.2240:
-L.2238:
-la $21,12
-la $24,10
-sw $24,-4+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-4+160($sp)
-or $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,14
-beq $24,$15,L.2242
-la $23,378
-beq $30,$0,L.2244
-la $4,L.687
-move $5,$23
-jal printf
-L.2244:
-L.2242:
-la $21,12
-la $24,10
-sw $24,-8+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-8+160($sp)
-or $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,14
-beq $24,$15,L.2246
-la $23,379
-beq $30,$0,L.2248
-la $4,L.687
-move $5,$23
-jal printf
-L.2248:
-L.2246:
-la $21,12
-la $24,10
-sw $24,-12+160($sp)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,-12+160($sp)
-or $24,$24,$15
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,14
-beq $24,$15,L.2250
-la $23,380
-beq $30,$0,L.2252
-la $4,L.687
-move $5,$23
-jal printf
-L.2252:
-L.2250:
-la $20,12
-la $17,10
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-or $20,$20,$24
-la $24,14
-beq $20,$24,L.2254
-la $23,381
-beq $30,$0,L.2256
-la $4,L.687
-move $5,$23
-jal printf
-L.2256:
-L.2254:
-la $20,12
-la $16,10
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-or $20,$20,$24
-la $24,14
-beq $20,$24,L.2258
-la $23,382
-beq $30,$0,L.2260
-la $4,L.687
-move $5,$23
-jal printf
-L.2260:
-L.2258:
-la $20,12
-la $24,10
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-or $20,$20,$24
-la $24,14
-beq $20,$24,L.2262
-la $23,383
-beq $30,$0,L.2264
-la $4,L.687
-move $5,$23
-jal printf
-L.2264:
-L.2262:
-la $20,12
-la $24,10
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-or $20,$20,$24
-la $24,14
-beq $20,$24,L.2266
-la $23,384
-beq $30,$0,L.2268
-la $4,L.687
-move $5,$23
-jal printf
-L.2268:
-L.2266:
-la $20,12
-la $24,10
-sw $24,-12+160($sp)
-move $24,$20
-lw $15,-12+160($sp)
-or $24,$24,$15
-move $20,$24
-la $24,14
-beq $20,$24,L.2270
-la $23,385
-beq $30,$0,L.2272
-la $4,L.687
-move $5,$23
-jal printf
-L.2272:
-L.2270:
-la $19,12
-la $17,10
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-or $19,$19,$24
-la $24,14
-beq $19,$24,L.2274
-la $23,386
-beq $30,$0,L.2276
-la $4,L.687
-move $5,$23
-jal printf
-L.2276:
-L.2274:
-la $19,12
-la $16,10
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-or $19,$19,$24
-la $24,14
-beq $19,$24,L.2278
-la $23,387
-beq $30,$0,L.2280
-la $4,L.687
-move $5,$23
-jal printf
-L.2280:
-L.2278:
-la $19,12
-la $24,10
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-or $19,$19,$24
-la $24,14
-beq $19,$24,L.2282
-la $23,388
-beq $30,$0,L.2284
-la $4,L.687
-move $5,$23
-jal printf
-L.2284:
-L.2282:
-la $19,12
-la $24,10
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-or $19,$19,$24
-la $24,14
-beq $19,$24,L.2286
-la $23,389
-beq $30,$0,L.2288
-la $4,L.687
-move $5,$23
-jal printf
-L.2288:
-L.2286:
-la $19,12
-la $24,10
-sw $24,-12+160($sp)
-move $24,$19
-lw $15,-12+160($sp)
-or $24,$24,$15
-move $19,$24
-la $24,14
-beq $19,$24,L.2290
-la $23,390
-beq $30,$0,L.2292
-la $4,L.687
-move $5,$23
-jal printf
-L.2292:
-L.2290:
-la $18,12
-la $17,10
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-or $18,$18,$24
-la $24,14
-beq $18,$24,L.2294
-la $23,391
-beq $30,$0,L.2296
-la $4,L.687
-move $5,$23
-jal printf
-L.2296:
-L.2294:
-la $18,12
-la $16,10
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-or $18,$18,$24
-la $24,14
-beq $18,$24,L.2298
-la $23,392
-beq $30,$0,L.2300
-la $4,L.687
-move $5,$23
-jal printf
-L.2300:
-L.2298:
-la $18,12
-la $24,10
-sw $24,-4+160($sp)
-lw $24,-4+160($sp)
-or $18,$18,$24
-la $24,14
-beq $18,$24,L.2302
-la $23,393
-beq $30,$0,L.2304
-la $4,L.687
-move $5,$23
-jal printf
-L.2304:
-L.2302:
-la $18,12
-la $24,10
-sw $24,-8+160($sp)
-lw $24,-8+160($sp)
-or $18,$18,$24
-la $24,14
-beq $18,$24,L.2306
-la $23,394
-beq $30,$0,L.2308
-la $4,L.687
-move $5,$23
-jal printf
-L.2308:
-L.2306:
-la $18,12
-la $24,10
-sw $24,-12+160($sp)
-lw $24,-12+160($sp)
-or $18,$18,$24
-la $24,14
-beq $18,$24,L.2310
-la $23,395
-beq $30,$0,L.2312
-la $4,L.687
-move $5,$23
-jal printf
-L.2312:
-L.2310:
-beq $23,$0,L.2314
-la $24,1
-sw $24,-24+160($sp)
-lw $24,0+160($sp)
-lw $24,44($24)
-beq $24,$0,L.2316
-la $4,L.688
-la $5,1
-jal printf
-L.2316:
-L.2314:
-lw $2,-24+160($sp)
-L.686:
-l.d $f24,16($sp)
-l.d $f26,24($sp)
-l.d $f28,32($sp)
-l.d $f30,40($sp)
-lw $16,48($sp)
-lw $17,52($sp)
-lw $18,56($sp)
-lw $19,60($sp)
-lw $20,64($sp)
-lw $21,68($sp)
-lw $22,72($sp)
-lw $23,76($sp)
-lw $25,80($sp)
-lw $30,84($sp)
-lw $31,88($sp)
-addu $sp,$sp,160
-j $31
-.end s714
-.data
-.align 0
-L.2319:
-.byte 115
-.byte 55
-.byte 49
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.2320:
-.byte 115
-.byte 55
-.byte 49
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s715
-.text
-.text
-.align 2
-.ent s715
-s715:
-.frame $sp,56,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-56
-.mask 0xc2e00000,-20
-sw $21,16($sp)
-sw $22,20($sp)
-sw $23,24($sp)
-.cprestore 28
-sw $30,32($sp)
-sw $31,36($sp)
-sw $4,56($sp)
-sw $0,-12+56($sp)
-sw $0,-4+56($sp)
-la $30,L.2320
-lw $15,0+56($sp)
-la $23,60($15)
-move $21,$0
-L.2321:
-L.2322:
-move $24,$23
-la $23,1($24)
-move $15,$30
-la $30,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.2321
-la $24,1
-move $22,$24
-la $22,1($22)
-la $22,1($22)
-la $22,1($22)
-la $22,1($22)
-la $24,1($22)
-move $22,$24
-la $15,6
-beq $24,$15,L.2324
-lw $24,0+56($sp)
-lw $24,44($24)
-beq $24,$0,L.2326
-la $4,L.2319
-la $5,1
-jal printf
-L.2326:
-la $21,1($21)
-L.2324:
-lw $4,-4+56($sp)
-la $24,3
-sw $24,-8+56($sp)
-lw $24,-8+56($sp)
-la $5,2($24)
-lw $6,-12+56($sp)
-jal s715f
-la $15,5
-beq $2,$15,L.2328
-lw $24,0+56($sp)
-lw $24,44($24)
-beq $24,$0,L.2330
-la $4,L.2319
-la $5,2
-jal printf
-L.2330:
-la $21,2($21)
-L.2328:
-move $2,$21
-L.2318:
-lw $21,16($sp)
-lw $22,20($sp)
-lw $23,24($sp)
-lw $25,28($sp)
-lw $30,32($sp)
-lw $31,36($sp)
-addu $sp,$sp,56
-j $31
-.end s715
-.globl s715f
-.text
-.align 2
-.ent s715f
-s715f:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-move $2,$5
-L.2332:
-j $31
-.end s715f
-.data
-.align 0
-L.2334:
-.byte 115
-.byte 55
-.byte 50
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.2335:
-.byte 115
-.byte 55
-.byte 50
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s72
-.text
-.text
-.align 2
-.ent s72
-s72:
-.frame $sp,96,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-96
-.fmask 0xf0000000,-72
-.mask 0xc2ff0000,-24
-s.d $f28,16($sp)
-s.d $f30,24($sp)
-sw $16,32($sp)
-sw $17,36($sp)
-sw $18,40($sp)
-sw $19,44($sp)
-sw $20,48($sp)
-sw $21,52($sp)
-sw $22,56($sp)
-sw $23,60($sp)
-.cprestore 64
-sw $30,68($sp)
-sw $31,72($sp)
-move $30,$4
-la $22,L.2335
-la $21,60($30)
-move $19,$0
-L.2336:
-L.2337:
-move $24,$21
-la $21,1($24)
-move $15,$22
-la $22,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.2336
-la $24,2
-sw $24,-4+96($sp)
-lw $15,-4+96($sp)
-beq $15,$24,L.2339
-la $24,1
-la $19,1($19)
-la $4,L.2334
-move $5,$24
-jal printf
-L.2339:
-lw $24,-4+96($sp)
-negu $15,$24
-addu $24,$24,$15
-beq $24,$0,L.2341
-la $24,2
-la $19,2($19)
-la $4,L.2334
-move $5,$24
-jal printf
-L.2341:
-sw $0,-4+96($sp)
-move $23,$0
-b L.2346
-L.2343:
-lw $24,-4+96($sp)
-sll $24,$24,1
-or $24,$24,1
-sw $24,-4+96($sp)
-L.2344:
-la $23,1($23)
-L.2346:
-lw $24,4($30)
-blt $23,$24,L.2343
-lw $24,-4+96($sp)
-not $24,$24
-beq $24,$0,L.2347
-la $24,4
-la $19,4($19)
-la $4,L.2334
-move $5,$24
-jal printf
-L.2347:
-la $24,5
-sw $24,-4+96($sp)
-lw $24,-4+96($sp)
-la $24,1($24)
-sw $24,-4+96($sp)
-la $15,6
-bne $24,$15,L.2354
-lw $24,-4+96($sp)
-subu $24,$24,1
-sw $24,-4+96($sp)
-la $14,5
-bne $24,$14,L.2354
-lw $24,-4+96($sp)
-la $13,1($24)
-sw $13,-4+96($sp)
-bne $24,$14,L.2354
-lw $24,-4+96($sp)
-subu $13,$24,1
-sw $13,-4+96($sp)
-bne $24,$15,L.2354
-lw $24,-4+96($sp)
-beq $24,$14,L.2349
-L.2354:
-la $24,8
-la $19,8($19)
-la $4,L.2334
-move $5,$24
-jal printf
-L.2349:
-la $17,26
-la $24,26
-sw $24,-8+96($sp)
-l.d $f30,L.2355
-la $16,26
-la $24,26
-sw $24,-12+96($sp)
-la $18,26
-l.s $f28,L.2356
-move $20,$0
-la $24,26
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
-bne $15,$24,L.2363
-move $15,$18
-sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
-bne $15,$24,L.2363
-lw $15,-8+96($sp)
-sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
-bne $15,$24,L.2363
-lw $15,-12+96($sp)
-sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
-bne $15,$24,L.2363
-trunc.w.s $f2,$f28,$15; mfc1 $15,$f2
-sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
-bne $15,$24,L.2363
-trunc.w.d $f2,$f30,$15; mfc1 $15,$f2
-sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
-beq $15,$24,L.2357
-L.2363:
-la $20,1($20)
-L.2357:
-la $24,26
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
-bne $15,$24,L.2370
-move $15,$18
-sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
-bne $15,$24,L.2370
-lw $15,-8+96($sp)
-sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
-bne $15,$24,L.2370
-lw $15,-12+96($sp)
-sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
-bne $15,$24,L.2370
-trunc.w.s $f2,$f28,$15; mfc1 $15,$f2
-sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
-bne $15,$24,L.2370
-trunc.w.d $f2,$f30,$15; mfc1 $15,$f2
-sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
-beq $15,$24,L.2364
-L.2370:
-la $20,2($20)
-L.2364:
-la $24,26
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-bne $15,$24,L.2377
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-bne $15,$24,L.2377
-lw $15,-8+96($sp)
-bne $15,$24,L.2377
-lw $15,-12+96($sp)
-bne $15,$24,L.2377
-trunc.w.s $f2,$f28,$15; mfc1 $15,$f2
-bne $15,$24,L.2377
-trunc.w.d $f2,$f30,$15; mfc1 $15,$f2
-beq $15,$24,L.2371
-L.2377:
-la $20,4($20)
-L.2371:
-la $24,26
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-bne $15,$24,L.2384
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-bne $15,$24,L.2384
-bne $18,$24,L.2384
-lw $15,-12+96($sp)
-bne $15,$24,L.2384
-trunc.w.s $f2,$f28,$15; mfc1 $15,$f2
-bne $15,$24,L.2384
-trunc.w.d $f2,$f30,$15; mfc1 $15,$f2
-beq $15,$24,L.2378
-L.2384:
-la $20,8($20)
-L.2378:
-la $24,26
-sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
-bne $15,$24,L.2393
-sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
-bne $15,$24,L.2393
-move $15,$18
-bne $15,$24,L.2393
-lw $15,-8+96($sp)
-bne $15,$24,L.2393
-l.s $f18,L.828
-c.lt.s $f28,$f18; bc1t L.2394
-sub.s $f18,$f28,$f18
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-16+96($sp)
-b L.2395
-L.2394:
-trunc.w.s $f2,$f28,$24; mfc1 $24,$f2
-sw $24,-16+96($sp)
-L.2395:
-lw $24,-16+96($sp)
-la $15,26
-bne $24,$15,L.2393
-l.d $f18,L.836
-c.lt.d $f30,$f18; bc1t L.2396
-sub.d $f18,$f30,$f18
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-20+96($sp)
-b L.2397
-L.2396:
-trunc.w.d $f2,$f30,$24; mfc1 $24,$f2
-sw $24,-20+96($sp)
-L.2397:
-lw $24,-20+96($sp)
-la $15,26
-beq $24,$15,L.2385
-L.2393:
-la $20,16($20)
-L.2385:
-l.d $f18,L.2355
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f16; cvt.s.w $f16,$f16
-cvt.d.s $f16,$f16
-c.eq.d $f16,$f18; bc1f L.2404
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f16; cvt.s.w $f16,$f16
-cvt.d.s $f16,$f16
-c.eq.d $f16,$f18; bc1f L.2404
-mtc1 $18,$f16; cvt.s.w $f16,$f16
-cvt.d.s $f16,$f16
-c.eq.d $f16,$f18; bc1f L.2404
-lw $24,-8+96($sp)
-mtc1 $24,$f16; cvt.s.w $f16,$f16
-cvt.d.s $f16,$f16
-c.eq.d $f16,$f18; bc1f L.2404
-lw $24,-12+96($sp)
-l.d $f16,L.596
-srl $15,$24,1
-mtc1 $15,$f10; cvt.d.w $f10,$f10
-mul.d $f16,$f16,$f10
-and $24,$24,1
-mtc1 $24,$f10; cvt.d.w $f10,$f10
-add.d $f16,$f16,$f10
-cvt.s.d $f16,$f16
-cvt.d.s $f16,$f16
-c.eq.d $f16,$f18; bc1f L.2404
-cvt.s.d $f16,$f30
-cvt.d.s $f16,$f16
-c.eq.d $f16,$f18; bc1t L.2398
-L.2404:
-la $20,32($20)
-L.2398:
-l.d $f18,L.2355
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-c.eq.d $f16,$f18; bc1f L.2411
-sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-c.eq.d $f16,$f18; bc1f L.2411
-mtc1 $18,$f16; cvt.d.w $f16,$f16
-c.eq.d $f16,$f18; bc1f L.2411
-lw $24,-8+96($sp)
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-c.eq.d $f16,$f18; bc1f L.2411
-lw $24,-12+96($sp)
-l.d $f16,L.596
-srl $15,$24,1
-mtc1 $15,$f10; cvt.d.w $f10,$f10
-mul.d $f16,$f16,$f10
-and $24,$24,1
-mtc1 $24,$f10; cvt.d.w $f10,$f10
-add.d $f16,$f16,$f10
-c.eq.d $f16,$f18; bc1f L.2411
-cvt.d.s $f16,$f28
-c.eq.d $f16,$f18; bc1t L.2405
-L.2411:
-la $20,64($20)
-L.2405:
-beq $20,$0,L.2412
-la $24,16
-la $19,16($19)
-la $4,L.2334
-move $5,$24
-jal printf
-L.2412:
-move $2,$19
-L.2333:
-l.d $f28,16($sp)
-l.d $f30,24($sp)
-lw $16,32($sp)
-lw $17,36($sp)
-lw $18,40($sp)
-lw $19,44($sp)
-lw $20,48($sp)
-lw $21,52($sp)
-lw $22,56($sp)
-lw $23,60($sp)
-lw $25,64($sp)
-lw $30,68($sp)
-lw $31,72($sp)
-addu $sp,$sp,96
-j $31
-.end s72
-.data
-.align 0
-L.2415:
-.byte 115
-.byte 55
-.byte 53
-.byte 55
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.2416:
-.byte 115
-.byte 55
-.byte 53
-.byte 55
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s757
-.text
-.text
-.align 2
-.ent s757
-s757:
-.frame $sp,176,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-176
-.mask 0xc2ff0000,-120
-sw $16,16($sp)
-sw $17,20($sp)
-sw $18,24($sp)
-sw $19,28($sp)
-sw $20,32($sp)
-sw $21,36($sp)
-sw $22,40($sp)
-sw $23,44($sp)
-.cprestore 48
-sw $30,52($sp)
-sw $31,56($sp)
-move $30,$4
-la $24,L.2416
-sw $24,-80+176($sp)
-la $24,60($30)
-sw $24,-84+176($sp)
-sw $0,-88+176($sp)
-L.2417:
-L.2418:
-lw $24,-84+176($sp)
-la $15,1($24)
-sw $15,-84+176($sp)
-lw $15,-80+176($sp)
-la $14,1($15)
-sw $14,-80+176($sp)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.2417
-la $24,40
-sw $24,-92+176($sp)
-lw $24,-92+176($sp)
-sll $15,$24,3
-sll $15,$15,2
-la $14,1280
-bne $15,$14,L.2422
-sra $24,$24,3
-sra $24,$24,2
-la $15,1
-beq $24,$15,L.2420
-L.2422:
-lw $24,-88+176($sp)
-la $24,1($24)
-sw $24,-88+176($sp)
-lw $24,44($30)
-beq $24,$0,L.2423
-la $4,L.2415
-la $5,1
-jal printf
-L.2423:
-L.2420:
-move $19,$0
-sw $0,-68+176($sp)
-b L.2428
-L.2425:
-la $17,1
-lw $24,16($30)
-subu $24,$24,1
-sll $16,$17,$24
-sw $0,-72+176($sp)
-lw $24,-72+176($sp)
-not $24,$24
-lw $15,-68+176($sp)
-srl $14,$24,$15
-sw $14,-76+176($sp)
-sll $24,$24,$15
-sw $24,-72+176($sp)
-move $18,$0
-b L.2432
-L.2429:
-lw $24,-68+176($sp)
-bge $18,$24,L.2440
-la $24,1
-sw $24,-100+176($sp)
-b L.2441
-L.2440:
-sw $0,-100+176($sp)
-L.2441:
-lw $24,-72+176($sp)
-and $24,$17,$24
-bne $24,$0,L.2442
-la $24,1
-sw $24,-104+176($sp)
-b L.2443
-L.2442:
-sw $0,-104+176($sp)
-L.2443:
-lw $24,-100+176($sp)
-lw $15,-104+176($sp)
-bne $24,$15,L.2439
-lw $24,-68+176($sp)
-bge $18,$24,L.2444
-la $24,1
-sw $24,-108+176($sp)
-b L.2445
-L.2444:
-sw $0,-108+176($sp)
-L.2445:
-lw $24,-76+176($sp)
-and $24,$16,$24
-bne $24,$0,L.2446
-la $24,1
-sw $24,-112+176($sp)
-b L.2447
-L.2446:
-sw $0,-112+176($sp)
-L.2447:
-lw $24,-108+176($sp)
-lw $15,-112+176($sp)
-beq $24,$15,L.2433
-L.2439:
-la $19,1
-L.2433:
-sll $17,$17,1
-srl $16,$16,1
-L.2430:
-la $18,1($18)
-L.2432:
-lw $24,16($30)
-blt $18,$24,L.2429
-L.2426:
-lw $24,-68+176($sp)
-la $24,1($24)
-sw $24,-68+176($sp)
-L.2428:
-lw $24,-68+176($sp)
-lw $15,16($30)
-blt $24,$15,L.2425
-beq $19,$0,L.2448
-lw $24,-88+176($sp)
-la $24,2($24)
-sw $24,-88+176($sp)
-lw $24,44($30)
-beq $24,$0,L.2450
-la $4,L.2415
-la $5,2
-jal printf
-L.2450:
-L.2448:
-la $20,3
-la $21,2
-la $22,1
-bge $20,$21,L.2458
-la $24,1
-sw $24,-104+176($sp)
-b L.2459
-L.2458:
-sw $0,-104+176($sp)
-L.2459:
-lw $24,-104+176($sp)
-bge $24,$22,L.2456
-la $24,1
-sw $24,-100+176($sp)
-b L.2457
-L.2456:
-sw $0,-100+176($sp)
-L.2457:
-lw $24,-100+176($sp)
-la $15,1
-beq $24,$15,L.2452
-lw $24,-88+176($sp)
-la $24,4($24)
-sw $24,-88+176($sp)
-lw $24,44($30)
-beq $24,$0,L.2460
-la $4,L.2415
-la $5,4
-jal printf
-L.2460:
-L.2452:
-la $24,-60+176($sp)
-la $15,-64+176($sp)
-bne $24,$15,L.2462
-lw $24,-88+176($sp)
-la $24,8($24)
-sw $24,-88+176($sp)
-lw $24,44($30)
-beq $24,$0,L.2465
-la $4,L.2415
-la $5,8
-jal printf
-L.2465:
-L.2462:
-la $24,-60+176($sp)
-la $15,-64+176($sp)
-bgeu $24,$15,L.2467
-lw $24,40($30)
-beq $24,$0,L.2470
-la $4,L.2472
-jal printf
-L.2470:
-L.2467:
-move $19,$0
-move $18,$0
-L.2473:
-sll $24,$18,2
-la $15,-64+176($sp)
-addu $24,$24,$15
-la $15,1
-sw $15,($24)
-L.2474:
-la $18,1($18)
-la $24,16
-blt $18,$24,L.2473
-sw $0,-60+176($sp)
-sw $0,-48+176($sp)
-sw $0,-40+176($sp)
-sw $0,-36+176($sp)
-sw $0,-28+176($sp)
-sw $0,-12+176($sp)
-move $20,$0
-L.2483:
-move $21,$0
-L.2487:
-move $22,$0
-L.2491:
-move $23,$0
-L.2495:
-bge $20,$21,L.2506
-la $24,1
-sw $24,-112+176($sp)
-b L.2507
-L.2506:
-sw $0,-112+176($sp)
-L.2507:
-bge $22,$23,L.2508
-la $24,1
-sw $24,-116+176($sp)
-b L.2509
-L.2508:
-sw $0,-116+176($sp)
-L.2509:
-lw $24,-112+176($sp)
-lw $15,-116+176($sp)
-bne $24,$15,L.2504
-la $24,1
-sw $24,-108+176($sp)
-b L.2505
-L.2504:
-sw $0,-108+176($sp)
-L.2505:
-lw $24,-108+176($sp)
-sll $15,$20,3
-sll $14,$21,2
-addu $15,$15,$14
-sll $14,$22,1
-addu $15,$15,$14
-addu $15,$15,$23
-sll $15,$15,2
-la $14,-64+176($sp)
-addu $15,$15,$14
-lw $15,($15)
-beq $24,$15,L.2499
-la $19,1
-L.2499:
-L.2496:
-la $23,1($23)
-la $24,2
-blt $23,$24,L.2495
-L.2492:
-la $22,1($22)
-la $24,2
-blt $22,$24,L.2491
-L.2488:
-la $21,1($21)
-la $24,2
-blt $21,$24,L.2487
-L.2484:
-la $20,1($20)
-la $24,2
-blt $20,$24,L.2483
-beq $19,$0,L.2510
-lw $24,-88+176($sp)
-la $24,16($24)
-sw $24,-88+176($sp)
-lw $24,44($30)
-beq $24,$0,L.2512
-la $4,L.2415
-la $5,16
-jal printf
-L.2512:
-L.2510:
-sw $0,-96+176($sp)
-lw $24,-96+176($sp)
-beq $24,$0,L.2514
-lw $24,-88+176($sp)
-la $24,32($24)
-sw $24,-88+176($sp)
-lw $24,44($30)
-beq $24,$0,L.2516
-la $4,L.2415
-la $5,32
-jal printf
-L.2516:
-L.2514:
-lw $2,-88+176($sp)
-L.2414:
-lw $16,16($sp)
-lw $17,20($sp)
-lw $18,24($sp)
-lw $19,28($sp)
-lw $20,32($sp)
-lw $21,36($sp)
-lw $22,40($sp)
-lw $23,44($sp)
-lw $25,48($sp)
-lw $30,52($sp)
-lw $31,56($sp)
-addu $sp,$sp,176
-j $31
-.end s757
-.data
-.align 0
-L.2519:
-.byte 76
-.byte 111
-.byte 99
-.byte 97
-.byte 108
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.data
-.align 0
-L.2520:
-.byte 115
-.byte 55
-.byte 56
-.byte 49
-.byte 51
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.2521:
-.byte 115
-.byte 55
-.byte 56
-.byte 49
-.byte 51
-.byte 32
-.byte 32
-.byte 0
-.globl s7813
-.text
-.text
-.align 2
-.ent s7813
-s7813:
-.frame $sp,112,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-112
-.mask 0xc2ff0000,-56
-sw $16,16($sp)
-sw $17,20($sp)
-sw $18,24($sp)
-sw $19,28($sp)
-sw $20,32($sp)
-sw $21,36($sp)
-sw $22,40($sp)
-sw $23,44($sp)
-.cprestore 48
-sw $30,52($sp)
-sw $31,56($sp)
-sw $4,112($sp)
-la $19,L.2521
-lw $24,0+112($sp)
-la $18,60($24)
-move $23,$0
-move $17,$0
-lw $30,48($24)
-L.2522:
-L.2523:
-move $24,$18
-la $18,1($24)
-move $15,$19
-la $19,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.2522
-b L.2525
-la $23,1
-beq $30,$0,L.2527
-la $4,L.2519
-move $5,$23
-jal printf
-L.2527:
-L.2525:
-b L.2529
-la $23,2
-beq $30,$0,L.2531
-la $4,L.2519
-move $5,$23
-jal printf
-L.2531:
-L.2529:
-b L.2533
-la $23,3
-beq $30,$0,L.2535
-la $4,L.2519
-move $5,$23
-jal printf
-L.2535:
-L.2533:
-b L.2537
-la $23,4
-beq $30,$0,L.2539
-la $4,L.2519
-move $5,$23
-jal printf
-L.2539:
-L.2537:
-b L.2541
-la $23,5
-beq $30,$0,L.2543
-la $4,L.2519
-move $5,$23
-jal printf
-L.2543:
-L.2541:
-b L.2545
-la $23,6
-beq $30,$0,L.2547
-la $4,L.2519
-move $5,$23
-jal printf
-L.2547:
-L.2545:
-b L.2549
-la $23,7
-beq $30,$0,L.2551
-la $4,L.2519
-move $5,$23
-jal printf
-L.2551:
-L.2549:
-b L.2553
-la $23,8
-beq $30,$0,L.2555
-la $4,L.2519
-move $5,$23
-jal printf
-L.2555:
-L.2553:
-b L.2557
-la $23,9
-beq $30,$0,L.2559
-la $4,L.2519
-move $5,$23
-jal printf
-L.2559:
-L.2557:
-b L.2561
-la $23,10
-beq $30,$0,L.2563
-la $4,L.2519
-move $5,$23
-jal printf
-L.2563:
-L.2561:
-b L.2565
-la $23,11
-beq $30,$0,L.2567
-la $4,L.2519
-move $5,$23
-jal printf
-L.2567:
-L.2565:
-b L.2569
-la $23,12
-beq $30,$0,L.2571
-la $4,L.2519
-move $5,$23
-jal printf
-L.2571:
-L.2569:
-b L.2573
-la $23,13
-beq $30,$0,L.2575
-la $4,L.2519
-move $5,$23
-jal printf
-L.2575:
-L.2573:
-b L.2577
-la $23,14
-beq $30,$0,L.2579
-la $4,L.2519
-move $5,$23
-jal printf
-L.2579:
-L.2577:
-b L.2581
-la $23,15
-beq $30,$0,L.2583
-la $4,L.2519
-move $5,$23
-jal printf
-L.2583:
-L.2581:
-b L.2585
-la $23,16
-beq $30,$0,L.2587
-la $4,L.2519
-move $5,$23
-jal printf
-L.2587:
-L.2585:
-b L.2589
-la $23,17
-beq $30,$0,L.2591
-la $4,L.2519
-move $5,$23
-jal printf
-L.2591:
-L.2589:
-b L.2593
-la $23,18
-beq $30,$0,L.2595
-la $4,L.2519
-move $5,$23
-jal printf
-L.2595:
-L.2593:
-b L.2597
-la $23,16
-beq $30,$0,L.2599
-la $4,L.2519
-move $5,$23
-jal printf
-L.2599:
-L.2597:
-b L.2601
-la $23,20
-beq $30,$0,L.2603
-la $4,L.2519
-move $5,$23
-jal printf
-L.2603:
-L.2601:
-b L.2605
-la $23,21
-beq $30,$0,L.2607
-la $4,L.2519
-move $5,$23
-jal printf
-L.2607:
-L.2605:
-b L.2609
-la $23,22
-beq $30,$0,L.2611
-la $4,L.2519
-move $5,$23
-jal printf
-L.2611:
-L.2609:
-b L.2613
-la $23,23
-beq $30,$0,L.2615
-la $4,L.2519
-move $5,$23
-jal printf
-L.2615:
-L.2613:
-b L.2617
-la $23,24
-beq $30,$0,L.2619
-la $4,L.2519
-move $5,$23
-jal printf
-L.2619:
-L.2617:
-b L.2621
-la $23,25
-beq $30,$0,L.2623
-la $4,L.2519
-move $5,$23
-jal printf
-L.2623:
-L.2621:
-b L.2625
-la $23,26
-beq $30,$0,L.2627
-la $4,L.2519
-move $5,$23
-jal printf
-L.2627:
-L.2625:
-b L.2629
-la $23,27
-beq $30,$0,L.2631
-la $4,L.2519
-move $5,$23
-jal printf
-L.2631:
-L.2629:
-b L.2633
-la $23,28
-beq $30,$0,L.2635
-la $4,L.2519
-move $5,$23
-jal printf
-L.2635:
-L.2633:
-b L.2637
-la $23,26
-beq $30,$0,L.2639
-la $4,L.2519
-move $5,$23
-jal printf
-L.2639:
-L.2637:
-b L.2641
-la $23,30
-beq $30,$0,L.2643
-la $4,L.2519
-move $5,$23
-jal printf
-L.2643:
-L.2641:
-b L.2645
-la $23,31
-beq $30,$0,L.2647
-la $4,L.2519
-move $5,$23
-jal printf
-L.2647:
-L.2645:
-b L.2649
-la $23,32
-beq $30,$0,L.2651
-la $4,L.2519
-move $5,$23
-jal printf
-L.2651:
-L.2649:
-b L.2653
-la $23,33
-beq $30,$0,L.2655
-la $4,L.2519
-move $5,$23
-jal printf
-L.2655:
-L.2653:
-b L.2657
-la $23,34
-beq $30,$0,L.2659
-la $4,L.2519
-move $5,$23
-jal printf
-L.2659:
-L.2657:
-b L.2661
-la $23,35
-beq $30,$0,L.2663
-la $4,L.2519
-move $5,$23
-jal printf
-L.2663:
-L.2661:
-b L.2665
-la $23,36
-beq $30,$0,L.2667
-la $4,L.2519
-move $5,$23
-jal printf
-L.2667:
-L.2665:
-b L.2669
-la $23,37
-beq $30,$0,L.2671
-la $4,L.2519
-move $5,$23
-jal printf
-L.2671:
-L.2669:
-b L.2673
-la $23,38
-beq $30,$0,L.2675
-la $4,L.2519
-move $5,$23
-jal printf
-L.2675:
-L.2673:
-b L.2677
-la $23,39
-beq $30,$0,L.2679
-la $4,L.2519
-move $5,$23
-jal printf
-L.2679:
-L.2677:
-b L.2681
-la $23,40
-beq $30,$0,L.2683
-la $4,L.2519
-move $5,$23
-jal printf
-L.2683:
-L.2681:
-b L.2685
-la $23,41
-beq $30,$0,L.2687
-la $4,L.2519
-move $5,$23
-jal printf
-L.2687:
-L.2685:
-b L.2689
-la $23,42
-beq $30,$0,L.2691
-la $4,L.2519
-move $5,$23
-jal printf
-L.2691:
-L.2689:
-b L.2693
-la $23,43
-beq $30,$0,L.2695
-la $4,L.2519
-move $5,$23
-jal printf
-L.2695:
-L.2693:
-b L.2697
-la $23,44
-beq $30,$0,L.2699
-la $4,L.2519
-move $5,$23
-jal printf
-L.2699:
-L.2697:
-b L.2701
-la $23,45
-beq $30,$0,L.2703
-la $4,L.2519
-move $5,$23
-jal printf
-L.2703:
-L.2701:
-b L.2705
-la $23,46
-beq $30,$0,L.2707
-la $4,L.2519
-move $5,$23
-jal printf
-L.2707:
-L.2705:
-b L.2709
-la $23,47
-beq $30,$0,L.2711
-la $4,L.2519
-move $5,$23
-jal printf
-L.2711:
-L.2709:
-b L.2713
-la $23,48
-beq $30,$0,L.2715
-la $4,L.2519
-move $5,$23
-jal printf
-L.2715:
-L.2713:
-b L.2717
-la $23,49
-beq $30,$0,L.2719
-la $4,L.2519
-move $5,$23
-jal printf
-L.2719:
-L.2717:
-b L.2721
-la $23,50
-beq $30,$0,L.2723
-la $4,L.2519
-move $5,$23
-jal printf
-L.2723:
-L.2721:
-b L.2725
-la $23,51
-beq $30,$0,L.2727
-la $4,L.2519
-move $5,$23
-jal printf
-L.2727:
-L.2725:
-b L.2729
-la $23,52
-beq $30,$0,L.2731
-la $4,L.2519
-move $5,$23
-jal printf
-L.2731:
-L.2729:
-b L.2733
-la $23,53
-beq $30,$0,L.2735
-la $4,L.2519
-move $5,$23
-jal printf
-L.2735:
-L.2733:
-b L.2737
-la $23,54
-beq $30,$0,L.2739
-la $4,L.2519
-move $5,$23
-jal printf
-L.2739:
-L.2737:
-b L.2741
-la $23,55
-beq $30,$0,L.2743
-la $4,L.2519
-move $5,$23
-jal printf
-L.2743:
-L.2741:
-b L.2745
-la $23,56
-beq $30,$0,L.2747
-la $4,L.2519
-move $5,$23
-jal printf
-L.2747:
-L.2745:
-b L.2749
-la $23,57
-beq $30,$0,L.2751
-la $4,L.2519
-move $5,$23
-jal printf
-L.2751:
-L.2749:
-b L.2753
-la $23,58
-beq $30,$0,L.2755
-la $4,L.2519
-move $5,$23
-jal printf
-L.2755:
-L.2753:
-b L.2757
-la $23,56
-beq $30,$0,L.2759
-la $4,L.2519
-move $5,$23
-jal printf
-L.2759:
-L.2757:
-b L.2761
-la $23,60
-beq $30,$0,L.2763
-la $4,L.2519
-move $5,$23
-jal printf
-L.2763:
-L.2761:
-b L.2765
-la $23,61
-beq $30,$0,L.2767
-la $4,L.2519
-move $5,$23
-jal printf
-L.2767:
-L.2765:
-b L.2769
-la $23,62
-beq $30,$0,L.2771
-la $4,L.2519
-move $5,$23
-jal printf
-L.2771:
-L.2769:
-b L.2773
-la $23,63
-beq $30,$0,L.2775
-la $4,L.2519
-move $5,$23
-jal printf
-L.2775:
-L.2773:
-b L.2777
-la $23,64
-beq $30,$0,L.2779
-la $4,L.2519
-move $5,$23
-jal printf
-L.2779:
-L.2777:
-b L.2781
-la $23,65
-beq $30,$0,L.2783
-la $4,L.2519
-move $5,$23
-jal printf
-L.2783:
-L.2781:
-b L.2785
-la $23,66
-beq $30,$0,L.2787
-la $4,L.2519
-move $5,$23
-jal printf
-L.2787:
-L.2785:
-b L.2789
-la $23,67
-beq $30,$0,L.2791
-la $4,L.2519
-move $5,$23
-jal printf
-L.2791:
-L.2789:
-b L.2793
-la $23,68
-beq $30,$0,L.2795
-la $4,L.2519
-move $5,$23
-jal printf
-L.2795:
-L.2793:
-b L.2797
-la $23,69
-beq $30,$0,L.2799
-la $4,L.2519
-move $5,$23
-jal printf
-L.2799:
-L.2797:
-b L.2801
-la $23,70
-beq $30,$0,L.2803
-la $4,L.2519
-move $5,$23
-jal printf
-L.2803:
-L.2801:
-b L.2805
-la $23,71
-beq $30,$0,L.2807
-la $4,L.2519
-move $5,$23
-jal printf
-L.2807:
-L.2805:
-b L.2809
-la $23,72
-beq $30,$0,L.2811
-la $4,L.2519
-move $5,$23
-jal printf
-L.2811:
-L.2809:
-b L.2813
-la $23,73
-beq $30,$0,L.2815
-la $4,L.2519
-move $5,$23
-jal printf
-L.2815:
-L.2813:
-b L.2817
-la $23,74
-beq $30,$0,L.2819
-la $4,L.2519
-move $5,$23
-jal printf
-L.2819:
-L.2817:
-b L.2821
-la $23,75
-beq $30,$0,L.2823
-la $4,L.2519
-move $5,$23
-jal printf
-L.2823:
-L.2821:
-beq $23,$0,L.2825
-lw $24,0+112($sp)
-lw $24,44($24)
-beq $24,$0,L.2827
-la $4,L.2520
-la $5,1
-jal printf
-L.2827:
-la $17,1($17)
-L.2825:
-move $23,$0
-move $21,$0
-move $22,$0
-move $24,$22
-la $22,1($24)
-move $15,$0
-beq $24,$15,L.2830
-move $24,$21
-la $21,1($24)
-beq $24,$15,L.2830
-la $24,1
-sw $24,-8+112($sp)
-b L.2831
-L.2830:
-sw $0,-8+112($sp)
-L.2831:
-lw $20,-8+112($sp)
-la $24,1
-beq $22,$24,L.2832
-la $23,1
-beq $30,$0,L.2834
-la $4,L.2519
-move $5,$23
-jal printf
-L.2834:
-L.2832:
-beq $21,$0,L.2836
-la $23,2
-beq $30,$0,L.2838
-la $4,L.2519
-move $5,$23
-jal printf
-L.2838:
-L.2836:
-beq $20,$0,L.2840
-la $23,3
-beq $30,$0,L.2842
-la $4,L.2519
-move $5,$23
-jal printf
-L.2842:
-L.2840:
-beq $22,$0,L.2845
-move $15,$21
-la $21,1($15)
-beq $15,$0,L.2845
-la $24,1
-sw $24,-12+112($sp)
-b L.2846
-L.2845:
-sw $0,-12+112($sp)
-L.2846:
-lw $20,-12+112($sp)
-la $24,1
-beq $22,$24,L.2847
-la $23,4
-beq $30,$0,L.2849
-la $4,L.2519
-move $5,$23
-jal printf
-L.2849:
-L.2847:
-la $24,1
-beq $21,$24,L.2851
-la $23,5
-beq $30,$0,L.2853
-la $4,L.2519
-move $5,$23
-jal printf
-L.2853:
-L.2851:
-beq $20,$0,L.2855
-la $23,6
-beq $30,$0,L.2857
-la $4,L.2519
-move $5,$23
-jal printf
-L.2857:
-L.2855:
-move $24,$22
-subu $22,$24,1
-move $15,$0
-beq $24,$15,L.2860
-beq $21,$15,L.2860
-la $24,1
-sw $24,-16+112($sp)
-b L.2861
-L.2860:
-sw $0,-16+112($sp)
-L.2861:
-lw $20,-16+112($sp)
-beq $22,$0,L.2862
-la $23,7
-beq $30,$0,L.2864
-la $4,L.2519
-move $5,$23
-jal printf
-L.2864:
-L.2862:
-la $24,1
-beq $21,$24,L.2866
-la $23,8
-beq $30,$0,L.2868
-la $4,L.2519
-move $5,$23
-jal printf
-L.2868:
-L.2866:
-la $24,1
-beq $20,$24,L.2870
-la $23,9
-beq $30,$0,L.2872
-la $4,L.2519
-move $5,$23
-jal printf
-L.2872:
-L.2870:
-beq $22,$0,L.2875
-move $15,$21
-subu $21,$15,1
-beq $15,$0,L.2875
-la $24,1
-sw $24,-20+112($sp)
-b L.2876
-L.2875:
-sw $0,-20+112($sp)
-L.2876:
-lw $20,-20+112($sp)
-beq $22,$0,L.2877
-la $23,10
-beq $30,$0,L.2879
-la $4,L.2519
-move $5,$23
-jal printf
-L.2879:
-L.2877:
-la $24,1
-beq $21,$24,L.2881
-la $23,11
-beq $30,$0,L.2883
-la $4,L.2519
-move $5,$23
-jal printf
-L.2883:
-L.2881:
-beq $20,$0,L.2885
-la $23,12
-beq $30,$0,L.2887
-la $4,L.2519
-move $5,$23
-jal printf
-L.2887:
-L.2885:
-beq $23,$0,L.2889
-lw $24,0+112($sp)
-lw $24,44($24)
-beq $24,$0,L.2891
-la $4,L.2520
-la $5,2
-jal printf
-L.2891:
-la $17,2($17)
-L.2889:
-move $23,$0
-move $21,$0
-move $22,$0
-move $24,$22
-la $22,1($24)
-move $15,$0
-bne $24,$15,L.2896
-beq $21,$15,L.2894
-L.2896:
-la $24,1
-sw $24,-24+112($sp)
-b L.2895
-L.2894:
-sw $0,-24+112($sp)
-L.2895:
-lw $20,-24+112($sp)
-la $24,1
-beq $22,$24,L.2897
-la $23,1
-beq $30,$0,L.2899
-la $4,L.2519
-move $5,$23
-jal printf
-L.2899:
-L.2897:
-beq $21,$0,L.2901
-la $23,2
-beq $30,$0,L.2903
-la $4,L.2519
-move $5,$23
-jal printf
-L.2903:
-L.2901:
-beq $20,$0,L.2905
-la $23,3
-beq $30,$0,L.2907
-la $4,L.2519
-move $5,$23
-jal printf
-L.2907:
-L.2905:
-move $24,$21
-la $21,1($24)
-move $15,$0
-bne $24,$15,L.2912
-beq $22,$15,L.2910
-L.2912:
-la $24,1
-sw $24,-28+112($sp)
-b L.2911
-L.2910:
-sw $0,-28+112($sp)
-L.2911:
-lw $20,-28+112($sp)
-la $24,1
-beq $22,$24,L.2913
-la $23,4
-beq $30,$0,L.2915
-la $4,L.2519
-move $5,$23
-jal printf
-L.2915:
-L.2913:
-la $24,1
-beq $21,$24,L.2917
-la $23,5
-beq $30,$0,L.2919
-la $4,L.2519
-move $5,$23
-jal printf
-L.2919:
-L.2917:
-la $24,1
-beq $20,$24,L.2921
-la $23,6
-beq $30,$0,L.2923
-la $4,L.2519
-move $5,$23
-jal printf
-L.2923:
-L.2921:
-move $24,$22
-subu $22,$24,1
-move $15,$0
-bne $24,$15,L.2928
-move $24,$21
-subu $21,$24,1
-beq $24,$15,L.2926
-L.2928:
-la $24,1
-sw $24,-32+112($sp)
-b L.2927
-L.2926:
-sw $0,-32+112($sp)
-L.2927:
-lw $20,-32+112($sp)
-beq $22,$0,L.2929
-la $23,7
-beq $30,$0,L.2931
-la $4,L.2519
-move $5,$23
-jal printf
-L.2931:
-L.2929:
-la $24,1
-beq $21,$24,L.2933
-la $23,8
-beq $30,$0,L.2935
-la $4,L.2519
-move $5,$23
-jal printf
-L.2935:
-L.2933:
-la $24,1
-beq $20,$24,L.2937
-la $23,9
-beq $30,$0,L.2939
-la $4,L.2519
-move $5,$23
-jal printf
-L.2939:
-L.2937:
-move $24,$0
-bne $22,$24,L.2944
-move $15,$21
-subu $21,$15,1
-beq $15,$24,L.2942
-L.2944:
-la $24,1
-sw $24,-36+112($sp)
-b L.2943
-L.2942:
-sw $0,-36+112($sp)
-L.2943:
-lw $20,-36+112($sp)
-beq $22,$0,L.2945
-la $23,10
-beq $30,$0,L.2947
-la $4,L.2519
-move $5,$23
-jal printf
-L.2947:
-L.2945:
-beq $21,$0,L.2949
-la $23,11
-beq $30,$0,L.2951
-la $4,L.2519
-move $5,$23
-jal printf
-L.2951:
-L.2949:
-la $24,1
-beq $20,$24,L.2953
-la $23,12
-beq $30,$0,L.2955
-la $4,L.2519
-move $5,$23
-jal printf
-L.2955:
-L.2953:
-beq $23,$0,L.2957
-lw $24,0+112($sp)
-lw $24,44($24)
-beq $24,$0,L.2959
-la $4,L.2520
-la $5,4
-jal printf
-L.2959:
-la $17,4($17)
-L.2957:
-move $24,$0
-move $21,$24
-move $22,$24
-move $16,$24
-la $15,1
-sw $15,-4+112($sp)
-lw $15,-4+112($sp)
-beq $15,$24,L.2963
-sw $16,-40+112($sp)
-b L.2964
-L.2963:
-lw $24,-4+112($sp)
-beq $24,$0,L.2965
-move $24,$22
-la $22,1($24)
-sw $24,-44+112($sp)
-b L.2966
-L.2965:
-move $24,$21
-la $21,1($24)
-sw $24,-44+112($sp)
-L.2966:
-lw $24,-44+112($sp)
-sw $24,-40+112($sp)
-L.2964:
-lw $20,-40+112($sp)
-bne $20,$0,L.2970
-bne $22,$0,L.2970
-beq $21,$0,L.2967
-L.2970:
-lw $24,0+112($sp)
-lw $24,44($24)
-beq $24,$0,L.2971
-la $4,L.2520
-la $5,8
-jal printf
-L.2971:
-la $17,8($17)
-L.2967:
-lw $24,-4+112($sp)
-beq $24,$0,L.2978
-sw $16,-48+112($sp)
-b L.2979
-L.2978:
-la $24,1
-sw $24,-48+112($sp)
-L.2979:
-lw $15,-48+112($sp)
-bne $15,$0,L.2977
-beq $16,$0,L.2980
-la $24,1
-sw $24,-52+112($sp)
-b L.2981
-L.2980:
-sw $16,-52+112($sp)
-L.2981:
-lw $24,-52+112($sp)
-beq $24,$0,L.2973
-L.2977:
-lw $24,0+112($sp)
-lw $24,44($24)
-beq $24,$0,L.2982
-la $4,L.2520
-la $5,16
-jal printf
-L.2982:
-la $17,16($17)
-L.2973:
-move $2,$17
-L.2518:
-lw $16,16($sp)
-lw $17,20($sp)
-lw $18,24($sp)
-lw $19,28($sp)
-lw $20,32($sp)
-lw $21,36($sp)
-lw $22,40($sp)
-lw $23,44($sp)
-lw $25,48($sp)
-lw $30,52($sp)
-lw $31,56($sp)
-addu $sp,$sp,112
-j $31
-.end s7813
-.data
-.align 0
-L.2985:
-.byte 115
-.byte 56
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.2986:
-.byte 115
-.byte 56
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.data
-.align 0
-L.2987:
-.byte 82
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 117
-.byte 110
-.byte 114
-.byte 101
-.byte 108
-.byte 105
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.data
-.align 0
-L.2988:
-.byte 37
-.byte 100
-.byte 32
-.byte 114
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 118
-.byte 97
-.byte 114
-.byte 105
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.globl s81
-.text
-.text
-.align 2
-.ent s81
-s81:
-.frame $sp,80,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-80
-.mask 0xc2ff0000,-24
-sw $16,16($sp)
-sw $17,20($sp)
-sw $18,24($sp)
-sw $19,28($sp)
-sw $20,32($sp)
-sw $21,36($sp)
-sw $22,40($sp)
-sw $23,44($sp)
-.cprestore 48
-sw $30,52($sp)
-sw $31,56($sp)
-sw $4,80($sp)
-sw $0,-20+80($sp)
-sw $0,-8+80($sp)
-sw $0,-12+80($sp)
-sw $0,-16+80($sp)
-la $17,L.2986
-lw $24,0+80($sp)
-la $16,60($24)
-L.2989:
-L.2990:
-move $24,$16
-la $16,1($24)
-move $15,$17
-la $17,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.2989
-la $24,1
-sw $24,-4+80($sp)
-move $21,$0
-L.2992:
-lw $24,-4+80($sp)
-move $15,$24
-move $30,$15
-move $20,$15
-la $23,-4+80($sp)
-la $19,-4+80($sp)
-move $22,$24
-move $18,$24
-sll $24,$30,8*(4-1); sra $24,$24,8*(4-1)
-sll $15,$20,8*(4-1); sra $15,$15,8*(4-1)
-beq $24,$15,L.2996
-la $24,1
-sw $24,-8+80($sp)
-L.2996:
-move $24,$23
-move $15,$19
-beq $24,$15,L.2998
-la $24,1
-sw $24,-12+80($sp)
-L.2998:
-beq $22,$18,L.3000
-la $24,1
-sw $24,-16+80($sp)
-L.3000:
-lw $24,-4+80($sp)
-sll $24,$24,1
-sw $24,-4+80($sp)
-L.2993:
-la $21,1($21)
-la $24,50
-blt $21,$24,L.2992
-lw $24,-8+80($sp)
-beq $24,$0,L.3002
-lw $24,-20+80($sp)
-la $24,1($24)
-sw $24,-20+80($sp)
-lw $24,0+80($sp)
-lw $24,44($24)
-beq $24,$0,L.3004
-la $4,L.2985
-la $5,1
-jal printf
-L.3004:
-L.3002:
-lw $24,-12+80($sp)
-beq $24,$0,L.3006
-lw $24,-20+80($sp)
-la $24,2($24)
-sw $24,-20+80($sp)
-lw $24,0+80($sp)
-lw $24,44($24)
-beq $24,$0,L.3008
-la $4,L.2985
-la $5,2
-jal printf
-L.3008:
-L.3006:
-lw $24,-16+80($sp)
-beq $24,$0,L.3010
-lw $24,-20+80($sp)
-la $24,4($24)
-sw $24,-20+80($sp)
-lw $24,0+80($sp)
-lw $24,44($24)
-beq $24,$0,L.3012
-la $4,L.2985
-la $5,4
-jal printf
-L.3012:
-L.3010:
-jal regc
-sw $2,-4+80($sp)
-lw $24,0+80($sp)
-lw $24,40($24)
-beq $24,$0,L.3014
-lw $24,-4+80($sp)
-bge $24,$0,L.3016
-la $4,L.2987
-la $5,L.425
-jal printf
-b L.3017
-L.3016:
-la $4,L.2988
-lw $5,-4+80($sp)
-la $6,L.425
-jal printf
-L.3017:
-L.3014:
-jal regp
-sw $2,-4+80($sp)
-lw $24,0+80($sp)
-lw $24,40($24)
-beq $24,$0,L.3018
-lw $24,-4+80($sp)
-bge $24,$0,L.3020
-la $4,L.2987
-la $5,L.3022
-jal printf
-b L.3021
-L.3020:
-la $4,L.2988
-lw $5,-4+80($sp)
-la $6,L.3022
-jal printf
-L.3021:
-L.3018:
-jal regi
-sw $2,-4+80($sp)
-lw $24,0+80($sp)
-lw $24,40($24)
-beq $24,$0,L.3023
-lw $24,-4+80($sp)
-bge $24,$0,L.3025
-la $4,L.2987
-la $5,L.426
-jal printf
-b L.3026
-L.3025:
-la $4,L.2988
-lw $5,-4+80($sp)
-la $6,L.426
-jal printf
-L.3026:
-L.3023:
-lw $2,-20+80($sp)
-L.2984:
-lw $16,16($sp)
-lw $17,20($sp)
-lw $18,24($sp)
-lw $19,28($sp)
-lw $20,32($sp)
-lw $21,36($sp)
-lw $22,40($sp)
-lw $23,44($sp)
-lw $25,48($sp)
-lw $30,52($sp)
-lw $31,56($sp)
-addu $sp,$sp,80
-j $31
-.end s81
-.globl regc
-.text
-.align 2
-.ent regc
-regc:
-.frame $sp,176,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-176
-.mask 0x40ff0000,-144
-sw $16,0($sp)
-sw $17,4($sp)
-sw $18,8($sp)
-sw $19,12($sp)
-sw $20,16($sp)
-sw $21,20($sp)
-sw $22,24($sp)
-sw $23,28($sp)
-sw $30,32($sp)
-sb $0,-130+176($sp)
-la $24,1
-sb $24,-109+176($sp)
-la $24,2
-sb $24,-110+176($sp)
-la $24,3
-sb $24,-111+176($sp)
-la $30,4
-la $24,5
-sb $24,-112+176($sp)
-la $23,6
-la $24,7
-sb $24,-113+176($sp)
-la $22,8
-la $24,9
-sb $24,-114+176($sp)
-la $21,10
-la $24,11
-sb $24,-115+176($sp)
-la $20,12
-la $24,13
-sb $24,-116+176($sp)
-la $19,14
-la $24,15
-sb $24,-117+176($sp)
-la $18,16
-la $24,17
-sb $24,-118+176($sp)
-la $17,18
-la $24,19
-sb $24,-119+176($sp)
-la $16,20
-la $24,21
-sb $24,-120+176($sp)
-la $24,22
-sb $24,-1+176($sp)
-la $24,23
-sb $24,-121+176($sp)
-la $24,24
-sb $24,-2+176($sp)
-la $24,25
-sb $24,-122+176($sp)
-la $24,26
-sb $24,-3+176($sp)
-la $24,27
-sb $24,-123+176($sp)
-la $24,28
-sb $24,-4+176($sp)
-la $24,29
-sb $24,-124+176($sp)
-la $24,30
-sb $24,-5+176($sp)
-la $24,31
-sb $24,-125+176($sp)
-la $24,32
-sb $24,-6+176($sp)
-la $24,33
-sb $24,-126+176($sp)
-la $24,34
-sb $24,-7+176($sp)
-la $24,35
-sb $24,-127+176($sp)
-la $24,36
-sb $24,-128+176($sp)
-la $24,37
-sb $24,-129+176($sp)
-la $24,38
-sb $24,-131+176($sp)
-la $24,-109+176($sp)
-la $15,-130+176($sp)
-subu $15,$24,$15
-sw $15,-96+176($sp)
-la $15,-110+176($sp)
-subu $24,$15,$24
-sw $24,-92+176($sp)
-la $24,-111+176($sp)
-la $15,-110+176($sp)
-subu $24,$24,$15
-sw $24,-88+176($sp)
-la $24,-112+176($sp)
-la $15,-111+176($sp)
-subu $24,$24,$15
-sw $24,-84+176($sp)
-la $24,-113+176($sp)
-la $15,-112+176($sp)
-subu $24,$24,$15
-sw $24,-80+176($sp)
-la $24,-114+176($sp)
-la $15,-113+176($sp)
-subu $24,$24,$15
-sw $24,-76+176($sp)
-la $24,-115+176($sp)
-la $15,-114+176($sp)
-subu $24,$24,$15
-sw $24,-72+176($sp)
-la $24,-116+176($sp)
-la $15,-115+176($sp)
-subu $24,$24,$15
-sw $24,-68+176($sp)
-la $24,-117+176($sp)
-la $15,-116+176($sp)
-subu $24,$24,$15
-sw $24,-64+176($sp)
-la $24,-118+176($sp)
-la $15,-117+176($sp)
-subu $24,$24,$15
-sw $24,-60+176($sp)
-la $24,-119+176($sp)
-la $15,-118+176($sp)
-subu $24,$24,$15
-sw $24,-56+176($sp)
-la $24,-120+176($sp)
-la $15,-119+176($sp)
-subu $24,$24,$15
-sw $24,-52+176($sp)
-la $24,-121+176($sp)
-la $15,-120+176($sp)
-subu $24,$24,$15
-sw $24,-48+176($sp)
-la $24,-122+176($sp)
-la $15,-121+176($sp)
-subu $24,$24,$15
-sw $24,-44+176($sp)
-la $24,-123+176($sp)
-la $15,-122+176($sp)
-subu $24,$24,$15
-sw $24,-40+176($sp)
-la $24,-124+176($sp)
-la $15,-123+176($sp)
-subu $24,$24,$15
-sw $24,-36+176($sp)
-la $24,-125+176($sp)
-la $15,-124+176($sp)
-subu $24,$24,$15
-sw $24,-32+176($sp)
-la $24,-126+176($sp)
-la $15,-125+176($sp)
-subu $24,$24,$15
-sw $24,-28+176($sp)
-la $24,-127+176($sp)
-la $15,-126+176($sp)
-subu $24,$24,$15
-sw $24,-24+176($sp)
-la $24,-128+176($sp)
-la $15,-127+176($sp)
-subu $24,$24,$15
-sw $24,-20+176($sp)
-la $24,-129+176($sp)
-la $15,-128+176($sp)
-subu $24,$24,$15
-sw $24,-16+176($sp)
-la $24,-131+176($sp)
-la $15,-129+176($sp)
-subu $24,$24,$15
-sw $24,-12+176($sp)
-lw $24,-96+176($sp)
-sw $24,-108+176($sp)
-la $24,1
-sw $24,-104+176($sp)
-sw $0,-100+176($sp)
-L.3049:
-lw $24,-104+176($sp)
-la $15,1
-beq $24,$15,L.3055
-la $15,2
-beq $24,$15,L.3058
-la $15,3
-beq $24,$15,L.3063
-b L.3053
-L.3055:
-lw $24,-100+176($sp)
-sll $24,$24,2
-la $15,-96+176($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-108+176($sp)
-beq $24,$15,L.3054
-la $24,2
-lw $15,-100+176($sp)
-sll $15,$15,2
-la $14,-96+176($sp)
-addu $15,$15,$14
-lw $15,($15)
-sw $15,-140+176($sp)
-sw $24,-104+176($sp)
-la $24,1
-sw $24,-136+176($sp)
-b L.3054
-L.3058:
-lw $24,-100+176($sp)
-sll $24,$24,2
-la $15,-96+176($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-108+176($sp)
-bne $24,$15,L.3059
-la $24,3
-sw $24,-104+176($sp)
-b L.3054
-L.3059:
-lw $24,-100+176($sp)
-sll $24,$24,2
-la $15,-96+176($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-140+176($sp)
-bne $24,$15,L.3061
-lw $24,-136+176($sp)
-la $24,1($24)
-sw $24,-136+176($sp)
-b L.3054
-L.3061:
-la $24,4
-sw $24,-104+176($sp)
-b L.3054
-L.3063:
-lw $24,-100+176($sp)
-sll $24,$24,2
-la $15,-96+176($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-108+176($sp)
-beq $24,$15,L.3054
-la $24,4
-sw $24,-104+176($sp)
-L.3053:
-L.3054:
-L.3050:
-lw $24,-100+176($sp)
-la $24,1($24)
-sw $24,-100+176($sp)
-lw $24,-100+176($sp)
-la $15,22
-blt $24,$15,L.3049
-lw $24,-104+176($sp)
-la $15,3
-bne $24,$15,L.3066
-la $24,16
-lw $15,-136+176($sp)
-subu $2,$24,$15
-b L.3027
-L.3066:
-la $2,-1
-L.3027:
-lw $16,0($sp)
-lw $17,4($sp)
-lw $18,8($sp)
-lw $19,12($sp)
-lw $20,16($sp)
-lw $21,20($sp)
-lw $22,24($sp)
-lw $23,28($sp)
-lw $30,32($sp)
-addu $sp,$sp,176
-j $31
-.end regc
-.globl regi
-.text
-.align 2
-.ent regi
-regi:
-.frame $sp,264,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-264
-.mask 0x40ff0000,-232
-sw $16,0($sp)
-sw $17,4($sp)
-sw $18,8($sp)
-sw $19,12($sp)
-sw $20,16($sp)
-sw $21,20($sp)
-sw $22,24($sp)
-sw $23,28($sp)
-sw $30,32($sp)
-sw $0,-216+264($sp)
-la $24,1
-sw $24,-132+264($sp)
-la $24,2
-sw $24,-136+264($sp)
-la $24,3
-sw $24,-140+264($sp)
-la $30,4
-la $24,5
-sw $24,-144+264($sp)
-la $23,6
-la $24,7
-sw $24,-148+264($sp)
-la $22,8
-la $24,9
-sw $24,-152+264($sp)
-la $21,10
-la $24,11
-sw $24,-156+264($sp)
-la $20,12
-la $24,13
-sw $24,-160+264($sp)
-la $19,14
-la $24,15
-sw $24,-164+264($sp)
-la $18,16
-la $24,17
-sw $24,-168+264($sp)
-la $17,18
-la $24,19
-sw $24,-172+264($sp)
-la $16,20
-la $24,21
-sw $24,-176+264($sp)
-la $24,22
-sw $24,-4+264($sp)
-la $24,23
-sw $24,-180+264($sp)
-la $24,24
-sw $24,-8+264($sp)
-la $24,25
-sw $24,-184+264($sp)
-la $24,26
-sw $24,-12+264($sp)
-la $24,27
-sw $24,-188+264($sp)
-la $24,28
-sw $24,-16+264($sp)
-la $24,29
-sw $24,-192+264($sp)
-la $24,30
-sw $24,-20+264($sp)
-la $24,31
-sw $24,-196+264($sp)
-la $24,32
-sw $24,-24+264($sp)
-la $24,33
-sw $24,-200+264($sp)
-la $24,34
-sw $24,-28+264($sp)
-la $24,35
-sw $24,-204+264($sp)
-la $24,36
-sw $24,-208+264($sp)
-la $24,37
-sw $24,-212+264($sp)
-la $24,38
-sw $24,-220+264($sp)
-la $24,-132+264($sp)
-la $15,4
-la $14,-216+264($sp)
-subu $14,$24,$14
-div $14,$14,$15
-sw $14,-116+264($sp)
-la $14,-136+264($sp)
-subu $24,$14,$24
-div $24,$24,$15
-sw $24,-112+264($sp)
-la $24,-140+264($sp)
-la $15,-136+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-108+264($sp)
-la $24,-144+264($sp)
-la $15,-140+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-104+264($sp)
-la $24,-148+264($sp)
-la $15,-144+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-100+264($sp)
-la $24,-152+264($sp)
-la $15,-148+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-96+264($sp)
-la $24,-156+264($sp)
-la $15,-152+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-92+264($sp)
-la $24,-160+264($sp)
-la $15,-156+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-88+264($sp)
-la $24,-164+264($sp)
-la $15,-160+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-84+264($sp)
-la $24,-168+264($sp)
-la $15,-164+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-80+264($sp)
-la $24,-172+264($sp)
-la $15,-168+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-76+264($sp)
-la $24,-176+264($sp)
-la $15,-172+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-72+264($sp)
-la $24,-180+264($sp)
-la $15,-176+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-68+264($sp)
-la $24,-184+264($sp)
-la $15,-180+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-64+264($sp)
-la $24,-188+264($sp)
-la $15,-184+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-60+264($sp)
-la $24,-192+264($sp)
-la $15,-188+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-56+264($sp)
-la $24,-196+264($sp)
-la $15,-192+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-52+264($sp)
-la $24,-200+264($sp)
-la $15,-196+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-48+264($sp)
-la $24,-204+264($sp)
-la $15,-200+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-44+264($sp)
-la $24,-208+264($sp)
-la $15,-204+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-40+264($sp)
-la $24,-212+264($sp)
-la $15,-208+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-36+264($sp)
-la $24,-220+264($sp)
-la $15,-212+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-32+264($sp)
-lw $24,-116+264($sp)
-sw $24,-128+264($sp)
-la $24,1
-sw $24,-124+264($sp)
-sw $0,-120+264($sp)
-L.3090:
-lw $24,-124+264($sp)
-la $15,1
-beq $24,$15,L.3096
-la $15,2
-beq $24,$15,L.3099
-la $15,3
-beq $24,$15,L.3104
-b L.3094
-L.3096:
-lw $24,-120+264($sp)
-sll $24,$24,2
-la $15,-116+264($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-128+264($sp)
-beq $24,$15,L.3095
-la $24,2
-lw $15,-120+264($sp)
-sll $15,$15,2
-la $14,-116+264($sp)
-addu $15,$15,$14
-lw $15,($15)
-sw $15,-228+264($sp)
-sw $24,-124+264($sp)
-la $24,1
-sw $24,-224+264($sp)
-b L.3095
-L.3099:
-lw $24,-120+264($sp)
-sll $24,$24,2
-la $15,-116+264($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-128+264($sp)
-bne $24,$15,L.3100
-la $24,3
-sw $24,-124+264($sp)
-b L.3095
-L.3100:
-lw $24,-120+264($sp)
-sll $24,$24,2
-la $15,-116+264($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-228+264($sp)
-bne $24,$15,L.3102
-lw $24,-224+264($sp)
-la $24,1($24)
-sw $24,-224+264($sp)
-b L.3095
-L.3102:
-la $24,4
-sw $24,-124+264($sp)
-b L.3095
-L.3104:
-lw $24,-120+264($sp)
-sll $24,$24,2
-la $15,-116+264($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-128+264($sp)
-beq $24,$15,L.3095
-la $24,4
-sw $24,-124+264($sp)
-L.3094:
-L.3095:
-L.3091:
-lw $24,-120+264($sp)
-la $24,1($24)
-sw $24,-120+264($sp)
-lw $24,-120+264($sp)
-la $15,22
-blt $24,$15,L.3090
-lw $24,-124+264($sp)
-la $15,3
-bne $24,$15,L.3107
-la $24,16
-lw $15,-224+264($sp)
-subu $2,$24,$15
-b L.3068
-L.3107:
-la $2,-1
-L.3068:
-lw $16,0($sp)
-lw $17,4($sp)
-lw $18,8($sp)
-lw $19,12($sp)
-lw $20,16($sp)
-lw $21,20($sp)
-lw $22,24($sp)
-lw $23,28($sp)
-lw $30,32($sp)
-addu $sp,$sp,264
-j $31
-.end regi
-.globl regp
-.text
-.align 2
-.ent regp
-regp:
-.frame $sp,264,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-264
-.mask 0x40ff0000,-232
-sw $16,0($sp)
-sw $17,4($sp)
-sw $18,8($sp)
-sw $19,12($sp)
-sw $20,16($sp)
-sw $21,20($sp)
-sw $22,24($sp)
-sw $23,28($sp)
-sw $30,32($sp)
-la $24,-216+264($sp)
-sw $24,-216+264($sp)
-la $24,-192+264($sp)
-sw $24,-192+264($sp)
-la $24,-196+264($sp)
-sw $24,-196+264($sp)
-la $24,-200+264($sp)
-sw $24,-200+264($sp)
-la $30,-128+264($sp)
-la $24,-128+264($sp)
-sw $24,-128+264($sp)
-la $23,-132+264($sp)
-la $24,-132+264($sp)
-sw $24,-132+264($sp)
-la $22,-136+264($sp)
-la $24,-136+264($sp)
-sw $24,-136+264($sp)
-la $21,-140+264($sp)
-la $24,-140+264($sp)
-sw $24,-140+264($sp)
-la $20,-144+264($sp)
-la $24,-144+264($sp)
-sw $24,-144+264($sp)
-la $19,-148+264($sp)
-la $24,-148+264($sp)
-sw $24,-148+264($sp)
-la $18,-152+264($sp)
-la $24,-152+264($sp)
-sw $24,-152+264($sp)
-la $17,-156+264($sp)
-la $24,-156+264($sp)
-sw $24,-156+264($sp)
-la $16,-160+264($sp)
-la $24,-160+264($sp)
-sw $24,-160+264($sp)
-la $24,-164+264($sp)
-sw $24,-4+264($sp)
-la $24,-164+264($sp)
-sw $24,-164+264($sp)
-la $24,-168+264($sp)
-sw $24,-8+264($sp)
-la $24,-168+264($sp)
-sw $24,-168+264($sp)
-la $24,-172+264($sp)
-sw $24,-12+264($sp)
-la $24,-172+264($sp)
-sw $24,-172+264($sp)
-la $24,-176+264($sp)
-sw $24,-16+264($sp)
-la $24,-176+264($sp)
-sw $24,-176+264($sp)
-la $24,-180+264($sp)
-sw $24,-20+264($sp)
-la $24,-180+264($sp)
-sw $24,-180+264($sp)
-la $24,-184+264($sp)
-sw $24,-24+264($sp)
-la $24,-184+264($sp)
-sw $24,-184+264($sp)
-la $24,-188+264($sp)
-sw $24,-28+264($sp)
-la $24,-188+264($sp)
-sw $24,-188+264($sp)
-la $24,-204+264($sp)
-sw $24,-204+264($sp)
-la $24,-208+264($sp)
-sw $24,-208+264($sp)
-la $24,-220+264($sp)
-sw $24,-220+264($sp)
-la $24,-192+264($sp)
-la $15,4
-la $14,-216+264($sp)
-subu $14,$24,$14
-div $14,$14,$15
-sw $14,-116+264($sp)
-la $14,-196+264($sp)
-subu $24,$14,$24
-div $24,$24,$15
-sw $24,-112+264($sp)
-la $24,-200+264($sp)
-la $15,-196+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-108+264($sp)
-la $24,-128+264($sp)
-la $15,-200+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-104+264($sp)
-la $24,-132+264($sp)
-la $15,-128+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-100+264($sp)
-la $24,-136+264($sp)
-la $15,-132+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-96+264($sp)
-la $24,-140+264($sp)
-la $15,-136+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-92+264($sp)
-la $24,-144+264($sp)
-la $15,-140+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-88+264($sp)
-la $24,-148+264($sp)
-la $15,-144+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-84+264($sp)
-la $24,-152+264($sp)
-la $15,-148+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-80+264($sp)
-la $24,-156+264($sp)
-la $15,-152+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-76+264($sp)
-la $24,-160+264($sp)
-la $15,-156+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-72+264($sp)
-la $24,-164+264($sp)
-la $15,-160+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-68+264($sp)
-la $24,-168+264($sp)
-la $15,-164+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-64+264($sp)
-la $24,-172+264($sp)
-la $15,-168+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-60+264($sp)
-la $24,-176+264($sp)
-la $15,-172+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-56+264($sp)
-la $24,-180+264($sp)
-la $15,-176+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-52+264($sp)
-la $24,-184+264($sp)
-la $15,-180+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-48+264($sp)
-la $24,-188+264($sp)
-la $15,-184+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-44+264($sp)
-la $24,-204+264($sp)
-la $15,-188+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-40+264($sp)
-la $24,-208+264($sp)
-la $15,-204+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-36+264($sp)
-la $24,-220+264($sp)
-la $15,-208+264($sp)
-subu $24,$24,$15
-la $15,4
-div $24,$24,$15
-sw $24,-32+264($sp)
-lw $24,-116+264($sp)
-sw $24,-212+264($sp)
-la $24,1
-sw $24,-124+264($sp)
-sw $0,-120+264($sp)
-L.3131:
-lw $24,-124+264($sp)
-la $15,1
-beq $24,$15,L.3137
-la $15,2
-beq $24,$15,L.3140
-la $15,3
-beq $24,$15,L.3145
-b L.3135
-L.3137:
-lw $24,-120+264($sp)
-sll $24,$24,2
-la $15,-116+264($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-212+264($sp)
-beq $24,$15,L.3136
-la $24,2
-lw $15,-120+264($sp)
-sll $15,$15,2
-la $14,-116+264($sp)
-addu $15,$15,$14
-lw $15,($15)
-sw $15,-228+264($sp)
-sw $24,-124+264($sp)
-la $24,1
-sw $24,-224+264($sp)
-b L.3136
-L.3140:
-lw $24,-120+264($sp)
-sll $24,$24,2
-la $15,-116+264($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-212+264($sp)
-bne $24,$15,L.3141
-la $24,3
-sw $24,-124+264($sp)
-b L.3136
-L.3141:
-lw $24,-120+264($sp)
-sll $24,$24,2
-la $15,-116+264($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-228+264($sp)
-bne $24,$15,L.3143
-lw $24,-224+264($sp)
-la $24,1($24)
-sw $24,-224+264($sp)
-b L.3136
-L.3143:
-la $24,4
-sw $24,-124+264($sp)
-b L.3136
-L.3145:
-lw $24,-120+264($sp)
-sll $24,$24,2
-la $15,-116+264($sp)
-addu $24,$24,$15
-lw $24,($24)
-lw $15,-212+264($sp)
-beq $24,$15,L.3136
-la $24,4
-sw $24,-124+264($sp)
-L.3135:
-L.3136:
-L.3132:
-lw $24,-120+264($sp)
-la $24,1($24)
-sw $24,-120+264($sp)
-lw $24,-120+264($sp)
-la $15,22
-blt $24,$15,L.3131
-lw $24,-124+264($sp)
-la $15,3
-bne $24,$15,L.3148
-la $24,16
-lw $15,-224+264($sp)
-subu $2,$24,$15
-b L.3109
-L.3148:
-la $2,-1
-L.3109:
-lw $16,0($sp)
-lw $17,4($sp)
-lw $18,8($sp)
-lw $19,12($sp)
-lw $20,16($sp)
-lw $21,20($sp)
-lw $22,24($sp)
-lw $23,28($sp)
-lw $30,32($sp)
-addu $sp,$sp,264
-j $31
-.end regp
-.lcomm L.3151,420
-.data
-.align 0
-L.3152:
-.byte 115
-.byte 56
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.3153:
-.byte 115
-.byte 56
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s84
-.text
-.text
-.align 2
-.ent s84
-s84:
-.frame $sp,216,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-216
-.fmask 0xc0000000,-200
-.mask 0xc2fc0000,-160
-s.d $f30,16($sp)
-sw $18,24($sp)
-sw $19,28($sp)
-sw $20,32($sp)
-sw $21,36($sp)
-sw $22,40($sp)
-sw $23,44($sp)
-.cprestore 48
-sw $30,52($sp)
-sw $31,56($sp)
-move $30,$4
-la $20,L.3153
-la $19,60($30)
-move $18,$0
-L.3154:
-L.3155:
-move $24,$19
-la $19,1($24)
-move $15,$20
-la $20,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.3154
-la $4,3
-jal fip
-sw $2,-140+216($sp)
-lw $24,-140+216($sp)
-lw $24,($24)
-la $15,3
-beq $24,$15,L.3157
-lw $24,44($30)
-beq $24,$0,L.3159
-la $4,L.3152
-la $5,1
-jal printf
-L.3159:
-la $18,1($18)
-L.3157:
-la $24,glork
-sw $24,-144+216($sp)
-la $4,4
-lw $25,-144+216($sp)
-jal $25
-la $15,4
-beq $2,$15,L.3161
-lw $24,44($30)
-beq $24,$0,L.3163
-la $4,L.3152
-la $5,2
-jal printf
-L.3163:
-la $18,2($18)
-L.3161:
-move $22,$0
-L.3165:
-sll $24,$22,2
-la $15,-68+216($sp)
-addu $24,$24,$15
-mtc1 $22,$f18; cvt.s.w $f18,$f18
-s.s $f18,($24)
-sll $24,$22,2
-la $15,-136+216($sp)
-addu $15,$24,$15
-la $14,-68+216($sp)
-addu $24,$24,$14
-sw $24,($15)
-L.3166:
-la $22,1($22)
-la $24,17
-blt $22,$24,L.3165
-l.s $f30,L.412
-move $22,$0
-L.3169:
-sll $24,$22,2
-la $15,-136+216($sp)
-addu $24,$24,$15
-lw $24,($24)
-l.s $f18,($24)
-add.s $f30,$f30,$f18
-L.3170:
-la $22,1($22)
-la $24,17
-blt $22,$24,L.3169
-l.s $f18,L.3175
-c.eq.s $f30,$f18; bc1t L.3173
-lw $24,44($30)
-beq $24,$0,L.3176
-la $4,L.3152
-la $5,4
-jal printf
-L.3176:
-la $18,4($18)
-L.3173:
-move $21,$0
-L.3178:
-move $22,$0
-L.3182:
-move $23,$0
-L.3186:
-sll $24,$23,2
-la $15,28
-mul $15,$15,$22
-la $14,140
-mul $14,$14,$21
-la $14,L.3151($14)
-addu $15,$15,$14
-addu $24,$24,$15
-la $15,35
-mul $15,$15,$21
-la $14,7
-mul $14,$14,$22
-addu $15,$15,$14
-addu $15,$15,$23
-sw $15,($24)
-L.3187:
-la $23,1($23)
-la $24,7
-blt $23,$24,L.3186
-L.3183:
-la $22,1($22)
-la $24,5
-blt $22,$24,L.3182
-L.3179:
-la $21,1($21)
-la $24,3
-blt $21,$24,L.3178
-la $21,1
-la $22,2
-la $23,3
-la $4,L.3151
-la $5,105
-move $6,$0
-jal array
-move $24,$2
-sw $24,-148+216($sp)
-la $15,140
-mul $15,$15,$21
-la $4,L.3151($15)
-la $15,35
-move $5,$15
-move $6,$15
-jal array
-move $24,$2
-sw $24,-152+216($sp)
-la $15,28
-mul $15,$15,$22
-la $14,140
-mul $14,$14,$21
-la $14,L.3151($14)
-addu $4,$15,$14
-la $5,7
-la $6,49
-jal array
-lw $15,-148+216($sp)
-lw $14,-152+216($sp)
-addu $15,$15,$14
-addu $24,$15,$2
-sll $15,$23,2
-la $14,28
-mul $14,$14,$22
-la $13,140
-mul $13,$13,$21
-la $13,L.3151($13)
-addu $14,$14,$13
-addu $15,$15,$14
-lw $15,($15)
-addu $24,$24,$15
-subu $24,$24,52
-beq $24,$0,L.3190
-lw $24,44($30)
-beq $24,$0,L.3192
-la $4,L.3152
-la $5,8
-jal printf
-L.3192:
-la $18,8($18)
-L.3190:
-move $2,$18
-L.3150:
-l.d $f30,16($sp)
-lw $18,24($sp)
-lw $19,28($sp)
-lw $20,32($sp)
-lw $21,36($sp)
-lw $22,40($sp)
-lw $23,44($sp)
-lw $25,48($sp)
-lw $30,52($sp)
-lw $31,56($sp)
-addu $sp,$sp,216
-j $31
-.end s84
-.globl array
-.text
-.align 2
-.ent array
-array:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-.mask 0x40000000,-8
-sw $30,0($sp)
-move $30,$0
-b L.3198
-L.3195:
-sll $24,$30,2
-addu $24,$24,$4
-lw $24,($24)
-addu $15,$30,$6
-beq $24,$15,L.3199
-la $2,1
-b L.3194
-L.3199:
-L.3196:
-la $30,1($30)
-L.3198:
-blt $30,$5,L.3195
-move $2,$0
-L.3194:
-lw $30,0($sp)
-addu $sp,$sp,8
-j $31
-.end array
-.lcomm L.3202,4
-.globl fip
-.text
-.text
-.align 2
-.ent fip
-fip:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-la $24,L.3202
-sw $4,L.3202
-move $2,$24
-L.3201:
-j $31
-.end fip
-.globl glork
-.text
-.align 2
-.ent glork
-glork:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-move $2,$4
-L.3203:
-j $31
-.end glork
-.data
-.align 0
-L.3205:
-.byte 115
-.byte 56
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.3206:
-.byte 115
-.byte 56
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.data
-.align 2
-L.3214:
-.word L.425
-.word L.427
-.word L.426
-.word L.428
-.word L.429
-.word L.430
-.word L.431
-.data
-.align 0
-L.3215:
-.byte 32
-.byte 97
-.byte 108
-.byte 105
-.byte 103
-.byte 110
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 58
-.byte 32
-.byte 0
-.globl s85
-.text
-.text
-.align 2
-.ent s85
-s85:
-.frame $sp,440,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-440
-.mask 0xc2f00000,-400
-sw $20,16($sp)
-sw $21,20($sp)
-sw $22,24($sp)
-sw $23,28($sp)
-.cprestore 32
-sw $30,36($sp)
-sw $31,40($sp)
-move $30,$4
-la $22,L.3206
-la $21,60($30)
-move $20,$0
-L.3219:
-L.3220:
-move $24,$21
-la $21,1($24)
-move $15,$22
-la $22,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.3219
-la $15,-284+440($sp)
-la $14,-304+440($sp)
-subu $15,$15,$14
-ble $15,$0,L.3230
-la $15,-280+440($sp)
-la $14,-284+440($sp)
-subu $15,$15,$14
-ble $15,$0,L.3230
-la $15,-276+440($sp)
-la $14,-280+440($sp)
-subu $15,$15,$14
-bgt $15,$0,L.3222
-L.3230:
-lw $24,44($30)
-beq $24,$0,L.3231
-la $4,L.3205
-la $5,1
-jal printf
-L.3231:
-la $20,1($20)
-L.3222:
-la $24,-337+440($sp)
-la $15,-338+440($sp)
-subu $24,$24,$15
-sw $24,-268+440($sp)
-la $24,-340+440($sp)
-la $15,-342+440($sp)
-subu $24,$24,$15
-sw $24,-264+440($sp)
-la $24,-348+440($sp)
-la $15,-352+440($sp)
-subu $24,$24,$15
-sw $24,-260+440($sp)
-la $24,-356+440($sp)
-la $15,-360+440($sp)
-subu $24,$24,$15
-sw $24,-256+440($sp)
-la $24,-364+440($sp)
-la $15,-368+440($sp)
-subu $24,$24,$15
-sw $24,-252+440($sp)
-la $24,-372+440($sp)
-la $15,-376+440($sp)
-subu $24,$24,$15
-sw $24,-248+440($sp)
-la $24,-384+440($sp)
-la $15,-392+440($sp)
-subu $24,$24,$15
-sw $24,-244+440($sp)
-lw $24,40($30)
-beq $24,$0,L.3246
-move $23,$0
-L.3248:
-la $4,L.3252
-sll $24,$23,2
-lw $5,L.3214($24)
-la $6,L.3215
-la $15,-268+440($sp)
-addu $24,$24,$15
-lw $7,($24)
-jal printf
-L.3249:
-la $23,1($23)
-la $24,7
-blt $23,$24,L.3248
-L.3246:
-lw $24,-272+440($sp)
-or $24,$24,0x1c000000
-sw $24,-272+440($sp)
-lw $24,-272+440($sp)
-move $15,$24
-and $15,$15,0x3fffffff
-sll $24,$24,3
-sra $24,$24,29
-sll $24,$24,30
-sra $24,$24,30
-sll $24,$24,30
-and $24,$24,0xc0000000
-or $24,$15,$24
-sw $24,-272+440($sp)
-lw $24,-272+440($sp)
-move $15,$24
-and $15,$15,0xe3ffffff
-sra $24,$24,30
-sll $24,$24,29
-sra $24,$24,29
-sll $24,$24,26
-and $24,$24,0x1c000000
-or $24,$15,$24
-sw $24,-272+440($sp)
-la $24,3
-lw $15,-272+440($sp)
-sll $15,$15,3
-sra $15,$15,29
-beq $15,$24,L.3253
-lw $24,-272+440($sp)
-sll $24,$24,3
-sra $24,$24,29
-la $15,-1
-bne $24,$15,L.3255
-lw $24,40($30)
-beq $24,$0,L.3256
-la $4,L.3259
-jal printf
-b L.3256
-L.3255:
-lw $24,44($30)
-beq $24,$0,L.3260
-la $4,L.3205
-la $5,2
-jal printf
-L.3260:
-la $20,2($20)
-L.3256:
-L.3253:
-lw $24,-272+440($sp)
-or $24,$24,0x2000000
-sw $24,-272+440($sp)
-lw $24,-272+440($sp)
-sll $24,$24,6
-sra $24,$24,31
-la $15,1
-beq $24,$15,L.3262
-lw $24,40($30)
-beq $24,$0,L.3264
-la $4,L.3266
-jal printf
-L.3264:
-L.3262:
-la $24,-240+440($sp)
-subu $24,$24,$24
-bne $24,$0,L.3274
-bne $24,$0,L.3274
-bne $24,$0,L.3274
-bne $24,$0,L.3274
-bne $24,$0,L.3274
-bne $24,$0,L.3274
-beq $24,$0,L.3267
-L.3274:
-lw $24,44($30)
-beq $24,$0,L.3275
-la $4,L.3205
-la $5,4
-jal printf
-L.3275:
-la $20,4($20)
-L.3267:
-b L.3277
-lw $24,44($30)
-beq $24,$0,L.3279
-la $4,L.3205
-la $5,8
-jal printf
-L.3279:
-la $20,8($20)
-L.3277:
-la $24,-336+440($sp)
-sw $24,-276+440($sp)
-la $24,2
-sb $24,-336+440($sp)
-lw $24,-276+440($sp)
-lb $15,($24)
-la $15,1($15)
-sb $15,($24)
-lb $24,-336+440($sp)
-la $15,3
-beq $24,$15,L.3283
-lw $24,44($30)
-beq $24,$0,L.3285
-la $4,L.3205
-la $5,16
-jal printf
-L.3285:
-la $20,16($20)
-L.3283:
-move $2,$20
-L.3204:
-lw $20,16($sp)
-lw $21,20($sp)
-lw $22,24($sp)
-lw $23,28($sp)
-lw $25,32($sp)
-lw $30,36($sp)
-lw $31,40($sp)
-addu $sp,$sp,440
-j $31
-.end s85
-.data
-.align 0
-L.3288:
-.byte 115
-.byte 56
-.byte 54
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.3289:
-.byte 115
-.byte 56
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.data
-.align 2
-L.3290:
-.word 0x1
-.word 0x3
-.word 0x5
-.sdata
-.align 2
-L.3291:
-.word L.3290+8
-.lcomm L.3293,40
-.data
-.align 2
-L.3294:
-.word 0x3f800000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40000000
-.word 0x40800000
-.word 0x40c00000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40e00000
-.word 0x0
-.word 0x0
-.word 0x0
-.data
-.align 2
-L.3295:
-.word 0x3f800000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40000000
-.word 0x40800000
-.word 0x40c00000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40e00000
-.space 12
-.data
-.align 2
-L.3296:
-.word 0x3f800000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40000000
-.word 0x40800000
-.word 0x40c00000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40e00000
-.space 12
-.data
-.align 2
-L.3297:
-.word 0x3f800000
-.space 8
-.word 0x40000000
-.space 8
-.word 0x40400000
-.space 8
-.word 0x40800000
-.space 8
-.globl s86
-.text
-.text
-.align 2
-.ent s86
-s86:
-.frame $sp,64,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-64
-.mask 0xc2ff0000,-8
-sw $16,16($sp)
-sw $17,20($sp)
-sw $18,24($sp)
-sw $19,28($sp)
-sw $20,32($sp)
-sw $21,36($sp)
-sw $22,40($sp)
-sw $23,44($sp)
-.cprestore 48
-sw $30,52($sp)
-sw $31,56($sp)
-sw $4,64($sp)
-lw $24,L.3291
-la $16,-4($24)
-jal one
-sll $24,$2,2
-addu $30,$24,$16
-la $19,L.3289
-lw $24,0+64($sp)
-la $18,60($24)
-move $17,$0
-L.3298:
-L.3299:
-move $24,$18
-la $18,1($24)
-move $15,$19
-la $19,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.3298
-lw $24,L.3291
-lw $24,($24)
-la $15,5
-beq $24,$15,L.3301
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3303
-la $4,L.3288
-la $5,1
-jal printf
-L.3303:
-la $17,1($17)
-L.3301:
-lw $24,($16)
-la $15,3
-beq $24,$15,L.3305
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3307
-la $4,L.3288
-la $5,2
-jal printf
-L.3307:
-la $17,2($17)
-L.3305:
-lw $24,($30)
-la $15,5
-beq $24,$15,L.3309
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3311
-la $4,L.3288
-la $5,4
-jal printf
-L.3311:
-la $17,4($17)
-L.3309:
-move $20,$0
-move $23,$0
-L.3313:
-sll $24,$23,2
-lw $24,L.3293($24)
-beq $24,$0,L.3317
-la $20,1
-L.3317:
-L.3314:
-la $23,1($23)
-la $24,10
-blt $23,$24,L.3313
-beq $20,$0,L.3319
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3321
-la $4,L.3288
-la $5,8
-jal printf
-L.3321:
-la $17,8($17)
-L.3319:
-move $20,$0
-move $22,$0
-L.3323:
-move $23,$0
-L.3327:
-la $24,3
-mul $24,$24,$22
-addu $21,$24,$23
-sll $24,$23,2
-la $15,12
-mul $15,$15,$22
-la $14,L.3295($15)
-addu $14,$24,$14
-l.s $f18,($14)
-la $15,L.3296($15)
-addu $24,$24,$15
-l.s $f16,($24)
-c.eq.s $f18,$f16; bc1f L.3333
-sll $24,$21,2
-l.s $f16,L.3294($24)
-c.eq.s $f18,$f16; bc1t L.3331
-L.3333:
-la $20,1
-L.3331:
-L.3328:
-la $23,1($23)
-la $24,3
-blt $23,$24,L.3327
-L.3324:
-la $22,1($22)
-la $24,4
-blt $22,$24,L.3323
-beq $20,$0,L.3334
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3336
-la $4,L.3288
-la $5,16
-jal printf
-L.3336:
-la $17,16($17)
-L.3334:
-move $20,$0
-move $23,$0
-L.3338:
-la $24,12
-mul $24,$24,$23
-l.s $f18,L.3297($24)
-la $24,1($23)
-mtc1 $24,$f16; cvt.s.w $f16,$f16
-c.eq.s $f18,$f16; bc1t L.3342
-la $20,1
-L.3342:
-L.3339:
-la $23,1($23)
-la $24,4
-blt $23,$24,L.3338
-beq $20,$0,L.3344
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3346
-la $4,L.3288
-la $5,32
-jal printf
-L.3346:
-la $17,32($17)
-L.3344:
-move $2,$17
-L.3287:
-lw $16,16($sp)
-lw $17,20($sp)
-lw $18,24($sp)
-lw $19,28($sp)
-lw $20,32($sp)
-lw $21,36($sp)
-lw $22,40($sp)
-lw $23,44($sp)
-lw $25,48($sp)
-lw $30,52($sp)
-lw $31,56($sp)
-addu $sp,$sp,64
-j $31
-.end s86
-.globl one
-.text
-.align 2
-.ent one
-one:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-la $2,1
-L.3348:
-j $31
-.end one
-.data
-.align 0
-L.3350:
-.byte 115
-.byte 56
-.byte 56
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.3351:
-.byte 115
-.byte 56
-.byte 56
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s88
-.text
-.text
-.align 2
-.ent s88
-s88:
-.frame $sp,64,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-64
-.mask 0xc2e00000,-28
-sw $21,16($sp)
-sw $22,20($sp)
-sw $23,24($sp)
-.cprestore 28
-sw $30,32($sp)
-sw $31,36($sp)
-sw $4,64($sp)
-la $30,L.3351
-lw $24,0+64($sp)
-la $23,60($24)
-move $22,$0
-L.3353:
-L.3354:
-move $24,$23
-la $23,1($24)
-move $15,$30
-la $30,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.3353
-b L.3356
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3358
-la $4,L.3350
-la $5,1
-jal printf
-L.3358:
-la $22,1($22)
-L.3356:
-la $24,-20+64($sp)
-sw $24,metricp
-la $24,2
-sw $24,-20+64($sp)
-lw $24,metricp
-la $15,3
-sw $15,($24)
-lw $24,-20+64($sp)
-la $15,3
-beq $24,$15,L.3360
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3362
-la $4,L.3350
-la $5,2
-jal printf
-L.3362:
-la $22,2($22)
-L.3360:
-l.d $f18,L.419
-s.d $f18,-16+64($sp)
-s.d $f18,-8+64($sp)
-la $21,-16+64($sp)
-l.d $f18,L.418
-s.d $f18,($21)
-l.d $f18,L.418
-s.d $f18,8($21)
-l.d $f18,-16+64($sp)
-l.d $f16,-8+64($sp)
-add.d $f18,$f18,$f16
-l.d $f16,L.416
-c.eq.d $f18,$f16; bc1t L.3365
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3368
-la $4,L.3350
-la $5,4
-jal printf
-L.3368:
-la $22,4($22)
-L.3365:
-move $2,$22
-L.3349:
-lw $21,16($sp)
-lw $22,20($sp)
-lw $23,24($sp)
-lw $25,28($sp)
-lw $30,32($sp)
-lw $31,36($sp)
-addu $sp,$sp,64
-j $31
-.end s88
-.data
-.align 0
-L.3371:
-.byte 115
-.byte 57
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.sdata
-.align 0
-L.3372:
-.byte 115
-.byte 57
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s9
-.text
-.text
-.align 2
-.ent s9
-s9:
-.frame $sp,64,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-64
-.mask 0xc2ff0000,-8
-sw $16,16($sp)
-sw $17,20($sp)
-sw $18,24($sp)
-sw $19,28($sp)
-sw $20,32($sp)
-sw $21,36($sp)
-sw $22,40($sp)
-sw $23,44($sp)
-.cprestore 48
-sw $30,52($sp)
-sw $31,56($sp)
-sw $4,64($sp)
-la $22,L.3372
-lw $24,0+64($sp)
-la $21,60($24)
-move $20,$0
-L.3373:
-L.3374:
-move $24,$21
-la $21,1($24)
-move $15,$22
-la $22,1($15)
-lb $15,($15)
-sb $15,($24)
-sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
-bne $24,$0,L.3373
-move $23,$0
-move $30,$0
-L.3376:
-la $24,2
-move $19,$24
-move $18,$24
-la $24,3
-move $17,$24
-move $16,$24
-la $24,3
-bne $16,$24,L.3382
-beq $17,$24,L.3380
-L.3382:
-la $23,1
-L.3380:
-la $24,2
-bne $18,$24,L.3385
-beq $19,$24,L.3383
-L.3385:
-la $23,1
-L.3383:
-L.3377:
-la $30,1($30)
-la $24,2
-blt $30,$24,L.3376
-beq $23,$0,L.3390
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3388
-la $4,L.3371
-la $5,1
-jal printf
-L.3388:
-la $20,1($20)
-b L.3390
-lw $24,0+64($sp)
-lw $24,44($24)
-beq $24,$0,L.3391
-la $4,L.3371
-la $5,2
-jal printf
-L.3391:
-la $20,2($20)
-L.3390:
-move $2,$20
-L.3370:
-lw $16,16($sp)
-lw $17,20($sp)
-lw $18,24($sp)
-lw $19,28($sp)
-lw $20,32($sp)
-lw $21,36($sp)
-lw $22,40($sp)
-lw $23,44($sp)
-lw $25,48($sp)
-lw $30,52($sp)
-lw $31,56($sp)
-addu $sp,$sp,64
-j $31
-.end s9
-.globl setev
-.text
-.align 2
-.ent setev
-setev:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-la $24,1066
-sw $24,extvar
-move $2,$0
-L.3393:
-j $31
-.end setev
-.globl rfs
-.comm rfs,8
-.globl crc
-.comm crc,4
-.globl rrc
-.comm rrc,4
-.globl flgl
-.comm flgl,4
-.globl flgd
-.comm flgd,4
-.globl flgm
-.comm flgm,4
-.globl flgs
-.comm flgs,4
-.globl dprec
-.comm dprec,4
-.globl fprec
-.comm fprec,4
-.globl dbits
-.comm dbits,4
-.globl fbits
-.comm fbits,4
-.globl ubits
-.comm ubits,4
-.globl lbits
-.comm lbits,4
-.globl metricp
-.comm metricp,4
-.globl extvar
-.comm extvar,4
-.rdata
-.align 0
-L.3266:
-.byte 66
-.byte 101
-.byte 32
-.byte 101
-.byte 115
-.byte 112
-.byte 101
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 101
-.byte 102
-.byte 117
-.byte 108
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 49
-.byte 45
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 102
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.3259:
-.byte 83
-.byte 105
-.byte 103
-.byte 110
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 101
-.byte 110
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 102
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.3252:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 2
-L.3175:
-.word 0x43080000
-.align 0
-L.3022:
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.2472:
-.byte 73
-.byte 110
-.byte 99
-.byte 114
-.byte 101
-.byte 97
-.byte 115
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 97
-.byte 114
-.byte 114
-.byte 97
-.byte 121
-.byte 32
-.byte 101
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 114
-.byte 101
-.byte 97
-.byte 115
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 108
-.byte 111
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 10
-.byte 0
-.align 2
-L.2356:
-.word 0x41d00000
-.align 3
-L.2355:
-.word 0x403a0000
-.word 0x0
-.align 3
-L.1659:
-.word 0x40040000
-.word 0x0
-.align 3
-L.1484:
-.word 0x40240000
-.word 0x0
-.align 2
-L.1455:
-.word 0x41200000
-.align 3
-L.1280:
-.word 0x40080000
-.word 0x0
-.align 2
-L.1251:
-.word 0x40400000
-.align 3
-L.1076:
-.word 0x401c0000
-.word 0x0
-.align 2
-L.1047:
-.word 0x40e00000
-.align 3
-L.870:
-.word 0x40140000
-.word 0x0
-.align 2
-L.841:
-.word 0x40a00000
-.align 3
-L.836:
-.word 0x41e00000
-.word 0x0
-.align 2
-L.828:
-.word 0x4f000000
-.align 0
-L.653:
-.byte 113
-.byte 117
-.byte 101
-.byte 101
-.byte 112
-.byte 0
-.align 0
-L.639:
-.byte 10
-.byte 0
-.align 0
-L.638:
-.byte 37
-.byte 100
-.byte 0
-.align 0
-L.633:
-.byte 32
-.byte 32
-.byte 32
-.byte 107
-.byte 101
-.byte 121
-.byte 61
-.byte 0
-.align 3
-L.596:
-.word 0x40000000
-.word 0x0
-.align 3
-L.536:
-.word 0x40ce8480
-.word 0x0
-.align 3
-L.535:
-.word 0x405f4000
-.word 0x0
-.align 2
-L.534:
-.word 0x42fa0000
-.align 2
-L.529:
-.word 0x40000000
-.align 0
-L.431:
-.byte 100
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 0
-.align 0
-L.430:
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 0
-.align 0
-L.429:
-.byte 117
-.byte 110
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 0
-.align 0
-L.428:
-.byte 108
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.427:
-.byte 115
-.byte 104
-.byte 111
-.byte 114
-.byte 116
-.byte 0
-.align 0
-L.426:
-.byte 105
-.byte 110
-.byte 116
-.byte 0
-.align 0
-L.425:
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 0
-.align 3
-L.419:
-.word 0x0
-.word 0x0
-.align 3
-L.418:
-.word 0x3ff00000
-.word 0x0
-.align 3
-L.417:
-.word 0x40100000
-.word 0x0
-.align 3
-L.416:
-.word 0x40000000
-.word 0x0
-.align 2
-L.412:
-.word 0x0
-.align 2
-L.411:
-.word 0x3f800000
-.align 0
-L.390:
-.byte 113
-.byte 117
-.byte 101
-.byte 101
-.byte 112
-.byte 33
-.byte 0
-.align 0
-L.379:
-.byte 10
-.byte 9
-.byte 8
-.byte 13
-.byte 12
-.byte 92
-.byte 39
-.byte 0
-.align 0
-L.375:
-.byte 46
-.byte 34
-.byte 46
-.byte 0
-.align 0
-L.362:
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 3
-L.333:
-.word 0x40938800
-.word 0x0
-.align 0
-L.199:
-.byte 32
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 108
-.byte 111
-.byte 110
-.byte 103
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.198:
-.byte 68
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 99
-.byte 116
-.byte 97
-.byte 108
-.byte 47
-.byte 104
-.byte 101
-.byte 120
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 116
-.byte 97
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 109
-.byte 101
-.byte 115
-.byte 32
-.byte 103
-.byte 105
-.byte 118
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.27:
-.byte 10
-.byte 70
-.byte 97
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.26:
-.byte 10
-.byte 78
-.byte 111
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 100
-.byte 101
-.byte 116
-.byte 101
-.byte 99
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.20:
-.byte 83
-.byte 101
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 116
-.byte 117
-.byte 114
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
+.set reorder
+.data
+.align 2
+L.2:
+.word s22
+.word s241
+.word s243
+.word s244
+.word s25
+.word s26
+.word s4
+.word s61
+.word s626
+.word s71
+.word s72
+.word s757
+.word s7813
+.word s714
+.word s715
+.word s81
+.word s84
+.word s85
+.word s86
+.word s88
+.word s9
+.lcomm L.3,68
+.lcomm L.4,4
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+sw $4,32($sp)
+sw $5,36($sp)
+la $24,1
+sw $24,L.3+36
+la $24,1
+sw $24,L.3+40
+la $24,1
+sw $24,L.3+44
+la $24,1
+sw $24,L.3+48
+la $24,L.3
+sw $24,L.4
+move $30,$0
+b L.12
+L.9:
+lw $4,L.4
+sll $24,$30,2
+lw $25,L.2($24)
+jal $25
+sw $2,L.3+52
+lw $24,L.3+56
+lw $15,L.3+52
+addu $24,$24,$15
+sw $24,L.3+56
+lw $24,L.3+36
+beq $24,$0,L.17
+la $4,L.20
+la $5,L.3+60
+lw $6,L.3+52
+jal printf
+L.17:
+L.10:
+la $30,1($30)
+L.12:
+move $24,$30
+la $15,21
+bltu $24,$15,L.9
+lw $24,L.3+56
+bne $24,$0,L.23
+la $4,L.26
+jal printf
+b L.24
+L.23:
+la $4,L.27
+jal printf
+L.24:
+move $2,$0
+L.1:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end main
+.data
+.align 0
+L.29:
+.byte 115
+.byte 50
+.byte 50
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.30:
+.byte 115
+.byte 50
+.byte 50
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s22
+.text
+.text
+.align 2
+.ent s22
+s22:
+.frame $sp,56,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-56
+.mask 0xc2e00000,-20
+sw $21,16($sp)
+sw $22,20($sp)
+sw $23,24($sp)
+.cprestore 28
+sw $30,32($sp)
+sw $31,36($sp)
+sw $4,56($sp)
+move $22,$0
+la $30,L.30
+lw $24,0+56($sp)
+la $23,60($24)
+L.31:
+L.32:
+move $24,$23
+la $23,1($24)
+move $15,$30
+la $30,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.31
+la $21,1
+la $24,2
+sw $24,-8+56($sp)
+la $24,3
+sw $24,-12+56($sp)
+la $24,4
+sw $24,-4+56($sp)
+lw $24,-8+56($sp)
+addu $24,$21,$24
+lw $15,-12+56($sp)
+addu $24,$24,$15
+lw $15,-4+56($sp)
+addu $24,$24,$15
+la $15,10
+beq $24,$15,L.34
+la $22,1($22)
+lw $24,0+56($sp)
+lw $24,44($24)
+beq $24,$0,L.36
+la $4,L.29
+la $5,1
+jal printf
+L.36:
+L.34:
+la $24,2
+sw $24,-16+56($sp)
+lw $24,-16+56($sp)
+bne $24,$21,L.38
+la $22,4($22)
+lw $24,0+56($sp)
+lw $24,44($24)
+beq $24,$0,L.40
+la $4,L.29
+la $5,4
+jal printf
+L.40:
+L.38:
+move $2,$22
+L.28:
+lw $21,16($sp)
+lw $22,20($sp)
+lw $23,24($sp)
+lw $25,28($sp)
+lw $30,32($sp)
+lw $31,36($sp)
+addu $sp,$sp,56
+j $31
+.end s22
+.data
+.align 0
+L.43:
+.byte 115
+.byte 50
+.byte 52
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.44:
+.byte 115
+.byte 50
+.byte 52
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.data
+.align 2
+L.45:
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x6
+.word 0x0
+.word 0x8
+.word 0x0
+.word 0xc
+.word 0x0
+.word 0x10
+.word 0x0
+.word 0x12
+.word 0x0
+.word 0x14
+.word 0x0
+.word 0x18
+.word 0x0
+.word 0x1c
+.word 0x0
+.word 0x1e
+.word 0x0
+.word 0x20
+.word 0x0
+.word 0x24
+.globl s241
+.text
+.text
+.align 2
+.ent s241
+s241:
+.frame $sp,520,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-520
+.mask 0xc2f00000,-480
+sw $20,16($sp)
+sw $21,20($sp)
+sw $22,24($sp)
+sw $23,28($sp)
+.cprestore 32
+sw $30,36($sp)
+sw $31,40($sp)
+move $30,$4
+move $20,$0
+sw $0,-472+520($sp)
+la $22,L.44
+la $21,60($30)
+L.46:
+L.47:
+move $24,$21
+la $21,1($24)
+move $15,$22
+la $22,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.46
+b L.49
+la $20,1($20)
+lw $24,44($30)
+beq $24,$0,L.51
+la $4,L.43
+la $5,1
+jal printf
+L.51:
+L.49:
+b L.53
+la $20,2($20)
+lw $24,44($30)
+beq $24,$0,L.55
+la $4,L.43
+la $5,2
+jal printf
+L.55:
+L.53:
+b L.57
+la $20,4($20)
+lw $24,44($30)
+beq $24,$0,L.59
+la $4,L.43
+la $5,4
+jal printf
+L.59:
+L.57:
+b L.61
+la $20,8($20)
+lw $24,44($30)
+beq $24,$0,L.63
+la $4,L.43
+la $5,8
+jal printf
+L.63:
+L.61:
+move $23,$0
+L.65:
+sll $24,$23,2
+sw $23,L.45($24)
+L.66:
+la $23,1($23)
+la $24,17
+blt $23,$24,L.65
+la $23,18
+L.69:
+sll $24,$23,2
+la $24,L.45($24)
+sw $24,-476+520($sp)
+lw $4,($24)
+jal pow2
+lw $15,-476+520($sp)
+sw $2,($15)
+sll $24,$23,2
+lw $15,L.45($24)
+subu $15,$15,1
+sw $15,L.45-4($24)
+la $23,2($23)
+L.70:
+la $24,39
+blt $23,$24,L.69
+sw $0,-156+520($sp)
+sw $0,-312+520($sp)
+sw $0,-468+520($sp)
+la $24,1
+sw $24,-152+520($sp)
+la $24,1
+sw $24,-308+520($sp)
+la $24,1
+sw $24,-464+520($sp)
+la $24,2
+sw $24,-148+520($sp)
+la $24,2
+sw $24,-304+520($sp)
+la $24,2
+sw $24,-460+520($sp)
+la $24,3
+sw $24,-144+520($sp)
+la $24,3
+sw $24,-300+520($sp)
+la $24,3
+sw $24,-456+520($sp)
+la $24,4
+sw $24,-140+520($sp)
+la $24,4
+sw $24,-296+520($sp)
+la $24,4
+sw $24,-452+520($sp)
+la $24,5
+sw $24,-136+520($sp)
+la $24,5
+sw $24,-292+520($sp)
+la $24,5
+sw $24,-448+520($sp)
+la $24,6
+sw $24,-132+520($sp)
+la $24,6
+sw $24,-288+520($sp)
+la $24,6
+sw $24,-444+520($sp)
+la $24,7
+sw $24,-128+520($sp)
+la $24,7
+sw $24,-284+520($sp)
+la $24,7
+sw $24,-440+520($sp)
+la $24,8
+sw $24,-124+520($sp)
+la $24,8
+sw $24,-280+520($sp)
+la $24,8
+sw $24,-436+520($sp)
+la $24,9
+sw $24,-120+520($sp)
+la $24,9
+sw $24,-276+520($sp)
+la $24,9
+sw $24,-432+520($sp)
+la $24,10
+sw $24,-116+520($sp)
+la $24,10
+sw $24,-272+520($sp)
+la $24,10
+sw $24,-428+520($sp)
+la $24,11
+sw $24,-112+520($sp)
+la $24,11
+sw $24,-268+520($sp)
+la $24,11
+sw $24,-424+520($sp)
+la $24,12
+sw $24,-108+520($sp)
+la $24,12
+sw $24,-264+520($sp)
+la $24,12
+sw $24,-420+520($sp)
+la $24,13
+sw $24,-104+520($sp)
+la $24,13
+sw $24,-260+520($sp)
+la $24,13
+sw $24,-416+520($sp)
+la $24,14
+sw $24,-100+520($sp)
+la $24,14
+sw $24,-256+520($sp)
+la $24,14
+sw $24,-412+520($sp)
+la $24,15
+sw $24,-96+520($sp)
+la $24,15
+sw $24,-252+520($sp)
+la $24,15
+sw $24,-408+520($sp)
+la $24,16
+sw $24,-92+520($sp)
+la $24,16
+sw $24,-248+520($sp)
+la $24,16
+sw $24,-404+520($sp)
+la $24,63
+sw $24,-88+520($sp)
+la $24,63
+sw $24,-244+520($sp)
+la $24,63
+sw $24,-400+520($sp)
+la $24,64
+sw $24,-84+520($sp)
+la $24,64
+sw $24,-240+520($sp)
+la $24,64
+sw $24,-396+520($sp)
+la $24,255
+sw $24,-80+520($sp)
+la $24,255
+sw $24,-236+520($sp)
+la $24,255
+sw $24,-392+520($sp)
+la $24,256
+sw $24,-76+520($sp)
+la $24,256
+sw $24,-232+520($sp)
+la $24,256
+sw $24,-388+520($sp)
+la $24,4095
+sw $24,-72+520($sp)
+la $24,4095
+sw $24,-228+520($sp)
+la $24,4095
+sw $24,-384+520($sp)
+la $24,4096
+sw $24,-68+520($sp)
+la $24,4096
+sw $24,-224+520($sp)
+la $24,4096
+sw $24,-380+520($sp)
+la $24,65535
+sw $24,-64+520($sp)
+la $24,65535
+sw $24,-220+520($sp)
+la $24,65535
+sw $24,-376+520($sp)
+la $24,65536
+sw $24,-60+520($sp)
+la $24,65536
+sw $24,-216+520($sp)
+la $24,65536
+sw $24,-372+520($sp)
+la $24,262143
+sw $24,-56+520($sp)
+la $24,262143
+sw $24,-212+520($sp)
+la $24,262143
+sw $24,-368+520($sp)
+la $24,262144
+sw $24,-52+520($sp)
+la $24,262144
+sw $24,-208+520($sp)
+la $24,262144
+sw $24,-364+520($sp)
+la $24,1048575
+sw $24,-48+520($sp)
+la $24,1048575
+sw $24,-204+520($sp)
+la $24,1048575
+sw $24,-360+520($sp)
+la $24,1048576
+sw $24,-44+520($sp)
+la $24,1048576
+sw $24,-200+520($sp)
+la $24,1048576
+sw $24,-356+520($sp)
+la $24,16777215
+sw $24,-40+520($sp)
+la $24,16777215
+sw $24,-196+520($sp)
+la $24,16777215
+sw $24,-352+520($sp)
+la $24,16777216
+sw $24,-36+520($sp)
+la $24,16777216
+sw $24,-192+520($sp)
+la $24,16777216
+sw $24,-348+520($sp)
+la $24,268435455
+sw $24,-32+520($sp)
+la $24,268435455
+sw $24,-188+520($sp)
+la $24,268435455
+sw $24,-344+520($sp)
+la $24,268435456
+sw $24,-28+520($sp)
+la $24,268435456
+sw $24,-184+520($sp)
+la $24,268435456
+sw $24,-340+520($sp)
+la $24,1073741823
+sw $24,-24+520($sp)
+la $24,1073741823
+sw $24,-180+520($sp)
+la $24,1073741823
+sw $24,-336+520($sp)
+la $24,1073741824
+sw $24,-20+520($sp)
+la $24,1073741824
+sw $24,-176+520($sp)
+la $24,1073741824
+sw $24,-332+520($sp)
+la $24,0xffffffff
+sw $24,-16+520($sp)
+la $24,0xffffffff
+sw $24,-172+520($sp)
+la $24,0xffffffff
+sw $24,-328+520($sp)
+la $24,0xffffffff
+sw $24,-12+520($sp)
+la $24,0xffffffff
+sw $24,-168+520($sp)
+la $24,0xffffffff
+sw $24,-324+520($sp)
+la $24,0xffffffff
+sw $24,-8+520($sp)
+la $24,0xffffffff
+sw $24,-164+520($sp)
+la $24,0xffffffff
+sw $24,-320+520($sp)
+la $24,0xffffffff
+sw $24,-4+520($sp)
+la $24,0xffffffff
+sw $24,-160+520($sp)
+la $24,0xffffffff
+sw $24,-316+520($sp)
+move $23,$0
+L.188:
+sll $24,$23,2
+la $15,-156+520($sp)
+addu $15,$24,$15
+lw $15,($15)
+lw $14,L.45($24)
+bne $14,$15,L.195
+la $14,-312+520($sp)
+addu $14,$24,$14
+lw $14,($14)
+bne $15,$14,L.195
+la $15,-468+520($sp)
+addu $24,$24,$15
+lw $24,($24)
+beq $14,$24,L.192
+L.195:
+lw $24,40($30)
+beq $24,$0,L.196
+la $4,L.198
+jal printf
+la $4,L.199
+jal printf
+L.196:
+L.192:
+L.189:
+la $23,1($23)
+la $24,39
+blt $23,$24,L.188
+lw $24,-472+520($sp)
+beq $24,$0,L.200
+la $20,16
+L.200:
+move $2,$20
+L.42:
+lw $20,16($sp)
+lw $21,20($sp)
+lw $22,24($sp)
+lw $23,28($sp)
+lw $25,32($sp)
+lw $30,36($sp)
+lw $31,40($sp)
+addu $sp,$sp,520
+j $31
+.end s241
+.globl pow2
+.text
+.align 2
+.ent pow2
+pow2:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+.mask 0x40000000,-8
+sw $30,0($sp)
+la $30,1
+b L.204
+L.203:
+sll $30,$30,1
+L.204:
+move $24,$4
+subu $4,$24,1
+bne $24,$0,L.203
+move $2,$30
+L.202:
+lw $30,0($sp)
+addu $sp,$sp,8
+j $31
+.end pow2
+.data
+.align 0
+L.207:
+.byte 115
+.byte 50
+.byte 52
+.byte 51
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.208:
+.byte 115
+.byte 50
+.byte 52
+.byte 51
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s243
+.text
+.text
+.align 2
+.ent s243
+s243:
+.frame $sp,296,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-296
+.mask 0xc2c00000,-264
+sw $22,16($sp)
+sw $23,20($sp)
+.cprestore 24
+sw $30,28($sp)
+sw $31,32($sp)
+sw $4,296($sp)
+move $22,$0
+la $30,L.208
+lw $24,0+296($sp)
+la $23,60($24)
+L.209:
+L.210:
+move $24,$23
+la $23,1($24)
+move $15,$30
+la $30,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.209
+la $4,-256+296($sp)
+jal zerofill
+la $24,1
+sb $24,-159+296($sp)
+la $24,1
+sb $24,-191+296($sp)
+la $24,1
+sb $24,-130+296($sp)
+la $24,1
+sb $24,-208+296($sp)
+la $24,1
+sb $24,-158+296($sp)
+la $24,1
+sb $24,-190+296($sp)
+la $24,1
+sb $24,-223+296($sp)
+la $24,1
+sb $24,-207+296($sp)
+la $24,1
+sb $24,-157+296($sp)
+la $24,1
+sb $24,-189+296($sp)
+la $24,1
+sb $24,-222+296($sp)
+la $24,1
+sb $24,-206+296($sp)
+la $24,1
+sb $24,-156+296($sp)
+la $24,1
+sb $24,-188+296($sp)
+la $24,1
+sb $24,-221+296($sp)
+la $24,1
+sb $24,-205+296($sp)
+la $24,1
+sb $24,-155+296($sp)
+la $24,1
+sb $24,-187+296($sp)
+la $24,1
+sb $24,-219+296($sp)
+la $24,1
+sb $24,-204+296($sp)
+la $24,1
+sb $24,-154+296($sp)
+la $24,1
+sb $24,-186+296($sp)
+la $24,1
+sb $24,-218+296($sp)
+la $24,1
+sb $24,-203+296($sp)
+la $24,1
+sb $24,-153+296($sp)
+la $24,1
+sb $24,-185+296($sp)
+la $24,1
+sb $24,-216+296($sp)
+la $24,1
+sb $24,-202+296($sp)
+la $24,1
+sb $24,-152+296($sp)
+la $24,1
+sb $24,-184+296($sp)
+la $24,1
+sb $24,-215+296($sp)
+la $24,1
+sb $24,-201+296($sp)
+la $24,1
+sb $24,-151+296($sp)
+la $24,1
+sb $24,-183+296($sp)
+la $24,1
+sb $24,-161+296($sp)
+la $24,1
+sb $24,-200+296($sp)
+la $24,1
+sb $24,-150+296($sp)
+la $24,1
+sb $24,-182+296($sp)
+la $24,1
+sb $24,-195+296($sp)
+la $24,1
+sb $24,-199+296($sp)
+la $24,1
+sb $24,-149+296($sp)
+la $24,1
+sb $24,-181+296($sp)
+la $24,1
+sb $24,-211+296($sp)
+la $24,1
+sb $24,-148+296($sp)
+la $24,1
+sb $24,-180+296($sp)
+la $24,1
+sb $24,-162+296($sp)
+la $24,1
+sb $24,-147+296($sp)
+la $24,1
+sb $24,-179+296($sp)
+la $24,1
+sb $24,-132+296($sp)
+la $24,1
+sb $24,-246+296($sp)
+la $24,1
+sb $24,-146+296($sp)
+la $24,1
+sb $24,-178+296($sp)
+la $24,1
+sb $24,-247+296($sp)
+la $24,1
+sb $24,-145+296($sp)
+la $24,1
+sb $24,-177+296($sp)
+la $24,1
+sb $24,-133+296($sp)
+la $24,1
+sb $24,-248+296($sp)
+la $24,1
+sb $24,-144+296($sp)
+la $24,1
+sb $24,-176+296($sp)
+la $24,1
+sb $24,-131+296($sp)
+la $24,1
+sb $24,-243+296($sp)
+la $24,1
+sb $24,-143+296($sp)
+la $24,1
+sb $24,-175+296($sp)
+la $24,1
+sb $24,-165+296($sp)
+la $24,1
+sb $24,-244+296($sp)
+la $24,1
+sb $24,-142+296($sp)
+la $24,1
+sb $24,-174+296($sp)
+la $24,1
+sb $24,-163+296($sp)
+la $24,1
+sb $24,-141+296($sp)
+la $24,1
+sb $24,-173+296($sp)
+la $24,1
+sb $24,-213+296($sp)
+la $24,1
+sb $24,-164+296($sp)
+la $24,1
+sb $24,-140+296($sp)
+la $24,1
+sb $24,-172+296($sp)
+la $24,1
+sb $24,-197+296($sp)
+la $24,1
+sb $24,-217+296($sp)
+la $24,1
+sb $24,-139+296($sp)
+la $24,1
+sb $24,-171+296($sp)
+la $24,1
+sb $24,-214+296($sp)
+la $24,1
+sb $24,-138+296($sp)
+la $24,1
+sb $24,-170+296($sp)
+la $24,1
+sb $24,-198+296($sp)
+la $24,1
+sb $24,-256+296($sp)
+sb $24,-137+296($sp)
+la $24,1
+sb $24,-169+296($sp)
+la $24,1
+sb $24,-196+296($sp)
+la $24,1
+sb $24,-224+296($sp)
+la $24,1
+sb $24,-136+296($sp)
+la $24,1
+sb $24,-168+296($sp)
+la $24,1
+sb $24,-194+296($sp)
+la $24,1
+sb $24,-135+296($sp)
+la $24,1
+sb $24,-167+296($sp)
+la $24,1
+sb $24,-212+296($sp)
+la $24,1
+sb $24,-134+296($sp)
+la $24,1
+sb $24,-166+296($sp)
+la $24,1
+sb $24,-210+296($sp)
+la $24,1
+sb $24,-193+296($sp)
+la $24,1
+sb $24,-209+296($sp)
+la $4,-256+296($sp)
+jal sumof
+la $15,98
+beq $2,$15,L.309
+la $22,1($22)
+lw $24,0+296($sp)
+lw $24,44($24)
+beq $24,$0,L.311
+la $4,L.207
+la $5,1
+jal printf
+L.311:
+L.309:
+b L.313
+la $22,8($22)
+lw $24,0+296($sp)
+lw $24,44($24)
+beq $24,$0,L.315
+la $4,L.207
+la $5,8
+jal printf
+L.315:
+L.313:
+move $2,$22
+L.206:
+lw $22,16($sp)
+lw $23,20($sp)
+lw $25,24($sp)
+lw $30,28($sp)
+lw $31,32($sp)
+addu $sp,$sp,296
+j $31
+.end s243
+.globl zerofill
+.text
+.align 2
+.ent zerofill
+zerofill:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+.mask 0x40000000,-8
+sw $30,0($sp)
+move $30,$0
+L.318:
+move $24,$4
+la $4,1($24)
+sb $0,($24)
+L.319:
+la $30,1($30)
+la $24,256
+blt $30,$24,L.318
+move $2,$0
+L.317:
+lw $30,0($sp)
+addu $sp,$sp,8
+j $31
+.end zerofill
+.globl sumof
+.text
+.align 2
+.ent sumof
+sumof:
+.frame $sp,16,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-16
+.mask 0x40c00000,-8
+sw $22,0($sp)
+sw $23,4($sp)
+sw $30,8($sp)
+move $22,$4
+move $30,$0
+move $23,$0
+L.323:
+move $24,$22
+la $22,1($24)
+lb $24,($24)
+addu $30,$30,$24
+L.324:
+la $23,1($23)
+la $24,256
+blt $23,$24,L.323
+move $2,$30
+L.322:
+lw $22,0($sp)
+lw $23,4($sp)
+lw $30,8($sp)
+addu $sp,$sp,16
+j $31
+.end sumof
+.data
+.align 0
+L.328:
+.byte 115
+.byte 50
+.byte 52
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.329:
+.byte 115
+.byte 50
+.byte 52
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s244
+.text
+.text
+.align 2
+.ent s244
+s244:
+.frame $sp,112,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-112
+.mask 0xc2f00000,-72
+sw $20,16($sp)
+sw $21,20($sp)
+sw $22,24($sp)
+sw $23,28($sp)
+.cprestore 32
+sw $30,36($sp)
+sw $31,40($sp)
+sw $4,112($sp)
+la $23,L.329
+lw $24,0+112($sp)
+la $22,60($24)
+L.330:
+L.331:
+move $24,$22
+la $22,1($24)
+move $15,$23
+la $23,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.330
+move $20,$0
+move $21,$0
+l.d $f18,L.333
+s.d $f18,-64+112($sp)
+s.d $f18,-56+112($sp)
+l.d $f18,L.333
+s.d $f18,-48+112($sp)
+l.d $f18,L.333
+s.d $f18,-40+112($sp)
+l.d $f18,L.333
+s.d $f18,-32+112($sp)
+l.d $f18,L.333
+s.d $f18,-24+112($sp)
+l.d $f18,L.333
+s.d $f18,-16+112($sp)
+l.d $f18,L.333
+s.d $f18,-8+112($sp)
+move $21,$0
+move $30,$0
+L.341:
+sll $24,$30,3
+la $15,-64+112($sp)
+addu $15,$24,$15
+l.d $f18,($15)
+la $15,-56+112($sp)
+addu $24,$24,$15
+l.d $f16,($24)
+c.eq.d $f18,$f16; bc1t L.345
+la $21,1
+L.345:
+L.342:
+la $30,1($30)
+la $24,7
+blt $30,$24,L.341
+beq $21,$0,L.348
+lw $24,0+112($sp)
+lw $24,44($24)
+beq $24,$0,L.350
+la $4,L.328
+la $5,1
+jal printf
+L.350:
+la $20,1($20)
+L.348:
+b L.352
+lw $24,0+112($sp)
+lw $24,44($24)
+beq $24,$0,L.354
+la $4,L.328
+la $5,2
+jal printf
+L.354:
+la $20,2($20)
+L.352:
+move $2,$20
+L.327:
+lw $20,16($sp)
+lw $21,20($sp)
+lw $22,24($sp)
+lw $23,28($sp)
+lw $25,32($sp)
+lw $30,36($sp)
+lw $31,40($sp)
+addu $sp,$sp,112
+j $31
+.end s244
+.data
+.align 0
+L.357:
+.byte 115
+.byte 50
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.358:
+.byte 115
+.byte 50
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s25
+.text
+.text
+.align 2
+.ent s25
+s25:
+.frame $sp,56,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-56
+.mask 0xc2fe0000,-4
+sw $17,16($sp)
+sw $18,20($sp)
+sw $19,24($sp)
+sw $20,28($sp)
+sw $21,32($sp)
+sw $22,36($sp)
+sw $23,40($sp)
+.cprestore 44
+sw $30,48($sp)
+sw $31,52($sp)
+move $30,$4
+la $20,L.358
+la $19,60($30)
+L.359:
+L.360:
+move $24,$19
+la $19,1($24)
+move $15,$20
+la $20,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.359
+move $18,$0
+la $22,L.362
+lb $24,1($22)
+lb $15,($22)
+bne $15,$24,L.366
+lb $15,2($22)
+bne $24,$15,L.366
+la $24,46
+beq $15,$24,L.363
+L.366:
+la $18,1($18)
+lw $24,44($30)
+beq $24,$0,L.367
+la $4,L.357
+la $5,1
+jal printf
+L.367:
+L.363:
+lb $24,3($22)
+beq $24,$0,L.369
+la $18,4($18)
+lw $24,44($30)
+beq $24,$0,L.371
+la $4,L.357
+la $5,4
+jal printf
+L.371:
+L.369:
+lb $24,L.375+1
+la $15,34
+beq $24,$15,L.373
+la $18,8($18)
+lw $24,44($30)
+beq $24,$0,L.377
+la $4,L.357
+la $5,8
+jal printf
+L.377:
+L.373:
+la $22,L.379
+lb $24,($22)
+la $15,10
+bne $24,$15,L.387
+lb $24,1($22)
+la $15,9
+bne $24,$15,L.387
+lb $24,2($22)
+la $15,8
+bne $24,$15,L.387
+lb $24,3($22)
+la $15,13
+bne $24,$15,L.387
+lb $24,4($22)
+la $15,12
+bne $24,$15,L.387
+lb $24,5($22)
+la $15,92
+bne $24,$15,L.387
+lb $24,6($22)
+la $15,39
+beq $24,$15,L.380
+L.387:
+la $18,16($18)
+lw $24,44($30)
+beq $24,$0,L.388
+la $4,L.357
+la $5,16
+jal printf
+L.388:
+L.380:
+la $24,L.390
+move $21,$24
+move $22,$24
+move $17,$0
+move $23,$0
+b L.394
+L.391:
+addu $24,$23,$22
+lb $24,($24)
+addu $15,$23,$21
+lb $15,($15)
+beq $24,$15,L.395
+la $17,1
+L.395:
+L.392:
+la $23,1($23)
+L.394:
+move $24,$23
+la $15,7
+bltu $24,$15,L.391
+beq $17,$0,L.397
+la $18,32($18)
+lw $24,44($30)
+beq $24,$0,L.399
+la $4,L.357
+la $5,32
+jal printf
+L.399:
+L.397:
+move $2,$18
+L.356:
+lw $17,16($sp)
+lw $18,20($sp)
+lw $19,24($sp)
+lw $20,28($sp)
+lw $21,32($sp)
+lw $22,36($sp)
+lw $23,40($sp)
+lw $25,44($sp)
+lw $30,48($sp)
+lw $31,52($sp)
+addu $sp,$sp,56
+j $31
+.end s25
+.sdata
+.align 0
+L.402:
+.byte 115
+.byte 50
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.data
+.align 0
+L.403:
+.byte 37
+.byte 51
+.byte 100
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 37
+.byte 115
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.data
+.align 0
+L.404:
+.byte 37
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 97
+.byte 100
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 49
+.byte 46
+.byte 32
+.byte 40
+.byte 37
+.byte 115
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.globl s26
+.text
+.text
+.align 2
+.ent s26
+s26:
+.frame $sp,96,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-96
+.fmask 0xffc00000,-40
+.mask 0xc2f00000,-8
+s.d $f22,24($sp)
+s.d $f24,32($sp)
+s.d $f26,40($sp)
+s.d $f28,48($sp)
+s.d $f30,56($sp)
+sw $20,64($sp)
+sw $21,68($sp)
+sw $22,72($sp)
+sw $23,76($sp)
+.cprestore 80
+sw $30,84($sp)
+sw $31,88($sp)
+move $30,$4
+la $22,L.402
+la $21,60($30)
+L.405:
+L.406:
+move $24,$21
+la $21,1($24)
+move $15,$22
+la $22,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.405
+sw $0,($30)
+move $20,$0
+la $23,1
+b L.409
+L.408:
+sll $24,$23,8*(4-1); sra $24,$24,8*(4-1)
+sll $24,$24,1
+move $23,$24
+lw $24,($30)
+la $24,1($24)
+sw $24,($30)
+L.409:
+sll $24,$20,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$23,8*(4-1); sra $15,$15,8*(4-1)
+bne $24,$15,L.408
+lw $24,($30)
+sll $24,$24,2
+sw $24,4($30)
+lw $24,($30)
+sll $24,$24,1
+sw $24,8($30)
+lw $24,($30)
+sll $24,$24,2
+sw $24,12($30)
+lw $24,($30)
+sll $24,$24,2
+sw $24,16($30)
+lw $24,($30)
+sll $24,$24,2
+sw $24,20($30)
+lw $24,($30)
+sll $24,$24,3
+sw $24,24($30)
+l.s $f18,L.411
+mov.s $f26,$f18
+mov.s $f30,$f18
+l.s $f28,L.412
+b L.414
+L.413:
+add.s $f28,$f26,$f30
+cvt.d.s $f18,$f30
+l.d $f16,L.416
+div.d $f18,$f18,$f16
+cvt.s.d $f30,$f18
+L.414:
+c.eq.s $f28,$f26; bc1f L.413
+l.d $f18,L.417
+cvt.d.s $f16,$f30
+mul.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+s.s $f18,28($30)
+l.d $f22,L.418
+l.s $f30,L.411
+l.d $f24,L.419
+b L.421
+L.420:
+cvt.d.s $f18,$f30
+add.d $f24,$f22,$f18
+l.d $f16,L.416
+div.d $f18,$f18,$f16
+cvt.s.d $f30,$f18
+L.421:
+c.eq.d $f24,$f22; bc1f L.420
+l.d $f18,L.417
+cvt.d.s $f16,$f30
+mul.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+s.s $f18,32($30)
+lw $24,40($30)
+beq $24,$0,L.423
+la $4,L.403
+lw $5,($30)
+la $6,L.425
+jal printf
+la $4,L.403
+lw $5,4($30)
+la $6,L.426
+jal printf
+la $4,L.403
+lw $5,8($30)
+la $6,L.427
+jal printf
+la $4,L.403
+lw $5,12($30)
+la $6,L.428
+jal printf
+la $4,L.403
+lw $5,16($30)
+la $6,L.429
+jal printf
+la $4,L.403
+lw $5,20($30)
+la $6,L.430
+jal printf
+la $4,L.403
+lw $5,24($30)
+la $6,L.431
+jal printf
+la $4,L.404
+l.s $f18,28($30)
+cvt.d.s $f18,$f18
+mfc1.d $6,$f18
+la $24,L.430
+sw $24,16($sp)
+jal printf
+la $4,L.404
+l.s $f18,32($30)
+cvt.d.s $f18,$f18
+mfc1.d $6,$f18
+la $24,L.431
+sw $24,16($sp)
+jal printf
+L.423:
+move $2,$0
+L.401:
+l.d $f22,24($sp)
+l.d $f24,32($sp)
+l.d $f26,40($sp)
+l.d $f28,48($sp)
+l.d $f30,56($sp)
+lw $20,64($sp)
+lw $21,68($sp)
+lw $22,72($sp)
+lw $23,76($sp)
+lw $25,80($sp)
+lw $30,84($sp)
+lw $31,88($sp)
+addu $sp,$sp,96
+j $31
+.end s26
+.data
+.align 0
+L.433:
+.byte 115
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.434:
+.byte 115
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s4
+.text
+.text
+.align 2
+.ent s4
+s4:
+.frame $sp,72,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-72
+.mask 0xc2fc0000,-24
+sw $18,16($sp)
+sw $19,20($sp)
+sw $20,24($sp)
+sw $21,28($sp)
+sw $22,32($sp)
+sw $23,36($sp)
+.cprestore 40
+sw $30,44($sp)
+sw $31,48($sp)
+move $30,$4
+move $18,$0
+la $20,L.434
+la $19,60($30)
+L.435:
+L.436:
+move $24,$19
+la $19,1($24)
+move $15,$20
+la $20,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.435
+move $23,$0
+L.438:
+move $4,$23
+jal svtest
+move $24,$2
+sw $24,-16+72($sp)
+jal zero
+lw $15,-16+72($sp)
+beq $15,$2,L.442
+la $18,1
+lw $24,44($30)
+beq $24,$0,L.444
+la $4,L.433
+la $5,1
+jal printf
+L.444:
+L.442:
+L.439:
+la $23,1($23)
+la $24,3
+blt $23,$24,L.438
+jal setev
+jal testev
+beq $2,$0,L.446
+la $18,2($18)
+lw $24,44($30)
+beq $24,$0,L.448
+la $4,L.433
+la $5,2
+jal printf
+L.448:
+L.446:
+b L.450
+la $18,4($18)
+lw $24,44($30)
+beq $24,$0,L.452
+la $4,L.433
+la $5,4
+jal printf
+L.452:
+L.450:
+la $22,0xffffffff
+la $21,1
+move $23,$0
+b L.457
+L.454:
+and $21,$21,$22
+srl $22,$22,1
+L.455:
+la $23,1($23)
+L.457:
+move $24,$23
+lw $15,($30)
+sll $15,$15,2
+bltu $24,$15,L.454
+la $24,1
+bne $21,$24,L.460
+beq $22,$0,L.458
+L.460:
+la $18,8($18)
+lw $24,44($30)
+beq $24,$0,L.461
+la $4,L.433
+la $5,8
+jal printf
+L.461:
+L.458:
+move $2,$18
+L.432:
+lw $18,16($sp)
+lw $19,20($sp)
+lw $20,24($sp)
+lw $21,28($sp)
+lw $22,32($sp)
+lw $23,36($sp)
+lw $25,40($sp)
+lw $30,44($sp)
+lw $31,48($sp)
+addu $sp,$sp,72
+j $31
+.end s4
+.lcomm L.464,4
+.globl svtest
+.text
+.text
+.align 2
+.ent svtest
+svtest:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+beq $4,$0,L.467
+la $24,1
+beq $4,$24,L.468
+la $24,2
+beq $4,$24,L.471
+b L.465
+L.467:
+la $24,1978
+sw $24,L.464
+sw $0,-4+8($sp)
+b L.466
+L.468:
+lw $24,L.464
+la $15,1978
+beq $24,$15,L.469
+la $24,1
+sw $24,-4+8($sp)
+b L.466
+L.469:
+la $24,1929
+sw $24,L.464
+sw $0,-4+8($sp)
+b L.466
+L.471:
+lw $24,L.464
+la $15,1929
+beq $24,$15,L.472
+la $24,1
+sw $24,-4+8($sp)
+b L.466
+L.472:
+sw $0,-4+8($sp)
+L.465:
+L.466:
+lw $2,-4+8($sp)
+L.463:
+addu $sp,$sp,8
+j $31
+.end svtest
+.lcomm L.475,4
+.globl zero
+.text
+.text
+.align 2
+.ent zero
+zero:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+la $24,2
+sw $24,L.475
+sw $0,-4+8($sp)
+lw $2,-4+8($sp)
+L.474:
+addu $sp,$sp,8
+j $31
+.end zero
+.globl testev
+.text
+.align 2
+.ent testev
+testev:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+lw $24,extvar
+la $15,1066
+beq $24,$15,L.477
+la $2,1
+b L.476
+L.477:
+move $2,$0
+L.476:
+j $31
+.end testev
+.data
+.align 0
+L.480:
+.byte 115
+.byte 54
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.481:
+.byte 115
+.byte 54
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.data
+.align 0
+L.482:
+.byte 65
+.byte 66
+.byte 67
+.byte 68
+.byte 69
+.byte 70
+.byte 71
+.byte 72
+.byte 73
+.byte 74
+.byte 75
+.byte 76
+.byte 77
+.byte 78
+.byte 79
+.byte 80
+.byte 81
+.byte 82
+.byte 83
+.byte 84
+.byte 85
+.byte 86
+.byte 87
+.byte 88
+.byte 89
+.byte 90
+.byte 0
+.data
+.align 0
+L.483:
+.byte 97
+.byte 98
+.byte 99
+.byte 100
+.byte 101
+.byte 102
+.byte 103
+.byte 104
+.byte 105
+.byte 106
+.byte 107
+.byte 108
+.byte 109
+.byte 110
+.byte 111
+.byte 112
+.byte 113
+.byte 114
+.byte 115
+.byte 116
+.byte 117
+.byte 118
+.byte 119
+.byte 120
+.byte 121
+.byte 122
+.byte 0
+.data
+.align 0
+L.484:
+.byte 48
+.byte 49
+.byte 50
+.byte 51
+.byte 52
+.byte 53
+.byte 54
+.byte 55
+.byte 56
+.byte 57
+.byte 0
+.data
+.align 0
+L.485:
+.byte 126
+.byte 33
+.byte 34
+.byte 35
+.byte 37
+.byte 38
+.byte 40
+.byte 41
+.byte 95
+.byte 61
+.byte 45
+.byte 94
+.byte 124
+.byte 123
+.byte 125
+.byte 91
+.byte 93
+.byte 43
+.byte 59
+.byte 42
+.byte 58
+.byte 60
+.byte 62
+.byte 44
+.byte 46
+.byte 63
+.byte 47
+.byte 0
+.data
+.align 0
+L.486:
+.byte 10
+.byte 9
+.byte 8
+.byte 13
+.byte 12
+.byte 92
+.byte 39
+.byte 0
+.data
+.align 0
+L.487:
+.byte 32
+.byte 0
+.byte 0
+.globl s61
+.text
+.text
+.align 2
+.ent s61
+s61:
+.frame $sp,88,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-88
+.mask 0xc2fe0000,-36
+sw $17,16($sp)
+sw $18,20($sp)
+sw $19,24($sp)
+sw $20,28($sp)
+sw $21,32($sp)
+sw $22,36($sp)
+sw $23,40($sp)
+.cprestore 44
+sw $30,48($sp)
+sw $31,52($sp)
+sw $4,88($sp)
+la $22,L.481
+lw $24,0+88($sp)
+la $21,60($24)
+move $19,$0
+L.488:
+L.489:
+move $24,$21
+la $21,1($24)
+move $15,$22
+la $22,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.488
+la $24,-19
+sh $24,-26+88($sp)
+lh $24,-26+88($sp)
+sw $24,-32+88($sp)
+lw $24,-32+88($sp)
+la $15,-19
+beq $24,$15,L.491
+la $19,1($19)
+lw $24,0+88($sp)
+lw $24,44($24)
+beq $24,$0,L.493
+la $4,L.480
+la $5,1
+jal printf
+L.493:
+L.491:
+la $24,L.482
+sw $24,-24+88($sp)
+la $24,L.483
+sw $24,-20+88($sp)
+la $24,L.484
+sw $24,-16+88($sp)
+la $24,L.485
+sw $24,-12+88($sp)
+la $24,L.486
+sw $24,-8+88($sp)
+la $24,L.487
+sw $24,-4+88($sp)
+move $23,$0
+move $30,$0
+b L.505
+L.504:
+sll $24,$30,2
+la $15,-24+88($sp)
+addu $24,$24,$15
+lw $15,($24)
+la $14,1($15)
+sw $14,($24)
+lb $24,($15)
+bge $24,$0,L.507
+la $23,1
+L.507:
+L.505:
+sll $24,$30,2
+la $15,-24+88($sp)
+addu $24,$24,$15
+lw $24,($24)
+lb $24,($24)
+bne $24,$0,L.504
+L.501:
+la $30,1($30)
+la $24,6
+blt $30,$24,L.505
+beq $23,$0,L.509
+la $19,2($19)
+lw $24,0+88($sp)
+lw $24,44($24)
+beq $24,$0,L.511
+la $4,L.480
+la $5,2
+jal printf
+L.511:
+L.509:
+la $20,1048579
+move $18,$20
+move $17,$20
+sll $24,$18,8*(4-2); sra $24,$24,8*(4-2)
+beq $24,$20,L.516
+la $15,3
+bne $24,$15,L.515
+L.516:
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+beq $24,$20,L.513
+la $15,3
+beq $24,$15,L.513
+L.515:
+la $19,8($19)
+lw $24,0+88($sp)
+lw $24,44($24)
+beq $24,$0,L.517
+la $4,L.480
+la $5,8
+jal printf
+L.517:
+L.513:
+move $2,$19
+L.479:
+lw $17,16($sp)
+lw $18,20($sp)
+lw $19,24($sp)
+lw $20,28($sp)
+lw $21,32($sp)
+lw $22,36($sp)
+lw $23,40($sp)
+lw $25,44($sp)
+lw $30,48($sp)
+lw $31,52($sp)
+addu $sp,$sp,88
+j $31
+.end s61
+.data
+.align 0
+L.520:
+.byte 115
+.byte 54
+.byte 50
+.byte 54
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.521:
+.byte 115
+.byte 54
+.byte 50
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s626
+.text
+.text
+.align 2
+.ent s626
+s626:
+.frame $sp,152,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-152
+.fmask 0xff000000,-112
+.mask 0xc2ff0000,-64
+s.d $f24,16($sp)
+s.d $f26,24($sp)
+s.d $f28,32($sp)
+s.d $f30,40($sp)
+sw $16,48($sp)
+sw $17,52($sp)
+sw $18,56($sp)
+sw $19,60($sp)
+sw $20,64($sp)
+sw $21,68($sp)
+sw $22,72($sp)
+sw $23,76($sp)
+.cprestore 80
+sw $30,84($sp)
+sw $31,88($sp)
+move $30,$4
+la $20,L.521
+la $19,60($30)
+sw $0,-52+152($sp)
+L.522:
+L.523:
+move $24,$19
+la $19,1($24)
+move $15,$20
+la $20,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.522
+l.s $f30,L.411
+la $24,1
+move $18,$24
+move $22,$24
+move $23,$0
+b L.528
+L.525:
+l.s $f18,L.529
+mul.s $f30,$f18,$f30
+sll $24,$22,1
+or $22,$24,$18
+L.526:
+la $23,1($23)
+L.528:
+lw $24,12($30)
+subu $24,$24,2
+blt $23,$24,L.525
+mtc1 $22,$f18; cvt.s.w $f18,$f18
+s.s $f18,-60+152($sp)
+l.s $f18,-60+152($sp)
+sub.s $f18,$f30,$f18
+div.s $f30,$f18,$f30
+cvt.d.s $f18,$f30
+l.d $f16,L.416
+l.s $f10,28($30)
+cvt.d.s $f10,$f10
+mul.d $f16,$f16,$f10
+c.le.d $f18,$f16; bc1t L.530
+lw $24,-52+152($sp)
+la $24,2($24)
+sw $24,-52+152($sp)
+lw $24,44($30)
+beq $24,$0,L.532
+la $4,L.520
+la $5,2
+jal printf
+L.532:
+L.530:
+la $16,125
+la $24,125
+sh $24,-30+152($sp)
+la $24,125
+sw $24,-36+152($sp)
+la $24,15625
+sw $24,-44+152($sp)
+la $24,125
+sw $24,-40+152($sp)
+la $24,15625
+sw $24,-48+152($sp)
+la $17,125
+la $24,15625
+sw $24,-56+152($sp)
+l.s $f26,L.534
+l.d $f24,L.535
+l.d $f28,L.536
+move $23,$0
+L.537:
+la $24,-28+152($sp)
+addu $24,$23,$24
+sb $0,($24)
+L.538:
+la $23,1($23)
+la $24,28
+blt $23,$24,L.537
+sll $24,$16,8*(4-1); sra $24,$24,8*(4-1)
+mul $24,$24,$24
+lw $15,-44+152($sp)
+beq $24,$15,L.541
+la $24,1
+sb $24,-28+152($sp)
+L.541:
+lh $24,-30+152($sp)
+sll $15,$16,8*(4-1); sra $15,$15,8*(4-1)
+mul $24,$24,$15
+lw $15,-44+152($sp)
+beq $24,$15,L.543
+la $24,1
+sb $24,-27+152($sp)
+L.543:
+lh $24,-30+152($sp)
+mul $24,$24,$24
+lw $15,-44+152($sp)
+beq $24,$15,L.546
+la $24,1
+sb $24,-26+152($sp)
+L.546:
+lw $24,-36+152($sp)
+sll $15,$16,8*(4-1); sra $15,$15,8*(4-1)
+mul $24,$24,$15
+lw $15,-44+152($sp)
+beq $24,$15,L.549
+la $24,1
+sb $24,-25+152($sp)
+L.549:
+lw $24,-36+152($sp)
+lh $15,-30+152($sp)
+mul $24,$24,$15
+lw $15,-44+152($sp)
+beq $24,$15,L.552
+la $24,1
+sb $24,-24+152($sp)
+L.552:
+lw $24,-36+152($sp)
+mul $24,$24,$24
+lw $15,-44+152($sp)
+beq $24,$15,L.555
+la $24,1
+sb $24,-23+152($sp)
+L.555:
+lw $24,-40+152($sp)
+sll $15,$16,8*(4-1); sra $15,$15,8*(4-1)
+mul $24,$24,$15
+lw $15,-48+152($sp)
+beq $24,$15,L.558
+la $24,1
+sb $24,-22+152($sp)
+L.558:
+lw $24,-40+152($sp)
+lh $15,-30+152($sp)
+mul $24,$24,$15
+lw $15,-48+152($sp)
+beq $24,$15,L.561
+la $24,1
+sb $24,-21+152($sp)
+L.561:
+lw $24,-40+152($sp)
+lw $15,-36+152($sp)
+mul $24,$24,$15
+lw $15,-48+152($sp)
+beq $24,$15,L.564
+la $24,1
+sb $24,-20+152($sp)
+L.564:
+lw $24,-40+152($sp)
+mul $24,$24,$24
+lw $15,-48+152($sp)
+beq $24,$15,L.567
+la $24,1
+sb $24,-19+152($sp)
+L.567:
+sll $24,$16,8*(4-1); sra $24,$24,8*(4-1)
+mul $24,$17,$24
+lw $15,-56+152($sp)
+beq $24,$15,L.570
+la $24,1
+sb $24,-18+152($sp)
+L.570:
+lh $24,-30+152($sp)
+mul $24,$17,$24
+lw $15,-56+152($sp)
+beq $24,$15,L.573
+la $24,1
+sb $24,-17+152($sp)
+L.573:
+lw $24,-36+152($sp)
+mul $24,$17,$24
+lw $15,-56+152($sp)
+beq $24,$15,L.576
+la $24,1
+sb $24,-16+152($sp)
+L.576:
+move $24,$17
+lw $15,-40+152($sp)
+mul $24,$24,$15
+lw $15,-48+152($sp)
+beq $24,$15,L.579
+la $24,1
+sb $24,-15+152($sp)
+L.579:
+mul $24,$17,$17
+lw $15,-56+152($sp)
+beq $24,$15,L.582
+la $24,1
+sb $24,-14+152($sp)
+L.582:
+sll $24,$16,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+mul.s $f18,$f26,$f18
+cvt.d.s $f18,$f18
+c.eq.d $f18,$f28; bc1t L.585
+la $24,1
+sb $24,-13+152($sp)
+L.585:
+lh $24,-30+152($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+mul.s $f18,$f26,$f18
+cvt.d.s $f18,$f18
+c.eq.d $f18,$f28; bc1t L.588
+la $24,1
+sb $24,-12+152($sp)
+L.588:
+lw $24,-36+152($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+mul.s $f18,$f26,$f18
+cvt.d.s $f18,$f18
+c.eq.d $f18,$f28; bc1t L.591
+la $24,1
+sb $24,-11+152($sp)
+L.591:
+lw $24,-40+152($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+mul.s $f18,$f26,$f18
+cvt.d.s $f18,$f18
+c.eq.d $f18,$f28; bc1t L.594
+la $24,1
+sb $24,-10+152($sp)
+L.594:
+mtc1 $17,$f18; cvt.s.w $f18,$f18
+mul.s $f18,$f26,$f18
+cvt.d.s $f18,$f18
+c.eq.d $f18,$f28; bc1t L.598
+la $24,1
+sb $24,-9+152($sp)
+L.598:
+mul.s $f18,$f26,$f26
+cvt.d.s $f18,$f18
+c.eq.d $f18,$f28; bc1t L.601
+la $24,1
+sb $24,-8+152($sp)
+L.601:
+sll $24,$16,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+mul.d $f18,$f24,$f18
+c.eq.d $f18,$f28; bc1t L.604
+la $24,1
+sb $24,-7+152($sp)
+L.604:
+lh $24,-30+152($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+mul.d $f18,$f24,$f18
+c.eq.d $f18,$f28; bc1t L.607
+la $24,1
+sb $24,-6+152($sp)
+L.607:
+lw $24,-36+152($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+mul.d $f18,$f24,$f18
+c.eq.d $f18,$f28; bc1t L.610
+la $24,1
+sb $24,-5+152($sp)
+L.610:
+lw $24,-40+152($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+mul.d $f18,$f24,$f18
+c.eq.d $f18,$f28; bc1t L.613
+la $24,1
+sb $24,-4+152($sp)
+L.613:
+mtc1 $17,$f18; cvt.d.w $f18,$f18
+mul.d $f18,$f24,$f18
+c.eq.d $f18,$f28; bc1t L.616
+la $24,1
+sb $24,-3+152($sp)
+L.616:
+cvt.d.s $f18,$f26
+mul.d $f18,$f24,$f18
+c.eq.d $f18,$f28; bc1t L.619
+la $24,1
+sb $24,-2+152($sp)
+L.619:
+mul.d $f18,$f24,$f24
+c.eq.d $f18,$f28; bc1t L.622
+la $24,1
+sb $24,-1+152($sp)
+L.622:
+move $21,$0
+move $23,$0
+L.625:
+sll $24,$21,8*(4-1); sra $24,$24,8*(4-1)
+la $15,-28+152($sp)
+addu $15,$23,$15
+lb $15,($15)
+addu $24,$24,$15
+move $21,$24
+L.626:
+la $23,1($23)
+la $24,28
+blt $23,$24,L.625
+sll $24,$21,8*(4-1); sra $24,$24,8*(4-1)
+beq $24,$0,L.629
+lw $24,-52+152($sp)
+la $24,4($24)
+sw $24,-52+152($sp)
+lw $24,44($30)
+beq $24,$0,L.631
+la $4,L.520
+la $5,4
+jal printf
+la $4,L.633
+jal printf
+move $23,$0
+L.634:
+la $4,L.638
+la $24,-28+152($sp)
+addu $24,$23,$24
+lb $5,($24)
+jal printf
+L.635:
+la $23,1($23)
+la $24,28
+blt $23,$24,L.634
+la $4,L.639
+jal printf
+L.631:
+L.629:
+la $17,32768
+move $24,$17
+la $15,0x8000
+bleu $24,$15,L.640
+lw $24,-52+152($sp)
+la $24,8($24)
+sw $24,-52+152($sp)
+lw $24,44($30)
+beq $24,$0,L.642
+la $4,L.520
+la $5,8
+jal printf
+L.642:
+L.640:
+lw $2,-52+152($sp)
+L.519:
+l.d $f24,16($sp)
+l.d $f26,24($sp)
+l.d $f28,32($sp)
+l.d $f30,40($sp)
+lw $16,48($sp)
+lw $17,52($sp)
+lw $18,56($sp)
+lw $19,60($sp)
+lw $20,64($sp)
+lw $21,68($sp)
+lw $22,72($sp)
+lw $23,76($sp)
+lw $25,80($sp)
+lw $30,84($sp)
+lw $31,88($sp)
+addu $sp,$sp,152
+j $31
+.end s626
+.data
+.align 0
+L.645:
+.byte 115
+.byte 55
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.646:
+.byte 115
+.byte 55
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.sdata
+.align 0
+L.647:
+.byte 0x71
+.globl s71
+.text
+.text
+.align 2
+.ent s71
+s71:
+.frame $sp,96,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-96
+.mask 0xc2f00000,-56
+sw $20,16($sp)
+sw $21,20($sp)
+sw $22,24($sp)
+sw $23,28($sp)
+.cprestore 32
+sw $30,36($sp)
+sw $31,40($sp)
+move $30,$4
+la $23,L.646
+la $22,60($30)
+move $21,$0
+L.648:
+L.649:
+move $24,$22
+la $22,1($24)
+move $15,$23
+la $23,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.648
+lb $24,L.653
+lb $15,L.647
+beq $24,$15,L.651
+la $21,1($21)
+lw $24,44($30)
+beq $24,$0,L.654
+la $4,L.645
+la $5,1
+jal printf
+L.654:
+L.651:
+b L.656
+la $21,2($21)
+lw $24,44($30)
+beq $24,$0,L.658
+la $4,L.645
+la $5,2
+jal printf
+L.658:
+L.656:
+la $24,1942
+sw $24,-20+96($sp)
+lw $24,-20+96($sp)
+la $15,1942
+bne $24,$15,L.666
+lw $24,-20+96($sp)
+lw $15,-20+96($sp)
+beq $24,$15,L.661
+L.666:
+la $21,4($21)
+lw $24,44($30)
+beq $24,$0,L.667
+la $4,L.645
+la $5,4
+jal printf
+L.667:
+L.661:
+la $4,-5
+jal McCarthy
+la $15,91
+beq $2,$15,L.669
+la $21,8($21)
+lw $24,44($30)
+beq $24,$0,L.671
+la $4,L.645
+la $5,8
+jal printf
+L.671:
+L.669:
+la $20,2
+la $24,3
+sw $24,-44+96($sp)
+la $24,-44+96($sp)
+sw $24,-48+96($sp)
+move $4,$20
+lw $5,-48+96($sp)
+jal clobber
+la $24,2
+bne $20,$24,L.675
+lw $15,-44+96($sp)
+beq $15,$24,L.673
+L.675:
+la $21,16($21)
+lw $24,44($30)
+beq $24,$0,L.676
+la $4,L.645
+la $5,16
+jal printf
+L.676:
+L.673:
+l.s $f18,32($30)
+c.eq.s $f18,$f18; bc1t L.678
+la $21,32($21)
+lw $24,44($30)
+beq $24,$0,L.680
+la $4,L.645
+la $5,32
+jal printf
+L.680:
+L.678:
+move $2,$21
+L.644:
+lw $20,16($sp)
+lw $21,20($sp)
+lw $22,24($sp)
+lw $23,28($sp)
+lw $25,32($sp)
+lw $30,36($sp)
+lw $31,40($sp)
+addu $sp,$sp,96
+j $31
+.end s71
+.globl McCarthy
+.text
+.align 2
+.ent McCarthy
+McCarthy:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+lw $24,0+24($sp)
+la $15,100
+ble $24,$15,L.683
+lw $24,0+24($sp)
+subu $2,$24,10
+b L.682
+L.683:
+lw $24,0+24($sp)
+la $4,11($24)
+jal McCarthy
+move $24,$2
+move $4,$24
+jal McCarthy
+move $24,$2
+L.682:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end McCarthy
+.globl clobber
+.text
+.align 2
+.ent clobber
+clobber:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+la $4,3
+la $24,2
+sw $24,($5)
+move $2,$0
+L.685:
+j $31
+.end clobber
+.data
+.align 0
+L.687:
+.byte 76
+.byte 111
+.byte 99
+.byte 97
+.byte 108
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.data
+.align 0
+L.688:
+.byte 115
+.byte 55
+.byte 49
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.689:
+.byte 115
+.byte 55
+.byte 49
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s714
+.text
+.text
+.align 2
+.ent s714
+s714:
+.frame $sp,160,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-160
+.fmask 0xff000000,-120
+.mask 0xc2ff0000,-72
+s.d $f24,16($sp)
+s.d $f26,24($sp)
+s.d $f28,32($sp)
+s.d $f30,40($sp)
+sw $16,48($sp)
+sw $17,52($sp)
+sw $18,56($sp)
+sw $19,60($sp)
+sw $20,64($sp)
+sw $21,68($sp)
+sw $22,72($sp)
+sw $23,76($sp)
+.cprestore 80
+sw $30,84($sp)
+sw $31,88($sp)
+sw $4,160($sp)
+la $24,L.689
+sw $24,-16+160($sp)
+lw $24,0+160($sp)
+la $15,60($24)
+sw $15,-20+160($sp)
+sw $0,-24+160($sp)
+move $23,$0
+lw $30,48($24)
+L.690:
+L.691:
+lw $24,-20+160($sp)
+la $15,1($24)
+sw $15,-20+160($sp)
+lw $15,-16+160($sp)
+la $14,1($15)
+sw $14,-16+160($sp)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.690
+la $22,5
+la $17,2
+move $22,$17
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.693
+la $23,1
+beq $30,$0,L.695
+la $4,L.687
+move $5,$23
+jal printf
+L.695:
+L.693:
+la $22,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.697
+la $23,2
+beq $30,$0,L.699
+la $4,L.687
+move $5,$23
+jal printf
+L.699:
+L.697:
+la $22,5
+la $24,2
+sw $24,-4+160($sp)
+lw $15,-4+160($sp)
+move $22,$15
+sll $15,$22,8*(4-1); sra $15,$15,8*(4-1)
+beq $15,$24,L.701
+la $23,3
+beq $30,$0,L.703
+la $4,L.687
+move $5,$23
+jal printf
+L.703:
+L.701:
+la $22,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.705
+la $23,4
+beq $30,$0,L.707
+la $4,L.687
+move $5,$23
+jal printf
+L.707:
+L.705:
+la $22,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.709
+la $23,5
+beq $30,$0,L.711
+la $4,L.687
+move $5,$23
+jal printf
+L.711:
+L.709:
+la $22,5
+l.s $f26,L.529
+trunc.w.s $f2,$f26,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.713
+la $23,6
+beq $30,$0,L.715
+la $4,L.687
+move $5,$23
+jal printf
+L.715:
+L.713:
+la $22,5
+l.d $f24,L.416
+trunc.w.d $f2,$f24,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.717
+la $23,7
+beq $30,$0,L.719
+la $4,L.687
+move $5,$23
+jal printf
+L.719:
+L.717:
+la $21,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.721
+la $23,8
+beq $30,$0,L.723
+la $4,L.687
+move $5,$23
+jal printf
+L.723:
+L.721:
+la $21,5
+la $16,2
+move $21,$16
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.725
+la $23,9
+beq $30,$0,L.727
+la $4,L.687
+move $5,$23
+jal printf
+L.727:
+L.725:
+la $21,5
+la $24,2
+sw $24,-4+160($sp)
+lw $15,-4+160($sp)
+move $21,$15
+sll $15,$21,8*(4-2); sra $15,$15,8*(4-2)
+beq $15,$24,L.729
+la $23,10
+beq $30,$0,L.731
+la $4,L.687
+move $5,$23
+jal printf
+L.731:
+L.729:
+la $21,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.733
+la $23,11
+beq $30,$0,L.735
+la $4,L.687
+move $5,$23
+jal printf
+L.735:
+L.733:
+la $21,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.737
+la $23,12
+beq $30,$0,L.739
+la $4,L.687
+move $5,$23
+jal printf
+L.739:
+L.737:
+la $21,5
+l.s $f26,L.529
+trunc.w.s $f2,$f26,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.741
+la $23,13
+beq $30,$0,L.743
+la $4,L.687
+move $5,$23
+jal printf
+L.743:
+L.741:
+la $21,5
+l.d $f24,L.416
+trunc.w.d $f2,$f24,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.745
+la $23,14
+beq $30,$0,L.747
+la $4,L.687
+move $5,$23
+jal printf
+L.747:
+L.745:
+la $20,5
+la $17,2
+sll $20,$17,8*(4-1); sra $20,$20,8*(4-1)
+la $24,2
+beq $20,$24,L.749
+la $23,15
+beq $30,$0,L.751
+la $4,L.687
+move $5,$23
+jal printf
+L.751:
+L.749:
+la $20,5
+la $16,2
+sll $20,$16,8*(4-2); sra $20,$20,8*(4-2)
+la $24,2
+beq $20,$24,L.753
+la $23,16
+beq $30,$0,L.755
+la $4,L.687
+move $5,$23
+jal printf
+L.755:
+L.753:
+la $20,5
+la $24,2
+sw $24,-4+160($sp)
+lw $20,-4+160($sp)
+beq $20,$24,L.757
+la $23,17
+beq $30,$0,L.759
+la $4,L.687
+move $5,$23
+jal printf
+L.759:
+L.757:
+la $20,5
+la $24,2
+sw $24,-8+160($sp)
+lw $20,-8+160($sp)
+la $24,2
+beq $20,$24,L.761
+la $23,18
+beq $30,$0,L.763
+la $4,L.687
+move $5,$23
+jal printf
+L.763:
+L.761:
+la $20,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+move $20,$24
+la $24,2
+beq $20,$24,L.765
+la $23,19
+beq $30,$0,L.767
+la $4,L.687
+move $5,$23
+jal printf
+L.767:
+L.765:
+la $20,5
+l.s $f26,L.529
+trunc.w.s $f2,$f26,$20; mfc1 $20,$f2
+la $24,2
+beq $20,$24,L.769
+la $23,20
+beq $30,$0,L.771
+la $4,L.687
+move $5,$23
+jal printf
+L.771:
+L.769:
+la $20,5
+l.d $f24,L.416
+trunc.w.d $f2,$f24,$20; mfc1 $20,$f2
+la $24,2
+beq $20,$24,L.773
+la $23,21
+beq $30,$0,L.775
+la $4,L.687
+move $5,$23
+jal printf
+L.775:
+L.773:
+la $19,5
+la $17,2
+sll $19,$17,8*(4-1); sra $19,$19,8*(4-1)
+la $24,2
+beq $19,$24,L.777
+la $23,22
+beq $30,$0,L.779
+la $4,L.687
+move $5,$23
+jal printf
+L.779:
+L.777:
+la $19,5
+la $16,2
+sll $19,$16,8*(4-2); sra $19,$19,8*(4-2)
+la $24,2
+beq $19,$24,L.781
+la $23,23
+beq $30,$0,L.783
+la $4,L.687
+move $5,$23
+jal printf
+L.783:
+L.781:
+la $19,5
+la $24,2
+sw $24,-4+160($sp)
+lw $19,-4+160($sp)
+la $24,2
+beq $19,$24,L.785
+la $23,24
+beq $30,$0,L.787
+la $4,L.687
+move $5,$23
+jal printf
+L.787:
+L.785:
+la $19,5
+la $24,2
+sw $24,-8+160($sp)
+lw $19,-8+160($sp)
+beq $19,$24,L.789
+la $23,25
+beq $30,$0,L.791
+la $4,L.687
+move $5,$23
+jal printf
+L.791:
+L.789:
+la $19,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+move $19,$24
+la $24,2
+beq $19,$24,L.793
+la $23,26
+beq $30,$0,L.795
+la $4,L.687
+move $5,$23
+jal printf
+L.795:
+L.793:
+la $19,5
+l.s $f26,L.529
+trunc.w.s $f2,$f26,$19; mfc1 $19,$f2
+la $24,2
+beq $19,$24,L.797
+la $23,27
+beq $30,$0,L.799
+la $4,L.687
+move $5,$23
+jal printf
+L.799:
+L.797:
+la $19,5
+l.d $f24,L.416
+trunc.w.d $f2,$f24,$19; mfc1 $19,$f2
+la $24,2
+beq $19,$24,L.801
+la $23,28
+beq $30,$0,L.803
+la $4,L.687
+move $5,$23
+jal printf
+L.803:
+L.801:
+la $18,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+move $18,$24
+la $24,2
+beq $18,$24,L.805
+la $23,29
+beq $30,$0,L.807
+la $4,L.687
+move $5,$23
+jal printf
+L.807:
+L.805:
+la $18,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+move $18,$24
+la $24,2
+beq $18,$24,L.809
+la $23,30
+beq $30,$0,L.811
+la $4,L.687
+move $5,$23
+jal printf
+L.811:
+L.809:
+la $18,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+move $18,$24
+la $24,2
+beq $18,$24,L.813
+la $23,31
+beq $30,$0,L.815
+la $4,L.687
+move $5,$23
+jal printf
+L.815:
+L.813:
+la $18,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+move $18,$24
+la $24,2
+beq $18,$24,L.817
+la $23,32
+beq $30,$0,L.819
+la $4,L.687
+move $5,$23
+jal printf
+L.819:
+L.817:
+la $18,5
+la $24,2
+sw $24,-12+160($sp)
+lw $18,-12+160($sp)
+beq $18,$24,L.821
+la $23,33
+beq $30,$0,L.823
+la $4,L.687
+move $5,$23
+jal printf
+L.823:
+L.821:
+la $18,5
+l.s $f26,L.529
+l.s $f18,L.828
+c.lt.s $f26,$f18; bc1t L.826
+sub.s $f18,$f26,$f18
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-28+160($sp)
+b L.827
+L.826:
+trunc.w.s $f2,$f26,$24; mfc1 $24,$f2
+sw $24,-28+160($sp)
+L.827:
+lw $18,-28+160($sp)
+la $24,2
+beq $18,$24,L.829
+la $23,34
+beq $30,$0,L.831
+la $4,L.687
+move $5,$23
+jal printf
+L.831:
+L.829:
+la $18,5
+l.d $f24,L.416
+l.d $f18,L.836
+c.lt.d $f24,$f18; bc1t L.834
+sub.d $f18,$f24,$f18
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-32+160($sp)
+b L.835
+L.834:
+trunc.w.d $f2,$f24,$24; mfc1 $24,$f2
+sw $24,-32+160($sp)
+L.835:
+lw $18,-32+160($sp)
+la $24,2
+beq $18,$24,L.837
+la $23,35
+beq $30,$0,L.839
+la $4,L.687
+move $5,$23
+jal printf
+L.839:
+L.837:
+l.s $f30,L.841
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f30; cvt.s.w $f30,$f30
+l.s $f18,L.529
+c.eq.s $f30,$f18; bc1t L.842
+la $23,36
+beq $30,$0,L.844
+la $4,L.687
+move $5,$23
+jal printf
+L.844:
+L.842:
+l.s $f30,L.841
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f30; cvt.s.w $f30,$f30
+l.s $f18,L.529
+c.eq.s $f30,$f18; bc1t L.846
+la $23,37
+beq $30,$0,L.848
+la $4,L.687
+move $5,$23
+jal printf
+L.848:
+L.846:
+l.s $f30,L.841
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f30; cvt.s.w $f30,$f30
+l.s $f18,L.529
+c.eq.s $f30,$f18; bc1t L.850
+la $23,38
+beq $30,$0,L.852
+la $4,L.687
+move $5,$23
+jal printf
+L.852:
+L.850:
+l.s $f30,L.841
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f30; cvt.s.w $f30,$f30
+l.s $f18,L.529
+c.eq.s $f30,$f18; bc1t L.854
+la $23,39
+beq $30,$0,L.856
+la $4,L.687
+move $5,$23
+jal printf
+L.856:
+L.854:
+l.s $f30,L.841
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f30,$f18
+l.s $f18,L.529
+c.eq.s $f30,$f18; bc1t L.858
+la $23,40
+beq $30,$0,L.860
+la $4,L.687
+move $5,$23
+jal printf
+L.860:
+L.858:
+l.s $f30,L.841
+l.s $f18,L.529
+mov.s $f26,$f18
+mov.s $f30,$f26
+c.eq.s $f30,$f18; bc1t L.862
+la $23,41
+beq $30,$0,L.864
+la $4,L.687
+move $5,$23
+jal printf
+L.864:
+L.862:
+l.s $f30,L.841
+l.d $f24,L.416
+cvt.s.d $f30,$f24
+l.s $f18,L.529
+c.eq.s $f30,$f18; bc1t L.866
+la $23,42
+beq $30,$0,L.868
+la $4,L.687
+move $5,$23
+jal printf
+L.868:
+L.866:
+l.d $f28,L.870
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f28; cvt.d.w $f28,$f28
+l.d $f18,L.416
+c.eq.d $f28,$f18; bc1t L.871
+la $23,43
+beq $30,$0,L.873
+la $4,L.687
+move $5,$23
+jal printf
+L.873:
+L.871:
+l.d $f28,L.870
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f28; cvt.d.w $f28,$f28
+l.d $f18,L.416
+c.eq.d $f28,$f18; bc1t L.875
+la $23,44
+beq $30,$0,L.877
+la $4,L.687
+move $5,$23
+jal printf
+L.877:
+L.875:
+l.d $f28,L.870
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f28; cvt.d.w $f28,$f28
+l.d $f18,L.416
+c.eq.d $f28,$f18; bc1t L.879
+la $23,45
+beq $30,$0,L.881
+la $4,L.687
+move $5,$23
+jal printf
+L.881:
+L.879:
+l.d $f28,L.870
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f28; cvt.d.w $f28,$f28
+l.d $f18,L.416
+c.eq.d $f28,$f18; bc1t L.883
+la $23,46
+beq $30,$0,L.885
+la $4,L.687
+move $5,$23
+jal printf
+L.885:
+L.883:
+l.d $f28,L.870
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f28,$f18,$f16
+l.d $f18,L.416
+c.eq.d $f28,$f18; bc1t L.887
+la $23,47
+beq $30,$0,L.889
+la $4,L.687
+move $5,$23
+jal printf
+L.889:
+L.887:
+l.d $f28,L.870
+l.s $f26,L.529
+cvt.d.s $f28,$f26
+l.d $f18,L.416
+c.eq.d $f28,$f18; bc1t L.891
+la $23,48
+beq $30,$0,L.893
+la $4,L.687
+move $5,$23
+jal printf
+L.893:
+L.891:
+l.d $f28,L.870
+l.d $f18,L.416
+mov.d $f24,$f18
+mov.d $f28,$f24
+c.eq.d $f28,$f18; bc1t L.895
+la $23,49
+beq $30,$0,L.897
+la $4,L.687
+move $5,$23
+jal printf
+L.897:
+L.895:
+la $22,5
+la $17,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+addu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,7
+beq $24,$15,L.899
+la $23,50
+beq $30,$0,L.901
+la $4,L.687
+move $5,$23
+jal printf
+L.901:
+L.899:
+la $22,5
+la $16,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+addu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,7
+beq $24,$15,L.903
+la $23,51
+beq $30,$0,L.905
+la $4,L.687
+move $5,$23
+jal printf
+L.905:
+L.903:
+la $22,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-4+160($sp)
+addu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,7
+beq $24,$15,L.907
+la $23,52
+beq $30,$0,L.909
+la $4,L.687
+move $5,$23
+jal printf
+L.909:
+L.907:
+la $22,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+addu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,7
+beq $24,$15,L.911
+la $23,53
+beq $30,$0,L.913
+la $4,L.687
+move $5,$23
+jal printf
+L.913:
+L.911:
+la $22,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+addu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,7
+beq $24,$15,L.915
+la $23,54
+beq $30,$0,L.917
+la $4,L.687
+move $5,$23
+jal printf
+L.917:
+L.915:
+la $22,5
+l.s $f26,L.529
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+add.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,7
+beq $24,$15,L.919
+la $23,55
+beq $30,$0,L.921
+la $4,L.687
+move $5,$23
+jal printf
+L.921:
+L.919:
+la $22,5
+l.d $f24,L.416
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+add.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,7
+beq $24,$15,L.923
+la $23,56
+beq $30,$0,L.925
+la $4,L.687
+move $5,$23
+jal printf
+L.925:
+L.923:
+la $21,5
+la $17,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+addu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,7
+beq $24,$15,L.927
+la $23,57
+beq $30,$0,L.929
+la $4,L.687
+move $5,$23
+jal printf
+L.929:
+L.927:
+la $21,5
+la $16,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+addu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,7
+beq $24,$15,L.931
+la $23,58
+beq $30,$0,L.933
+la $4,L.687
+move $5,$23
+jal printf
+L.933:
+L.931:
+la $21,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-4+160($sp)
+addu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,7
+beq $24,$15,L.935
+la $23,59
+beq $30,$0,L.937
+la $4,L.687
+move $5,$23
+jal printf
+L.937:
+L.935:
+la $21,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+addu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,7
+beq $24,$15,L.939
+la $23,60
+beq $30,$0,L.941
+la $4,L.687
+move $5,$23
+jal printf
+L.941:
+L.939:
+la $21,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+addu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,7
+beq $24,$15,L.943
+la $23,61
+beq $30,$0,L.945
+la $4,L.687
+move $5,$23
+jal printf
+L.945:
+L.943:
+la $21,5
+l.s $f26,L.529
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+add.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,7
+beq $24,$15,L.947
+la $23,62
+beq $30,$0,L.949
+la $4,L.687
+move $5,$23
+jal printf
+L.949:
+L.947:
+la $21,5
+l.d $f24,L.416
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+add.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,7
+beq $24,$15,L.951
+la $23,63
+beq $30,$0,L.953
+la $4,L.687
+move $5,$23
+jal printf
+L.953:
+L.951:
+la $20,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+addu $20,$20,$24
+la $24,7
+beq $20,$24,L.955
+la $23,64
+beq $30,$0,L.957
+la $4,L.687
+move $5,$23
+jal printf
+L.957:
+L.955:
+la $20,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+addu $20,$20,$24
+la $24,7
+beq $20,$24,L.959
+la $23,65
+beq $30,$0,L.961
+la $4,L.687
+move $5,$23
+jal printf
+L.961:
+L.959:
+la $20,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+addu $20,$20,$24
+la $24,7
+beq $20,$24,L.963
+la $23,66
+beq $30,$0,L.965
+la $4,L.687
+move $5,$23
+jal printf
+L.965:
+L.963:
+la $20,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+addu $20,$20,$24
+la $24,7
+beq $20,$24,L.967
+la $23,67
+beq $30,$0,L.969
+la $4,L.687
+move $5,$23
+jal printf
+L.969:
+L.967:
+la $20,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$20
+lw $15,-12+160($sp)
+addu $24,$24,$15
+move $20,$24
+la $24,7
+beq $20,$24,L.971
+la $23,68
+beq $30,$0,L.973
+la $4,L.687
+move $5,$23
+jal printf
+L.973:
+L.971:
+la $20,5
+l.s $f26,L.529
+mtc1 $20,$f18; cvt.s.w $f18,$f18
+add.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$20; mfc1 $20,$f2
+la $24,7
+beq $20,$24,L.975
+la $23,69
+beq $30,$0,L.977
+la $4,L.687
+move $5,$23
+jal printf
+L.977:
+L.975:
+la $20,5
+l.d $f24,L.416
+mtc1 $20,$f18; cvt.d.w $f18,$f18
+add.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$20; mfc1 $20,$f2
+la $24,7
+beq $20,$24,L.979
+la $23,70
+beq $30,$0,L.981
+la $4,L.687
+move $5,$23
+jal printf
+L.981:
+L.979:
+la $19,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+addu $19,$19,$24
+la $24,7
+beq $19,$24,L.983
+la $23,71
+beq $30,$0,L.985
+la $4,L.687
+move $5,$23
+jal printf
+L.985:
+L.983:
+la $19,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+addu $19,$19,$24
+la $24,7
+beq $19,$24,L.987
+la $23,72
+beq $30,$0,L.989
+la $4,L.687
+move $5,$23
+jal printf
+L.989:
+L.987:
+la $19,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+addu $19,$19,$24
+la $24,7
+beq $19,$24,L.991
+la $23,73
+beq $30,$0,L.993
+la $4,L.687
+move $5,$23
+jal printf
+L.993:
+L.991:
+la $19,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+addu $19,$19,$24
+la $24,7
+beq $19,$24,L.995
+la $23,74
+beq $30,$0,L.997
+la $4,L.687
+move $5,$23
+jal printf
+L.997:
+L.995:
+la $19,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$19
+lw $15,-12+160($sp)
+addu $24,$24,$15
+move $19,$24
+la $24,7
+beq $19,$24,L.999
+la $23,75
+beq $30,$0,L.1001
+la $4,L.687
+move $5,$23
+jal printf
+L.1001:
+L.999:
+la $19,5
+l.s $f26,L.529
+mtc1 $19,$f18; cvt.s.w $f18,$f18
+add.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$19; mfc1 $19,$f2
+la $24,7
+beq $19,$24,L.1003
+la $23,76
+beq $30,$0,L.1005
+la $4,L.687
+move $5,$23
+jal printf
+L.1005:
+L.1003:
+la $19,5
+l.d $f24,L.416
+mtc1 $19,$f18; cvt.d.w $f18,$f18
+add.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$19; mfc1 $19,$f2
+la $24,7
+beq $19,$24,L.1007
+la $23,77
+beq $30,$0,L.1009
+la $4,L.687
+move $5,$23
+jal printf
+L.1009:
+L.1007:
+la $18,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+addu $18,$18,$24
+la $24,7
+beq $18,$24,L.1011
+la $23,78
+beq $30,$0,L.1013
+la $4,L.687
+move $5,$23
+jal printf
+L.1013:
+L.1011:
+la $18,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+addu $18,$18,$24
+la $24,7
+beq $18,$24,L.1015
+la $23,79
+beq $30,$0,L.1017
+la $4,L.687
+move $5,$23
+jal printf
+L.1017:
+L.1015:
+la $18,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+addu $18,$18,$24
+la $24,7
+beq $18,$24,L.1019
+la $23,80
+beq $30,$0,L.1021
+la $4,L.687
+move $5,$23
+jal printf
+L.1021:
+L.1019:
+la $18,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+addu $18,$18,$24
+la $24,7
+beq $18,$24,L.1023
+la $23,81
+beq $30,$0,L.1025
+la $4,L.687
+move $5,$23
+jal printf
+L.1025:
+L.1023:
+la $18,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+addu $18,$18,$24
+la $24,7
+beq $18,$24,L.1027
+la $23,82
+beq $30,$0,L.1029
+la $4,L.687
+move $5,$23
+jal printf
+L.1029:
+L.1027:
+la $18,5
+l.s $f26,L.529
+l.d $f18,L.596
+srl $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+add.s $f18,$f18,$f26
+l.s $f16,L.828
+c.lt.s $f18,$f16; bc1t L.1032
+sub.s $f16,$f18,$f16
+trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-36+160($sp)
+b L.1033
+L.1032:
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-36+160($sp)
+L.1033:
+lw $18,-36+160($sp)
+la $24,7
+beq $18,$24,L.1034
+la $23,83
+beq $30,$0,L.1036
+la $4,L.687
+move $5,$23
+jal printf
+L.1036:
+L.1034:
+la $18,5
+l.d $f24,L.416
+l.d $f18,L.596
+srl $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+add.d $f18,$f18,$f24
+l.d $f16,L.836
+c.lt.d $f18,$f16; bc1t L.1039
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-40+160($sp)
+b L.1040
+L.1039:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-40+160($sp)
+L.1040:
+lw $18,-40+160($sp)
+la $24,7
+beq $18,$24,L.1041
+la $23,84
+beq $30,$0,L.1043
+la $4,L.687
+move $5,$23
+jal printf
+L.1043:
+L.1041:
+l.s $f30,L.841
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+add.s $f30,$f30,$f18
+l.s $f18,L.1047
+c.eq.s $f30,$f18; bc1t L.1045
+la $23,85
+beq $30,$0,L.1048
+la $4,L.687
+move $5,$23
+jal printf
+L.1048:
+L.1045:
+l.s $f30,L.841
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+add.s $f30,$f30,$f18
+l.s $f18,L.1047
+c.eq.s $f30,$f18; bc1t L.1050
+la $23,86
+beq $30,$0,L.1052
+la $4,L.687
+move $5,$23
+jal printf
+L.1052:
+L.1050:
+l.s $f30,L.841
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+add.s $f30,$f30,$f18
+l.s $f18,L.1047
+c.eq.s $f30,$f18; bc1t L.1054
+la $23,87
+beq $30,$0,L.1056
+la $4,L.687
+move $5,$23
+jal printf
+L.1056:
+L.1054:
+l.s $f30,L.841
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+add.s $f30,$f30,$f18
+l.s $f18,L.1047
+c.eq.s $f30,$f18; bc1t L.1058
+la $23,88
+beq $30,$0,L.1060
+la $4,L.687
+move $5,$23
+jal printf
+L.1060:
+L.1058:
+l.s $f30,L.841
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+add.s $f30,$f30,$f18
+l.s $f18,L.1047
+c.eq.s $f30,$f18; bc1t L.1062
+la $23,89
+beq $30,$0,L.1064
+la $4,L.687
+move $5,$23
+jal printf
+L.1064:
+L.1062:
+l.s $f30,L.841
+l.s $f26,L.529
+add.s $f30,$f30,$f26
+l.s $f18,L.1047
+c.eq.s $f30,$f18; bc1t L.1066
+la $23,90
+beq $30,$0,L.1068
+la $4,L.687
+move $5,$23
+jal printf
+L.1068:
+L.1066:
+l.s $f30,L.841
+l.d $f24,L.416
+cvt.d.s $f18,$f30
+add.d $f18,$f18,$f24
+cvt.s.d $f30,$f18
+l.s $f18,L.1047
+c.eq.s $f30,$f18; bc1t L.1070
+la $23,91
+beq $30,$0,L.1072
+la $4,L.687
+move $5,$23
+jal printf
+L.1072:
+L.1070:
+l.d $f28,L.870
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+add.d $f28,$f28,$f18
+l.d $f18,L.1076
+c.eq.d $f28,$f18; bc1t L.1074
+la $23,92
+beq $30,$0,L.1077
+la $4,L.687
+move $5,$23
+jal printf
+L.1077:
+L.1074:
+l.d $f28,L.870
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+add.d $f28,$f28,$f18
+l.d $f18,L.1076
+c.eq.d $f28,$f18; bc1t L.1079
+la $23,93
+beq $30,$0,L.1081
+la $4,L.687
+move $5,$23
+jal printf
+L.1081:
+L.1079:
+l.d $f28,L.870
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+add.d $f28,$f28,$f18
+l.d $f18,L.1076
+c.eq.d $f28,$f18; bc1t L.1083
+la $23,94
+beq $30,$0,L.1085
+la $4,L.687
+move $5,$23
+jal printf
+L.1085:
+L.1083:
+l.d $f28,L.870
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+add.d $f28,$f28,$f18
+l.d $f18,L.1076
+c.eq.d $f28,$f18; bc1t L.1087
+la $23,95
+beq $30,$0,L.1089
+la $4,L.687
+move $5,$23
+jal printf
+L.1089:
+L.1087:
+l.d $f28,L.870
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+add.d $f28,$f28,$f18
+l.d $f18,L.1076
+c.eq.d $f28,$f18; bc1t L.1091
+la $23,96
+beq $30,$0,L.1093
+la $4,L.687
+move $5,$23
+jal printf
+L.1093:
+L.1091:
+l.d $f28,L.870
+l.s $f26,L.529
+cvt.d.s $f18,$f26
+add.d $f28,$f28,$f18
+l.d $f18,L.1076
+c.eq.d $f28,$f18; bc1t L.1095
+la $23,97
+beq $30,$0,L.1097
+la $4,L.687
+move $5,$23
+jal printf
+L.1097:
+L.1095:
+l.d $f28,L.870
+l.d $f24,L.416
+add.d $f28,$f28,$f24
+l.d $f18,L.1076
+c.eq.d $f28,$f18; bc1t L.1099
+la $23,98
+beq $30,$0,L.1101
+la $4,L.687
+move $5,$23
+jal printf
+L.1101:
+L.1099:
+la $22,5
+la $17,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+subu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,3
+beq $24,$15,L.1103
+la $23,99
+beq $30,$0,L.1105
+la $4,L.687
+move $5,$23
+jal printf
+L.1105:
+L.1103:
+la $22,5
+la $16,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+subu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,3
+beq $24,$15,L.1107
+la $23,100
+beq $30,$0,L.1109
+la $4,L.687
+move $5,$23
+jal printf
+L.1109:
+L.1107:
+la $22,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-4+160($sp)
+subu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,3
+beq $24,$15,L.1111
+la $23,101
+beq $30,$0,L.1113
+la $4,L.687
+move $5,$23
+jal printf
+L.1113:
+L.1111:
+la $22,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+subu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,3
+beq $24,$15,L.1115
+la $23,102
+beq $30,$0,L.1117
+la $4,L.687
+move $5,$23
+jal printf
+L.1117:
+L.1115:
+la $22,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+subu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,3
+beq $24,$15,L.1119
+la $23,103
+beq $30,$0,L.1121
+la $4,L.687
+move $5,$23
+jal printf
+L.1121:
+L.1119:
+la $22,5
+l.s $f26,L.529
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+sub.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,3
+beq $24,$15,L.1123
+la $23,104
+beq $30,$0,L.1125
+la $4,L.687
+move $5,$23
+jal printf
+L.1125:
+L.1123:
+la $22,5
+l.d $f24,L.416
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+sub.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,3
+beq $24,$15,L.1127
+la $23,105
+beq $30,$0,L.1129
+la $4,L.687
+move $5,$23
+jal printf
+L.1129:
+L.1127:
+la $21,5
+la $17,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+subu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,3
+beq $24,$15,L.1131
+la $23,106
+beq $30,$0,L.1133
+la $4,L.687
+move $5,$23
+jal printf
+L.1133:
+L.1131:
+la $21,5
+la $16,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+subu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,3
+beq $24,$15,L.1135
+la $23,107
+beq $30,$0,L.1137
+la $4,L.687
+move $5,$23
+jal printf
+L.1137:
+L.1135:
+la $21,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-4+160($sp)
+subu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,3
+beq $24,$15,L.1139
+la $23,108
+beq $30,$0,L.1141
+la $4,L.687
+move $5,$23
+jal printf
+L.1141:
+L.1139:
+la $21,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+subu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,3
+beq $24,$15,L.1143
+la $23,109
+beq $30,$0,L.1145
+la $4,L.687
+move $5,$23
+jal printf
+L.1145:
+L.1143:
+la $21,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+subu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,3
+beq $24,$15,L.1147
+la $23,110
+beq $30,$0,L.1149
+la $4,L.687
+move $5,$23
+jal printf
+L.1149:
+L.1147:
+la $21,5
+l.s $f26,L.529
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+sub.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,3
+beq $24,$15,L.1151
+la $23,111
+beq $30,$0,L.1153
+la $4,L.687
+move $5,$23
+jal printf
+L.1153:
+L.1151:
+la $21,5
+l.d $f24,L.416
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+sub.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,3
+beq $24,$15,L.1155
+la $23,112
+beq $30,$0,L.1157
+la $4,L.687
+move $5,$23
+jal printf
+L.1157:
+L.1155:
+la $20,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+subu $20,$20,$24
+la $24,3
+beq $20,$24,L.1159
+la $23,113
+beq $30,$0,L.1161
+la $4,L.687
+move $5,$23
+jal printf
+L.1161:
+L.1159:
+la $20,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+subu $20,$20,$24
+la $24,3
+beq $20,$24,L.1163
+la $23,114
+beq $30,$0,L.1165
+la $4,L.687
+move $5,$23
+jal printf
+L.1165:
+L.1163:
+la $20,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+subu $20,$20,$24
+la $24,3
+beq $20,$24,L.1167
+la $23,115
+beq $30,$0,L.1169
+la $4,L.687
+move $5,$23
+jal printf
+L.1169:
+L.1167:
+la $20,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+subu $20,$20,$24
+la $24,3
+beq $20,$24,L.1171
+la $23,116
+beq $30,$0,L.1173
+la $4,L.687
+move $5,$23
+jal printf
+L.1173:
+L.1171:
+la $20,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$20
+lw $15,-12+160($sp)
+subu $24,$24,$15
+move $20,$24
+la $24,3
+beq $20,$24,L.1175
+la $23,117
+beq $30,$0,L.1177
+la $4,L.687
+move $5,$23
+jal printf
+L.1177:
+L.1175:
+la $20,5
+l.s $f26,L.529
+mtc1 $20,$f18; cvt.s.w $f18,$f18
+sub.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$20; mfc1 $20,$f2
+la $24,3
+beq $20,$24,L.1179
+la $23,118
+beq $30,$0,L.1181
+la $4,L.687
+move $5,$23
+jal printf
+L.1181:
+L.1179:
+la $20,5
+l.d $f24,L.416
+mtc1 $20,$f18; cvt.d.w $f18,$f18
+sub.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$20; mfc1 $20,$f2
+la $24,3
+beq $20,$24,L.1183
+la $23,119
+beq $30,$0,L.1185
+la $4,L.687
+move $5,$23
+jal printf
+L.1185:
+L.1183:
+la $19,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+subu $19,$19,$24
+la $24,3
+beq $19,$24,L.1187
+la $23,120
+beq $30,$0,L.1189
+la $4,L.687
+move $5,$23
+jal printf
+L.1189:
+L.1187:
+la $19,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+subu $19,$19,$24
+la $24,3
+beq $19,$24,L.1191
+la $23,121
+beq $30,$0,L.1193
+la $4,L.687
+move $5,$23
+jal printf
+L.1193:
+L.1191:
+la $19,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+subu $19,$19,$24
+la $24,3
+beq $19,$24,L.1195
+la $23,122
+beq $30,$0,L.1197
+la $4,L.687
+move $5,$23
+jal printf
+L.1197:
+L.1195:
+la $19,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+subu $19,$19,$24
+la $24,3
+beq $19,$24,L.1199
+la $23,123
+beq $30,$0,L.1201
+la $4,L.687
+move $5,$23
+jal printf
+L.1201:
+L.1199:
+la $19,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$19
+lw $15,-12+160($sp)
+subu $24,$24,$15
+move $19,$24
+la $24,3
+beq $19,$24,L.1203
+la $23,124
+beq $30,$0,L.1205
+la $4,L.687
+move $5,$23
+jal printf
+L.1205:
+L.1203:
+la $19,5
+l.s $f26,L.529
+mtc1 $19,$f18; cvt.s.w $f18,$f18
+sub.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$19; mfc1 $19,$f2
+la $24,3
+beq $19,$24,L.1207
+la $23,125
+beq $30,$0,L.1209
+la $4,L.687
+move $5,$23
+jal printf
+L.1209:
+L.1207:
+la $19,5
+l.d $f24,L.416
+mtc1 $19,$f18; cvt.d.w $f18,$f18
+sub.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$19; mfc1 $19,$f2
+la $24,3
+beq $19,$24,L.1211
+la $23,126
+beq $30,$0,L.1213
+la $4,L.687
+move $5,$23
+jal printf
+L.1213:
+L.1211:
+la $18,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+subu $18,$18,$24
+la $24,3
+beq $18,$24,L.1215
+la $23,127
+beq $30,$0,L.1217
+la $4,L.687
+move $5,$23
+jal printf
+L.1217:
+L.1215:
+la $18,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+subu $18,$18,$24
+la $24,3
+beq $18,$24,L.1219
+la $23,128
+beq $30,$0,L.1221
+la $4,L.687
+move $5,$23
+jal printf
+L.1221:
+L.1219:
+la $18,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+subu $18,$18,$24
+la $24,3
+beq $18,$24,L.1223
+la $23,129
+beq $30,$0,L.1225
+la $4,L.687
+move $5,$23
+jal printf
+L.1225:
+L.1223:
+la $18,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+subu $18,$18,$24
+la $24,3
+beq $18,$24,L.1227
+la $23,130
+beq $30,$0,L.1229
+la $4,L.687
+move $5,$23
+jal printf
+L.1229:
+L.1227:
+la $18,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+subu $18,$18,$24
+la $24,3
+beq $18,$24,L.1231
+la $23,131
+beq $30,$0,L.1233
+la $4,L.687
+move $5,$23
+jal printf
+L.1233:
+L.1231:
+la $18,5
+l.s $f26,L.529
+l.d $f18,L.596
+srl $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+sub.s $f18,$f18,$f26
+l.s $f16,L.828
+c.lt.s $f18,$f16; bc1t L.1236
+sub.s $f16,$f18,$f16
+trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-44+160($sp)
+b L.1237
+L.1236:
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-44+160($sp)
+L.1237:
+lw $18,-44+160($sp)
+la $24,3
+beq $18,$24,L.1238
+la $23,132
+beq $30,$0,L.1240
+la $4,L.687
+move $5,$23
+jal printf
+L.1240:
+L.1238:
+la $18,5
+l.d $f24,L.416
+l.d $f18,L.596
+srl $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+sub.d $f18,$f18,$f24
+l.d $f16,L.836
+c.lt.d $f18,$f16; bc1t L.1243
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-48+160($sp)
+b L.1244
+L.1243:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-48+160($sp)
+L.1244:
+lw $18,-48+160($sp)
+la $24,3
+beq $18,$24,L.1245
+la $23,133
+beq $30,$0,L.1247
+la $4,L.687
+move $5,$23
+jal printf
+L.1247:
+L.1245:
+l.s $f30,L.841
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+sub.s $f30,$f30,$f18
+l.s $f18,L.1251
+c.eq.s $f30,$f18; bc1t L.1249
+la $23,134
+beq $30,$0,L.1252
+la $4,L.687
+move $5,$23
+jal printf
+L.1252:
+L.1249:
+l.s $f30,L.841
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+sub.s $f30,$f30,$f18
+l.s $f18,L.1251
+c.eq.s $f30,$f18; bc1t L.1254
+la $23,135
+beq $30,$0,L.1256
+la $4,L.687
+move $5,$23
+jal printf
+L.1256:
+L.1254:
+l.s $f30,L.841
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+sub.s $f30,$f30,$f18
+l.s $f18,L.1251
+c.eq.s $f30,$f18; bc1t L.1258
+la $23,136
+beq $30,$0,L.1260
+la $4,L.687
+move $5,$23
+jal printf
+L.1260:
+L.1258:
+l.s $f30,L.841
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+sub.s $f30,$f30,$f18
+l.s $f18,L.1251
+c.eq.s $f30,$f18; bc1t L.1262
+la $23,137
+beq $30,$0,L.1264
+la $4,L.687
+move $5,$23
+jal printf
+L.1264:
+L.1262:
+l.s $f30,L.841
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+sub.s $f30,$f30,$f18
+l.s $f18,L.1251
+c.eq.s $f30,$f18; bc1t L.1266
+la $23,138
+beq $30,$0,L.1268
+la $4,L.687
+move $5,$23
+jal printf
+L.1268:
+L.1266:
+l.s $f30,L.841
+l.s $f26,L.529
+sub.s $f30,$f30,$f26
+l.s $f18,L.1251
+c.eq.s $f30,$f18; bc1t L.1270
+la $23,139
+beq $30,$0,L.1272
+la $4,L.687
+move $5,$23
+jal printf
+L.1272:
+L.1270:
+l.s $f30,L.841
+l.d $f24,L.416
+cvt.d.s $f18,$f30
+sub.d $f18,$f18,$f24
+cvt.s.d $f30,$f18
+l.s $f18,L.1251
+c.eq.s $f30,$f18; bc1t L.1274
+la $23,140
+beq $30,$0,L.1276
+la $4,L.687
+move $5,$23
+jal printf
+L.1276:
+L.1274:
+l.d $f28,L.870
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+sub.d $f28,$f28,$f18
+l.d $f18,L.1280
+c.eq.d $f28,$f18; bc1t L.1278
+la $23,141
+beq $30,$0,L.1281
+la $4,L.687
+move $5,$23
+jal printf
+L.1281:
+L.1278:
+l.d $f28,L.870
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+sub.d $f28,$f28,$f18
+l.d $f18,L.1280
+c.eq.d $f28,$f18; bc1t L.1283
+la $23,142
+beq $30,$0,L.1285
+la $4,L.687
+move $5,$23
+jal printf
+L.1285:
+L.1283:
+l.d $f28,L.870
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+sub.d $f28,$f28,$f18
+l.d $f18,L.1280
+c.eq.d $f28,$f18; bc1t L.1287
+la $23,143
+beq $30,$0,L.1289
+la $4,L.687
+move $5,$23
+jal printf
+L.1289:
+L.1287:
+l.d $f28,L.870
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+sub.d $f28,$f28,$f18
+l.d $f18,L.1280
+c.eq.d $f28,$f18; bc1t L.1291
+la $23,144
+beq $30,$0,L.1293
+la $4,L.687
+move $5,$23
+jal printf
+L.1293:
+L.1291:
+l.d $f28,L.870
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+sub.d $f28,$f28,$f18
+l.d $f18,L.1280
+c.eq.d $f28,$f18; bc1t L.1295
+la $23,145
+beq $30,$0,L.1297
+la $4,L.687
+move $5,$23
+jal printf
+L.1297:
+L.1295:
+l.d $f28,L.870
+l.s $f26,L.529
+cvt.d.s $f18,$f26
+sub.d $f28,$f28,$f18
+l.d $f18,L.1280
+c.eq.d $f28,$f18; bc1t L.1299
+la $23,146
+beq $30,$0,L.1301
+la $4,L.687
+move $5,$23
+jal printf
+L.1301:
+L.1299:
+l.d $f28,L.870
+l.d $f24,L.416
+sub.d $f28,$f28,$f24
+l.d $f18,L.1280
+c.eq.d $f28,$f18; bc1t L.1303
+la $23,147
+beq $30,$0,L.1305
+la $4,L.687
+move $5,$23
+jal printf
+L.1305:
+L.1303:
+la $22,5
+la $17,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+mul $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,10
+beq $24,$15,L.1307
+la $23,148
+beq $30,$0,L.1309
+la $4,L.687
+move $5,$23
+jal printf
+L.1309:
+L.1307:
+la $22,5
+la $16,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+mul $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,10
+beq $24,$15,L.1311
+la $23,149
+beq $30,$0,L.1313
+la $4,L.687
+move $5,$23
+jal printf
+L.1313:
+L.1311:
+la $22,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-4+160($sp)
+mul $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,10
+beq $24,$15,L.1315
+la $23,150
+beq $30,$0,L.1317
+la $4,L.687
+move $5,$23
+jal printf
+L.1317:
+L.1315:
+la $22,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+mul $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,10
+beq $24,$15,L.1319
+la $23,151
+beq $30,$0,L.1321
+la $4,L.687
+move $5,$23
+jal printf
+L.1321:
+L.1319:
+la $22,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+mul $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,10
+beq $24,$15,L.1323
+la $23,152
+beq $30,$0,L.1325
+la $4,L.687
+move $5,$23
+jal printf
+L.1325:
+L.1323:
+la $22,5
+l.s $f26,L.529
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+mul.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,10
+beq $24,$15,L.1327
+la $23,153
+beq $30,$0,L.1329
+la $4,L.687
+move $5,$23
+jal printf
+L.1329:
+L.1327:
+la $22,5
+l.d $f24,L.416
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+mul.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,10
+beq $24,$15,L.1331
+la $23,154
+beq $30,$0,L.1333
+la $4,L.687
+move $5,$23
+jal printf
+L.1333:
+L.1331:
+la $21,5
+la $17,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+mul $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,10
+beq $24,$15,L.1335
+la $23,155
+beq $30,$0,L.1337
+la $4,L.687
+move $5,$23
+jal printf
+L.1337:
+L.1335:
+la $21,5
+la $16,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+mul $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,10
+beq $24,$15,L.1339
+la $23,156
+beq $30,$0,L.1341
+la $4,L.687
+move $5,$23
+jal printf
+L.1341:
+L.1339:
+la $21,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-4+160($sp)
+mul $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,10
+beq $24,$15,L.1343
+la $23,157
+beq $30,$0,L.1345
+la $4,L.687
+move $5,$23
+jal printf
+L.1345:
+L.1343:
+la $21,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+mul $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,10
+beq $24,$15,L.1347
+la $23,158
+beq $30,$0,L.1349
+la $4,L.687
+move $5,$23
+jal printf
+L.1349:
+L.1347:
+la $21,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+mul $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,10
+beq $24,$15,L.1351
+la $23,159
+beq $30,$0,L.1353
+la $4,L.687
+move $5,$23
+jal printf
+L.1353:
+L.1351:
+la $21,5
+l.s $f26,L.529
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+mul.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,10
+beq $24,$15,L.1355
+la $23,160
+beq $30,$0,L.1357
+la $4,L.687
+move $5,$23
+jal printf
+L.1357:
+L.1355:
+la $21,5
+l.d $f24,L.416
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+mul.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,10
+beq $24,$15,L.1359
+la $23,161
+beq $30,$0,L.1361
+la $4,L.687
+move $5,$23
+jal printf
+L.1361:
+L.1359:
+la $20,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mul $20,$20,$24
+la $24,10
+beq $20,$24,L.1363
+la $23,162
+beq $30,$0,L.1365
+la $4,L.687
+move $5,$23
+jal printf
+L.1365:
+L.1363:
+la $20,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mul $20,$20,$24
+la $24,10
+beq $20,$24,L.1367
+la $23,163
+beq $30,$0,L.1369
+la $4,L.687
+move $5,$23
+jal printf
+L.1369:
+L.1367:
+la $20,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mul $20,$20,$24
+la $24,10
+beq $20,$24,L.1371
+la $23,164
+beq $30,$0,L.1373
+la $4,L.687
+move $5,$23
+jal printf
+L.1373:
+L.1371:
+la $20,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mul $20,$20,$24
+la $24,10
+beq $20,$24,L.1375
+la $23,165
+beq $30,$0,L.1377
+la $4,L.687
+move $5,$23
+jal printf
+L.1377:
+L.1375:
+la $20,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$20
+lw $15,-12+160($sp)
+mul $24,$24,$15
+move $20,$24
+la $24,10
+beq $20,$24,L.1379
+la $23,166
+beq $30,$0,L.1381
+la $4,L.687
+move $5,$23
+jal printf
+L.1381:
+L.1379:
+la $20,5
+l.s $f26,L.529
+mtc1 $20,$f18; cvt.s.w $f18,$f18
+mul.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$20; mfc1 $20,$f2
+la $24,10
+beq $20,$24,L.1383
+la $23,167
+beq $30,$0,L.1385
+la $4,L.687
+move $5,$23
+jal printf
+L.1385:
+L.1383:
+la $20,5
+l.d $f24,L.416
+mtc1 $20,$f18; cvt.d.w $f18,$f18
+mul.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$20; mfc1 $20,$f2
+la $24,10
+beq $20,$24,L.1387
+la $23,168
+beq $30,$0,L.1389
+la $4,L.687
+move $5,$23
+jal printf
+L.1389:
+L.1387:
+la $19,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mul $19,$19,$24
+la $24,10
+beq $19,$24,L.1391
+la $23,169
+beq $30,$0,L.1393
+la $4,L.687
+move $5,$23
+jal printf
+L.1393:
+L.1391:
+la $19,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mul $19,$19,$24
+la $24,10
+beq $19,$24,L.1395
+la $23,170
+beq $30,$0,L.1397
+la $4,L.687
+move $5,$23
+jal printf
+L.1397:
+L.1395:
+la $19,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mul $19,$19,$24
+la $24,10
+beq $19,$24,L.1399
+la $23,171
+beq $30,$0,L.1401
+la $4,L.687
+move $5,$23
+jal printf
+L.1401:
+L.1399:
+la $19,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mul $19,$19,$24
+la $24,10
+beq $19,$24,L.1403
+la $23,172
+beq $30,$0,L.1405
+la $4,L.687
+move $5,$23
+jal printf
+L.1405:
+L.1403:
+la $19,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$19
+lw $15,-12+160($sp)
+mul $24,$24,$15
+move $19,$24
+la $24,10
+beq $19,$24,L.1407
+la $23,173
+beq $30,$0,L.1409
+la $4,L.687
+move $5,$23
+jal printf
+L.1409:
+L.1407:
+la $19,5
+l.s $f26,L.529
+mtc1 $19,$f18; cvt.s.w $f18,$f18
+mul.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$19; mfc1 $19,$f2
+la $24,10
+beq $19,$24,L.1411
+la $23,174
+beq $30,$0,L.1413
+la $4,L.687
+move $5,$23
+jal printf
+L.1413:
+L.1411:
+la $19,5
+l.d $f24,L.416
+mtc1 $19,$f18; cvt.d.w $f18,$f18
+mul.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$19; mfc1 $19,$f2
+la $24,10
+beq $19,$24,L.1415
+la $23,175
+beq $30,$0,L.1417
+la $4,L.687
+move $5,$23
+jal printf
+L.1417:
+L.1415:
+la $18,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mul $18,$18,$24
+la $24,10
+beq $18,$24,L.1419
+la $23,176
+beq $30,$0,L.1421
+la $4,L.687
+move $5,$23
+jal printf
+L.1421:
+L.1419:
+la $18,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mul $18,$18,$24
+la $24,10
+beq $18,$24,L.1423
+la $23,177
+beq $30,$0,L.1425
+la $4,L.687
+move $5,$23
+jal printf
+L.1425:
+L.1423:
+la $18,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mul $18,$18,$24
+la $24,10
+beq $18,$24,L.1427
+la $23,178
+beq $30,$0,L.1429
+la $4,L.687
+move $5,$23
+jal printf
+L.1429:
+L.1427:
+la $18,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mul $18,$18,$24
+la $24,10
+beq $18,$24,L.1431
+la $23,179
+beq $30,$0,L.1433
+la $4,L.687
+move $5,$23
+jal printf
+L.1433:
+L.1431:
+la $18,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+mul $18,$18,$24
+la $24,10
+beq $18,$24,L.1435
+la $23,180
+beq $30,$0,L.1437
+la $4,L.687
+move $5,$23
+jal printf
+L.1437:
+L.1435:
+la $18,5
+l.s $f26,L.529
+l.d $f18,L.596
+srl $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+mul.s $f18,$f18,$f26
+l.s $f16,L.828
+c.lt.s $f18,$f16; bc1t L.1440
+sub.s $f16,$f18,$f16
+trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-52+160($sp)
+b L.1441
+L.1440:
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-52+160($sp)
+L.1441:
+lw $18,-52+160($sp)
+la $24,10
+beq $18,$24,L.1442
+la $23,181
+beq $30,$0,L.1444
+la $4,L.687
+move $5,$23
+jal printf
+L.1444:
+L.1442:
+la $18,5
+l.d $f24,L.416
+l.d $f18,L.596
+srl $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+mul.d $f18,$f18,$f24
+l.d $f16,L.836
+c.lt.d $f18,$f16; bc1t L.1447
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-56+160($sp)
+b L.1448
+L.1447:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-56+160($sp)
+L.1448:
+lw $18,-56+160($sp)
+la $24,10
+beq $18,$24,L.1449
+la $23,182
+beq $30,$0,L.1451
+la $4,L.687
+move $5,$23
+jal printf
+L.1451:
+L.1449:
+l.s $f30,L.841
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+mul.s $f30,$f30,$f18
+l.s $f18,L.1455
+c.eq.s $f30,$f18; bc1t L.1453
+la $23,183
+beq $30,$0,L.1456
+la $4,L.687
+move $5,$23
+jal printf
+L.1456:
+L.1453:
+l.s $f30,L.841
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+mul.s $f30,$f30,$f18
+l.s $f18,L.1455
+c.eq.s $f30,$f18; bc1t L.1458
+la $23,184
+beq $30,$0,L.1460
+la $4,L.687
+move $5,$23
+jal printf
+L.1460:
+L.1458:
+l.s $f30,L.841
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+mul.s $f30,$f30,$f18
+l.s $f18,L.1455
+c.eq.s $f30,$f18; bc1t L.1462
+la $23,185
+beq $30,$0,L.1464
+la $4,L.687
+move $5,$23
+jal printf
+L.1464:
+L.1462:
+l.s $f30,L.841
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+mul.s $f30,$f30,$f18
+l.s $f18,L.1455
+c.eq.s $f30,$f18; bc1t L.1466
+la $23,186
+beq $30,$0,L.1468
+la $4,L.687
+move $5,$23
+jal printf
+L.1468:
+L.1466:
+l.s $f30,L.841
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+mul.s $f30,$f30,$f18
+l.s $f18,L.1455
+c.eq.s $f30,$f18; bc1t L.1470
+la $23,187
+beq $30,$0,L.1472
+la $4,L.687
+move $5,$23
+jal printf
+L.1472:
+L.1470:
+l.s $f30,L.841
+l.s $f26,L.529
+mul.s $f30,$f30,$f26
+l.s $f18,L.1455
+c.eq.s $f30,$f18; bc1t L.1474
+la $23,188
+beq $30,$0,L.1476
+la $4,L.687
+move $5,$23
+jal printf
+L.1476:
+L.1474:
+l.s $f30,L.841
+l.d $f24,L.416
+cvt.d.s $f18,$f30
+mul.d $f18,$f18,$f24
+cvt.s.d $f30,$f18
+l.s $f18,L.1455
+c.eq.s $f30,$f18; bc1t L.1478
+la $23,189
+beq $30,$0,L.1480
+la $4,L.687
+move $5,$23
+jal printf
+L.1480:
+L.1478:
+l.d $f28,L.870
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+mul.d $f28,$f28,$f18
+l.d $f18,L.1484
+c.eq.d $f28,$f18; bc1t L.1482
+la $23,190
+beq $30,$0,L.1485
+la $4,L.687
+move $5,$23
+jal printf
+L.1485:
+L.1482:
+l.d $f28,L.870
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+mul.d $f28,$f28,$f18
+l.d $f18,L.1484
+c.eq.d $f28,$f18; bc1t L.1487
+la $23,191
+beq $30,$0,L.1489
+la $4,L.687
+move $5,$23
+jal printf
+L.1489:
+L.1487:
+l.d $f28,L.870
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+mul.d $f28,$f28,$f18
+l.d $f18,L.1484
+c.eq.d $f28,$f18; bc1t L.1491
+la $23,192
+beq $30,$0,L.1493
+la $4,L.687
+move $5,$23
+jal printf
+L.1493:
+L.1491:
+l.d $f28,L.870
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+mul.d $f28,$f28,$f18
+l.d $f18,L.1484
+c.eq.d $f28,$f18; bc1t L.1495
+la $23,193
+beq $30,$0,L.1497
+la $4,L.687
+move $5,$23
+jal printf
+L.1497:
+L.1495:
+l.d $f28,L.870
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+mul.d $f28,$f28,$f18
+l.d $f18,L.1484
+c.eq.d $f28,$f18; bc1t L.1499
+la $23,194
+beq $30,$0,L.1501
+la $4,L.687
+move $5,$23
+jal printf
+L.1501:
+L.1499:
+l.d $f28,L.870
+l.s $f26,L.529
+cvt.d.s $f18,$f26
+mul.d $f28,$f28,$f18
+l.d $f18,L.1484
+c.eq.d $f28,$f18; bc1t L.1503
+la $23,195
+beq $30,$0,L.1505
+la $4,L.687
+move $5,$23
+jal printf
+L.1505:
+L.1503:
+l.d $f28,L.870
+l.d $f24,L.416
+mul.d $f28,$f28,$f24
+l.d $f18,L.1484
+c.eq.d $f28,$f18; bc1t L.1507
+la $23,196
+beq $30,$0,L.1509
+la $4,L.687
+move $5,$23
+jal printf
+L.1509:
+L.1507:
+la $22,5
+la $17,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+div $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.1511
+la $23,197
+beq $30,$0,L.1513
+la $4,L.687
+move $5,$23
+jal printf
+L.1513:
+L.1511:
+la $22,5
+la $16,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+div $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.1515
+la $23,198
+beq $30,$0,L.1517
+la $4,L.687
+move $5,$23
+jal printf
+L.1517:
+L.1515:
+la $22,5
+la $24,2
+sw $24,-4+160($sp)
+sll $15,$22,8*(4-1); sra $15,$15,8*(4-1)
+lw $14,-4+160($sp)
+div $15,$15,$14
+move $22,$15
+sll $15,$22,8*(4-1); sra $15,$15,8*(4-1)
+beq $15,$24,L.1519
+la $23,199
+beq $30,$0,L.1521
+la $4,L.687
+move $5,$23
+jal printf
+L.1521:
+L.1519:
+la $22,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+div $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.1523
+la $23,200
+beq $30,$0,L.1525
+la $4,L.687
+move $5,$23
+jal printf
+L.1525:
+L.1523:
+la $22,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+divu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.1527
+la $23,201
+beq $30,$0,L.1529
+la $4,L.687
+move $5,$23
+jal printf
+L.1529:
+L.1527:
+la $22,5
+l.s $f26,L.529
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+div.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.1531
+la $23,202
+beq $30,$0,L.1533
+la $4,L.687
+move $5,$23
+jal printf
+L.1533:
+L.1531:
+la $22,5
+l.d $f24,L.416
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+div.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,2
+beq $24,$15,L.1535
+la $23,203
+beq $30,$0,L.1537
+la $4,L.687
+move $5,$23
+jal printf
+L.1537:
+L.1535:
+la $21,5
+la $17,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+div $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.1539
+la $23,204
+beq $30,$0,L.1541
+la $4,L.687
+move $5,$23
+jal printf
+L.1541:
+L.1539:
+la $21,5
+la $16,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+div $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.1543
+la $23,205
+beq $30,$0,L.1545
+la $4,L.687
+move $5,$23
+jal printf
+L.1545:
+L.1543:
+la $21,5
+la $24,2
+sw $24,-4+160($sp)
+sll $15,$21,8*(4-2); sra $15,$15,8*(4-2)
+lw $14,-4+160($sp)
+div $15,$15,$14
+move $21,$15
+sll $15,$21,8*(4-2); sra $15,$15,8*(4-2)
+beq $15,$24,L.1547
+la $23,206
+beq $30,$0,L.1549
+la $4,L.687
+move $5,$23
+jal printf
+L.1549:
+L.1547:
+la $21,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+div $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.1551
+la $23,207
+beq $30,$0,L.1553
+la $4,L.687
+move $5,$23
+jal printf
+L.1553:
+L.1551:
+la $21,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+divu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.1555
+la $23,208
+beq $30,$0,L.1557
+la $4,L.687
+move $5,$23
+jal printf
+L.1557:
+L.1555:
+la $21,5
+l.s $f26,L.529
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+div.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.1559
+la $23,209
+beq $30,$0,L.1561
+la $4,L.687
+move $5,$23
+jal printf
+L.1561:
+L.1559:
+la $21,5
+l.d $f24,L.416
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+div.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,2
+beq $24,$15,L.1563
+la $23,210
+beq $30,$0,L.1565
+la $4,L.687
+move $5,$23
+jal printf
+L.1565:
+L.1563:
+la $20,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+div $20,$20,$24
+la $24,2
+beq $20,$24,L.1567
+la $23,211
+beq $30,$0,L.1569
+la $4,L.687
+move $5,$23
+jal printf
+L.1569:
+L.1567:
+la $20,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+div $20,$20,$24
+la $24,2
+beq $20,$24,L.1571
+la $23,212
+beq $30,$0,L.1573
+la $4,L.687
+move $5,$23
+jal printf
+L.1573:
+L.1571:
+la $20,5
+la $24,2
+sw $24,-4+160($sp)
+lw $15,-4+160($sp)
+div $20,$20,$15
+beq $20,$24,L.1575
+la $23,213
+beq $30,$0,L.1577
+la $4,L.687
+move $5,$23
+jal printf
+L.1577:
+L.1575:
+la $20,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+div $20,$20,$24
+la $24,2
+beq $20,$24,L.1579
+la $23,214
+beq $30,$0,L.1581
+la $4,L.687
+move $5,$23
+jal printf
+L.1581:
+L.1579:
+la $20,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$20
+lw $15,-12+160($sp)
+divu $24,$24,$15
+move $20,$24
+la $24,2
+beq $20,$24,L.1583
+la $23,215
+beq $30,$0,L.1585
+la $4,L.687
+move $5,$23
+jal printf
+L.1585:
+L.1583:
+la $20,5
+l.s $f26,L.529
+mtc1 $20,$f18; cvt.s.w $f18,$f18
+div.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$20; mfc1 $20,$f2
+la $24,2
+beq $20,$24,L.1587
+la $23,216
+beq $30,$0,L.1589
+la $4,L.687
+move $5,$23
+jal printf
+L.1589:
+L.1587:
+la $20,5
+l.d $f24,L.416
+mtc1 $20,$f18; cvt.d.w $f18,$f18
+div.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$20; mfc1 $20,$f2
+la $24,2
+beq $20,$24,L.1591
+la $23,217
+beq $30,$0,L.1593
+la $4,L.687
+move $5,$23
+jal printf
+L.1593:
+L.1591:
+la $19,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+div $19,$19,$24
+la $24,2
+beq $19,$24,L.1595
+la $23,218
+beq $30,$0,L.1597
+la $4,L.687
+move $5,$23
+jal printf
+L.1597:
+L.1595:
+la $19,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+div $19,$19,$24
+la $24,2
+beq $19,$24,L.1599
+la $23,219
+beq $30,$0,L.1601
+la $4,L.687
+move $5,$23
+jal printf
+L.1601:
+L.1599:
+la $19,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+div $19,$19,$24
+la $24,2
+beq $19,$24,L.1603
+la $23,220
+beq $30,$0,L.1605
+la $4,L.687
+move $5,$23
+jal printf
+L.1605:
+L.1603:
+la $19,5
+la $24,2
+sw $24,-8+160($sp)
+lw $15,-8+160($sp)
+div $19,$19,$15
+beq $19,$24,L.1607
+la $23,221
+beq $30,$0,L.1609
+la $4,L.687
+move $5,$23
+jal printf
+L.1609:
+L.1607:
+la $19,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$19
+lw $15,-12+160($sp)
+divu $24,$24,$15
+move $19,$24
+la $24,2
+beq $19,$24,L.1611
+la $23,222
+beq $30,$0,L.1613
+la $4,L.687
+move $5,$23
+jal printf
+L.1613:
+L.1611:
+la $19,5
+l.s $f26,L.529
+mtc1 $19,$f18; cvt.s.w $f18,$f18
+div.s $f18,$f18,$f26
+trunc.w.s $f2,$f18,$19; mfc1 $19,$f2
+la $24,2
+beq $19,$24,L.1615
+la $23,223
+beq $30,$0,L.1617
+la $4,L.687
+move $5,$23
+jal printf
+L.1617:
+L.1615:
+la $19,5
+l.d $f24,L.416
+mtc1 $19,$f18; cvt.d.w $f18,$f18
+div.d $f18,$f18,$f24
+trunc.w.d $f2,$f18,$19; mfc1 $19,$f2
+la $24,2
+beq $19,$24,L.1619
+la $23,224
+beq $30,$0,L.1621
+la $4,L.687
+move $5,$23
+jal printf
+L.1621:
+L.1619:
+la $18,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+divu $18,$18,$24
+la $24,2
+beq $18,$24,L.1623
+la $23,225
+beq $30,$0,L.1625
+la $4,L.687
+move $5,$23
+jal printf
+L.1625:
+L.1623:
+la $18,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+divu $18,$18,$24
+la $24,2
+beq $18,$24,L.1627
+la $23,226
+beq $30,$0,L.1629
+la $4,L.687
+move $5,$23
+jal printf
+L.1629:
+L.1627:
+la $18,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+divu $18,$18,$24
+la $24,2
+beq $18,$24,L.1631
+la $23,227
+beq $30,$0,L.1633
+la $4,L.687
+move $5,$23
+jal printf
+L.1633:
+L.1631:
+la $18,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+divu $18,$18,$24
+la $24,2
+beq $18,$24,L.1635
+la $23,228
+beq $30,$0,L.1637
+la $4,L.687
+move $5,$23
+jal printf
+L.1637:
+L.1635:
+la $18,5
+la $24,2
+sw $24,-12+160($sp)
+lw $15,-12+160($sp)
+divu $18,$18,$15
+beq $18,$24,L.1639
+la $23,229
+beq $30,$0,L.1641
+la $4,L.687
+move $5,$23
+jal printf
+L.1641:
+L.1639:
+la $18,5
+l.s $f26,L.529
+l.d $f18,L.596
+srl $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+div.s $f18,$f18,$f26
+l.s $f16,L.828
+c.lt.s $f18,$f16; bc1t L.1644
+sub.s $f16,$f18,$f16
+trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-60+160($sp)
+b L.1645
+L.1644:
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-60+160($sp)
+L.1645:
+lw $18,-60+160($sp)
+la $24,2
+beq $18,$24,L.1646
+la $23,230
+beq $30,$0,L.1648
+la $4,L.687
+move $5,$23
+jal printf
+L.1648:
+L.1646:
+la $18,5
+l.d $f24,L.416
+l.d $f18,L.596
+srl $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$18,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+div.d $f18,$f18,$f24
+l.d $f16,L.836
+c.lt.d $f18,$f16; bc1t L.1651
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-64+160($sp)
+b L.1652
+L.1651:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-64+160($sp)
+L.1652:
+lw $18,-64+160($sp)
+la $24,2
+beq $18,$24,L.1653
+la $23,231
+beq $30,$0,L.1655
+la $4,L.687
+move $5,$23
+jal printf
+L.1655:
+L.1653:
+l.s $f30,L.841
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+div.s $f30,$f30,$f18
+cvt.d.s $f18,$f30
+l.d $f16,L.1659
+c.eq.d $f18,$f16; bc1t L.1657
+la $23,232
+beq $30,$0,L.1660
+la $4,L.687
+move $5,$23
+jal printf
+L.1660:
+L.1657:
+l.s $f30,L.841
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+div.s $f30,$f30,$f18
+cvt.d.s $f18,$f30
+l.d $f16,L.1659
+c.eq.d $f18,$f16; bc1t L.1662
+la $23,233
+beq $30,$0,L.1664
+la $4,L.687
+move $5,$23
+jal printf
+L.1664:
+L.1662:
+l.s $f30,L.841
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+div.s $f30,$f30,$f18
+cvt.d.s $f18,$f30
+l.d $f16,L.1659
+c.eq.d $f18,$f16; bc1t L.1666
+la $23,234
+beq $30,$0,L.1668
+la $4,L.687
+move $5,$23
+jal printf
+L.1668:
+L.1666:
+l.s $f30,L.841
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+div.s $f30,$f30,$f18
+cvt.d.s $f18,$f30
+l.d $f16,L.1659
+c.eq.d $f18,$f16; bc1t L.1670
+la $23,235
+beq $30,$0,L.1672
+la $4,L.687
+move $5,$23
+jal printf
+L.1672:
+L.1670:
+l.s $f30,L.841
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f18,$f18
+div.s $f30,$f30,$f18
+cvt.d.s $f18,$f30
+l.d $f16,L.1659
+c.eq.d $f18,$f16; bc1t L.1674
+la $23,236
+beq $30,$0,L.1676
+la $4,L.687
+move $5,$23
+jal printf
+L.1676:
+L.1674:
+l.s $f30,L.841
+l.s $f26,L.529
+div.s $f30,$f30,$f26
+cvt.d.s $f18,$f30
+l.d $f16,L.1659
+c.eq.d $f18,$f16; bc1t L.1678
+la $23,237
+beq $30,$0,L.1680
+la $4,L.687
+move $5,$23
+jal printf
+L.1680:
+L.1678:
+l.s $f30,L.841
+l.d $f24,L.416
+cvt.d.s $f18,$f30
+div.d $f18,$f18,$f24
+cvt.s.d $f30,$f18
+cvt.d.s $f18,$f30
+l.d $f16,L.1659
+c.eq.d $f18,$f16; bc1t L.1682
+la $23,238
+beq $30,$0,L.1684
+la $4,L.687
+move $5,$23
+jal printf
+L.1684:
+L.1682:
+l.d $f28,L.870
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+div.d $f28,$f28,$f18
+l.d $f18,L.1659
+c.eq.d $f28,$f18; bc1t L.1686
+la $23,239
+beq $30,$0,L.1688
+la $4,L.687
+move $5,$23
+jal printf
+L.1688:
+L.1686:
+l.d $f28,L.870
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+div.d $f28,$f28,$f18
+l.d $f18,L.1659
+c.eq.d $f28,$f18; bc1t L.1690
+la $23,240
+beq $30,$0,L.1692
+la $4,L.687
+move $5,$23
+jal printf
+L.1692:
+L.1690:
+l.d $f28,L.870
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+div.d $f28,$f28,$f18
+l.d $f18,L.1659
+c.eq.d $f28,$f18; bc1t L.1694
+la $23,241
+beq $30,$0,L.1696
+la $4,L.687
+move $5,$23
+jal printf
+L.1696:
+L.1694:
+l.d $f28,L.870
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+div.d $f28,$f28,$f18
+l.d $f18,L.1659
+c.eq.d $f28,$f18; bc1t L.1698
+la $23,242
+beq $30,$0,L.1700
+la $4,L.687
+move $5,$23
+jal printf
+L.1700:
+L.1698:
+l.d $f28,L.870
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+l.d $f18,L.596
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+div.d $f28,$f28,$f18
+l.d $f18,L.1659
+c.eq.d $f28,$f18; bc1t L.1702
+la $23,243
+beq $30,$0,L.1704
+la $4,L.687
+move $5,$23
+jal printf
+L.1704:
+L.1702:
+l.d $f28,L.870
+l.s $f26,L.529
+cvt.d.s $f18,$f26
+div.d $f28,$f28,$f18
+l.d $f18,L.1659
+c.eq.d $f28,$f18; bc1t L.1706
+la $23,244
+beq $30,$0,L.1708
+la $4,L.687
+move $5,$23
+jal printf
+L.1708:
+L.1706:
+l.d $f28,L.870
+l.d $f24,L.416
+div.d $f28,$f28,$f24
+l.d $f18,L.1659
+c.eq.d $f28,$f18; bc1t L.1710
+la $23,245
+beq $30,$0,L.1712
+la $4,L.687
+move $5,$23
+jal printf
+L.1712:
+L.1710:
+la $22,5
+la $17,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+rem $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1714
+la $23,246
+beq $30,$0,L.1716
+la $4,L.687
+move $5,$23
+jal printf
+L.1716:
+L.1714:
+la $22,5
+la $16,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+rem $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1718
+la $23,247
+beq $30,$0,L.1720
+la $4,L.687
+move $5,$23
+jal printf
+L.1720:
+L.1718:
+la $22,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-4+160($sp)
+rem $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1722
+la $23,248
+beq $30,$0,L.1724
+la $4,L.687
+move $5,$23
+jal printf
+L.1724:
+L.1722:
+la $22,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+rem $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1726
+la $23,249
+beq $30,$0,L.1728
+la $4,L.687
+move $5,$23
+jal printf
+L.1728:
+L.1726:
+la $22,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+remu $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1730
+la $23,250
+beq $30,$0,L.1732
+la $4,L.687
+move $5,$23
+jal printf
+L.1732:
+L.1730:
+la $21,5
+la $17,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+rem $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1734
+la $23,251
+beq $30,$0,L.1736
+la $4,L.687
+move $5,$23
+jal printf
+L.1736:
+L.1734:
+la $21,5
+la $16,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+rem $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1738
+la $23,252
+beq $30,$0,L.1740
+la $4,L.687
+move $5,$23
+jal printf
+L.1740:
+L.1738:
+la $21,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-4+160($sp)
+rem $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1742
+la $23,253
+beq $30,$0,L.1744
+la $4,L.687
+move $5,$23
+jal printf
+L.1744:
+L.1742:
+la $21,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+rem $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1746
+la $23,254
+beq $30,$0,L.1748
+la $4,L.687
+move $5,$23
+jal printf
+L.1748:
+L.1746:
+la $21,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+remu $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1750
+la $23,255
+beq $30,$0,L.1752
+la $4,L.687
+move $5,$23
+jal printf
+L.1752:
+L.1750:
+la $20,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+rem $20,$20,$24
+la $24,1
+beq $20,$24,L.1754
+la $23,256
+beq $30,$0,L.1756
+la $4,L.687
+move $5,$23
+jal printf
+L.1756:
+L.1754:
+la $20,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+rem $20,$20,$24
+la $24,1
+beq $20,$24,L.1758
+la $23,257
+beq $30,$0,L.1760
+la $4,L.687
+move $5,$23
+jal printf
+L.1760:
+L.1758:
+la $20,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+rem $20,$20,$24
+la $24,1
+beq $20,$24,L.1762
+la $23,258
+beq $30,$0,L.1764
+la $4,L.687
+move $5,$23
+jal printf
+L.1764:
+L.1762:
+la $20,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+rem $20,$20,$24
+la $24,1
+beq $20,$24,L.1766
+la $23,259
+beq $30,$0,L.1768
+la $4,L.687
+move $5,$23
+jal printf
+L.1768:
+L.1766:
+la $20,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$20
+lw $15,-12+160($sp)
+remu $24,$24,$15
+move $20,$24
+la $24,1
+beq $20,$24,L.1770
+la $23,260
+beq $30,$0,L.1772
+la $4,L.687
+move $5,$23
+jal printf
+L.1772:
+L.1770:
+la $19,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+rem $19,$19,$24
+la $24,1
+beq $19,$24,L.1774
+la $23,261
+beq $30,$0,L.1776
+la $4,L.687
+move $5,$23
+jal printf
+L.1776:
+L.1774:
+la $19,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+rem $19,$19,$24
+la $24,1
+beq $19,$24,L.1778
+la $23,262
+beq $30,$0,L.1780
+la $4,L.687
+move $5,$23
+jal printf
+L.1780:
+L.1778:
+la $19,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+rem $19,$19,$24
+la $24,1
+beq $19,$24,L.1782
+la $23,263
+beq $30,$0,L.1784
+la $4,L.687
+move $5,$23
+jal printf
+L.1784:
+L.1782:
+la $19,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+rem $19,$19,$24
+la $24,1
+beq $19,$24,L.1786
+la $23,264
+beq $30,$0,L.1788
+la $4,L.687
+move $5,$23
+jal printf
+L.1788:
+L.1786:
+la $19,5
+la $24,2
+sw $24,-12+160($sp)
+move $24,$19
+lw $15,-12+160($sp)
+remu $24,$24,$15
+move $19,$24
+la $24,1
+beq $19,$24,L.1790
+la $23,265
+beq $30,$0,L.1792
+la $4,L.687
+move $5,$23
+jal printf
+L.1792:
+L.1790:
+la $18,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+remu $18,$18,$24
+la $24,1
+beq $18,$24,L.1794
+la $23,266
+beq $30,$0,L.1796
+la $4,L.687
+move $5,$23
+jal printf
+L.1796:
+L.1794:
+la $18,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+remu $18,$18,$24
+la $24,1
+beq $18,$24,L.1798
+la $23,267
+beq $30,$0,L.1800
+la $4,L.687
+move $5,$23
+jal printf
+L.1800:
+L.1798:
+la $18,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+remu $18,$18,$24
+la $24,1
+beq $18,$24,L.1802
+la $23,268
+beq $30,$0,L.1804
+la $4,L.687
+move $5,$23
+jal printf
+L.1804:
+L.1802:
+la $18,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+remu $18,$18,$24
+la $24,1
+beq $18,$24,L.1806
+la $23,269
+beq $30,$0,L.1808
+la $4,L.687
+move $5,$23
+jal printf
+L.1808:
+L.1806:
+la $18,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+remu $18,$18,$24
+la $24,1
+beq $18,$24,L.1810
+la $23,270
+beq $30,$0,L.1812
+la $4,L.687
+move $5,$23
+jal printf
+L.1812:
+L.1810:
+la $22,5
+la $17,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+sra $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1814
+la $23,271
+beq $30,$0,L.1816
+la $4,L.687
+move $5,$23
+jal printf
+L.1816:
+L.1814:
+la $22,5
+la $16,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+sra $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1818
+la $23,272
+beq $30,$0,L.1820
+la $4,L.687
+move $5,$23
+jal printf
+L.1820:
+L.1818:
+la $22,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-4+160($sp)
+sra $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1822
+la $23,273
+beq $30,$0,L.1824
+la $4,L.687
+move $5,$23
+jal printf
+L.1824:
+L.1822:
+la $22,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+sra $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1826
+la $23,274
+beq $30,$0,L.1828
+la $4,L.687
+move $5,$23
+jal printf
+L.1828:
+L.1826:
+la $22,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+sra $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,1
+beq $24,$15,L.1830
+la $23,275
+beq $30,$0,L.1832
+la $4,L.687
+move $5,$23
+jal printf
+L.1832:
+L.1830:
+la $21,5
+la $17,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+sra $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1834
+la $23,276
+beq $30,$0,L.1836
+la $4,L.687
+move $5,$23
+jal printf
+L.1836:
+L.1834:
+la $21,5
+la $16,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+sra $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1838
+la $23,277
+beq $30,$0,L.1840
+la $4,L.687
+move $5,$23
+jal printf
+L.1840:
+L.1838:
+la $21,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-4+160($sp)
+sra $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1842
+la $23,278
+beq $30,$0,L.1844
+la $4,L.687
+move $5,$23
+jal printf
+L.1844:
+L.1842:
+la $21,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+sra $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1846
+la $23,279
+beq $30,$0,L.1848
+la $4,L.687
+move $5,$23
+jal printf
+L.1848:
+L.1846:
+la $21,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+sra $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,1
+beq $24,$15,L.1850
+la $23,280
+beq $30,$0,L.1852
+la $4,L.687
+move $5,$23
+jal printf
+L.1852:
+L.1850:
+la $20,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+sra $20,$20,$24
+la $24,1
+beq $20,$24,L.1854
+la $23,281
+beq $30,$0,L.1856
+la $4,L.687
+move $5,$23
+jal printf
+L.1856:
+L.1854:
+la $20,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+sra $20,$20,$24
+la $24,1
+beq $20,$24,L.1858
+la $23,282
+beq $30,$0,L.1860
+la $4,L.687
+move $5,$23
+jal printf
+L.1860:
+L.1858:
+la $20,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+sra $20,$20,$24
+la $24,1
+beq $20,$24,L.1862
+la $23,283
+beq $30,$0,L.1864
+la $4,L.687
+move $5,$23
+jal printf
+L.1864:
+L.1862:
+la $20,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+sra $20,$20,$24
+la $24,1
+beq $20,$24,L.1866
+la $23,284
+beq $30,$0,L.1868
+la $4,L.687
+move $5,$23
+jal printf
+L.1868:
+L.1866:
+la $20,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+sra $20,$20,$24
+la $24,1
+beq $20,$24,L.1870
+la $23,285
+beq $30,$0,L.1872
+la $4,L.687
+move $5,$23
+jal printf
+L.1872:
+L.1870:
+la $19,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+sra $19,$19,$24
+la $24,1
+beq $19,$24,L.1874
+la $23,286
+beq $30,$0,L.1876
+la $4,L.687
+move $5,$23
+jal printf
+L.1876:
+L.1874:
+la $19,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+sra $19,$19,$24
+la $24,1
+beq $19,$24,L.1878
+la $23,287
+beq $30,$0,L.1880
+la $4,L.687
+move $5,$23
+jal printf
+L.1880:
+L.1878:
+la $19,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+sra $19,$19,$24
+la $24,1
+beq $19,$24,L.1882
+la $23,288
+beq $30,$0,L.1884
+la $4,L.687
+move $5,$23
+jal printf
+L.1884:
+L.1882:
+la $19,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+sra $19,$19,$24
+la $24,1
+beq $19,$24,L.1886
+la $23,289
+beq $30,$0,L.1888
+la $4,L.687
+move $5,$23
+jal printf
+L.1888:
+L.1886:
+la $19,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+sra $19,$19,$24
+la $24,1
+beq $19,$24,L.1890
+la $23,290
+beq $30,$0,L.1892
+la $4,L.687
+move $5,$23
+jal printf
+L.1892:
+L.1890:
+la $18,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+srl $18,$18,$24
+la $24,1
+beq $18,$24,L.1894
+la $23,291
+beq $30,$0,L.1896
+la $4,L.687
+move $5,$23
+jal printf
+L.1896:
+L.1894:
+la $18,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+srl $18,$18,$24
+la $24,1
+beq $18,$24,L.1898
+la $23,292
+beq $30,$0,L.1900
+la $4,L.687
+move $5,$23
+jal printf
+L.1900:
+L.1898:
+la $18,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+srl $18,$18,$24
+la $24,1
+beq $18,$24,L.1902
+la $23,293
+beq $30,$0,L.1904
+la $4,L.687
+move $5,$23
+jal printf
+L.1904:
+L.1902:
+la $18,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+srl $18,$18,$24
+la $24,1
+beq $18,$24,L.1906
+la $23,294
+beq $30,$0,L.1908
+la $4,L.687
+move $5,$23
+jal printf
+L.1908:
+L.1906:
+la $18,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+srl $18,$18,$24
+la $24,1
+beq $18,$24,L.1910
+la $23,295
+beq $30,$0,L.1912
+la $4,L.687
+move $5,$23
+jal printf
+L.1912:
+L.1910:
+la $22,5
+la $17,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+sll $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,20
+beq $24,$15,L.1914
+la $23,296
+beq $30,$0,L.1916
+la $4,L.687
+move $5,$23
+jal printf
+L.1916:
+L.1914:
+la $22,5
+la $16,2
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+sll $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,20
+beq $24,$15,L.1918
+la $23,297
+beq $30,$0,L.1920
+la $4,L.687
+move $5,$23
+jal printf
+L.1920:
+L.1918:
+la $22,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-4+160($sp)
+sll $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,20
+beq $24,$15,L.1922
+la $23,298
+beq $30,$0,L.1924
+la $4,L.687
+move $5,$23
+jal printf
+L.1924:
+L.1922:
+la $22,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+sll $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,20
+beq $24,$15,L.1926
+la $23,299
+beq $30,$0,L.1928
+la $4,L.687
+move $5,$23
+jal printf
+L.1928:
+L.1926:
+la $22,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+sll $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,20
+beq $24,$15,L.1930
+la $23,300
+beq $30,$0,L.1932
+la $4,L.687
+move $5,$23
+jal printf
+L.1932:
+L.1930:
+la $21,5
+la $17,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+sll $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,20
+beq $24,$15,L.1934
+la $23,301
+beq $30,$0,L.1936
+la $4,L.687
+move $5,$23
+jal printf
+L.1936:
+L.1934:
+la $21,5
+la $16,2
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+sll $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,20
+beq $24,$15,L.1938
+la $23,302
+beq $30,$0,L.1940
+la $4,L.687
+move $5,$23
+jal printf
+L.1940:
+L.1938:
+la $21,5
+la $24,2
+sw $24,-4+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-4+160($sp)
+sll $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,20
+beq $24,$15,L.1942
+la $23,303
+beq $30,$0,L.1944
+la $4,L.687
+move $5,$23
+jal printf
+L.1944:
+L.1942:
+la $21,5
+la $24,2
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+sll $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,20
+beq $24,$15,L.1946
+la $23,304
+beq $30,$0,L.1948
+la $4,L.687
+move $5,$23
+jal printf
+L.1948:
+L.1946:
+la $21,5
+la $24,2
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+sll $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,20
+beq $24,$15,L.1950
+la $23,305
+beq $30,$0,L.1952
+la $4,L.687
+move $5,$23
+jal printf
+L.1952:
+L.1950:
+la $20,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+sll $20,$20,$24
+la $24,20
+beq $20,$24,L.1954
+la $23,306
+beq $30,$0,L.1956
+la $4,L.687
+move $5,$23
+jal printf
+L.1956:
+L.1954:
+la $20,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+sll $20,$20,$24
+la $24,20
+beq $20,$24,L.1958
+la $23,307
+beq $30,$0,L.1960
+la $4,L.687
+move $5,$23
+jal printf
+L.1960:
+L.1958:
+la $20,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+sll $20,$20,$24
+la $24,20
+beq $20,$24,L.1962
+la $23,308
+beq $30,$0,L.1964
+la $4,L.687
+move $5,$23
+jal printf
+L.1964:
+L.1962:
+la $20,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+sll $20,$20,$24
+la $24,20
+beq $20,$24,L.1966
+la $23,309
+beq $30,$0,L.1968
+la $4,L.687
+move $5,$23
+jal printf
+L.1968:
+L.1966:
+la $20,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+sll $20,$20,$24
+la $24,20
+beq $20,$24,L.1970
+la $23,310
+beq $30,$0,L.1972
+la $4,L.687
+move $5,$23
+jal printf
+L.1972:
+L.1970:
+la $19,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+sll $19,$19,$24
+la $24,20
+beq $19,$24,L.1974
+la $23,311
+beq $30,$0,L.1976
+la $4,L.687
+move $5,$23
+jal printf
+L.1976:
+L.1974:
+la $19,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+sll $19,$19,$24
+la $24,20
+beq $19,$24,L.1978
+la $23,312
+beq $30,$0,L.1980
+la $4,L.687
+move $5,$23
+jal printf
+L.1980:
+L.1978:
+la $19,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+sll $19,$19,$24
+la $24,20
+beq $19,$24,L.1982
+la $23,313
+beq $30,$0,L.1984
+la $4,L.687
+move $5,$23
+jal printf
+L.1984:
+L.1982:
+la $19,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+sll $19,$19,$24
+la $24,20
+beq $19,$24,L.1986
+la $23,314
+beq $30,$0,L.1988
+la $4,L.687
+move $5,$23
+jal printf
+L.1988:
+L.1986:
+la $19,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+sll $19,$19,$24
+la $24,20
+beq $19,$24,L.1990
+la $23,315
+beq $30,$0,L.1992
+la $4,L.687
+move $5,$23
+jal printf
+L.1992:
+L.1990:
+la $18,5
+la $17,2
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+sll $18,$18,$24
+la $24,20
+beq $18,$24,L.1994
+la $23,316
+beq $30,$0,L.1996
+la $4,L.687
+move $5,$23
+jal printf
+L.1996:
+L.1994:
+la $18,5
+la $16,2
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+sll $18,$18,$24
+la $24,20
+beq $18,$24,L.1998
+la $23,317
+beq $30,$0,L.2000
+la $4,L.687
+move $5,$23
+jal printf
+L.2000:
+L.1998:
+la $18,5
+la $24,2
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+sll $18,$18,$24
+la $24,20
+beq $18,$24,L.2002
+la $23,318
+beq $30,$0,L.2004
+la $4,L.687
+move $5,$23
+jal printf
+L.2004:
+L.2002:
+la $18,5
+la $24,2
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+sll $18,$18,$24
+la $24,20
+beq $18,$24,L.2006
+la $23,319
+beq $30,$0,L.2008
+la $4,L.687
+move $5,$23
+jal printf
+L.2008:
+L.2006:
+la $18,5
+la $24,2
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+sll $18,$18,$24
+la $24,20
+beq $18,$24,L.2010
+la $23,320
+beq $30,$0,L.2012
+la $4,L.687
+move $5,$23
+jal printf
+L.2012:
+L.2010:
+la $22,12
+la $17,10
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+and $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,8
+beq $24,$15,L.2014
+la $23,321
+beq $30,$0,L.2016
+la $4,L.687
+move $5,$23
+jal printf
+L.2016:
+L.2014:
+la $22,12
+la $16,10
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+and $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,8
+beq $24,$15,L.2018
+la $23,322
+beq $30,$0,L.2020
+la $4,L.687
+move $5,$23
+jal printf
+L.2020:
+L.2018:
+la $22,12
+la $24,10
+sw $24,-4+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-4+160($sp)
+and $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,8
+beq $24,$15,L.2022
+la $23,323
+beq $30,$0,L.2024
+la $4,L.687
+move $5,$23
+jal printf
+L.2024:
+L.2022:
+la $22,12
+la $24,10
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+and $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,8
+beq $24,$15,L.2026
+la $23,324
+beq $30,$0,L.2028
+la $4,L.687
+move $5,$23
+jal printf
+L.2028:
+L.2026:
+la $22,12
+la $24,10
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+and $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,8
+beq $24,$15,L.2030
+la $23,325
+beq $30,$0,L.2032
+la $4,L.687
+move $5,$23
+jal printf
+L.2032:
+L.2030:
+la $21,12
+la $17,10
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+and $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,8
+beq $24,$15,L.2034
+la $23,326
+beq $30,$0,L.2036
+la $4,L.687
+move $5,$23
+jal printf
+L.2036:
+L.2034:
+la $21,12
+la $16,10
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+and $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,8
+beq $24,$15,L.2038
+la $23,327
+beq $30,$0,L.2040
+la $4,L.687
+move $5,$23
+jal printf
+L.2040:
+L.2038:
+la $21,12
+la $24,10
+sw $24,-4+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-4+160($sp)
+and $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,8
+beq $24,$15,L.2042
+la $23,328
+beq $30,$0,L.2044
+la $4,L.687
+move $5,$23
+jal printf
+L.2044:
+L.2042:
+la $21,12
+la $24,10
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+and $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,8
+beq $24,$15,L.2046
+la $23,329
+beq $30,$0,L.2048
+la $4,L.687
+move $5,$23
+jal printf
+L.2048:
+L.2046:
+la $21,12
+la $24,10
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+and $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,8
+beq $24,$15,L.2050
+la $23,330
+beq $30,$0,L.2052
+la $4,L.687
+move $5,$23
+jal printf
+L.2052:
+L.2050:
+la $20,12
+la $17,10
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+and $20,$20,$24
+la $24,8
+beq $20,$24,L.2054
+la $23,331
+beq $30,$0,L.2056
+la $4,L.687
+move $5,$23
+jal printf
+L.2056:
+L.2054:
+la $20,12
+la $16,10
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+and $20,$20,$24
+la $24,8
+beq $20,$24,L.2058
+la $23,332
+beq $30,$0,L.2060
+la $4,L.687
+move $5,$23
+jal printf
+L.2060:
+L.2058:
+la $20,12
+la $24,10
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+and $20,$20,$24
+la $24,8
+beq $20,$24,L.2062
+la $23,333
+beq $30,$0,L.2064
+la $4,L.687
+move $5,$23
+jal printf
+L.2064:
+L.2062:
+la $20,12
+la $24,10
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+and $20,$20,$24
+la $24,8
+beq $20,$24,L.2066
+la $23,334
+beq $30,$0,L.2068
+la $4,L.687
+move $5,$23
+jal printf
+L.2068:
+L.2066:
+la $20,12
+la $24,10
+sw $24,-12+160($sp)
+move $24,$20
+lw $15,-12+160($sp)
+and $24,$24,$15
+move $20,$24
+la $24,8
+beq $20,$24,L.2070
+la $23,335
+beq $30,$0,L.2072
+la $4,L.687
+move $5,$23
+jal printf
+L.2072:
+L.2070:
+la $19,12
+la $17,10
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+and $19,$19,$24
+la $24,8
+beq $19,$24,L.2074
+la $23,336
+beq $30,$0,L.2076
+la $4,L.687
+move $5,$23
+jal printf
+L.2076:
+L.2074:
+la $19,12
+la $16,10
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+and $19,$19,$24
+la $24,8
+beq $19,$24,L.2078
+la $23,337
+beq $30,$0,L.2080
+la $4,L.687
+move $5,$23
+jal printf
+L.2080:
+L.2078:
+la $19,12
+la $24,10
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+and $19,$19,$24
+la $24,8
+beq $19,$24,L.2082
+la $23,338
+beq $30,$0,L.2084
+la $4,L.687
+move $5,$23
+jal printf
+L.2084:
+L.2082:
+la $19,12
+la $24,10
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+and $19,$19,$24
+la $24,8
+beq $19,$24,L.2086
+la $23,339
+beq $30,$0,L.2088
+la $4,L.687
+move $5,$23
+jal printf
+L.2088:
+L.2086:
+la $19,12
+la $24,10
+sw $24,-12+160($sp)
+move $24,$19
+lw $15,-12+160($sp)
+and $24,$24,$15
+move $19,$24
+la $24,8
+beq $19,$24,L.2090
+la $23,340
+beq $30,$0,L.2092
+la $4,L.687
+move $5,$23
+jal printf
+L.2092:
+L.2090:
+la $18,12
+la $17,10
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+and $18,$18,$24
+la $24,8
+beq $18,$24,L.2094
+la $23,341
+beq $30,$0,L.2096
+la $4,L.687
+move $5,$23
+jal printf
+L.2096:
+L.2094:
+la $18,12
+la $16,10
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+and $18,$18,$24
+la $24,8
+beq $18,$24,L.2098
+la $23,342
+beq $30,$0,L.2100
+la $4,L.687
+move $5,$23
+jal printf
+L.2100:
+L.2098:
+la $18,12
+la $24,10
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+and $18,$18,$24
+la $24,8
+beq $18,$24,L.2102
+la $23,343
+beq $30,$0,L.2104
+la $4,L.687
+move $5,$23
+jal printf
+L.2104:
+L.2102:
+la $18,12
+la $24,10
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+and $18,$18,$24
+la $24,8
+beq $18,$24,L.2106
+la $23,344
+beq $30,$0,L.2108
+la $4,L.687
+move $5,$23
+jal printf
+L.2108:
+L.2106:
+la $18,12
+la $24,10
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+and $18,$18,$24
+la $24,8
+beq $18,$24,L.2110
+la $23,345
+beq $30,$0,L.2112
+la $4,L.687
+move $5,$23
+jal printf
+L.2112:
+L.2110:
+la $22,12
+la $17,10
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+xor $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,6
+beq $24,$15,L.2114
+la $23,346
+beq $30,$0,L.2116
+la $4,L.687
+move $5,$23
+jal printf
+L.2116:
+L.2114:
+la $22,12
+la $16,10
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+xor $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,6
+beq $24,$15,L.2118
+la $23,347
+beq $30,$0,L.2120
+la $4,L.687
+move $5,$23
+jal printf
+L.2120:
+L.2118:
+la $22,12
+la $24,10
+sw $24,-4+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-4+160($sp)
+xor $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,6
+beq $24,$15,L.2122
+la $23,348
+beq $30,$0,L.2124
+la $4,L.687
+move $5,$23
+jal printf
+L.2124:
+L.2122:
+la $22,12
+la $24,10
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+xor $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,6
+beq $24,$15,L.2126
+la $23,349
+beq $30,$0,L.2128
+la $4,L.687
+move $5,$23
+jal printf
+L.2128:
+L.2126:
+la $22,12
+la $24,10
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+xor $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,6
+beq $24,$15,L.2130
+la $23,350
+beq $30,$0,L.2132
+la $4,L.687
+move $5,$23
+jal printf
+L.2132:
+L.2130:
+la $21,12
+la $17,10
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+xor $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,6
+beq $24,$15,L.2134
+la $23,351
+beq $30,$0,L.2136
+la $4,L.687
+move $5,$23
+jal printf
+L.2136:
+L.2134:
+la $21,12
+la $16,10
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+xor $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,6
+beq $24,$15,L.2138
+la $23,352
+beq $30,$0,L.2140
+la $4,L.687
+move $5,$23
+jal printf
+L.2140:
+L.2138:
+la $21,12
+la $24,10
+sw $24,-4+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-4+160($sp)
+xor $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,6
+beq $24,$15,L.2142
+la $23,353
+beq $30,$0,L.2144
+la $4,L.687
+move $5,$23
+jal printf
+L.2144:
+L.2142:
+la $21,12
+la $24,10
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+xor $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,6
+beq $24,$15,L.2146
+la $23,354
+beq $30,$0,L.2148
+la $4,L.687
+move $5,$23
+jal printf
+L.2148:
+L.2146:
+la $21,12
+la $24,10
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+xor $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,6
+beq $24,$15,L.2150
+la $23,355
+beq $30,$0,L.2152
+la $4,L.687
+move $5,$23
+jal printf
+L.2152:
+L.2150:
+la $20,12
+la $17,10
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+xor $20,$20,$24
+la $24,6
+beq $20,$24,L.2154
+la $23,356
+beq $30,$0,L.2156
+la $4,L.687
+move $5,$23
+jal printf
+L.2156:
+L.2154:
+la $20,12
+la $16,10
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+xor $20,$20,$24
+la $24,6
+beq $20,$24,L.2158
+la $23,357
+beq $30,$0,L.2160
+la $4,L.687
+move $5,$23
+jal printf
+L.2160:
+L.2158:
+la $20,12
+la $24,10
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+xor $20,$20,$24
+la $24,6
+beq $20,$24,L.2162
+la $23,358
+beq $30,$0,L.2164
+la $4,L.687
+move $5,$23
+jal printf
+L.2164:
+L.2162:
+la $20,12
+la $24,10
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+xor $20,$20,$24
+la $24,6
+beq $20,$24,L.2166
+la $23,359
+beq $30,$0,L.2168
+la $4,L.687
+move $5,$23
+jal printf
+L.2168:
+L.2166:
+la $20,12
+la $24,10
+sw $24,-12+160($sp)
+move $24,$20
+lw $15,-12+160($sp)
+xor $24,$24,$15
+move $20,$24
+la $24,6
+beq $20,$24,L.2170
+la $23,360
+beq $30,$0,L.2172
+la $4,L.687
+move $5,$23
+jal printf
+L.2172:
+L.2170:
+la $19,12
+la $17,10
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+xor $19,$19,$24
+la $24,6
+beq $19,$24,L.2174
+la $23,361
+beq $30,$0,L.2176
+la $4,L.687
+move $5,$23
+jal printf
+L.2176:
+L.2174:
+la $19,12
+la $16,10
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+xor $19,$19,$24
+la $24,6
+beq $19,$24,L.2178
+la $23,362
+beq $30,$0,L.2180
+la $4,L.687
+move $5,$23
+jal printf
+L.2180:
+L.2178:
+la $19,12
+la $24,10
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+xor $19,$19,$24
+la $24,6
+beq $19,$24,L.2182
+la $23,363
+beq $30,$0,L.2184
+la $4,L.687
+move $5,$23
+jal printf
+L.2184:
+L.2182:
+la $19,12
+la $24,10
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+xor $19,$19,$24
+la $24,6
+beq $19,$24,L.2186
+la $23,364
+beq $30,$0,L.2188
+la $4,L.687
+move $5,$23
+jal printf
+L.2188:
+L.2186:
+la $19,12
+la $24,10
+sw $24,-12+160($sp)
+move $24,$19
+lw $15,-12+160($sp)
+xor $24,$24,$15
+move $19,$24
+la $24,6
+beq $19,$24,L.2190
+la $23,365
+beq $30,$0,L.2192
+la $4,L.687
+move $5,$23
+jal printf
+L.2192:
+L.2190:
+la $18,12
+la $17,10
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+xor $18,$18,$24
+la $24,6
+beq $18,$24,L.2194
+la $23,366
+beq $30,$0,L.2196
+la $4,L.687
+move $5,$23
+jal printf
+L.2196:
+L.2194:
+la $18,12
+la $16,10
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+xor $18,$18,$24
+la $24,6
+beq $18,$24,L.2198
+la $23,367
+beq $30,$0,L.2200
+la $4,L.687
+move $5,$23
+jal printf
+L.2200:
+L.2198:
+la $18,12
+la $24,10
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+xor $18,$18,$24
+la $24,6
+beq $18,$24,L.2202
+la $23,368
+beq $30,$0,L.2204
+la $4,L.687
+move $5,$23
+jal printf
+L.2204:
+L.2202:
+la $18,12
+la $24,10
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+xor $18,$18,$24
+la $24,6
+beq $18,$24,L.2206
+la $23,369
+beq $30,$0,L.2208
+la $4,L.687
+move $5,$23
+jal printf
+L.2208:
+L.2206:
+la $18,12
+la $24,10
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+xor $18,$18,$24
+la $24,6
+beq $18,$24,L.2210
+la $23,370
+beq $30,$0,L.2212
+la $4,L.687
+move $5,$23
+jal printf
+L.2212:
+L.2210:
+la $22,12
+la $17,10
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+or $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,14
+beq $24,$15,L.2214
+la $23,371
+beq $30,$0,L.2216
+la $4,L.687
+move $5,$23
+jal printf
+L.2216:
+L.2214:
+la $22,12
+la $16,10
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+or $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,14
+beq $24,$15,L.2218
+la $23,372
+beq $30,$0,L.2220
+la $4,L.687
+move $5,$23
+jal printf
+L.2220:
+L.2218:
+la $22,12
+la $24,10
+sw $24,-4+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-4+160($sp)
+or $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,14
+beq $24,$15,L.2222
+la $23,373
+beq $30,$0,L.2224
+la $4,L.687
+move $5,$23
+jal printf
+L.2224:
+L.2222:
+la $22,12
+la $24,10
+sw $24,-8+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-8+160($sp)
+or $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,14
+beq $24,$15,L.2226
+la $23,374
+beq $30,$0,L.2228
+la $4,L.687
+move $5,$23
+jal printf
+L.2228:
+L.2226:
+la $22,12
+la $24,10
+sw $24,-12+160($sp)
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+lw $15,-12+160($sp)
+or $24,$24,$15
+move $22,$24
+sll $24,$22,8*(4-1); sra $24,$24,8*(4-1)
+la $15,14
+beq $24,$15,L.2230
+la $23,375
+beq $30,$0,L.2232
+la $4,L.687
+move $5,$23
+jal printf
+L.2232:
+L.2230:
+la $21,12
+la $17,10
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+or $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,14
+beq $24,$15,L.2234
+la $23,376
+beq $30,$0,L.2236
+la $4,L.687
+move $5,$23
+jal printf
+L.2236:
+L.2234:
+la $21,12
+la $16,10
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+or $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,14
+beq $24,$15,L.2238
+la $23,377
+beq $30,$0,L.2240
+la $4,L.687
+move $5,$23
+jal printf
+L.2240:
+L.2238:
+la $21,12
+la $24,10
+sw $24,-4+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-4+160($sp)
+or $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,14
+beq $24,$15,L.2242
+la $23,378
+beq $30,$0,L.2244
+la $4,L.687
+move $5,$23
+jal printf
+L.2244:
+L.2242:
+la $21,12
+la $24,10
+sw $24,-8+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-8+160($sp)
+or $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,14
+beq $24,$15,L.2246
+la $23,379
+beq $30,$0,L.2248
+la $4,L.687
+move $5,$23
+jal printf
+L.2248:
+L.2246:
+la $21,12
+la $24,10
+sw $24,-12+160($sp)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,-12+160($sp)
+or $24,$24,$15
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,14
+beq $24,$15,L.2250
+la $23,380
+beq $30,$0,L.2252
+la $4,L.687
+move $5,$23
+jal printf
+L.2252:
+L.2250:
+la $20,12
+la $17,10
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+or $20,$20,$24
+la $24,14
+beq $20,$24,L.2254
+la $23,381
+beq $30,$0,L.2256
+la $4,L.687
+move $5,$23
+jal printf
+L.2256:
+L.2254:
+la $20,12
+la $16,10
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+or $20,$20,$24
+la $24,14
+beq $20,$24,L.2258
+la $23,382
+beq $30,$0,L.2260
+la $4,L.687
+move $5,$23
+jal printf
+L.2260:
+L.2258:
+la $20,12
+la $24,10
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+or $20,$20,$24
+la $24,14
+beq $20,$24,L.2262
+la $23,383
+beq $30,$0,L.2264
+la $4,L.687
+move $5,$23
+jal printf
+L.2264:
+L.2262:
+la $20,12
+la $24,10
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+or $20,$20,$24
+la $24,14
+beq $20,$24,L.2266
+la $23,384
+beq $30,$0,L.2268
+la $4,L.687
+move $5,$23
+jal printf
+L.2268:
+L.2266:
+la $20,12
+la $24,10
+sw $24,-12+160($sp)
+move $24,$20
+lw $15,-12+160($sp)
+or $24,$24,$15
+move $20,$24
+la $24,14
+beq $20,$24,L.2270
+la $23,385
+beq $30,$0,L.2272
+la $4,L.687
+move $5,$23
+jal printf
+L.2272:
+L.2270:
+la $19,12
+la $17,10
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+or $19,$19,$24
+la $24,14
+beq $19,$24,L.2274
+la $23,386
+beq $30,$0,L.2276
+la $4,L.687
+move $5,$23
+jal printf
+L.2276:
+L.2274:
+la $19,12
+la $16,10
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+or $19,$19,$24
+la $24,14
+beq $19,$24,L.2278
+la $23,387
+beq $30,$0,L.2280
+la $4,L.687
+move $5,$23
+jal printf
+L.2280:
+L.2278:
+la $19,12
+la $24,10
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+or $19,$19,$24
+la $24,14
+beq $19,$24,L.2282
+la $23,388
+beq $30,$0,L.2284
+la $4,L.687
+move $5,$23
+jal printf
+L.2284:
+L.2282:
+la $19,12
+la $24,10
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+or $19,$19,$24
+la $24,14
+beq $19,$24,L.2286
+la $23,389
+beq $30,$0,L.2288
+la $4,L.687
+move $5,$23
+jal printf
+L.2288:
+L.2286:
+la $19,12
+la $24,10
+sw $24,-12+160($sp)
+move $24,$19
+lw $15,-12+160($sp)
+or $24,$24,$15
+move $19,$24
+la $24,14
+beq $19,$24,L.2290
+la $23,390
+beq $30,$0,L.2292
+la $4,L.687
+move $5,$23
+jal printf
+L.2292:
+L.2290:
+la $18,12
+la $17,10
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+or $18,$18,$24
+la $24,14
+beq $18,$24,L.2294
+la $23,391
+beq $30,$0,L.2296
+la $4,L.687
+move $5,$23
+jal printf
+L.2296:
+L.2294:
+la $18,12
+la $16,10
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+or $18,$18,$24
+la $24,14
+beq $18,$24,L.2298
+la $23,392
+beq $30,$0,L.2300
+la $4,L.687
+move $5,$23
+jal printf
+L.2300:
+L.2298:
+la $18,12
+la $24,10
+sw $24,-4+160($sp)
+lw $24,-4+160($sp)
+or $18,$18,$24
+la $24,14
+beq $18,$24,L.2302
+la $23,393
+beq $30,$0,L.2304
+la $4,L.687
+move $5,$23
+jal printf
+L.2304:
+L.2302:
+la $18,12
+la $24,10
+sw $24,-8+160($sp)
+lw $24,-8+160($sp)
+or $18,$18,$24
+la $24,14
+beq $18,$24,L.2306
+la $23,394
+beq $30,$0,L.2308
+la $4,L.687
+move $5,$23
+jal printf
+L.2308:
+L.2306:
+la $18,12
+la $24,10
+sw $24,-12+160($sp)
+lw $24,-12+160($sp)
+or $18,$18,$24
+la $24,14
+beq $18,$24,L.2310
+la $23,395
+beq $30,$0,L.2312
+la $4,L.687
+move $5,$23
+jal printf
+L.2312:
+L.2310:
+beq $23,$0,L.2314
+la $24,1
+sw $24,-24+160($sp)
+lw $24,0+160($sp)
+lw $24,44($24)
+beq $24,$0,L.2316
+la $4,L.688
+la $5,1
+jal printf
+L.2316:
+L.2314:
+lw $2,-24+160($sp)
+L.686:
+l.d $f24,16($sp)
+l.d $f26,24($sp)
+l.d $f28,32($sp)
+l.d $f30,40($sp)
+lw $16,48($sp)
+lw $17,52($sp)
+lw $18,56($sp)
+lw $19,60($sp)
+lw $20,64($sp)
+lw $21,68($sp)
+lw $22,72($sp)
+lw $23,76($sp)
+lw $25,80($sp)
+lw $30,84($sp)
+lw $31,88($sp)
+addu $sp,$sp,160
+j $31
+.end s714
+.data
+.align 0
+L.2319:
+.byte 115
+.byte 55
+.byte 49
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.2320:
+.byte 115
+.byte 55
+.byte 49
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s715
+.text
+.text
+.align 2
+.ent s715
+s715:
+.frame $sp,56,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-56
+.mask 0xc2e00000,-20
+sw $21,16($sp)
+sw $22,20($sp)
+sw $23,24($sp)
+.cprestore 28
+sw $30,32($sp)
+sw $31,36($sp)
+sw $4,56($sp)
+sw $0,-12+56($sp)
+sw $0,-4+56($sp)
+la $30,L.2320
+lw $15,0+56($sp)
+la $23,60($15)
+move $21,$0
+L.2321:
+L.2322:
+move $24,$23
+la $23,1($24)
+move $15,$30
+la $30,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.2321
+la $24,1
+move $22,$24
+la $22,1($22)
+la $22,1($22)
+la $22,1($22)
+la $22,1($22)
+la $24,1($22)
+move $22,$24
+la $15,6
+beq $24,$15,L.2324
+lw $24,0+56($sp)
+lw $24,44($24)
+beq $24,$0,L.2326
+la $4,L.2319
+la $5,1
+jal printf
+L.2326:
+la $21,1($21)
+L.2324:
+lw $4,-4+56($sp)
+la $24,3
+sw $24,-8+56($sp)
+lw $24,-8+56($sp)
+la $5,2($24)
+lw $6,-12+56($sp)
+jal s715f
+la $15,5
+beq $2,$15,L.2328
+lw $24,0+56($sp)
+lw $24,44($24)
+beq $24,$0,L.2330
+la $4,L.2319
+la $5,2
+jal printf
+L.2330:
+la $21,2($21)
+L.2328:
+move $2,$21
+L.2318:
+lw $21,16($sp)
+lw $22,20($sp)
+lw $23,24($sp)
+lw $25,28($sp)
+lw $30,32($sp)
+lw $31,36($sp)
+addu $sp,$sp,56
+j $31
+.end s715
+.globl s715f
+.text
+.align 2
+.ent s715f
+s715f:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+move $2,$5
+L.2332:
+j $31
+.end s715f
+.data
+.align 0
+L.2334:
+.byte 115
+.byte 55
+.byte 50
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.2335:
+.byte 115
+.byte 55
+.byte 50
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s72
+.text
+.text
+.align 2
+.ent s72
+s72:
+.frame $sp,96,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-96
+.fmask 0xf0000000,-72
+.mask 0xc2ff0000,-24
+s.d $f28,16($sp)
+s.d $f30,24($sp)
+sw $16,32($sp)
+sw $17,36($sp)
+sw $18,40($sp)
+sw $19,44($sp)
+sw $20,48($sp)
+sw $21,52($sp)
+sw $22,56($sp)
+sw $23,60($sp)
+.cprestore 64
+sw $30,68($sp)
+sw $31,72($sp)
+move $30,$4
+la $22,L.2335
+la $21,60($30)
+move $19,$0
+L.2336:
+L.2337:
+move $24,$21
+la $21,1($24)
+move $15,$22
+la $22,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.2336
+la $24,2
+sw $24,-4+96($sp)
+lw $15,-4+96($sp)
+beq $15,$24,L.2339
+la $24,1
+la $19,1($19)
+la $4,L.2334
+move $5,$24
+jal printf
+L.2339:
+lw $24,-4+96($sp)
+negu $15,$24
+addu $24,$24,$15
+beq $24,$0,L.2341
+la $24,2
+la $19,2($19)
+la $4,L.2334
+move $5,$24
+jal printf
+L.2341:
+sw $0,-4+96($sp)
+move $23,$0
+b L.2346
+L.2343:
+lw $24,-4+96($sp)
+sll $24,$24,1
+or $24,$24,1
+sw $24,-4+96($sp)
+L.2344:
+la $23,1($23)
+L.2346:
+lw $24,4($30)
+blt $23,$24,L.2343
+lw $24,-4+96($sp)
+not $24,$24
+beq $24,$0,L.2347
+la $24,4
+la $19,4($19)
+la $4,L.2334
+move $5,$24
+jal printf
+L.2347:
+la $24,5
+sw $24,-4+96($sp)
+lw $24,-4+96($sp)
+la $24,1($24)
+sw $24,-4+96($sp)
+la $15,6
+bne $24,$15,L.2354
+lw $24,-4+96($sp)
+subu $24,$24,1
+sw $24,-4+96($sp)
+la $14,5
+bne $24,$14,L.2354
+lw $24,-4+96($sp)
+la $13,1($24)
+sw $13,-4+96($sp)
+bne $24,$14,L.2354
+lw $24,-4+96($sp)
+subu $13,$24,1
+sw $13,-4+96($sp)
+bne $24,$15,L.2354
+lw $24,-4+96($sp)
+beq $24,$14,L.2349
+L.2354:
+la $24,8
+la $19,8($19)
+la $4,L.2334
+move $5,$24
+jal printf
+L.2349:
+la $17,26
+la $24,26
+sw $24,-8+96($sp)
+l.d $f30,L.2355
+la $16,26
+la $24,26
+sw $24,-12+96($sp)
+la $18,26
+l.s $f28,L.2356
+move $20,$0
+la $24,26
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
+bne $15,$24,L.2363
+move $15,$18
+sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
+bne $15,$24,L.2363
+lw $15,-8+96($sp)
+sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
+bne $15,$24,L.2363
+lw $15,-12+96($sp)
+sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
+bne $15,$24,L.2363
+trunc.w.s $f2,$f28,$15; mfc1 $15,$f2
+sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
+bne $15,$24,L.2363
+trunc.w.d $f2,$f30,$15; mfc1 $15,$f2
+sll $15,$15,8*(4-1); sra $15,$15,8*(4-1)
+beq $15,$24,L.2357
+L.2363:
+la $20,1($20)
+L.2357:
+la $24,26
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
+bne $15,$24,L.2370
+move $15,$18
+sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
+bne $15,$24,L.2370
+lw $15,-8+96($sp)
+sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
+bne $15,$24,L.2370
+lw $15,-12+96($sp)
+sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
+bne $15,$24,L.2370
+trunc.w.s $f2,$f28,$15; mfc1 $15,$f2
+sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
+bne $15,$24,L.2370
+trunc.w.d $f2,$f30,$15; mfc1 $15,$f2
+sll $15,$15,8*(4-2); sra $15,$15,8*(4-2)
+beq $15,$24,L.2364
+L.2370:
+la $20,2($20)
+L.2364:
+la $24,26
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+bne $15,$24,L.2377
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+bne $15,$24,L.2377
+lw $15,-8+96($sp)
+bne $15,$24,L.2377
+lw $15,-12+96($sp)
+bne $15,$24,L.2377
+trunc.w.s $f2,$f28,$15; mfc1 $15,$f2
+bne $15,$24,L.2377
+trunc.w.d $f2,$f30,$15; mfc1 $15,$f2
+beq $15,$24,L.2371
+L.2377:
+la $20,4($20)
+L.2371:
+la $24,26
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+bne $15,$24,L.2384
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+bne $15,$24,L.2384
+bne $18,$24,L.2384
+lw $15,-12+96($sp)
+bne $15,$24,L.2384
+trunc.w.s $f2,$f28,$15; mfc1 $15,$f2
+bne $15,$24,L.2384
+trunc.w.d $f2,$f30,$15; mfc1 $15,$f2
+beq $15,$24,L.2378
+L.2384:
+la $20,8($20)
+L.2378:
+la $24,26
+sll $15,$17,8*(4-1); sra $15,$15,8*(4-1)
+bne $15,$24,L.2393
+sll $15,$16,8*(4-2); sra $15,$15,8*(4-2)
+bne $15,$24,L.2393
+move $15,$18
+bne $15,$24,L.2393
+lw $15,-8+96($sp)
+bne $15,$24,L.2393
+l.s $f18,L.828
+c.lt.s $f28,$f18; bc1t L.2394
+sub.s $f18,$f28,$f18
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-16+96($sp)
+b L.2395
+L.2394:
+trunc.w.s $f2,$f28,$24; mfc1 $24,$f2
+sw $24,-16+96($sp)
+L.2395:
+lw $24,-16+96($sp)
+la $15,26
+bne $24,$15,L.2393
+l.d $f18,L.836
+c.lt.d $f30,$f18; bc1t L.2396
+sub.d $f18,$f30,$f18
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-20+96($sp)
+b L.2397
+L.2396:
+trunc.w.d $f2,$f30,$24; mfc1 $24,$f2
+sw $24,-20+96($sp)
+L.2397:
+lw $24,-20+96($sp)
+la $15,26
+beq $24,$15,L.2385
+L.2393:
+la $20,16($20)
+L.2385:
+l.d $f18,L.2355
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f16; cvt.s.w $f16,$f16
+cvt.d.s $f16,$f16
+c.eq.d $f16,$f18; bc1f L.2404
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f16; cvt.s.w $f16,$f16
+cvt.d.s $f16,$f16
+c.eq.d $f16,$f18; bc1f L.2404
+mtc1 $18,$f16; cvt.s.w $f16,$f16
+cvt.d.s $f16,$f16
+c.eq.d $f16,$f18; bc1f L.2404
+lw $24,-8+96($sp)
+mtc1 $24,$f16; cvt.s.w $f16,$f16
+cvt.d.s $f16,$f16
+c.eq.d $f16,$f18; bc1f L.2404
+lw $24,-12+96($sp)
+l.d $f16,L.596
+srl $15,$24,1
+mtc1 $15,$f10; cvt.d.w $f10,$f10
+mul.d $f16,$f16,$f10
+and $24,$24,1
+mtc1 $24,$f10; cvt.d.w $f10,$f10
+add.d $f16,$f16,$f10
+cvt.s.d $f16,$f16
+cvt.d.s $f16,$f16
+c.eq.d $f16,$f18; bc1f L.2404
+cvt.s.d $f16,$f30
+cvt.d.s $f16,$f16
+c.eq.d $f16,$f18; bc1t L.2398
+L.2404:
+la $20,32($20)
+L.2398:
+l.d $f18,L.2355
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+c.eq.d $f16,$f18; bc1f L.2411
+sll $24,$16,8*(4-2); sra $24,$24,8*(4-2)
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+c.eq.d $f16,$f18; bc1f L.2411
+mtc1 $18,$f16; cvt.d.w $f16,$f16
+c.eq.d $f16,$f18; bc1f L.2411
+lw $24,-8+96($sp)
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+c.eq.d $f16,$f18; bc1f L.2411
+lw $24,-12+96($sp)
+l.d $f16,L.596
+srl $15,$24,1
+mtc1 $15,$f10; cvt.d.w $f10,$f10
+mul.d $f16,$f16,$f10
+and $24,$24,1
+mtc1 $24,$f10; cvt.d.w $f10,$f10
+add.d $f16,$f16,$f10
+c.eq.d $f16,$f18; bc1f L.2411
+cvt.d.s $f16,$f28
+c.eq.d $f16,$f18; bc1t L.2405
+L.2411:
+la $20,64($20)
+L.2405:
+beq $20,$0,L.2412
+la $24,16
+la $19,16($19)
+la $4,L.2334
+move $5,$24
+jal printf
+L.2412:
+move $2,$19
+L.2333:
+l.d $f28,16($sp)
+l.d $f30,24($sp)
+lw $16,32($sp)
+lw $17,36($sp)
+lw $18,40($sp)
+lw $19,44($sp)
+lw $20,48($sp)
+lw $21,52($sp)
+lw $22,56($sp)
+lw $23,60($sp)
+lw $25,64($sp)
+lw $30,68($sp)
+lw $31,72($sp)
+addu $sp,$sp,96
+j $31
+.end s72
+.data
+.align 0
+L.2415:
+.byte 115
+.byte 55
+.byte 53
+.byte 55
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.2416:
+.byte 115
+.byte 55
+.byte 53
+.byte 55
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s757
+.text
+.text
+.align 2
+.ent s757
+s757:
+.frame $sp,176,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-176
+.mask 0xc2ff0000,-120
+sw $16,16($sp)
+sw $17,20($sp)
+sw $18,24($sp)
+sw $19,28($sp)
+sw $20,32($sp)
+sw $21,36($sp)
+sw $22,40($sp)
+sw $23,44($sp)
+.cprestore 48
+sw $30,52($sp)
+sw $31,56($sp)
+move $30,$4
+la $24,L.2416
+sw $24,-80+176($sp)
+la $24,60($30)
+sw $24,-84+176($sp)
+sw $0,-88+176($sp)
+L.2417:
+L.2418:
+lw $24,-84+176($sp)
+la $15,1($24)
+sw $15,-84+176($sp)
+lw $15,-80+176($sp)
+la $14,1($15)
+sw $14,-80+176($sp)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.2417
+la $24,40
+sw $24,-92+176($sp)
+lw $24,-92+176($sp)
+sll $15,$24,3
+sll $15,$15,2
+la $14,1280
+bne $15,$14,L.2422
+sra $24,$24,3
+sra $24,$24,2
+la $15,1
+beq $24,$15,L.2420
+L.2422:
+lw $24,-88+176($sp)
+la $24,1($24)
+sw $24,-88+176($sp)
+lw $24,44($30)
+beq $24,$0,L.2423
+la $4,L.2415
+la $5,1
+jal printf
+L.2423:
+L.2420:
+move $19,$0
+sw $0,-68+176($sp)
+b L.2428
+L.2425:
+la $17,1
+lw $24,16($30)
+subu $24,$24,1
+sll $16,$17,$24
+sw $0,-72+176($sp)
+lw $24,-72+176($sp)
+not $24,$24
+lw $15,-68+176($sp)
+srl $14,$24,$15
+sw $14,-76+176($sp)
+sll $24,$24,$15
+sw $24,-72+176($sp)
+move $18,$0
+b L.2432
+L.2429:
+lw $24,-68+176($sp)
+bge $18,$24,L.2440
+la $24,1
+sw $24,-100+176($sp)
+b L.2441
+L.2440:
+sw $0,-100+176($sp)
+L.2441:
+lw $24,-72+176($sp)
+and $24,$17,$24
+bne $24,$0,L.2442
+la $24,1
+sw $24,-104+176($sp)
+b L.2443
+L.2442:
+sw $0,-104+176($sp)
+L.2443:
+lw $24,-100+176($sp)
+lw $15,-104+176($sp)
+bne $24,$15,L.2439
+lw $24,-68+176($sp)
+bge $18,$24,L.2444
+la $24,1
+sw $24,-108+176($sp)
+b L.2445
+L.2444:
+sw $0,-108+176($sp)
+L.2445:
+lw $24,-76+176($sp)
+and $24,$16,$24
+bne $24,$0,L.2446
+la $24,1
+sw $24,-112+176($sp)
+b L.2447
+L.2446:
+sw $0,-112+176($sp)
+L.2447:
+lw $24,-108+176($sp)
+lw $15,-112+176($sp)
+beq $24,$15,L.2433
+L.2439:
+la $19,1
+L.2433:
+sll $17,$17,1
+srl $16,$16,1
+L.2430:
+la $18,1($18)
+L.2432:
+lw $24,16($30)
+blt $18,$24,L.2429
+L.2426:
+lw $24,-68+176($sp)
+la $24,1($24)
+sw $24,-68+176($sp)
+L.2428:
+lw $24,-68+176($sp)
+lw $15,16($30)
+blt $24,$15,L.2425
+beq $19,$0,L.2448
+lw $24,-88+176($sp)
+la $24,2($24)
+sw $24,-88+176($sp)
+lw $24,44($30)
+beq $24,$0,L.2450
+la $4,L.2415
+la $5,2
+jal printf
+L.2450:
+L.2448:
+la $20,3
+la $21,2
+la $22,1
+bge $20,$21,L.2458
+la $24,1
+sw $24,-104+176($sp)
+b L.2459
+L.2458:
+sw $0,-104+176($sp)
+L.2459:
+lw $24,-104+176($sp)
+bge $24,$22,L.2456
+la $24,1
+sw $24,-100+176($sp)
+b L.2457
+L.2456:
+sw $0,-100+176($sp)
+L.2457:
+lw $24,-100+176($sp)
+la $15,1
+beq $24,$15,L.2452
+lw $24,-88+176($sp)
+la $24,4($24)
+sw $24,-88+176($sp)
+lw $24,44($30)
+beq $24,$0,L.2460
+la $4,L.2415
+la $5,4
+jal printf
+L.2460:
+L.2452:
+la $24,-60+176($sp)
+la $15,-64+176($sp)
+bne $24,$15,L.2462
+lw $24,-88+176($sp)
+la $24,8($24)
+sw $24,-88+176($sp)
+lw $24,44($30)
+beq $24,$0,L.2465
+la $4,L.2415
+la $5,8
+jal printf
+L.2465:
+L.2462:
+la $24,-60+176($sp)
+la $15,-64+176($sp)
+bgeu $24,$15,L.2467
+lw $24,40($30)
+beq $24,$0,L.2470
+la $4,L.2472
+jal printf
+L.2470:
+L.2467:
+move $19,$0
+move $18,$0
+L.2473:
+sll $24,$18,2
+la $15,-64+176($sp)
+addu $24,$24,$15
+la $15,1
+sw $15,($24)
+L.2474:
+la $18,1($18)
+la $24,16
+blt $18,$24,L.2473
+sw $0,-60+176($sp)
+sw $0,-48+176($sp)
+sw $0,-40+176($sp)
+sw $0,-36+176($sp)
+sw $0,-28+176($sp)
+sw $0,-12+176($sp)
+move $20,$0
+L.2483:
+move $21,$0
+L.2487:
+move $22,$0
+L.2491:
+move $23,$0
+L.2495:
+bge $20,$21,L.2506
+la $24,1
+sw $24,-112+176($sp)
+b L.2507
+L.2506:
+sw $0,-112+176($sp)
+L.2507:
+bge $22,$23,L.2508
+la $24,1
+sw $24,-116+176($sp)
+b L.2509
+L.2508:
+sw $0,-116+176($sp)
+L.2509:
+lw $24,-112+176($sp)
+lw $15,-116+176($sp)
+bne $24,$15,L.2504
+la $24,1
+sw $24,-108+176($sp)
+b L.2505
+L.2504:
+sw $0,-108+176($sp)
+L.2505:
+lw $24,-108+176($sp)
+sll $15,$20,3
+sll $14,$21,2
+addu $15,$15,$14
+sll $14,$22,1
+addu $15,$15,$14
+addu $15,$15,$23
+sll $15,$15,2
+la $14,-64+176($sp)
+addu $15,$15,$14
+lw $15,($15)
+beq $24,$15,L.2499
+la $19,1
+L.2499:
+L.2496:
+la $23,1($23)
+la $24,2
+blt $23,$24,L.2495
+L.2492:
+la $22,1($22)
+la $24,2
+blt $22,$24,L.2491
+L.2488:
+la $21,1($21)
+la $24,2
+blt $21,$24,L.2487
+L.2484:
+la $20,1($20)
+la $24,2
+blt $20,$24,L.2483
+beq $19,$0,L.2510
+lw $24,-88+176($sp)
+la $24,16($24)
+sw $24,-88+176($sp)
+lw $24,44($30)
+beq $24,$0,L.2512
+la $4,L.2415
+la $5,16
+jal printf
+L.2512:
+L.2510:
+sw $0,-96+176($sp)
+lw $24,-96+176($sp)
+beq $24,$0,L.2514
+lw $24,-88+176($sp)
+la $24,32($24)
+sw $24,-88+176($sp)
+lw $24,44($30)
+beq $24,$0,L.2516
+la $4,L.2415
+la $5,32
+jal printf
+L.2516:
+L.2514:
+lw $2,-88+176($sp)
+L.2414:
+lw $16,16($sp)
+lw $17,20($sp)
+lw $18,24($sp)
+lw $19,28($sp)
+lw $20,32($sp)
+lw $21,36($sp)
+lw $22,40($sp)
+lw $23,44($sp)
+lw $25,48($sp)
+lw $30,52($sp)
+lw $31,56($sp)
+addu $sp,$sp,176
+j $31
+.end s757
+.data
+.align 0
+L.2519:
+.byte 76
+.byte 111
+.byte 99
+.byte 97
+.byte 108
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.data
+.align 0
+L.2520:
+.byte 115
+.byte 55
+.byte 56
+.byte 49
+.byte 51
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.2521:
+.byte 115
+.byte 55
+.byte 56
+.byte 49
+.byte 51
+.byte 32
+.byte 32
+.byte 0
+.globl s7813
+.text
+.text
+.align 2
+.ent s7813
+s7813:
+.frame $sp,112,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-112
+.mask 0xc2ff0000,-56
+sw $16,16($sp)
+sw $17,20($sp)
+sw $18,24($sp)
+sw $19,28($sp)
+sw $20,32($sp)
+sw $21,36($sp)
+sw $22,40($sp)
+sw $23,44($sp)
+.cprestore 48
+sw $30,52($sp)
+sw $31,56($sp)
+sw $4,112($sp)
+la $19,L.2521
+lw $24,0+112($sp)
+la $18,60($24)
+move $23,$0
+move $17,$0
+lw $30,48($24)
+L.2522:
+L.2523:
+move $24,$18
+la $18,1($24)
+move $15,$19
+la $19,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.2522
+b L.2525
+la $23,1
+beq $30,$0,L.2527
+la $4,L.2519
+move $5,$23
+jal printf
+L.2527:
+L.2525:
+b L.2529
+la $23,2
+beq $30,$0,L.2531
+la $4,L.2519
+move $5,$23
+jal printf
+L.2531:
+L.2529:
+b L.2533
+la $23,3
+beq $30,$0,L.2535
+la $4,L.2519
+move $5,$23
+jal printf
+L.2535:
+L.2533:
+b L.2537
+la $23,4
+beq $30,$0,L.2539
+la $4,L.2519
+move $5,$23
+jal printf
+L.2539:
+L.2537:
+b L.2541
+la $23,5
+beq $30,$0,L.2543
+la $4,L.2519
+move $5,$23
+jal printf
+L.2543:
+L.2541:
+b L.2545
+la $23,6
+beq $30,$0,L.2547
+la $4,L.2519
+move $5,$23
+jal printf
+L.2547:
+L.2545:
+b L.2549
+la $23,7
+beq $30,$0,L.2551
+la $4,L.2519
+move $5,$23
+jal printf
+L.2551:
+L.2549:
+b L.2553
+la $23,8
+beq $30,$0,L.2555
+la $4,L.2519
+move $5,$23
+jal printf
+L.2555:
+L.2553:
+b L.2557
+la $23,9
+beq $30,$0,L.2559
+la $4,L.2519
+move $5,$23
+jal printf
+L.2559:
+L.2557:
+b L.2561
+la $23,10
+beq $30,$0,L.2563
+la $4,L.2519
+move $5,$23
+jal printf
+L.2563:
+L.2561:
+b L.2565
+la $23,11
+beq $30,$0,L.2567
+la $4,L.2519
+move $5,$23
+jal printf
+L.2567:
+L.2565:
+b L.2569
+la $23,12
+beq $30,$0,L.2571
+la $4,L.2519
+move $5,$23
+jal printf
+L.2571:
+L.2569:
+b L.2573
+la $23,13
+beq $30,$0,L.2575
+la $4,L.2519
+move $5,$23
+jal printf
+L.2575:
+L.2573:
+b L.2577
+la $23,14
+beq $30,$0,L.2579
+la $4,L.2519
+move $5,$23
+jal printf
+L.2579:
+L.2577:
+b L.2581
+la $23,15
+beq $30,$0,L.2583
+la $4,L.2519
+move $5,$23
+jal printf
+L.2583:
+L.2581:
+b L.2585
+la $23,16
+beq $30,$0,L.2587
+la $4,L.2519
+move $5,$23
+jal printf
+L.2587:
+L.2585:
+b L.2589
+la $23,17
+beq $30,$0,L.2591
+la $4,L.2519
+move $5,$23
+jal printf
+L.2591:
+L.2589:
+b L.2593
+la $23,18
+beq $30,$0,L.2595
+la $4,L.2519
+move $5,$23
+jal printf
+L.2595:
+L.2593:
+b L.2597
+la $23,16
+beq $30,$0,L.2599
+la $4,L.2519
+move $5,$23
+jal printf
+L.2599:
+L.2597:
+b L.2601
+la $23,20
+beq $30,$0,L.2603
+la $4,L.2519
+move $5,$23
+jal printf
+L.2603:
+L.2601:
+b L.2605
+la $23,21
+beq $30,$0,L.2607
+la $4,L.2519
+move $5,$23
+jal printf
+L.2607:
+L.2605:
+b L.2609
+la $23,22
+beq $30,$0,L.2611
+la $4,L.2519
+move $5,$23
+jal printf
+L.2611:
+L.2609:
+b L.2613
+la $23,23
+beq $30,$0,L.2615
+la $4,L.2519
+move $5,$23
+jal printf
+L.2615:
+L.2613:
+b L.2617
+la $23,24
+beq $30,$0,L.2619
+la $4,L.2519
+move $5,$23
+jal printf
+L.2619:
+L.2617:
+b L.2621
+la $23,25
+beq $30,$0,L.2623
+la $4,L.2519
+move $5,$23
+jal printf
+L.2623:
+L.2621:
+b L.2625
+la $23,26
+beq $30,$0,L.2627
+la $4,L.2519
+move $5,$23
+jal printf
+L.2627:
+L.2625:
+b L.2629
+la $23,27
+beq $30,$0,L.2631
+la $4,L.2519
+move $5,$23
+jal printf
+L.2631:
+L.2629:
+b L.2633
+la $23,28
+beq $30,$0,L.2635
+la $4,L.2519
+move $5,$23
+jal printf
+L.2635:
+L.2633:
+b L.2637
+la $23,26
+beq $30,$0,L.2639
+la $4,L.2519
+move $5,$23
+jal printf
+L.2639:
+L.2637:
+b L.2641
+la $23,30
+beq $30,$0,L.2643
+la $4,L.2519
+move $5,$23
+jal printf
+L.2643:
+L.2641:
+b L.2645
+la $23,31
+beq $30,$0,L.2647
+la $4,L.2519
+move $5,$23
+jal printf
+L.2647:
+L.2645:
+b L.2649
+la $23,32
+beq $30,$0,L.2651
+la $4,L.2519
+move $5,$23
+jal printf
+L.2651:
+L.2649:
+b L.2653
+la $23,33
+beq $30,$0,L.2655
+la $4,L.2519
+move $5,$23
+jal printf
+L.2655:
+L.2653:
+b L.2657
+la $23,34
+beq $30,$0,L.2659
+la $4,L.2519
+move $5,$23
+jal printf
+L.2659:
+L.2657:
+b L.2661
+la $23,35
+beq $30,$0,L.2663
+la $4,L.2519
+move $5,$23
+jal printf
+L.2663:
+L.2661:
+b L.2665
+la $23,36
+beq $30,$0,L.2667
+la $4,L.2519
+move $5,$23
+jal printf
+L.2667:
+L.2665:
+b L.2669
+la $23,37
+beq $30,$0,L.2671
+la $4,L.2519
+move $5,$23
+jal printf
+L.2671:
+L.2669:
+b L.2673
+la $23,38
+beq $30,$0,L.2675
+la $4,L.2519
+move $5,$23
+jal printf
+L.2675:
+L.2673:
+b L.2677
+la $23,39
+beq $30,$0,L.2679
+la $4,L.2519
+move $5,$23
+jal printf
+L.2679:
+L.2677:
+b L.2681
+la $23,40
+beq $30,$0,L.2683
+la $4,L.2519
+move $5,$23
+jal printf
+L.2683:
+L.2681:
+b L.2685
+la $23,41
+beq $30,$0,L.2687
+la $4,L.2519
+move $5,$23
+jal printf
+L.2687:
+L.2685:
+b L.2689
+la $23,42
+beq $30,$0,L.2691
+la $4,L.2519
+move $5,$23
+jal printf
+L.2691:
+L.2689:
+b L.2693
+la $23,43
+beq $30,$0,L.2695
+la $4,L.2519
+move $5,$23
+jal printf
+L.2695:
+L.2693:
+b L.2697
+la $23,44
+beq $30,$0,L.2699
+la $4,L.2519
+move $5,$23
+jal printf
+L.2699:
+L.2697:
+b L.2701
+la $23,45
+beq $30,$0,L.2703
+la $4,L.2519
+move $5,$23
+jal printf
+L.2703:
+L.2701:
+b L.2705
+la $23,46
+beq $30,$0,L.2707
+la $4,L.2519
+move $5,$23
+jal printf
+L.2707:
+L.2705:
+b L.2709
+la $23,47
+beq $30,$0,L.2711
+la $4,L.2519
+move $5,$23
+jal printf
+L.2711:
+L.2709:
+b L.2713
+la $23,48
+beq $30,$0,L.2715
+la $4,L.2519
+move $5,$23
+jal printf
+L.2715:
+L.2713:
+b L.2717
+la $23,49
+beq $30,$0,L.2719
+la $4,L.2519
+move $5,$23
+jal printf
+L.2719:
+L.2717:
+b L.2721
+la $23,50
+beq $30,$0,L.2723
+la $4,L.2519
+move $5,$23
+jal printf
+L.2723:
+L.2721:
+b L.2725
+la $23,51
+beq $30,$0,L.2727
+la $4,L.2519
+move $5,$23
+jal printf
+L.2727:
+L.2725:
+b L.2729
+la $23,52
+beq $30,$0,L.2731
+la $4,L.2519
+move $5,$23
+jal printf
+L.2731:
+L.2729:
+b L.2733
+la $23,53
+beq $30,$0,L.2735
+la $4,L.2519
+move $5,$23
+jal printf
+L.2735:
+L.2733:
+b L.2737
+la $23,54
+beq $30,$0,L.2739
+la $4,L.2519
+move $5,$23
+jal printf
+L.2739:
+L.2737:
+b L.2741
+la $23,55
+beq $30,$0,L.2743
+la $4,L.2519
+move $5,$23
+jal printf
+L.2743:
+L.2741:
+b L.2745
+la $23,56
+beq $30,$0,L.2747
+la $4,L.2519
+move $5,$23
+jal printf
+L.2747:
+L.2745:
+b L.2749
+la $23,57
+beq $30,$0,L.2751
+la $4,L.2519
+move $5,$23
+jal printf
+L.2751:
+L.2749:
+b L.2753
+la $23,58
+beq $30,$0,L.2755
+la $4,L.2519
+move $5,$23
+jal printf
+L.2755:
+L.2753:
+b L.2757
+la $23,56
+beq $30,$0,L.2759
+la $4,L.2519
+move $5,$23
+jal printf
+L.2759:
+L.2757:
+b L.2761
+la $23,60
+beq $30,$0,L.2763
+la $4,L.2519
+move $5,$23
+jal printf
+L.2763:
+L.2761:
+b L.2765
+la $23,61
+beq $30,$0,L.2767
+la $4,L.2519
+move $5,$23
+jal printf
+L.2767:
+L.2765:
+b L.2769
+la $23,62
+beq $30,$0,L.2771
+la $4,L.2519
+move $5,$23
+jal printf
+L.2771:
+L.2769:
+b L.2773
+la $23,63
+beq $30,$0,L.2775
+la $4,L.2519
+move $5,$23
+jal printf
+L.2775:
+L.2773:
+b L.2777
+la $23,64
+beq $30,$0,L.2779
+la $4,L.2519
+move $5,$23
+jal printf
+L.2779:
+L.2777:
+b L.2781
+la $23,65
+beq $30,$0,L.2783
+la $4,L.2519
+move $5,$23
+jal printf
+L.2783:
+L.2781:
+b L.2785
+la $23,66
+beq $30,$0,L.2787
+la $4,L.2519
+move $5,$23
+jal printf
+L.2787:
+L.2785:
+b L.2789
+la $23,67
+beq $30,$0,L.2791
+la $4,L.2519
+move $5,$23
+jal printf
+L.2791:
+L.2789:
+b L.2793
+la $23,68
+beq $30,$0,L.2795
+la $4,L.2519
+move $5,$23
+jal printf
+L.2795:
+L.2793:
+b L.2797
+la $23,69
+beq $30,$0,L.2799
+la $4,L.2519
+move $5,$23
+jal printf
+L.2799:
+L.2797:
+b L.2801
+la $23,70
+beq $30,$0,L.2803
+la $4,L.2519
+move $5,$23
+jal printf
+L.2803:
+L.2801:
+b L.2805
+la $23,71
+beq $30,$0,L.2807
+la $4,L.2519
+move $5,$23
+jal printf
+L.2807:
+L.2805:
+b L.2809
+la $23,72
+beq $30,$0,L.2811
+la $4,L.2519
+move $5,$23
+jal printf
+L.2811:
+L.2809:
+b L.2813
+la $23,73
+beq $30,$0,L.2815
+la $4,L.2519
+move $5,$23
+jal printf
+L.2815:
+L.2813:
+b L.2817
+la $23,74
+beq $30,$0,L.2819
+la $4,L.2519
+move $5,$23
+jal printf
+L.2819:
+L.2817:
+b L.2821
+la $23,75
+beq $30,$0,L.2823
+la $4,L.2519
+move $5,$23
+jal printf
+L.2823:
+L.2821:
+beq $23,$0,L.2825
+lw $24,0+112($sp)
+lw $24,44($24)
+beq $24,$0,L.2827
+la $4,L.2520
+la $5,1
+jal printf
+L.2827:
+la $17,1($17)
+L.2825:
+move $23,$0
+move $21,$0
+move $22,$0
+move $24,$22
+la $22,1($24)
+move $15,$0
+beq $24,$15,L.2830
+move $24,$21
+la $21,1($24)
+beq $24,$15,L.2830
+la $24,1
+sw $24,-8+112($sp)
+b L.2831
+L.2830:
+sw $0,-8+112($sp)
+L.2831:
+lw $20,-8+112($sp)
+la $24,1
+beq $22,$24,L.2832
+la $23,1
+beq $30,$0,L.2834
+la $4,L.2519
+move $5,$23
+jal printf
+L.2834:
+L.2832:
+beq $21,$0,L.2836
+la $23,2
+beq $30,$0,L.2838
+la $4,L.2519
+move $5,$23
+jal printf
+L.2838:
+L.2836:
+beq $20,$0,L.2840
+la $23,3
+beq $30,$0,L.2842
+la $4,L.2519
+move $5,$23
+jal printf
+L.2842:
+L.2840:
+beq $22,$0,L.2845
+move $15,$21
+la $21,1($15)
+beq $15,$0,L.2845
+la $24,1
+sw $24,-12+112($sp)
+b L.2846
+L.2845:
+sw $0,-12+112($sp)
+L.2846:
+lw $20,-12+112($sp)
+la $24,1
+beq $22,$24,L.2847
+la $23,4
+beq $30,$0,L.2849
+la $4,L.2519
+move $5,$23
+jal printf
+L.2849:
+L.2847:
+la $24,1
+beq $21,$24,L.2851
+la $23,5
+beq $30,$0,L.2853
+la $4,L.2519
+move $5,$23
+jal printf
+L.2853:
+L.2851:
+beq $20,$0,L.2855
+la $23,6
+beq $30,$0,L.2857
+la $4,L.2519
+move $5,$23
+jal printf
+L.2857:
+L.2855:
+move $24,$22
+subu $22,$24,1
+move $15,$0
+beq $24,$15,L.2860
+beq $21,$15,L.2860
+la $24,1
+sw $24,-16+112($sp)
+b L.2861
+L.2860:
+sw $0,-16+112($sp)
+L.2861:
+lw $20,-16+112($sp)
+beq $22,$0,L.2862
+la $23,7
+beq $30,$0,L.2864
+la $4,L.2519
+move $5,$23
+jal printf
+L.2864:
+L.2862:
+la $24,1
+beq $21,$24,L.2866
+la $23,8
+beq $30,$0,L.2868
+la $4,L.2519
+move $5,$23
+jal printf
+L.2868:
+L.2866:
+la $24,1
+beq $20,$24,L.2870
+la $23,9
+beq $30,$0,L.2872
+la $4,L.2519
+move $5,$23
+jal printf
+L.2872:
+L.2870:
+beq $22,$0,L.2875
+move $15,$21
+subu $21,$15,1
+beq $15,$0,L.2875
+la $24,1
+sw $24,-20+112($sp)
+b L.2876
+L.2875:
+sw $0,-20+112($sp)
+L.2876:
+lw $20,-20+112($sp)
+beq $22,$0,L.2877
+la $23,10
+beq $30,$0,L.2879
+la $4,L.2519
+move $5,$23
+jal printf
+L.2879:
+L.2877:
+la $24,1
+beq $21,$24,L.2881
+la $23,11
+beq $30,$0,L.2883
+la $4,L.2519
+move $5,$23
+jal printf
+L.2883:
+L.2881:
+beq $20,$0,L.2885
+la $23,12
+beq $30,$0,L.2887
+la $4,L.2519
+move $5,$23
+jal printf
+L.2887:
+L.2885:
+beq $23,$0,L.2889
+lw $24,0+112($sp)
+lw $24,44($24)
+beq $24,$0,L.2891
+la $4,L.2520
+la $5,2
+jal printf
+L.2891:
+la $17,2($17)
+L.2889:
+move $23,$0
+move $21,$0
+move $22,$0
+move $24,$22
+la $22,1($24)
+move $15,$0
+bne $24,$15,L.2896
+beq $21,$15,L.2894
+L.2896:
+la $24,1
+sw $24,-24+112($sp)
+b L.2895
+L.2894:
+sw $0,-24+112($sp)
+L.2895:
+lw $20,-24+112($sp)
+la $24,1
+beq $22,$24,L.2897
+la $23,1
+beq $30,$0,L.2899
+la $4,L.2519
+move $5,$23
+jal printf
+L.2899:
+L.2897:
+beq $21,$0,L.2901
+la $23,2
+beq $30,$0,L.2903
+la $4,L.2519
+move $5,$23
+jal printf
+L.2903:
+L.2901:
+beq $20,$0,L.2905
+la $23,3
+beq $30,$0,L.2907
+la $4,L.2519
+move $5,$23
+jal printf
+L.2907:
+L.2905:
+move $24,$21
+la $21,1($24)
+move $15,$0
+bne $24,$15,L.2912
+beq $22,$15,L.2910
+L.2912:
+la $24,1
+sw $24,-28+112($sp)
+b L.2911
+L.2910:
+sw $0,-28+112($sp)
+L.2911:
+lw $20,-28+112($sp)
+la $24,1
+beq $22,$24,L.2913
+la $23,4
+beq $30,$0,L.2915
+la $4,L.2519
+move $5,$23
+jal printf
+L.2915:
+L.2913:
+la $24,1
+beq $21,$24,L.2917
+la $23,5
+beq $30,$0,L.2919
+la $4,L.2519
+move $5,$23
+jal printf
+L.2919:
+L.2917:
+la $24,1
+beq $20,$24,L.2921
+la $23,6
+beq $30,$0,L.2923
+la $4,L.2519
+move $5,$23
+jal printf
+L.2923:
+L.2921:
+move $24,$22
+subu $22,$24,1
+move $15,$0
+bne $24,$15,L.2928
+move $24,$21
+subu $21,$24,1
+beq $24,$15,L.2926
+L.2928:
+la $24,1
+sw $24,-32+112($sp)
+b L.2927
+L.2926:
+sw $0,-32+112($sp)
+L.2927:
+lw $20,-32+112($sp)
+beq $22,$0,L.2929
+la $23,7
+beq $30,$0,L.2931
+la $4,L.2519
+move $5,$23
+jal printf
+L.2931:
+L.2929:
+la $24,1
+beq $21,$24,L.2933
+la $23,8
+beq $30,$0,L.2935
+la $4,L.2519
+move $5,$23
+jal printf
+L.2935:
+L.2933:
+la $24,1
+beq $20,$24,L.2937
+la $23,9
+beq $30,$0,L.2939
+la $4,L.2519
+move $5,$23
+jal printf
+L.2939:
+L.2937:
+move $24,$0
+bne $22,$24,L.2944
+move $15,$21
+subu $21,$15,1
+beq $15,$24,L.2942
+L.2944:
+la $24,1
+sw $24,-36+112($sp)
+b L.2943
+L.2942:
+sw $0,-36+112($sp)
+L.2943:
+lw $20,-36+112($sp)
+beq $22,$0,L.2945
+la $23,10
+beq $30,$0,L.2947
+la $4,L.2519
+move $5,$23
+jal printf
+L.2947:
+L.2945:
+beq $21,$0,L.2949
+la $23,11
+beq $30,$0,L.2951
+la $4,L.2519
+move $5,$23
+jal printf
+L.2951:
+L.2949:
+la $24,1
+beq $20,$24,L.2953
+la $23,12
+beq $30,$0,L.2955
+la $4,L.2519
+move $5,$23
+jal printf
+L.2955:
+L.2953:
+beq $23,$0,L.2957
+lw $24,0+112($sp)
+lw $24,44($24)
+beq $24,$0,L.2959
+la $4,L.2520
+la $5,4
+jal printf
+L.2959:
+la $17,4($17)
+L.2957:
+move $24,$0
+move $21,$24
+move $22,$24
+move $16,$24
+la $15,1
+sw $15,-4+112($sp)
+lw $15,-4+112($sp)
+beq $15,$24,L.2963
+sw $16,-40+112($sp)
+b L.2964
+L.2963:
+lw $24,-4+112($sp)
+beq $24,$0,L.2965
+move $24,$22
+la $22,1($24)
+sw $24,-44+112($sp)
+b L.2966
+L.2965:
+move $24,$21
+la $21,1($24)
+sw $24,-44+112($sp)
+L.2966:
+lw $24,-44+112($sp)
+sw $24,-40+112($sp)
+L.2964:
+lw $20,-40+112($sp)
+bne $20,$0,L.2970
+bne $22,$0,L.2970
+beq $21,$0,L.2967
+L.2970:
+lw $24,0+112($sp)
+lw $24,44($24)
+beq $24,$0,L.2971
+la $4,L.2520
+la $5,8
+jal printf
+L.2971:
+la $17,8($17)
+L.2967:
+lw $24,-4+112($sp)
+beq $24,$0,L.2978
+sw $16,-48+112($sp)
+b L.2979
+L.2978:
+la $24,1
+sw $24,-48+112($sp)
+L.2979:
+lw $15,-48+112($sp)
+bne $15,$0,L.2977
+beq $16,$0,L.2980
+la $24,1
+sw $24,-52+112($sp)
+b L.2981
+L.2980:
+sw $16,-52+112($sp)
+L.2981:
+lw $24,-52+112($sp)
+beq $24,$0,L.2973
+L.2977:
+lw $24,0+112($sp)
+lw $24,44($24)
+beq $24,$0,L.2982
+la $4,L.2520
+la $5,16
+jal printf
+L.2982:
+la $17,16($17)
+L.2973:
+move $2,$17
+L.2518:
+lw $16,16($sp)
+lw $17,20($sp)
+lw $18,24($sp)
+lw $19,28($sp)
+lw $20,32($sp)
+lw $21,36($sp)
+lw $22,40($sp)
+lw $23,44($sp)
+lw $25,48($sp)
+lw $30,52($sp)
+lw $31,56($sp)
+addu $sp,$sp,112
+j $31
+.end s7813
+.data
+.align 0
+L.2985:
+.byte 115
+.byte 56
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.2986:
+.byte 115
+.byte 56
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.data
+.align 0
+L.2987:
+.byte 82
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 117
+.byte 110
+.byte 114
+.byte 101
+.byte 108
+.byte 105
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.data
+.align 0
+L.2988:
+.byte 37
+.byte 100
+.byte 32
+.byte 114
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 118
+.byte 97
+.byte 114
+.byte 105
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.globl s81
+.text
+.text
+.align 2
+.ent s81
+s81:
+.frame $sp,80,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-80
+.mask 0xc2ff0000,-24
+sw $16,16($sp)
+sw $17,20($sp)
+sw $18,24($sp)
+sw $19,28($sp)
+sw $20,32($sp)
+sw $21,36($sp)
+sw $22,40($sp)
+sw $23,44($sp)
+.cprestore 48
+sw $30,52($sp)
+sw $31,56($sp)
+sw $4,80($sp)
+sw $0,-20+80($sp)
+sw $0,-8+80($sp)
+sw $0,-12+80($sp)
+sw $0,-16+80($sp)
+la $17,L.2986
+lw $24,0+80($sp)
+la $16,60($24)
+L.2989:
+L.2990:
+move $24,$16
+la $16,1($24)
+move $15,$17
+la $17,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.2989
+la $24,1
+sw $24,-4+80($sp)
+move $21,$0
+L.2992:
+lw $24,-4+80($sp)
+move $15,$24
+move $30,$15
+move $20,$15
+la $23,-4+80($sp)
+la $19,-4+80($sp)
+move $22,$24
+move $18,$24
+sll $24,$30,8*(4-1); sra $24,$24,8*(4-1)
+sll $15,$20,8*(4-1); sra $15,$15,8*(4-1)
+beq $24,$15,L.2996
+la $24,1
+sw $24,-8+80($sp)
+L.2996:
+move $24,$23
+move $15,$19
+beq $24,$15,L.2998
+la $24,1
+sw $24,-12+80($sp)
+L.2998:
+beq $22,$18,L.3000
+la $24,1
+sw $24,-16+80($sp)
+L.3000:
+lw $24,-4+80($sp)
+sll $24,$24,1
+sw $24,-4+80($sp)
+L.2993:
+la $21,1($21)
+la $24,50
+blt $21,$24,L.2992
+lw $24,-8+80($sp)
+beq $24,$0,L.3002
+lw $24,-20+80($sp)
+la $24,1($24)
+sw $24,-20+80($sp)
+lw $24,0+80($sp)
+lw $24,44($24)
+beq $24,$0,L.3004
+la $4,L.2985
+la $5,1
+jal printf
+L.3004:
+L.3002:
+lw $24,-12+80($sp)
+beq $24,$0,L.3006
+lw $24,-20+80($sp)
+la $24,2($24)
+sw $24,-20+80($sp)
+lw $24,0+80($sp)
+lw $24,44($24)
+beq $24,$0,L.3008
+la $4,L.2985
+la $5,2
+jal printf
+L.3008:
+L.3006:
+lw $24,-16+80($sp)
+beq $24,$0,L.3010
+lw $24,-20+80($sp)
+la $24,4($24)
+sw $24,-20+80($sp)
+lw $24,0+80($sp)
+lw $24,44($24)
+beq $24,$0,L.3012
+la $4,L.2985
+la $5,4
+jal printf
+L.3012:
+L.3010:
+jal regc
+sw $2,-4+80($sp)
+lw $24,0+80($sp)
+lw $24,40($24)
+beq $24,$0,L.3014
+lw $24,-4+80($sp)
+bge $24,$0,L.3016
+la $4,L.2987
+la $5,L.425
+jal printf
+b L.3017
+L.3016:
+la $4,L.2988
+lw $5,-4+80($sp)
+la $6,L.425
+jal printf
+L.3017:
+L.3014:
+jal regp
+sw $2,-4+80($sp)
+lw $24,0+80($sp)
+lw $24,40($24)
+beq $24,$0,L.3018
+lw $24,-4+80($sp)
+bge $24,$0,L.3020
+la $4,L.2987
+la $5,L.3022
+jal printf
+b L.3021
+L.3020:
+la $4,L.2988
+lw $5,-4+80($sp)
+la $6,L.3022
+jal printf
+L.3021:
+L.3018:
+jal regi
+sw $2,-4+80($sp)
+lw $24,0+80($sp)
+lw $24,40($24)
+beq $24,$0,L.3023
+lw $24,-4+80($sp)
+bge $24,$0,L.3025
+la $4,L.2987
+la $5,L.426
+jal printf
+b L.3026
+L.3025:
+la $4,L.2988
+lw $5,-4+80($sp)
+la $6,L.426
+jal printf
+L.3026:
+L.3023:
+lw $2,-20+80($sp)
+L.2984:
+lw $16,16($sp)
+lw $17,20($sp)
+lw $18,24($sp)
+lw $19,28($sp)
+lw $20,32($sp)
+lw $21,36($sp)
+lw $22,40($sp)
+lw $23,44($sp)
+lw $25,48($sp)
+lw $30,52($sp)
+lw $31,56($sp)
+addu $sp,$sp,80
+j $31
+.end s81
+.globl regc
+.text
+.align 2
+.ent regc
+regc:
+.frame $sp,176,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-176
+.mask 0x40ff0000,-144
+sw $16,0($sp)
+sw $17,4($sp)
+sw $18,8($sp)
+sw $19,12($sp)
+sw $20,16($sp)
+sw $21,20($sp)
+sw $22,24($sp)
+sw $23,28($sp)
+sw $30,32($sp)
+sb $0,-130+176($sp)
+la $24,1
+sb $24,-109+176($sp)
+la $24,2
+sb $24,-110+176($sp)
+la $24,3
+sb $24,-111+176($sp)
+la $30,4
+la $24,5
+sb $24,-112+176($sp)
+la $23,6
+la $24,7
+sb $24,-113+176($sp)
+la $22,8
+la $24,9
+sb $24,-114+176($sp)
+la $21,10
+la $24,11
+sb $24,-115+176($sp)
+la $20,12
+la $24,13
+sb $24,-116+176($sp)
+la $19,14
+la $24,15
+sb $24,-117+176($sp)
+la $18,16
+la $24,17
+sb $24,-118+176($sp)
+la $17,18
+la $24,19
+sb $24,-119+176($sp)
+la $16,20
+la $24,21
+sb $24,-120+176($sp)
+la $24,22
+sb $24,-1+176($sp)
+la $24,23
+sb $24,-121+176($sp)
+la $24,24
+sb $24,-2+176($sp)
+la $24,25
+sb $24,-122+176($sp)
+la $24,26
+sb $24,-3+176($sp)
+la $24,27
+sb $24,-123+176($sp)
+la $24,28
+sb $24,-4+176($sp)
+la $24,29
+sb $24,-124+176($sp)
+la $24,30
+sb $24,-5+176($sp)
+la $24,31
+sb $24,-125+176($sp)
+la $24,32
+sb $24,-6+176($sp)
+la $24,33
+sb $24,-126+176($sp)
+la $24,34
+sb $24,-7+176($sp)
+la $24,35
+sb $24,-127+176($sp)
+la $24,36
+sb $24,-128+176($sp)
+la $24,37
+sb $24,-129+176($sp)
+la $24,38
+sb $24,-131+176($sp)
+la $24,-109+176($sp)
+la $15,-130+176($sp)
+subu $15,$24,$15
+sw $15,-96+176($sp)
+la $15,-110+176($sp)
+subu $24,$15,$24
+sw $24,-92+176($sp)
+la $24,-111+176($sp)
+la $15,-110+176($sp)
+subu $24,$24,$15
+sw $24,-88+176($sp)
+la $24,-112+176($sp)
+la $15,-111+176($sp)
+subu $24,$24,$15
+sw $24,-84+176($sp)
+la $24,-113+176($sp)
+la $15,-112+176($sp)
+subu $24,$24,$15
+sw $24,-80+176($sp)
+la $24,-114+176($sp)
+la $15,-113+176($sp)
+subu $24,$24,$15
+sw $24,-76+176($sp)
+la $24,-115+176($sp)
+la $15,-114+176($sp)
+subu $24,$24,$15
+sw $24,-72+176($sp)
+la $24,-116+176($sp)
+la $15,-115+176($sp)
+subu $24,$24,$15
+sw $24,-68+176($sp)
+la $24,-117+176($sp)
+la $15,-116+176($sp)
+subu $24,$24,$15
+sw $24,-64+176($sp)
+la $24,-118+176($sp)
+la $15,-117+176($sp)
+subu $24,$24,$15
+sw $24,-60+176($sp)
+la $24,-119+176($sp)
+la $15,-118+176($sp)
+subu $24,$24,$15
+sw $24,-56+176($sp)
+la $24,-120+176($sp)
+la $15,-119+176($sp)
+subu $24,$24,$15
+sw $24,-52+176($sp)
+la $24,-121+176($sp)
+la $15,-120+176($sp)
+subu $24,$24,$15
+sw $24,-48+176($sp)
+la $24,-122+176($sp)
+la $15,-121+176($sp)
+subu $24,$24,$15
+sw $24,-44+176($sp)
+la $24,-123+176($sp)
+la $15,-122+176($sp)
+subu $24,$24,$15
+sw $24,-40+176($sp)
+la $24,-124+176($sp)
+la $15,-123+176($sp)
+subu $24,$24,$15
+sw $24,-36+176($sp)
+la $24,-125+176($sp)
+la $15,-124+176($sp)
+subu $24,$24,$15
+sw $24,-32+176($sp)
+la $24,-126+176($sp)
+la $15,-125+176($sp)
+subu $24,$24,$15
+sw $24,-28+176($sp)
+la $24,-127+176($sp)
+la $15,-126+176($sp)
+subu $24,$24,$15
+sw $24,-24+176($sp)
+la $24,-128+176($sp)
+la $15,-127+176($sp)
+subu $24,$24,$15
+sw $24,-20+176($sp)
+la $24,-129+176($sp)
+la $15,-128+176($sp)
+subu $24,$24,$15
+sw $24,-16+176($sp)
+la $24,-131+176($sp)
+la $15,-129+176($sp)
+subu $24,$24,$15
+sw $24,-12+176($sp)
+lw $24,-96+176($sp)
+sw $24,-108+176($sp)
+la $24,1
+sw $24,-104+176($sp)
+sw $0,-100+176($sp)
+L.3049:
+lw $24,-104+176($sp)
+la $15,1
+beq $24,$15,L.3055
+la $15,2
+beq $24,$15,L.3058
+la $15,3
+beq $24,$15,L.3063
+b L.3053
+L.3055:
+lw $24,-100+176($sp)
+sll $24,$24,2
+la $15,-96+176($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-108+176($sp)
+beq $24,$15,L.3054
+la $24,2
+lw $15,-100+176($sp)
+sll $15,$15,2
+la $14,-96+176($sp)
+addu $15,$15,$14
+lw $15,($15)
+sw $15,-140+176($sp)
+sw $24,-104+176($sp)
+la $24,1
+sw $24,-136+176($sp)
+b L.3054
+L.3058:
+lw $24,-100+176($sp)
+sll $24,$24,2
+la $15,-96+176($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-108+176($sp)
+bne $24,$15,L.3059
+la $24,3
+sw $24,-104+176($sp)
+b L.3054
+L.3059:
+lw $24,-100+176($sp)
+sll $24,$24,2
+la $15,-96+176($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-140+176($sp)
+bne $24,$15,L.3061
+lw $24,-136+176($sp)
+la $24,1($24)
+sw $24,-136+176($sp)
+b L.3054
+L.3061:
+la $24,4
+sw $24,-104+176($sp)
+b L.3054
+L.3063:
+lw $24,-100+176($sp)
+sll $24,$24,2
+la $15,-96+176($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-108+176($sp)
+beq $24,$15,L.3054
+la $24,4
+sw $24,-104+176($sp)
+L.3053:
+L.3054:
+L.3050:
+lw $24,-100+176($sp)
+la $24,1($24)
+sw $24,-100+176($sp)
+lw $24,-100+176($sp)
+la $15,22
+blt $24,$15,L.3049
+lw $24,-104+176($sp)
+la $15,3
+bne $24,$15,L.3066
+la $24,16
+lw $15,-136+176($sp)
+subu $2,$24,$15
+b L.3027
+L.3066:
+la $2,-1
+L.3027:
+lw $16,0($sp)
+lw $17,4($sp)
+lw $18,8($sp)
+lw $19,12($sp)
+lw $20,16($sp)
+lw $21,20($sp)
+lw $22,24($sp)
+lw $23,28($sp)
+lw $30,32($sp)
+addu $sp,$sp,176
+j $31
+.end regc
+.globl regi
+.text
+.align 2
+.ent regi
+regi:
+.frame $sp,264,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-264
+.mask 0x40ff0000,-232
+sw $16,0($sp)
+sw $17,4($sp)
+sw $18,8($sp)
+sw $19,12($sp)
+sw $20,16($sp)
+sw $21,20($sp)
+sw $22,24($sp)
+sw $23,28($sp)
+sw $30,32($sp)
+sw $0,-216+264($sp)
+la $24,1
+sw $24,-132+264($sp)
+la $24,2
+sw $24,-136+264($sp)
+la $24,3
+sw $24,-140+264($sp)
+la $30,4
+la $24,5
+sw $24,-144+264($sp)
+la $23,6
+la $24,7
+sw $24,-148+264($sp)
+la $22,8
+la $24,9
+sw $24,-152+264($sp)
+la $21,10
+la $24,11
+sw $24,-156+264($sp)
+la $20,12
+la $24,13
+sw $24,-160+264($sp)
+la $19,14
+la $24,15
+sw $24,-164+264($sp)
+la $18,16
+la $24,17
+sw $24,-168+264($sp)
+la $17,18
+la $24,19
+sw $24,-172+264($sp)
+la $16,20
+la $24,21
+sw $24,-176+264($sp)
+la $24,22
+sw $24,-4+264($sp)
+la $24,23
+sw $24,-180+264($sp)
+la $24,24
+sw $24,-8+264($sp)
+la $24,25
+sw $24,-184+264($sp)
+la $24,26
+sw $24,-12+264($sp)
+la $24,27
+sw $24,-188+264($sp)
+la $24,28
+sw $24,-16+264($sp)
+la $24,29
+sw $24,-192+264($sp)
+la $24,30
+sw $24,-20+264($sp)
+la $24,31
+sw $24,-196+264($sp)
+la $24,32
+sw $24,-24+264($sp)
+la $24,33
+sw $24,-200+264($sp)
+la $24,34
+sw $24,-28+264($sp)
+la $24,35
+sw $24,-204+264($sp)
+la $24,36
+sw $24,-208+264($sp)
+la $24,37
+sw $24,-212+264($sp)
+la $24,38
+sw $24,-220+264($sp)
+la $24,-132+264($sp)
+la $15,4
+la $14,-216+264($sp)
+subu $14,$24,$14
+div $14,$14,$15
+sw $14,-116+264($sp)
+la $14,-136+264($sp)
+subu $24,$14,$24
+div $24,$24,$15
+sw $24,-112+264($sp)
+la $24,-140+264($sp)
+la $15,-136+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-108+264($sp)
+la $24,-144+264($sp)
+la $15,-140+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-104+264($sp)
+la $24,-148+264($sp)
+la $15,-144+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-100+264($sp)
+la $24,-152+264($sp)
+la $15,-148+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-96+264($sp)
+la $24,-156+264($sp)
+la $15,-152+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-92+264($sp)
+la $24,-160+264($sp)
+la $15,-156+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-88+264($sp)
+la $24,-164+264($sp)
+la $15,-160+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-84+264($sp)
+la $24,-168+264($sp)
+la $15,-164+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-80+264($sp)
+la $24,-172+264($sp)
+la $15,-168+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-76+264($sp)
+la $24,-176+264($sp)
+la $15,-172+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-72+264($sp)
+la $24,-180+264($sp)
+la $15,-176+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-68+264($sp)
+la $24,-184+264($sp)
+la $15,-180+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-64+264($sp)
+la $24,-188+264($sp)
+la $15,-184+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-60+264($sp)
+la $24,-192+264($sp)
+la $15,-188+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-56+264($sp)
+la $24,-196+264($sp)
+la $15,-192+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-52+264($sp)
+la $24,-200+264($sp)
+la $15,-196+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-48+264($sp)
+la $24,-204+264($sp)
+la $15,-200+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-44+264($sp)
+la $24,-208+264($sp)
+la $15,-204+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-40+264($sp)
+la $24,-212+264($sp)
+la $15,-208+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-36+264($sp)
+la $24,-220+264($sp)
+la $15,-212+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-32+264($sp)
+lw $24,-116+264($sp)
+sw $24,-128+264($sp)
+la $24,1
+sw $24,-124+264($sp)
+sw $0,-120+264($sp)
+L.3090:
+lw $24,-124+264($sp)
+la $15,1
+beq $24,$15,L.3096
+la $15,2
+beq $24,$15,L.3099
+la $15,3
+beq $24,$15,L.3104
+b L.3094
+L.3096:
+lw $24,-120+264($sp)
+sll $24,$24,2
+la $15,-116+264($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-128+264($sp)
+beq $24,$15,L.3095
+la $24,2
+lw $15,-120+264($sp)
+sll $15,$15,2
+la $14,-116+264($sp)
+addu $15,$15,$14
+lw $15,($15)
+sw $15,-228+264($sp)
+sw $24,-124+264($sp)
+la $24,1
+sw $24,-224+264($sp)
+b L.3095
+L.3099:
+lw $24,-120+264($sp)
+sll $24,$24,2
+la $15,-116+264($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-128+264($sp)
+bne $24,$15,L.3100
+la $24,3
+sw $24,-124+264($sp)
+b L.3095
+L.3100:
+lw $24,-120+264($sp)
+sll $24,$24,2
+la $15,-116+264($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-228+264($sp)
+bne $24,$15,L.3102
+lw $24,-224+264($sp)
+la $24,1($24)
+sw $24,-224+264($sp)
+b L.3095
+L.3102:
+la $24,4
+sw $24,-124+264($sp)
+b L.3095
+L.3104:
+lw $24,-120+264($sp)
+sll $24,$24,2
+la $15,-116+264($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-128+264($sp)
+beq $24,$15,L.3095
+la $24,4
+sw $24,-124+264($sp)
+L.3094:
+L.3095:
+L.3091:
+lw $24,-120+264($sp)
+la $24,1($24)
+sw $24,-120+264($sp)
+lw $24,-120+264($sp)
+la $15,22
+blt $24,$15,L.3090
+lw $24,-124+264($sp)
+la $15,3
+bne $24,$15,L.3107
+la $24,16
+lw $15,-224+264($sp)
+subu $2,$24,$15
+b L.3068
+L.3107:
+la $2,-1
+L.3068:
+lw $16,0($sp)
+lw $17,4($sp)
+lw $18,8($sp)
+lw $19,12($sp)
+lw $20,16($sp)
+lw $21,20($sp)
+lw $22,24($sp)
+lw $23,28($sp)
+lw $30,32($sp)
+addu $sp,$sp,264
+j $31
+.end regi
+.globl regp
+.text
+.align 2
+.ent regp
+regp:
+.frame $sp,264,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-264
+.mask 0x40ff0000,-232
+sw $16,0($sp)
+sw $17,4($sp)
+sw $18,8($sp)
+sw $19,12($sp)
+sw $20,16($sp)
+sw $21,20($sp)
+sw $22,24($sp)
+sw $23,28($sp)
+sw $30,32($sp)
+la $24,-216+264($sp)
+sw $24,-216+264($sp)
+la $24,-192+264($sp)
+sw $24,-192+264($sp)
+la $24,-196+264($sp)
+sw $24,-196+264($sp)
+la $24,-200+264($sp)
+sw $24,-200+264($sp)
+la $30,-128+264($sp)
+la $24,-128+264($sp)
+sw $24,-128+264($sp)
+la $23,-132+264($sp)
+la $24,-132+264($sp)
+sw $24,-132+264($sp)
+la $22,-136+264($sp)
+la $24,-136+264($sp)
+sw $24,-136+264($sp)
+la $21,-140+264($sp)
+la $24,-140+264($sp)
+sw $24,-140+264($sp)
+la $20,-144+264($sp)
+la $24,-144+264($sp)
+sw $24,-144+264($sp)
+la $19,-148+264($sp)
+la $24,-148+264($sp)
+sw $24,-148+264($sp)
+la $18,-152+264($sp)
+la $24,-152+264($sp)
+sw $24,-152+264($sp)
+la $17,-156+264($sp)
+la $24,-156+264($sp)
+sw $24,-156+264($sp)
+la $16,-160+264($sp)
+la $24,-160+264($sp)
+sw $24,-160+264($sp)
+la $24,-164+264($sp)
+sw $24,-4+264($sp)
+la $24,-164+264($sp)
+sw $24,-164+264($sp)
+la $24,-168+264($sp)
+sw $24,-8+264($sp)
+la $24,-168+264($sp)
+sw $24,-168+264($sp)
+la $24,-172+264($sp)
+sw $24,-12+264($sp)
+la $24,-172+264($sp)
+sw $24,-172+264($sp)
+la $24,-176+264($sp)
+sw $24,-16+264($sp)
+la $24,-176+264($sp)
+sw $24,-176+264($sp)
+la $24,-180+264($sp)
+sw $24,-20+264($sp)
+la $24,-180+264($sp)
+sw $24,-180+264($sp)
+la $24,-184+264($sp)
+sw $24,-24+264($sp)
+la $24,-184+264($sp)
+sw $24,-184+264($sp)
+la $24,-188+264($sp)
+sw $24,-28+264($sp)
+la $24,-188+264($sp)
+sw $24,-188+264($sp)
+la $24,-204+264($sp)
+sw $24,-204+264($sp)
+la $24,-208+264($sp)
+sw $24,-208+264($sp)
+la $24,-220+264($sp)
+sw $24,-220+264($sp)
+la $24,-192+264($sp)
+la $15,4
+la $14,-216+264($sp)
+subu $14,$24,$14
+div $14,$14,$15
+sw $14,-116+264($sp)
+la $14,-196+264($sp)
+subu $24,$14,$24
+div $24,$24,$15
+sw $24,-112+264($sp)
+la $24,-200+264($sp)
+la $15,-196+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-108+264($sp)
+la $24,-128+264($sp)
+la $15,-200+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-104+264($sp)
+la $24,-132+264($sp)
+la $15,-128+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-100+264($sp)
+la $24,-136+264($sp)
+la $15,-132+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-96+264($sp)
+la $24,-140+264($sp)
+la $15,-136+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-92+264($sp)
+la $24,-144+264($sp)
+la $15,-140+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-88+264($sp)
+la $24,-148+264($sp)
+la $15,-144+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-84+264($sp)
+la $24,-152+264($sp)
+la $15,-148+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-80+264($sp)
+la $24,-156+264($sp)
+la $15,-152+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-76+264($sp)
+la $24,-160+264($sp)
+la $15,-156+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-72+264($sp)
+la $24,-164+264($sp)
+la $15,-160+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-68+264($sp)
+la $24,-168+264($sp)
+la $15,-164+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-64+264($sp)
+la $24,-172+264($sp)
+la $15,-168+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-60+264($sp)
+la $24,-176+264($sp)
+la $15,-172+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-56+264($sp)
+la $24,-180+264($sp)
+la $15,-176+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-52+264($sp)
+la $24,-184+264($sp)
+la $15,-180+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-48+264($sp)
+la $24,-188+264($sp)
+la $15,-184+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-44+264($sp)
+la $24,-204+264($sp)
+la $15,-188+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-40+264($sp)
+la $24,-208+264($sp)
+la $15,-204+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-36+264($sp)
+la $24,-220+264($sp)
+la $15,-208+264($sp)
+subu $24,$24,$15
+la $15,4
+div $24,$24,$15
+sw $24,-32+264($sp)
+lw $24,-116+264($sp)
+sw $24,-212+264($sp)
+la $24,1
+sw $24,-124+264($sp)
+sw $0,-120+264($sp)
+L.3131:
+lw $24,-124+264($sp)
+la $15,1
+beq $24,$15,L.3137
+la $15,2
+beq $24,$15,L.3140
+la $15,3
+beq $24,$15,L.3145
+b L.3135
+L.3137:
+lw $24,-120+264($sp)
+sll $24,$24,2
+la $15,-116+264($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-212+264($sp)
+beq $24,$15,L.3136
+la $24,2
+lw $15,-120+264($sp)
+sll $15,$15,2
+la $14,-116+264($sp)
+addu $15,$15,$14
+lw $15,($15)
+sw $15,-228+264($sp)
+sw $24,-124+264($sp)
+la $24,1
+sw $24,-224+264($sp)
+b L.3136
+L.3140:
+lw $24,-120+264($sp)
+sll $24,$24,2
+la $15,-116+264($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-212+264($sp)
+bne $24,$15,L.3141
+la $24,3
+sw $24,-124+264($sp)
+b L.3136
+L.3141:
+lw $24,-120+264($sp)
+sll $24,$24,2
+la $15,-116+264($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-228+264($sp)
+bne $24,$15,L.3143
+lw $24,-224+264($sp)
+la $24,1($24)
+sw $24,-224+264($sp)
+b L.3136
+L.3143:
+la $24,4
+sw $24,-124+264($sp)
+b L.3136
+L.3145:
+lw $24,-120+264($sp)
+sll $24,$24,2
+la $15,-116+264($sp)
+addu $24,$24,$15
+lw $24,($24)
+lw $15,-212+264($sp)
+beq $24,$15,L.3136
+la $24,4
+sw $24,-124+264($sp)
+L.3135:
+L.3136:
+L.3132:
+lw $24,-120+264($sp)
+la $24,1($24)
+sw $24,-120+264($sp)
+lw $24,-120+264($sp)
+la $15,22
+blt $24,$15,L.3131
+lw $24,-124+264($sp)
+la $15,3
+bne $24,$15,L.3148
+la $24,16
+lw $15,-224+264($sp)
+subu $2,$24,$15
+b L.3109
+L.3148:
+la $2,-1
+L.3109:
+lw $16,0($sp)
+lw $17,4($sp)
+lw $18,8($sp)
+lw $19,12($sp)
+lw $20,16($sp)
+lw $21,20($sp)
+lw $22,24($sp)
+lw $23,28($sp)
+lw $30,32($sp)
+addu $sp,$sp,264
+j $31
+.end regp
+.lcomm L.3151,420
+.data
+.align 0
+L.3152:
+.byte 115
+.byte 56
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.3153:
+.byte 115
+.byte 56
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s84
+.text
+.text
+.align 2
+.ent s84
+s84:
+.frame $sp,216,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-216
+.fmask 0xc0000000,-200
+.mask 0xc2fc0000,-160
+s.d $f30,16($sp)
+sw $18,24($sp)
+sw $19,28($sp)
+sw $20,32($sp)
+sw $21,36($sp)
+sw $22,40($sp)
+sw $23,44($sp)
+.cprestore 48
+sw $30,52($sp)
+sw $31,56($sp)
+move $30,$4
+la $20,L.3153
+la $19,60($30)
+move $18,$0
+L.3154:
+L.3155:
+move $24,$19
+la $19,1($24)
+move $15,$20
+la $20,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.3154
+la $4,3
+jal fip
+sw $2,-140+216($sp)
+lw $24,-140+216($sp)
+lw $24,($24)
+la $15,3
+beq $24,$15,L.3157
+lw $24,44($30)
+beq $24,$0,L.3159
+la $4,L.3152
+la $5,1
+jal printf
+L.3159:
+la $18,1($18)
+L.3157:
+la $24,glork
+sw $24,-144+216($sp)
+la $4,4
+lw $25,-144+216($sp)
+jal $25
+la $15,4
+beq $2,$15,L.3161
+lw $24,44($30)
+beq $24,$0,L.3163
+la $4,L.3152
+la $5,2
+jal printf
+L.3163:
+la $18,2($18)
+L.3161:
+move $22,$0
+L.3165:
+sll $24,$22,2
+la $15,-68+216($sp)
+addu $24,$24,$15
+mtc1 $22,$f18; cvt.s.w $f18,$f18
+s.s $f18,($24)
+sll $24,$22,2
+la $15,-136+216($sp)
+addu $15,$24,$15
+la $14,-68+216($sp)
+addu $24,$24,$14
+sw $24,($15)
+L.3166:
+la $22,1($22)
+la $24,17
+blt $22,$24,L.3165
+l.s $f30,L.412
+move $22,$0
+L.3169:
+sll $24,$22,2
+la $15,-136+216($sp)
+addu $24,$24,$15
+lw $24,($24)
+l.s $f18,($24)
+add.s $f30,$f30,$f18
+L.3170:
+la $22,1($22)
+la $24,17
+blt $22,$24,L.3169
+l.s $f18,L.3175
+c.eq.s $f30,$f18; bc1t L.3173
+lw $24,44($30)
+beq $24,$0,L.3176
+la $4,L.3152
+la $5,4
+jal printf
+L.3176:
+la $18,4($18)
+L.3173:
+move $21,$0
+L.3178:
+move $22,$0
+L.3182:
+move $23,$0
+L.3186:
+sll $24,$23,2
+la $15,28
+mul $15,$15,$22
+la $14,140
+mul $14,$14,$21
+la $14,L.3151($14)
+addu $15,$15,$14
+addu $24,$24,$15
+la $15,35
+mul $15,$15,$21
+la $14,7
+mul $14,$14,$22
+addu $15,$15,$14
+addu $15,$15,$23
+sw $15,($24)
+L.3187:
+la $23,1($23)
+la $24,7
+blt $23,$24,L.3186
+L.3183:
+la $22,1($22)
+la $24,5
+blt $22,$24,L.3182
+L.3179:
+la $21,1($21)
+la $24,3
+blt $21,$24,L.3178
+la $21,1
+la $22,2
+la $23,3
+la $4,L.3151
+la $5,105
+move $6,$0
+jal array
+move $24,$2
+sw $24,-148+216($sp)
+la $15,140
+mul $15,$15,$21
+la $4,L.3151($15)
+la $15,35
+move $5,$15
+move $6,$15
+jal array
+move $24,$2
+sw $24,-152+216($sp)
+la $15,28
+mul $15,$15,$22
+la $14,140
+mul $14,$14,$21
+la $14,L.3151($14)
+addu $4,$15,$14
+la $5,7
+la $6,49
+jal array
+lw $15,-148+216($sp)
+lw $14,-152+216($sp)
+addu $15,$15,$14
+addu $24,$15,$2
+sll $15,$23,2
+la $14,28
+mul $14,$14,$22
+la $13,140
+mul $13,$13,$21
+la $13,L.3151($13)
+addu $14,$14,$13
+addu $15,$15,$14
+lw $15,($15)
+addu $24,$24,$15
+subu $24,$24,52
+beq $24,$0,L.3190
+lw $24,44($30)
+beq $24,$0,L.3192
+la $4,L.3152
+la $5,8
+jal printf
+L.3192:
+la $18,8($18)
+L.3190:
+move $2,$18
+L.3150:
+l.d $f30,16($sp)
+lw $18,24($sp)
+lw $19,28($sp)
+lw $20,32($sp)
+lw $21,36($sp)
+lw $22,40($sp)
+lw $23,44($sp)
+lw $25,48($sp)
+lw $30,52($sp)
+lw $31,56($sp)
+addu $sp,$sp,216
+j $31
+.end s84
+.globl array
+.text
+.align 2
+.ent array
+array:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+.mask 0x40000000,-8
+sw $30,0($sp)
+move $30,$0
+b L.3198
+L.3195:
+sll $24,$30,2
+addu $24,$24,$4
+lw $24,($24)
+addu $15,$30,$6
+beq $24,$15,L.3199
+la $2,1
+b L.3194
+L.3199:
+L.3196:
+la $30,1($30)
+L.3198:
+blt $30,$5,L.3195
+move $2,$0
+L.3194:
+lw $30,0($sp)
+addu $sp,$sp,8
+j $31
+.end array
+.lcomm L.3202,4
+.globl fip
+.text
+.text
+.align 2
+.ent fip
+fip:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+la $24,L.3202
+sw $4,L.3202
+move $2,$24
+L.3201:
+j $31
+.end fip
+.globl glork
+.text
+.align 2
+.ent glork
+glork:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+move $2,$4
+L.3203:
+j $31
+.end glork
+.data
+.align 0
+L.3205:
+.byte 115
+.byte 56
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.3206:
+.byte 115
+.byte 56
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.data
+.align 2
+L.3214:
+.word L.425
+.word L.427
+.word L.426
+.word L.428
+.word L.429
+.word L.430
+.word L.431
+.data
+.align 0
+L.3215:
+.byte 32
+.byte 97
+.byte 108
+.byte 105
+.byte 103
+.byte 110
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 58
+.byte 32
+.byte 0
+.globl s85
+.text
+.text
+.align 2
+.ent s85
+s85:
+.frame $sp,440,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-440
+.mask 0xc2f00000,-400
+sw $20,16($sp)
+sw $21,20($sp)
+sw $22,24($sp)
+sw $23,28($sp)
+.cprestore 32
+sw $30,36($sp)
+sw $31,40($sp)
+move $30,$4
+la $22,L.3206
+la $21,60($30)
+move $20,$0
+L.3219:
+L.3220:
+move $24,$21
+la $21,1($24)
+move $15,$22
+la $22,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.3219
+la $15,-284+440($sp)
+la $14,-304+440($sp)
+subu $15,$15,$14
+ble $15,$0,L.3230
+la $15,-280+440($sp)
+la $14,-284+440($sp)
+subu $15,$15,$14
+ble $15,$0,L.3230
+la $15,-276+440($sp)
+la $14,-280+440($sp)
+subu $15,$15,$14
+bgt $15,$0,L.3222
+L.3230:
+lw $24,44($30)
+beq $24,$0,L.3231
+la $4,L.3205
+la $5,1
+jal printf
+L.3231:
+la $20,1($20)
+L.3222:
+la $24,-337+440($sp)
+la $15,-338+440($sp)
+subu $24,$24,$15
+sw $24,-268+440($sp)
+la $24,-340+440($sp)
+la $15,-342+440($sp)
+subu $24,$24,$15
+sw $24,-264+440($sp)
+la $24,-348+440($sp)
+la $15,-352+440($sp)
+subu $24,$24,$15
+sw $24,-260+440($sp)
+la $24,-356+440($sp)
+la $15,-360+440($sp)
+subu $24,$24,$15
+sw $24,-256+440($sp)
+la $24,-364+440($sp)
+la $15,-368+440($sp)
+subu $24,$24,$15
+sw $24,-252+440($sp)
+la $24,-372+440($sp)
+la $15,-376+440($sp)
+subu $24,$24,$15
+sw $24,-248+440($sp)
+la $24,-384+440($sp)
+la $15,-392+440($sp)
+subu $24,$24,$15
+sw $24,-244+440($sp)
+lw $24,40($30)
+beq $24,$0,L.3246
+move $23,$0
+L.3248:
+la $4,L.3252
+sll $24,$23,2
+lw $5,L.3214($24)
+la $6,L.3215
+la $15,-268+440($sp)
+addu $24,$24,$15
+lw $7,($24)
+jal printf
+L.3249:
+la $23,1($23)
+la $24,7
+blt $23,$24,L.3248
+L.3246:
+lw $24,-272+440($sp)
+or $24,$24,0x1c000000
+sw $24,-272+440($sp)
+lw $24,-272+440($sp)
+move $15,$24
+and $15,$15,0x3fffffff
+sll $24,$24,3
+sra $24,$24,29
+sll $24,$24,30
+sra $24,$24,30
+sll $24,$24,30
+and $24,$24,0xc0000000
+or $24,$15,$24
+sw $24,-272+440($sp)
+lw $24,-272+440($sp)
+move $15,$24
+and $15,$15,0xe3ffffff
+sra $24,$24,30
+sll $24,$24,29
+sra $24,$24,29
+sll $24,$24,26
+and $24,$24,0x1c000000
+or $24,$15,$24
+sw $24,-272+440($sp)
+la $24,3
+lw $15,-272+440($sp)
+sll $15,$15,3
+sra $15,$15,29
+beq $15,$24,L.3253
+lw $24,-272+440($sp)
+sll $24,$24,3
+sra $24,$24,29
+la $15,-1
+bne $24,$15,L.3255
+lw $24,40($30)
+beq $24,$0,L.3256
+la $4,L.3259
+jal printf
+b L.3256
+L.3255:
+lw $24,44($30)
+beq $24,$0,L.3260
+la $4,L.3205
+la $5,2
+jal printf
+L.3260:
+la $20,2($20)
+L.3256:
+L.3253:
+lw $24,-272+440($sp)
+or $24,$24,0x2000000
+sw $24,-272+440($sp)
+lw $24,-272+440($sp)
+sll $24,$24,6
+sra $24,$24,31
+la $15,1
+beq $24,$15,L.3262
+lw $24,40($30)
+beq $24,$0,L.3264
+la $4,L.3266
+jal printf
+L.3264:
+L.3262:
+la $24,-240+440($sp)
+subu $24,$24,$24
+bne $24,$0,L.3274
+bne $24,$0,L.3274
+bne $24,$0,L.3274
+bne $24,$0,L.3274
+bne $24,$0,L.3274
+bne $24,$0,L.3274
+beq $24,$0,L.3267
+L.3274:
+lw $24,44($30)
+beq $24,$0,L.3275
+la $4,L.3205
+la $5,4
+jal printf
+L.3275:
+la $20,4($20)
+L.3267:
+b L.3277
+lw $24,44($30)
+beq $24,$0,L.3279
+la $4,L.3205
+la $5,8
+jal printf
+L.3279:
+la $20,8($20)
+L.3277:
+la $24,-336+440($sp)
+sw $24,-276+440($sp)
+la $24,2
+sb $24,-336+440($sp)
+lw $24,-276+440($sp)
+lb $15,($24)
+la $15,1($15)
+sb $15,($24)
+lb $24,-336+440($sp)
+la $15,3
+beq $24,$15,L.3283
+lw $24,44($30)
+beq $24,$0,L.3285
+la $4,L.3205
+la $5,16
+jal printf
+L.3285:
+la $20,16($20)
+L.3283:
+move $2,$20
+L.3204:
+lw $20,16($sp)
+lw $21,20($sp)
+lw $22,24($sp)
+lw $23,28($sp)
+lw $25,32($sp)
+lw $30,36($sp)
+lw $31,40($sp)
+addu $sp,$sp,440
+j $31
+.end s85
+.data
+.align 0
+L.3288:
+.byte 115
+.byte 56
+.byte 54
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.3289:
+.byte 115
+.byte 56
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.data
+.align 2
+L.3290:
+.word 0x1
+.word 0x3
+.word 0x5
+.sdata
+.align 2
+L.3291:
+.word L.3290+8
+.lcomm L.3293,40
+.data
+.align 2
+L.3294:
+.word 0x3f800000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40000000
+.word 0x40800000
+.word 0x40c00000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40e00000
+.word 0x0
+.word 0x0
+.word 0x0
+.data
+.align 2
+L.3295:
+.word 0x3f800000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40000000
+.word 0x40800000
+.word 0x40c00000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40e00000
+.space 12
+.data
+.align 2
+L.3296:
+.word 0x3f800000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40000000
+.word 0x40800000
+.word 0x40c00000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40e00000
+.space 12
+.data
+.align 2
+L.3297:
+.word 0x3f800000
+.space 8
+.word 0x40000000
+.space 8
+.word 0x40400000
+.space 8
+.word 0x40800000
+.space 8
+.globl s86
+.text
+.text
+.align 2
+.ent s86
+s86:
+.frame $sp,64,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-64
+.mask 0xc2ff0000,-8
+sw $16,16($sp)
+sw $17,20($sp)
+sw $18,24($sp)
+sw $19,28($sp)
+sw $20,32($sp)
+sw $21,36($sp)
+sw $22,40($sp)
+sw $23,44($sp)
+.cprestore 48
+sw $30,52($sp)
+sw $31,56($sp)
+sw $4,64($sp)
+lw $24,L.3291
+la $16,-4($24)
+jal one
+sll $24,$2,2
+addu $30,$24,$16
+la $19,L.3289
+lw $24,0+64($sp)
+la $18,60($24)
+move $17,$0
+L.3298:
+L.3299:
+move $24,$18
+la $18,1($24)
+move $15,$19
+la $19,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.3298
+lw $24,L.3291
+lw $24,($24)
+la $15,5
+beq $24,$15,L.3301
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3303
+la $4,L.3288
+la $5,1
+jal printf
+L.3303:
+la $17,1($17)
+L.3301:
+lw $24,($16)
+la $15,3
+beq $24,$15,L.3305
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3307
+la $4,L.3288
+la $5,2
+jal printf
+L.3307:
+la $17,2($17)
+L.3305:
+lw $24,($30)
+la $15,5
+beq $24,$15,L.3309
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3311
+la $4,L.3288
+la $5,4
+jal printf
+L.3311:
+la $17,4($17)
+L.3309:
+move $20,$0
+move $23,$0
+L.3313:
+sll $24,$23,2
+lw $24,L.3293($24)
+beq $24,$0,L.3317
+la $20,1
+L.3317:
+L.3314:
+la $23,1($23)
+la $24,10
+blt $23,$24,L.3313
+beq $20,$0,L.3319
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3321
+la $4,L.3288
+la $5,8
+jal printf
+L.3321:
+la $17,8($17)
+L.3319:
+move $20,$0
+move $22,$0
+L.3323:
+move $23,$0
+L.3327:
+la $24,3
+mul $24,$24,$22
+addu $21,$24,$23
+sll $24,$23,2
+la $15,12
+mul $15,$15,$22
+la $14,L.3295($15)
+addu $14,$24,$14
+l.s $f18,($14)
+la $15,L.3296($15)
+addu $24,$24,$15
+l.s $f16,($24)
+c.eq.s $f18,$f16; bc1f L.3333
+sll $24,$21,2
+l.s $f16,L.3294($24)
+c.eq.s $f18,$f16; bc1t L.3331
+L.3333:
+la $20,1
+L.3331:
+L.3328:
+la $23,1($23)
+la $24,3
+blt $23,$24,L.3327
+L.3324:
+la $22,1($22)
+la $24,4
+blt $22,$24,L.3323
+beq $20,$0,L.3334
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3336
+la $4,L.3288
+la $5,16
+jal printf
+L.3336:
+la $17,16($17)
+L.3334:
+move $20,$0
+move $23,$0
+L.3338:
+la $24,12
+mul $24,$24,$23
+l.s $f18,L.3297($24)
+la $24,1($23)
+mtc1 $24,$f16; cvt.s.w $f16,$f16
+c.eq.s $f18,$f16; bc1t L.3342
+la $20,1
+L.3342:
+L.3339:
+la $23,1($23)
+la $24,4
+blt $23,$24,L.3338
+beq $20,$0,L.3344
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3346
+la $4,L.3288
+la $5,32
+jal printf
+L.3346:
+la $17,32($17)
+L.3344:
+move $2,$17
+L.3287:
+lw $16,16($sp)
+lw $17,20($sp)
+lw $18,24($sp)
+lw $19,28($sp)
+lw $20,32($sp)
+lw $21,36($sp)
+lw $22,40($sp)
+lw $23,44($sp)
+lw $25,48($sp)
+lw $30,52($sp)
+lw $31,56($sp)
+addu $sp,$sp,64
+j $31
+.end s86
+.globl one
+.text
+.align 2
+.ent one
+one:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+la $2,1
+L.3348:
+j $31
+.end one
+.data
+.align 0
+L.3350:
+.byte 115
+.byte 56
+.byte 56
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.3351:
+.byte 115
+.byte 56
+.byte 56
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s88
+.text
+.text
+.align 2
+.ent s88
+s88:
+.frame $sp,64,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-64
+.mask 0xc2e00000,-28
+sw $21,16($sp)
+sw $22,20($sp)
+sw $23,24($sp)
+.cprestore 28
+sw $30,32($sp)
+sw $31,36($sp)
+sw $4,64($sp)
+la $30,L.3351
+lw $24,0+64($sp)
+la $23,60($24)
+move $22,$0
+L.3353:
+L.3354:
+move $24,$23
+la $23,1($24)
+move $15,$30
+la $30,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.3353
+b L.3356
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3358
+la $4,L.3350
+la $5,1
+jal printf
+L.3358:
+la $22,1($22)
+L.3356:
+la $24,-20+64($sp)
+sw $24,metricp
+la $24,2
+sw $24,-20+64($sp)
+lw $24,metricp
+la $15,3
+sw $15,($24)
+lw $24,-20+64($sp)
+la $15,3
+beq $24,$15,L.3360
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3362
+la $4,L.3350
+la $5,2
+jal printf
+L.3362:
+la $22,2($22)
+L.3360:
+l.d $f18,L.419
+s.d $f18,-16+64($sp)
+s.d $f18,-8+64($sp)
+la $21,-16+64($sp)
+l.d $f18,L.418
+s.d $f18,($21)
+l.d $f18,L.418
+s.d $f18,8($21)
+l.d $f18,-16+64($sp)
+l.d $f16,-8+64($sp)
+add.d $f18,$f18,$f16
+l.d $f16,L.416
+c.eq.d $f18,$f16; bc1t L.3365
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3368
+la $4,L.3350
+la $5,4
+jal printf
+L.3368:
+la $22,4($22)
+L.3365:
+move $2,$22
+L.3349:
+lw $21,16($sp)
+lw $22,20($sp)
+lw $23,24($sp)
+lw $25,28($sp)
+lw $30,32($sp)
+lw $31,36($sp)
+addu $sp,$sp,64
+j $31
+.end s88
+.data
+.align 0
+L.3371:
+.byte 115
+.byte 57
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.sdata
+.align 0
+L.3372:
+.byte 115
+.byte 57
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s9
+.text
+.text
+.align 2
+.ent s9
+s9:
+.frame $sp,64,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-64
+.mask 0xc2ff0000,-8
+sw $16,16($sp)
+sw $17,20($sp)
+sw $18,24($sp)
+sw $19,28($sp)
+sw $20,32($sp)
+sw $21,36($sp)
+sw $22,40($sp)
+sw $23,44($sp)
+.cprestore 48
+sw $30,52($sp)
+sw $31,56($sp)
+sw $4,64($sp)
+la $22,L.3372
+lw $24,0+64($sp)
+la $21,60($24)
+move $20,$0
+L.3373:
+L.3374:
+move $24,$21
+la $21,1($24)
+move $15,$22
+la $22,1($15)
+lb $15,($15)
+sb $15,($24)
+sll $24,$15,8*(4-1); sra $24,$24,8*(4-1)
+bne $24,$0,L.3373
+move $23,$0
+move $30,$0
+L.3376:
+la $24,2
+move $19,$24
+move $18,$24
+la $24,3
+move $17,$24
+move $16,$24
+la $24,3
+bne $16,$24,L.3382
+beq $17,$24,L.3380
+L.3382:
+la $23,1
+L.3380:
+la $24,2
+bne $18,$24,L.3385
+beq $19,$24,L.3383
+L.3385:
+la $23,1
+L.3383:
+L.3377:
+la $30,1($30)
+la $24,2
+blt $30,$24,L.3376
+beq $23,$0,L.3390
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3388
+la $4,L.3371
+la $5,1
+jal printf
+L.3388:
+la $20,1($20)
+b L.3390
+lw $24,0+64($sp)
+lw $24,44($24)
+beq $24,$0,L.3391
+la $4,L.3371
+la $5,2
+jal printf
+L.3391:
+la $20,2($20)
+L.3390:
+move $2,$20
+L.3370:
+lw $16,16($sp)
+lw $17,20($sp)
+lw $18,24($sp)
+lw $19,28($sp)
+lw $20,32($sp)
+lw $21,36($sp)
+lw $22,40($sp)
+lw $23,44($sp)
+lw $25,48($sp)
+lw $30,52($sp)
+lw $31,56($sp)
+addu $sp,$sp,64
+j $31
+.end s9
+.globl setev
+.text
+.align 2
+.ent setev
+setev:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+la $24,1066
+sw $24,extvar
+move $2,$0
+L.3393:
+j $31
+.end setev
+.globl rfs
+.comm rfs,8
+.globl crc
+.comm crc,4
+.globl rrc
+.comm rrc,4
+.globl flgl
+.comm flgl,4
+.globl flgd
+.comm flgd,4
+.globl flgm
+.comm flgm,4
+.globl flgs
+.comm flgs,4
+.globl dprec
+.comm dprec,4
+.globl fprec
+.comm fprec,4
+.globl dbits
+.comm dbits,4
+.globl fbits
+.comm fbits,4
+.globl ubits
+.comm ubits,4
+.globl lbits
+.comm lbits,4
+.globl metricp
+.comm metricp,4
+.globl extvar
+.comm extvar,4
+.rdata
+.align 0
+L.3266:
+.byte 66
+.byte 101
+.byte 32
+.byte 101
+.byte 115
+.byte 112
+.byte 101
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 101
+.byte 102
+.byte 117
+.byte 108
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 49
+.byte 45
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 102
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.3259:
+.byte 83
+.byte 105
+.byte 103
+.byte 110
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 101
+.byte 110
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 102
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.3252:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 2
+L.3175:
+.word 0x43080000
+.align 0
+L.3022:
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.2472:
+.byte 73
+.byte 110
+.byte 99
+.byte 114
+.byte 101
+.byte 97
+.byte 115
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 97
+.byte 114
+.byte 114
+.byte 97
+.byte 121
+.byte 32
+.byte 101
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 114
+.byte 101
+.byte 97
+.byte 115
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 108
+.byte 111
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 10
+.byte 0
+.align 2
+L.2356:
+.word 0x41d00000
+.align 3
+L.2355:
+.word 0x403a0000
+.word 0x0
+.align 3
+L.1659:
+.word 0x40040000
+.word 0x0
+.align 3
+L.1484:
+.word 0x40240000
+.word 0x0
+.align 2
+L.1455:
+.word 0x41200000
+.align 3
+L.1280:
+.word 0x40080000
+.word 0x0
+.align 2
+L.1251:
+.word 0x40400000
+.align 3
+L.1076:
+.word 0x401c0000
+.word 0x0
+.align 2
+L.1047:
+.word 0x40e00000
+.align 3
+L.870:
+.word 0x40140000
+.word 0x0
+.align 2
+L.841:
+.word 0x40a00000
+.align 3
+L.836:
+.word 0x41e00000
+.word 0x0
+.align 2
+L.828:
+.word 0x4f000000
+.align 0
+L.653:
+.byte 113
+.byte 117
+.byte 101
+.byte 101
+.byte 112
+.byte 0
+.align 0
+L.639:
+.byte 10
+.byte 0
+.align 0
+L.638:
+.byte 37
+.byte 100
+.byte 0
+.align 0
+L.633:
+.byte 32
+.byte 32
+.byte 32
+.byte 107
+.byte 101
+.byte 121
+.byte 61
+.byte 0
+.align 3
+L.596:
+.word 0x40000000
+.word 0x0
+.align 3
+L.536:
+.word 0x40ce8480
+.word 0x0
+.align 3
+L.535:
+.word 0x405f4000
+.word 0x0
+.align 2
+L.534:
+.word 0x42fa0000
+.align 2
+L.529:
+.word 0x40000000
+.align 0
+L.431:
+.byte 100
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 0
+.align 0
+L.430:
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 0
+.align 0
+L.429:
+.byte 117
+.byte 110
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 0
+.align 0
+L.428:
+.byte 108
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.427:
+.byte 115
+.byte 104
+.byte 111
+.byte 114
+.byte 116
+.byte 0
+.align 0
+L.426:
+.byte 105
+.byte 110
+.byte 116
+.byte 0
+.align 0
+L.425:
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 0
+.align 3
+L.419:
+.word 0x0
+.word 0x0
+.align 3
+L.418:
+.word 0x3ff00000
+.word 0x0
+.align 3
+L.417:
+.word 0x40100000
+.word 0x0
+.align 3
+L.416:
+.word 0x40000000
+.word 0x0
+.align 2
+L.412:
+.word 0x0
+.align 2
+L.411:
+.word 0x3f800000
+.align 0
+L.390:
+.byte 113
+.byte 117
+.byte 101
+.byte 101
+.byte 112
+.byte 33
+.byte 0
+.align 0
+L.379:
+.byte 10
+.byte 9
+.byte 8
+.byte 13
+.byte 12
+.byte 92
+.byte 39
+.byte 0
+.align 0
+L.375:
+.byte 46
+.byte 34
+.byte 46
+.byte 0
+.align 0
+L.362:
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 3
+L.333:
+.word 0x40938800
+.word 0x0
+.align 0
+L.199:
+.byte 32
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 108
+.byte 111
+.byte 110
+.byte 103
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.198:
+.byte 68
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 99
+.byte 116
+.byte 97
+.byte 108
+.byte 47
+.byte 104
+.byte 101
+.byte 120
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 116
+.byte 97
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 109
+.byte 101
+.byte 115
+.byte 32
+.byte 103
+.byte 105
+.byte 118
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.27:
+.byte 10
+.byte 70
+.byte 97
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.26:
+.byte 10
+.byte 78
+.byte 111
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 100
+.byte 101
+.byte 116
+.byte 101
+.byte 99
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.20:
+.byte 83
+.byte 101
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 116
+.byte 117
+.byte 114
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
diff --git a/lcc/mips/irix/tst/cvt.1bk b/lcc/mips/irix/tst/cvt.1bk
index 74c79f1..b28b302 100755
--- a/lcc/mips/irix/tst/cvt.1bk
+++ b/lcc/mips/irix/tst/cvt.1bk
@@ -1,11 +1,11 @@
-1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
-2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
-3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
-4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
-5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
-6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
-7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
-8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
-9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
-10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
-11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
+1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
+2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
+3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
+4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
+5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
+6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
+7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
+8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
+9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
+10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
+11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
diff --git a/lcc/mips/irix/tst/cvt.2bk b/lcc/mips/irix/tst/cvt.2bk
index b3ab360..241527d 100755
--- a/lcc/mips/irix/tst/cvt.2bk
+++ b/lcc/mips/irix/tst/cvt.2bk
@@ -1,2 +1,2 @@
-tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
-tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
+tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
+tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
diff --git a/lcc/mips/irix/tst/cvt.sbk b/lcc/mips/irix/tst/cvt.sbk
index 426b826..216ab8f 100755
--- a/lcc/mips/irix/tst/cvt.sbk
+++ b/lcc/mips/irix/tst/cvt.sbk
@@ -1,557 +1,557 @@
-.set reorder
-.globl print
-.text
-.text
-.align 2
-.ent print
-print:
-.frame $sp,72,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-72
-.mask 0x82000000,-4
-.cprestore 64
-sw $31,68($sp)
-la $4,L.2
-lb $5,c
-lh $6,s
-lw $7,i
-lw $24,l
-sw $24,16($sp)
-lbu $24,C
-sw $24,20($sp)
-lhu $24,S
-sw $24,24($sp)
-lw $24,I
-sw $24,28($sp)
-lw $24,L
-sw $24,32($sp)
-l.s $f18,f
-cvt.d.s $f18,$f18
-s.d $f18,40($sp)
-l.d $f18,d
-s.d $f18,48($sp)
-l.d $f18,D
-s.d $f18,56($sp)
-jal printf
-L.1:
-lw $25,64($sp)
-lw $31,68($sp)
-addu $sp,$sp,72
-j $31
-.end print
-.globl main
-.text
-.align 2
-.ent main
-main:
-.frame $sp,72,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-72
-.mask 0xc2ff0000,-16
-sw $16,16($sp)
-sw $17,20($sp)
-sw $18,24($sp)
-sw $19,28($sp)
-sw $20,32($sp)
-sw $21,36($sp)
-sw $22,40($sp)
-sw $23,44($sp)
-.cprestore 48
-sw $30,52($sp)
-sw $31,56($sp)
-la $24,1
-sb $24,c
-lb $24,c
-move $15,$24
-sh $15,s
-sw $24,i
-sw $24,l
-move $15,$24
-move $14,$15
-sb $14,C
-move $14,$15
-sh $14,S
-sw $15,I
-sw $15,L
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-s.s $f18,f
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-s.d $f18,d
-s.d $f18,D
-jal print
-la $24,2
-sh $24,s
-lh $24,s
-move $15,$24
-sb $15,c
-sw $24,i
-sw $24,l
-move $15,$24
-move $14,$15
-sb $14,C
-move $14,$15
-sh $14,S
-sw $15,I
-sw $15,L
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-s.s $f18,f
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-s.d $f18,d
-s.d $f18,D
-jal print
-la $24,3
-sw $24,i
-lw $24,i
-move $15,$24
-sb $15,c
-move $15,$24
-sh $15,s
-sw $24,l
-move $15,$24
-move $14,$15
-sb $14,C
-move $14,$15
-sh $14,S
-sw $15,I
-sw $15,L
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-s.s $f18,f
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-s.d $f18,d
-s.d $f18,D
-jal print
-la $24,4
-sw $24,l
-lw $24,l
-move $15,$24
-sb $15,c
-move $15,$24
-sh $15,s
-sw $24,i
-move $15,$24
-move $14,$15
-sb $14,C
-move $14,$15
-sh $14,S
-sw $15,I
-sw $15,L
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-s.s $f18,f
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-s.d $f18,d
-s.d $f18,D
-jal print
-la $24,5
-sb $24,C
-lbu $24,C
-move $15,$24
-sb $15,c
-move $15,$24
-sh $15,s
-sw $24,i
-sw $24,l
-move $15,$24
-move $14,$15
-sh $14,S
-sw $15,I
-sw $15,L
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-s.s $f18,f
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-s.d $f18,d
-s.d $f18,D
-jal print
-la $24,6
-sh $24,S
-lhu $24,S
-move $15,$24
-sb $15,c
-move $15,$24
-sh $15,s
-sw $24,i
-sw $24,l
-move $15,$24
-move $14,$15
-sb $14,C
-sw $15,I
-sw $15,L
-mtc1 $24,$f18; cvt.s.w $f18,$f18
-s.s $f18,f
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-s.d $f18,d
-s.d $f18,D
-jal print
-la $24,7
-sw $24,I
-lw $24,I
-move $14,$24
-sb $14,c
-move $14,$24
-sh $14,s
-sw $24,i
-sw $24,l
-move $15,$24
-sb $15,C
-move $15,$24
-sh $15,S
-sw $24,L
-l.d $f18,L.4
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f16,$f18
-s.s $f16,f
-s.d $f18,d
-s.d $f18,D
-jal print
-la $24,8
-sw $24,L
-lw $24,L
-move $14,$24
-sb $14,c
-move $14,$24
-sh $14,s
-sw $24,i
-sw $24,l
-move $15,$24
-sb $15,C
-move $15,$24
-sh $15,S
-lhu $15,S
-sw $15,I
-l.d $f18,L.4
-srl $15,$24,1
-mtc1 $15,$f16; cvt.d.w $f16,$f16
-mul.d $f18,$f18,$f16
-and $24,$24,1
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-add.d $f18,$f18,$f16
-cvt.s.d $f16,$f18
-s.s $f16,f
-s.d $f18,d
-s.d $f18,D
-jal print
-l.s $f18,L.5
-s.s $f18,f
-l.s $f18,f
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $15,$24
-sb $15,c
-move $15,$24
-sh $15,s
-sw $24,i
-sw $24,l
-l.s $f16,L.9
-c.lt.s $f18,$f16; bc1t L.7
-sub.s $f16,$f18,$f16
-trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
-la $30,0x80000000($24)
-b L.8
-L.7:
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $30,$24
-L.8:
-move $24,$30
-sb $24,C
-l.s $f18,f
-l.s $f16,L.9
-c.lt.s $f18,$f16; bc1t L.11
-sub.s $f16,$f18,$f16
-trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
-la $23,0x80000000($24)
-b L.12
-L.11:
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $23,$24
-L.12:
-move $24,$23
-sh $24,S
-l.s $f18,f
-l.s $f16,L.9
-c.lt.s $f18,$f16; bc1t L.14
-sub.s $f16,$f18,$f16
-trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
-la $22,0x80000000($24)
-b L.15
-L.14:
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $22,$24
-L.15:
-sw $22,I
-l.s $f18,f
-l.s $f16,L.9
-c.lt.s $f18,$f16; bc1t L.17
-sub.s $f16,$f18,$f16
-trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
-la $21,0x80000000($24)
-b L.18
-L.17:
-trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
-move $21,$24
-L.18:
-sw $21,L
-l.s $f18,f
-cvt.d.s $f18,$f18
-s.d $f18,d
-s.d $f18,D
-jal print
-l.d $f18,L.19
-s.d $f18,d
-l.d $f18,d
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $15,$24
-sb $15,c
-move $15,$24
-sh $15,s
-sw $24,i
-sw $24,l
-l.d $f16,L.23
-c.lt.d $f18,$f16; bc1t L.21
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $20,0x80000000($24)
-b L.22
-L.21:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $20,$24
-L.22:
-move $24,$20
-sb $24,C
-l.d $f18,d
-l.d $f16,L.23
-c.lt.d $f18,$f16; bc1t L.25
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $19,0x80000000($24)
-b L.26
-L.25:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $19,$24
-L.26:
-move $24,$19
-sh $24,S
-l.d $f18,d
-l.d $f16,L.23
-c.lt.d $f18,$f16; bc1t L.28
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $18,0x80000000($24)
-b L.29
-L.28:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $18,$24
-L.29:
-sw $18,I
-l.d $f18,d
-l.d $f16,L.23
-c.lt.d $f18,$f16; bc1t L.31
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $17,0x80000000($24)
-b L.32
-L.31:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $17,$24
-L.32:
-sw $17,L
-l.d $f18,d
-cvt.s.d $f16,$f18
-s.s $f16,f
-s.d $f18,D
-jal print
-l.d $f18,L.33
-s.d $f18,D
-l.d $f18,D
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $15,$24
-sb $15,c
-move $15,$24
-sh $15,s
-sw $24,i
-sw $24,l
-l.d $f16,L.37
-c.lt.d $f18,$f16; bc1t L.35
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $16,0x80000000($24)
-b L.36
-L.35:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $16,$24
-L.36:
-move $24,$16
-sb $24,C
-l.d $f18,D
-l.d $f16,L.37
-c.lt.d $f18,$f16; bc1t L.39
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-4+72($sp)
-b L.40
-L.39:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-4+72($sp)
-L.40:
-lw $24,-4+72($sp)
-sh $24,S
-l.d $f18,D
-l.d $f16,L.37
-c.lt.d $f18,$f16; bc1t L.42
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-8+72($sp)
-b L.43
-L.42:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-8+72($sp)
-L.43:
-lw $24,-8+72($sp)
-sw $24,I
-l.d $f18,D
-l.d $f16,L.37
-c.lt.d $f18,$f16; bc1t L.45
-sub.d $f16,$f18,$f16
-trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
-la $24,0x80000000($24)
-sw $24,-12+72($sp)
-b L.46
-L.45:
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-sw $24,-12+72($sp)
-L.46:
-lw $24,-12+72($sp)
-sw $24,L
-l.d $f18,D
-cvt.s.d $f16,$f18
-s.s $f16,f
-s.d $f18,d
-jal print
-sw $0,p
-sw $0,p
-sw $0,p
-sw $0,p
-lw $24,P
-sw $24,p
-sw $0,P
-sw $0,P
-sw $0,P
-sw $0,P
-lw $24,p
-sw $24,P
-move $2,$0
-L.3:
-lw $16,16($sp)
-lw $17,20($sp)
-lw $18,24($sp)
-lw $19,28($sp)
-lw $20,32($sp)
-lw $21,36($sp)
-lw $22,40($sp)
-lw $23,44($sp)
-lw $25,48($sp)
-lw $30,52($sp)
-lw $31,56($sp)
-addu $sp,$sp,72
-j $31
-.end main
-.globl P
-.comm P,4
-.globl p
-.comm p,4
-.globl D
-.comm D,8
-.globl d
-.comm d,8
-.globl f
-.comm f,4
-.globl L
-.comm L,4
-.globl I
-.comm I,4
-.globl S
-.comm S,2
-.globl C
-.comm C,1
-.globl l
-.comm l,4
-.globl i
-.comm i,4
-.globl s
-.comm s,2
-.globl c
-.comm c,1
-.rdata
-.align 3
-L.37:
-.word 0x41e00000
-.word 0x0
-.align 3
-L.33:
-.word 0x40260000
-.word 0x0
-.align 3
-L.23:
-.word 0x41e00000
-.word 0x0
-.align 3
-L.19:
-.word 0x40240000
-.word 0x0
-.align 2
-L.9:
-.word 0x4f000000
-.align 2
-L.5:
-.word 0x41100000
-.align 3
-L.4:
-.word 0x40000000
-.word 0x0
-.align 0
-L.2:
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 108
-.byte 100
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 108
-.byte 117
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 37
-.byte 108
-.byte 102
-.byte 10
-.byte 0
+.set reorder
+.globl print
+.text
+.text
+.align 2
+.ent print
+print:
+.frame $sp,72,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-72
+.mask 0x82000000,-4
+.cprestore 64
+sw $31,68($sp)
+la $4,L.2
+lb $5,c
+lh $6,s
+lw $7,i
+lw $24,l
+sw $24,16($sp)
+lbu $24,C
+sw $24,20($sp)
+lhu $24,S
+sw $24,24($sp)
+lw $24,I
+sw $24,28($sp)
+lw $24,L
+sw $24,32($sp)
+l.s $f18,f
+cvt.d.s $f18,$f18
+s.d $f18,40($sp)
+l.d $f18,d
+s.d $f18,48($sp)
+l.d $f18,D
+s.d $f18,56($sp)
+jal printf
+L.1:
+lw $25,64($sp)
+lw $31,68($sp)
+addu $sp,$sp,72
+j $31
+.end print
+.globl main
+.text
+.align 2
+.ent main
+main:
+.frame $sp,72,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-72
+.mask 0xc2ff0000,-16
+sw $16,16($sp)
+sw $17,20($sp)
+sw $18,24($sp)
+sw $19,28($sp)
+sw $20,32($sp)
+sw $21,36($sp)
+sw $22,40($sp)
+sw $23,44($sp)
+.cprestore 48
+sw $30,52($sp)
+sw $31,56($sp)
+la $24,1
+sb $24,c
+lb $24,c
+move $15,$24
+sh $15,s
+sw $24,i
+sw $24,l
+move $15,$24
+move $14,$15
+sb $14,C
+move $14,$15
+sh $14,S
+sw $15,I
+sw $15,L
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+s.s $f18,f
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+s.d $f18,d
+s.d $f18,D
+jal print
+la $24,2
+sh $24,s
+lh $24,s
+move $15,$24
+sb $15,c
+sw $24,i
+sw $24,l
+move $15,$24
+move $14,$15
+sb $14,C
+move $14,$15
+sh $14,S
+sw $15,I
+sw $15,L
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+s.s $f18,f
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+s.d $f18,d
+s.d $f18,D
+jal print
+la $24,3
+sw $24,i
+lw $24,i
+move $15,$24
+sb $15,c
+move $15,$24
+sh $15,s
+sw $24,l
+move $15,$24
+move $14,$15
+sb $14,C
+move $14,$15
+sh $14,S
+sw $15,I
+sw $15,L
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+s.s $f18,f
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+s.d $f18,d
+s.d $f18,D
+jal print
+la $24,4
+sw $24,l
+lw $24,l
+move $15,$24
+sb $15,c
+move $15,$24
+sh $15,s
+sw $24,i
+move $15,$24
+move $14,$15
+sb $14,C
+move $14,$15
+sh $14,S
+sw $15,I
+sw $15,L
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+s.s $f18,f
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+s.d $f18,d
+s.d $f18,D
+jal print
+la $24,5
+sb $24,C
+lbu $24,C
+move $15,$24
+sb $15,c
+move $15,$24
+sh $15,s
+sw $24,i
+sw $24,l
+move $15,$24
+move $14,$15
+sh $14,S
+sw $15,I
+sw $15,L
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+s.s $f18,f
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+s.d $f18,d
+s.d $f18,D
+jal print
+la $24,6
+sh $24,S
+lhu $24,S
+move $15,$24
+sb $15,c
+move $15,$24
+sh $15,s
+sw $24,i
+sw $24,l
+move $15,$24
+move $14,$15
+sb $14,C
+sw $15,I
+sw $15,L
+mtc1 $24,$f18; cvt.s.w $f18,$f18
+s.s $f18,f
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+s.d $f18,d
+s.d $f18,D
+jal print
+la $24,7
+sw $24,I
+lw $24,I
+move $14,$24
+sb $14,c
+move $14,$24
+sh $14,s
+sw $24,i
+sw $24,l
+move $15,$24
+sb $15,C
+move $15,$24
+sh $15,S
+sw $24,L
+l.d $f18,L.4
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f16,$f18
+s.s $f16,f
+s.d $f18,d
+s.d $f18,D
+jal print
+la $24,8
+sw $24,L
+lw $24,L
+move $14,$24
+sb $14,c
+move $14,$24
+sh $14,s
+sw $24,i
+sw $24,l
+move $15,$24
+sb $15,C
+move $15,$24
+sh $15,S
+lhu $15,S
+sw $15,I
+l.d $f18,L.4
+srl $15,$24,1
+mtc1 $15,$f16; cvt.d.w $f16,$f16
+mul.d $f18,$f18,$f16
+and $24,$24,1
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+add.d $f18,$f18,$f16
+cvt.s.d $f16,$f18
+s.s $f16,f
+s.d $f18,d
+s.d $f18,D
+jal print
+l.s $f18,L.5
+s.s $f18,f
+l.s $f18,f
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $15,$24
+sb $15,c
+move $15,$24
+sh $15,s
+sw $24,i
+sw $24,l
+l.s $f16,L.9
+c.lt.s $f18,$f16; bc1t L.7
+sub.s $f16,$f18,$f16
+trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
+la $30,0x80000000($24)
+b L.8
+L.7:
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $30,$24
+L.8:
+move $24,$30
+sb $24,C
+l.s $f18,f
+l.s $f16,L.9
+c.lt.s $f18,$f16; bc1t L.11
+sub.s $f16,$f18,$f16
+trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
+la $23,0x80000000($24)
+b L.12
+L.11:
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $23,$24
+L.12:
+move $24,$23
+sh $24,S
+l.s $f18,f
+l.s $f16,L.9
+c.lt.s $f18,$f16; bc1t L.14
+sub.s $f16,$f18,$f16
+trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
+la $22,0x80000000($24)
+b L.15
+L.14:
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $22,$24
+L.15:
+sw $22,I
+l.s $f18,f
+l.s $f16,L.9
+c.lt.s $f18,$f16; bc1t L.17
+sub.s $f16,$f18,$f16
+trunc.w.s $f2,$f16,$24; mfc1 $24,$f2
+la $21,0x80000000($24)
+b L.18
+L.17:
+trunc.w.s $f2,$f18,$24; mfc1 $24,$f2
+move $21,$24
+L.18:
+sw $21,L
+l.s $f18,f
+cvt.d.s $f18,$f18
+s.d $f18,d
+s.d $f18,D
+jal print
+l.d $f18,L.19
+s.d $f18,d
+l.d $f18,d
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $15,$24
+sb $15,c
+move $15,$24
+sh $15,s
+sw $24,i
+sw $24,l
+l.d $f16,L.23
+c.lt.d $f18,$f16; bc1t L.21
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $20,0x80000000($24)
+b L.22
+L.21:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $20,$24
+L.22:
+move $24,$20
+sb $24,C
+l.d $f18,d
+l.d $f16,L.23
+c.lt.d $f18,$f16; bc1t L.25
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $19,0x80000000($24)
+b L.26
+L.25:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $19,$24
+L.26:
+move $24,$19
+sh $24,S
+l.d $f18,d
+l.d $f16,L.23
+c.lt.d $f18,$f16; bc1t L.28
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $18,0x80000000($24)
+b L.29
+L.28:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $18,$24
+L.29:
+sw $18,I
+l.d $f18,d
+l.d $f16,L.23
+c.lt.d $f18,$f16; bc1t L.31
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $17,0x80000000($24)
+b L.32
+L.31:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $17,$24
+L.32:
+sw $17,L
+l.d $f18,d
+cvt.s.d $f16,$f18
+s.s $f16,f
+s.d $f18,D
+jal print
+l.d $f18,L.33
+s.d $f18,D
+l.d $f18,D
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $15,$24
+sb $15,c
+move $15,$24
+sh $15,s
+sw $24,i
+sw $24,l
+l.d $f16,L.37
+c.lt.d $f18,$f16; bc1t L.35
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $16,0x80000000($24)
+b L.36
+L.35:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $16,$24
+L.36:
+move $24,$16
+sb $24,C
+l.d $f18,D
+l.d $f16,L.37
+c.lt.d $f18,$f16; bc1t L.39
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-4+72($sp)
+b L.40
+L.39:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-4+72($sp)
+L.40:
+lw $24,-4+72($sp)
+sh $24,S
+l.d $f18,D
+l.d $f16,L.37
+c.lt.d $f18,$f16; bc1t L.42
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-8+72($sp)
+b L.43
+L.42:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-8+72($sp)
+L.43:
+lw $24,-8+72($sp)
+sw $24,I
+l.d $f18,D
+l.d $f16,L.37
+c.lt.d $f18,$f16; bc1t L.45
+sub.d $f16,$f18,$f16
+trunc.w.d $f2,$f16,$24; mfc1 $24,$f2
+la $24,0x80000000($24)
+sw $24,-12+72($sp)
+b L.46
+L.45:
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+sw $24,-12+72($sp)
+L.46:
+lw $24,-12+72($sp)
+sw $24,L
+l.d $f18,D
+cvt.s.d $f16,$f18
+s.s $f16,f
+s.d $f18,d
+jal print
+sw $0,p
+sw $0,p
+sw $0,p
+sw $0,p
+lw $24,P
+sw $24,p
+sw $0,P
+sw $0,P
+sw $0,P
+sw $0,P
+lw $24,p
+sw $24,P
+move $2,$0
+L.3:
+lw $16,16($sp)
+lw $17,20($sp)
+lw $18,24($sp)
+lw $19,28($sp)
+lw $20,32($sp)
+lw $21,36($sp)
+lw $22,40($sp)
+lw $23,44($sp)
+lw $25,48($sp)
+lw $30,52($sp)
+lw $31,56($sp)
+addu $sp,$sp,72
+j $31
+.end main
+.globl P
+.comm P,4
+.globl p
+.comm p,4
+.globl D
+.comm D,8
+.globl d
+.comm d,8
+.globl f
+.comm f,4
+.globl L
+.comm L,4
+.globl I
+.comm I,4
+.globl S
+.comm S,2
+.globl C
+.comm C,1
+.globl l
+.comm l,4
+.globl i
+.comm i,4
+.globl s
+.comm s,2
+.globl c
+.comm c,1
+.rdata
+.align 3
+L.37:
+.word 0x41e00000
+.word 0x0
+.align 3
+L.33:
+.word 0x40260000
+.word 0x0
+.align 3
+L.23:
+.word 0x41e00000
+.word 0x0
+.align 3
+L.19:
+.word 0x40240000
+.word 0x0
+.align 2
+L.9:
+.word 0x4f000000
+.align 2
+L.5:
+.word 0x41100000
+.align 3
+L.4:
+.word 0x40000000
+.word 0x0
+.align 0
+L.2:
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 108
+.byte 100
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 108
+.byte 117
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 37
+.byte 108
+.byte 102
+.byte 10
+.byte 0
diff --git a/lcc/mips/irix/tst/fields.1bk b/lcc/mips/irix/tst/fields.1bk
index f30b13f..56fdeb9 100755
--- a/lcc/mips/irix/tst/fields.1bk
+++ b/lcc/mips/irix/tst/fields.1bk
@@ -1,5 +1,5 @@
-x = 1 2 3 4 -3 6
-y = 3 8 9
-x = 1 2 3 0 0 6
-y = 2 8 16
-p->a = 0x3, p->b = 0xf
+x = 1 2 3 4 -3 6
+y = 3 8 9
+x = 1 2 3 0 0 6
+y = 2 8 16
+p->a = 0x3, p->b = 0xf
diff --git a/lcc/mips/irix/tst/fields.2bk b/lcc/mips/irix/tst/fields.2bk
index e689d78..51e1736 100755
--- a/lcc/mips/irix/tst/fields.2bk
+++ b/lcc/mips/irix/tst/fields.2bk
@@ -1,4 +1,4 @@
-tst/fields.c:6: warning: initializer exceeds bit-field width
-tst/fields.c:8: warning: initializer exceeds bit-field width
-tst/fields.c:30: warning: missing return value
-tst/fields.c:34: warning: missing return value
+tst/fields.c:6: warning: initializer exceeds bit-field width
+tst/fields.c:8: warning: initializer exceeds bit-field width
+tst/fields.c:30: warning: missing return value
+tst/fields.c:34: warning: missing return value
diff --git a/lcc/mips/irix/tst/fields.sbk b/lcc/mips/irix/tst/fields.sbk
index cd60540..482486c 100755
--- a/lcc/mips/irix/tst/fields.sbk
+++ b/lcc/mips/irix/tst/fields.sbk
@@ -1,304 +1,304 @@
-.set reorder
-.globl x
-.data
-.align 2
-x:
-.word 0x1
-.byte 0x2
-.space 3
-.byte 0x0
-.byte 0x34
-.space 2
-.byte 0xa
-.byte 0x6
-.space 2
-.globl i
-.sdata
-.align 2
-i:
-.word 0x10
-.globl y
-.sdata
-.align 2
-y:
-.byte 0xe0
-.space 3
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x9
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,40,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-40
-.mask 0x82000000,-8
-.cprestore 28
-sw $31,32($sp)
-la $4,L.4
-lw $5,x
-lb $6,x+4
-lw $24,x+8
-sra $7,$24,20
-lw $24,x+8
-sll $24,$24,12
-sra $24,$24,28
-sw $24,16($sp)
-lw $24,x+12
-sll $24,$24,4
-sra $24,$24,29
-sw $24,20($sp)
-lb $24,x+13
-sw $24,24($sp)
-jal printf
-la $4,L.10
-lw $24,y
-srl $15,$24,30
-and $5,$15,3
-srl $24,$24,26
-and $6,$24,15
-lw $7,y+4
-jal printf
-lw $24,x+8
-and $24,$24,0xfff0ffff
-lw $15,i
-sll $15,$15,28
-sra $15,$15,28
-sll $15,$15,16
-and $15,$15,0xf0000
-or $24,$24,$15
-sw $24,x+8
-lw $24,x+12
-and $24,$24,0xf1ffffff
-sw $24,x+12
-la $4,L.4
-lw $5,x
-lb $6,x+4
-lw $24,x+8
-sra $7,$24,20
-lw $24,x+8
-sll $24,$24,12
-sra $24,$24,28
-sw $24,16($sp)
-lw $24,x+12
-sll $24,$24,4
-sra $24,$24,29
-sw $24,20($sp)
-lb $24,x+13
-sw $24,24($sp)
-jal printf
-lw $24,y
-and $24,$24,0x3fffffff
-or $24,$24,0x80000000
-sw $24,y
-lw $24,i
-sw $24,y+4
-la $4,L.10
-lw $24,y
-srl $15,$24,30
-and $5,$15,3
-srl $24,$24,26
-and $6,$24,15
-lw $7,y+4
-jal printf
-la $4,x
-jal f2
-move $2,$0
-L.3:
-lw $25,28($sp)
-lw $31,32($sp)
-addu $sp,$sp,40
-j $31
-.end main
-.globl f1
-.text
-.align 2
-.ent f1
-f1:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-move $30,$4
-lw $24,($30)
-and $24,$24,0xc3ffffff
-sw $24,($30)
-lw $24,($30)
-and $24,$24,0x3fffffff
-and $15,$0,3
-sll $15,$15,30
-and $15,$15,0xc0000000
-or $24,$24,$15
-sw $24,($30)
-lw $24,($30)
-and $24,$24,0x3c000000
-beq $24,$0,L.22
-la $4,L.24
-jal printf
-L.22:
-lw $24,($30)
-or $24,$24,0xc0000000
-sw $24,($30)
-lw $24,($30)
-or $24,$24,0x3c000000
-sw $24,($30)
-la $4,L.25
-lw $24,($30)
-srl $15,$24,30
-and $5,$15,3
-srl $24,$24,26
-and $6,$24,15
-jal printf
-move $2,$0
-L.21:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end f1
-.globl f2
-.text
-.align 2
-.ent f2
-f2:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2800000,-4
-sw $23,16($sp)
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-move $30,$4
-lw $24,i
-bne $24,$0,L.28
-la $23,1
-b L.29
-L.28:
-move $23,$0
-L.29:
-lw $24,($30)
-and $24,$24,0x3fffffff
-move $15,$23
-and $15,$15,3
-sll $15,$15,30
-and $15,$15,0xc0000000
-or $24,$24,$15
-sw $24,($30)
-move $4,$30
-jal f1
-lw $24,($30)
-and $24,$24,0xc3ffffff
-move $15,$0
-and $15,$15,15
-sll $15,$15,26
-and $15,$15,0x3c000000
-or $24,$24,$15
-sw $24,($30)
-move $2,$0
-L.26:
-lw $23,16($sp)
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end f2
-.rdata
-.align 0
-L.25:
-.byte 112
-.byte 45
-.byte 62
-.byte 97
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 44
-.byte 32
-.byte 112
-.byte 45
-.byte 62
-.byte 98
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 0
-L.24:
-.byte 112
-.byte 45
-.byte 62
-.byte 98
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.10:
-.byte 121
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.4:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
+.set reorder
+.globl x
+.data
+.align 2
+x:
+.word 0x1
+.byte 0x2
+.space 3
+.byte 0x0
+.byte 0x34
+.space 2
+.byte 0xa
+.byte 0x6
+.space 2
+.globl i
+.sdata
+.align 2
+i:
+.word 0x10
+.globl y
+.sdata
+.align 2
+y:
+.byte 0xe0
+.space 3
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x9
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,40,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-40
+.mask 0x82000000,-8
+.cprestore 28
+sw $31,32($sp)
+la $4,L.4
+lw $5,x
+lb $6,x+4
+lw $24,x+8
+sra $7,$24,20
+lw $24,x+8
+sll $24,$24,12
+sra $24,$24,28
+sw $24,16($sp)
+lw $24,x+12
+sll $24,$24,4
+sra $24,$24,29
+sw $24,20($sp)
+lb $24,x+13
+sw $24,24($sp)
+jal printf
+la $4,L.10
+lw $24,y
+srl $15,$24,30
+and $5,$15,3
+srl $24,$24,26
+and $6,$24,15
+lw $7,y+4
+jal printf
+lw $24,x+8
+and $24,$24,0xfff0ffff
+lw $15,i
+sll $15,$15,28
+sra $15,$15,28
+sll $15,$15,16
+and $15,$15,0xf0000
+or $24,$24,$15
+sw $24,x+8
+lw $24,x+12
+and $24,$24,0xf1ffffff
+sw $24,x+12
+la $4,L.4
+lw $5,x
+lb $6,x+4
+lw $24,x+8
+sra $7,$24,20
+lw $24,x+8
+sll $24,$24,12
+sra $24,$24,28
+sw $24,16($sp)
+lw $24,x+12
+sll $24,$24,4
+sra $24,$24,29
+sw $24,20($sp)
+lb $24,x+13
+sw $24,24($sp)
+jal printf
+lw $24,y
+and $24,$24,0x3fffffff
+or $24,$24,0x80000000
+sw $24,y
+lw $24,i
+sw $24,y+4
+la $4,L.10
+lw $24,y
+srl $15,$24,30
+and $5,$15,3
+srl $24,$24,26
+and $6,$24,15
+lw $7,y+4
+jal printf
+la $4,x
+jal f2
+move $2,$0
+L.3:
+lw $25,28($sp)
+lw $31,32($sp)
+addu $sp,$sp,40
+j $31
+.end main
+.globl f1
+.text
+.align 2
+.ent f1
+f1:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+move $30,$4
+lw $24,($30)
+and $24,$24,0xc3ffffff
+sw $24,($30)
+lw $24,($30)
+and $24,$24,0x3fffffff
+and $15,$0,3
+sll $15,$15,30
+and $15,$15,0xc0000000
+or $24,$24,$15
+sw $24,($30)
+lw $24,($30)
+and $24,$24,0x3c000000
+beq $24,$0,L.22
+la $4,L.24
+jal printf
+L.22:
+lw $24,($30)
+or $24,$24,0xc0000000
+sw $24,($30)
+lw $24,($30)
+or $24,$24,0x3c000000
+sw $24,($30)
+la $4,L.25
+lw $24,($30)
+srl $15,$24,30
+and $5,$15,3
+srl $24,$24,26
+and $6,$24,15
+jal printf
+move $2,$0
+L.21:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end f1
+.globl f2
+.text
+.align 2
+.ent f2
+f2:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2800000,-4
+sw $23,16($sp)
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+move $30,$4
+lw $24,i
+bne $24,$0,L.28
+la $23,1
+b L.29
+L.28:
+move $23,$0
+L.29:
+lw $24,($30)
+and $24,$24,0x3fffffff
+move $15,$23
+and $15,$15,3
+sll $15,$15,30
+and $15,$15,0xc0000000
+or $24,$24,$15
+sw $24,($30)
+move $4,$30
+jal f1
+lw $24,($30)
+and $24,$24,0xc3ffffff
+move $15,$0
+and $15,$15,15
+sll $15,$15,26
+and $15,$15,0x3c000000
+or $24,$24,$15
+sw $24,($30)
+move $2,$0
+L.26:
+lw $23,16($sp)
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end f2
+.rdata
+.align 0
+L.25:
+.byte 112
+.byte 45
+.byte 62
+.byte 97
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 44
+.byte 32
+.byte 112
+.byte 45
+.byte 62
+.byte 98
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 0
+L.24:
+.byte 112
+.byte 45
+.byte 62
+.byte 98
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.10:
+.byte 121
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.4:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
diff --git a/lcc/mips/irix/tst/front.2bk b/lcc/mips/irix/tst/front.2bk
index 841e6a5..bbd390a 100755
--- a/lcc/mips/irix/tst/front.2bk
+++ b/lcc/mips/irix/tst/front.2bk
@@ -1,29 +1,29 @@
-tst/front.c:3: warning: missing return value
-tst/front.c:10: warning: missing return value
-tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
-tst/front.c:21: warning: missing return value
-tst/front.c:32: warning: missing return value
-tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
-tst/front.c:38: warning: missing return value
-tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
-tst/front.c:63: warning: missing return value
-tst/front.c:68: warning: missing return value
-tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
-tst/front.c:69: warning: missing return value
-tst/front.c:71: invalid storage class `static' for `int function goo'
-tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
-tst/front.c:71: warning: missing return value
-tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
-tst/front.c:74: warning: missing return value
-tst/front.c:81: warning: missing return value
-tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
-tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
-tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
-tst/front.c:92: warning: missing return value
-tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
-tst/front.c:98: warning: missing return value
-tst/front.c:101: conflicting argument declarations for function `gg1'
-tst/front.c:101: warning: missing return value
-tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
-tst/front.c:113: warning: missing return value
-tst/front.c:120: warning: missing return value
+tst/front.c:3: warning: missing return value
+tst/front.c:10: warning: missing return value
+tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
+tst/front.c:21: warning: missing return value
+tst/front.c:32: warning: missing return value
+tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
+tst/front.c:38: warning: missing return value
+tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
+tst/front.c:63: warning: missing return value
+tst/front.c:68: warning: missing return value
+tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
+tst/front.c:69: warning: missing return value
+tst/front.c:71: invalid storage class `static' for `int function goo'
+tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
+tst/front.c:71: warning: missing return value
+tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
+tst/front.c:74: warning: missing return value
+tst/front.c:81: warning: missing return value
+tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
+tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
+tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
+tst/front.c:92: warning: missing return value
+tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
+tst/front.c:98: warning: missing return value
+tst/front.c:101: conflicting argument declarations for function `gg1'
+tst/front.c:101: warning: missing return value
+tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
+tst/front.c:113: warning: missing return value
+tst/front.c:120: warning: missing return value
diff --git a/lcc/mips/irix/tst/front.sbk b/lcc/mips/irix/tst/front.sbk
index 2b8add0..3cbb41a 100755
--- a/lcc/mips/irix/tst/front.sbk
+++ b/lcc/mips/irix/tst/front.sbk
@@ -1,416 +1,416 @@
-.set reorder
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-move $4,$0
-jal exit
-move $2,$0
-L.1:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end main
-.globl nested
-.text
-.align 2
-.ent nested
-nested:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-la $24,4
-bge $4,$24,L.6
-la $24,114
-beq $5,$24,L.9
-L.6:
-la $24,1
-bne $4,$24,L.8
-la $24,104
-beq $5,$24,L.9
-la $24,105
-beq $5,$24,L.9
-L.8:
-la $24,2
-bne $4,$24,L.3
-la $24,111
-beq $5,$24,L.9
-la $24,121
-bne $5,$24,L.3
-L.9:
-move $4,$5
-L.3:
-move $2,$0
-L.2:
-j $31
-.end nested
-.globl s
-.text
-.align 2
-.ent s
-s:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-L.10:
-j $31
-.end s
-.globl Dy
-.sdata
-.align 2
-Dy:
-.word 0x0
-.space 4
-.globl Dz
-.sdata
-.align 2
-Dz:
-.word 0x1
-.space 4
-.globl Dfunc
-.text
-.text
-.align 2
-.ent Dfunc
-Dfunc:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end Dfunc
-.globl f
-.text
-.align 2
-.ent f
-f:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end f
-.globl f1
-.text
-.align 2
-.ent f1
-f1:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end f1
-.globl f2
-.text
-.align 2
-.ent f2
-f2:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-sw $5,28($sp)
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end f2
-.globl g
-.text
-.align 2
-.ent g
-g:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end g
-.globl h
-.text
-.align 2
-.ent h
-h:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end h
-.globl h1
-.text
-.align 2
-.ent h1
-h1:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-sw $5,28($sp)
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end h1
-.globl h2
-.text
-.align 2
-.ent h2
-h2:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end h2
-.sdata
-.align 2
-L.21:
-.word 0x1
-.globl set1
-.text
-.text
-.align 2
-.ent set1
-set1:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end set1
-.sdata
-.align 2
-L.23:
-.word 0x2
-.globl set2
-.text
-.text
-.align 2
-.ent set2
-set2:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end set2
-.text
-.align 2
-.ent goo
-goo:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end goo
-.globl sss
-.text
-.align 2
-.ent sss
-sss:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end sss
-.lcomm L.27,4
-.globl rrr
-.text
-.text
-.align 2
-.ent rrr
-rrr:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end rrr
-.globl setstatic
-.text
-.align 2
-.ent setstatic
-setstatic:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end setstatic
-.globl gx1
-.text
-.align 2
-.ent gx1
-gx1:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-s.d $f12,24($sp)
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end gx1
-.globl ff1
-.text
-.align 2
-.ent ff1
-ff1:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end ff1
-.globl gg1
-.text
-.align 2
-.ent gg1
-gg1:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end gg1
-.globl hh1
-.text
-.align 2
-.ent hh1
-hh1:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-j $31
-.end hh1
-.globl cmp
-.text
-.align 2
-.ent cmp
-cmp:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-sw $5,28($sp)
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end cmp
-.globl sort
-.text
-.align 2
-.ent sort
-sort:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end sort
-.globl onearg
-.text
-.align 2
-.ent onearg
-onearg:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end onearg
-.extern xr 4
-.globl ss4
-.comm ss4,4
-.lcomm ss2,4
-.lcomm ss5,4
-.globl ss3
-.comm ss3,4
-.lcomm ss1,4
-.lcomm yy,4
-.globl z
-.comm z,4
-.globl y
-.comm y,4
-.globl x
-.comm x,4
-.globl b
-.comm b,4
-.globl a
-.comm a,4
+.set reorder
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+move $4,$0
+jal exit
+move $2,$0
+L.1:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end main
+.globl nested
+.text
+.align 2
+.ent nested
+nested:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+la $24,4
+bge $4,$24,L.6
+la $24,114
+beq $5,$24,L.9
+L.6:
+la $24,1
+bne $4,$24,L.8
+la $24,104
+beq $5,$24,L.9
+la $24,105
+beq $5,$24,L.9
+L.8:
+la $24,2
+bne $4,$24,L.3
+la $24,111
+beq $5,$24,L.9
+la $24,121
+bne $5,$24,L.3
+L.9:
+move $4,$5
+L.3:
+move $2,$0
+L.2:
+j $31
+.end nested
+.globl s
+.text
+.align 2
+.ent s
+s:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+L.10:
+j $31
+.end s
+.globl Dy
+.sdata
+.align 2
+Dy:
+.word 0x0
+.space 4
+.globl Dz
+.sdata
+.align 2
+Dz:
+.word 0x1
+.space 4
+.globl Dfunc
+.text
+.text
+.align 2
+.ent Dfunc
+Dfunc:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end Dfunc
+.globl f
+.text
+.align 2
+.ent f
+f:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end f
+.globl f1
+.text
+.align 2
+.ent f1
+f1:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end f1
+.globl f2
+.text
+.align 2
+.ent f2
+f2:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+sw $5,28($sp)
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end f2
+.globl g
+.text
+.align 2
+.ent g
+g:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end g
+.globl h
+.text
+.align 2
+.ent h
+h:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end h
+.globl h1
+.text
+.align 2
+.ent h1
+h1:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+sw $5,28($sp)
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end h1
+.globl h2
+.text
+.align 2
+.ent h2
+h2:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end h2
+.sdata
+.align 2
+L.21:
+.word 0x1
+.globl set1
+.text
+.text
+.align 2
+.ent set1
+set1:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end set1
+.sdata
+.align 2
+L.23:
+.word 0x2
+.globl set2
+.text
+.text
+.align 2
+.ent set2
+set2:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end set2
+.text
+.align 2
+.ent goo
+goo:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end goo
+.globl sss
+.text
+.align 2
+.ent sss
+sss:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end sss
+.lcomm L.27,4
+.globl rrr
+.text
+.text
+.align 2
+.ent rrr
+rrr:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end rrr
+.globl setstatic
+.text
+.align 2
+.ent setstatic
+setstatic:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end setstatic
+.globl gx1
+.text
+.align 2
+.ent gx1
+gx1:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+s.d $f12,24($sp)
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end gx1
+.globl ff1
+.text
+.align 2
+.ent ff1
+ff1:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end ff1
+.globl gg1
+.text
+.align 2
+.ent gg1
+gg1:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end gg1
+.globl hh1
+.text
+.align 2
+.ent hh1
+hh1:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+j $31
+.end hh1
+.globl cmp
+.text
+.align 2
+.ent cmp
+cmp:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+sw $5,28($sp)
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end cmp
+.globl sort
+.text
+.align 2
+.ent sort
+sort:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end sort
+.globl onearg
+.text
+.align 2
+.ent onearg
+onearg:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end onearg
+.extern xr 4
+.globl ss4
+.comm ss4,4
+.lcomm ss2,4
+.lcomm ss5,4
+.globl ss3
+.comm ss3,4
+.lcomm ss1,4
+.lcomm yy,4
+.globl z
+.comm z,4
+.globl y
+.comm y,4
+.globl x
+.comm x,4
+.globl b
+.comm b,4
+.globl a
+.comm a,4
diff --git a/lcc/mips/irix/tst/incr.2bk b/lcc/mips/irix/tst/incr.2bk
index b86c400..d9ef13c 100755
--- a/lcc/mips/irix/tst/incr.2bk
+++ b/lcc/mips/irix/tst/incr.2bk
@@ -1,9 +1,9 @@
-tst/incr.c:1: warning: missing return value
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:11: warning: missing return value
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:21: warning: missing return value
-tst/incr.c:30: warning: missing return value
-tst/incr.c:39: warning: missing return value
+tst/incr.c:1: warning: missing return value
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:11: warning: missing return value
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:21: warning: missing return value
+tst/incr.c:30: warning: missing return value
+tst/incr.c:39: warning: missing return value
diff --git a/lcc/mips/irix/tst/incr.sbk b/lcc/mips/irix/tst/incr.sbk
index 84c71c0..1fe2edd 100755
--- a/lcc/mips/irix/tst/incr.sbk
+++ b/lcc/mips/irix/tst/incr.sbk
@@ -1,149 +1,149 @@
-.set reorder
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-move $2,$0
-L.1:
-j $31
-.end main
-.globl memchar
-.text
-.align 2
-.ent memchar
-memchar:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-lw $24,-8+8($sp)
-la $15,1($24)
-sw $15,-8+8($sp)
-lb $24,($24)
-sb $24,-1+8($sp)
-lw $24,-8+8($sp)
-la $24,1($24)
-sw $24,-8+8($sp)
-lb $24,($24)
-sb $24,-1+8($sp)
-lw $24,-8+8($sp)
-la $15,-1($24)
-sw $15,-8+8($sp)
-lb $24,($24)
-sb $24,-1+8($sp)
-lw $24,-8+8($sp)
-la $24,-1($24)
-sw $24,-8+8($sp)
-lb $24,($24)
-sb $24,-1+8($sp)
-move $2,$0
-L.2:
-addu $sp,$sp,8
-j $31
-.end memchar
-.globl memint
-.text
-.align 2
-.ent memint
-memint:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-lw $24,-8+8($sp)
-la $15,4($24)
-sw $15,-8+8($sp)
-lw $24,($24)
-sw $24,-4+8($sp)
-lw $24,-8+8($sp)
-la $24,4($24)
-sw $24,-8+8($sp)
-lw $24,($24)
-sw $24,-4+8($sp)
-lw $24,-8+8($sp)
-la $15,-4($24)
-sw $15,-8+8($sp)
-lw $24,($24)
-sw $24,-4+8($sp)
-lw $24,-8+8($sp)
-la $24,-4($24)
-sw $24,-8+8($sp)
-lw $24,($24)
-sw $24,-4+8($sp)
-move $2,$0
-L.3:
-addu $sp,$sp,8
-j $31
-.end memint
-.globl regchar
-.text
-.align 2
-.ent regchar
-regchar:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-.mask 0x40800000,-4
-sw $23,0($sp)
-sw $30,4($sp)
-move $24,$23
-la $23,1($24)
-lb $30,($24)
-la $24,1($23)
-move $23,$24
-lb $30,($24)
-move $24,$23
-la $23,-1($24)
-lb $30,($24)
-la $24,-1($23)
-move $23,$24
-lb $30,($24)
-move $2,$0
-L.4:
-lw $23,0($sp)
-lw $30,4($sp)
-addu $sp,$sp,8
-j $31
-.end regchar
-.globl regint
-.text
-.align 2
-.ent regint
-regint:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-.mask 0x40800000,-4
-sw $23,0($sp)
-sw $30,4($sp)
-move $24,$23
-la $23,4($24)
-lw $30,($24)
-la $24,4($23)
-move $23,$24
-lw $30,($24)
-move $24,$23
-la $23,-4($24)
-lw $30,($24)
-la $24,-4($23)
-move $23,$24
-lw $30,($24)
-move $2,$0
-L.5:
-lw $23,0($sp)
-lw $30,4($sp)
-addu $sp,$sp,8
-j $31
-.end regint
+.set reorder
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+move $2,$0
+L.1:
+j $31
+.end main
+.globl memchar
+.text
+.align 2
+.ent memchar
+memchar:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+lw $24,-8+8($sp)
+la $15,1($24)
+sw $15,-8+8($sp)
+lb $24,($24)
+sb $24,-1+8($sp)
+lw $24,-8+8($sp)
+la $24,1($24)
+sw $24,-8+8($sp)
+lb $24,($24)
+sb $24,-1+8($sp)
+lw $24,-8+8($sp)
+la $15,-1($24)
+sw $15,-8+8($sp)
+lb $24,($24)
+sb $24,-1+8($sp)
+lw $24,-8+8($sp)
+la $24,-1($24)
+sw $24,-8+8($sp)
+lb $24,($24)
+sb $24,-1+8($sp)
+move $2,$0
+L.2:
+addu $sp,$sp,8
+j $31
+.end memchar
+.globl memint
+.text
+.align 2
+.ent memint
+memint:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+lw $24,-8+8($sp)
+la $15,4($24)
+sw $15,-8+8($sp)
+lw $24,($24)
+sw $24,-4+8($sp)
+lw $24,-8+8($sp)
+la $24,4($24)
+sw $24,-8+8($sp)
+lw $24,($24)
+sw $24,-4+8($sp)
+lw $24,-8+8($sp)
+la $15,-4($24)
+sw $15,-8+8($sp)
+lw $24,($24)
+sw $24,-4+8($sp)
+lw $24,-8+8($sp)
+la $24,-4($24)
+sw $24,-8+8($sp)
+lw $24,($24)
+sw $24,-4+8($sp)
+move $2,$0
+L.3:
+addu $sp,$sp,8
+j $31
+.end memint
+.globl regchar
+.text
+.align 2
+.ent regchar
+regchar:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+.mask 0x40800000,-4
+sw $23,0($sp)
+sw $30,4($sp)
+move $24,$23
+la $23,1($24)
+lb $30,($24)
+la $24,1($23)
+move $23,$24
+lb $30,($24)
+move $24,$23
+la $23,-1($24)
+lb $30,($24)
+la $24,-1($23)
+move $23,$24
+lb $30,($24)
+move $2,$0
+L.4:
+lw $23,0($sp)
+lw $30,4($sp)
+addu $sp,$sp,8
+j $31
+.end regchar
+.globl regint
+.text
+.align 2
+.ent regint
+regint:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+.mask 0x40800000,-4
+sw $23,0($sp)
+sw $30,4($sp)
+move $24,$23
+la $23,4($24)
+lw $30,($24)
+la $24,4($23)
+move $23,$24
+lw $30,($24)
+move $24,$23
+la $23,-4($24)
+lw $30,($24)
+la $24,-4($23)
+move $23,$24
+lw $30,($24)
+move $2,$0
+L.5:
+lw $23,0($sp)
+lw $30,4($sp)
+addu $sp,$sp,8
+j $31
+.end regint
diff --git a/lcc/mips/irix/tst/init.1bk b/lcc/mips/irix/tst/init.1bk
index 042f3bb..77aff09 100755
--- a/lcc/mips/irix/tst/init.1bk
+++ b/lcc/mips/irix/tst/init.1bk
@@ -1,16 +1,16 @@
- 1 2 3 4
- 5 6
- 7
-if
-for
-else
-while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-0 0 0
+ 1 2 3 4
+ 5 6
+ 7
+if
+for
+else
+while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+0 0 0
diff --git a/lcc/mips/irix/tst/init.2bk b/lcc/mips/irix/tst/init.2bk
index da08062..aafe415 100755
--- a/lcc/mips/irix/tst/init.2bk
+++ b/lcc/mips/irix/tst/init.2bk
@@ -1,3 +1,3 @@
-tst/init.c:36: warning: missing return value
-tst/init.c:49: warning: missing return value
-tst/init.c:59: warning: missing return value
+tst/init.c:36: warning: missing return value
+tst/init.c:49: warning: missing return value
+tst/init.c:59: warning: missing return value
diff --git a/lcc/mips/irix/tst/init.sbk b/lcc/mips/irix/tst/init.sbk
index 9ad285d..128feb3 100755
--- a/lcc/mips/irix/tst/init.sbk
+++ b/lcc/mips/irix/tst/init.sbk
@@ -1,325 +1,325 @@
-.set reorder
-.globl words
-.data
-.align 2
-words:
-.word 0x1
-.word 0x2
-.word 0x3
-.byte 105
-.byte 102
-.byte 0
-.space 3
-.space 2
-.word 0x4
-.word 0x5
-.space 4
-.byte 102
-.byte 111
-.byte 114
-.space 3
-.space 2
-.word 0x6
-.word 0x7
-.word 0x8
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.space 1
-.space 2
-.word 0x9
-.word 0xa
-.word 0xb
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.space 1
-.space 2
-.word 0x0
-.space 8
-.space 8
-.globl wordlist
-.sdata
-.align 2
-wordlist:
-.word words
-.globl x
-.data
-.align 2
-x:
-.word 0x1
-.word 0x2
-.word 0x3
-.word 0x4
-.word 0x0
-.word 0x5
-.word 0x6
-.space 12
-.word 0x7
-.space 16
-.globl y
-.data
-.align 2
-y:
-.word x
-.word x+20
-.word x+40
-.word 0x0
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2800000,-4
-sw $23,16($sp)
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-move $23,$0
-b L.8
-L.5:
-move $30,$0
-b L.12
-L.9:
-la $4,L.13
-sll $24,$30,2
-sll $15,$23,2
-lw $15,y($15)
-addu $24,$24,$15
-lw $5,($24)
-jal printf
-L.10:
-la $30,1($30)
-L.12:
-sll $24,$30,2
-sll $15,$23,2
-lw $15,y($15)
-addu $24,$24,$15
-lw $24,($24)
-bne $24,$0,L.9
-la $4,L.14
-jal printf
-L.6:
-la $23,1($23)
-L.8:
-sll $24,$23,2
-lw $24,y($24)
-bne $24,$0,L.5
-jal f
-lw $4,wordlist
-jal g
-move $2,$0
-L.4:
-lw $23,16($sp)
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end main
-.data
-.align 2
-L.16:
-.word L.17
-.word L.18
-.word L.19
-.word L.20
-.word 0x0
-.globl f
-.text
-.text
-.align 2
-.ent f
-f:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-la $30,L.16
-b L.24
-L.21:
-la $4,L.25
-lw $5,($30)
-jal printf
-L.22:
-la $30,4($30)
-L.24:
-lw $24,($30)
-bne $24,$0,L.21
-move $2,$0
-L.15:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end f
-.globl g
-.text
-.align 2
-.ent g
-g:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2800000,-4
-sw $23,16($sp)
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-move $30,$4
-b L.30
-L.27:
-move $23,$0
-b L.34
-L.31:
-la $4,L.35
-sll $24,$23,2
-addu $24,$24,$30
-lw $5,($24)
-jal printf
-L.32:
-la $23,1($23)
-L.34:
-move $24,$23
-la $15,3
-bltu $24,$15,L.31
-la $4,L.25
-la $5,12($30)
-jal printf
-L.28:
-la $30,20($30)
-L.30:
-lw $24,($30)
-bne $24,$0,L.27
-jal h
-move $2,$0
-L.26:
-lw $23,16($sp)
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end g
-.globl h
-.text
-.align 2
-.ent h
-h:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-4
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-move $30,$0
-b L.40
-L.37:
-la $4,L.41
-la $24,20
-mul $24,$24,$30
-lw $5,words($24)
-lw $6,words+4($24)
-lw $7,words+8($24)
-la $24,words+12($24)
-sw $24,16($sp)
-jal printf
-L.38:
-la $30,1($30)
-L.40:
-move $24,$30
-la $15,5
-bltu $24,$15,L.37
-move $2,$0
-L.36:
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end h
-.rdata
-.align 0
-L.41:
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.35:
-.byte 37
-.byte 100
-.byte 32
-.byte 0
-.align 0
-L.25:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.20:
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.byte 0
-.align 0
-L.19:
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 0
-L.18:
-.byte 102
-.byte 111
-.byte 114
-.byte 0
-.align 0
-L.17:
-.byte 105
-.byte 102
-.byte 0
-.align 0
-L.14:
-.byte 10
-.byte 0
-.align 0
-L.13:
-.byte 32
-.byte 37
-.byte 100
-.byte 0
+.set reorder
+.globl words
+.data
+.align 2
+words:
+.word 0x1
+.word 0x2
+.word 0x3
+.byte 105
+.byte 102
+.byte 0
+.space 3
+.space 2
+.word 0x4
+.word 0x5
+.space 4
+.byte 102
+.byte 111
+.byte 114
+.space 3
+.space 2
+.word 0x6
+.word 0x7
+.word 0x8
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.space 1
+.space 2
+.word 0x9
+.word 0xa
+.word 0xb
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.space 1
+.space 2
+.word 0x0
+.space 8
+.space 8
+.globl wordlist
+.sdata
+.align 2
+wordlist:
+.word words
+.globl x
+.data
+.align 2
+x:
+.word 0x1
+.word 0x2
+.word 0x3
+.word 0x4
+.word 0x0
+.word 0x5
+.word 0x6
+.space 12
+.word 0x7
+.space 16
+.globl y
+.data
+.align 2
+y:
+.word x
+.word x+20
+.word x+40
+.word 0x0
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2800000,-4
+sw $23,16($sp)
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+move $23,$0
+b L.8
+L.5:
+move $30,$0
+b L.12
+L.9:
+la $4,L.13
+sll $24,$30,2
+sll $15,$23,2
+lw $15,y($15)
+addu $24,$24,$15
+lw $5,($24)
+jal printf
+L.10:
+la $30,1($30)
+L.12:
+sll $24,$30,2
+sll $15,$23,2
+lw $15,y($15)
+addu $24,$24,$15
+lw $24,($24)
+bne $24,$0,L.9
+la $4,L.14
+jal printf
+L.6:
+la $23,1($23)
+L.8:
+sll $24,$23,2
+lw $24,y($24)
+bne $24,$0,L.5
+jal f
+lw $4,wordlist
+jal g
+move $2,$0
+L.4:
+lw $23,16($sp)
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end main
+.data
+.align 2
+L.16:
+.word L.17
+.word L.18
+.word L.19
+.word L.20
+.word 0x0
+.globl f
+.text
+.text
+.align 2
+.ent f
+f:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+la $30,L.16
+b L.24
+L.21:
+la $4,L.25
+lw $5,($30)
+jal printf
+L.22:
+la $30,4($30)
+L.24:
+lw $24,($30)
+bne $24,$0,L.21
+move $2,$0
+L.15:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end f
+.globl g
+.text
+.align 2
+.ent g
+g:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2800000,-4
+sw $23,16($sp)
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+move $30,$4
+b L.30
+L.27:
+move $23,$0
+b L.34
+L.31:
+la $4,L.35
+sll $24,$23,2
+addu $24,$24,$30
+lw $5,($24)
+jal printf
+L.32:
+la $23,1($23)
+L.34:
+move $24,$23
+la $15,3
+bltu $24,$15,L.31
+la $4,L.25
+la $5,12($30)
+jal printf
+L.28:
+la $30,20($30)
+L.30:
+lw $24,($30)
+bne $24,$0,L.27
+jal h
+move $2,$0
+L.26:
+lw $23,16($sp)
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end g
+.globl h
+.text
+.align 2
+.ent h
+h:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-4
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+move $30,$0
+b L.40
+L.37:
+la $4,L.41
+la $24,20
+mul $24,$24,$30
+lw $5,words($24)
+lw $6,words+4($24)
+lw $7,words+8($24)
+la $24,words+12($24)
+sw $24,16($sp)
+jal printf
+L.38:
+la $30,1($30)
+L.40:
+move $24,$30
+la $15,5
+bltu $24,$15,L.37
+move $2,$0
+L.36:
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end h
+.rdata
+.align 0
+L.41:
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.35:
+.byte 37
+.byte 100
+.byte 32
+.byte 0
+.align 0
+L.25:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.20:
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.byte 0
+.align 0
+L.19:
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 0
+L.18:
+.byte 102
+.byte 111
+.byte 114
+.byte 0
+.align 0
+L.17:
+.byte 105
+.byte 102
+.byte 0
+.align 0
+L.14:
+.byte 10
+.byte 0
+.align 0
+L.13:
+.byte 32
+.byte 37
+.byte 100
+.byte 0
diff --git a/lcc/mips/irix/tst/limits.1bk b/lcc/mips/irix/tst/limits.1bk
index f0c1dc8..9beee8c 100755
--- a/lcc/mips/irix/tst/limits.1bk
+++ b/lcc/mips/irix/tst/limits.1bk
@@ -1,14 +1,14 @@
-UCHAR_MAX: 000000ff=255
-USHRT_MAX: 0000ffff=65535
-UINT_MAX: ffffffff=-1
-ULONG_MAX: ffffffff=-1
-CHAR_MAX: 0000007f=127
-SCHAR_MAX: 0000007f=127
-SHRT_MAX: 00007fff=32767
-INT_MAX: 7fffffff=2147483647
-LONG_MAX: 7fffffff=2147483647
-CHAR_MIN: ffffff80=-128
-SCHAR_MIN: ffffff80=-128
-SHRT_MIN: ffff8000=-32768
-INT_MIN: 80000000=-2147483648
-LONG_MIN: 80000000=-2147483648
+UCHAR_MAX: 000000ff=255
+USHRT_MAX: 0000ffff=65535
+UINT_MAX: ffffffff=-1
+ULONG_MAX: ffffffff=-1
+CHAR_MAX: 0000007f=127
+SCHAR_MAX: 0000007f=127
+SHRT_MAX: 00007fff=32767
+INT_MAX: 7fffffff=2147483647
+LONG_MAX: 7fffffff=2147483647
+CHAR_MIN: ffffff80=-128
+SCHAR_MIN: ffffff80=-128
+SHRT_MIN: ffff8000=-32768
+INT_MIN: 80000000=-2147483648
+LONG_MIN: 80000000=-2147483648
diff --git a/lcc/mips/irix/tst/limits.sbk b/lcc/mips/irix/tst/limits.sbk
index 2634913..2392b05 100755
--- a/lcc/mips/irix/tst/limits.sbk
+++ b/lcc/mips/irix/tst/limits.sbk
@@ -1,396 +1,396 @@
-.set reorder
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-la $4,L.2
-la $24,255
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.3
-la $24,65535
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.4
-la $24,0xffffffff
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.5
-la $24,0xffffffff
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.6
-la $24,127
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.7
-la $24,127
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.8
-la $24,32767
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.9
-la $24,2147483647
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.10
-la $24,2147483647
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.11
-la $24,-128
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.12
-la $24,-128
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.13
-la $24,-32768
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.14
-la $24,-2147483648
-move $5,$24
-move $6,$24
-jal printf
-la $4,L.15
-la $24,-2147483648
-move $5,$24
-move $6,$24
-jal printf
-move $2,$0
-L.1:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end main
-.rdata
-.align 0
-L.15:
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.14:
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.13:
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.12:
-.byte 83
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.11:
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.10:
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.9:
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.8:
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.7:
-.byte 83
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.6:
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.5:
-.byte 85
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.4:
-.byte 85
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.3:
-.byte 85
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.2:
-.byte 85
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
+.set reorder
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+la $4,L.2
+la $24,255
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.3
+la $24,65535
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.4
+la $24,0xffffffff
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.5
+la $24,0xffffffff
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.6
+la $24,127
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.7
+la $24,127
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.8
+la $24,32767
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.9
+la $24,2147483647
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.10
+la $24,2147483647
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.11
+la $24,-128
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.12
+la $24,-128
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.13
+la $24,-32768
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.14
+la $24,-2147483648
+move $5,$24
+move $6,$24
+jal printf
+la $4,L.15
+la $24,-2147483648
+move $5,$24
+move $6,$24
+jal printf
+move $2,$0
+L.1:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end main
+.rdata
+.align 0
+L.15:
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.14:
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.13:
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.12:
+.byte 83
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.11:
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.10:
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.9:
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.8:
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.7:
+.byte 83
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.6:
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.5:
+.byte 85
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.4:
+.byte 85
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.3:
+.byte 85
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.2:
+.byte 85
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
diff --git a/lcc/mips/irix/tst/paranoia.1bk b/lcc/mips/irix/tst/paranoia.1bk
index 6842a77..158f649 100755
--- a/lcc/mips/irix/tst/paranoia.1bk
+++ b/lcc/mips/irix/tst/paranoia.1bk
@@ -1,178 +1,178 @@
-Lest this program stop prematurely, i.e. before displaying
-
- `END OF TEST',
-
-try to persuade the computer NOT to terminate execution when an
-error like Over/Underflow or Division by Zero occurs, but rather
-to persevere with a surrogate value after, perhaps, displaying some
-warning. If persuasion avails naught, don't despair but run this
-program anyway to see how many milestones it passes, and then
-amend it to make further progress.
-
-Answer questions with Y, y, N or n (unless otherwise indicated).
-
-
-Diagnosis resumes after milestone Number 0 Page: 1
-
-Users are invited to help debug and augment this program so it will
-cope with unanticipated and newly uncovered arithmetic pathologies.
-
-Please send suggestions and interesting results to
- Richard Karpinski
- Computer Center U-76
- University of California
- San Francisco, CA 94143-0704, USA
-
-In doing so, please include the following information:
- Precision: double;
- Version: 10 February 1989;
- Computer:
-
- Compiler:
-
- Optimization level:
-
- Other relevant compiler options:
-
-Diagnosis resumes after milestone Number 1 Page: 2
-
-Running this program should reveal these characteristics:
- Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
- Precision = number of significant digits carried.
- U2 = Radix/Radix^Precision = One Ulp
- (OneUlpnit in the Last Place) of 1.000xxx .
- U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
- Adequacy of guard digits for Mult., Div. and Subt.
- Whether arithmetic is chopped, correctly rounded, or something else
- for Mult., Div., Add/Subt. and Sqrt.
- Whether a Sticky Bit used correctly for rounding.
- UnderflowThreshold = an underflow threshold.
- E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
- V = an overflow threshold, roughly.
- V0 tells, roughly, whether Infinity is represented.
- Comparisions are checked for consistency with subtraction
- and for contamination with pseudo-zeros.
- Sqrt is tested. Y^X is not tested.
- Extra-precise subexpressions are revealed but NOT YET tested.
- Decimal-Binary conversion is NOT YET tested for accuracy.
-
-Diagnosis resumes after milestone Number 2 Page: 3
-
-The program attempts to discriminate among
- FLAWs, like lack of a sticky bit,
- Serious DEFECTs, like lack of a guard digit, and
- FAILUREs, like 2+2 == 5 .
-Failures may confound subsequent diagnoses.
-
-The diagnostic capabilities of this program go beyond an earlier
-program called `MACHAR', which can be found at the end of the
-book `Software Manual for the Elementary Functions' (1980) by
-W. J. Cody and W. Waite. Although both programs try to discover
-the Radix, Precision and range (over/underflow thresholds)
-of the arithmetic, this program tries to cope with a wider variety
-of pathologies, and to say how well the arithmetic is implemented.
-
-The program is based upon a conventional radix representation for
-floating-point numbers, but also allows logarithmic encoding
-as used by certain early WANG machines.
-
-BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
-see source comments for more history.
-
-Diagnosis resumes after milestone Number 3 Page: 4
-
-Program is now RUNNING tests on small integers:
--1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
-
-Searching for Radix and Precision.
-Radix = 2.000000 .
-Closest relative separation found is U1 = 1.1102230e-16 .
-
-Recalculating radix and precision
- confirms closest relative separation U1 .
-Radix confirmed.
-The number of significant digits of the Radix is 53.000000 .
-
-Diagnosis resumes after milestone Number 30 Page: 5
-
-Subtraction appears to be normalized, as it should be.
-Checking for guard digit in *, /, and -.
- *, /, and - appear to have guard digits, as they should.
-
-Diagnosis resumes after milestone Number 40 Page: 6
-
-Checking rounding on multiply, divide and add/subtract.
-Multiplication appears to round correctly.
-Division appears to round correctly.
-Addition/Subtraction appears to round correctly.
-Checking for sticky bit.
-Sticky bit apparently used correctly.
-
-Does Multiplication commute? Testing on 20 random pairs.
- No failures found in 20 integer pairs.
-
-Running test of square root(x).
-Testing if sqrt(X * X) == X for 20 Integers X.
-Test for sqrt monotonicity.
-sqrt has passed a test for Monotonicity.
-Testing whether sqrt is rounded or chopped.
-Square root appears to be correctly rounded.
-
-Diagnosis resumes after milestone Number 90 Page: 7
-
-Testing powers Z^i for small Integers Z and i.
-... no discrepancis found.
-
-Seeking Underflow thresholds UfThold and E0.
-Smallest strictly positive number found is E0 = 4.94066e-324 .
-Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
-What the machine gets for (Z + Z) / Z is 2.00000000000000000e+00 .
-This is O.K., provided Over/Underflow has NOT just been signaled.
-Underflow is gradual; it incurs Absolute Error =
-(roundoff in UfThold) < E0.
-The Underflow threshold is 2.22507385850720190e-308, below which
-calculation may suffer larger Relative error than merely roundoff.
-Since underflow occurs below the threshold
-UfThold = (2.00000000000000000e+00) ^ (-1.02200000000000000e+03)
-only underflow should afflict the expression
- (2.00000000000000000e+00) ^ (-1.02200000000000000e+03);
-actually calculating yields: 0.00000000000000000e+00 .
-This computed value is O.K.
-
-Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065220e+00 as X -> 1.
-Accuracy seems adequate.
-Testing powers Z^Q at four nearly extreme values.
- ... no discrepancies found.
-
-
-Diagnosis resumes after milestone Number 160 Page: 8
-
-Searching for Overflow threshold:
-This may generate an error.
-Can `Z = -Y' overflow?
-Trying it on Y = -inf .
-Seems O.K.
-Overflow threshold is V = 1.79769313486231570e+308 .
-Overflow saturates at V0 = inf .
-No Overflow should be signaled for V * 1 = 1.79769313486231570e+308
- nor for V / 1 = 1.79769313486231570e+308 .
-Any overflow signal separating this * from the one
-above is a DEFECT.
-
-
-Diagnosis resumes after milestone Number 190 Page: 9
-
-
-What message and/or values does Division by Zero produce?
- Trying to compute 1 / 0 produces ... inf .
-
- Trying to compute 0 / 0 produces ... nan .
-
-Diagnosis resumes after milestone Number 220 Page: 10
-
-
-
-No failures, defects nor flaws have been discovered.
-Rounding appears to conform to the proposed IEEE standard P754.
-The arithmetic diagnosed appears to be Excellent!
-END OF TEST.
+Lest this program stop prematurely, i.e. before displaying
+
+ `END OF TEST',
+
+try to persuade the computer NOT to terminate execution when an
+error like Over/Underflow or Division by Zero occurs, but rather
+to persevere with a surrogate value after, perhaps, displaying some
+warning. If persuasion avails naught, don't despair but run this
+program anyway to see how many milestones it passes, and then
+amend it to make further progress.
+
+Answer questions with Y, y, N or n (unless otherwise indicated).
+
+
+Diagnosis resumes after milestone Number 0 Page: 1
+
+Users are invited to help debug and augment this program so it will
+cope with unanticipated and newly uncovered arithmetic pathologies.
+
+Please send suggestions and interesting results to
+ Richard Karpinski
+ Computer Center U-76
+ University of California
+ San Francisco, CA 94143-0704, USA
+
+In doing so, please include the following information:
+ Precision: double;
+ Version: 10 February 1989;
+ Computer:
+
+ Compiler:
+
+ Optimization level:
+
+ Other relevant compiler options:
+
+Diagnosis resumes after milestone Number 1 Page: 2
+
+Running this program should reveal these characteristics:
+ Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
+ Precision = number of significant digits carried.
+ U2 = Radix/Radix^Precision = One Ulp
+ (OneUlpnit in the Last Place) of 1.000xxx .
+ U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
+ Adequacy of guard digits for Mult., Div. and Subt.
+ Whether arithmetic is chopped, correctly rounded, or something else
+ for Mult., Div., Add/Subt. and Sqrt.
+ Whether a Sticky Bit used correctly for rounding.
+ UnderflowThreshold = an underflow threshold.
+ E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
+ V = an overflow threshold, roughly.
+ V0 tells, roughly, whether Infinity is represented.
+ Comparisions are checked for consistency with subtraction
+ and for contamination with pseudo-zeros.
+ Sqrt is tested. Y^X is not tested.
+ Extra-precise subexpressions are revealed but NOT YET tested.
+ Decimal-Binary conversion is NOT YET tested for accuracy.
+
+Diagnosis resumes after milestone Number 2 Page: 3
+
+The program attempts to discriminate among
+ FLAWs, like lack of a sticky bit,
+ Serious DEFECTs, like lack of a guard digit, and
+ FAILUREs, like 2+2 == 5 .
+Failures may confound subsequent diagnoses.
+
+The diagnostic capabilities of this program go beyond an earlier
+program called `MACHAR', which can be found at the end of the
+book `Software Manual for the Elementary Functions' (1980) by
+W. J. Cody and W. Waite. Although both programs try to discover
+the Radix, Precision and range (over/underflow thresholds)
+of the arithmetic, this program tries to cope with a wider variety
+of pathologies, and to say how well the arithmetic is implemented.
+
+The program is based upon a conventional radix representation for
+floating-point numbers, but also allows logarithmic encoding
+as used by certain early WANG machines.
+
+BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
+see source comments for more history.
+
+Diagnosis resumes after milestone Number 3 Page: 4
+
+Program is now RUNNING tests on small integers:
+-1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
+
+Searching for Radix and Precision.
+Radix = 2.000000 .
+Closest relative separation found is U1 = 1.1102230e-16 .
+
+Recalculating radix and precision
+ confirms closest relative separation U1 .
+Radix confirmed.
+The number of significant digits of the Radix is 53.000000 .
+
+Diagnosis resumes after milestone Number 30 Page: 5
+
+Subtraction appears to be normalized, as it should be.
+Checking for guard digit in *, /, and -.
+ *, /, and - appear to have guard digits, as they should.
+
+Diagnosis resumes after milestone Number 40 Page: 6
+
+Checking rounding on multiply, divide and add/subtract.
+Multiplication appears to round correctly.
+Division appears to round correctly.
+Addition/Subtraction appears to round correctly.
+Checking for sticky bit.
+Sticky bit apparently used correctly.
+
+Does Multiplication commute? Testing on 20 random pairs.
+ No failures found in 20 integer pairs.
+
+Running test of square root(x).
+Testing if sqrt(X * X) == X for 20 Integers X.
+Test for sqrt monotonicity.
+sqrt has passed a test for Monotonicity.
+Testing whether sqrt is rounded or chopped.
+Square root appears to be correctly rounded.
+
+Diagnosis resumes after milestone Number 90 Page: 7
+
+Testing powers Z^i for small Integers Z and i.
+... no discrepancis found.
+
+Seeking Underflow thresholds UfThold and E0.
+Smallest strictly positive number found is E0 = 4.94066e-324 .
+Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
+What the machine gets for (Z + Z) / Z is 2.00000000000000000e+00 .
+This is O.K., provided Over/Underflow has NOT just been signaled.
+Underflow is gradual; it incurs Absolute Error =
+(roundoff in UfThold) < E0.
+The Underflow threshold is 2.22507385850720190e-308, below which
+calculation may suffer larger Relative error than merely roundoff.
+Since underflow occurs below the threshold
+UfThold = (2.00000000000000000e+00) ^ (-1.02200000000000000e+03)
+only underflow should afflict the expression
+ (2.00000000000000000e+00) ^ (-1.02200000000000000e+03);
+actually calculating yields: 0.00000000000000000e+00 .
+This computed value is O.K.
+
+Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065220e+00 as X -> 1.
+Accuracy seems adequate.
+Testing powers Z^Q at four nearly extreme values.
+ ... no discrepancies found.
+
+
+Diagnosis resumes after milestone Number 160 Page: 8
+
+Searching for Overflow threshold:
+This may generate an error.
+Can `Z = -Y' overflow?
+Trying it on Y = -inf .
+Seems O.K.
+Overflow threshold is V = 1.79769313486231570e+308 .
+Overflow saturates at V0 = inf .
+No Overflow should be signaled for V * 1 = 1.79769313486231570e+308
+ nor for V / 1 = 1.79769313486231570e+308 .
+Any overflow signal separating this * from the one
+above is a DEFECT.
+
+
+Diagnosis resumes after milestone Number 190 Page: 9
+
+
+What message and/or values does Division by Zero produce?
+ Trying to compute 1 / 0 produces ... inf .
+
+ Trying to compute 0 / 0 produces ... nan .
+
+Diagnosis resumes after milestone Number 220 Page: 10
+
+
+
+No failures, defects nor flaws have been discovered.
+Rounding appears to conform to the proposed IEEE standard P754.
+The arithmetic diagnosed appears to be Excellent!
+END OF TEST.
diff --git a/lcc/mips/irix/tst/paranoia.2bk b/lcc/mips/irix/tst/paranoia.2bk
index f6ddf16..2718174 100755
--- a/lcc/mips/irix/tst/paranoia.2bk
+++ b/lcc/mips/irix/tst/paranoia.2bk
@@ -1,16 +1,16 @@
-tst/paranoia.c:1867: warning: missing return value
-tst/paranoia.c:1874: warning: missing return value
-tst/paranoia.c:1884: warning: missing return value
-tst/paranoia.c:1924: warning: missing return value
-tst/paranoia.c:1939: warning: missing return value
-tst/paranoia.c:1956: warning: missing return value
-tst/paranoia.c:1975: warning: missing return value
-tst/paranoia.c:1988: warning: missing return value
-tst/paranoia.c:1995: warning: missing return value
-tst/paranoia.c:2055: warning: missing return value
-tst/paranoia.c:2062: warning: missing return value
-tst/paranoia.c:2070: warning: missing return value
-tst/paranoia.c:2087: warning: missing return value
-tst/paranoia.c:2115: warning: missing return value
-tst/paranoia.c:2144: warning: missing return value
-tst/paranoia.c:2173: warning: missing return value
+tst/paranoia.c:1867: warning: missing return value
+tst/paranoia.c:1874: warning: missing return value
+tst/paranoia.c:1884: warning: missing return value
+tst/paranoia.c:1924: warning: missing return value
+tst/paranoia.c:1939: warning: missing return value
+tst/paranoia.c:1956: warning: missing return value
+tst/paranoia.c:1975: warning: missing return value
+tst/paranoia.c:1988: warning: missing return value
+tst/paranoia.c:1995: warning: missing return value
+tst/paranoia.c:2055: warning: missing return value
+tst/paranoia.c:2062: warning: missing return value
+tst/paranoia.c:2070: warning: missing return value
+tst/paranoia.c:2087: warning: missing return value
+tst/paranoia.c:2115: warning: missing return value
+tst/paranoia.c:2144: warning: missing return value
+tst/paranoia.c:2173: warning: missing return value
diff --git a/lcc/mips/irix/tst/paranoia.sbk b/lcc/mips/irix/tst/paranoia.sbk
index a0af0f9..6593203 100755
--- a/lcc/mips/irix/tst/paranoia.sbk
+++ b/lcc/mips/irix/tst/paranoia.sbk
@@ -1,18657 +1,18657 @@
-.set reorder
-.globl Zero
-.sdata
-.align 3
-Zero:
-.word 0x0
-.word 0x0
-.globl Half
-.sdata
-.align 3
-Half:
-.word 0x3fe00000
-.word 0x0
-.globl One
-.sdata
-.align 3
-One:
-.word 0x3ff00000
-.word 0x0
-.globl Two
-.sdata
-.align 3
-Two:
-.word 0x40000000
-.word 0x0
-.globl Three
-.sdata
-.align 3
-Three:
-.word 0x40080000
-.word 0x0
-.globl Four
-.sdata
-.align 3
-Four:
-.word 0x40100000
-.word 0x0
-.globl Five
-.sdata
-.align 3
-Five:
-.word 0x40140000
-.word 0x0
-.globl Eight
-.sdata
-.align 3
-Eight:
-.word 0x40200000
-.word 0x0
-.globl Nine
-.sdata
-.align 3
-Nine:
-.word 0x40220000
-.word 0x0
-.globl TwentySeven
-.sdata
-.align 3
-TwentySeven:
-.word 0x403b0000
-.word 0x0
-.globl ThirtyTwo
-.sdata
-.align 3
-ThirtyTwo:
-.word 0x40400000
-.word 0x0
-.globl TwoForty
-.sdata
-.align 3
-TwoForty:
-.word 0x406e0000
-.word 0x0
-.globl MinusOne
-.sdata
-.align 3
-MinusOne:
-.word 0xbff00000
-.word 0x0
-.globl OneAndHalf
-.sdata
-.align 3
-OneAndHalf:
-.word 0x3ff80000
-.word 0x0
-.globl NoTrials
-.sdata
-.align 2
-NoTrials:
-.word 0x14
-.globl sigfpe
-.text
-.text
-.align 2
-.ent sigfpe
-sigfpe:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-lw $24,fpecount
-la $24,1($24)
-sw $24,fpecount
-la $4,L.2
-jal printf
-la $4,_iob+16
-jal fflush
-lw $24,sigsave
-beq $24,$0,L.4
-la $4,8
-lw $5,sigsave
-jal signal
-sw $0,sigsave
-la $4,ovfl_buf
-la $5,1
-jal longjmp
-L.4:
-jal abort
-L.1:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end sigfpe
-.data
-.align 2
-L.757:
-.word L.758
-.word L.759
-.word L.760
-.word L.761
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,240,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-240
-.mask 0xc2ff0000,-168
-sw $16,32($sp)
-sw $17,36($sp)
-sw $18,40($sp)
-sw $19,44($sp)
-sw $20,48($sp)
-sw $21,52($sp)
-sw $22,56($sp)
-sw $23,60($sp)
-.cprestore 64
-sw $30,68($sp)
-sw $31,72($sp)
-l.d $f18,L.7
-s.d $f18,Zero
-l.d $f18,L.8
-s.d $f18,One
-l.d $f18,One
-add.d $f16,$f18,$f18
-s.d $f16,Two
-l.d $f16,Two
-add.d $f10,$f16,$f18
-s.d $f10,Three
-l.d $f10,Three
-add.d $f8,$f10,$f18
-s.d $f8,Four
-l.d $f8,Four
-add.d $f6,$f8,$f18
-s.d $f6,Five
-add.d $f6,$f8,$f8
-s.d $f6,Eight
-mul.d $f6,$f10,$f10
-s.d $f6,Nine
-l.d $f6,Nine
-mul.d $f6,$f6,$f10
-s.d $f6,TwentySeven
-l.d $f6,Eight
-mul.d $f6,$f8,$f6
-s.d $f6,ThirtyTwo
-l.d $f6,Five
-mul.d $f6,$f8,$f6
-mul.d $f10,$f6,$f10
-mul.d $f10,$f10,$f8
-s.d $f10,TwoForty
-neg.d $f10,$f18
-s.d $f10,MinusOne
-div.d $f16,$f18,$f16
-s.d $f16,Half
-l.d $f16,Half
-add.d $f18,$f18,$f16
-s.d $f18,OneAndHalf
-sw $0,ErrCnt
-sw $0,ErrCnt+4
-sw $0,ErrCnt+8
-sw $0,ErrCnt+12
-la $24,1
-sw $24,PageNo
-sw $0,Milestone
-la $4,8
-la $5,sigfpe
-jal signal
-jal Instructions
-jal Pause
-jal Heading
-jal Pause
-jal Characteristics
-jal Pause
-jal History
-jal Pause
-la $24,7
-sw $24,Milestone
-la $4,L.12
-jal printf
-move $4,$0
-l.d $f18,Zero
-add.d $f16,$f18,$f18
-c.eq.d $f16,$f18; bc1f L.15
-l.d $f16,One
-sub.d $f10,$f16,$f16
-c.eq.d $f10,$f18; bc1f L.15
-c.le.d $f16,$f18; bc1t L.15
-add.d $f18,$f16,$f16
-l.d $f16,Two
-c.eq.d $f18,$f16; bc1f L.15
-la $30,1
-b L.16
-L.15:
-move $30,$0
-L.16:
-move $5,$30
-la $6,L.14
-jal TstCond
-l.d $f18,Zero
-neg.d $f18,$f18
-s.d $f18,Z
-l.d $f18,Z
-l.d $f16,L.7
-c.eq.d $f18,$f16; bc1t L.17
-lw $24,ErrCnt
-la $24,1($24)
-sw $24,ErrCnt
-la $4,L.19
-jal printf
-l.d $f18,L.20
-s.d $f18,U1
-l.d $f18,L.8
-s.d $f18,Radix
-jal TstPtUf
-L.17:
-move $4,$0
-l.d $f18,Three
-l.d $f16,Two
-l.d $f10,One
-add.d $f8,$f16,$f10
-c.eq.d $f18,$f8; bc1f L.23
-l.d $f8,Four
-add.d $f6,$f18,$f10
-c.eq.d $f8,$f6; bc1f L.23
-l.d $f6,Zero
-neg.d $f4,$f16
-mul.d $f16,$f16,$f4
-add.d $f16,$f8,$f16
-c.eq.d $f16,$f6; bc1f L.23
-sub.d $f18,$f8,$f18
-sub.d $f18,$f18,$f10
-c.eq.d $f18,$f6; bc1f L.23
-la $23,1
-b L.24
-L.23:
-move $23,$0
-L.24:
-move $5,$23
-la $6,L.22
-jal TstCond
-l.d $f18,MinusOne
-s.d $f18,-8+240($sp)
-l.d $f16,One
-l.d $f10,L.7
-sub.d $f10,$f10,$f16
-c.eq.d $f18,$f10; bc1f L.27
-l.d $f10,Zero
-add.d $f8,$f18,$f16
-c.eq.d $f8,$f10; bc1f L.27
-add.d $f8,$f16,$f18
-c.eq.d $f8,$f10; bc1f L.27
-mov.d $f12,$f16
-jal fabs
-l.d $f16,Zero
-l.d $f10,-8+240($sp)
-add.d $f18,$f10,$f0
-c.eq.d $f18,$f16; bc1f L.27
-l.d $f18,MinusOne
-mul.d $f10,$f18,$f18
-add.d $f18,$f18,$f10
-c.eq.d $f18,$f16; bc1f L.27
-la $22,1
-b L.28
-L.27:
-move $22,$0
-L.28:
-move $4,$0
-move $5,$22
-la $6,L.26
-jal TstCond
-move $4,$0
-l.d $f18,Half
-l.d $f16,MinusOne
-add.d $f16,$f18,$f16
-add.d $f18,$f16,$f18
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.31
-la $21,1
-b L.32
-L.31:
-move $21,$0
-L.32:
-move $5,$21
-la $6,L.30
-jal TstCond
-la $24,10
-sw $24,Milestone
-move $4,$0
-l.d $f18,Nine
-l.d $f16,Three
-mul.d $f10,$f16,$f16
-c.eq.d $f18,$f10; bc1f L.35
-l.d $f10,TwentySeven
-mul.d $f18,$f18,$f16
-c.eq.d $f10,$f18; bc1f L.35
-l.d $f18,Eight
-l.d $f16,Four
-add.d $f8,$f16,$f16
-c.eq.d $f18,$f8; bc1f L.35
-l.d $f8,ThirtyTwo
-mul.d $f18,$f18,$f16
-c.eq.d $f8,$f18; bc1f L.35
-sub.d $f18,$f8,$f10
-sub.d $f18,$f18,$f16
-l.d $f16,One
-sub.d $f18,$f18,$f16
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.35
-la $20,1
-b L.36
-L.35:
-move $20,$0
-L.36:
-move $5,$20
-la $6,L.34
-jal TstCond
-move $4,$0
-l.d $f18,Five
-l.d $f16,Four
-l.d $f10,One
-add.d $f10,$f16,$f10
-c.eq.d $f18,$f10; bc1f L.39
-l.d $f10,TwoForty
-l.d $f8,Three
-s.d $f8,-16+240($sp)
-mul.d $f6,$f16,$f18
-mul.d $f6,$f6,$f8
-mul.d $f6,$f6,$f16
-c.eq.d $f10,$f6; bc1f L.39
-l.d $f6,Zero
-div.d $f4,$f10,$f8
-mul.d $f8,$f16,$f16
-mul.d $f8,$f8,$f18
-sub.d $f8,$f4,$f8
-c.eq.d $f8,$f6; bc1f L.39
-div.d $f8,$f10,$f16
-l.d $f4,-16+240($sp)
-mul.d $f4,$f18,$f4
-mul.d $f4,$f4,$f16
-sub.d $f8,$f8,$f4
-c.eq.d $f8,$f6; bc1f L.39
-div.d $f18,$f10,$f18
-l.d $f10,-16+240($sp)
-mul.d $f10,$f16,$f10
-mul.d $f16,$f10,$f16
-sub.d $f18,$f18,$f16
-c.eq.d $f18,$f6; bc1f L.39
-la $19,1
-b L.40
-L.39:
-move $19,$0
-L.40:
-move $5,$19
-la $6,L.38
-jal TstCond
-lw $24,ErrCnt
-bne $24,$0,L.41
-la $4,L.43
-jal printf
-la $4,L.44
-jal printf
-L.41:
-la $4,L.45
-jal printf
-l.d $f18,One
-s.d $f18,W
-L.46:
-l.d $f18,W
-add.d $f18,$f18,$f18
-s.d $f18,W
-l.d $f18,W
-l.d $f16,One
-add.d $f10,$f18,$f16
-s.d $f10,Y
-l.d $f10,Y
-sub.d $f18,$f10,$f18
-s.d $f18,Z
-l.d $f18,Z
-sub.d $f18,$f18,$f16
-s.d $f18,Y
-L.47:
-l.d $f12,Y
-jal fabs
-l.d $f16,MinusOne
-add.d $f18,$f16,$f0
-l.d $f16,Zero
-c.lt.d $f18,$f16; bc1t L.46
-l.d $f18,Zero
-s.d $f18,Precision
-l.d $f18,One
-s.d $f18,Y
-L.49:
-l.d $f18,W
-l.d $f16,Y
-add.d $f10,$f18,$f16
-s.d $f10,Radix
-add.d $f16,$f16,$f16
-s.d $f16,Y
-l.d $f16,Radix
-sub.d $f18,$f16,$f18
-s.d $f18,Radix
-L.50:
-l.d $f18,Radix
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.49
-l.d $f18,Radix
-l.d $f16,Two
-c.lt.d $f18,$f16; bc1f L.52
-l.d $f18,One
-s.d $f18,Radix
-L.52:
-la $4,L.54
-l.d $f18,Radix
-mfc1.d $6,$f18
-jal printf
-l.d $f18,Radix
-l.d $f16,L.8
-c.eq.d $f18,$f16; bc1t L.55
-l.d $f18,One
-s.d $f18,W
-L.57:
-l.d $f18,One
-l.d $f16,Precision
-add.d $f16,$f16,$f18
-s.d $f16,Precision
-l.d $f16,W
-l.d $f10,Radix
-mul.d $f16,$f16,$f10
-s.d $f16,W
-l.d $f16,W
-add.d $f18,$f16,$f18
-s.d $f18,Y
-L.58:
-l.d $f18,Y
-l.d $f16,W
-sub.d $f18,$f18,$f16
-l.d $f16,One
-c.eq.d $f18,$f16; bc1t L.57
-L.55:
-l.d $f18,One
-l.d $f16,W
-div.d $f18,$f18,$f16
-s.d $f18,U1
-l.d $f18,U1
-l.d $f16,Radix
-mul.d $f16,$f16,$f18
-s.d $f16,U2
-la $4,L.60
-mfc1.d $6,$f18
-jal printf
-la $4,L.61
-jal printf
-l.d $f18,Radix
-s.d $f18,E0
-l.d $f18,U1
-s.d $f18,E1
-l.d $f18,U2
-s.d $f18,E9
-l.d $f18,Precision
-s.d $f18,E3
-l.d $f18,Four
-l.d $f16,Three
-div.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,X
-l.d $f16,One
-sub.d $f18,$f18,$f16
-s.d $f18,Third
-l.d $f18,Third
-l.d $f16,Half
-sub.d $f16,$f16,$f18
-s.d $f16,F6
-l.d $f16,F6
-add.d $f16,$f16,$f16
-s.d $f16,X
-l.d $f16,X
-sub.d $f12,$f16,$f18
-jal fabs
-s.d $f0,X
-l.d $f18,X
-l.d $f16,U2
-c.lt.d $f18,$f16; bc1f L.62
-l.d $f18,U2
-s.d $f18,X
-L.62:
-L.64:
-l.d $f18,X
-s.d $f18,U2
-l.d $f18,U2
-l.d $f16,Half
-mul.d $f16,$f16,$f18
-l.d $f10,ThirtyTwo
-mul.d $f10,$f10,$f18
-mul.d $f18,$f10,$f18
-add.d $f18,$f16,$f18
-s.d $f18,Y
-l.d $f18,One
-l.d $f16,Y
-add.d $f16,$f18,$f16
-s.d $f16,Y
-l.d $f16,Y
-sub.d $f18,$f16,$f18
-s.d $f18,X
-L.65:
-l.d $f18,X
-l.d $f16,U2
-c.le.d $f16,$f18; bc1t L.67
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.64
-L.67:
-l.d $f18,Two
-l.d $f16,Three
-div.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,Half
-l.d $f16,X
-sub.d $f16,$f16,$f18
-s.d $f16,F6
-l.d $f16,F6
-add.d $f10,$f16,$f16
-s.d $f10,Third
-l.d $f10,Third
-sub.d $f18,$f10,$f18
-s.d $f18,X
-l.d $f18,X
-add.d $f12,$f18,$f16
-jal fabs
-s.d $f0,X
-l.d $f18,X
-l.d $f16,U1
-c.lt.d $f18,$f16; bc1f L.68
-l.d $f18,U1
-s.d $f18,X
-L.68:
-L.70:
-l.d $f18,X
-s.d $f18,U1
-l.d $f18,Half
-l.d $f16,U1
-mul.d $f10,$f18,$f16
-l.d $f8,ThirtyTwo
-mul.d $f8,$f8,$f16
-mul.d $f16,$f8,$f16
-add.d $f16,$f10,$f16
-s.d $f16,Y
-l.d $f16,Y
-sub.d $f16,$f18,$f16
-s.d $f16,Y
-l.d $f16,Y
-add.d $f16,$f18,$f16
-s.d $f16,X
-l.d $f16,X
-sub.d $f16,$f18,$f16
-s.d $f16,Y
-l.d $f16,Y
-add.d $f18,$f18,$f16
-s.d $f18,X
-L.71:
-l.d $f18,X
-l.d $f16,U1
-c.le.d $f16,$f18; bc1t L.73
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.70
-L.73:
-l.d $f18,U1
-l.d $f16,E1
-c.eq.d $f18,$f16; bc1f L.74
-la $4,L.76
-jal printf
-b L.75
-L.74:
-la $4,L.77
-l.d $f18,U1
-mfc1.d $6,$f18
-jal printf
-L.75:
-l.d $f18,U1
-l.d $f16,One
-div.d $f16,$f16,$f18
-s.d $f16,W
-l.d $f16,Half
-sub.d $f10,$f16,$f18
-add.d $f16,$f10,$f16
-s.d $f16,F9
-l.d $f16,U2
-div.d $f18,$f16,$f18
-l.d $f16,L.78
-add.d $f12,$f18,$f16
-jal floor
-s.d $f0,Radix
-l.d $f18,Radix
-l.d $f16,E0
-c.eq.d $f18,$f16; bc1f L.79
-la $4,L.81
-jal printf
-b L.80
-L.79:
-la $4,L.82
-l.d $f18,Radix
-mfc1.d $6,$f18
-jal printf
-L.80:
-la $4,2
-l.d $f18,Eight
-l.d $f16,Radix
-add.d $f18,$f18,$f18
-c.le.d $f16,$f18; bc1f L.85
-la $18,1
-b L.86
-L.85:
-move $18,$0
-L.86:
-move $5,$18
-la $6,L.84
-jal TstCond
-la $4,3
-l.d $f18,Radix
-l.d $f16,Two
-c.eq.d $f18,$f16; bc1t L.92
-l.d $f16,L.93
-c.eq.d $f18,$f16; bc1t L.92
-l.d $f16,One
-c.eq.d $f18,$f16; bc1f L.89
-L.92:
-la $17,1
-b L.90
-L.89:
-move $17,$0
-L.90:
-move $5,$17
-la $6,L.88
-jal TstCond
-la $24,20
-sw $24,Milestone
-move $4,$0
-l.d $f18,Half
-l.d $f16,F9
-sub.d $f16,$f16,$f18
-c.lt.d $f16,$f18; bc1f L.96
-la $16,1
-b L.97
-L.96:
-move $16,$0
-L.97:
-move $5,$16
-la $6,L.95
-jal TstCond
-l.d $f18,F9
-s.d $f18,X
-la $24,1
-sw $24,I
-l.d $f18,Half
-l.d $f16,X
-sub.d $f16,$f16,$f18
-s.d $f16,Y
-l.d $f16,Y
-sub.d $f18,$f16,$f18
-s.d $f18,Z
-move $4,$0
-l.d $f18,X
-l.d $f16,One
-c.eq.d $f18,$f16; bc1f L.102
-l.d $f18,Z
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.100
-L.102:
-la $24,1
-sw $24,-20+240($sp)
-b L.101
-L.100:
-sw $0,-20+240($sp)
-L.101:
-lw $5,-20+240($sp)
-la $6,L.99
-jal TstCond
-l.d $f18,One
-l.d $f16,U2
-add.d $f10,$f18,$f16
-s.d $f10,X
-sw $0,I
-la $24,25
-sw $24,Milestone
-l.d $f10,Radix
-sub.d $f8,$f10,$f18
-s.d $f8,BMinusU2
-l.d $f8,BMinusU2
-sub.d $f16,$f8,$f16
-add.d $f16,$f16,$f18
-s.d $f16,BMinusU2
-c.eq.d $f10,$f18; bc1t L.103
-l.d $f12,U1
-jal log
-mov.d $f18,$f0
-s.d $f18,-32+240($sp)
-l.d $f12,Radix
-jal log
-l.d $f16,TwoForty
-neg.d $f16,$f16
-l.d $f10,-32+240($sp)
-mul.d $f16,$f16,$f10
-div.d $f18,$f16,$f0
-s.d $f18,X
-l.d $f18,Half
-l.d $f16,X
-add.d $f12,$f18,$f16
-jal floor
-s.d $f0,Y
-l.d $f18,X
-l.d $f16,Y
-sub.d $f12,$f18,$f16
-jal fabs
-l.d $f16,Four
-mul.d $f18,$f0,$f16
-l.d $f16,One
-c.lt.d $f18,$f16; bc1f L.105
-l.d $f18,Y
-s.d $f18,X
-L.105:
-l.d $f18,X
-l.d $f16,TwoForty
-div.d $f18,$f18,$f16
-s.d $f18,Precision
-l.d $f18,Half
-l.d $f16,Precision
-add.d $f12,$f18,$f16
-jal floor
-s.d $f0,Y
-l.d $f18,Precision
-l.d $f16,Y
-sub.d $f12,$f18,$f16
-jal fabs
-l.d $f16,TwoForty
-mul.d $f18,$f0,$f16
-l.d $f16,Half
-c.lt.d $f18,$f16; bc1f L.107
-l.d $f18,Y
-s.d $f18,Precision
-L.107:
-L.103:
-l.d $f18,Precision
-s.d $f18,-32+240($sp)
-mov.d $f12,$f18
-jal floor
-l.d $f16,-32+240($sp)
-c.eq.d $f16,$f0; bc1f L.111
-l.d $f18,Radix
-l.d $f16,One
-c.eq.d $f18,$f16; bc1f L.109
-L.111:
-la $4,L.112
-jal printf
-la $4,L.113
-jal printf
-L.109:
-l.d $f18,Radix
-l.d $f16,One
-c.eq.d $f18,$f16; bc1f L.114
-la $4,L.116
-jal printf
-b L.115
-L.114:
-la $4,L.117
-l.d $f18,Precision
-mfc1.d $6,$f18
-jal printf
-L.115:
-la $4,1
-l.d $f18,Nine
-l.d $f16,U2
-mul.d $f16,$f16,$f18
-mul.d $f18,$f16,$f18
-l.d $f16,TwoForty
-mul.d $f18,$f18,$f16
-l.d $f16,One
-c.lt.d $f18,$f16; bc1f L.120
-la $24,1
-sw $24,-36+240($sp)
-b L.121
-L.120:
-sw $0,-36+240($sp)
-L.121:
-lw $5,-36+240($sp)
-la $6,L.119
-jal TstCond
-la $24,30
-sw $24,Milestone
-l.d $f18,Four
-l.d $f16,Three
-l.d $f10,One
-div.d $f8,$f10,$f18
-div.d $f18,$f18,$f16
-sub.d $f18,$f18,$f10
-sub.d $f18,$f18,$f8
-mul.d $f18,$f18,$f16
-sub.d $f12,$f18,$f8
-jal fabs
-s.d $f0,X
-L.122:
-l.d $f18,X
-s.d $f18,Z2
-l.d $f18,One
-l.d $f16,Z2
-l.d $f10,Half
-mul.d $f10,$f10,$f16
-l.d $f8,ThirtyTwo
-mul.d $f8,$f8,$f16
-mul.d $f16,$f8,$f16
-add.d $f16,$f10,$f16
-add.d $f16,$f18,$f16
-sub.d $f18,$f16,$f18
-s.d $f18,X
-L.123:
-l.d $f18,X
-l.d $f16,Z2
-c.le.d $f16,$f18; bc1t L.125
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.122
-L.125:
-l.d $f18,Three
-l.d $f16,Four
-div.d $f10,$f18,$f16
-l.d $f8,Two
-div.d $f8,$f8,$f18
-sub.d $f10,$f10,$f8
-mul.d $f18,$f10,$f18
-l.d $f10,One
-div.d $f16,$f10,$f16
-sub.d $f12,$f18,$f16
-jal fabs
-s.d $f0,Z
-s.d $f0,Y
-s.d $f0,X
-L.126:
-l.d $f18,Z
-s.d $f18,Z1
-l.d $f18,One
-l.d $f16,Two
-div.d $f18,$f18,$f16
-l.d $f16,Z1
-l.d $f10,Half
-mul.d $f10,$f10,$f16
-l.d $f8,ThirtyTwo
-mul.d $f8,$f8,$f16
-mul.d $f16,$f8,$f16
-add.d $f16,$f10,$f16
-sub.d $f16,$f18,$f16
-add.d $f16,$f16,$f18
-sub.d $f16,$f18,$f16
-add.d $f18,$f16,$f18
-s.d $f18,Z
-L.127:
-l.d $f18,Z
-l.d $f16,Z1
-c.le.d $f16,$f18; bc1t L.129
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.126
-L.129:
-L.130:
-L.133:
-l.d $f18,Y
-s.d $f18,Y1
-l.d $f18,Half
-l.d $f16,Y1
-mul.d $f10,$f18,$f16
-l.d $f8,ThirtyTwo
-mul.d $f8,$f8,$f16
-mul.d $f16,$f8,$f16
-add.d $f16,$f10,$f16
-sub.d $f16,$f18,$f16
-add.d $f16,$f16,$f18
-sub.d $f16,$f18,$f16
-add.d $f18,$f16,$f18
-s.d $f18,Y
-L.134:
-l.d $f18,Y
-l.d $f16,Y1
-c.le.d $f16,$f18; bc1t L.136
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.133
-L.136:
-l.d $f18,X
-s.d $f18,X1
-l.d $f18,X1
-l.d $f16,F9
-l.d $f10,Half
-mul.d $f10,$f10,$f18
-l.d $f8,ThirtyTwo
-mul.d $f8,$f8,$f18
-mul.d $f18,$f8,$f18
-add.d $f18,$f10,$f18
-sub.d $f18,$f18,$f16
-add.d $f18,$f18,$f16
-s.d $f18,X
-L.131:
-l.d $f18,X
-l.d $f16,X1
-c.le.d $f16,$f18; bc1t L.137
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.130
-L.137:
-l.d $f18,X1
-l.d $f16,Y1
-c.eq.d $f18,$f16; bc1f L.140
-l.d $f16,Z1
-c.eq.d $f18,$f16; bc1t L.138
-L.140:
-la $4,1
-la $5,L.141
-jal BadCond
-la $4,L.142
-l.d $f18,X1
-mfc1.d $6,$f18
-l.d $f18,Y1
-s.d $f18,16($sp)
-l.d $f18,Z1
-s.d $f18,24($sp)
-jal printf
-la $4,L.143
-jal printf
-la $4,L.144
-jal printf
-la $4,L.145
-jal notify
-l.d $f18,U1
-l.d $f16,X1
-c.eq.d $f16,$f18; bc1t L.149
-l.d $f16,Y1
-c.eq.d $f16,$f18; bc1t L.149
-l.d $f16,Z1
-c.eq.d $f16,$f18; bc1f L.139
-L.149:
-la $4,L.150
-jal printf
-b L.139
-L.138:
-l.d $f18,Z1
-l.d $f16,U1
-c.eq.d $f18,$f16; bc1f L.153
-l.d $f18,Z2
-l.d $f16,U2
-c.eq.d $f18,$f16; bc1t L.151
-L.153:
-l.d $f18,Z1
-l.d $f16,U1
-c.lt.d $f18,$f16; bc1f L.156
-l.d $f18,Z2
-l.d $f16,U2
-c.lt.d $f18,$f16; bc1t L.154
-L.156:
-move $4,$0
-la $5,L.157
-jal BadCond
-la $4,L.158
-jal notify
-la $4,L.159
-l.d $f18,U1
-mfc1.d $6,$f18
-l.d $f16,Z1
-sub.d $f18,$f16,$f18
-s.d $f18,16($sp)
-jal printf
-la $4,L.160
-l.d $f18,U2
-mfc1.d $6,$f18
-l.d $f16,Z2
-sub.d $f18,$f16,$f18
-s.d $f18,16($sp)
-jal printf
-b L.155
-L.154:
-l.d $f18,Zero
-l.d $f16,Z1
-c.le.d $f16,$f18; bc1t L.163
-l.d $f16,Z2
-c.le.d $f16,$f18; bc1f L.161
-L.163:
-la $4,L.164
-l.d $f18,Radix
-mfc1.d $6,$f18
-jal printf
-la $4,L.165
-jal printf
-la $4,L.166
-l.d $f18,Z1
-mfc1.d $6,$f18
-l.d $f18,Z2
-s.d $f18,16($sp)
-jal printf
-la $4,L.167
-jal notify
-L.161:
-l.d $f18,Z1
-l.d $f16,Z2
-c.eq.d $f18,$f16; bc1f L.170
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1t L.168
-L.170:
-l.d $f18,Z1
-l.d $f16,U1
-div.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,Z2
-l.d $f16,U2
-div.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,X
-c.le.d $f18,$f16; bc1t L.171
-l.d $f18,Y
-s.d $f18,X
-L.171:
-l.d $f12,X
-jal log
-neg.d $f18,$f0
-s.d $f18,Q
-la $4,L.173
-jal printf
-l.d $f12,Radix
-jal log
-la $4,L.174
-l.d $f16,Q
-div.d $f18,$f16,$f0
-mfc1.d $6,$f18
-jal printf
-l.d $f12,L.93
-jal log
-la $4,L.175
-l.d $f16,Q
-div.d $f18,$f16,$f0
-mfc1.d $6,$f18
-jal printf
-L.168:
-la $4,L.150
-jal printf
-L.155:
-L.151:
-L.139:
-jal Pause
-la $24,35
-sw $24,Milestone
-l.d $f18,Radix
-l.d $f16,Two
-c.lt.d $f18,$f16; bc1t L.176
-l.d $f18,Radix
-l.d $f16,W
-mul.d $f18,$f18,$f18
-div.d $f18,$f16,$f18
-s.d $f18,X
-l.d $f18,X
-l.d $f16,One
-add.d $f16,$f18,$f16
-s.d $f16,Y
-l.d $f16,Y
-sub.d $f18,$f16,$f18
-s.d $f18,Z
-l.d $f18,Z
-l.d $f16,U2
-add.d $f10,$f18,$f16
-s.d $f10,T
-l.d $f10,T
-sub.d $f18,$f10,$f18
-s.d $f18,X
-move $4,$0
-l.d $f18,X
-c.eq.d $f18,$f16; bc1f L.180
-la $24,1
-sw $24,-40+240($sp)
-b L.181
-L.180:
-sw $0,-40+240($sp)
-L.181:
-lw $5,-40+240($sp)
-la $6,L.179
-jal TstCond
-l.d $f18,X
-l.d $f16,U2
-c.eq.d $f18,$f16; bc1f L.182
-la $4,L.184
-jal printf
-L.182:
-L.176:
-la $4,L.185
-jal printf
-l.d $f18,F9
-l.d $f16,One
-mul.d $f10,$f18,$f16
-s.d $f10,Y
-mul.d $f10,$f16,$f18
-s.d $f10,Z
-l.d $f10,Half
-sub.d $f18,$f18,$f10
-s.d $f18,X
-l.d $f18,X
-l.d $f8,Y
-sub.d $f8,$f8,$f10
-sub.d $f8,$f8,$f18
-s.d $f8,Y
-l.d $f8,Z
-sub.d $f10,$f8,$f10
-sub.d $f18,$f10,$f18
-s.d $f18,Z
-l.d $f18,U2
-add.d $f10,$f16,$f18
-s.d $f10,X
-l.d $f10,X
-l.d $f8,Radix
-mul.d $f6,$f10,$f8
-s.d $f6,T
-mul.d $f10,$f8,$f10
-s.d $f10,R
-l.d $f10,T
-sub.d $f10,$f10,$f8
-s.d $f10,X
-mul.d $f18,$f8,$f18
-l.d $f10,X
-sub.d $f10,$f10,$f18
-s.d $f10,X
-l.d $f10,R
-sub.d $f10,$f10,$f8
-s.d $f10,T
-l.d $f10,T
-sub.d $f18,$f10,$f18
-s.d $f18,T
-sub.d $f18,$f8,$f16
-l.d $f16,X
-mul.d $f16,$f16,$f18
-s.d $f16,X
-l.d $f16,T
-mul.d $f18,$f16,$f18
-s.d $f18,T
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.186
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.186
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1f L.186
-l.d $f16,T
-c.eq.d $f16,$f18; bc1f L.186
-la $24,1
-sw $24,GMult
-b L.187
-L.186:
-move $24,$0
-sw $24,GMult
-la $4,1
-move $5,$24
-la $6,L.188
-jal TstCond
-L.187:
-l.d $f18,Radix
-l.d $f16,U2
-mul.d $f18,$f18,$f16
-s.d $f18,Z
-l.d $f18,Z
-l.d $f16,One
-add.d $f16,$f16,$f18
-s.d $f16,X
-l.d $f16,X
-add.d $f18,$f16,$f18
-mul.d $f16,$f16,$f16
-sub.d $f12,$f18,$f16
-jal fabs
-l.d $f16,U2
-sub.d $f18,$f0,$f16
-s.d $f18,Y
-l.d $f18,One
-sub.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,X
-sub.d $f16,$f18,$f16
-mul.d $f18,$f18,$f18
-sub.d $f12,$f16,$f18
-jal fabs
-l.d $f16,U1
-sub.d $f18,$f0,$f16
-s.d $f18,Z
-move $4,$0
-l.d $f18,Zero
-l.d $f16,Y
-c.le.d $f16,$f18; bc1f L.191
-l.d $f16,Z
-c.le.d $f16,$f18; bc1f L.191
-la $24,1
-sw $24,-40+240($sp)
-b L.192
-L.191:
-sw $0,-40+240($sp)
-L.192:
-lw $5,-40+240($sp)
-la $6,L.190
-jal TstCond
-l.d $f18,One
-l.d $f16,U2
-sub.d $f10,$f18,$f16
-s.d $f10,Y
-add.d $f16,$f18,$f16
-s.d $f16,X
-l.d $f16,Y
-div.d $f16,$f18,$f16
-s.d $f16,Z
-l.d $f16,Z
-l.d $f10,X
-sub.d $f16,$f16,$f10
-s.d $f16,Y
-l.d $f16,Three
-div.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,Nine
-div.d $f16,$f16,$f18
-s.d $f16,Z
-l.d $f16,Z
-l.d $f10,X
-sub.d $f10,$f10,$f16
-s.d $f10,X
-l.d $f10,TwentySeven
-div.d $f18,$f18,$f10
-s.d $f18,T
-l.d $f18,T
-sub.d $f18,$f16,$f18
-s.d $f18,Z
-la $4,2
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.195
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.195
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1f L.195
-la $24,1
-sw $24,-44+240($sp)
-b L.196
-L.195:
-sw $0,-44+240($sp)
-L.196:
-lw $5,-44+240($sp)
-la $6,L.194
-jal TstCond
-l.d $f18,F9
-l.d $f16,One
-div.d $f10,$f18,$f16
-s.d $f10,Y
-l.d $f10,Half
-sub.d $f18,$f18,$f10
-s.d $f18,X
-l.d $f18,Y
-sub.d $f18,$f18,$f10
-l.d $f10,X
-sub.d $f18,$f18,$f10
-s.d $f18,Y
-l.d $f18,U2
-add.d $f18,$f16,$f18
-s.d $f18,X
-l.d $f18,X
-div.d $f16,$f18,$f16
-s.d $f16,T
-l.d $f16,T
-sub.d $f18,$f16,$f18
-s.d $f18,X
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.197
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.197
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1f L.197
-la $24,1
-sw $24,GDiv
-b L.198
-L.197:
-move $24,$0
-sw $24,GDiv
-la $4,1
-move $5,$24
-la $6,L.199
-jal TstCond
-L.198:
-l.d $f18,One
-l.d $f16,U2
-add.d $f16,$f18,$f16
-div.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,Half
-l.d $f16,X
-sub.d $f16,$f16,$f18
-sub.d $f18,$f16,$f18
-s.d $f18,Y
-la $4,1
-l.d $f18,Y
-l.d $f16,Zero
-c.lt.d $f18,$f16; bc1f L.202
-la $24,1
-sw $24,-48+240($sp)
-b L.203
-L.202:
-sw $0,-48+240($sp)
-L.203:
-lw $5,-48+240($sp)
-la $6,L.201
-jal TstCond
-l.d $f18,One
-l.d $f16,U2
-sub.d $f10,$f18,$f16
-s.d $f10,X
-l.d $f10,Radix
-mul.d $f16,$f10,$f16
-add.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,X
-mul.d $f16,$f18,$f10
-s.d $f16,Z
-l.d $f16,Y
-mul.d $f8,$f16,$f10
-s.d $f8,T
-l.d $f8,Z
-div.d $f8,$f8,$f10
-s.d $f8,R
-l.d $f8,T
-div.d $f10,$f8,$f10
-s.d $f10,StickyBit
-l.d $f10,R
-sub.d $f18,$f10,$f18
-s.d $f18,X
-l.d $f18,StickyBit
-sub.d $f18,$f18,$f16
-s.d $f18,Y
-move $4,$0
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.206
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.206
-la $24,1
-sw $24,-52+240($sp)
-b L.207
-L.206:
-sw $0,-52+240($sp)
-L.207:
-lw $5,-52+240($sp)
-la $6,L.205
-jal TstCond
-l.d $f18,One
-l.d $f16,U1
-sub.d $f16,$f18,$f16
-s.d $f16,Y
-l.d $f16,F9
-sub.d $f16,$f18,$f16
-s.d $f16,X
-l.d $f16,Y
-sub.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,Radix
-l.d $f16,U2
-sub.d $f16,$f18,$f16
-s.d $f16,T
-l.d $f16,BMinusU2
-sub.d $f16,$f18,$f16
-s.d $f16,Z
-l.d $f16,T
-sub.d $f18,$f18,$f16
-s.d $f18,T
-l.d $f18,U1
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.208
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.208
-l.d $f18,U2
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1f L.208
-l.d $f16,T
-c.eq.d $f16,$f18; bc1f L.208
-la $24,1
-sw $24,GAddSub
-b L.209
-L.208:
-move $24,$0
-sw $24,GAddSub
-la $4,1
-move $5,$24
-la $6,L.210
-jal TstCond
-L.209:
-l.d $f18,F9
-l.d $f16,One
-c.eq.d $f18,$f16; bc1t L.211
-sub.d $f18,$f18,$f16
-l.d $f16,Zero
-c.lt.d $f18,$f16; bc1t L.211
-la $4,1
-la $5,L.213
-jal BadCond
-la $4,L.214
-jal printf
-la $4,L.215
-jal printf
-la $4,L.216
-jal printf
-L.211:
-la $24,1
-lw $15,GMult
-bne $15,$24,L.217
-lw $15,GDiv
-bne $15,$24,L.217
-lw $15,GAddSub
-bne $15,$24,L.217
-la $4,L.219
-jal printf
-L.217:
-la $24,40
-sw $24,Milestone
-jal Pause
-la $4,L.220
-jal printf
-sw $0,RMult
-sw $0,RDiv
-sw $0,RAddSub
-l.d $f18,Two
-l.d $f16,Radix
-div.d $f16,$f16,$f18
-s.d $f16,RadixD2
-s.d $f18,A1
-sw $0,Done
-L.221:
-l.d $f18,Radix
-s.d $f18,AInvrse
-L.224:
-l.d $f18,AInvrse
-s.d $f18,X
-l.d $f16,A1
-div.d $f18,$f18,$f16
-s.d $f18,AInvrse
-L.225:
-l.d $f12,AInvrse
-jal floor
-l.d $f16,AInvrse
-c.eq.d $f0,$f16; bc1t L.224
-l.d $f18,X
-l.d $f16,One
-c.eq.d $f18,$f16; bc1t L.230
-l.d $f18,A1
-l.d $f16,Three
-c.le.d $f18,$f16; bc1t L.228
-L.230:
-la $24,1
-sw $24,-56+240($sp)
-b L.229
-L.228:
-sw $0,-56+240($sp)
-L.229:
-lw $24,-56+240($sp)
-sw $24,Done
-lw $24,Done
-bne $24,$0,L.231
-l.d $f18,Nine
-l.d $f16,One
-add.d $f18,$f18,$f16
-s.d $f18,A1
-L.231:
-L.222:
-lw $24,Done
-beq $24,$0,L.221
-l.d $f18,X
-l.d $f16,One
-c.eq.d $f18,$f16; bc1f L.233
-l.d $f18,Radix
-s.d $f18,A1
-L.233:
-l.d $f18,A1
-l.d $f16,One
-div.d $f16,$f16,$f18
-s.d $f16,AInvrse
-s.d $f18,X
-l.d $f18,AInvrse
-s.d $f18,Y
-sw $0,Done
-L.235:
-l.d $f18,Half
-l.d $f16,X
-l.d $f10,Y
-mul.d $f16,$f16,$f10
-sub.d $f16,$f16,$f18
-s.d $f16,Z
-move $4,$0
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1f L.240
-la $24,1
-sw $24,-56+240($sp)
-b L.241
-L.240:
-sw $0,-56+240($sp)
-L.241:
-lw $5,-56+240($sp)
-la $6,L.239
-jal TstCond
-l.d $f18,X
-l.d $f16,Radix
-c.eq.d $f18,$f16; bc1f L.243
-la $24,1
-sw $24,-60+240($sp)
-b L.244
-L.243:
-sw $0,-60+240($sp)
-L.244:
-lw $24,-60+240($sp)
-sw $24,Done
-l.d $f18,Radix
-s.d $f18,X
-l.d $f18,One
-l.d $f16,X
-div.d $f18,$f18,$f16
-s.d $f18,Y
-L.236:
-lw $24,Done
-beq $24,$0,L.235
-l.d $f18,One
-l.d $f16,U2
-add.d $f10,$f18,$f16
-s.d $f10,Y2
-sub.d $f18,$f18,$f16
-s.d $f18,Y1
-l.d $f18,OneAndHalf
-s.d $f18,-64+240($sp)
-sub.d $f10,$f18,$f16
-s.d $f10,X
-add.d $f10,$f18,$f16
-s.d $f10,Y
-l.d $f10,X
-l.d $f8,Y2
-sub.d $f6,$f10,$f16
-mul.d $f6,$f6,$f8
-s.d $f6,Z
-l.d $f6,Y
-l.d $f4,Y1
-mul.d $f18,$f6,$f4
-s.d $f18,T
-l.d $f18,Z
-sub.d $f18,$f18,$f10
-s.d $f18,Z
-l.d $f18,T
-sub.d $f18,$f18,$f10
-s.d $f18,T
-mul.d $f18,$f10,$f8
-s.d $f18,X
-add.d $f18,$f6,$f16
-mul.d $f18,$f18,$f4
-s.d $f18,Y
-l.d $f18,X
-l.d $f16,-64+240($sp)
-sub.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,Y
-l.d $f16,-64+240($sp)
-sub.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.245
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.245
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1f L.245
-l.d $f16,T
-c.le.d $f16,$f18; bc1f L.245
-l.d $f18,OneAndHalf
-l.d $f16,U2
-add.d $f10,$f18,$f16
-l.d $f8,Y2
-mul.d $f6,$f10,$f8
-s.d $f6,X
-sub.d $f18,$f18,$f16
-sub.d $f6,$f18,$f16
-s.d $f6,Y
-add.d $f10,$f10,$f16
-s.d $f10,Z
-l.d $f10,Y1
-mul.d $f18,$f18,$f10
-s.d $f18,T
-l.d $f18,Z
-add.d $f6,$f18,$f16
-s.d $f6,-72+240($sp)
-l.d $f4,X
-sub.d $f4,$f4,$f6
-s.d $f4,X
-l.d $f4,Y
-mul.d $f6,$f4,$f10
-s.d $f6,StickyBit
-mul.d $f18,$f18,$f8
-s.d $f18,S
-l.d $f18,T
-sub.d $f18,$f18,$f4
-s.d $f18,T
-sub.d $f18,$f16,$f4
-l.d $f6,StickyBit
-add.d $f18,$f18,$f6
-s.d $f18,Y
-l.d $f18,S
-l.d $f6,-72+240($sp)
-add.d $f6,$f6,$f16
-sub.d $f18,$f18,$f6
-s.d $f18,Z
-add.d $f18,$f8,$f16
-mul.d $f18,$f18,$f10
-s.d $f18,StickyBit
-mul.d $f18,$f8,$f10
-s.d $f18,Y1
-l.d $f18,StickyBit
-sub.d $f18,$f18,$f8
-s.d $f18,StickyBit
-l.d $f18,Y1
-l.d $f16,Half
-sub.d $f18,$f18,$f16
-s.d $f18,Y1
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.247
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.247
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1f L.247
-l.d $f16,T
-c.eq.d $f16,$f18; bc1f L.247
-l.d $f16,StickyBit
-c.eq.d $f16,$f18; bc1f L.247
-l.d $f18,Y1
-l.d $f16,Half
-c.eq.d $f18,$f16; bc1f L.247
-la $24,1
-sw $24,RMult
-la $4,L.249
-jal printf
-b L.248
-L.247:
-l.d $f18,U2
-l.d $f16,Zero
-l.d $f10,X
-add.d $f10,$f10,$f18
-c.eq.d $f10,$f16; bc1f L.250
-l.d $f10,Y
-c.lt.d $f10,$f16; bc1f L.250
-l.d $f10,Z
-add.d $f10,$f10,$f18
-c.eq.d $f10,$f16; bc1f L.250
-l.d $f10,T
-c.lt.d $f10,$f16; bc1f L.250
-l.d $f10,StickyBit
-add.d $f18,$f10,$f18
-c.eq.d $f18,$f16; bc1f L.250
-l.d $f18,Y1
-l.d $f16,Half
-c.lt.d $f18,$f16; bc1f L.250
-la $24,2
-sw $24,RMult
-la $4,L.252
-jal printf
-b L.251
-L.250:
-la $4,L.253
-jal printf
-L.251:
-L.248:
-lw $24,RMult
-la $15,1
-bne $24,$15,L.246
-lw $24,GMult
-bne $24,$0,L.246
-la $4,L.256
-jal notify
-b L.246
-L.245:
-la $4,L.253
-jal printf
-L.246:
-la $24,45
-sw $24,Milestone
-l.d $f18,One
-l.d $f16,U2
-add.d $f10,$f18,$f16
-s.d $f10,Y2
-sub.d $f18,$f18,$f16
-s.d $f18,Y1
-l.d $f18,OneAndHalf
-s.d $f18,-80+240($sp)
-add.d $f10,$f18,$f16
-s.d $f10,-72+240($sp)
-add.d $f8,$f10,$f16
-s.d $f8,Z
-l.d $f8,Z
-l.d $f6,Y2
-div.d $f4,$f8,$f6
-s.d $f4,X
-sub.d $f4,$f18,$f16
-sub.d $f4,$f4,$f16
-s.d $f4,T
-l.d $f4,T
-l.d $f10,Y1
-sub.d $f18,$f4,$f16
-div.d $f18,$f18,$f10
-s.d $f18,Y
-add.d $f18,$f8,$f16
-div.d $f18,$f18,$f6
-s.d $f18,Z
-l.d $f18,X
-l.d $f8,-80+240($sp)
-sub.d $f18,$f18,$f8
-s.d $f18,X
-l.d $f18,Y
-sub.d $f18,$f18,$f4
-s.d $f18,Y
-div.d $f18,$f4,$f10
-s.d $f18,T
-l.d $f18,Z
-l.d $f10,-72+240($sp)
-sub.d $f18,$f18,$f10
-s.d $f18,Z
-l.d $f18,-80+240($sp)
-sub.d $f18,$f16,$f18
-l.d $f16,T
-add.d $f18,$f18,$f16
-s.d $f18,T
-l.d $f18,Zero
-l.d $f16,X
-c.le.d $f16,$f18; bc1f L.257
-l.d $f16,Y
-c.le.d $f16,$f18; bc1f L.257
-l.d $f16,Z
-c.le.d $f16,$f18; bc1f L.257
-l.d $f16,T
-c.le.d $f16,$f18; bc1f L.257
-l.d $f18,OneAndHalf
-l.d $f16,Y2
-div.d $f10,$f18,$f16
-s.d $f10,X
-l.d $f10,U2
-sub.d $f8,$f18,$f10
-s.d $f8,Y
-add.d $f8,$f18,$f10
-s.d $f8,Z
-l.d $f8,Y
-l.d $f6,X
-sub.d $f6,$f6,$f8
-s.d $f6,X
-l.d $f6,Y1
-div.d $f4,$f18,$f6
-s.d $f4,T
-div.d $f8,$f8,$f6
-s.d $f8,Y
-l.d $f8,Z
-l.d $f6,T
-add.d $f4,$f8,$f10
-sub.d $f6,$f6,$f4
-s.d $f6,T
-l.d $f6,Y
-sub.d $f6,$f6,$f8
-s.d $f6,Y
-div.d $f8,$f8,$f16
-s.d $f8,Z
-add.d $f10,$f16,$f10
-div.d $f10,$f10,$f16
-s.d $f10,Y1
-l.d $f10,Z
-sub.d $f18,$f10,$f18
-s.d $f18,Z
-l.d $f18,Y1
-sub.d $f18,$f18,$f16
-s.d $f18,Y2
-l.d $f18,F9
-l.d $f16,U1
-sub.d $f16,$f18,$f16
-div.d $f18,$f16,$f18
-s.d $f18,Y1
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.259
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.259
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1f L.259
-l.d $f16,T
-c.eq.d $f16,$f18; bc1f L.259
-l.d $f16,Y2
-c.eq.d $f16,$f18; bc1f L.259
-c.eq.d $f16,$f18; bc1f L.259
-l.d $f18,Half
-l.d $f16,Y1
-sub.d $f16,$f16,$f18
-l.d $f10,F9
-sub.d $f18,$f10,$f18
-c.eq.d $f16,$f18; bc1f L.259
-la $24,1
-sw $24,RDiv
-la $4,L.261
-jal printf
-lw $24,GDiv
-bne $24,$0,L.260
-la $4,L.264
-jal notify
-b L.260
-L.259:
-l.d $f18,Zero
-l.d $f16,X
-c.lt.d $f16,$f18; bc1f L.265
-l.d $f16,Y
-c.lt.d $f16,$f18; bc1f L.265
-l.d $f16,Z
-c.lt.d $f16,$f18; bc1f L.265
-l.d $f16,T
-c.lt.d $f16,$f18; bc1f L.265
-l.d $f16,Y2
-c.lt.d $f16,$f18; bc1f L.265
-l.d $f18,Half
-l.d $f16,Y1
-sub.d $f16,$f16,$f18
-l.d $f10,F9
-sub.d $f18,$f10,$f18
-c.lt.d $f16,$f18; bc1f L.265
-la $24,2
-sw $24,RDiv
-la $4,L.267
-jal printf
-L.265:
-L.260:
-L.257:
-lw $24,RDiv
-bne $24,$0,L.268
-la $4,L.270
-jal printf
-L.268:
-l.d $f18,Radix
-l.d $f16,One
-div.d $f16,$f16,$f18
-s.d $f16,BInvrse
-move $4,$0
-l.d $f16,Half
-l.d $f10,BInvrse
-mul.d $f18,$f10,$f18
-sub.d $f18,$f18,$f16
-c.eq.d $f18,$f16; bc1f L.273
-la $24,1
-sw $24,-84+240($sp)
-b L.274
-L.273:
-sw $0,-84+240($sp)
-L.274:
-lw $5,-84+240($sp)
-la $6,L.272
-jal TstCond
-la $24,50
-sw $24,Milestone
-move $4,$0
-l.d $f18,Half
-l.d $f16,F9
-l.d $f10,U1
-add.d $f16,$f16,$f10
-sub.d $f16,$f16,$f18
-c.eq.d $f16,$f18; bc1f L.277
-l.d $f18,One
-l.d $f16,BMinusU2
-l.d $f10,U2
-add.d $f16,$f16,$f10
-sub.d $f16,$f16,$f18
-l.d $f10,Radix
-sub.d $f18,$f10,$f18
-c.eq.d $f16,$f18; bc1f L.277
-la $24,1
-sw $24,-88+240($sp)
-b L.278
-L.277:
-sw $0,-88+240($sp)
-L.278:
-lw $5,-88+240($sp)
-la $6,L.276
-jal TstCond
-l.d $f18,One
-l.d $f16,U1
-mul.d $f16,$f16,$f16
-sub.d $f16,$f18,$f16
-s.d $f16,X
-l.d $f16,U2
-sub.d $f10,$f18,$f16
-mul.d $f16,$f16,$f10
-add.d $f16,$f18,$f16
-s.d $f16,Y
-l.d $f16,Half
-l.d $f10,F9
-sub.d $f10,$f10,$f16
-s.d $f10,Z
-l.d $f10,X
-sub.d $f16,$f10,$f16
-l.d $f10,Z
-sub.d $f16,$f16,$f10
-s.d $f16,X
-l.d $f16,Y
-sub.d $f18,$f16,$f18
-s.d $f18,Y
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.279
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.279
-la $24,2
-sw $24,RAddSub
-la $4,L.281
-jal printf
-L.279:
-lw $24,GAddSub
-la $15,1
-bne $24,$15,L.282
-l.d $f18,Half
-l.d $f16,U2
-add.d $f10,$f18,$f16
-mul.d $f10,$f10,$f16
-s.d $f10,X
-sub.d $f18,$f18,$f16
-mul.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,One
-l.d $f10,X
-add.d $f10,$f18,$f10
-s.d $f10,X
-l.d $f10,Y
-add.d $f10,$f18,$f10
-s.d $f10,Y
-add.d $f16,$f18,$f16
-l.d $f10,X
-sub.d $f16,$f16,$f10
-s.d $f16,X
-l.d $f16,Y
-sub.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.284
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.284
-l.d $f18,Half
-l.d $f16,U2
-l.d $f10,U1
-add.d $f8,$f18,$f16
-mul.d $f8,$f8,$f10
-s.d $f8,X
-sub.d $f18,$f18,$f16
-mul.d $f18,$f18,$f10
-s.d $f18,Y
-l.d $f18,One
-l.d $f16,X
-sub.d $f16,$f18,$f16
-s.d $f16,X
-l.d $f16,Y
-sub.d $f16,$f18,$f16
-s.d $f16,Y
-l.d $f16,F9
-l.d $f10,X
-sub.d $f16,$f16,$f10
-s.d $f16,X
-l.d $f16,Y
-sub.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,Zero
-l.d $f16,X
-c.eq.d $f16,$f18; bc1f L.286
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.286
-la $24,1
-sw $24,RAddSub
-la $4,L.288
-jal printf
-lw $24,GAddSub
-bne $24,$0,L.283
-la $4,L.291
-jal notify
-b L.283
-L.286:
-la $4,L.292
-jal printf
-b L.283
-L.284:
-la $4,L.292
-jal printf
-b L.283
-L.282:
-la $4,L.292
-jal printf
-L.283:
-l.d $f18,One
-s.d $f18,S
-l.d $f16,Half
-add.d $f10,$f18,$f16
-mul.d $f10,$f16,$f10
-add.d $f10,$f18,$f10
-s.d $f10,X
-l.d $f10,U2
-add.d $f18,$f18,$f10
-mul.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,X
-l.d $f16,Y
-sub.d $f10,$f18,$f16
-s.d $f10,Z
-sub.d $f18,$f16,$f18
-s.d $f18,T
-l.d $f18,Z
-l.d $f16,T
-add.d $f18,$f18,$f16
-s.d $f18,StickyBit
-l.d $f18,StickyBit
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.293
-l.d $f18,Zero
-s.d $f18,S
-la $4,3
-la $5,L.295
-jal BadCond
-L.293:
-l.d $f18,Zero
-s.d $f18,StickyBit
-la $24,1
-lw $15,GMult
-bne $15,$24,L.296
-lw $15,GDiv
-bne $15,$24,L.296
-lw $15,GAddSub
-bne $15,$24,L.296
-lw $15,RMult
-bne $15,$24,L.296
-lw $15,RDiv
-bne $15,$24,L.296
-lw $15,RAddSub
-bne $15,$24,L.296
-l.d $f12,RadixD2
-jal floor
-l.d $f16,RadixD2
-c.eq.d $f0,$f16; bc1f L.296
-la $4,L.298
-jal printf
-l.d $f18,Half
-l.d $f16,U2
-l.d $f10,U1
-add.d $f10,$f18,$f10
-mul.d $f10,$f10,$f16
-s.d $f10,X
-mul.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,One
-l.d $f16,Y
-add.d $f16,$f18,$f16
-s.d $f16,Z
-l.d $f16,X
-add.d $f18,$f18,$f16
-s.d $f18,T
-l.d $f18,One
-l.d $f16,Z
-sub.d $f16,$f16,$f18
-l.d $f10,Zero
-c.le.d $f16,$f10; bc1f L.299
-l.d $f16,T
-sub.d $f18,$f16,$f18
-l.d $f16,U2
-c.lt.d $f18,$f16; bc1t L.299
-l.d $f18,T
-l.d $f16,Y
-add.d $f18,$f18,$f16
-s.d $f18,Z
-l.d $f18,Z
-l.d $f16,X
-sub.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,T
-l.d $f16,Z
-sub.d $f16,$f16,$f18
-l.d $f10,U2
-c.lt.d $f16,$f10; bc1t L.301
-l.d $f16,Y
-sub.d $f18,$f16,$f18
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.301
-l.d $f18,Half
-l.d $f16,U1
-add.d $f10,$f18,$f16
-mul.d $f10,$f10,$f16
-s.d $f10,X
-mul.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,One
-l.d $f16,Y
-sub.d $f16,$f18,$f16
-s.d $f16,Z
-l.d $f16,X
-sub.d $f18,$f18,$f16
-s.d $f18,T
-l.d $f18,Zero
-l.d $f16,Z
-l.d $f10,One
-sub.d $f16,$f16,$f10
-c.eq.d $f16,$f18; bc1f L.303
-l.d $f16,T
-l.d $f10,F9
-sub.d $f16,$f16,$f10
-c.eq.d $f16,$f18; bc1f L.303
-l.d $f18,U1
-l.d $f16,Half
-sub.d $f16,$f16,$f18
-mul.d $f18,$f16,$f18
-s.d $f18,Z
-l.d $f18,F9
-l.d $f16,Z
-sub.d $f16,$f18,$f16
-s.d $f16,T
-l.d $f16,Y
-sub.d $f18,$f18,$f16
-s.d $f18,Q
-l.d $f18,F9
-l.d $f16,Zero
-l.d $f10,T
-sub.d $f10,$f10,$f18
-c.eq.d $f10,$f16; bc1f L.305
-l.d $f10,U1
-sub.d $f18,$f18,$f10
-l.d $f10,Q
-sub.d $f18,$f18,$f10
-c.eq.d $f18,$f16; bc1f L.305
-l.d $f18,One
-l.d $f16,U2
-l.d $f10,OneAndHalf
-add.d $f8,$f18,$f16
-mul.d $f8,$f8,$f10
-s.d $f8,Z
-add.d $f10,$f10,$f16
-l.d $f8,Z
-sub.d $f10,$f10,$f8
-add.d $f10,$f10,$f16
-s.d $f10,T
-l.d $f10,Radix
-l.d $f8,Half
-div.d $f8,$f8,$f10
-add.d $f8,$f18,$f8
-s.d $f8,X
-mul.d $f16,$f10,$f16
-add.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,X
-l.d $f16,Y
-mul.d $f18,$f18,$f16
-s.d $f18,Z
-l.d $f18,Zero
-l.d $f16,T
-c.eq.d $f16,$f18; bc1f L.307
-l.d $f16,X
-l.d $f10,Radix
-l.d $f8,U2
-mul.d $f10,$f10,$f8
-add.d $f16,$f16,$f10
-l.d $f10,Z
-sub.d $f16,$f16,$f10
-c.eq.d $f16,$f18; bc1f L.307
-l.d $f18,Radix
-l.d $f16,Two
-c.eq.d $f18,$f16; bc1t L.309
-l.d $f18,Two
-l.d $f16,U2
-add.d $f16,$f18,$f16
-s.d $f16,X
-l.d $f16,X
-div.d $f18,$f16,$f18
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,One
-sub.d $f18,$f18,$f16
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.310
-l.d $f18,S
-s.d $f18,StickyBit
-b L.310
-L.309:
-l.d $f18,S
-s.d $f18,StickyBit
-L.310:
-L.307:
-L.305:
-L.303:
-L.301:
-L.299:
-L.296:
-l.d $f18,StickyBit
-l.d $f16,One
-c.eq.d $f18,$f16; bc1f L.313
-la $4,L.315
-jal printf
-b L.314
-L.313:
-la $4,L.316
-jal printf
-L.314:
-la $4,3
-lw $15,GMult
-beq $15,$0,L.319
-lw $15,GDiv
-beq $15,$0,L.319
-lw $15,GAddSub
-beq $15,$0,L.319
-lw $15,RMult
-beq $15,$0,L.319
-lw $15,RDiv
-beq $15,$0,L.319
-lw $15,RAddSub
-beq $15,$0,L.319
-la $24,1
-sw $24,-92+240($sp)
-b L.320
-L.319:
-sw $0,-92+240($sp)
-L.320:
-lw $5,-92+240($sp)
-la $6,L.318
-jal TstCond
-la $24,60
-sw $24,Milestone
-la $4,L.44
-jal printf
-la $4,L.321
-jal printf
-la $4,L.322
-lw $5,NoTrials
-jal printf
-l.d $f12,L.323
-jal sqrt
-s.d $f0,Random9
-l.d $f18,Third
-s.d $f18,Random1
-la $24,1
-sw $24,I
-L.324:
-jal Random
-s.d $f0,X
-jal Random
-s.d $f0,Y
-l.d $f18,Y
-l.d $f16,X
-mul.d $f10,$f18,$f16
-s.d $f10,Z9
-mul.d $f18,$f16,$f18
-s.d $f18,Z
-l.d $f18,Z
-l.d $f16,Z9
-sub.d $f18,$f18,$f16
-s.d $f18,Z9
-lw $24,I
-la $24,1($24)
-sw $24,I
-L.325:
-lw $24,I
-lw $15,NoTrials
-bgt $24,$15,L.327
-l.d $f18,Z9
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.324
-L.327:
-lw $24,I
-lw $15,NoTrials
-bne $24,$15,L.328
-l.d $f18,One
-l.d $f16,Half
-l.d $f10,Three
-div.d $f16,$f16,$f10
-add.d $f16,$f18,$f16
-s.d $f16,Random1
-l.d $f10,U2
-l.d $f8,U1
-add.d $f10,$f10,$f8
-add.d $f18,$f10,$f18
-s.d $f18,Random2
-l.d $f10,Random1
-l.d $f8,Random2
-mul.d $f6,$f10,$f8
-s.d $f6,Z
-mul.d $f10,$f8,$f10
-s.d $f10,Y
-mul.d $f18,$f16,$f18
-sub.d $f18,$f18,$f18
-s.d $f18,Z9
-L.328:
-lw $24,I
-lw $15,NoTrials
-beq $24,$15,L.330
-l.d $f18,Z9
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.330
-la $4,2
-la $5,L.332
-jal BadCond
-b L.331
-L.330:
-la $4,L.333
-lw $5,NoTrials
-jal printf
-L.331:
-la $24,70
-sw $24,Milestone
-la $4,L.334
-jal printf
-l.d $f18,Zero
-s.d $f18,-104+240($sp)
-mov.d $f12,$f18
-jal sqrt
-l.d $f16,-104+240($sp)
-c.eq.d $f16,$f0; bc1f L.337
-l.d $f18,Zero
-neg.d $f18,$f18
-s.d $f18,-112+240($sp)
-mov.d $f12,$f18
-jal sqrt
-l.d $f16,-112+240($sp)
-c.eq.d $f16,$f0; bc1f L.337
-l.d $f18,One
-s.d $f18,-120+240($sp)
-mov.d $f12,$f18
-jal sqrt
-mov.d $f18,$f0
-l.d $f16,-120+240($sp)
-c.eq.d $f16,$f18; bc1f L.337
-la $24,1
-sw $24,-96+240($sp)
-b L.338
-L.337:
-sw $0,-96+240($sp)
-L.338:
-move $4,$0
-lw $5,-96+240($sp)
-la $6,L.336
-jal TstCond
-l.d $f18,Zero
-s.d $f18,MinSqEr
-s.d $f18,MaxSqEr
-s.d $f18,J
-l.d $f18,Radix
-s.d $f18,X
-l.d $f18,U2
-s.d $f18,OneUlp
-la $4,1
-jal SqXMinX
-l.d $f18,BInvrse
-s.d $f18,X
-l.d $f16,U1
-mul.d $f18,$f18,$f16
-s.d $f18,OneUlp
-la $4,1
-jal SqXMinX
-l.d $f18,U1
-s.d $f18,X
-mul.d $f18,$f18,$f18
-s.d $f18,OneUlp
-la $4,1
-jal SqXMinX
-l.d $f18,J
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.339
-jal Pause
-L.339:
-la $4,L.341
-lw $5,NoTrials
-jal printf
-l.d $f18,Zero
-s.d $f18,J
-l.d $f18,Two
-s.d $f18,X
-l.d $f18,Radix
-s.d $f18,Y
-l.d $f16,One
-c.eq.d $f18,$f16; bc1t L.342
-L.344:
-l.d $f18,Y
-s.d $f18,X
-l.d $f16,Radix
-mul.d $f18,$f16,$f18
-s.d $f18,Y
-L.345:
-l.d $f18,Y
-l.d $f16,X
-sub.d $f18,$f18,$f16
-lw $24,NoTrials
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-c.lt.d $f18,$f16; bc1t L.344
-L.342:
-l.d $f18,X
-l.d $f16,U2
-mul.d $f18,$f18,$f16
-s.d $f18,OneUlp
-la $24,1
-sw $24,I
-b L.348
-L.347:
-l.d $f18,X
-l.d $f16,One
-add.d $f18,$f18,$f16
-s.d $f18,X
-la $4,2
-jal SqXMinX
-l.d $f18,J
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1t L.350
-b L.349
-L.350:
-lw $24,I
-la $24,1($24)
-sw $24,I
-L.348:
-lw $24,I
-lw $15,NoTrials
-ble $24,$15,L.347
-L.349:
-la $4,L.352
-jal printf
-la $24,-1
-sw $24,I
-l.d $f18,BMinusU2
-s.d $f18,X
-l.d $f18,Radix
-s.d $f18,Y
-l.d $f16,U2
-mul.d $f16,$f18,$f16
-add.d $f18,$f18,$f16
-s.d $f18,Z
-sw $0,NotMonot
-sw $0,Monot
-b L.354
-L.353:
-lw $24,I
-la $24,1($24)
-sw $24,I
-l.d $f12,X
-jal sqrt
-s.d $f0,X
-l.d $f12,Y
-jal sqrt
-s.d $f0,Q
-l.d $f12,Z
-jal sqrt
-s.d $f0,Z
-l.d $f18,Q
-l.d $f16,X
-c.le.d $f16,$f18; bc1f L.358
-l.d $f16,Z
-c.le.d $f18,$f16; bc1t L.356
-L.358:
-la $24,1
-sw $24,NotMonot
-b L.357
-L.356:
-l.d $f18,Q
-l.d $f16,Half
-add.d $f12,$f18,$f16
-jal floor
-s.d $f0,Q
-lw $24,I
-bgt $24,$0,L.361
-l.d $f18,Q
-l.d $f16,Radix
-mul.d $f18,$f18,$f18
-c.eq.d $f16,$f18; bc1f L.359
-L.361:
-la $24,1
-sw $24,Monot
-b L.360
-L.359:
-lw $24,I
-ble $24,$0,L.362
-lw $24,I
-la $15,1
-ble $24,$15,L.364
-la $24,1
-sw $24,Monot
-b L.363
-L.364:
-l.d $f18,Y
-l.d $f16,BInvrse
-mul.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,U1
-sub.d $f10,$f18,$f16
-s.d $f10,X
-add.d $f18,$f18,$f16
-s.d $f18,Z
-b L.363
-L.362:
-l.d $f18,Q
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,U2
-sub.d $f10,$f18,$f16
-s.d $f10,X
-add.d $f18,$f18,$f16
-s.d $f18,Z
-L.363:
-L.360:
-L.357:
-L.354:
-lw $15,NotMonot
-bne $15,$0,L.366
-lw $15,Monot
-beq $15,$0,L.353
-L.366:
-lw $24,Monot
-beq $24,$0,L.367
-la $4,L.369
-jal printf
-b L.368
-L.367:
-la $4,2
-la $5,L.157
-jal BadCond
-la $4,L.370
-l.d $f18,Y
-mfc1.d $6,$f18
-jal printf
-L.368:
-la $24,80
-sw $24,Milestone
-l.d $f18,Half
-l.d $f16,MinSqEr
-add.d $f16,$f16,$f18
-s.d $f16,MinSqEr
-l.d $f16,MaxSqEr
-sub.d $f18,$f16,$f18
-s.d $f18,MaxSqEr
-l.d $f18,One
-l.d $f16,U2
-add.d $f12,$f18,$f16
-jal sqrt
-l.d $f16,One
-l.d $f10,U2
-sub.d $f18,$f0,$f16
-div.d $f18,$f18,$f10
-s.d $f18,Y
-l.d $f18,Y
-sub.d $f18,$f18,$f16
-l.d $f16,Eight
-div.d $f16,$f10,$f16
-add.d $f18,$f18,$f16
-s.d $f18,SqEr
-l.d $f18,SqEr
-l.d $f16,MaxSqEr
-c.le.d $f18,$f16; bc1t L.371
-l.d $f18,SqEr
-s.d $f18,MaxSqEr
-L.371:
-l.d $f18,Y
-l.d $f16,U2
-l.d $f10,Eight
-div.d $f16,$f16,$f10
-add.d $f18,$f18,$f16
-s.d $f18,SqEr
-l.d $f18,SqEr
-l.d $f16,MinSqEr
-c.lt.d $f18,$f16; bc1f L.373
-l.d $f18,SqEr
-s.d $f18,MinSqEr
-L.373:
-l.d $f12,F9
-jal sqrt
-l.d $f16,U2
-l.d $f10,U1
-sub.d $f18,$f0,$f16
-l.d $f8,One
-sub.d $f16,$f8,$f16
-sub.d $f18,$f18,$f16
-div.d $f18,$f18,$f10
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,Eight
-div.d $f16,$f10,$f16
-add.d $f18,$f18,$f16
-s.d $f18,SqEr
-l.d $f18,SqEr
-l.d $f16,MaxSqEr
-c.le.d $f18,$f16; bc1t L.375
-l.d $f18,SqEr
-s.d $f18,MaxSqEr
-L.375:
-l.d $f18,Y
-l.d $f16,One
-add.d $f18,$f18,$f16
-l.d $f16,U1
-l.d $f10,Eight
-div.d $f16,$f16,$f10
-add.d $f18,$f18,$f16
-s.d $f18,SqEr
-l.d $f18,SqEr
-l.d $f16,MinSqEr
-c.lt.d $f18,$f16; bc1f L.377
-l.d $f18,SqEr
-s.d $f18,MinSqEr
-L.377:
-l.d $f18,U2
-s.d $f18,OneUlp
-l.d $f18,OneUlp
-s.d $f18,X
-la $24,1
-sw $24,Indx
-L.379:
-l.d $f18,X
-l.d $f16,U1
-add.d $f16,$f18,$f16
-add.d $f18,$f16,$f18
-l.d $f16,F9
-add.d $f12,$f18,$f16
-jal sqrt
-s.d $f0,Y
-l.d $f18,U2
-l.d $f16,X
-l.d $f10,OneUlp
-l.d $f8,Y
-sub.d $f8,$f8,$f18
-l.d $f6,One
-sub.d $f18,$f6,$f18
-add.d $f18,$f18,$f16
-sub.d $f18,$f8,$f18
-div.d $f18,$f18,$f10
-s.d $f18,Y
-l.d $f18,Half
-l.d $f8,U1
-sub.d $f8,$f8,$f16
-l.d $f6,F9
-add.d $f8,$f8,$f6
-mul.d $f8,$f8,$f18
-mul.d $f8,$f8,$f16
-mul.d $f16,$f8,$f16
-div.d $f16,$f16,$f10
-s.d $f16,Z
-l.d $f16,Y
-add.d $f18,$f16,$f18
-l.d $f16,Z
-add.d $f18,$f18,$f16
-s.d $f18,SqEr
-l.d $f18,SqEr
-l.d $f16,MinSqEr
-c.lt.d $f18,$f16; bc1f L.383
-l.d $f18,SqEr
-s.d $f18,MinSqEr
-L.383:
-l.d $f18,Y
-l.d $f16,Half
-sub.d $f18,$f18,$f16
-l.d $f16,Z
-add.d $f18,$f18,$f16
-s.d $f18,SqEr
-l.d $f18,SqEr
-l.d $f16,MaxSqEr
-c.le.d $f18,$f16; bc1t L.385
-l.d $f18,SqEr
-s.d $f18,MaxSqEr
-L.385:
-lw $24,Indx
-la $15,1
-beq $24,$15,L.389
-la $15,3
-bne $24,$15,L.387
-L.389:
-l.d $f12,X
-jal Sign
-mov.d $f18,$f0
-s.d $f18,-128+240($sp)
-l.d $f12,OneUlp
-jal sqrt
-l.d $f16,Eight
-l.d $f10,Nine
-mul.d $f18,$f10,$f0
-div.d $f12,$f16,$f18
-jal floor
-l.d $f16,OneUlp
-l.d $f10,-128+240($sp)
-mul.d $f16,$f16,$f10
-mul.d $f18,$f16,$f0
-s.d $f18,X
-b L.388
-L.387:
-l.d $f18,U1
-s.d $f18,OneUlp
-l.d $f18,OneUlp
-neg.d $f18,$f18
-s.d $f18,X
-L.388:
-L.380:
-lw $24,Indx
-la $24,1($24)
-sw $24,Indx
-lw $24,Indx
-la $15,3
-ble $24,$15,L.379
-la $24,85
-sw $24,Milestone
-sw $0,SqRWrng
-sw $0,Anomaly
-sw $0,RSqrt
-l.d $f18,Radix
-l.d $f16,One
-c.eq.d $f18,$f16; bc1t L.390
-la $4,L.392
-jal printf
-l.d $f18,Precision
-s.d $f18,-128+240($sp)
-mov.d $f12,$f18
-jal floor
-mov.d $f18,$f0
-l.d $f12,Radix
-l.d $f16,One
-l.d $f10,-128+240($sp)
-add.d $f16,$f16,$f10
-sub.d $f14,$f16,$f18
-jal pow
-mov.d $f18,$f0
-l.d $f16,Half
-add.d $f12,$f16,$f18
-jal floor
-s.d $f0,D
-l.d $f18,D
-l.d $f16,Radix
-div.d $f16,$f18,$f16
-s.d $f16,X
-l.d $f16,A1
-div.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,X
-s.d $f18,-136+240($sp)
-mov.d $f12,$f18
-jal floor
-l.d $f16,-136+240($sp)
-c.eq.d $f16,$f0; bc1f L.395
-l.d $f18,Y
-s.d $f18,-144+240($sp)
-mov.d $f12,$f18
-jal floor
-l.d $f16,-144+240($sp)
-c.eq.d $f16,$f0; bc1t L.393
-L.395:
-la $24,1
-sw $24,Anomaly
-b L.394
-L.393:
-l.d $f18,Zero
-s.d $f18,X
-l.d $f18,X
-s.d $f18,Z2
-l.d $f18,One
-s.d $f18,Y
-l.d $f16,Y
-s.d $f16,Y2
-l.d $f16,Radix
-sub.d $f18,$f16,$f18
-s.d $f18,Z1
-l.d $f18,Four
-l.d $f16,D
-mul.d $f18,$f18,$f16
-s.d $f18,FourD
-L.396:
-l.d $f18,Y2
-l.d $f16,Z2
-c.le.d $f18,$f16; bc1t L.399
-l.d $f18,Radix
-s.d $f18,Q
-l.d $f18,Y
-s.d $f18,Y1
-L.401:
-l.d $f18,Q
-s.d $f18,-152+240($sp)
-l.d $f16,Half
-l.d $f10,Y1
-div.d $f10,$f18,$f10
-sub.d $f12,$f16,$f10
-jal floor
-l.d $f16,Y1
-mul.d $f18,$f0,$f16
-l.d $f16,-152+240($sp)
-add.d $f12,$f16,$f18
-jal fabs
-s.d $f0,X1
-l.d $f18,Y1
-s.d $f18,Q
-l.d $f18,X1
-s.d $f18,Y1
-L.402:
-l.d $f18,X1
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.401
-l.d $f18,Q
-l.d $f16,One
-c.le.d $f18,$f16; bc1f L.404
-l.d $f18,Y2
-s.d $f18,Z2
-l.d $f18,Y
-s.d $f18,Z
-L.404:
-L.399:
-l.d $f18,Y
-l.d $f16,Two
-add.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,X
-l.d $f16,Eight
-add.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,Y2
-l.d $f16,X
-add.d $f18,$f18,$f16
-s.d $f18,Y2
-l.d $f18,Y2
-l.d $f16,FourD
-c.lt.d $f18,$f16; bc1t L.406
-l.d $f18,Y2
-l.d $f16,FourD
-sub.d $f18,$f18,$f16
-s.d $f18,Y2
-L.406:
-L.397:
-l.d $f18,Y
-l.d $f16,D
-c.lt.d $f18,$f16; bc1t L.396
-l.d $f18,FourD
-l.d $f16,Z2
-sub.d $f16,$f18,$f16
-s.d $f16,X8
-l.d $f16,X8
-l.d $f10,Z
-mul.d $f10,$f10,$f10
-add.d $f10,$f16,$f10
-div.d $f18,$f10,$f18
-s.d $f18,Q
-l.d $f18,Eight
-div.d $f18,$f16,$f18
-s.d $f18,X8
-l.d $f18,Q
-s.d $f18,-152+240($sp)
-mov.d $f12,$f18
-jal floor
-l.d $f16,-152+240($sp)
-c.eq.d $f16,$f0; bc1t L.408
-la $24,1
-sw $24,Anomaly
-b L.409
-L.408:
-sw $0,Break
-L.410:
-l.d $f18,Z1
-l.d $f16,Z
-mul.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,X
-s.d $f18,-160+240($sp)
-l.d $f16,Radix
-div.d $f12,$f18,$f16
-jal floor
-l.d $f16,Radix
-mul.d $f18,$f0,$f16
-l.d $f16,-160+240($sp)
-sub.d $f18,$f16,$f18
-s.d $f18,X
-l.d $f18,X
-l.d $f16,One
-c.eq.d $f18,$f16; bc1f L.413
-la $24,1
-sw $24,Break
-b L.414
-L.413:
-l.d $f18,Z1
-l.d $f16,One
-sub.d $f18,$f18,$f16
-s.d $f18,Z1
-L.414:
-L.411:
-lw $24,Break
-bne $24,$0,L.415
-l.d $f18,Z1
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.410
-L.415:
-l.d $f18,Z1
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.416
-lw $24,Break
-bne $24,$0,L.416
-la $24,1
-sw $24,Anomaly
-b L.417
-L.416:
-l.d $f18,Z1
-l.d $f16,RadixD2
-c.le.d $f18,$f16; bc1t L.418
-l.d $f18,Z1
-l.d $f16,Radix
-sub.d $f18,$f18,$f16
-s.d $f18,Z1
-L.418:
-L.420:
-jal NewD
-L.421:
-l.d $f18,U2
-l.d $f16,D
-mul.d $f18,$f18,$f16
-l.d $f16,F9
-c.lt.d $f18,$f16; bc1t L.420
-l.d $f18,D
-l.d $f16,Radix
-mul.d $f16,$f18,$f16
-sub.d $f16,$f16,$f18
-l.d $f10,W
-sub.d $f18,$f10,$f18
-c.eq.d $f16,$f18; bc1t L.423
-la $24,1
-sw $24,Anomaly
-b L.424
-L.423:
-l.d $f18,D
-s.d $f18,Z2
-sw $0,I
-l.d $f16,Z
-l.d $f10,One
-add.d $f10,$f10,$f16
-l.d $f8,Half
-mul.d $f10,$f10,$f8
-add.d $f10,$f18,$f10
-s.d $f10,Y
-add.d $f18,$f18,$f16
-l.d $f16,Q
-add.d $f18,$f18,$f16
-s.d $f18,X
-jal SR3750
-l.d $f18,D
-l.d $f16,Z
-l.d $f10,One
-sub.d $f10,$f10,$f16
-l.d $f8,Half
-mul.d $f10,$f10,$f8
-add.d $f10,$f18,$f10
-add.d $f10,$f10,$f18
-s.d $f10,Y
-sub.d $f16,$f18,$f16
-add.d $f18,$f16,$f18
-s.d $f18,X
-l.d $f18,X
-l.d $f16,Q
-add.d $f16,$f18,$f16
-add.d $f18,$f16,$f18
-s.d $f18,X
-jal SR3750
-jal NewD
-l.d $f18,Z2
-l.d $f16,D
-sub.d $f16,$f16,$f18
-l.d $f10,W
-sub.d $f18,$f10,$f18
-c.eq.d $f16,$f18; bc1t L.425
-la $24,1
-sw $24,Anomaly
-b L.426
-L.425:
-l.d $f18,Z2
-l.d $f16,D
-sub.d $f16,$f16,$f18
-l.d $f10,Z
-l.d $f8,One
-sub.d $f8,$f8,$f10
-l.d $f6,Half
-mul.d $f8,$f8,$f6
-add.d $f8,$f18,$f8
-add.d $f8,$f16,$f8
-s.d $f8,Y
-sub.d $f18,$f18,$f10
-l.d $f10,Q
-add.d $f18,$f18,$f10
-add.d $f18,$f16,$f18
-s.d $f18,X
-jal SR3750
-l.d $f18,One
-l.d $f16,Z
-add.d $f18,$f18,$f16
-l.d $f16,Half
-mul.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,Q
-s.d $f18,X
-jal SR3750
-lw $24,I
-bne $24,$0,L.427
-la $24,1
-sw $24,Anomaly
-L.427:
-L.426:
-L.424:
-L.417:
-L.409:
-L.394:
-lw $15,I
-beq $15,$0,L.431
-lw $15,Anomaly
-beq $15,$0,L.429
-L.431:
-move $4,$0
-la $5,L.432
-jal BadCond
-la $4,L.433
-l.d $f18,W
-mfc1.d $6,$f18
-jal printf
-la $4,L.434
-jal printf
-la $24,1
-sw $24,SqRWrng
-L.429:
-L.390:
-lw $24,Anomaly
-bne $24,$0,L.435
-l.d $f18,Zero
-l.d $f16,MinSqEr
-c.lt.d $f16,$f18; bc1t L.437
-l.d $f16,MaxSqEr
-c.le.d $f16,$f18; bc1f L.437
-la $24,1
-sw $24,RSqrt
-la $4,L.439
-jal printf
-b L.438
-L.437:
-l.d $f18,U2
-l.d $f16,Half
-l.d $f10,MaxSqEr
-add.d $f10,$f10,$f18
-sub.d $f18,$f18,$f16
-c.le.d $f10,$f18; bc1f L.443
-l.d $f18,MinSqEr
-c.le.d $f18,$f16; bc1f L.443
-l.d $f10,Radix
-add.d $f18,$f18,$f10
-c.lt.d $f18,$f16; bc1f L.440
-L.443:
-la $24,1
-sw $24,SqRWrng
-b L.441
-L.440:
-la $24,2
-sw $24,RSqrt
-la $4,L.444
-jal printf
-L.441:
-L.438:
-L.435:
-lw $24,SqRWrng
-beq $24,$0,L.445
-la $4,L.447
-jal printf
-la $4,L.448
-l.d $f18,MinSqEr
-l.d $f16,Half
-sub.d $f18,$f18,$f16
-mfc1.d $6,$f18
-jal printf
-la $4,L.449
-l.d $f18,Half
-l.d $f16,MaxSqEr
-add.d $f18,$f18,$f16
-mfc1.d $6,$f18
-jal printf
-la $4,1
-l.d $f18,Radix
-l.d $f16,MaxSqEr
-l.d $f10,MinSqEr
-sub.d $f16,$f16,$f10
-mul.d $f18,$f18,$f18
-c.lt.d $f16,$f18; bc1f L.452
-la $24,1
-sw $24,-124+240($sp)
-b L.453
-L.452:
-sw $0,-124+240($sp)
-L.453:
-lw $5,-124+240($sp)
-la $6,L.451
-jal TstCond
-L.445:
-la $24,90
-sw $24,Milestone
-jal Pause
-la $4,L.454
-jal printf
-sw $0,N
-sw $0,I
-l.d $f18,Zero
-neg.d $f18,$f18
-s.d $f18,Z
-la $15,3
-sw $15,M
-sw $0,Break
-L.455:
-l.d $f18,One
-s.d $f18,X
-jal SR3980
-lw $24,I
-la $15,10
-bgt $24,$15,L.458
-la $24,1023
-sw $24,I
-jal SR3980
-L.458:
-l.d $f18,Z
-l.d $f16,MinusOne
-c.eq.d $f18,$f16; bc1f L.460
-la $24,1
-sw $24,Break
-b L.461
-L.460:
-l.d $f18,MinusOne
-s.d $f18,Z
-jal PrintIfNPositive
-sw $0,N
-la $24,-4
-sw $24,I
-L.461:
-L.456:
-lw $24,Break
-beq $24,$0,L.455
-jal PrintIfNPositive
-lw $24,N
-sw $24,N1
-sw $0,N
-l.d $f18,A1
-s.d $f18,Z
-l.d $f12,W
-jal log
-mov.d $f18,$f0
-s.d $f18,-128+240($sp)
-l.d $f12,A1
-jal log
-mov.d $f18,$f0
-l.d $f16,Two
-l.d $f10,-128+240($sp)
-mul.d $f16,$f16,$f10
-div.d $f12,$f16,$f18
-jal floor
-trunc.w.d $f2,$f0,$24; mfc1 $24,$f2
-sw $24,M
-sw $0,Break
-L.462:
-l.d $f18,Z
-s.d $f18,X
-la $24,1
-sw $24,I
-jal SR3980
-l.d $f18,Z
-l.d $f16,AInvrse
-c.eq.d $f18,$f16; bc1f L.465
-la $24,1
-sw $24,Break
-b L.466
-L.465:
-l.d $f18,AInvrse
-s.d $f18,Z
-L.466:
-L.463:
-lw $24,Break
-beq $24,$0,L.462
-la $24,100
-sw $24,Milestone
-lw $24,NoTrials
-sw $24,M
-l.d $f18,Three
-s.d $f18,Z
-L.467:
-l.d $f18,Z
-s.d $f18,X
-la $24,1
-sw $24,I
-jal SR3980
-L.470:
-l.d $f18,Z
-l.d $f16,Two
-add.d $f18,$f18,$f16
-s.d $f18,Z
-L.471:
-l.d $f18,Three
-s.d $f18,-136+240($sp)
-l.d $f16,Z
-div.d $f12,$f16,$f18
-jal floor
-l.d $f16,-136+240($sp)
-mul.d $f18,$f16,$f0
-l.d $f16,Z
-c.eq.d $f18,$f16; bc1t L.470
-L.468:
-l.d $f18,Z
-l.d $f16,Eight
-l.d $f10,Three
-mul.d $f16,$f16,$f10
-c.lt.d $f18,$f16; bc1t L.467
-lw $24,N
-ble $24,$0,L.473
-la $4,L.475
-jal printf
-la $4,L.476
-jal printf
-L.473:
-jal PrintIfNPositive
-lw $24,N
-lw $15,N1
-addu $24,$24,$15
-sw $24,N
-lw $24,N
-bne $24,$0,L.477
-la $4,L.479
-jal printf
-L.477:
-lw $24,N
-ble $24,$0,L.480
-jal Pause
-b L.481
-L.480:
-la $4,L.44
-jal printf
-L.481:
-la $24,110
-sw $24,Milestone
-la $4,L.482
-jal printf
-l.d $f18,U1
-s.d $f18,D
-l.d $f18,Precision
-s.d $f18,-136+240($sp)
-mov.d $f12,$f18
-jal floor
-l.d $f16,-136+240($sp)
-c.eq.d $f16,$f0; bc1t L.483
-l.d $f18,BInvrse
-s.d $f18,D
-l.d $f18,Precision
-s.d $f18,X
-L.485:
-l.d $f18,D
-l.d $f16,BInvrse
-mul.d $f18,$f18,$f16
-s.d $f18,D
-l.d $f18,X
-l.d $f16,One
-sub.d $f18,$f18,$f16
-s.d $f18,X
-L.486:
-l.d $f18,X
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.485
-L.483:
-l.d $f18,One
-s.d $f18,Y
-l.d $f18,D
-s.d $f18,Z
-L.488:
-l.d $f18,Y
-s.d $f18,C
-l.d $f18,Z
-s.d $f18,Y
-l.d $f18,Y
-mul.d $f18,$f18,$f18
-s.d $f18,Z
-L.489:
-l.d $f18,Z
-l.d $f16,Y
-c.le.d $f16,$f18; bc1t L.491
-add.d $f16,$f18,$f18
-c.le.d $f16,$f18; bc1f L.488
-L.491:
-l.d $f18,C
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,D
-mul.d $f18,$f18,$f16
-s.d $f18,Z
-L.492:
-l.d $f18,Y
-s.d $f18,C
-l.d $f18,Z
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,D
-mul.d $f18,$f18,$f16
-s.d $f18,Z
-L.493:
-l.d $f18,Z
-l.d $f16,Y
-c.le.d $f16,$f18; bc1t L.495
-add.d $f16,$f18,$f18
-c.le.d $f16,$f18; bc1f L.492
-L.495:
-l.d $f18,Radix
-l.d $f16,Two
-c.lt.d $f18,$f16; bc1f L.496
-l.d $f18,Two
-s.d $f18,HInvrse
-b L.497
-L.496:
-l.d $f18,Radix
-s.d $f18,HInvrse
-L.497:
-l.d $f18,One
-l.d $f16,HInvrse
-div.d $f16,$f18,$f16
-s.d $f16,H
-l.d $f16,C
-div.d $f18,$f18,$f16
-s.d $f18,CInvrse
-s.d $f16,E0
-l.d $f18,E0
-l.d $f16,H
-mul.d $f18,$f18,$f16
-s.d $f18,Z
-L.498:
-l.d $f18,E0
-s.d $f18,Y
-l.d $f18,Z
-s.d $f18,E0
-l.d $f18,E0
-l.d $f16,H
-mul.d $f18,$f18,$f16
-s.d $f18,Z
-L.499:
-l.d $f18,Z
-l.d $f16,E0
-c.le.d $f16,$f18; bc1t L.501
-add.d $f16,$f18,$f18
-c.le.d $f16,$f18; bc1f L.498
-L.501:
-l.d $f18,E0
-s.d $f18,UfThold
-l.d $f18,Zero
-s.d $f18,E1
-s.d $f18,Q
-l.d $f18,U2
-s.d $f18,E9
-l.d $f18,One
-l.d $f16,E9
-add.d $f18,$f18,$f16
-s.d $f18,S
-l.d $f18,C
-l.d $f16,S
-mul.d $f16,$f18,$f16
-s.d $f16,D
-l.d $f16,D
-c.le.d $f16,$f18; bc1f L.502
-l.d $f18,Radix
-l.d $f16,U2
-mul.d $f18,$f18,$f16
-s.d $f18,E9
-l.d $f18,One
-l.d $f16,E9
-add.d $f18,$f18,$f16
-s.d $f18,S
-l.d $f18,C
-l.d $f16,S
-mul.d $f16,$f18,$f16
-s.d $f16,D
-l.d $f16,D
-c.le.d $f16,$f18; bc1f L.503
-move $4,$0
-la $5,L.506
-jal BadCond
-l.d $f18,E0
-s.d $f18,Underflow
-l.d $f18,Zero
-s.d $f18,Y1
-l.d $f18,Z
-s.d $f18,PseudoZero
-jal Pause
-b L.503
-L.502:
-l.d $f18,D
-s.d $f18,Underflow
-l.d $f18,Underflow
-l.d $f16,H
-mul.d $f18,$f18,$f16
-s.d $f18,PseudoZero
-l.d $f18,Zero
-s.d $f18,UfThold
-L.507:
-l.d $f18,Underflow
-s.d $f18,Y1
-l.d $f18,PseudoZero
-s.d $f18,Underflow
-l.d $f18,E1
-add.d $f16,$f18,$f18
-c.le.d $f16,$f18; bc1f L.510
-l.d $f18,Underflow
-l.d $f16,HInvrse
-mul.d $f18,$f18,$f16
-s.d $f18,Y2
-l.d $f18,Y1
-l.d $f16,Y2
-sub.d $f12,$f18,$f16
-jal fabs
-s.d $f0,E1
-l.d $f18,Y1
-s.d $f18,Q
-l.d $f18,UfThold
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.512
-l.d $f18,Y1
-l.d $f16,Y2
-c.eq.d $f18,$f16; bc1t L.512
-l.d $f18,Y1
-s.d $f18,UfThold
-L.512:
-L.510:
-l.d $f18,PseudoZero
-l.d $f16,H
-mul.d $f18,$f18,$f16
-s.d $f18,PseudoZero
-L.508:
-l.d $f18,PseudoZero
-l.d $f16,Underflow
-c.le.d $f16,$f18; bc1t L.514
-add.d $f16,$f18,$f18
-c.le.d $f16,$f18; bc1f L.507
-L.514:
-L.503:
-l.d $f18,PseudoZero
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.515
-la $4,L.44
-jal printf
-l.d $f18,PseudoZero
-s.d $f18,Z
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.517
-move $4,$0
-la $5,L.519
-jal BadCond
-la $4,L.520
-jal printf
-la $4,L.521
-l.d $f18,PseudoZero
-mfc1.d $6,$f18
-jal printf
-l.d $f18,PseudoZero
-neg.d $f18,$f18
-s.d $f18,X
-l.d $f18,X
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.518
-la $4,L.524
-jal printf
-la $4,L.525
-l.d $f18,X
-mfc1.d $6,$f18
-jal printf
-b L.518
-L.517:
-la $4,3
-la $5,L.526
-jal BadCond
-la $4,L.527
-l.d $f18,PseudoZero
-mfc1.d $6,$f18
-jal printf
-L.518:
-jal TstPtUf
-L.515:
-la $24,120
-sw $24,Milestone
-l.d $f18,CInvrse
-l.d $f16,Y
-mul.d $f16,$f18,$f16
-l.d $f10,Y1
-mul.d $f18,$f18,$f10
-c.le.d $f16,$f18; bc1t L.528
-l.d $f18,H
-l.d $f16,S
-mul.d $f18,$f18,$f16
-s.d $f18,S
-l.d $f18,Underflow
-s.d $f18,E0
-L.528:
-l.d $f18,E1
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.530
-l.d $f16,E0
-c.eq.d $f18,$f16; bc1t L.530
-la $4,2
-la $5,L.157
-jal BadCond
-l.d $f18,E1
-l.d $f16,E0
-c.lt.d $f18,$f16; bc1f L.532
-la $4,L.534
-jal printf
-la $4,L.535
-jal printf
-l.d $f18,PseudoZero
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.533
-l.d $f18,E1
-s.d $f18,E0
-b L.533
-L.532:
-la $4,L.538
-jal printf
-la $4,L.539
-jal printf
-L.533:
-L.530:
-la $4,L.540
-l.d $f18,E0
-mfc1.d $6,$f18
-jal printf
-l.d $f18,E0
-s.d $f18,Z
-jal TstPtUf
-l.d $f18,E0
-s.d $f18,Underflow
-lw $24,N
-la $15,1
-bne $24,$15,L.541
-l.d $f18,Y
-s.d $f18,Underflow
-L.541:
-la $24,4
-sw $24,I
-l.d $f18,E1
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.543
-la $24,3
-sw $24,I
-L.543:
-l.d $f18,UfThold
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.545
-lw $24,I
-subu $24,$24,2
-sw $24,I
-L.545:
-la $24,1
-sw $24,UfNGrad
-lw $24,I
-la $15,1
-blt $24,$15,L.547
-la $15,4
-bgt $24,$15,L.547
-sll $24,$24,2
-lw $24,L.570-4($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.570:
-.gpword L.549
-.gpword L.556
-.gpword L.561
-.gpword L.562
-.text
-L.549:
-l.d $f18,Underflow
-s.d $f18,UfThold
-l.d $f18,CInvrse
-l.d $f16,Q
-mul.d $f16,$f18,$f16
-l.d $f10,Y
-mul.d $f18,$f18,$f10
-l.d $f10,S
-mul.d $f18,$f18,$f10
-c.eq.d $f16,$f18; bc1t L.550
-l.d $f18,Y
-s.d $f18,UfThold
-move $4,$0
-la $5,L.552
-jal BadCond
-la $4,L.553
-l.d $f18,UfThold
-mfc1.d $6,$f18
-jal printf
-la $4,L.554
-l.d $f18,C
-mfc1.d $6,$f18
-jal printf
-la $4,L.555
-jal printf
-L.550:
-jal Pause
-b L.548
-L.556:
-move $4,$0
-la $5,L.557
-jal BadCond
-la $4,L.558
-jal printf
-la $4,L.559
-l.d $f18,Q
-mfc1.d $6,$f18
-l.d $f18,Y2
-s.d $f18,16($sp)
-jal printf
-l.d $f18,Q
-l.d $f16,Y2
-sub.d $f12,$f18,$f16
-jal fabs
-mov.d $f18,$f0
-la $4,L.560
-mfc1.d $6,$f18
-jal printf
-l.d $f18,Q
-s.d $f18,UfThold
-b L.548
-L.561:
-l.d $f18,X
-s.d $f18,X
-b L.548
-L.562:
-l.d $f18,UfThold
-l.d $f16,Q
-c.eq.d $f16,$f18; bc1f L.563
-l.d $f16,E1
-l.d $f10,E0
-c.eq.d $f16,$f10; bc1f L.563
-l.d $f10,E9
-div.d $f16,$f16,$f10
-sub.d $f12,$f18,$f16
-jal fabs
-l.d $f16,E1
-c.le.d $f0,$f16; bc1f L.563
-sw $0,UfNGrad
-la $4,L.565
-jal printf
-la $4,L.566
-jal printf
-l.d $f18,E0
-l.d $f16,CInvrse
-mul.d $f10,$f18,$f16
-s.d $f10,Y
-l.d $f10,U2
-l.d $f8,Y
-l.d $f6,OneAndHalf
-add.d $f6,$f6,$f10
-mul.d $f8,$f8,$f6
-s.d $f8,Y
-l.d $f8,One
-add.d $f10,$f8,$f10
-mul.d $f16,$f16,$f10
-s.d $f16,X
-l.d $f16,Y
-l.d $f10,X
-div.d $f16,$f16,$f10
-s.d $f16,Y
-l.d $f16,Y
-c.eq.d $f16,$f18; bc1f L.568
-la $24,1
-sw $24,-140+240($sp)
-b L.569
-L.568:
-sw $0,-140+240($sp)
-L.569:
-lw $24,-140+240($sp)
-sw $24,IEEE
-L.563:
-L.547:
-L.548:
-lw $24,UfNGrad
-beq $24,$0,L.572
-la $4,L.44
-jal printf
-la $24,sigfpe
-sw $24,sigsave
-la $4,ovfl_buf
-jal setjmp
-beq $2,$0,L.574
-la $4,L.576
-jal printf
-l.d $f18,H
-add.d $f18,$f18,$f18
-s.d $f18,R
-b L.575
-L.574:
-l.d $f18,Underflow
-l.d $f16,UfThold
-div.d $f12,$f18,$f16
-jal sqrt
-s.d $f0,R
-L.575:
-sw $0,sigsave
-l.d $f18,R
-l.d $f16,H
-c.le.d $f18,$f16; bc1f L.577
-l.d $f18,R
-l.d $f16,UfThold
-mul.d $f16,$f18,$f16
-s.d $f16,Z
-l.d $f16,One
-l.d $f10,H
-l.d $f8,Z
-mul.d $f18,$f18,$f10
-add.d $f10,$f16,$f10
-mul.d $f18,$f18,$f10
-add.d $f18,$f16,$f18
-mul.d $f18,$f8,$f18
-s.d $f18,X
-b L.578
-L.577:
-l.d $f18,UfThold
-s.d $f18,Z
-l.d $f18,One
-l.d $f16,H
-l.d $f10,Z
-mul.d $f8,$f16,$f16
-add.d $f16,$f18,$f16
-mul.d $f16,$f8,$f16
-add.d $f18,$f18,$f16
-mul.d $f18,$f10,$f18
-s.d $f18,X
-L.578:
-l.d $f18,X
-l.d $f16,Z
-c.eq.d $f18,$f16; bc1t L.579
-sub.d $f18,$f18,$f16
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.579
-la $4,3
-la $5,L.157
-jal BadCond
-la $4,L.581
-l.d $f18,X
-mfc1.d $6,$f18
-l.d $f18,Z
-s.d $f18,16($sp)
-jal printf
-l.d $f18,X
-l.d $f16,Z
-sub.d $f18,$f18,$f16
-s.d $f18,Z9
-la $4,L.582
-l.d $f18,Z9
-mfc1.d $6,$f18
-jal printf
-la $4,L.583
-jal printf
-la $4,L.584
-jal printf
-la $4,L.585
-jal printf
-la $4,L.586
-jal printf
-la $4,L.587
-jal printf
-la $4,L.588
-jal printf
-la $24,sigfpe
-sw $24,sigsave
-la $4,ovfl_buf
-jal setjmp
-beq $2,$0,L.589
-la $4,L.591
-jal printf
-b L.590
-L.589:
-la $4,L.592
-l.d $f18,Half
-l.d $f16,X
-l.d $f10,Z
-div.d $f16,$f16,$f10
-sub.d $f16,$f16,$f18
-sub.d $f18,$f16,$f18
-mfc1.d $6,$f18
-jal printf
-L.590:
-sw $0,sigsave
-L.579:
-L.572:
-la $4,L.593
-l.d $f18,UfThold
-mfc1.d $6,$f18
-la $24,L.594
-sw $24,16($sp)
-jal printf
-la $4,L.595
-jal printf
-la $4,L.596
-jal printf
-l.d $f18,U1
-mul.d $f16,$f18,$f18
-s.d $f16,Y2
-l.d $f16,Y2
-mul.d $f16,$f16,$f16
-s.d $f16,Y
-l.d $f16,Y
-mul.d $f18,$f16,$f18
-s.d $f18,Y2
-l.d $f18,Y2
-l.d $f16,UfThold
-c.le.d $f18,$f16; bc1f L.597
-l.d $f18,Y
-l.d $f16,E0
-c.le.d $f18,$f16; bc1t L.599
-la $4,2
-la $5,L.157
-jal BadCond
-la $24,5
-sw $24,I
-b L.600
-L.599:
-la $4,1
-la $5,L.157
-jal BadCond
-la $24,4
-sw $24,I
-L.600:
-la $4,L.601
-lw $5,I
-jal printf
-L.597:
-la $24,130
-sw $24,Milestone
-l.d $f12,UfThold
-jal log
-mov.d $f18,$f0
-s.d $f18,-144+240($sp)
-l.d $f12,HInvrse
-jal log
-l.d $f16,Half
-l.d $f10,TwoForty
-l.d $f8,-144+240($sp)
-mul.d $f10,$f10,$f8
-div.d $f18,$f10,$f0
-sub.d $f12,$f16,$f18
-jal floor
-neg.d $f18,$f0
-l.d $f16,TwoForty
-div.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,Y
-add.d $f18,$f18,$f18
-s.d $f18,Y2
-la $4,L.602
-jal printf
-la $4,L.603
-l.d $f18,HInvrse
-mfc1.d $6,$f18
-l.d $f18,Y
-s.d $f18,16($sp)
-jal printf
-la $4,L.604
-l.d $f18,HInvrse
-mfc1.d $6,$f18
-l.d $f18,Y
-s.d $f18,16($sp)
-jal printf
-l.d $f12,HInvrse
-l.d $f14,Y2
-jal pow
-s.d $f0,V9
-la $4,L.605
-l.d $f18,V9
-mfc1.d $6,$f18
-jal printf
-l.d $f18,V9
-l.d $f16,Zero
-c.lt.d $f18,$f16; bc1t L.608
-l.d $f16,Radix
-add.d $f16,$f16,$f16
-l.d $f10,E9
-add.d $f16,$f16,$f10
-l.d $f10,UfThold
-mul.d $f16,$f16,$f10
-c.le.d $f18,$f16; bc1t L.606
-L.608:
-la $4,1
-la $5,L.609
-jal BadCond
-la $4,L.610
-l.d $f18,UfThold
-mfc1.d $6,$f18
-jal printf
-b L.607
-L.606:
-l.d $f18,V9
-l.d $f16,UfThold
-l.d $f10,One
-l.d $f8,E9
-add.d $f10,$f10,$f8
-mul.d $f16,$f16,$f10
-c.le.d $f18,$f16; bc1f L.611
-la $4,L.613
-jal printf
-b L.612
-L.611:
-la $4,2
-la $5,L.609
-jal BadCond
-la $4,L.610
-l.d $f18,UfThold
-mfc1.d $6,$f18
-jal printf
-L.612:
-L.607:
-la $24,140
-sw $24,Milestone
-la $4,L.44
-jal printf
-l.d $f18,Zero
-s.d $f18,X
-la $24,2
-sw $24,I
-l.d $f16,Two
-l.d $f10,Three
-mul.d $f16,$f16,$f10
-s.d $f16,Y
-s.d $f18,Q
-sw $0,N
-L.614:
-l.d $f18,X
-s.d $f18,Z
-lw $24,I
-la $24,1($24)
-sw $24,I
-lw $24,I
-l.d $f18,Y
-addu $24,$24,$24
-mtc1 $24,$f16; cvt.d.w $f16,$f16
-div.d $f18,$f18,$f16
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,Q
-add.d $f18,$f18,$f16
-s.d $f18,R
-l.d $f18,Z
-l.d $f16,R
-add.d $f10,$f18,$f16
-s.d $f10,X
-l.d $f10,X
-sub.d $f18,$f18,$f10
-add.d $f18,$f18,$f16
-s.d $f18,Q
-L.615:
-l.d $f18,X
-l.d $f16,Z
-c.le.d $f18,$f16; bc1f L.614
-l.d $f18,OneAndHalf
-l.d $f16,One
-l.d $f10,Eight
-div.d $f16,$f16,$f10
-add.d $f16,$f18,$f16
-l.d $f10,X
-l.d $f8,ThirtyTwo
-mul.d $f18,$f18,$f8
-div.d $f18,$f10,$f18
-add.d $f18,$f16,$f18
-s.d $f18,Z
-l.d $f18,Z
-mul.d $f18,$f18,$f18
-s.d $f18,X
-l.d $f18,X
-mul.d $f18,$f18,$f18
-s.d $f18,Exp2
-l.d $f18,F9
-s.d $f18,X
-l.d $f18,X
-l.d $f16,U1
-sub.d $f18,$f18,$f16
-s.d $f18,Y
-la $4,L.617
-l.d $f18,Exp2
-mfc1.d $6,$f18
-jal printf
-la $24,1
-sw $24,I
-L.618:
-l.d $f18,X
-l.d $f16,BInvrse
-sub.d $f10,$f18,$f16
-s.d $f10,Z
-l.d $f10,One
-add.d $f8,$f18,$f10
-l.d $f6,Z
-sub.d $f16,$f10,$f16
-sub.d $f16,$f6,$f16
-div.d $f16,$f8,$f16
-s.d $f16,Z
-mov.d $f12,$f18
-l.d $f14,Z
-jal pow
-l.d $f16,Exp2
-sub.d $f18,$f0,$f16
-s.d $f18,Q
-l.d $f12,Q
-jal fabs
-l.d $f16,TwoForty
-l.d $f10,U2
-mul.d $f16,$f16,$f10
-c.le.d $f0,$f16; bc1t L.622
-la $24,1
-sw $24,N
-l.d $f18,BInvrse
-l.d $f16,X
-sub.d $f16,$f16,$f18
-l.d $f10,One
-sub.d $f18,$f10,$f18
-sub.d $f18,$f16,$f18
-s.d $f18,V9
-la $4,2
-la $5,L.624
-jal BadCond
-l.d $f12,X
-l.d $f14,Z
-jal pow
-mov.d $f18,$f0
-la $4,L.625
-mfc1.d $6,$f18
-jal printf
-la $4,L.626
-l.d $f18,V9
-mfc1.d $6,$f18
-l.d $f18,Z
-s.d $f18,16($sp)
-jal printf
-la $4,L.627
-l.d $f18,Q
-mfc1.d $6,$f18
-jal printf
-la $4,L.628
-jal printf
-la $4,L.629
-jal printf
-b L.620
-L.622:
-l.d $f18,Y
-l.d $f16,X
-sub.d $f16,$f18,$f16
-l.d $f10,Two
-mul.d $f16,$f16,$f10
-add.d $f16,$f16,$f18
-s.d $f16,Z
-s.d $f18,X
-l.d $f18,Z
-s.d $f18,Y
-l.d $f18,X
-l.d $f16,F9
-sub.d $f18,$f18,$f16
-l.d $f16,One
-mul.d $f18,$f18,$f18
-add.d $f18,$f16,$f18
-s.d $f18,Z
-l.d $f18,Z
-l.d $f16,One
-c.le.d $f18,$f16; bc1t L.630
-lw $24,I
-lw $15,NoTrials
-bge $24,$15,L.630
-lw $24,I
-la $24,1($24)
-sw $24,I
-b L.618
-L.630:
-l.d $f18,X
-l.d $f16,One
-c.le.d $f18,$f16; bc1t L.632
-lw $24,N
-bne $24,$0,L.620
-la $4,L.636
-jal printf
-b L.620
-L.632:
-l.d $f18,U2
-l.d $f16,One
-add.d $f16,$f16,$f18
-s.d $f16,X
-add.d $f18,$f18,$f18
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,X
-add.d $f18,$f18,$f16
-s.d $f18,Y
-la $24,1
-sw $24,I
-b L.618
-L.620:
-la $24,150
-sw $24,Milestone
-la $4,L.637
-jal printf
-sw $0,N
-l.d $f18,A1
-s.d $f18,Z
-l.d $f12,C
-jal log
-mov.d $f18,$f0
-s.d $f18,-152+240($sp)
-l.d $f12,A1
-jal log
-l.d $f16,Half
-l.d $f10,-152+240($sp)
-div.d $f18,$f10,$f0
-sub.d $f12,$f16,$f18
-jal floor
-s.d $f0,Q
-sw $0,Break
-L.638:
-l.d $f18,CInvrse
-s.d $f18,X
-l.d $f12,Z
-l.d $f14,Q
-jal pow
-s.d $f0,Y
-jal IsYeqX
-l.d $f18,Q
-neg.d $f18,$f18
-s.d $f18,Q
-l.d $f18,C
-s.d $f18,X
-l.d $f12,Z
-l.d $f14,Q
-jal pow
-s.d $f0,Y
-jal IsYeqX
-l.d $f18,Z
-l.d $f16,One
-c.lt.d $f18,$f16; bc1f L.641
-la $24,1
-sw $24,Break
-b L.642
-L.641:
-l.d $f18,AInvrse
-s.d $f18,Z
-L.642:
-L.639:
-lw $24,Break
-beq $24,$0,L.638
-jal PrintIfNPositive
-lw $24,N
-bne $24,$0,L.643
-la $4,L.645
-jal printf
-L.643:
-la $4,L.44
-jal printf
-la $24,160
-sw $24,Milestone
-jal Pause
-la $4,L.646
-jal printf
-la $4,L.647
-jal printf
-l.d $f18,CInvrse
-neg.d $f18,$f18
-s.d $f18,Y
-l.d $f18,HInvrse
-l.d $f16,Y
-mul.d $f18,$f18,$f16
-s.d $f18,V9
-la $24,sigfpe
-sw $24,sigsave
-la $4,ovfl_buf
-jal setjmp
-beq $2,$0,L.648
-sw $0,I
-l.d $f18,Y
-s.d $f18,V9
-b L.650
-L.648:
-L.651:
-l.d $f18,Y
-s.d $f18,V
-l.d $f18,V9
-s.d $f18,Y
-l.d $f18,HInvrse
-l.d $f16,Y
-mul.d $f18,$f18,$f16
-s.d $f18,V9
-L.652:
-l.d $f18,V9
-l.d $f16,Y
-c.lt.d $f18,$f16; bc1t L.651
-la $24,1
-sw $24,I
-L.650:
-sw $0,sigsave
-l.d $f18,V9
-s.d $f18,Z
-la $4,L.654
-jal printf
-la $4,L.655
-l.d $f18,Y
-mfc1.d $6,$f18
-jal printf
-l.d $f18,Y
-neg.d $f16,$f18
-s.d $f16,V9
-l.d $f16,V9
-s.d $f16,V0
-l.d $f16,V
-sub.d $f18,$f16,$f18
-l.d $f10,V0
-add.d $f16,$f16,$f10
-c.eq.d $f18,$f16; bc1f L.656
-la $4,L.658
-jal printf
-b L.657
-L.656:
-la $4,L.659
-jal printf
-la $4,3
-la $5,L.660
-jal BadCond
-L.657:
-l.d $f18,Z
-l.d $f16,Y
-c.eq.d $f18,$f16; bc1t L.661
-la $4,1
-la $5,L.157
-jal BadCond
-la $4,L.663
-l.d $f18,Y
-mfc1.d $6,$f18
-l.d $f18,Z
-s.d $f18,16($sp)
-jal printf
-L.661:
-lw $24,I
-beq $24,$0,L.664
-l.d $f18,V
-l.d $f16,HInvrse
-l.d $f10,U2
-mul.d $f8,$f16,$f10
-sub.d $f8,$f8,$f16
-mul.d $f8,$f18,$f8
-s.d $f8,Y
-l.d $f8,Y
-l.d $f6,One
-sub.d $f16,$f6,$f16
-mul.d $f16,$f16,$f10
-mul.d $f18,$f16,$f18
-add.d $f18,$f8,$f18
-s.d $f18,Z
-l.d $f18,Z
-l.d $f16,V0
-c.lt.d $f18,$f16; bc1f L.666
-l.d $f18,Z
-s.d $f18,Y
-L.666:
-l.d $f18,Y
-l.d $f16,V0
-c.lt.d $f18,$f16; bc1f L.668
-l.d $f18,Y
-s.d $f18,V
-L.668:
-l.d $f18,V0
-l.d $f16,V
-sub.d $f16,$f18,$f16
-c.lt.d $f16,$f18; bc1f L.665
-l.d $f18,V0
-s.d $f18,V
-b L.665
-L.664:
-l.d $f18,Y
-l.d $f16,HInvrse
-l.d $f10,U2
-mul.d $f8,$f16,$f10
-sub.d $f8,$f8,$f16
-mul.d $f8,$f18,$f8
-s.d $f8,V
-l.d $f8,V
-l.d $f6,One
-sub.d $f16,$f6,$f16
-mul.d $f16,$f16,$f10
-mul.d $f18,$f16,$f18
-add.d $f18,$f8,$f18
-s.d $f18,V
-L.665:
-la $4,L.672
-l.d $f18,V
-mfc1.d $6,$f18
-jal printf
-lw $24,I
-beq $24,$0,L.673
-la $4,L.675
-l.d $f18,V0
-mfc1.d $6,$f18
-jal printf
-b L.674
-L.673:
-la $4,L.676
-jal printf
-L.674:
-l.d $f18,V
-l.d $f16,One
-mul.d $f18,$f18,$f16
-s.d $f18,V9
-la $4,L.677
-l.d $f18,V9
-mfc1.d $6,$f18
-jal printf
-l.d $f18,V
-l.d $f16,One
-div.d $f18,$f18,$f16
-s.d $f18,V9
-la $4,L.678
-l.d $f18,V9
-mfc1.d $6,$f18
-jal printf
-la $4,L.679
-jal printf
-la $4,L.680
-jal printf
-la $24,170
-sw $24,Milestone
-l.d $f18,V
-neg.d $f16,$f18
-c.lt.d $f16,$f18; bc1f L.685
-l.d $f16,V0
-neg.d $f10,$f16
-c.lt.d $f10,$f16; bc1f L.685
-l.d $f16,UfThold
-neg.d $f10,$f16
-c.lt.d $f10,$f18; bc1f L.685
-c.lt.d $f16,$f18; bc1t L.681
-L.685:
-move $4,$0
-la $5,L.686
-jal BadCond
-la $4,L.687
-l.d $f18,V
-mfc1.d $6,$f18
-l.d $f18,V0
-s.d $f18,16($sp)
-l.d $f18,UfThold
-s.d $f18,24($sp)
-jal printf
-L.681:
-la $24,175
-sw $24,Milestone
-la $4,L.44
-jal printf
-la $24,1
-sw $24,Indx
-L.688:
-lw $24,Indx
-la $15,1
-beq $24,$15,L.694
-la $15,2
-beq $24,$15,L.695
-la $15,3
-beq $24,$15,L.696
-b L.692
-L.694:
-l.d $f18,UfThold
-s.d $f18,Z
-b L.693
-L.695:
-l.d $f18,E0
-s.d $f18,Z
-b L.693
-L.696:
-l.d $f18,PseudoZero
-s.d $f18,Z
-L.692:
-L.693:
-l.d $f18,Z
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.697
-l.d $f12,Z
-jal sqrt
-s.d $f0,V9
-l.d $f18,V9
-mul.d $f18,$f18,$f18
-s.d $f18,Y
-l.d $f18,Y
-l.d $f16,One
-l.d $f10,Radix
-l.d $f8,E9
-mul.d $f10,$f10,$f8
-l.d $f8,Z
-sub.d $f6,$f16,$f10
-div.d $f6,$f18,$f6
-c.lt.d $f6,$f8; bc1t L.701
-add.d $f16,$f16,$f10
-mul.d $f16,$f16,$f8
-c.le.d $f18,$f16; bc1t L.699
-L.701:
-l.d $f18,V9
-l.d $f16,U1
-c.le.d $f18,$f16; bc1t L.702
-la $4,1
-la $5,L.157
-jal BadCond
-b L.703
-L.702:
-la $4,2
-la $5,L.157
-jal BadCond
-L.703:
-la $4,L.704
-l.d $f18,Z
-mfc1.d $6,$f18
-jal printf
-la $4,L.705
-l.d $f18,Y
-mfc1.d $6,$f18
-jal printf
-L.699:
-L.697:
-L.689:
-lw $24,Indx
-la $24,1($24)
-sw $24,Indx
-lw $24,Indx
-la $15,3
-ble $24,$15,L.688
-la $24,180
-sw $24,Milestone
-la $24,1
-sw $24,Indx
-L.706:
-lw $24,Indx
-la $15,1
-bne $24,$15,L.710
-l.d $f18,V
-s.d $f18,Z
-b L.711
-L.710:
-l.d $f18,V0
-s.d $f18,Z
-L.711:
-l.d $f12,Z
-jal sqrt
-s.d $f0,V9
-l.d $f18,V9
-l.d $f16,One
-l.d $f10,Radix
-l.d $f8,E9
-mul.d $f10,$f10,$f8
-sub.d $f16,$f16,$f10
-mul.d $f16,$f16,$f18
-s.d $f16,X
-l.d $f16,X
-mul.d $f18,$f18,$f16
-s.d $f18,V9
-l.d $f18,V9
-l.d $f16,Z
-l.d $f10,One
-l.d $f8,Two
-l.d $f6,Radix
-mul.d $f8,$f8,$f6
-l.d $f6,E9
-mul.d $f8,$f8,$f6
-sub.d $f10,$f10,$f8
-mul.d $f10,$f10,$f16
-c.lt.d $f18,$f10; bc1t L.714
-c.le.d $f18,$f16; bc1t L.712
-L.714:
-l.d $f18,V9
-s.d $f18,Y
-l.d $f18,X
-l.d $f16,W
-c.lt.d $f18,$f16; bc1f L.715
-la $4,1
-la $5,L.157
-jal BadCond
-b L.716
-L.715:
-la $4,2
-la $5,L.157
-jal BadCond
-L.716:
-la $4,L.717
-l.d $f18,Z
-mfc1.d $6,$f18
-jal printf
-la $4,L.718
-l.d $f18,Y
-mfc1.d $6,$f18
-jal printf
-L.712:
-L.707:
-lw $24,Indx
-la $24,1($24)
-sw $24,Indx
-lw $24,Indx
-la $15,2
-ble $24,$15,L.706
-la $24,190
-sw $24,Milestone
-jal Pause
-l.d $f18,UfThold
-l.d $f16,V
-mul.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,Radix
-mul.d $f18,$f18,$f18
-s.d $f18,Y
-l.d $f18,X
-l.d $f16,Y
-mul.d $f10,$f18,$f16
-l.d $f8,One
-c.lt.d $f10,$f8; bc1t L.721
-c.le.d $f18,$f16; bc1t L.719
-L.721:
-l.d $f18,X
-l.d $f16,Y
-l.d $f10,U1
-mul.d $f8,$f18,$f16
-c.lt.d $f8,$f10; bc1t L.724
-div.d $f16,$f16,$f10
-c.le.d $f18,$f16; bc1t L.722
-L.724:
-la $4,2
-la $5,L.725
-jal BadCond
-b L.723
-L.722:
-la $4,3
-la $5,L.157
-jal BadCond
-L.723:
-la $4,L.726
-l.d $f18,X
-mfc1.d $6,$f18
-la $24,L.727
-sw $24,16($sp)
-jal printf
-L.719:
-la $24,200
-sw $24,Milestone
-la $24,1
-sw $24,Indx
-L.728:
-l.d $f18,F9
-s.d $f18,X
-lw $24,Indx
-la $15,2
-blt $24,$15,L.732
-la $15,5
-bgt $24,$15,L.732
-sll $24,$24,2
-lw $24,L.738-8($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.738:
-.gpword L.734
-.gpword L.735
-.gpword L.736
-.gpword L.737
-.text
-L.734:
-l.d $f18,One
-l.d $f16,U2
-add.d $f18,$f18,$f16
-s.d $f18,X
-b L.733
-L.735:
-l.d $f18,V
-s.d $f18,X
-b L.733
-L.736:
-l.d $f18,UfThold
-s.d $f18,X
-b L.733
-L.737:
-l.d $f18,Radix
-s.d $f18,X
-L.732:
-L.733:
-l.d $f18,X
-s.d $f18,Y
-la $24,sigfpe
-sw $24,sigsave
-la $4,ovfl_buf
-jal setjmp
-beq $2,$0,L.740
-la $4,L.742
-l.d $f18,X
-mfc1.d $6,$f18
-jal printf
-b L.741
-L.740:
-l.d $f18,Half
-l.d $f16,Y
-l.d $f10,X
-div.d $f16,$f16,$f10
-sub.d $f16,$f16,$f18
-sub.d $f18,$f16,$f18
-s.d $f18,V9
-l.d $f18,V9
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.743
-b L.729
-L.743:
-l.d $f18,V9
-l.d $f16,U1
-neg.d $f16,$f16
-c.eq.d $f18,$f16; bc1f L.745
-lw $24,Indx
-la $15,5
-bge $24,$15,L.745
-la $4,3
-la $5,L.157
-jal BadCond
-b L.746
-L.745:
-la $4,1
-la $5,L.157
-jal BadCond
-L.746:
-la $4,L.747
-l.d $f18,X
-mfc1.d $6,$f18
-jal printf
-la $4,L.748
-l.d $f18,V9
-mfc1.d $6,$f18
-jal printf
-L.741:
-sw $0,sigsave
-L.729:
-lw $24,Indx
-la $24,1($24)
-sw $24,Indx
-lw $24,Indx
-la $15,5
-ble $24,$15,L.728
-la $24,210
-sw $24,Milestone
-l.d $f18,Zero
-s.d $f18,MyZero
-la $4,L.44
-jal printf
-la $4,L.749
-jal printf
-la $24,sigfpe
-sw $24,sigsave
-la $4,L.750
-jal printf
-la $4,ovfl_buf
-jal setjmp
-bne $2,$0,L.751
-la $4,L.753
-l.d $f18,One
-l.d $f16,MyZero
-div.d $f18,$f18,$f16
-mfc1.d $6,$f18
-jal printf
-L.751:
-sw $0,sigsave
-la $24,sigfpe
-sw $24,sigsave
-la $4,L.754
-jal printf
-la $4,ovfl_buf
-jal setjmp
-bne $2,$0,L.755
-la $4,L.753
-l.d $f18,Zero
-l.d $f16,MyZero
-div.d $f18,$f18,$f16
-mfc1.d $6,$f18
-jal printf
-L.755:
-sw $0,sigsave
-la $24,220
-sw $24,Milestone
-jal Pause
-la $4,L.44
-jal printf
-sw $0,-156+240($sp)
-L.762:
-lw $24,-156+240($sp)
-sll $24,$24,2
-lw $24,ErrCnt($24)
-beq $24,$0,L.766
-la $4,L.768
-lw $24,-156+240($sp)
-sll $24,$24,2
-lw $5,L.757($24)
-lw $6,ErrCnt($24)
-jal printf
-L.766:
-L.763:
-lw $24,-156+240($sp)
-la $24,1($24)
-sw $24,-156+240($sp)
-lw $24,-156+240($sp)
-la $15,4
-blt $24,$15,L.762
-la $4,L.44
-jal printf
-lw $24,ErrCnt
-lw $15,ErrCnt+4
-addu $24,$24,$15
-lw $15,ErrCnt+8
-addu $24,$24,$15
-lw $15,ErrCnt+12
-addu $24,$24,$15
-ble $24,$0,L.769
-lw $15,ErrCnt
-lw $14,ErrCnt+4
-addu $15,$15,$14
-lw $14,ErrCnt+8
-addu $15,$15,$14
-bne $15,$0,L.774
-lw $15,ErrCnt+12
-ble $15,$0,L.774
-la $4,L.779
-jal printf
-la $4,L.780
-jal printf
-L.774:
-lw $15,ErrCnt
-lw $14,ErrCnt+4
-addu $15,$15,$14
-bne $15,$0,L.781
-lw $15,ErrCnt+8
-ble $15,$0,L.781
-la $4,L.785
-jal printf
-la $4,L.786
-jal printf
-L.781:
-lw $24,ErrCnt
-lw $15,ErrCnt+4
-addu $24,$24,$15
-ble $24,$0,L.787
-la $4,L.790
-jal printf
-la $4,L.791
-jal printf
-L.787:
-lw $24,ErrCnt
-ble $24,$0,L.770
-la $4,L.794
-jal printf
-la $4,L.795
-jal printf
-b L.770
-L.769:
-la $4,L.796
-jal printf
-la $24,1
-lw $15,RMult
-bne $15,$24,L.801
-lw $15,RDiv
-bne $15,$24,L.801
-lw $15,RAddSub
-bne $15,$24,L.801
-lw $15,RSqrt
-beq $15,$24,L.797
-L.801:
-la $4,L.802
-jal printf
-b L.798
-L.797:
-l.d $f18,One
-l.d $f16,StickyBit
-c.lt.d $f16,$f18; bc1t L.803
-l.d $f16,Radix
-l.d $f10,Two
-sub.d $f10,$f16,$f10
-l.d $f8,Nine
-sub.d $f16,$f16,$f8
-sub.d $f18,$f16,$f18
-mul.d $f18,$f10,$f18
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.803
-la $4,L.805
-jal printf
-la $4,L.806
-jal printf
-l.d $f18,Two
-l.d $f16,Radix
-c.eq.d $f16,$f18; bc1f L.807
-l.d $f16,Precision
-l.d $f10,TwentySeven
-l.d $f8,Four
-l.d $f6,Three
-mul.d $f8,$f8,$f6
-mul.d $f18,$f8,$f18
-sub.d $f18,$f16,$f18
-sub.d $f16,$f16,$f10
-sub.d $f16,$f16,$f10
-l.d $f10,One
-add.d $f16,$f16,$f10
-mul.d $f18,$f18,$f16
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1f L.807
-la $4,L.809
-jal printf
-b L.808
-L.807:
-la $4,L.810
-jal printf
-L.808:
-lw $24,IEEE
-beq $24,$0,L.811
-la $4,L.813
-jal printf
-b L.812
-L.811:
-la $4,L.814
-jal printf
-la $4,L.815
-jal printf
-L.812:
-L.803:
-la $4,L.816
-jal printf
-L.798:
-L.770:
-lw $24,fpecount
-beq $24,$0,L.817
-la $4,L.819
-lw $5,fpecount
-jal printf
-L.817:
-la $4,L.820
-jal printf
-move $2,$0
-L.6:
-lw $16,32($sp)
-lw $17,36($sp)
-lw $18,40($sp)
-lw $19,44($sp)
-lw $20,48($sp)
-lw $21,52($sp)
-lw $22,56($sp)
-lw $23,60($sp)
-lw $25,64($sp)
-lw $30,68($sp)
-lw $31,72($sp)
-addu $sp,$sp,240
-j $31
-.end main
-.globl Sign
-.text
-.align 2
-.ent Sign
-Sign:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-.fmask 0xc0000000,-8
-s.d $f30,0($sp)
-l.d $f18,L.7
-c.lt.d $f12,$f18; bc1t L.823
-l.d $f30,L.8
-b L.824
-L.823:
-l.d $f30,L.825
-L.824:
-mov.d $f0,$f30
-L.821:
-l.d $f30,0($sp)
-addu $sp,$sp,8
-j $31
-.end Sign
-.globl Pause
-.text
-.align 2
-.ent Pause
-Pause:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-la $4,L.827
-lw $5,Milestone
-jal printf
-la $4,L.828
-lw $5,PageNo
-jal printf
-lw $24,Milestone
-la $24,1($24)
-sw $24,Milestone
-lw $24,PageNo
-la $24,1($24)
-sw $24,PageNo
-move $2,$0
-L.826:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end Pause
-.globl TstCond
-.text
-.align 2
-.ent TstCond
-TstCond:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-sw $5,28($sp)
-sw $6,32($sp)
-lw $24,4+24($sp)
-bne $24,$0,L.830
-lw $4,0+24($sp)
-lw $5,8+24($sp)
-jal BadCond
-la $4,L.813
-jal printf
-L.830:
-move $2,$0
-L.829:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end TstCond
-.data
-.align 2
-L.833:
-.word L.834
-.word L.835
-.word L.836
-.word L.837
-.globl BadCond
-.text
-.text
-.align 2
-.ent BadCond
-BadCond:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-move $30,$4
-sw $5,36($sp)
-sll $24,$30,2
-la $24,ErrCnt($24)
-lw $15,($24)
-la $15,1($15)
-sw $15,($24)
-la $4,L.838
-sll $24,$30,2
-lw $5,L.833($24)
-lw $6,4+32($sp)
-jal printf
-move $2,$0
-L.832:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end BadCond
-.globl Random
-.text
-.align 2
-.ent Random
-Random:
-.frame $sp,40,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-40
-.fmask 0xf0000000,-16
-.mask 0x82000000,-4
-s.d $f28,16($sp)
-s.d $f30,24($sp)
-.cprestore 32
-sw $31,36($sp)
-l.d $f18,Random1
-l.d $f16,Random9
-add.d $f30,$f18,$f16
-mul.d $f28,$f30,$f30
-mul.d $f28,$f28,$f28
-mul.d $f30,$f30,$f28
-mov.d $f12,$f30
-jal floor
-sub.d $f28,$f30,$f0
-l.d $f18,L.840
-mul.d $f18,$f18,$f30
-add.d $f18,$f28,$f18
-s.d $f18,Random1
-l.d $f0,Random1
-L.839:
-l.d $f28,16($sp)
-l.d $f30,24($sp)
-lw $25,32($sp)
-lw $31,36($sp)
-addu $sp,$sp,40
-j $31
-.end Random
-.globl SqXMinX
-.text
-.align 2
-.ent SqXMinX
-SqXMinX:
-.frame $sp,56,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-56
-.fmask 0xc0000000,-24
-.mask 0x82000000,-12
-s.d $f30,32($sp)
-.cprestore 40
-sw $31,44($sp)
-sw $4,56($sp)
-l.d $f18,X
-l.d $f16,BInvrse
-mul.d $f30,$f18,$f16
-sub.d $f16,$f18,$f30
-s.d $f16,-8+56($sp)
-mul.d $f12,$f18,$f18
-jal sqrt
-sub.d $f18,$f0,$f30
-l.d $f16,-8+56($sp)
-sub.d $f18,$f18,$f16
-l.d $f16,OneUlp
-div.d $f18,$f18,$f16
-s.d $f18,SqEr
-l.d $f18,SqEr
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.842
-l.d $f18,SqEr
-l.d $f16,MinSqEr
-c.lt.d $f18,$f16; bc1f L.844
-l.d $f18,SqEr
-s.d $f18,MinSqEr
-L.844:
-l.d $f18,SqEr
-l.d $f16,MaxSqEr
-c.le.d $f18,$f16; bc1t L.846
-l.d $f18,SqEr
-s.d $f18,MaxSqEr
-L.846:
-l.d $f18,J
-l.d $f16,L.8
-add.d $f18,$f18,$f16
-s.d $f18,J
-lw $4,0+56($sp)
-la $5,L.44
-jal BadCond
-la $4,L.848
-l.d $f18,X
-mul.d $f16,$f18,$f18
-mfc1.d $6,$f16
-s.d $f18,16($sp)
-l.d $f18,OneUlp
-l.d $f16,SqEr
-mul.d $f18,$f18,$f16
-s.d $f18,24($sp)
-jal printf
-la $4,L.849
-jal printf
-L.842:
-move $2,$0
-L.841:
-l.d $f30,32($sp)
-lw $25,40($sp)
-lw $31,44($sp)
-addu $sp,$sp,56
-j $31
-.end SqXMinX
-.globl NewD
-.text
-.align 2
-.ent NewD
-NewD:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-l.d $f18,Z1
-l.d $f16,Q
-mul.d $f18,$f18,$f16
-s.d $f18,X
-l.d $f18,Half
-l.d $f16,X
-l.d $f10,Radix
-div.d $f16,$f16,$f10
-sub.d $f12,$f18,$f16
-jal floor
-l.d $f16,Radix
-mul.d $f18,$f0,$f16
-l.d $f10,X
-add.d $f18,$f18,$f10
-s.d $f18,X
-l.d $f18,X
-l.d $f10,Z
-l.d $f8,D
-l.d $f6,Q
-mul.d $f4,$f18,$f10
-sub.d $f6,$f6,$f4
-div.d $f6,$f6,$f16
-mul.d $f4,$f18,$f18
-div.d $f16,$f8,$f16
-mul.d $f16,$f4,$f16
-add.d $f16,$f6,$f16
-s.d $f16,Q
-l.d $f16,Two
-mul.d $f18,$f16,$f18
-mul.d $f18,$f18,$f8
-sub.d $f18,$f10,$f18
-s.d $f18,Z
-l.d $f18,Z
-l.d $f16,Zero
-c.le.d $f18,$f16; bc1f L.851
-l.d $f18,Z
-neg.d $f18,$f18
-s.d $f18,Z
-l.d $f18,Z1
-neg.d $f18,$f18
-s.d $f18,Z1
-L.851:
-l.d $f18,Radix
-l.d $f16,D
-mul.d $f18,$f18,$f16
-s.d $f18,D
-move $2,$0
-L.850:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end NewD
-.globl SR3750
-.text
-.align 2
-.ent SR3750
-SR3750:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-l.d $f18,X
-l.d $f16,Radix
-l.d $f10,Z2
-sub.d $f8,$f18,$f16
-sub.d $f16,$f10,$f16
-c.lt.d $f8,$f16; bc1t L.854
-sub.d $f18,$f18,$f10
-l.d $f16,W
-sub.d $f16,$f16,$f10
-c.le.d $f18,$f16; bc1f L.854
-lw $24,I
-la $24,1($24)
-sw $24,I
-l.d $f18,X
-l.d $f16,D
-mul.d $f12,$f18,$f16
-jal sqrt
-s.d $f0,X2
-l.d $f18,Z2
-l.d $f16,Y
-l.d $f10,X2
-sub.d $f10,$f10,$f18
-sub.d $f18,$f16,$f18
-sub.d $f18,$f10,$f18
-s.d $f18,Y2
-l.d $f18,Half
-l.d $f10,X8
-sub.d $f16,$f16,$f18
-div.d $f16,$f10,$f16
-s.d $f16,X2
-l.d $f16,X2
-mul.d $f10,$f18,$f16
-mul.d $f10,$f10,$f16
-sub.d $f16,$f16,$f10
-s.d $f16,X2
-l.d $f16,Y2
-add.d $f16,$f16,$f18
-l.d $f10,X2
-sub.d $f18,$f18,$f10
-add.d $f18,$f16,$f18
-s.d $f18,SqEr
-l.d $f18,SqEr
-l.d $f16,MinSqEr
-c.lt.d $f18,$f16; bc1f L.856
-l.d $f18,SqEr
-s.d $f18,MinSqEr
-L.856:
-l.d $f18,Y2
-l.d $f16,X2
-sub.d $f18,$f18,$f16
-s.d $f18,SqEr
-l.d $f18,SqEr
-l.d $f16,MaxSqEr
-c.le.d $f18,$f16; bc1t L.858
-l.d $f18,SqEr
-s.d $f18,MaxSqEr
-L.858:
-L.854:
-move $2,$0
-L.853:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end SR3750
-.globl IsYeqX
-.text
-.align 2
-.ent IsYeqX
-IsYeqX:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0x82000000,-4
-.cprestore 24
-sw $31,28($sp)
-l.d $f18,Y
-l.d $f16,X
-c.eq.d $f18,$f16; bc1t L.861
-lw $24,N
-bgt $24,$0,L.863
-l.d $f18,Zero
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1f L.865
-l.d $f16,Q
-c.le.d $f16,$f18; bc1f L.865
-la $4,L.867
-jal printf
-b L.866
-L.865:
-la $4,2
-la $5,L.868
-jal BadCond
-L.866:
-la $4,L.869
-l.d $f18,Z
-mfc1.d $6,$f18
-l.d $f18,Q
-s.d $f18,16($sp)
-jal printf
-la $4,L.870
-l.d $f18,Y
-mfc1.d $6,$f18
-jal printf
-la $4,L.871
-l.d $f18,X
-mfc1.d $6,$f18
-jal printf
-la $4,L.872
-l.d $f18,Y
-l.d $f16,X
-sub.d $f18,$f18,$f16
-mfc1.d $6,$f18
-jal printf
-L.863:
-lw $24,N
-la $24,1($24)
-sw $24,N
-L.861:
-move $2,$0
-L.860:
-lw $25,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end IsYeqX
-.globl SR3980
-.text
-.align 2
-.ent SR3980
-SR3980:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-L.874:
-lw $24,I
-mtc1 $24,$f18; cvt.d.w $f18,$f18
-s.d $f18,Q
-l.d $f12,Z
-l.d $f14,Q
-jal pow
-s.d $f0,Y
-jal IsYeqX
-lw $24,I
-la $24,1($24)
-sw $24,I
-lw $15,M
-ble $24,$15,L.877
-b L.876
-L.877:
-l.d $f18,Z
-l.d $f16,X
-mul.d $f18,$f18,$f16
-s.d $f18,X
-L.875:
-l.d $f18,X
-l.d $f16,W
-c.lt.d $f18,$f16; bc1t L.874
-L.876:
-move $2,$0
-L.873:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end SR3980
-.globl PrintIfNPositive
-.text
-.align 2
-.ent PrintIfNPositive
-PrintIfNPositive:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-lw $24,N
-ble $24,$0,L.880
-la $4,L.882
-lw $5,N
-jal printf
-L.880:
-move $2,$0
-L.879:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end PrintIfNPositive
-.globl TstPtUf
-.text
-.align 2
-.ent TstPtUf
-TstPtUf:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $0,N
-l.d $f18,Z
-l.d $f16,Zero
-c.eq.d $f18,$f16; bc1t L.884
-la $4,L.886
-jal printf
-la $4,L.887
-jal printf
-la $24,sigfpe
-sw $24,sigsave
-la $4,ovfl_buf
-jal setjmp
-beq $2,$0,L.888
-b L.890
-L.888:
-l.d $f18,Z
-add.d $f16,$f18,$f18
-div.d $f18,$f16,$f18
-s.d $f18,Q9
-la $4,L.891
-l.d $f18,Q9
-mfc1.d $6,$f18
-jal printf
-l.d $f18,Q9
-l.d $f16,Two
-sub.d $f12,$f18,$f16
-jal fabs
-l.d $f16,Radix
-l.d $f10,U2
-mul.d $f16,$f16,$f10
-c.lt.d $f0,$f16; bc1f L.892
-la $4,L.894
-jal printf
-la $4,L.895
-jal printf
-b L.893
-L.892:
-l.d $f18,Q9
-l.d $f16,One
-c.lt.d $f18,$f16; bc1t L.898
-l.d $f16,Two
-c.le.d $f18,$f16; bc1t L.896
-L.898:
-L.890:
-la $24,1
-sw $24,N
-lw $24,ErrCnt+4
-la $24,1($24)
-sw $24,ErrCnt+4
-la $4,L.901
-jal printf
-b L.897
-L.896:
-la $24,1
-sw $24,N
-lw $24,ErrCnt+8
-la $24,1($24)
-sw $24,ErrCnt+8
-la $4,L.904
-jal printf
-L.897:
-L.893:
-sw $0,sigsave
-l.d $f18,Z
-l.d $f16,One
-mul.d $f10,$f18,$f16
-s.d $f10,V9
-l.d $f10,V9
-s.d $f10,Random1
-mul.d $f10,$f16,$f18
-s.d $f10,V9
-l.d $f10,V9
-s.d $f10,Random2
-div.d $f18,$f18,$f16
-s.d $f18,V9
-l.d $f18,Z
-l.d $f16,Random1
-c.eq.d $f18,$f16; bc1f L.905
-l.d $f16,Random2
-c.eq.d $f18,$f16; bc1f L.905
-l.d $f16,V9
-c.eq.d $f18,$f16; bc1f L.905
-lw $24,N
-ble $24,$0,L.906
-jal Pause
-b L.906
-L.905:
-la $24,1
-sw $24,N
-la $4,2
-la $5,L.909
-jal BadCond
-la $4,L.910
-l.d $f18,Z
-mfc1.d $6,$f18
-jal printf
-l.d $f18,Z
-l.d $f16,Random1
-c.eq.d $f18,$f16; bc1t L.911
-la $4,L.913
-l.d $f18,Random1
-mfc1.d $6,$f18
-jal printf
-L.911:
-l.d $f18,Random2
-l.d $f16,Z
-c.eq.d $f16,$f18; bc1t L.914
-l.d $f16,Random1
-c.eq.d $f18,$f16; bc1t L.914
-la $4,L.916
-l.d $f18,Random2
-mfc1.d $6,$f18
-jal printf
-L.914:
-l.d $f18,Z
-l.d $f16,V9
-c.eq.d $f18,$f16; bc1t L.917
-la $4,L.919
-l.d $f18,V9
-mfc1.d $6,$f18
-jal printf
-L.917:
-l.d $f18,Random2
-l.d $f16,Random1
-c.eq.d $f18,$f16; bc1t L.920
-lw $24,ErrCnt+8
-la $24,1($24)
-sw $24,ErrCnt+8
-la $4,2
-la $5,L.924
-jal BadCond
-la $4,L.925
-l.d $f18,Random2
-mfc1.d $6,$f18
-jal printf
-la $4,L.926
-l.d $f18,Random1
-mfc1.d $6,$f18
-jal printf
-L.920:
-jal Pause
-L.906:
-L.884:
-move $2,$0
-L.883:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end TstPtUf
-.globl notify
-.text
-.align 2
-.ent notify
-notify:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-la $4,L.928
-lw $5,0+24($sp)
-jal printf
-la $4,L.929
-jal printf
-move $2,$0
-L.927:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end notify
-.globl msglist
-.text
-.align 2
-.ent msglist
-msglist:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-move $30,$4
-b L.932
-L.931:
-la $4,L.934
-move $24,$30
-la $30,4($24)
-lw $5,($24)
-jal printf
-L.932:
-lw $24,($30)
-bne $24,$0,L.931
-move $2,$0
-L.930:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end msglist
-.data
-.align 2
-L.936:
-.word L.937
-.word L.938
-.word L.939
-.word L.940
-.word L.941
-.word L.942
-.word L.943
-.word L.944
-.word L.945
-.word 0x0
-.globl Instructions
-.text
-.text
-.align 2
-.ent Instructions
-Instructions:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-la $4,L.936
-jal msglist
-move $2,$0
-L.935:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end Instructions
-.data
-.align 2
-L.947:
-.word L.948
-.word L.949
-.word L.950
-.word L.951
-.word L.952
-.word L.953
-.word L.954
-.word L.955
-.word L.956
-.word L.957
-.word L.958
-.word L.959
-.word L.960
-.word L.961
-.word 0x0
-.globl Heading
-.text
-.text
-.align 2
-.ent Heading
-Heading:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-la $4,L.947
-jal msglist
-move $2,$0
-L.946:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end Heading
-.data
-.align 2
-L.963:
-.word L.964
-.word L.965
-.word L.966
-.word L.967
-.word L.968
-.word L.969
-.word L.970
-.word L.971
-.word L.972
-.word L.973
-.word L.974
-.word L.975
-.word L.976
-.word L.977
-.word L.978
-.word L.979
-.word L.980
-.word L.981
-.word L.982
-.word 0x0
-.globl Characteristics
-.text
-.text
-.align 2
-.ent Characteristics
-Characteristics:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-la $4,L.963
-jal msglist
-move $2,$0
-L.962:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end Characteristics
-.data
-.align 2
-L.984:
-.word L.985
-.word L.986
-.word L.987
-.word L.988
-.word L.989
-.word L.990
-.word L.991
-.word L.992
-.word L.993
-.word L.994
-.word L.995
-.word L.996
-.word L.997
-.word L.998
-.word L.999
-.word L.1000
-.word L.1001
-.word 0x0
-.globl History
-.text
-.text
-.align 2
-.ent History
-History:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-la $4,L.984
-jal msglist
-move $2,$0
-L.983:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end History
-.globl pow
-.text
-.align 2
-.ent pow
-pow:
-.frame $sp,72,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-72
-.fmask 0xfc000000,-40
-.mask 0xc2800000,-20
-s.d $f26,16($sp)
-s.d $f28,24($sp)
-s.d $f30,32($sp)
-sw $23,40($sp)
-.cprestore 44
-sw $30,48($sp)
-sw $31,52($sp)
-mov.d $f30,$f12
-mov.d $f28,$f14
-move $23,$0
-sw $0,-8+72($sp)
-l.d $f18,L.7
-c.eq.d $f28,$f18; bc1f L.1003
-l.d $f0,L.8
-b L.1002
-L.1003:
-l.d $f18,L.1008
-c.lt.d $f28,$f18; bc1t L.1007
-l.d $f18,L.1009
-c.le.d $f28,$f18; bc1t L.1005
-L.1007:
-l.d $f18,L.825
-c.eq.d $f30,$f18; bc1t L.1005
-mov.d $f12,$f30
-jal log
-mov.d $f18,$f0
-mul.d $f12,$f28,$f18
-jal exp
-mov.d $f18,$f0
-b L.1002
-L.1005:
-l.d $f18,L.7
-c.lt.d $f28,$f18; bc1f L.1010
-neg.d $f28,$f28
-la $24,1
-sw $24,-8+72($sp)
-L.1010:
-mov.d $f12,$f28
-la $6,-16+72($sp)
-jal modf
-mov.d $f28,$f0
-l.d $f18,L.7
-c.eq.d $f28,$f18; bc1t L.1012
-mov.d $f12,$f30
-jal log
-mov.d $f18,$f0
-mul.d $f12,$f28,$f18
-jal exp
-mov.d $f26,$f0
-b L.1013
-L.1012:
-l.d $f26,L.8
-L.1013:
-mov.d $f12,$f30
-la $6,-4+72($sp)
-jal frexp
-mov.d $f30,$f0
-l.d $f18,-16+72($sp)
-trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
-move $30,$24
-beq $24,$0,L.1014
-L.1016:
-and $24,$30,1
-beq $24,$0,L.1020
-mul.d $f26,$f26,$f30
-lw $24,-4+72($sp)
-addu $23,$23,$24
-L.1020:
-sra $24,$30,1
-move $30,$24
-bne $24,$0,L.1022
-b L.1018
-L.1022:
-mul.d $f30,$f30,$f30
-lw $24,-4+72($sp)
-sll $24,$24,1
-sw $24,-4+72($sp)
-l.d $f18,L.1026
-c.lt.d $f30,$f18; bc1f L.1016
-l.d $f18,L.1027
-mul.d $f30,$f18,$f30
-lw $24,-4+72($sp)
-subu $24,$24,1
-sw $24,-4+72($sp)
-b L.1016
-L.1018:
-L.1014:
-lw $24,-8+72($sp)
-beq $24,$0,L.1028
-l.d $f18,L.8
-div.d $f26,$f18,$f26
-negu $23,$23
-L.1028:
-mov.d $f12,$f26
-move $6,$23
-jal ldexp
-mov.d $f18,$f0
-L.1002:
-l.d $f26,16($sp)
-l.d $f28,24($sp)
-l.d $f30,32($sp)
-lw $23,40($sp)
-lw $25,44($sp)
-lw $30,48($sp)
-lw $31,52($sp)
-addu $sp,$sp,72
-j $31
-.end pow
-.globl UfNGrad
-.comm UfNGrad,4
-.globl SqRWrng
-.comm SqRWrng,4
-.globl IEEE
-.comm IEEE,4
-.globl Anomaly
-.comm Anomaly,4
-.globl Monot
-.comm Monot,4
-.globl NotMonot
-.comm NotMonot,4
-.globl Done
-.comm Done,4
-.globl Break
-.comm Break,4
-.globl RSqrt
-.comm RSqrt,4
-.globl RAddSub
-.comm RAddSub,4
-.globl RDiv
-.comm RDiv,4
-.globl RMult
-.comm RMult,4
-.globl GAddSub
-.comm GAddSub,4
-.globl GDiv
-.comm GDiv,4
-.globl GMult
-.comm GMult,4
-.globl N1
-.comm N1,4
-.globl N
-.comm N,4
-.globl M
-.comm M,4
-.globl PageNo
-.comm PageNo,4
-.globl Milestone
-.comm Milestone,4
-.globl fpecount
-.comm fpecount,4
-.globl ErrCnt
-.comm ErrCnt,16
-.globl Z9
-.comm Z9,8
-.globl Z2
-.comm Z2,8
-.globl Z1
-.comm Z1,8
-.globl PseudoZero
-.comm PseudoZero,8
-.globl Z
-.comm Z,8
-.globl Random2
-.comm Random2,8
-.globl Y2
-.comm Y2,8
-.globl Y1
-.comm Y1,8
-.globl Y
-.comm Y,8
-.globl Random1
-.comm Random1,8
-.globl X8
-.comm X8,8
-.globl X2
-.comm X2,8
-.globl X1
-.comm X1,8
-.globl X
-.comm X,8
-.globl W
-.comm W,8
-.globl V9
-.comm V9,8
-.globl V0
-.comm V0,8
-.globl V
-.comm V,8
-.globl U2
-.comm U2,8
-.globl U1
-.comm U1,8
-.globl UfThold
-.comm UfThold,8
-.globl OneUlp
-.comm OneUlp,8
-.globl S
-.comm S,8
-.globl Underflow
-.comm Underflow,8
-.globl T
-.comm T,8
-.globl Random9
-.comm Random9,8
-.globl R
-.comm R,8
-.globl Q9
-.comm Q9,8
-.globl Q
-.comm Q,8
-.globl Precision
-.comm Precision,8
-.globl MyZero
-.comm MyZero,8
-.globl J
-.comm J,8
-.globl StickyBit
-.comm StickyBit,8
-.globl I
-.comm I,4
-.globl HInvrse
-.comm HInvrse,8
-.globl H
-.comm H,8
-.globl F9
-.comm F9,8
-.globl F6
-.comm F6,8
-.globl Third
-.comm Third,8
-.globl E9
-.comm E9,8
-.globl MaxSqEr
-.comm MaxSqEr,8
-.globl SqEr
-.comm SqEr,8
-.globl MinSqEr
-.comm MinSqEr,8
-.globl E3
-.comm E3,8
-.globl Exp2
-.comm Exp2,8
-.globl E1
-.comm E1,8
-.globl E0
-.comm E0,8
-.globl FourD
-.comm FourD,8
-.globl D
-.comm D,8
-.globl CInvrse
-.comm CInvrse,8
-.globl C
-.comm C,8
-.globl A1
-.comm A1,8
-.globl AInvrse
-.comm AInvrse,8
-.globl ch
-.comm ch,8
-.globl Indx
-.comm Indx,4
-.globl BMinusU2
-.comm BMinusU2,8
-.globl RadixD2
-.comm RadixD2,8
-.globl BInvrse
-.comm BInvrse,8
-.globl Radix
-.comm Radix,8
-.globl sigsave
-.comm sigsave,4
-.globl ovfl_buf
-.comm ovfl_buf,112
-.extern _iob 0
-.rdata
-.align 3
-L.1027:
-.word 0x40000000
-.word 0x0
-.align 3
-L.1026:
-.word 0x3fe00000
-.word 0x0
-.align 3
-L.1009:
-.word 0x40913000
-.word 0x0
-.align 3
-L.1008:
-.word 0xc0913000
-.word 0x0
-.align 0
-L.1001:
-.byte 115
-.byte 101
-.byte 101
-.byte 32
-.byte 115
-.byte 111
-.byte 117
-.byte 114
-.byte 99
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 109
-.byte 111
-.byte 114
-.byte 101
-.byte 32
-.byte 104
-.byte 105
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 46
-.byte 0
-.align 0
-L.1000:
-.byte 66
-.byte 65
-.byte 83
-.byte 73
-.byte 67
-.byte 32
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 40
-.byte 67
-.byte 41
-.byte 32
-.byte 49
-.byte 57
-.byte 56
-.byte 51
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 80
-.byte 114
-.byte 111
-.byte 102
-.byte 46
-.byte 32
-.byte 87
-.byte 46
-.byte 32
-.byte 77
-.byte 46
-.byte 32
-.byte 75
-.byte 97
-.byte 104
-.byte 97
-.byte 110
-.byte 59
-.byte 0
-.align 0
-L.999:
-.byte 97
-.byte 115
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 99
-.byte 101
-.byte 114
-.byte 116
-.byte 97
-.byte 105
-.byte 110
-.byte 32
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 121
-.byte 32
-.byte 87
-.byte 65
-.byte 78
-.byte 71
-.byte 32
-.byte 109
-.byte 97
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.998:
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 45
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 44
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 108
-.byte 115
-.byte 111
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 32
-.byte 108
-.byte 111
-.byte 103
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 105
-.byte 99
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.997:
-.byte 10
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 98
-.byte 97
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 117
-.byte 112
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 110
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 114
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 114
-.byte 101
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 101
-.byte 110
-.byte 116
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 0
-.align 0
-L.996:
-.byte 111
-.byte 102
-.byte 32
-.byte 112
-.byte 97
-.byte 116
-.byte 104
-.byte 111
-.byte 108
-.byte 111
-.byte 103
-.byte 105
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 115
-.byte 97
-.byte 121
-.byte 32
-.byte 104
-.byte 111
-.byte 119
-.byte 32
-.byte 119
-.byte 101
-.byte 108
-.byte 108
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 109
-.byte 112
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.995:
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 116
-.byte 114
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 112
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 119
-.byte 105
-.byte 100
-.byte 101
-.byte 114
-.byte 32
-.byte 118
-.byte 97
-.byte 114
-.byte 105
-.byte 101
-.byte 116
-.byte 121
-.byte 0
-.align 0
-L.994:
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 44
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 32
-.byte 40
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 115
-.byte 41
-.byte 0
-.align 0
-L.993:
-.byte 87
-.byte 46
-.byte 32
-.byte 74
-.byte 46
-.byte 32
-.byte 67
-.byte 111
-.byte 100
-.byte 121
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 87
-.byte 46
-.byte 32
-.byte 87
-.byte 97
-.byte 105
-.byte 116
-.byte 101
-.byte 46
-.byte 32
-.byte 65
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 98
-.byte 111
-.byte 116
-.byte 104
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 115
-.byte 32
-.byte 116
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.992:
-.byte 98
-.byte 111
-.byte 111
-.byte 107
-.byte 32
-.byte 32
-.byte 96
-.byte 83
-.byte 111
-.byte 102
-.byte 116
-.byte 119
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 77
-.byte 97
-.byte 110
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 69
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 70
-.byte 117
-.byte 110
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 39
-.byte 32
-.byte 40
-.byte 49
-.byte 57
-.byte 56
-.byte 48
-.byte 41
-.byte 32
-.byte 98
-.byte 121
-.byte 0
-.align 0
-L.991:
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 96
-.byte 77
-.byte 65
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 39
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 0
-.align 0
-L.990:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 99
-.byte 97
-.byte 112
-.byte 97
-.byte 98
-.byte 105
-.byte 108
-.byte 105
-.byte 116
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 103
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 121
-.byte 111
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 105
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.989:
-.byte 70
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 115
-.byte 101
-.byte 113
-.byte 117
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.988:
-.byte 32
-.byte 32
-.byte 32
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 50
-.byte 43
-.byte 50
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 53
-.byte 32
-.byte 46
-.byte 0
-.align 0
-L.987:
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 0
-.align 0
-L.986:
-.byte 32
-.byte 32
-.byte 32
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 44
-.byte 0
-.align 0
-L.985:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 97
-.byte 116
-.byte 116
-.byte 101
-.byte 109
-.byte 112
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 105
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 97
-.byte 109
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.982:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 68
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 45
-.byte 66
-.byte 105
-.byte 110
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 89
-.byte 69
-.byte 84
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 97
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 46
-.byte 0
-.align 0
-L.981:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 69
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 101
-.byte 118
-.byte 101
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 89
-.byte 69
-.byte 84
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.980:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 32
-.byte 32
-.byte 89
-.byte 94
-.byte 88
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.979:
-.byte 9
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 116
-.byte 97
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 112
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 45
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 115
-.byte 46
-.byte 0
-.align 0
-L.978:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 99
-.byte 121
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.977:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 86
-.byte 48
-.byte 32
-.byte 32
-.byte 116
-.byte 101
-.byte 108
-.byte 108
-.byte 115
-.byte 44
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 32
-.byte 73
-.byte 110
-.byte 102
-.byte 105
-.byte 110
-.byte 105
-.byte 116
-.byte 121
-.byte 32
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.976:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 86
-.byte 32
-.byte 61
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 44
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 46
-.byte 0
-.align 0
-L.975:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 69
-.byte 48
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 101
-.byte 108
-.byte 108
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 98
-.byte 114
-.byte 117
-.byte 112
-.byte 116
-.byte 44
-.byte 32
-.byte 103
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 117
-.byte 122
-.byte 122
-.byte 121
-.byte 46
-.byte 0
-.align 0
-L.974:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 84
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.973:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 87
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 32
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 66
-.byte 105
-.byte 116
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 46
-.byte 0
-.align 0
-L.972:
-.byte 9
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 46
-.byte 44
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 46
-.byte 44
-.byte 32
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 46
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 83
-.byte 113
-.byte 114
-.byte 116
-.byte 46
-.byte 0
-.align 0
-L.971:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 87
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 116
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 0
-L.970:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 65
-.byte 100
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 46
-.byte 44
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 46
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 46
-.byte 0
-.align 0
-L.969:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 47
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 79
-.byte 110
-.byte 101
-.byte 32
-.byte 85
-.byte 108
-.byte 112
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 108
-.byte 105
-.byte 116
-.byte 116
-.byte 108
-.byte 101
-.byte 32
-.byte 108
-.byte 101
-.byte 115
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 32
-.byte 46
-.byte 0
-.align 0
-L.968:
-.byte 9
-.byte 40
-.byte 79
-.byte 110
-.byte 101
-.byte 85
-.byte 108
-.byte 112
-.byte 110
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 76
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 80
-.byte 108
-.byte 97
-.byte 99
-.byte 101
-.byte 41
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 48
-.byte 48
-.byte 120
-.byte 120
-.byte 120
-.byte 32
-.byte 46
-.byte 0
-.align 0
-L.967:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 47
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 79
-.byte 110
-.byte 101
-.byte 32
-.byte 85
-.byte 108
-.byte 112
-.byte 0
-.align 0
-L.966:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 114
-.byte 105
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 0
-L.965:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 44
-.byte 32
-.byte 52
-.byte 44
-.byte 32
-.byte 56
-.byte 44
-.byte 32
-.byte 49
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 54
-.byte 44
-.byte 32
-.byte 49
-.byte 48
-.byte 48
-.byte 44
-.byte 32
-.byte 50
-.byte 53
-.byte 54
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 0
-L.964:
-.byte 82
-.byte 117
-.byte 110
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 114
-.byte 101
-.byte 118
-.byte 101
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 115
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 115
-.byte 58
-.byte 0
-.align 0
-L.961:
-.byte 9
-.byte 79
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 101
-.byte 118
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 105
-.byte 108
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 112
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 58
-.byte 0
-.align 0
-L.960:
-.byte 9
-.byte 79
-.byte 112
-.byte 116
-.byte 105
-.byte 109
-.byte 105
-.byte 122
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 101
-.byte 118
-.byte 101
-.byte 108
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.959:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 105
-.byte 108
-.byte 101
-.byte 114
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.958:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.957:
-.byte 9
-.byte 86
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 9
-.byte 49
-.byte 48
-.byte 32
-.byte 70
-.byte 101
-.byte 98
-.byte 114
-.byte 117
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 49
-.byte 57
-.byte 56
-.byte 57
-.byte 59
-.byte 0
-.align 0
-L.956:
-.byte 9
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 9
-.byte 100
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 59
-.byte 0
-.align 0
-L.955:
-.byte 73
-.byte 110
-.byte 32
-.byte 100
-.byte 111
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 115
-.byte 111
-.byte 44
-.byte 32
-.byte 112
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 108
-.byte 117
-.byte 100
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 108
-.byte 108
-.byte 111
-.byte 119
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 110
-.byte 102
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 0
-.align 0
-L.954:
-.byte 9
-.byte 83
-.byte 97
-.byte 110
-.byte 32
-.byte 70
-.byte 114
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 44
-.byte 32
-.byte 67
-.byte 65
-.byte 32
-.byte 57
-.byte 52
-.byte 49
-.byte 52
-.byte 51
-.byte 45
-.byte 48
-.byte 55
-.byte 48
-.byte 52
-.byte 44
-.byte 32
-.byte 85
-.byte 83
-.byte 65
-.byte 10
-.byte 0
-.align 0
-L.953:
-.byte 9
-.byte 85
-.byte 110
-.byte 105
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 116
-.byte 121
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 67
-.byte 97
-.byte 108
-.byte 105
-.byte 102
-.byte 111
-.byte 114
-.byte 110
-.byte 105
-.byte 97
-.byte 0
-.align 0
-L.952:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 67
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 85
-.byte 45
-.byte 55
-.byte 54
-.byte 0
-.align 0
-L.951:
-.byte 9
-.byte 82
-.byte 105
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 75
-.byte 97
-.byte 114
-.byte 112
-.byte 105
-.byte 110
-.byte 115
-.byte 107
-.byte 105
-.byte 0
-.align 0
-L.950:
-.byte 80
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 115
-.byte 117
-.byte 103
-.byte 103
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 0
-.align 0
-L.949:
-.byte 99
-.byte 111
-.byte 112
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 117
-.byte 110
-.byte 97
-.byte 110
-.byte 116
-.byte 105
-.byte 99
-.byte 105
-.byte 112
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 110
-.byte 101
-.byte 119
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 110
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 112
-.byte 97
-.byte 116
-.byte 104
-.byte 111
-.byte 108
-.byte 111
-.byte 103
-.byte 105
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.948:
-.byte 85
-.byte 115
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 105
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 104
-.byte 101
-.byte 108
-.byte 112
-.byte 32
-.byte 100
-.byte 101
-.byte 98
-.byte 117
-.byte 103
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 117
-.byte 103
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 119
-.byte 105
-.byte 108
-.byte 108
-.byte 0
-.align 0
-L.945:
-.byte 65
-.byte 110
-.byte 115
-.byte 119
-.byte 101
-.byte 114
-.byte 32
-.byte 113
-.byte 117
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 89
-.byte 44
-.byte 32
-.byte 121
-.byte 44
-.byte 32
-.byte 78
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 110
-.byte 32
-.byte 40
-.byte 117
-.byte 110
-.byte 108
-.byte 101
-.byte 115
-.byte 115
-.byte 32
-.byte 111
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 119
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 100
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.944:
-.byte 97
-.byte 109
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 107
-.byte 101
-.byte 32
-.byte 102
-.byte 117
-.byte 114
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.943:
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 97
-.byte 110
-.byte 121
-.byte 119
-.byte 97
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 32
-.byte 104
-.byte 111
-.byte 119
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 109
-.byte 105
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 111
-.byte 110
-.byte 101
-.byte 115
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 115
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 110
-.byte 0
-.align 0
-L.942:
-.byte 119
-.byte 97
-.byte 114
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 46
-.byte 32
-.byte 32
-.byte 73
-.byte 102
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 117
-.byte 97
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 118
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 32
-.byte 110
-.byte 97
-.byte 117
-.byte 103
-.byte 104
-.byte 116
-.byte 44
-.byte 32
-.byte 100
-.byte 111
-.byte 110
-.byte 39
-.byte 116
-.byte 32
-.byte 100
-.byte 101
-.byte 115
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 114
-.byte 117
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 0
-L.941:
-.byte 116
-.byte 111
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 101
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 115
-.byte 117
-.byte 114
-.byte 114
-.byte 111
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 97
-.byte 102
-.byte 116
-.byte 101
-.byte 114
-.byte 44
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 104
-.byte 97
-.byte 112
-.byte 115
-.byte 44
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 112
-.byte 108
-.byte 97
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 0
-.align 0
-L.940:
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 44
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.939:
-.byte 116
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 117
-.byte 97
-.byte 100
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 116
-.byte 101
-.byte 114
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 101
-.byte 99
-.byte 117
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 97
-.byte 110
-.byte 0
-.align 0
-L.938:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 96
-.byte 69
-.byte 78
-.byte 68
-.byte 32
-.byte 79
-.byte 70
-.byte 32
-.byte 84
-.byte 69
-.byte 83
-.byte 84
-.byte 39
-.byte 44
-.byte 10
-.byte 0
-.align 0
-L.937:
-.byte 76
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 112
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 109
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 101
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 105
-.byte 46
-.byte 101
-.byte 46
-.byte 32
-.byte 98
-.byte 101
-.byte 102
-.byte 111
-.byte 114
-.byte 101
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 112
-.byte 108
-.byte 97
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.934:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.929:
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 76
-.byte 69
-.byte 65
-.byte 83
-.byte 69
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 73
-.byte 70
-.byte 89
-.byte 32
-.byte 75
-.byte 65
-.byte 82
-.byte 80
-.byte 73
-.byte 78
-.byte 75
-.byte 83
-.byte 73
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.928:
-.byte 37
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 116
-.byte 46
-.byte 46
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.926:
-.byte 9
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 90
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.925:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 49
-.byte 32
-.byte 42
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.924:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 100
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 117
-.byte 116
-.byte 101
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.919:
-.byte 90
-.byte 32
-.byte 47
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.916:
-.byte 49
-.byte 32
-.byte 42
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.913:
-.byte 90
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 0
-L.910:
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.909:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 0
-.align 0
-L.904:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.901:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 86
-.byte 69
-.byte 82
-.byte 89
-.byte 32
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.895:
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 106
-.byte 117
-.byte 115
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.894:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 44
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 0
-L.891:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 109
-.byte 97
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 101
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 40
-.byte 90
-.byte 32
-.byte 43
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.887:
-.byte 40
-.byte 90
-.byte 32
-.byte 43
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 115
-.byte 97
-.byte 102
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.886:
-.byte 83
-.byte 105
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 100
-.byte 101
-.byte 110
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 101
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 0
-.align 0
-L.882:
-.byte 83
-.byte 105
-.byte 109
-.byte 105
-.byte 108
-.byte 97
-.byte 114
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 116
-.byte 105
-.byte 109
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.872:
-.byte 9
-.byte 9
-.byte 116
-.byte 104
-.byte 101
-.byte 121
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.871:
-.byte 9
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 117
-.byte 110
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 59
-.byte 10
-.byte 0
-.align 0
-L.870:
-.byte 9
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 59
-.byte 10
-.byte 0
-.align 0
-L.869:
-.byte 9
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 10
-.byte 0
-.align 0
-L.868:
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.867:
-.byte 87
-.byte 65
-.byte 82
-.byte 78
-.byte 73
-.byte 78
-.byte 71
-.byte 58
-.byte 32
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.849:
-.byte 9
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 101
-.byte 97
-.byte 100
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 48
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.848:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 3
-L.840:
-.word 0x3ed4f8b5
-.word 0x88e368f1
-.align 0
-L.838:
-.byte 37
-.byte 115
-.byte 58
-.byte 32
-.byte 32
-.byte 37
-.byte 115
-.byte 0
-.align 0
-L.837:
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 0
-.align 0
-L.836:
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 0
-.align 0
-L.835:
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 0
-.align 0
-L.834:
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 0
-.align 0
-L.828:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 97
-.byte 103
-.byte 101
-.byte 58
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 10
-.byte 0
-.align 0
-L.827:
-.byte 10
-.byte 68
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 109
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 102
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 109
-.byte 105
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 111
-.byte 110
-.byte 101
-.byte 32
-.byte 78
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 0
-.align 3
-L.825:
-.word 0xbff00000
-.word 0x0
-.align 0
-L.820:
-.byte 69
-.byte 78
-.byte 68
-.byte 32
-.byte 79
-.byte 70
-.byte 32
-.byte 84
-.byte 69
-.byte 83
-.byte 84
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.819:
-.byte 10
-.byte 65
-.byte 32
-.byte 116
-.byte 111
-.byte 116
-.byte 97
-.byte 108
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 119
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.816:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 69
-.byte 120
-.byte 99
-.byte 101
-.byte 108
-.byte 108
-.byte 101
-.byte 110
-.byte 116
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.815:
-.byte 32
-.byte 100
-.byte 117
-.byte 114
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 71
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.814:
-.byte 44
-.byte 10
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 115
-.byte 105
-.byte 98
-.byte 108
-.byte 121
-.byte 32
-.byte 68
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 32
-.byte 82
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.813:
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.810:
-.byte 56
-.byte 53
-.byte 52
-.byte 0
-.align 0
-L.809:
-.byte 55
-.byte 53
-.byte 52
-.byte 0
-.align 0
-L.806:
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 112
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 73
-.byte 69
-.byte 69
-.byte 69
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 110
-.byte 100
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 80
-.byte 0
-.align 0
-L.805:
-.byte 82
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 111
-.byte 114
-.byte 109
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 0
-.align 0
-L.802:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 83
-.byte 97
-.byte 116
-.byte 105
-.byte 115
-.byte 102
-.byte 97
-.byte 99
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.796:
-.byte 78
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 100
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 115
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 98
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.795:
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 39
-.byte 115
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 115
-.byte 101
-.byte 113
-.byte 117
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.794:
-.byte 80
-.byte 111
-.byte 116
-.byte 101
-.byte 110
-.byte 116
-.byte 105
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 102
-.byte 97
-.byte 116
-.byte 97
-.byte 108
-.byte 32
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 112
-.byte 111
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 0
-L.791:
-.byte 117
-.byte 110
-.byte 97
-.byte 99
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 32
-.byte 83
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 68
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.790:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 0
-.align 0
-L.786:
-.byte 100
-.byte 101
-.byte 115
-.byte 112
-.byte 105
-.byte 116
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 110
-.byte 105
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 68
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.785:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 65
-.byte 99
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.780:
-.byte 83
-.byte 97
-.byte 116
-.byte 105
-.byte 115
-.byte 102
-.byte 97
-.byte 99
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.779:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 0
-.align 0
-L.768:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 32
-.byte 37
-.byte 45
-.byte 50
-.byte 57
-.byte 115
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.761:
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 0
-L.760:
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 0
-L.759:
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 0
-L.758:
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 115
-.byte 32
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 0
-L.754:
-.byte 10
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 48
-.byte 32
-.byte 47
-.byte 32
-.byte 48
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 115
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 0
-L.753:
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.750:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 49
-.byte 32
-.byte 47
-.byte 32
-.byte 48
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 115
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 0
-L.749:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 109
-.byte 101
-.byte 115
-.byte 115
-.byte 97
-.byte 103
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 47
-.byte 111
-.byte 114
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 32
-.byte 100
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 63
-.byte 10
-.byte 0
-.align 0
-L.748:
-.byte 32
-.byte 32
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 101
-.byte 97
-.byte 100
-.byte 44
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.747:
-.byte 32
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.742:
-.byte 32
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 32
-.byte 116
-.byte 114
-.byte 97
-.byte 112
-.byte 115
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.727:
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.726:
-.byte 32
-.byte 117
-.byte 110
-.byte 98
-.byte 97
-.byte 108
-.byte 97
-.byte 110
-.byte 99
-.byte 101
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 59
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 42
-.byte 32
-.byte 86
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.725:
-.byte 66
-.byte 97
-.byte 100
-.byte 108
-.byte 121
-.byte 0
-.align 0
-L.718:
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 90
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 50
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.717:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.705:
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 90
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.704:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 119
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.687:
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 44
-.byte 32
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 10
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 0
-.align 0
-L.686:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 0
-.align 0
-L.680:
-.byte 97
-.byte 98
-.byte 111
-.byte 118
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.679:
-.byte 65
-.byte 110
-.byte 121
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 42
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 111
-.byte 110
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.678:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 86
-.byte 32
-.byte 47
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.677:
-.byte 78
-.byte 111
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 86
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.676:
-.byte 84
-.byte 104
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 115
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 98
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 115
-.byte 121
-.byte 115
-.byte 116
-.byte 101
-.byte 109
-.byte 32
-.byte 116
-.byte 114
-.byte 97
-.byte 112
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.675:
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 86
-.byte 48
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.672:
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 86
-.byte 32
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.663:
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 115
-.byte 104
-.byte 114
-.byte 105
-.byte 110
-.byte 107
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.660:
-.byte 45
-.byte 40
-.byte 45
-.byte 89
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 89
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.659:
-.byte 102
-.byte 105
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 0
-.align 0
-L.658:
-.byte 83
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.655:
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.654:
-.byte 67
-.byte 97
-.byte 110
-.byte 32
-.byte 96
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 45
-.byte 89
-.byte 39
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 63
-.byte 10
-.byte 0
-.align 0
-L.647:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 103
-.byte 101
-.byte 110
-.byte 101
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.646:
-.byte 83
-.byte 101
-.byte 97
-.byte 114
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.645:
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.637:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 119
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 94
-.byte 81
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 114
-.byte 32
-.byte 110
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 121
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 101
-.byte 109
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.636:
-.byte 65
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 97
-.byte 100
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 116
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.629:
-.byte 9
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 105
-.byte 110
-.byte 121
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.628:
-.byte 9
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 117
-.byte 99
-.byte 104
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 115
-.byte 112
-.byte 111
-.byte 105
-.byte 108
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 10
-.byte 0
-.align 0
-L.627:
-.byte 9
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.626:
-.byte 9
-.byte 40
-.byte 49
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 59
-.byte 10
-.byte 0
-.align 0
-L.625:
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 10
-.byte 0
-.align 0
-L.624:
-.byte 67
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 0
-.align 0
-L.617:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 88
-.byte 94
-.byte 40
-.byte 40
-.byte 88
-.byte 32
-.byte 43
-.byte 32
-.byte 49
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 41
-.byte 41
-.byte 32
-.byte 118
-.byte 115
-.byte 46
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 40
-.byte 50
-.byte 41
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 62
-.byte 32
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.613:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.610:
-.byte 32
-.byte 32
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.609:
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 116
-.byte 119
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 48
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 10
-.byte 0
-.align 0
-L.605:
-.byte 97
-.byte 99
-.byte 116
-.byte 117
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 58
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.604:
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 97
-.byte 102
-.byte 102
-.byte 108
-.byte 105
-.byte 99
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 10
-.byte 9
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 59
-.byte 10
-.byte 0
-.align 0
-L.603:
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 10
-.byte 111
-.byte 110
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 0
-.align 0
-L.602:
-.byte 83
-.byte 105
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.601:
-.byte 82
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 110
-.byte 97
-.byte 114
-.byte 114
-.byte 111
-.byte 119
-.byte 59
-.byte 32
-.byte 85
-.byte 49
-.byte 94
-.byte 37
-.byte 100
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.596:
-.byte 109
-.byte 101
-.byte 114
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.595:
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 115
-.byte 117
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 32
-.byte 108
-.byte 97
-.byte 114
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 82
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 0
-.align 0
-L.594:
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 0
-.align 0
-L.593:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.592:
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 32
-.byte 43
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.591:
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.588:
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 97
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 97
-.byte 99
-.byte 116
-.byte 117
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 10
-.byte 0
-.align 0
-L.587:
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 40
-.byte 102
-.byte 40
-.byte 88
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 102
-.byte 40
-.byte 90
-.byte 41
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.586:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 0
-L.585:
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 110
-.byte 111
-.byte 99
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 116
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.584:
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 10
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 115
-.byte 32
-.byte 0
-.align 0
-L.583:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 44
-.byte 32
-.byte 0
-.align 0
-L.582:
-.byte 121
-.byte 101
-.byte 116
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 90
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.581:
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.576:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 47
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.566:
-.byte 40
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 41
-.byte 32
-.byte 60
-.byte 32
-.byte 69
-.byte 48
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.565:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 103
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 59
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 32
-.byte 65
-.byte 98
-.byte 115
-.byte 111
-.byte 108
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 69
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 61
-.byte 10
-.byte 0
-.align 0
-L.560:
-.byte 124
-.byte 81
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 124
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.559:
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 81
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.558:
-.byte 81
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 89
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.byte 32
-.byte 100
-.byte 101
-.byte 110
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 124
-.byte 81
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 124
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 48
-.byte 59
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 115
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.557:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 101
-.byte 115
-.byte 32
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 10
-.byte 0
-.align 0
-L.555:
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 32
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.554:
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 100
-.byte 111
-.byte 119
-.byte 110
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.553:
-.byte 97
-.byte 112
-.byte 112
-.byte 114
-.byte 111
-.byte 97
-.byte 99
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.552:
-.byte 69
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 100
-.byte 101
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.540:
-.byte 83
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 115
-.byte 116
-.byte 114
-.byte 105
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 69
-.byte 48
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.539:
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.538:
-.byte 68
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 32
-.byte 104
-.byte 105
-.byte 103
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.535:
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 99
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.534:
-.byte 80
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 116
-.byte 115
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 32
-.byte 104
-.byte 105
-.byte 103
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 0
-L.527:
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.526:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 100
-.byte 108
-.byte 121
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.525:
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 44
-.byte 32
-.byte 105
-.byte 115
-.byte 110
-.byte 39
-.byte 116
-.byte 59
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.524:
-.byte 66
-.byte 117
-.byte 116
-.byte 32
-.byte 45
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.521:
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 58
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.520:
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 100
-.byte 108
-.byte 121
-.byte 32
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.519:
-.byte 80
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 97
-.byte 110
-.byte 10
-.byte 0
-.align 0
-L.506:
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.482:
-.byte 83
-.byte 101
-.byte 101
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 69
-.byte 48
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.479:
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.476:
-.byte 9
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.475:
-.byte 69
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 97
-.byte 108
-.byte 105
-.byte 100
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.454:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 119
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 94
-.byte 105
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.451:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.449:
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 117
-.byte 108
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.448:
-.byte 79
-.byte 98
-.byte 115
-.byte 101
-.byte 114
-.byte 118
-.byte 101
-.byte 100
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 114
-.byte 117
-.byte 110
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 0
-L.447:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.444:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.439:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.434:
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.433:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.432:
-.byte 65
-.byte 110
-.byte 111
-.byte 109
-.byte 97
-.byte 108
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 60
-.byte 32
-.byte 0
-.align 0
-L.392:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.370:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 88
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 110
-.byte 45
-.byte 109
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 88
-.byte 32
-.byte 110
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.369:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 105
-.byte 116
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.352:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 109
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 105
-.byte 116
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.341:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 88
-.byte 41
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 88
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 88
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.336:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 48
-.byte 46
-.byte 48
-.byte 44
-.byte 32
-.byte 45
-.byte 48
-.byte 46
-.byte 48
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.334:
-.byte 10
-.byte 82
-.byte 117
-.byte 110
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 40
-.byte 120
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.333:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 78
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.332:
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 89
-.byte 32
-.byte 42
-.byte 32
-.byte 88
-.byte 32
-.byte 116
-.byte 114
-.byte 105
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 3
-L.323:
-.word 0x40080000
-.word 0x0
-.align 0
-L.322:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 100
-.byte 111
-.byte 109
-.byte 32
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.321:
-.byte 68
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 117
-.byte 116
-.byte 101
-.byte 63
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.318:
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 40
-.byte 115
-.byte 41
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 40
-.byte 115
-.byte 41
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 10
-.byte 40
-.byte 110
-.byte 111
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 98
-.byte 111
-.byte 118
-.byte 101
-.byte 41
-.byte 32
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 101
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 0
-L.316:
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.315:
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.298:
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.295:
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 41
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 89
-.byte 32
-.byte 45
-.byte 32
-.byte 88
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 110
-.byte 32
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.292:
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.291:
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 0
-.align 0
-L.288:
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.281:
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.276:
-.byte 73
-.byte 110
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 108
-.byte 101
-.byte 116
-.byte 101
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 114
-.byte 121
-.byte 45
-.byte 112
-.byte 114
-.byte 111
-.byte 112
-.byte 97
-.byte 103
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.272:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 42
-.byte 32
-.byte 40
-.byte 32
-.byte 49
-.byte 32
-.byte 47
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 0
-.align 0
-L.270:
-.byte 47
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.267:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.264:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.261:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.256:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.253:
-.byte 42
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.252:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.249:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.239:
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 40
-.byte 49
-.byte 47
-.byte 88
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 0
-.align 0
-L.220:
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 100
-.byte 100
-.byte 47
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.219:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 42
-.byte 44
-.byte 32
-.byte 47
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 45
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 121
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.216:
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 41
-.byte 32
-.byte 123
-.byte 46
-.byte 46
-.byte 46
-.byte 46
-.byte 46
-.byte 125
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 32
-.byte 123
-.byte 46
-.byte 46
-.byte 46
-.byte 47
-.byte 40
-.byte 88
-.byte 45
-.byte 49
-.byte 46
-.byte 48
-.byte 41
-.byte 46
-.byte 46
-.byte 46
-.byte 125
-.byte 10
-.byte 0
-.align 0
-L.215:
-.byte 32
-.byte 32
-.byte 115
-.byte 117
-.byte 99
-.byte 104
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 103
-.byte 97
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 97
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.214:
-.byte 32
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 32
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 32
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 101
-.byte 98
-.byte 121
-.byte 32
-.byte 118
-.byte 105
-.byte 116
-.byte 105
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 0
-L.213:
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 32
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 32
-.byte 60
-.byte 32
-.byte 49
-.byte 32
-.byte 32
-.byte 97
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 10
-.byte 0
-.align 0
-L.210:
-.byte 45
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 99
-.byte 101
-.byte 108
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 111
-.byte 98
-.byte 115
-.byte 99
-.byte 117
-.byte 114
-.byte 101
-.byte 100
-.byte 0
-.align 0
-L.205:
-.byte 42
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 47
-.byte 111
-.byte 114
-.byte 32
-.byte 47
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 0
-L.201:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 49
-.byte 47
-.byte 49
-.byte 46
-.byte 48
-.byte 48
-.byte 48
-.byte 46
-.byte 46
-.byte 49
-.byte 32
-.byte 62
-.byte 61
-.byte 32
-.byte 49
-.byte 0
-.align 0
-L.199:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 88
-.byte 47
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 88
-.byte 0
-.align 0
-L.194:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 101
-.byte 100
-.byte 32
-.byte 49
-.byte 32
-.byte 117
-.byte 108
-.byte 112
-.byte 10
-.byte 111
-.byte 114
-.byte 32
-.byte 32
-.byte 49
-.byte 47
-.byte 51
-.byte 32
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 32
-.byte 51
-.byte 47
-.byte 57
-.byte 32
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 32
-.byte 57
-.byte 47
-.byte 50
-.byte 55
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 97
-.byte 103
-.byte 114
-.byte 101
-.byte 101
-.byte 0
-.align 0
-L.190:
-.byte 42
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.188:
-.byte 42
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 49
-.byte 42
-.byte 88
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 88
-.byte 0
-.align 0
-L.185:
-.byte 10
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 42
-.byte 44
-.byte 32
-.byte 47
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 45
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.184:
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 108
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 46
-.byte 0
-.align 0
-L.179:
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 108
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 88
-.byte 61
-.byte 89
-.byte 44
-.byte 88
-.byte 43
-.byte 90
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 89
-.byte 43
-.byte 90
-.byte 33
-.byte 0
-.align 0
-L.175:
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.174:
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 98
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 32
-.byte 66
-.byte 45
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 44
-.byte 32
-.byte 105
-.byte 46
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.173:
-.byte 83
-.byte 111
-.byte 109
-.byte 101
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 10
-.byte 0
-.align 0
-L.167:
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 110
-.byte 10
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.166:
-.byte 90
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 90
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 0
-L.165:
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 101
-.byte 120
-.byte 97
-.byte 99
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 97
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 10
-.byte 0
-.align 0
-L.164:
-.byte 66
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 117
-.byte 110
-.byte 117
-.byte 115
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 102
-.byte 0
-.align 0
-L.160:
-.byte 9
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 90
-.byte 50
-.byte 32
-.byte 45
-.byte 32
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.159:
-.byte 9
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 90
-.byte 49
-.byte 32
-.byte 45
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.158:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 0
-L.157:
-.byte 0
-.align 0
-L.150:
-.byte 84
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 102
-.byte 101
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 117
-.byte 114
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.145:
-.byte 80
-.byte 111
-.byte 115
-.byte 115
-.byte 105
-.byte 98
-.byte 108
-.byte 121
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 32
-.byte 112
-.byte 97
-.byte 114
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 0
-L.144:
-.byte 98
-.byte 121
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 101
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.143:
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 115
-.byte 121
-.byte 109
-.byte 112
-.byte 116
-.byte 111
-.byte 109
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.142:
-.byte 114
-.byte 101
-.byte 115
-.byte 112
-.byte 101
-.byte 99
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 10
-.byte 0
-.align 0
-L.141:
-.byte 68
-.byte 105
-.byte 115
-.byte 97
-.byte 103
-.byte 114
-.byte 101
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 109
-.byte 111
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 32
-.byte 88
-.byte 49
-.byte 44
-.byte 32
-.byte 89
-.byte 49
-.byte 44
-.byte 32
-.byte 90
-.byte 49
-.byte 44
-.byte 10
-.byte 0
-.align 0
-L.119:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 111
-.byte 114
-.byte 115
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 53
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 105
-.byte 103
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 32
-.byte 0
-.align 0
-L.117:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.116:
-.byte 108
-.byte 111
-.byte 103
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 105
-.byte 99
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 111
-.byte 108
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 85
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.113:
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 44
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 105
-.byte 116
-.byte 115
-.byte 101
-.byte 108
-.byte 102
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 109
-.byte 105
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.112:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 10
-.byte 0
-.align 0
-L.99:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 102
-.byte 117
-.byte 122
-.byte 122
-.byte 121
-.byte 44
-.byte 88
-.byte 61
-.byte 49
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 88
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 0
-L.95:
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 60
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 70
-.byte 65
-.byte 76
-.byte 83
-.byte 69
-.byte 44
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 46
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 63
-.byte 0
-.align 3
-L.93:
-.word 0x40240000
-.word 0x0
-.align 0
-L.88:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 103
-.byte 111
-.byte 111
-.byte 100
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 50
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 48
-.byte 0
-.align 0
-L.84:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 98
-.byte 105
-.byte 103
-.byte 58
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 98
-.byte 108
-.byte 101
-.byte 109
-.byte 115
-.byte 0
-.align 0
-L.82:
-.byte 77
-.byte 89
-.byte 83
-.byte 84
-.byte 69
-.byte 82
-.byte 89
-.byte 58
-.byte 32
-.byte 114
-.byte 101
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.81:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 105
-.byte 114
-.byte 109
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 3
-L.78:
-.word 0x3f847ae1
-.word 0x47ae147b
-.align 0
-L.77:
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 98
-.byte 101
-.byte 116
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.76:
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 105
-.byte 114
-.byte 109
-.byte 115
-.byte 32
-.byte 99
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.61:
-.byte 82
-.byte 101
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 10
-.byte 32
-.byte 0
-.align 0
-L.60:
-.byte 67
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 10
-.byte 0
-.align 0
-L.54:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.45:
-.byte 83
-.byte 101
-.byte 97
-.byte 114
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.44:
-.byte 10
-.byte 0
-.align 0
-L.43:
-.byte 45
-.byte 49
-.byte 44
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 44
-.byte 32
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 44
-.byte 32
-.byte 51
-.byte 44
-.byte 32
-.byte 52
-.byte 44
-.byte 32
-.byte 53
-.byte 44
-.byte 32
-.byte 57
-.byte 44
-.byte 32
-.byte 50
-.byte 55
-.byte 44
-.byte 32
-.byte 51
-.byte 50
-.byte 32
-.byte 38
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 0
-L.38:
-.byte 53
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 52
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 51
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 56
-.byte 48
-.byte 44
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 52
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 54
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 53
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 52
-.byte 56
-.byte 0
-.align 0
-L.34:
-.byte 57
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 51
-.byte 42
-.byte 51
-.byte 44
-.byte 32
-.byte 50
-.byte 55
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 57
-.byte 42
-.byte 51
-.byte 44
-.byte 32
-.byte 51
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 56
-.byte 42
-.byte 52
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 51
-.byte 50
-.byte 45
-.byte 50
-.byte 55
-.byte 45
-.byte 52
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 0
-L.30:
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 32
-.byte 43
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 0
-L.26:
-.byte 45
-.byte 49
-.byte 43
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 43
-.byte 97
-.byte 98
-.byte 115
-.byte 40
-.byte 49
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 45
-.byte 49
-.byte 43
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 42
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 0
-L.22:
-.byte 51
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 50
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 52
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 51
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 52
-.byte 43
-.byte 50
-.byte 42
-.byte 40
-.byte 45
-.byte 50
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 52
-.byte 45
-.byte 51
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 3
-L.20:
-.word 0x3f50624d
-.word 0xd2f1a9fc
-.align 0
-L.19:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 45
-.byte 48
-.byte 46
-.byte 48
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 111
-.byte 110
-.byte 45
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 33
-.byte 10
-.byte 0
-.align 0
-L.14:
-.byte 48
-.byte 43
-.byte 48
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 32
-.byte 60
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 43
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 50
-.byte 0
-.align 0
-L.12:
-.byte 80
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 119
-.byte 32
-.byte 82
-.byte 85
-.byte 78
-.byte 78
-.byte 73
-.byte 78
-.byte 71
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 115
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 58
-.byte 10
-.byte 0
-.align 3
-L.8:
-.word 0x3ff00000
-.word 0x0
-.align 3
-L.7:
-.word 0x0
-.word 0x0
-.align 0
-L.2:
-.byte 10
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 70
-.byte 76
-.byte 79
-.byte 65
-.byte 84
-.byte 73
-.byte 78
-.byte 71
-.byte 45
-.byte 80
-.byte 79
-.byte 73
-.byte 78
-.byte 84
-.byte 32
-.byte 69
-.byte 82
-.byte 82
-.byte 79
-.byte 82
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 10
-.byte 0
+.set reorder
+.globl Zero
+.sdata
+.align 3
+Zero:
+.word 0x0
+.word 0x0
+.globl Half
+.sdata
+.align 3
+Half:
+.word 0x3fe00000
+.word 0x0
+.globl One
+.sdata
+.align 3
+One:
+.word 0x3ff00000
+.word 0x0
+.globl Two
+.sdata
+.align 3
+Two:
+.word 0x40000000
+.word 0x0
+.globl Three
+.sdata
+.align 3
+Three:
+.word 0x40080000
+.word 0x0
+.globl Four
+.sdata
+.align 3
+Four:
+.word 0x40100000
+.word 0x0
+.globl Five
+.sdata
+.align 3
+Five:
+.word 0x40140000
+.word 0x0
+.globl Eight
+.sdata
+.align 3
+Eight:
+.word 0x40200000
+.word 0x0
+.globl Nine
+.sdata
+.align 3
+Nine:
+.word 0x40220000
+.word 0x0
+.globl TwentySeven
+.sdata
+.align 3
+TwentySeven:
+.word 0x403b0000
+.word 0x0
+.globl ThirtyTwo
+.sdata
+.align 3
+ThirtyTwo:
+.word 0x40400000
+.word 0x0
+.globl TwoForty
+.sdata
+.align 3
+TwoForty:
+.word 0x406e0000
+.word 0x0
+.globl MinusOne
+.sdata
+.align 3
+MinusOne:
+.word 0xbff00000
+.word 0x0
+.globl OneAndHalf
+.sdata
+.align 3
+OneAndHalf:
+.word 0x3ff80000
+.word 0x0
+.globl NoTrials
+.sdata
+.align 2
+NoTrials:
+.word 0x14
+.globl sigfpe
+.text
+.text
+.align 2
+.ent sigfpe
+sigfpe:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+lw $24,fpecount
+la $24,1($24)
+sw $24,fpecount
+la $4,L.2
+jal printf
+la $4,_iob+16
+jal fflush
+lw $24,sigsave
+beq $24,$0,L.4
+la $4,8
+lw $5,sigsave
+jal signal
+sw $0,sigsave
+la $4,ovfl_buf
+la $5,1
+jal longjmp
+L.4:
+jal abort
+L.1:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end sigfpe
+.data
+.align 2
+L.757:
+.word L.758
+.word L.759
+.word L.760
+.word L.761
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,240,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-240
+.mask 0xc2ff0000,-168
+sw $16,32($sp)
+sw $17,36($sp)
+sw $18,40($sp)
+sw $19,44($sp)
+sw $20,48($sp)
+sw $21,52($sp)
+sw $22,56($sp)
+sw $23,60($sp)
+.cprestore 64
+sw $30,68($sp)
+sw $31,72($sp)
+l.d $f18,L.7
+s.d $f18,Zero
+l.d $f18,L.8
+s.d $f18,One
+l.d $f18,One
+add.d $f16,$f18,$f18
+s.d $f16,Two
+l.d $f16,Two
+add.d $f10,$f16,$f18
+s.d $f10,Three
+l.d $f10,Three
+add.d $f8,$f10,$f18
+s.d $f8,Four
+l.d $f8,Four
+add.d $f6,$f8,$f18
+s.d $f6,Five
+add.d $f6,$f8,$f8
+s.d $f6,Eight
+mul.d $f6,$f10,$f10
+s.d $f6,Nine
+l.d $f6,Nine
+mul.d $f6,$f6,$f10
+s.d $f6,TwentySeven
+l.d $f6,Eight
+mul.d $f6,$f8,$f6
+s.d $f6,ThirtyTwo
+l.d $f6,Five
+mul.d $f6,$f8,$f6
+mul.d $f10,$f6,$f10
+mul.d $f10,$f10,$f8
+s.d $f10,TwoForty
+neg.d $f10,$f18
+s.d $f10,MinusOne
+div.d $f16,$f18,$f16
+s.d $f16,Half
+l.d $f16,Half
+add.d $f18,$f18,$f16
+s.d $f18,OneAndHalf
+sw $0,ErrCnt
+sw $0,ErrCnt+4
+sw $0,ErrCnt+8
+sw $0,ErrCnt+12
+la $24,1
+sw $24,PageNo
+sw $0,Milestone
+la $4,8
+la $5,sigfpe
+jal signal
+jal Instructions
+jal Pause
+jal Heading
+jal Pause
+jal Characteristics
+jal Pause
+jal History
+jal Pause
+la $24,7
+sw $24,Milestone
+la $4,L.12
+jal printf
+move $4,$0
+l.d $f18,Zero
+add.d $f16,$f18,$f18
+c.eq.d $f16,$f18; bc1f L.15
+l.d $f16,One
+sub.d $f10,$f16,$f16
+c.eq.d $f10,$f18; bc1f L.15
+c.le.d $f16,$f18; bc1t L.15
+add.d $f18,$f16,$f16
+l.d $f16,Two
+c.eq.d $f18,$f16; bc1f L.15
+la $30,1
+b L.16
+L.15:
+move $30,$0
+L.16:
+move $5,$30
+la $6,L.14
+jal TstCond
+l.d $f18,Zero
+neg.d $f18,$f18
+s.d $f18,Z
+l.d $f18,Z
+l.d $f16,L.7
+c.eq.d $f18,$f16; bc1t L.17
+lw $24,ErrCnt
+la $24,1($24)
+sw $24,ErrCnt
+la $4,L.19
+jal printf
+l.d $f18,L.20
+s.d $f18,U1
+l.d $f18,L.8
+s.d $f18,Radix
+jal TstPtUf
+L.17:
+move $4,$0
+l.d $f18,Three
+l.d $f16,Two
+l.d $f10,One
+add.d $f8,$f16,$f10
+c.eq.d $f18,$f8; bc1f L.23
+l.d $f8,Four
+add.d $f6,$f18,$f10
+c.eq.d $f8,$f6; bc1f L.23
+l.d $f6,Zero
+neg.d $f4,$f16
+mul.d $f16,$f16,$f4
+add.d $f16,$f8,$f16
+c.eq.d $f16,$f6; bc1f L.23
+sub.d $f18,$f8,$f18
+sub.d $f18,$f18,$f10
+c.eq.d $f18,$f6; bc1f L.23
+la $23,1
+b L.24
+L.23:
+move $23,$0
+L.24:
+move $5,$23
+la $6,L.22
+jal TstCond
+l.d $f18,MinusOne
+s.d $f18,-8+240($sp)
+l.d $f16,One
+l.d $f10,L.7
+sub.d $f10,$f10,$f16
+c.eq.d $f18,$f10; bc1f L.27
+l.d $f10,Zero
+add.d $f8,$f18,$f16
+c.eq.d $f8,$f10; bc1f L.27
+add.d $f8,$f16,$f18
+c.eq.d $f8,$f10; bc1f L.27
+mov.d $f12,$f16
+jal fabs
+l.d $f16,Zero
+l.d $f10,-8+240($sp)
+add.d $f18,$f10,$f0
+c.eq.d $f18,$f16; bc1f L.27
+l.d $f18,MinusOne
+mul.d $f10,$f18,$f18
+add.d $f18,$f18,$f10
+c.eq.d $f18,$f16; bc1f L.27
+la $22,1
+b L.28
+L.27:
+move $22,$0
+L.28:
+move $4,$0
+move $5,$22
+la $6,L.26
+jal TstCond
+move $4,$0
+l.d $f18,Half
+l.d $f16,MinusOne
+add.d $f16,$f18,$f16
+add.d $f18,$f16,$f18
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.31
+la $21,1
+b L.32
+L.31:
+move $21,$0
+L.32:
+move $5,$21
+la $6,L.30
+jal TstCond
+la $24,10
+sw $24,Milestone
+move $4,$0
+l.d $f18,Nine
+l.d $f16,Three
+mul.d $f10,$f16,$f16
+c.eq.d $f18,$f10; bc1f L.35
+l.d $f10,TwentySeven
+mul.d $f18,$f18,$f16
+c.eq.d $f10,$f18; bc1f L.35
+l.d $f18,Eight
+l.d $f16,Four
+add.d $f8,$f16,$f16
+c.eq.d $f18,$f8; bc1f L.35
+l.d $f8,ThirtyTwo
+mul.d $f18,$f18,$f16
+c.eq.d $f8,$f18; bc1f L.35
+sub.d $f18,$f8,$f10
+sub.d $f18,$f18,$f16
+l.d $f16,One
+sub.d $f18,$f18,$f16
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.35
+la $20,1
+b L.36
+L.35:
+move $20,$0
+L.36:
+move $5,$20
+la $6,L.34
+jal TstCond
+move $4,$0
+l.d $f18,Five
+l.d $f16,Four
+l.d $f10,One
+add.d $f10,$f16,$f10
+c.eq.d $f18,$f10; bc1f L.39
+l.d $f10,TwoForty
+l.d $f8,Three
+s.d $f8,-16+240($sp)
+mul.d $f6,$f16,$f18
+mul.d $f6,$f6,$f8
+mul.d $f6,$f6,$f16
+c.eq.d $f10,$f6; bc1f L.39
+l.d $f6,Zero
+div.d $f4,$f10,$f8
+mul.d $f8,$f16,$f16
+mul.d $f8,$f8,$f18
+sub.d $f8,$f4,$f8
+c.eq.d $f8,$f6; bc1f L.39
+div.d $f8,$f10,$f16
+l.d $f4,-16+240($sp)
+mul.d $f4,$f18,$f4
+mul.d $f4,$f4,$f16
+sub.d $f8,$f8,$f4
+c.eq.d $f8,$f6; bc1f L.39
+div.d $f18,$f10,$f18
+l.d $f10,-16+240($sp)
+mul.d $f10,$f16,$f10
+mul.d $f16,$f10,$f16
+sub.d $f18,$f18,$f16
+c.eq.d $f18,$f6; bc1f L.39
+la $19,1
+b L.40
+L.39:
+move $19,$0
+L.40:
+move $5,$19
+la $6,L.38
+jal TstCond
+lw $24,ErrCnt
+bne $24,$0,L.41
+la $4,L.43
+jal printf
+la $4,L.44
+jal printf
+L.41:
+la $4,L.45
+jal printf
+l.d $f18,One
+s.d $f18,W
+L.46:
+l.d $f18,W
+add.d $f18,$f18,$f18
+s.d $f18,W
+l.d $f18,W
+l.d $f16,One
+add.d $f10,$f18,$f16
+s.d $f10,Y
+l.d $f10,Y
+sub.d $f18,$f10,$f18
+s.d $f18,Z
+l.d $f18,Z
+sub.d $f18,$f18,$f16
+s.d $f18,Y
+L.47:
+l.d $f12,Y
+jal fabs
+l.d $f16,MinusOne
+add.d $f18,$f16,$f0
+l.d $f16,Zero
+c.lt.d $f18,$f16; bc1t L.46
+l.d $f18,Zero
+s.d $f18,Precision
+l.d $f18,One
+s.d $f18,Y
+L.49:
+l.d $f18,W
+l.d $f16,Y
+add.d $f10,$f18,$f16
+s.d $f10,Radix
+add.d $f16,$f16,$f16
+s.d $f16,Y
+l.d $f16,Radix
+sub.d $f18,$f16,$f18
+s.d $f18,Radix
+L.50:
+l.d $f18,Radix
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.49
+l.d $f18,Radix
+l.d $f16,Two
+c.lt.d $f18,$f16; bc1f L.52
+l.d $f18,One
+s.d $f18,Radix
+L.52:
+la $4,L.54
+l.d $f18,Radix
+mfc1.d $6,$f18
+jal printf
+l.d $f18,Radix
+l.d $f16,L.8
+c.eq.d $f18,$f16; bc1t L.55
+l.d $f18,One
+s.d $f18,W
+L.57:
+l.d $f18,One
+l.d $f16,Precision
+add.d $f16,$f16,$f18
+s.d $f16,Precision
+l.d $f16,W
+l.d $f10,Radix
+mul.d $f16,$f16,$f10
+s.d $f16,W
+l.d $f16,W
+add.d $f18,$f16,$f18
+s.d $f18,Y
+L.58:
+l.d $f18,Y
+l.d $f16,W
+sub.d $f18,$f18,$f16
+l.d $f16,One
+c.eq.d $f18,$f16; bc1t L.57
+L.55:
+l.d $f18,One
+l.d $f16,W
+div.d $f18,$f18,$f16
+s.d $f18,U1
+l.d $f18,U1
+l.d $f16,Radix
+mul.d $f16,$f16,$f18
+s.d $f16,U2
+la $4,L.60
+mfc1.d $6,$f18
+jal printf
+la $4,L.61
+jal printf
+l.d $f18,Radix
+s.d $f18,E0
+l.d $f18,U1
+s.d $f18,E1
+l.d $f18,U2
+s.d $f18,E9
+l.d $f18,Precision
+s.d $f18,E3
+l.d $f18,Four
+l.d $f16,Three
+div.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,X
+l.d $f16,One
+sub.d $f18,$f18,$f16
+s.d $f18,Third
+l.d $f18,Third
+l.d $f16,Half
+sub.d $f16,$f16,$f18
+s.d $f16,F6
+l.d $f16,F6
+add.d $f16,$f16,$f16
+s.d $f16,X
+l.d $f16,X
+sub.d $f12,$f16,$f18
+jal fabs
+s.d $f0,X
+l.d $f18,X
+l.d $f16,U2
+c.lt.d $f18,$f16; bc1f L.62
+l.d $f18,U2
+s.d $f18,X
+L.62:
+L.64:
+l.d $f18,X
+s.d $f18,U2
+l.d $f18,U2
+l.d $f16,Half
+mul.d $f16,$f16,$f18
+l.d $f10,ThirtyTwo
+mul.d $f10,$f10,$f18
+mul.d $f18,$f10,$f18
+add.d $f18,$f16,$f18
+s.d $f18,Y
+l.d $f18,One
+l.d $f16,Y
+add.d $f16,$f18,$f16
+s.d $f16,Y
+l.d $f16,Y
+sub.d $f18,$f16,$f18
+s.d $f18,X
+L.65:
+l.d $f18,X
+l.d $f16,U2
+c.le.d $f16,$f18; bc1t L.67
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.64
+L.67:
+l.d $f18,Two
+l.d $f16,Three
+div.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,Half
+l.d $f16,X
+sub.d $f16,$f16,$f18
+s.d $f16,F6
+l.d $f16,F6
+add.d $f10,$f16,$f16
+s.d $f10,Third
+l.d $f10,Third
+sub.d $f18,$f10,$f18
+s.d $f18,X
+l.d $f18,X
+add.d $f12,$f18,$f16
+jal fabs
+s.d $f0,X
+l.d $f18,X
+l.d $f16,U1
+c.lt.d $f18,$f16; bc1f L.68
+l.d $f18,U1
+s.d $f18,X
+L.68:
+L.70:
+l.d $f18,X
+s.d $f18,U1
+l.d $f18,Half
+l.d $f16,U1
+mul.d $f10,$f18,$f16
+l.d $f8,ThirtyTwo
+mul.d $f8,$f8,$f16
+mul.d $f16,$f8,$f16
+add.d $f16,$f10,$f16
+s.d $f16,Y
+l.d $f16,Y
+sub.d $f16,$f18,$f16
+s.d $f16,Y
+l.d $f16,Y
+add.d $f16,$f18,$f16
+s.d $f16,X
+l.d $f16,X
+sub.d $f16,$f18,$f16
+s.d $f16,Y
+l.d $f16,Y
+add.d $f18,$f18,$f16
+s.d $f18,X
+L.71:
+l.d $f18,X
+l.d $f16,U1
+c.le.d $f16,$f18; bc1t L.73
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.70
+L.73:
+l.d $f18,U1
+l.d $f16,E1
+c.eq.d $f18,$f16; bc1f L.74
+la $4,L.76
+jal printf
+b L.75
+L.74:
+la $4,L.77
+l.d $f18,U1
+mfc1.d $6,$f18
+jal printf
+L.75:
+l.d $f18,U1
+l.d $f16,One
+div.d $f16,$f16,$f18
+s.d $f16,W
+l.d $f16,Half
+sub.d $f10,$f16,$f18
+add.d $f16,$f10,$f16
+s.d $f16,F9
+l.d $f16,U2
+div.d $f18,$f16,$f18
+l.d $f16,L.78
+add.d $f12,$f18,$f16
+jal floor
+s.d $f0,Radix
+l.d $f18,Radix
+l.d $f16,E0
+c.eq.d $f18,$f16; bc1f L.79
+la $4,L.81
+jal printf
+b L.80
+L.79:
+la $4,L.82
+l.d $f18,Radix
+mfc1.d $6,$f18
+jal printf
+L.80:
+la $4,2
+l.d $f18,Eight
+l.d $f16,Radix
+add.d $f18,$f18,$f18
+c.le.d $f16,$f18; bc1f L.85
+la $18,1
+b L.86
+L.85:
+move $18,$0
+L.86:
+move $5,$18
+la $6,L.84
+jal TstCond
+la $4,3
+l.d $f18,Radix
+l.d $f16,Two
+c.eq.d $f18,$f16; bc1t L.92
+l.d $f16,L.93
+c.eq.d $f18,$f16; bc1t L.92
+l.d $f16,One
+c.eq.d $f18,$f16; bc1f L.89
+L.92:
+la $17,1
+b L.90
+L.89:
+move $17,$0
+L.90:
+move $5,$17
+la $6,L.88
+jal TstCond
+la $24,20
+sw $24,Milestone
+move $4,$0
+l.d $f18,Half
+l.d $f16,F9
+sub.d $f16,$f16,$f18
+c.lt.d $f16,$f18; bc1f L.96
+la $16,1
+b L.97
+L.96:
+move $16,$0
+L.97:
+move $5,$16
+la $6,L.95
+jal TstCond
+l.d $f18,F9
+s.d $f18,X
+la $24,1
+sw $24,I
+l.d $f18,Half
+l.d $f16,X
+sub.d $f16,$f16,$f18
+s.d $f16,Y
+l.d $f16,Y
+sub.d $f18,$f16,$f18
+s.d $f18,Z
+move $4,$0
+l.d $f18,X
+l.d $f16,One
+c.eq.d $f18,$f16; bc1f L.102
+l.d $f18,Z
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.100
+L.102:
+la $24,1
+sw $24,-20+240($sp)
+b L.101
+L.100:
+sw $0,-20+240($sp)
+L.101:
+lw $5,-20+240($sp)
+la $6,L.99
+jal TstCond
+l.d $f18,One
+l.d $f16,U2
+add.d $f10,$f18,$f16
+s.d $f10,X
+sw $0,I
+la $24,25
+sw $24,Milestone
+l.d $f10,Radix
+sub.d $f8,$f10,$f18
+s.d $f8,BMinusU2
+l.d $f8,BMinusU2
+sub.d $f16,$f8,$f16
+add.d $f16,$f16,$f18
+s.d $f16,BMinusU2
+c.eq.d $f10,$f18; bc1t L.103
+l.d $f12,U1
+jal log
+mov.d $f18,$f0
+s.d $f18,-32+240($sp)
+l.d $f12,Radix
+jal log
+l.d $f16,TwoForty
+neg.d $f16,$f16
+l.d $f10,-32+240($sp)
+mul.d $f16,$f16,$f10
+div.d $f18,$f16,$f0
+s.d $f18,X
+l.d $f18,Half
+l.d $f16,X
+add.d $f12,$f18,$f16
+jal floor
+s.d $f0,Y
+l.d $f18,X
+l.d $f16,Y
+sub.d $f12,$f18,$f16
+jal fabs
+l.d $f16,Four
+mul.d $f18,$f0,$f16
+l.d $f16,One
+c.lt.d $f18,$f16; bc1f L.105
+l.d $f18,Y
+s.d $f18,X
+L.105:
+l.d $f18,X
+l.d $f16,TwoForty
+div.d $f18,$f18,$f16
+s.d $f18,Precision
+l.d $f18,Half
+l.d $f16,Precision
+add.d $f12,$f18,$f16
+jal floor
+s.d $f0,Y
+l.d $f18,Precision
+l.d $f16,Y
+sub.d $f12,$f18,$f16
+jal fabs
+l.d $f16,TwoForty
+mul.d $f18,$f0,$f16
+l.d $f16,Half
+c.lt.d $f18,$f16; bc1f L.107
+l.d $f18,Y
+s.d $f18,Precision
+L.107:
+L.103:
+l.d $f18,Precision
+s.d $f18,-32+240($sp)
+mov.d $f12,$f18
+jal floor
+l.d $f16,-32+240($sp)
+c.eq.d $f16,$f0; bc1f L.111
+l.d $f18,Radix
+l.d $f16,One
+c.eq.d $f18,$f16; bc1f L.109
+L.111:
+la $4,L.112
+jal printf
+la $4,L.113
+jal printf
+L.109:
+l.d $f18,Radix
+l.d $f16,One
+c.eq.d $f18,$f16; bc1f L.114
+la $4,L.116
+jal printf
+b L.115
+L.114:
+la $4,L.117
+l.d $f18,Precision
+mfc1.d $6,$f18
+jal printf
+L.115:
+la $4,1
+l.d $f18,Nine
+l.d $f16,U2
+mul.d $f16,$f16,$f18
+mul.d $f18,$f16,$f18
+l.d $f16,TwoForty
+mul.d $f18,$f18,$f16
+l.d $f16,One
+c.lt.d $f18,$f16; bc1f L.120
+la $24,1
+sw $24,-36+240($sp)
+b L.121
+L.120:
+sw $0,-36+240($sp)
+L.121:
+lw $5,-36+240($sp)
+la $6,L.119
+jal TstCond
+la $24,30
+sw $24,Milestone
+l.d $f18,Four
+l.d $f16,Three
+l.d $f10,One
+div.d $f8,$f10,$f18
+div.d $f18,$f18,$f16
+sub.d $f18,$f18,$f10
+sub.d $f18,$f18,$f8
+mul.d $f18,$f18,$f16
+sub.d $f12,$f18,$f8
+jal fabs
+s.d $f0,X
+L.122:
+l.d $f18,X
+s.d $f18,Z2
+l.d $f18,One
+l.d $f16,Z2
+l.d $f10,Half
+mul.d $f10,$f10,$f16
+l.d $f8,ThirtyTwo
+mul.d $f8,$f8,$f16
+mul.d $f16,$f8,$f16
+add.d $f16,$f10,$f16
+add.d $f16,$f18,$f16
+sub.d $f18,$f16,$f18
+s.d $f18,X
+L.123:
+l.d $f18,X
+l.d $f16,Z2
+c.le.d $f16,$f18; bc1t L.125
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.122
+L.125:
+l.d $f18,Three
+l.d $f16,Four
+div.d $f10,$f18,$f16
+l.d $f8,Two
+div.d $f8,$f8,$f18
+sub.d $f10,$f10,$f8
+mul.d $f18,$f10,$f18
+l.d $f10,One
+div.d $f16,$f10,$f16
+sub.d $f12,$f18,$f16
+jal fabs
+s.d $f0,Z
+s.d $f0,Y
+s.d $f0,X
+L.126:
+l.d $f18,Z
+s.d $f18,Z1
+l.d $f18,One
+l.d $f16,Two
+div.d $f18,$f18,$f16
+l.d $f16,Z1
+l.d $f10,Half
+mul.d $f10,$f10,$f16
+l.d $f8,ThirtyTwo
+mul.d $f8,$f8,$f16
+mul.d $f16,$f8,$f16
+add.d $f16,$f10,$f16
+sub.d $f16,$f18,$f16
+add.d $f16,$f16,$f18
+sub.d $f16,$f18,$f16
+add.d $f18,$f16,$f18
+s.d $f18,Z
+L.127:
+l.d $f18,Z
+l.d $f16,Z1
+c.le.d $f16,$f18; bc1t L.129
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.126
+L.129:
+L.130:
+L.133:
+l.d $f18,Y
+s.d $f18,Y1
+l.d $f18,Half
+l.d $f16,Y1
+mul.d $f10,$f18,$f16
+l.d $f8,ThirtyTwo
+mul.d $f8,$f8,$f16
+mul.d $f16,$f8,$f16
+add.d $f16,$f10,$f16
+sub.d $f16,$f18,$f16
+add.d $f16,$f16,$f18
+sub.d $f16,$f18,$f16
+add.d $f18,$f16,$f18
+s.d $f18,Y
+L.134:
+l.d $f18,Y
+l.d $f16,Y1
+c.le.d $f16,$f18; bc1t L.136
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.133
+L.136:
+l.d $f18,X
+s.d $f18,X1
+l.d $f18,X1
+l.d $f16,F9
+l.d $f10,Half
+mul.d $f10,$f10,$f18
+l.d $f8,ThirtyTwo
+mul.d $f8,$f8,$f18
+mul.d $f18,$f8,$f18
+add.d $f18,$f10,$f18
+sub.d $f18,$f18,$f16
+add.d $f18,$f18,$f16
+s.d $f18,X
+L.131:
+l.d $f18,X
+l.d $f16,X1
+c.le.d $f16,$f18; bc1t L.137
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.130
+L.137:
+l.d $f18,X1
+l.d $f16,Y1
+c.eq.d $f18,$f16; bc1f L.140
+l.d $f16,Z1
+c.eq.d $f18,$f16; bc1t L.138
+L.140:
+la $4,1
+la $5,L.141
+jal BadCond
+la $4,L.142
+l.d $f18,X1
+mfc1.d $6,$f18
+l.d $f18,Y1
+s.d $f18,16($sp)
+l.d $f18,Z1
+s.d $f18,24($sp)
+jal printf
+la $4,L.143
+jal printf
+la $4,L.144
+jal printf
+la $4,L.145
+jal notify
+l.d $f18,U1
+l.d $f16,X1
+c.eq.d $f16,$f18; bc1t L.149
+l.d $f16,Y1
+c.eq.d $f16,$f18; bc1t L.149
+l.d $f16,Z1
+c.eq.d $f16,$f18; bc1f L.139
+L.149:
+la $4,L.150
+jal printf
+b L.139
+L.138:
+l.d $f18,Z1
+l.d $f16,U1
+c.eq.d $f18,$f16; bc1f L.153
+l.d $f18,Z2
+l.d $f16,U2
+c.eq.d $f18,$f16; bc1t L.151
+L.153:
+l.d $f18,Z1
+l.d $f16,U1
+c.lt.d $f18,$f16; bc1f L.156
+l.d $f18,Z2
+l.d $f16,U2
+c.lt.d $f18,$f16; bc1t L.154
+L.156:
+move $4,$0
+la $5,L.157
+jal BadCond
+la $4,L.158
+jal notify
+la $4,L.159
+l.d $f18,U1
+mfc1.d $6,$f18
+l.d $f16,Z1
+sub.d $f18,$f16,$f18
+s.d $f18,16($sp)
+jal printf
+la $4,L.160
+l.d $f18,U2
+mfc1.d $6,$f18
+l.d $f16,Z2
+sub.d $f18,$f16,$f18
+s.d $f18,16($sp)
+jal printf
+b L.155
+L.154:
+l.d $f18,Zero
+l.d $f16,Z1
+c.le.d $f16,$f18; bc1t L.163
+l.d $f16,Z2
+c.le.d $f16,$f18; bc1f L.161
+L.163:
+la $4,L.164
+l.d $f18,Radix
+mfc1.d $6,$f18
+jal printf
+la $4,L.165
+jal printf
+la $4,L.166
+l.d $f18,Z1
+mfc1.d $6,$f18
+l.d $f18,Z2
+s.d $f18,16($sp)
+jal printf
+la $4,L.167
+jal notify
+L.161:
+l.d $f18,Z1
+l.d $f16,Z2
+c.eq.d $f18,$f16; bc1f L.170
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1t L.168
+L.170:
+l.d $f18,Z1
+l.d $f16,U1
+div.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,Z2
+l.d $f16,U2
+div.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,X
+c.le.d $f18,$f16; bc1t L.171
+l.d $f18,Y
+s.d $f18,X
+L.171:
+l.d $f12,X
+jal log
+neg.d $f18,$f0
+s.d $f18,Q
+la $4,L.173
+jal printf
+l.d $f12,Radix
+jal log
+la $4,L.174
+l.d $f16,Q
+div.d $f18,$f16,$f0
+mfc1.d $6,$f18
+jal printf
+l.d $f12,L.93
+jal log
+la $4,L.175
+l.d $f16,Q
+div.d $f18,$f16,$f0
+mfc1.d $6,$f18
+jal printf
+L.168:
+la $4,L.150
+jal printf
+L.155:
+L.151:
+L.139:
+jal Pause
+la $24,35
+sw $24,Milestone
+l.d $f18,Radix
+l.d $f16,Two
+c.lt.d $f18,$f16; bc1t L.176
+l.d $f18,Radix
+l.d $f16,W
+mul.d $f18,$f18,$f18
+div.d $f18,$f16,$f18
+s.d $f18,X
+l.d $f18,X
+l.d $f16,One
+add.d $f16,$f18,$f16
+s.d $f16,Y
+l.d $f16,Y
+sub.d $f18,$f16,$f18
+s.d $f18,Z
+l.d $f18,Z
+l.d $f16,U2
+add.d $f10,$f18,$f16
+s.d $f10,T
+l.d $f10,T
+sub.d $f18,$f10,$f18
+s.d $f18,X
+move $4,$0
+l.d $f18,X
+c.eq.d $f18,$f16; bc1f L.180
+la $24,1
+sw $24,-40+240($sp)
+b L.181
+L.180:
+sw $0,-40+240($sp)
+L.181:
+lw $5,-40+240($sp)
+la $6,L.179
+jal TstCond
+l.d $f18,X
+l.d $f16,U2
+c.eq.d $f18,$f16; bc1f L.182
+la $4,L.184
+jal printf
+L.182:
+L.176:
+la $4,L.185
+jal printf
+l.d $f18,F9
+l.d $f16,One
+mul.d $f10,$f18,$f16
+s.d $f10,Y
+mul.d $f10,$f16,$f18
+s.d $f10,Z
+l.d $f10,Half
+sub.d $f18,$f18,$f10
+s.d $f18,X
+l.d $f18,X
+l.d $f8,Y
+sub.d $f8,$f8,$f10
+sub.d $f8,$f8,$f18
+s.d $f8,Y
+l.d $f8,Z
+sub.d $f10,$f8,$f10
+sub.d $f18,$f10,$f18
+s.d $f18,Z
+l.d $f18,U2
+add.d $f10,$f16,$f18
+s.d $f10,X
+l.d $f10,X
+l.d $f8,Radix
+mul.d $f6,$f10,$f8
+s.d $f6,T
+mul.d $f10,$f8,$f10
+s.d $f10,R
+l.d $f10,T
+sub.d $f10,$f10,$f8
+s.d $f10,X
+mul.d $f18,$f8,$f18
+l.d $f10,X
+sub.d $f10,$f10,$f18
+s.d $f10,X
+l.d $f10,R
+sub.d $f10,$f10,$f8
+s.d $f10,T
+l.d $f10,T
+sub.d $f18,$f10,$f18
+s.d $f18,T
+sub.d $f18,$f8,$f16
+l.d $f16,X
+mul.d $f16,$f16,$f18
+s.d $f16,X
+l.d $f16,T
+mul.d $f18,$f16,$f18
+s.d $f18,T
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.186
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.186
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1f L.186
+l.d $f16,T
+c.eq.d $f16,$f18; bc1f L.186
+la $24,1
+sw $24,GMult
+b L.187
+L.186:
+move $24,$0
+sw $24,GMult
+la $4,1
+move $5,$24
+la $6,L.188
+jal TstCond
+L.187:
+l.d $f18,Radix
+l.d $f16,U2
+mul.d $f18,$f18,$f16
+s.d $f18,Z
+l.d $f18,Z
+l.d $f16,One
+add.d $f16,$f16,$f18
+s.d $f16,X
+l.d $f16,X
+add.d $f18,$f16,$f18
+mul.d $f16,$f16,$f16
+sub.d $f12,$f18,$f16
+jal fabs
+l.d $f16,U2
+sub.d $f18,$f0,$f16
+s.d $f18,Y
+l.d $f18,One
+sub.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,X
+sub.d $f16,$f18,$f16
+mul.d $f18,$f18,$f18
+sub.d $f12,$f16,$f18
+jal fabs
+l.d $f16,U1
+sub.d $f18,$f0,$f16
+s.d $f18,Z
+move $4,$0
+l.d $f18,Zero
+l.d $f16,Y
+c.le.d $f16,$f18; bc1f L.191
+l.d $f16,Z
+c.le.d $f16,$f18; bc1f L.191
+la $24,1
+sw $24,-40+240($sp)
+b L.192
+L.191:
+sw $0,-40+240($sp)
+L.192:
+lw $5,-40+240($sp)
+la $6,L.190
+jal TstCond
+l.d $f18,One
+l.d $f16,U2
+sub.d $f10,$f18,$f16
+s.d $f10,Y
+add.d $f16,$f18,$f16
+s.d $f16,X
+l.d $f16,Y
+div.d $f16,$f18,$f16
+s.d $f16,Z
+l.d $f16,Z
+l.d $f10,X
+sub.d $f16,$f16,$f10
+s.d $f16,Y
+l.d $f16,Three
+div.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,Nine
+div.d $f16,$f16,$f18
+s.d $f16,Z
+l.d $f16,Z
+l.d $f10,X
+sub.d $f10,$f10,$f16
+s.d $f10,X
+l.d $f10,TwentySeven
+div.d $f18,$f18,$f10
+s.d $f18,T
+l.d $f18,T
+sub.d $f18,$f16,$f18
+s.d $f18,Z
+la $4,2
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.195
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.195
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1f L.195
+la $24,1
+sw $24,-44+240($sp)
+b L.196
+L.195:
+sw $0,-44+240($sp)
+L.196:
+lw $5,-44+240($sp)
+la $6,L.194
+jal TstCond
+l.d $f18,F9
+l.d $f16,One
+div.d $f10,$f18,$f16
+s.d $f10,Y
+l.d $f10,Half
+sub.d $f18,$f18,$f10
+s.d $f18,X
+l.d $f18,Y
+sub.d $f18,$f18,$f10
+l.d $f10,X
+sub.d $f18,$f18,$f10
+s.d $f18,Y
+l.d $f18,U2
+add.d $f18,$f16,$f18
+s.d $f18,X
+l.d $f18,X
+div.d $f16,$f18,$f16
+s.d $f16,T
+l.d $f16,T
+sub.d $f18,$f16,$f18
+s.d $f18,X
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.197
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.197
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1f L.197
+la $24,1
+sw $24,GDiv
+b L.198
+L.197:
+move $24,$0
+sw $24,GDiv
+la $4,1
+move $5,$24
+la $6,L.199
+jal TstCond
+L.198:
+l.d $f18,One
+l.d $f16,U2
+add.d $f16,$f18,$f16
+div.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,Half
+l.d $f16,X
+sub.d $f16,$f16,$f18
+sub.d $f18,$f16,$f18
+s.d $f18,Y
+la $4,1
+l.d $f18,Y
+l.d $f16,Zero
+c.lt.d $f18,$f16; bc1f L.202
+la $24,1
+sw $24,-48+240($sp)
+b L.203
+L.202:
+sw $0,-48+240($sp)
+L.203:
+lw $5,-48+240($sp)
+la $6,L.201
+jal TstCond
+l.d $f18,One
+l.d $f16,U2
+sub.d $f10,$f18,$f16
+s.d $f10,X
+l.d $f10,Radix
+mul.d $f16,$f10,$f16
+add.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,X
+mul.d $f16,$f18,$f10
+s.d $f16,Z
+l.d $f16,Y
+mul.d $f8,$f16,$f10
+s.d $f8,T
+l.d $f8,Z
+div.d $f8,$f8,$f10
+s.d $f8,R
+l.d $f8,T
+div.d $f10,$f8,$f10
+s.d $f10,StickyBit
+l.d $f10,R
+sub.d $f18,$f10,$f18
+s.d $f18,X
+l.d $f18,StickyBit
+sub.d $f18,$f18,$f16
+s.d $f18,Y
+move $4,$0
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.206
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.206
+la $24,1
+sw $24,-52+240($sp)
+b L.207
+L.206:
+sw $0,-52+240($sp)
+L.207:
+lw $5,-52+240($sp)
+la $6,L.205
+jal TstCond
+l.d $f18,One
+l.d $f16,U1
+sub.d $f16,$f18,$f16
+s.d $f16,Y
+l.d $f16,F9
+sub.d $f16,$f18,$f16
+s.d $f16,X
+l.d $f16,Y
+sub.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,Radix
+l.d $f16,U2
+sub.d $f16,$f18,$f16
+s.d $f16,T
+l.d $f16,BMinusU2
+sub.d $f16,$f18,$f16
+s.d $f16,Z
+l.d $f16,T
+sub.d $f18,$f18,$f16
+s.d $f18,T
+l.d $f18,U1
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.208
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.208
+l.d $f18,U2
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1f L.208
+l.d $f16,T
+c.eq.d $f16,$f18; bc1f L.208
+la $24,1
+sw $24,GAddSub
+b L.209
+L.208:
+move $24,$0
+sw $24,GAddSub
+la $4,1
+move $5,$24
+la $6,L.210
+jal TstCond
+L.209:
+l.d $f18,F9
+l.d $f16,One
+c.eq.d $f18,$f16; bc1t L.211
+sub.d $f18,$f18,$f16
+l.d $f16,Zero
+c.lt.d $f18,$f16; bc1t L.211
+la $4,1
+la $5,L.213
+jal BadCond
+la $4,L.214
+jal printf
+la $4,L.215
+jal printf
+la $4,L.216
+jal printf
+L.211:
+la $24,1
+lw $15,GMult
+bne $15,$24,L.217
+lw $15,GDiv
+bne $15,$24,L.217
+lw $15,GAddSub
+bne $15,$24,L.217
+la $4,L.219
+jal printf
+L.217:
+la $24,40
+sw $24,Milestone
+jal Pause
+la $4,L.220
+jal printf
+sw $0,RMult
+sw $0,RDiv
+sw $0,RAddSub
+l.d $f18,Two
+l.d $f16,Radix
+div.d $f16,$f16,$f18
+s.d $f16,RadixD2
+s.d $f18,A1
+sw $0,Done
+L.221:
+l.d $f18,Radix
+s.d $f18,AInvrse
+L.224:
+l.d $f18,AInvrse
+s.d $f18,X
+l.d $f16,A1
+div.d $f18,$f18,$f16
+s.d $f18,AInvrse
+L.225:
+l.d $f12,AInvrse
+jal floor
+l.d $f16,AInvrse
+c.eq.d $f0,$f16; bc1t L.224
+l.d $f18,X
+l.d $f16,One
+c.eq.d $f18,$f16; bc1t L.230
+l.d $f18,A1
+l.d $f16,Three
+c.le.d $f18,$f16; bc1t L.228
+L.230:
+la $24,1
+sw $24,-56+240($sp)
+b L.229
+L.228:
+sw $0,-56+240($sp)
+L.229:
+lw $24,-56+240($sp)
+sw $24,Done
+lw $24,Done
+bne $24,$0,L.231
+l.d $f18,Nine
+l.d $f16,One
+add.d $f18,$f18,$f16
+s.d $f18,A1
+L.231:
+L.222:
+lw $24,Done
+beq $24,$0,L.221
+l.d $f18,X
+l.d $f16,One
+c.eq.d $f18,$f16; bc1f L.233
+l.d $f18,Radix
+s.d $f18,A1
+L.233:
+l.d $f18,A1
+l.d $f16,One
+div.d $f16,$f16,$f18
+s.d $f16,AInvrse
+s.d $f18,X
+l.d $f18,AInvrse
+s.d $f18,Y
+sw $0,Done
+L.235:
+l.d $f18,Half
+l.d $f16,X
+l.d $f10,Y
+mul.d $f16,$f16,$f10
+sub.d $f16,$f16,$f18
+s.d $f16,Z
+move $4,$0
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1f L.240
+la $24,1
+sw $24,-56+240($sp)
+b L.241
+L.240:
+sw $0,-56+240($sp)
+L.241:
+lw $5,-56+240($sp)
+la $6,L.239
+jal TstCond
+l.d $f18,X
+l.d $f16,Radix
+c.eq.d $f18,$f16; bc1f L.243
+la $24,1
+sw $24,-60+240($sp)
+b L.244
+L.243:
+sw $0,-60+240($sp)
+L.244:
+lw $24,-60+240($sp)
+sw $24,Done
+l.d $f18,Radix
+s.d $f18,X
+l.d $f18,One
+l.d $f16,X
+div.d $f18,$f18,$f16
+s.d $f18,Y
+L.236:
+lw $24,Done
+beq $24,$0,L.235
+l.d $f18,One
+l.d $f16,U2
+add.d $f10,$f18,$f16
+s.d $f10,Y2
+sub.d $f18,$f18,$f16
+s.d $f18,Y1
+l.d $f18,OneAndHalf
+s.d $f18,-64+240($sp)
+sub.d $f10,$f18,$f16
+s.d $f10,X
+add.d $f10,$f18,$f16
+s.d $f10,Y
+l.d $f10,X
+l.d $f8,Y2
+sub.d $f6,$f10,$f16
+mul.d $f6,$f6,$f8
+s.d $f6,Z
+l.d $f6,Y
+l.d $f4,Y1
+mul.d $f18,$f6,$f4
+s.d $f18,T
+l.d $f18,Z
+sub.d $f18,$f18,$f10
+s.d $f18,Z
+l.d $f18,T
+sub.d $f18,$f18,$f10
+s.d $f18,T
+mul.d $f18,$f10,$f8
+s.d $f18,X
+add.d $f18,$f6,$f16
+mul.d $f18,$f18,$f4
+s.d $f18,Y
+l.d $f18,X
+l.d $f16,-64+240($sp)
+sub.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,Y
+l.d $f16,-64+240($sp)
+sub.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.245
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.245
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1f L.245
+l.d $f16,T
+c.le.d $f16,$f18; bc1f L.245
+l.d $f18,OneAndHalf
+l.d $f16,U2
+add.d $f10,$f18,$f16
+l.d $f8,Y2
+mul.d $f6,$f10,$f8
+s.d $f6,X
+sub.d $f18,$f18,$f16
+sub.d $f6,$f18,$f16
+s.d $f6,Y
+add.d $f10,$f10,$f16
+s.d $f10,Z
+l.d $f10,Y1
+mul.d $f18,$f18,$f10
+s.d $f18,T
+l.d $f18,Z
+add.d $f6,$f18,$f16
+s.d $f6,-72+240($sp)
+l.d $f4,X
+sub.d $f4,$f4,$f6
+s.d $f4,X
+l.d $f4,Y
+mul.d $f6,$f4,$f10
+s.d $f6,StickyBit
+mul.d $f18,$f18,$f8
+s.d $f18,S
+l.d $f18,T
+sub.d $f18,$f18,$f4
+s.d $f18,T
+sub.d $f18,$f16,$f4
+l.d $f6,StickyBit
+add.d $f18,$f18,$f6
+s.d $f18,Y
+l.d $f18,S
+l.d $f6,-72+240($sp)
+add.d $f6,$f6,$f16
+sub.d $f18,$f18,$f6
+s.d $f18,Z
+add.d $f18,$f8,$f16
+mul.d $f18,$f18,$f10
+s.d $f18,StickyBit
+mul.d $f18,$f8,$f10
+s.d $f18,Y1
+l.d $f18,StickyBit
+sub.d $f18,$f18,$f8
+s.d $f18,StickyBit
+l.d $f18,Y1
+l.d $f16,Half
+sub.d $f18,$f18,$f16
+s.d $f18,Y1
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.247
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.247
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1f L.247
+l.d $f16,T
+c.eq.d $f16,$f18; bc1f L.247
+l.d $f16,StickyBit
+c.eq.d $f16,$f18; bc1f L.247
+l.d $f18,Y1
+l.d $f16,Half
+c.eq.d $f18,$f16; bc1f L.247
+la $24,1
+sw $24,RMult
+la $4,L.249
+jal printf
+b L.248
+L.247:
+l.d $f18,U2
+l.d $f16,Zero
+l.d $f10,X
+add.d $f10,$f10,$f18
+c.eq.d $f10,$f16; bc1f L.250
+l.d $f10,Y
+c.lt.d $f10,$f16; bc1f L.250
+l.d $f10,Z
+add.d $f10,$f10,$f18
+c.eq.d $f10,$f16; bc1f L.250
+l.d $f10,T
+c.lt.d $f10,$f16; bc1f L.250
+l.d $f10,StickyBit
+add.d $f18,$f10,$f18
+c.eq.d $f18,$f16; bc1f L.250
+l.d $f18,Y1
+l.d $f16,Half
+c.lt.d $f18,$f16; bc1f L.250
+la $24,2
+sw $24,RMult
+la $4,L.252
+jal printf
+b L.251
+L.250:
+la $4,L.253
+jal printf
+L.251:
+L.248:
+lw $24,RMult
+la $15,1
+bne $24,$15,L.246
+lw $24,GMult
+bne $24,$0,L.246
+la $4,L.256
+jal notify
+b L.246
+L.245:
+la $4,L.253
+jal printf
+L.246:
+la $24,45
+sw $24,Milestone
+l.d $f18,One
+l.d $f16,U2
+add.d $f10,$f18,$f16
+s.d $f10,Y2
+sub.d $f18,$f18,$f16
+s.d $f18,Y1
+l.d $f18,OneAndHalf
+s.d $f18,-80+240($sp)
+add.d $f10,$f18,$f16
+s.d $f10,-72+240($sp)
+add.d $f8,$f10,$f16
+s.d $f8,Z
+l.d $f8,Z
+l.d $f6,Y2
+div.d $f4,$f8,$f6
+s.d $f4,X
+sub.d $f4,$f18,$f16
+sub.d $f4,$f4,$f16
+s.d $f4,T
+l.d $f4,T
+l.d $f10,Y1
+sub.d $f18,$f4,$f16
+div.d $f18,$f18,$f10
+s.d $f18,Y
+add.d $f18,$f8,$f16
+div.d $f18,$f18,$f6
+s.d $f18,Z
+l.d $f18,X
+l.d $f8,-80+240($sp)
+sub.d $f18,$f18,$f8
+s.d $f18,X
+l.d $f18,Y
+sub.d $f18,$f18,$f4
+s.d $f18,Y
+div.d $f18,$f4,$f10
+s.d $f18,T
+l.d $f18,Z
+l.d $f10,-72+240($sp)
+sub.d $f18,$f18,$f10
+s.d $f18,Z
+l.d $f18,-80+240($sp)
+sub.d $f18,$f16,$f18
+l.d $f16,T
+add.d $f18,$f18,$f16
+s.d $f18,T
+l.d $f18,Zero
+l.d $f16,X
+c.le.d $f16,$f18; bc1f L.257
+l.d $f16,Y
+c.le.d $f16,$f18; bc1f L.257
+l.d $f16,Z
+c.le.d $f16,$f18; bc1f L.257
+l.d $f16,T
+c.le.d $f16,$f18; bc1f L.257
+l.d $f18,OneAndHalf
+l.d $f16,Y2
+div.d $f10,$f18,$f16
+s.d $f10,X
+l.d $f10,U2
+sub.d $f8,$f18,$f10
+s.d $f8,Y
+add.d $f8,$f18,$f10
+s.d $f8,Z
+l.d $f8,Y
+l.d $f6,X
+sub.d $f6,$f6,$f8
+s.d $f6,X
+l.d $f6,Y1
+div.d $f4,$f18,$f6
+s.d $f4,T
+div.d $f8,$f8,$f6
+s.d $f8,Y
+l.d $f8,Z
+l.d $f6,T
+add.d $f4,$f8,$f10
+sub.d $f6,$f6,$f4
+s.d $f6,T
+l.d $f6,Y
+sub.d $f6,$f6,$f8
+s.d $f6,Y
+div.d $f8,$f8,$f16
+s.d $f8,Z
+add.d $f10,$f16,$f10
+div.d $f10,$f10,$f16
+s.d $f10,Y1
+l.d $f10,Z
+sub.d $f18,$f10,$f18
+s.d $f18,Z
+l.d $f18,Y1
+sub.d $f18,$f18,$f16
+s.d $f18,Y2
+l.d $f18,F9
+l.d $f16,U1
+sub.d $f16,$f18,$f16
+div.d $f18,$f16,$f18
+s.d $f18,Y1
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.259
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.259
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1f L.259
+l.d $f16,T
+c.eq.d $f16,$f18; bc1f L.259
+l.d $f16,Y2
+c.eq.d $f16,$f18; bc1f L.259
+c.eq.d $f16,$f18; bc1f L.259
+l.d $f18,Half
+l.d $f16,Y1
+sub.d $f16,$f16,$f18
+l.d $f10,F9
+sub.d $f18,$f10,$f18
+c.eq.d $f16,$f18; bc1f L.259
+la $24,1
+sw $24,RDiv
+la $4,L.261
+jal printf
+lw $24,GDiv
+bne $24,$0,L.260
+la $4,L.264
+jal notify
+b L.260
+L.259:
+l.d $f18,Zero
+l.d $f16,X
+c.lt.d $f16,$f18; bc1f L.265
+l.d $f16,Y
+c.lt.d $f16,$f18; bc1f L.265
+l.d $f16,Z
+c.lt.d $f16,$f18; bc1f L.265
+l.d $f16,T
+c.lt.d $f16,$f18; bc1f L.265
+l.d $f16,Y2
+c.lt.d $f16,$f18; bc1f L.265
+l.d $f18,Half
+l.d $f16,Y1
+sub.d $f16,$f16,$f18
+l.d $f10,F9
+sub.d $f18,$f10,$f18
+c.lt.d $f16,$f18; bc1f L.265
+la $24,2
+sw $24,RDiv
+la $4,L.267
+jal printf
+L.265:
+L.260:
+L.257:
+lw $24,RDiv
+bne $24,$0,L.268
+la $4,L.270
+jal printf
+L.268:
+l.d $f18,Radix
+l.d $f16,One
+div.d $f16,$f16,$f18
+s.d $f16,BInvrse
+move $4,$0
+l.d $f16,Half
+l.d $f10,BInvrse
+mul.d $f18,$f10,$f18
+sub.d $f18,$f18,$f16
+c.eq.d $f18,$f16; bc1f L.273
+la $24,1
+sw $24,-84+240($sp)
+b L.274
+L.273:
+sw $0,-84+240($sp)
+L.274:
+lw $5,-84+240($sp)
+la $6,L.272
+jal TstCond
+la $24,50
+sw $24,Milestone
+move $4,$0
+l.d $f18,Half
+l.d $f16,F9
+l.d $f10,U1
+add.d $f16,$f16,$f10
+sub.d $f16,$f16,$f18
+c.eq.d $f16,$f18; bc1f L.277
+l.d $f18,One
+l.d $f16,BMinusU2
+l.d $f10,U2
+add.d $f16,$f16,$f10
+sub.d $f16,$f16,$f18
+l.d $f10,Radix
+sub.d $f18,$f10,$f18
+c.eq.d $f16,$f18; bc1f L.277
+la $24,1
+sw $24,-88+240($sp)
+b L.278
+L.277:
+sw $0,-88+240($sp)
+L.278:
+lw $5,-88+240($sp)
+la $6,L.276
+jal TstCond
+l.d $f18,One
+l.d $f16,U1
+mul.d $f16,$f16,$f16
+sub.d $f16,$f18,$f16
+s.d $f16,X
+l.d $f16,U2
+sub.d $f10,$f18,$f16
+mul.d $f16,$f16,$f10
+add.d $f16,$f18,$f16
+s.d $f16,Y
+l.d $f16,Half
+l.d $f10,F9
+sub.d $f10,$f10,$f16
+s.d $f10,Z
+l.d $f10,X
+sub.d $f16,$f10,$f16
+l.d $f10,Z
+sub.d $f16,$f16,$f10
+s.d $f16,X
+l.d $f16,Y
+sub.d $f18,$f16,$f18
+s.d $f18,Y
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.279
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.279
+la $24,2
+sw $24,RAddSub
+la $4,L.281
+jal printf
+L.279:
+lw $24,GAddSub
+la $15,1
+bne $24,$15,L.282
+l.d $f18,Half
+l.d $f16,U2
+add.d $f10,$f18,$f16
+mul.d $f10,$f10,$f16
+s.d $f10,X
+sub.d $f18,$f18,$f16
+mul.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,One
+l.d $f10,X
+add.d $f10,$f18,$f10
+s.d $f10,X
+l.d $f10,Y
+add.d $f10,$f18,$f10
+s.d $f10,Y
+add.d $f16,$f18,$f16
+l.d $f10,X
+sub.d $f16,$f16,$f10
+s.d $f16,X
+l.d $f16,Y
+sub.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.284
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.284
+l.d $f18,Half
+l.d $f16,U2
+l.d $f10,U1
+add.d $f8,$f18,$f16
+mul.d $f8,$f8,$f10
+s.d $f8,X
+sub.d $f18,$f18,$f16
+mul.d $f18,$f18,$f10
+s.d $f18,Y
+l.d $f18,One
+l.d $f16,X
+sub.d $f16,$f18,$f16
+s.d $f16,X
+l.d $f16,Y
+sub.d $f16,$f18,$f16
+s.d $f16,Y
+l.d $f16,F9
+l.d $f10,X
+sub.d $f16,$f16,$f10
+s.d $f16,X
+l.d $f16,Y
+sub.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,Zero
+l.d $f16,X
+c.eq.d $f16,$f18; bc1f L.286
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.286
+la $24,1
+sw $24,RAddSub
+la $4,L.288
+jal printf
+lw $24,GAddSub
+bne $24,$0,L.283
+la $4,L.291
+jal notify
+b L.283
+L.286:
+la $4,L.292
+jal printf
+b L.283
+L.284:
+la $4,L.292
+jal printf
+b L.283
+L.282:
+la $4,L.292
+jal printf
+L.283:
+l.d $f18,One
+s.d $f18,S
+l.d $f16,Half
+add.d $f10,$f18,$f16
+mul.d $f10,$f16,$f10
+add.d $f10,$f18,$f10
+s.d $f10,X
+l.d $f10,U2
+add.d $f18,$f18,$f10
+mul.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,X
+l.d $f16,Y
+sub.d $f10,$f18,$f16
+s.d $f10,Z
+sub.d $f18,$f16,$f18
+s.d $f18,T
+l.d $f18,Z
+l.d $f16,T
+add.d $f18,$f18,$f16
+s.d $f18,StickyBit
+l.d $f18,StickyBit
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.293
+l.d $f18,Zero
+s.d $f18,S
+la $4,3
+la $5,L.295
+jal BadCond
+L.293:
+l.d $f18,Zero
+s.d $f18,StickyBit
+la $24,1
+lw $15,GMult
+bne $15,$24,L.296
+lw $15,GDiv
+bne $15,$24,L.296
+lw $15,GAddSub
+bne $15,$24,L.296
+lw $15,RMult
+bne $15,$24,L.296
+lw $15,RDiv
+bne $15,$24,L.296
+lw $15,RAddSub
+bne $15,$24,L.296
+l.d $f12,RadixD2
+jal floor
+l.d $f16,RadixD2
+c.eq.d $f0,$f16; bc1f L.296
+la $4,L.298
+jal printf
+l.d $f18,Half
+l.d $f16,U2
+l.d $f10,U1
+add.d $f10,$f18,$f10
+mul.d $f10,$f10,$f16
+s.d $f10,X
+mul.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,One
+l.d $f16,Y
+add.d $f16,$f18,$f16
+s.d $f16,Z
+l.d $f16,X
+add.d $f18,$f18,$f16
+s.d $f18,T
+l.d $f18,One
+l.d $f16,Z
+sub.d $f16,$f16,$f18
+l.d $f10,Zero
+c.le.d $f16,$f10; bc1f L.299
+l.d $f16,T
+sub.d $f18,$f16,$f18
+l.d $f16,U2
+c.lt.d $f18,$f16; bc1t L.299
+l.d $f18,T
+l.d $f16,Y
+add.d $f18,$f18,$f16
+s.d $f18,Z
+l.d $f18,Z
+l.d $f16,X
+sub.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,T
+l.d $f16,Z
+sub.d $f16,$f16,$f18
+l.d $f10,U2
+c.lt.d $f16,$f10; bc1t L.301
+l.d $f16,Y
+sub.d $f18,$f16,$f18
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.301
+l.d $f18,Half
+l.d $f16,U1
+add.d $f10,$f18,$f16
+mul.d $f10,$f10,$f16
+s.d $f10,X
+mul.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,One
+l.d $f16,Y
+sub.d $f16,$f18,$f16
+s.d $f16,Z
+l.d $f16,X
+sub.d $f18,$f18,$f16
+s.d $f18,T
+l.d $f18,Zero
+l.d $f16,Z
+l.d $f10,One
+sub.d $f16,$f16,$f10
+c.eq.d $f16,$f18; bc1f L.303
+l.d $f16,T
+l.d $f10,F9
+sub.d $f16,$f16,$f10
+c.eq.d $f16,$f18; bc1f L.303
+l.d $f18,U1
+l.d $f16,Half
+sub.d $f16,$f16,$f18
+mul.d $f18,$f16,$f18
+s.d $f18,Z
+l.d $f18,F9
+l.d $f16,Z
+sub.d $f16,$f18,$f16
+s.d $f16,T
+l.d $f16,Y
+sub.d $f18,$f18,$f16
+s.d $f18,Q
+l.d $f18,F9
+l.d $f16,Zero
+l.d $f10,T
+sub.d $f10,$f10,$f18
+c.eq.d $f10,$f16; bc1f L.305
+l.d $f10,U1
+sub.d $f18,$f18,$f10
+l.d $f10,Q
+sub.d $f18,$f18,$f10
+c.eq.d $f18,$f16; bc1f L.305
+l.d $f18,One
+l.d $f16,U2
+l.d $f10,OneAndHalf
+add.d $f8,$f18,$f16
+mul.d $f8,$f8,$f10
+s.d $f8,Z
+add.d $f10,$f10,$f16
+l.d $f8,Z
+sub.d $f10,$f10,$f8
+add.d $f10,$f10,$f16
+s.d $f10,T
+l.d $f10,Radix
+l.d $f8,Half
+div.d $f8,$f8,$f10
+add.d $f8,$f18,$f8
+s.d $f8,X
+mul.d $f16,$f10,$f16
+add.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,X
+l.d $f16,Y
+mul.d $f18,$f18,$f16
+s.d $f18,Z
+l.d $f18,Zero
+l.d $f16,T
+c.eq.d $f16,$f18; bc1f L.307
+l.d $f16,X
+l.d $f10,Radix
+l.d $f8,U2
+mul.d $f10,$f10,$f8
+add.d $f16,$f16,$f10
+l.d $f10,Z
+sub.d $f16,$f16,$f10
+c.eq.d $f16,$f18; bc1f L.307
+l.d $f18,Radix
+l.d $f16,Two
+c.eq.d $f18,$f16; bc1t L.309
+l.d $f18,Two
+l.d $f16,U2
+add.d $f16,$f18,$f16
+s.d $f16,X
+l.d $f16,X
+div.d $f18,$f16,$f18
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,One
+sub.d $f18,$f18,$f16
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.310
+l.d $f18,S
+s.d $f18,StickyBit
+b L.310
+L.309:
+l.d $f18,S
+s.d $f18,StickyBit
+L.310:
+L.307:
+L.305:
+L.303:
+L.301:
+L.299:
+L.296:
+l.d $f18,StickyBit
+l.d $f16,One
+c.eq.d $f18,$f16; bc1f L.313
+la $4,L.315
+jal printf
+b L.314
+L.313:
+la $4,L.316
+jal printf
+L.314:
+la $4,3
+lw $15,GMult
+beq $15,$0,L.319
+lw $15,GDiv
+beq $15,$0,L.319
+lw $15,GAddSub
+beq $15,$0,L.319
+lw $15,RMult
+beq $15,$0,L.319
+lw $15,RDiv
+beq $15,$0,L.319
+lw $15,RAddSub
+beq $15,$0,L.319
+la $24,1
+sw $24,-92+240($sp)
+b L.320
+L.319:
+sw $0,-92+240($sp)
+L.320:
+lw $5,-92+240($sp)
+la $6,L.318
+jal TstCond
+la $24,60
+sw $24,Milestone
+la $4,L.44
+jal printf
+la $4,L.321
+jal printf
+la $4,L.322
+lw $5,NoTrials
+jal printf
+l.d $f12,L.323
+jal sqrt
+s.d $f0,Random9
+l.d $f18,Third
+s.d $f18,Random1
+la $24,1
+sw $24,I
+L.324:
+jal Random
+s.d $f0,X
+jal Random
+s.d $f0,Y
+l.d $f18,Y
+l.d $f16,X
+mul.d $f10,$f18,$f16
+s.d $f10,Z9
+mul.d $f18,$f16,$f18
+s.d $f18,Z
+l.d $f18,Z
+l.d $f16,Z9
+sub.d $f18,$f18,$f16
+s.d $f18,Z9
+lw $24,I
+la $24,1($24)
+sw $24,I
+L.325:
+lw $24,I
+lw $15,NoTrials
+bgt $24,$15,L.327
+l.d $f18,Z9
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.324
+L.327:
+lw $24,I
+lw $15,NoTrials
+bne $24,$15,L.328
+l.d $f18,One
+l.d $f16,Half
+l.d $f10,Three
+div.d $f16,$f16,$f10
+add.d $f16,$f18,$f16
+s.d $f16,Random1
+l.d $f10,U2
+l.d $f8,U1
+add.d $f10,$f10,$f8
+add.d $f18,$f10,$f18
+s.d $f18,Random2
+l.d $f10,Random1
+l.d $f8,Random2
+mul.d $f6,$f10,$f8
+s.d $f6,Z
+mul.d $f10,$f8,$f10
+s.d $f10,Y
+mul.d $f18,$f16,$f18
+sub.d $f18,$f18,$f18
+s.d $f18,Z9
+L.328:
+lw $24,I
+lw $15,NoTrials
+beq $24,$15,L.330
+l.d $f18,Z9
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.330
+la $4,2
+la $5,L.332
+jal BadCond
+b L.331
+L.330:
+la $4,L.333
+lw $5,NoTrials
+jal printf
+L.331:
+la $24,70
+sw $24,Milestone
+la $4,L.334
+jal printf
+l.d $f18,Zero
+s.d $f18,-104+240($sp)
+mov.d $f12,$f18
+jal sqrt
+l.d $f16,-104+240($sp)
+c.eq.d $f16,$f0; bc1f L.337
+l.d $f18,Zero
+neg.d $f18,$f18
+s.d $f18,-112+240($sp)
+mov.d $f12,$f18
+jal sqrt
+l.d $f16,-112+240($sp)
+c.eq.d $f16,$f0; bc1f L.337
+l.d $f18,One
+s.d $f18,-120+240($sp)
+mov.d $f12,$f18
+jal sqrt
+mov.d $f18,$f0
+l.d $f16,-120+240($sp)
+c.eq.d $f16,$f18; bc1f L.337
+la $24,1
+sw $24,-96+240($sp)
+b L.338
+L.337:
+sw $0,-96+240($sp)
+L.338:
+move $4,$0
+lw $5,-96+240($sp)
+la $6,L.336
+jal TstCond
+l.d $f18,Zero
+s.d $f18,MinSqEr
+s.d $f18,MaxSqEr
+s.d $f18,J
+l.d $f18,Radix
+s.d $f18,X
+l.d $f18,U2
+s.d $f18,OneUlp
+la $4,1
+jal SqXMinX
+l.d $f18,BInvrse
+s.d $f18,X
+l.d $f16,U1
+mul.d $f18,$f18,$f16
+s.d $f18,OneUlp
+la $4,1
+jal SqXMinX
+l.d $f18,U1
+s.d $f18,X
+mul.d $f18,$f18,$f18
+s.d $f18,OneUlp
+la $4,1
+jal SqXMinX
+l.d $f18,J
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.339
+jal Pause
+L.339:
+la $4,L.341
+lw $5,NoTrials
+jal printf
+l.d $f18,Zero
+s.d $f18,J
+l.d $f18,Two
+s.d $f18,X
+l.d $f18,Radix
+s.d $f18,Y
+l.d $f16,One
+c.eq.d $f18,$f16; bc1t L.342
+L.344:
+l.d $f18,Y
+s.d $f18,X
+l.d $f16,Radix
+mul.d $f18,$f16,$f18
+s.d $f18,Y
+L.345:
+l.d $f18,Y
+l.d $f16,X
+sub.d $f18,$f18,$f16
+lw $24,NoTrials
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+c.lt.d $f18,$f16; bc1t L.344
+L.342:
+l.d $f18,X
+l.d $f16,U2
+mul.d $f18,$f18,$f16
+s.d $f18,OneUlp
+la $24,1
+sw $24,I
+b L.348
+L.347:
+l.d $f18,X
+l.d $f16,One
+add.d $f18,$f18,$f16
+s.d $f18,X
+la $4,2
+jal SqXMinX
+l.d $f18,J
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1t L.350
+b L.349
+L.350:
+lw $24,I
+la $24,1($24)
+sw $24,I
+L.348:
+lw $24,I
+lw $15,NoTrials
+ble $24,$15,L.347
+L.349:
+la $4,L.352
+jal printf
+la $24,-1
+sw $24,I
+l.d $f18,BMinusU2
+s.d $f18,X
+l.d $f18,Radix
+s.d $f18,Y
+l.d $f16,U2
+mul.d $f16,$f18,$f16
+add.d $f18,$f18,$f16
+s.d $f18,Z
+sw $0,NotMonot
+sw $0,Monot
+b L.354
+L.353:
+lw $24,I
+la $24,1($24)
+sw $24,I
+l.d $f12,X
+jal sqrt
+s.d $f0,X
+l.d $f12,Y
+jal sqrt
+s.d $f0,Q
+l.d $f12,Z
+jal sqrt
+s.d $f0,Z
+l.d $f18,Q
+l.d $f16,X
+c.le.d $f16,$f18; bc1f L.358
+l.d $f16,Z
+c.le.d $f18,$f16; bc1t L.356
+L.358:
+la $24,1
+sw $24,NotMonot
+b L.357
+L.356:
+l.d $f18,Q
+l.d $f16,Half
+add.d $f12,$f18,$f16
+jal floor
+s.d $f0,Q
+lw $24,I
+bgt $24,$0,L.361
+l.d $f18,Q
+l.d $f16,Radix
+mul.d $f18,$f18,$f18
+c.eq.d $f16,$f18; bc1f L.359
+L.361:
+la $24,1
+sw $24,Monot
+b L.360
+L.359:
+lw $24,I
+ble $24,$0,L.362
+lw $24,I
+la $15,1
+ble $24,$15,L.364
+la $24,1
+sw $24,Monot
+b L.363
+L.364:
+l.d $f18,Y
+l.d $f16,BInvrse
+mul.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,U1
+sub.d $f10,$f18,$f16
+s.d $f10,X
+add.d $f18,$f18,$f16
+s.d $f18,Z
+b L.363
+L.362:
+l.d $f18,Q
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,U2
+sub.d $f10,$f18,$f16
+s.d $f10,X
+add.d $f18,$f18,$f16
+s.d $f18,Z
+L.363:
+L.360:
+L.357:
+L.354:
+lw $15,NotMonot
+bne $15,$0,L.366
+lw $15,Monot
+beq $15,$0,L.353
+L.366:
+lw $24,Monot
+beq $24,$0,L.367
+la $4,L.369
+jal printf
+b L.368
+L.367:
+la $4,2
+la $5,L.157
+jal BadCond
+la $4,L.370
+l.d $f18,Y
+mfc1.d $6,$f18
+jal printf
+L.368:
+la $24,80
+sw $24,Milestone
+l.d $f18,Half
+l.d $f16,MinSqEr
+add.d $f16,$f16,$f18
+s.d $f16,MinSqEr
+l.d $f16,MaxSqEr
+sub.d $f18,$f16,$f18
+s.d $f18,MaxSqEr
+l.d $f18,One
+l.d $f16,U2
+add.d $f12,$f18,$f16
+jal sqrt
+l.d $f16,One
+l.d $f10,U2
+sub.d $f18,$f0,$f16
+div.d $f18,$f18,$f10
+s.d $f18,Y
+l.d $f18,Y
+sub.d $f18,$f18,$f16
+l.d $f16,Eight
+div.d $f16,$f10,$f16
+add.d $f18,$f18,$f16
+s.d $f18,SqEr
+l.d $f18,SqEr
+l.d $f16,MaxSqEr
+c.le.d $f18,$f16; bc1t L.371
+l.d $f18,SqEr
+s.d $f18,MaxSqEr
+L.371:
+l.d $f18,Y
+l.d $f16,U2
+l.d $f10,Eight
+div.d $f16,$f16,$f10
+add.d $f18,$f18,$f16
+s.d $f18,SqEr
+l.d $f18,SqEr
+l.d $f16,MinSqEr
+c.lt.d $f18,$f16; bc1f L.373
+l.d $f18,SqEr
+s.d $f18,MinSqEr
+L.373:
+l.d $f12,F9
+jal sqrt
+l.d $f16,U2
+l.d $f10,U1
+sub.d $f18,$f0,$f16
+l.d $f8,One
+sub.d $f16,$f8,$f16
+sub.d $f18,$f18,$f16
+div.d $f18,$f18,$f10
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,Eight
+div.d $f16,$f10,$f16
+add.d $f18,$f18,$f16
+s.d $f18,SqEr
+l.d $f18,SqEr
+l.d $f16,MaxSqEr
+c.le.d $f18,$f16; bc1t L.375
+l.d $f18,SqEr
+s.d $f18,MaxSqEr
+L.375:
+l.d $f18,Y
+l.d $f16,One
+add.d $f18,$f18,$f16
+l.d $f16,U1
+l.d $f10,Eight
+div.d $f16,$f16,$f10
+add.d $f18,$f18,$f16
+s.d $f18,SqEr
+l.d $f18,SqEr
+l.d $f16,MinSqEr
+c.lt.d $f18,$f16; bc1f L.377
+l.d $f18,SqEr
+s.d $f18,MinSqEr
+L.377:
+l.d $f18,U2
+s.d $f18,OneUlp
+l.d $f18,OneUlp
+s.d $f18,X
+la $24,1
+sw $24,Indx
+L.379:
+l.d $f18,X
+l.d $f16,U1
+add.d $f16,$f18,$f16
+add.d $f18,$f16,$f18
+l.d $f16,F9
+add.d $f12,$f18,$f16
+jal sqrt
+s.d $f0,Y
+l.d $f18,U2
+l.d $f16,X
+l.d $f10,OneUlp
+l.d $f8,Y
+sub.d $f8,$f8,$f18
+l.d $f6,One
+sub.d $f18,$f6,$f18
+add.d $f18,$f18,$f16
+sub.d $f18,$f8,$f18
+div.d $f18,$f18,$f10
+s.d $f18,Y
+l.d $f18,Half
+l.d $f8,U1
+sub.d $f8,$f8,$f16
+l.d $f6,F9
+add.d $f8,$f8,$f6
+mul.d $f8,$f8,$f18
+mul.d $f8,$f8,$f16
+mul.d $f16,$f8,$f16
+div.d $f16,$f16,$f10
+s.d $f16,Z
+l.d $f16,Y
+add.d $f18,$f16,$f18
+l.d $f16,Z
+add.d $f18,$f18,$f16
+s.d $f18,SqEr
+l.d $f18,SqEr
+l.d $f16,MinSqEr
+c.lt.d $f18,$f16; bc1f L.383
+l.d $f18,SqEr
+s.d $f18,MinSqEr
+L.383:
+l.d $f18,Y
+l.d $f16,Half
+sub.d $f18,$f18,$f16
+l.d $f16,Z
+add.d $f18,$f18,$f16
+s.d $f18,SqEr
+l.d $f18,SqEr
+l.d $f16,MaxSqEr
+c.le.d $f18,$f16; bc1t L.385
+l.d $f18,SqEr
+s.d $f18,MaxSqEr
+L.385:
+lw $24,Indx
+la $15,1
+beq $24,$15,L.389
+la $15,3
+bne $24,$15,L.387
+L.389:
+l.d $f12,X
+jal Sign
+mov.d $f18,$f0
+s.d $f18,-128+240($sp)
+l.d $f12,OneUlp
+jal sqrt
+l.d $f16,Eight
+l.d $f10,Nine
+mul.d $f18,$f10,$f0
+div.d $f12,$f16,$f18
+jal floor
+l.d $f16,OneUlp
+l.d $f10,-128+240($sp)
+mul.d $f16,$f16,$f10
+mul.d $f18,$f16,$f0
+s.d $f18,X
+b L.388
+L.387:
+l.d $f18,U1
+s.d $f18,OneUlp
+l.d $f18,OneUlp
+neg.d $f18,$f18
+s.d $f18,X
+L.388:
+L.380:
+lw $24,Indx
+la $24,1($24)
+sw $24,Indx
+lw $24,Indx
+la $15,3
+ble $24,$15,L.379
+la $24,85
+sw $24,Milestone
+sw $0,SqRWrng
+sw $0,Anomaly
+sw $0,RSqrt
+l.d $f18,Radix
+l.d $f16,One
+c.eq.d $f18,$f16; bc1t L.390
+la $4,L.392
+jal printf
+l.d $f18,Precision
+s.d $f18,-128+240($sp)
+mov.d $f12,$f18
+jal floor
+mov.d $f18,$f0
+l.d $f12,Radix
+l.d $f16,One
+l.d $f10,-128+240($sp)
+add.d $f16,$f16,$f10
+sub.d $f14,$f16,$f18
+jal pow
+mov.d $f18,$f0
+l.d $f16,Half
+add.d $f12,$f16,$f18
+jal floor
+s.d $f0,D
+l.d $f18,D
+l.d $f16,Radix
+div.d $f16,$f18,$f16
+s.d $f16,X
+l.d $f16,A1
+div.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,X
+s.d $f18,-136+240($sp)
+mov.d $f12,$f18
+jal floor
+l.d $f16,-136+240($sp)
+c.eq.d $f16,$f0; bc1f L.395
+l.d $f18,Y
+s.d $f18,-144+240($sp)
+mov.d $f12,$f18
+jal floor
+l.d $f16,-144+240($sp)
+c.eq.d $f16,$f0; bc1t L.393
+L.395:
+la $24,1
+sw $24,Anomaly
+b L.394
+L.393:
+l.d $f18,Zero
+s.d $f18,X
+l.d $f18,X
+s.d $f18,Z2
+l.d $f18,One
+s.d $f18,Y
+l.d $f16,Y
+s.d $f16,Y2
+l.d $f16,Radix
+sub.d $f18,$f16,$f18
+s.d $f18,Z1
+l.d $f18,Four
+l.d $f16,D
+mul.d $f18,$f18,$f16
+s.d $f18,FourD
+L.396:
+l.d $f18,Y2
+l.d $f16,Z2
+c.le.d $f18,$f16; bc1t L.399
+l.d $f18,Radix
+s.d $f18,Q
+l.d $f18,Y
+s.d $f18,Y1
+L.401:
+l.d $f18,Q
+s.d $f18,-152+240($sp)
+l.d $f16,Half
+l.d $f10,Y1
+div.d $f10,$f18,$f10
+sub.d $f12,$f16,$f10
+jal floor
+l.d $f16,Y1
+mul.d $f18,$f0,$f16
+l.d $f16,-152+240($sp)
+add.d $f12,$f16,$f18
+jal fabs
+s.d $f0,X1
+l.d $f18,Y1
+s.d $f18,Q
+l.d $f18,X1
+s.d $f18,Y1
+L.402:
+l.d $f18,X1
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.401
+l.d $f18,Q
+l.d $f16,One
+c.le.d $f18,$f16; bc1f L.404
+l.d $f18,Y2
+s.d $f18,Z2
+l.d $f18,Y
+s.d $f18,Z
+L.404:
+L.399:
+l.d $f18,Y
+l.d $f16,Two
+add.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,X
+l.d $f16,Eight
+add.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,Y2
+l.d $f16,X
+add.d $f18,$f18,$f16
+s.d $f18,Y2
+l.d $f18,Y2
+l.d $f16,FourD
+c.lt.d $f18,$f16; bc1t L.406
+l.d $f18,Y2
+l.d $f16,FourD
+sub.d $f18,$f18,$f16
+s.d $f18,Y2
+L.406:
+L.397:
+l.d $f18,Y
+l.d $f16,D
+c.lt.d $f18,$f16; bc1t L.396
+l.d $f18,FourD
+l.d $f16,Z2
+sub.d $f16,$f18,$f16
+s.d $f16,X8
+l.d $f16,X8
+l.d $f10,Z
+mul.d $f10,$f10,$f10
+add.d $f10,$f16,$f10
+div.d $f18,$f10,$f18
+s.d $f18,Q
+l.d $f18,Eight
+div.d $f18,$f16,$f18
+s.d $f18,X8
+l.d $f18,Q
+s.d $f18,-152+240($sp)
+mov.d $f12,$f18
+jal floor
+l.d $f16,-152+240($sp)
+c.eq.d $f16,$f0; bc1t L.408
+la $24,1
+sw $24,Anomaly
+b L.409
+L.408:
+sw $0,Break
+L.410:
+l.d $f18,Z1
+l.d $f16,Z
+mul.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,X
+s.d $f18,-160+240($sp)
+l.d $f16,Radix
+div.d $f12,$f18,$f16
+jal floor
+l.d $f16,Radix
+mul.d $f18,$f0,$f16
+l.d $f16,-160+240($sp)
+sub.d $f18,$f16,$f18
+s.d $f18,X
+l.d $f18,X
+l.d $f16,One
+c.eq.d $f18,$f16; bc1f L.413
+la $24,1
+sw $24,Break
+b L.414
+L.413:
+l.d $f18,Z1
+l.d $f16,One
+sub.d $f18,$f18,$f16
+s.d $f18,Z1
+L.414:
+L.411:
+lw $24,Break
+bne $24,$0,L.415
+l.d $f18,Z1
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.410
+L.415:
+l.d $f18,Z1
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.416
+lw $24,Break
+bne $24,$0,L.416
+la $24,1
+sw $24,Anomaly
+b L.417
+L.416:
+l.d $f18,Z1
+l.d $f16,RadixD2
+c.le.d $f18,$f16; bc1t L.418
+l.d $f18,Z1
+l.d $f16,Radix
+sub.d $f18,$f18,$f16
+s.d $f18,Z1
+L.418:
+L.420:
+jal NewD
+L.421:
+l.d $f18,U2
+l.d $f16,D
+mul.d $f18,$f18,$f16
+l.d $f16,F9
+c.lt.d $f18,$f16; bc1t L.420
+l.d $f18,D
+l.d $f16,Radix
+mul.d $f16,$f18,$f16
+sub.d $f16,$f16,$f18
+l.d $f10,W
+sub.d $f18,$f10,$f18
+c.eq.d $f16,$f18; bc1t L.423
+la $24,1
+sw $24,Anomaly
+b L.424
+L.423:
+l.d $f18,D
+s.d $f18,Z2
+sw $0,I
+l.d $f16,Z
+l.d $f10,One
+add.d $f10,$f10,$f16
+l.d $f8,Half
+mul.d $f10,$f10,$f8
+add.d $f10,$f18,$f10
+s.d $f10,Y
+add.d $f18,$f18,$f16
+l.d $f16,Q
+add.d $f18,$f18,$f16
+s.d $f18,X
+jal SR3750
+l.d $f18,D
+l.d $f16,Z
+l.d $f10,One
+sub.d $f10,$f10,$f16
+l.d $f8,Half
+mul.d $f10,$f10,$f8
+add.d $f10,$f18,$f10
+add.d $f10,$f10,$f18
+s.d $f10,Y
+sub.d $f16,$f18,$f16
+add.d $f18,$f16,$f18
+s.d $f18,X
+l.d $f18,X
+l.d $f16,Q
+add.d $f16,$f18,$f16
+add.d $f18,$f16,$f18
+s.d $f18,X
+jal SR3750
+jal NewD
+l.d $f18,Z2
+l.d $f16,D
+sub.d $f16,$f16,$f18
+l.d $f10,W
+sub.d $f18,$f10,$f18
+c.eq.d $f16,$f18; bc1t L.425
+la $24,1
+sw $24,Anomaly
+b L.426
+L.425:
+l.d $f18,Z2
+l.d $f16,D
+sub.d $f16,$f16,$f18
+l.d $f10,Z
+l.d $f8,One
+sub.d $f8,$f8,$f10
+l.d $f6,Half
+mul.d $f8,$f8,$f6
+add.d $f8,$f18,$f8
+add.d $f8,$f16,$f8
+s.d $f8,Y
+sub.d $f18,$f18,$f10
+l.d $f10,Q
+add.d $f18,$f18,$f10
+add.d $f18,$f16,$f18
+s.d $f18,X
+jal SR3750
+l.d $f18,One
+l.d $f16,Z
+add.d $f18,$f18,$f16
+l.d $f16,Half
+mul.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,Q
+s.d $f18,X
+jal SR3750
+lw $24,I
+bne $24,$0,L.427
+la $24,1
+sw $24,Anomaly
+L.427:
+L.426:
+L.424:
+L.417:
+L.409:
+L.394:
+lw $15,I
+beq $15,$0,L.431
+lw $15,Anomaly
+beq $15,$0,L.429
+L.431:
+move $4,$0
+la $5,L.432
+jal BadCond
+la $4,L.433
+l.d $f18,W
+mfc1.d $6,$f18
+jal printf
+la $4,L.434
+jal printf
+la $24,1
+sw $24,SqRWrng
+L.429:
+L.390:
+lw $24,Anomaly
+bne $24,$0,L.435
+l.d $f18,Zero
+l.d $f16,MinSqEr
+c.lt.d $f16,$f18; bc1t L.437
+l.d $f16,MaxSqEr
+c.le.d $f16,$f18; bc1f L.437
+la $24,1
+sw $24,RSqrt
+la $4,L.439
+jal printf
+b L.438
+L.437:
+l.d $f18,U2
+l.d $f16,Half
+l.d $f10,MaxSqEr
+add.d $f10,$f10,$f18
+sub.d $f18,$f18,$f16
+c.le.d $f10,$f18; bc1f L.443
+l.d $f18,MinSqEr
+c.le.d $f18,$f16; bc1f L.443
+l.d $f10,Radix
+add.d $f18,$f18,$f10
+c.lt.d $f18,$f16; bc1f L.440
+L.443:
+la $24,1
+sw $24,SqRWrng
+b L.441
+L.440:
+la $24,2
+sw $24,RSqrt
+la $4,L.444
+jal printf
+L.441:
+L.438:
+L.435:
+lw $24,SqRWrng
+beq $24,$0,L.445
+la $4,L.447
+jal printf
+la $4,L.448
+l.d $f18,MinSqEr
+l.d $f16,Half
+sub.d $f18,$f18,$f16
+mfc1.d $6,$f18
+jal printf
+la $4,L.449
+l.d $f18,Half
+l.d $f16,MaxSqEr
+add.d $f18,$f18,$f16
+mfc1.d $6,$f18
+jal printf
+la $4,1
+l.d $f18,Radix
+l.d $f16,MaxSqEr
+l.d $f10,MinSqEr
+sub.d $f16,$f16,$f10
+mul.d $f18,$f18,$f18
+c.lt.d $f16,$f18; bc1f L.452
+la $24,1
+sw $24,-124+240($sp)
+b L.453
+L.452:
+sw $0,-124+240($sp)
+L.453:
+lw $5,-124+240($sp)
+la $6,L.451
+jal TstCond
+L.445:
+la $24,90
+sw $24,Milestone
+jal Pause
+la $4,L.454
+jal printf
+sw $0,N
+sw $0,I
+l.d $f18,Zero
+neg.d $f18,$f18
+s.d $f18,Z
+la $15,3
+sw $15,M
+sw $0,Break
+L.455:
+l.d $f18,One
+s.d $f18,X
+jal SR3980
+lw $24,I
+la $15,10
+bgt $24,$15,L.458
+la $24,1023
+sw $24,I
+jal SR3980
+L.458:
+l.d $f18,Z
+l.d $f16,MinusOne
+c.eq.d $f18,$f16; bc1f L.460
+la $24,1
+sw $24,Break
+b L.461
+L.460:
+l.d $f18,MinusOne
+s.d $f18,Z
+jal PrintIfNPositive
+sw $0,N
+la $24,-4
+sw $24,I
+L.461:
+L.456:
+lw $24,Break
+beq $24,$0,L.455
+jal PrintIfNPositive
+lw $24,N
+sw $24,N1
+sw $0,N
+l.d $f18,A1
+s.d $f18,Z
+l.d $f12,W
+jal log
+mov.d $f18,$f0
+s.d $f18,-128+240($sp)
+l.d $f12,A1
+jal log
+mov.d $f18,$f0
+l.d $f16,Two
+l.d $f10,-128+240($sp)
+mul.d $f16,$f16,$f10
+div.d $f12,$f16,$f18
+jal floor
+trunc.w.d $f2,$f0,$24; mfc1 $24,$f2
+sw $24,M
+sw $0,Break
+L.462:
+l.d $f18,Z
+s.d $f18,X
+la $24,1
+sw $24,I
+jal SR3980
+l.d $f18,Z
+l.d $f16,AInvrse
+c.eq.d $f18,$f16; bc1f L.465
+la $24,1
+sw $24,Break
+b L.466
+L.465:
+l.d $f18,AInvrse
+s.d $f18,Z
+L.466:
+L.463:
+lw $24,Break
+beq $24,$0,L.462
+la $24,100
+sw $24,Milestone
+lw $24,NoTrials
+sw $24,M
+l.d $f18,Three
+s.d $f18,Z
+L.467:
+l.d $f18,Z
+s.d $f18,X
+la $24,1
+sw $24,I
+jal SR3980
+L.470:
+l.d $f18,Z
+l.d $f16,Two
+add.d $f18,$f18,$f16
+s.d $f18,Z
+L.471:
+l.d $f18,Three
+s.d $f18,-136+240($sp)
+l.d $f16,Z
+div.d $f12,$f16,$f18
+jal floor
+l.d $f16,-136+240($sp)
+mul.d $f18,$f16,$f0
+l.d $f16,Z
+c.eq.d $f18,$f16; bc1t L.470
+L.468:
+l.d $f18,Z
+l.d $f16,Eight
+l.d $f10,Three
+mul.d $f16,$f16,$f10
+c.lt.d $f18,$f16; bc1t L.467
+lw $24,N
+ble $24,$0,L.473
+la $4,L.475
+jal printf
+la $4,L.476
+jal printf
+L.473:
+jal PrintIfNPositive
+lw $24,N
+lw $15,N1
+addu $24,$24,$15
+sw $24,N
+lw $24,N
+bne $24,$0,L.477
+la $4,L.479
+jal printf
+L.477:
+lw $24,N
+ble $24,$0,L.480
+jal Pause
+b L.481
+L.480:
+la $4,L.44
+jal printf
+L.481:
+la $24,110
+sw $24,Milestone
+la $4,L.482
+jal printf
+l.d $f18,U1
+s.d $f18,D
+l.d $f18,Precision
+s.d $f18,-136+240($sp)
+mov.d $f12,$f18
+jal floor
+l.d $f16,-136+240($sp)
+c.eq.d $f16,$f0; bc1t L.483
+l.d $f18,BInvrse
+s.d $f18,D
+l.d $f18,Precision
+s.d $f18,X
+L.485:
+l.d $f18,D
+l.d $f16,BInvrse
+mul.d $f18,$f18,$f16
+s.d $f18,D
+l.d $f18,X
+l.d $f16,One
+sub.d $f18,$f18,$f16
+s.d $f18,X
+L.486:
+l.d $f18,X
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.485
+L.483:
+l.d $f18,One
+s.d $f18,Y
+l.d $f18,D
+s.d $f18,Z
+L.488:
+l.d $f18,Y
+s.d $f18,C
+l.d $f18,Z
+s.d $f18,Y
+l.d $f18,Y
+mul.d $f18,$f18,$f18
+s.d $f18,Z
+L.489:
+l.d $f18,Z
+l.d $f16,Y
+c.le.d $f16,$f18; bc1t L.491
+add.d $f16,$f18,$f18
+c.le.d $f16,$f18; bc1f L.488
+L.491:
+l.d $f18,C
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,D
+mul.d $f18,$f18,$f16
+s.d $f18,Z
+L.492:
+l.d $f18,Y
+s.d $f18,C
+l.d $f18,Z
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,D
+mul.d $f18,$f18,$f16
+s.d $f18,Z
+L.493:
+l.d $f18,Z
+l.d $f16,Y
+c.le.d $f16,$f18; bc1t L.495
+add.d $f16,$f18,$f18
+c.le.d $f16,$f18; bc1f L.492
+L.495:
+l.d $f18,Radix
+l.d $f16,Two
+c.lt.d $f18,$f16; bc1f L.496
+l.d $f18,Two
+s.d $f18,HInvrse
+b L.497
+L.496:
+l.d $f18,Radix
+s.d $f18,HInvrse
+L.497:
+l.d $f18,One
+l.d $f16,HInvrse
+div.d $f16,$f18,$f16
+s.d $f16,H
+l.d $f16,C
+div.d $f18,$f18,$f16
+s.d $f18,CInvrse
+s.d $f16,E0
+l.d $f18,E0
+l.d $f16,H
+mul.d $f18,$f18,$f16
+s.d $f18,Z
+L.498:
+l.d $f18,E0
+s.d $f18,Y
+l.d $f18,Z
+s.d $f18,E0
+l.d $f18,E0
+l.d $f16,H
+mul.d $f18,$f18,$f16
+s.d $f18,Z
+L.499:
+l.d $f18,Z
+l.d $f16,E0
+c.le.d $f16,$f18; bc1t L.501
+add.d $f16,$f18,$f18
+c.le.d $f16,$f18; bc1f L.498
+L.501:
+l.d $f18,E0
+s.d $f18,UfThold
+l.d $f18,Zero
+s.d $f18,E1
+s.d $f18,Q
+l.d $f18,U2
+s.d $f18,E9
+l.d $f18,One
+l.d $f16,E9
+add.d $f18,$f18,$f16
+s.d $f18,S
+l.d $f18,C
+l.d $f16,S
+mul.d $f16,$f18,$f16
+s.d $f16,D
+l.d $f16,D
+c.le.d $f16,$f18; bc1f L.502
+l.d $f18,Radix
+l.d $f16,U2
+mul.d $f18,$f18,$f16
+s.d $f18,E9
+l.d $f18,One
+l.d $f16,E9
+add.d $f18,$f18,$f16
+s.d $f18,S
+l.d $f18,C
+l.d $f16,S
+mul.d $f16,$f18,$f16
+s.d $f16,D
+l.d $f16,D
+c.le.d $f16,$f18; bc1f L.503
+move $4,$0
+la $5,L.506
+jal BadCond
+l.d $f18,E0
+s.d $f18,Underflow
+l.d $f18,Zero
+s.d $f18,Y1
+l.d $f18,Z
+s.d $f18,PseudoZero
+jal Pause
+b L.503
+L.502:
+l.d $f18,D
+s.d $f18,Underflow
+l.d $f18,Underflow
+l.d $f16,H
+mul.d $f18,$f18,$f16
+s.d $f18,PseudoZero
+l.d $f18,Zero
+s.d $f18,UfThold
+L.507:
+l.d $f18,Underflow
+s.d $f18,Y1
+l.d $f18,PseudoZero
+s.d $f18,Underflow
+l.d $f18,E1
+add.d $f16,$f18,$f18
+c.le.d $f16,$f18; bc1f L.510
+l.d $f18,Underflow
+l.d $f16,HInvrse
+mul.d $f18,$f18,$f16
+s.d $f18,Y2
+l.d $f18,Y1
+l.d $f16,Y2
+sub.d $f12,$f18,$f16
+jal fabs
+s.d $f0,E1
+l.d $f18,Y1
+s.d $f18,Q
+l.d $f18,UfThold
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.512
+l.d $f18,Y1
+l.d $f16,Y2
+c.eq.d $f18,$f16; bc1t L.512
+l.d $f18,Y1
+s.d $f18,UfThold
+L.512:
+L.510:
+l.d $f18,PseudoZero
+l.d $f16,H
+mul.d $f18,$f18,$f16
+s.d $f18,PseudoZero
+L.508:
+l.d $f18,PseudoZero
+l.d $f16,Underflow
+c.le.d $f16,$f18; bc1t L.514
+add.d $f16,$f18,$f18
+c.le.d $f16,$f18; bc1f L.507
+L.514:
+L.503:
+l.d $f18,PseudoZero
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.515
+la $4,L.44
+jal printf
+l.d $f18,PseudoZero
+s.d $f18,Z
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.517
+move $4,$0
+la $5,L.519
+jal BadCond
+la $4,L.520
+jal printf
+la $4,L.521
+l.d $f18,PseudoZero
+mfc1.d $6,$f18
+jal printf
+l.d $f18,PseudoZero
+neg.d $f18,$f18
+s.d $f18,X
+l.d $f18,X
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.518
+la $4,L.524
+jal printf
+la $4,L.525
+l.d $f18,X
+mfc1.d $6,$f18
+jal printf
+b L.518
+L.517:
+la $4,3
+la $5,L.526
+jal BadCond
+la $4,L.527
+l.d $f18,PseudoZero
+mfc1.d $6,$f18
+jal printf
+L.518:
+jal TstPtUf
+L.515:
+la $24,120
+sw $24,Milestone
+l.d $f18,CInvrse
+l.d $f16,Y
+mul.d $f16,$f18,$f16
+l.d $f10,Y1
+mul.d $f18,$f18,$f10
+c.le.d $f16,$f18; bc1t L.528
+l.d $f18,H
+l.d $f16,S
+mul.d $f18,$f18,$f16
+s.d $f18,S
+l.d $f18,Underflow
+s.d $f18,E0
+L.528:
+l.d $f18,E1
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.530
+l.d $f16,E0
+c.eq.d $f18,$f16; bc1t L.530
+la $4,2
+la $5,L.157
+jal BadCond
+l.d $f18,E1
+l.d $f16,E0
+c.lt.d $f18,$f16; bc1f L.532
+la $4,L.534
+jal printf
+la $4,L.535
+jal printf
+l.d $f18,PseudoZero
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.533
+l.d $f18,E1
+s.d $f18,E0
+b L.533
+L.532:
+la $4,L.538
+jal printf
+la $4,L.539
+jal printf
+L.533:
+L.530:
+la $4,L.540
+l.d $f18,E0
+mfc1.d $6,$f18
+jal printf
+l.d $f18,E0
+s.d $f18,Z
+jal TstPtUf
+l.d $f18,E0
+s.d $f18,Underflow
+lw $24,N
+la $15,1
+bne $24,$15,L.541
+l.d $f18,Y
+s.d $f18,Underflow
+L.541:
+la $24,4
+sw $24,I
+l.d $f18,E1
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.543
+la $24,3
+sw $24,I
+L.543:
+l.d $f18,UfThold
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.545
+lw $24,I
+subu $24,$24,2
+sw $24,I
+L.545:
+la $24,1
+sw $24,UfNGrad
+lw $24,I
+la $15,1
+blt $24,$15,L.547
+la $15,4
+bgt $24,$15,L.547
+sll $24,$24,2
+lw $24,L.570-4($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.570:
+.gpword L.549
+.gpword L.556
+.gpword L.561
+.gpword L.562
+.text
+L.549:
+l.d $f18,Underflow
+s.d $f18,UfThold
+l.d $f18,CInvrse
+l.d $f16,Q
+mul.d $f16,$f18,$f16
+l.d $f10,Y
+mul.d $f18,$f18,$f10
+l.d $f10,S
+mul.d $f18,$f18,$f10
+c.eq.d $f16,$f18; bc1t L.550
+l.d $f18,Y
+s.d $f18,UfThold
+move $4,$0
+la $5,L.552
+jal BadCond
+la $4,L.553
+l.d $f18,UfThold
+mfc1.d $6,$f18
+jal printf
+la $4,L.554
+l.d $f18,C
+mfc1.d $6,$f18
+jal printf
+la $4,L.555
+jal printf
+L.550:
+jal Pause
+b L.548
+L.556:
+move $4,$0
+la $5,L.557
+jal BadCond
+la $4,L.558
+jal printf
+la $4,L.559
+l.d $f18,Q
+mfc1.d $6,$f18
+l.d $f18,Y2
+s.d $f18,16($sp)
+jal printf
+l.d $f18,Q
+l.d $f16,Y2
+sub.d $f12,$f18,$f16
+jal fabs
+mov.d $f18,$f0
+la $4,L.560
+mfc1.d $6,$f18
+jal printf
+l.d $f18,Q
+s.d $f18,UfThold
+b L.548
+L.561:
+l.d $f18,X
+s.d $f18,X
+b L.548
+L.562:
+l.d $f18,UfThold
+l.d $f16,Q
+c.eq.d $f16,$f18; bc1f L.563
+l.d $f16,E1
+l.d $f10,E0
+c.eq.d $f16,$f10; bc1f L.563
+l.d $f10,E9
+div.d $f16,$f16,$f10
+sub.d $f12,$f18,$f16
+jal fabs
+l.d $f16,E1
+c.le.d $f0,$f16; bc1f L.563
+sw $0,UfNGrad
+la $4,L.565
+jal printf
+la $4,L.566
+jal printf
+l.d $f18,E0
+l.d $f16,CInvrse
+mul.d $f10,$f18,$f16
+s.d $f10,Y
+l.d $f10,U2
+l.d $f8,Y
+l.d $f6,OneAndHalf
+add.d $f6,$f6,$f10
+mul.d $f8,$f8,$f6
+s.d $f8,Y
+l.d $f8,One
+add.d $f10,$f8,$f10
+mul.d $f16,$f16,$f10
+s.d $f16,X
+l.d $f16,Y
+l.d $f10,X
+div.d $f16,$f16,$f10
+s.d $f16,Y
+l.d $f16,Y
+c.eq.d $f16,$f18; bc1f L.568
+la $24,1
+sw $24,-140+240($sp)
+b L.569
+L.568:
+sw $0,-140+240($sp)
+L.569:
+lw $24,-140+240($sp)
+sw $24,IEEE
+L.563:
+L.547:
+L.548:
+lw $24,UfNGrad
+beq $24,$0,L.572
+la $4,L.44
+jal printf
+la $24,sigfpe
+sw $24,sigsave
+la $4,ovfl_buf
+jal setjmp
+beq $2,$0,L.574
+la $4,L.576
+jal printf
+l.d $f18,H
+add.d $f18,$f18,$f18
+s.d $f18,R
+b L.575
+L.574:
+l.d $f18,Underflow
+l.d $f16,UfThold
+div.d $f12,$f18,$f16
+jal sqrt
+s.d $f0,R
+L.575:
+sw $0,sigsave
+l.d $f18,R
+l.d $f16,H
+c.le.d $f18,$f16; bc1f L.577
+l.d $f18,R
+l.d $f16,UfThold
+mul.d $f16,$f18,$f16
+s.d $f16,Z
+l.d $f16,One
+l.d $f10,H
+l.d $f8,Z
+mul.d $f18,$f18,$f10
+add.d $f10,$f16,$f10
+mul.d $f18,$f18,$f10
+add.d $f18,$f16,$f18
+mul.d $f18,$f8,$f18
+s.d $f18,X
+b L.578
+L.577:
+l.d $f18,UfThold
+s.d $f18,Z
+l.d $f18,One
+l.d $f16,H
+l.d $f10,Z
+mul.d $f8,$f16,$f16
+add.d $f16,$f18,$f16
+mul.d $f16,$f8,$f16
+add.d $f18,$f18,$f16
+mul.d $f18,$f10,$f18
+s.d $f18,X
+L.578:
+l.d $f18,X
+l.d $f16,Z
+c.eq.d $f18,$f16; bc1t L.579
+sub.d $f18,$f18,$f16
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.579
+la $4,3
+la $5,L.157
+jal BadCond
+la $4,L.581
+l.d $f18,X
+mfc1.d $6,$f18
+l.d $f18,Z
+s.d $f18,16($sp)
+jal printf
+l.d $f18,X
+l.d $f16,Z
+sub.d $f18,$f18,$f16
+s.d $f18,Z9
+la $4,L.582
+l.d $f18,Z9
+mfc1.d $6,$f18
+jal printf
+la $4,L.583
+jal printf
+la $4,L.584
+jal printf
+la $4,L.585
+jal printf
+la $4,L.586
+jal printf
+la $4,L.587
+jal printf
+la $4,L.588
+jal printf
+la $24,sigfpe
+sw $24,sigsave
+la $4,ovfl_buf
+jal setjmp
+beq $2,$0,L.589
+la $4,L.591
+jal printf
+b L.590
+L.589:
+la $4,L.592
+l.d $f18,Half
+l.d $f16,X
+l.d $f10,Z
+div.d $f16,$f16,$f10
+sub.d $f16,$f16,$f18
+sub.d $f18,$f16,$f18
+mfc1.d $6,$f18
+jal printf
+L.590:
+sw $0,sigsave
+L.579:
+L.572:
+la $4,L.593
+l.d $f18,UfThold
+mfc1.d $6,$f18
+la $24,L.594
+sw $24,16($sp)
+jal printf
+la $4,L.595
+jal printf
+la $4,L.596
+jal printf
+l.d $f18,U1
+mul.d $f16,$f18,$f18
+s.d $f16,Y2
+l.d $f16,Y2
+mul.d $f16,$f16,$f16
+s.d $f16,Y
+l.d $f16,Y
+mul.d $f18,$f16,$f18
+s.d $f18,Y2
+l.d $f18,Y2
+l.d $f16,UfThold
+c.le.d $f18,$f16; bc1f L.597
+l.d $f18,Y
+l.d $f16,E0
+c.le.d $f18,$f16; bc1t L.599
+la $4,2
+la $5,L.157
+jal BadCond
+la $24,5
+sw $24,I
+b L.600
+L.599:
+la $4,1
+la $5,L.157
+jal BadCond
+la $24,4
+sw $24,I
+L.600:
+la $4,L.601
+lw $5,I
+jal printf
+L.597:
+la $24,130
+sw $24,Milestone
+l.d $f12,UfThold
+jal log
+mov.d $f18,$f0
+s.d $f18,-144+240($sp)
+l.d $f12,HInvrse
+jal log
+l.d $f16,Half
+l.d $f10,TwoForty
+l.d $f8,-144+240($sp)
+mul.d $f10,$f10,$f8
+div.d $f18,$f10,$f0
+sub.d $f12,$f16,$f18
+jal floor
+neg.d $f18,$f0
+l.d $f16,TwoForty
+div.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,Y
+add.d $f18,$f18,$f18
+s.d $f18,Y2
+la $4,L.602
+jal printf
+la $4,L.603
+l.d $f18,HInvrse
+mfc1.d $6,$f18
+l.d $f18,Y
+s.d $f18,16($sp)
+jal printf
+la $4,L.604
+l.d $f18,HInvrse
+mfc1.d $6,$f18
+l.d $f18,Y
+s.d $f18,16($sp)
+jal printf
+l.d $f12,HInvrse
+l.d $f14,Y2
+jal pow
+s.d $f0,V9
+la $4,L.605
+l.d $f18,V9
+mfc1.d $6,$f18
+jal printf
+l.d $f18,V9
+l.d $f16,Zero
+c.lt.d $f18,$f16; bc1t L.608
+l.d $f16,Radix
+add.d $f16,$f16,$f16
+l.d $f10,E9
+add.d $f16,$f16,$f10
+l.d $f10,UfThold
+mul.d $f16,$f16,$f10
+c.le.d $f18,$f16; bc1t L.606
+L.608:
+la $4,1
+la $5,L.609
+jal BadCond
+la $4,L.610
+l.d $f18,UfThold
+mfc1.d $6,$f18
+jal printf
+b L.607
+L.606:
+l.d $f18,V9
+l.d $f16,UfThold
+l.d $f10,One
+l.d $f8,E9
+add.d $f10,$f10,$f8
+mul.d $f16,$f16,$f10
+c.le.d $f18,$f16; bc1f L.611
+la $4,L.613
+jal printf
+b L.612
+L.611:
+la $4,2
+la $5,L.609
+jal BadCond
+la $4,L.610
+l.d $f18,UfThold
+mfc1.d $6,$f18
+jal printf
+L.612:
+L.607:
+la $24,140
+sw $24,Milestone
+la $4,L.44
+jal printf
+l.d $f18,Zero
+s.d $f18,X
+la $24,2
+sw $24,I
+l.d $f16,Two
+l.d $f10,Three
+mul.d $f16,$f16,$f10
+s.d $f16,Y
+s.d $f18,Q
+sw $0,N
+L.614:
+l.d $f18,X
+s.d $f18,Z
+lw $24,I
+la $24,1($24)
+sw $24,I
+lw $24,I
+l.d $f18,Y
+addu $24,$24,$24
+mtc1 $24,$f16; cvt.d.w $f16,$f16
+div.d $f18,$f18,$f16
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,Q
+add.d $f18,$f18,$f16
+s.d $f18,R
+l.d $f18,Z
+l.d $f16,R
+add.d $f10,$f18,$f16
+s.d $f10,X
+l.d $f10,X
+sub.d $f18,$f18,$f10
+add.d $f18,$f18,$f16
+s.d $f18,Q
+L.615:
+l.d $f18,X
+l.d $f16,Z
+c.le.d $f18,$f16; bc1f L.614
+l.d $f18,OneAndHalf
+l.d $f16,One
+l.d $f10,Eight
+div.d $f16,$f16,$f10
+add.d $f16,$f18,$f16
+l.d $f10,X
+l.d $f8,ThirtyTwo
+mul.d $f18,$f18,$f8
+div.d $f18,$f10,$f18
+add.d $f18,$f16,$f18
+s.d $f18,Z
+l.d $f18,Z
+mul.d $f18,$f18,$f18
+s.d $f18,X
+l.d $f18,X
+mul.d $f18,$f18,$f18
+s.d $f18,Exp2
+l.d $f18,F9
+s.d $f18,X
+l.d $f18,X
+l.d $f16,U1
+sub.d $f18,$f18,$f16
+s.d $f18,Y
+la $4,L.617
+l.d $f18,Exp2
+mfc1.d $6,$f18
+jal printf
+la $24,1
+sw $24,I
+L.618:
+l.d $f18,X
+l.d $f16,BInvrse
+sub.d $f10,$f18,$f16
+s.d $f10,Z
+l.d $f10,One
+add.d $f8,$f18,$f10
+l.d $f6,Z
+sub.d $f16,$f10,$f16
+sub.d $f16,$f6,$f16
+div.d $f16,$f8,$f16
+s.d $f16,Z
+mov.d $f12,$f18
+l.d $f14,Z
+jal pow
+l.d $f16,Exp2
+sub.d $f18,$f0,$f16
+s.d $f18,Q
+l.d $f12,Q
+jal fabs
+l.d $f16,TwoForty
+l.d $f10,U2
+mul.d $f16,$f16,$f10
+c.le.d $f0,$f16; bc1t L.622
+la $24,1
+sw $24,N
+l.d $f18,BInvrse
+l.d $f16,X
+sub.d $f16,$f16,$f18
+l.d $f10,One
+sub.d $f18,$f10,$f18
+sub.d $f18,$f16,$f18
+s.d $f18,V9
+la $4,2
+la $5,L.624
+jal BadCond
+l.d $f12,X
+l.d $f14,Z
+jal pow
+mov.d $f18,$f0
+la $4,L.625
+mfc1.d $6,$f18
+jal printf
+la $4,L.626
+l.d $f18,V9
+mfc1.d $6,$f18
+l.d $f18,Z
+s.d $f18,16($sp)
+jal printf
+la $4,L.627
+l.d $f18,Q
+mfc1.d $6,$f18
+jal printf
+la $4,L.628
+jal printf
+la $4,L.629
+jal printf
+b L.620
+L.622:
+l.d $f18,Y
+l.d $f16,X
+sub.d $f16,$f18,$f16
+l.d $f10,Two
+mul.d $f16,$f16,$f10
+add.d $f16,$f16,$f18
+s.d $f16,Z
+s.d $f18,X
+l.d $f18,Z
+s.d $f18,Y
+l.d $f18,X
+l.d $f16,F9
+sub.d $f18,$f18,$f16
+l.d $f16,One
+mul.d $f18,$f18,$f18
+add.d $f18,$f16,$f18
+s.d $f18,Z
+l.d $f18,Z
+l.d $f16,One
+c.le.d $f18,$f16; bc1t L.630
+lw $24,I
+lw $15,NoTrials
+bge $24,$15,L.630
+lw $24,I
+la $24,1($24)
+sw $24,I
+b L.618
+L.630:
+l.d $f18,X
+l.d $f16,One
+c.le.d $f18,$f16; bc1t L.632
+lw $24,N
+bne $24,$0,L.620
+la $4,L.636
+jal printf
+b L.620
+L.632:
+l.d $f18,U2
+l.d $f16,One
+add.d $f16,$f16,$f18
+s.d $f16,X
+add.d $f18,$f18,$f18
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,X
+add.d $f18,$f18,$f16
+s.d $f18,Y
+la $24,1
+sw $24,I
+b L.618
+L.620:
+la $24,150
+sw $24,Milestone
+la $4,L.637
+jal printf
+sw $0,N
+l.d $f18,A1
+s.d $f18,Z
+l.d $f12,C
+jal log
+mov.d $f18,$f0
+s.d $f18,-152+240($sp)
+l.d $f12,A1
+jal log
+l.d $f16,Half
+l.d $f10,-152+240($sp)
+div.d $f18,$f10,$f0
+sub.d $f12,$f16,$f18
+jal floor
+s.d $f0,Q
+sw $0,Break
+L.638:
+l.d $f18,CInvrse
+s.d $f18,X
+l.d $f12,Z
+l.d $f14,Q
+jal pow
+s.d $f0,Y
+jal IsYeqX
+l.d $f18,Q
+neg.d $f18,$f18
+s.d $f18,Q
+l.d $f18,C
+s.d $f18,X
+l.d $f12,Z
+l.d $f14,Q
+jal pow
+s.d $f0,Y
+jal IsYeqX
+l.d $f18,Z
+l.d $f16,One
+c.lt.d $f18,$f16; bc1f L.641
+la $24,1
+sw $24,Break
+b L.642
+L.641:
+l.d $f18,AInvrse
+s.d $f18,Z
+L.642:
+L.639:
+lw $24,Break
+beq $24,$0,L.638
+jal PrintIfNPositive
+lw $24,N
+bne $24,$0,L.643
+la $4,L.645
+jal printf
+L.643:
+la $4,L.44
+jal printf
+la $24,160
+sw $24,Milestone
+jal Pause
+la $4,L.646
+jal printf
+la $4,L.647
+jal printf
+l.d $f18,CInvrse
+neg.d $f18,$f18
+s.d $f18,Y
+l.d $f18,HInvrse
+l.d $f16,Y
+mul.d $f18,$f18,$f16
+s.d $f18,V9
+la $24,sigfpe
+sw $24,sigsave
+la $4,ovfl_buf
+jal setjmp
+beq $2,$0,L.648
+sw $0,I
+l.d $f18,Y
+s.d $f18,V9
+b L.650
+L.648:
+L.651:
+l.d $f18,Y
+s.d $f18,V
+l.d $f18,V9
+s.d $f18,Y
+l.d $f18,HInvrse
+l.d $f16,Y
+mul.d $f18,$f18,$f16
+s.d $f18,V9
+L.652:
+l.d $f18,V9
+l.d $f16,Y
+c.lt.d $f18,$f16; bc1t L.651
+la $24,1
+sw $24,I
+L.650:
+sw $0,sigsave
+l.d $f18,V9
+s.d $f18,Z
+la $4,L.654
+jal printf
+la $4,L.655
+l.d $f18,Y
+mfc1.d $6,$f18
+jal printf
+l.d $f18,Y
+neg.d $f16,$f18
+s.d $f16,V9
+l.d $f16,V9
+s.d $f16,V0
+l.d $f16,V
+sub.d $f18,$f16,$f18
+l.d $f10,V0
+add.d $f16,$f16,$f10
+c.eq.d $f18,$f16; bc1f L.656
+la $4,L.658
+jal printf
+b L.657
+L.656:
+la $4,L.659
+jal printf
+la $4,3
+la $5,L.660
+jal BadCond
+L.657:
+l.d $f18,Z
+l.d $f16,Y
+c.eq.d $f18,$f16; bc1t L.661
+la $4,1
+la $5,L.157
+jal BadCond
+la $4,L.663
+l.d $f18,Y
+mfc1.d $6,$f18
+l.d $f18,Z
+s.d $f18,16($sp)
+jal printf
+L.661:
+lw $24,I
+beq $24,$0,L.664
+l.d $f18,V
+l.d $f16,HInvrse
+l.d $f10,U2
+mul.d $f8,$f16,$f10
+sub.d $f8,$f8,$f16
+mul.d $f8,$f18,$f8
+s.d $f8,Y
+l.d $f8,Y
+l.d $f6,One
+sub.d $f16,$f6,$f16
+mul.d $f16,$f16,$f10
+mul.d $f18,$f16,$f18
+add.d $f18,$f8,$f18
+s.d $f18,Z
+l.d $f18,Z
+l.d $f16,V0
+c.lt.d $f18,$f16; bc1f L.666
+l.d $f18,Z
+s.d $f18,Y
+L.666:
+l.d $f18,Y
+l.d $f16,V0
+c.lt.d $f18,$f16; bc1f L.668
+l.d $f18,Y
+s.d $f18,V
+L.668:
+l.d $f18,V0
+l.d $f16,V
+sub.d $f16,$f18,$f16
+c.lt.d $f16,$f18; bc1f L.665
+l.d $f18,V0
+s.d $f18,V
+b L.665
+L.664:
+l.d $f18,Y
+l.d $f16,HInvrse
+l.d $f10,U2
+mul.d $f8,$f16,$f10
+sub.d $f8,$f8,$f16
+mul.d $f8,$f18,$f8
+s.d $f8,V
+l.d $f8,V
+l.d $f6,One
+sub.d $f16,$f6,$f16
+mul.d $f16,$f16,$f10
+mul.d $f18,$f16,$f18
+add.d $f18,$f8,$f18
+s.d $f18,V
+L.665:
+la $4,L.672
+l.d $f18,V
+mfc1.d $6,$f18
+jal printf
+lw $24,I
+beq $24,$0,L.673
+la $4,L.675
+l.d $f18,V0
+mfc1.d $6,$f18
+jal printf
+b L.674
+L.673:
+la $4,L.676
+jal printf
+L.674:
+l.d $f18,V
+l.d $f16,One
+mul.d $f18,$f18,$f16
+s.d $f18,V9
+la $4,L.677
+l.d $f18,V9
+mfc1.d $6,$f18
+jal printf
+l.d $f18,V
+l.d $f16,One
+div.d $f18,$f18,$f16
+s.d $f18,V9
+la $4,L.678
+l.d $f18,V9
+mfc1.d $6,$f18
+jal printf
+la $4,L.679
+jal printf
+la $4,L.680
+jal printf
+la $24,170
+sw $24,Milestone
+l.d $f18,V
+neg.d $f16,$f18
+c.lt.d $f16,$f18; bc1f L.685
+l.d $f16,V0
+neg.d $f10,$f16
+c.lt.d $f10,$f16; bc1f L.685
+l.d $f16,UfThold
+neg.d $f10,$f16
+c.lt.d $f10,$f18; bc1f L.685
+c.lt.d $f16,$f18; bc1t L.681
+L.685:
+move $4,$0
+la $5,L.686
+jal BadCond
+la $4,L.687
+l.d $f18,V
+mfc1.d $6,$f18
+l.d $f18,V0
+s.d $f18,16($sp)
+l.d $f18,UfThold
+s.d $f18,24($sp)
+jal printf
+L.681:
+la $24,175
+sw $24,Milestone
+la $4,L.44
+jal printf
+la $24,1
+sw $24,Indx
+L.688:
+lw $24,Indx
+la $15,1
+beq $24,$15,L.694
+la $15,2
+beq $24,$15,L.695
+la $15,3
+beq $24,$15,L.696
+b L.692
+L.694:
+l.d $f18,UfThold
+s.d $f18,Z
+b L.693
+L.695:
+l.d $f18,E0
+s.d $f18,Z
+b L.693
+L.696:
+l.d $f18,PseudoZero
+s.d $f18,Z
+L.692:
+L.693:
+l.d $f18,Z
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.697
+l.d $f12,Z
+jal sqrt
+s.d $f0,V9
+l.d $f18,V9
+mul.d $f18,$f18,$f18
+s.d $f18,Y
+l.d $f18,Y
+l.d $f16,One
+l.d $f10,Radix
+l.d $f8,E9
+mul.d $f10,$f10,$f8
+l.d $f8,Z
+sub.d $f6,$f16,$f10
+div.d $f6,$f18,$f6
+c.lt.d $f6,$f8; bc1t L.701
+add.d $f16,$f16,$f10
+mul.d $f16,$f16,$f8
+c.le.d $f18,$f16; bc1t L.699
+L.701:
+l.d $f18,V9
+l.d $f16,U1
+c.le.d $f18,$f16; bc1t L.702
+la $4,1
+la $5,L.157
+jal BadCond
+b L.703
+L.702:
+la $4,2
+la $5,L.157
+jal BadCond
+L.703:
+la $4,L.704
+l.d $f18,Z
+mfc1.d $6,$f18
+jal printf
+la $4,L.705
+l.d $f18,Y
+mfc1.d $6,$f18
+jal printf
+L.699:
+L.697:
+L.689:
+lw $24,Indx
+la $24,1($24)
+sw $24,Indx
+lw $24,Indx
+la $15,3
+ble $24,$15,L.688
+la $24,180
+sw $24,Milestone
+la $24,1
+sw $24,Indx
+L.706:
+lw $24,Indx
+la $15,1
+bne $24,$15,L.710
+l.d $f18,V
+s.d $f18,Z
+b L.711
+L.710:
+l.d $f18,V0
+s.d $f18,Z
+L.711:
+l.d $f12,Z
+jal sqrt
+s.d $f0,V9
+l.d $f18,V9
+l.d $f16,One
+l.d $f10,Radix
+l.d $f8,E9
+mul.d $f10,$f10,$f8
+sub.d $f16,$f16,$f10
+mul.d $f16,$f16,$f18
+s.d $f16,X
+l.d $f16,X
+mul.d $f18,$f18,$f16
+s.d $f18,V9
+l.d $f18,V9
+l.d $f16,Z
+l.d $f10,One
+l.d $f8,Two
+l.d $f6,Radix
+mul.d $f8,$f8,$f6
+l.d $f6,E9
+mul.d $f8,$f8,$f6
+sub.d $f10,$f10,$f8
+mul.d $f10,$f10,$f16
+c.lt.d $f18,$f10; bc1t L.714
+c.le.d $f18,$f16; bc1t L.712
+L.714:
+l.d $f18,V9
+s.d $f18,Y
+l.d $f18,X
+l.d $f16,W
+c.lt.d $f18,$f16; bc1f L.715
+la $4,1
+la $5,L.157
+jal BadCond
+b L.716
+L.715:
+la $4,2
+la $5,L.157
+jal BadCond
+L.716:
+la $4,L.717
+l.d $f18,Z
+mfc1.d $6,$f18
+jal printf
+la $4,L.718
+l.d $f18,Y
+mfc1.d $6,$f18
+jal printf
+L.712:
+L.707:
+lw $24,Indx
+la $24,1($24)
+sw $24,Indx
+lw $24,Indx
+la $15,2
+ble $24,$15,L.706
+la $24,190
+sw $24,Milestone
+jal Pause
+l.d $f18,UfThold
+l.d $f16,V
+mul.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,Radix
+mul.d $f18,$f18,$f18
+s.d $f18,Y
+l.d $f18,X
+l.d $f16,Y
+mul.d $f10,$f18,$f16
+l.d $f8,One
+c.lt.d $f10,$f8; bc1t L.721
+c.le.d $f18,$f16; bc1t L.719
+L.721:
+l.d $f18,X
+l.d $f16,Y
+l.d $f10,U1
+mul.d $f8,$f18,$f16
+c.lt.d $f8,$f10; bc1t L.724
+div.d $f16,$f16,$f10
+c.le.d $f18,$f16; bc1t L.722
+L.724:
+la $4,2
+la $5,L.725
+jal BadCond
+b L.723
+L.722:
+la $4,3
+la $5,L.157
+jal BadCond
+L.723:
+la $4,L.726
+l.d $f18,X
+mfc1.d $6,$f18
+la $24,L.727
+sw $24,16($sp)
+jal printf
+L.719:
+la $24,200
+sw $24,Milestone
+la $24,1
+sw $24,Indx
+L.728:
+l.d $f18,F9
+s.d $f18,X
+lw $24,Indx
+la $15,2
+blt $24,$15,L.732
+la $15,5
+bgt $24,$15,L.732
+sll $24,$24,2
+lw $24,L.738-8($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.738:
+.gpword L.734
+.gpword L.735
+.gpword L.736
+.gpword L.737
+.text
+L.734:
+l.d $f18,One
+l.d $f16,U2
+add.d $f18,$f18,$f16
+s.d $f18,X
+b L.733
+L.735:
+l.d $f18,V
+s.d $f18,X
+b L.733
+L.736:
+l.d $f18,UfThold
+s.d $f18,X
+b L.733
+L.737:
+l.d $f18,Radix
+s.d $f18,X
+L.732:
+L.733:
+l.d $f18,X
+s.d $f18,Y
+la $24,sigfpe
+sw $24,sigsave
+la $4,ovfl_buf
+jal setjmp
+beq $2,$0,L.740
+la $4,L.742
+l.d $f18,X
+mfc1.d $6,$f18
+jal printf
+b L.741
+L.740:
+l.d $f18,Half
+l.d $f16,Y
+l.d $f10,X
+div.d $f16,$f16,$f10
+sub.d $f16,$f16,$f18
+sub.d $f18,$f16,$f18
+s.d $f18,V9
+l.d $f18,V9
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.743
+b L.729
+L.743:
+l.d $f18,V9
+l.d $f16,U1
+neg.d $f16,$f16
+c.eq.d $f18,$f16; bc1f L.745
+lw $24,Indx
+la $15,5
+bge $24,$15,L.745
+la $4,3
+la $5,L.157
+jal BadCond
+b L.746
+L.745:
+la $4,1
+la $5,L.157
+jal BadCond
+L.746:
+la $4,L.747
+l.d $f18,X
+mfc1.d $6,$f18
+jal printf
+la $4,L.748
+l.d $f18,V9
+mfc1.d $6,$f18
+jal printf
+L.741:
+sw $0,sigsave
+L.729:
+lw $24,Indx
+la $24,1($24)
+sw $24,Indx
+lw $24,Indx
+la $15,5
+ble $24,$15,L.728
+la $24,210
+sw $24,Milestone
+l.d $f18,Zero
+s.d $f18,MyZero
+la $4,L.44
+jal printf
+la $4,L.749
+jal printf
+la $24,sigfpe
+sw $24,sigsave
+la $4,L.750
+jal printf
+la $4,ovfl_buf
+jal setjmp
+bne $2,$0,L.751
+la $4,L.753
+l.d $f18,One
+l.d $f16,MyZero
+div.d $f18,$f18,$f16
+mfc1.d $6,$f18
+jal printf
+L.751:
+sw $0,sigsave
+la $24,sigfpe
+sw $24,sigsave
+la $4,L.754
+jal printf
+la $4,ovfl_buf
+jal setjmp
+bne $2,$0,L.755
+la $4,L.753
+l.d $f18,Zero
+l.d $f16,MyZero
+div.d $f18,$f18,$f16
+mfc1.d $6,$f18
+jal printf
+L.755:
+sw $0,sigsave
+la $24,220
+sw $24,Milestone
+jal Pause
+la $4,L.44
+jal printf
+sw $0,-156+240($sp)
+L.762:
+lw $24,-156+240($sp)
+sll $24,$24,2
+lw $24,ErrCnt($24)
+beq $24,$0,L.766
+la $4,L.768
+lw $24,-156+240($sp)
+sll $24,$24,2
+lw $5,L.757($24)
+lw $6,ErrCnt($24)
+jal printf
+L.766:
+L.763:
+lw $24,-156+240($sp)
+la $24,1($24)
+sw $24,-156+240($sp)
+lw $24,-156+240($sp)
+la $15,4
+blt $24,$15,L.762
+la $4,L.44
+jal printf
+lw $24,ErrCnt
+lw $15,ErrCnt+4
+addu $24,$24,$15
+lw $15,ErrCnt+8
+addu $24,$24,$15
+lw $15,ErrCnt+12
+addu $24,$24,$15
+ble $24,$0,L.769
+lw $15,ErrCnt
+lw $14,ErrCnt+4
+addu $15,$15,$14
+lw $14,ErrCnt+8
+addu $15,$15,$14
+bne $15,$0,L.774
+lw $15,ErrCnt+12
+ble $15,$0,L.774
+la $4,L.779
+jal printf
+la $4,L.780
+jal printf
+L.774:
+lw $15,ErrCnt
+lw $14,ErrCnt+4
+addu $15,$15,$14
+bne $15,$0,L.781
+lw $15,ErrCnt+8
+ble $15,$0,L.781
+la $4,L.785
+jal printf
+la $4,L.786
+jal printf
+L.781:
+lw $24,ErrCnt
+lw $15,ErrCnt+4
+addu $24,$24,$15
+ble $24,$0,L.787
+la $4,L.790
+jal printf
+la $4,L.791
+jal printf
+L.787:
+lw $24,ErrCnt
+ble $24,$0,L.770
+la $4,L.794
+jal printf
+la $4,L.795
+jal printf
+b L.770
+L.769:
+la $4,L.796
+jal printf
+la $24,1
+lw $15,RMult
+bne $15,$24,L.801
+lw $15,RDiv
+bne $15,$24,L.801
+lw $15,RAddSub
+bne $15,$24,L.801
+lw $15,RSqrt
+beq $15,$24,L.797
+L.801:
+la $4,L.802
+jal printf
+b L.798
+L.797:
+l.d $f18,One
+l.d $f16,StickyBit
+c.lt.d $f16,$f18; bc1t L.803
+l.d $f16,Radix
+l.d $f10,Two
+sub.d $f10,$f16,$f10
+l.d $f8,Nine
+sub.d $f16,$f16,$f8
+sub.d $f18,$f16,$f18
+mul.d $f18,$f10,$f18
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.803
+la $4,L.805
+jal printf
+la $4,L.806
+jal printf
+l.d $f18,Two
+l.d $f16,Radix
+c.eq.d $f16,$f18; bc1f L.807
+l.d $f16,Precision
+l.d $f10,TwentySeven
+l.d $f8,Four
+l.d $f6,Three
+mul.d $f8,$f8,$f6
+mul.d $f18,$f8,$f18
+sub.d $f18,$f16,$f18
+sub.d $f16,$f16,$f10
+sub.d $f16,$f16,$f10
+l.d $f10,One
+add.d $f16,$f16,$f10
+mul.d $f18,$f18,$f16
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1f L.807
+la $4,L.809
+jal printf
+b L.808
+L.807:
+la $4,L.810
+jal printf
+L.808:
+lw $24,IEEE
+beq $24,$0,L.811
+la $4,L.813
+jal printf
+b L.812
+L.811:
+la $4,L.814
+jal printf
+la $4,L.815
+jal printf
+L.812:
+L.803:
+la $4,L.816
+jal printf
+L.798:
+L.770:
+lw $24,fpecount
+beq $24,$0,L.817
+la $4,L.819
+lw $5,fpecount
+jal printf
+L.817:
+la $4,L.820
+jal printf
+move $2,$0
+L.6:
+lw $16,32($sp)
+lw $17,36($sp)
+lw $18,40($sp)
+lw $19,44($sp)
+lw $20,48($sp)
+lw $21,52($sp)
+lw $22,56($sp)
+lw $23,60($sp)
+lw $25,64($sp)
+lw $30,68($sp)
+lw $31,72($sp)
+addu $sp,$sp,240
+j $31
+.end main
+.globl Sign
+.text
+.align 2
+.ent Sign
+Sign:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+.fmask 0xc0000000,-8
+s.d $f30,0($sp)
+l.d $f18,L.7
+c.lt.d $f12,$f18; bc1t L.823
+l.d $f30,L.8
+b L.824
+L.823:
+l.d $f30,L.825
+L.824:
+mov.d $f0,$f30
+L.821:
+l.d $f30,0($sp)
+addu $sp,$sp,8
+j $31
+.end Sign
+.globl Pause
+.text
+.align 2
+.ent Pause
+Pause:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+la $4,L.827
+lw $5,Milestone
+jal printf
+la $4,L.828
+lw $5,PageNo
+jal printf
+lw $24,Milestone
+la $24,1($24)
+sw $24,Milestone
+lw $24,PageNo
+la $24,1($24)
+sw $24,PageNo
+move $2,$0
+L.826:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end Pause
+.globl TstCond
+.text
+.align 2
+.ent TstCond
+TstCond:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+sw $5,28($sp)
+sw $6,32($sp)
+lw $24,4+24($sp)
+bne $24,$0,L.830
+lw $4,0+24($sp)
+lw $5,8+24($sp)
+jal BadCond
+la $4,L.813
+jal printf
+L.830:
+move $2,$0
+L.829:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end TstCond
+.data
+.align 2
+L.833:
+.word L.834
+.word L.835
+.word L.836
+.word L.837
+.globl BadCond
+.text
+.text
+.align 2
+.ent BadCond
+BadCond:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+move $30,$4
+sw $5,36($sp)
+sll $24,$30,2
+la $24,ErrCnt($24)
+lw $15,($24)
+la $15,1($15)
+sw $15,($24)
+la $4,L.838
+sll $24,$30,2
+lw $5,L.833($24)
+lw $6,4+32($sp)
+jal printf
+move $2,$0
+L.832:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end BadCond
+.globl Random
+.text
+.align 2
+.ent Random
+Random:
+.frame $sp,40,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-40
+.fmask 0xf0000000,-16
+.mask 0x82000000,-4
+s.d $f28,16($sp)
+s.d $f30,24($sp)
+.cprestore 32
+sw $31,36($sp)
+l.d $f18,Random1
+l.d $f16,Random9
+add.d $f30,$f18,$f16
+mul.d $f28,$f30,$f30
+mul.d $f28,$f28,$f28
+mul.d $f30,$f30,$f28
+mov.d $f12,$f30
+jal floor
+sub.d $f28,$f30,$f0
+l.d $f18,L.840
+mul.d $f18,$f18,$f30
+add.d $f18,$f28,$f18
+s.d $f18,Random1
+l.d $f0,Random1
+L.839:
+l.d $f28,16($sp)
+l.d $f30,24($sp)
+lw $25,32($sp)
+lw $31,36($sp)
+addu $sp,$sp,40
+j $31
+.end Random
+.globl SqXMinX
+.text
+.align 2
+.ent SqXMinX
+SqXMinX:
+.frame $sp,56,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-56
+.fmask 0xc0000000,-24
+.mask 0x82000000,-12
+s.d $f30,32($sp)
+.cprestore 40
+sw $31,44($sp)
+sw $4,56($sp)
+l.d $f18,X
+l.d $f16,BInvrse
+mul.d $f30,$f18,$f16
+sub.d $f16,$f18,$f30
+s.d $f16,-8+56($sp)
+mul.d $f12,$f18,$f18
+jal sqrt
+sub.d $f18,$f0,$f30
+l.d $f16,-8+56($sp)
+sub.d $f18,$f18,$f16
+l.d $f16,OneUlp
+div.d $f18,$f18,$f16
+s.d $f18,SqEr
+l.d $f18,SqEr
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.842
+l.d $f18,SqEr
+l.d $f16,MinSqEr
+c.lt.d $f18,$f16; bc1f L.844
+l.d $f18,SqEr
+s.d $f18,MinSqEr
+L.844:
+l.d $f18,SqEr
+l.d $f16,MaxSqEr
+c.le.d $f18,$f16; bc1t L.846
+l.d $f18,SqEr
+s.d $f18,MaxSqEr
+L.846:
+l.d $f18,J
+l.d $f16,L.8
+add.d $f18,$f18,$f16
+s.d $f18,J
+lw $4,0+56($sp)
+la $5,L.44
+jal BadCond
+la $4,L.848
+l.d $f18,X
+mul.d $f16,$f18,$f18
+mfc1.d $6,$f16
+s.d $f18,16($sp)
+l.d $f18,OneUlp
+l.d $f16,SqEr
+mul.d $f18,$f18,$f16
+s.d $f18,24($sp)
+jal printf
+la $4,L.849
+jal printf
+L.842:
+move $2,$0
+L.841:
+l.d $f30,32($sp)
+lw $25,40($sp)
+lw $31,44($sp)
+addu $sp,$sp,56
+j $31
+.end SqXMinX
+.globl NewD
+.text
+.align 2
+.ent NewD
+NewD:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+l.d $f18,Z1
+l.d $f16,Q
+mul.d $f18,$f18,$f16
+s.d $f18,X
+l.d $f18,Half
+l.d $f16,X
+l.d $f10,Radix
+div.d $f16,$f16,$f10
+sub.d $f12,$f18,$f16
+jal floor
+l.d $f16,Radix
+mul.d $f18,$f0,$f16
+l.d $f10,X
+add.d $f18,$f18,$f10
+s.d $f18,X
+l.d $f18,X
+l.d $f10,Z
+l.d $f8,D
+l.d $f6,Q
+mul.d $f4,$f18,$f10
+sub.d $f6,$f6,$f4
+div.d $f6,$f6,$f16
+mul.d $f4,$f18,$f18
+div.d $f16,$f8,$f16
+mul.d $f16,$f4,$f16
+add.d $f16,$f6,$f16
+s.d $f16,Q
+l.d $f16,Two
+mul.d $f18,$f16,$f18
+mul.d $f18,$f18,$f8
+sub.d $f18,$f10,$f18
+s.d $f18,Z
+l.d $f18,Z
+l.d $f16,Zero
+c.le.d $f18,$f16; bc1f L.851
+l.d $f18,Z
+neg.d $f18,$f18
+s.d $f18,Z
+l.d $f18,Z1
+neg.d $f18,$f18
+s.d $f18,Z1
+L.851:
+l.d $f18,Radix
+l.d $f16,D
+mul.d $f18,$f18,$f16
+s.d $f18,D
+move $2,$0
+L.850:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end NewD
+.globl SR3750
+.text
+.align 2
+.ent SR3750
+SR3750:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+l.d $f18,X
+l.d $f16,Radix
+l.d $f10,Z2
+sub.d $f8,$f18,$f16
+sub.d $f16,$f10,$f16
+c.lt.d $f8,$f16; bc1t L.854
+sub.d $f18,$f18,$f10
+l.d $f16,W
+sub.d $f16,$f16,$f10
+c.le.d $f18,$f16; bc1f L.854
+lw $24,I
+la $24,1($24)
+sw $24,I
+l.d $f18,X
+l.d $f16,D
+mul.d $f12,$f18,$f16
+jal sqrt
+s.d $f0,X2
+l.d $f18,Z2
+l.d $f16,Y
+l.d $f10,X2
+sub.d $f10,$f10,$f18
+sub.d $f18,$f16,$f18
+sub.d $f18,$f10,$f18
+s.d $f18,Y2
+l.d $f18,Half
+l.d $f10,X8
+sub.d $f16,$f16,$f18
+div.d $f16,$f10,$f16
+s.d $f16,X2
+l.d $f16,X2
+mul.d $f10,$f18,$f16
+mul.d $f10,$f10,$f16
+sub.d $f16,$f16,$f10
+s.d $f16,X2
+l.d $f16,Y2
+add.d $f16,$f16,$f18
+l.d $f10,X2
+sub.d $f18,$f18,$f10
+add.d $f18,$f16,$f18
+s.d $f18,SqEr
+l.d $f18,SqEr
+l.d $f16,MinSqEr
+c.lt.d $f18,$f16; bc1f L.856
+l.d $f18,SqEr
+s.d $f18,MinSqEr
+L.856:
+l.d $f18,Y2
+l.d $f16,X2
+sub.d $f18,$f18,$f16
+s.d $f18,SqEr
+l.d $f18,SqEr
+l.d $f16,MaxSqEr
+c.le.d $f18,$f16; bc1t L.858
+l.d $f18,SqEr
+s.d $f18,MaxSqEr
+L.858:
+L.854:
+move $2,$0
+L.853:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end SR3750
+.globl IsYeqX
+.text
+.align 2
+.ent IsYeqX
+IsYeqX:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0x82000000,-4
+.cprestore 24
+sw $31,28($sp)
+l.d $f18,Y
+l.d $f16,X
+c.eq.d $f18,$f16; bc1t L.861
+lw $24,N
+bgt $24,$0,L.863
+l.d $f18,Zero
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1f L.865
+l.d $f16,Q
+c.le.d $f16,$f18; bc1f L.865
+la $4,L.867
+jal printf
+b L.866
+L.865:
+la $4,2
+la $5,L.868
+jal BadCond
+L.866:
+la $4,L.869
+l.d $f18,Z
+mfc1.d $6,$f18
+l.d $f18,Q
+s.d $f18,16($sp)
+jal printf
+la $4,L.870
+l.d $f18,Y
+mfc1.d $6,$f18
+jal printf
+la $4,L.871
+l.d $f18,X
+mfc1.d $6,$f18
+jal printf
+la $4,L.872
+l.d $f18,Y
+l.d $f16,X
+sub.d $f18,$f18,$f16
+mfc1.d $6,$f18
+jal printf
+L.863:
+lw $24,N
+la $24,1($24)
+sw $24,N
+L.861:
+move $2,$0
+L.860:
+lw $25,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end IsYeqX
+.globl SR3980
+.text
+.align 2
+.ent SR3980
+SR3980:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+L.874:
+lw $24,I
+mtc1 $24,$f18; cvt.d.w $f18,$f18
+s.d $f18,Q
+l.d $f12,Z
+l.d $f14,Q
+jal pow
+s.d $f0,Y
+jal IsYeqX
+lw $24,I
+la $24,1($24)
+sw $24,I
+lw $15,M
+ble $24,$15,L.877
+b L.876
+L.877:
+l.d $f18,Z
+l.d $f16,X
+mul.d $f18,$f18,$f16
+s.d $f18,X
+L.875:
+l.d $f18,X
+l.d $f16,W
+c.lt.d $f18,$f16; bc1t L.874
+L.876:
+move $2,$0
+L.873:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end SR3980
+.globl PrintIfNPositive
+.text
+.align 2
+.ent PrintIfNPositive
+PrintIfNPositive:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+lw $24,N
+ble $24,$0,L.880
+la $4,L.882
+lw $5,N
+jal printf
+L.880:
+move $2,$0
+L.879:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end PrintIfNPositive
+.globl TstPtUf
+.text
+.align 2
+.ent TstPtUf
+TstPtUf:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $0,N
+l.d $f18,Z
+l.d $f16,Zero
+c.eq.d $f18,$f16; bc1t L.884
+la $4,L.886
+jal printf
+la $4,L.887
+jal printf
+la $24,sigfpe
+sw $24,sigsave
+la $4,ovfl_buf
+jal setjmp
+beq $2,$0,L.888
+b L.890
+L.888:
+l.d $f18,Z
+add.d $f16,$f18,$f18
+div.d $f18,$f16,$f18
+s.d $f18,Q9
+la $4,L.891
+l.d $f18,Q9
+mfc1.d $6,$f18
+jal printf
+l.d $f18,Q9
+l.d $f16,Two
+sub.d $f12,$f18,$f16
+jal fabs
+l.d $f16,Radix
+l.d $f10,U2
+mul.d $f16,$f16,$f10
+c.lt.d $f0,$f16; bc1f L.892
+la $4,L.894
+jal printf
+la $4,L.895
+jal printf
+b L.893
+L.892:
+l.d $f18,Q9
+l.d $f16,One
+c.lt.d $f18,$f16; bc1t L.898
+l.d $f16,Two
+c.le.d $f18,$f16; bc1t L.896
+L.898:
+L.890:
+la $24,1
+sw $24,N
+lw $24,ErrCnt+4
+la $24,1($24)
+sw $24,ErrCnt+4
+la $4,L.901
+jal printf
+b L.897
+L.896:
+la $24,1
+sw $24,N
+lw $24,ErrCnt+8
+la $24,1($24)
+sw $24,ErrCnt+8
+la $4,L.904
+jal printf
+L.897:
+L.893:
+sw $0,sigsave
+l.d $f18,Z
+l.d $f16,One
+mul.d $f10,$f18,$f16
+s.d $f10,V9
+l.d $f10,V9
+s.d $f10,Random1
+mul.d $f10,$f16,$f18
+s.d $f10,V9
+l.d $f10,V9
+s.d $f10,Random2
+div.d $f18,$f18,$f16
+s.d $f18,V9
+l.d $f18,Z
+l.d $f16,Random1
+c.eq.d $f18,$f16; bc1f L.905
+l.d $f16,Random2
+c.eq.d $f18,$f16; bc1f L.905
+l.d $f16,V9
+c.eq.d $f18,$f16; bc1f L.905
+lw $24,N
+ble $24,$0,L.906
+jal Pause
+b L.906
+L.905:
+la $24,1
+sw $24,N
+la $4,2
+la $5,L.909
+jal BadCond
+la $4,L.910
+l.d $f18,Z
+mfc1.d $6,$f18
+jal printf
+l.d $f18,Z
+l.d $f16,Random1
+c.eq.d $f18,$f16; bc1t L.911
+la $4,L.913
+l.d $f18,Random1
+mfc1.d $6,$f18
+jal printf
+L.911:
+l.d $f18,Random2
+l.d $f16,Z
+c.eq.d $f16,$f18; bc1t L.914
+l.d $f16,Random1
+c.eq.d $f18,$f16; bc1t L.914
+la $4,L.916
+l.d $f18,Random2
+mfc1.d $6,$f18
+jal printf
+L.914:
+l.d $f18,Z
+l.d $f16,V9
+c.eq.d $f18,$f16; bc1t L.917
+la $4,L.919
+l.d $f18,V9
+mfc1.d $6,$f18
+jal printf
+L.917:
+l.d $f18,Random2
+l.d $f16,Random1
+c.eq.d $f18,$f16; bc1t L.920
+lw $24,ErrCnt+8
+la $24,1($24)
+sw $24,ErrCnt+8
+la $4,2
+la $5,L.924
+jal BadCond
+la $4,L.925
+l.d $f18,Random2
+mfc1.d $6,$f18
+jal printf
+la $4,L.926
+l.d $f18,Random1
+mfc1.d $6,$f18
+jal printf
+L.920:
+jal Pause
+L.906:
+L.884:
+move $2,$0
+L.883:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end TstPtUf
+.globl notify
+.text
+.align 2
+.ent notify
+notify:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+la $4,L.928
+lw $5,0+24($sp)
+jal printf
+la $4,L.929
+jal printf
+move $2,$0
+L.927:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end notify
+.globl msglist
+.text
+.align 2
+.ent msglist
+msglist:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+move $30,$4
+b L.932
+L.931:
+la $4,L.934
+move $24,$30
+la $30,4($24)
+lw $5,($24)
+jal printf
+L.932:
+lw $24,($30)
+bne $24,$0,L.931
+move $2,$0
+L.930:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end msglist
+.data
+.align 2
+L.936:
+.word L.937
+.word L.938
+.word L.939
+.word L.940
+.word L.941
+.word L.942
+.word L.943
+.word L.944
+.word L.945
+.word 0x0
+.globl Instructions
+.text
+.text
+.align 2
+.ent Instructions
+Instructions:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+la $4,L.936
+jal msglist
+move $2,$0
+L.935:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end Instructions
+.data
+.align 2
+L.947:
+.word L.948
+.word L.949
+.word L.950
+.word L.951
+.word L.952
+.word L.953
+.word L.954
+.word L.955
+.word L.956
+.word L.957
+.word L.958
+.word L.959
+.word L.960
+.word L.961
+.word 0x0
+.globl Heading
+.text
+.text
+.align 2
+.ent Heading
+Heading:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+la $4,L.947
+jal msglist
+move $2,$0
+L.946:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end Heading
+.data
+.align 2
+L.963:
+.word L.964
+.word L.965
+.word L.966
+.word L.967
+.word L.968
+.word L.969
+.word L.970
+.word L.971
+.word L.972
+.word L.973
+.word L.974
+.word L.975
+.word L.976
+.word L.977
+.word L.978
+.word L.979
+.word L.980
+.word L.981
+.word L.982
+.word 0x0
+.globl Characteristics
+.text
+.text
+.align 2
+.ent Characteristics
+Characteristics:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+la $4,L.963
+jal msglist
+move $2,$0
+L.962:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end Characteristics
+.data
+.align 2
+L.984:
+.word L.985
+.word L.986
+.word L.987
+.word L.988
+.word L.989
+.word L.990
+.word L.991
+.word L.992
+.word L.993
+.word L.994
+.word L.995
+.word L.996
+.word L.997
+.word L.998
+.word L.999
+.word L.1000
+.word L.1001
+.word 0x0
+.globl History
+.text
+.text
+.align 2
+.ent History
+History:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+la $4,L.984
+jal msglist
+move $2,$0
+L.983:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end History
+.globl pow
+.text
+.align 2
+.ent pow
+pow:
+.frame $sp,72,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-72
+.fmask 0xfc000000,-40
+.mask 0xc2800000,-20
+s.d $f26,16($sp)
+s.d $f28,24($sp)
+s.d $f30,32($sp)
+sw $23,40($sp)
+.cprestore 44
+sw $30,48($sp)
+sw $31,52($sp)
+mov.d $f30,$f12
+mov.d $f28,$f14
+move $23,$0
+sw $0,-8+72($sp)
+l.d $f18,L.7
+c.eq.d $f28,$f18; bc1f L.1003
+l.d $f0,L.8
+b L.1002
+L.1003:
+l.d $f18,L.1008
+c.lt.d $f28,$f18; bc1t L.1007
+l.d $f18,L.1009
+c.le.d $f28,$f18; bc1t L.1005
+L.1007:
+l.d $f18,L.825
+c.eq.d $f30,$f18; bc1t L.1005
+mov.d $f12,$f30
+jal log
+mov.d $f18,$f0
+mul.d $f12,$f28,$f18
+jal exp
+mov.d $f18,$f0
+b L.1002
+L.1005:
+l.d $f18,L.7
+c.lt.d $f28,$f18; bc1f L.1010
+neg.d $f28,$f28
+la $24,1
+sw $24,-8+72($sp)
+L.1010:
+mov.d $f12,$f28
+la $6,-16+72($sp)
+jal modf
+mov.d $f28,$f0
+l.d $f18,L.7
+c.eq.d $f28,$f18; bc1t L.1012
+mov.d $f12,$f30
+jal log
+mov.d $f18,$f0
+mul.d $f12,$f28,$f18
+jal exp
+mov.d $f26,$f0
+b L.1013
+L.1012:
+l.d $f26,L.8
+L.1013:
+mov.d $f12,$f30
+la $6,-4+72($sp)
+jal frexp
+mov.d $f30,$f0
+l.d $f18,-16+72($sp)
+trunc.w.d $f2,$f18,$24; mfc1 $24,$f2
+move $30,$24
+beq $24,$0,L.1014
+L.1016:
+and $24,$30,1
+beq $24,$0,L.1020
+mul.d $f26,$f26,$f30
+lw $24,-4+72($sp)
+addu $23,$23,$24
+L.1020:
+sra $24,$30,1
+move $30,$24
+bne $24,$0,L.1022
+b L.1018
+L.1022:
+mul.d $f30,$f30,$f30
+lw $24,-4+72($sp)
+sll $24,$24,1
+sw $24,-4+72($sp)
+l.d $f18,L.1026
+c.lt.d $f30,$f18; bc1f L.1016
+l.d $f18,L.1027
+mul.d $f30,$f18,$f30
+lw $24,-4+72($sp)
+subu $24,$24,1
+sw $24,-4+72($sp)
+b L.1016
+L.1018:
+L.1014:
+lw $24,-8+72($sp)
+beq $24,$0,L.1028
+l.d $f18,L.8
+div.d $f26,$f18,$f26
+negu $23,$23
+L.1028:
+mov.d $f12,$f26
+move $6,$23
+jal ldexp
+mov.d $f18,$f0
+L.1002:
+l.d $f26,16($sp)
+l.d $f28,24($sp)
+l.d $f30,32($sp)
+lw $23,40($sp)
+lw $25,44($sp)
+lw $30,48($sp)
+lw $31,52($sp)
+addu $sp,$sp,72
+j $31
+.end pow
+.globl UfNGrad
+.comm UfNGrad,4
+.globl SqRWrng
+.comm SqRWrng,4
+.globl IEEE
+.comm IEEE,4
+.globl Anomaly
+.comm Anomaly,4
+.globl Monot
+.comm Monot,4
+.globl NotMonot
+.comm NotMonot,4
+.globl Done
+.comm Done,4
+.globl Break
+.comm Break,4
+.globl RSqrt
+.comm RSqrt,4
+.globl RAddSub
+.comm RAddSub,4
+.globl RDiv
+.comm RDiv,4
+.globl RMult
+.comm RMult,4
+.globl GAddSub
+.comm GAddSub,4
+.globl GDiv
+.comm GDiv,4
+.globl GMult
+.comm GMult,4
+.globl N1
+.comm N1,4
+.globl N
+.comm N,4
+.globl M
+.comm M,4
+.globl PageNo
+.comm PageNo,4
+.globl Milestone
+.comm Milestone,4
+.globl fpecount
+.comm fpecount,4
+.globl ErrCnt
+.comm ErrCnt,16
+.globl Z9
+.comm Z9,8
+.globl Z2
+.comm Z2,8
+.globl Z1
+.comm Z1,8
+.globl PseudoZero
+.comm PseudoZero,8
+.globl Z
+.comm Z,8
+.globl Random2
+.comm Random2,8
+.globl Y2
+.comm Y2,8
+.globl Y1
+.comm Y1,8
+.globl Y
+.comm Y,8
+.globl Random1
+.comm Random1,8
+.globl X8
+.comm X8,8
+.globl X2
+.comm X2,8
+.globl X1
+.comm X1,8
+.globl X
+.comm X,8
+.globl W
+.comm W,8
+.globl V9
+.comm V9,8
+.globl V0
+.comm V0,8
+.globl V
+.comm V,8
+.globl U2
+.comm U2,8
+.globl U1
+.comm U1,8
+.globl UfThold
+.comm UfThold,8
+.globl OneUlp
+.comm OneUlp,8
+.globl S
+.comm S,8
+.globl Underflow
+.comm Underflow,8
+.globl T
+.comm T,8
+.globl Random9
+.comm Random9,8
+.globl R
+.comm R,8
+.globl Q9
+.comm Q9,8
+.globl Q
+.comm Q,8
+.globl Precision
+.comm Precision,8
+.globl MyZero
+.comm MyZero,8
+.globl J
+.comm J,8
+.globl StickyBit
+.comm StickyBit,8
+.globl I
+.comm I,4
+.globl HInvrse
+.comm HInvrse,8
+.globl H
+.comm H,8
+.globl F9
+.comm F9,8
+.globl F6
+.comm F6,8
+.globl Third
+.comm Third,8
+.globl E9
+.comm E9,8
+.globl MaxSqEr
+.comm MaxSqEr,8
+.globl SqEr
+.comm SqEr,8
+.globl MinSqEr
+.comm MinSqEr,8
+.globl E3
+.comm E3,8
+.globl Exp2
+.comm Exp2,8
+.globl E1
+.comm E1,8
+.globl E0
+.comm E0,8
+.globl FourD
+.comm FourD,8
+.globl D
+.comm D,8
+.globl CInvrse
+.comm CInvrse,8
+.globl C
+.comm C,8
+.globl A1
+.comm A1,8
+.globl AInvrse
+.comm AInvrse,8
+.globl ch
+.comm ch,8
+.globl Indx
+.comm Indx,4
+.globl BMinusU2
+.comm BMinusU2,8
+.globl RadixD2
+.comm RadixD2,8
+.globl BInvrse
+.comm BInvrse,8
+.globl Radix
+.comm Radix,8
+.globl sigsave
+.comm sigsave,4
+.globl ovfl_buf
+.comm ovfl_buf,112
+.extern _iob 0
+.rdata
+.align 3
+L.1027:
+.word 0x40000000
+.word 0x0
+.align 3
+L.1026:
+.word 0x3fe00000
+.word 0x0
+.align 3
+L.1009:
+.word 0x40913000
+.word 0x0
+.align 3
+L.1008:
+.word 0xc0913000
+.word 0x0
+.align 0
+L.1001:
+.byte 115
+.byte 101
+.byte 101
+.byte 32
+.byte 115
+.byte 111
+.byte 117
+.byte 114
+.byte 99
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 109
+.byte 111
+.byte 114
+.byte 101
+.byte 32
+.byte 104
+.byte 105
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 46
+.byte 0
+.align 0
+L.1000:
+.byte 66
+.byte 65
+.byte 83
+.byte 73
+.byte 67
+.byte 32
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 40
+.byte 67
+.byte 41
+.byte 32
+.byte 49
+.byte 57
+.byte 56
+.byte 51
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 80
+.byte 114
+.byte 111
+.byte 102
+.byte 46
+.byte 32
+.byte 87
+.byte 46
+.byte 32
+.byte 77
+.byte 46
+.byte 32
+.byte 75
+.byte 97
+.byte 104
+.byte 97
+.byte 110
+.byte 59
+.byte 0
+.align 0
+L.999:
+.byte 97
+.byte 115
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 99
+.byte 101
+.byte 114
+.byte 116
+.byte 97
+.byte 105
+.byte 110
+.byte 32
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 121
+.byte 32
+.byte 87
+.byte 65
+.byte 78
+.byte 71
+.byte 32
+.byte 109
+.byte 97
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.998:
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 45
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 44
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 108
+.byte 115
+.byte 111
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 32
+.byte 108
+.byte 111
+.byte 103
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 105
+.byte 99
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.997:
+.byte 10
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 98
+.byte 97
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 117
+.byte 112
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 110
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 114
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 114
+.byte 101
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 101
+.byte 110
+.byte 116
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 0
+.align 0
+L.996:
+.byte 111
+.byte 102
+.byte 32
+.byte 112
+.byte 97
+.byte 116
+.byte 104
+.byte 111
+.byte 108
+.byte 111
+.byte 103
+.byte 105
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 115
+.byte 97
+.byte 121
+.byte 32
+.byte 104
+.byte 111
+.byte 119
+.byte 32
+.byte 119
+.byte 101
+.byte 108
+.byte 108
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 109
+.byte 112
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.995:
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 116
+.byte 114
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 112
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 119
+.byte 105
+.byte 100
+.byte 101
+.byte 114
+.byte 32
+.byte 118
+.byte 97
+.byte 114
+.byte 105
+.byte 101
+.byte 116
+.byte 121
+.byte 0
+.align 0
+L.994:
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 44
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 32
+.byte 40
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 115
+.byte 41
+.byte 0
+.align 0
+L.993:
+.byte 87
+.byte 46
+.byte 32
+.byte 74
+.byte 46
+.byte 32
+.byte 67
+.byte 111
+.byte 100
+.byte 121
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 87
+.byte 46
+.byte 32
+.byte 87
+.byte 97
+.byte 105
+.byte 116
+.byte 101
+.byte 46
+.byte 32
+.byte 65
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 98
+.byte 111
+.byte 116
+.byte 104
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 115
+.byte 32
+.byte 116
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.992:
+.byte 98
+.byte 111
+.byte 111
+.byte 107
+.byte 32
+.byte 32
+.byte 96
+.byte 83
+.byte 111
+.byte 102
+.byte 116
+.byte 119
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 77
+.byte 97
+.byte 110
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 69
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 70
+.byte 117
+.byte 110
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 39
+.byte 32
+.byte 40
+.byte 49
+.byte 57
+.byte 56
+.byte 48
+.byte 41
+.byte 32
+.byte 98
+.byte 121
+.byte 0
+.align 0
+L.991:
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 96
+.byte 77
+.byte 65
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 39
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 0
+.align 0
+L.990:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 99
+.byte 97
+.byte 112
+.byte 97
+.byte 98
+.byte 105
+.byte 108
+.byte 105
+.byte 116
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 103
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 121
+.byte 111
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 105
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.989:
+.byte 70
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 115
+.byte 101
+.byte 113
+.byte 117
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.988:
+.byte 32
+.byte 32
+.byte 32
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 50
+.byte 43
+.byte 50
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 53
+.byte 32
+.byte 46
+.byte 0
+.align 0
+L.987:
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 0
+.align 0
+L.986:
+.byte 32
+.byte 32
+.byte 32
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 44
+.byte 0
+.align 0
+L.985:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 97
+.byte 116
+.byte 116
+.byte 101
+.byte 109
+.byte 112
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 105
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 97
+.byte 109
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.982:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 68
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 45
+.byte 66
+.byte 105
+.byte 110
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 89
+.byte 69
+.byte 84
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 97
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 46
+.byte 0
+.align 0
+L.981:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 69
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 101
+.byte 118
+.byte 101
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 89
+.byte 69
+.byte 84
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.980:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 32
+.byte 32
+.byte 89
+.byte 94
+.byte 88
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.979:
+.byte 9
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 116
+.byte 97
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 112
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 45
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 115
+.byte 46
+.byte 0
+.align 0
+L.978:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 99
+.byte 121
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.977:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 86
+.byte 48
+.byte 32
+.byte 32
+.byte 116
+.byte 101
+.byte 108
+.byte 108
+.byte 115
+.byte 44
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 32
+.byte 73
+.byte 110
+.byte 102
+.byte 105
+.byte 110
+.byte 105
+.byte 116
+.byte 121
+.byte 32
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.976:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 86
+.byte 32
+.byte 61
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 44
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 46
+.byte 0
+.align 0
+L.975:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 69
+.byte 48
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 101
+.byte 108
+.byte 108
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 98
+.byte 114
+.byte 117
+.byte 112
+.byte 116
+.byte 44
+.byte 32
+.byte 103
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 117
+.byte 122
+.byte 122
+.byte 121
+.byte 46
+.byte 0
+.align 0
+L.974:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 84
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.973:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 87
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 32
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 66
+.byte 105
+.byte 116
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 46
+.byte 0
+.align 0
+L.972:
+.byte 9
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 46
+.byte 44
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 46
+.byte 44
+.byte 32
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 46
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 83
+.byte 113
+.byte 114
+.byte 116
+.byte 46
+.byte 0
+.align 0
+L.971:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 87
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 116
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 0
+L.970:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 65
+.byte 100
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 46
+.byte 44
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 46
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 46
+.byte 0
+.align 0
+L.969:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 47
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 79
+.byte 110
+.byte 101
+.byte 32
+.byte 85
+.byte 108
+.byte 112
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 108
+.byte 105
+.byte 116
+.byte 116
+.byte 108
+.byte 101
+.byte 32
+.byte 108
+.byte 101
+.byte 115
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 32
+.byte 46
+.byte 0
+.align 0
+L.968:
+.byte 9
+.byte 40
+.byte 79
+.byte 110
+.byte 101
+.byte 85
+.byte 108
+.byte 112
+.byte 110
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 76
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 80
+.byte 108
+.byte 97
+.byte 99
+.byte 101
+.byte 41
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 48
+.byte 48
+.byte 120
+.byte 120
+.byte 120
+.byte 32
+.byte 46
+.byte 0
+.align 0
+L.967:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 47
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 79
+.byte 110
+.byte 101
+.byte 32
+.byte 85
+.byte 108
+.byte 112
+.byte 0
+.align 0
+L.966:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 114
+.byte 105
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 0
+L.965:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 44
+.byte 32
+.byte 52
+.byte 44
+.byte 32
+.byte 56
+.byte 44
+.byte 32
+.byte 49
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 54
+.byte 44
+.byte 32
+.byte 49
+.byte 48
+.byte 48
+.byte 44
+.byte 32
+.byte 50
+.byte 53
+.byte 54
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 0
+L.964:
+.byte 82
+.byte 117
+.byte 110
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 114
+.byte 101
+.byte 118
+.byte 101
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 115
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 115
+.byte 58
+.byte 0
+.align 0
+L.961:
+.byte 9
+.byte 79
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 101
+.byte 118
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 105
+.byte 108
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 112
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 58
+.byte 0
+.align 0
+L.960:
+.byte 9
+.byte 79
+.byte 112
+.byte 116
+.byte 105
+.byte 109
+.byte 105
+.byte 122
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 101
+.byte 118
+.byte 101
+.byte 108
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.959:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 105
+.byte 108
+.byte 101
+.byte 114
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.958:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.957:
+.byte 9
+.byte 86
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 9
+.byte 49
+.byte 48
+.byte 32
+.byte 70
+.byte 101
+.byte 98
+.byte 114
+.byte 117
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 49
+.byte 57
+.byte 56
+.byte 57
+.byte 59
+.byte 0
+.align 0
+L.956:
+.byte 9
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 9
+.byte 100
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 59
+.byte 0
+.align 0
+L.955:
+.byte 73
+.byte 110
+.byte 32
+.byte 100
+.byte 111
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 115
+.byte 111
+.byte 44
+.byte 32
+.byte 112
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 108
+.byte 117
+.byte 100
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 108
+.byte 108
+.byte 111
+.byte 119
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 110
+.byte 102
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 0
+.align 0
+L.954:
+.byte 9
+.byte 83
+.byte 97
+.byte 110
+.byte 32
+.byte 70
+.byte 114
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 44
+.byte 32
+.byte 67
+.byte 65
+.byte 32
+.byte 57
+.byte 52
+.byte 49
+.byte 52
+.byte 51
+.byte 45
+.byte 48
+.byte 55
+.byte 48
+.byte 52
+.byte 44
+.byte 32
+.byte 85
+.byte 83
+.byte 65
+.byte 10
+.byte 0
+.align 0
+L.953:
+.byte 9
+.byte 85
+.byte 110
+.byte 105
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 116
+.byte 121
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 67
+.byte 97
+.byte 108
+.byte 105
+.byte 102
+.byte 111
+.byte 114
+.byte 110
+.byte 105
+.byte 97
+.byte 0
+.align 0
+L.952:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 67
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 85
+.byte 45
+.byte 55
+.byte 54
+.byte 0
+.align 0
+L.951:
+.byte 9
+.byte 82
+.byte 105
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 75
+.byte 97
+.byte 114
+.byte 112
+.byte 105
+.byte 110
+.byte 115
+.byte 107
+.byte 105
+.byte 0
+.align 0
+L.950:
+.byte 80
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 115
+.byte 117
+.byte 103
+.byte 103
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 0
+.align 0
+L.949:
+.byte 99
+.byte 111
+.byte 112
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 117
+.byte 110
+.byte 97
+.byte 110
+.byte 116
+.byte 105
+.byte 99
+.byte 105
+.byte 112
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 110
+.byte 101
+.byte 119
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 110
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 112
+.byte 97
+.byte 116
+.byte 104
+.byte 111
+.byte 108
+.byte 111
+.byte 103
+.byte 105
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.948:
+.byte 85
+.byte 115
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 105
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 104
+.byte 101
+.byte 108
+.byte 112
+.byte 32
+.byte 100
+.byte 101
+.byte 98
+.byte 117
+.byte 103
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 117
+.byte 103
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 119
+.byte 105
+.byte 108
+.byte 108
+.byte 0
+.align 0
+L.945:
+.byte 65
+.byte 110
+.byte 115
+.byte 119
+.byte 101
+.byte 114
+.byte 32
+.byte 113
+.byte 117
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 89
+.byte 44
+.byte 32
+.byte 121
+.byte 44
+.byte 32
+.byte 78
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 110
+.byte 32
+.byte 40
+.byte 117
+.byte 110
+.byte 108
+.byte 101
+.byte 115
+.byte 115
+.byte 32
+.byte 111
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 119
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 100
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.944:
+.byte 97
+.byte 109
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 107
+.byte 101
+.byte 32
+.byte 102
+.byte 117
+.byte 114
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.943:
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 97
+.byte 110
+.byte 121
+.byte 119
+.byte 97
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 32
+.byte 104
+.byte 111
+.byte 119
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 109
+.byte 105
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 111
+.byte 110
+.byte 101
+.byte 115
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 115
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 110
+.byte 0
+.align 0
+L.942:
+.byte 119
+.byte 97
+.byte 114
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 46
+.byte 32
+.byte 32
+.byte 73
+.byte 102
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 117
+.byte 97
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 118
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 32
+.byte 110
+.byte 97
+.byte 117
+.byte 103
+.byte 104
+.byte 116
+.byte 44
+.byte 32
+.byte 100
+.byte 111
+.byte 110
+.byte 39
+.byte 116
+.byte 32
+.byte 100
+.byte 101
+.byte 115
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 114
+.byte 117
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 0
+L.941:
+.byte 116
+.byte 111
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 101
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 115
+.byte 117
+.byte 114
+.byte 114
+.byte 111
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 97
+.byte 102
+.byte 116
+.byte 101
+.byte 114
+.byte 44
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 104
+.byte 97
+.byte 112
+.byte 115
+.byte 44
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 112
+.byte 108
+.byte 97
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 0
+.align 0
+L.940:
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 44
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.939:
+.byte 116
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 117
+.byte 97
+.byte 100
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 116
+.byte 101
+.byte 114
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 101
+.byte 99
+.byte 117
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 97
+.byte 110
+.byte 0
+.align 0
+L.938:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 96
+.byte 69
+.byte 78
+.byte 68
+.byte 32
+.byte 79
+.byte 70
+.byte 32
+.byte 84
+.byte 69
+.byte 83
+.byte 84
+.byte 39
+.byte 44
+.byte 10
+.byte 0
+.align 0
+L.937:
+.byte 76
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 112
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 109
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 101
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 105
+.byte 46
+.byte 101
+.byte 46
+.byte 32
+.byte 98
+.byte 101
+.byte 102
+.byte 111
+.byte 114
+.byte 101
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 112
+.byte 108
+.byte 97
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.934:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.929:
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 76
+.byte 69
+.byte 65
+.byte 83
+.byte 69
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 73
+.byte 70
+.byte 89
+.byte 32
+.byte 75
+.byte 65
+.byte 82
+.byte 80
+.byte 73
+.byte 78
+.byte 75
+.byte 83
+.byte 73
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.928:
+.byte 37
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 116
+.byte 46
+.byte 46
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.926:
+.byte 9
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 90
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.925:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 49
+.byte 32
+.byte 42
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.924:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 100
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 117
+.byte 116
+.byte 101
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.919:
+.byte 90
+.byte 32
+.byte 47
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.916:
+.byte 49
+.byte 32
+.byte 42
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.913:
+.byte 90
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 0
+L.910:
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.909:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 0
+.align 0
+L.904:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.901:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 86
+.byte 69
+.byte 82
+.byte 89
+.byte 32
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.895:
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 106
+.byte 117
+.byte 115
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.894:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 44
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 0
+L.891:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 109
+.byte 97
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 101
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 40
+.byte 90
+.byte 32
+.byte 43
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.887:
+.byte 40
+.byte 90
+.byte 32
+.byte 43
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 115
+.byte 97
+.byte 102
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.886:
+.byte 83
+.byte 105
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 100
+.byte 101
+.byte 110
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 101
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 0
+.align 0
+L.882:
+.byte 83
+.byte 105
+.byte 109
+.byte 105
+.byte 108
+.byte 97
+.byte 114
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 116
+.byte 105
+.byte 109
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.872:
+.byte 9
+.byte 9
+.byte 116
+.byte 104
+.byte 101
+.byte 121
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.871:
+.byte 9
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 117
+.byte 110
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 59
+.byte 10
+.byte 0
+.align 0
+L.870:
+.byte 9
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 59
+.byte 10
+.byte 0
+.align 0
+L.869:
+.byte 9
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 10
+.byte 0
+.align 0
+L.868:
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.867:
+.byte 87
+.byte 65
+.byte 82
+.byte 78
+.byte 73
+.byte 78
+.byte 71
+.byte 58
+.byte 32
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.849:
+.byte 9
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 101
+.byte 97
+.byte 100
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 48
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.848:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 3
+L.840:
+.word 0x3ed4f8b5
+.word 0x88e368f1
+.align 0
+L.838:
+.byte 37
+.byte 115
+.byte 58
+.byte 32
+.byte 32
+.byte 37
+.byte 115
+.byte 0
+.align 0
+L.837:
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 0
+.align 0
+L.836:
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 0
+.align 0
+L.835:
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 0
+.align 0
+L.834:
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 0
+.align 0
+L.828:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 97
+.byte 103
+.byte 101
+.byte 58
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 10
+.byte 0
+.align 0
+L.827:
+.byte 10
+.byte 68
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 109
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 102
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 109
+.byte 105
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 111
+.byte 110
+.byte 101
+.byte 32
+.byte 78
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 0
+.align 3
+L.825:
+.word 0xbff00000
+.word 0x0
+.align 0
+L.820:
+.byte 69
+.byte 78
+.byte 68
+.byte 32
+.byte 79
+.byte 70
+.byte 32
+.byte 84
+.byte 69
+.byte 83
+.byte 84
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.819:
+.byte 10
+.byte 65
+.byte 32
+.byte 116
+.byte 111
+.byte 116
+.byte 97
+.byte 108
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 119
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.816:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 69
+.byte 120
+.byte 99
+.byte 101
+.byte 108
+.byte 108
+.byte 101
+.byte 110
+.byte 116
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.815:
+.byte 32
+.byte 100
+.byte 117
+.byte 114
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 71
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.814:
+.byte 44
+.byte 10
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 115
+.byte 105
+.byte 98
+.byte 108
+.byte 121
+.byte 32
+.byte 68
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 32
+.byte 82
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.813:
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.810:
+.byte 56
+.byte 53
+.byte 52
+.byte 0
+.align 0
+L.809:
+.byte 55
+.byte 53
+.byte 52
+.byte 0
+.align 0
+L.806:
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 112
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 73
+.byte 69
+.byte 69
+.byte 69
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 110
+.byte 100
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 80
+.byte 0
+.align 0
+L.805:
+.byte 82
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 111
+.byte 114
+.byte 109
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 0
+.align 0
+L.802:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 83
+.byte 97
+.byte 116
+.byte 105
+.byte 115
+.byte 102
+.byte 97
+.byte 99
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.796:
+.byte 78
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 100
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 115
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 98
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.795:
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 39
+.byte 115
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 115
+.byte 101
+.byte 113
+.byte 117
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.794:
+.byte 80
+.byte 111
+.byte 116
+.byte 101
+.byte 110
+.byte 116
+.byte 105
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 102
+.byte 97
+.byte 116
+.byte 97
+.byte 108
+.byte 32
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 112
+.byte 111
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 0
+L.791:
+.byte 117
+.byte 110
+.byte 97
+.byte 99
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 32
+.byte 83
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 68
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.790:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 0
+.align 0
+L.786:
+.byte 100
+.byte 101
+.byte 115
+.byte 112
+.byte 105
+.byte 116
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 110
+.byte 105
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 68
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.785:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 65
+.byte 99
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.780:
+.byte 83
+.byte 97
+.byte 116
+.byte 105
+.byte 115
+.byte 102
+.byte 97
+.byte 99
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.779:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 0
+.align 0
+L.768:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 32
+.byte 37
+.byte 45
+.byte 50
+.byte 57
+.byte 115
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.761:
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 0
+L.760:
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 0
+L.759:
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 0
+L.758:
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 115
+.byte 32
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 0
+L.754:
+.byte 10
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 48
+.byte 32
+.byte 47
+.byte 32
+.byte 48
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 115
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 0
+L.753:
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.750:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 49
+.byte 32
+.byte 47
+.byte 32
+.byte 48
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 115
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 0
+L.749:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 109
+.byte 101
+.byte 115
+.byte 115
+.byte 97
+.byte 103
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 47
+.byte 111
+.byte 114
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 32
+.byte 100
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 63
+.byte 10
+.byte 0
+.align 0
+L.748:
+.byte 32
+.byte 32
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 101
+.byte 97
+.byte 100
+.byte 44
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.747:
+.byte 32
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.742:
+.byte 32
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 32
+.byte 116
+.byte 114
+.byte 97
+.byte 112
+.byte 115
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.727:
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.726:
+.byte 32
+.byte 117
+.byte 110
+.byte 98
+.byte 97
+.byte 108
+.byte 97
+.byte 110
+.byte 99
+.byte 101
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 59
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 42
+.byte 32
+.byte 86
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.725:
+.byte 66
+.byte 97
+.byte 100
+.byte 108
+.byte 121
+.byte 0
+.align 0
+L.718:
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 90
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 50
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.717:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.705:
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 90
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.704:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 119
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.687:
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 44
+.byte 32
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 10
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 0
+.align 0
+L.686:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 0
+.align 0
+L.680:
+.byte 97
+.byte 98
+.byte 111
+.byte 118
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.679:
+.byte 65
+.byte 110
+.byte 121
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 42
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 111
+.byte 110
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.678:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 86
+.byte 32
+.byte 47
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.677:
+.byte 78
+.byte 111
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 86
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.676:
+.byte 84
+.byte 104
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 115
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 98
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 115
+.byte 121
+.byte 115
+.byte 116
+.byte 101
+.byte 109
+.byte 32
+.byte 116
+.byte 114
+.byte 97
+.byte 112
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.675:
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 86
+.byte 48
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.672:
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 86
+.byte 32
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.663:
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 115
+.byte 104
+.byte 114
+.byte 105
+.byte 110
+.byte 107
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.660:
+.byte 45
+.byte 40
+.byte 45
+.byte 89
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 89
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.659:
+.byte 102
+.byte 105
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 0
+.align 0
+L.658:
+.byte 83
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.655:
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.654:
+.byte 67
+.byte 97
+.byte 110
+.byte 32
+.byte 96
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 45
+.byte 89
+.byte 39
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 63
+.byte 10
+.byte 0
+.align 0
+L.647:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 103
+.byte 101
+.byte 110
+.byte 101
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.646:
+.byte 83
+.byte 101
+.byte 97
+.byte 114
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.645:
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.637:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 119
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 94
+.byte 81
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 114
+.byte 32
+.byte 110
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 121
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 101
+.byte 109
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.636:
+.byte 65
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 97
+.byte 100
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 116
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.629:
+.byte 9
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 105
+.byte 110
+.byte 121
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.628:
+.byte 9
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 117
+.byte 99
+.byte 104
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 115
+.byte 112
+.byte 111
+.byte 105
+.byte 108
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 10
+.byte 0
+.align 0
+L.627:
+.byte 9
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.626:
+.byte 9
+.byte 40
+.byte 49
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 59
+.byte 10
+.byte 0
+.align 0
+L.625:
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 10
+.byte 0
+.align 0
+L.624:
+.byte 67
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 0
+.align 0
+L.617:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 88
+.byte 94
+.byte 40
+.byte 40
+.byte 88
+.byte 32
+.byte 43
+.byte 32
+.byte 49
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 41
+.byte 41
+.byte 32
+.byte 118
+.byte 115
+.byte 46
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 40
+.byte 50
+.byte 41
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 62
+.byte 32
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.613:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.610:
+.byte 32
+.byte 32
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.609:
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 116
+.byte 119
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 48
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 10
+.byte 0
+.align 0
+L.605:
+.byte 97
+.byte 99
+.byte 116
+.byte 117
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 58
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.604:
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 97
+.byte 102
+.byte 102
+.byte 108
+.byte 105
+.byte 99
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 10
+.byte 9
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 59
+.byte 10
+.byte 0
+.align 0
+L.603:
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 10
+.byte 111
+.byte 110
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 0
+.align 0
+L.602:
+.byte 83
+.byte 105
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.601:
+.byte 82
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 110
+.byte 97
+.byte 114
+.byte 114
+.byte 111
+.byte 119
+.byte 59
+.byte 32
+.byte 85
+.byte 49
+.byte 94
+.byte 37
+.byte 100
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.596:
+.byte 109
+.byte 101
+.byte 114
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.595:
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 115
+.byte 117
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 32
+.byte 108
+.byte 97
+.byte 114
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 82
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 0
+.align 0
+L.594:
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 0
+.align 0
+L.593:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.592:
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 32
+.byte 43
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.591:
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.588:
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 97
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 97
+.byte 99
+.byte 116
+.byte 117
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 10
+.byte 0
+.align 0
+L.587:
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 40
+.byte 102
+.byte 40
+.byte 88
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 102
+.byte 40
+.byte 90
+.byte 41
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.586:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 0
+L.585:
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 110
+.byte 111
+.byte 99
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 116
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.584:
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 10
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 115
+.byte 32
+.byte 0
+.align 0
+L.583:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 44
+.byte 32
+.byte 0
+.align 0
+L.582:
+.byte 121
+.byte 101
+.byte 116
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 90
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.581:
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.576:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 47
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.566:
+.byte 40
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 41
+.byte 32
+.byte 60
+.byte 32
+.byte 69
+.byte 48
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.565:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 103
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 59
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 32
+.byte 65
+.byte 98
+.byte 115
+.byte 111
+.byte 108
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 69
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 61
+.byte 10
+.byte 0
+.align 0
+L.560:
+.byte 124
+.byte 81
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 124
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.559:
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 81
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.558:
+.byte 81
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 89
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.byte 32
+.byte 100
+.byte 101
+.byte 110
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 124
+.byte 81
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 124
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 48
+.byte 59
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 115
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.557:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 101
+.byte 115
+.byte 32
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 10
+.byte 0
+.align 0
+L.555:
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 32
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.554:
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 100
+.byte 111
+.byte 119
+.byte 110
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.553:
+.byte 97
+.byte 112
+.byte 112
+.byte 114
+.byte 111
+.byte 97
+.byte 99
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.552:
+.byte 69
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 100
+.byte 101
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.540:
+.byte 83
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 115
+.byte 116
+.byte 114
+.byte 105
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 69
+.byte 48
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.539:
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.538:
+.byte 68
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 32
+.byte 104
+.byte 105
+.byte 103
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.535:
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 99
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.534:
+.byte 80
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 116
+.byte 115
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 32
+.byte 104
+.byte 105
+.byte 103
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 0
+L.527:
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.526:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 100
+.byte 108
+.byte 121
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.525:
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 44
+.byte 32
+.byte 105
+.byte 115
+.byte 110
+.byte 39
+.byte 116
+.byte 59
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.524:
+.byte 66
+.byte 117
+.byte 116
+.byte 32
+.byte 45
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.521:
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 58
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.520:
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 100
+.byte 108
+.byte 121
+.byte 32
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.519:
+.byte 80
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 97
+.byte 110
+.byte 10
+.byte 0
+.align 0
+L.506:
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.482:
+.byte 83
+.byte 101
+.byte 101
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 69
+.byte 48
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.479:
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.476:
+.byte 9
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.475:
+.byte 69
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 97
+.byte 108
+.byte 105
+.byte 100
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.454:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 119
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 94
+.byte 105
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.451:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.449:
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 117
+.byte 108
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.448:
+.byte 79
+.byte 98
+.byte 115
+.byte 101
+.byte 114
+.byte 118
+.byte 101
+.byte 100
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 114
+.byte 117
+.byte 110
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 0
+L.447:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.444:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.439:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.434:
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.433:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.432:
+.byte 65
+.byte 110
+.byte 111
+.byte 109
+.byte 97
+.byte 108
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 60
+.byte 32
+.byte 0
+.align 0
+L.392:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.370:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 88
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 110
+.byte 45
+.byte 109
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 88
+.byte 32
+.byte 110
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.369:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 105
+.byte 116
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.352:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 109
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 105
+.byte 116
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.341:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 88
+.byte 41
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 88
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 88
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.336:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 48
+.byte 46
+.byte 48
+.byte 44
+.byte 32
+.byte 45
+.byte 48
+.byte 46
+.byte 48
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.334:
+.byte 10
+.byte 82
+.byte 117
+.byte 110
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 40
+.byte 120
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.333:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 78
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.332:
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 89
+.byte 32
+.byte 42
+.byte 32
+.byte 88
+.byte 32
+.byte 116
+.byte 114
+.byte 105
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 3
+L.323:
+.word 0x40080000
+.word 0x0
+.align 0
+L.322:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 100
+.byte 111
+.byte 109
+.byte 32
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.321:
+.byte 68
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 117
+.byte 116
+.byte 101
+.byte 63
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.318:
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 40
+.byte 115
+.byte 41
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 40
+.byte 115
+.byte 41
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 10
+.byte 40
+.byte 110
+.byte 111
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 98
+.byte 111
+.byte 118
+.byte 101
+.byte 41
+.byte 32
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 101
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 0
+L.316:
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.315:
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.298:
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.295:
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 41
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 89
+.byte 32
+.byte 45
+.byte 32
+.byte 88
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 110
+.byte 32
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.292:
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.291:
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 0
+.align 0
+L.288:
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.281:
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.276:
+.byte 73
+.byte 110
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 108
+.byte 101
+.byte 116
+.byte 101
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 114
+.byte 121
+.byte 45
+.byte 112
+.byte 114
+.byte 111
+.byte 112
+.byte 97
+.byte 103
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.272:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 42
+.byte 32
+.byte 40
+.byte 32
+.byte 49
+.byte 32
+.byte 47
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 0
+.align 0
+L.270:
+.byte 47
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.267:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.264:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.261:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.256:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.253:
+.byte 42
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.252:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.249:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.239:
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 40
+.byte 49
+.byte 47
+.byte 88
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 0
+.align 0
+L.220:
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 100
+.byte 100
+.byte 47
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.219:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 42
+.byte 44
+.byte 32
+.byte 47
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 45
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 121
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.216:
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 41
+.byte 32
+.byte 123
+.byte 46
+.byte 46
+.byte 46
+.byte 46
+.byte 46
+.byte 125
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 32
+.byte 123
+.byte 46
+.byte 46
+.byte 46
+.byte 47
+.byte 40
+.byte 88
+.byte 45
+.byte 49
+.byte 46
+.byte 48
+.byte 41
+.byte 46
+.byte 46
+.byte 46
+.byte 125
+.byte 10
+.byte 0
+.align 0
+L.215:
+.byte 32
+.byte 32
+.byte 115
+.byte 117
+.byte 99
+.byte 104
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 103
+.byte 97
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 97
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.214:
+.byte 32
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 32
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 32
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 101
+.byte 98
+.byte 121
+.byte 32
+.byte 118
+.byte 105
+.byte 116
+.byte 105
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 0
+L.213:
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 32
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 32
+.byte 60
+.byte 32
+.byte 49
+.byte 32
+.byte 32
+.byte 97
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 10
+.byte 0
+.align 0
+L.210:
+.byte 45
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 99
+.byte 101
+.byte 108
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 111
+.byte 98
+.byte 115
+.byte 99
+.byte 117
+.byte 114
+.byte 101
+.byte 100
+.byte 0
+.align 0
+L.205:
+.byte 42
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 47
+.byte 111
+.byte 114
+.byte 32
+.byte 47
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 0
+L.201:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 49
+.byte 47
+.byte 49
+.byte 46
+.byte 48
+.byte 48
+.byte 48
+.byte 46
+.byte 46
+.byte 49
+.byte 32
+.byte 62
+.byte 61
+.byte 32
+.byte 49
+.byte 0
+.align 0
+L.199:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 88
+.byte 47
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 88
+.byte 0
+.align 0
+L.194:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 101
+.byte 100
+.byte 32
+.byte 49
+.byte 32
+.byte 117
+.byte 108
+.byte 112
+.byte 10
+.byte 111
+.byte 114
+.byte 32
+.byte 32
+.byte 49
+.byte 47
+.byte 51
+.byte 32
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 32
+.byte 51
+.byte 47
+.byte 57
+.byte 32
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 32
+.byte 57
+.byte 47
+.byte 50
+.byte 55
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 97
+.byte 103
+.byte 114
+.byte 101
+.byte 101
+.byte 0
+.align 0
+L.190:
+.byte 42
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.188:
+.byte 42
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 49
+.byte 42
+.byte 88
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 88
+.byte 0
+.align 0
+L.185:
+.byte 10
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 42
+.byte 44
+.byte 32
+.byte 47
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 45
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.184:
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 108
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 46
+.byte 0
+.align 0
+L.179:
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 108
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 88
+.byte 61
+.byte 89
+.byte 44
+.byte 88
+.byte 43
+.byte 90
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 89
+.byte 43
+.byte 90
+.byte 33
+.byte 0
+.align 0
+L.175:
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.174:
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 98
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 32
+.byte 66
+.byte 45
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 44
+.byte 32
+.byte 105
+.byte 46
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.173:
+.byte 83
+.byte 111
+.byte 109
+.byte 101
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 10
+.byte 0
+.align 0
+L.167:
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 110
+.byte 10
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.166:
+.byte 90
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 90
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 0
+L.165:
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 101
+.byte 120
+.byte 97
+.byte 99
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 97
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 10
+.byte 0
+.align 0
+L.164:
+.byte 66
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 117
+.byte 110
+.byte 117
+.byte 115
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 102
+.byte 0
+.align 0
+L.160:
+.byte 9
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 90
+.byte 50
+.byte 32
+.byte 45
+.byte 32
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.159:
+.byte 9
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 90
+.byte 49
+.byte 32
+.byte 45
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.158:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 0
+L.157:
+.byte 0
+.align 0
+L.150:
+.byte 84
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 102
+.byte 101
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 117
+.byte 114
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.145:
+.byte 80
+.byte 111
+.byte 115
+.byte 115
+.byte 105
+.byte 98
+.byte 108
+.byte 121
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 32
+.byte 112
+.byte 97
+.byte 114
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 0
+L.144:
+.byte 98
+.byte 121
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 101
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.143:
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 115
+.byte 121
+.byte 109
+.byte 112
+.byte 116
+.byte 111
+.byte 109
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.142:
+.byte 114
+.byte 101
+.byte 115
+.byte 112
+.byte 101
+.byte 99
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 10
+.byte 0
+.align 0
+L.141:
+.byte 68
+.byte 105
+.byte 115
+.byte 97
+.byte 103
+.byte 114
+.byte 101
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 109
+.byte 111
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 32
+.byte 88
+.byte 49
+.byte 44
+.byte 32
+.byte 89
+.byte 49
+.byte 44
+.byte 32
+.byte 90
+.byte 49
+.byte 44
+.byte 10
+.byte 0
+.align 0
+L.119:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 111
+.byte 114
+.byte 115
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 53
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 105
+.byte 103
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 32
+.byte 0
+.align 0
+L.117:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.116:
+.byte 108
+.byte 111
+.byte 103
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 105
+.byte 99
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 111
+.byte 108
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 85
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.113:
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 44
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 105
+.byte 116
+.byte 115
+.byte 101
+.byte 108
+.byte 102
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 109
+.byte 105
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.112:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 10
+.byte 0
+.align 0
+L.99:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 102
+.byte 117
+.byte 122
+.byte 122
+.byte 121
+.byte 44
+.byte 88
+.byte 61
+.byte 49
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 88
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 0
+L.95:
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 60
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 70
+.byte 65
+.byte 76
+.byte 83
+.byte 69
+.byte 44
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 46
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 63
+.byte 0
+.align 3
+L.93:
+.word 0x40240000
+.word 0x0
+.align 0
+L.88:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 103
+.byte 111
+.byte 111
+.byte 100
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 50
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 48
+.byte 0
+.align 0
+L.84:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 98
+.byte 105
+.byte 103
+.byte 58
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 98
+.byte 108
+.byte 101
+.byte 109
+.byte 115
+.byte 0
+.align 0
+L.82:
+.byte 77
+.byte 89
+.byte 83
+.byte 84
+.byte 69
+.byte 82
+.byte 89
+.byte 58
+.byte 32
+.byte 114
+.byte 101
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.81:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 105
+.byte 114
+.byte 109
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 3
+L.78:
+.word 0x3f847ae1
+.word 0x47ae147b
+.align 0
+L.77:
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 98
+.byte 101
+.byte 116
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.76:
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 105
+.byte 114
+.byte 109
+.byte 115
+.byte 32
+.byte 99
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.61:
+.byte 82
+.byte 101
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 10
+.byte 32
+.byte 0
+.align 0
+L.60:
+.byte 67
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 10
+.byte 0
+.align 0
+L.54:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.45:
+.byte 83
+.byte 101
+.byte 97
+.byte 114
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.44:
+.byte 10
+.byte 0
+.align 0
+L.43:
+.byte 45
+.byte 49
+.byte 44
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 44
+.byte 32
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 44
+.byte 32
+.byte 51
+.byte 44
+.byte 32
+.byte 52
+.byte 44
+.byte 32
+.byte 53
+.byte 44
+.byte 32
+.byte 57
+.byte 44
+.byte 32
+.byte 50
+.byte 55
+.byte 44
+.byte 32
+.byte 51
+.byte 50
+.byte 32
+.byte 38
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 0
+L.38:
+.byte 53
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 52
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 51
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 56
+.byte 48
+.byte 44
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 52
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 54
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 53
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 52
+.byte 56
+.byte 0
+.align 0
+L.34:
+.byte 57
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 51
+.byte 42
+.byte 51
+.byte 44
+.byte 32
+.byte 50
+.byte 55
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 57
+.byte 42
+.byte 51
+.byte 44
+.byte 32
+.byte 51
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 56
+.byte 42
+.byte 52
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 51
+.byte 50
+.byte 45
+.byte 50
+.byte 55
+.byte 45
+.byte 52
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 0
+L.30:
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 32
+.byte 43
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 0
+L.26:
+.byte 45
+.byte 49
+.byte 43
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 43
+.byte 97
+.byte 98
+.byte 115
+.byte 40
+.byte 49
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 45
+.byte 49
+.byte 43
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 42
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 0
+L.22:
+.byte 51
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 50
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 52
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 51
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 52
+.byte 43
+.byte 50
+.byte 42
+.byte 40
+.byte 45
+.byte 50
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 52
+.byte 45
+.byte 51
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 3
+L.20:
+.word 0x3f50624d
+.word 0xd2f1a9fc
+.align 0
+L.19:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 45
+.byte 48
+.byte 46
+.byte 48
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 111
+.byte 110
+.byte 45
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 33
+.byte 10
+.byte 0
+.align 0
+L.14:
+.byte 48
+.byte 43
+.byte 48
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 32
+.byte 60
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 43
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 50
+.byte 0
+.align 0
+L.12:
+.byte 80
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 119
+.byte 32
+.byte 82
+.byte 85
+.byte 78
+.byte 78
+.byte 73
+.byte 78
+.byte 71
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 115
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 58
+.byte 10
+.byte 0
+.align 3
+L.8:
+.word 0x3ff00000
+.word 0x0
+.align 3
+L.7:
+.word 0x0
+.word 0x0
+.align 0
+L.2:
+.byte 10
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 70
+.byte 76
+.byte 79
+.byte 65
+.byte 84
+.byte 73
+.byte 78
+.byte 71
+.byte 45
+.byte 80
+.byte 79
+.byte 73
+.byte 78
+.byte 84
+.byte 32
+.byte 69
+.byte 82
+.byte 82
+.byte 79
+.byte 82
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 10
+.byte 0
diff --git a/lcc/mips/irix/tst/sort.1bk b/lcc/mips/irix/tst/sort.1bk
index 380d529..75e1f0d 100755
--- a/lcc/mips/irix/tst/sort.1bk
+++ b/lcc/mips/irix/tst/sort.1bk
@@ -1,20 +1,20 @@
-exchange(1,9)
-exchange(3,7)
-exchange(5,6)
-exchange(0,5)
-exchange(0,3)
-exchange(0,0)
-exchange(1,2)
-exchange(6,6)
-exchange(8,9)
-exchange(7,8)
--51
--1
-0
-1
-3
-10
-18
-32
-567
-789
+exchange(1,9)
+exchange(3,7)
+exchange(5,6)
+exchange(0,5)
+exchange(0,3)
+exchange(0,0)
+exchange(1,2)
+exchange(6,6)
+exchange(8,9)
+exchange(7,8)
+-51
+-1
+0
+1
+3
+10
+18
+32
+567
+789
diff --git a/lcc/mips/irix/tst/sort.2bk b/lcc/mips/irix/tst/sort.2bk
index 27488a1..81e6f38 100755
--- a/lcc/mips/irix/tst/sort.2bk
+++ b/lcc/mips/irix/tst/sort.2bk
@@ -1,5 +1,5 @@
-tst/sort.c:23: warning: missing return value
-tst/sort.c:30: warning: missing return value
-tst/sort.c:37: warning: missing return value
-tst/sort.c:41: warning: missing return value
-tst/sort.c:65: warning: missing return value
+tst/sort.c:23: warning: missing return value
+tst/sort.c:30: warning: missing return value
+tst/sort.c:37: warning: missing return value
+tst/sort.c:41: warning: missing return value
+tst/sort.c:65: warning: missing return value
diff --git a/lcc/mips/irix/tst/sort.sbk b/lcc/mips/irix/tst/sort.sbk
index 57d33f6..ff3724c 100755
--- a/lcc/mips/irix/tst/sort.sbk
+++ b/lcc/mips/irix/tst/sort.sbk
@@ -1,308 +1,308 @@
-.set reorder
-.globl in
-.data
-.align 2
-in:
-.word 0xa
-.word 0x20
-.word 0xffffffff
-.word 0x237
-.word 0x3
-.word 0x12
-.word 0x1
-.word 0xffffffcd
-.word 0x315
-.word 0x0
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-la $4,in
-la $5,10
-jal sort
-move $30,$0
-b L.5
-L.2:
-sll $24,$30,2
-lw $4,in($24)
-jal putd
-la $4,10
-jal putchar
-L.3:
-la $30,1($30)
-L.5:
-move $24,$30
-la $15,10
-bltu $24,$15,L.2
-move $2,$0
-L.1:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end main
-.globl putd
-.text
-.align 2
-.ent putd
-putd:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-move $30,$4
-bge $30,$0,L.7
-la $4,45
-jal putchar
-negu $30,$30
-L.7:
-la $24,10
-div $24,$30,$24
-beq $24,$0,L.9
-la $24,10
-div $4,$30,$24
-jal putd
-L.9:
-la $24,10
-rem $24,$30,$24
-la $4,48($24)
-jal putchar
-move $2,$0
-L.6:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end putd
-.globl sort
-.text
-.align 2
-.ent sort
-sort:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-sw $5,28($sp)
-lw $24,0+24($sp)
-sw $24,xx
-move $4,$24
-move $5,$0
-lw $24,4+24($sp)
-subu $24,$24,1
-sw $24,4+24($sp)
-move $6,$24
-jal quick
-move $2,$0
-L.11:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end sort
-.globl quick
-.text
-.align 2
-.ent quick
-quick:
-.frame $sp,40,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-40
-.mask 0xc2e00000,-4
-sw $21,16($sp)
-sw $22,20($sp)
-sw $23,24($sp)
-.cprestore 28
-sw $30,32($sp)
-sw $31,36($sp)
-move $30,$4
-move $23,$5
-move $22,$6
-blt $23,$22,L.13
-b L.12
-L.13:
-move $4,$30
-move $5,$23
-move $6,$22
-jal partition
-move $21,$2
-move $4,$30
-move $5,$23
-subu $6,$21,1
-jal quick
-move $4,$30
-la $5,1($21)
-move $6,$22
-jal quick
-move $2,$0
-L.12:
-lw $21,16($sp)
-lw $22,20($sp)
-lw $23,24($sp)
-lw $25,28($sp)
-lw $30,32($sp)
-lw $31,36($sp)
-addu $sp,$sp,40
-j $31
-.end quick
-.globl partition
-.text
-.align 2
-.ent partition
-partition:
-.frame $sp,48,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-48
-.mask 0xc2f00000,-8
-sw $20,16($sp)
-sw $21,20($sp)
-sw $22,24($sp)
-sw $23,28($sp)
-.cprestore 32
-sw $30,36($sp)
-sw $31,40($sp)
-move $30,$4
-move $23,$5
-move $22,$6
-la $22,1($22)
-move $20,$23
-sll $24,$20,2
-addu $24,$24,$30
-lw $21,($24)
-b L.17
-L.16:
-la $23,1($23)
-b L.20
-L.19:
-la $23,1($23)
-L.20:
-sll $24,$23,2
-addu $24,$24,$30
-lw $24,($24)
-blt $24,$21,L.19
-subu $22,$22,1
-b L.23
-L.22:
-subu $22,$22,1
-L.23:
-sll $24,$22,2
-addu $24,$24,$30
-lw $24,($24)
-bgt $24,$21,L.22
-bge $23,$22,L.25
-sll $24,$23,2
-addu $4,$24,$30
-sll $24,$22,2
-addu $5,$24,$30
-jal exchange
-L.25:
-L.17:
-blt $23,$22,L.16
-sll $24,$20,2
-addu $4,$24,$30
-sll $24,$22,2
-addu $5,$24,$30
-jal exchange
-move $2,$22
-L.15:
-lw $20,16($sp)
-lw $21,20($sp)
-lw $22,24($sp)
-lw $23,28($sp)
-lw $25,32($sp)
-lw $30,36($sp)
-lw $31,40($sp)
-addu $sp,$sp,48
-j $31
-.end partition
-.globl exchange
-.text
-.align 2
-.ent exchange
-exchange:
-.frame $sp,40,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-40
-.mask 0xc2800000,-12
-sw $23,16($sp)
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-move $30,$4
-move $23,$5
-la $4,L.28
-lw $24,xx
-la $15,4
-move $14,$30
-subu $14,$14,$24
-div $5,$14,$15
-move $14,$23
-subu $24,$14,$24
-div $6,$24,$15
-jal printf
-lw $24,($30)
-sw $24,-4+40($sp)
-lw $24,($23)
-sw $24,($30)
-lw $24,-4+40($sp)
-sw $24,($23)
-move $2,$0
-L.27:
-lw $23,16($sp)
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,40
-j $31
-.end exchange
-.globl xx
-.comm xx,4
-.rdata
-.align 0
-L.28:
-.byte 101
-.byte 120
-.byte 99
-.byte 104
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 40
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 41
-.byte 10
-.byte 0
+.set reorder
+.globl in
+.data
+.align 2
+in:
+.word 0xa
+.word 0x20
+.word 0xffffffff
+.word 0x237
+.word 0x3
+.word 0x12
+.word 0x1
+.word 0xffffffcd
+.word 0x315
+.word 0x0
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+la $4,in
+la $5,10
+jal sort
+move $30,$0
+b L.5
+L.2:
+sll $24,$30,2
+lw $4,in($24)
+jal putd
+la $4,10
+jal putchar
+L.3:
+la $30,1($30)
+L.5:
+move $24,$30
+la $15,10
+bltu $24,$15,L.2
+move $2,$0
+L.1:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end main
+.globl putd
+.text
+.align 2
+.ent putd
+putd:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+move $30,$4
+bge $30,$0,L.7
+la $4,45
+jal putchar
+negu $30,$30
+L.7:
+la $24,10
+div $24,$30,$24
+beq $24,$0,L.9
+la $24,10
+div $4,$30,$24
+jal putd
+L.9:
+la $24,10
+rem $24,$30,$24
+la $4,48($24)
+jal putchar
+move $2,$0
+L.6:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end putd
+.globl sort
+.text
+.align 2
+.ent sort
+sort:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+sw $5,28($sp)
+lw $24,0+24($sp)
+sw $24,xx
+move $4,$24
+move $5,$0
+lw $24,4+24($sp)
+subu $24,$24,1
+sw $24,4+24($sp)
+move $6,$24
+jal quick
+move $2,$0
+L.11:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end sort
+.globl quick
+.text
+.align 2
+.ent quick
+quick:
+.frame $sp,40,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-40
+.mask 0xc2e00000,-4
+sw $21,16($sp)
+sw $22,20($sp)
+sw $23,24($sp)
+.cprestore 28
+sw $30,32($sp)
+sw $31,36($sp)
+move $30,$4
+move $23,$5
+move $22,$6
+blt $23,$22,L.13
+b L.12
+L.13:
+move $4,$30
+move $5,$23
+move $6,$22
+jal partition
+move $21,$2
+move $4,$30
+move $5,$23
+subu $6,$21,1
+jal quick
+move $4,$30
+la $5,1($21)
+move $6,$22
+jal quick
+move $2,$0
+L.12:
+lw $21,16($sp)
+lw $22,20($sp)
+lw $23,24($sp)
+lw $25,28($sp)
+lw $30,32($sp)
+lw $31,36($sp)
+addu $sp,$sp,40
+j $31
+.end quick
+.globl partition
+.text
+.align 2
+.ent partition
+partition:
+.frame $sp,48,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-48
+.mask 0xc2f00000,-8
+sw $20,16($sp)
+sw $21,20($sp)
+sw $22,24($sp)
+sw $23,28($sp)
+.cprestore 32
+sw $30,36($sp)
+sw $31,40($sp)
+move $30,$4
+move $23,$5
+move $22,$6
+la $22,1($22)
+move $20,$23
+sll $24,$20,2
+addu $24,$24,$30
+lw $21,($24)
+b L.17
+L.16:
+la $23,1($23)
+b L.20
+L.19:
+la $23,1($23)
+L.20:
+sll $24,$23,2
+addu $24,$24,$30
+lw $24,($24)
+blt $24,$21,L.19
+subu $22,$22,1
+b L.23
+L.22:
+subu $22,$22,1
+L.23:
+sll $24,$22,2
+addu $24,$24,$30
+lw $24,($24)
+bgt $24,$21,L.22
+bge $23,$22,L.25
+sll $24,$23,2
+addu $4,$24,$30
+sll $24,$22,2
+addu $5,$24,$30
+jal exchange
+L.25:
+L.17:
+blt $23,$22,L.16
+sll $24,$20,2
+addu $4,$24,$30
+sll $24,$22,2
+addu $5,$24,$30
+jal exchange
+move $2,$22
+L.15:
+lw $20,16($sp)
+lw $21,20($sp)
+lw $22,24($sp)
+lw $23,28($sp)
+lw $25,32($sp)
+lw $30,36($sp)
+lw $31,40($sp)
+addu $sp,$sp,48
+j $31
+.end partition
+.globl exchange
+.text
+.align 2
+.ent exchange
+exchange:
+.frame $sp,40,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-40
+.mask 0xc2800000,-12
+sw $23,16($sp)
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+move $30,$4
+move $23,$5
+la $4,L.28
+lw $24,xx
+la $15,4
+move $14,$30
+subu $14,$14,$24
+div $5,$14,$15
+move $14,$23
+subu $24,$14,$24
+div $6,$24,$15
+jal printf
+lw $24,($30)
+sw $24,-4+40($sp)
+lw $24,($23)
+sw $24,($30)
+lw $24,-4+40($sp)
+sw $24,($23)
+move $2,$0
+L.27:
+lw $23,16($sp)
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,40
+j $31
+.end exchange
+.globl xx
+.comm xx,4
+.rdata
+.align 0
+L.28:
+.byte 101
+.byte 120
+.byte 99
+.byte 104
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 40
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 41
+.byte 10
+.byte 0
diff --git a/lcc/mips/irix/tst/spill.2bk b/lcc/mips/irix/tst/spill.2bk
index f7e3521..afd73e2 100755
--- a/lcc/mips/irix/tst/spill.2bk
+++ b/lcc/mips/irix/tst/spill.2bk
@@ -1,6 +1,6 @@
-tst/spill.c:1: warning: missing return value
-tst/spill.c:3: warning: missing return value
-tst/spill.c:5: warning: missing return value
-tst/spill.c:7: warning: missing return value
-tst/spill.c:9: warning: missing return value
-tst/spill.c:17: warning: missing return value
+tst/spill.c:1: warning: missing return value
+tst/spill.c:3: warning: missing return value
+tst/spill.c:5: warning: missing return value
+tst/spill.c:7: warning: missing return value
+tst/spill.c:9: warning: missing return value
+tst/spill.c:17: warning: missing return value
diff --git a/lcc/mips/irix/tst/spill.sbk b/lcc/mips/irix/tst/spill.sbk
index 5b9fb25..f269e9f 100755
--- a/lcc/mips/irix/tst/spill.sbk
+++ b/lcc/mips/irix/tst/spill.sbk
@@ -1,271 +1,271 @@
-.set reorder
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-move $2,$0
-L.1:
-j $31
-.end main
-.globl f
-.text
-.align 2
-.ent f
-f:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0x82000000,-12
-.cprestore 16
-sw $31,20($sp)
-sw $4,32($sp)
-jal f
-move $24,$2
-sw $24,-4+32($sp)
-jal f
-lw $15,-4+32($sp)
-addu $24,$15,$2
-sw $24,0+32($sp)
-move $2,$0
-L.2:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,32
-j $31
-.end f
-.globl f2
-.text
-.align 2
-.ent f2
-f2:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-sw $4,32($sp)
-jal f
-move $24,$2
-sw $24,-4+32($sp)
-lw $15,0+32($sp)
-beq $15,$0,L.5
-jal f
-move $24,$2
-move $30,$24
-b L.6
-L.5:
-la $30,1
-L.6:
-lw $24,-4+32($sp)
-addu $24,$24,$30
-sw $24,0+32($sp)
-move $2,$0
-L.3:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end f2
-.globl f3
-.text
-.align 2
-.ent f3
-f3:
-.frame $sp,72,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-72
-.mask 0xc2ff0000,-16
-sw $16,16($sp)
-sw $17,20($sp)
-sw $18,24($sp)
-sw $19,28($sp)
-sw $20,32($sp)
-sw $21,36($sp)
-sw $22,40($sp)
-sw $23,44($sp)
-.cprestore 48
-sw $30,52($sp)
-sw $31,56($sp)
-sw $4,72($sp)
-sw $5,76($sp)
-move $30,$0
-move $23,$0
-move $22,$0
-move $21,$0
-move $20,$0
-move $19,$0
-move $18,$0
-move $17,$0
-move $16,$0
-sw $0,-4+72($sp)
-lw $24,4+72($sp)
-sw $24,-12+72($sp)
-la $15,4($24)
-sw $15,4+72($sp)
-lw $15,0+72($sp)
-beq $15,$0,L.9
-jal f
-move $24,$2
-sw $24,-8+72($sp)
-b L.10
-L.9:
-sw $0,-8+72($sp)
-L.10:
-lw $24,-8+72($sp)
-lw $15,-12+72($sp)
-sw $24,($15)
-move $2,$0
-L.7:
-lw $16,16($sp)
-lw $17,20($sp)
-lw $18,24($sp)
-lw $19,28($sp)
-lw $20,32($sp)
-lw $21,36($sp)
-lw $22,40($sp)
-lw $23,44($sp)
-lw $25,48($sp)
-lw $30,52($sp)
-lw $31,56($sp)
-addu $sp,$sp,72
-j $31
-.end f3
-.globl f4
-.text
-.align 2
-.ent f4
-f4:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0x40fc0000,-8
-sw $18,0($sp)
-sw $19,4($sp)
-sw $20,8($sp)
-sw $21,12($sp)
-sw $22,16($sp)
-sw $23,20($sp)
-sw $30,24($sp)
-move $30,$0
-move $23,$0
-move $22,$0
-move $21,$0
-move $20,$0
-move $19,$0
-lw $24,i
-sll $15,$24,3
-l.d $f18,a($15)
-l.d $f16,b($15)
-l.d $f10,L.15
-add.d $f8,$f18,$f16
-c.eq.d $f8,$f10; bc1t L.13
-beq $24,$0,L.13
-sub.d $f18,$f18,$f16
-c.eq.d $f18,$f10; bc1t L.13
-la $18,1
-b L.14
-L.13:
-move $18,$0
-L.14:
-sw $18,i
-move $2,$0
-L.11:
-lw $18,0($sp)
-lw $19,4($sp)
-lw $20,8($sp)
-lw $21,12($sp)
-lw $22,16($sp)
-lw $23,20($sp)
-lw $30,24($sp)
-addu $sp,$sp,32
-j $31
-.end f4
-.globl f5
-.text
-.align 2
-.ent f5
-f5:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-lw $24,k
-lw $15,m
-lw $14,A
-mul $13,$24,$15
-sll $13,$13,3
-addu $13,$13,$14
-lw $12,j
-mul $15,$12,$15
-sll $15,$15,3
-addu $15,$15,$14
-lw $14,n
-lw $11,B
-mul $24,$24,$14
-sll $24,$24,3
-addu $24,$24,$11
-mul $14,$12,$14
-sll $14,$14,3
-addu $14,$14,$11
-l.d $f18,($13)
-l.d $f16,($15)
-mul.d $f18,$f18,$f16
-l.d $f16,($24)
-l.d $f10,($14)
-mul.d $f16,$f16,$f10
-add.d $f18,$f18,$f16
-s.d $f18,x
-l.d $f18,($13)
-l.d $f16,($14)
-mul.d $f18,$f18,$f16
-l.d $f16,($24)
-l.d $f10,($15)
-mul.d $f16,$f16,$f10
-sub.d $f18,$f18,$f16
-s.d $f18,x
-move $2,$0
-L.16:
-j $31
-.end f5
-.globl x
-.comm x,8
-.globl B
-.comm B,4
-.globl A
-.comm A,4
-.globl n
-.comm n,4
-.globl m
-.comm m,4
-.globl k
-.comm k,4
-.globl j
-.comm j,4
-.globl i
-.comm i,4
-.globl b
-.comm b,80
-.globl a
-.comm a,80
-.rdata
-.align 3
-L.15:
-.word 0x0
-.word 0x0
+.set reorder
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+move $2,$0
+L.1:
+j $31
+.end main
+.globl f
+.text
+.align 2
+.ent f
+f:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0x82000000,-12
+.cprestore 16
+sw $31,20($sp)
+sw $4,32($sp)
+jal f
+move $24,$2
+sw $24,-4+32($sp)
+jal f
+lw $15,-4+32($sp)
+addu $24,$15,$2
+sw $24,0+32($sp)
+move $2,$0
+L.2:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,32
+j $31
+.end f
+.globl f2
+.text
+.align 2
+.ent f2
+f2:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+sw $4,32($sp)
+jal f
+move $24,$2
+sw $24,-4+32($sp)
+lw $15,0+32($sp)
+beq $15,$0,L.5
+jal f
+move $24,$2
+move $30,$24
+b L.6
+L.5:
+la $30,1
+L.6:
+lw $24,-4+32($sp)
+addu $24,$24,$30
+sw $24,0+32($sp)
+move $2,$0
+L.3:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end f2
+.globl f3
+.text
+.align 2
+.ent f3
+f3:
+.frame $sp,72,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-72
+.mask 0xc2ff0000,-16
+sw $16,16($sp)
+sw $17,20($sp)
+sw $18,24($sp)
+sw $19,28($sp)
+sw $20,32($sp)
+sw $21,36($sp)
+sw $22,40($sp)
+sw $23,44($sp)
+.cprestore 48
+sw $30,52($sp)
+sw $31,56($sp)
+sw $4,72($sp)
+sw $5,76($sp)
+move $30,$0
+move $23,$0
+move $22,$0
+move $21,$0
+move $20,$0
+move $19,$0
+move $18,$0
+move $17,$0
+move $16,$0
+sw $0,-4+72($sp)
+lw $24,4+72($sp)
+sw $24,-12+72($sp)
+la $15,4($24)
+sw $15,4+72($sp)
+lw $15,0+72($sp)
+beq $15,$0,L.9
+jal f
+move $24,$2
+sw $24,-8+72($sp)
+b L.10
+L.9:
+sw $0,-8+72($sp)
+L.10:
+lw $24,-8+72($sp)
+lw $15,-12+72($sp)
+sw $24,($15)
+move $2,$0
+L.7:
+lw $16,16($sp)
+lw $17,20($sp)
+lw $18,24($sp)
+lw $19,28($sp)
+lw $20,32($sp)
+lw $21,36($sp)
+lw $22,40($sp)
+lw $23,44($sp)
+lw $25,48($sp)
+lw $30,52($sp)
+lw $31,56($sp)
+addu $sp,$sp,72
+j $31
+.end f3
+.globl f4
+.text
+.align 2
+.ent f4
+f4:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0x40fc0000,-8
+sw $18,0($sp)
+sw $19,4($sp)
+sw $20,8($sp)
+sw $21,12($sp)
+sw $22,16($sp)
+sw $23,20($sp)
+sw $30,24($sp)
+move $30,$0
+move $23,$0
+move $22,$0
+move $21,$0
+move $20,$0
+move $19,$0
+lw $24,i
+sll $15,$24,3
+l.d $f18,a($15)
+l.d $f16,b($15)
+l.d $f10,L.15
+add.d $f8,$f18,$f16
+c.eq.d $f8,$f10; bc1t L.13
+beq $24,$0,L.13
+sub.d $f18,$f18,$f16
+c.eq.d $f18,$f10; bc1t L.13
+la $18,1
+b L.14
+L.13:
+move $18,$0
+L.14:
+sw $18,i
+move $2,$0
+L.11:
+lw $18,0($sp)
+lw $19,4($sp)
+lw $20,8($sp)
+lw $21,12($sp)
+lw $22,16($sp)
+lw $23,20($sp)
+lw $30,24($sp)
+addu $sp,$sp,32
+j $31
+.end f4
+.globl f5
+.text
+.align 2
+.ent f5
+f5:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+lw $24,k
+lw $15,m
+lw $14,A
+mul $13,$24,$15
+sll $13,$13,3
+addu $13,$13,$14
+lw $12,j
+mul $15,$12,$15
+sll $15,$15,3
+addu $15,$15,$14
+lw $14,n
+lw $11,B
+mul $24,$24,$14
+sll $24,$24,3
+addu $24,$24,$11
+mul $14,$12,$14
+sll $14,$14,3
+addu $14,$14,$11
+l.d $f18,($13)
+l.d $f16,($15)
+mul.d $f18,$f18,$f16
+l.d $f16,($24)
+l.d $f10,($14)
+mul.d $f16,$f16,$f10
+add.d $f18,$f18,$f16
+s.d $f18,x
+l.d $f18,($13)
+l.d $f16,($14)
+mul.d $f18,$f18,$f16
+l.d $f16,($24)
+l.d $f10,($15)
+mul.d $f16,$f16,$f10
+sub.d $f18,$f18,$f16
+s.d $f18,x
+move $2,$0
+L.16:
+j $31
+.end f5
+.globl x
+.comm x,8
+.globl B
+.comm B,4
+.globl A
+.comm A,4
+.globl n
+.comm n,4
+.globl m
+.comm m,4
+.globl k
+.comm k,4
+.globl j
+.comm j,4
+.globl i
+.comm i,4
+.globl b
+.comm b,80
+.globl a
+.comm a,80
+.rdata
+.align 3
+L.15:
+.word 0x0
+.word 0x0
diff --git a/lcc/mips/irix/tst/stdarg.1bk b/lcc/mips/irix/tst/stdarg.1bk
index 097aef7..e973176 100755
--- a/lcc/mips/irix/tst/stdarg.1bk
+++ b/lcc/mips/irix/tst/stdarg.1bk
@@ -1,6 +1,6 @@
-test 1
-test 2
-test 3
-test 4
-test 5.000000
-{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
+test 1
+test 2
+test 3
+test 4
+test 5.000000
+{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
diff --git a/lcc/mips/irix/tst/stdarg.2bk b/lcc/mips/irix/tst/stdarg.2bk
index a832cf9..2b3f417 100755
--- a/lcc/mips/irix/tst/stdarg.2bk
+++ b/lcc/mips/irix/tst/stdarg.2bk
@@ -1 +1 @@
-tst/stdarg.c:51: warning: missing return value
+tst/stdarg.c:51: warning: missing return value
diff --git a/lcc/mips/irix/tst/stdarg.sbk b/lcc/mips/irix/tst/stdarg.sbk
index 556c8b2..db7f80e 100755
--- a/lcc/mips/irix/tst/stdarg.sbk
+++ b/lcc/mips/irix/tst/stdarg.sbk
@@ -1,395 +1,395 @@
-.set reorder
-.globl x
-.data
-.align 2
-x:
-.word 0x1
-.word 0x2
-.word 0x3
-.word 0x4
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,112,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-112
-.mask 0x82000000,-8
-.cprestore 100
-sw $31,104($sp)
-la $4,L.2
-jal print
-la $4,L.3
-la $5,L.4
-jal print
-la $4,L.5
-la $5,3
-la $6,10
-jal print
-la $4,L.6
-la $5,L.7
-la $6,L.8
-la $7,4
-la $24,10
-sw $24,16($sp)
-jal print
-la $4,L.9
-la $5,L.7
-la $6,L.8
-l.d $f18,L.10
-s.d $f18,16($sp)
-la $24,10
-sw $24,24($sp)
-jal print
-la $4,L.11
-la $24,x
-move $8,$24
-lw $3,0($8)
-lw $9,4($8)
-sw $3,4($29)
-sw $9,8($29)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,12($29)
-sw $9,16($29)
-lw $5,4($sp)
-lw $6,8($sp)
-lw $7,12($sp)
-move $8,$24
-lw $3,0($8)
-lw $9,4($8)
-sw $3,20($29)
-sw $9,24($29)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,28($29)
-sw $9,32($29)
-move $8,$24
-lw $3,0($8)
-lw $9,4($8)
-sw $3,36($29)
-sw $9,40($29)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,44($29)
-sw $9,48($29)
-move $8,$24
-lw $3,0($8)
-lw $9,4($8)
-sw $3,52($29)
-sw $9,56($29)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,60($29)
-sw $9,64($29)
-move $8,$24
-lw $3,0($8)
-lw $9,4($8)
-sw $3,68($29)
-sw $9,72($29)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,76($29)
-sw $9,80($29)
-move $8,$24
-lw $3,0($8)
-lw $9,4($8)
-sw $3,84($29)
-sw $9,88($29)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,92($29)
-sw $9,96($29)
-jal print
-move $2,$0
-L.1:
-lw $25,100($sp)
-lw $31,104($sp)
-addu $sp,$sp,112
-j $31
-.end main
-.globl print
-.text
-.align 2
-.ent print
-print:
-.frame $sp,56,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-56
-.mask 0xc2800000,-24
-sw $23,20($sp)
-.cprestore 24
-sw $30,28($sp)
-sw $31,32($sp)
-sw $4,56($sp)
-sw $5,60($sp)
-sw $6,64($sp)
-sw $7,68($sp)
-la $30,4+56($sp)
-b L.18
-L.15:
-lw $24,0+56($sp)
-lb $24,($24)
-la $15,37
-bne $24,$15,L.19
-lw $24,0+56($sp)
-la $24,1($24)
-sw $24,0+56($sp)
-lb $23,($24)
-la $24,115
-beq $23,$24,L.35
-bgt $23,$24,L.40
-L.39:
-la $24,98
-blt $23,$24,L.21
-la $24,102
-bgt $23,$24,L.21
-sll $24,$23,2
-lw $24,L.41-392($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.41:
-.gpword L.24
-.gpword L.29
-.gpword L.31
-.gpword L.21
-.gpword L.37
-.text
-L.40:
-la $24,119
-beq $23,$24,L.33
-b L.21
-L.24:
-la $24,16($30)
-move $30,$24
-la $15,-16+56($sp)
-la $8,-16($24)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($15)
-sw $9,4($15)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,8($15)
-sw $9,12($15)
-la $4,L.25
-lw $5,-16+56($sp)
-lw $6,-12+56($sp)
-lw $7,-8+56($sp)
-lw $24,-4+56($sp)
-sw $24,16($sp)
-jal printf
-b L.20
-L.29:
-la $4,L.30
-la $24,4($30)
-move $30,$24
-lb $5,-1($24)
-jal printf
-b L.20
-L.31:
-la $4,L.32
-la $24,4($30)
-move $30,$24
-lw $5,-4($24)
-jal printf
-b L.20
-L.33:
-la $4,L.34
-la $24,4($30)
-move $30,$24
-lh $5,-2($24)
-jal printf
-b L.20
-L.35:
-la $4,L.36
-la $24,4($30)
-move $30,$24
-lw $5,-4($24)
-jal printf
-b L.20
-L.37:
-la $4,L.38
-move $24,$30
-la $24,15($24)
-and $24,$24,0xfffffff8
-move $30,$24
-l.d $f18,-8($24)
-mfc1.d $6,$f18
-jal printf
-b L.20
-L.21:
-la $4,L.30
-lw $24,0+56($sp)
-lb $5,($24)
-jal printf
-b L.20
-L.19:
-la $4,L.30
-lw $24,0+56($sp)
-lb $5,($24)
-jal printf
-L.20:
-L.16:
-lw $24,0+56($sp)
-la $24,1($24)
-sw $24,0+56($sp)
-L.18:
-lw $24,0+56($sp)
-lb $24,($24)
-bne $24,$0,L.15
-move $2,$0
-L.12:
-lw $23,20($sp)
-lw $25,24($sp)
-lw $30,28($sp)
-lw $31,32($sp)
-addu $sp,$sp,56
-j $31
-.end print
-.rdata
-.align 0
-L.38:
-.byte 37
-.byte 102
-.byte 0
-.align 0
-L.36:
-.byte 37
-.byte 115
-.byte 0
-.align 0
-L.34:
-.byte 37
-.byte 120
-.byte 0
-.align 0
-L.32:
-.byte 37
-.byte 100
-.byte 0
-.align 0
-L.30:
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.25:
-.byte 123
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 125
-.byte 0
-.align 0
-L.11:
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 10
-.byte 0
-.align 3
-L.10:
-.word 0x40140000
-.word 0x0
-.align 0
-L.9:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 32
-.byte 37
-.byte 102
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.8:
-.byte 115
-.byte 116
-.byte 0
-.align 0
-L.7:
-.byte 116
-.byte 101
-.byte 0
-.align 0
-L.6:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 32
-.byte 37
-.byte 119
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.5:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 100
-.byte 37
-.byte 99
-.byte 0
-.align 0
-L.4:
-.byte 50
-.byte 0
-.align 0
-L.3:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.2:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 49
-.byte 10
-.byte 0
+.set reorder
+.globl x
+.data
+.align 2
+x:
+.word 0x1
+.word 0x2
+.word 0x3
+.word 0x4
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,112,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-112
+.mask 0x82000000,-8
+.cprestore 100
+sw $31,104($sp)
+la $4,L.2
+jal print
+la $4,L.3
+la $5,L.4
+jal print
+la $4,L.5
+la $5,3
+la $6,10
+jal print
+la $4,L.6
+la $5,L.7
+la $6,L.8
+la $7,4
+la $24,10
+sw $24,16($sp)
+jal print
+la $4,L.9
+la $5,L.7
+la $6,L.8
+l.d $f18,L.10
+s.d $f18,16($sp)
+la $24,10
+sw $24,24($sp)
+jal print
+la $4,L.11
+la $24,x
+move $8,$24
+lw $3,0($8)
+lw $9,4($8)
+sw $3,4($29)
+sw $9,8($29)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,12($29)
+sw $9,16($29)
+lw $5,4($sp)
+lw $6,8($sp)
+lw $7,12($sp)
+move $8,$24
+lw $3,0($8)
+lw $9,4($8)
+sw $3,20($29)
+sw $9,24($29)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,28($29)
+sw $9,32($29)
+move $8,$24
+lw $3,0($8)
+lw $9,4($8)
+sw $3,36($29)
+sw $9,40($29)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,44($29)
+sw $9,48($29)
+move $8,$24
+lw $3,0($8)
+lw $9,4($8)
+sw $3,52($29)
+sw $9,56($29)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,60($29)
+sw $9,64($29)
+move $8,$24
+lw $3,0($8)
+lw $9,4($8)
+sw $3,68($29)
+sw $9,72($29)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,76($29)
+sw $9,80($29)
+move $8,$24
+lw $3,0($8)
+lw $9,4($8)
+sw $3,84($29)
+sw $9,88($29)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,92($29)
+sw $9,96($29)
+jal print
+move $2,$0
+L.1:
+lw $25,100($sp)
+lw $31,104($sp)
+addu $sp,$sp,112
+j $31
+.end main
+.globl print
+.text
+.align 2
+.ent print
+print:
+.frame $sp,56,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-56
+.mask 0xc2800000,-24
+sw $23,20($sp)
+.cprestore 24
+sw $30,28($sp)
+sw $31,32($sp)
+sw $4,56($sp)
+sw $5,60($sp)
+sw $6,64($sp)
+sw $7,68($sp)
+la $30,4+56($sp)
+b L.18
+L.15:
+lw $24,0+56($sp)
+lb $24,($24)
+la $15,37
+bne $24,$15,L.19
+lw $24,0+56($sp)
+la $24,1($24)
+sw $24,0+56($sp)
+lb $23,($24)
+la $24,115
+beq $23,$24,L.35
+bgt $23,$24,L.40
+L.39:
+la $24,98
+blt $23,$24,L.21
+la $24,102
+bgt $23,$24,L.21
+sll $24,$23,2
+lw $24,L.41-392($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.41:
+.gpword L.24
+.gpword L.29
+.gpword L.31
+.gpword L.21
+.gpword L.37
+.text
+L.40:
+la $24,119
+beq $23,$24,L.33
+b L.21
+L.24:
+la $24,16($30)
+move $30,$24
+la $15,-16+56($sp)
+la $8,-16($24)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($15)
+sw $9,4($15)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,8($15)
+sw $9,12($15)
+la $4,L.25
+lw $5,-16+56($sp)
+lw $6,-12+56($sp)
+lw $7,-8+56($sp)
+lw $24,-4+56($sp)
+sw $24,16($sp)
+jal printf
+b L.20
+L.29:
+la $4,L.30
+la $24,4($30)
+move $30,$24
+lb $5,-1($24)
+jal printf
+b L.20
+L.31:
+la $4,L.32
+la $24,4($30)
+move $30,$24
+lw $5,-4($24)
+jal printf
+b L.20
+L.33:
+la $4,L.34
+la $24,4($30)
+move $30,$24
+lh $5,-2($24)
+jal printf
+b L.20
+L.35:
+la $4,L.36
+la $24,4($30)
+move $30,$24
+lw $5,-4($24)
+jal printf
+b L.20
+L.37:
+la $4,L.38
+move $24,$30
+la $24,15($24)
+and $24,$24,0xfffffff8
+move $30,$24
+l.d $f18,-8($24)
+mfc1.d $6,$f18
+jal printf
+b L.20
+L.21:
+la $4,L.30
+lw $24,0+56($sp)
+lb $5,($24)
+jal printf
+b L.20
+L.19:
+la $4,L.30
+lw $24,0+56($sp)
+lb $5,($24)
+jal printf
+L.20:
+L.16:
+lw $24,0+56($sp)
+la $24,1($24)
+sw $24,0+56($sp)
+L.18:
+lw $24,0+56($sp)
+lb $24,($24)
+bne $24,$0,L.15
+move $2,$0
+L.12:
+lw $23,20($sp)
+lw $25,24($sp)
+lw $30,28($sp)
+lw $31,32($sp)
+addu $sp,$sp,56
+j $31
+.end print
+.rdata
+.align 0
+L.38:
+.byte 37
+.byte 102
+.byte 0
+.align 0
+L.36:
+.byte 37
+.byte 115
+.byte 0
+.align 0
+L.34:
+.byte 37
+.byte 120
+.byte 0
+.align 0
+L.32:
+.byte 37
+.byte 100
+.byte 0
+.align 0
+L.30:
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.25:
+.byte 123
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 125
+.byte 0
+.align 0
+L.11:
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 10
+.byte 0
+.align 3
+L.10:
+.word 0x40140000
+.word 0x0
+.align 0
+L.9:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 32
+.byte 37
+.byte 102
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.8:
+.byte 115
+.byte 116
+.byte 0
+.align 0
+L.7:
+.byte 116
+.byte 101
+.byte 0
+.align 0
+L.6:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 32
+.byte 37
+.byte 119
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.5:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 100
+.byte 37
+.byte 99
+.byte 0
+.align 0
+L.4:
+.byte 50
+.byte 0
+.align 0
+L.3:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.2:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 49
+.byte 10
+.byte 0
diff --git a/lcc/mips/irix/tst/struct.1bk b/lcc/mips/irix/tst/struct.1bk
index 2358779..807f3da 100755
--- a/lcc/mips/irix/tst/struct.1bk
+++ b/lcc/mips/irix/tst/struct.1bk
@@ -1,5 +1,5 @@
-(-1,-1) is not within [10,10; 310,310]
-(1,1) is not within [10,10; 310,310]
-(20,300) is within [10,10; 310,310]
-(500,400) is not within [10,10; 310,310]
-ab
+(-1,-1) is not within [10,10; 310,310]
+(1,1) is not within [10,10; 310,310]
+(20,300) is within [10,10; 310,310]
+(500,400) is not within [10,10; 310,310]
+ab
diff --git a/lcc/mips/irix/tst/struct.2bk b/lcc/mips/irix/tst/struct.2bk
index 8a01bb1..cb0fbd0 100755
--- a/lcc/mips/irix/tst/struct.2bk
+++ b/lcc/mips/irix/tst/struct.2bk
@@ -1,2 +1,2 @@
-tst/struct.c:49: warning: missing return value
-tst/struct.c:68: warning: missing return value
+tst/struct.c:49: warning: missing return value
+tst/struct.c:68: warning: missing return value
diff --git a/lcc/mips/irix/tst/struct.sbk b/lcc/mips/irix/tst/struct.sbk
index 0eaa438..65f4c9f 100755
--- a/lcc/mips/irix/tst/struct.sbk
+++ b/lcc/mips/irix/tst/struct.sbk
@@ -1,485 +1,485 @@
-.set reorder
-.globl addpoint
-.text
-.text
-.align 2
-.ent addpoint
-addpoint:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-sw $5,4($sp)
-sw $6,8($sp)
-sw $7,12($sp)
-lw $24,4+0($sp)
-lw $15,12+0($sp)
-addu $24,$24,$15
-sw $24,4+0($sp)
-lw $24,8+0($sp)
-lw $15,16+0($sp)
-addu $24,$24,$15
-sw $24,8+0($sp)
-la $8,4+0($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($4)
-sw $9,4($4)
-L.1:
-j $31
-.end addpoint
-.globl canonrect
-.text
-.align 2
-.ent canonrect
-canonrect:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0x40e00000,-20
-sw $21,0($sp)
-sw $22,4($sp)
-sw $23,8($sp)
-sw $30,12($sp)
-sw $5,36($sp)
-sw $6,40($sp)
-sw $7,44($sp)
-lw $24,4+32($sp)
-lw $15,12+32($sp)
-bge $24,$15,L.10
-lw $30,4+32($sp)
-b L.11
-L.10:
-lw $30,12+32($sp)
-L.11:
-sw $30,-16+32($sp)
-lw $24,8+32($sp)
-lw $15,16+32($sp)
-bge $24,$15,L.20
-lw $23,8+32($sp)
-b L.21
-L.20:
-lw $23,16+32($sp)
-L.21:
-sw $23,-12+32($sp)
-lw $24,4+32($sp)
-lw $15,12+32($sp)
-ble $24,$15,L.26
-lw $22,4+32($sp)
-b L.27
-L.26:
-lw $22,12+32($sp)
-L.27:
-sw $22,-8+32($sp)
-lw $24,8+32($sp)
-lw $15,16+32($sp)
-ble $24,$15,L.37
-lw $21,8+32($sp)
-b L.38
-L.37:
-lw $21,16+32($sp)
-L.38:
-sw $21,-4+32($sp)
-la $8,-16+32($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($4)
-sw $9,4($4)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,8($4)
-sw $9,12($4)
-L.5:
-lw $21,0($sp)
-lw $22,4($sp)
-lw $23,8($sp)
-lw $30,12($sp)
-addu $sp,$sp,32
-j $31
-.end canonrect
-.globl makepoint
-.text
-.align 2
-.ent makepoint
-makepoint:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-sw $5,-8+8($sp)
-sw $6,-4+8($sp)
-la $8,-8+8($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($4)
-sw $9,4($4)
-L.39:
-addu $sp,$sp,8
-j $31
-.end makepoint
-.globl makerect
-.text
-.align 2
-.ent makerect
-makerect:
-.frame $sp,48,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-48
-.mask 0x82000000,-24
-.cprestore 20
-sw $31,24($sp)
-sw $4,48($sp)
-sw $5,52($sp)
-sw $6,56($sp)
-sw $7,60($sp)
-la $24,-16+48($sp)
-la $8,4+48($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($24)
-sw $9,4($24)
-la $24,-8+48($sp)
-la $8,12+48($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($24)
-sw $9,4($24)
-lw $4,0+48($sp)
-la $8,-16+48($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,4($29)
-sw $9,8($29)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,12($29)
-sw $9,16($29)
-lw $5,4($sp)
-lw $6,8($sp)
-lw $7,12($sp)
-jal canonrect
-L.42:
-lw $25,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,48
-j $31
-.end makerect
-.globl ptinrect
-.text
-.align 2
-.ent ptinrect
-ptinrect:
-.frame $sp,8,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-8
-.mask 0x40000000,-8
-sw $30,0($sp)
-sw $4,8($sp)
-sw $5,12($sp)
-sw $6,16($sp)
-sw $7,20($sp)
-lw $24,0+8($sp)
-lw $15,8+8($sp)
-blt $24,$15,L.53
-lw $15,16+8($sp)
-bge $24,$15,L.53
-lw $24,4+8($sp)
-lw $15,12+8($sp)
-blt $24,$15,L.53
-lw $24,4+8($sp)
-lw $15,20+8($sp)
-bge $24,$15,L.53
-la $30,1
-b L.54
-L.53:
-move $30,$0
-L.54:
-move $2,$30
-L.45:
-lw $30,0($sp)
-addu $sp,$sp,8
-j $31
-.end ptinrect
-.globl y
-.sdata
-.align 0
-y:
-.byte 97
-.byte 98
-.byte 0
-.globl odd
-.text
-.text
-.align 2
-.ent odd
-odd:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0x82000000,-12
-.cprestore 16
-sw $31,20($sp)
-sw $4,32($sp)
-la $24,-3+32($sp)
-la $8,0+32($sp)
-ulhu $3,0($8)
-ush $3,0($24)
-lbu $3,2($8)
-sb $3,2($24)
-la $4,L.56
-la $5,-3+32($sp)
-jal printf
-move $2,$0
-L.55:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,32
-j $31
-.end odd
-.rdata
-.align 2
-L.58:
-.word 0x0
-.word 0x0
-.align 2
-L.59:
-.word 0x140
-.word 0x140
-.align 2
-L.60:
-.word 0xffffffff
-.word 0xffffffff
-.word 0x1
-.word 0x1
-.word 0x14
-.word 0x12c
-.word 0x1f4
-.word 0x190
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,144,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-144
-.mask 0xc2000000,-112
-.cprestore 24
-sw $30,28($sp)
-sw $31,32($sp)
-la $24,-64+144($sp)
-la $8,L.58
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($24)
-sw $9,4($24)
-la $24,-72+144($sp)
-la $8,L.59
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($24)
-sw $9,4($24)
-la $24,-32+144($sp)
-la $8,L.60
-addu $8,$8,32
-addu $10,$24,32
-L.76:
-addu $8,$8,-8
-addu $10,$10,-8
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($10)
-sw $9,4($10)
-bltu $24,$10,L.76
-la $4,-80+144($sp)
-la $24,-10
-move $5,$24
-move $6,$24
-jal makepoint
-la $4,-88+144($sp)
-la $8,-72+144($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,4($29)
-sw $9,8($29)
-lw $5,4($sp)
-lw $6,8($sp)
-la $8,-80+144($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,12($29)
-sw $9,16($29)
-lw $7,12($sp)
-jal addpoint
-la $4,-96+144($sp)
-la $24,10
-move $5,$24
-move $6,$24
-jal makepoint
-la $4,-104+144($sp)
-la $8,-64+144($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,4($29)
-sw $9,8($29)
-lw $5,4($sp)
-lw $6,8($sp)
-la $8,-96+144($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,12($29)
-sw $9,16($29)
-lw $7,12($sp)
-jal addpoint
-la $4,-48+144($sp)
-la $8,-88+144($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,4($29)
-sw $9,8($29)
-lw $5,4($sp)
-lw $6,8($sp)
-la $8,-104+144($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,12($29)
-sw $9,16($29)
-lw $7,12($sp)
-jal makerect
-move $30,$0
-b L.64
-L.61:
-la $4,-56+144($sp)
-sll $24,$30,3
-la $15,-32+144($sp)
-addu $15,$24,$15
-lw $5,($15)
-la $15,-28+144($sp)
-addu $24,$24,$15
-lw $6,($24)
-jal makepoint
-la $4,L.65
-sll $24,$30,3
-la $15,-32+144($sp)
-addu $24,$24,$15
-lw $5,($24)
-lw $6,-52+144($sp)
-jal printf
-la $8,-56+144($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,0($29)
-sw $9,4($29)
-lw $4,0($sp)
-lw $5,4($sp)
-la $8,-48+144($sp)
-lw $3,0($8)
-lw $9,4($8)
-sw $3,8($29)
-sw $9,12($29)
-lw $3,8($8)
-lw $9,12($8)
-sw $3,16($29)
-sw $9,20($29)
-lw $6,8($sp)
-lw $7,12($sp)
-jal ptinrect
-bne $2,$0,L.68
-la $4,L.70
-jal printf
-L.68:
-la $4,L.71
-lw $5,-48+144($sp)
-lw $6,-44+144($sp)
-lw $7,-40+144($sp)
-lw $24,-36+144($sp)
-sw $24,16($sp)
-jal printf
-L.62:
-la $30,1($30)
-L.64:
-move $24,$30
-la $15,4
-bltu $24,$15,L.61
-la $8,y
-ulhu $3,0($8)
-sh $3,0($29)
-lbu $3,2($8)
-sb $3,2($29)
-lw $4,0($sp)
-jal odd
-move $4,$0
-jal exit
-move $2,$0
-L.57:
-lw $25,24($sp)
-lw $30,28($sp)
-lw $31,32($sp)
-addu $sp,$sp,144
-j $31
-.end main
-.rdata
-.align 0
-L.71:
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 105
-.byte 110
-.byte 32
-.byte 91
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 59
-.byte 32
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 93
-.byte 10
-.byte 0
-.align 0
-L.70:
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 0
-.align 0
-L.65:
-.byte 40
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 0
-.align 0
-L.56:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
+.set reorder
+.globl addpoint
+.text
+.text
+.align 2
+.ent addpoint
+addpoint:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+sw $5,4($sp)
+sw $6,8($sp)
+sw $7,12($sp)
+lw $24,4+0($sp)
+lw $15,12+0($sp)
+addu $24,$24,$15
+sw $24,4+0($sp)
+lw $24,8+0($sp)
+lw $15,16+0($sp)
+addu $24,$24,$15
+sw $24,8+0($sp)
+la $8,4+0($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($4)
+sw $9,4($4)
+L.1:
+j $31
+.end addpoint
+.globl canonrect
+.text
+.align 2
+.ent canonrect
+canonrect:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0x40e00000,-20
+sw $21,0($sp)
+sw $22,4($sp)
+sw $23,8($sp)
+sw $30,12($sp)
+sw $5,36($sp)
+sw $6,40($sp)
+sw $7,44($sp)
+lw $24,4+32($sp)
+lw $15,12+32($sp)
+bge $24,$15,L.10
+lw $30,4+32($sp)
+b L.11
+L.10:
+lw $30,12+32($sp)
+L.11:
+sw $30,-16+32($sp)
+lw $24,8+32($sp)
+lw $15,16+32($sp)
+bge $24,$15,L.20
+lw $23,8+32($sp)
+b L.21
+L.20:
+lw $23,16+32($sp)
+L.21:
+sw $23,-12+32($sp)
+lw $24,4+32($sp)
+lw $15,12+32($sp)
+ble $24,$15,L.26
+lw $22,4+32($sp)
+b L.27
+L.26:
+lw $22,12+32($sp)
+L.27:
+sw $22,-8+32($sp)
+lw $24,8+32($sp)
+lw $15,16+32($sp)
+ble $24,$15,L.37
+lw $21,8+32($sp)
+b L.38
+L.37:
+lw $21,16+32($sp)
+L.38:
+sw $21,-4+32($sp)
+la $8,-16+32($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($4)
+sw $9,4($4)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,8($4)
+sw $9,12($4)
+L.5:
+lw $21,0($sp)
+lw $22,4($sp)
+lw $23,8($sp)
+lw $30,12($sp)
+addu $sp,$sp,32
+j $31
+.end canonrect
+.globl makepoint
+.text
+.align 2
+.ent makepoint
+makepoint:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+sw $5,-8+8($sp)
+sw $6,-4+8($sp)
+la $8,-8+8($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($4)
+sw $9,4($4)
+L.39:
+addu $sp,$sp,8
+j $31
+.end makepoint
+.globl makerect
+.text
+.align 2
+.ent makerect
+makerect:
+.frame $sp,48,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-48
+.mask 0x82000000,-24
+.cprestore 20
+sw $31,24($sp)
+sw $4,48($sp)
+sw $5,52($sp)
+sw $6,56($sp)
+sw $7,60($sp)
+la $24,-16+48($sp)
+la $8,4+48($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($24)
+sw $9,4($24)
+la $24,-8+48($sp)
+la $8,12+48($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($24)
+sw $9,4($24)
+lw $4,0+48($sp)
+la $8,-16+48($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,4($29)
+sw $9,8($29)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,12($29)
+sw $9,16($29)
+lw $5,4($sp)
+lw $6,8($sp)
+lw $7,12($sp)
+jal canonrect
+L.42:
+lw $25,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,48
+j $31
+.end makerect
+.globl ptinrect
+.text
+.align 2
+.ent ptinrect
+ptinrect:
+.frame $sp,8,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-8
+.mask 0x40000000,-8
+sw $30,0($sp)
+sw $4,8($sp)
+sw $5,12($sp)
+sw $6,16($sp)
+sw $7,20($sp)
+lw $24,0+8($sp)
+lw $15,8+8($sp)
+blt $24,$15,L.53
+lw $15,16+8($sp)
+bge $24,$15,L.53
+lw $24,4+8($sp)
+lw $15,12+8($sp)
+blt $24,$15,L.53
+lw $24,4+8($sp)
+lw $15,20+8($sp)
+bge $24,$15,L.53
+la $30,1
+b L.54
+L.53:
+move $30,$0
+L.54:
+move $2,$30
+L.45:
+lw $30,0($sp)
+addu $sp,$sp,8
+j $31
+.end ptinrect
+.globl y
+.sdata
+.align 0
+y:
+.byte 97
+.byte 98
+.byte 0
+.globl odd
+.text
+.text
+.align 2
+.ent odd
+odd:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0x82000000,-12
+.cprestore 16
+sw $31,20($sp)
+sw $4,32($sp)
+la $24,-3+32($sp)
+la $8,0+32($sp)
+ulhu $3,0($8)
+ush $3,0($24)
+lbu $3,2($8)
+sb $3,2($24)
+la $4,L.56
+la $5,-3+32($sp)
+jal printf
+move $2,$0
+L.55:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,32
+j $31
+.end odd
+.rdata
+.align 2
+L.58:
+.word 0x0
+.word 0x0
+.align 2
+L.59:
+.word 0x140
+.word 0x140
+.align 2
+L.60:
+.word 0xffffffff
+.word 0xffffffff
+.word 0x1
+.word 0x1
+.word 0x14
+.word 0x12c
+.word 0x1f4
+.word 0x190
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,144,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-144
+.mask 0xc2000000,-112
+.cprestore 24
+sw $30,28($sp)
+sw $31,32($sp)
+la $24,-64+144($sp)
+la $8,L.58
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($24)
+sw $9,4($24)
+la $24,-72+144($sp)
+la $8,L.59
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($24)
+sw $9,4($24)
+la $24,-32+144($sp)
+la $8,L.60
+addu $8,$8,32
+addu $10,$24,32
+L.76:
+addu $8,$8,-8
+addu $10,$10,-8
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($10)
+sw $9,4($10)
+bltu $24,$10,L.76
+la $4,-80+144($sp)
+la $24,-10
+move $5,$24
+move $6,$24
+jal makepoint
+la $4,-88+144($sp)
+la $8,-72+144($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,4($29)
+sw $9,8($29)
+lw $5,4($sp)
+lw $6,8($sp)
+la $8,-80+144($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,12($29)
+sw $9,16($29)
+lw $7,12($sp)
+jal addpoint
+la $4,-96+144($sp)
+la $24,10
+move $5,$24
+move $6,$24
+jal makepoint
+la $4,-104+144($sp)
+la $8,-64+144($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,4($29)
+sw $9,8($29)
+lw $5,4($sp)
+lw $6,8($sp)
+la $8,-96+144($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,12($29)
+sw $9,16($29)
+lw $7,12($sp)
+jal addpoint
+la $4,-48+144($sp)
+la $8,-88+144($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,4($29)
+sw $9,8($29)
+lw $5,4($sp)
+lw $6,8($sp)
+la $8,-104+144($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,12($29)
+sw $9,16($29)
+lw $7,12($sp)
+jal makerect
+move $30,$0
+b L.64
+L.61:
+la $4,-56+144($sp)
+sll $24,$30,3
+la $15,-32+144($sp)
+addu $15,$24,$15
+lw $5,($15)
+la $15,-28+144($sp)
+addu $24,$24,$15
+lw $6,($24)
+jal makepoint
+la $4,L.65
+sll $24,$30,3
+la $15,-32+144($sp)
+addu $24,$24,$15
+lw $5,($24)
+lw $6,-52+144($sp)
+jal printf
+la $8,-56+144($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,0($29)
+sw $9,4($29)
+lw $4,0($sp)
+lw $5,4($sp)
+la $8,-48+144($sp)
+lw $3,0($8)
+lw $9,4($8)
+sw $3,8($29)
+sw $9,12($29)
+lw $3,8($8)
+lw $9,12($8)
+sw $3,16($29)
+sw $9,20($29)
+lw $6,8($sp)
+lw $7,12($sp)
+jal ptinrect
+bne $2,$0,L.68
+la $4,L.70
+jal printf
+L.68:
+la $4,L.71
+lw $5,-48+144($sp)
+lw $6,-44+144($sp)
+lw $7,-40+144($sp)
+lw $24,-36+144($sp)
+sw $24,16($sp)
+jal printf
+L.62:
+la $30,1($30)
+L.64:
+move $24,$30
+la $15,4
+bltu $24,$15,L.61
+la $8,y
+ulhu $3,0($8)
+sh $3,0($29)
+lbu $3,2($8)
+sb $3,2($29)
+lw $4,0($sp)
+jal odd
+move $4,$0
+jal exit
+move $2,$0
+L.57:
+lw $25,24($sp)
+lw $30,28($sp)
+lw $31,32($sp)
+addu $sp,$sp,144
+j $31
+.end main
+.rdata
+.align 0
+L.71:
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 105
+.byte 110
+.byte 32
+.byte 91
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 59
+.byte 32
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 93
+.byte 10
+.byte 0
+.align 0
+L.70:
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 0
+.align 0
+L.65:
+.byte 40
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 0
+.align 0
+L.56:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
diff --git a/lcc/mips/irix/tst/switch.1bk b/lcc/mips/irix/tst/switch.1bk
index 559e8e3..de46a73 100755
--- a/lcc/mips/irix/tst/switch.1bk
+++ b/lcc/mips/irix/tst/switch.1bk
@@ -1,76 +1,76 @@
-b = 0x8
-f = 0xc
-n = 0xa
-r = 0xd
-t = 0x9
-v = 0xb
-x = 0x78
-f:
-x = 0
-x = 1
-x = 2
-x = 2
-x = 2
-x = 2
-x = 2
-x = 7
-x = 8
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 16
-x = 17
-x = 18
-x = 19
-x = 20
-g:
-1 1
-1 2
-2 3
-2 4
-2 5
-3 6
-d 6
-3 7
-d 7
-3 8
-d 8
-d 9
-d 10
-h:
-i = 8
-i = 16
-i = 120
-i = 128
-i = 248
-i = 264
-i = 272
-i = 280
-i = 288
-i = 296
-i = 304
-i = 312
-488 defaults
-x = 0x1000000
-x = 0x2000000
-x = 0x3000000
-x = 0x4000000
-x = 0x5000000
-x = 0x6000000 (default)
-x = 0x7000000 (default)
-0
-1
-2
-3
-4
-5
-0
-1
-2
-3
-4
-5
+b = 0x8
+f = 0xc
+n = 0xa
+r = 0xd
+t = 0x9
+v = 0xb
+x = 0x78
+f:
+x = 0
+x = 1
+x = 2
+x = 2
+x = 2
+x = 2
+x = 2
+x = 7
+x = 8
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 16
+x = 17
+x = 18
+x = 19
+x = 20
+g:
+1 1
+1 2
+2 3
+2 4
+2 5
+3 6
+d 6
+3 7
+d 7
+3 8
+d 8
+d 9
+d 10
+h:
+i = 8
+i = 16
+i = 120
+i = 128
+i = 248
+i = 264
+i = 272
+i = 280
+i = 288
+i = 296
+i = 304
+i = 312
+488 defaults
+x = 0x1000000
+x = 0x2000000
+x = 0x3000000
+x = 0x4000000
+x = 0x5000000
+x = 0x6000000 (default)
+x = 0x7000000 (default)
+0
+1
+2
+3
+4
+5
+0
+1
+2
+3
+4
+5
diff --git a/lcc/mips/irix/tst/switch.2bk b/lcc/mips/irix/tst/switch.2bk
index 76387b3..709b419 100755
--- a/lcc/mips/irix/tst/switch.2bk
+++ b/lcc/mips/irix/tst/switch.2bk
@@ -1,5 +1,5 @@
-tst/switch.c:55: warning: missing return value
-tst/switch.c:73: warning: missing return value
-tst/switch.c:97: warning: missing return value
-tst/switch.c:112: warning: missing return value
-tst/switch.c:137: warning: missing return value
+tst/switch.c:55: warning: missing return value
+tst/switch.c:73: warning: missing return value
+tst/switch.c:97: warning: missing return value
+tst/switch.c:112: warning: missing return value
+tst/switch.c:137: warning: missing return value
diff --git a/lcc/mips/irix/tst/switch.sbk b/lcc/mips/irix/tst/switch.sbk
index 969b490..6c2357a 100755
--- a/lcc/mips/irix/tst/switch.sbk
+++ b/lcc/mips/irix/tst/switch.sbk
@@ -1,836 +1,836 @@
-.set reorder
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2800000,-4
-sw $23,16($sp)
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-la $30,L.6
-b L.5
-L.2:
-lb $4,($30)
-jal backslash
-move $24,$2
-la $4,L.7
-lb $5,($30)
-move $6,$24
-jal printf
-L.3:
-la $30,1($30)
-L.5:
-lb $24,($30)
-bne $24,$0,L.2
-jal f
-jal g
-jal h
-la $23,16777216
-b L.11
-L.8:
-move $4,$23
-jal big
-L.9:
-la $23,16777216($23)
-L.11:
-and $24,$23,117440512
-bne $24,$0,L.8
-jal limit
-move $2,$0
-L.1:
-lw $23,16($sp)
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end main
-.globl backslash
-.text
-.align 2
-.ent backslash
-backslash:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-la $24,102
-beq $4,$24,L.16
-bgt $4,$24,L.22
-L.21:
-la $24,98
-beq $4,$24,L.15
-b L.13
-L.22:
-la $24,110
-beq $4,$24,L.17
-blt $4,$24,L.13
-L.23:
-la $24,114
-beq $4,$24,L.18
-la $24,116
-beq $4,$24,L.19
-la $24,118
-beq $4,$24,L.20
-b L.13
-L.15:
-la $2,8
-b L.12
-L.16:
-la $2,12
-b L.12
-L.17:
-la $2,10
-b L.12
-L.18:
-la $2,13
-b L.12
-L.19:
-la $2,9
-b L.12
-L.20:
-la $2,11
-b L.12
-L.13:
-move $2,$4
-L.12:
-j $31
-.end backslash
-.globl f
-.text
-.align 2
-.ent f
-f:
-.frame $sp,40,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-40
-.mask 0xc2c00000,-8
-sw $22,16($sp)
-sw $23,20($sp)
-.cprestore 24
-sw $30,28($sp)
-sw $31,32($sp)
-move $23,$0
-la $4,L.25
-jal printf
-move $30,$0
-L.26:
-move $22,$30
-la $24,1
-blt $30,$24,L.30
-la $24,20
-bgt $30,$24,L.30
-sll $24,$30,2
-lw $24,L.42-4($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.42:
-.gpword L.32
-.gpword L.33
-.gpword L.30
-.gpword L.30
-.gpword L.30
-.gpword L.30
-.gpword L.34
-.gpword L.35
-.gpword L.36
-.gpword L.30
-.gpword L.30
-.gpword L.30
-.gpword L.30
-.gpword L.30
-.gpword L.30
-.gpword L.37
-.gpword L.38
-.gpword L.39
-.gpword L.40
-.gpword L.41
-.text
-L.32:
-move $23,$30
-b L.31
-L.33:
-move $23,$30
-b L.31
-L.34:
-move $23,$30
-b L.31
-L.35:
-move $23,$30
-b L.31
-L.36:
-move $23,$30
-b L.31
-L.37:
-move $23,$30
-b L.31
-L.38:
-move $23,$30
-b L.31
-L.39:
-move $23,$30
-b L.31
-L.40:
-move $23,$30
-b L.31
-L.41:
-move $23,$30
-L.30:
-L.31:
-la $4,L.44
-move $5,$23
-jal printf
-L.27:
-la $30,1($30)
-la $24,20
-ble $30,$24,L.26
-move $2,$0
-L.24:
-lw $22,16($sp)
-lw $23,20($sp)
-lw $25,24($sp)
-lw $30,28($sp)
-lw $31,32($sp)
-addu $sp,$sp,40
-j $31
-.end f
-.globl g
-.text
-.align 2
-.ent g
-g:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-la $4,L.46
-jal printf
-la $30,1
-L.47:
-la $24,1001
-blt $30,$24,L.64
-la $24,1004
-bgt $30,$24,L.65
-sll $24,$30,2
-lw $24,L.66-4004($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.66:
-.gpword L.60
-.gpword L.60
-.gpword L.60
-.gpword L.60
-.text
-L.64:
-la $24,1
-blt $30,$24,L.51
-la $24,8
-bgt $30,$24,L.51
-sll $24,$30,2
-lw $24,L.68-4($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.68:
-.gpword L.53
-.gpword L.53
-.gpword L.55
-.gpword L.55
-.gpword L.55
-.gpword L.57
-.gpword L.57
-.gpword L.57
-.text
-L.65:
-la $24,3001
-blt $30,$24,L.51
-la $24,3004
-bgt $30,$24,L.51
-sll $24,$30,2
-lw $24,L.70-12004($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.70:
-.gpword L.62
-.gpword L.62
-.gpword L.62
-.gpword L.62
-.text
-L.53:
-la $4,L.54
-move $5,$30
-jal printf
-b L.52
-L.55:
-la $4,L.56
-move $5,$30
-jal printf
-b L.52
-L.57:
-la $4,L.58
-move $5,$30
-jal printf
-L.51:
-la $4,L.59
-move $5,$30
-jal printf
-b L.52
-L.60:
-la $4,L.61
-move $5,$30
-jal printf
-b L.52
-L.62:
-la $4,L.63
-move $5,$30
-jal printf
-L.52:
-L.48:
-la $30,1($30)
-la $24,10
-ble $30,$24,L.47
-move $2,$0
-L.45:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end g
-.globl h
-.text
-.align 2
-.ent h
-h:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2800000,-4
-sw $23,16($sp)
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-move $23,$0
-la $4,L.73
-jal printf
-la $30,1
-L.74:
-la $24,264
-beq $30,$24,L.86
-bgt $30,$24,L.94
-L.93:
-la $24,120
-beq $30,$24,L.84
-bgt $30,$24,L.96
-L.95:
-la $24,8
-beq $30,$24,L.83
-blt $30,$24,L.78
-L.97:
-la $24,16
-beq $30,$24,L.82
-b L.78
-L.96:
-la $24,128
-beq $30,$24,L.80
-blt $30,$24,L.78
-L.98:
-la $24,248
-beq $30,$24,L.87
-b L.78
-L.94:
-la $24,288
-beq $30,$24,L.91
-bgt $30,$24,L.100
-L.99:
-la $24,272
-beq $30,$24,L.88
-blt $30,$24,L.78
-L.101:
-la $24,280
-beq $30,$24,L.85
-b L.78
-L.100:
-la $24,304
-beq $30,$24,L.89
-bgt $30,$24,L.103
-L.102:
-la $24,296
-beq $30,$24,L.90
-b L.78
-L.103:
-la $24,312
-beq $30,$24,L.92
-b L.78
-L.78:
-la $23,1($23)
-b L.75
-L.80:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.82:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.83:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.84:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.85:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.86:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.87:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.88:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.89:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.90:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.91:
-la $4,L.81
-move $5,$30
-jal printf
-b L.79
-L.92:
-la $4,L.81
-move $5,$30
-jal printf
-L.79:
-L.75:
-la $30,1($30)
-la $24,500
-ble $30,$24,L.74
-la $4,L.104
-move $5,$23
-jal printf
-move $2,$0
-L.72:
-lw $23,16($sp)
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end h
-.globl big
-.text
-.align 2
-.ent big
-big:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-sw $4,32($sp)
-lw $24,0+32($sp)
-and $30,$24,0x6000000
-la $15,33554432
-beq $30,$15,L.111
-bgt $30,$15,L.115
-L.114:
-la $15,-2
-beq $30,$15,L.109
-la $15,-1
-beq $30,$15,L.109
-beq $30,$0,L.109
-b L.106
-L.115:
-move $24,$30
-la $15,67108864
-beq $24,$15,L.112
-b L.106
-L.109:
-la $4,L.110
-lw $5,0+32($sp)
-jal printf
-b L.107
-L.111:
-la $4,L.110
-lw $5,0+32($sp)
-jal printf
-b L.107
-L.112:
-la $4,L.110
-lw $5,0+32($sp)
-jal printf
-b L.107
-L.106:
-la $4,L.113
-lw $5,0+32($sp)
-jal printf
-L.107:
-move $2,$0
-L.105:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end big
-.globl limit
-.text
-.align 2
-.ent limit
-limit:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-la $30,-2147483648
-L.117:
-la $24,-2147483648
-blt $30,$24,L.121
-la $15,-2147483644
-bgt $30,$15,L.121
-sll $15,$30,2
-sll $24,$24,2
-subu $24,$15,$24
-lw $24,L.134($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.134:
-.gpword L.123
-.gpword L.125
-.gpword L.127
-.gpword L.129
-.gpword L.131
-.text
-L.123:
-la $4,L.124
-jal printf
-b L.122
-L.125:
-la $4,L.126
-jal printf
-b L.122
-L.127:
-la $4,L.128
-jal printf
-b L.122
-L.129:
-la $4,L.130
-jal printf
-b L.122
-L.131:
-la $4,L.132
-jal printf
-b L.122
-L.121:
-la $4,L.133
-jal printf
-L.122:
-L.118:
-la $30,1($30)
-la $24,-2147483643
-ble $30,$24,L.117
-la $30,2147483647
-L.135:
-la $24,2147483643
-blt $30,$24,L.139
-la $15,2147483647
-bgt $30,$15,L.139
-sll $15,$30,2
-sll $24,$24,2
-subu $24,$15,$24
-lw $24,L.146($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.146:
-.gpword L.145
-.gpword L.144
-.gpword L.143
-.gpword L.142
-.gpword L.141
-.text
-L.141:
-la $4,L.124
-jal printf
-b L.140
-L.142:
-la $4,L.126
-jal printf
-b L.140
-L.143:
-la $4,L.128
-jal printf
-b L.140
-L.144:
-la $4,L.130
-jal printf
-b L.140
-L.145:
-la $4,L.132
-jal printf
-b L.140
-L.139:
-la $4,L.133
-jal printf
-L.140:
-L.136:
-subu $30,$30,1
-la $24,2147483642
-bge $30,$24,L.135
-move $2,$0
-L.116:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end limit
-.rdata
-.align 0
-L.133:
-.byte 53
-.byte 10
-.byte 0
-.align 0
-L.132:
-.byte 52
-.byte 10
-.byte 0
-.align 0
-L.130:
-.byte 51
-.byte 10
-.byte 0
-.align 0
-L.128:
-.byte 50
-.byte 10
-.byte 0
-.align 0
-L.126:
-.byte 49
-.byte 10
-.byte 0
-.align 0
-L.124:
-.byte 48
-.byte 10
-.byte 0
-.align 0
-L.113:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 32
-.byte 40
-.byte 100
-.byte 101
-.byte 102
-.byte 97
-.byte 117
-.byte 108
-.byte 116
-.byte 41
-.byte 10
-.byte 0
-.align 0
-L.110:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 0
-L.104:
-.byte 37
-.byte 100
-.byte 32
-.byte 100
-.byte 101
-.byte 102
-.byte 97
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.81:
-.byte 105
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.73:
-.byte 104
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.63:
-.byte 54
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.61:
-.byte 53
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.59:
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.58:
-.byte 51
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.56:
-.byte 50
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.54:
-.byte 49
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.46:
-.byte 103
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.44:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.25:
-.byte 102
-.byte 58
-.byte 10
-.byte 0
-.align 0
-L.7:
-.byte 37
-.byte 99
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 0
-L.6:
-.byte 98
-.byte 102
-.byte 110
-.byte 114
-.byte 116
-.byte 118
-.byte 120
-.byte 0
+.set reorder
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2800000,-4
+sw $23,16($sp)
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+la $30,L.6
+b L.5
+L.2:
+lb $4,($30)
+jal backslash
+move $24,$2
+la $4,L.7
+lb $5,($30)
+move $6,$24
+jal printf
+L.3:
+la $30,1($30)
+L.5:
+lb $24,($30)
+bne $24,$0,L.2
+jal f
+jal g
+jal h
+la $23,16777216
+b L.11
+L.8:
+move $4,$23
+jal big
+L.9:
+la $23,16777216($23)
+L.11:
+and $24,$23,117440512
+bne $24,$0,L.8
+jal limit
+move $2,$0
+L.1:
+lw $23,16($sp)
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end main
+.globl backslash
+.text
+.align 2
+.ent backslash
+backslash:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+la $24,102
+beq $4,$24,L.16
+bgt $4,$24,L.22
+L.21:
+la $24,98
+beq $4,$24,L.15
+b L.13
+L.22:
+la $24,110
+beq $4,$24,L.17
+blt $4,$24,L.13
+L.23:
+la $24,114
+beq $4,$24,L.18
+la $24,116
+beq $4,$24,L.19
+la $24,118
+beq $4,$24,L.20
+b L.13
+L.15:
+la $2,8
+b L.12
+L.16:
+la $2,12
+b L.12
+L.17:
+la $2,10
+b L.12
+L.18:
+la $2,13
+b L.12
+L.19:
+la $2,9
+b L.12
+L.20:
+la $2,11
+b L.12
+L.13:
+move $2,$4
+L.12:
+j $31
+.end backslash
+.globl f
+.text
+.align 2
+.ent f
+f:
+.frame $sp,40,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-40
+.mask 0xc2c00000,-8
+sw $22,16($sp)
+sw $23,20($sp)
+.cprestore 24
+sw $30,28($sp)
+sw $31,32($sp)
+move $23,$0
+la $4,L.25
+jal printf
+move $30,$0
+L.26:
+move $22,$30
+la $24,1
+blt $30,$24,L.30
+la $24,20
+bgt $30,$24,L.30
+sll $24,$30,2
+lw $24,L.42-4($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.42:
+.gpword L.32
+.gpword L.33
+.gpword L.30
+.gpword L.30
+.gpword L.30
+.gpword L.30
+.gpword L.34
+.gpword L.35
+.gpword L.36
+.gpword L.30
+.gpword L.30
+.gpword L.30
+.gpword L.30
+.gpword L.30
+.gpword L.30
+.gpword L.37
+.gpword L.38
+.gpword L.39
+.gpword L.40
+.gpword L.41
+.text
+L.32:
+move $23,$30
+b L.31
+L.33:
+move $23,$30
+b L.31
+L.34:
+move $23,$30
+b L.31
+L.35:
+move $23,$30
+b L.31
+L.36:
+move $23,$30
+b L.31
+L.37:
+move $23,$30
+b L.31
+L.38:
+move $23,$30
+b L.31
+L.39:
+move $23,$30
+b L.31
+L.40:
+move $23,$30
+b L.31
+L.41:
+move $23,$30
+L.30:
+L.31:
+la $4,L.44
+move $5,$23
+jal printf
+L.27:
+la $30,1($30)
+la $24,20
+ble $30,$24,L.26
+move $2,$0
+L.24:
+lw $22,16($sp)
+lw $23,20($sp)
+lw $25,24($sp)
+lw $30,28($sp)
+lw $31,32($sp)
+addu $sp,$sp,40
+j $31
+.end f
+.globl g
+.text
+.align 2
+.ent g
+g:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+la $4,L.46
+jal printf
+la $30,1
+L.47:
+la $24,1001
+blt $30,$24,L.64
+la $24,1004
+bgt $30,$24,L.65
+sll $24,$30,2
+lw $24,L.66-4004($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.66:
+.gpword L.60
+.gpword L.60
+.gpword L.60
+.gpword L.60
+.text
+L.64:
+la $24,1
+blt $30,$24,L.51
+la $24,8
+bgt $30,$24,L.51
+sll $24,$30,2
+lw $24,L.68-4($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.68:
+.gpword L.53
+.gpword L.53
+.gpword L.55
+.gpword L.55
+.gpword L.55
+.gpword L.57
+.gpword L.57
+.gpword L.57
+.text
+L.65:
+la $24,3001
+blt $30,$24,L.51
+la $24,3004
+bgt $30,$24,L.51
+sll $24,$30,2
+lw $24,L.70-12004($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.70:
+.gpword L.62
+.gpword L.62
+.gpword L.62
+.gpword L.62
+.text
+L.53:
+la $4,L.54
+move $5,$30
+jal printf
+b L.52
+L.55:
+la $4,L.56
+move $5,$30
+jal printf
+b L.52
+L.57:
+la $4,L.58
+move $5,$30
+jal printf
+L.51:
+la $4,L.59
+move $5,$30
+jal printf
+b L.52
+L.60:
+la $4,L.61
+move $5,$30
+jal printf
+b L.52
+L.62:
+la $4,L.63
+move $5,$30
+jal printf
+L.52:
+L.48:
+la $30,1($30)
+la $24,10
+ble $30,$24,L.47
+move $2,$0
+L.45:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end g
+.globl h
+.text
+.align 2
+.ent h
+h:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2800000,-4
+sw $23,16($sp)
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+move $23,$0
+la $4,L.73
+jal printf
+la $30,1
+L.74:
+la $24,264
+beq $30,$24,L.86
+bgt $30,$24,L.94
+L.93:
+la $24,120
+beq $30,$24,L.84
+bgt $30,$24,L.96
+L.95:
+la $24,8
+beq $30,$24,L.83
+blt $30,$24,L.78
+L.97:
+la $24,16
+beq $30,$24,L.82
+b L.78
+L.96:
+la $24,128
+beq $30,$24,L.80
+blt $30,$24,L.78
+L.98:
+la $24,248
+beq $30,$24,L.87
+b L.78
+L.94:
+la $24,288
+beq $30,$24,L.91
+bgt $30,$24,L.100
+L.99:
+la $24,272
+beq $30,$24,L.88
+blt $30,$24,L.78
+L.101:
+la $24,280
+beq $30,$24,L.85
+b L.78
+L.100:
+la $24,304
+beq $30,$24,L.89
+bgt $30,$24,L.103
+L.102:
+la $24,296
+beq $30,$24,L.90
+b L.78
+L.103:
+la $24,312
+beq $30,$24,L.92
+b L.78
+L.78:
+la $23,1($23)
+b L.75
+L.80:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.82:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.83:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.84:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.85:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.86:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.87:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.88:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.89:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.90:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.91:
+la $4,L.81
+move $5,$30
+jal printf
+b L.79
+L.92:
+la $4,L.81
+move $5,$30
+jal printf
+L.79:
+L.75:
+la $30,1($30)
+la $24,500
+ble $30,$24,L.74
+la $4,L.104
+move $5,$23
+jal printf
+move $2,$0
+L.72:
+lw $23,16($sp)
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end h
+.globl big
+.text
+.align 2
+.ent big
+big:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+sw $4,32($sp)
+lw $24,0+32($sp)
+and $30,$24,0x6000000
+la $15,33554432
+beq $30,$15,L.111
+bgt $30,$15,L.115
+L.114:
+la $15,-2
+beq $30,$15,L.109
+la $15,-1
+beq $30,$15,L.109
+beq $30,$0,L.109
+b L.106
+L.115:
+move $24,$30
+la $15,67108864
+beq $24,$15,L.112
+b L.106
+L.109:
+la $4,L.110
+lw $5,0+32($sp)
+jal printf
+b L.107
+L.111:
+la $4,L.110
+lw $5,0+32($sp)
+jal printf
+b L.107
+L.112:
+la $4,L.110
+lw $5,0+32($sp)
+jal printf
+b L.107
+L.106:
+la $4,L.113
+lw $5,0+32($sp)
+jal printf
+L.107:
+move $2,$0
+L.105:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end big
+.globl limit
+.text
+.align 2
+.ent limit
+limit:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+la $30,-2147483648
+L.117:
+la $24,-2147483648
+blt $30,$24,L.121
+la $15,-2147483644
+bgt $30,$15,L.121
+sll $15,$30,2
+sll $24,$24,2
+subu $24,$15,$24
+lw $24,L.134($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.134:
+.gpword L.123
+.gpword L.125
+.gpword L.127
+.gpword L.129
+.gpword L.131
+.text
+L.123:
+la $4,L.124
+jal printf
+b L.122
+L.125:
+la $4,L.126
+jal printf
+b L.122
+L.127:
+la $4,L.128
+jal printf
+b L.122
+L.129:
+la $4,L.130
+jal printf
+b L.122
+L.131:
+la $4,L.132
+jal printf
+b L.122
+L.121:
+la $4,L.133
+jal printf
+L.122:
+L.118:
+la $30,1($30)
+la $24,-2147483643
+ble $30,$24,L.117
+la $30,2147483647
+L.135:
+la $24,2147483643
+blt $30,$24,L.139
+la $15,2147483647
+bgt $30,$15,L.139
+sll $15,$30,2
+sll $24,$24,2
+subu $24,$15,$24
+lw $24,L.146($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.146:
+.gpword L.145
+.gpword L.144
+.gpword L.143
+.gpword L.142
+.gpword L.141
+.text
+L.141:
+la $4,L.124
+jal printf
+b L.140
+L.142:
+la $4,L.126
+jal printf
+b L.140
+L.143:
+la $4,L.128
+jal printf
+b L.140
+L.144:
+la $4,L.130
+jal printf
+b L.140
+L.145:
+la $4,L.132
+jal printf
+b L.140
+L.139:
+la $4,L.133
+jal printf
+L.140:
+L.136:
+subu $30,$30,1
+la $24,2147483642
+bge $30,$24,L.135
+move $2,$0
+L.116:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end limit
+.rdata
+.align 0
+L.133:
+.byte 53
+.byte 10
+.byte 0
+.align 0
+L.132:
+.byte 52
+.byte 10
+.byte 0
+.align 0
+L.130:
+.byte 51
+.byte 10
+.byte 0
+.align 0
+L.128:
+.byte 50
+.byte 10
+.byte 0
+.align 0
+L.126:
+.byte 49
+.byte 10
+.byte 0
+.align 0
+L.124:
+.byte 48
+.byte 10
+.byte 0
+.align 0
+L.113:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 32
+.byte 40
+.byte 100
+.byte 101
+.byte 102
+.byte 97
+.byte 117
+.byte 108
+.byte 116
+.byte 41
+.byte 10
+.byte 0
+.align 0
+L.110:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 0
+L.104:
+.byte 37
+.byte 100
+.byte 32
+.byte 100
+.byte 101
+.byte 102
+.byte 97
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.81:
+.byte 105
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.73:
+.byte 104
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.63:
+.byte 54
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.61:
+.byte 53
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.59:
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.58:
+.byte 51
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.56:
+.byte 50
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.54:
+.byte 49
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.46:
+.byte 103
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.44:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.25:
+.byte 102
+.byte 58
+.byte 10
+.byte 0
+.align 0
+L.7:
+.byte 37
+.byte 99
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 0
+L.6:
+.byte 98
+.byte 102
+.byte 110
+.byte 114
+.byte 116
+.byte 118
+.byte 120
+.byte 0
diff --git a/lcc/mips/irix/tst/wf1.1bk b/lcc/mips/irix/tst/wf1.1bk
index 095e087..a846267 100755
--- a/lcc/mips/irix/tst/wf1.1bk
+++ b/lcc/mips/irix/tst/wf1.1bk
@@ -1,74 +1,74 @@
-5 a
-2 and
-5 buf
-16 c
-8 char
-1 compare
-4 cond
-5 count
-1 d
-1 die
-3 else
-1 entry
-1 eof
-4 err
-1 error
-1 exit
-1 folded
-1 for
-1 free
-1 frequencies
-1 frequency
-1 get
-2 getchar
-3 getword
-14 if
-2 in
-1 index
-1 input
-1 install
-8 int
-1 into
-1 is
-4 isletter
-1 it
-1 itself
-5 left
-1 letter
-7 lookup
-1 main
-2 malloc
-1 message
-2 n
-1 necessary
-12 next
-9 node
-4 of
-1 on
-1 or
-1 otherwise
-2 out
-8 p
-3 print
-2 printf
-16 return
-5 right
-4 root
-25 s
-2 storage
-3 strcmp
-1 strcpy
-1 strlen
-8 struct
-1 structures
-2 subtree
-1 t
-5 tprint
-9 tree
-1 uses
-1 version
-1 wf
-3 while
-21 word
-9 words
-2 z
+5 a
+2 and
+5 buf
+16 c
+8 char
+1 compare
+4 cond
+5 count
+1 d
+1 die
+3 else
+1 entry
+1 eof
+4 err
+1 error
+1 exit
+1 folded
+1 for
+1 free
+1 frequencies
+1 frequency
+1 get
+2 getchar
+3 getword
+14 if
+2 in
+1 index
+1 input
+1 install
+8 int
+1 into
+1 is
+4 isletter
+1 it
+1 itself
+5 left
+1 letter
+7 lookup
+1 main
+2 malloc
+1 message
+2 n
+1 necessary
+12 next
+9 node
+4 of
+1 on
+1 or
+1 otherwise
+2 out
+8 p
+3 print
+2 printf
+16 return
+5 right
+4 root
+25 s
+2 storage
+3 strcmp
+1 strcpy
+1 strlen
+8 struct
+1 structures
+2 subtree
+1 t
+5 tprint
+9 tree
+1 uses
+1 version
+1 wf
+3 while
+21 word
+9 words
+2 z
diff --git a/lcc/mips/irix/tst/wf1.2bk b/lcc/mips/irix/tst/wf1.2bk
index 0e7a8a6..190e4a1 100755
--- a/lcc/mips/irix/tst/wf1.2bk
+++ b/lcc/mips/irix/tst/wf1.2bk
@@ -1,2 +1,2 @@
-tst/wf1.c:29: warning: missing return value
-tst/wf1.c:87: warning: missing return value
+tst/wf1.c:29: warning: missing return value
+tst/wf1.c:87: warning: missing return value
diff --git a/lcc/mips/irix/tst/wf1.sbk b/lcc/mips/irix/tst/wf1.sbk
index 9892c1c..7313c01 100755
--- a/lcc/mips/irix/tst/wf1.sbk
+++ b/lcc/mips/irix/tst/wf1.sbk
@@ -1,378 +1,378 @@
-.set reorder
-.globl main
-.text
-.text
-.align 2
-.ent main
-main:
-.frame $sp,48,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-48
-.mask 0x82000000,-28
-.cprestore 16
-sw $31,20($sp)
-sw $0,-24+48($sp)
-sw $0,next
-b L.3
-L.2:
-la $4,-20+48($sp)
-la $5,-24+48($sp)
-jal lookup
-lw $15,($2)
-la $15,1($15)
-sw $15,($2)
-L.3:
-la $4,-20+48($sp)
-jal getword
-bne $2,$0,L.2
-lw $4,-24+48($sp)
-jal tprint
-move $2,$0
-L.1:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,48
-j $31
-.end main
-.globl err
-.text
-.align 2
-.ent err
-err:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-la $4,L.6
-lw $5,0+24($sp)
-jal printf
-la $4,1
-jal exit
-move $2,$0
-L.5:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end err
-.globl getword
-.text
-.align 2
-.ent getword
-getword:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2800000,-4
-sw $23,16($sp)
-.cprestore 20
-sw $30,24($sp)
-sw $31,28($sp)
-sw $4,32($sp)
-L.8:
-L.9:
-jal getchar
-move $24,$2
-move $30,$24
-la $15,-1
-beq $24,$15,L.11
-move $4,$30
-jal isletter
-beq $2,$0,L.8
-L.11:
-lw $23,0+32($sp)
-b L.15
-L.12:
-move $24,$23
-la $23,1($24)
-move $15,$30
-sb $15,($24)
-L.13:
-jal getchar
-move $30,$2
-L.15:
-move $4,$30
-jal isletter
-move $30,$2
-bne $2,$0,L.12
-sb $0,($23)
-move $24,$23
-lw $15,0+32($sp)
-bleu $24,$15,L.16
-la $2,1
-b L.7
-L.16:
-move $2,$0
-L.7:
-lw $23,16($sp)
-lw $25,20($sp)
-lw $30,24($sp)
-lw $31,28($sp)
-addu $sp,$sp,32
-j $31
-.end getword
-.globl isletter
-.text
-.align 2
-.ent isletter
-isletter:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-la $24,65
-blt $4,$24,L.19
-la $24,90
-bgt $4,$24,L.19
-la $4,32($4)
-L.19:
-la $24,97
-blt $4,$24,L.21
-la $24,122
-bgt $4,$24,L.21
-move $2,$4
-b L.18
-L.21:
-move $2,$0
-L.18:
-j $31
-.end isletter
-.globl lookup
-.text
-.align 2
-.ent lookup
-lookup:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-sw $4,32($sp)
-move $30,$5
-lw $24,($30)
-beq $24,$0,L.24
-lw $4,0+32($sp)
-lw $24,($30)
-lw $5,12($24)
-jal strcmp
-sw $2,-4+32($sp)
-lw $24,-4+32($sp)
-bge $24,$0,L.26
-lw $4,0+32($sp)
-lw $24,($30)
-la $5,4($24)
-jal lookup
-move $24,$2
-b L.23
-L.26:
-lw $24,-4+32($sp)
-ble $24,$0,L.28
-lw $4,0+32($sp)
-lw $24,($30)
-la $5,8($24)
-jal lookup
-move $24,$2
-b L.23
-L.28:
-lw $2,($30)
-b L.23
-L.24:
-lw $24,next
-la $15,2000
-blt $24,$15,L.30
-la $4,L.32
-jal err
-L.30:
-lw $24,next
-sll $24,$24,4
-sw $0,words($24)
-lw $24,next
-sll $24,$24,4
-sw $0,words+8($24)
-sw $0,words+4($24)
-lw $4,0+32($sp)
-jal strlen
-move $24,$2
-la $4,1($24)
-jal malloc
-lw $15,next
-sll $15,$15,4
-sw $2,words+12($15)
-lw $24,next
-sll $24,$24,4
-lw $24,words+12($24)
-bne $24,$0,L.36
-la $4,L.39
-jal err
-L.36:
-lw $24,next
-sll $24,$24,4
-lw $4,words+12($24)
-lw $5,0+32($sp)
-jal strcpy
-lw $24,next
-la $15,1($24)
-sw $15,next
-sll $24,$24,4
-la $24,words($24)
-sw $24,($30)
-move $2,$24
-L.23:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end lookup
-.globl tprint
-.text
-.align 2
-.ent tprint
-tprint:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-move $30,$4
-move $24,$30
-beq $24,$0,L.42
-lw $4,4($30)
-jal tprint
-la $4,L.44
-lw $5,($30)
-lw $6,12($30)
-jal printf
-lw $4,8($30)
-jal tprint
-L.42:
-move $2,$0
-L.41:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end tprint
-.globl strcmp
-.text
-.align 2
-.ent strcmp
-strcmp:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-b L.47
-L.46:
-move $24,$4
-la $4,1($24)
-lb $24,($24)
-bne $24,$0,L.49
-move $2,$0
-b L.45
-L.49:
-la $5,1($5)
-L.47:
-lb $24,($4)
-lb $15,($5)
-beq $24,$15,L.46
-lb $24,($4)
-bne $24,$0,L.51
-la $2,-1
-b L.45
-L.51:
-lb $24,($5)
-bne $24,$0,L.53
-la $2,1
-b L.45
-L.53:
-lb $24,($4)
-lb $15,($5)
-subu $2,$24,$15
-L.45:
-j $31
-.end strcmp
-.globl next
-.comm next,4
-.globl words
-.comm words,32000
-.rdata
-.align 0
-L.44:
-.byte 37
-.byte 100
-.byte 9
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.39:
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 119
-.byte 111
-.byte 114
-.byte 100
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 97
-.byte 103
-.byte 101
-.byte 0
-.align 0
-L.32:
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 110
-.byte 111
-.byte 100
-.byte 101
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 97
-.byte 103
-.byte 101
-.byte 0
-.align 0
-L.6:
-.byte 63
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
+.set reorder
+.globl main
+.text
+.text
+.align 2
+.ent main
+main:
+.frame $sp,48,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-48
+.mask 0x82000000,-28
+.cprestore 16
+sw $31,20($sp)
+sw $0,-24+48($sp)
+sw $0,next
+b L.3
+L.2:
+la $4,-20+48($sp)
+la $5,-24+48($sp)
+jal lookup
+lw $15,($2)
+la $15,1($15)
+sw $15,($2)
+L.3:
+la $4,-20+48($sp)
+jal getword
+bne $2,$0,L.2
+lw $4,-24+48($sp)
+jal tprint
+move $2,$0
+L.1:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,48
+j $31
+.end main
+.globl err
+.text
+.align 2
+.ent err
+err:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+la $4,L.6
+lw $5,0+24($sp)
+jal printf
+la $4,1
+jal exit
+move $2,$0
+L.5:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end err
+.globl getword
+.text
+.align 2
+.ent getword
+getword:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2800000,-4
+sw $23,16($sp)
+.cprestore 20
+sw $30,24($sp)
+sw $31,28($sp)
+sw $4,32($sp)
+L.8:
+L.9:
+jal getchar
+move $24,$2
+move $30,$24
+la $15,-1
+beq $24,$15,L.11
+move $4,$30
+jal isletter
+beq $2,$0,L.8
+L.11:
+lw $23,0+32($sp)
+b L.15
+L.12:
+move $24,$23
+la $23,1($24)
+move $15,$30
+sb $15,($24)
+L.13:
+jal getchar
+move $30,$2
+L.15:
+move $4,$30
+jal isletter
+move $30,$2
+bne $2,$0,L.12
+sb $0,($23)
+move $24,$23
+lw $15,0+32($sp)
+bleu $24,$15,L.16
+la $2,1
+b L.7
+L.16:
+move $2,$0
+L.7:
+lw $23,16($sp)
+lw $25,20($sp)
+lw $30,24($sp)
+lw $31,28($sp)
+addu $sp,$sp,32
+j $31
+.end getword
+.globl isletter
+.text
+.align 2
+.ent isletter
+isletter:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+la $24,65
+blt $4,$24,L.19
+la $24,90
+bgt $4,$24,L.19
+la $4,32($4)
+L.19:
+la $24,97
+blt $4,$24,L.21
+la $24,122
+bgt $4,$24,L.21
+move $2,$4
+b L.18
+L.21:
+move $2,$0
+L.18:
+j $31
+.end isletter
+.globl lookup
+.text
+.align 2
+.ent lookup
+lookup:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+sw $4,32($sp)
+move $30,$5
+lw $24,($30)
+beq $24,$0,L.24
+lw $4,0+32($sp)
+lw $24,($30)
+lw $5,12($24)
+jal strcmp
+sw $2,-4+32($sp)
+lw $24,-4+32($sp)
+bge $24,$0,L.26
+lw $4,0+32($sp)
+lw $24,($30)
+la $5,4($24)
+jal lookup
+move $24,$2
+b L.23
+L.26:
+lw $24,-4+32($sp)
+ble $24,$0,L.28
+lw $4,0+32($sp)
+lw $24,($30)
+la $5,8($24)
+jal lookup
+move $24,$2
+b L.23
+L.28:
+lw $2,($30)
+b L.23
+L.24:
+lw $24,next
+la $15,2000
+blt $24,$15,L.30
+la $4,L.32
+jal err
+L.30:
+lw $24,next
+sll $24,$24,4
+sw $0,words($24)
+lw $24,next
+sll $24,$24,4
+sw $0,words+8($24)
+sw $0,words+4($24)
+lw $4,0+32($sp)
+jal strlen
+move $24,$2
+la $4,1($24)
+jal malloc
+lw $15,next
+sll $15,$15,4
+sw $2,words+12($15)
+lw $24,next
+sll $24,$24,4
+lw $24,words+12($24)
+bne $24,$0,L.36
+la $4,L.39
+jal err
+L.36:
+lw $24,next
+sll $24,$24,4
+lw $4,words+12($24)
+lw $5,0+32($sp)
+jal strcpy
+lw $24,next
+la $15,1($24)
+sw $15,next
+sll $24,$24,4
+la $24,words($24)
+sw $24,($30)
+move $2,$24
+L.23:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end lookup
+.globl tprint
+.text
+.align 2
+.ent tprint
+tprint:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+move $30,$4
+move $24,$30
+beq $24,$0,L.42
+lw $4,4($30)
+jal tprint
+la $4,L.44
+lw $5,($30)
+lw $6,12($30)
+jal printf
+lw $4,8($30)
+jal tprint
+L.42:
+move $2,$0
+L.41:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end tprint
+.globl strcmp
+.text
+.align 2
+.ent strcmp
+strcmp:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+b L.47
+L.46:
+move $24,$4
+la $4,1($24)
+lb $24,($24)
+bne $24,$0,L.49
+move $2,$0
+b L.45
+L.49:
+la $5,1($5)
+L.47:
+lb $24,($4)
+lb $15,($5)
+beq $24,$15,L.46
+lb $24,($4)
+bne $24,$0,L.51
+la $2,-1
+b L.45
+L.51:
+lb $24,($5)
+bne $24,$0,L.53
+la $2,1
+b L.45
+L.53:
+lb $24,($4)
+lb $15,($5)
+subu $2,$24,$15
+L.45:
+j $31
+.end strcmp
+.globl next
+.comm next,4
+.globl words
+.comm words,32000
+.rdata
+.align 0
+L.44:
+.byte 37
+.byte 100
+.byte 9
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.39:
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 119
+.byte 111
+.byte 114
+.byte 100
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 97
+.byte 103
+.byte 101
+.byte 0
+.align 0
+L.32:
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 110
+.byte 111
+.byte 100
+.byte 101
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 97
+.byte 103
+.byte 101
+.byte 0
+.align 0
+L.6:
+.byte 63
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
diff --git a/lcc/mips/irix/tst/yacc.1bk b/lcc/mips/irix/tst/yacc.1bk
index b08a02f..60de9b5 100755
--- a/lcc/mips/irix/tst/yacc.1bk
+++ b/lcc/mips/irix/tst/yacc.1bk
@@ -1,10 +1,10 @@
-a
-b
-load
-negate
-push 5
-c
-load
-multiply
-add
-store
+a
+b
+load
+negate
+push 5
+c
+load
+multiply
+add
+store
diff --git a/lcc/mips/irix/tst/yacc.2bk b/lcc/mips/irix/tst/yacc.2bk
index a84aa5b..9a4fd61 100755
--- a/lcc/mips/irix/tst/yacc.2bk
+++ b/lcc/mips/irix/tst/yacc.2bk
@@ -1,3 +1,3 @@
-tst/yacc.c:345: warning: missing return value
-tst/yacc.c:349: warning: missing return value
-tst/yacc.c:359: warning: missing return value
+tst/yacc.c:345: warning: missing return value
+tst/yacc.c:349: warning: missing return value
+tst/yacc.c:359: warning: missing return value
diff --git a/lcc/mips/irix/tst/yacc.sbk b/lcc/mips/irix/tst/yacc.sbk
index bf9ced2..0042c3c 100755
--- a/lcc/mips/irix/tst/yacc.sbk
+++ b/lcc/mips/irix/tst/yacc.sbk
@@ -1,2236 +1,2236 @@
-.set reorder
-.globl yyin
-.sdata
-.align 2
-yyin:
-.word _iob
-.globl yyout
-.sdata
-.align 2
-yyout:
-.word _iob+16
-.globl yylex
-.text
-.text
-.align 2
-.ent yylex
-yylex:
-.frame $sp,32,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-32
-.mask 0xc2000000,-8
-.cprestore 16
-sw $30,20($sp)
-sw $31,24($sp)
-b L.4
-L.3:
-L.6:
-la $24,-1
-blt $30,$24,L.7
-la $24,4
-bgt $30,$24,L.7
-sll $24,$30,2
-lw $24,L.18+4($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.18:
-.gpword L.8
-.gpword L.9
-.gpword L.12
-.gpword L.13
-.gpword L.8
-.gpword L.15
-.text
-L.9:
-jal yywrap
-beq $2,$0,L.8
-move $2,$0
-b L.2
-L.12:
-la $2,257
-b L.2
-L.13:
-la $2,258
-b L.2
-L.15:
-lb $2,yytext
-b L.2
-L.7:
-lw $4,yyout
-la $5,L.17
-move $6,$30
-jal fprintf
-L.8:
-L.4:
-jal yylook
-move $30,$2
-bge $2,$0,L.3
-move $2,$0
-L.2:
-lw $25,16($sp)
-lw $30,20($sp)
-lw $31,24($sp)
-addu $sp,$sp,32
-j $31
-.end yylex
-.globl yyvstop
-.data
-.align 2
-yyvstop:
-.word 0x0
-.word 0x4
-.word 0x0
-.word 0x3
-.word 0x4
-.word 0x0
-.word 0x2
-.word 0x4
-.word 0x0
-.word 0x1
-.word 0x4
-.word 0x0
-.word 0x2
-.word 0x0
-.word 0x1
-.word 0x0
-.word 0x0
-.globl yycrank
-.data
-.align 0
-yycrank:
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x3
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x4
-.byte 0x1
-.byte 0x3
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x5
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x6
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.globl yysvec
-.data
-.align 2
-yysvec:
-.word 0x0
-.word 0x0
-.word 0x0
-.word yycrank-2
-.word 0x0
-.word 0x0
-.word yycrank
-.word yysvec+12
-.word 0x0
-.word yycrank
-.word 0x0
-.word yyvstop+4
-.word yycrank
-.word 0x0
-.word yyvstop+12
-.word yycrank+4
-.word 0x0
-.word yyvstop+24
-.word yycrank+38
-.word 0x0
-.word yyvstop+36
-.word yycrank
-.word yysvec+60
-.word yyvstop+48
-.word yycrank
-.word yysvec+72
-.word yyvstop+56
-.word 0x0
-.word 0x0
-.word 0x0
-.globl yytop
-.sdata
-.align 2
-yytop:
-.word yycrank+282
-.globl yybgin
-.sdata
-.align 2
-yybgin:
-.word yysvec+12
-.globl yymatch
-.data
-.align 0
-yymatch:
-.byte 0
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 9
-.byte 10
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 9
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 65
-.byte 1
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 0
-.globl yyextra
-.data
-.align 0
-yyextra:
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.globl yylineno
-.sdata
-.align 2
-yylineno:
-.word 0x1
-.globl yysptr
-.sdata
-.align 2
-yysptr:
-.word yysbuf
-.globl yyprevious
-.sdata
-.align 2
-yyprevious:
-.word 0xa
-.globl yylook
-.text
-.text
-.align 2
-.ent yylook
-yylook:
-.frame $sp,72,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-72
-.mask 0xc2ff0000,-16
-sw $16,16($sp)
-sw $17,20($sp)
-sw $18,24($sp)
-sw $19,28($sp)
-sw $20,32($sp)
-sw $21,36($sp)
-sw $22,40($sp)
-sw $23,44($sp)
-.cprestore 48
-sw $30,52($sp)
-sw $31,56($sp)
-lw $24,yymorfg
-bne $24,$0,L.35
-la $21,yytext
-b L.36
-L.35:
-sw $0,yymorfg
-lw $24,yyleng
-la $21,yytext($24)
-L.36:
-L.37:
-la $23,yylstate
-lw $24,yybgin
-move $30,$24
-sw $24,yyestate
-lw $24,yyprevious
-la $15,10
-bne $24,$15,L.41
-la $30,12($30)
-L.41:
-L.43:
-lw $22,($30)
-move $24,$22
-la $15,yycrank
-bne $24,$15,L.47
-lw $18,4($30)
-move $24,$18
-bne $24,$0,L.49
-b L.94
-L.49:
-lw $24,($18)
-la $15,yycrank
-bne $24,$15,L.51
-b L.94
-L.51:
-L.47:
-move $24,$21
-sw $24,-12+72($sp)
-la $21,1($24)
-lw $15,yysptr
-la $14,yysbuf
-bleu $15,$14,L.61
-lw $15,yysptr
-la $15,-1($15)
-sw $15,yysptr
-lb $15,($15)
-sw $15,-4+72($sp)
-b L.62
-L.61:
-lw $15,yyin
-lw $14,($15)
-subu $14,$14,1
-sw $14,($15)
-bge $14,$0,L.63
-lw $4,yyin
-jal _filbuf
-move $24,$2
-sw $24,-8+72($sp)
-b L.64
-L.63:
-lw $24,yyin
-la $24,4($24)
-lw $15,($24)
-la $14,1($15)
-sw $14,($24)
-lbu $24,($15)
-sw $24,-8+72($sp)
-L.64:
-lw $24,-8+72($sp)
-sw $24,-4+72($sp)
-L.62:
-lw $24,-4+72($sp)
-sw $24,yytchar
-la $15,10
-bne $24,$15,L.59
-lw $24,yylineno
-la $24,1($24)
-sw $24,yylineno
-lw $16,yytchar
-b L.60
-L.59:
-lw $16,yytchar
-L.60:
-la $24,-1
-bne $16,$24,L.57
-move $17,$0
-b L.58
-L.57:
-lw $17,yytchar
-L.58:
-move $20,$17
-move $24,$17
-lw $15,-12+72($sp)
-sb $24,($15)
-L.65:
-move $19,$22
-move $24,$22
-la $15,yycrank
-bleu $24,$15,L.66
-sll $24,$20,1
-addu $22,$24,$19
-move $24,$22
-lw $15,yytop
-bgtu $24,$15,L.67
-la $24,12
-lb $15,($22)
-mul $24,$24,$15
-la $24,yysvec($24)
-move $15,$30
-bne $24,$15,L.67
-la $24,yysvec
-la $15,12
-lb $14,1($22)
-mul $15,$15,$14
-la $15,yysvec($15)
-bne $15,$24,L.70
-la $24,-1($21)
-move $21,$24
-lb $24,($24)
-sw $24,yytchar
-lw $24,yytchar
-la $15,10
-bne $24,$15,L.72
-lw $24,yylineno
-subu $24,$24,1
-sw $24,yylineno
-L.72:
-lw $24,yysptr
-la $15,1($24)
-sw $15,yysptr
-lw $15,yytchar
-sb $15,($24)
-b L.94
-L.70:
-move $24,$23
-la $23,4($24)
-la $15,12
-lb $14,1($22)
-mul $15,$15,$14
-la $15,yysvec($15)
-move $30,$15
-sw $15,($24)
-b L.43
-L.66:
-move $24,$22
-la $15,yycrank
-bgeu $24,$15,L.75
-la $24,yycrank
-move $15,$22
-subu $24,$24,$15
-la $15,2
-div $24,$24,$15
-sll $24,$24,1
-la $24,yycrank($24)
-move $19,$24
-move $22,$24
-sll $24,$20,1
-addu $22,$24,$22
-move $24,$22
-lw $15,yytop
-bgtu $24,$15,L.77
-la $24,12
-lb $15,($22)
-mul $24,$24,$15
-la $24,yysvec($24)
-move $15,$30
-bne $24,$15,L.77
-la $24,yysvec
-la $15,12
-lb $14,1($22)
-mul $15,$15,$14
-la $15,yysvec($15)
-bne $15,$24,L.79
-la $24,-1($21)
-move $21,$24
-lb $24,($24)
-sw $24,yytchar
-lw $24,yytchar
-la $15,10
-bne $24,$15,L.81
-lw $24,yylineno
-subu $24,$24,1
-sw $24,yylineno
-L.81:
-lw $24,yysptr
-la $15,1($24)
-sw $15,yysptr
-lw $15,yytchar
-sb $15,($24)
-b L.94
-L.79:
-move $24,$23
-la $23,4($24)
-la $15,12
-lb $14,1($22)
-mul $15,$15,$14
-la $15,yysvec($15)
-move $30,$15
-sw $15,($24)
-b L.43
-L.77:
-lb $24,yymatch($20)
-sll $24,$24,1
-addu $22,$24,$19
-move $24,$22
-lw $15,yytop
-bgtu $24,$15,L.83
-la $24,12
-lb $15,($22)
-mul $24,$24,$15
-la $24,yysvec($24)
-move $15,$30
-bne $24,$15,L.83
-la $24,yysvec
-la $15,12
-lb $14,1($22)
-mul $15,$15,$14
-la $15,yysvec($15)
-bne $15,$24,L.85
-la $24,-1($21)
-move $21,$24
-lb $24,($24)
-sw $24,yytchar
-lw $24,yytchar
-la $15,10
-bne $24,$15,L.87
-lw $24,yylineno
-subu $24,$24,1
-sw $24,yylineno
-L.87:
-lw $24,yysptr
-la $15,1($24)
-sw $15,yysptr
-lw $15,yytchar
-sb $15,($24)
-b L.94
-L.85:
-move $24,$23
-la $23,4($24)
-la $15,12
-lb $14,1($22)
-mul $15,$15,$14
-la $15,yysvec($15)
-move $30,$15
-sw $15,($24)
-b L.43
-L.83:
-L.75:
-L.67:
-lw $24,4($30)
-move $30,$24
-beq $24,$0,L.89
-lw $24,($30)
-move $22,$24
-la $15,yycrank
-beq $24,$15,L.89
-b L.65
-L.89:
-la $24,-1($21)
-move $21,$24
-lb $24,($24)
-sw $24,yytchar
-lw $24,yytchar
-la $15,10
-bne $24,$15,L.91
-lw $24,yylineno
-subu $24,$24,1
-sw $24,yylineno
-L.91:
-lw $24,yysptr
-la $15,1($24)
-sw $15,yysptr
-lw $15,yytchar
-sb $15,($24)
-b L.94
-L.93:
-move $24,$21
-la $21,-1($24)
-sb $0,($24)
-lw $24,($23)
-move $15,$0
-move $14,$24
-beq $14,$15,L.96
-lw $24,8($24)
-sw $24,yyfnd
-beq $24,$15,L.96
-lw $24,yyfnd
-lw $24,($24)
-ble $24,$0,L.96
-sw $23,yyolsp
-lw $24,yyfnd
-lw $24,($24)
-lb $24,yyextra($24)
-beq $24,$0,L.98
-b L.101
-L.100:
-la $23,-4($23)
-move $24,$21
-la $21,-1($24)
-lb $24,($24)
-sw $24,yytchar
-lw $24,yytchar
-la $15,10
-bne $24,$15,L.103
-lw $24,yylineno
-subu $24,$24,1
-sw $24,yylineno
-L.103:
-lw $24,yysptr
-la $15,1($24)
-sw $15,yysptr
-lw $15,yytchar
-sb $15,($24)
-L.101:
-lw $24,($23)
-lw $4,8($24)
-lw $24,yyfnd
-lw $24,($24)
-negu $5,$24
-jal yyback
-la $15,1
-beq $2,$15,L.105
-move $24,$23
-la $15,yylstate
-bgtu $24,$15,L.100
-L.105:
-L.98:
-lb $24,($21)
-sw $24,yyprevious
-sw $23,yylsp
-la $24,yytext
-move $15,$21
-subu $24,$15,$24
-la $24,1($24)
-sw $24,yyleng
-lw $24,yyleng
-sb $0,yytext($24)
-lw $24,yyfnd
-la $15,4($24)
-sw $15,yyfnd
-lw $2,($24)
-b L.34
-L.96:
-lb $24,($21)
-sw $24,yytchar
-lw $24,yytchar
-la $15,10
-bne $24,$15,L.106
-lw $24,yylineno
-subu $24,$24,1
-sw $24,yylineno
-L.106:
-lw $24,yysptr
-la $15,1($24)
-sw $15,yysptr
-lw $15,yytchar
-sb $15,($24)
-L.94:
-move $24,$23
-la $23,-4($24)
-la $15,yylstate
-bgtu $24,$15,L.93
-lb $24,yytext
-bne $24,$0,L.108
-la $24,yysbuf
-sw $24,yysptr
-move $2,$0
-b L.34
-L.108:
-lw $24,yysptr
-la $15,yysbuf
-bleu $24,$15,L.118
-lw $24,yysptr
-la $24,-1($24)
-sw $24,yysptr
-lb $24,($24)
-sw $24,-4+72($sp)
-b L.119
-L.118:
-lw $24,yyin
-lw $15,($24)
-subu $15,$15,1
-sw $15,($24)
-bge $15,$0,L.120
-lw $4,yyin
-jal _filbuf
-move $24,$2
-sw $24,-8+72($sp)
-b L.121
-L.120:
-lw $24,yyin
-la $24,4($24)
-lw $15,($24)
-la $14,1($15)
-sw $14,($24)
-lbu $24,($15)
-sw $24,-8+72($sp)
-L.121:
-lw $24,-8+72($sp)
-sw $24,-4+72($sp)
-L.119:
-lw $24,-4+72($sp)
-sw $24,yytchar
-la $15,10
-bne $24,$15,L.116
-lw $24,yylineno
-la $24,1($24)
-sw $24,yylineno
-lw $16,yytchar
-b L.117
-L.116:
-lw $16,yytchar
-L.117:
-la $24,-1
-bne $16,$24,L.114
-move $17,$0
-b L.115
-L.114:
-lw $17,yytchar
-L.115:
-sb $17,yytext
-sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
-sw $24,yyprevious
-lw $24,yyprevious
-ble $24,$0,L.122
-lw $24,yyout
-lw $15,($24)
-subu $15,$15,1
-sw $15,($24)
-bge $15,$0,L.125
-lw $24,yyprevious
-and $24,$24,(1<<(8*1))-1
-move $4,$24
-lw $5,yyout
-jal _flsbuf
-b L.126
-L.125:
-lw $24,yyout
-la $24,4($24)
-lw $15,($24)
-la $14,1($15)
-sw $14,($24)
-lw $24,yyprevious
-sb $24,($15)
-L.126:
-L.122:
-la $21,yytext
-b L.37
-L.34:
-lw $16,16($sp)
-lw $17,20($sp)
-lw $18,24($sp)
-lw $19,28($sp)
-lw $20,32($sp)
-lw $21,36($sp)
-lw $22,40($sp)
-lw $23,44($sp)
-lw $25,48($sp)
-lw $30,52($sp)
-lw $31,56($sp)
-addu $sp,$sp,72
-j $31
-.end yylook
-.globl yyback
-.text
-.align 2
-.ent yyback
-yyback:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-move $24,$4
-bne $24,$0,L.131
-move $2,$0
-b L.127
-L.130:
-move $24,$4
-la $4,4($24)
-lw $24,($24)
-bne $24,$5,L.133
-la $2,1
-b L.127
-L.133:
-L.131:
-lw $24,($4)
-bne $24,$0,L.130
-move $2,$0
-L.127:
-j $31
-.end yyback
-.globl yyinput
-.text
-.align 2
-.ent yyinput
-yyinput:
-.frame $sp,40,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-40
-.mask 0xc2e00000,-4
-sw $21,16($sp)
-sw $22,20($sp)
-sw $23,24($sp)
-.cprestore 28
-sw $30,32($sp)
-sw $31,36($sp)
-lw $24,yysptr
-la $15,yysbuf
-bleu $24,$15,L.144
-lw $24,yysptr
-la $24,-1($24)
-sw $24,yysptr
-lb $22,($24)
-b L.145
-L.144:
-lw $24,yyin
-lw $15,($24)
-subu $15,$15,1
-sw $15,($24)
-bge $15,$0,L.146
-lw $4,yyin
-jal _filbuf
-move $24,$2
-move $21,$24
-b L.147
-L.146:
-lw $24,yyin
-la $24,4($24)
-lw $15,($24)
-la $14,1($15)
-sw $14,($24)
-lbu $21,($15)
-L.147:
-move $22,$21
-L.145:
-sw $22,yytchar
-la $24,10
-bne $22,$24,L.142
-lw $24,yylineno
-la $24,1($24)
-sw $24,yylineno
-lw $23,yytchar
-b L.143
-L.142:
-lw $23,yytchar
-L.143:
-la $24,-1
-bne $23,$24,L.140
-move $30,$0
-b L.141
-L.140:
-lw $30,yytchar
-L.141:
-move $2,$30
-L.135:
-lw $21,16($sp)
-lw $22,20($sp)
-lw $23,24($sp)
-lw $25,28($sp)
-lw $30,32($sp)
-lw $31,36($sp)
-addu $sp,$sp,40
-j $31
-.end yyinput
-.globl yyoutput
-.text
-.align 2
-.ent yyoutput
-yyoutput:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-lw $24,yyout
-lw $15,($24)
-subu $15,$15,1
-sw $15,($24)
-bge $15,$0,L.150
-lw $24,0+24($sp)
-and $24,$24,(1<<(8*1))-1
-move $4,$24
-lw $5,yyout
-jal _flsbuf
-b L.151
-L.150:
-lw $24,yyout
-la $24,4($24)
-lw $15,($24)
-la $14,1($15)
-sw $14,($24)
-lw $24,0+24($sp)
-sb $24,($15)
-L.151:
-move $2,$0
-L.148:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end yyoutput
-.globl yyunput
-.text
-.align 2
-.ent yyunput
-yyunput:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-sw $4,yytchar
-lw $24,yytchar
-la $15,10
-bne $24,$15,L.153
-lw $24,yylineno
-subu $24,$24,1
-sw $24,yylineno
-L.153:
-lw $24,yysptr
-la $15,1($24)
-sw $15,yysptr
-lw $15,yytchar
-sb $15,($24)
-move $2,$0
-L.152:
-j $31
-.end yyunput
-.globl main
-.text
-.align 2
-.ent main
-main:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-jal yyparse
-move $2,$0
-L.155:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end main
-.globl yyerror
-.text
-.align 2
-.ent yyerror
-yyerror:
-.frame $sp,24,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-24
-.mask 0x82000000,-4
-.cprestore 16
-sw $31,20($sp)
-sw $4,24($sp)
-la $4,L.157
-lw $5,0+24($sp)
-jal printf
-move $2,$0
-L.156:
-lw $25,16($sp)
-lw $31,20($sp)
-addu $sp,$sp,24
-j $31
-.end yyerror
-.globl yyexca
-.data
-.align 1
-yyexca:
-.half 0xffffffff
-.half 0x1
-.half 0x0
-.half 0xffffffff
-.half 0xfffffffe
-.half 0x0
-.globl yyact
-.data
-.align 1
-yyact:
-.half 0xc
-.half 0x2
-.half 0x9
-.half 0x8
-.half 0x11
-.half 0xb
-.half 0x19
-.half 0x11
-.half 0xf
-.half 0x12
-.half 0x10
-.half 0xa
-.half 0x12
-.half 0x11
-.half 0xf
-.half 0x7
-.half 0x10
-.half 0xd
-.half 0x12
-.half 0x5
-.half 0x3
-.half 0x1
-.half 0x0
-.half 0x13
-.half 0x14
-.half 0x0
-.half 0x0
-.half 0x15
-.half 0x16
-.half 0x17
-.half 0x18
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x6
-.half 0xe
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x4
-.half 0x6
-.globl yypact
-.data
-.align 1
-yypact:
-.half 0xfffffc18
-.half 0xfffffff7
-.half 0xfffffc18
-.half 0x5
-.half 0xfffffff9
-.half 0xffffffc5
-.half 0xfffffc18
-.half 0xfffffc18
-.half 0xfffffc18
-.half 0xffffffd8
-.half 0xffffffe3
-.half 0xffffffd8
-.half 0xffffffd8
-.half 0xfffffc18
-.half 0xfffffc18
-.half 0xffffffd8
-.half 0xffffffd8
-.half 0xffffffd8
-.half 0xffffffd8
-.half 0xffffffda
-.half 0xffffffdd
-.half 0xffffffda
-.half 0xffffffda
-.half 0xfffffc18
-.half 0xfffffc18
-.half 0xfffffc18
-.globl yypgo
-.data
-.align 1
-yypgo:
-.half 0x0
-.half 0x15
-.half 0x14
-.half 0x11
-.half 0xb
-.globl yyr1
-.data
-.align 1
-yyr1:
-.half 0x0
-.half 0x1
-.half 0x1
-.half 0x1
-.half 0x1
-.half 0x2
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x3
-.globl yyr2
-.data
-.align 1
-yyr2:
-.half 0x0
-.half 0x0
-.half 0x2
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x2
-.half 0x3
-.half 0x1
-.half 0x1
-.half 0x1
-.globl yychk
-.data
-.align 1
-yychk:
-.half 0xfffffc18
-.half 0xffffffff
-.half 0xa
-.half 0xfffffffe
-.half 0x100
-.half 0xfffffffd
-.half 0x101
-.half 0xa
-.half 0xa
-.half 0x3d
-.half 0xfffffffc
-.half 0x2d
-.half 0x28
-.half 0xfffffffd
-.half 0x102
-.half 0x2b
-.half 0x2d
-.half 0x2a
-.half 0x2f
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0x29
-.globl yydef
-.data
-.align 1
-yydef:
-.half 0x1
-.half 0xfffffffe
-.half 0x2
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0xe
-.half 0x3
-.half 0x4
-.half 0x0
-.half 0x5
-.half 0x0
-.half 0x0
-.half 0xc
-.half 0xd
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0xa
-.half 0x0
-.half 0x6
-.half 0x7
-.half 0x8
-.half 0x9
-.half 0xb
-.globl yychar
-.sdata
-.align 2
-yychar:
-.word 0xffffffff
-.globl yynerrs
-.sdata
-.align 2
-yynerrs:
-.word 0x0
-.globl yyerrflag
-.sdata
-.align 1
-yyerrflag:
-.half 0x0
-.globl yyparse
-.text
-.text
-.align 2
-.ent yyparse
-yyparse:
-.frame $sp,360,$31
-.set noreorder
-.cpload $25
-.set reorder
-addu $sp,$sp,-360
-.mask 0xc2fe0000,-308
-sw $17,16($sp)
-sw $18,20($sp)
-sw $19,24($sp)
-sw $20,28($sp)
-sw $21,32($sp)
-sw $22,36($sp)
-sw $23,40($sp)
-.cprestore 44
-sw $30,48($sp)
-sw $31,52($sp)
-move $24,$0
-move $23,$24
-la $15,-1
-sw $15,yychar
-sw $0,yynerrs
-sh $24,yyerrflag
-la $22,-302+360($sp)
-la $20,yyv-4
-L.161:
-la $24,2($22)
-move $22,$24
-la $15,0+360($sp)
-bleu $24,$15,L.162
-la $4,L.165
-jal yyerror
-la $2,1
-b L.158
-L.162:
-sh $23,($22)
-la $20,4($20)
-lw $24,yyval
-sw $24,($20)
-L.166:
-sll $24,$23,8*(4-2); sra $24,$24,8*(4-2)
-sll $24,$24,1
-lh $21,yypact($24)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,-1000
-bgt $24,$15,L.167
-b L.169
-L.167:
-lw $24,yychar
-bge $24,$0,L.170
-jal yylex
-sw $2,yychar
-bge $2,$0,L.172
-sw $0,yychar
-L.172:
-L.170:
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-lw $15,yychar
-addu $24,$24,$15
-move $21,$24
-sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
-blt $24,$0,L.176
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-la $15,249
-blt $24,$15,L.174
-L.176:
-b L.169
-L.174:
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $24,$24,1
-lh $24,yyact($24)
-move $21,$24
-sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
-sll $24,$24,1
-lh $24,yychk($24)
-lw $15,yychar
-bne $24,$15,L.177
-la $24,-1
-sw $24,yychar
-lw $24,yylval
-sw $24,yyval
-move $23,$21
-lh $24,yyerrflag
-ble $24,$0,L.161
-lh $24,yyerrflag
-subu $24,$24,1
-sh $24,yyerrflag
-b L.161
-L.177:
-L.169:
-sll $24,$23,8*(4-2); sra $24,$24,8*(4-2)
-sll $24,$24,1
-lh $24,yydef($24)
-move $21,$24
-sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
-la $15,-2
-bne $24,$15,L.181
-lw $24,yychar
-bge $24,$0,L.183
-jal yylex
-sw $2,yychar
-bge $2,$0,L.185
-sw $0,yychar
-L.185:
-L.183:
-la $19,yyexca
-b L.190
-L.187:
-L.188:
-la $19,4($19)
-L.190:
-lh $24,($19)
-la $15,-1
-bne $24,$15,L.187
-lh $24,2($19)
-sll $15,$23,8*(4-2); sra $15,$15,8*(4-2)
-bne $24,$15,L.187
-b L.192
-L.191:
-lh $24,($19)
-lw $15,yychar
-bne $24,$15,L.194
-b L.193
-L.194:
-L.192:
-la $24,4($19)
-move $19,$24
-lh $24,($24)
-bge $24,$0,L.191
-L.193:
-lh $24,2($19)
-move $21,$24
-sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
-bge $24,$0,L.196
-move $2,$0
-b L.158
-L.196:
-L.181:
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-bne $24,$0,L.198
-lh $17,yyerrflag
-blt $17,$0,L.200
-la $24,3
-bgt $17,$24,L.200
-sll $24,$17,2
-lw $24,L.216($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.216:
-.gpword L.203
-.gpword L.206
-.gpword L.206
-.gpword L.213
-.text
-L.203:
-la $4,L.204
-jal yyerror
-L.205:
-lw $24,yynerrs
-la $24,1($24)
-sw $24,yynerrs
-L.206:
-la $24,3
-sh $24,yyerrflag
-b L.208
-L.207:
-lh $24,($22)
-sll $24,$24,1
-lh $24,yypact($24)
-la $24,256($24)
-move $21,$24
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-blt $24,$0,L.210
-la $15,249
-bge $24,$15,L.210
-sll $24,$24,1
-lh $24,yyact($24)
-sll $24,$24,1
-lh $24,yychk($24)
-la $15,256
-bne $24,$15,L.210
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $24,$24,1
-lh $23,yyact($24)
-b L.161
-L.210:
-lh $24,($22)
-sll $24,$24,1
-lh $21,yypact($24)
-la $22,-2($22)
-la $20,-4($20)
-L.208:
-move $24,$22
-la $15,-300+360($sp)
-bgeu $24,$15,L.207
-L.212:
-la $2,1
-b L.158
-L.213:
-lw $24,yychar
-bne $24,$0,L.214
-b L.212
-L.214:
-la $24,-1
-sw $24,yychar
-b L.166
-L.200:
-L.198:
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $24,$24,1
-la $15,yyr2($24)
-lh $14,($15)
-sll $14,$14,1
-subu $22,$22,$14
-move $30,$20
-lh $15,($15)
-sll $15,$15,2
-subu $20,$20,$15
-lw $15,4($20)
-sw $15,yyval
-sh $21,-302+360($sp)
-lh $21,yyr1($24)
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $24,$24,1
-lh $24,yypgo($24)
-lh $15,($22)
-addu $24,$24,$15
-la $24,1($24)
-move $18,$24
-sll $24,$18,8*(4-2); sra $24,$24,8*(4-2)
-la $15,249
-bge $24,$15,L.219
-sll $24,$24,1
-lh $24,yyact($24)
-move $23,$24
-sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
-sll $24,$24,1
-lh $24,yychk($24)
-sll $15,$21,8*(4-2); sra $15,$15,8*(4-2)
-negu $15,$15
-beq $24,$15,L.217
-L.219:
-sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
-sll $24,$24,1
-lh $24,yypgo($24)
-sll $24,$24,1
-lh $23,yyact($24)
-L.217:
-lh $17,-302+360($sp)
-la $24,4
-blt $17,$24,L.161
-la $24,14
-bgt $17,$24,L.161
-sll $24,$17,2
-lw $24,L.241-16($24)
-.cpadd $24
-j $24
-.rdata
-.align 2
-L.241:
-.gpword L.223
-.gpword L.224
-.gpword L.226
-.gpword L.228
-.gpword L.230
-.gpword L.232
-.gpword L.234
-.gpword L.161
-.gpword L.236
-.gpword L.238
-.gpword L.240
-.text
-L.223:
-sh $0,yyerrflag
-b L.161
-L.224:
-la $4,L.225
-jal printf
-b L.161
-L.226:
-la $4,L.227
-jal printf
-b L.161
-L.228:
-la $4,L.229
-jal printf
-b L.161
-L.230:
-la $4,L.231
-jal printf
-b L.161
-L.232:
-la $4,L.233
-jal printf
-b L.161
-L.234:
-la $4,L.235
-jal printf
-b L.161
-L.236:
-la $4,L.237
-jal printf
-b L.161
-L.238:
-la $4,L.239
-la $5,yytext
-jal printf
-b L.161
-L.240:
-la $4,L.157
-la $5,yytext
-jal printf
-b L.161
-L.158:
-lw $17,16($sp)
-lw $18,20($sp)
-lw $19,24($sp)
-lw $20,28($sp)
-lw $21,32($sp)
-lw $22,36($sp)
-lw $23,40($sp)
-lw $25,44($sp)
-lw $30,48($sp)
-lw $31,52($sp)
-addu $sp,$sp,360
-j $31
-.end yyparse
-.globl yywrap
-.text
-.align 2
-.ent yywrap
-yywrap:
-.frame $sp,0,$31
-.set noreorder
-.cpload $25
-.set reorder
-la $2,1
-L.243:
-j $31
-.end yywrap
-.globl yyv
-.comm yyv,600
-.globl yyfnd
-.comm yyfnd,4
-.globl yyolsp
-.comm yyolsp,4
-.globl yylsp
-.comm yylsp,4
-.globl yylstate
-.comm yylstate,800
-.globl yyestate
-.comm yyestate,4
-.globl yytchar
-.comm yytchar,4
-.globl yysbuf
-.comm yysbuf,200
-.globl yymorfg
-.comm yymorfg,4
-.globl yytext
-.comm yytext,200
-.globl yyleng
-.comm yyleng,4
-.extern _iob 0
-.globl yyval
-.comm yyval,4
-.globl yylval
-.comm yylval,4
-.rdata
-.align 0
-L.239:
-.byte 112
-.byte 117
-.byte 115
-.byte 104
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.237:
-.byte 108
-.byte 111
-.byte 97
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.235:
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.233:
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.231:
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 121
-.byte 10
-.byte 0
-.align 0
-L.229:
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 10
-.byte 97
-.byte 100
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.227:
-.byte 97
-.byte 100
-.byte 100
-.byte 10
-.byte 0
-.align 0
-L.225:
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 101
-.byte 10
-.byte 0
-.align 0
-L.204:
-.byte 115
-.byte 121
-.byte 110
-.byte 116
-.byte 97
-.byte 120
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 0
-.align 0
-L.165:
-.byte 121
-.byte 97
-.byte 99
-.byte 99
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 0
-L.157:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 0
-L.17:
-.byte 98
-.byte 97
-.byte 100
-.byte 32
-.byte 115
-.byte 119
-.byte 105
-.byte 116
-.byte 99
-.byte 104
-.byte 32
-.byte 121
-.byte 121
-.byte 108
-.byte 111
-.byte 111
-.byte 107
-.byte 32
-.byte 37
-.byte 100
-.byte 0
+.set reorder
+.globl yyin
+.sdata
+.align 2
+yyin:
+.word _iob
+.globl yyout
+.sdata
+.align 2
+yyout:
+.word _iob+16
+.globl yylex
+.text
+.text
+.align 2
+.ent yylex
+yylex:
+.frame $sp,32,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-32
+.mask 0xc2000000,-8
+.cprestore 16
+sw $30,20($sp)
+sw $31,24($sp)
+b L.4
+L.3:
+L.6:
+la $24,-1
+blt $30,$24,L.7
+la $24,4
+bgt $30,$24,L.7
+sll $24,$30,2
+lw $24,L.18+4($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.18:
+.gpword L.8
+.gpword L.9
+.gpword L.12
+.gpword L.13
+.gpword L.8
+.gpword L.15
+.text
+L.9:
+jal yywrap
+beq $2,$0,L.8
+move $2,$0
+b L.2
+L.12:
+la $2,257
+b L.2
+L.13:
+la $2,258
+b L.2
+L.15:
+lb $2,yytext
+b L.2
+L.7:
+lw $4,yyout
+la $5,L.17
+move $6,$30
+jal fprintf
+L.8:
+L.4:
+jal yylook
+move $30,$2
+bge $2,$0,L.3
+move $2,$0
+L.2:
+lw $25,16($sp)
+lw $30,20($sp)
+lw $31,24($sp)
+addu $sp,$sp,32
+j $31
+.end yylex
+.globl yyvstop
+.data
+.align 2
+yyvstop:
+.word 0x0
+.word 0x4
+.word 0x0
+.word 0x3
+.word 0x4
+.word 0x0
+.word 0x2
+.word 0x4
+.word 0x0
+.word 0x1
+.word 0x4
+.word 0x0
+.word 0x2
+.word 0x0
+.word 0x1
+.word 0x0
+.word 0x0
+.globl yycrank
+.data
+.align 0
+yycrank:
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x3
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x4
+.byte 0x1
+.byte 0x3
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x5
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x6
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.globl yysvec
+.data
+.align 2
+yysvec:
+.word 0x0
+.word 0x0
+.word 0x0
+.word yycrank-2
+.word 0x0
+.word 0x0
+.word yycrank
+.word yysvec+12
+.word 0x0
+.word yycrank
+.word 0x0
+.word yyvstop+4
+.word yycrank
+.word 0x0
+.word yyvstop+12
+.word yycrank+4
+.word 0x0
+.word yyvstop+24
+.word yycrank+38
+.word 0x0
+.word yyvstop+36
+.word yycrank
+.word yysvec+60
+.word yyvstop+48
+.word yycrank
+.word yysvec+72
+.word yyvstop+56
+.word 0x0
+.word 0x0
+.word 0x0
+.globl yytop
+.sdata
+.align 2
+yytop:
+.word yycrank+282
+.globl yybgin
+.sdata
+.align 2
+yybgin:
+.word yysvec+12
+.globl yymatch
+.data
+.align 0
+yymatch:
+.byte 0
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 9
+.byte 10
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 9
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 65
+.byte 1
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 0
+.globl yyextra
+.data
+.align 0
+yyextra:
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.globl yylineno
+.sdata
+.align 2
+yylineno:
+.word 0x1
+.globl yysptr
+.sdata
+.align 2
+yysptr:
+.word yysbuf
+.globl yyprevious
+.sdata
+.align 2
+yyprevious:
+.word 0xa
+.globl yylook
+.text
+.text
+.align 2
+.ent yylook
+yylook:
+.frame $sp,72,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-72
+.mask 0xc2ff0000,-16
+sw $16,16($sp)
+sw $17,20($sp)
+sw $18,24($sp)
+sw $19,28($sp)
+sw $20,32($sp)
+sw $21,36($sp)
+sw $22,40($sp)
+sw $23,44($sp)
+.cprestore 48
+sw $30,52($sp)
+sw $31,56($sp)
+lw $24,yymorfg
+bne $24,$0,L.35
+la $21,yytext
+b L.36
+L.35:
+sw $0,yymorfg
+lw $24,yyleng
+la $21,yytext($24)
+L.36:
+L.37:
+la $23,yylstate
+lw $24,yybgin
+move $30,$24
+sw $24,yyestate
+lw $24,yyprevious
+la $15,10
+bne $24,$15,L.41
+la $30,12($30)
+L.41:
+L.43:
+lw $22,($30)
+move $24,$22
+la $15,yycrank
+bne $24,$15,L.47
+lw $18,4($30)
+move $24,$18
+bne $24,$0,L.49
+b L.94
+L.49:
+lw $24,($18)
+la $15,yycrank
+bne $24,$15,L.51
+b L.94
+L.51:
+L.47:
+move $24,$21
+sw $24,-12+72($sp)
+la $21,1($24)
+lw $15,yysptr
+la $14,yysbuf
+bleu $15,$14,L.61
+lw $15,yysptr
+la $15,-1($15)
+sw $15,yysptr
+lb $15,($15)
+sw $15,-4+72($sp)
+b L.62
+L.61:
+lw $15,yyin
+lw $14,($15)
+subu $14,$14,1
+sw $14,($15)
+bge $14,$0,L.63
+lw $4,yyin
+jal _filbuf
+move $24,$2
+sw $24,-8+72($sp)
+b L.64
+L.63:
+lw $24,yyin
+la $24,4($24)
+lw $15,($24)
+la $14,1($15)
+sw $14,($24)
+lbu $24,($15)
+sw $24,-8+72($sp)
+L.64:
+lw $24,-8+72($sp)
+sw $24,-4+72($sp)
+L.62:
+lw $24,-4+72($sp)
+sw $24,yytchar
+la $15,10
+bne $24,$15,L.59
+lw $24,yylineno
+la $24,1($24)
+sw $24,yylineno
+lw $16,yytchar
+b L.60
+L.59:
+lw $16,yytchar
+L.60:
+la $24,-1
+bne $16,$24,L.57
+move $17,$0
+b L.58
+L.57:
+lw $17,yytchar
+L.58:
+move $20,$17
+move $24,$17
+lw $15,-12+72($sp)
+sb $24,($15)
+L.65:
+move $19,$22
+move $24,$22
+la $15,yycrank
+bleu $24,$15,L.66
+sll $24,$20,1
+addu $22,$24,$19
+move $24,$22
+lw $15,yytop
+bgtu $24,$15,L.67
+la $24,12
+lb $15,($22)
+mul $24,$24,$15
+la $24,yysvec($24)
+move $15,$30
+bne $24,$15,L.67
+la $24,yysvec
+la $15,12
+lb $14,1($22)
+mul $15,$15,$14
+la $15,yysvec($15)
+bne $15,$24,L.70
+la $24,-1($21)
+move $21,$24
+lb $24,($24)
+sw $24,yytchar
+lw $24,yytchar
+la $15,10
+bne $24,$15,L.72
+lw $24,yylineno
+subu $24,$24,1
+sw $24,yylineno
+L.72:
+lw $24,yysptr
+la $15,1($24)
+sw $15,yysptr
+lw $15,yytchar
+sb $15,($24)
+b L.94
+L.70:
+move $24,$23
+la $23,4($24)
+la $15,12
+lb $14,1($22)
+mul $15,$15,$14
+la $15,yysvec($15)
+move $30,$15
+sw $15,($24)
+b L.43
+L.66:
+move $24,$22
+la $15,yycrank
+bgeu $24,$15,L.75
+la $24,yycrank
+move $15,$22
+subu $24,$24,$15
+la $15,2
+div $24,$24,$15
+sll $24,$24,1
+la $24,yycrank($24)
+move $19,$24
+move $22,$24
+sll $24,$20,1
+addu $22,$24,$22
+move $24,$22
+lw $15,yytop
+bgtu $24,$15,L.77
+la $24,12
+lb $15,($22)
+mul $24,$24,$15
+la $24,yysvec($24)
+move $15,$30
+bne $24,$15,L.77
+la $24,yysvec
+la $15,12
+lb $14,1($22)
+mul $15,$15,$14
+la $15,yysvec($15)
+bne $15,$24,L.79
+la $24,-1($21)
+move $21,$24
+lb $24,($24)
+sw $24,yytchar
+lw $24,yytchar
+la $15,10
+bne $24,$15,L.81
+lw $24,yylineno
+subu $24,$24,1
+sw $24,yylineno
+L.81:
+lw $24,yysptr
+la $15,1($24)
+sw $15,yysptr
+lw $15,yytchar
+sb $15,($24)
+b L.94
+L.79:
+move $24,$23
+la $23,4($24)
+la $15,12
+lb $14,1($22)
+mul $15,$15,$14
+la $15,yysvec($15)
+move $30,$15
+sw $15,($24)
+b L.43
+L.77:
+lb $24,yymatch($20)
+sll $24,$24,1
+addu $22,$24,$19
+move $24,$22
+lw $15,yytop
+bgtu $24,$15,L.83
+la $24,12
+lb $15,($22)
+mul $24,$24,$15
+la $24,yysvec($24)
+move $15,$30
+bne $24,$15,L.83
+la $24,yysvec
+la $15,12
+lb $14,1($22)
+mul $15,$15,$14
+la $15,yysvec($15)
+bne $15,$24,L.85
+la $24,-1($21)
+move $21,$24
+lb $24,($24)
+sw $24,yytchar
+lw $24,yytchar
+la $15,10
+bne $24,$15,L.87
+lw $24,yylineno
+subu $24,$24,1
+sw $24,yylineno
+L.87:
+lw $24,yysptr
+la $15,1($24)
+sw $15,yysptr
+lw $15,yytchar
+sb $15,($24)
+b L.94
+L.85:
+move $24,$23
+la $23,4($24)
+la $15,12
+lb $14,1($22)
+mul $15,$15,$14
+la $15,yysvec($15)
+move $30,$15
+sw $15,($24)
+b L.43
+L.83:
+L.75:
+L.67:
+lw $24,4($30)
+move $30,$24
+beq $24,$0,L.89
+lw $24,($30)
+move $22,$24
+la $15,yycrank
+beq $24,$15,L.89
+b L.65
+L.89:
+la $24,-1($21)
+move $21,$24
+lb $24,($24)
+sw $24,yytchar
+lw $24,yytchar
+la $15,10
+bne $24,$15,L.91
+lw $24,yylineno
+subu $24,$24,1
+sw $24,yylineno
+L.91:
+lw $24,yysptr
+la $15,1($24)
+sw $15,yysptr
+lw $15,yytchar
+sb $15,($24)
+b L.94
+L.93:
+move $24,$21
+la $21,-1($24)
+sb $0,($24)
+lw $24,($23)
+move $15,$0
+move $14,$24
+beq $14,$15,L.96
+lw $24,8($24)
+sw $24,yyfnd
+beq $24,$15,L.96
+lw $24,yyfnd
+lw $24,($24)
+ble $24,$0,L.96
+sw $23,yyolsp
+lw $24,yyfnd
+lw $24,($24)
+lb $24,yyextra($24)
+beq $24,$0,L.98
+b L.101
+L.100:
+la $23,-4($23)
+move $24,$21
+la $21,-1($24)
+lb $24,($24)
+sw $24,yytchar
+lw $24,yytchar
+la $15,10
+bne $24,$15,L.103
+lw $24,yylineno
+subu $24,$24,1
+sw $24,yylineno
+L.103:
+lw $24,yysptr
+la $15,1($24)
+sw $15,yysptr
+lw $15,yytchar
+sb $15,($24)
+L.101:
+lw $24,($23)
+lw $4,8($24)
+lw $24,yyfnd
+lw $24,($24)
+negu $5,$24
+jal yyback
+la $15,1
+beq $2,$15,L.105
+move $24,$23
+la $15,yylstate
+bgtu $24,$15,L.100
+L.105:
+L.98:
+lb $24,($21)
+sw $24,yyprevious
+sw $23,yylsp
+la $24,yytext
+move $15,$21
+subu $24,$15,$24
+la $24,1($24)
+sw $24,yyleng
+lw $24,yyleng
+sb $0,yytext($24)
+lw $24,yyfnd
+la $15,4($24)
+sw $15,yyfnd
+lw $2,($24)
+b L.34
+L.96:
+lb $24,($21)
+sw $24,yytchar
+lw $24,yytchar
+la $15,10
+bne $24,$15,L.106
+lw $24,yylineno
+subu $24,$24,1
+sw $24,yylineno
+L.106:
+lw $24,yysptr
+la $15,1($24)
+sw $15,yysptr
+lw $15,yytchar
+sb $15,($24)
+L.94:
+move $24,$23
+la $23,-4($24)
+la $15,yylstate
+bgtu $24,$15,L.93
+lb $24,yytext
+bne $24,$0,L.108
+la $24,yysbuf
+sw $24,yysptr
+move $2,$0
+b L.34
+L.108:
+lw $24,yysptr
+la $15,yysbuf
+bleu $24,$15,L.118
+lw $24,yysptr
+la $24,-1($24)
+sw $24,yysptr
+lb $24,($24)
+sw $24,-4+72($sp)
+b L.119
+L.118:
+lw $24,yyin
+lw $15,($24)
+subu $15,$15,1
+sw $15,($24)
+bge $15,$0,L.120
+lw $4,yyin
+jal _filbuf
+move $24,$2
+sw $24,-8+72($sp)
+b L.121
+L.120:
+lw $24,yyin
+la $24,4($24)
+lw $15,($24)
+la $14,1($15)
+sw $14,($24)
+lbu $24,($15)
+sw $24,-8+72($sp)
+L.121:
+lw $24,-8+72($sp)
+sw $24,-4+72($sp)
+L.119:
+lw $24,-4+72($sp)
+sw $24,yytchar
+la $15,10
+bne $24,$15,L.116
+lw $24,yylineno
+la $24,1($24)
+sw $24,yylineno
+lw $16,yytchar
+b L.117
+L.116:
+lw $16,yytchar
+L.117:
+la $24,-1
+bne $16,$24,L.114
+move $17,$0
+b L.115
+L.114:
+lw $17,yytchar
+L.115:
+sb $17,yytext
+sll $24,$17,8*(4-1); sra $24,$24,8*(4-1)
+sw $24,yyprevious
+lw $24,yyprevious
+ble $24,$0,L.122
+lw $24,yyout
+lw $15,($24)
+subu $15,$15,1
+sw $15,($24)
+bge $15,$0,L.125
+lw $24,yyprevious
+and $24,$24,(1<<(8*1))-1
+move $4,$24
+lw $5,yyout
+jal _flsbuf
+b L.126
+L.125:
+lw $24,yyout
+la $24,4($24)
+lw $15,($24)
+la $14,1($15)
+sw $14,($24)
+lw $24,yyprevious
+sb $24,($15)
+L.126:
+L.122:
+la $21,yytext
+b L.37
+L.34:
+lw $16,16($sp)
+lw $17,20($sp)
+lw $18,24($sp)
+lw $19,28($sp)
+lw $20,32($sp)
+lw $21,36($sp)
+lw $22,40($sp)
+lw $23,44($sp)
+lw $25,48($sp)
+lw $30,52($sp)
+lw $31,56($sp)
+addu $sp,$sp,72
+j $31
+.end yylook
+.globl yyback
+.text
+.align 2
+.ent yyback
+yyback:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+move $24,$4
+bne $24,$0,L.131
+move $2,$0
+b L.127
+L.130:
+move $24,$4
+la $4,4($24)
+lw $24,($24)
+bne $24,$5,L.133
+la $2,1
+b L.127
+L.133:
+L.131:
+lw $24,($4)
+bne $24,$0,L.130
+move $2,$0
+L.127:
+j $31
+.end yyback
+.globl yyinput
+.text
+.align 2
+.ent yyinput
+yyinput:
+.frame $sp,40,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-40
+.mask 0xc2e00000,-4
+sw $21,16($sp)
+sw $22,20($sp)
+sw $23,24($sp)
+.cprestore 28
+sw $30,32($sp)
+sw $31,36($sp)
+lw $24,yysptr
+la $15,yysbuf
+bleu $24,$15,L.144
+lw $24,yysptr
+la $24,-1($24)
+sw $24,yysptr
+lb $22,($24)
+b L.145
+L.144:
+lw $24,yyin
+lw $15,($24)
+subu $15,$15,1
+sw $15,($24)
+bge $15,$0,L.146
+lw $4,yyin
+jal _filbuf
+move $24,$2
+move $21,$24
+b L.147
+L.146:
+lw $24,yyin
+la $24,4($24)
+lw $15,($24)
+la $14,1($15)
+sw $14,($24)
+lbu $21,($15)
+L.147:
+move $22,$21
+L.145:
+sw $22,yytchar
+la $24,10
+bne $22,$24,L.142
+lw $24,yylineno
+la $24,1($24)
+sw $24,yylineno
+lw $23,yytchar
+b L.143
+L.142:
+lw $23,yytchar
+L.143:
+la $24,-1
+bne $23,$24,L.140
+move $30,$0
+b L.141
+L.140:
+lw $30,yytchar
+L.141:
+move $2,$30
+L.135:
+lw $21,16($sp)
+lw $22,20($sp)
+lw $23,24($sp)
+lw $25,28($sp)
+lw $30,32($sp)
+lw $31,36($sp)
+addu $sp,$sp,40
+j $31
+.end yyinput
+.globl yyoutput
+.text
+.align 2
+.ent yyoutput
+yyoutput:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+lw $24,yyout
+lw $15,($24)
+subu $15,$15,1
+sw $15,($24)
+bge $15,$0,L.150
+lw $24,0+24($sp)
+and $24,$24,(1<<(8*1))-1
+move $4,$24
+lw $5,yyout
+jal _flsbuf
+b L.151
+L.150:
+lw $24,yyout
+la $24,4($24)
+lw $15,($24)
+la $14,1($15)
+sw $14,($24)
+lw $24,0+24($sp)
+sb $24,($15)
+L.151:
+move $2,$0
+L.148:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end yyoutput
+.globl yyunput
+.text
+.align 2
+.ent yyunput
+yyunput:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+sw $4,yytchar
+lw $24,yytchar
+la $15,10
+bne $24,$15,L.153
+lw $24,yylineno
+subu $24,$24,1
+sw $24,yylineno
+L.153:
+lw $24,yysptr
+la $15,1($24)
+sw $15,yysptr
+lw $15,yytchar
+sb $15,($24)
+move $2,$0
+L.152:
+j $31
+.end yyunput
+.globl main
+.text
+.align 2
+.ent main
+main:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+jal yyparse
+move $2,$0
+L.155:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end main
+.globl yyerror
+.text
+.align 2
+.ent yyerror
+yyerror:
+.frame $sp,24,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-24
+.mask 0x82000000,-4
+.cprestore 16
+sw $31,20($sp)
+sw $4,24($sp)
+la $4,L.157
+lw $5,0+24($sp)
+jal printf
+move $2,$0
+L.156:
+lw $25,16($sp)
+lw $31,20($sp)
+addu $sp,$sp,24
+j $31
+.end yyerror
+.globl yyexca
+.data
+.align 1
+yyexca:
+.half 0xffffffff
+.half 0x1
+.half 0x0
+.half 0xffffffff
+.half 0xfffffffe
+.half 0x0
+.globl yyact
+.data
+.align 1
+yyact:
+.half 0xc
+.half 0x2
+.half 0x9
+.half 0x8
+.half 0x11
+.half 0xb
+.half 0x19
+.half 0x11
+.half 0xf
+.half 0x12
+.half 0x10
+.half 0xa
+.half 0x12
+.half 0x11
+.half 0xf
+.half 0x7
+.half 0x10
+.half 0xd
+.half 0x12
+.half 0x5
+.half 0x3
+.half 0x1
+.half 0x0
+.half 0x13
+.half 0x14
+.half 0x0
+.half 0x0
+.half 0x15
+.half 0x16
+.half 0x17
+.half 0x18
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x6
+.half 0xe
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x4
+.half 0x6
+.globl yypact
+.data
+.align 1
+yypact:
+.half 0xfffffc18
+.half 0xfffffff7
+.half 0xfffffc18
+.half 0x5
+.half 0xfffffff9
+.half 0xffffffc5
+.half 0xfffffc18
+.half 0xfffffc18
+.half 0xfffffc18
+.half 0xffffffd8
+.half 0xffffffe3
+.half 0xffffffd8
+.half 0xffffffd8
+.half 0xfffffc18
+.half 0xfffffc18
+.half 0xffffffd8
+.half 0xffffffd8
+.half 0xffffffd8
+.half 0xffffffd8
+.half 0xffffffda
+.half 0xffffffdd
+.half 0xffffffda
+.half 0xffffffda
+.half 0xfffffc18
+.half 0xfffffc18
+.half 0xfffffc18
+.globl yypgo
+.data
+.align 1
+yypgo:
+.half 0x0
+.half 0x15
+.half 0x14
+.half 0x11
+.half 0xb
+.globl yyr1
+.data
+.align 1
+yyr1:
+.half 0x0
+.half 0x1
+.half 0x1
+.half 0x1
+.half 0x1
+.half 0x2
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x3
+.globl yyr2
+.data
+.align 1
+yyr2:
+.half 0x0
+.half 0x0
+.half 0x2
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x2
+.half 0x3
+.half 0x1
+.half 0x1
+.half 0x1
+.globl yychk
+.data
+.align 1
+yychk:
+.half 0xfffffc18
+.half 0xffffffff
+.half 0xa
+.half 0xfffffffe
+.half 0x100
+.half 0xfffffffd
+.half 0x101
+.half 0xa
+.half 0xa
+.half 0x3d
+.half 0xfffffffc
+.half 0x2d
+.half 0x28
+.half 0xfffffffd
+.half 0x102
+.half 0x2b
+.half 0x2d
+.half 0x2a
+.half 0x2f
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0x29
+.globl yydef
+.data
+.align 1
+yydef:
+.half 0x1
+.half 0xfffffffe
+.half 0x2
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0xe
+.half 0x3
+.half 0x4
+.half 0x0
+.half 0x5
+.half 0x0
+.half 0x0
+.half 0xc
+.half 0xd
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0xa
+.half 0x0
+.half 0x6
+.half 0x7
+.half 0x8
+.half 0x9
+.half 0xb
+.globl yychar
+.sdata
+.align 2
+yychar:
+.word 0xffffffff
+.globl yynerrs
+.sdata
+.align 2
+yynerrs:
+.word 0x0
+.globl yyerrflag
+.sdata
+.align 1
+yyerrflag:
+.half 0x0
+.globl yyparse
+.text
+.text
+.align 2
+.ent yyparse
+yyparse:
+.frame $sp,360,$31
+.set noreorder
+.cpload $25
+.set reorder
+addu $sp,$sp,-360
+.mask 0xc2fe0000,-308
+sw $17,16($sp)
+sw $18,20($sp)
+sw $19,24($sp)
+sw $20,28($sp)
+sw $21,32($sp)
+sw $22,36($sp)
+sw $23,40($sp)
+.cprestore 44
+sw $30,48($sp)
+sw $31,52($sp)
+move $24,$0
+move $23,$24
+la $15,-1
+sw $15,yychar
+sw $0,yynerrs
+sh $24,yyerrflag
+la $22,-302+360($sp)
+la $20,yyv-4
+L.161:
+la $24,2($22)
+move $22,$24
+la $15,0+360($sp)
+bleu $24,$15,L.162
+la $4,L.165
+jal yyerror
+la $2,1
+b L.158
+L.162:
+sh $23,($22)
+la $20,4($20)
+lw $24,yyval
+sw $24,($20)
+L.166:
+sll $24,$23,8*(4-2); sra $24,$24,8*(4-2)
+sll $24,$24,1
+lh $21,yypact($24)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,-1000
+bgt $24,$15,L.167
+b L.169
+L.167:
+lw $24,yychar
+bge $24,$0,L.170
+jal yylex
+sw $2,yychar
+bge $2,$0,L.172
+sw $0,yychar
+L.172:
+L.170:
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+lw $15,yychar
+addu $24,$24,$15
+move $21,$24
+sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
+blt $24,$0,L.176
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+la $15,249
+blt $24,$15,L.174
+L.176:
+b L.169
+L.174:
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $24,$24,1
+lh $24,yyact($24)
+move $21,$24
+sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
+sll $24,$24,1
+lh $24,yychk($24)
+lw $15,yychar
+bne $24,$15,L.177
+la $24,-1
+sw $24,yychar
+lw $24,yylval
+sw $24,yyval
+move $23,$21
+lh $24,yyerrflag
+ble $24,$0,L.161
+lh $24,yyerrflag
+subu $24,$24,1
+sh $24,yyerrflag
+b L.161
+L.177:
+L.169:
+sll $24,$23,8*(4-2); sra $24,$24,8*(4-2)
+sll $24,$24,1
+lh $24,yydef($24)
+move $21,$24
+sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
+la $15,-2
+bne $24,$15,L.181
+lw $24,yychar
+bge $24,$0,L.183
+jal yylex
+sw $2,yychar
+bge $2,$0,L.185
+sw $0,yychar
+L.185:
+L.183:
+la $19,yyexca
+b L.190
+L.187:
+L.188:
+la $19,4($19)
+L.190:
+lh $24,($19)
+la $15,-1
+bne $24,$15,L.187
+lh $24,2($19)
+sll $15,$23,8*(4-2); sra $15,$15,8*(4-2)
+bne $24,$15,L.187
+b L.192
+L.191:
+lh $24,($19)
+lw $15,yychar
+bne $24,$15,L.194
+b L.193
+L.194:
+L.192:
+la $24,4($19)
+move $19,$24
+lh $24,($24)
+bge $24,$0,L.191
+L.193:
+lh $24,2($19)
+move $21,$24
+sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
+bge $24,$0,L.196
+move $2,$0
+b L.158
+L.196:
+L.181:
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+bne $24,$0,L.198
+lh $17,yyerrflag
+blt $17,$0,L.200
+la $24,3
+bgt $17,$24,L.200
+sll $24,$17,2
+lw $24,L.216($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.216:
+.gpword L.203
+.gpword L.206
+.gpword L.206
+.gpword L.213
+.text
+L.203:
+la $4,L.204
+jal yyerror
+L.205:
+lw $24,yynerrs
+la $24,1($24)
+sw $24,yynerrs
+L.206:
+la $24,3
+sh $24,yyerrflag
+b L.208
+L.207:
+lh $24,($22)
+sll $24,$24,1
+lh $24,yypact($24)
+la $24,256($24)
+move $21,$24
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+blt $24,$0,L.210
+la $15,249
+bge $24,$15,L.210
+sll $24,$24,1
+lh $24,yyact($24)
+sll $24,$24,1
+lh $24,yychk($24)
+la $15,256
+bne $24,$15,L.210
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $24,$24,1
+lh $23,yyact($24)
+b L.161
+L.210:
+lh $24,($22)
+sll $24,$24,1
+lh $21,yypact($24)
+la $22,-2($22)
+la $20,-4($20)
+L.208:
+move $24,$22
+la $15,-300+360($sp)
+bgeu $24,$15,L.207
+L.212:
+la $2,1
+b L.158
+L.213:
+lw $24,yychar
+bne $24,$0,L.214
+b L.212
+L.214:
+la $24,-1
+sw $24,yychar
+b L.166
+L.200:
+L.198:
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $24,$24,1
+la $15,yyr2($24)
+lh $14,($15)
+sll $14,$14,1
+subu $22,$22,$14
+move $30,$20
+lh $15,($15)
+sll $15,$15,2
+subu $20,$20,$15
+lw $15,4($20)
+sw $15,yyval
+sh $21,-302+360($sp)
+lh $21,yyr1($24)
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $24,$24,1
+lh $24,yypgo($24)
+lh $15,($22)
+addu $24,$24,$15
+la $24,1($24)
+move $18,$24
+sll $24,$18,8*(4-2); sra $24,$24,8*(4-2)
+la $15,249
+bge $24,$15,L.219
+sll $24,$24,1
+lh $24,yyact($24)
+move $23,$24
+sll $24,$24,8*(4-2); sra $24,$24,8*(4-2)
+sll $24,$24,1
+lh $24,yychk($24)
+sll $15,$21,8*(4-2); sra $15,$15,8*(4-2)
+negu $15,$15
+beq $24,$15,L.217
+L.219:
+sll $24,$21,8*(4-2); sra $24,$24,8*(4-2)
+sll $24,$24,1
+lh $24,yypgo($24)
+sll $24,$24,1
+lh $23,yyact($24)
+L.217:
+lh $17,-302+360($sp)
+la $24,4
+blt $17,$24,L.161
+la $24,14
+bgt $17,$24,L.161
+sll $24,$17,2
+lw $24,L.241-16($24)
+.cpadd $24
+j $24
+.rdata
+.align 2
+L.241:
+.gpword L.223
+.gpword L.224
+.gpword L.226
+.gpword L.228
+.gpword L.230
+.gpword L.232
+.gpword L.234
+.gpword L.161
+.gpword L.236
+.gpword L.238
+.gpword L.240
+.text
+L.223:
+sh $0,yyerrflag
+b L.161
+L.224:
+la $4,L.225
+jal printf
+b L.161
+L.226:
+la $4,L.227
+jal printf
+b L.161
+L.228:
+la $4,L.229
+jal printf
+b L.161
+L.230:
+la $4,L.231
+jal printf
+b L.161
+L.232:
+la $4,L.233
+jal printf
+b L.161
+L.234:
+la $4,L.235
+jal printf
+b L.161
+L.236:
+la $4,L.237
+jal printf
+b L.161
+L.238:
+la $4,L.239
+la $5,yytext
+jal printf
+b L.161
+L.240:
+la $4,L.157
+la $5,yytext
+jal printf
+b L.161
+L.158:
+lw $17,16($sp)
+lw $18,20($sp)
+lw $19,24($sp)
+lw $20,28($sp)
+lw $21,32($sp)
+lw $22,36($sp)
+lw $23,40($sp)
+lw $25,44($sp)
+lw $30,48($sp)
+lw $31,52($sp)
+addu $sp,$sp,360
+j $31
+.end yyparse
+.globl yywrap
+.text
+.align 2
+.ent yywrap
+yywrap:
+.frame $sp,0,$31
+.set noreorder
+.cpload $25
+.set reorder
+la $2,1
+L.243:
+j $31
+.end yywrap
+.globl yyv
+.comm yyv,600
+.globl yyfnd
+.comm yyfnd,4
+.globl yyolsp
+.comm yyolsp,4
+.globl yylsp
+.comm yylsp,4
+.globl yylstate
+.comm yylstate,800
+.globl yyestate
+.comm yyestate,4
+.globl yytchar
+.comm yytchar,4
+.globl yysbuf
+.comm yysbuf,200
+.globl yymorfg
+.comm yymorfg,4
+.globl yytext
+.comm yytext,200
+.globl yyleng
+.comm yyleng,4
+.extern _iob 0
+.globl yyval
+.comm yyval,4
+.globl yylval
+.comm yylval,4
+.rdata
+.align 0
+L.239:
+.byte 112
+.byte 117
+.byte 115
+.byte 104
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.237:
+.byte 108
+.byte 111
+.byte 97
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.235:
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.233:
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.231:
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 121
+.byte 10
+.byte 0
+.align 0
+L.229:
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 10
+.byte 97
+.byte 100
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.227:
+.byte 97
+.byte 100
+.byte 100
+.byte 10
+.byte 0
+.align 0
+L.225:
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 101
+.byte 10
+.byte 0
+.align 0
+L.204:
+.byte 115
+.byte 121
+.byte 110
+.byte 116
+.byte 97
+.byte 120
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 0
+.align 0
+L.165:
+.byte 121
+.byte 97
+.byte 99
+.byte 99
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 0
+L.157:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 0
+L.17:
+.byte 98
+.byte 97
+.byte 100
+.byte 32
+.byte 115
+.byte 119
+.byte 105
+.byte 116
+.byte 99
+.byte 104
+.byte 32
+.byte 121
+.byte 121
+.byte 108
+.byte 111
+.byte 111
+.byte 107
+.byte 32
+.byte 37
+.byte 100
+.byte 0
diff --git a/lcc/msdev/rcc.dsp b/lcc/msdev/rcc.dsp
index 7830702..c7615ee 100755
--- a/lcc/msdev/rcc.dsp
+++ b/lcc/msdev/rcc.dsp
@@ -1,240 +1,240 @@
-# Microsoft Developer Studio Project File - Name="rcc" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=rcc - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "rcc.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "rcc.mak" CFG="rcc - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "rcc - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "rcc - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "rcc - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF "$(CFG)" == "rcc - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-
-!ENDIF
-
-# Begin Target
-
-# Name "rcc - Win32 Release"
-# Name "rcc - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=..\src\2html.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\alloc.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\asdl.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\bind.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\bytecode.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\c.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\config.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\dag.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\decl.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\enode.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\error.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\event.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\expr.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\gen.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\init.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\inits.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\input.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\lex.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\list.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\main.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\null.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\output.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\pass2.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\prof.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\profio.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\simp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\stab.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\stab.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\stmt.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\string.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\sym.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\symbolic.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\token.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\trace.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\tree.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\src\types.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
+# Microsoft Developer Studio Project File - Name="rcc" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
+CFG=rcc - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "rcc.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "rcc.mak" CFG="rcc - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "rcc - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "rcc - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "rcc - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release"
+# PROP Intermediate_Dir "Release"
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+
+!ELSEIF "$(CFG)" == "rcc - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug"
+# PROP Intermediate_Dir "Debug"
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+
+!ENDIF
+
+# Begin Target
+
+# Name "rcc - Win32 Release"
+# Name "rcc - Win32 Debug"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=..\src\2html.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\alloc.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\asdl.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\bind.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\bytecode.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\c.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\config.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\dag.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\decl.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\enode.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\error.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\event.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\expr.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\gen.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\init.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\inits.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\input.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\lex.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\list.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\main.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\null.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\output.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\pass2.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\prof.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\profio.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\simp.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\stab.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\stab.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\stmt.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\string.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\sym.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\symbolic.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\token.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\trace.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\tree.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\src\types.c
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# End Group
+# Begin Group "Resource Files"
+
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+# End Group
+# End Target
+# End Project
diff --git a/lcc/msdev/rcc.dsw b/lcc/msdev/rcc.dsw
index 3d97352..6926a03 100755
--- a/lcc/msdev/rcc.dsw
+++ b/lcc/msdev/rcc.dsw
@@ -1,29 +1,29 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "rcc"=.\rcc.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
+Microsoft Developer Studio Workspace File, Format Version 6.00
+# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
+
+###############################################################################
+
+Project: "rcc"=.\rcc.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Global:
+
+Package=<5>
+{{{
+}}}
+
+Package=<3>
+{{{
+}}}
+
+###############################################################################
+
diff --git a/lcc/packing.lst b/lcc/packing.lst
index e62e4b8..416f602 100755
--- a/lcc/packing.lst
+++ b/lcc/packing.lst
@@ -1,432 +1,432 @@
-README
-CPYRIGHT
-LOG
-makefile
-makefile.nt
-src/2html.c
-src/alloc.c
-src/asdl.c
-src/bind.c
-src/bytecode.c
-src/c.h
-src/config.h
-src/dag.c
-src/decl.c
-src/enode.c
-src/error.c
-src/event.c
-src/expr.c
-src/gen.c
-src/init.c
-src/inits.c
-src/input.c
-src/lex.c
-src/list.c
-src/main.c
-src/null.c
-src/output.c
-src/pass2.c
-src/prof.c
-src/profio.c
-src/simp.c
-src/stab.c
-src/stab.h
-src/stmt.c
-src/string.c
-src/sym.c
-src/symbolic.c
-src/token.h
-src/trace.c
-src/tree.c
-src/types.c
-src/alpha.md
-src/dagcheck.md
-src/mips.md
-src/sparc.md
-src/x86.md
-src/x86linux.md
-src/run.sh
-src/rcc.asdl
-lib/assert.c
-lib/bbexit.c
-lib/yynull.c
-tst/8q.0
-tst/8q.c
-tst/array.0
-tst/array.c
-tst/cf.0
-tst/cf.c
-tst/cq.0
-tst/cq.c
-tst/cvt.0
-tst/cvt.c
-tst/fields.0
-tst/fields.c
-tst/front.0
-tst/front.c
-tst/incr.0
-tst/incr.c
-tst/init.0
-tst/init.c
-tst/limits.0
-tst/limits.c
-tst/paranoia.0
-tst/paranoia.c
-tst/sort.0
-tst/sort.c
-tst/spill.0
-tst/spill.c
-tst/stdarg.0
-tst/stdarg.c
-tst/struct.0
-tst/struct.c
-tst/switch.0
-tst/switch.c
-tst/wf1.0
-tst/wf1.c
-tst/yacc.0
-tst/yacc.c
-etc/bprint.c
-etc/gcc-solaris.c
-etc/irix.c
-etc/lcc.c
-etc/linux.c
-etc/ops.c
-etc/osf.c
-etc/solaris.c
-etc/win32.c
-cpp/cpp.c
-cpp/cpp.h
-cpp/eval.c
-cpp/getopt.c
-cpp/hideset.c
-cpp/include.c
-cpp/lex.c
-cpp/macro.c
-cpp/nlist.c
-cpp/tokens.c
-cpp/unix.c
-lburg/gram.c
-lburg/gram.y
-lburg/lburg.1
-lburg/lburg.c
-lburg/lburg.h
-include/alpha/osf/assert.h
-include/alpha/osf/ctype.h
-include/alpha/osf/errno.h
-include/alpha/osf/float.h
-include/alpha/osf/limits.h
-include/alpha/osf/locale.h
-include/alpha/osf/math.h
-include/alpha/osf/setjmp.h
-include/alpha/osf/signal.h
-include/alpha/osf/stdarg.h
-include/alpha/osf/stddef.h
-include/alpha/osf/stdio.h
-include/alpha/osf/stdlib.h
-include/alpha/osf/string.h
-include/alpha/osf/time.h
-include/sparc/solaris/assert.h
-include/sparc/solaris/ctype.h
-include/sparc/solaris/errno.h
-include/sparc/solaris/float.h
-include/sparc/solaris/limits.h
-include/sparc/solaris/locale.h
-include/sparc/solaris/math.h
-include/sparc/solaris/setjmp.h
-include/sparc/solaris/signal.h
-include/sparc/solaris/stdarg.h
-include/sparc/solaris/stddef.h
-include/sparc/solaris/stdio.h
-include/sparc/solaris/stdlib.h
-include/sparc/solaris/string.h
-include/sparc/solaris/time.h
-include/mips/irix/assert.h
-include/mips/irix/ctype.h
-include/mips/irix/errno.h
-include/mips/irix/float.h
-include/mips/irix/limits.h
-include/mips/irix/locale.h
-include/mips/irix/math.h
-include/mips/irix/setjmp.h
-include/mips/irix/signal.h
-include/mips/irix/stdarg.h
-include/mips/irix/stddef.h
-include/mips/irix/stdio.h
-include/mips/irix/stdlib.h
-include/mips/irix/string.h
-include/mips/irix/time.h
-include/x86/linux/assert.h
-include/x86/linux/float.h
-include/x86/linux/stdarg.h
-doc/4.html
-doc/install.html
-doc/bprint.1
-doc/lcc.1
-doc/bprint.pdf
-doc/lcc.pdf
-alpha/osf/tst/8q.1bk
-alpha/osf/tst/8q.2bk
-alpha/osf/tst/8q.sbk
-alpha/osf/tst/array.1bk
-alpha/osf/tst/array.2bk
-alpha/osf/tst/array.sbk
-alpha/osf/tst/cf.1bk
-alpha/osf/tst/cf.2bk
-alpha/osf/tst/cf.sbk
-alpha/osf/tst/cq.1bk
-alpha/osf/tst/cq.2bk
-alpha/osf/tst/cq.sbk
-alpha/osf/tst/cvt.1bk
-alpha/osf/tst/cvt.2bk
-alpha/osf/tst/cvt.sbk
-alpha/osf/tst/fields.1bk
-alpha/osf/tst/fields.2bk
-alpha/osf/tst/fields.sbk
-alpha/osf/tst/front.2bk
-alpha/osf/tst/front.sbk
-alpha/osf/tst/incr.1bk
-alpha/osf/tst/incr.2bk
-alpha/osf/tst/incr.sbk
-alpha/osf/tst/init.1bk
-alpha/osf/tst/init.2bk
-alpha/osf/tst/init.sbk
-alpha/osf/tst/limits.1bk
-alpha/osf/tst/limits.2bk
-alpha/osf/tst/limits.sbk
-alpha/osf/tst/paranoia.1bk
-alpha/osf/tst/paranoia.2bk
-alpha/osf/tst/paranoia.sbk
-alpha/osf/tst/sort.1bk
-alpha/osf/tst/sort.2bk
-alpha/osf/tst/sort.sbk
-alpha/osf/tst/spill.1bk
-alpha/osf/tst/spill.2bk
-alpha/osf/tst/spill.sbk
-alpha/osf/tst/stdarg.1bk
-alpha/osf/tst/stdarg.2bk
-alpha/osf/tst/stdarg.sbk
-alpha/osf/tst/struct.1bk
-alpha/osf/tst/struct.2bk
-alpha/osf/tst/struct.sbk
-alpha/osf/tst/switch.1bk
-alpha/osf/tst/switch.2bk
-alpha/osf/tst/switch.sbk
-alpha/osf/tst/wf1.1bk
-alpha/osf/tst/wf1.2bk
-alpha/osf/tst/wf1.sbk
-alpha/osf/tst/yacc.1bk
-alpha/osf/tst/yacc.2bk
-alpha/osf/tst/yacc.sbk
-sparc/solaris/tst/8q.1bk
-sparc/solaris/tst/8q.2bk
-sparc/solaris/tst/8q.sbk
-sparc/solaris/tst/array.1bk
-sparc/solaris/tst/array.2bk
-sparc/solaris/tst/array.sbk
-sparc/solaris/tst/cf.1bk
-sparc/solaris/tst/cf.2bk
-sparc/solaris/tst/cf.sbk
-sparc/solaris/tst/cq.1bk
-sparc/solaris/tst/cq.2bk
-sparc/solaris/tst/cq.sbk
-sparc/solaris/tst/cvt.1bk
-sparc/solaris/tst/cvt.2bk
-sparc/solaris/tst/cvt.sbk
-sparc/solaris/tst/fields.1bk
-sparc/solaris/tst/fields.2bk
-sparc/solaris/tst/fields.sbk
-sparc/solaris/tst/front.2bk
-sparc/solaris/tst/front.sbk
-sparc/solaris/tst/incr.1bk
-sparc/solaris/tst/incr.2bk
-sparc/solaris/tst/incr.sbk
-sparc/solaris/tst/init.1bk
-sparc/solaris/tst/init.2bk
-sparc/solaris/tst/init.sbk
-sparc/solaris/tst/limits.1bk
-sparc/solaris/tst/limits.2bk
-sparc/solaris/tst/limits.sbk
-sparc/solaris/tst/paranoia.1bk
-sparc/solaris/tst/paranoia.2bk
-sparc/solaris/tst/paranoia.sbk
-sparc/solaris/tst/sort.1bk
-sparc/solaris/tst/sort.2bk
-sparc/solaris/tst/sort.sbk
-sparc/solaris/tst/spill.1bk
-sparc/solaris/tst/spill.2bk
-sparc/solaris/tst/spill.sbk
-sparc/solaris/tst/stdarg.1bk
-sparc/solaris/tst/stdarg.2bk
-sparc/solaris/tst/stdarg.sbk
-sparc/solaris/tst/struct.1bk
-sparc/solaris/tst/struct.2bk
-sparc/solaris/tst/struct.sbk
-sparc/solaris/tst/switch.1bk
-sparc/solaris/tst/switch.2bk
-sparc/solaris/tst/switch.sbk
-sparc/solaris/tst/wf1.1bk
-sparc/solaris/tst/wf1.2bk
-sparc/solaris/tst/wf1.sbk
-sparc/solaris/tst/yacc.1bk
-sparc/solaris/tst/yacc.2bk
-sparc/solaris/tst/yacc.sbk
-mips/irix/tst/8q.1bk
-mips/irix/tst/8q.2bk
-mips/irix/tst/8q.sbk
-mips/irix/tst/array.1bk
-mips/irix/tst/array.2bk
-mips/irix/tst/array.sbk
-mips/irix/tst/cf.1bk
-mips/irix/tst/cf.2bk
-mips/irix/tst/cf.sbk
-mips/irix/tst/cq.1bk
-mips/irix/tst/cq.2bk
-mips/irix/tst/cq.sbk
-mips/irix/tst/cvt.1bk
-mips/irix/tst/cvt.2bk
-mips/irix/tst/cvt.sbk
-mips/irix/tst/fields.1bk
-mips/irix/tst/fields.2bk
-mips/irix/tst/fields.sbk
-mips/irix/tst/front.2bk
-mips/irix/tst/front.sbk
-mips/irix/tst/incr.2bk
-mips/irix/tst/incr.sbk
-mips/irix/tst/init.1bk
-mips/irix/tst/init.2bk
-mips/irix/tst/init.sbk
-mips/irix/tst/limits.1bk
-mips/irix/tst/limits.2bk
-mips/irix/tst/limits.sbk
-mips/irix/tst/paranoia.1bk
-mips/irix/tst/paranoia.2bk
-mips/irix/tst/paranoia.sbk
-mips/irix/tst/sort.1bk
-mips/irix/tst/sort.2bk
-mips/irix/tst/sort.sbk
-mips/irix/tst/spill.2bk
-mips/irix/tst/spill.sbk
-mips/irix/tst/stdarg.1bk
-mips/irix/tst/stdarg.2bk
-mips/irix/tst/stdarg.sbk
-mips/irix/tst/struct.1bk
-mips/irix/tst/struct.2bk
-mips/irix/tst/struct.sbk
-mips/irix/tst/switch.1bk
-mips/irix/tst/switch.2bk
-mips/irix/tst/switch.sbk
-mips/irix/tst/wf1.1bk
-mips/irix/tst/wf1.2bk
-mips/irix/tst/wf1.sbk
-mips/irix/tst/yacc.1bk
-mips/irix/tst/yacc.2bk
-mips/irix/tst/yacc.sbk
-x86/linux/tst/8q.1bk
-x86/linux/tst/8q.2bk
-x86/linux/tst/8q.sbk
-x86/linux/tst/array.1bk
-x86/linux/tst/array.2bk
-x86/linux/tst/array.sbk
-x86/linux/tst/cf.1bk
-x86/linux/tst/cf.2bk
-x86/linux/tst/cf.sbk
-x86/linux/tst/cq.1bk
-x86/linux/tst/cq.2bk
-x86/linux/tst/cq.sbk
-x86/linux/tst/cvt.1bk
-x86/linux/tst/cvt.2bk
-x86/linux/tst/cvt.sbk
-x86/linux/tst/fields.1bk
-x86/linux/tst/fields.2bk
-x86/linux/tst/fields.sbk
-x86/linux/tst/front.2bk
-x86/linux/tst/front.sbk
-x86/linux/tst/incr.1bk
-x86/linux/tst/incr.2bk
-x86/linux/tst/incr.sbk
-x86/linux/tst/init.1bk
-x86/linux/tst/init.2bk
-x86/linux/tst/init.sbk
-x86/linux/tst/limits.1bk
-x86/linux/tst/limits.2bk
-x86/linux/tst/limits.sbk
-x86/linux/tst/paranoia.1bk
-x86/linux/tst/paranoia.2bk
-x86/linux/tst/paranoia.sbk
-x86/linux/tst/sort.1bk
-x86/linux/tst/sort.2bk
-x86/linux/tst/sort.sbk
-x86/linux/tst/spill.1bk
-x86/linux/tst/spill.2bk
-x86/linux/tst/spill.sbk
-x86/linux/tst/stdarg.1bk
-x86/linux/tst/stdarg.2bk
-x86/linux/tst/stdarg.sbk
-x86/linux/tst/struct.1bk
-x86/linux/tst/struct.2bk
-x86/linux/tst/struct.sbk
-x86/linux/tst/switch.1bk
-x86/linux/tst/switch.2bk
-x86/linux/tst/switch.sbk
-x86/linux/tst/wf1.1bk
-x86/linux/tst/wf1.2bk
-x86/linux/tst/wf1.sbk
-x86/linux/tst/yacc.1bk
-x86/linux/tst/yacc.2bk
-x86/linux/tst/yacc.sbk
-x86/win32/tst/8q.1bk
-x86/win32/tst/8q.2bk
-x86/win32/tst/8q.sbk
-x86/win32/tst/array.1bk
-x86/win32/tst/array.2bk
-x86/win32/tst/array.sbk
-x86/win32/tst/cf.1bk
-x86/win32/tst/cf.2bk
-x86/win32/tst/cf.sbk
-x86/win32/tst/cq.1bk
-x86/win32/tst/cq.2bk
-x86/win32/tst/cq.sbk
-x86/win32/tst/cvt.1bk
-x86/win32/tst/cvt.2bk
-x86/win32/tst/cvt.sbk
-x86/win32/tst/fields.1bk
-x86/win32/tst/fields.2bk
-x86/win32/tst/fields.sbk
-x86/win32/tst/front.2bk
-x86/win32/tst/front.sbk
-x86/win32/tst/incr.1bk
-x86/win32/tst/incr.2bk
-x86/win32/tst/incr.sbk
-x86/win32/tst/init.1bk
-x86/win32/tst/init.2bk
-x86/win32/tst/init.sbk
-x86/win32/tst/limits.1bk
-x86/win32/tst/limits.2bk
-x86/win32/tst/limits.sbk
-x86/win32/tst/paranoia.1bk
-x86/win32/tst/paranoia.2bk
-x86/win32/tst/paranoia.sbk
-x86/win32/tst/sort.1bk
-x86/win32/tst/sort.2bk
-x86/win32/tst/sort.sbk
-x86/win32/tst/spill.1bk
-x86/win32/tst/spill.2bk
-x86/win32/tst/spill.sbk
-x86/win32/tst/stdarg.1bk
-x86/win32/tst/stdarg.2bk
-x86/win32/tst/stdarg.sbk
-x86/win32/tst/struct.1bk
-x86/win32/tst/struct.2bk
-x86/win32/tst/struct.sbk
-x86/win32/tst/switch.1bk
-x86/win32/tst/switch.2bk
-x86/win32/tst/switch.sbk
-x86/win32/tst/wf1.1bk
-x86/win32/tst/wf1.2bk
-x86/win32/tst/wf1.sbk
-x86/win32/tst/yacc.1bk
-x86/win32/tst/yacc.2bk
-x86/win32/tst/yacc.sbk
-custom.mk
-packing.lst
+README
+CPYRIGHT
+LOG
+makefile
+makefile.nt
+src/2html.c
+src/alloc.c
+src/asdl.c
+src/bind.c
+src/bytecode.c
+src/c.h
+src/config.h
+src/dag.c
+src/decl.c
+src/enode.c
+src/error.c
+src/event.c
+src/expr.c
+src/gen.c
+src/init.c
+src/inits.c
+src/input.c
+src/lex.c
+src/list.c
+src/main.c
+src/null.c
+src/output.c
+src/pass2.c
+src/prof.c
+src/profio.c
+src/simp.c
+src/stab.c
+src/stab.h
+src/stmt.c
+src/string.c
+src/sym.c
+src/symbolic.c
+src/token.h
+src/trace.c
+src/tree.c
+src/types.c
+src/alpha.md
+src/dagcheck.md
+src/mips.md
+src/sparc.md
+src/x86.md
+src/x86linux.md
+src/run.sh
+src/rcc.asdl
+lib/assert.c
+lib/bbexit.c
+lib/yynull.c
+tst/8q.0
+tst/8q.c
+tst/array.0
+tst/array.c
+tst/cf.0
+tst/cf.c
+tst/cq.0
+tst/cq.c
+tst/cvt.0
+tst/cvt.c
+tst/fields.0
+tst/fields.c
+tst/front.0
+tst/front.c
+tst/incr.0
+tst/incr.c
+tst/init.0
+tst/init.c
+tst/limits.0
+tst/limits.c
+tst/paranoia.0
+tst/paranoia.c
+tst/sort.0
+tst/sort.c
+tst/spill.0
+tst/spill.c
+tst/stdarg.0
+tst/stdarg.c
+tst/struct.0
+tst/struct.c
+tst/switch.0
+tst/switch.c
+tst/wf1.0
+tst/wf1.c
+tst/yacc.0
+tst/yacc.c
+etc/bprint.c
+etc/gcc-solaris.c
+etc/irix.c
+etc/lcc.c
+etc/linux.c
+etc/ops.c
+etc/osf.c
+etc/solaris.c
+etc/win32.c
+cpp/cpp.c
+cpp/cpp.h
+cpp/eval.c
+cpp/getopt.c
+cpp/hideset.c
+cpp/include.c
+cpp/lex.c
+cpp/macro.c
+cpp/nlist.c
+cpp/tokens.c
+cpp/unix.c
+lburg/gram.c
+lburg/gram.y
+lburg/lburg.1
+lburg/lburg.c
+lburg/lburg.h
+include/alpha/osf/assert.h
+include/alpha/osf/ctype.h
+include/alpha/osf/errno.h
+include/alpha/osf/float.h
+include/alpha/osf/limits.h
+include/alpha/osf/locale.h
+include/alpha/osf/math.h
+include/alpha/osf/setjmp.h
+include/alpha/osf/signal.h
+include/alpha/osf/stdarg.h
+include/alpha/osf/stddef.h
+include/alpha/osf/stdio.h
+include/alpha/osf/stdlib.h
+include/alpha/osf/string.h
+include/alpha/osf/time.h
+include/sparc/solaris/assert.h
+include/sparc/solaris/ctype.h
+include/sparc/solaris/errno.h
+include/sparc/solaris/float.h
+include/sparc/solaris/limits.h
+include/sparc/solaris/locale.h
+include/sparc/solaris/math.h
+include/sparc/solaris/setjmp.h
+include/sparc/solaris/signal.h
+include/sparc/solaris/stdarg.h
+include/sparc/solaris/stddef.h
+include/sparc/solaris/stdio.h
+include/sparc/solaris/stdlib.h
+include/sparc/solaris/string.h
+include/sparc/solaris/time.h
+include/mips/irix/assert.h
+include/mips/irix/ctype.h
+include/mips/irix/errno.h
+include/mips/irix/float.h
+include/mips/irix/limits.h
+include/mips/irix/locale.h
+include/mips/irix/math.h
+include/mips/irix/setjmp.h
+include/mips/irix/signal.h
+include/mips/irix/stdarg.h
+include/mips/irix/stddef.h
+include/mips/irix/stdio.h
+include/mips/irix/stdlib.h
+include/mips/irix/string.h
+include/mips/irix/time.h
+include/x86/linux/assert.h
+include/x86/linux/float.h
+include/x86/linux/stdarg.h
+doc/4.html
+doc/install.html
+doc/bprint.1
+doc/lcc.1
+doc/bprint.pdf
+doc/lcc.pdf
+alpha/osf/tst/8q.1bk
+alpha/osf/tst/8q.2bk
+alpha/osf/tst/8q.sbk
+alpha/osf/tst/array.1bk
+alpha/osf/tst/array.2bk
+alpha/osf/tst/array.sbk
+alpha/osf/tst/cf.1bk
+alpha/osf/tst/cf.2bk
+alpha/osf/tst/cf.sbk
+alpha/osf/tst/cq.1bk
+alpha/osf/tst/cq.2bk
+alpha/osf/tst/cq.sbk
+alpha/osf/tst/cvt.1bk
+alpha/osf/tst/cvt.2bk
+alpha/osf/tst/cvt.sbk
+alpha/osf/tst/fields.1bk
+alpha/osf/tst/fields.2bk
+alpha/osf/tst/fields.sbk
+alpha/osf/tst/front.2bk
+alpha/osf/tst/front.sbk
+alpha/osf/tst/incr.1bk
+alpha/osf/tst/incr.2bk
+alpha/osf/tst/incr.sbk
+alpha/osf/tst/init.1bk
+alpha/osf/tst/init.2bk
+alpha/osf/tst/init.sbk
+alpha/osf/tst/limits.1bk
+alpha/osf/tst/limits.2bk
+alpha/osf/tst/limits.sbk
+alpha/osf/tst/paranoia.1bk
+alpha/osf/tst/paranoia.2bk
+alpha/osf/tst/paranoia.sbk
+alpha/osf/tst/sort.1bk
+alpha/osf/tst/sort.2bk
+alpha/osf/tst/sort.sbk
+alpha/osf/tst/spill.1bk
+alpha/osf/tst/spill.2bk
+alpha/osf/tst/spill.sbk
+alpha/osf/tst/stdarg.1bk
+alpha/osf/tst/stdarg.2bk
+alpha/osf/tst/stdarg.sbk
+alpha/osf/tst/struct.1bk
+alpha/osf/tst/struct.2bk
+alpha/osf/tst/struct.sbk
+alpha/osf/tst/switch.1bk
+alpha/osf/tst/switch.2bk
+alpha/osf/tst/switch.sbk
+alpha/osf/tst/wf1.1bk
+alpha/osf/tst/wf1.2bk
+alpha/osf/tst/wf1.sbk
+alpha/osf/tst/yacc.1bk
+alpha/osf/tst/yacc.2bk
+alpha/osf/tst/yacc.sbk
+sparc/solaris/tst/8q.1bk
+sparc/solaris/tst/8q.2bk
+sparc/solaris/tst/8q.sbk
+sparc/solaris/tst/array.1bk
+sparc/solaris/tst/array.2bk
+sparc/solaris/tst/array.sbk
+sparc/solaris/tst/cf.1bk
+sparc/solaris/tst/cf.2bk
+sparc/solaris/tst/cf.sbk
+sparc/solaris/tst/cq.1bk
+sparc/solaris/tst/cq.2bk
+sparc/solaris/tst/cq.sbk
+sparc/solaris/tst/cvt.1bk
+sparc/solaris/tst/cvt.2bk
+sparc/solaris/tst/cvt.sbk
+sparc/solaris/tst/fields.1bk
+sparc/solaris/tst/fields.2bk
+sparc/solaris/tst/fields.sbk
+sparc/solaris/tst/front.2bk
+sparc/solaris/tst/front.sbk
+sparc/solaris/tst/incr.1bk
+sparc/solaris/tst/incr.2bk
+sparc/solaris/tst/incr.sbk
+sparc/solaris/tst/init.1bk
+sparc/solaris/tst/init.2bk
+sparc/solaris/tst/init.sbk
+sparc/solaris/tst/limits.1bk
+sparc/solaris/tst/limits.2bk
+sparc/solaris/tst/limits.sbk
+sparc/solaris/tst/paranoia.1bk
+sparc/solaris/tst/paranoia.2bk
+sparc/solaris/tst/paranoia.sbk
+sparc/solaris/tst/sort.1bk
+sparc/solaris/tst/sort.2bk
+sparc/solaris/tst/sort.sbk
+sparc/solaris/tst/spill.1bk
+sparc/solaris/tst/spill.2bk
+sparc/solaris/tst/spill.sbk
+sparc/solaris/tst/stdarg.1bk
+sparc/solaris/tst/stdarg.2bk
+sparc/solaris/tst/stdarg.sbk
+sparc/solaris/tst/struct.1bk
+sparc/solaris/tst/struct.2bk
+sparc/solaris/tst/struct.sbk
+sparc/solaris/tst/switch.1bk
+sparc/solaris/tst/switch.2bk
+sparc/solaris/tst/switch.sbk
+sparc/solaris/tst/wf1.1bk
+sparc/solaris/tst/wf1.2bk
+sparc/solaris/tst/wf1.sbk
+sparc/solaris/tst/yacc.1bk
+sparc/solaris/tst/yacc.2bk
+sparc/solaris/tst/yacc.sbk
+mips/irix/tst/8q.1bk
+mips/irix/tst/8q.2bk
+mips/irix/tst/8q.sbk
+mips/irix/tst/array.1bk
+mips/irix/tst/array.2bk
+mips/irix/tst/array.sbk
+mips/irix/tst/cf.1bk
+mips/irix/tst/cf.2bk
+mips/irix/tst/cf.sbk
+mips/irix/tst/cq.1bk
+mips/irix/tst/cq.2bk
+mips/irix/tst/cq.sbk
+mips/irix/tst/cvt.1bk
+mips/irix/tst/cvt.2bk
+mips/irix/tst/cvt.sbk
+mips/irix/tst/fields.1bk
+mips/irix/tst/fields.2bk
+mips/irix/tst/fields.sbk
+mips/irix/tst/front.2bk
+mips/irix/tst/front.sbk
+mips/irix/tst/incr.2bk
+mips/irix/tst/incr.sbk
+mips/irix/tst/init.1bk
+mips/irix/tst/init.2bk
+mips/irix/tst/init.sbk
+mips/irix/tst/limits.1bk
+mips/irix/tst/limits.2bk
+mips/irix/tst/limits.sbk
+mips/irix/tst/paranoia.1bk
+mips/irix/tst/paranoia.2bk
+mips/irix/tst/paranoia.sbk
+mips/irix/tst/sort.1bk
+mips/irix/tst/sort.2bk
+mips/irix/tst/sort.sbk
+mips/irix/tst/spill.2bk
+mips/irix/tst/spill.sbk
+mips/irix/tst/stdarg.1bk
+mips/irix/tst/stdarg.2bk
+mips/irix/tst/stdarg.sbk
+mips/irix/tst/struct.1bk
+mips/irix/tst/struct.2bk
+mips/irix/tst/struct.sbk
+mips/irix/tst/switch.1bk
+mips/irix/tst/switch.2bk
+mips/irix/tst/switch.sbk
+mips/irix/tst/wf1.1bk
+mips/irix/tst/wf1.2bk
+mips/irix/tst/wf1.sbk
+mips/irix/tst/yacc.1bk
+mips/irix/tst/yacc.2bk
+mips/irix/tst/yacc.sbk
+x86/linux/tst/8q.1bk
+x86/linux/tst/8q.2bk
+x86/linux/tst/8q.sbk
+x86/linux/tst/array.1bk
+x86/linux/tst/array.2bk
+x86/linux/tst/array.sbk
+x86/linux/tst/cf.1bk
+x86/linux/tst/cf.2bk
+x86/linux/tst/cf.sbk
+x86/linux/tst/cq.1bk
+x86/linux/tst/cq.2bk
+x86/linux/tst/cq.sbk
+x86/linux/tst/cvt.1bk
+x86/linux/tst/cvt.2bk
+x86/linux/tst/cvt.sbk
+x86/linux/tst/fields.1bk
+x86/linux/tst/fields.2bk
+x86/linux/tst/fields.sbk
+x86/linux/tst/front.2bk
+x86/linux/tst/front.sbk
+x86/linux/tst/incr.1bk
+x86/linux/tst/incr.2bk
+x86/linux/tst/incr.sbk
+x86/linux/tst/init.1bk
+x86/linux/tst/init.2bk
+x86/linux/tst/init.sbk
+x86/linux/tst/limits.1bk
+x86/linux/tst/limits.2bk
+x86/linux/tst/limits.sbk
+x86/linux/tst/paranoia.1bk
+x86/linux/tst/paranoia.2bk
+x86/linux/tst/paranoia.sbk
+x86/linux/tst/sort.1bk
+x86/linux/tst/sort.2bk
+x86/linux/tst/sort.sbk
+x86/linux/tst/spill.1bk
+x86/linux/tst/spill.2bk
+x86/linux/tst/spill.sbk
+x86/linux/tst/stdarg.1bk
+x86/linux/tst/stdarg.2bk
+x86/linux/tst/stdarg.sbk
+x86/linux/tst/struct.1bk
+x86/linux/tst/struct.2bk
+x86/linux/tst/struct.sbk
+x86/linux/tst/switch.1bk
+x86/linux/tst/switch.2bk
+x86/linux/tst/switch.sbk
+x86/linux/tst/wf1.1bk
+x86/linux/tst/wf1.2bk
+x86/linux/tst/wf1.sbk
+x86/linux/tst/yacc.1bk
+x86/linux/tst/yacc.2bk
+x86/linux/tst/yacc.sbk
+x86/win32/tst/8q.1bk
+x86/win32/tst/8q.2bk
+x86/win32/tst/8q.sbk
+x86/win32/tst/array.1bk
+x86/win32/tst/array.2bk
+x86/win32/tst/array.sbk
+x86/win32/tst/cf.1bk
+x86/win32/tst/cf.2bk
+x86/win32/tst/cf.sbk
+x86/win32/tst/cq.1bk
+x86/win32/tst/cq.2bk
+x86/win32/tst/cq.sbk
+x86/win32/tst/cvt.1bk
+x86/win32/tst/cvt.2bk
+x86/win32/tst/cvt.sbk
+x86/win32/tst/fields.1bk
+x86/win32/tst/fields.2bk
+x86/win32/tst/fields.sbk
+x86/win32/tst/front.2bk
+x86/win32/tst/front.sbk
+x86/win32/tst/incr.1bk
+x86/win32/tst/incr.2bk
+x86/win32/tst/incr.sbk
+x86/win32/tst/init.1bk
+x86/win32/tst/init.2bk
+x86/win32/tst/init.sbk
+x86/win32/tst/limits.1bk
+x86/win32/tst/limits.2bk
+x86/win32/tst/limits.sbk
+x86/win32/tst/paranoia.1bk
+x86/win32/tst/paranoia.2bk
+x86/win32/tst/paranoia.sbk
+x86/win32/tst/sort.1bk
+x86/win32/tst/sort.2bk
+x86/win32/tst/sort.sbk
+x86/win32/tst/spill.1bk
+x86/win32/tst/spill.2bk
+x86/win32/tst/spill.sbk
+x86/win32/tst/stdarg.1bk
+x86/win32/tst/stdarg.2bk
+x86/win32/tst/stdarg.sbk
+x86/win32/tst/struct.1bk
+x86/win32/tst/struct.2bk
+x86/win32/tst/struct.sbk
+x86/win32/tst/switch.1bk
+x86/win32/tst/switch.2bk
+x86/win32/tst/switch.sbk
+x86/win32/tst/wf1.1bk
+x86/win32/tst/wf1.2bk
+x86/win32/tst/wf1.sbk
+x86/win32/tst/yacc.1bk
+x86/win32/tst/yacc.2bk
+x86/win32/tst/yacc.sbk
+custom.mk
+packing.lst
diff --git a/lcc/sparc/solaris/tst/8q.1bk b/lcc/sparc/solaris/tst/8q.1bk
index c66df8e..7ed6437 100755
--- a/lcc/sparc/solaris/tst/8q.1bk
+++ b/lcc/sparc/solaris/tst/8q.1bk
@@ -1,92 +1,92 @@
-1 5 8 6 3 7 2 4
-1 6 8 3 7 4 2 5
-1 7 4 6 8 2 5 3
-1 7 5 8 2 4 6 3
-2 4 6 8 3 1 7 5
-2 5 7 1 3 8 6 4
-2 5 7 4 1 8 6 3
-2 6 1 7 4 8 3 5
-2 6 8 3 1 4 7 5
-2 7 3 6 8 5 1 4
-2 7 5 8 1 4 6 3
-2 8 6 1 3 5 7 4
-3 1 7 5 8 2 4 6
-3 5 2 8 1 7 4 6
-3 5 2 8 6 4 7 1
-3 5 7 1 4 2 8 6
-3 5 8 4 1 7 2 6
-3 6 2 5 8 1 7 4
-3 6 2 7 1 4 8 5
-3 6 2 7 5 1 8 4
-3 6 4 1 8 5 7 2
-3 6 4 2 8 5 7 1
-3 6 8 1 4 7 5 2
-3 6 8 1 5 7 2 4
-3 6 8 2 4 1 7 5
-3 7 2 8 5 1 4 6
-3 7 2 8 6 4 1 5
-3 8 4 7 1 6 2 5
-4 1 5 8 2 7 3 6
-4 1 5 8 6 3 7 2
-4 2 5 8 6 1 3 7
-4 2 7 3 6 8 1 5
-4 2 7 3 6 8 5 1
-4 2 7 5 1 8 6 3
-4 2 8 5 7 1 3 6
-4 2 8 6 1 3 5 7
-4 6 1 5 2 8 3 7
-4 6 8 2 7 1 3 5
-4 6 8 3 1 7 5 2
-4 7 1 8 5 2 6 3
-4 7 3 8 2 5 1 6
-4 7 5 2 6 1 3 8
-4 7 5 3 1 6 8 2
-4 8 1 3 6 2 7 5
-4 8 1 5 7 2 6 3
-4 8 5 3 1 7 2 6
-5 1 4 6 8 2 7 3
-5 1 8 4 2 7 3 6
-5 1 8 6 3 7 2 4
-5 2 4 6 8 3 1 7
-5 2 4 7 3 8 6 1
-5 2 6 1 7 4 8 3
-5 2 8 1 4 7 3 6
-5 3 1 6 8 2 4 7
-5 3 1 7 2 8 6 4
-5 3 8 4 7 1 6 2
-5 7 1 3 8 6 4 2
-5 7 1 4 2 8 6 3
-5 7 2 4 8 1 3 6
-5 7 2 6 3 1 4 8
-5 7 2 6 3 1 8 4
-5 7 4 1 3 8 6 2
-5 8 4 1 3 6 2 7
-5 8 4 1 7 2 6 3
-6 1 5 2 8 3 7 4
-6 2 7 1 3 5 8 4
-6 2 7 1 4 8 5 3
-6 3 1 7 5 8 2 4
-6 3 1 8 4 2 7 5
-6 3 1 8 5 2 4 7
-6 3 5 7 1 4 2 8
-6 3 5 8 1 4 2 7
-6 3 7 2 4 8 1 5
-6 3 7 2 8 5 1 4
-6 3 7 4 1 8 2 5
-6 4 1 5 8 2 7 3
-6 4 2 8 5 7 1 3
-6 4 7 1 3 5 2 8
-6 4 7 1 8 2 5 3
-6 8 2 4 1 7 5 3
-7 1 3 8 6 4 2 5
-7 2 4 1 8 5 3 6
-7 2 6 3 1 4 8 5
-7 3 1 6 8 5 2 4
-7 3 8 2 5 1 6 4
-7 4 2 5 8 1 3 6
-7 4 2 8 6 1 3 5
-7 5 3 1 6 8 2 4
-8 2 4 1 7 5 3 6
-8 2 5 3 1 7 4 6
-8 3 1 6 2 5 7 4
-8 4 1 3 6 2 7 5
+1 5 8 6 3 7 2 4
+1 6 8 3 7 4 2 5
+1 7 4 6 8 2 5 3
+1 7 5 8 2 4 6 3
+2 4 6 8 3 1 7 5
+2 5 7 1 3 8 6 4
+2 5 7 4 1 8 6 3
+2 6 1 7 4 8 3 5
+2 6 8 3 1 4 7 5
+2 7 3 6 8 5 1 4
+2 7 5 8 1 4 6 3
+2 8 6 1 3 5 7 4
+3 1 7 5 8 2 4 6
+3 5 2 8 1 7 4 6
+3 5 2 8 6 4 7 1
+3 5 7 1 4 2 8 6
+3 5 8 4 1 7 2 6
+3 6 2 5 8 1 7 4
+3 6 2 7 1 4 8 5
+3 6 2 7 5 1 8 4
+3 6 4 1 8 5 7 2
+3 6 4 2 8 5 7 1
+3 6 8 1 4 7 5 2
+3 6 8 1 5 7 2 4
+3 6 8 2 4 1 7 5
+3 7 2 8 5 1 4 6
+3 7 2 8 6 4 1 5
+3 8 4 7 1 6 2 5
+4 1 5 8 2 7 3 6
+4 1 5 8 6 3 7 2
+4 2 5 8 6 1 3 7
+4 2 7 3 6 8 1 5
+4 2 7 3 6 8 5 1
+4 2 7 5 1 8 6 3
+4 2 8 5 7 1 3 6
+4 2 8 6 1 3 5 7
+4 6 1 5 2 8 3 7
+4 6 8 2 7 1 3 5
+4 6 8 3 1 7 5 2
+4 7 1 8 5 2 6 3
+4 7 3 8 2 5 1 6
+4 7 5 2 6 1 3 8
+4 7 5 3 1 6 8 2
+4 8 1 3 6 2 7 5
+4 8 1 5 7 2 6 3
+4 8 5 3 1 7 2 6
+5 1 4 6 8 2 7 3
+5 1 8 4 2 7 3 6
+5 1 8 6 3 7 2 4
+5 2 4 6 8 3 1 7
+5 2 4 7 3 8 6 1
+5 2 6 1 7 4 8 3
+5 2 8 1 4 7 3 6
+5 3 1 6 8 2 4 7
+5 3 1 7 2 8 6 4
+5 3 8 4 7 1 6 2
+5 7 1 3 8 6 4 2
+5 7 1 4 2 8 6 3
+5 7 2 4 8 1 3 6
+5 7 2 6 3 1 4 8
+5 7 2 6 3 1 8 4
+5 7 4 1 3 8 6 2
+5 8 4 1 3 6 2 7
+5 8 4 1 7 2 6 3
+6 1 5 2 8 3 7 4
+6 2 7 1 3 5 8 4
+6 2 7 1 4 8 5 3
+6 3 1 7 5 8 2 4
+6 3 1 8 4 2 7 5
+6 3 1 8 5 2 4 7
+6 3 5 7 1 4 2 8
+6 3 5 8 1 4 2 7
+6 3 7 2 4 8 1 5
+6 3 7 2 8 5 1 4
+6 3 7 4 1 8 2 5
+6 4 1 5 8 2 7 3
+6 4 2 8 5 7 1 3
+6 4 7 1 3 5 2 8
+6 4 7 1 8 2 5 3
+6 8 2 4 1 7 5 3
+7 1 3 8 6 4 2 5
+7 2 4 1 8 5 3 6
+7 2 6 3 1 4 8 5
+7 3 1 6 8 5 2 4
+7 3 8 2 5 1 6 4
+7 4 2 5 8 1 3 6
+7 4 2 8 6 1 3 5
+7 5 3 1 6 8 2 4
+8 2 4 1 7 5 3 6
+8 2 5 3 1 7 4 6
+8 3 1 6 2 5 7 4
+8 4 1 3 6 2 7 5
diff --git a/lcc/sparc/solaris/tst/8q.2bk b/lcc/sparc/solaris/tst/8q.2bk
index fb28350..d4dc0ed 100755
--- a/lcc/sparc/solaris/tst/8q.2bk
+++ b/lcc/sparc/solaris/tst/8q.2bk
@@ -1,2 +1,2 @@
-tst/8q.c:30: warning: missing return value
-tst/8q.c:39: warning: missing return value
+tst/8q.c:30: warning: missing return value
+tst/8q.c:39: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/8q.sbk b/lcc/sparc/solaris/tst/8q.sbk
index 5418dd7..e293f58 100755
--- a/lcc/sparc/solaris/tst/8q.sbk
+++ b/lcc/sparc/solaris/tst/8q.sbk
@@ -1,144 +1,144 @@
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-96,%sp
-mov %g0,%i5
-.L2:
-sll %i5,2,%i4
-set 1,%i3
-set down,%i2
-st %i3,[%i4+%i2]
-set up,%i2
-st %i3,[%i4+%i2]
-.L3:
-add %i5,1,%i5
-cmp %i5,15; bl .L2; nop
-mov %g0,%i5
-.L6:
-sll %i5,2,%i4
-set rows,%i3
-set 1,%i2
-st %i2,[%i4+%i3]
-.L7:
-add %i5,1,%i5
-cmp %i5,8; bl .L6; nop
-mov %g0,%o0
-call queens; nop
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.global queens
-.align 4
-queens:
-save %sp,-96,%sp
-mov %g0,%i5
-.L11:
-sll %i5,2,%i3
-set rows,%i2
-ld [%i3+%i2],%i3
-cmp %i3,%g0; be .L15; nop
-sub %i5,%i0,%i3
-sll %i3,2,%i3
-set up+28,%i2
-ld [%i3+%i2],%i3
-cmp %i3,%g0; be .L15; nop
-add %i5,%i0,%i3
-sll %i3,2,%i3
-set down,%i2
-ld [%i3+%i2],%i3
-cmp %i3,%g0; be .L15; nop
-add %i5,%i0,%i3
-sll %i3,2,%i3
-set down,%i2
-st %g0,[%i3+%i2]
-sub %i5,%i0,%i3
-sll %i3,2,%i3
-set up+28,%i2
-st %g0,[%i3+%i2]
-sll %i5,2,%i3
-set rows,%i2
-st %g0,[%i3+%i2]
-sll %i0,2,%i4
-set x,%i3
-st %i5,[%i4+%i3]
-cmp %i0,7; bne .L19; nop
-call print; nop
-ba .L20; nop
-.L19:
-add %i0,1,%o0
-call queens; nop
-.L20:
-set 1,%i4
-add %i5,%i0,%i3
-sll %i3,2,%i3
-set down,%i2
-st %i4,[%i3+%i2]
-sub %i5,%i0,%i3
-sll %i3,2,%i3
-set up+28,%i2
-st %i4,[%i3+%i2]
-sll %i5,2,%i3
-set rows,%i2
-st %i4,[%i3+%i2]
-.L15:
-.L12:
-add %i5,1,%i5
-cmp %i5,8; bl .L11; nop
-mov %g0,%i0
-.L10:
-ret; restore
-.type queens,#function
-.size queens,.-queens
-.global print
-.align 4
-print:
-save %sp,-96,%sp
-mov %g0,%i5
-.L23:
-set .L27,%o0
-sll %i5,2,%i4
-set x,%i3
-ld [%i4+%i3],%i4
-add %i4,49,%o1
-call printf; nop
-.L24:
-add %i5,1,%i5
-cmp %i5,8; bl .L23; nop
-set .L28,%o0
-call printf; nop
-mov %g0,%i0
-.L22:
-ret; restore
-.type print,#function
-.size print,.-print
-.section ".bss"
-.global x
-.type x,#object
-.size x,32
-.common x,32,4
-.global rows
-.type rows,#object
-.size rows,32
-.common rows,32,4
-.global down
-.type down,#object
-.size down,60
-.common down,60,4
-.global up
-.type up,#object
-.size up,60
-.common up,60,4
-.section ".rodata"
-.align 1
-.L28:
-.byte 10
-.byte 0
-.align 1
-.L27:
-.byte 37
-.byte 99
-.byte 32
-.byte 0
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-96,%sp
+mov %g0,%i5
+.L2:
+sll %i5,2,%i4
+set 1,%i3
+set down,%i2
+st %i3,[%i4+%i2]
+set up,%i2
+st %i3,[%i4+%i2]
+.L3:
+add %i5,1,%i5
+cmp %i5,15; bl .L2; nop
+mov %g0,%i5
+.L6:
+sll %i5,2,%i4
+set rows,%i3
+set 1,%i2
+st %i2,[%i4+%i3]
+.L7:
+add %i5,1,%i5
+cmp %i5,8; bl .L6; nop
+mov %g0,%o0
+call queens; nop
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.global queens
+.align 4
+queens:
+save %sp,-96,%sp
+mov %g0,%i5
+.L11:
+sll %i5,2,%i3
+set rows,%i2
+ld [%i3+%i2],%i3
+cmp %i3,%g0; be .L15; nop
+sub %i5,%i0,%i3
+sll %i3,2,%i3
+set up+28,%i2
+ld [%i3+%i2],%i3
+cmp %i3,%g0; be .L15; nop
+add %i5,%i0,%i3
+sll %i3,2,%i3
+set down,%i2
+ld [%i3+%i2],%i3
+cmp %i3,%g0; be .L15; nop
+add %i5,%i0,%i3
+sll %i3,2,%i3
+set down,%i2
+st %g0,[%i3+%i2]
+sub %i5,%i0,%i3
+sll %i3,2,%i3
+set up+28,%i2
+st %g0,[%i3+%i2]
+sll %i5,2,%i3
+set rows,%i2
+st %g0,[%i3+%i2]
+sll %i0,2,%i4
+set x,%i3
+st %i5,[%i4+%i3]
+cmp %i0,7; bne .L19; nop
+call print; nop
+ba .L20; nop
+.L19:
+add %i0,1,%o0
+call queens; nop
+.L20:
+set 1,%i4
+add %i5,%i0,%i3
+sll %i3,2,%i3
+set down,%i2
+st %i4,[%i3+%i2]
+sub %i5,%i0,%i3
+sll %i3,2,%i3
+set up+28,%i2
+st %i4,[%i3+%i2]
+sll %i5,2,%i3
+set rows,%i2
+st %i4,[%i3+%i2]
+.L15:
+.L12:
+add %i5,1,%i5
+cmp %i5,8; bl .L11; nop
+mov %g0,%i0
+.L10:
+ret; restore
+.type queens,#function
+.size queens,.-queens
+.global print
+.align 4
+print:
+save %sp,-96,%sp
+mov %g0,%i5
+.L23:
+set .L27,%o0
+sll %i5,2,%i4
+set x,%i3
+ld [%i4+%i3],%i4
+add %i4,49,%o1
+call printf; nop
+.L24:
+add %i5,1,%i5
+cmp %i5,8; bl .L23; nop
+set .L28,%o0
+call printf; nop
+mov %g0,%i0
+.L22:
+ret; restore
+.type print,#function
+.size print,.-print
+.section ".bss"
+.global x
+.type x,#object
+.size x,32
+.common x,32,4
+.global rows
+.type rows,#object
+.size rows,32
+.common rows,32,4
+.global down
+.type down,#object
+.size down,60
+.common down,60,4
+.global up
+.type up,#object
+.size up,60
+.common up,60,4
+.section ".rodata"
+.align 1
+.L28:
+.byte 10
+.byte 0
+.align 1
+.L27:
+.byte 37
+.byte 99
+.byte 32
+.byte 0
diff --git a/lcc/sparc/solaris/tst/array.1bk b/lcc/sparc/solaris/tst/array.1bk
index e188568..4d3817c 100755
--- a/lcc/sparc/solaris/tst/array.1bk
+++ b/lcc/sparc/solaris/tst/array.1bk
@@ -1,4 +1,4 @@
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
diff --git a/lcc/sparc/solaris/tst/array.2bk b/lcc/sparc/solaris/tst/array.2bk
index 0a9b206..c8cf31e 100755
--- a/lcc/sparc/solaris/tst/array.2bk
+++ b/lcc/sparc/solaris/tst/array.2bk
@@ -1,2 +1,2 @@
-tst/array.c:33: warning: missing return value
-tst/array.c:48: warning: missing return value
+tst/array.c:33: warning: missing return value
+tst/array.c:48: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/array.sbk b/lcc/sparc/solaris/tst/array.sbk
index 2dead90..8bb79c8 100755
--- a/lcc/sparc/solaris/tst/array.sbk
+++ b/lcc/sparc/solaris/tst/array.sbk
@@ -1,172 +1,172 @@
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-144,%sp
-mov %g0,%i4
-.L2:
-mov %g0,%i5
-.L6:
-sll %i5,2,%i2
-sll %i4,4,%i1
-set x,%i0
-add %i1,%i0,%i1
-smul %i4,1000,%i0
-add %i0,%i5,%i0
-st %i0,[%i2+%i1]
-.L7:
-add %i5,1,%i5
-cmp %i5,4; bl .L6; nop
-sll %i4,2,%i2
-set y,%i1
-sll %i4,4,%i0
-set x,%l7
-add %i0,%l7,%i0
-st %i0,[%i2+%i1]
-.L3:
-add %i4,1,%i4
-cmp %i4,3; bl .L2; nop
-call f; nop
-mov %g0,%i4
-.L10:
-sll %i4,4,%i2
-add -48,%fp,%i1
-add %i2,%i1,%i2
-mov %i2,%i3
-sll %i4,2,%i1
-set y,%i0
-st %i2,[%i1+%i0]
-mov %g0,%i5
-.L14:
-sll %i5,2,%i2
-sll %i4,4,%i1
-set x,%i0
-add %i1,%i0,%i1
-ld [%i2+%i1],%i1
-st %i1,[%i2+%i3]
-.L15:
-add %i5,1,%i5
-cmp %i5,4; bl .L14; nop
-.L11:
-add %i4,1,%i4
-cmp %i4,3; bl .L10; nop
-add -48,%fp,%o0
-set y,%o1
-call g; nop
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.global f
-.align 4
-f:
-save %sp,-96,%sp
-mov %g0,%i4
-.L19:
-mov %g0,%i5
-.L23:
-set .L27,%o0
-sll %i5,2,%i3
-sll %i4,4,%i2
-set x,%i1
-add %i2,%i1,%i2
-ld [%i3+%i2],%o1
-call printf; nop
-.L24:
-add %i5,1,%i5
-cmp %i5,4; bl .L23; nop
-.L20:
-add %i4,1,%i4
-cmp %i4,3; bl .L19; nop
-set .L28,%o0
-call printf; nop
-mov %g0,%i4
-.L29:
-mov %g0,%i5
-.L33:
-set .L27,%o0
-sll %i5,2,%i3
-sll %i4,2,%i2
-set y,%i1
-ld [%i2+%i1],%i2
-ld [%i3+%i2],%o1
-call printf; nop
-.L34:
-add %i5,1,%i5
-cmp %i5,4; bl .L33; nop
-.L30:
-add %i4,1,%i4
-cmp %i4,3; bl .L29; nop
-set .L28,%o0
-call printf; nop
-mov %g0,%i0
-.L18:
-ret; restore
-.type f,#function
-.size f,.-f
-.global g
-.align 4
-g:
-save %sp,-96,%sp
-mov %g0,%i4
-.L38:
-mov %g0,%i5
-.L42:
-set .L27,%o0
-sll %i5,2,%i3
-sll %i4,4,%i2
-add %i2,%i0,%i2
-ld [%i3+%i2],%o1
-call printf; nop
-.L43:
-add %i5,1,%i5
-cmp %i5,4; bl .L42; nop
-.L39:
-add %i4,1,%i4
-cmp %i4,3; bl .L38; nop
-set .L28,%o0
-call printf; nop
-mov %g0,%i4
-.L46:
-mov %g0,%i5
-.L50:
-set .L27,%o0
-sll %i5,2,%i3
-sll %i4,2,%i2
-ld [%i2+%i1],%i2
-ld [%i3+%i2],%o1
-call printf; nop
-.L51:
-add %i5,1,%i5
-cmp %i5,4; bl .L50; nop
-.L47:
-add %i4,1,%i4
-cmp %i4,3; bl .L46; nop
-set .L28,%o0
-call printf; nop
-mov %g0,%i0
-.L37:
-ret; restore
-.type g,#function
-.size g,.-g
-.section ".bss"
-.global y
-.type y,#object
-.size y,12
-.common y,12,4
-.global x
-.type x,#object
-.size x,48
-.common x,48,4
-.section ".rodata"
-.align 1
-.L28:
-.byte 10
-.byte 0
-.align 1
-.L27:
-.byte 32
-.byte 37
-.byte 100
-.byte 0
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-144,%sp
+mov %g0,%i4
+.L2:
+mov %g0,%i5
+.L6:
+sll %i5,2,%i2
+sll %i4,4,%i1
+set x,%i0
+add %i1,%i0,%i1
+smul %i4,1000,%i0
+add %i0,%i5,%i0
+st %i0,[%i2+%i1]
+.L7:
+add %i5,1,%i5
+cmp %i5,4; bl .L6; nop
+sll %i4,2,%i2
+set y,%i1
+sll %i4,4,%i0
+set x,%l7
+add %i0,%l7,%i0
+st %i0,[%i2+%i1]
+.L3:
+add %i4,1,%i4
+cmp %i4,3; bl .L2; nop
+call f; nop
+mov %g0,%i4
+.L10:
+sll %i4,4,%i2
+add -48,%fp,%i1
+add %i2,%i1,%i2
+mov %i2,%i3
+sll %i4,2,%i1
+set y,%i0
+st %i2,[%i1+%i0]
+mov %g0,%i5
+.L14:
+sll %i5,2,%i2
+sll %i4,4,%i1
+set x,%i0
+add %i1,%i0,%i1
+ld [%i2+%i1],%i1
+st %i1,[%i2+%i3]
+.L15:
+add %i5,1,%i5
+cmp %i5,4; bl .L14; nop
+.L11:
+add %i4,1,%i4
+cmp %i4,3; bl .L10; nop
+add -48,%fp,%o0
+set y,%o1
+call g; nop
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.global f
+.align 4
+f:
+save %sp,-96,%sp
+mov %g0,%i4
+.L19:
+mov %g0,%i5
+.L23:
+set .L27,%o0
+sll %i5,2,%i3
+sll %i4,4,%i2
+set x,%i1
+add %i2,%i1,%i2
+ld [%i3+%i2],%o1
+call printf; nop
+.L24:
+add %i5,1,%i5
+cmp %i5,4; bl .L23; nop
+.L20:
+add %i4,1,%i4
+cmp %i4,3; bl .L19; nop
+set .L28,%o0
+call printf; nop
+mov %g0,%i4
+.L29:
+mov %g0,%i5
+.L33:
+set .L27,%o0
+sll %i5,2,%i3
+sll %i4,2,%i2
+set y,%i1
+ld [%i2+%i1],%i2
+ld [%i3+%i2],%o1
+call printf; nop
+.L34:
+add %i5,1,%i5
+cmp %i5,4; bl .L33; nop
+.L30:
+add %i4,1,%i4
+cmp %i4,3; bl .L29; nop
+set .L28,%o0
+call printf; nop
+mov %g0,%i0
+.L18:
+ret; restore
+.type f,#function
+.size f,.-f
+.global g
+.align 4
+g:
+save %sp,-96,%sp
+mov %g0,%i4
+.L38:
+mov %g0,%i5
+.L42:
+set .L27,%o0
+sll %i5,2,%i3
+sll %i4,4,%i2
+add %i2,%i0,%i2
+ld [%i3+%i2],%o1
+call printf; nop
+.L43:
+add %i5,1,%i5
+cmp %i5,4; bl .L42; nop
+.L39:
+add %i4,1,%i4
+cmp %i4,3; bl .L38; nop
+set .L28,%o0
+call printf; nop
+mov %g0,%i4
+.L46:
+mov %g0,%i5
+.L50:
+set .L27,%o0
+sll %i5,2,%i3
+sll %i4,2,%i2
+ld [%i2+%i1],%i2
+ld [%i3+%i2],%o1
+call printf; nop
+.L51:
+add %i5,1,%i5
+cmp %i5,4; bl .L50; nop
+.L47:
+add %i4,1,%i4
+cmp %i4,3; bl .L46; nop
+set .L28,%o0
+call printf; nop
+mov %g0,%i0
+.L37:
+ret; restore
+.type g,#function
+.size g,.-g
+.section ".bss"
+.global y
+.type y,#object
+.size y,12
+.common y,12,4
+.global x
+.type x,#object
+.size x,48
+.common x,48,4
+.section ".rodata"
+.align 1
+.L28:
+.byte 10
+.byte 0
+.align 1
+.L27:
+.byte 32
+.byte 37
+.byte 100
+.byte 0
diff --git a/lcc/sparc/solaris/tst/cf.1bk b/lcc/sparc/solaris/tst/cf.1bk
index 24e21ba..9e331c5 100755
--- a/lcc/sparc/solaris/tst/cf.1bk
+++ b/lcc/sparc/solaris/tst/cf.1bk
@@ -1,51 +1,51 @@
-char freq
-011 8.1
-012 6.1
-040 11.9
-! 0.2
-" 1.5
-% 0.6
-& 0.4
-' 0.4
-( 2.9
-) 2.9
-* 0.8
-+ 1.3
-, 1.3
-- 0.4
-. 0.6
-/ 1.0
-0 2.5
-1 1.9
-2 0.6
-3 0.2
-7 0.4
-8 0.2
-; 3.8
-< 0.8
-= 2.7
-> 0.2
-[ 1.5
-\ 0.8
-] 1.5
-a 3.1
-c 4.4
-e 2.3
-f 6.0
-g 1.3
-h 1.0
-i 5.0
-l 1.0
-m 0.2
-n 3.3
-o 2.1
-p 1.0
-q 0.4
-r 4.2
-s 0.6
-t 3.8
-u 1.2
-v 0.6
-w 0.2
-{ 0.6
-} 0.6
+char freq
+011 8.1
+012 6.1
+040 11.9
+! 0.2
+" 1.5
+% 0.6
+& 0.4
+' 0.4
+( 2.9
+) 2.9
+* 0.8
++ 1.3
+, 1.3
+- 0.4
+. 0.6
+/ 1.0
+0 2.5
+1 1.9
+2 0.6
+3 0.2
+7 0.4
+8 0.2
+; 3.8
+< 0.8
+= 2.7
+> 0.2
+[ 1.5
+\ 0.8
+] 1.5
+a 3.1
+c 4.4
+e 2.3
+f 6.0
+g 1.3
+h 1.0
+i 5.0
+l 1.0
+m 0.2
+n 3.3
+o 2.1
+p 1.0
+q 0.4
+r 4.2
+s 0.6
+t 3.8
+u 1.2
+v 0.6
+w 0.2
+{ 0.6
+} 0.6
diff --git a/lcc/sparc/solaris/tst/cf.sbk b/lcc/sparc/solaris/tst/cf.sbk
index a9c7d30..8ac1a39 100755
--- a/lcc/sparc/solaris/tst/cf.sbk
+++ b/lcc/sparc/solaris/tst/cf.sbk
@@ -1,143 +1,143 @@
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-96,%sp
-cmp %i0,1; bg .L2; nop
-set .L4,%i2
-ld [%i2],%f31
-st %f31,[%fp+-4]
-ba .L3; nop
-.L2:
-ld [%i1+4],%o0
-call atof; nop
-fmovs %f0,%f31
-set .L5,%i2
-ld [%i2],%f30
-fdivs %f31,%f30,%f31
-st %f31,[%fp+-4]
-.L3:
-mov %g0,%i5
-.L6:
-mov %i5,%i2
-add %i2,1,%i5
-sll %i2,2,%i2
-set f,%l7
-set .L4,%l6
-ld [%l6],%f31
-st %f31,[%i2+%l7]
-.L7:
-cmp %i5,127; ble .L6; nop
-mov %g0,%i4
-ba .L11; nop
-.L10:
-sll %i3,2,%i2
-set f,%l7
-add %i2,%l7,%i2
-ld [%i2],%f31
-set .L13,%l7
-ld [%l7],%f30
-fadds %f31,%f30,%f31
-st %f31,[%i2]
-add %i4,1,%i4
-.L11:
-call getchar; nop
-mov %o0,%i3
-cmp %o0,-1; bne .L10; nop
-set .L14,%o0
-call printf; nop
-mov %g0,%i5
-.L15:
-sll %i5,2,%i2
-set f,%l7
-ld [%i2+%l7],%f31
-set .L4,%i2
-ld [%i2],%f30
-fcmpes %f31,%f30; nop; fbue .L19; nop
-st %i4,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fdivs %f31,%f30,%f31
-ld [%fp+-4],%f30
-fcmpes %f31,%f30; nop; fbul .L19; nop
-cmp %i5,32; bg .L21; nop
-set .L23,%o0
-mov %i5,%o1
-call printf; nop
-ba .L22; nop
-.L21:
-set .L24,%o0
-mov %i5,%o1
-call printf; nop
-.L22:
-set .L25,%o0
-set .L5,%i2
-ld [%i2],%f31
-sll %i5,2,%i2
-set f,%l7
-ld [%i2+%l7],%f30
-fmuls %f31,%f30,%f31
-st %i4,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fdivs %f31,%f30,%f31
-fstod %f31,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L19:
-.L16:
-add %i5,1,%i5
-cmp %i5,127; ble .L15; nop
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.section ".bss"
-.global f
-.type f,#object
-.size f,512
-.common f,512,4
-.section ".rodata"
-.align 1
-.L25:
-.byte 9
-.byte 37
-.byte 46
-.byte 49
-.byte 102
-.byte 10
-.byte 0
-.align 1
-.L24:
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.L23:
-.byte 37
-.byte 48
-.byte 51
-.byte 111
-.byte 0
-.align 1
-.L14:
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 9
-.byte 102
-.byte 114
-.byte 101
-.byte 113
-.byte 10
-.byte 0
-.align 4
-.L13:
-.word 0x3f800000
-.align 4
-.L5:
-.word 0x42c80000
-.align 4
-.L4:
-.word 0x0
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-96,%sp
+cmp %i0,1; bg .L2; nop
+set .L4,%i2
+ld [%i2],%f31
+st %f31,[%fp+-4]
+ba .L3; nop
+.L2:
+ld [%i1+4],%o0
+call atof; nop
+fmovs %f0,%f31
+set .L5,%i2
+ld [%i2],%f30
+fdivs %f31,%f30,%f31
+st %f31,[%fp+-4]
+.L3:
+mov %g0,%i5
+.L6:
+mov %i5,%i2
+add %i2,1,%i5
+sll %i2,2,%i2
+set f,%l7
+set .L4,%l6
+ld [%l6],%f31
+st %f31,[%i2+%l7]
+.L7:
+cmp %i5,127; ble .L6; nop
+mov %g0,%i4
+ba .L11; nop
+.L10:
+sll %i3,2,%i2
+set f,%l7
+add %i2,%l7,%i2
+ld [%i2],%f31
+set .L13,%l7
+ld [%l7],%f30
+fadds %f31,%f30,%f31
+st %f31,[%i2]
+add %i4,1,%i4
+.L11:
+call getchar; nop
+mov %o0,%i3
+cmp %o0,-1; bne .L10; nop
+set .L14,%o0
+call printf; nop
+mov %g0,%i5
+.L15:
+sll %i5,2,%i2
+set f,%l7
+ld [%i2+%l7],%f31
+set .L4,%i2
+ld [%i2],%f30
+fcmpes %f31,%f30; nop; fbue .L19; nop
+st %i4,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fdivs %f31,%f30,%f31
+ld [%fp+-4],%f30
+fcmpes %f31,%f30; nop; fbul .L19; nop
+cmp %i5,32; bg .L21; nop
+set .L23,%o0
+mov %i5,%o1
+call printf; nop
+ba .L22; nop
+.L21:
+set .L24,%o0
+mov %i5,%o1
+call printf; nop
+.L22:
+set .L25,%o0
+set .L5,%i2
+ld [%i2],%f31
+sll %i5,2,%i2
+set f,%l7
+ld [%i2+%l7],%f30
+fmuls %f31,%f30,%f31
+st %i4,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fdivs %f31,%f30,%f31
+fstod %f31,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L19:
+.L16:
+add %i5,1,%i5
+cmp %i5,127; ble .L15; nop
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.section ".bss"
+.global f
+.type f,#object
+.size f,512
+.common f,512,4
+.section ".rodata"
+.align 1
+.L25:
+.byte 9
+.byte 37
+.byte 46
+.byte 49
+.byte 102
+.byte 10
+.byte 0
+.align 1
+.L24:
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.L23:
+.byte 37
+.byte 48
+.byte 51
+.byte 111
+.byte 0
+.align 1
+.L14:
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 9
+.byte 102
+.byte 114
+.byte 101
+.byte 113
+.byte 10
+.byte 0
+.align 4
+.L13:
+.word 0x3f800000
+.align 4
+.L5:
+.word 0x42c80000
+.align 4
+.L4:
+.word 0x0
diff --git a/lcc/sparc/solaris/tst/cq.1bk b/lcc/sparc/solaris/tst/cq.1bk
index b7b7643..ec956b7 100755
--- a/lcc/sparc/solaris/tst/cq.1bk
+++ b/lcc/sparc/solaris/tst/cq.1bk
@@ -1,48 +1,48 @@
-Section s22 returned 0.
-Decimal and octal/hex constants sometimes give
- different results when assigned to longs.
-Decimal and octal/hex constants sometimes give
- different results when assigned to longs.
-Section s241 returned 0.
-Section s243 returned 0.
-Section s244 returned 0.
-Section s25 returned 0.
- 8 bits in chars.
- 32 bits in ints.
- 16 bits in shorts.
- 32 bits in longs.
- 32 bits in unsigneds.
- 32 bits in floats.
- 64 bits in doubles.
-1.192093e-07 is the least number that can be added to 1. (float).
-2.220446e-16 is the least number that can be added to 1. (double).
-Section s26 returned 0.
-Section s4 returned 0.
-Section s61 returned 0.
-Section s626 returned 0.
-Section s71 returned 0.
-Section s72 returned 0.
-Section s757 returned 0.
-Section s7813 returned 0.
-Section s714 returned 0.
-Section s715 returned 0.
-Register count for char is unreliable.
-Register count for pointer is unreliable.
-Register count for int is unreliable.
-Section s81 returned 0.
-Section s84 returned 0.
-char alignment: 1
-short alignment: 2
-int alignment: 4
-long alignment: 4
-unsigned alignment: 4
-float alignment: 4
-double alignment: 8
-Sign extension in fields
-Be especially careful with 1-bit fields!
-Section s85 returned 0.
-Section s86 returned 0.
-Section s88 returned 0.
-Section s9 returned 0.
-
-No errors detected.
+Section s22 returned 0.
+Decimal and octal/hex constants sometimes give
+ different results when assigned to longs.
+Decimal and octal/hex constants sometimes give
+ different results when assigned to longs.
+Section s241 returned 0.
+Section s243 returned 0.
+Section s244 returned 0.
+Section s25 returned 0.
+ 8 bits in chars.
+ 32 bits in ints.
+ 16 bits in shorts.
+ 32 bits in longs.
+ 32 bits in unsigneds.
+ 32 bits in floats.
+ 64 bits in doubles.
+1.192093e-07 is the least number that can be added to 1. (float).
+2.220446e-16 is the least number that can be added to 1. (double).
+Section s26 returned 0.
+Section s4 returned 0.
+Section s61 returned 0.
+Section s626 returned 0.
+Section s71 returned 0.
+Section s72 returned 0.
+Section s757 returned 0.
+Section s7813 returned 0.
+Section s714 returned 0.
+Section s715 returned 0.
+Register count for char is unreliable.
+Register count for pointer is unreliable.
+Register count for int is unreliable.
+Section s81 returned 0.
+Section s84 returned 0.
+char alignment: 1
+short alignment: 2
+int alignment: 4
+long alignment: 4
+unsigned alignment: 4
+float alignment: 4
+double alignment: 8
+Sign extension in fields
+Be especially careful with 1-bit fields!
+Section s85 returned 0.
+Section s86 returned 0.
+Section s88 returned 0.
+Section s9 returned 0.
+
+No errors detected.
diff --git a/lcc/sparc/solaris/tst/cq.2bk b/lcc/sparc/solaris/tst/cq.2bk
index 295f5b6..7c6ba5e 100755
--- a/lcc/sparc/solaris/tst/cq.2bk
+++ b/lcc/sparc/solaris/tst/cq.2bk
@@ -1,25 +1,25 @@
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `4294967296'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `040000000000'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `0x100000000'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `68719476735'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `0777777777777'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `0xfffffffff'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `68719476736'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `01000000000000'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `0x1000000000'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:533: warning: missing return value
-tst/cq.c:1169: warning: missing return value
-tst/cq.c:5294: warning: unreachable code
-tst/cq.c:5303: warning: missing return value
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `4294967296'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `040000000000'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `0x100000000'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `68719476735'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `0777777777777'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `0xfffffffff'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `68719476736'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `01000000000000'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `0x1000000000'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:533: warning: missing return value
+tst/cq.c:1169: warning: missing return value
+tst/cq.c:5294: warning: unreachable code
+tst/cq.c:5303: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/cq.sbk b/lcc/sparc/solaris/tst/cq.sbk
index b924ce4..d688e5f 100755
--- a/lcc/sparc/solaris/tst/cq.sbk
+++ b/lcc/sparc/solaris/tst/cq.sbk
@@ -1,13322 +1,13322 @@
-.section ".data"
-.type .2,#object
-.align 4
-.2:
-.word s22
-.word s241
-.word s243
-.word s244
-.word s25
-.word s26
-.word s4
-.word s61
-.word s626
-.word s71
-.word s72
-.word s757
-.word s7813
-.word s714
-.word s715
-.word s81
-.word s84
-.word s85
-.word s86
-.word s88
-.word s9
-.section ".bss"
-.size .2,84
-.type .3,#object
-.size .3,68
-.local .3
-.common .3,68,4
-.type .4,#object
-.size .4,4
-.local .4
-.common .4,4,4
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-96,%sp
-set .3+36,%i4
-set 1,%i3
-st %i3,[%i4]
-set .3+40,%i4
-set 1,%i3
-st %i3,[%i4]
-set .3+44,%i4
-set 1,%i3
-st %i3,[%i4]
-set .3+48,%i4
-set 1,%i3
-st %i3,[%i4]
-set .4,%i4
-set .3,%i3
-st %i3,[%i4]
-mov %g0,%i5
-ba .L12; nop
-.L9:
-set .4,%i4
-ld [%i4],%o0
-sll %i5,2,%i4
-set .2,%i3
-ld [%i4+%i3],%i4
-call %i4; nop
-set .3+52,%i3
-st %o0,[%i3]
-set .3+56,%i4
-set .3+56,%i3
-ld [%i3],%i3
-set .3+52,%i2
-ld [%i2],%i2
-add %i3,%i2,%i3
-st %i3,[%i4]
-set .3+36,%i4
-ld [%i4],%i4
-cmp %i4,0; be .L17; nop
-set .L20,%o0
-set .3+60,%o1
-set .3+52,%i4
-ld [%i4],%o2
-call printf; nop
-.L17:
-.L10:
-add %i5,1,%i5
-.L12:
-mov %i5,%i4
-set 21,%i3
-cmp %i4,%i3; blu .L9; nop
-set .3+56,%i4
-ld [%i4],%i4
-cmp %i4,0; bne .L23; nop
-set .L26,%o0
-call printf; nop
-ba .L24; nop
-.L23:
-set .L27,%o0
-call printf; nop
-.L24:
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.section ".data"
-.type .29,#object
-.align 1
-.29:
-.byte 115
-.byte 50
-.byte 50
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .29,10
-.type .30,#object
-.size .30,8
-.align 1
-.30:
-.byte 115
-.byte 50
-.byte 50
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s22
-.section ".text"
-.align 4
-s22:
-save %sp,-96,%sp
-mov %g0,%i3
-set .30,%i5
-add %i0,60,%i4
-.L31:
-.L32:
-mov %i4,%l4
-add %l4,1,%i4
-mov %i5,%l3
-add %l3,1,%i5
-ldsb [%l3],%l3
-stb %l3,[%l4]
-sll %l3,8*(4-1),%l4; sra %l4,8*(4-1),%l4
-cmp %l4,0; bne .L31; nop
-set 1,%i2
-set 2,%l7
-set 3,%l6
-set 4,%i1
-add %i2,%l7,%l4
-add %l4,%l6,%l4
-add %l4,%i1,%l4
-cmp %l4,10; be .L34; nop
-add %i3,1,%i3
-ld [%i0+44],%l4
-cmp %l4,0; be .L36; nop
-set .29,%o0
-set 1,%o1
-call printf; nop
-.L36:
-.L34:
-set 2,%l5
-cmp %l5,%i2; bne .L38; nop
-add %i3,4,%i3
-ld [%i0+44],%l4
-cmp %l4,0; be .L40; nop
-set .29,%o0
-set 4,%o1
-call printf; nop
-.L40:
-.L38:
-mov %i3,%i0
-.L28:
-ret; restore
-.type s22,#function
-.size s22,.-s22
-.section ".data"
-.type .43,#object
-.align 1
-.43:
-.byte 115
-.byte 50
-.byte 52
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .43,11
-.type .44,#object
-.size .44,8
-.align 1
-.44:
-.byte 115
-.byte 50
-.byte 52
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.type .45,#object
-.size .45,156
-.align 4
-.45:
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x0
-.word 0x6
-.word 0x0
-.word 0x8
-.word 0x0
-.word 0xc
-.word 0x0
-.word 0x10
-.word 0x0
-.word 0x12
-.word 0x0
-.word 0x14
-.word 0x0
-.word 0x18
-.word 0x0
-.word 0x1c
-.word 0x0
-.word 0x1e
-.word 0x0
-.word 0x20
-.word 0x0
-.word 0x24
-.global s241
-.section ".text"
-.align 4
-s241:
-save %sp,-560,%sp
-mov %g0,%i2
-mov %g0,%i1
-set .44,%i4
-add %i0,60,%i3
-.L46:
-.L47:
-mov %i3,%l7
-add %l7,1,%i3
-mov %i4,%l6
-add %l6,1,%i4
-ldsb [%l6],%l6
-stb %l6,[%l7]
-sll %l6,8*(4-1),%l7; sra %l7,8*(4-1),%l7
-cmp %l7,0; bne .L46; nop
-ba .L49; nop
-add %i2,1,%i2
-ld [%i0+44],%l7
-cmp %l7,0; be .L51; nop
-set .43,%o0
-set 1,%o1
-call printf; nop
-.L51:
-.L49:
-ba .L53; nop
-add %i2,2,%i2
-ld [%i0+44],%l7
-cmp %l7,0; be .L55; nop
-set .43,%o0
-set 2,%o1
-call printf; nop
-.L55:
-.L53:
-ba .L57; nop
-add %i2,4,%i2
-ld [%i0+44],%l7
-cmp %l7,0; be .L59; nop
-set .43,%o0
-set 4,%o1
-call printf; nop
-.L59:
-.L57:
-ba .L61; nop
-add %i2,8,%i2
-ld [%i0+44],%l7
-cmp %l7,0; be .L63; nop
-set .43,%o0
-set 8,%o1
-call printf; nop
-.L63:
-.L61:
-mov %g0,%i5
-.L65:
-sll %i5,2,%l7
-set .45,%l6
-st %i5,[%l7+%l6]
-.L66:
-add %i5,1,%i5
-cmp %i5,17; bl .L65; nop
-set 18,%i5
-.L69:
-sll %i5,2,%l7
-set .45,%l6
-add %l7,%l6,%l7
-ld [%l7],%o0
-call pow2; nop
-st %o0,[%l7]
-sll %i5,2,%l7
-set .45-4,%l6
-set .45,%l5
-ld [%l7+%l5],%l5
-sub %l5,1,%l5
-st %l5,[%l7+%l6]
-add %i5,2,%i5
-.L70:
-cmp %i5,39; bl .L69; nop
-st %g0,[%fp+-156]
-st %g0,[%fp+-312]
-st %g0,[%fp+-468]
-set 1,%l7
-st %l7,[%fp+-152]
-set 1,%l7
-st %l7,[%fp+-308]
-set 1,%l7
-st %l7,[%fp+-464]
-set 2,%l7
-st %l7,[%fp+-148]
-set 2,%l7
-st %l7,[%fp+-304]
-set 2,%l7
-st %l7,[%fp+-460]
-set 3,%l7
-st %l7,[%fp+-144]
-set 3,%l7
-st %l7,[%fp+-300]
-set 3,%l7
-st %l7,[%fp+-456]
-set 4,%l7
-st %l7,[%fp+-140]
-set 4,%l7
-st %l7,[%fp+-296]
-set 4,%l7
-st %l7,[%fp+-452]
-set 5,%l7
-st %l7,[%fp+-136]
-set 5,%l7
-st %l7,[%fp+-292]
-set 5,%l7
-st %l7,[%fp+-448]
-set 6,%l7
-st %l7,[%fp+-132]
-set 6,%l7
-st %l7,[%fp+-288]
-set 6,%l7
-st %l7,[%fp+-444]
-set 7,%l7
-st %l7,[%fp+-128]
-set 7,%l7
-st %l7,[%fp+-284]
-set 7,%l7
-st %l7,[%fp+-440]
-set 8,%l7
-st %l7,[%fp+-124]
-set 8,%l7
-st %l7,[%fp+-280]
-set 8,%l7
-st %l7,[%fp+-436]
-set 9,%l7
-st %l7,[%fp+-120]
-set 9,%l7
-st %l7,[%fp+-276]
-set 9,%l7
-st %l7,[%fp+-432]
-set 10,%l7
-st %l7,[%fp+-116]
-set 10,%l7
-st %l7,[%fp+-272]
-set 10,%l7
-st %l7,[%fp+-428]
-set 11,%l7
-st %l7,[%fp+-112]
-set 11,%l7
-st %l7,[%fp+-268]
-set 11,%l7
-st %l7,[%fp+-424]
-set 12,%l7
-st %l7,[%fp+-108]
-set 12,%l7
-st %l7,[%fp+-264]
-set 12,%l7
-st %l7,[%fp+-420]
-set 13,%l7
-st %l7,[%fp+-104]
-set 13,%l7
-st %l7,[%fp+-260]
-set 13,%l7
-st %l7,[%fp+-416]
-set 14,%l7
-st %l7,[%fp+-100]
-set 14,%l7
-st %l7,[%fp+-256]
-set 14,%l7
-st %l7,[%fp+-412]
-set 15,%l7
-st %l7,[%fp+-96]
-set 15,%l7
-st %l7,[%fp+-252]
-set 15,%l7
-st %l7,[%fp+-408]
-set 16,%l7
-st %l7,[%fp+-92]
-set 16,%l7
-st %l7,[%fp+-248]
-set 16,%l7
-st %l7,[%fp+-404]
-set 63,%l7
-st %l7,[%fp+-88]
-set 63,%l7
-st %l7,[%fp+-244]
-set 63,%l7
-st %l7,[%fp+-400]
-set 64,%l7
-st %l7,[%fp+-84]
-set 64,%l7
-st %l7,[%fp+-240]
-set 64,%l7
-st %l7,[%fp+-396]
-set 255,%l7
-st %l7,[%fp+-80]
-set 255,%l7
-st %l7,[%fp+-236]
-set 255,%l7
-st %l7,[%fp+-392]
-set 256,%l7
-st %l7,[%fp+-76]
-set 256,%l7
-st %l7,[%fp+-232]
-set 256,%l7
-st %l7,[%fp+-388]
-set 4095,%l7
-st %l7,[%fp+-72]
-set 4095,%l7
-st %l7,[%fp+-228]
-set 4095,%l7
-st %l7,[%fp+-384]
-set 4096,%l7
-st %l7,[%fp+-68]
-set 4096,%l7
-st %l7,[%fp+-224]
-set 4096,%l7
-st %l7,[%fp+-380]
-set 65535,%l7
-st %l7,[%fp+-64]
-set 65535,%l7
-st %l7,[%fp+-220]
-set 65535,%l7
-st %l7,[%fp+-376]
-set 65536,%l7
-st %l7,[%fp+-60]
-set 65536,%l7
-st %l7,[%fp+-216]
-set 65536,%l7
-st %l7,[%fp+-372]
-set 262143,%l7
-st %l7,[%fp+-56]
-set 262143,%l7
-st %l7,[%fp+-212]
-set 262143,%l7
-st %l7,[%fp+-368]
-set 262144,%l7
-st %l7,[%fp+-52]
-set 262144,%l7
-st %l7,[%fp+-208]
-set 262144,%l7
-st %l7,[%fp+-364]
-set 1048575,%l7
-st %l7,[%fp+-48]
-set 1048575,%l7
-st %l7,[%fp+-204]
-set 1048575,%l7
-st %l7,[%fp+-360]
-set 1048576,%l7
-st %l7,[%fp+-44]
-set 1048576,%l7
-st %l7,[%fp+-200]
-set 1048576,%l7
-st %l7,[%fp+-356]
-set 16777215,%l7
-st %l7,[%fp+-40]
-set 16777215,%l7
-st %l7,[%fp+-196]
-set 16777215,%l7
-st %l7,[%fp+-352]
-set 16777216,%l7
-st %l7,[%fp+-36]
-set 16777216,%l7
-st %l7,[%fp+-192]
-set 16777216,%l7
-st %l7,[%fp+-348]
-set 268435455,%l7
-st %l7,[%fp+-32]
-set 268435455,%l7
-st %l7,[%fp+-188]
-set 268435455,%l7
-st %l7,[%fp+-344]
-set 268435456,%l7
-st %l7,[%fp+-28]
-set 268435456,%l7
-st %l7,[%fp+-184]
-set 268435456,%l7
-st %l7,[%fp+-340]
-set 1073741823,%l7
-st %l7,[%fp+-24]
-set 1073741823,%l7
-st %l7,[%fp+-180]
-set 1073741823,%l7
-st %l7,[%fp+-336]
-set 1073741824,%l7
-st %l7,[%fp+-20]
-set 1073741824,%l7
-st %l7,[%fp+-176]
-set 1073741824,%l7
-st %l7,[%fp+-332]
-set 0xffffffff,%l7
-st %l7,[%fp+-16]
-set 0xffffffff,%l7
-st %l7,[%fp+-172]
-set 0xffffffff,%l7
-st %l7,[%fp+-328]
-set 0xffffffff,%l7
-st %l7,[%fp+-12]
-set 0xffffffff,%l7
-st %l7,[%fp+-168]
-set 0xffffffff,%l7
-st %l7,[%fp+-324]
-set 0xffffffff,%l7
-st %l7,[%fp+-8]
-set 0xffffffff,%l7
-st %l7,[%fp+-164]
-set 0xffffffff,%l7
-st %l7,[%fp+-320]
-set 0xffffffff,%l7
-st %l7,[%fp+-4]
-set 0xffffffff,%l7
-st %l7,[%fp+-160]
-set 0xffffffff,%l7
-st %l7,[%fp+-316]
-mov %g0,%i5
-.L188:
-sll %i5,2,%l7
-add -156,%fp,%l6
-ld [%l7+%l6],%l6
-set .45,%l5
-ld [%l7+%l5],%l5
-cmp %l5,%l6; bne .L195; nop
-add -312,%fp,%l5
-ld [%l7+%l5],%l5
-cmp %l6,%l5; bne .L195; nop
-add -468,%fp,%l6
-ld [%l7+%l6],%l7
-cmp %l5,%l7; be .L192; nop
-.L195:
-ld [%i0+40],%l7
-cmp %l7,0; be .L196; nop
-set .L198,%o0
-call printf; nop
-set .L199,%o0
-call printf; nop
-.L196:
-.L192:
-.L189:
-add %i5,1,%i5
-cmp %i5,39; bl .L188; nop
-cmp %i1,0; be .L200; nop
-set 16,%i2
-.L200:
-mov %i2,%i0
-.L42:
-ret; restore
-.type s241,#function
-.size s241,.-s241
-.global pow2
-.align 4
-pow2:
-set 1,%o5
-ba .L204; nop
-.L203:
-sll %o5,1,%o5
-.L204:
-mov %o0,%o4
-sub %o4,1,%o0
-cmp %o4,0; bne .L203; nop
-mov %o5,%o0
-.L202:
-retl; nop
-.type pow2,#function
-.size pow2,.-pow2
-.section ".data"
-.type .207,#object
-.align 1
-.207:
-.byte 115
-.byte 50
-.byte 52
-.byte 51
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .207,11
-.type .208,#object
-.size .208,8
-.align 1
-.208:
-.byte 115
-.byte 50
-.byte 52
-.byte 51
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s243
-.section ".text"
-.align 4
-s243:
-save %sp,-352,%sp
-mov %g0,%i3
-set .208,%i5
-add %i0,60,%i4
-.L209:
-.L210:
-mov %i4,%i2
-add %i2,1,%i4
-mov %i5,%i1
-add %i1,1,%i5
-ldsb [%i1],%i1
-stb %i1,[%i2]
-sll %i1,8*(4-1),%i2; sra %i2,8*(4-1),%i2
-cmp %i2,0; bne .L209; nop
-add -256,%fp,%o0
-call zerofill; nop
-set 1,%i2
-stb %i2,[%fp+-159]
-set 1,%i2
-stb %i2,[%fp+-191]
-set 1,%i2
-stb %i2,[%fp+-130]
-set 1,%i2
-stb %i2,[%fp+-208]
-set 1,%i2
-stb %i2,[%fp+-158]
-set 1,%i2
-stb %i2,[%fp+-190]
-set 1,%i2
-stb %i2,[%fp+-223]
-set 1,%i2
-stb %i2,[%fp+-207]
-set 1,%i2
-stb %i2,[%fp+-157]
-set 1,%i2
-stb %i2,[%fp+-189]
-set 1,%i2
-stb %i2,[%fp+-222]
-set 1,%i2
-stb %i2,[%fp+-206]
-set 1,%i2
-stb %i2,[%fp+-156]
-set 1,%i2
-stb %i2,[%fp+-188]
-set 1,%i2
-stb %i2,[%fp+-221]
-set 1,%i2
-stb %i2,[%fp+-205]
-set 1,%i2
-stb %i2,[%fp+-155]
-set 1,%i2
-stb %i2,[%fp+-187]
-set 1,%i2
-stb %i2,[%fp+-219]
-set 1,%i2
-stb %i2,[%fp+-204]
-set 1,%i2
-stb %i2,[%fp+-154]
-set 1,%i2
-stb %i2,[%fp+-186]
-set 1,%i2
-stb %i2,[%fp+-218]
-set 1,%i2
-stb %i2,[%fp+-203]
-set 1,%i2
-stb %i2,[%fp+-153]
-set 1,%i2
-stb %i2,[%fp+-185]
-set 1,%i2
-stb %i2,[%fp+-216]
-set 1,%i2
-stb %i2,[%fp+-202]
-set 1,%i2
-stb %i2,[%fp+-152]
-set 1,%i2
-stb %i2,[%fp+-184]
-set 1,%i2
-stb %i2,[%fp+-215]
-set 1,%i2
-stb %i2,[%fp+-201]
-set 1,%i2
-stb %i2,[%fp+-151]
-set 1,%i2
-stb %i2,[%fp+-183]
-set 1,%i2
-stb %i2,[%fp+-161]
-set 1,%i2
-stb %i2,[%fp+-200]
-set 1,%i2
-stb %i2,[%fp+-150]
-set 1,%i2
-stb %i2,[%fp+-182]
-set 1,%i2
-stb %i2,[%fp+-195]
-set 1,%i2
-stb %i2,[%fp+-199]
-set 1,%i2
-stb %i2,[%fp+-149]
-set 1,%i2
-stb %i2,[%fp+-181]
-set 1,%i2
-stb %i2,[%fp+-211]
-set 1,%i2
-stb %i2,[%fp+-148]
-set 1,%i2
-stb %i2,[%fp+-180]
-set 1,%i2
-stb %i2,[%fp+-162]
-set 1,%i2
-stb %i2,[%fp+-147]
-set 1,%i2
-stb %i2,[%fp+-179]
-set 1,%i2
-stb %i2,[%fp+-132]
-set 1,%i2
-stb %i2,[%fp+-246]
-set 1,%i2
-stb %i2,[%fp+-146]
-set 1,%i2
-stb %i2,[%fp+-178]
-set 1,%i2
-stb %i2,[%fp+-247]
-set 1,%i2
-stb %i2,[%fp+-145]
-set 1,%i2
-stb %i2,[%fp+-177]
-set 1,%i2
-stb %i2,[%fp+-133]
-set 1,%i2
-stb %i2,[%fp+-248]
-set 1,%i2
-stb %i2,[%fp+-144]
-set 1,%i2
-stb %i2,[%fp+-176]
-set 1,%i2
-stb %i2,[%fp+-131]
-set 1,%i2
-stb %i2,[%fp+-243]
-set 1,%i2
-stb %i2,[%fp+-143]
-set 1,%i2
-stb %i2,[%fp+-175]
-set 1,%i2
-stb %i2,[%fp+-165]
-set 1,%i2
-stb %i2,[%fp+-244]
-set 1,%i2
-stb %i2,[%fp+-142]
-set 1,%i2
-stb %i2,[%fp+-174]
-set 1,%i2
-stb %i2,[%fp+-163]
-set 1,%i2
-stb %i2,[%fp+-141]
-set 1,%i2
-stb %i2,[%fp+-173]
-set 1,%i2
-stb %i2,[%fp+-213]
-set 1,%i2
-stb %i2,[%fp+-164]
-set 1,%i2
-stb %i2,[%fp+-140]
-set 1,%i2
-stb %i2,[%fp+-172]
-set 1,%i2
-stb %i2,[%fp+-197]
-set 1,%i2
-stb %i2,[%fp+-217]
-set 1,%i2
-stb %i2,[%fp+-139]
-set 1,%i2
-stb %i2,[%fp+-171]
-set 1,%i2
-stb %i2,[%fp+-214]
-set 1,%i2
-stb %i2,[%fp+-138]
-set 1,%i2
-stb %i2,[%fp+-170]
-set 1,%i2
-stb %i2,[%fp+-198]
-set 1,%i2
-stb %i2,[%fp+-256]
-stb %i2,[%fp+-137]
-set 1,%i2
-stb %i2,[%fp+-169]
-set 1,%i2
-stb %i2,[%fp+-196]
-set 1,%i2
-stb %i2,[%fp+-224]
-set 1,%i2
-stb %i2,[%fp+-136]
-set 1,%i2
-stb %i2,[%fp+-168]
-set 1,%i2
-stb %i2,[%fp+-194]
-set 1,%i2
-stb %i2,[%fp+-135]
-set 1,%i2
-stb %i2,[%fp+-167]
-set 1,%i2
-stb %i2,[%fp+-212]
-set 1,%i2
-stb %i2,[%fp+-134]
-set 1,%i2
-stb %i2,[%fp+-166]
-set 1,%i2
-stb %i2,[%fp+-210]
-set 1,%i2
-stb %i2,[%fp+-193]
-set 1,%i2
-stb %i2,[%fp+-209]
-add -256,%fp,%o0
-call sumof; nop
-cmp %o0,98; be .L309; nop
-add %i3,1,%i3
-ld [%i0+44],%i2
-cmp %i2,0; be .L311; nop
-set .207,%o0
-set 1,%o1
-call printf; nop
-.L311:
-.L309:
-ba .L313; nop
-add %i3,8,%i3
-ld [%i0+44],%i2
-cmp %i2,0; be .L315; nop
-set .207,%o0
-set 8,%o1
-call printf; nop
-.L315:
-.L313:
-mov %i3,%i0
-.L206:
-ret; restore
-.type s243,#function
-.size s243,.-s243
-.global zerofill
-.align 4
-zerofill:
-mov %g0,%o5
-.L318:
-mov %o0,%o4
-add %o4,1,%o0
-stb %g0,[%o4]
-.L319:
-add %o5,1,%o5
-cmp %o5,256; bl .L318; nop
-mov %g0,%o0
-.L317:
-retl; nop
-.type zerofill,#function
-.size zerofill,.-zerofill
-.global sumof
-.align 4
-sumof:
-mov %o0,%o3
-mov %g0,%o5
-mov %g0,%o4
-.L323:
-mov %o3,%o2
-add %o2,1,%o3
-ldsb [%o2],%o2
-add %o5,%o2,%o5
-.L324:
-add %o4,1,%o4
-cmp %o4,256; bl .L323; nop
-mov %o5,%o0
-.L322:
-retl; nop
-.type sumof,#function
-.size sumof,.-sumof
-.section ".data"
-.type .328,#object
-.align 1
-.328:
-.byte 115
-.byte 50
-.byte 52
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .328,11
-.type .329,#object
-.size .329,8
-.align 1
-.329:
-.byte 115
-.byte 50
-.byte 52
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s244
-.section ".text"
-.align 4
-s244:
-save %sp,-160,%sp
-set .329,%i4
-add %i0,60,%i3
-.L330:
-.L331:
-mov %i3,%l7
-add %l7,1,%i3
-mov %i4,%l6
-add %l6,1,%i4
-ldsb [%l6],%l6
-stb %l6,[%l7]
-sll %l6,8*(4-1),%l7; sra %l7,8*(4-1),%l7
-cmp %l7,0; bne .L330; nop
-mov %g0,%i1
-mov %g0,%i2
-set .L333,%l7
-ld2 [%l7],%f30
-std %f30,[%fp+-64]
-std %f30,[%fp+-56]
-set .L333,%l7
-ld2 [%l7],%f30
-std %f30,[%fp+-48]
-set .L333,%l7
-ld2 [%l7],%f30
-std %f30,[%fp+-40]
-set .L333,%l7
-ld2 [%l7],%f30
-std %f30,[%fp+-32]
-set .L333,%l7
-ld2 [%l7],%f30
-std %f30,[%fp+-24]
-set .L333,%l7
-ld2 [%l7],%f30
-std %f30,[%fp+-16]
-set .L333,%l7
-ld2 [%l7],%f30
-std %f30,[%fp+-8]
-mov %g0,%i2
-mov %g0,%i5
-.L341:
-sll %i5,3,%l7
-add -64,%fp,%l6
-add %l7,%l6,%l6
-ld2 [%l6],%f30
-add -56,%fp,%l6
-add %l7,%l6,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbue .L345; nop
-set 1,%i2
-.L345:
-.L342:
-add %i5,1,%i5
-cmp %i5,7; bl .L341; nop
-cmp %i2,0; be .L348; nop
-ld [%i0+44],%l7
-cmp %l7,0; be .L350; nop
-set .328,%o0
-set 1,%o1
-call printf; nop
-.L350:
-add %i1,1,%i1
-.L348:
-ba .L352; nop
-ld [%i0+44],%l7
-cmp %l7,0; be .L354; nop
-set .328,%o0
-set 2,%o1
-call printf; nop
-.L354:
-add %i1,2,%i1
-.L352:
-mov %i1,%i0
-.L327:
-ret; restore
-.type s244,#function
-.size s244,.-s244
-.section ".data"
-.type .357,#object
-.align 1
-.357:
-.byte 115
-.byte 50
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .357,10
-.type .358,#object
-.size .358,8
-.align 1
-.358:
-.byte 115
-.byte 50
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s25
-.section ".text"
-.align 4
-s25:
-save %sp,-96,%sp
-set .358,%i2
-add %i0,60,%i1
-.L359:
-.L360:
-mov %i1,%l5
-add %l5,1,%i1
-mov %i2,%l4
-add %l4,1,%i2
-ldsb [%l4],%l4
-stb %l4,[%l5]
-sll %l4,8*(4-1),%l5; sra %l5,8*(4-1),%l5
-cmp %l5,0; bne .L359; nop
-mov %g0,%l7
-set .L362,%i4
-ldsb [%i4+1],%l5
-ldsb [%i4],%l4
-cmp %l4,%l5; bne .L366; nop
-ldsb [%i4+2],%l4
-cmp %l5,%l4; bne .L366; nop
-cmp %l4,46; be .L363; nop
-.L366:
-add %l7,1,%l7
-ld [%i0+44],%l5
-cmp %l5,0; be .L367; nop
-set .357,%o0
-set 1,%o1
-call printf; nop
-.L367:
-.L363:
-ldsb [%i4+3],%l5
-cmp %l5,0; be .L369; nop
-add %l7,4,%l7
-ld [%i0+44],%l5
-cmp %l5,0; be .L371; nop
-set .357,%o0
-set 4,%o1
-call printf; nop
-.L371:
-.L369:
-set .L375+1,%l5
-ldsb [%l5],%l5
-cmp %l5,34; be .L373; nop
-add %l7,8,%l7
-ld [%i0+44],%l5
-cmp %l5,0; be .L377; nop
-set .357,%o0
-set 8,%o1
-call printf; nop
-.L377:
-.L373:
-set .L379,%i4
-ldsb [%i4],%l5
-cmp %l5,10; bne .L387; nop
-ldsb [%i4+1],%l5
-cmp %l5,9; bne .L387; nop
-ldsb [%i4+2],%l5
-cmp %l5,8; bne .L387; nop
-ldsb [%i4+3],%l5
-cmp %l5,13; bne .L387; nop
-ldsb [%i4+4],%l5
-cmp %l5,12; bne .L387; nop
-ldsb [%i4+5],%l5
-cmp %l5,92; bne .L387; nop
-ldsb [%i4+6],%l5
-cmp %l5,39; be .L380; nop
-.L387:
-add %l7,16,%l7
-ld [%i0+44],%l5
-cmp %l5,0; be .L388; nop
-set .357,%o0
-set 16,%o1
-call printf; nop
-.L388:
-.L380:
-set .L390,%l5
-mov %l5,%i3
-mov %l5,%i4
-mov %g0,%l6
-mov %g0,%i5
-ba .L394; nop
-.L391:
-ldsb [%i5+%i4],%l5
-ldsb [%i5+%i3],%l4
-cmp %l5,%l4; be .L395; nop
-set 1,%l6
-.L395:
-.L392:
-add %i5,1,%i5
-.L394:
-mov %i5,%l5
-set 7,%l4
-cmp %l5,%l4; blu .L391; nop
-cmp %l6,0; be .L397; nop
-add %l7,32,%l7
-ld [%i0+44],%l5
-cmp %l5,0; be .L399; nop
-set .357,%o0
-set 32,%o1
-call printf; nop
-.L399:
-.L397:
-mov %l7,%i0
-.L356:
-ret; restore
-.type s25,#function
-.size s25,.-s25
-.section ".data"
-.type .402,#object
-.size .402,8
-.align 1
-.402:
-.byte 115
-.byte 50
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.type .403,#object
-.align 1
-.403:
-.byte 37
-.byte 51
-.byte 100
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 37
-.byte 115
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.size .403,18
-.type .404,#object
-.align 1
-.404:
-.byte 37
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 97
-.byte 100
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 49
-.byte 46
-.byte 32
-.byte 40
-.byte 37
-.byte 115
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.size .404,54
-.global s26
-.section ".text"
-.align 4
-s26:
-save %sp,-128,%sp
-set .402,%i4
-add %i0,60,%i3
-.L405:
-.L406:
-mov %i3,%i1
-add %i1,1,%i3
-mov %i4,%l7
-add %l7,1,%i4
-ldsb [%l7],%l7
-stb %l7,[%i1]
-sll %l7,8*(4-1),%i1; sra %i1,8*(4-1),%i1
-cmp %i1,0; bne .L405; nop
-st %g0,[%i0]
-mov %g0,%i2
-set 1,%i5
-ba .L409; nop
-.L408:
-sll %i5,8*(4-1),%i1; sra %i1,8*(4-1),%i1
-sll %i1,1,%i1
-mov %i1,%i5
-ld [%i0],%i1
-add %i1,1,%i1
-st %i1,[%i0]
-.L409:
-sll %i2,8*(4-1),%i1; sra %i1,8*(4-1),%i1
-sll %i5,8*(4-1),%l7; sra %l7,8*(4-1),%l7
-cmp %i1,%l7; bne .L408; nop
-ld [%i0],%i1
-sll %i1,2,%i1
-st %i1,[%i0+4]
-ld [%i0],%i1
-sll %i1,1,%i1
-st %i1,[%i0+8]
-ld [%i0],%i1
-sll %i1,2,%i1
-st %i1,[%i0+12]
-ld [%i0],%i1
-sll %i1,2,%i1
-st %i1,[%i0+16]
-ld [%i0],%i1
-sll %i1,2,%i1
-st %i1,[%i0+20]
-ld [%i0],%i1
-sll %i1,3,%i1
-st %i1,[%i0+24]
-set .L411,%i1
-ld [%i1],%f31
-st %f31,[%fp+-12]
-st %f31,[%fp+-4]
-set .L412,%i1
-ld [%i1],%f31
-st %f31,[%fp+-8]
-ba .L414; nop
-.L413:
-ld [%fp+-4],%f31
-ld [%fp+-12],%f30
-fadds %f30,%f31,%f30
-st %f30,[%fp+-8]
-fstod %f31,%f30
-set .L416,%i1
-ld2 [%i1],%f28
-fdivd %f30,%f28,%f30
-fdtos %f30,%f31
-st %f31,[%fp+-4]
-.L414:
-ld [%fp+-8],%f31
-ld [%fp+-12],%f30
-fcmpes %f31,%f30; nop; fbne .L413; nop
-set .L417,%i1
-ld2 [%i1],%f30
-ld [%fp+-4],%f29
-fstod %f29,%f28
-fmuld %f30,%f28,%f30
-fdtos %f30,%f31
-st %f31,[%i0+28]
-set .L418,%i1
-ld2 [%i1],%f30
-std %f30,[%fp+-32]
-set .L411,%i1
-ld [%i1],%f31
-st %f31,[%fp+-4]
-set .L419,%i1
-ld2 [%i1],%f30
-std %f30,[%fp+-24]
-ba .L421; nop
-.L420:
-ld [%fp+-4],%f31
-fstod %f31,%f30
-ldd [%fp+-32],%f28
-faddd %f28,%f30,%f28
-std %f28,[%fp+-24]
-set .L416,%i1
-ld2 [%i1],%f28
-fdivd %f30,%f28,%f30
-fdtos %f30,%f31
-st %f31,[%fp+-4]
-.L421:
-ldd [%fp+-24],%f30
-ldd [%fp+-32],%f28
-fcmped %f30,%f28; nop; fbne .L420; nop
-set .L417,%i1
-ld2 [%i1],%f30
-ld [%fp+-4],%f29
-fstod %f29,%f28
-fmuld %f30,%f28,%f30
-fdtos %f30,%f31
-st %f31,[%i0+32]
-ld [%i0+40],%i1
-cmp %i1,0; be .L423; nop
-set .403,%o0
-ld [%i0],%o1
-set .L425,%o2
-call printf; nop
-set .403,%o0
-ld [%i0+4],%o1
-set .L426,%o2
-call printf; nop
-set .403,%o0
-ld [%i0+8],%o1
-set .L427,%o2
-call printf; nop
-set .403,%o0
-ld [%i0+12],%o1
-set .L428,%o2
-call printf; nop
-set .403,%o0
-ld [%i0+16],%o1
-set .L429,%o2
-call printf; nop
-set .403,%o0
-ld [%i0+20],%o1
-set .L430,%o2
-call printf; nop
-set .403,%o0
-ld [%i0+24],%o1
-set .L431,%o2
-call printf; nop
-set .404,%o0
-ld [%i0+28],%f31
-fstod %f31,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set .L430,%o3
-call printf; nop
-set .404,%o0
-ld [%i0+32],%f31
-fstod %f31,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set .L431,%o3
-call printf; nop
-.L423:
-mov %g0,%i0
-.L401:
-ret; restore
-.type s26,#function
-.size s26,.-s26
-.section ".data"
-.type .433,#object
-.align 1
-.433:
-.byte 115
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .433,9
-.type .434,#object
-.size .434,8
-.align 1
-.434:
-.byte 115
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s4
-.section ".text"
-.align 4
-s4:
-save %sp,-96,%sp
-mov %g0,%l7
-set .434,%i2
-add %i0,60,%i1
-.L435:
-.L436:
-mov %i1,%l3
-add %l3,1,%i1
-mov %i2,%l2
-add %l2,1,%i2
-ldsb [%l2],%l2
-stb %l2,[%l3]
-sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; bne .L435; nop
-mov %g0,%i5
-.L438:
-mov %i5,%o0
-call svtest; nop
-mov %o0,%l3
-call zero; nop
-cmp %l3,%o0; be .L442; nop
-set 1,%l7
-ld [%i0+44],%l3
-cmp %l3,0; be .L444; nop
-set .433,%o0
-set 1,%o1
-call printf; nop
-.L444:
-.L442:
-.L439:
-add %i5,1,%i5
-cmp %i5,3; bl .L438; nop
-call setev; nop
-call testev; nop
-cmp %o0,0; be .L446; nop
-add %l7,2,%l7
-ld [%i0+44],%l3
-cmp %l3,0; be .L448; nop
-set .433,%o0
-set 2,%o1
-call printf; nop
-.L448:
-.L446:
-ba .L450; nop
-add %l7,4,%l7
-ld [%i0+44],%l3
-cmp %l3,0; be .L452; nop
-set .433,%o0
-set 4,%o1
-call printf; nop
-.L452:
-.L450:
-set 0xffffffff,%i4
-set 1,%i3
-mov %g0,%i5
-ba .L457; nop
-.L454:
-and %i3,%i4,%i3
-srl %i4,1,%i4
-.L455:
-add %i5,1,%i5
-.L457:
-mov %i5,%l3
-ld [%i0],%l2
-sll %l2,2,%l2
-cmp %l3,%l2; blu .L454; nop
-set 1,%l3
-cmp %i3,%l3; bne .L460; nop
-cmp %i4,%g0; be .L458; nop
-.L460:
-add %l7,8,%l7
-ld [%i0+44],%l3
-cmp %l3,0; be .L461; nop
-set .433,%o0
-set 8,%o1
-call printf; nop
-.L461:
-.L458:
-mov %l7,%i0
-.L432:
-ret; restore
-.type s4,#function
-.size s4,.-s4
-.section ".bss"
-.type .464,#object
-.size .464,4
-.local .464
-.common .464,4,4
-.global svtest
-.section ".text"
-.align 4
-svtest:
-cmp %o0,0; be .L467; nop
-cmp %o0,1; be .L468; nop
-cmp %o0,2; be .L471; nop
-ba .L465; nop
-.L467:
-set .464,%o4
-set 1978,%o3
-st %o3,[%o4]
-mov %g0,%o5
-ba .L466; nop
-.L468:
-set .464,%o4
-ld [%o4],%o4
-cmp %o4,1978; be .L469; nop
-set 1,%o5
-ba .L466; nop
-.L469:
-set .464,%o4
-set 1929,%o3
-st %o3,[%o4]
-mov %g0,%o5
-ba .L466; nop
-.L471:
-set .464,%o4
-ld [%o4],%o4
-cmp %o4,1929; be .L472; nop
-set 1,%o5
-ba .L466; nop
-.L472:
-mov %g0,%o5
-.L465:
-.L466:
-mov %o5,%o0
-.L463:
-retl; nop
-.type svtest,#function
-.size svtest,.-svtest
-.section ".bss"
-.type .475,#object
-.size .475,4
-.local .475
-.common .475,4,4
-.global zero
-.section ".text"
-.align 4
-zero:
-set .475,%o4
-set 2,%o3
-st %o3,[%o4]
-mov %g0,%o5
-mov %o5,%o0
-.L474:
-retl; nop
-.type zero,#function
-.size zero,.-zero
-.global testev
-.align 4
-testev:
-set extvar,%o5
-ld [%o5],%o5
-cmp %o5,1066; be .L477; nop
-set 1,%o0
-ba .L476; nop
-.L477:
-mov %g0,%o0
-.L476:
-retl; nop
-.type testev,#function
-.size testev,.-testev
-.section ".data"
-.type .480,#object
-.align 1
-.480:
-.byte 115
-.byte 54
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .480,10
-.type .481,#object
-.size .481,8
-.align 1
-.481:
-.byte 115
-.byte 54
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.type .482,#object
-.align 1
-.482:
-.byte 65
-.byte 66
-.byte 67
-.byte 68
-.byte 69
-.byte 70
-.byte 71
-.byte 72
-.byte 73
-.byte 74
-.byte 75
-.byte 76
-.byte 77
-.byte 78
-.byte 79
-.byte 80
-.byte 81
-.byte 82
-.byte 83
-.byte 84
-.byte 85
-.byte 86
-.byte 87
-.byte 88
-.byte 89
-.byte 90
-.byte 0
-.size .482,27
-.type .483,#object
-.align 1
-.483:
-.byte 97
-.byte 98
-.byte 99
-.byte 100
-.byte 101
-.byte 102
-.byte 103
-.byte 104
-.byte 105
-.byte 106
-.byte 107
-.byte 108
-.byte 109
-.byte 110
-.byte 111
-.byte 112
-.byte 113
-.byte 114
-.byte 115
-.byte 116
-.byte 117
-.byte 118
-.byte 119
-.byte 120
-.byte 121
-.byte 122
-.byte 0
-.size .483,27
-.type .484,#object
-.align 1
-.484:
-.byte 48
-.byte 49
-.byte 50
-.byte 51
-.byte 52
-.byte 53
-.byte 54
-.byte 55
-.byte 56
-.byte 57
-.byte 0
-.size .484,11
-.type .485,#object
-.align 1
-.485:
-.byte 126
-.byte 33
-.byte 34
-.byte 35
-.byte 37
-.byte 38
-.byte 40
-.byte 41
-.byte 95
-.byte 61
-.byte 45
-.byte 94
-.byte 124
-.byte 123
-.byte 125
-.byte 91
-.byte 93
-.byte 43
-.byte 59
-.byte 42
-.byte 58
-.byte 60
-.byte 62
-.byte 44
-.byte 46
-.byte 63
-.byte 47
-.byte 0
-.size .485,28
-.type .486,#object
-.align 1
-.486:
-.byte 10
-.byte 9
-.byte 8
-.byte 13
-.byte 12
-.byte 92
-.byte 39
-.byte 0
-.size .486,8
-.type .487,#object
-.align 1
-.487:
-.byte 32
-.byte 0
-.byte 0
-.size .487,3
-.global s61
-.section ".text"
-.align 4
-s61:
-save %sp,-120,%sp
-set .481,%i3
-add %i0,60,%i2
-mov %g0,%l7
-.L488:
-.L489:
-mov %i2,%l3
-add %l3,1,%i2
-mov %i3,%l2
-add %l2,1,%i3
-ldsb [%l2],%l2
-stb %l2,[%l3]
-sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; bne .L488; nop
-set -19,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%fp+-28]
-ld [%fp+-28],%l3
-cmp %l3,-19; be .L491; nop
-add %l7,1,%l7
-ld [%i0+44],%l3
-cmp %l3,0; be .L493; nop
-set .480,%o0
-set 1,%o1
-call printf; nop
-.L493:
-.L491:
-set .482,%l3
-st %l3,[%fp+-24]
-set .483,%l3
-st %l3,[%fp+-20]
-set .484,%l3
-st %l3,[%fp+-16]
-set .485,%l3
-st %l3,[%fp+-12]
-set .486,%l3
-st %l3,[%fp+-8]
-set .487,%l3
-st %l3,[%fp+-4]
-mov %g0,%i4
-mov %g0,%i5
-ba .L505; nop
-.L504:
-sll %i5,2,%l3
-add -24,%fp,%l2
-add %l3,%l2,%l3
-ld [%l3],%l2
-add %l2,1,%l1
-st %l1,[%l3]
-ldsb [%l2],%l3
-cmp %l3,0; bge .L507; nop
-set 1,%i4
-.L507:
-.L505:
-sll %i5,2,%l3
-add -24,%fp,%l2
-ld [%l3+%l2],%l3
-ldsb [%l3],%l3
-cmp %l3,0; bne .L504; nop
-.L501:
-add %i5,1,%i5
-cmp %i5,6; bl .L505; nop
-cmp %i4,0; be .L509; nop
-add %l7,2,%l7
-ld [%i0+44],%l3
-cmp %l3,0; be .L511; nop
-set .480,%o0
-set 2,%o1
-call printf; nop
-.L511:
-.L509:
-set 1048579,%i1
-mov %i1,%l6
-mov %i1,%l5
-sll %l6,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,%i1; be .L516; nop
-cmp %l3,3; bne .L515; nop
-.L516:
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,%i1; be .L513; nop
-cmp %l3,3; be .L513; nop
-.L515:
-add %l7,8,%l7
-ld [%i0+44],%l3
-cmp %l3,0; be .L517; nop
-set .480,%o0
-set 8,%o1
-call printf; nop
-.L517:
-.L513:
-mov %l7,%i0
-.L479:
-ret; restore
-.type s61,#function
-.size s61,.-s61
-.section ".data"
-.type .520,#object
-.align 1
-.520:
-.byte 115
-.byte 54
-.byte 50
-.byte 54
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .520,11
-.type .521,#object
-.size .521,8
-.align 1
-.521:
-.byte 115
-.byte 54
-.byte 50
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s626
-.section ".text"
-.align 4
-s626:
-save %sp,-176,%sp
-set .521,%i2
-add %i0,60,%i1
-st %g0,[%fp+-76]
-.L522:
-.L523:
-mov %i1,%l3
-add %l3,1,%i1
-mov %i2,%l2
-add %l2,1,%i2
-ldsb [%l2],%l2
-stb %l2,[%l3]
-sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; bne .L522; nop
-set .L411,%l3
-ld [%l3],%f31
-st %f31,[%fp+-32]
-set 1,%l3
-mov %l3,%l7
-mov %l3,%i4
-mov %g0,%i5
-ba .L528; nop
-.L525:
-set .L529,%l3
-ld [%l3],%f31
-ld [%fp+-32],%f30
-fmuls %f31,%f30,%f31
-st %f31,[%fp+-32]
-sll %i4,1,%l3
-or %l3,%l7,%i4
-.L526:
-add %i5,1,%i5
-.L528:
-ld [%i0+12],%l3
-sub %l3,2,%l3
-cmp %i5,%l3; bl .L525; nop
-st %i4,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%fp+-84]
-ld [%fp+-32],%f31
-ld [%fp+-84],%f30
-fsubs %f31,%f30,%f30
-fdivs %f30,%f31,%f31
-st %f31,[%fp+-32]
-ld [%fp+-32],%f31
-fstod %f31,%f30
-set .L416,%l3
-ld2 [%l3],%f28
-ld [%i0+28],%f27
-fstod %f27,%f26
-fmuld %f28,%f26,%f28
-fcmped %f30,%f28; nop; fbule .L530; nop
-ld [%fp+-76],%l3
-add %l3,2,%l3
-st %l3,[%fp+-76]
-ld [%i0+44],%l3
-cmp %l3,0; be .L532; nop
-set .520,%o0
-set 2,%o1
-call printf; nop
-.L532:
-.L530:
-set 125,%l5
-set 125,%l4
-set 125,%l3
-st %l3,[%fp+-48]
-set 15625,%l3
-st %l3,[%fp+-68]
-set 125,%l3
-st %l3,[%fp+-52]
-set 15625,%l3
-st %l3,[%fp+-72]
-set 125,%l6
-set 15625,%l3
-st %l3,[%fp+-80]
-set .L534,%l3
-ld [%l3],%f31
-st %f31,[%fp+-44]
-set .L535,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-64]
-set .L536,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-mov %g0,%i5
-.L537:
-add -28,%fp,%l3
-stb %g0,[%i5+%l3]
-.L538:
-add %i5,1,%i5
-cmp %i5,28; bl .L537; nop
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-smul %l3,%l3,%l3
-ld [%fp+-68],%l2
-cmp %l3,%l2; be .L541; nop
-set 1,%l3
-stb %l3,[%fp+-28]
-.L541:
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-smul %l2,%l3,%l3
-ld [%fp+-68],%l2
-cmp %l3,%l2; be .L543; nop
-set 1,%l3
-stb %l3,[%fp+-27]
-.L543:
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-smul %l3,%l3,%l3
-ld [%fp+-68],%l2
-cmp %l3,%l2; be .L546; nop
-set 1,%l3
-stb %l3,[%fp+-26]
-.L546:
-ld [%fp+-48],%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-smul %l2,%l3,%l3
-ld [%fp+-68],%l2
-cmp %l3,%l2; be .L549; nop
-set 1,%l3
-stb %l3,[%fp+-25]
-.L549:
-ld [%fp+-48],%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-smul %l2,%l3,%l3
-ld [%fp+-68],%l2
-cmp %l3,%l2; be .L552; nop
-set 1,%l3
-stb %l3,[%fp+-24]
-.L552:
-ld [%fp+-48],%l3
-smul %l3,%l3,%l3
-ld [%fp+-68],%l2
-cmp %l3,%l2; be .L555; nop
-set 1,%l3
-stb %l3,[%fp+-23]
-.L555:
-ld [%fp+-52],%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-umul %l2,%l3,%l3
-ld [%fp+-72],%l2
-cmp %l3,%l2; be .L558; nop
-set 1,%l3
-stb %l3,[%fp+-22]
-.L558:
-ld [%fp+-52],%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-umul %l2,%l3,%l3
-ld [%fp+-72],%l2
-cmp %l3,%l2; be .L561; nop
-set 1,%l3
-stb %l3,[%fp+-21]
-.L561:
-ld [%fp+-52],%l3
-ld [%fp+-48],%l2
-umul %l2,%l3,%l3
-ld [%fp+-72],%l2
-cmp %l3,%l2; be .L564; nop
-set 1,%l3
-stb %l3,[%fp+-20]
-.L564:
-ld [%fp+-52],%l3
-umul %l3,%l3,%l3
-ld [%fp+-72],%l2
-cmp %l3,%l2; be .L567; nop
-set 1,%l3
-stb %l3,[%fp+-19]
-.L567:
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-smul %l3,%l6,%l3
-ld [%fp+-80],%l2
-cmp %l3,%l2; be .L570; nop
-set 1,%l3
-stb %l3,[%fp+-18]
-.L570:
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-smul %l3,%l6,%l3
-ld [%fp+-80],%l2
-cmp %l3,%l2; be .L573; nop
-set 1,%l3
-stb %l3,[%fp+-17]
-.L573:
-ld [%fp+-48],%l3
-smul %l3,%l6,%l3
-ld [%fp+-80],%l2
-cmp %l3,%l2; be .L576; nop
-set 1,%l3
-stb %l3,[%fp+-16]
-.L576:
-mov %l6,%l3
-ld [%fp+-52],%l2
-umul %l2,%l3,%l3
-ld [%fp+-72],%l2
-cmp %l3,%l2; be .L579; nop
-set 1,%l3
-stb %l3,[%fp+-15]
-.L579:
-smul %l6,%l6,%l3
-ld [%fp+-80],%l2
-cmp %l3,%l2; be .L582; nop
-set 1,%l3
-stb %l3,[%fp+-14]
-.L582:
-ld [%fp+-44],%f31
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fmuls %f31,%f30,%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L585; nop
-set 1,%l3
-stb %l3,[%fp+-13]
-.L585:
-ld [%fp+-44],%f31
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fmuls %f31,%f30,%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L588; nop
-set 1,%l3
-stb %l3,[%fp+-12]
-.L588:
-ld [%fp+-44],%f31
-ld [%fp+-48],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fmuls %f31,%f30,%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L591; nop
-set 1,%l3
-stb %l3,[%fp+-11]
-.L591:
-ld [%fp+-52],%l3
-ld [%fp+-44],%f31
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fdtos %f28,%f30
-fmuls %f31,%f30,%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L594; nop
-set 1,%l3
-stb %l3,[%fp+-10]
-.L594:
-ld [%fp+-44],%f31
-st %l6,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fmuls %f31,%f30,%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L598; nop
-set 1,%l3
-stb %l3,[%fp+-9]
-.L598:
-ld [%fp+-44],%f31
-fmuls %f31,%f31,%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L601; nop
-set 1,%l3
-stb %l3,[%fp+-8]
-.L601:
-ldd [%fp+-64],%f30
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L604; nop
-set 1,%l3
-stb %l3,[%fp+-7]
-.L604:
-ldd [%fp+-64],%f30
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L607; nop
-set 1,%l3
-stb %l3,[%fp+-6]
-.L607:
-ldd [%fp+-64],%f30
-ld [%fp+-48],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L610; nop
-set 1,%l3
-stb %l3,[%fp+-5]
-.L610:
-ld [%fp+-52],%l3
-ldd [%fp+-64],%f30
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fmuld %f30,%f28,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L613; nop
-set 1,%l3
-stb %l3,[%fp+-4]
-.L613:
-ldd [%fp+-64],%f30
-st %l6,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L616; nop
-set 1,%l3
-stb %l3,[%fp+-3]
-.L616:
-ldd [%fp+-64],%f30
-ld [%fp+-44],%f29
-fstod %f29,%f28
-fmuld %f30,%f28,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L619; nop
-set 1,%l3
-stb %l3,[%fp+-2]
-.L619:
-ldd [%fp+-64],%f30
-fmuld %f30,%f30,%f30
-ldd [%fp+-40],%f28
-fcmped %f30,%f28; nop; fbue .L622; nop
-set 1,%l3
-stb %l3,[%fp+-1]
-.L622:
-mov %g0,%i3
-mov %g0,%i5
-.L625:
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-add -28,%fp,%l2
-ldsb [%i5+%l2],%l2
-add %l3,%l2,%l3
-mov %l3,%i3
-.L626:
-add %i5,1,%i5
-cmp %i5,28; bl .L625; nop
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; be .L629; nop
-ld [%fp+-76],%l3
-add %l3,4,%l3
-st %l3,[%fp+-76]
-ld [%i0+44],%l3
-cmp %l3,0; be .L631; nop
-set .520,%o0
-set 4,%o1
-call printf; nop
-set .L633,%o0
-call printf; nop
-mov %g0,%i5
-.L634:
-set .L638,%o0
-add -28,%fp,%l3
-ldsb [%i5+%l3],%o1
-call printf; nop
-.L635:
-add %i5,1,%i5
-cmp %i5,28; bl .L634; nop
-set .L639,%o0
-call printf; nop
-.L631:
-.L629:
-set 32768,%l6
-mov %l6,%l3
-set 0x8000,%l2
-cmp %l3,%l2; bleu .L640; nop
-ld [%fp+-76],%l3
-add %l3,8,%l3
-st %l3,[%fp+-76]
-ld [%i0+44],%l3
-cmp %l3,0; be .L642; nop
-set .520,%o0
-set 8,%o1
-call printf; nop
-.L642:
-.L640:
-ld [%fp+-76],%i0
-.L519:
-ret; restore
-.type s626,#function
-.size s626,.-s626
-.section ".data"
-.type .645,#object
-.align 1
-.645:
-.byte 115
-.byte 55
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .645,10
-.type .646,#object
-.size .646,8
-.align 1
-.646:
-.byte 115
-.byte 55
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.type .647,#object
-.size .647,1
-.align 1
-.647:
-.byte 0x71
-.global s71
-.section ".text"
-.align 4
-s71:
-save %sp,-136,%sp
-set .646,%i5
-add %i0,60,%i4
-mov %g0,%i3
-.L648:
-.L649:
-mov %i4,%l7
-add %l7,1,%i4
-mov %i5,%l6
-add %l6,1,%i5
-ldsb [%l6],%l6
-stb %l6,[%l7]
-sll %l6,8*(4-1),%l7; sra %l7,8*(4-1),%l7
-cmp %l7,0; bne .L648; nop
-set .L653,%l7
-ldsb [%l7],%l7
-set .647,%l6
-ldsb [%l6],%l6
-cmp %l7,%l6; be .L651; nop
-add %i3,1,%i3
-ld [%i0+44],%l7
-cmp %l7,0; be .L654; nop
-set .645,%o0
-set 1,%o1
-call printf; nop
-.L654:
-.L651:
-ba .L656; nop
-add %i3,2,%i3
-ld [%i0+44],%l7
-cmp %l7,0; be .L658; nop
-set .645,%o0
-set 2,%o1
-call printf; nop
-.L658:
-.L656:
-set 1942,%l7
-st %l7,[%fp+-20]
-ld [%fp+-20],%l7
-cmp %l7,1942; bne .L666; nop
-ld [%fp+-20],%l7
-ld [%fp+-20],%l6
-cmp %l7,%l6; be .L661; nop
-.L666:
-add %i3,4,%i3
-ld [%i0+44],%l7
-cmp %l7,0; be .L667; nop
-set .645,%o0
-set 4,%o1
-call printf; nop
-.L667:
-.L661:
-set -5,%o0
-call McCarthy; nop
-cmp %o0,91; be .L669; nop
-add %i3,8,%i3
-ld [%i0+44],%l7
-cmp %l7,0; be .L671; nop
-set .645,%o0
-set 8,%o1
-call printf; nop
-.L671:
-.L669:
-set 2,%i2
-set 3,%l7
-st %l7,[%fp+-44]
-add -44,%fp,%i1
-mov %i2,%o0
-mov %i1,%o1
-call clobber; nop
-cmp %i2,2; bne .L675; nop
-ld [%fp+-44],%l7
-cmp %l7,2; be .L673; nop
-.L675:
-add %i3,16,%i3
-ld [%i0+44],%l7
-cmp %l7,0; be .L676; nop
-set .645,%o0
-set 16,%o1
-call printf; nop
-.L676:
-.L673:
-ld [%i0+32],%f31
-fcmpes %f31,%f31; nop; fbue .L678; nop
-add %i3,32,%i3
-ld [%i0+44],%l7
-cmp %l7,0; be .L680; nop
-set .645,%o0
-set 32,%o1
-call printf; nop
-.L680:
-.L678:
-mov %i3,%i0
-.L644:
-ret; restore
-.type s71,#function
-.size s71,.-s71
-.global McCarthy
-.align 4
-McCarthy:
-save %sp,-96,%sp
-cmp %i0,100; ble .L683; nop
-sub %i0,10,%i0
-ba .L682; nop
-.L683:
-add %i0,11,%o0
-call McCarthy; nop
-mov %o0,%i5
-call McCarthy; nop
-mov %o0,%i0
-.L682:
-ret; restore
-.type McCarthy,#function
-.size McCarthy,.-McCarthy
-.global clobber
-.align 4
-clobber:
-set 3,%o0
-set 2,%o5
-st %o5,[%o1]
-mov %g0,%o0
-.L685:
-retl; nop
-.type clobber,#function
-.size clobber,.-clobber
-.section ".data"
-.type .687,#object
-.align 1
-.687:
-.byte 76
-.byte 111
-.byte 99
-.byte 97
-.byte 108
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.size .687,17
-.type .688,#object
-.align 1
-.688:
-.byte 115
-.byte 55
-.byte 49
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .688,11
-.type .689,#object
-.size .689,8
-.align 1
-.689:
-.byte 115
-.byte 55
-.byte 49
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s714
-.section ".text"
-.align 4
-s714:
-save %sp,-184,%sp
-set .689,%l3
-st %l3,[%fp+-44]
-add %i0,60,%l3
-st %l3,[%fp+-48]
-st %g0,[%fp+-52]
-mov %g0,%i4
-ld [%i0+48],%i5
-.L690:
-.L691:
-ld [%fp+-48],%l3
-add %l3,1,%l2
-st %l2,[%fp+-48]
-ld [%fp+-44],%l2
-add %l2,1,%l1
-st %l1,[%fp+-44]
-ldsb [%l2],%l2
-stb %l2,[%l3]
-sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; bne .L690; nop
-set 5,%i3
-set 2,%l5
-mov %l5,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L693; nop
-set 1,%i4
-cmp %i5,0; be .L695; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L695:
-.L693:
-set 5,%i3
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L697; nop
-set 2,%i4
-cmp %i5,0; be .L699; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L699:
-.L697:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L701; nop
-set 3,%i4
-cmp %i5,0; be .L703; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L703:
-.L701:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L705; nop
-set 4,%i4
-cmp %i5,0; be .L707; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L707:
-.L705:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L709; nop
-set 5,%i4
-cmp %i5,0; be .L711; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L711:
-.L709:
-set 5,%i3
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-28],%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L713; nop
-set 6,%i4
-cmp %i5,0; be .L715; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L715:
-.L713:
-set 5,%i3
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-40],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L717; nop
-set 7,%i4
-cmp %i5,0; be .L719; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L719:
-.L717:
-set 5,%i2
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L721; nop
-set 8,%i4
-cmp %i5,0; be .L723; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L723:
-.L721:
-set 5,%i2
-set 2,%l4
-mov %l4,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L725; nop
-set 9,%i4
-cmp %i5,0; be .L727; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L727:
-.L725:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L729; nop
-set 10,%i4
-cmp %i5,0; be .L731; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L731:
-.L729:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L733; nop
-set 11,%i4
-cmp %i5,0; be .L735; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L735:
-.L733:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L737; nop
-set 12,%i4
-cmp %i5,0; be .L739; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L739:
-.L737:
-set 5,%i2
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-28],%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L741; nop
-set 13,%i4
-cmp %i5,0; be .L743; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L743:
-.L741:
-set 5,%i2
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-40],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L745; nop
-set 14,%i4
-cmp %i5,0; be .L747; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L747:
-.L745:
-set 5,%i1
-set 2,%l5
-sll %l5,8*(4-1),%i1; sra %i1,8*(4-1),%i1
-cmp %i1,2; be .L749; nop
-set 15,%i4
-cmp %i5,0; be .L751; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L751:
-.L749:
-set 5,%i1
-set 2,%l4
-sll %l4,8*(4-2),%i1; sra %i1,8*(4-2),%i1
-cmp %i1,2; be .L753; nop
-set 16,%i4
-cmp %i5,0; be .L755; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L755:
-.L753:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%i1
-cmp %i1,2; be .L757; nop
-set 17,%i4
-cmp %i5,0; be .L759; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L759:
-.L757:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%i1
-cmp %i1,2; be .L761; nop
-set 18,%i4
-cmp %i5,0; be .L763; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L763:
-.L761:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-mov %l3,%i1
-cmp %i1,2; be .L765; nop
-set 19,%i4
-cmp %i5,0; be .L767; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L767:
-.L765:
-set 5,%i1
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-28],%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,2; be .L769; nop
-set 20,%i4
-cmp %i5,0; be .L771; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L771:
-.L769:
-set 5,%i1
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-40],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,2; be .L773; nop
-set 21,%i4
-cmp %i5,0; be .L775; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L775:
-.L773:
-set 5,%l7
-set 2,%l5
-sll %l5,8*(4-1),%l7; sra %l7,8*(4-1),%l7
-cmp %l7,2; be .L777; nop
-set 22,%i4
-cmp %i5,0; be .L779; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L779:
-.L777:
-set 5,%l7
-set 2,%l4
-sll %l4,8*(4-2),%l7; sra %l7,8*(4-2),%l7
-cmp %l7,2; be .L781; nop
-set 23,%i4
-cmp %i5,0; be .L783; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L783:
-.L781:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l7
-cmp %l7,2; be .L785; nop
-set 24,%i4
-cmp %i5,0; be .L787; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L787:
-.L785:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l7
-cmp %l7,2; be .L789; nop
-set 25,%i4
-cmp %i5,0; be .L791; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L791:
-.L789:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-mov %l3,%l7
-cmp %l7,2; be .L793; nop
-set 26,%i4
-cmp %i5,0; be .L795; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L795:
-.L793:
-set 5,%l7
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-28],%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,2; be .L797; nop
-set 27,%i4
-cmp %i5,0; be .L799; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L799:
-.L797:
-set 5,%l7
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-40],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,2; be .L801; nop
-set 28,%i4
-cmp %i5,0; be .L803; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L803:
-.L801:
-set 5,%l6
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-mov %l3,%l6
-set 2,%l3
-cmp %l6,%l3; be .L805; nop
-set 29,%i4
-cmp %i5,0; be .L807; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L807:
-.L805:
-set 5,%l6
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-mov %l3,%l6
-set 2,%l3
-cmp %l6,%l3; be .L809; nop
-set 30,%i4
-cmp %i5,0; be .L811; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L811:
-.L809:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-mov %l3,%l6
-set 2,%l3
-cmp %l6,%l3; be .L813; nop
-set 31,%i4
-cmp %i5,0; be .L815; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L815:
-.L813:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-mov %l3,%l6
-set 2,%l3
-cmp %l6,%l3; be .L817; nop
-set 32,%i4
-cmp %i5,0; be .L819; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L819:
-.L817:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l6
-cmp %l6,%l3; be .L821; nop
-set 33,%i4
-cmp %i5,0; be .L823; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L823:
-.L821:
-set 5,%l6
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-28],%f31
-set .L828,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbul .L826; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-56]
-ba .L827; nop
-.L826:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-56]
-.L827:
-ld [%fp+-56],%l6
-set 2,%l3
-cmp %l6,%l3; be .L829; nop
-set 34,%i4
-cmp %i5,0; be .L831; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L831:
-.L829:
-set 5,%l6
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-40],%f30
-set .L836,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L834; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-60]
-ba .L835; nop
-.L834:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-60]
-.L835:
-ld [%fp+-60],%l6
-set 2,%l3
-cmp %l6,%l3; be .L837; nop
-set 35,%i4
-cmp %i5,0; be .L839; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L839:
-.L837:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L529,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L842; nop
-set 36,%i4
-cmp %i5,0; be .L844; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L844:
-.L842:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L529,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L846; nop
-set 37,%i4
-cmp %i5,0; be .L848; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L848:
-.L846:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L529,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L850; nop
-set 38,%i4
-cmp %i5,0; be .L852; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L852:
-.L850:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L529,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L854; nop
-set 39,%i4
-cmp %i5,0; be .L856; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L856:
-.L854:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-set .L596,%l2
-ld2 [%l2],%f30
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-fdtos %f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L529,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L858; nop
-set 40,%i4
-cmp %i5,0; be .L860; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L860:
-.L858:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-28],%f30
-st %f30,[%fp+-16]
-ld [%fp+-16],%f30
-fcmpes %f30,%f31; nop; fbue .L862; nop
-set 41,%i4
-cmp %i5,0; be .L864; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L864:
-.L862:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-40],%f30
-fdtos %f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L529,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L866; nop
-set 42,%i4
-cmp %i5,0; be .L868; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L868:
-.L866:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L416,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L871; nop
-set 43,%i4
-cmp %i5,0; be .L873; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L873:
-.L871:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L416,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L875; nop
-set 44,%i4
-cmp %i5,0; be .L877; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L877:
-.L875:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L416,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L879; nop
-set 45,%i4
-cmp %i5,0; be .L881; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L881:
-.L879:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L416,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L883; nop
-set 46,%i4
-cmp %i5,0; be .L885; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L885:
-.L883:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-set .L596,%l2
-ld2 [%l2],%f30
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L416,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L887; nop
-set 47,%i4
-cmp %i5,0; be .L889; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L889:
-.L887:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-28],%f31
-fstod %f31,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L416,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L891; nop
-set 48,%i4
-cmp %i5,0; be .L893; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L893:
-.L891:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-40],%f28
-std %f28,[%fp+-24]
-ldd [%fp+-24],%f28
-fcmped %f28,%f30; nop; fbue .L895; nop
-set 49,%i4
-cmp %i5,0; be .L897; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L897:
-.L895:
-set 5,%i3
-set 2,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-add %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,7; be .L899; nop
-set 50,%i4
-cmp %i5,0; be .L901; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L901:
-.L899:
-set 5,%i3
-set 2,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-add %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,7; be .L903; nop
-set 51,%i4
-cmp %i5,0; be .L905; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L905:
-.L903:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-add %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,7; be .L907; nop
-set 52,%i4
-cmp %i5,0; be .L909; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L909:
-.L907:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-add %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,7; be .L911; nop
-set 53,%i4
-cmp %i5,0; be .L913; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L913:
-.L911:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-add %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,7; be .L915; nop
-set 54,%i4
-cmp %i5,0; be .L917; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L917:
-.L915:
-set 5,%i3
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fadds %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,7; be .L919; nop
-set 55,%i4
-cmp %i5,0; be .L921; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L921:
-.L919:
-set 5,%i3
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-faddd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,7; be .L923; nop
-set 56,%i4
-cmp %i5,0; be .L925; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L925:
-.L923:
-set 5,%i2
-set 2,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-add %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,7; be .L927; nop
-set 57,%i4
-cmp %i5,0; be .L929; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L929:
-.L927:
-set 5,%i2
-set 2,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-add %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,7; be .L931; nop
-set 58,%i4
-cmp %i5,0; be .L933; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L933:
-.L931:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-add %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,7; be .L935; nop
-set 59,%i4
-cmp %i5,0; be .L937; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L937:
-.L935:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-add %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,7; be .L939; nop
-set 60,%i4
-cmp %i5,0; be .L941; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L941:
-.L939:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-add %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,7; be .L943; nop
-set 61,%i4
-cmp %i5,0; be .L945; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L945:
-.L943:
-set 5,%i2
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fadds %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,7; be .L947; nop
-set 62,%i4
-cmp %i5,0; be .L949; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L949:
-.L947:
-set 5,%i2
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-faddd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,7; be .L951; nop
-set 63,%i4
-cmp %i5,0; be .L953; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L953:
-.L951:
-set 5,%i1
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-add %i1,%l3,%i1
-cmp %i1,7; be .L955; nop
-set 64,%i4
-cmp %i5,0; be .L957; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L957:
-.L955:
-set 5,%i1
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-add %i1,%l3,%i1
-cmp %i1,7; be .L959; nop
-set 65,%i4
-cmp %i5,0; be .L961; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L961:
-.L959:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-add %i1,%l3,%i1
-cmp %i1,7; be .L963; nop
-set 66,%i4
-cmp %i5,0; be .L965; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L965:
-.L963:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-add %i1,%l3,%i1
-cmp %i1,7; be .L967; nop
-set 67,%i4
-cmp %i5,0; be .L969; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L969:
-.L967:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-12]
-mov %i1,%l3
-ld [%fp+-12],%l2
-add %l3,%l2,%l3
-mov %l3,%i1
-cmp %i1,7; be .L971; nop
-set 68,%i4
-cmp %i5,0; be .L973; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L973:
-.L971:
-set 5,%i1
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-st %i1,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fadds %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,7; be .L975; nop
-set 69,%i4
-cmp %i5,0; be .L977; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L977:
-.L975:
-set 5,%i1
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-st %i1,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-faddd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,7; be .L979; nop
-set 70,%i4
-cmp %i5,0; be .L981; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L981:
-.L979:
-set 5,%l7
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-add %l7,%l3,%l7
-cmp %l7,7; be .L983; nop
-set 71,%i4
-cmp %i5,0; be .L985; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L985:
-.L983:
-set 5,%l7
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-add %l7,%l3,%l7
-cmp %l7,7; be .L987; nop
-set 72,%i4
-cmp %i5,0; be .L989; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L989:
-.L987:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-add %l7,%l3,%l7
-cmp %l7,7; be .L991; nop
-set 73,%i4
-cmp %i5,0; be .L993; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L993:
-.L991:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-add %l7,%l3,%l7
-cmp %l7,7; be .L995; nop
-set 74,%i4
-cmp %i5,0; be .L997; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L997:
-.L995:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-12]
-mov %l7,%l3
-ld [%fp+-12],%l2
-add %l3,%l2,%l3
-mov %l3,%l7
-cmp %l7,7; be .L999; nop
-set 75,%i4
-cmp %i5,0; be .L1001; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1001:
-.L999:
-set 5,%l7
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-st %l7,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fadds %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,7; be .L1003; nop
-set 76,%i4
-cmp %i5,0; be .L1005; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1005:
-.L1003:
-set 5,%l7
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-st %l7,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-faddd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,7; be .L1007; nop
-set 77,%i4
-cmp %i5,0; be .L1009; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1009:
-.L1007:
-set 5,%l6
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-add %l6,%l3,%l6
-set 7,%l3
-cmp %l6,%l3; be .L1011; nop
-set 78,%i4
-cmp %i5,0; be .L1013; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1013:
-.L1011:
-set 5,%l6
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-add %l6,%l3,%l6
-set 7,%l3
-cmp %l6,%l3; be .L1015; nop
-set 79,%i4
-cmp %i5,0; be .L1017; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1017:
-.L1015:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-add %l6,%l3,%l6
-set 7,%l3
-cmp %l6,%l3; be .L1019; nop
-set 80,%i4
-cmp %i5,0; be .L1021; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1021:
-.L1019:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-add %l6,%l3,%l6
-set 7,%l3
-cmp %l6,%l3; be .L1023; nop
-set 81,%i4
-cmp %i5,0; be .L1025; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1025:
-.L1023:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-add %l6,%l3,%l6
-set 7,%l3
-cmp %l6,%l3; be .L1027; nop
-set 82,%i4
-cmp %i5,0; be .L1029; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1029:
-.L1027:
-set 5,%l6
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-set .L596,%l3
-ld2 [%l3],%f30
-srl %l6,1,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l3
-and %l6,%l3,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-fdtos %f30,%f31
-ld [%fp+-28],%f30
-fadds %f31,%f30,%f31
-set .L828,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbul .L1032; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-64]
-ba .L1033; nop
-.L1032:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-64]
-.L1033:
-ld [%fp+-64],%l6
-set 7,%l3
-cmp %l6,%l3; be .L1034; nop
-set 83,%i4
-cmp %i5,0; be .L1036; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1036:
-.L1034:
-set 5,%l6
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-set .L596,%l3
-ld2 [%l3],%f30
-srl %l6,1,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l3
-and %l6,%l3,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-ldd [%fp+-40],%f28
-faddd %f30,%f28,%f30
-set .L836,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L1039; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-68]
-ba .L1040; nop
-.L1039:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-68]
-.L1040:
-ld [%fp+-68],%l6
-set 7,%l3
-cmp %l6,%l3; be .L1041; nop
-set 84,%i4
-cmp %i5,0; be .L1043; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1043:
-.L1041:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l5
-ld [%fp+-16],%f31
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fadds %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1047,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1045; nop
-set 85,%i4
-cmp %i5,0; be .L1048; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1048:
-.L1045:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l4
-ld [%fp+-16],%f31
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fadds %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1047,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1050; nop
-set 86,%i4
-cmp %i5,0; be .L1052; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1052:
-.L1050:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-16],%f31
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fadds %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1047,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1054; nop
-set 87,%i4
-cmp %i5,0; be .L1056; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1056:
-.L1054:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-16],%f31
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fadds %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1047,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1058; nop
-set 88,%i4
-cmp %i5,0; be .L1060; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1060:
-.L1058:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-ld [%fp+-16],%f31
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fdtos %f28,%f30
-fadds %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1047,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1062; nop
-set 89,%i4
-cmp %i5,0; be .L1064; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1064:
-.L1062:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-16],%f31
-ld [%fp+-28],%f30
-fadds %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1047,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1066; nop
-set 90,%i4
-cmp %i5,0; be .L1068; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1068:
-.L1066:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-faddd %f30,%f28,%f30
-fdtos %f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1047,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1070; nop
-set 91,%i4
-cmp %i5,0; be .L1072; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1072:
-.L1070:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l5
-ldd [%fp+-24],%f30
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1076,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1074; nop
-set 92,%i4
-cmp %i5,0; be .L1077; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1077:
-.L1074:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l4
-ldd [%fp+-24],%f30
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1076,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1079; nop
-set 93,%i4
-cmp %i5,0; be .L1081; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1081:
-.L1079:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-4]
-ldd [%fp+-24],%f30
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1076,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1083; nop
-set 94,%i4
-cmp %i5,0; be .L1085; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1085:
-.L1083:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-8]
-ldd [%fp+-24],%f30
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1076,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1087; nop
-set 95,%i4
-cmp %i5,0; be .L1089; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1089:
-.L1087:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-ldd [%fp+-24],%f30
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-faddd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1076,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1091; nop
-set 96,%i4
-cmp %i5,0; be .L1093; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1093:
-.L1091:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ldd [%fp+-24],%f30
-ld [%fp+-28],%f29
-fstod %f29,%f28
-faddd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1076,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1095; nop
-set 97,%i4
-cmp %i5,0; be .L1097; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1097:
-.L1095:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-24],%f30
-ldd [%fp+-40],%f28
-faddd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1076,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1099; nop
-set 98,%i4
-cmp %i5,0; be .L1101; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1101:
-.L1099:
-set 5,%i3
-set 2,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sub %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,3; be .L1103; nop
-set 99,%i4
-cmp %i5,0; be .L1105; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1105:
-.L1103:
-set 5,%i3
-set 2,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sub %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,3; be .L1107; nop
-set 100,%i4
-cmp %i5,0; be .L1109; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1109:
-.L1107:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-sub %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,3; be .L1111; nop
-set 101,%i4
-cmp %i5,0; be .L1113; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1113:
-.L1111:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-sub %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,3; be .L1115; nop
-set 102,%i4
-cmp %i5,0; be .L1117; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1117:
-.L1115:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-sub %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,3; be .L1119; nop
-set 103,%i4
-cmp %i5,0; be .L1121; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1121:
-.L1119:
-set 5,%i3
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fsubs %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,3; be .L1123; nop
-set 104,%i4
-cmp %i5,0; be .L1125; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1125:
-.L1123:
-set 5,%i3
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fsubd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,3; be .L1127; nop
-set 105,%i4
-cmp %i5,0; be .L1129; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1129:
-.L1127:
-set 5,%i2
-set 2,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sub %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,3; be .L1131; nop
-set 106,%i4
-cmp %i5,0; be .L1133; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1133:
-.L1131:
-set 5,%i2
-set 2,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sub %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,3; be .L1135; nop
-set 107,%i4
-cmp %i5,0; be .L1137; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1137:
-.L1135:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-sub %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,3; be .L1139; nop
-set 108,%i4
-cmp %i5,0; be .L1141; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1141:
-.L1139:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-sub %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,3; be .L1143; nop
-set 109,%i4
-cmp %i5,0; be .L1145; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1145:
-.L1143:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-sub %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,3; be .L1147; nop
-set 110,%i4
-cmp %i5,0; be .L1149; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1149:
-.L1147:
-set 5,%i2
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fsubs %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,3; be .L1151; nop
-set 111,%i4
-cmp %i5,0; be .L1153; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1153:
-.L1151:
-set 5,%i2
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fsubd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,3; be .L1155; nop
-set 112,%i4
-cmp %i5,0; be .L1157; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1157:
-.L1155:
-set 5,%i1
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sub %i1,%l3,%i1
-cmp %i1,3; be .L1159; nop
-set 113,%i4
-cmp %i5,0; be .L1161; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1161:
-.L1159:
-set 5,%i1
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sub %i1,%l3,%i1
-cmp %i1,3; be .L1163; nop
-set 114,%i4
-cmp %i5,0; be .L1165; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1165:
-.L1163:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sub %i1,%l3,%i1
-cmp %i1,3; be .L1167; nop
-set 115,%i4
-cmp %i5,0; be .L1169; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1169:
-.L1167:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sub %i1,%l3,%i1
-cmp %i1,3; be .L1171; nop
-set 116,%i4
-cmp %i5,0; be .L1173; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1173:
-.L1171:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-12]
-mov %i1,%l3
-ld [%fp+-12],%l2
-sub %l3,%l2,%l3
-mov %l3,%i1
-cmp %i1,3; be .L1175; nop
-set 117,%i4
-cmp %i5,0; be .L1177; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1177:
-.L1175:
-set 5,%i1
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-st %i1,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fsubs %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,3; be .L1179; nop
-set 118,%i4
-cmp %i5,0; be .L1181; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1181:
-.L1179:
-set 5,%i1
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-st %i1,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fsubd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,3; be .L1183; nop
-set 119,%i4
-cmp %i5,0; be .L1185; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1185:
-.L1183:
-set 5,%l7
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sub %l7,%l3,%l7
-cmp %l7,3; be .L1187; nop
-set 120,%i4
-cmp %i5,0; be .L1189; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1189:
-.L1187:
-set 5,%l7
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sub %l7,%l3,%l7
-cmp %l7,3; be .L1191; nop
-set 121,%i4
-cmp %i5,0; be .L1193; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1193:
-.L1191:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sub %l7,%l3,%l7
-cmp %l7,3; be .L1195; nop
-set 122,%i4
-cmp %i5,0; be .L1197; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1197:
-.L1195:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sub %l7,%l3,%l7
-cmp %l7,3; be .L1199; nop
-set 123,%i4
-cmp %i5,0; be .L1201; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1201:
-.L1199:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-12]
-mov %l7,%l3
-ld [%fp+-12],%l2
-sub %l3,%l2,%l3
-mov %l3,%l7
-cmp %l7,3; be .L1203; nop
-set 124,%i4
-cmp %i5,0; be .L1205; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1205:
-.L1203:
-set 5,%l7
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-st %l7,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fsubs %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,3; be .L1207; nop
-set 125,%i4
-cmp %i5,0; be .L1209; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1209:
-.L1207:
-set 5,%l7
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-st %l7,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fsubd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,3; be .L1211; nop
-set 126,%i4
-cmp %i5,0; be .L1213; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1213:
-.L1211:
-set 5,%l6
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sub %l6,%l3,%l6
-set 3,%l3
-cmp %l6,%l3; be .L1215; nop
-set 127,%i4
-cmp %i5,0; be .L1217; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1217:
-.L1215:
-set 5,%l6
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sub %l6,%l3,%l6
-set 3,%l3
-cmp %l6,%l3; be .L1219; nop
-set 128,%i4
-cmp %i5,0; be .L1221; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1221:
-.L1219:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sub %l6,%l3,%l6
-set 3,%l3
-cmp %l6,%l3; be .L1223; nop
-set 129,%i4
-cmp %i5,0; be .L1225; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1225:
-.L1223:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sub %l6,%l3,%l6
-set 3,%l3
-cmp %l6,%l3; be .L1227; nop
-set 130,%i4
-cmp %i5,0; be .L1229; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1229:
-.L1227:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-sub %l6,%l3,%l6
-set 3,%l3
-cmp %l6,%l3; be .L1231; nop
-set 131,%i4
-cmp %i5,0; be .L1233; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1233:
-.L1231:
-set 5,%l6
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-set .L596,%l3
-ld2 [%l3],%f30
-srl %l6,1,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l3
-and %l6,%l3,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-fdtos %f30,%f31
-ld [%fp+-28],%f30
-fsubs %f31,%f30,%f31
-set .L828,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbul .L1236; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-72]
-ba .L1237; nop
-.L1236:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-72]
-.L1237:
-ld [%fp+-72],%l6
-set 3,%l3
-cmp %l6,%l3; be .L1238; nop
-set 132,%i4
-cmp %i5,0; be .L1240; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1240:
-.L1238:
-set 5,%l6
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-set .L596,%l3
-ld2 [%l3],%f30
-srl %l6,1,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l3
-and %l6,%l3,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-ldd [%fp+-40],%f28
-fsubd %f30,%f28,%f30
-set .L836,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L1243; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-76]
-ba .L1244; nop
-.L1243:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-76]
-.L1244:
-ld [%fp+-76],%l6
-set 3,%l3
-cmp %l6,%l3; be .L1245; nop
-set 133,%i4
-cmp %i5,0; be .L1247; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1247:
-.L1245:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l5
-ld [%fp+-16],%f31
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fsubs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1251,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1249; nop
-set 134,%i4
-cmp %i5,0; be .L1252; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1252:
-.L1249:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l4
-ld [%fp+-16],%f31
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fsubs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1251,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1254; nop
-set 135,%i4
-cmp %i5,0; be .L1256; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1256:
-.L1254:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-16],%f31
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fsubs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1251,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1258; nop
-set 136,%i4
-cmp %i5,0; be .L1260; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1260:
-.L1258:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-16],%f31
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fsubs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1251,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1262; nop
-set 137,%i4
-cmp %i5,0; be .L1264; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1264:
-.L1262:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-ld [%fp+-16],%f31
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fdtos %f28,%f30
-fsubs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1251,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1266; nop
-set 138,%i4
-cmp %i5,0; be .L1268; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1268:
-.L1266:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-16],%f31
-ld [%fp+-28],%f30
-fsubs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1251,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1270; nop
-set 139,%i4
-cmp %i5,0; be .L1272; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1272:
-.L1270:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-fsubd %f30,%f28,%f30
-fdtos %f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1251,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1274; nop
-set 140,%i4
-cmp %i5,0; be .L1276; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1276:
-.L1274:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l5
-ldd [%fp+-24],%f30
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fsubd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1280,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1278; nop
-set 141,%i4
-cmp %i5,0; be .L1281; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1281:
-.L1278:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l4
-ldd [%fp+-24],%f30
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fsubd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1280,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1283; nop
-set 142,%i4
-cmp %i5,0; be .L1285; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1285:
-.L1283:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-4]
-ldd [%fp+-24],%f30
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fsubd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1280,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1287; nop
-set 143,%i4
-cmp %i5,0; be .L1289; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1289:
-.L1287:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-8]
-ldd [%fp+-24],%f30
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fsubd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1280,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1291; nop
-set 144,%i4
-cmp %i5,0; be .L1293; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1293:
-.L1291:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-ldd [%fp+-24],%f30
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fsubd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1280,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1295; nop
-set 145,%i4
-cmp %i5,0; be .L1297; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1297:
-.L1295:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ldd [%fp+-24],%f30
-ld [%fp+-28],%f29
-fstod %f29,%f28
-fsubd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1280,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1299; nop
-set 146,%i4
-cmp %i5,0; be .L1301; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1301:
-.L1299:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-24],%f30
-ldd [%fp+-40],%f28
-fsubd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1280,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1303; nop
-set 147,%i4
-cmp %i5,0; be .L1305; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1305:
-.L1303:
-set 5,%i3
-set 2,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-smul %l2,%l3,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,10; be .L1307; nop
-set 148,%i4
-cmp %i5,0; be .L1309; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1309:
-.L1307:
-set 5,%i3
-set 2,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-smul %l2,%l3,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,10; be .L1311; nop
-set 149,%i4
-cmp %i5,0; be .L1313; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1313:
-.L1311:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-smul %l2,%l3,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,10; be .L1315; nop
-set 150,%i4
-cmp %i5,0; be .L1317; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1317:
-.L1315:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-smul %l2,%l3,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,10; be .L1319; nop
-set 151,%i4
-cmp %i5,0; be .L1321; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1321:
-.L1319:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-umul %l2,%l3,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,10; be .L1323; nop
-set 152,%i4
-cmp %i5,0; be .L1325; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1325:
-.L1323:
-set 5,%i3
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fmuls %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,10; be .L1327; nop
-set 153,%i4
-cmp %i5,0; be .L1329; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1329:
-.L1327:
-set 5,%i3
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fmuld %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,10; be .L1331; nop
-set 154,%i4
-cmp %i5,0; be .L1333; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1333:
-.L1331:
-set 5,%i2
-set 2,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-smul %l2,%l3,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,10; be .L1335; nop
-set 155,%i4
-cmp %i5,0; be .L1337; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1337:
-.L1335:
-set 5,%i2
-set 2,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-smul %l2,%l3,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,10; be .L1339; nop
-set 156,%i4
-cmp %i5,0; be .L1341; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1341:
-.L1339:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-smul %l2,%l3,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,10; be .L1343; nop
-set 157,%i4
-cmp %i5,0; be .L1345; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1345:
-.L1343:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-smul %l2,%l3,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,10; be .L1347; nop
-set 158,%i4
-cmp %i5,0; be .L1349; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1349:
-.L1347:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-umul %l2,%l3,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,10; be .L1351; nop
-set 159,%i4
-cmp %i5,0; be .L1353; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1353:
-.L1351:
-set 5,%i2
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fmuls %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,10; be .L1355; nop
-set 160,%i4
-cmp %i5,0; be .L1357; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1357:
-.L1355:
-set 5,%i2
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fmuld %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,10; be .L1359; nop
-set 161,%i4
-cmp %i5,0; be .L1361; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1361:
-.L1359:
-set 5,%i1
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-smul %l3,%i1,%i1
-cmp %i1,10; be .L1363; nop
-set 162,%i4
-cmp %i5,0; be .L1365; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1365:
-.L1363:
-set 5,%i1
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-smul %l3,%i1,%i1
-cmp %i1,10; be .L1367; nop
-set 163,%i4
-cmp %i5,0; be .L1369; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1369:
-.L1367:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-smul %l3,%i1,%i1
-cmp %i1,10; be .L1371; nop
-set 164,%i4
-cmp %i5,0; be .L1373; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1373:
-.L1371:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-smul %l3,%i1,%i1
-cmp %i1,10; be .L1375; nop
-set 165,%i4
-cmp %i5,0; be .L1377; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1377:
-.L1375:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-12]
-mov %i1,%l3
-ld [%fp+-12],%l2
-umul %l2,%l3,%l3
-mov %l3,%i1
-cmp %i1,10; be .L1379; nop
-set 166,%i4
-cmp %i5,0; be .L1381; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1381:
-.L1379:
-set 5,%i1
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-st %i1,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fmuls %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,10; be .L1383; nop
-set 167,%i4
-cmp %i5,0; be .L1385; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1385:
-.L1383:
-set 5,%i1
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-st %i1,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fmuld %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,10; be .L1387; nop
-set 168,%i4
-cmp %i5,0; be .L1389; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1389:
-.L1387:
-set 5,%l7
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-smul %l3,%l7,%l7
-cmp %l7,10; be .L1391; nop
-set 169,%i4
-cmp %i5,0; be .L1393; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1393:
-.L1391:
-set 5,%l7
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-smul %l3,%l7,%l7
-cmp %l7,10; be .L1395; nop
-set 170,%i4
-cmp %i5,0; be .L1397; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1397:
-.L1395:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-smul %l3,%l7,%l7
-cmp %l7,10; be .L1399; nop
-set 171,%i4
-cmp %i5,0; be .L1401; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1401:
-.L1399:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-smul %l3,%l7,%l7
-cmp %l7,10; be .L1403; nop
-set 172,%i4
-cmp %i5,0; be .L1405; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1405:
-.L1403:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-12]
-mov %l7,%l3
-ld [%fp+-12],%l2
-umul %l2,%l3,%l3
-mov %l3,%l7
-cmp %l7,10; be .L1407; nop
-set 173,%i4
-cmp %i5,0; be .L1409; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1409:
-.L1407:
-set 5,%l7
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-st %l7,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fmuls %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,10; be .L1411; nop
-set 174,%i4
-cmp %i5,0; be .L1413; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1413:
-.L1411:
-set 5,%l7
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-st %l7,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fmuld %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,10; be .L1415; nop
-set 175,%i4
-cmp %i5,0; be .L1417; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1417:
-.L1415:
-set 5,%l6
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-umul %l3,%l6,%l6
-set 10,%l3
-cmp %l6,%l3; be .L1419; nop
-set 176,%i4
-cmp %i5,0; be .L1421; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1421:
-.L1419:
-set 5,%l6
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-umul %l3,%l6,%l6
-set 10,%l3
-cmp %l6,%l3; be .L1423; nop
-set 177,%i4
-cmp %i5,0; be .L1425; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1425:
-.L1423:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-umul %l3,%l6,%l6
-set 10,%l3
-cmp %l6,%l3; be .L1427; nop
-set 178,%i4
-cmp %i5,0; be .L1429; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1429:
-.L1427:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-umul %l3,%l6,%l6
-set 10,%l3
-cmp %l6,%l3; be .L1431; nop
-set 179,%i4
-cmp %i5,0; be .L1433; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1433:
-.L1431:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-umul %l3,%l6,%l6
-set 10,%l3
-cmp %l6,%l3; be .L1435; nop
-set 180,%i4
-cmp %i5,0; be .L1437; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1437:
-.L1435:
-set 5,%l6
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-set .L596,%l3
-ld2 [%l3],%f30
-srl %l6,1,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l3
-and %l6,%l3,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-fdtos %f30,%f31
-ld [%fp+-28],%f30
-fmuls %f31,%f30,%f31
-set .L828,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbul .L1440; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-80]
-ba .L1441; nop
-.L1440:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-80]
-.L1441:
-ld [%fp+-80],%l6
-set 10,%l3
-cmp %l6,%l3; be .L1442; nop
-set 181,%i4
-cmp %i5,0; be .L1444; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1444:
-.L1442:
-set 5,%l6
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-set .L596,%l3
-ld2 [%l3],%f30
-srl %l6,1,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l3
-and %l6,%l3,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-ldd [%fp+-40],%f28
-fmuld %f30,%f28,%f30
-set .L836,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L1447; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-84]
-ba .L1448; nop
-.L1447:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-84]
-.L1448:
-ld [%fp+-84],%l6
-set 10,%l3
-cmp %l6,%l3; be .L1449; nop
-set 182,%i4
-cmp %i5,0; be .L1451; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1451:
-.L1449:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l5
-ld [%fp+-16],%f31
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fmuls %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1455,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1453; nop
-set 183,%i4
-cmp %i5,0; be .L1456; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1456:
-.L1453:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l4
-ld [%fp+-16],%f31
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fmuls %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1455,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1458; nop
-set 184,%i4
-cmp %i5,0; be .L1460; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1460:
-.L1458:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-16],%f31
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fmuls %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1455,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1462; nop
-set 185,%i4
-cmp %i5,0; be .L1464; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1464:
-.L1462:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-16],%f31
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fmuls %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1455,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1466; nop
-set 186,%i4
-cmp %i5,0; be .L1468; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1468:
-.L1466:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-ld [%fp+-16],%f31
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fdtos %f28,%f30
-fmuls %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1455,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1470; nop
-set 187,%i4
-cmp %i5,0; be .L1472; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1472:
-.L1470:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-16],%f31
-ld [%fp+-28],%f30
-fmuls %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1455,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1474; nop
-set 188,%i4
-cmp %i5,0; be .L1476; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1476:
-.L1474:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-fmuld %f30,%f28,%f30
-fdtos %f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-set .L1455,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbue .L1478; nop
-set 189,%i4
-cmp %i5,0; be .L1480; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1480:
-.L1478:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l5
-ldd [%fp+-24],%f30
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1484,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1482; nop
-set 190,%i4
-cmp %i5,0; be .L1485; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1485:
-.L1482:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l4
-ldd [%fp+-24],%f30
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1484,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1487; nop
-set 191,%i4
-cmp %i5,0; be .L1489; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1489:
-.L1487:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-4]
-ldd [%fp+-24],%f30
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1484,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1491; nop
-set 192,%i4
-cmp %i5,0; be .L1493; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1493:
-.L1491:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-8]
-ldd [%fp+-24],%f30
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1484,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1495; nop
-set 193,%i4
-cmp %i5,0; be .L1497; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1497:
-.L1495:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-ldd [%fp+-24],%f30
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fmuld %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1484,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1499; nop
-set 194,%i4
-cmp %i5,0; be .L1501; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1501:
-.L1499:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ldd [%fp+-24],%f30
-ld [%fp+-28],%f29
-fstod %f29,%f28
-fmuld %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1484,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1503; nop
-set 195,%i4
-cmp %i5,0; be .L1505; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1505:
-.L1503:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-24],%f30
-ldd [%fp+-40],%f28
-fmuld %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1484,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1507; nop
-set 196,%i4
-cmp %i5,0; be .L1509; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1509:
-.L1507:
-set 5,%i3
-set 2,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L1511; nop
-set 197,%i4
-cmp %i5,0; be .L1513; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1513:
-.L1511:
-set 5,%i3
-set 2,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L1515; nop
-set 198,%i4
-cmp %i5,0; be .L1517; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1517:
-.L1515:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L1519; nop
-set 199,%i4
-cmp %i5,0; be .L1521; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1521:
-.L1519:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L1523; nop
-set 200,%i4
-cmp %i5,0; be .L1525; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1525:
-.L1523:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L1527; nop
-set 201,%i4
-cmp %i5,0; be .L1529; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1529:
-.L1527:
-set 5,%i3
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fdivs %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L1531; nop
-set 202,%i4
-cmp %i5,0; be .L1533; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1533:
-.L1531:
-set 5,%i3
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fdivd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,2; be .L1535; nop
-set 203,%i4
-cmp %i5,0; be .L1537; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1537:
-.L1535:
-set 5,%i2
-set 2,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L1539; nop
-set 204,%i4
-cmp %i5,0; be .L1541; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1541:
-.L1539:
-set 5,%i2
-set 2,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L1543; nop
-set 205,%i4
-cmp %i5,0; be .L1545; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1545:
-.L1543:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L1547; nop
-set 206,%i4
-cmp %i5,0; be .L1549; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1549:
-.L1547:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L1551; nop
-set 207,%i4
-cmp %i5,0; be .L1553; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1553:
-.L1551:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L1555; nop
-set 208,%i4
-cmp %i5,0; be .L1557; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1557:
-.L1555:
-set 5,%i2
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fdivs %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L1559; nop
-set 209,%i4
-cmp %i5,0; be .L1561; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1561:
-.L1559:
-set 5,%i2
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fdivd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,2; be .L1563; nop
-set 210,%i4
-cmp %i5,0; be .L1565; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1565:
-.L1563:
-set 5,%i1
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%i1
-cmp %i1,2; be .L1567; nop
-set 211,%i4
-cmp %i5,0; be .L1569; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1569:
-.L1567:
-set 5,%i1
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%i1
-cmp %i1,2; be .L1571; nop
-set 212,%i4
-cmp %i5,0; be .L1573; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1573:
-.L1571:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%i1
-cmp %i1,2; be .L1575; nop
-set 213,%i4
-cmp %i5,0; be .L1577; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1577:
-.L1575:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%i1
-cmp %i1,2; be .L1579; nop
-set 214,%i4
-cmp %i5,0; be .L1581; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1581:
-.L1579:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-12]
-mov %i1,%l3
-ld [%fp+-12],%l2
-wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%l3
-mov %l3,%i1
-cmp %i1,2; be .L1583; nop
-set 215,%i4
-cmp %i5,0; be .L1585; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1585:
-.L1583:
-set 5,%i1
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-st %i1,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fdivs %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,2; be .L1587; nop
-set 216,%i4
-cmp %i5,0; be .L1589; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1589:
-.L1587:
-set 5,%i1
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-st %i1,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fdivd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-cmp %i1,2; be .L1591; nop
-set 217,%i4
-cmp %i5,0; be .L1593; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1593:
-.L1591:
-set 5,%l7
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%l7
-cmp %l7,2; be .L1595; nop
-set 218,%i4
-cmp %i5,0; be .L1597; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1597:
-.L1595:
-set 5,%l7
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%l7
-cmp %l7,2; be .L1599; nop
-set 219,%i4
-cmp %i5,0; be .L1601; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1601:
-.L1599:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%l7
-cmp %l7,2; be .L1603; nop
-set 220,%i4
-cmp %i5,0; be .L1605; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1605:
-.L1603:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%l7
-cmp %l7,2; be .L1607; nop
-set 221,%i4
-cmp %i5,0; be .L1609; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1609:
-.L1607:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-12]
-mov %l7,%l3
-ld [%fp+-12],%l2
-wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%l3
-mov %l3,%l7
-cmp %l7,2; be .L1611; nop
-set 222,%i4
-cmp %i5,0; be .L1613; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1613:
-.L1611:
-set 5,%l7
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-st %l7,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-ld [%fp+-28],%f30
-fdivs %f31,%f30,%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,2; be .L1615; nop
-set 223,%i4
-cmp %i5,0; be .L1617; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1617:
-.L1615:
-set 5,%l7
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-st %l7,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-ldd [%fp+-40],%f28
-fdivd %f30,%f28,%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
-cmp %l7,2; be .L1619; nop
-set 224,%i4
-cmp %i5,0; be .L1621; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1621:
-.L1619:
-set 5,%l6
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%l6
-set 2,%l3
-cmp %l6,%l3; be .L1623; nop
-set 225,%i4
-cmp %i5,0; be .L1625; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1625:
-.L1623:
-set 5,%l6
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%l6
-set 2,%l3
-cmp %l6,%l3; be .L1627; nop
-set 226,%i4
-cmp %i5,0; be .L1629; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1629:
-.L1627:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%l6
-set 2,%l3
-cmp %l6,%l3; be .L1631; nop
-set 227,%i4
-cmp %i5,0; be .L1633; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1633:
-.L1631:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%l6
-set 2,%l3
-cmp %l6,%l3; be .L1635; nop
-set 228,%i4
-cmp %i5,0; be .L1637; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1637:
-.L1635:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l2
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l2,%l6
-cmp %l6,%l3; be .L1639; nop
-set 229,%i4
-cmp %i5,0; be .L1641; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1641:
-.L1639:
-set 5,%l6
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-set .L596,%l3
-ld2 [%l3],%f30
-srl %l6,1,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l3
-and %l6,%l3,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-fdtos %f30,%f31
-ld [%fp+-28],%f30
-fdivs %f31,%f30,%f31
-set .L828,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbul .L1644; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-88]
-ba .L1645; nop
-.L1644:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-88]
-.L1645:
-ld [%fp+-88],%l6
-set 2,%l3
-cmp %l6,%l3; be .L1646; nop
-set 230,%i4
-cmp %i5,0; be .L1648; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1648:
-.L1646:
-set 5,%l6
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-set .L596,%l3
-ld2 [%l3],%f30
-srl %l6,1,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%l3
-and %l6,%l3,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-ldd [%fp+-40],%f28
-fdivd %f30,%f28,%f30
-set .L836,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L1651; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-92]
-ba .L1652; nop
-.L1651:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-92]
-.L1652:
-ld [%fp+-92],%l6
-set 2,%l3
-cmp %l6,%l3; be .L1653; nop
-set 231,%i4
-cmp %i5,0; be .L1655; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1655:
-.L1653:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l5
-ld [%fp+-16],%f31
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fdivs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1657; nop
-set 232,%i4
-cmp %i5,0; be .L1660; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1660:
-.L1657:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l4
-ld [%fp+-16],%f31
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fdivs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1662; nop
-set 233,%i4
-cmp %i5,0; be .L1664; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1664:
-.L1662:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-16],%f31
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fdivs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1666; nop
-set 234,%i4
-cmp %i5,0; be .L1668; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1668:
-.L1666:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-16],%f31
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fdivs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1670; nop
-set 235,%i4
-cmp %i5,0; be .L1672; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1672:
-.L1670:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-ld [%fp+-16],%f31
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fdtos %f28,%f30
-fdivs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1674; nop
-set 236,%i4
-cmp %i5,0; be .L1676; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1676:
-.L1674:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ld [%fp+-16],%f31
-ld [%fp+-28],%f30
-fdivs %f31,%f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1678; nop
-set 237,%i4
-cmp %i5,0; be .L1680; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1680:
-.L1678:
-set .L841,%l3
-ld [%l3],%f31
-st %f31,[%fp+-16]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-ldd [%fp+-40],%f28
-fdivd %f30,%f28,%f30
-fdtos %f30,%f31
-st %f31,[%fp+-16]
-ld [%fp+-16],%f31
-fstod %f31,%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1682; nop
-set 238,%i4
-cmp %i5,0; be .L1684; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1684:
-.L1682:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l5
-ldd [%fp+-24],%f30
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fdivd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1686; nop
-set 239,%i4
-cmp %i5,0; be .L1688; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1688:
-.L1686:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l4
-ldd [%fp+-24],%f30
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fdivd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1690; nop
-set 240,%i4
-cmp %i5,0; be .L1692; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1692:
-.L1690:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-4]
-ldd [%fp+-24],%f30
-ld [%fp+-4],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fdivd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1694; nop
-set 241,%i4
-cmp %i5,0; be .L1696; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1696:
-.L1694:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-8]
-ldd [%fp+-24],%f30
-ld [%fp+-8],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fdivd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1698; nop
-set 242,%i4
-cmp %i5,0; be .L1700; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1700:
-.L1698:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-ldd [%fp+-24],%f30
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fdivd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1702; nop
-set 243,%i4
-cmp %i5,0; be .L1704; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1704:
-.L1702:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L529,%l3
-ld [%l3],%f31
-st %f31,[%fp+-28]
-ldd [%fp+-24],%f30
-ld [%fp+-28],%f29
-fstod %f29,%f28
-fdivd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1706; nop
-set 244,%i4
-cmp %i5,0; be .L1708; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1708:
-.L1706:
-set .L870,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-24]
-set .L416,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-40]
-ldd [%fp+-24],%f30
-ldd [%fp+-40],%f28
-fdivd %f30,%f28,%f30
-std %f30,[%fp+-24]
-ldd [%fp+-24],%f30
-set .L1659,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L1710; nop
-set 245,%i4
-cmp %i5,0; be .L1712; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1712:
-.L1710:
-set 5,%i3
-set 2,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
-; smul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1714; nop
-set 246,%i4
-cmp %i5,0; be .L1716; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1716:
-.L1714:
-set 5,%i3
-set 2,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
-; smul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1718; nop
-set 247,%i4
-cmp %i5,0; be .L1720; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1720:
-.L1718:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
-; smul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1722; nop
-set 248,%i4
-cmp %i5,0; be .L1724; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1724:
-.L1722:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
-; smul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1726; nop
-set 249,%i4
-cmp %i5,0; be .L1728; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1728:
-.L1726:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%g1
-; umul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1730; nop
-set 250,%i4
-cmp %i5,0; be .L1732; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1732:
-.L1730:
-set 5,%i2
-set 2,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
-; smul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1734; nop
-set 251,%i4
-cmp %i5,0; be .L1736; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1736:
-.L1734:
-set 5,%i2
-set 2,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
-; smul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1738; nop
-set 252,%i4
-cmp %i5,0; be .L1740; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1740:
-.L1738:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
-; smul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1742; nop
-set 253,%i4
-cmp %i5,0; be .L1744; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1744:
-.L1742:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
-; smul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1746; nop
-set 254,%i4
-cmp %i5,0; be .L1748; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1748:
-.L1746:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%g1
-; umul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1750; nop
-set 255,%i4
-cmp %i5,0; be .L1752; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1752:
-.L1750:
-set 5,%i1
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%g1
-; smul %g1,%l3,%g1; sub %i1,%g1,%i1
-cmp %i1,1; be .L1754; nop
-set 256,%i4
-cmp %i5,0; be .L1756; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1756:
-.L1754:
-set 5,%i1
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%g1
-; smul %g1,%l3,%g1; sub %i1,%g1,%i1
-cmp %i1,1; be .L1758; nop
-set 257,%i4
-cmp %i5,0; be .L1760; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1760:
-.L1758:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%g1
-; smul %g1,%l3,%g1; sub %i1,%g1,%i1
-cmp %i1,1; be .L1762; nop
-set 258,%i4
-cmp %i5,0; be .L1764; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1764:
-.L1762:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%g1
-; smul %g1,%l3,%g1; sub %i1,%g1,%i1
-cmp %i1,1; be .L1766; nop
-set 259,%i4
-cmp %i5,0; be .L1768; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1768:
-.L1766:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-12]
-mov %i1,%l3
-ld [%fp+-12],%l2
-wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%g1
-; umul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%i1
-cmp %i1,1; be .L1770; nop
-set 260,%i4
-cmp %i5,0; be .L1772; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1772:
-.L1770:
-set 5,%l7
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%g1
-; smul %g1,%l3,%g1; sub %l7,%g1,%l7
-cmp %l7,1; be .L1774; nop
-set 261,%i4
-cmp %i5,0; be .L1776; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1776:
-.L1774:
-set 5,%l7
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%g1
-; smul %g1,%l3,%g1; sub %l7,%g1,%l7
-cmp %l7,1; be .L1778; nop
-set 262,%i4
-cmp %i5,0; be .L1780; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1780:
-.L1778:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%g1
-; smul %g1,%l3,%g1; sub %l7,%g1,%l7
-cmp %l7,1; be .L1782; nop
-set 263,%i4
-cmp %i5,0; be .L1784; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1784:
-.L1782:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%g1
-; smul %g1,%l3,%g1; sub %l7,%g1,%l7
-cmp %l7,1; be .L1786; nop
-set 264,%i4
-cmp %i5,0; be .L1788; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1788:
-.L1786:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-12]
-mov %l7,%l3
-ld [%fp+-12],%l2
-wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%g1
-; umul %g1,%l2,%g1; sub %l3,%g1,%l3
-mov %l3,%l7
-cmp %l7,1; be .L1790; nop
-set 265,%i4
-cmp %i5,0; be .L1792; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1792:
-.L1790:
-set 5,%l6
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
-; umul %g1,%l3,%g1; sub %l6,%g1,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1794; nop
-set 266,%i4
-cmp %i5,0; be .L1796; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1796:
-.L1794:
-set 5,%l6
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
-; umul %g1,%l3,%g1; sub %l6,%g1,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1798; nop
-set 267,%i4
-cmp %i5,0; be .L1800; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1800:
-.L1798:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
-; umul %g1,%l3,%g1; sub %l6,%g1,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1802; nop
-set 268,%i4
-cmp %i5,0; be .L1804; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1804:
-.L1802:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
-; umul %g1,%l3,%g1; sub %l6,%g1,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1806; nop
-set 269,%i4
-cmp %i5,0; be .L1808; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1808:
-.L1806:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
-; umul %g1,%l3,%g1; sub %l6,%g1,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1810; nop
-set 270,%i4
-cmp %i5,0; be .L1812; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1812:
-.L1810:
-set 5,%i3
-set 2,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sra %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1814; nop
-set 271,%i4
-cmp %i5,0; be .L1816; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1816:
-.L1814:
-set 5,%i3
-set 2,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sra %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1818; nop
-set 272,%i4
-cmp %i5,0; be .L1820; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1820:
-.L1818:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-sra %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1822; nop
-set 273,%i4
-cmp %i5,0; be .L1824; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1824:
-.L1822:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-sra %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1826; nop
-set 274,%i4
-cmp %i5,0; be .L1828; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1828:
-.L1826:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-sra %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,1; be .L1830; nop
-set 275,%i4
-cmp %i5,0; be .L1832; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1832:
-.L1830:
-set 5,%i2
-set 2,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sra %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1834; nop
-set 276,%i4
-cmp %i5,0; be .L1836; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1836:
-.L1834:
-set 5,%i2
-set 2,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sra %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1838; nop
-set 277,%i4
-cmp %i5,0; be .L1840; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1840:
-.L1838:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-sra %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1842; nop
-set 278,%i4
-cmp %i5,0; be .L1844; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1844:
-.L1842:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-sra %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1846; nop
-set 279,%i4
-cmp %i5,0; be .L1848; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1848:
-.L1846:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-sra %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,1; be .L1850; nop
-set 280,%i4
-cmp %i5,0; be .L1852; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1852:
-.L1850:
-set 5,%i1
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sra %i1,%l3,%i1
-cmp %i1,1; be .L1854; nop
-set 281,%i4
-cmp %i5,0; be .L1856; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1856:
-.L1854:
-set 5,%i1
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sra %i1,%l3,%i1
-cmp %i1,1; be .L1858; nop
-set 282,%i4
-cmp %i5,0; be .L1860; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1860:
-.L1858:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sra %i1,%l3,%i1
-cmp %i1,1; be .L1862; nop
-set 283,%i4
-cmp %i5,0; be .L1864; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1864:
-.L1862:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sra %i1,%l3,%i1
-cmp %i1,1; be .L1866; nop
-set 284,%i4
-cmp %i5,0; be .L1868; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1868:
-.L1866:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-sra %i1,%l3,%i1
-cmp %i1,1; be .L1870; nop
-set 285,%i4
-cmp %i5,0; be .L1872; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1872:
-.L1870:
-set 5,%l7
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sra %l7,%l3,%l7
-cmp %l7,1; be .L1874; nop
-set 286,%i4
-cmp %i5,0; be .L1876; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1876:
-.L1874:
-set 5,%l7
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sra %l7,%l3,%l7
-cmp %l7,1; be .L1878; nop
-set 287,%i4
-cmp %i5,0; be .L1880; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1880:
-.L1878:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sra %l7,%l3,%l7
-cmp %l7,1; be .L1882; nop
-set 288,%i4
-cmp %i5,0; be .L1884; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1884:
-.L1882:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sra %l7,%l3,%l7
-cmp %l7,1; be .L1886; nop
-set 289,%i4
-cmp %i5,0; be .L1888; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1888:
-.L1886:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-sra %l7,%l3,%l7
-cmp %l7,1; be .L1890; nop
-set 290,%i4
-cmp %i5,0; be .L1892; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1892:
-.L1890:
-set 5,%l6
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-srl %l6,%l3,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1894; nop
-set 291,%i4
-cmp %i5,0; be .L1896; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1896:
-.L1894:
-set 5,%l6
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-srl %l6,%l3,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1898; nop
-set 292,%i4
-cmp %i5,0; be .L1900; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1900:
-.L1898:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-srl %l6,%l3,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1902; nop
-set 293,%i4
-cmp %i5,0; be .L1904; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1904:
-.L1902:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-srl %l6,%l3,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1906; nop
-set 294,%i4
-cmp %i5,0; be .L1908; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1908:
-.L1906:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-srl %l6,%l3,%l6
-set 1,%l3
-cmp %l6,%l3; be .L1910; nop
-set 295,%i4
-cmp %i5,0; be .L1912; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1912:
-.L1910:
-set 5,%i3
-set 2,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sll %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,20; be .L1914; nop
-set 296,%i4
-cmp %i5,0; be .L1916; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1916:
-.L1914:
-set 5,%i3
-set 2,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sll %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,20; be .L1918; nop
-set 297,%i4
-cmp %i5,0; be .L1920; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1920:
-.L1918:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-sll %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,20; be .L1922; nop
-set 298,%i4
-cmp %i5,0; be .L1924; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1924:
-.L1922:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-sll %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,20; be .L1926; nop
-set 299,%i4
-cmp %i5,0; be .L1928; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1928:
-.L1926:
-set 5,%i3
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-sll %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,20; be .L1930; nop
-set 300,%i4
-cmp %i5,0; be .L1932; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1932:
-.L1930:
-set 5,%i2
-set 2,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-sll %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,20; be .L1934; nop
-set 301,%i4
-cmp %i5,0; be .L1936; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1936:
-.L1934:
-set 5,%i2
-set 2,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-sll %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,20; be .L1938; nop
-set 302,%i4
-cmp %i5,0; be .L1940; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1940:
-.L1938:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-sll %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,20; be .L1942; nop
-set 303,%i4
-cmp %i5,0; be .L1944; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1944:
-.L1942:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-sll %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,20; be .L1946; nop
-set 304,%i4
-cmp %i5,0; be .L1948; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1948:
-.L1946:
-set 5,%i2
-set 2,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-sll %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,20; be .L1950; nop
-set 305,%i4
-cmp %i5,0; be .L1952; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1952:
-.L1950:
-set 5,%i1
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %i1,%l3,%i1
-cmp %i1,20; be .L1954; nop
-set 306,%i4
-cmp %i5,0; be .L1956; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1956:
-.L1954:
-set 5,%i1
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %i1,%l3,%i1
-cmp %i1,20; be .L1958; nop
-set 307,%i4
-cmp %i5,0; be .L1960; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1960:
-.L1958:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sll %i1,%l3,%i1
-cmp %i1,20; be .L1962; nop
-set 308,%i4
-cmp %i5,0; be .L1964; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1964:
-.L1962:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sll %i1,%l3,%i1
-cmp %i1,20; be .L1966; nop
-set 309,%i4
-cmp %i5,0; be .L1968; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1968:
-.L1966:
-set 5,%i1
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-sll %i1,%l3,%i1
-cmp %i1,20; be .L1970; nop
-set 310,%i4
-cmp %i5,0; be .L1972; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1972:
-.L1970:
-set 5,%l7
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l7,%l3,%l7
-cmp %l7,20; be .L1974; nop
-set 311,%i4
-cmp %i5,0; be .L1976; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1976:
-.L1974:
-set 5,%l7
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l7,%l3,%l7
-cmp %l7,20; be .L1978; nop
-set 312,%i4
-cmp %i5,0; be .L1980; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1980:
-.L1978:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sll %l7,%l3,%l7
-cmp %l7,20; be .L1982; nop
-set 313,%i4
-cmp %i5,0; be .L1984; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1984:
-.L1982:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sll %l7,%l3,%l7
-cmp %l7,20; be .L1986; nop
-set 314,%i4
-cmp %i5,0; be .L1988; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1988:
-.L1986:
-set 5,%l7
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-sll %l7,%l3,%l7
-cmp %l7,20; be .L1990; nop
-set 315,%i4
-cmp %i5,0; be .L1992; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1992:
-.L1990:
-set 5,%l6
-set 2,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l6,%l3,%l6
-set 20,%l3
-cmp %l6,%l3; be .L1994; nop
-set 316,%i4
-cmp %i5,0; be .L1996; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L1996:
-.L1994:
-set 5,%l6
-set 2,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l6,%l3,%l6
-set 20,%l3
-cmp %l6,%l3; be .L1998; nop
-set 317,%i4
-cmp %i5,0; be .L2000; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2000:
-.L1998:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-sll %l6,%l3,%l6
-set 20,%l3
-cmp %l6,%l3; be .L2002; nop
-set 318,%i4
-cmp %i5,0; be .L2004; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2004:
-.L2002:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-sll %l6,%l3,%l6
-set 20,%l3
-cmp %l6,%l3; be .L2006; nop
-set 319,%i4
-cmp %i5,0; be .L2008; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2008:
-.L2006:
-set 5,%l6
-set 2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-sll %l6,%l3,%l6
-set 20,%l3
-cmp %l6,%l3; be .L2010; nop
-set 320,%i4
-cmp %i5,0; be .L2012; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2012:
-.L2010:
-set 12,%i3
-set 10,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-and %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,8; be .L2014; nop
-set 321,%i4
-cmp %i5,0; be .L2016; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2016:
-.L2014:
-set 12,%i3
-set 10,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-and %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,8; be .L2018; nop
-set 322,%i4
-cmp %i5,0; be .L2020; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2020:
-.L2018:
-set 12,%i3
-set 10,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-and %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,8; be .L2022; nop
-set 323,%i4
-cmp %i5,0; be .L2024; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2024:
-.L2022:
-set 12,%i3
-set 10,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-and %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,8; be .L2026; nop
-set 324,%i4
-cmp %i5,0; be .L2028; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2028:
-.L2026:
-set 12,%i3
-set 10,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-and %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,8; be .L2030; nop
-set 325,%i4
-cmp %i5,0; be .L2032; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2032:
-.L2030:
-set 12,%i2
-set 10,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-and %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,8; be .L2034; nop
-set 326,%i4
-cmp %i5,0; be .L2036; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2036:
-.L2034:
-set 12,%i2
-set 10,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-and %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,8; be .L2038; nop
-set 327,%i4
-cmp %i5,0; be .L2040; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2040:
-.L2038:
-set 12,%i2
-set 10,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-and %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,8; be .L2042; nop
-set 328,%i4
-cmp %i5,0; be .L2044; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2044:
-.L2042:
-set 12,%i2
-set 10,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-and %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,8; be .L2046; nop
-set 329,%i4
-cmp %i5,0; be .L2048; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2048:
-.L2046:
-set 12,%i2
-set 10,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-and %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,8; be .L2050; nop
-set 330,%i4
-cmp %i5,0; be .L2052; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2052:
-.L2050:
-set 12,%i1
-set 10,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-and %i1,%l3,%i1
-cmp %i1,8; be .L2054; nop
-set 331,%i4
-cmp %i5,0; be .L2056; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2056:
-.L2054:
-set 12,%i1
-set 10,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-and %i1,%l3,%i1
-cmp %i1,8; be .L2058; nop
-set 332,%i4
-cmp %i5,0; be .L2060; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2060:
-.L2058:
-set 12,%i1
-set 10,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-and %i1,%l3,%i1
-cmp %i1,8; be .L2062; nop
-set 333,%i4
-cmp %i5,0; be .L2064; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2064:
-.L2062:
-set 12,%i1
-set 10,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-and %i1,%l3,%i1
-cmp %i1,8; be .L2066; nop
-set 334,%i4
-cmp %i5,0; be .L2068; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2068:
-.L2066:
-set 12,%i1
-set 10,%l3
-st %l3,[%fp+-12]
-mov %i1,%l3
-ld [%fp+-12],%l2
-and %l3,%l2,%l3
-mov %l3,%i1
-cmp %i1,8; be .L2070; nop
-set 335,%i4
-cmp %i5,0; be .L2072; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2072:
-.L2070:
-set 12,%l7
-set 10,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-and %l7,%l3,%l7
-cmp %l7,8; be .L2074; nop
-set 336,%i4
-cmp %i5,0; be .L2076; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2076:
-.L2074:
-set 12,%l7
-set 10,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-and %l7,%l3,%l7
-cmp %l7,8; be .L2078; nop
-set 337,%i4
-cmp %i5,0; be .L2080; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2080:
-.L2078:
-set 12,%l7
-set 10,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-and %l7,%l3,%l7
-cmp %l7,8; be .L2082; nop
-set 338,%i4
-cmp %i5,0; be .L2084; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2084:
-.L2082:
-set 12,%l7
-set 10,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-and %l7,%l3,%l7
-cmp %l7,8; be .L2086; nop
-set 339,%i4
-cmp %i5,0; be .L2088; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2088:
-.L2086:
-set 12,%l7
-set 10,%l3
-st %l3,[%fp+-12]
-mov %l7,%l3
-ld [%fp+-12],%l2
-and %l3,%l2,%l3
-mov %l3,%l7
-cmp %l7,8; be .L2090; nop
-set 340,%i4
-cmp %i5,0; be .L2092; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2092:
-.L2090:
-set 12,%l6
-set 10,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-and %l6,%l3,%l6
-set 8,%l3
-cmp %l6,%l3; be .L2094; nop
-set 341,%i4
-cmp %i5,0; be .L2096; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2096:
-.L2094:
-set 12,%l6
-set 10,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-and %l6,%l3,%l6
-set 8,%l3
-cmp %l6,%l3; be .L2098; nop
-set 342,%i4
-cmp %i5,0; be .L2100; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2100:
-.L2098:
-set 12,%l6
-set 10,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-and %l6,%l3,%l6
-set 8,%l3
-cmp %l6,%l3; be .L2102; nop
-set 343,%i4
-cmp %i5,0; be .L2104; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2104:
-.L2102:
-set 12,%l6
-set 10,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-and %l6,%l3,%l6
-set 8,%l3
-cmp %l6,%l3; be .L2106; nop
-set 344,%i4
-cmp %i5,0; be .L2108; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2108:
-.L2106:
-set 12,%l6
-set 10,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-and %l6,%l3,%l6
-set 8,%l3
-cmp %l6,%l3; be .L2110; nop
-set 345,%i4
-cmp %i5,0; be .L2112; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2112:
-.L2110:
-set 12,%i3
-set 10,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-xor %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,6; be .L2114; nop
-set 346,%i4
-cmp %i5,0; be .L2116; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2116:
-.L2114:
-set 12,%i3
-set 10,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-xor %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,6; be .L2118; nop
-set 347,%i4
-cmp %i5,0; be .L2120; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2120:
-.L2118:
-set 12,%i3
-set 10,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-xor %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,6; be .L2122; nop
-set 348,%i4
-cmp %i5,0; be .L2124; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2124:
-.L2122:
-set 12,%i3
-set 10,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-xor %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,6; be .L2126; nop
-set 349,%i4
-cmp %i5,0; be .L2128; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2128:
-.L2126:
-set 12,%i3
-set 10,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-xor %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,6; be .L2130; nop
-set 350,%i4
-cmp %i5,0; be .L2132; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2132:
-.L2130:
-set 12,%i2
-set 10,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-xor %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,6; be .L2134; nop
-set 351,%i4
-cmp %i5,0; be .L2136; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2136:
-.L2134:
-set 12,%i2
-set 10,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-xor %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,6; be .L2138; nop
-set 352,%i4
-cmp %i5,0; be .L2140; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2140:
-.L2138:
-set 12,%i2
-set 10,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-xor %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,6; be .L2142; nop
-set 353,%i4
-cmp %i5,0; be .L2144; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2144:
-.L2142:
-set 12,%i2
-set 10,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-xor %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,6; be .L2146; nop
-set 354,%i4
-cmp %i5,0; be .L2148; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2148:
-.L2146:
-set 12,%i2
-set 10,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-xor %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,6; be .L2150; nop
-set 355,%i4
-cmp %i5,0; be .L2152; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2152:
-.L2150:
-set 12,%i1
-set 10,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-xor %i1,%l3,%i1
-cmp %i1,6; be .L2154; nop
-set 356,%i4
-cmp %i5,0; be .L2156; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2156:
-.L2154:
-set 12,%i1
-set 10,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-xor %i1,%l3,%i1
-cmp %i1,6; be .L2158; nop
-set 357,%i4
-cmp %i5,0; be .L2160; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2160:
-.L2158:
-set 12,%i1
-set 10,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-xor %i1,%l3,%i1
-cmp %i1,6; be .L2162; nop
-set 358,%i4
-cmp %i5,0; be .L2164; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2164:
-.L2162:
-set 12,%i1
-set 10,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-xor %i1,%l3,%i1
-cmp %i1,6; be .L2166; nop
-set 359,%i4
-cmp %i5,0; be .L2168; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2168:
-.L2166:
-set 12,%i1
-set 10,%l3
-st %l3,[%fp+-12]
-mov %i1,%l3
-ld [%fp+-12],%l2
-xor %l3,%l2,%l3
-mov %l3,%i1
-cmp %i1,6; be .L2170; nop
-set 360,%i4
-cmp %i5,0; be .L2172; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2172:
-.L2170:
-set 12,%l7
-set 10,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-xor %l7,%l3,%l7
-cmp %l7,6; be .L2174; nop
-set 361,%i4
-cmp %i5,0; be .L2176; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2176:
-.L2174:
-set 12,%l7
-set 10,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-xor %l7,%l3,%l7
-cmp %l7,6; be .L2178; nop
-set 362,%i4
-cmp %i5,0; be .L2180; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2180:
-.L2178:
-set 12,%l7
-set 10,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-xor %l7,%l3,%l7
-cmp %l7,6; be .L2182; nop
-set 363,%i4
-cmp %i5,0; be .L2184; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2184:
-.L2182:
-set 12,%l7
-set 10,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-xor %l7,%l3,%l7
-cmp %l7,6; be .L2186; nop
-set 364,%i4
-cmp %i5,0; be .L2188; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2188:
-.L2186:
-set 12,%l7
-set 10,%l3
-st %l3,[%fp+-12]
-mov %l7,%l3
-ld [%fp+-12],%l2
-xor %l3,%l2,%l3
-mov %l3,%l7
-cmp %l7,6; be .L2190; nop
-set 365,%i4
-cmp %i5,0; be .L2192; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2192:
-.L2190:
-set 12,%l6
-set 10,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-xor %l6,%l3,%l6
-set 6,%l3
-cmp %l6,%l3; be .L2194; nop
-set 366,%i4
-cmp %i5,0; be .L2196; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2196:
-.L2194:
-set 12,%l6
-set 10,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-xor %l6,%l3,%l6
-set 6,%l3
-cmp %l6,%l3; be .L2198; nop
-set 367,%i4
-cmp %i5,0; be .L2200; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2200:
-.L2198:
-set 12,%l6
-set 10,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-xor %l6,%l3,%l6
-set 6,%l3
-cmp %l6,%l3; be .L2202; nop
-set 368,%i4
-cmp %i5,0; be .L2204; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2204:
-.L2202:
-set 12,%l6
-set 10,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-xor %l6,%l3,%l6
-set 6,%l3
-cmp %l6,%l3; be .L2206; nop
-set 369,%i4
-cmp %i5,0; be .L2208; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2208:
-.L2206:
-set 12,%l6
-set 10,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-xor %l6,%l3,%l6
-set 6,%l3
-cmp %l6,%l3; be .L2210; nop
-set 370,%i4
-cmp %i5,0; be .L2212; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2212:
-.L2210:
-set 12,%i3
-set 10,%l5
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-or %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,14; be .L2214; nop
-set 371,%i4
-cmp %i5,0; be .L2216; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2216:
-.L2214:
-set 12,%i3
-set 10,%l4
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-or %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,14; be .L2218; nop
-set 372,%i4
-cmp %i5,0; be .L2220; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2220:
-.L2218:
-set 12,%i3
-set 10,%l3
-st %l3,[%fp+-4]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-4],%l2
-or %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,14; be .L2222; nop
-set 373,%i4
-cmp %i5,0; be .L2224; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2224:
-.L2222:
-set 12,%i3
-set 10,%l3
-st %l3,[%fp+-8]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-8],%l2
-or %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,14; be .L2226; nop
-set 374,%i4
-cmp %i5,0; be .L2228; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2228:
-.L2226:
-set 12,%i3
-set 10,%l3
-st %l3,[%fp+-12]
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-ld [%fp+-12],%l2
-or %l3,%l2,%l3
-mov %l3,%i3
-sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,14; be .L2230; nop
-set 375,%i4
-cmp %i5,0; be .L2232; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2232:
-.L2230:
-set 12,%i2
-set 10,%l5
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-or %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,14; be .L2234; nop
-set 376,%i4
-cmp %i5,0; be .L2236; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2236:
-.L2234:
-set 12,%i2
-set 10,%l4
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-or %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,14; be .L2238; nop
-set 377,%i4
-cmp %i5,0; be .L2240; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2240:
-.L2238:
-set 12,%i2
-set 10,%l3
-st %l3,[%fp+-4]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-4],%l2
-or %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,14; be .L2242; nop
-set 378,%i4
-cmp %i5,0; be .L2244; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2244:
-.L2242:
-set 12,%i2
-set 10,%l3
-st %l3,[%fp+-8]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-8],%l2
-or %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,14; be .L2246; nop
-set 379,%i4
-cmp %i5,0; be .L2248; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2248:
-.L2246:
-set 12,%i2
-set 10,%l3
-st %l3,[%fp+-12]
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-ld [%fp+-12],%l2
-or %l3,%l2,%l3
-mov %l3,%i2
-sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,14; be .L2250; nop
-set 380,%i4
-cmp %i5,0; be .L2252; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2252:
-.L2250:
-set 12,%i1
-set 10,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-or %i1,%l3,%i1
-cmp %i1,14; be .L2254; nop
-set 381,%i4
-cmp %i5,0; be .L2256; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2256:
-.L2254:
-set 12,%i1
-set 10,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-or %i1,%l3,%i1
-cmp %i1,14; be .L2258; nop
-set 382,%i4
-cmp %i5,0; be .L2260; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2260:
-.L2258:
-set 12,%i1
-set 10,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-or %i1,%l3,%i1
-cmp %i1,14; be .L2262; nop
-set 383,%i4
-cmp %i5,0; be .L2264; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2264:
-.L2262:
-set 12,%i1
-set 10,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-or %i1,%l3,%i1
-cmp %i1,14; be .L2266; nop
-set 384,%i4
-cmp %i5,0; be .L2268; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2268:
-.L2266:
-set 12,%i1
-set 10,%l3
-st %l3,[%fp+-12]
-mov %i1,%l3
-ld [%fp+-12],%l2
-or %l3,%l2,%l3
-mov %l3,%i1
-cmp %i1,14; be .L2270; nop
-set 385,%i4
-cmp %i5,0; be .L2272; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2272:
-.L2270:
-set 12,%l7
-set 10,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-or %l7,%l3,%l7
-cmp %l7,14; be .L2274; nop
-set 386,%i4
-cmp %i5,0; be .L2276; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2276:
-.L2274:
-set 12,%l7
-set 10,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-or %l7,%l3,%l7
-cmp %l7,14; be .L2278; nop
-set 387,%i4
-cmp %i5,0; be .L2280; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2280:
-.L2278:
-set 12,%l7
-set 10,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-or %l7,%l3,%l7
-cmp %l7,14; be .L2282; nop
-set 388,%i4
-cmp %i5,0; be .L2284; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2284:
-.L2282:
-set 12,%l7
-set 10,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-or %l7,%l3,%l7
-cmp %l7,14; be .L2286; nop
-set 389,%i4
-cmp %i5,0; be .L2288; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2288:
-.L2286:
-set 12,%l7
-set 10,%l3
-st %l3,[%fp+-12]
-mov %l7,%l3
-ld [%fp+-12],%l2
-or %l3,%l2,%l3
-mov %l3,%l7
-cmp %l7,14; be .L2290; nop
-set 390,%i4
-cmp %i5,0; be .L2292; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2292:
-.L2290:
-set 12,%l6
-set 10,%l5
-sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-or %l6,%l3,%l6
-set 14,%l3
-cmp %l6,%l3; be .L2294; nop
-set 391,%i4
-cmp %i5,0; be .L2296; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2296:
-.L2294:
-set 12,%l6
-set 10,%l4
-sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-or %l6,%l3,%l6
-set 14,%l3
-cmp %l6,%l3; be .L2298; nop
-set 392,%i4
-cmp %i5,0; be .L2300; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2300:
-.L2298:
-set 12,%l6
-set 10,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-or %l6,%l3,%l6
-set 14,%l3
-cmp %l6,%l3; be .L2302; nop
-set 393,%i4
-cmp %i5,0; be .L2304; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2304:
-.L2302:
-set 12,%l6
-set 10,%l3
-st %l3,[%fp+-8]
-ld [%fp+-8],%l3
-or %l6,%l3,%l6
-set 14,%l3
-cmp %l6,%l3; be .L2306; nop
-set 394,%i4
-cmp %i5,0; be .L2308; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2308:
-.L2306:
-set 12,%l6
-set 10,%l3
-st %l3,[%fp+-12]
-ld [%fp+-12],%l3
-or %l6,%l3,%l6
-set 14,%l3
-cmp %l6,%l3; be .L2310; nop
-set 395,%i4
-cmp %i5,0; be .L2312; nop
-set .687,%o0
-mov %i4,%o1
-call printf; nop
-.L2312:
-.L2310:
-cmp %i4,0; be .L2314; nop
-set 1,%l3
-st %l3,[%fp+-52]
-ld [%i0+44],%l3
-cmp %l3,0; be .L2316; nop
-set .688,%o0
-set 1,%o1
-call printf; nop
-.L2316:
-.L2314:
-ld [%fp+-52],%i0
-.L686:
-ret; restore
-.type s714,#function
-.size s714,.-s714
-.section ".data"
-.type .2319,#object
-.align 1
-.2319:
-.byte 115
-.byte 55
-.byte 49
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .2319,11
-.type .2320,#object
-.size .2320,8
-.align 1
-.2320:
-.byte 115
-.byte 55
-.byte 49
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s715
-.section ".text"
-.align 4
-s715:
-save %sp,-96,%sp
-mov %g0,%l6
-mov %g0,%i1
-set .2320,%i5
-add %i0,60,%i4
-mov %g0,%i2
-.L2321:
-.L2322:
-mov %i4,%l5
-add %l5,1,%i4
-mov %i5,%l4
-add %l4,1,%i5
-ldsb [%l4],%l4
-stb %l4,[%l5]
-sll %l4,8*(4-1),%l5; sra %l5,8*(4-1),%l5
-cmp %l5,0; bne .L2321; nop
-set 1,%l5
-mov %l5,%i3
-add %i3,1,%i3
-add %i3,1,%i3
-add %i3,1,%i3
-add %i3,1,%i3
-add %i3,1,%l5
-mov %l5,%i3
-cmp %l5,6; be .L2324; nop
-ld [%i0+44],%l5
-cmp %l5,0; be .L2326; nop
-set .2319,%o0
-set 1,%o1
-call printf; nop
-.L2326:
-add %i2,1,%i2
-.L2324:
-mov %i1,%o0
-set 3,%l7
-add %l7,2,%o1
-mov %l6,%o2
-call s715f; nop
-cmp %o0,5; be .L2328; nop
-ld [%i0+44],%l5
-cmp %l5,0; be .L2330; nop
-set .2319,%o0
-set 2,%o1
-call printf; nop
-.L2330:
-add %i2,2,%i2
-.L2328:
-mov %i2,%i0
-.L2318:
-ret; restore
-.type s715,#function
-.size s715,.-s715
-.global s715f
-.align 4
-s715f:
-mov %o1,%o0
-.L2332:
-retl; nop
-.type s715f,#function
-.size s715f,.-s715f
-.section ".data"
-.type .2334,#object
-.align 1
-.2334:
-.byte 115
-.byte 55
-.byte 50
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .2334,10
-.type .2335,#object
-.size .2335,8
-.align 1
-.2335:
-.byte 115
-.byte 55
-.byte 50
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s72
-.section ".text"
-.align 4
-s72:
-save %sp,-120,%sp
-set .2335,%i4
-add %i0,60,%i3
-mov %g0,%i1
-.L2336:
-.L2337:
-mov %i3,%l3
-add %l3,1,%i3
-mov %i4,%l2
-add %l2,1,%i4
-ldsb [%l2],%l2
-stb %l2,[%l3]
-sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; bne .L2336; nop
-set 2,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-cmp %l3,2; be .L2339; nop
-set 1,%l3
-add %i1,1,%i1
-set .2334,%o0
-mov %l3,%o1
-call printf; nop
-.L2339:
-ld [%fp+-4],%l3
-neg %l3,%l2
-add %l3,%l2,%l3
-cmp %l3,0; be .L2341; nop
-set 2,%l3
-add %i1,2,%i1
-set .2334,%o0
-mov %l3,%o1
-call printf; nop
-.L2341:
-st %g0,[%fp+-4]
-mov %g0,%i5
-ba .L2346; nop
-.L2343:
-ld [%fp+-4],%l3
-sll %l3,1,%l3
-or %l3,1,%l3
-st %l3,[%fp+-4]
-.L2344:
-add %i5,1,%i5
-.L2346:
-ld [%i0+4],%l3
-cmp %i5,%l3; bl .L2343; nop
-ld [%fp+-4],%l3
-not %l3,%l3
-cmp %l3,0; be .L2347; nop
-set 4,%l3
-add %i1,4,%i1
-set .2334,%o0
-mov %l3,%o1
-call printf; nop
-.L2347:
-set 5,%l3
-st %l3,[%fp+-4]
-ld [%fp+-4],%l3
-add %l3,1,%l3
-st %l3,[%fp+-4]
-cmp %l3,6; bne .L2354; nop
-ld [%fp+-4],%l3
-sub %l3,1,%l3
-st %l3,[%fp+-4]
-cmp %l3,5; bne .L2354; nop
-ld [%fp+-4],%l3
-add %l3,1,%l2
-st %l2,[%fp+-4]
-cmp %l3,5; bne .L2354; nop
-ld [%fp+-4],%l3
-sub %l3,1,%l2
-st %l2,[%fp+-4]
-cmp %l3,6; bne .L2354; nop
-ld [%fp+-4],%l3
-cmp %l3,5; be .L2349; nop
-.L2354:
-set 8,%l3
-add %i1,8,%i1
-set .2334,%o0
-mov %l3,%o1
-call printf; nop
-.L2349:
-set 26,%l6
-set 26,%l4
-set .L2355,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-16]
-set 26,%l5
-set 26,%l3
-st %l3,[%fp+-8]
-set 26,%l7
-set .L2356,%l3
-ld [%l3],%f31
-st %f31,[%fp+-20]
-mov %g0,%i2
-sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,26; bne .L2363; nop
-mov %l7,%l3
-sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,26; bne .L2363; nop
-mov %l4,%l3
-sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,26; bne .L2363; nop
-ld [%fp+-8],%l3
-sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,26; bne .L2363; nop
-ld [%fp+-20],%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,26; bne .L2363; nop
-ldd [%fp+-16],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,26; be .L2357; nop
-.L2363:
-add %i2,1,%i2
-.L2357:
-sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,26; bne .L2370; nop
-mov %l7,%l3
-sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,26; bne .L2370; nop
-mov %l4,%l3
-sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,26; bne .L2370; nop
-ld [%fp+-8],%l3
-sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,26; bne .L2370; nop
-ld [%fp+-20],%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,26; bne .L2370; nop
-ldd [%fp+-16],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,26; be .L2364; nop
-.L2370:
-add %i2,2,%i2
-.L2364:
-sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,26; bne .L2377; nop
-sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,26; bne .L2377; nop
-cmp %l4,26; bne .L2377; nop
-ld [%fp+-8],%l3
-cmp %l3,26; bne .L2377; nop
-ld [%fp+-20],%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-cmp %l3,26; bne .L2377; nop
-ldd [%fp+-16],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-cmp %l3,26; be .L2371; nop
-.L2377:
-add %i2,4,%i2
-.L2371:
-sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,26; bne .L2384; nop
-sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-cmp %l3,26; bne .L2384; nop
-cmp %l7,26; bne .L2384; nop
-ld [%fp+-8],%l3
-cmp %l3,26; bne .L2384; nop
-ld [%fp+-20],%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-cmp %l3,26; bne .L2384; nop
-ldd [%fp+-16],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-cmp %l3,26; be .L2378; nop
-.L2384:
-add %i2,8,%i2
-.L2378:
-set 26,%l3
-sll %l6,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-cmp %l2,%l3; bne .L2393; nop
-sll %l5,8*(4-2),%l2; sra %l2,8*(4-2),%l2
-cmp %l2,%l3; bne .L2393; nop
-mov %l7,%l2
-cmp %l2,%l3; bne .L2393; nop
-mov %l4,%l2
-cmp %l2,%l3; bne .L2393; nop
-ld [%fp+-20],%f31
-set .L828,%l3
-ld [%l3],%f30
-fcmpes %f31,%f30; nop; fbul .L2394; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-24]
-ba .L2395; nop
-.L2394:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-24]
-.L2395:
-ld [%fp+-24],%l3
-set 26,%l2
-cmp %l3,%l2; bne .L2393; nop
-ldd [%fp+-16],%f30
-set .L836,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L2396; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-28]
-ba .L2397; nop
-.L2396:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-28]
-.L2397:
-ld [%fp+-28],%l3
-set 26,%l2
-cmp %l3,%l2; be .L2385; nop
-.L2393:
-add %i2,16,%i2
-.L2385:
-set .L2355,%l3
-ld2 [%l3],%f30
-sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f29; fitos %f29,%f29
-fstod %f29,%f28
-fcmped %f28,%f30; nop; fbne .L2404; nop
-sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f29; fitos %f29,%f29
-fstod %f29,%f28
-fcmped %f28,%f30; nop; fbne .L2404; nop
-st %l7,[%sp+64]; ld [%sp+64],%f29; fitos %f29,%f29
-fstod %f29,%f28
-fcmped %f28,%f30; nop; fbne .L2404; nop
-st %l4,[%sp+64]; ld [%sp+64],%f29; fitos %f29,%f29
-fstod %f29,%f28
-fcmped %f28,%f30; nop; fbne .L2404; nop
-ld [%fp+-8],%l3
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fdtos %f28,%f29
-fstod %f29,%f28
-fcmped %f28,%f30; nop; fbne .L2404; nop
-ldd [%fp+-16],%f28
-fdtos %f28,%f29
-fstod %f29,%f28
-fcmped %f28,%f30; nop; fbue .L2398; nop
-.L2404:
-add %i2,32,%i2
-.L2398:
-set .L2355,%l3
-ld2 [%l3],%f30
-sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fcmped %f28,%f30; nop; fbne .L2411; nop
-sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fcmped %f28,%f30; nop; fbne .L2411; nop
-st %l7,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fcmped %f28,%f30; nop; fbne .L2411; nop
-st %l4,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fcmped %f28,%f30; nop; fbne .L2411; nop
-ld [%fp+-8],%l3
-set .L596,%l2
-ld2 [%l2],%f28
-srl %l3,1,%l2
-st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-fmuld %f28,%f26,%f28
-set 1,%l2
-and %l3,%l2,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
-faddd %f28,%f26,%f28
-fcmped %f28,%f30; nop; fbne .L2411; nop
-ld [%fp+-20],%f29
-fstod %f29,%f28
-fcmped %f28,%f30; nop; fbue .L2405; nop
-.L2411:
-add %i2,64,%i2
-.L2405:
-cmp %i2,0; be .L2412; nop
-set 16,%l3
-add %i1,16,%i1
-set .2334,%o0
-mov %l3,%o1
-call printf; nop
-.L2412:
-mov %i1,%i0
-.L2333:
-ret; restore
-.type s72,#function
-.size s72,.-s72
-.section ".data"
-.type .2415,#object
-.align 1
-.2415:
-.byte 115
-.byte 55
-.byte 53
-.byte 55
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .2415,11
-.type .2416,#object
-.size .2416,8
-.align 1
-.2416:
-.byte 115
-.byte 55
-.byte 53
-.byte 55
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s757
-.section ".text"
-.align 4
-s757:
-save %sp,-208,%sp
-set .2416,%l3
-st %l3,[%fp+-76]
-add %i0,60,%l3
-st %l3,[%fp+-80]
-st %g0,[%fp+-84]
-.L2417:
-.L2418:
-ld [%fp+-80],%l3
-add %l3,1,%l2
-st %l2,[%fp+-80]
-ld [%fp+-76],%l2
-add %l2,1,%l1
-st %l1,[%fp+-76]
-ldsb [%l2],%l2
-stb %l2,[%l3]
-sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; bne .L2417; nop
-set 40,%l3
-st %l3,[%fp+-88]
-ld [%fp+-88],%l3
-sll %l3,3,%l2
-sll %l2,2,%l2
-cmp %l2,1280; bne .L2422; nop
-sra %l3,3,%l3
-sra %l3,2,%l3
-cmp %l3,1; be .L2420; nop
-.L2422:
-ld [%fp+-84],%l3
-add %l3,1,%l3
-st %l3,[%fp+-84]
-ld [%i0+44],%l3
-cmp %l3,0; be .L2423; nop
-set .2415,%o0
-set 1,%o1
-call printf; nop
-.L2423:
-.L2420:
-mov %g0,%i1
-mov %g0,%l4
-ba .L2428; nop
-.L2425:
-set 1,%l6
-ld [%i0+16],%l3
-sub %l3,1,%l3
-sll %l6,%l3,%l5
-st %g0,[%fp+-68]
-ld [%fp+-68],%l3
-not %l3,%l3
-srl %l3,%l4,%l2
-st %l2,[%fp+-72]
-sll %l3,%l4,%l3
-st %l3,[%fp+-68]
-mov %g0,%l7
-ba .L2432; nop
-.L2429:
-cmp %l7,%l4; bge .L2440; nop
-set 1,%l3
-st %l3,[%fp+-96]
-ba .L2441; nop
-.L2440:
-st %g0,[%fp+-96]
-.L2441:
-ld [%fp+-68],%l3
-and %l6,%l3,%l3
-cmp %l3,%g0; bne .L2442; nop
-set 1,%l3
-st %l3,[%fp+-100]
-ba .L2443; nop
-.L2442:
-st %g0,[%fp+-100]
-.L2443:
-ld [%fp+-96],%l3
-ld [%fp+-100],%l2
-cmp %l3,%l2; bne .L2439; nop
-cmp %l7,%l4; bge .L2444; nop
-set 1,%l3
-st %l3,[%fp+-104]
-ba .L2445; nop
-.L2444:
-st %g0,[%fp+-104]
-.L2445:
-ld [%fp+-72],%l3
-and %l5,%l3,%l3
-cmp %l3,%g0; bne .L2446; nop
-set 1,%l3
-st %l3,[%fp+-108]
-ba .L2447; nop
-.L2446:
-st %g0,[%fp+-108]
-.L2447:
-ld [%fp+-104],%l3
-ld [%fp+-108],%l2
-cmp %l3,%l2; be .L2433; nop
-.L2439:
-set 1,%i1
-.L2433:
-sll %l6,1,%l6
-srl %l5,1,%l5
-.L2430:
-add %l7,1,%l7
-.L2432:
-ld [%i0+16],%l3
-cmp %l7,%l3; bl .L2429; nop
-.L2426:
-add %l4,1,%l4
-.L2428:
-ld [%i0+16],%l3
-cmp %l4,%l3; bl .L2425; nop
-cmp %i1,0; be .L2448; nop
-ld [%fp+-84],%l3
-add %l3,2,%l3
-st %l3,[%fp+-84]
-ld [%i0+44],%l3
-cmp %l3,0; be .L2450; nop
-set .2415,%o0
-set 2,%o1
-call printf; nop
-.L2450:
-.L2448:
-set 3,%i2
-set 2,%i3
-set 1,%i4
-cmp %i2,%i3; bge .L2458; nop
-set 1,%l3
-st %l3,[%fp+-100]
-ba .L2459; nop
-.L2458:
-st %g0,[%fp+-100]
-.L2459:
-ld [%fp+-100],%l3
-cmp %l3,%i4; bge .L2456; nop
-set 1,%l3
-st %l3,[%fp+-96]
-ba .L2457; nop
-.L2456:
-st %g0,[%fp+-96]
-.L2457:
-ld [%fp+-96],%l3
-cmp %l3,1; be .L2452; nop
-ld [%fp+-84],%l3
-add %l3,4,%l3
-st %l3,[%fp+-84]
-ld [%i0+44],%l3
-cmp %l3,0; be .L2460; nop
-set .2415,%o0
-set 4,%o1
-call printf; nop
-.L2460:
-.L2452:
-add -60,%fp,%l3
-add -64,%fp,%l2
-cmp %l3,%l2; bne .L2462; nop
-ld [%fp+-84],%l3
-add %l3,8,%l3
-st %l3,[%fp+-84]
-ld [%i0+44],%l3
-cmp %l3,0; be .L2465; nop
-set .2415,%o0
-set 8,%o1
-call printf; nop
-.L2465:
-.L2462:
-add -60,%fp,%l3
-add -64,%fp,%l2
-cmp %l3,%l2; bgeu .L2467; nop
-ld [%i0+40],%l3
-cmp %l3,0; be .L2470; nop
-set .L2472,%o0
-call printf; nop
-.L2470:
-.L2467:
-mov %g0,%i1
-mov %g0,%l7
-.L2473:
-sll %l7,2,%l3
-add -64,%fp,%l2
-set 1,%l1
-st %l1,[%l3+%l2]
-.L2474:
-add %l7,1,%l7
-cmp %l7,16; bl .L2473; nop
-st %g0,[%fp+-60]
-st %g0,[%fp+-48]
-st %g0,[%fp+-40]
-st %g0,[%fp+-36]
-st %g0,[%fp+-28]
-st %g0,[%fp+-12]
-mov %g0,%i2
-.L2483:
-mov %g0,%i3
-.L2487:
-mov %g0,%i4
-.L2491:
-mov %g0,%i5
-.L2495:
-cmp %i2,%i3; bge .L2506; nop
-set 1,%l3
-st %l3,[%fp+-108]
-ba .L2507; nop
-.L2506:
-st %g0,[%fp+-108]
-.L2507:
-cmp %i4,%i5; bge .L2508; nop
-set 1,%l3
-st %l3,[%fp+-112]
-ba .L2509; nop
-.L2508:
-st %g0,[%fp+-112]
-.L2509:
-ld [%fp+-108],%l3
-ld [%fp+-112],%l2
-cmp %l3,%l2; bne .L2504; nop
-set 1,%l3
-st %l3,[%fp+-104]
-ba .L2505; nop
-.L2504:
-st %g0,[%fp+-104]
-.L2505:
-ld [%fp+-104],%l3
-sll %i2,3,%l2
-sll %i3,2,%l1
-add %l2,%l1,%l2
-sll %i4,1,%l1
-add %l2,%l1,%l2
-add %l2,%i5,%l2
-sll %l2,2,%l2
-add -64,%fp,%l1
-ld [%l2+%l1],%l2
-cmp %l3,%l2; be .L2499; nop
-set 1,%i1
-.L2499:
-.L2496:
-add %i5,1,%i5
-cmp %i5,2; bl .L2495; nop
-.L2492:
-add %i4,1,%i4
-cmp %i4,2; bl .L2491; nop
-.L2488:
-add %i3,1,%i3
-cmp %i3,2; bl .L2487; nop
-.L2484:
-add %i2,1,%i2
-cmp %i2,2; bl .L2483; nop
-cmp %i1,0; be .L2510; nop
-ld [%fp+-84],%l3
-add %l3,16,%l3
-st %l3,[%fp+-84]
-ld [%i0+44],%l3
-cmp %l3,0; be .L2512; nop
-set .2415,%o0
-set 16,%o1
-call printf; nop
-.L2512:
-.L2510:
-st %g0,[%fp+-92]
-ld [%fp+-92],%l3
-cmp %l3,%g0; be .L2514; nop
-ld [%fp+-84],%l3
-add %l3,32,%l3
-st %l3,[%fp+-84]
-ld [%i0+44],%l3
-cmp %l3,0; be .L2516; nop
-set .2415,%o0
-set 32,%o1
-call printf; nop
-.L2516:
-.L2514:
-ld [%fp+-84],%i0
-.L2414:
-ret; restore
-.type s757,#function
-.size s757,.-s757
-.section ".data"
-.type .2519,#object
-.align 1
-.2519:
-.byte 76
-.byte 111
-.byte 99
-.byte 97
-.byte 108
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.size .2519,17
-.type .2520,#object
-.align 1
-.2520:
-.byte 115
-.byte 55
-.byte 56
-.byte 49
-.byte 51
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .2520,12
-.type .2521,#object
-.size .2521,8
-.align 1
-.2521:
-.byte 115
-.byte 55
-.byte 56
-.byte 49
-.byte 51
-.byte 32
-.byte 32
-.byte 0
-.global s7813
-.section ".text"
-.align 4
-s7813:
-save %sp,-144,%sp
-set .2521,%l7
-add %i0,60,%l6
-mov %g0,%i4
-mov %g0,%l5
-ld [%i0+48],%i5
-.L2522:
-.L2523:
-mov %l6,%l3
-add %l3,1,%l6
-mov %l7,%l2
-add %l2,1,%l7
-ldsb [%l2],%l2
-stb %l2,[%l3]
-sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; bne .L2522; nop
-ba .L2525; nop
-set 1,%i4
-cmp %i5,0; be .L2527; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2527:
-.L2525:
-ba .L2529; nop
-set 2,%i4
-cmp %i5,0; be .L2531; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2531:
-.L2529:
-ba .L2533; nop
-set 3,%i4
-cmp %i5,0; be .L2535; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2535:
-.L2533:
-ba .L2537; nop
-set 4,%i4
-cmp %i5,0; be .L2539; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2539:
-.L2537:
-ba .L2541; nop
-set 5,%i4
-cmp %i5,0; be .L2543; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2543:
-.L2541:
-ba .L2545; nop
-set 6,%i4
-cmp %i5,0; be .L2547; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2547:
-.L2545:
-ba .L2549; nop
-set 7,%i4
-cmp %i5,0; be .L2551; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2551:
-.L2549:
-ba .L2553; nop
-set 8,%i4
-cmp %i5,0; be .L2555; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2555:
-.L2553:
-ba .L2557; nop
-set 9,%i4
-cmp %i5,0; be .L2559; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2559:
-.L2557:
-ba .L2561; nop
-set 10,%i4
-cmp %i5,0; be .L2563; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2563:
-.L2561:
-ba .L2565; nop
-set 11,%i4
-cmp %i5,0; be .L2567; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2567:
-.L2565:
-ba .L2569; nop
-set 12,%i4
-cmp %i5,0; be .L2571; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2571:
-.L2569:
-ba .L2573; nop
-set 13,%i4
-cmp %i5,0; be .L2575; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2575:
-.L2573:
-ba .L2577; nop
-set 14,%i4
-cmp %i5,0; be .L2579; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2579:
-.L2577:
-ba .L2581; nop
-set 15,%i4
-cmp %i5,0; be .L2583; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2583:
-.L2581:
-ba .L2585; nop
-set 16,%i4
-cmp %i5,0; be .L2587; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2587:
-.L2585:
-ba .L2589; nop
-set 17,%i4
-cmp %i5,0; be .L2591; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2591:
-.L2589:
-ba .L2593; nop
-set 18,%i4
-cmp %i5,0; be .L2595; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2595:
-.L2593:
-ba .L2597; nop
-set 16,%i4
-cmp %i5,0; be .L2599; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2599:
-.L2597:
-ba .L2601; nop
-set 20,%i4
-cmp %i5,0; be .L2603; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2603:
-.L2601:
-ba .L2605; nop
-set 21,%i4
-cmp %i5,0; be .L2607; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2607:
-.L2605:
-ba .L2609; nop
-set 22,%i4
-cmp %i5,0; be .L2611; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2611:
-.L2609:
-ba .L2613; nop
-set 23,%i4
-cmp %i5,0; be .L2615; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2615:
-.L2613:
-ba .L2617; nop
-set 24,%i4
-cmp %i5,0; be .L2619; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2619:
-.L2617:
-ba .L2621; nop
-set 25,%i4
-cmp %i5,0; be .L2623; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2623:
-.L2621:
-ba .L2625; nop
-set 26,%i4
-cmp %i5,0; be .L2627; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2627:
-.L2625:
-ba .L2629; nop
-set 27,%i4
-cmp %i5,0; be .L2631; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2631:
-.L2629:
-ba .L2633; nop
-set 28,%i4
-cmp %i5,0; be .L2635; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2635:
-.L2633:
-ba .L2637; nop
-set 26,%i4
-cmp %i5,0; be .L2639; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2639:
-.L2637:
-ba .L2641; nop
-set 30,%i4
-cmp %i5,0; be .L2643; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2643:
-.L2641:
-ba .L2645; nop
-set 31,%i4
-cmp %i5,0; be .L2647; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2647:
-.L2645:
-ba .L2649; nop
-set 32,%i4
-cmp %i5,0; be .L2651; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2651:
-.L2649:
-ba .L2653; nop
-set 33,%i4
-cmp %i5,0; be .L2655; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2655:
-.L2653:
-ba .L2657; nop
-set 34,%i4
-cmp %i5,0; be .L2659; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2659:
-.L2657:
-ba .L2661; nop
-set 35,%i4
-cmp %i5,0; be .L2663; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2663:
-.L2661:
-ba .L2665; nop
-set 36,%i4
-cmp %i5,0; be .L2667; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2667:
-.L2665:
-ba .L2669; nop
-set 37,%i4
-cmp %i5,0; be .L2671; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2671:
-.L2669:
-ba .L2673; nop
-set 38,%i4
-cmp %i5,0; be .L2675; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2675:
-.L2673:
-ba .L2677; nop
-set 39,%i4
-cmp %i5,0; be .L2679; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2679:
-.L2677:
-ba .L2681; nop
-set 40,%i4
-cmp %i5,0; be .L2683; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2683:
-.L2681:
-ba .L2685; nop
-set 41,%i4
-cmp %i5,0; be .L2687; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2687:
-.L2685:
-ba .L2689; nop
-set 42,%i4
-cmp %i5,0; be .L2691; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2691:
-.L2689:
-ba .L2693; nop
-set 43,%i4
-cmp %i5,0; be .L2695; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2695:
-.L2693:
-ba .L2697; nop
-set 44,%i4
-cmp %i5,0; be .L2699; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2699:
-.L2697:
-ba .L2701; nop
-set 45,%i4
-cmp %i5,0; be .L2703; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2703:
-.L2701:
-ba .L2705; nop
-set 46,%i4
-cmp %i5,0; be .L2707; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2707:
-.L2705:
-ba .L2709; nop
-set 47,%i4
-cmp %i5,0; be .L2711; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2711:
-.L2709:
-ba .L2713; nop
-set 48,%i4
-cmp %i5,0; be .L2715; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2715:
-.L2713:
-ba .L2717; nop
-set 49,%i4
-cmp %i5,0; be .L2719; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2719:
-.L2717:
-ba .L2721; nop
-set 50,%i4
-cmp %i5,0; be .L2723; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2723:
-.L2721:
-ba .L2725; nop
-set 51,%i4
-cmp %i5,0; be .L2727; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2727:
-.L2725:
-ba .L2729; nop
-set 52,%i4
-cmp %i5,0; be .L2731; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2731:
-.L2729:
-ba .L2733; nop
-set 53,%i4
-cmp %i5,0; be .L2735; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2735:
-.L2733:
-ba .L2737; nop
-set 54,%i4
-cmp %i5,0; be .L2739; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2739:
-.L2737:
-ba .L2741; nop
-set 55,%i4
-cmp %i5,0; be .L2743; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2743:
-.L2741:
-ba .L2745; nop
-set 56,%i4
-cmp %i5,0; be .L2747; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2747:
-.L2745:
-ba .L2749; nop
-set 57,%i4
-cmp %i5,0; be .L2751; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2751:
-.L2749:
-ba .L2753; nop
-set 58,%i4
-cmp %i5,0; be .L2755; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2755:
-.L2753:
-ba .L2757; nop
-set 56,%i4
-cmp %i5,0; be .L2759; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2759:
-.L2757:
-ba .L2761; nop
-set 60,%i4
-cmp %i5,0; be .L2763; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2763:
-.L2761:
-ba .L2765; nop
-set 61,%i4
-cmp %i5,0; be .L2767; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2767:
-.L2765:
-ba .L2769; nop
-set 62,%i4
-cmp %i5,0; be .L2771; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2771:
-.L2769:
-ba .L2773; nop
-set 63,%i4
-cmp %i5,0; be .L2775; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2775:
-.L2773:
-ba .L2777; nop
-set 64,%i4
-cmp %i5,0; be .L2779; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2779:
-.L2777:
-ba .L2781; nop
-set 65,%i4
-cmp %i5,0; be .L2783; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2783:
-.L2781:
-ba .L2785; nop
-set 66,%i4
-cmp %i5,0; be .L2787; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2787:
-.L2785:
-ba .L2789; nop
-set 67,%i4
-cmp %i5,0; be .L2791; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2791:
-.L2789:
-ba .L2793; nop
-set 68,%i4
-cmp %i5,0; be .L2795; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2795:
-.L2793:
-ba .L2797; nop
-set 69,%i4
-cmp %i5,0; be .L2799; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2799:
-.L2797:
-ba .L2801; nop
-set 70,%i4
-cmp %i5,0; be .L2803; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2803:
-.L2801:
-ba .L2805; nop
-set 71,%i4
-cmp %i5,0; be .L2807; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2807:
-.L2805:
-ba .L2809; nop
-set 72,%i4
-cmp %i5,0; be .L2811; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2811:
-.L2809:
-ba .L2813; nop
-set 73,%i4
-cmp %i5,0; be .L2815; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2815:
-.L2813:
-ba .L2817; nop
-set 74,%i4
-cmp %i5,0; be .L2819; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2819:
-.L2817:
-ba .L2821; nop
-set 75,%i4
-cmp %i5,0; be .L2823; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2823:
-.L2821:
-cmp %i4,0; be .L2825; nop
-ld [%i0+44],%l3
-cmp %l3,0; be .L2827; nop
-set .2520,%o0
-set 1,%o1
-call printf; nop
-.L2827:
-add %l5,1,%l5
-.L2825:
-mov %g0,%i4
-mov %g0,%i2
-mov %g0,%i3
-mov %i3,%l3
-add %l3,1,%i3
-mov %g0,%l2
-cmp %l3,%l2; be .L2830; nop
-mov %i2,%l3
-add %l3,1,%i2
-cmp %l3,%l2; be .L2830; nop
-set 1,%l3
-st %l3,[%fp+-8]
-ba .L2831; nop
-.L2830:
-st %g0,[%fp+-8]
-.L2831:
-ld [%fp+-8],%i1
-cmp %i3,1; be .L2832; nop
-set 1,%i4
-cmp %i5,0; be .L2834; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2834:
-.L2832:
-cmp %i2,0; be .L2836; nop
-set 2,%i4
-cmp %i5,0; be .L2838; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2838:
-.L2836:
-cmp %i1,0; be .L2840; nop
-set 3,%i4
-cmp %i5,0; be .L2842; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2842:
-.L2840:
-cmp %i3,%g0; be .L2845; nop
-mov %i2,%l2
-add %l2,1,%i2
-cmp %l2,%g0; be .L2845; nop
-set 1,%l3
-st %l3,[%fp+-12]
-ba .L2846; nop
-.L2845:
-st %g0,[%fp+-12]
-.L2846:
-ld [%fp+-12],%i1
-cmp %i3,1; be .L2847; nop
-set 4,%i4
-cmp %i5,0; be .L2849; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2849:
-.L2847:
-cmp %i2,1; be .L2851; nop
-set 5,%i4
-cmp %i5,0; be .L2853; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2853:
-.L2851:
-cmp %i1,0; be .L2855; nop
-set 6,%i4
-cmp %i5,0; be .L2857; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2857:
-.L2855:
-mov %i3,%l3
-sub %l3,1,%i3
-mov %g0,%l2
-cmp %l3,%l2; be .L2860; nop
-cmp %i2,%l2; be .L2860; nop
-set 1,%l3
-st %l3,[%fp+-16]
-ba .L2861; nop
-.L2860:
-st %g0,[%fp+-16]
-.L2861:
-ld [%fp+-16],%i1
-cmp %i3,0; be .L2862; nop
-set 7,%i4
-cmp %i5,0; be .L2864; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2864:
-.L2862:
-cmp %i2,1; be .L2866; nop
-set 8,%i4
-cmp %i5,0; be .L2868; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2868:
-.L2866:
-cmp %i1,1; be .L2870; nop
-set 9,%i4
-cmp %i5,0; be .L2872; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2872:
-.L2870:
-cmp %i3,%g0; be .L2875; nop
-mov %i2,%l2
-sub %l2,1,%i2
-cmp %l2,%g0; be .L2875; nop
-set 1,%l3
-st %l3,[%fp+-20]
-ba .L2876; nop
-.L2875:
-st %g0,[%fp+-20]
-.L2876:
-ld [%fp+-20],%i1
-cmp %i3,0; be .L2877; nop
-set 10,%i4
-cmp %i5,0; be .L2879; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2879:
-.L2877:
-cmp %i2,1; be .L2881; nop
-set 11,%i4
-cmp %i5,0; be .L2883; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2883:
-.L2881:
-cmp %i1,0; be .L2885; nop
-set 12,%i4
-cmp %i5,0; be .L2887; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2887:
-.L2885:
-cmp %i4,0; be .L2889; nop
-ld [%i0+44],%l3
-cmp %l3,0; be .L2891; nop
-set .2520,%o0
-set 2,%o1
-call printf; nop
-.L2891:
-add %l5,2,%l5
-.L2889:
-mov %g0,%i4
-mov %g0,%i2
-mov %g0,%i3
-mov %i3,%l3
-add %l3,1,%i3
-mov %g0,%l2
-cmp %l3,%l2; bne .L2896; nop
-cmp %i2,%l2; be .L2894; nop
-.L2896:
-set 1,%l3
-st %l3,[%fp+-24]
-ba .L2895; nop
-.L2894:
-st %g0,[%fp+-24]
-.L2895:
-ld [%fp+-24],%i1
-cmp %i3,1; be .L2897; nop
-set 1,%i4
-cmp %i5,0; be .L2899; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2899:
-.L2897:
-cmp %i2,0; be .L2901; nop
-set 2,%i4
-cmp %i5,0; be .L2903; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2903:
-.L2901:
-cmp %i1,0; be .L2905; nop
-set 3,%i4
-cmp %i5,0; be .L2907; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2907:
-.L2905:
-mov %i2,%l3
-add %l3,1,%i2
-mov %g0,%l2
-cmp %l3,%l2; bne .L2912; nop
-cmp %i3,%l2; be .L2910; nop
-.L2912:
-set 1,%l3
-st %l3,[%fp+-28]
-ba .L2911; nop
-.L2910:
-st %g0,[%fp+-28]
-.L2911:
-ld [%fp+-28],%i1
-cmp %i3,1; be .L2913; nop
-set 4,%i4
-cmp %i5,0; be .L2915; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2915:
-.L2913:
-cmp %i2,1; be .L2917; nop
-set 5,%i4
-cmp %i5,0; be .L2919; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2919:
-.L2917:
-cmp %i1,1; be .L2921; nop
-set 6,%i4
-cmp %i5,0; be .L2923; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2923:
-.L2921:
-mov %i3,%l3
-sub %l3,1,%i3
-mov %g0,%l2
-cmp %l3,%l2; bne .L2928; nop
-mov %i2,%l3
-sub %l3,1,%i2
-cmp %l3,%l2; be .L2926; nop
-.L2928:
-set 1,%l3
-st %l3,[%fp+-32]
-ba .L2927; nop
-.L2926:
-st %g0,[%fp+-32]
-.L2927:
-ld [%fp+-32],%i1
-cmp %i3,0; be .L2929; nop
-set 7,%i4
-cmp %i5,0; be .L2931; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2931:
-.L2929:
-cmp %i2,1; be .L2933; nop
-set 8,%i4
-cmp %i5,0; be .L2935; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2935:
-.L2933:
-cmp %i1,1; be .L2937; nop
-set 9,%i4
-cmp %i5,0; be .L2939; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2939:
-.L2937:
-mov %g0,%l3
-cmp %i3,%l3; bne .L2944; nop
-mov %i2,%l2
-sub %l2,1,%i2
-cmp %l2,%l3; be .L2942; nop
-.L2944:
-set 1,%l3
-st %l3,[%fp+-36]
-ba .L2943; nop
-.L2942:
-st %g0,[%fp+-36]
-.L2943:
-ld [%fp+-36],%i1
-cmp %i3,0; be .L2945; nop
-set 10,%i4
-cmp %i5,0; be .L2947; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2947:
-.L2945:
-cmp %i2,0; be .L2949; nop
-set 11,%i4
-cmp %i5,0; be .L2951; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2951:
-.L2949:
-cmp %i1,1; be .L2953; nop
-set 12,%i4
-cmp %i5,0; be .L2955; nop
-set .2519,%o0
-mov %i4,%o1
-call printf; nop
-.L2955:
-.L2953:
-cmp %i4,0; be .L2957; nop
-ld [%i0+44],%l3
-cmp %l3,0; be .L2959; nop
-set .2520,%o0
-set 4,%o1
-call printf; nop
-.L2959:
-add %l5,4,%l5
-.L2957:
-mov %g0,%l3
-mov %l3,%i2
-mov %l3,%i3
-mov %l3,%l4
-set 1,%l2
-st %l2,[%fp+-4]
-ld [%fp+-4],%l2
-cmp %l2,%l3; be .L2963; nop
-st %l4,[%fp+-40]
-ba .L2964; nop
-.L2963:
-ld [%fp+-4],%l3
-cmp %l3,0; be .L2965; nop
-mov %i3,%l3
-add %l3,1,%i3
-st %l3,[%fp+-44]
-ba .L2966; nop
-.L2965:
-mov %i2,%l3
-add %l3,1,%i2
-st %l3,[%fp+-44]
-.L2966:
-ld [%fp+-44],%l3
-st %l3,[%fp+-40]
-.L2964:
-ld [%fp+-40],%i1
-cmp %i1,%g0; bne .L2970; nop
-cmp %i3,%g0; bne .L2970; nop
-cmp %i2,%g0; be .L2967; nop
-.L2970:
-ld [%i0+44],%l3
-cmp %l3,0; be .L2971; nop
-set .2520,%o0
-set 8,%o1
-call printf; nop
-.L2971:
-add %l5,8,%l5
-.L2967:
-ld [%fp+-4],%l3
-cmp %l3,0; be .L2978; nop
-st %l4,[%fp+-48]
-ba .L2979; nop
-.L2978:
-set 1,%l3
-st %l3,[%fp+-48]
-.L2979:
-ld [%fp+-48],%l2
-cmp %l2,%g0; bne .L2977; nop
-cmp %l4,%g0; be .L2980; nop
-set 1,%l3
-st %l3,[%fp+-52]
-ba .L2981; nop
-.L2980:
-st %l4,[%fp+-52]
-.L2981:
-ld [%fp+-52],%l3
-cmp %l3,0; be .L2973; nop
-.L2977:
-ld [%i0+44],%l3
-cmp %l3,0; be .L2982; nop
-set .2520,%o0
-set 16,%o1
-call printf; nop
-.L2982:
-add %l5,16,%l5
-.L2973:
-mov %l5,%i0
-.L2518:
-ret; restore
-.type s7813,#function
-.size s7813,.-s7813
-.section ".data"
-.type .2985,#object
-.align 1
-.2985:
-.byte 115
-.byte 56
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .2985,10
-.type .2986,#object
-.size .2986,8
-.align 1
-.2986:
-.byte 115
-.byte 56
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.type .2987,#object
-.align 1
-.2987:
-.byte 82
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 117
-.byte 110
-.byte 114
-.byte 101
-.byte 108
-.byte 105
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.size .2987,38
-.type .2988,#object
-.align 1
-.2988:
-.byte 37
-.byte 100
-.byte 32
-.byte 114
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 118
-.byte 97
-.byte 114
-.byte 105
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.size .2988,40
-.global s81
-.section ".text"
-.align 4
-s81:
-save %sp,-112,%sp
-st %g0,[%fp+-20]
-st %g0,[%fp+-8]
-st %g0,[%fp+-12]
-st %g0,[%fp+-16]
-set .2986,%l5
-add %i0,60,%l4
-.L2989:
-.L2990:
-mov %l4,%l3
-add %l3,1,%l4
-mov %l5,%l2
-add %l2,1,%l5
-ldsb [%l2],%l2
-stb %l2,[%l3]
-sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; bne .L2989; nop
-set 1,%l3
-st %l3,[%fp+-4]
-mov %g0,%i2
-.L2992:
-ld [%fp+-4],%l3
-mov %l3,%l2
-mov %l2,%i5
-mov %l2,%i1
-add -4,%fp,%i4
-add -4,%fp,%l7
-mov %l3,%i3
-mov %l3,%l6
-sll %i5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-sll %i1,8*(4-1),%l2; sra %l2,8*(4-1),%l2
-cmp %l3,%l2; be .L2996; nop
-set 1,%l3
-st %l3,[%fp+-8]
-.L2996:
-mov %i4,%l3
-mov %l7,%l2
-cmp %l3,%l2; be .L2998; nop
-set 1,%l3
-st %l3,[%fp+-12]
-.L2998:
-cmp %i3,%l6; be .L3000; nop
-set 1,%l3
-st %l3,[%fp+-16]
-.L3000:
-ld [%fp+-4],%l3
-sll %l3,1,%l3
-st %l3,[%fp+-4]
-.L2993:
-add %i2,1,%i2
-cmp %i2,50; bl .L2992; nop
-ld [%fp+-8],%l3
-cmp %l3,0; be .L3002; nop
-ld [%fp+-20],%l3
-add %l3,1,%l3
-st %l3,[%fp+-20]
-ld [%i0+44],%l3
-cmp %l3,0; be .L3004; nop
-set .2985,%o0
-set 1,%o1
-call printf; nop
-.L3004:
-.L3002:
-ld [%fp+-12],%l3
-cmp %l3,0; be .L3006; nop
-ld [%fp+-20],%l3
-add %l3,2,%l3
-st %l3,[%fp+-20]
-ld [%i0+44],%l3
-cmp %l3,0; be .L3008; nop
-set .2985,%o0
-set 2,%o1
-call printf; nop
-.L3008:
-.L3006:
-ld [%fp+-16],%l3
-cmp %l3,0; be .L3010; nop
-ld [%fp+-20],%l3
-add %l3,4,%l3
-st %l3,[%fp+-20]
-ld [%i0+44],%l3
-cmp %l3,0; be .L3012; nop
-set .2985,%o0
-set 4,%o1
-call printf; nop
-.L3012:
-.L3010:
-call regc; nop
-st %o0,[%fp+-4]
-ld [%i0+40],%l3
-cmp %l3,0; be .L3014; nop
-ld [%fp+-4],%l3
-cmp %l3,0; bge .L3016; nop
-set .2987,%o0
-set .L425,%o1
-call printf; nop
-ba .L3017; nop
-.L3016:
-set .2988,%o0
-ld [%fp+-4],%o1
-set .L425,%o2
-call printf; nop
-.L3017:
-.L3014:
-call regp; nop
-st %o0,[%fp+-4]
-ld [%i0+40],%l3
-cmp %l3,0; be .L3018; nop
-ld [%fp+-4],%l3
-cmp %l3,0; bge .L3020; nop
-set .2987,%o0
-set .L3022,%o1
-call printf; nop
-ba .L3021; nop
-.L3020:
-set .2988,%o0
-ld [%fp+-4],%o1
-set .L3022,%o2
-call printf; nop
-.L3021:
-.L3018:
-call regi; nop
-st %o0,[%fp+-4]
-ld [%i0+40],%l3
-cmp %l3,0; be .L3023; nop
-ld [%fp+-4],%l3
-cmp %l3,0; bge .L3025; nop
-set .2987,%o0
-set .L426,%o1
-call printf; nop
-ba .L3026; nop
-.L3025:
-set .2988,%o0
-ld [%fp+-4],%o1
-set .L426,%o2
-call printf; nop
-.L3026:
-.L3023:
-ld [%fp+-20],%i0
-.L2984:
-ret; restore
-.type s81,#function
-.size s81,.-s81
-.global regc
-.align 4
-regc:
-save %sp,-232,%sp
-stb %g0,[%fp+-130]
-set 1,%l3
-stb %l3,[%fp+-109]
-set 2,%l3
-stb %l3,[%fp+-110]
-set 3,%l3
-stb %l3,[%fp+-111]
-set 4,%i5
-set 5,%l3
-stb %l3,[%fp+-112]
-set 6,%i4
-set 7,%l3
-stb %l3,[%fp+-113]
-set 8,%i3
-set 9,%l3
-stb %l3,[%fp+-114]
-set 10,%i2
-set 11,%l3
-stb %l3,[%fp+-115]
-set 12,%i1
-set 13,%l3
-stb %l3,[%fp+-116]
-set 14,%i0
-set 15,%l3
-stb %l3,[%fp+-117]
-set 16,%l7
-set 17,%l3
-stb %l3,[%fp+-118]
-set 18,%l6
-set 19,%l3
-stb %l3,[%fp+-119]
-set 20,%l5
-set 21,%l3
-stb %l3,[%fp+-120]
-set 22,%l4
-set 23,%l3
-stb %l3,[%fp+-121]
-set 24,%l3
-stb %l3,[%fp+-1]
-set 25,%l3
-stb %l3,[%fp+-122]
-set 26,%l3
-stb %l3,[%fp+-2]
-set 27,%l3
-stb %l3,[%fp+-123]
-set 28,%l3
-stb %l3,[%fp+-3]
-set 29,%l3
-stb %l3,[%fp+-124]
-set 30,%l3
-stb %l3,[%fp+-4]
-set 31,%l3
-stb %l3,[%fp+-125]
-set 32,%l3
-stb %l3,[%fp+-5]
-set 33,%l3
-stb %l3,[%fp+-126]
-set 34,%l3
-stb %l3,[%fp+-6]
-set 35,%l3
-stb %l3,[%fp+-127]
-set 36,%l3
-stb %l3,[%fp+-128]
-set 37,%l3
-stb %l3,[%fp+-129]
-set 38,%l3
-stb %l3,[%fp+-131]
-add -109,%fp,%l3
-add -130,%fp,%l2
-sub %l3,%l2,%l2
-st %l2,[%fp+-96]
-add -110,%fp,%l2
-sub %l2,%l3,%l3
-st %l3,[%fp+-92]
-add -111,%fp,%l3
-add -110,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-88]
-add -112,%fp,%l3
-add -111,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-84]
-add -113,%fp,%l3
-add -112,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-80]
-add -114,%fp,%l3
-add -113,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-76]
-add -115,%fp,%l3
-add -114,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-72]
-add -116,%fp,%l3
-add -115,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-68]
-add -117,%fp,%l3
-add -116,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-64]
-add -118,%fp,%l3
-add -117,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-60]
-add -119,%fp,%l3
-add -118,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-56]
-add -120,%fp,%l3
-add -119,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-52]
-add -121,%fp,%l3
-add -120,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-48]
-add -122,%fp,%l3
-add -121,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-44]
-add -123,%fp,%l3
-add -122,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-40]
-add -124,%fp,%l3
-add -123,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-36]
-add -125,%fp,%l3
-add -124,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-32]
-add -126,%fp,%l3
-add -125,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-28]
-add -127,%fp,%l3
-add -126,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-24]
-add -128,%fp,%l3
-add -127,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-20]
-add -129,%fp,%l3
-add -128,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-16]
-add -131,%fp,%l3
-add -129,%fp,%l2
-sub %l3,%l2,%l3
-st %l3,[%fp+-12]
-ld [%fp+-96],%l3
-st %l3,[%fp+-108]
-set 1,%l3
-st %l3,[%fp+-104]
-st %g0,[%fp+-100]
-.L3049:
-ld [%fp+-104],%l3
-cmp %l3,1; be .L3055; nop
-cmp %l3,2; be .L3058; nop
-cmp %l3,3; be .L3063; nop
-ba .L3053; nop
-.L3055:
-ld [%fp+-100],%l3
-sll %l3,2,%l3
-add -96,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-108],%l2
-cmp %l3,%l2; be .L3054; nop
-set 2,%l3
-ld [%fp+-100],%l2
-sll %l2,2,%l2
-add -96,%fp,%l1
-ld [%l2+%l1],%l2
-st %l2,[%fp+-140]
-st %l3,[%fp+-104]
-set 1,%l3
-st %l3,[%fp+-136]
-ba .L3054; nop
-.L3058:
-ld [%fp+-100],%l3
-sll %l3,2,%l3
-add -96,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-108],%l2
-cmp %l3,%l2; bne .L3059; nop
-set 3,%l3
-st %l3,[%fp+-104]
-ba .L3054; nop
-.L3059:
-ld [%fp+-100],%l3
-sll %l3,2,%l3
-add -96,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-140],%l2
-cmp %l3,%l2; bne .L3061; nop
-ld [%fp+-136],%l3
-add %l3,1,%l3
-st %l3,[%fp+-136]
-ba .L3054; nop
-.L3061:
-set 4,%l3
-st %l3,[%fp+-104]
-ba .L3054; nop
-.L3063:
-ld [%fp+-100],%l3
-sll %l3,2,%l3
-add -96,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-108],%l2
-cmp %l3,%l2; be .L3054; nop
-set 4,%l3
-st %l3,[%fp+-104]
-.L3053:
-.L3054:
-.L3050:
-ld [%fp+-100],%l3
-add %l3,1,%l3
-st %l3,[%fp+-100]
-ld [%fp+-100],%l3
-cmp %l3,22; bl .L3049; nop
-ld [%fp+-104],%l3
-cmp %l3,3; bne .L3066; nop
-set 16,%l3
-ld [%fp+-136],%l2
-sub %l3,%l2,%i0
-ba .L3027; nop
-.L3066:
-set -1,%i0
-.L3027:
-ret; restore
-.type regc,#function
-.size regc,.-regc
-.global regi
-.align 4
-regi:
-save %sp,-320,%sp
-st %g0,[%fp+-212]
-set 1,%l3
-st %l3,[%fp+-128]
-set 2,%l3
-st %l3,[%fp+-132]
-set 3,%l3
-st %l3,[%fp+-136]
-set 4,%i5
-set 5,%l3
-st %l3,[%fp+-140]
-set 6,%i4
-set 7,%l3
-st %l3,[%fp+-144]
-set 8,%i3
-set 9,%l3
-st %l3,[%fp+-148]
-set 10,%i2
-set 11,%l3
-st %l3,[%fp+-152]
-set 12,%i1
-set 13,%l3
-st %l3,[%fp+-156]
-set 14,%i0
-set 15,%l3
-st %l3,[%fp+-160]
-set 16,%l7
-set 17,%l3
-st %l3,[%fp+-164]
-set 18,%l6
-set 19,%l3
-st %l3,[%fp+-168]
-set 20,%l5
-set 21,%l3
-st %l3,[%fp+-172]
-set 22,%l4
-set 23,%l3
-st %l3,[%fp+-176]
-set 24,%l3
-st %l3,[%fp+-4]
-set 25,%l3
-st %l3,[%fp+-180]
-set 26,%l3
-st %l3,[%fp+-8]
-set 27,%l3
-st %l3,[%fp+-184]
-set 28,%l3
-st %l3,[%fp+-12]
-set 29,%l3
-st %l3,[%fp+-188]
-set 30,%l3
-st %l3,[%fp+-16]
-set 31,%l3
-st %l3,[%fp+-192]
-set 32,%l3
-st %l3,[%fp+-20]
-set 33,%l3
-st %l3,[%fp+-196]
-set 34,%l3
-st %l3,[%fp+-24]
-set 35,%l3
-st %l3,[%fp+-200]
-set 36,%l3
-st %l3,[%fp+-204]
-set 37,%l3
-st %l3,[%fp+-208]
-set 38,%l3
-st %l3,[%fp+-216]
-add -128,%fp,%l3
-add -212,%fp,%l2
-sub %l3,%l2,%l2
-sra %l2,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l2,4,%l2
-st %l2,[%fp+-112]
-add -132,%fp,%l2
-sub %l2,%l3,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-108]
-add -136,%fp,%l3
-add -132,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-104]
-add -140,%fp,%l3
-add -136,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-100]
-add -144,%fp,%l3
-add -140,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-96]
-add -148,%fp,%l3
-add -144,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-92]
-add -152,%fp,%l3
-add -148,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-88]
-add -156,%fp,%l3
-add -152,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-84]
-add -160,%fp,%l3
-add -156,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-80]
-add -164,%fp,%l3
-add -160,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-76]
-add -168,%fp,%l3
-add -164,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-72]
-add -172,%fp,%l3
-add -168,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-68]
-add -176,%fp,%l3
-add -172,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-64]
-add -180,%fp,%l3
-add -176,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-60]
-add -184,%fp,%l3
-add -180,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-56]
-add -188,%fp,%l3
-add -184,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-52]
-add -192,%fp,%l3
-add -188,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-48]
-add -196,%fp,%l3
-add -192,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-44]
-add -200,%fp,%l3
-add -196,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-40]
-add -204,%fp,%l3
-add -200,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-36]
-add -208,%fp,%l3
-add -204,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-32]
-add -216,%fp,%l3
-add -208,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-28]
-ld [%fp+-112],%l3
-st %l3,[%fp+-124]
-set 1,%l3
-st %l3,[%fp+-120]
-st %g0,[%fp+-116]
-.L3090:
-ld [%fp+-120],%l3
-cmp %l3,1; be .L3096; nop
-cmp %l3,2; be .L3099; nop
-cmp %l3,3; be .L3104; nop
-ba .L3094; nop
-.L3096:
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-add -112,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-124],%l2
-cmp %l3,%l2; be .L3095; nop
-set 2,%l3
-ld [%fp+-116],%l2
-sll %l2,2,%l2
-add -112,%fp,%l1
-ld [%l2+%l1],%l2
-st %l2,[%fp+-224]
-st %l3,[%fp+-120]
-set 1,%l3
-st %l3,[%fp+-220]
-ba .L3095; nop
-.L3099:
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-add -112,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-124],%l2
-cmp %l3,%l2; bne .L3100; nop
-set 3,%l3
-st %l3,[%fp+-120]
-ba .L3095; nop
-.L3100:
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-add -112,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-224],%l2
-cmp %l3,%l2; bne .L3102; nop
-ld [%fp+-220],%l3
-add %l3,1,%l3
-st %l3,[%fp+-220]
-ba .L3095; nop
-.L3102:
-set 4,%l3
-st %l3,[%fp+-120]
-ba .L3095; nop
-.L3104:
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-add -112,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-124],%l2
-cmp %l3,%l2; be .L3095; nop
-set 4,%l3
-st %l3,[%fp+-120]
-.L3094:
-.L3095:
-.L3091:
-ld [%fp+-116],%l3
-add %l3,1,%l3
-st %l3,[%fp+-116]
-ld [%fp+-116],%l3
-cmp %l3,22; bl .L3090; nop
-ld [%fp+-120],%l3
-cmp %l3,3; bne .L3107; nop
-set 16,%l3
-ld [%fp+-220],%l2
-sub %l3,%l2,%i0
-ba .L3068; nop
-.L3107:
-set -1,%i0
-.L3068:
-ret; restore
-.type regi,#function
-.size regi,.-regi
-.global regp
-.align 4
-regp:
-save %sp,-320,%sp
-add -212,%fp,%l3
-st %l3,[%fp+-212]
-add -188,%fp,%l3
-st %l3,[%fp+-188]
-add -192,%fp,%l3
-st %l3,[%fp+-192]
-add -196,%fp,%l3
-st %l3,[%fp+-196]
-add -124,%fp,%i5
-add -124,%fp,%l3
-st %l3,[%fp+-124]
-add -128,%fp,%i4
-add -128,%fp,%l3
-st %l3,[%fp+-128]
-add -132,%fp,%i3
-add -132,%fp,%l3
-st %l3,[%fp+-132]
-add -136,%fp,%i2
-add -136,%fp,%l3
-st %l3,[%fp+-136]
-add -140,%fp,%i1
-add -140,%fp,%l3
-st %l3,[%fp+-140]
-add -144,%fp,%i0
-add -144,%fp,%l3
-st %l3,[%fp+-144]
-add -148,%fp,%l7
-add -148,%fp,%l3
-st %l3,[%fp+-148]
-add -152,%fp,%l6
-add -152,%fp,%l3
-st %l3,[%fp+-152]
-add -156,%fp,%l5
-add -156,%fp,%l3
-st %l3,[%fp+-156]
-add -160,%fp,%l4
-add -160,%fp,%l3
-st %l3,[%fp+-160]
-add -164,%fp,%l3
-st %l3,[%fp+-4]
-add -164,%fp,%l3
-st %l3,[%fp+-164]
-add -168,%fp,%l3
-st %l3,[%fp+-8]
-add -168,%fp,%l3
-st %l3,[%fp+-168]
-add -172,%fp,%l3
-st %l3,[%fp+-12]
-add -172,%fp,%l3
-st %l3,[%fp+-172]
-add -176,%fp,%l3
-st %l3,[%fp+-16]
-add -176,%fp,%l3
-st %l3,[%fp+-176]
-add -180,%fp,%l3
-st %l3,[%fp+-20]
-add -180,%fp,%l3
-st %l3,[%fp+-180]
-add -184,%fp,%l3
-st %l3,[%fp+-24]
-add -184,%fp,%l3
-st %l3,[%fp+-184]
-add -200,%fp,%l3
-st %l3,[%fp+-200]
-add -204,%fp,%l3
-st %l3,[%fp+-204]
-add -216,%fp,%l3
-st %l3,[%fp+-216]
-add -188,%fp,%l3
-add -212,%fp,%l2
-sub %l3,%l2,%l2
-sra %l2,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l2,4,%l2
-st %l2,[%fp+-112]
-add -192,%fp,%l2
-sub %l2,%l3,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-108]
-add -196,%fp,%l3
-add -192,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-104]
-add -124,%fp,%l3
-add -196,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-100]
-add -128,%fp,%l3
-add -124,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-96]
-add -132,%fp,%l3
-add -128,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-92]
-add -136,%fp,%l3
-add -132,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-88]
-add -140,%fp,%l3
-add -136,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-84]
-add -144,%fp,%l3
-add -140,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-80]
-add -148,%fp,%l3
-add -144,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-76]
-add -152,%fp,%l3
-add -148,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-72]
-add -156,%fp,%l3
-add -152,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-68]
-add -160,%fp,%l3
-add -156,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-64]
-add -164,%fp,%l3
-add -160,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-60]
-add -168,%fp,%l3
-add -164,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-56]
-add -172,%fp,%l3
-add -168,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-52]
-add -176,%fp,%l3
-add -172,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-48]
-add -180,%fp,%l3
-add -176,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-44]
-add -184,%fp,%l3
-add -180,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-40]
-add -200,%fp,%l3
-add -184,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-36]
-add -204,%fp,%l3
-add -200,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-32]
-add -216,%fp,%l3
-add -204,%fp,%l2
-sub %l3,%l2,%l3
-sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
-st %l3,[%fp+-28]
-ld [%fp+-112],%l3
-st %l3,[%fp+-208]
-set 1,%l3
-st %l3,[%fp+-120]
-st %g0,[%fp+-116]
-.L3131:
-ld [%fp+-120],%l3
-cmp %l3,1; be .L3137; nop
-cmp %l3,2; be .L3140; nop
-cmp %l3,3; be .L3145; nop
-ba .L3135; nop
-.L3137:
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-add -112,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-208],%l2
-cmp %l3,%l2; be .L3136; nop
-set 2,%l3
-ld [%fp+-116],%l2
-sll %l2,2,%l2
-add -112,%fp,%l1
-ld [%l2+%l1],%l2
-st %l2,[%fp+-224]
-st %l3,[%fp+-120]
-set 1,%l3
-st %l3,[%fp+-220]
-ba .L3136; nop
-.L3140:
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-add -112,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-208],%l2
-cmp %l3,%l2; bne .L3141; nop
-set 3,%l3
-st %l3,[%fp+-120]
-ba .L3136; nop
-.L3141:
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-add -112,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-224],%l2
-cmp %l3,%l2; bne .L3143; nop
-ld [%fp+-220],%l3
-add %l3,1,%l3
-st %l3,[%fp+-220]
-ba .L3136; nop
-.L3143:
-set 4,%l3
-st %l3,[%fp+-120]
-ba .L3136; nop
-.L3145:
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-add -112,%fp,%l2
-ld [%l3+%l2],%l3
-ld [%fp+-208],%l2
-cmp %l3,%l2; be .L3136; nop
-set 4,%l3
-st %l3,[%fp+-120]
-.L3135:
-.L3136:
-.L3132:
-ld [%fp+-116],%l3
-add %l3,1,%l3
-st %l3,[%fp+-116]
-ld [%fp+-116],%l3
-cmp %l3,22; bl .L3131; nop
-ld [%fp+-120],%l3
-cmp %l3,3; bne .L3148; nop
-set 16,%l3
-ld [%fp+-220],%l2
-sub %l3,%l2,%i0
-ba .L3109; nop
-.L3148:
-set -1,%i0
-.L3109:
-ret; restore
-.type regp,#function
-.size regp,.-regp
-.section ".bss"
-.type .3151,#object
-.size .3151,420
-.local .3151
-.common .3151,420,4
-.section ".data"
-.type .3152,#object
-.align 1
-.3152:
-.byte 115
-.byte 56
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .3152,10
-.type .3153,#object
-.size .3153,8
-.align 1
-.3153:
-.byte 115
-.byte 56
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s84
-.section ".text"
-.align 4
-s84:
-save %sp,-232,%sp
-set .3153,%i2
-add %i0,60,%i1
-mov %g0,%l7
-.L3154:
-.L3155:
-mov %i1,%l4
-add %l4,1,%i1
-mov %i2,%l3
-add %l3,1,%i2
-ldsb [%l3],%l3
-stb %l3,[%l4]
-sll %l3,8*(4-1),%l4; sra %l4,8*(4-1),%l4
-cmp %l4,0; bne .L3154; nop
-set 3,%o0
-call fip; nop
-mov %o0,%l6
-ld [%l6],%l4
-cmp %l4,3; be .L3157; nop
-ld [%i0+44],%l4
-cmp %l4,0; be .L3159; nop
-set .3152,%o0
-set 1,%o1
-call printf; nop
-.L3159:
-add %l7,1,%l7
-.L3157:
-set glork,%l5
-set 4,%o0
-call %l5; nop
-cmp %o0,4; be .L3161; nop
-ld [%i0+44],%l4
-cmp %l4,0; be .L3163; nop
-set .3152,%o0
-set 2,%o1
-call printf; nop
-.L3163:
-add %l7,2,%l7
-.L3161:
-mov %g0,%i4
-.L3165:
-sll %i4,2,%l4
-add -68,%fp,%l3
-st %i4,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%l4+%l3]
-sll %i4,2,%l4
-add -136,%fp,%l3
-add -68,%fp,%l2
-add %l4,%l2,%l2
-st %l2,[%l4+%l3]
-.L3166:
-add %i4,1,%i4
-cmp %i4,17; bl .L3165; nop
-set .L412,%l4
-ld [%l4],%f31
-st %f31,[%fp+-140]
-mov %g0,%i4
-.L3169:
-ld [%fp+-140],%f31
-sll %i4,2,%l4
-add -136,%fp,%l3
-ld [%l4+%l3],%l4
-ld [%l4],%f30
-fadds %f31,%f30,%f31
-st %f31,[%fp+-140]
-.L3170:
-add %i4,1,%i4
-cmp %i4,17; bl .L3169; nop
-ld [%fp+-140],%f31
-set .L3175,%l4
-ld [%l4],%f30
-fcmpes %f31,%f30; nop; fbue .L3173; nop
-ld [%i0+44],%l4
-cmp %l4,0; be .L3176; nop
-set .3152,%o0
-set 4,%o1
-call printf; nop
-.L3176:
-add %l7,4,%l7
-.L3173:
-mov %g0,%i3
-.L3178:
-mov %g0,%i4
-.L3182:
-mov %g0,%i5
-.L3186:
-sll %i5,2,%l4
-smul %i4,28,%l3
-smul %i3,140,%l2
-set .3151,%l1
-add %l2,%l1,%l2
-add %l3,%l2,%l3
-smul %i3,35,%l2
-smul %i4,7,%l1
-add %l2,%l1,%l2
-add %l2,%i5,%l2
-st %l2,[%l4+%l3]
-.L3187:
-add %i5,1,%i5
-cmp %i5,7; bl .L3186; nop
-.L3183:
-add %i4,1,%i4
-cmp %i4,5; bl .L3182; nop
-.L3179:
-add %i3,1,%i3
-cmp %i3,3; bl .L3178; nop
-set 1,%i3
-set 2,%i4
-set 3,%i5
-set .3151,%o0
-set 105,%o1
-mov %g0,%o2
-call array; nop
-mov %o0,%l4
-smul %i3,140,%l3
-set .3151,%l2
-add %l3,%l2,%o0
-set 35,%l3
-mov %l3,%o1
-mov %l3,%o2
-call array; nop
-mov %o0,%l3
-smul %i4,28,%l2
-smul %i3,140,%l1
-set .3151,%l0
-add %l1,%l0,%l1
-add %l2,%l1,%o0
-set 7,%o1
-set 49,%o2
-call array; nop
-add %l4,%l3,%l4
-add %l4,%o0,%l4
-sll %i5,2,%l3
-smul %i4,28,%l2
-smul %i3,140,%l1
-set .3151,%l0
-add %l1,%l0,%l1
-add %l2,%l1,%l2
-ld [%l3+%l2],%l3
-add %l4,%l3,%l4
-sub %l4,52,%l4
-cmp %l4,0; be .L3190; nop
-ld [%i0+44],%l4
-cmp %l4,0; be .L3192; nop
-set .3152,%o0
-set 8,%o1
-call printf; nop
-.L3192:
-add %l7,8,%l7
-.L3190:
-mov %l7,%i0
-.L3150:
-ret; restore
-.type s84,#function
-.size s84,.-s84
-.global array
-.align 4
-array:
-mov %g0,%o5
-ba .L3198; nop
-.L3195:
-sll %o5,2,%o4
-ld [%o4+%o0],%o4
-add %o5,%o2,%o3
-cmp %o4,%o3; be .L3199; nop
-set 1,%o0
-ba .L3194; nop
-.L3199:
-.L3196:
-add %o5,1,%o5
-.L3198:
-cmp %o5,%o1; bl .L3195; nop
-mov %g0,%o0
-.L3194:
-retl; nop
-.type array,#function
-.size array,.-array
-.section ".bss"
-.type .3202,#object
-.size .3202,4
-.local .3202
-.common .3202,4,4
-.global fip
-.section ".text"
-.align 4
-fip:
-set .3202,%o5
-st %o0,[%o5]
-mov %o5,%o0
-.L3201:
-retl; nop
-.type fip,#function
-.size fip,.-fip
-.global glork
-.align 4
-glork:
-.L3203:
-retl; nop
-.type glork,#function
-.size glork,.-glork
-.section ".data"
-.type .3205,#object
-.align 1
-.3205:
-.byte 115
-.byte 56
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .3205,10
-.type .3206,#object
-.size .3206,8
-.align 1
-.3206:
-.byte 115
-.byte 56
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.type .3214,#object
-.align 4
-.3214:
-.word .L425
-.word .L427
-.word .L426
-.word .L428
-.word .L429
-.word .L430
-.word .L431
-.size .3214,28
-.type .3215,#object
-.align 1
-.3215:
-.byte 32
-.byte 97
-.byte 108
-.byte 105
-.byte 103
-.byte 110
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 58
-.byte 32
-.byte 0
-.size .3215,13
-.global s85
-.section ".text"
-.align 4
-s85:
-save %sp,-488,%sp
-set .3206,%i4
-add %i0,60,%i3
-mov %g0,%i2
-.L3219:
-.L3220:
-mov %i3,%i1
-add %i1,1,%i3
-mov %i4,%l7
-add %l7,1,%i4
-ldsb [%l7],%l7
-stb %l7,[%i1]
-sll %l7,8*(4-1),%i1; sra %i1,8*(4-1),%i1
-cmp %i1,0; bne .L3219; nop
-add -284,%fp,%l7
-add -304,%fp,%l6
-sub %l7,%l6,%l7
-cmp %l7,%g0; ble .L3230; nop
-add -280,%fp,%l7
-add -284,%fp,%l6
-sub %l7,%l6,%l7
-cmp %l7,%g0; ble .L3230; nop
-add -276,%fp,%l7
-add -280,%fp,%l6
-sub %l7,%l6,%l7
-cmp %l7,%g0; bg .L3222; nop
-.L3230:
-ld [%i0+44],%i1
-cmp %i1,0; be .L3231; nop
-set .3205,%o0
-set 1,%o1
-call printf; nop
-.L3231:
-add %i2,1,%i2
-.L3222:
-add -337,%fp,%i1
-add -338,%fp,%l7
-sub %i1,%l7,%i1
-st %i1,[%fp+-268]
-add -340,%fp,%i1
-add -342,%fp,%l7
-sub %i1,%l7,%i1
-st %i1,[%fp+-264]
-add -348,%fp,%i1
-add -352,%fp,%l7
-sub %i1,%l7,%i1
-st %i1,[%fp+-260]
-add -356,%fp,%i1
-add -360,%fp,%l7
-sub %i1,%l7,%i1
-st %i1,[%fp+-256]
-add -364,%fp,%i1
-add -368,%fp,%l7
-sub %i1,%l7,%i1
-st %i1,[%fp+-252]
-add -372,%fp,%i1
-add -376,%fp,%l7
-sub %i1,%l7,%i1
-st %i1,[%fp+-248]
-add -384,%fp,%i1
-add -392,%fp,%l7
-sub %i1,%l7,%i1
-st %i1,[%fp+-244]
-ld [%i0+40],%i1
-cmp %i1,0; be .L3246; nop
-mov %g0,%i5
-.L3248:
-set .L3252,%o0
-sll %i5,2,%i1
-set .3214,%l7
-ld [%i1+%l7],%o1
-set .3215,%o2
-add -268,%fp,%l7
-ld [%i1+%l7],%o3
-call printf; nop
-.L3249:
-add %i5,1,%i5
-cmp %i5,7; bl .L3248; nop
-.L3246:
-ld [%fp+-272],%i1
-set 0x1c000000,%l7
-or %i1,%l7,%i1
-st %i1,[%fp+-272]
-ld [%fp+-272],%i1
-mov %i1,%l7
-set 0x3fffffff,%l6
-and %l7,%l6,%l7
-sll %i1,3,%i1
-sra %i1,29,%i1
-sll %i1,30,%i1
-sra %i1,30,%i1
-sll %i1,30,%i1
-set 0xc0000000,%l6
-and %i1,%l6,%i1
-or %l7,%i1,%i1
-st %i1,[%fp+-272]
-ld [%fp+-272],%i1
-mov %i1,%l7
-set 0xe3ffffff,%l6
-and %l7,%l6,%l7
-sra %i1,30,%i1
-sll %i1,29,%i1
-sra %i1,29,%i1
-sll %i1,26,%i1
-set 0x1c000000,%l6
-and %i1,%l6,%i1
-or %l7,%i1,%i1
-st %i1,[%fp+-272]
-ld [%fp+-272],%i1
-sll %i1,3,%i1
-sra %i1,29,%i1
-cmp %i1,3; be .L3253; nop
-ld [%fp+-272],%i1
-sll %i1,3,%i1
-sra %i1,29,%i1
-cmp %i1,-1; bne .L3255; nop
-ld [%i0+40],%i1
-cmp %i1,0; be .L3256; nop
-set .L3259,%o0
-call printf; nop
-ba .L3256; nop
-.L3255:
-ld [%i0+44],%i1
-cmp %i1,0; be .L3260; nop
-set .3205,%o0
-set 2,%o1
-call printf; nop
-.L3260:
-add %i2,2,%i2
-.L3256:
-.L3253:
-ld [%fp+-272],%i1
-set 0x2000000,%l7
-or %i1,%l7,%i1
-st %i1,[%fp+-272]
-ld [%fp+-272],%i1
-sll %i1,6,%i1
-sra %i1,31,%i1
-cmp %i1,1; be .L3262; nop
-ld [%i0+40],%i1
-cmp %i1,0; be .L3264; nop
-set .L3266,%o0
-call printf; nop
-.L3264:
-.L3262:
-add -240,%fp,%i1
-sub %i1,%i1,%i1
-cmp %i1,%g0; bne .L3274; nop
-cmp %i1,%g0; bne .L3274; nop
-cmp %i1,%g0; bne .L3274; nop
-cmp %i1,%g0; bne .L3274; nop
-cmp %i1,%g0; bne .L3274; nop
-cmp %i1,%g0; bne .L3274; nop
-cmp %i1,%g0; be .L3267; nop
-.L3274:
-ld [%i0+44],%i1
-cmp %i1,0; be .L3275; nop
-set .3205,%o0
-set 4,%o1
-call printf; nop
-.L3275:
-add %i2,4,%i2
-.L3267:
-ba .L3277; nop
-ld [%i0+44],%i1
-cmp %i1,0; be .L3279; nop
-set .3205,%o0
-set 8,%o1
-call printf; nop
-.L3279:
-add %i2,8,%i2
-.L3277:
-add -336,%fp,%i1
-st %i1,[%fp+-276]
-set 2,%i1
-stb %i1,[%fp+-336]
-ld [%fp+-276],%i1
-ldsb [%i1],%l7
-add %l7,1,%l7
-stb %l7,[%i1]
-ldsb [%fp+-336],%i1
-cmp %i1,3; be .L3283; nop
-ld [%i0+44],%i1
-cmp %i1,0; be .L3285; nop
-set .3205,%o0
-set 16,%o1
-call printf; nop
-.L3285:
-add %i2,16,%i2
-.L3283:
-mov %i2,%i0
-.L3204:
-ret; restore
-.type s85,#function
-.size s85,.-s85
-.section ".data"
-.type .3288,#object
-.align 1
-.3288:
-.byte 115
-.byte 56
-.byte 54
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .3288,10
-.type .3289,#object
-.size .3289,8
-.align 1
-.3289:
-.byte 115
-.byte 56
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.type .3290,#object
-.align 4
-.3290:
-.word 0x1
-.word 0x3
-.word 0x5
-.size .3290,12
-.type .3291,#object
-.size .3291,4
-.align 4
-.3291:
-.word .3290+8
-.section ".bss"
-.type .3293,#object
-.size .3293,40
-.local .3293
-.common .3293,40,4
-.section ".data"
-.type .3294,#object
-.align 4
-.3294:
-.word 0x3f800000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40000000
-.word 0x40800000
-.word 0x40c00000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40e00000
-.word 0x0
-.word 0x0
-.word 0x0
-.size .3294,48
-.type .3295,#object
-.size .3295,48
-.align 4
-.3295:
-.word 0x3f800000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40000000
-.word 0x40800000
-.word 0x40c00000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40e00000
-.skip 12
-.type .3296,#object
-.size .3296,48
-.align 4
-.3296:
-.word 0x3f800000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40000000
-.word 0x40800000
-.word 0x40c00000
-.word 0x40400000
-.word 0x40a00000
-.word 0x40e00000
-.skip 12
-.type .3297,#object
-.size .3297,48
-.align 4
-.3297:
-.word 0x3f800000
-.skip 8
-.word 0x40000000
-.skip 8
-.word 0x40400000
-.skip 8
-.word 0x40800000
-.skip 8
-.global s86
-.section ".text"
-.align 4
-s86:
-save %sp,-96,%sp
-set .3291,%l3
-ld [%l3],%l3
-add %l3,-4,%l4
-call one; nop
-sll %o0,2,%l3
-add %l3,%l4,%i5
-set .3289,%l7
-add %i0,60,%l6
-mov %g0,%l5
-.L3298:
-.L3299:
-mov %l6,%l3
-add %l3,1,%l6
-mov %l7,%l2
-add %l2,1,%l7
-ldsb [%l2],%l2
-stb %l2,[%l3]
-sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-cmp %l3,0; bne .L3298; nop
-set .3291,%l3
-ld [%l3],%l3
-ld [%l3],%l3
-cmp %l3,5; be .L3301; nop
-ld [%i0+44],%l3
-cmp %l3,0; be .L3303; nop
-set .3288,%o0
-set 1,%o1
-call printf; nop
-.L3303:
-add %l5,1,%l5
-.L3301:
-ld [%l4],%l3
-cmp %l3,3; be .L3305; nop
-ld [%i0+44],%l3
-cmp %l3,0; be .L3307; nop
-set .3288,%o0
-set 2,%o1
-call printf; nop
-.L3307:
-add %l5,2,%l5
-.L3305:
-ld [%i5],%l3
-cmp %l3,5; be .L3309; nop
-ld [%i0+44],%l3
-cmp %l3,0; be .L3311; nop
-set .3288,%o0
-set 4,%o1
-call printf; nop
-.L3311:
-add %l5,4,%l5
-.L3309:
-mov %g0,%i1
-mov %g0,%i4
-.L3313:
-sll %i4,2,%l3
-set .3293,%l2
-ld [%l3+%l2],%l3
-cmp %l3,0; be .L3317; nop
-set 1,%i1
-.L3317:
-.L3314:
-add %i4,1,%i4
-cmp %i4,10; bl .L3313; nop
-cmp %i1,0; be .L3319; nop
-ld [%i0+44],%l3
-cmp %l3,0; be .L3321; nop
-set .3288,%o0
-set 8,%o1
-call printf; nop
-.L3321:
-add %l5,8,%l5
-.L3319:
-mov %g0,%i1
-mov %g0,%i3
-.L3323:
-mov %g0,%i4
-.L3327:
-smul %i3,3,%l3
-add %l3,%i4,%i2
-sll %i4,2,%l3
-smul %i3,12,%l2
-set .3295,%l1
-add %l2,%l1,%l1
-ld [%l3+%l1],%f31
-set .3296,%l1
-add %l2,%l1,%l2
-ld [%l3+%l2],%f30
-fcmpes %f31,%f30; nop; fbne .L3333; nop
-sll %i2,2,%l3
-set .3294,%l2
-ld [%l3+%l2],%f30
-fcmpes %f31,%f30; nop; fbue .L3331; nop
-.L3333:
-set 1,%i1
-.L3331:
-.L3328:
-add %i4,1,%i4
-cmp %i4,3; bl .L3327; nop
-.L3324:
-add %i3,1,%i3
-cmp %i3,4; bl .L3323; nop
-cmp %i1,0; be .L3334; nop
-ld [%i0+44],%l3
-cmp %l3,0; be .L3336; nop
-set .3288,%o0
-set 16,%o1
-call printf; nop
-.L3336:
-add %l5,16,%l5
-.L3334:
-mov %g0,%i1
-mov %g0,%i4
-.L3338:
-smul %i4,12,%l3
-set .3297,%l2
-ld [%l3+%l2],%f31
-add %i4,1,%l3
-st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
-fcmpes %f31,%f30; nop; fbue .L3342; nop
-set 1,%i1
-.L3342:
-.L3339:
-add %i4,1,%i4
-cmp %i4,4; bl .L3338; nop
-cmp %i1,0; be .L3344; nop
-ld [%i0+44],%l3
-cmp %l3,0; be .L3346; nop
-set .3288,%o0
-set 32,%o1
-call printf; nop
-.L3346:
-add %l5,32,%l5
-.L3344:
-mov %l5,%i0
-.L3287:
-ret; restore
-.type s86,#function
-.size s86,.-s86
-.global one
-.align 4
-one:
-set 1,%o0
-.L3348:
-retl; nop
-.type one,#function
-.size one,.-one
-.section ".data"
-.type .3350,#object
-.align 1
-.3350:
-.byte 115
-.byte 56
-.byte 56
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .3350,10
-.type .3351,#object
-.size .3351,8
-.align 1
-.3351:
-.byte 115
-.byte 56
-.byte 56
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s88
-.section ".text"
-.align 4
-s88:
-save %sp,-112,%sp
-set .3351,%i5
-add %i0,60,%i4
-mov %g0,%i3
-.L3353:
-.L3354:
-mov %i4,%i1
-add %i1,1,%i4
-mov %i5,%l7
-add %l7,1,%i5
-ldsb [%l7],%l7
-stb %l7,[%i1]
-sll %l7,8*(4-1),%i1; sra %i1,8*(4-1),%i1
-cmp %i1,0; bne .L3353; nop
-ba .L3356; nop
-ld [%i0+44],%i1
-cmp %i1,0; be .L3358; nop
-set .3350,%o0
-set 1,%o1
-call printf; nop
-.L3358:
-add %i3,1,%i3
-.L3356:
-set metricp,%i1
-add -20,%fp,%l7
-st %l7,[%i1]
-set 2,%l7
-st %l7,[%fp+-20]
-ld [%i1],%i1
-set 3,%l7
-st %l7,[%i1]
-ld [%fp+-20],%i1
-cmp %i1,3; be .L3360; nop
-ld [%i0+44],%i1
-cmp %i1,0; be .L3362; nop
-set .3350,%o0
-set 2,%o1
-call printf; nop
-.L3362:
-add %i3,2,%i3
-.L3360:
-set .L419,%i1
-ld2 [%i1],%f30
-std %f30,[%fp+-16]
-std %f30,[%fp+-8]
-add -16,%fp,%i2
-set .L418,%i1
-ld2 [%i1],%f30
-st2 %f30,[%i2]
-set .L418,%i1
-ld2 [%i1],%f30
-st2 %f30,[%i2+8]
-ldd [%fp+-16],%f30
-ldd [%fp+-8],%f28
-faddd %f30,%f28,%f30
-set .L416,%i1
-ld2 [%i1],%f28
-fcmped %f30,%f28; nop; fbue .L3365; nop
-ld [%i0+44],%i1
-cmp %i1,0; be .L3368; nop
-set .3350,%o0
-set 4,%o1
-call printf; nop
-.L3368:
-add %i3,4,%i3
-.L3365:
-mov %i3,%i0
-.L3349:
-ret; restore
-.type s88,#function
-.size s88,.-s88
-.section ".data"
-.type .3371,#object
-.align 1
-.3371:
-.byte 115
-.byte 57
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size .3371,9
-.type .3372,#object
-.size .3372,8
-.align 1
-.3372:
-.byte 115
-.byte 57
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.global s9
-.section ".text"
-.align 4
-s9:
-save %sp,-96,%sp
-set .3372,%i3
-add %i0,60,%i2
-mov %g0,%i1
-.L3373:
-.L3374:
-mov %i2,%l7
-add %l7,1,%i2
-mov %i3,%l6
-add %l6,1,%i3
-ldsb [%l6],%l6
-stb %l6,[%l7]
-sll %l6,8*(4-1),%l7; sra %l7,8*(4-1),%l7
-cmp %l7,0; bne .L3373; nop
-mov %g0,%i4
-mov %g0,%i5
-.L3376:
-set 2,%l5
-mov %l5,%l7
-mov %l5,%l6
-set 3,%l3
-mov %l3,%l5
-mov %l3,%l4
-cmp %l4,3; bne .L3382; nop
-cmp %l5,3; be .L3380; nop
-.L3382:
-set 1,%i4
-.L3380:
-cmp %l6,2; bne .L3385; nop
-cmp %l7,2; be .L3383; nop
-.L3385:
-set 1,%i4
-.L3383:
-.L3377:
-add %i5,1,%i5
-cmp %i5,2; bl .L3376; nop
-cmp %i4,0; be .L3390; nop
-ld [%i0+44],%l7
-cmp %l7,0; be .L3388; nop
-set .3371,%o0
-set 1,%o1
-call printf; nop
-.L3388:
-add %i1,1,%i1
-ba .L3390; nop
-ld [%i0+44],%l7
-cmp %l7,0; be .L3391; nop
-set .3371,%o0
-set 2,%o1
-call printf; nop
-.L3391:
-add %i1,2,%i1
-.L3390:
-mov %i1,%i0
-.L3370:
-ret; restore
-.type s9,#function
-.size s9,.-s9
-.global setev
-.align 4
-setev:
-set extvar,%o5
-set 1066,%o4
-st %o4,[%o5]
-mov %g0,%o0
-.L3393:
-retl; nop
-.type setev,#function
-.size setev,.-setev
-.section ".bss"
-.global rfs
-.type rfs,#object
-.size rfs,8
-.common rfs,8,1
-.global crc
-.type crc,#object
-.size crc,4
-.common crc,4,4
-.global rrc
-.type rrc,#object
-.size rrc,4
-.common rrc,4,4
-.global flgl
-.type flgl,#object
-.size flgl,4
-.common flgl,4,4
-.global flgd
-.type flgd,#object
-.size flgd,4
-.common flgd,4,4
-.global flgm
-.type flgm,#object
-.size flgm,4
-.common flgm,4,4
-.global flgs
-.type flgs,#object
-.size flgs,4
-.common flgs,4,4
-.global dprec
-.type dprec,#object
-.size dprec,4
-.common dprec,4,4
-.global fprec
-.type fprec,#object
-.size fprec,4
-.common fprec,4,4
-.global dbits
-.type dbits,#object
-.size dbits,4
-.common dbits,4,4
-.global fbits
-.type fbits,#object
-.size fbits,4
-.common fbits,4,4
-.global ubits
-.type ubits,#object
-.size ubits,4
-.common ubits,4,4
-.global lbits
-.type lbits,#object
-.size lbits,4
-.common lbits,4,4
-.global metricp
-.type metricp,#object
-.size metricp,4
-.common metricp,4,4
-.global extvar
-.type extvar,#object
-.size extvar,4
-.common extvar,4,4
-.section ".rodata"
-.align 1
-.L3266:
-.byte 66
-.byte 101
-.byte 32
-.byte 101
-.byte 115
-.byte 112
-.byte 101
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 101
-.byte 102
-.byte 117
-.byte 108
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 49
-.byte 45
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 102
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L3259:
-.byte 83
-.byte 105
-.byte 103
-.byte 110
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 101
-.byte 110
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 102
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L3252:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 4
-.L3175:
-.word 0x43080000
-.align 1
-.L3022:
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.L2472:
-.byte 73
-.byte 110
-.byte 99
-.byte 114
-.byte 101
-.byte 97
-.byte 115
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 97
-.byte 114
-.byte 114
-.byte 97
-.byte 121
-.byte 32
-.byte 101
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 114
-.byte 101
-.byte 97
-.byte 115
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 108
-.byte 111
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 10
-.byte 0
-.align 4
-.L2356:
-.word 0x41d00000
-.align 8
-.L2355:
-.word 0x403a0000
-.word 0x0
-.align 8
-.L1659:
-.word 0x40040000
-.word 0x0
-.align 8
-.L1484:
-.word 0x40240000
-.word 0x0
-.align 4
-.L1455:
-.word 0x41200000
-.align 8
-.L1280:
-.word 0x40080000
-.word 0x0
-.align 4
-.L1251:
-.word 0x40400000
-.align 8
-.L1076:
-.word 0x401c0000
-.word 0x0
-.align 4
-.L1047:
-.word 0x40e00000
-.align 8
-.L870:
-.word 0x40140000
-.word 0x0
-.align 4
-.L841:
-.word 0x40a00000
-.align 8
-.L836:
-.word 0x41e00000
-.word 0x0
-.align 4
-.L828:
-.word 0x4f000000
-.align 1
-.L653:
-.byte 113
-.byte 117
-.byte 101
-.byte 101
-.byte 112
-.byte 0
-.align 1
-.L639:
-.byte 10
-.byte 0
-.align 1
-.L638:
-.byte 37
-.byte 100
-.byte 0
-.align 1
-.L633:
-.byte 32
-.byte 32
-.byte 32
-.byte 107
-.byte 101
-.byte 121
-.byte 61
-.byte 0
-.align 8
-.L596:
-.word 0x40000000
-.word 0x0
-.align 8
-.L536:
-.word 0x40ce8480
-.word 0x0
-.align 8
-.L535:
-.word 0x405f4000
-.word 0x0
-.align 4
-.L534:
-.word 0x42fa0000
-.align 4
-.L529:
-.word 0x40000000
-.align 1
-.L431:
-.byte 100
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 0
-.align 1
-.L430:
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 0
-.align 1
-.L429:
-.byte 117
-.byte 110
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 0
-.align 1
-.L428:
-.byte 108
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.L427:
-.byte 115
-.byte 104
-.byte 111
-.byte 114
-.byte 116
-.byte 0
-.align 1
-.L426:
-.byte 105
-.byte 110
-.byte 116
-.byte 0
-.align 1
-.L425:
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 0
-.align 8
-.L419:
-.word 0x0
-.word 0x0
-.align 8
-.L418:
-.word 0x3ff00000
-.word 0x0
-.align 8
-.L417:
-.word 0x40100000
-.word 0x0
-.align 8
-.L416:
-.word 0x40000000
-.word 0x0
-.align 4
-.L412:
-.word 0x0
-.align 4
-.L411:
-.word 0x3f800000
-.align 1
-.L390:
-.byte 113
-.byte 117
-.byte 101
-.byte 101
-.byte 112
-.byte 33
-.byte 0
-.align 1
-.L379:
-.byte 10
-.byte 9
-.byte 8
-.byte 13
-.byte 12
-.byte 92
-.byte 39
-.byte 0
-.align 1
-.L375:
-.byte 46
-.byte 34
-.byte 46
-.byte 0
-.align 1
-.L362:
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 8
-.L333:
-.word 0x40938800
-.word 0x0
-.align 1
-.L199:
-.byte 32
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 108
-.byte 111
-.byte 110
-.byte 103
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L198:
-.byte 68
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 99
-.byte 116
-.byte 97
-.byte 108
-.byte 47
-.byte 104
-.byte 101
-.byte 120
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 116
-.byte 97
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 109
-.byte 101
-.byte 115
-.byte 32
-.byte 103
-.byte 105
-.byte 118
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L27:
-.byte 10
-.byte 70
-.byte 97
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L26:
-.byte 10
-.byte 78
-.byte 111
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 100
-.byte 101
-.byte 116
-.byte 101
-.byte 99
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L20:
-.byte 83
-.byte 101
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 116
-.byte 117
-.byte 114
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
+.section ".data"
+.type .2,#object
+.align 4
+.2:
+.word s22
+.word s241
+.word s243
+.word s244
+.word s25
+.word s26
+.word s4
+.word s61
+.word s626
+.word s71
+.word s72
+.word s757
+.word s7813
+.word s714
+.word s715
+.word s81
+.word s84
+.word s85
+.word s86
+.word s88
+.word s9
+.section ".bss"
+.size .2,84
+.type .3,#object
+.size .3,68
+.local .3
+.common .3,68,4
+.type .4,#object
+.size .4,4
+.local .4
+.common .4,4,4
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-96,%sp
+set .3+36,%i4
+set 1,%i3
+st %i3,[%i4]
+set .3+40,%i4
+set 1,%i3
+st %i3,[%i4]
+set .3+44,%i4
+set 1,%i3
+st %i3,[%i4]
+set .3+48,%i4
+set 1,%i3
+st %i3,[%i4]
+set .4,%i4
+set .3,%i3
+st %i3,[%i4]
+mov %g0,%i5
+ba .L12; nop
+.L9:
+set .4,%i4
+ld [%i4],%o0
+sll %i5,2,%i4
+set .2,%i3
+ld [%i4+%i3],%i4
+call %i4; nop
+set .3+52,%i3
+st %o0,[%i3]
+set .3+56,%i4
+set .3+56,%i3
+ld [%i3],%i3
+set .3+52,%i2
+ld [%i2],%i2
+add %i3,%i2,%i3
+st %i3,[%i4]
+set .3+36,%i4
+ld [%i4],%i4
+cmp %i4,0; be .L17; nop
+set .L20,%o0
+set .3+60,%o1
+set .3+52,%i4
+ld [%i4],%o2
+call printf; nop
+.L17:
+.L10:
+add %i5,1,%i5
+.L12:
+mov %i5,%i4
+set 21,%i3
+cmp %i4,%i3; blu .L9; nop
+set .3+56,%i4
+ld [%i4],%i4
+cmp %i4,0; bne .L23; nop
+set .L26,%o0
+call printf; nop
+ba .L24; nop
+.L23:
+set .L27,%o0
+call printf; nop
+.L24:
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.section ".data"
+.type .29,#object
+.align 1
+.29:
+.byte 115
+.byte 50
+.byte 50
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .29,10
+.type .30,#object
+.size .30,8
+.align 1
+.30:
+.byte 115
+.byte 50
+.byte 50
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s22
+.section ".text"
+.align 4
+s22:
+save %sp,-96,%sp
+mov %g0,%i3
+set .30,%i5
+add %i0,60,%i4
+.L31:
+.L32:
+mov %i4,%l4
+add %l4,1,%i4
+mov %i5,%l3
+add %l3,1,%i5
+ldsb [%l3],%l3
+stb %l3,[%l4]
+sll %l3,8*(4-1),%l4; sra %l4,8*(4-1),%l4
+cmp %l4,0; bne .L31; nop
+set 1,%i2
+set 2,%l7
+set 3,%l6
+set 4,%i1
+add %i2,%l7,%l4
+add %l4,%l6,%l4
+add %l4,%i1,%l4
+cmp %l4,10; be .L34; nop
+add %i3,1,%i3
+ld [%i0+44],%l4
+cmp %l4,0; be .L36; nop
+set .29,%o0
+set 1,%o1
+call printf; nop
+.L36:
+.L34:
+set 2,%l5
+cmp %l5,%i2; bne .L38; nop
+add %i3,4,%i3
+ld [%i0+44],%l4
+cmp %l4,0; be .L40; nop
+set .29,%o0
+set 4,%o1
+call printf; nop
+.L40:
+.L38:
+mov %i3,%i0
+.L28:
+ret; restore
+.type s22,#function
+.size s22,.-s22
+.section ".data"
+.type .43,#object
+.align 1
+.43:
+.byte 115
+.byte 50
+.byte 52
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .43,11
+.type .44,#object
+.size .44,8
+.align 1
+.44:
+.byte 115
+.byte 50
+.byte 52
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.type .45,#object
+.size .45,156
+.align 4
+.45:
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x0
+.word 0x6
+.word 0x0
+.word 0x8
+.word 0x0
+.word 0xc
+.word 0x0
+.word 0x10
+.word 0x0
+.word 0x12
+.word 0x0
+.word 0x14
+.word 0x0
+.word 0x18
+.word 0x0
+.word 0x1c
+.word 0x0
+.word 0x1e
+.word 0x0
+.word 0x20
+.word 0x0
+.word 0x24
+.global s241
+.section ".text"
+.align 4
+s241:
+save %sp,-560,%sp
+mov %g0,%i2
+mov %g0,%i1
+set .44,%i4
+add %i0,60,%i3
+.L46:
+.L47:
+mov %i3,%l7
+add %l7,1,%i3
+mov %i4,%l6
+add %l6,1,%i4
+ldsb [%l6],%l6
+stb %l6,[%l7]
+sll %l6,8*(4-1),%l7; sra %l7,8*(4-1),%l7
+cmp %l7,0; bne .L46; nop
+ba .L49; nop
+add %i2,1,%i2
+ld [%i0+44],%l7
+cmp %l7,0; be .L51; nop
+set .43,%o0
+set 1,%o1
+call printf; nop
+.L51:
+.L49:
+ba .L53; nop
+add %i2,2,%i2
+ld [%i0+44],%l7
+cmp %l7,0; be .L55; nop
+set .43,%o0
+set 2,%o1
+call printf; nop
+.L55:
+.L53:
+ba .L57; nop
+add %i2,4,%i2
+ld [%i0+44],%l7
+cmp %l7,0; be .L59; nop
+set .43,%o0
+set 4,%o1
+call printf; nop
+.L59:
+.L57:
+ba .L61; nop
+add %i2,8,%i2
+ld [%i0+44],%l7
+cmp %l7,0; be .L63; nop
+set .43,%o0
+set 8,%o1
+call printf; nop
+.L63:
+.L61:
+mov %g0,%i5
+.L65:
+sll %i5,2,%l7
+set .45,%l6
+st %i5,[%l7+%l6]
+.L66:
+add %i5,1,%i5
+cmp %i5,17; bl .L65; nop
+set 18,%i5
+.L69:
+sll %i5,2,%l7
+set .45,%l6
+add %l7,%l6,%l7
+ld [%l7],%o0
+call pow2; nop
+st %o0,[%l7]
+sll %i5,2,%l7
+set .45-4,%l6
+set .45,%l5
+ld [%l7+%l5],%l5
+sub %l5,1,%l5
+st %l5,[%l7+%l6]
+add %i5,2,%i5
+.L70:
+cmp %i5,39; bl .L69; nop
+st %g0,[%fp+-156]
+st %g0,[%fp+-312]
+st %g0,[%fp+-468]
+set 1,%l7
+st %l7,[%fp+-152]
+set 1,%l7
+st %l7,[%fp+-308]
+set 1,%l7
+st %l7,[%fp+-464]
+set 2,%l7
+st %l7,[%fp+-148]
+set 2,%l7
+st %l7,[%fp+-304]
+set 2,%l7
+st %l7,[%fp+-460]
+set 3,%l7
+st %l7,[%fp+-144]
+set 3,%l7
+st %l7,[%fp+-300]
+set 3,%l7
+st %l7,[%fp+-456]
+set 4,%l7
+st %l7,[%fp+-140]
+set 4,%l7
+st %l7,[%fp+-296]
+set 4,%l7
+st %l7,[%fp+-452]
+set 5,%l7
+st %l7,[%fp+-136]
+set 5,%l7
+st %l7,[%fp+-292]
+set 5,%l7
+st %l7,[%fp+-448]
+set 6,%l7
+st %l7,[%fp+-132]
+set 6,%l7
+st %l7,[%fp+-288]
+set 6,%l7
+st %l7,[%fp+-444]
+set 7,%l7
+st %l7,[%fp+-128]
+set 7,%l7
+st %l7,[%fp+-284]
+set 7,%l7
+st %l7,[%fp+-440]
+set 8,%l7
+st %l7,[%fp+-124]
+set 8,%l7
+st %l7,[%fp+-280]
+set 8,%l7
+st %l7,[%fp+-436]
+set 9,%l7
+st %l7,[%fp+-120]
+set 9,%l7
+st %l7,[%fp+-276]
+set 9,%l7
+st %l7,[%fp+-432]
+set 10,%l7
+st %l7,[%fp+-116]
+set 10,%l7
+st %l7,[%fp+-272]
+set 10,%l7
+st %l7,[%fp+-428]
+set 11,%l7
+st %l7,[%fp+-112]
+set 11,%l7
+st %l7,[%fp+-268]
+set 11,%l7
+st %l7,[%fp+-424]
+set 12,%l7
+st %l7,[%fp+-108]
+set 12,%l7
+st %l7,[%fp+-264]
+set 12,%l7
+st %l7,[%fp+-420]
+set 13,%l7
+st %l7,[%fp+-104]
+set 13,%l7
+st %l7,[%fp+-260]
+set 13,%l7
+st %l7,[%fp+-416]
+set 14,%l7
+st %l7,[%fp+-100]
+set 14,%l7
+st %l7,[%fp+-256]
+set 14,%l7
+st %l7,[%fp+-412]
+set 15,%l7
+st %l7,[%fp+-96]
+set 15,%l7
+st %l7,[%fp+-252]
+set 15,%l7
+st %l7,[%fp+-408]
+set 16,%l7
+st %l7,[%fp+-92]
+set 16,%l7
+st %l7,[%fp+-248]
+set 16,%l7
+st %l7,[%fp+-404]
+set 63,%l7
+st %l7,[%fp+-88]
+set 63,%l7
+st %l7,[%fp+-244]
+set 63,%l7
+st %l7,[%fp+-400]
+set 64,%l7
+st %l7,[%fp+-84]
+set 64,%l7
+st %l7,[%fp+-240]
+set 64,%l7
+st %l7,[%fp+-396]
+set 255,%l7
+st %l7,[%fp+-80]
+set 255,%l7
+st %l7,[%fp+-236]
+set 255,%l7
+st %l7,[%fp+-392]
+set 256,%l7
+st %l7,[%fp+-76]
+set 256,%l7
+st %l7,[%fp+-232]
+set 256,%l7
+st %l7,[%fp+-388]
+set 4095,%l7
+st %l7,[%fp+-72]
+set 4095,%l7
+st %l7,[%fp+-228]
+set 4095,%l7
+st %l7,[%fp+-384]
+set 4096,%l7
+st %l7,[%fp+-68]
+set 4096,%l7
+st %l7,[%fp+-224]
+set 4096,%l7
+st %l7,[%fp+-380]
+set 65535,%l7
+st %l7,[%fp+-64]
+set 65535,%l7
+st %l7,[%fp+-220]
+set 65535,%l7
+st %l7,[%fp+-376]
+set 65536,%l7
+st %l7,[%fp+-60]
+set 65536,%l7
+st %l7,[%fp+-216]
+set 65536,%l7
+st %l7,[%fp+-372]
+set 262143,%l7
+st %l7,[%fp+-56]
+set 262143,%l7
+st %l7,[%fp+-212]
+set 262143,%l7
+st %l7,[%fp+-368]
+set 262144,%l7
+st %l7,[%fp+-52]
+set 262144,%l7
+st %l7,[%fp+-208]
+set 262144,%l7
+st %l7,[%fp+-364]
+set 1048575,%l7
+st %l7,[%fp+-48]
+set 1048575,%l7
+st %l7,[%fp+-204]
+set 1048575,%l7
+st %l7,[%fp+-360]
+set 1048576,%l7
+st %l7,[%fp+-44]
+set 1048576,%l7
+st %l7,[%fp+-200]
+set 1048576,%l7
+st %l7,[%fp+-356]
+set 16777215,%l7
+st %l7,[%fp+-40]
+set 16777215,%l7
+st %l7,[%fp+-196]
+set 16777215,%l7
+st %l7,[%fp+-352]
+set 16777216,%l7
+st %l7,[%fp+-36]
+set 16777216,%l7
+st %l7,[%fp+-192]
+set 16777216,%l7
+st %l7,[%fp+-348]
+set 268435455,%l7
+st %l7,[%fp+-32]
+set 268435455,%l7
+st %l7,[%fp+-188]
+set 268435455,%l7
+st %l7,[%fp+-344]
+set 268435456,%l7
+st %l7,[%fp+-28]
+set 268435456,%l7
+st %l7,[%fp+-184]
+set 268435456,%l7
+st %l7,[%fp+-340]
+set 1073741823,%l7
+st %l7,[%fp+-24]
+set 1073741823,%l7
+st %l7,[%fp+-180]
+set 1073741823,%l7
+st %l7,[%fp+-336]
+set 1073741824,%l7
+st %l7,[%fp+-20]
+set 1073741824,%l7
+st %l7,[%fp+-176]
+set 1073741824,%l7
+st %l7,[%fp+-332]
+set 0xffffffff,%l7
+st %l7,[%fp+-16]
+set 0xffffffff,%l7
+st %l7,[%fp+-172]
+set 0xffffffff,%l7
+st %l7,[%fp+-328]
+set 0xffffffff,%l7
+st %l7,[%fp+-12]
+set 0xffffffff,%l7
+st %l7,[%fp+-168]
+set 0xffffffff,%l7
+st %l7,[%fp+-324]
+set 0xffffffff,%l7
+st %l7,[%fp+-8]
+set 0xffffffff,%l7
+st %l7,[%fp+-164]
+set 0xffffffff,%l7
+st %l7,[%fp+-320]
+set 0xffffffff,%l7
+st %l7,[%fp+-4]
+set 0xffffffff,%l7
+st %l7,[%fp+-160]
+set 0xffffffff,%l7
+st %l7,[%fp+-316]
+mov %g0,%i5
+.L188:
+sll %i5,2,%l7
+add -156,%fp,%l6
+ld [%l7+%l6],%l6
+set .45,%l5
+ld [%l7+%l5],%l5
+cmp %l5,%l6; bne .L195; nop
+add -312,%fp,%l5
+ld [%l7+%l5],%l5
+cmp %l6,%l5; bne .L195; nop
+add -468,%fp,%l6
+ld [%l7+%l6],%l7
+cmp %l5,%l7; be .L192; nop
+.L195:
+ld [%i0+40],%l7
+cmp %l7,0; be .L196; nop
+set .L198,%o0
+call printf; nop
+set .L199,%o0
+call printf; nop
+.L196:
+.L192:
+.L189:
+add %i5,1,%i5
+cmp %i5,39; bl .L188; nop
+cmp %i1,0; be .L200; nop
+set 16,%i2
+.L200:
+mov %i2,%i0
+.L42:
+ret; restore
+.type s241,#function
+.size s241,.-s241
+.global pow2
+.align 4
+pow2:
+set 1,%o5
+ba .L204; nop
+.L203:
+sll %o5,1,%o5
+.L204:
+mov %o0,%o4
+sub %o4,1,%o0
+cmp %o4,0; bne .L203; nop
+mov %o5,%o0
+.L202:
+retl; nop
+.type pow2,#function
+.size pow2,.-pow2
+.section ".data"
+.type .207,#object
+.align 1
+.207:
+.byte 115
+.byte 50
+.byte 52
+.byte 51
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .207,11
+.type .208,#object
+.size .208,8
+.align 1
+.208:
+.byte 115
+.byte 50
+.byte 52
+.byte 51
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s243
+.section ".text"
+.align 4
+s243:
+save %sp,-352,%sp
+mov %g0,%i3
+set .208,%i5
+add %i0,60,%i4
+.L209:
+.L210:
+mov %i4,%i2
+add %i2,1,%i4
+mov %i5,%i1
+add %i1,1,%i5
+ldsb [%i1],%i1
+stb %i1,[%i2]
+sll %i1,8*(4-1),%i2; sra %i2,8*(4-1),%i2
+cmp %i2,0; bne .L209; nop
+add -256,%fp,%o0
+call zerofill; nop
+set 1,%i2
+stb %i2,[%fp+-159]
+set 1,%i2
+stb %i2,[%fp+-191]
+set 1,%i2
+stb %i2,[%fp+-130]
+set 1,%i2
+stb %i2,[%fp+-208]
+set 1,%i2
+stb %i2,[%fp+-158]
+set 1,%i2
+stb %i2,[%fp+-190]
+set 1,%i2
+stb %i2,[%fp+-223]
+set 1,%i2
+stb %i2,[%fp+-207]
+set 1,%i2
+stb %i2,[%fp+-157]
+set 1,%i2
+stb %i2,[%fp+-189]
+set 1,%i2
+stb %i2,[%fp+-222]
+set 1,%i2
+stb %i2,[%fp+-206]
+set 1,%i2
+stb %i2,[%fp+-156]
+set 1,%i2
+stb %i2,[%fp+-188]
+set 1,%i2
+stb %i2,[%fp+-221]
+set 1,%i2
+stb %i2,[%fp+-205]
+set 1,%i2
+stb %i2,[%fp+-155]
+set 1,%i2
+stb %i2,[%fp+-187]
+set 1,%i2
+stb %i2,[%fp+-219]
+set 1,%i2
+stb %i2,[%fp+-204]
+set 1,%i2
+stb %i2,[%fp+-154]
+set 1,%i2
+stb %i2,[%fp+-186]
+set 1,%i2
+stb %i2,[%fp+-218]
+set 1,%i2
+stb %i2,[%fp+-203]
+set 1,%i2
+stb %i2,[%fp+-153]
+set 1,%i2
+stb %i2,[%fp+-185]
+set 1,%i2
+stb %i2,[%fp+-216]
+set 1,%i2
+stb %i2,[%fp+-202]
+set 1,%i2
+stb %i2,[%fp+-152]
+set 1,%i2
+stb %i2,[%fp+-184]
+set 1,%i2
+stb %i2,[%fp+-215]
+set 1,%i2
+stb %i2,[%fp+-201]
+set 1,%i2
+stb %i2,[%fp+-151]
+set 1,%i2
+stb %i2,[%fp+-183]
+set 1,%i2
+stb %i2,[%fp+-161]
+set 1,%i2
+stb %i2,[%fp+-200]
+set 1,%i2
+stb %i2,[%fp+-150]
+set 1,%i2
+stb %i2,[%fp+-182]
+set 1,%i2
+stb %i2,[%fp+-195]
+set 1,%i2
+stb %i2,[%fp+-199]
+set 1,%i2
+stb %i2,[%fp+-149]
+set 1,%i2
+stb %i2,[%fp+-181]
+set 1,%i2
+stb %i2,[%fp+-211]
+set 1,%i2
+stb %i2,[%fp+-148]
+set 1,%i2
+stb %i2,[%fp+-180]
+set 1,%i2
+stb %i2,[%fp+-162]
+set 1,%i2
+stb %i2,[%fp+-147]
+set 1,%i2
+stb %i2,[%fp+-179]
+set 1,%i2
+stb %i2,[%fp+-132]
+set 1,%i2
+stb %i2,[%fp+-246]
+set 1,%i2
+stb %i2,[%fp+-146]
+set 1,%i2
+stb %i2,[%fp+-178]
+set 1,%i2
+stb %i2,[%fp+-247]
+set 1,%i2
+stb %i2,[%fp+-145]
+set 1,%i2
+stb %i2,[%fp+-177]
+set 1,%i2
+stb %i2,[%fp+-133]
+set 1,%i2
+stb %i2,[%fp+-248]
+set 1,%i2
+stb %i2,[%fp+-144]
+set 1,%i2
+stb %i2,[%fp+-176]
+set 1,%i2
+stb %i2,[%fp+-131]
+set 1,%i2
+stb %i2,[%fp+-243]
+set 1,%i2
+stb %i2,[%fp+-143]
+set 1,%i2
+stb %i2,[%fp+-175]
+set 1,%i2
+stb %i2,[%fp+-165]
+set 1,%i2
+stb %i2,[%fp+-244]
+set 1,%i2
+stb %i2,[%fp+-142]
+set 1,%i2
+stb %i2,[%fp+-174]
+set 1,%i2
+stb %i2,[%fp+-163]
+set 1,%i2
+stb %i2,[%fp+-141]
+set 1,%i2
+stb %i2,[%fp+-173]
+set 1,%i2
+stb %i2,[%fp+-213]
+set 1,%i2
+stb %i2,[%fp+-164]
+set 1,%i2
+stb %i2,[%fp+-140]
+set 1,%i2
+stb %i2,[%fp+-172]
+set 1,%i2
+stb %i2,[%fp+-197]
+set 1,%i2
+stb %i2,[%fp+-217]
+set 1,%i2
+stb %i2,[%fp+-139]
+set 1,%i2
+stb %i2,[%fp+-171]
+set 1,%i2
+stb %i2,[%fp+-214]
+set 1,%i2
+stb %i2,[%fp+-138]
+set 1,%i2
+stb %i2,[%fp+-170]
+set 1,%i2
+stb %i2,[%fp+-198]
+set 1,%i2
+stb %i2,[%fp+-256]
+stb %i2,[%fp+-137]
+set 1,%i2
+stb %i2,[%fp+-169]
+set 1,%i2
+stb %i2,[%fp+-196]
+set 1,%i2
+stb %i2,[%fp+-224]
+set 1,%i2
+stb %i2,[%fp+-136]
+set 1,%i2
+stb %i2,[%fp+-168]
+set 1,%i2
+stb %i2,[%fp+-194]
+set 1,%i2
+stb %i2,[%fp+-135]
+set 1,%i2
+stb %i2,[%fp+-167]
+set 1,%i2
+stb %i2,[%fp+-212]
+set 1,%i2
+stb %i2,[%fp+-134]
+set 1,%i2
+stb %i2,[%fp+-166]
+set 1,%i2
+stb %i2,[%fp+-210]
+set 1,%i2
+stb %i2,[%fp+-193]
+set 1,%i2
+stb %i2,[%fp+-209]
+add -256,%fp,%o0
+call sumof; nop
+cmp %o0,98; be .L309; nop
+add %i3,1,%i3
+ld [%i0+44],%i2
+cmp %i2,0; be .L311; nop
+set .207,%o0
+set 1,%o1
+call printf; nop
+.L311:
+.L309:
+ba .L313; nop
+add %i3,8,%i3
+ld [%i0+44],%i2
+cmp %i2,0; be .L315; nop
+set .207,%o0
+set 8,%o1
+call printf; nop
+.L315:
+.L313:
+mov %i3,%i0
+.L206:
+ret; restore
+.type s243,#function
+.size s243,.-s243
+.global zerofill
+.align 4
+zerofill:
+mov %g0,%o5
+.L318:
+mov %o0,%o4
+add %o4,1,%o0
+stb %g0,[%o4]
+.L319:
+add %o5,1,%o5
+cmp %o5,256; bl .L318; nop
+mov %g0,%o0
+.L317:
+retl; nop
+.type zerofill,#function
+.size zerofill,.-zerofill
+.global sumof
+.align 4
+sumof:
+mov %o0,%o3
+mov %g0,%o5
+mov %g0,%o4
+.L323:
+mov %o3,%o2
+add %o2,1,%o3
+ldsb [%o2],%o2
+add %o5,%o2,%o5
+.L324:
+add %o4,1,%o4
+cmp %o4,256; bl .L323; nop
+mov %o5,%o0
+.L322:
+retl; nop
+.type sumof,#function
+.size sumof,.-sumof
+.section ".data"
+.type .328,#object
+.align 1
+.328:
+.byte 115
+.byte 50
+.byte 52
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .328,11
+.type .329,#object
+.size .329,8
+.align 1
+.329:
+.byte 115
+.byte 50
+.byte 52
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s244
+.section ".text"
+.align 4
+s244:
+save %sp,-160,%sp
+set .329,%i4
+add %i0,60,%i3
+.L330:
+.L331:
+mov %i3,%l7
+add %l7,1,%i3
+mov %i4,%l6
+add %l6,1,%i4
+ldsb [%l6],%l6
+stb %l6,[%l7]
+sll %l6,8*(4-1),%l7; sra %l7,8*(4-1),%l7
+cmp %l7,0; bne .L330; nop
+mov %g0,%i1
+mov %g0,%i2
+set .L333,%l7
+ld2 [%l7],%f30
+std %f30,[%fp+-64]
+std %f30,[%fp+-56]
+set .L333,%l7
+ld2 [%l7],%f30
+std %f30,[%fp+-48]
+set .L333,%l7
+ld2 [%l7],%f30
+std %f30,[%fp+-40]
+set .L333,%l7
+ld2 [%l7],%f30
+std %f30,[%fp+-32]
+set .L333,%l7
+ld2 [%l7],%f30
+std %f30,[%fp+-24]
+set .L333,%l7
+ld2 [%l7],%f30
+std %f30,[%fp+-16]
+set .L333,%l7
+ld2 [%l7],%f30
+std %f30,[%fp+-8]
+mov %g0,%i2
+mov %g0,%i5
+.L341:
+sll %i5,3,%l7
+add -64,%fp,%l6
+add %l7,%l6,%l6
+ld2 [%l6],%f30
+add -56,%fp,%l6
+add %l7,%l6,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbue .L345; nop
+set 1,%i2
+.L345:
+.L342:
+add %i5,1,%i5
+cmp %i5,7; bl .L341; nop
+cmp %i2,0; be .L348; nop
+ld [%i0+44],%l7
+cmp %l7,0; be .L350; nop
+set .328,%o0
+set 1,%o1
+call printf; nop
+.L350:
+add %i1,1,%i1
+.L348:
+ba .L352; nop
+ld [%i0+44],%l7
+cmp %l7,0; be .L354; nop
+set .328,%o0
+set 2,%o1
+call printf; nop
+.L354:
+add %i1,2,%i1
+.L352:
+mov %i1,%i0
+.L327:
+ret; restore
+.type s244,#function
+.size s244,.-s244
+.section ".data"
+.type .357,#object
+.align 1
+.357:
+.byte 115
+.byte 50
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .357,10
+.type .358,#object
+.size .358,8
+.align 1
+.358:
+.byte 115
+.byte 50
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s25
+.section ".text"
+.align 4
+s25:
+save %sp,-96,%sp
+set .358,%i2
+add %i0,60,%i1
+.L359:
+.L360:
+mov %i1,%l5
+add %l5,1,%i1
+mov %i2,%l4
+add %l4,1,%i2
+ldsb [%l4],%l4
+stb %l4,[%l5]
+sll %l4,8*(4-1),%l5; sra %l5,8*(4-1),%l5
+cmp %l5,0; bne .L359; nop
+mov %g0,%l7
+set .L362,%i4
+ldsb [%i4+1],%l5
+ldsb [%i4],%l4
+cmp %l4,%l5; bne .L366; nop
+ldsb [%i4+2],%l4
+cmp %l5,%l4; bne .L366; nop
+cmp %l4,46; be .L363; nop
+.L366:
+add %l7,1,%l7
+ld [%i0+44],%l5
+cmp %l5,0; be .L367; nop
+set .357,%o0
+set 1,%o1
+call printf; nop
+.L367:
+.L363:
+ldsb [%i4+3],%l5
+cmp %l5,0; be .L369; nop
+add %l7,4,%l7
+ld [%i0+44],%l5
+cmp %l5,0; be .L371; nop
+set .357,%o0
+set 4,%o1
+call printf; nop
+.L371:
+.L369:
+set .L375+1,%l5
+ldsb [%l5],%l5
+cmp %l5,34; be .L373; nop
+add %l7,8,%l7
+ld [%i0+44],%l5
+cmp %l5,0; be .L377; nop
+set .357,%o0
+set 8,%o1
+call printf; nop
+.L377:
+.L373:
+set .L379,%i4
+ldsb [%i4],%l5
+cmp %l5,10; bne .L387; nop
+ldsb [%i4+1],%l5
+cmp %l5,9; bne .L387; nop
+ldsb [%i4+2],%l5
+cmp %l5,8; bne .L387; nop
+ldsb [%i4+3],%l5
+cmp %l5,13; bne .L387; nop
+ldsb [%i4+4],%l5
+cmp %l5,12; bne .L387; nop
+ldsb [%i4+5],%l5
+cmp %l5,92; bne .L387; nop
+ldsb [%i4+6],%l5
+cmp %l5,39; be .L380; nop
+.L387:
+add %l7,16,%l7
+ld [%i0+44],%l5
+cmp %l5,0; be .L388; nop
+set .357,%o0
+set 16,%o1
+call printf; nop
+.L388:
+.L380:
+set .L390,%l5
+mov %l5,%i3
+mov %l5,%i4
+mov %g0,%l6
+mov %g0,%i5
+ba .L394; nop
+.L391:
+ldsb [%i5+%i4],%l5
+ldsb [%i5+%i3],%l4
+cmp %l5,%l4; be .L395; nop
+set 1,%l6
+.L395:
+.L392:
+add %i5,1,%i5
+.L394:
+mov %i5,%l5
+set 7,%l4
+cmp %l5,%l4; blu .L391; nop
+cmp %l6,0; be .L397; nop
+add %l7,32,%l7
+ld [%i0+44],%l5
+cmp %l5,0; be .L399; nop
+set .357,%o0
+set 32,%o1
+call printf; nop
+.L399:
+.L397:
+mov %l7,%i0
+.L356:
+ret; restore
+.type s25,#function
+.size s25,.-s25
+.section ".data"
+.type .402,#object
+.size .402,8
+.align 1
+.402:
+.byte 115
+.byte 50
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.type .403,#object
+.align 1
+.403:
+.byte 37
+.byte 51
+.byte 100
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 37
+.byte 115
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.size .403,18
+.type .404,#object
+.align 1
+.404:
+.byte 37
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 97
+.byte 100
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 49
+.byte 46
+.byte 32
+.byte 40
+.byte 37
+.byte 115
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.size .404,54
+.global s26
+.section ".text"
+.align 4
+s26:
+save %sp,-128,%sp
+set .402,%i4
+add %i0,60,%i3
+.L405:
+.L406:
+mov %i3,%i1
+add %i1,1,%i3
+mov %i4,%l7
+add %l7,1,%i4
+ldsb [%l7],%l7
+stb %l7,[%i1]
+sll %l7,8*(4-1),%i1; sra %i1,8*(4-1),%i1
+cmp %i1,0; bne .L405; nop
+st %g0,[%i0]
+mov %g0,%i2
+set 1,%i5
+ba .L409; nop
+.L408:
+sll %i5,8*(4-1),%i1; sra %i1,8*(4-1),%i1
+sll %i1,1,%i1
+mov %i1,%i5
+ld [%i0],%i1
+add %i1,1,%i1
+st %i1,[%i0]
+.L409:
+sll %i2,8*(4-1),%i1; sra %i1,8*(4-1),%i1
+sll %i5,8*(4-1),%l7; sra %l7,8*(4-1),%l7
+cmp %i1,%l7; bne .L408; nop
+ld [%i0],%i1
+sll %i1,2,%i1
+st %i1,[%i0+4]
+ld [%i0],%i1
+sll %i1,1,%i1
+st %i1,[%i0+8]
+ld [%i0],%i1
+sll %i1,2,%i1
+st %i1,[%i0+12]
+ld [%i0],%i1
+sll %i1,2,%i1
+st %i1,[%i0+16]
+ld [%i0],%i1
+sll %i1,2,%i1
+st %i1,[%i0+20]
+ld [%i0],%i1
+sll %i1,3,%i1
+st %i1,[%i0+24]
+set .L411,%i1
+ld [%i1],%f31
+st %f31,[%fp+-12]
+st %f31,[%fp+-4]
+set .L412,%i1
+ld [%i1],%f31
+st %f31,[%fp+-8]
+ba .L414; nop
+.L413:
+ld [%fp+-4],%f31
+ld [%fp+-12],%f30
+fadds %f30,%f31,%f30
+st %f30,[%fp+-8]
+fstod %f31,%f30
+set .L416,%i1
+ld2 [%i1],%f28
+fdivd %f30,%f28,%f30
+fdtos %f30,%f31
+st %f31,[%fp+-4]
+.L414:
+ld [%fp+-8],%f31
+ld [%fp+-12],%f30
+fcmpes %f31,%f30; nop; fbne .L413; nop
+set .L417,%i1
+ld2 [%i1],%f30
+ld [%fp+-4],%f29
+fstod %f29,%f28
+fmuld %f30,%f28,%f30
+fdtos %f30,%f31
+st %f31,[%i0+28]
+set .L418,%i1
+ld2 [%i1],%f30
+std %f30,[%fp+-32]
+set .L411,%i1
+ld [%i1],%f31
+st %f31,[%fp+-4]
+set .L419,%i1
+ld2 [%i1],%f30
+std %f30,[%fp+-24]
+ba .L421; nop
+.L420:
+ld [%fp+-4],%f31
+fstod %f31,%f30
+ldd [%fp+-32],%f28
+faddd %f28,%f30,%f28
+std %f28,[%fp+-24]
+set .L416,%i1
+ld2 [%i1],%f28
+fdivd %f30,%f28,%f30
+fdtos %f30,%f31
+st %f31,[%fp+-4]
+.L421:
+ldd [%fp+-24],%f30
+ldd [%fp+-32],%f28
+fcmped %f30,%f28; nop; fbne .L420; nop
+set .L417,%i1
+ld2 [%i1],%f30
+ld [%fp+-4],%f29
+fstod %f29,%f28
+fmuld %f30,%f28,%f30
+fdtos %f30,%f31
+st %f31,[%i0+32]
+ld [%i0+40],%i1
+cmp %i1,0; be .L423; nop
+set .403,%o0
+ld [%i0],%o1
+set .L425,%o2
+call printf; nop
+set .403,%o0
+ld [%i0+4],%o1
+set .L426,%o2
+call printf; nop
+set .403,%o0
+ld [%i0+8],%o1
+set .L427,%o2
+call printf; nop
+set .403,%o0
+ld [%i0+12],%o1
+set .L428,%o2
+call printf; nop
+set .403,%o0
+ld [%i0+16],%o1
+set .L429,%o2
+call printf; nop
+set .403,%o0
+ld [%i0+20],%o1
+set .L430,%o2
+call printf; nop
+set .403,%o0
+ld [%i0+24],%o1
+set .L431,%o2
+call printf; nop
+set .404,%o0
+ld [%i0+28],%f31
+fstod %f31,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set .L430,%o3
+call printf; nop
+set .404,%o0
+ld [%i0+32],%f31
+fstod %f31,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set .L431,%o3
+call printf; nop
+.L423:
+mov %g0,%i0
+.L401:
+ret; restore
+.type s26,#function
+.size s26,.-s26
+.section ".data"
+.type .433,#object
+.align 1
+.433:
+.byte 115
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .433,9
+.type .434,#object
+.size .434,8
+.align 1
+.434:
+.byte 115
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s4
+.section ".text"
+.align 4
+s4:
+save %sp,-96,%sp
+mov %g0,%l7
+set .434,%i2
+add %i0,60,%i1
+.L435:
+.L436:
+mov %i1,%l3
+add %l3,1,%i1
+mov %i2,%l2
+add %l2,1,%i2
+ldsb [%l2],%l2
+stb %l2,[%l3]
+sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; bne .L435; nop
+mov %g0,%i5
+.L438:
+mov %i5,%o0
+call svtest; nop
+mov %o0,%l3
+call zero; nop
+cmp %l3,%o0; be .L442; nop
+set 1,%l7
+ld [%i0+44],%l3
+cmp %l3,0; be .L444; nop
+set .433,%o0
+set 1,%o1
+call printf; nop
+.L444:
+.L442:
+.L439:
+add %i5,1,%i5
+cmp %i5,3; bl .L438; nop
+call setev; nop
+call testev; nop
+cmp %o0,0; be .L446; nop
+add %l7,2,%l7
+ld [%i0+44],%l3
+cmp %l3,0; be .L448; nop
+set .433,%o0
+set 2,%o1
+call printf; nop
+.L448:
+.L446:
+ba .L450; nop
+add %l7,4,%l7
+ld [%i0+44],%l3
+cmp %l3,0; be .L452; nop
+set .433,%o0
+set 4,%o1
+call printf; nop
+.L452:
+.L450:
+set 0xffffffff,%i4
+set 1,%i3
+mov %g0,%i5
+ba .L457; nop
+.L454:
+and %i3,%i4,%i3
+srl %i4,1,%i4
+.L455:
+add %i5,1,%i5
+.L457:
+mov %i5,%l3
+ld [%i0],%l2
+sll %l2,2,%l2
+cmp %l3,%l2; blu .L454; nop
+set 1,%l3
+cmp %i3,%l3; bne .L460; nop
+cmp %i4,%g0; be .L458; nop
+.L460:
+add %l7,8,%l7
+ld [%i0+44],%l3
+cmp %l3,0; be .L461; nop
+set .433,%o0
+set 8,%o1
+call printf; nop
+.L461:
+.L458:
+mov %l7,%i0
+.L432:
+ret; restore
+.type s4,#function
+.size s4,.-s4
+.section ".bss"
+.type .464,#object
+.size .464,4
+.local .464
+.common .464,4,4
+.global svtest
+.section ".text"
+.align 4
+svtest:
+cmp %o0,0; be .L467; nop
+cmp %o0,1; be .L468; nop
+cmp %o0,2; be .L471; nop
+ba .L465; nop
+.L467:
+set .464,%o4
+set 1978,%o3
+st %o3,[%o4]
+mov %g0,%o5
+ba .L466; nop
+.L468:
+set .464,%o4
+ld [%o4],%o4
+cmp %o4,1978; be .L469; nop
+set 1,%o5
+ba .L466; nop
+.L469:
+set .464,%o4
+set 1929,%o3
+st %o3,[%o4]
+mov %g0,%o5
+ba .L466; nop
+.L471:
+set .464,%o4
+ld [%o4],%o4
+cmp %o4,1929; be .L472; nop
+set 1,%o5
+ba .L466; nop
+.L472:
+mov %g0,%o5
+.L465:
+.L466:
+mov %o5,%o0
+.L463:
+retl; nop
+.type svtest,#function
+.size svtest,.-svtest
+.section ".bss"
+.type .475,#object
+.size .475,4
+.local .475
+.common .475,4,4
+.global zero
+.section ".text"
+.align 4
+zero:
+set .475,%o4
+set 2,%o3
+st %o3,[%o4]
+mov %g0,%o5
+mov %o5,%o0
+.L474:
+retl; nop
+.type zero,#function
+.size zero,.-zero
+.global testev
+.align 4
+testev:
+set extvar,%o5
+ld [%o5],%o5
+cmp %o5,1066; be .L477; nop
+set 1,%o0
+ba .L476; nop
+.L477:
+mov %g0,%o0
+.L476:
+retl; nop
+.type testev,#function
+.size testev,.-testev
+.section ".data"
+.type .480,#object
+.align 1
+.480:
+.byte 115
+.byte 54
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .480,10
+.type .481,#object
+.size .481,8
+.align 1
+.481:
+.byte 115
+.byte 54
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.type .482,#object
+.align 1
+.482:
+.byte 65
+.byte 66
+.byte 67
+.byte 68
+.byte 69
+.byte 70
+.byte 71
+.byte 72
+.byte 73
+.byte 74
+.byte 75
+.byte 76
+.byte 77
+.byte 78
+.byte 79
+.byte 80
+.byte 81
+.byte 82
+.byte 83
+.byte 84
+.byte 85
+.byte 86
+.byte 87
+.byte 88
+.byte 89
+.byte 90
+.byte 0
+.size .482,27
+.type .483,#object
+.align 1
+.483:
+.byte 97
+.byte 98
+.byte 99
+.byte 100
+.byte 101
+.byte 102
+.byte 103
+.byte 104
+.byte 105
+.byte 106
+.byte 107
+.byte 108
+.byte 109
+.byte 110
+.byte 111
+.byte 112
+.byte 113
+.byte 114
+.byte 115
+.byte 116
+.byte 117
+.byte 118
+.byte 119
+.byte 120
+.byte 121
+.byte 122
+.byte 0
+.size .483,27
+.type .484,#object
+.align 1
+.484:
+.byte 48
+.byte 49
+.byte 50
+.byte 51
+.byte 52
+.byte 53
+.byte 54
+.byte 55
+.byte 56
+.byte 57
+.byte 0
+.size .484,11
+.type .485,#object
+.align 1
+.485:
+.byte 126
+.byte 33
+.byte 34
+.byte 35
+.byte 37
+.byte 38
+.byte 40
+.byte 41
+.byte 95
+.byte 61
+.byte 45
+.byte 94
+.byte 124
+.byte 123
+.byte 125
+.byte 91
+.byte 93
+.byte 43
+.byte 59
+.byte 42
+.byte 58
+.byte 60
+.byte 62
+.byte 44
+.byte 46
+.byte 63
+.byte 47
+.byte 0
+.size .485,28
+.type .486,#object
+.align 1
+.486:
+.byte 10
+.byte 9
+.byte 8
+.byte 13
+.byte 12
+.byte 92
+.byte 39
+.byte 0
+.size .486,8
+.type .487,#object
+.align 1
+.487:
+.byte 32
+.byte 0
+.byte 0
+.size .487,3
+.global s61
+.section ".text"
+.align 4
+s61:
+save %sp,-120,%sp
+set .481,%i3
+add %i0,60,%i2
+mov %g0,%l7
+.L488:
+.L489:
+mov %i2,%l3
+add %l3,1,%i2
+mov %i3,%l2
+add %l2,1,%i3
+ldsb [%l2],%l2
+stb %l2,[%l3]
+sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; bne .L488; nop
+set -19,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%fp+-28]
+ld [%fp+-28],%l3
+cmp %l3,-19; be .L491; nop
+add %l7,1,%l7
+ld [%i0+44],%l3
+cmp %l3,0; be .L493; nop
+set .480,%o0
+set 1,%o1
+call printf; nop
+.L493:
+.L491:
+set .482,%l3
+st %l3,[%fp+-24]
+set .483,%l3
+st %l3,[%fp+-20]
+set .484,%l3
+st %l3,[%fp+-16]
+set .485,%l3
+st %l3,[%fp+-12]
+set .486,%l3
+st %l3,[%fp+-8]
+set .487,%l3
+st %l3,[%fp+-4]
+mov %g0,%i4
+mov %g0,%i5
+ba .L505; nop
+.L504:
+sll %i5,2,%l3
+add -24,%fp,%l2
+add %l3,%l2,%l3
+ld [%l3],%l2
+add %l2,1,%l1
+st %l1,[%l3]
+ldsb [%l2],%l3
+cmp %l3,0; bge .L507; nop
+set 1,%i4
+.L507:
+.L505:
+sll %i5,2,%l3
+add -24,%fp,%l2
+ld [%l3+%l2],%l3
+ldsb [%l3],%l3
+cmp %l3,0; bne .L504; nop
+.L501:
+add %i5,1,%i5
+cmp %i5,6; bl .L505; nop
+cmp %i4,0; be .L509; nop
+add %l7,2,%l7
+ld [%i0+44],%l3
+cmp %l3,0; be .L511; nop
+set .480,%o0
+set 2,%o1
+call printf; nop
+.L511:
+.L509:
+set 1048579,%i1
+mov %i1,%l6
+mov %i1,%l5
+sll %l6,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,%i1; be .L516; nop
+cmp %l3,3; bne .L515; nop
+.L516:
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,%i1; be .L513; nop
+cmp %l3,3; be .L513; nop
+.L515:
+add %l7,8,%l7
+ld [%i0+44],%l3
+cmp %l3,0; be .L517; nop
+set .480,%o0
+set 8,%o1
+call printf; nop
+.L517:
+.L513:
+mov %l7,%i0
+.L479:
+ret; restore
+.type s61,#function
+.size s61,.-s61
+.section ".data"
+.type .520,#object
+.align 1
+.520:
+.byte 115
+.byte 54
+.byte 50
+.byte 54
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .520,11
+.type .521,#object
+.size .521,8
+.align 1
+.521:
+.byte 115
+.byte 54
+.byte 50
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s626
+.section ".text"
+.align 4
+s626:
+save %sp,-176,%sp
+set .521,%i2
+add %i0,60,%i1
+st %g0,[%fp+-76]
+.L522:
+.L523:
+mov %i1,%l3
+add %l3,1,%i1
+mov %i2,%l2
+add %l2,1,%i2
+ldsb [%l2],%l2
+stb %l2,[%l3]
+sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; bne .L522; nop
+set .L411,%l3
+ld [%l3],%f31
+st %f31,[%fp+-32]
+set 1,%l3
+mov %l3,%l7
+mov %l3,%i4
+mov %g0,%i5
+ba .L528; nop
+.L525:
+set .L529,%l3
+ld [%l3],%f31
+ld [%fp+-32],%f30
+fmuls %f31,%f30,%f31
+st %f31,[%fp+-32]
+sll %i4,1,%l3
+or %l3,%l7,%i4
+.L526:
+add %i5,1,%i5
+.L528:
+ld [%i0+12],%l3
+sub %l3,2,%l3
+cmp %i5,%l3; bl .L525; nop
+st %i4,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%fp+-84]
+ld [%fp+-32],%f31
+ld [%fp+-84],%f30
+fsubs %f31,%f30,%f30
+fdivs %f30,%f31,%f31
+st %f31,[%fp+-32]
+ld [%fp+-32],%f31
+fstod %f31,%f30
+set .L416,%l3
+ld2 [%l3],%f28
+ld [%i0+28],%f27
+fstod %f27,%f26
+fmuld %f28,%f26,%f28
+fcmped %f30,%f28; nop; fbule .L530; nop
+ld [%fp+-76],%l3
+add %l3,2,%l3
+st %l3,[%fp+-76]
+ld [%i0+44],%l3
+cmp %l3,0; be .L532; nop
+set .520,%o0
+set 2,%o1
+call printf; nop
+.L532:
+.L530:
+set 125,%l5
+set 125,%l4
+set 125,%l3
+st %l3,[%fp+-48]
+set 15625,%l3
+st %l3,[%fp+-68]
+set 125,%l3
+st %l3,[%fp+-52]
+set 15625,%l3
+st %l3,[%fp+-72]
+set 125,%l6
+set 15625,%l3
+st %l3,[%fp+-80]
+set .L534,%l3
+ld [%l3],%f31
+st %f31,[%fp+-44]
+set .L535,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-64]
+set .L536,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+mov %g0,%i5
+.L537:
+add -28,%fp,%l3
+stb %g0,[%i5+%l3]
+.L538:
+add %i5,1,%i5
+cmp %i5,28; bl .L537; nop
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+smul %l3,%l3,%l3
+ld [%fp+-68],%l2
+cmp %l3,%l2; be .L541; nop
+set 1,%l3
+stb %l3,[%fp+-28]
+.L541:
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+smul %l2,%l3,%l3
+ld [%fp+-68],%l2
+cmp %l3,%l2; be .L543; nop
+set 1,%l3
+stb %l3,[%fp+-27]
+.L543:
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+smul %l3,%l3,%l3
+ld [%fp+-68],%l2
+cmp %l3,%l2; be .L546; nop
+set 1,%l3
+stb %l3,[%fp+-26]
+.L546:
+ld [%fp+-48],%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+smul %l2,%l3,%l3
+ld [%fp+-68],%l2
+cmp %l3,%l2; be .L549; nop
+set 1,%l3
+stb %l3,[%fp+-25]
+.L549:
+ld [%fp+-48],%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+smul %l2,%l3,%l3
+ld [%fp+-68],%l2
+cmp %l3,%l2; be .L552; nop
+set 1,%l3
+stb %l3,[%fp+-24]
+.L552:
+ld [%fp+-48],%l3
+smul %l3,%l3,%l3
+ld [%fp+-68],%l2
+cmp %l3,%l2; be .L555; nop
+set 1,%l3
+stb %l3,[%fp+-23]
+.L555:
+ld [%fp+-52],%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+umul %l2,%l3,%l3
+ld [%fp+-72],%l2
+cmp %l3,%l2; be .L558; nop
+set 1,%l3
+stb %l3,[%fp+-22]
+.L558:
+ld [%fp+-52],%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+umul %l2,%l3,%l3
+ld [%fp+-72],%l2
+cmp %l3,%l2; be .L561; nop
+set 1,%l3
+stb %l3,[%fp+-21]
+.L561:
+ld [%fp+-52],%l3
+ld [%fp+-48],%l2
+umul %l2,%l3,%l3
+ld [%fp+-72],%l2
+cmp %l3,%l2; be .L564; nop
+set 1,%l3
+stb %l3,[%fp+-20]
+.L564:
+ld [%fp+-52],%l3
+umul %l3,%l3,%l3
+ld [%fp+-72],%l2
+cmp %l3,%l2; be .L567; nop
+set 1,%l3
+stb %l3,[%fp+-19]
+.L567:
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+smul %l3,%l6,%l3
+ld [%fp+-80],%l2
+cmp %l3,%l2; be .L570; nop
+set 1,%l3
+stb %l3,[%fp+-18]
+.L570:
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+smul %l3,%l6,%l3
+ld [%fp+-80],%l2
+cmp %l3,%l2; be .L573; nop
+set 1,%l3
+stb %l3,[%fp+-17]
+.L573:
+ld [%fp+-48],%l3
+smul %l3,%l6,%l3
+ld [%fp+-80],%l2
+cmp %l3,%l2; be .L576; nop
+set 1,%l3
+stb %l3,[%fp+-16]
+.L576:
+mov %l6,%l3
+ld [%fp+-52],%l2
+umul %l2,%l3,%l3
+ld [%fp+-72],%l2
+cmp %l3,%l2; be .L579; nop
+set 1,%l3
+stb %l3,[%fp+-15]
+.L579:
+smul %l6,%l6,%l3
+ld [%fp+-80],%l2
+cmp %l3,%l2; be .L582; nop
+set 1,%l3
+stb %l3,[%fp+-14]
+.L582:
+ld [%fp+-44],%f31
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fmuls %f31,%f30,%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L585; nop
+set 1,%l3
+stb %l3,[%fp+-13]
+.L585:
+ld [%fp+-44],%f31
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fmuls %f31,%f30,%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L588; nop
+set 1,%l3
+stb %l3,[%fp+-12]
+.L588:
+ld [%fp+-44],%f31
+ld [%fp+-48],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fmuls %f31,%f30,%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L591; nop
+set 1,%l3
+stb %l3,[%fp+-11]
+.L591:
+ld [%fp+-52],%l3
+ld [%fp+-44],%f31
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fdtos %f28,%f30
+fmuls %f31,%f30,%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L594; nop
+set 1,%l3
+stb %l3,[%fp+-10]
+.L594:
+ld [%fp+-44],%f31
+st %l6,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fmuls %f31,%f30,%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L598; nop
+set 1,%l3
+stb %l3,[%fp+-9]
+.L598:
+ld [%fp+-44],%f31
+fmuls %f31,%f31,%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L601; nop
+set 1,%l3
+stb %l3,[%fp+-8]
+.L601:
+ldd [%fp+-64],%f30
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L604; nop
+set 1,%l3
+stb %l3,[%fp+-7]
+.L604:
+ldd [%fp+-64],%f30
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L607; nop
+set 1,%l3
+stb %l3,[%fp+-6]
+.L607:
+ldd [%fp+-64],%f30
+ld [%fp+-48],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L610; nop
+set 1,%l3
+stb %l3,[%fp+-5]
+.L610:
+ld [%fp+-52],%l3
+ldd [%fp+-64],%f30
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fmuld %f30,%f28,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L613; nop
+set 1,%l3
+stb %l3,[%fp+-4]
+.L613:
+ldd [%fp+-64],%f30
+st %l6,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L616; nop
+set 1,%l3
+stb %l3,[%fp+-3]
+.L616:
+ldd [%fp+-64],%f30
+ld [%fp+-44],%f29
+fstod %f29,%f28
+fmuld %f30,%f28,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L619; nop
+set 1,%l3
+stb %l3,[%fp+-2]
+.L619:
+ldd [%fp+-64],%f30
+fmuld %f30,%f30,%f30
+ldd [%fp+-40],%f28
+fcmped %f30,%f28; nop; fbue .L622; nop
+set 1,%l3
+stb %l3,[%fp+-1]
+.L622:
+mov %g0,%i3
+mov %g0,%i5
+.L625:
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+add -28,%fp,%l2
+ldsb [%i5+%l2],%l2
+add %l3,%l2,%l3
+mov %l3,%i3
+.L626:
+add %i5,1,%i5
+cmp %i5,28; bl .L625; nop
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; be .L629; nop
+ld [%fp+-76],%l3
+add %l3,4,%l3
+st %l3,[%fp+-76]
+ld [%i0+44],%l3
+cmp %l3,0; be .L631; nop
+set .520,%o0
+set 4,%o1
+call printf; nop
+set .L633,%o0
+call printf; nop
+mov %g0,%i5
+.L634:
+set .L638,%o0
+add -28,%fp,%l3
+ldsb [%i5+%l3],%o1
+call printf; nop
+.L635:
+add %i5,1,%i5
+cmp %i5,28; bl .L634; nop
+set .L639,%o0
+call printf; nop
+.L631:
+.L629:
+set 32768,%l6
+mov %l6,%l3
+set 0x8000,%l2
+cmp %l3,%l2; bleu .L640; nop
+ld [%fp+-76],%l3
+add %l3,8,%l3
+st %l3,[%fp+-76]
+ld [%i0+44],%l3
+cmp %l3,0; be .L642; nop
+set .520,%o0
+set 8,%o1
+call printf; nop
+.L642:
+.L640:
+ld [%fp+-76],%i0
+.L519:
+ret; restore
+.type s626,#function
+.size s626,.-s626
+.section ".data"
+.type .645,#object
+.align 1
+.645:
+.byte 115
+.byte 55
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .645,10
+.type .646,#object
+.size .646,8
+.align 1
+.646:
+.byte 115
+.byte 55
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.type .647,#object
+.size .647,1
+.align 1
+.647:
+.byte 0x71
+.global s71
+.section ".text"
+.align 4
+s71:
+save %sp,-136,%sp
+set .646,%i5
+add %i0,60,%i4
+mov %g0,%i3
+.L648:
+.L649:
+mov %i4,%l7
+add %l7,1,%i4
+mov %i5,%l6
+add %l6,1,%i5
+ldsb [%l6],%l6
+stb %l6,[%l7]
+sll %l6,8*(4-1),%l7; sra %l7,8*(4-1),%l7
+cmp %l7,0; bne .L648; nop
+set .L653,%l7
+ldsb [%l7],%l7
+set .647,%l6
+ldsb [%l6],%l6
+cmp %l7,%l6; be .L651; nop
+add %i3,1,%i3
+ld [%i0+44],%l7
+cmp %l7,0; be .L654; nop
+set .645,%o0
+set 1,%o1
+call printf; nop
+.L654:
+.L651:
+ba .L656; nop
+add %i3,2,%i3
+ld [%i0+44],%l7
+cmp %l7,0; be .L658; nop
+set .645,%o0
+set 2,%o1
+call printf; nop
+.L658:
+.L656:
+set 1942,%l7
+st %l7,[%fp+-20]
+ld [%fp+-20],%l7
+cmp %l7,1942; bne .L666; nop
+ld [%fp+-20],%l7
+ld [%fp+-20],%l6
+cmp %l7,%l6; be .L661; nop
+.L666:
+add %i3,4,%i3
+ld [%i0+44],%l7
+cmp %l7,0; be .L667; nop
+set .645,%o0
+set 4,%o1
+call printf; nop
+.L667:
+.L661:
+set -5,%o0
+call McCarthy; nop
+cmp %o0,91; be .L669; nop
+add %i3,8,%i3
+ld [%i0+44],%l7
+cmp %l7,0; be .L671; nop
+set .645,%o0
+set 8,%o1
+call printf; nop
+.L671:
+.L669:
+set 2,%i2
+set 3,%l7
+st %l7,[%fp+-44]
+add -44,%fp,%i1
+mov %i2,%o0
+mov %i1,%o1
+call clobber; nop
+cmp %i2,2; bne .L675; nop
+ld [%fp+-44],%l7
+cmp %l7,2; be .L673; nop
+.L675:
+add %i3,16,%i3
+ld [%i0+44],%l7
+cmp %l7,0; be .L676; nop
+set .645,%o0
+set 16,%o1
+call printf; nop
+.L676:
+.L673:
+ld [%i0+32],%f31
+fcmpes %f31,%f31; nop; fbue .L678; nop
+add %i3,32,%i3
+ld [%i0+44],%l7
+cmp %l7,0; be .L680; nop
+set .645,%o0
+set 32,%o1
+call printf; nop
+.L680:
+.L678:
+mov %i3,%i0
+.L644:
+ret; restore
+.type s71,#function
+.size s71,.-s71
+.global McCarthy
+.align 4
+McCarthy:
+save %sp,-96,%sp
+cmp %i0,100; ble .L683; nop
+sub %i0,10,%i0
+ba .L682; nop
+.L683:
+add %i0,11,%o0
+call McCarthy; nop
+mov %o0,%i5
+call McCarthy; nop
+mov %o0,%i0
+.L682:
+ret; restore
+.type McCarthy,#function
+.size McCarthy,.-McCarthy
+.global clobber
+.align 4
+clobber:
+set 3,%o0
+set 2,%o5
+st %o5,[%o1]
+mov %g0,%o0
+.L685:
+retl; nop
+.type clobber,#function
+.size clobber,.-clobber
+.section ".data"
+.type .687,#object
+.align 1
+.687:
+.byte 76
+.byte 111
+.byte 99
+.byte 97
+.byte 108
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.size .687,17
+.type .688,#object
+.align 1
+.688:
+.byte 115
+.byte 55
+.byte 49
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .688,11
+.type .689,#object
+.size .689,8
+.align 1
+.689:
+.byte 115
+.byte 55
+.byte 49
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s714
+.section ".text"
+.align 4
+s714:
+save %sp,-184,%sp
+set .689,%l3
+st %l3,[%fp+-44]
+add %i0,60,%l3
+st %l3,[%fp+-48]
+st %g0,[%fp+-52]
+mov %g0,%i4
+ld [%i0+48],%i5
+.L690:
+.L691:
+ld [%fp+-48],%l3
+add %l3,1,%l2
+st %l2,[%fp+-48]
+ld [%fp+-44],%l2
+add %l2,1,%l1
+st %l1,[%fp+-44]
+ldsb [%l2],%l2
+stb %l2,[%l3]
+sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; bne .L690; nop
+set 5,%i3
+set 2,%l5
+mov %l5,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L693; nop
+set 1,%i4
+cmp %i5,0; be .L695; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L695:
+.L693:
+set 5,%i3
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L697; nop
+set 2,%i4
+cmp %i5,0; be .L699; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L699:
+.L697:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L701; nop
+set 3,%i4
+cmp %i5,0; be .L703; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L703:
+.L701:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L705; nop
+set 4,%i4
+cmp %i5,0; be .L707; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L707:
+.L705:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L709; nop
+set 5,%i4
+cmp %i5,0; be .L711; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L711:
+.L709:
+set 5,%i3
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-28],%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L713; nop
+set 6,%i4
+cmp %i5,0; be .L715; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L715:
+.L713:
+set 5,%i3
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-40],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L717; nop
+set 7,%i4
+cmp %i5,0; be .L719; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L719:
+.L717:
+set 5,%i2
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L721; nop
+set 8,%i4
+cmp %i5,0; be .L723; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L723:
+.L721:
+set 5,%i2
+set 2,%l4
+mov %l4,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L725; nop
+set 9,%i4
+cmp %i5,0; be .L727; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L727:
+.L725:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L729; nop
+set 10,%i4
+cmp %i5,0; be .L731; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L731:
+.L729:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L733; nop
+set 11,%i4
+cmp %i5,0; be .L735; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L735:
+.L733:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L737; nop
+set 12,%i4
+cmp %i5,0; be .L739; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L739:
+.L737:
+set 5,%i2
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-28],%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L741; nop
+set 13,%i4
+cmp %i5,0; be .L743; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L743:
+.L741:
+set 5,%i2
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-40],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L745; nop
+set 14,%i4
+cmp %i5,0; be .L747; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L747:
+.L745:
+set 5,%i1
+set 2,%l5
+sll %l5,8*(4-1),%i1; sra %i1,8*(4-1),%i1
+cmp %i1,2; be .L749; nop
+set 15,%i4
+cmp %i5,0; be .L751; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L751:
+.L749:
+set 5,%i1
+set 2,%l4
+sll %l4,8*(4-2),%i1; sra %i1,8*(4-2),%i1
+cmp %i1,2; be .L753; nop
+set 16,%i4
+cmp %i5,0; be .L755; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L755:
+.L753:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%i1
+cmp %i1,2; be .L757; nop
+set 17,%i4
+cmp %i5,0; be .L759; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L759:
+.L757:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%i1
+cmp %i1,2; be .L761; nop
+set 18,%i4
+cmp %i5,0; be .L763; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L763:
+.L761:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+mov %l3,%i1
+cmp %i1,2; be .L765; nop
+set 19,%i4
+cmp %i5,0; be .L767; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L767:
+.L765:
+set 5,%i1
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-28],%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,2; be .L769; nop
+set 20,%i4
+cmp %i5,0; be .L771; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L771:
+.L769:
+set 5,%i1
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-40],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,2; be .L773; nop
+set 21,%i4
+cmp %i5,0; be .L775; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L775:
+.L773:
+set 5,%l7
+set 2,%l5
+sll %l5,8*(4-1),%l7; sra %l7,8*(4-1),%l7
+cmp %l7,2; be .L777; nop
+set 22,%i4
+cmp %i5,0; be .L779; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L779:
+.L777:
+set 5,%l7
+set 2,%l4
+sll %l4,8*(4-2),%l7; sra %l7,8*(4-2),%l7
+cmp %l7,2; be .L781; nop
+set 23,%i4
+cmp %i5,0; be .L783; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L783:
+.L781:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l7
+cmp %l7,2; be .L785; nop
+set 24,%i4
+cmp %i5,0; be .L787; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L787:
+.L785:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l7
+cmp %l7,2; be .L789; nop
+set 25,%i4
+cmp %i5,0; be .L791; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L791:
+.L789:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+mov %l3,%l7
+cmp %l7,2; be .L793; nop
+set 26,%i4
+cmp %i5,0; be .L795; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L795:
+.L793:
+set 5,%l7
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-28],%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,2; be .L797; nop
+set 27,%i4
+cmp %i5,0; be .L799; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L799:
+.L797:
+set 5,%l7
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-40],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,2; be .L801; nop
+set 28,%i4
+cmp %i5,0; be .L803; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L803:
+.L801:
+set 5,%l6
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+mov %l3,%l6
+set 2,%l3
+cmp %l6,%l3; be .L805; nop
+set 29,%i4
+cmp %i5,0; be .L807; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L807:
+.L805:
+set 5,%l6
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+mov %l3,%l6
+set 2,%l3
+cmp %l6,%l3; be .L809; nop
+set 30,%i4
+cmp %i5,0; be .L811; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L811:
+.L809:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+mov %l3,%l6
+set 2,%l3
+cmp %l6,%l3; be .L813; nop
+set 31,%i4
+cmp %i5,0; be .L815; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L815:
+.L813:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+mov %l3,%l6
+set 2,%l3
+cmp %l6,%l3; be .L817; nop
+set 32,%i4
+cmp %i5,0; be .L819; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L819:
+.L817:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l6
+cmp %l6,%l3; be .L821; nop
+set 33,%i4
+cmp %i5,0; be .L823; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L823:
+.L821:
+set 5,%l6
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-28],%f31
+set .L828,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbul .L826; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-56]
+ba .L827; nop
+.L826:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-56]
+.L827:
+ld [%fp+-56],%l6
+set 2,%l3
+cmp %l6,%l3; be .L829; nop
+set 34,%i4
+cmp %i5,0; be .L831; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L831:
+.L829:
+set 5,%l6
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-40],%f30
+set .L836,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L834; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-60]
+ba .L835; nop
+.L834:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-60]
+.L835:
+ld [%fp+-60],%l6
+set 2,%l3
+cmp %l6,%l3; be .L837; nop
+set 35,%i4
+cmp %i5,0; be .L839; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L839:
+.L837:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L529,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L842; nop
+set 36,%i4
+cmp %i5,0; be .L844; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L844:
+.L842:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L529,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L846; nop
+set 37,%i4
+cmp %i5,0; be .L848; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L848:
+.L846:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L529,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L850; nop
+set 38,%i4
+cmp %i5,0; be .L852; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L852:
+.L850:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L529,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L854; nop
+set 39,%i4
+cmp %i5,0; be .L856; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L856:
+.L854:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+set .L596,%l2
+ld2 [%l2],%f30
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+fdtos %f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L529,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L858; nop
+set 40,%i4
+cmp %i5,0; be .L860; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L860:
+.L858:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-28],%f30
+st %f30,[%fp+-16]
+ld [%fp+-16],%f30
+fcmpes %f30,%f31; nop; fbue .L862; nop
+set 41,%i4
+cmp %i5,0; be .L864; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L864:
+.L862:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-40],%f30
+fdtos %f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L529,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L866; nop
+set 42,%i4
+cmp %i5,0; be .L868; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L868:
+.L866:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L416,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L871; nop
+set 43,%i4
+cmp %i5,0; be .L873; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L873:
+.L871:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L416,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L875; nop
+set 44,%i4
+cmp %i5,0; be .L877; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L877:
+.L875:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L416,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L879; nop
+set 45,%i4
+cmp %i5,0; be .L881; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L881:
+.L879:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L416,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L883; nop
+set 46,%i4
+cmp %i5,0; be .L885; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L885:
+.L883:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+set .L596,%l2
+ld2 [%l2],%f30
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L416,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L887; nop
+set 47,%i4
+cmp %i5,0; be .L889; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L889:
+.L887:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-28],%f31
+fstod %f31,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L416,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L891; nop
+set 48,%i4
+cmp %i5,0; be .L893; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L893:
+.L891:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-40],%f28
+std %f28,[%fp+-24]
+ldd [%fp+-24],%f28
+fcmped %f28,%f30; nop; fbue .L895; nop
+set 49,%i4
+cmp %i5,0; be .L897; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L897:
+.L895:
+set 5,%i3
+set 2,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+add %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,7; be .L899; nop
+set 50,%i4
+cmp %i5,0; be .L901; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L901:
+.L899:
+set 5,%i3
+set 2,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+add %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,7; be .L903; nop
+set 51,%i4
+cmp %i5,0; be .L905; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L905:
+.L903:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+add %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,7; be .L907; nop
+set 52,%i4
+cmp %i5,0; be .L909; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L909:
+.L907:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+add %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,7; be .L911; nop
+set 53,%i4
+cmp %i5,0; be .L913; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L913:
+.L911:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+add %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,7; be .L915; nop
+set 54,%i4
+cmp %i5,0; be .L917; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L917:
+.L915:
+set 5,%i3
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fadds %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,7; be .L919; nop
+set 55,%i4
+cmp %i5,0; be .L921; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L921:
+.L919:
+set 5,%i3
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+faddd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,7; be .L923; nop
+set 56,%i4
+cmp %i5,0; be .L925; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L925:
+.L923:
+set 5,%i2
+set 2,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+add %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,7; be .L927; nop
+set 57,%i4
+cmp %i5,0; be .L929; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L929:
+.L927:
+set 5,%i2
+set 2,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+add %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,7; be .L931; nop
+set 58,%i4
+cmp %i5,0; be .L933; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L933:
+.L931:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+add %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,7; be .L935; nop
+set 59,%i4
+cmp %i5,0; be .L937; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L937:
+.L935:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+add %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,7; be .L939; nop
+set 60,%i4
+cmp %i5,0; be .L941; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L941:
+.L939:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+add %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,7; be .L943; nop
+set 61,%i4
+cmp %i5,0; be .L945; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L945:
+.L943:
+set 5,%i2
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fadds %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,7; be .L947; nop
+set 62,%i4
+cmp %i5,0; be .L949; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L949:
+.L947:
+set 5,%i2
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+faddd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,7; be .L951; nop
+set 63,%i4
+cmp %i5,0; be .L953; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L953:
+.L951:
+set 5,%i1
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+add %i1,%l3,%i1
+cmp %i1,7; be .L955; nop
+set 64,%i4
+cmp %i5,0; be .L957; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L957:
+.L955:
+set 5,%i1
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+add %i1,%l3,%i1
+cmp %i1,7; be .L959; nop
+set 65,%i4
+cmp %i5,0; be .L961; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L961:
+.L959:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+add %i1,%l3,%i1
+cmp %i1,7; be .L963; nop
+set 66,%i4
+cmp %i5,0; be .L965; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L965:
+.L963:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+add %i1,%l3,%i1
+cmp %i1,7; be .L967; nop
+set 67,%i4
+cmp %i5,0; be .L969; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L969:
+.L967:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-12]
+mov %i1,%l3
+ld [%fp+-12],%l2
+add %l3,%l2,%l3
+mov %l3,%i1
+cmp %i1,7; be .L971; nop
+set 68,%i4
+cmp %i5,0; be .L973; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L973:
+.L971:
+set 5,%i1
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+st %i1,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fadds %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,7; be .L975; nop
+set 69,%i4
+cmp %i5,0; be .L977; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L977:
+.L975:
+set 5,%i1
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+st %i1,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+faddd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,7; be .L979; nop
+set 70,%i4
+cmp %i5,0; be .L981; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L981:
+.L979:
+set 5,%l7
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+add %l7,%l3,%l7
+cmp %l7,7; be .L983; nop
+set 71,%i4
+cmp %i5,0; be .L985; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L985:
+.L983:
+set 5,%l7
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+add %l7,%l3,%l7
+cmp %l7,7; be .L987; nop
+set 72,%i4
+cmp %i5,0; be .L989; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L989:
+.L987:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+add %l7,%l3,%l7
+cmp %l7,7; be .L991; nop
+set 73,%i4
+cmp %i5,0; be .L993; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L993:
+.L991:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+add %l7,%l3,%l7
+cmp %l7,7; be .L995; nop
+set 74,%i4
+cmp %i5,0; be .L997; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L997:
+.L995:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-12]
+mov %l7,%l3
+ld [%fp+-12],%l2
+add %l3,%l2,%l3
+mov %l3,%l7
+cmp %l7,7; be .L999; nop
+set 75,%i4
+cmp %i5,0; be .L1001; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1001:
+.L999:
+set 5,%l7
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+st %l7,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fadds %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,7; be .L1003; nop
+set 76,%i4
+cmp %i5,0; be .L1005; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1005:
+.L1003:
+set 5,%l7
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+st %l7,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+faddd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,7; be .L1007; nop
+set 77,%i4
+cmp %i5,0; be .L1009; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1009:
+.L1007:
+set 5,%l6
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+add %l6,%l3,%l6
+set 7,%l3
+cmp %l6,%l3; be .L1011; nop
+set 78,%i4
+cmp %i5,0; be .L1013; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1013:
+.L1011:
+set 5,%l6
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+add %l6,%l3,%l6
+set 7,%l3
+cmp %l6,%l3; be .L1015; nop
+set 79,%i4
+cmp %i5,0; be .L1017; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1017:
+.L1015:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+add %l6,%l3,%l6
+set 7,%l3
+cmp %l6,%l3; be .L1019; nop
+set 80,%i4
+cmp %i5,0; be .L1021; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1021:
+.L1019:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+add %l6,%l3,%l6
+set 7,%l3
+cmp %l6,%l3; be .L1023; nop
+set 81,%i4
+cmp %i5,0; be .L1025; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1025:
+.L1023:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+add %l6,%l3,%l6
+set 7,%l3
+cmp %l6,%l3; be .L1027; nop
+set 82,%i4
+cmp %i5,0; be .L1029; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1029:
+.L1027:
+set 5,%l6
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+set .L596,%l3
+ld2 [%l3],%f30
+srl %l6,1,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l3
+and %l6,%l3,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+fdtos %f30,%f31
+ld [%fp+-28],%f30
+fadds %f31,%f30,%f31
+set .L828,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbul .L1032; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-64]
+ba .L1033; nop
+.L1032:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-64]
+.L1033:
+ld [%fp+-64],%l6
+set 7,%l3
+cmp %l6,%l3; be .L1034; nop
+set 83,%i4
+cmp %i5,0; be .L1036; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1036:
+.L1034:
+set 5,%l6
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+set .L596,%l3
+ld2 [%l3],%f30
+srl %l6,1,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l3
+and %l6,%l3,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+ldd [%fp+-40],%f28
+faddd %f30,%f28,%f30
+set .L836,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L1039; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-68]
+ba .L1040; nop
+.L1039:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-68]
+.L1040:
+ld [%fp+-68],%l6
+set 7,%l3
+cmp %l6,%l3; be .L1041; nop
+set 84,%i4
+cmp %i5,0; be .L1043; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1043:
+.L1041:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l5
+ld [%fp+-16],%f31
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fadds %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1047,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1045; nop
+set 85,%i4
+cmp %i5,0; be .L1048; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1048:
+.L1045:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l4
+ld [%fp+-16],%f31
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fadds %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1047,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1050; nop
+set 86,%i4
+cmp %i5,0; be .L1052; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1052:
+.L1050:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-16],%f31
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fadds %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1047,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1054; nop
+set 87,%i4
+cmp %i5,0; be .L1056; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1056:
+.L1054:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-16],%f31
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fadds %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1047,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1058; nop
+set 88,%i4
+cmp %i5,0; be .L1060; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1060:
+.L1058:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+ld [%fp+-16],%f31
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fdtos %f28,%f30
+fadds %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1047,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1062; nop
+set 89,%i4
+cmp %i5,0; be .L1064; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1064:
+.L1062:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-16],%f31
+ld [%fp+-28],%f30
+fadds %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1047,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1066; nop
+set 90,%i4
+cmp %i5,0; be .L1068; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1068:
+.L1066:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+faddd %f30,%f28,%f30
+fdtos %f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1047,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1070; nop
+set 91,%i4
+cmp %i5,0; be .L1072; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1072:
+.L1070:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l5
+ldd [%fp+-24],%f30
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1076,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1074; nop
+set 92,%i4
+cmp %i5,0; be .L1077; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1077:
+.L1074:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l4
+ldd [%fp+-24],%f30
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1076,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1079; nop
+set 93,%i4
+cmp %i5,0; be .L1081; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1081:
+.L1079:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-4]
+ldd [%fp+-24],%f30
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1076,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1083; nop
+set 94,%i4
+cmp %i5,0; be .L1085; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1085:
+.L1083:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-8]
+ldd [%fp+-24],%f30
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1076,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1087; nop
+set 95,%i4
+cmp %i5,0; be .L1089; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1089:
+.L1087:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+ldd [%fp+-24],%f30
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+faddd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1076,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1091; nop
+set 96,%i4
+cmp %i5,0; be .L1093; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1093:
+.L1091:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ldd [%fp+-24],%f30
+ld [%fp+-28],%f29
+fstod %f29,%f28
+faddd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1076,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1095; nop
+set 97,%i4
+cmp %i5,0; be .L1097; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1097:
+.L1095:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-24],%f30
+ldd [%fp+-40],%f28
+faddd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1076,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1099; nop
+set 98,%i4
+cmp %i5,0; be .L1101; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1101:
+.L1099:
+set 5,%i3
+set 2,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sub %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,3; be .L1103; nop
+set 99,%i4
+cmp %i5,0; be .L1105; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1105:
+.L1103:
+set 5,%i3
+set 2,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sub %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,3; be .L1107; nop
+set 100,%i4
+cmp %i5,0; be .L1109; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1109:
+.L1107:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+sub %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,3; be .L1111; nop
+set 101,%i4
+cmp %i5,0; be .L1113; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1113:
+.L1111:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+sub %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,3; be .L1115; nop
+set 102,%i4
+cmp %i5,0; be .L1117; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1117:
+.L1115:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+sub %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,3; be .L1119; nop
+set 103,%i4
+cmp %i5,0; be .L1121; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1121:
+.L1119:
+set 5,%i3
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fsubs %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,3; be .L1123; nop
+set 104,%i4
+cmp %i5,0; be .L1125; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1125:
+.L1123:
+set 5,%i3
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fsubd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,3; be .L1127; nop
+set 105,%i4
+cmp %i5,0; be .L1129; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1129:
+.L1127:
+set 5,%i2
+set 2,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sub %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,3; be .L1131; nop
+set 106,%i4
+cmp %i5,0; be .L1133; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1133:
+.L1131:
+set 5,%i2
+set 2,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sub %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,3; be .L1135; nop
+set 107,%i4
+cmp %i5,0; be .L1137; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1137:
+.L1135:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+sub %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,3; be .L1139; nop
+set 108,%i4
+cmp %i5,0; be .L1141; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1141:
+.L1139:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+sub %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,3; be .L1143; nop
+set 109,%i4
+cmp %i5,0; be .L1145; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1145:
+.L1143:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+sub %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,3; be .L1147; nop
+set 110,%i4
+cmp %i5,0; be .L1149; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1149:
+.L1147:
+set 5,%i2
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fsubs %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,3; be .L1151; nop
+set 111,%i4
+cmp %i5,0; be .L1153; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1153:
+.L1151:
+set 5,%i2
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fsubd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,3; be .L1155; nop
+set 112,%i4
+cmp %i5,0; be .L1157; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1157:
+.L1155:
+set 5,%i1
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sub %i1,%l3,%i1
+cmp %i1,3; be .L1159; nop
+set 113,%i4
+cmp %i5,0; be .L1161; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1161:
+.L1159:
+set 5,%i1
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sub %i1,%l3,%i1
+cmp %i1,3; be .L1163; nop
+set 114,%i4
+cmp %i5,0; be .L1165; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1165:
+.L1163:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sub %i1,%l3,%i1
+cmp %i1,3; be .L1167; nop
+set 115,%i4
+cmp %i5,0; be .L1169; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1169:
+.L1167:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sub %i1,%l3,%i1
+cmp %i1,3; be .L1171; nop
+set 116,%i4
+cmp %i5,0; be .L1173; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1173:
+.L1171:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-12]
+mov %i1,%l3
+ld [%fp+-12],%l2
+sub %l3,%l2,%l3
+mov %l3,%i1
+cmp %i1,3; be .L1175; nop
+set 117,%i4
+cmp %i5,0; be .L1177; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1177:
+.L1175:
+set 5,%i1
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+st %i1,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fsubs %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,3; be .L1179; nop
+set 118,%i4
+cmp %i5,0; be .L1181; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1181:
+.L1179:
+set 5,%i1
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+st %i1,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fsubd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,3; be .L1183; nop
+set 119,%i4
+cmp %i5,0; be .L1185; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1185:
+.L1183:
+set 5,%l7
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sub %l7,%l3,%l7
+cmp %l7,3; be .L1187; nop
+set 120,%i4
+cmp %i5,0; be .L1189; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1189:
+.L1187:
+set 5,%l7
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sub %l7,%l3,%l7
+cmp %l7,3; be .L1191; nop
+set 121,%i4
+cmp %i5,0; be .L1193; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1193:
+.L1191:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sub %l7,%l3,%l7
+cmp %l7,3; be .L1195; nop
+set 122,%i4
+cmp %i5,0; be .L1197; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1197:
+.L1195:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sub %l7,%l3,%l7
+cmp %l7,3; be .L1199; nop
+set 123,%i4
+cmp %i5,0; be .L1201; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1201:
+.L1199:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-12]
+mov %l7,%l3
+ld [%fp+-12],%l2
+sub %l3,%l2,%l3
+mov %l3,%l7
+cmp %l7,3; be .L1203; nop
+set 124,%i4
+cmp %i5,0; be .L1205; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1205:
+.L1203:
+set 5,%l7
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+st %l7,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fsubs %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,3; be .L1207; nop
+set 125,%i4
+cmp %i5,0; be .L1209; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1209:
+.L1207:
+set 5,%l7
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+st %l7,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fsubd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,3; be .L1211; nop
+set 126,%i4
+cmp %i5,0; be .L1213; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1213:
+.L1211:
+set 5,%l6
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sub %l6,%l3,%l6
+set 3,%l3
+cmp %l6,%l3; be .L1215; nop
+set 127,%i4
+cmp %i5,0; be .L1217; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1217:
+.L1215:
+set 5,%l6
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sub %l6,%l3,%l6
+set 3,%l3
+cmp %l6,%l3; be .L1219; nop
+set 128,%i4
+cmp %i5,0; be .L1221; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1221:
+.L1219:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sub %l6,%l3,%l6
+set 3,%l3
+cmp %l6,%l3; be .L1223; nop
+set 129,%i4
+cmp %i5,0; be .L1225; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1225:
+.L1223:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sub %l6,%l3,%l6
+set 3,%l3
+cmp %l6,%l3; be .L1227; nop
+set 130,%i4
+cmp %i5,0; be .L1229; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1229:
+.L1227:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+sub %l6,%l3,%l6
+set 3,%l3
+cmp %l6,%l3; be .L1231; nop
+set 131,%i4
+cmp %i5,0; be .L1233; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1233:
+.L1231:
+set 5,%l6
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+set .L596,%l3
+ld2 [%l3],%f30
+srl %l6,1,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l3
+and %l6,%l3,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+fdtos %f30,%f31
+ld [%fp+-28],%f30
+fsubs %f31,%f30,%f31
+set .L828,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbul .L1236; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-72]
+ba .L1237; nop
+.L1236:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-72]
+.L1237:
+ld [%fp+-72],%l6
+set 3,%l3
+cmp %l6,%l3; be .L1238; nop
+set 132,%i4
+cmp %i5,0; be .L1240; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1240:
+.L1238:
+set 5,%l6
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+set .L596,%l3
+ld2 [%l3],%f30
+srl %l6,1,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l3
+and %l6,%l3,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+ldd [%fp+-40],%f28
+fsubd %f30,%f28,%f30
+set .L836,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L1243; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-76]
+ba .L1244; nop
+.L1243:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-76]
+.L1244:
+ld [%fp+-76],%l6
+set 3,%l3
+cmp %l6,%l3; be .L1245; nop
+set 133,%i4
+cmp %i5,0; be .L1247; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1247:
+.L1245:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l5
+ld [%fp+-16],%f31
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fsubs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1251,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1249; nop
+set 134,%i4
+cmp %i5,0; be .L1252; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1252:
+.L1249:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l4
+ld [%fp+-16],%f31
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fsubs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1251,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1254; nop
+set 135,%i4
+cmp %i5,0; be .L1256; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1256:
+.L1254:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-16],%f31
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fsubs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1251,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1258; nop
+set 136,%i4
+cmp %i5,0; be .L1260; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1260:
+.L1258:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-16],%f31
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fsubs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1251,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1262; nop
+set 137,%i4
+cmp %i5,0; be .L1264; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1264:
+.L1262:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+ld [%fp+-16],%f31
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fdtos %f28,%f30
+fsubs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1251,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1266; nop
+set 138,%i4
+cmp %i5,0; be .L1268; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1268:
+.L1266:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-16],%f31
+ld [%fp+-28],%f30
+fsubs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1251,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1270; nop
+set 139,%i4
+cmp %i5,0; be .L1272; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1272:
+.L1270:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+fsubd %f30,%f28,%f30
+fdtos %f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1251,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1274; nop
+set 140,%i4
+cmp %i5,0; be .L1276; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1276:
+.L1274:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l5
+ldd [%fp+-24],%f30
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fsubd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1280,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1278; nop
+set 141,%i4
+cmp %i5,0; be .L1281; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1281:
+.L1278:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l4
+ldd [%fp+-24],%f30
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fsubd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1280,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1283; nop
+set 142,%i4
+cmp %i5,0; be .L1285; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1285:
+.L1283:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-4]
+ldd [%fp+-24],%f30
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fsubd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1280,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1287; nop
+set 143,%i4
+cmp %i5,0; be .L1289; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1289:
+.L1287:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-8]
+ldd [%fp+-24],%f30
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fsubd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1280,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1291; nop
+set 144,%i4
+cmp %i5,0; be .L1293; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1293:
+.L1291:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+ldd [%fp+-24],%f30
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fsubd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1280,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1295; nop
+set 145,%i4
+cmp %i5,0; be .L1297; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1297:
+.L1295:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ldd [%fp+-24],%f30
+ld [%fp+-28],%f29
+fstod %f29,%f28
+fsubd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1280,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1299; nop
+set 146,%i4
+cmp %i5,0; be .L1301; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1301:
+.L1299:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-24],%f30
+ldd [%fp+-40],%f28
+fsubd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1280,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1303; nop
+set 147,%i4
+cmp %i5,0; be .L1305; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1305:
+.L1303:
+set 5,%i3
+set 2,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+smul %l2,%l3,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,10; be .L1307; nop
+set 148,%i4
+cmp %i5,0; be .L1309; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1309:
+.L1307:
+set 5,%i3
+set 2,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+smul %l2,%l3,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,10; be .L1311; nop
+set 149,%i4
+cmp %i5,0; be .L1313; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1313:
+.L1311:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+smul %l2,%l3,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,10; be .L1315; nop
+set 150,%i4
+cmp %i5,0; be .L1317; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1317:
+.L1315:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+smul %l2,%l3,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,10; be .L1319; nop
+set 151,%i4
+cmp %i5,0; be .L1321; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1321:
+.L1319:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+umul %l2,%l3,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,10; be .L1323; nop
+set 152,%i4
+cmp %i5,0; be .L1325; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1325:
+.L1323:
+set 5,%i3
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fmuls %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,10; be .L1327; nop
+set 153,%i4
+cmp %i5,0; be .L1329; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1329:
+.L1327:
+set 5,%i3
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fmuld %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,10; be .L1331; nop
+set 154,%i4
+cmp %i5,0; be .L1333; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1333:
+.L1331:
+set 5,%i2
+set 2,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+smul %l2,%l3,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,10; be .L1335; nop
+set 155,%i4
+cmp %i5,0; be .L1337; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1337:
+.L1335:
+set 5,%i2
+set 2,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+smul %l2,%l3,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,10; be .L1339; nop
+set 156,%i4
+cmp %i5,0; be .L1341; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1341:
+.L1339:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+smul %l2,%l3,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,10; be .L1343; nop
+set 157,%i4
+cmp %i5,0; be .L1345; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1345:
+.L1343:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+smul %l2,%l3,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,10; be .L1347; nop
+set 158,%i4
+cmp %i5,0; be .L1349; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1349:
+.L1347:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+umul %l2,%l3,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,10; be .L1351; nop
+set 159,%i4
+cmp %i5,0; be .L1353; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1353:
+.L1351:
+set 5,%i2
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fmuls %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,10; be .L1355; nop
+set 160,%i4
+cmp %i5,0; be .L1357; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1357:
+.L1355:
+set 5,%i2
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fmuld %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,10; be .L1359; nop
+set 161,%i4
+cmp %i5,0; be .L1361; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1361:
+.L1359:
+set 5,%i1
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+smul %l3,%i1,%i1
+cmp %i1,10; be .L1363; nop
+set 162,%i4
+cmp %i5,0; be .L1365; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1365:
+.L1363:
+set 5,%i1
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+smul %l3,%i1,%i1
+cmp %i1,10; be .L1367; nop
+set 163,%i4
+cmp %i5,0; be .L1369; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1369:
+.L1367:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+smul %l3,%i1,%i1
+cmp %i1,10; be .L1371; nop
+set 164,%i4
+cmp %i5,0; be .L1373; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1373:
+.L1371:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+smul %l3,%i1,%i1
+cmp %i1,10; be .L1375; nop
+set 165,%i4
+cmp %i5,0; be .L1377; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1377:
+.L1375:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-12]
+mov %i1,%l3
+ld [%fp+-12],%l2
+umul %l2,%l3,%l3
+mov %l3,%i1
+cmp %i1,10; be .L1379; nop
+set 166,%i4
+cmp %i5,0; be .L1381; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1381:
+.L1379:
+set 5,%i1
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+st %i1,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fmuls %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,10; be .L1383; nop
+set 167,%i4
+cmp %i5,0; be .L1385; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1385:
+.L1383:
+set 5,%i1
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+st %i1,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fmuld %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,10; be .L1387; nop
+set 168,%i4
+cmp %i5,0; be .L1389; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1389:
+.L1387:
+set 5,%l7
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+smul %l3,%l7,%l7
+cmp %l7,10; be .L1391; nop
+set 169,%i4
+cmp %i5,0; be .L1393; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1393:
+.L1391:
+set 5,%l7
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+smul %l3,%l7,%l7
+cmp %l7,10; be .L1395; nop
+set 170,%i4
+cmp %i5,0; be .L1397; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1397:
+.L1395:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+smul %l3,%l7,%l7
+cmp %l7,10; be .L1399; nop
+set 171,%i4
+cmp %i5,0; be .L1401; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1401:
+.L1399:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+smul %l3,%l7,%l7
+cmp %l7,10; be .L1403; nop
+set 172,%i4
+cmp %i5,0; be .L1405; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1405:
+.L1403:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-12]
+mov %l7,%l3
+ld [%fp+-12],%l2
+umul %l2,%l3,%l3
+mov %l3,%l7
+cmp %l7,10; be .L1407; nop
+set 173,%i4
+cmp %i5,0; be .L1409; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1409:
+.L1407:
+set 5,%l7
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+st %l7,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fmuls %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,10; be .L1411; nop
+set 174,%i4
+cmp %i5,0; be .L1413; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1413:
+.L1411:
+set 5,%l7
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+st %l7,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fmuld %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,10; be .L1415; nop
+set 175,%i4
+cmp %i5,0; be .L1417; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1417:
+.L1415:
+set 5,%l6
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+umul %l3,%l6,%l6
+set 10,%l3
+cmp %l6,%l3; be .L1419; nop
+set 176,%i4
+cmp %i5,0; be .L1421; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1421:
+.L1419:
+set 5,%l6
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+umul %l3,%l6,%l6
+set 10,%l3
+cmp %l6,%l3; be .L1423; nop
+set 177,%i4
+cmp %i5,0; be .L1425; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1425:
+.L1423:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+umul %l3,%l6,%l6
+set 10,%l3
+cmp %l6,%l3; be .L1427; nop
+set 178,%i4
+cmp %i5,0; be .L1429; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1429:
+.L1427:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+umul %l3,%l6,%l6
+set 10,%l3
+cmp %l6,%l3; be .L1431; nop
+set 179,%i4
+cmp %i5,0; be .L1433; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1433:
+.L1431:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+umul %l3,%l6,%l6
+set 10,%l3
+cmp %l6,%l3; be .L1435; nop
+set 180,%i4
+cmp %i5,0; be .L1437; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1437:
+.L1435:
+set 5,%l6
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+set .L596,%l3
+ld2 [%l3],%f30
+srl %l6,1,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l3
+and %l6,%l3,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+fdtos %f30,%f31
+ld [%fp+-28],%f30
+fmuls %f31,%f30,%f31
+set .L828,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbul .L1440; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-80]
+ba .L1441; nop
+.L1440:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-80]
+.L1441:
+ld [%fp+-80],%l6
+set 10,%l3
+cmp %l6,%l3; be .L1442; nop
+set 181,%i4
+cmp %i5,0; be .L1444; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1444:
+.L1442:
+set 5,%l6
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+set .L596,%l3
+ld2 [%l3],%f30
+srl %l6,1,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l3
+and %l6,%l3,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+ldd [%fp+-40],%f28
+fmuld %f30,%f28,%f30
+set .L836,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L1447; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-84]
+ba .L1448; nop
+.L1447:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-84]
+.L1448:
+ld [%fp+-84],%l6
+set 10,%l3
+cmp %l6,%l3; be .L1449; nop
+set 182,%i4
+cmp %i5,0; be .L1451; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1451:
+.L1449:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l5
+ld [%fp+-16],%f31
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fmuls %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1455,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1453; nop
+set 183,%i4
+cmp %i5,0; be .L1456; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1456:
+.L1453:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l4
+ld [%fp+-16],%f31
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fmuls %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1455,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1458; nop
+set 184,%i4
+cmp %i5,0; be .L1460; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1460:
+.L1458:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-16],%f31
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fmuls %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1455,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1462; nop
+set 185,%i4
+cmp %i5,0; be .L1464; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1464:
+.L1462:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-16],%f31
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fmuls %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1455,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1466; nop
+set 186,%i4
+cmp %i5,0; be .L1468; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1468:
+.L1466:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+ld [%fp+-16],%f31
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fdtos %f28,%f30
+fmuls %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1455,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1470; nop
+set 187,%i4
+cmp %i5,0; be .L1472; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1472:
+.L1470:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-16],%f31
+ld [%fp+-28],%f30
+fmuls %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1455,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1474; nop
+set 188,%i4
+cmp %i5,0; be .L1476; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1476:
+.L1474:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+fmuld %f30,%f28,%f30
+fdtos %f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+set .L1455,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbue .L1478; nop
+set 189,%i4
+cmp %i5,0; be .L1480; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1480:
+.L1478:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l5
+ldd [%fp+-24],%f30
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1484,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1482; nop
+set 190,%i4
+cmp %i5,0; be .L1485; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1485:
+.L1482:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l4
+ldd [%fp+-24],%f30
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1484,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1487; nop
+set 191,%i4
+cmp %i5,0; be .L1489; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1489:
+.L1487:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-4]
+ldd [%fp+-24],%f30
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1484,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1491; nop
+set 192,%i4
+cmp %i5,0; be .L1493; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1493:
+.L1491:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-8]
+ldd [%fp+-24],%f30
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1484,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1495; nop
+set 193,%i4
+cmp %i5,0; be .L1497; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1497:
+.L1495:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+ldd [%fp+-24],%f30
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fmuld %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1484,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1499; nop
+set 194,%i4
+cmp %i5,0; be .L1501; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1501:
+.L1499:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ldd [%fp+-24],%f30
+ld [%fp+-28],%f29
+fstod %f29,%f28
+fmuld %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1484,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1503; nop
+set 195,%i4
+cmp %i5,0; be .L1505; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1505:
+.L1503:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-24],%f30
+ldd [%fp+-40],%f28
+fmuld %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1484,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1507; nop
+set 196,%i4
+cmp %i5,0; be .L1509; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1509:
+.L1507:
+set 5,%i3
+set 2,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L1511; nop
+set 197,%i4
+cmp %i5,0; be .L1513; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1513:
+.L1511:
+set 5,%i3
+set 2,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L1515; nop
+set 198,%i4
+cmp %i5,0; be .L1517; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1517:
+.L1515:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L1519; nop
+set 199,%i4
+cmp %i5,0; be .L1521; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1521:
+.L1519:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L1523; nop
+set 200,%i4
+cmp %i5,0; be .L1525; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1525:
+.L1523:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L1527; nop
+set 201,%i4
+cmp %i5,0; be .L1529; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1529:
+.L1527:
+set 5,%i3
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fdivs %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L1531; nop
+set 202,%i4
+cmp %i5,0; be .L1533; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1533:
+.L1531:
+set 5,%i3
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fdivd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,2; be .L1535; nop
+set 203,%i4
+cmp %i5,0; be .L1537; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1537:
+.L1535:
+set 5,%i2
+set 2,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L1539; nop
+set 204,%i4
+cmp %i5,0; be .L1541; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1541:
+.L1539:
+set 5,%i2
+set 2,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L1543; nop
+set 205,%i4
+cmp %i5,0; be .L1545; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1545:
+.L1543:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L1547; nop
+set 206,%i4
+cmp %i5,0; be .L1549; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1549:
+.L1547:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L1551; nop
+set 207,%i4
+cmp %i5,0; be .L1553; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1553:
+.L1551:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L1555; nop
+set 208,%i4
+cmp %i5,0; be .L1557; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1557:
+.L1555:
+set 5,%i2
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fdivs %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L1559; nop
+set 209,%i4
+cmp %i5,0; be .L1561; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1561:
+.L1559:
+set 5,%i2
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fdivd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,2; be .L1563; nop
+set 210,%i4
+cmp %i5,0; be .L1565; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1565:
+.L1563:
+set 5,%i1
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%i1
+cmp %i1,2; be .L1567; nop
+set 211,%i4
+cmp %i5,0; be .L1569; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1569:
+.L1567:
+set 5,%i1
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%i1
+cmp %i1,2; be .L1571; nop
+set 212,%i4
+cmp %i5,0; be .L1573; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1573:
+.L1571:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%i1
+cmp %i1,2; be .L1575; nop
+set 213,%i4
+cmp %i5,0; be .L1577; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1577:
+.L1575:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%i1
+cmp %i1,2; be .L1579; nop
+set 214,%i4
+cmp %i5,0; be .L1581; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1581:
+.L1579:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-12]
+mov %i1,%l3
+ld [%fp+-12],%l2
+wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%l3
+mov %l3,%i1
+cmp %i1,2; be .L1583; nop
+set 215,%i4
+cmp %i5,0; be .L1585; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1585:
+.L1583:
+set 5,%i1
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+st %i1,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fdivs %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,2; be .L1587; nop
+set 216,%i4
+cmp %i5,0; be .L1589; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1589:
+.L1587:
+set 5,%i1
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+st %i1,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fdivd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+cmp %i1,2; be .L1591; nop
+set 217,%i4
+cmp %i5,0; be .L1593; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1593:
+.L1591:
+set 5,%l7
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%l7
+cmp %l7,2; be .L1595; nop
+set 218,%i4
+cmp %i5,0; be .L1597; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1597:
+.L1595:
+set 5,%l7
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%l7
+cmp %l7,2; be .L1599; nop
+set 219,%i4
+cmp %i5,0; be .L1601; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1601:
+.L1599:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%l7
+cmp %l7,2; be .L1603; nop
+set 220,%i4
+cmp %i5,0; be .L1605; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1605:
+.L1603:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%l7
+cmp %l7,2; be .L1607; nop
+set 221,%i4
+cmp %i5,0; be .L1609; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1609:
+.L1607:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-12]
+mov %l7,%l3
+ld [%fp+-12],%l2
+wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%l3
+mov %l3,%l7
+cmp %l7,2; be .L1611; nop
+set 222,%i4
+cmp %i5,0; be .L1613; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1613:
+.L1611:
+set 5,%l7
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+st %l7,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+ld [%fp+-28],%f30
+fdivs %f31,%f30,%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,2; be .L1615; nop
+set 223,%i4
+cmp %i5,0; be .L1617; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1617:
+.L1615:
+set 5,%l7
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+st %l7,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+ldd [%fp+-40],%f28
+fdivd %f30,%f28,%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l7
+cmp %l7,2; be .L1619; nop
+set 224,%i4
+cmp %i5,0; be .L1621; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1621:
+.L1619:
+set 5,%l6
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%l6
+set 2,%l3
+cmp %l6,%l3; be .L1623; nop
+set 225,%i4
+cmp %i5,0; be .L1625; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1625:
+.L1623:
+set 5,%l6
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%l6
+set 2,%l3
+cmp %l6,%l3; be .L1627; nop
+set 226,%i4
+cmp %i5,0; be .L1629; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1629:
+.L1627:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%l6
+set 2,%l3
+cmp %l6,%l3; be .L1631; nop
+set 227,%i4
+cmp %i5,0; be .L1633; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1633:
+.L1631:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%l6
+set 2,%l3
+cmp %l6,%l3; be .L1635; nop
+set 228,%i4
+cmp %i5,0; be .L1637; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1637:
+.L1635:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l2
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l2,%l6
+cmp %l6,%l3; be .L1639; nop
+set 229,%i4
+cmp %i5,0; be .L1641; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1641:
+.L1639:
+set 5,%l6
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+set .L596,%l3
+ld2 [%l3],%f30
+srl %l6,1,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l3
+and %l6,%l3,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+fdtos %f30,%f31
+ld [%fp+-28],%f30
+fdivs %f31,%f30,%f31
+set .L828,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbul .L1644; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-88]
+ba .L1645; nop
+.L1644:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-88]
+.L1645:
+ld [%fp+-88],%l6
+set 2,%l3
+cmp %l6,%l3; be .L1646; nop
+set 230,%i4
+cmp %i5,0; be .L1648; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1648:
+.L1646:
+set 5,%l6
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+set .L596,%l3
+ld2 [%l3],%f30
+srl %l6,1,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%l3
+and %l6,%l3,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+ldd [%fp+-40],%f28
+fdivd %f30,%f28,%f30
+set .L836,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L1651; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-92]
+ba .L1652; nop
+.L1651:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-92]
+.L1652:
+ld [%fp+-92],%l6
+set 2,%l3
+cmp %l6,%l3; be .L1653; nop
+set 231,%i4
+cmp %i5,0; be .L1655; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1655:
+.L1653:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l5
+ld [%fp+-16],%f31
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fdivs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1657; nop
+set 232,%i4
+cmp %i5,0; be .L1660; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1660:
+.L1657:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l4
+ld [%fp+-16],%f31
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fdivs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1662; nop
+set 233,%i4
+cmp %i5,0; be .L1664; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1664:
+.L1662:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-16],%f31
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fdivs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1666; nop
+set 234,%i4
+cmp %i5,0; be .L1668; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1668:
+.L1666:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-16],%f31
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fdivs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1670; nop
+set 235,%i4
+cmp %i5,0; be .L1672; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1672:
+.L1670:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+ld [%fp+-16],%f31
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fdtos %f28,%f30
+fdivs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1674; nop
+set 236,%i4
+cmp %i5,0; be .L1676; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1676:
+.L1674:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ld [%fp+-16],%f31
+ld [%fp+-28],%f30
+fdivs %f31,%f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1678; nop
+set 237,%i4
+cmp %i5,0; be .L1680; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1680:
+.L1678:
+set .L841,%l3
+ld [%l3],%f31
+st %f31,[%fp+-16]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+ldd [%fp+-40],%f28
+fdivd %f30,%f28,%f30
+fdtos %f30,%f31
+st %f31,[%fp+-16]
+ld [%fp+-16],%f31
+fstod %f31,%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1682; nop
+set 238,%i4
+cmp %i5,0; be .L1684; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1684:
+.L1682:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l5
+ldd [%fp+-24],%f30
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fdivd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1686; nop
+set 239,%i4
+cmp %i5,0; be .L1688; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1688:
+.L1686:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l4
+ldd [%fp+-24],%f30
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fdivd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1690; nop
+set 240,%i4
+cmp %i5,0; be .L1692; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1692:
+.L1690:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-4]
+ldd [%fp+-24],%f30
+ld [%fp+-4],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fdivd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1694; nop
+set 241,%i4
+cmp %i5,0; be .L1696; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1696:
+.L1694:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-8]
+ldd [%fp+-24],%f30
+ld [%fp+-8],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fdivd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1698; nop
+set 242,%i4
+cmp %i5,0; be .L1700; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1700:
+.L1698:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+ldd [%fp+-24],%f30
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fdivd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1702; nop
+set 243,%i4
+cmp %i5,0; be .L1704; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1704:
+.L1702:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L529,%l3
+ld [%l3],%f31
+st %f31,[%fp+-28]
+ldd [%fp+-24],%f30
+ld [%fp+-28],%f29
+fstod %f29,%f28
+fdivd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1706; nop
+set 244,%i4
+cmp %i5,0; be .L1708; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1708:
+.L1706:
+set .L870,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-24]
+set .L416,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-40]
+ldd [%fp+-24],%f30
+ldd [%fp+-40],%f28
+fdivd %f30,%f28,%f30
+std %f30,[%fp+-24]
+ldd [%fp+-24],%f30
+set .L1659,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L1710; nop
+set 245,%i4
+cmp %i5,0; be .L1712; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1712:
+.L1710:
+set 5,%i3
+set 2,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
+; smul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1714; nop
+set 246,%i4
+cmp %i5,0; be .L1716; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1716:
+.L1714:
+set 5,%i3
+set 2,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
+; smul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1718; nop
+set 247,%i4
+cmp %i5,0; be .L1720; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1720:
+.L1718:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
+; smul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1722; nop
+set 248,%i4
+cmp %i5,0; be .L1724; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1724:
+.L1722:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
+; smul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1726; nop
+set 249,%i4
+cmp %i5,0; be .L1728; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1728:
+.L1726:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%g1
+; umul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1730; nop
+set 250,%i4
+cmp %i5,0; be .L1732; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1732:
+.L1730:
+set 5,%i2
+set 2,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
+; smul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1734; nop
+set 251,%i4
+cmp %i5,0; be .L1736; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1736:
+.L1734:
+set 5,%i2
+set 2,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
+; smul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1738; nop
+set 252,%i4
+cmp %i5,0; be .L1740; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1740:
+.L1738:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
+; smul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1742; nop
+set 253,%i4
+cmp %i5,0; be .L1744; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1744:
+.L1742:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,%l2,%g1
+; smul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1746; nop
+set 254,%i4
+cmp %i5,0; be .L1748; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1748:
+.L1746:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%g1
+; umul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1750; nop
+set 255,%i4
+cmp %i5,0; be .L1752; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1752:
+.L1750:
+set 5,%i1
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%g1
+; smul %g1,%l3,%g1; sub %i1,%g1,%i1
+cmp %i1,1; be .L1754; nop
+set 256,%i4
+cmp %i5,0; be .L1756; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1756:
+.L1754:
+set 5,%i1
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%g1
+; smul %g1,%l3,%g1; sub %i1,%g1,%i1
+cmp %i1,1; be .L1758; nop
+set 257,%i4
+cmp %i5,0; be .L1760; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1760:
+.L1758:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%g1
+; smul %g1,%l3,%g1; sub %i1,%g1,%i1
+cmp %i1,1; be .L1762; nop
+set 258,%i4
+cmp %i5,0; be .L1764; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1764:
+.L1762:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sra %i1,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i1,%l3,%g1
+; smul %g1,%l3,%g1; sub %i1,%g1,%i1
+cmp %i1,1; be .L1766; nop
+set 259,%i4
+cmp %i5,0; be .L1768; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1768:
+.L1766:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-12]
+mov %i1,%l3
+ld [%fp+-12],%l2
+wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%g1
+; umul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%i1
+cmp %i1,1; be .L1770; nop
+set 260,%i4
+cmp %i5,0; be .L1772; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1772:
+.L1770:
+set 5,%l7
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%g1
+; smul %g1,%l3,%g1; sub %l7,%g1,%l7
+cmp %l7,1; be .L1774; nop
+set 261,%i4
+cmp %i5,0; be .L1776; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1776:
+.L1774:
+set 5,%l7
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%g1
+; smul %g1,%l3,%g1; sub %l7,%g1,%l7
+cmp %l7,1; be .L1778; nop
+set 262,%i4
+cmp %i5,0; be .L1780; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1780:
+.L1778:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%g1
+; smul %g1,%l3,%g1; sub %l7,%g1,%l7
+cmp %l7,1; be .L1782; nop
+set 263,%i4
+cmp %i5,0; be .L1784; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1784:
+.L1782:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sra %l7,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l7,%l3,%g1
+; smul %g1,%l3,%g1; sub %l7,%g1,%l7
+cmp %l7,1; be .L1786; nop
+set 264,%i4
+cmp %i5,0; be .L1788; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1788:
+.L1786:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-12]
+mov %l7,%l3
+ld [%fp+-12],%l2
+wr %g0,%g0,%y; nop; nop; nop; udiv %l3,%l2,%g1
+; umul %g1,%l2,%g1; sub %l3,%g1,%l3
+mov %l3,%l7
+cmp %l7,1; be .L1790; nop
+set 265,%i4
+cmp %i5,0; be .L1792; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1792:
+.L1790:
+set 5,%l6
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
+; umul %g1,%l3,%g1; sub %l6,%g1,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1794; nop
+set 266,%i4
+cmp %i5,0; be .L1796; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1796:
+.L1794:
+set 5,%l6
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
+; umul %g1,%l3,%g1; sub %l6,%g1,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1798; nop
+set 267,%i4
+cmp %i5,0; be .L1800; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1800:
+.L1798:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
+; umul %g1,%l3,%g1; sub %l6,%g1,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1802; nop
+set 268,%i4
+cmp %i5,0; be .L1804; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1804:
+.L1802:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
+; umul %g1,%l3,%g1; sub %l6,%g1,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1806; nop
+set 269,%i4
+cmp %i5,0; be .L1808; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1808:
+.L1806:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+wr %g0,%g0,%y; nop; nop; nop; udiv %l6,%l3,%g1
+; umul %g1,%l3,%g1; sub %l6,%g1,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1810; nop
+set 270,%i4
+cmp %i5,0; be .L1812; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1812:
+.L1810:
+set 5,%i3
+set 2,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sra %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1814; nop
+set 271,%i4
+cmp %i5,0; be .L1816; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1816:
+.L1814:
+set 5,%i3
+set 2,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sra %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1818; nop
+set 272,%i4
+cmp %i5,0; be .L1820; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1820:
+.L1818:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+sra %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1822; nop
+set 273,%i4
+cmp %i5,0; be .L1824; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1824:
+.L1822:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+sra %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1826; nop
+set 274,%i4
+cmp %i5,0; be .L1828; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1828:
+.L1826:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+sra %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,1; be .L1830; nop
+set 275,%i4
+cmp %i5,0; be .L1832; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1832:
+.L1830:
+set 5,%i2
+set 2,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sra %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1834; nop
+set 276,%i4
+cmp %i5,0; be .L1836; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1836:
+.L1834:
+set 5,%i2
+set 2,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sra %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1838; nop
+set 277,%i4
+cmp %i5,0; be .L1840; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1840:
+.L1838:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+sra %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1842; nop
+set 278,%i4
+cmp %i5,0; be .L1844; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1844:
+.L1842:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+sra %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1846; nop
+set 279,%i4
+cmp %i5,0; be .L1848; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1848:
+.L1846:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+sra %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,1; be .L1850; nop
+set 280,%i4
+cmp %i5,0; be .L1852; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1852:
+.L1850:
+set 5,%i1
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sra %i1,%l3,%i1
+cmp %i1,1; be .L1854; nop
+set 281,%i4
+cmp %i5,0; be .L1856; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1856:
+.L1854:
+set 5,%i1
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sra %i1,%l3,%i1
+cmp %i1,1; be .L1858; nop
+set 282,%i4
+cmp %i5,0; be .L1860; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1860:
+.L1858:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sra %i1,%l3,%i1
+cmp %i1,1; be .L1862; nop
+set 283,%i4
+cmp %i5,0; be .L1864; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1864:
+.L1862:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sra %i1,%l3,%i1
+cmp %i1,1; be .L1866; nop
+set 284,%i4
+cmp %i5,0; be .L1868; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1868:
+.L1866:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+sra %i1,%l3,%i1
+cmp %i1,1; be .L1870; nop
+set 285,%i4
+cmp %i5,0; be .L1872; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1872:
+.L1870:
+set 5,%l7
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sra %l7,%l3,%l7
+cmp %l7,1; be .L1874; nop
+set 286,%i4
+cmp %i5,0; be .L1876; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1876:
+.L1874:
+set 5,%l7
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sra %l7,%l3,%l7
+cmp %l7,1; be .L1878; nop
+set 287,%i4
+cmp %i5,0; be .L1880; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1880:
+.L1878:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sra %l7,%l3,%l7
+cmp %l7,1; be .L1882; nop
+set 288,%i4
+cmp %i5,0; be .L1884; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1884:
+.L1882:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sra %l7,%l3,%l7
+cmp %l7,1; be .L1886; nop
+set 289,%i4
+cmp %i5,0; be .L1888; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1888:
+.L1886:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+sra %l7,%l3,%l7
+cmp %l7,1; be .L1890; nop
+set 290,%i4
+cmp %i5,0; be .L1892; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1892:
+.L1890:
+set 5,%l6
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+srl %l6,%l3,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1894; nop
+set 291,%i4
+cmp %i5,0; be .L1896; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1896:
+.L1894:
+set 5,%l6
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+srl %l6,%l3,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1898; nop
+set 292,%i4
+cmp %i5,0; be .L1900; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1900:
+.L1898:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+srl %l6,%l3,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1902; nop
+set 293,%i4
+cmp %i5,0; be .L1904; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1904:
+.L1902:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+srl %l6,%l3,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1906; nop
+set 294,%i4
+cmp %i5,0; be .L1908; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1908:
+.L1906:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+srl %l6,%l3,%l6
+set 1,%l3
+cmp %l6,%l3; be .L1910; nop
+set 295,%i4
+cmp %i5,0; be .L1912; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1912:
+.L1910:
+set 5,%i3
+set 2,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sll %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,20; be .L1914; nop
+set 296,%i4
+cmp %i5,0; be .L1916; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1916:
+.L1914:
+set 5,%i3
+set 2,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sll %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,20; be .L1918; nop
+set 297,%i4
+cmp %i5,0; be .L1920; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1920:
+.L1918:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+sll %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,20; be .L1922; nop
+set 298,%i4
+cmp %i5,0; be .L1924; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1924:
+.L1922:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+sll %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,20; be .L1926; nop
+set 299,%i4
+cmp %i5,0; be .L1928; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1928:
+.L1926:
+set 5,%i3
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+sll %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,20; be .L1930; nop
+set 300,%i4
+cmp %i5,0; be .L1932; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1932:
+.L1930:
+set 5,%i2
+set 2,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+sll %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,20; be .L1934; nop
+set 301,%i4
+cmp %i5,0; be .L1936; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1936:
+.L1934:
+set 5,%i2
+set 2,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+sll %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,20; be .L1938; nop
+set 302,%i4
+cmp %i5,0; be .L1940; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1940:
+.L1938:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+sll %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,20; be .L1942; nop
+set 303,%i4
+cmp %i5,0; be .L1944; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1944:
+.L1942:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+sll %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,20; be .L1946; nop
+set 304,%i4
+cmp %i5,0; be .L1948; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1948:
+.L1946:
+set 5,%i2
+set 2,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+sll %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,20; be .L1950; nop
+set 305,%i4
+cmp %i5,0; be .L1952; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1952:
+.L1950:
+set 5,%i1
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %i1,%l3,%i1
+cmp %i1,20; be .L1954; nop
+set 306,%i4
+cmp %i5,0; be .L1956; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1956:
+.L1954:
+set 5,%i1
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %i1,%l3,%i1
+cmp %i1,20; be .L1958; nop
+set 307,%i4
+cmp %i5,0; be .L1960; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1960:
+.L1958:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sll %i1,%l3,%i1
+cmp %i1,20; be .L1962; nop
+set 308,%i4
+cmp %i5,0; be .L1964; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1964:
+.L1962:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sll %i1,%l3,%i1
+cmp %i1,20; be .L1966; nop
+set 309,%i4
+cmp %i5,0; be .L1968; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1968:
+.L1966:
+set 5,%i1
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+sll %i1,%l3,%i1
+cmp %i1,20; be .L1970; nop
+set 310,%i4
+cmp %i5,0; be .L1972; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1972:
+.L1970:
+set 5,%l7
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l7,%l3,%l7
+cmp %l7,20; be .L1974; nop
+set 311,%i4
+cmp %i5,0; be .L1976; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1976:
+.L1974:
+set 5,%l7
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l7,%l3,%l7
+cmp %l7,20; be .L1978; nop
+set 312,%i4
+cmp %i5,0; be .L1980; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1980:
+.L1978:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sll %l7,%l3,%l7
+cmp %l7,20; be .L1982; nop
+set 313,%i4
+cmp %i5,0; be .L1984; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1984:
+.L1982:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sll %l7,%l3,%l7
+cmp %l7,20; be .L1986; nop
+set 314,%i4
+cmp %i5,0; be .L1988; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1988:
+.L1986:
+set 5,%l7
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+sll %l7,%l3,%l7
+cmp %l7,20; be .L1990; nop
+set 315,%i4
+cmp %i5,0; be .L1992; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1992:
+.L1990:
+set 5,%l6
+set 2,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l6,%l3,%l6
+set 20,%l3
+cmp %l6,%l3; be .L1994; nop
+set 316,%i4
+cmp %i5,0; be .L1996; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L1996:
+.L1994:
+set 5,%l6
+set 2,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l6,%l3,%l6
+set 20,%l3
+cmp %l6,%l3; be .L1998; nop
+set 317,%i4
+cmp %i5,0; be .L2000; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2000:
+.L1998:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+sll %l6,%l3,%l6
+set 20,%l3
+cmp %l6,%l3; be .L2002; nop
+set 318,%i4
+cmp %i5,0; be .L2004; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2004:
+.L2002:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+sll %l6,%l3,%l6
+set 20,%l3
+cmp %l6,%l3; be .L2006; nop
+set 319,%i4
+cmp %i5,0; be .L2008; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2008:
+.L2006:
+set 5,%l6
+set 2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+sll %l6,%l3,%l6
+set 20,%l3
+cmp %l6,%l3; be .L2010; nop
+set 320,%i4
+cmp %i5,0; be .L2012; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2012:
+.L2010:
+set 12,%i3
+set 10,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+and %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,8; be .L2014; nop
+set 321,%i4
+cmp %i5,0; be .L2016; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2016:
+.L2014:
+set 12,%i3
+set 10,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+and %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,8; be .L2018; nop
+set 322,%i4
+cmp %i5,0; be .L2020; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2020:
+.L2018:
+set 12,%i3
+set 10,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+and %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,8; be .L2022; nop
+set 323,%i4
+cmp %i5,0; be .L2024; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2024:
+.L2022:
+set 12,%i3
+set 10,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+and %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,8; be .L2026; nop
+set 324,%i4
+cmp %i5,0; be .L2028; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2028:
+.L2026:
+set 12,%i3
+set 10,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+and %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,8; be .L2030; nop
+set 325,%i4
+cmp %i5,0; be .L2032; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2032:
+.L2030:
+set 12,%i2
+set 10,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+and %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,8; be .L2034; nop
+set 326,%i4
+cmp %i5,0; be .L2036; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2036:
+.L2034:
+set 12,%i2
+set 10,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+and %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,8; be .L2038; nop
+set 327,%i4
+cmp %i5,0; be .L2040; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2040:
+.L2038:
+set 12,%i2
+set 10,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+and %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,8; be .L2042; nop
+set 328,%i4
+cmp %i5,0; be .L2044; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2044:
+.L2042:
+set 12,%i2
+set 10,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+and %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,8; be .L2046; nop
+set 329,%i4
+cmp %i5,0; be .L2048; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2048:
+.L2046:
+set 12,%i2
+set 10,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+and %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,8; be .L2050; nop
+set 330,%i4
+cmp %i5,0; be .L2052; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2052:
+.L2050:
+set 12,%i1
+set 10,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+and %i1,%l3,%i1
+cmp %i1,8; be .L2054; nop
+set 331,%i4
+cmp %i5,0; be .L2056; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2056:
+.L2054:
+set 12,%i1
+set 10,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+and %i1,%l3,%i1
+cmp %i1,8; be .L2058; nop
+set 332,%i4
+cmp %i5,0; be .L2060; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2060:
+.L2058:
+set 12,%i1
+set 10,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+and %i1,%l3,%i1
+cmp %i1,8; be .L2062; nop
+set 333,%i4
+cmp %i5,0; be .L2064; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2064:
+.L2062:
+set 12,%i1
+set 10,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+and %i1,%l3,%i1
+cmp %i1,8; be .L2066; nop
+set 334,%i4
+cmp %i5,0; be .L2068; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2068:
+.L2066:
+set 12,%i1
+set 10,%l3
+st %l3,[%fp+-12]
+mov %i1,%l3
+ld [%fp+-12],%l2
+and %l3,%l2,%l3
+mov %l3,%i1
+cmp %i1,8; be .L2070; nop
+set 335,%i4
+cmp %i5,0; be .L2072; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2072:
+.L2070:
+set 12,%l7
+set 10,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+and %l7,%l3,%l7
+cmp %l7,8; be .L2074; nop
+set 336,%i4
+cmp %i5,0; be .L2076; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2076:
+.L2074:
+set 12,%l7
+set 10,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+and %l7,%l3,%l7
+cmp %l7,8; be .L2078; nop
+set 337,%i4
+cmp %i5,0; be .L2080; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2080:
+.L2078:
+set 12,%l7
+set 10,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+and %l7,%l3,%l7
+cmp %l7,8; be .L2082; nop
+set 338,%i4
+cmp %i5,0; be .L2084; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2084:
+.L2082:
+set 12,%l7
+set 10,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+and %l7,%l3,%l7
+cmp %l7,8; be .L2086; nop
+set 339,%i4
+cmp %i5,0; be .L2088; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2088:
+.L2086:
+set 12,%l7
+set 10,%l3
+st %l3,[%fp+-12]
+mov %l7,%l3
+ld [%fp+-12],%l2
+and %l3,%l2,%l3
+mov %l3,%l7
+cmp %l7,8; be .L2090; nop
+set 340,%i4
+cmp %i5,0; be .L2092; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2092:
+.L2090:
+set 12,%l6
+set 10,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+and %l6,%l3,%l6
+set 8,%l3
+cmp %l6,%l3; be .L2094; nop
+set 341,%i4
+cmp %i5,0; be .L2096; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2096:
+.L2094:
+set 12,%l6
+set 10,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+and %l6,%l3,%l6
+set 8,%l3
+cmp %l6,%l3; be .L2098; nop
+set 342,%i4
+cmp %i5,0; be .L2100; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2100:
+.L2098:
+set 12,%l6
+set 10,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+and %l6,%l3,%l6
+set 8,%l3
+cmp %l6,%l3; be .L2102; nop
+set 343,%i4
+cmp %i5,0; be .L2104; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2104:
+.L2102:
+set 12,%l6
+set 10,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+and %l6,%l3,%l6
+set 8,%l3
+cmp %l6,%l3; be .L2106; nop
+set 344,%i4
+cmp %i5,0; be .L2108; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2108:
+.L2106:
+set 12,%l6
+set 10,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+and %l6,%l3,%l6
+set 8,%l3
+cmp %l6,%l3; be .L2110; nop
+set 345,%i4
+cmp %i5,0; be .L2112; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2112:
+.L2110:
+set 12,%i3
+set 10,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+xor %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,6; be .L2114; nop
+set 346,%i4
+cmp %i5,0; be .L2116; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2116:
+.L2114:
+set 12,%i3
+set 10,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+xor %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,6; be .L2118; nop
+set 347,%i4
+cmp %i5,0; be .L2120; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2120:
+.L2118:
+set 12,%i3
+set 10,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+xor %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,6; be .L2122; nop
+set 348,%i4
+cmp %i5,0; be .L2124; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2124:
+.L2122:
+set 12,%i3
+set 10,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+xor %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,6; be .L2126; nop
+set 349,%i4
+cmp %i5,0; be .L2128; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2128:
+.L2126:
+set 12,%i3
+set 10,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+xor %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,6; be .L2130; nop
+set 350,%i4
+cmp %i5,0; be .L2132; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2132:
+.L2130:
+set 12,%i2
+set 10,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+xor %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,6; be .L2134; nop
+set 351,%i4
+cmp %i5,0; be .L2136; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2136:
+.L2134:
+set 12,%i2
+set 10,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+xor %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,6; be .L2138; nop
+set 352,%i4
+cmp %i5,0; be .L2140; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2140:
+.L2138:
+set 12,%i2
+set 10,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+xor %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,6; be .L2142; nop
+set 353,%i4
+cmp %i5,0; be .L2144; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2144:
+.L2142:
+set 12,%i2
+set 10,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+xor %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,6; be .L2146; nop
+set 354,%i4
+cmp %i5,0; be .L2148; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2148:
+.L2146:
+set 12,%i2
+set 10,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+xor %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,6; be .L2150; nop
+set 355,%i4
+cmp %i5,0; be .L2152; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2152:
+.L2150:
+set 12,%i1
+set 10,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+xor %i1,%l3,%i1
+cmp %i1,6; be .L2154; nop
+set 356,%i4
+cmp %i5,0; be .L2156; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2156:
+.L2154:
+set 12,%i1
+set 10,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+xor %i1,%l3,%i1
+cmp %i1,6; be .L2158; nop
+set 357,%i4
+cmp %i5,0; be .L2160; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2160:
+.L2158:
+set 12,%i1
+set 10,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+xor %i1,%l3,%i1
+cmp %i1,6; be .L2162; nop
+set 358,%i4
+cmp %i5,0; be .L2164; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2164:
+.L2162:
+set 12,%i1
+set 10,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+xor %i1,%l3,%i1
+cmp %i1,6; be .L2166; nop
+set 359,%i4
+cmp %i5,0; be .L2168; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2168:
+.L2166:
+set 12,%i1
+set 10,%l3
+st %l3,[%fp+-12]
+mov %i1,%l3
+ld [%fp+-12],%l2
+xor %l3,%l2,%l3
+mov %l3,%i1
+cmp %i1,6; be .L2170; nop
+set 360,%i4
+cmp %i5,0; be .L2172; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2172:
+.L2170:
+set 12,%l7
+set 10,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+xor %l7,%l3,%l7
+cmp %l7,6; be .L2174; nop
+set 361,%i4
+cmp %i5,0; be .L2176; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2176:
+.L2174:
+set 12,%l7
+set 10,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+xor %l7,%l3,%l7
+cmp %l7,6; be .L2178; nop
+set 362,%i4
+cmp %i5,0; be .L2180; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2180:
+.L2178:
+set 12,%l7
+set 10,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+xor %l7,%l3,%l7
+cmp %l7,6; be .L2182; nop
+set 363,%i4
+cmp %i5,0; be .L2184; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2184:
+.L2182:
+set 12,%l7
+set 10,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+xor %l7,%l3,%l7
+cmp %l7,6; be .L2186; nop
+set 364,%i4
+cmp %i5,0; be .L2188; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2188:
+.L2186:
+set 12,%l7
+set 10,%l3
+st %l3,[%fp+-12]
+mov %l7,%l3
+ld [%fp+-12],%l2
+xor %l3,%l2,%l3
+mov %l3,%l7
+cmp %l7,6; be .L2190; nop
+set 365,%i4
+cmp %i5,0; be .L2192; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2192:
+.L2190:
+set 12,%l6
+set 10,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+xor %l6,%l3,%l6
+set 6,%l3
+cmp %l6,%l3; be .L2194; nop
+set 366,%i4
+cmp %i5,0; be .L2196; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2196:
+.L2194:
+set 12,%l6
+set 10,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+xor %l6,%l3,%l6
+set 6,%l3
+cmp %l6,%l3; be .L2198; nop
+set 367,%i4
+cmp %i5,0; be .L2200; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2200:
+.L2198:
+set 12,%l6
+set 10,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+xor %l6,%l3,%l6
+set 6,%l3
+cmp %l6,%l3; be .L2202; nop
+set 368,%i4
+cmp %i5,0; be .L2204; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2204:
+.L2202:
+set 12,%l6
+set 10,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+xor %l6,%l3,%l6
+set 6,%l3
+cmp %l6,%l3; be .L2206; nop
+set 369,%i4
+cmp %i5,0; be .L2208; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2208:
+.L2206:
+set 12,%l6
+set 10,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+xor %l6,%l3,%l6
+set 6,%l3
+cmp %l6,%l3; be .L2210; nop
+set 370,%i4
+cmp %i5,0; be .L2212; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2212:
+.L2210:
+set 12,%i3
+set 10,%l5
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+or %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,14; be .L2214; nop
+set 371,%i4
+cmp %i5,0; be .L2216; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2216:
+.L2214:
+set 12,%i3
+set 10,%l4
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+or %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,14; be .L2218; nop
+set 372,%i4
+cmp %i5,0; be .L2220; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2220:
+.L2218:
+set 12,%i3
+set 10,%l3
+st %l3,[%fp+-4]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-4],%l2
+or %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,14; be .L2222; nop
+set 373,%i4
+cmp %i5,0; be .L2224; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2224:
+.L2222:
+set 12,%i3
+set 10,%l3
+st %l3,[%fp+-8]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-8],%l2
+or %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,14; be .L2226; nop
+set 374,%i4
+cmp %i5,0; be .L2228; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2228:
+.L2226:
+set 12,%i3
+set 10,%l3
+st %l3,[%fp+-12]
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+ld [%fp+-12],%l2
+or %l3,%l2,%l3
+mov %l3,%i3
+sll %i3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,14; be .L2230; nop
+set 375,%i4
+cmp %i5,0; be .L2232; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2232:
+.L2230:
+set 12,%i2
+set 10,%l5
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l5,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+or %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,14; be .L2234; nop
+set 376,%i4
+cmp %i5,0; be .L2236; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2236:
+.L2234:
+set 12,%i2
+set 10,%l4
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l4,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+or %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,14; be .L2238; nop
+set 377,%i4
+cmp %i5,0; be .L2240; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2240:
+.L2238:
+set 12,%i2
+set 10,%l3
+st %l3,[%fp+-4]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-4],%l2
+or %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,14; be .L2242; nop
+set 378,%i4
+cmp %i5,0; be .L2244; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2244:
+.L2242:
+set 12,%i2
+set 10,%l3
+st %l3,[%fp+-8]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-8],%l2
+or %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,14; be .L2246; nop
+set 379,%i4
+cmp %i5,0; be .L2248; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2248:
+.L2246:
+set 12,%i2
+set 10,%l3
+st %l3,[%fp+-12]
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+ld [%fp+-12],%l2
+or %l3,%l2,%l3
+mov %l3,%i2
+sll %i2,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,14; be .L2250; nop
+set 380,%i4
+cmp %i5,0; be .L2252; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2252:
+.L2250:
+set 12,%i1
+set 10,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+or %i1,%l3,%i1
+cmp %i1,14; be .L2254; nop
+set 381,%i4
+cmp %i5,0; be .L2256; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2256:
+.L2254:
+set 12,%i1
+set 10,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+or %i1,%l3,%i1
+cmp %i1,14; be .L2258; nop
+set 382,%i4
+cmp %i5,0; be .L2260; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2260:
+.L2258:
+set 12,%i1
+set 10,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+or %i1,%l3,%i1
+cmp %i1,14; be .L2262; nop
+set 383,%i4
+cmp %i5,0; be .L2264; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2264:
+.L2262:
+set 12,%i1
+set 10,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+or %i1,%l3,%i1
+cmp %i1,14; be .L2266; nop
+set 384,%i4
+cmp %i5,0; be .L2268; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2268:
+.L2266:
+set 12,%i1
+set 10,%l3
+st %l3,[%fp+-12]
+mov %i1,%l3
+ld [%fp+-12],%l2
+or %l3,%l2,%l3
+mov %l3,%i1
+cmp %i1,14; be .L2270; nop
+set 385,%i4
+cmp %i5,0; be .L2272; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2272:
+.L2270:
+set 12,%l7
+set 10,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+or %l7,%l3,%l7
+cmp %l7,14; be .L2274; nop
+set 386,%i4
+cmp %i5,0; be .L2276; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2276:
+.L2274:
+set 12,%l7
+set 10,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+or %l7,%l3,%l7
+cmp %l7,14; be .L2278; nop
+set 387,%i4
+cmp %i5,0; be .L2280; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2280:
+.L2278:
+set 12,%l7
+set 10,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+or %l7,%l3,%l7
+cmp %l7,14; be .L2282; nop
+set 388,%i4
+cmp %i5,0; be .L2284; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2284:
+.L2282:
+set 12,%l7
+set 10,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+or %l7,%l3,%l7
+cmp %l7,14; be .L2286; nop
+set 389,%i4
+cmp %i5,0; be .L2288; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2288:
+.L2286:
+set 12,%l7
+set 10,%l3
+st %l3,[%fp+-12]
+mov %l7,%l3
+ld [%fp+-12],%l2
+or %l3,%l2,%l3
+mov %l3,%l7
+cmp %l7,14; be .L2290; nop
+set 390,%i4
+cmp %i5,0; be .L2292; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2292:
+.L2290:
+set 12,%l6
+set 10,%l5
+sll %l5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+or %l6,%l3,%l6
+set 14,%l3
+cmp %l6,%l3; be .L2294; nop
+set 391,%i4
+cmp %i5,0; be .L2296; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2296:
+.L2294:
+set 12,%l6
+set 10,%l4
+sll %l4,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+or %l6,%l3,%l6
+set 14,%l3
+cmp %l6,%l3; be .L2298; nop
+set 392,%i4
+cmp %i5,0; be .L2300; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2300:
+.L2298:
+set 12,%l6
+set 10,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+or %l6,%l3,%l6
+set 14,%l3
+cmp %l6,%l3; be .L2302; nop
+set 393,%i4
+cmp %i5,0; be .L2304; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2304:
+.L2302:
+set 12,%l6
+set 10,%l3
+st %l3,[%fp+-8]
+ld [%fp+-8],%l3
+or %l6,%l3,%l6
+set 14,%l3
+cmp %l6,%l3; be .L2306; nop
+set 394,%i4
+cmp %i5,0; be .L2308; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2308:
+.L2306:
+set 12,%l6
+set 10,%l3
+st %l3,[%fp+-12]
+ld [%fp+-12],%l3
+or %l6,%l3,%l6
+set 14,%l3
+cmp %l6,%l3; be .L2310; nop
+set 395,%i4
+cmp %i5,0; be .L2312; nop
+set .687,%o0
+mov %i4,%o1
+call printf; nop
+.L2312:
+.L2310:
+cmp %i4,0; be .L2314; nop
+set 1,%l3
+st %l3,[%fp+-52]
+ld [%i0+44],%l3
+cmp %l3,0; be .L2316; nop
+set .688,%o0
+set 1,%o1
+call printf; nop
+.L2316:
+.L2314:
+ld [%fp+-52],%i0
+.L686:
+ret; restore
+.type s714,#function
+.size s714,.-s714
+.section ".data"
+.type .2319,#object
+.align 1
+.2319:
+.byte 115
+.byte 55
+.byte 49
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .2319,11
+.type .2320,#object
+.size .2320,8
+.align 1
+.2320:
+.byte 115
+.byte 55
+.byte 49
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s715
+.section ".text"
+.align 4
+s715:
+save %sp,-96,%sp
+mov %g0,%l6
+mov %g0,%i1
+set .2320,%i5
+add %i0,60,%i4
+mov %g0,%i2
+.L2321:
+.L2322:
+mov %i4,%l5
+add %l5,1,%i4
+mov %i5,%l4
+add %l4,1,%i5
+ldsb [%l4],%l4
+stb %l4,[%l5]
+sll %l4,8*(4-1),%l5; sra %l5,8*(4-1),%l5
+cmp %l5,0; bne .L2321; nop
+set 1,%l5
+mov %l5,%i3
+add %i3,1,%i3
+add %i3,1,%i3
+add %i3,1,%i3
+add %i3,1,%i3
+add %i3,1,%l5
+mov %l5,%i3
+cmp %l5,6; be .L2324; nop
+ld [%i0+44],%l5
+cmp %l5,0; be .L2326; nop
+set .2319,%o0
+set 1,%o1
+call printf; nop
+.L2326:
+add %i2,1,%i2
+.L2324:
+mov %i1,%o0
+set 3,%l7
+add %l7,2,%o1
+mov %l6,%o2
+call s715f; nop
+cmp %o0,5; be .L2328; nop
+ld [%i0+44],%l5
+cmp %l5,0; be .L2330; nop
+set .2319,%o0
+set 2,%o1
+call printf; nop
+.L2330:
+add %i2,2,%i2
+.L2328:
+mov %i2,%i0
+.L2318:
+ret; restore
+.type s715,#function
+.size s715,.-s715
+.global s715f
+.align 4
+s715f:
+mov %o1,%o0
+.L2332:
+retl; nop
+.type s715f,#function
+.size s715f,.-s715f
+.section ".data"
+.type .2334,#object
+.align 1
+.2334:
+.byte 115
+.byte 55
+.byte 50
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .2334,10
+.type .2335,#object
+.size .2335,8
+.align 1
+.2335:
+.byte 115
+.byte 55
+.byte 50
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s72
+.section ".text"
+.align 4
+s72:
+save %sp,-120,%sp
+set .2335,%i4
+add %i0,60,%i3
+mov %g0,%i1
+.L2336:
+.L2337:
+mov %i3,%l3
+add %l3,1,%i3
+mov %i4,%l2
+add %l2,1,%i4
+ldsb [%l2],%l2
+stb %l2,[%l3]
+sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; bne .L2336; nop
+set 2,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+cmp %l3,2; be .L2339; nop
+set 1,%l3
+add %i1,1,%i1
+set .2334,%o0
+mov %l3,%o1
+call printf; nop
+.L2339:
+ld [%fp+-4],%l3
+neg %l3,%l2
+add %l3,%l2,%l3
+cmp %l3,0; be .L2341; nop
+set 2,%l3
+add %i1,2,%i1
+set .2334,%o0
+mov %l3,%o1
+call printf; nop
+.L2341:
+st %g0,[%fp+-4]
+mov %g0,%i5
+ba .L2346; nop
+.L2343:
+ld [%fp+-4],%l3
+sll %l3,1,%l3
+or %l3,1,%l3
+st %l3,[%fp+-4]
+.L2344:
+add %i5,1,%i5
+.L2346:
+ld [%i0+4],%l3
+cmp %i5,%l3; bl .L2343; nop
+ld [%fp+-4],%l3
+not %l3,%l3
+cmp %l3,0; be .L2347; nop
+set 4,%l3
+add %i1,4,%i1
+set .2334,%o0
+mov %l3,%o1
+call printf; nop
+.L2347:
+set 5,%l3
+st %l3,[%fp+-4]
+ld [%fp+-4],%l3
+add %l3,1,%l3
+st %l3,[%fp+-4]
+cmp %l3,6; bne .L2354; nop
+ld [%fp+-4],%l3
+sub %l3,1,%l3
+st %l3,[%fp+-4]
+cmp %l3,5; bne .L2354; nop
+ld [%fp+-4],%l3
+add %l3,1,%l2
+st %l2,[%fp+-4]
+cmp %l3,5; bne .L2354; nop
+ld [%fp+-4],%l3
+sub %l3,1,%l2
+st %l2,[%fp+-4]
+cmp %l3,6; bne .L2354; nop
+ld [%fp+-4],%l3
+cmp %l3,5; be .L2349; nop
+.L2354:
+set 8,%l3
+add %i1,8,%i1
+set .2334,%o0
+mov %l3,%o1
+call printf; nop
+.L2349:
+set 26,%l6
+set 26,%l4
+set .L2355,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-16]
+set 26,%l5
+set 26,%l3
+st %l3,[%fp+-8]
+set 26,%l7
+set .L2356,%l3
+ld [%l3],%f31
+st %f31,[%fp+-20]
+mov %g0,%i2
+sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,26; bne .L2363; nop
+mov %l7,%l3
+sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,26; bne .L2363; nop
+mov %l4,%l3
+sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,26; bne .L2363; nop
+ld [%fp+-8],%l3
+sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,26; bne .L2363; nop
+ld [%fp+-20],%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,26; bne .L2363; nop
+ldd [%fp+-16],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+sll %l3,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,26; be .L2357; nop
+.L2363:
+add %i2,1,%i2
+.L2357:
+sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,26; bne .L2370; nop
+mov %l7,%l3
+sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,26; bne .L2370; nop
+mov %l4,%l3
+sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,26; bne .L2370; nop
+ld [%fp+-8],%l3
+sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,26; bne .L2370; nop
+ld [%fp+-20],%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,26; bne .L2370; nop
+ldd [%fp+-16],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+sll %l3,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,26; be .L2364; nop
+.L2370:
+add %i2,2,%i2
+.L2364:
+sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,26; bne .L2377; nop
+sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,26; bne .L2377; nop
+cmp %l4,26; bne .L2377; nop
+ld [%fp+-8],%l3
+cmp %l3,26; bne .L2377; nop
+ld [%fp+-20],%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+cmp %l3,26; bne .L2377; nop
+ldd [%fp+-16],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+cmp %l3,26; be .L2371; nop
+.L2377:
+add %i2,4,%i2
+.L2371:
+sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,26; bne .L2384; nop
+sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+cmp %l3,26; bne .L2384; nop
+cmp %l7,26; bne .L2384; nop
+ld [%fp+-8],%l3
+cmp %l3,26; bne .L2384; nop
+ld [%fp+-20],%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+cmp %l3,26; bne .L2384; nop
+ldd [%fp+-16],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+cmp %l3,26; be .L2378; nop
+.L2384:
+add %i2,8,%i2
+.L2378:
+set 26,%l3
+sll %l6,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+cmp %l2,%l3; bne .L2393; nop
+sll %l5,8*(4-2),%l2; sra %l2,8*(4-2),%l2
+cmp %l2,%l3; bne .L2393; nop
+mov %l7,%l2
+cmp %l2,%l3; bne .L2393; nop
+mov %l4,%l2
+cmp %l2,%l3; bne .L2393; nop
+ld [%fp+-20],%f31
+set .L828,%l3
+ld [%l3],%f30
+fcmpes %f31,%f30; nop; fbul .L2394; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-24]
+ba .L2395; nop
+.L2394:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-24]
+.L2395:
+ld [%fp+-24],%l3
+set 26,%l2
+cmp %l3,%l2; bne .L2393; nop
+ldd [%fp+-16],%f30
+set .L836,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L2396; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-28]
+ba .L2397; nop
+.L2396:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-28]
+.L2397:
+ld [%fp+-28],%l3
+set 26,%l2
+cmp %l3,%l2; be .L2385; nop
+.L2393:
+add %i2,16,%i2
+.L2385:
+set .L2355,%l3
+ld2 [%l3],%f30
+sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f29; fitos %f29,%f29
+fstod %f29,%f28
+fcmped %f28,%f30; nop; fbne .L2404; nop
+sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f29; fitos %f29,%f29
+fstod %f29,%f28
+fcmped %f28,%f30; nop; fbne .L2404; nop
+st %l7,[%sp+64]; ld [%sp+64],%f29; fitos %f29,%f29
+fstod %f29,%f28
+fcmped %f28,%f30; nop; fbne .L2404; nop
+st %l4,[%sp+64]; ld [%sp+64],%f29; fitos %f29,%f29
+fstod %f29,%f28
+fcmped %f28,%f30; nop; fbne .L2404; nop
+ld [%fp+-8],%l3
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fdtos %f28,%f29
+fstod %f29,%f28
+fcmped %f28,%f30; nop; fbne .L2404; nop
+ldd [%fp+-16],%f28
+fdtos %f28,%f29
+fstod %f29,%f28
+fcmped %f28,%f30; nop; fbue .L2398; nop
+.L2404:
+add %i2,32,%i2
+.L2398:
+set .L2355,%l3
+ld2 [%l3],%f30
+sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fcmped %f28,%f30; nop; fbne .L2411; nop
+sll %l5,8*(4-2),%l3; sra %l3,8*(4-2),%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fcmped %f28,%f30; nop; fbne .L2411; nop
+st %l7,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fcmped %f28,%f30; nop; fbne .L2411; nop
+st %l4,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fcmped %f28,%f30; nop; fbne .L2411; nop
+ld [%fp+-8],%l3
+set .L596,%l2
+ld2 [%l2],%f28
+srl %l3,1,%l2
+st %l2,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+fmuld %f28,%f26,%f28
+set 1,%l2
+and %l3,%l2,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f26; fitod %f26,%f26
+faddd %f28,%f26,%f28
+fcmped %f28,%f30; nop; fbne .L2411; nop
+ld [%fp+-20],%f29
+fstod %f29,%f28
+fcmped %f28,%f30; nop; fbue .L2405; nop
+.L2411:
+add %i2,64,%i2
+.L2405:
+cmp %i2,0; be .L2412; nop
+set 16,%l3
+add %i1,16,%i1
+set .2334,%o0
+mov %l3,%o1
+call printf; nop
+.L2412:
+mov %i1,%i0
+.L2333:
+ret; restore
+.type s72,#function
+.size s72,.-s72
+.section ".data"
+.type .2415,#object
+.align 1
+.2415:
+.byte 115
+.byte 55
+.byte 53
+.byte 55
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .2415,11
+.type .2416,#object
+.size .2416,8
+.align 1
+.2416:
+.byte 115
+.byte 55
+.byte 53
+.byte 55
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s757
+.section ".text"
+.align 4
+s757:
+save %sp,-208,%sp
+set .2416,%l3
+st %l3,[%fp+-76]
+add %i0,60,%l3
+st %l3,[%fp+-80]
+st %g0,[%fp+-84]
+.L2417:
+.L2418:
+ld [%fp+-80],%l3
+add %l3,1,%l2
+st %l2,[%fp+-80]
+ld [%fp+-76],%l2
+add %l2,1,%l1
+st %l1,[%fp+-76]
+ldsb [%l2],%l2
+stb %l2,[%l3]
+sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; bne .L2417; nop
+set 40,%l3
+st %l3,[%fp+-88]
+ld [%fp+-88],%l3
+sll %l3,3,%l2
+sll %l2,2,%l2
+cmp %l2,1280; bne .L2422; nop
+sra %l3,3,%l3
+sra %l3,2,%l3
+cmp %l3,1; be .L2420; nop
+.L2422:
+ld [%fp+-84],%l3
+add %l3,1,%l3
+st %l3,[%fp+-84]
+ld [%i0+44],%l3
+cmp %l3,0; be .L2423; nop
+set .2415,%o0
+set 1,%o1
+call printf; nop
+.L2423:
+.L2420:
+mov %g0,%i1
+mov %g0,%l4
+ba .L2428; nop
+.L2425:
+set 1,%l6
+ld [%i0+16],%l3
+sub %l3,1,%l3
+sll %l6,%l3,%l5
+st %g0,[%fp+-68]
+ld [%fp+-68],%l3
+not %l3,%l3
+srl %l3,%l4,%l2
+st %l2,[%fp+-72]
+sll %l3,%l4,%l3
+st %l3,[%fp+-68]
+mov %g0,%l7
+ba .L2432; nop
+.L2429:
+cmp %l7,%l4; bge .L2440; nop
+set 1,%l3
+st %l3,[%fp+-96]
+ba .L2441; nop
+.L2440:
+st %g0,[%fp+-96]
+.L2441:
+ld [%fp+-68],%l3
+and %l6,%l3,%l3
+cmp %l3,%g0; bne .L2442; nop
+set 1,%l3
+st %l3,[%fp+-100]
+ba .L2443; nop
+.L2442:
+st %g0,[%fp+-100]
+.L2443:
+ld [%fp+-96],%l3
+ld [%fp+-100],%l2
+cmp %l3,%l2; bne .L2439; nop
+cmp %l7,%l4; bge .L2444; nop
+set 1,%l3
+st %l3,[%fp+-104]
+ba .L2445; nop
+.L2444:
+st %g0,[%fp+-104]
+.L2445:
+ld [%fp+-72],%l3
+and %l5,%l3,%l3
+cmp %l3,%g0; bne .L2446; nop
+set 1,%l3
+st %l3,[%fp+-108]
+ba .L2447; nop
+.L2446:
+st %g0,[%fp+-108]
+.L2447:
+ld [%fp+-104],%l3
+ld [%fp+-108],%l2
+cmp %l3,%l2; be .L2433; nop
+.L2439:
+set 1,%i1
+.L2433:
+sll %l6,1,%l6
+srl %l5,1,%l5
+.L2430:
+add %l7,1,%l7
+.L2432:
+ld [%i0+16],%l3
+cmp %l7,%l3; bl .L2429; nop
+.L2426:
+add %l4,1,%l4
+.L2428:
+ld [%i0+16],%l3
+cmp %l4,%l3; bl .L2425; nop
+cmp %i1,0; be .L2448; nop
+ld [%fp+-84],%l3
+add %l3,2,%l3
+st %l3,[%fp+-84]
+ld [%i0+44],%l3
+cmp %l3,0; be .L2450; nop
+set .2415,%o0
+set 2,%o1
+call printf; nop
+.L2450:
+.L2448:
+set 3,%i2
+set 2,%i3
+set 1,%i4
+cmp %i2,%i3; bge .L2458; nop
+set 1,%l3
+st %l3,[%fp+-100]
+ba .L2459; nop
+.L2458:
+st %g0,[%fp+-100]
+.L2459:
+ld [%fp+-100],%l3
+cmp %l3,%i4; bge .L2456; nop
+set 1,%l3
+st %l3,[%fp+-96]
+ba .L2457; nop
+.L2456:
+st %g0,[%fp+-96]
+.L2457:
+ld [%fp+-96],%l3
+cmp %l3,1; be .L2452; nop
+ld [%fp+-84],%l3
+add %l3,4,%l3
+st %l3,[%fp+-84]
+ld [%i0+44],%l3
+cmp %l3,0; be .L2460; nop
+set .2415,%o0
+set 4,%o1
+call printf; nop
+.L2460:
+.L2452:
+add -60,%fp,%l3
+add -64,%fp,%l2
+cmp %l3,%l2; bne .L2462; nop
+ld [%fp+-84],%l3
+add %l3,8,%l3
+st %l3,[%fp+-84]
+ld [%i0+44],%l3
+cmp %l3,0; be .L2465; nop
+set .2415,%o0
+set 8,%o1
+call printf; nop
+.L2465:
+.L2462:
+add -60,%fp,%l3
+add -64,%fp,%l2
+cmp %l3,%l2; bgeu .L2467; nop
+ld [%i0+40],%l3
+cmp %l3,0; be .L2470; nop
+set .L2472,%o0
+call printf; nop
+.L2470:
+.L2467:
+mov %g0,%i1
+mov %g0,%l7
+.L2473:
+sll %l7,2,%l3
+add -64,%fp,%l2
+set 1,%l1
+st %l1,[%l3+%l2]
+.L2474:
+add %l7,1,%l7
+cmp %l7,16; bl .L2473; nop
+st %g0,[%fp+-60]
+st %g0,[%fp+-48]
+st %g0,[%fp+-40]
+st %g0,[%fp+-36]
+st %g0,[%fp+-28]
+st %g0,[%fp+-12]
+mov %g0,%i2
+.L2483:
+mov %g0,%i3
+.L2487:
+mov %g0,%i4
+.L2491:
+mov %g0,%i5
+.L2495:
+cmp %i2,%i3; bge .L2506; nop
+set 1,%l3
+st %l3,[%fp+-108]
+ba .L2507; nop
+.L2506:
+st %g0,[%fp+-108]
+.L2507:
+cmp %i4,%i5; bge .L2508; nop
+set 1,%l3
+st %l3,[%fp+-112]
+ba .L2509; nop
+.L2508:
+st %g0,[%fp+-112]
+.L2509:
+ld [%fp+-108],%l3
+ld [%fp+-112],%l2
+cmp %l3,%l2; bne .L2504; nop
+set 1,%l3
+st %l3,[%fp+-104]
+ba .L2505; nop
+.L2504:
+st %g0,[%fp+-104]
+.L2505:
+ld [%fp+-104],%l3
+sll %i2,3,%l2
+sll %i3,2,%l1
+add %l2,%l1,%l2
+sll %i4,1,%l1
+add %l2,%l1,%l2
+add %l2,%i5,%l2
+sll %l2,2,%l2
+add -64,%fp,%l1
+ld [%l2+%l1],%l2
+cmp %l3,%l2; be .L2499; nop
+set 1,%i1
+.L2499:
+.L2496:
+add %i5,1,%i5
+cmp %i5,2; bl .L2495; nop
+.L2492:
+add %i4,1,%i4
+cmp %i4,2; bl .L2491; nop
+.L2488:
+add %i3,1,%i3
+cmp %i3,2; bl .L2487; nop
+.L2484:
+add %i2,1,%i2
+cmp %i2,2; bl .L2483; nop
+cmp %i1,0; be .L2510; nop
+ld [%fp+-84],%l3
+add %l3,16,%l3
+st %l3,[%fp+-84]
+ld [%i0+44],%l3
+cmp %l3,0; be .L2512; nop
+set .2415,%o0
+set 16,%o1
+call printf; nop
+.L2512:
+.L2510:
+st %g0,[%fp+-92]
+ld [%fp+-92],%l3
+cmp %l3,%g0; be .L2514; nop
+ld [%fp+-84],%l3
+add %l3,32,%l3
+st %l3,[%fp+-84]
+ld [%i0+44],%l3
+cmp %l3,0; be .L2516; nop
+set .2415,%o0
+set 32,%o1
+call printf; nop
+.L2516:
+.L2514:
+ld [%fp+-84],%i0
+.L2414:
+ret; restore
+.type s757,#function
+.size s757,.-s757
+.section ".data"
+.type .2519,#object
+.align 1
+.2519:
+.byte 76
+.byte 111
+.byte 99
+.byte 97
+.byte 108
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.size .2519,17
+.type .2520,#object
+.align 1
+.2520:
+.byte 115
+.byte 55
+.byte 56
+.byte 49
+.byte 51
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .2520,12
+.type .2521,#object
+.size .2521,8
+.align 1
+.2521:
+.byte 115
+.byte 55
+.byte 56
+.byte 49
+.byte 51
+.byte 32
+.byte 32
+.byte 0
+.global s7813
+.section ".text"
+.align 4
+s7813:
+save %sp,-144,%sp
+set .2521,%l7
+add %i0,60,%l6
+mov %g0,%i4
+mov %g0,%l5
+ld [%i0+48],%i5
+.L2522:
+.L2523:
+mov %l6,%l3
+add %l3,1,%l6
+mov %l7,%l2
+add %l2,1,%l7
+ldsb [%l2],%l2
+stb %l2,[%l3]
+sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; bne .L2522; nop
+ba .L2525; nop
+set 1,%i4
+cmp %i5,0; be .L2527; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2527:
+.L2525:
+ba .L2529; nop
+set 2,%i4
+cmp %i5,0; be .L2531; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2531:
+.L2529:
+ba .L2533; nop
+set 3,%i4
+cmp %i5,0; be .L2535; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2535:
+.L2533:
+ba .L2537; nop
+set 4,%i4
+cmp %i5,0; be .L2539; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2539:
+.L2537:
+ba .L2541; nop
+set 5,%i4
+cmp %i5,0; be .L2543; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2543:
+.L2541:
+ba .L2545; nop
+set 6,%i4
+cmp %i5,0; be .L2547; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2547:
+.L2545:
+ba .L2549; nop
+set 7,%i4
+cmp %i5,0; be .L2551; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2551:
+.L2549:
+ba .L2553; nop
+set 8,%i4
+cmp %i5,0; be .L2555; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2555:
+.L2553:
+ba .L2557; nop
+set 9,%i4
+cmp %i5,0; be .L2559; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2559:
+.L2557:
+ba .L2561; nop
+set 10,%i4
+cmp %i5,0; be .L2563; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2563:
+.L2561:
+ba .L2565; nop
+set 11,%i4
+cmp %i5,0; be .L2567; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2567:
+.L2565:
+ba .L2569; nop
+set 12,%i4
+cmp %i5,0; be .L2571; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2571:
+.L2569:
+ba .L2573; nop
+set 13,%i4
+cmp %i5,0; be .L2575; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2575:
+.L2573:
+ba .L2577; nop
+set 14,%i4
+cmp %i5,0; be .L2579; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2579:
+.L2577:
+ba .L2581; nop
+set 15,%i4
+cmp %i5,0; be .L2583; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2583:
+.L2581:
+ba .L2585; nop
+set 16,%i4
+cmp %i5,0; be .L2587; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2587:
+.L2585:
+ba .L2589; nop
+set 17,%i4
+cmp %i5,0; be .L2591; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2591:
+.L2589:
+ba .L2593; nop
+set 18,%i4
+cmp %i5,0; be .L2595; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2595:
+.L2593:
+ba .L2597; nop
+set 16,%i4
+cmp %i5,0; be .L2599; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2599:
+.L2597:
+ba .L2601; nop
+set 20,%i4
+cmp %i5,0; be .L2603; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2603:
+.L2601:
+ba .L2605; nop
+set 21,%i4
+cmp %i5,0; be .L2607; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2607:
+.L2605:
+ba .L2609; nop
+set 22,%i4
+cmp %i5,0; be .L2611; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2611:
+.L2609:
+ba .L2613; nop
+set 23,%i4
+cmp %i5,0; be .L2615; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2615:
+.L2613:
+ba .L2617; nop
+set 24,%i4
+cmp %i5,0; be .L2619; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2619:
+.L2617:
+ba .L2621; nop
+set 25,%i4
+cmp %i5,0; be .L2623; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2623:
+.L2621:
+ba .L2625; nop
+set 26,%i4
+cmp %i5,0; be .L2627; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2627:
+.L2625:
+ba .L2629; nop
+set 27,%i4
+cmp %i5,0; be .L2631; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2631:
+.L2629:
+ba .L2633; nop
+set 28,%i4
+cmp %i5,0; be .L2635; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2635:
+.L2633:
+ba .L2637; nop
+set 26,%i4
+cmp %i5,0; be .L2639; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2639:
+.L2637:
+ba .L2641; nop
+set 30,%i4
+cmp %i5,0; be .L2643; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2643:
+.L2641:
+ba .L2645; nop
+set 31,%i4
+cmp %i5,0; be .L2647; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2647:
+.L2645:
+ba .L2649; nop
+set 32,%i4
+cmp %i5,0; be .L2651; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2651:
+.L2649:
+ba .L2653; nop
+set 33,%i4
+cmp %i5,0; be .L2655; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2655:
+.L2653:
+ba .L2657; nop
+set 34,%i4
+cmp %i5,0; be .L2659; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2659:
+.L2657:
+ba .L2661; nop
+set 35,%i4
+cmp %i5,0; be .L2663; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2663:
+.L2661:
+ba .L2665; nop
+set 36,%i4
+cmp %i5,0; be .L2667; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2667:
+.L2665:
+ba .L2669; nop
+set 37,%i4
+cmp %i5,0; be .L2671; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2671:
+.L2669:
+ba .L2673; nop
+set 38,%i4
+cmp %i5,0; be .L2675; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2675:
+.L2673:
+ba .L2677; nop
+set 39,%i4
+cmp %i5,0; be .L2679; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2679:
+.L2677:
+ba .L2681; nop
+set 40,%i4
+cmp %i5,0; be .L2683; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2683:
+.L2681:
+ba .L2685; nop
+set 41,%i4
+cmp %i5,0; be .L2687; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2687:
+.L2685:
+ba .L2689; nop
+set 42,%i4
+cmp %i5,0; be .L2691; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2691:
+.L2689:
+ba .L2693; nop
+set 43,%i4
+cmp %i5,0; be .L2695; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2695:
+.L2693:
+ba .L2697; nop
+set 44,%i4
+cmp %i5,0; be .L2699; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2699:
+.L2697:
+ba .L2701; nop
+set 45,%i4
+cmp %i5,0; be .L2703; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2703:
+.L2701:
+ba .L2705; nop
+set 46,%i4
+cmp %i5,0; be .L2707; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2707:
+.L2705:
+ba .L2709; nop
+set 47,%i4
+cmp %i5,0; be .L2711; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2711:
+.L2709:
+ba .L2713; nop
+set 48,%i4
+cmp %i5,0; be .L2715; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2715:
+.L2713:
+ba .L2717; nop
+set 49,%i4
+cmp %i5,0; be .L2719; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2719:
+.L2717:
+ba .L2721; nop
+set 50,%i4
+cmp %i5,0; be .L2723; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2723:
+.L2721:
+ba .L2725; nop
+set 51,%i4
+cmp %i5,0; be .L2727; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2727:
+.L2725:
+ba .L2729; nop
+set 52,%i4
+cmp %i5,0; be .L2731; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2731:
+.L2729:
+ba .L2733; nop
+set 53,%i4
+cmp %i5,0; be .L2735; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2735:
+.L2733:
+ba .L2737; nop
+set 54,%i4
+cmp %i5,0; be .L2739; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2739:
+.L2737:
+ba .L2741; nop
+set 55,%i4
+cmp %i5,0; be .L2743; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2743:
+.L2741:
+ba .L2745; nop
+set 56,%i4
+cmp %i5,0; be .L2747; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2747:
+.L2745:
+ba .L2749; nop
+set 57,%i4
+cmp %i5,0; be .L2751; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2751:
+.L2749:
+ba .L2753; nop
+set 58,%i4
+cmp %i5,0; be .L2755; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2755:
+.L2753:
+ba .L2757; nop
+set 56,%i4
+cmp %i5,0; be .L2759; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2759:
+.L2757:
+ba .L2761; nop
+set 60,%i4
+cmp %i5,0; be .L2763; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2763:
+.L2761:
+ba .L2765; nop
+set 61,%i4
+cmp %i5,0; be .L2767; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2767:
+.L2765:
+ba .L2769; nop
+set 62,%i4
+cmp %i5,0; be .L2771; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2771:
+.L2769:
+ba .L2773; nop
+set 63,%i4
+cmp %i5,0; be .L2775; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2775:
+.L2773:
+ba .L2777; nop
+set 64,%i4
+cmp %i5,0; be .L2779; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2779:
+.L2777:
+ba .L2781; nop
+set 65,%i4
+cmp %i5,0; be .L2783; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2783:
+.L2781:
+ba .L2785; nop
+set 66,%i4
+cmp %i5,0; be .L2787; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2787:
+.L2785:
+ba .L2789; nop
+set 67,%i4
+cmp %i5,0; be .L2791; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2791:
+.L2789:
+ba .L2793; nop
+set 68,%i4
+cmp %i5,0; be .L2795; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2795:
+.L2793:
+ba .L2797; nop
+set 69,%i4
+cmp %i5,0; be .L2799; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2799:
+.L2797:
+ba .L2801; nop
+set 70,%i4
+cmp %i5,0; be .L2803; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2803:
+.L2801:
+ba .L2805; nop
+set 71,%i4
+cmp %i5,0; be .L2807; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2807:
+.L2805:
+ba .L2809; nop
+set 72,%i4
+cmp %i5,0; be .L2811; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2811:
+.L2809:
+ba .L2813; nop
+set 73,%i4
+cmp %i5,0; be .L2815; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2815:
+.L2813:
+ba .L2817; nop
+set 74,%i4
+cmp %i5,0; be .L2819; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2819:
+.L2817:
+ba .L2821; nop
+set 75,%i4
+cmp %i5,0; be .L2823; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2823:
+.L2821:
+cmp %i4,0; be .L2825; nop
+ld [%i0+44],%l3
+cmp %l3,0; be .L2827; nop
+set .2520,%o0
+set 1,%o1
+call printf; nop
+.L2827:
+add %l5,1,%l5
+.L2825:
+mov %g0,%i4
+mov %g0,%i2
+mov %g0,%i3
+mov %i3,%l3
+add %l3,1,%i3
+mov %g0,%l2
+cmp %l3,%l2; be .L2830; nop
+mov %i2,%l3
+add %l3,1,%i2
+cmp %l3,%l2; be .L2830; nop
+set 1,%l3
+st %l3,[%fp+-8]
+ba .L2831; nop
+.L2830:
+st %g0,[%fp+-8]
+.L2831:
+ld [%fp+-8],%i1
+cmp %i3,1; be .L2832; nop
+set 1,%i4
+cmp %i5,0; be .L2834; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2834:
+.L2832:
+cmp %i2,0; be .L2836; nop
+set 2,%i4
+cmp %i5,0; be .L2838; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2838:
+.L2836:
+cmp %i1,0; be .L2840; nop
+set 3,%i4
+cmp %i5,0; be .L2842; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2842:
+.L2840:
+cmp %i3,%g0; be .L2845; nop
+mov %i2,%l2
+add %l2,1,%i2
+cmp %l2,%g0; be .L2845; nop
+set 1,%l3
+st %l3,[%fp+-12]
+ba .L2846; nop
+.L2845:
+st %g0,[%fp+-12]
+.L2846:
+ld [%fp+-12],%i1
+cmp %i3,1; be .L2847; nop
+set 4,%i4
+cmp %i5,0; be .L2849; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2849:
+.L2847:
+cmp %i2,1; be .L2851; nop
+set 5,%i4
+cmp %i5,0; be .L2853; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2853:
+.L2851:
+cmp %i1,0; be .L2855; nop
+set 6,%i4
+cmp %i5,0; be .L2857; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2857:
+.L2855:
+mov %i3,%l3
+sub %l3,1,%i3
+mov %g0,%l2
+cmp %l3,%l2; be .L2860; nop
+cmp %i2,%l2; be .L2860; nop
+set 1,%l3
+st %l3,[%fp+-16]
+ba .L2861; nop
+.L2860:
+st %g0,[%fp+-16]
+.L2861:
+ld [%fp+-16],%i1
+cmp %i3,0; be .L2862; nop
+set 7,%i4
+cmp %i5,0; be .L2864; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2864:
+.L2862:
+cmp %i2,1; be .L2866; nop
+set 8,%i4
+cmp %i5,0; be .L2868; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2868:
+.L2866:
+cmp %i1,1; be .L2870; nop
+set 9,%i4
+cmp %i5,0; be .L2872; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2872:
+.L2870:
+cmp %i3,%g0; be .L2875; nop
+mov %i2,%l2
+sub %l2,1,%i2
+cmp %l2,%g0; be .L2875; nop
+set 1,%l3
+st %l3,[%fp+-20]
+ba .L2876; nop
+.L2875:
+st %g0,[%fp+-20]
+.L2876:
+ld [%fp+-20],%i1
+cmp %i3,0; be .L2877; nop
+set 10,%i4
+cmp %i5,0; be .L2879; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2879:
+.L2877:
+cmp %i2,1; be .L2881; nop
+set 11,%i4
+cmp %i5,0; be .L2883; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2883:
+.L2881:
+cmp %i1,0; be .L2885; nop
+set 12,%i4
+cmp %i5,0; be .L2887; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2887:
+.L2885:
+cmp %i4,0; be .L2889; nop
+ld [%i0+44],%l3
+cmp %l3,0; be .L2891; nop
+set .2520,%o0
+set 2,%o1
+call printf; nop
+.L2891:
+add %l5,2,%l5
+.L2889:
+mov %g0,%i4
+mov %g0,%i2
+mov %g0,%i3
+mov %i3,%l3
+add %l3,1,%i3
+mov %g0,%l2
+cmp %l3,%l2; bne .L2896; nop
+cmp %i2,%l2; be .L2894; nop
+.L2896:
+set 1,%l3
+st %l3,[%fp+-24]
+ba .L2895; nop
+.L2894:
+st %g0,[%fp+-24]
+.L2895:
+ld [%fp+-24],%i1
+cmp %i3,1; be .L2897; nop
+set 1,%i4
+cmp %i5,0; be .L2899; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2899:
+.L2897:
+cmp %i2,0; be .L2901; nop
+set 2,%i4
+cmp %i5,0; be .L2903; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2903:
+.L2901:
+cmp %i1,0; be .L2905; nop
+set 3,%i4
+cmp %i5,0; be .L2907; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2907:
+.L2905:
+mov %i2,%l3
+add %l3,1,%i2
+mov %g0,%l2
+cmp %l3,%l2; bne .L2912; nop
+cmp %i3,%l2; be .L2910; nop
+.L2912:
+set 1,%l3
+st %l3,[%fp+-28]
+ba .L2911; nop
+.L2910:
+st %g0,[%fp+-28]
+.L2911:
+ld [%fp+-28],%i1
+cmp %i3,1; be .L2913; nop
+set 4,%i4
+cmp %i5,0; be .L2915; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2915:
+.L2913:
+cmp %i2,1; be .L2917; nop
+set 5,%i4
+cmp %i5,0; be .L2919; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2919:
+.L2917:
+cmp %i1,1; be .L2921; nop
+set 6,%i4
+cmp %i5,0; be .L2923; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2923:
+.L2921:
+mov %i3,%l3
+sub %l3,1,%i3
+mov %g0,%l2
+cmp %l3,%l2; bne .L2928; nop
+mov %i2,%l3
+sub %l3,1,%i2
+cmp %l3,%l2; be .L2926; nop
+.L2928:
+set 1,%l3
+st %l3,[%fp+-32]
+ba .L2927; nop
+.L2926:
+st %g0,[%fp+-32]
+.L2927:
+ld [%fp+-32],%i1
+cmp %i3,0; be .L2929; nop
+set 7,%i4
+cmp %i5,0; be .L2931; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2931:
+.L2929:
+cmp %i2,1; be .L2933; nop
+set 8,%i4
+cmp %i5,0; be .L2935; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2935:
+.L2933:
+cmp %i1,1; be .L2937; nop
+set 9,%i4
+cmp %i5,0; be .L2939; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2939:
+.L2937:
+mov %g0,%l3
+cmp %i3,%l3; bne .L2944; nop
+mov %i2,%l2
+sub %l2,1,%i2
+cmp %l2,%l3; be .L2942; nop
+.L2944:
+set 1,%l3
+st %l3,[%fp+-36]
+ba .L2943; nop
+.L2942:
+st %g0,[%fp+-36]
+.L2943:
+ld [%fp+-36],%i1
+cmp %i3,0; be .L2945; nop
+set 10,%i4
+cmp %i5,0; be .L2947; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2947:
+.L2945:
+cmp %i2,0; be .L2949; nop
+set 11,%i4
+cmp %i5,0; be .L2951; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2951:
+.L2949:
+cmp %i1,1; be .L2953; nop
+set 12,%i4
+cmp %i5,0; be .L2955; nop
+set .2519,%o0
+mov %i4,%o1
+call printf; nop
+.L2955:
+.L2953:
+cmp %i4,0; be .L2957; nop
+ld [%i0+44],%l3
+cmp %l3,0; be .L2959; nop
+set .2520,%o0
+set 4,%o1
+call printf; nop
+.L2959:
+add %l5,4,%l5
+.L2957:
+mov %g0,%l3
+mov %l3,%i2
+mov %l3,%i3
+mov %l3,%l4
+set 1,%l2
+st %l2,[%fp+-4]
+ld [%fp+-4],%l2
+cmp %l2,%l3; be .L2963; nop
+st %l4,[%fp+-40]
+ba .L2964; nop
+.L2963:
+ld [%fp+-4],%l3
+cmp %l3,0; be .L2965; nop
+mov %i3,%l3
+add %l3,1,%i3
+st %l3,[%fp+-44]
+ba .L2966; nop
+.L2965:
+mov %i2,%l3
+add %l3,1,%i2
+st %l3,[%fp+-44]
+.L2966:
+ld [%fp+-44],%l3
+st %l3,[%fp+-40]
+.L2964:
+ld [%fp+-40],%i1
+cmp %i1,%g0; bne .L2970; nop
+cmp %i3,%g0; bne .L2970; nop
+cmp %i2,%g0; be .L2967; nop
+.L2970:
+ld [%i0+44],%l3
+cmp %l3,0; be .L2971; nop
+set .2520,%o0
+set 8,%o1
+call printf; nop
+.L2971:
+add %l5,8,%l5
+.L2967:
+ld [%fp+-4],%l3
+cmp %l3,0; be .L2978; nop
+st %l4,[%fp+-48]
+ba .L2979; nop
+.L2978:
+set 1,%l3
+st %l3,[%fp+-48]
+.L2979:
+ld [%fp+-48],%l2
+cmp %l2,%g0; bne .L2977; nop
+cmp %l4,%g0; be .L2980; nop
+set 1,%l3
+st %l3,[%fp+-52]
+ba .L2981; nop
+.L2980:
+st %l4,[%fp+-52]
+.L2981:
+ld [%fp+-52],%l3
+cmp %l3,0; be .L2973; nop
+.L2977:
+ld [%i0+44],%l3
+cmp %l3,0; be .L2982; nop
+set .2520,%o0
+set 16,%o1
+call printf; nop
+.L2982:
+add %l5,16,%l5
+.L2973:
+mov %l5,%i0
+.L2518:
+ret; restore
+.type s7813,#function
+.size s7813,.-s7813
+.section ".data"
+.type .2985,#object
+.align 1
+.2985:
+.byte 115
+.byte 56
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .2985,10
+.type .2986,#object
+.size .2986,8
+.align 1
+.2986:
+.byte 115
+.byte 56
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.type .2987,#object
+.align 1
+.2987:
+.byte 82
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 117
+.byte 110
+.byte 114
+.byte 101
+.byte 108
+.byte 105
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.size .2987,38
+.type .2988,#object
+.align 1
+.2988:
+.byte 37
+.byte 100
+.byte 32
+.byte 114
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 118
+.byte 97
+.byte 114
+.byte 105
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.size .2988,40
+.global s81
+.section ".text"
+.align 4
+s81:
+save %sp,-112,%sp
+st %g0,[%fp+-20]
+st %g0,[%fp+-8]
+st %g0,[%fp+-12]
+st %g0,[%fp+-16]
+set .2986,%l5
+add %i0,60,%l4
+.L2989:
+.L2990:
+mov %l4,%l3
+add %l3,1,%l4
+mov %l5,%l2
+add %l2,1,%l5
+ldsb [%l2],%l2
+stb %l2,[%l3]
+sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; bne .L2989; nop
+set 1,%l3
+st %l3,[%fp+-4]
+mov %g0,%i2
+.L2992:
+ld [%fp+-4],%l3
+mov %l3,%l2
+mov %l2,%i5
+mov %l2,%i1
+add -4,%fp,%i4
+add -4,%fp,%l7
+mov %l3,%i3
+mov %l3,%l6
+sll %i5,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+sll %i1,8*(4-1),%l2; sra %l2,8*(4-1),%l2
+cmp %l3,%l2; be .L2996; nop
+set 1,%l3
+st %l3,[%fp+-8]
+.L2996:
+mov %i4,%l3
+mov %l7,%l2
+cmp %l3,%l2; be .L2998; nop
+set 1,%l3
+st %l3,[%fp+-12]
+.L2998:
+cmp %i3,%l6; be .L3000; nop
+set 1,%l3
+st %l3,[%fp+-16]
+.L3000:
+ld [%fp+-4],%l3
+sll %l3,1,%l3
+st %l3,[%fp+-4]
+.L2993:
+add %i2,1,%i2
+cmp %i2,50; bl .L2992; nop
+ld [%fp+-8],%l3
+cmp %l3,0; be .L3002; nop
+ld [%fp+-20],%l3
+add %l3,1,%l3
+st %l3,[%fp+-20]
+ld [%i0+44],%l3
+cmp %l3,0; be .L3004; nop
+set .2985,%o0
+set 1,%o1
+call printf; nop
+.L3004:
+.L3002:
+ld [%fp+-12],%l3
+cmp %l3,0; be .L3006; nop
+ld [%fp+-20],%l3
+add %l3,2,%l3
+st %l3,[%fp+-20]
+ld [%i0+44],%l3
+cmp %l3,0; be .L3008; nop
+set .2985,%o0
+set 2,%o1
+call printf; nop
+.L3008:
+.L3006:
+ld [%fp+-16],%l3
+cmp %l3,0; be .L3010; nop
+ld [%fp+-20],%l3
+add %l3,4,%l3
+st %l3,[%fp+-20]
+ld [%i0+44],%l3
+cmp %l3,0; be .L3012; nop
+set .2985,%o0
+set 4,%o1
+call printf; nop
+.L3012:
+.L3010:
+call regc; nop
+st %o0,[%fp+-4]
+ld [%i0+40],%l3
+cmp %l3,0; be .L3014; nop
+ld [%fp+-4],%l3
+cmp %l3,0; bge .L3016; nop
+set .2987,%o0
+set .L425,%o1
+call printf; nop
+ba .L3017; nop
+.L3016:
+set .2988,%o0
+ld [%fp+-4],%o1
+set .L425,%o2
+call printf; nop
+.L3017:
+.L3014:
+call regp; nop
+st %o0,[%fp+-4]
+ld [%i0+40],%l3
+cmp %l3,0; be .L3018; nop
+ld [%fp+-4],%l3
+cmp %l3,0; bge .L3020; nop
+set .2987,%o0
+set .L3022,%o1
+call printf; nop
+ba .L3021; nop
+.L3020:
+set .2988,%o0
+ld [%fp+-4],%o1
+set .L3022,%o2
+call printf; nop
+.L3021:
+.L3018:
+call regi; nop
+st %o0,[%fp+-4]
+ld [%i0+40],%l3
+cmp %l3,0; be .L3023; nop
+ld [%fp+-4],%l3
+cmp %l3,0; bge .L3025; nop
+set .2987,%o0
+set .L426,%o1
+call printf; nop
+ba .L3026; nop
+.L3025:
+set .2988,%o0
+ld [%fp+-4],%o1
+set .L426,%o2
+call printf; nop
+.L3026:
+.L3023:
+ld [%fp+-20],%i0
+.L2984:
+ret; restore
+.type s81,#function
+.size s81,.-s81
+.global regc
+.align 4
+regc:
+save %sp,-232,%sp
+stb %g0,[%fp+-130]
+set 1,%l3
+stb %l3,[%fp+-109]
+set 2,%l3
+stb %l3,[%fp+-110]
+set 3,%l3
+stb %l3,[%fp+-111]
+set 4,%i5
+set 5,%l3
+stb %l3,[%fp+-112]
+set 6,%i4
+set 7,%l3
+stb %l3,[%fp+-113]
+set 8,%i3
+set 9,%l3
+stb %l3,[%fp+-114]
+set 10,%i2
+set 11,%l3
+stb %l3,[%fp+-115]
+set 12,%i1
+set 13,%l3
+stb %l3,[%fp+-116]
+set 14,%i0
+set 15,%l3
+stb %l3,[%fp+-117]
+set 16,%l7
+set 17,%l3
+stb %l3,[%fp+-118]
+set 18,%l6
+set 19,%l3
+stb %l3,[%fp+-119]
+set 20,%l5
+set 21,%l3
+stb %l3,[%fp+-120]
+set 22,%l4
+set 23,%l3
+stb %l3,[%fp+-121]
+set 24,%l3
+stb %l3,[%fp+-1]
+set 25,%l3
+stb %l3,[%fp+-122]
+set 26,%l3
+stb %l3,[%fp+-2]
+set 27,%l3
+stb %l3,[%fp+-123]
+set 28,%l3
+stb %l3,[%fp+-3]
+set 29,%l3
+stb %l3,[%fp+-124]
+set 30,%l3
+stb %l3,[%fp+-4]
+set 31,%l3
+stb %l3,[%fp+-125]
+set 32,%l3
+stb %l3,[%fp+-5]
+set 33,%l3
+stb %l3,[%fp+-126]
+set 34,%l3
+stb %l3,[%fp+-6]
+set 35,%l3
+stb %l3,[%fp+-127]
+set 36,%l3
+stb %l3,[%fp+-128]
+set 37,%l3
+stb %l3,[%fp+-129]
+set 38,%l3
+stb %l3,[%fp+-131]
+add -109,%fp,%l3
+add -130,%fp,%l2
+sub %l3,%l2,%l2
+st %l2,[%fp+-96]
+add -110,%fp,%l2
+sub %l2,%l3,%l3
+st %l3,[%fp+-92]
+add -111,%fp,%l3
+add -110,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-88]
+add -112,%fp,%l3
+add -111,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-84]
+add -113,%fp,%l3
+add -112,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-80]
+add -114,%fp,%l3
+add -113,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-76]
+add -115,%fp,%l3
+add -114,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-72]
+add -116,%fp,%l3
+add -115,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-68]
+add -117,%fp,%l3
+add -116,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-64]
+add -118,%fp,%l3
+add -117,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-60]
+add -119,%fp,%l3
+add -118,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-56]
+add -120,%fp,%l3
+add -119,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-52]
+add -121,%fp,%l3
+add -120,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-48]
+add -122,%fp,%l3
+add -121,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-44]
+add -123,%fp,%l3
+add -122,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-40]
+add -124,%fp,%l3
+add -123,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-36]
+add -125,%fp,%l3
+add -124,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-32]
+add -126,%fp,%l3
+add -125,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-28]
+add -127,%fp,%l3
+add -126,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-24]
+add -128,%fp,%l3
+add -127,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-20]
+add -129,%fp,%l3
+add -128,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-16]
+add -131,%fp,%l3
+add -129,%fp,%l2
+sub %l3,%l2,%l3
+st %l3,[%fp+-12]
+ld [%fp+-96],%l3
+st %l3,[%fp+-108]
+set 1,%l3
+st %l3,[%fp+-104]
+st %g0,[%fp+-100]
+.L3049:
+ld [%fp+-104],%l3
+cmp %l3,1; be .L3055; nop
+cmp %l3,2; be .L3058; nop
+cmp %l3,3; be .L3063; nop
+ba .L3053; nop
+.L3055:
+ld [%fp+-100],%l3
+sll %l3,2,%l3
+add -96,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-108],%l2
+cmp %l3,%l2; be .L3054; nop
+set 2,%l3
+ld [%fp+-100],%l2
+sll %l2,2,%l2
+add -96,%fp,%l1
+ld [%l2+%l1],%l2
+st %l2,[%fp+-140]
+st %l3,[%fp+-104]
+set 1,%l3
+st %l3,[%fp+-136]
+ba .L3054; nop
+.L3058:
+ld [%fp+-100],%l3
+sll %l3,2,%l3
+add -96,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-108],%l2
+cmp %l3,%l2; bne .L3059; nop
+set 3,%l3
+st %l3,[%fp+-104]
+ba .L3054; nop
+.L3059:
+ld [%fp+-100],%l3
+sll %l3,2,%l3
+add -96,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-140],%l2
+cmp %l3,%l2; bne .L3061; nop
+ld [%fp+-136],%l3
+add %l3,1,%l3
+st %l3,[%fp+-136]
+ba .L3054; nop
+.L3061:
+set 4,%l3
+st %l3,[%fp+-104]
+ba .L3054; nop
+.L3063:
+ld [%fp+-100],%l3
+sll %l3,2,%l3
+add -96,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-108],%l2
+cmp %l3,%l2; be .L3054; nop
+set 4,%l3
+st %l3,[%fp+-104]
+.L3053:
+.L3054:
+.L3050:
+ld [%fp+-100],%l3
+add %l3,1,%l3
+st %l3,[%fp+-100]
+ld [%fp+-100],%l3
+cmp %l3,22; bl .L3049; nop
+ld [%fp+-104],%l3
+cmp %l3,3; bne .L3066; nop
+set 16,%l3
+ld [%fp+-136],%l2
+sub %l3,%l2,%i0
+ba .L3027; nop
+.L3066:
+set -1,%i0
+.L3027:
+ret; restore
+.type regc,#function
+.size regc,.-regc
+.global regi
+.align 4
+regi:
+save %sp,-320,%sp
+st %g0,[%fp+-212]
+set 1,%l3
+st %l3,[%fp+-128]
+set 2,%l3
+st %l3,[%fp+-132]
+set 3,%l3
+st %l3,[%fp+-136]
+set 4,%i5
+set 5,%l3
+st %l3,[%fp+-140]
+set 6,%i4
+set 7,%l3
+st %l3,[%fp+-144]
+set 8,%i3
+set 9,%l3
+st %l3,[%fp+-148]
+set 10,%i2
+set 11,%l3
+st %l3,[%fp+-152]
+set 12,%i1
+set 13,%l3
+st %l3,[%fp+-156]
+set 14,%i0
+set 15,%l3
+st %l3,[%fp+-160]
+set 16,%l7
+set 17,%l3
+st %l3,[%fp+-164]
+set 18,%l6
+set 19,%l3
+st %l3,[%fp+-168]
+set 20,%l5
+set 21,%l3
+st %l3,[%fp+-172]
+set 22,%l4
+set 23,%l3
+st %l3,[%fp+-176]
+set 24,%l3
+st %l3,[%fp+-4]
+set 25,%l3
+st %l3,[%fp+-180]
+set 26,%l3
+st %l3,[%fp+-8]
+set 27,%l3
+st %l3,[%fp+-184]
+set 28,%l3
+st %l3,[%fp+-12]
+set 29,%l3
+st %l3,[%fp+-188]
+set 30,%l3
+st %l3,[%fp+-16]
+set 31,%l3
+st %l3,[%fp+-192]
+set 32,%l3
+st %l3,[%fp+-20]
+set 33,%l3
+st %l3,[%fp+-196]
+set 34,%l3
+st %l3,[%fp+-24]
+set 35,%l3
+st %l3,[%fp+-200]
+set 36,%l3
+st %l3,[%fp+-204]
+set 37,%l3
+st %l3,[%fp+-208]
+set 38,%l3
+st %l3,[%fp+-216]
+add -128,%fp,%l3
+add -212,%fp,%l2
+sub %l3,%l2,%l2
+sra %l2,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l2,4,%l2
+st %l2,[%fp+-112]
+add -132,%fp,%l2
+sub %l2,%l3,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-108]
+add -136,%fp,%l3
+add -132,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-104]
+add -140,%fp,%l3
+add -136,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-100]
+add -144,%fp,%l3
+add -140,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-96]
+add -148,%fp,%l3
+add -144,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-92]
+add -152,%fp,%l3
+add -148,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-88]
+add -156,%fp,%l3
+add -152,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-84]
+add -160,%fp,%l3
+add -156,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-80]
+add -164,%fp,%l3
+add -160,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-76]
+add -168,%fp,%l3
+add -164,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-72]
+add -172,%fp,%l3
+add -168,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-68]
+add -176,%fp,%l3
+add -172,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-64]
+add -180,%fp,%l3
+add -176,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-60]
+add -184,%fp,%l3
+add -180,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-56]
+add -188,%fp,%l3
+add -184,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-52]
+add -192,%fp,%l3
+add -188,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-48]
+add -196,%fp,%l3
+add -192,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-44]
+add -200,%fp,%l3
+add -196,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-40]
+add -204,%fp,%l3
+add -200,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-36]
+add -208,%fp,%l3
+add -204,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-32]
+add -216,%fp,%l3
+add -208,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-28]
+ld [%fp+-112],%l3
+st %l3,[%fp+-124]
+set 1,%l3
+st %l3,[%fp+-120]
+st %g0,[%fp+-116]
+.L3090:
+ld [%fp+-120],%l3
+cmp %l3,1; be .L3096; nop
+cmp %l3,2; be .L3099; nop
+cmp %l3,3; be .L3104; nop
+ba .L3094; nop
+.L3096:
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+add -112,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-124],%l2
+cmp %l3,%l2; be .L3095; nop
+set 2,%l3
+ld [%fp+-116],%l2
+sll %l2,2,%l2
+add -112,%fp,%l1
+ld [%l2+%l1],%l2
+st %l2,[%fp+-224]
+st %l3,[%fp+-120]
+set 1,%l3
+st %l3,[%fp+-220]
+ba .L3095; nop
+.L3099:
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+add -112,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-124],%l2
+cmp %l3,%l2; bne .L3100; nop
+set 3,%l3
+st %l3,[%fp+-120]
+ba .L3095; nop
+.L3100:
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+add -112,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-224],%l2
+cmp %l3,%l2; bne .L3102; nop
+ld [%fp+-220],%l3
+add %l3,1,%l3
+st %l3,[%fp+-220]
+ba .L3095; nop
+.L3102:
+set 4,%l3
+st %l3,[%fp+-120]
+ba .L3095; nop
+.L3104:
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+add -112,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-124],%l2
+cmp %l3,%l2; be .L3095; nop
+set 4,%l3
+st %l3,[%fp+-120]
+.L3094:
+.L3095:
+.L3091:
+ld [%fp+-116],%l3
+add %l3,1,%l3
+st %l3,[%fp+-116]
+ld [%fp+-116],%l3
+cmp %l3,22; bl .L3090; nop
+ld [%fp+-120],%l3
+cmp %l3,3; bne .L3107; nop
+set 16,%l3
+ld [%fp+-220],%l2
+sub %l3,%l2,%i0
+ba .L3068; nop
+.L3107:
+set -1,%i0
+.L3068:
+ret; restore
+.type regi,#function
+.size regi,.-regi
+.global regp
+.align 4
+regp:
+save %sp,-320,%sp
+add -212,%fp,%l3
+st %l3,[%fp+-212]
+add -188,%fp,%l3
+st %l3,[%fp+-188]
+add -192,%fp,%l3
+st %l3,[%fp+-192]
+add -196,%fp,%l3
+st %l3,[%fp+-196]
+add -124,%fp,%i5
+add -124,%fp,%l3
+st %l3,[%fp+-124]
+add -128,%fp,%i4
+add -128,%fp,%l3
+st %l3,[%fp+-128]
+add -132,%fp,%i3
+add -132,%fp,%l3
+st %l3,[%fp+-132]
+add -136,%fp,%i2
+add -136,%fp,%l3
+st %l3,[%fp+-136]
+add -140,%fp,%i1
+add -140,%fp,%l3
+st %l3,[%fp+-140]
+add -144,%fp,%i0
+add -144,%fp,%l3
+st %l3,[%fp+-144]
+add -148,%fp,%l7
+add -148,%fp,%l3
+st %l3,[%fp+-148]
+add -152,%fp,%l6
+add -152,%fp,%l3
+st %l3,[%fp+-152]
+add -156,%fp,%l5
+add -156,%fp,%l3
+st %l3,[%fp+-156]
+add -160,%fp,%l4
+add -160,%fp,%l3
+st %l3,[%fp+-160]
+add -164,%fp,%l3
+st %l3,[%fp+-4]
+add -164,%fp,%l3
+st %l3,[%fp+-164]
+add -168,%fp,%l3
+st %l3,[%fp+-8]
+add -168,%fp,%l3
+st %l3,[%fp+-168]
+add -172,%fp,%l3
+st %l3,[%fp+-12]
+add -172,%fp,%l3
+st %l3,[%fp+-172]
+add -176,%fp,%l3
+st %l3,[%fp+-16]
+add -176,%fp,%l3
+st %l3,[%fp+-176]
+add -180,%fp,%l3
+st %l3,[%fp+-20]
+add -180,%fp,%l3
+st %l3,[%fp+-180]
+add -184,%fp,%l3
+st %l3,[%fp+-24]
+add -184,%fp,%l3
+st %l3,[%fp+-184]
+add -200,%fp,%l3
+st %l3,[%fp+-200]
+add -204,%fp,%l3
+st %l3,[%fp+-204]
+add -216,%fp,%l3
+st %l3,[%fp+-216]
+add -188,%fp,%l3
+add -212,%fp,%l2
+sub %l3,%l2,%l2
+sra %l2,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l2,4,%l2
+st %l2,[%fp+-112]
+add -192,%fp,%l2
+sub %l2,%l3,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-108]
+add -196,%fp,%l3
+add -192,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-104]
+add -124,%fp,%l3
+add -196,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-100]
+add -128,%fp,%l3
+add -124,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-96]
+add -132,%fp,%l3
+add -128,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-92]
+add -136,%fp,%l3
+add -132,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-88]
+add -140,%fp,%l3
+add -136,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-84]
+add -144,%fp,%l3
+add -140,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-80]
+add -148,%fp,%l3
+add -144,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-76]
+add -152,%fp,%l3
+add -148,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-72]
+add -156,%fp,%l3
+add -152,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-68]
+add -160,%fp,%l3
+add -156,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-64]
+add -164,%fp,%l3
+add -160,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-60]
+add -168,%fp,%l3
+add -164,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-56]
+add -172,%fp,%l3
+add -168,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-52]
+add -176,%fp,%l3
+add -172,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-48]
+add -180,%fp,%l3
+add -176,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-44]
+add -184,%fp,%l3
+add -180,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-40]
+add -200,%fp,%l3
+add -184,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-36]
+add -204,%fp,%l3
+add -200,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-32]
+add -216,%fp,%l3
+add -204,%fp,%l2
+sub %l3,%l2,%l3
+sra %l3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l3,4,%l3
+st %l3,[%fp+-28]
+ld [%fp+-112],%l3
+st %l3,[%fp+-208]
+set 1,%l3
+st %l3,[%fp+-120]
+st %g0,[%fp+-116]
+.L3131:
+ld [%fp+-120],%l3
+cmp %l3,1; be .L3137; nop
+cmp %l3,2; be .L3140; nop
+cmp %l3,3; be .L3145; nop
+ba .L3135; nop
+.L3137:
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+add -112,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-208],%l2
+cmp %l3,%l2; be .L3136; nop
+set 2,%l3
+ld [%fp+-116],%l2
+sll %l2,2,%l2
+add -112,%fp,%l1
+ld [%l2+%l1],%l2
+st %l2,[%fp+-224]
+st %l3,[%fp+-120]
+set 1,%l3
+st %l3,[%fp+-220]
+ba .L3136; nop
+.L3140:
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+add -112,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-208],%l2
+cmp %l3,%l2; bne .L3141; nop
+set 3,%l3
+st %l3,[%fp+-120]
+ba .L3136; nop
+.L3141:
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+add -112,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-224],%l2
+cmp %l3,%l2; bne .L3143; nop
+ld [%fp+-220],%l3
+add %l3,1,%l3
+st %l3,[%fp+-220]
+ba .L3136; nop
+.L3143:
+set 4,%l3
+st %l3,[%fp+-120]
+ba .L3136; nop
+.L3145:
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+add -112,%fp,%l2
+ld [%l3+%l2],%l3
+ld [%fp+-208],%l2
+cmp %l3,%l2; be .L3136; nop
+set 4,%l3
+st %l3,[%fp+-120]
+.L3135:
+.L3136:
+.L3132:
+ld [%fp+-116],%l3
+add %l3,1,%l3
+st %l3,[%fp+-116]
+ld [%fp+-116],%l3
+cmp %l3,22; bl .L3131; nop
+ld [%fp+-120],%l3
+cmp %l3,3; bne .L3148; nop
+set 16,%l3
+ld [%fp+-220],%l2
+sub %l3,%l2,%i0
+ba .L3109; nop
+.L3148:
+set -1,%i0
+.L3109:
+ret; restore
+.type regp,#function
+.size regp,.-regp
+.section ".bss"
+.type .3151,#object
+.size .3151,420
+.local .3151
+.common .3151,420,4
+.section ".data"
+.type .3152,#object
+.align 1
+.3152:
+.byte 115
+.byte 56
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .3152,10
+.type .3153,#object
+.size .3153,8
+.align 1
+.3153:
+.byte 115
+.byte 56
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s84
+.section ".text"
+.align 4
+s84:
+save %sp,-232,%sp
+set .3153,%i2
+add %i0,60,%i1
+mov %g0,%l7
+.L3154:
+.L3155:
+mov %i1,%l4
+add %l4,1,%i1
+mov %i2,%l3
+add %l3,1,%i2
+ldsb [%l3],%l3
+stb %l3,[%l4]
+sll %l3,8*(4-1),%l4; sra %l4,8*(4-1),%l4
+cmp %l4,0; bne .L3154; nop
+set 3,%o0
+call fip; nop
+mov %o0,%l6
+ld [%l6],%l4
+cmp %l4,3; be .L3157; nop
+ld [%i0+44],%l4
+cmp %l4,0; be .L3159; nop
+set .3152,%o0
+set 1,%o1
+call printf; nop
+.L3159:
+add %l7,1,%l7
+.L3157:
+set glork,%l5
+set 4,%o0
+call %l5; nop
+cmp %o0,4; be .L3161; nop
+ld [%i0+44],%l4
+cmp %l4,0; be .L3163; nop
+set .3152,%o0
+set 2,%o1
+call printf; nop
+.L3163:
+add %l7,2,%l7
+.L3161:
+mov %g0,%i4
+.L3165:
+sll %i4,2,%l4
+add -68,%fp,%l3
+st %i4,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%l4+%l3]
+sll %i4,2,%l4
+add -136,%fp,%l3
+add -68,%fp,%l2
+add %l4,%l2,%l2
+st %l2,[%l4+%l3]
+.L3166:
+add %i4,1,%i4
+cmp %i4,17; bl .L3165; nop
+set .L412,%l4
+ld [%l4],%f31
+st %f31,[%fp+-140]
+mov %g0,%i4
+.L3169:
+ld [%fp+-140],%f31
+sll %i4,2,%l4
+add -136,%fp,%l3
+ld [%l4+%l3],%l4
+ld [%l4],%f30
+fadds %f31,%f30,%f31
+st %f31,[%fp+-140]
+.L3170:
+add %i4,1,%i4
+cmp %i4,17; bl .L3169; nop
+ld [%fp+-140],%f31
+set .L3175,%l4
+ld [%l4],%f30
+fcmpes %f31,%f30; nop; fbue .L3173; nop
+ld [%i0+44],%l4
+cmp %l4,0; be .L3176; nop
+set .3152,%o0
+set 4,%o1
+call printf; nop
+.L3176:
+add %l7,4,%l7
+.L3173:
+mov %g0,%i3
+.L3178:
+mov %g0,%i4
+.L3182:
+mov %g0,%i5
+.L3186:
+sll %i5,2,%l4
+smul %i4,28,%l3
+smul %i3,140,%l2
+set .3151,%l1
+add %l2,%l1,%l2
+add %l3,%l2,%l3
+smul %i3,35,%l2
+smul %i4,7,%l1
+add %l2,%l1,%l2
+add %l2,%i5,%l2
+st %l2,[%l4+%l3]
+.L3187:
+add %i5,1,%i5
+cmp %i5,7; bl .L3186; nop
+.L3183:
+add %i4,1,%i4
+cmp %i4,5; bl .L3182; nop
+.L3179:
+add %i3,1,%i3
+cmp %i3,3; bl .L3178; nop
+set 1,%i3
+set 2,%i4
+set 3,%i5
+set .3151,%o0
+set 105,%o1
+mov %g0,%o2
+call array; nop
+mov %o0,%l4
+smul %i3,140,%l3
+set .3151,%l2
+add %l3,%l2,%o0
+set 35,%l3
+mov %l3,%o1
+mov %l3,%o2
+call array; nop
+mov %o0,%l3
+smul %i4,28,%l2
+smul %i3,140,%l1
+set .3151,%l0
+add %l1,%l0,%l1
+add %l2,%l1,%o0
+set 7,%o1
+set 49,%o2
+call array; nop
+add %l4,%l3,%l4
+add %l4,%o0,%l4
+sll %i5,2,%l3
+smul %i4,28,%l2
+smul %i3,140,%l1
+set .3151,%l0
+add %l1,%l0,%l1
+add %l2,%l1,%l2
+ld [%l3+%l2],%l3
+add %l4,%l3,%l4
+sub %l4,52,%l4
+cmp %l4,0; be .L3190; nop
+ld [%i0+44],%l4
+cmp %l4,0; be .L3192; nop
+set .3152,%o0
+set 8,%o1
+call printf; nop
+.L3192:
+add %l7,8,%l7
+.L3190:
+mov %l7,%i0
+.L3150:
+ret; restore
+.type s84,#function
+.size s84,.-s84
+.global array
+.align 4
+array:
+mov %g0,%o5
+ba .L3198; nop
+.L3195:
+sll %o5,2,%o4
+ld [%o4+%o0],%o4
+add %o5,%o2,%o3
+cmp %o4,%o3; be .L3199; nop
+set 1,%o0
+ba .L3194; nop
+.L3199:
+.L3196:
+add %o5,1,%o5
+.L3198:
+cmp %o5,%o1; bl .L3195; nop
+mov %g0,%o0
+.L3194:
+retl; nop
+.type array,#function
+.size array,.-array
+.section ".bss"
+.type .3202,#object
+.size .3202,4
+.local .3202
+.common .3202,4,4
+.global fip
+.section ".text"
+.align 4
+fip:
+set .3202,%o5
+st %o0,[%o5]
+mov %o5,%o0
+.L3201:
+retl; nop
+.type fip,#function
+.size fip,.-fip
+.global glork
+.align 4
+glork:
+.L3203:
+retl; nop
+.type glork,#function
+.size glork,.-glork
+.section ".data"
+.type .3205,#object
+.align 1
+.3205:
+.byte 115
+.byte 56
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .3205,10
+.type .3206,#object
+.size .3206,8
+.align 1
+.3206:
+.byte 115
+.byte 56
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.type .3214,#object
+.align 4
+.3214:
+.word .L425
+.word .L427
+.word .L426
+.word .L428
+.word .L429
+.word .L430
+.word .L431
+.size .3214,28
+.type .3215,#object
+.align 1
+.3215:
+.byte 32
+.byte 97
+.byte 108
+.byte 105
+.byte 103
+.byte 110
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 58
+.byte 32
+.byte 0
+.size .3215,13
+.global s85
+.section ".text"
+.align 4
+s85:
+save %sp,-488,%sp
+set .3206,%i4
+add %i0,60,%i3
+mov %g0,%i2
+.L3219:
+.L3220:
+mov %i3,%i1
+add %i1,1,%i3
+mov %i4,%l7
+add %l7,1,%i4
+ldsb [%l7],%l7
+stb %l7,[%i1]
+sll %l7,8*(4-1),%i1; sra %i1,8*(4-1),%i1
+cmp %i1,0; bne .L3219; nop
+add -284,%fp,%l7
+add -304,%fp,%l6
+sub %l7,%l6,%l7
+cmp %l7,%g0; ble .L3230; nop
+add -280,%fp,%l7
+add -284,%fp,%l6
+sub %l7,%l6,%l7
+cmp %l7,%g0; ble .L3230; nop
+add -276,%fp,%l7
+add -280,%fp,%l6
+sub %l7,%l6,%l7
+cmp %l7,%g0; bg .L3222; nop
+.L3230:
+ld [%i0+44],%i1
+cmp %i1,0; be .L3231; nop
+set .3205,%o0
+set 1,%o1
+call printf; nop
+.L3231:
+add %i2,1,%i2
+.L3222:
+add -337,%fp,%i1
+add -338,%fp,%l7
+sub %i1,%l7,%i1
+st %i1,[%fp+-268]
+add -340,%fp,%i1
+add -342,%fp,%l7
+sub %i1,%l7,%i1
+st %i1,[%fp+-264]
+add -348,%fp,%i1
+add -352,%fp,%l7
+sub %i1,%l7,%i1
+st %i1,[%fp+-260]
+add -356,%fp,%i1
+add -360,%fp,%l7
+sub %i1,%l7,%i1
+st %i1,[%fp+-256]
+add -364,%fp,%i1
+add -368,%fp,%l7
+sub %i1,%l7,%i1
+st %i1,[%fp+-252]
+add -372,%fp,%i1
+add -376,%fp,%l7
+sub %i1,%l7,%i1
+st %i1,[%fp+-248]
+add -384,%fp,%i1
+add -392,%fp,%l7
+sub %i1,%l7,%i1
+st %i1,[%fp+-244]
+ld [%i0+40],%i1
+cmp %i1,0; be .L3246; nop
+mov %g0,%i5
+.L3248:
+set .L3252,%o0
+sll %i5,2,%i1
+set .3214,%l7
+ld [%i1+%l7],%o1
+set .3215,%o2
+add -268,%fp,%l7
+ld [%i1+%l7],%o3
+call printf; nop
+.L3249:
+add %i5,1,%i5
+cmp %i5,7; bl .L3248; nop
+.L3246:
+ld [%fp+-272],%i1
+set 0x1c000000,%l7
+or %i1,%l7,%i1
+st %i1,[%fp+-272]
+ld [%fp+-272],%i1
+mov %i1,%l7
+set 0x3fffffff,%l6
+and %l7,%l6,%l7
+sll %i1,3,%i1
+sra %i1,29,%i1
+sll %i1,30,%i1
+sra %i1,30,%i1
+sll %i1,30,%i1
+set 0xc0000000,%l6
+and %i1,%l6,%i1
+or %l7,%i1,%i1
+st %i1,[%fp+-272]
+ld [%fp+-272],%i1
+mov %i1,%l7
+set 0xe3ffffff,%l6
+and %l7,%l6,%l7
+sra %i1,30,%i1
+sll %i1,29,%i1
+sra %i1,29,%i1
+sll %i1,26,%i1
+set 0x1c000000,%l6
+and %i1,%l6,%i1
+or %l7,%i1,%i1
+st %i1,[%fp+-272]
+ld [%fp+-272],%i1
+sll %i1,3,%i1
+sra %i1,29,%i1
+cmp %i1,3; be .L3253; nop
+ld [%fp+-272],%i1
+sll %i1,3,%i1
+sra %i1,29,%i1
+cmp %i1,-1; bne .L3255; nop
+ld [%i0+40],%i1
+cmp %i1,0; be .L3256; nop
+set .L3259,%o0
+call printf; nop
+ba .L3256; nop
+.L3255:
+ld [%i0+44],%i1
+cmp %i1,0; be .L3260; nop
+set .3205,%o0
+set 2,%o1
+call printf; nop
+.L3260:
+add %i2,2,%i2
+.L3256:
+.L3253:
+ld [%fp+-272],%i1
+set 0x2000000,%l7
+or %i1,%l7,%i1
+st %i1,[%fp+-272]
+ld [%fp+-272],%i1
+sll %i1,6,%i1
+sra %i1,31,%i1
+cmp %i1,1; be .L3262; nop
+ld [%i0+40],%i1
+cmp %i1,0; be .L3264; nop
+set .L3266,%o0
+call printf; nop
+.L3264:
+.L3262:
+add -240,%fp,%i1
+sub %i1,%i1,%i1
+cmp %i1,%g0; bne .L3274; nop
+cmp %i1,%g0; bne .L3274; nop
+cmp %i1,%g0; bne .L3274; nop
+cmp %i1,%g0; bne .L3274; nop
+cmp %i1,%g0; bne .L3274; nop
+cmp %i1,%g0; bne .L3274; nop
+cmp %i1,%g0; be .L3267; nop
+.L3274:
+ld [%i0+44],%i1
+cmp %i1,0; be .L3275; nop
+set .3205,%o0
+set 4,%o1
+call printf; nop
+.L3275:
+add %i2,4,%i2
+.L3267:
+ba .L3277; nop
+ld [%i0+44],%i1
+cmp %i1,0; be .L3279; nop
+set .3205,%o0
+set 8,%o1
+call printf; nop
+.L3279:
+add %i2,8,%i2
+.L3277:
+add -336,%fp,%i1
+st %i1,[%fp+-276]
+set 2,%i1
+stb %i1,[%fp+-336]
+ld [%fp+-276],%i1
+ldsb [%i1],%l7
+add %l7,1,%l7
+stb %l7,[%i1]
+ldsb [%fp+-336],%i1
+cmp %i1,3; be .L3283; nop
+ld [%i0+44],%i1
+cmp %i1,0; be .L3285; nop
+set .3205,%o0
+set 16,%o1
+call printf; nop
+.L3285:
+add %i2,16,%i2
+.L3283:
+mov %i2,%i0
+.L3204:
+ret; restore
+.type s85,#function
+.size s85,.-s85
+.section ".data"
+.type .3288,#object
+.align 1
+.3288:
+.byte 115
+.byte 56
+.byte 54
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .3288,10
+.type .3289,#object
+.size .3289,8
+.align 1
+.3289:
+.byte 115
+.byte 56
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.type .3290,#object
+.align 4
+.3290:
+.word 0x1
+.word 0x3
+.word 0x5
+.size .3290,12
+.type .3291,#object
+.size .3291,4
+.align 4
+.3291:
+.word .3290+8
+.section ".bss"
+.type .3293,#object
+.size .3293,40
+.local .3293
+.common .3293,40,4
+.section ".data"
+.type .3294,#object
+.align 4
+.3294:
+.word 0x3f800000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40000000
+.word 0x40800000
+.word 0x40c00000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40e00000
+.word 0x0
+.word 0x0
+.word 0x0
+.size .3294,48
+.type .3295,#object
+.size .3295,48
+.align 4
+.3295:
+.word 0x3f800000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40000000
+.word 0x40800000
+.word 0x40c00000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40e00000
+.skip 12
+.type .3296,#object
+.size .3296,48
+.align 4
+.3296:
+.word 0x3f800000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40000000
+.word 0x40800000
+.word 0x40c00000
+.word 0x40400000
+.word 0x40a00000
+.word 0x40e00000
+.skip 12
+.type .3297,#object
+.size .3297,48
+.align 4
+.3297:
+.word 0x3f800000
+.skip 8
+.word 0x40000000
+.skip 8
+.word 0x40400000
+.skip 8
+.word 0x40800000
+.skip 8
+.global s86
+.section ".text"
+.align 4
+s86:
+save %sp,-96,%sp
+set .3291,%l3
+ld [%l3],%l3
+add %l3,-4,%l4
+call one; nop
+sll %o0,2,%l3
+add %l3,%l4,%i5
+set .3289,%l7
+add %i0,60,%l6
+mov %g0,%l5
+.L3298:
+.L3299:
+mov %l6,%l3
+add %l3,1,%l6
+mov %l7,%l2
+add %l2,1,%l7
+ldsb [%l2],%l2
+stb %l2,[%l3]
+sll %l2,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+cmp %l3,0; bne .L3298; nop
+set .3291,%l3
+ld [%l3],%l3
+ld [%l3],%l3
+cmp %l3,5; be .L3301; nop
+ld [%i0+44],%l3
+cmp %l3,0; be .L3303; nop
+set .3288,%o0
+set 1,%o1
+call printf; nop
+.L3303:
+add %l5,1,%l5
+.L3301:
+ld [%l4],%l3
+cmp %l3,3; be .L3305; nop
+ld [%i0+44],%l3
+cmp %l3,0; be .L3307; nop
+set .3288,%o0
+set 2,%o1
+call printf; nop
+.L3307:
+add %l5,2,%l5
+.L3305:
+ld [%i5],%l3
+cmp %l3,5; be .L3309; nop
+ld [%i0+44],%l3
+cmp %l3,0; be .L3311; nop
+set .3288,%o0
+set 4,%o1
+call printf; nop
+.L3311:
+add %l5,4,%l5
+.L3309:
+mov %g0,%i1
+mov %g0,%i4
+.L3313:
+sll %i4,2,%l3
+set .3293,%l2
+ld [%l3+%l2],%l3
+cmp %l3,0; be .L3317; nop
+set 1,%i1
+.L3317:
+.L3314:
+add %i4,1,%i4
+cmp %i4,10; bl .L3313; nop
+cmp %i1,0; be .L3319; nop
+ld [%i0+44],%l3
+cmp %l3,0; be .L3321; nop
+set .3288,%o0
+set 8,%o1
+call printf; nop
+.L3321:
+add %l5,8,%l5
+.L3319:
+mov %g0,%i1
+mov %g0,%i3
+.L3323:
+mov %g0,%i4
+.L3327:
+smul %i3,3,%l3
+add %l3,%i4,%i2
+sll %i4,2,%l3
+smul %i3,12,%l2
+set .3295,%l1
+add %l2,%l1,%l1
+ld [%l3+%l1],%f31
+set .3296,%l1
+add %l2,%l1,%l2
+ld [%l3+%l2],%f30
+fcmpes %f31,%f30; nop; fbne .L3333; nop
+sll %i2,2,%l3
+set .3294,%l2
+ld [%l3+%l2],%f30
+fcmpes %f31,%f30; nop; fbue .L3331; nop
+.L3333:
+set 1,%i1
+.L3331:
+.L3328:
+add %i4,1,%i4
+cmp %i4,3; bl .L3327; nop
+.L3324:
+add %i3,1,%i3
+cmp %i3,4; bl .L3323; nop
+cmp %i1,0; be .L3334; nop
+ld [%i0+44],%l3
+cmp %l3,0; be .L3336; nop
+set .3288,%o0
+set 16,%o1
+call printf; nop
+.L3336:
+add %l5,16,%l5
+.L3334:
+mov %g0,%i1
+mov %g0,%i4
+.L3338:
+smul %i4,12,%l3
+set .3297,%l2
+ld [%l3+%l2],%f31
+add %i4,1,%l3
+st %l3,[%sp+64]; ld [%sp+64],%f30; fitos %f30,%f30
+fcmpes %f31,%f30; nop; fbue .L3342; nop
+set 1,%i1
+.L3342:
+.L3339:
+add %i4,1,%i4
+cmp %i4,4; bl .L3338; nop
+cmp %i1,0; be .L3344; nop
+ld [%i0+44],%l3
+cmp %l3,0; be .L3346; nop
+set .3288,%o0
+set 32,%o1
+call printf; nop
+.L3346:
+add %l5,32,%l5
+.L3344:
+mov %l5,%i0
+.L3287:
+ret; restore
+.type s86,#function
+.size s86,.-s86
+.global one
+.align 4
+one:
+set 1,%o0
+.L3348:
+retl; nop
+.type one,#function
+.size one,.-one
+.section ".data"
+.type .3350,#object
+.align 1
+.3350:
+.byte 115
+.byte 56
+.byte 56
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .3350,10
+.type .3351,#object
+.size .3351,8
+.align 1
+.3351:
+.byte 115
+.byte 56
+.byte 56
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s88
+.section ".text"
+.align 4
+s88:
+save %sp,-112,%sp
+set .3351,%i5
+add %i0,60,%i4
+mov %g0,%i3
+.L3353:
+.L3354:
+mov %i4,%i1
+add %i1,1,%i4
+mov %i5,%l7
+add %l7,1,%i5
+ldsb [%l7],%l7
+stb %l7,[%i1]
+sll %l7,8*(4-1),%i1; sra %i1,8*(4-1),%i1
+cmp %i1,0; bne .L3353; nop
+ba .L3356; nop
+ld [%i0+44],%i1
+cmp %i1,0; be .L3358; nop
+set .3350,%o0
+set 1,%o1
+call printf; nop
+.L3358:
+add %i3,1,%i3
+.L3356:
+set metricp,%i1
+add -20,%fp,%l7
+st %l7,[%i1]
+set 2,%l7
+st %l7,[%fp+-20]
+ld [%i1],%i1
+set 3,%l7
+st %l7,[%i1]
+ld [%fp+-20],%i1
+cmp %i1,3; be .L3360; nop
+ld [%i0+44],%i1
+cmp %i1,0; be .L3362; nop
+set .3350,%o0
+set 2,%o1
+call printf; nop
+.L3362:
+add %i3,2,%i3
+.L3360:
+set .L419,%i1
+ld2 [%i1],%f30
+std %f30,[%fp+-16]
+std %f30,[%fp+-8]
+add -16,%fp,%i2
+set .L418,%i1
+ld2 [%i1],%f30
+st2 %f30,[%i2]
+set .L418,%i1
+ld2 [%i1],%f30
+st2 %f30,[%i2+8]
+ldd [%fp+-16],%f30
+ldd [%fp+-8],%f28
+faddd %f30,%f28,%f30
+set .L416,%i1
+ld2 [%i1],%f28
+fcmped %f30,%f28; nop; fbue .L3365; nop
+ld [%i0+44],%i1
+cmp %i1,0; be .L3368; nop
+set .3350,%o0
+set 4,%o1
+call printf; nop
+.L3368:
+add %i3,4,%i3
+.L3365:
+mov %i3,%i0
+.L3349:
+ret; restore
+.type s88,#function
+.size s88,.-s88
+.section ".data"
+.type .3371,#object
+.align 1
+.3371:
+.byte 115
+.byte 57
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size .3371,9
+.type .3372,#object
+.size .3372,8
+.align 1
+.3372:
+.byte 115
+.byte 57
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.global s9
+.section ".text"
+.align 4
+s9:
+save %sp,-96,%sp
+set .3372,%i3
+add %i0,60,%i2
+mov %g0,%i1
+.L3373:
+.L3374:
+mov %i2,%l7
+add %l7,1,%i2
+mov %i3,%l6
+add %l6,1,%i3
+ldsb [%l6],%l6
+stb %l6,[%l7]
+sll %l6,8*(4-1),%l7; sra %l7,8*(4-1),%l7
+cmp %l7,0; bne .L3373; nop
+mov %g0,%i4
+mov %g0,%i5
+.L3376:
+set 2,%l5
+mov %l5,%l7
+mov %l5,%l6
+set 3,%l3
+mov %l3,%l5
+mov %l3,%l4
+cmp %l4,3; bne .L3382; nop
+cmp %l5,3; be .L3380; nop
+.L3382:
+set 1,%i4
+.L3380:
+cmp %l6,2; bne .L3385; nop
+cmp %l7,2; be .L3383; nop
+.L3385:
+set 1,%i4
+.L3383:
+.L3377:
+add %i5,1,%i5
+cmp %i5,2; bl .L3376; nop
+cmp %i4,0; be .L3390; nop
+ld [%i0+44],%l7
+cmp %l7,0; be .L3388; nop
+set .3371,%o0
+set 1,%o1
+call printf; nop
+.L3388:
+add %i1,1,%i1
+ba .L3390; nop
+ld [%i0+44],%l7
+cmp %l7,0; be .L3391; nop
+set .3371,%o0
+set 2,%o1
+call printf; nop
+.L3391:
+add %i1,2,%i1
+.L3390:
+mov %i1,%i0
+.L3370:
+ret; restore
+.type s9,#function
+.size s9,.-s9
+.global setev
+.align 4
+setev:
+set extvar,%o5
+set 1066,%o4
+st %o4,[%o5]
+mov %g0,%o0
+.L3393:
+retl; nop
+.type setev,#function
+.size setev,.-setev
+.section ".bss"
+.global rfs
+.type rfs,#object
+.size rfs,8
+.common rfs,8,1
+.global crc
+.type crc,#object
+.size crc,4
+.common crc,4,4
+.global rrc
+.type rrc,#object
+.size rrc,4
+.common rrc,4,4
+.global flgl
+.type flgl,#object
+.size flgl,4
+.common flgl,4,4
+.global flgd
+.type flgd,#object
+.size flgd,4
+.common flgd,4,4
+.global flgm
+.type flgm,#object
+.size flgm,4
+.common flgm,4,4
+.global flgs
+.type flgs,#object
+.size flgs,4
+.common flgs,4,4
+.global dprec
+.type dprec,#object
+.size dprec,4
+.common dprec,4,4
+.global fprec
+.type fprec,#object
+.size fprec,4
+.common fprec,4,4
+.global dbits
+.type dbits,#object
+.size dbits,4
+.common dbits,4,4
+.global fbits
+.type fbits,#object
+.size fbits,4
+.common fbits,4,4
+.global ubits
+.type ubits,#object
+.size ubits,4
+.common ubits,4,4
+.global lbits
+.type lbits,#object
+.size lbits,4
+.common lbits,4,4
+.global metricp
+.type metricp,#object
+.size metricp,4
+.common metricp,4,4
+.global extvar
+.type extvar,#object
+.size extvar,4
+.common extvar,4,4
+.section ".rodata"
+.align 1
+.L3266:
+.byte 66
+.byte 101
+.byte 32
+.byte 101
+.byte 115
+.byte 112
+.byte 101
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 101
+.byte 102
+.byte 117
+.byte 108
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 49
+.byte 45
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 102
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L3259:
+.byte 83
+.byte 105
+.byte 103
+.byte 110
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 101
+.byte 110
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 102
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L3252:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 4
+.L3175:
+.word 0x43080000
+.align 1
+.L3022:
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.L2472:
+.byte 73
+.byte 110
+.byte 99
+.byte 114
+.byte 101
+.byte 97
+.byte 115
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 97
+.byte 114
+.byte 114
+.byte 97
+.byte 121
+.byte 32
+.byte 101
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 114
+.byte 101
+.byte 97
+.byte 115
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 108
+.byte 111
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 10
+.byte 0
+.align 4
+.L2356:
+.word 0x41d00000
+.align 8
+.L2355:
+.word 0x403a0000
+.word 0x0
+.align 8
+.L1659:
+.word 0x40040000
+.word 0x0
+.align 8
+.L1484:
+.word 0x40240000
+.word 0x0
+.align 4
+.L1455:
+.word 0x41200000
+.align 8
+.L1280:
+.word 0x40080000
+.word 0x0
+.align 4
+.L1251:
+.word 0x40400000
+.align 8
+.L1076:
+.word 0x401c0000
+.word 0x0
+.align 4
+.L1047:
+.word 0x40e00000
+.align 8
+.L870:
+.word 0x40140000
+.word 0x0
+.align 4
+.L841:
+.word 0x40a00000
+.align 8
+.L836:
+.word 0x41e00000
+.word 0x0
+.align 4
+.L828:
+.word 0x4f000000
+.align 1
+.L653:
+.byte 113
+.byte 117
+.byte 101
+.byte 101
+.byte 112
+.byte 0
+.align 1
+.L639:
+.byte 10
+.byte 0
+.align 1
+.L638:
+.byte 37
+.byte 100
+.byte 0
+.align 1
+.L633:
+.byte 32
+.byte 32
+.byte 32
+.byte 107
+.byte 101
+.byte 121
+.byte 61
+.byte 0
+.align 8
+.L596:
+.word 0x40000000
+.word 0x0
+.align 8
+.L536:
+.word 0x40ce8480
+.word 0x0
+.align 8
+.L535:
+.word 0x405f4000
+.word 0x0
+.align 4
+.L534:
+.word 0x42fa0000
+.align 4
+.L529:
+.word 0x40000000
+.align 1
+.L431:
+.byte 100
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 0
+.align 1
+.L430:
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 0
+.align 1
+.L429:
+.byte 117
+.byte 110
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 0
+.align 1
+.L428:
+.byte 108
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.L427:
+.byte 115
+.byte 104
+.byte 111
+.byte 114
+.byte 116
+.byte 0
+.align 1
+.L426:
+.byte 105
+.byte 110
+.byte 116
+.byte 0
+.align 1
+.L425:
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 0
+.align 8
+.L419:
+.word 0x0
+.word 0x0
+.align 8
+.L418:
+.word 0x3ff00000
+.word 0x0
+.align 8
+.L417:
+.word 0x40100000
+.word 0x0
+.align 8
+.L416:
+.word 0x40000000
+.word 0x0
+.align 4
+.L412:
+.word 0x0
+.align 4
+.L411:
+.word 0x3f800000
+.align 1
+.L390:
+.byte 113
+.byte 117
+.byte 101
+.byte 101
+.byte 112
+.byte 33
+.byte 0
+.align 1
+.L379:
+.byte 10
+.byte 9
+.byte 8
+.byte 13
+.byte 12
+.byte 92
+.byte 39
+.byte 0
+.align 1
+.L375:
+.byte 46
+.byte 34
+.byte 46
+.byte 0
+.align 1
+.L362:
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 8
+.L333:
+.word 0x40938800
+.word 0x0
+.align 1
+.L199:
+.byte 32
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 108
+.byte 111
+.byte 110
+.byte 103
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L198:
+.byte 68
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 99
+.byte 116
+.byte 97
+.byte 108
+.byte 47
+.byte 104
+.byte 101
+.byte 120
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 116
+.byte 97
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 109
+.byte 101
+.byte 115
+.byte 32
+.byte 103
+.byte 105
+.byte 118
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L27:
+.byte 10
+.byte 70
+.byte 97
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L26:
+.byte 10
+.byte 78
+.byte 111
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 100
+.byte 101
+.byte 116
+.byte 101
+.byte 99
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L20:
+.byte 83
+.byte 101
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 116
+.byte 117
+.byte 114
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
diff --git a/lcc/sparc/solaris/tst/cvt.1bk b/lcc/sparc/solaris/tst/cvt.1bk
index 74c79f1..b28b302 100755
--- a/lcc/sparc/solaris/tst/cvt.1bk
+++ b/lcc/sparc/solaris/tst/cvt.1bk
@@ -1,11 +1,11 @@
-1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
-2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
-3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
-4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
-5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
-6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
-7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
-8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
-9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
-10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
-11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
+1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
+2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
+3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
+4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
+5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
+6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
+7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
+8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
+9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
+10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
+11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
diff --git a/lcc/sparc/solaris/tst/cvt.2bk b/lcc/sparc/solaris/tst/cvt.2bk
index b3ab360..241527d 100755
--- a/lcc/sparc/solaris/tst/cvt.2bk
+++ b/lcc/sparc/solaris/tst/cvt.2bk
@@ -1,2 +1,2 @@
-tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
-tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
+tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
+tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
diff --git a/lcc/sparc/solaris/tst/cvt.sbk b/lcc/sparc/solaris/tst/cvt.sbk
index 382a40a..262427e 100755
--- a/lcc/sparc/solaris/tst/cvt.sbk
+++ b/lcc/sparc/solaris/tst/cvt.sbk
@@ -1,715 +1,715 @@
-.global print
-.section ".text"
-.align 4
-print:
-save %sp,-128,%sp
-set .L2,%o0
-set c,%i5
-ldsb [%i5],%o1
-set s,%i5
-ldsh [%i5],%o2
-set i,%i5
-ld [%i5],%o3
-set l,%i5
-ld [%i5],%o4
-set C,%i5
-ldub [%i5],%o5
-set S,%i5
-lduh [%i5],%i5
-st %i5,[%sp+4*6+68]
-set I,%i5
-ld [%i5],%i5
-st %i5,[%sp+4*7+68]
-set L,%i5
-ld [%i5],%i5
-st %i5,[%sp+4*8+68]
-set f,%i5
-ld [%i5],%f31
-fstod %f31,%f30
-st %f30,[%sp+4*9+68]
-st %f31,[%sp+4*10+68]
-set d,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*11+68]
-st %f31,[%sp+4*12+68]
-set D,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*13+68]
-st %f31,[%sp+4*14+68]
-call printf; nop
-.L1:
-ret; restore
-.type print,#function
-.size print,.-print
-.global main
-.align 4
-main:
-save %sp,-104,%sp
-set c,%i5
-set 1,%i4
-stb %i4,[%i5]
-ldsb [%i5],%i5
-set s,%i4
-mov %i5,%i3
-sth %i3,[%i4]
-set i,%i4
-st %i5,[%i4]
-set l,%i4
-st %i5,[%i4]
-set C,%i3
-mov %i5,%i2
-stb %i2,[%i3]
-set S,%i3
-mov %i5,%i2
-sth %i2,[%i3]
-set I,%i3
-st %i5,[%i3]
-set L,%i3
-st %i5,[%i3]
-set f,%i4
-st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%i4]
-st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-set d,%i5
-st2 %f30,[%i5]
-set D,%i5
-st2 %f30,[%i5]
-call print; nop
-set s,%i5
-set 2,%i4
-sth %i4,[%i5]
-ldsh [%i5],%i5
-set c,%i4
-mov %i5,%i3
-stb %i3,[%i4]
-set i,%i4
-st %i5,[%i4]
-set l,%i4
-st %i5,[%i4]
-set C,%i3
-mov %i5,%i2
-stb %i2,[%i3]
-set S,%i3
-mov %i5,%i2
-sth %i2,[%i3]
-set I,%i3
-st %i5,[%i3]
-set L,%i3
-st %i5,[%i3]
-set f,%i4
-st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%i4]
-st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-set d,%i5
-st2 %f30,[%i5]
-set D,%i5
-st2 %f30,[%i5]
-call print; nop
-set i,%i5
-set 3,%i4
-st %i4,[%i5]
-ld [%i5],%i5
-set c,%i4
-mov %i5,%i3
-stb %i3,[%i4]
-set s,%i4
-mov %i5,%i3
-sth %i3,[%i4]
-set l,%i4
-st %i5,[%i4]
-set C,%i3
-mov %i5,%i2
-stb %i2,[%i3]
-set S,%i3
-mov %i5,%i2
-sth %i2,[%i3]
-set I,%i3
-st %i5,[%i3]
-set L,%i3
-st %i5,[%i3]
-set f,%i4
-st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%i4]
-st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-set d,%i5
-st2 %f30,[%i5]
-set D,%i5
-st2 %f30,[%i5]
-call print; nop
-set l,%i5
-set 4,%i4
-st %i4,[%i5]
-ld [%i5],%i5
-set c,%i4
-mov %i5,%i3
-stb %i3,[%i4]
-set s,%i4
-mov %i5,%i3
-sth %i3,[%i4]
-set i,%i4
-st %i5,[%i4]
-set C,%i3
-mov %i5,%i2
-stb %i2,[%i3]
-set S,%i3
-mov %i5,%i2
-sth %i2,[%i3]
-set I,%i3
-st %i5,[%i3]
-set L,%i3
-st %i5,[%i3]
-set f,%i4
-st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%i4]
-st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-set d,%i5
-st2 %f30,[%i5]
-set D,%i5
-st2 %f30,[%i5]
-call print; nop
-set C,%i5
-set 5,%i4
-stb %i4,[%i5]
-ldub [%i5],%i5
-set c,%i4
-mov %i5,%i3
-stb %i3,[%i4]
-set s,%i4
-mov %i5,%i3
-sth %i3,[%i4]
-set i,%i4
-st %i5,[%i4]
-set l,%i4
-st %i5,[%i4]
-set S,%i3
-mov %i5,%i2
-sth %i2,[%i3]
-set I,%i3
-st %i5,[%i3]
-set L,%i3
-st %i5,[%i3]
-set f,%i4
-st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%i4]
-st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-set d,%i5
-st2 %f30,[%i5]
-set D,%i5
-st2 %f30,[%i5]
-call print; nop
-set S,%i5
-set 6,%i4
-sth %i4,[%i5]
-lduh [%i5],%i5
-set c,%i4
-mov %i5,%i3
-stb %i3,[%i4]
-set s,%i4
-mov %i5,%i3
-sth %i3,[%i4]
-set i,%i4
-st %i5,[%i4]
-set l,%i4
-st %i5,[%i4]
-set C,%i3
-mov %i5,%i2
-stb %i2,[%i3]
-set I,%i3
-st %i5,[%i3]
-set L,%i3
-st %i5,[%i3]
-set f,%i4
-st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
-st %f31,[%i4]
-st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-set d,%i5
-st2 %f30,[%i5]
-set D,%i5
-st2 %f30,[%i5]
-call print; nop
-set I,%i5
-set 7,%i4
-st %i4,[%i5]
-ld [%i5],%i5
-set c,%i3
-mov %i5,%i2
-stb %i2,[%i3]
-set s,%i3
-mov %i5,%i2
-sth %i2,[%i3]
-set i,%i3
-st %i5,[%i3]
-set l,%i3
-st %i5,[%i3]
-set C,%i4
-mov %i5,%i3
-stb %i3,[%i4]
-set S,%i4
-mov %i5,%i3
-sth %i3,[%i4]
-set L,%i4
-st %i5,[%i4]
-set .L4,%i4
-ld2 [%i4],%f30
-srl %i5,1,%i4
-st %i4,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%i4
-and %i5,%i4,%i5
-st %i5,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-set f,%i5
-fdtos %f30,%f29
-st %f29,[%i5]
-set d,%i5
-st2 %f30,[%i5]
-set D,%i5
-st2 %f30,[%i5]
-call print; nop
-set L,%i5
-set 8,%i4
-st %i4,[%i5]
-ld [%i5],%i5
-set c,%i3
-mov %i5,%i2
-stb %i2,[%i3]
-set s,%i3
-mov %i5,%i2
-sth %i2,[%i3]
-set i,%i3
-st %i5,[%i3]
-set l,%i3
-st %i5,[%i3]
-set C,%i4
-mov %i5,%i3
-stb %i3,[%i4]
-set S,%i4
-mov %i5,%i3
-sth %i3,[%i4]
-set I,%i3
-lduh [%i4],%i4
-st %i4,[%i3]
-set .L4,%i4
-ld2 [%i4],%f30
-srl %i5,1,%i4
-st %i4,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fmuld %f30,%f28,%f30
-set 1,%i4
-and %i5,%i4,%i5
-st %i5,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-faddd %f30,%f28,%f30
-set f,%i5
-fdtos %f30,%f29
-st %f29,[%i5]
-set d,%i5
-st2 %f30,[%i5]
-set D,%i5
-st2 %f30,[%i5]
-call print; nop
-set f,%i1
-set .L5,%i0
-ld [%i0],%f31
-st %f31,[%i1]
-ld [%i1],%f31
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-set c,%i0
-mov %i1,%l7
-stb %l7,[%i0]
-set s,%i0
-mov %i1,%l7
-sth %l7,[%i0]
-set i,%i0
-st %i1,[%i0]
-set l,%i0
-st %i1,[%i0]
-set .L9,%i1
-ld [%i1],%f30
-fcmpes %f31,%f30; nop; fbul .L7; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-set 0x80000000,%i0
-add %i1,%i0,%i5
-ba .L8; nop
-.L7:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-mov %i1,%i5
-.L8:
-set C,%i1
-mov %i5,%i0
-stb %i0,[%i1]
-set f,%i1
-ld [%i1],%f31
-set .L9,%i1
-ld [%i1],%f30
-fcmpes %f31,%f30; nop; fbul .L11; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-set 0x80000000,%i0
-add %i1,%i0,%i4
-ba .L12; nop
-.L11:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-mov %i1,%i4
-.L12:
-set S,%i1
-mov %i4,%i0
-sth %i0,[%i1]
-set f,%i1
-ld [%i1],%f31
-set .L9,%i1
-ld [%i1],%f30
-fcmpes %f31,%f30; nop; fbul .L14; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-set 0x80000000,%i0
-add %i1,%i0,%i3
-ba .L15; nop
-.L14:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-mov %i1,%i3
-.L15:
-set I,%i1
-st %i3,[%i1]
-set f,%i1
-ld [%i1],%f31
-set .L9,%i1
-ld [%i1],%f30
-fcmpes %f31,%f30; nop; fbul .L17; nop
-fsubs %f31,%f30,%f30
-fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-set 0x80000000,%i0
-add %i1,%i0,%i2
-ba .L18; nop
-.L17:
-fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
-mov %i1,%i2
-.L18:
-set L,%i1
-st %i2,[%i1]
-set f,%i1
-ld [%i1],%f31
-fstod %f31,%f30
-set d,%i1
-st2 %f30,[%i1]
-set D,%i1
-st2 %f30,[%i1]
-call print; nop
-set d,%l5
-set .L19,%l4
-ld2 [%l4],%f30
-st2 %f30,[%l5]
-ld2 [%l5],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
-set c,%l4
-mov %l5,%l3
-stb %l3,[%l4]
-set s,%l4
-mov %l5,%l3
-sth %l3,[%l4]
-set i,%l4
-st %l5,[%l4]
-set l,%l4
-st %l5,[%l4]
-set .L23,%l5
-ld2 [%l5],%f28
-fcmped %f30,%f28; nop; fbul .L21; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
-set 0x80000000,%l4
-add %l5,%l4,%i1
-ba .L22; nop
-.L21:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
-mov %l5,%i1
-.L22:
-set C,%l5
-mov %i1,%l4
-stb %l4,[%l5]
-set d,%l5
-ld2 [%l5],%f30
-set .L23,%l5
-ld2 [%l5],%f28
-fcmped %f30,%f28; nop; fbul .L25; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
-set 0x80000000,%l4
-add %l5,%l4,%i0
-ba .L26; nop
-.L25:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
-mov %l5,%i0
-.L26:
-set S,%l5
-mov %i0,%l4
-sth %l4,[%l5]
-set d,%l5
-ld2 [%l5],%f30
-set .L23,%l5
-ld2 [%l5],%f28
-fcmped %f30,%f28; nop; fbul .L28; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
-set 0x80000000,%l4
-add %l5,%l4,%l7
-ba .L29; nop
-.L28:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
-mov %l5,%l7
-.L29:
-set I,%l5
-st %l7,[%l5]
-set d,%l5
-ld2 [%l5],%f30
-set .L23,%l5
-ld2 [%l5],%f28
-fcmped %f30,%f28; nop; fbul .L31; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
-set 0x80000000,%l4
-add %l5,%l4,%l6
-ba .L32; nop
-.L31:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
-mov %l5,%l6
-.L32:
-set L,%l5
-st %l6,[%l5]
-set d,%l5
-ld2 [%l5],%f30
-set f,%l5
-fdtos %f30,%f29
-st %f29,[%l5]
-set D,%l5
-st2 %f30,[%l5]
-call print; nop
-set D,%l3
-set .L33,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set c,%l2
-mov %l3,%l1
-stb %l1,[%l2]
-set s,%l2
-mov %l3,%l1
-sth %l1,[%l2]
-set i,%l2
-st %l3,[%l2]
-set l,%l2
-st %l3,[%l2]
-set .L37,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L35; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l5
-ba .L36; nop
-.L35:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%l5
-.L36:
-set C,%l3
-mov %l5,%l2
-stb %l2,[%l3]
-set D,%l3
-ld2 [%l3],%f30
-set .L37,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L39; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l4
-ba .L40; nop
-.L39:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-mov %l3,%l4
-.L40:
-set S,%l3
-mov %l4,%l2
-sth %l2,[%l3]
-set D,%l3
-ld2 [%l3],%f30
-set .L37,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L42; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-4]
-ba .L43; nop
-.L42:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-4]
-.L43:
-set I,%l3
-ld [%fp+-4],%l2
-st %l2,[%l3]
-set D,%l3
-ld2 [%l3],%f30
-set .L37,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L45; nop
-fsubd %f30,%f28,%f28
-fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-set 0x80000000,%l2
-add %l3,%l2,%l3
-st %l3,[%fp+-8]
-ba .L46; nop
-.L45:
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
-st %l3,[%fp+-8]
-.L46:
-set L,%l3
-ld [%fp+-8],%l2
-st %l2,[%l3]
-set D,%l3
-ld2 [%l3],%f30
-set f,%l3
-fdtos %f30,%f29
-st %f29,[%l3]
-set d,%l3
-st2 %f30,[%l3]
-call print; nop
-set p,%l3
-st %g0,[%l3]
-st %g0,[%l3]
-st %g0,[%l3]
-st %g0,[%l3]
-set P,%l2
-ld [%l2],%l1
-st %l1,[%l3]
-mov %g0,%l1
-st %l1,[%l2]
-st %l1,[%l2]
-st %l1,[%l2]
-st %l1,[%l2]
-ld [%l3],%l3
-st %l3,[%l2]
-mov %g0,%i0
-.L3:
-ret; restore
-.type main,#function
-.size main,.-main
-.section ".bss"
-.global P
-.type P,#object
-.size P,4
-.common P,4,4
-.global p
-.type p,#object
-.size p,4
-.common p,4,4
-.global D
-.type D,#object
-.size D,8
-.common D,8,8
-.global d
-.type d,#object
-.size d,8
-.common d,8,8
-.global f
-.type f,#object
-.size f,4
-.common f,4,4
-.global L
-.type L,#object
-.size L,4
-.common L,4,4
-.global I
-.type I,#object
-.size I,4
-.common I,4,4
-.global S
-.type S,#object
-.size S,2
-.common S,2,2
-.global C
-.type C,#object
-.size C,1
-.common C,1,1
-.global l
-.type l,#object
-.size l,4
-.common l,4,4
-.global i
-.type i,#object
-.size i,4
-.common i,4,4
-.global s
-.type s,#object
-.size s,2
-.common s,2,2
-.global c
-.type c,#object
-.size c,1
-.common c,1,1
-.section ".rodata"
-.align 8
-.L37:
-.word 0x41e00000
-.word 0x0
-.align 8
-.L33:
-.word 0x40260000
-.word 0x0
-.align 8
-.L23:
-.word 0x41e00000
-.word 0x0
-.align 8
-.L19:
-.word 0x40240000
-.word 0x0
-.align 4
-.L9:
-.word 0x4f000000
-.align 4
-.L5:
-.word 0x41100000
-.align 8
-.L4:
-.word 0x40000000
-.word 0x0
-.align 1
-.L2:
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 108
-.byte 100
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 108
-.byte 117
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 37
-.byte 108
-.byte 102
-.byte 10
-.byte 0
+.global print
+.section ".text"
+.align 4
+print:
+save %sp,-128,%sp
+set .L2,%o0
+set c,%i5
+ldsb [%i5],%o1
+set s,%i5
+ldsh [%i5],%o2
+set i,%i5
+ld [%i5],%o3
+set l,%i5
+ld [%i5],%o4
+set C,%i5
+ldub [%i5],%o5
+set S,%i5
+lduh [%i5],%i5
+st %i5,[%sp+4*6+68]
+set I,%i5
+ld [%i5],%i5
+st %i5,[%sp+4*7+68]
+set L,%i5
+ld [%i5],%i5
+st %i5,[%sp+4*8+68]
+set f,%i5
+ld [%i5],%f31
+fstod %f31,%f30
+st %f30,[%sp+4*9+68]
+st %f31,[%sp+4*10+68]
+set d,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*11+68]
+st %f31,[%sp+4*12+68]
+set D,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*13+68]
+st %f31,[%sp+4*14+68]
+call printf; nop
+.L1:
+ret; restore
+.type print,#function
+.size print,.-print
+.global main
+.align 4
+main:
+save %sp,-104,%sp
+set c,%i5
+set 1,%i4
+stb %i4,[%i5]
+ldsb [%i5],%i5
+set s,%i4
+mov %i5,%i3
+sth %i3,[%i4]
+set i,%i4
+st %i5,[%i4]
+set l,%i4
+st %i5,[%i4]
+set C,%i3
+mov %i5,%i2
+stb %i2,[%i3]
+set S,%i3
+mov %i5,%i2
+sth %i2,[%i3]
+set I,%i3
+st %i5,[%i3]
+set L,%i3
+st %i5,[%i3]
+set f,%i4
+st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%i4]
+st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+set d,%i5
+st2 %f30,[%i5]
+set D,%i5
+st2 %f30,[%i5]
+call print; nop
+set s,%i5
+set 2,%i4
+sth %i4,[%i5]
+ldsh [%i5],%i5
+set c,%i4
+mov %i5,%i3
+stb %i3,[%i4]
+set i,%i4
+st %i5,[%i4]
+set l,%i4
+st %i5,[%i4]
+set C,%i3
+mov %i5,%i2
+stb %i2,[%i3]
+set S,%i3
+mov %i5,%i2
+sth %i2,[%i3]
+set I,%i3
+st %i5,[%i3]
+set L,%i3
+st %i5,[%i3]
+set f,%i4
+st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%i4]
+st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+set d,%i5
+st2 %f30,[%i5]
+set D,%i5
+st2 %f30,[%i5]
+call print; nop
+set i,%i5
+set 3,%i4
+st %i4,[%i5]
+ld [%i5],%i5
+set c,%i4
+mov %i5,%i3
+stb %i3,[%i4]
+set s,%i4
+mov %i5,%i3
+sth %i3,[%i4]
+set l,%i4
+st %i5,[%i4]
+set C,%i3
+mov %i5,%i2
+stb %i2,[%i3]
+set S,%i3
+mov %i5,%i2
+sth %i2,[%i3]
+set I,%i3
+st %i5,[%i3]
+set L,%i3
+st %i5,[%i3]
+set f,%i4
+st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%i4]
+st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+set d,%i5
+st2 %f30,[%i5]
+set D,%i5
+st2 %f30,[%i5]
+call print; nop
+set l,%i5
+set 4,%i4
+st %i4,[%i5]
+ld [%i5],%i5
+set c,%i4
+mov %i5,%i3
+stb %i3,[%i4]
+set s,%i4
+mov %i5,%i3
+sth %i3,[%i4]
+set i,%i4
+st %i5,[%i4]
+set C,%i3
+mov %i5,%i2
+stb %i2,[%i3]
+set S,%i3
+mov %i5,%i2
+sth %i2,[%i3]
+set I,%i3
+st %i5,[%i3]
+set L,%i3
+st %i5,[%i3]
+set f,%i4
+st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%i4]
+st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+set d,%i5
+st2 %f30,[%i5]
+set D,%i5
+st2 %f30,[%i5]
+call print; nop
+set C,%i5
+set 5,%i4
+stb %i4,[%i5]
+ldub [%i5],%i5
+set c,%i4
+mov %i5,%i3
+stb %i3,[%i4]
+set s,%i4
+mov %i5,%i3
+sth %i3,[%i4]
+set i,%i4
+st %i5,[%i4]
+set l,%i4
+st %i5,[%i4]
+set S,%i3
+mov %i5,%i2
+sth %i2,[%i3]
+set I,%i3
+st %i5,[%i3]
+set L,%i3
+st %i5,[%i3]
+set f,%i4
+st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%i4]
+st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+set d,%i5
+st2 %f30,[%i5]
+set D,%i5
+st2 %f30,[%i5]
+call print; nop
+set S,%i5
+set 6,%i4
+sth %i4,[%i5]
+lduh [%i5],%i5
+set c,%i4
+mov %i5,%i3
+stb %i3,[%i4]
+set s,%i4
+mov %i5,%i3
+sth %i3,[%i4]
+set i,%i4
+st %i5,[%i4]
+set l,%i4
+st %i5,[%i4]
+set C,%i3
+mov %i5,%i2
+stb %i2,[%i3]
+set I,%i3
+st %i5,[%i3]
+set L,%i3
+st %i5,[%i3]
+set f,%i4
+st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
+st %f31,[%i4]
+st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+set d,%i5
+st2 %f30,[%i5]
+set D,%i5
+st2 %f30,[%i5]
+call print; nop
+set I,%i5
+set 7,%i4
+st %i4,[%i5]
+ld [%i5],%i5
+set c,%i3
+mov %i5,%i2
+stb %i2,[%i3]
+set s,%i3
+mov %i5,%i2
+sth %i2,[%i3]
+set i,%i3
+st %i5,[%i3]
+set l,%i3
+st %i5,[%i3]
+set C,%i4
+mov %i5,%i3
+stb %i3,[%i4]
+set S,%i4
+mov %i5,%i3
+sth %i3,[%i4]
+set L,%i4
+st %i5,[%i4]
+set .L4,%i4
+ld2 [%i4],%f30
+srl %i5,1,%i4
+st %i4,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%i4
+and %i5,%i4,%i5
+st %i5,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+set f,%i5
+fdtos %f30,%f29
+st %f29,[%i5]
+set d,%i5
+st2 %f30,[%i5]
+set D,%i5
+st2 %f30,[%i5]
+call print; nop
+set L,%i5
+set 8,%i4
+st %i4,[%i5]
+ld [%i5],%i5
+set c,%i3
+mov %i5,%i2
+stb %i2,[%i3]
+set s,%i3
+mov %i5,%i2
+sth %i2,[%i3]
+set i,%i3
+st %i5,[%i3]
+set l,%i3
+st %i5,[%i3]
+set C,%i4
+mov %i5,%i3
+stb %i3,[%i4]
+set S,%i4
+mov %i5,%i3
+sth %i3,[%i4]
+set I,%i3
+lduh [%i4],%i4
+st %i4,[%i3]
+set .L4,%i4
+ld2 [%i4],%f30
+srl %i5,1,%i4
+st %i4,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fmuld %f30,%f28,%f30
+set 1,%i4
+and %i5,%i4,%i5
+st %i5,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+faddd %f30,%f28,%f30
+set f,%i5
+fdtos %f30,%f29
+st %f29,[%i5]
+set d,%i5
+st2 %f30,[%i5]
+set D,%i5
+st2 %f30,[%i5]
+call print; nop
+set f,%i1
+set .L5,%i0
+ld [%i0],%f31
+st %f31,[%i1]
+ld [%i1],%f31
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+set c,%i0
+mov %i1,%l7
+stb %l7,[%i0]
+set s,%i0
+mov %i1,%l7
+sth %l7,[%i0]
+set i,%i0
+st %i1,[%i0]
+set l,%i0
+st %i1,[%i0]
+set .L9,%i1
+ld [%i1],%f30
+fcmpes %f31,%f30; nop; fbul .L7; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+set 0x80000000,%i0
+add %i1,%i0,%i5
+ba .L8; nop
+.L7:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+mov %i1,%i5
+.L8:
+set C,%i1
+mov %i5,%i0
+stb %i0,[%i1]
+set f,%i1
+ld [%i1],%f31
+set .L9,%i1
+ld [%i1],%f30
+fcmpes %f31,%f30; nop; fbul .L11; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+set 0x80000000,%i0
+add %i1,%i0,%i4
+ba .L12; nop
+.L11:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+mov %i1,%i4
+.L12:
+set S,%i1
+mov %i4,%i0
+sth %i0,[%i1]
+set f,%i1
+ld [%i1],%f31
+set .L9,%i1
+ld [%i1],%f30
+fcmpes %f31,%f30; nop; fbul .L14; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+set 0x80000000,%i0
+add %i1,%i0,%i3
+ba .L15; nop
+.L14:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+mov %i1,%i3
+.L15:
+set I,%i1
+st %i3,[%i1]
+set f,%i1
+ld [%i1],%f31
+set .L9,%i1
+ld [%i1],%f30
+fcmpes %f31,%f30; nop; fbul .L17; nop
+fsubs %f31,%f30,%f30
+fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+set 0x80000000,%i0
+add %i1,%i0,%i2
+ba .L18; nop
+.L17:
+fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
+mov %i1,%i2
+.L18:
+set L,%i1
+st %i2,[%i1]
+set f,%i1
+ld [%i1],%f31
+fstod %f31,%f30
+set d,%i1
+st2 %f30,[%i1]
+set D,%i1
+st2 %f30,[%i1]
+call print; nop
+set d,%l5
+set .L19,%l4
+ld2 [%l4],%f30
+st2 %f30,[%l5]
+ld2 [%l5],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
+set c,%l4
+mov %l5,%l3
+stb %l3,[%l4]
+set s,%l4
+mov %l5,%l3
+sth %l3,[%l4]
+set i,%l4
+st %l5,[%l4]
+set l,%l4
+st %l5,[%l4]
+set .L23,%l5
+ld2 [%l5],%f28
+fcmped %f30,%f28; nop; fbul .L21; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
+set 0x80000000,%l4
+add %l5,%l4,%i1
+ba .L22; nop
+.L21:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
+mov %l5,%i1
+.L22:
+set C,%l5
+mov %i1,%l4
+stb %l4,[%l5]
+set d,%l5
+ld2 [%l5],%f30
+set .L23,%l5
+ld2 [%l5],%f28
+fcmped %f30,%f28; nop; fbul .L25; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
+set 0x80000000,%l4
+add %l5,%l4,%i0
+ba .L26; nop
+.L25:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
+mov %l5,%i0
+.L26:
+set S,%l5
+mov %i0,%l4
+sth %l4,[%l5]
+set d,%l5
+ld2 [%l5],%f30
+set .L23,%l5
+ld2 [%l5],%f28
+fcmped %f30,%f28; nop; fbul .L28; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
+set 0x80000000,%l4
+add %l5,%l4,%l7
+ba .L29; nop
+.L28:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
+mov %l5,%l7
+.L29:
+set I,%l5
+st %l7,[%l5]
+set d,%l5
+ld2 [%l5],%f30
+set .L23,%l5
+ld2 [%l5],%f28
+fcmped %f30,%f28; nop; fbul .L31; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
+set 0x80000000,%l4
+add %l5,%l4,%l6
+ba .L32; nop
+.L31:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
+mov %l5,%l6
+.L32:
+set L,%l5
+st %l6,[%l5]
+set d,%l5
+ld2 [%l5],%f30
+set f,%l5
+fdtos %f30,%f29
+st %f29,[%l5]
+set D,%l5
+st2 %f30,[%l5]
+call print; nop
+set D,%l3
+set .L33,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set c,%l2
+mov %l3,%l1
+stb %l1,[%l2]
+set s,%l2
+mov %l3,%l1
+sth %l1,[%l2]
+set i,%l2
+st %l3,[%l2]
+set l,%l2
+st %l3,[%l2]
+set .L37,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L35; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l5
+ba .L36; nop
+.L35:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%l5
+.L36:
+set C,%l3
+mov %l5,%l2
+stb %l2,[%l3]
+set D,%l3
+ld2 [%l3],%f30
+set .L37,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L39; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l4
+ba .L40; nop
+.L39:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+mov %l3,%l4
+.L40:
+set S,%l3
+mov %l4,%l2
+sth %l2,[%l3]
+set D,%l3
+ld2 [%l3],%f30
+set .L37,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L42; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-4]
+ba .L43; nop
+.L42:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-4]
+.L43:
+set I,%l3
+ld [%fp+-4],%l2
+st %l2,[%l3]
+set D,%l3
+ld2 [%l3],%f30
+set .L37,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L45; nop
+fsubd %f30,%f28,%f28
+fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+set 0x80000000,%l2
+add %l3,%l2,%l3
+st %l3,[%fp+-8]
+ba .L46; nop
+.L45:
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
+st %l3,[%fp+-8]
+.L46:
+set L,%l3
+ld [%fp+-8],%l2
+st %l2,[%l3]
+set D,%l3
+ld2 [%l3],%f30
+set f,%l3
+fdtos %f30,%f29
+st %f29,[%l3]
+set d,%l3
+st2 %f30,[%l3]
+call print; nop
+set p,%l3
+st %g0,[%l3]
+st %g0,[%l3]
+st %g0,[%l3]
+st %g0,[%l3]
+set P,%l2
+ld [%l2],%l1
+st %l1,[%l3]
+mov %g0,%l1
+st %l1,[%l2]
+st %l1,[%l2]
+st %l1,[%l2]
+st %l1,[%l2]
+ld [%l3],%l3
+st %l3,[%l2]
+mov %g0,%i0
+.L3:
+ret; restore
+.type main,#function
+.size main,.-main
+.section ".bss"
+.global P
+.type P,#object
+.size P,4
+.common P,4,4
+.global p
+.type p,#object
+.size p,4
+.common p,4,4
+.global D
+.type D,#object
+.size D,8
+.common D,8,8
+.global d
+.type d,#object
+.size d,8
+.common d,8,8
+.global f
+.type f,#object
+.size f,4
+.common f,4,4
+.global L
+.type L,#object
+.size L,4
+.common L,4,4
+.global I
+.type I,#object
+.size I,4
+.common I,4,4
+.global S
+.type S,#object
+.size S,2
+.common S,2,2
+.global C
+.type C,#object
+.size C,1
+.common C,1,1
+.global l
+.type l,#object
+.size l,4
+.common l,4,4
+.global i
+.type i,#object
+.size i,4
+.common i,4,4
+.global s
+.type s,#object
+.size s,2
+.common s,2,2
+.global c
+.type c,#object
+.size c,1
+.common c,1,1
+.section ".rodata"
+.align 8
+.L37:
+.word 0x41e00000
+.word 0x0
+.align 8
+.L33:
+.word 0x40260000
+.word 0x0
+.align 8
+.L23:
+.word 0x41e00000
+.word 0x0
+.align 8
+.L19:
+.word 0x40240000
+.word 0x0
+.align 4
+.L9:
+.word 0x4f000000
+.align 4
+.L5:
+.word 0x41100000
+.align 8
+.L4:
+.word 0x40000000
+.word 0x0
+.align 1
+.L2:
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 108
+.byte 100
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 108
+.byte 117
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 37
+.byte 108
+.byte 102
+.byte 10
+.byte 0
diff --git a/lcc/sparc/solaris/tst/fields.1bk b/lcc/sparc/solaris/tst/fields.1bk
index f30b13f..56fdeb9 100755
--- a/lcc/sparc/solaris/tst/fields.1bk
+++ b/lcc/sparc/solaris/tst/fields.1bk
@@ -1,5 +1,5 @@
-x = 1 2 3 4 -3 6
-y = 3 8 9
-x = 1 2 3 0 0 6
-y = 2 8 16
-p->a = 0x3, p->b = 0xf
+x = 1 2 3 4 -3 6
+y = 3 8 9
+x = 1 2 3 0 0 6
+y = 2 8 16
+p->a = 0x3, p->b = 0xf
diff --git a/lcc/sparc/solaris/tst/fields.2bk b/lcc/sparc/solaris/tst/fields.2bk
index e689d78..51e1736 100755
--- a/lcc/sparc/solaris/tst/fields.2bk
+++ b/lcc/sparc/solaris/tst/fields.2bk
@@ -1,4 +1,4 @@
-tst/fields.c:6: warning: initializer exceeds bit-field width
-tst/fields.c:8: warning: initializer exceeds bit-field width
-tst/fields.c:30: warning: missing return value
-tst/fields.c:34: warning: missing return value
+tst/fields.c:6: warning: initializer exceeds bit-field width
+tst/fields.c:8: warning: initializer exceeds bit-field width
+tst/fields.c:30: warning: missing return value
+tst/fields.c:34: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/fields.sbk b/lcc/sparc/solaris/tst/fields.sbk
index c535964..e23fbe2 100755
--- a/lcc/sparc/solaris/tst/fields.sbk
+++ b/lcc/sparc/solaris/tst/fields.sbk
@@ -1,309 +1,309 @@
-.section ".data"
-.global x
-.type x,#object
-.size x,16
-.align 4
-x:
-.word 0x1
-.byte 0x2
-.skip 3
-.byte 0x0
-.byte 0x34
-.skip 2
-.byte 0xa
-.byte 0x6
-.skip 2
-.global i
-.type i,#object
-.size i,4
-.align 4
-i:
-.word 0x10
-.global y
-.type y,#object
-.size y,8
-.align 4
-y:
-.byte 0xe0
-.skip 3
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x9
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-96,%sp
-set .L4,%o0
-set x,%i5
-ld [%i5],%o1
-set x+4,%i5
-ldsb [%i5],%o2
-set x+8,%i5
-ld [%i5],%i5
-sra %i5,20,%o3
-set x+8,%i5
-ld [%i5],%i5
-sll %i5,12,%i5
-sra %i5,28,%o4
-set x+12,%i5
-ld [%i5],%i5
-sll %i5,4,%i5
-sra %i5,29,%o5
-set x+13,%i5
-ldsb [%i5],%i5
-st %i5,[%sp+4*6+68]
-call printf; nop
-set .L10,%o0
-set y,%i5
-ld [%i5],%i5
-srl %i5,30,%i4
-set 3,%i3
-and %i4,%i3,%o1
-srl %i5,26,%i5
-set 15,%i4
-and %i5,%i4,%o2
-set y+4,%i5
-ld [%i5],%o3
-call printf; nop
-set x+8,%i5
-ld [%i5],%i4
-set 0xfff0ffff,%i3
-and %i4,%i3,%i4
-set i,%i3
-ld [%i3],%i3
-sll %i3,28,%i3
-sra %i3,28,%i3
-sll %i3,16,%i3
-set 0xf0000,%i2
-and %i3,%i2,%i3
-or %i4,%i3,%i4
-st %i4,[%i5]
-set x+12,%i5
-ld [%i5],%i4
-set 0xf1ffffff,%i3
-and %i4,%i3,%i4
-st %i4,[%i5]
-set .L4,%o0
-set x,%i5
-ld [%i5],%o1
-set x+4,%i5
-ldsb [%i5],%o2
-set x+8,%i5
-ld [%i5],%i5
-sra %i5,20,%o3
-set x+8,%i5
-ld [%i5],%i5
-sll %i5,12,%i5
-sra %i5,28,%o4
-set x+12,%i5
-ld [%i5],%i5
-sll %i5,4,%i5
-sra %i5,29,%o5
-set x+13,%i5
-ldsb [%i5],%i5
-st %i5,[%sp+4*6+68]
-call printf; nop
-set y,%i5
-ld [%i5],%i4
-set 0x3fffffff,%i3
-and %i4,%i3,%i4
-set 0x80000000,%i3
-or %i4,%i3,%i4
-st %i4,[%i5]
-set y+4,%i5
-set i,%i4
-ld [%i4],%i4
-st %i4,[%i5]
-set .L10,%o0
-set y,%i5
-ld [%i5],%i5
-srl %i5,30,%i4
-set 3,%i3
-and %i4,%i3,%o1
-srl %i5,26,%i5
-set 15,%i4
-and %i5,%i4,%o2
-set y+4,%i5
-ld [%i5],%o3
-call printf; nop
-set x,%o0
-call f2; nop
-mov %g0,%i0
-.L3:
-ret; restore
-.type main,#function
-.size main,.-main
-.global f1
-.align 4
-f1:
-save %sp,-96,%sp
-ld [%i0],%i5
-set 0xc3ffffff,%i4
-and %i5,%i4,%i5
-st %i5,[%i0]
-ld [%i0],%i5
-set 0x3fffffff,%i4
-and %i5,%i4,%i5
-set 3,%i4
-and %g0,%i4,%i4
-sll %i4,30,%i4
-set 0xc0000000,%i3
-and %i4,%i3,%i4
-or %i5,%i4,%i5
-st %i5,[%i0]
-ld [%i0],%i5
-set 0x3c000000,%i4
-and %i5,%i4,%i5
-cmp %i5,%g0; be .L22; nop
-set .L24,%o0
-call printf; nop
-.L22:
-ld [%i0],%i5
-set 0xc0000000,%i4
-or %i5,%i4,%i5
-st %i5,[%i0]
-ld [%i0],%i5
-set 0x3c000000,%i4
-or %i5,%i4,%i5
-st %i5,[%i0]
-set .L25,%o0
-ld [%i0],%i5
-srl %i5,30,%i4
-set 3,%i3
-and %i4,%i3,%o1
-srl %i5,26,%i5
-set 15,%i4
-and %i5,%i4,%o2
-call printf; nop
-mov %g0,%i0
-.L21:
-ret; restore
-.type f1,#function
-.size f1,.-f1
-.global f2
-.align 4
-f2:
-save %sp,-96,%sp
-set i,%i4
-ld [%i4],%i4
-cmp %i4,0; bne .L28; nop
-set 1,%i5
-ba .L29; nop
-.L28:
-mov %g0,%i5
-.L29:
-ld [%i0],%i4
-set 0x3fffffff,%i3
-and %i4,%i3,%i4
-mov %i5,%i3
-set 3,%i2
-and %i3,%i2,%i3
-sll %i3,30,%i3
-set 0xc0000000,%i2
-and %i3,%i2,%i3
-or %i4,%i3,%i4
-st %i4,[%i0]
-mov %i0,%o0
-call f1; nop
-ld [%i0],%i4
-set 0xc3ffffff,%i3
-and %i4,%i3,%i4
-mov %g0,%i3
-set 15,%i2
-and %i3,%i2,%i3
-sll %i3,26,%i3
-set 0x3c000000,%i2
-and %i3,%i2,%i3
-or %i4,%i3,%i4
-st %i4,[%i0]
-mov %g0,%i0
-.L26:
-ret; restore
-.type f2,#function
-.size f2,.-f2
-.section ".rodata"
-.align 1
-.L25:
-.byte 112
-.byte 45
-.byte 62
-.byte 97
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 44
-.byte 32
-.byte 112
-.byte 45
-.byte 62
-.byte 98
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 1
-.L24:
-.byte 112
-.byte 45
-.byte 62
-.byte 98
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L10:
-.byte 121
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L4:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
+.section ".data"
+.global x
+.type x,#object
+.size x,16
+.align 4
+x:
+.word 0x1
+.byte 0x2
+.skip 3
+.byte 0x0
+.byte 0x34
+.skip 2
+.byte 0xa
+.byte 0x6
+.skip 2
+.global i
+.type i,#object
+.size i,4
+.align 4
+i:
+.word 0x10
+.global y
+.type y,#object
+.size y,8
+.align 4
+y:
+.byte 0xe0
+.skip 3
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x9
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-96,%sp
+set .L4,%o0
+set x,%i5
+ld [%i5],%o1
+set x+4,%i5
+ldsb [%i5],%o2
+set x+8,%i5
+ld [%i5],%i5
+sra %i5,20,%o3
+set x+8,%i5
+ld [%i5],%i5
+sll %i5,12,%i5
+sra %i5,28,%o4
+set x+12,%i5
+ld [%i5],%i5
+sll %i5,4,%i5
+sra %i5,29,%o5
+set x+13,%i5
+ldsb [%i5],%i5
+st %i5,[%sp+4*6+68]
+call printf; nop
+set .L10,%o0
+set y,%i5
+ld [%i5],%i5
+srl %i5,30,%i4
+set 3,%i3
+and %i4,%i3,%o1
+srl %i5,26,%i5
+set 15,%i4
+and %i5,%i4,%o2
+set y+4,%i5
+ld [%i5],%o3
+call printf; nop
+set x+8,%i5
+ld [%i5],%i4
+set 0xfff0ffff,%i3
+and %i4,%i3,%i4
+set i,%i3
+ld [%i3],%i3
+sll %i3,28,%i3
+sra %i3,28,%i3
+sll %i3,16,%i3
+set 0xf0000,%i2
+and %i3,%i2,%i3
+or %i4,%i3,%i4
+st %i4,[%i5]
+set x+12,%i5
+ld [%i5],%i4
+set 0xf1ffffff,%i3
+and %i4,%i3,%i4
+st %i4,[%i5]
+set .L4,%o0
+set x,%i5
+ld [%i5],%o1
+set x+4,%i5
+ldsb [%i5],%o2
+set x+8,%i5
+ld [%i5],%i5
+sra %i5,20,%o3
+set x+8,%i5
+ld [%i5],%i5
+sll %i5,12,%i5
+sra %i5,28,%o4
+set x+12,%i5
+ld [%i5],%i5
+sll %i5,4,%i5
+sra %i5,29,%o5
+set x+13,%i5
+ldsb [%i5],%i5
+st %i5,[%sp+4*6+68]
+call printf; nop
+set y,%i5
+ld [%i5],%i4
+set 0x3fffffff,%i3
+and %i4,%i3,%i4
+set 0x80000000,%i3
+or %i4,%i3,%i4
+st %i4,[%i5]
+set y+4,%i5
+set i,%i4
+ld [%i4],%i4
+st %i4,[%i5]
+set .L10,%o0
+set y,%i5
+ld [%i5],%i5
+srl %i5,30,%i4
+set 3,%i3
+and %i4,%i3,%o1
+srl %i5,26,%i5
+set 15,%i4
+and %i5,%i4,%o2
+set y+4,%i5
+ld [%i5],%o3
+call printf; nop
+set x,%o0
+call f2; nop
+mov %g0,%i0
+.L3:
+ret; restore
+.type main,#function
+.size main,.-main
+.global f1
+.align 4
+f1:
+save %sp,-96,%sp
+ld [%i0],%i5
+set 0xc3ffffff,%i4
+and %i5,%i4,%i5
+st %i5,[%i0]
+ld [%i0],%i5
+set 0x3fffffff,%i4
+and %i5,%i4,%i5
+set 3,%i4
+and %g0,%i4,%i4
+sll %i4,30,%i4
+set 0xc0000000,%i3
+and %i4,%i3,%i4
+or %i5,%i4,%i5
+st %i5,[%i0]
+ld [%i0],%i5
+set 0x3c000000,%i4
+and %i5,%i4,%i5
+cmp %i5,%g0; be .L22; nop
+set .L24,%o0
+call printf; nop
+.L22:
+ld [%i0],%i5
+set 0xc0000000,%i4
+or %i5,%i4,%i5
+st %i5,[%i0]
+ld [%i0],%i5
+set 0x3c000000,%i4
+or %i5,%i4,%i5
+st %i5,[%i0]
+set .L25,%o0
+ld [%i0],%i5
+srl %i5,30,%i4
+set 3,%i3
+and %i4,%i3,%o1
+srl %i5,26,%i5
+set 15,%i4
+and %i5,%i4,%o2
+call printf; nop
+mov %g0,%i0
+.L21:
+ret; restore
+.type f1,#function
+.size f1,.-f1
+.global f2
+.align 4
+f2:
+save %sp,-96,%sp
+set i,%i4
+ld [%i4],%i4
+cmp %i4,0; bne .L28; nop
+set 1,%i5
+ba .L29; nop
+.L28:
+mov %g0,%i5
+.L29:
+ld [%i0],%i4
+set 0x3fffffff,%i3
+and %i4,%i3,%i4
+mov %i5,%i3
+set 3,%i2
+and %i3,%i2,%i3
+sll %i3,30,%i3
+set 0xc0000000,%i2
+and %i3,%i2,%i3
+or %i4,%i3,%i4
+st %i4,[%i0]
+mov %i0,%o0
+call f1; nop
+ld [%i0],%i4
+set 0xc3ffffff,%i3
+and %i4,%i3,%i4
+mov %g0,%i3
+set 15,%i2
+and %i3,%i2,%i3
+sll %i3,26,%i3
+set 0x3c000000,%i2
+and %i3,%i2,%i3
+or %i4,%i3,%i4
+st %i4,[%i0]
+mov %g0,%i0
+.L26:
+ret; restore
+.type f2,#function
+.size f2,.-f2
+.section ".rodata"
+.align 1
+.L25:
+.byte 112
+.byte 45
+.byte 62
+.byte 97
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 44
+.byte 32
+.byte 112
+.byte 45
+.byte 62
+.byte 98
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 1
+.L24:
+.byte 112
+.byte 45
+.byte 62
+.byte 98
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L10:
+.byte 121
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L4:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
diff --git a/lcc/sparc/solaris/tst/front.2bk b/lcc/sparc/solaris/tst/front.2bk
index 841e6a5..bbd390a 100755
--- a/lcc/sparc/solaris/tst/front.2bk
+++ b/lcc/sparc/solaris/tst/front.2bk
@@ -1,29 +1,29 @@
-tst/front.c:3: warning: missing return value
-tst/front.c:10: warning: missing return value
-tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
-tst/front.c:21: warning: missing return value
-tst/front.c:32: warning: missing return value
-tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
-tst/front.c:38: warning: missing return value
-tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
-tst/front.c:63: warning: missing return value
-tst/front.c:68: warning: missing return value
-tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
-tst/front.c:69: warning: missing return value
-tst/front.c:71: invalid storage class `static' for `int function goo'
-tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
-tst/front.c:71: warning: missing return value
-tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
-tst/front.c:74: warning: missing return value
-tst/front.c:81: warning: missing return value
-tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
-tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
-tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
-tst/front.c:92: warning: missing return value
-tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
-tst/front.c:98: warning: missing return value
-tst/front.c:101: conflicting argument declarations for function `gg1'
-tst/front.c:101: warning: missing return value
-tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
-tst/front.c:113: warning: missing return value
-tst/front.c:120: warning: missing return value
+tst/front.c:3: warning: missing return value
+tst/front.c:10: warning: missing return value
+tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
+tst/front.c:21: warning: missing return value
+tst/front.c:32: warning: missing return value
+tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
+tst/front.c:38: warning: missing return value
+tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
+tst/front.c:63: warning: missing return value
+tst/front.c:68: warning: missing return value
+tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
+tst/front.c:69: warning: missing return value
+tst/front.c:71: invalid storage class `static' for `int function goo'
+tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
+tst/front.c:71: warning: missing return value
+tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
+tst/front.c:74: warning: missing return value
+tst/front.c:81: warning: missing return value
+tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
+tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
+tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
+tst/front.c:92: warning: missing return value
+tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
+tst/front.c:98: warning: missing return value
+tst/front.c:101: conflicting argument declarations for function `gg1'
+tst/front.c:101: warning: missing return value
+tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
+tst/front.c:113: warning: missing return value
+tst/front.c:120: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/front.sbk b/lcc/sparc/solaris/tst/front.sbk
index 37a6f0d..a4f977b 100755
--- a/lcc/sparc/solaris/tst/front.sbk
+++ b/lcc/sparc/solaris/tst/front.sbk
@@ -1,260 +1,260 @@
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-96,%sp
-mov %g0,%o0
-call exit; nop
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.global nested
-.align 4
-nested:
-cmp %o0,4; bge .L6; nop
-cmp %o1,114; be .L9; nop
-.L6:
-cmp %o0,1; bne .L8; nop
-cmp %o1,104; be .L9; nop
-cmp %o1,105; be .L9; nop
-.L8:
-cmp %o0,2; bne .L3; nop
-cmp %o1,111; be .L9; nop
-cmp %o1,121; bne .L3; nop
-.L9:
-mov %o1,%o0
-.L3:
-mov %g0,%o0
-.L2:
-retl; nop
-.type nested,#function
-.size nested,.-nested
-.global s
-.align 4
-s:
-.L10:
-retl; nop
-.type s,#function
-.size s,.-s
-.section ".data"
-.global Dy
-.type Dy,#object
-.size Dy,8
-.align 4
-Dy:
-.word 0x0
-.skip 4
-.global Dz
-.type Dz,#object
-.size Dz,8
-.align 4
-Dz:
-.word 0x1
-.skip 4
-.global Dfunc
-.section ".text"
-.align 4
-Dfunc:
-save %sp,-96,%sp
-ret; restore
-.type Dfunc,#function
-.size Dfunc,.-Dfunc
-.global f
-.align 4
-f:
-retl; nop
-.type f,#function
-.size f,.-f
-.global f1
-.align 4
-f1:
-retl; nop
-.type f1,#function
-.size f1,.-f1
-.global f2
-.align 4
-f2:
-save %sp,-96,%sp
-ret; restore
-.type f2,#function
-.size f2,.-f2
-.global g
-.align 4
-g:
-save %sp,-96,%sp
-ret; restore
-.type g,#function
-.size g,.-g
-.global h
-.align 4
-h:
-save %sp,-96,%sp
-ret; restore
-.type h,#function
-.size h,.-h
-.global h1
-.align 4
-h1:
-save %sp,-96,%sp
-ret; restore
-.type h1,#function
-.size h1,.-h1
-.global h2
-.align 4
-h2:
-retl; nop
-.type h2,#function
-.size h2,.-h2
-.section ".data"
-.type .21,#object
-.size .21,4
-.align 4
-.21:
-.word 0x1
-.global set1
-.section ".text"
-.align 4
-set1:
-retl; nop
-.type set1,#function
-.size set1,.-set1
-.section ".data"
-.type .23,#object
-.size .23,4
-.align 4
-.23:
-.word 0x2
-.global set2
-.section ".text"
-.align 4
-set2:
-retl; nop
-.type set2,#function
-.size set2,.-set2
-.align 4
-goo:
-retl; nop
-.type goo,#function
-.size goo,.-goo
-.global sss
-.align 4
-sss:
-retl; nop
-.type sss,#function
-.size sss,.-sss
-.section ".bss"
-.type .27,#object
-.size .27,4
-.local .27
-.common .27,4,4
-.global rrr
-.section ".text"
-.align 4
-rrr:
-retl; nop
-.type rrr,#function
-.size rrr,.-rrr
-.global setstatic
-.align 4
-setstatic:
-retl; nop
-.type setstatic,#function
-.size setstatic,.-setstatic
-.global gx1
-.align 4
-gx1:
-save %sp,-96,%sp
-st %r24,[%fp+68]
-st %r25,[%fp+72]
-ret; restore
-.type gx1,#function
-.size gx1,.-gx1
-.global ff1
-.align 4
-ff1:
-save %sp,-96,%sp
-st %r24,[%fp+68]
-st %r25,[%fp+72]
-ret; restore
-.type ff1,#function
-.size ff1,.-ff1
-.global gg1
-.align 4
-gg1:
-retl; nop
-.type gg1,#function
-.size gg1,.-gg1
-.global hh1
-.align 4
-hh1:
-retl; nop
-.type hh1,#function
-.size hh1,.-hh1
-.global cmp
-.align 4
-cmp:
-save %sp,-96,%sp
-ret; restore
-.type cmp,#function
-.size cmp,.-cmp
-.global sort
-.align 4
-sort:
-save %sp,-96,%sp
-ret; restore
-.type sort,#function
-.size sort,.-sort
-.global onearg
-.align 4
-onearg:
-save %sp,-96,%sp
-ret; restore
-.type onearg,#function
-.size onearg,.-onearg
-.section ".bss"
-.global ss4
-.type ss4,#object
-.size ss4,4
-.common ss4,4,4
-.type ss2,#object
-.size ss2,4
-.local ss2
-.common ss2,4,4
-.type ss5,#object
-.size ss5,4
-.local ss5
-.common ss5,4,4
-.global ss3
-.type ss3,#object
-.size ss3,4
-.common ss3,4,4
-.type ss1,#object
-.size ss1,4
-.local ss1
-.common ss1,4,4
-.type yy,#object
-.size yy,4
-.local yy
-.common yy,4,4
-.global z
-.type z,#object
-.size z,4
-.common z,4,4
-.global y
-.type y,#object
-.size y,4
-.common y,4,4
-.global x
-.type x,#object
-.size x,4
-.common x,4,4
-.global b
-.type b,#object
-.size b,4
-.common b,4,4
-.global a
-.type a,#object
-.size a,4
-.common a,4,4
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-96,%sp
+mov %g0,%o0
+call exit; nop
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.global nested
+.align 4
+nested:
+cmp %o0,4; bge .L6; nop
+cmp %o1,114; be .L9; nop
+.L6:
+cmp %o0,1; bne .L8; nop
+cmp %o1,104; be .L9; nop
+cmp %o1,105; be .L9; nop
+.L8:
+cmp %o0,2; bne .L3; nop
+cmp %o1,111; be .L9; nop
+cmp %o1,121; bne .L3; nop
+.L9:
+mov %o1,%o0
+.L3:
+mov %g0,%o0
+.L2:
+retl; nop
+.type nested,#function
+.size nested,.-nested
+.global s
+.align 4
+s:
+.L10:
+retl; nop
+.type s,#function
+.size s,.-s
+.section ".data"
+.global Dy
+.type Dy,#object
+.size Dy,8
+.align 4
+Dy:
+.word 0x0
+.skip 4
+.global Dz
+.type Dz,#object
+.size Dz,8
+.align 4
+Dz:
+.word 0x1
+.skip 4
+.global Dfunc
+.section ".text"
+.align 4
+Dfunc:
+save %sp,-96,%sp
+ret; restore
+.type Dfunc,#function
+.size Dfunc,.-Dfunc
+.global f
+.align 4
+f:
+retl; nop
+.type f,#function
+.size f,.-f
+.global f1
+.align 4
+f1:
+retl; nop
+.type f1,#function
+.size f1,.-f1
+.global f2
+.align 4
+f2:
+save %sp,-96,%sp
+ret; restore
+.type f2,#function
+.size f2,.-f2
+.global g
+.align 4
+g:
+save %sp,-96,%sp
+ret; restore
+.type g,#function
+.size g,.-g
+.global h
+.align 4
+h:
+save %sp,-96,%sp
+ret; restore
+.type h,#function
+.size h,.-h
+.global h1
+.align 4
+h1:
+save %sp,-96,%sp
+ret; restore
+.type h1,#function
+.size h1,.-h1
+.global h2
+.align 4
+h2:
+retl; nop
+.type h2,#function
+.size h2,.-h2
+.section ".data"
+.type .21,#object
+.size .21,4
+.align 4
+.21:
+.word 0x1
+.global set1
+.section ".text"
+.align 4
+set1:
+retl; nop
+.type set1,#function
+.size set1,.-set1
+.section ".data"
+.type .23,#object
+.size .23,4
+.align 4
+.23:
+.word 0x2
+.global set2
+.section ".text"
+.align 4
+set2:
+retl; nop
+.type set2,#function
+.size set2,.-set2
+.align 4
+goo:
+retl; nop
+.type goo,#function
+.size goo,.-goo
+.global sss
+.align 4
+sss:
+retl; nop
+.type sss,#function
+.size sss,.-sss
+.section ".bss"
+.type .27,#object
+.size .27,4
+.local .27
+.common .27,4,4
+.global rrr
+.section ".text"
+.align 4
+rrr:
+retl; nop
+.type rrr,#function
+.size rrr,.-rrr
+.global setstatic
+.align 4
+setstatic:
+retl; nop
+.type setstatic,#function
+.size setstatic,.-setstatic
+.global gx1
+.align 4
+gx1:
+save %sp,-96,%sp
+st %r24,[%fp+68]
+st %r25,[%fp+72]
+ret; restore
+.type gx1,#function
+.size gx1,.-gx1
+.global ff1
+.align 4
+ff1:
+save %sp,-96,%sp
+st %r24,[%fp+68]
+st %r25,[%fp+72]
+ret; restore
+.type ff1,#function
+.size ff1,.-ff1
+.global gg1
+.align 4
+gg1:
+retl; nop
+.type gg1,#function
+.size gg1,.-gg1
+.global hh1
+.align 4
+hh1:
+retl; nop
+.type hh1,#function
+.size hh1,.-hh1
+.global cmp
+.align 4
+cmp:
+save %sp,-96,%sp
+ret; restore
+.type cmp,#function
+.size cmp,.-cmp
+.global sort
+.align 4
+sort:
+save %sp,-96,%sp
+ret; restore
+.type sort,#function
+.size sort,.-sort
+.global onearg
+.align 4
+onearg:
+save %sp,-96,%sp
+ret; restore
+.type onearg,#function
+.size onearg,.-onearg
+.section ".bss"
+.global ss4
+.type ss4,#object
+.size ss4,4
+.common ss4,4,4
+.type ss2,#object
+.size ss2,4
+.local ss2
+.common ss2,4,4
+.type ss5,#object
+.size ss5,4
+.local ss5
+.common ss5,4,4
+.global ss3
+.type ss3,#object
+.size ss3,4
+.common ss3,4,4
+.type ss1,#object
+.size ss1,4
+.local ss1
+.common ss1,4,4
+.type yy,#object
+.size yy,4
+.local yy
+.common yy,4,4
+.global z
+.type z,#object
+.size z,4
+.common z,4,4
+.global y
+.type y,#object
+.size y,4
+.common y,4,4
+.global x
+.type x,#object
+.size x,4
+.common x,4,4
+.global b
+.type b,#object
+.size b,4
+.common b,4,4
+.global a
+.type a,#object
+.size a,4
+.common a,4,4
diff --git a/lcc/sparc/solaris/tst/incr.2bk b/lcc/sparc/solaris/tst/incr.2bk
index b86c400..d9ef13c 100755
--- a/lcc/sparc/solaris/tst/incr.2bk
+++ b/lcc/sparc/solaris/tst/incr.2bk
@@ -1,9 +1,9 @@
-tst/incr.c:1: warning: missing return value
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:11: warning: missing return value
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:21: warning: missing return value
-tst/incr.c:30: warning: missing return value
-tst/incr.c:39: warning: missing return value
+tst/incr.c:1: warning: missing return value
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:11: warning: missing return value
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:21: warning: missing return value
+tst/incr.c:30: warning: missing return value
+tst/incr.c:39: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/incr.sbk b/lcc/sparc/solaris/tst/incr.sbk
index 752c97d..a7427e5 100755
--- a/lcc/sparc/solaris/tst/incr.sbk
+++ b/lcc/sparc/solaris/tst/incr.sbk
@@ -1,107 +1,107 @@
-.global main
-.section ".text"
-.align 4
-main:
-mov %g0,%o0
-.L1:
-retl; nop
-.type main,#function
-.size main,.-main
-.global memchar
-.align 4
-memchar:
-save %sp,-104,%sp
-ld [%fp+-8],%i5
-add %i5,1,%i4
-st %i4,[%fp+-8]
-ldsb [%i5],%i5
-stb %i5,[%fp+-1]
-ld [%fp+-8],%i5
-add %i5,1,%i5
-st %i5,[%fp+-8]
-ldsb [%i5],%i5
-stb %i5,[%fp+-1]
-ld [%fp+-8],%i5
-add %i5,-1,%i4
-st %i4,[%fp+-8]
-ldsb [%i5],%i5
-stb %i5,[%fp+-1]
-ld [%fp+-8],%i5
-add %i5,-1,%i5
-st %i5,[%fp+-8]
-ldsb [%i5],%i5
-stb %i5,[%fp+-1]
-mov %g0,%i0
-.L2:
-ret; restore
-.type memchar,#function
-.size memchar,.-memchar
-.global memint
-.align 4
-memint:
-save %sp,-104,%sp
-ld [%fp+-8],%i5
-add %i5,4,%i4
-st %i4,[%fp+-8]
-ld [%i5],%i5
-st %i5,[%fp+-4]
-ld [%fp+-8],%i5
-add %i5,4,%i5
-st %i5,[%fp+-8]
-ld [%i5],%i5
-st %i5,[%fp+-4]
-ld [%fp+-8],%i5
-add %i5,-4,%i4
-st %i4,[%fp+-8]
-ld [%i5],%i5
-st %i5,[%fp+-4]
-ld [%fp+-8],%i5
-add %i5,-4,%i5
-st %i5,[%fp+-8]
-ld [%i5],%i5
-st %i5,[%fp+-4]
-mov %g0,%i0
-.L3:
-ret; restore
-.type memint,#function
-.size memint,.-memint
-.global regchar
-.align 4
-regchar:
-mov %o4,%o3
-add %o3,1,%o4
-ldsb [%o3],%o5
-add %o4,1,%o3
-mov %o3,%o4
-ldsb [%o3],%o5
-mov %o4,%o3
-add %o3,-1,%o4
-ldsb [%o3],%o5
-add %o4,-1,%o3
-mov %o3,%o4
-ldsb [%o3],%o5
-mov %g0,%o0
-.L4:
-retl; nop
-.type regchar,#function
-.size regchar,.-regchar
-.global regint
-.align 4
-regint:
-mov %o4,%o3
-add %o3,4,%o4
-ld [%o3],%o5
-add %o4,4,%o3
-mov %o3,%o4
-ld [%o3],%o5
-mov %o4,%o3
-add %o3,-4,%o4
-ld [%o3],%o5
-add %o4,-4,%o3
-mov %o3,%o4
-ld [%o3],%o5
-mov %g0,%o0
-.L5:
-retl; nop
-.type regint,#function
-.size regint,.-regint
+.global main
+.section ".text"
+.align 4
+main:
+mov %g0,%o0
+.L1:
+retl; nop
+.type main,#function
+.size main,.-main
+.global memchar
+.align 4
+memchar:
+save %sp,-104,%sp
+ld [%fp+-8],%i5
+add %i5,1,%i4
+st %i4,[%fp+-8]
+ldsb [%i5],%i5
+stb %i5,[%fp+-1]
+ld [%fp+-8],%i5
+add %i5,1,%i5
+st %i5,[%fp+-8]
+ldsb [%i5],%i5
+stb %i5,[%fp+-1]
+ld [%fp+-8],%i5
+add %i5,-1,%i4
+st %i4,[%fp+-8]
+ldsb [%i5],%i5
+stb %i5,[%fp+-1]
+ld [%fp+-8],%i5
+add %i5,-1,%i5
+st %i5,[%fp+-8]
+ldsb [%i5],%i5
+stb %i5,[%fp+-1]
+mov %g0,%i0
+.L2:
+ret; restore
+.type memchar,#function
+.size memchar,.-memchar
+.global memint
+.align 4
+memint:
+save %sp,-104,%sp
+ld [%fp+-8],%i5
+add %i5,4,%i4
+st %i4,[%fp+-8]
+ld [%i5],%i5
+st %i5,[%fp+-4]
+ld [%fp+-8],%i5
+add %i5,4,%i5
+st %i5,[%fp+-8]
+ld [%i5],%i5
+st %i5,[%fp+-4]
+ld [%fp+-8],%i5
+add %i5,-4,%i4
+st %i4,[%fp+-8]
+ld [%i5],%i5
+st %i5,[%fp+-4]
+ld [%fp+-8],%i5
+add %i5,-4,%i5
+st %i5,[%fp+-8]
+ld [%i5],%i5
+st %i5,[%fp+-4]
+mov %g0,%i0
+.L3:
+ret; restore
+.type memint,#function
+.size memint,.-memint
+.global regchar
+.align 4
+regchar:
+mov %o4,%o3
+add %o3,1,%o4
+ldsb [%o3],%o5
+add %o4,1,%o3
+mov %o3,%o4
+ldsb [%o3],%o5
+mov %o4,%o3
+add %o3,-1,%o4
+ldsb [%o3],%o5
+add %o4,-1,%o3
+mov %o3,%o4
+ldsb [%o3],%o5
+mov %g0,%o0
+.L4:
+retl; nop
+.type regchar,#function
+.size regchar,.-regchar
+.global regint
+.align 4
+regint:
+mov %o4,%o3
+add %o3,4,%o4
+ld [%o3],%o5
+add %o4,4,%o3
+mov %o3,%o4
+ld [%o3],%o5
+mov %o4,%o3
+add %o3,-4,%o4
+ld [%o3],%o5
+add %o4,-4,%o3
+mov %o3,%o4
+ld [%o3],%o5
+mov %g0,%o0
+.L5:
+retl; nop
+.type regint,#function
+.size regint,.-regint
diff --git a/lcc/sparc/solaris/tst/init.1bk b/lcc/sparc/solaris/tst/init.1bk
index 042f3bb..77aff09 100755
--- a/lcc/sparc/solaris/tst/init.1bk
+++ b/lcc/sparc/solaris/tst/init.1bk
@@ -1,16 +1,16 @@
- 1 2 3 4
- 5 6
- 7
-if
-for
-else
-while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-0 0 0
+ 1 2 3 4
+ 5 6
+ 7
+if
+for
+else
+while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+0 0 0
diff --git a/lcc/sparc/solaris/tst/init.2bk b/lcc/sparc/solaris/tst/init.2bk
index da08062..aafe415 100755
--- a/lcc/sparc/solaris/tst/init.2bk
+++ b/lcc/sparc/solaris/tst/init.2bk
@@ -1,3 +1,3 @@
-tst/init.c:36: warning: missing return value
-tst/init.c:49: warning: missing return value
-tst/init.c:59: warning: missing return value
+tst/init.c:36: warning: missing return value
+tst/init.c:49: warning: missing return value
+tst/init.c:59: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/init.sbk b/lcc/sparc/solaris/tst/init.sbk
index 2b10055..e84f9c9 100755
--- a/lcc/sparc/solaris/tst/init.sbk
+++ b/lcc/sparc/solaris/tst/init.sbk
@@ -1,277 +1,277 @@
-.section ".data"
-.global words
-.type words,#object
-.align 4
-words:
-.word 0x1
-.word 0x2
-.word 0x3
-.byte 105
-.byte 102
-.byte 0
-.skip 3
-.skip 2
-.word 0x4
-.word 0x5
-.skip 4
-.byte 102
-.byte 111
-.byte 114
-.skip 3
-.skip 2
-.word 0x6
-.word 0x7
-.word 0x8
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.skip 1
-.skip 2
-.word 0x9
-.word 0xa
-.word 0xb
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.skip 1
-.skip 2
-.word 0x0
-.skip 8
-.skip 8
-.size words,100
-.global wordlist
-.type wordlist,#object
-.size wordlist,4
-.align 4
-wordlist:
-.word words
-.global x
-.type x,#object
-.align 4
-x:
-.word 0x1
-.word 0x2
-.word 0x3
-.word 0x4
-.word 0x0
-.word 0x5
-.word 0x6
-.skip 12
-.word 0x7
-.skip 16
-.size x,60
-.global y
-.type y,#object
-.align 4
-y:
-.word x
-.word x+20
-.word x+40
-.word 0x0
-.size y,16
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-96,%sp
-mov %g0,%i4
-ba .L8; nop
-.L5:
-mov %g0,%i5
-ba .L12; nop
-.L9:
-set .L13,%o0
-sll %i5,2,%i3
-sll %i4,2,%i2
-set y,%i1
-ld [%i2+%i1],%i2
-ld [%i3+%i2],%o1
-call printf; nop
-.L10:
-add %i5,1,%i5
-.L12:
-sll %i5,2,%i3
-sll %i4,2,%i2
-set y,%i1
-ld [%i2+%i1],%i2
-ld [%i3+%i2],%i3
-cmp %i3,0; bne .L9; nop
-set .L14,%o0
-call printf; nop
-.L6:
-add %i4,1,%i4
-.L8:
-sll %i4,2,%i3
-set y,%i2
-ld [%i3+%i2],%i3
-cmp %i3,%g0; bne .L5; nop
-call f; nop
-set wordlist,%i3
-ld [%i3],%o0
-call g; nop
-mov %g0,%i0
-.L4:
-ret; restore
-.type main,#function
-.size main,.-main
-.section ".data"
-.type .16,#object
-.align 4
-.16:
-.word .L17
-.word .L18
-.word .L19
-.word .L20
-.word 0x0
-.size .16,20
-.global f
-.section ".text"
-.align 4
-f:
-save %sp,-96,%sp
-set .16,%i5
-ba .L24; nop
-.L21:
-set .L25,%o0
-ld [%i5],%o1
-call printf; nop
-.L22:
-add %i5,4,%i5
-.L24:
-ld [%i5],%i4
-cmp %i4,%g0; bne .L21; nop
-mov %g0,%i0
-.L15:
-ret; restore
-.type f,#function
-.size f,.-f
-.global g
-.align 4
-g:
-save %sp,-96,%sp
-ba .L30; nop
-.L27:
-mov %g0,%i5
-ba .L34; nop
-.L31:
-set .L35,%o0
-sll %i5,2,%i4
-ld [%i4+%i0],%o1
-call printf; nop
-.L32:
-add %i5,1,%i5
-.L34:
-mov %i5,%i4
-set 3,%i3
-cmp %i4,%i3; blu .L31; nop
-set .L25,%o0
-add %i0,12,%o1
-call printf; nop
-.L28:
-add %i0,20,%i0
-.L30:
-ld [%i0],%i4
-cmp %i4,0; bne .L27; nop
-call h; nop
-mov %g0,%i0
-.L26:
-ret; restore
-.type g,#function
-.size g,.-g
-.global h
-.align 4
-h:
-save %sp,-96,%sp
-mov %g0,%i5
-ba .L40; nop
-.L37:
-set .L41,%o0
-smul %i5,20,%i4
-set words,%i3
-ld [%i4+%i3],%o1
-set words+4,%i3
-ld [%i4+%i3],%o2
-set words+8,%i3
-ld [%i4+%i3],%o3
-set words+12,%i3
-add %i4,%i3,%o4
-call printf; nop
-.L38:
-add %i5,1,%i5
-.L40:
-mov %i5,%i4
-set 5,%i3
-cmp %i4,%i3; blu .L37; nop
-mov %g0,%i0
-.L36:
-ret; restore
-.type h,#function
-.size h,.-h
-.section ".rodata"
-.align 1
-.L41:
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L35:
-.byte 37
-.byte 100
-.byte 32
-.byte 0
-.align 1
-.L25:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L20:
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.byte 0
-.align 1
-.L19:
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 1
-.L18:
-.byte 102
-.byte 111
-.byte 114
-.byte 0
-.align 1
-.L17:
-.byte 105
-.byte 102
-.byte 0
-.align 1
-.L14:
-.byte 10
-.byte 0
-.align 1
-.L13:
-.byte 32
-.byte 37
-.byte 100
-.byte 0
+.section ".data"
+.global words
+.type words,#object
+.align 4
+words:
+.word 0x1
+.word 0x2
+.word 0x3
+.byte 105
+.byte 102
+.byte 0
+.skip 3
+.skip 2
+.word 0x4
+.word 0x5
+.skip 4
+.byte 102
+.byte 111
+.byte 114
+.skip 3
+.skip 2
+.word 0x6
+.word 0x7
+.word 0x8
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.skip 1
+.skip 2
+.word 0x9
+.word 0xa
+.word 0xb
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.skip 1
+.skip 2
+.word 0x0
+.skip 8
+.skip 8
+.size words,100
+.global wordlist
+.type wordlist,#object
+.size wordlist,4
+.align 4
+wordlist:
+.word words
+.global x
+.type x,#object
+.align 4
+x:
+.word 0x1
+.word 0x2
+.word 0x3
+.word 0x4
+.word 0x0
+.word 0x5
+.word 0x6
+.skip 12
+.word 0x7
+.skip 16
+.size x,60
+.global y
+.type y,#object
+.align 4
+y:
+.word x
+.word x+20
+.word x+40
+.word 0x0
+.size y,16
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-96,%sp
+mov %g0,%i4
+ba .L8; nop
+.L5:
+mov %g0,%i5
+ba .L12; nop
+.L9:
+set .L13,%o0
+sll %i5,2,%i3
+sll %i4,2,%i2
+set y,%i1
+ld [%i2+%i1],%i2
+ld [%i3+%i2],%o1
+call printf; nop
+.L10:
+add %i5,1,%i5
+.L12:
+sll %i5,2,%i3
+sll %i4,2,%i2
+set y,%i1
+ld [%i2+%i1],%i2
+ld [%i3+%i2],%i3
+cmp %i3,0; bne .L9; nop
+set .L14,%o0
+call printf; nop
+.L6:
+add %i4,1,%i4
+.L8:
+sll %i4,2,%i3
+set y,%i2
+ld [%i3+%i2],%i3
+cmp %i3,%g0; bne .L5; nop
+call f; nop
+set wordlist,%i3
+ld [%i3],%o0
+call g; nop
+mov %g0,%i0
+.L4:
+ret; restore
+.type main,#function
+.size main,.-main
+.section ".data"
+.type .16,#object
+.align 4
+.16:
+.word .L17
+.word .L18
+.word .L19
+.word .L20
+.word 0x0
+.size .16,20
+.global f
+.section ".text"
+.align 4
+f:
+save %sp,-96,%sp
+set .16,%i5
+ba .L24; nop
+.L21:
+set .L25,%o0
+ld [%i5],%o1
+call printf; nop
+.L22:
+add %i5,4,%i5
+.L24:
+ld [%i5],%i4
+cmp %i4,%g0; bne .L21; nop
+mov %g0,%i0
+.L15:
+ret; restore
+.type f,#function
+.size f,.-f
+.global g
+.align 4
+g:
+save %sp,-96,%sp
+ba .L30; nop
+.L27:
+mov %g0,%i5
+ba .L34; nop
+.L31:
+set .L35,%o0
+sll %i5,2,%i4
+ld [%i4+%i0],%o1
+call printf; nop
+.L32:
+add %i5,1,%i5
+.L34:
+mov %i5,%i4
+set 3,%i3
+cmp %i4,%i3; blu .L31; nop
+set .L25,%o0
+add %i0,12,%o1
+call printf; nop
+.L28:
+add %i0,20,%i0
+.L30:
+ld [%i0],%i4
+cmp %i4,0; bne .L27; nop
+call h; nop
+mov %g0,%i0
+.L26:
+ret; restore
+.type g,#function
+.size g,.-g
+.global h
+.align 4
+h:
+save %sp,-96,%sp
+mov %g0,%i5
+ba .L40; nop
+.L37:
+set .L41,%o0
+smul %i5,20,%i4
+set words,%i3
+ld [%i4+%i3],%o1
+set words+4,%i3
+ld [%i4+%i3],%o2
+set words+8,%i3
+ld [%i4+%i3],%o3
+set words+12,%i3
+add %i4,%i3,%o4
+call printf; nop
+.L38:
+add %i5,1,%i5
+.L40:
+mov %i5,%i4
+set 5,%i3
+cmp %i4,%i3; blu .L37; nop
+mov %g0,%i0
+.L36:
+ret; restore
+.type h,#function
+.size h,.-h
+.section ".rodata"
+.align 1
+.L41:
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L35:
+.byte 37
+.byte 100
+.byte 32
+.byte 0
+.align 1
+.L25:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L20:
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.byte 0
+.align 1
+.L19:
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 1
+.L18:
+.byte 102
+.byte 111
+.byte 114
+.byte 0
+.align 1
+.L17:
+.byte 105
+.byte 102
+.byte 0
+.align 1
+.L14:
+.byte 10
+.byte 0
+.align 1
+.L13:
+.byte 32
+.byte 37
+.byte 100
+.byte 0
diff --git a/lcc/sparc/solaris/tst/limits.1bk b/lcc/sparc/solaris/tst/limits.1bk
index f0c1dc8..9beee8c 100755
--- a/lcc/sparc/solaris/tst/limits.1bk
+++ b/lcc/sparc/solaris/tst/limits.1bk
@@ -1,14 +1,14 @@
-UCHAR_MAX: 000000ff=255
-USHRT_MAX: 0000ffff=65535
-UINT_MAX: ffffffff=-1
-ULONG_MAX: ffffffff=-1
-CHAR_MAX: 0000007f=127
-SCHAR_MAX: 0000007f=127
-SHRT_MAX: 00007fff=32767
-INT_MAX: 7fffffff=2147483647
-LONG_MAX: 7fffffff=2147483647
-CHAR_MIN: ffffff80=-128
-SCHAR_MIN: ffffff80=-128
-SHRT_MIN: ffff8000=-32768
-INT_MIN: 80000000=-2147483648
-LONG_MIN: 80000000=-2147483648
+UCHAR_MAX: 000000ff=255
+USHRT_MAX: 0000ffff=65535
+UINT_MAX: ffffffff=-1
+ULONG_MAX: ffffffff=-1
+CHAR_MAX: 0000007f=127
+SCHAR_MAX: 0000007f=127
+SHRT_MAX: 00007fff=32767
+INT_MAX: 7fffffff=2147483647
+LONG_MAX: 7fffffff=2147483647
+CHAR_MIN: ffffff80=-128
+SCHAR_MIN: ffffff80=-128
+SHRT_MIN: ffff8000=-32768
+INT_MIN: 80000000=-2147483648
+LONG_MIN: 80000000=-2147483648
diff --git a/lcc/sparc/solaris/tst/limits.sbk b/lcc/sparc/solaris/tst/limits.sbk
index c80d328..2537c0c 100755
--- a/lcc/sparc/solaris/tst/limits.sbk
+++ b/lcc/sparc/solaris/tst/limits.sbk
@@ -1,384 +1,384 @@
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-96,%sp
-set .L2,%o0
-set 255,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L3,%o0
-set 65535,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L4,%o0
-set 0xffffffff,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L5,%o0
-set 0xffffffff,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L6,%o0
-set 127,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L7,%o0
-set 127,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L8,%o0
-set 32767,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L9,%o0
-set 2147483647,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L10,%o0
-set 2147483647,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L11,%o0
-set -128,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L12,%o0
-set -128,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L13,%o0
-set -32768,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L14,%o0
-set -2147483648,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-set .L15,%o0
-set -2147483648,%i5
-mov %i5,%o1
-mov %i5,%o2
-call printf; nop
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.section ".rodata"
-.align 1
-.L15:
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L14:
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L13:
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L12:
-.byte 83
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L11:
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L10:
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L9:
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L8:
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L7:
-.byte 83
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L6:
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L5:
-.byte 85
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L4:
-.byte 85
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L3:
-.byte 85
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L2:
-.byte 85
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-96,%sp
+set .L2,%o0
+set 255,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L3,%o0
+set 65535,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L4,%o0
+set 0xffffffff,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L5,%o0
+set 0xffffffff,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L6,%o0
+set 127,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L7,%o0
+set 127,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L8,%o0
+set 32767,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L9,%o0
+set 2147483647,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L10,%o0
+set 2147483647,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L11,%o0
+set -128,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L12,%o0
+set -128,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L13,%o0
+set -32768,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L14,%o0
+set -2147483648,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+set .L15,%o0
+set -2147483648,%i5
+mov %i5,%o1
+mov %i5,%o2
+call printf; nop
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.section ".rodata"
+.align 1
+.L15:
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L14:
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L13:
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L12:
+.byte 83
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L11:
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L10:
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L9:
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L8:
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L7:
+.byte 83
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L6:
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L5:
+.byte 85
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L4:
+.byte 85
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L3:
+.byte 85
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L2:
+.byte 85
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
diff --git a/lcc/sparc/solaris/tst/paranoia.1bk b/lcc/sparc/solaris/tst/paranoia.1bk
index 30c3470..09e21fa 100755
--- a/lcc/sparc/solaris/tst/paranoia.1bk
+++ b/lcc/sparc/solaris/tst/paranoia.1bk
@@ -1,178 +1,178 @@
-Lest this program stop prematurely, i.e. before displaying
-
- `END OF TEST',
-
-try to persuade the computer NOT to terminate execution when an
-error like Over/Underflow or Division by Zero occurs, but rather
-to persevere with a surrogate value after, perhaps, displaying some
-warning. If persuasion avails naught, don't despair but run this
-program anyway to see how many milestones it passes, and then
-amend it to make further progress.
-
-Answer questions with Y, y, N or n (unless otherwise indicated).
-
-
-Diagnosis resumes after milestone Number 0 Page: 1
-
-Users are invited to help debug and augment this program so it will
-cope with unanticipated and newly uncovered arithmetic pathologies.
-
-Please send suggestions and interesting results to
- Richard Karpinski
- Computer Center U-76
- University of California
- San Francisco, CA 94143-0704, USA
-
-In doing so, please include the following information:
- Precision: double;
- Version: 10 February 1989;
- Computer:
-
- Compiler:
-
- Optimization level:
-
- Other relevant compiler options:
-
-Diagnosis resumes after milestone Number 1 Page: 2
-
-Running this program should reveal these characteristics:
- Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
- Precision = number of significant digits carried.
- U2 = Radix/Radix^Precision = One Ulp
- (OneUlpnit in the Last Place) of 1.000xxx .
- U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
- Adequacy of guard digits for Mult., Div. and Subt.
- Whether arithmetic is chopped, correctly rounded, or something else
- for Mult., Div., Add/Subt. and Sqrt.
- Whether a Sticky Bit used correctly for rounding.
- UnderflowThreshold = an underflow threshold.
- E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
- V = an overflow threshold, roughly.
- V0 tells, roughly, whether Infinity is represented.
- Comparisions are checked for consistency with subtraction
- and for contamination with pseudo-zeros.
- Sqrt is tested. Y^X is not tested.
- Extra-precise subexpressions are revealed but NOT YET tested.
- Decimal-Binary conversion is NOT YET tested for accuracy.
-
-Diagnosis resumes after milestone Number 2 Page: 3
-
-The program attempts to discriminate among
- FLAWs, like lack of a sticky bit,
- Serious DEFECTs, like lack of a guard digit, and
- FAILUREs, like 2+2 == 5 .
-Failures may confound subsequent diagnoses.
-
-The diagnostic capabilities of this program go beyond an earlier
-program called `MACHAR', which can be found at the end of the
-book `Software Manual for the Elementary Functions' (1980) by
-W. J. Cody and W. Waite. Although both programs try to discover
-the Radix, Precision and range (over/underflow thresholds)
-of the arithmetic, this program tries to cope with a wider variety
-of pathologies, and to say how well the arithmetic is implemented.
-
-The program is based upon a conventional radix representation for
-floating-point numbers, but also allows logarithmic encoding
-as used by certain early WANG machines.
-
-BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
-see source comments for more history.
-
-Diagnosis resumes after milestone Number 3 Page: 4
-
-Program is now RUNNING tests on small integers:
--1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
-
-Searching for Radix and Precision.
-Radix = 2.000000 .
-Closest relative separation found is U1 = 1.1102230e-16 .
-
-Recalculating radix and precision
- confirms closest relative separation U1 .
-Radix confirmed.
-The number of significant digits of the Radix is 53.000000 .
-
-Diagnosis resumes after milestone Number 30 Page: 5
-
-Subtraction appears to be normalized, as it should be.
-Checking for guard digit in *, /, and -.
- *, /, and - appear to have guard digits, as they should.
-
-Diagnosis resumes after milestone Number 40 Page: 6
-
-Checking rounding on multiply, divide and add/subtract.
-Multiplication appears to round correctly.
-Division appears to round correctly.
-Addition/Subtraction appears to round correctly.
-Checking for sticky bit.
-Sticky bit apparently used correctly.
-
-Does Multiplication commute? Testing on 20 random pairs.
- No failures found in 20 integer pairs.
-
-Running test of square root(x).
-Testing if sqrt(X * X) == X for 20 Integers X.
-Test for sqrt monotonicity.
-sqrt has passed a test for Monotonicity.
-Testing whether sqrt is rounded or chopped.
-Square root appears to be correctly rounded.
-
-Diagnosis resumes after milestone Number 90 Page: 7
-
-Testing powers Z^i for small Integers Z and i.
-... no discrepancis found.
-
-Seeking Underflow thresholds UfThold and E0.
-Smallest strictly positive number found is E0 = 4.94066e-324 .
-Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
-What the machine gets for (Z + Z) / Z is 2.00000000000000000e+00 .
-This is O.K., provided Over/Underflow has NOT just been signaled.
-Underflow is gradual; it incurs Absolute Error =
-(roundoff in UfThold) < E0.
-The Underflow threshold is 2.22507385850720188e-308, below which
-calculation may suffer larger Relative error than merely roundoff.
-Since underflow occurs below the threshold
-UfThold = (2.00000000000000000e+00) ^ (-1.02200000000000000e+03)
-only underflow should afflict the expression
- (2.00000000000000000e+00) ^ (-1.02200000000000000e+03);
-actually calculating yields: 0.00000000000000000e+00 .
-This computed value is O.K.
-
-Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065218e+00 as X -> 1.
-Accuracy seems adequate.
-Testing powers Z^Q at four nearly extreme values.
- ... no discrepancies found.
-
-
-Diagnosis resumes after milestone Number 160 Page: 8
-
-Searching for Overflow threshold:
-This may generate an error.
-Can `Z = -Y' overflow?
-Trying it on Y = -Infinity .
-Seems O.K.
-Overflow threshold is V = 1.79769313486231571e+308 .
-Overflow saturates at V0 = Infinity .
-No Overflow should be signaled for V * 1 = 1.79769313486231571e+308
- nor for V / 1 = 1.79769313486231571e+308 .
-Any overflow signal separating this * from the one
-above is a DEFECT.
-
-
-Diagnosis resumes after milestone Number 190 Page: 9
-
-
-What message and/or values does Division by Zero produce?
- Trying to compute 1 / 0 produces ... Infinity .
-
- Trying to compute 0 / 0 produces ... NaN .
-
-Diagnosis resumes after milestone Number 220 Page: 10
-
-
-
-No failures, defects nor flaws have been discovered.
-Rounding appears to conform to the proposed IEEE standard P754.
-The arithmetic diagnosed appears to be Excellent!
-END OF TEST.
+Lest this program stop prematurely, i.e. before displaying
+
+ `END OF TEST',
+
+try to persuade the computer NOT to terminate execution when an
+error like Over/Underflow or Division by Zero occurs, but rather
+to persevere with a surrogate value after, perhaps, displaying some
+warning. If persuasion avails naught, don't despair but run this
+program anyway to see how many milestones it passes, and then
+amend it to make further progress.
+
+Answer questions with Y, y, N or n (unless otherwise indicated).
+
+
+Diagnosis resumes after milestone Number 0 Page: 1
+
+Users are invited to help debug and augment this program so it will
+cope with unanticipated and newly uncovered arithmetic pathologies.
+
+Please send suggestions and interesting results to
+ Richard Karpinski
+ Computer Center U-76
+ University of California
+ San Francisco, CA 94143-0704, USA
+
+In doing so, please include the following information:
+ Precision: double;
+ Version: 10 February 1989;
+ Computer:
+
+ Compiler:
+
+ Optimization level:
+
+ Other relevant compiler options:
+
+Diagnosis resumes after milestone Number 1 Page: 2
+
+Running this program should reveal these characteristics:
+ Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
+ Precision = number of significant digits carried.
+ U2 = Radix/Radix^Precision = One Ulp
+ (OneUlpnit in the Last Place) of 1.000xxx .
+ U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
+ Adequacy of guard digits for Mult., Div. and Subt.
+ Whether arithmetic is chopped, correctly rounded, or something else
+ for Mult., Div., Add/Subt. and Sqrt.
+ Whether a Sticky Bit used correctly for rounding.
+ UnderflowThreshold = an underflow threshold.
+ E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
+ V = an overflow threshold, roughly.
+ V0 tells, roughly, whether Infinity is represented.
+ Comparisions are checked for consistency with subtraction
+ and for contamination with pseudo-zeros.
+ Sqrt is tested. Y^X is not tested.
+ Extra-precise subexpressions are revealed but NOT YET tested.
+ Decimal-Binary conversion is NOT YET tested for accuracy.
+
+Diagnosis resumes after milestone Number 2 Page: 3
+
+The program attempts to discriminate among
+ FLAWs, like lack of a sticky bit,
+ Serious DEFECTs, like lack of a guard digit, and
+ FAILUREs, like 2+2 == 5 .
+Failures may confound subsequent diagnoses.
+
+The diagnostic capabilities of this program go beyond an earlier
+program called `MACHAR', which can be found at the end of the
+book `Software Manual for the Elementary Functions' (1980) by
+W. J. Cody and W. Waite. Although both programs try to discover
+the Radix, Precision and range (over/underflow thresholds)
+of the arithmetic, this program tries to cope with a wider variety
+of pathologies, and to say how well the arithmetic is implemented.
+
+The program is based upon a conventional radix representation for
+floating-point numbers, but also allows logarithmic encoding
+as used by certain early WANG machines.
+
+BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
+see source comments for more history.
+
+Diagnosis resumes after milestone Number 3 Page: 4
+
+Program is now RUNNING tests on small integers:
+-1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
+
+Searching for Radix and Precision.
+Radix = 2.000000 .
+Closest relative separation found is U1 = 1.1102230e-16 .
+
+Recalculating radix and precision
+ confirms closest relative separation U1 .
+Radix confirmed.
+The number of significant digits of the Radix is 53.000000 .
+
+Diagnosis resumes after milestone Number 30 Page: 5
+
+Subtraction appears to be normalized, as it should be.
+Checking for guard digit in *, /, and -.
+ *, /, and - appear to have guard digits, as they should.
+
+Diagnosis resumes after milestone Number 40 Page: 6
+
+Checking rounding on multiply, divide and add/subtract.
+Multiplication appears to round correctly.
+Division appears to round correctly.
+Addition/Subtraction appears to round correctly.
+Checking for sticky bit.
+Sticky bit apparently used correctly.
+
+Does Multiplication commute? Testing on 20 random pairs.
+ No failures found in 20 integer pairs.
+
+Running test of square root(x).
+Testing if sqrt(X * X) == X for 20 Integers X.
+Test for sqrt monotonicity.
+sqrt has passed a test for Monotonicity.
+Testing whether sqrt is rounded or chopped.
+Square root appears to be correctly rounded.
+
+Diagnosis resumes after milestone Number 90 Page: 7
+
+Testing powers Z^i for small Integers Z and i.
+... no discrepancis found.
+
+Seeking Underflow thresholds UfThold and E0.
+Smallest strictly positive number found is E0 = 4.94066e-324 .
+Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
+What the machine gets for (Z + Z) / Z is 2.00000000000000000e+00 .
+This is O.K., provided Over/Underflow has NOT just been signaled.
+Underflow is gradual; it incurs Absolute Error =
+(roundoff in UfThold) < E0.
+The Underflow threshold is 2.22507385850720188e-308, below which
+calculation may suffer larger Relative error than merely roundoff.
+Since underflow occurs below the threshold
+UfThold = (2.00000000000000000e+00) ^ (-1.02200000000000000e+03)
+only underflow should afflict the expression
+ (2.00000000000000000e+00) ^ (-1.02200000000000000e+03);
+actually calculating yields: 0.00000000000000000e+00 .
+This computed value is O.K.
+
+Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065218e+00 as X -> 1.
+Accuracy seems adequate.
+Testing powers Z^Q at four nearly extreme values.
+ ... no discrepancies found.
+
+
+Diagnosis resumes after milestone Number 160 Page: 8
+
+Searching for Overflow threshold:
+This may generate an error.
+Can `Z = -Y' overflow?
+Trying it on Y = -Infinity .
+Seems O.K.
+Overflow threshold is V = 1.79769313486231571e+308 .
+Overflow saturates at V0 = Infinity .
+No Overflow should be signaled for V * 1 = 1.79769313486231571e+308
+ nor for V / 1 = 1.79769313486231571e+308 .
+Any overflow signal separating this * from the one
+above is a DEFECT.
+
+
+Diagnosis resumes after milestone Number 190 Page: 9
+
+
+What message and/or values does Division by Zero produce?
+ Trying to compute 1 / 0 produces ... Infinity .
+
+ Trying to compute 0 / 0 produces ... NaN .
+
+Diagnosis resumes after milestone Number 220 Page: 10
+
+
+
+No failures, defects nor flaws have been discovered.
+Rounding appears to conform to the proposed IEEE standard P754.
+The arithmetic diagnosed appears to be Excellent!
+END OF TEST.
diff --git a/lcc/sparc/solaris/tst/paranoia.2bk b/lcc/sparc/solaris/tst/paranoia.2bk
index f6ddf16..2718174 100755
--- a/lcc/sparc/solaris/tst/paranoia.2bk
+++ b/lcc/sparc/solaris/tst/paranoia.2bk
@@ -1,16 +1,16 @@
-tst/paranoia.c:1867: warning: missing return value
-tst/paranoia.c:1874: warning: missing return value
-tst/paranoia.c:1884: warning: missing return value
-tst/paranoia.c:1924: warning: missing return value
-tst/paranoia.c:1939: warning: missing return value
-tst/paranoia.c:1956: warning: missing return value
-tst/paranoia.c:1975: warning: missing return value
-tst/paranoia.c:1988: warning: missing return value
-tst/paranoia.c:1995: warning: missing return value
-tst/paranoia.c:2055: warning: missing return value
-tst/paranoia.c:2062: warning: missing return value
-tst/paranoia.c:2070: warning: missing return value
-tst/paranoia.c:2087: warning: missing return value
-tst/paranoia.c:2115: warning: missing return value
-tst/paranoia.c:2144: warning: missing return value
-tst/paranoia.c:2173: warning: missing return value
+tst/paranoia.c:1867: warning: missing return value
+tst/paranoia.c:1874: warning: missing return value
+tst/paranoia.c:1884: warning: missing return value
+tst/paranoia.c:1924: warning: missing return value
+tst/paranoia.c:1939: warning: missing return value
+tst/paranoia.c:1956: warning: missing return value
+tst/paranoia.c:1975: warning: missing return value
+tst/paranoia.c:1988: warning: missing return value
+tst/paranoia.c:1995: warning: missing return value
+tst/paranoia.c:2055: warning: missing return value
+tst/paranoia.c:2062: warning: missing return value
+tst/paranoia.c:2070: warning: missing return value
+tst/paranoia.c:2087: warning: missing return value
+tst/paranoia.c:2115: warning: missing return value
+tst/paranoia.c:2144: warning: missing return value
+tst/paranoia.c:2173: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/paranoia.sbk b/lcc/sparc/solaris/tst/paranoia.sbk
index e455699..4b4bd7e 100755
--- a/lcc/sparc/solaris/tst/paranoia.sbk
+++ b/lcc/sparc/solaris/tst/paranoia.sbk
@@ -1,21068 +1,21068 @@
-.section ".data"
-.global Zero
-.type Zero,#object
-.size Zero,8
-.align 8
-Zero:
-.word 0x0
-.word 0x0
-.global Half
-.type Half,#object
-.size Half,8
-.align 8
-Half:
-.word 0x3fe00000
-.word 0x0
-.global One
-.type One,#object
-.size One,8
-.align 8
-One:
-.word 0x3ff00000
-.word 0x0
-.global Two
-.type Two,#object
-.size Two,8
-.align 8
-Two:
-.word 0x40000000
-.word 0x0
-.global Three
-.type Three,#object
-.size Three,8
-.align 8
-Three:
-.word 0x40080000
-.word 0x0
-.global Four
-.type Four,#object
-.size Four,8
-.align 8
-Four:
-.word 0x40100000
-.word 0x0
-.global Five
-.type Five,#object
-.size Five,8
-.align 8
-Five:
-.word 0x40140000
-.word 0x0
-.global Eight
-.type Eight,#object
-.size Eight,8
-.align 8
-Eight:
-.word 0x40200000
-.word 0x0
-.global Nine
-.type Nine,#object
-.size Nine,8
-.align 8
-Nine:
-.word 0x40220000
-.word 0x0
-.global TwentySeven
-.type TwentySeven,#object
-.size TwentySeven,8
-.align 8
-TwentySeven:
-.word 0x403b0000
-.word 0x0
-.global ThirtyTwo
-.type ThirtyTwo,#object
-.size ThirtyTwo,8
-.align 8
-ThirtyTwo:
-.word 0x40400000
-.word 0x0
-.global TwoForty
-.type TwoForty,#object
-.size TwoForty,8
-.align 8
-TwoForty:
-.word 0x406e0000
-.word 0x0
-.global MinusOne
-.type MinusOne,#object
-.size MinusOne,8
-.align 8
-MinusOne:
-.word 0xbff00000
-.word 0x0
-.global OneAndHalf
-.type OneAndHalf,#object
-.size OneAndHalf,8
-.align 8
-OneAndHalf:
-.word 0x3ff80000
-.word 0x0
-.global NoTrials
-.type NoTrials,#object
-.size NoTrials,4
-.align 4
-NoTrials:
-.word 0x14
-.global sigfpe
-.section ".text"
-.align 4
-sigfpe:
-save %sp,-96,%sp
-set fpecount,%i5
-ld [%i5],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-set .L3,%o0
-call printf; nop
-set __iob+16,%o0
-call fflush; nop
-set sigsave,%i5
-ld [%i5],%i5
-cmp %i5,%g0; be .L5; nop
-set 8,%o0
-set sigsave,%i5
-ld [%i5],%o1
-call signal; nop
-set sigsave,%i5
-st %g0,[%i5]
-set ovfl_buf,%o0
-set 1,%o1
-call longjmp; nop
-.L5:
-call abort; nop
-.L2:
-ret; restore
-.type sigfpe,#function
-.size sigfpe,.-sigfpe
-.section ".data"
-.type .758,#object
-.align 4
-.758:
-.word .L759
-.word .L760
-.word .L761
-.word .L762
-.size .758,16
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-216,%sp
-set Zero,%i5
-set .L8,%i4
-ld2 [%i4],%f30
-st2 %f30,[%i5]
-set One,%i5
-set .L9,%i4
-ld2 [%i4],%f30
-st2 %f30,[%i5]
-set Two,%i4
-ld2 [%i5],%f30
-faddd %f30,%f30,%f28
-st2 %f28,[%i4]
-set Three,%i5
-ld2 [%i4],%f28
-faddd %f28,%f30,%f26
-st2 %f26,[%i5]
-set Four,%i4
-ld2 [%i5],%f26
-faddd %f26,%f30,%f24
-st2 %f24,[%i4]
-set Five,%i5
-ld2 [%i4],%f24
-faddd %f24,%f30,%f22
-st2 %f22,[%i5]
-set Eight,%i4
-faddd %f24,%f24,%f22
-st2 %f22,[%i4]
-set Nine,%i3
-fmuld %f26,%f26,%f22
-st2 %f22,[%i3]
-set TwentySeven,%i2
-ld2 [%i3],%f22
-fmuld %f22,%f26,%f22
-st2 %f22,[%i2]
-set ThirtyTwo,%i3
-ld2 [%i4],%f22
-fmuld %f24,%f22,%f22
-st2 %f22,[%i3]
-set TwoForty,%i4
-ld2 [%i5],%f22
-fmuld %f24,%f22,%f22
-fmuld %f22,%f26,%f26
-fmuld %f26,%f24,%f26
-st2 %f26,[%i4]
-set MinusOne,%i5
-fnegs %f30,%f26; fmovs %f31,%f27
-st2 %f26,[%i5]
-set Half,%i5
-fdivd %f30,%f28,%f28
-st2 %f28,[%i5]
-set OneAndHalf,%i4
-ld2 [%i5],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%i4]
-set ErrCnt,%i4
-st %g0,[%i4]
-set ErrCnt+4,%i4
-st %g0,[%i4]
-set ErrCnt+8,%i5
-st %g0,[%i5]
-set ErrCnt+12,%i5
-st %g0,[%i5]
-set PageNo,%i5
-set 1,%i4
-st %i4,[%i5]
-set Milestone,%i5
-st %g0,[%i5]
-set 8,%o0
-set sigfpe,%o1
-call signal; nop
-call Instructions; nop
-call Pause; nop
-call Heading; nop
-call Pause; nop
-call Characteristics; nop
-call Pause; nop
-call History; nop
-call Pause; nop
-set Milestone,%i5
-set 7,%i4
-st %i4,[%i5]
-set .L13,%o0
-call printf; nop
-mov %g0,%o0
-set Zero,%i4
-ld2 [%i4],%f30
-faddd %f30,%f30,%f28
-fcmped %f28,%f30; nop; fbne .L16; nop
-set One,%i4
-ld2 [%i4],%f28
-fsubd %f28,%f28,%f26
-fcmped %f26,%f30; nop; fbne .L16; nop
-fcmped %f28,%f30; nop; fbule .L16; nop
-faddd %f28,%f28,%f30
-set Two,%i4
-ld2 [%i4],%f28
-fcmped %f30,%f28; nop; fbne .L16; nop
-set 1,%i5
-ba .L17; nop
-.L16:
-mov %g0,%i5
-.L17:
-mov %i5,%o1
-set .L15,%o2
-call TstCond; nop
-set Z,%i4
-set Zero,%i3
-ld2 [%i3],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%i4]
-ld2 [%i4],%f30
-set .L8,%i4
-ld2 [%i4],%f28
-fcmped %f30,%f28; nop; fbue .L18; nop
-set ErrCnt,%i4
-ld [%i4],%i3
-add %i3,1,%i3
-st %i3,[%i4]
-set .L20,%o0
-call printf; nop
-set U1,%i4
-set .L21,%i3
-ld2 [%i3],%f30
-st2 %f30,[%i4]
-set Radix,%i4
-set .L9,%i3
-ld2 [%i3],%f30
-st2 %f30,[%i4]
-call TstPtUf; nop
-.L18:
-mov %g0,%o0
-set Three,%i3
-ld2 [%i3],%f30
-set Two,%i3
-ld2 [%i3],%f28
-set One,%i3
-ld2 [%i3],%f26
-faddd %f28,%f26,%f24
-fcmped %f30,%f24; nop; fbne .L24; nop
-set Four,%i3
-ld2 [%i3],%f24
-faddd %f30,%f26,%f22
-fcmped %f24,%f22; nop; fbne .L24; nop
-set Zero,%i3
-ld2 [%i3],%f22
-fnegs %f28,%f20; fmovs %f29,%f21
-fmuld %f28,%f20,%f28
-faddd %f24,%f28,%f28
-fcmped %f28,%f22; nop; fbne .L24; nop
-fsubd %f24,%f30,%f30
-fsubd %f30,%f26,%f30
-fcmped %f30,%f22; nop; fbne .L24; nop
-set 1,%i4
-ba .L25; nop
-.L24:
-mov %g0,%i4
-.L25:
-mov %i4,%o1
-set .L23,%o2
-call TstCond; nop
-set MinusOne,%i2
-ld2 [%i2],%f30
-std %f30,[%fp+-8]
-set One,%i2
-ld2 [%i2],%f28
-set .L8,%i2
-ld2 [%i2],%f26
-fsubd %f26,%f28,%f26
-fcmped %f30,%f26; nop; fbne .L28; nop
-set Zero,%i2
-ld2 [%i2],%f26
-faddd %f30,%f28,%f24
-fcmped %f24,%f26; nop; fbne .L28; nop
-faddd %f28,%f30,%f24
-fcmped %f24,%f26; nop; fbne .L28; nop
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Zero,%i2
-ld2 [%i2],%f28
-ldd [%fp+-8],%f26
-faddd %f26,%f30,%f30
-fcmped %f30,%f28; nop; fbne .L28; nop
-set MinusOne,%i2
-ld2 [%i2],%f30
-fmuld %f30,%f30,%f26
-faddd %f30,%f26,%f30
-fcmped %f30,%f28; nop; fbne .L28; nop
-set 1,%i3
-ba .L29; nop
-.L28:
-mov %g0,%i3
-.L29:
-mov %g0,%o0
-mov %i3,%o1
-set .L27,%o2
-call TstCond; nop
-mov %g0,%o0
-set Half,%i1
-ld2 [%i1],%f30
-set MinusOne,%i1
-ld2 [%i1],%f28
-faddd %f30,%f28,%f28
-faddd %f28,%f30,%f30
-set Zero,%i1
-ld2 [%i1],%f28
-fcmped %f30,%f28; nop; fbne .L32; nop
-set 1,%i2
-ba .L33; nop
-.L32:
-mov %g0,%i2
-.L33:
-mov %i2,%o1
-set .L31,%o2
-call TstCond; nop
-set Milestone,%i0
-set 10,%l7
-st %l7,[%i0]
-mov %g0,%o0
-set Nine,%i0
-ld2 [%i0],%f30
-set Three,%i0
-ld2 [%i0],%f28
-fmuld %f28,%f28,%f26
-fcmped %f30,%f26; nop; fbne .L36; nop
-set TwentySeven,%i0
-ld2 [%i0],%f26
-fmuld %f30,%f28,%f30
-fcmped %f26,%f30; nop; fbne .L36; nop
-set Eight,%i0
-ld2 [%i0],%f30
-set Four,%i0
-ld2 [%i0],%f28
-faddd %f28,%f28,%f24
-fcmped %f30,%f24; nop; fbne .L36; nop
-set ThirtyTwo,%i0
-ld2 [%i0],%f24
-fmuld %f30,%f28,%f30
-fcmped %f24,%f30; nop; fbne .L36; nop
-fsubd %f24,%f26,%f30
-fsubd %f30,%f28,%f30
-set One,%i0
-ld2 [%i0],%f28
-fsubd %f30,%f28,%f30
-set Zero,%i0
-ld2 [%i0],%f28
-fcmped %f30,%f28; nop; fbne .L36; nop
-set 1,%i1
-ba .L37; nop
-.L36:
-mov %g0,%i1
-.L37:
-mov %i1,%o1
-set .L35,%o2
-call TstCond; nop
-mov %g0,%o0
-set Five,%l7
-ld2 [%l7],%f30
-set Four,%l7
-ld2 [%l7],%f28
-set One,%l7
-ld2 [%l7],%f26
-faddd %f28,%f26,%f26
-fcmped %f30,%f26; nop; fbne .L40; nop
-set TwoForty,%l7
-ld2 [%l7],%f26
-set Three,%l7
-ld2 [%l7],%f24
-fmuld %f28,%f30,%f22
-fmuld %f22,%f24,%f22
-fmuld %f22,%f28,%f22
-fcmped %f26,%f22; nop; fbne .L40; nop
-set Zero,%l7
-ld2 [%l7],%f22
-fdivd %f26,%f24,%f20
-fmuld %f28,%f28,%f18
-fmuld %f18,%f30,%f18
-fsubd %f20,%f18,%f20
-fcmped %f20,%f22; nop; fbne .L40; nop
-fdivd %f26,%f28,%f20
-fmuld %f30,%f24,%f18
-fmuld %f18,%f28,%f18
-fsubd %f20,%f18,%f20
-fcmped %f20,%f22; nop; fbne .L40; nop
-fdivd %f26,%f30,%f30
-fmuld %f28,%f24,%f26
-fmuld %f26,%f28,%f28
-fsubd %f30,%f28,%f30
-fcmped %f30,%f22; nop; fbne .L40; nop
-set 1,%i0
-ba .L41; nop
-.L40:
-mov %g0,%i0
-.L41:
-mov %i0,%o1
-set .L39,%o2
-call TstCond; nop
-set ErrCnt,%l7
-ld [%l7],%l7
-cmp %l7,0; bne .L42; nop
-set .L44,%o0
-call printf; nop
-set .L45,%o0
-call printf; nop
-.L42:
-set .L46,%o0
-call printf; nop
-set W,%l7
-set One,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-.L47:
-set W,%l7
-ld2 [%l7],%f30
-faddd %f30,%f30,%f30
-st2 %f30,[%l7]
-set Y,%l6
-ld2 [%l7],%f30
-set One,%l7
-ld2 [%l7],%f28
-faddd %f30,%f28,%f26
-st2 %f26,[%l6]
-set Z,%l7
-ld2 [%l6],%f26
-fsubd %f26,%f30,%f30
-st2 %f30,[%l7]
-ld2 [%l7],%f30
-fsubd %f30,%f28,%f30
-st2 %f30,[%l6]
-.L48:
-set Y,%l7
-ld2 [%l7],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set MinusOne,%l7
-ld2 [%l7],%f28
-faddd %f28,%f30,%f30
-set Zero,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbul .L47; nop
-set Precision,%l7
-set Zero,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-set Y,%l7
-set One,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-.L50:
-set Radix,%l7
-set W,%l6
-ld2 [%l6],%f30
-set Y,%l6
-ld2 [%l6],%f28
-faddd %f30,%f28,%f26
-st2 %f26,[%l7]
-faddd %f28,%f28,%f28
-st2 %f28,[%l6]
-ld2 [%l7],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l7]
-.L51:
-set Radix,%l7
-ld2 [%l7],%f30
-set Zero,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbue .L50; nop
-set Radix,%l7
-ld2 [%l7],%f30
-set Two,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbuge .L53; nop
-set Radix,%l7
-set One,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-.L53:
-set .L55,%o0
-set Radix,%l7
-ld2 [%l7],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set Radix,%l7
-ld2 [%l7],%f30
-set .L9,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbue .L56; nop
-set W,%l7
-set One,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-.L58:
-set Precision,%l7
-set One,%l6
-ld2 [%l6],%f30
-ld2 [%l7],%f28
-faddd %f28,%f30,%f28
-st2 %f28,[%l7]
-set W,%l7
-ld2 [%l7],%f28
-set Radix,%l6
-ld2 [%l6],%f26
-fmuld %f28,%f26,%f28
-st2 %f28,[%l7]
-set Y,%l6
-ld2 [%l7],%f28
-faddd %f28,%f30,%f30
-st2 %f30,[%l6]
-.L59:
-set Y,%l7
-ld2 [%l7],%f30
-set W,%l7
-ld2 [%l7],%f28
-fsubd %f30,%f28,%f30
-set One,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbue .L58; nop
-.L56:
-set U1,%l7
-set One,%l6
-ld2 [%l6],%f30
-set W,%l6
-ld2 [%l6],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l7]
-ld2 [%l7],%f30
-set U2,%l7
-set Radix,%l6
-ld2 [%l6],%f28
-fmuld %f28,%f30,%f28
-st2 %f28,[%l7]
-set .L61,%o0
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L62,%o0
-call printf; nop
-set E0,%l7
-set Radix,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-set E1,%l7
-set U1,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-set E9,%l7
-set U2,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-set E3,%l7
-set Precision,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-set X,%l7
-set Four,%l6
-ld2 [%l6],%f30
-set Three,%l6
-ld2 [%l6],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l7]
-set Third,%l6
-ld2 [%l7],%f30
-set One,%l5
-ld2 [%l5],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l6]
-set F6,%l5
-ld2 [%l6],%f30
-set Half,%l6
-ld2 [%l6],%f28
-fsubd %f28,%f30,%f28
-st2 %f28,[%l5]
-ld2 [%l5],%f28
-faddd %f28,%f28,%f28
-st2 %f28,[%l7]
-ld2 [%l7],%f28
-fsubd %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-st2 %f30,[%l7]
-set X,%l7
-ld2 [%l7],%f30
-set U2,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbuge .L63; nop
-set X,%l7
-set U2,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-.L63:
-.L65:
-set U2,%l7
-set X,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-set Y,%l5
-ld2 [%l7],%f30
-set Half,%l7
-ld2 [%l7],%f28
-fmuld %f28,%f30,%f28
-set ThirtyTwo,%l7
-ld2 [%l7],%f26
-fmuld %f26,%f30,%f26
-fmuld %f26,%f30,%f30
-faddd %f28,%f30,%f30
-st2 %f30,[%l5]
-set One,%l7
-ld2 [%l7],%f30
-ld2 [%l5],%f28
-faddd %f30,%f28,%f28
-st2 %f28,[%l5]
-ld2 [%l5],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l6]
-.L66:
-set X,%l7
-ld2 [%l7],%f30
-set U2,%l7
-ld2 [%l7],%f28
-fcmped %f28,%f30; nop; fbule .L68; nop
-set Zero,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbug .L65; nop
-.L68:
-set X,%l7
-set Two,%l6
-ld2 [%l6],%f30
-set Three,%l6
-ld2 [%l6],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l7]
-set F6,%l6
-set Half,%l5
-ld2 [%l5],%f30
-ld2 [%l7],%f28
-fsubd %f28,%f30,%f28
-st2 %f28,[%l6]
-set Third,%l5
-ld2 [%l6],%f28
-faddd %f28,%f28,%f26
-st2 %f26,[%l5]
-ld2 [%l5],%f26
-fsubd %f26,%f30,%f30
-st2 %f30,[%l7]
-ld2 [%l7],%f30
-faddd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-st2 %f30,[%l7]
-set X,%l7
-ld2 [%l7],%f30
-set U1,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbuge .L69; nop
-set X,%l7
-set U1,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-.L69:
-.L71:
-set U1,%l7
-set X,%l6
-ld2 [%l6],%f30
-st2 %f30,[%l7]
-set Y,%l5
-set Half,%l4
-ld2 [%l4],%f30
-ld2 [%l7],%f28
-fmuld %f30,%f28,%f26
-set ThirtyTwo,%l7
-ld2 [%l7],%f24
-fmuld %f24,%f28,%f24
-fmuld %f24,%f28,%f28
-faddd %f26,%f28,%f28
-st2 %f28,[%l5]
-ld2 [%l5],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l5]
-ld2 [%l5],%f28
-faddd %f30,%f28,%f28
-st2 %f28,[%l6]
-ld2 [%l6],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l5]
-ld2 [%l5],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l6]
-.L72:
-set X,%l7
-ld2 [%l7],%f30
-set U1,%l7
-ld2 [%l7],%f28
-fcmped %f28,%f30; nop; fbule .L74; nop
-set Zero,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbug .L71; nop
-.L74:
-set U1,%l7
-ld2 [%l7],%f30
-set E1,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbne .L75; nop
-set .L77,%o0
-call printf; nop
-ba .L76; nop
-.L75:
-set .L78,%o0
-set U1,%l7
-ld2 [%l7],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L76:
-set U1,%l7
-ld2 [%l7],%f30
-set W,%l7
-set One,%l6
-ld2 [%l6],%f28
-fdivd %f28,%f30,%f28
-st2 %f28,[%l7]
-set Half,%l7
-ld2 [%l7],%f28
-set F9,%l7
-fsubd %f28,%f30,%f26
-faddd %f26,%f28,%f28
-st2 %f28,[%l7]
-set U2,%l7
-ld2 [%l7],%f28
-fdivd %f28,%f30,%f30
-set .L79,%l7
-ld2 [%l7],%f28
-faddd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Radix,%l7
-st2 %f30,[%l7]
-set Radix,%l7
-ld2 [%l7],%f30
-set E0,%l7
-ld2 [%l7],%f28
-fcmped %f30,%f28; nop; fbne .L80; nop
-set .L82,%o0
-call printf; nop
-ba .L81; nop
-.L80:
-set .L83,%o0
-set Radix,%l7
-ld2 [%l7],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L81:
-set 2,%o0
-set Eight,%l6
-ld2 [%l6],%f30
-set Radix,%l6
-ld2 [%l6],%f28
-faddd %f30,%f30,%f30
-fcmped %f28,%f30; nop; fbug .L86; nop
-set 1,%l7
-ba .L87; nop
-.L86:
-mov %g0,%l7
-.L87:
-mov %l7,%o1
-set .L85,%o2
-call TstCond; nop
-set 3,%o0
-set Radix,%l5
-ld2 [%l5],%f30
-set Two,%l5
-ld2 [%l5],%f28
-fcmped %f30,%f28; nop; fbue .L93; nop
-set .L94,%l5
-ld2 [%l5],%f28
-fcmped %f30,%f28; nop; fbue .L93; nop
-set One,%l5
-ld2 [%l5],%f28
-fcmped %f30,%f28; nop; fbne .L90; nop
-.L93:
-set 1,%l6
-ba .L91; nop
-.L90:
-mov %g0,%l6
-.L91:
-mov %l6,%o1
-set .L89,%o2
-call TstCond; nop
-set Milestone,%l4
-set 20,%l3
-st %l3,[%l4]
-mov %g0,%o0
-set Half,%l4
-ld2 [%l4],%f30
-set F9,%l4
-ld2 [%l4],%f28
-fsubd %f28,%f30,%f28
-fcmped %f28,%f30; nop; fbuge .L97; nop
-set 1,%l5
-ba .L98; nop
-.L97:
-mov %g0,%l5
-.L98:
-mov %l5,%o1
-set .L96,%o2
-call TstCond; nop
-set X,%l3
-set F9,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set I,%l2
-set 1,%l1
-st %l1,[%l2]
-set Y,%l2
-set Half,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f28
-st2 %f28,[%l2]
-set Z,%l3
-ld2 [%l2],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l3]
-mov %g0,%o0
-set X,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L103; nop
-set Z,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L101; nop
-.L103:
-set 1,%l4
-ba .L102; nop
-.L101:
-mov %g0,%l4
-.L102:
-mov %l4,%o1
-set .L100,%o2
-call TstCond; nop
-set One,%l3
-ld2 [%l3],%f30
-set U2,%l3
-ld2 [%l3],%f28
-set X,%l3
-faddd %f30,%f28,%f26
-st2 %f26,[%l3]
-set I,%l3
-st %g0,[%l3]
-set Milestone,%l3
-set 25,%l2
-st %l2,[%l3]
-set BMinusU2,%l3
-set Radix,%l2
-ld2 [%l2],%f26
-fsubd %f26,%f30,%f24
-st2 %f24,[%l3]
-ld2 [%l3],%f24
-fsubd %f24,%f28,%f28
-faddd %f28,%f30,%f28
-st2 %f28,[%l3]
-fcmped %f26,%f30; nop; fbue .L104; nop
-set U1,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-std %f30,[%fp+-16]
-set Radix,%l3
-ld2 [%l3],%f28
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set X,%l3
-set TwoForty,%l2
-ld2 [%l2],%f28
-fnegs %f28,%f28; fmovs %f29,%f29
-ldd [%fp+-16],%f26
-fmuld %f28,%f26,%f28
-fdivd %f28,%f30,%f30
-st2 %f30,[%l3]
-set Half,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Y,%l3
-st2 %f30,[%l3]
-set X,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Four,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L106; nop
-set X,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L106:
-set Precision,%l3
-set X,%l2
-ld2 [%l2],%f30
-set TwoForty,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l3]
-set Half,%l2
-ld2 [%l2],%f30
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Y,%l3
-st2 %f30,[%l3]
-set Precision,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set TwoForty,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-set Half,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L108; nop
-set Precision,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L108:
-.L104:
-set Precision,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-16]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-16],%f28
-fcmped %f28,%f30; nop; fbne .L112; nop
-set Radix,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L110; nop
-.L112:
-set .L113,%o0
-call printf; nop
-set .L114,%o0
-call printf; nop
-.L110:
-set Radix,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L115; nop
-set .L117,%o0
-call printf; nop
-ba .L116; nop
-.L115:
-set .L118,%o0
-set Precision,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L116:
-set 1,%o0
-set Nine,%l3
-ld2 [%l3],%f30
-set U2,%l3
-ld2 [%l3],%f28
-fmuld %f28,%f30,%f28
-fmuld %f28,%f30,%f30
-set TwoForty,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L121; nop
-set 1,%l3
-st %l3,[%fp+-20]
-ba .L122; nop
-.L121:
-st %g0,[%fp+-20]
-.L122:
-ld [%fp+-20],%o1
-set .L120,%o2
-call TstCond; nop
-set Milestone,%l3
-set 30,%l2
-st %l2,[%l3]
-set Four,%l3
-ld2 [%l3],%f30
-set Three,%l3
-ld2 [%l3],%f28
-set One,%l3
-ld2 [%l3],%f26
-fdivd %f26,%f30,%f24
-fdivd %f30,%f28,%f30
-fsubd %f30,%f26,%f30
-fsubd %f30,%f24,%f30
-fmuld %f30,%f28,%f30
-fsubd %f30,%f24,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set X,%l3
-st2 %f30,[%l3]
-.L123:
-set Z2,%l3
-set X,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set One,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-set Half,%l3
-ld2 [%l3],%f26
-fmuld %f26,%f28,%f26
-set ThirtyTwo,%l3
-ld2 [%l3],%f24
-fmuld %f24,%f28,%f24
-fmuld %f24,%f28,%f28
-faddd %f26,%f28,%f28
-faddd %f30,%f28,%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l2]
-.L124:
-set X,%l3
-ld2 [%l3],%f30
-set Z2,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbule .L126; nop
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L123; nop
-.L126:
-set Three,%l3
-ld2 [%l3],%f30
-set Four,%l3
-ld2 [%l3],%f28
-fdivd %f30,%f28,%f26
-set Two,%l3
-ld2 [%l3],%f24
-fdivd %f24,%f30,%f24
-fsubd %f26,%f24,%f26
-fmuld %f26,%f30,%f30
-set One,%l3
-ld2 [%l3],%f26
-fdivd %f26,%f28,%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Z,%l3
-st2 %f30,[%l3]
-set Y,%l3
-st2 %f30,[%l3]
-set X,%l3
-st2 %f30,[%l3]
-.L127:
-set Z1,%l3
-set Z,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set One,%l1
-ld2 [%l1],%f30
-set Two,%l1
-ld2 [%l1],%f28
-fdivd %f30,%f28,%f30
-ld2 [%l3],%f28
-set Half,%l3
-ld2 [%l3],%f26
-fmuld %f26,%f28,%f26
-set ThirtyTwo,%l3
-ld2 [%l3],%f24
-fmuld %f24,%f28,%f24
-fmuld %f24,%f28,%f28
-faddd %f26,%f28,%f28
-fsubd %f30,%f28,%f28
-faddd %f28,%f30,%f28
-fsubd %f30,%f28,%f28
-faddd %f28,%f30,%f30
-st2 %f30,[%l2]
-.L128:
-set Z,%l3
-ld2 [%l3],%f30
-set Z1,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbule .L130; nop
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L127; nop
-.L130:
-.L131:
-.L134:
-set Y1,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Half,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f26
-set ThirtyTwo,%l3
-ld2 [%l3],%f24
-fmuld %f24,%f28,%f24
-fmuld %f24,%f28,%f28
-faddd %f26,%f28,%f28
-fsubd %f30,%f28,%f28
-faddd %f28,%f30,%f28
-fsubd %f30,%f28,%f28
-faddd %f28,%f30,%f30
-st2 %f30,[%l2]
-.L135:
-set Y,%l3
-ld2 [%l3],%f30
-set Y1,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbule .L137; nop
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L134; nop
-.L137:
-set X1,%l3
-set X,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set F9,%l3
-ld2 [%l3],%f28
-set Half,%l3
-ld2 [%l3],%f26
-fmuld %f26,%f30,%f26
-set ThirtyTwo,%l3
-ld2 [%l3],%f24
-fmuld %f24,%f30,%f24
-fmuld %f24,%f30,%f30
-faddd %f26,%f30,%f30
-fsubd %f30,%f28,%f30
-faddd %f30,%f28,%f30
-st2 %f30,[%l2]
-.L132:
-set X,%l3
-ld2 [%l3],%f30
-set X1,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbule .L138; nop
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L131; nop
-.L138:
-set X1,%l3
-ld2 [%l3],%f30
-set Y1,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L141; nop
-set Z1,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L139; nop
-.L141:
-set 1,%o0
-set .L142,%o1
-call BadCond; nop
-set .L143,%o0
-set X1,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Y1,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-set Z1,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*5+68]
-st %f31,[%sp+4*6+68]
-ld [%sp+4*5+68],%o5
-call printf; nop
-set .L144,%o0
-call printf; nop
-set .L145,%o0
-call printf; nop
-set .L146,%o0
-call notify; nop
-set U1,%l3
-ld2 [%l3],%f30
-set X1,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbue .L150; nop
-set Y1,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbue .L150; nop
-set Z1,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L140; nop
-.L150:
-set .L151,%o0
-call printf; nop
-ba .L140; nop
-.L139:
-set Z1,%l3
-ld2 [%l3],%f30
-set U1,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L154; nop
-set Z2,%l3
-ld2 [%l3],%f30
-set U2,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L152; nop
-.L154:
-set Z1,%l3
-ld2 [%l3],%f30
-set U1,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L157; nop
-set Z2,%l3
-ld2 [%l3],%f30
-set U2,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L155; nop
-.L157:
-mov %g0,%o0
-set .L158,%o1
-call BadCond; nop
-set .L159,%o0
-call notify; nop
-set .L160,%o0
-set U1,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Z1,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-set .L161,%o0
-set U2,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Z2,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-ba .L156; nop
-.L155:
-set Zero,%l3
-ld2 [%l3],%f30
-set Z1,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbule .L164; nop
-set Z2,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L162; nop
-.L164:
-set .L165,%o0
-set Radix,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L166,%o0
-call printf; nop
-set .L167,%o0
-set Z1,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Z2,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-set .L168,%o0
-call notify; nop
-.L162:
-set Z1,%l3
-ld2 [%l3],%f30
-set Z2,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L171; nop
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L169; nop
-.L171:
-set X,%l3
-set Z1,%l2
-ld2 [%l2],%f30
-set U1,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l3]
-set Y,%l2
-set Z2,%l1
-ld2 [%l1],%f30
-set U2,%l1
-ld2 [%l1],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l2]
-ld2 [%l2],%f30
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L172; nop
-set X,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L172:
-set X,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Q,%l3
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%l3]
-set .L174,%o0
-call printf; nop
-set Radix,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set .L175,%o0
-set Q,%l3
-ld2 [%l3],%f28
-fdivd %f28,%f30,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L94,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set .L176,%o0
-set Q,%l3
-ld2 [%l3],%f28
-fdivd %f28,%f30,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L169:
-set .L151,%o0
-call printf; nop
-.L156:
-.L152:
-.L140:
-call Pause; nop
-set Milestone,%l3
-set 35,%l2
-st %l2,[%l3]
-set Radix,%l3
-ld2 [%l3],%f30
-set Two,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L177; nop
-set X,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-set W,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f30,%f30
-fdivd %f28,%f30,%f30
-st2 %f30,[%l3]
-set Y,%l2
-ld2 [%l3],%f30
-set One,%l1
-ld2 [%l1],%f28
-faddd %f30,%f28,%f28
-st2 %f28,[%l2]
-set Z,%l1
-ld2 [%l2],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l1]
-set T,%l2
-ld2 [%l1],%f30
-set U2,%l1
-ld2 [%l1],%f28
-faddd %f30,%f28,%f26
-st2 %f26,[%l2]
-ld2 [%l2],%f26
-fsubd %f26,%f30,%f30
-st2 %f30,[%l3]
-mov %g0,%o0
-ld2 [%l3],%f30
-fcmped %f30,%f28; nop; fbne .L181; nop
-set 1,%l3
-st %l3,[%fp+-24]
-ba .L182; nop
-.L181:
-st %g0,[%fp+-24]
-.L182:
-ld [%fp+-24],%o1
-set .L180,%o2
-call TstCond; nop
-set X,%l3
-ld2 [%l3],%f30
-set U2,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L183; nop
-set .L185,%o0
-call printf; nop
-.L183:
-.L177:
-set .L186,%o0
-call printf; nop
-set Y,%l3
-set F9,%l2
-ld2 [%l2],%f30
-set One,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f26
-st2 %f26,[%l3]
-set Z,%l2
-fmuld %f28,%f30,%f26
-st2 %f26,[%l2]
-set X,%l1
-set Half,%l0
-ld2 [%l0],%f26
-fsubd %f30,%f26,%f30
-st2 %f30,[%l1]
-ld2 [%l1],%f30
-ld2 [%l3],%f24
-fsubd %f24,%f26,%f24
-fsubd %f24,%f30,%f24
-st2 %f24,[%l3]
-ld2 [%l2],%f24
-fsubd %f24,%f26,%f26
-fsubd %f26,%f30,%f30
-st2 %f30,[%l2]
-set U2,%l3
-ld2 [%l3],%f30
-faddd %f28,%f30,%f26
-st2 %f26,[%l1]
-set T,%l3
-ld2 [%l1],%f26
-set Radix,%l2
-ld2 [%l2],%f24
-fmuld %f26,%f24,%f22
-st2 %f22,[%l3]
-set R,%l2
-fmuld %f24,%f26,%f26
-st2 %f26,[%l2]
-ld2 [%l3],%f26
-fsubd %f26,%f24,%f26
-st2 %f26,[%l1]
-fmuld %f24,%f30,%f30
-ld2 [%l1],%f26
-fsubd %f26,%f30,%f26
-st2 %f26,[%l1]
-ld2 [%l2],%f26
-fsubd %f26,%f24,%f26
-st2 %f26,[%l3]
-ld2 [%l3],%f26
-fsubd %f26,%f30,%f30
-st2 %f30,[%l3]
-fsubd %f24,%f28,%f30
-ld2 [%l1],%f28
-fmuld %f28,%f30,%f28
-st2 %f28,[%l1]
-ld2 [%l3],%f28
-fmuld %f28,%f30,%f30
-st2 %f30,[%l3]
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L187; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L187; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L187; nop
-set T,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L187; nop
-set GMult,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L188; nop
-.L187:
-mov %g0,%l3
-set GMult,%l2
-st %l3,[%l2]
-set 1,%o0
-mov %l3,%o1
-set .L189,%o2
-call TstCond; nop
-.L188:
-set Z,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set X,%l2
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-faddd %f28,%f30,%f28
-st2 %f28,[%l2]
-ld2 [%l2],%f28
-faddd %f28,%f30,%f30
-fmuld %f28,%f28,%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set U2,%l3
-ld2 [%l3],%f28
-set Y,%l3
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-set X,%l3
-set One,%l2
-ld2 [%l2],%f30
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-fsubd %f30,%f28,%f28
-fmuld %f30,%f30,%f30
-fsubd %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Z,%l3
-set U1,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-mov %g0,%o0
-set Zero,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L192; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L192; nop
-set 1,%l3
-st %l3,[%fp+-24]
-ba .L193; nop
-.L192:
-st %g0,[%fp+-24]
-.L193:
-ld [%fp+-24],%o1
-set .L191,%o2
-call TstCond; nop
-set Y,%l3
-set One,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f26
-st2 %f26,[%l3]
-set X,%l2
-faddd %f30,%f28,%f28
-st2 %f28,[%l2]
-set Z,%l1
-ld2 [%l3],%f28
-fdivd %f30,%f28,%f28
-st2 %f28,[%l1]
-ld2 [%l1],%f28
-ld2 [%l2],%f26
-fsubd %f28,%f26,%f28
-st2 %f28,[%l3]
-set Three,%l3
-ld2 [%l3],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l2]
-set Nine,%l3
-ld2 [%l3],%f30
-fdivd %f28,%f30,%f28
-st2 %f28,[%l1]
-ld2 [%l1],%f28
-ld2 [%l2],%f26
-fsubd %f26,%f28,%f26
-st2 %f26,[%l2]
-set T,%l3
-set TwentySeven,%l2
-ld2 [%l2],%f26
-fdivd %f30,%f26,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-fsubd %f28,%f30,%f30
-st2 %f30,[%l1]
-set 2,%o0
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L196; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L196; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L196; nop
-set 1,%l3
-st %l3,[%fp+-28]
-ba .L197; nop
-.L196:
-st %g0,[%fp+-28]
-.L197:
-ld [%fp+-28],%o1
-set .L195,%o2
-call TstCond; nop
-set Y,%l3
-set F9,%l2
-ld2 [%l2],%f30
-set One,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f26
-st2 %f26,[%l3]
-set X,%l2
-set Half,%l1
-ld2 [%l1],%f26
-fsubd %f30,%f26,%f30
-st2 %f30,[%l2]
-ld2 [%l3],%f30
-fsubd %f30,%f26,%f30
-ld2 [%l2],%f26
-fsubd %f30,%f26,%f30
-st2 %f30,[%l3]
-set U2,%l3
-ld2 [%l3],%f30
-faddd %f28,%f30,%f30
-st2 %f30,[%l2]
-set T,%l3
-ld2 [%l2],%f30
-fdivd %f30,%f28,%f28
-st2 %f28,[%l3]
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l2]
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L198; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L198; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L198; nop
-set GDiv,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L199; nop
-.L198:
-mov %g0,%l3
-set GDiv,%l2
-st %l3,[%l2]
-set 1,%o0
-mov %l3,%o1
-set .L200,%o2
-call TstCond; nop
-.L199:
-set X,%l3
-set One,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l3]
-set Y,%l2
-set Half,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l2]
-set 1,%o0
-ld2 [%l2],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L203; nop
-set 1,%l3
-st %l3,[%fp+-32]
-ba .L204; nop
-.L203:
-st %g0,[%fp+-32]
-.L204:
-ld [%fp+-32],%o1
-set .L202,%o2
-call TstCond; nop
-set X,%l3
-set One,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f26
-st2 %f26,[%l3]
-set Y,%l2
-set Radix,%l1
-ld2 [%l1],%f26
-fmuld %f26,%f28,%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l2]
-set Z,%l1
-ld2 [%l3],%f30
-fmuld %f30,%f26,%f28
-st2 %f28,[%l1]
-set T,%l0
-ld2 [%l2],%f28
-fmuld %f28,%f26,%f24
-st2 %f24,[%l0]
-set R,%o5
-ld2 [%l1],%f24
-fdivd %f24,%f26,%f24
-st2 %f24,[%o5]
-set StickyBit,%l1
-ld2 [%l0],%f24
-fdivd %f24,%f26,%f26
-st2 %f26,[%l1]
-ld2 [%o5],%f26
-fsubd %f26,%f30,%f30
-st2 %f30,[%l3]
-ld2 [%l1],%f30
-fsubd %f30,%f28,%f30
-st2 %f30,[%l2]
-mov %g0,%o0
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L207; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L207; nop
-set 1,%l3
-st %l3,[%fp+-36]
-ba .L208; nop
-.L207:
-st %g0,[%fp+-36]
-.L208:
-ld [%fp+-36],%o1
-set .L206,%o2
-call TstCond; nop
-set Y,%l3
-set One,%l2
-ld2 [%l2],%f30
-set U1,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l3]
-set X,%l2
-set F9,%l1
-ld2 [%l1],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l2]
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-set T,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l3]
-set Z,%l2
-set BMinusU2,%l1
-ld2 [%l1],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l2]
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-set U1,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L209; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L209; nop
-set U2,%l3
-ld2 [%l3],%f30
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L209; nop
-set T,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L209; nop
-set GAddSub,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L210; nop
-.L209:
-mov %g0,%l3
-set GAddSub,%l2
-st %l3,[%l2]
-set 1,%o0
-mov %l3,%o1
-set .L211,%o2
-call TstCond; nop
-.L210:
-set F9,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L212; nop
-fsubd %f30,%f28,%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L212; nop
-set 1,%o0
-set .L214,%o1
-call BadCond; nop
-set .L215,%o0
-call printf; nop
-set .L216,%o0
-call printf; nop
-set .L217,%o0
-call printf; nop
-.L212:
-set GMult,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L218; nop
-set GDiv,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L218; nop
-set GAddSub,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L218; nop
-set .L220,%o0
-call printf; nop
-.L218:
-set Milestone,%l3
-set 40,%l2
-st %l2,[%l3]
-call Pause; nop
-set .L221,%o0
-call printf; nop
-set RMult,%l2
-st %g0,[%l2]
-set RDiv,%l2
-st %g0,[%l2]
-set RAddSub,%l2
-st %g0,[%l2]
-set Two,%l2
-ld2 [%l2],%f30
-set RadixD2,%l2
-set Radix,%l1
-ld2 [%l1],%f28
-fdivd %f28,%f30,%f28
-st2 %f28,[%l2]
-set A1,%l2
-st2 %f30,[%l2]
-set Done,%l2
-st %g0,[%l2]
-.L222:
-set AInvrse,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L225:
-set AInvrse,%l3
-ld2 [%l3],%f30
-set X,%l2
-st2 %f30,[%l2]
-set A1,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l3]
-.L226:
-set AInvrse,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set AInvrse,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L225; nop
-set X,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L231; nop
-set A1,%l3
-ld2 [%l3],%f30
-set Three,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L229; nop
-.L231:
-set 1,%l3
-st %l3,[%fp+-40]
-ba .L230; nop
-.L229:
-st %g0,[%fp+-40]
-.L230:
-set Done,%l3
-ld [%fp+-40],%l2
-st %l2,[%l3]
-set Done,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L232; nop
-set A1,%l3
-set Nine,%l2
-ld2 [%l2],%f30
-set One,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-.L232:
-.L223:
-set Done,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L222; nop
-set X,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L234; nop
-set A1,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L234:
-set AInvrse,%l3
-set A1,%l2
-ld2 [%l2],%f30
-set One,%l2
-ld2 [%l2],%f28
-fdivd %f28,%f30,%f28
-st2 %f28,[%l3]
-set X,%l2
-st2 %f30,[%l2]
-set Y,%l2
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-set Done,%l3
-st %g0,[%l3]
-.L236:
-set Z,%l3
-set Half,%l2
-ld2 [%l2],%f30
-set X,%l2
-ld2 [%l2],%f28
-set Y,%l2
-ld2 [%l2],%f26
-fmuld %f28,%f26,%f28
-fsubd %f28,%f30,%f28
-st2 %f28,[%l3]
-mov %g0,%o0
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L241; nop
-set 1,%l3
-st %l3,[%fp+-40]
-ba .L242; nop
-.L241:
-st %g0,[%fp+-40]
-.L242:
-ld [%fp+-40],%o1
-set .L240,%o2
-call TstCond; nop
-set X,%l3
-ld2 [%l3],%f30
-set Radix,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L244; nop
-set 1,%l3
-st %l3,[%fp+-44]
-ba .L245; nop
-.L244:
-st %g0,[%fp+-44]
-.L245:
-set Done,%l3
-ld [%fp+-44],%l2
-st %l2,[%l3]
-set X,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Y,%l2
-set One,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l2]
-.L237:
-set Done,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L236; nop
-set Y2,%l3
-set One,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f26
-st2 %f26,[%l3]
-set Y1,%l2
-fsubd %f30,%f28,%f30
-st2 %f30,[%l2]
-set X,%l1
-set OneAndHalf,%l0
-ld2 [%l0],%f30
-fsubd %f30,%f28,%f26
-st2 %f26,[%l1]
-set Y,%l0
-faddd %f30,%f28,%f26
-st2 %f26,[%l0]
-set Z,%o5
-ld2 [%l1],%f26
-ld2 [%l3],%f24
-fsubd %f26,%f28,%f22
-fmuld %f22,%f24,%f22
-st2 %f22,[%o5]
-set T,%l3
-ld2 [%l0],%f22
-ld2 [%l2],%f20
-fmuld %f22,%f20,%f18
-st2 %f18,[%l3]
-ld2 [%o5],%f18
-fsubd %f18,%f26,%f18
-st2 %f18,[%o5]
-ld2 [%l3],%f18
-fsubd %f18,%f26,%f18
-st2 %f18,[%l3]
-fmuld %f26,%f24,%f26
-st2 %f26,[%l1]
-faddd %f22,%f28,%f28
-fmuld %f28,%f20,%f28
-st2 %f28,[%l0]
-ld2 [%l1],%f28
-fsubd %f28,%f30,%f28
-st2 %f28,[%l1]
-ld2 [%l0],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l0]
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L246; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L246; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L246; nop
-set T,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L246; nop
-set X,%l3
-set OneAndHalf,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f26
-set Y2,%l2
-ld2 [%l2],%f24
-fmuld %f26,%f24,%f22
-st2 %f22,[%l3]
-set Y,%l2
-fsubd %f30,%f28,%f30
-fsubd %f30,%f28,%f22
-st2 %f22,[%l2]
-set Z,%l1
-faddd %f26,%f28,%f26
-st2 %f26,[%l1]
-set T,%l0
-set Y1,%o5
-ld2 [%o5],%f26
-fmuld %f30,%f26,%f30
-st2 %f30,[%l0]
-ld2 [%l1],%f30
-faddd %f30,%f28,%f22
-ld2 [%l3],%f20
-fsubd %f20,%f22,%f20
-st2 %f20,[%l3]
-set StickyBit,%l3
-ld2 [%l2],%f20
-fmuld %f20,%f26,%f18
-st2 %f18,[%l3]
-set S,%o4
-fmuld %f30,%f24,%f30
-st2 %f30,[%o4]
-ld2 [%l0],%f30
-fsubd %f30,%f20,%f30
-st2 %f30,[%l0]
-fsubd %f28,%f20,%f30
-ld2 [%l3],%f20
-faddd %f30,%f20,%f30
-st2 %f30,[%l2]
-ld2 [%o4],%f30
-faddd %f22,%f28,%f22
-fsubd %f30,%f22,%f30
-st2 %f30,[%l1]
-faddd %f24,%f28,%f30
-fmuld %f30,%f26,%f30
-st2 %f30,[%l3]
-fmuld %f24,%f26,%f30
-st2 %f30,[%o5]
-ld2 [%l3],%f30
-fsubd %f30,%f24,%f30
-st2 %f30,[%l3]
-ld2 [%o5],%f30
-set Half,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%o5]
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L248; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L248; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L248; nop
-set T,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L248; nop
-set StickyBit,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L248; nop
-set Y1,%l3
-ld2 [%l3],%f30
-set Half,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L248; nop
-set RMult,%l3
-set 1,%l2
-st %l2,[%l3]
-set .L250,%o0
-call printf; nop
-ba .L249; nop
-.L248:
-set U2,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-set X,%l3
-ld2 [%l3],%f26
-faddd %f26,%f30,%f26
-fcmped %f26,%f28; nop; fbne .L251; nop
-set Y,%l3
-ld2 [%l3],%f26
-fcmped %f26,%f28; nop; fbuge .L251; nop
-set Z,%l3
-ld2 [%l3],%f26
-faddd %f26,%f30,%f26
-fcmped %f26,%f28; nop; fbne .L251; nop
-set T,%l3
-ld2 [%l3],%f26
-fcmped %f26,%f28; nop; fbuge .L251; nop
-set StickyBit,%l3
-ld2 [%l3],%f26
-faddd %f26,%f30,%f30
-fcmped %f30,%f28; nop; fbne .L251; nop
-set Y1,%l3
-ld2 [%l3],%f30
-set Half,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L251; nop
-set RMult,%l3
-set 2,%l2
-st %l2,[%l3]
-set .L253,%o0
-call printf; nop
-ba .L252; nop
-.L251:
-set .L254,%o0
-call printf; nop
-.L252:
-.L249:
-set RMult,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L247; nop
-set GMult,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L247; nop
-set .L257,%o0
-call notify; nop
-ba .L247; nop
-.L246:
-set .L254,%o0
-call printf; nop
-.L247:
-set Milestone,%l3
-set 45,%l2
-st %l2,[%l3]
-set Y2,%l3
-set One,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f26
-st2 %f26,[%l3]
-set Y1,%l2
-fsubd %f30,%f28,%f30
-st2 %f30,[%l2]
-set Z,%l1
-set OneAndHalf,%l0
-ld2 [%l0],%f30
-faddd %f30,%f28,%f26
-faddd %f26,%f28,%f24
-st2 %f24,[%l1]
-set X,%l0
-ld2 [%l1],%f24
-ld2 [%l3],%f22
-fdivd %f24,%f22,%f20
-st2 %f20,[%l0]
-set T,%l3
-fsubd %f30,%f28,%f20
-fsubd %f20,%f28,%f20
-st2 %f20,[%l3]
-set Y,%o5
-ld2 [%l3],%f20
-ld2 [%l2],%f18
-fsubd %f20,%f28,%f16
-fdivd %f16,%f18,%f16
-st2 %f16,[%o5]
-faddd %f24,%f28,%f24
-fdivd %f24,%f22,%f24
-st2 %f24,[%l1]
-ld2 [%l0],%f24
-fsubd %f24,%f30,%f24
-st2 %f24,[%l0]
-ld2 [%o5],%f24
-fsubd %f24,%f20,%f24
-st2 %f24,[%o5]
-fdivd %f20,%f18,%f24
-st2 %f24,[%l3]
-ld2 [%l1],%f24
-fsubd %f24,%f26,%f26
-st2 %f26,[%l1]
-fsubd %f28,%f30,%f30
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L258; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L258; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L258; nop
-set T,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L258; nop
-set X,%l3
-set OneAndHalf,%l2
-ld2 [%l2],%f30
-set Y2,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f26
-st2 %f26,[%l3]
-set Y,%l1
-set U2,%l0
-ld2 [%l0],%f26
-fsubd %f30,%f26,%f24
-st2 %f24,[%l1]
-set Z,%l0
-faddd %f30,%f26,%f24
-st2 %f24,[%l0]
-ld2 [%l1],%f24
-ld2 [%l3],%f22
-fsubd %f22,%f24,%f22
-st2 %f22,[%l3]
-set T,%l3
-set Y1,%o5
-ld2 [%o5],%f22
-fdivd %f30,%f22,%f20
-st2 %f20,[%l3]
-fdivd %f24,%f22,%f24
-st2 %f24,[%l1]
-ld2 [%l0],%f24
-ld2 [%l3],%f22
-faddd %f24,%f26,%f20
-fsubd %f22,%f20,%f22
-st2 %f22,[%l3]
-ld2 [%l1],%f22
-fsubd %f22,%f24,%f22
-st2 %f22,[%l1]
-fdivd %f24,%f28,%f24
-st2 %f24,[%l0]
-faddd %f28,%f26,%f26
-fdivd %f26,%f28,%f26
-st2 %f26,[%o5]
-ld2 [%l0],%f26
-fsubd %f26,%f30,%f30
-st2 %f30,[%l0]
-ld2 [%o5],%f30
-fsubd %f30,%f28,%f30
-st2 %f30,[%l2]
-set F9,%l3
-ld2 [%l3],%f30
-set U1,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f28
-fdivd %f28,%f30,%f30
-st2 %f30,[%o5]
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L260; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L260; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L260; nop
-set T,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L260; nop
-set Y2,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L260; nop
-fcmped %f28,%f30; nop; fbne .L260; nop
-set Half,%l3
-ld2 [%l3],%f30
-set Y1,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f28
-set F9,%l3
-ld2 [%l3],%f26
-fsubd %f26,%f30,%f30
-fcmped %f28,%f30; nop; fbne .L260; nop
-set RDiv,%l3
-set 1,%l2
-st %l2,[%l3]
-set .L262,%o0
-call printf; nop
-set GDiv,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L261; nop
-set .L265,%o0
-call notify; nop
-ba .L261; nop
-.L260:
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbuge .L266; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbuge .L266; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbuge .L266; nop
-set T,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbuge .L266; nop
-set Y2,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbuge .L266; nop
-set Half,%l3
-ld2 [%l3],%f30
-set Y1,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f28
-set F9,%l3
-ld2 [%l3],%f26
-fsubd %f26,%f30,%f30
-fcmped %f28,%f30; nop; fbuge .L266; nop
-set RDiv,%l3
-set 2,%l2
-st %l2,[%l3]
-set .L268,%o0
-call printf; nop
-.L266:
-.L261:
-.L258:
-set RDiv,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L269; nop
-set .L271,%o0
-call printf; nop
-.L269:
-set BInvrse,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-set One,%l2
-ld2 [%l2],%f28
-fdivd %f28,%f30,%f28
-st2 %f28,[%l3]
-mov %g0,%o0
-set Half,%l2
-ld2 [%l2],%f28
-ld2 [%l3],%f26
-fmuld %f26,%f30,%f30
-fsubd %f30,%f28,%f30
-fcmped %f30,%f28; nop; fbne .L274; nop
-set 1,%l3
-st %l3,[%fp+-40]
-ba .L275; nop
-.L274:
-st %g0,[%fp+-40]
-.L275:
-ld [%fp+-40],%o1
-set .L273,%o2
-call TstCond; nop
-set Milestone,%l3
-set 50,%l2
-st %l2,[%l3]
-mov %g0,%o0
-set Half,%l3
-ld2 [%l3],%f30
-set F9,%l3
-ld2 [%l3],%f28
-set U1,%l3
-ld2 [%l3],%f26
-faddd %f28,%f26,%f28
-fsubd %f28,%f30,%f28
-fcmped %f28,%f30; nop; fbne .L278; nop
-set One,%l3
-ld2 [%l3],%f30
-set BMinusU2,%l3
-ld2 [%l3],%f28
-set U2,%l3
-ld2 [%l3],%f26
-faddd %f28,%f26,%f28
-fsubd %f28,%f30,%f28
-set Radix,%l3
-ld2 [%l3],%f26
-fsubd %f26,%f30,%f30
-fcmped %f28,%f30; nop; fbne .L278; nop
-set 1,%l3
-st %l3,[%fp+-44]
-ba .L279; nop
-.L278:
-st %g0,[%fp+-44]
-.L279:
-ld [%fp+-44],%o1
-set .L277,%o2
-call TstCond; nop
-set X,%l3
-set One,%l2
-ld2 [%l2],%f30
-set U1,%l2
-ld2 [%l2],%f28
-fmuld %f28,%f28,%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l3]
-set Y,%l2
-set U2,%l1
-ld2 [%l1],%f28
-fsubd %f30,%f28,%f26
-fmuld %f28,%f26,%f28
-faddd %f30,%f28,%f28
-st2 %f28,[%l2]
-set Z,%l1
-set Half,%l0
-ld2 [%l0],%f28
-set F9,%l0
-ld2 [%l0],%f26
-fsubd %f26,%f28,%f26
-st2 %f26,[%l1]
-ld2 [%l3],%f26
-fsubd %f26,%f28,%f28
-ld2 [%l1],%f26
-fsubd %f28,%f26,%f28
-st2 %f28,[%l3]
-ld2 [%l2],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l2]
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L280; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L280; nop
-set RAddSub,%l3
-set 2,%l2
-st %l2,[%l3]
-set .L282,%o0
-call printf; nop
-.L280:
-set GAddSub,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L283; nop
-set X,%l3
-set Half,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f26
-fmuld %f26,%f28,%f26
-st2 %f26,[%l3]
-set Y,%l2
-fsubd %f30,%f28,%f30
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-set One,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f26
-faddd %f30,%f26,%f26
-st2 %f26,[%l3]
-ld2 [%l2],%f26
-faddd %f30,%f26,%f26
-st2 %f26,[%l2]
-faddd %f30,%f28,%f28
-ld2 [%l3],%f26
-fsubd %f28,%f26,%f28
-st2 %f28,[%l3]
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l2]
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L285; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L285; nop
-set X,%l3
-set Half,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-set U1,%l2
-ld2 [%l2],%f26
-faddd %f30,%f28,%f24
-fmuld %f24,%f26,%f24
-st2 %f24,[%l3]
-set Y,%l2
-fsubd %f30,%f28,%f30
-fmuld %f30,%f26,%f30
-st2 %f30,[%l2]
-set One,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l3]
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l2]
-set F9,%l1
-ld2 [%l1],%f28
-ld2 [%l3],%f26
-fsubd %f28,%f26,%f28
-st2 %f28,[%l3]
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l2]
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L287; nop
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L287; nop
-set RAddSub,%l3
-set 1,%l2
-st %l2,[%l3]
-set .L289,%o0
-call printf; nop
-set GAddSub,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L284; nop
-set .L292,%o0
-call notify; nop
-ba .L284; nop
-.L287:
-set .L293,%o0
-call printf; nop
-ba .L284; nop
-.L285:
-set .L293,%o0
-call printf; nop
-ba .L284; nop
-.L283:
-set .L293,%o0
-call printf; nop
-.L284:
-set One,%l3
-ld2 [%l3],%f30
-set S,%l3
-st2 %f30,[%l3]
-set X,%l3
-set Half,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f26
-fmuld %f28,%f26,%f26
-faddd %f30,%f26,%f26
-st2 %f26,[%l3]
-set Y,%l2
-set U2,%l1
-ld2 [%l1],%f26
-faddd %f30,%f26,%f30
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-set Z,%l1
-ld2 [%l3],%f30
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f26
-st2 %f26,[%l1]
-set T,%l3
-fsubd %f28,%f30,%f30
-st2 %f30,[%l3]
-set StickyBit,%l2
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l2]
-ld2 [%l2],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L294; nop
-set S,%l3
-set Zero,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set 3,%o0
-set .L296,%o1
-call BadCond; nop
-.L294:
-set StickyBit,%l3
-set Zero,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set GMult,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L297; nop
-set GDiv,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L297; nop
-set GAddSub,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L297; nop
-set RMult,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L297; nop
-set RDiv,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L297; nop
-set RAddSub,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L297; nop
-set RadixD2,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set RadixD2,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L297; nop
-set .L299,%o0
-call printf; nop
-set X,%l3
-set Half,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-set U1,%l2
-ld2 [%l2],%f26
-faddd %f30,%f26,%f26
-fmuld %f26,%f28,%f26
-st2 %f26,[%l3]
-set Y,%l2
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-set One,%l1
-ld2 [%l1],%f30
-set Z,%l1
-ld2 [%l2],%f28
-faddd %f30,%f28,%f28
-st2 %f28,[%l1]
-set T,%l2
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l2]
-set One,%l3
-ld2 [%l3],%f30
-set Z,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f28
-set Zero,%l3
-ld2 [%l3],%f26
-fcmped %f28,%f26; nop; fbug .L300; nop
-set T,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f30
-set U2,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L300; nop
-set Z,%l3
-set Y,%l2
-set T,%l1
-ld2 [%l1],%f30
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l2]
-set T,%l3
-ld2 [%l3],%f30
-set Z,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f28
-set U2,%l3
-ld2 [%l3],%f26
-fcmped %f28,%f26; nop; fbul .L302; nop
-set Y,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L302; nop
-set X,%l3
-set Half,%l2
-ld2 [%l2],%f30
-set U1,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f26
-fmuld %f26,%f28,%f26
-st2 %f26,[%l3]
-set Y,%l2
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-set One,%l1
-ld2 [%l1],%f30
-set Z,%l1
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l1]
-set T,%l2
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l2]
-set Zero,%l3
-ld2 [%l3],%f30
-set Z,%l3
-ld2 [%l3],%f28
-set One,%l3
-ld2 [%l3],%f26
-fsubd %f28,%f26,%f28
-fcmped %f28,%f30; nop; fbne .L304; nop
-set T,%l3
-ld2 [%l3],%f28
-set F9,%l3
-ld2 [%l3],%f26
-fsubd %f28,%f26,%f28
-fcmped %f28,%f30; nop; fbne .L304; nop
-set Z,%l3
-set U1,%l2
-ld2 [%l2],%f30
-set Half,%l2
-ld2 [%l2],%f28
-fsubd %f28,%f30,%f28
-fmuld %f28,%f30,%f30
-st2 %f30,[%l3]
-set F9,%l2
-ld2 [%l2],%f30
-set T,%l2
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l2]
-set Q,%l3
-set Y,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-set F9,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-set T,%l3
-ld2 [%l3],%f26
-fsubd %f26,%f30,%f26
-fcmped %f26,%f28; nop; fbne .L306; nop
-set U1,%l3
-ld2 [%l3],%f26
-fsubd %f30,%f26,%f30
-set Q,%l3
-ld2 [%l3],%f26
-fsubd %f30,%f26,%f30
-fcmped %f30,%f28; nop; fbne .L306; nop
-set Z,%l3
-set One,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-set OneAndHalf,%l2
-ld2 [%l2],%f26
-faddd %f30,%f28,%f24
-fmuld %f24,%f26,%f24
-st2 %f24,[%l3]
-set T,%l2
-faddd %f26,%f28,%f26
-ld2 [%l3],%f24
-fsubd %f26,%f24,%f26
-faddd %f26,%f28,%f26
-st2 %f26,[%l2]
-set X,%l2
-set Radix,%l1
-ld2 [%l1],%f26
-set Half,%l1
-ld2 [%l1],%f24
-fdivd %f24,%f26,%f24
-faddd %f30,%f24,%f24
-st2 %f24,[%l2]
-set Y,%l1
-fmuld %f26,%f28,%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l1]
-ld2 [%l2],%f30
-ld2 [%l1],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set Zero,%l3
-ld2 [%l3],%f30
-set T,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L308; nop
-set X,%l3
-ld2 [%l3],%f28
-set Radix,%l3
-ld2 [%l3],%f26
-set U2,%l3
-ld2 [%l3],%f24
-fmuld %f26,%f24,%f26
-faddd %f28,%f26,%f28
-set Z,%l3
-ld2 [%l3],%f26
-fsubd %f28,%f26,%f28
-fcmped %f28,%f30; nop; fbne .L308; nop
-set Radix,%l3
-ld2 [%l3],%f30
-set Two,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L310; nop
-set X,%l3
-set Two,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f28
-st2 %f28,[%l3]
-set Y,%l2
-ld2 [%l3],%f28
-fdivd %f28,%f30,%f30
-st2 %f30,[%l2]
-ld2 [%l2],%f30
-set One,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L311; nop
-set StickyBit,%l3
-set S,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L311; nop
-.L310:
-set StickyBit,%l3
-set S,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L311:
-.L308:
-.L306:
-.L304:
-.L302:
-.L300:
-.L297:
-set StickyBit,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L314; nop
-set .L316,%o0
-call printf; nop
-ba .L315; nop
-.L314:
-set .L317,%o0
-call printf; nop
-.L315:
-set 3,%o0
-set GMult,%l2
-ld [%l2],%l2
-cmp %l2,%g0; be .L320; nop
-set GDiv,%l2
-ld [%l2],%l2
-cmp %l2,%g0; be .L320; nop
-set GAddSub,%l2
-ld [%l2],%l2
-cmp %l2,%g0; be .L320; nop
-set RMult,%l2
-ld [%l2],%l2
-cmp %l2,%g0; be .L320; nop
-set RDiv,%l2
-ld [%l2],%l2
-cmp %l2,%g0; be .L320; nop
-set RAddSub,%l2
-ld [%l2],%l2
-cmp %l2,%g0; be .L320; nop
-set 1,%l3
-st %l3,[%fp+-48]
-ba .L321; nop
-.L320:
-st %g0,[%fp+-48]
-.L321:
-ld [%fp+-48],%o1
-set .L319,%o2
-call TstCond; nop
-set Milestone,%l3
-set 60,%l2
-st %l2,[%l3]
-set .L45,%o0
-call printf; nop
-set .L322,%o0
-call printf; nop
-set .L323,%o0
-set NoTrials,%l3
-ld [%l3],%o1
-call printf; nop
-set .L324,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Random9,%l3
-st2 %f30,[%l3]
-set Random1,%l3
-set Third,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set I,%l3
-set 1,%l2
-st %l2,[%l3]
-.L325:
-call Random; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set X,%l3
-st2 %f30,[%l3]
-call Random; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Y,%l3
-st2 %f30,[%l3]
-set Z9,%l3
-set Y,%l2
-ld2 [%l2],%f30
-set X,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f26
-st2 %f26,[%l3]
-set Z,%l2
-fmuld %f28,%f30,%f30
-st2 %f30,[%l2]
-ld2 [%l2],%f30
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-set I,%l3
-ld [%l3],%l2
-add %l2,1,%l2
-st %l2,[%l3]
-.L326:
-set I,%l3
-ld [%l3],%l3
-set NoTrials,%l2
-ld [%l2],%l2
-cmp %l3,%l2; bg .L328; nop
-set Z9,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L325; nop
-.L328:
-set I,%l3
-ld [%l3],%l3
-set NoTrials,%l2
-ld [%l2],%l2
-cmp %l3,%l2; bne .L329; nop
-set Random1,%l3
-set One,%l2
-ld2 [%l2],%f30
-set Half,%l2
-ld2 [%l2],%f28
-set Three,%l2
-ld2 [%l2],%f26
-fdivd %f28,%f26,%f28
-faddd %f30,%f28,%f28
-st2 %f28,[%l3]
-set Random2,%l2
-set U2,%l1
-ld2 [%l1],%f26
-set U1,%l1
-ld2 [%l1],%f24
-faddd %f26,%f24,%f26
-faddd %f26,%f30,%f30
-st2 %f30,[%l2]
-ld2 [%l3],%f26
-ld2 [%l2],%f24
-set Z,%l3
-fmuld %f26,%f24,%f22
-st2 %f22,[%l3]
-set Y,%l3
-fmuld %f24,%f26,%f26
-st2 %f26,[%l3]
-fmuld %f28,%f30,%f30
-set Z9,%l3
-fsubd %f30,%f30,%f30
-st2 %f30,[%l3]
-.L329:
-set I,%l3
-ld [%l3],%l3
-set NoTrials,%l2
-ld [%l2],%l2
-cmp %l3,%l2; be .L331; nop
-set Z9,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L331; nop
-set 2,%o0
-set .L333,%o1
-call BadCond; nop
-ba .L332; nop
-.L331:
-set .L334,%o0
-set NoTrials,%l3
-ld [%l3],%o1
-call printf; nop
-.L332:
-set Milestone,%l3
-set 70,%l2
-st %l2,[%l3]
-set .L335,%o0
-call printf; nop
-set Zero,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-64]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-64],%f28
-fcmped %f28,%f30; nop; fbne .L338; nop
-set Zero,%l3
-ld2 [%l3],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-std %f30,[%fp+-72]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-72],%f28
-fcmped %f28,%f30; nop; fbne .L338; nop
-set One,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-80]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-80],%f28
-fcmped %f28,%f30; nop; fbne .L338; nop
-set 1,%l3
-st %l3,[%fp+-52]
-ba .L339; nop
-.L338:
-st %g0,[%fp+-52]
-.L339:
-mov %g0,%o0
-ld [%fp+-52],%o1
-set .L337,%o2
-call TstCond; nop
-set Zero,%l3
-ld2 [%l3],%f30
-set MinSqEr,%l3
-st2 %f30,[%l3]
-set MaxSqEr,%l3
-st2 %f30,[%l3]
-set J,%l3
-st2 %f30,[%l3]
-set X,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set OneUlp,%l3
-set U2,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set 1,%o0
-call SqXMinX; nop
-set BInvrse,%l3
-ld2 [%l3],%f30
-set X,%l3
-st2 %f30,[%l3]
-set OneUlp,%l3
-set U1,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set 1,%o0
-call SqXMinX; nop
-set U1,%l3
-ld2 [%l3],%f30
-set X,%l3
-st2 %f30,[%l3]
-set OneUlp,%l3
-fmuld %f30,%f30,%f30
-st2 %f30,[%l3]
-set 1,%o0
-call SqXMinX; nop
-set J,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L340; nop
-call Pause; nop
-.L340:
-set .L342,%o0
-set NoTrials,%l3
-ld [%l3],%o1
-call printf; nop
-set J,%l3
-set Zero,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set X,%l3
-set Two,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Radix,%l3
-ld2 [%l3],%f30
-set Y,%l3
-st2 %f30,[%l3]
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L343; nop
-.L345:
-set Y,%l3
-ld2 [%l3],%f30
-set X,%l2
-st2 %f30,[%l2]
-set Radix,%l2
-ld2 [%l2],%f28
-fmuld %f28,%f30,%f30
-st2 %f30,[%l3]
-.L346:
-set Y,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-set NoTrials,%l3
-ld [%l3],%l3
-st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fcmped %f30,%f28; nop; fbul .L345; nop
-.L343:
-set OneUlp,%l3
-set X,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set I,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L349; nop
-.L348:
-set X,%l3
-ld2 [%l3],%f30
-set One,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-set 2,%o0
-call SqXMinX; nop
-set J,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L351; nop
-ba .L350; nop
-.L351:
-set I,%l3
-ld [%l3],%l2
-add %l2,1,%l2
-st %l2,[%l3]
-.L349:
-set I,%l3
-ld [%l3],%l3
-set NoTrials,%l2
-ld [%l2],%l2
-cmp %l3,%l2; ble .L348; nop
-.L350:
-set .L353,%o0
-call printf; nop
-set I,%l3
-set -1,%l2
-st %l2,[%l3]
-set X,%l3
-set BMinusU2,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Radix,%l3
-ld2 [%l3],%f30
-set Y,%l3
-st2 %f30,[%l3]
-set Z,%l3
-set U2,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-set NotMonot,%l2
-st %g0,[%l2]
-set Monot,%l2
-st %g0,[%l2]
-ba .L355; nop
-.L354:
-set I,%l3
-ld [%l3],%l2
-add %l2,1,%l2
-st %l2,[%l3]
-set X,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-st2 %f30,[%l3]
-set Y,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Q,%l3
-st2 %f30,[%l3]
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-st2 %f30,[%l3]
-set Q,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L359; nop
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L357; nop
-.L359:
-set NotMonot,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L358; nop
-.L357:
-set Q,%l3
-ld2 [%l3],%f30
-set Half,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-st2 %f30,[%l3]
-set I,%l3
-ld [%l3],%l3
-cmp %l3,0; bg .L362; nop
-set Q,%l3
-ld2 [%l3],%f30
-set Radix,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f30,%f30
-fcmped %f28,%f30; nop; fbne .L360; nop
-.L362:
-set Monot,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L361; nop
-.L360:
-set I,%l3
-ld [%l3],%l3
-cmp %l3,0; ble .L363; nop
-set I,%l3
-ld [%l3],%l3
-cmp %l3,1; ble .L365; nop
-set Monot,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L364; nop
-.L365:
-set Y,%l3
-ld2 [%l3],%f30
-set BInvrse,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set U1,%l3
-ld2 [%l3],%f28
-set X,%l3
-fsubd %f30,%f28,%f26
-st2 %f26,[%l3]
-set Z,%l3
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-ba .L364; nop
-.L363:
-set Y,%l3
-set Q,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set U2,%l3
-ld2 [%l3],%f28
-set X,%l3
-fsubd %f30,%f28,%f26
-st2 %f26,[%l3]
-set Z,%l3
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-.L364:
-.L361:
-.L358:
-.L355:
-set NotMonot,%l2
-ld [%l2],%l2
-cmp %l2,%g0; bne .L367; nop
-set Monot,%l2
-ld [%l2],%l2
-cmp %l2,%g0; be .L354; nop
-.L367:
-set Monot,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L368; nop
-set .L370,%o0
-call printf; nop
-ba .L369; nop
-.L368:
-set 2,%o0
-set .L158,%o1
-call BadCond; nop
-set .L371,%o0
-set Y,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L369:
-set Milestone,%l3
-set 80,%l2
-st %l2,[%l3]
-set MinSqEr,%l3
-set Half,%l2
-ld2 [%l2],%f30
-ld2 [%l3],%f28
-faddd %f28,%f30,%f28
-st2 %f28,[%l3]
-set MaxSqEr,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l3]
-set One,%l3
-ld2 [%l3],%f30
-set U2,%l3
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set One,%l3
-ld2 [%l3],%f28
-set U2,%l3
-ld2 [%l3],%f26
-set Y,%l3
-fsubd %f30,%f28,%f30
-fdivd %f30,%f26,%f30
-st2 %f30,[%l3]
-set SqEr,%l3
-set Y,%l2
-ld2 [%l2],%f30
-fsubd %f30,%f28,%f30
-set Eight,%l2
-ld2 [%l2],%f28
-fdivd %f26,%f28,%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set MaxSqEr,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L372; nop
-set MaxSqEr,%l3
-set SqEr,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L372:
-set SqEr,%l3
-set Y,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-set Eight,%l2
-ld2 [%l2],%f26
-fdivd %f28,%f26,%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set MinSqEr,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L374; nop
-set MinSqEr,%l3
-set SqEr,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L374:
-set F9,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set U2,%l3
-ld2 [%l3],%f28
-set U1,%l3
-ld2 [%l3],%f26
-set Y,%l3
-fsubd %f30,%f28,%f30
-set One,%l2
-ld2 [%l2],%f24
-fsubd %f24,%f28,%f28
-fsubd %f30,%f28,%f30
-fdivd %f30,%f26,%f30
-st2 %f30,[%l3]
-set SqEr,%l3
-set Y,%l2
-ld2 [%l2],%f30
-set Eight,%l2
-ld2 [%l2],%f28
-fdivd %f26,%f28,%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set MaxSqEr,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L376; nop
-set MaxSqEr,%l3
-set SqEr,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L376:
-set SqEr,%l3
-set Y,%l2
-ld2 [%l2],%f30
-set One,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-set U1,%l2
-ld2 [%l2],%f28
-set Eight,%l2
-ld2 [%l2],%f26
-fdivd %f28,%f26,%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set MinSqEr,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L378; nop
-set MinSqEr,%l3
-set SqEr,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L378:
-set OneUlp,%l3
-set U2,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set X,%l2
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-set Indx,%l3
-set 1,%l2
-st %l2,[%l3]
-.L380:
-set X,%l3
-ld2 [%l3],%f30
-set U1,%l3
-ld2 [%l3],%f28
-faddd %f30,%f28,%f28
-faddd %f28,%f30,%f30
-set F9,%l3
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Y,%l3
-st2 %f30,[%l3]
-set Y,%l3
-set U2,%l2
-ld2 [%l2],%f30
-set X,%l2
-ld2 [%l2],%f28
-set OneUlp,%l2
-ld2 [%l2],%f26
-ld2 [%l3],%f24
-fsubd %f24,%f30,%f24
-set One,%l2
-ld2 [%l2],%f22
-fsubd %f22,%f30,%f30
-faddd %f30,%f28,%f30
-fsubd %f24,%f30,%f30
-fdivd %f30,%f26,%f30
-st2 %f30,[%l3]
-set Z,%l2
-set Half,%l1
-ld2 [%l1],%f30
-set U1,%l1
-ld2 [%l1],%f24
-fsubd %f24,%f28,%f24
-set F9,%l1
-ld2 [%l1],%f22
-faddd %f24,%f22,%f24
-fmuld %f24,%f30,%f24
-fmuld %f24,%f28,%f24
-fmuld %f24,%f28,%f28
-fdivd %f28,%f26,%f28
-st2 %f28,[%l2]
-set SqEr,%l1
-ld2 [%l3],%f28
-faddd %f28,%f30,%f30
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l1]
-ld2 [%l1],%f30
-set MinSqEr,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L384; nop
-set MinSqEr,%l3
-set SqEr,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L384:
-set SqEr,%l3
-set Y,%l2
-ld2 [%l2],%f30
-set Half,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-set Z,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set MaxSqEr,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L386; nop
-set MaxSqEr,%l3
-set SqEr,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L386:
-set Indx,%l3
-ld [%l3],%l3
-cmp %l3,1; be .L390; nop
-cmp %l3,3; bne .L388; nop
-.L390:
-set X,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call Sign; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-std %f30,[%fp+-88]
-set OneUlp,%l2
-ld2 [%l2],%f28
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Eight,%l2
-ld2 [%l2],%f28
-set Nine,%l2
-ld2 [%l2],%f26
-fmuld %f26,%f30,%f30
-fdivd %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set OneUlp,%l2
-ld2 [%l2],%f28
-ldd [%fp+-88],%f26
-fmuld %f28,%f26,%f28
-fmuld %f28,%f30,%f30
-st2 %f30,[%l3]
-ba .L389; nop
-.L388:
-set OneUlp,%l3
-set U1,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set X,%l2
-ld2 [%l3],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%l2]
-.L389:
-.L381:
-set Indx,%l3
-ld [%l3],%l2
-add %l2,1,%l2
-st %l2,[%l3]
-set Indx,%l3
-ld [%l3],%l3
-cmp %l3,3; ble .L380; nop
-set Milestone,%l3
-set 85,%l2
-st %l2,[%l3]
-set SqRWrng,%l2
-st %g0,[%l2]
-set Anomaly,%l2
-st %g0,[%l2]
-set RSqrt,%l2
-st %g0,[%l2]
-set Radix,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L391; nop
-set .L393,%o0
-call printf; nop
-set Precision,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-88]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Radix,%l3
-ld2 [%l3],%f28
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-set One,%l3
-ld2 [%l3],%f28
-ldd [%fp+-88],%f26
-faddd %f28,%f26,%f28
-fsubd %f28,%f30,%f30
-st %f30,[%sp+4*2+68]
-st %f31,[%sp+4*3+68]
-ld [%sp+4*2+68],%o2
-ld [%sp+4*3+68],%o3
-call pow; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Half,%l3
-ld2 [%l3],%f28
-faddd %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set D,%l3
-st2 %f30,[%l3]
-set D,%l3
-ld2 [%l3],%f30
-set X,%l3
-set Radix,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f28
-st2 %f28,[%l3]
-set Y,%l3
-set A1,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l3]
-set X,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-96]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-96],%f28
-fcmped %f28,%f30; nop; fbne .L396; nop
-set Y,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-104]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-104],%f28
-fcmped %f28,%f30; nop; fbue .L394; nop
-.L396:
-set Anomaly,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L395; nop
-.L394:
-set X,%l3
-set Zero,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Z2,%l2
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-set Y,%l3
-set One,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Y2,%l2
-ld2 [%l3],%f28
-st2 %f28,[%l2]
-set Z1,%l3
-set Radix,%l2
-ld2 [%l2],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l3]
-set FourD,%l3
-set Four,%l2
-ld2 [%l2],%f30
-set D,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-.L397:
-set Y2,%l3
-ld2 [%l3],%f30
-set Z2,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L400; nop
-set Q,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Y1,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L402:
-set Q,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-112]
-set Half,%l3
-ld2 [%l3],%f28
-set Y1,%l3
-ld2 [%l3],%f26
-fdivd %f30,%f26,%f26
-fsubd %f28,%f26,%f28
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Y1,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-ldd [%fp+-112],%f28
-faddd %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set X1,%l3
-st2 %f30,[%l3]
-set Y1,%l3
-set Q,%l2
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-set X1,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L403:
-set X1,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L402; nop
-set Q,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L405; nop
-set Z2,%l3
-set Y2,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Z,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L405:
-.L400:
-set Y,%l3
-ld2 [%l3],%f30
-set Two,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-set X,%l3
-ld2 [%l3],%f30
-set Eight,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-set Y2,%l2
-ld2 [%l2],%f30
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l2]
-ld2 [%l2],%f30
-set FourD,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L407; nop
-set Y2,%l3
-ld2 [%l3],%f30
-set FourD,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-.L407:
-.L398:
-set Y,%l3
-ld2 [%l3],%f30
-set D,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L397; nop
-set X8,%l3
-set FourD,%l2
-ld2 [%l2],%f30
-set Z2,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f28
-st2 %f28,[%l3]
-set Q,%l2
-ld2 [%l3],%f28
-set Z,%l1
-ld2 [%l1],%f26
-fmuld %f26,%f26,%f26
-faddd %f28,%f26,%f26
-fdivd %f26,%f30,%f30
-st2 %f30,[%l2]
-set Eight,%l1
-ld2 [%l1],%f30
-fdivd %f28,%f30,%f30
-st2 %f30,[%l3]
-ld2 [%l2],%f30
-std %f30,[%fp+-112]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-112],%f28
-fcmped %f28,%f30; nop; fbue .L409; nop
-set Anomaly,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L410; nop
-.L409:
-set Break,%l3
-st %g0,[%l3]
-.L411:
-set X,%l3
-set Z1,%l2
-ld2 [%l2],%f30
-set Z,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-std %f30,[%fp+-120]
-set Radix,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f28
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Radix,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-ldd [%fp+-120],%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l3]
-set X,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L414; nop
-set Break,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L415; nop
-.L414:
-set Z1,%l3
-ld2 [%l3],%f30
-set One,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-.L415:
-.L412:
-set Break,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L416; nop
-set Z1,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L411; nop
-.L416:
-set Z1,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L417; nop
-set Break,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L417; nop
-set Anomaly,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L418; nop
-.L417:
-set Z1,%l3
-ld2 [%l3],%f30
-set RadixD2,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L419; nop
-set Z1,%l3
-ld2 [%l3],%f30
-set Radix,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-.L419:
-.L421:
-call NewD; nop
-.L422:
-set U2,%l3
-ld2 [%l3],%f30
-set D,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-set F9,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L421; nop
-set D,%l3
-ld2 [%l3],%f30
-set Radix,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f28
-fsubd %f28,%f30,%f28
-set W,%l3
-ld2 [%l3],%f26
-fsubd %f26,%f30,%f30
-fcmped %f28,%f30; nop; fbue .L424; nop
-set Anomaly,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L425; nop
-.L424:
-set D,%l3
-ld2 [%l3],%f30
-set Z2,%l3
-st2 %f30,[%l3]
-set I,%l3
-st %g0,[%l3]
-set Z,%l3
-ld2 [%l3],%f28
-set Y,%l3
-set One,%l2
-ld2 [%l2],%f26
-faddd %f26,%f28,%f26
-set Half,%l2
-ld2 [%l2],%f24
-fmuld %f26,%f24,%f26
-faddd %f30,%f26,%f26
-st2 %f26,[%l3]
-set X,%l3
-faddd %f30,%f28,%f30
-set Q,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-call SR3750; nop
-set D,%l3
-ld2 [%l3],%f30
-set Z,%l3
-ld2 [%l3],%f28
-set Y,%l3
-set One,%l2
-ld2 [%l2],%f26
-fsubd %f26,%f28,%f26
-set Half,%l2
-ld2 [%l2],%f24
-fmuld %f26,%f24,%f26
-faddd %f30,%f26,%f26
-faddd %f26,%f30,%f26
-st2 %f26,[%l3]
-set X,%l3
-fsubd %f30,%f28,%f28
-faddd %f28,%f30,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set Q,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f28
-faddd %f28,%f30,%f30
-st2 %f30,[%l3]
-call SR3750; nop
-call NewD; nop
-set Z2,%l3
-ld2 [%l3],%f30
-set D,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f28
-set W,%l3
-ld2 [%l3],%f26
-fsubd %f26,%f30,%f30
-fcmped %f28,%f30; nop; fbue .L426; nop
-set Anomaly,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L427; nop
-.L426:
-set Z2,%l3
-ld2 [%l3],%f30
-set D,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f28
-set Z,%l3
-ld2 [%l3],%f26
-set Y,%l3
-set One,%l2
-ld2 [%l2],%f24
-fsubd %f24,%f26,%f24
-set Half,%l2
-ld2 [%l2],%f22
-fmuld %f24,%f22,%f24
-faddd %f30,%f24,%f24
-faddd %f28,%f24,%f24
-st2 %f24,[%l3]
-set X,%l3
-fsubd %f30,%f26,%f30
-set Q,%l2
-ld2 [%l2],%f26
-faddd %f30,%f26,%f30
-faddd %f28,%f30,%f30
-st2 %f30,[%l3]
-call SR3750; nop
-set Y,%l3
-set One,%l2
-ld2 [%l2],%f30
-set Z,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-set Half,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set X,%l3
-set Q,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-call SR3750; nop
-set I,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L428; nop
-set Anomaly,%l3
-set 1,%l2
-st %l2,[%l3]
-.L428:
-.L427:
-.L425:
-.L418:
-.L410:
-.L395:
-set I,%l2
-ld [%l2],%l2
-cmp %l2,%g0; be .L432; nop
-set Anomaly,%l2
-ld [%l2],%l2
-cmp %l2,%g0; be .L430; nop
-.L432:
-mov %g0,%o0
-set .L433,%o1
-call BadCond; nop
-set .L434,%o0
-set W,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L435,%o0
-call printf; nop
-set SqRWrng,%l3
-set 1,%l2
-st %l2,[%l3]
-.L430:
-.L391:
-set Anomaly,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L436; nop
-set Zero,%l3
-ld2 [%l3],%f30
-set MinSqEr,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbul .L438; nop
-set MaxSqEr,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L438; nop
-set RSqrt,%l3
-set 1,%l2
-st %l2,[%l3]
-set .L440,%o0
-call printf; nop
-ba .L439; nop
-.L438:
-set U2,%l3
-ld2 [%l3],%f30
-set Half,%l3
-ld2 [%l3],%f28
-set MaxSqEr,%l3
-ld2 [%l3],%f26
-faddd %f26,%f30,%f26
-fsubd %f30,%f28,%f30
-fcmped %f26,%f30; nop; fbug .L444; nop
-set MinSqEr,%l3
-ld2 [%l3],%f30
-fcmped %f30,%f28; nop; fbug .L444; nop
-set Radix,%l3
-ld2 [%l3],%f26
-faddd %f30,%f26,%f30
-fcmped %f30,%f28; nop; fbuge .L441; nop
-.L444:
-set SqRWrng,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L442; nop
-.L441:
-set RSqrt,%l3
-set 2,%l2
-st %l2,[%l3]
-set .L445,%o0
-call printf; nop
-.L442:
-.L439:
-.L436:
-set SqRWrng,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L446; nop
-set .L448,%o0
-call printf; nop
-set .L449,%o0
-set MinSqEr,%l3
-ld2 [%l3],%f30
-set Half,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L450,%o0
-set Half,%l3
-ld2 [%l3],%f30
-set MaxSqEr,%l3
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set 1,%o0
-set Radix,%l3
-ld2 [%l3],%f30
-set MaxSqEr,%l3
-ld2 [%l3],%f28
-set MinSqEr,%l3
-ld2 [%l3],%f26
-fsubd %f28,%f26,%f28
-fmuld %f30,%f30,%f30
-fcmped %f28,%f30; nop; fbuge .L453; nop
-set 1,%l3
-st %l3,[%fp+-84]
-ba .L454; nop
-.L453:
-st %g0,[%fp+-84]
-.L454:
-ld [%fp+-84],%o1
-set .L452,%o2
-call TstCond; nop
-.L446:
-set Milestone,%l3
-set 90,%l2
-st %l2,[%l3]
-call Pause; nop
-set .L455,%o0
-call printf; nop
-set N,%l2
-st %g0,[%l2]
-set I,%l2
-st %g0,[%l2]
-set Z,%l2
-set Zero,%l1
-ld2 [%l1],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%l2]
-set M,%l2
-set 3,%l1
-st %l1,[%l2]
-set Break,%l2
-st %g0,[%l2]
-.L456:
-set X,%l3
-set One,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-call SR3980; nop
-set I,%l3
-ld [%l3],%l3
-cmp %l3,10; bg .L459; nop
-set I,%l3
-set 1023,%l2
-st %l2,[%l3]
-call SR3980; nop
-.L459:
-set Z,%l3
-ld2 [%l3],%f30
-set MinusOne,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L461; nop
-set Break,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L462; nop
-.L461:
-set Z,%l3
-set MinusOne,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-call PrintIfNPositive; nop
-set N,%l3
-st %g0,[%l3]
-set I,%l3
-set -4,%l2
-st %l2,[%l3]
-.L462:
-.L457:
-set Break,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L456; nop
-call PrintIfNPositive; nop
-set N,%l3
-set N1,%l2
-ld [%l3],%l1
-st %l1,[%l2]
-st %g0,[%l3]
-set Z,%l3
-set A1,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set W,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-std %f30,[%fp+-88]
-set A1,%l3
-ld2 [%l3],%f28
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Two,%l3
-ld2 [%l3],%f28
-ldd [%fp+-88],%f26
-fmuld %f28,%f26,%f28
-fdivd %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set M,%l3
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l2
-st %l2,[%l3]
-set Break,%l3
-st %g0,[%l3]
-.L463:
-set X,%l3
-set Z,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set I,%l3
-set 1,%l2
-st %l2,[%l3]
-call SR3980; nop
-set Z,%l3
-ld2 [%l3],%f30
-set AInvrse,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L466; nop
-set Break,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L467; nop
-.L466:
-set Z,%l3
-set AInvrse,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L467:
-.L464:
-set Break,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L463; nop
-set Milestone,%l3
-set 100,%l2
-st %l2,[%l3]
-set M,%l3
-set NoTrials,%l2
-ld [%l2],%l2
-st %l2,[%l3]
-set Z,%l3
-set Three,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L468:
-set X,%l3
-set Z,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set I,%l3
-set 1,%l2
-st %l2,[%l3]
-call SR3980; nop
-.L471:
-set Z,%l3
-ld2 [%l3],%f30
-set Two,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-.L472:
-set Three,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-96]
-set Z,%l3
-ld2 [%l3],%f28
-fdivd %f28,%f30,%f28
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-96],%f28
-fmuld %f28,%f30,%f30
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L471; nop
-.L469:
-set Z,%l3
-ld2 [%l3],%f30
-set Eight,%l3
-ld2 [%l3],%f28
-set Three,%l3
-ld2 [%l3],%f26
-fmuld %f28,%f26,%f28
-fcmped %f30,%f28; nop; fbul .L468; nop
-set N,%l3
-ld [%l3],%l3
-cmp %l3,0; ble .L474; nop
-set .L476,%o0
-call printf; nop
-set .L477,%o0
-call printf; nop
-.L474:
-call PrintIfNPositive; nop
-set N,%l3
-ld [%l3],%l2
-set N1,%l1
-ld [%l1],%l1
-add %l2,%l1,%l2
-st %l2,[%l3]
-ld [%l3],%l3
-cmp %l3,0; bne .L478; nop
-set .L480,%o0
-call printf; nop
-.L478:
-set N,%l3
-ld [%l3],%l3
-cmp %l3,0; ble .L481; nop
-call Pause; nop
-ba .L482; nop
-.L481:
-set .L45,%o0
-call printf; nop
-.L482:
-set Milestone,%l3
-set 110,%l2
-st %l2,[%l3]
-set .L483,%o0
-call printf; nop
-set D,%l3
-set U1,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Precision,%l3
-ld2 [%l3],%f30
-std %f30,[%fp+-96]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-96],%f28
-fcmped %f28,%f30; nop; fbue .L484; nop
-set D,%l3
-set BInvrse,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set X,%l3
-set Precision,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L486:
-set D,%l3
-ld2 [%l3],%f30
-set BInvrse,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set X,%l3
-ld2 [%l3],%f30
-set One,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-.L487:
-set X,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L486; nop
-.L484:
-set Y,%l3
-set One,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Z,%l3
-set D,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L489:
-set Y,%l3
-set C,%l2
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-set Z,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-fmuld %f30,%f30,%f30
-st2 %f30,[%l2]
-.L490:
-set Z,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbule .L492; nop
-faddd %f30,%f30,%f28
-fcmped %f28,%f30; nop; fbug .L489; nop
-.L492:
-set Y,%l3
-set C,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Z,%l2
-ld2 [%l3],%f30
-set D,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-.L493:
-set Y,%l3
-set C,%l2
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-set Z,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set D,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-.L494:
-set Z,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbule .L496; nop
-faddd %f30,%f30,%f28
-fcmped %f28,%f30; nop; fbug .L493; nop
-.L496:
-set Radix,%l3
-ld2 [%l3],%f30
-set Two,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L497; nop
-set HInvrse,%l3
-set Two,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L498; nop
-.L497:
-set HInvrse,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L498:
-set H,%l3
-set One,%l2
-ld2 [%l2],%f30
-set HInvrse,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f28
-st2 %f28,[%l3]
-set C,%l2
-ld2 [%l2],%f28
-set CInvrse,%l2
-fdivd %f30,%f28,%f30
-st2 %f30,[%l2]
-set E0,%l2
-st2 %f28,[%l2]
-set Z,%l1
-ld2 [%l2],%f30
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l1]
-.L499:
-set E0,%l3
-set Y,%l2
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-set Z,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set H,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-.L500:
-set Z,%l3
-ld2 [%l3],%f30
-set E0,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbule .L502; nop
-faddd %f30,%f30,%f28
-fcmped %f28,%f30; nop; fbug .L499; nop
-.L502:
-set UfThold,%l3
-set E0,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Zero,%l3
-ld2 [%l3],%f30
-set E1,%l3
-st2 %f30,[%l3]
-set Q,%l3
-st2 %f30,[%l3]
-set E9,%l3
-set U2,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set S,%l2
-set One,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l2]
-set D,%l3
-set C,%l1
-ld2 [%l1],%f30
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f28
-st2 %f28,[%l3]
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L503; nop
-set E9,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set S,%l2
-set One,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l2]
-set D,%l3
-set C,%l1
-ld2 [%l1],%f30
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f28
-st2 %f28,[%l3]
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbug .L504; nop
-mov %g0,%o0
-set .L507,%o1
-call BadCond; nop
-set Underflow,%l3
-set E0,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Y1,%l3
-set Zero,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set PseudoZero,%l3
-set Z,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-call Pause; nop
-ba .L504; nop
-.L503:
-set Underflow,%l3
-set D,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set PseudoZero,%l2
-ld2 [%l3],%f30
-set H,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-set UfThold,%l3
-set Zero,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L508:
-set Underflow,%l3
-set Y1,%l2
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-set PseudoZero,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set E1,%l3
-ld2 [%l3],%f30
-faddd %f30,%f30,%f28
-fcmped %f28,%f30; nop; fbug .L511; nop
-set Y2,%l3
-set Underflow,%l2
-ld2 [%l2],%f30
-set HInvrse,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set Y1,%l2
-ld2 [%l2],%f30
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set E1,%l3
-st2 %f30,[%l3]
-set Q,%l3
-set Y1,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set UfThold,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L513; nop
-set Y1,%l3
-ld2 [%l3],%f30
-set Y2,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L513; nop
-set UfThold,%l3
-set Y1,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L513:
-.L511:
-set PseudoZero,%l3
-ld2 [%l3],%f30
-set H,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-.L509:
-set PseudoZero,%l3
-ld2 [%l3],%f30
-set Underflow,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbule .L515; nop
-faddd %f30,%f30,%f28
-fcmped %f28,%f30; nop; fbug .L508; nop
-.L515:
-.L504:
-set PseudoZero,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L516; nop
-set .L45,%o0
-call printf; nop
-set PseudoZero,%l3
-ld2 [%l3],%f30
-set Z,%l3
-st2 %f30,[%l3]
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L518; nop
-mov %g0,%o0
-set .L520,%o1
-call BadCond; nop
-set .L521,%o0
-call printf; nop
-set .L522,%o0
-set PseudoZero,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set X,%l3
-set PseudoZero,%l2
-ld2 [%l2],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L519; nop
-set .L525,%o0
-call printf; nop
-set .L526,%o0
-set X,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-ba .L519; nop
-.L518:
-set 3,%o0
-set .L527,%o1
-call BadCond; nop
-set .L528,%o0
-set PseudoZero,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L519:
-call TstPtUf; nop
-.L516:
-set Milestone,%l3
-set 120,%l2
-st %l2,[%l3]
-set CInvrse,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f28
-set Y1,%l3
-ld2 [%l3],%f26
-fmuld %f30,%f26,%f30
-fcmped %f28,%f30; nop; fbule .L529; nop
-set S,%l3
-set H,%l2
-ld2 [%l2],%f30
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set E0,%l3
-set Underflow,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L529:
-set E1,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L531; nop
-set E0,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L531; nop
-set 2,%o0
-set .L158,%o1
-call BadCond; nop
-set E1,%l3
-ld2 [%l3],%f30
-set E0,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L533; nop
-set .L535,%o0
-call printf; nop
-set .L536,%o0
-call printf; nop
-set PseudoZero,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L534; nop
-set E0,%l3
-set E1,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L534; nop
-.L533:
-set .L539,%o0
-call printf; nop
-set .L540,%o0
-call printf; nop
-.L534:
-.L531:
-set .L541,%o0
-set E0,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set Z,%l3
-set E0,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-call TstPtUf; nop
-set Underflow,%l3
-set E0,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set N,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L542; nop
-set Underflow,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L542:
-set I,%l3
-set 4,%l2
-st %l2,[%l3]
-set E1,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L544; nop
-set I,%l3
-set 3,%l2
-st %l2,[%l3]
-.L544:
-set UfThold,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L546; nop
-set I,%l3
-ld [%l3],%l2
-sub %l2,2,%l2
-st %l2,[%l3]
-.L546:
-set UfNGrad,%l3
-set 1,%l2
-st %l2,[%l3]
-set I,%l3
-ld [%l3],%l3
-cmp %l3,1; bl .L548; nop
-cmp %l3,4; bg .L548; nop
-sll %l3,2,%l3
-set .L571-4,%l2
-ld [%l3+%l2],%l3
-jmp %l3; nop
-.section ".rodata"
-.align 4
-.L571:
-.word .L550
-.word .L557
-.word .L562
-.word .L563
-.section ".text"
-.L550:
-set UfThold,%l3
-set Underflow,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set CInvrse,%l3
-ld2 [%l3],%f30
-set Q,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f28
-set Y,%l3
-ld2 [%l3],%f26
-fmuld %f30,%f26,%f30
-set S,%l3
-ld2 [%l3],%f26
-fmuld %f30,%f26,%f30
-fcmped %f28,%f30; nop; fbue .L551; nop
-set UfThold,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-mov %g0,%o0
-set .L553,%o1
-call BadCond; nop
-set .L554,%o0
-set UfThold,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L555,%o0
-set C,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L556,%o0
-call printf; nop
-.L551:
-call Pause; nop
-ba .L549; nop
-.L557:
-mov %g0,%o0
-set .L558,%o1
-call BadCond; nop
-set .L559,%o0
-call printf; nop
-set .L560,%o0
-set Q,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Y2,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-set Q,%l3
-ld2 [%l3],%f30
-set Y2,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set .L561,%o0
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set UfThold,%l3
-set Q,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L549; nop
-.L562:
-set X,%l3
-ld2 [%l3],%f30
-st2 %f30,[%l3]
-ba .L549; nop
-.L563:
-set UfThold,%l3
-ld2 [%l3],%f30
-set Q,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L564; nop
-set E1,%l3
-ld2 [%l3],%f28
-set E0,%l3
-ld2 [%l3],%f26
-fcmped %f28,%f26; nop; fbne .L564; nop
-set E9,%l3
-ld2 [%l3],%f26
-fdivd %f28,%f26,%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set E1,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L564; nop
-set UfNGrad,%l3
-st %g0,[%l3]
-set .L566,%o0
-call printf; nop
-set .L567,%o0
-call printf; nop
-set Y,%l3
-set E0,%l2
-ld2 [%l2],%f30
-set CInvrse,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f26
-st2 %f26,[%l3]
-set U2,%l2
-ld2 [%l2],%f26
-ld2 [%l3],%f24
-set OneAndHalf,%l2
-ld2 [%l2],%f22
-faddd %f22,%f26,%f22
-fmuld %f24,%f22,%f24
-st2 %f24,[%l3]
-set X,%l2
-set One,%l1
-ld2 [%l1],%f24
-faddd %f24,%f26,%f26
-fmuld %f28,%f26,%f28
-st2 %f28,[%l2]
-ld2 [%l3],%f28
-ld2 [%l2],%f26
-fdivd %f28,%f26,%f28
-st2 %f28,[%l3]
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L569; nop
-set 1,%l3
-st %l3,[%fp+-100]
-ba .L570; nop
-.L569:
-st %g0,[%fp+-100]
-.L570:
-set IEEE,%l3
-ld [%fp+-100],%l2
-st %l2,[%l3]
-.L564:
-.L548:
-.L549:
-set UfNGrad,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L573; nop
-set .L45,%o0
-call printf; nop
-set sigsave,%l3
-set sigfpe,%l2
-st %l2,[%l3]
-set ovfl_buf,%o0
-call setjmp; nop
-cmp %o0,0; be .L575; nop
-set .L577,%o0
-call printf; nop
-set H,%l3
-ld2 [%l3],%f30
-set R,%l3
-faddd %f30,%f30,%f30
-st2 %f30,[%l3]
-ba .L576; nop
-.L575:
-set Underflow,%l3
-ld2 [%l3],%f30
-set UfThold,%l3
-ld2 [%l3],%f28
-fdivd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set R,%l3
-st2 %f30,[%l3]
-.L576:
-set sigsave,%l3
-st %g0,[%l3]
-set R,%l3
-ld2 [%l3],%f30
-set H,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L578; nop
-set Z,%l3
-set R,%l2
-ld2 [%l2],%f30
-set UfThold,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f28
-st2 %f28,[%l3]
-set One,%l2
-ld2 [%l2],%f28
-set H,%l2
-ld2 [%l2],%f26
-set X,%l2
-ld2 [%l3],%f24
-fmuld %f30,%f26,%f30
-faddd %f28,%f26,%f26
-fmuld %f30,%f26,%f30
-faddd %f28,%f30,%f30
-fmuld %f24,%f30,%f30
-st2 %f30,[%l2]
-ba .L579; nop
-.L578:
-set Z,%l3
-set UfThold,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set One,%l2
-ld2 [%l2],%f30
-set H,%l2
-ld2 [%l2],%f28
-set X,%l2
-ld2 [%l3],%f26
-fmuld %f28,%f28,%f24
-faddd %f30,%f28,%f28
-fmuld %f24,%f28,%f28
-faddd %f30,%f28,%f30
-fmuld %f26,%f30,%f30
-st2 %f30,[%l2]
-.L579:
-set X,%l3
-ld2 [%l3],%f30
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L580; nop
-fsubd %f30,%f28,%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L580; nop
-set 3,%o0
-set .L158,%o1
-call BadCond; nop
-set .L582,%o0
-set X,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-set Z9,%l3
-set X,%l2
-ld2 [%l2],%f30
-set Z,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-set .L583,%o0
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L584,%o0
-call printf; nop
-set .L585,%o0
-call printf; nop
-set .L586,%o0
-call printf; nop
-set .L587,%o0
-call printf; nop
-set .L588,%o0
-call printf; nop
-set .L589,%o0
-call printf; nop
-set sigsave,%l3
-set sigfpe,%l2
-st %l2,[%l3]
-set ovfl_buf,%o0
-call setjmp; nop
-cmp %o0,0; be .L590; nop
-set .L592,%o0
-call printf; nop
-ba .L591; nop
-.L590:
-set .L593,%o0
-set Half,%l3
-ld2 [%l3],%f30
-set X,%l3
-ld2 [%l3],%f28
-set Z,%l3
-ld2 [%l3],%f26
-fdivd %f28,%f26,%f28
-fsubd %f28,%f30,%f28
-fsubd %f28,%f30,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L591:
-set sigsave,%l3
-st %g0,[%l3]
-.L580:
-.L573:
-set .L594,%o0
-set UfThold,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set .L595,%o3
-call printf; nop
-set .L596,%o0
-call printf; nop
-set .L597,%o0
-call printf; nop
-set Y2,%l3
-set U1,%l2
-ld2 [%l2],%f30
-fmuld %f30,%f30,%f28
-st2 %f28,[%l3]
-set Y,%l2
-ld2 [%l3],%f28
-fmuld %f28,%f28,%f28
-st2 %f28,[%l2]
-ld2 [%l2],%f28
-fmuld %f28,%f30,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set UfThold,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L598; nop
-set Y,%l3
-ld2 [%l3],%f30
-set E0,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L600; nop
-set 2,%o0
-set .L158,%o1
-call BadCond; nop
-set I,%l3
-set 5,%l2
-st %l2,[%l3]
-ba .L601; nop
-.L600:
-set 1,%o0
-set .L158,%o1
-call BadCond; nop
-set I,%l3
-set 4,%l2
-st %l2,[%l3]
-.L601:
-set .L602,%o0
-set I,%l3
-ld [%l3],%o1
-call printf; nop
-.L598:
-set Milestone,%l3
-set 130,%l2
-st %l2,[%l3]
-set UfThold,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-std %f30,[%fp+-104]
-set HInvrse,%l3
-ld2 [%l3],%f28
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Half,%l3
-ld2 [%l3],%f28
-set TwoForty,%l3
-ld2 [%l3],%f26
-ldd [%fp+-104],%f24
-fmuld %f26,%f24,%f26
-fdivd %f26,%f30,%f30
-fsubd %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Y,%l3
-fnegs %f30,%f30; fmovs %f31,%f31
-set TwoForty,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l3]
-set Y,%l3
-ld2 [%l3],%f30
-set Y2,%l3
-faddd %f30,%f30,%f30
-st2 %f30,[%l3]
-set .L603,%o0
-call printf; nop
-set .L604,%o0
-set HInvrse,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Y,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-set .L605,%o0
-set HInvrse,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Y,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-set HInvrse,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-set Y2,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*2+68]
-st %f31,[%sp+4*3+68]
-ld [%sp+4*2+68],%o2
-ld [%sp+4*3+68],%o3
-call pow; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set V9,%l3
-st2 %f30,[%l3]
-set .L606,%o0
-set V9,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set V9,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L609; nop
-set Radix,%l3
-ld2 [%l3],%f28
-faddd %f28,%f28,%f28
-set E9,%l3
-ld2 [%l3],%f26
-faddd %f28,%f26,%f28
-set UfThold,%l3
-ld2 [%l3],%f26
-fmuld %f28,%f26,%f28
-fcmped %f30,%f28; nop; fbule .L607; nop
-.L609:
-set 1,%o0
-set .L610,%o1
-call BadCond; nop
-set .L611,%o0
-set UfThold,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-ba .L608; nop
-.L607:
-set V9,%l3
-ld2 [%l3],%f30
-set UfThold,%l3
-ld2 [%l3],%f28
-set One,%l3
-ld2 [%l3],%f26
-set E9,%l3
-ld2 [%l3],%f24
-faddd %f26,%f24,%f26
-fmuld %f28,%f26,%f28
-fcmped %f30,%f28; nop; fbug .L612; nop
-set .L614,%o0
-call printf; nop
-ba .L613; nop
-.L612:
-set 2,%o0
-set .L610,%o1
-call BadCond; nop
-set .L611,%o0
-set UfThold,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L613:
-.L608:
-set Milestone,%l3
-set 140,%l2
-st %l2,[%l3]
-set .L45,%o0
-call printf; nop
-set Zero,%l3
-ld2 [%l3],%f30
-set X,%l3
-st2 %f30,[%l3]
-set I,%l3
-set 2,%l2
-st %l2,[%l3]
-set Y,%l3
-set Two,%l2
-ld2 [%l2],%f28
-set Three,%l2
-ld2 [%l2],%f26
-fmuld %f28,%f26,%f28
-st2 %f28,[%l3]
-set Q,%l3
-st2 %f30,[%l3]
-set N,%l3
-st %g0,[%l3]
-.L615:
-set Z,%l3
-set X,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set I,%l1
-ld [%l1],%l0
-add %l0,1,%l0
-st %l0,[%l1]
-set Y,%l0
-ld [%l1],%l1
-ld2 [%l0],%f30
-add %l1,%l1,%l1
-st %l1,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l0]
-set R,%l1
-set Q,%o5
-ld2 [%l0],%f30
-ld2 [%o5],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l1]
-ld2 [%l3],%f30
-ld2 [%l1],%f28
-faddd %f30,%f28,%f26
-st2 %f26,[%l2]
-ld2 [%l2],%f26
-fsubd %f30,%f26,%f30
-faddd %f30,%f28,%f30
-st2 %f30,[%o5]
-.L616:
-set X,%l3
-ld2 [%l3],%f30
-set Z,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbug .L615; nop
-set Z,%l3
-set OneAndHalf,%l2
-ld2 [%l2],%f30
-set X,%l2
-set One,%l1
-ld2 [%l1],%f28
-set Eight,%l1
-ld2 [%l1],%f26
-fdivd %f28,%f26,%f28
-faddd %f30,%f28,%f28
-ld2 [%l2],%f26
-set ThirtyTwo,%l1
-ld2 [%l1],%f24
-fmuld %f30,%f24,%f30
-fdivd %f26,%f30,%f30
-faddd %f28,%f30,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-fmuld %f30,%f30,%f30
-st2 %f30,[%l2]
-set Exp2,%l3
-ld2 [%l2],%f30
-fmuld %f30,%f30,%f30
-st2 %f30,[%l3]
-set F9,%l1
-ld2 [%l1],%f30
-st2 %f30,[%l2]
-set Y,%l1
-ld2 [%l2],%f30
-set U1,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l1]
-set .L618,%o0
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set I,%l3
-set 1,%l2
-st %l2,[%l3]
-.L619:
-set Z,%l3
-set X,%l2
-ld2 [%l2],%f30
-set BInvrse,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f26
-st2 %f26,[%l3]
-set One,%l2
-ld2 [%l2],%f26
-faddd %f30,%f26,%f24
-ld2 [%l3],%f22
-fsubd %f26,%f28,%f28
-fsubd %f22,%f28,%f28
-fdivd %f24,%f28,%f28
-st2 %f28,[%l3]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-ld2 [%l3],%f30
-st %f30,[%sp+4*2+68]
-st %f31,[%sp+4*3+68]
-ld [%sp+4*2+68],%o2
-ld [%sp+4*3+68],%o3
-call pow; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Q,%l3
-set Exp2,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%l3]
-set Q,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set TwoForty,%l3
-ld2 [%l3],%f28
-set U2,%l3
-ld2 [%l3],%f26
-fmuld %f28,%f26,%f28
-fcmped %f30,%f28; nop; fbule .L623; nop
-set N,%l3
-set 1,%l2
-st %l2,[%l3]
-set BInvrse,%l3
-ld2 [%l3],%f30
-set V9,%l3
-set X,%l2
-ld2 [%l2],%f28
-fsubd %f28,%f30,%f28
-set One,%l2
-ld2 [%l2],%f26
-fsubd %f26,%f30,%f30
-fsubd %f28,%f30,%f30
-st2 %f30,[%l3]
-set 2,%o0
-set .L625,%o1
-call BadCond; nop
-set X,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*2+68]
-st %f31,[%sp+4*3+68]
-ld [%sp+4*2+68],%o2
-ld [%sp+4*3+68],%o3
-call pow; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set .L626,%o0
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L627,%o0
-set V9,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-set .L628,%o0
-set Q,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L629,%o0
-call printf; nop
-set .L630,%o0
-call printf; nop
-ba .L621; nop
-.L623:
-set Z,%l3
-set Y,%l2
-ld2 [%l2],%f30
-set X,%l1
-ld2 [%l1],%f28
-fsubd %f30,%f28,%f28
-set Two,%l0
-ld2 [%l0],%f26
-fmuld %f28,%f26,%f28
-faddd %f28,%f30,%f28
-st2 %f28,[%l3]
-st2 %f30,[%l1]
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-ld2 [%l1],%f30
-set F9,%l2
-ld2 [%l2],%f28
-fsubd %f30,%f28,%f30
-set One,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f30,%f30
-faddd %f28,%f30,%f30
-st2 %f30,[%l3]
-set Z,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L631; nop
-set I,%l3
-ld [%l3],%l3
-set NoTrials,%l2
-ld [%l2],%l2
-cmp %l3,%l2; bge .L631; nop
-set I,%l3
-ld [%l3],%l2
-add %l2,1,%l2
-st %l2,[%l3]
-ba .L619; nop
-.L631:
-set X,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L633; nop
-set N,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L621; nop
-set .L637,%o0
-call printf; nop
-ba .L621; nop
-.L633:
-set X,%l3
-set U2,%l2
-ld2 [%l2],%f30
-set One,%l2
-ld2 [%l2],%f28
-faddd %f28,%f30,%f28
-st2 %f28,[%l3]
-set Y,%l2
-faddd %f30,%f30,%f30
-st2 %f30,[%l2]
-ld2 [%l2],%f30
-ld2 [%l3],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l2]
-set I,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L619; nop
-.L621:
-set Milestone,%l3
-set 150,%l2
-st %l2,[%l3]
-set .L638,%o0
-call printf; nop
-set N,%l3
-st %g0,[%l3]
-set Z,%l3
-set A1,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set C,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-std %f30,[%fp+-112]
-set A1,%l3
-ld2 [%l3],%f28
-st %f28,[%sp+4*0+68]
-st %f29,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Half,%l3
-ld2 [%l3],%f28
-ldd [%fp+-112],%f26
-fdivd %f26,%f30,%f30
-fsubd %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Q,%l3
-st2 %f30,[%l3]
-set Break,%l3
-st %g0,[%l3]
-.L639:
-set X,%l3
-set CInvrse,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-set Q,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*2+68]
-st %f31,[%sp+4*3+68]
-ld [%sp+4*2+68],%o2
-ld [%sp+4*3+68],%o3
-call pow; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Y,%l3
-st2 %f30,[%l3]
-call IsYeqX; nop
-set Q,%l3
-ld2 [%l3],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%l3]
-set X,%l2
-set C,%l1
-ld2 [%l1],%f30
-st2 %f30,[%l2]
-set Z,%l2
-ld2 [%l2],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-ld2 [%l3],%f30
-st %f30,[%sp+4*2+68]
-st %f31,[%sp+4*3+68]
-ld [%sp+4*2+68],%o2
-ld [%sp+4*3+68],%o3
-call pow; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Y,%l3
-st2 %f30,[%l3]
-call IsYeqX; nop
-set Z,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L642; nop
-set Break,%l3
-set 1,%l2
-st %l2,[%l3]
-ba .L643; nop
-.L642:
-set Z,%l3
-set AInvrse,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L643:
-.L640:
-set Break,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L639; nop
-call PrintIfNPositive; nop
-set N,%l3
-ld [%l3],%l3
-cmp %l3,0; bne .L644; nop
-set .L646,%o0
-call printf; nop
-.L644:
-set .L45,%o0
-call printf; nop
-set Milestone,%l3
-set 160,%l2
-st %l2,[%l3]
-call Pause; nop
-set .L647,%o0
-call printf; nop
-set .L648,%o0
-call printf; nop
-set Y,%l3
-set CInvrse,%l2
-ld2 [%l2],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%l3]
-set V9,%l2
-set HInvrse,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-set sigsave,%l3
-set sigfpe,%l2
-st %l2,[%l3]
-set ovfl_buf,%o0
-call setjmp; nop
-cmp %o0,0; be .L649; nop
-set I,%l3
-st %g0,[%l3]
-set V9,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L651; nop
-.L649:
-.L652:
-set Y,%l3
-set V,%l2
-ld2 [%l3],%f30
-st2 %f30,[%l2]
-set V9,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set HInvrse,%l1
-ld2 [%l1],%f30
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-.L653:
-set V9,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbul .L652; nop
-set I,%l3
-set 1,%l2
-st %l2,[%l3]
-.L651:
-set sigsave,%l3
-st %g0,[%l3]
-set Z,%l3
-set V9,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set .L655,%o0
-call printf; nop
-set .L656,%o0
-set Y,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set V9,%l3
-set Y,%l2
-ld2 [%l2],%f30
-fnegs %f30,%f28; fmovs %f31,%f29
-st2 %f28,[%l3]
-set V0,%l2
-ld2 [%l3],%f28
-st2 %f28,[%l2]
-set V,%l3
-ld2 [%l3],%f28
-fsubd %f28,%f30,%f30
-ld2 [%l2],%f26
-faddd %f28,%f26,%f28
-fcmped %f30,%f28; nop; fbne .L657; nop
-set .L659,%o0
-call printf; nop
-ba .L658; nop
-.L657:
-set .L660,%o0
-call printf; nop
-set 3,%o0
-set .L661,%o1
-call BadCond; nop
-.L658:
-set Z,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L662; nop
-set 1,%o0
-set .L158,%o1
-call BadCond; nop
-set .L664,%o0
-set Y,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-.L662:
-set I,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L665; nop
-set Y,%l3
-set V,%l2
-ld2 [%l2],%f30
-set HInvrse,%l2
-ld2 [%l2],%f28
-set U2,%l2
-ld2 [%l2],%f26
-fmuld %f28,%f26,%f24
-fsubd %f24,%f28,%f24
-fmuld %f30,%f24,%f24
-st2 %f24,[%l3]
-set Z,%l2
-ld2 [%l3],%f24
-set One,%l3
-ld2 [%l3],%f22
-fsubd %f22,%f28,%f28
-fmuld %f28,%f26,%f28
-fmuld %f28,%f30,%f30
-faddd %f24,%f30,%f30
-st2 %f30,[%l2]
-ld2 [%l2],%f30
-set V0,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L667; nop
-set Y,%l3
-set Z,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L667:
-set Y,%l3
-ld2 [%l3],%f30
-set V0,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L669; nop
-set V,%l3
-set Y,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L669:
-set V0,%l3
-ld2 [%l3],%f30
-set V,%l3
-ld2 [%l3],%f28
-fsubd %f30,%f28,%f28
-fcmped %f28,%f30; nop; fbuge .L666; nop
-set V,%l3
-set V0,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L666; nop
-.L665:
-set V,%l3
-set Y,%l2
-ld2 [%l2],%f30
-set HInvrse,%l2
-ld2 [%l2],%f28
-set U2,%l2
-ld2 [%l2],%f26
-fmuld %f28,%f26,%f24
-fsubd %f24,%f28,%f24
-fmuld %f30,%f24,%f24
-st2 %f24,[%l3]
-ld2 [%l3],%f24
-set One,%l2
-ld2 [%l2],%f22
-fsubd %f22,%f28,%f28
-fmuld %f28,%f26,%f28
-fmuld %f28,%f30,%f30
-faddd %f24,%f30,%f30
-st2 %f30,[%l3]
-.L666:
-set .L673,%o0
-set V,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set I,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L674; nop
-set .L676,%o0
-set V0,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-ba .L675; nop
-.L674:
-set .L677,%o0
-call printf; nop
-.L675:
-set V9,%l3
-set V,%l2
-ld2 [%l2],%f30
-set One,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set .L678,%o0
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set V9,%l3
-set V,%l2
-ld2 [%l2],%f30
-set One,%l2
-ld2 [%l2],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%l3]
-set .L679,%o0
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L680,%o0
-call printf; nop
-set .L681,%o0
-call printf; nop
-set Milestone,%l3
-set 170,%l2
-st %l2,[%l3]
-set V,%l3
-ld2 [%l3],%f30
-fnegs %f30,%f28; fmovs %f31,%f29
-fcmped %f28,%f30; nop; fbuge .L686; nop
-set V0,%l3
-ld2 [%l3],%f28
-fnegs %f28,%f26; fmovs %f29,%f27
-fcmped %f26,%f28; nop; fbuge .L686; nop
-set UfThold,%l3
-ld2 [%l3],%f28
-fnegs %f28,%f26; fmovs %f29,%f27
-fcmped %f26,%f30; nop; fbuge .L686; nop
-fcmped %f28,%f30; nop; fbul .L682; nop
-.L686:
-mov %g0,%o0
-set .L687,%o1
-call BadCond; nop
-set .L688,%o0
-set V,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set V0,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-set UfThold,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*5+68]
-st %f31,[%sp+4*6+68]
-ld [%sp+4*5+68],%o5
-call printf; nop
-.L682:
-set Milestone,%l3
-set 175,%l2
-st %l2,[%l3]
-set .L45,%o0
-call printf; nop
-set Indx,%l3
-set 1,%l2
-st %l2,[%l3]
-.L689:
-set Indx,%l3
-ld [%l3],%l3
-cmp %l3,1; be .L695; nop
-cmp %l3,2; be .L696; nop
-cmp %l3,3; be .L697; nop
-ba .L693; nop
-.L695:
-set Z,%l3
-set UfThold,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L694; nop
-.L696:
-set Z,%l3
-set E0,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L694; nop
-.L697:
-set Z,%l3
-set PseudoZero,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L693:
-.L694:
-set Z,%l3
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbue .L698; nop
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set V9,%l3
-st2 %f30,[%l3]
-set V9,%l3
-ld2 [%l3],%f30
-set Y,%l3
-fmuld %f30,%f30,%f30
-st2 %f30,[%l3]
-set Y,%l3
-ld2 [%l3],%f30
-set One,%l3
-ld2 [%l3],%f28
-set Radix,%l3
-ld2 [%l3],%f26
-set E9,%l3
-ld2 [%l3],%f24
-fmuld %f26,%f24,%f26
-set Z,%l3
-ld2 [%l3],%f24
-fsubd %f28,%f26,%f22
-fdivd %f30,%f22,%f22
-fcmped %f22,%f24; nop; fbul .L702; nop
-faddd %f28,%f26,%f28
-fmuld %f28,%f24,%f28
-fcmped %f30,%f28; nop; fbule .L700; nop
-.L702:
-set V9,%l3
-ld2 [%l3],%f30
-set U1,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbule .L703; nop
-set 1,%o0
-set .L158,%o1
-call BadCond; nop
-ba .L704; nop
-.L703:
-set 2,%o0
-set .L158,%o1
-call BadCond; nop
-.L704:
-set .L705,%o0
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L706,%o0
-set Y,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L700:
-.L698:
-.L690:
-set Indx,%l3
-ld [%l3],%l2
-add %l2,1,%l2
-st %l2,[%l3]
-set Indx,%l3
-ld [%l3],%l3
-cmp %l3,3; ble .L689; nop
-set Milestone,%l3
-set 180,%l2
-st %l2,[%l3]
-set Indx,%l3
-set 1,%l2
-st %l2,[%l3]
-.L707:
-set Indx,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L711; nop
-set Z,%l3
-set V,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L712; nop
-.L711:
-set Z,%l3
-set V0,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L712:
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set V9,%l3
-st2 %f30,[%l3]
-set X,%l3
-set V9,%l2
-ld2 [%l2],%f30
-set One,%l1
-ld2 [%l1],%f28
-set Radix,%l1
-ld2 [%l1],%f26
-set E9,%l1
-ld2 [%l1],%f24
-fmuld %f26,%f24,%f26
-fsubd %f28,%f26,%f28
-fmuld %f28,%f30,%f28
-st2 %f28,[%l3]
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l2]
-set V9,%l3
-ld2 [%l3],%f30
-set Z,%l3
-ld2 [%l3],%f28
-set One,%l3
-ld2 [%l3],%f26
-set Two,%l3
-ld2 [%l3],%f24
-set Radix,%l3
-ld2 [%l3],%f22
-fmuld %f24,%f22,%f24
-set E9,%l3
-ld2 [%l3],%f22
-fmuld %f24,%f22,%f24
-fsubd %f26,%f24,%f26
-fmuld %f26,%f28,%f26
-fcmped %f30,%f26; nop; fbul .L715; nop
-fcmped %f30,%f28; nop; fbule .L713; nop
-.L715:
-set Y,%l3
-set V9,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set X,%l3
-ld2 [%l3],%f30
-set W,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbuge .L716; nop
-set 1,%o0
-set .L158,%o1
-call BadCond; nop
-ba .L717; nop
-.L716:
-set 2,%o0
-set .L158,%o1
-call BadCond; nop
-.L717:
-set .L718,%o0
-set Z,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L719,%o0
-set Y,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L713:
-.L708:
-set Indx,%l3
-ld [%l3],%l2
-add %l2,1,%l2
-st %l2,[%l3]
-set Indx,%l3
-ld [%l3],%l3
-cmp %l3,2; ble .L707; nop
-set Milestone,%l3
-set 190,%l2
-st %l2,[%l3]
-call Pause; nop
-set X,%l3
-set UfThold,%l2
-ld2 [%l2],%f30
-set V,%l2
-ld2 [%l2],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%l3]
-set Radix,%l3
-ld2 [%l3],%f30
-set Y,%l3
-fmuld %f30,%f30,%f30
-st2 %f30,[%l3]
-set X,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-fmuld %f30,%f28,%f26
-set One,%l3
-ld2 [%l3],%f24
-fcmped %f26,%f24; nop; fbul .L722; nop
-fcmped %f30,%f28; nop; fbule .L720; nop
-.L722:
-set X,%l3
-ld2 [%l3],%f30
-set Y,%l3
-ld2 [%l3],%f28
-set U1,%l3
-ld2 [%l3],%f26
-fmuld %f30,%f28,%f24
-fcmped %f24,%f26; nop; fbul .L725; nop
-fdivd %f28,%f26,%f28
-fcmped %f30,%f28; nop; fbule .L723; nop
-.L725:
-set 2,%o0
-set .L726,%o1
-call BadCond; nop
-ba .L724; nop
-.L723:
-set 3,%o0
-set .L158,%o1
-call BadCond; nop
-.L724:
-set .L727,%o0
-set X,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set .L728,%o3
-call printf; nop
-.L720:
-set Milestone,%l3
-set 200,%l2
-st %l2,[%l3]
-set Indx,%l3
-set 1,%l2
-st %l2,[%l3]
-.L729:
-set X,%l3
-set F9,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set Indx,%l3
-ld [%l3],%l3
-cmp %l3,2; bl .L733; nop
-cmp %l3,5; bg .L733; nop
-sll %l3,2,%l3
-set .L739-8,%l2
-ld [%l3+%l2],%l3
-jmp %l3; nop
-.section ".rodata"
-.align 4
-.L739:
-.word .L735
-.word .L736
-.word .L737
-.word .L738
-.section ".text"
-.L735:
-set X,%l3
-set One,%l2
-ld2 [%l2],%f30
-set U2,%l2
-ld2 [%l2],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%l3]
-ba .L734; nop
-.L736:
-set X,%l3
-set V,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L734; nop
-.L737:
-set X,%l3
-set UfThold,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-ba .L734; nop
-.L738:
-set X,%l3
-set Radix,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-.L733:
-.L734:
-set Y,%l3
-set X,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set sigsave,%l3
-set sigfpe,%l2
-st %l2,[%l3]
-set ovfl_buf,%o0
-call setjmp; nop
-cmp %o0,0; be .L741; nop
-set .L743,%o0
-set X,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-ba .L742; nop
-.L741:
-set V9,%l3
-set Half,%l2
-ld2 [%l2],%f30
-set Y,%l2
-ld2 [%l2],%f28
-set X,%l2
-ld2 [%l2],%f26
-fdivd %f28,%f26,%f28
-fsubd %f28,%f30,%f28
-fsubd %f28,%f30,%f30
-st2 %f30,[%l3]
-ld2 [%l3],%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L744; nop
-ba .L730; nop
-.L744:
-set V9,%l3
-ld2 [%l3],%f30
-set U1,%l3
-ld2 [%l3],%f28
-fnegs %f28,%f28; fmovs %f29,%f29
-fcmped %f30,%f28; nop; fbne .L746; nop
-set Indx,%l3
-ld [%l3],%l3
-cmp %l3,5; bge .L746; nop
-set 3,%o0
-set .L158,%o1
-call BadCond; nop
-ba .L747; nop
-.L746:
-set 1,%o0
-set .L158,%o1
-call BadCond; nop
-.L747:
-set .L748,%o0
-set X,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L749,%o0
-set V9,%l3
-ld2 [%l3],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L742:
-set sigsave,%l3
-st %g0,[%l3]
-.L730:
-set Indx,%l3
-ld [%l3],%l2
-add %l2,1,%l2
-st %l2,[%l3]
-set Indx,%l3
-ld [%l3],%l3
-cmp %l3,5; ble .L729; nop
-set Milestone,%l3
-set 210,%l2
-st %l2,[%l3]
-set MyZero,%l3
-set Zero,%l2
-ld2 [%l2],%f30
-st2 %f30,[%l3]
-set .L45,%o0
-call printf; nop
-set .L750,%o0
-call printf; nop
-set sigsave,%l3
-set sigfpe,%l2
-st %l2,[%l3]
-set .L751,%o0
-call printf; nop
-set ovfl_buf,%o0
-call setjmp; nop
-cmp %o0,0; bne .L752; nop
-set .L754,%o0
-set One,%l3
-ld2 [%l3],%f30
-set MyZero,%l3
-ld2 [%l3],%f28
-fdivd %f30,%f28,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L752:
-set sigsave,%l3
-st %g0,[%l3]
-set sigfpe,%l2
-st %l2,[%l3]
-set .L755,%o0
-call printf; nop
-set ovfl_buf,%o0
-call setjmp; nop
-cmp %o0,0; bne .L756; nop
-set .L754,%o0
-set Zero,%l3
-ld2 [%l3],%f30
-set MyZero,%l3
-ld2 [%l3],%f28
-fdivd %f30,%f28,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L756:
-set sigsave,%l3
-st %g0,[%l3]
-set Milestone,%l3
-set 220,%l2
-st %l2,[%l3]
-call Pause; nop
-set .L45,%o0
-call printf; nop
-st %g0,[%fp+-116]
-.L763:
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-set ErrCnt,%l2
-ld [%l3+%l2],%l3
-cmp %l3,0; be .L767; nop
-set .L769,%o0
-ld [%fp+-116],%l3
-sll %l3,2,%l3
-set .758,%l2
-ld [%l3+%l2],%o1
-set ErrCnt,%l2
-ld [%l3+%l2],%o2
-call printf; nop
-.L767:
-.L764:
-ld [%fp+-116],%l3
-add %l3,1,%l3
-st %l3,[%fp+-116]
-ld [%fp+-116],%l3
-cmp %l3,4; bl .L763; nop
-set .L45,%o0
-call printf; nop
-set ErrCnt,%l3
-ld [%l3],%l3
-set ErrCnt+4,%l2
-ld [%l2],%l2
-add %l3,%l2,%l3
-set ErrCnt+8,%l2
-ld [%l2],%l2
-add %l3,%l2,%l3
-set ErrCnt+12,%l2
-ld [%l2],%l2
-add %l3,%l2,%l3
-cmp %l3,0; ble .L770; nop
-set ErrCnt,%l2
-ld [%l2],%l2
-set ErrCnt+4,%l1
-ld [%l1],%l1
-add %l2,%l1,%l2
-set ErrCnt+8,%l1
-ld [%l1],%l1
-add %l2,%l1,%l2
-cmp %l2,%g0; bne .L775; nop
-set ErrCnt+12,%l2
-ld [%l2],%l2
-cmp %l2,%g0; ble .L775; nop
-set .L780,%o0
-call printf; nop
-set .L781,%o0
-call printf; nop
-.L775:
-set ErrCnt,%l2
-ld [%l2],%l2
-set ErrCnt+4,%l1
-ld [%l1],%l1
-add %l2,%l1,%l2
-cmp %l2,%g0; bne .L782; nop
-set ErrCnt+8,%l2
-ld [%l2],%l2
-cmp %l2,%g0; ble .L782; nop
-set .L786,%o0
-call printf; nop
-set .L787,%o0
-call printf; nop
-.L782:
-set ErrCnt,%l3
-ld [%l3],%l3
-set ErrCnt+4,%l2
-ld [%l2],%l2
-add %l3,%l2,%l3
-cmp %l3,0; ble .L788; nop
-set .L791,%o0
-call printf; nop
-set .L792,%o0
-call printf; nop
-.L788:
-set ErrCnt,%l3
-ld [%l3],%l3
-cmp %l3,0; ble .L771; nop
-set .L795,%o0
-call printf; nop
-set .L796,%o0
-call printf; nop
-ba .L771; nop
-.L770:
-set .L797,%o0
-call printf; nop
-set RMult,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L802; nop
-set RDiv,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L802; nop
-set RAddSub,%l3
-ld [%l3],%l3
-cmp %l3,1; bne .L802; nop
-set RSqrt,%l3
-ld [%l3],%l3
-cmp %l3,1; be .L798; nop
-.L802:
-set .L803,%o0
-call printf; nop
-ba .L799; nop
-.L798:
-set One,%l3
-ld2 [%l3],%f30
-set StickyBit,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbul .L804; nop
-set Radix,%l3
-ld2 [%l3],%f28
-set Two,%l3
-ld2 [%l3],%f26
-fsubd %f28,%f26,%f26
-set Nine,%l3
-ld2 [%l3],%f24
-fsubd %f28,%f24,%f28
-fsubd %f28,%f30,%f30
-fmuld %f26,%f30,%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L804; nop
-set .L806,%o0
-call printf; nop
-set .L807,%o0
-call printf; nop
-set Two,%l3
-ld2 [%l3],%f30
-set Radix,%l3
-ld2 [%l3],%f28
-fcmped %f28,%f30; nop; fbne .L808; nop
-set Precision,%l3
-ld2 [%l3],%f28
-set TwentySeven,%l3
-ld2 [%l3],%f26
-set Four,%l3
-ld2 [%l3],%f24
-set Three,%l3
-ld2 [%l3],%f22
-fmuld %f24,%f22,%f24
-fmuld %f24,%f30,%f30
-fsubd %f28,%f30,%f30
-fsubd %f28,%f26,%f28
-fsubd %f28,%f26,%f28
-set One,%l3
-ld2 [%l3],%f26
-faddd %f28,%f26,%f28
-fmuld %f30,%f28,%f30
-set Zero,%l3
-ld2 [%l3],%f28
-fcmped %f30,%f28; nop; fbne .L808; nop
-set .L810,%o0
-call printf; nop
-ba .L809; nop
-.L808:
-set .L811,%o0
-call printf; nop
-.L809:
-set IEEE,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L812; nop
-set .L814,%o0
-call printf; nop
-ba .L813; nop
-.L812:
-set .L815,%o0
-call printf; nop
-set .L816,%o0
-call printf; nop
-.L813:
-.L804:
-set .L817,%o0
-call printf; nop
-.L799:
-.L771:
-set fpecount,%l3
-ld [%l3],%l3
-cmp %l3,0; be .L818; nop
-set .L820,%o0
-set fpecount,%l3
-ld [%l3],%o1
-call printf; nop
-.L818:
-set .L821,%o0
-call printf; nop
-mov %g0,%i0
-.L7:
-ret; restore
-.type main,#function
-.size main,.-main
-.global Sign
-.align 4
-Sign:
-save %sp,-104,%sp
-st %r24,[%fp+68]
-st %r25,[%fp+72]
-ld2 [%fp+68],%f30
-set .L8,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbul .L824; nop
-set .L9,%i5
-ld2 [%i5],%f30
-std %f30,[%fp+-8]
-ba .L825; nop
-.L824:
-set .L826,%i5
-ld2 [%i5],%f30
-std %f30,[%fp+-8]
-.L825:
-ldd [%fp+-8],%f0
-.L822:
-ret; restore
-.type Sign,#function
-.size Sign,.-Sign
-.global Pause
-.align 4
-Pause:
-save %sp,-96,%sp
-set .L828,%o0
-set Milestone,%i5
-ld [%i5],%o1
-call printf; nop
-set .L829,%o0
-set PageNo,%i5
-ld [%i5],%o1
-call printf; nop
-set Milestone,%i5
-ld [%i5],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-set PageNo,%i5
-ld [%i5],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-mov %g0,%i0
-.L827:
-ret; restore
-.type Pause,#function
-.size Pause,.-Pause
-.global TstCond
-.align 4
-TstCond:
-save %sp,-96,%sp
-cmp %i1,0; bne .L831; nop
-mov %i0,%o0
-mov %i2,%o1
-call BadCond; nop
-set .L814,%o0
-call printf; nop
-.L831:
-mov %g0,%i0
-.L830:
-ret; restore
-.type TstCond,#function
-.size TstCond,.-TstCond
-.section ".data"
-.type .834,#object
-.align 4
-.834:
-.word .L835
-.word .L836
-.word .L837
-.word .L838
-.size .834,16
-.global BadCond
-.section ".text"
-.align 4
-BadCond:
-save %sp,-96,%sp
-sll %i0,2,%i5
-set ErrCnt,%i4
-add %i5,%i4,%i5
-ld [%i5],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-set .L839,%o0
-sll %i0,2,%i5
-set .834,%i4
-ld [%i5+%i4],%o1
-mov %i1,%o2
-call printf; nop
-mov %g0,%i0
-.L833:
-ret; restore
-.type BadCond,#function
-.size BadCond,.-BadCond
-.global Random
-.align 4
-Random:
-save %sp,-120,%sp
-set Random1,%i5
-ld2 [%i5],%f30
-set Random9,%i5
-ld2 [%i5],%f28
-faddd %f30,%f28,%f30
-std %f30,[%fp+-8]
-ldd [%fp+-8],%f30
-fmuld %f30,%f30,%f28
-std %f28,[%fp+-16]
-ldd [%fp+-16],%f28
-fmuld %f28,%f28,%f28
-std %f28,[%fp+-16]
-ldd [%fp+-16],%f28
-fmuld %f30,%f28,%f30
-std %f30,[%fp+-8]
-ldd [%fp+-8],%f30
-std %f30,[%fp+-24]
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ldd [%fp+-24],%f28
-fsubd %f28,%f30,%f30
-std %f30,[%fp+-16]
-set Random1,%i5
-ldd [%fp+-16],%f30
-set .L841,%i4
-ld2 [%i4],%f28
-ldd [%fp+-8],%f26
-fmuld %f28,%f26,%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%i5]
-ld2 [%i5],%f0
-.L840:
-ret; restore
-.type Random,#function
-.size Random,.-Random
-.global SqXMinX
-.align 4
-SqXMinX:
-save %sp,-112,%sp
-set X,%i5
-ld2 [%i5],%f30
-set BInvrse,%i5
-ld2 [%i5],%f28
-fmuld %f30,%f28,%f28
-std %f28,[%fp+-8]
-ldd [%fp+-8],%f28
-fsubd %f30,%f28,%f28
-std %f28,[%fp+-16]
-fmuld %f30,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set SqEr,%i5
-ldd [%fp+-8],%f28
-fsubd %f30,%f28,%f30
-ldd [%fp+-16],%f28
-fsubd %f30,%f28,%f30
-set OneUlp,%i4
-ld2 [%i4],%f28
-fdivd %f30,%f28,%f30
-st2 %f30,[%i5]
-set SqEr,%i5
-ld2 [%i5],%f30
-set Zero,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbue .L843; nop
-set SqEr,%i5
-ld2 [%i5],%f30
-set MinSqEr,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbuge .L845; nop
-set MinSqEr,%i5
-set SqEr,%i4
-ld2 [%i4],%f30
-st2 %f30,[%i5]
-.L845:
-set SqEr,%i5
-ld2 [%i5],%f30
-set MaxSqEr,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbule .L847; nop
-set MaxSqEr,%i5
-set SqEr,%i4
-ld2 [%i4],%f30
-st2 %f30,[%i5]
-.L847:
-set J,%i5
-ld2 [%i5],%f30
-set .L9,%i4
-ld2 [%i4],%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%i5]
-mov %i0,%o0
-set .L45,%o1
-call BadCond; nop
-set .L849,%o0
-set X,%i5
-ld2 [%i5],%f30
-fmuld %f30,%f30,%f28
-st %f28,[%sp+4*1+68]
-st %f29,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-set OneUlp,%i5
-ld2 [%i5],%f30
-set SqEr,%i5
-ld2 [%i5],%f28
-fmuld %f30,%f28,%f30
-st %f30,[%sp+4*5+68]
-st %f31,[%sp+4*6+68]
-ld [%sp+4*5+68],%o5
-call printf; nop
-set .L850,%o0
-call printf; nop
-.L843:
-mov %g0,%i0
-.L842:
-ret; restore
-.type SqXMinX,#function
-.size SqXMinX,.-SqXMinX
-.global NewD
-.align 4
-NewD:
-save %sp,-96,%sp
-set X,%i5
-set Z1,%i4
-ld2 [%i4],%f30
-set Q,%i4
-ld2 [%i4],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%i5]
-set Half,%i4
-ld2 [%i4],%f30
-ld2 [%i5],%f28
-set Radix,%i4
-ld2 [%i4],%f26
-fdivd %f28,%f26,%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call floor; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Radix,%i4
-ld2 [%i4],%f28
-set X,%i4
-fmuld %f30,%f28,%f30
-ld2 [%i4],%f26
-faddd %f30,%f26,%f30
-st2 %f30,[%i5]
-set Q,%i5
-ld2 [%i4],%f30
-set Z,%i4
-ld2 [%i4],%f26
-set D,%i3
-ld2 [%i3],%f24
-ld2 [%i5],%f22
-fmuld %f30,%f26,%f20
-fsubd %f22,%f20,%f22
-fdivd %f22,%f28,%f22
-fmuld %f30,%f30,%f20
-fdivd %f24,%f28,%f28
-fmuld %f20,%f28,%f28
-faddd %f22,%f28,%f28
-st2 %f28,[%i5]
-set Two,%i5
-ld2 [%i5],%f28
-fmuld %f28,%f30,%f30
-fmuld %f30,%f24,%f30
-fsubd %f26,%f30,%f30
-st2 %f30,[%i4]
-ld2 [%i4],%f30
-set Zero,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbug .L852; nop
-set Z,%i5
-ld2 [%i5],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%i5]
-set Z1,%i5
-ld2 [%i5],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%i5]
-.L852:
-set D,%i5
-set Radix,%i4
-ld2 [%i4],%f30
-ld2 [%i5],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%i5]
-mov %g0,%i0
-.L851:
-ret; restore
-.type NewD,#function
-.size NewD,.-NewD
-.global SR3750
-.align 4
-SR3750:
-save %sp,-96,%sp
-set X,%i5
-ld2 [%i5],%f30
-set Radix,%i5
-ld2 [%i5],%f28
-set Z2,%i5
-ld2 [%i5],%f26
-fsubd %f30,%f28,%f24
-fsubd %f26,%f28,%f28
-fcmped %f24,%f28; nop; fbul .L855; nop
-fsubd %f30,%f26,%f30
-set W,%i5
-ld2 [%i5],%f28
-fsubd %f28,%f26,%f28
-fcmped %f30,%f28; nop; fbug .L855; nop
-set I,%i5
-ld [%i5],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-set X,%i5
-ld2 [%i5],%f30
-set D,%i5
-ld2 [%i5],%f28
-fmuld %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call sqrt; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set X2,%i5
-st2 %f30,[%i5]
-set Y2,%i5
-set X2,%i4
-set Z2,%i3
-ld2 [%i3],%f30
-set Y,%i3
-ld2 [%i3],%f28
-ld2 [%i4],%f26
-fsubd %f26,%f30,%f26
-fsubd %f28,%f30,%f30
-fsubd %f26,%f30,%f30
-st2 %f30,[%i5]
-set Half,%i3
-ld2 [%i3],%f30
-set X8,%i3
-ld2 [%i3],%f26
-fsubd %f28,%f30,%f28
-fdivd %f26,%f28,%f28
-st2 %f28,[%i4]
-ld2 [%i4],%f28
-fmuld %f30,%f28,%f26
-fmuld %f26,%f28,%f26
-fsubd %f28,%f26,%f28
-st2 %f28,[%i4]
-set SqEr,%i3
-ld2 [%i5],%f28
-faddd %f28,%f30,%f28
-ld2 [%i4],%f26
-fsubd %f30,%f26,%f30
-faddd %f28,%f30,%f30
-st2 %f30,[%i3]
-ld2 [%i3],%f30
-set MinSqEr,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbuge .L857; nop
-set MinSqEr,%i5
-set SqEr,%i4
-ld2 [%i4],%f30
-st2 %f30,[%i5]
-.L857:
-set SqEr,%i5
-set Y2,%i4
-ld2 [%i4],%f30
-set X2,%i4
-ld2 [%i4],%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%i5]
-ld2 [%i5],%f30
-set MaxSqEr,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbule .L859; nop
-set MaxSqEr,%i5
-set SqEr,%i4
-ld2 [%i4],%f30
-st2 %f30,[%i5]
-.L859:
-.L855:
-mov %g0,%i0
-.L854:
-ret; restore
-.type SR3750,#function
-.size SR3750,.-SR3750
-.global IsYeqX
-.align 4
-IsYeqX:
-save %sp,-96,%sp
-set Y,%i5
-ld2 [%i5],%f30
-set X,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbue .L862; nop
-set N,%i5
-ld [%i5],%i5
-cmp %i5,0; bg .L864; nop
-set Zero,%i5
-ld2 [%i5],%f30
-set Z,%i5
-ld2 [%i5],%f28
-fcmped %f28,%f30; nop; fbne .L866; nop
-set Q,%i5
-ld2 [%i5],%f28
-fcmped %f28,%f30; nop; fbug .L866; nop
-set .L868,%o0
-call printf; nop
-ba .L867; nop
-.L866:
-set 2,%o0
-set .L869,%o1
-call BadCond; nop
-.L867:
-set .L870,%o0
-set Z,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-set Q,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-call printf; nop
-set .L871,%o0
-set Y,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L872,%o0
-set X,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L873,%o0
-set Y,%i5
-ld2 [%i5],%f30
-set X,%i5
-ld2 [%i5],%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L864:
-set N,%i5
-ld [%i5],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-.L862:
-mov %g0,%i0
-.L861:
-ret; restore
-.type IsYeqX,#function
-.size IsYeqX,.-IsYeqX
-.global SR3980
-.align 4
-SR3980:
-save %sp,-96,%sp
-.L875:
-set Q,%i5
-set I,%i4
-ld [%i4],%i4
-st %i4,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
-st2 %f30,[%i5]
-set Z,%i4
-ld2 [%i4],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-ld2 [%i5],%f30
-st %f30,[%sp+4*2+68]
-st %f31,[%sp+4*3+68]
-ld [%sp+4*2+68],%o2
-ld [%sp+4*3+68],%o3
-call pow; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Y,%i5
-st2 %f30,[%i5]
-call IsYeqX; nop
-set I,%i5
-ld [%i5],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-set M,%i5
-ld [%i5],%i5
-cmp %i4,%i5; ble .L878; nop
-ba .L877; nop
-.L878:
-set X,%i5
-set Z,%i4
-ld2 [%i4],%f30
-ld2 [%i5],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%i5]
-.L876:
-set X,%i5
-ld2 [%i5],%f30
-set W,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbul .L875; nop
-.L877:
-mov %g0,%i0
-.L874:
-ret; restore
-.type SR3980,#function
-.size SR3980,.-SR3980
-.global PrintIfNPositive
-.align 4
-PrintIfNPositive:
-save %sp,-96,%sp
-set N,%i5
-ld [%i5],%i5
-cmp %i5,0; ble .L881; nop
-set .L883,%o0
-set N,%i5
-ld [%i5],%o1
-call printf; nop
-.L881:
-mov %g0,%i0
-.L880:
-ret; restore
-.type PrintIfNPositive,#function
-.size PrintIfNPositive,.-PrintIfNPositive
-.global TstPtUf
-.align 4
-TstPtUf:
-save %sp,-96,%sp
-set N,%i5
-st %g0,[%i5]
-set Z,%i5
-ld2 [%i5],%f30
-set Zero,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbue .L885; nop
-set .L887,%o0
-call printf; nop
-set .L888,%o0
-call printf; nop
-set sigsave,%i5
-set sigfpe,%i4
-st %i4,[%i5]
-set ovfl_buf,%o0
-call setjmp; nop
-cmp %o0,0; be .L889; nop
-ba .L891; nop
-.L889:
-set Q9,%i5
-set Z,%i4
-ld2 [%i4],%f30
-faddd %f30,%f30,%f28
-fdivd %f28,%f30,%f30
-st2 %f30,[%i5]
-set .L892,%o0
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set Q9,%i5
-ld2 [%i5],%f30
-set Two,%i5
-ld2 [%i5],%f28
-fsubd %f30,%f28,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call fabs; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-set Radix,%i5
-ld2 [%i5],%f28
-set U2,%i5
-ld2 [%i5],%f26
-fmuld %f28,%f26,%f28
-fcmped %f30,%f28; nop; fbuge .L893; nop
-set .L895,%o0
-call printf; nop
-set .L896,%o0
-call printf; nop
-ba .L894; nop
-.L893:
-set Q9,%i5
-ld2 [%i5],%f30
-set One,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbul .L899; nop
-set Two,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbule .L897; nop
-.L899:
-.L891:
-set 1,%i5
-set N,%i4
-st %i5,[%i4]
-set ErrCnt+4,%i5
-set ErrCnt+4,%i4
-ld [%i4],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-set .L902,%o0
-call printf; nop
-ba .L898; nop
-.L897:
-set 1,%i5
-set N,%i4
-st %i5,[%i4]
-set ErrCnt+8,%i5
-set ErrCnt+8,%i4
-ld [%i4],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-set .L905,%o0
-call printf; nop
-.L898:
-.L894:
-set sigsave,%i5
-st %g0,[%i5]
-set V9,%i5
-set Z,%i4
-ld2 [%i4],%f30
-set One,%i4
-ld2 [%i4],%f28
-fmuld %f30,%f28,%f26
-st2 %f26,[%i5]
-set Random1,%i4
-ld2 [%i5],%f26
-st2 %f26,[%i4]
-fmuld %f28,%f30,%f26
-st2 %f26,[%i5]
-set Random2,%i4
-ld2 [%i5],%f26
-st2 %f26,[%i4]
-fdivd %f30,%f28,%f30
-st2 %f30,[%i5]
-set Z,%i5
-ld2 [%i5],%f30
-set Random1,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbne .L906; nop
-set Random2,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbne .L906; nop
-set V9,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbne .L906; nop
-set N,%i5
-ld [%i5],%i5
-cmp %i5,0; ble .L907; nop
-call Pause; nop
-ba .L907; nop
-.L906:
-set N,%i5
-set 1,%i4
-st %i4,[%i5]
-set 2,%o0
-set .L910,%o1
-call BadCond; nop
-set .L911,%o0
-set Z,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set Z,%i5
-ld2 [%i5],%f30
-set Random1,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbue .L912; nop
-set .L914,%o0
-set Random1,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L912:
-set Random2,%i5
-ld2 [%i5],%f30
-set Z,%i5
-ld2 [%i5],%f28
-fcmped %f28,%f30; nop; fbue .L915; nop
-set Random1,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbue .L915; nop
-set .L917,%o0
-set Random2,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L915:
-set Z,%i5
-ld2 [%i5],%f30
-set V9,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbue .L918; nop
-set .L920,%o0
-set V9,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L918:
-set Random2,%i5
-ld2 [%i5],%f30
-set Random1,%i5
-ld2 [%i5],%f28
-fcmped %f30,%f28; nop; fbue .L921; nop
-set ErrCnt+8,%i5
-set ErrCnt+8,%i4
-ld [%i4],%i4
-add %i4,1,%i4
-st %i4,[%i5]
-set 2,%o0
-set .L925,%o1
-call BadCond; nop
-set .L926,%o0
-set Random2,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-set .L927,%o0
-set Random1,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-.L921:
-call Pause; nop
-.L907:
-.L885:
-mov %g0,%i0
-.L884:
-ret; restore
-.type TstPtUf,#function
-.size TstPtUf,.-TstPtUf
-.global notify
-.align 4
-notify:
-save %sp,-96,%sp
-set .L929,%o0
-mov %i0,%o1
-call printf; nop
-set .L930,%o0
-call printf; nop
-mov %g0,%i0
-.L928:
-ret; restore
-.type notify,#function
-.size notify,.-notify
-.global msglist
-.align 4
-msglist:
-save %sp,-96,%sp
-ba .L933; nop
-.L932:
-set .L935,%o0
-mov %i0,%i5
-add %i5,4,%i0
-ld [%i5],%o1
-call printf; nop
-.L933:
-ld [%i0],%i5
-cmp %i5,%g0; bne .L932; nop
-mov %g0,%i0
-.L931:
-ret; restore
-.type msglist,#function
-.size msglist,.-msglist
-.section ".data"
-.type .937,#object
-.align 4
-.937:
-.word .L938
-.word .L939
-.word .L940
-.word .L941
-.word .L942
-.word .L943
-.word .L944
-.word .L945
-.word .L946
-.word 0x0
-.size .937,40
-.global Instructions
-.section ".text"
-.align 4
-Instructions:
-save %sp,-96,%sp
-set .937,%o0
-call msglist; nop
-mov %g0,%i0
-.L936:
-ret; restore
-.type Instructions,#function
-.size Instructions,.-Instructions
-.section ".data"
-.type .948,#object
-.align 4
-.948:
-.word .L949
-.word .L950
-.word .L951
-.word .L952
-.word .L953
-.word .L954
-.word .L955
-.word .L956
-.word .L957
-.word .L958
-.word .L959
-.word .L960
-.word .L961
-.word .L962
-.word 0x0
-.size .948,60
-.global Heading
-.section ".text"
-.align 4
-Heading:
-save %sp,-96,%sp
-set .948,%o0
-call msglist; nop
-mov %g0,%i0
-.L947:
-ret; restore
-.type Heading,#function
-.size Heading,.-Heading
-.section ".data"
-.type .964,#object
-.align 4
-.964:
-.word .L965
-.word .L966
-.word .L967
-.word .L968
-.word .L969
-.word .L970
-.word .L971
-.word .L972
-.word .L973
-.word .L974
-.word .L975
-.word .L976
-.word .L977
-.word .L978
-.word .L979
-.word .L980
-.word .L981
-.word .L982
-.word .L983
-.word 0x0
-.size .964,80
-.global Characteristics
-.section ".text"
-.align 4
-Characteristics:
-save %sp,-96,%sp
-set .964,%o0
-call msglist; nop
-mov %g0,%i0
-.L963:
-ret; restore
-.type Characteristics,#function
-.size Characteristics,.-Characteristics
-.section ".data"
-.type .985,#object
-.align 4
-.985:
-.word .L986
-.word .L987
-.word .L988
-.word .L989
-.word .L990
-.word .L991
-.word .L992
-.word .L993
-.word .L994
-.word .L995
-.word .L996
-.word .L997
-.word .L998
-.word .L999
-.word .L1000
-.word .L1001
-.word .L1002
-.word 0x0
-.size .985,72
-.global History
-.section ".text"
-.align 4
-History:
-save %sp,-96,%sp
-set .985,%o0
-call msglist; nop
-mov %g0,%i0
-.L984:
-ret; restore
-.type History,#function
-.size History,.-History
-.global pow
-.align 4
-pow:
-save %sp,-120,%sp
-st %r24,[%fp+68]
-st %r25,[%fp+72]
-st %r26,[%fp+76]
-st %r27,[%fp+80]
-mov %g0,%i4
-mov %g0,%i3
-ld2 [%fp+76],%f30
-set .L8,%i2
-ld2 [%i2],%f28
-fcmped %f30,%f28; nop; fbne .L1004; nop
-set .L9,%i2
-ld2 [%i2],%f0
-ba .L1003; nop
-.L1004:
-ld2 [%fp+76],%f30
-set .L1009,%i2
-ld2 [%i2],%f28
-fcmped %f30,%f28; nop; fbul .L1008; nop
-set .L1010,%i2
-ld2 [%i2],%f28
-fcmped %f30,%f28; nop; fbule .L1006; nop
-.L1008:
-ld2 [%fp+68],%f30
-set .L826,%i2
-ld2 [%i2],%f28
-fcmped %f30,%f28; nop; fbue .L1006; nop
-ld2 [%fp+68],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ld2 [%fp+76],%f28
-fmuld %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call exp; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-fmovs %f30,%f0; fmovs %f31,%f1
-ba .L1003; nop
-.L1006:
-ld2 [%fp+76],%f30
-set .L8,%i2
-ld2 [%i2],%f28
-fcmped %f30,%f28; nop; fbuge .L1011; nop
-ld2 [%fp+76],%f30
-fnegs %f30,%f30; fmovs %f31,%f31
-st2 %f30,[%fp+76]
-set 1,%i3
-.L1011:
-ld2 [%fp+76],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-add -24,%fp,%o2
-call modf; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-st2 %f30,[%fp+76]
-ld2 [%fp+76],%f30
-set .L8,%i2
-ld2 [%i2],%f28
-fcmped %f30,%f28; nop; fbue .L1013; nop
-ld2 [%fp+68],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call log; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-ld2 [%fp+76],%f28
-fmuld %f28,%f30,%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-call exp; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-std %f30,[%fp+-16]
-ba .L1014; nop
-.L1013:
-set .L9,%i2
-ld2 [%i2],%f30
-std %f30,[%fp+-16]
-.L1014:
-ld2 [%fp+68],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-add -4,%fp,%o2
-call frexp; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-st2 %f30,[%fp+68]
-ldd [%fp+-24],%f30
-fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i2
-mov %i2,%i5
-cmp %i2,0; be .L1015; nop
-.L1017:
-and %i5,1,%i2
-cmp %i2,0; be .L1021; nop
-ldd [%fp+-16],%f30
-ld2 [%fp+68],%f28
-fmuld %f30,%f28,%f30
-std %f30,[%fp+-16]
-ld [%fp+-4],%i2
-add %i4,%i2,%i4
-.L1021:
-sra %i5,1,%i2
-mov %i2,%i5
-cmp %i2,0; bne .L1023; nop
-ba .L1019; nop
-.L1023:
-ld2 [%fp+68],%f30
-fmuld %f30,%f30,%f30
-st2 %f30,[%fp+68]
-ld [%fp+-4],%i2
-sll %i2,1,%i2
-st %i2,[%fp+-4]
-ld2 [%fp+68],%f30
-set .L1027,%i2
-ld2 [%i2],%f28
-fcmped %f30,%f28; nop; fbuge .L1017; nop
-set .L1028,%i2
-ld2 [%i2],%f30
-ld2 [%fp+68],%f28
-fmuld %f30,%f28,%f30
-st2 %f30,[%fp+68]
-ld [%fp+-4],%i2
-sub %i2,1,%i2
-st %i2,[%fp+-4]
-ba .L1017; nop
-.L1019:
-.L1015:
-cmp %i3,0; be .L1029; nop
-set .L9,%i2
-ld2 [%i2],%f30
-ldd [%fp+-16],%f28
-fdivd %f30,%f28,%f30
-std %f30,[%fp+-16]
-neg %i4,%i4
-.L1029:
-ldd [%fp+-16],%f30
-st %f30,[%sp+4*0+68]
-st %f31,[%sp+4*1+68]
-ld [%sp+4*0+68],%o0
-ld [%sp+4*1+68],%o1
-mov %i4,%o2
-call ldexp; nop
-fmovs %f0,%f30; fmovs %f1,%f31
-fmovs %f30,%f0; fmovs %f31,%f1
-.L1003:
-ret; restore
-.type pow,#function
-.size pow,.-pow
-.section ".bss"
-.global UfNGrad
-.type UfNGrad,#object
-.size UfNGrad,4
-.common UfNGrad,4,4
-.global SqRWrng
-.type SqRWrng,#object
-.size SqRWrng,4
-.common SqRWrng,4,4
-.global IEEE
-.type IEEE,#object
-.size IEEE,4
-.common IEEE,4,4
-.global Anomaly
-.type Anomaly,#object
-.size Anomaly,4
-.common Anomaly,4,4
-.global Monot
-.type Monot,#object
-.size Monot,4
-.common Monot,4,4
-.global NotMonot
-.type NotMonot,#object
-.size NotMonot,4
-.common NotMonot,4,4
-.global Done
-.type Done,#object
-.size Done,4
-.common Done,4,4
-.global Break
-.type Break,#object
-.size Break,4
-.common Break,4,4
-.global RSqrt
-.type RSqrt,#object
-.size RSqrt,4
-.common RSqrt,4,4
-.global RAddSub
-.type RAddSub,#object
-.size RAddSub,4
-.common RAddSub,4,4
-.global RDiv
-.type RDiv,#object
-.size RDiv,4
-.common RDiv,4,4
-.global RMult
-.type RMult,#object
-.size RMult,4
-.common RMult,4,4
-.global GAddSub
-.type GAddSub,#object
-.size GAddSub,4
-.common GAddSub,4,4
-.global GDiv
-.type GDiv,#object
-.size GDiv,4
-.common GDiv,4,4
-.global GMult
-.type GMult,#object
-.size GMult,4
-.common GMult,4,4
-.global N1
-.type N1,#object
-.size N1,4
-.common N1,4,4
-.global N
-.type N,#object
-.size N,4
-.common N,4,4
-.global M
-.type M,#object
-.size M,4
-.common M,4,4
-.global PageNo
-.type PageNo,#object
-.size PageNo,4
-.common PageNo,4,4
-.global Milestone
-.type Milestone,#object
-.size Milestone,4
-.common Milestone,4,4
-.global fpecount
-.type fpecount,#object
-.size fpecount,4
-.common fpecount,4,4
-.global ErrCnt
-.type ErrCnt,#object
-.size ErrCnt,16
-.common ErrCnt,16,4
-.global Z9
-.type Z9,#object
-.size Z9,8
-.common Z9,8,8
-.global Z2
-.type Z2,#object
-.size Z2,8
-.common Z2,8,8
-.global Z1
-.type Z1,#object
-.size Z1,8
-.common Z1,8,8
-.global PseudoZero
-.type PseudoZero,#object
-.size PseudoZero,8
-.common PseudoZero,8,8
-.global Z
-.type Z,#object
-.size Z,8
-.common Z,8,8
-.global Random2
-.type Random2,#object
-.size Random2,8
-.common Random2,8,8
-.global Y2
-.type Y2,#object
-.size Y2,8
-.common Y2,8,8
-.global Y1
-.type Y1,#object
-.size Y1,8
-.common Y1,8,8
-.global Y
-.type Y,#object
-.size Y,8
-.common Y,8,8
-.global Random1
-.type Random1,#object
-.size Random1,8
-.common Random1,8,8
-.global X8
-.type X8,#object
-.size X8,8
-.common X8,8,8
-.global X2
-.type X2,#object
-.size X2,8
-.common X2,8,8
-.global X1
-.type X1,#object
-.size X1,8
-.common X1,8,8
-.global X
-.type X,#object
-.size X,8
-.common X,8,8
-.global W
-.type W,#object
-.size W,8
-.common W,8,8
-.global V9
-.type V9,#object
-.size V9,8
-.common V9,8,8
-.global V0
-.type V0,#object
-.size V0,8
-.common V0,8,8
-.global V
-.type V,#object
-.size V,8
-.common V,8,8
-.global U2
-.type U2,#object
-.size U2,8
-.common U2,8,8
-.global U1
-.type U1,#object
-.size U1,8
-.common U1,8,8
-.global UfThold
-.type UfThold,#object
-.size UfThold,8
-.common UfThold,8,8
-.global OneUlp
-.type OneUlp,#object
-.size OneUlp,8
-.common OneUlp,8,8
-.global S
-.type S,#object
-.size S,8
-.common S,8,8
-.global Underflow
-.type Underflow,#object
-.size Underflow,8
-.common Underflow,8,8
-.global T
-.type T,#object
-.size T,8
-.common T,8,8
-.global Random9
-.type Random9,#object
-.size Random9,8
-.common Random9,8,8
-.global R
-.type R,#object
-.size R,8
-.common R,8,8
-.global Q9
-.type Q9,#object
-.size Q9,8
-.common Q9,8,8
-.global Q
-.type Q,#object
-.size Q,8
-.common Q,8,8
-.global Precision
-.type Precision,#object
-.size Precision,8
-.common Precision,8,8
-.global MyZero
-.type MyZero,#object
-.size MyZero,8
-.common MyZero,8,8
-.global J
-.type J,#object
-.size J,8
-.common J,8,8
-.global StickyBit
-.type StickyBit,#object
-.size StickyBit,8
-.common StickyBit,8,8
-.global I
-.type I,#object
-.size I,4
-.common I,4,4
-.global HInvrse
-.type HInvrse,#object
-.size HInvrse,8
-.common HInvrse,8,8
-.global H
-.type H,#object
-.size H,8
-.common H,8,8
-.global F9
-.type F9,#object
-.size F9,8
-.common F9,8,8
-.global F6
-.type F6,#object
-.size F6,8
-.common F6,8,8
-.global Third
-.type Third,#object
-.size Third,8
-.common Third,8,8
-.global E9
-.type E9,#object
-.size E9,8
-.common E9,8,8
-.global MaxSqEr
-.type MaxSqEr,#object
-.size MaxSqEr,8
-.common MaxSqEr,8,8
-.global SqEr
-.type SqEr,#object
-.size SqEr,8
-.common SqEr,8,8
-.global MinSqEr
-.type MinSqEr,#object
-.size MinSqEr,8
-.common MinSqEr,8,8
-.global E3
-.type E3,#object
-.size E3,8
-.common E3,8,8
-.global Exp2
-.type Exp2,#object
-.size Exp2,8
-.common Exp2,8,8
-.global E1
-.type E1,#object
-.size E1,8
-.common E1,8,8
-.global E0
-.type E0,#object
-.size E0,8
-.common E0,8,8
-.global FourD
-.type FourD,#object
-.size FourD,8
-.common FourD,8,8
-.global D
-.type D,#object
-.size D,8
-.common D,8,8
-.global CInvrse
-.type CInvrse,#object
-.size CInvrse,8
-.common CInvrse,8,8
-.global C
-.type C,#object
-.size C,8
-.common C,8,8
-.global A1
-.type A1,#object
-.size A1,8
-.common A1,8,8
-.global AInvrse
-.type AInvrse,#object
-.size AInvrse,8
-.common AInvrse,8,8
-.global ch
-.type ch,#object
-.size ch,8
-.common ch,8,1
-.global Indx
-.type Indx,#object
-.size Indx,4
-.common Indx,4,4
-.global BMinusU2
-.type BMinusU2,#object
-.size BMinusU2,8
-.common BMinusU2,8,8
-.global RadixD2
-.type RadixD2,#object
-.size RadixD2,8
-.common RadixD2,8,8
-.global BInvrse
-.type BInvrse,#object
-.size BInvrse,8
-.common BInvrse,8,8
-.global Radix
-.type Radix,#object
-.size Radix,8
-.common Radix,8,8
-.global sigsave
-.type sigsave,#object
-.size sigsave,4
-.common sigsave,4,4
-.global ovfl_buf
-.type ovfl_buf,#object
-.size ovfl_buf,48
-.common ovfl_buf,48,4
-.section ".rodata"
-.align 8
-.L1028:
-.word 0x40000000
-.word 0x0
-.align 8
-.L1027:
-.word 0x3fe00000
-.word 0x0
-.align 8
-.L1010:
-.word 0x40913000
-.word 0x0
-.align 8
-.L1009:
-.word 0xc0913000
-.word 0x0
-.align 1
-.L1002:
-.byte 115
-.byte 101
-.byte 101
-.byte 32
-.byte 115
-.byte 111
-.byte 117
-.byte 114
-.byte 99
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 109
-.byte 111
-.byte 114
-.byte 101
-.byte 32
-.byte 104
-.byte 105
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 46
-.byte 0
-.align 1
-.L1001:
-.byte 66
-.byte 65
-.byte 83
-.byte 73
-.byte 67
-.byte 32
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 40
-.byte 67
-.byte 41
-.byte 32
-.byte 49
-.byte 57
-.byte 56
-.byte 51
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 80
-.byte 114
-.byte 111
-.byte 102
-.byte 46
-.byte 32
-.byte 87
-.byte 46
-.byte 32
-.byte 77
-.byte 46
-.byte 32
-.byte 75
-.byte 97
-.byte 104
-.byte 97
-.byte 110
-.byte 59
-.byte 0
-.align 1
-.L1000:
-.byte 97
-.byte 115
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 99
-.byte 101
-.byte 114
-.byte 116
-.byte 97
-.byte 105
-.byte 110
-.byte 32
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 121
-.byte 32
-.byte 87
-.byte 65
-.byte 78
-.byte 71
-.byte 32
-.byte 109
-.byte 97
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L999:
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 45
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 44
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 108
-.byte 115
-.byte 111
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 32
-.byte 108
-.byte 111
-.byte 103
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 105
-.byte 99
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.L998:
-.byte 10
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 98
-.byte 97
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 117
-.byte 112
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 110
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 114
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 114
-.byte 101
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 101
-.byte 110
-.byte 116
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 0
-.align 1
-.L997:
-.byte 111
-.byte 102
-.byte 32
-.byte 112
-.byte 97
-.byte 116
-.byte 104
-.byte 111
-.byte 108
-.byte 111
-.byte 103
-.byte 105
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 115
-.byte 97
-.byte 121
-.byte 32
-.byte 104
-.byte 111
-.byte 119
-.byte 32
-.byte 119
-.byte 101
-.byte 108
-.byte 108
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 109
-.byte 112
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.L996:
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 116
-.byte 114
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 112
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 119
-.byte 105
-.byte 100
-.byte 101
-.byte 114
-.byte 32
-.byte 118
-.byte 97
-.byte 114
-.byte 105
-.byte 101
-.byte 116
-.byte 121
-.byte 0
-.align 1
-.L995:
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 44
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 32
-.byte 40
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 115
-.byte 41
-.byte 0
-.align 1
-.L994:
-.byte 87
-.byte 46
-.byte 32
-.byte 74
-.byte 46
-.byte 32
-.byte 67
-.byte 111
-.byte 100
-.byte 121
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 87
-.byte 46
-.byte 32
-.byte 87
-.byte 97
-.byte 105
-.byte 116
-.byte 101
-.byte 46
-.byte 32
-.byte 65
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 98
-.byte 111
-.byte 116
-.byte 104
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 115
-.byte 32
-.byte 116
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.L993:
-.byte 98
-.byte 111
-.byte 111
-.byte 107
-.byte 32
-.byte 32
-.byte 96
-.byte 83
-.byte 111
-.byte 102
-.byte 116
-.byte 119
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 77
-.byte 97
-.byte 110
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 69
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 70
-.byte 117
-.byte 110
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 39
-.byte 32
-.byte 40
-.byte 49
-.byte 57
-.byte 56
-.byte 48
-.byte 41
-.byte 32
-.byte 98
-.byte 121
-.byte 0
-.align 1
-.L992:
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 96
-.byte 77
-.byte 65
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 39
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 0
-.align 1
-.L991:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 99
-.byte 97
-.byte 112
-.byte 97
-.byte 98
-.byte 105
-.byte 108
-.byte 105
-.byte 116
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 103
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 121
-.byte 111
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 105
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.L990:
-.byte 70
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 115
-.byte 101
-.byte 113
-.byte 117
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L989:
-.byte 32
-.byte 32
-.byte 32
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 50
-.byte 43
-.byte 50
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 53
-.byte 32
-.byte 46
-.byte 0
-.align 1
-.L988:
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 0
-.align 1
-.L987:
-.byte 32
-.byte 32
-.byte 32
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 44
-.byte 0
-.align 1
-.L986:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 97
-.byte 116
-.byte 116
-.byte 101
-.byte 109
-.byte 112
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 105
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 97
-.byte 109
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.L983:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 68
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 45
-.byte 66
-.byte 105
-.byte 110
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 89
-.byte 69
-.byte 84
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 97
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 46
-.byte 0
-.align 1
-.L982:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 69
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 101
-.byte 118
-.byte 101
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 89
-.byte 69
-.byte 84
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.L981:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 32
-.byte 32
-.byte 89
-.byte 94
-.byte 88
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.L980:
-.byte 9
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 116
-.byte 97
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 112
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 45
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 115
-.byte 46
-.byte 0
-.align 1
-.L979:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 99
-.byte 121
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.L978:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 86
-.byte 48
-.byte 32
-.byte 32
-.byte 116
-.byte 101
-.byte 108
-.byte 108
-.byte 115
-.byte 44
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 32
-.byte 73
-.byte 110
-.byte 102
-.byte 105
-.byte 110
-.byte 105
-.byte 116
-.byte 121
-.byte 32
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.L977:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 86
-.byte 32
-.byte 61
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 44
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 46
-.byte 0
-.align 1
-.L976:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 69
-.byte 48
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 101
-.byte 108
-.byte 108
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 98
-.byte 114
-.byte 117
-.byte 112
-.byte 116
-.byte 44
-.byte 32
-.byte 103
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 117
-.byte 122
-.byte 122
-.byte 121
-.byte 46
-.byte 0
-.align 1
-.L975:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 84
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.L974:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 87
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 32
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 66
-.byte 105
-.byte 116
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 46
-.byte 0
-.align 1
-.L973:
-.byte 9
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 46
-.byte 44
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 46
-.byte 44
-.byte 32
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 46
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 83
-.byte 113
-.byte 114
-.byte 116
-.byte 46
-.byte 0
-.align 1
-.L972:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 87
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 116
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 1
-.L971:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 65
-.byte 100
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 46
-.byte 44
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 46
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 46
-.byte 0
-.align 1
-.L970:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 47
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 79
-.byte 110
-.byte 101
-.byte 32
-.byte 85
-.byte 108
-.byte 112
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 108
-.byte 105
-.byte 116
-.byte 116
-.byte 108
-.byte 101
-.byte 32
-.byte 108
-.byte 101
-.byte 115
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 32
-.byte 46
-.byte 0
-.align 1
-.L969:
-.byte 9
-.byte 40
-.byte 79
-.byte 110
-.byte 101
-.byte 85
-.byte 108
-.byte 112
-.byte 110
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 76
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 80
-.byte 108
-.byte 97
-.byte 99
-.byte 101
-.byte 41
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 48
-.byte 48
-.byte 120
-.byte 120
-.byte 120
-.byte 32
-.byte 46
-.byte 0
-.align 1
-.L968:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 47
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 79
-.byte 110
-.byte 101
-.byte 32
-.byte 85
-.byte 108
-.byte 112
-.byte 0
-.align 1
-.L967:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 114
-.byte 105
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.L966:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 44
-.byte 32
-.byte 52
-.byte 44
-.byte 32
-.byte 56
-.byte 44
-.byte 32
-.byte 49
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 54
-.byte 44
-.byte 32
-.byte 49
-.byte 48
-.byte 48
-.byte 44
-.byte 32
-.byte 50
-.byte 53
-.byte 54
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 1
-.L965:
-.byte 82
-.byte 117
-.byte 110
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 114
-.byte 101
-.byte 118
-.byte 101
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 115
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 115
-.byte 58
-.byte 0
-.align 1
-.L962:
-.byte 9
-.byte 79
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 101
-.byte 118
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 105
-.byte 108
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 112
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 58
-.byte 0
-.align 1
-.L961:
-.byte 9
-.byte 79
-.byte 112
-.byte 116
-.byte 105
-.byte 109
-.byte 105
-.byte 122
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 101
-.byte 118
-.byte 101
-.byte 108
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.L960:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 105
-.byte 108
-.byte 101
-.byte 114
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.L959:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.L958:
-.byte 9
-.byte 86
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 9
-.byte 49
-.byte 48
-.byte 32
-.byte 70
-.byte 101
-.byte 98
-.byte 114
-.byte 117
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 49
-.byte 57
-.byte 56
-.byte 57
-.byte 59
-.byte 0
-.align 1
-.L957:
-.byte 9
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 9
-.byte 100
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 59
-.byte 0
-.align 1
-.L956:
-.byte 73
-.byte 110
-.byte 32
-.byte 100
-.byte 111
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 115
-.byte 111
-.byte 44
-.byte 32
-.byte 112
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 108
-.byte 117
-.byte 100
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 108
-.byte 108
-.byte 111
-.byte 119
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 110
-.byte 102
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 0
-.align 1
-.L955:
-.byte 9
-.byte 83
-.byte 97
-.byte 110
-.byte 32
-.byte 70
-.byte 114
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 44
-.byte 32
-.byte 67
-.byte 65
-.byte 32
-.byte 57
-.byte 52
-.byte 49
-.byte 52
-.byte 51
-.byte 45
-.byte 48
-.byte 55
-.byte 48
-.byte 52
-.byte 44
-.byte 32
-.byte 85
-.byte 83
-.byte 65
-.byte 10
-.byte 0
-.align 1
-.L954:
-.byte 9
-.byte 85
-.byte 110
-.byte 105
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 116
-.byte 121
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 67
-.byte 97
-.byte 108
-.byte 105
-.byte 102
-.byte 111
-.byte 114
-.byte 110
-.byte 105
-.byte 97
-.byte 0
-.align 1
-.L953:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 67
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 85
-.byte 45
-.byte 55
-.byte 54
-.byte 0
-.align 1
-.L952:
-.byte 9
-.byte 82
-.byte 105
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 75
-.byte 97
-.byte 114
-.byte 112
-.byte 105
-.byte 110
-.byte 115
-.byte 107
-.byte 105
-.byte 0
-.align 1
-.L951:
-.byte 80
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 115
-.byte 117
-.byte 103
-.byte 103
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 0
-.align 1
-.L950:
-.byte 99
-.byte 111
-.byte 112
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 117
-.byte 110
-.byte 97
-.byte 110
-.byte 116
-.byte 105
-.byte 99
-.byte 105
-.byte 112
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 110
-.byte 101
-.byte 119
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 110
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 112
-.byte 97
-.byte 116
-.byte 104
-.byte 111
-.byte 108
-.byte 111
-.byte 103
-.byte 105
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L949:
-.byte 85
-.byte 115
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 105
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 104
-.byte 101
-.byte 108
-.byte 112
-.byte 32
-.byte 100
-.byte 101
-.byte 98
-.byte 117
-.byte 103
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 117
-.byte 103
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 119
-.byte 105
-.byte 108
-.byte 108
-.byte 0
-.align 1
-.L946:
-.byte 65
-.byte 110
-.byte 115
-.byte 119
-.byte 101
-.byte 114
-.byte 32
-.byte 113
-.byte 117
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 89
-.byte 44
-.byte 32
-.byte 121
-.byte 44
-.byte 32
-.byte 78
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 110
-.byte 32
-.byte 40
-.byte 117
-.byte 110
-.byte 108
-.byte 101
-.byte 115
-.byte 115
-.byte 32
-.byte 111
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 119
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 100
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L945:
-.byte 97
-.byte 109
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 107
-.byte 101
-.byte 32
-.byte 102
-.byte 117
-.byte 114
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L944:
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 97
-.byte 110
-.byte 121
-.byte 119
-.byte 97
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 32
-.byte 104
-.byte 111
-.byte 119
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 109
-.byte 105
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 111
-.byte 110
-.byte 101
-.byte 115
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 115
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 110
-.byte 0
-.align 1
-.L943:
-.byte 119
-.byte 97
-.byte 114
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 46
-.byte 32
-.byte 32
-.byte 73
-.byte 102
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 117
-.byte 97
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 118
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 32
-.byte 110
-.byte 97
-.byte 117
-.byte 103
-.byte 104
-.byte 116
-.byte 44
-.byte 32
-.byte 100
-.byte 111
-.byte 110
-.byte 39
-.byte 116
-.byte 32
-.byte 100
-.byte 101
-.byte 115
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 114
-.byte 117
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 1
-.L942:
-.byte 116
-.byte 111
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 101
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 115
-.byte 117
-.byte 114
-.byte 114
-.byte 111
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 97
-.byte 102
-.byte 116
-.byte 101
-.byte 114
-.byte 44
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 104
-.byte 97
-.byte 112
-.byte 115
-.byte 44
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 112
-.byte 108
-.byte 97
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 0
-.align 1
-.L941:
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 44
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.L940:
-.byte 116
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 117
-.byte 97
-.byte 100
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 116
-.byte 101
-.byte 114
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 101
-.byte 99
-.byte 117
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 97
-.byte 110
-.byte 0
-.align 1
-.L939:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 96
-.byte 69
-.byte 78
-.byte 68
-.byte 32
-.byte 79
-.byte 70
-.byte 32
-.byte 84
-.byte 69
-.byte 83
-.byte 84
-.byte 39
-.byte 44
-.byte 10
-.byte 0
-.align 1
-.L938:
-.byte 76
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 112
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 109
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 101
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 105
-.byte 46
-.byte 101
-.byte 46
-.byte 32
-.byte 98
-.byte 101
-.byte 102
-.byte 111
-.byte 114
-.byte 101
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 112
-.byte 108
-.byte 97
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.L935:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L930:
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 76
-.byte 69
-.byte 65
-.byte 83
-.byte 69
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 73
-.byte 70
-.byte 89
-.byte 32
-.byte 75
-.byte 65
-.byte 82
-.byte 80
-.byte 73
-.byte 78
-.byte 75
-.byte 83
-.byte 73
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L929:
-.byte 37
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 116
-.byte 46
-.byte 46
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L927:
-.byte 9
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 90
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L926:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 49
-.byte 32
-.byte 42
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L925:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 100
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 117
-.byte 116
-.byte 101
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L920:
-.byte 90
-.byte 32
-.byte 47
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L917:
-.byte 49
-.byte 32
-.byte 42
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.L914:
-.byte 90
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 1
-.L911:
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.L910:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 0
-.align 1
-.L905:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L902:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 86
-.byte 69
-.byte 82
-.byte 89
-.byte 32
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L896:
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 106
-.byte 117
-.byte 115
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L895:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 44
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 1
-.L892:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 109
-.byte 97
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 101
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 40
-.byte 90
-.byte 32
-.byte 43
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L888:
-.byte 40
-.byte 90
-.byte 32
-.byte 43
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 115
-.byte 97
-.byte 102
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L887:
-.byte 83
-.byte 105
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 100
-.byte 101
-.byte 110
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 101
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 0
-.align 1
-.L883:
-.byte 83
-.byte 105
-.byte 109
-.byte 105
-.byte 108
-.byte 97
-.byte 114
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 116
-.byte 105
-.byte 109
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L873:
-.byte 9
-.byte 9
-.byte 116
-.byte 104
-.byte 101
-.byte 121
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L872:
-.byte 9
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 117
-.byte 110
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 59
-.byte 10
-.byte 0
-.align 1
-.L871:
-.byte 9
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 59
-.byte 10
-.byte 0
-.align 1
-.L870:
-.byte 9
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 10
-.byte 0
-.align 1
-.L869:
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.L868:
-.byte 87
-.byte 65
-.byte 82
-.byte 78
-.byte 73
-.byte 78
-.byte 71
-.byte 58
-.byte 32
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.L850:
-.byte 9
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 101
-.byte 97
-.byte 100
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 48
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L849:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 8
-.L841:
-.word 0x3ed4f8b5
-.word 0x88e368f1
-.align 1
-.L839:
-.byte 37
-.byte 115
-.byte 58
-.byte 32
-.byte 32
-.byte 37
-.byte 115
-.byte 0
-.align 1
-.L838:
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 0
-.align 1
-.L837:
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 0
-.align 1
-.L836:
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 0
-.align 1
-.L835:
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 0
-.align 1
-.L829:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 97
-.byte 103
-.byte 101
-.byte 58
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 10
-.byte 0
-.align 1
-.L828:
-.byte 10
-.byte 68
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 109
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 102
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 109
-.byte 105
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 111
-.byte 110
-.byte 101
-.byte 32
-.byte 78
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 0
-.align 8
-.L826:
-.word 0xbff00000
-.word 0x0
-.align 1
-.L821:
-.byte 69
-.byte 78
-.byte 68
-.byte 32
-.byte 79
-.byte 70
-.byte 32
-.byte 84
-.byte 69
-.byte 83
-.byte 84
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L820:
-.byte 10
-.byte 65
-.byte 32
-.byte 116
-.byte 111
-.byte 116
-.byte 97
-.byte 108
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 119
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L817:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 69
-.byte 120
-.byte 99
-.byte 101
-.byte 108
-.byte 108
-.byte 101
-.byte 110
-.byte 116
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L816:
-.byte 32
-.byte 100
-.byte 117
-.byte 114
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 71
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L815:
-.byte 44
-.byte 10
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 115
-.byte 105
-.byte 98
-.byte 108
-.byte 121
-.byte 32
-.byte 68
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 32
-.byte 82
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.L814:
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L811:
-.byte 56
-.byte 53
-.byte 52
-.byte 0
-.align 1
-.L810:
-.byte 55
-.byte 53
-.byte 52
-.byte 0
-.align 1
-.L807:
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 112
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 73
-.byte 69
-.byte 69
-.byte 69
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 110
-.byte 100
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 80
-.byte 0
-.align 1
-.L806:
-.byte 82
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 111
-.byte 114
-.byte 109
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 0
-.align 1
-.L803:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 83
-.byte 97
-.byte 116
-.byte 105
-.byte 115
-.byte 102
-.byte 97
-.byte 99
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L797:
-.byte 78
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 100
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 115
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 98
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L796:
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 39
-.byte 115
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 115
-.byte 101
-.byte 113
-.byte 117
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L795:
-.byte 80
-.byte 111
-.byte 116
-.byte 101
-.byte 110
-.byte 116
-.byte 105
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 102
-.byte 97
-.byte 116
-.byte 97
-.byte 108
-.byte 32
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 112
-.byte 111
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 1
-.L792:
-.byte 117
-.byte 110
-.byte 97
-.byte 99
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 32
-.byte 83
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 68
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L791:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 0
-.align 1
-.L787:
-.byte 100
-.byte 101
-.byte 115
-.byte 112
-.byte 105
-.byte 116
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 110
-.byte 105
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 68
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L786:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 65
-.byte 99
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L781:
-.byte 83
-.byte 97
-.byte 116
-.byte 105
-.byte 115
-.byte 102
-.byte 97
-.byte 99
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L780:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 0
-.align 1
-.L769:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 32
-.byte 37
-.byte 45
-.byte 50
-.byte 57
-.byte 115
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L762:
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 1
-.L761:
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 1
-.L760:
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 1
-.L759:
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 115
-.byte 32
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 1
-.L755:
-.byte 10
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 48
-.byte 32
-.byte 47
-.byte 32
-.byte 48
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 115
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 1
-.L754:
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L751:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 49
-.byte 32
-.byte 47
-.byte 32
-.byte 48
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 115
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 1
-.L750:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 109
-.byte 101
-.byte 115
-.byte 115
-.byte 97
-.byte 103
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 47
-.byte 111
-.byte 114
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 32
-.byte 100
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 63
-.byte 10
-.byte 0
-.align 1
-.L749:
-.byte 32
-.byte 32
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 101
-.byte 97
-.byte 100
-.byte 44
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L748:
-.byte 32
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L743:
-.byte 32
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 32
-.byte 116
-.byte 114
-.byte 97
-.byte 112
-.byte 115
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.L728:
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L727:
-.byte 32
-.byte 117
-.byte 110
-.byte 98
-.byte 97
-.byte 108
-.byte 97
-.byte 110
-.byte 99
-.byte 101
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 59
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 42
-.byte 32
-.byte 86
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L726:
-.byte 66
-.byte 97
-.byte 100
-.byte 108
-.byte 121
-.byte 0
-.align 1
-.L719:
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 90
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 50
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L718:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L706:
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 90
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L705:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 119
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L688:
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 44
-.byte 32
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 10
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 0
-.align 1
-.L687:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 0
-.align 1
-.L681:
-.byte 97
-.byte 98
-.byte 111
-.byte 118
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L680:
-.byte 65
-.byte 110
-.byte 121
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 42
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 111
-.byte 110
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L679:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 86
-.byte 32
-.byte 47
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L678:
-.byte 78
-.byte 111
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 86
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L677:
-.byte 84
-.byte 104
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 115
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 98
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 115
-.byte 121
-.byte 115
-.byte 116
-.byte 101
-.byte 109
-.byte 32
-.byte 116
-.byte 114
-.byte 97
-.byte 112
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L676:
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 86
-.byte 48
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L673:
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 86
-.byte 32
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L664:
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 115
-.byte 104
-.byte 114
-.byte 105
-.byte 110
-.byte 107
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L661:
-.byte 45
-.byte 40
-.byte 45
-.byte 89
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 89
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L660:
-.byte 102
-.byte 105
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 0
-.align 1
-.L659:
-.byte 83
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L656:
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L655:
-.byte 67
-.byte 97
-.byte 110
-.byte 32
-.byte 96
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 45
-.byte 89
-.byte 39
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 63
-.byte 10
-.byte 0
-.align 1
-.L648:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 103
-.byte 101
-.byte 110
-.byte 101
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L647:
-.byte 83
-.byte 101
-.byte 97
-.byte 114
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.L646:
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L638:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 119
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 94
-.byte 81
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 114
-.byte 32
-.byte 110
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 121
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 101
-.byte 109
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L637:
-.byte 65
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 97
-.byte 100
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 116
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L630:
-.byte 9
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 105
-.byte 110
-.byte 121
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L629:
-.byte 9
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 117
-.byte 99
-.byte 104
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 115
-.byte 112
-.byte 111
-.byte 105
-.byte 108
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 10
-.byte 0
-.align 1
-.L628:
-.byte 9
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L627:
-.byte 9
-.byte 40
-.byte 49
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 59
-.byte 10
-.byte 0
-.align 1
-.L626:
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 10
-.byte 0
-.align 1
-.L625:
-.byte 67
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 0
-.align 1
-.L618:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 88
-.byte 94
-.byte 40
-.byte 40
-.byte 88
-.byte 32
-.byte 43
-.byte 32
-.byte 49
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 41
-.byte 41
-.byte 32
-.byte 118
-.byte 115
-.byte 46
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 40
-.byte 50
-.byte 41
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 62
-.byte 32
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L614:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L611:
-.byte 32
-.byte 32
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L610:
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 116
-.byte 119
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 48
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 10
-.byte 0
-.align 1
-.L606:
-.byte 97
-.byte 99
-.byte 116
-.byte 117
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 58
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L605:
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 97
-.byte 102
-.byte 102
-.byte 108
-.byte 105
-.byte 99
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 10
-.byte 9
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 59
-.byte 10
-.byte 0
-.align 1
-.L604:
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 10
-.byte 111
-.byte 110
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 0
-.align 1
-.L603:
-.byte 83
-.byte 105
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L602:
-.byte 82
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 110
-.byte 97
-.byte 114
-.byte 114
-.byte 111
-.byte 119
-.byte 59
-.byte 32
-.byte 85
-.byte 49
-.byte 94
-.byte 37
-.byte 100
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L597:
-.byte 109
-.byte 101
-.byte 114
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L596:
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 115
-.byte 117
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 32
-.byte 108
-.byte 97
-.byte 114
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 82
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 0
-.align 1
-.L595:
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 0
-.align 1
-.L594:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L593:
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 32
-.byte 43
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L592:
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L589:
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 97
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 97
-.byte 99
-.byte 116
-.byte 117
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 10
-.byte 0
-.align 1
-.L588:
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 40
-.byte 102
-.byte 40
-.byte 88
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 102
-.byte 40
-.byte 90
-.byte 41
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L587:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 1
-.L586:
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 110
-.byte 111
-.byte 99
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 116
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L585:
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 10
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 115
-.byte 32
-.byte 0
-.align 1
-.L584:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 44
-.byte 32
-.byte 0
-.align 1
-.L583:
-.byte 121
-.byte 101
-.byte 116
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 90
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L582:
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L577:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 47
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L567:
-.byte 40
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 41
-.byte 32
-.byte 60
-.byte 32
-.byte 69
-.byte 48
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L566:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 103
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 59
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 32
-.byte 65
-.byte 98
-.byte 115
-.byte 111
-.byte 108
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 69
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 61
-.byte 10
-.byte 0
-.align 1
-.L561:
-.byte 124
-.byte 81
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 124
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L560:
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 81
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L559:
-.byte 81
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 89
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.byte 32
-.byte 100
-.byte 101
-.byte 110
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 124
-.byte 81
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 124
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 48
-.byte 59
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 115
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L558:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 101
-.byte 115
-.byte 32
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 10
-.byte 0
-.align 1
-.L556:
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 32
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L555:
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 100
-.byte 111
-.byte 119
-.byte 110
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L554:
-.byte 97
-.byte 112
-.byte 112
-.byte 114
-.byte 111
-.byte 97
-.byte 99
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L553:
-.byte 69
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 100
-.byte 101
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L541:
-.byte 83
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 115
-.byte 116
-.byte 114
-.byte 105
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 69
-.byte 48
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L540:
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L539:
-.byte 68
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 32
-.byte 104
-.byte 105
-.byte 103
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.L536:
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 99
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L535:
-.byte 80
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 116
-.byte 115
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 32
-.byte 104
-.byte 105
-.byte 103
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.L528:
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L527:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 100
-.byte 108
-.byte 121
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L526:
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 44
-.byte 32
-.byte 105
-.byte 115
-.byte 110
-.byte 39
-.byte 116
-.byte 59
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L525:
-.byte 66
-.byte 117
-.byte 116
-.byte 32
-.byte 45
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L522:
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 58
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L521:
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 100
-.byte 108
-.byte 121
-.byte 32
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L520:
-.byte 80
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 97
-.byte 110
-.byte 10
-.byte 0
-.align 1
-.L507:
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L483:
-.byte 83
-.byte 101
-.byte 101
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 69
-.byte 48
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L480:
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L477:
-.byte 9
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L476:
-.byte 69
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 97
-.byte 108
-.byte 105
-.byte 100
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L455:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 119
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 94
-.byte 105
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L452:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.L450:
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 117
-.byte 108
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L449:
-.byte 79
-.byte 98
-.byte 115
-.byte 101
-.byte 114
-.byte 118
-.byte 101
-.byte 100
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 114
-.byte 117
-.byte 110
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 1
-.L448:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L445:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L440:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L435:
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L434:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L433:
-.byte 65
-.byte 110
-.byte 111
-.byte 109
-.byte 97
-.byte 108
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 60
-.byte 32
-.byte 0
-.align 1
-.L393:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L371:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 88
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 110
-.byte 45
-.byte 109
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 88
-.byte 32
-.byte 110
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L370:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 105
-.byte 116
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L353:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 109
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 105
-.byte 116
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L342:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 88
-.byte 41
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 88
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 88
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L337:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 48
-.byte 46
-.byte 48
-.byte 44
-.byte 32
-.byte 45
-.byte 48
-.byte 46
-.byte 48
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.L335:
-.byte 10
-.byte 82
-.byte 117
-.byte 110
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 40
-.byte 120
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L334:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 78
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L333:
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 89
-.byte 32
-.byte 42
-.byte 32
-.byte 88
-.byte 32
-.byte 116
-.byte 114
-.byte 105
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 8
-.L324:
-.word 0x40080000
-.word 0x0
-.align 1
-.L323:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 100
-.byte 111
-.byte 109
-.byte 32
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L322:
-.byte 68
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 117
-.byte 116
-.byte 101
-.byte 63
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.L319:
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 40
-.byte 115
-.byte 41
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 40
-.byte 115
-.byte 41
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 10
-.byte 40
-.byte 110
-.byte 111
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 98
-.byte 111
-.byte 118
-.byte 101
-.byte 41
-.byte 32
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 101
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 1
-.L317:
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L316:
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L299:
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L296:
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 41
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 89
-.byte 32
-.byte 45
-.byte 32
-.byte 88
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 110
-.byte 32
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L293:
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L292:
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 0
-.align 1
-.L289:
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L282:
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L277:
-.byte 73
-.byte 110
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 108
-.byte 101
-.byte 116
-.byte 101
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 114
-.byte 121
-.byte 45
-.byte 112
-.byte 114
-.byte 111
-.byte 112
-.byte 97
-.byte 103
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.L273:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 42
-.byte 32
-.byte 40
-.byte 32
-.byte 49
-.byte 32
-.byte 47
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 0
-.align 1
-.L271:
-.byte 47
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L268:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L265:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.L262:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L257:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.L254:
-.byte 42
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L253:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L250:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L240:
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 40
-.byte 49
-.byte 47
-.byte 88
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 0
-.align 1
-.L221:
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 100
-.byte 100
-.byte 47
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L220:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 42
-.byte 44
-.byte 32
-.byte 47
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 45
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 121
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L217:
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 41
-.byte 32
-.byte 123
-.byte 46
-.byte 46
-.byte 46
-.byte 46
-.byte 46
-.byte 125
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 32
-.byte 123
-.byte 46
-.byte 46
-.byte 46
-.byte 47
-.byte 40
-.byte 88
-.byte 45
-.byte 49
-.byte 46
-.byte 48
-.byte 41
-.byte 46
-.byte 46
-.byte 46
-.byte 125
-.byte 10
-.byte 0
-.align 1
-.L216:
-.byte 32
-.byte 32
-.byte 115
-.byte 117
-.byte 99
-.byte 104
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 103
-.byte 97
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 97
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L215:
-.byte 32
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 32
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 32
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 101
-.byte 98
-.byte 121
-.byte 32
-.byte 118
-.byte 105
-.byte 116
-.byte 105
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.L214:
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 32
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 32
-.byte 60
-.byte 32
-.byte 49
-.byte 32
-.byte 32
-.byte 97
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 10
-.byte 0
-.align 1
-.L211:
-.byte 45
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 99
-.byte 101
-.byte 108
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 111
-.byte 98
-.byte 115
-.byte 99
-.byte 117
-.byte 114
-.byte 101
-.byte 100
-.byte 0
-.align 1
-.L206:
-.byte 42
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 47
-.byte 111
-.byte 114
-.byte 32
-.byte 47
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.L202:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 49
-.byte 47
-.byte 49
-.byte 46
-.byte 48
-.byte 48
-.byte 48
-.byte 46
-.byte 46
-.byte 49
-.byte 32
-.byte 62
-.byte 61
-.byte 32
-.byte 49
-.byte 0
-.align 1
-.L200:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 88
-.byte 47
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 88
-.byte 0
-.align 1
-.L195:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 101
-.byte 100
-.byte 32
-.byte 49
-.byte 32
-.byte 117
-.byte 108
-.byte 112
-.byte 10
-.byte 111
-.byte 114
-.byte 32
-.byte 32
-.byte 49
-.byte 47
-.byte 51
-.byte 32
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 32
-.byte 51
-.byte 47
-.byte 57
-.byte 32
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 32
-.byte 57
-.byte 47
-.byte 50
-.byte 55
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 97
-.byte 103
-.byte 114
-.byte 101
-.byte 101
-.byte 0
-.align 1
-.L191:
-.byte 42
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L189:
-.byte 42
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 49
-.byte 42
-.byte 88
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 88
-.byte 0
-.align 1
-.L186:
-.byte 10
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 42
-.byte 44
-.byte 32
-.byte 47
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 45
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L185:
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 108
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 46
-.byte 0
-.align 1
-.L180:
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 108
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 88
-.byte 61
-.byte 89
-.byte 44
-.byte 88
-.byte 43
-.byte 90
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 89
-.byte 43
-.byte 90
-.byte 33
-.byte 0
-.align 1
-.L176:
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L175:
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 98
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 32
-.byte 66
-.byte 45
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 44
-.byte 32
-.byte 105
-.byte 46
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L174:
-.byte 83
-.byte 111
-.byte 109
-.byte 101
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 10
-.byte 0
-.align 1
-.L168:
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 110
-.byte 10
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.L167:
-.byte 90
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 90
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 1
-.L166:
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 101
-.byte 120
-.byte 97
-.byte 99
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 97
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 10
-.byte 0
-.align 1
-.L165:
-.byte 66
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 117
-.byte 110
-.byte 117
-.byte 115
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 102
-.byte 0
-.align 1
-.L161:
-.byte 9
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 90
-.byte 50
-.byte 32
-.byte 45
-.byte 32
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L160:
-.byte 9
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 90
-.byte 49
-.byte 32
-.byte 45
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L159:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.L158:
-.byte 0
-.align 1
-.L151:
-.byte 84
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 102
-.byte 101
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 117
-.byte 114
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L146:
-.byte 80
-.byte 111
-.byte 115
-.byte 115
-.byte 105
-.byte 98
-.byte 108
-.byte 121
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 32
-.byte 112
-.byte 97
-.byte 114
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 1
-.L145:
-.byte 98
-.byte 121
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 101
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L144:
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 115
-.byte 121
-.byte 109
-.byte 112
-.byte 116
-.byte 111
-.byte 109
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L143:
-.byte 114
-.byte 101
-.byte 115
-.byte 112
-.byte 101
-.byte 99
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 10
-.byte 0
-.align 1
-.L142:
-.byte 68
-.byte 105
-.byte 115
-.byte 97
-.byte 103
-.byte 114
-.byte 101
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 109
-.byte 111
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 32
-.byte 88
-.byte 49
-.byte 44
-.byte 32
-.byte 89
-.byte 49
-.byte 44
-.byte 32
-.byte 90
-.byte 49
-.byte 44
-.byte 10
-.byte 0
-.align 1
-.L120:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 111
-.byte 114
-.byte 115
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 53
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 105
-.byte 103
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.L118:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L117:
-.byte 108
-.byte 111
-.byte 103
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 105
-.byte 99
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 111
-.byte 108
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 85
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L114:
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 44
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 105
-.byte 116
-.byte 115
-.byte 101
-.byte 108
-.byte 102
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 109
-.byte 105
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L113:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 10
-.byte 0
-.align 1
-.L100:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 102
-.byte 117
-.byte 122
-.byte 122
-.byte 121
-.byte 44
-.byte 88
-.byte 61
-.byte 49
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 88
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 1
-.L96:
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 60
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 70
-.byte 65
-.byte 76
-.byte 83
-.byte 69
-.byte 44
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 46
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 63
-.byte 0
-.align 8
-.L94:
-.word 0x40240000
-.word 0x0
-.align 1
-.L89:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 103
-.byte 111
-.byte 111
-.byte 100
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 50
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 48
-.byte 0
-.align 1
-.L85:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 98
-.byte 105
-.byte 103
-.byte 58
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 98
-.byte 108
-.byte 101
-.byte 109
-.byte 115
-.byte 0
-.align 1
-.L83:
-.byte 77
-.byte 89
-.byte 83
-.byte 84
-.byte 69
-.byte 82
-.byte 89
-.byte 58
-.byte 32
-.byte 114
-.byte 101
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L82:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 105
-.byte 114
-.byte 109
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 8
-.L79:
-.word 0x3f847ae1
-.word 0x47ae147b
-.align 1
-.L78:
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 98
-.byte 101
-.byte 116
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L77:
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 105
-.byte 114
-.byte 109
-.byte 115
-.byte 32
-.byte 99
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L62:
-.byte 82
-.byte 101
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 10
-.byte 32
-.byte 0
-.align 1
-.L61:
-.byte 67
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 10
-.byte 0
-.align 1
-.L55:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L46:
-.byte 83
-.byte 101
-.byte 97
-.byte 114
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L45:
-.byte 10
-.byte 0
-.align 1
-.L44:
-.byte 45
-.byte 49
-.byte 44
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 44
-.byte 32
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 44
-.byte 32
-.byte 51
-.byte 44
-.byte 32
-.byte 52
-.byte 44
-.byte 32
-.byte 53
-.byte 44
-.byte 32
-.byte 57
-.byte 44
-.byte 32
-.byte 50
-.byte 55
-.byte 44
-.byte 32
-.byte 51
-.byte 50
-.byte 32
-.byte 38
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.L39:
-.byte 53
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 52
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 51
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 56
-.byte 48
-.byte 44
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 52
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 54
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 53
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 52
-.byte 56
-.byte 0
-.align 1
-.L35:
-.byte 57
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 51
-.byte 42
-.byte 51
-.byte 44
-.byte 32
-.byte 50
-.byte 55
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 57
-.byte 42
-.byte 51
-.byte 44
-.byte 32
-.byte 51
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 56
-.byte 42
-.byte 52
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 51
-.byte 50
-.byte 45
-.byte 50
-.byte 55
-.byte 45
-.byte 52
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 1
-.L31:
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 32
-.byte 43
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 1
-.L27:
-.byte 45
-.byte 49
-.byte 43
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 43
-.byte 97
-.byte 98
-.byte 115
-.byte 40
-.byte 49
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 45
-.byte 49
-.byte 43
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 42
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 1
-.L23:
-.byte 51
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 50
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 52
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 51
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 52
-.byte 43
-.byte 50
-.byte 42
-.byte 40
-.byte 45
-.byte 50
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 52
-.byte 45
-.byte 51
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 8
-.L21:
-.word 0x3f50624d
-.word 0xd2f1a9fc
-.align 1
-.L20:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 45
-.byte 48
-.byte 46
-.byte 48
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 111
-.byte 110
-.byte 45
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.L15:
-.byte 48
-.byte 43
-.byte 48
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 32
-.byte 60
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 43
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 50
-.byte 0
-.align 1
-.L13:
-.byte 80
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 119
-.byte 32
-.byte 82
-.byte 85
-.byte 78
-.byte 78
-.byte 73
-.byte 78
-.byte 71
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 115
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 58
-.byte 10
-.byte 0
-.align 8
-.L9:
-.word 0x3ff00000
-.word 0x0
-.align 8
-.L8:
-.word 0x0
-.word 0x0
-.align 1
-.L3:
-.byte 10
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 70
-.byte 76
-.byte 79
-.byte 65
-.byte 84
-.byte 73
-.byte 78
-.byte 71
-.byte 45
-.byte 80
-.byte 79
-.byte 73
-.byte 78
-.byte 84
-.byte 32
-.byte 69
-.byte 82
-.byte 82
-.byte 79
-.byte 82
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 10
-.byte 0
+.section ".data"
+.global Zero
+.type Zero,#object
+.size Zero,8
+.align 8
+Zero:
+.word 0x0
+.word 0x0
+.global Half
+.type Half,#object
+.size Half,8
+.align 8
+Half:
+.word 0x3fe00000
+.word 0x0
+.global One
+.type One,#object
+.size One,8
+.align 8
+One:
+.word 0x3ff00000
+.word 0x0
+.global Two
+.type Two,#object
+.size Two,8
+.align 8
+Two:
+.word 0x40000000
+.word 0x0
+.global Three
+.type Three,#object
+.size Three,8
+.align 8
+Three:
+.word 0x40080000
+.word 0x0
+.global Four
+.type Four,#object
+.size Four,8
+.align 8
+Four:
+.word 0x40100000
+.word 0x0
+.global Five
+.type Five,#object
+.size Five,8
+.align 8
+Five:
+.word 0x40140000
+.word 0x0
+.global Eight
+.type Eight,#object
+.size Eight,8
+.align 8
+Eight:
+.word 0x40200000
+.word 0x0
+.global Nine
+.type Nine,#object
+.size Nine,8
+.align 8
+Nine:
+.word 0x40220000
+.word 0x0
+.global TwentySeven
+.type TwentySeven,#object
+.size TwentySeven,8
+.align 8
+TwentySeven:
+.word 0x403b0000
+.word 0x0
+.global ThirtyTwo
+.type ThirtyTwo,#object
+.size ThirtyTwo,8
+.align 8
+ThirtyTwo:
+.word 0x40400000
+.word 0x0
+.global TwoForty
+.type TwoForty,#object
+.size TwoForty,8
+.align 8
+TwoForty:
+.word 0x406e0000
+.word 0x0
+.global MinusOne
+.type MinusOne,#object
+.size MinusOne,8
+.align 8
+MinusOne:
+.word 0xbff00000
+.word 0x0
+.global OneAndHalf
+.type OneAndHalf,#object
+.size OneAndHalf,8
+.align 8
+OneAndHalf:
+.word 0x3ff80000
+.word 0x0
+.global NoTrials
+.type NoTrials,#object
+.size NoTrials,4
+.align 4
+NoTrials:
+.word 0x14
+.global sigfpe
+.section ".text"
+.align 4
+sigfpe:
+save %sp,-96,%sp
+set fpecount,%i5
+ld [%i5],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+set .L3,%o0
+call printf; nop
+set __iob+16,%o0
+call fflush; nop
+set sigsave,%i5
+ld [%i5],%i5
+cmp %i5,%g0; be .L5; nop
+set 8,%o0
+set sigsave,%i5
+ld [%i5],%o1
+call signal; nop
+set sigsave,%i5
+st %g0,[%i5]
+set ovfl_buf,%o0
+set 1,%o1
+call longjmp; nop
+.L5:
+call abort; nop
+.L2:
+ret; restore
+.type sigfpe,#function
+.size sigfpe,.-sigfpe
+.section ".data"
+.type .758,#object
+.align 4
+.758:
+.word .L759
+.word .L760
+.word .L761
+.word .L762
+.size .758,16
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-216,%sp
+set Zero,%i5
+set .L8,%i4
+ld2 [%i4],%f30
+st2 %f30,[%i5]
+set One,%i5
+set .L9,%i4
+ld2 [%i4],%f30
+st2 %f30,[%i5]
+set Two,%i4
+ld2 [%i5],%f30
+faddd %f30,%f30,%f28
+st2 %f28,[%i4]
+set Three,%i5
+ld2 [%i4],%f28
+faddd %f28,%f30,%f26
+st2 %f26,[%i5]
+set Four,%i4
+ld2 [%i5],%f26
+faddd %f26,%f30,%f24
+st2 %f24,[%i4]
+set Five,%i5
+ld2 [%i4],%f24
+faddd %f24,%f30,%f22
+st2 %f22,[%i5]
+set Eight,%i4
+faddd %f24,%f24,%f22
+st2 %f22,[%i4]
+set Nine,%i3
+fmuld %f26,%f26,%f22
+st2 %f22,[%i3]
+set TwentySeven,%i2
+ld2 [%i3],%f22
+fmuld %f22,%f26,%f22
+st2 %f22,[%i2]
+set ThirtyTwo,%i3
+ld2 [%i4],%f22
+fmuld %f24,%f22,%f22
+st2 %f22,[%i3]
+set TwoForty,%i4
+ld2 [%i5],%f22
+fmuld %f24,%f22,%f22
+fmuld %f22,%f26,%f26
+fmuld %f26,%f24,%f26
+st2 %f26,[%i4]
+set MinusOne,%i5
+fnegs %f30,%f26; fmovs %f31,%f27
+st2 %f26,[%i5]
+set Half,%i5
+fdivd %f30,%f28,%f28
+st2 %f28,[%i5]
+set OneAndHalf,%i4
+ld2 [%i5],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%i4]
+set ErrCnt,%i4
+st %g0,[%i4]
+set ErrCnt+4,%i4
+st %g0,[%i4]
+set ErrCnt+8,%i5
+st %g0,[%i5]
+set ErrCnt+12,%i5
+st %g0,[%i5]
+set PageNo,%i5
+set 1,%i4
+st %i4,[%i5]
+set Milestone,%i5
+st %g0,[%i5]
+set 8,%o0
+set sigfpe,%o1
+call signal; nop
+call Instructions; nop
+call Pause; nop
+call Heading; nop
+call Pause; nop
+call Characteristics; nop
+call Pause; nop
+call History; nop
+call Pause; nop
+set Milestone,%i5
+set 7,%i4
+st %i4,[%i5]
+set .L13,%o0
+call printf; nop
+mov %g0,%o0
+set Zero,%i4
+ld2 [%i4],%f30
+faddd %f30,%f30,%f28
+fcmped %f28,%f30; nop; fbne .L16; nop
+set One,%i4
+ld2 [%i4],%f28
+fsubd %f28,%f28,%f26
+fcmped %f26,%f30; nop; fbne .L16; nop
+fcmped %f28,%f30; nop; fbule .L16; nop
+faddd %f28,%f28,%f30
+set Two,%i4
+ld2 [%i4],%f28
+fcmped %f30,%f28; nop; fbne .L16; nop
+set 1,%i5
+ba .L17; nop
+.L16:
+mov %g0,%i5
+.L17:
+mov %i5,%o1
+set .L15,%o2
+call TstCond; nop
+set Z,%i4
+set Zero,%i3
+ld2 [%i3],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%i4]
+ld2 [%i4],%f30
+set .L8,%i4
+ld2 [%i4],%f28
+fcmped %f30,%f28; nop; fbue .L18; nop
+set ErrCnt,%i4
+ld [%i4],%i3
+add %i3,1,%i3
+st %i3,[%i4]
+set .L20,%o0
+call printf; nop
+set U1,%i4
+set .L21,%i3
+ld2 [%i3],%f30
+st2 %f30,[%i4]
+set Radix,%i4
+set .L9,%i3
+ld2 [%i3],%f30
+st2 %f30,[%i4]
+call TstPtUf; nop
+.L18:
+mov %g0,%o0
+set Three,%i3
+ld2 [%i3],%f30
+set Two,%i3
+ld2 [%i3],%f28
+set One,%i3
+ld2 [%i3],%f26
+faddd %f28,%f26,%f24
+fcmped %f30,%f24; nop; fbne .L24; nop
+set Four,%i3
+ld2 [%i3],%f24
+faddd %f30,%f26,%f22
+fcmped %f24,%f22; nop; fbne .L24; nop
+set Zero,%i3
+ld2 [%i3],%f22
+fnegs %f28,%f20; fmovs %f29,%f21
+fmuld %f28,%f20,%f28
+faddd %f24,%f28,%f28
+fcmped %f28,%f22; nop; fbne .L24; nop
+fsubd %f24,%f30,%f30
+fsubd %f30,%f26,%f30
+fcmped %f30,%f22; nop; fbne .L24; nop
+set 1,%i4
+ba .L25; nop
+.L24:
+mov %g0,%i4
+.L25:
+mov %i4,%o1
+set .L23,%o2
+call TstCond; nop
+set MinusOne,%i2
+ld2 [%i2],%f30
+std %f30,[%fp+-8]
+set One,%i2
+ld2 [%i2],%f28
+set .L8,%i2
+ld2 [%i2],%f26
+fsubd %f26,%f28,%f26
+fcmped %f30,%f26; nop; fbne .L28; nop
+set Zero,%i2
+ld2 [%i2],%f26
+faddd %f30,%f28,%f24
+fcmped %f24,%f26; nop; fbne .L28; nop
+faddd %f28,%f30,%f24
+fcmped %f24,%f26; nop; fbne .L28; nop
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Zero,%i2
+ld2 [%i2],%f28
+ldd [%fp+-8],%f26
+faddd %f26,%f30,%f30
+fcmped %f30,%f28; nop; fbne .L28; nop
+set MinusOne,%i2
+ld2 [%i2],%f30
+fmuld %f30,%f30,%f26
+faddd %f30,%f26,%f30
+fcmped %f30,%f28; nop; fbne .L28; nop
+set 1,%i3
+ba .L29; nop
+.L28:
+mov %g0,%i3
+.L29:
+mov %g0,%o0
+mov %i3,%o1
+set .L27,%o2
+call TstCond; nop
+mov %g0,%o0
+set Half,%i1
+ld2 [%i1],%f30
+set MinusOne,%i1
+ld2 [%i1],%f28
+faddd %f30,%f28,%f28
+faddd %f28,%f30,%f30
+set Zero,%i1
+ld2 [%i1],%f28
+fcmped %f30,%f28; nop; fbne .L32; nop
+set 1,%i2
+ba .L33; nop
+.L32:
+mov %g0,%i2
+.L33:
+mov %i2,%o1
+set .L31,%o2
+call TstCond; nop
+set Milestone,%i0
+set 10,%l7
+st %l7,[%i0]
+mov %g0,%o0
+set Nine,%i0
+ld2 [%i0],%f30
+set Three,%i0
+ld2 [%i0],%f28
+fmuld %f28,%f28,%f26
+fcmped %f30,%f26; nop; fbne .L36; nop
+set TwentySeven,%i0
+ld2 [%i0],%f26
+fmuld %f30,%f28,%f30
+fcmped %f26,%f30; nop; fbne .L36; nop
+set Eight,%i0
+ld2 [%i0],%f30
+set Four,%i0
+ld2 [%i0],%f28
+faddd %f28,%f28,%f24
+fcmped %f30,%f24; nop; fbne .L36; nop
+set ThirtyTwo,%i0
+ld2 [%i0],%f24
+fmuld %f30,%f28,%f30
+fcmped %f24,%f30; nop; fbne .L36; nop
+fsubd %f24,%f26,%f30
+fsubd %f30,%f28,%f30
+set One,%i0
+ld2 [%i0],%f28
+fsubd %f30,%f28,%f30
+set Zero,%i0
+ld2 [%i0],%f28
+fcmped %f30,%f28; nop; fbne .L36; nop
+set 1,%i1
+ba .L37; nop
+.L36:
+mov %g0,%i1
+.L37:
+mov %i1,%o1
+set .L35,%o2
+call TstCond; nop
+mov %g0,%o0
+set Five,%l7
+ld2 [%l7],%f30
+set Four,%l7
+ld2 [%l7],%f28
+set One,%l7
+ld2 [%l7],%f26
+faddd %f28,%f26,%f26
+fcmped %f30,%f26; nop; fbne .L40; nop
+set TwoForty,%l7
+ld2 [%l7],%f26
+set Three,%l7
+ld2 [%l7],%f24
+fmuld %f28,%f30,%f22
+fmuld %f22,%f24,%f22
+fmuld %f22,%f28,%f22
+fcmped %f26,%f22; nop; fbne .L40; nop
+set Zero,%l7
+ld2 [%l7],%f22
+fdivd %f26,%f24,%f20
+fmuld %f28,%f28,%f18
+fmuld %f18,%f30,%f18
+fsubd %f20,%f18,%f20
+fcmped %f20,%f22; nop; fbne .L40; nop
+fdivd %f26,%f28,%f20
+fmuld %f30,%f24,%f18
+fmuld %f18,%f28,%f18
+fsubd %f20,%f18,%f20
+fcmped %f20,%f22; nop; fbne .L40; nop
+fdivd %f26,%f30,%f30
+fmuld %f28,%f24,%f26
+fmuld %f26,%f28,%f28
+fsubd %f30,%f28,%f30
+fcmped %f30,%f22; nop; fbne .L40; nop
+set 1,%i0
+ba .L41; nop
+.L40:
+mov %g0,%i0
+.L41:
+mov %i0,%o1
+set .L39,%o2
+call TstCond; nop
+set ErrCnt,%l7
+ld [%l7],%l7
+cmp %l7,0; bne .L42; nop
+set .L44,%o0
+call printf; nop
+set .L45,%o0
+call printf; nop
+.L42:
+set .L46,%o0
+call printf; nop
+set W,%l7
+set One,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+.L47:
+set W,%l7
+ld2 [%l7],%f30
+faddd %f30,%f30,%f30
+st2 %f30,[%l7]
+set Y,%l6
+ld2 [%l7],%f30
+set One,%l7
+ld2 [%l7],%f28
+faddd %f30,%f28,%f26
+st2 %f26,[%l6]
+set Z,%l7
+ld2 [%l6],%f26
+fsubd %f26,%f30,%f30
+st2 %f30,[%l7]
+ld2 [%l7],%f30
+fsubd %f30,%f28,%f30
+st2 %f30,[%l6]
+.L48:
+set Y,%l7
+ld2 [%l7],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set MinusOne,%l7
+ld2 [%l7],%f28
+faddd %f28,%f30,%f30
+set Zero,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbul .L47; nop
+set Precision,%l7
+set Zero,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+set Y,%l7
+set One,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+.L50:
+set Radix,%l7
+set W,%l6
+ld2 [%l6],%f30
+set Y,%l6
+ld2 [%l6],%f28
+faddd %f30,%f28,%f26
+st2 %f26,[%l7]
+faddd %f28,%f28,%f28
+st2 %f28,[%l6]
+ld2 [%l7],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l7]
+.L51:
+set Radix,%l7
+ld2 [%l7],%f30
+set Zero,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbue .L50; nop
+set Radix,%l7
+ld2 [%l7],%f30
+set Two,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbuge .L53; nop
+set Radix,%l7
+set One,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+.L53:
+set .L55,%o0
+set Radix,%l7
+ld2 [%l7],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set Radix,%l7
+ld2 [%l7],%f30
+set .L9,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbue .L56; nop
+set W,%l7
+set One,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+.L58:
+set Precision,%l7
+set One,%l6
+ld2 [%l6],%f30
+ld2 [%l7],%f28
+faddd %f28,%f30,%f28
+st2 %f28,[%l7]
+set W,%l7
+ld2 [%l7],%f28
+set Radix,%l6
+ld2 [%l6],%f26
+fmuld %f28,%f26,%f28
+st2 %f28,[%l7]
+set Y,%l6
+ld2 [%l7],%f28
+faddd %f28,%f30,%f30
+st2 %f30,[%l6]
+.L59:
+set Y,%l7
+ld2 [%l7],%f30
+set W,%l7
+ld2 [%l7],%f28
+fsubd %f30,%f28,%f30
+set One,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbue .L58; nop
+.L56:
+set U1,%l7
+set One,%l6
+ld2 [%l6],%f30
+set W,%l6
+ld2 [%l6],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l7]
+ld2 [%l7],%f30
+set U2,%l7
+set Radix,%l6
+ld2 [%l6],%f28
+fmuld %f28,%f30,%f28
+st2 %f28,[%l7]
+set .L61,%o0
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L62,%o0
+call printf; nop
+set E0,%l7
+set Radix,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+set E1,%l7
+set U1,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+set E9,%l7
+set U2,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+set E3,%l7
+set Precision,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+set X,%l7
+set Four,%l6
+ld2 [%l6],%f30
+set Three,%l6
+ld2 [%l6],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l7]
+set Third,%l6
+ld2 [%l7],%f30
+set One,%l5
+ld2 [%l5],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l6]
+set F6,%l5
+ld2 [%l6],%f30
+set Half,%l6
+ld2 [%l6],%f28
+fsubd %f28,%f30,%f28
+st2 %f28,[%l5]
+ld2 [%l5],%f28
+faddd %f28,%f28,%f28
+st2 %f28,[%l7]
+ld2 [%l7],%f28
+fsubd %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+st2 %f30,[%l7]
+set X,%l7
+ld2 [%l7],%f30
+set U2,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbuge .L63; nop
+set X,%l7
+set U2,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+.L63:
+.L65:
+set U2,%l7
+set X,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+set Y,%l5
+ld2 [%l7],%f30
+set Half,%l7
+ld2 [%l7],%f28
+fmuld %f28,%f30,%f28
+set ThirtyTwo,%l7
+ld2 [%l7],%f26
+fmuld %f26,%f30,%f26
+fmuld %f26,%f30,%f30
+faddd %f28,%f30,%f30
+st2 %f30,[%l5]
+set One,%l7
+ld2 [%l7],%f30
+ld2 [%l5],%f28
+faddd %f30,%f28,%f28
+st2 %f28,[%l5]
+ld2 [%l5],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l6]
+.L66:
+set X,%l7
+ld2 [%l7],%f30
+set U2,%l7
+ld2 [%l7],%f28
+fcmped %f28,%f30; nop; fbule .L68; nop
+set Zero,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbug .L65; nop
+.L68:
+set X,%l7
+set Two,%l6
+ld2 [%l6],%f30
+set Three,%l6
+ld2 [%l6],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l7]
+set F6,%l6
+set Half,%l5
+ld2 [%l5],%f30
+ld2 [%l7],%f28
+fsubd %f28,%f30,%f28
+st2 %f28,[%l6]
+set Third,%l5
+ld2 [%l6],%f28
+faddd %f28,%f28,%f26
+st2 %f26,[%l5]
+ld2 [%l5],%f26
+fsubd %f26,%f30,%f30
+st2 %f30,[%l7]
+ld2 [%l7],%f30
+faddd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+st2 %f30,[%l7]
+set X,%l7
+ld2 [%l7],%f30
+set U1,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbuge .L69; nop
+set X,%l7
+set U1,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+.L69:
+.L71:
+set U1,%l7
+set X,%l6
+ld2 [%l6],%f30
+st2 %f30,[%l7]
+set Y,%l5
+set Half,%l4
+ld2 [%l4],%f30
+ld2 [%l7],%f28
+fmuld %f30,%f28,%f26
+set ThirtyTwo,%l7
+ld2 [%l7],%f24
+fmuld %f24,%f28,%f24
+fmuld %f24,%f28,%f28
+faddd %f26,%f28,%f28
+st2 %f28,[%l5]
+ld2 [%l5],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l5]
+ld2 [%l5],%f28
+faddd %f30,%f28,%f28
+st2 %f28,[%l6]
+ld2 [%l6],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l5]
+ld2 [%l5],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l6]
+.L72:
+set X,%l7
+ld2 [%l7],%f30
+set U1,%l7
+ld2 [%l7],%f28
+fcmped %f28,%f30; nop; fbule .L74; nop
+set Zero,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbug .L71; nop
+.L74:
+set U1,%l7
+ld2 [%l7],%f30
+set E1,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbne .L75; nop
+set .L77,%o0
+call printf; nop
+ba .L76; nop
+.L75:
+set .L78,%o0
+set U1,%l7
+ld2 [%l7],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L76:
+set U1,%l7
+ld2 [%l7],%f30
+set W,%l7
+set One,%l6
+ld2 [%l6],%f28
+fdivd %f28,%f30,%f28
+st2 %f28,[%l7]
+set Half,%l7
+ld2 [%l7],%f28
+set F9,%l7
+fsubd %f28,%f30,%f26
+faddd %f26,%f28,%f28
+st2 %f28,[%l7]
+set U2,%l7
+ld2 [%l7],%f28
+fdivd %f28,%f30,%f30
+set .L79,%l7
+ld2 [%l7],%f28
+faddd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Radix,%l7
+st2 %f30,[%l7]
+set Radix,%l7
+ld2 [%l7],%f30
+set E0,%l7
+ld2 [%l7],%f28
+fcmped %f30,%f28; nop; fbne .L80; nop
+set .L82,%o0
+call printf; nop
+ba .L81; nop
+.L80:
+set .L83,%o0
+set Radix,%l7
+ld2 [%l7],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L81:
+set 2,%o0
+set Eight,%l6
+ld2 [%l6],%f30
+set Radix,%l6
+ld2 [%l6],%f28
+faddd %f30,%f30,%f30
+fcmped %f28,%f30; nop; fbug .L86; nop
+set 1,%l7
+ba .L87; nop
+.L86:
+mov %g0,%l7
+.L87:
+mov %l7,%o1
+set .L85,%o2
+call TstCond; nop
+set 3,%o0
+set Radix,%l5
+ld2 [%l5],%f30
+set Two,%l5
+ld2 [%l5],%f28
+fcmped %f30,%f28; nop; fbue .L93; nop
+set .L94,%l5
+ld2 [%l5],%f28
+fcmped %f30,%f28; nop; fbue .L93; nop
+set One,%l5
+ld2 [%l5],%f28
+fcmped %f30,%f28; nop; fbne .L90; nop
+.L93:
+set 1,%l6
+ba .L91; nop
+.L90:
+mov %g0,%l6
+.L91:
+mov %l6,%o1
+set .L89,%o2
+call TstCond; nop
+set Milestone,%l4
+set 20,%l3
+st %l3,[%l4]
+mov %g0,%o0
+set Half,%l4
+ld2 [%l4],%f30
+set F9,%l4
+ld2 [%l4],%f28
+fsubd %f28,%f30,%f28
+fcmped %f28,%f30; nop; fbuge .L97; nop
+set 1,%l5
+ba .L98; nop
+.L97:
+mov %g0,%l5
+.L98:
+mov %l5,%o1
+set .L96,%o2
+call TstCond; nop
+set X,%l3
+set F9,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set I,%l2
+set 1,%l1
+st %l1,[%l2]
+set Y,%l2
+set Half,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f28
+st2 %f28,[%l2]
+set Z,%l3
+ld2 [%l2],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l3]
+mov %g0,%o0
+set X,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L103; nop
+set Z,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L101; nop
+.L103:
+set 1,%l4
+ba .L102; nop
+.L101:
+mov %g0,%l4
+.L102:
+mov %l4,%o1
+set .L100,%o2
+call TstCond; nop
+set One,%l3
+ld2 [%l3],%f30
+set U2,%l3
+ld2 [%l3],%f28
+set X,%l3
+faddd %f30,%f28,%f26
+st2 %f26,[%l3]
+set I,%l3
+st %g0,[%l3]
+set Milestone,%l3
+set 25,%l2
+st %l2,[%l3]
+set BMinusU2,%l3
+set Radix,%l2
+ld2 [%l2],%f26
+fsubd %f26,%f30,%f24
+st2 %f24,[%l3]
+ld2 [%l3],%f24
+fsubd %f24,%f28,%f28
+faddd %f28,%f30,%f28
+st2 %f28,[%l3]
+fcmped %f26,%f30; nop; fbue .L104; nop
+set U1,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+std %f30,[%fp+-16]
+set Radix,%l3
+ld2 [%l3],%f28
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set X,%l3
+set TwoForty,%l2
+ld2 [%l2],%f28
+fnegs %f28,%f28; fmovs %f29,%f29
+ldd [%fp+-16],%f26
+fmuld %f28,%f26,%f28
+fdivd %f28,%f30,%f30
+st2 %f30,[%l3]
+set Half,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Y,%l3
+st2 %f30,[%l3]
+set X,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Four,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L106; nop
+set X,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L106:
+set Precision,%l3
+set X,%l2
+ld2 [%l2],%f30
+set TwoForty,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l3]
+set Half,%l2
+ld2 [%l2],%f30
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Y,%l3
+st2 %f30,[%l3]
+set Precision,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set TwoForty,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+set Half,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L108; nop
+set Precision,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L108:
+.L104:
+set Precision,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-16]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-16],%f28
+fcmped %f28,%f30; nop; fbne .L112; nop
+set Radix,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L110; nop
+.L112:
+set .L113,%o0
+call printf; nop
+set .L114,%o0
+call printf; nop
+.L110:
+set Radix,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L115; nop
+set .L117,%o0
+call printf; nop
+ba .L116; nop
+.L115:
+set .L118,%o0
+set Precision,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L116:
+set 1,%o0
+set Nine,%l3
+ld2 [%l3],%f30
+set U2,%l3
+ld2 [%l3],%f28
+fmuld %f28,%f30,%f28
+fmuld %f28,%f30,%f30
+set TwoForty,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L121; nop
+set 1,%l3
+st %l3,[%fp+-20]
+ba .L122; nop
+.L121:
+st %g0,[%fp+-20]
+.L122:
+ld [%fp+-20],%o1
+set .L120,%o2
+call TstCond; nop
+set Milestone,%l3
+set 30,%l2
+st %l2,[%l3]
+set Four,%l3
+ld2 [%l3],%f30
+set Three,%l3
+ld2 [%l3],%f28
+set One,%l3
+ld2 [%l3],%f26
+fdivd %f26,%f30,%f24
+fdivd %f30,%f28,%f30
+fsubd %f30,%f26,%f30
+fsubd %f30,%f24,%f30
+fmuld %f30,%f28,%f30
+fsubd %f30,%f24,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set X,%l3
+st2 %f30,[%l3]
+.L123:
+set Z2,%l3
+set X,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set One,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+set Half,%l3
+ld2 [%l3],%f26
+fmuld %f26,%f28,%f26
+set ThirtyTwo,%l3
+ld2 [%l3],%f24
+fmuld %f24,%f28,%f24
+fmuld %f24,%f28,%f28
+faddd %f26,%f28,%f28
+faddd %f30,%f28,%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l2]
+.L124:
+set X,%l3
+ld2 [%l3],%f30
+set Z2,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbule .L126; nop
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L123; nop
+.L126:
+set Three,%l3
+ld2 [%l3],%f30
+set Four,%l3
+ld2 [%l3],%f28
+fdivd %f30,%f28,%f26
+set Two,%l3
+ld2 [%l3],%f24
+fdivd %f24,%f30,%f24
+fsubd %f26,%f24,%f26
+fmuld %f26,%f30,%f30
+set One,%l3
+ld2 [%l3],%f26
+fdivd %f26,%f28,%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Z,%l3
+st2 %f30,[%l3]
+set Y,%l3
+st2 %f30,[%l3]
+set X,%l3
+st2 %f30,[%l3]
+.L127:
+set Z1,%l3
+set Z,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set One,%l1
+ld2 [%l1],%f30
+set Two,%l1
+ld2 [%l1],%f28
+fdivd %f30,%f28,%f30
+ld2 [%l3],%f28
+set Half,%l3
+ld2 [%l3],%f26
+fmuld %f26,%f28,%f26
+set ThirtyTwo,%l3
+ld2 [%l3],%f24
+fmuld %f24,%f28,%f24
+fmuld %f24,%f28,%f28
+faddd %f26,%f28,%f28
+fsubd %f30,%f28,%f28
+faddd %f28,%f30,%f28
+fsubd %f30,%f28,%f28
+faddd %f28,%f30,%f30
+st2 %f30,[%l2]
+.L128:
+set Z,%l3
+ld2 [%l3],%f30
+set Z1,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbule .L130; nop
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L127; nop
+.L130:
+.L131:
+.L134:
+set Y1,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Half,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f26
+set ThirtyTwo,%l3
+ld2 [%l3],%f24
+fmuld %f24,%f28,%f24
+fmuld %f24,%f28,%f28
+faddd %f26,%f28,%f28
+fsubd %f30,%f28,%f28
+faddd %f28,%f30,%f28
+fsubd %f30,%f28,%f28
+faddd %f28,%f30,%f30
+st2 %f30,[%l2]
+.L135:
+set Y,%l3
+ld2 [%l3],%f30
+set Y1,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbule .L137; nop
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L134; nop
+.L137:
+set X1,%l3
+set X,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set F9,%l3
+ld2 [%l3],%f28
+set Half,%l3
+ld2 [%l3],%f26
+fmuld %f26,%f30,%f26
+set ThirtyTwo,%l3
+ld2 [%l3],%f24
+fmuld %f24,%f30,%f24
+fmuld %f24,%f30,%f30
+faddd %f26,%f30,%f30
+fsubd %f30,%f28,%f30
+faddd %f30,%f28,%f30
+st2 %f30,[%l2]
+.L132:
+set X,%l3
+ld2 [%l3],%f30
+set X1,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbule .L138; nop
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L131; nop
+.L138:
+set X1,%l3
+ld2 [%l3],%f30
+set Y1,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L141; nop
+set Z1,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L139; nop
+.L141:
+set 1,%o0
+set .L142,%o1
+call BadCond; nop
+set .L143,%o0
+set X1,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Y1,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+set Z1,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*5+68]
+st %f31,[%sp+4*6+68]
+ld [%sp+4*5+68],%o5
+call printf; nop
+set .L144,%o0
+call printf; nop
+set .L145,%o0
+call printf; nop
+set .L146,%o0
+call notify; nop
+set U1,%l3
+ld2 [%l3],%f30
+set X1,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbue .L150; nop
+set Y1,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbue .L150; nop
+set Z1,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L140; nop
+.L150:
+set .L151,%o0
+call printf; nop
+ba .L140; nop
+.L139:
+set Z1,%l3
+ld2 [%l3],%f30
+set U1,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L154; nop
+set Z2,%l3
+ld2 [%l3],%f30
+set U2,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L152; nop
+.L154:
+set Z1,%l3
+ld2 [%l3],%f30
+set U1,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L157; nop
+set Z2,%l3
+ld2 [%l3],%f30
+set U2,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L155; nop
+.L157:
+mov %g0,%o0
+set .L158,%o1
+call BadCond; nop
+set .L159,%o0
+call notify; nop
+set .L160,%o0
+set U1,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Z1,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+set .L161,%o0
+set U2,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Z2,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+ba .L156; nop
+.L155:
+set Zero,%l3
+ld2 [%l3],%f30
+set Z1,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbule .L164; nop
+set Z2,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L162; nop
+.L164:
+set .L165,%o0
+set Radix,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L166,%o0
+call printf; nop
+set .L167,%o0
+set Z1,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Z2,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+set .L168,%o0
+call notify; nop
+.L162:
+set Z1,%l3
+ld2 [%l3],%f30
+set Z2,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L171; nop
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L169; nop
+.L171:
+set X,%l3
+set Z1,%l2
+ld2 [%l2],%f30
+set U1,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l3]
+set Y,%l2
+set Z2,%l1
+ld2 [%l1],%f30
+set U2,%l1
+ld2 [%l1],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l2]
+ld2 [%l2],%f30
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L172; nop
+set X,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L172:
+set X,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Q,%l3
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%l3]
+set .L174,%o0
+call printf; nop
+set Radix,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set .L175,%o0
+set Q,%l3
+ld2 [%l3],%f28
+fdivd %f28,%f30,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L94,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set .L176,%o0
+set Q,%l3
+ld2 [%l3],%f28
+fdivd %f28,%f30,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L169:
+set .L151,%o0
+call printf; nop
+.L156:
+.L152:
+.L140:
+call Pause; nop
+set Milestone,%l3
+set 35,%l2
+st %l2,[%l3]
+set Radix,%l3
+ld2 [%l3],%f30
+set Two,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L177; nop
+set X,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+set W,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f30,%f30
+fdivd %f28,%f30,%f30
+st2 %f30,[%l3]
+set Y,%l2
+ld2 [%l3],%f30
+set One,%l1
+ld2 [%l1],%f28
+faddd %f30,%f28,%f28
+st2 %f28,[%l2]
+set Z,%l1
+ld2 [%l2],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l1]
+set T,%l2
+ld2 [%l1],%f30
+set U2,%l1
+ld2 [%l1],%f28
+faddd %f30,%f28,%f26
+st2 %f26,[%l2]
+ld2 [%l2],%f26
+fsubd %f26,%f30,%f30
+st2 %f30,[%l3]
+mov %g0,%o0
+ld2 [%l3],%f30
+fcmped %f30,%f28; nop; fbne .L181; nop
+set 1,%l3
+st %l3,[%fp+-24]
+ba .L182; nop
+.L181:
+st %g0,[%fp+-24]
+.L182:
+ld [%fp+-24],%o1
+set .L180,%o2
+call TstCond; nop
+set X,%l3
+ld2 [%l3],%f30
+set U2,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L183; nop
+set .L185,%o0
+call printf; nop
+.L183:
+.L177:
+set .L186,%o0
+call printf; nop
+set Y,%l3
+set F9,%l2
+ld2 [%l2],%f30
+set One,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f26
+st2 %f26,[%l3]
+set Z,%l2
+fmuld %f28,%f30,%f26
+st2 %f26,[%l2]
+set X,%l1
+set Half,%l0
+ld2 [%l0],%f26
+fsubd %f30,%f26,%f30
+st2 %f30,[%l1]
+ld2 [%l1],%f30
+ld2 [%l3],%f24
+fsubd %f24,%f26,%f24
+fsubd %f24,%f30,%f24
+st2 %f24,[%l3]
+ld2 [%l2],%f24
+fsubd %f24,%f26,%f26
+fsubd %f26,%f30,%f30
+st2 %f30,[%l2]
+set U2,%l3
+ld2 [%l3],%f30
+faddd %f28,%f30,%f26
+st2 %f26,[%l1]
+set T,%l3
+ld2 [%l1],%f26
+set Radix,%l2
+ld2 [%l2],%f24
+fmuld %f26,%f24,%f22
+st2 %f22,[%l3]
+set R,%l2
+fmuld %f24,%f26,%f26
+st2 %f26,[%l2]
+ld2 [%l3],%f26
+fsubd %f26,%f24,%f26
+st2 %f26,[%l1]
+fmuld %f24,%f30,%f30
+ld2 [%l1],%f26
+fsubd %f26,%f30,%f26
+st2 %f26,[%l1]
+ld2 [%l2],%f26
+fsubd %f26,%f24,%f26
+st2 %f26,[%l3]
+ld2 [%l3],%f26
+fsubd %f26,%f30,%f30
+st2 %f30,[%l3]
+fsubd %f24,%f28,%f30
+ld2 [%l1],%f28
+fmuld %f28,%f30,%f28
+st2 %f28,[%l1]
+ld2 [%l3],%f28
+fmuld %f28,%f30,%f30
+st2 %f30,[%l3]
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L187; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L187; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L187; nop
+set T,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L187; nop
+set GMult,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L188; nop
+.L187:
+mov %g0,%l3
+set GMult,%l2
+st %l3,[%l2]
+set 1,%o0
+mov %l3,%o1
+set .L189,%o2
+call TstCond; nop
+.L188:
+set Z,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set X,%l2
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+faddd %f28,%f30,%f28
+st2 %f28,[%l2]
+ld2 [%l2],%f28
+faddd %f28,%f30,%f30
+fmuld %f28,%f28,%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set U2,%l3
+ld2 [%l3],%f28
+set Y,%l3
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+set X,%l3
+set One,%l2
+ld2 [%l2],%f30
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+fsubd %f30,%f28,%f28
+fmuld %f30,%f30,%f30
+fsubd %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Z,%l3
+set U1,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+mov %g0,%o0
+set Zero,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L192; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L192; nop
+set 1,%l3
+st %l3,[%fp+-24]
+ba .L193; nop
+.L192:
+st %g0,[%fp+-24]
+.L193:
+ld [%fp+-24],%o1
+set .L191,%o2
+call TstCond; nop
+set Y,%l3
+set One,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f26
+st2 %f26,[%l3]
+set X,%l2
+faddd %f30,%f28,%f28
+st2 %f28,[%l2]
+set Z,%l1
+ld2 [%l3],%f28
+fdivd %f30,%f28,%f28
+st2 %f28,[%l1]
+ld2 [%l1],%f28
+ld2 [%l2],%f26
+fsubd %f28,%f26,%f28
+st2 %f28,[%l3]
+set Three,%l3
+ld2 [%l3],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l2]
+set Nine,%l3
+ld2 [%l3],%f30
+fdivd %f28,%f30,%f28
+st2 %f28,[%l1]
+ld2 [%l1],%f28
+ld2 [%l2],%f26
+fsubd %f26,%f28,%f26
+st2 %f26,[%l2]
+set T,%l3
+set TwentySeven,%l2
+ld2 [%l2],%f26
+fdivd %f30,%f26,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+fsubd %f28,%f30,%f30
+st2 %f30,[%l1]
+set 2,%o0
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L196; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L196; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L196; nop
+set 1,%l3
+st %l3,[%fp+-28]
+ba .L197; nop
+.L196:
+st %g0,[%fp+-28]
+.L197:
+ld [%fp+-28],%o1
+set .L195,%o2
+call TstCond; nop
+set Y,%l3
+set F9,%l2
+ld2 [%l2],%f30
+set One,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f26
+st2 %f26,[%l3]
+set X,%l2
+set Half,%l1
+ld2 [%l1],%f26
+fsubd %f30,%f26,%f30
+st2 %f30,[%l2]
+ld2 [%l3],%f30
+fsubd %f30,%f26,%f30
+ld2 [%l2],%f26
+fsubd %f30,%f26,%f30
+st2 %f30,[%l3]
+set U2,%l3
+ld2 [%l3],%f30
+faddd %f28,%f30,%f30
+st2 %f30,[%l2]
+set T,%l3
+ld2 [%l2],%f30
+fdivd %f30,%f28,%f28
+st2 %f28,[%l3]
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l2]
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L198; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L198; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L198; nop
+set GDiv,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L199; nop
+.L198:
+mov %g0,%l3
+set GDiv,%l2
+st %l3,[%l2]
+set 1,%o0
+mov %l3,%o1
+set .L200,%o2
+call TstCond; nop
+.L199:
+set X,%l3
+set One,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l3]
+set Y,%l2
+set Half,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l2]
+set 1,%o0
+ld2 [%l2],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L203; nop
+set 1,%l3
+st %l3,[%fp+-32]
+ba .L204; nop
+.L203:
+st %g0,[%fp+-32]
+.L204:
+ld [%fp+-32],%o1
+set .L202,%o2
+call TstCond; nop
+set X,%l3
+set One,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f26
+st2 %f26,[%l3]
+set Y,%l2
+set Radix,%l1
+ld2 [%l1],%f26
+fmuld %f26,%f28,%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l2]
+set Z,%l1
+ld2 [%l3],%f30
+fmuld %f30,%f26,%f28
+st2 %f28,[%l1]
+set T,%l0
+ld2 [%l2],%f28
+fmuld %f28,%f26,%f24
+st2 %f24,[%l0]
+set R,%o5
+ld2 [%l1],%f24
+fdivd %f24,%f26,%f24
+st2 %f24,[%o5]
+set StickyBit,%l1
+ld2 [%l0],%f24
+fdivd %f24,%f26,%f26
+st2 %f26,[%l1]
+ld2 [%o5],%f26
+fsubd %f26,%f30,%f30
+st2 %f30,[%l3]
+ld2 [%l1],%f30
+fsubd %f30,%f28,%f30
+st2 %f30,[%l2]
+mov %g0,%o0
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L207; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L207; nop
+set 1,%l3
+st %l3,[%fp+-36]
+ba .L208; nop
+.L207:
+st %g0,[%fp+-36]
+.L208:
+ld [%fp+-36],%o1
+set .L206,%o2
+call TstCond; nop
+set Y,%l3
+set One,%l2
+ld2 [%l2],%f30
+set U1,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l3]
+set X,%l2
+set F9,%l1
+ld2 [%l1],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l2]
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+set T,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l3]
+set Z,%l2
+set BMinusU2,%l1
+ld2 [%l1],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l2]
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+set U1,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L209; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L209; nop
+set U2,%l3
+ld2 [%l3],%f30
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L209; nop
+set T,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L209; nop
+set GAddSub,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L210; nop
+.L209:
+mov %g0,%l3
+set GAddSub,%l2
+st %l3,[%l2]
+set 1,%o0
+mov %l3,%o1
+set .L211,%o2
+call TstCond; nop
+.L210:
+set F9,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L212; nop
+fsubd %f30,%f28,%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L212; nop
+set 1,%o0
+set .L214,%o1
+call BadCond; nop
+set .L215,%o0
+call printf; nop
+set .L216,%o0
+call printf; nop
+set .L217,%o0
+call printf; nop
+.L212:
+set GMult,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L218; nop
+set GDiv,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L218; nop
+set GAddSub,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L218; nop
+set .L220,%o0
+call printf; nop
+.L218:
+set Milestone,%l3
+set 40,%l2
+st %l2,[%l3]
+call Pause; nop
+set .L221,%o0
+call printf; nop
+set RMult,%l2
+st %g0,[%l2]
+set RDiv,%l2
+st %g0,[%l2]
+set RAddSub,%l2
+st %g0,[%l2]
+set Two,%l2
+ld2 [%l2],%f30
+set RadixD2,%l2
+set Radix,%l1
+ld2 [%l1],%f28
+fdivd %f28,%f30,%f28
+st2 %f28,[%l2]
+set A1,%l2
+st2 %f30,[%l2]
+set Done,%l2
+st %g0,[%l2]
+.L222:
+set AInvrse,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L225:
+set AInvrse,%l3
+ld2 [%l3],%f30
+set X,%l2
+st2 %f30,[%l2]
+set A1,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l3]
+.L226:
+set AInvrse,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set AInvrse,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L225; nop
+set X,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L231; nop
+set A1,%l3
+ld2 [%l3],%f30
+set Three,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L229; nop
+.L231:
+set 1,%l3
+st %l3,[%fp+-40]
+ba .L230; nop
+.L229:
+st %g0,[%fp+-40]
+.L230:
+set Done,%l3
+ld [%fp+-40],%l2
+st %l2,[%l3]
+set Done,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L232; nop
+set A1,%l3
+set Nine,%l2
+ld2 [%l2],%f30
+set One,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+.L232:
+.L223:
+set Done,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L222; nop
+set X,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L234; nop
+set A1,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L234:
+set AInvrse,%l3
+set A1,%l2
+ld2 [%l2],%f30
+set One,%l2
+ld2 [%l2],%f28
+fdivd %f28,%f30,%f28
+st2 %f28,[%l3]
+set X,%l2
+st2 %f30,[%l2]
+set Y,%l2
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+set Done,%l3
+st %g0,[%l3]
+.L236:
+set Z,%l3
+set Half,%l2
+ld2 [%l2],%f30
+set X,%l2
+ld2 [%l2],%f28
+set Y,%l2
+ld2 [%l2],%f26
+fmuld %f28,%f26,%f28
+fsubd %f28,%f30,%f28
+st2 %f28,[%l3]
+mov %g0,%o0
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L241; nop
+set 1,%l3
+st %l3,[%fp+-40]
+ba .L242; nop
+.L241:
+st %g0,[%fp+-40]
+.L242:
+ld [%fp+-40],%o1
+set .L240,%o2
+call TstCond; nop
+set X,%l3
+ld2 [%l3],%f30
+set Radix,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L244; nop
+set 1,%l3
+st %l3,[%fp+-44]
+ba .L245; nop
+.L244:
+st %g0,[%fp+-44]
+.L245:
+set Done,%l3
+ld [%fp+-44],%l2
+st %l2,[%l3]
+set X,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Y,%l2
+set One,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l2]
+.L237:
+set Done,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L236; nop
+set Y2,%l3
+set One,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f26
+st2 %f26,[%l3]
+set Y1,%l2
+fsubd %f30,%f28,%f30
+st2 %f30,[%l2]
+set X,%l1
+set OneAndHalf,%l0
+ld2 [%l0],%f30
+fsubd %f30,%f28,%f26
+st2 %f26,[%l1]
+set Y,%l0
+faddd %f30,%f28,%f26
+st2 %f26,[%l0]
+set Z,%o5
+ld2 [%l1],%f26
+ld2 [%l3],%f24
+fsubd %f26,%f28,%f22
+fmuld %f22,%f24,%f22
+st2 %f22,[%o5]
+set T,%l3
+ld2 [%l0],%f22
+ld2 [%l2],%f20
+fmuld %f22,%f20,%f18
+st2 %f18,[%l3]
+ld2 [%o5],%f18
+fsubd %f18,%f26,%f18
+st2 %f18,[%o5]
+ld2 [%l3],%f18
+fsubd %f18,%f26,%f18
+st2 %f18,[%l3]
+fmuld %f26,%f24,%f26
+st2 %f26,[%l1]
+faddd %f22,%f28,%f28
+fmuld %f28,%f20,%f28
+st2 %f28,[%l0]
+ld2 [%l1],%f28
+fsubd %f28,%f30,%f28
+st2 %f28,[%l1]
+ld2 [%l0],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l0]
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L246; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L246; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L246; nop
+set T,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L246; nop
+set X,%l3
+set OneAndHalf,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f26
+set Y2,%l2
+ld2 [%l2],%f24
+fmuld %f26,%f24,%f22
+st2 %f22,[%l3]
+set Y,%l2
+fsubd %f30,%f28,%f30
+fsubd %f30,%f28,%f22
+st2 %f22,[%l2]
+set Z,%l1
+faddd %f26,%f28,%f26
+st2 %f26,[%l1]
+set T,%l0
+set Y1,%o5
+ld2 [%o5],%f26
+fmuld %f30,%f26,%f30
+st2 %f30,[%l0]
+ld2 [%l1],%f30
+faddd %f30,%f28,%f22
+ld2 [%l3],%f20
+fsubd %f20,%f22,%f20
+st2 %f20,[%l3]
+set StickyBit,%l3
+ld2 [%l2],%f20
+fmuld %f20,%f26,%f18
+st2 %f18,[%l3]
+set S,%o4
+fmuld %f30,%f24,%f30
+st2 %f30,[%o4]
+ld2 [%l0],%f30
+fsubd %f30,%f20,%f30
+st2 %f30,[%l0]
+fsubd %f28,%f20,%f30
+ld2 [%l3],%f20
+faddd %f30,%f20,%f30
+st2 %f30,[%l2]
+ld2 [%o4],%f30
+faddd %f22,%f28,%f22
+fsubd %f30,%f22,%f30
+st2 %f30,[%l1]
+faddd %f24,%f28,%f30
+fmuld %f30,%f26,%f30
+st2 %f30,[%l3]
+fmuld %f24,%f26,%f30
+st2 %f30,[%o5]
+ld2 [%l3],%f30
+fsubd %f30,%f24,%f30
+st2 %f30,[%l3]
+ld2 [%o5],%f30
+set Half,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%o5]
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L248; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L248; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L248; nop
+set T,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L248; nop
+set StickyBit,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L248; nop
+set Y1,%l3
+ld2 [%l3],%f30
+set Half,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L248; nop
+set RMult,%l3
+set 1,%l2
+st %l2,[%l3]
+set .L250,%o0
+call printf; nop
+ba .L249; nop
+.L248:
+set U2,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+set X,%l3
+ld2 [%l3],%f26
+faddd %f26,%f30,%f26
+fcmped %f26,%f28; nop; fbne .L251; nop
+set Y,%l3
+ld2 [%l3],%f26
+fcmped %f26,%f28; nop; fbuge .L251; nop
+set Z,%l3
+ld2 [%l3],%f26
+faddd %f26,%f30,%f26
+fcmped %f26,%f28; nop; fbne .L251; nop
+set T,%l3
+ld2 [%l3],%f26
+fcmped %f26,%f28; nop; fbuge .L251; nop
+set StickyBit,%l3
+ld2 [%l3],%f26
+faddd %f26,%f30,%f30
+fcmped %f30,%f28; nop; fbne .L251; nop
+set Y1,%l3
+ld2 [%l3],%f30
+set Half,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L251; nop
+set RMult,%l3
+set 2,%l2
+st %l2,[%l3]
+set .L253,%o0
+call printf; nop
+ba .L252; nop
+.L251:
+set .L254,%o0
+call printf; nop
+.L252:
+.L249:
+set RMult,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L247; nop
+set GMult,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L247; nop
+set .L257,%o0
+call notify; nop
+ba .L247; nop
+.L246:
+set .L254,%o0
+call printf; nop
+.L247:
+set Milestone,%l3
+set 45,%l2
+st %l2,[%l3]
+set Y2,%l3
+set One,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f26
+st2 %f26,[%l3]
+set Y1,%l2
+fsubd %f30,%f28,%f30
+st2 %f30,[%l2]
+set Z,%l1
+set OneAndHalf,%l0
+ld2 [%l0],%f30
+faddd %f30,%f28,%f26
+faddd %f26,%f28,%f24
+st2 %f24,[%l1]
+set X,%l0
+ld2 [%l1],%f24
+ld2 [%l3],%f22
+fdivd %f24,%f22,%f20
+st2 %f20,[%l0]
+set T,%l3
+fsubd %f30,%f28,%f20
+fsubd %f20,%f28,%f20
+st2 %f20,[%l3]
+set Y,%o5
+ld2 [%l3],%f20
+ld2 [%l2],%f18
+fsubd %f20,%f28,%f16
+fdivd %f16,%f18,%f16
+st2 %f16,[%o5]
+faddd %f24,%f28,%f24
+fdivd %f24,%f22,%f24
+st2 %f24,[%l1]
+ld2 [%l0],%f24
+fsubd %f24,%f30,%f24
+st2 %f24,[%l0]
+ld2 [%o5],%f24
+fsubd %f24,%f20,%f24
+st2 %f24,[%o5]
+fdivd %f20,%f18,%f24
+st2 %f24,[%l3]
+ld2 [%l1],%f24
+fsubd %f24,%f26,%f26
+st2 %f26,[%l1]
+fsubd %f28,%f30,%f30
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L258; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L258; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L258; nop
+set T,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L258; nop
+set X,%l3
+set OneAndHalf,%l2
+ld2 [%l2],%f30
+set Y2,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f26
+st2 %f26,[%l3]
+set Y,%l1
+set U2,%l0
+ld2 [%l0],%f26
+fsubd %f30,%f26,%f24
+st2 %f24,[%l1]
+set Z,%l0
+faddd %f30,%f26,%f24
+st2 %f24,[%l0]
+ld2 [%l1],%f24
+ld2 [%l3],%f22
+fsubd %f22,%f24,%f22
+st2 %f22,[%l3]
+set T,%l3
+set Y1,%o5
+ld2 [%o5],%f22
+fdivd %f30,%f22,%f20
+st2 %f20,[%l3]
+fdivd %f24,%f22,%f24
+st2 %f24,[%l1]
+ld2 [%l0],%f24
+ld2 [%l3],%f22
+faddd %f24,%f26,%f20
+fsubd %f22,%f20,%f22
+st2 %f22,[%l3]
+ld2 [%l1],%f22
+fsubd %f22,%f24,%f22
+st2 %f22,[%l1]
+fdivd %f24,%f28,%f24
+st2 %f24,[%l0]
+faddd %f28,%f26,%f26
+fdivd %f26,%f28,%f26
+st2 %f26,[%o5]
+ld2 [%l0],%f26
+fsubd %f26,%f30,%f30
+st2 %f30,[%l0]
+ld2 [%o5],%f30
+fsubd %f30,%f28,%f30
+st2 %f30,[%l2]
+set F9,%l3
+ld2 [%l3],%f30
+set U1,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f28
+fdivd %f28,%f30,%f30
+st2 %f30,[%o5]
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L260; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L260; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L260; nop
+set T,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L260; nop
+set Y2,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L260; nop
+fcmped %f28,%f30; nop; fbne .L260; nop
+set Half,%l3
+ld2 [%l3],%f30
+set Y1,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f28
+set F9,%l3
+ld2 [%l3],%f26
+fsubd %f26,%f30,%f30
+fcmped %f28,%f30; nop; fbne .L260; nop
+set RDiv,%l3
+set 1,%l2
+st %l2,[%l3]
+set .L262,%o0
+call printf; nop
+set GDiv,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L261; nop
+set .L265,%o0
+call notify; nop
+ba .L261; nop
+.L260:
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbuge .L266; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbuge .L266; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbuge .L266; nop
+set T,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbuge .L266; nop
+set Y2,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbuge .L266; nop
+set Half,%l3
+ld2 [%l3],%f30
+set Y1,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f28
+set F9,%l3
+ld2 [%l3],%f26
+fsubd %f26,%f30,%f30
+fcmped %f28,%f30; nop; fbuge .L266; nop
+set RDiv,%l3
+set 2,%l2
+st %l2,[%l3]
+set .L268,%o0
+call printf; nop
+.L266:
+.L261:
+.L258:
+set RDiv,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L269; nop
+set .L271,%o0
+call printf; nop
+.L269:
+set BInvrse,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+set One,%l2
+ld2 [%l2],%f28
+fdivd %f28,%f30,%f28
+st2 %f28,[%l3]
+mov %g0,%o0
+set Half,%l2
+ld2 [%l2],%f28
+ld2 [%l3],%f26
+fmuld %f26,%f30,%f30
+fsubd %f30,%f28,%f30
+fcmped %f30,%f28; nop; fbne .L274; nop
+set 1,%l3
+st %l3,[%fp+-40]
+ba .L275; nop
+.L274:
+st %g0,[%fp+-40]
+.L275:
+ld [%fp+-40],%o1
+set .L273,%o2
+call TstCond; nop
+set Milestone,%l3
+set 50,%l2
+st %l2,[%l3]
+mov %g0,%o0
+set Half,%l3
+ld2 [%l3],%f30
+set F9,%l3
+ld2 [%l3],%f28
+set U1,%l3
+ld2 [%l3],%f26
+faddd %f28,%f26,%f28
+fsubd %f28,%f30,%f28
+fcmped %f28,%f30; nop; fbne .L278; nop
+set One,%l3
+ld2 [%l3],%f30
+set BMinusU2,%l3
+ld2 [%l3],%f28
+set U2,%l3
+ld2 [%l3],%f26
+faddd %f28,%f26,%f28
+fsubd %f28,%f30,%f28
+set Radix,%l3
+ld2 [%l3],%f26
+fsubd %f26,%f30,%f30
+fcmped %f28,%f30; nop; fbne .L278; nop
+set 1,%l3
+st %l3,[%fp+-44]
+ba .L279; nop
+.L278:
+st %g0,[%fp+-44]
+.L279:
+ld [%fp+-44],%o1
+set .L277,%o2
+call TstCond; nop
+set X,%l3
+set One,%l2
+ld2 [%l2],%f30
+set U1,%l2
+ld2 [%l2],%f28
+fmuld %f28,%f28,%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l3]
+set Y,%l2
+set U2,%l1
+ld2 [%l1],%f28
+fsubd %f30,%f28,%f26
+fmuld %f28,%f26,%f28
+faddd %f30,%f28,%f28
+st2 %f28,[%l2]
+set Z,%l1
+set Half,%l0
+ld2 [%l0],%f28
+set F9,%l0
+ld2 [%l0],%f26
+fsubd %f26,%f28,%f26
+st2 %f26,[%l1]
+ld2 [%l3],%f26
+fsubd %f26,%f28,%f28
+ld2 [%l1],%f26
+fsubd %f28,%f26,%f28
+st2 %f28,[%l3]
+ld2 [%l2],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l2]
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L280; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L280; nop
+set RAddSub,%l3
+set 2,%l2
+st %l2,[%l3]
+set .L282,%o0
+call printf; nop
+.L280:
+set GAddSub,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L283; nop
+set X,%l3
+set Half,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f26
+fmuld %f26,%f28,%f26
+st2 %f26,[%l3]
+set Y,%l2
+fsubd %f30,%f28,%f30
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+set One,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f26
+faddd %f30,%f26,%f26
+st2 %f26,[%l3]
+ld2 [%l2],%f26
+faddd %f30,%f26,%f26
+st2 %f26,[%l2]
+faddd %f30,%f28,%f28
+ld2 [%l3],%f26
+fsubd %f28,%f26,%f28
+st2 %f28,[%l3]
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l2]
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L285; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L285; nop
+set X,%l3
+set Half,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+set U1,%l2
+ld2 [%l2],%f26
+faddd %f30,%f28,%f24
+fmuld %f24,%f26,%f24
+st2 %f24,[%l3]
+set Y,%l2
+fsubd %f30,%f28,%f30
+fmuld %f30,%f26,%f30
+st2 %f30,[%l2]
+set One,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l3]
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l2]
+set F9,%l1
+ld2 [%l1],%f28
+ld2 [%l3],%f26
+fsubd %f28,%f26,%f28
+st2 %f28,[%l3]
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l2]
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L287; nop
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L287; nop
+set RAddSub,%l3
+set 1,%l2
+st %l2,[%l3]
+set .L289,%o0
+call printf; nop
+set GAddSub,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L284; nop
+set .L292,%o0
+call notify; nop
+ba .L284; nop
+.L287:
+set .L293,%o0
+call printf; nop
+ba .L284; nop
+.L285:
+set .L293,%o0
+call printf; nop
+ba .L284; nop
+.L283:
+set .L293,%o0
+call printf; nop
+.L284:
+set One,%l3
+ld2 [%l3],%f30
+set S,%l3
+st2 %f30,[%l3]
+set X,%l3
+set Half,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f26
+fmuld %f28,%f26,%f26
+faddd %f30,%f26,%f26
+st2 %f26,[%l3]
+set Y,%l2
+set U2,%l1
+ld2 [%l1],%f26
+faddd %f30,%f26,%f30
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+set Z,%l1
+ld2 [%l3],%f30
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f26
+st2 %f26,[%l1]
+set T,%l3
+fsubd %f28,%f30,%f30
+st2 %f30,[%l3]
+set StickyBit,%l2
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l2]
+ld2 [%l2],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L294; nop
+set S,%l3
+set Zero,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set 3,%o0
+set .L296,%o1
+call BadCond; nop
+.L294:
+set StickyBit,%l3
+set Zero,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set GMult,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L297; nop
+set GDiv,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L297; nop
+set GAddSub,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L297; nop
+set RMult,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L297; nop
+set RDiv,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L297; nop
+set RAddSub,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L297; nop
+set RadixD2,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set RadixD2,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L297; nop
+set .L299,%o0
+call printf; nop
+set X,%l3
+set Half,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+set U1,%l2
+ld2 [%l2],%f26
+faddd %f30,%f26,%f26
+fmuld %f26,%f28,%f26
+st2 %f26,[%l3]
+set Y,%l2
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+set One,%l1
+ld2 [%l1],%f30
+set Z,%l1
+ld2 [%l2],%f28
+faddd %f30,%f28,%f28
+st2 %f28,[%l1]
+set T,%l2
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l2]
+set One,%l3
+ld2 [%l3],%f30
+set Z,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f28
+set Zero,%l3
+ld2 [%l3],%f26
+fcmped %f28,%f26; nop; fbug .L300; nop
+set T,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f30
+set U2,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L300; nop
+set Z,%l3
+set Y,%l2
+set T,%l1
+ld2 [%l1],%f30
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l2]
+set T,%l3
+ld2 [%l3],%f30
+set Z,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f28
+set U2,%l3
+ld2 [%l3],%f26
+fcmped %f28,%f26; nop; fbul .L302; nop
+set Y,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L302; nop
+set X,%l3
+set Half,%l2
+ld2 [%l2],%f30
+set U1,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f26
+fmuld %f26,%f28,%f26
+st2 %f26,[%l3]
+set Y,%l2
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+set One,%l1
+ld2 [%l1],%f30
+set Z,%l1
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l1]
+set T,%l2
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l2]
+set Zero,%l3
+ld2 [%l3],%f30
+set Z,%l3
+ld2 [%l3],%f28
+set One,%l3
+ld2 [%l3],%f26
+fsubd %f28,%f26,%f28
+fcmped %f28,%f30; nop; fbne .L304; nop
+set T,%l3
+ld2 [%l3],%f28
+set F9,%l3
+ld2 [%l3],%f26
+fsubd %f28,%f26,%f28
+fcmped %f28,%f30; nop; fbne .L304; nop
+set Z,%l3
+set U1,%l2
+ld2 [%l2],%f30
+set Half,%l2
+ld2 [%l2],%f28
+fsubd %f28,%f30,%f28
+fmuld %f28,%f30,%f30
+st2 %f30,[%l3]
+set F9,%l2
+ld2 [%l2],%f30
+set T,%l2
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l2]
+set Q,%l3
+set Y,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+set F9,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+set T,%l3
+ld2 [%l3],%f26
+fsubd %f26,%f30,%f26
+fcmped %f26,%f28; nop; fbne .L306; nop
+set U1,%l3
+ld2 [%l3],%f26
+fsubd %f30,%f26,%f30
+set Q,%l3
+ld2 [%l3],%f26
+fsubd %f30,%f26,%f30
+fcmped %f30,%f28; nop; fbne .L306; nop
+set Z,%l3
+set One,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+set OneAndHalf,%l2
+ld2 [%l2],%f26
+faddd %f30,%f28,%f24
+fmuld %f24,%f26,%f24
+st2 %f24,[%l3]
+set T,%l2
+faddd %f26,%f28,%f26
+ld2 [%l3],%f24
+fsubd %f26,%f24,%f26
+faddd %f26,%f28,%f26
+st2 %f26,[%l2]
+set X,%l2
+set Radix,%l1
+ld2 [%l1],%f26
+set Half,%l1
+ld2 [%l1],%f24
+fdivd %f24,%f26,%f24
+faddd %f30,%f24,%f24
+st2 %f24,[%l2]
+set Y,%l1
+fmuld %f26,%f28,%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l1]
+ld2 [%l2],%f30
+ld2 [%l1],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set Zero,%l3
+ld2 [%l3],%f30
+set T,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L308; nop
+set X,%l3
+ld2 [%l3],%f28
+set Radix,%l3
+ld2 [%l3],%f26
+set U2,%l3
+ld2 [%l3],%f24
+fmuld %f26,%f24,%f26
+faddd %f28,%f26,%f28
+set Z,%l3
+ld2 [%l3],%f26
+fsubd %f28,%f26,%f28
+fcmped %f28,%f30; nop; fbne .L308; nop
+set Radix,%l3
+ld2 [%l3],%f30
+set Two,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L310; nop
+set X,%l3
+set Two,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f28
+st2 %f28,[%l3]
+set Y,%l2
+ld2 [%l3],%f28
+fdivd %f28,%f30,%f30
+st2 %f30,[%l2]
+ld2 [%l2],%f30
+set One,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L311; nop
+set StickyBit,%l3
+set S,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L311; nop
+.L310:
+set StickyBit,%l3
+set S,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L311:
+.L308:
+.L306:
+.L304:
+.L302:
+.L300:
+.L297:
+set StickyBit,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L314; nop
+set .L316,%o0
+call printf; nop
+ba .L315; nop
+.L314:
+set .L317,%o0
+call printf; nop
+.L315:
+set 3,%o0
+set GMult,%l2
+ld [%l2],%l2
+cmp %l2,%g0; be .L320; nop
+set GDiv,%l2
+ld [%l2],%l2
+cmp %l2,%g0; be .L320; nop
+set GAddSub,%l2
+ld [%l2],%l2
+cmp %l2,%g0; be .L320; nop
+set RMult,%l2
+ld [%l2],%l2
+cmp %l2,%g0; be .L320; nop
+set RDiv,%l2
+ld [%l2],%l2
+cmp %l2,%g0; be .L320; nop
+set RAddSub,%l2
+ld [%l2],%l2
+cmp %l2,%g0; be .L320; nop
+set 1,%l3
+st %l3,[%fp+-48]
+ba .L321; nop
+.L320:
+st %g0,[%fp+-48]
+.L321:
+ld [%fp+-48],%o1
+set .L319,%o2
+call TstCond; nop
+set Milestone,%l3
+set 60,%l2
+st %l2,[%l3]
+set .L45,%o0
+call printf; nop
+set .L322,%o0
+call printf; nop
+set .L323,%o0
+set NoTrials,%l3
+ld [%l3],%o1
+call printf; nop
+set .L324,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Random9,%l3
+st2 %f30,[%l3]
+set Random1,%l3
+set Third,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set I,%l3
+set 1,%l2
+st %l2,[%l3]
+.L325:
+call Random; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set X,%l3
+st2 %f30,[%l3]
+call Random; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Y,%l3
+st2 %f30,[%l3]
+set Z9,%l3
+set Y,%l2
+ld2 [%l2],%f30
+set X,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f26
+st2 %f26,[%l3]
+set Z,%l2
+fmuld %f28,%f30,%f30
+st2 %f30,[%l2]
+ld2 [%l2],%f30
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+set I,%l3
+ld [%l3],%l2
+add %l2,1,%l2
+st %l2,[%l3]
+.L326:
+set I,%l3
+ld [%l3],%l3
+set NoTrials,%l2
+ld [%l2],%l2
+cmp %l3,%l2; bg .L328; nop
+set Z9,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L325; nop
+.L328:
+set I,%l3
+ld [%l3],%l3
+set NoTrials,%l2
+ld [%l2],%l2
+cmp %l3,%l2; bne .L329; nop
+set Random1,%l3
+set One,%l2
+ld2 [%l2],%f30
+set Half,%l2
+ld2 [%l2],%f28
+set Three,%l2
+ld2 [%l2],%f26
+fdivd %f28,%f26,%f28
+faddd %f30,%f28,%f28
+st2 %f28,[%l3]
+set Random2,%l2
+set U2,%l1
+ld2 [%l1],%f26
+set U1,%l1
+ld2 [%l1],%f24
+faddd %f26,%f24,%f26
+faddd %f26,%f30,%f30
+st2 %f30,[%l2]
+ld2 [%l3],%f26
+ld2 [%l2],%f24
+set Z,%l3
+fmuld %f26,%f24,%f22
+st2 %f22,[%l3]
+set Y,%l3
+fmuld %f24,%f26,%f26
+st2 %f26,[%l3]
+fmuld %f28,%f30,%f30
+set Z9,%l3
+fsubd %f30,%f30,%f30
+st2 %f30,[%l3]
+.L329:
+set I,%l3
+ld [%l3],%l3
+set NoTrials,%l2
+ld [%l2],%l2
+cmp %l3,%l2; be .L331; nop
+set Z9,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L331; nop
+set 2,%o0
+set .L333,%o1
+call BadCond; nop
+ba .L332; nop
+.L331:
+set .L334,%o0
+set NoTrials,%l3
+ld [%l3],%o1
+call printf; nop
+.L332:
+set Milestone,%l3
+set 70,%l2
+st %l2,[%l3]
+set .L335,%o0
+call printf; nop
+set Zero,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-64]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-64],%f28
+fcmped %f28,%f30; nop; fbne .L338; nop
+set Zero,%l3
+ld2 [%l3],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+std %f30,[%fp+-72]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-72],%f28
+fcmped %f28,%f30; nop; fbne .L338; nop
+set One,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-80]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-80],%f28
+fcmped %f28,%f30; nop; fbne .L338; nop
+set 1,%l3
+st %l3,[%fp+-52]
+ba .L339; nop
+.L338:
+st %g0,[%fp+-52]
+.L339:
+mov %g0,%o0
+ld [%fp+-52],%o1
+set .L337,%o2
+call TstCond; nop
+set Zero,%l3
+ld2 [%l3],%f30
+set MinSqEr,%l3
+st2 %f30,[%l3]
+set MaxSqEr,%l3
+st2 %f30,[%l3]
+set J,%l3
+st2 %f30,[%l3]
+set X,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set OneUlp,%l3
+set U2,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set 1,%o0
+call SqXMinX; nop
+set BInvrse,%l3
+ld2 [%l3],%f30
+set X,%l3
+st2 %f30,[%l3]
+set OneUlp,%l3
+set U1,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set 1,%o0
+call SqXMinX; nop
+set U1,%l3
+ld2 [%l3],%f30
+set X,%l3
+st2 %f30,[%l3]
+set OneUlp,%l3
+fmuld %f30,%f30,%f30
+st2 %f30,[%l3]
+set 1,%o0
+call SqXMinX; nop
+set J,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L340; nop
+call Pause; nop
+.L340:
+set .L342,%o0
+set NoTrials,%l3
+ld [%l3],%o1
+call printf; nop
+set J,%l3
+set Zero,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set X,%l3
+set Two,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Radix,%l3
+ld2 [%l3],%f30
+set Y,%l3
+st2 %f30,[%l3]
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L343; nop
+.L345:
+set Y,%l3
+ld2 [%l3],%f30
+set X,%l2
+st2 %f30,[%l2]
+set Radix,%l2
+ld2 [%l2],%f28
+fmuld %f28,%f30,%f30
+st2 %f30,[%l3]
+.L346:
+set Y,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+set NoTrials,%l3
+ld [%l3],%l3
+st %l3,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fcmped %f30,%f28; nop; fbul .L345; nop
+.L343:
+set OneUlp,%l3
+set X,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set I,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L349; nop
+.L348:
+set X,%l3
+ld2 [%l3],%f30
+set One,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+set 2,%o0
+call SqXMinX; nop
+set J,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L351; nop
+ba .L350; nop
+.L351:
+set I,%l3
+ld [%l3],%l2
+add %l2,1,%l2
+st %l2,[%l3]
+.L349:
+set I,%l3
+ld [%l3],%l3
+set NoTrials,%l2
+ld [%l2],%l2
+cmp %l3,%l2; ble .L348; nop
+.L350:
+set .L353,%o0
+call printf; nop
+set I,%l3
+set -1,%l2
+st %l2,[%l3]
+set X,%l3
+set BMinusU2,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Radix,%l3
+ld2 [%l3],%f30
+set Y,%l3
+st2 %f30,[%l3]
+set Z,%l3
+set U2,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+set NotMonot,%l2
+st %g0,[%l2]
+set Monot,%l2
+st %g0,[%l2]
+ba .L355; nop
+.L354:
+set I,%l3
+ld [%l3],%l2
+add %l2,1,%l2
+st %l2,[%l3]
+set X,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+st2 %f30,[%l3]
+set Y,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Q,%l3
+st2 %f30,[%l3]
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+st2 %f30,[%l3]
+set Q,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L359; nop
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L357; nop
+.L359:
+set NotMonot,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L358; nop
+.L357:
+set Q,%l3
+ld2 [%l3],%f30
+set Half,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+st2 %f30,[%l3]
+set I,%l3
+ld [%l3],%l3
+cmp %l3,0; bg .L362; nop
+set Q,%l3
+ld2 [%l3],%f30
+set Radix,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f30,%f30
+fcmped %f28,%f30; nop; fbne .L360; nop
+.L362:
+set Monot,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L361; nop
+.L360:
+set I,%l3
+ld [%l3],%l3
+cmp %l3,0; ble .L363; nop
+set I,%l3
+ld [%l3],%l3
+cmp %l3,1; ble .L365; nop
+set Monot,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L364; nop
+.L365:
+set Y,%l3
+ld2 [%l3],%f30
+set BInvrse,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set U1,%l3
+ld2 [%l3],%f28
+set X,%l3
+fsubd %f30,%f28,%f26
+st2 %f26,[%l3]
+set Z,%l3
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+ba .L364; nop
+.L363:
+set Y,%l3
+set Q,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set U2,%l3
+ld2 [%l3],%f28
+set X,%l3
+fsubd %f30,%f28,%f26
+st2 %f26,[%l3]
+set Z,%l3
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+.L364:
+.L361:
+.L358:
+.L355:
+set NotMonot,%l2
+ld [%l2],%l2
+cmp %l2,%g0; bne .L367; nop
+set Monot,%l2
+ld [%l2],%l2
+cmp %l2,%g0; be .L354; nop
+.L367:
+set Monot,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L368; nop
+set .L370,%o0
+call printf; nop
+ba .L369; nop
+.L368:
+set 2,%o0
+set .L158,%o1
+call BadCond; nop
+set .L371,%o0
+set Y,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L369:
+set Milestone,%l3
+set 80,%l2
+st %l2,[%l3]
+set MinSqEr,%l3
+set Half,%l2
+ld2 [%l2],%f30
+ld2 [%l3],%f28
+faddd %f28,%f30,%f28
+st2 %f28,[%l3]
+set MaxSqEr,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l3]
+set One,%l3
+ld2 [%l3],%f30
+set U2,%l3
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set One,%l3
+ld2 [%l3],%f28
+set U2,%l3
+ld2 [%l3],%f26
+set Y,%l3
+fsubd %f30,%f28,%f30
+fdivd %f30,%f26,%f30
+st2 %f30,[%l3]
+set SqEr,%l3
+set Y,%l2
+ld2 [%l2],%f30
+fsubd %f30,%f28,%f30
+set Eight,%l2
+ld2 [%l2],%f28
+fdivd %f26,%f28,%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set MaxSqEr,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L372; nop
+set MaxSqEr,%l3
+set SqEr,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L372:
+set SqEr,%l3
+set Y,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+set Eight,%l2
+ld2 [%l2],%f26
+fdivd %f28,%f26,%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set MinSqEr,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L374; nop
+set MinSqEr,%l3
+set SqEr,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L374:
+set F9,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set U2,%l3
+ld2 [%l3],%f28
+set U1,%l3
+ld2 [%l3],%f26
+set Y,%l3
+fsubd %f30,%f28,%f30
+set One,%l2
+ld2 [%l2],%f24
+fsubd %f24,%f28,%f28
+fsubd %f30,%f28,%f30
+fdivd %f30,%f26,%f30
+st2 %f30,[%l3]
+set SqEr,%l3
+set Y,%l2
+ld2 [%l2],%f30
+set Eight,%l2
+ld2 [%l2],%f28
+fdivd %f26,%f28,%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set MaxSqEr,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L376; nop
+set MaxSqEr,%l3
+set SqEr,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L376:
+set SqEr,%l3
+set Y,%l2
+ld2 [%l2],%f30
+set One,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+set U1,%l2
+ld2 [%l2],%f28
+set Eight,%l2
+ld2 [%l2],%f26
+fdivd %f28,%f26,%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set MinSqEr,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L378; nop
+set MinSqEr,%l3
+set SqEr,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L378:
+set OneUlp,%l3
+set U2,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set X,%l2
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+set Indx,%l3
+set 1,%l2
+st %l2,[%l3]
+.L380:
+set X,%l3
+ld2 [%l3],%f30
+set U1,%l3
+ld2 [%l3],%f28
+faddd %f30,%f28,%f28
+faddd %f28,%f30,%f30
+set F9,%l3
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Y,%l3
+st2 %f30,[%l3]
+set Y,%l3
+set U2,%l2
+ld2 [%l2],%f30
+set X,%l2
+ld2 [%l2],%f28
+set OneUlp,%l2
+ld2 [%l2],%f26
+ld2 [%l3],%f24
+fsubd %f24,%f30,%f24
+set One,%l2
+ld2 [%l2],%f22
+fsubd %f22,%f30,%f30
+faddd %f30,%f28,%f30
+fsubd %f24,%f30,%f30
+fdivd %f30,%f26,%f30
+st2 %f30,[%l3]
+set Z,%l2
+set Half,%l1
+ld2 [%l1],%f30
+set U1,%l1
+ld2 [%l1],%f24
+fsubd %f24,%f28,%f24
+set F9,%l1
+ld2 [%l1],%f22
+faddd %f24,%f22,%f24
+fmuld %f24,%f30,%f24
+fmuld %f24,%f28,%f24
+fmuld %f24,%f28,%f28
+fdivd %f28,%f26,%f28
+st2 %f28,[%l2]
+set SqEr,%l1
+ld2 [%l3],%f28
+faddd %f28,%f30,%f30
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l1]
+ld2 [%l1],%f30
+set MinSqEr,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L384; nop
+set MinSqEr,%l3
+set SqEr,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L384:
+set SqEr,%l3
+set Y,%l2
+ld2 [%l2],%f30
+set Half,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+set Z,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set MaxSqEr,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L386; nop
+set MaxSqEr,%l3
+set SqEr,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L386:
+set Indx,%l3
+ld [%l3],%l3
+cmp %l3,1; be .L390; nop
+cmp %l3,3; bne .L388; nop
+.L390:
+set X,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call Sign; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+std %f30,[%fp+-88]
+set OneUlp,%l2
+ld2 [%l2],%f28
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Eight,%l2
+ld2 [%l2],%f28
+set Nine,%l2
+ld2 [%l2],%f26
+fmuld %f26,%f30,%f30
+fdivd %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set OneUlp,%l2
+ld2 [%l2],%f28
+ldd [%fp+-88],%f26
+fmuld %f28,%f26,%f28
+fmuld %f28,%f30,%f30
+st2 %f30,[%l3]
+ba .L389; nop
+.L388:
+set OneUlp,%l3
+set U1,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set X,%l2
+ld2 [%l3],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%l2]
+.L389:
+.L381:
+set Indx,%l3
+ld [%l3],%l2
+add %l2,1,%l2
+st %l2,[%l3]
+set Indx,%l3
+ld [%l3],%l3
+cmp %l3,3; ble .L380; nop
+set Milestone,%l3
+set 85,%l2
+st %l2,[%l3]
+set SqRWrng,%l2
+st %g0,[%l2]
+set Anomaly,%l2
+st %g0,[%l2]
+set RSqrt,%l2
+st %g0,[%l2]
+set Radix,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L391; nop
+set .L393,%o0
+call printf; nop
+set Precision,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-88]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Radix,%l3
+ld2 [%l3],%f28
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+set One,%l3
+ld2 [%l3],%f28
+ldd [%fp+-88],%f26
+faddd %f28,%f26,%f28
+fsubd %f28,%f30,%f30
+st %f30,[%sp+4*2+68]
+st %f31,[%sp+4*3+68]
+ld [%sp+4*2+68],%o2
+ld [%sp+4*3+68],%o3
+call pow; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Half,%l3
+ld2 [%l3],%f28
+faddd %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set D,%l3
+st2 %f30,[%l3]
+set D,%l3
+ld2 [%l3],%f30
+set X,%l3
+set Radix,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f28
+st2 %f28,[%l3]
+set Y,%l3
+set A1,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l3]
+set X,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-96]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-96],%f28
+fcmped %f28,%f30; nop; fbne .L396; nop
+set Y,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-104]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-104],%f28
+fcmped %f28,%f30; nop; fbue .L394; nop
+.L396:
+set Anomaly,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L395; nop
+.L394:
+set X,%l3
+set Zero,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Z2,%l2
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+set Y,%l3
+set One,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Y2,%l2
+ld2 [%l3],%f28
+st2 %f28,[%l2]
+set Z1,%l3
+set Radix,%l2
+ld2 [%l2],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l3]
+set FourD,%l3
+set Four,%l2
+ld2 [%l2],%f30
+set D,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+.L397:
+set Y2,%l3
+ld2 [%l3],%f30
+set Z2,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L400; nop
+set Q,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Y1,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L402:
+set Q,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-112]
+set Half,%l3
+ld2 [%l3],%f28
+set Y1,%l3
+ld2 [%l3],%f26
+fdivd %f30,%f26,%f26
+fsubd %f28,%f26,%f28
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Y1,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+ldd [%fp+-112],%f28
+faddd %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set X1,%l3
+st2 %f30,[%l3]
+set Y1,%l3
+set Q,%l2
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+set X1,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L403:
+set X1,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L402; nop
+set Q,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L405; nop
+set Z2,%l3
+set Y2,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Z,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L405:
+.L400:
+set Y,%l3
+ld2 [%l3],%f30
+set Two,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+set X,%l3
+ld2 [%l3],%f30
+set Eight,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+set Y2,%l2
+ld2 [%l2],%f30
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l2]
+ld2 [%l2],%f30
+set FourD,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L407; nop
+set Y2,%l3
+ld2 [%l3],%f30
+set FourD,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+.L407:
+.L398:
+set Y,%l3
+ld2 [%l3],%f30
+set D,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L397; nop
+set X8,%l3
+set FourD,%l2
+ld2 [%l2],%f30
+set Z2,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f28
+st2 %f28,[%l3]
+set Q,%l2
+ld2 [%l3],%f28
+set Z,%l1
+ld2 [%l1],%f26
+fmuld %f26,%f26,%f26
+faddd %f28,%f26,%f26
+fdivd %f26,%f30,%f30
+st2 %f30,[%l2]
+set Eight,%l1
+ld2 [%l1],%f30
+fdivd %f28,%f30,%f30
+st2 %f30,[%l3]
+ld2 [%l2],%f30
+std %f30,[%fp+-112]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-112],%f28
+fcmped %f28,%f30; nop; fbue .L409; nop
+set Anomaly,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L410; nop
+.L409:
+set Break,%l3
+st %g0,[%l3]
+.L411:
+set X,%l3
+set Z1,%l2
+ld2 [%l2],%f30
+set Z,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+std %f30,[%fp+-120]
+set Radix,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f28
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Radix,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+ldd [%fp+-120],%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l3]
+set X,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L414; nop
+set Break,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L415; nop
+.L414:
+set Z1,%l3
+ld2 [%l3],%f30
+set One,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+.L415:
+.L412:
+set Break,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L416; nop
+set Z1,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L411; nop
+.L416:
+set Z1,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L417; nop
+set Break,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L417; nop
+set Anomaly,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L418; nop
+.L417:
+set Z1,%l3
+ld2 [%l3],%f30
+set RadixD2,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L419; nop
+set Z1,%l3
+ld2 [%l3],%f30
+set Radix,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+.L419:
+.L421:
+call NewD; nop
+.L422:
+set U2,%l3
+ld2 [%l3],%f30
+set D,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+set F9,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L421; nop
+set D,%l3
+ld2 [%l3],%f30
+set Radix,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f28
+fsubd %f28,%f30,%f28
+set W,%l3
+ld2 [%l3],%f26
+fsubd %f26,%f30,%f30
+fcmped %f28,%f30; nop; fbue .L424; nop
+set Anomaly,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L425; nop
+.L424:
+set D,%l3
+ld2 [%l3],%f30
+set Z2,%l3
+st2 %f30,[%l3]
+set I,%l3
+st %g0,[%l3]
+set Z,%l3
+ld2 [%l3],%f28
+set Y,%l3
+set One,%l2
+ld2 [%l2],%f26
+faddd %f26,%f28,%f26
+set Half,%l2
+ld2 [%l2],%f24
+fmuld %f26,%f24,%f26
+faddd %f30,%f26,%f26
+st2 %f26,[%l3]
+set X,%l3
+faddd %f30,%f28,%f30
+set Q,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+call SR3750; nop
+set D,%l3
+ld2 [%l3],%f30
+set Z,%l3
+ld2 [%l3],%f28
+set Y,%l3
+set One,%l2
+ld2 [%l2],%f26
+fsubd %f26,%f28,%f26
+set Half,%l2
+ld2 [%l2],%f24
+fmuld %f26,%f24,%f26
+faddd %f30,%f26,%f26
+faddd %f26,%f30,%f26
+st2 %f26,[%l3]
+set X,%l3
+fsubd %f30,%f28,%f28
+faddd %f28,%f30,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set Q,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f28
+faddd %f28,%f30,%f30
+st2 %f30,[%l3]
+call SR3750; nop
+call NewD; nop
+set Z2,%l3
+ld2 [%l3],%f30
+set D,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f28
+set W,%l3
+ld2 [%l3],%f26
+fsubd %f26,%f30,%f30
+fcmped %f28,%f30; nop; fbue .L426; nop
+set Anomaly,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L427; nop
+.L426:
+set Z2,%l3
+ld2 [%l3],%f30
+set D,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f28
+set Z,%l3
+ld2 [%l3],%f26
+set Y,%l3
+set One,%l2
+ld2 [%l2],%f24
+fsubd %f24,%f26,%f24
+set Half,%l2
+ld2 [%l2],%f22
+fmuld %f24,%f22,%f24
+faddd %f30,%f24,%f24
+faddd %f28,%f24,%f24
+st2 %f24,[%l3]
+set X,%l3
+fsubd %f30,%f26,%f30
+set Q,%l2
+ld2 [%l2],%f26
+faddd %f30,%f26,%f30
+faddd %f28,%f30,%f30
+st2 %f30,[%l3]
+call SR3750; nop
+set Y,%l3
+set One,%l2
+ld2 [%l2],%f30
+set Z,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+set Half,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set X,%l3
+set Q,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+call SR3750; nop
+set I,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L428; nop
+set Anomaly,%l3
+set 1,%l2
+st %l2,[%l3]
+.L428:
+.L427:
+.L425:
+.L418:
+.L410:
+.L395:
+set I,%l2
+ld [%l2],%l2
+cmp %l2,%g0; be .L432; nop
+set Anomaly,%l2
+ld [%l2],%l2
+cmp %l2,%g0; be .L430; nop
+.L432:
+mov %g0,%o0
+set .L433,%o1
+call BadCond; nop
+set .L434,%o0
+set W,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L435,%o0
+call printf; nop
+set SqRWrng,%l3
+set 1,%l2
+st %l2,[%l3]
+.L430:
+.L391:
+set Anomaly,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L436; nop
+set Zero,%l3
+ld2 [%l3],%f30
+set MinSqEr,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbul .L438; nop
+set MaxSqEr,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L438; nop
+set RSqrt,%l3
+set 1,%l2
+st %l2,[%l3]
+set .L440,%o0
+call printf; nop
+ba .L439; nop
+.L438:
+set U2,%l3
+ld2 [%l3],%f30
+set Half,%l3
+ld2 [%l3],%f28
+set MaxSqEr,%l3
+ld2 [%l3],%f26
+faddd %f26,%f30,%f26
+fsubd %f30,%f28,%f30
+fcmped %f26,%f30; nop; fbug .L444; nop
+set MinSqEr,%l3
+ld2 [%l3],%f30
+fcmped %f30,%f28; nop; fbug .L444; nop
+set Radix,%l3
+ld2 [%l3],%f26
+faddd %f30,%f26,%f30
+fcmped %f30,%f28; nop; fbuge .L441; nop
+.L444:
+set SqRWrng,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L442; nop
+.L441:
+set RSqrt,%l3
+set 2,%l2
+st %l2,[%l3]
+set .L445,%o0
+call printf; nop
+.L442:
+.L439:
+.L436:
+set SqRWrng,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L446; nop
+set .L448,%o0
+call printf; nop
+set .L449,%o0
+set MinSqEr,%l3
+ld2 [%l3],%f30
+set Half,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L450,%o0
+set Half,%l3
+ld2 [%l3],%f30
+set MaxSqEr,%l3
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set 1,%o0
+set Radix,%l3
+ld2 [%l3],%f30
+set MaxSqEr,%l3
+ld2 [%l3],%f28
+set MinSqEr,%l3
+ld2 [%l3],%f26
+fsubd %f28,%f26,%f28
+fmuld %f30,%f30,%f30
+fcmped %f28,%f30; nop; fbuge .L453; nop
+set 1,%l3
+st %l3,[%fp+-84]
+ba .L454; nop
+.L453:
+st %g0,[%fp+-84]
+.L454:
+ld [%fp+-84],%o1
+set .L452,%o2
+call TstCond; nop
+.L446:
+set Milestone,%l3
+set 90,%l2
+st %l2,[%l3]
+call Pause; nop
+set .L455,%o0
+call printf; nop
+set N,%l2
+st %g0,[%l2]
+set I,%l2
+st %g0,[%l2]
+set Z,%l2
+set Zero,%l1
+ld2 [%l1],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%l2]
+set M,%l2
+set 3,%l1
+st %l1,[%l2]
+set Break,%l2
+st %g0,[%l2]
+.L456:
+set X,%l3
+set One,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+call SR3980; nop
+set I,%l3
+ld [%l3],%l3
+cmp %l3,10; bg .L459; nop
+set I,%l3
+set 1023,%l2
+st %l2,[%l3]
+call SR3980; nop
+.L459:
+set Z,%l3
+ld2 [%l3],%f30
+set MinusOne,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L461; nop
+set Break,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L462; nop
+.L461:
+set Z,%l3
+set MinusOne,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+call PrintIfNPositive; nop
+set N,%l3
+st %g0,[%l3]
+set I,%l3
+set -4,%l2
+st %l2,[%l3]
+.L462:
+.L457:
+set Break,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L456; nop
+call PrintIfNPositive; nop
+set N,%l3
+set N1,%l2
+ld [%l3],%l1
+st %l1,[%l2]
+st %g0,[%l3]
+set Z,%l3
+set A1,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set W,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+std %f30,[%fp+-88]
+set A1,%l3
+ld2 [%l3],%f28
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Two,%l3
+ld2 [%l3],%f28
+ldd [%fp+-88],%f26
+fmuld %f28,%f26,%f28
+fdivd %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set M,%l3
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l2
+st %l2,[%l3]
+set Break,%l3
+st %g0,[%l3]
+.L463:
+set X,%l3
+set Z,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set I,%l3
+set 1,%l2
+st %l2,[%l3]
+call SR3980; nop
+set Z,%l3
+ld2 [%l3],%f30
+set AInvrse,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L466; nop
+set Break,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L467; nop
+.L466:
+set Z,%l3
+set AInvrse,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L467:
+.L464:
+set Break,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L463; nop
+set Milestone,%l3
+set 100,%l2
+st %l2,[%l3]
+set M,%l3
+set NoTrials,%l2
+ld [%l2],%l2
+st %l2,[%l3]
+set Z,%l3
+set Three,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L468:
+set X,%l3
+set Z,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set I,%l3
+set 1,%l2
+st %l2,[%l3]
+call SR3980; nop
+.L471:
+set Z,%l3
+ld2 [%l3],%f30
+set Two,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+.L472:
+set Three,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-96]
+set Z,%l3
+ld2 [%l3],%f28
+fdivd %f28,%f30,%f28
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-96],%f28
+fmuld %f28,%f30,%f30
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L471; nop
+.L469:
+set Z,%l3
+ld2 [%l3],%f30
+set Eight,%l3
+ld2 [%l3],%f28
+set Three,%l3
+ld2 [%l3],%f26
+fmuld %f28,%f26,%f28
+fcmped %f30,%f28; nop; fbul .L468; nop
+set N,%l3
+ld [%l3],%l3
+cmp %l3,0; ble .L474; nop
+set .L476,%o0
+call printf; nop
+set .L477,%o0
+call printf; nop
+.L474:
+call PrintIfNPositive; nop
+set N,%l3
+ld [%l3],%l2
+set N1,%l1
+ld [%l1],%l1
+add %l2,%l1,%l2
+st %l2,[%l3]
+ld [%l3],%l3
+cmp %l3,0; bne .L478; nop
+set .L480,%o0
+call printf; nop
+.L478:
+set N,%l3
+ld [%l3],%l3
+cmp %l3,0; ble .L481; nop
+call Pause; nop
+ba .L482; nop
+.L481:
+set .L45,%o0
+call printf; nop
+.L482:
+set Milestone,%l3
+set 110,%l2
+st %l2,[%l3]
+set .L483,%o0
+call printf; nop
+set D,%l3
+set U1,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Precision,%l3
+ld2 [%l3],%f30
+std %f30,[%fp+-96]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-96],%f28
+fcmped %f28,%f30; nop; fbue .L484; nop
+set D,%l3
+set BInvrse,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set X,%l3
+set Precision,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L486:
+set D,%l3
+ld2 [%l3],%f30
+set BInvrse,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set X,%l3
+ld2 [%l3],%f30
+set One,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+.L487:
+set X,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L486; nop
+.L484:
+set Y,%l3
+set One,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Z,%l3
+set D,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L489:
+set Y,%l3
+set C,%l2
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+set Z,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+fmuld %f30,%f30,%f30
+st2 %f30,[%l2]
+.L490:
+set Z,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbule .L492; nop
+faddd %f30,%f30,%f28
+fcmped %f28,%f30; nop; fbug .L489; nop
+.L492:
+set Y,%l3
+set C,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Z,%l2
+ld2 [%l3],%f30
+set D,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+.L493:
+set Y,%l3
+set C,%l2
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+set Z,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set D,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+.L494:
+set Z,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbule .L496; nop
+faddd %f30,%f30,%f28
+fcmped %f28,%f30; nop; fbug .L493; nop
+.L496:
+set Radix,%l3
+ld2 [%l3],%f30
+set Two,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L497; nop
+set HInvrse,%l3
+set Two,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L498; nop
+.L497:
+set HInvrse,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L498:
+set H,%l3
+set One,%l2
+ld2 [%l2],%f30
+set HInvrse,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f28
+st2 %f28,[%l3]
+set C,%l2
+ld2 [%l2],%f28
+set CInvrse,%l2
+fdivd %f30,%f28,%f30
+st2 %f30,[%l2]
+set E0,%l2
+st2 %f28,[%l2]
+set Z,%l1
+ld2 [%l2],%f30
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l1]
+.L499:
+set E0,%l3
+set Y,%l2
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+set Z,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set H,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+.L500:
+set Z,%l3
+ld2 [%l3],%f30
+set E0,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbule .L502; nop
+faddd %f30,%f30,%f28
+fcmped %f28,%f30; nop; fbug .L499; nop
+.L502:
+set UfThold,%l3
+set E0,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Zero,%l3
+ld2 [%l3],%f30
+set E1,%l3
+st2 %f30,[%l3]
+set Q,%l3
+st2 %f30,[%l3]
+set E9,%l3
+set U2,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set S,%l2
+set One,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l2]
+set D,%l3
+set C,%l1
+ld2 [%l1],%f30
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f28
+st2 %f28,[%l3]
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L503; nop
+set E9,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set S,%l2
+set One,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l2]
+set D,%l3
+set C,%l1
+ld2 [%l1],%f30
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f28
+st2 %f28,[%l3]
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbug .L504; nop
+mov %g0,%o0
+set .L507,%o1
+call BadCond; nop
+set Underflow,%l3
+set E0,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Y1,%l3
+set Zero,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set PseudoZero,%l3
+set Z,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+call Pause; nop
+ba .L504; nop
+.L503:
+set Underflow,%l3
+set D,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set PseudoZero,%l2
+ld2 [%l3],%f30
+set H,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+set UfThold,%l3
+set Zero,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L508:
+set Underflow,%l3
+set Y1,%l2
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+set PseudoZero,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set E1,%l3
+ld2 [%l3],%f30
+faddd %f30,%f30,%f28
+fcmped %f28,%f30; nop; fbug .L511; nop
+set Y2,%l3
+set Underflow,%l2
+ld2 [%l2],%f30
+set HInvrse,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set Y1,%l2
+ld2 [%l2],%f30
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set E1,%l3
+st2 %f30,[%l3]
+set Q,%l3
+set Y1,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set UfThold,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L513; nop
+set Y1,%l3
+ld2 [%l3],%f30
+set Y2,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L513; nop
+set UfThold,%l3
+set Y1,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L513:
+.L511:
+set PseudoZero,%l3
+ld2 [%l3],%f30
+set H,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+.L509:
+set PseudoZero,%l3
+ld2 [%l3],%f30
+set Underflow,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbule .L515; nop
+faddd %f30,%f30,%f28
+fcmped %f28,%f30; nop; fbug .L508; nop
+.L515:
+.L504:
+set PseudoZero,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L516; nop
+set .L45,%o0
+call printf; nop
+set PseudoZero,%l3
+ld2 [%l3],%f30
+set Z,%l3
+st2 %f30,[%l3]
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L518; nop
+mov %g0,%o0
+set .L520,%o1
+call BadCond; nop
+set .L521,%o0
+call printf; nop
+set .L522,%o0
+set PseudoZero,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set X,%l3
+set PseudoZero,%l2
+ld2 [%l2],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L519; nop
+set .L525,%o0
+call printf; nop
+set .L526,%o0
+set X,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+ba .L519; nop
+.L518:
+set 3,%o0
+set .L527,%o1
+call BadCond; nop
+set .L528,%o0
+set PseudoZero,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L519:
+call TstPtUf; nop
+.L516:
+set Milestone,%l3
+set 120,%l2
+st %l2,[%l3]
+set CInvrse,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f28
+set Y1,%l3
+ld2 [%l3],%f26
+fmuld %f30,%f26,%f30
+fcmped %f28,%f30; nop; fbule .L529; nop
+set S,%l3
+set H,%l2
+ld2 [%l2],%f30
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set E0,%l3
+set Underflow,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L529:
+set E1,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L531; nop
+set E0,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L531; nop
+set 2,%o0
+set .L158,%o1
+call BadCond; nop
+set E1,%l3
+ld2 [%l3],%f30
+set E0,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L533; nop
+set .L535,%o0
+call printf; nop
+set .L536,%o0
+call printf; nop
+set PseudoZero,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L534; nop
+set E0,%l3
+set E1,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L534; nop
+.L533:
+set .L539,%o0
+call printf; nop
+set .L540,%o0
+call printf; nop
+.L534:
+.L531:
+set .L541,%o0
+set E0,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set Z,%l3
+set E0,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+call TstPtUf; nop
+set Underflow,%l3
+set E0,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set N,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L542; nop
+set Underflow,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L542:
+set I,%l3
+set 4,%l2
+st %l2,[%l3]
+set E1,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L544; nop
+set I,%l3
+set 3,%l2
+st %l2,[%l3]
+.L544:
+set UfThold,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L546; nop
+set I,%l3
+ld [%l3],%l2
+sub %l2,2,%l2
+st %l2,[%l3]
+.L546:
+set UfNGrad,%l3
+set 1,%l2
+st %l2,[%l3]
+set I,%l3
+ld [%l3],%l3
+cmp %l3,1; bl .L548; nop
+cmp %l3,4; bg .L548; nop
+sll %l3,2,%l3
+set .L571-4,%l2
+ld [%l3+%l2],%l3
+jmp %l3; nop
+.section ".rodata"
+.align 4
+.L571:
+.word .L550
+.word .L557
+.word .L562
+.word .L563
+.section ".text"
+.L550:
+set UfThold,%l3
+set Underflow,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set CInvrse,%l3
+ld2 [%l3],%f30
+set Q,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f28
+set Y,%l3
+ld2 [%l3],%f26
+fmuld %f30,%f26,%f30
+set S,%l3
+ld2 [%l3],%f26
+fmuld %f30,%f26,%f30
+fcmped %f28,%f30; nop; fbue .L551; nop
+set UfThold,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+mov %g0,%o0
+set .L553,%o1
+call BadCond; nop
+set .L554,%o0
+set UfThold,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L555,%o0
+set C,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L556,%o0
+call printf; nop
+.L551:
+call Pause; nop
+ba .L549; nop
+.L557:
+mov %g0,%o0
+set .L558,%o1
+call BadCond; nop
+set .L559,%o0
+call printf; nop
+set .L560,%o0
+set Q,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Y2,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+set Q,%l3
+ld2 [%l3],%f30
+set Y2,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set .L561,%o0
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set UfThold,%l3
+set Q,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L549; nop
+.L562:
+set X,%l3
+ld2 [%l3],%f30
+st2 %f30,[%l3]
+ba .L549; nop
+.L563:
+set UfThold,%l3
+ld2 [%l3],%f30
+set Q,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L564; nop
+set E1,%l3
+ld2 [%l3],%f28
+set E0,%l3
+ld2 [%l3],%f26
+fcmped %f28,%f26; nop; fbne .L564; nop
+set E9,%l3
+ld2 [%l3],%f26
+fdivd %f28,%f26,%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set E1,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L564; nop
+set UfNGrad,%l3
+st %g0,[%l3]
+set .L566,%o0
+call printf; nop
+set .L567,%o0
+call printf; nop
+set Y,%l3
+set E0,%l2
+ld2 [%l2],%f30
+set CInvrse,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f26
+st2 %f26,[%l3]
+set U2,%l2
+ld2 [%l2],%f26
+ld2 [%l3],%f24
+set OneAndHalf,%l2
+ld2 [%l2],%f22
+faddd %f22,%f26,%f22
+fmuld %f24,%f22,%f24
+st2 %f24,[%l3]
+set X,%l2
+set One,%l1
+ld2 [%l1],%f24
+faddd %f24,%f26,%f26
+fmuld %f28,%f26,%f28
+st2 %f28,[%l2]
+ld2 [%l3],%f28
+ld2 [%l2],%f26
+fdivd %f28,%f26,%f28
+st2 %f28,[%l3]
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L569; nop
+set 1,%l3
+st %l3,[%fp+-100]
+ba .L570; nop
+.L569:
+st %g0,[%fp+-100]
+.L570:
+set IEEE,%l3
+ld [%fp+-100],%l2
+st %l2,[%l3]
+.L564:
+.L548:
+.L549:
+set UfNGrad,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L573; nop
+set .L45,%o0
+call printf; nop
+set sigsave,%l3
+set sigfpe,%l2
+st %l2,[%l3]
+set ovfl_buf,%o0
+call setjmp; nop
+cmp %o0,0; be .L575; nop
+set .L577,%o0
+call printf; nop
+set H,%l3
+ld2 [%l3],%f30
+set R,%l3
+faddd %f30,%f30,%f30
+st2 %f30,[%l3]
+ba .L576; nop
+.L575:
+set Underflow,%l3
+ld2 [%l3],%f30
+set UfThold,%l3
+ld2 [%l3],%f28
+fdivd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set R,%l3
+st2 %f30,[%l3]
+.L576:
+set sigsave,%l3
+st %g0,[%l3]
+set R,%l3
+ld2 [%l3],%f30
+set H,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L578; nop
+set Z,%l3
+set R,%l2
+ld2 [%l2],%f30
+set UfThold,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f28
+st2 %f28,[%l3]
+set One,%l2
+ld2 [%l2],%f28
+set H,%l2
+ld2 [%l2],%f26
+set X,%l2
+ld2 [%l3],%f24
+fmuld %f30,%f26,%f30
+faddd %f28,%f26,%f26
+fmuld %f30,%f26,%f30
+faddd %f28,%f30,%f30
+fmuld %f24,%f30,%f30
+st2 %f30,[%l2]
+ba .L579; nop
+.L578:
+set Z,%l3
+set UfThold,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set One,%l2
+ld2 [%l2],%f30
+set H,%l2
+ld2 [%l2],%f28
+set X,%l2
+ld2 [%l3],%f26
+fmuld %f28,%f28,%f24
+faddd %f30,%f28,%f28
+fmuld %f24,%f28,%f28
+faddd %f30,%f28,%f30
+fmuld %f26,%f30,%f30
+st2 %f30,[%l2]
+.L579:
+set X,%l3
+ld2 [%l3],%f30
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L580; nop
+fsubd %f30,%f28,%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L580; nop
+set 3,%o0
+set .L158,%o1
+call BadCond; nop
+set .L582,%o0
+set X,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+set Z9,%l3
+set X,%l2
+ld2 [%l2],%f30
+set Z,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+set .L583,%o0
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L584,%o0
+call printf; nop
+set .L585,%o0
+call printf; nop
+set .L586,%o0
+call printf; nop
+set .L587,%o0
+call printf; nop
+set .L588,%o0
+call printf; nop
+set .L589,%o0
+call printf; nop
+set sigsave,%l3
+set sigfpe,%l2
+st %l2,[%l3]
+set ovfl_buf,%o0
+call setjmp; nop
+cmp %o0,0; be .L590; nop
+set .L592,%o0
+call printf; nop
+ba .L591; nop
+.L590:
+set .L593,%o0
+set Half,%l3
+ld2 [%l3],%f30
+set X,%l3
+ld2 [%l3],%f28
+set Z,%l3
+ld2 [%l3],%f26
+fdivd %f28,%f26,%f28
+fsubd %f28,%f30,%f28
+fsubd %f28,%f30,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L591:
+set sigsave,%l3
+st %g0,[%l3]
+.L580:
+.L573:
+set .L594,%o0
+set UfThold,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set .L595,%o3
+call printf; nop
+set .L596,%o0
+call printf; nop
+set .L597,%o0
+call printf; nop
+set Y2,%l3
+set U1,%l2
+ld2 [%l2],%f30
+fmuld %f30,%f30,%f28
+st2 %f28,[%l3]
+set Y,%l2
+ld2 [%l3],%f28
+fmuld %f28,%f28,%f28
+st2 %f28,[%l2]
+ld2 [%l2],%f28
+fmuld %f28,%f30,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set UfThold,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L598; nop
+set Y,%l3
+ld2 [%l3],%f30
+set E0,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L600; nop
+set 2,%o0
+set .L158,%o1
+call BadCond; nop
+set I,%l3
+set 5,%l2
+st %l2,[%l3]
+ba .L601; nop
+.L600:
+set 1,%o0
+set .L158,%o1
+call BadCond; nop
+set I,%l3
+set 4,%l2
+st %l2,[%l3]
+.L601:
+set .L602,%o0
+set I,%l3
+ld [%l3],%o1
+call printf; nop
+.L598:
+set Milestone,%l3
+set 130,%l2
+st %l2,[%l3]
+set UfThold,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+std %f30,[%fp+-104]
+set HInvrse,%l3
+ld2 [%l3],%f28
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Half,%l3
+ld2 [%l3],%f28
+set TwoForty,%l3
+ld2 [%l3],%f26
+ldd [%fp+-104],%f24
+fmuld %f26,%f24,%f26
+fdivd %f26,%f30,%f30
+fsubd %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Y,%l3
+fnegs %f30,%f30; fmovs %f31,%f31
+set TwoForty,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l3]
+set Y,%l3
+ld2 [%l3],%f30
+set Y2,%l3
+faddd %f30,%f30,%f30
+st2 %f30,[%l3]
+set .L603,%o0
+call printf; nop
+set .L604,%o0
+set HInvrse,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Y,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+set .L605,%o0
+set HInvrse,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Y,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+set HInvrse,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+set Y2,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*2+68]
+st %f31,[%sp+4*3+68]
+ld [%sp+4*2+68],%o2
+ld [%sp+4*3+68],%o3
+call pow; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set V9,%l3
+st2 %f30,[%l3]
+set .L606,%o0
+set V9,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set V9,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L609; nop
+set Radix,%l3
+ld2 [%l3],%f28
+faddd %f28,%f28,%f28
+set E9,%l3
+ld2 [%l3],%f26
+faddd %f28,%f26,%f28
+set UfThold,%l3
+ld2 [%l3],%f26
+fmuld %f28,%f26,%f28
+fcmped %f30,%f28; nop; fbule .L607; nop
+.L609:
+set 1,%o0
+set .L610,%o1
+call BadCond; nop
+set .L611,%o0
+set UfThold,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+ba .L608; nop
+.L607:
+set V9,%l3
+ld2 [%l3],%f30
+set UfThold,%l3
+ld2 [%l3],%f28
+set One,%l3
+ld2 [%l3],%f26
+set E9,%l3
+ld2 [%l3],%f24
+faddd %f26,%f24,%f26
+fmuld %f28,%f26,%f28
+fcmped %f30,%f28; nop; fbug .L612; nop
+set .L614,%o0
+call printf; nop
+ba .L613; nop
+.L612:
+set 2,%o0
+set .L610,%o1
+call BadCond; nop
+set .L611,%o0
+set UfThold,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L613:
+.L608:
+set Milestone,%l3
+set 140,%l2
+st %l2,[%l3]
+set .L45,%o0
+call printf; nop
+set Zero,%l3
+ld2 [%l3],%f30
+set X,%l3
+st2 %f30,[%l3]
+set I,%l3
+set 2,%l2
+st %l2,[%l3]
+set Y,%l3
+set Two,%l2
+ld2 [%l2],%f28
+set Three,%l2
+ld2 [%l2],%f26
+fmuld %f28,%f26,%f28
+st2 %f28,[%l3]
+set Q,%l3
+st2 %f30,[%l3]
+set N,%l3
+st %g0,[%l3]
+.L615:
+set Z,%l3
+set X,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set I,%l1
+ld [%l1],%l0
+add %l0,1,%l0
+st %l0,[%l1]
+set Y,%l0
+ld [%l1],%l1
+ld2 [%l0],%f30
+add %l1,%l1,%l1
+st %l1,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l0]
+set R,%l1
+set Q,%o5
+ld2 [%l0],%f30
+ld2 [%o5],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l1]
+ld2 [%l3],%f30
+ld2 [%l1],%f28
+faddd %f30,%f28,%f26
+st2 %f26,[%l2]
+ld2 [%l2],%f26
+fsubd %f30,%f26,%f30
+faddd %f30,%f28,%f30
+st2 %f30,[%o5]
+.L616:
+set X,%l3
+ld2 [%l3],%f30
+set Z,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbug .L615; nop
+set Z,%l3
+set OneAndHalf,%l2
+ld2 [%l2],%f30
+set X,%l2
+set One,%l1
+ld2 [%l1],%f28
+set Eight,%l1
+ld2 [%l1],%f26
+fdivd %f28,%f26,%f28
+faddd %f30,%f28,%f28
+ld2 [%l2],%f26
+set ThirtyTwo,%l1
+ld2 [%l1],%f24
+fmuld %f30,%f24,%f30
+fdivd %f26,%f30,%f30
+faddd %f28,%f30,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+fmuld %f30,%f30,%f30
+st2 %f30,[%l2]
+set Exp2,%l3
+ld2 [%l2],%f30
+fmuld %f30,%f30,%f30
+st2 %f30,[%l3]
+set F9,%l1
+ld2 [%l1],%f30
+st2 %f30,[%l2]
+set Y,%l1
+ld2 [%l2],%f30
+set U1,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l1]
+set .L618,%o0
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set I,%l3
+set 1,%l2
+st %l2,[%l3]
+.L619:
+set Z,%l3
+set X,%l2
+ld2 [%l2],%f30
+set BInvrse,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f26
+st2 %f26,[%l3]
+set One,%l2
+ld2 [%l2],%f26
+faddd %f30,%f26,%f24
+ld2 [%l3],%f22
+fsubd %f26,%f28,%f28
+fsubd %f22,%f28,%f28
+fdivd %f24,%f28,%f28
+st2 %f28,[%l3]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+ld2 [%l3],%f30
+st %f30,[%sp+4*2+68]
+st %f31,[%sp+4*3+68]
+ld [%sp+4*2+68],%o2
+ld [%sp+4*3+68],%o3
+call pow; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Q,%l3
+set Exp2,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%l3]
+set Q,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set TwoForty,%l3
+ld2 [%l3],%f28
+set U2,%l3
+ld2 [%l3],%f26
+fmuld %f28,%f26,%f28
+fcmped %f30,%f28; nop; fbule .L623; nop
+set N,%l3
+set 1,%l2
+st %l2,[%l3]
+set BInvrse,%l3
+ld2 [%l3],%f30
+set V9,%l3
+set X,%l2
+ld2 [%l2],%f28
+fsubd %f28,%f30,%f28
+set One,%l2
+ld2 [%l2],%f26
+fsubd %f26,%f30,%f30
+fsubd %f28,%f30,%f30
+st2 %f30,[%l3]
+set 2,%o0
+set .L625,%o1
+call BadCond; nop
+set X,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*2+68]
+st %f31,[%sp+4*3+68]
+ld [%sp+4*2+68],%o2
+ld [%sp+4*3+68],%o3
+call pow; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set .L626,%o0
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L627,%o0
+set V9,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+set .L628,%o0
+set Q,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L629,%o0
+call printf; nop
+set .L630,%o0
+call printf; nop
+ba .L621; nop
+.L623:
+set Z,%l3
+set Y,%l2
+ld2 [%l2],%f30
+set X,%l1
+ld2 [%l1],%f28
+fsubd %f30,%f28,%f28
+set Two,%l0
+ld2 [%l0],%f26
+fmuld %f28,%f26,%f28
+faddd %f28,%f30,%f28
+st2 %f28,[%l3]
+st2 %f30,[%l1]
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+ld2 [%l1],%f30
+set F9,%l2
+ld2 [%l2],%f28
+fsubd %f30,%f28,%f30
+set One,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f30,%f30
+faddd %f28,%f30,%f30
+st2 %f30,[%l3]
+set Z,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L631; nop
+set I,%l3
+ld [%l3],%l3
+set NoTrials,%l2
+ld [%l2],%l2
+cmp %l3,%l2; bge .L631; nop
+set I,%l3
+ld [%l3],%l2
+add %l2,1,%l2
+st %l2,[%l3]
+ba .L619; nop
+.L631:
+set X,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L633; nop
+set N,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L621; nop
+set .L637,%o0
+call printf; nop
+ba .L621; nop
+.L633:
+set X,%l3
+set U2,%l2
+ld2 [%l2],%f30
+set One,%l2
+ld2 [%l2],%f28
+faddd %f28,%f30,%f28
+st2 %f28,[%l3]
+set Y,%l2
+faddd %f30,%f30,%f30
+st2 %f30,[%l2]
+ld2 [%l2],%f30
+ld2 [%l3],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l2]
+set I,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L619; nop
+.L621:
+set Milestone,%l3
+set 150,%l2
+st %l2,[%l3]
+set .L638,%o0
+call printf; nop
+set N,%l3
+st %g0,[%l3]
+set Z,%l3
+set A1,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set C,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+std %f30,[%fp+-112]
+set A1,%l3
+ld2 [%l3],%f28
+st %f28,[%sp+4*0+68]
+st %f29,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Half,%l3
+ld2 [%l3],%f28
+ldd [%fp+-112],%f26
+fdivd %f26,%f30,%f30
+fsubd %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Q,%l3
+st2 %f30,[%l3]
+set Break,%l3
+st %g0,[%l3]
+.L639:
+set X,%l3
+set CInvrse,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+set Q,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*2+68]
+st %f31,[%sp+4*3+68]
+ld [%sp+4*2+68],%o2
+ld [%sp+4*3+68],%o3
+call pow; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Y,%l3
+st2 %f30,[%l3]
+call IsYeqX; nop
+set Q,%l3
+ld2 [%l3],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%l3]
+set X,%l2
+set C,%l1
+ld2 [%l1],%f30
+st2 %f30,[%l2]
+set Z,%l2
+ld2 [%l2],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+ld2 [%l3],%f30
+st %f30,[%sp+4*2+68]
+st %f31,[%sp+4*3+68]
+ld [%sp+4*2+68],%o2
+ld [%sp+4*3+68],%o3
+call pow; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Y,%l3
+st2 %f30,[%l3]
+call IsYeqX; nop
+set Z,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L642; nop
+set Break,%l3
+set 1,%l2
+st %l2,[%l3]
+ba .L643; nop
+.L642:
+set Z,%l3
+set AInvrse,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L643:
+.L640:
+set Break,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L639; nop
+call PrintIfNPositive; nop
+set N,%l3
+ld [%l3],%l3
+cmp %l3,0; bne .L644; nop
+set .L646,%o0
+call printf; nop
+.L644:
+set .L45,%o0
+call printf; nop
+set Milestone,%l3
+set 160,%l2
+st %l2,[%l3]
+call Pause; nop
+set .L647,%o0
+call printf; nop
+set .L648,%o0
+call printf; nop
+set Y,%l3
+set CInvrse,%l2
+ld2 [%l2],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%l3]
+set V9,%l2
+set HInvrse,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+set sigsave,%l3
+set sigfpe,%l2
+st %l2,[%l3]
+set ovfl_buf,%o0
+call setjmp; nop
+cmp %o0,0; be .L649; nop
+set I,%l3
+st %g0,[%l3]
+set V9,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L651; nop
+.L649:
+.L652:
+set Y,%l3
+set V,%l2
+ld2 [%l3],%f30
+st2 %f30,[%l2]
+set V9,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set HInvrse,%l1
+ld2 [%l1],%f30
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+.L653:
+set V9,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbul .L652; nop
+set I,%l3
+set 1,%l2
+st %l2,[%l3]
+.L651:
+set sigsave,%l3
+st %g0,[%l3]
+set Z,%l3
+set V9,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set .L655,%o0
+call printf; nop
+set .L656,%o0
+set Y,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set V9,%l3
+set Y,%l2
+ld2 [%l2],%f30
+fnegs %f30,%f28; fmovs %f31,%f29
+st2 %f28,[%l3]
+set V0,%l2
+ld2 [%l3],%f28
+st2 %f28,[%l2]
+set V,%l3
+ld2 [%l3],%f28
+fsubd %f28,%f30,%f30
+ld2 [%l2],%f26
+faddd %f28,%f26,%f28
+fcmped %f30,%f28; nop; fbne .L657; nop
+set .L659,%o0
+call printf; nop
+ba .L658; nop
+.L657:
+set .L660,%o0
+call printf; nop
+set 3,%o0
+set .L661,%o1
+call BadCond; nop
+.L658:
+set Z,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L662; nop
+set 1,%o0
+set .L158,%o1
+call BadCond; nop
+set .L664,%o0
+set Y,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+.L662:
+set I,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L665; nop
+set Y,%l3
+set V,%l2
+ld2 [%l2],%f30
+set HInvrse,%l2
+ld2 [%l2],%f28
+set U2,%l2
+ld2 [%l2],%f26
+fmuld %f28,%f26,%f24
+fsubd %f24,%f28,%f24
+fmuld %f30,%f24,%f24
+st2 %f24,[%l3]
+set Z,%l2
+ld2 [%l3],%f24
+set One,%l3
+ld2 [%l3],%f22
+fsubd %f22,%f28,%f28
+fmuld %f28,%f26,%f28
+fmuld %f28,%f30,%f30
+faddd %f24,%f30,%f30
+st2 %f30,[%l2]
+ld2 [%l2],%f30
+set V0,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L667; nop
+set Y,%l3
+set Z,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L667:
+set Y,%l3
+ld2 [%l3],%f30
+set V0,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L669; nop
+set V,%l3
+set Y,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L669:
+set V0,%l3
+ld2 [%l3],%f30
+set V,%l3
+ld2 [%l3],%f28
+fsubd %f30,%f28,%f28
+fcmped %f28,%f30; nop; fbuge .L666; nop
+set V,%l3
+set V0,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L666; nop
+.L665:
+set V,%l3
+set Y,%l2
+ld2 [%l2],%f30
+set HInvrse,%l2
+ld2 [%l2],%f28
+set U2,%l2
+ld2 [%l2],%f26
+fmuld %f28,%f26,%f24
+fsubd %f24,%f28,%f24
+fmuld %f30,%f24,%f24
+st2 %f24,[%l3]
+ld2 [%l3],%f24
+set One,%l2
+ld2 [%l2],%f22
+fsubd %f22,%f28,%f28
+fmuld %f28,%f26,%f28
+fmuld %f28,%f30,%f30
+faddd %f24,%f30,%f30
+st2 %f30,[%l3]
+.L666:
+set .L673,%o0
+set V,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set I,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L674; nop
+set .L676,%o0
+set V0,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+ba .L675; nop
+.L674:
+set .L677,%o0
+call printf; nop
+.L675:
+set V9,%l3
+set V,%l2
+ld2 [%l2],%f30
+set One,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set .L678,%o0
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set V9,%l3
+set V,%l2
+ld2 [%l2],%f30
+set One,%l2
+ld2 [%l2],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%l3]
+set .L679,%o0
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L680,%o0
+call printf; nop
+set .L681,%o0
+call printf; nop
+set Milestone,%l3
+set 170,%l2
+st %l2,[%l3]
+set V,%l3
+ld2 [%l3],%f30
+fnegs %f30,%f28; fmovs %f31,%f29
+fcmped %f28,%f30; nop; fbuge .L686; nop
+set V0,%l3
+ld2 [%l3],%f28
+fnegs %f28,%f26; fmovs %f29,%f27
+fcmped %f26,%f28; nop; fbuge .L686; nop
+set UfThold,%l3
+ld2 [%l3],%f28
+fnegs %f28,%f26; fmovs %f29,%f27
+fcmped %f26,%f30; nop; fbuge .L686; nop
+fcmped %f28,%f30; nop; fbul .L682; nop
+.L686:
+mov %g0,%o0
+set .L687,%o1
+call BadCond; nop
+set .L688,%o0
+set V,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set V0,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+set UfThold,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*5+68]
+st %f31,[%sp+4*6+68]
+ld [%sp+4*5+68],%o5
+call printf; nop
+.L682:
+set Milestone,%l3
+set 175,%l2
+st %l2,[%l3]
+set .L45,%o0
+call printf; nop
+set Indx,%l3
+set 1,%l2
+st %l2,[%l3]
+.L689:
+set Indx,%l3
+ld [%l3],%l3
+cmp %l3,1; be .L695; nop
+cmp %l3,2; be .L696; nop
+cmp %l3,3; be .L697; nop
+ba .L693; nop
+.L695:
+set Z,%l3
+set UfThold,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L694; nop
+.L696:
+set Z,%l3
+set E0,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L694; nop
+.L697:
+set Z,%l3
+set PseudoZero,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L693:
+.L694:
+set Z,%l3
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbue .L698; nop
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set V9,%l3
+st2 %f30,[%l3]
+set V9,%l3
+ld2 [%l3],%f30
+set Y,%l3
+fmuld %f30,%f30,%f30
+st2 %f30,[%l3]
+set Y,%l3
+ld2 [%l3],%f30
+set One,%l3
+ld2 [%l3],%f28
+set Radix,%l3
+ld2 [%l3],%f26
+set E9,%l3
+ld2 [%l3],%f24
+fmuld %f26,%f24,%f26
+set Z,%l3
+ld2 [%l3],%f24
+fsubd %f28,%f26,%f22
+fdivd %f30,%f22,%f22
+fcmped %f22,%f24; nop; fbul .L702; nop
+faddd %f28,%f26,%f28
+fmuld %f28,%f24,%f28
+fcmped %f30,%f28; nop; fbule .L700; nop
+.L702:
+set V9,%l3
+ld2 [%l3],%f30
+set U1,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbule .L703; nop
+set 1,%o0
+set .L158,%o1
+call BadCond; nop
+ba .L704; nop
+.L703:
+set 2,%o0
+set .L158,%o1
+call BadCond; nop
+.L704:
+set .L705,%o0
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L706,%o0
+set Y,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L700:
+.L698:
+.L690:
+set Indx,%l3
+ld [%l3],%l2
+add %l2,1,%l2
+st %l2,[%l3]
+set Indx,%l3
+ld [%l3],%l3
+cmp %l3,3; ble .L689; nop
+set Milestone,%l3
+set 180,%l2
+st %l2,[%l3]
+set Indx,%l3
+set 1,%l2
+st %l2,[%l3]
+.L707:
+set Indx,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L711; nop
+set Z,%l3
+set V,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L712; nop
+.L711:
+set Z,%l3
+set V0,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L712:
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set V9,%l3
+st2 %f30,[%l3]
+set X,%l3
+set V9,%l2
+ld2 [%l2],%f30
+set One,%l1
+ld2 [%l1],%f28
+set Radix,%l1
+ld2 [%l1],%f26
+set E9,%l1
+ld2 [%l1],%f24
+fmuld %f26,%f24,%f26
+fsubd %f28,%f26,%f28
+fmuld %f28,%f30,%f28
+st2 %f28,[%l3]
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l2]
+set V9,%l3
+ld2 [%l3],%f30
+set Z,%l3
+ld2 [%l3],%f28
+set One,%l3
+ld2 [%l3],%f26
+set Two,%l3
+ld2 [%l3],%f24
+set Radix,%l3
+ld2 [%l3],%f22
+fmuld %f24,%f22,%f24
+set E9,%l3
+ld2 [%l3],%f22
+fmuld %f24,%f22,%f24
+fsubd %f26,%f24,%f26
+fmuld %f26,%f28,%f26
+fcmped %f30,%f26; nop; fbul .L715; nop
+fcmped %f30,%f28; nop; fbule .L713; nop
+.L715:
+set Y,%l3
+set V9,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set X,%l3
+ld2 [%l3],%f30
+set W,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbuge .L716; nop
+set 1,%o0
+set .L158,%o1
+call BadCond; nop
+ba .L717; nop
+.L716:
+set 2,%o0
+set .L158,%o1
+call BadCond; nop
+.L717:
+set .L718,%o0
+set Z,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L719,%o0
+set Y,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L713:
+.L708:
+set Indx,%l3
+ld [%l3],%l2
+add %l2,1,%l2
+st %l2,[%l3]
+set Indx,%l3
+ld [%l3],%l3
+cmp %l3,2; ble .L707; nop
+set Milestone,%l3
+set 190,%l2
+st %l2,[%l3]
+call Pause; nop
+set X,%l3
+set UfThold,%l2
+ld2 [%l2],%f30
+set V,%l2
+ld2 [%l2],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%l3]
+set Radix,%l3
+ld2 [%l3],%f30
+set Y,%l3
+fmuld %f30,%f30,%f30
+st2 %f30,[%l3]
+set X,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+fmuld %f30,%f28,%f26
+set One,%l3
+ld2 [%l3],%f24
+fcmped %f26,%f24; nop; fbul .L722; nop
+fcmped %f30,%f28; nop; fbule .L720; nop
+.L722:
+set X,%l3
+ld2 [%l3],%f30
+set Y,%l3
+ld2 [%l3],%f28
+set U1,%l3
+ld2 [%l3],%f26
+fmuld %f30,%f28,%f24
+fcmped %f24,%f26; nop; fbul .L725; nop
+fdivd %f28,%f26,%f28
+fcmped %f30,%f28; nop; fbule .L723; nop
+.L725:
+set 2,%o0
+set .L726,%o1
+call BadCond; nop
+ba .L724; nop
+.L723:
+set 3,%o0
+set .L158,%o1
+call BadCond; nop
+.L724:
+set .L727,%o0
+set X,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set .L728,%o3
+call printf; nop
+.L720:
+set Milestone,%l3
+set 200,%l2
+st %l2,[%l3]
+set Indx,%l3
+set 1,%l2
+st %l2,[%l3]
+.L729:
+set X,%l3
+set F9,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set Indx,%l3
+ld [%l3],%l3
+cmp %l3,2; bl .L733; nop
+cmp %l3,5; bg .L733; nop
+sll %l3,2,%l3
+set .L739-8,%l2
+ld [%l3+%l2],%l3
+jmp %l3; nop
+.section ".rodata"
+.align 4
+.L739:
+.word .L735
+.word .L736
+.word .L737
+.word .L738
+.section ".text"
+.L735:
+set X,%l3
+set One,%l2
+ld2 [%l2],%f30
+set U2,%l2
+ld2 [%l2],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%l3]
+ba .L734; nop
+.L736:
+set X,%l3
+set V,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L734; nop
+.L737:
+set X,%l3
+set UfThold,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+ba .L734; nop
+.L738:
+set X,%l3
+set Radix,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+.L733:
+.L734:
+set Y,%l3
+set X,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set sigsave,%l3
+set sigfpe,%l2
+st %l2,[%l3]
+set ovfl_buf,%o0
+call setjmp; nop
+cmp %o0,0; be .L741; nop
+set .L743,%o0
+set X,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+ba .L742; nop
+.L741:
+set V9,%l3
+set Half,%l2
+ld2 [%l2],%f30
+set Y,%l2
+ld2 [%l2],%f28
+set X,%l2
+ld2 [%l2],%f26
+fdivd %f28,%f26,%f28
+fsubd %f28,%f30,%f28
+fsubd %f28,%f30,%f30
+st2 %f30,[%l3]
+ld2 [%l3],%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L744; nop
+ba .L730; nop
+.L744:
+set V9,%l3
+ld2 [%l3],%f30
+set U1,%l3
+ld2 [%l3],%f28
+fnegs %f28,%f28; fmovs %f29,%f29
+fcmped %f30,%f28; nop; fbne .L746; nop
+set Indx,%l3
+ld [%l3],%l3
+cmp %l3,5; bge .L746; nop
+set 3,%o0
+set .L158,%o1
+call BadCond; nop
+ba .L747; nop
+.L746:
+set 1,%o0
+set .L158,%o1
+call BadCond; nop
+.L747:
+set .L748,%o0
+set X,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L749,%o0
+set V9,%l3
+ld2 [%l3],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L742:
+set sigsave,%l3
+st %g0,[%l3]
+.L730:
+set Indx,%l3
+ld [%l3],%l2
+add %l2,1,%l2
+st %l2,[%l3]
+set Indx,%l3
+ld [%l3],%l3
+cmp %l3,5; ble .L729; nop
+set Milestone,%l3
+set 210,%l2
+st %l2,[%l3]
+set MyZero,%l3
+set Zero,%l2
+ld2 [%l2],%f30
+st2 %f30,[%l3]
+set .L45,%o0
+call printf; nop
+set .L750,%o0
+call printf; nop
+set sigsave,%l3
+set sigfpe,%l2
+st %l2,[%l3]
+set .L751,%o0
+call printf; nop
+set ovfl_buf,%o0
+call setjmp; nop
+cmp %o0,0; bne .L752; nop
+set .L754,%o0
+set One,%l3
+ld2 [%l3],%f30
+set MyZero,%l3
+ld2 [%l3],%f28
+fdivd %f30,%f28,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L752:
+set sigsave,%l3
+st %g0,[%l3]
+set sigfpe,%l2
+st %l2,[%l3]
+set .L755,%o0
+call printf; nop
+set ovfl_buf,%o0
+call setjmp; nop
+cmp %o0,0; bne .L756; nop
+set .L754,%o0
+set Zero,%l3
+ld2 [%l3],%f30
+set MyZero,%l3
+ld2 [%l3],%f28
+fdivd %f30,%f28,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L756:
+set sigsave,%l3
+st %g0,[%l3]
+set Milestone,%l3
+set 220,%l2
+st %l2,[%l3]
+call Pause; nop
+set .L45,%o0
+call printf; nop
+st %g0,[%fp+-116]
+.L763:
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+set ErrCnt,%l2
+ld [%l3+%l2],%l3
+cmp %l3,0; be .L767; nop
+set .L769,%o0
+ld [%fp+-116],%l3
+sll %l3,2,%l3
+set .758,%l2
+ld [%l3+%l2],%o1
+set ErrCnt,%l2
+ld [%l3+%l2],%o2
+call printf; nop
+.L767:
+.L764:
+ld [%fp+-116],%l3
+add %l3,1,%l3
+st %l3,[%fp+-116]
+ld [%fp+-116],%l3
+cmp %l3,4; bl .L763; nop
+set .L45,%o0
+call printf; nop
+set ErrCnt,%l3
+ld [%l3],%l3
+set ErrCnt+4,%l2
+ld [%l2],%l2
+add %l3,%l2,%l3
+set ErrCnt+8,%l2
+ld [%l2],%l2
+add %l3,%l2,%l3
+set ErrCnt+12,%l2
+ld [%l2],%l2
+add %l3,%l2,%l3
+cmp %l3,0; ble .L770; nop
+set ErrCnt,%l2
+ld [%l2],%l2
+set ErrCnt+4,%l1
+ld [%l1],%l1
+add %l2,%l1,%l2
+set ErrCnt+8,%l1
+ld [%l1],%l1
+add %l2,%l1,%l2
+cmp %l2,%g0; bne .L775; nop
+set ErrCnt+12,%l2
+ld [%l2],%l2
+cmp %l2,%g0; ble .L775; nop
+set .L780,%o0
+call printf; nop
+set .L781,%o0
+call printf; nop
+.L775:
+set ErrCnt,%l2
+ld [%l2],%l2
+set ErrCnt+4,%l1
+ld [%l1],%l1
+add %l2,%l1,%l2
+cmp %l2,%g0; bne .L782; nop
+set ErrCnt+8,%l2
+ld [%l2],%l2
+cmp %l2,%g0; ble .L782; nop
+set .L786,%o0
+call printf; nop
+set .L787,%o0
+call printf; nop
+.L782:
+set ErrCnt,%l3
+ld [%l3],%l3
+set ErrCnt+4,%l2
+ld [%l2],%l2
+add %l3,%l2,%l3
+cmp %l3,0; ble .L788; nop
+set .L791,%o0
+call printf; nop
+set .L792,%o0
+call printf; nop
+.L788:
+set ErrCnt,%l3
+ld [%l3],%l3
+cmp %l3,0; ble .L771; nop
+set .L795,%o0
+call printf; nop
+set .L796,%o0
+call printf; nop
+ba .L771; nop
+.L770:
+set .L797,%o0
+call printf; nop
+set RMult,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L802; nop
+set RDiv,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L802; nop
+set RAddSub,%l3
+ld [%l3],%l3
+cmp %l3,1; bne .L802; nop
+set RSqrt,%l3
+ld [%l3],%l3
+cmp %l3,1; be .L798; nop
+.L802:
+set .L803,%o0
+call printf; nop
+ba .L799; nop
+.L798:
+set One,%l3
+ld2 [%l3],%f30
+set StickyBit,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbul .L804; nop
+set Radix,%l3
+ld2 [%l3],%f28
+set Two,%l3
+ld2 [%l3],%f26
+fsubd %f28,%f26,%f26
+set Nine,%l3
+ld2 [%l3],%f24
+fsubd %f28,%f24,%f28
+fsubd %f28,%f30,%f30
+fmuld %f26,%f30,%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L804; nop
+set .L806,%o0
+call printf; nop
+set .L807,%o0
+call printf; nop
+set Two,%l3
+ld2 [%l3],%f30
+set Radix,%l3
+ld2 [%l3],%f28
+fcmped %f28,%f30; nop; fbne .L808; nop
+set Precision,%l3
+ld2 [%l3],%f28
+set TwentySeven,%l3
+ld2 [%l3],%f26
+set Four,%l3
+ld2 [%l3],%f24
+set Three,%l3
+ld2 [%l3],%f22
+fmuld %f24,%f22,%f24
+fmuld %f24,%f30,%f30
+fsubd %f28,%f30,%f30
+fsubd %f28,%f26,%f28
+fsubd %f28,%f26,%f28
+set One,%l3
+ld2 [%l3],%f26
+faddd %f28,%f26,%f28
+fmuld %f30,%f28,%f30
+set Zero,%l3
+ld2 [%l3],%f28
+fcmped %f30,%f28; nop; fbne .L808; nop
+set .L810,%o0
+call printf; nop
+ba .L809; nop
+.L808:
+set .L811,%o0
+call printf; nop
+.L809:
+set IEEE,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L812; nop
+set .L814,%o0
+call printf; nop
+ba .L813; nop
+.L812:
+set .L815,%o0
+call printf; nop
+set .L816,%o0
+call printf; nop
+.L813:
+.L804:
+set .L817,%o0
+call printf; nop
+.L799:
+.L771:
+set fpecount,%l3
+ld [%l3],%l3
+cmp %l3,0; be .L818; nop
+set .L820,%o0
+set fpecount,%l3
+ld [%l3],%o1
+call printf; nop
+.L818:
+set .L821,%o0
+call printf; nop
+mov %g0,%i0
+.L7:
+ret; restore
+.type main,#function
+.size main,.-main
+.global Sign
+.align 4
+Sign:
+save %sp,-104,%sp
+st %r24,[%fp+68]
+st %r25,[%fp+72]
+ld2 [%fp+68],%f30
+set .L8,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbul .L824; nop
+set .L9,%i5
+ld2 [%i5],%f30
+std %f30,[%fp+-8]
+ba .L825; nop
+.L824:
+set .L826,%i5
+ld2 [%i5],%f30
+std %f30,[%fp+-8]
+.L825:
+ldd [%fp+-8],%f0
+.L822:
+ret; restore
+.type Sign,#function
+.size Sign,.-Sign
+.global Pause
+.align 4
+Pause:
+save %sp,-96,%sp
+set .L828,%o0
+set Milestone,%i5
+ld [%i5],%o1
+call printf; nop
+set .L829,%o0
+set PageNo,%i5
+ld [%i5],%o1
+call printf; nop
+set Milestone,%i5
+ld [%i5],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+set PageNo,%i5
+ld [%i5],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+mov %g0,%i0
+.L827:
+ret; restore
+.type Pause,#function
+.size Pause,.-Pause
+.global TstCond
+.align 4
+TstCond:
+save %sp,-96,%sp
+cmp %i1,0; bne .L831; nop
+mov %i0,%o0
+mov %i2,%o1
+call BadCond; nop
+set .L814,%o0
+call printf; nop
+.L831:
+mov %g0,%i0
+.L830:
+ret; restore
+.type TstCond,#function
+.size TstCond,.-TstCond
+.section ".data"
+.type .834,#object
+.align 4
+.834:
+.word .L835
+.word .L836
+.word .L837
+.word .L838
+.size .834,16
+.global BadCond
+.section ".text"
+.align 4
+BadCond:
+save %sp,-96,%sp
+sll %i0,2,%i5
+set ErrCnt,%i4
+add %i5,%i4,%i5
+ld [%i5],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+set .L839,%o0
+sll %i0,2,%i5
+set .834,%i4
+ld [%i5+%i4],%o1
+mov %i1,%o2
+call printf; nop
+mov %g0,%i0
+.L833:
+ret; restore
+.type BadCond,#function
+.size BadCond,.-BadCond
+.global Random
+.align 4
+Random:
+save %sp,-120,%sp
+set Random1,%i5
+ld2 [%i5],%f30
+set Random9,%i5
+ld2 [%i5],%f28
+faddd %f30,%f28,%f30
+std %f30,[%fp+-8]
+ldd [%fp+-8],%f30
+fmuld %f30,%f30,%f28
+std %f28,[%fp+-16]
+ldd [%fp+-16],%f28
+fmuld %f28,%f28,%f28
+std %f28,[%fp+-16]
+ldd [%fp+-16],%f28
+fmuld %f30,%f28,%f30
+std %f30,[%fp+-8]
+ldd [%fp+-8],%f30
+std %f30,[%fp+-24]
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ldd [%fp+-24],%f28
+fsubd %f28,%f30,%f30
+std %f30,[%fp+-16]
+set Random1,%i5
+ldd [%fp+-16],%f30
+set .L841,%i4
+ld2 [%i4],%f28
+ldd [%fp+-8],%f26
+fmuld %f28,%f26,%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%i5]
+ld2 [%i5],%f0
+.L840:
+ret; restore
+.type Random,#function
+.size Random,.-Random
+.global SqXMinX
+.align 4
+SqXMinX:
+save %sp,-112,%sp
+set X,%i5
+ld2 [%i5],%f30
+set BInvrse,%i5
+ld2 [%i5],%f28
+fmuld %f30,%f28,%f28
+std %f28,[%fp+-8]
+ldd [%fp+-8],%f28
+fsubd %f30,%f28,%f28
+std %f28,[%fp+-16]
+fmuld %f30,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set SqEr,%i5
+ldd [%fp+-8],%f28
+fsubd %f30,%f28,%f30
+ldd [%fp+-16],%f28
+fsubd %f30,%f28,%f30
+set OneUlp,%i4
+ld2 [%i4],%f28
+fdivd %f30,%f28,%f30
+st2 %f30,[%i5]
+set SqEr,%i5
+ld2 [%i5],%f30
+set Zero,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbue .L843; nop
+set SqEr,%i5
+ld2 [%i5],%f30
+set MinSqEr,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbuge .L845; nop
+set MinSqEr,%i5
+set SqEr,%i4
+ld2 [%i4],%f30
+st2 %f30,[%i5]
+.L845:
+set SqEr,%i5
+ld2 [%i5],%f30
+set MaxSqEr,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbule .L847; nop
+set MaxSqEr,%i5
+set SqEr,%i4
+ld2 [%i4],%f30
+st2 %f30,[%i5]
+.L847:
+set J,%i5
+ld2 [%i5],%f30
+set .L9,%i4
+ld2 [%i4],%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%i5]
+mov %i0,%o0
+set .L45,%o1
+call BadCond; nop
+set .L849,%o0
+set X,%i5
+ld2 [%i5],%f30
+fmuld %f30,%f30,%f28
+st %f28,[%sp+4*1+68]
+st %f29,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+set OneUlp,%i5
+ld2 [%i5],%f30
+set SqEr,%i5
+ld2 [%i5],%f28
+fmuld %f30,%f28,%f30
+st %f30,[%sp+4*5+68]
+st %f31,[%sp+4*6+68]
+ld [%sp+4*5+68],%o5
+call printf; nop
+set .L850,%o0
+call printf; nop
+.L843:
+mov %g0,%i0
+.L842:
+ret; restore
+.type SqXMinX,#function
+.size SqXMinX,.-SqXMinX
+.global NewD
+.align 4
+NewD:
+save %sp,-96,%sp
+set X,%i5
+set Z1,%i4
+ld2 [%i4],%f30
+set Q,%i4
+ld2 [%i4],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%i5]
+set Half,%i4
+ld2 [%i4],%f30
+ld2 [%i5],%f28
+set Radix,%i4
+ld2 [%i4],%f26
+fdivd %f28,%f26,%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call floor; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Radix,%i4
+ld2 [%i4],%f28
+set X,%i4
+fmuld %f30,%f28,%f30
+ld2 [%i4],%f26
+faddd %f30,%f26,%f30
+st2 %f30,[%i5]
+set Q,%i5
+ld2 [%i4],%f30
+set Z,%i4
+ld2 [%i4],%f26
+set D,%i3
+ld2 [%i3],%f24
+ld2 [%i5],%f22
+fmuld %f30,%f26,%f20
+fsubd %f22,%f20,%f22
+fdivd %f22,%f28,%f22
+fmuld %f30,%f30,%f20
+fdivd %f24,%f28,%f28
+fmuld %f20,%f28,%f28
+faddd %f22,%f28,%f28
+st2 %f28,[%i5]
+set Two,%i5
+ld2 [%i5],%f28
+fmuld %f28,%f30,%f30
+fmuld %f30,%f24,%f30
+fsubd %f26,%f30,%f30
+st2 %f30,[%i4]
+ld2 [%i4],%f30
+set Zero,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbug .L852; nop
+set Z,%i5
+ld2 [%i5],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%i5]
+set Z1,%i5
+ld2 [%i5],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%i5]
+.L852:
+set D,%i5
+set Radix,%i4
+ld2 [%i4],%f30
+ld2 [%i5],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%i5]
+mov %g0,%i0
+.L851:
+ret; restore
+.type NewD,#function
+.size NewD,.-NewD
+.global SR3750
+.align 4
+SR3750:
+save %sp,-96,%sp
+set X,%i5
+ld2 [%i5],%f30
+set Radix,%i5
+ld2 [%i5],%f28
+set Z2,%i5
+ld2 [%i5],%f26
+fsubd %f30,%f28,%f24
+fsubd %f26,%f28,%f28
+fcmped %f24,%f28; nop; fbul .L855; nop
+fsubd %f30,%f26,%f30
+set W,%i5
+ld2 [%i5],%f28
+fsubd %f28,%f26,%f28
+fcmped %f30,%f28; nop; fbug .L855; nop
+set I,%i5
+ld [%i5],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+set X,%i5
+ld2 [%i5],%f30
+set D,%i5
+ld2 [%i5],%f28
+fmuld %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call sqrt; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set X2,%i5
+st2 %f30,[%i5]
+set Y2,%i5
+set X2,%i4
+set Z2,%i3
+ld2 [%i3],%f30
+set Y,%i3
+ld2 [%i3],%f28
+ld2 [%i4],%f26
+fsubd %f26,%f30,%f26
+fsubd %f28,%f30,%f30
+fsubd %f26,%f30,%f30
+st2 %f30,[%i5]
+set Half,%i3
+ld2 [%i3],%f30
+set X8,%i3
+ld2 [%i3],%f26
+fsubd %f28,%f30,%f28
+fdivd %f26,%f28,%f28
+st2 %f28,[%i4]
+ld2 [%i4],%f28
+fmuld %f30,%f28,%f26
+fmuld %f26,%f28,%f26
+fsubd %f28,%f26,%f28
+st2 %f28,[%i4]
+set SqEr,%i3
+ld2 [%i5],%f28
+faddd %f28,%f30,%f28
+ld2 [%i4],%f26
+fsubd %f30,%f26,%f30
+faddd %f28,%f30,%f30
+st2 %f30,[%i3]
+ld2 [%i3],%f30
+set MinSqEr,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbuge .L857; nop
+set MinSqEr,%i5
+set SqEr,%i4
+ld2 [%i4],%f30
+st2 %f30,[%i5]
+.L857:
+set SqEr,%i5
+set Y2,%i4
+ld2 [%i4],%f30
+set X2,%i4
+ld2 [%i4],%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%i5]
+ld2 [%i5],%f30
+set MaxSqEr,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbule .L859; nop
+set MaxSqEr,%i5
+set SqEr,%i4
+ld2 [%i4],%f30
+st2 %f30,[%i5]
+.L859:
+.L855:
+mov %g0,%i0
+.L854:
+ret; restore
+.type SR3750,#function
+.size SR3750,.-SR3750
+.global IsYeqX
+.align 4
+IsYeqX:
+save %sp,-96,%sp
+set Y,%i5
+ld2 [%i5],%f30
+set X,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbue .L862; nop
+set N,%i5
+ld [%i5],%i5
+cmp %i5,0; bg .L864; nop
+set Zero,%i5
+ld2 [%i5],%f30
+set Z,%i5
+ld2 [%i5],%f28
+fcmped %f28,%f30; nop; fbne .L866; nop
+set Q,%i5
+ld2 [%i5],%f28
+fcmped %f28,%f30; nop; fbug .L866; nop
+set .L868,%o0
+call printf; nop
+ba .L867; nop
+.L866:
+set 2,%o0
+set .L869,%o1
+call BadCond; nop
+.L867:
+set .L870,%o0
+set Z,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+set Q,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+call printf; nop
+set .L871,%o0
+set Y,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L872,%o0
+set X,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L873,%o0
+set Y,%i5
+ld2 [%i5],%f30
+set X,%i5
+ld2 [%i5],%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L864:
+set N,%i5
+ld [%i5],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+.L862:
+mov %g0,%i0
+.L861:
+ret; restore
+.type IsYeqX,#function
+.size IsYeqX,.-IsYeqX
+.global SR3980
+.align 4
+SR3980:
+save %sp,-96,%sp
+.L875:
+set Q,%i5
+set I,%i4
+ld [%i4],%i4
+st %i4,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
+st2 %f30,[%i5]
+set Z,%i4
+ld2 [%i4],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+ld2 [%i5],%f30
+st %f30,[%sp+4*2+68]
+st %f31,[%sp+4*3+68]
+ld [%sp+4*2+68],%o2
+ld [%sp+4*3+68],%o3
+call pow; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Y,%i5
+st2 %f30,[%i5]
+call IsYeqX; nop
+set I,%i5
+ld [%i5],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+set M,%i5
+ld [%i5],%i5
+cmp %i4,%i5; ble .L878; nop
+ba .L877; nop
+.L878:
+set X,%i5
+set Z,%i4
+ld2 [%i4],%f30
+ld2 [%i5],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%i5]
+.L876:
+set X,%i5
+ld2 [%i5],%f30
+set W,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbul .L875; nop
+.L877:
+mov %g0,%i0
+.L874:
+ret; restore
+.type SR3980,#function
+.size SR3980,.-SR3980
+.global PrintIfNPositive
+.align 4
+PrintIfNPositive:
+save %sp,-96,%sp
+set N,%i5
+ld [%i5],%i5
+cmp %i5,0; ble .L881; nop
+set .L883,%o0
+set N,%i5
+ld [%i5],%o1
+call printf; nop
+.L881:
+mov %g0,%i0
+.L880:
+ret; restore
+.type PrintIfNPositive,#function
+.size PrintIfNPositive,.-PrintIfNPositive
+.global TstPtUf
+.align 4
+TstPtUf:
+save %sp,-96,%sp
+set N,%i5
+st %g0,[%i5]
+set Z,%i5
+ld2 [%i5],%f30
+set Zero,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbue .L885; nop
+set .L887,%o0
+call printf; nop
+set .L888,%o0
+call printf; nop
+set sigsave,%i5
+set sigfpe,%i4
+st %i4,[%i5]
+set ovfl_buf,%o0
+call setjmp; nop
+cmp %o0,0; be .L889; nop
+ba .L891; nop
+.L889:
+set Q9,%i5
+set Z,%i4
+ld2 [%i4],%f30
+faddd %f30,%f30,%f28
+fdivd %f28,%f30,%f30
+st2 %f30,[%i5]
+set .L892,%o0
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set Q9,%i5
+ld2 [%i5],%f30
+set Two,%i5
+ld2 [%i5],%f28
+fsubd %f30,%f28,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call fabs; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+set Radix,%i5
+ld2 [%i5],%f28
+set U2,%i5
+ld2 [%i5],%f26
+fmuld %f28,%f26,%f28
+fcmped %f30,%f28; nop; fbuge .L893; nop
+set .L895,%o0
+call printf; nop
+set .L896,%o0
+call printf; nop
+ba .L894; nop
+.L893:
+set Q9,%i5
+ld2 [%i5],%f30
+set One,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbul .L899; nop
+set Two,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbule .L897; nop
+.L899:
+.L891:
+set 1,%i5
+set N,%i4
+st %i5,[%i4]
+set ErrCnt+4,%i5
+set ErrCnt+4,%i4
+ld [%i4],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+set .L902,%o0
+call printf; nop
+ba .L898; nop
+.L897:
+set 1,%i5
+set N,%i4
+st %i5,[%i4]
+set ErrCnt+8,%i5
+set ErrCnt+8,%i4
+ld [%i4],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+set .L905,%o0
+call printf; nop
+.L898:
+.L894:
+set sigsave,%i5
+st %g0,[%i5]
+set V9,%i5
+set Z,%i4
+ld2 [%i4],%f30
+set One,%i4
+ld2 [%i4],%f28
+fmuld %f30,%f28,%f26
+st2 %f26,[%i5]
+set Random1,%i4
+ld2 [%i5],%f26
+st2 %f26,[%i4]
+fmuld %f28,%f30,%f26
+st2 %f26,[%i5]
+set Random2,%i4
+ld2 [%i5],%f26
+st2 %f26,[%i4]
+fdivd %f30,%f28,%f30
+st2 %f30,[%i5]
+set Z,%i5
+ld2 [%i5],%f30
+set Random1,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbne .L906; nop
+set Random2,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbne .L906; nop
+set V9,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbne .L906; nop
+set N,%i5
+ld [%i5],%i5
+cmp %i5,0; ble .L907; nop
+call Pause; nop
+ba .L907; nop
+.L906:
+set N,%i5
+set 1,%i4
+st %i4,[%i5]
+set 2,%o0
+set .L910,%o1
+call BadCond; nop
+set .L911,%o0
+set Z,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set Z,%i5
+ld2 [%i5],%f30
+set Random1,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbue .L912; nop
+set .L914,%o0
+set Random1,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L912:
+set Random2,%i5
+ld2 [%i5],%f30
+set Z,%i5
+ld2 [%i5],%f28
+fcmped %f28,%f30; nop; fbue .L915; nop
+set Random1,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbue .L915; nop
+set .L917,%o0
+set Random2,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L915:
+set Z,%i5
+ld2 [%i5],%f30
+set V9,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbue .L918; nop
+set .L920,%o0
+set V9,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L918:
+set Random2,%i5
+ld2 [%i5],%f30
+set Random1,%i5
+ld2 [%i5],%f28
+fcmped %f30,%f28; nop; fbue .L921; nop
+set ErrCnt+8,%i5
+set ErrCnt+8,%i4
+ld [%i4],%i4
+add %i4,1,%i4
+st %i4,[%i5]
+set 2,%o0
+set .L925,%o1
+call BadCond; nop
+set .L926,%o0
+set Random2,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+set .L927,%o0
+set Random1,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+.L921:
+call Pause; nop
+.L907:
+.L885:
+mov %g0,%i0
+.L884:
+ret; restore
+.type TstPtUf,#function
+.size TstPtUf,.-TstPtUf
+.global notify
+.align 4
+notify:
+save %sp,-96,%sp
+set .L929,%o0
+mov %i0,%o1
+call printf; nop
+set .L930,%o0
+call printf; nop
+mov %g0,%i0
+.L928:
+ret; restore
+.type notify,#function
+.size notify,.-notify
+.global msglist
+.align 4
+msglist:
+save %sp,-96,%sp
+ba .L933; nop
+.L932:
+set .L935,%o0
+mov %i0,%i5
+add %i5,4,%i0
+ld [%i5],%o1
+call printf; nop
+.L933:
+ld [%i0],%i5
+cmp %i5,%g0; bne .L932; nop
+mov %g0,%i0
+.L931:
+ret; restore
+.type msglist,#function
+.size msglist,.-msglist
+.section ".data"
+.type .937,#object
+.align 4
+.937:
+.word .L938
+.word .L939
+.word .L940
+.word .L941
+.word .L942
+.word .L943
+.word .L944
+.word .L945
+.word .L946
+.word 0x0
+.size .937,40
+.global Instructions
+.section ".text"
+.align 4
+Instructions:
+save %sp,-96,%sp
+set .937,%o0
+call msglist; nop
+mov %g0,%i0
+.L936:
+ret; restore
+.type Instructions,#function
+.size Instructions,.-Instructions
+.section ".data"
+.type .948,#object
+.align 4
+.948:
+.word .L949
+.word .L950
+.word .L951
+.word .L952
+.word .L953
+.word .L954
+.word .L955
+.word .L956
+.word .L957
+.word .L958
+.word .L959
+.word .L960
+.word .L961
+.word .L962
+.word 0x0
+.size .948,60
+.global Heading
+.section ".text"
+.align 4
+Heading:
+save %sp,-96,%sp
+set .948,%o0
+call msglist; nop
+mov %g0,%i0
+.L947:
+ret; restore
+.type Heading,#function
+.size Heading,.-Heading
+.section ".data"
+.type .964,#object
+.align 4
+.964:
+.word .L965
+.word .L966
+.word .L967
+.word .L968
+.word .L969
+.word .L970
+.word .L971
+.word .L972
+.word .L973
+.word .L974
+.word .L975
+.word .L976
+.word .L977
+.word .L978
+.word .L979
+.word .L980
+.word .L981
+.word .L982
+.word .L983
+.word 0x0
+.size .964,80
+.global Characteristics
+.section ".text"
+.align 4
+Characteristics:
+save %sp,-96,%sp
+set .964,%o0
+call msglist; nop
+mov %g0,%i0
+.L963:
+ret; restore
+.type Characteristics,#function
+.size Characteristics,.-Characteristics
+.section ".data"
+.type .985,#object
+.align 4
+.985:
+.word .L986
+.word .L987
+.word .L988
+.word .L989
+.word .L990
+.word .L991
+.word .L992
+.word .L993
+.word .L994
+.word .L995
+.word .L996
+.word .L997
+.word .L998
+.word .L999
+.word .L1000
+.word .L1001
+.word .L1002
+.word 0x0
+.size .985,72
+.global History
+.section ".text"
+.align 4
+History:
+save %sp,-96,%sp
+set .985,%o0
+call msglist; nop
+mov %g0,%i0
+.L984:
+ret; restore
+.type History,#function
+.size History,.-History
+.global pow
+.align 4
+pow:
+save %sp,-120,%sp
+st %r24,[%fp+68]
+st %r25,[%fp+72]
+st %r26,[%fp+76]
+st %r27,[%fp+80]
+mov %g0,%i4
+mov %g0,%i3
+ld2 [%fp+76],%f30
+set .L8,%i2
+ld2 [%i2],%f28
+fcmped %f30,%f28; nop; fbne .L1004; nop
+set .L9,%i2
+ld2 [%i2],%f0
+ba .L1003; nop
+.L1004:
+ld2 [%fp+76],%f30
+set .L1009,%i2
+ld2 [%i2],%f28
+fcmped %f30,%f28; nop; fbul .L1008; nop
+set .L1010,%i2
+ld2 [%i2],%f28
+fcmped %f30,%f28; nop; fbule .L1006; nop
+.L1008:
+ld2 [%fp+68],%f30
+set .L826,%i2
+ld2 [%i2],%f28
+fcmped %f30,%f28; nop; fbue .L1006; nop
+ld2 [%fp+68],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ld2 [%fp+76],%f28
+fmuld %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call exp; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+fmovs %f30,%f0; fmovs %f31,%f1
+ba .L1003; nop
+.L1006:
+ld2 [%fp+76],%f30
+set .L8,%i2
+ld2 [%i2],%f28
+fcmped %f30,%f28; nop; fbuge .L1011; nop
+ld2 [%fp+76],%f30
+fnegs %f30,%f30; fmovs %f31,%f31
+st2 %f30,[%fp+76]
+set 1,%i3
+.L1011:
+ld2 [%fp+76],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+add -24,%fp,%o2
+call modf; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+st2 %f30,[%fp+76]
+ld2 [%fp+76],%f30
+set .L8,%i2
+ld2 [%i2],%f28
+fcmped %f30,%f28; nop; fbue .L1013; nop
+ld2 [%fp+68],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call log; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+ld2 [%fp+76],%f28
+fmuld %f28,%f30,%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+call exp; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+std %f30,[%fp+-16]
+ba .L1014; nop
+.L1013:
+set .L9,%i2
+ld2 [%i2],%f30
+std %f30,[%fp+-16]
+.L1014:
+ld2 [%fp+68],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+add -4,%fp,%o2
+call frexp; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+st2 %f30,[%fp+68]
+ldd [%fp+-24],%f30
+fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i2
+mov %i2,%i5
+cmp %i2,0; be .L1015; nop
+.L1017:
+and %i5,1,%i2
+cmp %i2,0; be .L1021; nop
+ldd [%fp+-16],%f30
+ld2 [%fp+68],%f28
+fmuld %f30,%f28,%f30
+std %f30,[%fp+-16]
+ld [%fp+-4],%i2
+add %i4,%i2,%i4
+.L1021:
+sra %i5,1,%i2
+mov %i2,%i5
+cmp %i2,0; bne .L1023; nop
+ba .L1019; nop
+.L1023:
+ld2 [%fp+68],%f30
+fmuld %f30,%f30,%f30
+st2 %f30,[%fp+68]
+ld [%fp+-4],%i2
+sll %i2,1,%i2
+st %i2,[%fp+-4]
+ld2 [%fp+68],%f30
+set .L1027,%i2
+ld2 [%i2],%f28
+fcmped %f30,%f28; nop; fbuge .L1017; nop
+set .L1028,%i2
+ld2 [%i2],%f30
+ld2 [%fp+68],%f28
+fmuld %f30,%f28,%f30
+st2 %f30,[%fp+68]
+ld [%fp+-4],%i2
+sub %i2,1,%i2
+st %i2,[%fp+-4]
+ba .L1017; nop
+.L1019:
+.L1015:
+cmp %i3,0; be .L1029; nop
+set .L9,%i2
+ld2 [%i2],%f30
+ldd [%fp+-16],%f28
+fdivd %f30,%f28,%f30
+std %f30,[%fp+-16]
+neg %i4,%i4
+.L1029:
+ldd [%fp+-16],%f30
+st %f30,[%sp+4*0+68]
+st %f31,[%sp+4*1+68]
+ld [%sp+4*0+68],%o0
+ld [%sp+4*1+68],%o1
+mov %i4,%o2
+call ldexp; nop
+fmovs %f0,%f30; fmovs %f1,%f31
+fmovs %f30,%f0; fmovs %f31,%f1
+.L1003:
+ret; restore
+.type pow,#function
+.size pow,.-pow
+.section ".bss"
+.global UfNGrad
+.type UfNGrad,#object
+.size UfNGrad,4
+.common UfNGrad,4,4
+.global SqRWrng
+.type SqRWrng,#object
+.size SqRWrng,4
+.common SqRWrng,4,4
+.global IEEE
+.type IEEE,#object
+.size IEEE,4
+.common IEEE,4,4
+.global Anomaly
+.type Anomaly,#object
+.size Anomaly,4
+.common Anomaly,4,4
+.global Monot
+.type Monot,#object
+.size Monot,4
+.common Monot,4,4
+.global NotMonot
+.type NotMonot,#object
+.size NotMonot,4
+.common NotMonot,4,4
+.global Done
+.type Done,#object
+.size Done,4
+.common Done,4,4
+.global Break
+.type Break,#object
+.size Break,4
+.common Break,4,4
+.global RSqrt
+.type RSqrt,#object
+.size RSqrt,4
+.common RSqrt,4,4
+.global RAddSub
+.type RAddSub,#object
+.size RAddSub,4
+.common RAddSub,4,4
+.global RDiv
+.type RDiv,#object
+.size RDiv,4
+.common RDiv,4,4
+.global RMult
+.type RMult,#object
+.size RMult,4
+.common RMult,4,4
+.global GAddSub
+.type GAddSub,#object
+.size GAddSub,4
+.common GAddSub,4,4
+.global GDiv
+.type GDiv,#object
+.size GDiv,4
+.common GDiv,4,4
+.global GMult
+.type GMult,#object
+.size GMult,4
+.common GMult,4,4
+.global N1
+.type N1,#object
+.size N1,4
+.common N1,4,4
+.global N
+.type N,#object
+.size N,4
+.common N,4,4
+.global M
+.type M,#object
+.size M,4
+.common M,4,4
+.global PageNo
+.type PageNo,#object
+.size PageNo,4
+.common PageNo,4,4
+.global Milestone
+.type Milestone,#object
+.size Milestone,4
+.common Milestone,4,4
+.global fpecount
+.type fpecount,#object
+.size fpecount,4
+.common fpecount,4,4
+.global ErrCnt
+.type ErrCnt,#object
+.size ErrCnt,16
+.common ErrCnt,16,4
+.global Z9
+.type Z9,#object
+.size Z9,8
+.common Z9,8,8
+.global Z2
+.type Z2,#object
+.size Z2,8
+.common Z2,8,8
+.global Z1
+.type Z1,#object
+.size Z1,8
+.common Z1,8,8
+.global PseudoZero
+.type PseudoZero,#object
+.size PseudoZero,8
+.common PseudoZero,8,8
+.global Z
+.type Z,#object
+.size Z,8
+.common Z,8,8
+.global Random2
+.type Random2,#object
+.size Random2,8
+.common Random2,8,8
+.global Y2
+.type Y2,#object
+.size Y2,8
+.common Y2,8,8
+.global Y1
+.type Y1,#object
+.size Y1,8
+.common Y1,8,8
+.global Y
+.type Y,#object
+.size Y,8
+.common Y,8,8
+.global Random1
+.type Random1,#object
+.size Random1,8
+.common Random1,8,8
+.global X8
+.type X8,#object
+.size X8,8
+.common X8,8,8
+.global X2
+.type X2,#object
+.size X2,8
+.common X2,8,8
+.global X1
+.type X1,#object
+.size X1,8
+.common X1,8,8
+.global X
+.type X,#object
+.size X,8
+.common X,8,8
+.global W
+.type W,#object
+.size W,8
+.common W,8,8
+.global V9
+.type V9,#object
+.size V9,8
+.common V9,8,8
+.global V0
+.type V0,#object
+.size V0,8
+.common V0,8,8
+.global V
+.type V,#object
+.size V,8
+.common V,8,8
+.global U2
+.type U2,#object
+.size U2,8
+.common U2,8,8
+.global U1
+.type U1,#object
+.size U1,8
+.common U1,8,8
+.global UfThold
+.type UfThold,#object
+.size UfThold,8
+.common UfThold,8,8
+.global OneUlp
+.type OneUlp,#object
+.size OneUlp,8
+.common OneUlp,8,8
+.global S
+.type S,#object
+.size S,8
+.common S,8,8
+.global Underflow
+.type Underflow,#object
+.size Underflow,8
+.common Underflow,8,8
+.global T
+.type T,#object
+.size T,8
+.common T,8,8
+.global Random9
+.type Random9,#object
+.size Random9,8
+.common Random9,8,8
+.global R
+.type R,#object
+.size R,8
+.common R,8,8
+.global Q9
+.type Q9,#object
+.size Q9,8
+.common Q9,8,8
+.global Q
+.type Q,#object
+.size Q,8
+.common Q,8,8
+.global Precision
+.type Precision,#object
+.size Precision,8
+.common Precision,8,8
+.global MyZero
+.type MyZero,#object
+.size MyZero,8
+.common MyZero,8,8
+.global J
+.type J,#object
+.size J,8
+.common J,8,8
+.global StickyBit
+.type StickyBit,#object
+.size StickyBit,8
+.common StickyBit,8,8
+.global I
+.type I,#object
+.size I,4
+.common I,4,4
+.global HInvrse
+.type HInvrse,#object
+.size HInvrse,8
+.common HInvrse,8,8
+.global H
+.type H,#object
+.size H,8
+.common H,8,8
+.global F9
+.type F9,#object
+.size F9,8
+.common F9,8,8
+.global F6
+.type F6,#object
+.size F6,8
+.common F6,8,8
+.global Third
+.type Third,#object
+.size Third,8
+.common Third,8,8
+.global E9
+.type E9,#object
+.size E9,8
+.common E9,8,8
+.global MaxSqEr
+.type MaxSqEr,#object
+.size MaxSqEr,8
+.common MaxSqEr,8,8
+.global SqEr
+.type SqEr,#object
+.size SqEr,8
+.common SqEr,8,8
+.global MinSqEr
+.type MinSqEr,#object
+.size MinSqEr,8
+.common MinSqEr,8,8
+.global E3
+.type E3,#object
+.size E3,8
+.common E3,8,8
+.global Exp2
+.type Exp2,#object
+.size Exp2,8
+.common Exp2,8,8
+.global E1
+.type E1,#object
+.size E1,8
+.common E1,8,8
+.global E0
+.type E0,#object
+.size E0,8
+.common E0,8,8
+.global FourD
+.type FourD,#object
+.size FourD,8
+.common FourD,8,8
+.global D
+.type D,#object
+.size D,8
+.common D,8,8
+.global CInvrse
+.type CInvrse,#object
+.size CInvrse,8
+.common CInvrse,8,8
+.global C
+.type C,#object
+.size C,8
+.common C,8,8
+.global A1
+.type A1,#object
+.size A1,8
+.common A1,8,8
+.global AInvrse
+.type AInvrse,#object
+.size AInvrse,8
+.common AInvrse,8,8
+.global ch
+.type ch,#object
+.size ch,8
+.common ch,8,1
+.global Indx
+.type Indx,#object
+.size Indx,4
+.common Indx,4,4
+.global BMinusU2
+.type BMinusU2,#object
+.size BMinusU2,8
+.common BMinusU2,8,8
+.global RadixD2
+.type RadixD2,#object
+.size RadixD2,8
+.common RadixD2,8,8
+.global BInvrse
+.type BInvrse,#object
+.size BInvrse,8
+.common BInvrse,8,8
+.global Radix
+.type Radix,#object
+.size Radix,8
+.common Radix,8,8
+.global sigsave
+.type sigsave,#object
+.size sigsave,4
+.common sigsave,4,4
+.global ovfl_buf
+.type ovfl_buf,#object
+.size ovfl_buf,48
+.common ovfl_buf,48,4
+.section ".rodata"
+.align 8
+.L1028:
+.word 0x40000000
+.word 0x0
+.align 8
+.L1027:
+.word 0x3fe00000
+.word 0x0
+.align 8
+.L1010:
+.word 0x40913000
+.word 0x0
+.align 8
+.L1009:
+.word 0xc0913000
+.word 0x0
+.align 1
+.L1002:
+.byte 115
+.byte 101
+.byte 101
+.byte 32
+.byte 115
+.byte 111
+.byte 117
+.byte 114
+.byte 99
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 109
+.byte 111
+.byte 114
+.byte 101
+.byte 32
+.byte 104
+.byte 105
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 46
+.byte 0
+.align 1
+.L1001:
+.byte 66
+.byte 65
+.byte 83
+.byte 73
+.byte 67
+.byte 32
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 40
+.byte 67
+.byte 41
+.byte 32
+.byte 49
+.byte 57
+.byte 56
+.byte 51
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 80
+.byte 114
+.byte 111
+.byte 102
+.byte 46
+.byte 32
+.byte 87
+.byte 46
+.byte 32
+.byte 77
+.byte 46
+.byte 32
+.byte 75
+.byte 97
+.byte 104
+.byte 97
+.byte 110
+.byte 59
+.byte 0
+.align 1
+.L1000:
+.byte 97
+.byte 115
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 99
+.byte 101
+.byte 114
+.byte 116
+.byte 97
+.byte 105
+.byte 110
+.byte 32
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 121
+.byte 32
+.byte 87
+.byte 65
+.byte 78
+.byte 71
+.byte 32
+.byte 109
+.byte 97
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L999:
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 45
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 44
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 108
+.byte 115
+.byte 111
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 32
+.byte 108
+.byte 111
+.byte 103
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 105
+.byte 99
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.L998:
+.byte 10
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 98
+.byte 97
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 117
+.byte 112
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 110
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 114
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 114
+.byte 101
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 101
+.byte 110
+.byte 116
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 0
+.align 1
+.L997:
+.byte 111
+.byte 102
+.byte 32
+.byte 112
+.byte 97
+.byte 116
+.byte 104
+.byte 111
+.byte 108
+.byte 111
+.byte 103
+.byte 105
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 115
+.byte 97
+.byte 121
+.byte 32
+.byte 104
+.byte 111
+.byte 119
+.byte 32
+.byte 119
+.byte 101
+.byte 108
+.byte 108
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 109
+.byte 112
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.L996:
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 116
+.byte 114
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 112
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 119
+.byte 105
+.byte 100
+.byte 101
+.byte 114
+.byte 32
+.byte 118
+.byte 97
+.byte 114
+.byte 105
+.byte 101
+.byte 116
+.byte 121
+.byte 0
+.align 1
+.L995:
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 44
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 32
+.byte 40
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 115
+.byte 41
+.byte 0
+.align 1
+.L994:
+.byte 87
+.byte 46
+.byte 32
+.byte 74
+.byte 46
+.byte 32
+.byte 67
+.byte 111
+.byte 100
+.byte 121
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 87
+.byte 46
+.byte 32
+.byte 87
+.byte 97
+.byte 105
+.byte 116
+.byte 101
+.byte 46
+.byte 32
+.byte 65
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 98
+.byte 111
+.byte 116
+.byte 104
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 115
+.byte 32
+.byte 116
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.L993:
+.byte 98
+.byte 111
+.byte 111
+.byte 107
+.byte 32
+.byte 32
+.byte 96
+.byte 83
+.byte 111
+.byte 102
+.byte 116
+.byte 119
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 77
+.byte 97
+.byte 110
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 69
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 70
+.byte 117
+.byte 110
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 39
+.byte 32
+.byte 40
+.byte 49
+.byte 57
+.byte 56
+.byte 48
+.byte 41
+.byte 32
+.byte 98
+.byte 121
+.byte 0
+.align 1
+.L992:
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 96
+.byte 77
+.byte 65
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 39
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 0
+.align 1
+.L991:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 99
+.byte 97
+.byte 112
+.byte 97
+.byte 98
+.byte 105
+.byte 108
+.byte 105
+.byte 116
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 103
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 121
+.byte 111
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 105
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.L990:
+.byte 70
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 115
+.byte 101
+.byte 113
+.byte 117
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L989:
+.byte 32
+.byte 32
+.byte 32
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 50
+.byte 43
+.byte 50
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 53
+.byte 32
+.byte 46
+.byte 0
+.align 1
+.L988:
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 0
+.align 1
+.L987:
+.byte 32
+.byte 32
+.byte 32
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 44
+.byte 0
+.align 1
+.L986:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 97
+.byte 116
+.byte 116
+.byte 101
+.byte 109
+.byte 112
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 105
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 97
+.byte 109
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.L983:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 68
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 45
+.byte 66
+.byte 105
+.byte 110
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 89
+.byte 69
+.byte 84
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 97
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 46
+.byte 0
+.align 1
+.L982:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 69
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 101
+.byte 118
+.byte 101
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 89
+.byte 69
+.byte 84
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.L981:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 32
+.byte 32
+.byte 89
+.byte 94
+.byte 88
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.L980:
+.byte 9
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 116
+.byte 97
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 112
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 45
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 115
+.byte 46
+.byte 0
+.align 1
+.L979:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 99
+.byte 121
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.L978:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 86
+.byte 48
+.byte 32
+.byte 32
+.byte 116
+.byte 101
+.byte 108
+.byte 108
+.byte 115
+.byte 44
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 32
+.byte 73
+.byte 110
+.byte 102
+.byte 105
+.byte 110
+.byte 105
+.byte 116
+.byte 121
+.byte 32
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.L977:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 86
+.byte 32
+.byte 61
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 44
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 46
+.byte 0
+.align 1
+.L976:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 69
+.byte 48
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 101
+.byte 108
+.byte 108
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 98
+.byte 114
+.byte 117
+.byte 112
+.byte 116
+.byte 44
+.byte 32
+.byte 103
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 117
+.byte 122
+.byte 122
+.byte 121
+.byte 46
+.byte 0
+.align 1
+.L975:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 84
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.L974:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 87
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 32
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 66
+.byte 105
+.byte 116
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 46
+.byte 0
+.align 1
+.L973:
+.byte 9
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 46
+.byte 44
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 46
+.byte 44
+.byte 32
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 46
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 83
+.byte 113
+.byte 114
+.byte 116
+.byte 46
+.byte 0
+.align 1
+.L972:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 87
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 116
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 1
+.L971:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 65
+.byte 100
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 46
+.byte 44
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 46
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 46
+.byte 0
+.align 1
+.L970:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 47
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 79
+.byte 110
+.byte 101
+.byte 32
+.byte 85
+.byte 108
+.byte 112
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 108
+.byte 105
+.byte 116
+.byte 116
+.byte 108
+.byte 101
+.byte 32
+.byte 108
+.byte 101
+.byte 115
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 32
+.byte 46
+.byte 0
+.align 1
+.L969:
+.byte 9
+.byte 40
+.byte 79
+.byte 110
+.byte 101
+.byte 85
+.byte 108
+.byte 112
+.byte 110
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 76
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 80
+.byte 108
+.byte 97
+.byte 99
+.byte 101
+.byte 41
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 48
+.byte 48
+.byte 120
+.byte 120
+.byte 120
+.byte 32
+.byte 46
+.byte 0
+.align 1
+.L968:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 47
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 79
+.byte 110
+.byte 101
+.byte 32
+.byte 85
+.byte 108
+.byte 112
+.byte 0
+.align 1
+.L967:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 114
+.byte 105
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.L966:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 44
+.byte 32
+.byte 52
+.byte 44
+.byte 32
+.byte 56
+.byte 44
+.byte 32
+.byte 49
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 54
+.byte 44
+.byte 32
+.byte 49
+.byte 48
+.byte 48
+.byte 44
+.byte 32
+.byte 50
+.byte 53
+.byte 54
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 1
+.L965:
+.byte 82
+.byte 117
+.byte 110
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 114
+.byte 101
+.byte 118
+.byte 101
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 115
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 115
+.byte 58
+.byte 0
+.align 1
+.L962:
+.byte 9
+.byte 79
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 101
+.byte 118
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 105
+.byte 108
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 112
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 58
+.byte 0
+.align 1
+.L961:
+.byte 9
+.byte 79
+.byte 112
+.byte 116
+.byte 105
+.byte 109
+.byte 105
+.byte 122
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 101
+.byte 118
+.byte 101
+.byte 108
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.L960:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 105
+.byte 108
+.byte 101
+.byte 114
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.L959:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.L958:
+.byte 9
+.byte 86
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 9
+.byte 49
+.byte 48
+.byte 32
+.byte 70
+.byte 101
+.byte 98
+.byte 114
+.byte 117
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 49
+.byte 57
+.byte 56
+.byte 57
+.byte 59
+.byte 0
+.align 1
+.L957:
+.byte 9
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 9
+.byte 100
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 59
+.byte 0
+.align 1
+.L956:
+.byte 73
+.byte 110
+.byte 32
+.byte 100
+.byte 111
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 115
+.byte 111
+.byte 44
+.byte 32
+.byte 112
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 108
+.byte 117
+.byte 100
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 108
+.byte 108
+.byte 111
+.byte 119
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 110
+.byte 102
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 0
+.align 1
+.L955:
+.byte 9
+.byte 83
+.byte 97
+.byte 110
+.byte 32
+.byte 70
+.byte 114
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 44
+.byte 32
+.byte 67
+.byte 65
+.byte 32
+.byte 57
+.byte 52
+.byte 49
+.byte 52
+.byte 51
+.byte 45
+.byte 48
+.byte 55
+.byte 48
+.byte 52
+.byte 44
+.byte 32
+.byte 85
+.byte 83
+.byte 65
+.byte 10
+.byte 0
+.align 1
+.L954:
+.byte 9
+.byte 85
+.byte 110
+.byte 105
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 116
+.byte 121
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 67
+.byte 97
+.byte 108
+.byte 105
+.byte 102
+.byte 111
+.byte 114
+.byte 110
+.byte 105
+.byte 97
+.byte 0
+.align 1
+.L953:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 67
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 85
+.byte 45
+.byte 55
+.byte 54
+.byte 0
+.align 1
+.L952:
+.byte 9
+.byte 82
+.byte 105
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 75
+.byte 97
+.byte 114
+.byte 112
+.byte 105
+.byte 110
+.byte 115
+.byte 107
+.byte 105
+.byte 0
+.align 1
+.L951:
+.byte 80
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 115
+.byte 117
+.byte 103
+.byte 103
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 0
+.align 1
+.L950:
+.byte 99
+.byte 111
+.byte 112
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 117
+.byte 110
+.byte 97
+.byte 110
+.byte 116
+.byte 105
+.byte 99
+.byte 105
+.byte 112
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 110
+.byte 101
+.byte 119
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 110
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 112
+.byte 97
+.byte 116
+.byte 104
+.byte 111
+.byte 108
+.byte 111
+.byte 103
+.byte 105
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L949:
+.byte 85
+.byte 115
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 105
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 104
+.byte 101
+.byte 108
+.byte 112
+.byte 32
+.byte 100
+.byte 101
+.byte 98
+.byte 117
+.byte 103
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 117
+.byte 103
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 119
+.byte 105
+.byte 108
+.byte 108
+.byte 0
+.align 1
+.L946:
+.byte 65
+.byte 110
+.byte 115
+.byte 119
+.byte 101
+.byte 114
+.byte 32
+.byte 113
+.byte 117
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 89
+.byte 44
+.byte 32
+.byte 121
+.byte 44
+.byte 32
+.byte 78
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 110
+.byte 32
+.byte 40
+.byte 117
+.byte 110
+.byte 108
+.byte 101
+.byte 115
+.byte 115
+.byte 32
+.byte 111
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 119
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 100
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L945:
+.byte 97
+.byte 109
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 107
+.byte 101
+.byte 32
+.byte 102
+.byte 117
+.byte 114
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L944:
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 97
+.byte 110
+.byte 121
+.byte 119
+.byte 97
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 32
+.byte 104
+.byte 111
+.byte 119
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 109
+.byte 105
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 111
+.byte 110
+.byte 101
+.byte 115
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 115
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 110
+.byte 0
+.align 1
+.L943:
+.byte 119
+.byte 97
+.byte 114
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 46
+.byte 32
+.byte 32
+.byte 73
+.byte 102
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 117
+.byte 97
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 118
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 32
+.byte 110
+.byte 97
+.byte 117
+.byte 103
+.byte 104
+.byte 116
+.byte 44
+.byte 32
+.byte 100
+.byte 111
+.byte 110
+.byte 39
+.byte 116
+.byte 32
+.byte 100
+.byte 101
+.byte 115
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 114
+.byte 117
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 1
+.L942:
+.byte 116
+.byte 111
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 101
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 115
+.byte 117
+.byte 114
+.byte 114
+.byte 111
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 97
+.byte 102
+.byte 116
+.byte 101
+.byte 114
+.byte 44
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 104
+.byte 97
+.byte 112
+.byte 115
+.byte 44
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 112
+.byte 108
+.byte 97
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 0
+.align 1
+.L941:
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 44
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.L940:
+.byte 116
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 117
+.byte 97
+.byte 100
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 116
+.byte 101
+.byte 114
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 101
+.byte 99
+.byte 117
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 97
+.byte 110
+.byte 0
+.align 1
+.L939:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 96
+.byte 69
+.byte 78
+.byte 68
+.byte 32
+.byte 79
+.byte 70
+.byte 32
+.byte 84
+.byte 69
+.byte 83
+.byte 84
+.byte 39
+.byte 44
+.byte 10
+.byte 0
+.align 1
+.L938:
+.byte 76
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 112
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 109
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 101
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 105
+.byte 46
+.byte 101
+.byte 46
+.byte 32
+.byte 98
+.byte 101
+.byte 102
+.byte 111
+.byte 114
+.byte 101
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 112
+.byte 108
+.byte 97
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.L935:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L930:
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 76
+.byte 69
+.byte 65
+.byte 83
+.byte 69
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 73
+.byte 70
+.byte 89
+.byte 32
+.byte 75
+.byte 65
+.byte 82
+.byte 80
+.byte 73
+.byte 78
+.byte 75
+.byte 83
+.byte 73
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L929:
+.byte 37
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 116
+.byte 46
+.byte 46
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L927:
+.byte 9
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 90
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L926:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 49
+.byte 32
+.byte 42
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L925:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 100
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 117
+.byte 116
+.byte 101
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L920:
+.byte 90
+.byte 32
+.byte 47
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L917:
+.byte 49
+.byte 32
+.byte 42
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.L914:
+.byte 90
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 1
+.L911:
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.L910:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 0
+.align 1
+.L905:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L902:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 86
+.byte 69
+.byte 82
+.byte 89
+.byte 32
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L896:
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 106
+.byte 117
+.byte 115
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L895:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 44
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 1
+.L892:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 109
+.byte 97
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 101
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 40
+.byte 90
+.byte 32
+.byte 43
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L888:
+.byte 40
+.byte 90
+.byte 32
+.byte 43
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 115
+.byte 97
+.byte 102
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L887:
+.byte 83
+.byte 105
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 100
+.byte 101
+.byte 110
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 101
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 0
+.align 1
+.L883:
+.byte 83
+.byte 105
+.byte 109
+.byte 105
+.byte 108
+.byte 97
+.byte 114
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 116
+.byte 105
+.byte 109
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L873:
+.byte 9
+.byte 9
+.byte 116
+.byte 104
+.byte 101
+.byte 121
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L872:
+.byte 9
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 117
+.byte 110
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 59
+.byte 10
+.byte 0
+.align 1
+.L871:
+.byte 9
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 59
+.byte 10
+.byte 0
+.align 1
+.L870:
+.byte 9
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 10
+.byte 0
+.align 1
+.L869:
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.L868:
+.byte 87
+.byte 65
+.byte 82
+.byte 78
+.byte 73
+.byte 78
+.byte 71
+.byte 58
+.byte 32
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.L850:
+.byte 9
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 101
+.byte 97
+.byte 100
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 48
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L849:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 8
+.L841:
+.word 0x3ed4f8b5
+.word 0x88e368f1
+.align 1
+.L839:
+.byte 37
+.byte 115
+.byte 58
+.byte 32
+.byte 32
+.byte 37
+.byte 115
+.byte 0
+.align 1
+.L838:
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 0
+.align 1
+.L837:
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 0
+.align 1
+.L836:
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 0
+.align 1
+.L835:
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 0
+.align 1
+.L829:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 97
+.byte 103
+.byte 101
+.byte 58
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 10
+.byte 0
+.align 1
+.L828:
+.byte 10
+.byte 68
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 109
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 102
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 109
+.byte 105
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 111
+.byte 110
+.byte 101
+.byte 32
+.byte 78
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 0
+.align 8
+.L826:
+.word 0xbff00000
+.word 0x0
+.align 1
+.L821:
+.byte 69
+.byte 78
+.byte 68
+.byte 32
+.byte 79
+.byte 70
+.byte 32
+.byte 84
+.byte 69
+.byte 83
+.byte 84
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L820:
+.byte 10
+.byte 65
+.byte 32
+.byte 116
+.byte 111
+.byte 116
+.byte 97
+.byte 108
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 119
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L817:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 69
+.byte 120
+.byte 99
+.byte 101
+.byte 108
+.byte 108
+.byte 101
+.byte 110
+.byte 116
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L816:
+.byte 32
+.byte 100
+.byte 117
+.byte 114
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 71
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L815:
+.byte 44
+.byte 10
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 115
+.byte 105
+.byte 98
+.byte 108
+.byte 121
+.byte 32
+.byte 68
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 32
+.byte 82
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.L814:
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L811:
+.byte 56
+.byte 53
+.byte 52
+.byte 0
+.align 1
+.L810:
+.byte 55
+.byte 53
+.byte 52
+.byte 0
+.align 1
+.L807:
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 112
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 73
+.byte 69
+.byte 69
+.byte 69
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 110
+.byte 100
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 80
+.byte 0
+.align 1
+.L806:
+.byte 82
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 111
+.byte 114
+.byte 109
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 0
+.align 1
+.L803:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 83
+.byte 97
+.byte 116
+.byte 105
+.byte 115
+.byte 102
+.byte 97
+.byte 99
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L797:
+.byte 78
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 100
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 115
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 98
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L796:
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 39
+.byte 115
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 115
+.byte 101
+.byte 113
+.byte 117
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L795:
+.byte 80
+.byte 111
+.byte 116
+.byte 101
+.byte 110
+.byte 116
+.byte 105
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 102
+.byte 97
+.byte 116
+.byte 97
+.byte 108
+.byte 32
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 112
+.byte 111
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 1
+.L792:
+.byte 117
+.byte 110
+.byte 97
+.byte 99
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 32
+.byte 83
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 68
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L791:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 0
+.align 1
+.L787:
+.byte 100
+.byte 101
+.byte 115
+.byte 112
+.byte 105
+.byte 116
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 110
+.byte 105
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 68
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L786:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 65
+.byte 99
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L781:
+.byte 83
+.byte 97
+.byte 116
+.byte 105
+.byte 115
+.byte 102
+.byte 97
+.byte 99
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L780:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 0
+.align 1
+.L769:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 32
+.byte 37
+.byte 45
+.byte 50
+.byte 57
+.byte 115
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L762:
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 1
+.L761:
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 1
+.L760:
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 1
+.L759:
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 115
+.byte 32
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 1
+.L755:
+.byte 10
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 48
+.byte 32
+.byte 47
+.byte 32
+.byte 48
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 115
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 1
+.L754:
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L751:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 49
+.byte 32
+.byte 47
+.byte 32
+.byte 48
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 115
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 1
+.L750:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 109
+.byte 101
+.byte 115
+.byte 115
+.byte 97
+.byte 103
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 47
+.byte 111
+.byte 114
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 32
+.byte 100
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 63
+.byte 10
+.byte 0
+.align 1
+.L749:
+.byte 32
+.byte 32
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 101
+.byte 97
+.byte 100
+.byte 44
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L748:
+.byte 32
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L743:
+.byte 32
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 32
+.byte 116
+.byte 114
+.byte 97
+.byte 112
+.byte 115
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.L728:
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L727:
+.byte 32
+.byte 117
+.byte 110
+.byte 98
+.byte 97
+.byte 108
+.byte 97
+.byte 110
+.byte 99
+.byte 101
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 59
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 42
+.byte 32
+.byte 86
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L726:
+.byte 66
+.byte 97
+.byte 100
+.byte 108
+.byte 121
+.byte 0
+.align 1
+.L719:
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 90
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 50
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L718:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L706:
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 90
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L705:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 119
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L688:
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 44
+.byte 32
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 10
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 0
+.align 1
+.L687:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 0
+.align 1
+.L681:
+.byte 97
+.byte 98
+.byte 111
+.byte 118
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L680:
+.byte 65
+.byte 110
+.byte 121
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 42
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 111
+.byte 110
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L679:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 86
+.byte 32
+.byte 47
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L678:
+.byte 78
+.byte 111
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 86
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L677:
+.byte 84
+.byte 104
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 115
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 98
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 115
+.byte 121
+.byte 115
+.byte 116
+.byte 101
+.byte 109
+.byte 32
+.byte 116
+.byte 114
+.byte 97
+.byte 112
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L676:
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 86
+.byte 48
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L673:
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 86
+.byte 32
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L664:
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 115
+.byte 104
+.byte 114
+.byte 105
+.byte 110
+.byte 107
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L661:
+.byte 45
+.byte 40
+.byte 45
+.byte 89
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 89
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L660:
+.byte 102
+.byte 105
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 0
+.align 1
+.L659:
+.byte 83
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L656:
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L655:
+.byte 67
+.byte 97
+.byte 110
+.byte 32
+.byte 96
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 45
+.byte 89
+.byte 39
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 63
+.byte 10
+.byte 0
+.align 1
+.L648:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 103
+.byte 101
+.byte 110
+.byte 101
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L647:
+.byte 83
+.byte 101
+.byte 97
+.byte 114
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.L646:
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L638:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 119
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 94
+.byte 81
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 114
+.byte 32
+.byte 110
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 121
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 101
+.byte 109
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L637:
+.byte 65
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 97
+.byte 100
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 116
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L630:
+.byte 9
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 105
+.byte 110
+.byte 121
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L629:
+.byte 9
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 117
+.byte 99
+.byte 104
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 115
+.byte 112
+.byte 111
+.byte 105
+.byte 108
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 10
+.byte 0
+.align 1
+.L628:
+.byte 9
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L627:
+.byte 9
+.byte 40
+.byte 49
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 59
+.byte 10
+.byte 0
+.align 1
+.L626:
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 10
+.byte 0
+.align 1
+.L625:
+.byte 67
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 0
+.align 1
+.L618:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 88
+.byte 94
+.byte 40
+.byte 40
+.byte 88
+.byte 32
+.byte 43
+.byte 32
+.byte 49
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 41
+.byte 41
+.byte 32
+.byte 118
+.byte 115
+.byte 46
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 40
+.byte 50
+.byte 41
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 62
+.byte 32
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L614:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L611:
+.byte 32
+.byte 32
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L610:
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 116
+.byte 119
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 48
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 10
+.byte 0
+.align 1
+.L606:
+.byte 97
+.byte 99
+.byte 116
+.byte 117
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 58
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L605:
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 97
+.byte 102
+.byte 102
+.byte 108
+.byte 105
+.byte 99
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 10
+.byte 9
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 59
+.byte 10
+.byte 0
+.align 1
+.L604:
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 10
+.byte 111
+.byte 110
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 0
+.align 1
+.L603:
+.byte 83
+.byte 105
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L602:
+.byte 82
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 110
+.byte 97
+.byte 114
+.byte 114
+.byte 111
+.byte 119
+.byte 59
+.byte 32
+.byte 85
+.byte 49
+.byte 94
+.byte 37
+.byte 100
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L597:
+.byte 109
+.byte 101
+.byte 114
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L596:
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 115
+.byte 117
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 32
+.byte 108
+.byte 97
+.byte 114
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 82
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 0
+.align 1
+.L595:
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 0
+.align 1
+.L594:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L593:
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 32
+.byte 43
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L592:
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L589:
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 97
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 97
+.byte 99
+.byte 116
+.byte 117
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 10
+.byte 0
+.align 1
+.L588:
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 40
+.byte 102
+.byte 40
+.byte 88
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 102
+.byte 40
+.byte 90
+.byte 41
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L587:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 1
+.L586:
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 110
+.byte 111
+.byte 99
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 116
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L585:
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 10
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 115
+.byte 32
+.byte 0
+.align 1
+.L584:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 44
+.byte 32
+.byte 0
+.align 1
+.L583:
+.byte 121
+.byte 101
+.byte 116
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 90
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L582:
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L577:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 47
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L567:
+.byte 40
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 41
+.byte 32
+.byte 60
+.byte 32
+.byte 69
+.byte 48
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L566:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 103
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 59
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 32
+.byte 65
+.byte 98
+.byte 115
+.byte 111
+.byte 108
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 69
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 61
+.byte 10
+.byte 0
+.align 1
+.L561:
+.byte 124
+.byte 81
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 124
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L560:
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 81
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L559:
+.byte 81
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 89
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.byte 32
+.byte 100
+.byte 101
+.byte 110
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 124
+.byte 81
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 124
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 48
+.byte 59
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 115
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L558:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 101
+.byte 115
+.byte 32
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 10
+.byte 0
+.align 1
+.L556:
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 32
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L555:
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 100
+.byte 111
+.byte 119
+.byte 110
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L554:
+.byte 97
+.byte 112
+.byte 112
+.byte 114
+.byte 111
+.byte 97
+.byte 99
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L553:
+.byte 69
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 100
+.byte 101
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L541:
+.byte 83
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 115
+.byte 116
+.byte 114
+.byte 105
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 69
+.byte 48
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L540:
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L539:
+.byte 68
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 32
+.byte 104
+.byte 105
+.byte 103
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.L536:
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 99
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L535:
+.byte 80
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 116
+.byte 115
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 32
+.byte 104
+.byte 105
+.byte 103
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.L528:
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L527:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 100
+.byte 108
+.byte 121
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L526:
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 44
+.byte 32
+.byte 105
+.byte 115
+.byte 110
+.byte 39
+.byte 116
+.byte 59
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L525:
+.byte 66
+.byte 117
+.byte 116
+.byte 32
+.byte 45
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L522:
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 58
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L521:
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 100
+.byte 108
+.byte 121
+.byte 32
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L520:
+.byte 80
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 97
+.byte 110
+.byte 10
+.byte 0
+.align 1
+.L507:
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L483:
+.byte 83
+.byte 101
+.byte 101
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 69
+.byte 48
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L480:
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L477:
+.byte 9
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L476:
+.byte 69
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 97
+.byte 108
+.byte 105
+.byte 100
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L455:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 119
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 94
+.byte 105
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L452:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.L450:
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 117
+.byte 108
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L449:
+.byte 79
+.byte 98
+.byte 115
+.byte 101
+.byte 114
+.byte 118
+.byte 101
+.byte 100
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 114
+.byte 117
+.byte 110
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 1
+.L448:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L445:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L440:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L435:
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L434:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L433:
+.byte 65
+.byte 110
+.byte 111
+.byte 109
+.byte 97
+.byte 108
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 60
+.byte 32
+.byte 0
+.align 1
+.L393:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L371:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 88
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 110
+.byte 45
+.byte 109
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 88
+.byte 32
+.byte 110
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L370:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 105
+.byte 116
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L353:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 109
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 105
+.byte 116
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L342:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 88
+.byte 41
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 88
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 88
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L337:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 48
+.byte 46
+.byte 48
+.byte 44
+.byte 32
+.byte 45
+.byte 48
+.byte 46
+.byte 48
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.L335:
+.byte 10
+.byte 82
+.byte 117
+.byte 110
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 40
+.byte 120
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L334:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 78
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L333:
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 89
+.byte 32
+.byte 42
+.byte 32
+.byte 88
+.byte 32
+.byte 116
+.byte 114
+.byte 105
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 8
+.L324:
+.word 0x40080000
+.word 0x0
+.align 1
+.L323:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 100
+.byte 111
+.byte 109
+.byte 32
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L322:
+.byte 68
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 117
+.byte 116
+.byte 101
+.byte 63
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.L319:
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 40
+.byte 115
+.byte 41
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 40
+.byte 115
+.byte 41
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 10
+.byte 40
+.byte 110
+.byte 111
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 98
+.byte 111
+.byte 118
+.byte 101
+.byte 41
+.byte 32
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 101
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 1
+.L317:
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L316:
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L299:
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L296:
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 41
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 89
+.byte 32
+.byte 45
+.byte 32
+.byte 88
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 110
+.byte 32
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L293:
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L292:
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 0
+.align 1
+.L289:
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L282:
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L277:
+.byte 73
+.byte 110
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 108
+.byte 101
+.byte 116
+.byte 101
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 114
+.byte 121
+.byte 45
+.byte 112
+.byte 114
+.byte 111
+.byte 112
+.byte 97
+.byte 103
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.L273:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 42
+.byte 32
+.byte 40
+.byte 32
+.byte 49
+.byte 32
+.byte 47
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 0
+.align 1
+.L271:
+.byte 47
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L268:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L265:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.L262:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L257:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.L254:
+.byte 42
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L253:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L250:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L240:
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 40
+.byte 49
+.byte 47
+.byte 88
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 0
+.align 1
+.L221:
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 100
+.byte 100
+.byte 47
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L220:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 42
+.byte 44
+.byte 32
+.byte 47
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 45
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 121
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L217:
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 41
+.byte 32
+.byte 123
+.byte 46
+.byte 46
+.byte 46
+.byte 46
+.byte 46
+.byte 125
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 32
+.byte 123
+.byte 46
+.byte 46
+.byte 46
+.byte 47
+.byte 40
+.byte 88
+.byte 45
+.byte 49
+.byte 46
+.byte 48
+.byte 41
+.byte 46
+.byte 46
+.byte 46
+.byte 125
+.byte 10
+.byte 0
+.align 1
+.L216:
+.byte 32
+.byte 32
+.byte 115
+.byte 117
+.byte 99
+.byte 104
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 103
+.byte 97
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 97
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L215:
+.byte 32
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 32
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 32
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 101
+.byte 98
+.byte 121
+.byte 32
+.byte 118
+.byte 105
+.byte 116
+.byte 105
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.L214:
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 32
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 32
+.byte 60
+.byte 32
+.byte 49
+.byte 32
+.byte 32
+.byte 97
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 10
+.byte 0
+.align 1
+.L211:
+.byte 45
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 99
+.byte 101
+.byte 108
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 111
+.byte 98
+.byte 115
+.byte 99
+.byte 117
+.byte 114
+.byte 101
+.byte 100
+.byte 0
+.align 1
+.L206:
+.byte 42
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 47
+.byte 111
+.byte 114
+.byte 32
+.byte 47
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.L202:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 49
+.byte 47
+.byte 49
+.byte 46
+.byte 48
+.byte 48
+.byte 48
+.byte 46
+.byte 46
+.byte 49
+.byte 32
+.byte 62
+.byte 61
+.byte 32
+.byte 49
+.byte 0
+.align 1
+.L200:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 88
+.byte 47
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 88
+.byte 0
+.align 1
+.L195:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 101
+.byte 100
+.byte 32
+.byte 49
+.byte 32
+.byte 117
+.byte 108
+.byte 112
+.byte 10
+.byte 111
+.byte 114
+.byte 32
+.byte 32
+.byte 49
+.byte 47
+.byte 51
+.byte 32
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 32
+.byte 51
+.byte 47
+.byte 57
+.byte 32
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 32
+.byte 57
+.byte 47
+.byte 50
+.byte 55
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 97
+.byte 103
+.byte 114
+.byte 101
+.byte 101
+.byte 0
+.align 1
+.L191:
+.byte 42
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L189:
+.byte 42
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 49
+.byte 42
+.byte 88
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 88
+.byte 0
+.align 1
+.L186:
+.byte 10
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 42
+.byte 44
+.byte 32
+.byte 47
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 45
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L185:
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 108
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 46
+.byte 0
+.align 1
+.L180:
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 108
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 88
+.byte 61
+.byte 89
+.byte 44
+.byte 88
+.byte 43
+.byte 90
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 89
+.byte 43
+.byte 90
+.byte 33
+.byte 0
+.align 1
+.L176:
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L175:
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 98
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 32
+.byte 66
+.byte 45
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 44
+.byte 32
+.byte 105
+.byte 46
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L174:
+.byte 83
+.byte 111
+.byte 109
+.byte 101
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 10
+.byte 0
+.align 1
+.L168:
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 110
+.byte 10
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.L167:
+.byte 90
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 90
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 1
+.L166:
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 101
+.byte 120
+.byte 97
+.byte 99
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 97
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 10
+.byte 0
+.align 1
+.L165:
+.byte 66
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 117
+.byte 110
+.byte 117
+.byte 115
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 102
+.byte 0
+.align 1
+.L161:
+.byte 9
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 90
+.byte 50
+.byte 32
+.byte 45
+.byte 32
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L160:
+.byte 9
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 90
+.byte 49
+.byte 32
+.byte 45
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L159:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.L158:
+.byte 0
+.align 1
+.L151:
+.byte 84
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 102
+.byte 101
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 117
+.byte 114
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L146:
+.byte 80
+.byte 111
+.byte 115
+.byte 115
+.byte 105
+.byte 98
+.byte 108
+.byte 121
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 32
+.byte 112
+.byte 97
+.byte 114
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 1
+.L145:
+.byte 98
+.byte 121
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 101
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L144:
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 115
+.byte 121
+.byte 109
+.byte 112
+.byte 116
+.byte 111
+.byte 109
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L143:
+.byte 114
+.byte 101
+.byte 115
+.byte 112
+.byte 101
+.byte 99
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 10
+.byte 0
+.align 1
+.L142:
+.byte 68
+.byte 105
+.byte 115
+.byte 97
+.byte 103
+.byte 114
+.byte 101
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 109
+.byte 111
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 32
+.byte 88
+.byte 49
+.byte 44
+.byte 32
+.byte 89
+.byte 49
+.byte 44
+.byte 32
+.byte 90
+.byte 49
+.byte 44
+.byte 10
+.byte 0
+.align 1
+.L120:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 111
+.byte 114
+.byte 115
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 53
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 105
+.byte 103
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.L118:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L117:
+.byte 108
+.byte 111
+.byte 103
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 105
+.byte 99
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 111
+.byte 108
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 85
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L114:
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 44
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 105
+.byte 116
+.byte 115
+.byte 101
+.byte 108
+.byte 102
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 109
+.byte 105
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L113:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 10
+.byte 0
+.align 1
+.L100:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 102
+.byte 117
+.byte 122
+.byte 122
+.byte 121
+.byte 44
+.byte 88
+.byte 61
+.byte 49
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 88
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 1
+.L96:
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 60
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 70
+.byte 65
+.byte 76
+.byte 83
+.byte 69
+.byte 44
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 46
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 63
+.byte 0
+.align 8
+.L94:
+.word 0x40240000
+.word 0x0
+.align 1
+.L89:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 103
+.byte 111
+.byte 111
+.byte 100
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 50
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 48
+.byte 0
+.align 1
+.L85:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 98
+.byte 105
+.byte 103
+.byte 58
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 98
+.byte 108
+.byte 101
+.byte 109
+.byte 115
+.byte 0
+.align 1
+.L83:
+.byte 77
+.byte 89
+.byte 83
+.byte 84
+.byte 69
+.byte 82
+.byte 89
+.byte 58
+.byte 32
+.byte 114
+.byte 101
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L82:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 105
+.byte 114
+.byte 109
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 8
+.L79:
+.word 0x3f847ae1
+.word 0x47ae147b
+.align 1
+.L78:
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 98
+.byte 101
+.byte 116
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L77:
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 105
+.byte 114
+.byte 109
+.byte 115
+.byte 32
+.byte 99
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L62:
+.byte 82
+.byte 101
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 10
+.byte 32
+.byte 0
+.align 1
+.L61:
+.byte 67
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 10
+.byte 0
+.align 1
+.L55:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L46:
+.byte 83
+.byte 101
+.byte 97
+.byte 114
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L45:
+.byte 10
+.byte 0
+.align 1
+.L44:
+.byte 45
+.byte 49
+.byte 44
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 44
+.byte 32
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 44
+.byte 32
+.byte 51
+.byte 44
+.byte 32
+.byte 52
+.byte 44
+.byte 32
+.byte 53
+.byte 44
+.byte 32
+.byte 57
+.byte 44
+.byte 32
+.byte 50
+.byte 55
+.byte 44
+.byte 32
+.byte 51
+.byte 50
+.byte 32
+.byte 38
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.L39:
+.byte 53
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 52
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 51
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 56
+.byte 48
+.byte 44
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 52
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 54
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 53
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 52
+.byte 56
+.byte 0
+.align 1
+.L35:
+.byte 57
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 51
+.byte 42
+.byte 51
+.byte 44
+.byte 32
+.byte 50
+.byte 55
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 57
+.byte 42
+.byte 51
+.byte 44
+.byte 32
+.byte 51
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 56
+.byte 42
+.byte 52
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 51
+.byte 50
+.byte 45
+.byte 50
+.byte 55
+.byte 45
+.byte 52
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 1
+.L31:
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 32
+.byte 43
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 1
+.L27:
+.byte 45
+.byte 49
+.byte 43
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 43
+.byte 97
+.byte 98
+.byte 115
+.byte 40
+.byte 49
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 45
+.byte 49
+.byte 43
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 42
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 1
+.L23:
+.byte 51
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 50
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 52
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 51
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 52
+.byte 43
+.byte 50
+.byte 42
+.byte 40
+.byte 45
+.byte 50
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 52
+.byte 45
+.byte 51
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 8
+.L21:
+.word 0x3f50624d
+.word 0xd2f1a9fc
+.align 1
+.L20:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 45
+.byte 48
+.byte 46
+.byte 48
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 111
+.byte 110
+.byte 45
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.L15:
+.byte 48
+.byte 43
+.byte 48
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 32
+.byte 60
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 43
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 50
+.byte 0
+.align 1
+.L13:
+.byte 80
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 119
+.byte 32
+.byte 82
+.byte 85
+.byte 78
+.byte 78
+.byte 73
+.byte 78
+.byte 71
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 115
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 58
+.byte 10
+.byte 0
+.align 8
+.L9:
+.word 0x3ff00000
+.word 0x0
+.align 8
+.L8:
+.word 0x0
+.word 0x0
+.align 1
+.L3:
+.byte 10
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 70
+.byte 76
+.byte 79
+.byte 65
+.byte 84
+.byte 73
+.byte 78
+.byte 71
+.byte 45
+.byte 80
+.byte 79
+.byte 73
+.byte 78
+.byte 84
+.byte 32
+.byte 69
+.byte 82
+.byte 82
+.byte 79
+.byte 82
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 10
+.byte 0
diff --git a/lcc/sparc/solaris/tst/sort.1bk b/lcc/sparc/solaris/tst/sort.1bk
index 380d529..75e1f0d 100755
--- a/lcc/sparc/solaris/tst/sort.1bk
+++ b/lcc/sparc/solaris/tst/sort.1bk
@@ -1,20 +1,20 @@
-exchange(1,9)
-exchange(3,7)
-exchange(5,6)
-exchange(0,5)
-exchange(0,3)
-exchange(0,0)
-exchange(1,2)
-exchange(6,6)
-exchange(8,9)
-exchange(7,8)
--51
--1
-0
-1
-3
-10
-18
-32
-567
-789
+exchange(1,9)
+exchange(3,7)
+exchange(5,6)
+exchange(0,5)
+exchange(0,3)
+exchange(0,0)
+exchange(1,2)
+exchange(6,6)
+exchange(8,9)
+exchange(7,8)
+-51
+-1
+0
+1
+3
+10
+18
+32
+567
+789
diff --git a/lcc/sparc/solaris/tst/sort.2bk b/lcc/sparc/solaris/tst/sort.2bk
index 27488a1..81e6f38 100755
--- a/lcc/sparc/solaris/tst/sort.2bk
+++ b/lcc/sparc/solaris/tst/sort.2bk
@@ -1,5 +1,5 @@
-tst/sort.c:23: warning: missing return value
-tst/sort.c:30: warning: missing return value
-tst/sort.c:37: warning: missing return value
-tst/sort.c:41: warning: missing return value
-tst/sort.c:65: warning: missing return value
+tst/sort.c:23: warning: missing return value
+tst/sort.c:30: warning: missing return value
+tst/sort.c:37: warning: missing return value
+tst/sort.c:41: warning: missing return value
+tst/sort.c:65: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/sort.sbk b/lcc/sparc/solaris/tst/sort.sbk
index 8f67ef5..709dd46 100755
--- a/lcc/sparc/solaris/tst/sort.sbk
+++ b/lcc/sparc/solaris/tst/sort.sbk
@@ -1,202 +1,202 @@
-.section ".data"
-.global in
-.type in,#object
-.align 4
-in:
-.word 0xa
-.word 0x20
-.word 0xffffffff
-.word 0x237
-.word 0x3
-.word 0x12
-.word 0x1
-.word 0xffffffcd
-.word 0x315
-.word 0x0
-.size in,40
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-96,%sp
-set in,%o0
-set 10,%o1
-call sort; nop
-mov %g0,%i5
-ba .L5; nop
-.L2:
-sll %i5,2,%i4
-set in,%i3
-ld [%i4+%i3],%o0
-call putd; nop
-set 10,%o0
-call putchar; nop
-.L3:
-add %i5,1,%i5
-.L5:
-mov %i5,%i4
-set 10,%i3
-cmp %i4,%i3; blu .L2; nop
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.global putd
-.align 4
-putd:
-save %sp,-96,%sp
-cmp %i0,0; bge .L7; nop
-set 45,%o0
-call putchar; nop
-neg %i0,%i0
-.L7:
-sra %i0,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i0,10,%i5
-cmp %i5,0; be .L9; nop
-sra %i0,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i0,10,%o0
-call putd; nop
-.L9:
-sra %i0,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i0,10,%g1
-; smul %g1,10,%g1; sub %i0,%g1,%i5
-add %i5,48,%o0
-call putchar; nop
-mov %g0,%i0
-.L6:
-ret; restore
-.type putd,#function
-.size putd,.-putd
-.global sort
-.align 4
-sort:
-save %sp,-96,%sp
-set xx,%i5
-st %i0,[%i5]
-mov %i0,%o0
-mov %g0,%o1
-sub %i1,1,%i5
-mov %i5,%i1
-mov %i5,%o2
-call quick; nop
-mov %g0,%i0
-.L11:
-ret; restore
-.type sort,#function
-.size sort,.-sort
-.global quick
-.align 4
-quick:
-save %sp,-96,%sp
-cmp %i1,%i2; bl .L13; nop
-ba .L12; nop
-.L13:
-mov %i0,%o0
-mov %i1,%o1
-mov %i2,%o2
-call partition; nop
-mov %o0,%i5
-mov %i0,%o0
-mov %i1,%o1
-sub %i5,1,%o2
-call quick; nop
-mov %i0,%o0
-add %i5,1,%o1
-mov %i2,%o2
-call quick; nop
-mov %g0,%i0
-.L12:
-ret; restore
-.type quick,#function
-.size quick,.-quick
-.global partition
-.align 4
-partition:
-save %sp,-96,%sp
-add %i2,1,%i2
-mov %i1,%i4
-sll %i4,2,%i3
-ld [%i3+%i0],%i5
-ba .L17; nop
-.L16:
-add %i1,1,%i1
-ba .L20; nop
-.L19:
-add %i1,1,%i1
-.L20:
-sll %i1,2,%i3
-ld [%i3+%i0],%i3
-cmp %i3,%i5; bl .L19; nop
-sub %i2,1,%i2
-ba .L23; nop
-.L22:
-sub %i2,1,%i2
-.L23:
-sll %i2,2,%i3
-ld [%i3+%i0],%i3
-cmp %i3,%i5; bg .L22; nop
-cmp %i1,%i2; bge .L25; nop
-sll %i1,2,%i3
-add %i3,%i0,%o0
-sll %i2,2,%i3
-add %i3,%i0,%o1
-call exchange; nop
-.L25:
-.L17:
-cmp %i1,%i2; bl .L16; nop
-sll %i4,2,%i3
-add %i3,%i0,%o0
-sll %i2,2,%i3
-add %i3,%i0,%o1
-call exchange; nop
-mov %i2,%i0
-.L15:
-ret; restore
-.type partition,#function
-.size partition,.-partition
-.global exchange
-.align 4
-exchange:
-save %sp,-96,%sp
-set .L28,%o0
-set xx,%i4
-ld [%i4],%i4
-mov %i0,%i3
-sub %i3,%i4,%i3
-sra %i3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i3,4,%o1
-mov %i1,%i3
-sub %i3,%i4,%i4
-sra %i4,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i4,4,%o2
-call printf; nop
-ld [%i0],%i5
-ld [%i1],%i4
-st %i4,[%i0]
-st %i5,[%i1]
-mov %g0,%i0
-.L27:
-ret; restore
-.type exchange,#function
-.size exchange,.-exchange
-.section ".bss"
-.global xx
-.type xx,#object
-.size xx,4
-.common xx,4,4
-.section ".rodata"
-.align 1
-.L28:
-.byte 101
-.byte 120
-.byte 99
-.byte 104
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 40
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 41
-.byte 10
-.byte 0
+.section ".data"
+.global in
+.type in,#object
+.align 4
+in:
+.word 0xa
+.word 0x20
+.word 0xffffffff
+.word 0x237
+.word 0x3
+.word 0x12
+.word 0x1
+.word 0xffffffcd
+.word 0x315
+.word 0x0
+.size in,40
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-96,%sp
+set in,%o0
+set 10,%o1
+call sort; nop
+mov %g0,%i5
+ba .L5; nop
+.L2:
+sll %i5,2,%i4
+set in,%i3
+ld [%i4+%i3],%o0
+call putd; nop
+set 10,%o0
+call putchar; nop
+.L3:
+add %i5,1,%i5
+.L5:
+mov %i5,%i4
+set 10,%i3
+cmp %i4,%i3; blu .L2; nop
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.global putd
+.align 4
+putd:
+save %sp,-96,%sp
+cmp %i0,0; bge .L7; nop
+set 45,%o0
+call putchar; nop
+neg %i0,%i0
+.L7:
+sra %i0,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i0,10,%i5
+cmp %i5,0; be .L9; nop
+sra %i0,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i0,10,%o0
+call putd; nop
+.L9:
+sra %i0,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i0,10,%g1
+; smul %g1,10,%g1; sub %i0,%g1,%i5
+add %i5,48,%o0
+call putchar; nop
+mov %g0,%i0
+.L6:
+ret; restore
+.type putd,#function
+.size putd,.-putd
+.global sort
+.align 4
+sort:
+save %sp,-96,%sp
+set xx,%i5
+st %i0,[%i5]
+mov %i0,%o0
+mov %g0,%o1
+sub %i1,1,%i5
+mov %i5,%i1
+mov %i5,%o2
+call quick; nop
+mov %g0,%i0
+.L11:
+ret; restore
+.type sort,#function
+.size sort,.-sort
+.global quick
+.align 4
+quick:
+save %sp,-96,%sp
+cmp %i1,%i2; bl .L13; nop
+ba .L12; nop
+.L13:
+mov %i0,%o0
+mov %i1,%o1
+mov %i2,%o2
+call partition; nop
+mov %o0,%i5
+mov %i0,%o0
+mov %i1,%o1
+sub %i5,1,%o2
+call quick; nop
+mov %i0,%o0
+add %i5,1,%o1
+mov %i2,%o2
+call quick; nop
+mov %g0,%i0
+.L12:
+ret; restore
+.type quick,#function
+.size quick,.-quick
+.global partition
+.align 4
+partition:
+save %sp,-96,%sp
+add %i2,1,%i2
+mov %i1,%i4
+sll %i4,2,%i3
+ld [%i3+%i0],%i5
+ba .L17; nop
+.L16:
+add %i1,1,%i1
+ba .L20; nop
+.L19:
+add %i1,1,%i1
+.L20:
+sll %i1,2,%i3
+ld [%i3+%i0],%i3
+cmp %i3,%i5; bl .L19; nop
+sub %i2,1,%i2
+ba .L23; nop
+.L22:
+sub %i2,1,%i2
+.L23:
+sll %i2,2,%i3
+ld [%i3+%i0],%i3
+cmp %i3,%i5; bg .L22; nop
+cmp %i1,%i2; bge .L25; nop
+sll %i1,2,%i3
+add %i3,%i0,%o0
+sll %i2,2,%i3
+add %i3,%i0,%o1
+call exchange; nop
+.L25:
+.L17:
+cmp %i1,%i2; bl .L16; nop
+sll %i4,2,%i3
+add %i3,%i0,%o0
+sll %i2,2,%i3
+add %i3,%i0,%o1
+call exchange; nop
+mov %i2,%i0
+.L15:
+ret; restore
+.type partition,#function
+.size partition,.-partition
+.global exchange
+.align 4
+exchange:
+save %sp,-96,%sp
+set .L28,%o0
+set xx,%i4
+ld [%i4],%i4
+mov %i0,%i3
+sub %i3,%i4,%i3
+sra %i3,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i3,4,%o1
+mov %i1,%i3
+sub %i3,%i4,%i4
+sra %i4,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %i4,4,%o2
+call printf; nop
+ld [%i0],%i5
+ld [%i1],%i4
+st %i4,[%i0]
+st %i5,[%i1]
+mov %g0,%i0
+.L27:
+ret; restore
+.type exchange,#function
+.size exchange,.-exchange
+.section ".bss"
+.global xx
+.type xx,#object
+.size xx,4
+.common xx,4,4
+.section ".rodata"
+.align 1
+.L28:
+.byte 101
+.byte 120
+.byte 99
+.byte 104
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 40
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 41
+.byte 10
+.byte 0
diff --git a/lcc/sparc/solaris/tst/spill.2bk b/lcc/sparc/solaris/tst/spill.2bk
index f7e3521..afd73e2 100755
--- a/lcc/sparc/solaris/tst/spill.2bk
+++ b/lcc/sparc/solaris/tst/spill.2bk
@@ -1,6 +1,6 @@
-tst/spill.c:1: warning: missing return value
-tst/spill.c:3: warning: missing return value
-tst/spill.c:5: warning: missing return value
-tst/spill.c:7: warning: missing return value
-tst/spill.c:9: warning: missing return value
-tst/spill.c:17: warning: missing return value
+tst/spill.c:1: warning: missing return value
+tst/spill.c:3: warning: missing return value
+tst/spill.c:5: warning: missing return value
+tst/spill.c:7: warning: missing return value
+tst/spill.c:9: warning: missing return value
+tst/spill.c:17: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/spill.sbk b/lcc/sparc/solaris/tst/spill.sbk
index f30c800..8b3ff96 100755
--- a/lcc/sparc/solaris/tst/spill.sbk
+++ b/lcc/sparc/solaris/tst/spill.sbk
@@ -1,207 +1,207 @@
-.global main
-.section ".text"
-.align 4
-main:
-mov %g0,%o0
-.L1:
-retl; nop
-.type main,#function
-.size main,.-main
-.global f
-.align 4
-f:
-save %sp,-96,%sp
-call f; nop
-mov %o0,%i5
-call f; nop
-add %i5,%o0,%i0
-mov %g0,%i0
-.L2:
-ret; restore
-.type f,#function
-.size f,.-f
-.global f2
-.align 4
-f2:
-save %sp,-96,%sp
-call f; nop
-mov %o0,%i4
-cmp %i0,0; be .L5; nop
-call f; nop
-mov %o0,%i3
-mov %i3,%i5
-ba .L6; nop
-.L5:
-set 1,%i5
-.L6:
-add %i4,%i5,%i0
-mov %g0,%i0
-.L3:
-ret; restore
-.type f2,#function
-.size f2,.-f2
-.global f3
-.align 4
-f3:
-save %sp,-104,%sp
-mov %g0,%i5
-mov %g0,%i4
-mov %g0,%i3
-mov %g0,%i2
-mov %g0,%l7
-mov %g0,%l6
-mov %g0,%l5
-mov %g0,%l4
-st %g0,[%fp+-4]
-st %g0,[%fp+-8]
-mov %i1,%l3
-add %l3,4,%i1
-cmp %i0,0; be .L9; nop
-call f; nop
-mov %o0,%l2
-st %l2,[%fp+-12]
-ba .L10; nop
-.L9:
-st %g0,[%fp+-12]
-.L10:
-ld [%fp+-12],%l2
-st %l2,[%l3]
-mov %g0,%i0
-.L7:
-ret; restore
-.type f3,#function
-.size f3,.-f3
-.global f4
-.align 4
-f4:
-save %sp,-96,%sp
-mov %g0,%i5
-mov %g0,%i4
-mov %g0,%i3
-mov %g0,%i2
-mov %g0,%i1
-mov %g0,%i0
-set i,%l6
-ld [%l6],%l6
-sll %l6,3,%l5
-set a,%l4
-add %l5,%l4,%l4
-ld2 [%l4],%f30
-set b,%l4
-add %l5,%l4,%l5
-ld2 [%l5],%f28
-set .L15,%l5
-ld2 [%l5],%f26
-faddd %f30,%f28,%f24
-fcmped %f24,%f26; nop; fbue .L13; nop
-cmp %l6,0; be .L13; nop
-fsubd %f30,%f28,%f30
-fcmped %f30,%f26; nop; fbue .L13; nop
-set 1,%l7
-ba .L14; nop
-.L13:
-mov %g0,%l7
-.L14:
-set i,%l6
-st %l7,[%l6]
-mov %g0,%i0
-.L11:
-ret; restore
-.type f4,#function
-.size f4,.-f4
-.global f5
-.align 4
-f5:
-save %sp,-96,%sp
-set x,%i5
-set k,%i4
-ld [%i4],%i4
-set m,%i3
-ld [%i3],%i3
-set A,%i2
-ld [%i2],%i2
-smul %i3,%i4,%i1
-sll %i1,3,%i1
-add %i1,%i2,%i1
-set j,%i0
-ld [%i0],%i0
-smul %i3,%i0,%i3
-sll %i3,3,%i3
-add %i3,%i2,%i3
-set n,%i2
-ld [%i2],%i2
-set B,%l7
-ld [%l7],%l7
-smul %i2,%i4,%i4
-sll %i4,3,%i4
-add %i4,%l7,%i4
-smul %i2,%i0,%i2
-sll %i2,3,%i2
-add %i2,%l7,%i2
-ld2 [%i1],%f30
-ld2 [%i3],%f28
-fmuld %f30,%f28,%f30
-ld2 [%i4],%f28
-ld2 [%i2],%f26
-fmuld %f28,%f26,%f28
-faddd %f30,%f28,%f30
-st2 %f30,[%i5]
-ld2 [%i1],%f30
-ld2 [%i2],%f28
-fmuld %f30,%f28,%f30
-ld2 [%i4],%f28
-ld2 [%i3],%f26
-fmuld %f28,%f26,%f28
-fsubd %f30,%f28,%f30
-st2 %f30,[%i5]
-mov %g0,%i0
-.L16:
-ret; restore
-.type f5,#function
-.size f5,.-f5
-.section ".bss"
-.global x
-.type x,#object
-.size x,8
-.common x,8,8
-.global B
-.type B,#object
-.size B,4
-.common B,4,4
-.global A
-.type A,#object
-.size A,4
-.common A,4,4
-.global n
-.type n,#object
-.size n,4
-.common n,4,4
-.global m
-.type m,#object
-.size m,4
-.common m,4,4
-.global k
-.type k,#object
-.size k,4
-.common k,4,4
-.global j
-.type j,#object
-.size j,4
-.common j,4,4
-.global i
-.type i,#object
-.size i,4
-.common i,4,4
-.global b
-.type b,#object
-.size b,80
-.common b,80,8
-.global a
-.type a,#object
-.size a,80
-.common a,80,8
-.section ".rodata"
-.align 8
-.L15:
-.word 0x0
-.word 0x0
+.global main
+.section ".text"
+.align 4
+main:
+mov %g0,%o0
+.L1:
+retl; nop
+.type main,#function
+.size main,.-main
+.global f
+.align 4
+f:
+save %sp,-96,%sp
+call f; nop
+mov %o0,%i5
+call f; nop
+add %i5,%o0,%i0
+mov %g0,%i0
+.L2:
+ret; restore
+.type f,#function
+.size f,.-f
+.global f2
+.align 4
+f2:
+save %sp,-96,%sp
+call f; nop
+mov %o0,%i4
+cmp %i0,0; be .L5; nop
+call f; nop
+mov %o0,%i3
+mov %i3,%i5
+ba .L6; nop
+.L5:
+set 1,%i5
+.L6:
+add %i4,%i5,%i0
+mov %g0,%i0
+.L3:
+ret; restore
+.type f2,#function
+.size f2,.-f2
+.global f3
+.align 4
+f3:
+save %sp,-104,%sp
+mov %g0,%i5
+mov %g0,%i4
+mov %g0,%i3
+mov %g0,%i2
+mov %g0,%l7
+mov %g0,%l6
+mov %g0,%l5
+mov %g0,%l4
+st %g0,[%fp+-4]
+st %g0,[%fp+-8]
+mov %i1,%l3
+add %l3,4,%i1
+cmp %i0,0; be .L9; nop
+call f; nop
+mov %o0,%l2
+st %l2,[%fp+-12]
+ba .L10; nop
+.L9:
+st %g0,[%fp+-12]
+.L10:
+ld [%fp+-12],%l2
+st %l2,[%l3]
+mov %g0,%i0
+.L7:
+ret; restore
+.type f3,#function
+.size f3,.-f3
+.global f4
+.align 4
+f4:
+save %sp,-96,%sp
+mov %g0,%i5
+mov %g0,%i4
+mov %g0,%i3
+mov %g0,%i2
+mov %g0,%i1
+mov %g0,%i0
+set i,%l6
+ld [%l6],%l6
+sll %l6,3,%l5
+set a,%l4
+add %l5,%l4,%l4
+ld2 [%l4],%f30
+set b,%l4
+add %l5,%l4,%l5
+ld2 [%l5],%f28
+set .L15,%l5
+ld2 [%l5],%f26
+faddd %f30,%f28,%f24
+fcmped %f24,%f26; nop; fbue .L13; nop
+cmp %l6,0; be .L13; nop
+fsubd %f30,%f28,%f30
+fcmped %f30,%f26; nop; fbue .L13; nop
+set 1,%l7
+ba .L14; nop
+.L13:
+mov %g0,%l7
+.L14:
+set i,%l6
+st %l7,[%l6]
+mov %g0,%i0
+.L11:
+ret; restore
+.type f4,#function
+.size f4,.-f4
+.global f5
+.align 4
+f5:
+save %sp,-96,%sp
+set x,%i5
+set k,%i4
+ld [%i4],%i4
+set m,%i3
+ld [%i3],%i3
+set A,%i2
+ld [%i2],%i2
+smul %i3,%i4,%i1
+sll %i1,3,%i1
+add %i1,%i2,%i1
+set j,%i0
+ld [%i0],%i0
+smul %i3,%i0,%i3
+sll %i3,3,%i3
+add %i3,%i2,%i3
+set n,%i2
+ld [%i2],%i2
+set B,%l7
+ld [%l7],%l7
+smul %i2,%i4,%i4
+sll %i4,3,%i4
+add %i4,%l7,%i4
+smul %i2,%i0,%i2
+sll %i2,3,%i2
+add %i2,%l7,%i2
+ld2 [%i1],%f30
+ld2 [%i3],%f28
+fmuld %f30,%f28,%f30
+ld2 [%i4],%f28
+ld2 [%i2],%f26
+fmuld %f28,%f26,%f28
+faddd %f30,%f28,%f30
+st2 %f30,[%i5]
+ld2 [%i1],%f30
+ld2 [%i2],%f28
+fmuld %f30,%f28,%f30
+ld2 [%i4],%f28
+ld2 [%i3],%f26
+fmuld %f28,%f26,%f28
+fsubd %f30,%f28,%f30
+st2 %f30,[%i5]
+mov %g0,%i0
+.L16:
+ret; restore
+.type f5,#function
+.size f5,.-f5
+.section ".bss"
+.global x
+.type x,#object
+.size x,8
+.common x,8,8
+.global B
+.type B,#object
+.size B,4
+.common B,4,4
+.global A
+.type A,#object
+.size A,4
+.common A,4,4
+.global n
+.type n,#object
+.size n,4
+.common n,4,4
+.global m
+.type m,#object
+.size m,4
+.common m,4,4
+.global k
+.type k,#object
+.size k,4
+.common k,4,4
+.global j
+.type j,#object
+.size j,4
+.common j,4,4
+.global i
+.type i,#object
+.size i,4
+.common i,4,4
+.global b
+.type b,#object
+.size b,80
+.common b,80,8
+.global a
+.type a,#object
+.size a,80
+.common a,80,8
+.section ".rodata"
+.align 8
+.L15:
+.word 0x0
+.word 0x0
diff --git a/lcc/sparc/solaris/tst/stdarg.1bk b/lcc/sparc/solaris/tst/stdarg.1bk
index 097aef7..e973176 100755
--- a/lcc/sparc/solaris/tst/stdarg.1bk
+++ b/lcc/sparc/solaris/tst/stdarg.1bk
@@ -1,6 +1,6 @@
-test 1
-test 2
-test 3
-test 4
-test 5.000000
-{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
+test 1
+test 2
+test 3
+test 4
+test 5.000000
+{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
diff --git a/lcc/sparc/solaris/tst/stdarg.2bk b/lcc/sparc/solaris/tst/stdarg.2bk
index a832cf9..2b3f417 100755
--- a/lcc/sparc/solaris/tst/stdarg.2bk
+++ b/lcc/sparc/solaris/tst/stdarg.2bk
@@ -1 +1 @@
-tst/stdarg.c:51: warning: missing return value
+tst/stdarg.c:51: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/stdarg.sbk b/lcc/sparc/solaris/tst/stdarg.sbk
index 1ceae3f..2cbe140 100755
--- a/lcc/sparc/solaris/tst/stdarg.sbk
+++ b/lcc/sparc/solaris/tst/stdarg.sbk
@@ -1,376 +1,376 @@
-.section ".data"
-.global x
-.type x,#object
-.size x,16
-.align 4
-x:
-.word 0x1
-.word 0x2
-.word 0x3
-.word 0x4
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-192,%sp
-set .L2,%o0
-call print; nop
-set .L3,%o0
-set .L4,%o1
-call print; nop
-set .L5,%o0
-set 3,%o1
-set 10,%o2
-call print; nop
-set .L6,%o0
-set .L7,%o1
-set .L8,%o2
-set 4,%o3
-set 10,%o4
-call print; nop
-set .L9,%o0
-set .L7,%o1
-set .L8,%o2
-set .L10,%i5
-ld2 [%i5],%f30
-st %f30,[%sp+4*3+68]
-st %f31,[%sp+4*4+68]
-ld [%sp+4*3+68],%o3
-ld [%sp+4*4+68],%o4
-set 10,%o5
-call print; nop
-set .L11,%o0
-set x,%i5
-add -16,%fp,%i4
-ld [%r29+0],%r1
-ld [%r29+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-ld [%r29+8],%r1
-ld [%r29+12],%r2
-st %r1,[%r28+8]
-st %r2,[%r28+12]
-add -16,%fp,%o1
-add -32,%fp,%i4
-ld [%r29+0],%r1
-ld [%r29+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-ld [%r29+8],%r1
-ld [%r29+12],%r2
-st %r1,[%r28+8]
-st %r2,[%r28+12]
-add -32,%fp,%o2
-add -48,%fp,%i4
-ld [%r29+0],%r1
-ld [%r29+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-ld [%r29+8],%r1
-ld [%r29+12],%r2
-st %r1,[%r28+8]
-st %r2,[%r28+12]
-add -48,%fp,%o3
-add -64,%fp,%i4
-ld [%r29+0],%r1
-ld [%r29+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-ld [%r29+8],%r1
-ld [%r29+12],%r2
-st %r1,[%r28+8]
-st %r2,[%r28+12]
-add -64,%fp,%o4
-add -80,%fp,%i4
-ld [%r29+0],%r1
-ld [%r29+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-ld [%r29+8],%r1
-ld [%r29+12],%r2
-st %r1,[%r28+8]
-st %r2,[%r28+12]
-add -80,%fp,%o5
-add -96,%fp,%i4
-ld [%r29+0],%r1
-ld [%r29+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-ld [%r29+8],%r1
-ld [%r29+12],%r2
-st %r1,[%r28+8]
-st %r2,[%r28+12]
-add -96,%fp,%i5
-st %i5,[%sp+4*6+68]
-call print; nop
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.global print
-.align 4
-print:
-save %sp,-112,%sp
-st %i1,[%fp+72]
-st %i2,[%fp+76]
-st %i3,[%fp+80]
-st %i4,[%fp+84]
-st %i5,[%fp+88]
-st %i0,[%fp+68]
-add 72,%fp,%i5
-ba .L18; nop
-.L15:
-ld [%fp+68],%i4
-ldsb [%i4],%i4
-cmp %i4,37; bne .L19; nop
-ld [%fp+68],%i3
-add %i3,1,%i3
-st %i3,[%fp+68]
-ldsb [%i3],%i4
-cmp %i4,115; be .L35; nop
-cmp %i4,115; bg .L40; nop
-.L39:
-cmp %i4,98; bl .L21; nop
-cmp %i4,102; bg .L21; nop
-sll %i4,2,%i3
-set .L41-392,%i2
-ld [%i3+%i2],%i3
-jmp %i3; nop
-.section ".rodata"
-.align 4
-.L41:
-.word .L24
-.word .L29
-.word .L31
-.word .L21
-.word .L37
-.section ".text"
-.L40:
-cmp %i4,119; be .L33; nop
-ba .L21; nop
-.L24:
-add %i5,4,%i3
-mov %i3,%i5
-add -16,%fp,%i2
-ld [%i3+-4],%i3
-ld [%r27+0],%r1
-ld [%r27+4],%r2
-st %r1,[%r26+0]
-st %r2,[%r26+4]
-ld [%r27+8],%r1
-ld [%r27+12],%r2
-st %r1,[%r26+8]
-st %r2,[%r26+12]
-set .L25,%o0
-ld [%fp+-16],%o1
-ld [%fp+-12],%o2
-ld [%fp+-8],%o3
-ld [%fp+-4],%o4
-call printf; nop
-ba .L20; nop
-.L29:
-set .L30,%o0
-add %i5,4,%i3
-mov %i3,%i5
-ldsb [%i3+-1],%o1
-call printf; nop
-ba .L20; nop
-.L31:
-set .L32,%o0
-set 4,%i3
-add %i5,%i3,%i3
-mov %i3,%i5
-ld [%i3+-4],%o1
-call printf; nop
-ba .L20; nop
-.L33:
-set .L34,%o0
-add %i5,4,%i3
-mov %i3,%i5
-ldsh [%i3+-2],%o1
-call printf; nop
-ba .L20; nop
-.L35:
-set .L36,%o0
-set 4,%i3
-add %i5,%i3,%i3
-mov %i3,%i5
-ld [%i3+-4],%o1
-call printf; nop
-ba .L20; nop
-.L37:
-set .L38,%o0
-set 8,%i3
-add %i5,%i3,%i3
-mov %i3,%i5
-ld2 [%i3+-8],%f30
-st %f30,[%sp+4*1+68]
-st %f31,[%sp+4*2+68]
-ld [%sp+4*1+68],%o1
-ld [%sp+4*2+68],%o2
-call printf; nop
-ba .L20; nop
-.L21:
-set .L30,%o0
-ld [%fp+68],%i3
-ldsb [%i3],%o1
-call printf; nop
-ba .L20; nop
-.L19:
-set .L30,%o0
-ld [%fp+68],%i3
-ldsb [%i3],%o1
-call printf; nop
-.L20:
-.L16:
-ld [%fp+68],%i3
-add %i3,1,%i3
-st %i3,[%fp+68]
-.L18:
-ld [%fp+68],%i3
-ldsb [%i3],%i3
-cmp %i3,0; bne .L15; nop
-mov %g0,%i0
-.L12:
-ret; restore
-.type print,#function
-.size print,.-print
-.section ".rodata"
-.align 1
-.L38:
-.byte 37
-.byte 102
-.byte 0
-.align 1
-.L36:
-.byte 37
-.byte 115
-.byte 0
-.align 1
-.L34:
-.byte 37
-.byte 120
-.byte 0
-.align 1
-.L32:
-.byte 37
-.byte 100
-.byte 0
-.align 1
-.L30:
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.L25:
-.byte 123
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 125
-.byte 0
-.align 1
-.L11:
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 10
-.byte 0
-.align 8
-.L10:
-.word 0x40140000
-.word 0x0
-.align 1
-.L9:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 32
-.byte 37
-.byte 102
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.L8:
-.byte 115
-.byte 116
-.byte 0
-.align 1
-.L7:
-.byte 116
-.byte 101
-.byte 0
-.align 1
-.L6:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 32
-.byte 37
-.byte 119
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.L5:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 100
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.L4:
-.byte 50
-.byte 0
-.align 1
-.L3:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L2:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 49
-.byte 10
-.byte 0
+.section ".data"
+.global x
+.type x,#object
+.size x,16
+.align 4
+x:
+.word 0x1
+.word 0x2
+.word 0x3
+.word 0x4
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-192,%sp
+set .L2,%o0
+call print; nop
+set .L3,%o0
+set .L4,%o1
+call print; nop
+set .L5,%o0
+set 3,%o1
+set 10,%o2
+call print; nop
+set .L6,%o0
+set .L7,%o1
+set .L8,%o2
+set 4,%o3
+set 10,%o4
+call print; nop
+set .L9,%o0
+set .L7,%o1
+set .L8,%o2
+set .L10,%i5
+ld2 [%i5],%f30
+st %f30,[%sp+4*3+68]
+st %f31,[%sp+4*4+68]
+ld [%sp+4*3+68],%o3
+ld [%sp+4*4+68],%o4
+set 10,%o5
+call print; nop
+set .L11,%o0
+set x,%i5
+add -16,%fp,%i4
+ld [%r29+0],%r1
+ld [%r29+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+ld [%r29+8],%r1
+ld [%r29+12],%r2
+st %r1,[%r28+8]
+st %r2,[%r28+12]
+add -16,%fp,%o1
+add -32,%fp,%i4
+ld [%r29+0],%r1
+ld [%r29+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+ld [%r29+8],%r1
+ld [%r29+12],%r2
+st %r1,[%r28+8]
+st %r2,[%r28+12]
+add -32,%fp,%o2
+add -48,%fp,%i4
+ld [%r29+0],%r1
+ld [%r29+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+ld [%r29+8],%r1
+ld [%r29+12],%r2
+st %r1,[%r28+8]
+st %r2,[%r28+12]
+add -48,%fp,%o3
+add -64,%fp,%i4
+ld [%r29+0],%r1
+ld [%r29+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+ld [%r29+8],%r1
+ld [%r29+12],%r2
+st %r1,[%r28+8]
+st %r2,[%r28+12]
+add -64,%fp,%o4
+add -80,%fp,%i4
+ld [%r29+0],%r1
+ld [%r29+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+ld [%r29+8],%r1
+ld [%r29+12],%r2
+st %r1,[%r28+8]
+st %r2,[%r28+12]
+add -80,%fp,%o5
+add -96,%fp,%i4
+ld [%r29+0],%r1
+ld [%r29+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+ld [%r29+8],%r1
+ld [%r29+12],%r2
+st %r1,[%r28+8]
+st %r2,[%r28+12]
+add -96,%fp,%i5
+st %i5,[%sp+4*6+68]
+call print; nop
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.global print
+.align 4
+print:
+save %sp,-112,%sp
+st %i1,[%fp+72]
+st %i2,[%fp+76]
+st %i3,[%fp+80]
+st %i4,[%fp+84]
+st %i5,[%fp+88]
+st %i0,[%fp+68]
+add 72,%fp,%i5
+ba .L18; nop
+.L15:
+ld [%fp+68],%i4
+ldsb [%i4],%i4
+cmp %i4,37; bne .L19; nop
+ld [%fp+68],%i3
+add %i3,1,%i3
+st %i3,[%fp+68]
+ldsb [%i3],%i4
+cmp %i4,115; be .L35; nop
+cmp %i4,115; bg .L40; nop
+.L39:
+cmp %i4,98; bl .L21; nop
+cmp %i4,102; bg .L21; nop
+sll %i4,2,%i3
+set .L41-392,%i2
+ld [%i3+%i2],%i3
+jmp %i3; nop
+.section ".rodata"
+.align 4
+.L41:
+.word .L24
+.word .L29
+.word .L31
+.word .L21
+.word .L37
+.section ".text"
+.L40:
+cmp %i4,119; be .L33; nop
+ba .L21; nop
+.L24:
+add %i5,4,%i3
+mov %i3,%i5
+add -16,%fp,%i2
+ld [%i3+-4],%i3
+ld [%r27+0],%r1
+ld [%r27+4],%r2
+st %r1,[%r26+0]
+st %r2,[%r26+4]
+ld [%r27+8],%r1
+ld [%r27+12],%r2
+st %r1,[%r26+8]
+st %r2,[%r26+12]
+set .L25,%o0
+ld [%fp+-16],%o1
+ld [%fp+-12],%o2
+ld [%fp+-8],%o3
+ld [%fp+-4],%o4
+call printf; nop
+ba .L20; nop
+.L29:
+set .L30,%o0
+add %i5,4,%i3
+mov %i3,%i5
+ldsb [%i3+-1],%o1
+call printf; nop
+ba .L20; nop
+.L31:
+set .L32,%o0
+set 4,%i3
+add %i5,%i3,%i3
+mov %i3,%i5
+ld [%i3+-4],%o1
+call printf; nop
+ba .L20; nop
+.L33:
+set .L34,%o0
+add %i5,4,%i3
+mov %i3,%i5
+ldsh [%i3+-2],%o1
+call printf; nop
+ba .L20; nop
+.L35:
+set .L36,%o0
+set 4,%i3
+add %i5,%i3,%i3
+mov %i3,%i5
+ld [%i3+-4],%o1
+call printf; nop
+ba .L20; nop
+.L37:
+set .L38,%o0
+set 8,%i3
+add %i5,%i3,%i3
+mov %i3,%i5
+ld2 [%i3+-8],%f30
+st %f30,[%sp+4*1+68]
+st %f31,[%sp+4*2+68]
+ld [%sp+4*1+68],%o1
+ld [%sp+4*2+68],%o2
+call printf; nop
+ba .L20; nop
+.L21:
+set .L30,%o0
+ld [%fp+68],%i3
+ldsb [%i3],%o1
+call printf; nop
+ba .L20; nop
+.L19:
+set .L30,%o0
+ld [%fp+68],%i3
+ldsb [%i3],%o1
+call printf; nop
+.L20:
+.L16:
+ld [%fp+68],%i3
+add %i3,1,%i3
+st %i3,[%fp+68]
+.L18:
+ld [%fp+68],%i3
+ldsb [%i3],%i3
+cmp %i3,0; bne .L15; nop
+mov %g0,%i0
+.L12:
+ret; restore
+.type print,#function
+.size print,.-print
+.section ".rodata"
+.align 1
+.L38:
+.byte 37
+.byte 102
+.byte 0
+.align 1
+.L36:
+.byte 37
+.byte 115
+.byte 0
+.align 1
+.L34:
+.byte 37
+.byte 120
+.byte 0
+.align 1
+.L32:
+.byte 37
+.byte 100
+.byte 0
+.align 1
+.L30:
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.L25:
+.byte 123
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 125
+.byte 0
+.align 1
+.L11:
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 10
+.byte 0
+.align 8
+.L10:
+.word 0x40140000
+.word 0x0
+.align 1
+.L9:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 32
+.byte 37
+.byte 102
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.L8:
+.byte 115
+.byte 116
+.byte 0
+.align 1
+.L7:
+.byte 116
+.byte 101
+.byte 0
+.align 1
+.L6:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 32
+.byte 37
+.byte 119
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.L5:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 100
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.L4:
+.byte 50
+.byte 0
+.align 1
+.L3:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L2:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 49
+.byte 10
+.byte 0
diff --git a/lcc/sparc/solaris/tst/struct.1bk b/lcc/sparc/solaris/tst/struct.1bk
index 2358779..807f3da 100755
--- a/lcc/sparc/solaris/tst/struct.1bk
+++ b/lcc/sparc/solaris/tst/struct.1bk
@@ -1,5 +1,5 @@
-(-1,-1) is not within [10,10; 310,310]
-(1,1) is not within [10,10; 310,310]
-(20,300) is within [10,10; 310,310]
-(500,400) is not within [10,10; 310,310]
-ab
+(-1,-1) is not within [10,10; 310,310]
+(1,1) is not within [10,10; 310,310]
+(20,300) is within [10,10; 310,310]
+(500,400) is not within [10,10; 310,310]
+ab
diff --git a/lcc/sparc/solaris/tst/struct.2bk b/lcc/sparc/solaris/tst/struct.2bk
index 8a01bb1..cb0fbd0 100755
--- a/lcc/sparc/solaris/tst/struct.2bk
+++ b/lcc/sparc/solaris/tst/struct.2bk
@@ -1,2 +1,2 @@
-tst/struct.c:49: warning: missing return value
-tst/struct.c:68: warning: missing return value
+tst/struct.c:49: warning: missing return value
+tst/struct.c:68: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/struct.sbk b/lcc/sparc/solaris/tst/struct.sbk
index 720b5a9..3c4bfb5 100755
--- a/lcc/sparc/solaris/tst/struct.sbk
+++ b/lcc/sparc/solaris/tst/struct.sbk
@@ -1,377 +1,377 @@
-.global addpoint
-.section ".text"
-.align 4
-addpoint:
-save %sp,-96,%sp
-ld [%i0],%i5
-ld [%i1],%i4
-add %i5,%i4,%i5
-st %i5,[%i0]
-add %i0,4,%i5
-ld [%i5],%i4
-ld [%i1+4],%i3
-add %i4,%i3,%i4
-st %i4,[%i5]
-ld [%fp+64],%i5
-ld [%r24+0],%r1
-ld [%r24+4],%r2
-st %r1,[%r29+0]
-st %r2,[%r29+4]
-.L1:
-jmp %i7+12; restore
-.type addpoint,#function
-.size addpoint,.-addpoint
-.global canonrect
-.align 4
-canonrect:
-save %sp,-112,%sp
-ld [%i0],%i3
-ld [%i0+8],%i2
-cmp %i3,%i2; bge .L6; nop
-ld [%i0],%i5
-ba .L7; nop
-.L6:
-ld [%i0+8],%i5
-.L7:
-st %i5,[%fp+-16]
-ld [%i0+4],%i3
-ld [%i0+12],%i2
-cmp %i3,%i2; bge .L10; nop
-ld [%i0+4],%i4
-ba .L11; nop
-.L10:
-ld [%i0+12],%i4
-.L11:
-st %i4,[%fp+-12]
-ld [%i0],%i2
-ld [%i0+8],%i1
-cmp %i2,%i1; ble .L14; nop
-ld [%i0],%i3
-ba .L15; nop
-.L14:
-ld [%i0+8],%i3
-.L15:
-st %i3,[%fp+-8]
-ld [%i0+4],%i1
-ld [%i0+12],%l7
-cmp %i1,%l7; ble .L19; nop
-ld [%i0+4],%i2
-ba .L20; nop
-.L19:
-ld [%i0+12],%i2
-.L20:
-st %i2,[%fp+-4]
-ld [%fp+64],%i1
-add -16,%fp,%l7
-ld [%r23+0],%r1
-ld [%r23+4],%r2
-st %r1,[%r25+0]
-st %r2,[%r25+4]
-ld [%r23+8],%r1
-ld [%r23+12],%r2
-st %r1,[%r25+8]
-st %r2,[%r25+12]
-.L3:
-jmp %i7+12; restore
-.type canonrect,#function
-.size canonrect,.-canonrect
-.global makepoint
-.align 4
-makepoint:
-save %sp,-104,%sp
-st %i0,[%fp+-8]
-st %i1,[%fp+-4]
-ld [%fp+64],%i5
-add -8,%fp,%i4
-ld [%r28+0],%r1
-ld [%r28+4],%r2
-st %r1,[%r29+0]
-st %r2,[%r29+4]
-.L21:
-jmp %i7+12; restore
-.type makepoint,#function
-.size makepoint,.-makepoint
-.global makerect
-.align 4
-makerect:
-save %sp,-128,%sp
-add -16,%fp,%i5
-ld [%r24+0],%r1
-ld [%r24+4],%r2
-st %r1,[%r29+0]
-st %r2,[%r29+4]
-add -8,%fp,%i5
-ld [%r25+0],%r1
-ld [%r25+4],%r2
-st %r1,[%r29+0]
-st %r2,[%r29+4]
-add -32,%fp,%i5
-add -16,%fp,%i4
-ld [%r28+0],%r1
-ld [%r28+4],%r2
-st %r1,[%r29+0]
-st %r2,[%r29+4]
-ld [%r28+8],%r1
-ld [%r28+12],%r2
-st %r1,[%r29+8]
-st %r2,[%r29+12]
-add -32,%fp,%o0
-ld [%fp+64],%i5
-call canonrect; st %i5,[%sp+64]; unimp 16&0xfff
-.L24:
-jmp %i7+12; restore
-.type makerect,#function
-.size makerect,.-makerect
-.global ptinrect
-.align 4
-ptinrect:
-ld [%o0],%o4
-ld [%o1],%o3
-cmp %o4,%o3; bl .L29; nop
-ld [%o1+8],%o3
-cmp %o4,%o3; bge .L29; nop
-ld [%o0+4],%o4
-ld [%o1+4],%o3
-cmp %o4,%o3; bl .L29; nop
-ld [%o1+12],%o3
-cmp %o4,%o3; bge .L29; nop
-set 1,%o5
-ba .L30; nop
-.L29:
-mov %g0,%o5
-.L30:
-mov %o5,%o0
-.L27:
-retl; nop
-.type ptinrect,#function
-.size ptinrect,.-ptinrect
-.section ".data"
-.global y
-.type y,#object
-.size y,3
-.align 1
-y:
-.byte 97
-.byte 98
-.byte 0
-.global odd
-.section ".text"
-.align 4
-odd:
-save %sp,-96,%sp
-add -3,%fp,%i5
-ldub [%r24+0],%r1
-ldub [%r24+1],%r2
-stb %r1,[%r29+0]
-stb %r2,[%r29+1]
-ldub [%r24+2],%r1
-stb %r1,[%r29+2]
-set .L32,%o0
-add -3,%fp,%o1
-call printf; nop
-mov %g0,%i0
-.L31:
-ret; restore
-.type odd,#function
-.size odd,.-odd
-.section ".rodata"
-.align 4
-.L34:
-.word 0x0
-.word 0x0
-.align 4
-.L35:
-.word 0x140
-.word 0x140
-.align 4
-.L36:
-.word 0xffffffff
-.word 0xffffffff
-.word 0x1
-.word 0x1
-.word 0x14
-.word 0x12c
-.word 0x1f4
-.word 0x190
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-240,%sp
-add -64,%fp,%i4
-set .L34,%i3
-ld [%r27+0],%r1
-ld [%r27+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-add -72,%fp,%i4
-set .L35,%i3
-ld [%r27+0],%r1
-ld [%r27+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-add -32,%fp,%i4
-set .L36,%i3
-add %r27,32,%r27
-add %r28,32,%r3
-1: dec 8,%r3
-ld [%r27+-8],%r1
-ld [%r27+-4],%r2
-st %r1,[%r3+0]
-st %r2,[%r3+4]
-cmp %r3,%r28; bgt 1b; dec 8,%r27
-set -10,%i4
-mov %i4,%o0
-mov %i4,%o1
-add -80,%fp,%i4
-call makepoint; st %i4,[%sp+64]; unimp 8&0xfff
-add -88,%fp,%i4
-add -72,%fp,%i3
-ld [%r27+0],%r1
-ld [%r27+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-add -88,%fp,%o0
-add -80,%fp,%o1
-add -96,%fp,%i4
-call addpoint; st %i4,[%sp+64]; unimp 8&0xfff
-set 10,%i4
-mov %i4,%o0
-mov %i4,%o1
-add -104,%fp,%i4
-call makepoint; st %i4,[%sp+64]; unimp 8&0xfff
-add -112,%fp,%i4
-add -64,%fp,%i3
-ld [%r27+0],%r1
-ld [%r27+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-add -112,%fp,%o0
-add -104,%fp,%o1
-add -120,%fp,%i4
-call addpoint; st %i4,[%sp+64]; unimp 8&0xfff
-add -96,%fp,%o0
-add -120,%fp,%o1
-add -48,%fp,%i4
-call makerect; st %i4,[%sp+64]; unimp 16&0xfff
-mov %g0,%i5
-ba .L40; nop
-.L37:
-sll %i5,3,%i4
-add -32,%fp,%i3
-ld [%i4+%i3],%o0
-add -28,%fp,%i3
-ld [%i4+%i3],%o1
-add -56,%fp,%i4
-call makepoint; st %i4,[%sp+64]; unimp 8&0xfff
-set .L41,%o0
-sll %i5,3,%i4
-add -32,%fp,%i3
-ld [%i4+%i3],%o1
-ld [%fp+-52],%o2
-call printf; nop
-add -128,%fp,%i4
-add -56,%fp,%i3
-ld [%r27+0],%r1
-ld [%r27+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-add -128,%fp,%o0
-add -144,%fp,%i4
-add -48,%fp,%i3
-ld [%r27+0],%r1
-ld [%r27+4],%r2
-st %r1,[%r28+0]
-st %r2,[%r28+4]
-ld [%r27+8],%r1
-ld [%r27+12],%r2
-st %r1,[%r28+8]
-st %r2,[%r28+12]
-add -144,%fp,%o1
-call ptinrect; nop
-cmp %o0,0; bne .L44; nop
-set .L46,%o0
-call printf; nop
-.L44:
-set .L47,%o0
-ld [%fp+-48],%o1
-ld [%fp+-44],%o2
-ld [%fp+-40],%o3
-ld [%fp+-36],%o4
-call printf; nop
-.L38:
-add %i5,1,%i5
-.L40:
-mov %i5,%i4
-set 4,%i3
-cmp %i4,%i3; blu .L37; nop
-add -123,%fp,%i4
-set y,%i3
-ldub [%r27+0],%r1
-ldub [%r27+1],%r2
-stb %r1,[%r28+0]
-stb %r2,[%r28+1]
-ldub [%r27+2],%r1
-stb %r1,[%r28+2]
-add -123,%fp,%o0
-call odd; nop
-mov %g0,%o0
-call exit; nop
-mov %g0,%i0
-.L33:
-ret; restore
-.type main,#function
-.size main,.-main
-.section ".rodata"
-.align 1
-.L47:
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 105
-.byte 110
-.byte 32
-.byte 91
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 59
-.byte 32
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 93
-.byte 10
-.byte 0
-.align 1
-.L46:
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 0
-.align 1
-.L41:
-.byte 40
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 0
-.align 1
-.L32:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
+.global addpoint
+.section ".text"
+.align 4
+addpoint:
+save %sp,-96,%sp
+ld [%i0],%i5
+ld [%i1],%i4
+add %i5,%i4,%i5
+st %i5,[%i0]
+add %i0,4,%i5
+ld [%i5],%i4
+ld [%i1+4],%i3
+add %i4,%i3,%i4
+st %i4,[%i5]
+ld [%fp+64],%i5
+ld [%r24+0],%r1
+ld [%r24+4],%r2
+st %r1,[%r29+0]
+st %r2,[%r29+4]
+.L1:
+jmp %i7+12; restore
+.type addpoint,#function
+.size addpoint,.-addpoint
+.global canonrect
+.align 4
+canonrect:
+save %sp,-112,%sp
+ld [%i0],%i3
+ld [%i0+8],%i2
+cmp %i3,%i2; bge .L6; nop
+ld [%i0],%i5
+ba .L7; nop
+.L6:
+ld [%i0+8],%i5
+.L7:
+st %i5,[%fp+-16]
+ld [%i0+4],%i3
+ld [%i0+12],%i2
+cmp %i3,%i2; bge .L10; nop
+ld [%i0+4],%i4
+ba .L11; nop
+.L10:
+ld [%i0+12],%i4
+.L11:
+st %i4,[%fp+-12]
+ld [%i0],%i2
+ld [%i0+8],%i1
+cmp %i2,%i1; ble .L14; nop
+ld [%i0],%i3
+ba .L15; nop
+.L14:
+ld [%i0+8],%i3
+.L15:
+st %i3,[%fp+-8]
+ld [%i0+4],%i1
+ld [%i0+12],%l7
+cmp %i1,%l7; ble .L19; nop
+ld [%i0+4],%i2
+ba .L20; nop
+.L19:
+ld [%i0+12],%i2
+.L20:
+st %i2,[%fp+-4]
+ld [%fp+64],%i1
+add -16,%fp,%l7
+ld [%r23+0],%r1
+ld [%r23+4],%r2
+st %r1,[%r25+0]
+st %r2,[%r25+4]
+ld [%r23+8],%r1
+ld [%r23+12],%r2
+st %r1,[%r25+8]
+st %r2,[%r25+12]
+.L3:
+jmp %i7+12; restore
+.type canonrect,#function
+.size canonrect,.-canonrect
+.global makepoint
+.align 4
+makepoint:
+save %sp,-104,%sp
+st %i0,[%fp+-8]
+st %i1,[%fp+-4]
+ld [%fp+64],%i5
+add -8,%fp,%i4
+ld [%r28+0],%r1
+ld [%r28+4],%r2
+st %r1,[%r29+0]
+st %r2,[%r29+4]
+.L21:
+jmp %i7+12; restore
+.type makepoint,#function
+.size makepoint,.-makepoint
+.global makerect
+.align 4
+makerect:
+save %sp,-128,%sp
+add -16,%fp,%i5
+ld [%r24+0],%r1
+ld [%r24+4],%r2
+st %r1,[%r29+0]
+st %r2,[%r29+4]
+add -8,%fp,%i5
+ld [%r25+0],%r1
+ld [%r25+4],%r2
+st %r1,[%r29+0]
+st %r2,[%r29+4]
+add -32,%fp,%i5
+add -16,%fp,%i4
+ld [%r28+0],%r1
+ld [%r28+4],%r2
+st %r1,[%r29+0]
+st %r2,[%r29+4]
+ld [%r28+8],%r1
+ld [%r28+12],%r2
+st %r1,[%r29+8]
+st %r2,[%r29+12]
+add -32,%fp,%o0
+ld [%fp+64],%i5
+call canonrect; st %i5,[%sp+64]; unimp 16&0xfff
+.L24:
+jmp %i7+12; restore
+.type makerect,#function
+.size makerect,.-makerect
+.global ptinrect
+.align 4
+ptinrect:
+ld [%o0],%o4
+ld [%o1],%o3
+cmp %o4,%o3; bl .L29; nop
+ld [%o1+8],%o3
+cmp %o4,%o3; bge .L29; nop
+ld [%o0+4],%o4
+ld [%o1+4],%o3
+cmp %o4,%o3; bl .L29; nop
+ld [%o1+12],%o3
+cmp %o4,%o3; bge .L29; nop
+set 1,%o5
+ba .L30; nop
+.L29:
+mov %g0,%o5
+.L30:
+mov %o5,%o0
+.L27:
+retl; nop
+.type ptinrect,#function
+.size ptinrect,.-ptinrect
+.section ".data"
+.global y
+.type y,#object
+.size y,3
+.align 1
+y:
+.byte 97
+.byte 98
+.byte 0
+.global odd
+.section ".text"
+.align 4
+odd:
+save %sp,-96,%sp
+add -3,%fp,%i5
+ldub [%r24+0],%r1
+ldub [%r24+1],%r2
+stb %r1,[%r29+0]
+stb %r2,[%r29+1]
+ldub [%r24+2],%r1
+stb %r1,[%r29+2]
+set .L32,%o0
+add -3,%fp,%o1
+call printf; nop
+mov %g0,%i0
+.L31:
+ret; restore
+.type odd,#function
+.size odd,.-odd
+.section ".rodata"
+.align 4
+.L34:
+.word 0x0
+.word 0x0
+.align 4
+.L35:
+.word 0x140
+.word 0x140
+.align 4
+.L36:
+.word 0xffffffff
+.word 0xffffffff
+.word 0x1
+.word 0x1
+.word 0x14
+.word 0x12c
+.word 0x1f4
+.word 0x190
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-240,%sp
+add -64,%fp,%i4
+set .L34,%i3
+ld [%r27+0],%r1
+ld [%r27+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+add -72,%fp,%i4
+set .L35,%i3
+ld [%r27+0],%r1
+ld [%r27+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+add -32,%fp,%i4
+set .L36,%i3
+add %r27,32,%r27
+add %r28,32,%r3
+1: dec 8,%r3
+ld [%r27+-8],%r1
+ld [%r27+-4],%r2
+st %r1,[%r3+0]
+st %r2,[%r3+4]
+cmp %r3,%r28; bgt 1b; dec 8,%r27
+set -10,%i4
+mov %i4,%o0
+mov %i4,%o1
+add -80,%fp,%i4
+call makepoint; st %i4,[%sp+64]; unimp 8&0xfff
+add -88,%fp,%i4
+add -72,%fp,%i3
+ld [%r27+0],%r1
+ld [%r27+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+add -88,%fp,%o0
+add -80,%fp,%o1
+add -96,%fp,%i4
+call addpoint; st %i4,[%sp+64]; unimp 8&0xfff
+set 10,%i4
+mov %i4,%o0
+mov %i4,%o1
+add -104,%fp,%i4
+call makepoint; st %i4,[%sp+64]; unimp 8&0xfff
+add -112,%fp,%i4
+add -64,%fp,%i3
+ld [%r27+0],%r1
+ld [%r27+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+add -112,%fp,%o0
+add -104,%fp,%o1
+add -120,%fp,%i4
+call addpoint; st %i4,[%sp+64]; unimp 8&0xfff
+add -96,%fp,%o0
+add -120,%fp,%o1
+add -48,%fp,%i4
+call makerect; st %i4,[%sp+64]; unimp 16&0xfff
+mov %g0,%i5
+ba .L40; nop
+.L37:
+sll %i5,3,%i4
+add -32,%fp,%i3
+ld [%i4+%i3],%o0
+add -28,%fp,%i3
+ld [%i4+%i3],%o1
+add -56,%fp,%i4
+call makepoint; st %i4,[%sp+64]; unimp 8&0xfff
+set .L41,%o0
+sll %i5,3,%i4
+add -32,%fp,%i3
+ld [%i4+%i3],%o1
+ld [%fp+-52],%o2
+call printf; nop
+add -128,%fp,%i4
+add -56,%fp,%i3
+ld [%r27+0],%r1
+ld [%r27+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+add -128,%fp,%o0
+add -144,%fp,%i4
+add -48,%fp,%i3
+ld [%r27+0],%r1
+ld [%r27+4],%r2
+st %r1,[%r28+0]
+st %r2,[%r28+4]
+ld [%r27+8],%r1
+ld [%r27+12],%r2
+st %r1,[%r28+8]
+st %r2,[%r28+12]
+add -144,%fp,%o1
+call ptinrect; nop
+cmp %o0,0; bne .L44; nop
+set .L46,%o0
+call printf; nop
+.L44:
+set .L47,%o0
+ld [%fp+-48],%o1
+ld [%fp+-44],%o2
+ld [%fp+-40],%o3
+ld [%fp+-36],%o4
+call printf; nop
+.L38:
+add %i5,1,%i5
+.L40:
+mov %i5,%i4
+set 4,%i3
+cmp %i4,%i3; blu .L37; nop
+add -123,%fp,%i4
+set y,%i3
+ldub [%r27+0],%r1
+ldub [%r27+1],%r2
+stb %r1,[%r28+0]
+stb %r2,[%r28+1]
+ldub [%r27+2],%r1
+stb %r1,[%r28+2]
+add -123,%fp,%o0
+call odd; nop
+mov %g0,%o0
+call exit; nop
+mov %g0,%i0
+.L33:
+ret; restore
+.type main,#function
+.size main,.-main
+.section ".rodata"
+.align 1
+.L47:
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 105
+.byte 110
+.byte 32
+.byte 91
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 59
+.byte 32
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 93
+.byte 10
+.byte 0
+.align 1
+.L46:
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 0
+.align 1
+.L41:
+.byte 40
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 0
+.align 1
+.L32:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
diff --git a/lcc/sparc/solaris/tst/switch.1bk b/lcc/sparc/solaris/tst/switch.1bk
index 559e8e3..de46a73 100755
--- a/lcc/sparc/solaris/tst/switch.1bk
+++ b/lcc/sparc/solaris/tst/switch.1bk
@@ -1,76 +1,76 @@
-b = 0x8
-f = 0xc
-n = 0xa
-r = 0xd
-t = 0x9
-v = 0xb
-x = 0x78
-f:
-x = 0
-x = 1
-x = 2
-x = 2
-x = 2
-x = 2
-x = 2
-x = 7
-x = 8
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 16
-x = 17
-x = 18
-x = 19
-x = 20
-g:
-1 1
-1 2
-2 3
-2 4
-2 5
-3 6
-d 6
-3 7
-d 7
-3 8
-d 8
-d 9
-d 10
-h:
-i = 8
-i = 16
-i = 120
-i = 128
-i = 248
-i = 264
-i = 272
-i = 280
-i = 288
-i = 296
-i = 304
-i = 312
-488 defaults
-x = 0x1000000
-x = 0x2000000
-x = 0x3000000
-x = 0x4000000
-x = 0x5000000
-x = 0x6000000 (default)
-x = 0x7000000 (default)
-0
-1
-2
-3
-4
-5
-0
-1
-2
-3
-4
-5
+b = 0x8
+f = 0xc
+n = 0xa
+r = 0xd
+t = 0x9
+v = 0xb
+x = 0x78
+f:
+x = 0
+x = 1
+x = 2
+x = 2
+x = 2
+x = 2
+x = 2
+x = 7
+x = 8
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 16
+x = 17
+x = 18
+x = 19
+x = 20
+g:
+1 1
+1 2
+2 3
+2 4
+2 5
+3 6
+d 6
+3 7
+d 7
+3 8
+d 8
+d 9
+d 10
+h:
+i = 8
+i = 16
+i = 120
+i = 128
+i = 248
+i = 264
+i = 272
+i = 280
+i = 288
+i = 296
+i = 304
+i = 312
+488 defaults
+x = 0x1000000
+x = 0x2000000
+x = 0x3000000
+x = 0x4000000
+x = 0x5000000
+x = 0x6000000 (default)
+x = 0x7000000 (default)
+0
+1
+2
+3
+4
+5
+0
+1
+2
+3
+4
+5
diff --git a/lcc/sparc/solaris/tst/switch.2bk b/lcc/sparc/solaris/tst/switch.2bk
index 76387b3..709b419 100755
--- a/lcc/sparc/solaris/tst/switch.2bk
+++ b/lcc/sparc/solaris/tst/switch.2bk
@@ -1,5 +1,5 @@
-tst/switch.c:55: warning: missing return value
-tst/switch.c:73: warning: missing return value
-tst/switch.c:97: warning: missing return value
-tst/switch.c:112: warning: missing return value
-tst/switch.c:137: warning: missing return value
+tst/switch.c:55: warning: missing return value
+tst/switch.c:73: warning: missing return value
+tst/switch.c:97: warning: missing return value
+tst/switch.c:112: warning: missing return value
+tst/switch.c:137: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/switch.sbk b/lcc/sparc/solaris/tst/switch.sbk
index 6a11cd9..2566d07 100755
--- a/lcc/sparc/solaris/tst/switch.sbk
+++ b/lcc/sparc/solaris/tst/switch.sbk
@@ -1,713 +1,713 @@
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-96,%sp
-set .L6,%i5
-ba .L5; nop
-.L2:
-ldsb [%i5],%o0
-call backslash; nop
-mov %o0,%i3
-set .L7,%o0
-ldsb [%i5],%o1
-mov %i3,%o2
-call printf; nop
-.L3:
-add %i5,1,%i5
-.L5:
-ldsb [%i5],%i3
-cmp %i3,0; bne .L2; nop
-call f; nop
-call g; nop
-call h; nop
-set 16777216,%i4
-ba .L11; nop
-.L8:
-mov %i4,%o0
-call big; nop
-.L9:
-set 16777216,%i3
-add %i4,%i3,%i4
-.L11:
-set 117440512,%i3
-and %i4,%i3,%i3
-cmp %i3,0; bne .L8; nop
-call limit; nop
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.global backslash
-.align 4
-backslash:
-cmp %o0,102; be .L16; nop
-cmp %o0,102; bg .L22; nop
-.L21:
-cmp %o0,98; be .L15; nop
-ba .L13; nop
-.L22:
-cmp %o0,110; be .L17; nop
-cmp %o0,110; bl .L13; nop
-.L23:
-cmp %o0,114; be .L18; nop
-cmp %o0,116; be .L19; nop
-cmp %o0,118; be .L20; nop
-ba .L13; nop
-.L15:
-set 8,%o0
-ba .L12; nop
-.L16:
-set 12,%o0
-ba .L12; nop
-.L17:
-set 10,%o0
-ba .L12; nop
-.L18:
-set 13,%o0
-ba .L12; nop
-.L19:
-set 9,%o0
-ba .L12; nop
-.L20:
-set 11,%o0
-ba .L12; nop
-.L13:
-.L12:
-retl; nop
-.type backslash,#function
-.size backslash,.-backslash
-.global f
-.align 4
-f:
-save %sp,-96,%sp
-mov %g0,%i4
-set .L25,%o0
-call printf; nop
-mov %g0,%i5
-.L26:
-mov %i5,%i3
-cmp %i5,1; bl .L30; nop
-cmp %i5,20; bg .L30; nop
-sll %i5,2,%i2
-set .L42-4,%i1
-ld [%i2+%i1],%i2
-jmp %i2; nop
-.section ".rodata"
-.align 4
-.L42:
-.word .L32
-.word .L33
-.word .L30
-.word .L30
-.word .L30
-.word .L30
-.word .L34
-.word .L35
-.word .L36
-.word .L30
-.word .L30
-.word .L30
-.word .L30
-.word .L30
-.word .L30
-.word .L37
-.word .L38
-.word .L39
-.word .L40
-.word .L41
-.section ".text"
-.L32:
-mov %i5,%i4
-ba .L31; nop
-.L33:
-mov %i5,%i4
-ba .L31; nop
-.L34:
-mov %i5,%i4
-ba .L31; nop
-.L35:
-mov %i5,%i4
-ba .L31; nop
-.L36:
-mov %i5,%i4
-ba .L31; nop
-.L37:
-mov %i5,%i4
-ba .L31; nop
-.L38:
-mov %i5,%i4
-ba .L31; nop
-.L39:
-mov %i5,%i4
-ba .L31; nop
-.L40:
-mov %i5,%i4
-ba .L31; nop
-.L41:
-mov %i5,%i4
-.L30:
-.L31:
-set .L44,%o0
-mov %i4,%o1
-call printf; nop
-.L27:
-add %i5,1,%i5
-cmp %i5,20; ble .L26; nop
-mov %g0,%i0
-.L24:
-ret; restore
-.type f,#function
-.size f,.-f
-.global g
-.align 4
-g:
-save %sp,-96,%sp
-set .L46,%o0
-call printf; nop
-set 1,%i5
-.L47:
-cmp %i5,1001; bl .L64; nop
-cmp %i5,1004; bg .L65; nop
-sll %i5,2,%i4
-set .L66-4004,%i3
-ld [%i4+%i3],%i4
-jmp %i4; nop
-.section ".rodata"
-.align 4
-.L66:
-.word .L60
-.word .L60
-.word .L60
-.word .L60
-.section ".text"
-.L64:
-cmp %i5,1; bl .L51; nop
-cmp %i5,8; bg .L51; nop
-sll %i5,2,%i4
-set .L68-4,%i3
-ld [%i4+%i3],%i4
-jmp %i4; nop
-.section ".rodata"
-.align 4
-.L68:
-.word .L53
-.word .L53
-.word .L55
-.word .L55
-.word .L55
-.word .L57
-.word .L57
-.word .L57
-.section ".text"
-.L65:
-cmp %i5,3001; bl .L51; nop
-cmp %i5,3004; bg .L51; nop
-sll %i5,2,%i4
-set .L70-12004,%i3
-ld [%i4+%i3],%i4
-jmp %i4; nop
-.section ".rodata"
-.align 4
-.L70:
-.word .L62
-.word .L62
-.word .L62
-.word .L62
-.section ".text"
-.L53:
-set .L54,%o0
-mov %i5,%o1
-call printf; nop
-ba .L52; nop
-.L55:
-set .L56,%o0
-mov %i5,%o1
-call printf; nop
-ba .L52; nop
-.L57:
-set .L58,%o0
-mov %i5,%o1
-call printf; nop
-.L51:
-set .L59,%o0
-mov %i5,%o1
-call printf; nop
-ba .L52; nop
-.L60:
-set .L61,%o0
-mov %i5,%o1
-call printf; nop
-ba .L52; nop
-.L62:
-set .L63,%o0
-mov %i5,%o1
-call printf; nop
-.L52:
-.L48:
-add %i5,1,%i5
-cmp %i5,10; ble .L47; nop
-mov %g0,%i0
-.L45:
-ret; restore
-.type g,#function
-.size g,.-g
-.global h
-.align 4
-h:
-save %sp,-96,%sp
-mov %g0,%i4
-set .L73,%o0
-call printf; nop
-set 1,%i5
-.L74:
-cmp %i5,264; be .L86; nop
-cmp %i5,264; bg .L94; nop
-.L93:
-cmp %i5,120; be .L84; nop
-cmp %i5,120; bg .L96; nop
-.L95:
-cmp %i5,8; be .L83; nop
-cmp %i5,8; bl .L78; nop
-.L97:
-cmp %i5,16; be .L82; nop
-ba .L78; nop
-.L96:
-cmp %i5,128; be .L80; nop
-cmp %i5,128; bl .L78; nop
-.L98:
-cmp %i5,248; be .L87; nop
-ba .L78; nop
-.L94:
-cmp %i5,288; be .L91; nop
-cmp %i5,288; bg .L100; nop
-.L99:
-cmp %i5,272; be .L88; nop
-cmp %i5,272; bl .L78; nop
-.L101:
-cmp %i5,280; be .L85; nop
-ba .L78; nop
-.L100:
-cmp %i5,304; be .L89; nop
-cmp %i5,304; bg .L103; nop
-.L102:
-cmp %i5,296; be .L90; nop
-ba .L78; nop
-.L103:
-cmp %i5,312; be .L92; nop
-ba .L78; nop
-.L78:
-add %i4,1,%i4
-ba .L75; nop
-.L80:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L82:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L83:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L84:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L85:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L86:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L87:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L88:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L89:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L90:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L91:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-ba .L79; nop
-.L92:
-set .L81,%o0
-mov %i5,%o1
-call printf; nop
-.L79:
-.L75:
-add %i5,1,%i5
-cmp %i5,500; ble .L74; nop
-set .L104,%o0
-mov %i4,%o1
-call printf; nop
-mov %g0,%i0
-.L72:
-ret; restore
-.type h,#function
-.size h,.-h
-.global big
-.align 4
-big:
-save %sp,-96,%sp
-set 0x6000000,%i4
-and %i0,%i4,%i5
-set 33554432,%i3
-cmp %i5,%i3; be .L111; nop
-cmp %i5,%i3; bg .L115; nop
-.L114:
-cmp %i5,-2; be .L109; nop
-cmp %i5,-1; be .L109; nop
-cmp %i5,0; be .L109; nop
-ba .L106; nop
-.L115:
-mov %i5,%i4
-set 67108864,%i3
-cmp %i4,%i3; be .L112; nop
-ba .L106; nop
-.L109:
-set .L110,%o0
-mov %i0,%o1
-call printf; nop
-ba .L107; nop
-.L111:
-set .L110,%o0
-mov %i0,%o1
-call printf; nop
-ba .L107; nop
-.L112:
-set .L110,%o0
-mov %i0,%o1
-call printf; nop
-ba .L107; nop
-.L106:
-set .L113,%o0
-mov %i0,%o1
-call printf; nop
-.L107:
-mov %g0,%i0
-.L105:
-ret; restore
-.type big,#function
-.size big,.-big
-.global limit
-.align 4
-limit:
-save %sp,-96,%sp
-set -2147483648,%i5
-.L117:
-set -2147483648,%i4
-cmp %i5,%i4; bl .L121; nop
-set -2147483644,%i3
-cmp %i5,%i3; bg .L121; nop
-sll %i5,2,%i3
-sll %i4,2,%i4
-sub %i3,%i4,%i4
-set .L134,%i3
-ld [%i4+%i3],%i4
-jmp %i4; nop
-.section ".rodata"
-.align 4
-.L134:
-.word .L123
-.word .L125
-.word .L127
-.word .L129
-.word .L131
-.section ".text"
-.L123:
-set .L124,%o0
-call printf; nop
-ba .L122; nop
-.L125:
-set .L126,%o0
-call printf; nop
-ba .L122; nop
-.L127:
-set .L128,%o0
-call printf; nop
-ba .L122; nop
-.L129:
-set .L130,%o0
-call printf; nop
-ba .L122; nop
-.L131:
-set .L132,%o0
-call printf; nop
-ba .L122; nop
-.L121:
-set .L133,%o0
-call printf; nop
-.L122:
-.L118:
-add %i5,1,%i5
-set -2147483643,%i4
-cmp %i5,%i4; ble .L117; nop
-set 2147483647,%i5
-.L135:
-set 2147483643,%i4
-cmp %i5,%i4; bl .L139; nop
-set 2147483647,%i3
-cmp %i5,%i3; bg .L139; nop
-sll %i5,2,%i3
-sll %i4,2,%i4
-sub %i3,%i4,%i4
-set .L146,%i3
-ld [%i4+%i3],%i4
-jmp %i4; nop
-.section ".rodata"
-.align 4
-.L146:
-.word .L145
-.word .L144
-.word .L143
-.word .L142
-.word .L141
-.section ".text"
-.L141:
-set .L124,%o0
-call printf; nop
-ba .L140; nop
-.L142:
-set .L126,%o0
-call printf; nop
-ba .L140; nop
-.L143:
-set .L128,%o0
-call printf; nop
-ba .L140; nop
-.L144:
-set .L130,%o0
-call printf; nop
-ba .L140; nop
-.L145:
-set .L132,%o0
-call printf; nop
-ba .L140; nop
-.L139:
-set .L133,%o0
-call printf; nop
-.L140:
-.L136:
-sub %i5,1,%i5
-set 2147483642,%i4
-cmp %i5,%i4; bge .L135; nop
-mov %g0,%i0
-.L116:
-ret; restore
-.type limit,#function
-.size limit,.-limit
-.section ".rodata"
-.align 1
-.L133:
-.byte 53
-.byte 10
-.byte 0
-.align 1
-.L132:
-.byte 52
-.byte 10
-.byte 0
-.align 1
-.L130:
-.byte 51
-.byte 10
-.byte 0
-.align 1
-.L128:
-.byte 50
-.byte 10
-.byte 0
-.align 1
-.L126:
-.byte 49
-.byte 10
-.byte 0
-.align 1
-.L124:
-.byte 48
-.byte 10
-.byte 0
-.align 1
-.L113:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 32
-.byte 40
-.byte 100
-.byte 101
-.byte 102
-.byte 97
-.byte 117
-.byte 108
-.byte 116
-.byte 41
-.byte 10
-.byte 0
-.align 1
-.L110:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 1
-.L104:
-.byte 37
-.byte 100
-.byte 32
-.byte 100
-.byte 101
-.byte 102
-.byte 97
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L81:
-.byte 105
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L73:
-.byte 104
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.L63:
-.byte 54
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L61:
-.byte 53
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L59:
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L58:
-.byte 51
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L56:
-.byte 50
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L54:
-.byte 49
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L46:
-.byte 103
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.L44:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L25:
-.byte 102
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.L7:
-.byte 37
-.byte 99
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 1
-.L6:
-.byte 98
-.byte 102
-.byte 110
-.byte 114
-.byte 116
-.byte 118
-.byte 120
-.byte 0
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-96,%sp
+set .L6,%i5
+ba .L5; nop
+.L2:
+ldsb [%i5],%o0
+call backslash; nop
+mov %o0,%i3
+set .L7,%o0
+ldsb [%i5],%o1
+mov %i3,%o2
+call printf; nop
+.L3:
+add %i5,1,%i5
+.L5:
+ldsb [%i5],%i3
+cmp %i3,0; bne .L2; nop
+call f; nop
+call g; nop
+call h; nop
+set 16777216,%i4
+ba .L11; nop
+.L8:
+mov %i4,%o0
+call big; nop
+.L9:
+set 16777216,%i3
+add %i4,%i3,%i4
+.L11:
+set 117440512,%i3
+and %i4,%i3,%i3
+cmp %i3,0; bne .L8; nop
+call limit; nop
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.global backslash
+.align 4
+backslash:
+cmp %o0,102; be .L16; nop
+cmp %o0,102; bg .L22; nop
+.L21:
+cmp %o0,98; be .L15; nop
+ba .L13; nop
+.L22:
+cmp %o0,110; be .L17; nop
+cmp %o0,110; bl .L13; nop
+.L23:
+cmp %o0,114; be .L18; nop
+cmp %o0,116; be .L19; nop
+cmp %o0,118; be .L20; nop
+ba .L13; nop
+.L15:
+set 8,%o0
+ba .L12; nop
+.L16:
+set 12,%o0
+ba .L12; nop
+.L17:
+set 10,%o0
+ba .L12; nop
+.L18:
+set 13,%o0
+ba .L12; nop
+.L19:
+set 9,%o0
+ba .L12; nop
+.L20:
+set 11,%o0
+ba .L12; nop
+.L13:
+.L12:
+retl; nop
+.type backslash,#function
+.size backslash,.-backslash
+.global f
+.align 4
+f:
+save %sp,-96,%sp
+mov %g0,%i4
+set .L25,%o0
+call printf; nop
+mov %g0,%i5
+.L26:
+mov %i5,%i3
+cmp %i5,1; bl .L30; nop
+cmp %i5,20; bg .L30; nop
+sll %i5,2,%i2
+set .L42-4,%i1
+ld [%i2+%i1],%i2
+jmp %i2; nop
+.section ".rodata"
+.align 4
+.L42:
+.word .L32
+.word .L33
+.word .L30
+.word .L30
+.word .L30
+.word .L30
+.word .L34
+.word .L35
+.word .L36
+.word .L30
+.word .L30
+.word .L30
+.word .L30
+.word .L30
+.word .L30
+.word .L37
+.word .L38
+.word .L39
+.word .L40
+.word .L41
+.section ".text"
+.L32:
+mov %i5,%i4
+ba .L31; nop
+.L33:
+mov %i5,%i4
+ba .L31; nop
+.L34:
+mov %i5,%i4
+ba .L31; nop
+.L35:
+mov %i5,%i4
+ba .L31; nop
+.L36:
+mov %i5,%i4
+ba .L31; nop
+.L37:
+mov %i5,%i4
+ba .L31; nop
+.L38:
+mov %i5,%i4
+ba .L31; nop
+.L39:
+mov %i5,%i4
+ba .L31; nop
+.L40:
+mov %i5,%i4
+ba .L31; nop
+.L41:
+mov %i5,%i4
+.L30:
+.L31:
+set .L44,%o0
+mov %i4,%o1
+call printf; nop
+.L27:
+add %i5,1,%i5
+cmp %i5,20; ble .L26; nop
+mov %g0,%i0
+.L24:
+ret; restore
+.type f,#function
+.size f,.-f
+.global g
+.align 4
+g:
+save %sp,-96,%sp
+set .L46,%o0
+call printf; nop
+set 1,%i5
+.L47:
+cmp %i5,1001; bl .L64; nop
+cmp %i5,1004; bg .L65; nop
+sll %i5,2,%i4
+set .L66-4004,%i3
+ld [%i4+%i3],%i4
+jmp %i4; nop
+.section ".rodata"
+.align 4
+.L66:
+.word .L60
+.word .L60
+.word .L60
+.word .L60
+.section ".text"
+.L64:
+cmp %i5,1; bl .L51; nop
+cmp %i5,8; bg .L51; nop
+sll %i5,2,%i4
+set .L68-4,%i3
+ld [%i4+%i3],%i4
+jmp %i4; nop
+.section ".rodata"
+.align 4
+.L68:
+.word .L53
+.word .L53
+.word .L55
+.word .L55
+.word .L55
+.word .L57
+.word .L57
+.word .L57
+.section ".text"
+.L65:
+cmp %i5,3001; bl .L51; nop
+cmp %i5,3004; bg .L51; nop
+sll %i5,2,%i4
+set .L70-12004,%i3
+ld [%i4+%i3],%i4
+jmp %i4; nop
+.section ".rodata"
+.align 4
+.L70:
+.word .L62
+.word .L62
+.word .L62
+.word .L62
+.section ".text"
+.L53:
+set .L54,%o0
+mov %i5,%o1
+call printf; nop
+ba .L52; nop
+.L55:
+set .L56,%o0
+mov %i5,%o1
+call printf; nop
+ba .L52; nop
+.L57:
+set .L58,%o0
+mov %i5,%o1
+call printf; nop
+.L51:
+set .L59,%o0
+mov %i5,%o1
+call printf; nop
+ba .L52; nop
+.L60:
+set .L61,%o0
+mov %i5,%o1
+call printf; nop
+ba .L52; nop
+.L62:
+set .L63,%o0
+mov %i5,%o1
+call printf; nop
+.L52:
+.L48:
+add %i5,1,%i5
+cmp %i5,10; ble .L47; nop
+mov %g0,%i0
+.L45:
+ret; restore
+.type g,#function
+.size g,.-g
+.global h
+.align 4
+h:
+save %sp,-96,%sp
+mov %g0,%i4
+set .L73,%o0
+call printf; nop
+set 1,%i5
+.L74:
+cmp %i5,264; be .L86; nop
+cmp %i5,264; bg .L94; nop
+.L93:
+cmp %i5,120; be .L84; nop
+cmp %i5,120; bg .L96; nop
+.L95:
+cmp %i5,8; be .L83; nop
+cmp %i5,8; bl .L78; nop
+.L97:
+cmp %i5,16; be .L82; nop
+ba .L78; nop
+.L96:
+cmp %i5,128; be .L80; nop
+cmp %i5,128; bl .L78; nop
+.L98:
+cmp %i5,248; be .L87; nop
+ba .L78; nop
+.L94:
+cmp %i5,288; be .L91; nop
+cmp %i5,288; bg .L100; nop
+.L99:
+cmp %i5,272; be .L88; nop
+cmp %i5,272; bl .L78; nop
+.L101:
+cmp %i5,280; be .L85; nop
+ba .L78; nop
+.L100:
+cmp %i5,304; be .L89; nop
+cmp %i5,304; bg .L103; nop
+.L102:
+cmp %i5,296; be .L90; nop
+ba .L78; nop
+.L103:
+cmp %i5,312; be .L92; nop
+ba .L78; nop
+.L78:
+add %i4,1,%i4
+ba .L75; nop
+.L80:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L82:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L83:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L84:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L85:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L86:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L87:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L88:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L89:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L90:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L91:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+ba .L79; nop
+.L92:
+set .L81,%o0
+mov %i5,%o1
+call printf; nop
+.L79:
+.L75:
+add %i5,1,%i5
+cmp %i5,500; ble .L74; nop
+set .L104,%o0
+mov %i4,%o1
+call printf; nop
+mov %g0,%i0
+.L72:
+ret; restore
+.type h,#function
+.size h,.-h
+.global big
+.align 4
+big:
+save %sp,-96,%sp
+set 0x6000000,%i4
+and %i0,%i4,%i5
+set 33554432,%i3
+cmp %i5,%i3; be .L111; nop
+cmp %i5,%i3; bg .L115; nop
+.L114:
+cmp %i5,-2; be .L109; nop
+cmp %i5,-1; be .L109; nop
+cmp %i5,0; be .L109; nop
+ba .L106; nop
+.L115:
+mov %i5,%i4
+set 67108864,%i3
+cmp %i4,%i3; be .L112; nop
+ba .L106; nop
+.L109:
+set .L110,%o0
+mov %i0,%o1
+call printf; nop
+ba .L107; nop
+.L111:
+set .L110,%o0
+mov %i0,%o1
+call printf; nop
+ba .L107; nop
+.L112:
+set .L110,%o0
+mov %i0,%o1
+call printf; nop
+ba .L107; nop
+.L106:
+set .L113,%o0
+mov %i0,%o1
+call printf; nop
+.L107:
+mov %g0,%i0
+.L105:
+ret; restore
+.type big,#function
+.size big,.-big
+.global limit
+.align 4
+limit:
+save %sp,-96,%sp
+set -2147483648,%i5
+.L117:
+set -2147483648,%i4
+cmp %i5,%i4; bl .L121; nop
+set -2147483644,%i3
+cmp %i5,%i3; bg .L121; nop
+sll %i5,2,%i3
+sll %i4,2,%i4
+sub %i3,%i4,%i4
+set .L134,%i3
+ld [%i4+%i3],%i4
+jmp %i4; nop
+.section ".rodata"
+.align 4
+.L134:
+.word .L123
+.word .L125
+.word .L127
+.word .L129
+.word .L131
+.section ".text"
+.L123:
+set .L124,%o0
+call printf; nop
+ba .L122; nop
+.L125:
+set .L126,%o0
+call printf; nop
+ba .L122; nop
+.L127:
+set .L128,%o0
+call printf; nop
+ba .L122; nop
+.L129:
+set .L130,%o0
+call printf; nop
+ba .L122; nop
+.L131:
+set .L132,%o0
+call printf; nop
+ba .L122; nop
+.L121:
+set .L133,%o0
+call printf; nop
+.L122:
+.L118:
+add %i5,1,%i5
+set -2147483643,%i4
+cmp %i5,%i4; ble .L117; nop
+set 2147483647,%i5
+.L135:
+set 2147483643,%i4
+cmp %i5,%i4; bl .L139; nop
+set 2147483647,%i3
+cmp %i5,%i3; bg .L139; nop
+sll %i5,2,%i3
+sll %i4,2,%i4
+sub %i3,%i4,%i4
+set .L146,%i3
+ld [%i4+%i3],%i4
+jmp %i4; nop
+.section ".rodata"
+.align 4
+.L146:
+.word .L145
+.word .L144
+.word .L143
+.word .L142
+.word .L141
+.section ".text"
+.L141:
+set .L124,%o0
+call printf; nop
+ba .L140; nop
+.L142:
+set .L126,%o0
+call printf; nop
+ba .L140; nop
+.L143:
+set .L128,%o0
+call printf; nop
+ba .L140; nop
+.L144:
+set .L130,%o0
+call printf; nop
+ba .L140; nop
+.L145:
+set .L132,%o0
+call printf; nop
+ba .L140; nop
+.L139:
+set .L133,%o0
+call printf; nop
+.L140:
+.L136:
+sub %i5,1,%i5
+set 2147483642,%i4
+cmp %i5,%i4; bge .L135; nop
+mov %g0,%i0
+.L116:
+ret; restore
+.type limit,#function
+.size limit,.-limit
+.section ".rodata"
+.align 1
+.L133:
+.byte 53
+.byte 10
+.byte 0
+.align 1
+.L132:
+.byte 52
+.byte 10
+.byte 0
+.align 1
+.L130:
+.byte 51
+.byte 10
+.byte 0
+.align 1
+.L128:
+.byte 50
+.byte 10
+.byte 0
+.align 1
+.L126:
+.byte 49
+.byte 10
+.byte 0
+.align 1
+.L124:
+.byte 48
+.byte 10
+.byte 0
+.align 1
+.L113:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 32
+.byte 40
+.byte 100
+.byte 101
+.byte 102
+.byte 97
+.byte 117
+.byte 108
+.byte 116
+.byte 41
+.byte 10
+.byte 0
+.align 1
+.L110:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 1
+.L104:
+.byte 37
+.byte 100
+.byte 32
+.byte 100
+.byte 101
+.byte 102
+.byte 97
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L81:
+.byte 105
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L73:
+.byte 104
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.L63:
+.byte 54
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L61:
+.byte 53
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L59:
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L58:
+.byte 51
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L56:
+.byte 50
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L54:
+.byte 49
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L46:
+.byte 103
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.L44:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L25:
+.byte 102
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.L7:
+.byte 37
+.byte 99
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 1
+.L6:
+.byte 98
+.byte 102
+.byte 110
+.byte 114
+.byte 116
+.byte 118
+.byte 120
+.byte 0
diff --git a/lcc/sparc/solaris/tst/wf1.1bk b/lcc/sparc/solaris/tst/wf1.1bk
index 095e087..a846267 100755
--- a/lcc/sparc/solaris/tst/wf1.1bk
+++ b/lcc/sparc/solaris/tst/wf1.1bk
@@ -1,74 +1,74 @@
-5 a
-2 and
-5 buf
-16 c
-8 char
-1 compare
-4 cond
-5 count
-1 d
-1 die
-3 else
-1 entry
-1 eof
-4 err
-1 error
-1 exit
-1 folded
-1 for
-1 free
-1 frequencies
-1 frequency
-1 get
-2 getchar
-3 getword
-14 if
-2 in
-1 index
-1 input
-1 install
-8 int
-1 into
-1 is
-4 isletter
-1 it
-1 itself
-5 left
-1 letter
-7 lookup
-1 main
-2 malloc
-1 message
-2 n
-1 necessary
-12 next
-9 node
-4 of
-1 on
-1 or
-1 otherwise
-2 out
-8 p
-3 print
-2 printf
-16 return
-5 right
-4 root
-25 s
-2 storage
-3 strcmp
-1 strcpy
-1 strlen
-8 struct
-1 structures
-2 subtree
-1 t
-5 tprint
-9 tree
-1 uses
-1 version
-1 wf
-3 while
-21 word
-9 words
-2 z
+5 a
+2 and
+5 buf
+16 c
+8 char
+1 compare
+4 cond
+5 count
+1 d
+1 die
+3 else
+1 entry
+1 eof
+4 err
+1 error
+1 exit
+1 folded
+1 for
+1 free
+1 frequencies
+1 frequency
+1 get
+2 getchar
+3 getword
+14 if
+2 in
+1 index
+1 input
+1 install
+8 int
+1 into
+1 is
+4 isletter
+1 it
+1 itself
+5 left
+1 letter
+7 lookup
+1 main
+2 malloc
+1 message
+2 n
+1 necessary
+12 next
+9 node
+4 of
+1 on
+1 or
+1 otherwise
+2 out
+8 p
+3 print
+2 printf
+16 return
+5 right
+4 root
+25 s
+2 storage
+3 strcmp
+1 strcpy
+1 strlen
+8 struct
+1 structures
+2 subtree
+1 t
+5 tprint
+9 tree
+1 uses
+1 version
+1 wf
+3 while
+21 word
+9 words
+2 z
diff --git a/lcc/sparc/solaris/tst/wf1.2bk b/lcc/sparc/solaris/tst/wf1.2bk
index 0e7a8a6..190e4a1 100755
--- a/lcc/sparc/solaris/tst/wf1.2bk
+++ b/lcc/sparc/solaris/tst/wf1.2bk
@@ -1,2 +1,2 @@
-tst/wf1.c:29: warning: missing return value
-tst/wf1.c:87: warning: missing return value
+tst/wf1.c:29: warning: missing return value
+tst/wf1.c:87: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/wf1.sbk b/lcc/sparc/solaris/tst/wf1.sbk
index 2a8fb0f..1964f30 100755
--- a/lcc/sparc/solaris/tst/wf1.sbk
+++ b/lcc/sparc/solaris/tst/wf1.sbk
@@ -1,311 +1,311 @@
-.global main
-.section ".text"
-.align 4
-main:
-save %sp,-120,%sp
-st %g0,[%fp+-24]
-set next,%i5
-st %g0,[%i5]
-ba .L3; nop
-.L2:
-add -20,%fp,%o0
-add -24,%fp,%o1
-call lookup; nop
-ld [%o0],%i4
-add %i4,1,%i4
-st %i4,[%o0]
-.L3:
-add -20,%fp,%o0
-call getword; nop
-cmp %o0,0; bne .L2; nop
-ld [%fp+-24],%o0
-call tprint; nop
-mov %g0,%i0
-.L1:
-ret; restore
-.type main,#function
-.size main,.-main
-.global err
-.align 4
-err:
-save %sp,-96,%sp
-set .L6,%o0
-mov %i0,%o1
-call printf; nop
-set 1,%o0
-call exit; nop
-mov %g0,%i0
-.L5:
-ret; restore
-.type err,#function
-.size err,.-err
-.global getword
-.align 4
-getword:
-save %sp,-96,%sp
-.L8:
-.L9:
-call getchar; nop
-mov %o0,%i3
-mov %i3,%i5
-cmp %i3,-1; be .L11; nop
-mov %i5,%o0
-call isletter; nop
-cmp %o0,0; be .L8; nop
-.L11:
-mov %i0,%i4
-ba .L15; nop
-.L12:
-mov %i4,%i3
-add %i3,1,%i4
-mov %i5,%i2
-stb %i2,[%i3]
-.L13:
-call getchar; nop
-mov %o0,%i5
-.L15:
-mov %i5,%o0
-call isletter; nop
-mov %o0,%i5
-cmp %o0,0; bne .L12; nop
-stb %g0,[%i4]
-mov %i4,%i3
-mov %i0,%i2
-cmp %i3,%i2; bleu .L16; nop
-set 1,%i0
-ba .L7; nop
-.L16:
-mov %g0,%i0
-.L7:
-ret; restore
-.type getword,#function
-.size getword,.-getword
-.global isletter
-.align 4
-isletter:
-cmp %o0,65; bl .L19; nop
-cmp %o0,90; bg .L19; nop
-add %o0,32,%o0
-.L19:
-cmp %o0,97; bl .L21; nop
-cmp %o0,122; bg .L21; nop
-ba .L18; nop
-.L21:
-mov %g0,%o0
-.L18:
-retl; nop
-.type isletter,#function
-.size isletter,.-isletter
-.global lookup
-.align 4
-lookup:
-save %sp,-96,%sp
-ld [%i1],%i4
-cmp %i4,%g0; be .L24; nop
-mov %i0,%o0
-ld [%i1],%i4
-ld [%i4+12],%o1
-call strcmp; nop
-mov %o0,%i5
-cmp %i5,0; bge .L26; nop
-mov %i0,%o0
-ld [%i1],%i4
-add %i4,4,%o1
-call lookup; nop
-mov %o0,%i0
-ba .L23; nop
-.L26:
-cmp %i5,0; ble .L28; nop
-mov %i0,%o0
-ld [%i1],%i4
-add %i4,8,%o1
-call lookup; nop
-mov %o0,%i0
-ba .L23; nop
-.L28:
-ld [%i1],%i0
-ba .L23; nop
-.L24:
-set next,%i4
-ld [%i4],%i4
-cmp %i4,2000; bl .L30; nop
-set .L32,%o0
-call err; nop
-.L30:
-set next,%i4
-ld [%i4],%i4
-sll %i4,4,%i4
-set words,%i3
-st %g0,[%i4+%i3]
-set next,%i4
-ld [%i4],%i4
-sll %i4,4,%i4
-set words+8,%i2
-st %g0,[%i4+%i2]
-set words+4,%i2
-st %g0,[%i4+%i2]
-mov %i0,%o0
-call strlen; nop
-mov %o0,%i4
-add %i4,1,%o0
-call malloc; nop
-set next,%i3
-ld [%i3],%i3
-sll %i3,4,%i3
-set words+12,%i2
-st %o0,[%i3+%i2]
-set next,%i4
-ld [%i4],%i4
-sll %i4,4,%i4
-set words+12,%i3
-ld [%i4+%i3],%i4
-cmp %i4,%g0; bne .L36; nop
-set .L39,%o0
-call err; nop
-.L36:
-set next,%i4
-ld [%i4],%i4
-sll %i4,4,%i4
-set words+12,%i3
-ld [%i4+%i3],%o0
-mov %i0,%o1
-call strcpy; nop
-set next,%i4
-ld [%i4],%i3
-add %i3,1,%i2
-st %i2,[%i4]
-sll %i3,4,%i4
-set words,%i3
-add %i4,%i3,%i4
-st %i4,[%i1]
-mov %i4,%i0
-.L23:
-ret; restore
-.type lookup,#function
-.size lookup,.-lookup
-.global tprint
-.align 4
-tprint:
-save %sp,-96,%sp
-mov %i0,%i5
-cmp %i5,%g0; be .L42; nop
-ld [%i0+4],%o0
-call tprint; nop
-set .L44,%o0
-ld [%i0],%o1
-ld [%i0+12],%o2
-call printf; nop
-ld [%i0+8],%o0
-call tprint; nop
-.L42:
-mov %g0,%i0
-.L41:
-ret; restore
-.type tprint,#function
-.size tprint,.-tprint
-.global strcmp
-.align 4
-strcmp:
-save %sp,-96,%sp
-ba .L47; nop
-.L46:
-mov %i0,%i5
-add %i5,1,%i0
-ldsb [%i5],%i5
-cmp %i5,0; bne .L49; nop
-mov %g0,%i0
-ba .L45; nop
-.L49:
-add %i1,1,%i1
-.L47:
-ldsb [%i0],%i5
-ldsb [%i1],%i4
-cmp %i5,%i4; be .L46; nop
-ldsb [%i0],%i5
-cmp %i5,0; bne .L51; nop
-set -1,%i0
-ba .L45; nop
-.L51:
-ldsb [%i1],%i5
-cmp %i5,0; bne .L53; nop
-set 1,%i0
-ba .L45; nop
-.L53:
-ldsb [%i0],%i5
-ldsb [%i1],%i4
-sub %i5,%i4,%i0
-.L45:
-ret; restore
-.type strcmp,#function
-.size strcmp,.-strcmp
-.section ".bss"
-.global next
-.type next,#object
-.size next,4
-.common next,4,4
-.global words
-.type words,#object
-.size words,32000
-.common words,32000,4
-.section ".rodata"
-.align 1
-.L44:
-.byte 37
-.byte 100
-.byte 9
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L39:
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 119
-.byte 111
-.byte 114
-.byte 100
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 97
-.byte 103
-.byte 101
-.byte 0
-.align 1
-.L32:
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 110
-.byte 111
-.byte 100
-.byte 101
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 97
-.byte 103
-.byte 101
-.byte 0
-.align 1
-.L6:
-.byte 63
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
+.global main
+.section ".text"
+.align 4
+main:
+save %sp,-120,%sp
+st %g0,[%fp+-24]
+set next,%i5
+st %g0,[%i5]
+ba .L3; nop
+.L2:
+add -20,%fp,%o0
+add -24,%fp,%o1
+call lookup; nop
+ld [%o0],%i4
+add %i4,1,%i4
+st %i4,[%o0]
+.L3:
+add -20,%fp,%o0
+call getword; nop
+cmp %o0,0; bne .L2; nop
+ld [%fp+-24],%o0
+call tprint; nop
+mov %g0,%i0
+.L1:
+ret; restore
+.type main,#function
+.size main,.-main
+.global err
+.align 4
+err:
+save %sp,-96,%sp
+set .L6,%o0
+mov %i0,%o1
+call printf; nop
+set 1,%o0
+call exit; nop
+mov %g0,%i0
+.L5:
+ret; restore
+.type err,#function
+.size err,.-err
+.global getword
+.align 4
+getword:
+save %sp,-96,%sp
+.L8:
+.L9:
+call getchar; nop
+mov %o0,%i3
+mov %i3,%i5
+cmp %i3,-1; be .L11; nop
+mov %i5,%o0
+call isletter; nop
+cmp %o0,0; be .L8; nop
+.L11:
+mov %i0,%i4
+ba .L15; nop
+.L12:
+mov %i4,%i3
+add %i3,1,%i4
+mov %i5,%i2
+stb %i2,[%i3]
+.L13:
+call getchar; nop
+mov %o0,%i5
+.L15:
+mov %i5,%o0
+call isletter; nop
+mov %o0,%i5
+cmp %o0,0; bne .L12; nop
+stb %g0,[%i4]
+mov %i4,%i3
+mov %i0,%i2
+cmp %i3,%i2; bleu .L16; nop
+set 1,%i0
+ba .L7; nop
+.L16:
+mov %g0,%i0
+.L7:
+ret; restore
+.type getword,#function
+.size getword,.-getword
+.global isletter
+.align 4
+isletter:
+cmp %o0,65; bl .L19; nop
+cmp %o0,90; bg .L19; nop
+add %o0,32,%o0
+.L19:
+cmp %o0,97; bl .L21; nop
+cmp %o0,122; bg .L21; nop
+ba .L18; nop
+.L21:
+mov %g0,%o0
+.L18:
+retl; nop
+.type isletter,#function
+.size isletter,.-isletter
+.global lookup
+.align 4
+lookup:
+save %sp,-96,%sp
+ld [%i1],%i4
+cmp %i4,%g0; be .L24; nop
+mov %i0,%o0
+ld [%i1],%i4
+ld [%i4+12],%o1
+call strcmp; nop
+mov %o0,%i5
+cmp %i5,0; bge .L26; nop
+mov %i0,%o0
+ld [%i1],%i4
+add %i4,4,%o1
+call lookup; nop
+mov %o0,%i0
+ba .L23; nop
+.L26:
+cmp %i5,0; ble .L28; nop
+mov %i0,%o0
+ld [%i1],%i4
+add %i4,8,%o1
+call lookup; nop
+mov %o0,%i0
+ba .L23; nop
+.L28:
+ld [%i1],%i0
+ba .L23; nop
+.L24:
+set next,%i4
+ld [%i4],%i4
+cmp %i4,2000; bl .L30; nop
+set .L32,%o0
+call err; nop
+.L30:
+set next,%i4
+ld [%i4],%i4
+sll %i4,4,%i4
+set words,%i3
+st %g0,[%i4+%i3]
+set next,%i4
+ld [%i4],%i4
+sll %i4,4,%i4
+set words+8,%i2
+st %g0,[%i4+%i2]
+set words+4,%i2
+st %g0,[%i4+%i2]
+mov %i0,%o0
+call strlen; nop
+mov %o0,%i4
+add %i4,1,%o0
+call malloc; nop
+set next,%i3
+ld [%i3],%i3
+sll %i3,4,%i3
+set words+12,%i2
+st %o0,[%i3+%i2]
+set next,%i4
+ld [%i4],%i4
+sll %i4,4,%i4
+set words+12,%i3
+ld [%i4+%i3],%i4
+cmp %i4,%g0; bne .L36; nop
+set .L39,%o0
+call err; nop
+.L36:
+set next,%i4
+ld [%i4],%i4
+sll %i4,4,%i4
+set words+12,%i3
+ld [%i4+%i3],%o0
+mov %i0,%o1
+call strcpy; nop
+set next,%i4
+ld [%i4],%i3
+add %i3,1,%i2
+st %i2,[%i4]
+sll %i3,4,%i4
+set words,%i3
+add %i4,%i3,%i4
+st %i4,[%i1]
+mov %i4,%i0
+.L23:
+ret; restore
+.type lookup,#function
+.size lookup,.-lookup
+.global tprint
+.align 4
+tprint:
+save %sp,-96,%sp
+mov %i0,%i5
+cmp %i5,%g0; be .L42; nop
+ld [%i0+4],%o0
+call tprint; nop
+set .L44,%o0
+ld [%i0],%o1
+ld [%i0+12],%o2
+call printf; nop
+ld [%i0+8],%o0
+call tprint; nop
+.L42:
+mov %g0,%i0
+.L41:
+ret; restore
+.type tprint,#function
+.size tprint,.-tprint
+.global strcmp
+.align 4
+strcmp:
+save %sp,-96,%sp
+ba .L47; nop
+.L46:
+mov %i0,%i5
+add %i5,1,%i0
+ldsb [%i5],%i5
+cmp %i5,0; bne .L49; nop
+mov %g0,%i0
+ba .L45; nop
+.L49:
+add %i1,1,%i1
+.L47:
+ldsb [%i0],%i5
+ldsb [%i1],%i4
+cmp %i5,%i4; be .L46; nop
+ldsb [%i0],%i5
+cmp %i5,0; bne .L51; nop
+set -1,%i0
+ba .L45; nop
+.L51:
+ldsb [%i1],%i5
+cmp %i5,0; bne .L53; nop
+set 1,%i0
+ba .L45; nop
+.L53:
+ldsb [%i0],%i5
+ldsb [%i1],%i4
+sub %i5,%i4,%i0
+.L45:
+ret; restore
+.type strcmp,#function
+.size strcmp,.-strcmp
+.section ".bss"
+.global next
+.type next,#object
+.size next,4
+.common next,4,4
+.global words
+.type words,#object
+.size words,32000
+.common words,32000,4
+.section ".rodata"
+.align 1
+.L44:
+.byte 37
+.byte 100
+.byte 9
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L39:
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 119
+.byte 111
+.byte 114
+.byte 100
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 97
+.byte 103
+.byte 101
+.byte 0
+.align 1
+.L32:
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 110
+.byte 111
+.byte 100
+.byte 101
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 97
+.byte 103
+.byte 101
+.byte 0
+.align 1
+.L6:
+.byte 63
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
diff --git a/lcc/sparc/solaris/tst/yacc.1bk b/lcc/sparc/solaris/tst/yacc.1bk
index b08a02f..60de9b5 100755
--- a/lcc/sparc/solaris/tst/yacc.1bk
+++ b/lcc/sparc/solaris/tst/yacc.1bk
@@ -1,10 +1,10 @@
-a
-b
-load
-negate
-push 5
-c
-load
-multiply
-add
-store
+a
+b
+load
+negate
+push 5
+c
+load
+multiply
+add
+store
diff --git a/lcc/sparc/solaris/tst/yacc.2bk b/lcc/sparc/solaris/tst/yacc.2bk
index a84aa5b..9a4fd61 100755
--- a/lcc/sparc/solaris/tst/yacc.2bk
+++ b/lcc/sparc/solaris/tst/yacc.2bk
@@ -1,3 +1,3 @@
-tst/yacc.c:345: warning: missing return value
-tst/yacc.c:349: warning: missing return value
-tst/yacc.c:359: warning: missing return value
+tst/yacc.c:345: warning: missing return value
+tst/yacc.c:349: warning: missing return value
+tst/yacc.c:359: warning: missing return value
diff --git a/lcc/sparc/solaris/tst/yacc.sbk b/lcc/sparc/solaris/tst/yacc.sbk
index 3c29bf5..1368ff5 100755
--- a/lcc/sparc/solaris/tst/yacc.sbk
+++ b/lcc/sparc/solaris/tst/yacc.sbk
@@ -1,2247 +1,2247 @@
-.section ".data"
-.global yyin
-.type yyin,#object
-.size yyin,4
-.align 4
-yyin:
-.word __iob
-.global yyout
-.type yyout,#object
-.size yyout,4
-.align 4
-yyout:
-.word __iob+16
-.global yylex
-.section ".text"
-.align 4
-yylex:
-save %sp,-96,%sp
-ba .L5; nop
-.L4:
-.L7:
-cmp %i5,-1; bl .L8; nop
-cmp %i5,4; bg .L8; nop
-sll %i5,2,%i4
-set .L19+4,%i3
-ld [%i4+%i3],%i4
-jmp %i4; nop
-.section ".rodata"
-.align 4
-.L19:
-.word .L9
-.word .L10
-.word .L13
-.word .L14
-.word .L9
-.word .L16
-.section ".text"
-.L10:
-call yywrap; nop
-cmp %o0,0; be .L9; nop
-mov %g0,%i0
-ba .L3; nop
-.L13:
-set 257,%i0
-ba .L3; nop
-.L14:
-set 258,%i0
-ba .L3; nop
-.L16:
-set yytext,%i4
-ldsb [%i4],%i0
-ba .L3; nop
-.L8:
-set yyout,%i4
-ld [%i4],%o0
-set .L18,%o1
-mov %i5,%o2
-call fprintf; nop
-.L9:
-.L5:
-call yylook; nop
-mov %o0,%i5
-cmp %o0,0; bge .L4; nop
-mov %g0,%i0
-.L3:
-ret; restore
-.type yylex,#function
-.size yylex,.-yylex
-.section ".data"
-.global yyvstop
-.type yyvstop,#object
-.align 4
-yyvstop:
-.word 0x0
-.word 0x4
-.word 0x0
-.word 0x3
-.word 0x4
-.word 0x0
-.word 0x2
-.word 0x4
-.word 0x0
-.word 0x1
-.word 0x4
-.word 0x0
-.word 0x2
-.word 0x0
-.word 0x1
-.word 0x0
-.word 0x0
-.size yyvstop,68
-.global yycrank
-.type yycrank,#object
-.align 1
-yycrank:
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x3
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x4
-.byte 0x1
-.byte 0x3
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x5
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x5
-.byte 0x7
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x1
-.byte 0x6
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x6
-.byte 0x8
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.byte 0x0
-.size yycrank,290
-.global yysvec
-.type yysvec,#object
-.align 4
-yysvec:
-.word 0x0
-.word 0x0
-.word 0x0
-.word yycrank-2
-.word 0x0
-.word 0x0
-.word yycrank
-.word yysvec+12
-.word 0x0
-.word yycrank
-.word 0x0
-.word yyvstop+4
-.word yycrank
-.word 0x0
-.word yyvstop+12
-.word yycrank+4
-.word 0x0
-.word yyvstop+24
-.word yycrank+38
-.word 0x0
-.word yyvstop+36
-.word yycrank
-.word yysvec+60
-.word yyvstop+48
-.word yycrank
-.word yysvec+72
-.word yyvstop+56
-.word 0x0
-.word 0x0
-.word 0x0
-.size yysvec,120
-.global yytop
-.type yytop,#object
-.size yytop,4
-.align 4
-yytop:
-.word yycrank+282
-.global yybgin
-.type yybgin,#object
-.size yybgin,4
-.align 4
-yybgin:
-.word yysvec+12
-.global yymatch
-.type yymatch,#object
-.align 1
-yymatch:
-.byte 0
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 9
-.byte 10
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 9
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 65
-.byte 1
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 0
-.size yymatch,129
-.global yyextra
-.type yyextra,#object
-.align 1
-yyextra:
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.size yyextra,9
-.global yylineno
-.type yylineno,#object
-.size yylineno,4
-.align 4
-yylineno:
-.word 0x1
-.global yysptr
-.type yysptr,#object
-.size yysptr,4
-.align 4
-yysptr:
-.word yysbuf
-.global yyprevious
-.type yyprevious,#object
-.size yyprevious,4
-.align 4
-yyprevious:
-.word 0xa
-.global yylook
-.section ".text"
-.align 4
-yylook:
-save %sp,-96,%sp
-set yymorfg,%l6
-ld [%l6],%l6
-cmp %l6,0; bne .L36; nop
-set yytext,%i2
-ba .L37; nop
-.L36:
-set yymorfg,%l6
-st %g0,[%l6]
-set yyleng,%l6
-ld [%l6],%l6
-set yytext,%l5
-add %l6,%l5,%i2
-.L37:
-.L38:
-set yylstate,%i4
-set yybgin,%l6
-ld [%l6],%l6
-mov %l6,%i5
-set yyestate,%l5
-st %l6,[%l5]
-set yyprevious,%l6
-ld [%l6],%l6
-cmp %l6,10; bne .L42; nop
-add %i5,12,%i5
-.L42:
-.L44:
-ld [%i5],%i3
-mov %i3,%l6
-set yycrank,%l5
-cmp %l6,%l5; bne .L48; nop
-ld [%i5+4],%l7
-mov %l7,%l6
-cmp %l6,%g0; bne .L50; nop
-ba .L95; nop
-.L50:
-ld [%l7],%l6
-set yycrank,%l5
-cmp %l6,%l5; bne .L52; nop
-ba .L95; nop
-.L52:
-.L48:
-mov %i2,%l3
-add %l3,1,%i2
-set yysptr,%l2
-ld [%l2],%l2
-set yysbuf,%l1
-cmp %l2,%l1; bleu .L62; nop
-set yysptr,%l2
-ld [%l2],%l1
-add %l1,-1,%l1
-st %l1,[%l2]
-ldsb [%l1],%l4
-ba .L63; nop
-.L62:
-set yyin,%l2
-ld [%l2],%l2
-ld [%l2],%l1
-sub %l1,1,%l1
-st %l1,[%l2]
-cmp %l1,0; bge .L64; nop
-set yyin,%l2
-ld [%l2],%o0
-call __filbuf; nop
-mov %o0,%l2
-st %l2,[%fp+-4]
-ba .L65; nop
-.L64:
-set yyin,%l2
-ld [%l2],%l2
-add %l2,4,%l2
-ld [%l2],%l1
-add %l1,1,%l0
-st %l0,[%l2]
-ldub [%l1],%l2
-st %l2,[%fp+-4]
-.L65:
-ld [%fp+-4],%l4
-.L63:
-set yytchar,%l2
-st %l4,[%l2]
-cmp %l4,10; bne .L60; nop
-set yylineno,%l2
-ld [%l2],%l1
-add %l1,1,%l1
-st %l1,[%l2]
-set yytchar,%l2
-ld [%l2],%l5
-ba .L61; nop
-.L60:
-set yytchar,%l2
-ld [%l2],%l5
-.L61:
-cmp %l5,-1; bne .L58; nop
-mov %g0,%l6
-ba .L59; nop
-.L58:
-set yytchar,%l2
-ld [%l2],%l6
-.L59:
-mov %l6,%i1
-mov %l6,%l2
-stb %l2,[%l3]
-.L66:
-mov %i3,%i0
-mov %i3,%l3
-set yycrank,%l2
-cmp %l3,%l2; bleu .L67; nop
-sll %i1,1,%l3
-add %l3,%i0,%i3
-mov %i3,%l3
-set yytop,%l2
-ld [%l2],%l2
-cmp %l3,%l2; bgu .L68; nop
-ldsb [%i3],%l3
-smul %l3,12,%l3
-set yysvec,%l2
-add %l3,%l2,%l3
-mov %i5,%l2
-cmp %l3,%l2; bne .L68; nop
-set yysvec,%l3
-ldsb [%i3+1],%l2
-smul %l2,12,%l2
-add %l2,%l3,%l2
-cmp %l2,%l3; bne .L71; nop
-add %i2,-1,%l3
-mov %l3,%i2
-set yytchar,%l2
-ldsb [%l3],%l3
-st %l3,[%l2]
-ld [%l2],%l3
-cmp %l3,10; bne .L73; nop
-set yylineno,%l3
-ld [%l3],%l2
-sub %l2,1,%l2
-st %l2,[%l3]
-.L73:
-set yysptr,%l3
-ld [%l3],%l2
-add %l2,1,%l1
-st %l1,[%l3]
-set yytchar,%l3
-ld [%l3],%l3
-stb %l3,[%l2]
-ba .L95; nop
-.L71:
-mov %i4,%l3
-add %l3,4,%i4
-ldsb [%i3+1],%l2
-smul %l2,12,%l2
-set yysvec,%l1
-add %l2,%l1,%l2
-mov %l2,%i5
-st %l2,[%l3]
-ba .L44; nop
-.L67:
-mov %i3,%l3
-set yycrank,%l2
-cmp %l3,%l2; bgeu .L76; nop
-set yycrank,%l3
-mov %l3,%l2
-mov %i3,%l1
-sub %l2,%l1,%l2
-sra %l2,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l2,2,%l2
-sll %l2,1,%l2
-add %l2,%l3,%l3
-mov %l3,%i0
-mov %l3,%i3
-sll %i1,1,%l3
-add %l3,%i3,%i3
-mov %i3,%l3
-set yytop,%l2
-ld [%l2],%l2
-cmp %l3,%l2; bgu .L78; nop
-ldsb [%i3],%l3
-smul %l3,12,%l3
-set yysvec,%l2
-add %l3,%l2,%l3
-mov %i5,%l2
-cmp %l3,%l2; bne .L78; nop
-set yysvec,%l3
-ldsb [%i3+1],%l2
-smul %l2,12,%l2
-add %l2,%l3,%l2
-cmp %l2,%l3; bne .L80; nop
-add %i2,-1,%l3
-mov %l3,%i2
-set yytchar,%l2
-ldsb [%l3],%l3
-st %l3,[%l2]
-ld [%l2],%l3
-cmp %l3,10; bne .L82; nop
-set yylineno,%l3
-ld [%l3],%l2
-sub %l2,1,%l2
-st %l2,[%l3]
-.L82:
-set yysptr,%l3
-ld [%l3],%l2
-add %l2,1,%l1
-st %l1,[%l3]
-set yytchar,%l3
-ld [%l3],%l3
-stb %l3,[%l2]
-ba .L95; nop
-.L80:
-mov %i4,%l3
-add %l3,4,%i4
-ldsb [%i3+1],%l2
-smul %l2,12,%l2
-set yysvec,%l1
-add %l2,%l1,%l2
-mov %l2,%i5
-st %l2,[%l3]
-ba .L44; nop
-.L78:
-set yymatch,%l3
-ldsb [%i1+%l3],%l3
-sll %l3,1,%l3
-add %l3,%i0,%i3
-mov %i3,%l3
-set yytop,%l2
-ld [%l2],%l2
-cmp %l3,%l2; bgu .L84; nop
-ldsb [%i3],%l3
-smul %l3,12,%l3
-set yysvec,%l2
-add %l3,%l2,%l3
-mov %i5,%l2
-cmp %l3,%l2; bne .L84; nop
-set yysvec,%l3
-ldsb [%i3+1],%l2
-smul %l2,12,%l2
-add %l2,%l3,%l2
-cmp %l2,%l3; bne .L86; nop
-add %i2,-1,%l3
-mov %l3,%i2
-set yytchar,%l2
-ldsb [%l3],%l3
-st %l3,[%l2]
-ld [%l2],%l3
-cmp %l3,10; bne .L88; nop
-set yylineno,%l3
-ld [%l3],%l2
-sub %l2,1,%l2
-st %l2,[%l3]
-.L88:
-set yysptr,%l3
-ld [%l3],%l2
-add %l2,1,%l1
-st %l1,[%l3]
-set yytchar,%l3
-ld [%l3],%l3
-stb %l3,[%l2]
-ba .L95; nop
-.L86:
-mov %i4,%l3
-add %l3,4,%i4
-ldsb [%i3+1],%l2
-smul %l2,12,%l2
-set yysvec,%l1
-add %l2,%l1,%l2
-mov %l2,%i5
-st %l2,[%l3]
-ba .L44; nop
-.L84:
-.L76:
-.L68:
-ld [%i5+4],%l3
-mov %l3,%i5
-cmp %l3,%g0; be .L90; nop
-ld [%i5],%l3
-mov %l3,%i3
-set yycrank,%l2
-cmp %l3,%l2; be .L90; nop
-ba .L66; nop
-.L90:
-add %i2,-1,%l3
-mov %l3,%i2
-set yytchar,%l2
-ldsb [%l3],%l3
-st %l3,[%l2]
-ld [%l2],%l3
-cmp %l3,10; bne .L92; nop
-set yylineno,%l3
-ld [%l3],%l2
-sub %l2,1,%l2
-st %l2,[%l3]
-.L92:
-set yysptr,%l3
-ld [%l3],%l2
-add %l2,1,%l1
-st %l1,[%l3]
-set yytchar,%l3
-ld [%l3],%l3
-stb %l3,[%l2]
-ba .L95; nop
-.L94:
-mov %i2,%l6
-add %l6,-1,%i2
-stb %g0,[%l6]
-ld [%i4],%l6
-mov %l6,%l4
-cmp %l4,%g0; be .L97; nop
-set yyfnd,%l4
-ld [%l6+8],%l6
-st %l6,[%l4]
-cmp %l6,%g0; be .L97; nop
-ld [%l4],%l6
-ld [%l6],%l6
-cmp %l6,0; ble .L97; nop
-set yyolsp,%l6
-st %i4,[%l6]
-set yyfnd,%l6
-ld [%l6],%l6
-ld [%l6],%l6
-set yyextra,%l5
-ldsb [%l6+%l5],%l6
-cmp %l6,0; be .L99; nop
-ba .L102; nop
-.L101:
-add %i4,-4,%i4
-mov %i2,%l6
-add %l6,-1,%i2
-set yytchar,%l5
-ldsb [%l6],%l6
-st %l6,[%l5]
-ld [%l5],%l6
-cmp %l6,10; bne .L104; nop
-set yylineno,%l6
-ld [%l6],%l5
-sub %l5,1,%l5
-st %l5,[%l6]
-.L104:
-set yysptr,%l6
-ld [%l6],%l5
-add %l5,1,%l4
-st %l4,[%l6]
-set yytchar,%l6
-ld [%l6],%l6
-stb %l6,[%l5]
-.L102:
-ld [%i4],%l6
-ld [%l6+8],%o0
-set yyfnd,%l6
-ld [%l6],%l6
-ld [%l6],%l6
-neg %l6,%o1
-call yyback; nop
-cmp %o0,1; be .L106; nop
-mov %i4,%l6
-set yylstate,%l5
-cmp %l6,%l5; bgu .L101; nop
-.L106:
-.L99:
-set yyprevious,%l6
-ldsb [%i2],%l5
-st %l5,[%l6]
-set yylsp,%l6
-st %i4,[%l6]
-set yyleng,%l6
-set yytext,%l5
-mov %i2,%l4
-mov %l5,%l3
-sub %l4,%l3,%l4
-add %l4,1,%l4
-st %l4,[%l6]
-ld [%l6],%l6
-stb %g0,[%l6+%l5]
-set yyfnd,%l6
-ld [%l6],%l5
-add %l5,4,%l4
-st %l4,[%l6]
-ld [%l5],%i0
-ba .L35; nop
-.L97:
-set yytchar,%l6
-ldsb [%i2],%l5
-st %l5,[%l6]
-ld [%l6],%l6
-cmp %l6,10; bne .L107; nop
-set yylineno,%l6
-ld [%l6],%l5
-sub %l5,1,%l5
-st %l5,[%l6]
-.L107:
-set yysptr,%l6
-ld [%l6],%l5
-add %l5,1,%l4
-st %l4,[%l6]
-set yytchar,%l6
-ld [%l6],%l6
-stb %l6,[%l5]
-.L95:
-mov %i4,%l6
-add %l6,-4,%i4
-set yylstate,%l5
-cmp %l6,%l5; bgu .L94; nop
-set yytext,%l6
-ldsb [%l6],%l6
-cmp %l6,0; bne .L109; nop
-set yysptr,%l6
-set yysbuf,%l5
-st %l5,[%l6]
-mov %g0,%i0
-ba .L35; nop
-.L109:
-set yysptr,%l3
-ld [%l3],%l3
-set yysbuf,%l2
-cmp %l3,%l2; bleu .L119; nop
-set yysptr,%l3
-ld [%l3],%l2
-add %l2,-1,%l2
-st %l2,[%l3]
-ldsb [%l2],%l4
-ba .L120; nop
-.L119:
-set yyin,%l3
-ld [%l3],%l3
-ld [%l3],%l2
-sub %l2,1,%l2
-st %l2,[%l3]
-cmp %l2,0; bge .L121; nop
-set yyin,%l3
-ld [%l3],%o0
-call __filbuf; nop
-mov %o0,%l3
-st %l3,[%fp+-4]
-ba .L122; nop
-.L121:
-set yyin,%l3
-ld [%l3],%l3
-add %l3,4,%l3
-ld [%l3],%l2
-add %l2,1,%l1
-st %l1,[%l3]
-ldub [%l2],%l3
-st %l3,[%fp+-4]
-.L122:
-ld [%fp+-4],%l4
-.L120:
-set yytchar,%l3
-st %l4,[%l3]
-cmp %l4,10; bne .L117; nop
-set yylineno,%l3
-ld [%l3],%l2
-add %l2,1,%l2
-st %l2,[%l3]
-set yytchar,%l3
-ld [%l3],%l5
-ba .L118; nop
-.L117:
-set yytchar,%l3
-ld [%l3],%l5
-.L118:
-cmp %l5,-1; bne .L115; nop
-mov %g0,%l6
-ba .L116; nop
-.L115:
-set yytchar,%l3
-ld [%l3],%l6
-.L116:
-set yytext,%l2
-stb %l6,[%l2]
-set yyprevious,%l2
-sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
-st %l3,[%l2]
-set yyprevious,%l3
-ld [%l3],%l3
-cmp %l3,0; ble .L123; nop
-set yyout,%l3
-ld [%l3],%l3
-ld [%l3],%l2
-sub %l2,1,%l2
-st %l2,[%l3]
-cmp %l2,0; bge .L126; nop
-set yyprevious,%l3
-ld [%l3],%l3
-and %l3,0xff,%l3
-mov %l3,%o0
-set yyout,%l3
-ld [%l3],%o1
-call __flsbuf; nop
-ba .L127; nop
-.L126:
-set yyout,%l3
-ld [%l3],%l3
-add %l3,4,%l3
-ld [%l3],%l2
-add %l2,1,%l1
-st %l1,[%l3]
-set yyprevious,%l3
-ld [%l3],%l3
-stb %l3,[%l2]
-.L127:
-.L123:
-set yytext,%i2
-ba .L38; nop
-.L35:
-ret; restore
-.type yylook,#function
-.size yylook,.-yylook
-.global yyback
-.align 4
-yyback:
-save %sp,-96,%sp
-mov %i0,%i5
-cmp %i5,%g0; bne .L132; nop
-mov %g0,%i0
-ba .L128; nop
-.L131:
-mov %i0,%i5
-add %i5,4,%i0
-ld [%i5],%i5
-cmp %i5,%i1; bne .L134; nop
-set 1,%i0
-ba .L128; nop
-.L134:
-.L132:
-ld [%i0],%i5
-cmp %i5,0; bne .L131; nop
-mov %g0,%i0
-.L128:
-ret; restore
-.type yyback,#function
-.size yyback,.-yyback
-.global yyinput
-.align 4
-yyinput:
-save %sp,-96,%sp
-set yysptr,%i1
-ld [%i1],%i1
-set yysbuf,%i0
-cmp %i1,%i0; bleu .L145; nop
-set yysptr,%i1
-ld [%i1],%i0
-add %i0,-1,%i0
-st %i0,[%i1]
-ldsb [%i0],%i3
-ba .L146; nop
-.L145:
-set yyin,%i1
-ld [%i1],%i1
-ld [%i1],%i0
-sub %i0,1,%i0
-st %i0,[%i1]
-cmp %i0,0; bge .L147; nop
-set yyin,%i1
-ld [%i1],%o0
-call __filbuf; nop
-mov %o0,%i1
-mov %i1,%i2
-ba .L148; nop
-.L147:
-set yyin,%i1
-ld [%i1],%i1
-add %i1,4,%i1
-ld [%i1],%i0
-add %i0,1,%l7
-st %l7,[%i1]
-ldub [%i0],%i2
-.L148:
-mov %i2,%i3
-.L146:
-set yytchar,%i1
-st %i3,[%i1]
-cmp %i3,10; bne .L143; nop
-set yylineno,%i1
-ld [%i1],%i0
-add %i0,1,%i0
-st %i0,[%i1]
-set yytchar,%i1
-ld [%i1],%i4
-ba .L144; nop
-.L143:
-set yytchar,%i1
-ld [%i1],%i4
-.L144:
-cmp %i4,-1; bne .L141; nop
-mov %g0,%i5
-ba .L142; nop
-.L141:
-set yytchar,%i1
-ld [%i1],%i5
-.L142:
-mov %i5,%i0
-.L136:
-ret; restore
-.type yyinput,#function
-.size yyinput,.-yyinput
-.global yyoutput
-.align 4
-yyoutput:
-save %sp,-96,%sp
-set yyout,%i5
-ld [%i5],%i5
-ld [%i5],%i4
-sub %i4,1,%i4
-st %i4,[%i5]
-cmp %i4,0; bge .L151; nop
-mov %i0,%i5
-and %i5,0xff,%i5
-mov %i5,%o0
-set yyout,%i5
-ld [%i5],%o1
-call __flsbuf; nop
-ba .L152; nop
-.L151:
-set yyout,%i5
-ld [%i5],%i5
-add %i5,4,%i5
-ld [%i5],%i4
-add %i4,1,%i3
-st %i3,[%i5]
-mov %i0,%i5
-stb %i5,[%i4]
-.L152:
-mov %g0,%i0
-.L149:
-ret; restore
-.type yyoutput,#function
-.size yyoutput,.-yyoutput
-.global yyunput
-.align 4
-yyunput:
-save %sp,-96,%sp
-set yytchar,%i5
-st %i0,[%i5]
-ld [%i5],%i5
-cmp %i5,10; bne .L154; nop
-set yylineno,%i5
-ld [%i5],%i4
-sub %i4,1,%i4
-st %i4,[%i5]
-.L154:
-set yysptr,%i5
-ld [%i5],%i4
-add %i4,1,%i3
-st %i3,[%i5]
-set yytchar,%i5
-ld [%i5],%i5
-stb %i5,[%i4]
-mov %g0,%i0
-.L153:
-ret; restore
-.type yyunput,#function
-.size yyunput,.-yyunput
-.global main
-.align 4
-main:
-save %sp,-96,%sp
-call yyparse; nop
-mov %g0,%i0
-.L156:
-ret; restore
-.type main,#function
-.size main,.-main
-.global yyerror
-.align 4
-yyerror:
-save %sp,-96,%sp
-set .L158,%o0
-mov %i0,%o1
-call printf; nop
-mov %g0,%i0
-.L157:
-ret; restore
-.type yyerror,#function
-.size yyerror,.-yyerror
-.section ".data"
-.global yyexca
-.type yyexca,#object
-.align 2
-yyexca:
-.half 0xffffffff
-.half 0x1
-.half 0x0
-.half 0xffffffff
-.half 0xfffffffe
-.half 0x0
-.size yyexca,12
-.global yyact
-.type yyact,#object
-.align 2
-yyact:
-.half 0xc
-.half 0x2
-.half 0x9
-.half 0x8
-.half 0x11
-.half 0xb
-.half 0x19
-.half 0x11
-.half 0xf
-.half 0x12
-.half 0x10
-.half 0xa
-.half 0x12
-.half 0x11
-.half 0xf
-.half 0x7
-.half 0x10
-.half 0xd
-.half 0x12
-.half 0x5
-.half 0x3
-.half 0x1
-.half 0x0
-.half 0x13
-.half 0x14
-.half 0x0
-.half 0x0
-.half 0x15
-.half 0x16
-.half 0x17
-.half 0x18
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x6
-.half 0xe
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x4
-.half 0x6
-.size yyact,498
-.global yypact
-.type yypact,#object
-.align 2
-yypact:
-.half 0xfffffc18
-.half 0xfffffff7
-.half 0xfffffc18
-.half 0x5
-.half 0xfffffff9
-.half 0xffffffc5
-.half 0xfffffc18
-.half 0xfffffc18
-.half 0xfffffc18
-.half 0xffffffd8
-.half 0xffffffe3
-.half 0xffffffd8
-.half 0xffffffd8
-.half 0xfffffc18
-.half 0xfffffc18
-.half 0xffffffd8
-.half 0xffffffd8
-.half 0xffffffd8
-.half 0xffffffd8
-.half 0xffffffda
-.half 0xffffffdd
-.half 0xffffffda
-.half 0xffffffda
-.half 0xfffffc18
-.half 0xfffffc18
-.half 0xfffffc18
-.size yypact,52
-.global yypgo
-.type yypgo,#object
-.align 2
-yypgo:
-.half 0x0
-.half 0x15
-.half 0x14
-.half 0x11
-.half 0xb
-.size yypgo,10
-.global yyr1
-.type yyr1,#object
-.align 2
-yyr1:
-.half 0x0
-.half 0x1
-.half 0x1
-.half 0x1
-.half 0x1
-.half 0x2
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x4
-.half 0x3
-.size yyr1,30
-.global yyr2
-.type yyr2,#object
-.align 2
-yyr2:
-.half 0x0
-.half 0x0
-.half 0x2
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x3
-.half 0x2
-.half 0x3
-.half 0x1
-.half 0x1
-.half 0x1
-.size yyr2,30
-.global yychk
-.type yychk,#object
-.align 2
-yychk:
-.half 0xfffffc18
-.half 0xffffffff
-.half 0xa
-.half 0xfffffffe
-.half 0x100
-.half 0xfffffffd
-.half 0x101
-.half 0xa
-.half 0xa
-.half 0x3d
-.half 0xfffffffc
-.half 0x2d
-.half 0x28
-.half 0xfffffffd
-.half 0x102
-.half 0x2b
-.half 0x2d
-.half 0x2a
-.half 0x2f
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0xfffffffc
-.half 0x29
-.size yychk,52
-.global yydef
-.type yydef,#object
-.align 2
-yydef:
-.half 0x1
-.half 0xfffffffe
-.half 0x2
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0xe
-.half 0x3
-.half 0x4
-.half 0x0
-.half 0x5
-.half 0x0
-.half 0x0
-.half 0xc
-.half 0xd
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0x0
-.half 0xa
-.half 0x0
-.half 0x6
-.half 0x7
-.half 0x8
-.half 0x9
-.half 0xb
-.size yydef,52
-.global yychar
-.type yychar,#object
-.size yychar,4
-.align 4
-yychar:
-.word 0xffffffff
-.global yynerrs
-.type yynerrs,#object
-.size yynerrs,4
-.align 4
-yynerrs:
-.word 0x0
-.global yyerrflag
-.type yyerrflag,#object
-.size yyerrflag,2
-.align 2
-yyerrflag:
-.half 0x0
-.global yyparse
-.section ".text"
-.align 4
-yyparse:
-save %sp,-392,%sp
-mov %g0,%l5
-mov %l5,%i4
-set yychar,%l4
-set -1,%l3
-st %l3,[%l4]
-set yynerrs,%l4
-st %g0,[%l4]
-set yyerrflag,%l4
-sth %l5,[%l4]
-add -302,%fp,%i3
-set yyv-4,%i1
-.L162:
-add %i3,2,%l5
-mov %l5,%i3
-add 0,%fp,%l4
-cmp %l5,%l4; bleu .L163; nop
-set .L166,%o0
-call yyerror; nop
-set 1,%i0
-ba .L159; nop
-.L163:
-sth %i4,[%i3]
-add %i1,4,%i1
-set yyval,%l5
-ld [%l5],%l5
-st %l5,[%i1]
-.L167:
-sll %i4,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-sll %l5,1,%l5
-set yypact,%l4
-ldsh [%l5+%l4],%i2
-sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-cmp %l5,-1000; bg .L168; nop
-ba .L170; nop
-.L168:
-set yychar,%l5
-ld [%l5],%l5
-cmp %l5,0; bge .L171; nop
-call yylex; nop
-set yychar,%l4
-st %o0,[%l4]
-cmp %o0,0; bge .L173; nop
-set yychar,%l5
-st %g0,[%l5]
-.L173:
-.L171:
-sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-set yychar,%l4
-ld [%l4],%l4
-add %l5,%l4,%l5
-mov %l5,%i2
-sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-cmp %l5,0; bl .L177; nop
-sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-cmp %l5,249; bl .L175; nop
-.L177:
-ba .L170; nop
-.L175:
-sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-sll %l5,1,%l5
-set yyact,%l4
-ldsh [%l5+%l4],%l5
-mov %l5,%i2
-sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-sll %l5,1,%l5
-set yychk,%l4
-ldsh [%l5+%l4],%l5
-set yychar,%l4
-ld [%l4],%l4
-cmp %l5,%l4; bne .L178; nop
-set yychar,%l5
-set -1,%l4
-st %l4,[%l5]
-set yyval,%l5
-set yylval,%l4
-ld [%l4],%l4
-st %l4,[%l5]
-mov %i2,%i4
-set yyerrflag,%l5
-ldsh [%l5],%l5
-cmp %l5,0; ble .L162; nop
-set yyerrflag,%l5
-ldsh [%l5],%l4
-sub %l4,1,%l4
-sth %l4,[%l5]
-ba .L162; nop
-.L178:
-.L170:
-sll %i4,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-sll %l5,1,%l5
-set yydef,%l4
-ldsh [%l5+%l4],%l5
-mov %l5,%i2
-sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-cmp %l5,-2; bne .L182; nop
-set yychar,%l5
-ld [%l5],%l5
-cmp %l5,0; bge .L184; nop
-call yylex; nop
-set yychar,%l4
-st %o0,[%l4]
-cmp %o0,0; bge .L186; nop
-set yychar,%l5
-st %g0,[%l5]
-.L186:
-.L184:
-set yyexca,%i0
-ba .L191; nop
-.L188:
-.L189:
-add %i0,4,%i0
-.L191:
-ldsh [%i0],%l5
-cmp %l5,-1; bne .L188; nop
-ldsh [%i0+2],%l5
-sll %i4,8*(4-2),%l4; sra %l4,8*(4-2),%l4
-cmp %l5,%l4; bne .L188; nop
-ba .L193; nop
-.L192:
-ldsh [%i0],%l5
-set yychar,%l4
-ld [%l4],%l4
-cmp %l5,%l4; bne .L195; nop
-ba .L194; nop
-.L195:
-.L193:
-add %i0,4,%l5
-mov %l5,%i0
-ldsh [%l5],%l5
-cmp %l5,0; bge .L192; nop
-.L194:
-ldsh [%i0+2],%l5
-mov %l5,%i2
-sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-cmp %l5,0; bge .L197; nop
-mov %g0,%i0
-ba .L159; nop
-.L197:
-.L182:
-sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-cmp %l5,0; bne .L199; nop
-set yyerrflag,%l4
-ldsh [%l4],%l5
-cmp %l5,0; bl .L201; nop
-cmp %l5,3; bg .L201; nop
-sll %l5,2,%l4
-set .L217,%l3
-ld [%l4+%l3],%l4
-jmp %l4; nop
-.section ".rodata"
-.align 4
-.L217:
-.word .L204
-.word .L207
-.word .L207
-.word .L214
-.section ".text"
-.L204:
-set .L205,%o0
-call yyerror; nop
-.L206:
-set yynerrs,%l4
-ld [%l4],%l3
-add %l3,1,%l3
-st %l3,[%l4]
-.L207:
-set yyerrflag,%l4
-set 3,%l3
-sth %l3,[%l4]
-ba .L209; nop
-.L208:
-ldsh [%i3],%l4
-sll %l4,1,%l4
-set yypact,%l3
-ldsh [%l4+%l3],%l4
-add %l4,256,%l4
-mov %l4,%i2
-sll %i2,8*(4-2),%l4; sra %l4,8*(4-2),%l4
-cmp %l4,0; bl .L211; nop
-cmp %l4,249; bge .L211; nop
-sll %l4,1,%l4
-set yyact,%l3
-ldsh [%l4+%l3],%l4
-sll %l4,1,%l4
-set yychk,%l3
-ldsh [%l4+%l3],%l4
-cmp %l4,256; bne .L211; nop
-sll %i2,8*(4-2),%l4; sra %l4,8*(4-2),%l4
-sll %l4,1,%l4
-set yyact,%l3
-ldsh [%l4+%l3],%i4
-ba .L162; nop
-.L211:
-ldsh [%i3],%l4
-sll %l4,1,%l4
-set yypact,%l3
-ldsh [%l4+%l3],%i2
-add %i3,-2,%i3
-add %i1,-4,%i1
-.L209:
-mov %i3,%l4
-add -300,%fp,%l3
-cmp %l4,%l3; bgeu .L208; nop
-.L213:
-set 1,%i0
-ba .L159; nop
-.L214:
-set yychar,%l4
-ld [%l4],%l4
-cmp %l4,0; bne .L215; nop
-ba .L213; nop
-.L215:
-set yychar,%l4
-set -1,%l3
-st %l3,[%l4]
-ba .L167; nop
-.L201:
-.L199:
-sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-sll %l5,1,%l5
-set yyr2,%l4
-add %l5,%l4,%l4
-ldsh [%l4],%l3
-sll %l3,1,%l3
-sub %i3,%l3,%i3
-mov %i1,%i5
-ldsh [%l4],%l4
-sll %l4,2,%l4
-sub %i1,%l4,%i1
-set yyval,%l4
-ld [%i1+4],%l3
-st %l3,[%l4]
-mov %i2,%l6
-set yyr1,%l4
-ldsh [%l5+%l4],%i2
-sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-sll %l5,1,%l5
-set yypgo,%l4
-ldsh [%l5+%l4],%l5
-ldsh [%i3],%l4
-add %l5,%l4,%l5
-add %l5,1,%l5
-mov %l5,%l7
-sll %l7,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-cmp %l5,249; bge .L220; nop
-sll %l5,1,%l5
-set yyact,%l4
-ldsh [%l5+%l4],%l5
-mov %l5,%i4
-sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-sll %l5,1,%l5
-set yychk,%l4
-ldsh [%l5+%l4],%l5
-sll %i2,8*(4-2),%l4; sra %l4,8*(4-2),%l4
-neg %l4,%l4
-cmp %l5,%l4; be .L218; nop
-.L220:
-sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-sll %l5,1,%l5
-set yypgo,%l4
-ldsh [%l5+%l4],%l5
-sll %l5,1,%l5
-set yyact,%l4
-ldsh [%l5+%l4],%i4
-.L218:
-sll %l6,8*(4-2),%l5; sra %l5,8*(4-2),%l5
-cmp %l5,4; bl .L162; nop
-cmp %l5,14; bg .L162; nop
-sll %l5,2,%l4
-set .L242-16,%l3
-ld [%l4+%l3],%l4
-jmp %l4; nop
-.section ".rodata"
-.align 4
-.L242:
-.word .L224
-.word .L225
-.word .L227
-.word .L229
-.word .L231
-.word .L233
-.word .L235
-.word .L162
-.word .L237
-.word .L239
-.word .L241
-.section ".text"
-.L224:
-set yyerrflag,%l4
-sth %g0,[%l4]
-ba .L162; nop
-.L225:
-set .L226,%o0
-call printf; nop
-ba .L162; nop
-.L227:
-set .L228,%o0
-call printf; nop
-ba .L162; nop
-.L229:
-set .L230,%o0
-call printf; nop
-ba .L162; nop
-.L231:
-set .L232,%o0
-call printf; nop
-ba .L162; nop
-.L233:
-set .L234,%o0
-call printf; nop
-ba .L162; nop
-.L235:
-set .L236,%o0
-call printf; nop
-ba .L162; nop
-.L237:
-set .L238,%o0
-call printf; nop
-ba .L162; nop
-.L239:
-set .L240,%o0
-set yytext,%o1
-call printf; nop
-ba .L162; nop
-.L241:
-set .L158,%o0
-set yytext,%o1
-call printf; nop
-ba .L162; nop
-.L159:
-ret; restore
-.type yyparse,#function
-.size yyparse,.-yyparse
-.global yywrap
-.align 4
-yywrap:
-set 1,%o0
-.L244:
-retl; nop
-.type yywrap,#function
-.size yywrap,.-yywrap
-.section ".bss"
-.global yyv
-.type yyv,#object
-.size yyv,600
-.common yyv,600,4
-.global yyfnd
-.type yyfnd,#object
-.size yyfnd,4
-.common yyfnd,4,4
-.global yyolsp
-.type yyolsp,#object
-.size yyolsp,4
-.common yyolsp,4,4
-.global yylsp
-.type yylsp,#object
-.size yylsp,4
-.common yylsp,4,4
-.global yylstate
-.type yylstate,#object
-.size yylstate,800
-.common yylstate,800,4
-.global yyestate
-.type yyestate,#object
-.size yyestate,4
-.common yyestate,4,4
-.global yytchar
-.type yytchar,#object
-.size yytchar,4
-.common yytchar,4,4
-.global yysbuf
-.type yysbuf,#object
-.size yysbuf,200
-.common yysbuf,200,1
-.global yymorfg
-.type yymorfg,#object
-.size yymorfg,4
-.common yymorfg,4,4
-.global yytext
-.type yytext,#object
-.size yytext,200
-.common yytext,200,1
-.global yyleng
-.type yyleng,#object
-.size yyleng,4
-.common yyleng,4,4
-.global yyval
-.type yyval,#object
-.size yyval,4
-.common yyval,4,4
-.global yylval
-.type yylval,#object
-.size yylval,4
-.common yylval,4,4
-.section ".rodata"
-.align 1
-.L240:
-.byte 112
-.byte 117
-.byte 115
-.byte 104
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L238:
-.byte 108
-.byte 111
-.byte 97
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L236:
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L234:
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L232:
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 121
-.byte 10
-.byte 0
-.align 1
-.L230:
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 10
-.byte 97
-.byte 100
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L228:
-.byte 97
-.byte 100
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.L226:
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.L205:
-.byte 115
-.byte 121
-.byte 110
-.byte 116
-.byte 97
-.byte 120
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 0
-.align 1
-.L166:
-.byte 121
-.byte 97
-.byte 99
-.byte 99
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 1
-.L158:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.L18:
-.byte 98
-.byte 97
-.byte 100
-.byte 32
-.byte 115
-.byte 119
-.byte 105
-.byte 116
-.byte 99
-.byte 104
-.byte 32
-.byte 121
-.byte 121
-.byte 108
-.byte 111
-.byte 111
-.byte 107
-.byte 32
-.byte 37
-.byte 100
-.byte 0
+.section ".data"
+.global yyin
+.type yyin,#object
+.size yyin,4
+.align 4
+yyin:
+.word __iob
+.global yyout
+.type yyout,#object
+.size yyout,4
+.align 4
+yyout:
+.word __iob+16
+.global yylex
+.section ".text"
+.align 4
+yylex:
+save %sp,-96,%sp
+ba .L5; nop
+.L4:
+.L7:
+cmp %i5,-1; bl .L8; nop
+cmp %i5,4; bg .L8; nop
+sll %i5,2,%i4
+set .L19+4,%i3
+ld [%i4+%i3],%i4
+jmp %i4; nop
+.section ".rodata"
+.align 4
+.L19:
+.word .L9
+.word .L10
+.word .L13
+.word .L14
+.word .L9
+.word .L16
+.section ".text"
+.L10:
+call yywrap; nop
+cmp %o0,0; be .L9; nop
+mov %g0,%i0
+ba .L3; nop
+.L13:
+set 257,%i0
+ba .L3; nop
+.L14:
+set 258,%i0
+ba .L3; nop
+.L16:
+set yytext,%i4
+ldsb [%i4],%i0
+ba .L3; nop
+.L8:
+set yyout,%i4
+ld [%i4],%o0
+set .L18,%o1
+mov %i5,%o2
+call fprintf; nop
+.L9:
+.L5:
+call yylook; nop
+mov %o0,%i5
+cmp %o0,0; bge .L4; nop
+mov %g0,%i0
+.L3:
+ret; restore
+.type yylex,#function
+.size yylex,.-yylex
+.section ".data"
+.global yyvstop
+.type yyvstop,#object
+.align 4
+yyvstop:
+.word 0x0
+.word 0x4
+.word 0x0
+.word 0x3
+.word 0x4
+.word 0x0
+.word 0x2
+.word 0x4
+.word 0x0
+.word 0x1
+.word 0x4
+.word 0x0
+.word 0x2
+.word 0x0
+.word 0x1
+.word 0x0
+.word 0x0
+.size yyvstop,68
+.global yycrank
+.type yycrank,#object
+.align 1
+yycrank:
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x3
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x4
+.byte 0x1
+.byte 0x3
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x5
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x5
+.byte 0x7
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x1
+.byte 0x6
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x6
+.byte 0x8
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.byte 0x0
+.size yycrank,290
+.global yysvec
+.type yysvec,#object
+.align 4
+yysvec:
+.word 0x0
+.word 0x0
+.word 0x0
+.word yycrank-2
+.word 0x0
+.word 0x0
+.word yycrank
+.word yysvec+12
+.word 0x0
+.word yycrank
+.word 0x0
+.word yyvstop+4
+.word yycrank
+.word 0x0
+.word yyvstop+12
+.word yycrank+4
+.word 0x0
+.word yyvstop+24
+.word yycrank+38
+.word 0x0
+.word yyvstop+36
+.word yycrank
+.word yysvec+60
+.word yyvstop+48
+.word yycrank
+.word yysvec+72
+.word yyvstop+56
+.word 0x0
+.word 0x0
+.word 0x0
+.size yysvec,120
+.global yytop
+.type yytop,#object
+.size yytop,4
+.align 4
+yytop:
+.word yycrank+282
+.global yybgin
+.type yybgin,#object
+.size yybgin,4
+.align 4
+yybgin:
+.word yysvec+12
+.global yymatch
+.type yymatch,#object
+.align 1
+yymatch:
+.byte 0
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 9
+.byte 10
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 9
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 65
+.byte 1
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 0
+.size yymatch,129
+.global yyextra
+.type yyextra,#object
+.align 1
+yyextra:
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.size yyextra,9
+.global yylineno
+.type yylineno,#object
+.size yylineno,4
+.align 4
+yylineno:
+.word 0x1
+.global yysptr
+.type yysptr,#object
+.size yysptr,4
+.align 4
+yysptr:
+.word yysbuf
+.global yyprevious
+.type yyprevious,#object
+.size yyprevious,4
+.align 4
+yyprevious:
+.word 0xa
+.global yylook
+.section ".text"
+.align 4
+yylook:
+save %sp,-96,%sp
+set yymorfg,%l6
+ld [%l6],%l6
+cmp %l6,0; bne .L36; nop
+set yytext,%i2
+ba .L37; nop
+.L36:
+set yymorfg,%l6
+st %g0,[%l6]
+set yyleng,%l6
+ld [%l6],%l6
+set yytext,%l5
+add %l6,%l5,%i2
+.L37:
+.L38:
+set yylstate,%i4
+set yybgin,%l6
+ld [%l6],%l6
+mov %l6,%i5
+set yyestate,%l5
+st %l6,[%l5]
+set yyprevious,%l6
+ld [%l6],%l6
+cmp %l6,10; bne .L42; nop
+add %i5,12,%i5
+.L42:
+.L44:
+ld [%i5],%i3
+mov %i3,%l6
+set yycrank,%l5
+cmp %l6,%l5; bne .L48; nop
+ld [%i5+4],%l7
+mov %l7,%l6
+cmp %l6,%g0; bne .L50; nop
+ba .L95; nop
+.L50:
+ld [%l7],%l6
+set yycrank,%l5
+cmp %l6,%l5; bne .L52; nop
+ba .L95; nop
+.L52:
+.L48:
+mov %i2,%l3
+add %l3,1,%i2
+set yysptr,%l2
+ld [%l2],%l2
+set yysbuf,%l1
+cmp %l2,%l1; bleu .L62; nop
+set yysptr,%l2
+ld [%l2],%l1
+add %l1,-1,%l1
+st %l1,[%l2]
+ldsb [%l1],%l4
+ba .L63; nop
+.L62:
+set yyin,%l2
+ld [%l2],%l2
+ld [%l2],%l1
+sub %l1,1,%l1
+st %l1,[%l2]
+cmp %l1,0; bge .L64; nop
+set yyin,%l2
+ld [%l2],%o0
+call __filbuf; nop
+mov %o0,%l2
+st %l2,[%fp+-4]
+ba .L65; nop
+.L64:
+set yyin,%l2
+ld [%l2],%l2
+add %l2,4,%l2
+ld [%l2],%l1
+add %l1,1,%l0
+st %l0,[%l2]
+ldub [%l1],%l2
+st %l2,[%fp+-4]
+.L65:
+ld [%fp+-4],%l4
+.L63:
+set yytchar,%l2
+st %l4,[%l2]
+cmp %l4,10; bne .L60; nop
+set yylineno,%l2
+ld [%l2],%l1
+add %l1,1,%l1
+st %l1,[%l2]
+set yytchar,%l2
+ld [%l2],%l5
+ba .L61; nop
+.L60:
+set yytchar,%l2
+ld [%l2],%l5
+.L61:
+cmp %l5,-1; bne .L58; nop
+mov %g0,%l6
+ba .L59; nop
+.L58:
+set yytchar,%l2
+ld [%l2],%l6
+.L59:
+mov %l6,%i1
+mov %l6,%l2
+stb %l2,[%l3]
+.L66:
+mov %i3,%i0
+mov %i3,%l3
+set yycrank,%l2
+cmp %l3,%l2; bleu .L67; nop
+sll %i1,1,%l3
+add %l3,%i0,%i3
+mov %i3,%l3
+set yytop,%l2
+ld [%l2],%l2
+cmp %l3,%l2; bgu .L68; nop
+ldsb [%i3],%l3
+smul %l3,12,%l3
+set yysvec,%l2
+add %l3,%l2,%l3
+mov %i5,%l2
+cmp %l3,%l2; bne .L68; nop
+set yysvec,%l3
+ldsb [%i3+1],%l2
+smul %l2,12,%l2
+add %l2,%l3,%l2
+cmp %l2,%l3; bne .L71; nop
+add %i2,-1,%l3
+mov %l3,%i2
+set yytchar,%l2
+ldsb [%l3],%l3
+st %l3,[%l2]
+ld [%l2],%l3
+cmp %l3,10; bne .L73; nop
+set yylineno,%l3
+ld [%l3],%l2
+sub %l2,1,%l2
+st %l2,[%l3]
+.L73:
+set yysptr,%l3
+ld [%l3],%l2
+add %l2,1,%l1
+st %l1,[%l3]
+set yytchar,%l3
+ld [%l3],%l3
+stb %l3,[%l2]
+ba .L95; nop
+.L71:
+mov %i4,%l3
+add %l3,4,%i4
+ldsb [%i3+1],%l2
+smul %l2,12,%l2
+set yysvec,%l1
+add %l2,%l1,%l2
+mov %l2,%i5
+st %l2,[%l3]
+ba .L44; nop
+.L67:
+mov %i3,%l3
+set yycrank,%l2
+cmp %l3,%l2; bgeu .L76; nop
+set yycrank,%l3
+mov %l3,%l2
+mov %i3,%l1
+sub %l2,%l1,%l2
+sra %l2,31,%g1; wr %g0,%g1,%y; nop; nop; nop; sdiv %l2,2,%l2
+sll %l2,1,%l2
+add %l2,%l3,%l3
+mov %l3,%i0
+mov %l3,%i3
+sll %i1,1,%l3
+add %l3,%i3,%i3
+mov %i3,%l3
+set yytop,%l2
+ld [%l2],%l2
+cmp %l3,%l2; bgu .L78; nop
+ldsb [%i3],%l3
+smul %l3,12,%l3
+set yysvec,%l2
+add %l3,%l2,%l3
+mov %i5,%l2
+cmp %l3,%l2; bne .L78; nop
+set yysvec,%l3
+ldsb [%i3+1],%l2
+smul %l2,12,%l2
+add %l2,%l3,%l2
+cmp %l2,%l3; bne .L80; nop
+add %i2,-1,%l3
+mov %l3,%i2
+set yytchar,%l2
+ldsb [%l3],%l3
+st %l3,[%l2]
+ld [%l2],%l3
+cmp %l3,10; bne .L82; nop
+set yylineno,%l3
+ld [%l3],%l2
+sub %l2,1,%l2
+st %l2,[%l3]
+.L82:
+set yysptr,%l3
+ld [%l3],%l2
+add %l2,1,%l1
+st %l1,[%l3]
+set yytchar,%l3
+ld [%l3],%l3
+stb %l3,[%l2]
+ba .L95; nop
+.L80:
+mov %i4,%l3
+add %l3,4,%i4
+ldsb [%i3+1],%l2
+smul %l2,12,%l2
+set yysvec,%l1
+add %l2,%l1,%l2
+mov %l2,%i5
+st %l2,[%l3]
+ba .L44; nop
+.L78:
+set yymatch,%l3
+ldsb [%i1+%l3],%l3
+sll %l3,1,%l3
+add %l3,%i0,%i3
+mov %i3,%l3
+set yytop,%l2
+ld [%l2],%l2
+cmp %l3,%l2; bgu .L84; nop
+ldsb [%i3],%l3
+smul %l3,12,%l3
+set yysvec,%l2
+add %l3,%l2,%l3
+mov %i5,%l2
+cmp %l3,%l2; bne .L84; nop
+set yysvec,%l3
+ldsb [%i3+1],%l2
+smul %l2,12,%l2
+add %l2,%l3,%l2
+cmp %l2,%l3; bne .L86; nop
+add %i2,-1,%l3
+mov %l3,%i2
+set yytchar,%l2
+ldsb [%l3],%l3
+st %l3,[%l2]
+ld [%l2],%l3
+cmp %l3,10; bne .L88; nop
+set yylineno,%l3
+ld [%l3],%l2
+sub %l2,1,%l2
+st %l2,[%l3]
+.L88:
+set yysptr,%l3
+ld [%l3],%l2
+add %l2,1,%l1
+st %l1,[%l3]
+set yytchar,%l3
+ld [%l3],%l3
+stb %l3,[%l2]
+ba .L95; nop
+.L86:
+mov %i4,%l3
+add %l3,4,%i4
+ldsb [%i3+1],%l2
+smul %l2,12,%l2
+set yysvec,%l1
+add %l2,%l1,%l2
+mov %l2,%i5
+st %l2,[%l3]
+ba .L44; nop
+.L84:
+.L76:
+.L68:
+ld [%i5+4],%l3
+mov %l3,%i5
+cmp %l3,%g0; be .L90; nop
+ld [%i5],%l3
+mov %l3,%i3
+set yycrank,%l2
+cmp %l3,%l2; be .L90; nop
+ba .L66; nop
+.L90:
+add %i2,-1,%l3
+mov %l3,%i2
+set yytchar,%l2
+ldsb [%l3],%l3
+st %l3,[%l2]
+ld [%l2],%l3
+cmp %l3,10; bne .L92; nop
+set yylineno,%l3
+ld [%l3],%l2
+sub %l2,1,%l2
+st %l2,[%l3]
+.L92:
+set yysptr,%l3
+ld [%l3],%l2
+add %l2,1,%l1
+st %l1,[%l3]
+set yytchar,%l3
+ld [%l3],%l3
+stb %l3,[%l2]
+ba .L95; nop
+.L94:
+mov %i2,%l6
+add %l6,-1,%i2
+stb %g0,[%l6]
+ld [%i4],%l6
+mov %l6,%l4
+cmp %l4,%g0; be .L97; nop
+set yyfnd,%l4
+ld [%l6+8],%l6
+st %l6,[%l4]
+cmp %l6,%g0; be .L97; nop
+ld [%l4],%l6
+ld [%l6],%l6
+cmp %l6,0; ble .L97; nop
+set yyolsp,%l6
+st %i4,[%l6]
+set yyfnd,%l6
+ld [%l6],%l6
+ld [%l6],%l6
+set yyextra,%l5
+ldsb [%l6+%l5],%l6
+cmp %l6,0; be .L99; nop
+ba .L102; nop
+.L101:
+add %i4,-4,%i4
+mov %i2,%l6
+add %l6,-1,%i2
+set yytchar,%l5
+ldsb [%l6],%l6
+st %l6,[%l5]
+ld [%l5],%l6
+cmp %l6,10; bne .L104; nop
+set yylineno,%l6
+ld [%l6],%l5
+sub %l5,1,%l5
+st %l5,[%l6]
+.L104:
+set yysptr,%l6
+ld [%l6],%l5
+add %l5,1,%l4
+st %l4,[%l6]
+set yytchar,%l6
+ld [%l6],%l6
+stb %l6,[%l5]
+.L102:
+ld [%i4],%l6
+ld [%l6+8],%o0
+set yyfnd,%l6
+ld [%l6],%l6
+ld [%l6],%l6
+neg %l6,%o1
+call yyback; nop
+cmp %o0,1; be .L106; nop
+mov %i4,%l6
+set yylstate,%l5
+cmp %l6,%l5; bgu .L101; nop
+.L106:
+.L99:
+set yyprevious,%l6
+ldsb [%i2],%l5
+st %l5,[%l6]
+set yylsp,%l6
+st %i4,[%l6]
+set yyleng,%l6
+set yytext,%l5
+mov %i2,%l4
+mov %l5,%l3
+sub %l4,%l3,%l4
+add %l4,1,%l4
+st %l4,[%l6]
+ld [%l6],%l6
+stb %g0,[%l6+%l5]
+set yyfnd,%l6
+ld [%l6],%l5
+add %l5,4,%l4
+st %l4,[%l6]
+ld [%l5],%i0
+ba .L35; nop
+.L97:
+set yytchar,%l6
+ldsb [%i2],%l5
+st %l5,[%l6]
+ld [%l6],%l6
+cmp %l6,10; bne .L107; nop
+set yylineno,%l6
+ld [%l6],%l5
+sub %l5,1,%l5
+st %l5,[%l6]
+.L107:
+set yysptr,%l6
+ld [%l6],%l5
+add %l5,1,%l4
+st %l4,[%l6]
+set yytchar,%l6
+ld [%l6],%l6
+stb %l6,[%l5]
+.L95:
+mov %i4,%l6
+add %l6,-4,%i4
+set yylstate,%l5
+cmp %l6,%l5; bgu .L94; nop
+set yytext,%l6
+ldsb [%l6],%l6
+cmp %l6,0; bne .L109; nop
+set yysptr,%l6
+set yysbuf,%l5
+st %l5,[%l6]
+mov %g0,%i0
+ba .L35; nop
+.L109:
+set yysptr,%l3
+ld [%l3],%l3
+set yysbuf,%l2
+cmp %l3,%l2; bleu .L119; nop
+set yysptr,%l3
+ld [%l3],%l2
+add %l2,-1,%l2
+st %l2,[%l3]
+ldsb [%l2],%l4
+ba .L120; nop
+.L119:
+set yyin,%l3
+ld [%l3],%l3
+ld [%l3],%l2
+sub %l2,1,%l2
+st %l2,[%l3]
+cmp %l2,0; bge .L121; nop
+set yyin,%l3
+ld [%l3],%o0
+call __filbuf; nop
+mov %o0,%l3
+st %l3,[%fp+-4]
+ba .L122; nop
+.L121:
+set yyin,%l3
+ld [%l3],%l3
+add %l3,4,%l3
+ld [%l3],%l2
+add %l2,1,%l1
+st %l1,[%l3]
+ldub [%l2],%l3
+st %l3,[%fp+-4]
+.L122:
+ld [%fp+-4],%l4
+.L120:
+set yytchar,%l3
+st %l4,[%l3]
+cmp %l4,10; bne .L117; nop
+set yylineno,%l3
+ld [%l3],%l2
+add %l2,1,%l2
+st %l2,[%l3]
+set yytchar,%l3
+ld [%l3],%l5
+ba .L118; nop
+.L117:
+set yytchar,%l3
+ld [%l3],%l5
+.L118:
+cmp %l5,-1; bne .L115; nop
+mov %g0,%l6
+ba .L116; nop
+.L115:
+set yytchar,%l3
+ld [%l3],%l6
+.L116:
+set yytext,%l2
+stb %l6,[%l2]
+set yyprevious,%l2
+sll %l6,8*(4-1),%l3; sra %l3,8*(4-1),%l3
+st %l3,[%l2]
+set yyprevious,%l3
+ld [%l3],%l3
+cmp %l3,0; ble .L123; nop
+set yyout,%l3
+ld [%l3],%l3
+ld [%l3],%l2
+sub %l2,1,%l2
+st %l2,[%l3]
+cmp %l2,0; bge .L126; nop
+set yyprevious,%l3
+ld [%l3],%l3
+and %l3,0xff,%l3
+mov %l3,%o0
+set yyout,%l3
+ld [%l3],%o1
+call __flsbuf; nop
+ba .L127; nop
+.L126:
+set yyout,%l3
+ld [%l3],%l3
+add %l3,4,%l3
+ld [%l3],%l2
+add %l2,1,%l1
+st %l1,[%l3]
+set yyprevious,%l3
+ld [%l3],%l3
+stb %l3,[%l2]
+.L127:
+.L123:
+set yytext,%i2
+ba .L38; nop
+.L35:
+ret; restore
+.type yylook,#function
+.size yylook,.-yylook
+.global yyback
+.align 4
+yyback:
+save %sp,-96,%sp
+mov %i0,%i5
+cmp %i5,%g0; bne .L132; nop
+mov %g0,%i0
+ba .L128; nop
+.L131:
+mov %i0,%i5
+add %i5,4,%i0
+ld [%i5],%i5
+cmp %i5,%i1; bne .L134; nop
+set 1,%i0
+ba .L128; nop
+.L134:
+.L132:
+ld [%i0],%i5
+cmp %i5,0; bne .L131; nop
+mov %g0,%i0
+.L128:
+ret; restore
+.type yyback,#function
+.size yyback,.-yyback
+.global yyinput
+.align 4
+yyinput:
+save %sp,-96,%sp
+set yysptr,%i1
+ld [%i1],%i1
+set yysbuf,%i0
+cmp %i1,%i0; bleu .L145; nop
+set yysptr,%i1
+ld [%i1],%i0
+add %i0,-1,%i0
+st %i0,[%i1]
+ldsb [%i0],%i3
+ba .L146; nop
+.L145:
+set yyin,%i1
+ld [%i1],%i1
+ld [%i1],%i0
+sub %i0,1,%i0
+st %i0,[%i1]
+cmp %i0,0; bge .L147; nop
+set yyin,%i1
+ld [%i1],%o0
+call __filbuf; nop
+mov %o0,%i1
+mov %i1,%i2
+ba .L148; nop
+.L147:
+set yyin,%i1
+ld [%i1],%i1
+add %i1,4,%i1
+ld [%i1],%i0
+add %i0,1,%l7
+st %l7,[%i1]
+ldub [%i0],%i2
+.L148:
+mov %i2,%i3
+.L146:
+set yytchar,%i1
+st %i3,[%i1]
+cmp %i3,10; bne .L143; nop
+set yylineno,%i1
+ld [%i1],%i0
+add %i0,1,%i0
+st %i0,[%i1]
+set yytchar,%i1
+ld [%i1],%i4
+ba .L144; nop
+.L143:
+set yytchar,%i1
+ld [%i1],%i4
+.L144:
+cmp %i4,-1; bne .L141; nop
+mov %g0,%i5
+ba .L142; nop
+.L141:
+set yytchar,%i1
+ld [%i1],%i5
+.L142:
+mov %i5,%i0
+.L136:
+ret; restore
+.type yyinput,#function
+.size yyinput,.-yyinput
+.global yyoutput
+.align 4
+yyoutput:
+save %sp,-96,%sp
+set yyout,%i5
+ld [%i5],%i5
+ld [%i5],%i4
+sub %i4,1,%i4
+st %i4,[%i5]
+cmp %i4,0; bge .L151; nop
+mov %i0,%i5
+and %i5,0xff,%i5
+mov %i5,%o0
+set yyout,%i5
+ld [%i5],%o1
+call __flsbuf; nop
+ba .L152; nop
+.L151:
+set yyout,%i5
+ld [%i5],%i5
+add %i5,4,%i5
+ld [%i5],%i4
+add %i4,1,%i3
+st %i3,[%i5]
+mov %i0,%i5
+stb %i5,[%i4]
+.L152:
+mov %g0,%i0
+.L149:
+ret; restore
+.type yyoutput,#function
+.size yyoutput,.-yyoutput
+.global yyunput
+.align 4
+yyunput:
+save %sp,-96,%sp
+set yytchar,%i5
+st %i0,[%i5]
+ld [%i5],%i5
+cmp %i5,10; bne .L154; nop
+set yylineno,%i5
+ld [%i5],%i4
+sub %i4,1,%i4
+st %i4,[%i5]
+.L154:
+set yysptr,%i5
+ld [%i5],%i4
+add %i4,1,%i3
+st %i3,[%i5]
+set yytchar,%i5
+ld [%i5],%i5
+stb %i5,[%i4]
+mov %g0,%i0
+.L153:
+ret; restore
+.type yyunput,#function
+.size yyunput,.-yyunput
+.global main
+.align 4
+main:
+save %sp,-96,%sp
+call yyparse; nop
+mov %g0,%i0
+.L156:
+ret; restore
+.type main,#function
+.size main,.-main
+.global yyerror
+.align 4
+yyerror:
+save %sp,-96,%sp
+set .L158,%o0
+mov %i0,%o1
+call printf; nop
+mov %g0,%i0
+.L157:
+ret; restore
+.type yyerror,#function
+.size yyerror,.-yyerror
+.section ".data"
+.global yyexca
+.type yyexca,#object
+.align 2
+yyexca:
+.half 0xffffffff
+.half 0x1
+.half 0x0
+.half 0xffffffff
+.half 0xfffffffe
+.half 0x0
+.size yyexca,12
+.global yyact
+.type yyact,#object
+.align 2
+yyact:
+.half 0xc
+.half 0x2
+.half 0x9
+.half 0x8
+.half 0x11
+.half 0xb
+.half 0x19
+.half 0x11
+.half 0xf
+.half 0x12
+.half 0x10
+.half 0xa
+.half 0x12
+.half 0x11
+.half 0xf
+.half 0x7
+.half 0x10
+.half 0xd
+.half 0x12
+.half 0x5
+.half 0x3
+.half 0x1
+.half 0x0
+.half 0x13
+.half 0x14
+.half 0x0
+.half 0x0
+.half 0x15
+.half 0x16
+.half 0x17
+.half 0x18
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x6
+.half 0xe
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x4
+.half 0x6
+.size yyact,498
+.global yypact
+.type yypact,#object
+.align 2
+yypact:
+.half 0xfffffc18
+.half 0xfffffff7
+.half 0xfffffc18
+.half 0x5
+.half 0xfffffff9
+.half 0xffffffc5
+.half 0xfffffc18
+.half 0xfffffc18
+.half 0xfffffc18
+.half 0xffffffd8
+.half 0xffffffe3
+.half 0xffffffd8
+.half 0xffffffd8
+.half 0xfffffc18
+.half 0xfffffc18
+.half 0xffffffd8
+.half 0xffffffd8
+.half 0xffffffd8
+.half 0xffffffd8
+.half 0xffffffda
+.half 0xffffffdd
+.half 0xffffffda
+.half 0xffffffda
+.half 0xfffffc18
+.half 0xfffffc18
+.half 0xfffffc18
+.size yypact,52
+.global yypgo
+.type yypgo,#object
+.align 2
+yypgo:
+.half 0x0
+.half 0x15
+.half 0x14
+.half 0x11
+.half 0xb
+.size yypgo,10
+.global yyr1
+.type yyr1,#object
+.align 2
+yyr1:
+.half 0x0
+.half 0x1
+.half 0x1
+.half 0x1
+.half 0x1
+.half 0x2
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x4
+.half 0x3
+.size yyr1,30
+.global yyr2
+.type yyr2,#object
+.align 2
+yyr2:
+.half 0x0
+.half 0x0
+.half 0x2
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x3
+.half 0x2
+.half 0x3
+.half 0x1
+.half 0x1
+.half 0x1
+.size yyr2,30
+.global yychk
+.type yychk,#object
+.align 2
+yychk:
+.half 0xfffffc18
+.half 0xffffffff
+.half 0xa
+.half 0xfffffffe
+.half 0x100
+.half 0xfffffffd
+.half 0x101
+.half 0xa
+.half 0xa
+.half 0x3d
+.half 0xfffffffc
+.half 0x2d
+.half 0x28
+.half 0xfffffffd
+.half 0x102
+.half 0x2b
+.half 0x2d
+.half 0x2a
+.half 0x2f
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0xfffffffc
+.half 0x29
+.size yychk,52
+.global yydef
+.type yydef,#object
+.align 2
+yydef:
+.half 0x1
+.half 0xfffffffe
+.half 0x2
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0xe
+.half 0x3
+.half 0x4
+.half 0x0
+.half 0x5
+.half 0x0
+.half 0x0
+.half 0xc
+.half 0xd
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0x0
+.half 0xa
+.half 0x0
+.half 0x6
+.half 0x7
+.half 0x8
+.half 0x9
+.half 0xb
+.size yydef,52
+.global yychar
+.type yychar,#object
+.size yychar,4
+.align 4
+yychar:
+.word 0xffffffff
+.global yynerrs
+.type yynerrs,#object
+.size yynerrs,4
+.align 4
+yynerrs:
+.word 0x0
+.global yyerrflag
+.type yyerrflag,#object
+.size yyerrflag,2
+.align 2
+yyerrflag:
+.half 0x0
+.global yyparse
+.section ".text"
+.align 4
+yyparse:
+save %sp,-392,%sp
+mov %g0,%l5
+mov %l5,%i4
+set yychar,%l4
+set -1,%l3
+st %l3,[%l4]
+set yynerrs,%l4
+st %g0,[%l4]
+set yyerrflag,%l4
+sth %l5,[%l4]
+add -302,%fp,%i3
+set yyv-4,%i1
+.L162:
+add %i3,2,%l5
+mov %l5,%i3
+add 0,%fp,%l4
+cmp %l5,%l4; bleu .L163; nop
+set .L166,%o0
+call yyerror; nop
+set 1,%i0
+ba .L159; nop
+.L163:
+sth %i4,[%i3]
+add %i1,4,%i1
+set yyval,%l5
+ld [%l5],%l5
+st %l5,[%i1]
+.L167:
+sll %i4,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+sll %l5,1,%l5
+set yypact,%l4
+ldsh [%l5+%l4],%i2
+sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+cmp %l5,-1000; bg .L168; nop
+ba .L170; nop
+.L168:
+set yychar,%l5
+ld [%l5],%l5
+cmp %l5,0; bge .L171; nop
+call yylex; nop
+set yychar,%l4
+st %o0,[%l4]
+cmp %o0,0; bge .L173; nop
+set yychar,%l5
+st %g0,[%l5]
+.L173:
+.L171:
+sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+set yychar,%l4
+ld [%l4],%l4
+add %l5,%l4,%l5
+mov %l5,%i2
+sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+cmp %l5,0; bl .L177; nop
+sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+cmp %l5,249; bl .L175; nop
+.L177:
+ba .L170; nop
+.L175:
+sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+sll %l5,1,%l5
+set yyact,%l4
+ldsh [%l5+%l4],%l5
+mov %l5,%i2
+sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+sll %l5,1,%l5
+set yychk,%l4
+ldsh [%l5+%l4],%l5
+set yychar,%l4
+ld [%l4],%l4
+cmp %l5,%l4; bne .L178; nop
+set yychar,%l5
+set -1,%l4
+st %l4,[%l5]
+set yyval,%l5
+set yylval,%l4
+ld [%l4],%l4
+st %l4,[%l5]
+mov %i2,%i4
+set yyerrflag,%l5
+ldsh [%l5],%l5
+cmp %l5,0; ble .L162; nop
+set yyerrflag,%l5
+ldsh [%l5],%l4
+sub %l4,1,%l4
+sth %l4,[%l5]
+ba .L162; nop
+.L178:
+.L170:
+sll %i4,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+sll %l5,1,%l5
+set yydef,%l4
+ldsh [%l5+%l4],%l5
+mov %l5,%i2
+sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+cmp %l5,-2; bne .L182; nop
+set yychar,%l5
+ld [%l5],%l5
+cmp %l5,0; bge .L184; nop
+call yylex; nop
+set yychar,%l4
+st %o0,[%l4]
+cmp %o0,0; bge .L186; nop
+set yychar,%l5
+st %g0,[%l5]
+.L186:
+.L184:
+set yyexca,%i0
+ba .L191; nop
+.L188:
+.L189:
+add %i0,4,%i0
+.L191:
+ldsh [%i0],%l5
+cmp %l5,-1; bne .L188; nop
+ldsh [%i0+2],%l5
+sll %i4,8*(4-2),%l4; sra %l4,8*(4-2),%l4
+cmp %l5,%l4; bne .L188; nop
+ba .L193; nop
+.L192:
+ldsh [%i0],%l5
+set yychar,%l4
+ld [%l4],%l4
+cmp %l5,%l4; bne .L195; nop
+ba .L194; nop
+.L195:
+.L193:
+add %i0,4,%l5
+mov %l5,%i0
+ldsh [%l5],%l5
+cmp %l5,0; bge .L192; nop
+.L194:
+ldsh [%i0+2],%l5
+mov %l5,%i2
+sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+cmp %l5,0; bge .L197; nop
+mov %g0,%i0
+ba .L159; nop
+.L197:
+.L182:
+sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+cmp %l5,0; bne .L199; nop
+set yyerrflag,%l4
+ldsh [%l4],%l5
+cmp %l5,0; bl .L201; nop
+cmp %l5,3; bg .L201; nop
+sll %l5,2,%l4
+set .L217,%l3
+ld [%l4+%l3],%l4
+jmp %l4; nop
+.section ".rodata"
+.align 4
+.L217:
+.word .L204
+.word .L207
+.word .L207
+.word .L214
+.section ".text"
+.L204:
+set .L205,%o0
+call yyerror; nop
+.L206:
+set yynerrs,%l4
+ld [%l4],%l3
+add %l3,1,%l3
+st %l3,[%l4]
+.L207:
+set yyerrflag,%l4
+set 3,%l3
+sth %l3,[%l4]
+ba .L209; nop
+.L208:
+ldsh [%i3],%l4
+sll %l4,1,%l4
+set yypact,%l3
+ldsh [%l4+%l3],%l4
+add %l4,256,%l4
+mov %l4,%i2
+sll %i2,8*(4-2),%l4; sra %l4,8*(4-2),%l4
+cmp %l4,0; bl .L211; nop
+cmp %l4,249; bge .L211; nop
+sll %l4,1,%l4
+set yyact,%l3
+ldsh [%l4+%l3],%l4
+sll %l4,1,%l4
+set yychk,%l3
+ldsh [%l4+%l3],%l4
+cmp %l4,256; bne .L211; nop
+sll %i2,8*(4-2),%l4; sra %l4,8*(4-2),%l4
+sll %l4,1,%l4
+set yyact,%l3
+ldsh [%l4+%l3],%i4
+ba .L162; nop
+.L211:
+ldsh [%i3],%l4
+sll %l4,1,%l4
+set yypact,%l3
+ldsh [%l4+%l3],%i2
+add %i3,-2,%i3
+add %i1,-4,%i1
+.L209:
+mov %i3,%l4
+add -300,%fp,%l3
+cmp %l4,%l3; bgeu .L208; nop
+.L213:
+set 1,%i0
+ba .L159; nop
+.L214:
+set yychar,%l4
+ld [%l4],%l4
+cmp %l4,0; bne .L215; nop
+ba .L213; nop
+.L215:
+set yychar,%l4
+set -1,%l3
+st %l3,[%l4]
+ba .L167; nop
+.L201:
+.L199:
+sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+sll %l5,1,%l5
+set yyr2,%l4
+add %l5,%l4,%l4
+ldsh [%l4],%l3
+sll %l3,1,%l3
+sub %i3,%l3,%i3
+mov %i1,%i5
+ldsh [%l4],%l4
+sll %l4,2,%l4
+sub %i1,%l4,%i1
+set yyval,%l4
+ld [%i1+4],%l3
+st %l3,[%l4]
+mov %i2,%l6
+set yyr1,%l4
+ldsh [%l5+%l4],%i2
+sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+sll %l5,1,%l5
+set yypgo,%l4
+ldsh [%l5+%l4],%l5
+ldsh [%i3],%l4
+add %l5,%l4,%l5
+add %l5,1,%l5
+mov %l5,%l7
+sll %l7,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+cmp %l5,249; bge .L220; nop
+sll %l5,1,%l5
+set yyact,%l4
+ldsh [%l5+%l4],%l5
+mov %l5,%i4
+sll %l5,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+sll %l5,1,%l5
+set yychk,%l4
+ldsh [%l5+%l4],%l5
+sll %i2,8*(4-2),%l4; sra %l4,8*(4-2),%l4
+neg %l4,%l4
+cmp %l5,%l4; be .L218; nop
+.L220:
+sll %i2,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+sll %l5,1,%l5
+set yypgo,%l4
+ldsh [%l5+%l4],%l5
+sll %l5,1,%l5
+set yyact,%l4
+ldsh [%l5+%l4],%i4
+.L218:
+sll %l6,8*(4-2),%l5; sra %l5,8*(4-2),%l5
+cmp %l5,4; bl .L162; nop
+cmp %l5,14; bg .L162; nop
+sll %l5,2,%l4
+set .L242-16,%l3
+ld [%l4+%l3],%l4
+jmp %l4; nop
+.section ".rodata"
+.align 4
+.L242:
+.word .L224
+.word .L225
+.word .L227
+.word .L229
+.word .L231
+.word .L233
+.word .L235
+.word .L162
+.word .L237
+.word .L239
+.word .L241
+.section ".text"
+.L224:
+set yyerrflag,%l4
+sth %g0,[%l4]
+ba .L162; nop
+.L225:
+set .L226,%o0
+call printf; nop
+ba .L162; nop
+.L227:
+set .L228,%o0
+call printf; nop
+ba .L162; nop
+.L229:
+set .L230,%o0
+call printf; nop
+ba .L162; nop
+.L231:
+set .L232,%o0
+call printf; nop
+ba .L162; nop
+.L233:
+set .L234,%o0
+call printf; nop
+ba .L162; nop
+.L235:
+set .L236,%o0
+call printf; nop
+ba .L162; nop
+.L237:
+set .L238,%o0
+call printf; nop
+ba .L162; nop
+.L239:
+set .L240,%o0
+set yytext,%o1
+call printf; nop
+ba .L162; nop
+.L241:
+set .L158,%o0
+set yytext,%o1
+call printf; nop
+ba .L162; nop
+.L159:
+ret; restore
+.type yyparse,#function
+.size yyparse,.-yyparse
+.global yywrap
+.align 4
+yywrap:
+set 1,%o0
+.L244:
+retl; nop
+.type yywrap,#function
+.size yywrap,.-yywrap
+.section ".bss"
+.global yyv
+.type yyv,#object
+.size yyv,600
+.common yyv,600,4
+.global yyfnd
+.type yyfnd,#object
+.size yyfnd,4
+.common yyfnd,4,4
+.global yyolsp
+.type yyolsp,#object
+.size yyolsp,4
+.common yyolsp,4,4
+.global yylsp
+.type yylsp,#object
+.size yylsp,4
+.common yylsp,4,4
+.global yylstate
+.type yylstate,#object
+.size yylstate,800
+.common yylstate,800,4
+.global yyestate
+.type yyestate,#object
+.size yyestate,4
+.common yyestate,4,4
+.global yytchar
+.type yytchar,#object
+.size yytchar,4
+.common yytchar,4,4
+.global yysbuf
+.type yysbuf,#object
+.size yysbuf,200
+.common yysbuf,200,1
+.global yymorfg
+.type yymorfg,#object
+.size yymorfg,4
+.common yymorfg,4,4
+.global yytext
+.type yytext,#object
+.size yytext,200
+.common yytext,200,1
+.global yyleng
+.type yyleng,#object
+.size yyleng,4
+.common yyleng,4,4
+.global yyval
+.type yyval,#object
+.size yyval,4
+.common yyval,4,4
+.global yylval
+.type yylval,#object
+.size yylval,4
+.common yylval,4,4
+.section ".rodata"
+.align 1
+.L240:
+.byte 112
+.byte 117
+.byte 115
+.byte 104
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L238:
+.byte 108
+.byte 111
+.byte 97
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L236:
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L234:
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L232:
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 121
+.byte 10
+.byte 0
+.align 1
+.L230:
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 10
+.byte 97
+.byte 100
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L228:
+.byte 97
+.byte 100
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.L226:
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.L205:
+.byte 115
+.byte 121
+.byte 110
+.byte 116
+.byte 97
+.byte 120
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 0
+.align 1
+.L166:
+.byte 121
+.byte 97
+.byte 99
+.byte 99
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 1
+.L158:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.L18:
+.byte 98
+.byte 97
+.byte 100
+.byte 32
+.byte 115
+.byte 119
+.byte 105
+.byte 116
+.byte 99
+.byte 104
+.byte 32
+.byte 121
+.byte 121
+.byte 108
+.byte 111
+.byte 111
+.byte 107
+.byte 32
+.byte 37
+.byte 100
+.byte 0
diff --git a/lcc/src/2html.c b/lcc/src/2html.c
index 3c9b146..8a0be3a 100755
--- a/lcc/src/2html.c
+++ b/lcc/src/2html.c
@@ -1,555 +1,555 @@
-#include <assert.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#include "c.h"
-#include "rcc.h"
-#if WIN32
-#include <fcntl.h>
-#include <io.h>
-#endif
-
-
-static void do_int(int x) {
- printf("%d", x);
-}
-
-static void do_scope(int x) {
-#define xx(c) if (x == c) { printf(#c); return; }
- xx(CONSTANTS)
- xx(LABELS)
- xx(GLOBAL)
- xx(PARAM)
- xx(LOCAL)
-#undef xx
- if (x > LOCAL)
- printf("LOCAL+%d", x-LOCAL);
- else
- do_int(x);
-}
-
-static void do_sclass(int x) {
-#define xx(c) if (x == c) { printf(#c); return; }
- xx(REGISTER)
- xx(AUTO)
- xx(EXTERN)
- xx(STATIC)
- xx(TYPEDEF)
-#undef xx
- do_int(x);
-}
-
-static void do_flags(int x) {
- char *bar = "";
-#define xx(f,n) if ((x>>n)&1) { printf("%s" #f, bar); bar = "|"; }
- xx(structarg,0)
- xx(addressed,1)
- xx(computed,2)
- xx(temporary,3)
- xx(generated,4)
-#undef xx
- if (*bar == '\0')
- do_int(x);
-}
-
-static void do_seg(int x) {
-#define xx(s) if (x == s) { printf(#s); return; }
- xx(CODE)
- xx(BSS)
- xx(DATA)
- xx(LIT)
-#undef xx
- do_int(x);
-}
-
-#define xx(ptr,field,type) do { printf("<li>" #field " = "); do_##type(ptr->field); printf("</li>\n"); } while (0)
-
-static void do_op(int x) {
- static char *opnames[] = {
- "",
- "CNST",
- "ARG",
- "ASGN",
- "INDIR",
- "CVC",
- "CVD",
- "CVF",
- "CVI",
- "CVP",
- "CVS",
- "CVU",
- "NEG",
- "CALL",
- "*LOAD*",
- "RET",
- "ADDRG",
- "ADDRF",
- "ADDRL",
- "ADD",
- "SUB",
- "LSH",
- "MOD",
- "RSH",
- "BAND",
- "BCOM",
- "BOR",
- "BXOR",
- "DIV",
- "MUL",
- "EQ",
- "GE",
- "GT",
- "LE",
- "LT",
- "NE",
- "JUMP",
- "LABEL",
- "AND",
- "NOT",
- "OR",
- "COND",
- "RIGHT",
- "FIELD"
- };
- int op = opindex(x);
- if (op < 1 || op >= sizeof opnames/sizeof opnames[0])
- printf("%d", x);
- else
- printf("%s", opnames[op]);
-}
-
-static void do_define_uid(int x) {
- printf("<strong id=uid%d>%d</strong>", x, x);
-}
-
-static void do_define_label(int x) {
- printf("<strong id=ll%d>%d</strong>", x, x);
-}
-
-static void do_uid(int x) {
- printf("<a href='#%d'>%d</a>", x, x, x);
-}
-
-static void do_label(int x) {
- printf("<a href='#L%d'>%d</a>", x, x, x);
-}
-
-static int nextid;
-
-static void do_list(list_ty x, void do_one(void *), char *type, char *listhtml, char *separator) {
- int count = Seq_length(x);
-
- if (count == 0)
- printf("<em>empty %s list</em>\n", type);
- else {
- int i;
- printf("<em>%s list</em>", type);
- if (listhtml != NULL)
- printf("<%s>\n", listhtml);
- for (i = 0; i < count; i++) {
- if (listhtml != NULL)
- printf("<li>");
- printf(separator);
- do_one(Seq_get(x, i));
- if (listhtml != NULL)
- printf("</li>\n");
- }
- if (listhtml != NULL)
- printf("</%s>\n", listhtml);
- }
-}
-
-static void do_uid_list(list_ty x) {
- int i, count = Seq_length(x);
-
- if (count == 0)
- printf("<em>empty int list</em>\n");
- else {
- int i;
- printf("<em>int list</em>");
- for (i= 0; i < count; i++) {
- printf(" ");
- do_uid(*(int *)Seq_get(x, i));
- }
- }
-}
-
-static void do_identifier(const char *x) {
- printf("%s", x);
-}
-
-static void do_real(rcc_real_ty x) {
- double d;
- unsigned *p = (unsigned *)&d;
- static union { int x; char endian; } little = { 1 };
-
- p[1-little.endian] = x->msb;
- p[little.endian] = x->lsb;
- printf("(%#X,%#X) = %g", x->msb, x->lsb, d);
-}
-
-static void do_suffix(int x) {
- static char suffixes[] = "0F234IUPVB";
-
- if (x < 0 || x >= (sizeof suffixes/sizeof suffixes[0]) - 1)
- printf("%d", x);
- else
- printf("%c", suffixes[x]);
-}
-
-static void do_enum(void *x) {
- rcc_enum__ty e = x;
-
- do_identifier(e->id);
- printf("=");
- do_int(e->value);
-}
-
-static void do_enum_list(list_ty x) {
- do_list(x, do_enum, "enum", NULL, " ");
-}
-
-static void do_field(void *x) {
- rcc_field_ty f = x;
-
- printf("<em>field</em><ul>\n");
- xx(f,id,identifier);
- xx(f,type,uid);
- xx(f,offset,int);
- xx(f,bitsize,int);
- xx(f,lsb,int);
- printf("</ul>\n");
-}
-
-static void do_field_list(list_ty x) {
- do_list(x, do_field, "field", "ol", "");
-}
-
-static void do_symbol(rcc_symbol_ty x) {
- printf("<em>symbol</em><ul>\n");
- xx(x,id,identifier);
- xx(x,type,uid);
- xx(x,scope,scope);
- xx(x,sclass,sclass);
- xx(x,ref,int);
- xx(x,flags,flags);
- printf("</ul>\n");
-}
-
-#define caselabel(kind) case rcc_##kind##_enum: \
- printf("<strong>" #kind "</strong> : <em>%s</em>", typename); \
- printf("<ul>\n"); attributes
-#define yy(kind,field,type) xx((&x->v.rcc_##kind),field,type)
-
-static void do_type(rcc_type_ty x) {
-#define attributes xx(x,size,int); xx(x,align,int)
- switch (x->kind) {
- static char *typename = "type";
- caselabel(INT); break;
- caselabel(UNSIGNED); break;
- caselabel(FLOAT); break;
- caselabel(VOID); break;
- caselabel(POINTER);
- yy(POINTER,type,uid);
- break;
- caselabel(ENUM);
- yy(ENUM,tag,identifier);
- yy(ENUM,ids,enum_list);
- break;
- caselabel(STRUCT);
- yy(STRUCT,tag,identifier);
- yy(STRUCT,fields,field_list);
- break;
- caselabel(UNION);
- yy(UNION,tag,identifier);
- yy(UNION,fields,field_list);
- break;
- caselabel(ARRAY);
- yy(ARRAY,type,uid);
- break;
- caselabel(FUNCTION);
- yy(FUNCTION,type,uid);
- yy(FUNCTION,formals,uid_list);
- break;
- caselabel(CONST);
- yy(CONST,type,uid);
- break;
- caselabel(VOLATILE);
- yy(VOLATILE,type,uid);
- break;
- default: assert(0);
- }
-#undef attributes
- printf("</ul>\n");
-}
-
-static void do_item(rcc_item_ty x) {
- printf("<a name='%d'>", x->uid);
-#define attributes xx(x,uid,define_uid)
- printf("</a>");
- switch (x->kind) {
- static char *typename = "item";
- caselabel(Symbol);
- yy(Symbol,symbol,symbol);
- break;
- caselabel(Type);
- yy(Type,type,type);
- break;
- default: assert(0);
- }
-#undef attributes
- printf("</ul>\n");
-}
-
-static void do_item_list(list_ty x) {
- int count = Seq_length(x);
-
- if (count == 0)
- printf("<em>empty item list</em>\n");
- else {
- int i;
- printf("<em>item list</em>");
- printf("<ol>\n");
- for (i = 0; i < count; i++) {
- rcc_item_ty item = Seq_get(x, i);
- printf("<li value=%d>", item->uid);
- do_item(item);
- printf("</li>\n");
- }
- printf("</ol>\n");
- }
-}
-
-static void do_string(string_ty x) {
- printf("%d,<code>'%s'</code>", x.len, x.str);
-}
-
-static void do_generic_string(void *x) {
- do_string(*(string_ty *)x);
-}
-
-static void do_string_list(list_ty x) {
- do_list(x, do_generic_string, "string", "ol", "");
-}
-
-static void do_node(void *y) {
- rcc_node_ty x = y;
-
- if (x->kind == rcc_LABEL_enum)
- printf("<a name='L%d'></a>", x->v.rcc_LABEL.label);
-#define attributes xx(x,suffix,suffix); xx(x,size,int)
- switch (x->kind) {
- static char *typename = "node";
- caselabel(CNST);
- yy(CNST,value,int);
- break;
- caselabel(CNSTF);
- yy(CNSTF,value,real);
- break;
- caselabel(ARG);
- yy(ARG,left,node);
- yy(ARG,len,int);
- yy(ARG,align,int);
- break;
- caselabel(ASGN);
- yy(ASGN,left,node);
- yy(ASGN,right,node);
- yy(ASGN,len,int);
- yy(ASGN,align,int);
- break;
- caselabel(CVT);
- yy(CVT,op,op);
- yy(CVT,left,node);
- yy(CVT,fromsize,int);
- break;
- caselabel(CALL);
- yy(CALL,left,node);
- yy(CALL,type,uid);
- break;
- caselabel(CALLB);
- yy(CALLB,left,node);
- yy(CALLB,right,node);
- yy(CALLB,type,uid);
- break;
- caselabel(RET); break;
- caselabel(ADDRG);
- yy(ADDRG,uid,uid);
- break;
- caselabel(ADDRL);
- yy(ADDRL,uid,uid);
- break;
- caselabel(ADDRF);
- yy(ADDRF,uid,uid);
- break;
- caselabel(Unary);
- yy(Unary,op,op);
- yy(Unary,left,node);
- break;
- caselabel(Binary);
- yy(Binary,op,op);
- yy(Binary,left,node);
- yy(Binary,right,node);
- break;
- caselabel(Compare);
- yy(Compare,op,op);
- yy(Compare,left,node);
- yy(Compare,right,node);
- yy(Compare,label,label);
- break;
- caselabel(LABEL);
- yy(LABEL,label,define_label);
- break;
- caselabel(BRANCH);
- yy(BRANCH,label,label);
- break;
- caselabel(CSE);
- yy(CSE,uid,uid);
- yy(CSE,node,node);
- break;
- default: assert(0);
- }
-#undef attributes
- printf("</ul>");
-}
-
-static void do_node_list(list_ty x) {
- do_list(x, do_node, "node", "ol", "");
-}
-
-static void do_interface(void *);
-
-static void do_interface_list(list_ty x) {
- do_list(x, do_interface, "interface", "ol", "");
-}
-
-static void do_interface(void *y) {
- rcc_interface_ty x = y;
-
- if (x->kind == rcc_Address_enum)
- printf("<a name='%d'></a>", x->v.rcc_Address.uid);
- else if (x->kind == rcc_Local_enum)
- printf("<a name='%d'></a>", x->v.rcc_Local.uid);
-#define attributes
- switch (x->kind) {
- static char *typename = "interface";
- caselabel(Export);
- yy(Export,p,uid);
- break;
- caselabel(Import);
- yy(Import,p,uid);
- break;
- caselabel(Global);
- yy(Global,p,uid);
- yy(Global,seg,seg);
- break;
- caselabel(Local);
- yy(Local,uid,define_uid);
- yy(Local,p,symbol);
- break;
- caselabel(Address);
- yy(Address,uid,define_uid);
- yy(Address,q,symbol);
- yy(Address,p,uid);
- yy(Address,n,int);
- break;
- caselabel(Segment);
- yy(Segment,seg,seg);
- break;
- caselabel(Defaddress);
- yy(Defaddress,p,uid);
- break;
- caselabel(Deflabel);
- yy(Deflabel,label,label);
- break;
- caselabel(Defconst);
- yy(Defconst,suffix,suffix);
- yy(Defconst,size,int);
- yy(Defconst,value,int);
- break;
- caselabel(Defconstf);
- yy(Defconstf,size,int);
- yy(Defconstf,value,real);
- break;
- caselabel(Defstring);
- yy(Defstring,s,string);
- break;
- caselabel(Space);
- yy(Space,n,int);
- break;
- caselabel(Function);
- yy(Function,f,uid);
- yy(Function,caller,uid_list);
- yy(Function,callee,uid_list);
- yy(Function,ncalls,int);
- yy(Function,codelist,interface_list);
- break;
- caselabel(Forest);
- yy(Forest,nodes,node_list);
- break;
- case rcc_Blockbeg_enum: printf("<strong>Blockbeg</strong> : <em>%s</em>", typename); return;
- case rcc_Blockend_enum: printf("<strong>Blockend</strong> : <em>%s</em>", typename); return;
- default: assert(0);
- }
-#undef attributes
- printf("</ul>\n");
-}
-
-static void do_program(rcc_program_ty x) {
- printf("<ul>\n");
- xx(x,nuids,int);
- xx(x,nlabels,int);
- xx(x,items,item_list);
- xx(x,interfaces,interface_list);
- xx(x,argc,int);
- xx(x,argv,string_list);
- printf("</ul>\n");
-}
-
-int main(int argc, char *argv[]) {
- int i, version;
- float stamp = (assert(strstr(rcsid, ",v")), strtod(strstr(rcsid, ",v")+2, NULL))
-;
- char *infile = NULL, *outfile = NULL;
- rcc_program_ty pickle;
-
- for (i = 1; i < argc; i++)
- if (*argv[i] != '-' || strcmp(argv[i], "-") == 0) {
- if (infile == NULL)
- infile = argv[i];
- else if (outfile == NULL)
- outfile = argv[i];
- }
- if (infile != NULL && strcmp(infile, "-") != 0
- && freopen(infile, "rb", stdin) == NULL) {
- fprintf(stderr, "%s: can't read `%s'\n", argv[0], infile);
- exit(EXIT_FAILURE);
- }
- if (infile == NULL || strcmp(infile, "-") == 0)
- infile = "Standard Input";
-#if WIN32
- else
- _setmode(_fileno(stdin), _O_BINARY);
-#endif
- if (outfile != NULL && strcmp(outfile, "-") != 0
- && freopen(outfile, "w", stdout) == NULL) {
- fprintf(stderr, "%s: can't write `%s'\n", argv[0], outfile);
- exit(EXIT_FAILURE);
- }
- version = read_int(stdin);
- assert(version/100 == (int)stamp);
- pickle = rcc_read_program(stdin);
- printf("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2 Final//EN\"\n");
- printf("<html><head><title>%s</title>\n"
- "<link rev=made href=\"mailto:drh@microsoft.com\">\n"
- "</head><body>\n<h1>%s</h1>\n", infile, infile);
- printf("<p>version = %d.%d</p>", version/100, version%100);
- do_program(pickle);
- {
- time_t t;
- time(&t);
- printf("<hr><address>%s</address>\n", ctime(&t));
- }
- printf("</body></html>\n");
- return EXIT_SUCCESS;
-}
+#include <assert.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <time.h>
+#include "c.h"
+#include "rcc.h"
+#if WIN32
+#include <fcntl.h>
+#include <io.h>
+#endif
+
+
+static void do_int(int x) {
+ printf("%d", x);
+}
+
+static void do_scope(int x) {
+#define xx(c) if (x == c) { printf(#c); return; }
+ xx(CONSTANTS)
+ xx(LABELS)
+ xx(GLOBAL)
+ xx(PARAM)
+ xx(LOCAL)
+#undef xx
+ if (x > LOCAL)
+ printf("LOCAL+%d", x-LOCAL);
+ else
+ do_int(x);
+}
+
+static void do_sclass(int x) {
+#define xx(c) if (x == c) { printf(#c); return; }
+ xx(REGISTER)
+ xx(AUTO)
+ xx(EXTERN)
+ xx(STATIC)
+ xx(TYPEDEF)
+#undef xx
+ do_int(x);
+}
+
+static void do_flags(int x) {
+ char *bar = "";
+#define xx(f,n) if ((x>>n)&1) { printf("%s" #f, bar); bar = "|"; }
+ xx(structarg,0)
+ xx(addressed,1)
+ xx(computed,2)
+ xx(temporary,3)
+ xx(generated,4)
+#undef xx
+ if (*bar == '\0')
+ do_int(x);
+}
+
+static void do_seg(int x) {
+#define xx(s) if (x == s) { printf(#s); return; }
+ xx(CODE)
+ xx(BSS)
+ xx(DATA)
+ xx(LIT)
+#undef xx
+ do_int(x);
+}
+
+#define xx(ptr,field,type) do { printf("<li>" #field " = "); do_##type(ptr->field); printf("</li>\n"); } while (0)
+
+static void do_op(int x) {
+ static char *opnames[] = {
+ "",
+ "CNST",
+ "ARG",
+ "ASGN",
+ "INDIR",
+ "CVC",
+ "CVD",
+ "CVF",
+ "CVI",
+ "CVP",
+ "CVS",
+ "CVU",
+ "NEG",
+ "CALL",
+ "*LOAD*",
+ "RET",
+ "ADDRG",
+ "ADDRF",
+ "ADDRL",
+ "ADD",
+ "SUB",
+ "LSH",
+ "MOD",
+ "RSH",
+ "BAND",
+ "BCOM",
+ "BOR",
+ "BXOR",
+ "DIV",
+ "MUL",
+ "EQ",
+ "GE",
+ "GT",
+ "LE",
+ "LT",
+ "NE",
+ "JUMP",
+ "LABEL",
+ "AND",
+ "NOT",
+ "OR",
+ "COND",
+ "RIGHT",
+ "FIELD"
+ };
+ int op = opindex(x);
+ if (op < 1 || op >= sizeof opnames/sizeof opnames[0])
+ printf("%d", x);
+ else
+ printf("%s", opnames[op]);
+}
+
+static void do_define_uid(int x) {
+ printf("<strong id=uid%d>%d</strong>", x, x);
+}
+
+static void do_define_label(int x) {
+ printf("<strong id=ll%d>%d</strong>", x, x);
+}
+
+static void do_uid(int x) {
+ printf("<a href='#%d'>%d</a>", x, x, x);
+}
+
+static void do_label(int x) {
+ printf("<a href='#L%d'>%d</a>", x, x, x);
+}
+
+static int nextid;
+
+static void do_list(list_ty x, void do_one(void *), char *type, char *listhtml, char *separator) {
+ int count = Seq_length(x);
+
+ if (count == 0)
+ printf("<em>empty %s list</em>\n", type);
+ else {
+ int i;
+ printf("<em>%s list</em>", type);
+ if (listhtml != NULL)
+ printf("<%s>\n", listhtml);
+ for (i = 0; i < count; i++) {
+ if (listhtml != NULL)
+ printf("<li>");
+ printf(separator);
+ do_one(Seq_get(x, i));
+ if (listhtml != NULL)
+ printf("</li>\n");
+ }
+ if (listhtml != NULL)
+ printf("</%s>\n", listhtml);
+ }
+}
+
+static void do_uid_list(list_ty x) {
+ int i, count = Seq_length(x);
+
+ if (count == 0)
+ printf("<em>empty int list</em>\n");
+ else {
+ int i;
+ printf("<em>int list</em>");
+ for (i= 0; i < count; i++) {
+ printf(" ");
+ do_uid(*(int *)Seq_get(x, i));
+ }
+ }
+}
+
+static void do_identifier(const char *x) {
+ printf("%s", x);
+}
+
+static void do_real(rcc_real_ty x) {
+ double d;
+ unsigned *p = (unsigned *)&d;
+ static union { int x; char endian; } little = { 1 };
+
+ p[1-little.endian] = x->msb;
+ p[little.endian] = x->lsb;
+ printf("(%#X,%#X) = %g", x->msb, x->lsb, d);
+}
+
+static void do_suffix(int x) {
+ static char suffixes[] = "0F234IUPVB";
+
+ if (x < 0 || x >= (sizeof suffixes/sizeof suffixes[0]) - 1)
+ printf("%d", x);
+ else
+ printf("%c", suffixes[x]);
+}
+
+static void do_enum(void *x) {
+ rcc_enum__ty e = x;
+
+ do_identifier(e->id);
+ printf("=");
+ do_int(e->value);
+}
+
+static void do_enum_list(list_ty x) {
+ do_list(x, do_enum, "enum", NULL, " ");
+}
+
+static void do_field(void *x) {
+ rcc_field_ty f = x;
+
+ printf("<em>field</em><ul>\n");
+ xx(f,id,identifier);
+ xx(f,type,uid);
+ xx(f,offset,int);
+ xx(f,bitsize,int);
+ xx(f,lsb,int);
+ printf("</ul>\n");
+}
+
+static void do_field_list(list_ty x) {
+ do_list(x, do_field, "field", "ol", "");
+}
+
+static void do_symbol(rcc_symbol_ty x) {
+ printf("<em>symbol</em><ul>\n");
+ xx(x,id,identifier);
+ xx(x,type,uid);
+ xx(x,scope,scope);
+ xx(x,sclass,sclass);
+ xx(x,ref,int);
+ xx(x,flags,flags);
+ printf("</ul>\n");
+}
+
+#define caselabel(kind) case rcc_##kind##_enum: \
+ printf("<strong>" #kind "</strong> : <em>%s</em>", typename); \
+ printf("<ul>\n"); attributes
+#define yy(kind,field,type) xx((&x->v.rcc_##kind),field,type)
+
+static void do_type(rcc_type_ty x) {
+#define attributes xx(x,size,int); xx(x,align,int)
+ switch (x->kind) {
+ static char *typename = "type";
+ caselabel(INT); break;
+ caselabel(UNSIGNED); break;
+ caselabel(FLOAT); break;
+ caselabel(VOID); break;
+ caselabel(POINTER);
+ yy(POINTER,type,uid);
+ break;
+ caselabel(ENUM);
+ yy(ENUM,tag,identifier);
+ yy(ENUM,ids,enum_list);
+ break;
+ caselabel(STRUCT);
+ yy(STRUCT,tag,identifier);
+ yy(STRUCT,fields,field_list);
+ break;
+ caselabel(UNION);
+ yy(UNION,tag,identifier);
+ yy(UNION,fields,field_list);
+ break;
+ caselabel(ARRAY);
+ yy(ARRAY,type,uid);
+ break;
+ caselabel(FUNCTION);
+ yy(FUNCTION,type,uid);
+ yy(FUNCTION,formals,uid_list);
+ break;
+ caselabel(CONST);
+ yy(CONST,type,uid);
+ break;
+ caselabel(VOLATILE);
+ yy(VOLATILE,type,uid);
+ break;
+ default: assert(0);
+ }
+#undef attributes
+ printf("</ul>\n");
+}
+
+static void do_item(rcc_item_ty x) {
+ printf("<a name='%d'>", x->uid);
+#define attributes xx(x,uid,define_uid)
+ printf("</a>");
+ switch (x->kind) {
+ static char *typename = "item";
+ caselabel(Symbol);
+ yy(Symbol,symbol,symbol);
+ break;
+ caselabel(Type);
+ yy(Type,type,type);
+ break;
+ default: assert(0);
+ }
+#undef attributes
+ printf("</ul>\n");
+}
+
+static void do_item_list(list_ty x) {
+ int count = Seq_length(x);
+
+ if (count == 0)
+ printf("<em>empty item list</em>\n");
+ else {
+ int i;
+ printf("<em>item list</em>");
+ printf("<ol>\n");
+ for (i = 0; i < count; i++) {
+ rcc_item_ty item = Seq_get(x, i);
+ printf("<li value=%d>", item->uid);
+ do_item(item);
+ printf("</li>\n");
+ }
+ printf("</ol>\n");
+ }
+}
+
+static void do_string(string_ty x) {
+ printf("%d,<code>'%s'</code>", x.len, x.str);
+}
+
+static void do_generic_string(void *x) {
+ do_string(*(string_ty *)x);
+}
+
+static void do_string_list(list_ty x) {
+ do_list(x, do_generic_string, "string", "ol", "");
+}
+
+static void do_node(void *y) {
+ rcc_node_ty x = y;
+
+ if (x->kind == rcc_LABEL_enum)
+ printf("<a name='L%d'></a>", x->v.rcc_LABEL.label);
+#define attributes xx(x,suffix,suffix); xx(x,size,int)
+ switch (x->kind) {
+ static char *typename = "node";
+ caselabel(CNST);
+ yy(CNST,value,int);
+ break;
+ caselabel(CNSTF);
+ yy(CNSTF,value,real);
+ break;
+ caselabel(ARG);
+ yy(ARG,left,node);
+ yy(ARG,len,int);
+ yy(ARG,align,int);
+ break;
+ caselabel(ASGN);
+ yy(ASGN,left,node);
+ yy(ASGN,right,node);
+ yy(ASGN,len,int);
+ yy(ASGN,align,int);
+ break;
+ caselabel(CVT);
+ yy(CVT,op,op);
+ yy(CVT,left,node);
+ yy(CVT,fromsize,int);
+ break;
+ caselabel(CALL);
+ yy(CALL,left,node);
+ yy(CALL,type,uid);
+ break;
+ caselabel(CALLB);
+ yy(CALLB,left,node);
+ yy(CALLB,right,node);
+ yy(CALLB,type,uid);
+ break;
+ caselabel(RET); break;
+ caselabel(ADDRG);
+ yy(ADDRG,uid,uid);
+ break;
+ caselabel(ADDRL);
+ yy(ADDRL,uid,uid);
+ break;
+ caselabel(ADDRF);
+ yy(ADDRF,uid,uid);
+ break;
+ caselabel(Unary);
+ yy(Unary,op,op);
+ yy(Unary,left,node);
+ break;
+ caselabel(Binary);
+ yy(Binary,op,op);
+ yy(Binary,left,node);
+ yy(Binary,right,node);
+ break;
+ caselabel(Compare);
+ yy(Compare,op,op);
+ yy(Compare,left,node);
+ yy(Compare,right,node);
+ yy(Compare,label,label);
+ break;
+ caselabel(LABEL);
+ yy(LABEL,label,define_label);
+ break;
+ caselabel(BRANCH);
+ yy(BRANCH,label,label);
+ break;
+ caselabel(CSE);
+ yy(CSE,uid,uid);
+ yy(CSE,node,node);
+ break;
+ default: assert(0);
+ }
+#undef attributes
+ printf("</ul>");
+}
+
+static void do_node_list(list_ty x) {
+ do_list(x, do_node, "node", "ol", "");
+}
+
+static void do_interface(void *);
+
+static void do_interface_list(list_ty x) {
+ do_list(x, do_interface, "interface", "ol", "");
+}
+
+static void do_interface(void *y) {
+ rcc_interface_ty x = y;
+
+ if (x->kind == rcc_Address_enum)
+ printf("<a name='%d'></a>", x->v.rcc_Address.uid);
+ else if (x->kind == rcc_Local_enum)
+ printf("<a name='%d'></a>", x->v.rcc_Local.uid);
+#define attributes
+ switch (x->kind) {
+ static char *typename = "interface";
+ caselabel(Export);
+ yy(Export,p,uid);
+ break;
+ caselabel(Import);
+ yy(Import,p,uid);
+ break;
+ caselabel(Global);
+ yy(Global,p,uid);
+ yy(Global,seg,seg);
+ break;
+ caselabel(Local);
+ yy(Local,uid,define_uid);
+ yy(Local,p,symbol);
+ break;
+ caselabel(Address);
+ yy(Address,uid,define_uid);
+ yy(Address,q,symbol);
+ yy(Address,p,uid);
+ yy(Address,n,int);
+ break;
+ caselabel(Segment);
+ yy(Segment,seg,seg);
+ break;
+ caselabel(Defaddress);
+ yy(Defaddress,p,uid);
+ break;
+ caselabel(Deflabel);
+ yy(Deflabel,label,label);
+ break;
+ caselabel(Defconst);
+ yy(Defconst,suffix,suffix);
+ yy(Defconst,size,int);
+ yy(Defconst,value,int);
+ break;
+ caselabel(Defconstf);
+ yy(Defconstf,size,int);
+ yy(Defconstf,value,real);
+ break;
+ caselabel(Defstring);
+ yy(Defstring,s,string);
+ break;
+ caselabel(Space);
+ yy(Space,n,int);
+ break;
+ caselabel(Function);
+ yy(Function,f,uid);
+ yy(Function,caller,uid_list);
+ yy(Function,callee,uid_list);
+ yy(Function,ncalls,int);
+ yy(Function,codelist,interface_list);
+ break;
+ caselabel(Forest);
+ yy(Forest,nodes,node_list);
+ break;
+ case rcc_Blockbeg_enum: printf("<strong>Blockbeg</strong> : <em>%s</em>", typename); return;
+ case rcc_Blockend_enum: printf("<strong>Blockend</strong> : <em>%s</em>", typename); return;
+ default: assert(0);
+ }
+#undef attributes
+ printf("</ul>\n");
+}
+
+static void do_program(rcc_program_ty x) {
+ printf("<ul>\n");
+ xx(x,nuids,int);
+ xx(x,nlabels,int);
+ xx(x,items,item_list);
+ xx(x,interfaces,interface_list);
+ xx(x,argc,int);
+ xx(x,argv,string_list);
+ printf("</ul>\n");
+}
+
+int main(int argc, char *argv[]) {
+ int i, version;
+ float stamp = (assert(strstr(rcsid, ",v")), strtod(strstr(rcsid, ",v")+2, NULL))
+;
+ char *infile = NULL, *outfile = NULL;
+ rcc_program_ty pickle;
+
+ for (i = 1; i < argc; i++)
+ if (*argv[i] != '-' || strcmp(argv[i], "-") == 0) {
+ if (infile == NULL)
+ infile = argv[i];
+ else if (outfile == NULL)
+ outfile = argv[i];
+ }
+ if (infile != NULL && strcmp(infile, "-") != 0
+ && freopen(infile, "rb", stdin) == NULL) {
+ fprintf(stderr, "%s: can't read `%s'\n", argv[0], infile);
+ exit(EXIT_FAILURE);
+ }
+ if (infile == NULL || strcmp(infile, "-") == 0)
+ infile = "Standard Input";
+#if WIN32
+ else
+ _setmode(_fileno(stdin), _O_BINARY);
+#endif
+ if (outfile != NULL && strcmp(outfile, "-") != 0
+ && freopen(outfile, "w", stdout) == NULL) {
+ fprintf(stderr, "%s: can't write `%s'\n", argv[0], outfile);
+ exit(EXIT_FAILURE);
+ }
+ version = read_int(stdin);
+ assert(version/100 == (int)stamp);
+ pickle = rcc_read_program(stdin);
+ printf("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2 Final//EN\"\n");
+ printf("<html><head><title>%s</title>\n"
+ "<link rev=made href=\"mailto:drh@microsoft.com\">\n"
+ "</head><body>\n<h1>%s</h1>\n", infile, infile);
+ printf("<p>version = %d.%d</p>", version/100, version%100);
+ do_program(pickle);
+ {
+ time_t t;
+ time(&t);
+ printf("<hr><address>%s</address>\n", ctime(&t));
+ }
+ printf("</body></html>\n");
+ return EXIT_SUCCESS;
+}
diff --git a/lcc/src/alloc.c b/lcc/src/alloc.c
index 698da4f..e0566df 100755
--- a/lcc/src/alloc.c
+++ b/lcc/src/alloc.c
@@ -1,94 +1,94 @@
-#include "c.h"
-struct block {
- struct block *next;
- char *limit;
- char *avail;
-};
-union align {
- long l;
- char *p;
- double d;
- int (*f)(void);
-};
-union header {
- struct block b;
- union align a;
-};
-#ifdef PURIFY
-union header *arena[3];
-
-void *allocate(unsigned long n, unsigned a) {
- union header *new = malloc(sizeof *new + n);
-
- assert(a < NELEMS(arena));
- if (new == NULL) {
- error("insufficient memory\n");
- exit(1);
- }
- new->b.next = (void *)arena[a];
- arena[a] = new;
- return new + 1;
-}
-
-void deallocate(unsigned a) {
- union header *p, *q;
-
- assert(a < NELEMS(arena));
- for (p = arena[a]; p; p = q) {
- q = (void *)p->b.next;
- free(p);
- }
- arena[a] = NULL;
-}
-
-void *newarray(unsigned long m, unsigned long n, unsigned a) {
- return allocate(m*n, a);
-}
-#else
-static struct block
- first[] = { { NULL }, { NULL }, { NULL } },
- *arena[] = { &first[0], &first[1], &first[2] };
-static struct block *freeblocks;
-
-void *allocate(unsigned long n, unsigned a) {
- struct block *ap;
-
- assert(a < NELEMS(arena));
- assert(n > 0);
- ap = arena[a];
- n = roundup(n, sizeof (union align));
- while (n > ap->limit - ap->avail) {
- if ((ap->next = freeblocks) != NULL) {
- freeblocks = freeblocks->next;
- ap = ap->next;
- } else
- {
- unsigned m = sizeof (union header) + n + roundup(10*1024, sizeof (union align));
- ap->next = malloc(m);
- ap = ap->next;
- if (ap == NULL) {
- error("insufficient memory\n");
- exit(1);
- }
- ap->limit = (char *)ap + m;
- }
- ap->avail = (char *)((union header *)ap + 1);
- ap->next = NULL;
- arena[a] = ap;
-
- }
- ap->avail += n;
- return ap->avail - n;
-}
-
-void *newarray(unsigned long m, unsigned long n, unsigned a) {
- return allocate(m*n, a);
-}
-void deallocate(unsigned a) {
- assert(a < NELEMS(arena));
- arena[a]->next = freeblocks;
- freeblocks = first[a].next;
- first[a].next = NULL;
- arena[a] = &first[a];
-}
-#endif
+#include "c.h"
+struct block {
+ struct block *next;
+ char *limit;
+ char *avail;
+};
+union align {
+ long l;
+ char *p;
+ double d;
+ int (*f)(void);
+};
+union header {
+ struct block b;
+ union align a;
+};
+#ifdef PURIFY
+union header *arena[3];
+
+void *allocate(unsigned long n, unsigned a) {
+ union header *new = malloc(sizeof *new + n);
+
+ assert(a < NELEMS(arena));
+ if (new == NULL) {
+ error("insufficient memory\n");
+ exit(1);
+ }
+ new->b.next = (void *)arena[a];
+ arena[a] = new;
+ return new + 1;
+}
+
+void deallocate(unsigned a) {
+ union header *p, *q;
+
+ assert(a < NELEMS(arena));
+ for (p = arena[a]; p; p = q) {
+ q = (void *)p->b.next;
+ free(p);
+ }
+ arena[a] = NULL;
+}
+
+void *newarray(unsigned long m, unsigned long n, unsigned a) {
+ return allocate(m*n, a);
+}
+#else
+static struct block
+ first[] = { { NULL }, { NULL }, { NULL } },
+ *arena[] = { &first[0], &first[1], &first[2] };
+static struct block *freeblocks;
+
+void *allocate(unsigned long n, unsigned a) {
+ struct block *ap;
+
+ assert(a < NELEMS(arena));
+ assert(n > 0);
+ ap = arena[a];
+ n = roundup(n, sizeof (union align));
+ while (n > ap->limit - ap->avail) {
+ if ((ap->next = freeblocks) != NULL) {
+ freeblocks = freeblocks->next;
+ ap = ap->next;
+ } else
+ {
+ unsigned m = sizeof (union header) + n + roundup(10*1024, sizeof (union align));
+ ap->next = malloc(m);
+ ap = ap->next;
+ if (ap == NULL) {
+ error("insufficient memory\n");
+ exit(1);
+ }
+ ap->limit = (char *)ap + m;
+ }
+ ap->avail = (char *)((union header *)ap + 1);
+ ap->next = NULL;
+ arena[a] = ap;
+
+ }
+ ap->avail += n;
+ return ap->avail - n;
+}
+
+void *newarray(unsigned long m, unsigned long n, unsigned a) {
+ return allocate(m*n, a);
+}
+void deallocate(unsigned a) {
+ assert(a < NELEMS(arena));
+ arena[a]->next = freeblocks;
+ freeblocks = first[a].next;
+ first[a].next = NULL;
+ arena[a] = &first[a];
+}
+#endif
diff --git a/lcc/src/alpha.md b/lcc/src/alpha.md
index fe7140a..450dfd3 100755
--- a/lcc/src/alpha.md
+++ b/lcc/src/alpha.md
@@ -1,1192 +1,1192 @@
-%{
-#define INTTMP ((0xff<<1)|(1<<22)|(1<<25)|(1<<27))
-#define INTVAR (0x3f<<9)
-#define FLTTMP ((0x3f<<10)|(0x1ff<<22))
-#define FLTVAR (0xff<<2)
-
-#define INTRET 0x00000001
-#define FLTRET 0x00000003
-
-#define readsreg(p) \
- (generic((p)->op)==INDIR && (p)->kids[0]->op==VREG+P)
-#define setsrc(d) ((d) && (d)->x.regnode && \
- (d)->x.regnode->set == src->x.regnode->set && \
- (d)->x.regnode->mask&src->x.regnode->mask)
-
-#define relink(a, b) ((b)->x.prev = (a), (a)->x.next = (b))
-
-#include "c.h"
-#define NODEPTR_TYPE Node
-#define OP_LABEL(p) ((p)->op)
-#define LEFT_CHILD(p) ((p)->kids[0])
-#define RIGHT_CHILD(p) ((p)->kids[1])
-#define STATE_LABEL(p) ((p)->x.state)
-static void address(Symbol, Symbol, long);
-static void blkfetch(int, int, int, int);
-static void blkloop(int, int, int, int, int, int[]);
-static void blkstore(int, int, int, int);
-static void defaddress(Symbol);
-static void defconst(int, int, Value);
-static void defstring(int, char *);
-static void defsymbol(Symbol);
-static void doarg(Node);
-static void emit2(Node);
-static void export(Symbol);
-static void clobber(Node);
-static void function(Symbol, Symbol [], Symbol [], int);
-static void global(Symbol);
-static void import(Symbol);
-static void local(Symbol);
-static void progbeg(int, char **);
-static void progend(void);
-static void segment(int);
-static void space(int);
-static void target(Node);
-static Symbol ireg[32], freg[32];
-static Symbol iregw, fregw;
-
-static int tmpregs[] = {4, 2, 3};
-static Symbol blkreg;
-
-static int cseg;
-
-static char *currentfile;
-
-%}
-%start stmt
-%term CNSTF4=4113
-%term CNSTF8=8209
-%term CNSTF16=16401
-%term CNSTI1=1045
-%term CNSTI2=2069
-%term CNSTI4=4117
-%term CNSTI8=8213
-%term CNSTP4=4119
-%term CNSTP8=8215
-%term CNSTU1=1046
-%term CNSTU2=2070
-%term CNSTU4=4118
-%term CNSTU8=8214
-
-%term ARGB=41
-%term ARGF4=4129
-%term ARGF8=8225
-%term ARGF16=16417
-%term ARGI4=4133
-%term ARGI8=8229
-%term ARGP4=4135
-%term ARGP8=8231
-%term ARGU4=4134
-%term ARGU8=8230
-
-%term ASGNB=57
-%term ASGNF4=4145
-%term ASGNF8=8241
-%term ASGNF16=16433
-%term ASGNI1=1077
-%term ASGNI2=2101
-%term ASGNI4=4149
-%term ASGNI8=8245
-%term ASGNP4=4151
-%term ASGNP8=8247
-%term ASGNU1=1078
-%term ASGNU2=2102
-%term ASGNU4=4150
-%term ASGNU8=8246
-
-%term INDIRB=73
-%term INDIRF4=4161
-%term INDIRF8=8257
-%term INDIRF16=16449
-%term INDIRI1=1093
-%term INDIRI2=2117
-%term INDIRI4=4165
-%term INDIRI8=8261
-%term INDIRP4=4167
-%term INDIRP8=8263
-%term INDIRU1=1094
-%term INDIRU2=2118
-%term INDIRU4=4166
-%term INDIRU8=8262
-
-%term CVFF4=4209
-%term CVFF8=8305
-%term CVFF16=16497
-%term CVFI4=4213
-%term CVFI8=8309
-
-%term CVIF4=4225
-%term CVIF8=8321
-%term CVIF16=16513
-%term CVII1=1157
-%term CVII2=2181
-%term CVII4=4229
-%term CVII8=8325
-%term CVIU1=1158
-%term CVIU2=2182
-%term CVIU4=4230
-%term CVIU8=8326
-
-%term CVPP4=4247
-%term CVPP8=8343
-%term CVPP16=16535
-%term CVPU4=4246
-%term CVPU8=8342
-
-%term CVUI1=1205
-%term CVUI2=2229
-%term CVUI4=4277
-%term CVUI8=8373
-%term CVUP4=4279
-%term CVUP8=8375
-%term CVUP16=16567
-%term CVUU1=1206
-%term CVUU2=2230
-%term CVUU4=4278
-%term CVUU8=8374
-
-%term NEGF4=4289
-%term NEGF8=8385
-%term NEGF16=16577
-%term NEGI4=4293
-%term NEGI8=8389
-
-%term CALLB=217
-%term CALLF4=4305
-%term CALLF8=8401
-%term CALLF16=16593
-%term CALLI4=4309
-%term CALLI8=8405
-%term CALLP4=4311
-%term CALLP8=8407
-%term CALLU4=4310
-%term CALLU8=8406
-%term CALLV=216
-
-%term RETF4=4337
-%term RETF8=8433
-%term RETF16=16625
-%term RETI4=4341
-%term RETI8=8437
-%term RETP4=4343
-%term RETP8=8439
-%term RETU4=4342
-%term RETU8=8438
-%term RETV=248
-
-%term ADDRGP4=4359
-%term ADDRGP8=8455
-
-%term ADDRFP4=4375
-%term ADDRFP8=8471
-
-%term ADDRLP4=4391
-%term ADDRLP8=8487
-
-%term ADDF4=4401
-%term ADDF8=8497
-%term ADDF16=16689
-%term ADDI4=4405
-%term ADDI8=8501
-%term ADDP4=4407
-%term ADDP8=8503
-%term ADDU4=4406
-%term ADDU8=8502
-
-%term SUBF4=4417
-%term SUBF8=8513
-%term SUBF16=16705
-%term SUBI4=4421
-%term SUBI8=8517
-%term SUBP4=4423
-%term SUBP8=8519
-%term SUBU4=4422
-%term SUBU8=8518
-
-%term LSHI4=4437
-%term LSHI8=8533
-%term LSHU4=4438
-%term LSHU8=8534
-
-%term MODI4=4453
-%term MODI8=8549
-%term MODU4=4454
-%term MODU8=8550
-
-%term RSHI4=4469
-%term RSHI8=8565
-%term RSHU4=4470
-%term RSHU8=8566
-
-%term BANDI4=4485
-%term BANDI8=8581
-%term BANDU4=4486
-%term BANDU8=8582
-
-%term BCOMI4=4501
-%term BCOMI8=8597
-%term BCOMU4=4502
-%term BCOMU8=8598
-
-%term BORI4=4517
-%term BORI8=8613
-%term BORU4=4518
-%term BORU8=8614
-
-%term BXORI4=4533
-%term BXORI8=8629
-%term BXORU4=4534
-%term BXORU8=8630
-
-%term DIVF4=4545
-%term DIVF8=8641
-%term DIVF16=16833
-%term DIVI4=4549
-%term DIVI8=8645
-%term DIVU4=4550
-%term DIVU8=8646
-
-%term MULF4=4561
-%term MULF8=8657
-%term MULF16=16849
-%term MULI4=4565
-%term MULI8=8661
-%term MULU4=4566
-%term MULU8=8662
-
-%term EQF4=4577
-%term EQF8=8673
-%term EQF16=16865
-%term EQI4=4581
-%term EQI8=8677
-%term EQU4=4582
-%term EQU8=8678
-
-%term GEF4=4593
-%term GEF8=8689
-%term GEI4=4597
-%term GEI8=8693
-%term GEI16=16885
-%term GEU4=4598
-%term GEU8=8694
-
-%term GTF4=4609
-%term GTF8=8705
-%term GTF16=16897
-%term GTI4=4613
-%term GTI8=8709
-%term GTU4=4614
-%term GTU8=8710
-
-%term LEF4=4625
-%term LEF8=8721
-%term LEF16=16913
-%term LEI4=4629
-%term LEI8=8725
-%term LEU4=4630
-%term LEU8=8726
-
-%term LTF4=4641
-%term LTF8=8737
-%term LTF16=16929
-%term LTI4=4645
-%term LTI8=8741
-%term LTU4=4646
-%term LTU8=8742
-
-%term NEF4=4657
-%term NEF8=8753
-%term NEF16=16945
-%term NEI4=4661
-%term NEI8=8757
-%term NEU4=4662
-%term NEU8=8758
-
-%term JUMPV=584
-
-%term LABELV=600
-
-%term LOADB=233
-%term LOADF4=4321
-%term LOADF8=8417
-%term LOADF16=16609
-%term LOADI1=1253
-%term LOADI2=2277
-%term LOADI4=4325
-%term LOADI8=8421
-%term LOADP4=4327
-%term LOADP8=8423
-%term LOADU1=1254
-%term LOADU2=2278
-%term LOADU4=4326
-%term LOADU8=8422
-
-%term VREGP=711
-%%
-reg: INDIRI1(VREGP) "# read register\n"
-reg: INDIRU1(VREGP) "# read register\n"
-
-reg: INDIRI2(VREGP) "# read register\n"
-reg: INDIRU2(VREGP) "# read register\n"
-
-reg: INDIRF4(VREGP) "# read register\n"
-reg: INDIRI4(VREGP) "# read register\n"
-reg: INDIRP4(VREGP) "# read register\n"
-reg: INDIRU4(VREGP) "# read register\n"
-
-reg: INDIRF8(VREGP) "# read register\n"
-reg: INDIRI8(VREGP) "# read register\n"
-reg: INDIRP8(VREGP) "# read register\n"
-reg: INDIRU8(VREGP) "# read register\n"
-
-stmt: ASGNI1(VREGP,reg) "# write register\n"
-stmt: ASGNU1(VREGP,reg) "# write register\n"
-
-stmt: ASGNI2(VREGP,reg) "# write register\n"
-stmt: ASGNU2(VREGP,reg) "# write register\n"
-
-stmt: ASGNF4(VREGP,reg) "# write register\n"
-stmt: ASGNI4(VREGP,reg) "# write register\n"
-stmt: ASGNP4(VREGP,reg) "# write register\n"
-stmt: ASGNU4(VREGP,reg) "# write register\n"
-
-stmt: ASGNF8(VREGP,reg) "# write register\n"
-stmt: ASGNI8(VREGP,reg) "# write register\n"
-stmt: ASGNP8(VREGP,reg) "# write register\n"
-stmt: ASGNU8(VREGP,reg) "# write register\n"
-con: CNSTI1 "%a"
-con: CNSTU1 "%a"
-
-con: CNSTI2 "%a"
-con: CNSTU2 "%a"
-
-con: CNSTI4 "%a"
-con: CNSTU4 "%a"
-con: CNSTP4 "%a"
-
-con: CNSTI8 "%a"
-con: CNSTU8 "%a"
-con: CNSTP8 "%a"
-stmt: reg ""
-acon: con "%0"
-acon: ADDRGP8 "%a"
-
-addr: ADDI4(reg,acon) "%1($%0)"
-addr: ADDI8(reg,acon) "%1($%0)"
-addr: ADDU8(reg,acon) "%1($%0)"
-addr: ADDP8(reg,acon) "%1($%0)"
-
-addr: acon "%0"
-addr: reg "($%0)"
-
-addr: ADDRFP8 "%a+%F($sp)"
-addr: ADDRLP8 "%a+%F($sp)"
-
-reg: addr "lda $%c,%0\n" 1
-
-reg: CNSTI1 "# reg\n" range(a, 0, 0)
-reg: CNSTI2 "# reg\n" range(a, 0, 0)
-reg: CNSTI4 "# reg\n" range(a, 0, 0)
-reg: CNSTI8 "# reg\n" range(a, 0, 0)
-reg: CNSTU1 "# reg\n" range(a, 0, 0)
-reg: CNSTU2 "# reg\n" range(a, 0, 0)
-reg: CNSTU4 "# reg\n" range(a, 0, 0)
-reg: CNSTU8 "# reg\n" range(a, 0, 0)
-reg: CNSTP8 "# reg\n" range(a, 0, 0)
-
-stmt: ASGNI1(addr,reg) "stb $%1,%0\n" 1
-stmt: ASGNU1(addr,reg) "stb $%1,%0\n" 1
-stmt: ASGNI2(addr,reg) "stw $%1,%0\n" 1
-stmt: ASGNU2(addr,reg) "stw $%1,%0\n" 1
-
-stmt: ASGNI4(addr,reg) "stl $%1,%0\n" 1
-stmt: ASGNU4(addr,reg) "stl $%1,%0\n" 1
-stmt: ASGNI8(addr,reg) "stq $%1,%0\n" 1
-stmt: ASGNU8(addr,reg) "stq $%1,%0\n" 1
-stmt: ASGNP8(addr,reg) "stq $%1,%0\n" 1
-
-reg: INDIRI1(reg) "ldb $%c,($%0)\n" 1
-reg: INDIRI2(reg) "ldw $%c,($%0)\n" 1
-reg: INDIRI4(addr) "ldl $%c,%0\n" 1
-reg: INDIRI8(addr) "ldq $%c,%0\n" 1
-reg: INDIRP8(addr) "ldq $%c,%0\n" 1
-reg: INDIRU1(reg) "ldbu $%c,($%0)\n" 1
-reg: INDIRU2(reg) "ldwu $%c,($%0)\n" 1
-reg: INDIRU4(addr) "ldl $%c,%0\nzap $%c,240,$%c\n" 2
-reg: INDIRU8(addr) "ldq $%c,%0\n" 1
-
-reg: CVII4(INDIRI1(reg)) "ldb $%c,($%0)\n" 1
-reg: CVII8(INDIRI1(reg)) "ldb $%c,($%0)\n" 1
-reg: CVII4(INDIRI2(reg)) "ldw $%c,($%0)\n" 1
-reg: CVII8(INDIRI2(reg)) "ldw $%c,($%0)\n" 1
-reg: CVII8(INDIRI4(addr)) "ldl $%c,%0\n" 1
-
-reg: CVUU4(INDIRU1(reg)) "ldbu $%c,($%0)\n" 1
-reg: CVUU8(INDIRU1(reg)) "ldbu $%c,($%0)\n" 1
-reg: CVUU4(INDIRU2(reg)) "ldwu $%c,($%0)\n" 1
-reg: CVUU8(INDIRU2(reg)) "ldwu $%c,($%0)\n" 1
-reg: CVUU8(INDIRU4(addr)) "ldl $%c,%0\nzap $%c,240,$%c\n" 2
-
-reg: CVUI4(INDIRU1(reg)) "ldbu $%c,($%0)\n" 1
-reg: CVUI8(INDIRU1(reg)) "ldbu $%c,($%0)\n" 1
-reg: CVUI4(INDIRU2(reg)) "ldwu $%c,($%0)\n" 1
-reg: CVUI8(INDIRU2(reg)) "ldwu $%c,($%0)\n" 1
-reg: CVUI8(INDIRU4(addr)) "ldl $%c,%0\nzap $%c,240,$%c\n" 2
-
-reg: CVIU8(reg) "mov $%0,$%c\n" move(a)
-
-reg: INDIRF4(addr) "lds $f%c,%0\n" 1
-reg: INDIRF8(addr) "ldt $f%c,%0\n" 1
-stmt: ASGNF4(addr,reg) "sts $f%1,%0\n" 1
-stmt: ASGNF8(addr,reg) "stt $f%1,%0\n" 1
-
-reg: MULI4(reg,rc) "mull $%0,%1,$%c\n" 1
-reg: MULI8(reg,rc) "mulq $%0,%1,$%c\n" 1
-reg: MULU4(reg,rc) "mull $%0,%1,$%c\nzap $%c,240,$%c\n" 2
-reg: MULU8(reg,rc) "mulq $%0,%1,$%c\n" 1
-
-reg: DIVI4(reg,rc) "divl $%0,%1,$%c\n" 1
-reg: DIVI8(reg,rc) "divq $%0,%1,$%c\n" 1
-reg: DIVU4(reg,rc) "divlu $%0,%1,$%c\n" 1
-reg: DIVU8(reg,rc) "divqu $%0,%1,$%c\n" 1
-reg: MODI4(reg,rc) "reml $%0,%1,$%c\n" 1
-reg: MODI8(reg,rc) "remq $%0,%1,$%c\n" 1
-reg: MODU4(reg,rc) "remlu $%0,%1,$%c\n" 1
-reg: MODU8(reg,rc) "remqu $%0,%1,$%c\n" 1
-
-rc: con "%0"
-rc: reg "$%0"
-
-reg: ADDI4(reg,rc) "addl $%0,%1,$%c\n" 1
-reg: ADDI8(reg,rc) "addq $%0,%1,$%c\n" 1
-reg: ADDP8(reg,rc) "addq $%0,%1,$%c\n" 1
-reg: ADDU4(reg,rc) "addl $%0,%1,$%c\nzap $%c,240,$%c\n" 2
-reg: ADDU8(reg,rc) "addq $%0,%1,$%c\n" 1
-reg: SUBI4(reg,rc) "subl $%0,%1,$%c\n" 1
-reg: SUBI8(reg,rc) "subq $%0,%1,$%c\n" 1
-reg: SUBP8(reg,rc) "subq $%0,%1,$%c\n" 1
-reg: SUBU4(reg,rc) "subl $%0,%1,$%c\nzap $%c,240,$%c\n" 2
-reg: SUBU8(reg,rc) "subq $%0,%1,$%c\n" 1
-
-reg: BANDI4(reg,rc) "and $%0,%1,$%c\naddl $%c,0,$%c\n" 2
-reg: BANDI8(reg,rc) "and $%0,%1,$%c\n" 1
-reg: BANDU4(reg,rc) "and $%0,%1,$%c\n" 1
-reg: BANDU8(reg,rc) "and $%0,%1,$%c\n" 1
-reg: BORI4(reg,rc) "or $%0,%1,$%c\naddl $%c,0,$%c\n" 2
-reg: BORI8(reg,rc) "or $%0,%1,$%c\n" 1
-reg: BORU4(reg,rc) "or $%0,%1,$%c\n" 1
-reg: BORU8(reg,rc) "or $%0,%1,$%c\n" 1
-reg: BXORI4(reg,rc) "xor $%0,%1,$%c\naddl $%c,0,$%c\n" 2
-reg: BXORI8(reg,rc) "xor $%0,%1,$%c\n" 1
-reg: BXORU4(reg,rc) "xor $%0,%1,$%c\n" 1
-reg: BXORU8(reg,rc) "xor $%0,%1,$%c\n" 1
-
-rc6: CNSTI4 "%a" range(a,0,63)
-rc6: CNSTI8 "%a" range(a,0,63)
-rc6: reg "$%0"
-
-reg: LSHI4(reg,rc6) "sll $%0,%1,$%c\naddl $%c,0,$%c\n" 2
-reg: LSHI8(reg,rc6) "sll $%0,%1,$%c\n" 1
-reg: LSHU4(reg,rc6) "sll $%0,%1,$%c\nzap $%c,240,$%c\n" 2
-reg: LSHU8(reg,rc6) "sll $%0,%1,$%c\n" 1
-reg: RSHI4(reg,rc6) "sra $%0,%1,$%c\naddl $%c,0,$%c\n" 2
-reg: RSHI8(reg,rc6) "sra $%0,%1,$%c\n" 1
-reg: RSHU4(reg,rc6) "srl $%0,%1,$%c\n" 1
-reg: RSHU8(reg,rc6) "srl $%0,%1,$%c\n" 1
-
-reg: BCOMI4(reg) "not $%0,$%c\naddl $%c,0,$%c\n" 2
-reg: BCOMU4(reg) "not $%0,$%c\nzap $%c,240,$%c\n" 2
-reg: BCOMI8(reg) "not $%0,$%c\n" 1
-reg: BCOMU8(reg) "not $%0,$%c\n" 1
-reg: NEGI4(reg) "negl $%0,$%c\n" 1
-reg: NEGI8(reg) "negq $%0,$%c\n" 1
-reg: LOADI1(reg) "mov $%0,$%c\n" move(a)
-reg: LOADI2(reg) "mov $%0,$%c\n" move(a)
-reg: LOADI4(reg) "mov $%0,$%c\n" move(a)
-reg: LOADI8(reg) "mov $%0,$%c\n" move(a)
-reg: LOADP8(reg) "mov $%0,$%c\n" move(a)
-reg: LOADU1(reg) "mov $%0,$%c\n" move(a)
-reg: LOADU2(reg) "mov $%0,$%c\n" move(a)
-reg: LOADU4(reg) "mov $%0,$%c\n" move(a)
-reg: LOADU8(reg) "mov $%0,$%c\n" move(a)
-
-reg: ADDF4(reg,reg) "adds $f%0,$f%1,$f%c\n" 1
-reg: ADDF8(reg,reg) "addt $f%0,$f%1,$f%c\n" 1
-reg: DIVF4(reg,reg) "divs $f%0,$f%1,$f%c\n" 1
-reg: DIVF8(reg,reg) "divt $f%0,$f%1,$f%c\n" 1
-reg: MULF4(reg,reg) "muls $f%0,$f%1,$f%c\n" 1
-reg: MULF8(reg,reg) "mult $f%0,$f%1,$f%c\n" 1
-reg: SUBF4(reg,reg) "subs $f%0,$f%1,$f%c\n" 1
-reg: SUBF8(reg,reg) "subt $f%0,$f%1,$f%c\n" 1
-reg: LOADF4(reg) "fmov $f%0,$f%c\n" move(a)
-reg: LOADF8(reg) "fmov $f%0,$f%c\n" move(a)
-reg: NEGF4(reg) "negs $f%0,$f%c\n" 1
-reg: NEGF8(reg) "negt $f%0,$f%c\n" 1
-reg: CVII4(reg) "sll $%0,8*(8-%a),$%c\nsra $%c,8*(8-%a),$%c\n" 2
-reg: CVII8(reg) "sll $%0,8*(8-%a),$%c\nsra $%c,8*(8-%a),$%c\n" 2
-reg: CVUI4(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
-reg: CVUI8(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
-reg: CVUU4(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
-reg: CVUU8(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
-
-reg: CVUP8(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
-
-reg: CVFF4(reg) "cvtts $f%0,$f%c\n" 1
-reg: CVFF8(reg) "cvtst $f%0,$f%c\n" 1
-
-reg: CVIF4(reg) "stq $%0,-56+%F($sp)\nldt $%f%c,-56+%F($sp)\ncvtqs $f%c,$f%c\n" 3
-reg: CVIF8(reg) "stq $%0,-56+%F($sp)\nldt $%f%c,-56+%F($sp)\ncvtqt $f%c,$f%c\n" 3
-reg: CVIF4(INDIRI4(addr)) "lds $f%c,%0\ncvtlq $f%c,$f%c\ncvtqs $f%c,$f%c\n" 3
-reg: CVIF4(INDIRI8(addr)) "ldt $f%c,%0\ncvtqs $f%c,$f%c\n" 2
-reg: CVIF8(INDIRI4(addr)) "lds $f%c,%0\ncvtlq $f%c,$f%c\ncvtqt $f%c,$f%c\n" 3
-reg: CVIF8(INDIRI8(addr)) "ldt $f%c,%0\ncvtqt $f%c,$f%c\n" 2
-
-reg: CVFI4(reg) "cvttqc $f%0,$f1\ncvtql $f1,$f1\nsts $f1,-56+%F($sp)\nldl $%c,-56+%F($sp)\n" 4
-reg: CVFI8(reg) "cvttqc $f%0,$f1\nstt $f1,-56+%F($sp)\nldq $%c,-56+%F($sp)\n" 3
-
-stmt: LABELV "%a:\n"
-
-stmt: JUMPV(acon) "br %0\n" 1
-stmt: JUMPV(reg) "jmp ($%0)\n" 1
-
-stmt: EQI4(reg,rc6) "cmpeq $%0,%1,$23\nbne $23,%a\n" 2
-stmt: EQU4(reg,rc6) "cmpeq $%0,%1,$23\nbne $23,%a\n" 2
-stmt: EQI8(reg,rc6) "cmpeq $%0,%1,$23\nbne $23,%a\n" 2
-stmt: EQU8(reg,rc6) "cmpeq $%0,%1,$23\nbne $23,%a\n" 2
-stmt: NEI4(reg,rc6) "cmpeq $%0,%1,$23\nbeq $23,%a\n" 2
-stmt: NEU4(reg,rc6) "cmpeq $%0,%1,$23\nbeq $23,%a\n" 2
-stmt: NEI8(reg,rc6) "cmpeq $%0,%1,$23\nbeq $23,%a\n" 2
-stmt: NEU8(reg,rc6) "cmpeq $%0,%1,$23\nbeq $23,%a\n" 2
-stmt: GEI4(reg,rc6) "cmplt $%0,%1,$23\nbeq $23,%a\n" 2
-stmt: GEI8(reg,rc6) "cmplt $%0,%1,$23\nbeq $23,%a\n" 2
-stmt: GEU4(reg,rc6) "cmpult $%0,%1,$23\nbeq $23,%a\n" 1
-stmt: GEU8(reg,rc6) "cmpult $%0,%1,$23\nbeq $23,%a\n" 1
-stmt: GTI4(reg,rc6) "cmple $%0,%1,$23\nbeq $23,%a\n" 2
-stmt: GTI8(reg,rc6) "cmple $%0,%1,$23\nbeq $23,%a\n" 2
-stmt: GTU4(reg,rc6) "cmpule $%0,%1,$23\nbeq $23,%a\n" 1
-stmt: GTU8(reg,rc6) "cmpule $%0,%1,$23\nbeq $23,%a\n" 1
-stmt: LEI4(reg,rc6) "cmple $%0,%1,$23\nbne $23,%a\n" 2
-stmt: LEI8(reg,rc6) "cmple $%0,%1,$23\nbne $23,%a\n" 2
-stmt: LEU4(reg,rc6) "cmpule $%0,%1,$23\nbne $23,%a\n" 2
-stmt: LEU8(reg,rc6) "cmpule $%0,%1,$23\nbne $23,%a\n" 2
-stmt: LTI4(reg,rc6) "cmplt $%0,%1,$23\nbne $23,%a\n" 2
-stmt: LTI8(reg,rc6) "cmplt $%0,%1,$23\nbne $23,%a\n" 2
-stmt: LTU4(reg,rc6) "cmpult $%0,%1,$23\nbne $23,%a\n" 2
-stmt: LTU8(reg,rc6) "cmpult $%0,%1,$23\nbne $23,%a\n" 2
-
-stmt: EQF4(reg,reg) "cmpteq $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
-stmt: EQF8(reg,reg) "cmpteq $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
-stmt: LEF4(reg,reg) "cmptle $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
-stmt: LEF8(reg,reg) "cmptle $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
-stmt: LTF4(reg,reg) "cmptlt $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
-stmt: LTF8(reg,reg) "cmptlt $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
-
-stmt: NEF4(reg,reg) "cmpteq $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
-stmt: NEF8(reg,reg) "cmpteq $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
-stmt: GEF4(reg,reg) "cmptlt $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
-stmt: GEF8(reg,reg) "cmptlt $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
-stmt: GTF4(reg,reg) "cmptle $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
-stmt: GTF8(reg,reg) "cmptle $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
-
-ar: ADDRGP8 "%a"
-ar: reg "($%0)"
-
-reg: CALLF4(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
-reg: CALLF8(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
-reg: CALLI4(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
-reg: CALLI8(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
-reg: CALLP8(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
-reg: CALLU4(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
-reg: CALLU8(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
-stmt: CALLV(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
-
-stmt: RETF4(reg) "# ret\n" 1
-stmt: RETF8(reg) "# ret\n" 1
-stmt: RETI4(reg) "# ret\n" 1
-stmt: RETU4(reg) "# ret\n" 1
-stmt: RETI8(reg) "# ret\n" 1
-stmt: RETU8(reg) "# ret\n" 1
-stmt: RETP8(reg) "# ret\n" 1
-stmt: RETV(reg) "# ret\n" 1
-
-stmt: ARGF4(reg) "# arg\n" 1
-stmt: ARGF8(reg) "# arg\n" 1
-stmt: ARGI4(reg) "# arg\n" 1
-stmt: ARGI8(reg) "# arg\n" 1
-stmt: ARGP8(reg) "# arg\n" 1
-stmt: ARGU4(reg) "# arg\n" 1
-stmt: ARGU8(reg) "# arg\n" 1
-
-stmt: ARGB(INDIRB(reg)) "# argb %0\n" 1
-stmt: ASGNB(reg,INDIRB(reg)) "# asgnb %0 %1\n" 1
-
-%%
-static void progend(void){}
-
-static void progbeg(int argc, char *argv[]) {
- int i;
-
- {
- union {
- char c;
- int i;
- } u;
- u.i = 0;
- u.c = 1;
- swap = ((int)(u.i == 1)) != IR->little_endian;
- }
- parseflags(argc, argv);
-
- for (i = 0; i < 32; i++)
- freg[i] = mkreg("%d", i, 1, FREG);
- for (i = 0; i < 32; i++)
- ireg[i] = mkreg("%d", i, 1, IREG);
- ireg[29]->x.name = "gp";
- ireg[30]->x.name = "sp";
- fregw = mkwildcard(freg);
- iregw = mkwildcard(ireg);
-
- tmask[IREG] = INTTMP; tmask[FREG] = FLTTMP;
- vmask[IREG] = INTVAR; vmask[FREG] = FLTVAR;
-
- blkreg = mkreg("1", 1, 0xf, IREG);
-
-}
-
-static Symbol rmap(int opk) {
- switch (optype(opk)) {
- case I: case U: case P: case B:
- return iregw;
- case F:
- return fregw;
- default:
- return 0;
- }
-}
-
-static Symbol argreg(int offset, int ty) {
- if (offset >= 48)
- return NULL;
- else if (ty == F)
- return freg[(offset/8) + 16];
- else
- return ireg[(offset/8) + 16];
-}
-
-static void target(Node p) {
- assert(p);
- switch (specific(p->op)) {
- case CNST+I: case CNST+U: case CNST+P:
- if (range(p, 0, 0) == 0) {
- setreg(p, ireg[31]);
- p->x.registered = 1;
- }
- break;
- case CNST+F:
- if (p->syms[0]->u.c.v.d == 0) {
- setreg(p, freg[31]);
- p->x.registered = 1;
- }
- break;
-
- case CALL+V:
- rtarget(p, 0, ireg[27]);
- break;
- case CALL+F:
- rtarget(p, 0, ireg[27]);
- setreg(p, freg[0]);
- break;
- case CALL+I: case CALL+P: case CALL+U:
- rtarget(p, 0, ireg[27]);
- setreg(p, ireg[0]);
- break;
- case RET+F:
- rtarget(p, 0, freg[0]);
- break;
- case RET+I: case RET+U: case RET+P:
- rtarget(p, 0, ireg[0]);
- break;
-
- case ARG+F: case ARG+I: case ARG+P: case ARG+U: {
- Symbol q = argreg(p->syms[2]->u.c.v.i, optype(p->op));
- if (q)
- rtarget(p, 0, q);
- break;
- }
-
-
- case ASGN+B: rtarget(p->kids[1], 0, blkreg); break;
- case ARG+B: rtarget(p->kids[0], 0, blkreg); break;
-
- }
-}
-
-static void clobber(Node p) {
- assert(p);
- switch (specific(p->op)) {
- case ASGN+I: case ASGN+U:
- if (opsize(p->op) <= 2)
- spill(1<<24, IREG, p);
- break;
-
- case DIV+I: case DIV+U: case MOD+I: case MOD+U:
- spill(((1<<27)|(3<<24))&~p->syms[RX]->x.regnode->mask, IREG, p);
- break;
-
- case CALL+F:
- spill(INTTMP | INTRET, IREG, p);
- spill(FLTTMP, FREG, p);
- break;
- case CALL+I: case CALL+P: case CALL+U:
- spill(INTTMP, IREG, p);
- spill(FLTTMP | FLTRET, FREG, p);
- break;
- case CALL+V:
- spill(INTTMP | INTRET, IREG, p);
- spill(FLTTMP | FLTRET, FREG, p);
- break;
-
- }
-}
-
-static void emit2(Node p) {
- int dst, n, src, sz, ty;
- static int ty0;
- Symbol q;
-
- switch (specific(p->op)) {
- case ARG+F: case ARG+I: case ARG+P: case ARG+U:
- ty = optype(p->op);
- sz = opsize(p->op);
- q = argreg(p->syms[2]->u.c.v.i, ty);
- src = getregnum(p->x.kids[0]);
- if (q)
- break;
- else if (ty == F && sz == 4)
- print("sts $f%d,%d($sp)\n", src, p->syms[2]->u.c.v.i - 48);
- else if (ty == F && sz == 8)
- print("stt $f%d,%d($sp)\n", src, p->syms[2]->u.c.v.i - 48);
- else if (sz == 4)
- print("stq $%d,%d($sp)\n", src, p->syms[2]->u.c.v.i - 48);
- else if (sz == 8)
- print("stq $%d,%d($sp)\n", src, p->syms[2]->u.c.v.i - 48);
- else
- assert(0);
- break;
-
- case ASGN+B:
- dalign = salign = p->syms[1]->u.c.v.i;
- blkcopy(getregnum(p->x.kids[0]), 0,
- getregnum(p->x.kids[1]), 0,
- p->syms[0]->u.c.v.i, tmpregs);
- break;
-
-
- case ARG+B: {
- int doff = p->syms[2]->u.c.v.i, soff = 0, sreg = getregnum(p->x.kids[0]);
- dalign = 8;
- salign = p->syms[1]->u.c.v.i;
- n = p->syms[0]->u.c.v.i;
- for ( ; doff <= 40 && n > 0; doff += 8) {
- print("uldq $%d,%d($%d)\n", (doff/8)+16, soff, sreg);
- soff += 8;
- n -= 8;
- }
- if (n > 0)
- blkcopy(30, doff - 48, sreg, soff, n, tmpregs);
- break;
- }
-
- }
-}
-
-static void doarg(Node p) {
- p->syms[2] = intconst(mkactual(8, roundup(p->syms[0]->u.c.v.i,8)));
-}
-
-static void local(Symbol p) {
- if (askregvar(p, rmap(ttob(p->type))) == 0)
- mkauto(p);
-}
-
-static int bitcount(unsigned mask) {
- unsigned i, n = 0;
-
- for (i = 1; i; i <<= 1)
- if (mask&i)
- n++;
- return n;
-}
-
-static void function(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
- int i, sizeargs, saved, sizefsave, sizeisave, varargs;
- Symbol r, argregs[6];
-
- usedmask[0] = usedmask[1] = 0;
- freemask[0] = freemask[1] = ~(unsigned)0;
- maxargoffset = offset = maxoffset = 0;
-
- for (i = 0; callee[i]; i++)
- ;
- varargs = variadic(f->type)
- || i > 0 && strcmp(callee[i-1]->name, "va_alist") == 0;
- if (varargs)
- sizeargs = 2*48;
- else
- sizeargs = 48;
-
- for (i = 0; callee[i]; i++) {
- Symbol p = callee[i];
- Symbol q = caller[i];
- assert(q);
- if (isfloat(p->type) && varargs) {
- p->x.offset = q->x.offset = offset - 2*48;
- p->x.name = q->x.name = stringd(offset - 2*48);
- } else {
- p->x.offset = q->x.offset = offset - 48;
- p->x.name = q->x.name = stringd(offset - 48);
- }
- offset = roundup(offset, q->type->align);
- r = argreg(offset, optype(ttob(q->type)));
- if (i < 6)
- argregs[i] = r;
- offset = roundup(offset + q->type->size, 8);
- if (varargs)
- p->sclass = AUTO;
- else if (r && ncalls == 0 && !isstruct(q->type) && !p->addressed
-) {
- p->sclass = q->sclass = REGISTER;
- askregvar(p, r);
- assert(p->x.regnode && p->x.regnode->vbl == p);
- q->x = p->x;
- q->type = p->type;
- } else if (askregvar(p, rmap(ttob(p->type)))
- && r != NULL /*
- && (isint(p->type) || p->type == q->type) */
-) {
- assert(q->sclass != REGISTER);
- p->sclass = q->sclass = REGISTER;
- q->type = p->type;
- }
-
- }
- assert(!caller[i]);
-
- offset = sizeargs + 8;
- gencode(caller, callee);
- usedmask[IREG] &= ~(INTTMP|(0x3f<<16)|INTRET);
- usedmask[FREG] &= ~(FLTTMP|(0x3f<<16)|FLTRET);
- if (ncalls || usedmask[IREG] || usedmask[FREG])
- usedmask[IREG] |= 1<<26;
- sizefsave = 8*bitcount(usedmask[FREG]);
- sizeisave = 8*bitcount(usedmask[IREG]);
- if (maxargoffset > 48)
- maxargoffset -= 48;
- else
- maxargoffset = 0;
- if (maxoffset < sizeargs)
- maxoffset = sizeargs;
- framesize = roundup(maxargoffset + sizefsave + sizeisave + maxoffset, 16);
- segment(CODE);
- print(".ent %s\n", f->x.name);
- print("%s:\n", f->x.name);
- print("ldgp $gp,0($27)\n");
- i = maxargoffset + sizefsave - framesize;
- if (framesize > 0)
- print("lda $sp,%d($sp)\n", -framesize);
- if (usedmask[FREG])
- print(".fmask 0x%x,%d\n", usedmask[FREG], i - 8);
- if (usedmask[IREG])
- print(".mask 0x%x,%d\n", usedmask[IREG], i + sizeisave - 8);
- print(".frame $sp,%d,$26,%d\n", framesize, sizeargs);
-
- saved = maxargoffset;
- for (i = 2; i <= 9; i++)
- if (usedmask[FREG]&(1<<i)) {
- print("stt $f%d,%d($sp)\n", i, saved);
- saved += 8;
- }
-
- for (i = 9; i <= 26; i++)
- if (usedmask[IREG]&(1<<i)) {
- print("stq $%d,%d($sp)\n", i, saved);
- saved += 8;
- }
- for (i = 0; i < 6 && callee[i]; i++) {
- r = argregs[i];
- if (r && r->x.regnode != callee[i]->x.regnode) {
- Symbol out = callee[i];
- Symbol in = caller[i];
- int rn = r->x.regnode->number;
- int rs = r->x.regnode->set;
- int tyin = ttob(in->type);
-
- assert(out && in && r && r->x.regnode);
- assert(out->sclass != REGISTER || out->x.regnode);
- if (out->sclass == REGISTER) {
- if (rs == FREG)
- print("fmov $f%d,$f%d\n", rn, out->x.regnode->number);
- else
- print("mov $%d,$%d\n", rn, out->x.regnode->number);
-
- } else {
- int off = in->x.offset + framesize;
- if (rs == FREG && tyin == F+sizeop(8))
- print("stt $f%d,%d($sp)\n", rn, off);
- else if (rs == FREG && tyin == F+sizeop(4))
- print("sts $f%d,%d($sp)\n", rn, off);
- else {
- int i, n = (in->type->size + 7)/8;
- for (i = rn; i < rn+n && i <= 21; i++)
- print("stq $%d,%d($sp)\n", i, off + (i-rn)*8);
- }
-
- }
-
- }
- }
- if (varargs && callee[i-1]) {
- i = callee[i-1]->x.offset + roundup(callee[i-1]->type->size, 8);
- for (i = (48+i)/8; i < 6; i++) {
- print("stq $%d,%d($sp)\n", i + 16, framesize - 48 + 8*i);
- print("stt $f%d,%d($sp)\n", i + 16, framesize - 2*48 + 8*i);
- }
- }
- print(".prologue 1\n");
-
- emitcode();
- saved = maxargoffset;
- for (i = 2; i <= 9; i++)
- if (usedmask[FREG]&(1<<i)) {
- print("ldt $f%d,%d($sp)\n", i, saved);
- saved += 8;
- }
- for (i = 9; i <= 26; i++)
- if (usedmask[IREG]&(1<<i)) {
- print("ldq $%d,%d($sp)\n", i, saved);
- saved += 8;
- }
- if (framesize > 0)
- print("lda $sp,%d($sp)\n", framesize);
- print("ret\n");
- print(".end %s\n", f->x.name);
-
-}
-
-static void defconst(int suffix, int size, Value v) {
- if (suffix == F && size == 4) {
- float f = v.d;
- print(".long 0x%x\n", *(unsigned *)&f);
- } else if (suffix == F && size == 8) {
- double d = v.d;
- unsigned *p = (unsigned *)&d;
- print(".long 0x%x\n.long 0x%x\n", p[swap], p[!swap]);
- } else if (suffix == P)
- print(".quad 0x%X\n", v.p);
- else if (size == 1)
- print(".byte 0x%x\n", suffix == I ? v.i : v.u);
- else if (size == 2)
- print(".word 0x%x\n", suffix == I ? v.i&0xFFFF : v.u&0xFFFF);
- else if (size == 4)
- print(".long 0x%x\n", suffix == I ? v.i : v.u);
- else if (size == 8)
- print(".quad 0x%X\n", suffix == I ? v.i : v.u);
-
-}
-
-static void defaddress(Symbol p) {
- print(".quad %s\n", p->x.name);
-}
-
-static void defstring(int n, char *str) {
- char *s;
-
- for (s = str; s < str + n; s++)
- print(".byte %d\n", (*s)&0377);
-}
-
-static void export(Symbol p) {
- print(".globl %s\n", p->x.name);
-}
-
-static void import(Symbol p) {
- if (!isfunc(p->type))
- print(".extern %s %d\n", p->name, p->type->size);
-}
-
-static void defsymbol(Symbol p) {
- if (p->scope >= LOCAL && p->sclass == STATIC)
- p->x.name = stringf("L.%d", genlabel(1));
- else if (p->generated)
- p->x.name = stringf("L.%s", p->name);
- else
- assert(p->scope != CONSTANTS || isint(p->type) || isptr(p->type)),
- p->x.name = p->name;
-}
-
-static void address(Symbol q, Symbol p, long n) {
- if (p->scope == GLOBAL
- || p->sclass == STATIC || p->sclass == EXTERN)
- q->x.name = stringf("%s%s%D", p->x.name,
- n >= 0 ? "+" : "", n);
- else {
- assert(n <= INT_MAX && n >= INT_MIN);
- q->x.offset = p->x.offset + n;
- q->x.name = stringd(q->x.offset);
- }
-}
-
-static void global(Symbol p) {
- if (p->u.seg == DATA || p->u.seg == LIT) {
- assert(p->type->align <= 8);
- print(".align %c\n", ".01.2...3"[p->type->align]);
- print("%s:\n", p->x.name);
- } else if (p->sclass == STATIC || Aflag >= 2)
- print(".lcomm %s,%d\n", p->x.name, p->type->size);
- else
- print( ".comm %s,%d\n", p->x.name, p->type->size);
-}
-
-static void segment(int n) {
- cseg = n;
- switch (n) {
- case DATA: print(".sdata\n"); break;
- case CODE: print(".text\n"); break;
- case LIT: print(".rdata\n"); break;
- }
-}
-
-static void space(int n) {
- if (cseg != BSS)
- print(".space %d\n", n);
-}
-
-static void blkloop(int dreg, int doff, int sreg, int soff, int size, int tmps[]) {
- int lab = genlabel(1);
-
- print("addq $%d,%d,$%d\n", sreg, size&~7, sreg);
- print("addq $%d,%d,$%d\n", dreg, size&~7, tmps[2]);
- blkcopy(tmps[2], doff, sreg, soff, size&7, tmps);
- print("L.%d:\n", lab);
- print("addq $%d,%d,$%d\n", sreg, -8, sreg);
- print("addq $%d,%d,$%d\n", tmps[2], -8, tmps[2]);
- blkcopy(tmps[2], doff, sreg, soff, 8, tmps);
- print("cmpult $%d,$%d,$23\nbne $23,L.%d\n", dreg, tmps[2], lab);
-}
-
-static void blkfetch(int size, int off, int reg, int tmp) {
- assert(size == 1 || size == 2 || size == 4 || size == 8);
- if (size == 1)
- print("ldb $%d,%d($%d)\n", tmp, off, reg);
- else if (size == 2)
- print("ldw $%d,%d($%d)\n", tmp, off, reg);
- else if (salign >= size && size == 4)
- print("ldl $%d,%d($%d)\n", tmp, off, reg);
- else if (salign >= size && size == 8)
- print("ldq $%d,%d($%d)\n", tmp, off, reg);
- else if (size == 4)
- print("uldl $%d,%d($%d)\n", tmp, off, reg);
- else
- print("uldq $%d,%d($%d)\n", tmp, off, reg);
-}
-
-static void blkstore(int size, int off, int reg, int tmp) {
- assert(size == 1 || size == 2 || size == 4 || size == 8);
- if (size == 1)
- print("stb $%d,%d($%d)\n", tmp, off, reg);
- else if (size == 2)
- print("stw $%d,%d($%d)\n", tmp, off, reg);
- else if (dalign >= size && size == 4)
- print("stl $%d,%d($%d)\n", tmp, off, reg);
- else if (dalign >= size && size == 8)
- print("stq $%d,%d($%d)\n", tmp, off, reg);
- else if (size == 4)
- print("ustl $%d,%d($%d)\n", tmp, off, reg);
- else
- print("ustq $%d,%d($%d)\n", tmp, off, reg);
-}
-
-/* stabinit - initialize stab output */
-static void stabinit(char *file, int argc, char *argv[]) {
- if (file) {
- print(".file 2,\"%s\"\n", file);
- currentfile = file;
- }
-}
-
-/* stabline - emit stab entry for source coordinate *cp */
-static void stabline(Coordinate *cp) {
- if (cp->file && cp->file != currentfile) {
- print(".file 2,\"%s\"\n", cp->file);
- currentfile = cp->file;
- }
- print(".loc 2,%d\n", cp->y);
-}
-
-/* stabsym - output a stab entry for symbol p */
-static void stabsym(Symbol p) {
- if (p == cfunc && IR->stabline)
- (*IR->stabline)(&p->src);
-}
-Interface alphaIR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 8, 8, 0, /* long */
- 8, 8, 0, /* long long */
- 4, 4, 1, /* float */
- 8, 8, 1, /* double */
- 8, 8, 1, /* long double */
- 8, 8, 0, /* T * */
- 0, 1, 0, /* struct */
-
- 1, /* little_endian */
- 0, /* mulops_calls */
- 0, /* wants_callb */
- 1, /* wants_argb */
- 1, /* left_to_right */
- 0, /* wants_dag */
- 0, /* unsigned_char */
- address,
- blockbeg,
- blockend,
- defaddress,
- defconst,
- defstring,
- defsymbol,
- emit,
- export,
- function,
- gen,
- global,
- import,
- local,
- progbeg,
- progend,
- segment,
- space,
- 0, 0, 0, stabinit, stabline, stabsym, 0,
- {
- 1, /* max_unaligned_load */
- rmap,
- blkfetch, blkstore, blkloop,
- _label,
- _rule,
- _nts,
- _kids,
- _string,
- _templates,
- _isinstruction,
- _ntname,
- emit2,
- doarg,
- target,
- clobber,
-
- }
-
-};
-
-
-static char rcsid[] = "$Id: alpha.md 145 2001-10-17 21:53:10Z timo $";
-
+%{
+#define INTTMP ((0xff<<1)|(1<<22)|(1<<25)|(1<<27))
+#define INTVAR (0x3f<<9)
+#define FLTTMP ((0x3f<<10)|(0x1ff<<22))
+#define FLTVAR (0xff<<2)
+
+#define INTRET 0x00000001
+#define FLTRET 0x00000003
+
+#define readsreg(p) \
+ (generic((p)->op)==INDIR && (p)->kids[0]->op==VREG+P)
+#define setsrc(d) ((d) && (d)->x.regnode && \
+ (d)->x.regnode->set == src->x.regnode->set && \
+ (d)->x.regnode->mask&src->x.regnode->mask)
+
+#define relink(a, b) ((b)->x.prev = (a), (a)->x.next = (b))
+
+#include "c.h"
+#define NODEPTR_TYPE Node
+#define OP_LABEL(p) ((p)->op)
+#define LEFT_CHILD(p) ((p)->kids[0])
+#define RIGHT_CHILD(p) ((p)->kids[1])
+#define STATE_LABEL(p) ((p)->x.state)
+static void address(Symbol, Symbol, long);
+static void blkfetch(int, int, int, int);
+static void blkloop(int, int, int, int, int, int[]);
+static void blkstore(int, int, int, int);
+static void defaddress(Symbol);
+static void defconst(int, int, Value);
+static void defstring(int, char *);
+static void defsymbol(Symbol);
+static void doarg(Node);
+static void emit2(Node);
+static void export(Symbol);
+static void clobber(Node);
+static void function(Symbol, Symbol [], Symbol [], int);
+static void global(Symbol);
+static void import(Symbol);
+static void local(Symbol);
+static void progbeg(int, char **);
+static void progend(void);
+static void segment(int);
+static void space(int);
+static void target(Node);
+static Symbol ireg[32], freg[32];
+static Symbol iregw, fregw;
+
+static int tmpregs[] = {4, 2, 3};
+static Symbol blkreg;
+
+static int cseg;
+
+static char *currentfile;
+
+%}
+%start stmt
+%term CNSTF4=4113
+%term CNSTF8=8209
+%term CNSTF16=16401
+%term CNSTI1=1045
+%term CNSTI2=2069
+%term CNSTI4=4117
+%term CNSTI8=8213
+%term CNSTP4=4119
+%term CNSTP8=8215
+%term CNSTU1=1046
+%term CNSTU2=2070
+%term CNSTU4=4118
+%term CNSTU8=8214
+
+%term ARGB=41
+%term ARGF4=4129
+%term ARGF8=8225
+%term ARGF16=16417
+%term ARGI4=4133
+%term ARGI8=8229
+%term ARGP4=4135
+%term ARGP8=8231
+%term ARGU4=4134
+%term ARGU8=8230
+
+%term ASGNB=57
+%term ASGNF4=4145
+%term ASGNF8=8241
+%term ASGNF16=16433
+%term ASGNI1=1077
+%term ASGNI2=2101
+%term ASGNI4=4149
+%term ASGNI8=8245
+%term ASGNP4=4151
+%term ASGNP8=8247
+%term ASGNU1=1078
+%term ASGNU2=2102
+%term ASGNU4=4150
+%term ASGNU8=8246
+
+%term INDIRB=73
+%term INDIRF4=4161
+%term INDIRF8=8257
+%term INDIRF16=16449
+%term INDIRI1=1093
+%term INDIRI2=2117
+%term INDIRI4=4165
+%term INDIRI8=8261
+%term INDIRP4=4167
+%term INDIRP8=8263
+%term INDIRU1=1094
+%term INDIRU2=2118
+%term INDIRU4=4166
+%term INDIRU8=8262
+
+%term CVFF4=4209
+%term CVFF8=8305
+%term CVFF16=16497
+%term CVFI4=4213
+%term CVFI8=8309
+
+%term CVIF4=4225
+%term CVIF8=8321
+%term CVIF16=16513
+%term CVII1=1157
+%term CVII2=2181
+%term CVII4=4229
+%term CVII8=8325
+%term CVIU1=1158
+%term CVIU2=2182
+%term CVIU4=4230
+%term CVIU8=8326
+
+%term CVPP4=4247
+%term CVPP8=8343
+%term CVPP16=16535
+%term CVPU4=4246
+%term CVPU8=8342
+
+%term CVUI1=1205
+%term CVUI2=2229
+%term CVUI4=4277
+%term CVUI8=8373
+%term CVUP4=4279
+%term CVUP8=8375
+%term CVUP16=16567
+%term CVUU1=1206
+%term CVUU2=2230
+%term CVUU4=4278
+%term CVUU8=8374
+
+%term NEGF4=4289
+%term NEGF8=8385
+%term NEGF16=16577
+%term NEGI4=4293
+%term NEGI8=8389
+
+%term CALLB=217
+%term CALLF4=4305
+%term CALLF8=8401
+%term CALLF16=16593
+%term CALLI4=4309
+%term CALLI8=8405
+%term CALLP4=4311
+%term CALLP8=8407
+%term CALLU4=4310
+%term CALLU8=8406
+%term CALLV=216
+
+%term RETF4=4337
+%term RETF8=8433
+%term RETF16=16625
+%term RETI4=4341
+%term RETI8=8437
+%term RETP4=4343
+%term RETP8=8439
+%term RETU4=4342
+%term RETU8=8438
+%term RETV=248
+
+%term ADDRGP4=4359
+%term ADDRGP8=8455
+
+%term ADDRFP4=4375
+%term ADDRFP8=8471
+
+%term ADDRLP4=4391
+%term ADDRLP8=8487
+
+%term ADDF4=4401
+%term ADDF8=8497
+%term ADDF16=16689
+%term ADDI4=4405
+%term ADDI8=8501
+%term ADDP4=4407
+%term ADDP8=8503
+%term ADDU4=4406
+%term ADDU8=8502
+
+%term SUBF4=4417
+%term SUBF8=8513
+%term SUBF16=16705
+%term SUBI4=4421
+%term SUBI8=8517
+%term SUBP4=4423
+%term SUBP8=8519
+%term SUBU4=4422
+%term SUBU8=8518
+
+%term LSHI4=4437
+%term LSHI8=8533
+%term LSHU4=4438
+%term LSHU8=8534
+
+%term MODI4=4453
+%term MODI8=8549
+%term MODU4=4454
+%term MODU8=8550
+
+%term RSHI4=4469
+%term RSHI8=8565
+%term RSHU4=4470
+%term RSHU8=8566
+
+%term BANDI4=4485
+%term BANDI8=8581
+%term BANDU4=4486
+%term BANDU8=8582
+
+%term BCOMI4=4501
+%term BCOMI8=8597
+%term BCOMU4=4502
+%term BCOMU8=8598
+
+%term BORI4=4517
+%term BORI8=8613
+%term BORU4=4518
+%term BORU8=8614
+
+%term BXORI4=4533
+%term BXORI8=8629
+%term BXORU4=4534
+%term BXORU8=8630
+
+%term DIVF4=4545
+%term DIVF8=8641
+%term DIVF16=16833
+%term DIVI4=4549
+%term DIVI8=8645
+%term DIVU4=4550
+%term DIVU8=8646
+
+%term MULF4=4561
+%term MULF8=8657
+%term MULF16=16849
+%term MULI4=4565
+%term MULI8=8661
+%term MULU4=4566
+%term MULU8=8662
+
+%term EQF4=4577
+%term EQF8=8673
+%term EQF16=16865
+%term EQI4=4581
+%term EQI8=8677
+%term EQU4=4582
+%term EQU8=8678
+
+%term GEF4=4593
+%term GEF8=8689
+%term GEI4=4597
+%term GEI8=8693
+%term GEI16=16885
+%term GEU4=4598
+%term GEU8=8694
+
+%term GTF4=4609
+%term GTF8=8705
+%term GTF16=16897
+%term GTI4=4613
+%term GTI8=8709
+%term GTU4=4614
+%term GTU8=8710
+
+%term LEF4=4625
+%term LEF8=8721
+%term LEF16=16913
+%term LEI4=4629
+%term LEI8=8725
+%term LEU4=4630
+%term LEU8=8726
+
+%term LTF4=4641
+%term LTF8=8737
+%term LTF16=16929
+%term LTI4=4645
+%term LTI8=8741
+%term LTU4=4646
+%term LTU8=8742
+
+%term NEF4=4657
+%term NEF8=8753
+%term NEF16=16945
+%term NEI4=4661
+%term NEI8=8757
+%term NEU4=4662
+%term NEU8=8758
+
+%term JUMPV=584
+
+%term LABELV=600
+
+%term LOADB=233
+%term LOADF4=4321
+%term LOADF8=8417
+%term LOADF16=16609
+%term LOADI1=1253
+%term LOADI2=2277
+%term LOADI4=4325
+%term LOADI8=8421
+%term LOADP4=4327
+%term LOADP8=8423
+%term LOADU1=1254
+%term LOADU2=2278
+%term LOADU4=4326
+%term LOADU8=8422
+
+%term VREGP=711
+%%
+reg: INDIRI1(VREGP) "# read register\n"
+reg: INDIRU1(VREGP) "# read register\n"
+
+reg: INDIRI2(VREGP) "# read register\n"
+reg: INDIRU2(VREGP) "# read register\n"
+
+reg: INDIRF4(VREGP) "# read register\n"
+reg: INDIRI4(VREGP) "# read register\n"
+reg: INDIRP4(VREGP) "# read register\n"
+reg: INDIRU4(VREGP) "# read register\n"
+
+reg: INDIRF8(VREGP) "# read register\n"
+reg: INDIRI8(VREGP) "# read register\n"
+reg: INDIRP8(VREGP) "# read register\n"
+reg: INDIRU8(VREGP) "# read register\n"
+
+stmt: ASGNI1(VREGP,reg) "# write register\n"
+stmt: ASGNU1(VREGP,reg) "# write register\n"
+
+stmt: ASGNI2(VREGP,reg) "# write register\n"
+stmt: ASGNU2(VREGP,reg) "# write register\n"
+
+stmt: ASGNF4(VREGP,reg) "# write register\n"
+stmt: ASGNI4(VREGP,reg) "# write register\n"
+stmt: ASGNP4(VREGP,reg) "# write register\n"
+stmt: ASGNU4(VREGP,reg) "# write register\n"
+
+stmt: ASGNF8(VREGP,reg) "# write register\n"
+stmt: ASGNI8(VREGP,reg) "# write register\n"
+stmt: ASGNP8(VREGP,reg) "# write register\n"
+stmt: ASGNU8(VREGP,reg) "# write register\n"
+con: CNSTI1 "%a"
+con: CNSTU1 "%a"
+
+con: CNSTI2 "%a"
+con: CNSTU2 "%a"
+
+con: CNSTI4 "%a"
+con: CNSTU4 "%a"
+con: CNSTP4 "%a"
+
+con: CNSTI8 "%a"
+con: CNSTU8 "%a"
+con: CNSTP8 "%a"
+stmt: reg ""
+acon: con "%0"
+acon: ADDRGP8 "%a"
+
+addr: ADDI4(reg,acon) "%1($%0)"
+addr: ADDI8(reg,acon) "%1($%0)"
+addr: ADDU8(reg,acon) "%1($%0)"
+addr: ADDP8(reg,acon) "%1($%0)"
+
+addr: acon "%0"
+addr: reg "($%0)"
+
+addr: ADDRFP8 "%a+%F($sp)"
+addr: ADDRLP8 "%a+%F($sp)"
+
+reg: addr "lda $%c,%0\n" 1
+
+reg: CNSTI1 "# reg\n" range(a, 0, 0)
+reg: CNSTI2 "# reg\n" range(a, 0, 0)
+reg: CNSTI4 "# reg\n" range(a, 0, 0)
+reg: CNSTI8 "# reg\n" range(a, 0, 0)
+reg: CNSTU1 "# reg\n" range(a, 0, 0)
+reg: CNSTU2 "# reg\n" range(a, 0, 0)
+reg: CNSTU4 "# reg\n" range(a, 0, 0)
+reg: CNSTU8 "# reg\n" range(a, 0, 0)
+reg: CNSTP8 "# reg\n" range(a, 0, 0)
+
+stmt: ASGNI1(addr,reg) "stb $%1,%0\n" 1
+stmt: ASGNU1(addr,reg) "stb $%1,%0\n" 1
+stmt: ASGNI2(addr,reg) "stw $%1,%0\n" 1
+stmt: ASGNU2(addr,reg) "stw $%1,%0\n" 1
+
+stmt: ASGNI4(addr,reg) "stl $%1,%0\n" 1
+stmt: ASGNU4(addr,reg) "stl $%1,%0\n" 1
+stmt: ASGNI8(addr,reg) "stq $%1,%0\n" 1
+stmt: ASGNU8(addr,reg) "stq $%1,%0\n" 1
+stmt: ASGNP8(addr,reg) "stq $%1,%0\n" 1
+
+reg: INDIRI1(reg) "ldb $%c,($%0)\n" 1
+reg: INDIRI2(reg) "ldw $%c,($%0)\n" 1
+reg: INDIRI4(addr) "ldl $%c,%0\n" 1
+reg: INDIRI8(addr) "ldq $%c,%0\n" 1
+reg: INDIRP8(addr) "ldq $%c,%0\n" 1
+reg: INDIRU1(reg) "ldbu $%c,($%0)\n" 1
+reg: INDIRU2(reg) "ldwu $%c,($%0)\n" 1
+reg: INDIRU4(addr) "ldl $%c,%0\nzap $%c,240,$%c\n" 2
+reg: INDIRU8(addr) "ldq $%c,%0\n" 1
+
+reg: CVII4(INDIRI1(reg)) "ldb $%c,($%0)\n" 1
+reg: CVII8(INDIRI1(reg)) "ldb $%c,($%0)\n" 1
+reg: CVII4(INDIRI2(reg)) "ldw $%c,($%0)\n" 1
+reg: CVII8(INDIRI2(reg)) "ldw $%c,($%0)\n" 1
+reg: CVII8(INDIRI4(addr)) "ldl $%c,%0\n" 1
+
+reg: CVUU4(INDIRU1(reg)) "ldbu $%c,($%0)\n" 1
+reg: CVUU8(INDIRU1(reg)) "ldbu $%c,($%0)\n" 1
+reg: CVUU4(INDIRU2(reg)) "ldwu $%c,($%0)\n" 1
+reg: CVUU8(INDIRU2(reg)) "ldwu $%c,($%0)\n" 1
+reg: CVUU8(INDIRU4(addr)) "ldl $%c,%0\nzap $%c,240,$%c\n" 2
+
+reg: CVUI4(INDIRU1(reg)) "ldbu $%c,($%0)\n" 1
+reg: CVUI8(INDIRU1(reg)) "ldbu $%c,($%0)\n" 1
+reg: CVUI4(INDIRU2(reg)) "ldwu $%c,($%0)\n" 1
+reg: CVUI8(INDIRU2(reg)) "ldwu $%c,($%0)\n" 1
+reg: CVUI8(INDIRU4(addr)) "ldl $%c,%0\nzap $%c,240,$%c\n" 2
+
+reg: CVIU8(reg) "mov $%0,$%c\n" move(a)
+
+reg: INDIRF4(addr) "lds $f%c,%0\n" 1
+reg: INDIRF8(addr) "ldt $f%c,%0\n" 1
+stmt: ASGNF4(addr,reg) "sts $f%1,%0\n" 1
+stmt: ASGNF8(addr,reg) "stt $f%1,%0\n" 1
+
+reg: MULI4(reg,rc) "mull $%0,%1,$%c\n" 1
+reg: MULI8(reg,rc) "mulq $%0,%1,$%c\n" 1
+reg: MULU4(reg,rc) "mull $%0,%1,$%c\nzap $%c,240,$%c\n" 2
+reg: MULU8(reg,rc) "mulq $%0,%1,$%c\n" 1
+
+reg: DIVI4(reg,rc) "divl $%0,%1,$%c\n" 1
+reg: DIVI8(reg,rc) "divq $%0,%1,$%c\n" 1
+reg: DIVU4(reg,rc) "divlu $%0,%1,$%c\n" 1
+reg: DIVU8(reg,rc) "divqu $%0,%1,$%c\n" 1
+reg: MODI4(reg,rc) "reml $%0,%1,$%c\n" 1
+reg: MODI8(reg,rc) "remq $%0,%1,$%c\n" 1
+reg: MODU4(reg,rc) "remlu $%0,%1,$%c\n" 1
+reg: MODU8(reg,rc) "remqu $%0,%1,$%c\n" 1
+
+rc: con "%0"
+rc: reg "$%0"
+
+reg: ADDI4(reg,rc) "addl $%0,%1,$%c\n" 1
+reg: ADDI8(reg,rc) "addq $%0,%1,$%c\n" 1
+reg: ADDP8(reg,rc) "addq $%0,%1,$%c\n" 1
+reg: ADDU4(reg,rc) "addl $%0,%1,$%c\nzap $%c,240,$%c\n" 2
+reg: ADDU8(reg,rc) "addq $%0,%1,$%c\n" 1
+reg: SUBI4(reg,rc) "subl $%0,%1,$%c\n" 1
+reg: SUBI8(reg,rc) "subq $%0,%1,$%c\n" 1
+reg: SUBP8(reg,rc) "subq $%0,%1,$%c\n" 1
+reg: SUBU4(reg,rc) "subl $%0,%1,$%c\nzap $%c,240,$%c\n" 2
+reg: SUBU8(reg,rc) "subq $%0,%1,$%c\n" 1
+
+reg: BANDI4(reg,rc) "and $%0,%1,$%c\naddl $%c,0,$%c\n" 2
+reg: BANDI8(reg,rc) "and $%0,%1,$%c\n" 1
+reg: BANDU4(reg,rc) "and $%0,%1,$%c\n" 1
+reg: BANDU8(reg,rc) "and $%0,%1,$%c\n" 1
+reg: BORI4(reg,rc) "or $%0,%1,$%c\naddl $%c,0,$%c\n" 2
+reg: BORI8(reg,rc) "or $%0,%1,$%c\n" 1
+reg: BORU4(reg,rc) "or $%0,%1,$%c\n" 1
+reg: BORU8(reg,rc) "or $%0,%1,$%c\n" 1
+reg: BXORI4(reg,rc) "xor $%0,%1,$%c\naddl $%c,0,$%c\n" 2
+reg: BXORI8(reg,rc) "xor $%0,%1,$%c\n" 1
+reg: BXORU4(reg,rc) "xor $%0,%1,$%c\n" 1
+reg: BXORU8(reg,rc) "xor $%0,%1,$%c\n" 1
+
+rc6: CNSTI4 "%a" range(a,0,63)
+rc6: CNSTI8 "%a" range(a,0,63)
+rc6: reg "$%0"
+
+reg: LSHI4(reg,rc6) "sll $%0,%1,$%c\naddl $%c,0,$%c\n" 2
+reg: LSHI8(reg,rc6) "sll $%0,%1,$%c\n" 1
+reg: LSHU4(reg,rc6) "sll $%0,%1,$%c\nzap $%c,240,$%c\n" 2
+reg: LSHU8(reg,rc6) "sll $%0,%1,$%c\n" 1
+reg: RSHI4(reg,rc6) "sra $%0,%1,$%c\naddl $%c,0,$%c\n" 2
+reg: RSHI8(reg,rc6) "sra $%0,%1,$%c\n" 1
+reg: RSHU4(reg,rc6) "srl $%0,%1,$%c\n" 1
+reg: RSHU8(reg,rc6) "srl $%0,%1,$%c\n" 1
+
+reg: BCOMI4(reg) "not $%0,$%c\naddl $%c,0,$%c\n" 2
+reg: BCOMU4(reg) "not $%0,$%c\nzap $%c,240,$%c\n" 2
+reg: BCOMI8(reg) "not $%0,$%c\n" 1
+reg: BCOMU8(reg) "not $%0,$%c\n" 1
+reg: NEGI4(reg) "negl $%0,$%c\n" 1
+reg: NEGI8(reg) "negq $%0,$%c\n" 1
+reg: LOADI1(reg) "mov $%0,$%c\n" move(a)
+reg: LOADI2(reg) "mov $%0,$%c\n" move(a)
+reg: LOADI4(reg) "mov $%0,$%c\n" move(a)
+reg: LOADI8(reg) "mov $%0,$%c\n" move(a)
+reg: LOADP8(reg) "mov $%0,$%c\n" move(a)
+reg: LOADU1(reg) "mov $%0,$%c\n" move(a)
+reg: LOADU2(reg) "mov $%0,$%c\n" move(a)
+reg: LOADU4(reg) "mov $%0,$%c\n" move(a)
+reg: LOADU8(reg) "mov $%0,$%c\n" move(a)
+
+reg: ADDF4(reg,reg) "adds $f%0,$f%1,$f%c\n" 1
+reg: ADDF8(reg,reg) "addt $f%0,$f%1,$f%c\n" 1
+reg: DIVF4(reg,reg) "divs $f%0,$f%1,$f%c\n" 1
+reg: DIVF8(reg,reg) "divt $f%0,$f%1,$f%c\n" 1
+reg: MULF4(reg,reg) "muls $f%0,$f%1,$f%c\n" 1
+reg: MULF8(reg,reg) "mult $f%0,$f%1,$f%c\n" 1
+reg: SUBF4(reg,reg) "subs $f%0,$f%1,$f%c\n" 1
+reg: SUBF8(reg,reg) "subt $f%0,$f%1,$f%c\n" 1
+reg: LOADF4(reg) "fmov $f%0,$f%c\n" move(a)
+reg: LOADF8(reg) "fmov $f%0,$f%c\n" move(a)
+reg: NEGF4(reg) "negs $f%0,$f%c\n" 1
+reg: NEGF8(reg) "negt $f%0,$f%c\n" 1
+reg: CVII4(reg) "sll $%0,8*(8-%a),$%c\nsra $%c,8*(8-%a),$%c\n" 2
+reg: CVII8(reg) "sll $%0,8*(8-%a),$%c\nsra $%c,8*(8-%a),$%c\n" 2
+reg: CVUI4(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
+reg: CVUI8(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
+reg: CVUU4(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
+reg: CVUU8(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
+
+reg: CVUP8(reg) "and $%0,(1<<(8*%a))-1,$%c\n" 1
+
+reg: CVFF4(reg) "cvtts $f%0,$f%c\n" 1
+reg: CVFF8(reg) "cvtst $f%0,$f%c\n" 1
+
+reg: CVIF4(reg) "stq $%0,-56+%F($sp)\nldt $%f%c,-56+%F($sp)\ncvtqs $f%c,$f%c\n" 3
+reg: CVIF8(reg) "stq $%0,-56+%F($sp)\nldt $%f%c,-56+%F($sp)\ncvtqt $f%c,$f%c\n" 3
+reg: CVIF4(INDIRI4(addr)) "lds $f%c,%0\ncvtlq $f%c,$f%c\ncvtqs $f%c,$f%c\n" 3
+reg: CVIF4(INDIRI8(addr)) "ldt $f%c,%0\ncvtqs $f%c,$f%c\n" 2
+reg: CVIF8(INDIRI4(addr)) "lds $f%c,%0\ncvtlq $f%c,$f%c\ncvtqt $f%c,$f%c\n" 3
+reg: CVIF8(INDIRI8(addr)) "ldt $f%c,%0\ncvtqt $f%c,$f%c\n" 2
+
+reg: CVFI4(reg) "cvttqc $f%0,$f1\ncvtql $f1,$f1\nsts $f1,-56+%F($sp)\nldl $%c,-56+%F($sp)\n" 4
+reg: CVFI8(reg) "cvttqc $f%0,$f1\nstt $f1,-56+%F($sp)\nldq $%c,-56+%F($sp)\n" 3
+
+stmt: LABELV "%a:\n"
+
+stmt: JUMPV(acon) "br %0\n" 1
+stmt: JUMPV(reg) "jmp ($%0)\n" 1
+
+stmt: EQI4(reg,rc6) "cmpeq $%0,%1,$23\nbne $23,%a\n" 2
+stmt: EQU4(reg,rc6) "cmpeq $%0,%1,$23\nbne $23,%a\n" 2
+stmt: EQI8(reg,rc6) "cmpeq $%0,%1,$23\nbne $23,%a\n" 2
+stmt: EQU8(reg,rc6) "cmpeq $%0,%1,$23\nbne $23,%a\n" 2
+stmt: NEI4(reg,rc6) "cmpeq $%0,%1,$23\nbeq $23,%a\n" 2
+stmt: NEU4(reg,rc6) "cmpeq $%0,%1,$23\nbeq $23,%a\n" 2
+stmt: NEI8(reg,rc6) "cmpeq $%0,%1,$23\nbeq $23,%a\n" 2
+stmt: NEU8(reg,rc6) "cmpeq $%0,%1,$23\nbeq $23,%a\n" 2
+stmt: GEI4(reg,rc6) "cmplt $%0,%1,$23\nbeq $23,%a\n" 2
+stmt: GEI8(reg,rc6) "cmplt $%0,%1,$23\nbeq $23,%a\n" 2
+stmt: GEU4(reg,rc6) "cmpult $%0,%1,$23\nbeq $23,%a\n" 1
+stmt: GEU8(reg,rc6) "cmpult $%0,%1,$23\nbeq $23,%a\n" 1
+stmt: GTI4(reg,rc6) "cmple $%0,%1,$23\nbeq $23,%a\n" 2
+stmt: GTI8(reg,rc6) "cmple $%0,%1,$23\nbeq $23,%a\n" 2
+stmt: GTU4(reg,rc6) "cmpule $%0,%1,$23\nbeq $23,%a\n" 1
+stmt: GTU8(reg,rc6) "cmpule $%0,%1,$23\nbeq $23,%a\n" 1
+stmt: LEI4(reg,rc6) "cmple $%0,%1,$23\nbne $23,%a\n" 2
+stmt: LEI8(reg,rc6) "cmple $%0,%1,$23\nbne $23,%a\n" 2
+stmt: LEU4(reg,rc6) "cmpule $%0,%1,$23\nbne $23,%a\n" 2
+stmt: LEU8(reg,rc6) "cmpule $%0,%1,$23\nbne $23,%a\n" 2
+stmt: LTI4(reg,rc6) "cmplt $%0,%1,$23\nbne $23,%a\n" 2
+stmt: LTI8(reg,rc6) "cmplt $%0,%1,$23\nbne $23,%a\n" 2
+stmt: LTU4(reg,rc6) "cmpult $%0,%1,$23\nbne $23,%a\n" 2
+stmt: LTU8(reg,rc6) "cmpult $%0,%1,$23\nbne $23,%a\n" 2
+
+stmt: EQF4(reg,reg) "cmpteq $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
+stmt: EQF8(reg,reg) "cmpteq $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
+stmt: LEF4(reg,reg) "cmptle $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
+stmt: LEF8(reg,reg) "cmptle $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
+stmt: LTF4(reg,reg) "cmptlt $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
+stmt: LTF8(reg,reg) "cmptlt $f%0,$f%1,$f1\nfbne $f1,%a\n" 2
+
+stmt: NEF4(reg,reg) "cmpteq $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
+stmt: NEF8(reg,reg) "cmpteq $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
+stmt: GEF4(reg,reg) "cmptlt $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
+stmt: GEF8(reg,reg) "cmptlt $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
+stmt: GTF4(reg,reg) "cmptle $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
+stmt: GTF8(reg,reg) "cmptle $f%0,$f%1,$f1\nfbeq $f1,%a\n" 2
+
+ar: ADDRGP8 "%a"
+ar: reg "($%0)"
+
+reg: CALLF4(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
+reg: CALLF8(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
+reg: CALLI4(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
+reg: CALLI8(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
+reg: CALLP8(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
+reg: CALLU4(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
+reg: CALLU8(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
+stmt: CALLV(ar) "jsr $26,%0\nldgp $gp,0($26)\n" 2
+
+stmt: RETF4(reg) "# ret\n" 1
+stmt: RETF8(reg) "# ret\n" 1
+stmt: RETI4(reg) "# ret\n" 1
+stmt: RETU4(reg) "# ret\n" 1
+stmt: RETI8(reg) "# ret\n" 1
+stmt: RETU8(reg) "# ret\n" 1
+stmt: RETP8(reg) "# ret\n" 1
+stmt: RETV(reg) "# ret\n" 1
+
+stmt: ARGF4(reg) "# arg\n" 1
+stmt: ARGF8(reg) "# arg\n" 1
+stmt: ARGI4(reg) "# arg\n" 1
+stmt: ARGI8(reg) "# arg\n" 1
+stmt: ARGP8(reg) "# arg\n" 1
+stmt: ARGU4(reg) "# arg\n" 1
+stmt: ARGU8(reg) "# arg\n" 1
+
+stmt: ARGB(INDIRB(reg)) "# argb %0\n" 1
+stmt: ASGNB(reg,INDIRB(reg)) "# asgnb %0 %1\n" 1
+
+%%
+static void progend(void){}
+
+static void progbeg(int argc, char *argv[]) {
+ int i;
+
+ {
+ union {
+ char c;
+ int i;
+ } u;
+ u.i = 0;
+ u.c = 1;
+ swap = ((int)(u.i == 1)) != IR->little_endian;
+ }
+ parseflags(argc, argv);
+
+ for (i = 0; i < 32; i++)
+ freg[i] = mkreg("%d", i, 1, FREG);
+ for (i = 0; i < 32; i++)
+ ireg[i] = mkreg("%d", i, 1, IREG);
+ ireg[29]->x.name = "gp";
+ ireg[30]->x.name = "sp";
+ fregw = mkwildcard(freg);
+ iregw = mkwildcard(ireg);
+
+ tmask[IREG] = INTTMP; tmask[FREG] = FLTTMP;
+ vmask[IREG] = INTVAR; vmask[FREG] = FLTVAR;
+
+ blkreg = mkreg("1", 1, 0xf, IREG);
+
+}
+
+static Symbol rmap(int opk) {
+ switch (optype(opk)) {
+ case I: case U: case P: case B:
+ return iregw;
+ case F:
+ return fregw;
+ default:
+ return 0;
+ }
+}
+
+static Symbol argreg(int offset, int ty) {
+ if (offset >= 48)
+ return NULL;
+ else if (ty == F)
+ return freg[(offset/8) + 16];
+ else
+ return ireg[(offset/8) + 16];
+}
+
+static void target(Node p) {
+ assert(p);
+ switch (specific(p->op)) {
+ case CNST+I: case CNST+U: case CNST+P:
+ if (range(p, 0, 0) == 0) {
+ setreg(p, ireg[31]);
+ p->x.registered = 1;
+ }
+ break;
+ case CNST+F:
+ if (p->syms[0]->u.c.v.d == 0) {
+ setreg(p, freg[31]);
+ p->x.registered = 1;
+ }
+ break;
+
+ case CALL+V:
+ rtarget(p, 0, ireg[27]);
+ break;
+ case CALL+F:
+ rtarget(p, 0, ireg[27]);
+ setreg(p, freg[0]);
+ break;
+ case CALL+I: case CALL+P: case CALL+U:
+ rtarget(p, 0, ireg[27]);
+ setreg(p, ireg[0]);
+ break;
+ case RET+F:
+ rtarget(p, 0, freg[0]);
+ break;
+ case RET+I: case RET+U: case RET+P:
+ rtarget(p, 0, ireg[0]);
+ break;
+
+ case ARG+F: case ARG+I: case ARG+P: case ARG+U: {
+ Symbol q = argreg(p->syms[2]->u.c.v.i, optype(p->op));
+ if (q)
+ rtarget(p, 0, q);
+ break;
+ }
+
+
+ case ASGN+B: rtarget(p->kids[1], 0, blkreg); break;
+ case ARG+B: rtarget(p->kids[0], 0, blkreg); break;
+
+ }
+}
+
+static void clobber(Node p) {
+ assert(p);
+ switch (specific(p->op)) {
+ case ASGN+I: case ASGN+U:
+ if (opsize(p->op) <= 2)
+ spill(1<<24, IREG, p);
+ break;
+
+ case DIV+I: case DIV+U: case MOD+I: case MOD+U:
+ spill(((1<<27)|(3<<24))&~p->syms[RX]->x.regnode->mask, IREG, p);
+ break;
+
+ case CALL+F:
+ spill(INTTMP | INTRET, IREG, p);
+ spill(FLTTMP, FREG, p);
+ break;
+ case CALL+I: case CALL+P: case CALL+U:
+ spill(INTTMP, IREG, p);
+ spill(FLTTMP | FLTRET, FREG, p);
+ break;
+ case CALL+V:
+ spill(INTTMP | INTRET, IREG, p);
+ spill(FLTTMP | FLTRET, FREG, p);
+ break;
+
+ }
+}
+
+static void emit2(Node p) {
+ int dst, n, src, sz, ty;
+ static int ty0;
+ Symbol q;
+
+ switch (specific(p->op)) {
+ case ARG+F: case ARG+I: case ARG+P: case ARG+U:
+ ty = optype(p->op);
+ sz = opsize(p->op);
+ q = argreg(p->syms[2]->u.c.v.i, ty);
+ src = getregnum(p->x.kids[0]);
+ if (q)
+ break;
+ else if (ty == F && sz == 4)
+ print("sts $f%d,%d($sp)\n", src, p->syms[2]->u.c.v.i - 48);
+ else if (ty == F && sz == 8)
+ print("stt $f%d,%d($sp)\n", src, p->syms[2]->u.c.v.i - 48);
+ else if (sz == 4)
+ print("stq $%d,%d($sp)\n", src, p->syms[2]->u.c.v.i - 48);
+ else if (sz == 8)
+ print("stq $%d,%d($sp)\n", src, p->syms[2]->u.c.v.i - 48);
+ else
+ assert(0);
+ break;
+
+ case ASGN+B:
+ dalign = salign = p->syms[1]->u.c.v.i;
+ blkcopy(getregnum(p->x.kids[0]), 0,
+ getregnum(p->x.kids[1]), 0,
+ p->syms[0]->u.c.v.i, tmpregs);
+ break;
+
+
+ case ARG+B: {
+ int doff = p->syms[2]->u.c.v.i, soff = 0, sreg = getregnum(p->x.kids[0]);
+ dalign = 8;
+ salign = p->syms[1]->u.c.v.i;
+ n = p->syms[0]->u.c.v.i;
+ for ( ; doff <= 40 && n > 0; doff += 8) {
+ print("uldq $%d,%d($%d)\n", (doff/8)+16, soff, sreg);
+ soff += 8;
+ n -= 8;
+ }
+ if (n > 0)
+ blkcopy(30, doff - 48, sreg, soff, n, tmpregs);
+ break;
+ }
+
+ }
+}
+
+static void doarg(Node p) {
+ p->syms[2] = intconst(mkactual(8, roundup(p->syms[0]->u.c.v.i,8)));
+}
+
+static void local(Symbol p) {
+ if (askregvar(p, rmap(ttob(p->type))) == 0)
+ mkauto(p);
+}
+
+static int bitcount(unsigned mask) {
+ unsigned i, n = 0;
+
+ for (i = 1; i; i <<= 1)
+ if (mask&i)
+ n++;
+ return n;
+}
+
+static void function(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
+ int i, sizeargs, saved, sizefsave, sizeisave, varargs;
+ Symbol r, argregs[6];
+
+ usedmask[0] = usedmask[1] = 0;
+ freemask[0] = freemask[1] = ~(unsigned)0;
+ maxargoffset = offset = maxoffset = 0;
+
+ for (i = 0; callee[i]; i++)
+ ;
+ varargs = variadic(f->type)
+ || i > 0 && strcmp(callee[i-1]->name, "va_alist") == 0;
+ if (varargs)
+ sizeargs = 2*48;
+ else
+ sizeargs = 48;
+
+ for (i = 0; callee[i]; i++) {
+ Symbol p = callee[i];
+ Symbol q = caller[i];
+ assert(q);
+ if (isfloat(p->type) && varargs) {
+ p->x.offset = q->x.offset = offset - 2*48;
+ p->x.name = q->x.name = stringd(offset - 2*48);
+ } else {
+ p->x.offset = q->x.offset = offset - 48;
+ p->x.name = q->x.name = stringd(offset - 48);
+ }
+ offset = roundup(offset, q->type->align);
+ r = argreg(offset, optype(ttob(q->type)));
+ if (i < 6)
+ argregs[i] = r;
+ offset = roundup(offset + q->type->size, 8);
+ if (varargs)
+ p->sclass = AUTO;
+ else if (r && ncalls == 0 && !isstruct(q->type) && !p->addressed
+) {
+ p->sclass = q->sclass = REGISTER;
+ askregvar(p, r);
+ assert(p->x.regnode && p->x.regnode->vbl == p);
+ q->x = p->x;
+ q->type = p->type;
+ } else if (askregvar(p, rmap(ttob(p->type)))
+ && r != NULL /*
+ && (isint(p->type) || p->type == q->type) */
+) {
+ assert(q->sclass != REGISTER);
+ p->sclass = q->sclass = REGISTER;
+ q->type = p->type;
+ }
+
+ }
+ assert(!caller[i]);
+
+ offset = sizeargs + 8;
+ gencode(caller, callee);
+ usedmask[IREG] &= ~(INTTMP|(0x3f<<16)|INTRET);
+ usedmask[FREG] &= ~(FLTTMP|(0x3f<<16)|FLTRET);
+ if (ncalls || usedmask[IREG] || usedmask[FREG])
+ usedmask[IREG] |= 1<<26;
+ sizefsave = 8*bitcount(usedmask[FREG]);
+ sizeisave = 8*bitcount(usedmask[IREG]);
+ if (maxargoffset > 48)
+ maxargoffset -= 48;
+ else
+ maxargoffset = 0;
+ if (maxoffset < sizeargs)
+ maxoffset = sizeargs;
+ framesize = roundup(maxargoffset + sizefsave + sizeisave + maxoffset, 16);
+ segment(CODE);
+ print(".ent %s\n", f->x.name);
+ print("%s:\n", f->x.name);
+ print("ldgp $gp,0($27)\n");
+ i = maxargoffset + sizefsave - framesize;
+ if (framesize > 0)
+ print("lda $sp,%d($sp)\n", -framesize);
+ if (usedmask[FREG])
+ print(".fmask 0x%x,%d\n", usedmask[FREG], i - 8);
+ if (usedmask[IREG])
+ print(".mask 0x%x,%d\n", usedmask[IREG], i + sizeisave - 8);
+ print(".frame $sp,%d,$26,%d\n", framesize, sizeargs);
+
+ saved = maxargoffset;
+ for (i = 2; i <= 9; i++)
+ if (usedmask[FREG]&(1<<i)) {
+ print("stt $f%d,%d($sp)\n", i, saved);
+ saved += 8;
+ }
+
+ for (i = 9; i <= 26; i++)
+ if (usedmask[IREG]&(1<<i)) {
+ print("stq $%d,%d($sp)\n", i, saved);
+ saved += 8;
+ }
+ for (i = 0; i < 6 && callee[i]; i++) {
+ r = argregs[i];
+ if (r && r->x.regnode != callee[i]->x.regnode) {
+ Symbol out = callee[i];
+ Symbol in = caller[i];
+ int rn = r->x.regnode->number;
+ int rs = r->x.regnode->set;
+ int tyin = ttob(in->type);
+
+ assert(out && in && r && r->x.regnode);
+ assert(out->sclass != REGISTER || out->x.regnode);
+ if (out->sclass == REGISTER) {
+ if (rs == FREG)
+ print("fmov $f%d,$f%d\n", rn, out->x.regnode->number);
+ else
+ print("mov $%d,$%d\n", rn, out->x.regnode->number);
+
+ } else {
+ int off = in->x.offset + framesize;
+ if (rs == FREG && tyin == F+sizeop(8))
+ print("stt $f%d,%d($sp)\n", rn, off);
+ else if (rs == FREG && tyin == F+sizeop(4))
+ print("sts $f%d,%d($sp)\n", rn, off);
+ else {
+ int i, n = (in->type->size + 7)/8;
+ for (i = rn; i < rn+n && i <= 21; i++)
+ print("stq $%d,%d($sp)\n", i, off + (i-rn)*8);
+ }
+
+ }
+
+ }
+ }
+ if (varargs && callee[i-1]) {
+ i = callee[i-1]->x.offset + roundup(callee[i-1]->type->size, 8);
+ for (i = (48+i)/8; i < 6; i++) {
+ print("stq $%d,%d($sp)\n", i + 16, framesize - 48 + 8*i);
+ print("stt $f%d,%d($sp)\n", i + 16, framesize - 2*48 + 8*i);
+ }
+ }
+ print(".prologue 1\n");
+
+ emitcode();
+ saved = maxargoffset;
+ for (i = 2; i <= 9; i++)
+ if (usedmask[FREG]&(1<<i)) {
+ print("ldt $f%d,%d($sp)\n", i, saved);
+ saved += 8;
+ }
+ for (i = 9; i <= 26; i++)
+ if (usedmask[IREG]&(1<<i)) {
+ print("ldq $%d,%d($sp)\n", i, saved);
+ saved += 8;
+ }
+ if (framesize > 0)
+ print("lda $sp,%d($sp)\n", framesize);
+ print("ret\n");
+ print(".end %s\n", f->x.name);
+
+}
+
+static void defconst(int suffix, int size, Value v) {
+ if (suffix == F && size == 4) {
+ float f = v.d;
+ print(".long 0x%x\n", *(unsigned *)&f);
+ } else if (suffix == F && size == 8) {
+ double d = v.d;
+ unsigned *p = (unsigned *)&d;
+ print(".long 0x%x\n.long 0x%x\n", p[swap], p[!swap]);
+ } else if (suffix == P)
+ print(".quad 0x%X\n", v.p);
+ else if (size == 1)
+ print(".byte 0x%x\n", suffix == I ? v.i : v.u);
+ else if (size == 2)
+ print(".word 0x%x\n", suffix == I ? v.i&0xFFFF : v.u&0xFFFF);
+ else if (size == 4)
+ print(".long 0x%x\n", suffix == I ? v.i : v.u);
+ else if (size == 8)
+ print(".quad 0x%X\n", suffix == I ? v.i : v.u);
+
+}
+
+static void defaddress(Symbol p) {
+ print(".quad %s\n", p->x.name);
+}
+
+static void defstring(int n, char *str) {
+ char *s;
+
+ for (s = str; s < str + n; s++)
+ print(".byte %d\n", (*s)&0377);
+}
+
+static void export(Symbol p) {
+ print(".globl %s\n", p->x.name);
+}
+
+static void import(Symbol p) {
+ if (!isfunc(p->type))
+ print(".extern %s %d\n", p->name, p->type->size);
+}
+
+static void defsymbol(Symbol p) {
+ if (p->scope >= LOCAL && p->sclass == STATIC)
+ p->x.name = stringf("L.%d", genlabel(1));
+ else if (p->generated)
+ p->x.name = stringf("L.%s", p->name);
+ else
+ assert(p->scope != CONSTANTS || isint(p->type) || isptr(p->type)),
+ p->x.name = p->name;
+}
+
+static void address(Symbol q, Symbol p, long n) {
+ if (p->scope == GLOBAL
+ || p->sclass == STATIC || p->sclass == EXTERN)
+ q->x.name = stringf("%s%s%D", p->x.name,
+ n >= 0 ? "+" : "", n);
+ else {
+ assert(n <= INT_MAX && n >= INT_MIN);
+ q->x.offset = p->x.offset + n;
+ q->x.name = stringd(q->x.offset);
+ }
+}
+
+static void global(Symbol p) {
+ if (p->u.seg == DATA || p->u.seg == LIT) {
+ assert(p->type->align <= 8);
+ print(".align %c\n", ".01.2...3"[p->type->align]);
+ print("%s:\n", p->x.name);
+ } else if (p->sclass == STATIC || Aflag >= 2)
+ print(".lcomm %s,%d\n", p->x.name, p->type->size);
+ else
+ print( ".comm %s,%d\n", p->x.name, p->type->size);
+}
+
+static void segment(int n) {
+ cseg = n;
+ switch (n) {
+ case DATA: print(".sdata\n"); break;
+ case CODE: print(".text\n"); break;
+ case LIT: print(".rdata\n"); break;
+ }
+}
+
+static void space(int n) {
+ if (cseg != BSS)
+ print(".space %d\n", n);
+}
+
+static void blkloop(int dreg, int doff, int sreg, int soff, int size, int tmps[]) {
+ int lab = genlabel(1);
+
+ print("addq $%d,%d,$%d\n", sreg, size&~7, sreg);
+ print("addq $%d,%d,$%d\n", dreg, size&~7, tmps[2]);
+ blkcopy(tmps[2], doff, sreg, soff, size&7, tmps);
+ print("L.%d:\n", lab);
+ print("addq $%d,%d,$%d\n", sreg, -8, sreg);
+ print("addq $%d,%d,$%d\n", tmps[2], -8, tmps[2]);
+ blkcopy(tmps[2], doff, sreg, soff, 8, tmps);
+ print("cmpult $%d,$%d,$23\nbne $23,L.%d\n", dreg, tmps[2], lab);
+}
+
+static void blkfetch(int size, int off, int reg, int tmp) {
+ assert(size == 1 || size == 2 || size == 4 || size == 8);
+ if (size == 1)
+ print("ldb $%d,%d($%d)\n", tmp, off, reg);
+ else if (size == 2)
+ print("ldw $%d,%d($%d)\n", tmp, off, reg);
+ else if (salign >= size && size == 4)
+ print("ldl $%d,%d($%d)\n", tmp, off, reg);
+ else if (salign >= size && size == 8)
+ print("ldq $%d,%d($%d)\n", tmp, off, reg);
+ else if (size == 4)
+ print("uldl $%d,%d($%d)\n", tmp, off, reg);
+ else
+ print("uldq $%d,%d($%d)\n", tmp, off, reg);
+}
+
+static void blkstore(int size, int off, int reg, int tmp) {
+ assert(size == 1 || size == 2 || size == 4 || size == 8);
+ if (size == 1)
+ print("stb $%d,%d($%d)\n", tmp, off, reg);
+ else if (size == 2)
+ print("stw $%d,%d($%d)\n", tmp, off, reg);
+ else if (dalign >= size && size == 4)
+ print("stl $%d,%d($%d)\n", tmp, off, reg);
+ else if (dalign >= size && size == 8)
+ print("stq $%d,%d($%d)\n", tmp, off, reg);
+ else if (size == 4)
+ print("ustl $%d,%d($%d)\n", tmp, off, reg);
+ else
+ print("ustq $%d,%d($%d)\n", tmp, off, reg);
+}
+
+/* stabinit - initialize stab output */
+static void stabinit(char *file, int argc, char *argv[]) {
+ if (file) {
+ print(".file 2,\"%s\"\n", file);
+ currentfile = file;
+ }
+}
+
+/* stabline - emit stab entry for source coordinate *cp */
+static void stabline(Coordinate *cp) {
+ if (cp->file && cp->file != currentfile) {
+ print(".file 2,\"%s\"\n", cp->file);
+ currentfile = cp->file;
+ }
+ print(".loc 2,%d\n", cp->y);
+}
+
+/* stabsym - output a stab entry for symbol p */
+static void stabsym(Symbol p) {
+ if (p == cfunc && IR->stabline)
+ (*IR->stabline)(&p->src);
+}
+Interface alphaIR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 8, 8, 0, /* long */
+ 8, 8, 0, /* long long */
+ 4, 4, 1, /* float */
+ 8, 8, 1, /* double */
+ 8, 8, 1, /* long double */
+ 8, 8, 0, /* T * */
+ 0, 1, 0, /* struct */
+
+ 1, /* little_endian */
+ 0, /* mulops_calls */
+ 0, /* wants_callb */
+ 1, /* wants_argb */
+ 1, /* left_to_right */
+ 0, /* wants_dag */
+ 0, /* unsigned_char */
+ address,
+ blockbeg,
+ blockend,
+ defaddress,
+ defconst,
+ defstring,
+ defsymbol,
+ emit,
+ export,
+ function,
+ gen,
+ global,
+ import,
+ local,
+ progbeg,
+ progend,
+ segment,
+ space,
+ 0, 0, 0, stabinit, stabline, stabsym, 0,
+ {
+ 1, /* max_unaligned_load */
+ rmap,
+ blkfetch, blkstore, blkloop,
+ _label,
+ _rule,
+ _nts,
+ _kids,
+ _string,
+ _templates,
+ _isinstruction,
+ _ntname,
+ emit2,
+ doarg,
+ target,
+ clobber,
+
+ }
+
+};
+
+
+static char rcsid[] = "$Id: alpha.md 145 2001-10-17 21:53:10Z timo $";
+
diff --git a/lcc/src/asdl.c b/lcc/src/asdl.c
index 1c01c0c..bb22c89 100755
--- a/lcc/src/asdl.c
+++ b/lcc/src/asdl.c
@@ -1,399 +1,399 @@
-#include "c.h"
-#include "rcc.h"
-#if WIN32
-#include <fcntl.h>
-#include <io.h>
-#endif
-
-
-static list_ty interfaces;
-static rcc_program_ty pickle;
-
-char *string(const char *str) {
- return (char *)Atom_string(str);
-}
-
-char *stringd(long n) {
- return (char *)Atom_int(n);
-}
-
-char *stringn(const char *str, int len) {
- return (char *)Atom_new(str, len);
-}
-
-static void put(rcc_interface_ty node) {
- Seq_addhi(interfaces, node);
-}
-
-static int typeuid(Type ty) {
- rcc_type_ty type;
-
- assert(ty);
- if (ty->x.typeno != 0)
- return ty->x.typeno;
- ty->x.typeno = pickle->nuids++;
- switch (ty->op) {
-#define xx(op) case op: type = rcc_##op(ty->size, ty->align); break
- xx(INT);
- xx(UNSIGNED);
- xx(FLOAT);
- xx(VOID);
-#undef xx
-#define xx(op) case op: type = rcc_##op(ty->size, ty->align, typeuid(ty->type)); break
- xx(POINTER);
- xx(ARRAY);
- xx(CONST);
- xx(VOLATILE);
-#undef xx
- case CONST+VOLATILE:
- type = rcc_CONST(ty->size, ty->align, typeuid(ty->type));
- break;
- case ENUM: {
- list_ty ids = Seq_new(0);
- int i;
- for (i = 0; ty->u.sym->u.idlist[i] != NULL; i++)
- Seq_addhi(ids, rcc_enum_(ty->u.sym->u.idlist[i]->name,
- ty->u.sym->u.idlist[i]->u.value));
- assert(i > 0);
- type = rcc_ENUM(ty->size, ty->align, ty->u.sym->name, ids);
- break;
- }
- case STRUCT: case UNION: {
- list_ty fields = Seq_new(0);
- Field p = fieldlist(ty);
- for ( ; p != NULL; p = p->link)
- Seq_addhi(fields, rcc_field(p->name, typeuid(p->type), p->offset, p->bitsize, p->lsb));
- if (ty->op == STRUCT)
- type = rcc_STRUCT(ty->size, ty->align, ty->u.sym->name, fields);
- else
- type = rcc_UNION (ty->size, ty->align, ty->u.sym->name, fields);
- break;
- }
- case FUNCTION: {
- list_ty formals = Seq_new(0);
- if (ty->u.f.proto != NULL && ty->u.f.proto[0] != NULL) {
- int i;
- for (i = 0; ty->u.f.proto[i] != NULL; i++)
- Seq_addhi(formals, to_generic_int(typeuid(ty->u.f.proto[i])));
- } else if (ty->u.f.proto != NULL && ty->u.f.proto[0] == NULL)
- Seq_addhi(formals, to_generic_int(typeuid(voidtype)));
- type = rcc_FUNCTION(ty->size, ty->align, typeuid(ty->type), formals);
- break;
- }
- default: assert(0);
- }
- Seq_addhi(pickle->items, rcc_Type(ty->x.typeno, type));
- return ty->x.typeno;
-}
-
-static int symboluid(Symbol p) {
- assert(p);
- assert(p->scope != CONSTANTS && p->scope != LABELS);
- if (p->x.offset == 0)
- p->x.offset = pickle->nuids++;
- return p->x.offset;
-}
-
-static rcc_symbol_ty mk_symbol(Symbol p) {
- int flags = 0, ref = 10000*p->ref;
-
- if (p->ref > 0 && ref == 0)
- ref++;
-#define xx(f,n) flags |= p->f<<n;
- xx(structarg,0)
- xx(addressed,1)
- xx(computed,2)
- xx(temporary,3)
- xx(generated,4)
-#undef xx
- return rcc_symbol(p->name, typeuid(p->type), p->scope, p->sclass, ref, flags);
-}
-
-static rcc_real_ty mk_real(int size, Value v) {
- unsigned *p = (unsigned *)&v.d;
- return rcc_real(p[swap], p[1-swap]);
-}
-
-static void asdl_segment(int n) {
- static int cseg;
-
- if (cseg != n)
- put(rcc_Segment(cseg = n));
-}
-
-static void asdl_address(Symbol q, Symbol p, long n) {
- assert(q->x.offset == 0);
- put(rcc_Address(symboluid(q), mk_symbol(q), symboluid(p), n));
-}
-
-static void asdl_blockbeg(Env *e) {
- put(rcc_Blockbeg());
-}
-
-static void asdl_blockend(Env *e) {
- put(rcc_Blockend());
-}
-
-static void asdl_defaddress(Symbol p) {
- if (p->scope == LABELS)
- put(rcc_Deflabel(p->u.l.label));
- else
- put(rcc_Defaddress(symboluid(p)));
-}
-
-static void asdl_defconst(int suffix, int size, Value v) {
- switch (suffix) {
- case I: put(rcc_Defconst(suffix, size, v.i)); return;
- case U: put(rcc_Defconst(suffix, size, v.u)); return;
- case P: put(rcc_Defconst(suffix, size, (unsigned long)v.p)); return; /* FIXME */
- case F: put(rcc_Defconstf(size, mk_real(size, v))); return;
- assert(0);
- }
-}
-
-static void asdl_defstring(int len, char *str) {
- put(rcc_Defstring(Text_box(stringn(str, len), len)));
-}
-
-static void asdl_defsymbol(Symbol p) {
- if (p->scope >= GLOBAL)
- symboluid(p);
-}
-
-static Symbol temps;
-
-static rcc_node_ty visit(Node p) {
- Symbol q;
- rcc_node_ty left = NULL, right = NULL;
- int suffix = optype(p->op), size = opsize(p->op);
-
- assert(p);
- for (q = temps; q; q = q->u.t.next)
- if (q->u.t.cse == p) {
- q->u.t.cse = NULL;
- return rcc_CSE(0, 0, symboluid(q), visit(p));
- }
- if (p->kids[0] != NULL)
- left = visit(p->kids[0]);
- if (p->kids[1] != NULL)
- right = visit(p->kids[1]);
- switch (specific(p->op)) {
- case CNST+F:
- assert(p->syms[0]);
- return rcc_CNSTF(suffix, size, mk_real(size, p->syms[0]->u.c.v));
- case CALL+B:
- assert(p->syms[0]);
- assert(p->syms[0]->type);
- return rcc_CALLB(suffix, size, left, right, typeuid(p->syms[0]->type));
- case RET+V:
- return rcc_RET(suffix, size);
- case LABEL+V:
- assert(p->syms[0]);
- return rcc_LABEL(suffix, size, p->syms[0]->u.l.label);
- }
- switch (generic(p->op)) {
- case CNST:
- assert(p->syms[0]);
- return rcc_CNST(suffix, size, p->syms[0]->u.c.v.i); /* FIXME */
- case ARG:
- assert(p->syms[0]);
- return rcc_ARG(suffix, size, left, p->syms[0]->u.c.v.i, p->syms[1]->u.c.v.i);
- case ASGN:
- assert(p->syms[0]);
- assert(p->syms[1]);
- return rcc_ASGN(suffix, size, left, right, p->syms[0]->u.c.v.i, p->syms[1]->u.c.v.i);
- case CVF: case CVI: case CVP: case CVU:
- assert(p->syms[0]);
- return rcc_CVT(suffix, size, generic(p->op), left, p->syms[0]->u.c.v.i);
- case CALL:
- assert(p->syms[0]);
- assert(p->syms[0]->type);
- return rcc_CALL(suffix, size, left, typeuid(p->syms[0]->type));
-#define xx(op) case op: return rcc_##op(suffix, size, symboluid(p->syms[0]))
- xx(ADDRG);
- xx(ADDRF);
-#undef xx
- case ADDRL:
- if (!p->syms[0]->defined)
- (*IR->local)(p->syms[0]);
- p->syms[0]->defined = 1;
- return rcc_ADDRL(suffix, size, symboluid(p->syms[0]));
- case JUMP:
- if (p->syms[0] != NULL)
- return rcc_BRANCH(suffix, size, p->syms[0]->u.l.label);
- return rcc_Unary(suffix, size, generic(p->op), left);
- case INDIR: case RET: case NEG: case BCOM:
- return rcc_Unary(suffix, size, generic(p->op), left);
- case BOR: case BAND: case BXOR: case RSH: case LSH:
- case ADD: case SUB: case DIV: case MUL: case MOD:
- return rcc_Binary(suffix, size, generic(p->op), left, right);
- case EQ: case NE: case GT: case GE: case LE: case LT:
- assert(p->syms[0]);
- return rcc_Compare(suffix, size, generic(p->op), left, right, p->syms[0]->u.l.label);
- }
- assert(0);
- return NULL;
-}
-
-static void asdl_emit(Node p) {}
-
-static void asdl_local(Symbol p) {
- assert(p->x.offset == 0);
- put(rcc_Local(symboluid(p), mk_symbol(p)));
- if (p->temporary && p->u.t.cse) {
- p->u.t.next = temps;
- temps = p;
- }
-}
-
-static Symbol pending = NULL;
-
-static void dopending(Symbol p) {
- if (pending != NULL) {
- int uid = symboluid(pending);
- rcc_symbol_ty symbol = mk_symbol(pending);
- Seq_addhi(pickle->items, rcc_Symbol(uid, symbol));
- }
- pending = p;
-}
-
-
-static void asdl_export(Symbol p) {
- put(rcc_Export(symboluid(p)));
-}
-
-static void asdl_function(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
- list_ty codelist = Seq_new(0), save, calleelist = Seq_new(0), callerlist = Seq_new(0);
- int i;
-
- dopending(f);
- for (i = 0; caller[i] != NULL; i++) {
- asdl_local(caller[i]);
- Seq_addhi(callerlist, to_generic_int(symboluid(caller[i])));
- }
- for (i = 0; callee[i] != NULL; i++) {
- asdl_local(callee[i]);
- Seq_addhi(calleelist, to_generic_int(symboluid(callee[i])));
- }
- save = interfaces;
- interfaces = codelist;
- gencode(caller, callee);
- asdl_segment(CODE);
- emitcode();
- interfaces = save;
- put(rcc_Function(symboluid(f), callerlist, calleelist, ncalls, codelist));
-}
-
-static Node asdl_gen(Node p) {
- Node q;
- list_ty forest = Seq_new(0);
-
- for (q = p; p != NULL; p = p->link)
- if (specific(p->op) == JUMP+V && specific(p->kids[0]->op) == ADDRG+P
- && p->kids[0]->syms[0]->scope == LABELS) {
- p->syms[0] = p->kids[0]->syms[0];
- p->kids[0] = NULL;
- }
- for (p = q; p != NULL; p = p->link)
- Seq_addhi(forest, visit(p));
- put(rcc_Forest(forest));
- temps = NULL;
- return q;
-}
-
-static void asdl_global(Symbol p) {
- dopending(p);
- put(rcc_Global(symboluid(p), p->u.seg));
-}
-
-static void asdl_import(Symbol p) {
- dopending(p);
- put(rcc_Import(symboluid(p)));
-}
-
-static void asdl_progbeg(int argc, char *argv[]) {
- int i;
-
-#if WIN32
- _setmode(_fileno(stdout), _O_BINARY);
-#endif
- pickle = rcc_program(1, 0, Seq_new(0), Seq_new(0), argc, Seq_new(0));
- for (i = 0; i < argc; i++)
- Seq_addhi(pickle->argv, to_generic_string(Text_box(argv[i], strlen(argv[i]) + 1)));
- interfaces = pickle->interfaces;
-}
-
-static int checkuid(list_ty list) {
- int i, n = 0, count = Seq_length(list);
-
- for (i = 0; i < count; i++) {
- rcc_interface_ty in = Seq_get(list, i);
- if (in->kind == rcc_Local_enum
- || in->kind == rcc_Address_enum)
- n++;
- else if (in->kind == rcc_Function_enum)
- n += checkuid(in->v.rcc_Function.codelist);
- }
- return n;
-}
-
-static void asdl_progend(void) {
- dopending(NULL);
- {
- int n = checkuid(pickle->interfaces) + Seq_length(pickle->items);
- if (n != pickle->nuids - 1)
- fprintf(stderr, "?bogus uid count: have %d should have %d\n",
- n, pickle->nuids-1);
- }
- pickle->nlabels = genlabel(0);
- write_int((int)(100*(assert(strstr(rcsid, ",v")), strtod(strstr(rcsid, ",v")+2, NULL))
-), stdout);
- rcc_write_program(pickle, stdout);
-}
-static void asdl_space(int n) {
- put(rcc_Space(n));
-}
-
-void asdl_init(int argc, char *argv[]) {
- int i;
- static int inited;
-
- if (inited)
- return;
- inited = 1;
- for (i = 1; i < argc; i++)
- if (strcmp(argv[i], "-asdl") == 0) {
-#define xx(f) IR->f = asdl_##f
- xx(address);
- xx(blockbeg);
- xx(blockend);
- xx(defaddress);
- xx(defconst);
- xx(defstring);
- xx(defsymbol);
- xx(emit);
- xx(export);
- xx(function);
- xx(gen);
- xx(global);
- xx(import);
- xx(local);
- xx(progbeg);
- xx(progend);
- xx(segment);
- xx(space);
-#undef xx
-#define xx(f) IR->f = 0
- xx(stabblock);
- xx(stabend);
- xx(stabfend);
- xx(stabinit);
- xx(stabline);
- xx(stabsym);
- xx(stabtype);
-#undef xx
- IR->wants_dag = 0;
- prunetemps = 0; /* pass2 prunes useless temps */
- assignargs = 0; /* pass2 generates caller to callee assignments */
- }
-}
+#include "c.h"
+#include "rcc.h"
+#if WIN32
+#include <fcntl.h>
+#include <io.h>
+#endif
+
+
+static list_ty interfaces;
+static rcc_program_ty pickle;
+
+char *string(const char *str) {
+ return (char *)Atom_string(str);
+}
+
+char *stringd(long n) {
+ return (char *)Atom_int(n);
+}
+
+char *stringn(const char *str, int len) {
+ return (char *)Atom_new(str, len);
+}
+
+static void put(rcc_interface_ty node) {
+ Seq_addhi(interfaces, node);
+}
+
+static int typeuid(Type ty) {
+ rcc_type_ty type;
+
+ assert(ty);
+ if (ty->x.typeno != 0)
+ return ty->x.typeno;
+ ty->x.typeno = pickle->nuids++;
+ switch (ty->op) {
+#define xx(op) case op: type = rcc_##op(ty->size, ty->align); break
+ xx(INT);
+ xx(UNSIGNED);
+ xx(FLOAT);
+ xx(VOID);
+#undef xx
+#define xx(op) case op: type = rcc_##op(ty->size, ty->align, typeuid(ty->type)); break
+ xx(POINTER);
+ xx(ARRAY);
+ xx(CONST);
+ xx(VOLATILE);
+#undef xx
+ case CONST+VOLATILE:
+ type = rcc_CONST(ty->size, ty->align, typeuid(ty->type));
+ break;
+ case ENUM: {
+ list_ty ids = Seq_new(0);
+ int i;
+ for (i = 0; ty->u.sym->u.idlist[i] != NULL; i++)
+ Seq_addhi(ids, rcc_enum_(ty->u.sym->u.idlist[i]->name,
+ ty->u.sym->u.idlist[i]->u.value));
+ assert(i > 0);
+ type = rcc_ENUM(ty->size, ty->align, ty->u.sym->name, ids);
+ break;
+ }
+ case STRUCT: case UNION: {
+ list_ty fields = Seq_new(0);
+ Field p = fieldlist(ty);
+ for ( ; p != NULL; p = p->link)
+ Seq_addhi(fields, rcc_field(p->name, typeuid(p->type), p->offset, p->bitsize, p->lsb));
+ if (ty->op == STRUCT)
+ type = rcc_STRUCT(ty->size, ty->align, ty->u.sym->name, fields);
+ else
+ type = rcc_UNION (ty->size, ty->align, ty->u.sym->name, fields);
+ break;
+ }
+ case FUNCTION: {
+ list_ty formals = Seq_new(0);
+ if (ty->u.f.proto != NULL && ty->u.f.proto[0] != NULL) {
+ int i;
+ for (i = 0; ty->u.f.proto[i] != NULL; i++)
+ Seq_addhi(formals, to_generic_int(typeuid(ty->u.f.proto[i])));
+ } else if (ty->u.f.proto != NULL && ty->u.f.proto[0] == NULL)
+ Seq_addhi(formals, to_generic_int(typeuid(voidtype)));
+ type = rcc_FUNCTION(ty->size, ty->align, typeuid(ty->type), formals);
+ break;
+ }
+ default: assert(0);
+ }
+ Seq_addhi(pickle->items, rcc_Type(ty->x.typeno, type));
+ return ty->x.typeno;
+}
+
+static int symboluid(Symbol p) {
+ assert(p);
+ assert(p->scope != CONSTANTS && p->scope != LABELS);
+ if (p->x.offset == 0)
+ p->x.offset = pickle->nuids++;
+ return p->x.offset;
+}
+
+static rcc_symbol_ty mk_symbol(Symbol p) {
+ int flags = 0, ref = 10000*p->ref;
+
+ if (p->ref > 0 && ref == 0)
+ ref++;
+#define xx(f,n) flags |= p->f<<n;
+ xx(structarg,0)
+ xx(addressed,1)
+ xx(computed,2)
+ xx(temporary,3)
+ xx(generated,4)
+#undef xx
+ return rcc_symbol(p->name, typeuid(p->type), p->scope, p->sclass, ref, flags);
+}
+
+static rcc_real_ty mk_real(int size, Value v) {
+ unsigned *p = (unsigned *)&v.d;
+ return rcc_real(p[swap], p[1-swap]);
+}
+
+static void asdl_segment(int n) {
+ static int cseg;
+
+ if (cseg != n)
+ put(rcc_Segment(cseg = n));
+}
+
+static void asdl_address(Symbol q, Symbol p, long n) {
+ assert(q->x.offset == 0);
+ put(rcc_Address(symboluid(q), mk_symbol(q), symboluid(p), n));
+}
+
+static void asdl_blockbeg(Env *e) {
+ put(rcc_Blockbeg());
+}
+
+static void asdl_blockend(Env *e) {
+ put(rcc_Blockend());
+}
+
+static void asdl_defaddress(Symbol p) {
+ if (p->scope == LABELS)
+ put(rcc_Deflabel(p->u.l.label));
+ else
+ put(rcc_Defaddress(symboluid(p)));
+}
+
+static void asdl_defconst(int suffix, int size, Value v) {
+ switch (suffix) {
+ case I: put(rcc_Defconst(suffix, size, v.i)); return;
+ case U: put(rcc_Defconst(suffix, size, v.u)); return;
+ case P: put(rcc_Defconst(suffix, size, (unsigned long)v.p)); return; /* FIXME */
+ case F: put(rcc_Defconstf(size, mk_real(size, v))); return;
+ assert(0);
+ }
+}
+
+static void asdl_defstring(int len, char *str) {
+ put(rcc_Defstring(Text_box(stringn(str, len), len)));
+}
+
+static void asdl_defsymbol(Symbol p) {
+ if (p->scope >= GLOBAL)
+ symboluid(p);
+}
+
+static Symbol temps;
+
+static rcc_node_ty visit(Node p) {
+ Symbol q;
+ rcc_node_ty left = NULL, right = NULL;
+ int suffix = optype(p->op), size = opsize(p->op);
+
+ assert(p);
+ for (q = temps; q; q = q->u.t.next)
+ if (q->u.t.cse == p) {
+ q->u.t.cse = NULL;
+ return rcc_CSE(0, 0, symboluid(q), visit(p));
+ }
+ if (p->kids[0] != NULL)
+ left = visit(p->kids[0]);
+ if (p->kids[1] != NULL)
+ right = visit(p->kids[1]);
+ switch (specific(p->op)) {
+ case CNST+F:
+ assert(p->syms[0]);
+ return rcc_CNSTF(suffix, size, mk_real(size, p->syms[0]->u.c.v));
+ case CALL+B:
+ assert(p->syms[0]);
+ assert(p->syms[0]->type);
+ return rcc_CALLB(suffix, size, left, right, typeuid(p->syms[0]->type));
+ case RET+V:
+ return rcc_RET(suffix, size);
+ case LABEL+V:
+ assert(p->syms[0]);
+ return rcc_LABEL(suffix, size, p->syms[0]->u.l.label);
+ }
+ switch (generic(p->op)) {
+ case CNST:
+ assert(p->syms[0]);
+ return rcc_CNST(suffix, size, p->syms[0]->u.c.v.i); /* FIXME */
+ case ARG:
+ assert(p->syms[0]);
+ return rcc_ARG(suffix, size, left, p->syms[0]->u.c.v.i, p->syms[1]->u.c.v.i);
+ case ASGN:
+ assert(p->syms[0]);
+ assert(p->syms[1]);
+ return rcc_ASGN(suffix, size, left, right, p->syms[0]->u.c.v.i, p->syms[1]->u.c.v.i);
+ case CVF: case CVI: case CVP: case CVU:
+ assert(p->syms[0]);
+ return rcc_CVT(suffix, size, generic(p->op), left, p->syms[0]->u.c.v.i);
+ case CALL:
+ assert(p->syms[0]);
+ assert(p->syms[0]->type);
+ return rcc_CALL(suffix, size, left, typeuid(p->syms[0]->type));
+#define xx(op) case op: return rcc_##op(suffix, size, symboluid(p->syms[0]))
+ xx(ADDRG);
+ xx(ADDRF);
+#undef xx
+ case ADDRL:
+ if (!p->syms[0]->defined)
+ (*IR->local)(p->syms[0]);
+ p->syms[0]->defined = 1;
+ return rcc_ADDRL(suffix, size, symboluid(p->syms[0]));
+ case JUMP:
+ if (p->syms[0] != NULL)
+ return rcc_BRANCH(suffix, size, p->syms[0]->u.l.label);
+ return rcc_Unary(suffix, size, generic(p->op), left);
+ case INDIR: case RET: case NEG: case BCOM:
+ return rcc_Unary(suffix, size, generic(p->op), left);
+ case BOR: case BAND: case BXOR: case RSH: case LSH:
+ case ADD: case SUB: case DIV: case MUL: case MOD:
+ return rcc_Binary(suffix, size, generic(p->op), left, right);
+ case EQ: case NE: case GT: case GE: case LE: case LT:
+ assert(p->syms[0]);
+ return rcc_Compare(suffix, size, generic(p->op), left, right, p->syms[0]->u.l.label);
+ }
+ assert(0);
+ return NULL;
+}
+
+static void asdl_emit(Node p) {}
+
+static void asdl_local(Symbol p) {
+ assert(p->x.offset == 0);
+ put(rcc_Local(symboluid(p), mk_symbol(p)));
+ if (p->temporary && p->u.t.cse) {
+ p->u.t.next = temps;
+ temps = p;
+ }
+}
+
+static Symbol pending = NULL;
+
+static void dopending(Symbol p) {
+ if (pending != NULL) {
+ int uid = symboluid(pending);
+ rcc_symbol_ty symbol = mk_symbol(pending);
+ Seq_addhi(pickle->items, rcc_Symbol(uid, symbol));
+ }
+ pending = p;
+}
+
+
+static void asdl_export(Symbol p) {
+ put(rcc_Export(symboluid(p)));
+}
+
+static void asdl_function(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
+ list_ty codelist = Seq_new(0), save, calleelist = Seq_new(0), callerlist = Seq_new(0);
+ int i;
+
+ dopending(f);
+ for (i = 0; caller[i] != NULL; i++) {
+ asdl_local(caller[i]);
+ Seq_addhi(callerlist, to_generic_int(symboluid(caller[i])));
+ }
+ for (i = 0; callee[i] != NULL; i++) {
+ asdl_local(callee[i]);
+ Seq_addhi(calleelist, to_generic_int(symboluid(callee[i])));
+ }
+ save = interfaces;
+ interfaces = codelist;
+ gencode(caller, callee);
+ asdl_segment(CODE);
+ emitcode();
+ interfaces = save;
+ put(rcc_Function(symboluid(f), callerlist, calleelist, ncalls, codelist));
+}
+
+static Node asdl_gen(Node p) {
+ Node q;
+ list_ty forest = Seq_new(0);
+
+ for (q = p; p != NULL; p = p->link)
+ if (specific(p->op) == JUMP+V && specific(p->kids[0]->op) == ADDRG+P
+ && p->kids[0]->syms[0]->scope == LABELS) {
+ p->syms[0] = p->kids[0]->syms[0];
+ p->kids[0] = NULL;
+ }
+ for (p = q; p != NULL; p = p->link)
+ Seq_addhi(forest, visit(p));
+ put(rcc_Forest(forest));
+ temps = NULL;
+ return q;
+}
+
+static void asdl_global(Symbol p) {
+ dopending(p);
+ put(rcc_Global(symboluid(p), p->u.seg));
+}
+
+static void asdl_import(Symbol p) {
+ dopending(p);
+ put(rcc_Import(symboluid(p)));
+}
+
+static void asdl_progbeg(int argc, char *argv[]) {
+ int i;
+
+#if WIN32
+ _setmode(_fileno(stdout), _O_BINARY);
+#endif
+ pickle = rcc_program(1, 0, Seq_new(0), Seq_new(0), argc, Seq_new(0));
+ for (i = 0; i < argc; i++)
+ Seq_addhi(pickle->argv, to_generic_string(Text_box(argv[i], strlen(argv[i]) + 1)));
+ interfaces = pickle->interfaces;
+}
+
+static int checkuid(list_ty list) {
+ int i, n = 0, count = Seq_length(list);
+
+ for (i = 0; i < count; i++) {
+ rcc_interface_ty in = Seq_get(list, i);
+ if (in->kind == rcc_Local_enum
+ || in->kind == rcc_Address_enum)
+ n++;
+ else if (in->kind == rcc_Function_enum)
+ n += checkuid(in->v.rcc_Function.codelist);
+ }
+ return n;
+}
+
+static void asdl_progend(void) {
+ dopending(NULL);
+ {
+ int n = checkuid(pickle->interfaces) + Seq_length(pickle->items);
+ if (n != pickle->nuids - 1)
+ fprintf(stderr, "?bogus uid count: have %d should have %d\n",
+ n, pickle->nuids-1);
+ }
+ pickle->nlabels = genlabel(0);
+ write_int((int)(100*(assert(strstr(rcsid, ",v")), strtod(strstr(rcsid, ",v")+2, NULL))
+), stdout);
+ rcc_write_program(pickle, stdout);
+}
+static void asdl_space(int n) {
+ put(rcc_Space(n));
+}
+
+void asdl_init(int argc, char *argv[]) {
+ int i;
+ static int inited;
+
+ if (inited)
+ return;
+ inited = 1;
+ for (i = 1; i < argc; i++)
+ if (strcmp(argv[i], "-asdl") == 0) {
+#define xx(f) IR->f = asdl_##f
+ xx(address);
+ xx(blockbeg);
+ xx(blockend);
+ xx(defaddress);
+ xx(defconst);
+ xx(defstring);
+ xx(defsymbol);
+ xx(emit);
+ xx(export);
+ xx(function);
+ xx(gen);
+ xx(global);
+ xx(import);
+ xx(local);
+ xx(progbeg);
+ xx(progend);
+ xx(segment);
+ xx(space);
+#undef xx
+#define xx(f) IR->f = 0
+ xx(stabblock);
+ xx(stabend);
+ xx(stabfend);
+ xx(stabinit);
+ xx(stabline);
+ xx(stabsym);
+ xx(stabtype);
+#undef xx
+ IR->wants_dag = 0;
+ prunetemps = 0; /* pass2 prunes useless temps */
+ assignargs = 0; /* pass2 generates caller to callee assignments */
+ }
+}
diff --git a/lcc/src/bind.c b/lcc/src/bind.c
index 3723e37..562ffda 100755
--- a/lcc/src/bind.c
+++ b/lcc/src/bind.c
@@ -1,23 +1,23 @@
-#include "c.h"
-extern Interface alphaIR;
-extern Interface mipsebIR, mipselIR;
-extern Interface sparcIR, solarisIR;
-extern Interface x86IR, x86linuxIR;
-extern Interface symbolicIR, symbolic64IR;
-extern Interface nullIR;
-extern Interface bytecodeIR;
-Binding bindings[] = {
- "alpha/osf", &alphaIR,
- "mips/irix", &mipsebIR,
- "mips/ultrix", &mipselIR,
- "sparc/sun", &sparcIR,
- "sparc/solaris", &solarisIR,
- "x86/win32", &x86IR,
- "x86/linux", &x86linuxIR,
- "symbolic/osf", &symbolic64IR,
- "symbolic/irix", &symbolicIR,
- "symbolic", &symbolicIR,
- "null", &nullIR,
- "bytecode", &bytecodeIR,
- NULL, NULL
-};
+#include "c.h"
+extern Interface alphaIR;
+extern Interface mipsebIR, mipselIR;
+extern Interface sparcIR, solarisIR;
+extern Interface x86IR, x86linuxIR;
+extern Interface symbolicIR, symbolic64IR;
+extern Interface nullIR;
+extern Interface bytecodeIR;
+Binding bindings[] = {
+ "alpha/osf", &alphaIR,
+ "mips/irix", &mipsebIR,
+ "mips/ultrix", &mipselIR,
+ "sparc/sun", &sparcIR,
+ "sparc/solaris", &solarisIR,
+ "x86/win32", &x86IR,
+ "x86/linux", &x86linuxIR,
+ "symbolic/osf", &symbolic64IR,
+ "symbolic/irix", &symbolicIR,
+ "symbolic", &symbolicIR,
+ "null", &nullIR,
+ "bytecode", &bytecodeIR,
+ NULL, NULL
+};
diff --git a/lcc/src/bytecode.c b/lcc/src/bytecode.c
index f32a04f..8b8a6b6 100755
--- a/lcc/src/bytecode.c
+++ b/lcc/src/bytecode.c
@@ -1,365 +1,365 @@
-#include "c.h"
-#define I(f) b_##f
-
-
-static void I(segment)(int n) {
- static int cseg;
-
- if (cseg != n)
- switch (cseg = n) {
- case CODE: print("code\n"); return;
- case DATA: print("data\n"); return;
- case BSS: print("bss\n"); return;
- case LIT: print("lit\n"); return;
- default: assert(0);
- }
-}
-
-static void I(address)(Symbol q, Symbol p, long n) {
- q->x.name = stringf("%s%s%D", p->x.name, n > 0 ? "+" : "", n);
-}
-
-static void I(defaddress)(Symbol p) {
- print("address %s\n", p->x.name);
-}
-
-static void I(defconst)(int suffix, int size, Value v) {
- switch (suffix) {
- case I:
- if (size > sizeof (int))
- print("byte %d %D\n", size, v.i);
- else
- print("byte %d %d\n", size, v.i);
- return;
- case U:
- if (size > sizeof (unsigned))
- print("byte %d %U\n", size, v.u);
- else
- print("byte %d %u\n", size, v.u);
- return;
- case P: print("byte %d %U\n", size, (unsigned long)v.p); return;
- case F:
- if (size == 4) {
- float f = v.d;
- print("byte 4 %u\n", *(unsigned *)&f);
- } else {
- unsigned *p = (unsigned *)&v.d;
- print("byte 4 %u\n", p[swap]);
- print("byte 4 %u\n", p[1 - swap]);
- }
- return;
- }
- assert(0);
-}
-
-static void I(defstring)(int len, char *str) {
- char *s;
-
- for (s = str; s < str + len; s++)
- print("byte 1 %d\n", (*s)&0377);
-}
-
-static void I(defsymbol)(Symbol p) {
- if (p->scope == CONSTANTS)
- switch (optype(ttob(p->type))) {
- case I: p->x.name = stringf("%D", p->u.c.v.i); break;
- case U: p->x.name = stringf("%U", p->u.c.v.u); break;
- case P: p->x.name = stringf("%U", p->u.c.v.p); break;
- case F:
- { // JDC: added this to get inline floats
- unsigned temp;
-
- *(float *)&temp = p->u.c.v.d;
- p->x.name = stringf("%U", temp );
- }
- break;// JDC: added this
- default: assert(0);
- }
- else if (p->scope >= LOCAL && p->sclass == STATIC)
- p->x.name = stringf("$%d", genlabel(1));
- else if (p->scope == LABELS || p->generated)
- p->x.name = stringf("$%s", p->name);
- else
- p->x.name = p->name;
-}
-
-static void dumptree(Node p) {
- switch (specific(p->op)) {
- case ASGN+B:
- assert(p->kids[0]);
- assert(p->kids[1]);
- assert(p->syms[0]);
- dumptree(p->kids[0]);
- dumptree(p->kids[1]);
- print("%s %d\n", opname(p->op), p->syms[0]->u.c.v.u);
- return;
- case RET+V:
- assert(!p->kids[0]);
- assert(!p->kids[1]);
- print("%s\n", opname(p->op));
- return;
- }
- switch (generic(p->op)) {
- case CNST: case ADDRG: case ADDRF: case ADDRL: case LABEL:
- assert(!p->kids[0]);
- assert(!p->kids[1]);
- assert(p->syms[0] && p->syms[0]->x.name);
- print("%s %s\n", opname(p->op), p->syms[0]->x.name);
- return;
- case CVF: case CVI: case CVP: case CVU:
- assert(p->kids[0]);
- assert(!p->kids[1]);
- assert(p->syms[0]);
- dumptree(p->kids[0]);
- print("%s %d\n", opname(p->op), p->syms[0]->u.c.v.i);
- return;
- case ARG: case BCOM: case NEG: case INDIR: case JUMP: case RET:
- assert(p->kids[0]);
- assert(!p->kids[1]);
- dumptree(p->kids[0]);
- print("%s\n", opname(p->op));
- return;
- case CALL:
- assert(p->kids[0]);
- assert(!p->kids[1]);
- assert(optype(p->op) != B);
- dumptree(p->kids[0]);
- print("%s\n", opname(p->op));
- if ( !p->count ) { printf("pop\n"); }; // JDC
- return;
- case ASGN: case BOR: case BAND: case BXOR: case RSH: case LSH:
- case ADD: case SUB: case DIV: case MUL: case MOD:
- assert(p->kids[0]);
- assert(p->kids[1]);
- dumptree(p->kids[0]);
- dumptree(p->kids[1]);
- print("%s\n", opname(p->op));
- return;
- case EQ: case NE: case GT: case GE: case LE: case LT:
- assert(p->kids[0]);
- assert(p->kids[1]);
- assert(p->syms[0]);
- assert(p->syms[0]->x.name);
- dumptree(p->kids[0]);
- dumptree(p->kids[1]);
- print("%s %s\n", opname(p->op), p->syms[0]->x.name);
- return;
- }
- assert(0);
-}
-
-static void I(emit)(Node p) {
- for (; p; p = p->link)
- dumptree(p);
-}
-
-static void I(export)(Symbol p) {
- print("export %s\n", p->x.name);
-}
-
-static void I(function)(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
- int i;
-
- (*IR->segment)(CODE);
- offset = 0;
- for (i = 0; caller[i] && callee[i]; i++) {
- offset = roundup(offset, caller[i]->type->align);
- caller[i]->x.name = callee[i]->x.name = stringf("%d", offset);
- caller[i]->x.offset = callee[i]->x.offset = offset;
- offset += caller[i]->type->size;
- }
- maxargoffset = maxoffset = argoffset = offset = 0;
- gencode(caller, callee);
- print("proc %s %d %d\n", f->x.name, maxoffset, maxargoffset);
- emitcode();
- print("endproc %s %d %d\n", f->x.name, maxoffset, maxargoffset);
-
-}
-
-static void gen02(Node p) {
- assert(p);
- if (generic(p->op) == ARG) {
- assert(p->syms[0]);
- argoffset += (p->syms[0]->u.c.v.i < 4 ? 4 : p->syms[0]->u.c.v.i);
- } else if (generic(p->op) == CALL) {
- maxargoffset = (argoffset > maxargoffset ? argoffset : maxargoffset);
- argoffset = 0;
- }
-}
-
-static void gen01(Node p) {
- if (p) {
- gen01(p->kids[0]);
- gen01(p->kids[1]);
- gen02(p);
- }
-}
-
-static Node I(gen)(Node p) {
- Node q;
-
- assert(p);
- for (q = p; q; q = q->link)
- gen01(q);
- return p;
-}
-
-static void I(global)(Symbol p) {
- print("align %d\n", p->type->align > 4 ? 4 : p->type->align);
- print("LABELV %s\n", p->x.name);
-}
-
-static void I(import)(Symbol p) {
- print("import %s\n", p->x.name);
-}
-
-static void I(local)(Symbol p) {
- offset = roundup(offset, p->type->align);
- p->x.name = stringf("%d", offset);
- p->x.offset = offset;
- offset += p->type->size;
-}
-
-static void I(progbeg)(int argc, char *argv[]) {}
-
-static void I(progend)(void) {}
-
-static void I(space)(int n) {
- print("skip %d\n", n);
-}
-
-//========================================================
-
-// JDC: hacked up to get interleaved source lines in asm code
-static char *sourceFile;
-static char *sourcePtr;
-static int sourceLine;
-
-static int filelength( FILE *f ) {
- int pos;
- int end;
-
- pos = ftell (f);
- fseek (f, 0, SEEK_END);
- end = ftell (f);
- fseek (f, pos, SEEK_SET);
-
- return end;
-}
-
-static void LoadSourceFile( const char *filename ) {
- FILE *f;
- int length;
-
- f = fopen( filename, "r" );
- if ( !f ) {
- print( ";couldn't open %s\n", filename );
- sourceFile = NULL;
- return;
- }
- length = filelength( f );
- sourceFile = malloc( length + 1 );
- if ( sourceFile ) {
- fread( sourceFile, length, 1, f );
- sourceFile[length] = 0;
- }
-
- fclose( f );
- sourceLine = 1;
- sourcePtr = sourceFile;
-}
-
-static void PrintToSourceLine( int line ) {
- int c;
-
- if ( !sourceFile ) {
- return;
- }
- while ( sourceLine <= line ) {
- int i;
-
- for ( i = 0 ; sourcePtr[i] && sourcePtr[i] != '\n' ; i++ ) {
- }
- c = sourcePtr[i];
- if ( c == '\n' ) {
- sourcePtr[i] = 0;
- }
- print( ";%d:%s\n", sourceLine, sourcePtr );
- if ( c == 0 ) {
- sourcePtr += i; // end of file
- } else {
- sourcePtr += i+1;
- }
- sourceLine++;
- }
-}
-
-static void I(stabline)(Coordinate *cp) {
- static char *prevfile;
- static int prevline;
-
- if (cp->file && (prevfile == NULL || strcmp(prevfile, cp->file) != 0)) {
- print("file \"%s\"\n", prevfile = cp->file);
- prevline = 0;
- if ( sourceFile ) {
- free( sourceFile );
- sourceFile = NULL;
- }
- // load the new source file
- LoadSourceFile( cp->file );
- }
- if (cp->y != prevline) {
- print("line %d\n", prevline = cp->y);
- PrintToSourceLine( cp->y );
- }
-}
-
-//========================================================
-
-#define b_blockbeg blockbeg
-#define b_blockend blockend
-
-Interface bytecodeIR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 4, 4, 0, /* long */
- 4, 4, 0, /* long long */
- 4, 4, 0, /* float */ // JDC: use inline floats
- 4, 4, 0, /* double */ // JDC: don't ever emit 8 byte double code
- 4, 4, 0, /* long double */ // JDC: don't ever emit 8 byte double code
- 4, 4, 0, /* T* */
- 0, 4, 0, /* struct */
- 0, /* little_endian */
- 0, /* mulops_calls */
- 0, /* wants_callb */
- 0, /* wants_argb */
- 1, /* left_to_right */
- 0, /* wants_dag */
- 0, /* unsigned_char */
- I(address),
- I(blockbeg),
- I(blockend),
- I(defaddress),
- I(defconst),
- I(defstring),
- I(defsymbol),
- I(emit),
- I(export),
- I(function),
- I(gen),
- I(global),
- I(import),
- I(local),
- I(progbeg),
- I(progend),
- I(segment),
- I(space),
- 0, /* I(stabblock) */
- 0, /* I(stabend) */
- 0, /* I(stabfend) */
- 0, /* I(stabinit) */
- I(stabline),
- 0, /* I(stabsym) */
- 0, /* I(stabtype) */
-};
+#include "c.h"
+#define I(f) b_##f
+
+
+static void I(segment)(int n) {
+ static int cseg;
+
+ if (cseg != n)
+ switch (cseg = n) {
+ case CODE: print("code\n"); return;
+ case DATA: print("data\n"); return;
+ case BSS: print("bss\n"); return;
+ case LIT: print("lit\n"); return;
+ default: assert(0);
+ }
+}
+
+static void I(address)(Symbol q, Symbol p, long n) {
+ q->x.name = stringf("%s%s%D", p->x.name, n > 0 ? "+" : "", n);
+}
+
+static void I(defaddress)(Symbol p) {
+ print("address %s\n", p->x.name);
+}
+
+static void I(defconst)(int suffix, int size, Value v) {
+ switch (suffix) {
+ case I:
+ if (size > sizeof (int))
+ print("byte %d %D\n", size, v.i);
+ else
+ print("byte %d %d\n", size, v.i);
+ return;
+ case U:
+ if (size > sizeof (unsigned))
+ print("byte %d %U\n", size, v.u);
+ else
+ print("byte %d %u\n", size, v.u);
+ return;
+ case P: print("byte %d %U\n", size, (unsigned long)v.p); return;
+ case F:
+ if (size == 4) {
+ float f = v.d;
+ print("byte 4 %u\n", *(unsigned *)&f);
+ } else {
+ unsigned *p = (unsigned *)&v.d;
+ print("byte 4 %u\n", p[swap]);
+ print("byte 4 %u\n", p[1 - swap]);
+ }
+ return;
+ }
+ assert(0);
+}
+
+static void I(defstring)(int len, char *str) {
+ char *s;
+
+ for (s = str; s < str + len; s++)
+ print("byte 1 %d\n", (*s)&0377);
+}
+
+static void I(defsymbol)(Symbol p) {
+ if (p->scope == CONSTANTS)
+ switch (optype(ttob(p->type))) {
+ case I: p->x.name = stringf("%D", p->u.c.v.i); break;
+ case U: p->x.name = stringf("%U", p->u.c.v.u); break;
+ case P: p->x.name = stringf("%U", p->u.c.v.p); break;
+ case F:
+ { // JDC: added this to get inline floats
+ unsigned temp;
+
+ *(float *)&temp = p->u.c.v.d;
+ p->x.name = stringf("%U", temp );
+ }
+ break;// JDC: added this
+ default: assert(0);
+ }
+ else if (p->scope >= LOCAL && p->sclass == STATIC)
+ p->x.name = stringf("$%d", genlabel(1));
+ else if (p->scope == LABELS || p->generated)
+ p->x.name = stringf("$%s", p->name);
+ else
+ p->x.name = p->name;
+}
+
+static void dumptree(Node p) {
+ switch (specific(p->op)) {
+ case ASGN+B:
+ assert(p->kids[0]);
+ assert(p->kids[1]);
+ assert(p->syms[0]);
+ dumptree(p->kids[0]);
+ dumptree(p->kids[1]);
+ print("%s %d\n", opname(p->op), p->syms[0]->u.c.v.u);
+ return;
+ case RET+V:
+ assert(!p->kids[0]);
+ assert(!p->kids[1]);
+ print("%s\n", opname(p->op));
+ return;
+ }
+ switch (generic(p->op)) {
+ case CNST: case ADDRG: case ADDRF: case ADDRL: case LABEL:
+ assert(!p->kids[0]);
+ assert(!p->kids[1]);
+ assert(p->syms[0] && p->syms[0]->x.name);
+ print("%s %s\n", opname(p->op), p->syms[0]->x.name);
+ return;
+ case CVF: case CVI: case CVP: case CVU:
+ assert(p->kids[0]);
+ assert(!p->kids[1]);
+ assert(p->syms[0]);
+ dumptree(p->kids[0]);
+ print("%s %d\n", opname(p->op), p->syms[0]->u.c.v.i);
+ return;
+ case ARG: case BCOM: case NEG: case INDIR: case JUMP: case RET:
+ assert(p->kids[0]);
+ assert(!p->kids[1]);
+ dumptree(p->kids[0]);
+ print("%s\n", opname(p->op));
+ return;
+ case CALL:
+ assert(p->kids[0]);
+ assert(!p->kids[1]);
+ assert(optype(p->op) != B);
+ dumptree(p->kids[0]);
+ print("%s\n", opname(p->op));
+ if ( !p->count ) { printf("pop\n"); }; // JDC
+ return;
+ case ASGN: case BOR: case BAND: case BXOR: case RSH: case LSH:
+ case ADD: case SUB: case DIV: case MUL: case MOD:
+ assert(p->kids[0]);
+ assert(p->kids[1]);
+ dumptree(p->kids[0]);
+ dumptree(p->kids[1]);
+ print("%s\n", opname(p->op));
+ return;
+ case EQ: case NE: case GT: case GE: case LE: case LT:
+ assert(p->kids[0]);
+ assert(p->kids[1]);
+ assert(p->syms[0]);
+ assert(p->syms[0]->x.name);
+ dumptree(p->kids[0]);
+ dumptree(p->kids[1]);
+ print("%s %s\n", opname(p->op), p->syms[0]->x.name);
+ return;
+ }
+ assert(0);
+}
+
+static void I(emit)(Node p) {
+ for (; p; p = p->link)
+ dumptree(p);
+}
+
+static void I(export)(Symbol p) {
+ print("export %s\n", p->x.name);
+}
+
+static void I(function)(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
+ int i;
+
+ (*IR->segment)(CODE);
+ offset = 0;
+ for (i = 0; caller[i] && callee[i]; i++) {
+ offset = roundup(offset, caller[i]->type->align);
+ caller[i]->x.name = callee[i]->x.name = stringf("%d", offset);
+ caller[i]->x.offset = callee[i]->x.offset = offset;
+ offset += caller[i]->type->size;
+ }
+ maxargoffset = maxoffset = argoffset = offset = 0;
+ gencode(caller, callee);
+ print("proc %s %d %d\n", f->x.name, maxoffset, maxargoffset);
+ emitcode();
+ print("endproc %s %d %d\n", f->x.name, maxoffset, maxargoffset);
+
+}
+
+static void gen02(Node p) {
+ assert(p);
+ if (generic(p->op) == ARG) {
+ assert(p->syms[0]);
+ argoffset += (p->syms[0]->u.c.v.i < 4 ? 4 : p->syms[0]->u.c.v.i);
+ } else if (generic(p->op) == CALL) {
+ maxargoffset = (argoffset > maxargoffset ? argoffset : maxargoffset);
+ argoffset = 0;
+ }
+}
+
+static void gen01(Node p) {
+ if (p) {
+ gen01(p->kids[0]);
+ gen01(p->kids[1]);
+ gen02(p);
+ }
+}
+
+static Node I(gen)(Node p) {
+ Node q;
+
+ assert(p);
+ for (q = p; q; q = q->link)
+ gen01(q);
+ return p;
+}
+
+static void I(global)(Symbol p) {
+ print("align %d\n", p->type->align > 4 ? 4 : p->type->align);
+ print("LABELV %s\n", p->x.name);
+}
+
+static void I(import)(Symbol p) {
+ print("import %s\n", p->x.name);
+}
+
+static void I(local)(Symbol p) {
+ offset = roundup(offset, p->type->align);
+ p->x.name = stringf("%d", offset);
+ p->x.offset = offset;
+ offset += p->type->size;
+}
+
+static void I(progbeg)(int argc, char *argv[]) {}
+
+static void I(progend)(void) {}
+
+static void I(space)(int n) {
+ print("skip %d\n", n);
+}
+
+//========================================================
+
+// JDC: hacked up to get interleaved source lines in asm code
+static char *sourceFile;
+static char *sourcePtr;
+static int sourceLine;
+
+static int filelength( FILE *f ) {
+ int pos;
+ int end;
+
+ pos = ftell (f);
+ fseek (f, 0, SEEK_END);
+ end = ftell (f);
+ fseek (f, pos, SEEK_SET);
+
+ return end;
+}
+
+static void LoadSourceFile( const char *filename ) {
+ FILE *f;
+ int length;
+
+ f = fopen( filename, "r" );
+ if ( !f ) {
+ print( ";couldn't open %s\n", filename );
+ sourceFile = NULL;
+ return;
+ }
+ length = filelength( f );
+ sourceFile = malloc( length + 1 );
+ if ( sourceFile ) {
+ fread( sourceFile, length, 1, f );
+ sourceFile[length] = 0;
+ }
+
+ fclose( f );
+ sourceLine = 1;
+ sourcePtr = sourceFile;
+}
+
+static void PrintToSourceLine( int line ) {
+ int c;
+
+ if ( !sourceFile ) {
+ return;
+ }
+ while ( sourceLine <= line ) {
+ int i;
+
+ for ( i = 0 ; sourcePtr[i] && sourcePtr[i] != '\n' ; i++ ) {
+ }
+ c = sourcePtr[i];
+ if ( c == '\n' ) {
+ sourcePtr[i] = 0;
+ }
+ print( ";%d:%s\n", sourceLine, sourcePtr );
+ if ( c == 0 ) {
+ sourcePtr += i; // end of file
+ } else {
+ sourcePtr += i+1;
+ }
+ sourceLine++;
+ }
+}
+
+static void I(stabline)(Coordinate *cp) {
+ static char *prevfile;
+ static int prevline;
+
+ if (cp->file && (prevfile == NULL || strcmp(prevfile, cp->file) != 0)) {
+ print("file \"%s\"\n", prevfile = cp->file);
+ prevline = 0;
+ if ( sourceFile ) {
+ free( sourceFile );
+ sourceFile = NULL;
+ }
+ // load the new source file
+ LoadSourceFile( cp->file );
+ }
+ if (cp->y != prevline) {
+ print("line %d\n", prevline = cp->y);
+ PrintToSourceLine( cp->y );
+ }
+}
+
+//========================================================
+
+#define b_blockbeg blockbeg
+#define b_blockend blockend
+
+Interface bytecodeIR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 4, 4, 0, /* long */
+ 4, 4, 0, /* long long */
+ 4, 4, 0, /* float */ // JDC: use inline floats
+ 4, 4, 0, /* double */ // JDC: don't ever emit 8 byte double code
+ 4, 4, 0, /* long double */ // JDC: don't ever emit 8 byte double code
+ 4, 4, 0, /* T* */
+ 0, 4, 0, /* struct */
+ 0, /* little_endian */
+ 0, /* mulops_calls */
+ 0, /* wants_callb */
+ 0, /* wants_argb */
+ 1, /* left_to_right */
+ 0, /* wants_dag */
+ 0, /* unsigned_char */
+ I(address),
+ I(blockbeg),
+ I(blockend),
+ I(defaddress),
+ I(defconst),
+ I(defstring),
+ I(defsymbol),
+ I(emit),
+ I(export),
+ I(function),
+ I(gen),
+ I(global),
+ I(import),
+ I(local),
+ I(progbeg),
+ I(progend),
+ I(segment),
+ I(space),
+ 0, /* I(stabblock) */
+ 0, /* I(stabend) */
+ 0, /* I(stabfend) */
+ 0, /* I(stabinit) */
+ I(stabline),
+ 0, /* I(stabsym) */
+ 0, /* I(stabtype) */
+};
diff --git a/lcc/src/c.h b/lcc/src/c.h
index e21419d..a0e45b0 100755
--- a/lcc/src/c.h
+++ b/lcc/src/c.h
@@ -1,723 +1,723 @@
-#include <assert.h>
-#include <stdarg.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <limits.h>
-#include <string.h>
-
-#define NEW(p,a) ((p) = allocate(sizeof *(p), (a)))
-#define NEW0(p,a) memset(NEW((p),(a)), 0, sizeof *(p))
-#define isaddrop(op) (specific(op)==ADDRG+P || specific(op)==ADDRL+P \
- || specific(op)==ADDRF+P)
-
-#define MAXLINE 512
-#define BUFSIZE 4096
-
-#define istypename(t,tsym) (kind[t] == CHAR \
- || t == ID && tsym && tsym->sclass == TYPEDEF)
-#define sizeop(n) ((n)<<10)
-#define generic(op) ((op)&0x3F0)
-#define specific(op) ((op)&0x3FF)
-#define opindex(op) (((op)>>4)&0x3F)
-#define opkind(op) ((op)&~0x3F0)
-#define opsize(op) ((op)>>10)
-#define optype(op) ((op)&0xF)
-#ifdef __LCC__
-#ifndef __STDC__
-#define __STDC__
-#endif
-#endif
-#define NELEMS(a) ((int)(sizeof (a)/sizeof ((a)[0])))
-#undef roundup
-#define roundup(x,n) (((x)+((n)-1))&(~((n)-1)))
-#define mkop(op,ty) (specific((op) + ttob(ty)))
-
-#define extend(x,ty) ((x)&(1<<(8*(ty)->size-1)) ? (x)|((~0UL)<<(8*(ty)->size-1)) : (x)&ones(8*(ty)->size))
-#define ones(n) ((n)>=8*sizeof (unsigned long) ? ~0UL : ~((~0UL)<<(n)))
-
-#define isqual(t) ((t)->op >= CONST)
-#define unqual(t) (isqual(t) ? (t)->type : (t))
-
-#define isvolatile(t) ((t)->op == VOLATILE \
- || (t)->op == CONST+VOLATILE)
-#define isconst(t) ((t)->op == CONST \
- || (t)->op == CONST+VOLATILE)
-#define isarray(t) (unqual(t)->op == ARRAY)
-#define isstruct(t) (unqual(t)->op == STRUCT \
- || unqual(t)->op == UNION)
-#define isunion(t) (unqual(t)->op == UNION)
-#define isfunc(t) (unqual(t)->op == FUNCTION)
-#define isptr(t) (unqual(t)->op == POINTER)
-#define ischar(t) ((t)->size == 1 && isint(t))
-#define isint(t) (unqual(t)->op == INT \
- || unqual(t)->op == UNSIGNED)
-#define isfloat(t) (unqual(t)->op == FLOAT)
-#define isarith(t) (unqual(t)->op <= UNSIGNED)
-#define isunsigned(t) (unqual(t)->op == UNSIGNED)
-#define isscalar(t) (unqual(t)->op <= POINTER \
- || unqual(t)->op == ENUM)
-#define isenum(t) (unqual(t)->op == ENUM)
-#define fieldsize(p) (p)->bitsize
-#define fieldright(p) ((p)->lsb - 1)
-#define fieldleft(p) (8*(p)->type->size - \
- fieldsize(p) - fieldright(p))
-#define fieldmask(p) (~(~(unsigned)0<<fieldsize(p)))
-typedef struct node *Node;
-
-typedef struct list *List;
-
-typedef struct code *Code;
-
-typedef struct swtch *Swtch;
-
-typedef struct symbol *Symbol;
-
-typedef struct coord {
- char *file;
- unsigned x, y;
-} Coordinate;
-typedef struct table *Table;
-
-typedef union value {
- long i;
- unsigned long u;
- long double d;
- void *p;
- void (*g)(void);
-} Value;
-typedef struct tree *Tree;
-
-typedef struct type *Type;
-
-typedef struct field *Field;
-
-typedef struct {
- unsigned printed:1;
- unsigned marked;
- unsigned short typeno;
- void *xt;
-} Xtype;
-
-#include "config.h"
-typedef struct metrics {
- unsigned char size, align, outofline;
-} Metrics;
-typedef struct interface {
- Metrics charmetric;
- Metrics shortmetric;
- Metrics intmetric;
- Metrics longmetric;
- Metrics longlongmetric;
- Metrics floatmetric;
- Metrics doublemetric;
- Metrics longdoublemetric;
- Metrics ptrmetric;
- Metrics structmetric;
- unsigned little_endian:1;
- unsigned mulops_calls:1;
- unsigned wants_callb:1;
- unsigned wants_argb:1;
- unsigned left_to_right:1;
- unsigned wants_dag:1;
- unsigned unsigned_char:1;
-void (*address)(Symbol p, Symbol q, long n);
-void (*blockbeg)(Env *);
-void (*blockend)(Env *);
-void (*defaddress)(Symbol);
-void (*defconst) (int suffix, int size, Value v);
-void (*defstring)(int n, char *s);
-void (*defsymbol)(Symbol);
-void (*emit) (Node);
-void (*export)(Symbol);
-void (*function)(Symbol, Symbol[], Symbol[], int);
-Node (*gen) (Node);
-void (*global)(Symbol);
-void (*import)(Symbol);
-void (*local)(Symbol);
-void (*progbeg)(int argc, char *argv[]);
-void (*progend)(void);
-void (*segment)(int);
-void (*space)(int);
-void (*stabblock)(int, int, Symbol*);
-void (*stabend) (Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
-void (*stabfend) (Symbol, int);
-void (*stabinit) (char *, int, char *[]);
-void (*stabline) (Coordinate *);
-void (*stabsym) (Symbol);
-void (*stabtype) (Symbol);
- Xinterface x;
-} Interface;
-typedef struct binding {
- char *name;
- Interface *ir;
-} Binding;
-
-extern Binding bindings[];
-extern Interface *IR;
-typedef struct {
- List blockentry;
- List blockexit;
- List entry;
- List exit;
- List returns;
- List points;
- List calls;
- List end;
-} Events;
-
-enum {
-#define xx(a,b,c,d,e,f,g) a=b,
-#define yy(a,b,c,d,e,f,g)
-#include "token.h"
- LAST
-};
-struct node {
- short op;
- short count;
- Symbol syms[3];
- Node kids[2];
- Node link;
- Xnode x;
-};
-enum {
- F=FLOAT,
- I=INT,
- U=UNSIGNED,
- P=POINTER,
- V=VOID,
- B=STRUCT
-};
-#define gop(name,value) name=value<<4,
-#define op(name,type,sizes)
-
-enum { gop(CNST,1)
- op(CNST,F,fdx)
- op(CNST,I,csilh)
- op(CNST,P,p)
- op(CNST,U,csilh)
- gop(ARG,2)
- op(ARG,B,-)
- op(ARG,F,fdx)
- op(ARG,I,ilh)
- op(ARG,P,p)
- op(ARG,U,ilh)
- gop(ASGN,3)
- op(ASGN,B,-)
- op(ASGN,F,fdx)
- op(ASGN,I,csilh)
- op(ASGN,P,p)
- op(ASGN,U,csilh)
- gop(INDIR,4)
- op(INDIR,B,-)
- op(INDIR,F,fdx)
- op(INDIR,I,csilh)
- op(INDIR,P,p)
- op(INDIR,U,csilh)
- gop(CVF,7)
- op(CVF,F,fdx)
- op(CVF,I,ilh)
- gop(CVI,8)
- op(CVI,F,fdx)
- op(CVI,I,csilh)
- op(CVI,U,csilhp)
- gop(CVP,9)
- op(CVP,U,p)
- gop(CVU,11)
- op(CVU,I,csilh)
- op(CVU,P,p)
- op(CVU,U,csilh)
- gop(NEG,12)
- op(NEG,F,fdx)
- op(NEG,I,ilh)
- gop(CALL,13)
- op(CALL,B,-)
- op(CALL,F,fdx)
- op(CALL,I,ilh)
- op(CALL,P,p)
- op(CALL,U,ilh)
- op(CALL,V,-)
- gop(RET,15)
- op(RET,F,fdx)
- op(RET,I,ilh)
- op(RET,P,p)
- op(RET,U,ilh)
- op(RET,V,-)
- gop(ADDRG,16)
- op(ADDRG,P,p)
- gop(ADDRF,17)
- op(ADDRF,P,p)
- gop(ADDRL,18)
- op(ADDRL,P,p)
- gop(ADD,19)
- op(ADD,F,fdx)
- op(ADD,I,ilh)
- op(ADD,P,p)
- op(ADD,U,ilhp)
- gop(SUB,20)
- op(SUB,F,fdx)
- op(SUB,I,ilh)
- op(SUB,P,p)
- op(SUB,U,ilhp)
- gop(LSH,21)
- op(LSH,I,ilh)
- op(LSH,U,ilh)
- gop(MOD,22)
- op(MOD,I,ilh)
- op(MOD,U,ilh)
- gop(RSH,23)
- op(RSH,I,ilh)
- op(RSH,U,ilh)
- gop(BAND,24)
- op(BAND,I,ilh)
- op(BAND,U,ilh)
- gop(BCOM,25)
- op(BCOM,I,ilh)
- op(BCOM,U,ilh)
- gop(BOR,26)
- op(BOR,I,ilh)
- op(BOR,U,ilh)
- gop(BXOR,27)
- op(BXOR,I,ilh)
- op(BXOR,U,ilh)
- gop(DIV,28)
- op(DIV,F,fdx)
- op(DIV,I,ilh)
- op(DIV,U,ilh)
- gop(MUL,29)
- op(MUL,F,fdx)
- op(MUL,I,ilh)
- op(MUL,U,ilh)
- gop(EQ,30)
- op(EQ,F,fdx)
- op(EQ,I,ilh)
- op(EQ,U,ilhp)
- gop(GE,31)
- op(GE,F,fdx)
- op(GE,I,ilh)
- op(GE,U,ilhp)
- gop(GT,32)
- op(GT,F,fdx)
- op(GT,I,ilh)
- op(GT,U,ilhp)
- gop(LE,33)
- op(LE,F,fdx)
- op(LE,I,ilh)
- op(LE,U,ilhp)
- gop(LT,34)
- op(LT,F,fdx)
- op(LT,I,ilh)
- op(LT,U,ilhp)
- gop(NE,35)
- op(NE,F,fdx)
- op(NE,I,ilh)
- op(NE,U,ilhp)
- gop(JUMP,36)
- op(JUMP,V,-)
- gop(LABEL,37)
- op(LABEL,V,-)
- gop(LOAD,14)
- op(LOAD,B,-)
- op(LOAD,F,fdx)
- op(LOAD,I,csilh)
- op(LOAD,P,p)
- op(LOAD,U,csilhp) LASTOP };
-
-#undef gop
-#undef op
-enum { CODE=1, BSS, DATA, LIT };
-enum { PERM=0, FUNC, STMT };
-struct list {
- void *x;
- List link;
-};
-
-struct code {
- enum { Blockbeg, Blockend, Local, Address, Defpoint,
- Label, Start, Gen, Jump, Switch
- } kind;
- Code prev, next;
- union {
- struct {
- int level;
- Symbol *locals;
- Table identifiers, types;
- Env x;
- } block;
- Code begin;
- Symbol var;
-
- struct {
- Symbol sym;
- Symbol base;
- long offset;
- } addr;
- struct {
- Coordinate src;
- int point;
- } point;
- Node forest;
- struct {
- Symbol sym;
- Symbol table;
- Symbol deflab;
- int size;
- long *values;
- Symbol *labels;
- } swtch;
-
- } u;
-};
-struct swtch {
- Symbol sym;
- int lab;
- Symbol deflab;
- int ncases;
- int size;
- long *values;
- Symbol *labels;
-};
-struct symbol {
- char *name;
- int scope;
- Coordinate src;
- Symbol up;
- List uses;
- int sclass;
- unsigned structarg:1;
-
- unsigned addressed:1;
- unsigned computed:1;
- unsigned temporary:1;
- unsigned generated:1;
- unsigned defined:1;
- Type type;
- float ref;
- union {
- struct {
- int label;
- Symbol equatedto;
- } l;
- struct {
- unsigned cfields:1;
- unsigned vfields:1;
- Table ftab; /* omit */
- Field flist;
- } s;
- int value;
- Symbol *idlist;
- struct {
- Value min, max;
- } limits;
- struct {
- Value v;
- Symbol loc;
- } c;
- struct {
- Coordinate pt;
- int label;
- int ncalls;
- Symbol *callee;
- } f;
- int seg;
- Symbol alias;
- struct {
- Node cse;
- int replace;
- Symbol next;
- } t;
- } u;
- Xsymbol x;
-};
-enum { CONSTANTS=1, LABELS, GLOBAL, PARAM, LOCAL };
-struct tree {
- int op;
- Type type;
- Tree kids[2];
- Node node;
- union {
- Value v;
- Symbol sym;
-
- Field field;
- } u;
-};
-enum {
- AND=38<<4,
- NOT=39<<4,
- OR=40<<4,
- COND=41<<4,
- RIGHT=42<<4,
- FIELD=43<<4
-};
-struct type {
- int op;
- Type type;
- int align;
- int size;
- union {
- Symbol sym;
- struct {
- unsigned oldstyle:1;
- Type *proto;
- } f;
- } u;
- Xtype x;
-};
-struct field {
- char *name;
- Type type;
- int offset;
- short bitsize;
- short lsb;
- Field link;
-};
-extern int assignargs;
-extern int prunetemps;
-extern int nodecount;
-extern Symbol cfunc;
-extern Symbol retv;
-extern Tree (*optree[])(int, Tree, Tree);
-
-extern char kind[];
-extern int errcnt;
-extern int errlimit;
-extern int wflag;
-extern Events events;
-extern float refinc;
-
-extern unsigned char *cp;
-extern unsigned char *limit;
-extern char *firstfile;
-extern char *file;
-extern char *line;
-extern int lineno;
-extern int t;
-extern char *token;
-extern Symbol tsym;
-extern Coordinate src;
-extern int Aflag;
-extern int Pflag;
-extern Symbol YYnull;
-extern Symbol YYcheck;
-extern int glevel;
-extern int xref;
-
-extern int ncalled;
-extern int npoints;
-
-extern int needconst;
-extern int explicitCast;
-extern struct code codehead;
-extern Code codelist;
-extern Table stmtlabs;
-extern float density;
-extern Table constants;
-extern Table externals;
-extern Table globals;
-extern Table identifiers;
-extern Table labels;
-extern Table types;
-extern int level;
-
-extern List loci, symbols;
-
-extern List symbols;
-
-extern int where;
-extern Type chartype;
-extern Type doubletype;
-extern Type floattype;
-extern Type inttype;
-extern Type longdouble;
-extern Type longtype;
-extern Type longlong;
-extern Type shorttype;
-extern Type signedchar;
-extern Type unsignedchar;
-extern Type unsignedlonglong;
-extern Type unsignedlong;
-extern Type unsignedshort;
-extern Type unsignedtype;
-extern Type charptype;
-extern Type funcptype;
-extern Type voidptype;
-extern Type voidtype;
-extern Type unsignedptr;
-extern Type signedptr;
-extern Type widechar;
-extern void *allocate(unsigned long n, unsigned a);
-extern void deallocate(unsigned a);
-extern void *newarray(unsigned long m, unsigned long n, unsigned a);
-extern void walk(Tree e, int tlab, int flab);
-extern Node listnodes(Tree e, int tlab, int flab);
-extern Node newnode(int op, Node left, Node right, Symbol p);
-extern Tree cvtconst(Tree);
-extern void printdag(Node, int);
-extern void compound(int, Swtch, int);
-extern void defglobal(Symbol, int);
-extern void finalize(void);
-extern void program(void);
-
-extern Tree vcall(Symbol func, Type ty, ...);
-extern Tree addrof(Tree);
-extern Tree asgn(Symbol, Tree);
-extern Tree asgntree(int, Tree, Tree);
-extern Type assign(Type, Tree);
-extern Tree bittree(int, Tree, Tree);
-extern Tree call(Tree, Type, Coordinate);
-extern Tree calltree(Tree, Type, Tree, Symbol);
-extern Tree condtree(Tree, Tree, Tree);
-extern Tree cnsttree(Type, ...);
-extern Tree consttree(unsigned int, Type);
-extern Tree eqtree(int, Tree, Tree);
-extern int iscallb(Tree);
-extern Tree shtree(int, Tree, Tree);
-extern void typeerror(int, Tree, Tree);
-
-extern void test(int tok, char set[]);
-extern void expect(int tok);
-extern void skipto(int tok, char set[]);
-extern void error(const char *, ...);
-extern int fatal(const char *, const char *, int);
-extern void warning(const char *, ...);
-
-typedef void (*Apply)(void *, void *, void *);
-extern void attach(Apply, void *, List *);
-extern void apply(List event, void *arg1, void *arg2);
-extern Tree retype(Tree p, Type ty);
-extern Tree rightkid(Tree p);
-extern int hascall(Tree p);
-extern Type binary(Type, Type);
-extern Tree cast(Tree, Type);
-extern Tree cond(Tree);
-extern Tree expr0(int);
-extern Tree expr(int);
-extern Tree expr1(int);
-extern Tree field(Tree, const char *);
-extern char *funcname(Tree);
-extern Tree idtree(Symbol);
-extern Tree incr(int, Tree, Tree);
-extern Tree lvalue(Tree);
-extern Tree nullcall(Type, Symbol, Tree, Tree);
-extern Tree pointer(Tree);
-extern Tree rvalue(Tree);
-extern Tree value(Tree);
-
-extern void defpointer(Symbol);
-extern Type initializer(Type, int);
-extern void swtoseg(int);
-
-extern void input_init(int, char *[]);
-extern void fillbuf(void);
-extern void nextline(void);
-
-extern int getchr(void);
-extern int gettok(void);
-
-extern void emitcode(void);
-extern void gencode (Symbol[], Symbol[]);
-extern void fprint(FILE *f, const char *fmt, ...);
-extern char *stringf(const char *, ...);
-extern void check(Node);
-extern void print(const char *, ...);
-
-extern List append(void *x, List list);
-extern int length(List list);
-extern void *ltov (List *list, unsigned a);
-extern void init(int, char *[]);
-
-extern Type typename(void);
-extern void checklab(Symbol p, void *cl);
-extern Type enumdcl(void);
-extern void main_init(int, char *[]);
-extern int main(int, char *[]);
-
-extern void vfprint(FILE *, char *, const char *, va_list);
-
-extern int process(char *);
-extern int findfunc(char *, char *);
-extern int findcount(char *, int, int);
-
-extern Tree constexpr(int);
-extern int intexpr(int, int);
-extern Tree simplify(int, Type, Tree, Tree);
-extern int ispow2(unsigned long u);
-
-extern int reachable(int);
-
-extern void addlocal(Symbol);
-extern void branch(int);
-extern Code code(int);
-extern void definelab(int);
-extern void definept(Coordinate *);
-extern void equatelab(Symbol, Symbol);
-extern Node jump(int);
-extern void retcode(Tree);
-extern void statement(int, Swtch, int);
-extern void swcode(Swtch, int *, int, int);
-extern void swgen(Swtch);
-
-extern char * string(const char *str);
-extern char *stringn(const char *str, int len);
-extern char *stringd(long n);
-extern Symbol relocate(const char *name, Table src, Table dst);
-extern void use(Symbol p, Coordinate src);
-extern void locus(Table tp, Coordinate *cp);
-extern Symbol allsymbols(Table);
-
-extern Symbol constant(Type, Value);
-extern void enterscope(void);
-extern void exitscope(void);
-extern Symbol findlabel(int);
-extern Symbol findtype(Type);
-extern void foreach(Table, int, void (*)(Symbol, void *), void *);
-extern Symbol genident(int, Type, int);
-extern int genlabel(int);
-extern Symbol install(const char *, Table *, int, int);
-extern Symbol intconst(int);
-extern Symbol lookup(const char *, Table);
-extern Symbol mkstr(char *);
-extern Symbol mksymbol(int, const char *, Type);
-extern Symbol newtemp(int, int, int);
-extern Table table(Table, int);
-extern Symbol temporary(int, Type);
-extern char *vtoa(Type, Value);
-
-extern int nodeid(Tree);
-extern char *opname(int);
-extern int *printed(int);
-extern void printtree(Tree, int);
-extern Tree root(Tree);
-extern Tree texpr(Tree (*)(int), int, int);
-extern Tree tree(int, Type, Tree, Tree);
-
-extern void type_init(int, char *[]);
-
-extern Type signedint(Type);
-
-extern int hasproto(Type);
-extern void outtype(Type, FILE *);
-extern void printdecl (Symbol p, Type ty);
-extern void printproto(Symbol p, Symbol args[]);
-extern char *typestring(Type ty, char *id);
-extern Field fieldref(const char *name, Type ty);
-extern Type array(Type, int, int);
-extern Type atop(Type);
-extern Type btot(int, int);
-extern Type compose(Type, Type);
-extern Type deref(Type);
-extern int eqtype(Type, Type, int);
-extern Field fieldlist(Type);
-extern Type freturn(Type);
-extern Type ftype(Type, Type);
-extern Type func(Type, Type *, int);
-extern Field newfield(char *, Type, Type);
-extern Type newstruct(int, char *);
-extern void printtype(Type, int);
-extern Type promote(Type);
-extern Type ptr(Type);
-extern Type qual(int, Type);
-extern void rmtypes(int);
-extern int ttob(Type);
-extern int variadic(Type);
-
+#include <assert.h>
+#include <stdarg.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <limits.h>
+#include <string.h>
+
+#define NEW(p,a) ((p) = allocate(sizeof *(p), (a)))
+#define NEW0(p,a) memset(NEW((p),(a)), 0, sizeof *(p))
+#define isaddrop(op) (specific(op)==ADDRG+P || specific(op)==ADDRL+P \
+ || specific(op)==ADDRF+P)
+
+#define MAXLINE 512
+#define BUFSIZE 4096
+
+#define istypename(t,tsym) (kind[t] == CHAR \
+ || t == ID && tsym && tsym->sclass == TYPEDEF)
+#define sizeop(n) ((n)<<10)
+#define generic(op) ((op)&0x3F0)
+#define specific(op) ((op)&0x3FF)
+#define opindex(op) (((op)>>4)&0x3F)
+#define opkind(op) ((op)&~0x3F0)
+#define opsize(op) ((op)>>10)
+#define optype(op) ((op)&0xF)
+#ifdef __LCC__
+#ifndef __STDC__
+#define __STDC__
+#endif
+#endif
+#define NELEMS(a) ((int)(sizeof (a)/sizeof ((a)[0])))
+#undef roundup
+#define roundup(x,n) (((x)+((n)-1))&(~((n)-1)))
+#define mkop(op,ty) (specific((op) + ttob(ty)))
+
+#define extend(x,ty) ((x)&(1<<(8*(ty)->size-1)) ? (x)|((~0UL)<<(8*(ty)->size-1)) : (x)&ones(8*(ty)->size))
+#define ones(n) ((n)>=8*sizeof (unsigned long) ? ~0UL : ~((~0UL)<<(n)))
+
+#define isqual(t) ((t)->op >= CONST)
+#define unqual(t) (isqual(t) ? (t)->type : (t))
+
+#define isvolatile(t) ((t)->op == VOLATILE \
+ || (t)->op == CONST+VOLATILE)
+#define isconst(t) ((t)->op == CONST \
+ || (t)->op == CONST+VOLATILE)
+#define isarray(t) (unqual(t)->op == ARRAY)
+#define isstruct(t) (unqual(t)->op == STRUCT \
+ || unqual(t)->op == UNION)
+#define isunion(t) (unqual(t)->op == UNION)
+#define isfunc(t) (unqual(t)->op == FUNCTION)
+#define isptr(t) (unqual(t)->op == POINTER)
+#define ischar(t) ((t)->size == 1 && isint(t))
+#define isint(t) (unqual(t)->op == INT \
+ || unqual(t)->op == UNSIGNED)
+#define isfloat(t) (unqual(t)->op == FLOAT)
+#define isarith(t) (unqual(t)->op <= UNSIGNED)
+#define isunsigned(t) (unqual(t)->op == UNSIGNED)
+#define isscalar(t) (unqual(t)->op <= POINTER \
+ || unqual(t)->op == ENUM)
+#define isenum(t) (unqual(t)->op == ENUM)
+#define fieldsize(p) (p)->bitsize
+#define fieldright(p) ((p)->lsb - 1)
+#define fieldleft(p) (8*(p)->type->size - \
+ fieldsize(p) - fieldright(p))
+#define fieldmask(p) (~(~(unsigned)0<<fieldsize(p)))
+typedef struct node *Node;
+
+typedef struct list *List;
+
+typedef struct code *Code;
+
+typedef struct swtch *Swtch;
+
+typedef struct symbol *Symbol;
+
+typedef struct coord {
+ char *file;
+ unsigned x, y;
+} Coordinate;
+typedef struct table *Table;
+
+typedef union value {
+ long i;
+ unsigned long u;
+ long double d;
+ void *p;
+ void (*g)(void);
+} Value;
+typedef struct tree *Tree;
+
+typedef struct type *Type;
+
+typedef struct field *Field;
+
+typedef struct {
+ unsigned printed:1;
+ unsigned marked;
+ unsigned short typeno;
+ void *xt;
+} Xtype;
+
+#include "config.h"
+typedef struct metrics {
+ unsigned char size, align, outofline;
+} Metrics;
+typedef struct interface {
+ Metrics charmetric;
+ Metrics shortmetric;
+ Metrics intmetric;
+ Metrics longmetric;
+ Metrics longlongmetric;
+ Metrics floatmetric;
+ Metrics doublemetric;
+ Metrics longdoublemetric;
+ Metrics ptrmetric;
+ Metrics structmetric;
+ unsigned little_endian:1;
+ unsigned mulops_calls:1;
+ unsigned wants_callb:1;
+ unsigned wants_argb:1;
+ unsigned left_to_right:1;
+ unsigned wants_dag:1;
+ unsigned unsigned_char:1;
+void (*address)(Symbol p, Symbol q, long n);
+void (*blockbeg)(Env *);
+void (*blockend)(Env *);
+void (*defaddress)(Symbol);
+void (*defconst) (int suffix, int size, Value v);
+void (*defstring)(int n, char *s);
+void (*defsymbol)(Symbol);
+void (*emit) (Node);
+void (*export)(Symbol);
+void (*function)(Symbol, Symbol[], Symbol[], int);
+Node (*gen) (Node);
+void (*global)(Symbol);
+void (*import)(Symbol);
+void (*local)(Symbol);
+void (*progbeg)(int argc, char *argv[]);
+void (*progend)(void);
+void (*segment)(int);
+void (*space)(int);
+void (*stabblock)(int, int, Symbol*);
+void (*stabend) (Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
+void (*stabfend) (Symbol, int);
+void (*stabinit) (char *, int, char *[]);
+void (*stabline) (Coordinate *);
+void (*stabsym) (Symbol);
+void (*stabtype) (Symbol);
+ Xinterface x;
+} Interface;
+typedef struct binding {
+ char *name;
+ Interface *ir;
+} Binding;
+
+extern Binding bindings[];
+extern Interface *IR;
+typedef struct {
+ List blockentry;
+ List blockexit;
+ List entry;
+ List exit;
+ List returns;
+ List points;
+ List calls;
+ List end;
+} Events;
+
+enum {
+#define xx(a,b,c,d,e,f,g) a=b,
+#define yy(a,b,c,d,e,f,g)
+#include "token.h"
+ LAST
+};
+struct node {
+ short op;
+ short count;
+ Symbol syms[3];
+ Node kids[2];
+ Node link;
+ Xnode x;
+};
+enum {
+ F=FLOAT,
+ I=INT,
+ U=UNSIGNED,
+ P=POINTER,
+ V=VOID,
+ B=STRUCT
+};
+#define gop(name,value) name=value<<4,
+#define op(name,type,sizes)
+
+enum { gop(CNST,1)
+ op(CNST,F,fdx)
+ op(CNST,I,csilh)
+ op(CNST,P,p)
+ op(CNST,U,csilh)
+ gop(ARG,2)
+ op(ARG,B,-)
+ op(ARG,F,fdx)
+ op(ARG,I,ilh)
+ op(ARG,P,p)
+ op(ARG,U,ilh)
+ gop(ASGN,3)
+ op(ASGN,B,-)
+ op(ASGN,F,fdx)
+ op(ASGN,I,csilh)
+ op(ASGN,P,p)
+ op(ASGN,U,csilh)
+ gop(INDIR,4)
+ op(INDIR,B,-)
+ op(INDIR,F,fdx)
+ op(INDIR,I,csilh)
+ op(INDIR,P,p)
+ op(INDIR,U,csilh)
+ gop(CVF,7)
+ op(CVF,F,fdx)
+ op(CVF,I,ilh)
+ gop(CVI,8)
+ op(CVI,F,fdx)
+ op(CVI,I,csilh)
+ op(CVI,U,csilhp)
+ gop(CVP,9)
+ op(CVP,U,p)
+ gop(CVU,11)
+ op(CVU,I,csilh)
+ op(CVU,P,p)
+ op(CVU,U,csilh)
+ gop(NEG,12)
+ op(NEG,F,fdx)
+ op(NEG,I,ilh)
+ gop(CALL,13)
+ op(CALL,B,-)
+ op(CALL,F,fdx)
+ op(CALL,I,ilh)
+ op(CALL,P,p)
+ op(CALL,U,ilh)
+ op(CALL,V,-)
+ gop(RET,15)
+ op(RET,F,fdx)
+ op(RET,I,ilh)
+ op(RET,P,p)
+ op(RET,U,ilh)
+ op(RET,V,-)
+ gop(ADDRG,16)
+ op(ADDRG,P,p)
+ gop(ADDRF,17)
+ op(ADDRF,P,p)
+ gop(ADDRL,18)
+ op(ADDRL,P,p)
+ gop(ADD,19)
+ op(ADD,F,fdx)
+ op(ADD,I,ilh)
+ op(ADD,P,p)
+ op(ADD,U,ilhp)
+ gop(SUB,20)
+ op(SUB,F,fdx)
+ op(SUB,I,ilh)
+ op(SUB,P,p)
+ op(SUB,U,ilhp)
+ gop(LSH,21)
+ op(LSH,I,ilh)
+ op(LSH,U,ilh)
+ gop(MOD,22)
+ op(MOD,I,ilh)
+ op(MOD,U,ilh)
+ gop(RSH,23)
+ op(RSH,I,ilh)
+ op(RSH,U,ilh)
+ gop(BAND,24)
+ op(BAND,I,ilh)
+ op(BAND,U,ilh)
+ gop(BCOM,25)
+ op(BCOM,I,ilh)
+ op(BCOM,U,ilh)
+ gop(BOR,26)
+ op(BOR,I,ilh)
+ op(BOR,U,ilh)
+ gop(BXOR,27)
+ op(BXOR,I,ilh)
+ op(BXOR,U,ilh)
+ gop(DIV,28)
+ op(DIV,F,fdx)
+ op(DIV,I,ilh)
+ op(DIV,U,ilh)
+ gop(MUL,29)
+ op(MUL,F,fdx)
+ op(MUL,I,ilh)
+ op(MUL,U,ilh)
+ gop(EQ,30)
+ op(EQ,F,fdx)
+ op(EQ,I,ilh)
+ op(EQ,U,ilhp)
+ gop(GE,31)
+ op(GE,F,fdx)
+ op(GE,I,ilh)
+ op(GE,U,ilhp)
+ gop(GT,32)
+ op(GT,F,fdx)
+ op(GT,I,ilh)
+ op(GT,U,ilhp)
+ gop(LE,33)
+ op(LE,F,fdx)
+ op(LE,I,ilh)
+ op(LE,U,ilhp)
+ gop(LT,34)
+ op(LT,F,fdx)
+ op(LT,I,ilh)
+ op(LT,U,ilhp)
+ gop(NE,35)
+ op(NE,F,fdx)
+ op(NE,I,ilh)
+ op(NE,U,ilhp)
+ gop(JUMP,36)
+ op(JUMP,V,-)
+ gop(LABEL,37)
+ op(LABEL,V,-)
+ gop(LOAD,14)
+ op(LOAD,B,-)
+ op(LOAD,F,fdx)
+ op(LOAD,I,csilh)
+ op(LOAD,P,p)
+ op(LOAD,U,csilhp) LASTOP };
+
+#undef gop
+#undef op
+enum { CODE=1, BSS, DATA, LIT };
+enum { PERM=0, FUNC, STMT };
+struct list {
+ void *x;
+ List link;
+};
+
+struct code {
+ enum { Blockbeg, Blockend, Local, Address, Defpoint,
+ Label, Start, Gen, Jump, Switch
+ } kind;
+ Code prev, next;
+ union {
+ struct {
+ int level;
+ Symbol *locals;
+ Table identifiers, types;
+ Env x;
+ } block;
+ Code begin;
+ Symbol var;
+
+ struct {
+ Symbol sym;
+ Symbol base;
+ long offset;
+ } addr;
+ struct {
+ Coordinate src;
+ int point;
+ } point;
+ Node forest;
+ struct {
+ Symbol sym;
+ Symbol table;
+ Symbol deflab;
+ int size;
+ long *values;
+ Symbol *labels;
+ } swtch;
+
+ } u;
+};
+struct swtch {
+ Symbol sym;
+ int lab;
+ Symbol deflab;
+ int ncases;
+ int size;
+ long *values;
+ Symbol *labels;
+};
+struct symbol {
+ char *name;
+ int scope;
+ Coordinate src;
+ Symbol up;
+ List uses;
+ int sclass;
+ unsigned structarg:1;
+
+ unsigned addressed:1;
+ unsigned computed:1;
+ unsigned temporary:1;
+ unsigned generated:1;
+ unsigned defined:1;
+ Type type;
+ float ref;
+ union {
+ struct {
+ int label;
+ Symbol equatedto;
+ } l;
+ struct {
+ unsigned cfields:1;
+ unsigned vfields:1;
+ Table ftab; /* omit */
+ Field flist;
+ } s;
+ int value;
+ Symbol *idlist;
+ struct {
+ Value min, max;
+ } limits;
+ struct {
+ Value v;
+ Symbol loc;
+ } c;
+ struct {
+ Coordinate pt;
+ int label;
+ int ncalls;
+ Symbol *callee;
+ } f;
+ int seg;
+ Symbol alias;
+ struct {
+ Node cse;
+ int replace;
+ Symbol next;
+ } t;
+ } u;
+ Xsymbol x;
+};
+enum { CONSTANTS=1, LABELS, GLOBAL, PARAM, LOCAL };
+struct tree {
+ int op;
+ Type type;
+ Tree kids[2];
+ Node node;
+ union {
+ Value v;
+ Symbol sym;
+
+ Field field;
+ } u;
+};
+enum {
+ AND=38<<4,
+ NOT=39<<4,
+ OR=40<<4,
+ COND=41<<4,
+ RIGHT=42<<4,
+ FIELD=43<<4
+};
+struct type {
+ int op;
+ Type type;
+ int align;
+ int size;
+ union {
+ Symbol sym;
+ struct {
+ unsigned oldstyle:1;
+ Type *proto;
+ } f;
+ } u;
+ Xtype x;
+};
+struct field {
+ char *name;
+ Type type;
+ int offset;
+ short bitsize;
+ short lsb;
+ Field link;
+};
+extern int assignargs;
+extern int prunetemps;
+extern int nodecount;
+extern Symbol cfunc;
+extern Symbol retv;
+extern Tree (*optree[])(int, Tree, Tree);
+
+extern char kind[];
+extern int errcnt;
+extern int errlimit;
+extern int wflag;
+extern Events events;
+extern float refinc;
+
+extern unsigned char *cp;
+extern unsigned char *limit;
+extern char *firstfile;
+extern char *file;
+extern char *line;
+extern int lineno;
+extern int t;
+extern char *token;
+extern Symbol tsym;
+extern Coordinate src;
+extern int Aflag;
+extern int Pflag;
+extern Symbol YYnull;
+extern Symbol YYcheck;
+extern int glevel;
+extern int xref;
+
+extern int ncalled;
+extern int npoints;
+
+extern int needconst;
+extern int explicitCast;
+extern struct code codehead;
+extern Code codelist;
+extern Table stmtlabs;
+extern float density;
+extern Table constants;
+extern Table externals;
+extern Table globals;
+extern Table identifiers;
+extern Table labels;
+extern Table types;
+extern int level;
+
+extern List loci, symbols;
+
+extern List symbols;
+
+extern int where;
+extern Type chartype;
+extern Type doubletype;
+extern Type floattype;
+extern Type inttype;
+extern Type longdouble;
+extern Type longtype;
+extern Type longlong;
+extern Type shorttype;
+extern Type signedchar;
+extern Type unsignedchar;
+extern Type unsignedlonglong;
+extern Type unsignedlong;
+extern Type unsignedshort;
+extern Type unsignedtype;
+extern Type charptype;
+extern Type funcptype;
+extern Type voidptype;
+extern Type voidtype;
+extern Type unsignedptr;
+extern Type signedptr;
+extern Type widechar;
+extern void *allocate(unsigned long n, unsigned a);
+extern void deallocate(unsigned a);
+extern void *newarray(unsigned long m, unsigned long n, unsigned a);
+extern void walk(Tree e, int tlab, int flab);
+extern Node listnodes(Tree e, int tlab, int flab);
+extern Node newnode(int op, Node left, Node right, Symbol p);
+extern Tree cvtconst(Tree);
+extern void printdag(Node, int);
+extern void compound(int, Swtch, int);
+extern void defglobal(Symbol, int);
+extern void finalize(void);
+extern void program(void);
+
+extern Tree vcall(Symbol func, Type ty, ...);
+extern Tree addrof(Tree);
+extern Tree asgn(Symbol, Tree);
+extern Tree asgntree(int, Tree, Tree);
+extern Type assign(Type, Tree);
+extern Tree bittree(int, Tree, Tree);
+extern Tree call(Tree, Type, Coordinate);
+extern Tree calltree(Tree, Type, Tree, Symbol);
+extern Tree condtree(Tree, Tree, Tree);
+extern Tree cnsttree(Type, ...);
+extern Tree consttree(unsigned int, Type);
+extern Tree eqtree(int, Tree, Tree);
+extern int iscallb(Tree);
+extern Tree shtree(int, Tree, Tree);
+extern void typeerror(int, Tree, Tree);
+
+extern void test(int tok, char set[]);
+extern void expect(int tok);
+extern void skipto(int tok, char set[]);
+extern void error(const char *, ...);
+extern int fatal(const char *, const char *, int);
+extern void warning(const char *, ...);
+
+typedef void (*Apply)(void *, void *, void *);
+extern void attach(Apply, void *, List *);
+extern void apply(List event, void *arg1, void *arg2);
+extern Tree retype(Tree p, Type ty);
+extern Tree rightkid(Tree p);
+extern int hascall(Tree p);
+extern Type binary(Type, Type);
+extern Tree cast(Tree, Type);
+extern Tree cond(Tree);
+extern Tree expr0(int);
+extern Tree expr(int);
+extern Tree expr1(int);
+extern Tree field(Tree, const char *);
+extern char *funcname(Tree);
+extern Tree idtree(Symbol);
+extern Tree incr(int, Tree, Tree);
+extern Tree lvalue(Tree);
+extern Tree nullcall(Type, Symbol, Tree, Tree);
+extern Tree pointer(Tree);
+extern Tree rvalue(Tree);
+extern Tree value(Tree);
+
+extern void defpointer(Symbol);
+extern Type initializer(Type, int);
+extern void swtoseg(int);
+
+extern void input_init(int, char *[]);
+extern void fillbuf(void);
+extern void nextline(void);
+
+extern int getchr(void);
+extern int gettok(void);
+
+extern void emitcode(void);
+extern void gencode (Symbol[], Symbol[]);
+extern void fprint(FILE *f, const char *fmt, ...);
+extern char *stringf(const char *, ...);
+extern void check(Node);
+extern void print(const char *, ...);
+
+extern List append(void *x, List list);
+extern int length(List list);
+extern void *ltov (List *list, unsigned a);
+extern void init(int, char *[]);
+
+extern Type typename(void);
+extern void checklab(Symbol p, void *cl);
+extern Type enumdcl(void);
+extern void main_init(int, char *[]);
+extern int main(int, char *[]);
+
+extern void vfprint(FILE *, char *, const char *, va_list);
+
+extern int process(char *);
+extern int findfunc(char *, char *);
+extern int findcount(char *, int, int);
+
+extern Tree constexpr(int);
+extern int intexpr(int, int);
+extern Tree simplify(int, Type, Tree, Tree);
+extern int ispow2(unsigned long u);
+
+extern int reachable(int);
+
+extern void addlocal(Symbol);
+extern void branch(int);
+extern Code code(int);
+extern void definelab(int);
+extern void definept(Coordinate *);
+extern void equatelab(Symbol, Symbol);
+extern Node jump(int);
+extern void retcode(Tree);
+extern void statement(int, Swtch, int);
+extern void swcode(Swtch, int *, int, int);
+extern void swgen(Swtch);
+
+extern char * string(const char *str);
+extern char *stringn(const char *str, int len);
+extern char *stringd(long n);
+extern Symbol relocate(const char *name, Table src, Table dst);
+extern void use(Symbol p, Coordinate src);
+extern void locus(Table tp, Coordinate *cp);
+extern Symbol allsymbols(Table);
+
+extern Symbol constant(Type, Value);
+extern void enterscope(void);
+extern void exitscope(void);
+extern Symbol findlabel(int);
+extern Symbol findtype(Type);
+extern void foreach(Table, int, void (*)(Symbol, void *), void *);
+extern Symbol genident(int, Type, int);
+extern int genlabel(int);
+extern Symbol install(const char *, Table *, int, int);
+extern Symbol intconst(int);
+extern Symbol lookup(const char *, Table);
+extern Symbol mkstr(char *);
+extern Symbol mksymbol(int, const char *, Type);
+extern Symbol newtemp(int, int, int);
+extern Table table(Table, int);
+extern Symbol temporary(int, Type);
+extern char *vtoa(Type, Value);
+
+extern int nodeid(Tree);
+extern char *opname(int);
+extern int *printed(int);
+extern void printtree(Tree, int);
+extern Tree root(Tree);
+extern Tree texpr(Tree (*)(int), int, int);
+extern Tree tree(int, Type, Tree, Tree);
+
+extern void type_init(int, char *[]);
+
+extern Type signedint(Type);
+
+extern int hasproto(Type);
+extern void outtype(Type, FILE *);
+extern void printdecl (Symbol p, Type ty);
+extern void printproto(Symbol p, Symbol args[]);
+extern char *typestring(Type ty, char *id);
+extern Field fieldref(const char *name, Type ty);
+extern Type array(Type, int, int);
+extern Type atop(Type);
+extern Type btot(int, int);
+extern Type compose(Type, Type);
+extern Type deref(Type);
+extern int eqtype(Type, Type, int);
+extern Field fieldlist(Type);
+extern Type freturn(Type);
+extern Type ftype(Type, Type);
+extern Type func(Type, Type *, int);
+extern Field newfield(char *, Type, Type);
+extern Type newstruct(int, char *);
+extern void printtype(Type, int);
+extern Type promote(Type);
+extern Type ptr(Type);
+extern Type qual(int, Type);
+extern void rmtypes(int);
+extern int ttob(Type);
+extern int variadic(Type);
+
diff --git a/lcc/src/config.h b/lcc/src/config.h
index 20d115c..6f0d5a6 100755
--- a/lcc/src/config.h
+++ b/lcc/src/config.h
@@ -1,102 +1,102 @@
-typedef struct {
- unsigned char max_unaligned_load;
- Symbol (*rmap)(int);
-
- void (*blkfetch)(int size, int off, int reg, int tmp);
- void (*blkstore)(int size, int off, int reg, int tmp);
- void (*blkloop)(int dreg, int doff,
- int sreg, int soff,
- int size, int tmps[]);
- void (*_label)(Node);
- int (*_rule)(void*, int);
- short **_nts;
- void (*_kids)(Node, int, Node*);
- char **_string;
- char **_templates;
- char *_isinstruction;
- char **_ntname;
- void (*emit2)(Node);
- void (*doarg)(Node);
- void (*target)(Node);
- void (*clobber)(Node);
-} Xinterface;
-extern int askregvar(Symbol, Symbol);
-extern void blkcopy(int, int, int, int, int, int[]);
-extern int getregnum(Node);
-extern int mayrecalc(Node);
-extern int mkactual(int, int);
-extern void mkauto(Symbol);
-extern Symbol mkreg(char *, int, int, int);
-extern Symbol mkwildcard(Symbol *);
-extern int move(Node);
-extern int notarget(Node);
-extern void parseflags(int, char **);
-extern int range(Node, int, int);
-extern unsigned regloc(Symbol); /* omit */
-extern void rtarget(Node, int, Symbol);
-extern void setreg(Node, Symbol);
-extern void spill(unsigned, int, Node);
-extern int widens(Node);
-
-extern int argoffset, maxargoffset;
-extern int bflag, dflag;
-extern int dalign, salign;
-extern int framesize;
-extern unsigned freemask[], usedmask[];
-extern int offset, maxoffset;
-extern int swap;
-extern unsigned tmask[], vmask[];
-typedef struct {
- unsigned listed:1;
- unsigned registered:1;
- unsigned emitted:1;
- unsigned copy:1;
- unsigned equatable:1;
- unsigned spills:1;
- unsigned mayrecalc:1;
- void *state;
- short inst;
- Node kids[3];
- Node prev, next;
- Node prevuse;
- short argno;
-} Xnode;
-typedef struct {
- Symbol vbl;
- short set;
- short number;
- unsigned mask;
-} *Regnode;
-enum { IREG=0, FREG=1 };
-typedef struct {
- char *name;
- unsigned int eaddr; /* omit */
- int offset;
- Node lastuse;
- int usecount;
- Regnode regnode;
- Symbol *wildcard;
-} Xsymbol;
-enum { RX=2 };
-typedef struct {
- int offset;
- unsigned freemask[2];
-} Env;
-
-#define LBURG_MAX SHRT_MAX
-
-enum { VREG=(44<<4) };
-
-/* Exported for the front end */
-extern void blockbeg(Env *);
-extern void blockend(Env *);
-extern void emit(Node);
-extern Node gen(Node);
-
-extern unsigned emitbin(Node, int);
-
-#ifdef NDEBUG
-#define debug(x) (void)0
-#else
-#define debug(x) (void)(dflag&&((x),0))
-#endif
+typedef struct {
+ unsigned char max_unaligned_load;
+ Symbol (*rmap)(int);
+
+ void (*blkfetch)(int size, int off, int reg, int tmp);
+ void (*blkstore)(int size, int off, int reg, int tmp);
+ void (*blkloop)(int dreg, int doff,
+ int sreg, int soff,
+ int size, int tmps[]);
+ void (*_label)(Node);
+ int (*_rule)(void*, int);
+ short **_nts;
+ void (*_kids)(Node, int, Node*);
+ char **_string;
+ char **_templates;
+ char *_isinstruction;
+ char **_ntname;
+ void (*emit2)(Node);
+ void (*doarg)(Node);
+ void (*target)(Node);
+ void (*clobber)(Node);
+} Xinterface;
+extern int askregvar(Symbol, Symbol);
+extern void blkcopy(int, int, int, int, int, int[]);
+extern int getregnum(Node);
+extern int mayrecalc(Node);
+extern int mkactual(int, int);
+extern void mkauto(Symbol);
+extern Symbol mkreg(char *, int, int, int);
+extern Symbol mkwildcard(Symbol *);
+extern int move(Node);
+extern int notarget(Node);
+extern void parseflags(int, char **);
+extern int range(Node, int, int);
+extern unsigned regloc(Symbol); /* omit */
+extern void rtarget(Node, int, Symbol);
+extern void setreg(Node, Symbol);
+extern void spill(unsigned, int, Node);
+extern int widens(Node);
+
+extern int argoffset, maxargoffset;
+extern int bflag, dflag;
+extern int dalign, salign;
+extern int framesize;
+extern unsigned freemask[], usedmask[];
+extern int offset, maxoffset;
+extern int swap;
+extern unsigned tmask[], vmask[];
+typedef struct {
+ unsigned listed:1;
+ unsigned registered:1;
+ unsigned emitted:1;
+ unsigned copy:1;
+ unsigned equatable:1;
+ unsigned spills:1;
+ unsigned mayrecalc:1;
+ void *state;
+ short inst;
+ Node kids[3];
+ Node prev, next;
+ Node prevuse;
+ short argno;
+} Xnode;
+typedef struct {
+ Symbol vbl;
+ short set;
+ short number;
+ unsigned mask;
+} *Regnode;
+enum { IREG=0, FREG=1 };
+typedef struct {
+ char *name;
+ unsigned int eaddr; /* omit */
+ int offset;
+ Node lastuse;
+ int usecount;
+ Regnode regnode;
+ Symbol *wildcard;
+} Xsymbol;
+enum { RX=2 };
+typedef struct {
+ int offset;
+ unsigned freemask[2];
+} Env;
+
+#define LBURG_MAX SHRT_MAX
+
+enum { VREG=(44<<4) };
+
+/* Exported for the front end */
+extern void blockbeg(Env *);
+extern void blockend(Env *);
+extern void emit(Node);
+extern Node gen(Node);
+
+extern unsigned emitbin(Node, int);
+
+#ifdef NDEBUG
+#define debug(x) (void)0
+#else
+#define debug(x) (void)(dflag&&((x),0))
+#endif
diff --git a/lcc/src/dag.c b/lcc/src/dag.c
index 6e931ae..8e0ddea 100755
--- a/lcc/src/dag.c
+++ b/lcc/src/dag.c
@@ -1,735 +1,735 @@
-#include "c.h"
-
-
-#define iscall(op) (generic(op) == CALL \
- || IR->mulops_calls \
- && (generic(op)==DIV||generic(op)==MOD||generic(op)==MUL) \
- && ( optype(op)==U || optype(op)==I))
-static Node forest;
-static struct dag {
- struct node node;
- struct dag *hlink;
-} *buckets[16];
-int nodecount;
-static Tree firstarg;
-int assignargs = 1;
-int prunetemps = -1;
-static Node *tail;
-
-static int depth = 0;
-static Node replace(Node);
-static Node prune(Node);
-static Node asgnnode(Symbol, Node);
-static struct dag *dagnode(int, Node, Node, Symbol);
-static Symbol equated(Symbol);
-static void fixup(Node);
-static void labelnode(int);
-static void list(Node);
-static void kill(Symbol);
-static Node node(int, Node, Node, Symbol);
-static void printdag1(Node, int, int);
-static void printnode(Node, int, int);
-static void reset(void);
-static Node tmpnode(Node);
-static void typestab(Symbol, void *);
-static Node undag(Node);
-static Node visit(Node, int);
-static void unlist(void);
-void walk(Tree tp, int tlab, int flab) {
- listnodes(tp, tlab, flab);
- if (forest) {
- Node list = forest->link;
- forest->link = NULL;
- if (!IR->wants_dag)
- list = undag(list);
- code(Gen)->u.forest = list;
- forest = NULL;
- }
- reset();
- deallocate(STMT);
-}
-
-static Node node(int op, Node l, Node r, Symbol sym) {
- int i;
- struct dag *p;
-
- i = (opindex(op)^((unsigned long)sym>>2))&(NELEMS(buckets)-1);
- for (p = buckets[i]; p; p = p->hlink)
- if (p->node.op == op && p->node.syms[0] == sym
- && p->node.kids[0] == l && p->node.kids[1] == r)
- return &p->node;
- p = dagnode(op, l, r, sym);
- p->hlink = buckets[i];
- buckets[i] = p;
- ++nodecount;
- return &p->node;
-}
-static struct dag *dagnode(int op, Node l, Node r, Symbol sym) {
- struct dag *p;
-
- NEW0(p, FUNC);
- p->node.op = op;
- if ((p->node.kids[0] = l) != NULL)
- ++l->count;
- if ((p->node.kids[1] = r) != NULL)
- ++r->count;
- p->node.syms[0] = sym;
- return p;
-}
-Node newnode(int op, Node l, Node r, Symbol sym) {
- return &dagnode(op, l, r, sym)->node;
-}
-static void kill(Symbol p) {
- int i;
- struct dag **q;
-
- for (i = 0; i < NELEMS(buckets); i++)
- for (q = &buckets[i]; *q; )
- if (generic((*q)->node.op) == INDIR &&
- (!isaddrop((*q)->node.kids[0]->op)
- || (*q)->node.kids[0]->syms[0] == p)) {
- *q = (*q)->hlink;
- --nodecount;
- } else
- q = &(*q)->hlink;
-}
-static void reset(void) {
- if (nodecount > 0)
- memset(buckets, 0, sizeof buckets);
- nodecount = 0;
-}
-Node listnodes(Tree tp, int tlab, int flab) {
- Node p = NULL, l, r;
- int op;
-
- assert(tlab || flab || tlab == 0 && flab == 0);
- if (tp == NULL)
- return NULL;
- if (tp->node)
- return tp->node;
- op = tp->op + sizeop(tp->type->size);
- switch (generic(tp->op)) {
- case AND: { if (depth++ == 0) reset();
- if (flab) {
- listnodes(tp->kids[0], 0, flab);
- listnodes(tp->kids[1], 0, flab);
- } else {
- listnodes(tp->kids[0], 0, flab = genlabel(1));
- listnodes(tp->kids[1], tlab, 0);
- labelnode(flab);
- }
- depth--; } break;
- case OR: { if (depth++ == 0)
- reset();
- if (tlab) {
- listnodes(tp->kids[0], tlab, 0);
- listnodes(tp->kids[1], tlab, 0);
- } else {
- tlab = genlabel(1);
- listnodes(tp->kids[0], tlab, 0);
- listnodes(tp->kids[1], 0, flab);
- labelnode(tlab);
- }
- depth--;
- } break;
- case NOT: { return listnodes(tp->kids[0], flab, tlab); }
- case COND: { Tree q = tp->kids[1];
- assert(tlab == 0 && flab == 0);
- if (tp->u.sym)
- addlocal(tp->u.sym);
- flab = genlabel(2);
- listnodes(tp->kids[0], 0, flab);
- assert(q && q->op == RIGHT);
- reset();
- listnodes(q->kids[0], 0, 0);
- if (forest->op == LABEL+V) {
- equatelab(forest->syms[0], findlabel(flab + 1));
- unlist();
- }
- list(jump(flab + 1));
- labelnode(flab);
- listnodes(q->kids[1], 0, 0);
- if (forest->op == LABEL+V) {
- equatelab(forest->syms[0], findlabel(flab + 1));
- unlist();
- }
- labelnode(flab + 1);
-
- if (tp->u.sym)
- p = listnodes(idtree(tp->u.sym), 0, 0); } break;
- case CNST: { Type ty = unqual(tp->type);
- assert(ty->u.sym);
- if (tlab || flab) {
- assert(ty == inttype);
- if (tlab && tp->u.v.i != 0)
- list(jump(tlab));
- else if (flab && tp->u.v.i == 0)
- list(jump(flab));
- }
- else if (ty->u.sym->addressed)
- p = listnodes(cvtconst(tp), 0, 0);
- else
- p = node(op, NULL, NULL, constant(ty, tp->u.v)); } break;
- case RIGHT: { if ( tp->kids[0] && tp->kids[1]
- && generic(tp->kids[1]->op) == ASGN
- && (generic(tp->kids[0]->op) == INDIR
- && tp->kids[0]->kids[0] == tp->kids[1]->kids[0]
- || (tp->kids[0]->op == FIELD
- && tp->kids[0] == tp->kids[1]->kids[0]))) {
- assert(tlab == 0 && flab == 0);
- if (generic(tp->kids[0]->op) == INDIR) {
- p = listnodes(tp->kids[0], 0, 0);
- list(p);
- listnodes(tp->kids[1], 0, 0);
- }
- else {
- assert(generic(tp->kids[0]->kids[0]->op) == INDIR);
- list(listnodes(tp->kids[0]->kids[0], 0, 0));
- p = listnodes(tp->kids[0], 0, 0);
- listnodes(tp->kids[1], 0, 0);
- }
- } else if (tp->kids[1]) {
- listnodes(tp->kids[0], 0, 0);
- p = listnodes(tp->kids[1], tlab, flab);
- } else
- p = listnodes(tp->kids[0], tlab, flab); } break;
- case JUMP: { assert(tlab == 0 && flab == 0);
- assert(tp->u.sym == 0);
- assert(tp->kids[0]);
- l = listnodes(tp->kids[0], 0, 0);
- list(newnode(JUMP+V, l, NULL, NULL));
- reset(); } break;
- case CALL: { Tree save = firstarg;
- firstarg = NULL;
- assert(tlab == 0 && flab == 0);
- if (tp->op == CALL+B && !IR->wants_callb) {
- Tree arg0 = tree(ARG+P, tp->kids[1]->type,
- tp->kids[1], NULL);
- if (IR->left_to_right)
- firstarg = arg0;
- l = listnodes(tp->kids[0], 0, 0);
- if (!IR->left_to_right || firstarg) {
- firstarg = NULL;
- listnodes(arg0, 0, 0);
- }
- p = newnode(CALL+V, l, NULL, NULL);
- } else {
- l = listnodes(tp->kids[0], 0, 0);
- r = listnodes(tp->kids[1], 0, 0);
- p = newnode(tp->op == CALL+B ? tp->op : op, l, r, NULL);
- }
- NEW0(p->syms[0], FUNC);
- assert(isptr(tp->kids[0]->type));
- assert(isfunc(tp->kids[0]->type->type));
- p->syms[0]->type = tp->kids[0]->type->type;
- list(p);
- reset();
- cfunc->u.f.ncalls++;
- firstarg = save;
- } break;
- case ARG: { assert(tlab == 0 && flab == 0);
- if (IR->left_to_right)
- listnodes(tp->kids[1], 0, 0);
- if (firstarg) {
- Tree arg = firstarg;
- firstarg = NULL;
- listnodes(arg, 0, 0);
- }
- l = listnodes(tp->kids[0], 0, 0);
- list(newnode(tp->op == ARG+B ? tp->op : op, l, NULL, NULL));
- forest->syms[0] = intconst(tp->type->size);
- forest->syms[1] = intconst(tp->type->align);
- if (!IR->left_to_right)
- listnodes(tp->kids[1], 0, 0); } break;
- case EQ: case NE: case GT: case GE: case LE:
- case LT: { assert(tp->u.sym == 0);
- assert(errcnt || tlab || flab);
- l = listnodes(tp->kids[0], 0, 0);
- r = listnodes(tp->kids[1], 0, 0);
- assert(errcnt || opkind(l->op) == opkind(r->op));
- assert(errcnt || optype(op) == optype(l->op));
- if (tlab)
- assert(flab == 0),
- list(newnode(generic(tp->op) + opkind(l->op), l, r, findlabel(tlab)));
- else if (flab) {
- switch (generic(tp->op)) {
- case EQ: op = NE; break;
- case NE: op = EQ; break;
- case GT: op = LE; break;
- case LT: op = GE; break;
- case GE: op = LT; break;
- case LE: op = GT; break;
- default: assert(0);
- }
- list(newnode(op + opkind(l->op), l, r, findlabel(flab)));
- }
- if (forest && forest->syms[0])
- forest->syms[0]->ref++; } break;
- case ASGN: { assert(tlab == 0 && flab == 0);
- if (tp->kids[0]->op == FIELD) {
- Tree x = tp->kids[0]->kids[0];
- Field f = tp->kids[0]->u.field;
- assert(generic(x->op) == INDIR);
- reset();
- l = listnodes(lvalue(x), 0, 0);
- if (fieldsize(f) < 8*f->type->size) {
- unsigned int fmask = fieldmask(f);
- unsigned int mask = fmask<<fieldright(f);
- Tree q = tp->kids[1];
- if (q->op == CNST+I && q->u.v.i == 0
- || q->op == CNST+U && q->u.v.u == 0)
- q = bittree(BAND, x, cnsttree(unsignedtype, (unsigned long)~mask));
- else if (q->op == CNST+I && (q->u.v.i&fmask) == fmask
- || q->op == CNST+U && (q->u.v.u&fmask) == fmask)
- q = bittree(BOR, x, cnsttree(unsignedtype, (unsigned long)mask));
- else {
- listnodes(q, 0, 0);
- q = bittree(BOR,
- bittree(BAND, rvalue(lvalue(x)),
- cnsttree(unsignedtype, (unsigned long)~mask)),
- bittree(BAND, shtree(LSH, cast(q, unsignedtype),
- cnsttree(unsignedtype, (unsigned long)fieldright(f))),
- cnsttree(unsignedtype, (unsigned long)mask)));
- }
- r = listnodes(q, 0, 0);
- op = ASGN + ttob(q->type);
- } else {
- r = listnodes(tp->kids[1], 0, 0);
- op = ASGN + ttob(tp->kids[1]->type);
- }
- } else {
- l = listnodes(tp->kids[0], 0, 0);
- r = listnodes(tp->kids[1], 0, 0);
- }
- list(newnode(tp->op == ASGN+B ? tp->op : op, l, r, NULL));
- forest->syms[0] = intconst(tp->kids[1]->type->size);
- forest->syms[1] = intconst(tp->kids[1]->type->align);
- if (isaddrop(tp->kids[0]->op)
- && !tp->kids[0]->u.sym->computed)
- kill(tp->kids[0]->u.sym);
- else
- reset();
- p = listnodes(tp->kids[1], 0, 0); } break;
- case BOR: case BAND: case BXOR:
- case ADD: case SUB: case RSH:
- case LSH: { assert(tlab == 0 && flab == 0);
- l = listnodes(tp->kids[0], 0, 0);
- r = listnodes(tp->kids[1], 0, 0);
- p = node(op, l, r, NULL); } break;
- case DIV: case MUL:
- case MOD: { assert(tlab == 0 && flab == 0);
- l = listnodes(tp->kids[0], 0, 0);
- r = listnodes(tp->kids[1], 0, 0);
- p = node(op, l, r, NULL);
- if (IR->mulops_calls && isint(tp->type)) {
- list(p);
- cfunc->u.f.ncalls++;
- } } break;
- case RET: { assert(tlab == 0 && flab == 0);
- l = listnodes(tp->kids[0], 0, 0);
- list(newnode(op, l, NULL, NULL)); } break;
- case CVF: case CVI: case CVP:
- case CVU: { assert(tlab == 0 && flab == 0);
- assert(optype(tp->kids[0]->op) != optype(tp->op) || tp->kids[0]->type->size != tp->type->size);
- l = listnodes(tp->kids[0], 0, 0);
- p = node(op, l, NULL, intconst(tp->kids[0]->type->size));
- } break;
- case BCOM:
- case NEG: { assert(tlab == 0 && flab == 0);
- l = listnodes(tp->kids[0], 0, 0);
- p = node(op, l, NULL, NULL); } break;
- case INDIR: { Type ty = tp->kids[0]->type;
- assert(tlab == 0 && flab == 0);
- l = listnodes(tp->kids[0], 0, 0);
- if (isptr(ty))
- ty = unqual(ty)->type;
- if (isvolatile(ty)
- || (isstruct(ty) && unqual(ty)->u.sym->u.s.vfields))
- p = newnode(tp->op == INDIR+B ? tp->op : op, l, NULL, NULL);
- else
- p = node(tp->op == INDIR+B ? tp->op : op, l, NULL, NULL); } break;
- case FIELD: { Tree q = tp->kids[0];
- if (tp->type == inttype) {
- long n = fieldleft(tp->u.field);
- q = shtree(RSH,
- shtree(LSH, q, cnsttree(inttype, n)),
- cnsttree(inttype, n + fieldright(tp->u.field)));
- } else if (fieldsize(tp->u.field) < 8*tp->u.field->type->size)
- q = bittree(BAND,
- shtree(RSH, q, cnsttree(inttype, (long)fieldright(tp->u.field))),
- cnsttree(unsignedtype, (unsigned long)fieldmask(tp->u.field)));
- assert(tlab == 0 && flab == 0);
- p = listnodes(q, 0, 0); } break;
- case ADDRG:
- case ADDRF: { assert(tlab == 0 && flab == 0);
- p = node(tp->op + sizeop(voidptype->size), NULL, NULL, tp->u.sym);
- } break;
- case ADDRL: { assert(tlab == 0 && flab == 0);
- if (tp->u.sym->temporary)
- addlocal(tp->u.sym);
- p = node(tp->op + sizeop(voidptype->size), NULL, NULL, tp->u.sym); } break;
- default:assert(0);
- }
- tp->node = p;
- return p;
-}
-static void list(Node p) {
- if (p && p->link == NULL) {
- if (forest) {
- p->link = forest->link;
- forest->link = p;
- } else
- p->link = p;
- forest = p;
- }
-}
-static void labelnode(int lab) {
- assert(lab);
- if (forest && forest->op == LABEL+V)
- equatelab(findlabel(lab), forest->syms[0]);
- else
- list(newnode(LABEL+V, NULL, NULL, findlabel(lab)));
- reset();
-}
-static void unlist(void) {
- Node p;
-
- assert(forest);
- assert(forest != forest->link);
- p = forest->link;
- while (p->link != forest)
- p = p->link;
- p->link = forest->link;
- forest = p;
-}
-Tree cvtconst(Tree p) {
- Symbol q = constant(p->type, p->u.v);
- Tree e;
-
- if (q->u.c.loc == NULL)
- q->u.c.loc = genident(STATIC, p->type, GLOBAL);
- if (isarray(p->type)) {
- e = simplify(ADDRG, atop(p->type), NULL, NULL);
- e->u.sym = q->u.c.loc;
- } else
- e = idtree(q->u.c.loc);
- return e;
-}
-void gencode(Symbol caller[], Symbol callee[]) {
- Code cp;
- Coordinate save;
-
- if (prunetemps == -1)
- prunetemps = !IR->wants_dag;
- save = src;
- if (assignargs) {
- int i;
- Symbol p, q;
- cp = codehead.next->next;
- codelist = codehead.next;
- for (i = 0; (p = callee[i]) != NULL
- && (q = caller[i]) != NULL; i++)
- if (p->sclass != q->sclass || p->type != q->type)
- walk(asgn(p, idtree(q)), 0, 0);
- codelist->next = cp;
- cp->prev = codelist;
- }
- if (glevel && IR->stabsym) {
- int i;
- Symbol p, q;
- for (i = 0; (p = callee[i]) != NULL
- && (q = caller[i]) != NULL; i++) {
- (*IR->stabsym)(p);
- if (p->sclass != q->sclass || p->type != q->type)
- (*IR->stabsym)(q);
- }
- swtoseg(CODE);
- }
- cp = codehead.next;
- for ( ; errcnt <= 0 && cp; cp = cp->next)
- switch (cp->kind) {
- case Address: (*IR->address)(cp->u.addr.sym, cp->u.addr.base,
- cp->u.addr.offset); break;
- case Blockbeg: {
- Symbol *p = cp->u.block.locals;
- (*IR->blockbeg)(&cp->u.block.x);
- for ( ; *p; p++)
- if ((*p)->ref != 0.0)
- (*IR->local)(*p);
- else if (glevel) (*IR->local)(*p);
- }
- break;
- case Blockend: (*IR->blockend)(&cp->u.begin->u.block.x); break;
- case Defpoint: src = cp->u.point.src; break;
- case Gen: case Jump:
- case Label: if (prunetemps)
- cp->u.forest = prune(cp->u.forest);
- fixup(cp->u.forest);
- cp->u.forest = (*IR->gen)(cp->u.forest); break;
- case Local: (*IR->local)(cp->u.var); break;
- case Switch: break;
- default: assert(0);
- }
- src = save;
-}
-static void fixup(Node p) {
- for ( ; p; p = p->link)
- switch (generic(p->op)) {
- case JUMP:
- if (specific(p->kids[0]->op) == ADDRG+P)
- p->kids[0]->syms[0] =
- equated(p->kids[0]->syms[0]);
- break;
- case LABEL: assert(p->syms[0] == equated(p->syms[0])); break;
- case EQ: case GE: case GT: case LE: case LT: case NE:
- assert(p->syms[0]);
- p->syms[0] = equated(p->syms[0]);
- }
-}
-static Symbol equated(Symbol p) {
- { Symbol q; for (q = p->u.l.equatedto; q; q = q->u.l.equatedto) assert(p != q); }
- while (p->u.l.equatedto)
- p = p->u.l.equatedto;
- return p;
-}
-void emitcode(void) {
- Code cp;
- Coordinate save;
-
- save = src;
- cp = codehead.next;
- for ( ; errcnt <= 0 && cp; cp = cp->next)
- switch (cp->kind) {
- case Address: break;
- case Blockbeg: if (glevel && IR->stabblock) {
- (*IR->stabblock)('{', cp->u.block.level - LOCAL, cp->u.block.locals);
- swtoseg(CODE);
- }
- break;
- case Blockend: if (glevel && IR->stabblock) {
- Code bp = cp->u.begin;
- foreach(bp->u.block.identifiers, bp->u.block.level, typestab, NULL);
- foreach(bp->u.block.types, bp->u.block.level, typestab, NULL);
- (*IR->stabblock)('}', bp->u.block.level - LOCAL, bp->u.block.locals);
- swtoseg(CODE);
- }
- break;
- case Defpoint: src = cp->u.point.src;
- if (glevel > 0 && IR->stabline) {
- (*IR->stabline)(&cp->u.point.src); swtoseg(CODE); } break;
- case Gen: case Jump:
- case Label: if (cp->u.forest)
- (*IR->emit)(cp->u.forest); break;
- case Local: if (glevel && IR->stabsym) {
- (*IR->stabsym)(cp->u.var);
- swtoseg(CODE);
- } break;
- case Switch: { int i;
- defglobal(cp->u.swtch.table, LIT);
- (*IR->defaddress)(equated(cp->u.swtch.labels[0]));
- for (i = 1; i < cp->u.swtch.size; i++) {
- long k = cp->u.swtch.values[i-1];
- while (++k < cp->u.swtch.values[i])
- assert(k < LONG_MAX),
- (*IR->defaddress)(equated(cp->u.swtch.deflab));
- (*IR->defaddress)(equated(cp->u.swtch.labels[i]));
- }
- swtoseg(CODE);
- } break;
- default: assert(0);
- }
- src = save;
-}
-
-static Node undag(Node forest) {
- Node p;
-
- tail = &forest;
- for (p = forest; p; p = p->link)
- if (generic(p->op) == INDIR) {
- assert(p->count >= 1);
- visit(p, 1);
- if (p->syms[2]) {
- assert(p->syms[2]->u.t.cse);
- p->syms[2]->u.t.cse = NULL;
- addlocal(p->syms[2]);
- }
- } else if (iscall(p->op) && p->count >= 1)
- visit(p, 1);
- else {
- assert(p->count == 0),
- visit(p, 1);
- *tail = p;
- tail = &p->link;
- }
- *tail = NULL;
- return forest;
-}
-static Node replace(Node p) {
- if (p && ( generic(p->op) == INDIR
- && generic(p->kids[0]->op) == ADDRL
- && p->kids[0]->syms[0]->temporary
- && p->kids[0]->syms[0]->u.t.replace)) {
- p = p->kids[0]->syms[0]->u.t.cse;
- if (generic(p->op) == INDIR && isaddrop(p->kids[0]->op))
- p = newnode(p->op, newnode(p->kids[0]->op, NULL, NULL,
- p->kids[0]->syms[0]), NULL, NULL);
- else if (generic(p->op) == ADDRG)
- p = newnode(p->op, NULL, NULL, p->syms[0]);
- else
- assert(0);
- p->count = 1;
- } else if (p) {
- p->kids[0] = replace(p->kids[0]);
- p->kids[1] = replace(p->kids[1]);
- }
- return p;
-}
-static Node prune(Node forest) {
- Node p, *tail = &forest;
- int count = 0;
-
- for (p = forest; p; p = p->link) {
- if (count > 0) {
- p->kids[0] = replace(p->kids[0]);
- p->kids[1] = replace(p->kids[1]);
- }
- if (( generic(p->op) == ASGN
- && generic(p->kids[0]->op) == ADDRL
- && p->kids[0]->syms[0]->temporary
- && p->kids[0]->syms[0]->u.t.cse == p->kids[1])) {
- Symbol tmp = p->kids[0]->syms[0];
- if (!tmp->defined)
- (*IR->local)(tmp);
- tmp->defined = 1;
- if (( generic(p->kids[1]->op) == INDIR
- && isaddrop(p->kids[1]->kids[0]->op)
- && p->kids[1]->kids[0]->syms[0]->sclass == REGISTER)
- || (( generic(p->kids[1]->op) == INDIR
- && isaddrop(p->kids[1]->kids[0]->op)) && tmp->sclass == AUTO)
- || (generic(p->kids[1]->op) == ADDRG && tmp->sclass == AUTO)) {
- tmp->u.t.replace = 1;
- count++;
- continue; /* and omit the assignment */
- }
- }
- /* keep the assignment and other roots */
- *tail = p;
- tail = &(*tail)->link;
- }
- assert(*tail == NULL);
- return forest;
-}
-static Node visit(Node p, int listed) {
- if (p)
- if (p->syms[2])
- p = tmpnode(p);
- else if (p->count <= 1 && !iscall(p->op)
- || p->count == 0 && iscall(p->op)) {
- p->kids[0] = visit(p->kids[0], 0);
- p->kids[1] = visit(p->kids[1], 0);
- }
-
- else if (specific(p->op) == ADDRL+P || specific(p->op) == ADDRF+P) {
- assert(!listed);
- p = newnode(p->op, NULL, NULL, p->syms[0]);
- p->count = 1;
- }
- else if (p->op == INDIR+B) {
- p = newnode(p->op, p->kids[0], NULL, NULL);
- p->count = 1;
- p->kids[0] = visit(p->kids[0], 0);
- p->kids[1] = visit(p->kids[1], 0);
- }
- else {
- p->kids[0] = visit(p->kids[0], 0);
- p->kids[1] = visit(p->kids[1], 0);
- p->syms[2] = temporary(REGISTER, btot(p->op, opsize(p->op)));
- assert(!p->syms[2]->defined);
- p->syms[2]->ref = 1;
- p->syms[2]->u.t.cse = p;
-
- *tail = asgnnode(p->syms[2], p);
- tail = &(*tail)->link;
- if (!listed)
- p = tmpnode(p);
- };
- return p;
-}
-static Node tmpnode(Node p) {
- Symbol tmp = p->syms[2];
-
- assert(tmp);
- if (--p->count == 0)
- p->syms[2] = NULL;
- p = newnode(INDIR + ttob(tmp->type),
- newnode(ADDRL + ttob(voidptype), NULL, NULL, tmp), NULL, NULL);
- p->count = 1;
- return p;
-}
-static Node asgnnode(Symbol tmp, Node p) {
- p = newnode(ASGN + ttob(tmp->type),
- newnode(ADDRL + ttob(voidptype), NULL, NULL, tmp), p, NULL);
- p->syms[0] = intconst(tmp->type->size);
- p->syms[1] = intconst(tmp->type->align);
- return p;
-}
-/* printdag - print dag p on fd, or the node list if p == 0 */
-void printdag(Node p, int fd) {
- FILE *f = fd == 1 ? stdout : stderr;
-
- printed(0);
- if (p == 0) {
- if ((p = forest) != NULL)
- do {
- p = p->link;
- printdag1(p, fd, 0);
- } while (p != forest);
- } else if (*printed(nodeid((Tree)p)))
- fprint(f, "node'%d printed above\n", nodeid((Tree)p));
- else
- printdag1(p, fd, 0);
-}
-
-/* printdag1 - recursively print dag p */
-static void printdag1(Node p, int fd, int lev) {
- int id, i;
-
- if (p == 0 || *printed(id = nodeid((Tree)p)))
- return;
- *printed(id) = 1;
- for (i = 0; i < NELEMS(p->kids); i++)
- printdag1(p->kids[i], fd, lev + 1);
- printnode(p, fd, lev);
-}
-
-/* printnode - print fields of dag p */
-static void printnode(Node p, int fd, int lev) {
- if (p) {
- FILE *f = fd == 1 ? stdout : stderr;
- int i, id = nodeid((Tree)p);
- fprint(f, "%c%d%s", lev == 0 ? '\'' : '#', id,
- &" "[id < 10 ? 0 : id < 100 ? 1 : 2]);
- fprint(f, "%s count=%d", opname(p->op), p->count);
- for (i = 0; i < NELEMS(p->kids) && p->kids[i]; i++)
- fprint(f, " #%d", nodeid((Tree)p->kids[i]));
- if (generic(p->op) == CALL && p->syms[0] && p->syms[0]->type)
- fprint(f, " {%t}", p->syms[0]->type);
- else
- for (i = 0; i < NELEMS(p->syms) && p->syms[i]; i++)
- if (p->syms[i]->name)
- fprint(f, " %s", p->syms[i]->name);
- else
- fprint(f, " %p", p->syms[i]);
- fprint(f, "\n");
- }
-}
-
-/* typestab - emit stab entries for p */
-static void typestab(Symbol p, void *cl) {
- if (!isfunc(p->type) && (p->sclass == EXTERN || p->sclass == STATIC) && IR->stabsym)
- (*IR->stabsym)(p);
- else if ((p->sclass == TYPEDEF || p->sclass == 0) && IR->stabtype)
- (*IR->stabtype)(p);
-}
-
+#include "c.h"
+
+
+#define iscall(op) (generic(op) == CALL \
+ || IR->mulops_calls \
+ && (generic(op)==DIV||generic(op)==MOD||generic(op)==MUL) \
+ && ( optype(op)==U || optype(op)==I))
+static Node forest;
+static struct dag {
+ struct node node;
+ struct dag *hlink;
+} *buckets[16];
+int nodecount;
+static Tree firstarg;
+int assignargs = 1;
+int prunetemps = -1;
+static Node *tail;
+
+static int depth = 0;
+static Node replace(Node);
+static Node prune(Node);
+static Node asgnnode(Symbol, Node);
+static struct dag *dagnode(int, Node, Node, Symbol);
+static Symbol equated(Symbol);
+static void fixup(Node);
+static void labelnode(int);
+static void list(Node);
+static void kill(Symbol);
+static Node node(int, Node, Node, Symbol);
+static void printdag1(Node, int, int);
+static void printnode(Node, int, int);
+static void reset(void);
+static Node tmpnode(Node);
+static void typestab(Symbol, void *);
+static Node undag(Node);
+static Node visit(Node, int);
+static void unlist(void);
+void walk(Tree tp, int tlab, int flab) {
+ listnodes(tp, tlab, flab);
+ if (forest) {
+ Node list = forest->link;
+ forest->link = NULL;
+ if (!IR->wants_dag)
+ list = undag(list);
+ code(Gen)->u.forest = list;
+ forest = NULL;
+ }
+ reset();
+ deallocate(STMT);
+}
+
+static Node node(int op, Node l, Node r, Symbol sym) {
+ int i;
+ struct dag *p;
+
+ i = (opindex(op)^((unsigned long)sym>>2))&(NELEMS(buckets)-1);
+ for (p = buckets[i]; p; p = p->hlink)
+ if (p->node.op == op && p->node.syms[0] == sym
+ && p->node.kids[0] == l && p->node.kids[1] == r)
+ return &p->node;
+ p = dagnode(op, l, r, sym);
+ p->hlink = buckets[i];
+ buckets[i] = p;
+ ++nodecount;
+ return &p->node;
+}
+static struct dag *dagnode(int op, Node l, Node r, Symbol sym) {
+ struct dag *p;
+
+ NEW0(p, FUNC);
+ p->node.op = op;
+ if ((p->node.kids[0] = l) != NULL)
+ ++l->count;
+ if ((p->node.kids[1] = r) != NULL)
+ ++r->count;
+ p->node.syms[0] = sym;
+ return p;
+}
+Node newnode(int op, Node l, Node r, Symbol sym) {
+ return &dagnode(op, l, r, sym)->node;
+}
+static void kill(Symbol p) {
+ int i;
+ struct dag **q;
+
+ for (i = 0; i < NELEMS(buckets); i++)
+ for (q = &buckets[i]; *q; )
+ if (generic((*q)->node.op) == INDIR &&
+ (!isaddrop((*q)->node.kids[0]->op)
+ || (*q)->node.kids[0]->syms[0] == p)) {
+ *q = (*q)->hlink;
+ --nodecount;
+ } else
+ q = &(*q)->hlink;
+}
+static void reset(void) {
+ if (nodecount > 0)
+ memset(buckets, 0, sizeof buckets);
+ nodecount = 0;
+}
+Node listnodes(Tree tp, int tlab, int flab) {
+ Node p = NULL, l, r;
+ int op;
+
+ assert(tlab || flab || tlab == 0 && flab == 0);
+ if (tp == NULL)
+ return NULL;
+ if (tp->node)
+ return tp->node;
+ op = tp->op + sizeop(tp->type->size);
+ switch (generic(tp->op)) {
+ case AND: { if (depth++ == 0) reset();
+ if (flab) {
+ listnodes(tp->kids[0], 0, flab);
+ listnodes(tp->kids[1], 0, flab);
+ } else {
+ listnodes(tp->kids[0], 0, flab = genlabel(1));
+ listnodes(tp->kids[1], tlab, 0);
+ labelnode(flab);
+ }
+ depth--; } break;
+ case OR: { if (depth++ == 0)
+ reset();
+ if (tlab) {
+ listnodes(tp->kids[0], tlab, 0);
+ listnodes(tp->kids[1], tlab, 0);
+ } else {
+ tlab = genlabel(1);
+ listnodes(tp->kids[0], tlab, 0);
+ listnodes(tp->kids[1], 0, flab);
+ labelnode(tlab);
+ }
+ depth--;
+ } break;
+ case NOT: { return listnodes(tp->kids[0], flab, tlab); }
+ case COND: { Tree q = tp->kids[1];
+ assert(tlab == 0 && flab == 0);
+ if (tp->u.sym)
+ addlocal(tp->u.sym);
+ flab = genlabel(2);
+ listnodes(tp->kids[0], 0, flab);
+ assert(q && q->op == RIGHT);
+ reset();
+ listnodes(q->kids[0], 0, 0);
+ if (forest->op == LABEL+V) {
+ equatelab(forest->syms[0], findlabel(flab + 1));
+ unlist();
+ }
+ list(jump(flab + 1));
+ labelnode(flab);
+ listnodes(q->kids[1], 0, 0);
+ if (forest->op == LABEL+V) {
+ equatelab(forest->syms[0], findlabel(flab + 1));
+ unlist();
+ }
+ labelnode(flab + 1);
+
+ if (tp->u.sym)
+ p = listnodes(idtree(tp->u.sym), 0, 0); } break;
+ case CNST: { Type ty = unqual(tp->type);
+ assert(ty->u.sym);
+ if (tlab || flab) {
+ assert(ty == inttype);
+ if (tlab && tp->u.v.i != 0)
+ list(jump(tlab));
+ else if (flab && tp->u.v.i == 0)
+ list(jump(flab));
+ }
+ else if (ty->u.sym->addressed)
+ p = listnodes(cvtconst(tp), 0, 0);
+ else
+ p = node(op, NULL, NULL, constant(ty, tp->u.v)); } break;
+ case RIGHT: { if ( tp->kids[0] && tp->kids[1]
+ && generic(tp->kids[1]->op) == ASGN
+ && (generic(tp->kids[0]->op) == INDIR
+ && tp->kids[0]->kids[0] == tp->kids[1]->kids[0]
+ || (tp->kids[0]->op == FIELD
+ && tp->kids[0] == tp->kids[1]->kids[0]))) {
+ assert(tlab == 0 && flab == 0);
+ if (generic(tp->kids[0]->op) == INDIR) {
+ p = listnodes(tp->kids[0], 0, 0);
+ list(p);
+ listnodes(tp->kids[1], 0, 0);
+ }
+ else {
+ assert(generic(tp->kids[0]->kids[0]->op) == INDIR);
+ list(listnodes(tp->kids[0]->kids[0], 0, 0));
+ p = listnodes(tp->kids[0], 0, 0);
+ listnodes(tp->kids[1], 0, 0);
+ }
+ } else if (tp->kids[1]) {
+ listnodes(tp->kids[0], 0, 0);
+ p = listnodes(tp->kids[1], tlab, flab);
+ } else
+ p = listnodes(tp->kids[0], tlab, flab); } break;
+ case JUMP: { assert(tlab == 0 && flab == 0);
+ assert(tp->u.sym == 0);
+ assert(tp->kids[0]);
+ l = listnodes(tp->kids[0], 0, 0);
+ list(newnode(JUMP+V, l, NULL, NULL));
+ reset(); } break;
+ case CALL: { Tree save = firstarg;
+ firstarg = NULL;
+ assert(tlab == 0 && flab == 0);
+ if (tp->op == CALL+B && !IR->wants_callb) {
+ Tree arg0 = tree(ARG+P, tp->kids[1]->type,
+ tp->kids[1], NULL);
+ if (IR->left_to_right)
+ firstarg = arg0;
+ l = listnodes(tp->kids[0], 0, 0);
+ if (!IR->left_to_right || firstarg) {
+ firstarg = NULL;
+ listnodes(arg0, 0, 0);
+ }
+ p = newnode(CALL+V, l, NULL, NULL);
+ } else {
+ l = listnodes(tp->kids[0], 0, 0);
+ r = listnodes(tp->kids[1], 0, 0);
+ p = newnode(tp->op == CALL+B ? tp->op : op, l, r, NULL);
+ }
+ NEW0(p->syms[0], FUNC);
+ assert(isptr(tp->kids[0]->type));
+ assert(isfunc(tp->kids[0]->type->type));
+ p->syms[0]->type = tp->kids[0]->type->type;
+ list(p);
+ reset();
+ cfunc->u.f.ncalls++;
+ firstarg = save;
+ } break;
+ case ARG: { assert(tlab == 0 && flab == 0);
+ if (IR->left_to_right)
+ listnodes(tp->kids[1], 0, 0);
+ if (firstarg) {
+ Tree arg = firstarg;
+ firstarg = NULL;
+ listnodes(arg, 0, 0);
+ }
+ l = listnodes(tp->kids[0], 0, 0);
+ list(newnode(tp->op == ARG+B ? tp->op : op, l, NULL, NULL));
+ forest->syms[0] = intconst(tp->type->size);
+ forest->syms[1] = intconst(tp->type->align);
+ if (!IR->left_to_right)
+ listnodes(tp->kids[1], 0, 0); } break;
+ case EQ: case NE: case GT: case GE: case LE:
+ case LT: { assert(tp->u.sym == 0);
+ assert(errcnt || tlab || flab);
+ l = listnodes(tp->kids[0], 0, 0);
+ r = listnodes(tp->kids[1], 0, 0);
+ assert(errcnt || opkind(l->op) == opkind(r->op));
+ assert(errcnt || optype(op) == optype(l->op));
+ if (tlab)
+ assert(flab == 0),
+ list(newnode(generic(tp->op) + opkind(l->op), l, r, findlabel(tlab)));
+ else if (flab) {
+ switch (generic(tp->op)) {
+ case EQ: op = NE; break;
+ case NE: op = EQ; break;
+ case GT: op = LE; break;
+ case LT: op = GE; break;
+ case GE: op = LT; break;
+ case LE: op = GT; break;
+ default: assert(0);
+ }
+ list(newnode(op + opkind(l->op), l, r, findlabel(flab)));
+ }
+ if (forest && forest->syms[0])
+ forest->syms[0]->ref++; } break;
+ case ASGN: { assert(tlab == 0 && flab == 0);
+ if (tp->kids[0]->op == FIELD) {
+ Tree x = tp->kids[0]->kids[0];
+ Field f = tp->kids[0]->u.field;
+ assert(generic(x->op) == INDIR);
+ reset();
+ l = listnodes(lvalue(x), 0, 0);
+ if (fieldsize(f) < 8*f->type->size) {
+ unsigned int fmask = fieldmask(f);
+ unsigned int mask = fmask<<fieldright(f);
+ Tree q = tp->kids[1];
+ if (q->op == CNST+I && q->u.v.i == 0
+ || q->op == CNST+U && q->u.v.u == 0)
+ q = bittree(BAND, x, cnsttree(unsignedtype, (unsigned long)~mask));
+ else if (q->op == CNST+I && (q->u.v.i&fmask) == fmask
+ || q->op == CNST+U && (q->u.v.u&fmask) == fmask)
+ q = bittree(BOR, x, cnsttree(unsignedtype, (unsigned long)mask));
+ else {
+ listnodes(q, 0, 0);
+ q = bittree(BOR,
+ bittree(BAND, rvalue(lvalue(x)),
+ cnsttree(unsignedtype, (unsigned long)~mask)),
+ bittree(BAND, shtree(LSH, cast(q, unsignedtype),
+ cnsttree(unsignedtype, (unsigned long)fieldright(f))),
+ cnsttree(unsignedtype, (unsigned long)mask)));
+ }
+ r = listnodes(q, 0, 0);
+ op = ASGN + ttob(q->type);
+ } else {
+ r = listnodes(tp->kids[1], 0, 0);
+ op = ASGN + ttob(tp->kids[1]->type);
+ }
+ } else {
+ l = listnodes(tp->kids[0], 0, 0);
+ r = listnodes(tp->kids[1], 0, 0);
+ }
+ list(newnode(tp->op == ASGN+B ? tp->op : op, l, r, NULL));
+ forest->syms[0] = intconst(tp->kids[1]->type->size);
+ forest->syms[1] = intconst(tp->kids[1]->type->align);
+ if (isaddrop(tp->kids[0]->op)
+ && !tp->kids[0]->u.sym->computed)
+ kill(tp->kids[0]->u.sym);
+ else
+ reset();
+ p = listnodes(tp->kids[1], 0, 0); } break;
+ case BOR: case BAND: case BXOR:
+ case ADD: case SUB: case RSH:
+ case LSH: { assert(tlab == 0 && flab == 0);
+ l = listnodes(tp->kids[0], 0, 0);
+ r = listnodes(tp->kids[1], 0, 0);
+ p = node(op, l, r, NULL); } break;
+ case DIV: case MUL:
+ case MOD: { assert(tlab == 0 && flab == 0);
+ l = listnodes(tp->kids[0], 0, 0);
+ r = listnodes(tp->kids[1], 0, 0);
+ p = node(op, l, r, NULL);
+ if (IR->mulops_calls && isint(tp->type)) {
+ list(p);
+ cfunc->u.f.ncalls++;
+ } } break;
+ case RET: { assert(tlab == 0 && flab == 0);
+ l = listnodes(tp->kids[0], 0, 0);
+ list(newnode(op, l, NULL, NULL)); } break;
+ case CVF: case CVI: case CVP:
+ case CVU: { assert(tlab == 0 && flab == 0);
+ assert(optype(tp->kids[0]->op) != optype(tp->op) || tp->kids[0]->type->size != tp->type->size);
+ l = listnodes(tp->kids[0], 0, 0);
+ p = node(op, l, NULL, intconst(tp->kids[0]->type->size));
+ } break;
+ case BCOM:
+ case NEG: { assert(tlab == 0 && flab == 0);
+ l = listnodes(tp->kids[0], 0, 0);
+ p = node(op, l, NULL, NULL); } break;
+ case INDIR: { Type ty = tp->kids[0]->type;
+ assert(tlab == 0 && flab == 0);
+ l = listnodes(tp->kids[0], 0, 0);
+ if (isptr(ty))
+ ty = unqual(ty)->type;
+ if (isvolatile(ty)
+ || (isstruct(ty) && unqual(ty)->u.sym->u.s.vfields))
+ p = newnode(tp->op == INDIR+B ? tp->op : op, l, NULL, NULL);
+ else
+ p = node(tp->op == INDIR+B ? tp->op : op, l, NULL, NULL); } break;
+ case FIELD: { Tree q = tp->kids[0];
+ if (tp->type == inttype) {
+ long n = fieldleft(tp->u.field);
+ q = shtree(RSH,
+ shtree(LSH, q, cnsttree(inttype, n)),
+ cnsttree(inttype, n + fieldright(tp->u.field)));
+ } else if (fieldsize(tp->u.field) < 8*tp->u.field->type->size)
+ q = bittree(BAND,
+ shtree(RSH, q, cnsttree(inttype, (long)fieldright(tp->u.field))),
+ cnsttree(unsignedtype, (unsigned long)fieldmask(tp->u.field)));
+ assert(tlab == 0 && flab == 0);
+ p = listnodes(q, 0, 0); } break;
+ case ADDRG:
+ case ADDRF: { assert(tlab == 0 && flab == 0);
+ p = node(tp->op + sizeop(voidptype->size), NULL, NULL, tp->u.sym);
+ } break;
+ case ADDRL: { assert(tlab == 0 && flab == 0);
+ if (tp->u.sym->temporary)
+ addlocal(tp->u.sym);
+ p = node(tp->op + sizeop(voidptype->size), NULL, NULL, tp->u.sym); } break;
+ default:assert(0);
+ }
+ tp->node = p;
+ return p;
+}
+static void list(Node p) {
+ if (p && p->link == NULL) {
+ if (forest) {
+ p->link = forest->link;
+ forest->link = p;
+ } else
+ p->link = p;
+ forest = p;
+ }
+}
+static void labelnode(int lab) {
+ assert(lab);
+ if (forest && forest->op == LABEL+V)
+ equatelab(findlabel(lab), forest->syms[0]);
+ else
+ list(newnode(LABEL+V, NULL, NULL, findlabel(lab)));
+ reset();
+}
+static void unlist(void) {
+ Node p;
+
+ assert(forest);
+ assert(forest != forest->link);
+ p = forest->link;
+ while (p->link != forest)
+ p = p->link;
+ p->link = forest->link;
+ forest = p;
+}
+Tree cvtconst(Tree p) {
+ Symbol q = constant(p->type, p->u.v);
+ Tree e;
+
+ if (q->u.c.loc == NULL)
+ q->u.c.loc = genident(STATIC, p->type, GLOBAL);
+ if (isarray(p->type)) {
+ e = simplify(ADDRG, atop(p->type), NULL, NULL);
+ e->u.sym = q->u.c.loc;
+ } else
+ e = idtree(q->u.c.loc);
+ return e;
+}
+void gencode(Symbol caller[], Symbol callee[]) {
+ Code cp;
+ Coordinate save;
+
+ if (prunetemps == -1)
+ prunetemps = !IR->wants_dag;
+ save = src;
+ if (assignargs) {
+ int i;
+ Symbol p, q;
+ cp = codehead.next->next;
+ codelist = codehead.next;
+ for (i = 0; (p = callee[i]) != NULL
+ && (q = caller[i]) != NULL; i++)
+ if (p->sclass != q->sclass || p->type != q->type)
+ walk(asgn(p, idtree(q)), 0, 0);
+ codelist->next = cp;
+ cp->prev = codelist;
+ }
+ if (glevel && IR->stabsym) {
+ int i;
+ Symbol p, q;
+ for (i = 0; (p = callee[i]) != NULL
+ && (q = caller[i]) != NULL; i++) {
+ (*IR->stabsym)(p);
+ if (p->sclass != q->sclass || p->type != q->type)
+ (*IR->stabsym)(q);
+ }
+ swtoseg(CODE);
+ }
+ cp = codehead.next;
+ for ( ; errcnt <= 0 && cp; cp = cp->next)
+ switch (cp->kind) {
+ case Address: (*IR->address)(cp->u.addr.sym, cp->u.addr.base,
+ cp->u.addr.offset); break;
+ case Blockbeg: {
+ Symbol *p = cp->u.block.locals;
+ (*IR->blockbeg)(&cp->u.block.x);
+ for ( ; *p; p++)
+ if ((*p)->ref != 0.0)
+ (*IR->local)(*p);
+ else if (glevel) (*IR->local)(*p);
+ }
+ break;
+ case Blockend: (*IR->blockend)(&cp->u.begin->u.block.x); break;
+ case Defpoint: src = cp->u.point.src; break;
+ case Gen: case Jump:
+ case Label: if (prunetemps)
+ cp->u.forest = prune(cp->u.forest);
+ fixup(cp->u.forest);
+ cp->u.forest = (*IR->gen)(cp->u.forest); break;
+ case Local: (*IR->local)(cp->u.var); break;
+ case Switch: break;
+ default: assert(0);
+ }
+ src = save;
+}
+static void fixup(Node p) {
+ for ( ; p; p = p->link)
+ switch (generic(p->op)) {
+ case JUMP:
+ if (specific(p->kids[0]->op) == ADDRG+P)
+ p->kids[0]->syms[0] =
+ equated(p->kids[0]->syms[0]);
+ break;
+ case LABEL: assert(p->syms[0] == equated(p->syms[0])); break;
+ case EQ: case GE: case GT: case LE: case LT: case NE:
+ assert(p->syms[0]);
+ p->syms[0] = equated(p->syms[0]);
+ }
+}
+static Symbol equated(Symbol p) {
+ { Symbol q; for (q = p->u.l.equatedto; q; q = q->u.l.equatedto) assert(p != q); }
+ while (p->u.l.equatedto)
+ p = p->u.l.equatedto;
+ return p;
+}
+void emitcode(void) {
+ Code cp;
+ Coordinate save;
+
+ save = src;
+ cp = codehead.next;
+ for ( ; errcnt <= 0 && cp; cp = cp->next)
+ switch (cp->kind) {
+ case Address: break;
+ case Blockbeg: if (glevel && IR->stabblock) {
+ (*IR->stabblock)('{', cp->u.block.level - LOCAL, cp->u.block.locals);
+ swtoseg(CODE);
+ }
+ break;
+ case Blockend: if (glevel && IR->stabblock) {
+ Code bp = cp->u.begin;
+ foreach(bp->u.block.identifiers, bp->u.block.level, typestab, NULL);
+ foreach(bp->u.block.types, bp->u.block.level, typestab, NULL);
+ (*IR->stabblock)('}', bp->u.block.level - LOCAL, bp->u.block.locals);
+ swtoseg(CODE);
+ }
+ break;
+ case Defpoint: src = cp->u.point.src;
+ if (glevel > 0 && IR->stabline) {
+ (*IR->stabline)(&cp->u.point.src); swtoseg(CODE); } break;
+ case Gen: case Jump:
+ case Label: if (cp->u.forest)
+ (*IR->emit)(cp->u.forest); break;
+ case Local: if (glevel && IR->stabsym) {
+ (*IR->stabsym)(cp->u.var);
+ swtoseg(CODE);
+ } break;
+ case Switch: { int i;
+ defglobal(cp->u.swtch.table, LIT);
+ (*IR->defaddress)(equated(cp->u.swtch.labels[0]));
+ for (i = 1; i < cp->u.swtch.size; i++) {
+ long k = cp->u.swtch.values[i-1];
+ while (++k < cp->u.swtch.values[i])
+ assert(k < LONG_MAX),
+ (*IR->defaddress)(equated(cp->u.swtch.deflab));
+ (*IR->defaddress)(equated(cp->u.swtch.labels[i]));
+ }
+ swtoseg(CODE);
+ } break;
+ default: assert(0);
+ }
+ src = save;
+}
+
+static Node undag(Node forest) {
+ Node p;
+
+ tail = &forest;
+ for (p = forest; p; p = p->link)
+ if (generic(p->op) == INDIR) {
+ assert(p->count >= 1);
+ visit(p, 1);
+ if (p->syms[2]) {
+ assert(p->syms[2]->u.t.cse);
+ p->syms[2]->u.t.cse = NULL;
+ addlocal(p->syms[2]);
+ }
+ } else if (iscall(p->op) && p->count >= 1)
+ visit(p, 1);
+ else {
+ assert(p->count == 0),
+ visit(p, 1);
+ *tail = p;
+ tail = &p->link;
+ }
+ *tail = NULL;
+ return forest;
+}
+static Node replace(Node p) {
+ if (p && ( generic(p->op) == INDIR
+ && generic(p->kids[0]->op) == ADDRL
+ && p->kids[0]->syms[0]->temporary
+ && p->kids[0]->syms[0]->u.t.replace)) {
+ p = p->kids[0]->syms[0]->u.t.cse;
+ if (generic(p->op) == INDIR && isaddrop(p->kids[0]->op))
+ p = newnode(p->op, newnode(p->kids[0]->op, NULL, NULL,
+ p->kids[0]->syms[0]), NULL, NULL);
+ else if (generic(p->op) == ADDRG)
+ p = newnode(p->op, NULL, NULL, p->syms[0]);
+ else
+ assert(0);
+ p->count = 1;
+ } else if (p) {
+ p->kids[0] = replace(p->kids[0]);
+ p->kids[1] = replace(p->kids[1]);
+ }
+ return p;
+}
+static Node prune(Node forest) {
+ Node p, *tail = &forest;
+ int count = 0;
+
+ for (p = forest; p; p = p->link) {
+ if (count > 0) {
+ p->kids[0] = replace(p->kids[0]);
+ p->kids[1] = replace(p->kids[1]);
+ }
+ if (( generic(p->op) == ASGN
+ && generic(p->kids[0]->op) == ADDRL
+ && p->kids[0]->syms[0]->temporary
+ && p->kids[0]->syms[0]->u.t.cse == p->kids[1])) {
+ Symbol tmp = p->kids[0]->syms[0];
+ if (!tmp->defined)
+ (*IR->local)(tmp);
+ tmp->defined = 1;
+ if (( generic(p->kids[1]->op) == INDIR
+ && isaddrop(p->kids[1]->kids[0]->op)
+ && p->kids[1]->kids[0]->syms[0]->sclass == REGISTER)
+ || (( generic(p->kids[1]->op) == INDIR
+ && isaddrop(p->kids[1]->kids[0]->op)) && tmp->sclass == AUTO)
+ || (generic(p->kids[1]->op) == ADDRG && tmp->sclass == AUTO)) {
+ tmp->u.t.replace = 1;
+ count++;
+ continue; /* and omit the assignment */
+ }
+ }
+ /* keep the assignment and other roots */
+ *tail = p;
+ tail = &(*tail)->link;
+ }
+ assert(*tail == NULL);
+ return forest;
+}
+static Node visit(Node p, int listed) {
+ if (p)
+ if (p->syms[2])
+ p = tmpnode(p);
+ else if (p->count <= 1 && !iscall(p->op)
+ || p->count == 0 && iscall(p->op)) {
+ p->kids[0] = visit(p->kids[0], 0);
+ p->kids[1] = visit(p->kids[1], 0);
+ }
+
+ else if (specific(p->op) == ADDRL+P || specific(p->op) == ADDRF+P) {
+ assert(!listed);
+ p = newnode(p->op, NULL, NULL, p->syms[0]);
+ p->count = 1;
+ }
+ else if (p->op == INDIR+B) {
+ p = newnode(p->op, p->kids[0], NULL, NULL);
+ p->count = 1;
+ p->kids[0] = visit(p->kids[0], 0);
+ p->kids[1] = visit(p->kids[1], 0);
+ }
+ else {
+ p->kids[0] = visit(p->kids[0], 0);
+ p->kids[1] = visit(p->kids[1], 0);
+ p->syms[2] = temporary(REGISTER, btot(p->op, opsize(p->op)));
+ assert(!p->syms[2]->defined);
+ p->syms[2]->ref = 1;
+ p->syms[2]->u.t.cse = p;
+
+ *tail = asgnnode(p->syms[2], p);
+ tail = &(*tail)->link;
+ if (!listed)
+ p = tmpnode(p);
+ };
+ return p;
+}
+static Node tmpnode(Node p) {
+ Symbol tmp = p->syms[2];
+
+ assert(tmp);
+ if (--p->count == 0)
+ p->syms[2] = NULL;
+ p = newnode(INDIR + ttob(tmp->type),
+ newnode(ADDRL + ttob(voidptype), NULL, NULL, tmp), NULL, NULL);
+ p->count = 1;
+ return p;
+}
+static Node asgnnode(Symbol tmp, Node p) {
+ p = newnode(ASGN + ttob(tmp->type),
+ newnode(ADDRL + ttob(voidptype), NULL, NULL, tmp), p, NULL);
+ p->syms[0] = intconst(tmp->type->size);
+ p->syms[1] = intconst(tmp->type->align);
+ return p;
+}
+/* printdag - print dag p on fd, or the node list if p == 0 */
+void printdag(Node p, int fd) {
+ FILE *f = fd == 1 ? stdout : stderr;
+
+ printed(0);
+ if (p == 0) {
+ if ((p = forest) != NULL)
+ do {
+ p = p->link;
+ printdag1(p, fd, 0);
+ } while (p != forest);
+ } else if (*printed(nodeid((Tree)p)))
+ fprint(f, "node'%d printed above\n", nodeid((Tree)p));
+ else
+ printdag1(p, fd, 0);
+}
+
+/* printdag1 - recursively print dag p */
+static void printdag1(Node p, int fd, int lev) {
+ int id, i;
+
+ if (p == 0 || *printed(id = nodeid((Tree)p)))
+ return;
+ *printed(id) = 1;
+ for (i = 0; i < NELEMS(p->kids); i++)
+ printdag1(p->kids[i], fd, lev + 1);
+ printnode(p, fd, lev);
+}
+
+/* printnode - print fields of dag p */
+static void printnode(Node p, int fd, int lev) {
+ if (p) {
+ FILE *f = fd == 1 ? stdout : stderr;
+ int i, id = nodeid((Tree)p);
+ fprint(f, "%c%d%s", lev == 0 ? '\'' : '#', id,
+ &" "[id < 10 ? 0 : id < 100 ? 1 : 2]);
+ fprint(f, "%s count=%d", opname(p->op), p->count);
+ for (i = 0; i < NELEMS(p->kids) && p->kids[i]; i++)
+ fprint(f, " #%d", nodeid((Tree)p->kids[i]));
+ if (generic(p->op) == CALL && p->syms[0] && p->syms[0]->type)
+ fprint(f, " {%t}", p->syms[0]->type);
+ else
+ for (i = 0; i < NELEMS(p->syms) && p->syms[i]; i++)
+ if (p->syms[i]->name)
+ fprint(f, " %s", p->syms[i]->name);
+ else
+ fprint(f, " %p", p->syms[i]);
+ fprint(f, "\n");
+ }
+}
+
+/* typestab - emit stab entries for p */
+static void typestab(Symbol p, void *cl) {
+ if (!isfunc(p->type) && (p->sclass == EXTERN || p->sclass == STATIC) && IR->stabsym)
+ (*IR->stabsym)(p);
+ else if ((p->sclass == TYPEDEF || p->sclass == 0) && IR->stabtype)
+ (*IR->stabtype)(p);
+}
+
diff --git a/lcc/src/dagcheck.md b/lcc/src/dagcheck.md
index 5deec0d..292dbee 100755
--- a/lcc/src/dagcheck.md
+++ b/lcc/src/dagcheck.md
@@ -1,210 +1,210 @@
-%{
-#include "c.h"
-typedef Node NODEPTR_TYPE;
-#define OP_LABEL(p) (specific((p)->op))
-#define LEFT_CHILD(p) ((p)->kids[0])
-#define RIGHT_CHILD(p) ((p)->kids[1])
-#define STATE_LABEL(p) ((p)->x.state)
-#define PANIC error
-%}
-%term CNSTF=17 CNSTI=21 CNSTP=23 CNSTU=22
-%term ARGB=41 ARGF=33 ARGI=37 ARGP=39 ARGU=38
-%term ASGNB=57 ASGNF=49 ASGNI=53 ASGNP=55 ASGNU=54
-%term INDIRB=73 INDIRF=65 INDIRI=69 INDIRP=71 INDIRU=70
-%term CVFF=113 CVFI=117
-%term CVIF=129 CVII=133 CVIU=134
-%term CVPP=151 CVPU=150
-%term CVUI=181 CVUP=183 CVUU=182
-%term NEGF=193 NEGI=197
-%term CALLB=217 CALLF=209 CALLI=213 CALLP=215 CALLU=214 CALLV=216
-%term RETF=241 RETI=245 RETP=247 RETU=246 RETV=248
-%term ADDRGP=263
-%term ADDRFP=279
-%term ADDRLP=295
-%term ADDF=305 ADDI=309 ADDP=311 ADDU=310
-%term SUBF=321 SUBI=325 SUBP=327 SUBU=326
-%term LSHI=341 LSHU=342
-%term MODI=357 MODU=358
-%term RSHI=373 RSHU=374
-%term BANDI=389 BANDU=390
-%term BCOMI=405 BCOMU=406
-%term BORI=421 BORU=422
-%term BXORI=437 BXORU=438
-%term DIVF=449 DIVI=453 DIVU=454
-%term MULF=465 MULI=469 MULU=470
-%term EQF=481 EQI=485 EQU=486
-%term GEF=497 GEI=501 GEU=502
-%term GTF=513 GTI=517 GTU=518
-%term LEF=529 LEI=533 LEU=534
-%term LTF=545 LTI=549 LTU=550
-%term NEF=561 NEI=565 NEU=566
-%term JUMPV=584
-%term LABELV=600
-%%
-stmt: INDIRB(P) ""
-stmt: INDIRF(P) ""
-stmt: INDIRI(P) ""
-stmt: INDIRU(P) ""
-stmt: INDIRP(P) ""
-stmt: CALLF(P) ""
-stmt: CALLI(P) ""
-stmt: CALLU(P) ""
-stmt: CALLP(P) ""
-stmt: V ""
-bogus: I "" 1
-bogus: U "" 1
-bogus: P "" 1
-bogus: F "" 1
-bogus: B "" 1
-bogus: V "" 1
-I: bogus "" 1
-U: bogus "" 1
-P: bogus "" 1
-F: bogus "" 1
-B: bogus "" 1
-V: bogus "" 1
-F: CNSTF ""
-I: CNSTI ""
-P: CNSTP ""
-U: CNSTU ""
-V: ARGB(B) ""
-V: ARGF(F) ""
-V: ARGI(I) ""
-V: ARGU(U) ""
-V: ARGP(P) ""
-V: ASGNB(P,B) ""
-V: ASGNF(P,F) ""
-V: ASGNI(P,I) ""
-V: ASGNU(P,U) ""
-V: ASGNP(P,P) ""
-B: INDIRB(P) ""
-F: INDIRF(P) ""
-I: INDIRI(P) ""
-U: INDIRU(P) ""
-P: INDIRP(P) ""
-I: CVII(I) ""
-I: CVUI(U) ""
-I: CVFI(F) ""
-U: CVIU(I) ""
-U: CVUU(U) ""
-U: CVPU(P) ""
-F: CVIF(I) ""
-F: CVFF(F) ""
-P: CVUP(U) ""
-P: CVPP(P) ""
-F: NEGF(F) ""
-I: NEGI(I) ""
-V: CALLB(P,P) ""
-F: CALLF(P) ""
-I: CALLI(P) ""
-U: CALLU(P) ""
-P: CALLP(P) ""
-V: CALLV(P) ""
-V: RETF(F) ""
-V: RETI(I) ""
-V: RETU(U) ""
-V: RETP(P) ""
-V: RETV ""
-P: ADDRGP ""
-P: ADDRFP ""
-P: ADDRLP ""
-F: ADDF(F,F) ""
-I: ADDI(I,I) ""
-P: ADDP(P,I) ""
-P: ADDP(I,P) ""
-P: ADDP(U,P) ""
-P: ADDP(P,U) ""
-U: ADDU(U,U) ""
-F: SUBF(F,F) ""
-I: SUBI(I,I) ""
-P: SUBP(P,I) ""
-P: SUBP(P,U) ""
-U: SUBU(U,U) ""
-I: LSHI(I,I) ""
-U: LSHU(U,I) ""
-I: MODI(I,I) ""
-U: MODU(U,U) ""
-I: RSHI(I,I) ""
-U: RSHU(U,I) ""
-U: BANDU(U,U) ""
-I: BANDI(I,I) ""
-U: BCOMU(U) ""
-I: BCOMI(I) ""
-I: BORI(I,I) ""
-U: BORU(U,U) ""
-U: BXORU(U,U) ""
-I: BXORI(I,I) ""
-F: DIVF(F,F) ""
-I: DIVI(I,I) ""
-U: DIVU(U,U) ""
-F: MULF(F,F) ""
-I: MULI(I,I) ""
-U: MULU(U,U) ""
-V: EQF(F,F) ""
-V: EQI(I,I) ""
-V: EQU(U,U) ""
-V: GEF(F,F) ""
-V: GEI(I,I) ""
-V: GEU(U,U) ""
-V: GTF(F,F) ""
-V: GTI(I,I) ""
-V: GTU(U,U) ""
-V: LEF(F,F) ""
-V: LEI(I,I) ""
-V: LEU(U,U) ""
-V: LTF(F,F) ""
-V: LTI(I,I) ""
-V: LTU(U,U) ""
-V: NEF(F,F) ""
-V: NEI(I,I) ""
-V: NEU(U,U) ""
-V: JUMPV(P) ""
-V: LABELV ""
-%%
-
-static void reduce(NODEPTR_TYPE p, int goalnt) {
- int i, sz = opsize(p->op), rulenumber = _rule(p->x.state, goalnt);
- short *nts = _nts[rulenumber];
- NODEPTR_TYPE kids[10];
-
- assert(rulenumber);
- _kids(p, rulenumber, kids);
- for (i = 0; nts[i]; i++)
- reduce(kids[i], nts[i]);
- switch (optype(p->op)) {
-#define xx(ty) if (sz == ty->size) return
- case I:
- case U:
- xx(chartype);
- xx(shorttype);
- xx(inttype);
- xx(longtype);
- xx(longlong);
- break;
- case F:
- xx(floattype);
- xx(doubletype);
- xx(longdouble);
- break;
- case P:
- xx(voidptype);
- xx(funcptype);
- break;
- case V:
- case B: if (sz == 0) return;
-#undef xx
- }
- printdag(p, 2);
- assert(0);
-}
-
-void check(Node p) {
- struct _state { short cost[1]; };
-
- _label(p);
- if (((struct _state *)p->x.state)->cost[1] > 0) {
- printdag(p, 2);
- assert(0);
- }
- reduce(p, 1);
-}
+%{
+#include "c.h"
+typedef Node NODEPTR_TYPE;
+#define OP_LABEL(p) (specific((p)->op))
+#define LEFT_CHILD(p) ((p)->kids[0])
+#define RIGHT_CHILD(p) ((p)->kids[1])
+#define STATE_LABEL(p) ((p)->x.state)
+#define PANIC error
+%}
+%term CNSTF=17 CNSTI=21 CNSTP=23 CNSTU=22
+%term ARGB=41 ARGF=33 ARGI=37 ARGP=39 ARGU=38
+%term ASGNB=57 ASGNF=49 ASGNI=53 ASGNP=55 ASGNU=54
+%term INDIRB=73 INDIRF=65 INDIRI=69 INDIRP=71 INDIRU=70
+%term CVFF=113 CVFI=117
+%term CVIF=129 CVII=133 CVIU=134
+%term CVPP=151 CVPU=150
+%term CVUI=181 CVUP=183 CVUU=182
+%term NEGF=193 NEGI=197
+%term CALLB=217 CALLF=209 CALLI=213 CALLP=215 CALLU=214 CALLV=216
+%term RETF=241 RETI=245 RETP=247 RETU=246 RETV=248
+%term ADDRGP=263
+%term ADDRFP=279
+%term ADDRLP=295
+%term ADDF=305 ADDI=309 ADDP=311 ADDU=310
+%term SUBF=321 SUBI=325 SUBP=327 SUBU=326
+%term LSHI=341 LSHU=342
+%term MODI=357 MODU=358
+%term RSHI=373 RSHU=374
+%term BANDI=389 BANDU=390
+%term BCOMI=405 BCOMU=406
+%term BORI=421 BORU=422
+%term BXORI=437 BXORU=438
+%term DIVF=449 DIVI=453 DIVU=454
+%term MULF=465 MULI=469 MULU=470
+%term EQF=481 EQI=485 EQU=486
+%term GEF=497 GEI=501 GEU=502
+%term GTF=513 GTI=517 GTU=518
+%term LEF=529 LEI=533 LEU=534
+%term LTF=545 LTI=549 LTU=550
+%term NEF=561 NEI=565 NEU=566
+%term JUMPV=584
+%term LABELV=600
+%%
+stmt: INDIRB(P) ""
+stmt: INDIRF(P) ""
+stmt: INDIRI(P) ""
+stmt: INDIRU(P) ""
+stmt: INDIRP(P) ""
+stmt: CALLF(P) ""
+stmt: CALLI(P) ""
+stmt: CALLU(P) ""
+stmt: CALLP(P) ""
+stmt: V ""
+bogus: I "" 1
+bogus: U "" 1
+bogus: P "" 1
+bogus: F "" 1
+bogus: B "" 1
+bogus: V "" 1
+I: bogus "" 1
+U: bogus "" 1
+P: bogus "" 1
+F: bogus "" 1
+B: bogus "" 1
+V: bogus "" 1
+F: CNSTF ""
+I: CNSTI ""
+P: CNSTP ""
+U: CNSTU ""
+V: ARGB(B) ""
+V: ARGF(F) ""
+V: ARGI(I) ""
+V: ARGU(U) ""
+V: ARGP(P) ""
+V: ASGNB(P,B) ""
+V: ASGNF(P,F) ""
+V: ASGNI(P,I) ""
+V: ASGNU(P,U) ""
+V: ASGNP(P,P) ""
+B: INDIRB(P) ""
+F: INDIRF(P) ""
+I: INDIRI(P) ""
+U: INDIRU(P) ""
+P: INDIRP(P) ""
+I: CVII(I) ""
+I: CVUI(U) ""
+I: CVFI(F) ""
+U: CVIU(I) ""
+U: CVUU(U) ""
+U: CVPU(P) ""
+F: CVIF(I) ""
+F: CVFF(F) ""
+P: CVUP(U) ""
+P: CVPP(P) ""
+F: NEGF(F) ""
+I: NEGI(I) ""
+V: CALLB(P,P) ""
+F: CALLF(P) ""
+I: CALLI(P) ""
+U: CALLU(P) ""
+P: CALLP(P) ""
+V: CALLV(P) ""
+V: RETF(F) ""
+V: RETI(I) ""
+V: RETU(U) ""
+V: RETP(P) ""
+V: RETV ""
+P: ADDRGP ""
+P: ADDRFP ""
+P: ADDRLP ""
+F: ADDF(F,F) ""
+I: ADDI(I,I) ""
+P: ADDP(P,I) ""
+P: ADDP(I,P) ""
+P: ADDP(U,P) ""
+P: ADDP(P,U) ""
+U: ADDU(U,U) ""
+F: SUBF(F,F) ""
+I: SUBI(I,I) ""
+P: SUBP(P,I) ""
+P: SUBP(P,U) ""
+U: SUBU(U,U) ""
+I: LSHI(I,I) ""
+U: LSHU(U,I) ""
+I: MODI(I,I) ""
+U: MODU(U,U) ""
+I: RSHI(I,I) ""
+U: RSHU(U,I) ""
+U: BANDU(U,U) ""
+I: BANDI(I,I) ""
+U: BCOMU(U) ""
+I: BCOMI(I) ""
+I: BORI(I,I) ""
+U: BORU(U,U) ""
+U: BXORU(U,U) ""
+I: BXORI(I,I) ""
+F: DIVF(F,F) ""
+I: DIVI(I,I) ""
+U: DIVU(U,U) ""
+F: MULF(F,F) ""
+I: MULI(I,I) ""
+U: MULU(U,U) ""
+V: EQF(F,F) ""
+V: EQI(I,I) ""
+V: EQU(U,U) ""
+V: GEF(F,F) ""
+V: GEI(I,I) ""
+V: GEU(U,U) ""
+V: GTF(F,F) ""
+V: GTI(I,I) ""
+V: GTU(U,U) ""
+V: LEF(F,F) ""
+V: LEI(I,I) ""
+V: LEU(U,U) ""
+V: LTF(F,F) ""
+V: LTI(I,I) ""
+V: LTU(U,U) ""
+V: NEF(F,F) ""
+V: NEI(I,I) ""
+V: NEU(U,U) ""
+V: JUMPV(P) ""
+V: LABELV ""
+%%
+
+static void reduce(NODEPTR_TYPE p, int goalnt) {
+ int i, sz = opsize(p->op), rulenumber = _rule(p->x.state, goalnt);
+ short *nts = _nts[rulenumber];
+ NODEPTR_TYPE kids[10];
+
+ assert(rulenumber);
+ _kids(p, rulenumber, kids);
+ for (i = 0; nts[i]; i++)
+ reduce(kids[i], nts[i]);
+ switch (optype(p->op)) {
+#define xx(ty) if (sz == ty->size) return
+ case I:
+ case U:
+ xx(chartype);
+ xx(shorttype);
+ xx(inttype);
+ xx(longtype);
+ xx(longlong);
+ break;
+ case F:
+ xx(floattype);
+ xx(doubletype);
+ xx(longdouble);
+ break;
+ case P:
+ xx(voidptype);
+ xx(funcptype);
+ break;
+ case V:
+ case B: if (sz == 0) return;
+#undef xx
+ }
+ printdag(p, 2);
+ assert(0);
+}
+
+void check(Node p) {
+ struct _state { short cost[1]; };
+
+ _label(p);
+ if (((struct _state *)p->x.state)->cost[1] > 0) {
+ printdag(p, 2);
+ assert(0);
+ }
+ reduce(p, 1);
+}
diff --git a/lcc/src/decl.c b/lcc/src/decl.c
index 59e0850..fc1d6bc 100755
--- a/lcc/src/decl.c
+++ b/lcc/src/decl.c
@@ -1,1160 +1,1160 @@
-#include "c.h"
-
-
-#define add(x,n) (x > inttype->u.sym->u.limits.max.i-(n) ? (overflow=1,x) : x+(n))
-#define chkoverflow(x,n) ((void)add(x,n))
-#define bits2bytes(n) (((n) + 7)/8)
-static int regcount;
-
-static List autos, registers;
-Symbol cfunc; /* current function */
-Symbol retv; /* return value location for structs */
-
-static void checkref(Symbol, void *);
-static Symbol dclglobal(int, char *, Type, Coordinate *);
-static Symbol dcllocal(int, char *, Type, Coordinate *);
-static Symbol dclparam(int, char *, Type, Coordinate *);
-static Type dclr(Type, char **, Symbol **, int);
-static Type dclr1(char **, Symbol **, int);
-static void decl(Symbol (*)(int, char *, Type, Coordinate *));
-extern void doconst(Symbol, void *);
-static void doglobal(Symbol, void *);
-static void doextern(Symbol, void *);
-static void exitparams(Symbol []);
-static void fields(Type);
-static void funcdefn(int, char *, Type, Symbol [], Coordinate);
-static void initglobal(Symbol, int);
-static void oldparam(Symbol, void *);
-static Symbol *parameters(Type);
-static Type specifier(int *);
-static Type structdcl(int);
-static Type tnode(int, Type);
-void program(void) {
- int n;
-
- level = GLOBAL;
- for (n = 0; t != EOI; n++)
- if (kind[t] == CHAR || kind[t] == STATIC
- || t == ID || t == '*' || t == '(') {
- decl(dclglobal);
- deallocate(STMT);
- if (!(glevel >= 3 || xref))
- deallocate(FUNC);
- } else if (t == ';') {
- warning("empty declaration\n");
- t = gettok();
- } else {
- error("unrecognized declaration\n");
- t = gettok();
- }
- if (n == 0)
- warning("empty input file\n");
-}
-static Type specifier(int *sclass) {
- int cls, cons, sign, size, type, vol;
- Type ty = NULL;
-
- cls = vol = cons = sign = size = type = 0;
- if (sclass == NULL)
- cls = AUTO;
- for (;;) {
- int *p, tt = t;
- switch (t) {
- case AUTO:
- case REGISTER: if (level <= GLOBAL && cls == 0)
- error("invalid use of `%k'\n", t);
- p = &cls; t = gettok(); break;
- case STATIC: case EXTERN:
- case TYPEDEF: p = &cls; t = gettok(); break;
- case CONST: p = &cons; t = gettok(); break;
- case VOLATILE: p = &vol; t = gettok(); break;
- case SIGNED:
- case UNSIGNED: p = &sign; t = gettok(); break;
- case LONG: if (size == LONG) {
- size = 0;
- tt = LONG+LONG;
- }
- p = &size; t = gettok(); break;
- case SHORT: p = &size; t = gettok(); break;
- case VOID: case CHAR: case INT: case FLOAT:
- case DOUBLE: p = &type; ty = tsym->type;
- t = gettok(); break;
- case ENUM: p = &type; ty = enumdcl(); break;
- case STRUCT:
- case UNION: p = &type; ty = structdcl(t); break;
- case ID:
- if (istypename(t, tsym) && type == 0
- && sign == 0 && size == 0) {
- use(tsym, src);
- ty = tsym->type;
- if (isqual(ty)
- && ty->size != ty->type->size) {
- ty = unqual(ty);
- if (isconst(tsym->type))
- ty = qual(CONST, ty);
- if (isvolatile(tsym->type))
- ty = qual(VOLATILE, ty);
- tsym->type = ty;
- }
- p = &type;
- t = gettok();
- } else
- p = NULL;
- break;
- default: p = NULL;
- }
- if (p == NULL)
- break;
- if (*p)
- error("invalid use of `%k'\n", tt);
- *p = tt;
- }
- if (sclass)
- *sclass = cls;
- if (type == 0) {
- type = INT;
- ty = inttype;
- }
- if (size == SHORT && type != INT
- || size == LONG+LONG && type != INT
- || size == LONG && type != INT && type != DOUBLE
- || sign && type != INT && type != CHAR)
- error("invalid type specification\n");
- if (type == CHAR && sign)
- ty = sign == UNSIGNED ? unsignedchar : signedchar;
- else if (size == SHORT)
- ty = sign == UNSIGNED ? unsignedshort : shorttype;
- else if (size == LONG && type == DOUBLE)
- ty = longdouble;
- else if (size == LONG+LONG) {
- ty = sign == UNSIGNED ? unsignedlonglong : longlong;
- if (Aflag >= 1)
- warning("`%t' is a non-ANSI type\n", ty);
- } else if (size == LONG)
- ty = sign == UNSIGNED ? unsignedlong : longtype;
- else if (sign == UNSIGNED && type == INT)
- ty = unsignedtype;
- if (cons == CONST)
- ty = qual(CONST, ty);
- if (vol == VOLATILE)
- ty = qual(VOLATILE, ty);
- return ty;
-}
-static void decl(Symbol (*dcl)(int, char *, Type, Coordinate *)) {
- int sclass;
- Type ty, ty1;
- static char stop[] = { CHAR, STATIC, ID, 0 };
-
- ty = specifier(&sclass);
- if (t == ID || t == '*' || t == '(' || t == '[') {
- char *id;
- Coordinate pos;
- id = NULL;
- pos = src;
- if (level == GLOBAL) {
- Symbol *params = NULL;
- ty1 = dclr(ty, &id, &params, 0);
- if (params && id && isfunc(ty1)
- && (t == '{' || istypename(t, tsym)
- || (kind[t] == STATIC && t != TYPEDEF))) {
- if (sclass == TYPEDEF) {
- error("invalid use of `typedef'\n");
- sclass = EXTERN;
- }
- if (ty1->u.f.oldstyle)
- exitscope();
- funcdefn(sclass, id, ty1, params, pos);
- return;
- } else if (params)
- exitparams(params);
- } else
- ty1 = dclr(ty, &id, NULL, 0);
- for (;;) {
- if (Aflag >= 1 && !hasproto(ty1))
- warning("missing prototype\n");
- if (id == NULL)
- error("missing identifier\n");
- else if (sclass == TYPEDEF)
- {
- Symbol p = lookup(id, identifiers);
- if (p && p->scope == level)
- error("redeclaration of `%s'\n", id);
- p = install(id, &identifiers, level,
- level < LOCAL ? PERM : FUNC);
- p->type = ty1;
- p->sclass = TYPEDEF;
- p->src = pos;
- }
- else
- (void)(*dcl)(sclass, id, ty1, &pos);
- if (t != ',')
- break;
- t = gettok();
- id = NULL;
- pos = src;
- ty1 = dclr(ty, &id, NULL, 0);
- }
- } else if (ty == NULL
- || !(isenum(ty) ||
- isstruct(ty) && (*unqual(ty)->u.sym->name < '1' || *unqual(ty)->u.sym->name > '9')))
- error("empty declaration\n");
- test(';', stop);
-}
-static Symbol dclglobal(int sclass, char *id, Type ty, Coordinate *pos) {
- Symbol p;
-
- if (sclass == 0)
- sclass = AUTO;
- else if (sclass != EXTERN && sclass != STATIC) {
- error("invalid storage class `%k' for `%t %s'\n",
- sclass, ty, id);
- sclass = AUTO;
- }
- p = lookup(id, identifiers);
- if (p && p->scope == GLOBAL) {
- if (p->sclass != TYPEDEF && eqtype(ty, p->type, 1))
- ty = compose(ty, p->type);
- else
- error("redeclaration of `%s' previously declared at %w\n", p->name, &p->src);
-
- if (!isfunc(ty) && p->defined && t == '=')
- error("redefinition of `%s' previously defined at %w\n", p->name, &p->src);
-
- if (p->sclass == EXTERN && sclass == STATIC
- || p->sclass == STATIC && sclass == AUTO
- || p->sclass == AUTO && sclass == STATIC)
- warning("inconsistent linkage for `%s' previously declared at %w\n", p->name, &p->src);
-
- }
- if (p == NULL || p->scope != GLOBAL) {
- Symbol q = lookup(id, externals);
- if (q) {
- if (sclass == STATIC || !eqtype(ty, q->type, 1))
- warning("declaration of `%s' does not match previous declaration at %w\n", id, &q->src);
-
- p = relocate(id, externals, globals);
- p->sclass = sclass;
- } else {
- p = install(id, &globals, GLOBAL, PERM);
- p->sclass = sclass;
- (*IR->defsymbol)(p);
- }
- if (p->sclass != STATIC) {
- static int nglobals;
- nglobals++;
- if (Aflag >= 2 && nglobals == 512)
- warning("more than 511 external identifiers\n");
- }
- } else if (p->sclass == EXTERN)
- p->sclass = sclass;
- p->type = ty;
- p->src = *pos;
- if (t == '=' && isfunc(p->type)) {
- error("illegal initialization for `%s'\n", p->name);
- t = gettok();
- initializer(p->type, 0);
- } else if (t == '=') {
- initglobal(p, 0);
- if (glevel > 0 && IR->stabsym) {
- (*IR->stabsym)(p); swtoseg(p->u.seg); }
- } else if (p->sclass == STATIC && !isfunc(p->type)
- && p->type->size == 0)
- error("undefined size for `%t %s'\n", p->type, p->name);
- return p;
-}
-static void initglobal(Symbol p, int flag) {
- Type ty;
-
- if (t == '=' || flag) {
- if (p->sclass == STATIC) {
- for (ty = p->type; isarray(ty); ty = ty->type)
- ;
- defglobal(p, isconst(ty) ? LIT : DATA);
- } else
- defglobal(p, DATA);
- if (t == '=')
- t = gettok();
- ty = initializer(p->type, 0);
- if (isarray(p->type) && p->type->size == 0)
- p->type = ty;
- if (p->sclass == EXTERN)
- p->sclass = AUTO;
- }
-}
-void defglobal(Symbol p, int seg) {
- p->u.seg = seg;
- swtoseg(p->u.seg);
- if (p->sclass != STATIC)
- (*IR->export)(p);
- (*IR->global)(p);
- p->defined = 1;
-}
-
-static Type dclr(Type basety, char **id, Symbol **params, int abstract) {
- Type ty = dclr1(id, params, abstract);
-
- for ( ; ty; ty = ty->type)
- switch (ty->op) {
- case POINTER:
- basety = ptr(basety);
- break;
- case FUNCTION:
- basety = func(basety, ty->u.f.proto,
- ty->u.f.oldstyle);
- break;
- case ARRAY:
- basety = array(basety, ty->size, 0);
- break;
- case CONST: case VOLATILE:
- basety = qual(ty->op, basety);
- break;
- default: assert(0);
- }
- if (Aflag >= 2 && basety->size > 32767)
- warning("more than 32767 bytes in `%t'\n", basety);
- return basety;
-}
-static Type tnode(int op, Type type) {
- Type ty;
-
- NEW0(ty, STMT);
- ty->op = op;
- ty->type = type;
- return ty;
-}
-static Type dclr1(char **id, Symbol **params, int abstract) {
- Type ty = NULL;
-
- switch (t) {
- case ID: if (id)
- *id = token;
- else
- error("extraneous identifier `%s'\n", token);
- t = gettok(); break;
- case '*': t = gettok(); if (t == CONST || t == VOLATILE) {
- Type ty1;
- ty1 = ty = tnode(t, NULL);
- while ((t = gettok()) == CONST || t == VOLATILE)
- ty1 = tnode(t, ty1);
- ty->type = dclr1(id, params, abstract);
- ty = ty1;
- } else
- ty = dclr1(id, params, abstract);
- ty = tnode(POINTER, ty); break;
- case '(': t = gettok(); if (abstract
- && (t == REGISTER || istypename(t, tsym) || t == ')')) {
- Symbol *args;
- ty = tnode(FUNCTION, ty);
- enterscope();
- if (level > PARAM)
- enterscope();
- args = parameters(ty);
- exitparams(args);
- } else {
- ty = dclr1(id, params, abstract);
- expect(')');
- if (abstract && ty == NULL
- && (id == NULL || *id == NULL))
- return tnode(FUNCTION, NULL);
- } break;
- case '[': break;
- default: return ty;
- }
- while (t == '(' || t == '[')
- switch (t) {
- case '(': t = gettok(); { Symbol *args;
- ty = tnode(FUNCTION, ty);
- enterscope();
- if (level > PARAM)
- enterscope();
- args = parameters(ty);
- if (params && *params == NULL)
- *params = args;
- else
- exitparams(args);
- }
- break;
- case '[': t = gettok(); { int n = 0;
- if (kind[t] == ID) {
- n = intexpr(']', 1);
- if (n <= 0) {
- error("`%d' is an illegal array size\n", n);
- n = 1;
- }
- } else
- expect(']');
- ty = tnode(ARRAY, ty);
- ty->size = n; } break;
- default: assert(0);
- }
- return ty;
-}
-static Symbol *parameters(Type fty) {
- List list = NULL;
- Symbol *params;
-
- if (kind[t] == STATIC || istypename(t, tsym)) {
- int n = 0;
- Type ty1 = NULL;
- for (;;) {
- Type ty;
- int sclass = 0;
- char *id = NULL;
- if (ty1 && t == ELLIPSIS) {
- static struct symbol sentinel;
- if (sentinel.type == NULL) {
- sentinel.type = voidtype;
- sentinel.defined = 1;
- }
- if (ty1 == voidtype)
- error("illegal formal parameter types\n");
- list = append(&sentinel, list);
- t = gettok();
- break;
- }
- if (!istypename(t, tsym) && t != REGISTER)
- error("missing parameter type\n");
- n++;
- ty = dclr(specifier(&sclass), &id, NULL, 1);
- if ( ty == voidtype && (ty1 || id)
- || ty1 == voidtype)
- error("illegal formal parameter types\n");
- if (id == NULL)
- id = stringd(n);
- if (ty != voidtype)
- list = append(dclparam(sclass, id, ty, &src), list);
- if (Aflag >= 1 && !hasproto(ty))
- warning("missing prototype\n");
- if (ty1 == NULL)
- ty1 = ty;
- if (t != ',')
- break;
- t = gettok();
- }
- fty->u.f.proto = newarray(length(list) + 1,
- sizeof (Type *), PERM);
- params = ltov(&list, FUNC);
- for (n = 0; params[n]; n++)
- fty->u.f.proto[n] = params[n]->type;
- fty->u.f.proto[n] = NULL;
- fty->u.f.oldstyle = 0;
- } else {
- if (t == ID)
- for (;;) {
- Symbol p;
- if (t != ID) {
- error("expecting an identifier\n");
- break;
- }
- p = dclparam(0, token, inttype, &src);
- p->defined = 0;
- list = append(p, list);
- t = gettok();
- if (t != ',')
- break;
- t = gettok();
- }
- params = ltov(&list, FUNC);
- fty->u.f.proto = NULL;
- fty->u.f.oldstyle = 1;
- }
- if (t != ')') {
- static char stop[] = { CHAR, STATIC, IF, ')', 0 };
- expect(')');
- skipto('{', stop);
- }
- if (t == ')')
- t = gettok();
- return params;
-}
-static void exitparams(Symbol params[]) {
- assert(params);
- if (params[0] && !params[0]->defined)
- error("extraneous old-style parameter list\n");
- if (level > PARAM)
- exitscope();
- exitscope();
-}
-
-static Symbol dclparam(int sclass, char *id, Type ty, Coordinate *pos) {
- Symbol p;
-
- if (isfunc(ty))
- ty = ptr(ty);
- else if (isarray(ty))
- ty = atop(ty);
- if (sclass == 0)
- sclass = AUTO;
- else if (sclass != REGISTER) {
- error("invalid storage class `%k' for `%t%s\n",
- sclass, ty, stringf(id ? " %s'" : "' parameter", id));
- sclass = AUTO;
- } else if (isvolatile(ty) || isstruct(ty)) {
- warning("register declaration ignored for `%t%s\n",
- ty, stringf(id ? " %s'" : "' parameter", id));
- sclass = AUTO;
- }
-
- p = lookup(id, identifiers);
- if (p && p->scope == level)
- error("duplicate declaration for `%s' previously declared at %w\n", id, &p->src);
-
- else
- p = install(id, &identifiers, level, FUNC);
- p->sclass = sclass;
- p->src = *pos;
- p->type = ty;
- p->defined = 1;
- if (t == '=') {
- error("illegal initialization for parameter `%s'\n", id);
- t = gettok();
- (void)expr1(0);
- }
- return p;
-}
-static Type structdcl(int op) {
- char *tag;
- Type ty;
- Symbol p;
- Coordinate pos;
-
- t = gettok();
- pos = src;
- if (t == ID) {
- tag = token;
- t = gettok();
- } else
- tag = "";
- if (t == '{') {
- static char stop[] = { IF, ',', 0 };
- ty = newstruct(op, tag);
- ty->u.sym->src = pos;
- ty->u.sym->defined = 1;
- t = gettok();
- if (istypename(t, tsym))
- fields(ty);
- else
- error("invalid %k field declarations\n", op);
- test('}', stop);
- }
- else if (*tag && (p = lookup(tag, types)) != NULL
- && p->type->op == op) {
- ty = p->type;
- if (t == ';' && p->scope < level)
- ty = newstruct(op, tag);
- }
- else {
- if (*tag == 0)
- error("missing %k tag\n", op);
- ty = newstruct(op, tag);
- }
- if (*tag && xref)
- use(ty->u.sym, pos);
- return ty;
-}
-static void fields(Type ty) {
- { int n = 0;
- while (istypename(t, tsym)) {
- static char stop[] = { IF, CHAR, '}', 0 };
- Type ty1 = specifier(NULL);
- for (;;) {
- Field p;
- char *id = NULL;
- Type fty = dclr(ty1, &id, NULL, 0);
- p = newfield(id, ty, fty);
- if (Aflag >= 1 && !hasproto(p->type))
- warning("missing prototype\n");
- if (t == ':') {
- if (unqual(p->type) != inttype
- && unqual(p->type) != unsignedtype) {
- error("`%t' is an illegal bit-field type\n",
- p->type);
- p->type = inttype;
- }
- t = gettok();
- p->bitsize = intexpr(0, 0);
- if (p->bitsize > 8*inttype->size || p->bitsize < 0) {
- error("`%d' is an illegal bit-field size\n",
- p->bitsize);
- p->bitsize = 8*inttype->size;
- } else if (p->bitsize == 0 && id) {
- warning("extraneous 0-width bit field `%t %s' ignored\n", p->type, id);
-
- p->name = stringd(genlabel(1));
- }
- p->lsb = 1;
- }
- else {
- if (id == NULL)
- error("field name missing\n");
- else if (isfunc(p->type))
- error("`%t' is an illegal field type\n", p->type);
- else if (p->type->size == 0)
- error("undefined size for field `%t %s'\n",
- p->type, id);
- }
- if (isconst(p->type))
- ty->u.sym->u.s.cfields = 1;
- if (isvolatile(p->type))
- ty->u.sym->u.s.vfields = 1;
- n++;
- if (Aflag >= 2 && n == 128)
- warning("more than 127 fields in `%t'\n", ty);
- if (t != ',')
- break;
- t = gettok();
- }
- test(';', stop);
- } }
- { int bits = 0, off = 0, overflow = 0;
- Field p, *q = &ty->u.sym->u.s.flist;
- ty->align = IR->structmetric.align;
- for (p = *q; p; p = p->link) {
- int a = p->type->align ? p->type->align : 1;
- if (p->lsb)
- a = unsignedtype->align;
- if (ty->op == UNION)
- off = bits = 0;
- else if (p->bitsize == 0 || bits == 0
- || bits - 1 + p->bitsize > 8*unsignedtype->size) {
- off = add(off, bits2bytes(bits-1));
- bits = 0;
- chkoverflow(off, a - 1);
- off = roundup(off, a);
- }
- if (a > ty->align)
- ty->align = a;
- p->offset = off;
-
- if (p->lsb) {
- if (bits == 0)
- bits = 1;
- if (IR->little_endian)
- p->lsb = bits;
- else
- p->lsb = 8*unsignedtype->size - bits + 1
- - p->bitsize + 1;
- bits += p->bitsize;
- } else
- off = add(off, p->type->size);
- if (off + bits2bytes(bits-1) > ty->size)
- ty->size = off + bits2bytes(bits-1);
- if (p->name == NULL
- || !('1' <= *p->name && *p->name <= '9')) {
- *q = p;
- q = &p->link;
- }
- }
- *q = NULL;
- chkoverflow(ty->size, ty->align - 1);
- ty->size = roundup(ty->size, ty->align);
- if (overflow) {
- error("size of `%t' exceeds %d bytes\n", ty, inttype->u.sym->u.limits.max.i);
- ty->size = inttype->u.sym->u.limits.max.i&(~(ty->align - 1));
- } }
-}
-static void funcdefn(int sclass, char *id, Type ty, Symbol params[], Coordinate pt) {
- int i, n;
- Symbol *callee, *caller, p;
- Type rty = freturn(ty);
-
- if (isstruct(rty) && rty->size == 0)
- error("illegal use of incomplete type `%t'\n", rty);
- for (n = 0; params[n]; n++)
- ;
- if (n > 0 && params[n-1]->name == NULL)
- params[--n] = NULL;
- if (Aflag >= 2 && n > 31)
- warning("more than 31 parameters in function `%s'\n", id);
- if (ty->u.f.oldstyle) {
- if (Aflag >= 1)
- warning("old-style function definition for `%s'\n", id);
- caller = params;
- callee = newarray(n + 1, sizeof *callee, FUNC);
- memcpy(callee, caller, (n+1)*sizeof *callee);
- enterscope();
- assert(level == PARAM);
- while (kind[t] == STATIC || istypename(t, tsym))
- decl(dclparam);
- foreach(identifiers, PARAM, oldparam, callee);
-
- for (i = 0; (p = callee[i]) != NULL; i++) {
- if (!p->defined)
- callee[i] = dclparam(0, p->name, inttype, &p->src);
- *caller[i] = *p;
- caller[i]->sclass = AUTO;
- caller[i]->type = promote(p->type);
- }
- p = lookup(id, identifiers);
- if (p && p->scope == GLOBAL && isfunc(p->type)
- && p->type->u.f.proto) {
- Type *proto = p->type->u.f.proto;
- for (i = 0; caller[i] && proto[i]; i++) {
- Type ty = unqual(proto[i]);
- if (eqtype(isenum(ty) ? ty->type : ty,
- unqual(caller[i]->type), 1) == 0)
- break;
- else if (isenum(ty) && !isenum(unqual(caller[i]->type)))
- warning("compatibility of `%t' and `%t' is compiler dependent\n",
- proto[i], caller[i]->type);
- }
- if (proto[i] || caller[i])
- error("conflicting argument declarations for function `%s'\n", id);
-
- }
- else {
- Type *proto = newarray(n + 1, sizeof *proto, PERM);
- if (Aflag >= 1)
- warning("missing prototype for `%s'\n", id);
- for (i = 0; i < n; i++)
- proto[i] = caller[i]->type;
- proto[i] = NULL;
- ty = func(rty, proto, 1);
- }
- } else {
- callee = params;
- caller = newarray(n + 1, sizeof *caller, FUNC);
- for (i = 0; (p = callee[i]) != NULL && p->name; i++) {
- NEW(caller[i], FUNC);
- *caller[i] = *p;
- if (isint(p->type))
- caller[i]->type = promote(p->type);
- caller[i]->sclass = AUTO;
- if ('1' <= *p->name && *p->name <= '9')
- error("missing name for parameter %d to function `%s'\n", i + 1, id);
-
- }
- caller[i] = NULL;
- }
- for (i = 0; (p = callee[i]) != NULL; i++)
- if (p->type->size == 0) {
- error("undefined size for parameter `%t %s'\n",
- p->type, p->name);
- caller[i]->type = p->type = inttype;
- }
- if (Aflag >= 2 && sclass != STATIC && strcmp(id, "main") == 0) {
- if (ty->u.f.oldstyle)
- warning("`%t %s()' is a non-ANSI definition\n", rty, id);
- else if (!(rty == inttype
- && (n == 0 && callee[0] == NULL
- || n == 2 && callee[0]->type == inttype
- && isptr(callee[1]->type) && callee[1]->type->type == charptype
- && !variadic(ty))))
- warning("`%s' is a non-ANSI definition\n", typestring(ty, id));
- }
- p = lookup(id, identifiers);
- if (p && isfunc(p->type) && p->defined)
- error("redefinition of `%s' previously defined at %w\n",
- p->name, &p->src);
- cfunc = dclglobal(sclass, id, ty, &pt);
- cfunc->u.f.label = genlabel(1);
- cfunc->u.f.callee = callee;
- cfunc->u.f.pt = src;
- cfunc->defined = 1;
- if (xref)
- use(cfunc, cfunc->src);
- if (Pflag)
- printproto(cfunc, cfunc->u.f.callee);
- if (ncalled >= 0)
- ncalled = findfunc(cfunc->name, pt.file);
- labels = table(NULL, LABELS);
- stmtlabs = table(NULL, LABELS);
- refinc = 1.0;
- regcount = 0;
- codelist = &codehead;
- codelist->next = NULL;
- if (!IR->wants_callb && isstruct(rty))
- retv = genident(AUTO, ptr(rty), PARAM);
- compound(0, NULL, 0);
-
- {
- Code cp;
- for (cp = codelist; cp->kind < Label; cp = cp->prev)
- ;
- if (cp->kind != Jump) {
- if (rty != voidtype) {
- warning("missing return value\n");
- retcode(cnsttree(inttype, 0L));
- } else
- retcode(NULL);
- }
- }
- definelab(cfunc->u.f.label);
- if (events.exit)
- apply(events.exit, cfunc, NULL);
- walk(NULL, 0, 0);
- exitscope();
- assert(level == PARAM);
- foreach(identifiers, level, checkref, NULL);
- if (!IR->wants_callb && isstruct(rty)) {
- Symbol *a;
- a = newarray(n + 2, sizeof *a, FUNC);
- a[0] = retv;
- memcpy(&a[1], callee, (n+1)*sizeof *callee);
- callee = a;
- a = newarray(n + 2, sizeof *a, FUNC);
- NEW(a[0], FUNC);
- *a[0] = *retv;
- memcpy(&a[1], caller, (n+1)*sizeof *callee);
- caller = a;
- }
- if (!IR->wants_argb)
- for (i = 0; caller[i]; i++)
- if (isstruct(caller[i]->type)) {
- caller[i]->type = ptr(caller[i]->type);
- callee[i]->type = ptr(callee[i]->type);
- caller[i]->structarg = callee[i]->structarg = 1;
- }
- if (glevel > 1) for (i = 0; callee[i]; i++) callee[i]->sclass = AUTO;
- if (cfunc->sclass != STATIC)
- (*IR->export)(cfunc);
- if (glevel && IR->stabsym) {
- swtoseg(CODE); (*IR->stabsym)(cfunc); }
- swtoseg(CODE);
- (*IR->function)(cfunc, caller, callee, cfunc->u.f.ncalls);
- if (glevel && IR->stabfend)
- (*IR->stabfend)(cfunc, lineno);
- foreach(stmtlabs, LABELS, checklab, NULL);
- exitscope();
- expect('}');
- labels = stmtlabs = NULL;
- retv = NULL;
- cfunc = NULL;
-}
-static void oldparam(Symbol p, void *cl) {
- int i;
- Symbol *callee = cl;
-
- for (i = 0; callee[i]; i++)
- if (p->name == callee[i]->name) {
- callee[i] = p;
- return;
- }
- error("declared parameter `%s' is missing\n", p->name);
-}
-void compound(int loop, struct swtch *swp, int lev) {
- Code cp;
- int nregs;
-
- walk(NULL, 0, 0);
- cp = code(Blockbeg);
- enterscope();
- assert(level >= LOCAL);
- if (level == LOCAL && events.entry)
- apply(events.entry, cfunc, NULL);
- definept(NULL);
- expect('{');
- autos = registers = NULL;
- if (level == LOCAL && IR->wants_callb
- && isstruct(freturn(cfunc->type))) {
- retv = genident(AUTO, ptr(freturn(cfunc->type)), level);
- retv->defined = 1;
- retv->ref = 1;
- registers = append(retv, registers);
- }
- while (kind[t] == CHAR || kind[t] == STATIC
- || istypename(t, tsym) && getchr() != ':')
- decl(dcllocal);
- {
- int i;
- Symbol *a = ltov(&autos, STMT);
- nregs = length(registers);
- for (i = 0; a[i]; i++)
- registers = append(a[i], registers);
- cp->u.block.locals = ltov(&registers, FUNC);
- }
- if (events.blockentry)
- apply(events.blockentry, cp->u.block.locals, NULL);
- while (kind[t] == IF || kind[t] == ID)
- statement(loop, swp, lev);
- walk(NULL, 0, 0);
- foreach(identifiers, level, checkref, NULL);
- {
- int i = nregs, j;
- Symbol p;
- for ( ; (p = cp->u.block.locals[i]) != NULL; i++) {
- for (j = i; j > nregs
- && cp->u.block.locals[j-1]->ref < p->ref; j--)
- cp->u.block.locals[j] = cp->u.block.locals[j-1];
- cp->u.block.locals[j] = p;
- }
- }
- if (events.blockexit)
- apply(events.blockexit, cp->u.block.locals, NULL);
- cp->u.block.level = level;
- cp->u.block.identifiers = identifiers;
- cp->u.block.types = types;
- code(Blockend)->u.begin = cp;
- if (reachable(Gen))
- definept(NULL);
- if (level > LOCAL) {
- exitscope();
- expect('}');
- }
-}
-static void checkref(Symbol p, void *cl) {
- if (p->scope >= PARAM
- && (isvolatile(p->type) || isfunc(p->type)))
- p->addressed = 1;
- if (Aflag >= 2 && p->defined && p->ref == 0) {
- if (p->sclass == STATIC)
- warning("static `%t %s' is not referenced\n",
- p->type, p->name);
- else if (p->scope == PARAM)
- warning("parameter `%t %s' is not referenced\n",
- p->type, p->name);
- else if (p->scope >= LOCAL && p->sclass != EXTERN)
- warning("local `%t %s' is not referenced\n",
- p->type, p->name);
- }
- if (p->sclass == AUTO
- && (p->scope == PARAM && regcount == 0
- || p->scope >= LOCAL)
- && !p->addressed && isscalar(p->type) && p->ref >= 3.0)
- p->sclass = REGISTER;
- if (level == GLOBAL && p->sclass == STATIC && !p->defined
- && isfunc(p->type) && p->ref)
- error("undefined static `%t %s'\n", p->type, p->name);
- assert(!(level == GLOBAL && p->sclass == STATIC && !p->defined && !isfunc(p->type)));
-}
-static Symbol dcllocal(int sclass, char *id, Type ty, Coordinate *pos) {
- Symbol p, q;
-
- if (sclass == 0)
- sclass = isfunc(ty) ? EXTERN : AUTO;
- else if (isfunc(ty) && sclass != EXTERN) {
- error("invalid storage class `%k' for `%t %s'\n",
- sclass, ty, id);
- sclass = EXTERN;
- } else if (sclass == REGISTER
- && (isvolatile(ty) || isstruct(ty) || isarray(ty))) {
- warning("register declaration ignored for `%t %s'\n",
- ty, id);
- sclass = AUTO;
- }
- q = lookup(id, identifiers);
- if (q && q->scope >= level
- || q && q->scope == PARAM && level == LOCAL)
- if (sclass == EXTERN && q->sclass == EXTERN
- && eqtype(q->type, ty, 1))
- ty = compose(ty, q->type);
- else
- error("redeclaration of `%s' previously declared at %w\n", q->name, &q->src);
-
- assert(level >= LOCAL);
- p = install(id, &identifiers, level, sclass == STATIC || sclass == EXTERN ? PERM : FUNC);
- p->type = ty;
- p->sclass = sclass;
- p->src = *pos;
- switch (sclass) {
- case EXTERN: q = lookup(id, globals);
- if (q == NULL || q->sclass == TYPEDEF || q->sclass == ENUM) {
- q = lookup(id, externals);
- if (q == NULL) {
- q = install(p->name, &externals, GLOBAL, PERM);
- q->type = p->type;
- q->sclass = EXTERN;
- q->src = src;
- (*IR->defsymbol)(q);
- }
- }
- if (!eqtype(p->type, q->type, 1))
- warning("declaration of `%s' does not match previous declaration at %w\n", q->name, &q->src);
-
- p->u.alias = q; break;
- case STATIC: (*IR->defsymbol)(p);
- initglobal(p, 0);
- if (!p->defined)
- if (p->type->size > 0) {
- defglobal(p, BSS);
- (*IR->space)(p->type->size);
- } else
- error("undefined size for `%t %s'\n",
- p->type, p->name);
- p->defined = 1; break;
- case REGISTER: registers = append(p, registers);
- regcount++;
- p->defined = 1;
- break;
- case AUTO: autos = append(p, autos);
- p->defined = 1; break;
- default: assert(0);
- }
- if (t == '=') {
- Tree e;
- if (sclass == EXTERN)
- error("illegal initialization of `extern %s'\n", id);
- t = gettok();
- definept(NULL);
- if (isscalar(p->type)
- || isstruct(p->type) && t != '{') {
- if (t == '{') {
- t = gettok();
- e = expr1(0);
- expect('}');
- } else
- e = expr1(0);
- } else {
- Symbol t1;
- Type ty = p->type, ty1 = ty;
- while (isarray(ty1))
- ty1 = ty1->type;
- if (!isconst(ty) && (!isarray(ty) || !isconst(ty1)))
- ty = qual(CONST, ty);
- t1 = genident(STATIC, ty, GLOBAL);
- initglobal(t1, 1);
- if (isarray(p->type) && p->type->size == 0
- && t1->type->size > 0)
- p->type = array(p->type->type,
- t1->type->size/t1->type->type->size, 0);
- e = idtree(t1);
- }
- walk(root(asgn(p, e)), 0, 0);
- p->ref = 1;
- }
- if (!isfunc(p->type) && p->defined && p->type->size <= 0)
- error("undefined size for `%t %s'\n", p->type, id);
- return p;
-}
-void finalize(void) {
- foreach(externals, GLOBAL, doextern, NULL);
- foreach(identifiers, GLOBAL, doglobal, NULL);
- foreach(identifiers, GLOBAL, checkref, NULL);
- foreach(constants, CONSTANTS, doconst, NULL);
-}
-static void doextern(Symbol p, void *cl) {
- (*IR->import)(p);
-}
-static void doglobal(Symbol p, void *cl) {
- if (!p->defined && (p->sclass == EXTERN
- || isfunc(p->type) && p->sclass == AUTO))
- (*IR->import)(p);
- else if (!p->defined && !isfunc(p->type)
- && (p->sclass == AUTO || p->sclass == STATIC)) {
- if (isarray(p->type)
- && p->type->size == 0 && p->type->type->size > 0)
- p->type = array(p->type->type, 1, 0);
- if (p->type->size > 0) {
- defglobal(p, BSS);
- (*IR->space)(p->type->size);
- if (glevel > 0 && IR->stabsym)
- (*IR->stabsym)(p);
- } else
- error("undefined size for `%t %s'\n",
- p->type, p->name);
- p->defined = 1;
- }
- if (Pflag
- && !isfunc(p->type)
- && !p->generated && p->sclass != EXTERN)
- printdecl(p, p->type);
-}
-void doconst(Symbol p, void *cl) {
- if (p->u.c.loc) {
- assert(p->u.c.loc->u.seg == 0);
- defglobal(p->u.c.loc, LIT);
- if (isarray(p->type) && p->type->type == widechar) {
- unsigned int *s = p->u.c.v.p;
- int n = p->type->size/widechar->size;
- while (n-- > 0) {
- Value v;
- v.u = *s++;
- (*IR->defconst)(widechar->op, widechar->size, v);
- }
- } else if (isarray(p->type))
- (*IR->defstring)(p->type->size, p->u.c.v.p);
- else
- (*IR->defconst)(p->type->op, p->type->size, p->u.c.v);
- p->u.c.loc = NULL;
- }
-}
-void checklab(Symbol p, void *cl) {
- if (!p->defined)
- error("undefined label `%s'\n", p->name);
- p->defined = 1;
-}
-
-Type enumdcl(void) {
- char *tag;
- Type ty;
- Symbol p;
- Coordinate pos;
-
- t = gettok();
- pos = src;
- if (t == ID) {
- tag = token;
- t = gettok();
- } else
- tag = "";
- if (t == '{') {
- static char follow[] = { IF, 0 };
- int n = 0;
- long k = -1;
- List idlist = 0;
- ty = newstruct(ENUM, tag);
- t = gettok();
- if (t != ID)
- error("expecting an enumerator identifier\n");
- while (t == ID) {
- char *id = token;
- Coordinate s;
- if (tsym && tsym->scope == level)
- error("redeclaration of `%s' previously declared at %w\n",
- token, &tsym->src);
- s = src;
- t = gettok();
- if (t == '=') {
- t = gettok();
- k = intexpr(0, 0);
- } else {
- if (k == inttype->u.sym->u.limits.max.i)
- error("overflow in value for enumeration constant `%s'\n", id);
- k++;
- }
- p = install(id, &identifiers, level, level < LOCAL ? PERM : FUNC);
- p->src = s;
- p->type = ty;
- p->sclass = ENUM;
- p->u.value = k;
- idlist = append(p, idlist);
- n++;
- if (Aflag >= 2 && n == 128)
- warning("more than 127 enumeration constants in `%t'\n", ty);
- if (t != ',')
- break;
- t = gettok();
- if (Aflag >= 2 && t == '}')
- warning("non-ANSI trailing comma in enumerator list\n");
- }
- test('}', follow);
- ty->type = inttype;
- ty->size = ty->type->size;
- ty->align = ty->type->align;
- ty->u.sym->u.idlist = ltov(&idlist, PERM);
- ty->u.sym->defined = 1;
- } else if ((p = lookup(tag, types)) != NULL && p->type->op == ENUM) {
- ty = p->type;
- if (t == ';')
- error("empty declaration\n");
- } else {
- error("unknown enumeration `%s'\n", tag);
- ty = newstruct(ENUM, tag);
- ty->type = inttype;
- }
- if (*tag && xref)
- use(p, pos);
- return ty;
-}
-
-Type typename(void) {
- Type ty = specifier(NULL);
-
- if (t == '*' || t == '(' || t == '[') {
- ty = dclr(ty, NULL, NULL, 1);
- if (Aflag >= 1 && !hasproto(ty))
- warning("missing prototype\n");
- }
- return ty;
-}
-
+#include "c.h"
+
+
+#define add(x,n) (x > inttype->u.sym->u.limits.max.i-(n) ? (overflow=1,x) : x+(n))
+#define chkoverflow(x,n) ((void)add(x,n))
+#define bits2bytes(n) (((n) + 7)/8)
+static int regcount;
+
+static List autos, registers;
+Symbol cfunc; /* current function */
+Symbol retv; /* return value location for structs */
+
+static void checkref(Symbol, void *);
+static Symbol dclglobal(int, char *, Type, Coordinate *);
+static Symbol dcllocal(int, char *, Type, Coordinate *);
+static Symbol dclparam(int, char *, Type, Coordinate *);
+static Type dclr(Type, char **, Symbol **, int);
+static Type dclr1(char **, Symbol **, int);
+static void decl(Symbol (*)(int, char *, Type, Coordinate *));
+extern void doconst(Symbol, void *);
+static void doglobal(Symbol, void *);
+static void doextern(Symbol, void *);
+static void exitparams(Symbol []);
+static void fields(Type);
+static void funcdefn(int, char *, Type, Symbol [], Coordinate);
+static void initglobal(Symbol, int);
+static void oldparam(Symbol, void *);
+static Symbol *parameters(Type);
+static Type specifier(int *);
+static Type structdcl(int);
+static Type tnode(int, Type);
+void program(void) {
+ int n;
+
+ level = GLOBAL;
+ for (n = 0; t != EOI; n++)
+ if (kind[t] == CHAR || kind[t] == STATIC
+ || t == ID || t == '*' || t == '(') {
+ decl(dclglobal);
+ deallocate(STMT);
+ if (!(glevel >= 3 || xref))
+ deallocate(FUNC);
+ } else if (t == ';') {
+ warning("empty declaration\n");
+ t = gettok();
+ } else {
+ error("unrecognized declaration\n");
+ t = gettok();
+ }
+ if (n == 0)
+ warning("empty input file\n");
+}
+static Type specifier(int *sclass) {
+ int cls, cons, sign, size, type, vol;
+ Type ty = NULL;
+
+ cls = vol = cons = sign = size = type = 0;
+ if (sclass == NULL)
+ cls = AUTO;
+ for (;;) {
+ int *p, tt = t;
+ switch (t) {
+ case AUTO:
+ case REGISTER: if (level <= GLOBAL && cls == 0)
+ error("invalid use of `%k'\n", t);
+ p = &cls; t = gettok(); break;
+ case STATIC: case EXTERN:
+ case TYPEDEF: p = &cls; t = gettok(); break;
+ case CONST: p = &cons; t = gettok(); break;
+ case VOLATILE: p = &vol; t = gettok(); break;
+ case SIGNED:
+ case UNSIGNED: p = &sign; t = gettok(); break;
+ case LONG: if (size == LONG) {
+ size = 0;
+ tt = LONG+LONG;
+ }
+ p = &size; t = gettok(); break;
+ case SHORT: p = &size; t = gettok(); break;
+ case VOID: case CHAR: case INT: case FLOAT:
+ case DOUBLE: p = &type; ty = tsym->type;
+ t = gettok(); break;
+ case ENUM: p = &type; ty = enumdcl(); break;
+ case STRUCT:
+ case UNION: p = &type; ty = structdcl(t); break;
+ case ID:
+ if (istypename(t, tsym) && type == 0
+ && sign == 0 && size == 0) {
+ use(tsym, src);
+ ty = tsym->type;
+ if (isqual(ty)
+ && ty->size != ty->type->size) {
+ ty = unqual(ty);
+ if (isconst(tsym->type))
+ ty = qual(CONST, ty);
+ if (isvolatile(tsym->type))
+ ty = qual(VOLATILE, ty);
+ tsym->type = ty;
+ }
+ p = &type;
+ t = gettok();
+ } else
+ p = NULL;
+ break;
+ default: p = NULL;
+ }
+ if (p == NULL)
+ break;
+ if (*p)
+ error("invalid use of `%k'\n", tt);
+ *p = tt;
+ }
+ if (sclass)
+ *sclass = cls;
+ if (type == 0) {
+ type = INT;
+ ty = inttype;
+ }
+ if (size == SHORT && type != INT
+ || size == LONG+LONG && type != INT
+ || size == LONG && type != INT && type != DOUBLE
+ || sign && type != INT && type != CHAR)
+ error("invalid type specification\n");
+ if (type == CHAR && sign)
+ ty = sign == UNSIGNED ? unsignedchar : signedchar;
+ else if (size == SHORT)
+ ty = sign == UNSIGNED ? unsignedshort : shorttype;
+ else if (size == LONG && type == DOUBLE)
+ ty = longdouble;
+ else if (size == LONG+LONG) {
+ ty = sign == UNSIGNED ? unsignedlonglong : longlong;
+ if (Aflag >= 1)
+ warning("`%t' is a non-ANSI type\n", ty);
+ } else if (size == LONG)
+ ty = sign == UNSIGNED ? unsignedlong : longtype;
+ else if (sign == UNSIGNED && type == INT)
+ ty = unsignedtype;
+ if (cons == CONST)
+ ty = qual(CONST, ty);
+ if (vol == VOLATILE)
+ ty = qual(VOLATILE, ty);
+ return ty;
+}
+static void decl(Symbol (*dcl)(int, char *, Type, Coordinate *)) {
+ int sclass;
+ Type ty, ty1;
+ static char stop[] = { CHAR, STATIC, ID, 0 };
+
+ ty = specifier(&sclass);
+ if (t == ID || t == '*' || t == '(' || t == '[') {
+ char *id;
+ Coordinate pos;
+ id = NULL;
+ pos = src;
+ if (level == GLOBAL) {
+ Symbol *params = NULL;
+ ty1 = dclr(ty, &id, &params, 0);
+ if (params && id && isfunc(ty1)
+ && (t == '{' || istypename(t, tsym)
+ || (kind[t] == STATIC && t != TYPEDEF))) {
+ if (sclass == TYPEDEF) {
+ error("invalid use of `typedef'\n");
+ sclass = EXTERN;
+ }
+ if (ty1->u.f.oldstyle)
+ exitscope();
+ funcdefn(sclass, id, ty1, params, pos);
+ return;
+ } else if (params)
+ exitparams(params);
+ } else
+ ty1 = dclr(ty, &id, NULL, 0);
+ for (;;) {
+ if (Aflag >= 1 && !hasproto(ty1))
+ warning("missing prototype\n");
+ if (id == NULL)
+ error("missing identifier\n");
+ else if (sclass == TYPEDEF)
+ {
+ Symbol p = lookup(id, identifiers);
+ if (p && p->scope == level)
+ error("redeclaration of `%s'\n", id);
+ p = install(id, &identifiers, level,
+ level < LOCAL ? PERM : FUNC);
+ p->type = ty1;
+ p->sclass = TYPEDEF;
+ p->src = pos;
+ }
+ else
+ (void)(*dcl)(sclass, id, ty1, &pos);
+ if (t != ',')
+ break;
+ t = gettok();
+ id = NULL;
+ pos = src;
+ ty1 = dclr(ty, &id, NULL, 0);
+ }
+ } else if (ty == NULL
+ || !(isenum(ty) ||
+ isstruct(ty) && (*unqual(ty)->u.sym->name < '1' || *unqual(ty)->u.sym->name > '9')))
+ error("empty declaration\n");
+ test(';', stop);
+}
+static Symbol dclglobal(int sclass, char *id, Type ty, Coordinate *pos) {
+ Symbol p;
+
+ if (sclass == 0)
+ sclass = AUTO;
+ else if (sclass != EXTERN && sclass != STATIC) {
+ error("invalid storage class `%k' for `%t %s'\n",
+ sclass, ty, id);
+ sclass = AUTO;
+ }
+ p = lookup(id, identifiers);
+ if (p && p->scope == GLOBAL) {
+ if (p->sclass != TYPEDEF && eqtype(ty, p->type, 1))
+ ty = compose(ty, p->type);
+ else
+ error("redeclaration of `%s' previously declared at %w\n", p->name, &p->src);
+
+ if (!isfunc(ty) && p->defined && t == '=')
+ error("redefinition of `%s' previously defined at %w\n", p->name, &p->src);
+
+ if (p->sclass == EXTERN && sclass == STATIC
+ || p->sclass == STATIC && sclass == AUTO
+ || p->sclass == AUTO && sclass == STATIC)
+ warning("inconsistent linkage for `%s' previously declared at %w\n", p->name, &p->src);
+
+ }
+ if (p == NULL || p->scope != GLOBAL) {
+ Symbol q = lookup(id, externals);
+ if (q) {
+ if (sclass == STATIC || !eqtype(ty, q->type, 1))
+ warning("declaration of `%s' does not match previous declaration at %w\n", id, &q->src);
+
+ p = relocate(id, externals, globals);
+ p->sclass = sclass;
+ } else {
+ p = install(id, &globals, GLOBAL, PERM);
+ p->sclass = sclass;
+ (*IR->defsymbol)(p);
+ }
+ if (p->sclass != STATIC) {
+ static int nglobals;
+ nglobals++;
+ if (Aflag >= 2 && nglobals == 512)
+ warning("more than 511 external identifiers\n");
+ }
+ } else if (p->sclass == EXTERN)
+ p->sclass = sclass;
+ p->type = ty;
+ p->src = *pos;
+ if (t == '=' && isfunc(p->type)) {
+ error("illegal initialization for `%s'\n", p->name);
+ t = gettok();
+ initializer(p->type, 0);
+ } else if (t == '=') {
+ initglobal(p, 0);
+ if (glevel > 0 && IR->stabsym) {
+ (*IR->stabsym)(p); swtoseg(p->u.seg); }
+ } else if (p->sclass == STATIC && !isfunc(p->type)
+ && p->type->size == 0)
+ error("undefined size for `%t %s'\n", p->type, p->name);
+ return p;
+}
+static void initglobal(Symbol p, int flag) {
+ Type ty;
+
+ if (t == '=' || flag) {
+ if (p->sclass == STATIC) {
+ for (ty = p->type; isarray(ty); ty = ty->type)
+ ;
+ defglobal(p, isconst(ty) ? LIT : DATA);
+ } else
+ defglobal(p, DATA);
+ if (t == '=')
+ t = gettok();
+ ty = initializer(p->type, 0);
+ if (isarray(p->type) && p->type->size == 0)
+ p->type = ty;
+ if (p->sclass == EXTERN)
+ p->sclass = AUTO;
+ }
+}
+void defglobal(Symbol p, int seg) {
+ p->u.seg = seg;
+ swtoseg(p->u.seg);
+ if (p->sclass != STATIC)
+ (*IR->export)(p);
+ (*IR->global)(p);
+ p->defined = 1;
+}
+
+static Type dclr(Type basety, char **id, Symbol **params, int abstract) {
+ Type ty = dclr1(id, params, abstract);
+
+ for ( ; ty; ty = ty->type)
+ switch (ty->op) {
+ case POINTER:
+ basety = ptr(basety);
+ break;
+ case FUNCTION:
+ basety = func(basety, ty->u.f.proto,
+ ty->u.f.oldstyle);
+ break;
+ case ARRAY:
+ basety = array(basety, ty->size, 0);
+ break;
+ case CONST: case VOLATILE:
+ basety = qual(ty->op, basety);
+ break;
+ default: assert(0);
+ }
+ if (Aflag >= 2 && basety->size > 32767)
+ warning("more than 32767 bytes in `%t'\n", basety);
+ return basety;
+}
+static Type tnode(int op, Type type) {
+ Type ty;
+
+ NEW0(ty, STMT);
+ ty->op = op;
+ ty->type = type;
+ return ty;
+}
+static Type dclr1(char **id, Symbol **params, int abstract) {
+ Type ty = NULL;
+
+ switch (t) {
+ case ID: if (id)
+ *id = token;
+ else
+ error("extraneous identifier `%s'\n", token);
+ t = gettok(); break;
+ case '*': t = gettok(); if (t == CONST || t == VOLATILE) {
+ Type ty1;
+ ty1 = ty = tnode(t, NULL);
+ while ((t = gettok()) == CONST || t == VOLATILE)
+ ty1 = tnode(t, ty1);
+ ty->type = dclr1(id, params, abstract);
+ ty = ty1;
+ } else
+ ty = dclr1(id, params, abstract);
+ ty = tnode(POINTER, ty); break;
+ case '(': t = gettok(); if (abstract
+ && (t == REGISTER || istypename(t, tsym) || t == ')')) {
+ Symbol *args;
+ ty = tnode(FUNCTION, ty);
+ enterscope();
+ if (level > PARAM)
+ enterscope();
+ args = parameters(ty);
+ exitparams(args);
+ } else {
+ ty = dclr1(id, params, abstract);
+ expect(')');
+ if (abstract && ty == NULL
+ && (id == NULL || *id == NULL))
+ return tnode(FUNCTION, NULL);
+ } break;
+ case '[': break;
+ default: return ty;
+ }
+ while (t == '(' || t == '[')
+ switch (t) {
+ case '(': t = gettok(); { Symbol *args;
+ ty = tnode(FUNCTION, ty);
+ enterscope();
+ if (level > PARAM)
+ enterscope();
+ args = parameters(ty);
+ if (params && *params == NULL)
+ *params = args;
+ else
+ exitparams(args);
+ }
+ break;
+ case '[': t = gettok(); { int n = 0;
+ if (kind[t] == ID) {
+ n = intexpr(']', 1);
+ if (n <= 0) {
+ error("`%d' is an illegal array size\n", n);
+ n = 1;
+ }
+ } else
+ expect(']');
+ ty = tnode(ARRAY, ty);
+ ty->size = n; } break;
+ default: assert(0);
+ }
+ return ty;
+}
+static Symbol *parameters(Type fty) {
+ List list = NULL;
+ Symbol *params;
+
+ if (kind[t] == STATIC || istypename(t, tsym)) {
+ int n = 0;
+ Type ty1 = NULL;
+ for (;;) {
+ Type ty;
+ int sclass = 0;
+ char *id = NULL;
+ if (ty1 && t == ELLIPSIS) {
+ static struct symbol sentinel;
+ if (sentinel.type == NULL) {
+ sentinel.type = voidtype;
+ sentinel.defined = 1;
+ }
+ if (ty1 == voidtype)
+ error("illegal formal parameter types\n");
+ list = append(&sentinel, list);
+ t = gettok();
+ break;
+ }
+ if (!istypename(t, tsym) && t != REGISTER)
+ error("missing parameter type\n");
+ n++;
+ ty = dclr(specifier(&sclass), &id, NULL, 1);
+ if ( ty == voidtype && (ty1 || id)
+ || ty1 == voidtype)
+ error("illegal formal parameter types\n");
+ if (id == NULL)
+ id = stringd(n);
+ if (ty != voidtype)
+ list = append(dclparam(sclass, id, ty, &src), list);
+ if (Aflag >= 1 && !hasproto(ty))
+ warning("missing prototype\n");
+ if (ty1 == NULL)
+ ty1 = ty;
+ if (t != ',')
+ break;
+ t = gettok();
+ }
+ fty->u.f.proto = newarray(length(list) + 1,
+ sizeof (Type *), PERM);
+ params = ltov(&list, FUNC);
+ for (n = 0; params[n]; n++)
+ fty->u.f.proto[n] = params[n]->type;
+ fty->u.f.proto[n] = NULL;
+ fty->u.f.oldstyle = 0;
+ } else {
+ if (t == ID)
+ for (;;) {
+ Symbol p;
+ if (t != ID) {
+ error("expecting an identifier\n");
+ break;
+ }
+ p = dclparam(0, token, inttype, &src);
+ p->defined = 0;
+ list = append(p, list);
+ t = gettok();
+ if (t != ',')
+ break;
+ t = gettok();
+ }
+ params = ltov(&list, FUNC);
+ fty->u.f.proto = NULL;
+ fty->u.f.oldstyle = 1;
+ }
+ if (t != ')') {
+ static char stop[] = { CHAR, STATIC, IF, ')', 0 };
+ expect(')');
+ skipto('{', stop);
+ }
+ if (t == ')')
+ t = gettok();
+ return params;
+}
+static void exitparams(Symbol params[]) {
+ assert(params);
+ if (params[0] && !params[0]->defined)
+ error("extraneous old-style parameter list\n");
+ if (level > PARAM)
+ exitscope();
+ exitscope();
+}
+
+static Symbol dclparam(int sclass, char *id, Type ty, Coordinate *pos) {
+ Symbol p;
+
+ if (isfunc(ty))
+ ty = ptr(ty);
+ else if (isarray(ty))
+ ty = atop(ty);
+ if (sclass == 0)
+ sclass = AUTO;
+ else if (sclass != REGISTER) {
+ error("invalid storage class `%k' for `%t%s\n",
+ sclass, ty, stringf(id ? " %s'" : "' parameter", id));
+ sclass = AUTO;
+ } else if (isvolatile(ty) || isstruct(ty)) {
+ warning("register declaration ignored for `%t%s\n",
+ ty, stringf(id ? " %s'" : "' parameter", id));
+ sclass = AUTO;
+ }
+
+ p = lookup(id, identifiers);
+ if (p && p->scope == level)
+ error("duplicate declaration for `%s' previously declared at %w\n", id, &p->src);
+
+ else
+ p = install(id, &identifiers, level, FUNC);
+ p->sclass = sclass;
+ p->src = *pos;
+ p->type = ty;
+ p->defined = 1;
+ if (t == '=') {
+ error("illegal initialization for parameter `%s'\n", id);
+ t = gettok();
+ (void)expr1(0);
+ }
+ return p;
+}
+static Type structdcl(int op) {
+ char *tag;
+ Type ty;
+ Symbol p;
+ Coordinate pos;
+
+ t = gettok();
+ pos = src;
+ if (t == ID) {
+ tag = token;
+ t = gettok();
+ } else
+ tag = "";
+ if (t == '{') {
+ static char stop[] = { IF, ',', 0 };
+ ty = newstruct(op, tag);
+ ty->u.sym->src = pos;
+ ty->u.sym->defined = 1;
+ t = gettok();
+ if (istypename(t, tsym))
+ fields(ty);
+ else
+ error("invalid %k field declarations\n", op);
+ test('}', stop);
+ }
+ else if (*tag && (p = lookup(tag, types)) != NULL
+ && p->type->op == op) {
+ ty = p->type;
+ if (t == ';' && p->scope < level)
+ ty = newstruct(op, tag);
+ }
+ else {
+ if (*tag == 0)
+ error("missing %k tag\n", op);
+ ty = newstruct(op, tag);
+ }
+ if (*tag && xref)
+ use(ty->u.sym, pos);
+ return ty;
+}
+static void fields(Type ty) {
+ { int n = 0;
+ while (istypename(t, tsym)) {
+ static char stop[] = { IF, CHAR, '}', 0 };
+ Type ty1 = specifier(NULL);
+ for (;;) {
+ Field p;
+ char *id = NULL;
+ Type fty = dclr(ty1, &id, NULL, 0);
+ p = newfield(id, ty, fty);
+ if (Aflag >= 1 && !hasproto(p->type))
+ warning("missing prototype\n");
+ if (t == ':') {
+ if (unqual(p->type) != inttype
+ && unqual(p->type) != unsignedtype) {
+ error("`%t' is an illegal bit-field type\n",
+ p->type);
+ p->type = inttype;
+ }
+ t = gettok();
+ p->bitsize = intexpr(0, 0);
+ if (p->bitsize > 8*inttype->size || p->bitsize < 0) {
+ error("`%d' is an illegal bit-field size\n",
+ p->bitsize);
+ p->bitsize = 8*inttype->size;
+ } else if (p->bitsize == 0 && id) {
+ warning("extraneous 0-width bit field `%t %s' ignored\n", p->type, id);
+
+ p->name = stringd(genlabel(1));
+ }
+ p->lsb = 1;
+ }
+ else {
+ if (id == NULL)
+ error("field name missing\n");
+ else if (isfunc(p->type))
+ error("`%t' is an illegal field type\n", p->type);
+ else if (p->type->size == 0)
+ error("undefined size for field `%t %s'\n",
+ p->type, id);
+ }
+ if (isconst(p->type))
+ ty->u.sym->u.s.cfields = 1;
+ if (isvolatile(p->type))
+ ty->u.sym->u.s.vfields = 1;
+ n++;
+ if (Aflag >= 2 && n == 128)
+ warning("more than 127 fields in `%t'\n", ty);
+ if (t != ',')
+ break;
+ t = gettok();
+ }
+ test(';', stop);
+ } }
+ { int bits = 0, off = 0, overflow = 0;
+ Field p, *q = &ty->u.sym->u.s.flist;
+ ty->align = IR->structmetric.align;
+ for (p = *q; p; p = p->link) {
+ int a = p->type->align ? p->type->align : 1;
+ if (p->lsb)
+ a = unsignedtype->align;
+ if (ty->op == UNION)
+ off = bits = 0;
+ else if (p->bitsize == 0 || bits == 0
+ || bits - 1 + p->bitsize > 8*unsignedtype->size) {
+ off = add(off, bits2bytes(bits-1));
+ bits = 0;
+ chkoverflow(off, a - 1);
+ off = roundup(off, a);
+ }
+ if (a > ty->align)
+ ty->align = a;
+ p->offset = off;
+
+ if (p->lsb) {
+ if (bits == 0)
+ bits = 1;
+ if (IR->little_endian)
+ p->lsb = bits;
+ else
+ p->lsb = 8*unsignedtype->size - bits + 1
+ - p->bitsize + 1;
+ bits += p->bitsize;
+ } else
+ off = add(off, p->type->size);
+ if (off + bits2bytes(bits-1) > ty->size)
+ ty->size = off + bits2bytes(bits-1);
+ if (p->name == NULL
+ || !('1' <= *p->name && *p->name <= '9')) {
+ *q = p;
+ q = &p->link;
+ }
+ }
+ *q = NULL;
+ chkoverflow(ty->size, ty->align - 1);
+ ty->size = roundup(ty->size, ty->align);
+ if (overflow) {
+ error("size of `%t' exceeds %d bytes\n", ty, inttype->u.sym->u.limits.max.i);
+ ty->size = inttype->u.sym->u.limits.max.i&(~(ty->align - 1));
+ } }
+}
+static void funcdefn(int sclass, char *id, Type ty, Symbol params[], Coordinate pt) {
+ int i, n;
+ Symbol *callee, *caller, p;
+ Type rty = freturn(ty);
+
+ if (isstruct(rty) && rty->size == 0)
+ error("illegal use of incomplete type `%t'\n", rty);
+ for (n = 0; params[n]; n++)
+ ;
+ if (n > 0 && params[n-1]->name == NULL)
+ params[--n] = NULL;
+ if (Aflag >= 2 && n > 31)
+ warning("more than 31 parameters in function `%s'\n", id);
+ if (ty->u.f.oldstyle) {
+ if (Aflag >= 1)
+ warning("old-style function definition for `%s'\n", id);
+ caller = params;
+ callee = newarray(n + 1, sizeof *callee, FUNC);
+ memcpy(callee, caller, (n+1)*sizeof *callee);
+ enterscope();
+ assert(level == PARAM);
+ while (kind[t] == STATIC || istypename(t, tsym))
+ decl(dclparam);
+ foreach(identifiers, PARAM, oldparam, callee);
+
+ for (i = 0; (p = callee[i]) != NULL; i++) {
+ if (!p->defined)
+ callee[i] = dclparam(0, p->name, inttype, &p->src);
+ *caller[i] = *p;
+ caller[i]->sclass = AUTO;
+ caller[i]->type = promote(p->type);
+ }
+ p = lookup(id, identifiers);
+ if (p && p->scope == GLOBAL && isfunc(p->type)
+ && p->type->u.f.proto) {
+ Type *proto = p->type->u.f.proto;
+ for (i = 0; caller[i] && proto[i]; i++) {
+ Type ty = unqual(proto[i]);
+ if (eqtype(isenum(ty) ? ty->type : ty,
+ unqual(caller[i]->type), 1) == 0)
+ break;
+ else if (isenum(ty) && !isenum(unqual(caller[i]->type)))
+ warning("compatibility of `%t' and `%t' is compiler dependent\n",
+ proto[i], caller[i]->type);
+ }
+ if (proto[i] || caller[i])
+ error("conflicting argument declarations for function `%s'\n", id);
+
+ }
+ else {
+ Type *proto = newarray(n + 1, sizeof *proto, PERM);
+ if (Aflag >= 1)
+ warning("missing prototype for `%s'\n", id);
+ for (i = 0; i < n; i++)
+ proto[i] = caller[i]->type;
+ proto[i] = NULL;
+ ty = func(rty, proto, 1);
+ }
+ } else {
+ callee = params;
+ caller = newarray(n + 1, sizeof *caller, FUNC);
+ for (i = 0; (p = callee[i]) != NULL && p->name; i++) {
+ NEW(caller[i], FUNC);
+ *caller[i] = *p;
+ if (isint(p->type))
+ caller[i]->type = promote(p->type);
+ caller[i]->sclass = AUTO;
+ if ('1' <= *p->name && *p->name <= '9')
+ error("missing name for parameter %d to function `%s'\n", i + 1, id);
+
+ }
+ caller[i] = NULL;
+ }
+ for (i = 0; (p = callee[i]) != NULL; i++)
+ if (p->type->size == 0) {
+ error("undefined size for parameter `%t %s'\n",
+ p->type, p->name);
+ caller[i]->type = p->type = inttype;
+ }
+ if (Aflag >= 2 && sclass != STATIC && strcmp(id, "main") == 0) {
+ if (ty->u.f.oldstyle)
+ warning("`%t %s()' is a non-ANSI definition\n", rty, id);
+ else if (!(rty == inttype
+ && (n == 0 && callee[0] == NULL
+ || n == 2 && callee[0]->type == inttype
+ && isptr(callee[1]->type) && callee[1]->type->type == charptype
+ && !variadic(ty))))
+ warning("`%s' is a non-ANSI definition\n", typestring(ty, id));
+ }
+ p = lookup(id, identifiers);
+ if (p && isfunc(p->type) && p->defined)
+ error("redefinition of `%s' previously defined at %w\n",
+ p->name, &p->src);
+ cfunc = dclglobal(sclass, id, ty, &pt);
+ cfunc->u.f.label = genlabel(1);
+ cfunc->u.f.callee = callee;
+ cfunc->u.f.pt = src;
+ cfunc->defined = 1;
+ if (xref)
+ use(cfunc, cfunc->src);
+ if (Pflag)
+ printproto(cfunc, cfunc->u.f.callee);
+ if (ncalled >= 0)
+ ncalled = findfunc(cfunc->name, pt.file);
+ labels = table(NULL, LABELS);
+ stmtlabs = table(NULL, LABELS);
+ refinc = 1.0;
+ regcount = 0;
+ codelist = &codehead;
+ codelist->next = NULL;
+ if (!IR->wants_callb && isstruct(rty))
+ retv = genident(AUTO, ptr(rty), PARAM);
+ compound(0, NULL, 0);
+
+ {
+ Code cp;
+ for (cp = codelist; cp->kind < Label; cp = cp->prev)
+ ;
+ if (cp->kind != Jump) {
+ if (rty != voidtype) {
+ warning("missing return value\n");
+ retcode(cnsttree(inttype, 0L));
+ } else
+ retcode(NULL);
+ }
+ }
+ definelab(cfunc->u.f.label);
+ if (events.exit)
+ apply(events.exit, cfunc, NULL);
+ walk(NULL, 0, 0);
+ exitscope();
+ assert(level == PARAM);
+ foreach(identifiers, level, checkref, NULL);
+ if (!IR->wants_callb && isstruct(rty)) {
+ Symbol *a;
+ a = newarray(n + 2, sizeof *a, FUNC);
+ a[0] = retv;
+ memcpy(&a[1], callee, (n+1)*sizeof *callee);
+ callee = a;
+ a = newarray(n + 2, sizeof *a, FUNC);
+ NEW(a[0], FUNC);
+ *a[0] = *retv;
+ memcpy(&a[1], caller, (n+1)*sizeof *callee);
+ caller = a;
+ }
+ if (!IR->wants_argb)
+ for (i = 0; caller[i]; i++)
+ if (isstruct(caller[i]->type)) {
+ caller[i]->type = ptr(caller[i]->type);
+ callee[i]->type = ptr(callee[i]->type);
+ caller[i]->structarg = callee[i]->structarg = 1;
+ }
+ if (glevel > 1) for (i = 0; callee[i]; i++) callee[i]->sclass = AUTO;
+ if (cfunc->sclass != STATIC)
+ (*IR->export)(cfunc);
+ if (glevel && IR->stabsym) {
+ swtoseg(CODE); (*IR->stabsym)(cfunc); }
+ swtoseg(CODE);
+ (*IR->function)(cfunc, caller, callee, cfunc->u.f.ncalls);
+ if (glevel && IR->stabfend)
+ (*IR->stabfend)(cfunc, lineno);
+ foreach(stmtlabs, LABELS, checklab, NULL);
+ exitscope();
+ expect('}');
+ labels = stmtlabs = NULL;
+ retv = NULL;
+ cfunc = NULL;
+}
+static void oldparam(Symbol p, void *cl) {
+ int i;
+ Symbol *callee = cl;
+
+ for (i = 0; callee[i]; i++)
+ if (p->name == callee[i]->name) {
+ callee[i] = p;
+ return;
+ }
+ error("declared parameter `%s' is missing\n", p->name);
+}
+void compound(int loop, struct swtch *swp, int lev) {
+ Code cp;
+ int nregs;
+
+ walk(NULL, 0, 0);
+ cp = code(Blockbeg);
+ enterscope();
+ assert(level >= LOCAL);
+ if (level == LOCAL && events.entry)
+ apply(events.entry, cfunc, NULL);
+ definept(NULL);
+ expect('{');
+ autos = registers = NULL;
+ if (level == LOCAL && IR->wants_callb
+ && isstruct(freturn(cfunc->type))) {
+ retv = genident(AUTO, ptr(freturn(cfunc->type)), level);
+ retv->defined = 1;
+ retv->ref = 1;
+ registers = append(retv, registers);
+ }
+ while (kind[t] == CHAR || kind[t] == STATIC
+ || istypename(t, tsym) && getchr() != ':')
+ decl(dcllocal);
+ {
+ int i;
+ Symbol *a = ltov(&autos, STMT);
+ nregs = length(registers);
+ for (i = 0; a[i]; i++)
+ registers = append(a[i], registers);
+ cp->u.block.locals = ltov(&registers, FUNC);
+ }
+ if (events.blockentry)
+ apply(events.blockentry, cp->u.block.locals, NULL);
+ while (kind[t] == IF || kind[t] == ID)
+ statement(loop, swp, lev);
+ walk(NULL, 0, 0);
+ foreach(identifiers, level, checkref, NULL);
+ {
+ int i = nregs, j;
+ Symbol p;
+ for ( ; (p = cp->u.block.locals[i]) != NULL; i++) {
+ for (j = i; j > nregs
+ && cp->u.block.locals[j-1]->ref < p->ref; j--)
+ cp->u.block.locals[j] = cp->u.block.locals[j-1];
+ cp->u.block.locals[j] = p;
+ }
+ }
+ if (events.blockexit)
+ apply(events.blockexit, cp->u.block.locals, NULL);
+ cp->u.block.level = level;
+ cp->u.block.identifiers = identifiers;
+ cp->u.block.types = types;
+ code(Blockend)->u.begin = cp;
+ if (reachable(Gen))
+ definept(NULL);
+ if (level > LOCAL) {
+ exitscope();
+ expect('}');
+ }
+}
+static void checkref(Symbol p, void *cl) {
+ if (p->scope >= PARAM
+ && (isvolatile(p->type) || isfunc(p->type)))
+ p->addressed = 1;
+ if (Aflag >= 2 && p->defined && p->ref == 0) {
+ if (p->sclass == STATIC)
+ warning("static `%t %s' is not referenced\n",
+ p->type, p->name);
+ else if (p->scope == PARAM)
+ warning("parameter `%t %s' is not referenced\n",
+ p->type, p->name);
+ else if (p->scope >= LOCAL && p->sclass != EXTERN)
+ warning("local `%t %s' is not referenced\n",
+ p->type, p->name);
+ }
+ if (p->sclass == AUTO
+ && (p->scope == PARAM && regcount == 0
+ || p->scope >= LOCAL)
+ && !p->addressed && isscalar(p->type) && p->ref >= 3.0)
+ p->sclass = REGISTER;
+ if (level == GLOBAL && p->sclass == STATIC && !p->defined
+ && isfunc(p->type) && p->ref)
+ error("undefined static `%t %s'\n", p->type, p->name);
+ assert(!(level == GLOBAL && p->sclass == STATIC && !p->defined && !isfunc(p->type)));
+}
+static Symbol dcllocal(int sclass, char *id, Type ty, Coordinate *pos) {
+ Symbol p, q;
+
+ if (sclass == 0)
+ sclass = isfunc(ty) ? EXTERN : AUTO;
+ else if (isfunc(ty) && sclass != EXTERN) {
+ error("invalid storage class `%k' for `%t %s'\n",
+ sclass, ty, id);
+ sclass = EXTERN;
+ } else if (sclass == REGISTER
+ && (isvolatile(ty) || isstruct(ty) || isarray(ty))) {
+ warning("register declaration ignored for `%t %s'\n",
+ ty, id);
+ sclass = AUTO;
+ }
+ q = lookup(id, identifiers);
+ if (q && q->scope >= level
+ || q && q->scope == PARAM && level == LOCAL)
+ if (sclass == EXTERN && q->sclass == EXTERN
+ && eqtype(q->type, ty, 1))
+ ty = compose(ty, q->type);
+ else
+ error("redeclaration of `%s' previously declared at %w\n", q->name, &q->src);
+
+ assert(level >= LOCAL);
+ p = install(id, &identifiers, level, sclass == STATIC || sclass == EXTERN ? PERM : FUNC);
+ p->type = ty;
+ p->sclass = sclass;
+ p->src = *pos;
+ switch (sclass) {
+ case EXTERN: q = lookup(id, globals);
+ if (q == NULL || q->sclass == TYPEDEF || q->sclass == ENUM) {
+ q = lookup(id, externals);
+ if (q == NULL) {
+ q = install(p->name, &externals, GLOBAL, PERM);
+ q->type = p->type;
+ q->sclass = EXTERN;
+ q->src = src;
+ (*IR->defsymbol)(q);
+ }
+ }
+ if (!eqtype(p->type, q->type, 1))
+ warning("declaration of `%s' does not match previous declaration at %w\n", q->name, &q->src);
+
+ p->u.alias = q; break;
+ case STATIC: (*IR->defsymbol)(p);
+ initglobal(p, 0);
+ if (!p->defined)
+ if (p->type->size > 0) {
+ defglobal(p, BSS);
+ (*IR->space)(p->type->size);
+ } else
+ error("undefined size for `%t %s'\n",
+ p->type, p->name);
+ p->defined = 1; break;
+ case REGISTER: registers = append(p, registers);
+ regcount++;
+ p->defined = 1;
+ break;
+ case AUTO: autos = append(p, autos);
+ p->defined = 1; break;
+ default: assert(0);
+ }
+ if (t == '=') {
+ Tree e;
+ if (sclass == EXTERN)
+ error("illegal initialization of `extern %s'\n", id);
+ t = gettok();
+ definept(NULL);
+ if (isscalar(p->type)
+ || isstruct(p->type) && t != '{') {
+ if (t == '{') {
+ t = gettok();
+ e = expr1(0);
+ expect('}');
+ } else
+ e = expr1(0);
+ } else {
+ Symbol t1;
+ Type ty = p->type, ty1 = ty;
+ while (isarray(ty1))
+ ty1 = ty1->type;
+ if (!isconst(ty) && (!isarray(ty) || !isconst(ty1)))
+ ty = qual(CONST, ty);
+ t1 = genident(STATIC, ty, GLOBAL);
+ initglobal(t1, 1);
+ if (isarray(p->type) && p->type->size == 0
+ && t1->type->size > 0)
+ p->type = array(p->type->type,
+ t1->type->size/t1->type->type->size, 0);
+ e = idtree(t1);
+ }
+ walk(root(asgn(p, e)), 0, 0);
+ p->ref = 1;
+ }
+ if (!isfunc(p->type) && p->defined && p->type->size <= 0)
+ error("undefined size for `%t %s'\n", p->type, id);
+ return p;
+}
+void finalize(void) {
+ foreach(externals, GLOBAL, doextern, NULL);
+ foreach(identifiers, GLOBAL, doglobal, NULL);
+ foreach(identifiers, GLOBAL, checkref, NULL);
+ foreach(constants, CONSTANTS, doconst, NULL);
+}
+static void doextern(Symbol p, void *cl) {
+ (*IR->import)(p);
+}
+static void doglobal(Symbol p, void *cl) {
+ if (!p->defined && (p->sclass == EXTERN
+ || isfunc(p->type) && p->sclass == AUTO))
+ (*IR->import)(p);
+ else if (!p->defined && !isfunc(p->type)
+ && (p->sclass == AUTO || p->sclass == STATIC)) {
+ if (isarray(p->type)
+ && p->type->size == 0 && p->type->type->size > 0)
+ p->type = array(p->type->type, 1, 0);
+ if (p->type->size > 0) {
+ defglobal(p, BSS);
+ (*IR->space)(p->type->size);
+ if (glevel > 0 && IR->stabsym)
+ (*IR->stabsym)(p);
+ } else
+ error("undefined size for `%t %s'\n",
+ p->type, p->name);
+ p->defined = 1;
+ }
+ if (Pflag
+ && !isfunc(p->type)
+ && !p->generated && p->sclass != EXTERN)
+ printdecl(p, p->type);
+}
+void doconst(Symbol p, void *cl) {
+ if (p->u.c.loc) {
+ assert(p->u.c.loc->u.seg == 0);
+ defglobal(p->u.c.loc, LIT);
+ if (isarray(p->type) && p->type->type == widechar) {
+ unsigned int *s = p->u.c.v.p;
+ int n = p->type->size/widechar->size;
+ while (n-- > 0) {
+ Value v;
+ v.u = *s++;
+ (*IR->defconst)(widechar->op, widechar->size, v);
+ }
+ } else if (isarray(p->type))
+ (*IR->defstring)(p->type->size, p->u.c.v.p);
+ else
+ (*IR->defconst)(p->type->op, p->type->size, p->u.c.v);
+ p->u.c.loc = NULL;
+ }
+}
+void checklab(Symbol p, void *cl) {
+ if (!p->defined)
+ error("undefined label `%s'\n", p->name);
+ p->defined = 1;
+}
+
+Type enumdcl(void) {
+ char *tag;
+ Type ty;
+ Symbol p;
+ Coordinate pos;
+
+ t = gettok();
+ pos = src;
+ if (t == ID) {
+ tag = token;
+ t = gettok();
+ } else
+ tag = "";
+ if (t == '{') {
+ static char follow[] = { IF, 0 };
+ int n = 0;
+ long k = -1;
+ List idlist = 0;
+ ty = newstruct(ENUM, tag);
+ t = gettok();
+ if (t != ID)
+ error("expecting an enumerator identifier\n");
+ while (t == ID) {
+ char *id = token;
+ Coordinate s;
+ if (tsym && tsym->scope == level)
+ error("redeclaration of `%s' previously declared at %w\n",
+ token, &tsym->src);
+ s = src;
+ t = gettok();
+ if (t == '=') {
+ t = gettok();
+ k = intexpr(0, 0);
+ } else {
+ if (k == inttype->u.sym->u.limits.max.i)
+ error("overflow in value for enumeration constant `%s'\n", id);
+ k++;
+ }
+ p = install(id, &identifiers, level, level < LOCAL ? PERM : FUNC);
+ p->src = s;
+ p->type = ty;
+ p->sclass = ENUM;
+ p->u.value = k;
+ idlist = append(p, idlist);
+ n++;
+ if (Aflag >= 2 && n == 128)
+ warning("more than 127 enumeration constants in `%t'\n", ty);
+ if (t != ',')
+ break;
+ t = gettok();
+ if (Aflag >= 2 && t == '}')
+ warning("non-ANSI trailing comma in enumerator list\n");
+ }
+ test('}', follow);
+ ty->type = inttype;
+ ty->size = ty->type->size;
+ ty->align = ty->type->align;
+ ty->u.sym->u.idlist = ltov(&idlist, PERM);
+ ty->u.sym->defined = 1;
+ } else if ((p = lookup(tag, types)) != NULL && p->type->op == ENUM) {
+ ty = p->type;
+ if (t == ';')
+ error("empty declaration\n");
+ } else {
+ error("unknown enumeration `%s'\n", tag);
+ ty = newstruct(ENUM, tag);
+ ty->type = inttype;
+ }
+ if (*tag && xref)
+ use(p, pos);
+ return ty;
+}
+
+Type typename(void) {
+ Type ty = specifier(NULL);
+
+ if (t == '*' || t == '(' || t == '[') {
+ ty = dclr(ty, NULL, NULL, 1);
+ if (Aflag >= 1 && !hasproto(ty))
+ warning("missing prototype\n");
+ }
+ return ty;
+}
+
diff --git a/lcc/src/enode.c b/lcc/src/enode.c
index a81c632..0503cc3 100755
--- a/lcc/src/enode.c
+++ b/lcc/src/enode.c
@@ -1,543 +1,543 @@
-#include "c.h"
-
-
-static Tree addtree(int, Tree, Tree);
-static Tree andtree(int, Tree, Tree);
-static Tree cmptree(int, Tree, Tree);
-static int compatible(Type, Type);
-static int isnullptr(Tree e);
-static Tree multree(int, Tree, Tree);
-static Tree subtree(int, Tree, Tree);
-#define isvoidptr(ty) \
- (isptr(ty) && unqual(ty->type) == voidtype)
-
-Tree (*optree[])(int, Tree, Tree) = {
-#define xx(a,b,c,d,e,f,g) e,
-#define yy(a,b,c,d,e,f,g) e,
-#include "token.h"
-};
-Tree call(Tree f, Type fty, Coordinate src) {
- int n = 0;
- Tree args = NULL, r = NULL, e;
- Type *proto, rty = unqual(freturn(fty));
- Symbol t3 = NULL;
-
- if (fty->u.f.oldstyle)
- proto = NULL;
- else
- proto = fty->u.f.proto;
- if (hascall(f))
- r = f;
- if (isstruct(rty))
- {
- t3 = temporary(AUTO, unqual(rty));
- if (rty->size == 0)
- error("illegal use of incomplete type `%t'\n", rty);
- }
- if (t != ')')
- for (;;) {
- Tree q = pointer(expr1(0));
- if (proto && *proto && *proto != voidtype)
- {
- Type aty;
- q = value(q);
- aty = assign(*proto, q);
- if (aty)
- q = cast(q, aty);
- else
- error("type error in argument %d to %s; found `%t' expected `%t'\n", n + 1, funcname(f),
-
- q->type, *proto);
- if ((isint(q->type) || isenum(q->type))
- && q->type->size != inttype->size)
- q = cast(q, promote(q->type));
- ++proto;
- }
- else
- {
- if (!fty->u.f.oldstyle && *proto == NULL)
- error("too many arguments to %s\n", funcname(f));
- q = value(q);
- if (isarray(q->type) || q->type->size == 0)
- error("type error in argument %d to %s; `%t' is illegal\n", n + 1, funcname(f), q->type);
-
- else
- q = cast(q, promote(q->type));
- }
- if (!IR->wants_argb && isstruct(q->type))
- if (iscallb(q))
- q = addrof(q);
- else {
- Symbol t1 = temporary(AUTO, unqual(q->type));
- q = asgn(t1, q);
- q = tree(RIGHT, ptr(t1->type),
- root(q), lvalue(idtree(t1)));
- }
- if (q->type->size == 0)
- q->type = inttype;
- if (hascall(q))
- r = r ? tree(RIGHT, voidtype, r, q) : q;
- args = tree(mkop(ARG, q->type), q->type, q, args);
- n++;
- if (Aflag >= 2 && n == 32)
- warning("more than 31 arguments in a call to %s\n",
- funcname(f));
- if (t != ',')
- break;
- t = gettok();
- }
- expect(')');
- if (proto && *proto && *proto != voidtype)
- error("insufficient number of arguments to %s\n",
- funcname(f));
- if (r)
- args = tree(RIGHT, voidtype, r, args);
- e = calltree(f, rty, args, t3);
- if (events.calls)
- apply(events.calls, &src, &e);
- return e;
-}
-Tree calltree(Tree f, Type ty, Tree args, Symbol t3) {
- Tree p;
-
- if (args)
- f = tree(RIGHT, f->type, args, f);
- if (isstruct(ty))
- assert(t3),
- p = tree(RIGHT, ty,
- tree(CALL+B, ty, f, addrof(idtree(t3))),
- idtree(t3));
- else {
- Type rty = ty;
- if (isenum(ty))
- rty = unqual(ty)->type;
- if (!isfloat(rty))
- rty = promote(rty);
- p = tree(mkop(CALL, rty), rty, f, NULL);
- if (isptr(ty) || p->type->size > ty->size)
- p = cast(p, ty);
- }
- return p;
-}
-Tree vcall(Symbol func, Type ty, ...) {
- va_list ap;
- Tree args = NULL, e, f = pointer(idtree(func)), r = NULL;
-
- assert(isfunc(func->type));
- if (ty == NULL)
- ty = freturn(func->type);
- va_start(ap, ty);
- while ((e = va_arg(ap, Tree)) != NULL) {
- if (hascall(e))
- r = r == NULL ? e : tree(RIGHT, voidtype, r, e);
- args = tree(mkop(ARG, e->type), e->type, e, args);
- }
- va_end(ap);
- if (r != NULL)
- args = tree(RIGHT, voidtype, r, args);
- return calltree(f, ty, args, NULL);
-}
-int iscallb(Tree e) {
- return e->op == RIGHT && e->kids[0] && e->kids[1]
- && e->kids[0]->op == CALL+B
- && e->kids[1]->op == INDIR+B
- && isaddrop(e->kids[1]->kids[0]->op)
- && e->kids[1]->kids[0]->u.sym->temporary;
-}
-
-static Tree addtree(int op, Tree l, Tree r) {
- Type ty = inttype;
-
- if (isarith(l->type) && isarith(r->type)) {
- ty = binary(l->type, r->type);
- l = cast(l, ty);
- r = cast(r, ty);
- } else if (isptr(l->type) && isint(r->type))
- return addtree(ADD, r, l);
- else if ( isptr(r->type) && isint(l->type)
- && !isfunc(r->type->type))
- {
- long n;
- ty = unqual(r->type);
- n = unqual(ty->type)->size;
- if (n == 0)
- error("unknown size for type `%t'\n", ty->type);
- l = cast(l, promote(l->type));
- if (n > 1)
- l = multree(MUL, cnsttree(signedptr, n), l);
- if (YYcheck && !isaddrop(r->op)) /* omit */
- return nullcall(ty, YYcheck, r, l); /* omit */
- return simplify(ADD, ty, l, r);
- }
-
- else
- typeerror(op, l, r);
- return simplify(op, ty, l, r);
-}
-
-Tree cnsttree(Type ty, ...) {
- Tree p = tree(mkop(CNST,ty), ty, NULL, NULL);
- va_list ap;
-
- va_start(ap, ty);
- switch (ty->op) {
- case INT: p->u.v.i = va_arg(ap, long); break;
- case UNSIGNED:p->u.v.u = va_arg(ap, unsigned long)&ones(8*ty->size); break;
- case FLOAT: p->u.v.d = va_arg(ap, long double); break;
- case POINTER: p->u.v.p = va_arg(ap, void *); break;
- default: assert(0);
- }
- va_end(ap);
- return p;
-}
-
-Tree consttree(unsigned n, Type ty) {
- if (isarray(ty))
- ty = atop(ty);
- else assert(isint(ty));
- return cnsttree(ty, (unsigned long)n);
-}
-static Tree cmptree(int op, Tree l, Tree r) {
- Type ty;
-
- if (isarith(l->type) && isarith(r->type)) {
- ty = binary(l->type, r->type);
- l = cast(l, ty);
- r = cast(r, ty);
- } else if (compatible(l->type, r->type)) {
- ty = unsignedptr;
- l = cast(l, ty);
- r = cast(r, ty);
- } else {
- ty = unsignedtype;
- typeerror(op, l, r);
- }
- return simplify(mkop(op,ty), inttype, l, r);
-}
-static int compatible(Type ty1, Type ty2) {
- return isptr(ty1) && !isfunc(ty1->type)
- && isptr(ty2) && !isfunc(ty2->type)
- && eqtype(unqual(ty1->type), unqual(ty2->type), 0);
-}
-static int isnullptr(Tree e) {
- Type ty = unqual(e->type);
-
- return generic(e->op) == CNST
- && (ty->op == INT && e->u.v.i == 0
- || ty->op == UNSIGNED && e->u.v.u == 0
- || isvoidptr(ty) && e->u.v.p == NULL);
-}
-Tree eqtree(int op, Tree l, Tree r) {
- Type xty = l->type, yty = r->type;
-
- if (isptr(xty) && isnullptr(r)
- || isptr(xty) && !isfunc(xty->type) && isvoidptr(yty)
- || (isptr(xty) && isptr(yty)
- && eqtype(unqual(xty->type), unqual(yty->type), 1))) {
- Type ty = unsignedptr;
- l = cast(l, ty);
- r = cast(r, ty);
- return simplify(mkop(op,ty), inttype, l, r);
- }
- if (isptr(yty) && isnullptr(l)
- || isptr(yty) && !isfunc(yty->type) && isvoidptr(xty))
- return eqtree(op, r, l);
- return cmptree(op, l, r);
-}
-
-Type assign(Type xty, Tree e) {
- Type yty = unqual(e->type);
-
- xty = unqual(xty);
- if (isenum(xty))
- xty = xty->type;
- if (xty->size == 0 || yty->size == 0)
- return NULL;
- if ( isarith(xty) && isarith(yty)
- || isstruct(xty) && xty == yty)
- return xty;
- if (isptr(xty) && isnullptr(e))
- return xty;
- if ((isvoidptr(xty) && isptr(yty)
- || isptr(xty) && isvoidptr(yty))
- && ( (isconst(xty->type) || !isconst(yty->type))
- && (isvolatile(xty->type) || !isvolatile(yty->type))))
- return xty;
-
- if ((isptr(xty) && isptr(yty)
- && eqtype(unqual(xty->type), unqual(yty->type), 1))
- && ( (isconst(xty->type) || !isconst(yty->type))
- && (isvolatile(xty->type) || !isvolatile(yty->type))))
- return xty;
- if (isptr(xty) && isptr(yty)
- && ( (isconst(xty->type) || !isconst(yty->type))
- && (isvolatile(xty->type) || !isvolatile(yty->type)))) {
- Type lty = unqual(xty->type), rty = unqual(yty->type);
- if (isenum(lty) && rty == inttype
- || isenum(rty) && lty == inttype) {
- if (Aflag >= 1)
- warning("assignment between `%t' and `%t' is compiler-dependent\n",
- xty, yty);
- return xty;
- }
- }
- return NULL;
-}
-Tree asgntree(int op, Tree l, Tree r) {
- Type aty, ty;
-
- r = pointer(r);
- ty = assign(l->type, r);
- if (ty)
- r = cast(r, ty);
- else {
- typeerror(ASGN, l, r);
- if (r->type == voidtype)
- r = retype(r, inttype);
- ty = r->type;
- }
- if (l->op != FIELD)
- l = lvalue(l);
- aty = l->type;
- if (isptr(aty))
- aty = unqual(aty)->type;
- if ( isconst(aty)
- || isstruct(aty) && unqual(aty)->u.sym->u.s.cfields)
- if (isaddrop(l->op)
- && !l->u.sym->computed && !l->u.sym->generated)
- error("assignment to const identifier `%s'\n",
- l->u.sym->name);
- else
- error("assignment to const location\n");
- if (l->op == FIELD) {
- long n = 8*l->u.field->type->size - fieldsize(l->u.field);
- if (n > 0 && isunsigned(l->u.field->type))
- r = bittree(BAND, r,
- cnsttree(r->type, (unsigned long)fieldmask(l->u.field)));
- else if (n > 0) {
- if (r->op == CNST+I) {
- n = r->u.v.i;
- if (n&(1<<(fieldsize(l->u.field)-1)))
- n |= ~0UL<<fieldsize(l->u.field);
- r = cnsttree(r->type, n);
- } else
- r = shtree(RSH,
- shtree(LSH, r, cnsttree(inttype, n)),
- cnsttree(inttype, n));
- }
- }
- if (isstruct(ty) && isaddrop(l->op) && iscallb(r))
- return tree(RIGHT, ty,
- tree(CALL+B, ty, r->kids[0]->kids[0], l),
- idtree(l->u.sym));
- return tree(mkop(op,ty), ty, l, r);
-}
-Tree condtree(Tree e, Tree l, Tree r) {
- Symbol t1;
- Type ty, xty = l->type, yty = r->type;
- Tree p;
-
- if (isarith(xty) && isarith(yty))
- ty = binary(xty, yty);
- else if (eqtype(xty, yty, 1))
- ty = unqual(xty);
- else if (isptr(xty) && isnullptr(r))
- ty = xty;
- else if (isnullptr(l) && isptr(yty))
- ty = yty;
- else if (isptr(xty) && !isfunc(xty->type) && isvoidptr(yty)
- || isptr(yty) && !isfunc(yty->type) && isvoidptr(xty))
- ty = voidptype;
- else if ((isptr(xty) && isptr(yty)
- && eqtype(unqual(xty->type), unqual(yty->type), 1)))
- ty = xty;
- else {
- typeerror(COND, l, r);
- return consttree(0, inttype);
- }
- if (isptr(ty)) {
- ty = unqual(unqual(ty)->type);
- if (isptr(xty) && isconst(unqual(xty)->type)
- || isptr(yty) && isconst(unqual(yty)->type))
- ty = qual(CONST, ty);
- if (isptr(xty) && isvolatile(unqual(xty)->type)
- || isptr(yty) && isvolatile(unqual(yty)->type))
- ty = qual(VOLATILE, ty);
- ty = ptr(ty);
- }
- switch (e->op) {
- case CNST+I: return cast(e->u.v.i != 0 ? l : r, ty);
- case CNST+U: return cast(e->u.v.u != 0 ? l : r, ty);
- case CNST+P: return cast(e->u.v.p != 0 ? l : r, ty);
- case CNST+F: return cast(e->u.v.d != 0.0 ? l : r, ty);
- }
- if (ty != voidtype && ty->size > 0) {
- t1 = genident(REGISTER, unqual(ty), level);
- /* t1 = temporary(REGISTER, unqual(ty)); */
- l = asgn(t1, l);
- r = asgn(t1, r);
- } else
- t1 = NULL;
- p = tree(COND, ty, cond(e),
- tree(RIGHT, ty, root(l), root(r)));
- p->u.sym = t1;
- return p;
-}
-/* addrof - address of p */
-Tree addrof(Tree p) {
- Tree q = p;
-
- for (;;)
- switch (generic(q->op)) {
- case RIGHT:
- assert(q->kids[0] || q->kids[1]);
- q = q->kids[1] ? q->kids[1] : q->kids[0];
- continue;
- case ASGN:
- q = q->kids[1];
- continue;
- case COND: {
- Symbol t1 = q->u.sym;
- q->u.sym = 0;
- q = idtree(t1);
- /* fall thru */
- }
- case INDIR:
- if (p == q)
- return q->kids[0];
- q = q->kids[0];
- return tree(RIGHT, q->type, root(p), q);
- default:
- error("addressable object required\n");
- return value(p);
- }
-}
-
-/* andtree - construct tree for l [&& ||] r */
-static Tree andtree(int op, Tree l, Tree r) {
- if (!isscalar(l->type) || !isscalar(r->type))
- typeerror(op, l, r);
- return simplify(op, inttype, cond(l), cond(r));
-}
-
-/* asgn - generate tree for assignment of expr e to symbol p sans qualifiers */
-Tree asgn(Symbol p, Tree e) {
- if (isarray(p->type))
- e = tree(ASGN+B, p->type, idtree(p),
- tree(INDIR+B, e->type, e, NULL));
- else {
- Type ty = p->type;
- p->type = unqual(p->type);
- if (isstruct(p->type) && p->type->u.sym->u.s.cfields) {
- p->type->u.sym->u.s.cfields = 0;
- e = asgntree(ASGN, idtree(p), e);
- p->type->u.sym->u.s.cfields = 1;
- } else
- e = asgntree(ASGN, idtree(p), e);
- p->type = ty;
- }
- return e;
-}
-
-/* bittree - construct tree for l [& | ^ %] r */
-Tree bittree(int op, Tree l, Tree r) {
- Type ty = inttype;
-
- if (isint(l->type) && isint(r->type)) {
- ty = binary(l->type, r->type);
- l = cast(l, ty);
- r = cast(r, ty);
- } else
- typeerror(op, l, r);
- return simplify(op, ty, l, r);
-}
-
-/* multree - construct tree for l [* /] r */
-static Tree multree(int op, Tree l, Tree r) {
- Type ty = inttype;
-
- if (isarith(l->type) && isarith(r->type)) {
- ty = binary(l->type, r->type);
- l = cast(l, ty);
- r = cast(r, ty);
- } else
- typeerror(op, l, r);
- return simplify(op, ty, l, r);
-}
-
-/* shtree - construct tree for l [>> <<] r */
-Tree shtree(int op, Tree l, Tree r) {
- Type ty = inttype;
-
- if (isint(l->type) && isint(r->type)) {
- ty = promote(l->type);
- l = cast(l, ty);
- r = cast(r, inttype);
- } else
- typeerror(op, l, r);
- return simplify(op, ty, l, r);
-}
-
-/* subtree - construct tree for l - r */
-static Tree subtree(int op, Tree l, Tree r) {
- long n;
- Type ty = inttype;
-
- if (isarith(l->type) && isarith(r->type)) {
- ty = binary(l->type, r->type);
- l = cast(l, ty);
- r = cast(r, ty);
- } else if (isptr(l->type) && !isfunc(l->type->type) && isint(r->type)) {
- ty = unqual(l->type);
- n = unqual(ty->type)->size;
- if (n == 0)
- error("unknown size for type `%t'\n", ty->type);
- r = cast(r, promote(r->type));
- if (n > 1)
- r = multree(MUL, cnsttree(signedptr, n), r);
- if (isunsigned(r->type))
- r = cast(r, unsignedptr);
- else
- r = cast(r, signedptr);
- return simplify(SUB+P, ty, l, r);
- } else if (compatible(l->type, r->type)) {
- ty = unqual(l->type);
- n = unqual(ty->type)->size;
- if (n == 0)
- error("unknown size for type `%t'\n", ty->type);
- l = simplify(SUB+U, unsignedptr,
- cast(l, unsignedptr), cast(r, unsignedptr));
- return simplify(DIV+I, longtype,
- cast(l, longtype), cnsttree(longtype, n));
- } else
- typeerror(op, l, r);
- return simplify(op, ty, l, r);
-}
-
-/* typeerror - issue "operands of op have illegal types `l' and `r'" */
-void typeerror(int op, Tree l, Tree r) {
- int i;
- static struct { int op; char *name; } ops[] = {
- ASGN, "=", INDIR, "*", NEG, "-",
- ADD, "+", SUB, "-", LSH, "<<",
- MOD, "%", RSH, ">>", BAND, "&",
- BCOM, "~", BOR, "|", BXOR, "^",
- DIV, "/", MUL, "*", EQ, "==",
- GE, ">=", GT, ">", LE, "<=",
- LT, "<", NE, "!=", AND, "&&",
- NOT, "!", OR, "||", COND, "?:",
- 0, 0
- };
-
- op = generic(op);
- for (i = 0; ops[i].op; i++)
- if (op == ops[i].op)
- break;
- assert(ops[i].name);
- if (r)
- error("operands of %s have illegal types `%t' and `%t'\n",
- ops[i].name, l->type, r->type);
- else
- error("operand of unary %s has illegal type `%t'\n", ops[i].name,
- l->type);
-}
+#include "c.h"
+
+
+static Tree addtree(int, Tree, Tree);
+static Tree andtree(int, Tree, Tree);
+static Tree cmptree(int, Tree, Tree);
+static int compatible(Type, Type);
+static int isnullptr(Tree e);
+static Tree multree(int, Tree, Tree);
+static Tree subtree(int, Tree, Tree);
+#define isvoidptr(ty) \
+ (isptr(ty) && unqual(ty->type) == voidtype)
+
+Tree (*optree[])(int, Tree, Tree) = {
+#define xx(a,b,c,d,e,f,g) e,
+#define yy(a,b,c,d,e,f,g) e,
+#include "token.h"
+};
+Tree call(Tree f, Type fty, Coordinate src) {
+ int n = 0;
+ Tree args = NULL, r = NULL, e;
+ Type *proto, rty = unqual(freturn(fty));
+ Symbol t3 = NULL;
+
+ if (fty->u.f.oldstyle)
+ proto = NULL;
+ else
+ proto = fty->u.f.proto;
+ if (hascall(f))
+ r = f;
+ if (isstruct(rty))
+ {
+ t3 = temporary(AUTO, unqual(rty));
+ if (rty->size == 0)
+ error("illegal use of incomplete type `%t'\n", rty);
+ }
+ if (t != ')')
+ for (;;) {
+ Tree q = pointer(expr1(0));
+ if (proto && *proto && *proto != voidtype)
+ {
+ Type aty;
+ q = value(q);
+ aty = assign(*proto, q);
+ if (aty)
+ q = cast(q, aty);
+ else
+ error("type error in argument %d to %s; found `%t' expected `%t'\n", n + 1, funcname(f),
+
+ q->type, *proto);
+ if ((isint(q->type) || isenum(q->type))
+ && q->type->size != inttype->size)
+ q = cast(q, promote(q->type));
+ ++proto;
+ }
+ else
+ {
+ if (!fty->u.f.oldstyle && *proto == NULL)
+ error("too many arguments to %s\n", funcname(f));
+ q = value(q);
+ if (isarray(q->type) || q->type->size == 0)
+ error("type error in argument %d to %s; `%t' is illegal\n", n + 1, funcname(f), q->type);
+
+ else
+ q = cast(q, promote(q->type));
+ }
+ if (!IR->wants_argb && isstruct(q->type))
+ if (iscallb(q))
+ q = addrof(q);
+ else {
+ Symbol t1 = temporary(AUTO, unqual(q->type));
+ q = asgn(t1, q);
+ q = tree(RIGHT, ptr(t1->type),
+ root(q), lvalue(idtree(t1)));
+ }
+ if (q->type->size == 0)
+ q->type = inttype;
+ if (hascall(q))
+ r = r ? tree(RIGHT, voidtype, r, q) : q;
+ args = tree(mkop(ARG, q->type), q->type, q, args);
+ n++;
+ if (Aflag >= 2 && n == 32)
+ warning("more than 31 arguments in a call to %s\n",
+ funcname(f));
+ if (t != ',')
+ break;
+ t = gettok();
+ }
+ expect(')');
+ if (proto && *proto && *proto != voidtype)
+ error("insufficient number of arguments to %s\n",
+ funcname(f));
+ if (r)
+ args = tree(RIGHT, voidtype, r, args);
+ e = calltree(f, rty, args, t3);
+ if (events.calls)
+ apply(events.calls, &src, &e);
+ return e;
+}
+Tree calltree(Tree f, Type ty, Tree args, Symbol t3) {
+ Tree p;
+
+ if (args)
+ f = tree(RIGHT, f->type, args, f);
+ if (isstruct(ty))
+ assert(t3),
+ p = tree(RIGHT, ty,
+ tree(CALL+B, ty, f, addrof(idtree(t3))),
+ idtree(t3));
+ else {
+ Type rty = ty;
+ if (isenum(ty))
+ rty = unqual(ty)->type;
+ if (!isfloat(rty))
+ rty = promote(rty);
+ p = tree(mkop(CALL, rty), rty, f, NULL);
+ if (isptr(ty) || p->type->size > ty->size)
+ p = cast(p, ty);
+ }
+ return p;
+}
+Tree vcall(Symbol func, Type ty, ...) {
+ va_list ap;
+ Tree args = NULL, e, f = pointer(idtree(func)), r = NULL;
+
+ assert(isfunc(func->type));
+ if (ty == NULL)
+ ty = freturn(func->type);
+ va_start(ap, ty);
+ while ((e = va_arg(ap, Tree)) != NULL) {
+ if (hascall(e))
+ r = r == NULL ? e : tree(RIGHT, voidtype, r, e);
+ args = tree(mkop(ARG, e->type), e->type, e, args);
+ }
+ va_end(ap);
+ if (r != NULL)
+ args = tree(RIGHT, voidtype, r, args);
+ return calltree(f, ty, args, NULL);
+}
+int iscallb(Tree e) {
+ return e->op == RIGHT && e->kids[0] && e->kids[1]
+ && e->kids[0]->op == CALL+B
+ && e->kids[1]->op == INDIR+B
+ && isaddrop(e->kids[1]->kids[0]->op)
+ && e->kids[1]->kids[0]->u.sym->temporary;
+}
+
+static Tree addtree(int op, Tree l, Tree r) {
+ Type ty = inttype;
+
+ if (isarith(l->type) && isarith(r->type)) {
+ ty = binary(l->type, r->type);
+ l = cast(l, ty);
+ r = cast(r, ty);
+ } else if (isptr(l->type) && isint(r->type))
+ return addtree(ADD, r, l);
+ else if ( isptr(r->type) && isint(l->type)
+ && !isfunc(r->type->type))
+ {
+ long n;
+ ty = unqual(r->type);
+ n = unqual(ty->type)->size;
+ if (n == 0)
+ error("unknown size for type `%t'\n", ty->type);
+ l = cast(l, promote(l->type));
+ if (n > 1)
+ l = multree(MUL, cnsttree(signedptr, n), l);
+ if (YYcheck && !isaddrop(r->op)) /* omit */
+ return nullcall(ty, YYcheck, r, l); /* omit */
+ return simplify(ADD, ty, l, r);
+ }
+
+ else
+ typeerror(op, l, r);
+ return simplify(op, ty, l, r);
+}
+
+Tree cnsttree(Type ty, ...) {
+ Tree p = tree(mkop(CNST,ty), ty, NULL, NULL);
+ va_list ap;
+
+ va_start(ap, ty);
+ switch (ty->op) {
+ case INT: p->u.v.i = va_arg(ap, long); break;
+ case UNSIGNED:p->u.v.u = va_arg(ap, unsigned long)&ones(8*ty->size); break;
+ case FLOAT: p->u.v.d = va_arg(ap, long double); break;
+ case POINTER: p->u.v.p = va_arg(ap, void *); break;
+ default: assert(0);
+ }
+ va_end(ap);
+ return p;
+}
+
+Tree consttree(unsigned n, Type ty) {
+ if (isarray(ty))
+ ty = atop(ty);
+ else assert(isint(ty));
+ return cnsttree(ty, (unsigned long)n);
+}
+static Tree cmptree(int op, Tree l, Tree r) {
+ Type ty;
+
+ if (isarith(l->type) && isarith(r->type)) {
+ ty = binary(l->type, r->type);
+ l = cast(l, ty);
+ r = cast(r, ty);
+ } else if (compatible(l->type, r->type)) {
+ ty = unsignedptr;
+ l = cast(l, ty);
+ r = cast(r, ty);
+ } else {
+ ty = unsignedtype;
+ typeerror(op, l, r);
+ }
+ return simplify(mkop(op,ty), inttype, l, r);
+}
+static int compatible(Type ty1, Type ty2) {
+ return isptr(ty1) && !isfunc(ty1->type)
+ && isptr(ty2) && !isfunc(ty2->type)
+ && eqtype(unqual(ty1->type), unqual(ty2->type), 0);
+}
+static int isnullptr(Tree e) {
+ Type ty = unqual(e->type);
+
+ return generic(e->op) == CNST
+ && (ty->op == INT && e->u.v.i == 0
+ || ty->op == UNSIGNED && e->u.v.u == 0
+ || isvoidptr(ty) && e->u.v.p == NULL);
+}
+Tree eqtree(int op, Tree l, Tree r) {
+ Type xty = l->type, yty = r->type;
+
+ if (isptr(xty) && isnullptr(r)
+ || isptr(xty) && !isfunc(xty->type) && isvoidptr(yty)
+ || (isptr(xty) && isptr(yty)
+ && eqtype(unqual(xty->type), unqual(yty->type), 1))) {
+ Type ty = unsignedptr;
+ l = cast(l, ty);
+ r = cast(r, ty);
+ return simplify(mkop(op,ty), inttype, l, r);
+ }
+ if (isptr(yty) && isnullptr(l)
+ || isptr(yty) && !isfunc(yty->type) && isvoidptr(xty))
+ return eqtree(op, r, l);
+ return cmptree(op, l, r);
+}
+
+Type assign(Type xty, Tree e) {
+ Type yty = unqual(e->type);
+
+ xty = unqual(xty);
+ if (isenum(xty))
+ xty = xty->type;
+ if (xty->size == 0 || yty->size == 0)
+ return NULL;
+ if ( isarith(xty) && isarith(yty)
+ || isstruct(xty) && xty == yty)
+ return xty;
+ if (isptr(xty) && isnullptr(e))
+ return xty;
+ if ((isvoidptr(xty) && isptr(yty)
+ || isptr(xty) && isvoidptr(yty))
+ && ( (isconst(xty->type) || !isconst(yty->type))
+ && (isvolatile(xty->type) || !isvolatile(yty->type))))
+ return xty;
+
+ if ((isptr(xty) && isptr(yty)
+ && eqtype(unqual(xty->type), unqual(yty->type), 1))
+ && ( (isconst(xty->type) || !isconst(yty->type))
+ && (isvolatile(xty->type) || !isvolatile(yty->type))))
+ return xty;
+ if (isptr(xty) && isptr(yty)
+ && ( (isconst(xty->type) || !isconst(yty->type))
+ && (isvolatile(xty->type) || !isvolatile(yty->type)))) {
+ Type lty = unqual(xty->type), rty = unqual(yty->type);
+ if (isenum(lty) && rty == inttype
+ || isenum(rty) && lty == inttype) {
+ if (Aflag >= 1)
+ warning("assignment between `%t' and `%t' is compiler-dependent\n",
+ xty, yty);
+ return xty;
+ }
+ }
+ return NULL;
+}
+Tree asgntree(int op, Tree l, Tree r) {
+ Type aty, ty;
+
+ r = pointer(r);
+ ty = assign(l->type, r);
+ if (ty)
+ r = cast(r, ty);
+ else {
+ typeerror(ASGN, l, r);
+ if (r->type == voidtype)
+ r = retype(r, inttype);
+ ty = r->type;
+ }
+ if (l->op != FIELD)
+ l = lvalue(l);
+ aty = l->type;
+ if (isptr(aty))
+ aty = unqual(aty)->type;
+ if ( isconst(aty)
+ || isstruct(aty) && unqual(aty)->u.sym->u.s.cfields)
+ if (isaddrop(l->op)
+ && !l->u.sym->computed && !l->u.sym->generated)
+ error("assignment to const identifier `%s'\n",
+ l->u.sym->name);
+ else
+ error("assignment to const location\n");
+ if (l->op == FIELD) {
+ long n = 8*l->u.field->type->size - fieldsize(l->u.field);
+ if (n > 0 && isunsigned(l->u.field->type))
+ r = bittree(BAND, r,
+ cnsttree(r->type, (unsigned long)fieldmask(l->u.field)));
+ else if (n > 0) {
+ if (r->op == CNST+I) {
+ n = r->u.v.i;
+ if (n&(1<<(fieldsize(l->u.field)-1)))
+ n |= ~0UL<<fieldsize(l->u.field);
+ r = cnsttree(r->type, n);
+ } else
+ r = shtree(RSH,
+ shtree(LSH, r, cnsttree(inttype, n)),
+ cnsttree(inttype, n));
+ }
+ }
+ if (isstruct(ty) && isaddrop(l->op) && iscallb(r))
+ return tree(RIGHT, ty,
+ tree(CALL+B, ty, r->kids[0]->kids[0], l),
+ idtree(l->u.sym));
+ return tree(mkop(op,ty), ty, l, r);
+}
+Tree condtree(Tree e, Tree l, Tree r) {
+ Symbol t1;
+ Type ty, xty = l->type, yty = r->type;
+ Tree p;
+
+ if (isarith(xty) && isarith(yty))
+ ty = binary(xty, yty);
+ else if (eqtype(xty, yty, 1))
+ ty = unqual(xty);
+ else if (isptr(xty) && isnullptr(r))
+ ty = xty;
+ else if (isnullptr(l) && isptr(yty))
+ ty = yty;
+ else if (isptr(xty) && !isfunc(xty->type) && isvoidptr(yty)
+ || isptr(yty) && !isfunc(yty->type) && isvoidptr(xty))
+ ty = voidptype;
+ else if ((isptr(xty) && isptr(yty)
+ && eqtype(unqual(xty->type), unqual(yty->type), 1)))
+ ty = xty;
+ else {
+ typeerror(COND, l, r);
+ return consttree(0, inttype);
+ }
+ if (isptr(ty)) {
+ ty = unqual(unqual(ty)->type);
+ if (isptr(xty) && isconst(unqual(xty)->type)
+ || isptr(yty) && isconst(unqual(yty)->type))
+ ty = qual(CONST, ty);
+ if (isptr(xty) && isvolatile(unqual(xty)->type)
+ || isptr(yty) && isvolatile(unqual(yty)->type))
+ ty = qual(VOLATILE, ty);
+ ty = ptr(ty);
+ }
+ switch (e->op) {
+ case CNST+I: return cast(e->u.v.i != 0 ? l : r, ty);
+ case CNST+U: return cast(e->u.v.u != 0 ? l : r, ty);
+ case CNST+P: return cast(e->u.v.p != 0 ? l : r, ty);
+ case CNST+F: return cast(e->u.v.d != 0.0 ? l : r, ty);
+ }
+ if (ty != voidtype && ty->size > 0) {
+ t1 = genident(REGISTER, unqual(ty), level);
+ /* t1 = temporary(REGISTER, unqual(ty)); */
+ l = asgn(t1, l);
+ r = asgn(t1, r);
+ } else
+ t1 = NULL;
+ p = tree(COND, ty, cond(e),
+ tree(RIGHT, ty, root(l), root(r)));
+ p->u.sym = t1;
+ return p;
+}
+/* addrof - address of p */
+Tree addrof(Tree p) {
+ Tree q = p;
+
+ for (;;)
+ switch (generic(q->op)) {
+ case RIGHT:
+ assert(q->kids[0] || q->kids[1]);
+ q = q->kids[1] ? q->kids[1] : q->kids[0];
+ continue;
+ case ASGN:
+ q = q->kids[1];
+ continue;
+ case COND: {
+ Symbol t1 = q->u.sym;
+ q->u.sym = 0;
+ q = idtree(t1);
+ /* fall thru */
+ }
+ case INDIR:
+ if (p == q)
+ return q->kids[0];
+ q = q->kids[0];
+ return tree(RIGHT, q->type, root(p), q);
+ default:
+ error("addressable object required\n");
+ return value(p);
+ }
+}
+
+/* andtree - construct tree for l [&& ||] r */
+static Tree andtree(int op, Tree l, Tree r) {
+ if (!isscalar(l->type) || !isscalar(r->type))
+ typeerror(op, l, r);
+ return simplify(op, inttype, cond(l), cond(r));
+}
+
+/* asgn - generate tree for assignment of expr e to symbol p sans qualifiers */
+Tree asgn(Symbol p, Tree e) {
+ if (isarray(p->type))
+ e = tree(ASGN+B, p->type, idtree(p),
+ tree(INDIR+B, e->type, e, NULL));
+ else {
+ Type ty = p->type;
+ p->type = unqual(p->type);
+ if (isstruct(p->type) && p->type->u.sym->u.s.cfields) {
+ p->type->u.sym->u.s.cfields = 0;
+ e = asgntree(ASGN, idtree(p), e);
+ p->type->u.sym->u.s.cfields = 1;
+ } else
+ e = asgntree(ASGN, idtree(p), e);
+ p->type = ty;
+ }
+ return e;
+}
+
+/* bittree - construct tree for l [& | ^ %] r */
+Tree bittree(int op, Tree l, Tree r) {
+ Type ty = inttype;
+
+ if (isint(l->type) && isint(r->type)) {
+ ty = binary(l->type, r->type);
+ l = cast(l, ty);
+ r = cast(r, ty);
+ } else
+ typeerror(op, l, r);
+ return simplify(op, ty, l, r);
+}
+
+/* multree - construct tree for l [* /] r */
+static Tree multree(int op, Tree l, Tree r) {
+ Type ty = inttype;
+
+ if (isarith(l->type) && isarith(r->type)) {
+ ty = binary(l->type, r->type);
+ l = cast(l, ty);
+ r = cast(r, ty);
+ } else
+ typeerror(op, l, r);
+ return simplify(op, ty, l, r);
+}
+
+/* shtree - construct tree for l [>> <<] r */
+Tree shtree(int op, Tree l, Tree r) {
+ Type ty = inttype;
+
+ if (isint(l->type) && isint(r->type)) {
+ ty = promote(l->type);
+ l = cast(l, ty);
+ r = cast(r, inttype);
+ } else
+ typeerror(op, l, r);
+ return simplify(op, ty, l, r);
+}
+
+/* subtree - construct tree for l - r */
+static Tree subtree(int op, Tree l, Tree r) {
+ long n;
+ Type ty = inttype;
+
+ if (isarith(l->type) && isarith(r->type)) {
+ ty = binary(l->type, r->type);
+ l = cast(l, ty);
+ r = cast(r, ty);
+ } else if (isptr(l->type) && !isfunc(l->type->type) && isint(r->type)) {
+ ty = unqual(l->type);
+ n = unqual(ty->type)->size;
+ if (n == 0)
+ error("unknown size for type `%t'\n", ty->type);
+ r = cast(r, promote(r->type));
+ if (n > 1)
+ r = multree(MUL, cnsttree(signedptr, n), r);
+ if (isunsigned(r->type))
+ r = cast(r, unsignedptr);
+ else
+ r = cast(r, signedptr);
+ return simplify(SUB+P, ty, l, r);
+ } else if (compatible(l->type, r->type)) {
+ ty = unqual(l->type);
+ n = unqual(ty->type)->size;
+ if (n == 0)
+ error("unknown size for type `%t'\n", ty->type);
+ l = simplify(SUB+U, unsignedptr,
+ cast(l, unsignedptr), cast(r, unsignedptr));
+ return simplify(DIV+I, longtype,
+ cast(l, longtype), cnsttree(longtype, n));
+ } else
+ typeerror(op, l, r);
+ return simplify(op, ty, l, r);
+}
+
+/* typeerror - issue "operands of op have illegal types `l' and `r'" */
+void typeerror(int op, Tree l, Tree r) {
+ int i;
+ static struct { int op; char *name; } ops[] = {
+ ASGN, "=", INDIR, "*", NEG, "-",
+ ADD, "+", SUB, "-", LSH, "<<",
+ MOD, "%", RSH, ">>", BAND, "&",
+ BCOM, "~", BOR, "|", BXOR, "^",
+ DIV, "/", MUL, "*", EQ, "==",
+ GE, ">=", GT, ">", LE, "<=",
+ LT, "<", NE, "!=", AND, "&&",
+ NOT, "!", OR, "||", COND, "?:",
+ 0, 0
+ };
+
+ op = generic(op);
+ for (i = 0; ops[i].op; i++)
+ if (op == ops[i].op)
+ break;
+ assert(ops[i].name);
+ if (r)
+ error("operands of %s have illegal types `%t' and `%t'\n",
+ ops[i].name, l->type, r->type);
+ else
+ error("operand of unary %s has illegal type `%t'\n", ops[i].name,
+ l->type);
+}
diff --git a/lcc/src/error.c b/lcc/src/error.c
index 56d164c..2187c10 100755
--- a/lcc/src/error.c
+++ b/lcc/src/error.c
@@ -1,137 +1,137 @@
-#include "c.h"
-
-
-static void printtoken(void);
-int errcnt = 0;
-int errlimit = 20;
-char kind[] = {
-#define xx(a,b,c,d,e,f,g) f,
-#define yy(a,b,c,d,e,f,g) f,
-#include "token.h"
-};
-int wflag; /* != 0 to suppress warning messages */
-
-void test(int tok, char set[]) {
- if (t == tok)
- t = gettok();
- else {
- expect(tok);
- skipto(tok, set);
- if (t == tok)
- t = gettok();
- }
-}
-void expect(int tok) {
- if (t == tok)
- t = gettok();
- else {
- error("syntax error; found");
- printtoken();
- fprint(stderr, " expecting `%k'\n", tok);
- }
-}
-void error(const char *fmt, ...) {
- va_list ap;
-
- if (errcnt++ >= errlimit) {
- errcnt = -1;
- error("too many errors\n");
- exit(1);
- }
- va_start(ap, fmt);
- if (firstfile != file && firstfile && *firstfile)
- fprint(stderr, "%s: ", firstfile);
- fprint(stderr, "%w: ", &src);
- vfprint(stderr, NULL, fmt, ap);
- va_end(ap);
-}
-
-void skipto(int tok, char set[]) {
- int n;
- char *s;
-
- assert(set);
- for (n = 0; t != EOI && t != tok; t = gettok()) {
- for (s = set; *s && kind[t] != *s; s++)
- ;
- if (kind[t] == *s)
- break;
- if (n++ == 0)
- error("skipping");
- if (n <= 8)
- printtoken();
- else if (n == 9)
- fprint(stderr, " ...");
- }
- if (n > 8) {
- fprint(stderr, " up to");
- printtoken();
- }
- if (n > 0)
- fprint(stderr, "\n");
-}
-/* fatal - issue fatal error message and exit */
-int fatal(const char *name, const char *fmt, int n) {
- print("\n");
- errcnt = -1;
- error("compiler error in %s--", name);
- fprint(stderr, fmt, n);
- exit(EXIT_FAILURE);
- return 0;
-}
-
-/* printtoken - print current token preceeded by a space */
-static void printtoken(void) {
- switch (t) {
- case ID: fprint(stderr, " `%s'", token); break;
- case ICON:
- fprint(stderr, " `%s'", vtoa(tsym->type, tsym->u.c.v));
- break;
- case SCON: {
- int i, n;
- if (ischar(tsym->type->type)) {
- char *s = tsym->u.c.v.p;
- n = tsym->type->size;
- fprint(stderr, " \"");
- for (i = 0; i < 20 && i < n && *s; s++, i++)
- if (*s < ' ' || *s >= 0177)
- fprint(stderr, "\\%o", *s);
- else
- fprint(stderr, "%c", *s);
- } else { /* wchar_t string */
- unsigned int *s = tsym->u.c.v.p;
- assert(tsym->type->type->size == widechar->size);
- n = tsym->type->size/widechar->size;
- fprint(stderr, " L\"");
- for (i = 0; i < 20 && i < n && *s; s++, i++)
- if (*s < ' ' || *s >= 0177)
- fprint(stderr, "\\x%x", *s);
- else
- fprint(stderr, "%c", *s);
- }
- if (i < n)
- fprint(stderr, " ...");
- else
- fprint(stderr, "\"");
- break;
- }
- case FCON:
- fprint(stderr, " `%S'", token, (char*)cp - token);
- break;
- case '`': case '\'': fprint(stderr, " \"%k\"", t); break;
- default: fprint(stderr, " `%k'", t);
- }
-}
-
-/* warning - issue warning error message */
-void warning(const char *fmt, ...) {
- va_list ap;
-
- va_start(ap, fmt);
- if (wflag == 0) {
- errcnt--;
- error("warning: ");
- vfprint(stderr, NULL, fmt, ap);
- }
- va_end(ap);
-}
+#include "c.h"
+
+
+static void printtoken(void);
+int errcnt = 0;
+int errlimit = 20;
+char kind[] = {
+#define xx(a,b,c,d,e,f,g) f,
+#define yy(a,b,c,d,e,f,g) f,
+#include "token.h"
+};
+int wflag; /* != 0 to suppress warning messages */
+
+void test(int tok, char set[]) {
+ if (t == tok)
+ t = gettok();
+ else {
+ expect(tok);
+ skipto(tok, set);
+ if (t == tok)
+ t = gettok();
+ }
+}
+void expect(int tok) {
+ if (t == tok)
+ t = gettok();
+ else {
+ error("syntax error; found");
+ printtoken();
+ fprint(stderr, " expecting `%k'\n", tok);
+ }
+}
+void error(const char *fmt, ...) {
+ va_list ap;
+
+ if (errcnt++ >= errlimit) {
+ errcnt = -1;
+ error("too many errors\n");
+ exit(1);
+ }
+ va_start(ap, fmt);
+ if (firstfile != file && firstfile && *firstfile)
+ fprint(stderr, "%s: ", firstfile);
+ fprint(stderr, "%w: ", &src);
+ vfprint(stderr, NULL, fmt, ap);
+ va_end(ap);
+}
+
+void skipto(int tok, char set[]) {
+ int n;
+ char *s;
+
+ assert(set);
+ for (n = 0; t != EOI && t != tok; t = gettok()) {
+ for (s = set; *s && kind[t] != *s; s++)
+ ;
+ if (kind[t] == *s)
+ break;
+ if (n++ == 0)
+ error("skipping");
+ if (n <= 8)
+ printtoken();
+ else if (n == 9)
+ fprint(stderr, " ...");
+ }
+ if (n > 8) {
+ fprint(stderr, " up to");
+ printtoken();
+ }
+ if (n > 0)
+ fprint(stderr, "\n");
+}
+/* fatal - issue fatal error message and exit */
+int fatal(const char *name, const char *fmt, int n) {
+ print("\n");
+ errcnt = -1;
+ error("compiler error in %s--", name);
+ fprint(stderr, fmt, n);
+ exit(EXIT_FAILURE);
+ return 0;
+}
+
+/* printtoken - print current token preceeded by a space */
+static void printtoken(void) {
+ switch (t) {
+ case ID: fprint(stderr, " `%s'", token); break;
+ case ICON:
+ fprint(stderr, " `%s'", vtoa(tsym->type, tsym->u.c.v));
+ break;
+ case SCON: {
+ int i, n;
+ if (ischar(tsym->type->type)) {
+ char *s = tsym->u.c.v.p;
+ n = tsym->type->size;
+ fprint(stderr, " \"");
+ for (i = 0; i < 20 && i < n && *s; s++, i++)
+ if (*s < ' ' || *s >= 0177)
+ fprint(stderr, "\\%o", *s);
+ else
+ fprint(stderr, "%c", *s);
+ } else { /* wchar_t string */
+ unsigned int *s = tsym->u.c.v.p;
+ assert(tsym->type->type->size == widechar->size);
+ n = tsym->type->size/widechar->size;
+ fprint(stderr, " L\"");
+ for (i = 0; i < 20 && i < n && *s; s++, i++)
+ if (*s < ' ' || *s >= 0177)
+ fprint(stderr, "\\x%x", *s);
+ else
+ fprint(stderr, "%c", *s);
+ }
+ if (i < n)
+ fprint(stderr, " ...");
+ else
+ fprint(stderr, "\"");
+ break;
+ }
+ case FCON:
+ fprint(stderr, " `%S'", token, (char*)cp - token);
+ break;
+ case '`': case '\'': fprint(stderr, " \"%k\"", t); break;
+ default: fprint(stderr, " `%k'", t);
+ }
+}
+
+/* warning - issue warning error message */
+void warning(const char *fmt, ...) {
+ va_list ap;
+
+ va_start(ap, fmt);
+ if (wflag == 0) {
+ errcnt--;
+ error("warning: ");
+ vfprint(stderr, NULL, fmt, ap);
+ }
+ va_end(ap);
+}
diff --git a/lcc/src/event.c b/lcc/src/event.c
index 12f409f..4549e3f 100755
--- a/lcc/src/event.c
+++ b/lcc/src/event.c
@@ -1,28 +1,28 @@
-#include "c.h"
-
-
-struct entry {
- Apply func;
- void *cl;
-};
-
-Events events;
-void attach(Apply func, void *cl, List *list) {
- struct entry *p;
-
- NEW(p, PERM);
- p->func = func;
- p->cl = cl;
- *list = append(p, *list);
-}
-void apply(List event, void *arg1, void *arg2) {
- if (event) {
- List lp = event;
- do {
- struct entry *p = lp->x;
- (*p->func)(p->cl, arg1, arg2);
- lp = lp->link;
- } while (lp != event);
- }
-}
-
+#include "c.h"
+
+
+struct entry {
+ Apply func;
+ void *cl;
+};
+
+Events events;
+void attach(Apply func, void *cl, List *list) {
+ struct entry *p;
+
+ NEW(p, PERM);
+ p->func = func;
+ p->cl = cl;
+ *list = append(p, *list);
+}
+void apply(List event, void *arg1, void *arg2) {
+ if (event) {
+ List lp = event;
+ do {
+ struct entry *p = lp->x;
+ (*p->func)(p->cl, arg1, arg2);
+ lp = lp->link;
+ } while (lp != event);
+ }
+}
+
diff --git a/lcc/src/expr.c b/lcc/src/expr.c
index 30b79cc..79f8f40 100755
--- a/lcc/src/expr.c
+++ b/lcc/src/expr.c
@@ -1,709 +1,709 @@
-#include "c.h"
-
-
-static char prec[] = {
-#define xx(a,b,c,d,e,f,g) c,
-#define yy(a,b,c,d,e,f,g) c,
-#include "token.h"
-};
-static int oper[] = {
-#define xx(a,b,c,d,e,f,g) d,
-#define yy(a,b,c,d,e,f,g) d,
-#include "token.h"
-};
-float refinc = 1.0;
-static Tree expr2(void);
-static Tree expr3(int);
-static Tree nullcheck(Tree);
-static Tree postfix(Tree);
-static Tree unary(void);
-static Tree primary(void);
-static Type super(Type ty);
-
-static Type super(Type ty) {
- switch (ty->op) {
- case INT:
- if (ty->size < inttype->size)
- return inttype;
- break;
- case UNSIGNED:
- if (ty->size < unsignedtype->size)
- return unsignedtype;
- break;
- case POINTER:
- return unsignedptr;
- }
- return ty;
-}
-Tree expr(int tok) {
- static char stop[] = { IF, ID, '}', 0 };
- Tree p = expr1(0);
-
- while (t == ',') {
- Tree q;
- t = gettok();
- q = pointer(expr1(0));
- p = tree(RIGHT, q->type, root(value(p)), q);
- }
- if (tok)
- test(tok, stop);
- return p;
-}
-Tree expr0(int tok) {
- return root(expr(tok));
-}
-Tree expr1(int tok) {
- static char stop[] = { IF, ID, 0 };
- Tree p = expr2();
-
- if (t == '='
- || (prec[t] >= 6 && prec[t] <= 8)
- || (prec[t] >= 11 && prec[t] <= 13)) {
- int op = t;
- t = gettok();
- if (oper[op] == ASGN)
- p = asgntree(ASGN, p, value(expr1(0)));
- else
- {
- expect('=');
- p = incr(op, p, expr1(0));
- }
- }
- if (tok)
- test(tok, stop);
- return p;
-}
-Tree incr(int op, Tree v, Tree e) {
- return asgntree(ASGN, v, (*optree[op])(oper[op], v, e));
-}
-static Tree expr2(void) {
- Tree p = expr3(4);
-
- if (t == '?') {
- Tree l, r;
- Coordinate pts[2];
- if (Aflag > 1 && isfunc(p->type))
- warning("%s used in a conditional expression\n",
- funcname(p));
- p = pointer(p);
- t = gettok();
- pts[0] = src;
- l = pointer(expr(':'));
- pts[1] = src;
- r = pointer(expr2());
- if (events.points)
- {
- apply(events.points, &pts[0], &l);
- apply(events.points, &pts[1], &r);
- }
- p = condtree(p, l, r);
- }
- return p;
-}
-Tree value(Tree p) {
- int op = generic(rightkid(p)->op);
-
- if (p->type != voidtype
- && (op==AND || op==OR || op==NOT || op==EQ || op==NE
- || op== LE || op==LT || op== GE || op==GT))
- p = condtree(p, consttree(1, inttype),
- consttree(0, inttype));
- return p;
-}
-static Tree expr3(int k) {
- int k1;
- Tree p = unary();
-
- for (k1 = prec[t]; k1 >= k; k1--)
- while (prec[t] == k1 && *cp != '=') {
- Tree r;
- Coordinate pt;
- int op = t;
- t = gettok();
- pt = src;
- p = pointer(p);
- if (op == ANDAND || op == OROR) {
- r = pointer(expr3(k1));
- if (events.points)
- apply(events.points, &pt, &r);
- } else
- r = pointer(expr3(k1 + 1));
- p = (*optree[op])(oper[op], p, r);
- }
- return p;
-}
-static Tree unary(void) {
- Tree p;
-
- switch (t) {
- case '*': t = gettok(); p = unary(); p = pointer(p);
- if (isptr(p->type)
- && (isfunc(p->type->type) || isarray(p->type->type)))
- p = retype(p, p->type->type);
- else {
- if (YYnull)
- p = nullcheck(p);
- p = rvalue(p);
- } break;
- case '&': t = gettok(); p = unary(); if (isarray(p->type) || isfunc(p->type))
- p = retype(p, ptr(p->type));
- else
- p = lvalue(p);
- if (isaddrop(p->op) && p->u.sym->sclass == REGISTER)
- error("invalid operand of unary &; `%s' is declared register\n", p->u.sym->name);
-
- else if (isaddrop(p->op))
- p->u.sym->addressed = 1;
- break;
- case '+': t = gettok(); p = unary(); p = pointer(p);
- if (isarith(p->type))
- p = cast(p, promote(p->type));
- else
- typeerror(ADD, p, NULL); break;
- case '-': t = gettok(); p = unary(); p = pointer(p);
- if (isarith(p->type)) {
- Type ty = promote(p->type);
- p = cast(p, ty);
- if (isunsigned(ty)) {
- warning("unsigned operand of unary -\n");
- p = simplify(ADD, ty, simplify(BCOM, ty, p, NULL), cnsttree(ty, 1UL));
- } else
- p = simplify(NEG, ty, p, NULL);
- } else
- typeerror(SUB, p, NULL); break;
- case '~': t = gettok(); p = unary(); p = pointer(p);
- if (isint(p->type)) {
- Type ty = promote(p->type);
- p = simplify(BCOM, ty, cast(p, ty), NULL);
- } else
- typeerror(BCOM, p, NULL); break;
- case '!': t = gettok(); p = unary(); p = pointer(p);
- if (isscalar(p->type))
- p = simplify(NOT, inttype, cond(p), NULL);
- else
- typeerror(NOT, p, NULL); break;
- case INCR: t = gettok(); p = unary(); p = incr(INCR, pointer(p), consttree(1, inttype)); break;
- case DECR: t = gettok(); p = unary(); p = incr(DECR, pointer(p), consttree(1, inttype)); break;
- case TYPECODE: case SIZEOF: { int op = t;
- Type ty;
- p = NULL;
- t = gettok();
- if (t == '(') {
- t = gettok();
- if (istypename(t, tsym)) {
- ty = typename();
- expect(')');
- } else {
- p = postfix(expr(')'));
- ty = p->type;
- }
- } else {
- p = unary();
- ty = p->type;
- }
- assert(ty);
- if (op == TYPECODE)
- p = cnsttree(inttype, (long)ty->op);
- else {
- if (isfunc(ty) || ty->size == 0)
- error("invalid type argument `%t' to `sizeof'\n", ty);
- else if (p && rightkid(p)->op == FIELD)
- error("`sizeof' applied to a bit field\n");
- p = cnsttree(unsignedlong, (unsigned long)ty->size);
- } } break;
- case '(':
- t = gettok();
- if (istypename(t, tsym)) {
- Type ty, ty1 = typename(), pty;
- expect(')');
- ty = unqual(ty1);
- if (isenum(ty)) {
- Type ty2 = ty->type;
- if (isconst(ty1))
- ty2 = qual(CONST, ty2);
- if (isvolatile(ty1))
- ty2 = qual(VOLATILE, ty2);
- ty1 = ty2;
- ty = ty->type;
- }
- p = pointer(unary());
- pty = p->type;
- if (isenum(pty))
- pty = pty->type;
- if (isarith(pty) && isarith(ty)
- || isptr(pty) && isptr(ty)) {
- explicitCast++;
- p = cast(p, ty);
- explicitCast--;
- } else if (isptr(pty) && isint(ty)
- || isint(pty) && isptr(ty)) {
- if (Aflag >= 1 && ty->size < pty->size)
- warning("conversion from `%t' to `%t' is compiler dependent\n", p->type, ty);
-
- p = cast(p, ty);
- } else if (ty != voidtype) {
- error("cast from `%t' to `%t' is illegal\n",
- p->type, ty1);
- ty1 = inttype;
- }
- if (generic(p->op) == INDIR || ty->size == 0)
- p = tree(RIGHT, ty1, NULL, p);
- else
- p = retype(p, ty1);
- } else
- p = postfix(expr(')'));
- break;
- default:
- p = postfix(primary());
- }
- return p;
-}
-
-static Tree postfix(Tree p) {
- for (;;)
- switch (t) {
- case INCR: p = tree(RIGHT, p->type,
- tree(RIGHT, p->type,
- p,
- incr(t, p, consttree(1, inttype))),
- p);
- t = gettok(); break;
- case DECR: p = tree(RIGHT, p->type,
- tree(RIGHT, p->type,
- p,
- incr(t, p, consttree(1, inttype))),
- p);
- t = gettok(); break;
- case '[': {
- Tree q;
- t = gettok();
- q = expr(']');
- if (YYnull)
- if (isptr(p->type))
- p = nullcheck(p);
- else if (isptr(q->type))
- q = nullcheck(q);
- p = (*optree['+'])(ADD, pointer(p), pointer(q));
- if (isptr(p->type) && isarray(p->type->type))
- p = retype(p, p->type->type);
- else
- p = rvalue(p);
- } break;
- case '(': {
- Type ty;
- Coordinate pt;
- p = pointer(p);
- if (isptr(p->type) && isfunc(p->type->type))
- ty = p->type->type;
- else {
- error("found `%t' expected a function\n", p->type);
- ty = func(voidtype, NULL, 1);
- p = retype(p, ptr(ty));
- }
- pt = src;
- t = gettok();
- p = call(p, ty, pt);
- } break;
- case '.': t = gettok();
- if (t == ID) {
- if (isstruct(p->type)) {
- Tree q = addrof(p);
- p = field(q, token);
- q = rightkid(q);
- if (isaddrop(q->op) && q->u.sym->temporary)
- p = tree(RIGHT, p->type, p, NULL);
- } else
- error("left operand of . has incompatible type `%t'\n",
- p->type);
- t = gettok();
- } else
- error("field name expected\n"); break;
- case DEREF: t = gettok();
- p = pointer(p);
- if (t == ID) {
- if (isptr(p->type) && isstruct(p->type->type)) {
- if (YYnull)
- p = nullcheck(p);
- p = field(p, token);
- } else
- error("left operand of -> has incompatible type `%t'\n", p->type);
-
- t = gettok();
- } else
- error("field name expected\n"); break;
- default:
- return p;
- }
-}
-static Tree primary(void) {
- Tree p;
-
- assert(t != '(');
- switch (t) {
- case ICON:
- case FCON: p = tree(mkop(CNST,tsym->type), tsym->type, NULL, NULL);
- p->u.v = tsym->u.c.v;
- break;
- case SCON: if (ischar(tsym->type->type))
- tsym->u.c.v.p = stringn(tsym->u.c.v.p, tsym->type->size);
- else
- tsym->u.c.v.p = memcpy(allocate(tsym->type->size, PERM), tsym->u.c.v.p, tsym->type->size);
- tsym = constant(tsym->type, tsym->u.c.v);
- if (tsym->u.c.loc == NULL)
- tsym->u.c.loc = genident(STATIC, tsym->type, GLOBAL);
- p = idtree(tsym->u.c.loc); break;
- case ID: if (tsym == NULL)
- {
- Symbol p = install(token, &identifiers, level, FUNC);
- p->src = src;
- if (getchr() == '(') {
- Symbol q = lookup(token, externals);
- p->type = func(inttype, NULL, 1);
- p->sclass = EXTERN;
- if (Aflag >= 1)
- warning("missing prototype\n");
- if (q && !eqtype(q->type, p->type, 1))
- warning("implicit declaration of `%s' does not match previous declaration at %w\n", q->name, &q->src);
-
- if (q == NULL) {
- q = install(p->name, &externals, GLOBAL, PERM);
- q->type = p->type;
- q->sclass = EXTERN;
- q->src = src;
- (*IR->defsymbol)(q);
- }
- p->u.alias = q;
- } else {
- error("undeclared identifier `%s'\n", p->name);
- p->sclass = AUTO;
- p->type = inttype;
- if (p->scope == GLOBAL)
- (*IR->defsymbol)(p);
- else
- addlocal(p);
- }
- t = gettok();
- if (xref)
- use(p, src);
- return idtree(p);
- }
- if (xref)
- use(tsym, src);
- if (tsym->sclass == ENUM)
- p = consttree(tsym->u.value, inttype);
- else {
- if (tsym->sclass == TYPEDEF)
- error("illegal use of type name `%s'\n", tsym->name);
- p = idtree(tsym);
- } break;
- case FIRSTARG:
- if (level > PARAM && cfunc && cfunc->u.f.callee[0])
- p = idtree(cfunc->u.f.callee[0]);
- else {
- error("illegal use of `%k'\n", FIRSTARG);
- p = cnsttree(inttype, 0L);
- }
- break;
- default:
- error("illegal expression\n");
- p = cnsttree(inttype, 0L);
- }
- t = gettok();
- return p;
-}
-Tree idtree(Symbol p) {
- int op;
- Tree e;
- Type ty = p->type ? unqual(p->type) : voidptype;
-
- if (p->scope == GLOBAL || p->sclass == STATIC)
- op = ADDRG;
- else if (p->scope == PARAM) {
- op = ADDRF;
- if (isstruct(p->type) && !IR->wants_argb)
- {
- e = tree(mkop(op,voidptype), ptr(ptr(p->type)), NULL, NULL);
- e->u.sym = p;
- return rvalue(rvalue(e));
- }
- } else if (p->sclass == EXTERN) {
- assert(p->u.alias);
- p = p->u.alias;
- op = ADDRG;
- } else
- op = ADDRL;
- p->ref += refinc;
- if (isarray(ty))
- e = tree(mkop(op,voidptype), p->type, NULL, NULL);
- else if (isfunc(ty))
- e = tree(mkop(op,funcptype), p->type, NULL, NULL);
- else
- e = tree(mkop(op,voidptype), ptr(p->type), NULL, NULL);
- e->u.sym = p;
- if (isptr(e->type))
- e = rvalue(e);
- return e;
-}
-
-Tree rvalue(Tree p) {
- Type ty = deref(p->type);
-
- ty = unqual(ty);
- return tree(mkop(INDIR,ty), ty, p, NULL);
-}
-Tree lvalue(Tree p) {
- if (generic(p->op) != INDIR) {
- error("lvalue required\n");
- return value(p);
- } else if (unqual(p->type) == voidtype)
- warning("`%t' used as an lvalue\n", p->type);
- return p->kids[0];
-}
-Tree retype(Tree p, Type ty) {
- Tree q;
-
- if (p->type == ty)
- return p;
- q = tree(p->op, ty, p->kids[0], p->kids[1]);
- q->node = p->node;
- q->u = p->u;
- return q;
-}
-Tree rightkid(Tree p) {
- while (p && p->op == RIGHT)
- if (p->kids[1])
- p = p->kids[1];
- else if (p->kids[0])
- p = p->kids[0];
- else
- assert(0);
- assert(p);
- return p;
-}
-int hascall(Tree p) {
- if (p == 0)
- return 0;
- if (generic(p->op) == CALL || (IR->mulops_calls &&
- (p->op == DIV+I || p->op == MOD+I || p->op == MUL+I
- || p->op == DIV+U || p->op == MOD+U || p->op == MUL+U)))
- return 1;
- return hascall(p->kids[0]) || hascall(p->kids[1]);
-}
-Type binary(Type xty, Type yty) {
-#define xx(t) if (xty == t || yty == t) return t
- xx(longdouble);
- xx(doubletype);
- xx(floattype);
- xx(unsignedlonglong);
- xx(longlong);
- xx(unsignedlong);
- if (xty == longtype && yty == unsignedtype
- || xty == unsignedtype && yty == longtype)
- if (longtype->size > unsignedtype->size)
- return longtype;
- else
- return unsignedlong;
- xx(longtype);
- xx(unsignedtype);
- return inttype;
-#undef xx
-}
-Tree pointer(Tree p) {
- if (isarray(p->type))
- /* assert(p->op != RIGHT || p->u.sym == NULL), */
- p = retype(p, atop(p->type));
- else if (isfunc(p->type))
- p = retype(p, ptr(p->type));
- return p;
-}
-Tree cond(Tree p) {
- int op = generic(rightkid(p)->op);
-
- if (op == AND || op == OR || op == NOT
- || op == EQ || op == NE
- || op == LE || op == LT || op == GE || op == GT)
- return p;
- p = pointer(p);
- return (*optree[NEQ])(NE, p, consttree(0, inttype));
-}
-Tree cast(Tree p, Type type) {
- Type src, dst;
-
- p = value(p);
- if (p->type == type)
- return p;
- dst = unqual(type);
- src = unqual(p->type);
- if (src->op != dst->op || src->size != dst->size) {
- switch (src->op) {
- case INT:
- if (src->size < inttype->size)
- p = simplify(CVI, inttype, p, NULL);
- break;
- case UNSIGNED:
- if (src->size < inttype->size)
- p = simplify(CVU, inttype, p, NULL);
- else if (src->size < unsignedtype->size)
- p = simplify(CVU, unsignedtype, p, NULL);
- break;
- case ENUM:
- p = retype(p, inttype);
- break;
- case POINTER:
- if (isint(dst) && src->size > dst->size)
- warning("conversion from `%t' to `%t' is undefined\n", p->type, type);
- p = simplify(CVP, super(src), p, NULL);
- break;
- case FLOAT:
- break;
- default: assert(0);
- }
- {
- src = unqual(p->type);
- dst = super(dst);
- if (src->op != dst->op)
- switch (src->op) {
- case INT:
- p = simplify(CVI, dst, p, NULL);
- break;
- case UNSIGNED:
- if (isfloat(dst)) {
- Type ssrc = signedint(src);
- Tree two = cnsttree(longdouble, (long double)2.0);
- p = (*optree['+'])(ADD,
- (*optree['*'])(MUL,
- two,
- simplify(CVU, ssrc,
- simplify(RSH, src,
- p, consttree(1, inttype)), NULL)),
- simplify(CVU, ssrc,
- simplify(BAND, src,
- p, consttree(1, unsignedtype)), NULL));
- } else
- p = simplify(CVU, dst, p, NULL);
- break;
- case FLOAT:
- if (isunsigned(dst)) {
- Type sdst = signedint(dst);
- Tree c = cast(cnsttree(longdouble, (long double)sdst->u.sym->u.limits.max.i + 1), src);
- p = condtree(
- simplify(GE, src, p, c),
- (*optree['+'])(ADD,
- cast(cast(simplify(SUB, src, p, c), sdst), dst),
- cast(cnsttree(unsignedlong, (unsigned long)sdst->u.sym->u.limits.max.i + 1), dst)),
- simplify(CVF, sdst, p, NULL));
- } else
- p = simplify(CVF, dst, p, NULL);
- break;
- default: assert(0);
- }
- dst = unqual(type);
- }
- }
- src = unqual(p->type);
- switch (src->op) {
- case INT:
- if (src->op != dst->op || src->size != dst->size)
- p = simplify(CVI, dst, p, NULL);
- break;
- case UNSIGNED:
- if (src->op != dst->op || src->size != dst->size)
- p = simplify(CVU, dst, p, NULL);
- break;
- case FLOAT:
- if (src->op != dst->op || src->size != dst->size)
- p = simplify(CVF, dst, p, NULL);
- break;
- case POINTER:
- if (src->op != dst->op)
- p = simplify(CVP, dst, p, NULL);
- else {
- if (isfunc(src->type) && !isfunc(dst->type)
- || !isfunc(src->type) && isfunc(dst->type))
- warning("conversion from `%t' to `%t' is compiler dependent\n", p->type, type);
-
- if (src->size != dst->size)
- p = simplify(CVP, dst, p, NULL);
- }
- break;
- default: assert(0);
- }
- return retype(p, type);
-}
-Tree field(Tree p, const char *name) {
- Field q;
- Type ty1, ty = p->type;
-
- if (isptr(ty))
- ty = deref(ty);
- ty1 = ty;
- ty = unqual(ty);
- if ((q = fieldref(name, ty)) != NULL) {
- if (isarray(q->type)) {
- ty = q->type->type;
- if (isconst(ty1) && !isconst(ty))
- ty = qual(CONST, ty);
- if (isvolatile(ty1) && !isvolatile(ty))
- ty = qual(VOLATILE, ty);
- ty = array(ty, q->type->size/ty->size, q->type->align);
- } else {
- ty = q->type;
- if (isconst(ty1) && !isconst(ty))
- ty = qual(CONST, ty);
- if (isvolatile(ty1) && !isvolatile(ty))
- ty = qual(VOLATILE, ty);
- ty = ptr(ty);
- }
- if (YYcheck && !isaddrop(p->op) && q->offset > 0) /* omit */
- p = nullcall(ty, YYcheck, p, consttree(q->offset, inttype)); /* omit */
- else /* omit */
- p = simplify(ADD+P, ty, p, consttree(q->offset, inttype));
-
- if (q->lsb) {
- p = tree(FIELD, ty->type, rvalue(p), NULL);
- p->u.field = q;
- } else if (!isarray(q->type))
- p = rvalue(p);
-
- } else {
- error("unknown field `%s' of `%t'\n", name, ty);
- p = rvalue(retype(p, ptr(inttype)));
- }
- return p;
-}
-/* funcname - return name of function f or a function' */
-char *funcname(Tree f) {
- if (isaddrop(f->op))
- return stringf("`%s'", f->u.sym->name);
- return "a function";
-}
-static Tree nullcheck(Tree p) {
- if (!needconst && YYnull && isptr(p->type)) {
- p = value(p);
- if (strcmp(YYnull->name, "_YYnull") == 0) {
- Symbol t1 = temporary(REGISTER, voidptype);
- p = tree(RIGHT, p->type,
- tree(OR, voidtype,
- cond(asgn(t1, cast(p, voidptype))),
- vcall(YYnull, voidtype, (file && *file ? pointer(idtree(mkstr(file)->u.c.loc)) : cnsttree(voidptype, NULL)), cnsttree(inttype, (long)lineno) , NULL)),
- idtree(t1));
- }
-
- else
- p = nullcall(p->type, YYnull, p, cnsttree(inttype, 0L));
-
- }
- return p;
-}
-Tree nullcall(Type pty, Symbol f, Tree p, Tree e) {
- Type ty;
-
- if (isarray(pty))
- return retype(nullcall(atop(pty), f, p, e), pty);
- ty = unqual(unqual(p->type)->type);
- return vcall(f, pty,
- p, e,
- cnsttree(inttype, (long)ty->size),
- cnsttree(inttype, (long)ty->align),
- (file && *file ? pointer(idtree(mkstr(file)->u.c.loc)) : cnsttree(voidptype, NULL)), cnsttree(inttype, (long)lineno) , NULL);
-}
+#include "c.h"
+
+
+static char prec[] = {
+#define xx(a,b,c,d,e,f,g) c,
+#define yy(a,b,c,d,e,f,g) c,
+#include "token.h"
+};
+static int oper[] = {
+#define xx(a,b,c,d,e,f,g) d,
+#define yy(a,b,c,d,e,f,g) d,
+#include "token.h"
+};
+float refinc = 1.0;
+static Tree expr2(void);
+static Tree expr3(int);
+static Tree nullcheck(Tree);
+static Tree postfix(Tree);
+static Tree unary(void);
+static Tree primary(void);
+static Type super(Type ty);
+
+static Type super(Type ty) {
+ switch (ty->op) {
+ case INT:
+ if (ty->size < inttype->size)
+ return inttype;
+ break;
+ case UNSIGNED:
+ if (ty->size < unsignedtype->size)
+ return unsignedtype;
+ break;
+ case POINTER:
+ return unsignedptr;
+ }
+ return ty;
+}
+Tree expr(int tok) {
+ static char stop[] = { IF, ID, '}', 0 };
+ Tree p = expr1(0);
+
+ while (t == ',') {
+ Tree q;
+ t = gettok();
+ q = pointer(expr1(0));
+ p = tree(RIGHT, q->type, root(value(p)), q);
+ }
+ if (tok)
+ test(tok, stop);
+ return p;
+}
+Tree expr0(int tok) {
+ return root(expr(tok));
+}
+Tree expr1(int tok) {
+ static char stop[] = { IF, ID, 0 };
+ Tree p = expr2();
+
+ if (t == '='
+ || (prec[t] >= 6 && prec[t] <= 8)
+ || (prec[t] >= 11 && prec[t] <= 13)) {
+ int op = t;
+ t = gettok();
+ if (oper[op] == ASGN)
+ p = asgntree(ASGN, p, value(expr1(0)));
+ else
+ {
+ expect('=');
+ p = incr(op, p, expr1(0));
+ }
+ }
+ if (tok)
+ test(tok, stop);
+ return p;
+}
+Tree incr(int op, Tree v, Tree e) {
+ return asgntree(ASGN, v, (*optree[op])(oper[op], v, e));
+}
+static Tree expr2(void) {
+ Tree p = expr3(4);
+
+ if (t == '?') {
+ Tree l, r;
+ Coordinate pts[2];
+ if (Aflag > 1 && isfunc(p->type))
+ warning("%s used in a conditional expression\n",
+ funcname(p));
+ p = pointer(p);
+ t = gettok();
+ pts[0] = src;
+ l = pointer(expr(':'));
+ pts[1] = src;
+ r = pointer(expr2());
+ if (events.points)
+ {
+ apply(events.points, &pts[0], &l);
+ apply(events.points, &pts[1], &r);
+ }
+ p = condtree(p, l, r);
+ }
+ return p;
+}
+Tree value(Tree p) {
+ int op = generic(rightkid(p)->op);
+
+ if (p->type != voidtype
+ && (op==AND || op==OR || op==NOT || op==EQ || op==NE
+ || op== LE || op==LT || op== GE || op==GT))
+ p = condtree(p, consttree(1, inttype),
+ consttree(0, inttype));
+ return p;
+}
+static Tree expr3(int k) {
+ int k1;
+ Tree p = unary();
+
+ for (k1 = prec[t]; k1 >= k; k1--)
+ while (prec[t] == k1 && *cp != '=') {
+ Tree r;
+ Coordinate pt;
+ int op = t;
+ t = gettok();
+ pt = src;
+ p = pointer(p);
+ if (op == ANDAND || op == OROR) {
+ r = pointer(expr3(k1));
+ if (events.points)
+ apply(events.points, &pt, &r);
+ } else
+ r = pointer(expr3(k1 + 1));
+ p = (*optree[op])(oper[op], p, r);
+ }
+ return p;
+}
+static Tree unary(void) {
+ Tree p;
+
+ switch (t) {
+ case '*': t = gettok(); p = unary(); p = pointer(p);
+ if (isptr(p->type)
+ && (isfunc(p->type->type) || isarray(p->type->type)))
+ p = retype(p, p->type->type);
+ else {
+ if (YYnull)
+ p = nullcheck(p);
+ p = rvalue(p);
+ } break;
+ case '&': t = gettok(); p = unary(); if (isarray(p->type) || isfunc(p->type))
+ p = retype(p, ptr(p->type));
+ else
+ p = lvalue(p);
+ if (isaddrop(p->op) && p->u.sym->sclass == REGISTER)
+ error("invalid operand of unary &; `%s' is declared register\n", p->u.sym->name);
+
+ else if (isaddrop(p->op))
+ p->u.sym->addressed = 1;
+ break;
+ case '+': t = gettok(); p = unary(); p = pointer(p);
+ if (isarith(p->type))
+ p = cast(p, promote(p->type));
+ else
+ typeerror(ADD, p, NULL); break;
+ case '-': t = gettok(); p = unary(); p = pointer(p);
+ if (isarith(p->type)) {
+ Type ty = promote(p->type);
+ p = cast(p, ty);
+ if (isunsigned(ty)) {
+ warning("unsigned operand of unary -\n");
+ p = simplify(ADD, ty, simplify(BCOM, ty, p, NULL), cnsttree(ty, 1UL));
+ } else
+ p = simplify(NEG, ty, p, NULL);
+ } else
+ typeerror(SUB, p, NULL); break;
+ case '~': t = gettok(); p = unary(); p = pointer(p);
+ if (isint(p->type)) {
+ Type ty = promote(p->type);
+ p = simplify(BCOM, ty, cast(p, ty), NULL);
+ } else
+ typeerror(BCOM, p, NULL); break;
+ case '!': t = gettok(); p = unary(); p = pointer(p);
+ if (isscalar(p->type))
+ p = simplify(NOT, inttype, cond(p), NULL);
+ else
+ typeerror(NOT, p, NULL); break;
+ case INCR: t = gettok(); p = unary(); p = incr(INCR, pointer(p), consttree(1, inttype)); break;
+ case DECR: t = gettok(); p = unary(); p = incr(DECR, pointer(p), consttree(1, inttype)); break;
+ case TYPECODE: case SIZEOF: { int op = t;
+ Type ty;
+ p = NULL;
+ t = gettok();
+ if (t == '(') {
+ t = gettok();
+ if (istypename(t, tsym)) {
+ ty = typename();
+ expect(')');
+ } else {
+ p = postfix(expr(')'));
+ ty = p->type;
+ }
+ } else {
+ p = unary();
+ ty = p->type;
+ }
+ assert(ty);
+ if (op == TYPECODE)
+ p = cnsttree(inttype, (long)ty->op);
+ else {
+ if (isfunc(ty) || ty->size == 0)
+ error("invalid type argument `%t' to `sizeof'\n", ty);
+ else if (p && rightkid(p)->op == FIELD)
+ error("`sizeof' applied to a bit field\n");
+ p = cnsttree(unsignedlong, (unsigned long)ty->size);
+ } } break;
+ case '(':
+ t = gettok();
+ if (istypename(t, tsym)) {
+ Type ty, ty1 = typename(), pty;
+ expect(')');
+ ty = unqual(ty1);
+ if (isenum(ty)) {
+ Type ty2 = ty->type;
+ if (isconst(ty1))
+ ty2 = qual(CONST, ty2);
+ if (isvolatile(ty1))
+ ty2 = qual(VOLATILE, ty2);
+ ty1 = ty2;
+ ty = ty->type;
+ }
+ p = pointer(unary());
+ pty = p->type;
+ if (isenum(pty))
+ pty = pty->type;
+ if (isarith(pty) && isarith(ty)
+ || isptr(pty) && isptr(ty)) {
+ explicitCast++;
+ p = cast(p, ty);
+ explicitCast--;
+ } else if (isptr(pty) && isint(ty)
+ || isint(pty) && isptr(ty)) {
+ if (Aflag >= 1 && ty->size < pty->size)
+ warning("conversion from `%t' to `%t' is compiler dependent\n", p->type, ty);
+
+ p = cast(p, ty);
+ } else if (ty != voidtype) {
+ error("cast from `%t' to `%t' is illegal\n",
+ p->type, ty1);
+ ty1 = inttype;
+ }
+ if (generic(p->op) == INDIR || ty->size == 0)
+ p = tree(RIGHT, ty1, NULL, p);
+ else
+ p = retype(p, ty1);
+ } else
+ p = postfix(expr(')'));
+ break;
+ default:
+ p = postfix(primary());
+ }
+ return p;
+}
+
+static Tree postfix(Tree p) {
+ for (;;)
+ switch (t) {
+ case INCR: p = tree(RIGHT, p->type,
+ tree(RIGHT, p->type,
+ p,
+ incr(t, p, consttree(1, inttype))),
+ p);
+ t = gettok(); break;
+ case DECR: p = tree(RIGHT, p->type,
+ tree(RIGHT, p->type,
+ p,
+ incr(t, p, consttree(1, inttype))),
+ p);
+ t = gettok(); break;
+ case '[': {
+ Tree q;
+ t = gettok();
+ q = expr(']');
+ if (YYnull)
+ if (isptr(p->type))
+ p = nullcheck(p);
+ else if (isptr(q->type))
+ q = nullcheck(q);
+ p = (*optree['+'])(ADD, pointer(p), pointer(q));
+ if (isptr(p->type) && isarray(p->type->type))
+ p = retype(p, p->type->type);
+ else
+ p = rvalue(p);
+ } break;
+ case '(': {
+ Type ty;
+ Coordinate pt;
+ p = pointer(p);
+ if (isptr(p->type) && isfunc(p->type->type))
+ ty = p->type->type;
+ else {
+ error("found `%t' expected a function\n", p->type);
+ ty = func(voidtype, NULL, 1);
+ p = retype(p, ptr(ty));
+ }
+ pt = src;
+ t = gettok();
+ p = call(p, ty, pt);
+ } break;
+ case '.': t = gettok();
+ if (t == ID) {
+ if (isstruct(p->type)) {
+ Tree q = addrof(p);
+ p = field(q, token);
+ q = rightkid(q);
+ if (isaddrop(q->op) && q->u.sym->temporary)
+ p = tree(RIGHT, p->type, p, NULL);
+ } else
+ error("left operand of . has incompatible type `%t'\n",
+ p->type);
+ t = gettok();
+ } else
+ error("field name expected\n"); break;
+ case DEREF: t = gettok();
+ p = pointer(p);
+ if (t == ID) {
+ if (isptr(p->type) && isstruct(p->type->type)) {
+ if (YYnull)
+ p = nullcheck(p);
+ p = field(p, token);
+ } else
+ error("left operand of -> has incompatible type `%t'\n", p->type);
+
+ t = gettok();
+ } else
+ error("field name expected\n"); break;
+ default:
+ return p;
+ }
+}
+static Tree primary(void) {
+ Tree p;
+
+ assert(t != '(');
+ switch (t) {
+ case ICON:
+ case FCON: p = tree(mkop(CNST,tsym->type), tsym->type, NULL, NULL);
+ p->u.v = tsym->u.c.v;
+ break;
+ case SCON: if (ischar(tsym->type->type))
+ tsym->u.c.v.p = stringn(tsym->u.c.v.p, tsym->type->size);
+ else
+ tsym->u.c.v.p = memcpy(allocate(tsym->type->size, PERM), tsym->u.c.v.p, tsym->type->size);
+ tsym = constant(tsym->type, tsym->u.c.v);
+ if (tsym->u.c.loc == NULL)
+ tsym->u.c.loc = genident(STATIC, tsym->type, GLOBAL);
+ p = idtree(tsym->u.c.loc); break;
+ case ID: if (tsym == NULL)
+ {
+ Symbol p = install(token, &identifiers, level, FUNC);
+ p->src = src;
+ if (getchr() == '(') {
+ Symbol q = lookup(token, externals);
+ p->type = func(inttype, NULL, 1);
+ p->sclass = EXTERN;
+ if (Aflag >= 1)
+ warning("missing prototype\n");
+ if (q && !eqtype(q->type, p->type, 1))
+ warning("implicit declaration of `%s' does not match previous declaration at %w\n", q->name, &q->src);
+
+ if (q == NULL) {
+ q = install(p->name, &externals, GLOBAL, PERM);
+ q->type = p->type;
+ q->sclass = EXTERN;
+ q->src = src;
+ (*IR->defsymbol)(q);
+ }
+ p->u.alias = q;
+ } else {
+ error("undeclared identifier `%s'\n", p->name);
+ p->sclass = AUTO;
+ p->type = inttype;
+ if (p->scope == GLOBAL)
+ (*IR->defsymbol)(p);
+ else
+ addlocal(p);
+ }
+ t = gettok();
+ if (xref)
+ use(p, src);
+ return idtree(p);
+ }
+ if (xref)
+ use(tsym, src);
+ if (tsym->sclass == ENUM)
+ p = consttree(tsym->u.value, inttype);
+ else {
+ if (tsym->sclass == TYPEDEF)
+ error("illegal use of type name `%s'\n", tsym->name);
+ p = idtree(tsym);
+ } break;
+ case FIRSTARG:
+ if (level > PARAM && cfunc && cfunc->u.f.callee[0])
+ p = idtree(cfunc->u.f.callee[0]);
+ else {
+ error("illegal use of `%k'\n", FIRSTARG);
+ p = cnsttree(inttype, 0L);
+ }
+ break;
+ default:
+ error("illegal expression\n");
+ p = cnsttree(inttype, 0L);
+ }
+ t = gettok();
+ return p;
+}
+Tree idtree(Symbol p) {
+ int op;
+ Tree e;
+ Type ty = p->type ? unqual(p->type) : voidptype;
+
+ if (p->scope == GLOBAL || p->sclass == STATIC)
+ op = ADDRG;
+ else if (p->scope == PARAM) {
+ op = ADDRF;
+ if (isstruct(p->type) && !IR->wants_argb)
+ {
+ e = tree(mkop(op,voidptype), ptr(ptr(p->type)), NULL, NULL);
+ e->u.sym = p;
+ return rvalue(rvalue(e));
+ }
+ } else if (p->sclass == EXTERN) {
+ assert(p->u.alias);
+ p = p->u.alias;
+ op = ADDRG;
+ } else
+ op = ADDRL;
+ p->ref += refinc;
+ if (isarray(ty))
+ e = tree(mkop(op,voidptype), p->type, NULL, NULL);
+ else if (isfunc(ty))
+ e = tree(mkop(op,funcptype), p->type, NULL, NULL);
+ else
+ e = tree(mkop(op,voidptype), ptr(p->type), NULL, NULL);
+ e->u.sym = p;
+ if (isptr(e->type))
+ e = rvalue(e);
+ return e;
+}
+
+Tree rvalue(Tree p) {
+ Type ty = deref(p->type);
+
+ ty = unqual(ty);
+ return tree(mkop(INDIR,ty), ty, p, NULL);
+}
+Tree lvalue(Tree p) {
+ if (generic(p->op) != INDIR) {
+ error("lvalue required\n");
+ return value(p);
+ } else if (unqual(p->type) == voidtype)
+ warning("`%t' used as an lvalue\n", p->type);
+ return p->kids[0];
+}
+Tree retype(Tree p, Type ty) {
+ Tree q;
+
+ if (p->type == ty)
+ return p;
+ q = tree(p->op, ty, p->kids[0], p->kids[1]);
+ q->node = p->node;
+ q->u = p->u;
+ return q;
+}
+Tree rightkid(Tree p) {
+ while (p && p->op == RIGHT)
+ if (p->kids[1])
+ p = p->kids[1];
+ else if (p->kids[0])
+ p = p->kids[0];
+ else
+ assert(0);
+ assert(p);
+ return p;
+}
+int hascall(Tree p) {
+ if (p == 0)
+ return 0;
+ if (generic(p->op) == CALL || (IR->mulops_calls &&
+ (p->op == DIV+I || p->op == MOD+I || p->op == MUL+I
+ || p->op == DIV+U || p->op == MOD+U || p->op == MUL+U)))
+ return 1;
+ return hascall(p->kids[0]) || hascall(p->kids[1]);
+}
+Type binary(Type xty, Type yty) {
+#define xx(t) if (xty == t || yty == t) return t
+ xx(longdouble);
+ xx(doubletype);
+ xx(floattype);
+ xx(unsignedlonglong);
+ xx(longlong);
+ xx(unsignedlong);
+ if (xty == longtype && yty == unsignedtype
+ || xty == unsignedtype && yty == longtype)
+ if (longtype->size > unsignedtype->size)
+ return longtype;
+ else
+ return unsignedlong;
+ xx(longtype);
+ xx(unsignedtype);
+ return inttype;
+#undef xx
+}
+Tree pointer(Tree p) {
+ if (isarray(p->type))
+ /* assert(p->op != RIGHT || p->u.sym == NULL), */
+ p = retype(p, atop(p->type));
+ else if (isfunc(p->type))
+ p = retype(p, ptr(p->type));
+ return p;
+}
+Tree cond(Tree p) {
+ int op = generic(rightkid(p)->op);
+
+ if (op == AND || op == OR || op == NOT
+ || op == EQ || op == NE
+ || op == LE || op == LT || op == GE || op == GT)
+ return p;
+ p = pointer(p);
+ return (*optree[NEQ])(NE, p, consttree(0, inttype));
+}
+Tree cast(Tree p, Type type) {
+ Type src, dst;
+
+ p = value(p);
+ if (p->type == type)
+ return p;
+ dst = unqual(type);
+ src = unqual(p->type);
+ if (src->op != dst->op || src->size != dst->size) {
+ switch (src->op) {
+ case INT:
+ if (src->size < inttype->size)
+ p = simplify(CVI, inttype, p, NULL);
+ break;
+ case UNSIGNED:
+ if (src->size < inttype->size)
+ p = simplify(CVU, inttype, p, NULL);
+ else if (src->size < unsignedtype->size)
+ p = simplify(CVU, unsignedtype, p, NULL);
+ break;
+ case ENUM:
+ p = retype(p, inttype);
+ break;
+ case POINTER:
+ if (isint(dst) && src->size > dst->size)
+ warning("conversion from `%t' to `%t' is undefined\n", p->type, type);
+ p = simplify(CVP, super(src), p, NULL);
+ break;
+ case FLOAT:
+ break;
+ default: assert(0);
+ }
+ {
+ src = unqual(p->type);
+ dst = super(dst);
+ if (src->op != dst->op)
+ switch (src->op) {
+ case INT:
+ p = simplify(CVI, dst, p, NULL);
+ break;
+ case UNSIGNED:
+ if (isfloat(dst)) {
+ Type ssrc = signedint(src);
+ Tree two = cnsttree(longdouble, (long double)2.0);
+ p = (*optree['+'])(ADD,
+ (*optree['*'])(MUL,
+ two,
+ simplify(CVU, ssrc,
+ simplify(RSH, src,
+ p, consttree(1, inttype)), NULL)),
+ simplify(CVU, ssrc,
+ simplify(BAND, src,
+ p, consttree(1, unsignedtype)), NULL));
+ } else
+ p = simplify(CVU, dst, p, NULL);
+ break;
+ case FLOAT:
+ if (isunsigned(dst)) {
+ Type sdst = signedint(dst);
+ Tree c = cast(cnsttree(longdouble, (long double)sdst->u.sym->u.limits.max.i + 1), src);
+ p = condtree(
+ simplify(GE, src, p, c),
+ (*optree['+'])(ADD,
+ cast(cast(simplify(SUB, src, p, c), sdst), dst),
+ cast(cnsttree(unsignedlong, (unsigned long)sdst->u.sym->u.limits.max.i + 1), dst)),
+ simplify(CVF, sdst, p, NULL));
+ } else
+ p = simplify(CVF, dst, p, NULL);
+ break;
+ default: assert(0);
+ }
+ dst = unqual(type);
+ }
+ }
+ src = unqual(p->type);
+ switch (src->op) {
+ case INT:
+ if (src->op != dst->op || src->size != dst->size)
+ p = simplify(CVI, dst, p, NULL);
+ break;
+ case UNSIGNED:
+ if (src->op != dst->op || src->size != dst->size)
+ p = simplify(CVU, dst, p, NULL);
+ break;
+ case FLOAT:
+ if (src->op != dst->op || src->size != dst->size)
+ p = simplify(CVF, dst, p, NULL);
+ break;
+ case POINTER:
+ if (src->op != dst->op)
+ p = simplify(CVP, dst, p, NULL);
+ else {
+ if (isfunc(src->type) && !isfunc(dst->type)
+ || !isfunc(src->type) && isfunc(dst->type))
+ warning("conversion from `%t' to `%t' is compiler dependent\n", p->type, type);
+
+ if (src->size != dst->size)
+ p = simplify(CVP, dst, p, NULL);
+ }
+ break;
+ default: assert(0);
+ }
+ return retype(p, type);
+}
+Tree field(Tree p, const char *name) {
+ Field q;
+ Type ty1, ty = p->type;
+
+ if (isptr(ty))
+ ty = deref(ty);
+ ty1 = ty;
+ ty = unqual(ty);
+ if ((q = fieldref(name, ty)) != NULL) {
+ if (isarray(q->type)) {
+ ty = q->type->type;
+ if (isconst(ty1) && !isconst(ty))
+ ty = qual(CONST, ty);
+ if (isvolatile(ty1) && !isvolatile(ty))
+ ty = qual(VOLATILE, ty);
+ ty = array(ty, q->type->size/ty->size, q->type->align);
+ } else {
+ ty = q->type;
+ if (isconst(ty1) && !isconst(ty))
+ ty = qual(CONST, ty);
+ if (isvolatile(ty1) && !isvolatile(ty))
+ ty = qual(VOLATILE, ty);
+ ty = ptr(ty);
+ }
+ if (YYcheck && !isaddrop(p->op) && q->offset > 0) /* omit */
+ p = nullcall(ty, YYcheck, p, consttree(q->offset, inttype)); /* omit */
+ else /* omit */
+ p = simplify(ADD+P, ty, p, consttree(q->offset, inttype));
+
+ if (q->lsb) {
+ p = tree(FIELD, ty->type, rvalue(p), NULL);
+ p->u.field = q;
+ } else if (!isarray(q->type))
+ p = rvalue(p);
+
+ } else {
+ error("unknown field `%s' of `%t'\n", name, ty);
+ p = rvalue(retype(p, ptr(inttype)));
+ }
+ return p;
+}
+/* funcname - return name of function f or a function' */
+char *funcname(Tree f) {
+ if (isaddrop(f->op))
+ return stringf("`%s'", f->u.sym->name);
+ return "a function";
+}
+static Tree nullcheck(Tree p) {
+ if (!needconst && YYnull && isptr(p->type)) {
+ p = value(p);
+ if (strcmp(YYnull->name, "_YYnull") == 0) {
+ Symbol t1 = temporary(REGISTER, voidptype);
+ p = tree(RIGHT, p->type,
+ tree(OR, voidtype,
+ cond(asgn(t1, cast(p, voidptype))),
+ vcall(YYnull, voidtype, (file && *file ? pointer(idtree(mkstr(file)->u.c.loc)) : cnsttree(voidptype, NULL)), cnsttree(inttype, (long)lineno) , NULL)),
+ idtree(t1));
+ }
+
+ else
+ p = nullcall(p->type, YYnull, p, cnsttree(inttype, 0L));
+
+ }
+ return p;
+}
+Tree nullcall(Type pty, Symbol f, Tree p, Tree e) {
+ Type ty;
+
+ if (isarray(pty))
+ return retype(nullcall(atop(pty), f, p, e), pty);
+ ty = unqual(unqual(p->type)->type);
+ return vcall(f, pty,
+ p, e,
+ cnsttree(inttype, (long)ty->size),
+ cnsttree(inttype, (long)ty->align),
+ (file && *file ? pointer(idtree(mkstr(file)->u.c.loc)) : cnsttree(voidptype, NULL)), cnsttree(inttype, (long)lineno) , NULL);
+}
diff --git a/lcc/src/gen.c b/lcc/src/gen.c
index ab8506a..7202c45 100755
--- a/lcc/src/gen.c
+++ b/lcc/src/gen.c
@@ -1,830 +1,830 @@
-#include "c.h"
-
-
-#define readsreg(p) \
- (generic((p)->op)==INDIR && (p)->kids[0]->op==VREG+P)
-#define setsrc(d) ((d) && (d)->x.regnode && \
- (d)->x.regnode->set == src->x.regnode->set && \
- (d)->x.regnode->mask&src->x.regnode->mask)
-
-#define relink(a, b) ((b)->x.prev = (a), (a)->x.next = (b))
-
-static Symbol askfixedreg(Symbol);
-static Symbol askreg(Symbol, unsigned*);
-static void blkunroll(int, int, int, int, int, int, int[]);
-static void docall(Node);
-static void dumpcover(Node, int, int);
-static void dumpregs(char *, char *, char *);
-static void dumprule(int);
-static void dumptree(Node);
-static unsigned emitasm(Node, int);
-static void genreload(Node, Symbol, int);
-static void genspill(Symbol, Node, Symbol);
-static Symbol getreg(Symbol, unsigned*, Node);
-static int getrule(Node, int);
-static void linearize(Node, Node);
-static int moveself(Node);
-static void prelabel(Node);
-static Node* prune(Node, Node*);
-static void putreg(Symbol);
-static void ralloc(Node);
-static void reduce(Node, int);
-static int reprune(Node*, int, int, Node);
-static int requate(Node);
-static Node reuse(Node, int);
-static void rewrite(Node);
-static Symbol spillee(Symbol, unsigned mask[], Node);
-static void spillr(Symbol, Node);
-static int uses(Node, Regnode);
-
-int offset;
-
-int maxoffset;
-
-int framesize;
-int argoffset;
-
-int maxargoffset;
-
-int dalign, salign;
-int bflag = 0; /* omit */
-int dflag = 0;
-
-int swap;
-
-unsigned (*emitter)(Node, int) = emitasm;
-static char NeedsReg[] = {
- 0, /* unused */
- 1, /* CNST */
- 0, 0, /* ARG ASGN */
- 1, /* INDIR */
- 0, 0, 1, 1, /* - - CVF CVI */
- 1, 0, 1, 1, /* CVP - CVU NEG */
- 1, /* CALL */
- 1, /* LOAD */
- 0, /* RET */
- 1, 1, 1, /* ADDRG ADDRF ADDRL */
- 1, 1, 1, 1, 1, /* ADD SUB LSH MOD RSH */
- 1, 1, 1, 1, /* BAND BCOM BOR BXOR */
- 1, 1, /* DIV MUL */
- 0, 0, 0, 0, 0, 0, /* EQ GE GT LE LT NE */
- 0, 0 /* JUMP LABEL */
-};
-Node head;
-
-unsigned freemask[2];
-unsigned usedmask[2];
-unsigned tmask[2];
-unsigned vmask[2];
-Symbol mkreg(char *fmt, int n, int mask, int set) {
- Symbol p;
-
- NEW0(p, PERM);
- p->name = p->x.name = stringf(fmt, n);
- NEW0(p->x.regnode, PERM);
- p->x.regnode->number = n;
- p->x.regnode->mask = mask<<n;
- p->x.regnode->set = set;
- return p;
-}
-Symbol mkwildcard(Symbol *syms) {
- Symbol p;
-
- NEW0(p, PERM);
- p->name = p->x.name = "wildcard";
- p->x.wildcard = syms;
- return p;
-}
-void mkauto(Symbol p) {
- assert(p->sclass == AUTO);
- offset = roundup(offset + p->type->size, p->type->align);
- p->x.offset = -offset;
- p->x.name = stringd(-offset);
-}
-void blockbeg(Env *e) {
- e->offset = offset;
- e->freemask[IREG] = freemask[IREG];
- e->freemask[FREG] = freemask[FREG];
-}
-void blockend(Env *e) {
- if (offset > maxoffset)
- maxoffset = offset;
- offset = e->offset;
- freemask[IREG] = e->freemask[IREG];
- freemask[FREG] = e->freemask[FREG];
-}
-int mkactual(int align, int size) {
- int n = roundup(argoffset, align);
-
- argoffset = n + size;
- return n;
-}
-static void docall(Node p) {
- p->syms[1] = p->syms[0];
- p->syms[0] = intconst(argoffset);
- if (argoffset > maxargoffset)
- maxargoffset = argoffset;
- argoffset = 0;
-}
-void blkcopy(int dreg, int doff, int sreg, int soff, int size, int tmp[]) {
- assert(size >= 0);
- if (size == 0)
- return;
- else if (size <= 2)
- blkunroll(size, dreg, doff, sreg, soff, size, tmp);
- else if (size == 3) {
- blkunroll(2, dreg, doff, sreg, soff, 2, tmp);
- blkunroll(1, dreg, doff+2, sreg, soff+2, 1, tmp);
- }
- else if (size <= 16) {
- blkunroll(4, dreg, doff, sreg, soff, size&~3, tmp);
- blkcopy(dreg, doff+(size&~3),
- sreg, soff+(size&~3), size&3, tmp);
- }
- else
- (*IR->x.blkloop)(dreg, doff, sreg, soff, size, tmp);
-}
-static void blkunroll(int k, int dreg, int doff, int sreg, int soff, int size, int tmp[]) {
- int i;
-
- assert(IR->x.max_unaligned_load);
- if (k > IR->x.max_unaligned_load
- && (k > salign || k > dalign))
- k = IR->x.max_unaligned_load;
- for (i = 0; i+k < size; i += 2*k) {
- (*IR->x.blkfetch)(k, soff+i, sreg, tmp[0]);
- (*IR->x.blkfetch)(k, soff+i+k, sreg, tmp[1]);
- (*IR->x.blkstore)(k, doff+i, dreg, tmp[0]);
- (*IR->x.blkstore)(k, doff+i+k, dreg, tmp[1]);
- }
- if (i < size) {
- (*IR->x.blkfetch)(k, i+soff, sreg, tmp[0]);
- (*IR->x.blkstore)(k, i+doff, dreg, tmp[0]);
- }
-}
-void parseflags(int argc, char *argv[]) {
- int i;
-
- for (i = 0; i < argc; i++)
- if (strcmp(argv[i], "-d") == 0)
- dflag = 1;
- else if (strcmp(argv[i], "-b") == 0) /* omit */
- bflag = 1; /* omit */
-}
-static int getrule(Node p, int nt) {
- int rulenum;
-
- assert(p);
- rulenum = (*IR->x._rule)(p->x.state, nt);
- if (!rulenum) {
- fprint(stderr, "(%x->op=%s at %w is corrupt.)\n", p, opname(p->op), &src);
- assert(0);
- }
- return rulenum;
-}
-static void reduce(Node p, int nt) {
- int rulenum, i;
- short *nts;
- Node kids[10];
-
- p = reuse(p, nt);
- rulenum = getrule(p, nt);
- nts = IR->x._nts[rulenum];
- (*IR->x._kids)(p, rulenum, kids);
- for (i = 0; nts[i]; i++)
- reduce(kids[i], nts[i]);
- if (IR->x._isinstruction[rulenum]) {
- assert(p->x.inst == 0 || p->x.inst == nt);
- p->x.inst = nt;
- if (p->syms[RX] && p->syms[RX]->temporary) {
- debug(fprint(stderr, "(using %s)\n", p->syms[RX]->name));
- p->syms[RX]->x.usecount++;
- }
- }
-}
-static Node reuse(Node p, int nt) {
- struct _state {
- short cost[1];
- };
- Symbol r = p->syms[RX];
-
- if (generic(p->op) == INDIR && p->kids[0]->op == VREG+P
- && r->u.t.cse && p->x.mayrecalc
- && ((struct _state*)r->u.t.cse->x.state)->cost[nt] == 0)
- return r->u.t.cse;
- else
- return p;
-}
-
-int mayrecalc(Node p) {
- int op;
-
- assert(p && p->syms[RX]);
- if (p->syms[RX]->u.t.cse == NULL)
- return 0;
- op = generic(p->syms[RX]->u.t.cse->op);
- if (op == CNST || op == ADDRF || op == ADDRG || op == ADDRL) {
- p->x.mayrecalc = 1;
- return 1;
- } else
- return 0;
-}
-static Node *prune(Node p, Node pp[]) {
- if (p == NULL)
- return pp;
- p->x.kids[0] = p->x.kids[1] = p->x.kids[2] = NULL;
- if (p->x.inst == 0)
- return prune(p->kids[1], prune(p->kids[0], pp));
- else if (p->syms[RX] && p->syms[RX]->temporary
- && p->syms[RX]->x.usecount < 2) {
- p->x.inst = 0;
- debug(fprint(stderr, "(clobbering %s)\n", p->syms[RX]->name));
- return prune(p->kids[1], prune(p->kids[0], pp));
- }
- else {
- prune(p->kids[1], prune(p->kids[0], &p->x.kids[0]));
- *pp = p;
- return pp + 1;
- }
-}
-
-#define ck(i) return (i) ? 0 : LBURG_MAX
-
-int range(Node p, int lo, int hi) {
- Symbol s = p->syms[0];
-
- switch (specific(p->op)) {
- case ADDRF+P:
- case ADDRL+P: ck(s->x.offset >= lo && s->x.offset <= hi);
- case CNST+I: ck(s->u.c.v.i >= lo && s->u.c.v.i <= hi);
- case CNST+U: ck(s->u.c.v.u >= lo && s->u.c.v.u <= hi);
- case CNST+P: ck(s->u.c.v.p == 0 && lo <= 0 && hi >= 0);
- }
- return LBURG_MAX;
-}
-static void dumptree(Node p) {
- if (p->op == VREG+P && p->syms[0]) {
- fprint(stderr, "VREGP(%s)", p->syms[0]->name);
- return;
- } else if (generic(p->op) == LOAD) {
- fprint(stderr, "LOAD(");
- dumptree(p->kids[0]);
- fprint(stderr, ")");
- return;
- }
- fprint(stderr, "%s(", opname(p->op));
- switch (generic(p->op)) {
- case CNST: case LABEL:
- case ADDRG: case ADDRF: case ADDRL:
- if (p->syms[0])
- fprint(stderr, "%s", p->syms[0]->name);
- break;
- case RET:
- if (p->kids[0])
- dumptree(p->kids[0]);
- break;
- case CVF: case CVI: case CVP: case CVU: case JUMP:
- case ARG: case BCOM: case NEG: case INDIR:
- dumptree(p->kids[0]);
- break;
- case CALL:
- if (optype(p->op) != B) {
- dumptree(p->kids[0]);
- break;
- }
- /* else fall thru */
- case EQ: case NE: case GT: case GE: case LE: case LT:
- case ASGN: case BOR: case BAND: case BXOR: case RSH: case LSH:
- case ADD: case SUB: case DIV: case MUL: case MOD:
- dumptree(p->kids[0]);
- fprint(stderr, ", ");
- dumptree(p->kids[1]);
- break;
- default: assert(0);
- }
- fprint(stderr, ")");
-}
-static void dumpcover(Node p, int nt, int in) {
- int rulenum, i;
- short *nts;
- Node kids[10];
-
- p = reuse(p, nt);
- rulenum = getrule(p, nt);
- nts = IR->x._nts[rulenum];
- fprint(stderr, "dumpcover(%x) = ", p);
- for (i = 0; i < in; i++)
- fprint(stderr, " ");
- dumprule(rulenum);
- (*IR->x._kids)(p, rulenum, kids);
- for (i = 0; nts[i]; i++)
- dumpcover(kids[i], nts[i], in+1);
-}
-
-static void dumprule(int rulenum) {
- assert(rulenum);
- fprint(stderr, "%s / %s", IR->x._string[rulenum],
- IR->x._templates[rulenum]);
- if (!IR->x._isinstruction[rulenum])
- fprint(stderr, "\n");
-}
-static unsigned emitasm(Node p, int nt) {
- int rulenum;
- short *nts;
- char *fmt;
- Node kids[10];
-
- p = reuse(p, nt);
- rulenum = getrule(p, nt);
- nts = IR->x._nts[rulenum];
- fmt = IR->x._templates[rulenum];
- assert(fmt);
- if (IR->x._isinstruction[rulenum] && p->x.emitted)
- print("%s", p->syms[RX]->x.name);
- else if (*fmt == '#')
- (*IR->x.emit2)(p);
- else {
- if (*fmt == '?') {
- fmt++;
- assert(p->kids[0]);
- if (p->syms[RX] == p->x.kids[0]->syms[RX])
- while (*fmt++ != '\n')
- ;
- }
- for ((*IR->x._kids)(p, rulenum, kids); *fmt; fmt++)
- if (*fmt != '%')
- (void)putchar(*fmt);
- else if (*++fmt == 'F')
- print("%d", framesize);
- else if (*fmt >= '0' && *fmt <= '9')
- emitasm(kids[*fmt - '0'], nts[*fmt - '0']);
- else if (*fmt >= 'a' && *fmt < 'a' + NELEMS(p->syms))
- fputs(p->syms[*fmt - 'a']->x.name, stdout);
- else
- (void)putchar(*fmt);
- }
- return 0;
-}
-void emit(Node p) {
- for (; p; p = p->x.next) {
- assert(p->x.registered);
- if (p->x.equatable && requate(p) || moveself(p))
- ;
- else
- (*emitter)(p, p->x.inst);
- p->x.emitted = 1;
- }
-}
-static int moveself(Node p) {
- return p->x.copy
- && p->syms[RX]->x.name == p->x.kids[0]->syms[RX]->x.name;
-}
-int move(Node p) {
- p->x.copy = 1;
- return 1;
-}
-static int requate(Node q) {
- Symbol src = q->x.kids[0]->syms[RX];
- Symbol tmp = q->syms[RX];
- Node p;
- int n = 0;
-
- debug(fprint(stderr, "(requate(%x): tmp=%s src=%s)\n", q, tmp->x.name, src->x.name));
- for (p = q->x.next; p; p = p->x.next)
- if (p->x.copy && p->syms[RX] == src
- && p->x.kids[0]->syms[RX] == tmp)
- debug(fprint(stderr, "(requate arm 0 at %x)\n", p)),
- p->syms[RX] = tmp;
- else if (setsrc(p->syms[RX]) && !moveself(p) && !readsreg(p))
- return 0;
- else if (p->x.spills)
- return 0;
- else if (generic(p->op) == CALL && p->x.next)
- return 0;
- else if (p->op == LABEL+V && p->x.next)
- return 0;
- else if (p->syms[RX] == tmp && readsreg(p))
- debug(fprint(stderr, "(requate arm 5 at %x)\n", p)),
- n++;
- else if (p->syms[RX] == tmp)
- break;
- debug(fprint(stderr, "(requate arm 7 at %x)\n", p));
- assert(n > 0);
- for (p = q->x.next; p; p = p->x.next)
- if (p->syms[RX] == tmp && readsreg(p)) {
- p->syms[RX] = src;
- if (--n <= 0)
- break;
- }
- return 1;
-}
-static void prelabel(Node p) {
- if (p == NULL)
- return;
- prelabel(p->kids[0]);
- prelabel(p->kids[1]);
- if (NeedsReg[opindex(p->op)])
- setreg(p, (*IR->x.rmap)(opkind(p->op)));
- switch (generic(p->op)) {
- case ADDRF: case ADDRL:
- if (p->syms[0]->sclass == REGISTER)
- p->op = VREG+P;
- break;
- case INDIR:
- if (p->kids[0]->op == VREG+P)
- setreg(p, p->kids[0]->syms[0]);
- break;
- case ASGN:
- if (p->kids[0]->op == VREG+P)
- rtarget(p, 1, p->kids[0]->syms[0]);
- break;
- case CVI: case CVU: case CVP:
- if (optype(p->op) != F
- && opsize(p->op) <= p->syms[0]->u.c.v.i)
- p->op = LOAD + opkind(p->op);
- break;
- }
- (IR->x.target)(p);
-}
-void setreg(Node p, Symbol r) {
- p->syms[RX] = r;
-}
-void rtarget(Node p, int n, Symbol r) {
- Node q = p->kids[n];
-
- assert(q);
- assert(r);
- assert(r->sclass == REGISTER || !r->x.wildcard);
- assert(q->syms[RX]);
- if (r != q->syms[RX] && !q->syms[RX]->x.wildcard) {
- q = newnode(LOAD + opkind(q->op),
- q, NULL, q->syms[0]);
- if (r->u.t.cse == p->kids[n])
- r->u.t.cse = q;
- p->kids[n] = p->x.kids[n] = q;
- q->x.kids[0] = q->kids[0];
- }
- setreg(q, r);
- debug(fprint(stderr, "(targeting %x->x.kids[%d]=%x to %s)\n", p, n, p->kids[n], r->x.name));
-}
-static void rewrite(Node p) {
- assert(p->x.inst == 0);
- prelabel(p);
- debug(dumptree(p));
- debug(fprint(stderr, "\n"));
- (*IR->x._label)(p);
- debug(dumpcover(p, 1, 0));
- reduce(p, 1);
-}
-Node gen(Node forest) {
- int i;
- struct node sentinel;
- Node dummy, p;
-
- head = forest;
- for (p = forest; p; p = p->link) {
- assert(p->count == 0);
- if (generic(p->op) == CALL)
- docall(p);
- else if ( generic(p->op) == ASGN
- && generic(p->kids[1]->op) == CALL)
- docall(p->kids[1]);
- else if (generic(p->op) == ARG)
- (*IR->x.doarg)(p);
- rewrite(p);
- p->x.listed = 1;
- }
- for (p = forest; p; p = p->link)
- prune(p, &dummy);
- relink(&sentinel, &sentinel);
- for (p = forest; p; p = p->link)
- linearize(p, &sentinel);
- forest = sentinel.x.next;
- assert(forest);
- sentinel.x.next->x.prev = NULL;
- sentinel.x.prev->x.next = NULL;
- for (p = forest; p; p = p->x.next)
- for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
- assert(p->x.kids[i]->syms[RX]);
- if (p->x.kids[i]->syms[RX]->temporary) {
- p->x.kids[i]->x.prevuse =
- p->x.kids[i]->syms[RX]->x.lastuse;
- p->x.kids[i]->syms[RX]->x.lastuse = p->x.kids[i];
- }
- }
- for (p = forest; p; p = p->x.next) {
- ralloc(p);
- if (p->x.listed && NeedsReg[opindex(p->op)]
- && (*IR->x.rmap)(opkind(p->op))) {
- assert(generic(p->op) == CALL || generic(p->op) == LOAD);
- putreg(p->syms[RX]);
- }
- }
- return forest;
-}
-int notarget(Node p) {
- return p->syms[RX]->x.wildcard ? 0 : LBURG_MAX;
-}
-static void putreg(Symbol r) {
- assert(r && r->x.regnode);
- freemask[r->x.regnode->set] |= r->x.regnode->mask;
- debug(dumpregs("(freeing %s)\n", r->x.name, NULL));
-}
-static Symbol askfixedreg(Symbol s) {
- Regnode r = s->x.regnode;
- int n = r->set;
-
- if (r->mask&~freemask[n])
- return NULL;
- else {
- freemask[n] &= ~r->mask;
- usedmask[n] |= r->mask;
- return s;
- }
-}
-static Symbol askreg(Symbol rs, unsigned rmask[]) {
- int i;
-
- if (rs->x.wildcard == NULL)
- return askfixedreg(rs);
- for (i = 31; i >= 0; i--) {
- Symbol r = rs->x.wildcard[i];
- if (r != NULL
- && !(r->x.regnode->mask&~rmask[r->x.regnode->set])
- && askfixedreg(r))
- return r;
- }
- return NULL;
-}
-
-static Symbol getreg(Symbol s, unsigned mask[], Node p) {
- Symbol r = askreg(s, mask);
- if (r == NULL) {
- r = spillee(s, mask, p);
- assert(r && r->x.regnode);
- spill(r->x.regnode->mask, r->x.regnode->set, p);
- r = askreg(s, mask);
- }
- assert(r && r->x.regnode);
- r->x.regnode->vbl = NULL;
- return r;
-}
-int askregvar(Symbol p, Symbol regs) {
- Symbol r;
-
- assert(p);
- if (p->sclass != REGISTER)
- return 0;
- else if (!isscalar(p->type)) {
- p->sclass = AUTO;
- return 0;
- }
- else if (p->temporary) {
- p->x.name = "?";
- return 1;
- }
- else if ((r = askreg(regs, vmask)) != NULL) {
- p->x.regnode = r->x.regnode;
- p->x.regnode->vbl = p;
- p->x.name = r->x.name;
- debug(dumpregs("(allocating %s to symbol %s)\n", p->x.name, p->name));
- return 1;
- }
- else {
- p->sclass = AUTO;
- return 0;
- }
-}
-static void linearize(Node p, Node next) {
- int i;
-
- for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++)
- linearize(p->x.kids[i], next);
- relink(next->x.prev, p);
- relink(p, next);
- debug(fprint(stderr, "(listing %x)\n", p));
-}
-static void ralloc(Node p) {
- int i;
- unsigned mask[2];
-
- mask[0] = tmask[0];
- mask[1] = tmask[1];
- assert(p);
- debug(fprint(stderr, "(rallocing %x)\n", p));
- for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
- Node kid = p->x.kids[i];
- Symbol r = kid->syms[RX];
- assert(r && kid->x.registered);
- if (r->sclass != REGISTER && r->x.lastuse == kid)
- putreg(r);
- }
- if (!p->x.registered && NeedsReg[opindex(p->op)]
- && (*IR->x.rmap)(opkind(p->op))) {
- Symbol sym = p->syms[RX], set = sym;
- assert(sym);
- if (sym->temporary)
- set = (*IR->x.rmap)(opkind(p->op));
- assert(set);
- if (set->sclass != REGISTER) {
- Symbol r;
- if (*IR->x._templates[getrule(p, p->x.inst)] == '?')
- for (i = 1; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
- Symbol r = p->x.kids[i]->syms[RX];
- assert(p->x.kids[i]->x.registered);
- assert(r && r->x.regnode);
- assert(sym->x.wildcard || sym != r);
- mask[r->x.regnode->set] &= ~r->x.regnode->mask;
- }
- r = getreg(set, mask, p);
- if (sym->temporary) {
- Node q;
- r->x.lastuse = sym->x.lastuse;
- for (q = sym->x.lastuse; q; q = q->x.prevuse) {
- q->syms[RX] = r;
- q->x.registered = 1;
- if (sym->u.t.cse && q->x.copy)
- q->x.equatable = 1;
- }
- } else {
- p->syms[RX] = r;
- r->x.lastuse = p;
- }
- debug(dumpregs("(allocating %s to node %x)\n", r->x.name, (char *) p));
- }
- }
- p->x.registered = 1;
- (*IR->x.clobber)(p);
-}
-static Symbol spillee(Symbol set, unsigned mask[], Node here) {
- Symbol bestreg = NULL;
- int bestdist = -1, i;
-
- assert(set);
- if (!set->x.wildcard)
- bestreg = set;
- else {
- for (i = 31; i >= 0; i--) {
- Symbol ri = set->x.wildcard[i];
- if (
- ri != NULL &&
- ri->x.lastuse &&
- (ri->x.regnode->mask&tmask[ri->x.regnode->set]&mask[ri->x.regnode->set])
- ) {
- Regnode rn = ri->x.regnode;
- Node q = here;
- int dist = 0;
- for (; q && !uses(q, rn); q = q->x.next)
- dist++;
- if (q && dist > bestdist) {
- bestdist = dist;
- bestreg = ri;
- }
- }
- }
- }
- assert(bestreg); /* Must be able to spill something. Reconfigure the register allocator
- to ensure that we can allocate a register for all nodes without spilling
- the node's necessary input regs. */
- assert(bestreg->x.regnode->vbl == NULL); /* Can't spill register variables because
- the reload site might be in other blocks. Reconfigure the register allocator
- to ensure that this register is never allocated to a variable. */
- return bestreg;
-}
-static int uses(Node p, Regnode rn) {
- int i;
-
- for (i = 0; i < NELEMS(p->x.kids); i++)
- if (
- p->x.kids[i] &&
- p->x.kids[i]->x.registered &&
- rn->set == p->x.kids[i]->syms[RX]->x.regnode->set &&
- (rn->mask&p->x.kids[i]->syms[RX]->x.regnode->mask)
- )
- return 1;
- return 0;
-}
-static void spillr(Symbol r, Node here) {
- int i;
- Symbol tmp;
- Node p = r->x.lastuse;
- assert(p);
- while (p->x.prevuse)
- assert(r == p->syms[RX]),
- p = p->x.prevuse;
- assert(p->x.registered && !readsreg(p));
- tmp = newtemp(AUTO, optype(p->op), opsize(p->op));
- genspill(r, p, tmp);
- for (p = here->x.next; p; p = p->x.next)
- for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
- Node k = p->x.kids[i];
- if (k->x.registered && k->syms[RX] == r)
- genreload(p, tmp, i);
- }
- putreg(r);
-}
-static void genspill(Symbol r, Node last, Symbol tmp) {
- Node p, q;
- Symbol s;
- unsigned ty;
-
- debug(fprint(stderr, "(spilling %s to local %s)\n", r->x.name, tmp->x.name));
- debug(fprint(stderr, "(genspill: "));
- debug(dumptree(last));
- debug(fprint(stderr, ")\n"));
- ty = opkind(last->op);
- NEW0(s, FUNC);
- s->sclass = REGISTER;
- s->name = s->x.name = r->x.name;
- s->x.regnode = r->x.regnode;
- q = newnode(ADDRL+P + sizeop(IR->ptrmetric.size), NULL, NULL, s);
- q = newnode(INDIR + ty, q, NULL, NULL);
- p = newnode(ADDRL+P + sizeop(IR->ptrmetric.size), NULL, NULL, tmp);
- p = newnode(ASGN + ty, p, q, NULL);
- p->x.spills = 1;
- rewrite(p);
- prune(p, &q);
- q = last->x.next;
- linearize(p, q);
- for (p = last->x.next; p != q; p = p->x.next) {
- ralloc(p);
- assert(!p->x.listed || !NeedsReg[opindex(p->op)] || !(*IR->x.rmap)(opkind(p->op)));
- }
-}
-
-static void genreload(Node p, Symbol tmp, int i) {
- Node q;
- int ty;
-
- debug(fprint(stderr, "(replacing %x with a reload from %s)\n", p->x.kids[i], tmp->x.name));
- debug(fprint(stderr, "(genreload: "));
- debug(dumptree(p->x.kids[i]));
- debug(fprint(stderr, ")\n"));
- ty = opkind(p->x.kids[i]->op);
- q = newnode(ADDRL+P + sizeop(IR->ptrmetric.size), NULL, NULL, tmp);
- p->x.kids[i] = newnode(INDIR + ty, q, NULL, NULL);
- rewrite(p->x.kids[i]);
- prune(p->x.kids[i], &q);
- reprune(&p->kids[1], reprune(&p->kids[0], 0, i, p), i, p);
- prune(p, &q);
- linearize(p->x.kids[i], p);
-}
-static int reprune(Node *pp, int k, int n, Node p) {
- struct node x, *q = *pp;
-
- if (q == NULL || k > n)
- return k;
- else if (q->x.inst == 0)
- return reprune(&q->kids[1],
- reprune(&q->kids[0], k, n, p), n, p);
- if (k == n) {
- debug(fprint(stderr, "(reprune changes %x from %x to %x)\n", pp, *pp, p->x.kids[n]));
- *pp = p->x.kids[n];
- x = *p;
- (IR->x.target)(&x);
- }
- return k + 1;
-}
-void spill(unsigned mask, int n, Node here) {
- int i;
- Node p;
-
- here->x.spills = 1;
- usedmask[n] |= mask;
- if (mask&~freemask[n]) {
-
- assert( /* It makes no sense for a node to clobber() its target. */
- here->x.registered == 0 || /* call isn't coming through clobber() */
- here->syms[RX] == NULL ||
- here->syms[RX]->x.regnode == NULL ||
- here->syms[RX]->x.regnode->set != n ||
- (here->syms[RX]->x.regnode->mask&mask) == 0
- );
-
- for (p = here; p; p = p->x.next)
- for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
- Symbol r = p->x.kids[i]->syms[RX];
- assert(r);
- if (p->x.kids[i]->x.registered && r->x.regnode->set == n
- && r->x.regnode->mask&mask)
- spillr(r, here);
- }
- }
-}
-static void dumpregs(char *msg, char *a, char *b) {
- fprint(stderr, msg, a, b);
- fprint(stderr, "(free[0]=%x)\n", freemask[0]);
- fprint(stderr, "(free[1]=%x)\n", freemask[1]);
-}
-
-int getregnum(Node p) {
- assert(p && p->syms[RX] && p->syms[RX]->x.regnode);
- return p->syms[RX]->x.regnode->number;
-}
-
-
-unsigned regloc(Symbol p) {
- assert(p && p->sclass == REGISTER && p->sclass == REGISTER && p->x.regnode);
- return p->x.regnode->set<<8 | p->x.regnode->number;
-}
-
+#include "c.h"
+
+
+#define readsreg(p) \
+ (generic((p)->op)==INDIR && (p)->kids[0]->op==VREG+P)
+#define setsrc(d) ((d) && (d)->x.regnode && \
+ (d)->x.regnode->set == src->x.regnode->set && \
+ (d)->x.regnode->mask&src->x.regnode->mask)
+
+#define relink(a, b) ((b)->x.prev = (a), (a)->x.next = (b))
+
+static Symbol askfixedreg(Symbol);
+static Symbol askreg(Symbol, unsigned*);
+static void blkunroll(int, int, int, int, int, int, int[]);
+static void docall(Node);
+static void dumpcover(Node, int, int);
+static void dumpregs(char *, char *, char *);
+static void dumprule(int);
+static void dumptree(Node);
+static unsigned emitasm(Node, int);
+static void genreload(Node, Symbol, int);
+static void genspill(Symbol, Node, Symbol);
+static Symbol getreg(Symbol, unsigned*, Node);
+static int getrule(Node, int);
+static void linearize(Node, Node);
+static int moveself(Node);
+static void prelabel(Node);
+static Node* prune(Node, Node*);
+static void putreg(Symbol);
+static void ralloc(Node);
+static void reduce(Node, int);
+static int reprune(Node*, int, int, Node);
+static int requate(Node);
+static Node reuse(Node, int);
+static void rewrite(Node);
+static Symbol spillee(Symbol, unsigned mask[], Node);
+static void spillr(Symbol, Node);
+static int uses(Node, Regnode);
+
+int offset;
+
+int maxoffset;
+
+int framesize;
+int argoffset;
+
+int maxargoffset;
+
+int dalign, salign;
+int bflag = 0; /* omit */
+int dflag = 0;
+
+int swap;
+
+unsigned (*emitter)(Node, int) = emitasm;
+static char NeedsReg[] = {
+ 0, /* unused */
+ 1, /* CNST */
+ 0, 0, /* ARG ASGN */
+ 1, /* INDIR */
+ 0, 0, 1, 1, /* - - CVF CVI */
+ 1, 0, 1, 1, /* CVP - CVU NEG */
+ 1, /* CALL */
+ 1, /* LOAD */
+ 0, /* RET */
+ 1, 1, 1, /* ADDRG ADDRF ADDRL */
+ 1, 1, 1, 1, 1, /* ADD SUB LSH MOD RSH */
+ 1, 1, 1, 1, /* BAND BCOM BOR BXOR */
+ 1, 1, /* DIV MUL */
+ 0, 0, 0, 0, 0, 0, /* EQ GE GT LE LT NE */
+ 0, 0 /* JUMP LABEL */
+};
+Node head;
+
+unsigned freemask[2];
+unsigned usedmask[2];
+unsigned tmask[2];
+unsigned vmask[2];
+Symbol mkreg(char *fmt, int n, int mask, int set) {
+ Symbol p;
+
+ NEW0(p, PERM);
+ p->name = p->x.name = stringf(fmt, n);
+ NEW0(p->x.regnode, PERM);
+ p->x.regnode->number = n;
+ p->x.regnode->mask = mask<<n;
+ p->x.regnode->set = set;
+ return p;
+}
+Symbol mkwildcard(Symbol *syms) {
+ Symbol p;
+
+ NEW0(p, PERM);
+ p->name = p->x.name = "wildcard";
+ p->x.wildcard = syms;
+ return p;
+}
+void mkauto(Symbol p) {
+ assert(p->sclass == AUTO);
+ offset = roundup(offset + p->type->size, p->type->align);
+ p->x.offset = -offset;
+ p->x.name = stringd(-offset);
+}
+void blockbeg(Env *e) {
+ e->offset = offset;
+ e->freemask[IREG] = freemask[IREG];
+ e->freemask[FREG] = freemask[FREG];
+}
+void blockend(Env *e) {
+ if (offset > maxoffset)
+ maxoffset = offset;
+ offset = e->offset;
+ freemask[IREG] = e->freemask[IREG];
+ freemask[FREG] = e->freemask[FREG];
+}
+int mkactual(int align, int size) {
+ int n = roundup(argoffset, align);
+
+ argoffset = n + size;
+ return n;
+}
+static void docall(Node p) {
+ p->syms[1] = p->syms[0];
+ p->syms[0] = intconst(argoffset);
+ if (argoffset > maxargoffset)
+ maxargoffset = argoffset;
+ argoffset = 0;
+}
+void blkcopy(int dreg, int doff, int sreg, int soff, int size, int tmp[]) {
+ assert(size >= 0);
+ if (size == 0)
+ return;
+ else if (size <= 2)
+ blkunroll(size, dreg, doff, sreg, soff, size, tmp);
+ else if (size == 3) {
+ blkunroll(2, dreg, doff, sreg, soff, 2, tmp);
+ blkunroll(1, dreg, doff+2, sreg, soff+2, 1, tmp);
+ }
+ else if (size <= 16) {
+ blkunroll(4, dreg, doff, sreg, soff, size&~3, tmp);
+ blkcopy(dreg, doff+(size&~3),
+ sreg, soff+(size&~3), size&3, tmp);
+ }
+ else
+ (*IR->x.blkloop)(dreg, doff, sreg, soff, size, tmp);
+}
+static void blkunroll(int k, int dreg, int doff, int sreg, int soff, int size, int tmp[]) {
+ int i;
+
+ assert(IR->x.max_unaligned_load);
+ if (k > IR->x.max_unaligned_load
+ && (k > salign || k > dalign))
+ k = IR->x.max_unaligned_load;
+ for (i = 0; i+k < size; i += 2*k) {
+ (*IR->x.blkfetch)(k, soff+i, sreg, tmp[0]);
+ (*IR->x.blkfetch)(k, soff+i+k, sreg, tmp[1]);
+ (*IR->x.blkstore)(k, doff+i, dreg, tmp[0]);
+ (*IR->x.blkstore)(k, doff+i+k, dreg, tmp[1]);
+ }
+ if (i < size) {
+ (*IR->x.blkfetch)(k, i+soff, sreg, tmp[0]);
+ (*IR->x.blkstore)(k, i+doff, dreg, tmp[0]);
+ }
+}
+void parseflags(int argc, char *argv[]) {
+ int i;
+
+ for (i = 0; i < argc; i++)
+ if (strcmp(argv[i], "-d") == 0)
+ dflag = 1;
+ else if (strcmp(argv[i], "-b") == 0) /* omit */
+ bflag = 1; /* omit */
+}
+static int getrule(Node p, int nt) {
+ int rulenum;
+
+ assert(p);
+ rulenum = (*IR->x._rule)(p->x.state, nt);
+ if (!rulenum) {
+ fprint(stderr, "(%x->op=%s at %w is corrupt.)\n", p, opname(p->op), &src);
+ assert(0);
+ }
+ return rulenum;
+}
+static void reduce(Node p, int nt) {
+ int rulenum, i;
+ short *nts;
+ Node kids[10];
+
+ p = reuse(p, nt);
+ rulenum = getrule(p, nt);
+ nts = IR->x._nts[rulenum];
+ (*IR->x._kids)(p, rulenum, kids);
+ for (i = 0; nts[i]; i++)
+ reduce(kids[i], nts[i]);
+ if (IR->x._isinstruction[rulenum]) {
+ assert(p->x.inst == 0 || p->x.inst == nt);
+ p->x.inst = nt;
+ if (p->syms[RX] && p->syms[RX]->temporary) {
+ debug(fprint(stderr, "(using %s)\n", p->syms[RX]->name));
+ p->syms[RX]->x.usecount++;
+ }
+ }
+}
+static Node reuse(Node p, int nt) {
+ struct _state {
+ short cost[1];
+ };
+ Symbol r = p->syms[RX];
+
+ if (generic(p->op) == INDIR && p->kids[0]->op == VREG+P
+ && r->u.t.cse && p->x.mayrecalc
+ && ((struct _state*)r->u.t.cse->x.state)->cost[nt] == 0)
+ return r->u.t.cse;
+ else
+ return p;
+}
+
+int mayrecalc(Node p) {
+ int op;
+
+ assert(p && p->syms[RX]);
+ if (p->syms[RX]->u.t.cse == NULL)
+ return 0;
+ op = generic(p->syms[RX]->u.t.cse->op);
+ if (op == CNST || op == ADDRF || op == ADDRG || op == ADDRL) {
+ p->x.mayrecalc = 1;
+ return 1;
+ } else
+ return 0;
+}
+static Node *prune(Node p, Node pp[]) {
+ if (p == NULL)
+ return pp;
+ p->x.kids[0] = p->x.kids[1] = p->x.kids[2] = NULL;
+ if (p->x.inst == 0)
+ return prune(p->kids[1], prune(p->kids[0], pp));
+ else if (p->syms[RX] && p->syms[RX]->temporary
+ && p->syms[RX]->x.usecount < 2) {
+ p->x.inst = 0;
+ debug(fprint(stderr, "(clobbering %s)\n", p->syms[RX]->name));
+ return prune(p->kids[1], prune(p->kids[0], pp));
+ }
+ else {
+ prune(p->kids[1], prune(p->kids[0], &p->x.kids[0]));
+ *pp = p;
+ return pp + 1;
+ }
+}
+
+#define ck(i) return (i) ? 0 : LBURG_MAX
+
+int range(Node p, int lo, int hi) {
+ Symbol s = p->syms[0];
+
+ switch (specific(p->op)) {
+ case ADDRF+P:
+ case ADDRL+P: ck(s->x.offset >= lo && s->x.offset <= hi);
+ case CNST+I: ck(s->u.c.v.i >= lo && s->u.c.v.i <= hi);
+ case CNST+U: ck(s->u.c.v.u >= lo && s->u.c.v.u <= hi);
+ case CNST+P: ck(s->u.c.v.p == 0 && lo <= 0 && hi >= 0);
+ }
+ return LBURG_MAX;
+}
+static void dumptree(Node p) {
+ if (p->op == VREG+P && p->syms[0]) {
+ fprint(stderr, "VREGP(%s)", p->syms[0]->name);
+ return;
+ } else if (generic(p->op) == LOAD) {
+ fprint(stderr, "LOAD(");
+ dumptree(p->kids[0]);
+ fprint(stderr, ")");
+ return;
+ }
+ fprint(stderr, "%s(", opname(p->op));
+ switch (generic(p->op)) {
+ case CNST: case LABEL:
+ case ADDRG: case ADDRF: case ADDRL:
+ if (p->syms[0])
+ fprint(stderr, "%s", p->syms[0]->name);
+ break;
+ case RET:
+ if (p->kids[0])
+ dumptree(p->kids[0]);
+ break;
+ case CVF: case CVI: case CVP: case CVU: case JUMP:
+ case ARG: case BCOM: case NEG: case INDIR:
+ dumptree(p->kids[0]);
+ break;
+ case CALL:
+ if (optype(p->op) != B) {
+ dumptree(p->kids[0]);
+ break;
+ }
+ /* else fall thru */
+ case EQ: case NE: case GT: case GE: case LE: case LT:
+ case ASGN: case BOR: case BAND: case BXOR: case RSH: case LSH:
+ case ADD: case SUB: case DIV: case MUL: case MOD:
+ dumptree(p->kids[0]);
+ fprint(stderr, ", ");
+ dumptree(p->kids[1]);
+ break;
+ default: assert(0);
+ }
+ fprint(stderr, ")");
+}
+static void dumpcover(Node p, int nt, int in) {
+ int rulenum, i;
+ short *nts;
+ Node kids[10];
+
+ p = reuse(p, nt);
+ rulenum = getrule(p, nt);
+ nts = IR->x._nts[rulenum];
+ fprint(stderr, "dumpcover(%x) = ", p);
+ for (i = 0; i < in; i++)
+ fprint(stderr, " ");
+ dumprule(rulenum);
+ (*IR->x._kids)(p, rulenum, kids);
+ for (i = 0; nts[i]; i++)
+ dumpcover(kids[i], nts[i], in+1);
+}
+
+static void dumprule(int rulenum) {
+ assert(rulenum);
+ fprint(stderr, "%s / %s", IR->x._string[rulenum],
+ IR->x._templates[rulenum]);
+ if (!IR->x._isinstruction[rulenum])
+ fprint(stderr, "\n");
+}
+static unsigned emitasm(Node p, int nt) {
+ int rulenum;
+ short *nts;
+ char *fmt;
+ Node kids[10];
+
+ p = reuse(p, nt);
+ rulenum = getrule(p, nt);
+ nts = IR->x._nts[rulenum];
+ fmt = IR->x._templates[rulenum];
+ assert(fmt);
+ if (IR->x._isinstruction[rulenum] && p->x.emitted)
+ print("%s", p->syms[RX]->x.name);
+ else if (*fmt == '#')
+ (*IR->x.emit2)(p);
+ else {
+ if (*fmt == '?') {
+ fmt++;
+ assert(p->kids[0]);
+ if (p->syms[RX] == p->x.kids[0]->syms[RX])
+ while (*fmt++ != '\n')
+ ;
+ }
+ for ((*IR->x._kids)(p, rulenum, kids); *fmt; fmt++)
+ if (*fmt != '%')
+ (void)putchar(*fmt);
+ else if (*++fmt == 'F')
+ print("%d", framesize);
+ else if (*fmt >= '0' && *fmt <= '9')
+ emitasm(kids[*fmt - '0'], nts[*fmt - '0']);
+ else if (*fmt >= 'a' && *fmt < 'a' + NELEMS(p->syms))
+ fputs(p->syms[*fmt - 'a']->x.name, stdout);
+ else
+ (void)putchar(*fmt);
+ }
+ return 0;
+}
+void emit(Node p) {
+ for (; p; p = p->x.next) {
+ assert(p->x.registered);
+ if (p->x.equatable && requate(p) || moveself(p))
+ ;
+ else
+ (*emitter)(p, p->x.inst);
+ p->x.emitted = 1;
+ }
+}
+static int moveself(Node p) {
+ return p->x.copy
+ && p->syms[RX]->x.name == p->x.kids[0]->syms[RX]->x.name;
+}
+int move(Node p) {
+ p->x.copy = 1;
+ return 1;
+}
+static int requate(Node q) {
+ Symbol src = q->x.kids[0]->syms[RX];
+ Symbol tmp = q->syms[RX];
+ Node p;
+ int n = 0;
+
+ debug(fprint(stderr, "(requate(%x): tmp=%s src=%s)\n", q, tmp->x.name, src->x.name));
+ for (p = q->x.next; p; p = p->x.next)
+ if (p->x.copy && p->syms[RX] == src
+ && p->x.kids[0]->syms[RX] == tmp)
+ debug(fprint(stderr, "(requate arm 0 at %x)\n", p)),
+ p->syms[RX] = tmp;
+ else if (setsrc(p->syms[RX]) && !moveself(p) && !readsreg(p))
+ return 0;
+ else if (p->x.spills)
+ return 0;
+ else if (generic(p->op) == CALL && p->x.next)
+ return 0;
+ else if (p->op == LABEL+V && p->x.next)
+ return 0;
+ else if (p->syms[RX] == tmp && readsreg(p))
+ debug(fprint(stderr, "(requate arm 5 at %x)\n", p)),
+ n++;
+ else if (p->syms[RX] == tmp)
+ break;
+ debug(fprint(stderr, "(requate arm 7 at %x)\n", p));
+ assert(n > 0);
+ for (p = q->x.next; p; p = p->x.next)
+ if (p->syms[RX] == tmp && readsreg(p)) {
+ p->syms[RX] = src;
+ if (--n <= 0)
+ break;
+ }
+ return 1;
+}
+static void prelabel(Node p) {
+ if (p == NULL)
+ return;
+ prelabel(p->kids[0]);
+ prelabel(p->kids[1]);
+ if (NeedsReg[opindex(p->op)])
+ setreg(p, (*IR->x.rmap)(opkind(p->op)));
+ switch (generic(p->op)) {
+ case ADDRF: case ADDRL:
+ if (p->syms[0]->sclass == REGISTER)
+ p->op = VREG+P;
+ break;
+ case INDIR:
+ if (p->kids[0]->op == VREG+P)
+ setreg(p, p->kids[0]->syms[0]);
+ break;
+ case ASGN:
+ if (p->kids[0]->op == VREG+P)
+ rtarget(p, 1, p->kids[0]->syms[0]);
+ break;
+ case CVI: case CVU: case CVP:
+ if (optype(p->op) != F
+ && opsize(p->op) <= p->syms[0]->u.c.v.i)
+ p->op = LOAD + opkind(p->op);
+ break;
+ }
+ (IR->x.target)(p);
+}
+void setreg(Node p, Symbol r) {
+ p->syms[RX] = r;
+}
+void rtarget(Node p, int n, Symbol r) {
+ Node q = p->kids[n];
+
+ assert(q);
+ assert(r);
+ assert(r->sclass == REGISTER || !r->x.wildcard);
+ assert(q->syms[RX]);
+ if (r != q->syms[RX] && !q->syms[RX]->x.wildcard) {
+ q = newnode(LOAD + opkind(q->op),
+ q, NULL, q->syms[0]);
+ if (r->u.t.cse == p->kids[n])
+ r->u.t.cse = q;
+ p->kids[n] = p->x.kids[n] = q;
+ q->x.kids[0] = q->kids[0];
+ }
+ setreg(q, r);
+ debug(fprint(stderr, "(targeting %x->x.kids[%d]=%x to %s)\n", p, n, p->kids[n], r->x.name));
+}
+static void rewrite(Node p) {
+ assert(p->x.inst == 0);
+ prelabel(p);
+ debug(dumptree(p));
+ debug(fprint(stderr, "\n"));
+ (*IR->x._label)(p);
+ debug(dumpcover(p, 1, 0));
+ reduce(p, 1);
+}
+Node gen(Node forest) {
+ int i;
+ struct node sentinel;
+ Node dummy, p;
+
+ head = forest;
+ for (p = forest; p; p = p->link) {
+ assert(p->count == 0);
+ if (generic(p->op) == CALL)
+ docall(p);
+ else if ( generic(p->op) == ASGN
+ && generic(p->kids[1]->op) == CALL)
+ docall(p->kids[1]);
+ else if (generic(p->op) == ARG)
+ (*IR->x.doarg)(p);
+ rewrite(p);
+ p->x.listed = 1;
+ }
+ for (p = forest; p; p = p->link)
+ prune(p, &dummy);
+ relink(&sentinel, &sentinel);
+ for (p = forest; p; p = p->link)
+ linearize(p, &sentinel);
+ forest = sentinel.x.next;
+ assert(forest);
+ sentinel.x.next->x.prev = NULL;
+ sentinel.x.prev->x.next = NULL;
+ for (p = forest; p; p = p->x.next)
+ for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
+ assert(p->x.kids[i]->syms[RX]);
+ if (p->x.kids[i]->syms[RX]->temporary) {
+ p->x.kids[i]->x.prevuse =
+ p->x.kids[i]->syms[RX]->x.lastuse;
+ p->x.kids[i]->syms[RX]->x.lastuse = p->x.kids[i];
+ }
+ }
+ for (p = forest; p; p = p->x.next) {
+ ralloc(p);
+ if (p->x.listed && NeedsReg[opindex(p->op)]
+ && (*IR->x.rmap)(opkind(p->op))) {
+ assert(generic(p->op) == CALL || generic(p->op) == LOAD);
+ putreg(p->syms[RX]);
+ }
+ }
+ return forest;
+}
+int notarget(Node p) {
+ return p->syms[RX]->x.wildcard ? 0 : LBURG_MAX;
+}
+static void putreg(Symbol r) {
+ assert(r && r->x.regnode);
+ freemask[r->x.regnode->set] |= r->x.regnode->mask;
+ debug(dumpregs("(freeing %s)\n", r->x.name, NULL));
+}
+static Symbol askfixedreg(Symbol s) {
+ Regnode r = s->x.regnode;
+ int n = r->set;
+
+ if (r->mask&~freemask[n])
+ return NULL;
+ else {
+ freemask[n] &= ~r->mask;
+ usedmask[n] |= r->mask;
+ return s;
+ }
+}
+static Symbol askreg(Symbol rs, unsigned rmask[]) {
+ int i;
+
+ if (rs->x.wildcard == NULL)
+ return askfixedreg(rs);
+ for (i = 31; i >= 0; i--) {
+ Symbol r = rs->x.wildcard[i];
+ if (r != NULL
+ && !(r->x.regnode->mask&~rmask[r->x.regnode->set])
+ && askfixedreg(r))
+ return r;
+ }
+ return NULL;
+}
+
+static Symbol getreg(Symbol s, unsigned mask[], Node p) {
+ Symbol r = askreg(s, mask);
+ if (r == NULL) {
+ r = spillee(s, mask, p);
+ assert(r && r->x.regnode);
+ spill(r->x.regnode->mask, r->x.regnode->set, p);
+ r = askreg(s, mask);
+ }
+ assert(r && r->x.regnode);
+ r->x.regnode->vbl = NULL;
+ return r;
+}
+int askregvar(Symbol p, Symbol regs) {
+ Symbol r;
+
+ assert(p);
+ if (p->sclass != REGISTER)
+ return 0;
+ else if (!isscalar(p->type)) {
+ p->sclass = AUTO;
+ return 0;
+ }
+ else if (p->temporary) {
+ p->x.name = "?";
+ return 1;
+ }
+ else if ((r = askreg(regs, vmask)) != NULL) {
+ p->x.regnode = r->x.regnode;
+ p->x.regnode->vbl = p;
+ p->x.name = r->x.name;
+ debug(dumpregs("(allocating %s to symbol %s)\n", p->x.name, p->name));
+ return 1;
+ }
+ else {
+ p->sclass = AUTO;
+ return 0;
+ }
+}
+static void linearize(Node p, Node next) {
+ int i;
+
+ for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++)
+ linearize(p->x.kids[i], next);
+ relink(next->x.prev, p);
+ relink(p, next);
+ debug(fprint(stderr, "(listing %x)\n", p));
+}
+static void ralloc(Node p) {
+ int i;
+ unsigned mask[2];
+
+ mask[0] = tmask[0];
+ mask[1] = tmask[1];
+ assert(p);
+ debug(fprint(stderr, "(rallocing %x)\n", p));
+ for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
+ Node kid = p->x.kids[i];
+ Symbol r = kid->syms[RX];
+ assert(r && kid->x.registered);
+ if (r->sclass != REGISTER && r->x.lastuse == kid)
+ putreg(r);
+ }
+ if (!p->x.registered && NeedsReg[opindex(p->op)]
+ && (*IR->x.rmap)(opkind(p->op))) {
+ Symbol sym = p->syms[RX], set = sym;
+ assert(sym);
+ if (sym->temporary)
+ set = (*IR->x.rmap)(opkind(p->op));
+ assert(set);
+ if (set->sclass != REGISTER) {
+ Symbol r;
+ if (*IR->x._templates[getrule(p, p->x.inst)] == '?')
+ for (i = 1; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
+ Symbol r = p->x.kids[i]->syms[RX];
+ assert(p->x.kids[i]->x.registered);
+ assert(r && r->x.regnode);
+ assert(sym->x.wildcard || sym != r);
+ mask[r->x.regnode->set] &= ~r->x.regnode->mask;
+ }
+ r = getreg(set, mask, p);
+ if (sym->temporary) {
+ Node q;
+ r->x.lastuse = sym->x.lastuse;
+ for (q = sym->x.lastuse; q; q = q->x.prevuse) {
+ q->syms[RX] = r;
+ q->x.registered = 1;
+ if (sym->u.t.cse && q->x.copy)
+ q->x.equatable = 1;
+ }
+ } else {
+ p->syms[RX] = r;
+ r->x.lastuse = p;
+ }
+ debug(dumpregs("(allocating %s to node %x)\n", r->x.name, (char *) p));
+ }
+ }
+ p->x.registered = 1;
+ (*IR->x.clobber)(p);
+}
+static Symbol spillee(Symbol set, unsigned mask[], Node here) {
+ Symbol bestreg = NULL;
+ int bestdist = -1, i;
+
+ assert(set);
+ if (!set->x.wildcard)
+ bestreg = set;
+ else {
+ for (i = 31; i >= 0; i--) {
+ Symbol ri = set->x.wildcard[i];
+ if (
+ ri != NULL &&
+ ri->x.lastuse &&
+ (ri->x.regnode->mask&tmask[ri->x.regnode->set]&mask[ri->x.regnode->set])
+ ) {
+ Regnode rn = ri->x.regnode;
+ Node q = here;
+ int dist = 0;
+ for (; q && !uses(q, rn); q = q->x.next)
+ dist++;
+ if (q && dist > bestdist) {
+ bestdist = dist;
+ bestreg = ri;
+ }
+ }
+ }
+ }
+ assert(bestreg); /* Must be able to spill something. Reconfigure the register allocator
+ to ensure that we can allocate a register for all nodes without spilling
+ the node's necessary input regs. */
+ assert(bestreg->x.regnode->vbl == NULL); /* Can't spill register variables because
+ the reload site might be in other blocks. Reconfigure the register allocator
+ to ensure that this register is never allocated to a variable. */
+ return bestreg;
+}
+static int uses(Node p, Regnode rn) {
+ int i;
+
+ for (i = 0; i < NELEMS(p->x.kids); i++)
+ if (
+ p->x.kids[i] &&
+ p->x.kids[i]->x.registered &&
+ rn->set == p->x.kids[i]->syms[RX]->x.regnode->set &&
+ (rn->mask&p->x.kids[i]->syms[RX]->x.regnode->mask)
+ )
+ return 1;
+ return 0;
+}
+static void spillr(Symbol r, Node here) {
+ int i;
+ Symbol tmp;
+ Node p = r->x.lastuse;
+ assert(p);
+ while (p->x.prevuse)
+ assert(r == p->syms[RX]),
+ p = p->x.prevuse;
+ assert(p->x.registered && !readsreg(p));
+ tmp = newtemp(AUTO, optype(p->op), opsize(p->op));
+ genspill(r, p, tmp);
+ for (p = here->x.next; p; p = p->x.next)
+ for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
+ Node k = p->x.kids[i];
+ if (k->x.registered && k->syms[RX] == r)
+ genreload(p, tmp, i);
+ }
+ putreg(r);
+}
+static void genspill(Symbol r, Node last, Symbol tmp) {
+ Node p, q;
+ Symbol s;
+ unsigned ty;
+
+ debug(fprint(stderr, "(spilling %s to local %s)\n", r->x.name, tmp->x.name));
+ debug(fprint(stderr, "(genspill: "));
+ debug(dumptree(last));
+ debug(fprint(stderr, ")\n"));
+ ty = opkind(last->op);
+ NEW0(s, FUNC);
+ s->sclass = REGISTER;
+ s->name = s->x.name = r->x.name;
+ s->x.regnode = r->x.regnode;
+ q = newnode(ADDRL+P + sizeop(IR->ptrmetric.size), NULL, NULL, s);
+ q = newnode(INDIR + ty, q, NULL, NULL);
+ p = newnode(ADDRL+P + sizeop(IR->ptrmetric.size), NULL, NULL, tmp);
+ p = newnode(ASGN + ty, p, q, NULL);
+ p->x.spills = 1;
+ rewrite(p);
+ prune(p, &q);
+ q = last->x.next;
+ linearize(p, q);
+ for (p = last->x.next; p != q; p = p->x.next) {
+ ralloc(p);
+ assert(!p->x.listed || !NeedsReg[opindex(p->op)] || !(*IR->x.rmap)(opkind(p->op)));
+ }
+}
+
+static void genreload(Node p, Symbol tmp, int i) {
+ Node q;
+ int ty;
+
+ debug(fprint(stderr, "(replacing %x with a reload from %s)\n", p->x.kids[i], tmp->x.name));
+ debug(fprint(stderr, "(genreload: "));
+ debug(dumptree(p->x.kids[i]));
+ debug(fprint(stderr, ")\n"));
+ ty = opkind(p->x.kids[i]->op);
+ q = newnode(ADDRL+P + sizeop(IR->ptrmetric.size), NULL, NULL, tmp);
+ p->x.kids[i] = newnode(INDIR + ty, q, NULL, NULL);
+ rewrite(p->x.kids[i]);
+ prune(p->x.kids[i], &q);
+ reprune(&p->kids[1], reprune(&p->kids[0], 0, i, p), i, p);
+ prune(p, &q);
+ linearize(p->x.kids[i], p);
+}
+static int reprune(Node *pp, int k, int n, Node p) {
+ struct node x, *q = *pp;
+
+ if (q == NULL || k > n)
+ return k;
+ else if (q->x.inst == 0)
+ return reprune(&q->kids[1],
+ reprune(&q->kids[0], k, n, p), n, p);
+ if (k == n) {
+ debug(fprint(stderr, "(reprune changes %x from %x to %x)\n", pp, *pp, p->x.kids[n]));
+ *pp = p->x.kids[n];
+ x = *p;
+ (IR->x.target)(&x);
+ }
+ return k + 1;
+}
+void spill(unsigned mask, int n, Node here) {
+ int i;
+ Node p;
+
+ here->x.spills = 1;
+ usedmask[n] |= mask;
+ if (mask&~freemask[n]) {
+
+ assert( /* It makes no sense for a node to clobber() its target. */
+ here->x.registered == 0 || /* call isn't coming through clobber() */
+ here->syms[RX] == NULL ||
+ here->syms[RX]->x.regnode == NULL ||
+ here->syms[RX]->x.regnode->set != n ||
+ (here->syms[RX]->x.regnode->mask&mask) == 0
+ );
+
+ for (p = here; p; p = p->x.next)
+ for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++) {
+ Symbol r = p->x.kids[i]->syms[RX];
+ assert(r);
+ if (p->x.kids[i]->x.registered && r->x.regnode->set == n
+ && r->x.regnode->mask&mask)
+ spillr(r, here);
+ }
+ }
+}
+static void dumpregs(char *msg, char *a, char *b) {
+ fprint(stderr, msg, a, b);
+ fprint(stderr, "(free[0]=%x)\n", freemask[0]);
+ fprint(stderr, "(free[1]=%x)\n", freemask[1]);
+}
+
+int getregnum(Node p) {
+ assert(p && p->syms[RX] && p->syms[RX]->x.regnode);
+ return p->syms[RX]->x.regnode->number;
+}
+
+
+unsigned regloc(Symbol p) {
+ assert(p && p->sclass == REGISTER && p->sclass == REGISTER && p->x.regnode);
+ return p->x.regnode->set<<8 | p->x.regnode->number;
+}
+
diff --git a/lcc/src/init.c b/lcc/src/init.c
index 67bcc69..27bbc51 100755
--- a/lcc/src/init.c
+++ b/lcc/src/init.c
@@ -1,318 +1,318 @@
-#include "c.h"
-
-
-static int curseg; /* current segment */
-
-/* defpointer - initialize a pointer to p or to 0 if p==0 */
-void defpointer(Symbol p) {
- if (p) {
- (*IR->defaddress)(p);
- p->ref++;
- } else {
- static Value v;
- (*IR->defconst)(P, voidptype->size, v);
- }
-}
-
-/* genconst - generate/check constant expression e; return size */
-static int genconst(Tree e, int def) {
- for (;;)
- switch (generic(e->op)) {
- case ADDRG:
- if (def)
- (*IR->defaddress)(e->u.sym);
- return e->type->size;
- case CNST:
- if (e->op == CNST+P && isarray(e->type)) {
- e = cvtconst(e);
- continue;
- }
- if (def)
- (*IR->defconst)(e->type->op, e->type->size, e->u.v);
- return e->type->size;
- case RIGHT:
- assert(e->kids[0] || e->kids[1]);
- if (e->kids[1] && e->kids[0])
- error("initializer must be constant\n");
- e = e->kids[1] ? e->kids[1] : e->kids[0];
- continue;
- case CVP:
- if (isarith(e->type))
- error("cast from `%t' to `%t' is illegal in constant expressions\n",
- e->kids[0]->type, e->type);
- /* fall thru */
- case CVI: case CVU: case CVF:
- e = e->kids[0];
- continue;
- default:
- error("initializer must be constant\n");
- if (def)
- genconst(consttree(0, inttype), def);
- return inttype->size;
- }
-}
-
-/* initvalue - evaluate a constant expression for a value of integer type ty */
-static Tree initvalue(Type ty) {
- Type aty;
- Tree e;
-
- needconst++;
- e = expr1(0);
- if ((aty = assign(ty, e)) != NULL)
- e = cast(e, aty);
- else {
- error("invalid initialization type; found `%t' expected `%t'\n",
- e->type, ty);
- e = retype(consttree(0, inttype), ty);
- }
- needconst--;
- if (generic(e->op) != CNST) {
- error("initializer must be constant\n");
- e = retype(consttree(0, inttype), ty);
- }
- return e;
-}
-
-/* initarray - initialize array of ty of <= len bytes; if len == 0, go to } */
-static int initarray(int len, Type ty, int lev) {
- int n = 0;
-
- do {
- initializer(ty, lev);
- n += ty->size;
- if (len > 0 && n >= len || t != ',')
- break;
- t = gettok();
- } while (t != '}');
- return n;
-}
-
-/* initchar - initialize array of <= len ty characters; if len == 0, go to } */
-static int initchar(int len, Type ty) {
- int n = 0;
- char buf[16], *s = buf;
-
- do {
- *s++ = initvalue(ty)->u.v.i;
- if (++n%inttype->size == 0) {
- (*IR->defstring)(inttype->size, buf);
- s = buf;
- }
- if (len > 0 && n >= len || t != ',')
- break;
- t = gettok();
- } while (t != '}');
- if (s > buf)
- (*IR->defstring)(s - buf, buf);
- return n;
-}
-
-/* initend - finish off an initialization at level lev; accepts trailing comma */
-static void initend(int lev, char follow[]) {
- if (lev == 0 && t == ',')
- t = gettok();
- test('}', follow);
-}
-
-/* initfields - initialize <= an unsigned's worth of bit fields in fields p to q */
-static int initfields(Field p, Field q) {
- unsigned int bits = 0;
- int i, n = 0;
-
- do {
- i = initvalue(inttype)->u.v.i;
- if (fieldsize(p) < 8*p->type->size) {
- if (p->type == inttype &&
- (i < -(int)(fieldmask(p)>>1)-1 || i > (int)(fieldmask(p)>>1))
- || p->type == unsignedtype && (i&~fieldmask(p)) != 0)
- warning("initializer exceeds bit-field width\n");
- i &= fieldmask(p);
- }
- bits |= i<<fieldright(p);
- if (IR->little_endian) {
- if (fieldsize(p) + fieldright(p) > n)
- n = fieldsize(p) + fieldright(p);
- } else {
- if (fieldsize(p) + fieldleft(p) > n)
- n = fieldsize(p) + fieldleft(p);
- }
- if (p->link == q)
- break;
- p = p->link;
- } while (t == ',' && (t = gettok()) != 0);
- n = (n + 7)/8;
- for (i = 0; i < n; i++) {
- Value v;
- if (IR->little_endian) {
- v.u = (unsigned char)bits;
- bits >>= 8;
- } else { /* a big endian */
- v.u = (unsigned char)(bits>>(8*(unsignedtype->size - 1)));
- bits <<= 8;
- }
- (*IR->defconst)(U, unsignedchar->size, v);
- }
- return n;
-}
-
-/* initstruct - initialize a struct ty of <= len bytes; if len == 0, go to } */
-static int initstruct(int len, Type ty, int lev) {
- int a, n = 0;
- Field p = ty->u.sym->u.s.flist;
-
- do {
- if (p->offset > n) {
- (*IR->space)(p->offset - n);
- n += p->offset - n;
- }
- if (p->lsb) {
- Field q = p;
- while (q->link && q->link->offset == p->offset)
- q = q->link;
- n += initfields(p, q->link);
- p = q;
- } else {
- initializer(p->type, lev);
- n += p->type->size;
- }
- if (p->link) {
- p = p->link;
- a = p->type->align;
- } else
- a = ty->align;
- if (a && n%a) {
- (*IR->space)(a - n%a);
- n = roundup(n, a);
- }
- if (len > 0 && n >= len || t != ',')
- break;
- t = gettok();
- } while (t != '}');
- return n;
-}
-
-/* initializer - constexpr | { constexpr ( , constexpr )* [ , ] } */
-Type initializer(Type ty, int lev) {
- int n = 0;
- Tree e;
- Type aty = NULL;
- static char follow[] = { IF, CHAR, STATIC, 0 };
-
- ty = unqual(ty);
- if (isscalar(ty)) {
- needconst++;
- if (t == '{') {
- t = gettok();
- e = expr1(0);
- initend(lev, follow);
- } else
- e = expr1(0);
- e = pointer(e);
- if ((aty = assign(ty, e)) != NULL)
- e = cast(e, aty);
- else
- error("invalid initialization type; found `%t' expected `%t'\n",
- e->type, ty);
- n = genconst(e, 1);
- deallocate(STMT);
- needconst--;
- }
- if ((isunion(ty) || isstruct(ty)) && ty->size == 0) {
- static char follow[] = { CHAR, STATIC, 0 };
- error("cannot initialize undefined `%t'\n", ty);
- skipto(';', follow);
- return ty;
- } else if (isunion(ty)) {
- if (t == '{') {
- t = gettok();
- n = initstruct(ty->u.sym->u.s.flist->type->size, ty, lev + 1);
- initend(lev, follow);
- } else {
- if (lev == 0)
- error("missing { in initialization of `%t'\n", ty);
- n = initstruct(ty->u.sym->u.s.flist->type->size, ty, lev + 1);
- }
- } else if (isstruct(ty)) {
- if (t == '{') {
- t = gettok();
- n = initstruct(0, ty, lev + 1);
- test('}', follow);
- } else if (lev > 0)
- n = initstruct(ty->size, ty, lev + 1);
- else {
- error("missing { in initialization of `%t'\n", ty);
- n = initstruct(ty->u.sym->u.s.flist->type->size, ty, lev + 1);
- }
- }
- if (isarray(ty))
- aty = unqual(ty->type);
- if (isarray(ty) && ischar(aty)) {
- if (t == SCON) {
- if (ty->size > 0 && ty->size == tsym->type->size - 1)
- tsym->type = array(chartype, ty->size, 0);
- n = tsym->type->size;
- (*IR->defstring)(tsym->type->size, tsym->u.c.v.p);
- t = gettok();
- } else if (t == '{') {
- t = gettok();
- if (t == SCON) {
- ty = initializer(ty, lev + 1);
- initend(lev, follow);
- return ty;
- }
- n = initchar(0, aty);
- test('}', follow);
- } else if (lev > 0 && ty->size > 0)
- n = initchar(ty->size, aty);
- else { /* eg, char c[] = 0; */
- error("missing { in initialization of `%t'\n", ty);
- n = initchar(1, aty);
- }
- } else if (isarray(ty)) {
- if (t == SCON && aty == widechar) {
- int i;
- unsigned int *s = tsym->u.c.v.p;
- if (ty->size > 0 && ty->size == tsym->type->size - widechar->size)
- tsym->type = array(widechar, ty->size/widechar->size, 0);
- n = tsym->type->size;
- for (i = 0; i < n; i += widechar->size) {
- Value v;
- v.u = *s++;
- (*IR->defconst)(widechar->op, widechar->size, v);
- }
- t = gettok();
- } else if (t == '{') {
- t = gettok();
- if (t == SCON && aty == widechar) {
- ty = initializer(ty, lev + 1);
- initend(lev, follow);
- return ty;
- }
- n = initarray(0, aty, lev + 1);
- test('}', follow);
- } else if (lev > 0 && ty->size > 0)
- n = initarray(ty->size, aty, lev + 1);
- else {
- error("missing { in initialization of `%t'\n", ty);
- n = initarray(aty->size, aty, lev + 1);
- }
- }
- if (ty->size) {
- if (n > ty->size)
- error("too many initializers\n");
- else if (n < ty->size)
- (*IR->space)(ty->size - n);
- } else if (isarray(ty) && ty->type->size > 0)
- ty = array(ty->type, n/ty->type->size, 0);
- else
- ty->size = n;
- return ty;
-}
-
-/* swtoseg - switch to segment seg, if necessary */
-void swtoseg(int seg) {
- if (curseg != seg)
- (*IR->segment)(seg);
- curseg = seg;
-}
+#include "c.h"
+
+
+static int curseg; /* current segment */
+
+/* defpointer - initialize a pointer to p or to 0 if p==0 */
+void defpointer(Symbol p) {
+ if (p) {
+ (*IR->defaddress)(p);
+ p->ref++;
+ } else {
+ static Value v;
+ (*IR->defconst)(P, voidptype->size, v);
+ }
+}
+
+/* genconst - generate/check constant expression e; return size */
+static int genconst(Tree e, int def) {
+ for (;;)
+ switch (generic(e->op)) {
+ case ADDRG:
+ if (def)
+ (*IR->defaddress)(e->u.sym);
+ return e->type->size;
+ case CNST:
+ if (e->op == CNST+P && isarray(e->type)) {
+ e = cvtconst(e);
+ continue;
+ }
+ if (def)
+ (*IR->defconst)(e->type->op, e->type->size, e->u.v);
+ return e->type->size;
+ case RIGHT:
+ assert(e->kids[0] || e->kids[1]);
+ if (e->kids[1] && e->kids[0])
+ error("initializer must be constant\n");
+ e = e->kids[1] ? e->kids[1] : e->kids[0];
+ continue;
+ case CVP:
+ if (isarith(e->type))
+ error("cast from `%t' to `%t' is illegal in constant expressions\n",
+ e->kids[0]->type, e->type);
+ /* fall thru */
+ case CVI: case CVU: case CVF:
+ e = e->kids[0];
+ continue;
+ default:
+ error("initializer must be constant\n");
+ if (def)
+ genconst(consttree(0, inttype), def);
+ return inttype->size;
+ }
+}
+
+/* initvalue - evaluate a constant expression for a value of integer type ty */
+static Tree initvalue(Type ty) {
+ Type aty;
+ Tree e;
+
+ needconst++;
+ e = expr1(0);
+ if ((aty = assign(ty, e)) != NULL)
+ e = cast(e, aty);
+ else {
+ error("invalid initialization type; found `%t' expected `%t'\n",
+ e->type, ty);
+ e = retype(consttree(0, inttype), ty);
+ }
+ needconst--;
+ if (generic(e->op) != CNST) {
+ error("initializer must be constant\n");
+ e = retype(consttree(0, inttype), ty);
+ }
+ return e;
+}
+
+/* initarray - initialize array of ty of <= len bytes; if len == 0, go to } */
+static int initarray(int len, Type ty, int lev) {
+ int n = 0;
+
+ do {
+ initializer(ty, lev);
+ n += ty->size;
+ if (len > 0 && n >= len || t != ',')
+ break;
+ t = gettok();
+ } while (t != '}');
+ return n;
+}
+
+/* initchar - initialize array of <= len ty characters; if len == 0, go to } */
+static int initchar(int len, Type ty) {
+ int n = 0;
+ char buf[16], *s = buf;
+
+ do {
+ *s++ = initvalue(ty)->u.v.i;
+ if (++n%inttype->size == 0) {
+ (*IR->defstring)(inttype->size, buf);
+ s = buf;
+ }
+ if (len > 0 && n >= len || t != ',')
+ break;
+ t = gettok();
+ } while (t != '}');
+ if (s > buf)
+ (*IR->defstring)(s - buf, buf);
+ return n;
+}
+
+/* initend - finish off an initialization at level lev; accepts trailing comma */
+static void initend(int lev, char follow[]) {
+ if (lev == 0 && t == ',')
+ t = gettok();
+ test('}', follow);
+}
+
+/* initfields - initialize <= an unsigned's worth of bit fields in fields p to q */
+static int initfields(Field p, Field q) {
+ unsigned int bits = 0;
+ int i, n = 0;
+
+ do {
+ i = initvalue(inttype)->u.v.i;
+ if (fieldsize(p) < 8*p->type->size) {
+ if (p->type == inttype &&
+ (i < -(int)(fieldmask(p)>>1)-1 || i > (int)(fieldmask(p)>>1))
+ || p->type == unsignedtype && (i&~fieldmask(p)) != 0)
+ warning("initializer exceeds bit-field width\n");
+ i &= fieldmask(p);
+ }
+ bits |= i<<fieldright(p);
+ if (IR->little_endian) {
+ if (fieldsize(p) + fieldright(p) > n)
+ n = fieldsize(p) + fieldright(p);
+ } else {
+ if (fieldsize(p) + fieldleft(p) > n)
+ n = fieldsize(p) + fieldleft(p);
+ }
+ if (p->link == q)
+ break;
+ p = p->link;
+ } while (t == ',' && (t = gettok()) != 0);
+ n = (n + 7)/8;
+ for (i = 0; i < n; i++) {
+ Value v;
+ if (IR->little_endian) {
+ v.u = (unsigned char)bits;
+ bits >>= 8;
+ } else { /* a big endian */
+ v.u = (unsigned char)(bits>>(8*(unsignedtype->size - 1)));
+ bits <<= 8;
+ }
+ (*IR->defconst)(U, unsignedchar->size, v);
+ }
+ return n;
+}
+
+/* initstruct - initialize a struct ty of <= len bytes; if len == 0, go to } */
+static int initstruct(int len, Type ty, int lev) {
+ int a, n = 0;
+ Field p = ty->u.sym->u.s.flist;
+
+ do {
+ if (p->offset > n) {
+ (*IR->space)(p->offset - n);
+ n += p->offset - n;
+ }
+ if (p->lsb) {
+ Field q = p;
+ while (q->link && q->link->offset == p->offset)
+ q = q->link;
+ n += initfields(p, q->link);
+ p = q;
+ } else {
+ initializer(p->type, lev);
+ n += p->type->size;
+ }
+ if (p->link) {
+ p = p->link;
+ a = p->type->align;
+ } else
+ a = ty->align;
+ if (a && n%a) {
+ (*IR->space)(a - n%a);
+ n = roundup(n, a);
+ }
+ if (len > 0 && n >= len || t != ',')
+ break;
+ t = gettok();
+ } while (t != '}');
+ return n;
+}
+
+/* initializer - constexpr | { constexpr ( , constexpr )* [ , ] } */
+Type initializer(Type ty, int lev) {
+ int n = 0;
+ Tree e;
+ Type aty = NULL;
+ static char follow[] = { IF, CHAR, STATIC, 0 };
+
+ ty = unqual(ty);
+ if (isscalar(ty)) {
+ needconst++;
+ if (t == '{') {
+ t = gettok();
+ e = expr1(0);
+ initend(lev, follow);
+ } else
+ e = expr1(0);
+ e = pointer(e);
+ if ((aty = assign(ty, e)) != NULL)
+ e = cast(e, aty);
+ else
+ error("invalid initialization type; found `%t' expected `%t'\n",
+ e->type, ty);
+ n = genconst(e, 1);
+ deallocate(STMT);
+ needconst--;
+ }
+ if ((isunion(ty) || isstruct(ty)) && ty->size == 0) {
+ static char follow[] = { CHAR, STATIC, 0 };
+ error("cannot initialize undefined `%t'\n", ty);
+ skipto(';', follow);
+ return ty;
+ } else if (isunion(ty)) {
+ if (t == '{') {
+ t = gettok();
+ n = initstruct(ty->u.sym->u.s.flist->type->size, ty, lev + 1);
+ initend(lev, follow);
+ } else {
+ if (lev == 0)
+ error("missing { in initialization of `%t'\n", ty);
+ n = initstruct(ty->u.sym->u.s.flist->type->size, ty, lev + 1);
+ }
+ } else if (isstruct(ty)) {
+ if (t == '{') {
+ t = gettok();
+ n = initstruct(0, ty, lev + 1);
+ test('}', follow);
+ } else if (lev > 0)
+ n = initstruct(ty->size, ty, lev + 1);
+ else {
+ error("missing { in initialization of `%t'\n", ty);
+ n = initstruct(ty->u.sym->u.s.flist->type->size, ty, lev + 1);
+ }
+ }
+ if (isarray(ty))
+ aty = unqual(ty->type);
+ if (isarray(ty) && ischar(aty)) {
+ if (t == SCON) {
+ if (ty->size > 0 && ty->size == tsym->type->size - 1)
+ tsym->type = array(chartype, ty->size, 0);
+ n = tsym->type->size;
+ (*IR->defstring)(tsym->type->size, tsym->u.c.v.p);
+ t = gettok();
+ } else if (t == '{') {
+ t = gettok();
+ if (t == SCON) {
+ ty = initializer(ty, lev + 1);
+ initend(lev, follow);
+ return ty;
+ }
+ n = initchar(0, aty);
+ test('}', follow);
+ } else if (lev > 0 && ty->size > 0)
+ n = initchar(ty->size, aty);
+ else { /* eg, char c[] = 0; */
+ error("missing { in initialization of `%t'\n", ty);
+ n = initchar(1, aty);
+ }
+ } else if (isarray(ty)) {
+ if (t == SCON && aty == widechar) {
+ int i;
+ unsigned int *s = tsym->u.c.v.p;
+ if (ty->size > 0 && ty->size == tsym->type->size - widechar->size)
+ tsym->type = array(widechar, ty->size/widechar->size, 0);
+ n = tsym->type->size;
+ for (i = 0; i < n; i += widechar->size) {
+ Value v;
+ v.u = *s++;
+ (*IR->defconst)(widechar->op, widechar->size, v);
+ }
+ t = gettok();
+ } else if (t == '{') {
+ t = gettok();
+ if (t == SCON && aty == widechar) {
+ ty = initializer(ty, lev + 1);
+ initend(lev, follow);
+ return ty;
+ }
+ n = initarray(0, aty, lev + 1);
+ test('}', follow);
+ } else if (lev > 0 && ty->size > 0)
+ n = initarray(ty->size, aty, lev + 1);
+ else {
+ error("missing { in initialization of `%t'\n", ty);
+ n = initarray(aty->size, aty, lev + 1);
+ }
+ }
+ if (ty->size) {
+ if (n > ty->size)
+ error("too many initializers\n");
+ else if (n < ty->size)
+ (*IR->space)(ty->size - n);
+ } else if (isarray(ty) && ty->type->size > 0)
+ ty = array(ty->type, n/ty->type->size, 0);
+ else
+ ty->size = n;
+ return ty;
+}
+
+/* swtoseg - switch to segment seg, if necessary */
+void swtoseg(int seg) {
+ if (curseg != seg)
+ (*IR->segment)(seg);
+ curseg = seg;
+}
diff --git a/lcc/src/inits.c b/lcc/src/inits.c
index d4d49df..449724a 100755
--- a/lcc/src/inits.c
+++ b/lcc/src/inits.c
@@ -1,8 +1,8 @@
-void init(int argc, char *argv[]) {
- {extern void input_init(int, char *[]); input_init(argc, argv);}
- {extern void main_init(int, char *[]); main_init(argc, argv);}
- {extern void prof_init(int, char *[]); prof_init(argc, argv);}
- {extern void trace_init(int, char *[]); trace_init(argc, argv);}
- {extern void type_init(int, char *[]); type_init(argc, argv);}
- {extern void x86linux_init(int, char *[]); x86linux_init(argc, argv);}
-}
+void init(int argc, char *argv[]) {
+ {extern void input_init(int, char *[]); input_init(argc, argv);}
+ {extern void main_init(int, char *[]); main_init(argc, argv);}
+ {extern void prof_init(int, char *[]); prof_init(argc, argv);}
+ {extern void trace_init(int, char *[]); trace_init(argc, argv);}
+ {extern void type_init(int, char *[]); type_init(argc, argv);}
+ {extern void x86linux_init(int, char *[]); x86linux_init(argc, argv);}
+}
diff --git a/lcc/src/input.c b/lcc/src/input.c
index 2f34420..4f0afc8 100755
--- a/lcc/src/input.c
+++ b/lcc/src/input.c
@@ -1,134 +1,134 @@
-#include "c.h"
-
-
-static void pragma(void);
-static void resynch(void);
-
-static int bsize;
-static unsigned char buffer[MAXLINE+1 + BUFSIZE+1];
-unsigned char *cp; /* current input character */
-char *file; /* current input file name */
-char *firstfile; /* first input file */
-unsigned char *limit; /* points to last character + 1 */
-char *line; /* current line */
-int lineno; /* line number of current line */
-
-void nextline(void) {
- do {
- if (cp >= limit) {
- fillbuf();
- if (cp >= limit)
- cp = limit;
- if (cp == limit)
- return;
- } else {
- lineno++;
- for (line = (char *)cp; *cp==' ' || *cp=='\t'; cp++)
- ;
- if (*cp == '#') {
- resynch();
- nextline();
- }
- }
- } while (*cp == '\n' && cp == limit);
-}
-void fillbuf(void) {
- if (bsize == 0)
- return;
- if (cp >= limit)
- cp = &buffer[MAXLINE+1];
- else
- {
- int n = limit - cp;
- unsigned char *s = &buffer[MAXLINE+1] - n;
- assert(s >= buffer);
- line = (char *)s - ((char *)cp - line);
- while (cp < limit)
- *s++ = *cp++;
- cp = &buffer[MAXLINE+1] - n;
- }
- if (feof(stdin))
- bsize = 0;
- else
- bsize = fread(&buffer[MAXLINE+1], 1, BUFSIZE, stdin);
- if (bsize < 0) {
- error("read error\n");
- exit(EXIT_FAILURE);
- }
- limit = &buffer[MAXLINE+1+bsize];
- *limit = '\n';
-}
-void input_init(int argc, char *argv[]) {
- static int inited;
-
- if (inited)
- return;
- inited = 1;
- main_init(argc, argv);
- limit = cp = &buffer[MAXLINE+1];
- bsize = -1;
- lineno = 0;
- file = NULL;
- fillbuf();
- if (cp >= limit)
- cp = limit;
- nextline();
-}
-
-/* pragma - handle #pragma ref id... */
-static void pragma(void) {
- if ((t = gettok()) == ID && strcmp(token, "ref") == 0)
- for (;;) {
- while (*cp == ' ' || *cp == '\t')
- cp++;
- if (*cp == '\n' || *cp == 0)
- break;
- if ((t = gettok()) == ID && tsym) {
- tsym->ref++;
- use(tsym, src);
- }
- }
-}
-
-/* resynch - set line number/file name in # n [ "file" ] and #pragma ... */
-static void resynch(void) {
- for (cp++; *cp == ' ' || *cp == '\t'; )
- cp++;
- if (limit - cp < MAXLINE)
- fillbuf();
- if (strncmp((char *)cp, "pragma", 6) == 0) {
- cp += 6;
- pragma();
- } else if (*cp >= '0' && *cp <= '9') {
- line: for (lineno = 0; *cp >= '0' && *cp <= '9'; )
- lineno = 10*lineno + *cp++ - '0';
- lineno--;
- while (*cp == ' ' || *cp == '\t')
- cp++;
- if (*cp == '"') {
- file = (char *)++cp;
- while (*cp && *cp != '"' && *cp != '\n')
- cp++;
- file = stringn(file, (char *)cp - file);
- if (*cp == '\n')
- warning("missing \" in preprocessor line\n");
- if (firstfile == 0)
- firstfile = file;
- }
- } else if (strncmp((char *)cp, "line", 4) == 0) {
- for (cp += 4; *cp == ' ' || *cp == '\t'; )
- cp++;
- if (*cp >= '0' && *cp <= '9')
- goto line;
- if (Aflag >= 2)
- warning("unrecognized control line\n");
- } else if (Aflag >= 2 && *cp != '\n')
- warning("unrecognized control line\n");
- while (*cp)
- if (*cp++ == '\n')
- if (cp == limit + 1)
- nextline();
- else
- break;
-}
-
+#include "c.h"
+
+
+static void pragma(void);
+static void resynch(void);
+
+static int bsize;
+static unsigned char buffer[MAXLINE+1 + BUFSIZE+1];
+unsigned char *cp; /* current input character */
+char *file; /* current input file name */
+char *firstfile; /* first input file */
+unsigned char *limit; /* points to last character + 1 */
+char *line; /* current line */
+int lineno; /* line number of current line */
+
+void nextline(void) {
+ do {
+ if (cp >= limit) {
+ fillbuf();
+ if (cp >= limit)
+ cp = limit;
+ if (cp == limit)
+ return;
+ } else {
+ lineno++;
+ for (line = (char *)cp; *cp==' ' || *cp=='\t'; cp++)
+ ;
+ if (*cp == '#') {
+ resynch();
+ nextline();
+ }
+ }
+ } while (*cp == '\n' && cp == limit);
+}
+void fillbuf(void) {
+ if (bsize == 0)
+ return;
+ if (cp >= limit)
+ cp = &buffer[MAXLINE+1];
+ else
+ {
+ int n = limit - cp;
+ unsigned char *s = &buffer[MAXLINE+1] - n;
+ assert(s >= buffer);
+ line = (char *)s - ((char *)cp - line);
+ while (cp < limit)
+ *s++ = *cp++;
+ cp = &buffer[MAXLINE+1] - n;
+ }
+ if (feof(stdin))
+ bsize = 0;
+ else
+ bsize = fread(&buffer[MAXLINE+1], 1, BUFSIZE, stdin);
+ if (bsize < 0) {
+ error("read error\n");
+ exit(EXIT_FAILURE);
+ }
+ limit = &buffer[MAXLINE+1+bsize];
+ *limit = '\n';
+}
+void input_init(int argc, char *argv[]) {
+ static int inited;
+
+ if (inited)
+ return;
+ inited = 1;
+ main_init(argc, argv);
+ limit = cp = &buffer[MAXLINE+1];
+ bsize = -1;
+ lineno = 0;
+ file = NULL;
+ fillbuf();
+ if (cp >= limit)
+ cp = limit;
+ nextline();
+}
+
+/* pragma - handle #pragma ref id... */
+static void pragma(void) {
+ if ((t = gettok()) == ID && strcmp(token, "ref") == 0)
+ for (;;) {
+ while (*cp == ' ' || *cp == '\t')
+ cp++;
+ if (*cp == '\n' || *cp == 0)
+ break;
+ if ((t = gettok()) == ID && tsym) {
+ tsym->ref++;
+ use(tsym, src);
+ }
+ }
+}
+
+/* resynch - set line number/file name in # n [ "file" ] and #pragma ... */
+static void resynch(void) {
+ for (cp++; *cp == ' ' || *cp == '\t'; )
+ cp++;
+ if (limit - cp < MAXLINE)
+ fillbuf();
+ if (strncmp((char *)cp, "pragma", 6) == 0) {
+ cp += 6;
+ pragma();
+ } else if (*cp >= '0' && *cp <= '9') {
+ line: for (lineno = 0; *cp >= '0' && *cp <= '9'; )
+ lineno = 10*lineno + *cp++ - '0';
+ lineno--;
+ while (*cp == ' ' || *cp == '\t')
+ cp++;
+ if (*cp == '"') {
+ file = (char *)++cp;
+ while (*cp && *cp != '"' && *cp != '\n')
+ cp++;
+ file = stringn(file, (char *)cp - file);
+ if (*cp == '\n')
+ warning("missing \" in preprocessor line\n");
+ if (firstfile == 0)
+ firstfile = file;
+ }
+ } else if (strncmp((char *)cp, "line", 4) == 0) {
+ for (cp += 4; *cp == ' ' || *cp == '\t'; )
+ cp++;
+ if (*cp >= '0' && *cp <= '9')
+ goto line;
+ if (Aflag >= 2)
+ warning("unrecognized control line\n");
+ } else if (Aflag >= 2 && *cp != '\n')
+ warning("unrecognized control line\n");
+ while (*cp)
+ if (*cp++ == '\n')
+ if (cp == limit + 1)
+ nextline();
+ else
+ break;
+}
+
diff --git a/lcc/src/lex.c b/lcc/src/lex.c
index 09c50f3..6643172 100755
--- a/lcc/src/lex.c
+++ b/lcc/src/lex.c
@@ -1,922 +1,922 @@
-#include "c.h"
-#include <float.h>
-#include <errno.h>
-
-
-#define MAXTOKEN 32
-
-enum { BLANK=01, NEWLINE=02, LETTER=04,
- DIGIT=010, HEX=020, OTHER=040 };
-
-static unsigned char map[256] = { /* 000 nul */ 0,
- /* 001 soh */ 0,
- /* 002 stx */ 0,
- /* 003 etx */ 0,
- /* 004 eot */ 0,
- /* 005 enq */ 0,
- /* 006 ack */ 0,
- /* 007 bel */ 0,
- /* 010 bs */ 0,
- /* 011 ht */ BLANK,
- /* 012 nl */ NEWLINE,
- /* 013 vt */ BLANK,
- /* 014 ff */ BLANK,
- /* 015 cr */ 0,
- /* 016 so */ 0,
- /* 017 si */ 0,
- /* 020 dle */ 0,
- /* 021 dc1 */ 0,
- /* 022 dc2 */ 0,
- /* 023 dc3 */ 0,
- /* 024 dc4 */ 0,
- /* 025 nak */ 0,
- /* 026 syn */ 0,
- /* 027 etb */ 0,
- /* 030 can */ 0,
- /* 031 em */ 0,
- /* 032 sub */ 0,
- /* 033 esc */ 0,
- /* 034 fs */ 0,
- /* 035 gs */ 0,
- /* 036 rs */ 0,
- /* 037 us */ 0,
- /* 040 sp */ BLANK,
- /* 041 ! */ OTHER,
- /* 042 " */ OTHER,
- /* 043 # */ OTHER,
- /* 044 $ */ 0,
- /* 045 % */ OTHER,
- /* 046 & */ OTHER,
- /* 047 ' */ OTHER,
- /* 050 ( */ OTHER,
- /* 051 ) */ OTHER,
- /* 052 * */ OTHER,
- /* 053 + */ OTHER,
- /* 054 , */ OTHER,
- /* 055 - */ OTHER,
- /* 056 . */ OTHER,
- /* 057 / */ OTHER,
- /* 060 0 */ DIGIT,
- /* 061 1 */ DIGIT,
- /* 062 2 */ DIGIT,
- /* 063 3 */ DIGIT,
- /* 064 4 */ DIGIT,
- /* 065 5 */ DIGIT,
- /* 066 6 */ DIGIT,
- /* 067 7 */ DIGIT,
- /* 070 8 */ DIGIT,
- /* 071 9 */ DIGIT,
- /* 072 : */ OTHER,
- /* 073 ; */ OTHER,
- /* 074 < */ OTHER,
- /* 075 = */ OTHER,
- /* 076 > */ OTHER,
- /* 077 ? */ OTHER,
- /* 100 @ */ 0,
- /* 101 A */ LETTER|HEX,
- /* 102 B */ LETTER|HEX,
- /* 103 C */ LETTER|HEX,
- /* 104 D */ LETTER|HEX,
- /* 105 E */ LETTER|HEX,
- /* 106 F */ LETTER|HEX,
- /* 107 G */ LETTER,
- /* 110 H */ LETTER,
- /* 111 I */ LETTER,
- /* 112 J */ LETTER,
- /* 113 K */ LETTER,
- /* 114 L */ LETTER,
- /* 115 M */ LETTER,
- /* 116 N */ LETTER,
- /* 117 O */ LETTER,
- /* 120 P */ LETTER,
- /* 121 Q */ LETTER,
- /* 122 R */ LETTER,
- /* 123 S */ LETTER,
- /* 124 T */ LETTER,
- /* 125 U */ LETTER,
- /* 126 V */ LETTER,
- /* 127 W */ LETTER,
- /* 130 X */ LETTER,
- /* 131 Y */ LETTER,
- /* 132 Z */ LETTER,
- /* 133 [ */ OTHER,
- /* 134 \ */ OTHER,
- /* 135 ] */ OTHER,
- /* 136 ^ */ OTHER,
- /* 137 _ */ LETTER,
- /* 140 ` */ 0,
- /* 141 a */ LETTER|HEX,
- /* 142 b */ LETTER|HEX,
- /* 143 c */ LETTER|HEX,
- /* 144 d */ LETTER|HEX,
- /* 145 e */ LETTER|HEX,
- /* 146 f */ LETTER|HEX,
- /* 147 g */ LETTER,
- /* 150 h */ LETTER,
- /* 151 i */ LETTER,
- /* 152 j */ LETTER,
- /* 153 k */ LETTER,
- /* 154 l */ LETTER,
- /* 155 m */ LETTER,
- /* 156 n */ LETTER,
- /* 157 o */ LETTER,
- /* 160 p */ LETTER,
- /* 161 q */ LETTER,
- /* 162 r */ LETTER,
- /* 163 s */ LETTER,
- /* 164 t */ LETTER,
- /* 165 u */ LETTER,
- /* 166 v */ LETTER,
- /* 167 w */ LETTER,
- /* 170 x */ LETTER,
- /* 171 y */ LETTER,
- /* 172 z */ LETTER,
- /* 173 { */ OTHER,
- /* 174 | */ OTHER,
- /* 175 } */ OTHER,
- /* 176 ~ */ OTHER, };
-static struct symbol tval;
-static char cbuf[BUFSIZE+1];
-static unsigned int wcbuf[BUFSIZE+1];
-
-Coordinate src; /* current source coordinate */
-int t;
-char *token; /* current token */
-Symbol tsym; /* symbol table entry for current token */
-
-static void *cput(int c, void *cl);
-static void *wcput(int c, void *cl);
-static void *scon(int q, void *put(int c, void *cl), void *cl);
-static int backslash(int q);
-static Symbol fcon(void);
-static Symbol icon(unsigned long, int, int);
-static void ppnumber(char *);
-
-int gettok(void) {
- for (;;) {
- register unsigned char *rcp = cp;
- while (map[*rcp]&BLANK)
- rcp++;
- if (limit - rcp < MAXTOKEN) {
- cp = rcp;
- fillbuf();
- rcp = cp;
- }
- src.file = file;
- src.x = (char *)rcp - line;
- src.y = lineno;
- cp = rcp + 1;
- switch (*rcp++) {
- case '/': if (*rcp == '*') {
- int c = 0;
- for (rcp++; *rcp != '/' || c != '*'; )
- if (map[*rcp]&NEWLINE) {
- if (rcp < limit)
- c = *rcp;
- cp = rcp + 1;
- nextline();
- rcp = cp;
- if (rcp == limit)
- break;
- } else
- c = *rcp++;
- if (rcp < limit)
- rcp++;
- else
- error("unclosed comment\n");
- cp = rcp;
- continue;
- }
- return '/';
- case '<':
- if (*rcp == '=') return cp++, LEQ;
- if (*rcp == '<') return cp++, LSHIFT;
- return '<';
- case '>':
- if (*rcp == '=') return cp++, GEQ;
- if (*rcp == '>') return cp++, RSHIFT;
- return '>';
- case '-':
- if (*rcp == '>') return cp++, DEREF;
- if (*rcp == '-') return cp++, DECR;
- return '-';
- case '=': return *rcp == '=' ? cp++, EQL : '=';
- case '!': return *rcp == '=' ? cp++, NEQ : '!';
- case '|': return *rcp == '|' ? cp++, OROR : '|';
- case '&': return *rcp == '&' ? cp++, ANDAND : '&';
- case '+': return *rcp == '+' ? cp++, INCR : '+';
- case ';': case ',': case ':':
- case '*': case '~': case '%': case '^': case '?':
- case '[': case ']': case '{': case '}': case '(': case ')':
- return rcp[-1];
- case '\n': case '\v': case '\r': case '\f':
- nextline();
- if (cp == limit) {
- tsym = NULL;
- return EOI;
- }
- continue;
-
- case 'i':
- if (rcp[0] == 'f'
- && !(map[rcp[1]]&(DIGIT|LETTER))) {
- cp = rcp + 1;
- return IF;
- }
- if (rcp[0] == 'n'
- && rcp[1] == 't'
- && !(map[rcp[2]]&(DIGIT|LETTER))) {
- cp = rcp + 2;
- tsym = inttype->u.sym;
- return INT;
- }
- goto id;
- case 'h': case 'j': case 'k': case 'm': case 'n': case 'o':
- case 'p': case 'q': case 'x': case 'y': case 'z':
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'G': case 'H': case 'I': case 'J': case 'K':
- case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
- case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
- case 'Y': case 'Z':
- id:
- if (limit - rcp < MAXLINE) {
- cp = rcp - 1;
- fillbuf();
- rcp = ++cp;
- }
- assert(cp == rcp);
- token = (char *)rcp - 1;
- while (map[*rcp]&(DIGIT|LETTER))
- rcp++;
- token = stringn(token, (char *)rcp - token);
- tsym = lookup(token, identifiers);
- cp = rcp;
- return ID;
- case '0': case '1': case '2': case '3': case '4':
- case '5': case '6': case '7': case '8': case '9': {
- unsigned long n = 0;
- if (limit - rcp < MAXLINE) {
- cp = rcp - 1;
- fillbuf();
- rcp = ++cp;
- }
- assert(cp == rcp);
- token = (char *)rcp - 1;
- if (*token == '0' && (*rcp == 'x' || *rcp == 'X')) {
- int d, overflow = 0;
- while (*++rcp) {
- if (map[*rcp]&DIGIT)
- d = *rcp - '0';
- else if (*rcp >= 'a' && *rcp <= 'f')
- d = *rcp - 'a' + 10;
- else if (*rcp >= 'A' && *rcp <= 'F')
- d = *rcp - 'A' + 10;
- else
- break;
- if (n&~(~0UL >> 4))
- overflow = 1;
- else
- n = (n<<4) + d;
- }
- if ((char *)rcp - token <= 2)
- error("invalid hexadecimal constant `%S'\n", token, (char *)rcp-token);
- cp = rcp;
- tsym = icon(n, overflow, 16);
- } else if (*token == '0') {
- int err = 0, overflow = 0;
- for ( ; map[*rcp]&DIGIT; rcp++) {
- if (*rcp == '8' || *rcp == '9')
- err = 1;
- if (n&~(~0UL >> 3))
- overflow = 1;
- else
- n = (n<<3) + (*rcp - '0');
- }
- if (*rcp == '.' || *rcp == 'e' || *rcp == 'E') {
- cp = rcp;
- tsym = fcon();
- return FCON;
- }
- cp = rcp;
- tsym = icon(n, overflow, 8);
- if (err)
- error("invalid octal constant `%S'\n", token, (char*)cp-token);
- } else {
- int overflow = 0;
- for (n = *token - '0'; map[*rcp]&DIGIT; ) {
- int d = *rcp++ - '0';
- if (n > (ULONG_MAX - d)/10)
- overflow = 1;
- else
- n = 10*n + d;
- }
- if (*rcp == '.' || *rcp == 'e' || *rcp == 'E') {
- cp = rcp;
- tsym = fcon();
- return FCON;
- }
- cp = rcp;
- tsym = icon(n, overflow, 10);
- }
- return ICON;
- }
- case '.':
- if (rcp[0] == '.' && rcp[1] == '.') {
- cp += 2;
- return ELLIPSIS;
- }
- if ((map[*rcp]&DIGIT) == 0)
- return '.';
- if (limit - rcp < MAXLINE) {
- cp = rcp - 1;
- fillbuf();
- rcp = ++cp;
- }
- assert(cp == rcp);
- cp = rcp - 1;
- token = (char *)cp;
- tsym = fcon();
- return FCON;
- case 'L':
- if (*rcp == '\'') {
- unsigned int *s = scon(*cp, wcput, wcbuf);
- if (s - wcbuf > 2)
- warning("excess characters in wide-character literal ignored\n");
- tval.type = widechar;
- tval.u.c.v.u = wcbuf[0];
- tsym = &tval;
- return ICON;
- } else if (*rcp == '"') {
- unsigned int *s = scon(*cp, wcput, wcbuf);
- tval.type = array(widechar, s - wcbuf, 0);
- tval.u.c.v.p = wcbuf;
- tsym = &tval;
- return SCON;
- } else
- goto id;
- case '\'': {
- char *s = scon(*--cp, cput, cbuf);
- if (s - cbuf > 2)
- warning("excess characters in multibyte character literal ignored\n");
- tval.type = inttype;
- if (chartype->op == INT)
- tval.u.c.v.i = extend(cbuf[0], chartype);
- else
- tval.u.c.v.i = cbuf[0]&0xFF;
- tsym = &tval;
- return ICON;
- }
- case '"': {
- char *s = scon(*--cp, cput, cbuf);
- tval.type = array(chartype, s - cbuf, 0);
- tval.u.c.v.p = cbuf;
- tsym = &tval;
- return SCON;
- }
- case 'a':
- if (rcp[0] == 'u'
- && rcp[1] == 't'
- && rcp[2] == 'o'
- && !(map[rcp[3]]&(DIGIT|LETTER))) {
- cp = rcp + 3;
- return AUTO;
- }
- goto id;
- case 'b':
- if (rcp[0] == 'r'
- && rcp[1] == 'e'
- && rcp[2] == 'a'
- && rcp[3] == 'k'
- && !(map[rcp[4]]&(DIGIT|LETTER))) {
- cp = rcp + 4;
- return BREAK;
- }
- goto id;
- case 'c':
- if (rcp[0] == 'a'
- && rcp[1] == 's'
- && rcp[2] == 'e'
- && !(map[rcp[3]]&(DIGIT|LETTER))) {
- cp = rcp + 3;
- return CASE;
- }
- if (rcp[0] == 'h'
- && rcp[1] == 'a'
- && rcp[2] == 'r'
- && !(map[rcp[3]]&(DIGIT|LETTER))) {
- cp = rcp + 3;
- tsym = chartype->u.sym;
- return CHAR;
- }
- if (rcp[0] == 'o'
- && rcp[1] == 'n'
- && rcp[2] == 's'
- && rcp[3] == 't'
- && !(map[rcp[4]]&(DIGIT|LETTER))) {
- cp = rcp + 4;
- return CONST;
- }
- if (rcp[0] == 'o'
- && rcp[1] == 'n'
- && rcp[2] == 't'
- && rcp[3] == 'i'
- && rcp[4] == 'n'
- && rcp[5] == 'u'
- && rcp[6] == 'e'
- && !(map[rcp[7]]&(DIGIT|LETTER))) {
- cp = rcp + 7;
- return CONTINUE;
- }
- goto id;
- case 'd':
- if (rcp[0] == 'e'
- && rcp[1] == 'f'
- && rcp[2] == 'a'
- && rcp[3] == 'u'
- && rcp[4] == 'l'
- && rcp[5] == 't'
- && !(map[rcp[6]]&(DIGIT|LETTER))) {
- cp = rcp + 6;
- return DEFAULT;
- }
- if (rcp[0] == 'o'
- && rcp[1] == 'u'
- && rcp[2] == 'b'
- && rcp[3] == 'l'
- && rcp[4] == 'e'
- && !(map[rcp[5]]&(DIGIT|LETTER))) {
- cp = rcp + 5;
- tsym = doubletype->u.sym;
- return DOUBLE;
- }
- if (rcp[0] == 'o'
- && !(map[rcp[1]]&(DIGIT|LETTER))) {
- cp = rcp + 1;
- return DO;
- }
- goto id;
- case 'e':
- if (rcp[0] == 'l'
- && rcp[1] == 's'
- && rcp[2] == 'e'
- && !(map[rcp[3]]&(DIGIT|LETTER))) {
- cp = rcp + 3;
- return ELSE;
- }
- if (rcp[0] == 'n'
- && rcp[1] == 'u'
- && rcp[2] == 'm'
- && !(map[rcp[3]]&(DIGIT|LETTER))) {
- cp = rcp + 3;
- return ENUM;
- }
- if (rcp[0] == 'x'
- && rcp[1] == 't'
- && rcp[2] == 'e'
- && rcp[3] == 'r'
- && rcp[4] == 'n'
- && !(map[rcp[5]]&(DIGIT|LETTER))) {
- cp = rcp + 5;
- return EXTERN;
- }
- goto id;
- case 'f':
- if (rcp[0] == 'l'
- && rcp[1] == 'o'
- && rcp[2] == 'a'
- && rcp[3] == 't'
- && !(map[rcp[4]]&(DIGIT|LETTER))) {
- cp = rcp + 4;
- tsym = floattype->u.sym;
- return FLOAT;
- }
- if (rcp[0] == 'o'
- && rcp[1] == 'r'
- && !(map[rcp[2]]&(DIGIT|LETTER))) {
- cp = rcp + 2;
- return FOR;
- }
- goto id;
- case 'g':
- if (rcp[0] == 'o'
- && rcp[1] == 't'
- && rcp[2] == 'o'
- && !(map[rcp[3]]&(DIGIT|LETTER))) {
- cp = rcp + 3;
- return GOTO;
- }
- goto id;
- case 'l':
- if (rcp[0] == 'o'
- && rcp[1] == 'n'
- && rcp[2] == 'g'
- && !(map[rcp[3]]&(DIGIT|LETTER))) {
- cp = rcp + 3;
- return LONG;
- }
- goto id;
- case 'r':
- if (rcp[0] == 'e'
- && rcp[1] == 'g'
- && rcp[2] == 'i'
- && rcp[3] == 's'
- && rcp[4] == 't'
- && rcp[5] == 'e'
- && rcp[6] == 'r'
- && !(map[rcp[7]]&(DIGIT|LETTER))) {
- cp = rcp + 7;
- return REGISTER;
- }
- if (rcp[0] == 'e'
- && rcp[1] == 't'
- && rcp[2] == 'u'
- && rcp[3] == 'r'
- && rcp[4] == 'n'
- && !(map[rcp[5]]&(DIGIT|LETTER))) {
- cp = rcp + 5;
- return RETURN;
- }
- goto id;
- case 's':
- if (rcp[0] == 'h'
- && rcp[1] == 'o'
- && rcp[2] == 'r'
- && rcp[3] == 't'
- && !(map[rcp[4]]&(DIGIT|LETTER))) {
- cp = rcp + 4;
- return SHORT;
- }
- if (rcp[0] == 'i'
- && rcp[1] == 'g'
- && rcp[2] == 'n'
- && rcp[3] == 'e'
- && rcp[4] == 'd'
- && !(map[rcp[5]]&(DIGIT|LETTER))) {
- cp = rcp + 5;
- return SIGNED;
- }
- if (rcp[0] == 'i'
- && rcp[1] == 'z'
- && rcp[2] == 'e'
- && rcp[3] == 'o'
- && rcp[4] == 'f'
- && !(map[rcp[5]]&(DIGIT|LETTER))) {
- cp = rcp + 5;
- return SIZEOF;
- }
- if (rcp[0] == 't'
- && rcp[1] == 'a'
- && rcp[2] == 't'
- && rcp[3] == 'i'
- && rcp[4] == 'c'
- && !(map[rcp[5]]&(DIGIT|LETTER))) {
- cp = rcp + 5;
- return STATIC;
- }
- if (rcp[0] == 't'
- && rcp[1] == 'r'
- && rcp[2] == 'u'
- && rcp[3] == 'c'
- && rcp[4] == 't'
- && !(map[rcp[5]]&(DIGIT|LETTER))) {
- cp = rcp + 5;
- return STRUCT;
- }
- if (rcp[0] == 'w'
- && rcp[1] == 'i'
- && rcp[2] == 't'
- && rcp[3] == 'c'
- && rcp[4] == 'h'
- && !(map[rcp[5]]&(DIGIT|LETTER))) {
- cp = rcp + 5;
- return SWITCH;
- }
- goto id;
- case 't':
- if (rcp[0] == 'y'
- && rcp[1] == 'p'
- && rcp[2] == 'e'
- && rcp[3] == 'd'
- && rcp[4] == 'e'
- && rcp[5] == 'f'
- && !(map[rcp[6]]&(DIGIT|LETTER))) {
- cp = rcp + 6;
- return TYPEDEF;
- }
- goto id;
- case 'u':
- if (rcp[0] == 'n'
- && rcp[1] == 'i'
- && rcp[2] == 'o'
- && rcp[3] == 'n'
- && !(map[rcp[4]]&(DIGIT|LETTER))) {
- cp = rcp + 4;
- return UNION;
- }
- if (rcp[0] == 'n'
- && rcp[1] == 's'
- && rcp[2] == 'i'
- && rcp[3] == 'g'
- && rcp[4] == 'n'
- && rcp[5] == 'e'
- && rcp[6] == 'd'
- && !(map[rcp[7]]&(DIGIT|LETTER))) {
- cp = rcp + 7;
- return UNSIGNED;
- }
- goto id;
- case 'v':
- if (rcp[0] == 'o'
- && rcp[1] == 'i'
- && rcp[2] == 'd'
- && !(map[rcp[3]]&(DIGIT|LETTER))) {
- cp = rcp + 3;
- tsym = voidtype->u.sym;
- return VOID;
- }
- if (rcp[0] == 'o'
- && rcp[1] == 'l'
- && rcp[2] == 'a'
- && rcp[3] == 't'
- && rcp[4] == 'i'
- && rcp[5] == 'l'
- && rcp[6] == 'e'
- && !(map[rcp[7]]&(DIGIT|LETTER))) {
- cp = rcp + 7;
- return VOLATILE;
- }
- goto id;
- case 'w':
- if (rcp[0] == 'h'
- && rcp[1] == 'i'
- && rcp[2] == 'l'
- && rcp[3] == 'e'
- && !(map[rcp[4]]&(DIGIT|LETTER))) {
- cp = rcp + 4;
- return WHILE;
- }
- goto id;
- case '_':
- if (rcp[0] == '_'
- && rcp[1] == 't'
- && rcp[2] == 'y'
- && rcp[3] == 'p'
- && rcp[4] == 'e'
- && rcp[5] == 'c'
- && rcp[6] == 'o'
- && rcp[7] == 'd'
- && rcp[8] == 'e'
- && !(map[rcp[9]]&(DIGIT|LETTER))) {
- cp = rcp + 9;
- return TYPECODE;
- }
- if (rcp[0] == '_'
- && rcp[1] == 'f'
- && rcp[2] == 'i'
- && rcp[3] == 'r'
- && rcp[4] == 's'
- && rcp[5] == 't'
- && rcp[6] == 'a'
- && rcp[7] == 'r'
- && rcp[8] == 'g'
- && !(map[rcp[9]]&(DIGIT|LETTER))) {
- cp = rcp + 9;
- return FIRSTARG;
- }
- goto id;
- default:
- if ((map[cp[-1]]&BLANK) == 0)
- if (cp[-1] < ' ' || cp[-1] >= 0177)
- error("illegal character `\\0%o'\n", cp[-1]);
- else
- error("illegal character `%c'\n", cp[-1]);
- }
- }
-}
-static Symbol icon(unsigned long n, int overflow, int base) {
- if ((*cp=='u'||*cp=='U') && (cp[1]=='l'||cp[1]=='L')
- || (*cp=='l'||*cp=='L') && (cp[1]=='u'||cp[1]=='U')) {
- tval.type = unsignedlong;
- cp += 2;
- } else if (*cp == 'u' || *cp == 'U') {
- if (overflow || n > unsignedtype->u.sym->u.limits.max.i)
- tval.type = unsignedlong;
- else
- tval.type = unsignedtype;
- cp += 1;
- } else if (*cp == 'l' || *cp == 'L') {
- if (overflow || n > longtype->u.sym->u.limits.max.i)
- tval.type = unsignedlong;
- else
- tval.type = longtype;
- cp += 1;
- } else if (overflow || n > longtype->u.sym->u.limits.max.i)
- tval.type = unsignedlong;
- else if (n > inttype->u.sym->u.limits.max.i)
- tval.type = longtype;
- else if (base != 10 && n > inttype->u.sym->u.limits.max.i)
- tval.type = unsignedtype;
- else
- tval.type = inttype;
- switch (tval.type->op) {
- case INT:
- if (overflow || n > tval.type->u.sym->u.limits.max.i) {
- warning("overflow in constant `%S'\n", token,
- (char*)cp - token);
- tval.u.c.v.i = tval.type->u.sym->u.limits.max.i;
- } else
- tval.u.c.v.i = n;
- break;
- case UNSIGNED:
- if (overflow || n > tval.type->u.sym->u.limits.max.u) {
- warning("overflow in constant `%S'\n", token,
- (char*)cp - token);
- tval.u.c.v.u = tval.type->u.sym->u.limits.max.u;
- } else
- tval.u.c.v.u = n;
- break;
- default: assert(0);
- }
- ppnumber("integer");
- return &tval;
-}
-static void ppnumber(char *which) {
- unsigned char *rcp = cp--;
-
- for ( ; (map[*cp]&(DIGIT|LETTER)) || *cp == '.'; cp++)
- if ((cp[0] == 'E' || cp[0] == 'e')
- && (cp[1] == '-' || cp[1] == '+'))
- cp++;
- if (cp > rcp)
- error("`%S' is a preprocessing number but an invalid %s constant\n", token,
-
- (char*)cp-token, which);
-}
-static Symbol fcon(void) {
- if (*cp == '.')
- do
- cp++;
- while (map[*cp]&DIGIT);
- if (*cp == 'e' || *cp == 'E') {
- if (*++cp == '-' || *cp == '+')
- cp++;
- if (map[*cp]&DIGIT)
- do
- cp++;
- while (map[*cp]&DIGIT);
- else
- error("invalid floating constant `%S'\n", token,
- (char*)cp - token);
- }
-
- errno = 0;
- tval.u.c.v.d = strtod(token, NULL);
- if (errno == ERANGE)
- warning("overflow in floating constant `%S'\n", token,
- (char*)cp - token);
- if (*cp == 'f' || *cp == 'F') {
- ++cp;
- if (tval.u.c.v.d > floattype->u.sym->u.limits.max.d)
- warning("overflow in floating constant `%S'\n", token,
- (char*)cp - token);
- tval.type = floattype;
- } else if (*cp == 'l' || *cp == 'L') {
- cp++;
- tval.type = longdouble;
- } else {
- if (tval.u.c.v.d > doubletype->u.sym->u.limits.max.d)
- warning("overflow in floating constant `%S'\n", token,
- (char*)cp - token);
- tval.type = doubletype;
- }
- ppnumber("floating");
- return &tval;
-}
-
-static void *cput(int c, void *cl) {
- char *s = cl;
-
- if (c < 0 || c > 255)
- warning("overflow in escape sequence with resulting value `%d'\n", c);
- *s++ = c;
- return s;
-}
-
-static void *wcput(int c, void *cl) {
- unsigned int *s = cl;
-
- *s++ = c;
- return s;
-}
-
-static void *scon(int q, void *put(int c, void *cl), void *cl) {
- int n = 0, nbad = 0;
-
- do {
- cp++;
- while (*cp != q) {
- int c;
- if (map[*cp]&NEWLINE) {
- if (cp < limit)
- break;
- cp++;
- nextline();
- if (cp == limit)
- break;
- continue;
- }
- c = *cp++;
- if (c == '\\') {
- if (map[*cp]&NEWLINE) {
- if (cp < limit)
- break;
- cp++;
- nextline();
- }
- if (limit - cp < MAXTOKEN)
- fillbuf();
- c = backslash(q);
- } else if (c < 0 || c > 255 || map[c] == 0)
- nbad++;
- if (n++ < BUFSIZE)
- cl = put(c, cl);
- }
- if (*cp == q)
- cp++;
- else
- error("missing %c\n", q);
- } while (q == '"' && getchr() == '"');
- cl = put(0, cl);
- if (n >= BUFSIZE)
- error("%s literal too long\n", q == '"' ? "string" : "character");
- if (Aflag >= 2 && q == '"' && n > 509)
- warning("more than 509 characters in a string literal\n");
- if (Aflag >= 2 && nbad > 0)
- warning("%s literal contains non-portable characters\n",
- q == '"' ? "string" : "character");
- return cl;
-}
-int getchr(void) {
- for (;;) {
- while (map[*cp]&BLANK)
- cp++;
- if (!(map[*cp]&NEWLINE))
- return *cp;
- cp++;
- nextline();
- if (cp == limit)
- return EOI;
- }
-}
-static int backslash(int q) {
- unsigned int c;
-
- switch (*cp++) {
- case 'a': return 7;
- case 'b': return '\b';
- case 'f': return '\f';
- case 'n': return '\n';
- case 'r': return '\r';
- case 't': return '\t';
- case 'v': return '\v';
- case '\'': case '"': case '\\': case '\?': break;
- case 'x': {
- int overflow = 0;
- if ((map[*cp]&(DIGIT|HEX)) == 0) {
- if (*cp < ' ' || *cp == 0177)
- error("ill-formed hexadecimal escape sequence\n");
- else
- error("ill-formed hexadecimal escape sequence `\\x%c'\n", *cp);
- if (*cp != q)
- cp++;
- return 0;
- }
- for (c = 0; map[*cp]&(DIGIT|HEX); cp++) {
- if (c >> (8*widechar->size - 4))
- overflow = 1;
- if (map[*cp]&DIGIT)
- c = (c<<4) + *cp - '0';
- else
- c = (c<<4) + (*cp&~040) - 'A' + 10;
- }
- if (overflow)
- warning("overflow in hexadecimal escape sequence\n");
- return c&ones(8*widechar->size);
- }
- case '0': case '1': case '2': case '3':
- case '4': case '5': case '6': case '7':
- c = *(cp-1) - '0';
- if (*cp >= '0' && *cp <= '7') {
- c = (c<<3) + *cp++ - '0';
- if (*cp >= '0' && *cp <= '7')
- c = (c<<3) + *cp++ - '0';
- }
- return c;
- default:
- if (cp[-1] < ' ' || cp[-1] >= 0177)
- warning("unrecognized character escape sequence\n");
- else
- warning("unrecognized character escape sequence `\\%c'\n", cp[-1]);
- }
- return cp[-1];
-}
+#include "c.h"
+#include <float.h>
+#include <errno.h>
+
+
+#define MAXTOKEN 32
+
+enum { BLANK=01, NEWLINE=02, LETTER=04,
+ DIGIT=010, HEX=020, OTHER=040 };
+
+static unsigned char map[256] = { /* 000 nul */ 0,
+ /* 001 soh */ 0,
+ /* 002 stx */ 0,
+ /* 003 etx */ 0,
+ /* 004 eot */ 0,
+ /* 005 enq */ 0,
+ /* 006 ack */ 0,
+ /* 007 bel */ 0,
+ /* 010 bs */ 0,
+ /* 011 ht */ BLANK,
+ /* 012 nl */ NEWLINE,
+ /* 013 vt */ BLANK,
+ /* 014 ff */ BLANK,
+ /* 015 cr */ 0,
+ /* 016 so */ 0,
+ /* 017 si */ 0,
+ /* 020 dle */ 0,
+ /* 021 dc1 */ 0,
+ /* 022 dc2 */ 0,
+ /* 023 dc3 */ 0,
+ /* 024 dc4 */ 0,
+ /* 025 nak */ 0,
+ /* 026 syn */ 0,
+ /* 027 etb */ 0,
+ /* 030 can */ 0,
+ /* 031 em */ 0,
+ /* 032 sub */ 0,
+ /* 033 esc */ 0,
+ /* 034 fs */ 0,
+ /* 035 gs */ 0,
+ /* 036 rs */ 0,
+ /* 037 us */ 0,
+ /* 040 sp */ BLANK,
+ /* 041 ! */ OTHER,
+ /* 042 " */ OTHER,
+ /* 043 # */ OTHER,
+ /* 044 $ */ 0,
+ /* 045 % */ OTHER,
+ /* 046 & */ OTHER,
+ /* 047 ' */ OTHER,
+ /* 050 ( */ OTHER,
+ /* 051 ) */ OTHER,
+ /* 052 * */ OTHER,
+ /* 053 + */ OTHER,
+ /* 054 , */ OTHER,
+ /* 055 - */ OTHER,
+ /* 056 . */ OTHER,
+ /* 057 / */ OTHER,
+ /* 060 0 */ DIGIT,
+ /* 061 1 */ DIGIT,
+ /* 062 2 */ DIGIT,
+ /* 063 3 */ DIGIT,
+ /* 064 4 */ DIGIT,
+ /* 065 5 */ DIGIT,
+ /* 066 6 */ DIGIT,
+ /* 067 7 */ DIGIT,
+ /* 070 8 */ DIGIT,
+ /* 071 9 */ DIGIT,
+ /* 072 : */ OTHER,
+ /* 073 ; */ OTHER,
+ /* 074 < */ OTHER,
+ /* 075 = */ OTHER,
+ /* 076 > */ OTHER,
+ /* 077 ? */ OTHER,
+ /* 100 @ */ 0,
+ /* 101 A */ LETTER|HEX,
+ /* 102 B */ LETTER|HEX,
+ /* 103 C */ LETTER|HEX,
+ /* 104 D */ LETTER|HEX,
+ /* 105 E */ LETTER|HEX,
+ /* 106 F */ LETTER|HEX,
+ /* 107 G */ LETTER,
+ /* 110 H */ LETTER,
+ /* 111 I */ LETTER,
+ /* 112 J */ LETTER,
+ /* 113 K */ LETTER,
+ /* 114 L */ LETTER,
+ /* 115 M */ LETTER,
+ /* 116 N */ LETTER,
+ /* 117 O */ LETTER,
+ /* 120 P */ LETTER,
+ /* 121 Q */ LETTER,
+ /* 122 R */ LETTER,
+ /* 123 S */ LETTER,
+ /* 124 T */ LETTER,
+ /* 125 U */ LETTER,
+ /* 126 V */ LETTER,
+ /* 127 W */ LETTER,
+ /* 130 X */ LETTER,
+ /* 131 Y */ LETTER,
+ /* 132 Z */ LETTER,
+ /* 133 [ */ OTHER,
+ /* 134 \ */ OTHER,
+ /* 135 ] */ OTHER,
+ /* 136 ^ */ OTHER,
+ /* 137 _ */ LETTER,
+ /* 140 ` */ 0,
+ /* 141 a */ LETTER|HEX,
+ /* 142 b */ LETTER|HEX,
+ /* 143 c */ LETTER|HEX,
+ /* 144 d */ LETTER|HEX,
+ /* 145 e */ LETTER|HEX,
+ /* 146 f */ LETTER|HEX,
+ /* 147 g */ LETTER,
+ /* 150 h */ LETTER,
+ /* 151 i */ LETTER,
+ /* 152 j */ LETTER,
+ /* 153 k */ LETTER,
+ /* 154 l */ LETTER,
+ /* 155 m */ LETTER,
+ /* 156 n */ LETTER,
+ /* 157 o */ LETTER,
+ /* 160 p */ LETTER,
+ /* 161 q */ LETTER,
+ /* 162 r */ LETTER,
+ /* 163 s */ LETTER,
+ /* 164 t */ LETTER,
+ /* 165 u */ LETTER,
+ /* 166 v */ LETTER,
+ /* 167 w */ LETTER,
+ /* 170 x */ LETTER,
+ /* 171 y */ LETTER,
+ /* 172 z */ LETTER,
+ /* 173 { */ OTHER,
+ /* 174 | */ OTHER,
+ /* 175 } */ OTHER,
+ /* 176 ~ */ OTHER, };
+static struct symbol tval;
+static char cbuf[BUFSIZE+1];
+static unsigned int wcbuf[BUFSIZE+1];
+
+Coordinate src; /* current source coordinate */
+int t;
+char *token; /* current token */
+Symbol tsym; /* symbol table entry for current token */
+
+static void *cput(int c, void *cl);
+static void *wcput(int c, void *cl);
+static void *scon(int q, void *put(int c, void *cl), void *cl);
+static int backslash(int q);
+static Symbol fcon(void);
+static Symbol icon(unsigned long, int, int);
+static void ppnumber(char *);
+
+int gettok(void) {
+ for (;;) {
+ register unsigned char *rcp = cp;
+ while (map[*rcp]&BLANK)
+ rcp++;
+ if (limit - rcp < MAXTOKEN) {
+ cp = rcp;
+ fillbuf();
+ rcp = cp;
+ }
+ src.file = file;
+ src.x = (char *)rcp - line;
+ src.y = lineno;
+ cp = rcp + 1;
+ switch (*rcp++) {
+ case '/': if (*rcp == '*') {
+ int c = 0;
+ for (rcp++; *rcp != '/' || c != '*'; )
+ if (map[*rcp]&NEWLINE) {
+ if (rcp < limit)
+ c = *rcp;
+ cp = rcp + 1;
+ nextline();
+ rcp = cp;
+ if (rcp == limit)
+ break;
+ } else
+ c = *rcp++;
+ if (rcp < limit)
+ rcp++;
+ else
+ error("unclosed comment\n");
+ cp = rcp;
+ continue;
+ }
+ return '/';
+ case '<':
+ if (*rcp == '=') return cp++, LEQ;
+ if (*rcp == '<') return cp++, LSHIFT;
+ return '<';
+ case '>':
+ if (*rcp == '=') return cp++, GEQ;
+ if (*rcp == '>') return cp++, RSHIFT;
+ return '>';
+ case '-':
+ if (*rcp == '>') return cp++, DEREF;
+ if (*rcp == '-') return cp++, DECR;
+ return '-';
+ case '=': return *rcp == '=' ? cp++, EQL : '=';
+ case '!': return *rcp == '=' ? cp++, NEQ : '!';
+ case '|': return *rcp == '|' ? cp++, OROR : '|';
+ case '&': return *rcp == '&' ? cp++, ANDAND : '&';
+ case '+': return *rcp == '+' ? cp++, INCR : '+';
+ case ';': case ',': case ':':
+ case '*': case '~': case '%': case '^': case '?':
+ case '[': case ']': case '{': case '}': case '(': case ')':
+ return rcp[-1];
+ case '\n': case '\v': case '\r': case '\f':
+ nextline();
+ if (cp == limit) {
+ tsym = NULL;
+ return EOI;
+ }
+ continue;
+
+ case 'i':
+ if (rcp[0] == 'f'
+ && !(map[rcp[1]]&(DIGIT|LETTER))) {
+ cp = rcp + 1;
+ return IF;
+ }
+ if (rcp[0] == 'n'
+ && rcp[1] == 't'
+ && !(map[rcp[2]]&(DIGIT|LETTER))) {
+ cp = rcp + 2;
+ tsym = inttype->u.sym;
+ return INT;
+ }
+ goto id;
+ case 'h': case 'j': case 'k': case 'm': case 'n': case 'o':
+ case 'p': case 'q': case 'x': case 'y': case 'z':
+ case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
+ case 'G': case 'H': case 'I': case 'J': case 'K':
+ case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
+ case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
+ case 'Y': case 'Z':
+ id:
+ if (limit - rcp < MAXLINE) {
+ cp = rcp - 1;
+ fillbuf();
+ rcp = ++cp;
+ }
+ assert(cp == rcp);
+ token = (char *)rcp - 1;
+ while (map[*rcp]&(DIGIT|LETTER))
+ rcp++;
+ token = stringn(token, (char *)rcp - token);
+ tsym = lookup(token, identifiers);
+ cp = rcp;
+ return ID;
+ case '0': case '1': case '2': case '3': case '4':
+ case '5': case '6': case '7': case '8': case '9': {
+ unsigned long n = 0;
+ if (limit - rcp < MAXLINE) {
+ cp = rcp - 1;
+ fillbuf();
+ rcp = ++cp;
+ }
+ assert(cp == rcp);
+ token = (char *)rcp - 1;
+ if (*token == '0' && (*rcp == 'x' || *rcp == 'X')) {
+ int d, overflow = 0;
+ while (*++rcp) {
+ if (map[*rcp]&DIGIT)
+ d = *rcp - '0';
+ else if (*rcp >= 'a' && *rcp <= 'f')
+ d = *rcp - 'a' + 10;
+ else if (*rcp >= 'A' && *rcp <= 'F')
+ d = *rcp - 'A' + 10;
+ else
+ break;
+ if (n&~(~0UL >> 4))
+ overflow = 1;
+ else
+ n = (n<<4) + d;
+ }
+ if ((char *)rcp - token <= 2)
+ error("invalid hexadecimal constant `%S'\n", token, (char *)rcp-token);
+ cp = rcp;
+ tsym = icon(n, overflow, 16);
+ } else if (*token == '0') {
+ int err = 0, overflow = 0;
+ for ( ; map[*rcp]&DIGIT; rcp++) {
+ if (*rcp == '8' || *rcp == '9')
+ err = 1;
+ if (n&~(~0UL >> 3))
+ overflow = 1;
+ else
+ n = (n<<3) + (*rcp - '0');
+ }
+ if (*rcp == '.' || *rcp == 'e' || *rcp == 'E') {
+ cp = rcp;
+ tsym = fcon();
+ return FCON;
+ }
+ cp = rcp;
+ tsym = icon(n, overflow, 8);
+ if (err)
+ error("invalid octal constant `%S'\n", token, (char*)cp-token);
+ } else {
+ int overflow = 0;
+ for (n = *token - '0'; map[*rcp]&DIGIT; ) {
+ int d = *rcp++ - '0';
+ if (n > (ULONG_MAX - d)/10)
+ overflow = 1;
+ else
+ n = 10*n + d;
+ }
+ if (*rcp == '.' || *rcp == 'e' || *rcp == 'E') {
+ cp = rcp;
+ tsym = fcon();
+ return FCON;
+ }
+ cp = rcp;
+ tsym = icon(n, overflow, 10);
+ }
+ return ICON;
+ }
+ case '.':
+ if (rcp[0] == '.' && rcp[1] == '.') {
+ cp += 2;
+ return ELLIPSIS;
+ }
+ if ((map[*rcp]&DIGIT) == 0)
+ return '.';
+ if (limit - rcp < MAXLINE) {
+ cp = rcp - 1;
+ fillbuf();
+ rcp = ++cp;
+ }
+ assert(cp == rcp);
+ cp = rcp - 1;
+ token = (char *)cp;
+ tsym = fcon();
+ return FCON;
+ case 'L':
+ if (*rcp == '\'') {
+ unsigned int *s = scon(*cp, wcput, wcbuf);
+ if (s - wcbuf > 2)
+ warning("excess characters in wide-character literal ignored\n");
+ tval.type = widechar;
+ tval.u.c.v.u = wcbuf[0];
+ tsym = &tval;
+ return ICON;
+ } else if (*rcp == '"') {
+ unsigned int *s = scon(*cp, wcput, wcbuf);
+ tval.type = array(widechar, s - wcbuf, 0);
+ tval.u.c.v.p = wcbuf;
+ tsym = &tval;
+ return SCON;
+ } else
+ goto id;
+ case '\'': {
+ char *s = scon(*--cp, cput, cbuf);
+ if (s - cbuf > 2)
+ warning("excess characters in multibyte character literal ignored\n");
+ tval.type = inttype;
+ if (chartype->op == INT)
+ tval.u.c.v.i = extend(cbuf[0], chartype);
+ else
+ tval.u.c.v.i = cbuf[0]&0xFF;
+ tsym = &tval;
+ return ICON;
+ }
+ case '"': {
+ char *s = scon(*--cp, cput, cbuf);
+ tval.type = array(chartype, s - cbuf, 0);
+ tval.u.c.v.p = cbuf;
+ tsym = &tval;
+ return SCON;
+ }
+ case 'a':
+ if (rcp[0] == 'u'
+ && rcp[1] == 't'
+ && rcp[2] == 'o'
+ && !(map[rcp[3]]&(DIGIT|LETTER))) {
+ cp = rcp + 3;
+ return AUTO;
+ }
+ goto id;
+ case 'b':
+ if (rcp[0] == 'r'
+ && rcp[1] == 'e'
+ && rcp[2] == 'a'
+ && rcp[3] == 'k'
+ && !(map[rcp[4]]&(DIGIT|LETTER))) {
+ cp = rcp + 4;
+ return BREAK;
+ }
+ goto id;
+ case 'c':
+ if (rcp[0] == 'a'
+ && rcp[1] == 's'
+ && rcp[2] == 'e'
+ && !(map[rcp[3]]&(DIGIT|LETTER))) {
+ cp = rcp + 3;
+ return CASE;
+ }
+ if (rcp[0] == 'h'
+ && rcp[1] == 'a'
+ && rcp[2] == 'r'
+ && !(map[rcp[3]]&(DIGIT|LETTER))) {
+ cp = rcp + 3;
+ tsym = chartype->u.sym;
+ return CHAR;
+ }
+ if (rcp[0] == 'o'
+ && rcp[1] == 'n'
+ && rcp[2] == 's'
+ && rcp[3] == 't'
+ && !(map[rcp[4]]&(DIGIT|LETTER))) {
+ cp = rcp + 4;
+ return CONST;
+ }
+ if (rcp[0] == 'o'
+ && rcp[1] == 'n'
+ && rcp[2] == 't'
+ && rcp[3] == 'i'
+ && rcp[4] == 'n'
+ && rcp[5] == 'u'
+ && rcp[6] == 'e'
+ && !(map[rcp[7]]&(DIGIT|LETTER))) {
+ cp = rcp + 7;
+ return CONTINUE;
+ }
+ goto id;
+ case 'd':
+ if (rcp[0] == 'e'
+ && rcp[1] == 'f'
+ && rcp[2] == 'a'
+ && rcp[3] == 'u'
+ && rcp[4] == 'l'
+ && rcp[5] == 't'
+ && !(map[rcp[6]]&(DIGIT|LETTER))) {
+ cp = rcp + 6;
+ return DEFAULT;
+ }
+ if (rcp[0] == 'o'
+ && rcp[1] == 'u'
+ && rcp[2] == 'b'
+ && rcp[3] == 'l'
+ && rcp[4] == 'e'
+ && !(map[rcp[5]]&(DIGIT|LETTER))) {
+ cp = rcp + 5;
+ tsym = doubletype->u.sym;
+ return DOUBLE;
+ }
+ if (rcp[0] == 'o'
+ && !(map[rcp[1]]&(DIGIT|LETTER))) {
+ cp = rcp + 1;
+ return DO;
+ }
+ goto id;
+ case 'e':
+ if (rcp[0] == 'l'
+ && rcp[1] == 's'
+ && rcp[2] == 'e'
+ && !(map[rcp[3]]&(DIGIT|LETTER))) {
+ cp = rcp + 3;
+ return ELSE;
+ }
+ if (rcp[0] == 'n'
+ && rcp[1] == 'u'
+ && rcp[2] == 'm'
+ && !(map[rcp[3]]&(DIGIT|LETTER))) {
+ cp = rcp + 3;
+ return ENUM;
+ }
+ if (rcp[0] == 'x'
+ && rcp[1] == 't'
+ && rcp[2] == 'e'
+ && rcp[3] == 'r'
+ && rcp[4] == 'n'
+ && !(map[rcp[5]]&(DIGIT|LETTER))) {
+ cp = rcp + 5;
+ return EXTERN;
+ }
+ goto id;
+ case 'f':
+ if (rcp[0] == 'l'
+ && rcp[1] == 'o'
+ && rcp[2] == 'a'
+ && rcp[3] == 't'
+ && !(map[rcp[4]]&(DIGIT|LETTER))) {
+ cp = rcp + 4;
+ tsym = floattype->u.sym;
+ return FLOAT;
+ }
+ if (rcp[0] == 'o'
+ && rcp[1] == 'r'
+ && !(map[rcp[2]]&(DIGIT|LETTER))) {
+ cp = rcp + 2;
+ return FOR;
+ }
+ goto id;
+ case 'g':
+ if (rcp[0] == 'o'
+ && rcp[1] == 't'
+ && rcp[2] == 'o'
+ && !(map[rcp[3]]&(DIGIT|LETTER))) {
+ cp = rcp + 3;
+ return GOTO;
+ }
+ goto id;
+ case 'l':
+ if (rcp[0] == 'o'
+ && rcp[1] == 'n'
+ && rcp[2] == 'g'
+ && !(map[rcp[3]]&(DIGIT|LETTER))) {
+ cp = rcp + 3;
+ return LONG;
+ }
+ goto id;
+ case 'r':
+ if (rcp[0] == 'e'
+ && rcp[1] == 'g'
+ && rcp[2] == 'i'
+ && rcp[3] == 's'
+ && rcp[4] == 't'
+ && rcp[5] == 'e'
+ && rcp[6] == 'r'
+ && !(map[rcp[7]]&(DIGIT|LETTER))) {
+ cp = rcp + 7;
+ return REGISTER;
+ }
+ if (rcp[0] == 'e'
+ && rcp[1] == 't'
+ && rcp[2] == 'u'
+ && rcp[3] == 'r'
+ && rcp[4] == 'n'
+ && !(map[rcp[5]]&(DIGIT|LETTER))) {
+ cp = rcp + 5;
+ return RETURN;
+ }
+ goto id;
+ case 's':
+ if (rcp[0] == 'h'
+ && rcp[1] == 'o'
+ && rcp[2] == 'r'
+ && rcp[3] == 't'
+ && !(map[rcp[4]]&(DIGIT|LETTER))) {
+ cp = rcp + 4;
+ return SHORT;
+ }
+ if (rcp[0] == 'i'
+ && rcp[1] == 'g'
+ && rcp[2] == 'n'
+ && rcp[3] == 'e'
+ && rcp[4] == 'd'
+ && !(map[rcp[5]]&(DIGIT|LETTER))) {
+ cp = rcp + 5;
+ return SIGNED;
+ }
+ if (rcp[0] == 'i'
+ && rcp[1] == 'z'
+ && rcp[2] == 'e'
+ && rcp[3] == 'o'
+ && rcp[4] == 'f'
+ && !(map[rcp[5]]&(DIGIT|LETTER))) {
+ cp = rcp + 5;
+ return SIZEOF;
+ }
+ if (rcp[0] == 't'
+ && rcp[1] == 'a'
+ && rcp[2] == 't'
+ && rcp[3] == 'i'
+ && rcp[4] == 'c'
+ && !(map[rcp[5]]&(DIGIT|LETTER))) {
+ cp = rcp + 5;
+ return STATIC;
+ }
+ if (rcp[0] == 't'
+ && rcp[1] == 'r'
+ && rcp[2] == 'u'
+ && rcp[3] == 'c'
+ && rcp[4] == 't'
+ && !(map[rcp[5]]&(DIGIT|LETTER))) {
+ cp = rcp + 5;
+ return STRUCT;
+ }
+ if (rcp[0] == 'w'
+ && rcp[1] == 'i'
+ && rcp[2] == 't'
+ && rcp[3] == 'c'
+ && rcp[4] == 'h'
+ && !(map[rcp[5]]&(DIGIT|LETTER))) {
+ cp = rcp + 5;
+ return SWITCH;
+ }
+ goto id;
+ case 't':
+ if (rcp[0] == 'y'
+ && rcp[1] == 'p'
+ && rcp[2] == 'e'
+ && rcp[3] == 'd'
+ && rcp[4] == 'e'
+ && rcp[5] == 'f'
+ && !(map[rcp[6]]&(DIGIT|LETTER))) {
+ cp = rcp + 6;
+ return TYPEDEF;
+ }
+ goto id;
+ case 'u':
+ if (rcp[0] == 'n'
+ && rcp[1] == 'i'
+ && rcp[2] == 'o'
+ && rcp[3] == 'n'
+ && !(map[rcp[4]]&(DIGIT|LETTER))) {
+ cp = rcp + 4;
+ return UNION;
+ }
+ if (rcp[0] == 'n'
+ && rcp[1] == 's'
+ && rcp[2] == 'i'
+ && rcp[3] == 'g'
+ && rcp[4] == 'n'
+ && rcp[5] == 'e'
+ && rcp[6] == 'd'
+ && !(map[rcp[7]]&(DIGIT|LETTER))) {
+ cp = rcp + 7;
+ return UNSIGNED;
+ }
+ goto id;
+ case 'v':
+ if (rcp[0] == 'o'
+ && rcp[1] == 'i'
+ && rcp[2] == 'd'
+ && !(map[rcp[3]]&(DIGIT|LETTER))) {
+ cp = rcp + 3;
+ tsym = voidtype->u.sym;
+ return VOID;
+ }
+ if (rcp[0] == 'o'
+ && rcp[1] == 'l'
+ && rcp[2] == 'a'
+ && rcp[3] == 't'
+ && rcp[4] == 'i'
+ && rcp[5] == 'l'
+ && rcp[6] == 'e'
+ && !(map[rcp[7]]&(DIGIT|LETTER))) {
+ cp = rcp + 7;
+ return VOLATILE;
+ }
+ goto id;
+ case 'w':
+ if (rcp[0] == 'h'
+ && rcp[1] == 'i'
+ && rcp[2] == 'l'
+ && rcp[3] == 'e'
+ && !(map[rcp[4]]&(DIGIT|LETTER))) {
+ cp = rcp + 4;
+ return WHILE;
+ }
+ goto id;
+ case '_':
+ if (rcp[0] == '_'
+ && rcp[1] == 't'
+ && rcp[2] == 'y'
+ && rcp[3] == 'p'
+ && rcp[4] == 'e'
+ && rcp[5] == 'c'
+ && rcp[6] == 'o'
+ && rcp[7] == 'd'
+ && rcp[8] == 'e'
+ && !(map[rcp[9]]&(DIGIT|LETTER))) {
+ cp = rcp + 9;
+ return TYPECODE;
+ }
+ if (rcp[0] == '_'
+ && rcp[1] == 'f'
+ && rcp[2] == 'i'
+ && rcp[3] == 'r'
+ && rcp[4] == 's'
+ && rcp[5] == 't'
+ && rcp[6] == 'a'
+ && rcp[7] == 'r'
+ && rcp[8] == 'g'
+ && !(map[rcp[9]]&(DIGIT|LETTER))) {
+ cp = rcp + 9;
+ return FIRSTARG;
+ }
+ goto id;
+ default:
+ if ((map[cp[-1]]&BLANK) == 0)
+ if (cp[-1] < ' ' || cp[-1] >= 0177)
+ error("illegal character `\\0%o'\n", cp[-1]);
+ else
+ error("illegal character `%c'\n", cp[-1]);
+ }
+ }
+}
+static Symbol icon(unsigned long n, int overflow, int base) {
+ if ((*cp=='u'||*cp=='U') && (cp[1]=='l'||cp[1]=='L')
+ || (*cp=='l'||*cp=='L') && (cp[1]=='u'||cp[1]=='U')) {
+ tval.type = unsignedlong;
+ cp += 2;
+ } else if (*cp == 'u' || *cp == 'U') {
+ if (overflow || n > unsignedtype->u.sym->u.limits.max.i)
+ tval.type = unsignedlong;
+ else
+ tval.type = unsignedtype;
+ cp += 1;
+ } else if (*cp == 'l' || *cp == 'L') {
+ if (overflow || n > longtype->u.sym->u.limits.max.i)
+ tval.type = unsignedlong;
+ else
+ tval.type = longtype;
+ cp += 1;
+ } else if (overflow || n > longtype->u.sym->u.limits.max.i)
+ tval.type = unsignedlong;
+ else if (n > inttype->u.sym->u.limits.max.i)
+ tval.type = longtype;
+ else if (base != 10 && n > inttype->u.sym->u.limits.max.i)
+ tval.type = unsignedtype;
+ else
+ tval.type = inttype;
+ switch (tval.type->op) {
+ case INT:
+ if (overflow || n > tval.type->u.sym->u.limits.max.i) {
+ warning("overflow in constant `%S'\n", token,
+ (char*)cp - token);
+ tval.u.c.v.i = tval.type->u.sym->u.limits.max.i;
+ } else
+ tval.u.c.v.i = n;
+ break;
+ case UNSIGNED:
+ if (overflow || n > tval.type->u.sym->u.limits.max.u) {
+ warning("overflow in constant `%S'\n", token,
+ (char*)cp - token);
+ tval.u.c.v.u = tval.type->u.sym->u.limits.max.u;
+ } else
+ tval.u.c.v.u = n;
+ break;
+ default: assert(0);
+ }
+ ppnumber("integer");
+ return &tval;
+}
+static void ppnumber(char *which) {
+ unsigned char *rcp = cp--;
+
+ for ( ; (map[*cp]&(DIGIT|LETTER)) || *cp == '.'; cp++)
+ if ((cp[0] == 'E' || cp[0] == 'e')
+ && (cp[1] == '-' || cp[1] == '+'))
+ cp++;
+ if (cp > rcp)
+ error("`%S' is a preprocessing number but an invalid %s constant\n", token,
+
+ (char*)cp-token, which);
+}
+static Symbol fcon(void) {
+ if (*cp == '.')
+ do
+ cp++;
+ while (map[*cp]&DIGIT);
+ if (*cp == 'e' || *cp == 'E') {
+ if (*++cp == '-' || *cp == '+')
+ cp++;
+ if (map[*cp]&DIGIT)
+ do
+ cp++;
+ while (map[*cp]&DIGIT);
+ else
+ error("invalid floating constant `%S'\n", token,
+ (char*)cp - token);
+ }
+
+ errno = 0;
+ tval.u.c.v.d = strtod(token, NULL);
+ if (errno == ERANGE)
+ warning("overflow in floating constant `%S'\n", token,
+ (char*)cp - token);
+ if (*cp == 'f' || *cp == 'F') {
+ ++cp;
+ if (tval.u.c.v.d > floattype->u.sym->u.limits.max.d)
+ warning("overflow in floating constant `%S'\n", token,
+ (char*)cp - token);
+ tval.type = floattype;
+ } else if (*cp == 'l' || *cp == 'L') {
+ cp++;
+ tval.type = longdouble;
+ } else {
+ if (tval.u.c.v.d > doubletype->u.sym->u.limits.max.d)
+ warning("overflow in floating constant `%S'\n", token,
+ (char*)cp - token);
+ tval.type = doubletype;
+ }
+ ppnumber("floating");
+ return &tval;
+}
+
+static void *cput(int c, void *cl) {
+ char *s = cl;
+
+ if (c < 0 || c > 255)
+ warning("overflow in escape sequence with resulting value `%d'\n", c);
+ *s++ = c;
+ return s;
+}
+
+static void *wcput(int c, void *cl) {
+ unsigned int *s = cl;
+
+ *s++ = c;
+ return s;
+}
+
+static void *scon(int q, void *put(int c, void *cl), void *cl) {
+ int n = 0, nbad = 0;
+
+ do {
+ cp++;
+ while (*cp != q) {
+ int c;
+ if (map[*cp]&NEWLINE) {
+ if (cp < limit)
+ break;
+ cp++;
+ nextline();
+ if (cp == limit)
+ break;
+ continue;
+ }
+ c = *cp++;
+ if (c == '\\') {
+ if (map[*cp]&NEWLINE) {
+ if (cp < limit)
+ break;
+ cp++;
+ nextline();
+ }
+ if (limit - cp < MAXTOKEN)
+ fillbuf();
+ c = backslash(q);
+ } else if (c < 0 || c > 255 || map[c] == 0)
+ nbad++;
+ if (n++ < BUFSIZE)
+ cl = put(c, cl);
+ }
+ if (*cp == q)
+ cp++;
+ else
+ error("missing %c\n", q);
+ } while (q == '"' && getchr() == '"');
+ cl = put(0, cl);
+ if (n >= BUFSIZE)
+ error("%s literal too long\n", q == '"' ? "string" : "character");
+ if (Aflag >= 2 && q == '"' && n > 509)
+ warning("more than 509 characters in a string literal\n");
+ if (Aflag >= 2 && nbad > 0)
+ warning("%s literal contains non-portable characters\n",
+ q == '"' ? "string" : "character");
+ return cl;
+}
+int getchr(void) {
+ for (;;) {
+ while (map[*cp]&BLANK)
+ cp++;
+ if (!(map[*cp]&NEWLINE))
+ return *cp;
+ cp++;
+ nextline();
+ if (cp == limit)
+ return EOI;
+ }
+}
+static int backslash(int q) {
+ unsigned int c;
+
+ switch (*cp++) {
+ case 'a': return 7;
+ case 'b': return '\b';
+ case 'f': return '\f';
+ case 'n': return '\n';
+ case 'r': return '\r';
+ case 't': return '\t';
+ case 'v': return '\v';
+ case '\'': case '"': case '\\': case '\?': break;
+ case 'x': {
+ int overflow = 0;
+ if ((map[*cp]&(DIGIT|HEX)) == 0) {
+ if (*cp < ' ' || *cp == 0177)
+ error("ill-formed hexadecimal escape sequence\n");
+ else
+ error("ill-formed hexadecimal escape sequence `\\x%c'\n", *cp);
+ if (*cp != q)
+ cp++;
+ return 0;
+ }
+ for (c = 0; map[*cp]&(DIGIT|HEX); cp++) {
+ if (c >> (8*widechar->size - 4))
+ overflow = 1;
+ if (map[*cp]&DIGIT)
+ c = (c<<4) + *cp - '0';
+ else
+ c = (c<<4) + (*cp&~040) - 'A' + 10;
+ }
+ if (overflow)
+ warning("overflow in hexadecimal escape sequence\n");
+ return c&ones(8*widechar->size);
+ }
+ case '0': case '1': case '2': case '3':
+ case '4': case '5': case '6': case '7':
+ c = *(cp-1) - '0';
+ if (*cp >= '0' && *cp <= '7') {
+ c = (c<<3) + *cp++ - '0';
+ if (*cp >= '0' && *cp <= '7')
+ c = (c<<3) + *cp++ - '0';
+ }
+ return c;
+ default:
+ if (cp[-1] < ' ' || cp[-1] >= 0177)
+ warning("unrecognized character escape sequence\n");
+ else
+ warning("unrecognized character escape sequence `\\%c'\n", cp[-1]);
+ }
+ return cp[-1];
+}
diff --git a/lcc/src/list.c b/lcc/src/list.c
index dbd63ed..29e660a 100755
--- a/lcc/src/list.c
+++ b/lcc/src/list.c
@@ -1,56 +1,56 @@
-#include "c.h"
-
-
-static List freenodes; /* free list nodes */
-
-/* append - append x to list, return new list */
-List append(void *x, List list) {
- List new;
-
- if ((new = freenodes) != NULL)
- freenodes = freenodes->link;
- else
- NEW(new, PERM);
- if (list) {
- new->link = list->link;
- list->link = new;
- } else
- new->link = new;
- new->x = x;
- return new;
-}
-
-/* length - # elements in list */
-int length(List list) {
- int n = 0;
-
- if (list) {
- List lp = list;
- do
- n++;
- while ((lp = lp->link) != list);
- }
- return n;
-}
-
-/* ltov - convert list to an NULL-terminated vector allocated in arena */
-void *ltov(List *list, unsigned arena) {
- int i = 0;
- void **array = newarray(length(*list) + 1, sizeof array[0], arena);
-
- if (*list) {
- List lp = *list;
- do {
- lp = lp->link;
- array[i++] = lp->x;
- } while (lp != *list);
-#ifndef PURIFY
- lp = (*list)->link;
- (*list)->link = freenodes;
- freenodes = lp;
-#endif
- }
- *list = NULL;
- array[i] = NULL;
- return array;
-}
+#include "c.h"
+
+
+static List freenodes; /* free list nodes */
+
+/* append - append x to list, return new list */
+List append(void *x, List list) {
+ List new;
+
+ if ((new = freenodes) != NULL)
+ freenodes = freenodes->link;
+ else
+ NEW(new, PERM);
+ if (list) {
+ new->link = list->link;
+ list->link = new;
+ } else
+ new->link = new;
+ new->x = x;
+ return new;
+}
+
+/* length - # elements in list */
+int length(List list) {
+ int n = 0;
+
+ if (list) {
+ List lp = list;
+ do
+ n++;
+ while ((lp = lp->link) != list);
+ }
+ return n;
+}
+
+/* ltov - convert list to an NULL-terminated vector allocated in arena */
+void *ltov(List *list, unsigned arena) {
+ int i = 0;
+ void **array = newarray(length(*list) + 1, sizeof array[0], arena);
+
+ if (*list) {
+ List lp = *list;
+ do {
+ lp = lp->link;
+ array[i++] = lp->x;
+ } while (lp != *list);
+#ifndef PURIFY
+ lp = (*list)->link;
+ (*list)->link = freenodes;
+ freenodes = lp;
+#endif
+ }
+ *list = NULL;
+ array[i] = NULL;
+ return array;
+}
diff --git a/lcc/src/main.c b/lcc/src/main.c
index 1367fa0..63b85f2 100755
--- a/lcc/src/main.c
+++ b/lcc/src/main.c
@@ -1,225 +1,225 @@
-#include "c.h"
-
-static char rcsid[] = "main.c - faked rcsid";
-
-static void typestab(Symbol, void *);
-
-static void stabline(Coordinate *);
-static void stabend(Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
-Interface *IR = NULL;
-
-int Aflag; /* >= 0 if -A specified */
-int Pflag; /* != 0 if -P specified */
-int glevel; /* == [0-9] if -g[0-9] specified */
-int xref; /* != 0 for cross-reference data */
-Symbol YYnull; /* _YYnull symbol if -n or -nvalidate specified */
-Symbol YYcheck; /* _YYcheck symbol if -nvalidate,check specified */
-
-static char *comment;
-static Interface stabIR;
-static char *currentfile; /* current file name */
-static int currentline; /* current line number */
-static FILE *srcfp; /* stream for current file, if non-NULL */
-static int srcpos; /* position of srcfp, if srcfp is non-NULL */
-int main(int argc, char *argv[]) {
- int i, j;
- for (i = argc - 1; i > 0; i--)
- if (strncmp(argv[i], "-target=", 8) == 0)
- break;
- if (i > 0) {
- char *s = strchr(argv[i], '\\');
- if (s != NULL)
- *s = '/';
- for (j = 0; bindings[j].name && bindings[j].ir; j++)
- if (strcmp(&argv[i][8], bindings[j].name) == 0) {
- IR = bindings[j].ir;
- break;
- }
- if (s != NULL)
- *s = '\\';
- }
- if (!IR) {
- fprint(stderr, "%s: unknown target", argv[0]);
- if (i > 0)
- fprint(stderr, " `%s'", &argv[i][8]);
- fprint(stderr, "; must specify one of\n");
- for (i = 0; bindings[i].name; i++)
- fprint(stderr, "\t-target=%s\n", bindings[i].name);
- exit(EXIT_FAILURE);
- }
- init(argc, argv);
- t = gettok();
- (*IR->progbeg)(argc, argv);
- if (glevel && IR->stabinit)
- (*IR->stabinit)(firstfile, argc, argv);
- program();
- if (events.end)
- apply(events.end, NULL, NULL);
- memset(&events, 0, sizeof events);
- if (glevel || xref) {
- Symbol symroot = NULL;
- Coordinate src;
- foreach(types, GLOBAL, typestab, &symroot);
- foreach(identifiers, GLOBAL, typestab, &symroot);
- src.file = firstfile;
- src.x = 0;
- src.y = lineno;
- if ((glevel > 2 || xref) && IR->stabend)
- (*IR->stabend)(&src, symroot,
- ltov(&loci, PERM),
- ltov(&symbols, PERM), NULL);
- else if (IR->stabend)
- (*IR->stabend)(&src, NULL, NULL, NULL, NULL);
- }
- finalize();
- (*IR->progend)();
- deallocate(PERM);
- return errcnt > 0;
-}
-/* main_init - process program arguments */
-void main_init(int argc, char *argv[]) {
- char *infile = NULL, *outfile = NULL;
- int i;
- static int inited;
-
- if (inited)
- return;
- inited = 1;
- type_init(argc, argv);
- for (i = 1; i < argc; i++)
- if (strcmp(argv[i], "-g") == 0 || strcmp(argv[i], "-g2") == 0)
- glevel = 2;
- else if (strncmp(argv[i], "-g", 2) == 0) { /* -gn[,x] */
- char *p = strchr(argv[i], ',');
- glevel = atoi(argv[i]+2);
- if (p) {
- comment = p + 1;
- if (glevel == 0)
- glevel = 1;
- if (stabIR.stabline == NULL) {
- stabIR.stabline = IR->stabline;
- stabIR.stabend = IR->stabend;
- IR->stabline = stabline;
- IR->stabend = stabend;
- }
- }
- } else if (strcmp(argv[i], "-x") == 0)
- xref++;
- else if (strcmp(argv[i], "-A") == 0) {
- ++Aflag;
- } else if (strcmp(argv[i], "-P") == 0)
- Pflag++;
- else if (strcmp(argv[i], "-w") == 0)
- wflag++;
- else if (strcmp(argv[i], "-n") == 0) {
- if (!YYnull) {
- YYnull = install(string("_YYnull"), &globals, GLOBAL, PERM);
- YYnull->type = func(voidptype, NULL, 1);
- YYnull->sclass = EXTERN;
- (*IR->defsymbol)(YYnull);
- }
- } else if (strncmp(argv[i], "-n", 2) == 0) { /* -nvalid[,check] */
- char *p = strchr(argv[i], ',');
- if (p) {
- YYcheck = install(string(p+1), &globals, GLOBAL, PERM);
- YYcheck->type = func(voidptype, NULL, 1);
- YYcheck->sclass = EXTERN;
- (*IR->defsymbol)(YYcheck);
- p = stringn(argv[i]+2, p - (argv[i]+2));
- } else
- p = string(argv[i]+2);
- YYnull = install(p, &globals, GLOBAL, PERM);
- YYnull->type = func(voidptype, NULL, 1);
- YYnull->sclass = EXTERN;
- (*IR->defsymbol)(YYnull);
- } else if (strcmp(argv[i], "-v") == 0)
- fprint(stderr, "%s %s\n", argv[0], rcsid);
- else if (strncmp(argv[i], "-s", 2) == 0)
- density = strtod(&argv[i][2], NULL);
- else if (strncmp(argv[i], "-errout=", 8) == 0) {
- FILE *f = fopen(argv[i]+8, "w");
- if (f == NULL) {
- fprint(stderr, "%s: can't write errors to `%s'\n", argv[0], argv[i]+8);
- exit(EXIT_FAILURE);
- }
- fclose(f);
- f = freopen(argv[i]+8, "w", stderr);
- assert(f);
- } else if (strncmp(argv[i], "-e", 2) == 0) {
- int x;
- if ((x = strtol(&argv[i][2], NULL, 0)) > 0)
- errlimit = x;
- } else if (strncmp(argv[i], "-little_endian=", 15) == 0)
- IR->little_endian = argv[i][15] - '0';
- else if (strncmp(argv[i], "-mulops_calls=", 18) == 0)
- IR->mulops_calls = argv[i][18] - '0';
- else if (strncmp(argv[i], "-wants_callb=", 13) == 0)
- IR->wants_callb = argv[i][13] - '0';
- else if (strncmp(argv[i], "-wants_argb=", 12) == 0)
- IR->wants_argb = argv[i][12] - '0';
- else if (strncmp(argv[i], "-left_to_right=", 15) == 0)
- IR->left_to_right = argv[i][15] - '0';
- else if (strncmp(argv[i], "-wants_dag=", 11) == 0)
- IR->wants_dag = argv[i][11] - '0';
- else if (*argv[i] != '-' || strcmp(argv[i], "-") == 0) {
- if (infile == NULL)
- infile = argv[i];
- else if (outfile == NULL)
- outfile = argv[i];
- }
-
- if (infile != NULL && strcmp(infile, "-") != 0
- && freopen(infile, "r", stdin) == NULL) {
- fprint(stderr, "%s: can't read `%s'\n", argv[0], infile);
- exit(EXIT_FAILURE);
- }
- if (outfile != NULL && strcmp(outfile, "-") != 0
- && freopen(outfile, "w", stdout) == NULL) {
- fprint(stderr, "%s: can't write `%s'\n", argv[0], outfile);
- exit(EXIT_FAILURE);
- }
-}
-/* typestab - emit stab entries for p */
-static void typestab(Symbol p, void *cl) {
- if (*(Symbol *)cl == 0 && p->sclass && p->sclass != TYPEDEF)
- *(Symbol *)cl = p;
- if ((p->sclass == TYPEDEF || p->sclass == 0) && IR->stabtype)
- (*IR->stabtype)(p);
-}
-
-/* stabline - emit source code for source coordinate *cp */
-static void stabline(Coordinate *cp) {
- if (cp->file && cp->file != currentfile) {
- if (srcfp)
- fclose(srcfp);
- currentfile = cp->file;
- srcfp = fopen(currentfile, "r");
- srcpos = 0;
- currentline = 0;
- }
- if (currentline != cp->y && srcfp) {
- char buf[512];
- if (srcpos > cp->y) {
- rewind(srcfp);
- srcpos = 0;
- }
- for ( ; srcpos < cp->y; srcpos++)
- if (fgets(buf, sizeof buf, srcfp) == NULL) {
- fclose(srcfp);
- srcfp = NULL;
- break;
- }
- if (srcfp && srcpos == cp->y)
- print("%s%s", comment, buf);
- }
- currentline = cp->y;
- if (stabIR.stabline)
- (*stabIR.stabline)(cp);
-}
-
-static void stabend(Coordinate *cp, Symbol p, Coordinate **cpp, Symbol *sp, Symbol *stab) {
- if (stabIR.stabend)
- (*stabIR.stabend)(cp, p, cpp, sp, stab);
- if (srcfp)
- fclose(srcfp);
-}
+#include "c.h"
+
+static char rcsid[] = "main.c - faked rcsid";
+
+static void typestab(Symbol, void *);
+
+static void stabline(Coordinate *);
+static void stabend(Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
+Interface *IR = NULL;
+
+int Aflag; /* >= 0 if -A specified */
+int Pflag; /* != 0 if -P specified */
+int glevel; /* == [0-9] if -g[0-9] specified */
+int xref; /* != 0 for cross-reference data */
+Symbol YYnull; /* _YYnull symbol if -n or -nvalidate specified */
+Symbol YYcheck; /* _YYcheck symbol if -nvalidate,check specified */
+
+static char *comment;
+static Interface stabIR;
+static char *currentfile; /* current file name */
+static int currentline; /* current line number */
+static FILE *srcfp; /* stream for current file, if non-NULL */
+static int srcpos; /* position of srcfp, if srcfp is non-NULL */
+int main(int argc, char *argv[]) {
+ int i, j;
+ for (i = argc - 1; i > 0; i--)
+ if (strncmp(argv[i], "-target=", 8) == 0)
+ break;
+ if (i > 0) {
+ char *s = strchr(argv[i], '\\');
+ if (s != NULL)
+ *s = '/';
+ for (j = 0; bindings[j].name && bindings[j].ir; j++)
+ if (strcmp(&argv[i][8], bindings[j].name) == 0) {
+ IR = bindings[j].ir;
+ break;
+ }
+ if (s != NULL)
+ *s = '\\';
+ }
+ if (!IR) {
+ fprint(stderr, "%s: unknown target", argv[0]);
+ if (i > 0)
+ fprint(stderr, " `%s'", &argv[i][8]);
+ fprint(stderr, "; must specify one of\n");
+ for (i = 0; bindings[i].name; i++)
+ fprint(stderr, "\t-target=%s\n", bindings[i].name);
+ exit(EXIT_FAILURE);
+ }
+ init(argc, argv);
+ t = gettok();
+ (*IR->progbeg)(argc, argv);
+ if (glevel && IR->stabinit)
+ (*IR->stabinit)(firstfile, argc, argv);
+ program();
+ if (events.end)
+ apply(events.end, NULL, NULL);
+ memset(&events, 0, sizeof events);
+ if (glevel || xref) {
+ Symbol symroot = NULL;
+ Coordinate src;
+ foreach(types, GLOBAL, typestab, &symroot);
+ foreach(identifiers, GLOBAL, typestab, &symroot);
+ src.file = firstfile;
+ src.x = 0;
+ src.y = lineno;
+ if ((glevel > 2 || xref) && IR->stabend)
+ (*IR->stabend)(&src, symroot,
+ ltov(&loci, PERM),
+ ltov(&symbols, PERM), NULL);
+ else if (IR->stabend)
+ (*IR->stabend)(&src, NULL, NULL, NULL, NULL);
+ }
+ finalize();
+ (*IR->progend)();
+ deallocate(PERM);
+ return errcnt > 0;
+}
+/* main_init - process program arguments */
+void main_init(int argc, char *argv[]) {
+ char *infile = NULL, *outfile = NULL;
+ int i;
+ static int inited;
+
+ if (inited)
+ return;
+ inited = 1;
+ type_init(argc, argv);
+ for (i = 1; i < argc; i++)
+ if (strcmp(argv[i], "-g") == 0 || strcmp(argv[i], "-g2") == 0)
+ glevel = 2;
+ else if (strncmp(argv[i], "-g", 2) == 0) { /* -gn[,x] */
+ char *p = strchr(argv[i], ',');
+ glevel = atoi(argv[i]+2);
+ if (p) {
+ comment = p + 1;
+ if (glevel == 0)
+ glevel = 1;
+ if (stabIR.stabline == NULL) {
+ stabIR.stabline = IR->stabline;
+ stabIR.stabend = IR->stabend;
+ IR->stabline = stabline;
+ IR->stabend = stabend;
+ }
+ }
+ } else if (strcmp(argv[i], "-x") == 0)
+ xref++;
+ else if (strcmp(argv[i], "-A") == 0) {
+ ++Aflag;
+ } else if (strcmp(argv[i], "-P") == 0)
+ Pflag++;
+ else if (strcmp(argv[i], "-w") == 0)
+ wflag++;
+ else if (strcmp(argv[i], "-n") == 0) {
+ if (!YYnull) {
+ YYnull = install(string("_YYnull"), &globals, GLOBAL, PERM);
+ YYnull->type = func(voidptype, NULL, 1);
+ YYnull->sclass = EXTERN;
+ (*IR->defsymbol)(YYnull);
+ }
+ } else if (strncmp(argv[i], "-n", 2) == 0) { /* -nvalid[,check] */
+ char *p = strchr(argv[i], ',');
+ if (p) {
+ YYcheck = install(string(p+1), &globals, GLOBAL, PERM);
+ YYcheck->type = func(voidptype, NULL, 1);
+ YYcheck->sclass = EXTERN;
+ (*IR->defsymbol)(YYcheck);
+ p = stringn(argv[i]+2, p - (argv[i]+2));
+ } else
+ p = string(argv[i]+2);
+ YYnull = install(p, &globals, GLOBAL, PERM);
+ YYnull->type = func(voidptype, NULL, 1);
+ YYnull->sclass = EXTERN;
+ (*IR->defsymbol)(YYnull);
+ } else if (strcmp(argv[i], "-v") == 0)
+ fprint(stderr, "%s %s\n", argv[0], rcsid);
+ else if (strncmp(argv[i], "-s", 2) == 0)
+ density = strtod(&argv[i][2], NULL);
+ else if (strncmp(argv[i], "-errout=", 8) == 0) {
+ FILE *f = fopen(argv[i]+8, "w");
+ if (f == NULL) {
+ fprint(stderr, "%s: can't write errors to `%s'\n", argv[0], argv[i]+8);
+ exit(EXIT_FAILURE);
+ }
+ fclose(f);
+ f = freopen(argv[i]+8, "w", stderr);
+ assert(f);
+ } else if (strncmp(argv[i], "-e", 2) == 0) {
+ int x;
+ if ((x = strtol(&argv[i][2], NULL, 0)) > 0)
+ errlimit = x;
+ } else if (strncmp(argv[i], "-little_endian=", 15) == 0)
+ IR->little_endian = argv[i][15] - '0';
+ else if (strncmp(argv[i], "-mulops_calls=", 18) == 0)
+ IR->mulops_calls = argv[i][18] - '0';
+ else if (strncmp(argv[i], "-wants_callb=", 13) == 0)
+ IR->wants_callb = argv[i][13] - '0';
+ else if (strncmp(argv[i], "-wants_argb=", 12) == 0)
+ IR->wants_argb = argv[i][12] - '0';
+ else if (strncmp(argv[i], "-left_to_right=", 15) == 0)
+ IR->left_to_right = argv[i][15] - '0';
+ else if (strncmp(argv[i], "-wants_dag=", 11) == 0)
+ IR->wants_dag = argv[i][11] - '0';
+ else if (*argv[i] != '-' || strcmp(argv[i], "-") == 0) {
+ if (infile == NULL)
+ infile = argv[i];
+ else if (outfile == NULL)
+ outfile = argv[i];
+ }
+
+ if (infile != NULL && strcmp(infile, "-") != 0
+ && freopen(infile, "r", stdin) == NULL) {
+ fprint(stderr, "%s: can't read `%s'\n", argv[0], infile);
+ exit(EXIT_FAILURE);
+ }
+ if (outfile != NULL && strcmp(outfile, "-") != 0
+ && freopen(outfile, "w", stdout) == NULL) {
+ fprint(stderr, "%s: can't write `%s'\n", argv[0], outfile);
+ exit(EXIT_FAILURE);
+ }
+}
+/* typestab - emit stab entries for p */
+static void typestab(Symbol p, void *cl) {
+ if (*(Symbol *)cl == 0 && p->sclass && p->sclass != TYPEDEF)
+ *(Symbol *)cl = p;
+ if ((p->sclass == TYPEDEF || p->sclass == 0) && IR->stabtype)
+ (*IR->stabtype)(p);
+}
+
+/* stabline - emit source code for source coordinate *cp */
+static void stabline(Coordinate *cp) {
+ if (cp->file && cp->file != currentfile) {
+ if (srcfp)
+ fclose(srcfp);
+ currentfile = cp->file;
+ srcfp = fopen(currentfile, "r");
+ srcpos = 0;
+ currentline = 0;
+ }
+ if (currentline != cp->y && srcfp) {
+ char buf[512];
+ if (srcpos > cp->y) {
+ rewind(srcfp);
+ srcpos = 0;
+ }
+ for ( ; srcpos < cp->y; srcpos++)
+ if (fgets(buf, sizeof buf, srcfp) == NULL) {
+ fclose(srcfp);
+ srcfp = NULL;
+ break;
+ }
+ if (srcfp && srcpos == cp->y)
+ print("%s%s", comment, buf);
+ }
+ currentline = cp->y;
+ if (stabIR.stabline)
+ (*stabIR.stabline)(cp);
+}
+
+static void stabend(Coordinate *cp, Symbol p, Coordinate **cpp, Symbol *sp, Symbol *stab) {
+ if (stabIR.stabend)
+ (*stabIR.stabend)(cp, p, cpp, sp, stab);
+ if (srcfp)
+ fclose(srcfp);
+}
diff --git a/lcc/src/mips.md b/lcc/src/mips.md
index 7e643fb..41f6d8c 100755
--- a/lcc/src/mips.md
+++ b/lcc/src/mips.md
@@ -1,1120 +1,1120 @@
-%{
-#define INTTMP 0x0100ff00
-#define INTVAR 0x40ff0000
-#define FLTTMP 0x000f0ff0
-#define FLTVAR 0xfff00000
-
-#define INTRET 0x00000004
-#define FLTRET 0x00000003
-
-#define readsreg(p) \
- (generic((p)->op)==INDIR && (p)->kids[0]->op==VREG+P)
-#define setsrc(d) ((d) && (d)->x.regnode && \
- (d)->x.regnode->set == src->x.regnode->set && \
- (d)->x.regnode->mask&src->x.regnode->mask)
-
-#define relink(a, b) ((b)->x.prev = (a), (a)->x.next = (b))
-
-#include "c.h"
-#define NODEPTR_TYPE Node
-#define OP_LABEL(p) ((p)->op)
-#define LEFT_CHILD(p) ((p)->kids[0])
-#define RIGHT_CHILD(p) ((p)->kids[1])
-#define STATE_LABEL(p) ((p)->x.state)
-static void address(Symbol, Symbol, long);
-static void blkfetch(int, int, int, int);
-static void blkloop(int, int, int, int, int, int[]);
-static void blkstore(int, int, int, int);
-static void defaddress(Symbol);
-static void defconst(int, int, Value);
-static void defstring(int, char *);
-static void defsymbol(Symbol);
-static void doarg(Node);
-static void emit2(Node);
-static void export(Symbol);
-static void clobber(Node);
-static void function(Symbol, Symbol [], Symbol [], int);
-static void global(Symbol);
-static void import(Symbol);
-static void local(Symbol);
-static void progbeg(int, char **);
-static void progend(void);
-static void segment(int);
-static void space(int);
-static void target(Node);
-static int bitcount (unsigned);
-static Symbol argreg (int, int, int, int, int);
-
-static Symbol ireg[32], freg2[32], d6;
-static Symbol iregw, freg2w;
-static int tmpregs[] = {3, 9, 10};
-static Symbol blkreg;
-
-static int gnum = 8;
-static int pic;
-
-static int cseg;
-%}
-%start stmt
-%term CNSTF4=4113
-%term CNSTF8=8209
-%term CNSTF16=16401
-%term CNSTI1=1045
-%term CNSTI2=2069
-%term CNSTI4=4117
-%term CNSTI8=8213
-%term CNSTP4=4119
-%term CNSTP8=8215
-%term CNSTU1=1046
-%term CNSTU2=2070
-%term CNSTU4=4118
-%term CNSTU8=8214
-
-%term ARGB=41
-%term ARGF4=4129
-%term ARGF8=8225
-%term ARGF16=16417
-%term ARGI4=4133
-%term ARGI8=8229
-%term ARGP4=4135
-%term ARGP8=8231
-%term ARGU4=4134
-%term ARGU8=8230
-
-%term ASGNB=57
-%term ASGNF4=4145
-%term ASGNF8=8241
-%term ASGNF16=16433
-%term ASGNI1=1077
-%term ASGNI2=2101
-%term ASGNI4=4149
-%term ASGNI8=8245
-%term ASGNP4=4151
-%term ASGNP8=8247
-%term ASGNU1=1078
-%term ASGNU2=2102
-%term ASGNU4=4150
-%term ASGNU8=8246
-
-%term INDIRB=73
-%term INDIRF4=4161
-%term INDIRF8=8257
-%term INDIRF16=16449
-%term INDIRI1=1093
-%term INDIRI2=2117
-%term INDIRI4=4165
-%term INDIRI8=8261
-%term INDIRP4=4167
-%term INDIRP8=8263
-%term INDIRU1=1094
-%term INDIRU2=2118
-%term INDIRU4=4166
-%term INDIRU8=8262
-
-%term CVFF4=4209
-%term CVFF8=8305
-%term CVFF16=16497
-%term CVFI4=4213
-%term CVFI8=8309
-
-%term CVIF4=4225
-%term CVIF8=8321
-%term CVIF16=16513
-%term CVII1=1157
-%term CVII2=2181
-%term CVII4=4229
-%term CVII8=8325
-%term CVIU1=1158
-%term CVIU2=2182
-%term CVIU4=4230
-%term CVIU8=8326
-
-%term CVPP4=4247
-%term CVPP8=8343
-%term CVPP16=16535
-%term CVPU4=4246
-%term CVPU8=8342
-
-%term CVUI1=1205
-%term CVUI2=2229
-%term CVUI4=4277
-%term CVUI8=8373
-%term CVUP4=4279
-%term CVUP8=8375
-%term CVUP16=16567
-%term CVUU1=1206
-%term CVUU2=2230
-%term CVUU4=4278
-%term CVUU8=8374
-
-%term NEGF4=4289
-%term NEGF8=8385
-%term NEGF16=16577
-%term NEGI4=4293
-%term NEGI8=8389
-
-%term CALLB=217
-%term CALLF4=4305
-%term CALLF8=8401
-%term CALLF16=16593
-%term CALLI4=4309
-%term CALLI8=8405
-%term CALLP4=4311
-%term CALLP8=8407
-%term CALLU4=4310
-%term CALLU8=8406
-%term CALLV=216
-
-%term RETF4=4337
-%term RETF8=8433
-%term RETF16=16625
-%term RETI4=4341
-%term RETI8=8437
-%term RETP4=4343
-%term RETP8=8439
-%term RETU4=4342
-%term RETU8=8438
-%term RETV=248
-
-%term ADDRGP4=4359
-%term ADDRGP8=8455
-
-%term ADDRFP4=4375
-%term ADDRFP8=8471
-
-%term ADDRLP4=4391
-%term ADDRLP8=8487
-
-%term ADDF4=4401
-%term ADDF8=8497
-%term ADDF16=16689
-%term ADDI4=4405
-%term ADDI8=8501
-%term ADDP4=4407
-%term ADDP8=8503
-%term ADDU4=4406
-%term ADDU8=8502
-
-%term SUBF4=4417
-%term SUBF8=8513
-%term SUBF16=16705
-%term SUBI4=4421
-%term SUBI8=8517
-%term SUBP4=4423
-%term SUBP8=8519
-%term SUBU4=4422
-%term SUBU8=8518
-
-%term LSHI4=4437
-%term LSHI8=8533
-%term LSHU4=4438
-%term LSHU8=8534
-
-%term MODI4=4453
-%term MODI8=8549
-%term MODU4=4454
-%term MODU8=8550
-
-%term RSHI4=4469
-%term RSHI8=8565
-%term RSHU4=4470
-%term RSHU8=8566
-
-%term BANDI4=4485
-%term BANDI8=8581
-%term BANDU4=4486
-%term BANDU8=8582
-
-%term BCOMI4=4501
-%term BCOMI8=8597
-%term BCOMU4=4502
-%term BCOMU8=8598
-
-%term BORI4=4517
-%term BORI8=8613
-%term BORU4=4518
-%term BORU8=8614
-
-%term BXORI4=4533
-%term BXORI8=8629
-%term BXORU4=4534
-%term BXORU8=8630
-
-%term DIVF4=4545
-%term DIVF8=8641
-%term DIVF16=16833
-%term DIVI4=4549
-%term DIVI8=8645
-%term DIVU4=4550
-%term DIVU8=8646
-
-%term MULF4=4561
-%term MULF8=8657
-%term MULF16=16849
-%term MULI4=4565
-%term MULI8=8661
-%term MULU4=4566
-%term MULU8=8662
-
-%term EQF4=4577
-%term EQF8=8673
-%term EQF16=16865
-%term EQI4=4581
-%term EQI8=8677
-%term EQU4=4582
-%term EQU8=8678
-
-%term GEF4=4593
-%term GEF8=8689
-%term GEI4=4597
-%term GEI8=8693
-%term GEI16=16885
-%term GEU4=4598
-%term GEU8=8694
-
-%term GTF4=4609
-%term GTF8=8705
-%term GTF16=16897
-%term GTI4=4613
-%term GTI8=8709
-%term GTU4=4614
-%term GTU8=8710
-
-%term LEF4=4625
-%term LEF8=8721
-%term LEF16=16913
-%term LEI4=4629
-%term LEI8=8725
-%term LEU4=4630
-%term LEU8=8726
-
-%term LTF4=4641
-%term LTF8=8737
-%term LTF16=16929
-%term LTI4=4645
-%term LTI8=8741
-%term LTU4=4646
-%term LTU8=8742
-
-%term NEF4=4657
-%term NEF8=8753
-%term NEF16=16945
-%term NEI4=4661
-%term NEI8=8757
-%term NEU4=4662
-%term NEU8=8758
-
-%term JUMPV=584
-
-%term LABELV=600
-
-%term LOADB=233
-%term LOADF4=4321
-%term LOADF8=8417
-%term LOADF16=16609
-%term LOADI1=1253
-%term LOADI2=2277
-%term LOADI4=4325
-%term LOADI8=8421
-%term LOADP4=4327
-%term LOADP8=8423
-%term LOADU1=1254
-%term LOADU2=2278
-%term LOADU4=4326
-%term LOADU8=8422
-
-%term VREGP=711
-%%
-reg: INDIRI1(VREGP) "# read register\n"
-reg: INDIRU1(VREGP) "# read register\n"
-
-reg: INDIRI2(VREGP) "# read register\n"
-reg: INDIRU2(VREGP) "# read register\n"
-
-reg: INDIRF4(VREGP) "# read register\n"
-reg: INDIRI4(VREGP) "# read register\n"
-reg: INDIRP4(VREGP) "# read register\n"
-reg: INDIRU4(VREGP) "# read register\n"
-
-reg: INDIRF8(VREGP) "# read register\n"
-reg: INDIRI8(VREGP) "# read register\n"
-reg: INDIRP8(VREGP) "# read register\n"
-reg: INDIRU8(VREGP) "# read register\n"
-
-stmt: ASGNI1(VREGP,reg) "# write register\n"
-stmt: ASGNU1(VREGP,reg) "# write register\n"
-
-stmt: ASGNI2(VREGP,reg) "# write register\n"
-stmt: ASGNU2(VREGP,reg) "# write register\n"
-
-stmt: ASGNF4(VREGP,reg) "# write register\n"
-stmt: ASGNI4(VREGP,reg) "# write register\n"
-stmt: ASGNP4(VREGP,reg) "# write register\n"
-stmt: ASGNU4(VREGP,reg) "# write register\n"
-
-stmt: ASGNF8(VREGP,reg) "# write register\n"
-stmt: ASGNI8(VREGP,reg) "# write register\n"
-stmt: ASGNP8(VREGP,reg) "# write register\n"
-stmt: ASGNU8(VREGP,reg) "# write register\n"
-con: CNSTI1 "%a"
-con: CNSTU1 "%a"
-
-con: CNSTI2 "%a"
-con: CNSTU2 "%a"
-
-con: CNSTI4 "%a"
-con: CNSTU4 "%a"
-con: CNSTP4 "%a"
-
-con: CNSTI8 "%a"
-con: CNSTU8 "%a"
-con: CNSTP8 "%a"
-stmt: reg ""
-acon: con "%0"
-acon: ADDRGP4 "%a"
-addr: ADDI4(reg,acon) "%1($%0)"
-addr: ADDU4(reg,acon) "%1($%0)"
-addr: ADDP4(reg,acon) "%1($%0)"
-addr: acon "%0"
-addr: reg "($%0)"
-addr: ADDRFP4 "%a+%F($sp)"
-addr: ADDRLP4 "%a+%F($sp)"
-reg: addr "la $%c,%0\n" 1
-reg: CNSTI1 "# reg\n" range(a, 0, 0)
-reg: CNSTI2 "# reg\n" range(a, 0, 0)
-reg: CNSTI4 "# reg\n" range(a, 0, 0)
-reg: CNSTU1 "# reg\n" range(a, 0, 0)
-reg: CNSTU2 "# reg\n" range(a, 0, 0)
-reg: CNSTU4 "# reg\n" range(a, 0, 0)
-reg: CNSTP4 "# reg\n" range(a, 0, 0)
-stmt: ASGNI1(addr,reg) "sb $%1,%0\n" 1
-stmt: ASGNU1(addr,reg) "sb $%1,%0\n" 1
-stmt: ASGNI2(addr,reg) "sh $%1,%0\n" 1
-stmt: ASGNU2(addr,reg) "sh $%1,%0\n" 1
-stmt: ASGNI4(addr,reg) "sw $%1,%0\n" 1
-stmt: ASGNU4(addr,reg) "sw $%1,%0\n" 1
-stmt: ASGNP4(addr,reg) "sw $%1,%0\n" 1
-reg: INDIRI1(addr) "lb $%c,%0\n" 1
-reg: INDIRU1(addr) "lbu $%c,%0\n" 1
-reg: INDIRI2(addr) "lh $%c,%0\n" 1
-reg: INDIRU2(addr) "lhu $%c,%0\n" 1
-reg: INDIRI4(addr) "lw $%c,%0\n" 1
-reg: INDIRU4(addr) "lw $%c,%0\n" 1
-reg: INDIRP4(addr) "lw $%c,%0\n" 1
-
-reg: CVII4(INDIRI1(addr)) "lb $%c,%0\n" 1
-reg: CVII4(INDIRI2(addr)) "lh $%c,%0\n" 1
-reg: CVUU4(INDIRU1(addr)) "lbu $%c,%0\n" 1
-reg: CVUU4(INDIRU2(addr)) "lhu $%c,%0\n" 1
-reg: CVUI4(INDIRU1(addr)) "lbu $%c,%0\n" 1
-reg: CVUI4(INDIRU2(addr)) "lhu $%c,%0\n" 1
-reg: INDIRF4(addr) "l.s $f%c,%0\n" 1
-reg: INDIRF8(addr) "l.d $f%c,%0\n" 1
-stmt: ASGNF4(addr,reg) "s.s $f%1,%0\n" 1
-stmt: ASGNF8(addr,reg) "s.d $f%1,%0\n" 1
-reg: DIVI4(reg,reg) "div $%c,$%0,$%1\n" 1
-reg: DIVU4(reg,reg) "divu $%c,$%0,$%1\n" 1
-reg: MODI4(reg,reg) "rem $%c,$%0,$%1\n" 1
-reg: MODU4(reg,reg) "remu $%c,$%0,$%1\n" 1
-reg: MULI4(reg,reg) "mul $%c,$%0,$%1\n" 1
-reg: MULU4(reg,reg) "mul $%c,$%0,$%1\n" 1
-rc: con "%0"
-rc: reg "$%0"
-
-reg: ADDI4(reg,rc) "addu $%c,$%0,%1\n" 1
-reg: ADDP4(reg,rc) "addu $%c,$%0,%1\n" 1
-reg: ADDU4(reg,rc) "addu $%c,$%0,%1\n" 1
-reg: BANDI4(reg,rc) "and $%c,$%0,%1\n" 1
-reg: BORI4(reg,rc) "or $%c,$%0,%1\n" 1
-reg: BXORI4(reg,rc) "xor $%c,$%0,%1\n" 1
-reg: BANDU4(reg,rc) "and $%c,$%0,%1\n" 1
-reg: BORU4(reg,rc) "or $%c,$%0,%1\n" 1
-reg: BXORU4(reg,rc) "xor $%c,$%0,%1\n" 1
-reg: SUBI4(reg,rc) "subu $%c,$%0,%1\n" 1
-reg: SUBP4(reg,rc) "subu $%c,$%0,%1\n" 1
-reg: SUBU4(reg,rc) "subu $%c,$%0,%1\n" 1
-rc5: CNSTI4 "%a" range(a,0,31)
-rc5: reg "$%0"
-
-reg: LSHI4(reg,rc5) "sll $%c,$%0,%1\n" 1
-reg: LSHU4(reg,rc5) "sll $%c,$%0,%1\n" 1
-reg: RSHI4(reg,rc5) "sra $%c,$%0,%1\n" 1
-reg: RSHU4(reg,rc5) "srl $%c,$%0,%1\n" 1
-reg: BCOMI4(reg) "not $%c,$%0\n" 1
-reg: BCOMU4(reg) "not $%c,$%0\n" 1
-reg: NEGI4(reg) "negu $%c,$%0\n" 1
-reg: LOADI1(reg) "move $%c,$%0\n" move(a)
-reg: LOADU1(reg) "move $%c,$%0\n" move(a)
-reg: LOADI2(reg) "move $%c,$%0\n" move(a)
-reg: LOADU2(reg) "move $%c,$%0\n" move(a)
-reg: LOADI4(reg) "move $%c,$%0\n" move(a)
-reg: LOADP4(reg) "move $%c,$%0\n" move(a)
-reg: LOADU4(reg) "move $%c,$%0\n" move(a)
-reg: ADDF4(reg,reg) "add.s $f%c,$f%0,$f%1\n" 1
-reg: ADDF8(reg,reg) "add.d $f%c,$f%0,$f%1\n" 1
-reg: DIVF4(reg,reg) "div.s $f%c,$f%0,$f%1\n" 1
-reg: DIVF8(reg,reg) "div.d $f%c,$f%0,$f%1\n" 1
-reg: MULF4(reg,reg) "mul.s $f%c,$f%0,$f%1\n" 1
-reg: MULF8(reg,reg) "mul.d $f%c,$f%0,$f%1\n" 1
-reg: SUBF4(reg,reg) "sub.s $f%c,$f%0,$f%1\n" 1
-reg: SUBF8(reg,reg) "sub.d $f%c,$f%0,$f%1\n" 1
-reg: LOADF4(reg) "mov.s $f%c,$f%0\n" move(a)
-reg: LOADF8(reg) "mov.d $f%c,$f%0\n" move(a)
-reg: NEGF4(reg) "neg.s $f%c,$f%0\n" 1
-reg: NEGF8(reg) "neg.d $f%c,$f%0\n" 1
-reg: CVII4(reg) "sll $%c,$%0,8*(4-%a); sra $%c,$%c,8*(4-%a)\n" 2
-reg: CVUI4(reg) "and $%c,$%0,(1<<(8*%a))-1\n" 1
-reg: CVUU4(reg) "and $%c,$%0,(1<<(8*%a))-1\n" 1
-reg: CVFF4(reg) "cvt.s.d $f%c,$f%0\n" 1
-reg: CVFF8(reg) "cvt.d.s $f%c,$f%0\n" 1
-reg: CVIF4(reg) "mtc1 $%0,$f%c; cvt.s.w $f%c,$f%c\n" 2
-reg: CVIF8(reg) "mtc1 $%0,$f%c; cvt.d.w $f%c,$f%c\n" 2
-reg: CVFI4(reg) "trunc.w.s $f2,$f%0,$%c; mfc1 $%c,$f2\n" (a->syms[0]->u.c.v.i==4?2:LBURG_MAX)
-reg: CVFI4(reg) "trunc.w.d $f2,$f%0,$%c; mfc1 $%c,$f2\n" (a->syms[0]->u.c.v.i==8?2:LBURG_MAX)
-stmt: LABELV "%a:\n"
-stmt: JUMPV(acon) "b %0\n" 1
-stmt: JUMPV(reg) ".cpadd $%0\nj $%0\n" !pic
-stmt: JUMPV(reg) "j $%0\n" pic
-stmt: EQI4(reg,reg) "beq $%0,$%1,%a\n" 1
-stmt: EQU4(reg,reg) "beq $%0,$%1,%a\n" 1
-stmt: GEI4(reg,reg) "bge $%0,$%1,%a\n" 1
-stmt: GEU4(reg,reg) "bgeu $%0,$%1,%a\n" 1
-stmt: GTI4(reg,reg) "bgt $%0,$%1,%a\n" 1
-stmt: GTU4(reg,reg) "bgtu $%0,$%1,%a\n" 1
-stmt: LEI4(reg,reg) "ble $%0,$%1,%a\n" 1
-stmt: LEU4(reg,reg) "bleu $%0,$%1,%a\n" 1
-stmt: LTI4(reg,reg) "blt $%0,$%1,%a\n" 1
-stmt: LTU4(reg,reg) "bltu $%0,$%1,%a\n" 1
-stmt: NEI4(reg,reg) "bne $%0,$%1,%a\n" 1
-stmt: NEU4(reg,reg) "bne $%0,$%1,%a\n" 1
-stmt: EQF4(reg,reg) "c.eq.s $f%0,$f%1; bc1t %a\n" 2
-stmt: EQF8(reg,reg) "c.eq.d $f%0,$f%1; bc1t %a\n" 2
-stmt: LEF4(reg,reg) "c.le.s $f%0,$f%1; bc1t %a\n" 2
-stmt: LEF8(reg,reg) "c.le.d $f%0,$f%1; bc1t %a\n" 2
-stmt: LTF4(reg,reg) "c.lt.s $f%0,$f%1; bc1t %a\n" 2
-stmt: LTF8(reg,reg) "c.lt.d $f%0,$f%1; bc1t %a\n" 2
-stmt: GEF4(reg,reg) "c.lt.s $f%0,$f%1; bc1f %a\n" 2
-stmt: GEF8(reg,reg) "c.lt.d $f%0,$f%1; bc1f %a\n" 2
-stmt: GTF4(reg,reg) "c.le.s $f%0,$f%1; bc1f %a\n" 2
-stmt: GTF8(reg,reg) "c.le.d $f%0,$f%1; bc1f %a\n" 2
-stmt: NEF4(reg,reg) "c.eq.s $f%0,$f%1; bc1f %a\n" 2
-stmt: NEF8(reg,reg) "c.eq.d $f%0,$f%1; bc1f %a\n" 2
-ar: ADDRGP4 "%a"
-
-reg: CALLF4(ar) "jal %0\n" 1
-reg: CALLF8(ar) "jal %0\n" 1
-reg: CALLI4(ar) "jal %0\n" 1
-reg: CALLP4(ar) "jal %0\n" 1
-reg: CALLU4(ar) "jal %0\n" 1
-stmt: CALLV(ar) "jal %0\n" 1
-ar: reg "$%0"
-ar: CNSTP4 "%a" range(a, 0, 0x0fffffff)
-stmt: RETF4(reg) "# ret\n" 1
-stmt: RETF8(reg) "# ret\n" 1
-stmt: RETI4(reg) "# ret\n" 1
-stmt: RETU4(reg) "# ret\n" 1
-stmt: RETP4(reg) "# ret\n" 1
-stmt: RETV(reg) "# ret\n" 1
-stmt: ARGF4(reg) "# arg\n" 1
-stmt: ARGF8(reg) "# arg\n" 1
-stmt: ARGI4(reg) "# arg\n" 1
-stmt: ARGP4(reg) "# arg\n" 1
-stmt: ARGU4(reg) "# arg\n" 1
-
-stmt: ARGB(INDIRB(reg)) "# argb %0\n" 1
-stmt: ASGNB(reg,INDIRB(reg)) "# asgnb %0 %1\n" 1
-%%
-static void progend(void){}
-static void progbeg(int argc, char *argv[]) {
- int i;
-
- {
- union {
- char c;
- int i;
- } u;
- u.i = 0;
- u.c = 1;
- swap = ((int)(u.i == 1)) != IR->little_endian;
- }
- print(".set reorder\n");
- pic = !IR->little_endian;
- parseflags(argc, argv);
- for (i = 0; i < argc; i++)
- if (strncmp(argv[i], "-G", 2) == 0)
- gnum = atoi(argv[i] + 2);
- else if (strcmp(argv[i], "-pic=1") == 0
- || strcmp(argv[i], "-pic=0") == 0)
- pic = argv[i][5]-'0';
- for (i = 0; i < 31; i += 2)
- freg2[i] = mkreg("%d", i, 3, FREG);
- for (i = 0; i < 32; i++)
- ireg[i] = mkreg("%d", i, 1, IREG);
- ireg[29]->x.name = "sp";
- d6 = mkreg("6", 6, 3, IREG);
- freg2w = mkwildcard(freg2);
- iregw = mkwildcard(ireg);
- tmask[IREG] = INTTMP; tmask[FREG] = FLTTMP;
- vmask[IREG] = INTVAR; vmask[FREG] = FLTVAR;
- blkreg = mkreg("8", 8, 7, IREG);
-}
-static Symbol rmap(int opk) {
- switch (optype(opk)) {
- case I: case U: case P: case B:
- return iregw;
- case F:
- return freg2w;
- default:
- return 0;
- }
-}
-static void target(Node p) {
- assert(p);
- switch (specific(p->op)) {
- case CNST+I: case CNST+U: case CNST+P:
- if (range(p, 0, 0) == 0) {
- setreg(p, ireg[0]);
- p->x.registered = 1;
- }
- break;
- case CALL+V:
- rtarget(p, 0, ireg[25]);
- break;
- case CALL+F:
- rtarget(p, 0, ireg[25]);
- setreg(p, freg2[0]);
- break;
- case CALL+I: case CALL+P: case CALL+U:
- rtarget(p, 0, ireg[25]);
- setreg(p, ireg[2]);
- break;
- case RET+F:
- rtarget(p, 0, freg2[0]);
- break;
- case RET+I: case RET+U: case RET+P:
- rtarget(p, 0, ireg[2]);
- break;
- case ARG+F: case ARG+I: case ARG+P: case ARG+U: {
- static int ty0;
- int ty = optype(p->op);
- Symbol q;
-
- q = argreg(p->x.argno, p->syms[2]->u.c.v.i, ty, opsize(p->op), ty0);
- if (p->x.argno == 0)
- ty0 = ty;
- if (q &&
- !(ty == F && q->x.regnode->set == IREG))
- rtarget(p, 0, q);
- break;
- }
- case ASGN+B: rtarget(p->kids[1], 0, blkreg); break;
- case ARG+B: rtarget(p->kids[0], 0, blkreg); break;
- }
-}
-static void clobber(Node p) {
- assert(p);
- switch (specific(p->op)) {
- case CALL+F:
- spill(INTTMP | INTRET, IREG, p);
- spill(FLTTMP, FREG, p);
- break;
- case CALL+I: case CALL+P: case CALL+U:
- spill(INTTMP, IREG, p);
- spill(FLTTMP | FLTRET, FREG, p);
- break;
- case CALL+V:
- spill(INTTMP | INTRET, IREG, p);
- spill(FLTTMP | FLTRET, FREG, p);
- break;
- }
-}
-static void emit2(Node p) {
- int dst, n, src, sz, ty;
- static int ty0;
- Symbol q;
-
- switch (specific(p->op)) {
- case ARG+F: case ARG+I: case ARG+P: case ARG+U:
- ty = optype(p->op);
- sz = opsize(p->op);
- if (p->x.argno == 0)
- ty0 = ty;
- q = argreg(p->x.argno, p->syms[2]->u.c.v.i, ty, sz, ty0);
- src = getregnum(p->x.kids[0]);
- if (q == NULL && ty == F && sz == 4)
- print("s.s $f%d,%d($sp)\n", src, p->syms[2]->u.c.v.i);
- else if (q == NULL && ty == F)
- print("s.d $f%d,%d($sp)\n", src, p->syms[2]->u.c.v.i);
- else if (q == NULL)
- print("sw $%d,%d($sp)\n", src, p->syms[2]->u.c.v.i);
- else if (ty == F && sz == 4 && q->x.regnode->set == IREG)
- print("mfc1 $%d,$f%d\n", q->x.regnode->number, src);
- else if (ty == F && q->x.regnode->set == IREG)
- print("mfc1.d $%d,$f%d\n", q->x.regnode->number, src);
- break;
- case ASGN+B:
- dalign = salign = p->syms[1]->u.c.v.i;
- blkcopy(getregnum(p->x.kids[0]), 0,
- getregnum(p->x.kids[1]), 0,
- p->syms[0]->u.c.v.i, tmpregs);
- break;
- case ARG+B:
- dalign = 4;
- salign = p->syms[1]->u.c.v.i;
- blkcopy(29, p->syms[2]->u.c.v.i,
- getregnum(p->x.kids[0]), 0,
- p->syms[0]->u.c.v.i, tmpregs);
- n = p->syms[2]->u.c.v.i + p->syms[0]->u.c.v.i;
- dst = p->syms[2]->u.c.v.i;
- for ( ; dst <= 12 && dst < n; dst += 4)
- print("lw $%d,%d($sp)\n", (dst/4)+4, dst);
- break;
- }
-}
-static Symbol argreg(int argno, int offset, int ty, int sz, int ty0) {
- assert((offset&3) == 0);
- if (offset > 12)
- return NULL;
- else if (argno == 0 && ty == F)
- return freg2[12];
- else if (argno == 1 && ty == F && ty0 == F)
- return freg2[14];
- else if (argno == 1 && ty == F && sz == 8)
- return d6; /* Pair! */
- else
- return ireg[(offset/4) + 4];
-}
-static void doarg(Node p) {
- static int argno;
- int align;
-
- if (argoffset == 0)
- argno = 0;
- p->x.argno = argno++;
- align = p->syms[1]->u.c.v.i < 4 ? 4 : p->syms[1]->u.c.v.i;
- p->syms[2] = intconst(mkactual(align,
- p->syms[0]->u.c.v.i));
-}
-static void local(Symbol p) {
- if (askregvar(p, rmap(ttob(p->type))) == 0)
- mkauto(p);
-}
-static void function(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
- int i, saved, sizefsave, sizeisave, varargs;
- Symbol r, argregs[4];
-
- usedmask[0] = usedmask[1] = 0;
- freemask[0] = freemask[1] = ~(unsigned)0;
- offset = maxoffset = maxargoffset = 0;
- for (i = 0; callee[i]; i++)
- ;
- varargs = variadic(f->type)
- || i > 0 && strcmp(callee[i-1]->name, "va_alist") == 0;
- for (i = 0; callee[i]; i++) {
- Symbol p = callee[i];
- Symbol q = caller[i];
- assert(q);
- offset = roundup(offset, q->type->align);
- p->x.offset = q->x.offset = offset;
- p->x.name = q->x.name = stringd(offset);
- r = argreg(i, offset, optype(ttob(q->type)), q->type->size, optype(ttob(caller[0]->type)));
- if (i < 4)
- argregs[i] = r;
- offset = roundup(offset + q->type->size, 4);
- if (varargs)
- p->sclass = AUTO;
- else if (r && ncalls == 0 &&
- !isstruct(q->type) && !p->addressed &&
- !(isfloat(q->type) && r->x.regnode->set == IREG)
-) {
- p->sclass = q->sclass = REGISTER;
- askregvar(p, r);
- assert(p->x.regnode && p->x.regnode->vbl == p);
- q->x = p->x;
- q->type = p->type;
- }
- else if (askregvar(p, rmap(ttob(p->type)))
- && r != NULL
- && (isint(p->type) || p->type == q->type)) {
- assert(q->sclass != REGISTER);
- p->sclass = q->sclass = REGISTER;
- q->type = p->type;
- }
- }
- assert(!caller[i]);
- offset = 0;
- gencode(caller, callee);
- if (ncalls)
- usedmask[IREG] |= ((unsigned)1)<<31;
- usedmask[IREG] &= 0xc0ff0000;
- usedmask[FREG] &= 0xfff00000;
- if (pic && ncalls)
- usedmask[IREG] |= 1<<25;
- maxargoffset = roundup(maxargoffset, usedmask[FREG] ? 8 : 4);
- if (ncalls && maxargoffset < 16)
- maxargoffset = 16;
- sizefsave = 4*bitcount(usedmask[FREG]);
- sizeisave = 4*bitcount(usedmask[IREG]);
- framesize = roundup(maxargoffset + sizefsave
- + sizeisave + maxoffset, 8);
- segment(CODE);
- print(".align 2\n");
- print(".ent %s\n", f->x.name);
- print("%s:\n", f->x.name);
- i = maxargoffset + sizefsave - framesize;
- print(".frame $sp,%d,$31\n", framesize);
- if (pic)
- print(".set noreorder\n.cpload $25\n.set reorder\n");
- if (framesize > 0)
- print("addu $sp,$sp,%d\n", -framesize);
- if (usedmask[FREG])
- print(".fmask 0x%x,%d\n", usedmask[FREG], i - 8);
- if (usedmask[IREG])
- print(".mask 0x%x,%d\n", usedmask[IREG],
- i + sizeisave - 4);
- saved = maxargoffset;
- for (i = 20; i <= 30; i += 2)
- if (usedmask[FREG]&(3<<i)) {
- print("s.d $f%d,%d($sp)\n", i, saved);
- saved += 8;
- }
-
- for (i = 16; i <= 31; i++)
- if (usedmask[IREG]&(1<<i)) {
- if (i == 25)
- print(".cprestore %d\n", saved);
- else
- print("sw $%d,%d($sp)\n", i, saved);
- saved += 4;
- }
- for (i = 0; i < 4 && callee[i]; i++) {
- r = argregs[i];
- if (r && r->x.regnode != callee[i]->x.regnode) {
- Symbol out = callee[i];
- Symbol in = caller[i];
- int rn = r->x.regnode->number;
- int rs = r->x.regnode->set;
- int tyin = ttob(in->type);
-
- assert(out && in && r && r->x.regnode);
- assert(out->sclass != REGISTER || out->x.regnode);
- if (out->sclass == REGISTER
- && (isint(out->type) || out->type == in->type)) {
- int outn = out->x.regnode->number;
- if (rs == FREG && tyin == F+sizeop(8))
- print("mov.d $f%d,$f%d\n", outn, rn);
- else if (rs == FREG && tyin == F+sizeop(4))
- print("mov.s $f%d,$f%d\n", outn, rn);
- else if (rs == IREG && tyin == F+sizeop(8))
- print("mtc1.d $%d,$f%d\n", rn, outn);
- else if (rs == IREG && tyin == F+sizeop(4))
- print("mtc1 $%d,$f%d\n", rn, outn);
- else
- print("move $%d,$%d\n", outn, rn);
- } else {
- int off = in->x.offset + framesize;
- if (rs == FREG && tyin == F+sizeop(8))
- print("s.d $f%d,%d($sp)\n", rn, off);
- else if (rs == FREG && tyin == F+sizeop(4))
- print("s.s $f%d,%d($sp)\n", rn, off);
- else {
- int i, n = (in->type->size + 3)/4;
- for (i = rn; i < rn+n && i <= 7; i++)
- print("sw $%d,%d($sp)\n", i, off + (i-rn)*4);
- }
- }
- }
- }
- if (varargs && callee[i-1]) {
- i = callee[i-1]->x.offset + callee[i-1]->type->size;
- for (i = roundup(i, 4)/4; i <= 3; i++)
- print("sw $%d,%d($sp)\n", i + 4, framesize + 4*i);
- }
- emitcode();
- saved = maxargoffset;
- for (i = 20; i <= 30; i += 2)
- if (usedmask[FREG]&(3<<i)) {
- print("l.d $f%d,%d($sp)\n", i, saved);
- saved += 8;
- }
- for (i = 16; i <= 31; i++)
- if (usedmask[IREG]&(1<<i)) {
- print("lw $%d,%d($sp)\n", i, saved);
- saved += 4;
- }
- if (framesize > 0)
- print("addu $sp,$sp,%d\n", framesize);
- print("j $31\n");
- print(".end %s\n", f->x.name);
-}
-static void defconst(int suffix, int size, Value v) {
- if (suffix == F && size == 4) {
- float f = v.d;
- print(".word 0x%x\n", *(unsigned *)&f);
- }
- else if (suffix == F && size == 8) {
- double d = v.d;
- unsigned *p = (unsigned *)&d;
- print(".word 0x%x\n.word 0x%x\n", p[swap], p[!swap]);
- }
- else if (suffix == P)
- print(".word 0x%x\n", v.p);
- else if (size == 1)
- print(".byte 0x%x\n", suffix == I ? v.i : v.u);
- else if (size == 2)
- print(".half 0x%x\n", suffix == I ? v.i : v.u);
- else if (size == 4)
- print(".word 0x%x\n", suffix == I ? v.i : v.u);
-}
-static void defaddress(Symbol p) {
- if (pic && p->scope == LABELS)
- print(".gpword %s\n", p->x.name);
- else
- print(".word %s\n", p->x.name);
-}
-static void defstring(int n, char *str) {
- char *s;
-
- for (s = str; s < str + n; s++)
- print(".byte %d\n", (*s)&0377);
-}
-static void export(Symbol p) {
- print(".globl %s\n", p->x.name);
-}
-static void import(Symbol p) {
- if (!isfunc(p->type))
- print(".extern %s %d\n", p->name, p->type->size);
-}
-static void defsymbol(Symbol p) {
- if (p->scope >= LOCAL && p->sclass == STATIC)
- p->x.name = stringf("L.%d", genlabel(1));
- else if (p->generated)
- p->x.name = stringf("L.%s", p->name);
- else
- assert(p->scope != CONSTANTS || isint(p->type) || isptr(p->type)),
- p->x.name = p->name;
-}
-static void address(Symbol q, Symbol p, long n) {
- if (p->scope == GLOBAL
- || p->sclass == STATIC || p->sclass == EXTERN)
- q->x.name = stringf("%s%s%D", p->x.name,
- n >= 0 ? "+" : "", n);
- else {
- assert(n <= INT_MAX && n >= INT_MIN);
- q->x.offset = p->x.offset + n;
- q->x.name = stringd(q->x.offset);
- }
-}
-static void global(Symbol p) {
- if (p->u.seg == BSS) {
- if (p->sclass == STATIC || Aflag >= 2)
- print(".lcomm %s,%d\n", p->x.name, p->type->size);
- else
- print( ".comm %s,%d\n", p->x.name, p->type->size);
- } else {
- if (p->u.seg == DATA
- && (p->type->size == 0 || p->type->size > gnum))
- print(".data\n");
- else if (p->u.seg == DATA)
- print(".sdata\n");
- print(".align %c\n", ".01.2...3"[p->type->align]);
- print("%s:\n", p->x.name);
- }
-}
-static void segment(int n) {
- cseg = n;
- switch (n) {
- case CODE: print(".text\n"); break;
- case LIT: print(".rdata\n"); break;
- }
-}
-static void space(int n) {
- if (cseg != BSS)
- print(".space %d\n", n);
-}
-static void blkloop(int dreg, int doff, int sreg, int soff, int size, int tmps[]) {
- int lab = genlabel(1);
-
- print("addu $%d,$%d,%d\n", sreg, sreg, size&~7);
- print("addu $%d,$%d,%d\n", tmps[2], dreg, size&~7);
- blkcopy(tmps[2], doff, sreg, soff, size&7, tmps);
- print("L.%d:\n", lab);
- print("addu $%d,$%d,%d\n", sreg, sreg, -8);
- print("addu $%d,$%d,%d\n", tmps[2], tmps[2], -8);
- blkcopy(tmps[2], doff, sreg, soff, 8, tmps);
- print("bltu $%d,$%d,L.%d\n", dreg, tmps[2], lab);
-}
-static void blkfetch(int size, int off, int reg, int tmp) {
- assert(size == 1 || size == 2 || size == 4);
- if (size == 1)
- print("lbu $%d,%d($%d)\n", tmp, off, reg);
- else if (salign >= size && size == 2)
- print("lhu $%d,%d($%d)\n", tmp, off, reg);
- else if (salign >= size)
- print("lw $%d,%d($%d)\n", tmp, off, reg);
- else if (size == 2)
- print("ulhu $%d,%d($%d)\n", tmp, off, reg);
- else
- print("ulw $%d,%d($%d)\n", tmp, off, reg);
-}
-static void blkstore(int size, int off, int reg, int tmp) {
- if (size == 1)
- print("sb $%d,%d($%d)\n", tmp, off, reg);
- else if (dalign >= size && size == 2)
- print("sh $%d,%d($%d)\n", tmp, off, reg);
- else if (dalign >= size)
- print("sw $%d,%d($%d)\n", tmp, off, reg);
- else if (size == 2)
- print("ush $%d,%d($%d)\n", tmp, off, reg);
- else
- print("usw $%d,%d($%d)\n", tmp, off, reg);
-}
-static void stabinit(char *, int, char *[]);
-static void stabline(Coordinate *);
-static void stabsym(Symbol);
-
-static char *currentfile;
-
-static int bitcount(unsigned mask) {
- unsigned i, n = 0;
-
- for (i = 1; i; i <<= 1)
- if (mask&i)
- n++;
- return n;
-}
-
-/* stabinit - initialize stab output */
-static void stabinit(char *file, int argc, char *argv[]) {
- if (file) {
- print(".file 2,\"%s\"\n", file);
- currentfile = file;
- }
-}
-
-/* stabline - emit stab entry for source coordinate *cp */
-static void stabline(Coordinate *cp) {
- if (cp->file && cp->file != currentfile) {
- print(".file 2,\"%s\"\n", cp->file);
- currentfile = cp->file;
- }
- print(".loc 2,%d\n", cp->y);
-}
-
-/* stabsym - output a stab entry for symbol p */
-static void stabsym(Symbol p) {
- if (p == cfunc && IR->stabline)
- (*IR->stabline)(&p->src);
-}
-Interface mipsebIR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 4, 4, 0, /* long */
- 4, 4, 0, /* long long */
- 4, 4, 1, /* float */
- 8, 8, 1, /* double */
- 8, 8, 1, /* long double */
- 4, 4, 0, /* T * */
- 0, 1, 0, /* struct */
- 0, /* little_endian */
- 0, /* mulops_calls */
- 0, /* wants_callb */
- 1, /* wants_argb */
- 1, /* left_to_right */
- 0, /* wants_dag */
- 0, /* unsigned_char */
- address,
- blockbeg,
- blockend,
- defaddress,
- defconst,
- defstring,
- defsymbol,
- emit,
- export,
- function,
- gen,
- global,
- import,
- local,
- progbeg,
- progend,
- segment,
- space,
- 0, 0, 0, stabinit, stabline, stabsym, 0,
- {
- 4, /* max_unaligned_load */
- rmap,
- blkfetch, blkstore, blkloop,
- _label,
- _rule,
- _nts,
- _kids,
- _string,
- _templates,
- _isinstruction,
- _ntname,
- emit2,
- doarg,
- target,
- clobber,
-
- }
-}, mipselIR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 4, 4, 0, /* long */
- 4, 4, 0, /* long long */
- 4, 4, 1, /* float */
- 8, 8, 1, /* double */
- 8, 8, 1, /* long double */
- 4, 4, 0, /* T * */
- 0, 1, 0, /* struct */
- 1, /* little_endian */
- 0, /* mulops_calls */
- 0, /* wants_callb */
- 1, /* wants_argb */
- 1, /* left_to_right */
- 0, /* wants_dag */
- 0, /* unsigned_char */
- address,
- blockbeg,
- blockend,
- defaddress,
- defconst,
- defstring,
- defsymbol,
- emit,
- export,
- function,
- gen,
- global,
- import,
- local,
- progbeg,
- progend,
- segment,
- space,
- 0, 0, 0, stabinit, stabline, stabsym, 0,
- {
- 4, /* max_unaligned_load */
- rmap,
- blkfetch, blkstore, blkloop,
- _label,
- _rule,
- _nts,
- _kids,
- _string,
- _templates,
- _isinstruction,
- _ntname,
- emit2,
- doarg,
- target,
- clobber,
-
- }
-};
-static char rcsid[] = "$Id: mips.md 145 2001-10-17 21:53:10Z timo $";
+%{
+#define INTTMP 0x0100ff00
+#define INTVAR 0x40ff0000
+#define FLTTMP 0x000f0ff0
+#define FLTVAR 0xfff00000
+
+#define INTRET 0x00000004
+#define FLTRET 0x00000003
+
+#define readsreg(p) \
+ (generic((p)->op)==INDIR && (p)->kids[0]->op==VREG+P)
+#define setsrc(d) ((d) && (d)->x.regnode && \
+ (d)->x.regnode->set == src->x.regnode->set && \
+ (d)->x.regnode->mask&src->x.regnode->mask)
+
+#define relink(a, b) ((b)->x.prev = (a), (a)->x.next = (b))
+
+#include "c.h"
+#define NODEPTR_TYPE Node
+#define OP_LABEL(p) ((p)->op)
+#define LEFT_CHILD(p) ((p)->kids[0])
+#define RIGHT_CHILD(p) ((p)->kids[1])
+#define STATE_LABEL(p) ((p)->x.state)
+static void address(Symbol, Symbol, long);
+static void blkfetch(int, int, int, int);
+static void blkloop(int, int, int, int, int, int[]);
+static void blkstore(int, int, int, int);
+static void defaddress(Symbol);
+static void defconst(int, int, Value);
+static void defstring(int, char *);
+static void defsymbol(Symbol);
+static void doarg(Node);
+static void emit2(Node);
+static void export(Symbol);
+static void clobber(Node);
+static void function(Symbol, Symbol [], Symbol [], int);
+static void global(Symbol);
+static void import(Symbol);
+static void local(Symbol);
+static void progbeg(int, char **);
+static void progend(void);
+static void segment(int);
+static void space(int);
+static void target(Node);
+static int bitcount (unsigned);
+static Symbol argreg (int, int, int, int, int);
+
+static Symbol ireg[32], freg2[32], d6;
+static Symbol iregw, freg2w;
+static int tmpregs[] = {3, 9, 10};
+static Symbol blkreg;
+
+static int gnum = 8;
+static int pic;
+
+static int cseg;
+%}
+%start stmt
+%term CNSTF4=4113
+%term CNSTF8=8209
+%term CNSTF16=16401
+%term CNSTI1=1045
+%term CNSTI2=2069
+%term CNSTI4=4117
+%term CNSTI8=8213
+%term CNSTP4=4119
+%term CNSTP8=8215
+%term CNSTU1=1046
+%term CNSTU2=2070
+%term CNSTU4=4118
+%term CNSTU8=8214
+
+%term ARGB=41
+%term ARGF4=4129
+%term ARGF8=8225
+%term ARGF16=16417
+%term ARGI4=4133
+%term ARGI8=8229
+%term ARGP4=4135
+%term ARGP8=8231
+%term ARGU4=4134
+%term ARGU8=8230
+
+%term ASGNB=57
+%term ASGNF4=4145
+%term ASGNF8=8241
+%term ASGNF16=16433
+%term ASGNI1=1077
+%term ASGNI2=2101
+%term ASGNI4=4149
+%term ASGNI8=8245
+%term ASGNP4=4151
+%term ASGNP8=8247
+%term ASGNU1=1078
+%term ASGNU2=2102
+%term ASGNU4=4150
+%term ASGNU8=8246
+
+%term INDIRB=73
+%term INDIRF4=4161
+%term INDIRF8=8257
+%term INDIRF16=16449
+%term INDIRI1=1093
+%term INDIRI2=2117
+%term INDIRI4=4165
+%term INDIRI8=8261
+%term INDIRP4=4167
+%term INDIRP8=8263
+%term INDIRU1=1094
+%term INDIRU2=2118
+%term INDIRU4=4166
+%term INDIRU8=8262
+
+%term CVFF4=4209
+%term CVFF8=8305
+%term CVFF16=16497
+%term CVFI4=4213
+%term CVFI8=8309
+
+%term CVIF4=4225
+%term CVIF8=8321
+%term CVIF16=16513
+%term CVII1=1157
+%term CVII2=2181
+%term CVII4=4229
+%term CVII8=8325
+%term CVIU1=1158
+%term CVIU2=2182
+%term CVIU4=4230
+%term CVIU8=8326
+
+%term CVPP4=4247
+%term CVPP8=8343
+%term CVPP16=16535
+%term CVPU4=4246
+%term CVPU8=8342
+
+%term CVUI1=1205
+%term CVUI2=2229
+%term CVUI4=4277
+%term CVUI8=8373
+%term CVUP4=4279
+%term CVUP8=8375
+%term CVUP16=16567
+%term CVUU1=1206
+%term CVUU2=2230
+%term CVUU4=4278
+%term CVUU8=8374
+
+%term NEGF4=4289
+%term NEGF8=8385
+%term NEGF16=16577
+%term NEGI4=4293
+%term NEGI8=8389
+
+%term CALLB=217
+%term CALLF4=4305
+%term CALLF8=8401
+%term CALLF16=16593
+%term CALLI4=4309
+%term CALLI8=8405
+%term CALLP4=4311
+%term CALLP8=8407
+%term CALLU4=4310
+%term CALLU8=8406
+%term CALLV=216
+
+%term RETF4=4337
+%term RETF8=8433
+%term RETF16=16625
+%term RETI4=4341
+%term RETI8=8437
+%term RETP4=4343
+%term RETP8=8439
+%term RETU4=4342
+%term RETU8=8438
+%term RETV=248
+
+%term ADDRGP4=4359
+%term ADDRGP8=8455
+
+%term ADDRFP4=4375
+%term ADDRFP8=8471
+
+%term ADDRLP4=4391
+%term ADDRLP8=8487
+
+%term ADDF4=4401
+%term ADDF8=8497
+%term ADDF16=16689
+%term ADDI4=4405
+%term ADDI8=8501
+%term ADDP4=4407
+%term ADDP8=8503
+%term ADDU4=4406
+%term ADDU8=8502
+
+%term SUBF4=4417
+%term SUBF8=8513
+%term SUBF16=16705
+%term SUBI4=4421
+%term SUBI8=8517
+%term SUBP4=4423
+%term SUBP8=8519
+%term SUBU4=4422
+%term SUBU8=8518
+
+%term LSHI4=4437
+%term LSHI8=8533
+%term LSHU4=4438
+%term LSHU8=8534
+
+%term MODI4=4453
+%term MODI8=8549
+%term MODU4=4454
+%term MODU8=8550
+
+%term RSHI4=4469
+%term RSHI8=8565
+%term RSHU4=4470
+%term RSHU8=8566
+
+%term BANDI4=4485
+%term BANDI8=8581
+%term BANDU4=4486
+%term BANDU8=8582
+
+%term BCOMI4=4501
+%term BCOMI8=8597
+%term BCOMU4=4502
+%term BCOMU8=8598
+
+%term BORI4=4517
+%term BORI8=8613
+%term BORU4=4518
+%term BORU8=8614
+
+%term BXORI4=4533
+%term BXORI8=8629
+%term BXORU4=4534
+%term BXORU8=8630
+
+%term DIVF4=4545
+%term DIVF8=8641
+%term DIVF16=16833
+%term DIVI4=4549
+%term DIVI8=8645
+%term DIVU4=4550
+%term DIVU8=8646
+
+%term MULF4=4561
+%term MULF8=8657
+%term MULF16=16849
+%term MULI4=4565
+%term MULI8=8661
+%term MULU4=4566
+%term MULU8=8662
+
+%term EQF4=4577
+%term EQF8=8673
+%term EQF16=16865
+%term EQI4=4581
+%term EQI8=8677
+%term EQU4=4582
+%term EQU8=8678
+
+%term GEF4=4593
+%term GEF8=8689
+%term GEI4=4597
+%term GEI8=8693
+%term GEI16=16885
+%term GEU4=4598
+%term GEU8=8694
+
+%term GTF4=4609
+%term GTF8=8705
+%term GTF16=16897
+%term GTI4=4613
+%term GTI8=8709
+%term GTU4=4614
+%term GTU8=8710
+
+%term LEF4=4625
+%term LEF8=8721
+%term LEF16=16913
+%term LEI4=4629
+%term LEI8=8725
+%term LEU4=4630
+%term LEU8=8726
+
+%term LTF4=4641
+%term LTF8=8737
+%term LTF16=16929
+%term LTI4=4645
+%term LTI8=8741
+%term LTU4=4646
+%term LTU8=8742
+
+%term NEF4=4657
+%term NEF8=8753
+%term NEF16=16945
+%term NEI4=4661
+%term NEI8=8757
+%term NEU4=4662
+%term NEU8=8758
+
+%term JUMPV=584
+
+%term LABELV=600
+
+%term LOADB=233
+%term LOADF4=4321
+%term LOADF8=8417
+%term LOADF16=16609
+%term LOADI1=1253
+%term LOADI2=2277
+%term LOADI4=4325
+%term LOADI8=8421
+%term LOADP4=4327
+%term LOADP8=8423
+%term LOADU1=1254
+%term LOADU2=2278
+%term LOADU4=4326
+%term LOADU8=8422
+
+%term VREGP=711
+%%
+reg: INDIRI1(VREGP) "# read register\n"
+reg: INDIRU1(VREGP) "# read register\n"
+
+reg: INDIRI2(VREGP) "# read register\n"
+reg: INDIRU2(VREGP) "# read register\n"
+
+reg: INDIRF4(VREGP) "# read register\n"
+reg: INDIRI4(VREGP) "# read register\n"
+reg: INDIRP4(VREGP) "# read register\n"
+reg: INDIRU4(VREGP) "# read register\n"
+
+reg: INDIRF8(VREGP) "# read register\n"
+reg: INDIRI8(VREGP) "# read register\n"
+reg: INDIRP8(VREGP) "# read register\n"
+reg: INDIRU8(VREGP) "# read register\n"
+
+stmt: ASGNI1(VREGP,reg) "# write register\n"
+stmt: ASGNU1(VREGP,reg) "# write register\n"
+
+stmt: ASGNI2(VREGP,reg) "# write register\n"
+stmt: ASGNU2(VREGP,reg) "# write register\n"
+
+stmt: ASGNF4(VREGP,reg) "# write register\n"
+stmt: ASGNI4(VREGP,reg) "# write register\n"
+stmt: ASGNP4(VREGP,reg) "# write register\n"
+stmt: ASGNU4(VREGP,reg) "# write register\n"
+
+stmt: ASGNF8(VREGP,reg) "# write register\n"
+stmt: ASGNI8(VREGP,reg) "# write register\n"
+stmt: ASGNP8(VREGP,reg) "# write register\n"
+stmt: ASGNU8(VREGP,reg) "# write register\n"
+con: CNSTI1 "%a"
+con: CNSTU1 "%a"
+
+con: CNSTI2 "%a"
+con: CNSTU2 "%a"
+
+con: CNSTI4 "%a"
+con: CNSTU4 "%a"
+con: CNSTP4 "%a"
+
+con: CNSTI8 "%a"
+con: CNSTU8 "%a"
+con: CNSTP8 "%a"
+stmt: reg ""
+acon: con "%0"
+acon: ADDRGP4 "%a"
+addr: ADDI4(reg,acon) "%1($%0)"
+addr: ADDU4(reg,acon) "%1($%0)"
+addr: ADDP4(reg,acon) "%1($%0)"
+addr: acon "%0"
+addr: reg "($%0)"
+addr: ADDRFP4 "%a+%F($sp)"
+addr: ADDRLP4 "%a+%F($sp)"
+reg: addr "la $%c,%0\n" 1
+reg: CNSTI1 "# reg\n" range(a, 0, 0)
+reg: CNSTI2 "# reg\n" range(a, 0, 0)
+reg: CNSTI4 "# reg\n" range(a, 0, 0)
+reg: CNSTU1 "# reg\n" range(a, 0, 0)
+reg: CNSTU2 "# reg\n" range(a, 0, 0)
+reg: CNSTU4 "# reg\n" range(a, 0, 0)
+reg: CNSTP4 "# reg\n" range(a, 0, 0)
+stmt: ASGNI1(addr,reg) "sb $%1,%0\n" 1
+stmt: ASGNU1(addr,reg) "sb $%1,%0\n" 1
+stmt: ASGNI2(addr,reg) "sh $%1,%0\n" 1
+stmt: ASGNU2(addr,reg) "sh $%1,%0\n" 1
+stmt: ASGNI4(addr,reg) "sw $%1,%0\n" 1
+stmt: ASGNU4(addr,reg) "sw $%1,%0\n" 1
+stmt: ASGNP4(addr,reg) "sw $%1,%0\n" 1
+reg: INDIRI1(addr) "lb $%c,%0\n" 1
+reg: INDIRU1(addr) "lbu $%c,%0\n" 1
+reg: INDIRI2(addr) "lh $%c,%0\n" 1
+reg: INDIRU2(addr) "lhu $%c,%0\n" 1
+reg: INDIRI4(addr) "lw $%c,%0\n" 1
+reg: INDIRU4(addr) "lw $%c,%0\n" 1
+reg: INDIRP4(addr) "lw $%c,%0\n" 1
+
+reg: CVII4(INDIRI1(addr)) "lb $%c,%0\n" 1
+reg: CVII4(INDIRI2(addr)) "lh $%c,%0\n" 1
+reg: CVUU4(INDIRU1(addr)) "lbu $%c,%0\n" 1
+reg: CVUU4(INDIRU2(addr)) "lhu $%c,%0\n" 1
+reg: CVUI4(INDIRU1(addr)) "lbu $%c,%0\n" 1
+reg: CVUI4(INDIRU2(addr)) "lhu $%c,%0\n" 1
+reg: INDIRF4(addr) "l.s $f%c,%0\n" 1
+reg: INDIRF8(addr) "l.d $f%c,%0\n" 1
+stmt: ASGNF4(addr,reg) "s.s $f%1,%0\n" 1
+stmt: ASGNF8(addr,reg) "s.d $f%1,%0\n" 1
+reg: DIVI4(reg,reg) "div $%c,$%0,$%1\n" 1
+reg: DIVU4(reg,reg) "divu $%c,$%0,$%1\n" 1
+reg: MODI4(reg,reg) "rem $%c,$%0,$%1\n" 1
+reg: MODU4(reg,reg) "remu $%c,$%0,$%1\n" 1
+reg: MULI4(reg,reg) "mul $%c,$%0,$%1\n" 1
+reg: MULU4(reg,reg) "mul $%c,$%0,$%1\n" 1
+rc: con "%0"
+rc: reg "$%0"
+
+reg: ADDI4(reg,rc) "addu $%c,$%0,%1\n" 1
+reg: ADDP4(reg,rc) "addu $%c,$%0,%1\n" 1
+reg: ADDU4(reg,rc) "addu $%c,$%0,%1\n" 1
+reg: BANDI4(reg,rc) "and $%c,$%0,%1\n" 1
+reg: BORI4(reg,rc) "or $%c,$%0,%1\n" 1
+reg: BXORI4(reg,rc) "xor $%c,$%0,%1\n" 1
+reg: BANDU4(reg,rc) "and $%c,$%0,%1\n" 1
+reg: BORU4(reg,rc) "or $%c,$%0,%1\n" 1
+reg: BXORU4(reg,rc) "xor $%c,$%0,%1\n" 1
+reg: SUBI4(reg,rc) "subu $%c,$%0,%1\n" 1
+reg: SUBP4(reg,rc) "subu $%c,$%0,%1\n" 1
+reg: SUBU4(reg,rc) "subu $%c,$%0,%1\n" 1
+rc5: CNSTI4 "%a" range(a,0,31)
+rc5: reg "$%0"
+
+reg: LSHI4(reg,rc5) "sll $%c,$%0,%1\n" 1
+reg: LSHU4(reg,rc5) "sll $%c,$%0,%1\n" 1
+reg: RSHI4(reg,rc5) "sra $%c,$%0,%1\n" 1
+reg: RSHU4(reg,rc5) "srl $%c,$%0,%1\n" 1
+reg: BCOMI4(reg) "not $%c,$%0\n" 1
+reg: BCOMU4(reg) "not $%c,$%0\n" 1
+reg: NEGI4(reg) "negu $%c,$%0\n" 1
+reg: LOADI1(reg) "move $%c,$%0\n" move(a)
+reg: LOADU1(reg) "move $%c,$%0\n" move(a)
+reg: LOADI2(reg) "move $%c,$%0\n" move(a)
+reg: LOADU2(reg) "move $%c,$%0\n" move(a)
+reg: LOADI4(reg) "move $%c,$%0\n" move(a)
+reg: LOADP4(reg) "move $%c,$%0\n" move(a)
+reg: LOADU4(reg) "move $%c,$%0\n" move(a)
+reg: ADDF4(reg,reg) "add.s $f%c,$f%0,$f%1\n" 1
+reg: ADDF8(reg,reg) "add.d $f%c,$f%0,$f%1\n" 1
+reg: DIVF4(reg,reg) "div.s $f%c,$f%0,$f%1\n" 1
+reg: DIVF8(reg,reg) "div.d $f%c,$f%0,$f%1\n" 1
+reg: MULF4(reg,reg) "mul.s $f%c,$f%0,$f%1\n" 1
+reg: MULF8(reg,reg) "mul.d $f%c,$f%0,$f%1\n" 1
+reg: SUBF4(reg,reg) "sub.s $f%c,$f%0,$f%1\n" 1
+reg: SUBF8(reg,reg) "sub.d $f%c,$f%0,$f%1\n" 1
+reg: LOADF4(reg) "mov.s $f%c,$f%0\n" move(a)
+reg: LOADF8(reg) "mov.d $f%c,$f%0\n" move(a)
+reg: NEGF4(reg) "neg.s $f%c,$f%0\n" 1
+reg: NEGF8(reg) "neg.d $f%c,$f%0\n" 1
+reg: CVII4(reg) "sll $%c,$%0,8*(4-%a); sra $%c,$%c,8*(4-%a)\n" 2
+reg: CVUI4(reg) "and $%c,$%0,(1<<(8*%a))-1\n" 1
+reg: CVUU4(reg) "and $%c,$%0,(1<<(8*%a))-1\n" 1
+reg: CVFF4(reg) "cvt.s.d $f%c,$f%0\n" 1
+reg: CVFF8(reg) "cvt.d.s $f%c,$f%0\n" 1
+reg: CVIF4(reg) "mtc1 $%0,$f%c; cvt.s.w $f%c,$f%c\n" 2
+reg: CVIF8(reg) "mtc1 $%0,$f%c; cvt.d.w $f%c,$f%c\n" 2
+reg: CVFI4(reg) "trunc.w.s $f2,$f%0,$%c; mfc1 $%c,$f2\n" (a->syms[0]->u.c.v.i==4?2:LBURG_MAX)
+reg: CVFI4(reg) "trunc.w.d $f2,$f%0,$%c; mfc1 $%c,$f2\n" (a->syms[0]->u.c.v.i==8?2:LBURG_MAX)
+stmt: LABELV "%a:\n"
+stmt: JUMPV(acon) "b %0\n" 1
+stmt: JUMPV(reg) ".cpadd $%0\nj $%0\n" !pic
+stmt: JUMPV(reg) "j $%0\n" pic
+stmt: EQI4(reg,reg) "beq $%0,$%1,%a\n" 1
+stmt: EQU4(reg,reg) "beq $%0,$%1,%a\n" 1
+stmt: GEI4(reg,reg) "bge $%0,$%1,%a\n" 1
+stmt: GEU4(reg,reg) "bgeu $%0,$%1,%a\n" 1
+stmt: GTI4(reg,reg) "bgt $%0,$%1,%a\n" 1
+stmt: GTU4(reg,reg) "bgtu $%0,$%1,%a\n" 1
+stmt: LEI4(reg,reg) "ble $%0,$%1,%a\n" 1
+stmt: LEU4(reg,reg) "bleu $%0,$%1,%a\n" 1
+stmt: LTI4(reg,reg) "blt $%0,$%1,%a\n" 1
+stmt: LTU4(reg,reg) "bltu $%0,$%1,%a\n" 1
+stmt: NEI4(reg,reg) "bne $%0,$%1,%a\n" 1
+stmt: NEU4(reg,reg) "bne $%0,$%1,%a\n" 1
+stmt: EQF4(reg,reg) "c.eq.s $f%0,$f%1; bc1t %a\n" 2
+stmt: EQF8(reg,reg) "c.eq.d $f%0,$f%1; bc1t %a\n" 2
+stmt: LEF4(reg,reg) "c.le.s $f%0,$f%1; bc1t %a\n" 2
+stmt: LEF8(reg,reg) "c.le.d $f%0,$f%1; bc1t %a\n" 2
+stmt: LTF4(reg,reg) "c.lt.s $f%0,$f%1; bc1t %a\n" 2
+stmt: LTF8(reg,reg) "c.lt.d $f%0,$f%1; bc1t %a\n" 2
+stmt: GEF4(reg,reg) "c.lt.s $f%0,$f%1; bc1f %a\n" 2
+stmt: GEF8(reg,reg) "c.lt.d $f%0,$f%1; bc1f %a\n" 2
+stmt: GTF4(reg,reg) "c.le.s $f%0,$f%1; bc1f %a\n" 2
+stmt: GTF8(reg,reg) "c.le.d $f%0,$f%1; bc1f %a\n" 2
+stmt: NEF4(reg,reg) "c.eq.s $f%0,$f%1; bc1f %a\n" 2
+stmt: NEF8(reg,reg) "c.eq.d $f%0,$f%1; bc1f %a\n" 2
+ar: ADDRGP4 "%a"
+
+reg: CALLF4(ar) "jal %0\n" 1
+reg: CALLF8(ar) "jal %0\n" 1
+reg: CALLI4(ar) "jal %0\n" 1
+reg: CALLP4(ar) "jal %0\n" 1
+reg: CALLU4(ar) "jal %0\n" 1
+stmt: CALLV(ar) "jal %0\n" 1
+ar: reg "$%0"
+ar: CNSTP4 "%a" range(a, 0, 0x0fffffff)
+stmt: RETF4(reg) "# ret\n" 1
+stmt: RETF8(reg) "# ret\n" 1
+stmt: RETI4(reg) "# ret\n" 1
+stmt: RETU4(reg) "# ret\n" 1
+stmt: RETP4(reg) "# ret\n" 1
+stmt: RETV(reg) "# ret\n" 1
+stmt: ARGF4(reg) "# arg\n" 1
+stmt: ARGF8(reg) "# arg\n" 1
+stmt: ARGI4(reg) "# arg\n" 1
+stmt: ARGP4(reg) "# arg\n" 1
+stmt: ARGU4(reg) "# arg\n" 1
+
+stmt: ARGB(INDIRB(reg)) "# argb %0\n" 1
+stmt: ASGNB(reg,INDIRB(reg)) "# asgnb %0 %1\n" 1
+%%
+static void progend(void){}
+static void progbeg(int argc, char *argv[]) {
+ int i;
+
+ {
+ union {
+ char c;
+ int i;
+ } u;
+ u.i = 0;
+ u.c = 1;
+ swap = ((int)(u.i == 1)) != IR->little_endian;
+ }
+ print(".set reorder\n");
+ pic = !IR->little_endian;
+ parseflags(argc, argv);
+ for (i = 0; i < argc; i++)
+ if (strncmp(argv[i], "-G", 2) == 0)
+ gnum = atoi(argv[i] + 2);
+ else if (strcmp(argv[i], "-pic=1") == 0
+ || strcmp(argv[i], "-pic=0") == 0)
+ pic = argv[i][5]-'0';
+ for (i = 0; i < 31; i += 2)
+ freg2[i] = mkreg("%d", i, 3, FREG);
+ for (i = 0; i < 32; i++)
+ ireg[i] = mkreg("%d", i, 1, IREG);
+ ireg[29]->x.name = "sp";
+ d6 = mkreg("6", 6, 3, IREG);
+ freg2w = mkwildcard(freg2);
+ iregw = mkwildcard(ireg);
+ tmask[IREG] = INTTMP; tmask[FREG] = FLTTMP;
+ vmask[IREG] = INTVAR; vmask[FREG] = FLTVAR;
+ blkreg = mkreg("8", 8, 7, IREG);
+}
+static Symbol rmap(int opk) {
+ switch (optype(opk)) {
+ case I: case U: case P: case B:
+ return iregw;
+ case F:
+ return freg2w;
+ default:
+ return 0;
+ }
+}
+static void target(Node p) {
+ assert(p);
+ switch (specific(p->op)) {
+ case CNST+I: case CNST+U: case CNST+P:
+ if (range(p, 0, 0) == 0) {
+ setreg(p, ireg[0]);
+ p->x.registered = 1;
+ }
+ break;
+ case CALL+V:
+ rtarget(p, 0, ireg[25]);
+ break;
+ case CALL+F:
+ rtarget(p, 0, ireg[25]);
+ setreg(p, freg2[0]);
+ break;
+ case CALL+I: case CALL+P: case CALL+U:
+ rtarget(p, 0, ireg[25]);
+ setreg(p, ireg[2]);
+ break;
+ case RET+F:
+ rtarget(p, 0, freg2[0]);
+ break;
+ case RET+I: case RET+U: case RET+P:
+ rtarget(p, 0, ireg[2]);
+ break;
+ case ARG+F: case ARG+I: case ARG+P: case ARG+U: {
+ static int ty0;
+ int ty = optype(p->op);
+ Symbol q;
+
+ q = argreg(p->x.argno, p->syms[2]->u.c.v.i, ty, opsize(p->op), ty0);
+ if (p->x.argno == 0)
+ ty0 = ty;
+ if (q &&
+ !(ty == F && q->x.regnode->set == IREG))
+ rtarget(p, 0, q);
+ break;
+ }
+ case ASGN+B: rtarget(p->kids[1], 0, blkreg); break;
+ case ARG+B: rtarget(p->kids[0], 0, blkreg); break;
+ }
+}
+static void clobber(Node p) {
+ assert(p);
+ switch (specific(p->op)) {
+ case CALL+F:
+ spill(INTTMP | INTRET, IREG, p);
+ spill(FLTTMP, FREG, p);
+ break;
+ case CALL+I: case CALL+P: case CALL+U:
+ spill(INTTMP, IREG, p);
+ spill(FLTTMP | FLTRET, FREG, p);
+ break;
+ case CALL+V:
+ spill(INTTMP | INTRET, IREG, p);
+ spill(FLTTMP | FLTRET, FREG, p);
+ break;
+ }
+}
+static void emit2(Node p) {
+ int dst, n, src, sz, ty;
+ static int ty0;
+ Symbol q;
+
+ switch (specific(p->op)) {
+ case ARG+F: case ARG+I: case ARG+P: case ARG+U:
+ ty = optype(p->op);
+ sz = opsize(p->op);
+ if (p->x.argno == 0)
+ ty0 = ty;
+ q = argreg(p->x.argno, p->syms[2]->u.c.v.i, ty, sz, ty0);
+ src = getregnum(p->x.kids[0]);
+ if (q == NULL && ty == F && sz == 4)
+ print("s.s $f%d,%d($sp)\n", src, p->syms[2]->u.c.v.i);
+ else if (q == NULL && ty == F)
+ print("s.d $f%d,%d($sp)\n", src, p->syms[2]->u.c.v.i);
+ else if (q == NULL)
+ print("sw $%d,%d($sp)\n", src, p->syms[2]->u.c.v.i);
+ else if (ty == F && sz == 4 && q->x.regnode->set == IREG)
+ print("mfc1 $%d,$f%d\n", q->x.regnode->number, src);
+ else if (ty == F && q->x.regnode->set == IREG)
+ print("mfc1.d $%d,$f%d\n", q->x.regnode->number, src);
+ break;
+ case ASGN+B:
+ dalign = salign = p->syms[1]->u.c.v.i;
+ blkcopy(getregnum(p->x.kids[0]), 0,
+ getregnum(p->x.kids[1]), 0,
+ p->syms[0]->u.c.v.i, tmpregs);
+ break;
+ case ARG+B:
+ dalign = 4;
+ salign = p->syms[1]->u.c.v.i;
+ blkcopy(29, p->syms[2]->u.c.v.i,
+ getregnum(p->x.kids[0]), 0,
+ p->syms[0]->u.c.v.i, tmpregs);
+ n = p->syms[2]->u.c.v.i + p->syms[0]->u.c.v.i;
+ dst = p->syms[2]->u.c.v.i;
+ for ( ; dst <= 12 && dst < n; dst += 4)
+ print("lw $%d,%d($sp)\n", (dst/4)+4, dst);
+ break;
+ }
+}
+static Symbol argreg(int argno, int offset, int ty, int sz, int ty0) {
+ assert((offset&3) == 0);
+ if (offset > 12)
+ return NULL;
+ else if (argno == 0 && ty == F)
+ return freg2[12];
+ else if (argno == 1 && ty == F && ty0 == F)
+ return freg2[14];
+ else if (argno == 1 && ty == F && sz == 8)
+ return d6; /* Pair! */
+ else
+ return ireg[(offset/4) + 4];
+}
+static void doarg(Node p) {
+ static int argno;
+ int align;
+
+ if (argoffset == 0)
+ argno = 0;
+ p->x.argno = argno++;
+ align = p->syms[1]->u.c.v.i < 4 ? 4 : p->syms[1]->u.c.v.i;
+ p->syms[2] = intconst(mkactual(align,
+ p->syms[0]->u.c.v.i));
+}
+static void local(Symbol p) {
+ if (askregvar(p, rmap(ttob(p->type))) == 0)
+ mkauto(p);
+}
+static void function(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
+ int i, saved, sizefsave, sizeisave, varargs;
+ Symbol r, argregs[4];
+
+ usedmask[0] = usedmask[1] = 0;
+ freemask[0] = freemask[1] = ~(unsigned)0;
+ offset = maxoffset = maxargoffset = 0;
+ for (i = 0; callee[i]; i++)
+ ;
+ varargs = variadic(f->type)
+ || i > 0 && strcmp(callee[i-1]->name, "va_alist") == 0;
+ for (i = 0; callee[i]; i++) {
+ Symbol p = callee[i];
+ Symbol q = caller[i];
+ assert(q);
+ offset = roundup(offset, q->type->align);
+ p->x.offset = q->x.offset = offset;
+ p->x.name = q->x.name = stringd(offset);
+ r = argreg(i, offset, optype(ttob(q->type)), q->type->size, optype(ttob(caller[0]->type)));
+ if (i < 4)
+ argregs[i] = r;
+ offset = roundup(offset + q->type->size, 4);
+ if (varargs)
+ p->sclass = AUTO;
+ else if (r && ncalls == 0 &&
+ !isstruct(q->type) && !p->addressed &&
+ !(isfloat(q->type) && r->x.regnode->set == IREG)
+) {
+ p->sclass = q->sclass = REGISTER;
+ askregvar(p, r);
+ assert(p->x.regnode && p->x.regnode->vbl == p);
+ q->x = p->x;
+ q->type = p->type;
+ }
+ else if (askregvar(p, rmap(ttob(p->type)))
+ && r != NULL
+ && (isint(p->type) || p->type == q->type)) {
+ assert(q->sclass != REGISTER);
+ p->sclass = q->sclass = REGISTER;
+ q->type = p->type;
+ }
+ }
+ assert(!caller[i]);
+ offset = 0;
+ gencode(caller, callee);
+ if (ncalls)
+ usedmask[IREG] |= ((unsigned)1)<<31;
+ usedmask[IREG] &= 0xc0ff0000;
+ usedmask[FREG] &= 0xfff00000;
+ if (pic && ncalls)
+ usedmask[IREG] |= 1<<25;
+ maxargoffset = roundup(maxargoffset, usedmask[FREG] ? 8 : 4);
+ if (ncalls && maxargoffset < 16)
+ maxargoffset = 16;
+ sizefsave = 4*bitcount(usedmask[FREG]);
+ sizeisave = 4*bitcount(usedmask[IREG]);
+ framesize = roundup(maxargoffset + sizefsave
+ + sizeisave + maxoffset, 8);
+ segment(CODE);
+ print(".align 2\n");
+ print(".ent %s\n", f->x.name);
+ print("%s:\n", f->x.name);
+ i = maxargoffset + sizefsave - framesize;
+ print(".frame $sp,%d,$31\n", framesize);
+ if (pic)
+ print(".set noreorder\n.cpload $25\n.set reorder\n");
+ if (framesize > 0)
+ print("addu $sp,$sp,%d\n", -framesize);
+ if (usedmask[FREG])
+ print(".fmask 0x%x,%d\n", usedmask[FREG], i - 8);
+ if (usedmask[IREG])
+ print(".mask 0x%x,%d\n", usedmask[IREG],
+ i + sizeisave - 4);
+ saved = maxargoffset;
+ for (i = 20; i <= 30; i += 2)
+ if (usedmask[FREG]&(3<<i)) {
+ print("s.d $f%d,%d($sp)\n", i, saved);
+ saved += 8;
+ }
+
+ for (i = 16; i <= 31; i++)
+ if (usedmask[IREG]&(1<<i)) {
+ if (i == 25)
+ print(".cprestore %d\n", saved);
+ else
+ print("sw $%d,%d($sp)\n", i, saved);
+ saved += 4;
+ }
+ for (i = 0; i < 4 && callee[i]; i++) {
+ r = argregs[i];
+ if (r && r->x.regnode != callee[i]->x.regnode) {
+ Symbol out = callee[i];
+ Symbol in = caller[i];
+ int rn = r->x.regnode->number;
+ int rs = r->x.regnode->set;
+ int tyin = ttob(in->type);
+
+ assert(out && in && r && r->x.regnode);
+ assert(out->sclass != REGISTER || out->x.regnode);
+ if (out->sclass == REGISTER
+ && (isint(out->type) || out->type == in->type)) {
+ int outn = out->x.regnode->number;
+ if (rs == FREG && tyin == F+sizeop(8))
+ print("mov.d $f%d,$f%d\n", outn, rn);
+ else if (rs == FREG && tyin == F+sizeop(4))
+ print("mov.s $f%d,$f%d\n", outn, rn);
+ else if (rs == IREG && tyin == F+sizeop(8))
+ print("mtc1.d $%d,$f%d\n", rn, outn);
+ else if (rs == IREG && tyin == F+sizeop(4))
+ print("mtc1 $%d,$f%d\n", rn, outn);
+ else
+ print("move $%d,$%d\n", outn, rn);
+ } else {
+ int off = in->x.offset + framesize;
+ if (rs == FREG && tyin == F+sizeop(8))
+ print("s.d $f%d,%d($sp)\n", rn, off);
+ else if (rs == FREG && tyin == F+sizeop(4))
+ print("s.s $f%d,%d($sp)\n", rn, off);
+ else {
+ int i, n = (in->type->size + 3)/4;
+ for (i = rn; i < rn+n && i <= 7; i++)
+ print("sw $%d,%d($sp)\n", i, off + (i-rn)*4);
+ }
+ }
+ }
+ }
+ if (varargs && callee[i-1]) {
+ i = callee[i-1]->x.offset + callee[i-1]->type->size;
+ for (i = roundup(i, 4)/4; i <= 3; i++)
+ print("sw $%d,%d($sp)\n", i + 4, framesize + 4*i);
+ }
+ emitcode();
+ saved = maxargoffset;
+ for (i = 20; i <= 30; i += 2)
+ if (usedmask[FREG]&(3<<i)) {
+ print("l.d $f%d,%d($sp)\n", i, saved);
+ saved += 8;
+ }
+ for (i = 16; i <= 31; i++)
+ if (usedmask[IREG]&(1<<i)) {
+ print("lw $%d,%d($sp)\n", i, saved);
+ saved += 4;
+ }
+ if (framesize > 0)
+ print("addu $sp,$sp,%d\n", framesize);
+ print("j $31\n");
+ print(".end %s\n", f->x.name);
+}
+static void defconst(int suffix, int size, Value v) {
+ if (suffix == F && size == 4) {
+ float f = v.d;
+ print(".word 0x%x\n", *(unsigned *)&f);
+ }
+ else if (suffix == F && size == 8) {
+ double d = v.d;
+ unsigned *p = (unsigned *)&d;
+ print(".word 0x%x\n.word 0x%x\n", p[swap], p[!swap]);
+ }
+ else if (suffix == P)
+ print(".word 0x%x\n", v.p);
+ else if (size == 1)
+ print(".byte 0x%x\n", suffix == I ? v.i : v.u);
+ else if (size == 2)
+ print(".half 0x%x\n", suffix == I ? v.i : v.u);
+ else if (size == 4)
+ print(".word 0x%x\n", suffix == I ? v.i : v.u);
+}
+static void defaddress(Symbol p) {
+ if (pic && p->scope == LABELS)
+ print(".gpword %s\n", p->x.name);
+ else
+ print(".word %s\n", p->x.name);
+}
+static void defstring(int n, char *str) {
+ char *s;
+
+ for (s = str; s < str + n; s++)
+ print(".byte %d\n", (*s)&0377);
+}
+static void export(Symbol p) {
+ print(".globl %s\n", p->x.name);
+}
+static void import(Symbol p) {
+ if (!isfunc(p->type))
+ print(".extern %s %d\n", p->name, p->type->size);
+}
+static void defsymbol(Symbol p) {
+ if (p->scope >= LOCAL && p->sclass == STATIC)
+ p->x.name = stringf("L.%d", genlabel(1));
+ else if (p->generated)
+ p->x.name = stringf("L.%s", p->name);
+ else
+ assert(p->scope != CONSTANTS || isint(p->type) || isptr(p->type)),
+ p->x.name = p->name;
+}
+static void address(Symbol q, Symbol p, long n) {
+ if (p->scope == GLOBAL
+ || p->sclass == STATIC || p->sclass == EXTERN)
+ q->x.name = stringf("%s%s%D", p->x.name,
+ n >= 0 ? "+" : "", n);
+ else {
+ assert(n <= INT_MAX && n >= INT_MIN);
+ q->x.offset = p->x.offset + n;
+ q->x.name = stringd(q->x.offset);
+ }
+}
+static void global(Symbol p) {
+ if (p->u.seg == BSS) {
+ if (p->sclass == STATIC || Aflag >= 2)
+ print(".lcomm %s,%d\n", p->x.name, p->type->size);
+ else
+ print( ".comm %s,%d\n", p->x.name, p->type->size);
+ } else {
+ if (p->u.seg == DATA
+ && (p->type->size == 0 || p->type->size > gnum))
+ print(".data\n");
+ else if (p->u.seg == DATA)
+ print(".sdata\n");
+ print(".align %c\n", ".01.2...3"[p->type->align]);
+ print("%s:\n", p->x.name);
+ }
+}
+static void segment(int n) {
+ cseg = n;
+ switch (n) {
+ case CODE: print(".text\n"); break;
+ case LIT: print(".rdata\n"); break;
+ }
+}
+static void space(int n) {
+ if (cseg != BSS)
+ print(".space %d\n", n);
+}
+static void blkloop(int dreg, int doff, int sreg, int soff, int size, int tmps[]) {
+ int lab = genlabel(1);
+
+ print("addu $%d,$%d,%d\n", sreg, sreg, size&~7);
+ print("addu $%d,$%d,%d\n", tmps[2], dreg, size&~7);
+ blkcopy(tmps[2], doff, sreg, soff, size&7, tmps);
+ print("L.%d:\n", lab);
+ print("addu $%d,$%d,%d\n", sreg, sreg, -8);
+ print("addu $%d,$%d,%d\n", tmps[2], tmps[2], -8);
+ blkcopy(tmps[2], doff, sreg, soff, 8, tmps);
+ print("bltu $%d,$%d,L.%d\n", dreg, tmps[2], lab);
+}
+static void blkfetch(int size, int off, int reg, int tmp) {
+ assert(size == 1 || size == 2 || size == 4);
+ if (size == 1)
+ print("lbu $%d,%d($%d)\n", tmp, off, reg);
+ else if (salign >= size && size == 2)
+ print("lhu $%d,%d($%d)\n", tmp, off, reg);
+ else if (salign >= size)
+ print("lw $%d,%d($%d)\n", tmp, off, reg);
+ else if (size == 2)
+ print("ulhu $%d,%d($%d)\n", tmp, off, reg);
+ else
+ print("ulw $%d,%d($%d)\n", tmp, off, reg);
+}
+static void blkstore(int size, int off, int reg, int tmp) {
+ if (size == 1)
+ print("sb $%d,%d($%d)\n", tmp, off, reg);
+ else if (dalign >= size && size == 2)
+ print("sh $%d,%d($%d)\n", tmp, off, reg);
+ else if (dalign >= size)
+ print("sw $%d,%d($%d)\n", tmp, off, reg);
+ else if (size == 2)
+ print("ush $%d,%d($%d)\n", tmp, off, reg);
+ else
+ print("usw $%d,%d($%d)\n", tmp, off, reg);
+}
+static void stabinit(char *, int, char *[]);
+static void stabline(Coordinate *);
+static void stabsym(Symbol);
+
+static char *currentfile;
+
+static int bitcount(unsigned mask) {
+ unsigned i, n = 0;
+
+ for (i = 1; i; i <<= 1)
+ if (mask&i)
+ n++;
+ return n;
+}
+
+/* stabinit - initialize stab output */
+static void stabinit(char *file, int argc, char *argv[]) {
+ if (file) {
+ print(".file 2,\"%s\"\n", file);
+ currentfile = file;
+ }
+}
+
+/* stabline - emit stab entry for source coordinate *cp */
+static void stabline(Coordinate *cp) {
+ if (cp->file && cp->file != currentfile) {
+ print(".file 2,\"%s\"\n", cp->file);
+ currentfile = cp->file;
+ }
+ print(".loc 2,%d\n", cp->y);
+}
+
+/* stabsym - output a stab entry for symbol p */
+static void stabsym(Symbol p) {
+ if (p == cfunc && IR->stabline)
+ (*IR->stabline)(&p->src);
+}
+Interface mipsebIR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 4, 4, 0, /* long */
+ 4, 4, 0, /* long long */
+ 4, 4, 1, /* float */
+ 8, 8, 1, /* double */
+ 8, 8, 1, /* long double */
+ 4, 4, 0, /* T * */
+ 0, 1, 0, /* struct */
+ 0, /* little_endian */
+ 0, /* mulops_calls */
+ 0, /* wants_callb */
+ 1, /* wants_argb */
+ 1, /* left_to_right */
+ 0, /* wants_dag */
+ 0, /* unsigned_char */
+ address,
+ blockbeg,
+ blockend,
+ defaddress,
+ defconst,
+ defstring,
+ defsymbol,
+ emit,
+ export,
+ function,
+ gen,
+ global,
+ import,
+ local,
+ progbeg,
+ progend,
+ segment,
+ space,
+ 0, 0, 0, stabinit, stabline, stabsym, 0,
+ {
+ 4, /* max_unaligned_load */
+ rmap,
+ blkfetch, blkstore, blkloop,
+ _label,
+ _rule,
+ _nts,
+ _kids,
+ _string,
+ _templates,
+ _isinstruction,
+ _ntname,
+ emit2,
+ doarg,
+ target,
+ clobber,
+
+ }
+}, mipselIR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 4, 4, 0, /* long */
+ 4, 4, 0, /* long long */
+ 4, 4, 1, /* float */
+ 8, 8, 1, /* double */
+ 8, 8, 1, /* long double */
+ 4, 4, 0, /* T * */
+ 0, 1, 0, /* struct */
+ 1, /* little_endian */
+ 0, /* mulops_calls */
+ 0, /* wants_callb */
+ 1, /* wants_argb */
+ 1, /* left_to_right */
+ 0, /* wants_dag */
+ 0, /* unsigned_char */
+ address,
+ blockbeg,
+ blockend,
+ defaddress,
+ defconst,
+ defstring,
+ defsymbol,
+ emit,
+ export,
+ function,
+ gen,
+ global,
+ import,
+ local,
+ progbeg,
+ progend,
+ segment,
+ space,
+ 0, 0, 0, stabinit, stabline, stabsym, 0,
+ {
+ 4, /* max_unaligned_load */
+ rmap,
+ blkfetch, blkstore, blkloop,
+ _label,
+ _rule,
+ _nts,
+ _kids,
+ _string,
+ _templates,
+ _isinstruction,
+ _ntname,
+ emit2,
+ doarg,
+ target,
+ clobber,
+
+ }
+};
+static char rcsid[] = "$Id: mips.md 145 2001-10-17 21:53:10Z timo $";
diff --git a/lcc/src/null.c b/lcc/src/null.c
index 52129fc..136e4a8 100755
--- a/lcc/src/null.c
+++ b/lcc/src/null.c
@@ -1,74 +1,74 @@
-#include "c.h"
-#define I(f) null_##f
-
-static Node I(gen)(Node p) { return p; }
-static void I(address)(Symbol q, Symbol p, long n) {}
-static void I(blockbeg)(Env *e) {}
-static void I(blockend)(Env *e) {}
-static void I(defaddress)(Symbol p) {}
-static void I(defconst)(int suffix, int size, Value v) {}
-static void I(defstring)(int len, char *s) {}
-static void I(defsymbol)(Symbol p) {}
-static void I(emit)(Node p) {}
-static void I(export)(Symbol p) {}
-static void I(function)(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {}
-static void I(global)(Symbol p) {}
-static void I(import)(Symbol p) {}
-static void I(local)(Symbol p) {}
-static void I(progbeg)(int argc, char *argv[]) {}
-static void I(progend)(void) {}
-static void I(segment)(int s) {}
-static void I(space)(int n) {}
-static void I(stabblock)(int brace, int lev, Symbol *p) {}
-static void I(stabend)(Coordinate *cp, Symbol p, Coordinate **cpp, Symbol *sp, Symbol *stab) {}
-static void I(stabfend)(Symbol p, int lineno) {}
-static void I(stabinit)(char *file, int argc, char *argv[]) {}
-static void I(stabline)(Coordinate *cp) {}
-static void I(stabsym)(Symbol p) {}
-static void I(stabtype)(Symbol p) {}
-
-
-Interface nullIR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 8, 8, 1, /* long */
- 8 ,8, 1, /* long long */
- 4, 4, 1, /* float */
- 8, 8, 1, /* double */
- 16,16,1, /* long double */
- 4, 4, 0, /* T* */
- 0, 4, 0, /* struct */
- 1, /* little_endian */
- 0, /* mulops_calls */
- 0, /* wants_callb */
- 0, /* wants_argb */
- 1, /* left_to_right */
- 0, /* wants_dag */
- 0, /* unsigned_char */
- I(address),
- I(blockbeg),
- I(blockend),
- I(defaddress),
- I(defconst),
- I(defstring),
- I(defsymbol),
- I(emit),
- I(export),
- I(function),
- I(gen),
- I(global),
- I(import),
- I(local),
- I(progbeg),
- I(progend),
- I(segment),
- I(space),
- I(stabblock),
- I(stabend),
- I(stabfend),
- I(stabinit),
- I(stabline),
- I(stabsym),
- I(stabtype)
-};
+#include "c.h"
+#define I(f) null_##f
+
+static Node I(gen)(Node p) { return p; }
+static void I(address)(Symbol q, Symbol p, long n) {}
+static void I(blockbeg)(Env *e) {}
+static void I(blockend)(Env *e) {}
+static void I(defaddress)(Symbol p) {}
+static void I(defconst)(int suffix, int size, Value v) {}
+static void I(defstring)(int len, char *s) {}
+static void I(defsymbol)(Symbol p) {}
+static void I(emit)(Node p) {}
+static void I(export)(Symbol p) {}
+static void I(function)(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {}
+static void I(global)(Symbol p) {}
+static void I(import)(Symbol p) {}
+static void I(local)(Symbol p) {}
+static void I(progbeg)(int argc, char *argv[]) {}
+static void I(progend)(void) {}
+static void I(segment)(int s) {}
+static void I(space)(int n) {}
+static void I(stabblock)(int brace, int lev, Symbol *p) {}
+static void I(stabend)(Coordinate *cp, Symbol p, Coordinate **cpp, Symbol *sp, Symbol *stab) {}
+static void I(stabfend)(Symbol p, int lineno) {}
+static void I(stabinit)(char *file, int argc, char *argv[]) {}
+static void I(stabline)(Coordinate *cp) {}
+static void I(stabsym)(Symbol p) {}
+static void I(stabtype)(Symbol p) {}
+
+
+Interface nullIR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 8, 8, 1, /* long */
+ 8 ,8, 1, /* long long */
+ 4, 4, 1, /* float */
+ 8, 8, 1, /* double */
+ 16,16,1, /* long double */
+ 4, 4, 0, /* T* */
+ 0, 4, 0, /* struct */
+ 1, /* little_endian */
+ 0, /* mulops_calls */
+ 0, /* wants_callb */
+ 0, /* wants_argb */
+ 1, /* left_to_right */
+ 0, /* wants_dag */
+ 0, /* unsigned_char */
+ I(address),
+ I(blockbeg),
+ I(blockend),
+ I(defaddress),
+ I(defconst),
+ I(defstring),
+ I(defsymbol),
+ I(emit),
+ I(export),
+ I(function),
+ I(gen),
+ I(global),
+ I(import),
+ I(local),
+ I(progbeg),
+ I(progend),
+ I(segment),
+ I(space),
+ I(stabblock),
+ I(stabend),
+ I(stabfend),
+ I(stabinit),
+ I(stabline),
+ I(stabsym),
+ I(stabtype)
+};
diff --git a/lcc/src/output.c b/lcc/src/output.c
index e8fe6f5..dc7a698 100755
--- a/lcc/src/output.c
+++ b/lcc/src/output.c
@@ -1,134 +1,134 @@
-#include "c.h"
-
-
-static char *outs(const char *str, FILE *f, char *bp) {
- if (f)
- fputs(str, f);
- else
- while (*bp = *str++)
- bp++;
- return bp;
-}
-
-static char *outd(long n, FILE *f, char *bp) {
- unsigned long m;
- char buf[25], *s = buf + sizeof buf;
-
- *--s = '\0';
- if (n < 0)
- m = -n;
- else
- m = n;
- do
- *--s = m%10 + '0';
- while ((m /= 10) != 0);
- if (n < 0)
- *--s = '-';
- return outs(s, f, bp);
-}
-
-static char *outu(unsigned long n, int base, FILE *f, char *bp) {
- char buf[25], *s = buf + sizeof buf;
-
- *--s = '\0';
- do
- *--s = "0123456789abcdef"[n%base];
- while ((n /= base) != 0);
- return outs(s, f, bp);
-}
-void print(const char *fmt, ...) {
- va_list ap;
-
- va_start(ap, fmt);
- vfprint(stdout, NULL, fmt, ap);
- va_end(ap);
-}
-/* fprint - formatted output to f */
-void fprint(FILE *f, const char *fmt, ...) {
- va_list ap;
-
- va_start(ap, fmt);
- vfprint(f, NULL, fmt, ap);
- va_end(ap);
-}
-
-/* stringf - formatted output to a saved string */
-char *stringf(const char *fmt, ...) {
- char buf[1024];
- va_list ap;
-
- va_start(ap, fmt);
- vfprint(NULL, buf, fmt, ap);
- va_end(ap);
- return string(buf);
-}
-
-/* vfprint - formatted output to f or string bp */
-void vfprint(FILE *f, char *bp, const char *fmt, va_list ap) {
- for (; *fmt; fmt++)
- if (*fmt == '%')
- switch (*++fmt) {
- case 'd': bp = outd(va_arg(ap, int), f, bp); break;
- case 'D': bp = outd(va_arg(ap, long), f, bp); break;
- case 'U': bp = outu(va_arg(ap, unsigned long), 10, f, bp); break;
- case 'u': bp = outu(va_arg(ap, unsigned), 10, f, bp); break;
- case 'o': bp = outu(va_arg(ap, unsigned), 8, f, bp); break;
- case 'X': bp = outu(va_arg(ap, unsigned long), 16, f, bp); break;
- case 'x': bp = outu(va_arg(ap, unsigned), 16, f, bp); break;
- case 'f': case 'e':
- case 'g': {
- static char format[] = "%f";
- char buf[128];
- format[1] = *fmt;
- sprintf(buf, format, va_arg(ap, double));
- bp = outs(buf, f, bp);
- }
-; break;
- case 's': bp = outs(va_arg(ap, char *), f, bp); break;
- case 'p': {
- void *p = va_arg(ap, void *);
- if (p)
- bp = outs("0x", f, bp);
- bp = outu((unsigned long)p, 16, f, bp);
- break;
- }
- case 'c': if (f) fputc(va_arg(ap, int), f); else *bp++ = va_arg(ap, int); break;
- case 'S': { char *s = va_arg(ap, char *);
- int n = va_arg(ap, int);
- if (s)
- for ( ; n-- > 0; s++)
- if (f) (void)putc(*s, f); else *bp++ = *s;
- } break;
- case 'k': { int t = va_arg(ap, int);
- static char *tokens[] = {
-#define xx(a,b,c,d,e,f,g) g,
-#define yy(a,b,c,d,e,f,g) g,
-#include "token.h"
- };
- assert(tokens[t&0177]);
- bp = outs(tokens[t&0177], f, bp);
- } break;
- case 't': { Type ty = va_arg(ap, Type);
- assert(f);
- outtype(ty ? ty : voidtype, f);
- } break;
- case 'w': { Coordinate *p = va_arg(ap, Coordinate *);
- if (p->file && *p->file) {
- bp = outs(p->file, f, bp);
- bp = outs(":", f, bp);
- }
- bp = outd(p->y, f, bp);
- } break;
- case 'I': { int n = va_arg(ap, int);
- while (--n >= 0)
- if (f) (void)putc(' ', f); else *bp++ = ' ';
- } break;
- default: if (f) (void)putc(*fmt, f); else *bp++ = *fmt; break;
- }
- else if (f)
- (void)putc(*fmt, f);
- else
- *bp++ = *fmt;
- if (!f)
- *bp = '\0';
-}
+#include "c.h"
+
+
+static char *outs(const char *str, FILE *f, char *bp) {
+ if (f)
+ fputs(str, f);
+ else
+ while (*bp = *str++)
+ bp++;
+ return bp;
+}
+
+static char *outd(long n, FILE *f, char *bp) {
+ unsigned long m;
+ char buf[25], *s = buf + sizeof buf;
+
+ *--s = '\0';
+ if (n < 0)
+ m = -n;
+ else
+ m = n;
+ do
+ *--s = m%10 + '0';
+ while ((m /= 10) != 0);
+ if (n < 0)
+ *--s = '-';
+ return outs(s, f, bp);
+}
+
+static char *outu(unsigned long n, int base, FILE *f, char *bp) {
+ char buf[25], *s = buf + sizeof buf;
+
+ *--s = '\0';
+ do
+ *--s = "0123456789abcdef"[n%base];
+ while ((n /= base) != 0);
+ return outs(s, f, bp);
+}
+void print(const char *fmt, ...) {
+ va_list ap;
+
+ va_start(ap, fmt);
+ vfprint(stdout, NULL, fmt, ap);
+ va_end(ap);
+}
+/* fprint - formatted output to f */
+void fprint(FILE *f, const char *fmt, ...) {
+ va_list ap;
+
+ va_start(ap, fmt);
+ vfprint(f, NULL, fmt, ap);
+ va_end(ap);
+}
+
+/* stringf - formatted output to a saved string */
+char *stringf(const char *fmt, ...) {
+ char buf[1024];
+ va_list ap;
+
+ va_start(ap, fmt);
+ vfprint(NULL, buf, fmt, ap);
+ va_end(ap);
+ return string(buf);
+}
+
+/* vfprint - formatted output to f or string bp */
+void vfprint(FILE *f, char *bp, const char *fmt, va_list ap) {
+ for (; *fmt; fmt++)
+ if (*fmt == '%')
+ switch (*++fmt) {
+ case 'd': bp = outd(va_arg(ap, int), f, bp); break;
+ case 'D': bp = outd(va_arg(ap, long), f, bp); break;
+ case 'U': bp = outu(va_arg(ap, unsigned long), 10, f, bp); break;
+ case 'u': bp = outu(va_arg(ap, unsigned), 10, f, bp); break;
+ case 'o': bp = outu(va_arg(ap, unsigned), 8, f, bp); break;
+ case 'X': bp = outu(va_arg(ap, unsigned long), 16, f, bp); break;
+ case 'x': bp = outu(va_arg(ap, unsigned), 16, f, bp); break;
+ case 'f': case 'e':
+ case 'g': {
+ static char format[] = "%f";
+ char buf[128];
+ format[1] = *fmt;
+ sprintf(buf, format, va_arg(ap, double));
+ bp = outs(buf, f, bp);
+ }
+; break;
+ case 's': bp = outs(va_arg(ap, char *), f, bp); break;
+ case 'p': {
+ void *p = va_arg(ap, void *);
+ if (p)
+ bp = outs("0x", f, bp);
+ bp = outu((unsigned long)p, 16, f, bp);
+ break;
+ }
+ case 'c': if (f) fputc(va_arg(ap, int), f); else *bp++ = va_arg(ap, int); break;
+ case 'S': { char *s = va_arg(ap, char *);
+ int n = va_arg(ap, int);
+ if (s)
+ for ( ; n-- > 0; s++)
+ if (f) (void)putc(*s, f); else *bp++ = *s;
+ } break;
+ case 'k': { int t = va_arg(ap, int);
+ static char *tokens[] = {
+#define xx(a,b,c,d,e,f,g) g,
+#define yy(a,b,c,d,e,f,g) g,
+#include "token.h"
+ };
+ assert(tokens[t&0177]);
+ bp = outs(tokens[t&0177], f, bp);
+ } break;
+ case 't': { Type ty = va_arg(ap, Type);
+ assert(f);
+ outtype(ty ? ty : voidtype, f);
+ } break;
+ case 'w': { Coordinate *p = va_arg(ap, Coordinate *);
+ if (p->file && *p->file) {
+ bp = outs(p->file, f, bp);
+ bp = outs(":", f, bp);
+ }
+ bp = outd(p->y, f, bp);
+ } break;
+ case 'I': { int n = va_arg(ap, int);
+ while (--n >= 0)
+ if (f) (void)putc(' ', f); else *bp++ = ' ';
+ } break;
+ default: if (f) (void)putc(*fmt, f); else *bp++ = *fmt; break;
+ }
+ else if (f)
+ (void)putc(*fmt, f);
+ else
+ *bp++ = *fmt;
+ if (!f)
+ *bp = '\0';
+}
diff --git a/lcc/src/pass2.c b/lcc/src/pass2.c
index f9e41cf..08d73cf 100755
--- a/lcc/src/pass2.c
+++ b/lcc/src/pass2.c
@@ -1,665 +1,665 @@
-#include "c.h"
-#include "rcc.h"
-#if WIN32
-#include <fcntl.h>
-#include <io.h>
-#endif
-
-
-Interface *IR = NULL;
-int Aflag; /* >= 0 if -A specified */
-int Pflag; /* != 0 if -P specified */
-int glevel; /* == [0-9] if -g[0-9] specified */
-int xref; /* != 0 for cross-reference data */
-Symbol YYnull; /* _YYnull symbol if -n or -nvalidate specified */
-Symbol YYcheck; /* _YYcheck symbol if -nvalidate,check specified */
-
-static int verbose = 1;
-#define VERBOSE(n,arg) (verbose >= n ? (void)(arg):(void)0)
-static int nuids;
-static rcc_item_ty *items;
-static void **itemmap;
-
-static void *uid2type(int uid) {
- assert(uid >= 0 && uid < nuids);
- if (itemmap[uid] == NULL) {
- Type ty;
- rcc_type_ty type = (void *)items[uid];
- assert(items[uid]);
- assert(items[uid]->uid == uid);
- assert(items[uid]->kind == rcc_Type_enum);
- type = items[uid]->v.rcc_Type.type;
- assert(type);
- switch (type->kind) {
- case rcc_INT_enum:
- ty = btot(INT, type->size);
- assert(ty->align == type->align);
- break;
- case rcc_UNSIGNED_enum:
- ty = btot(UNSIGNED, type->size);
- assert(ty->align == type->align);
- break;
- case rcc_FLOAT_enum:
- ty = btot(FLOAT, type->size);
- assert(ty->align == type->align);
- break;
- case rcc_VOID_enum:
- ty = voidtype;
- break;
- case rcc_POINTER_enum:
- ty = ptr(uid2type(type->v.rcc_POINTER.type));
- break;
- case rcc_ARRAY_enum:
- ty = uid2type(type->v.rcc_ARRAY.type);
- assert(ty->size > 0);
- ty = array(ty, type->size/ty->size, 0);
- break;
- case rcc_CONST_enum:
- ty = qual(CONST, uid2type(type->v.rcc_CONST.type));
- break;
- case rcc_VOLATILE_enum:
- ty = qual(VOLATILE, uid2type(type->v.rcc_VOLATILE.type));
- break;
- case rcc_ENUM_enum: {
- int i, n = Seq_length(type->v.rcc_ENUM.ids);
- ty = newstruct(ENUM, string(type->v.rcc_ENUM.tag));
- ty->type = inttype;
- ty->size = ty->type->size;
- ty->align = ty->type->align;
- ty->u.sym->u.idlist = newarray(n + 1, sizeof *ty->u.sym->u.idlist, PERM);
- for (i = 0; i < n; i++) {
- rcc_enum__ty e = Seq_remlo(type->v.rcc_ENUM.ids);
- Symbol p = install(e->id, &identifiers, GLOBAL, PERM);
- p->type = ty;
- p->sclass = ENUM;
- p->u.value = e->value;
- ty->u.sym->u.idlist[i] = p;
- free(e);
- }
- ty->u.sym->u.idlist[i] = NULL;
- Seq_free(&type->v.rcc_ENUM.ids);
- break;
- }
- case rcc_STRUCT_enum: case rcc_UNION_enum: {
- int i, n;
- Field *tail;
- list_ty fields;
- if (type->kind == rcc_STRUCT_enum) {
- ty = newstruct(STRUCT, string(type->v.rcc_STRUCT.tag));
- fields = type->v.rcc_STRUCT.fields;
- } else {
- ty = newstruct(UNION, string(type->v.rcc_UNION.tag));
- fields = type->v.rcc_UNION.fields;
- }
- itemmap[uid] = ty; /* recursive types */
- ty->size = type->size;
- ty->align = type->align;
- tail = &ty->u.sym->u.s.flist;
- n = Seq_length(fields);
- for (i = 0; i < n; i++) {
- rcc_field_ty field = Seq_remlo(fields);
- NEW0(*tail, PERM);
- (*tail)->name = (char *)field->id;
- (*tail)->type = uid2type(field->type);
- (*tail)->offset = field->offset;
- (*tail)->bitsize = field->bitsize;
- (*tail)->lsb = field->lsb;
- if (isconst((*tail)->type))
- ty->u.sym->u.s.cfields = 1;
- if (isvolatile((*tail)->type))
- ty->u.sym->u.s.vfields = 1;
- tail = &(*tail)->link;
- free(field);
- }
- Seq_free(&fields);
- break;
- }
- case rcc_FUNCTION_enum: {
- int n = Seq_length(type->v.rcc_FUNCTION.formals);
- if (n > 0) {
- int i;
- Type *proto = newarray(n + 1, sizeof *proto, PERM);
- for (i = 0; i < n; i++) {
- int *formal = Seq_remlo(type->v.rcc_FUNCTION.formals);
- proto[i] = uid2type(*formal);
- free(formal);
- }
- proto[i] = NULL;
- ty = func(uid2type(type->v.rcc_FUNCTION.type), proto, 0);
- } else
- ty = func(uid2type(type->v.rcc_FUNCTION.type), NULL, 1);
- Seq_free(&type->v.rcc_FUNCTION.formals);
- break;
- }
- default: assert(0);
- }
- if (itemmap[uid] == NULL) {
- itemmap[uid] = ty;
- free(type);
- free(items[uid]);
- items[uid] = NULL;
- } else
- assert(itemmap[uid] == ty);
- }
- return itemmap[uid];
-}
-
-static Symbol uid2symbol(int uid) {
- assert(uid >= 0 && uid < nuids);
- if (itemmap[uid] == NULL) {
- Symbol p;
- rcc_symbol_ty symbol;
- assert(items[uid]);
- assert(items[uid]->uid == uid);
- assert(items[uid]->kind == rcc_Symbol_enum);
- symbol = items[uid]->v.rcc_Symbol.symbol;
- assert(symbol);
- NEW0(p, PERM);
- p->name = (char *)symbol->id;
- p->scope = symbol->scope;
- p->sclass = symbol->sclass;
- p->type = uid2type(symbol->type);
-#define xx(f,n) p->f = symbol->flags>>n;
- xx(structarg,0)
- xx(addressed,1)
- xx(computed,2)
- xx(temporary,3)
- xx(generated,4)
-#undef xx
- p->ref = symbol->ref/10000.0;
- assert(p->scope != CONSTANTS && p->scope != LABELS);
- if (p->scope == GLOBAL || p->sclass == STATIC || p->sclass == EXTERN)
- (*IR->defsymbol)(p);
- itemmap[uid] = p;
- free(symbol);
- free(items[uid]);
- items[uid] = NULL;
- }
- return itemmap[uid];
-}
-
-#define xx(s) static void do##s(rcc_interface_ty);
-xx(Export)
-xx(Import)
-xx(Global)
-xx(Local)
-xx(Address)
-xx(Segment)
-xx(Defaddress)
-xx(Deflabel)
-xx(Defconst)
-xx(Defconstf)
-xx(Defstring)
-xx(Space)
-xx(Function)
-xx(Blockbeg)
-xx(Blockend)
-xx(Forest)
-#undef xx
-static void (*doX[])(rcc_interface_ty in) = {
-#define xx(s) 0,
-xx(Export)
-xx(Import)
-xx(Global)
-xx(Local)
-xx(Address)
-xx(Segment)
-xx(Defaddress)
-xx(Deflabel)
-xx(Defconst)
-xx(Defconstf)
-xx(Defstring)
-xx(Space)
-xx(Function)
-xx(Blockbeg)
-xx(Blockend)
-xx(Forest)
- 0
-#undef xx
-};
-
-static void interface(rcc_interface_ty in) {
- assert(in);
- (*doX[in->kind])(in);
- free(in);
-}
-
-static void doExport(rcc_interface_ty in) {
- (*IR->export)(uid2symbol(in->v.rcc_Export.p));
-}
-
-static void doImport(rcc_interface_ty in) {
- Symbol p = uid2symbol(in->v.rcc_Export.p);
-
- (*IR->import)(p);
- p->defined = 1;
-}
-
-static void doGlobal(rcc_interface_ty in) {
- Symbol p = uid2symbol(in->v.rcc_Global.p);
-
- p->u.seg = in->v.rcc_Global.seg;
- (*IR->global)(p);
- p->defined = 1;
-}
-
-static void doLocal(rcc_interface_ty in) {
- int uid = in->v.rcc_Local.uid;
-
- assert(uid >= 0 && uid < nuids);
- assert(items[uid] == NULL);
- items[uid] = rcc_Symbol(uid, in->v.rcc_Local.p);
- if (in->v.rcc_Local.p->scope >= LOCAL)
- addlocal(uid2symbol(uid));
-}
-
-static void doAddress(rcc_interface_ty in) {
- int uid = in->v.rcc_Address.uid;
- Symbol p = uid2symbol(in->v.rcc_Address.p);
-
- assert(uid >= 0 && uid < nuids);
- assert(items[uid] == NULL);
- items[uid] = rcc_Symbol(uid, in->v.rcc_Address.q);
- if (p->scope == GLOBAL || p->sclass == STATIC || p->sclass == EXTERN)
- (*IR->address)(uid2symbol(uid), p, in->v.rcc_Address.n);
- else {
- Code cp = code(Address);
- cp->u.addr.sym = uid2symbol(uid);
- cp->u.addr.base = p;
- cp->u.addr.offset = in->v.rcc_Address.n;
- }
-}
-
-static void doSegment(rcc_interface_ty in) {
- (*IR->segment)(in->v.rcc_Segment.seg);
-}
-
-static void doDefaddress(rcc_interface_ty in) {
- (*IR->defaddress)(uid2symbol(in->v.rcc_Defaddress.p));
-}
-
-static void doDeflabel(rcc_interface_ty in) {
- (*IR->defaddress)(findlabel(in->v.rcc_Deflabel.label));
-}
-
-static void doDefconst(rcc_interface_ty in) {
- Value v;
-
- v.i = in->v.rcc_Defconst.value;
- (*IR->defconst)(in->v.rcc_Defconst.suffix, in->v.rcc_Defconst.size, v);
-}
-
-static void doDefconstf(rcc_interface_ty in) {
- Value v;
- unsigned *p = (unsigned *)&v.d;
-
- p[swap] = in->v.rcc_Defconstf.value->msb;
- p[1-swap] = in->v.rcc_Defconstf.value->lsb;
- (*IR->defconst)(F, in->v.rcc_Defconstf.size, v);
- free(in->v.rcc_Defconstf.value);
-}
-
-static void doDefstring(rcc_interface_ty in) {
- (*IR->defstring)(in->v.rcc_Defstring.s.len, (char *)in->v.rcc_Defstring.s.str);
- free((char *)in->v.rcc_Defstring.s.str);
-}
-
-static void doSpace(rcc_interface_ty in) {
- (*IR->space)(in->v.rcc_Space.n);
-}
-
-static void doFunction(rcc_interface_ty in) {
- int i, n;
- Symbol *caller, *callee;
-
- /*
- Initialize:
- define the function symbol,
- initialize callee and caller arrays.
- */
- cfunc = uid2symbol(in->v.rcc_Function.f);
- labels = table(NULL, LABELS);
- enterscope();
- n = Seq_length(in->v.rcc_Function.caller);
- caller = newarray(n + 1, sizeof *caller, FUNC);
- for (i = 0; i < n; i++) {
- int *uid = Seq_remlo(in->v.rcc_Function.caller);
- caller[i] = uid2symbol(*uid);
- free(uid);
- }
- caller[i] = NULL;
- Seq_free(&in->v.rcc_Function.caller);
- callee = newarray(n + 1, sizeof *callee, FUNC);
- for (i = 0; i < n; i++) {
- int *uid = Seq_remlo(in->v.rcc_Function.callee);
- callee[i] = uid2symbol(*uid);
- free(uid);
- }
- callee[i] = NULL;
- Seq_free(&in->v.rcc_Function.callee);
- cfunc->u.f.callee = callee;
- cfunc->defined = 1;
- /*
- Initialize the code list,
- traverse the interfaces inside the function;
- each call appends code list entries.
- */
- codelist = &codehead;
- codelist->next = NULL;
- n = Seq_length(in->v.rcc_Function.codelist);
- for (i = 0; i < n; i++)
- interface(Seq_remlo(in->v.rcc_Function.codelist));
- Seq_free(&in->v.rcc_Function.codelist);
- /*
- Call the back end,
- Wrap-up.
- */
- exitscope();
- (*IR->function)(cfunc, caller, callee, in->v.rcc_Function.ncalls);
- cfunc = NULL;
- labels = NULL;
-}
-
-static struct block {
- Code begin;
- struct block *prev;
-} *blockstack = NULL;
-
-static void doBlockbeg(rcc_interface_ty in) {
- struct block *b;
- Code cp = code(Blockbeg);
-
- enterscope();
- cp->u.block.level = level;
- cp->u.block.locals = newarray(1, sizeof *cp->u.block.locals, FUNC);
- cp->u.block.locals[0] = NULL;
- cp->u.block.identifiers = NULL;
- cp->u.block.types = NULL;
- NEW(b, FUNC);
- b->begin = cp;
- b->prev = blockstack;
- blockstack = b;
-}
-
-static void doBlockend(rcc_interface_ty in) {
- assert(blockstack);
- code(Blockend)->u.begin = blockstack->begin;
- blockstack = blockstack->prev;
- exitscope();
-}
-
-static Node visit(rcc_node_ty node) {
- int op;
- Node left = NULL, right = NULL, p = NULL;
- Symbol sym = NULL;
-
- switch (node->kind) {
-#define T(x) rcc_##x##_enum
- case T(CSE): {
- Symbol q = uid2symbol(node->v.rcc_CSE.uid);
- assert(q->temporary);
- q->u.t.cse = p = visit(node->v.rcc_CSE.node);
- break;
- }
- case T(CNST): {
- Value v;
- v.i = node->v.rcc_CNST.value;
- sym = constant(btot(node->suffix, node->size), v);
- op = CNST;
- break;
- }
- case T(CNSTF): {
- Value v;
- unsigned *p = (unsigned *)&v.d;
- p[swap] = node->v.rcc_CNSTF.value->msb;
- p[1-swap] = node->v.rcc_CNSTF.value->lsb;
- sym = constant(btot(node->suffix, node->size), v);
- free(node->v.rcc_CNSTF.value);
- op = CNST;
- break;
- }
- case T(ARG):
- p = newnode(ARG + node->suffix + sizeop(node->size),
- visit(node->v.rcc_ARG.left), NULL,
- intconst(node->v.rcc_ARG.len));
- p->syms[1] = intconst(node->v.rcc_ARG.align);
- break;
- case T(ASGN):
- p = newnode(ASGN + node->suffix + sizeop(node->size),
- visit(node->v.rcc_ASGN.left), visit(node->v.rcc_ASGN.right),
- intconst(node->v.rcc_ASGN.len));
- p->syms[1] = intconst(node->v.rcc_ASGN.align);
- break;
- case T(CVT):
- op = node->v.rcc_CVT.op;
- left = visit(node->v.rcc_CVT.left);
- sym = intconst(node->v.rcc_CVT.fromsize);
- break;
- case T(CALL):
- op = CALL;
- left = visit(node->v.rcc_CALL.left);
- NEW0(sym, FUNC);
- sym->type = uid2type(node->v.rcc_CALL.type);
- break;
- case T(CALLB):
- op = CALL;
- left = visit(node->v.rcc_CALLB.left);
- right = visit(node->v.rcc_CALLB.right);
- NEW0(sym, FUNC);
- sym->type = uid2type(node->v.rcc_CALLB.type);
- break;
- case T(RET):
- op = RET;
- break;
- case T(ADDRG):
- op = ADDRG;
- sym = uid2symbol(node->v.rcc_ADDRG.uid);
- break;
- case T(ADDRL):
- op = ADDRL;
- sym = uid2symbol(node->v.rcc_ADDRG.uid);
- break;
- case T(ADDRF):
- op = ADDRF;
- sym = uid2symbol(node->v.rcc_ADDRG.uid);
- break;
- case T(Unary):
- op = node->v.rcc_Unary.op;
- left = visit(node->v.rcc_Unary.left);
- break;
- case T(Binary):
- op = node->v.rcc_Binary.op;
- left = visit(node->v.rcc_Binary.left);
- right = visit(node->v.rcc_Binary.right);
- break;
- case T(Compare):
- op = node->v.rcc_Compare.op;
- left = visit(node->v.rcc_Compare.left);
- right = visit(node->v.rcc_Compare.right);
- sym = findlabel(node->v.rcc_Compare.label);
- break;
- case T(LABEL):
- op = LABEL;
- sym = findlabel(node->v.rcc_LABEL.label);
- break;
- case T(BRANCH):
- op = JUMP;
- left = newnode(ADDRG+P+sizeop(voidptype->size), NULL, NULL, findlabel(node->v.rcc_BRANCH.label));
- break;
-#undef T
- default: assert(0);
- }
- if (p == NULL)
- p = newnode(op + node->suffix + sizeop(node->size), left, right, sym);
- free(node);
- return p;
-}
-
-static void doForest(rcc_interface_ty in) {
- Node *tail = &code(Gen)->u.forest;
- int i, n = Seq_length(in->v.rcc_Forest.nodes);
-
- for (i = 0; i < n; i++) {
- *tail = visit(Seq_remlo(in->v.rcc_Forest.nodes));
- assert(*tail);
- tail = &(*tail)->link;
- }
- *tail = NULL;
- Seq_free(&in->v.rcc_Forest.nodes);
-}
-
-int main(int argc, char *argv[]) {
- int i, version;
- float stamp = (assert(strstr(rcsid, ",v")), strtod(strstr(rcsid, ",v")+2, NULL))
-;
- char *infile = NULL, *outfile = NULL;
- rcc_program_ty pickle;
-
- for (i = 1; i < argc; i++)
- if (*argv[i] != '-' || strcmp(argv[i], "-") == 0) {
- if (infile == NULL)
- infile = argv[i];
- else if (outfile == NULL)
- outfile = argv[i];
- }
- if (infile != NULL && strcmp(infile, "-") != 0
- && freopen(infile, "rb", stdin) == NULL) {
- fprint(stderr, "%s: can't read `%s'\n", argv[0], infile);
- exit(EXIT_FAILURE);
- }
-#if WIN32
- else
- _setmode(_fileno(stdin), _O_BINARY);
-#endif
- if (outfile != NULL && strcmp(outfile, "-") != 0
- && freopen(outfile, "w", stdout) == NULL) {
- fprint(stderr, "%s: can't write `%s'\n", argv[0], outfile);
- exit(EXIT_FAILURE);
- }
- version = read_int(stdin);
- assert(version/100 == (int)stamp);
- pickle = rcc_read_program(stdin);
- argc = pickle->argc;
- argv = newarray(argc + 1, sizeof *argv, PERM);
- {
- for (i = 0; i < argc; i++) {
- string_ty *arg = Seq_remlo(pickle->argv);
- argv[i] = (char *)arg->str;
- free(arg);
- }
- argv[i] = NULL;
- assert(i == argc);
- Seq_free(&pickle->argv);
- }
- for (i = argc - 1; i > 0; i--)
- if (strncmp(argv[i], "-target=", 8) == 0)
- break;
- if (i > 0) {
- int j;
- for (j = 0; bindings[j].name && bindings[j].ir; j++)
- if (strcmp(&argv[i][8], bindings[j].name) == 0) {
- IR = bindings[j].ir;
- break;
- }
- }
- if (!IR) {
- fprint(stderr, "%s: unknown target", argv[0]);
- if (i > 0)
- fprint(stderr, " `%s'", &argv[i][8]);
- fprint(stderr, "; must specify one of\n");
- for (i = 0; bindings[i].name; i++)
- fprint(stderr, "\t-target=%s\n", bindings[i].name);
- exit(EXIT_FAILURE);
- }
- IR->wants_dag = 0; /* pickle's hold trees */
- init(argc, argv);
- genlabel(pickle->nlabels);
- level = GLOBAL;
- {
- int i, count;
- nuids = pickle->nuids;
- items = newarray(nuids, sizeof *items, PERM);
- itemmap = newarray(nuids, sizeof *items, PERM);
- for (i = 0; i < nuids; i++) {
- itemmap[i] = NULL;
- items[i] = NULL;
- }
- (*IR->progbeg)(argc, argv);
- count = Seq_length(pickle->items);
- for (i = 0; i < count; i++) {
- rcc_item_ty item = Seq_remlo(pickle->items);
- int uid = item->uid;
- assert(uid >= 0 && uid < nuids);
- assert(items[uid] == NULL);
- items[uid] = item;
- }
- Seq_free(&pickle->items);
-#define xx(s) assert(rcc_##s##_enum < sizeof doX/sizeof doX[0] && doX[rcc_##s##_enum]==0); \
- doX[rcc_##s##_enum] = do##s;
- xx(Export)
- xx(Import)
- xx(Global)
- xx(Local)
- xx(Address)
- xx(Segment)
- xx(Defaddress)
- xx(Deflabel)
- xx(Defconst)
- xx(Defconstf)
- xx(Defstring)
- xx(Space)
- xx(Function)
- xx(Blockbeg)
- xx(Blockend)
- xx(Forest)
-#undef xx
- count = Seq_length(pickle->interfaces);
- for (i = 0; i < count; i++)
- interface(Seq_remlo(pickle->interfaces));
- Seq_free(&pickle->interfaces);
- free(pickle);
- (*IR->progend)();
- }
- deallocate(PERM);
- return errcnt > 0;
-}
-
-/* main_init - process program arguments */
-void main_init(int argc, char *argv[]) {
- int i;
- static int inited;
-
- if (inited)
- return;
- inited = 1;
- for (i = 1; i < argc; i++)
- if (strcmp(argv[i], "-g") == 0 || strcmp(argv[i], "-g2") == 0)
- glevel = 2;
- else if (strcmp(argv[i], "-w") == 0)
- wflag++;
- else if (strcmp(argv[i], "-v") == 0) {
- fprint(stderr, "%s %s\n", argv[0], rcsid);
- verbose++;
- } else if (strncmp(argv[i], "-errout=", 8) == 0) {
- FILE *f = fopen(argv[i]+8, "w");
- if (f == NULL) {
- fprint(stderr, "%s: can't write errors to `%s'\n", argv[0], argv[i]+8);
- exit(EXIT_FAILURE);
- }
- fclose(f);
- f = freopen(argv[i]+8, "w", stderr);
- assert(f);
- } else if (strncmp(argv[i], "-e", 2) == 0) {
- int x;
- if ((x = strtol(&argv[i][2], NULL, 0)) > 0)
- errlimit = x;
- }
-}
-
-void init(int argc, char *argv[]) {
- {extern void main_init(int, char *[]); main_init(argc, argv);}
- {extern void prof_init(int, char *[]); prof_init(argc, argv);}
- {extern void trace_init(int, char *[]); trace_init(argc, argv);}
- {extern void type_init(int, char *[]); type_init(argc, argv);}
- {extern void x86linux_init(int, char *[]); x86linux_init(argc, argv);}
-}
+#include "c.h"
+#include "rcc.h"
+#if WIN32
+#include <fcntl.h>
+#include <io.h>
+#endif
+
+
+Interface *IR = NULL;
+int Aflag; /* >= 0 if -A specified */
+int Pflag; /* != 0 if -P specified */
+int glevel; /* == [0-9] if -g[0-9] specified */
+int xref; /* != 0 for cross-reference data */
+Symbol YYnull; /* _YYnull symbol if -n or -nvalidate specified */
+Symbol YYcheck; /* _YYcheck symbol if -nvalidate,check specified */
+
+static int verbose = 1;
+#define VERBOSE(n,arg) (verbose >= n ? (void)(arg):(void)0)
+static int nuids;
+static rcc_item_ty *items;
+static void **itemmap;
+
+static void *uid2type(int uid) {
+ assert(uid >= 0 && uid < nuids);
+ if (itemmap[uid] == NULL) {
+ Type ty;
+ rcc_type_ty type = (void *)items[uid];
+ assert(items[uid]);
+ assert(items[uid]->uid == uid);
+ assert(items[uid]->kind == rcc_Type_enum);
+ type = items[uid]->v.rcc_Type.type;
+ assert(type);
+ switch (type->kind) {
+ case rcc_INT_enum:
+ ty = btot(INT, type->size);
+ assert(ty->align == type->align);
+ break;
+ case rcc_UNSIGNED_enum:
+ ty = btot(UNSIGNED, type->size);
+ assert(ty->align == type->align);
+ break;
+ case rcc_FLOAT_enum:
+ ty = btot(FLOAT, type->size);
+ assert(ty->align == type->align);
+ break;
+ case rcc_VOID_enum:
+ ty = voidtype;
+ break;
+ case rcc_POINTER_enum:
+ ty = ptr(uid2type(type->v.rcc_POINTER.type));
+ break;
+ case rcc_ARRAY_enum:
+ ty = uid2type(type->v.rcc_ARRAY.type);
+ assert(ty->size > 0);
+ ty = array(ty, type->size/ty->size, 0);
+ break;
+ case rcc_CONST_enum:
+ ty = qual(CONST, uid2type(type->v.rcc_CONST.type));
+ break;
+ case rcc_VOLATILE_enum:
+ ty = qual(VOLATILE, uid2type(type->v.rcc_VOLATILE.type));
+ break;
+ case rcc_ENUM_enum: {
+ int i, n = Seq_length(type->v.rcc_ENUM.ids);
+ ty = newstruct(ENUM, string(type->v.rcc_ENUM.tag));
+ ty->type = inttype;
+ ty->size = ty->type->size;
+ ty->align = ty->type->align;
+ ty->u.sym->u.idlist = newarray(n + 1, sizeof *ty->u.sym->u.idlist, PERM);
+ for (i = 0; i < n; i++) {
+ rcc_enum__ty e = Seq_remlo(type->v.rcc_ENUM.ids);
+ Symbol p = install(e->id, &identifiers, GLOBAL, PERM);
+ p->type = ty;
+ p->sclass = ENUM;
+ p->u.value = e->value;
+ ty->u.sym->u.idlist[i] = p;
+ free(e);
+ }
+ ty->u.sym->u.idlist[i] = NULL;
+ Seq_free(&type->v.rcc_ENUM.ids);
+ break;
+ }
+ case rcc_STRUCT_enum: case rcc_UNION_enum: {
+ int i, n;
+ Field *tail;
+ list_ty fields;
+ if (type->kind == rcc_STRUCT_enum) {
+ ty = newstruct(STRUCT, string(type->v.rcc_STRUCT.tag));
+ fields = type->v.rcc_STRUCT.fields;
+ } else {
+ ty = newstruct(UNION, string(type->v.rcc_UNION.tag));
+ fields = type->v.rcc_UNION.fields;
+ }
+ itemmap[uid] = ty; /* recursive types */
+ ty->size = type->size;
+ ty->align = type->align;
+ tail = &ty->u.sym->u.s.flist;
+ n = Seq_length(fields);
+ for (i = 0; i < n; i++) {
+ rcc_field_ty field = Seq_remlo(fields);
+ NEW0(*tail, PERM);
+ (*tail)->name = (char *)field->id;
+ (*tail)->type = uid2type(field->type);
+ (*tail)->offset = field->offset;
+ (*tail)->bitsize = field->bitsize;
+ (*tail)->lsb = field->lsb;
+ if (isconst((*tail)->type))
+ ty->u.sym->u.s.cfields = 1;
+ if (isvolatile((*tail)->type))
+ ty->u.sym->u.s.vfields = 1;
+ tail = &(*tail)->link;
+ free(field);
+ }
+ Seq_free(&fields);
+ break;
+ }
+ case rcc_FUNCTION_enum: {
+ int n = Seq_length(type->v.rcc_FUNCTION.formals);
+ if (n > 0) {
+ int i;
+ Type *proto = newarray(n + 1, sizeof *proto, PERM);
+ for (i = 0; i < n; i++) {
+ int *formal = Seq_remlo(type->v.rcc_FUNCTION.formals);
+ proto[i] = uid2type(*formal);
+ free(formal);
+ }
+ proto[i] = NULL;
+ ty = func(uid2type(type->v.rcc_FUNCTION.type), proto, 0);
+ } else
+ ty = func(uid2type(type->v.rcc_FUNCTION.type), NULL, 1);
+ Seq_free(&type->v.rcc_FUNCTION.formals);
+ break;
+ }
+ default: assert(0);
+ }
+ if (itemmap[uid] == NULL) {
+ itemmap[uid] = ty;
+ free(type);
+ free(items[uid]);
+ items[uid] = NULL;
+ } else
+ assert(itemmap[uid] == ty);
+ }
+ return itemmap[uid];
+}
+
+static Symbol uid2symbol(int uid) {
+ assert(uid >= 0 && uid < nuids);
+ if (itemmap[uid] == NULL) {
+ Symbol p;
+ rcc_symbol_ty symbol;
+ assert(items[uid]);
+ assert(items[uid]->uid == uid);
+ assert(items[uid]->kind == rcc_Symbol_enum);
+ symbol = items[uid]->v.rcc_Symbol.symbol;
+ assert(symbol);
+ NEW0(p, PERM);
+ p->name = (char *)symbol->id;
+ p->scope = symbol->scope;
+ p->sclass = symbol->sclass;
+ p->type = uid2type(symbol->type);
+#define xx(f,n) p->f = symbol->flags>>n;
+ xx(structarg,0)
+ xx(addressed,1)
+ xx(computed,2)
+ xx(temporary,3)
+ xx(generated,4)
+#undef xx
+ p->ref = symbol->ref/10000.0;
+ assert(p->scope != CONSTANTS && p->scope != LABELS);
+ if (p->scope == GLOBAL || p->sclass == STATIC || p->sclass == EXTERN)
+ (*IR->defsymbol)(p);
+ itemmap[uid] = p;
+ free(symbol);
+ free(items[uid]);
+ items[uid] = NULL;
+ }
+ return itemmap[uid];
+}
+
+#define xx(s) static void do##s(rcc_interface_ty);
+xx(Export)
+xx(Import)
+xx(Global)
+xx(Local)
+xx(Address)
+xx(Segment)
+xx(Defaddress)
+xx(Deflabel)
+xx(Defconst)
+xx(Defconstf)
+xx(Defstring)
+xx(Space)
+xx(Function)
+xx(Blockbeg)
+xx(Blockend)
+xx(Forest)
+#undef xx
+static void (*doX[])(rcc_interface_ty in) = {
+#define xx(s) 0,
+xx(Export)
+xx(Import)
+xx(Global)
+xx(Local)
+xx(Address)
+xx(Segment)
+xx(Defaddress)
+xx(Deflabel)
+xx(Defconst)
+xx(Defconstf)
+xx(Defstring)
+xx(Space)
+xx(Function)
+xx(Blockbeg)
+xx(Blockend)
+xx(Forest)
+ 0
+#undef xx
+};
+
+static void interface(rcc_interface_ty in) {
+ assert(in);
+ (*doX[in->kind])(in);
+ free(in);
+}
+
+static void doExport(rcc_interface_ty in) {
+ (*IR->export)(uid2symbol(in->v.rcc_Export.p));
+}
+
+static void doImport(rcc_interface_ty in) {
+ Symbol p = uid2symbol(in->v.rcc_Export.p);
+
+ (*IR->import)(p);
+ p->defined = 1;
+}
+
+static void doGlobal(rcc_interface_ty in) {
+ Symbol p = uid2symbol(in->v.rcc_Global.p);
+
+ p->u.seg = in->v.rcc_Global.seg;
+ (*IR->global)(p);
+ p->defined = 1;
+}
+
+static void doLocal(rcc_interface_ty in) {
+ int uid = in->v.rcc_Local.uid;
+
+ assert(uid >= 0 && uid < nuids);
+ assert(items[uid] == NULL);
+ items[uid] = rcc_Symbol(uid, in->v.rcc_Local.p);
+ if (in->v.rcc_Local.p->scope >= LOCAL)
+ addlocal(uid2symbol(uid));
+}
+
+static void doAddress(rcc_interface_ty in) {
+ int uid = in->v.rcc_Address.uid;
+ Symbol p = uid2symbol(in->v.rcc_Address.p);
+
+ assert(uid >= 0 && uid < nuids);
+ assert(items[uid] == NULL);
+ items[uid] = rcc_Symbol(uid, in->v.rcc_Address.q);
+ if (p->scope == GLOBAL || p->sclass == STATIC || p->sclass == EXTERN)
+ (*IR->address)(uid2symbol(uid), p, in->v.rcc_Address.n);
+ else {
+ Code cp = code(Address);
+ cp->u.addr.sym = uid2symbol(uid);
+ cp->u.addr.base = p;
+ cp->u.addr.offset = in->v.rcc_Address.n;
+ }
+}
+
+static void doSegment(rcc_interface_ty in) {
+ (*IR->segment)(in->v.rcc_Segment.seg);
+}
+
+static void doDefaddress(rcc_interface_ty in) {
+ (*IR->defaddress)(uid2symbol(in->v.rcc_Defaddress.p));
+}
+
+static void doDeflabel(rcc_interface_ty in) {
+ (*IR->defaddress)(findlabel(in->v.rcc_Deflabel.label));
+}
+
+static void doDefconst(rcc_interface_ty in) {
+ Value v;
+
+ v.i = in->v.rcc_Defconst.value;
+ (*IR->defconst)(in->v.rcc_Defconst.suffix, in->v.rcc_Defconst.size, v);
+}
+
+static void doDefconstf(rcc_interface_ty in) {
+ Value v;
+ unsigned *p = (unsigned *)&v.d;
+
+ p[swap] = in->v.rcc_Defconstf.value->msb;
+ p[1-swap] = in->v.rcc_Defconstf.value->lsb;
+ (*IR->defconst)(F, in->v.rcc_Defconstf.size, v);
+ free(in->v.rcc_Defconstf.value);
+}
+
+static void doDefstring(rcc_interface_ty in) {
+ (*IR->defstring)(in->v.rcc_Defstring.s.len, (char *)in->v.rcc_Defstring.s.str);
+ free((char *)in->v.rcc_Defstring.s.str);
+}
+
+static void doSpace(rcc_interface_ty in) {
+ (*IR->space)(in->v.rcc_Space.n);
+}
+
+static void doFunction(rcc_interface_ty in) {
+ int i, n;
+ Symbol *caller, *callee;
+
+ /*
+ Initialize:
+ define the function symbol,
+ initialize callee and caller arrays.
+ */
+ cfunc = uid2symbol(in->v.rcc_Function.f);
+ labels = table(NULL, LABELS);
+ enterscope();
+ n = Seq_length(in->v.rcc_Function.caller);
+ caller = newarray(n + 1, sizeof *caller, FUNC);
+ for (i = 0; i < n; i++) {
+ int *uid = Seq_remlo(in->v.rcc_Function.caller);
+ caller[i] = uid2symbol(*uid);
+ free(uid);
+ }
+ caller[i] = NULL;
+ Seq_free(&in->v.rcc_Function.caller);
+ callee = newarray(n + 1, sizeof *callee, FUNC);
+ for (i = 0; i < n; i++) {
+ int *uid = Seq_remlo(in->v.rcc_Function.callee);
+ callee[i] = uid2symbol(*uid);
+ free(uid);
+ }
+ callee[i] = NULL;
+ Seq_free(&in->v.rcc_Function.callee);
+ cfunc->u.f.callee = callee;
+ cfunc->defined = 1;
+ /*
+ Initialize the code list,
+ traverse the interfaces inside the function;
+ each call appends code list entries.
+ */
+ codelist = &codehead;
+ codelist->next = NULL;
+ n = Seq_length(in->v.rcc_Function.codelist);
+ for (i = 0; i < n; i++)
+ interface(Seq_remlo(in->v.rcc_Function.codelist));
+ Seq_free(&in->v.rcc_Function.codelist);
+ /*
+ Call the back end,
+ Wrap-up.
+ */
+ exitscope();
+ (*IR->function)(cfunc, caller, callee, in->v.rcc_Function.ncalls);
+ cfunc = NULL;
+ labels = NULL;
+}
+
+static struct block {
+ Code begin;
+ struct block *prev;
+} *blockstack = NULL;
+
+static void doBlockbeg(rcc_interface_ty in) {
+ struct block *b;
+ Code cp = code(Blockbeg);
+
+ enterscope();
+ cp->u.block.level = level;
+ cp->u.block.locals = newarray(1, sizeof *cp->u.block.locals, FUNC);
+ cp->u.block.locals[0] = NULL;
+ cp->u.block.identifiers = NULL;
+ cp->u.block.types = NULL;
+ NEW(b, FUNC);
+ b->begin = cp;
+ b->prev = blockstack;
+ blockstack = b;
+}
+
+static void doBlockend(rcc_interface_ty in) {
+ assert(blockstack);
+ code(Blockend)->u.begin = blockstack->begin;
+ blockstack = blockstack->prev;
+ exitscope();
+}
+
+static Node visit(rcc_node_ty node) {
+ int op;
+ Node left = NULL, right = NULL, p = NULL;
+ Symbol sym = NULL;
+
+ switch (node->kind) {
+#define T(x) rcc_##x##_enum
+ case T(CSE): {
+ Symbol q = uid2symbol(node->v.rcc_CSE.uid);
+ assert(q->temporary);
+ q->u.t.cse = p = visit(node->v.rcc_CSE.node);
+ break;
+ }
+ case T(CNST): {
+ Value v;
+ v.i = node->v.rcc_CNST.value;
+ sym = constant(btot(node->suffix, node->size), v);
+ op = CNST;
+ break;
+ }
+ case T(CNSTF): {
+ Value v;
+ unsigned *p = (unsigned *)&v.d;
+ p[swap] = node->v.rcc_CNSTF.value->msb;
+ p[1-swap] = node->v.rcc_CNSTF.value->lsb;
+ sym = constant(btot(node->suffix, node->size), v);
+ free(node->v.rcc_CNSTF.value);
+ op = CNST;
+ break;
+ }
+ case T(ARG):
+ p = newnode(ARG + node->suffix + sizeop(node->size),
+ visit(node->v.rcc_ARG.left), NULL,
+ intconst(node->v.rcc_ARG.len));
+ p->syms[1] = intconst(node->v.rcc_ARG.align);
+ break;
+ case T(ASGN):
+ p = newnode(ASGN + node->suffix + sizeop(node->size),
+ visit(node->v.rcc_ASGN.left), visit(node->v.rcc_ASGN.right),
+ intconst(node->v.rcc_ASGN.len));
+ p->syms[1] = intconst(node->v.rcc_ASGN.align);
+ break;
+ case T(CVT):
+ op = node->v.rcc_CVT.op;
+ left = visit(node->v.rcc_CVT.left);
+ sym = intconst(node->v.rcc_CVT.fromsize);
+ break;
+ case T(CALL):
+ op = CALL;
+ left = visit(node->v.rcc_CALL.left);
+ NEW0(sym, FUNC);
+ sym->type = uid2type(node->v.rcc_CALL.type);
+ break;
+ case T(CALLB):
+ op = CALL;
+ left = visit(node->v.rcc_CALLB.left);
+ right = visit(node->v.rcc_CALLB.right);
+ NEW0(sym, FUNC);
+ sym->type = uid2type(node->v.rcc_CALLB.type);
+ break;
+ case T(RET):
+ op = RET;
+ break;
+ case T(ADDRG):
+ op = ADDRG;
+ sym = uid2symbol(node->v.rcc_ADDRG.uid);
+ break;
+ case T(ADDRL):
+ op = ADDRL;
+ sym = uid2symbol(node->v.rcc_ADDRG.uid);
+ break;
+ case T(ADDRF):
+ op = ADDRF;
+ sym = uid2symbol(node->v.rcc_ADDRG.uid);
+ break;
+ case T(Unary):
+ op = node->v.rcc_Unary.op;
+ left = visit(node->v.rcc_Unary.left);
+ break;
+ case T(Binary):
+ op = node->v.rcc_Binary.op;
+ left = visit(node->v.rcc_Binary.left);
+ right = visit(node->v.rcc_Binary.right);
+ break;
+ case T(Compare):
+ op = node->v.rcc_Compare.op;
+ left = visit(node->v.rcc_Compare.left);
+ right = visit(node->v.rcc_Compare.right);
+ sym = findlabel(node->v.rcc_Compare.label);
+ break;
+ case T(LABEL):
+ op = LABEL;
+ sym = findlabel(node->v.rcc_LABEL.label);
+ break;
+ case T(BRANCH):
+ op = JUMP;
+ left = newnode(ADDRG+P+sizeop(voidptype->size), NULL, NULL, findlabel(node->v.rcc_BRANCH.label));
+ break;
+#undef T
+ default: assert(0);
+ }
+ if (p == NULL)
+ p = newnode(op + node->suffix + sizeop(node->size), left, right, sym);
+ free(node);
+ return p;
+}
+
+static void doForest(rcc_interface_ty in) {
+ Node *tail = &code(Gen)->u.forest;
+ int i, n = Seq_length(in->v.rcc_Forest.nodes);
+
+ for (i = 0; i < n; i++) {
+ *tail = visit(Seq_remlo(in->v.rcc_Forest.nodes));
+ assert(*tail);
+ tail = &(*tail)->link;
+ }
+ *tail = NULL;
+ Seq_free(&in->v.rcc_Forest.nodes);
+}
+
+int main(int argc, char *argv[]) {
+ int i, version;
+ float stamp = (assert(strstr(rcsid, ",v")), strtod(strstr(rcsid, ",v")+2, NULL))
+;
+ char *infile = NULL, *outfile = NULL;
+ rcc_program_ty pickle;
+
+ for (i = 1; i < argc; i++)
+ if (*argv[i] != '-' || strcmp(argv[i], "-") == 0) {
+ if (infile == NULL)
+ infile = argv[i];
+ else if (outfile == NULL)
+ outfile = argv[i];
+ }
+ if (infile != NULL && strcmp(infile, "-") != 0
+ && freopen(infile, "rb", stdin) == NULL) {
+ fprint(stderr, "%s: can't read `%s'\n", argv[0], infile);
+ exit(EXIT_FAILURE);
+ }
+#if WIN32
+ else
+ _setmode(_fileno(stdin), _O_BINARY);
+#endif
+ if (outfile != NULL && strcmp(outfile, "-") != 0
+ && freopen(outfile, "w", stdout) == NULL) {
+ fprint(stderr, "%s: can't write `%s'\n", argv[0], outfile);
+ exit(EXIT_FAILURE);
+ }
+ version = read_int(stdin);
+ assert(version/100 == (int)stamp);
+ pickle = rcc_read_program(stdin);
+ argc = pickle->argc;
+ argv = newarray(argc + 1, sizeof *argv, PERM);
+ {
+ for (i = 0; i < argc; i++) {
+ string_ty *arg = Seq_remlo(pickle->argv);
+ argv[i] = (char *)arg->str;
+ free(arg);
+ }
+ argv[i] = NULL;
+ assert(i == argc);
+ Seq_free(&pickle->argv);
+ }
+ for (i = argc - 1; i > 0; i--)
+ if (strncmp(argv[i], "-target=", 8) == 0)
+ break;
+ if (i > 0) {
+ int j;
+ for (j = 0; bindings[j].name && bindings[j].ir; j++)
+ if (strcmp(&argv[i][8], bindings[j].name) == 0) {
+ IR = bindings[j].ir;
+ break;
+ }
+ }
+ if (!IR) {
+ fprint(stderr, "%s: unknown target", argv[0]);
+ if (i > 0)
+ fprint(stderr, " `%s'", &argv[i][8]);
+ fprint(stderr, "; must specify one of\n");
+ for (i = 0; bindings[i].name; i++)
+ fprint(stderr, "\t-target=%s\n", bindings[i].name);
+ exit(EXIT_FAILURE);
+ }
+ IR->wants_dag = 0; /* pickle's hold trees */
+ init(argc, argv);
+ genlabel(pickle->nlabels);
+ level = GLOBAL;
+ {
+ int i, count;
+ nuids = pickle->nuids;
+ items = newarray(nuids, sizeof *items, PERM);
+ itemmap = newarray(nuids, sizeof *items, PERM);
+ for (i = 0; i < nuids; i++) {
+ itemmap[i] = NULL;
+ items[i] = NULL;
+ }
+ (*IR->progbeg)(argc, argv);
+ count = Seq_length(pickle->items);
+ for (i = 0; i < count; i++) {
+ rcc_item_ty item = Seq_remlo(pickle->items);
+ int uid = item->uid;
+ assert(uid >= 0 && uid < nuids);
+ assert(items[uid] == NULL);
+ items[uid] = item;
+ }
+ Seq_free(&pickle->items);
+#define xx(s) assert(rcc_##s##_enum < sizeof doX/sizeof doX[0] && doX[rcc_##s##_enum]==0); \
+ doX[rcc_##s##_enum] = do##s;
+ xx(Export)
+ xx(Import)
+ xx(Global)
+ xx(Local)
+ xx(Address)
+ xx(Segment)
+ xx(Defaddress)
+ xx(Deflabel)
+ xx(Defconst)
+ xx(Defconstf)
+ xx(Defstring)
+ xx(Space)
+ xx(Function)
+ xx(Blockbeg)
+ xx(Blockend)
+ xx(Forest)
+#undef xx
+ count = Seq_length(pickle->interfaces);
+ for (i = 0; i < count; i++)
+ interface(Seq_remlo(pickle->interfaces));
+ Seq_free(&pickle->interfaces);
+ free(pickle);
+ (*IR->progend)();
+ }
+ deallocate(PERM);
+ return errcnt > 0;
+}
+
+/* main_init - process program arguments */
+void main_init(int argc, char *argv[]) {
+ int i;
+ static int inited;
+
+ if (inited)
+ return;
+ inited = 1;
+ for (i = 1; i < argc; i++)
+ if (strcmp(argv[i], "-g") == 0 || strcmp(argv[i], "-g2") == 0)
+ glevel = 2;
+ else if (strcmp(argv[i], "-w") == 0)
+ wflag++;
+ else if (strcmp(argv[i], "-v") == 0) {
+ fprint(stderr, "%s %s\n", argv[0], rcsid);
+ verbose++;
+ } else if (strncmp(argv[i], "-errout=", 8) == 0) {
+ FILE *f = fopen(argv[i]+8, "w");
+ if (f == NULL) {
+ fprint(stderr, "%s: can't write errors to `%s'\n", argv[0], argv[i]+8);
+ exit(EXIT_FAILURE);
+ }
+ fclose(f);
+ f = freopen(argv[i]+8, "w", stderr);
+ assert(f);
+ } else if (strncmp(argv[i], "-e", 2) == 0) {
+ int x;
+ if ((x = strtol(&argv[i][2], NULL, 0)) > 0)
+ errlimit = x;
+ }
+}
+
+void init(int argc, char *argv[]) {
+ {extern void main_init(int, char *[]); main_init(argc, argv);}
+ {extern void prof_init(int, char *[]); prof_init(argc, argv);}
+ {extern void trace_init(int, char *[]); trace_init(argc, argv);}
+ {extern void type_init(int, char *[]); type_init(argc, argv);}
+ {extern void x86linux_init(int, char *[]); x86linux_init(argc, argv);}
+}
diff --git a/lcc/src/prof.c b/lcc/src/prof.c
index 59ce879..a5123b4 100755
--- a/lcc/src/prof.c
+++ b/lcc/src/prof.c
@@ -1,227 +1,227 @@
-#include "c.h"
-
-
-struct callsite {
- char *file, *name;
- union coordinate {
- unsigned int coord;
- struct { unsigned int y:16,x:10,index:6; } le;
- struct { unsigned int index:6,x:10,y:16; } be;
- } u;
-};
-struct func {
- struct func *link;
- struct caller *callers;
- char *name;
- union coordinate src;
-};
-struct map { /* source code map; 200 coordinates/map */
- int size;
- union coordinate u[200];
-};
-
-int npoints; /* # of execution points if -b specified */
-int ncalled = -1; /* #times prof.out says current function was called */
-static Symbol YYlink; /* symbol for file's struct _bbdata */
-static Symbol YYcounts; /* symbol for _YYcounts if -b specified */
-static List maplist; /* list of struct map *'s */
-static List filelist; /* list of file names */
-static Symbol funclist; /* list of struct func *'s */
-static Symbol afunc; /* current function's struct func */
-
-/* bbcall - build tree to set _callsite at call site *cp, emit call site data */
-static void bbcall(Symbol yycounts, Coordinate *cp, Tree *e) {
- static Symbol caller;
- Value v;
- union coordinate u;
- Symbol p = genident(STATIC, array(voidptype, 0, 0), GLOBAL);
- Tree t = *e;
-
- defglobal(p, LIT);
- defpointer(cp->file ? mkstr(cp->file)->u.c.loc : (Symbol)0);
- defpointer(mkstr(cfunc->name)->u.c.loc);
- if (IR->little_endian) {
- u.le.x = cp->x;
- u.le.y = cp->y;
- } else {
- u.be.x = cp->x;
- u.be.y = cp->y;
- }
- (*IR->defconst)(U, unsignedtype->size, (v.u = u.coord, v));
- if (caller == 0) {
- caller = mksymbol(EXTERN, "_caller", ptr(voidptype));
- caller->defined = 0;
- }
- if (generic((*e)->op) != CALL)
- t = (*e)->kids[0];
- assert(generic(t->op) == CALL);
- t = tree(t->op, t->type,
- tree(RIGHT, t->kids[0]->type,
- t->kids[0],
- tree(RIGHT, t->kids[0]->type, asgn(caller, idtree(p)), t->kids[0])),
- t->kids[1]);
- if (generic((*e)->op) != CALL)
- t = tree((*e)->op, (*e)->type, t, (*e)->kids[1]);
- *e = t;
-}
-
-/* bbentry - return tree for _prologue(&afunc, &YYlink)' */
-static void bbentry(Symbol yylink, Symbol f) {
- static Symbol prologue;
-
- afunc = genident(STATIC, array(voidptype, 4, 0), GLOBAL);
- if (prologue == 0) {
- prologue = mksymbol(EXTERN, "_prologue", ftype(inttype, voidptype));
- prologue->defined = 0;
- }
- walk(vcall(prologue, voidtype, pointer(idtree(afunc)), pointer(idtree(yylink)), NULL), 0, 0);
-
-}
-
-/* bbexit - return tree for _epilogue(&afunc)' */
-static void bbexit(Symbol yylink, Symbol f, Tree e) {
- static Symbol epilogue;
-
- if (epilogue == 0) {
- epilogue = mksymbol(EXTERN, "_epilogue", ftype(inttype, voidptype));
- epilogue->defined = 0;
- }
- walk(vcall(epilogue, voidtype, pointer(idtree(afunc)), NULL), 0, 0);
-}
-
-/* bbfile - add file to list of file names, return its index */
-static int bbfile(char *file) {
- if (file) {
- List lp;
- int i = 1;
- if ((lp = filelist) != NULL)
- do {
- lp = lp->link;
- if (((Symbol)lp->x)->u.c.v.p == file)
- return i;
- i++;
- } while (lp != filelist);
- filelist = append(mkstr(file), filelist);
- return i;
- }
- return 0;
-}
-
-/* bbfunc - emit function name and src coordinates */
-static void bbfunc(Symbol yylink, Symbol f) {
- Value v;
- union coordinate u;
-
- defglobal(afunc, DATA);
- defpointer(funclist);
- defpointer(NULL);
- defpointer(mkstr(f->name)->u.c.loc);
- if (IR->little_endian) {
- u.le.x = f->u.f.pt.x;
- u.le.y = f->u.f.pt.y;
- u.le.index = bbfile(f->u.f.pt.file);
- } else {
- u.be.x = f->u.f.pt.x;
- u.be.y = f->u.f.pt.y;
- u.be.index = bbfile(f->u.f.pt.file);
- }
- (*IR->defconst)(U, unsignedtype->size, (v.u = u.coord, v));
- funclist = afunc;
-}
-
-/* bbincr - build tree to increment execution point at *cp */
-static void bbincr(Symbol yycounts, Coordinate *cp, Tree *e) {
- struct map *mp = maplist->x;
- Tree t;
-
- /* append *cp to source map */
- if (mp->size >= NELEMS(mp->u)) {
- NEW(mp, PERM);
- mp->size = 0;
- maplist = append(mp, maplist);
- }
- if (IR->little_endian) {
- mp->u[mp->size].le.x = cp->x;
- mp->u[mp->size].le.y = cp->y;
- mp->u[mp->size++].le.index = bbfile(cp->file);
- } else {
- mp->u[mp->size].be.x = cp->x;
- mp->u[mp->size].be.y = cp->y;
- mp->u[mp->size++].be.index = bbfile(cp->file);
- }
- t = incr('+', rvalue((*optree['+'])(ADD, pointer(idtree(yycounts)),
- consttree(npoints++, inttype))), consttree(1, inttype));
- if (*e)
- *e = tree(RIGHT, (*e)->type, t, *e);
- else
- *e = t;
-}
-
-/* bbvars - emit definition for basic block counting data */
-static void bbvars(Symbol yylink) {
- int i, j, n = npoints;
- Value v;
- struct map **mp;
- Symbol coords, files, *p;
-
- if (!YYcounts && !yylink)
- return;
- if (YYcounts) {
- if (n <= 0)
- n = 1;
- YYcounts->type = array(unsignedtype, n, 0);
- defglobal(YYcounts, BSS);
- }
- files = genident(STATIC, array(charptype, 1, 0), GLOBAL);
- defglobal(files, LIT);
- for (p = ltov(&filelist, PERM); *p; p++)
- defpointer((*p)->u.c.loc);
- defpointer(NULL);
- coords = genident(STATIC, array(unsignedtype, n, 0), GLOBAL);
- defglobal(coords, LIT);
- for (i = n, mp = ltov(&maplist, PERM); *mp; i -= (*mp)->size, mp++)
- for (j = 0; j < (*mp)->size; j++)
- (*IR->defconst)(U, unsignedtype->size, (v.u = (*mp)->u[j].coord, v));
- if (i > 0)
- (*IR->space)(i*coords->type->type->size);
- defpointer(NULL);
- defglobal(yylink, DATA);
- defpointer(NULL);
- (*IR->defconst)(U, unsignedtype->size, (v.u = n, v));
- defpointer(YYcounts);
- defpointer(coords);
- defpointer(files);
- defpointer(funclist);
-}
-
-/* profInit - initialize basic block profiling options */
-void prof_init(int argc, char *argv[]) {
- int i;
- static int inited;
-
- if (inited)
- return;
- inited = 1;
- type_init(argc, argv);
- if (IR)
- for (i = 1; i < argc; i++)
- if (strncmp(argv[i], "-a", 2) == 0) {
- if (ncalled == -1
- && process(argv[i][2] ? &argv[i][2] : "prof.out") > 0)
- ncalled = 0;
- } else if ((strcmp(argv[i], "-b") == 0
- || strcmp(argv[i], "-C") == 0) && YYlink == 0) {
- YYlink = genident(STATIC, array(unsignedtype, 0, 0), GLOBAL);
- attach((Apply)bbentry, YYlink, &events.entry);
- attach((Apply)bbexit, YYlink, &events.returns);
- attach((Apply)bbfunc, YYlink, &events.exit);
- attach((Apply)bbvars, YYlink, &events.end);
- if (strcmp(argv[i], "-b") == 0) {
- YYcounts = genident(STATIC, array(unsignedtype, 0, 0), GLOBAL);
- maplist = append(allocate(sizeof (struct map), PERM), maplist);
- ((struct map *)maplist->x)->size = 0;
- attach((Apply)bbcall, YYcounts, &events.calls);
- attach((Apply)bbincr, YYcounts, &events.points);
- }
- }
-}
+#include "c.h"
+
+
+struct callsite {
+ char *file, *name;
+ union coordinate {
+ unsigned int coord;
+ struct { unsigned int y:16,x:10,index:6; } le;
+ struct { unsigned int index:6,x:10,y:16; } be;
+ } u;
+};
+struct func {
+ struct func *link;
+ struct caller *callers;
+ char *name;
+ union coordinate src;
+};
+struct map { /* source code map; 200 coordinates/map */
+ int size;
+ union coordinate u[200];
+};
+
+int npoints; /* # of execution points if -b specified */
+int ncalled = -1; /* #times prof.out says current function was called */
+static Symbol YYlink; /* symbol for file's struct _bbdata */
+static Symbol YYcounts; /* symbol for _YYcounts if -b specified */
+static List maplist; /* list of struct map *'s */
+static List filelist; /* list of file names */
+static Symbol funclist; /* list of struct func *'s */
+static Symbol afunc; /* current function's struct func */
+
+/* bbcall - build tree to set _callsite at call site *cp, emit call site data */
+static void bbcall(Symbol yycounts, Coordinate *cp, Tree *e) {
+ static Symbol caller;
+ Value v;
+ union coordinate u;
+ Symbol p = genident(STATIC, array(voidptype, 0, 0), GLOBAL);
+ Tree t = *e;
+
+ defglobal(p, LIT);
+ defpointer(cp->file ? mkstr(cp->file)->u.c.loc : (Symbol)0);
+ defpointer(mkstr(cfunc->name)->u.c.loc);
+ if (IR->little_endian) {
+ u.le.x = cp->x;
+ u.le.y = cp->y;
+ } else {
+ u.be.x = cp->x;
+ u.be.y = cp->y;
+ }
+ (*IR->defconst)(U, unsignedtype->size, (v.u = u.coord, v));
+ if (caller == 0) {
+ caller = mksymbol(EXTERN, "_caller", ptr(voidptype));
+ caller->defined = 0;
+ }
+ if (generic((*e)->op) != CALL)
+ t = (*e)->kids[0];
+ assert(generic(t->op) == CALL);
+ t = tree(t->op, t->type,
+ tree(RIGHT, t->kids[0]->type,
+ t->kids[0],
+ tree(RIGHT, t->kids[0]->type, asgn(caller, idtree(p)), t->kids[0])),
+ t->kids[1]);
+ if (generic((*e)->op) != CALL)
+ t = tree((*e)->op, (*e)->type, t, (*e)->kids[1]);
+ *e = t;
+}
+
+/* bbentry - return tree for _prologue(&afunc, &YYlink)' */
+static void bbentry(Symbol yylink, Symbol f) {
+ static Symbol prologue;
+
+ afunc = genident(STATIC, array(voidptype, 4, 0), GLOBAL);
+ if (prologue == 0) {
+ prologue = mksymbol(EXTERN, "_prologue", ftype(inttype, voidptype));
+ prologue->defined = 0;
+ }
+ walk(vcall(prologue, voidtype, pointer(idtree(afunc)), pointer(idtree(yylink)), NULL), 0, 0);
+
+}
+
+/* bbexit - return tree for _epilogue(&afunc)' */
+static void bbexit(Symbol yylink, Symbol f, Tree e) {
+ static Symbol epilogue;
+
+ if (epilogue == 0) {
+ epilogue = mksymbol(EXTERN, "_epilogue", ftype(inttype, voidptype));
+ epilogue->defined = 0;
+ }
+ walk(vcall(epilogue, voidtype, pointer(idtree(afunc)), NULL), 0, 0);
+}
+
+/* bbfile - add file to list of file names, return its index */
+static int bbfile(char *file) {
+ if (file) {
+ List lp;
+ int i = 1;
+ if ((lp = filelist) != NULL)
+ do {
+ lp = lp->link;
+ if (((Symbol)lp->x)->u.c.v.p == file)
+ return i;
+ i++;
+ } while (lp != filelist);
+ filelist = append(mkstr(file), filelist);
+ return i;
+ }
+ return 0;
+}
+
+/* bbfunc - emit function name and src coordinates */
+static void bbfunc(Symbol yylink, Symbol f) {
+ Value v;
+ union coordinate u;
+
+ defglobal(afunc, DATA);
+ defpointer(funclist);
+ defpointer(NULL);
+ defpointer(mkstr(f->name)->u.c.loc);
+ if (IR->little_endian) {
+ u.le.x = f->u.f.pt.x;
+ u.le.y = f->u.f.pt.y;
+ u.le.index = bbfile(f->u.f.pt.file);
+ } else {
+ u.be.x = f->u.f.pt.x;
+ u.be.y = f->u.f.pt.y;
+ u.be.index = bbfile(f->u.f.pt.file);
+ }
+ (*IR->defconst)(U, unsignedtype->size, (v.u = u.coord, v));
+ funclist = afunc;
+}
+
+/* bbincr - build tree to increment execution point at *cp */
+static void bbincr(Symbol yycounts, Coordinate *cp, Tree *e) {
+ struct map *mp = maplist->x;
+ Tree t;
+
+ /* append *cp to source map */
+ if (mp->size >= NELEMS(mp->u)) {
+ NEW(mp, PERM);
+ mp->size = 0;
+ maplist = append(mp, maplist);
+ }
+ if (IR->little_endian) {
+ mp->u[mp->size].le.x = cp->x;
+ mp->u[mp->size].le.y = cp->y;
+ mp->u[mp->size++].le.index = bbfile(cp->file);
+ } else {
+ mp->u[mp->size].be.x = cp->x;
+ mp->u[mp->size].be.y = cp->y;
+ mp->u[mp->size++].be.index = bbfile(cp->file);
+ }
+ t = incr('+', rvalue((*optree['+'])(ADD, pointer(idtree(yycounts)),
+ consttree(npoints++, inttype))), consttree(1, inttype));
+ if (*e)
+ *e = tree(RIGHT, (*e)->type, t, *e);
+ else
+ *e = t;
+}
+
+/* bbvars - emit definition for basic block counting data */
+static void bbvars(Symbol yylink) {
+ int i, j, n = npoints;
+ Value v;
+ struct map **mp;
+ Symbol coords, files, *p;
+
+ if (!YYcounts && !yylink)
+ return;
+ if (YYcounts) {
+ if (n <= 0)
+ n = 1;
+ YYcounts->type = array(unsignedtype, n, 0);
+ defglobal(YYcounts, BSS);
+ }
+ files = genident(STATIC, array(charptype, 1, 0), GLOBAL);
+ defglobal(files, LIT);
+ for (p = ltov(&filelist, PERM); *p; p++)
+ defpointer((*p)->u.c.loc);
+ defpointer(NULL);
+ coords = genident(STATIC, array(unsignedtype, n, 0), GLOBAL);
+ defglobal(coords, LIT);
+ for (i = n, mp = ltov(&maplist, PERM); *mp; i -= (*mp)->size, mp++)
+ for (j = 0; j < (*mp)->size; j++)
+ (*IR->defconst)(U, unsignedtype->size, (v.u = (*mp)->u[j].coord, v));
+ if (i > 0)
+ (*IR->space)(i*coords->type->type->size);
+ defpointer(NULL);
+ defglobal(yylink, DATA);
+ defpointer(NULL);
+ (*IR->defconst)(U, unsignedtype->size, (v.u = n, v));
+ defpointer(YYcounts);
+ defpointer(coords);
+ defpointer(files);
+ defpointer(funclist);
+}
+
+/* profInit - initialize basic block profiling options */
+void prof_init(int argc, char *argv[]) {
+ int i;
+ static int inited;
+
+ if (inited)
+ return;
+ inited = 1;
+ type_init(argc, argv);
+ if (IR)
+ for (i = 1; i < argc; i++)
+ if (strncmp(argv[i], "-a", 2) == 0) {
+ if (ncalled == -1
+ && process(argv[i][2] ? &argv[i][2] : "prof.out") > 0)
+ ncalled = 0;
+ } else if ((strcmp(argv[i], "-b") == 0
+ || strcmp(argv[i], "-C") == 0) && YYlink == 0) {
+ YYlink = genident(STATIC, array(unsignedtype, 0, 0), GLOBAL);
+ attach((Apply)bbentry, YYlink, &events.entry);
+ attach((Apply)bbexit, YYlink, &events.returns);
+ attach((Apply)bbfunc, YYlink, &events.exit);
+ attach((Apply)bbvars, YYlink, &events.end);
+ if (strcmp(argv[i], "-b") == 0) {
+ YYcounts = genident(STATIC, array(unsignedtype, 0, 0), GLOBAL);
+ maplist = append(allocate(sizeof (struct map), PERM), maplist);
+ ((struct map *)maplist->x)->size = 0;
+ attach((Apply)bbcall, YYcounts, &events.calls);
+ attach((Apply)bbincr, YYcounts, &events.points);
+ }
+ }
+}
diff --git a/lcc/src/profio.c b/lcc/src/profio.c
index 3e74770..e1ce8da 100755
--- a/lcc/src/profio.c
+++ b/lcc/src/profio.c
@@ -1,276 +1,276 @@
-/* C compiler: prof.out input
-
-prof.out format:
-#files
- name
- ... (#files-1 times)
-#functions
- name file# x y count caller file x y
- ... (#functions-1 times)
-#points
- file# x y count
- ... (#points-1 times)
-*/
-#include "c.h"
-
-
-struct count { /* count data: */
- int x, y; /* source coordinate */
- int count; /* associated execution count */
-};
-
-#define MAXTOKEN 64
-
-struct file { /* per-file prof.out data: */
- struct file *link; /* link to next file */
- char *name; /* file name */
- int size; /* size of counts[] */
- int count; /* counts[0..count-1] hold valid data */
- struct count *counts; /* count data */
- struct func { /* function data: */
- struct func *link; /* link to next function */
- char *name; /* function name */
- struct count count; /* total number of calls */
- struct caller { /* caller data: */
- struct caller *link; /* link to next caller */
- char *name; /* caller's name */
- char *file; /* call site: file, x, y */
- int x, y;
- int count; /* number of calls from this site */
- } *callers;
- } *funcs; /* list of functions */
-} *filelist;
-FILE *fp;
-
-/* acaller - add caller and site (file,x,y) to callee's callers list */
-static void acaller(char *caller, char *file, int x, int y, int count, struct func *callee) {
- struct caller *q;
-
- assert(callee);
- for (q = callee->callers; q && (caller != q->name
- || file != q->file || x != q->x || y != q->y); q = q->link)
- ;
- if (!q) {
- struct caller **r;
- NEW(q, PERM);
- q->name = caller;
- q->file = file;
- q->x = x;
- q->y = y;
- q->count = 0;
- for (r = &callee->callers; *r && (strcmp(q->name, (*r)->name) > 0
- || strcmp(q->file, (*r)->file) > 0 || q->y > (*r)->y || q->y > (*r)->y); r = &(*r)->link)
- ;
- q->link = *r;
- *r = q;
- }
- q->count += count;
-}
-
-/* compare - return <0, 0, >0 if a<b, a==b, a>b, resp. */
-static int compare(struct count *a, struct count *b) {
- if (a->y == b->y)
- return a->x - b->x;
- return a->y - b->y;
-}
-
-/* findfile - return file name's file list entry, or 0 */
-static struct file *findfile(char *name) {
- struct file *p;
-
- for (p = filelist; p; p = p->link)
- if (p->name == name)
- return p;
- return 0;
-}
-
-/* afunction - add function name and its data to file's function list */
-static struct func *afunction(char *name, char *file, int x, int y, int count) {
- struct file *p = findfile(file);
- struct func *q;
-
- assert(p);
- for (q = p->funcs; q && name != q->name; q = q->link)
- ;
- if (!q) {
- struct func **r;
- NEW(q, PERM);
- q->name = name;
- q->count.x = x;
- q->count.y = y;
- q->count.count = 0;
- q->callers = 0;
- for (r = &p->funcs; *r && compare(&q->count, &(*r)->count) > 0; r = &(*r)->link)
- ;
- q->link = *r;
- *r = q;
- }
- q->count.count += count;
- return q;
-}
-
-/* apoint - append execution point i to file's data */
-static void apoint(int i, char *file, int x, int y, int count) {
- struct file *p = findfile(file);
-
- assert(p);
- if (i >= p->size) {
- int j;
- if (p->size == 0) {
- p->size = i >= 200 ? 2*i : 200;
- p->counts = newarray(p->size, sizeof *p->counts, PERM);
- } else {
- struct count *new;
- p->size = 2*i;
- new = newarray(p->size, sizeof *new, PERM);
- for (j = 0; j < p->count; j++)
- new[j] = p->counts[j];
- p->counts = new;
- }
- for (j = p->count; j < p->size; j++) {
- static struct count z;
- p->counts[j] = z;
- }
- }
- p->counts[i].x = x;
- p->counts[i].y = y;
- p->counts[i].count += count;
- if (i >= p->count)
- p->count = i + 1;
-}
-
-/* findcount - return count associated with (file,x,y) or -1 */
-int findcount(char *file, int x, int y) {
- static struct file *cursor;
-
- if (cursor == 0 || cursor->name != file)
- cursor = findfile(file);
- if (cursor) {
- int l, u;
- struct count *c = cursor->counts;
- for (l = 0, u = cursor->count - 1; l <= u; ) {
- int k = (l + u)/2;
- if (c[k].y > y || c[k].y == y && c[k].x > x)
- u = k - 1;
- else if (c[k].y < y || c[k].y == y && c[k].x < x)
- l = k + 1;
- else
- return c[k].count;
- }
- }
- return -1;
-}
-
-/* findfunc - return count associated with function name in file or -1 */
-int findfunc(char *name, char *file) {
- static struct file *cursor;
-
- if (cursor == 0 || cursor->name != file)
- cursor = findfile(file);
- if (cursor) {
- struct func *p;
- for (p = cursor->funcs; p; p = p->link)
- if (p->name == name)
- return p->count.count;
- }
- return -1;
-}
-
-/* getd - read a nonnegative number */
-static int getd(void) {
- int c, n = 0;
-
- while ((c = getc(fp)) != EOF && (c == ' ' || c == '\n' || c == '\t'))
- ;
- if (c >= '0' && c <= '9') {
- do
- n = 10*n + (c - '0');
- while ((c = getc(fp)) >= '0' && c <= '9');
- return n;
- }
- return -1;
-}
-
-/* getstr - read a string */
-static char *getstr(void) {
- int c;
- char buf[MAXTOKEN], *s = buf;
-
- while ((c = getc(fp)) != EOF && c != ' ' && c != '\n' && c != '\t')
- if (s - buf < (int)sizeof buf - 2)
- *s++ = c;
- *s = 0;
- return s == buf ? (char *)0 : string(buf);
-}
-
-/* gather - read prof.out data from fd */
-static int gather(void) {
- int i, nfiles, nfuncs, npoints;
- char *files[64];
-
- if ((nfiles = getd()) < 0)
- return 0;
- assert(nfiles < NELEMS(files));
- for (i = 0; i < nfiles; i++) {
- if ((files[i] = getstr()) == 0)
- return -1;
- if (!findfile(files[i])) {
- struct file *new;
- NEW(new, PERM);
- new->name = files[i];
- new->size = new->count = 0;
- new->counts = 0;
- new->funcs = 0;
- new->link = filelist;
- filelist = new;
- }
- }
- if ((nfuncs = getd()) < 0)
- return -1;
- for (i = 0; i < nfuncs; i++) {
- struct func *q;
- char *name, *file;
- int f, x, y, count;
- if ((name = getstr()) == 0 || (f = getd()) <= 0
- || (x = getd()) < 0 || (y = getd()) < 0 || (count = getd()) < 0)
- return -1;
- q = afunction(name, files[f-1], x, y, count);
- if ((name = getstr()) == 0 || (file = getstr()) == 0
- || (x = getd()) < 0 || (y = getd()) < 0)
- return -1;
- if (*name != '?')
- acaller(name, file, x, y, count, q);
- }
- if ((npoints = getd()) < 0)
- return -1;
- for (i = 0; i < npoints; i++) {
- int f, x, y, count;
- if ((f = getd()) < 0 || (x = getd()) < 0 || (y = getd()) < 0
- || (count = getd()) < 0)
- return -1;
- if (f)
- apoint(i, files[f-1], x, y, count);
- }
- return 1;
-}
-
-/* process - read prof.out data from file */
-int process(char *file) {
- int more;
-
- if ((fp = fopen(file, "r")) != NULL) {
- struct file *p;
- while ((more = gather()) > 0)
- ;
- fclose(fp);
- if (more < 0)
- return more;
- for (p = filelist; p; p = p->link)
- qsort(p->counts, p->count, sizeof *p->counts,
- (int (*)(const void *, const void *))
- compare);
-
- return 1;
- }
- return 0;
-}
+/* C compiler: prof.out input
+
+prof.out format:
+#files
+ name
+ ... (#files-1 times)
+#functions
+ name file# x y count caller file x y
+ ... (#functions-1 times)
+#points
+ file# x y count
+ ... (#points-1 times)
+*/
+#include "c.h"
+
+
+struct count { /* count data: */
+ int x, y; /* source coordinate */
+ int count; /* associated execution count */
+};
+
+#define MAXTOKEN 64
+
+struct file { /* per-file prof.out data: */
+ struct file *link; /* link to next file */
+ char *name; /* file name */
+ int size; /* size of counts[] */
+ int count; /* counts[0..count-1] hold valid data */
+ struct count *counts; /* count data */
+ struct func { /* function data: */
+ struct func *link; /* link to next function */
+ char *name; /* function name */
+ struct count count; /* total number of calls */
+ struct caller { /* caller data: */
+ struct caller *link; /* link to next caller */
+ char *name; /* caller's name */
+ char *file; /* call site: file, x, y */
+ int x, y;
+ int count; /* number of calls from this site */
+ } *callers;
+ } *funcs; /* list of functions */
+} *filelist;
+FILE *fp;
+
+/* acaller - add caller and site (file,x,y) to callee's callers list */
+static void acaller(char *caller, char *file, int x, int y, int count, struct func *callee) {
+ struct caller *q;
+
+ assert(callee);
+ for (q = callee->callers; q && (caller != q->name
+ || file != q->file || x != q->x || y != q->y); q = q->link)
+ ;
+ if (!q) {
+ struct caller **r;
+ NEW(q, PERM);
+ q->name = caller;
+ q->file = file;
+ q->x = x;
+ q->y = y;
+ q->count = 0;
+ for (r = &callee->callers; *r && (strcmp(q->name, (*r)->name) > 0
+ || strcmp(q->file, (*r)->file) > 0 || q->y > (*r)->y || q->y > (*r)->y); r = &(*r)->link)
+ ;
+ q->link = *r;
+ *r = q;
+ }
+ q->count += count;
+}
+
+/* compare - return <0, 0, >0 if a<b, a==b, a>b, resp. */
+static int compare(struct count *a, struct count *b) {
+ if (a->y == b->y)
+ return a->x - b->x;
+ return a->y - b->y;
+}
+
+/* findfile - return file name's file list entry, or 0 */
+static struct file *findfile(char *name) {
+ struct file *p;
+
+ for (p = filelist; p; p = p->link)
+ if (p->name == name)
+ return p;
+ return 0;
+}
+
+/* afunction - add function name and its data to file's function list */
+static struct func *afunction(char *name, char *file, int x, int y, int count) {
+ struct file *p = findfile(file);
+ struct func *q;
+
+ assert(p);
+ for (q = p->funcs; q && name != q->name; q = q->link)
+ ;
+ if (!q) {
+ struct func **r;
+ NEW(q, PERM);
+ q->name = name;
+ q->count.x = x;
+ q->count.y = y;
+ q->count.count = 0;
+ q->callers = 0;
+ for (r = &p->funcs; *r && compare(&q->count, &(*r)->count) > 0; r = &(*r)->link)
+ ;
+ q->link = *r;
+ *r = q;
+ }
+ q->count.count += count;
+ return q;
+}
+
+/* apoint - append execution point i to file's data */
+static void apoint(int i, char *file, int x, int y, int count) {
+ struct file *p = findfile(file);
+
+ assert(p);
+ if (i >= p->size) {
+ int j;
+ if (p->size == 0) {
+ p->size = i >= 200 ? 2*i : 200;
+ p->counts = newarray(p->size, sizeof *p->counts, PERM);
+ } else {
+ struct count *new;
+ p->size = 2*i;
+ new = newarray(p->size, sizeof *new, PERM);
+ for (j = 0; j < p->count; j++)
+ new[j] = p->counts[j];
+ p->counts = new;
+ }
+ for (j = p->count; j < p->size; j++) {
+ static struct count z;
+ p->counts[j] = z;
+ }
+ }
+ p->counts[i].x = x;
+ p->counts[i].y = y;
+ p->counts[i].count += count;
+ if (i >= p->count)
+ p->count = i + 1;
+}
+
+/* findcount - return count associated with (file,x,y) or -1 */
+int findcount(char *file, int x, int y) {
+ static struct file *cursor;
+
+ if (cursor == 0 || cursor->name != file)
+ cursor = findfile(file);
+ if (cursor) {
+ int l, u;
+ struct count *c = cursor->counts;
+ for (l = 0, u = cursor->count - 1; l <= u; ) {
+ int k = (l + u)/2;
+ if (c[k].y > y || c[k].y == y && c[k].x > x)
+ u = k - 1;
+ else if (c[k].y < y || c[k].y == y && c[k].x < x)
+ l = k + 1;
+ else
+ return c[k].count;
+ }
+ }
+ return -1;
+}
+
+/* findfunc - return count associated with function name in file or -1 */
+int findfunc(char *name, char *file) {
+ static struct file *cursor;
+
+ if (cursor == 0 || cursor->name != file)
+ cursor = findfile(file);
+ if (cursor) {
+ struct func *p;
+ for (p = cursor->funcs; p; p = p->link)
+ if (p->name == name)
+ return p->count.count;
+ }
+ return -1;
+}
+
+/* getd - read a nonnegative number */
+static int getd(void) {
+ int c, n = 0;
+
+ while ((c = getc(fp)) != EOF && (c == ' ' || c == '\n' || c == '\t'))
+ ;
+ if (c >= '0' && c <= '9') {
+ do
+ n = 10*n + (c - '0');
+ while ((c = getc(fp)) >= '0' && c <= '9');
+ return n;
+ }
+ return -1;
+}
+
+/* getstr - read a string */
+static char *getstr(void) {
+ int c;
+ char buf[MAXTOKEN], *s = buf;
+
+ while ((c = getc(fp)) != EOF && c != ' ' && c != '\n' && c != '\t')
+ if (s - buf < (int)sizeof buf - 2)
+ *s++ = c;
+ *s = 0;
+ return s == buf ? (char *)0 : string(buf);
+}
+
+/* gather - read prof.out data from fd */
+static int gather(void) {
+ int i, nfiles, nfuncs, npoints;
+ char *files[64];
+
+ if ((nfiles = getd()) < 0)
+ return 0;
+ assert(nfiles < NELEMS(files));
+ for (i = 0; i < nfiles; i++) {
+ if ((files[i] = getstr()) == 0)
+ return -1;
+ if (!findfile(files[i])) {
+ struct file *new;
+ NEW(new, PERM);
+ new->name = files[i];
+ new->size = new->count = 0;
+ new->counts = 0;
+ new->funcs = 0;
+ new->link = filelist;
+ filelist = new;
+ }
+ }
+ if ((nfuncs = getd()) < 0)
+ return -1;
+ for (i = 0; i < nfuncs; i++) {
+ struct func *q;
+ char *name, *file;
+ int f, x, y, count;
+ if ((name = getstr()) == 0 || (f = getd()) <= 0
+ || (x = getd()) < 0 || (y = getd()) < 0 || (count = getd()) < 0)
+ return -1;
+ q = afunction(name, files[f-1], x, y, count);
+ if ((name = getstr()) == 0 || (file = getstr()) == 0
+ || (x = getd()) < 0 || (y = getd()) < 0)
+ return -1;
+ if (*name != '?')
+ acaller(name, file, x, y, count, q);
+ }
+ if ((npoints = getd()) < 0)
+ return -1;
+ for (i = 0; i < npoints; i++) {
+ int f, x, y, count;
+ if ((f = getd()) < 0 || (x = getd()) < 0 || (y = getd()) < 0
+ || (count = getd()) < 0)
+ return -1;
+ if (f)
+ apoint(i, files[f-1], x, y, count);
+ }
+ return 1;
+}
+
+/* process - read prof.out data from file */
+int process(char *file) {
+ int more;
+
+ if ((fp = fopen(file, "r")) != NULL) {
+ struct file *p;
+ while ((more = gather()) > 0)
+ ;
+ fclose(fp);
+ if (more < 0)
+ return more;
+ for (p = filelist; p; p = p->link)
+ qsort(p->counts, p->count, sizeof *p->counts,
+ (int (*)(const void *, const void *))
+ compare);
+
+ return 1;
+ }
+ return 0;
+}
diff --git a/lcc/src/rcc.asdl b/lcc/src/rcc.asdl
index 833478e..398e0d0 100755
--- a/lcc/src/rcc.asdl
+++ b/lcc/src/rcc.asdl
@@ -1,70 +1,70 @@
--- lcc IR
--- $Id: rcc.asdl 145 2001-10-17 21:53:10Z timo $
-module rcc {
-
--- Pickles start with an int version number, followed by rcc.program
-
-program = (int nuids,int nlabels,item* items,interface* interfaces,int argc,string *argv)
-
-real = (int msb,int lsb)
-
-item = Symbol(symbol symbol)
- | Type(type type)
- attributes(int uid)
-
-symbol = (identifier id,int type,int scope,int sclass,int ref,int flags)
-
-field = (identifier id,int type,int offset,int bitsize,int lsb)
-
-enum = (identifier id,int value)
-
-type = INT
- | UNSIGNED
- | FLOAT
- | VOID
- | POINTER(int type)
- | ENUM(identifier tag,enum* ids)
- | STRUCT(identifier tag,field* fields)
- | UNION(identifier tag,field* fields)
- | ARRAY(int type)
- | FUNCTION(int type,int* formals)
- | CONST(int type)
- | VOLATILE(int type)
- attributes(int size,int align)
-
-interface = Export(int p)
- | Import(int p)
- | Global(int p,int seg)
- | Local(int uid,symbol p) -- includes formals
- | Address(int uid,symbol q,int p,int n)
- | Segment(int seg)
- | Defaddress(int p)
- | Deflabel(int label)
- | Defconst(int suffix,int size,int value)
- | Defconstf(int size,real value)
- | Defstring(string s)
- | Space(int n)
- | Function(int f,int* caller,int* callee,int ncalls,interface* codelist)
- | Blockbeg
- | Blockend
- | Forest(node* nodes)
-
-node = CNST(int value)
- | CNSTF(real value)
- | ARG(node left,int len,int align)
- | ASGN(node left,node right,int len,int align)
- | CVT(int op,node left,int fromsize)
- | CALL(node left,int type)
- | CALLB(node left,node right,int type)
- | RET
- | ADDRG(int uid)
- | ADDRL(int uid)
- | ADDRF(int uid)
- | Unary(int op,node left) -- INDIR RET JUMP NEG BCOM
- | Binary(int op,node left,node right) -- ADD SUB DIV MUL MOD BOR BAND BXOR RSH LSH
- | Compare(int op,node left,node right,int label) -- EQ NE GT GE LE LT
- | LABEL(int label)
- | BRANCH(int label)
- | CSE(int uid,node node)
- attributes(int suffix,int size)
-}
+-- lcc IR
+-- $Id: rcc.asdl 145 2001-10-17 21:53:10Z timo $
+module rcc {
+
+-- Pickles start with an int version number, followed by rcc.program
+
+program = (int nuids,int nlabels,item* items,interface* interfaces,int argc,string *argv)
+
+real = (int msb,int lsb)
+
+item = Symbol(symbol symbol)
+ | Type(type type)
+ attributes(int uid)
+
+symbol = (identifier id,int type,int scope,int sclass,int ref,int flags)
+
+field = (identifier id,int type,int offset,int bitsize,int lsb)
+
+enum = (identifier id,int value)
+
+type = INT
+ | UNSIGNED
+ | FLOAT
+ | VOID
+ | POINTER(int type)
+ | ENUM(identifier tag,enum* ids)
+ | STRUCT(identifier tag,field* fields)
+ | UNION(identifier tag,field* fields)
+ | ARRAY(int type)
+ | FUNCTION(int type,int* formals)
+ | CONST(int type)
+ | VOLATILE(int type)
+ attributes(int size,int align)
+
+interface = Export(int p)
+ | Import(int p)
+ | Global(int p,int seg)
+ | Local(int uid,symbol p) -- includes formals
+ | Address(int uid,symbol q,int p,int n)
+ | Segment(int seg)
+ | Defaddress(int p)
+ | Deflabel(int label)
+ | Defconst(int suffix,int size,int value)
+ | Defconstf(int size,real value)
+ | Defstring(string s)
+ | Space(int n)
+ | Function(int f,int* caller,int* callee,int ncalls,interface* codelist)
+ | Blockbeg
+ | Blockend
+ | Forest(node* nodes)
+
+node = CNST(int value)
+ | CNSTF(real value)
+ | ARG(node left,int len,int align)
+ | ASGN(node left,node right,int len,int align)
+ | CVT(int op,node left,int fromsize)
+ | CALL(node left,int type)
+ | CALLB(node left,node right,int type)
+ | RET
+ | ADDRG(int uid)
+ | ADDRL(int uid)
+ | ADDRF(int uid)
+ | Unary(int op,node left) -- INDIR RET JUMP NEG BCOM
+ | Binary(int op,node left,node right) -- ADD SUB DIV MUL MOD BOR BAND BXOR RSH LSH
+ | Compare(int op,node left,node right,int label) -- EQ NE GT GE LE LT
+ | LABEL(int label)
+ | BRANCH(int label)
+ | CSE(int uid,node node)
+ attributes(int suffix,int size)
+}
diff --git a/lcc/src/run.sh b/lcc/src/run.sh
index 432872e..819e898 100755
--- a/lcc/src/run.sh
+++ b/lcc/src/run.sh
@@ -1,51 +1,51 @@
-#!/bin/sh
-# run .../target/os/tst/foo.s [ remotehost ]
-
-# set -x
-target=`echo $1 | awk -F/ '{ print $(NF-3) }'`
-os=`echo $1 | awk -F/ '{ print $(NF-2) }'`
-dir=$target/$os
-
-case "$1" in
-*symbolic/irix*) idir=include/mips/irix; remotehost=noexecute ;;
-*symbolic/osf*) idir=include/alpha/osf; remotehost=noexecute ;;
-*) idir=include/$dir; remotehost=${2-$REMOTEHOST} ;;
-esac
-
-if [ ! -d "$target/$os" -o ! -d "$idir" ]; then
- echo 2>&1 $0: unknown combination '"'$target/$os'"'
- exit 1
-fi
-
-C=`basename $1 .s`
-BUILDDIR=${BUILDDIR-.} LCC="${LCC-${BUILDDIR}/lcc} -Wo-lccdir=$BUILDDIR"
-TSTDIR=${TSTDIR-${BUILDDIR}/$dir/tst}
-if [ ! -d $TSTDIR ]; then mkdir -p $TSTDIR; fi
-
-echo ${BUILDDIR}/rcc$EXE -target=$target/$os $1: 1>&2
-$LCC -S -I$idir -Ualpha -Usun -Uvax -Umips -Ux86 \
- -Wf-errout=$TSTDIR/$C.2 -D$target -Wf-g0 \
- -Wf-target=$target/$os -o $1 tst/$C.c
-if [ $? != 0 ]; then remotehost=noexecute; fi
-if [ -r $dir/tst/$C.2bk ]; then
- diff $dir/tst/$C.2bk $TSTDIR/$C.2
-fi
-if [ -r $dir/tst/$C.sbk ]; then
- if diff $dir/tst/$C.sbk $TSTDIR/$C.s; then exit 0; fi
-fi
-
-case "$remotehost" in
-noexecute) exit 0 ;;
-""|"-") $LCC -o $TSTDIR/$C$EXE $1; $TSTDIR/$C$EXE <tst/$C.0 >$TSTDIR/$C.1 ;;
-*) rcp $1 $remotehost:
- if expr "$remotehost" : '.*@' >/dev/null ; then
- remotehost="`expr $remotehost : '.*@\(.*\)'` -l `expr $remotehost : '\(.*\)@'`"
- fi
- rsh $remotehost "cc -o $C$EXE $C.s -lm;./$C$EXE;rm -f $C$EXE $C.[so]" <tst/$C.0 >$TSTDIR/$C.1
- ;;
-esac
-if [ -r $dir/tst/$C.1bk ]; then
- diff $dir/tst/$C.1bk $TSTDIR/$C.1
- exit $?
-fi
-exit 0
+#!/bin/sh
+# run .../target/os/tst/foo.s [ remotehost ]
+
+# set -x
+target=`echo $1 | awk -F/ '{ print $(NF-3) }'`
+os=`echo $1 | awk -F/ '{ print $(NF-2) }'`
+dir=$target/$os
+
+case "$1" in
+*symbolic/irix*) idir=include/mips/irix; remotehost=noexecute ;;
+*symbolic/osf*) idir=include/alpha/osf; remotehost=noexecute ;;
+*) idir=include/$dir; remotehost=${2-$REMOTEHOST} ;;
+esac
+
+if [ ! -d "$target/$os" -o ! -d "$idir" ]; then
+ echo 2>&1 $0: unknown combination '"'$target/$os'"'
+ exit 1
+fi
+
+C=`basename $1 .s`
+BUILDDIR=${BUILDDIR-.} LCC="${LCC-${BUILDDIR}/lcc} -Wo-lccdir=$BUILDDIR"
+TSTDIR=${TSTDIR-${BUILDDIR}/$dir/tst}
+if [ ! -d $TSTDIR ]; then mkdir -p $TSTDIR; fi
+
+echo ${BUILDDIR}/rcc$EXE -target=$target/$os $1: 1>&2
+$LCC -S -I$idir -Ualpha -Usun -Uvax -Umips -Ux86 \
+ -Wf-errout=$TSTDIR/$C.2 -D$target -Wf-g0 \
+ -Wf-target=$target/$os -o $1 tst/$C.c
+if [ $? != 0 ]; then remotehost=noexecute; fi
+if [ -r $dir/tst/$C.2bk ]; then
+ diff $dir/tst/$C.2bk $TSTDIR/$C.2
+fi
+if [ -r $dir/tst/$C.sbk ]; then
+ if diff $dir/tst/$C.sbk $TSTDIR/$C.s; then exit 0; fi
+fi
+
+case "$remotehost" in
+noexecute) exit 0 ;;
+""|"-") $LCC -o $TSTDIR/$C$EXE $1; $TSTDIR/$C$EXE <tst/$C.0 >$TSTDIR/$C.1 ;;
+*) rcp $1 $remotehost:
+ if expr "$remotehost" : '.*@' >/dev/null ; then
+ remotehost="`expr $remotehost : '.*@\(.*\)'` -l `expr $remotehost : '\(.*\)@'`"
+ fi
+ rsh $remotehost "cc -o $C$EXE $C.s -lm;./$C$EXE;rm -f $C$EXE $C.[so]" <tst/$C.0 >$TSTDIR/$C.1
+ ;;
+esac
+if [ -r $dir/tst/$C.1bk ]; then
+ diff $dir/tst/$C.1bk $TSTDIR/$C.1
+ exit $?
+fi
+exit 0
diff --git a/lcc/src/simp.c b/lcc/src/simp.c
index 04699bb..4d79af0 100755
--- a/lcc/src/simp.c
+++ b/lcc/src/simp.c
@@ -1,587 +1,587 @@
-#include "c.h"
-#include <float.h>
-
-
-#define foldcnst(TYPE,VAR,OP) \
- if (l->op == CNST+TYPE && r->op == CNST+TYPE) \
- return cnsttree(ty, l->u.v.VAR OP r->u.v.VAR)
-#define commute(L,R) \
- if (generic(R->op) == CNST && generic(L->op) != CNST) \
- do { Tree t = L; L = R; R = t; } while(0)
-#define xfoldcnst(TYPE,VAR,OP,FUNC)\
- if (l->op == CNST+TYPE && r->op == CNST+TYPE\
- && FUNC(l->u.v.VAR,r->u.v.VAR,\
- ty->u.sym->u.limits.min.VAR,\
- ty->u.sym->u.limits.max.VAR, needconst)) \
- return cnsttree(ty, l->u.v.VAR OP r->u.v.VAR)
-#define xcvtcnst(FTYPE,SRC,DST,VAR,EXPR) \
- if (l->op == CNST+FTYPE) do {\
- if (!explicitCast\
- && ((SRC) < DST->u.sym->u.limits.min.VAR || (SRC) > DST->u.sym->u.limits.max.VAR))\
- warning("overflow in converting constant expression from `%t' to `%t'\n", l->type, DST);\
- if (needconst\
- || !((SRC) < DST->u.sym->u.limits.min.VAR || (SRC) > DST->u.sym->u.limits.max.VAR))\
- return cnsttree(ty, (EXPR)); } while(0)
-#define identity(X,Y,TYPE,VAR,VAL) \
- if (X->op == CNST+TYPE && X->u.v.VAR == VAL) return Y
-#define zerofield(OP,TYPE,VAR) \
- if (l->op == FIELD \
- && r->op == CNST+TYPE && r->u.v.VAR == 0)\
- return eqtree(OP, bittree(BAND, l->kids[0],\
- cnsttree(unsignedtype, \
- (unsigned long)fieldmask(l->u.field)<<fieldright(l->u.field))), r)
-#define cfoldcnst(TYPE,VAR,OP) \
- if (l->op == CNST+TYPE && r->op == CNST+TYPE) \
- return cnsttree(inttype, (long)(l->u.v.VAR OP r->u.v.VAR))
-#define foldaddp(L,R,RTYPE,VAR) \
- if (L->op == CNST+P && R->op == CNST+RTYPE) { \
- Tree e = tree(CNST+P, ty, NULL, NULL);\
- e->u.v.p = (char *)L->u.v.p + R->u.v.VAR;\
- return e; }
-#define ufoldcnst(TYPE,EXP) if (l->op == CNST+TYPE) return EXP
-#define sfoldcnst(OP) \
- if (l->op == CNST+U && r->op == CNST+I \
- && r->u.v.i >= 0 && r->u.v.i < 8*l->type->size) \
- return cnsttree(ty, (unsigned long)(l->u.v.u OP r->u.v.i))
-#define geu(L,R,V) \
- if (R->op == CNST+U && R->u.v.u == 0) do { \
- warning("result of unsigned comparison is constant\n"); \
- return tree(RIGHT, inttype, root(L), cnsttree(inttype, (long)(V))); } while(0)
-#define idempotent(OP) if (l->op == OP) return l->kids[0]
-
-int needconst;
-int explicitCast;
-static int addi(long x, long y, long min, long max, int needconst) {
- int cond = x == 0 || y == 0
- || x < 0 && y < 0 && x >= min - y
- || x < 0 && y > 0
- || x > 0 && y < 0
- || x > 0 && y > 0 && x <= max - y;
- if (!cond && needconst) {
- warning("overflow in constant expression\n");
- cond = 1;
- }
- return cond;
-
-
-}
-
-static int addd(double x, double y, double min, double max, int needconst) {
- int cond = x == 0 || y == 0
- || x < 0 && y < 0 && x >= min - y
- || x < 0 && y > 0
- || x > 0 && y < 0
- || x > 0 && y > 0 && x <= max - y;
- if (!cond && needconst) {
- warning("overflow in constant expression\n");
- cond = 1;
- }
- return cond;
-
-
-}
-
-static Tree addrtree(Tree e, long n, Type ty) {
- Symbol p = e->u.sym, q;
-
- if (p->scope == GLOBAL
- || p->sclass == STATIC || p->sclass == EXTERN)
- NEW0(q, PERM);
- else
- NEW0(q, FUNC);
- q->name = stringd(genlabel(1));
- q->sclass = p->sclass;
- q->scope = p->scope;
- assert(isptr(ty) || isarray(ty));
- q->type = isptr(ty) ? ty->type : ty;
- q->temporary = p->temporary;
- q->generated = p->generated;
- q->addressed = p->addressed;
- q->computed = 1;
- q->defined = 1;
- q->ref = 1;
- if (p->scope == GLOBAL
- || p->sclass == STATIC || p->sclass == EXTERN) {
- if (p->sclass == AUTO)
- q->sclass = STATIC;
- (*IR->address)(q, p, n);
- } else {
- Code cp;
- addlocal(p);
- cp = code(Address);
- cp->u.addr.sym = q;
- cp->u.addr.base = p;
- cp->u.addr.offset = n;
- }
- e = tree(e->op, ty, NULL, NULL);
- e->u.sym = q;
- return e;
-}
-
-/* div[id] - return 1 if min <= x/y <= max, 0 otherwise */
-static int divi(long x, long y, long min, long max, int needconst) {
- int cond = y != 0 && !(x == min && y == -1);
- if (!cond && needconst) {
- warning("overflow in constant expression\n");
- cond = 1;
- }
- return cond;
-
-
-}
-
-static int divd(double x, double y, double min, double max, int needconst) {
- int cond;
-
- if (x < 0) x = -x;
- if (y < 0) y = -y;
- cond = y != 0 && !(y < 1 && x > max*y);
- if (!cond && needconst) {
- warning("overflow in constant expression\n");
- cond = 1;
- }
- return cond;
-
-}
-
-/* mul[id] - return 1 if min <= x*y <= max, 0 otherwise */
-static int muli(long x, long y, long min, long max, int needconst) {
- int cond = x > -1 && x <= 1 || y > -1 && y <= 1
- || x < 0 && y < 0 && -x <= max/-y
- || x < 0 && y > 0 && x >= min/y
- || x > 0 && y < 0 && y >= min/x
- || x > 0 && y > 0 && x <= max/y;
- if (!cond && needconst) {
- warning("overflow in constant expression\n");
- cond = 1;
- }
- return cond;
-
-
-}
-
-static int muld(double x, double y, double min, double max, int needconst) {
- int cond = x >= -1 && x <= 1 || y >= -1 && y <= 1
- || x < 0 && y < 0 && -x <= max/-y
- || x < 0 && y > 0 && x >= min/y
- || x > 0 && y < 0 && y >= min/x
- || x > 0 && y > 0 && x <= max/y;
- if (!cond && needconst) {
- warning("overflow in constant expression\n");
- cond = 1;
- }
- return cond;
-
-
-}
-/* sub[id] - return 1 if min <= x-y <= max, 0 otherwise */
-static int subi(long x, long y, long min, long max, int needconst) {
- return addi(x, -y, min, max, needconst);
-}
-
-static int subd(double x, double y, double min, double max, int needconst) {
- return addd(x, -y, min, max, needconst);
-}
-Tree constexpr(int tok) {
- Tree p;
-
- needconst++;
- p = expr1(tok);
- needconst--;
- return p;
-}
-
-int intexpr(int tok, int n) {
- Tree p = constexpr(tok);
-
- needconst++;
- if (p->op == CNST+I || p->op == CNST+U)
- n = cast(p, inttype)->u.v.i;
- else
- error("integer expression must be constant\n");
- needconst--;
- return n;
-}
-Tree simplify(int op, Type ty, Tree l, Tree r) {
- int n;
- Tree p;
-
- if (optype(op) == 0)
- op = mkop(op, ty);
- switch (op) {
- case ADD+U:
- foldcnst(U,u,+);
- commute(r,l);
- identity(r,l,U,u,0);
- break;
- case ADD+I:
- xfoldcnst(I,i,+,addi);
- commute(r,l);
- identity(r,l,I,i,0);
- break;
- case CVI+I:
- xcvtcnst(I,l->u.v.i,ty,i,(long)extend(l->u.v.i,ty));
- break;
- case CVU+I:
- if (l->op == CNST+U) {
- if (!explicitCast && l->u.v.u > ty->u.sym->u.limits.max.i)
- warning("overflow in converting constant expression from `%t' to `%t'\n", l->type, ty);
- if (needconst || !(l->u.v.u > ty->u.sym->u.limits.max.i))
- return cnsttree(ty, (long)extend(l->u.v.u,ty));
- }
- break;
- case CVP+U:
- xcvtcnst(P,(unsigned long)l->u.v.p,ty,u,(unsigned long)l->u.v.p);
- break;
- case CVU+P:
- xcvtcnst(U,(void*)l->u.v.u,ty,p,(void*)l->u.v.u);
- break;
- case CVP+P:
- xcvtcnst(P,l->u.v.p,ty,p,l->u.v.p);
- break;
- case CVI+U:
- xcvtcnst(I,l->u.v.i,ty,u,((unsigned long)l->u.v.i)&ones(8*ty->size));
- break;
- case CVU+U:
- xcvtcnst(U,l->u.v.u,ty,u,l->u.v.u&ones(8*ty->size));
- break;
-
- case CVI+F:
- xcvtcnst(I,l->u.v.i,ty,d,(long double)l->u.v.i);
- case CVU+F:
- xcvtcnst(U,l->u.v.u,ty,d,(long double)l->u.v.u);
- break;
- case CVF+I:
- xcvtcnst(F,l->u.v.d,ty,i,(long)l->u.v.d);
- break;
- case CVF+F: {
- float d;
- if (l->op == CNST+F)
- if (l->u.v.d < ty->u.sym->u.limits.min.d)
- d = ty->u.sym->u.limits.min.d;
- else if (l->u.v.d > ty->u.sym->u.limits.max.d)
- d = ty->u.sym->u.limits.max.d;
- else
- d = l->u.v.d;
- xcvtcnst(F,l->u.v.d,ty,d,(long double)d);
- break;
- }
- case BAND+U:
- foldcnst(U,u,&);
- commute(r,l);
- identity(r,l,U,u,ones(8*ty->size));
- if (r->op == CNST+U && r->u.v.u == 0)
- return tree(RIGHT, ty, root(l), cnsttree(ty, 0UL));
- break;
- case BAND+I:
- foldcnst(I,i,&);
- commute(r,l);
- identity(r,l,I,i,ones(8*ty->size));
- if (r->op == CNST+I && r->u.v.u == 0)
- return tree(RIGHT, ty, root(l), cnsttree(ty, 0L));
- break;
-
- case MUL+U:
- commute(l,r);
- if (l->op == CNST+U && (n = ispow2(l->u.v.u)) != 0)
- return simplify(LSH, ty, r, cnsttree(inttype, (long)n));
- foldcnst(U,u,*);
- identity(r,l,U,u,1);
- break;
- case NE+I:
- cfoldcnst(I,i,!=);
- commute(r,l);
- zerofield(NE,I,i);
- break;
-
- case EQ+I:
- cfoldcnst(I,i,==);
- commute(r,l);
- zerofield(EQ,I,i);
- break;
- case ADD+P:
- foldaddp(l,r,I,i);
- foldaddp(l,r,U,u);
- foldaddp(r,l,I,i);
- foldaddp(r,l,U,u);
- commute(r,l);
- identity(r,retype(l,ty),I,i,0);
- identity(r,retype(l,ty),U,u,0);
- if (isaddrop(l->op)
- && (r->op == CNST+I && r->u.v.i <= longtype->u.sym->u.limits.max.i
- && r->u.v.i >= longtype->u.sym->u.limits.min.i
- || r->op == CNST+U && r->u.v.u <= longtype->u.sym->u.limits.max.i))
- return addrtree(l, cast(r, longtype)->u.v.i, ty);
- if (l->op == ADD+P && isaddrop(l->kids[1]->op)
- && (r->op == CNST+I && r->u.v.i <= longtype->u.sym->u.limits.max.i
- && r->u.v.i >= longtype->u.sym->u.limits.min.i
- || r->op == CNST+U && r->u.v.u <= longtype->u.sym->u.limits.max.i))
- return simplify(ADD+P, ty, l->kids[0],
- addrtree(l->kids[1], cast(r, longtype)->u.v.i, ty));
- if ((l->op == ADD+I || l->op == SUB+I)
- && l->kids[1]->op == CNST+I && isaddrop(r->op))
- return simplify(ADD+P, ty, l->kids[0],
- simplify(generic(l->op)+P, ty, r, l->kids[1]));
- if (l->op == ADD+P && generic(l->kids[1]->op) == CNST
- && generic(r->op) == CNST)
- return simplify(ADD+P, ty, l->kids[0],
- simplify(ADD, l->kids[1]->type, l->kids[1], r));
- if (l->op == ADD+I && generic(l->kids[1]->op) == CNST
- && r->op == ADD+P && generic(r->kids[1]->op) == CNST)
- return simplify(ADD+P, ty, l->kids[0],
- simplify(ADD+P, ty, r->kids[0],
- simplify(ADD, r->kids[1]->type, l->kids[1], r->kids[1])));
- if (l->op == RIGHT && l->kids[1])
- return tree(RIGHT, ty, l->kids[0],
- simplify(ADD+P, ty, l->kids[1], r));
- else if (l->op == RIGHT && l->kids[0])
- return tree(RIGHT, ty,
- simplify(ADD+P, ty, l->kids[0], r), NULL);
- break;
-
- case ADD+F:
- xfoldcnst(F,d,+,addd);
- commute(r,l);
- break;
- case AND+I:
- op = AND;
- ufoldcnst(I,l->u.v.i ? cond(r) : l); /* 0&&r => 0, 1&&r => r */
- break;
- case OR+I:
- op = OR;
- /* 0||r => r, 1||r => 1 */
- ufoldcnst(I,l->u.v.i ? cnsttree(ty, 1L) : cond(r));
- break;
- case BCOM+I:
- ufoldcnst(I,cnsttree(ty, (long)extend((~l->u.v.i)&ones(8*ty->size), ty)));
- idempotent(BCOM+U);
- break;
- case BCOM+U:
- ufoldcnst(U,cnsttree(ty, (unsigned long)((~l->u.v.u)&ones(8*ty->size))));
- idempotent(BCOM+U);
- break;
- case BOR+U:
- foldcnst(U,u,|);
- commute(r,l);
- identity(r,l,U,u,0);
- break;
- case BOR+I:
- foldcnst(I,i,|);
- commute(r,l);
- identity(r,l,I,i,0);
- break;
- case BXOR+U:
- foldcnst(U,u,^);
- commute(r,l);
- identity(r,l,U,u,0);
- break;
- case BXOR+I:
- foldcnst(I,i,^);
- commute(r,l);
- identity(r,l,I,i,0);
- break;
- case DIV+F:
- xfoldcnst(F,d,/,divd);
- break;
- case DIV+I:
- identity(r,l,I,i,1);
- if (r->op == CNST+I && r->u.v.i == 0
- || l->op == CNST+I && l->u.v.i == ty->u.sym->u.limits.min.i
- && r->op == CNST+I && r->u.v.i == -1)
- break;
- xfoldcnst(I,i,/,divi);
- break;
- case DIV+U:
- identity(r,l,U,u,1);
- if (r->op == CNST+U && r->u.v.u == 0)
- break;
- if (r->op == CNST+U && (n = ispow2(r->u.v.u)) != 0)
- return simplify(RSH, ty, l, cnsttree(inttype, (long)n));
- foldcnst(U,u,/);
- break;
- case EQ+F:
- cfoldcnst(F,d,==);
- commute(r,l);
- break;
- case EQ+U:
- cfoldcnst(U,u,==);
- commute(r,l);
- zerofield(EQ,U,u);
- break;
- case GE+F: cfoldcnst(F,d,>=); break;
- case GE+I: cfoldcnst(I,i,>=); break;
- case GE+U:
- geu(l,r,1); /* l >= 0 => (l,1) */
- cfoldcnst(U,u,>=);
- if (l->op == CNST+U && l->u.v.u == 0) /* 0 >= r => r == 0 */
- return eqtree(EQ, r, l);
- break;
- case GT+F: cfoldcnst(F,d, >); break;
- case GT+I: cfoldcnst(I,i, >); break;
- case GT+U:
- geu(r,l,0); /* 0 > r => (r,0) */
- cfoldcnst(U,u, >);
- if (r->op == CNST+U && r->u.v.u == 0) /* l > 0 => l != 0 */
- return eqtree(NE, l, r);
- break;
- case LE+F: cfoldcnst(F,d,<=); break;
- case LE+I: cfoldcnst(I,i,<=); break;
- case LE+U:
- geu(r,l,1); /* 0 <= r => (r,1) */
- cfoldcnst(U,u,<=);
- if (r->op == CNST+U && r->u.v.u == 0) /* l <= 0 => l == 0 */
- return eqtree(EQ, l, r);
- break;
- case LSH+I:
- identity(r,l,I,i,0);
- if (l->op == CNST+I && r->op == CNST+I
- && r->u.v.i >= 0 && r->u.v.i < 8*l->type->size
- && muli(l->u.v.i, 1<<r->u.v.i, ty->u.sym->u.limits.min.i, ty->u.sym->u.limits.max.i, needconst))
- return cnsttree(ty, (long)(l->u.v.i<<r->u.v.i));
- if (r->op == CNST+I && (r->u.v.i >= 8*ty->size || r->u.v.i < 0)) {
- warning("shifting an `%t' by %d bits is undefined\n", ty, r->u.v.i);
- break;
- }
-
- break;
- case LSH+U:
- identity(r,l,I,i,0);
- sfoldcnst(<<);
- if (r->op == CNST+I && (r->u.v.i >= 8*ty->size || r->u.v.i < 0)) {
- warning("shifting an `%t' by %d bits is undefined\n", ty, r->u.v.i);
- break;
- }
-
- break;
-
- case LT+F: cfoldcnst(F,d, <); break;
- case LT+I: cfoldcnst(I,i, <); break;
- case LT+U:
- geu(l,r,0); /* l < 0 => (l,0) */
- cfoldcnst(U,u, <);
- if (l->op == CNST+U && l->u.v.u == 0) /* 0 < r => r != 0 */
- return eqtree(NE, r, l);
- break;
- case MOD+I:
- if (r->op == CNST+I && r->u.v.i == 1) /* l%1 => (l,0) */
- return tree(RIGHT, ty, root(l), cnsttree(ty, 0L));
- if (r->op == CNST+I && r->u.v.i == 0
- || l->op == CNST+I && l->u.v.i == ty->u.sym->u.limits.min.i
- && r->op == CNST+I && r->u.v.i == -1)
- break;
- xfoldcnst(I,i,%,divi);
- break;
- case MOD+U:
- if (r->op == CNST+U && ispow2(r->u.v.u)) /* l%2^n => l&(2^n-1) */
- return bittree(BAND, l, cnsttree(ty, r->u.v.u - 1));
- if (r->op == CNST+U && r->u.v.u == 0)
- break;
- foldcnst(U,u,%);
- break;
- case MUL+F:
- xfoldcnst(F,d,*,muld);
- commute(l,r);
- break;
- case MUL+I:
- commute(l,r);
- xfoldcnst(I,i,*,muli);
- if (l->op == CNST+I && r->op == ADD+I && r->kids[1]->op == CNST+I)
- /* c1*(x + c2) => c1*x + c1*c2 */
- return simplify(ADD, ty, simplify(MUL, ty, l, r->kids[0]),
- simplify(MUL, ty, l, r->kids[1]));
- if (l->op == CNST+I && r->op == SUB+I && r->kids[1]->op == CNST+I)
- /* c1*(x - c2) => c1*x - c1*c2 */
- return simplify(SUB, ty, simplify(MUL, ty, l, r->kids[0]),
- simplify(MUL, ty, l, r->kids[1]));
- if (l->op == CNST+I && l->u.v.i > 0 && (n = ispow2(l->u.v.i)) != 0)
- /* 2^n * r => r<<n */
- return simplify(LSH, ty, r, cnsttree(inttype, (long)n));
- identity(r,l,I,i,1);
- break;
- case NE+F:
- cfoldcnst(F,d,!=);
- commute(r,l);
- break;
- case NE+U:
- cfoldcnst(U,u,!=);
- commute(r,l);
- zerofield(NE,U,u);
- break;
- case NEG+F:
- ufoldcnst(F,cnsttree(ty, -l->u.v.d));
- idempotent(NEG+F);
- break;
- case NEG+I:
- if (l->op == CNST+I) {
- if (needconst && l->u.v.i == ty->u.sym->u.limits.min.i)
- warning("overflow in constant expression\n");
- if (needconst || l->u.v.i != ty->u.sym->u.limits.min.i)
- return cnsttree(ty, -l->u.v.i);
- }
- idempotent(NEG+I);
- break;
- case NOT+I:
- op = NOT;
- ufoldcnst(I,cnsttree(ty, !l->u.v.i));
- break;
- case RSH+I:
- identity(r,l,I,i,0);
- if (l->op == CNST+I && r->op == CNST+I
- && r->u.v.i >= 0 && r->u.v.i < 8*l->type->size) {
- long n = l->u.v.i>>r->u.v.i;
- if (l->u.v.i < 0)
- n |= ~0UL<<(8*l->type->size - r->u.v.i);
- return cnsttree(ty, n);
- }
- if (r->op == CNST+I && (r->u.v.i >= 8*ty->size || r->u.v.i < 0)) {
- warning("shifting an `%t' by %d bits is undefined\n", ty, r->u.v.i);
- break;
- }
-
- break;
- case RSH+U:
- identity(r,l,I,i,0);
- sfoldcnst(>>);
- if (r->op == CNST+I && (r->u.v.i >= 8*ty->size || r->u.v.i < 0)) {
- warning("shifting an `%t' by %d bits is undefined\n", ty, r->u.v.i);
- break;
- }
-
- break;
- case SUB+F:
- xfoldcnst(F,d,-,subd);
- break;
- case SUB+I:
- xfoldcnst(I,i,-,subi);
- identity(r,l,I,i,0);
- break;
- case SUB+U:
- foldcnst(U,u,-);
- identity(r,l,U,u,0);
- break;
- case SUB+P:
- if (l->op == CNST+P && r->op == CNST+P)
- return cnsttree(ty, (long)((char *)l->u.v.p - (char *)r->u.v.p));
- if (r->op == CNST+I || r->op == CNST+U)
- return simplify(ADD, ty, l,
- cnsttree(inttype, r->op == CNST+I ? -r->u.v.i : -(long)r->u.v.u));
- if (isaddrop(l->op) && r->op == ADD+I && r->kids[1]->op == CNST+I)
- /* l - (x + c) => l-c - x */
- return simplify(SUB, ty,
- simplify(SUB, ty, l, r->kids[1]), r->kids[0]);
- break;
- default:assert(0);
- }
- return tree(op, ty, l, r);
-}
-/* ispow2 - if u > 1 && u == 2^n, return n, otherwise return 0 */
-int ispow2(unsigned long u) {
- int n;
-
- if (u > 1 && (u&(u-1)) == 0)
- for (n = 0; u; u >>= 1, n++)
- if (u&1)
- return n;
- return 0;
-}
-
+#include "c.h"
+#include <float.h>
+
+
+#define foldcnst(TYPE,VAR,OP) \
+ if (l->op == CNST+TYPE && r->op == CNST+TYPE) \
+ return cnsttree(ty, l->u.v.VAR OP r->u.v.VAR)
+#define commute(L,R) \
+ if (generic(R->op) == CNST && generic(L->op) != CNST) \
+ do { Tree t = L; L = R; R = t; } while(0)
+#define xfoldcnst(TYPE,VAR,OP,FUNC)\
+ if (l->op == CNST+TYPE && r->op == CNST+TYPE\
+ && FUNC(l->u.v.VAR,r->u.v.VAR,\
+ ty->u.sym->u.limits.min.VAR,\
+ ty->u.sym->u.limits.max.VAR, needconst)) \
+ return cnsttree(ty, l->u.v.VAR OP r->u.v.VAR)
+#define xcvtcnst(FTYPE,SRC,DST,VAR,EXPR) \
+ if (l->op == CNST+FTYPE) do {\
+ if (!explicitCast\
+ && ((SRC) < DST->u.sym->u.limits.min.VAR || (SRC) > DST->u.sym->u.limits.max.VAR))\
+ warning("overflow in converting constant expression from `%t' to `%t'\n", l->type, DST);\
+ if (needconst\
+ || !((SRC) < DST->u.sym->u.limits.min.VAR || (SRC) > DST->u.sym->u.limits.max.VAR))\
+ return cnsttree(ty, (EXPR)); } while(0)
+#define identity(X,Y,TYPE,VAR,VAL) \
+ if (X->op == CNST+TYPE && X->u.v.VAR == VAL) return Y
+#define zerofield(OP,TYPE,VAR) \
+ if (l->op == FIELD \
+ && r->op == CNST+TYPE && r->u.v.VAR == 0)\
+ return eqtree(OP, bittree(BAND, l->kids[0],\
+ cnsttree(unsignedtype, \
+ (unsigned long)fieldmask(l->u.field)<<fieldright(l->u.field))), r)
+#define cfoldcnst(TYPE,VAR,OP) \
+ if (l->op == CNST+TYPE && r->op == CNST+TYPE) \
+ return cnsttree(inttype, (long)(l->u.v.VAR OP r->u.v.VAR))
+#define foldaddp(L,R,RTYPE,VAR) \
+ if (L->op == CNST+P && R->op == CNST+RTYPE) { \
+ Tree e = tree(CNST+P, ty, NULL, NULL);\
+ e->u.v.p = (char *)L->u.v.p + R->u.v.VAR;\
+ return e; }
+#define ufoldcnst(TYPE,EXP) if (l->op == CNST+TYPE) return EXP
+#define sfoldcnst(OP) \
+ if (l->op == CNST+U && r->op == CNST+I \
+ && r->u.v.i >= 0 && r->u.v.i < 8*l->type->size) \
+ return cnsttree(ty, (unsigned long)(l->u.v.u OP r->u.v.i))
+#define geu(L,R,V) \
+ if (R->op == CNST+U && R->u.v.u == 0) do { \
+ warning("result of unsigned comparison is constant\n"); \
+ return tree(RIGHT, inttype, root(L), cnsttree(inttype, (long)(V))); } while(0)
+#define idempotent(OP) if (l->op == OP) return l->kids[0]
+
+int needconst;
+int explicitCast;
+static int addi(long x, long y, long min, long max, int needconst) {
+ int cond = x == 0 || y == 0
+ || x < 0 && y < 0 && x >= min - y
+ || x < 0 && y > 0
+ || x > 0 && y < 0
+ || x > 0 && y > 0 && x <= max - y;
+ if (!cond && needconst) {
+ warning("overflow in constant expression\n");
+ cond = 1;
+ }
+ return cond;
+
+
+}
+
+static int addd(double x, double y, double min, double max, int needconst) {
+ int cond = x == 0 || y == 0
+ || x < 0 && y < 0 && x >= min - y
+ || x < 0 && y > 0
+ || x > 0 && y < 0
+ || x > 0 && y > 0 && x <= max - y;
+ if (!cond && needconst) {
+ warning("overflow in constant expression\n");
+ cond = 1;
+ }
+ return cond;
+
+
+}
+
+static Tree addrtree(Tree e, long n, Type ty) {
+ Symbol p = e->u.sym, q;
+
+ if (p->scope == GLOBAL
+ || p->sclass == STATIC || p->sclass == EXTERN)
+ NEW0(q, PERM);
+ else
+ NEW0(q, FUNC);
+ q->name = stringd(genlabel(1));
+ q->sclass = p->sclass;
+ q->scope = p->scope;
+ assert(isptr(ty) || isarray(ty));
+ q->type = isptr(ty) ? ty->type : ty;
+ q->temporary = p->temporary;
+ q->generated = p->generated;
+ q->addressed = p->addressed;
+ q->computed = 1;
+ q->defined = 1;
+ q->ref = 1;
+ if (p->scope == GLOBAL
+ || p->sclass == STATIC || p->sclass == EXTERN) {
+ if (p->sclass == AUTO)
+ q->sclass = STATIC;
+ (*IR->address)(q, p, n);
+ } else {
+ Code cp;
+ addlocal(p);
+ cp = code(Address);
+ cp->u.addr.sym = q;
+ cp->u.addr.base = p;
+ cp->u.addr.offset = n;
+ }
+ e = tree(e->op, ty, NULL, NULL);
+ e->u.sym = q;
+ return e;
+}
+
+/* div[id] - return 1 if min <= x/y <= max, 0 otherwise */
+static int divi(long x, long y, long min, long max, int needconst) {
+ int cond = y != 0 && !(x == min && y == -1);
+ if (!cond && needconst) {
+ warning("overflow in constant expression\n");
+ cond = 1;
+ }
+ return cond;
+
+
+}
+
+static int divd(double x, double y, double min, double max, int needconst) {
+ int cond;
+
+ if (x < 0) x = -x;
+ if (y < 0) y = -y;
+ cond = y != 0 && !(y < 1 && x > max*y);
+ if (!cond && needconst) {
+ warning("overflow in constant expression\n");
+ cond = 1;
+ }
+ return cond;
+
+}
+
+/* mul[id] - return 1 if min <= x*y <= max, 0 otherwise */
+static int muli(long x, long y, long min, long max, int needconst) {
+ int cond = x > -1 && x <= 1 || y > -1 && y <= 1
+ || x < 0 && y < 0 && -x <= max/-y
+ || x < 0 && y > 0 && x >= min/y
+ || x > 0 && y < 0 && y >= min/x
+ || x > 0 && y > 0 && x <= max/y;
+ if (!cond && needconst) {
+ warning("overflow in constant expression\n");
+ cond = 1;
+ }
+ return cond;
+
+
+}
+
+static int muld(double x, double y, double min, double max, int needconst) {
+ int cond = x >= -1 && x <= 1 || y >= -1 && y <= 1
+ || x < 0 && y < 0 && -x <= max/-y
+ || x < 0 && y > 0 && x >= min/y
+ || x > 0 && y < 0 && y >= min/x
+ || x > 0 && y > 0 && x <= max/y;
+ if (!cond && needconst) {
+ warning("overflow in constant expression\n");
+ cond = 1;
+ }
+ return cond;
+
+
+}
+/* sub[id] - return 1 if min <= x-y <= max, 0 otherwise */
+static int subi(long x, long y, long min, long max, int needconst) {
+ return addi(x, -y, min, max, needconst);
+}
+
+static int subd(double x, double y, double min, double max, int needconst) {
+ return addd(x, -y, min, max, needconst);
+}
+Tree constexpr(int tok) {
+ Tree p;
+
+ needconst++;
+ p = expr1(tok);
+ needconst--;
+ return p;
+}
+
+int intexpr(int tok, int n) {
+ Tree p = constexpr(tok);
+
+ needconst++;
+ if (p->op == CNST+I || p->op == CNST+U)
+ n = cast(p, inttype)->u.v.i;
+ else
+ error("integer expression must be constant\n");
+ needconst--;
+ return n;
+}
+Tree simplify(int op, Type ty, Tree l, Tree r) {
+ int n;
+ Tree p;
+
+ if (optype(op) == 0)
+ op = mkop(op, ty);
+ switch (op) {
+ case ADD+U:
+ foldcnst(U,u,+);
+ commute(r,l);
+ identity(r,l,U,u,0);
+ break;
+ case ADD+I:
+ xfoldcnst(I,i,+,addi);
+ commute(r,l);
+ identity(r,l,I,i,0);
+ break;
+ case CVI+I:
+ xcvtcnst(I,l->u.v.i,ty,i,(long)extend(l->u.v.i,ty));
+ break;
+ case CVU+I:
+ if (l->op == CNST+U) {
+ if (!explicitCast && l->u.v.u > ty->u.sym->u.limits.max.i)
+ warning("overflow in converting constant expression from `%t' to `%t'\n", l->type, ty);
+ if (needconst || !(l->u.v.u > ty->u.sym->u.limits.max.i))
+ return cnsttree(ty, (long)extend(l->u.v.u,ty));
+ }
+ break;
+ case CVP+U:
+ xcvtcnst(P,(unsigned long)l->u.v.p,ty,u,(unsigned long)l->u.v.p);
+ break;
+ case CVU+P:
+ xcvtcnst(U,(void*)l->u.v.u,ty,p,(void*)l->u.v.u);
+ break;
+ case CVP+P:
+ xcvtcnst(P,l->u.v.p,ty,p,l->u.v.p);
+ break;
+ case CVI+U:
+ xcvtcnst(I,l->u.v.i,ty,u,((unsigned long)l->u.v.i)&ones(8*ty->size));
+ break;
+ case CVU+U:
+ xcvtcnst(U,l->u.v.u,ty,u,l->u.v.u&ones(8*ty->size));
+ break;
+
+ case CVI+F:
+ xcvtcnst(I,l->u.v.i,ty,d,(long double)l->u.v.i);
+ case CVU+F:
+ xcvtcnst(U,l->u.v.u,ty,d,(long double)l->u.v.u);
+ break;
+ case CVF+I:
+ xcvtcnst(F,l->u.v.d,ty,i,(long)l->u.v.d);
+ break;
+ case CVF+F: {
+ float d;
+ if (l->op == CNST+F)
+ if (l->u.v.d < ty->u.sym->u.limits.min.d)
+ d = ty->u.sym->u.limits.min.d;
+ else if (l->u.v.d > ty->u.sym->u.limits.max.d)
+ d = ty->u.sym->u.limits.max.d;
+ else
+ d = l->u.v.d;
+ xcvtcnst(F,l->u.v.d,ty,d,(long double)d);
+ break;
+ }
+ case BAND+U:
+ foldcnst(U,u,&);
+ commute(r,l);
+ identity(r,l,U,u,ones(8*ty->size));
+ if (r->op == CNST+U && r->u.v.u == 0)
+ return tree(RIGHT, ty, root(l), cnsttree(ty, 0UL));
+ break;
+ case BAND+I:
+ foldcnst(I,i,&);
+ commute(r,l);
+ identity(r,l,I,i,ones(8*ty->size));
+ if (r->op == CNST+I && r->u.v.u == 0)
+ return tree(RIGHT, ty, root(l), cnsttree(ty, 0L));
+ break;
+
+ case MUL+U:
+ commute(l,r);
+ if (l->op == CNST+U && (n = ispow2(l->u.v.u)) != 0)
+ return simplify(LSH, ty, r, cnsttree(inttype, (long)n));
+ foldcnst(U,u,*);
+ identity(r,l,U,u,1);
+ break;
+ case NE+I:
+ cfoldcnst(I,i,!=);
+ commute(r,l);
+ zerofield(NE,I,i);
+ break;
+
+ case EQ+I:
+ cfoldcnst(I,i,==);
+ commute(r,l);
+ zerofield(EQ,I,i);
+ break;
+ case ADD+P:
+ foldaddp(l,r,I,i);
+ foldaddp(l,r,U,u);
+ foldaddp(r,l,I,i);
+ foldaddp(r,l,U,u);
+ commute(r,l);
+ identity(r,retype(l,ty),I,i,0);
+ identity(r,retype(l,ty),U,u,0);
+ if (isaddrop(l->op)
+ && (r->op == CNST+I && r->u.v.i <= longtype->u.sym->u.limits.max.i
+ && r->u.v.i >= longtype->u.sym->u.limits.min.i
+ || r->op == CNST+U && r->u.v.u <= longtype->u.sym->u.limits.max.i))
+ return addrtree(l, cast(r, longtype)->u.v.i, ty);
+ if (l->op == ADD+P && isaddrop(l->kids[1]->op)
+ && (r->op == CNST+I && r->u.v.i <= longtype->u.sym->u.limits.max.i
+ && r->u.v.i >= longtype->u.sym->u.limits.min.i
+ || r->op == CNST+U && r->u.v.u <= longtype->u.sym->u.limits.max.i))
+ return simplify(ADD+P, ty, l->kids[0],
+ addrtree(l->kids[1], cast(r, longtype)->u.v.i, ty));
+ if ((l->op == ADD+I || l->op == SUB+I)
+ && l->kids[1]->op == CNST+I && isaddrop(r->op))
+ return simplify(ADD+P, ty, l->kids[0],
+ simplify(generic(l->op)+P, ty, r, l->kids[1]));
+ if (l->op == ADD+P && generic(l->kids[1]->op) == CNST
+ && generic(r->op) == CNST)
+ return simplify(ADD+P, ty, l->kids[0],
+ simplify(ADD, l->kids[1]->type, l->kids[1], r));
+ if (l->op == ADD+I && generic(l->kids[1]->op) == CNST
+ && r->op == ADD+P && generic(r->kids[1]->op) == CNST)
+ return simplify(ADD+P, ty, l->kids[0],
+ simplify(ADD+P, ty, r->kids[0],
+ simplify(ADD, r->kids[1]->type, l->kids[1], r->kids[1])));
+ if (l->op == RIGHT && l->kids[1])
+ return tree(RIGHT, ty, l->kids[0],
+ simplify(ADD+P, ty, l->kids[1], r));
+ else if (l->op == RIGHT && l->kids[0])
+ return tree(RIGHT, ty,
+ simplify(ADD+P, ty, l->kids[0], r), NULL);
+ break;
+
+ case ADD+F:
+ xfoldcnst(F,d,+,addd);
+ commute(r,l);
+ break;
+ case AND+I:
+ op = AND;
+ ufoldcnst(I,l->u.v.i ? cond(r) : l); /* 0&&r => 0, 1&&r => r */
+ break;
+ case OR+I:
+ op = OR;
+ /* 0||r => r, 1||r => 1 */
+ ufoldcnst(I,l->u.v.i ? cnsttree(ty, 1L) : cond(r));
+ break;
+ case BCOM+I:
+ ufoldcnst(I,cnsttree(ty, (long)extend((~l->u.v.i)&ones(8*ty->size), ty)));
+ idempotent(BCOM+U);
+ break;
+ case BCOM+U:
+ ufoldcnst(U,cnsttree(ty, (unsigned long)((~l->u.v.u)&ones(8*ty->size))));
+ idempotent(BCOM+U);
+ break;
+ case BOR+U:
+ foldcnst(U,u,|);
+ commute(r,l);
+ identity(r,l,U,u,0);
+ break;
+ case BOR+I:
+ foldcnst(I,i,|);
+ commute(r,l);
+ identity(r,l,I,i,0);
+ break;
+ case BXOR+U:
+ foldcnst(U,u,^);
+ commute(r,l);
+ identity(r,l,U,u,0);
+ break;
+ case BXOR+I:
+ foldcnst(I,i,^);
+ commute(r,l);
+ identity(r,l,I,i,0);
+ break;
+ case DIV+F:
+ xfoldcnst(F,d,/,divd);
+ break;
+ case DIV+I:
+ identity(r,l,I,i,1);
+ if (r->op == CNST+I && r->u.v.i == 0
+ || l->op == CNST+I && l->u.v.i == ty->u.sym->u.limits.min.i
+ && r->op == CNST+I && r->u.v.i == -1)
+ break;
+ xfoldcnst(I,i,/,divi);
+ break;
+ case DIV+U:
+ identity(r,l,U,u,1);
+ if (r->op == CNST+U && r->u.v.u == 0)
+ break;
+ if (r->op == CNST+U && (n = ispow2(r->u.v.u)) != 0)
+ return simplify(RSH, ty, l, cnsttree(inttype, (long)n));
+ foldcnst(U,u,/);
+ break;
+ case EQ+F:
+ cfoldcnst(F,d,==);
+ commute(r,l);
+ break;
+ case EQ+U:
+ cfoldcnst(U,u,==);
+ commute(r,l);
+ zerofield(EQ,U,u);
+ break;
+ case GE+F: cfoldcnst(F,d,>=); break;
+ case GE+I: cfoldcnst(I,i,>=); break;
+ case GE+U:
+ geu(l,r,1); /* l >= 0 => (l,1) */
+ cfoldcnst(U,u,>=);
+ if (l->op == CNST+U && l->u.v.u == 0) /* 0 >= r => r == 0 */
+ return eqtree(EQ, r, l);
+ break;
+ case GT+F: cfoldcnst(F,d, >); break;
+ case GT+I: cfoldcnst(I,i, >); break;
+ case GT+U:
+ geu(r,l,0); /* 0 > r => (r,0) */
+ cfoldcnst(U,u, >);
+ if (r->op == CNST+U && r->u.v.u == 0) /* l > 0 => l != 0 */
+ return eqtree(NE, l, r);
+ break;
+ case LE+F: cfoldcnst(F,d,<=); break;
+ case LE+I: cfoldcnst(I,i,<=); break;
+ case LE+U:
+ geu(r,l,1); /* 0 <= r => (r,1) */
+ cfoldcnst(U,u,<=);
+ if (r->op == CNST+U && r->u.v.u == 0) /* l <= 0 => l == 0 */
+ return eqtree(EQ, l, r);
+ break;
+ case LSH+I:
+ identity(r,l,I,i,0);
+ if (l->op == CNST+I && r->op == CNST+I
+ && r->u.v.i >= 0 && r->u.v.i < 8*l->type->size
+ && muli(l->u.v.i, 1<<r->u.v.i, ty->u.sym->u.limits.min.i, ty->u.sym->u.limits.max.i, needconst))
+ return cnsttree(ty, (long)(l->u.v.i<<r->u.v.i));
+ if (r->op == CNST+I && (r->u.v.i >= 8*ty->size || r->u.v.i < 0)) {
+ warning("shifting an `%t' by %d bits is undefined\n", ty, r->u.v.i);
+ break;
+ }
+
+ break;
+ case LSH+U:
+ identity(r,l,I,i,0);
+ sfoldcnst(<<);
+ if (r->op == CNST+I && (r->u.v.i >= 8*ty->size || r->u.v.i < 0)) {
+ warning("shifting an `%t' by %d bits is undefined\n", ty, r->u.v.i);
+ break;
+ }
+
+ break;
+
+ case LT+F: cfoldcnst(F,d, <); break;
+ case LT+I: cfoldcnst(I,i, <); break;
+ case LT+U:
+ geu(l,r,0); /* l < 0 => (l,0) */
+ cfoldcnst(U,u, <);
+ if (l->op == CNST+U && l->u.v.u == 0) /* 0 < r => r != 0 */
+ return eqtree(NE, r, l);
+ break;
+ case MOD+I:
+ if (r->op == CNST+I && r->u.v.i == 1) /* l%1 => (l,0) */
+ return tree(RIGHT, ty, root(l), cnsttree(ty, 0L));
+ if (r->op == CNST+I && r->u.v.i == 0
+ || l->op == CNST+I && l->u.v.i == ty->u.sym->u.limits.min.i
+ && r->op == CNST+I && r->u.v.i == -1)
+ break;
+ xfoldcnst(I,i,%,divi);
+ break;
+ case MOD+U:
+ if (r->op == CNST+U && ispow2(r->u.v.u)) /* l%2^n => l&(2^n-1) */
+ return bittree(BAND, l, cnsttree(ty, r->u.v.u - 1));
+ if (r->op == CNST+U && r->u.v.u == 0)
+ break;
+ foldcnst(U,u,%);
+ break;
+ case MUL+F:
+ xfoldcnst(F,d,*,muld);
+ commute(l,r);
+ break;
+ case MUL+I:
+ commute(l,r);
+ xfoldcnst(I,i,*,muli);
+ if (l->op == CNST+I && r->op == ADD+I && r->kids[1]->op == CNST+I)
+ /* c1*(x + c2) => c1*x + c1*c2 */
+ return simplify(ADD, ty, simplify(MUL, ty, l, r->kids[0]),
+ simplify(MUL, ty, l, r->kids[1]));
+ if (l->op == CNST+I && r->op == SUB+I && r->kids[1]->op == CNST+I)
+ /* c1*(x - c2) => c1*x - c1*c2 */
+ return simplify(SUB, ty, simplify(MUL, ty, l, r->kids[0]),
+ simplify(MUL, ty, l, r->kids[1]));
+ if (l->op == CNST+I && l->u.v.i > 0 && (n = ispow2(l->u.v.i)) != 0)
+ /* 2^n * r => r<<n */
+ return simplify(LSH, ty, r, cnsttree(inttype, (long)n));
+ identity(r,l,I,i,1);
+ break;
+ case NE+F:
+ cfoldcnst(F,d,!=);
+ commute(r,l);
+ break;
+ case NE+U:
+ cfoldcnst(U,u,!=);
+ commute(r,l);
+ zerofield(NE,U,u);
+ break;
+ case NEG+F:
+ ufoldcnst(F,cnsttree(ty, -l->u.v.d));
+ idempotent(NEG+F);
+ break;
+ case NEG+I:
+ if (l->op == CNST+I) {
+ if (needconst && l->u.v.i == ty->u.sym->u.limits.min.i)
+ warning("overflow in constant expression\n");
+ if (needconst || l->u.v.i != ty->u.sym->u.limits.min.i)
+ return cnsttree(ty, -l->u.v.i);
+ }
+ idempotent(NEG+I);
+ break;
+ case NOT+I:
+ op = NOT;
+ ufoldcnst(I,cnsttree(ty, !l->u.v.i));
+ break;
+ case RSH+I:
+ identity(r,l,I,i,0);
+ if (l->op == CNST+I && r->op == CNST+I
+ && r->u.v.i >= 0 && r->u.v.i < 8*l->type->size) {
+ long n = l->u.v.i>>r->u.v.i;
+ if (l->u.v.i < 0)
+ n |= ~0UL<<(8*l->type->size - r->u.v.i);
+ return cnsttree(ty, n);
+ }
+ if (r->op == CNST+I && (r->u.v.i >= 8*ty->size || r->u.v.i < 0)) {
+ warning("shifting an `%t' by %d bits is undefined\n", ty, r->u.v.i);
+ break;
+ }
+
+ break;
+ case RSH+U:
+ identity(r,l,I,i,0);
+ sfoldcnst(>>);
+ if (r->op == CNST+I && (r->u.v.i >= 8*ty->size || r->u.v.i < 0)) {
+ warning("shifting an `%t' by %d bits is undefined\n", ty, r->u.v.i);
+ break;
+ }
+
+ break;
+ case SUB+F:
+ xfoldcnst(F,d,-,subd);
+ break;
+ case SUB+I:
+ xfoldcnst(I,i,-,subi);
+ identity(r,l,I,i,0);
+ break;
+ case SUB+U:
+ foldcnst(U,u,-);
+ identity(r,l,U,u,0);
+ break;
+ case SUB+P:
+ if (l->op == CNST+P && r->op == CNST+P)
+ return cnsttree(ty, (long)((char *)l->u.v.p - (char *)r->u.v.p));
+ if (r->op == CNST+I || r->op == CNST+U)
+ return simplify(ADD, ty, l,
+ cnsttree(inttype, r->op == CNST+I ? -r->u.v.i : -(long)r->u.v.u));
+ if (isaddrop(l->op) && r->op == ADD+I && r->kids[1]->op == CNST+I)
+ /* l - (x + c) => l-c - x */
+ return simplify(SUB, ty,
+ simplify(SUB, ty, l, r->kids[1]), r->kids[0]);
+ break;
+ default:assert(0);
+ }
+ return tree(op, ty, l, r);
+}
+/* ispow2 - if u > 1 && u == 2^n, return n, otherwise return 0 */
+int ispow2(unsigned long u) {
+ int n;
+
+ if (u > 1 && (u&(u-1)) == 0)
+ for (n = 0; u; u >>= 1, n++)
+ if (u&1)
+ return n;
+ return 0;
+}
+
diff --git a/lcc/src/sparc.md b/lcc/src/sparc.md
index 0171492..f956d46 100755
--- a/lcc/src/sparc.md
+++ b/lcc/src/sparc.md
@@ -1,1163 +1,1163 @@
-%{
-#include "c.h"
-#define NODEPTR_TYPE Node
-#define OP_LABEL(p) ((p)->op)
-#define LEFT_CHILD(p) ((p)->kids[0])
-#define RIGHT_CHILD(p) ((p)->kids[1])
-#define STATE_LABEL(p) ((p)->x.state)
-static void address(Symbol, Symbol, long);
-static void blkfetch(int, int, int, int);
-static void blkloop(int, int, int, int, int, int[]);
-static void blkstore(int, int, int, int);
-static void defaddress(Symbol);
-static void defconst(int, int, Value);
-static void defstring(int, char *);
-static void defsymbol(Symbol);
-static void doarg(Node);
-static void emit2(Node);
-static void export(Symbol);
-static void clobber(Node);
-static void function(Symbol, Symbol [], Symbol [], int);
-static void global(Symbol);
-static void import(Symbol);
-static void local(Symbol);
-static void progbeg(int, char **);
-static void progend(void);
-static void segment(int);
-static void space(int);
-static void target(Node);
-static int imm(Node);
-static void renameregs(void);
-extern Interface sparcIR, solarisIR;
-static void defsymbol2(Symbol);
-static void export2(Symbol);
-static void globalend(void);
-static void global2(Symbol);
-static void segment2(int);
-static void progend2(void);
-
-extern char *stabprefix;
-extern void stabblock(int, int, Symbol*);
-extern void stabend(Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
-extern void stabfend(Symbol, int);
-extern void stabinit(char *, int, char *[]);
-extern void stabline(Coordinate *);
-extern void stabsym(Symbol);
-extern void stabtype(Symbol);
-static Symbol greg[32], gregw;
-static Symbol *oreg = &greg[8], *ireg = &greg[24];
-static Symbol freg[32], freg2[32];
-static Symbol fregw, freg2w;
-
-static int regvars;
-static int retstruct;
-
-static int pflag = 0;
-
-static int cseg;
-
-%}
-%start stmt
-%term CNSTF4=4113
-%term CNSTF8=8209
-%term CNSTF16=16401
-%term CNSTI1=1045
-%term CNSTI2=2069
-%term CNSTI4=4117
-%term CNSTI8=8213
-%term CNSTP4=4119
-%term CNSTP8=8215
-%term CNSTU1=1046
-%term CNSTU2=2070
-%term CNSTU4=4118
-%term CNSTU8=8214
-
-%term ARGB=41
-%term ARGF4=4129
-%term ARGF8=8225
-%term ARGF16=16417
-%term ARGI4=4133
-%term ARGI8=8229
-%term ARGP4=4135
-%term ARGP8=8231
-%term ARGU4=4134
-%term ARGU8=8230
-
-%term ASGNB=57
-%term ASGNF4=4145
-%term ASGNF8=8241
-%term ASGNF16=16433
-%term ASGNI1=1077
-%term ASGNI2=2101
-%term ASGNI4=4149
-%term ASGNI8=8245
-%term ASGNP4=4151
-%term ASGNP8=8247
-%term ASGNU1=1078
-%term ASGNU2=2102
-%term ASGNU4=4150
-%term ASGNU8=8246
-
-%term INDIRB=73
-%term INDIRF4=4161
-%term INDIRF8=8257
-%term INDIRF16=16449
-%term INDIRI1=1093
-%term INDIRI2=2117
-%term INDIRI4=4165
-%term INDIRI8=8261
-%term INDIRP4=4167
-%term INDIRP8=8263
-%term INDIRU1=1094
-%term INDIRU2=2118
-%term INDIRU4=4166
-%term INDIRU8=8262
-
-%term CVFF4=4209
-%term CVFF8=8305
-%term CVFF16=16497
-%term CVFI4=4213
-%term CVFI8=8309
-
-%term CVIF4=4225
-%term CVIF8=8321
-%term CVIF16=16513
-%term CVII1=1157
-%term CVII2=2181
-%term CVII4=4229
-%term CVII8=8325
-%term CVIU1=1158
-%term CVIU2=2182
-%term CVIU4=4230
-%term CVIU8=8326
-
-%term CVPP4=4247
-%term CVPP8=8343
-%term CVPP16=16535
-%term CVPU4=4246
-%term CVPU8=8342
-
-%term CVUI1=1205
-%term CVUI2=2229
-%term CVUI4=4277
-%term CVUI8=8373
-%term CVUP4=4279
-%term CVUP8=8375
-%term CVUP16=16567
-%term CVUU1=1206
-%term CVUU2=2230
-%term CVUU4=4278
-%term CVUU8=8374
-
-%term NEGF4=4289
-%term NEGF8=8385
-%term NEGF16=16577
-%term NEGI4=4293
-%term NEGI8=8389
-
-%term CALLB=217
-%term CALLF4=4305
-%term CALLF8=8401
-%term CALLF16=16593
-%term CALLI4=4309
-%term CALLI8=8405
-%term CALLP4=4311
-%term CALLP8=8407
-%term CALLU4=4310
-%term CALLU8=8406
-%term CALLV=216
-
-%term RETF4=4337
-%term RETF8=8433
-%term RETF16=16625
-%term RETI4=4341
-%term RETI8=8437
-%term RETP4=4343
-%term RETP8=8439
-%term RETU4=4342
-%term RETU8=8438
-%term RETV=248
-
-%term ADDRGP4=4359
-%term ADDRGP8=8455
-
-%term ADDRFP4=4375
-%term ADDRFP8=8471
-
-%term ADDRLP4=4391
-%term ADDRLP8=8487
-
-%term ADDF4=4401
-%term ADDF8=8497
-%term ADDF16=16689
-%term ADDI4=4405
-%term ADDI8=8501
-%term ADDP4=4407
-%term ADDP8=8503
-%term ADDU4=4406
-%term ADDU8=8502
-
-%term SUBF4=4417
-%term SUBF8=8513
-%term SUBF16=16705
-%term SUBI4=4421
-%term SUBI8=8517
-%term SUBP4=4423
-%term SUBP8=8519
-%term SUBU4=4422
-%term SUBU8=8518
-
-%term LSHI4=4437
-%term LSHI8=8533
-%term LSHU4=4438
-%term LSHU8=8534
-
-%term MODI4=4453
-%term MODI8=8549
-%term MODU4=4454
-%term MODU8=8550
-
-%term RSHI4=4469
-%term RSHI8=8565
-%term RSHU4=4470
-%term RSHU8=8566
-
-%term BANDI4=4485
-%term BANDI8=8581
-%term BANDU4=4486
-%term BANDU8=8582
-
-%term BCOMI4=4501
-%term BCOMI8=8597
-%term BCOMU4=4502
-%term BCOMU8=8598
-
-%term BORI4=4517
-%term BORI8=8613
-%term BORU4=4518
-%term BORU8=8614
-
-%term BXORI4=4533
-%term BXORI8=8629
-%term BXORU4=4534
-%term BXORU8=8630
-
-%term DIVF4=4545
-%term DIVF8=8641
-%term DIVF16=16833
-%term DIVI4=4549
-%term DIVI8=8645
-%term DIVU4=4550
-%term DIVU8=8646
-
-%term MULF4=4561
-%term MULF8=8657
-%term MULF16=16849
-%term MULI4=4565
-%term MULI8=8661
-%term MULU4=4566
-%term MULU8=8662
-
-%term EQF4=4577
-%term EQF8=8673
-%term EQF16=16865
-%term EQI4=4581
-%term EQI8=8677
-%term EQU4=4582
-%term EQU8=8678
-
-%term GEF4=4593
-%term GEF8=8689
-%term GEI4=4597
-%term GEI8=8693
-%term GEI16=16885
-%term GEU4=4598
-%term GEU8=8694
-
-%term GTF4=4609
-%term GTF8=8705
-%term GTF16=16897
-%term GTI4=4613
-%term GTI8=8709
-%term GTU4=4614
-%term GTU8=8710
-
-%term LEF4=4625
-%term LEF8=8721
-%term LEF16=16913
-%term LEI4=4629
-%term LEI8=8725
-%term LEU4=4630
-%term LEU8=8726
-
-%term LTF4=4641
-%term LTF8=8737
-%term LTF16=16929
-%term LTI4=4645
-%term LTI8=8741
-%term LTU4=4646
-%term LTU8=8742
-
-%term NEF4=4657
-%term NEF8=8753
-%term NEF16=16945
-%term NEI4=4661
-%term NEI8=8757
-%term NEU4=4662
-%term NEU8=8758
-
-%term JUMPV=584
-
-%term LABELV=600
-
-%term LOADB=233
-%term LOADF4=4321
-%term LOADF8=8417
-%term LOADF16=16609
-%term LOADI1=1253
-%term LOADI2=2277
-%term LOADI4=4325
-%term LOADI8=8421
-%term LOADP4=4327
-%term LOADP8=8423
-%term LOADU1=1254
-%term LOADU2=2278
-%term LOADU4=4326
-%term LOADU8=8422
-
-%term VREGP=711
-%%
-reg: INDIRI1(VREGP) "# read register\n"
-reg: INDIRU1(VREGP) "# read register\n"
-
-reg: INDIRI2(VREGP) "# read register\n"
-reg: INDIRU2(VREGP) "# read register\n"
-
-reg: INDIRF4(VREGP) "# read register\n"
-reg: INDIRI4(VREGP) "# read register\n"
-reg: INDIRP4(VREGP) "# read register\n"
-reg: INDIRU4(VREGP) "# read register\n"
-
-reg: INDIRF8(VREGP) "# read register\n"
-reg: INDIRI8(VREGP) "# read register\n"
-reg: INDIRP8(VREGP) "# read register\n"
-reg: INDIRU8(VREGP) "# read register\n"
-
-stmt: ASGNI1(VREGP,reg) "# write register\n"
-stmt: ASGNU1(VREGP,reg) "# write register\n"
-
-stmt: ASGNI2(VREGP,reg) "# write register\n"
-stmt: ASGNU2(VREGP,reg) "# write register\n"
-
-stmt: ASGNF4(VREGP,reg) "# write register\n"
-stmt: ASGNI4(VREGP,reg) "# write register\n"
-stmt: ASGNP4(VREGP,reg) "# write register\n"
-stmt: ASGNU4(VREGP,reg) "# write register\n"
-
-stmt: ASGNF8(VREGP,reg) "# write register\n"
-stmt: ASGNI8(VREGP,reg) "# write register\n"
-stmt: ASGNP8(VREGP,reg) "# write register\n"
-stmt: ASGNU8(VREGP,reg) "# write register\n"
-con: CNSTI1 "%a"
-con: CNSTU1 "%a"
-
-con: CNSTI2 "%a"
-con: CNSTU2 "%a"
-
-con: CNSTI4 "%a"
-con: CNSTU4 "%a"
-con: CNSTP4 "%a"
-
-con: CNSTI8 "%a"
-con: CNSTU8 "%a"
-con: CNSTP8 "%a"
-stmt: reg ""
-reg: ADDRGP4 "set %a,%%%c\n" 1
-stk13: ADDRFP4 "%a" imm(a)
-stk13: ADDRLP4 "%a" imm(a)
-reg: stk13 "add %0,%%fp,%%%c\n" 1
-stk: ADDRFP4 "set %a,%%%c\n" 2
-stk: ADDRLP4 "set %a,%%%c\n" 2
-reg: ADDRFP4 "set %a,%%%c\nadd %%%c,%%fp,%%%c\n" 3
-reg: ADDRLP4 "set %a,%%%c\nadd %%%c,%%fp,%%%c\n" 3
-con13: CNSTI1 "%a" imm(a)
-con13: CNSTI2 "%a" imm(a)
-con13: CNSTI4 "%a" imm(a)
-con13: CNSTU1 "%a" imm(a)
-con13: CNSTU2 "%a" imm(a)
-con13: CNSTU4 "%a" imm(a)
-con13: CNSTP4 "%a" imm(a)
-base: ADDI4(reg,con13) "%%%0+%1"
-base: ADDP4(reg,con13) "%%%0+%1"
-base: ADDU4(reg,con13) "%%%0+%1"
-base: reg "%%%0"
-base: con13 "%0"
-base: stk13 "%%fp+%0"
-addr: base "%0"
-addr: ADDI4(reg,reg) "%%%0+%%%1"
-addr: ADDP4(reg,reg) "%%%0+%%%1"
-addr: ADDU4(reg,reg) "%%%0+%%%1"
-addr: stk "%%fp+%%%0"
-reg: INDIRI1(addr) "ldsb [%0],%%%c\n" 1
-reg: INDIRI2(addr) "ldsh [%0],%%%c\n" 1
-reg: INDIRI4(addr) "ld [%0],%%%c\n" 1
-reg: INDIRU1(addr) "ldub [%0],%%%c\n" 1
-reg: INDIRU2(addr) "lduh [%0],%%%c\n" 1
-reg: INDIRU4(addr) "ld [%0],%%%c\n" 1
-reg: INDIRP4(addr) "ld [%0],%%%c\n" 1
-reg: INDIRF4(addr) "ld [%0],%%f%c\n" 1
-stmt: ASGNI1(addr,reg) "stb %%%1,[%0]\n" 1
-stmt: ASGNI2(addr,reg) "sth %%%1,[%0]\n" 1
-stmt: ASGNI4(addr,reg) "st %%%1,[%0]\n" 1
-stmt: ASGNU1(addr,reg) "stb %%%1,[%0]\n" 1
-stmt: ASGNU2(addr,reg) "sth %%%1,[%0]\n" 1
-stmt: ASGNU4(addr,reg) "st %%%1,[%0]\n" 1
-stmt: ASGNP4(addr,reg) "st %%%1,[%0]\n" 1
-stmt: ASGNF4(addr,reg) "st %%f%1,[%0]\n" 1
-addrl: ADDRLP4 "%%%fp+%a" imm(a)
-
-reg: INDIRF8(addrl) "ldd [%0],%%f%c\n" 1
-stmt: ASGNF8(addrl,reg) "std %%f%1,[%0]\n" 1
-reg: INDIRF8(base) "ld2 [%0],%%f%c\n" 2
-stmt: ASGNF8(base,reg) "st2 %%f%1,[%0]\n" 2
-spill: ADDRLP4 "%a" !imm(a)
-
-stmt: ASGNI1(spill,reg) "set %0,%%g1\nstb %%%1,[%%fp+%%g1]\n"
-stmt: ASGNI2(spill,reg) "set %0,%%g1\nsth %%%1,[%%fp+%%g1]\n"
-stmt: ASGNI4(spill,reg) "set %0,%%g1\nst %%%1,[%%fp+%%g1]\n"
-stmt: ASGNU1(spill,reg) "set %0,%%g1\nstb %%%1,[%%fp+%%g1]\n"
-stmt: ASGNU2(spill,reg) "set %0,%%g1\nsth %%%1,[%%fp+%%g1]\n"
-stmt: ASGNU4(spill,reg) "set %0,%%g1\nst %%%1,[%%fp+%%g1]\n"
-stmt: ASGNP4(spill,reg) "set %0,%%g1\nst %%%1,[%%fp+%%g1]\n"
-stmt: ASGNF4(spill,reg) "set %0,%%g1\nst %%f%1,[%%fp+%%g1]\n"
-stmt: ASGNF8(spill,reg) "set %0,%%g1\nstd %%f%1,[%%fp+%%g1]\n"
-reg: CVII4(INDIRI1(addr)) "ldsb [%0],%%%c\n" 1
-reg: CVII4(INDIRI2(addr)) "ldsh [%0],%%%c\n" 1
-reg: CVUU4(INDIRU1(addr)) "ldub [%0],%%%c\n" 1
-reg: CVUU4(INDIRU2(addr)) "lduh [%0],%%%c\n" 1
-reg: CVUI4(INDIRU1(addr)) "ldub [%0],%%%c\n" 1
-reg: CVUI4(INDIRU2(addr)) "lduh [%0],%%%c\n" 1
-reg: LOADI1(reg) "mov %%%0,%%%c\n" move(a)
-reg: LOADI2(reg) "mov %%%0,%%%c\n" move(a)
-reg: LOADI4(reg) "mov %%%0,%%%c\n" move(a)
-reg: LOADP4(reg) "mov %%%0,%%%c\n" move(a)
-reg: LOADU1(reg) "mov %%%0,%%%c\n" move(a)
-reg: LOADU2(reg) "mov %%%0,%%%c\n" move(a)
-reg: LOADU4(reg) "mov %%%0,%%%c\n" move(a)
-reg: CNSTI1 "# reg\n" range(a, 0, 0)
-reg: CNSTI2 "# reg\n" range(a, 0, 0)
-reg: CNSTI4 "# reg\n" range(a, 0, 0)
-reg: CNSTP4 "# reg\n" range(a, 0, 0)
-reg: CNSTU1 "# reg\n" range(a, 0, 0)
-reg: CNSTU2 "# reg\n" range(a, 0, 0)
-reg: CNSTU4 "# reg\n" range(a, 0, 0)
-reg: con "set %0,%%%c\n" 1
-rc: con13 "%0"
-rc: reg "%%%0"
-reg: ADDI4(reg,rc) "add %%%0,%1,%%%c\n" 1
-reg: ADDP4(reg,rc) "add %%%0,%1,%%%c\n" 1
-reg: ADDU4(reg,rc) "add %%%0,%1,%%%c\n" 1
-reg: BANDI4(reg,rc) "and %%%0,%1,%%%c\n" 1
-reg: BORI4(reg,rc) "or %%%0,%1,%%%c\n" 1
-reg: BXORI4(reg,rc) "xor %%%0,%1,%%%c\n" 1
-reg: BANDU4(reg,rc) "and %%%0,%1,%%%c\n" 1
-reg: BORU4(reg,rc) "or %%%0,%1,%%%c\n" 1
-reg: BXORU4(reg,rc) "xor %%%0,%1,%%%c\n" 1
-reg: SUBI4(reg,rc) "sub %%%0,%1,%%%c\n" 1
-reg: SUBP4(reg,rc) "sub %%%0,%1,%%%c\n" 1
-reg: SUBU4(reg,rc) "sub %%%0,%1,%%%c\n" 1
-rc5: CNSTI4 "%a" range(a, 0, 31)
-rc5: reg "%%%0"
-reg: LSHI4(reg,rc5) "sll %%%0,%1,%%%c\n" 1
-reg: LSHU4(reg,rc5) "sll %%%0,%1,%%%c\n" 1
-reg: RSHI4(reg,rc5) "sra %%%0,%1,%%%c\n" 1
-reg: RSHU4(reg,rc5) "srl %%%0,%1,%%%c\n" 1
-reg: BANDI4(reg,BCOMI4(rc)) "andn %%%0,%1,%%%c\n" 1
-reg: BORI4(reg,BCOMI4(rc)) "orn %%%0,%1,%%%c\n" 1
-reg: BXORI4(reg,BCOMI4(rc)) "xnor %%%0,%1,%%%c\n" 1
-reg: BANDU4(reg,BCOMU4(rc)) "andn %%%0,%1,%%%c\n" 1
-reg: BORU4(reg,BCOMU4(rc)) "orn %%%0,%1,%%%c\n" 1
-reg: BXORU4(reg,BCOMU4(rc)) "xnor %%%0,%1,%%%c\n" 1
-reg: NEGI4(reg) "neg %%%0,%%%c\n" 1
-reg: BCOMI4(reg) "not %%%0,%%%c\n" 1
-reg: BCOMU4(reg) "not %%%0,%%%c\n" 1
-reg: CVII4(reg) "sll %%%0,8*(4-%a),%%%c; sra %%%c,8*(4-%a),%%%c\n" 2
-reg: CVUU4(reg) "sll %%%0,8*(4-%a),%%%c; srl %%%c,8*(4-%a),%%%c\n" 2
-reg: CVUU4(reg) "and %%%0,0xff,%%%c\n" (a->syms[0]->u.c.v.i == 1 ? 1 : LBURG_MAX)
-reg: CVUU4(reg) "set 0xffff,%%g1; and %%%0,%%g1,%%%c\n" 2
-reg: CVUI4(reg) "and %%%0,0xff,%%%c\n" (a->syms[0]->u.c.v.i == 1 ? 1 : LBURG_MAX)
-reg: CVUI4(reg) "set 0xffff,%%g1; and %%%0,%%g1,%%%c\n" 2
-addrg: ADDRGP4 "%a"
-stmt: JUMPV(addrg) "ba %0; nop\n" 2
-stmt: JUMPV(addr) "jmp %0; nop\n" 2
-stmt: LABELV "%a:\n"
-stmt: EQI4(reg,rc) "cmp %%%0,%1; be %a; nop\n" 3
-stmt: EQU4(reg,rc) "cmp %%%0,%1; be %a; nop\n" 3
-stmt: GEI4(reg,rc) "cmp %%%0,%1; bge %a; nop\n" 3
-stmt: GEU4(reg,rc) "cmp %%%0,%1; bgeu %a; nop\n" 3
-stmt: GTI4(reg,rc) "cmp %%%0,%1; bg %a; nop\n" 3
-stmt: GTU4(reg,rc) "cmp %%%0,%1; bgu %a; nop\n" 3
-stmt: LEI4(reg,rc) "cmp %%%0,%1; ble %a; nop\n" 3
-stmt: LEU4(reg,rc) "cmp %%%0,%1; bleu %a; nop\n" 3
-stmt: LTI4(reg,rc) "cmp %%%0,%1; bl %a; nop\n" 3
-stmt: LTU4(reg,rc) "cmp %%%0,%1; blu %a; nop\n" 3
-stmt: NEI4(reg,rc) "cmp %%%0,%1; bne %a; nop\n" 3
-stmt: NEU4(reg,rc) "cmp %%%0,%1; bne %a; nop\n" 3
-call: ADDRGP4 "%a"
-call: addr "%0"
-reg: CALLF8(call) "call %0; nop\n" 2
-reg: CALLF4(call) "call %0; nop\n" 2
-reg: CALLI4(call) "call %0; nop\n" 2
-reg: CALLP4(call) "call %0; nop\n" 2
-reg: CALLU4(call) "call %0; nop\n" 2
-stmt: CALLV(call) "call %0; nop\n" 2
-stmt: CALLB(call,reg) "call %0; st %%%1,[%%sp+64]; unimp %b&0xfff\n" 3
-
-stmt: RETF8(reg) "# ret\n" 1
-stmt: RETF4(reg) "# ret\n" 1
-stmt: RETI4(reg) "# ret\n" 1
-stmt: RETU4(reg) "# ret\n" 1
-stmt: RETP4(reg) "# ret\n" 1
-stmt: ARGI4(reg) "st %%%0,[%%sp+4*%c+68]\n" 1
-stmt: ARGU4(reg) "st %%%0,[%%sp+4*%c+68]\n" 1
-stmt: ARGP4(reg) "st %%%0,[%%sp+4*%c+68]\n" 1
-stmt: ARGF4(reg) "# ARGF4\n" 1
-stmt: ARGF8(reg) "# ARGF8\n" 1
-
-reg: DIVI4(reg,rc) "sra %%%0,31,%%g1; wr %%g0,%%g1,%%y; nop; nop; nop; sdiv %%%0,%1,%%%c\n" 6
-
-reg: DIVU4(reg,rc) "wr %%g0,%%g0,%%y; nop; nop; nop; udiv %%%0,%1,%%%c\n" 5
-
-reg: MODI4(reg,rc) "sra %%%0,31,%%g1; wr %%g0,%%g1,%%y; nop; nop; nop; sdiv %%%0,%1,%%g1\n; smul %%g1,%1,%%g1; sub %%%0,%%g1,%%%c\n" 8
-
-
-reg: MODU4(reg,rc) "wr %%g0,%%g0,%%y; nop; nop; nop; udiv %%%0,%1,%%g1\n; umul %%g1,%1,%%g1; sub %%%0,%%g1,%%%c\n" 7
-
-
-reg: MULI4(rc,reg) "smul %%%1,%0,%%%c\n" 1
-reg: MULU4(rc,reg) "umul %%%1,%0,%%%c\n" 1
-reg: ADDF8(reg,reg) "faddd %%f%0,%%f%1,%%f%c\n" 1
-reg: ADDF4(reg,reg) "fadds %%f%0,%%f%1,%%f%c\n" 1
-reg: DIVF8(reg,reg) "fdivd %%f%0,%%f%1,%%f%c\n" 1
-reg: DIVF4(reg,reg) "fdivs %%f%0,%%f%1,%%f%c\n" 1
-reg: MULF8(reg,reg) "fmuld %%f%0,%%f%1,%%f%c\n" 1
-reg: MULF4(reg,reg) "fmuls %%f%0,%%f%1,%%f%c\n" 1
-reg: SUBF8(reg,reg) "fsubd %%f%0,%%f%1,%%f%c\n" 1
-reg: SUBF4(reg,reg) "fsubs %%f%0,%%f%1,%%f%c\n" 1
-reg: NEGF4(reg) "fnegs %%f%0,%%f%c\n" 1
-reg: LOADF4(reg) "fmovs %%f%0,%%f%c\n" 1
-reg: CVFF4(reg) "fdtos %%f%0,%%f%c\n" 1
-reg: CVFF8(reg) "fstod %%f%0,%%f%c\n" 1
-reg: CVFI4(reg) "fstoi %%f%0,%%f0; st %%f0,[%%sp+64]; ld [%%sp+64],%%%c\n" (a->syms[0]->u.c.v.i==4?3:LBURG_MAX)
-
-reg: CVFI4(reg) "fdtoi %%f%0,%%f0; st %%f0,[%%sp+64]; ld [%%sp+64],%%%c\n" (a->syms[0]->u.c.v.i==8?3:LBURG_MAX)
-
-reg: CVIF4(reg) "st %%%0,[%%sp+64]; ld [%%sp+64],%%f%c; fitos %%f%c,%%f%c\n" 3
-
-reg: CVIF8(reg) "st %%%0,[%%sp+64]; ld [%%sp+64],%%f%c; fitod %%f%c,%%f%c\n" 3
-
-rel: EQF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbue"
-rel: EQF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbue"
-rel: GEF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbuge"
-rel: GEF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbuge"
-rel: GTF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbug"
-rel: GTF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbug"
-rel: LEF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbule"
-rel: LEF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbule"
-rel: LTF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbul"
-rel: LTF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbul"
-rel: NEF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbne"
-rel: NEF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbne"
-
-stmt: rel "%0 %a; nop\n" 4
-reg: LOADF8(reg) "# LOADD\n" 2
-
-reg: NEGF8(reg) "# NEGD\n" 2
-
-stmt: ASGNB(reg,INDIRB(reg)) "# ASGNB\n"
-
-%%
-static void progend(void){}
-static void progbeg(int argc, char *argv[]) {
- int i;
-
- {
- union {
- char c;
- int i;
- } u;
- u.i = 0;
- u.c = 1;
- swap = ((int)(u.i == 1)) != IR->little_endian;
- }
- parseflags(argc, argv);
- for (i = 0; i < argc; i++)
- if (strcmp(argv[i], "-p") == 0 || strcmp(argv[i], "-pg") == 0)
- pflag = 1;
- if (IR == &solarisIR)
- stabprefix = ".LL";
- else
- stabprefix = "L";
- for (i = 0; i < 8; i++) {
- greg[i + 0] = mkreg(stringf("g%d", i), i + 0, 1, IREG);
- greg[i + 8] = mkreg(stringf("o%d", i), i + 8, 1, IREG);
- greg[i + 16] = mkreg(stringf("l%d", i), i + 16, 1, IREG);
- greg[i + 24] = mkreg(stringf("i%d", i), i + 24, 1, IREG);
- }
- gregw = mkwildcard(greg);
- for (i = 0; i < 32; i++)
- freg[i] = mkreg("%d", i, 1, FREG);
- for (i = 0; i < 31; i += 2)
- freg2[i] = mkreg("%d", i, 3, FREG);
- fregw = mkwildcard(freg);
- freg2w = mkwildcard(freg2);
- tmask[IREG] = 0x3fff3e00;
- vmask[IREG] = 0x3ff00000;
- tmask[FREG] = ~(unsigned)0;
- vmask[FREG] = 0;
-}
-static Symbol rmap(int opk) {
- switch (optype(opk)) {
- case I: case U: case P: case B:
- return gregw;
- case F:
- return opsize(opk) == 4 ? fregw : freg2w;
- default:
- return 0;
- }
-}
-static void target(Node p) {
- assert(p);
- switch (specific(p->op)) {
- case CNST+I: case CNST+U: case CNST+P:
- if (range(p, 0, 0) == 0) {
- setreg(p, greg[0]);
- p->x.registered = 1;
- }
- break;
- case CALL+B:
- assert(p->syms[1] && p->syms[1]->type && isfunc(p->syms[1]->type));
- p->syms[1] = intconst(freturn(p->syms[1]->type)->size);
- break;
- case CALL+F: setreg(p, opsize(p->op)==4?freg[0]:freg2[0]); break;
- case CALL+I: case CALL+P: case CALL+U:
- case CALL+V: setreg(p, oreg[0]); break;
- case RET+F: rtarget(p, 0, opsize(p->op)==4?freg[0]:freg2[0]); break;
- case RET+I: case RET+P: case RET+U:
- rtarget(p, 0, ireg[0]);
- p->kids[0]->x.registered = 1;
- break;
- case ARG+I: case ARG+P: case ARG+U:
- if (p->syms[RX]->u.c.v.i < 6) {
- rtarget(p, 0, oreg[p->syms[RX]->u.c.v.i]);
- p->op = LOAD+opkind(p->op);
- setreg(p, oreg[p->syms[RX]->u.c.v.i]);
- }
- break;
- }
-}
-static void clobber(Node p) {
- assert(p);
- switch (specific(p->op)) {
- case CALL+B: case CALL+F: case CALL+I:
- spill(~(unsigned)3, FREG, p);
- break;
- case CALL+V:
- spill(oreg[0]->x.regnode->mask, IREG, p);
- spill(~(unsigned)3, FREG, p);
- break;
- case ARG+F:
- if (opsize(p->op) == 4 && p->syms[2]->u.c.v.i <= 6)
- spill((1<<(p->syms[2]->u.c.v.i + 8)), IREG, p);
- else if (opsize(p->op) == 8 && p->syms[2]->u.c.v.i <= 5)
- spill((3<<(p->syms[2]->u.c.v.i + 8))&0xff00, IREG, p);
- break;
- }
-}
-static int imm(Node p) {
- return range(p, -4096, 4091);
-}
-static void doarg(Node p) {
- assert(p && p->syms[0] && p->op != ARG+B);
- p->syms[RX] = intconst(mkactual(4,
- p->syms[0]->u.c.v.i)/4);
-}
-static void emit2(Node p) {
- switch (p->op) {
- case ARG+F+sizeop(4): {
- int n = p->syms[RX]->u.c.v.i;
- print("st %%f%d,[%%sp+4*%d+68]\n",
- getregnum(p->x.kids[0]), n);
- if (n <= 5)
- print("ld [%%sp+4*%d+68],%%o%d\n", n, n);
- break;
- }
- case ARG+F+sizeop(8): {
- int n = p->syms[RX]->u.c.v.i;
- int src = getregnum(p->x.kids[0]);
- print("st %%f%d,[%%sp+4*%d+68]\n", src, n);
- print("st %%f%d,[%%sp+4*%d+68]\n", src+1, n+1);
- if (n <= 5)
- print("ld [%%sp+4*%d+68],%%o%d\n", n, n);
- if (n <= 4)
- print("ld [%%sp+4*%d+68],%%o%d\n", n+1, n+1);
- break;
- }
- case LOAD+F+sizeop(8): {
- int dst = getregnum(p);
- int src = getregnum(p->x.kids[0]);
- print("fmovs %%f%d,%%f%d; ", src, dst);
- print("fmovs %%f%d,%%f%d\n", src+1, dst+1);
- break;
- }
- case NEG+F+sizeop(8): {
- int dst = getregnum(p);
- int src = getregnum(p->x.kids[0]);
- print("fnegs %%f%d,%%f%d; ", src, dst);
- print("fmovs %%f%d,%%f%d\n", src+1, dst+1);
- break;
- }
- case ASGN+B: {
- static int tmpregs[] = { 1, 2, 3 };
- dalign = salign = p->syms[1]->u.c.v.i;
- blkcopy(getregnum(p->x.kids[0]), 0,
- getregnum(p->x.kids[1]), 0,
- p->syms[0]->u.c.v.i, tmpregs);
- break;
- }
- }
-}
-static void local(Symbol p) {
- if (retstruct) {
- assert(p == retv);
- p->x.name = stringd(4*16);
- p->x.offset = 4*16;
- p->sclass = AUTO;
- retstruct = 0;
- return;
- }
- if (isscalar(p->type) && !p->addressed && !isfloat(p->type))
- p->sclass = REGISTER;
- if (askregvar(p, rmap(ttob(p->type))) == 0)
- mkauto(p);
- else if (p->scope > LOCAL)
- regvars++;
-}
-static void function(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
- int autos = 0, i, leaf, reg, varargs;
-
- if (IR == &solarisIR)
- globalend();
- regvars = 0;
- for (i = 0; callee[i]; i++)
- ;
- varargs = variadic(f->type)
- || i > 0 && strcmp(callee[i-1]->name,
- "__builtin_va_alist") == 0;
- usedmask[0] = usedmask[1] = 0;
- freemask[0] = freemask[1] = ~(unsigned)0;
- for (i = 0; i < 8; i++)
- ireg[i]->x.regnode->vbl = NULL;
- offset = 68;
- maxargoffset = 24;
- reg = 0;
- for (i = 0; callee[i]; i++) {
- Symbol p = callee[i], q = caller[i];
- int size = roundup(q->type->size, 4);
- assert(q);
- if (isfloat(p->type) || reg >= 6) {
- p->x.offset = q->x.offset = offset;
- p->x.name = q->x.name = stringd(offset);
- p->sclass = q->sclass = AUTO;
- autos++;
- }
- else if (p->addressed || varargs) {
- p->x.offset = offset;
- p->x.name = stringd(p->x.offset);
- p->sclass = AUTO;
- q->sclass = REGISTER;
- askregvar(q, ireg[reg]);
- assert(q->x.regnode);
- autos++;
- }
- else {
- p->sclass = q->sclass = REGISTER;
- askregvar(p, ireg[reg]);
- assert(p->x.regnode);
- q->x.name = p->x.name;
- }
- offset += size;
- reg += isstruct(p->type) ? 1 : size/4;
- }
- assert(caller[i] == 0);
- offset = maxoffset = 0;
- retstruct = isstruct(freturn(f->type));
- gencode(caller, callee);
- maxargoffset = roundup(maxargoffset, 4);
- framesize = roundup(maxoffset + maxargoffset + 4*(16+1), 8);
- assert(!varargs || autos);
- leaf = (!ncalls
- && !maxoffset && !autos && !regvars
- && !isstruct(freturn(f->type))
- && !(usedmask[IREG]&0x00ffff01)
- && !(usedmask[FREG]&~(unsigned)3)
- && !pflag && !glevel);
- print(".align 4\n%s:\n", f->x.name);
- if (leaf) {
- for (i = 0; caller[i] && callee[i]; i++) {
- Symbol p = caller[i], q = callee[i];
- if (p->sclass == REGISTER && q->sclass == REGISTER) {
- assert(q->x.regnode);
- assert(q->x.regnode->set == IREG);
- assert(q->x.regnode->number >= 24);
- assert(q->x.regnode->number <= 31);
- p->x.name = greg[q->x.regnode->number - 16]->x.name;
- }
- }
- renameregs();
- } else if (framesize <= 4095)
- print("save %%sp,%d,%%sp\n", -framesize);
- else
- print("set %d,%%g1; save %%sp,%%g1,%%sp\n", -framesize);
- if (varargs)
- for (; reg < 6; reg++)
- print("st %%i%d,[%%fp+%d]\n", reg, 4*reg + 68);
- else {
- offset = 4*(16 + 1);
- reg = 0;
- for (i = 0; caller[i]; i++) {
- Symbol p = caller[i];
- if (isfloat(p->type) && p->type->size == 8 && reg <= 4) {
- print("st %%r%d,[%%fp+%d]\n",
- ireg[reg++]->x.regnode->number, offset);
- print("st %%r%d,[%%fp+%d]\n",
- ireg[reg++]->x.regnode->number, offset + 4);
- } else if (isfloat(p->type) && p->type->size == 4 && reg <= 5)
- print("st %%r%d,[%%fp+%d]\n",
- ireg[reg++]->x.regnode->number, offset);
- else
- reg++;
- offset += roundup(p->type->size, 4);
- }
- }
- if (pflag) {
- int lab = genlabel(1);
- print("set L%d,%%o0; call mcount; nop\n", lab);
- print(".seg \"data\"\n.align 4; L%d:.word 0\n.seg \"text\"\n", lab);
- }
- emitcode();
- if (isstruct(freturn(f->type)))
- print("jmp %%i7+12; restore\n");
- else if (!leaf)
- print("ret; restore\n");
- else {
- renameregs();
- print("retl; nop\n");
- }
- if (IR == &solarisIR) {
- print(".type %s,#function\n", f->x.name);
- print(".size %s,.-%s\n", f->x.name, f->x.name);
- }
-}
-#define exch(x, y, t) (((t) = x), ((x) = (y)), ((y) = (t)))
-
-static void renameregs(void) {
- int i;
-
- for (i = 0; i < 8; i++) {
- char *ptmp;
- int itmp;
- if (ireg[i]->x.regnode->vbl)
- ireg[i]->x.regnode->vbl->x.name = oreg[i]->x.name;
- exch(ireg[i]->x.name, oreg[i]->x.name, ptmp);
- exch(ireg[i]->x.regnode->number,
- oreg[i]->x.regnode->number, itmp);
- }
-}
-static void defconst(int suffix, int size, Value v) {
- if (suffix == F && size == 4) {
- float f = v.d;
- print(".word 0x%x\n", *(unsigned *)&f);
- } else if (suffix == F && size == 8) {
- double d = v.d;
- unsigned *p = (unsigned *)&d;
- print(".word 0x%x\n.word 0x%x\n", p[swap], p[!swap]);
- } else if (suffix == P)
- print(".word 0x%x\n", v.p);
- else if (size == 1)
- print(".byte 0x%x\n", suffix == I ? v.i : v.u);
- else if (size == 2)
- print(".half 0x%x\n", suffix == I ? v.i : v.u);
- else if (size == 4)
- print(".word 0x%x\n", suffix == I ? v.i : v.u);
- else assert(0);
-}
-
-static void defaddress(Symbol p) {
- print(".word %s\n", p->x.name);
-}
-
-static void defstring(int n, char *str) {
- char *s;
-
- for (s = str; s < str + n; s++)
- print(".byte %d\n", (*s)&0377);
-}
-
-static void address(Symbol q, Symbol p, long n) {
- if (p->scope == GLOBAL || p->sclass == STATIC || p->sclass == EXTERN)
- q->x.name = stringf("%s%s%D", p->x.name, n >= 0 ? "+" : "", n);
- else {
- assert(n <= INT_MAX && n >= INT_MIN);
- q->x.offset = p->x.offset + n;
- q->x.name = stringd(q->x.offset);
- }
-}
-static void export(Symbol p) {
- print(".global %s\n", p->x.name);
-}
-static void import(Symbol p) {}
-static void defsymbol(Symbol p) {
- if (p->scope >= LOCAL && p->sclass == STATIC)
- p->x.name = stringf("%d", genlabel(1));
- else
- assert(p->scope != CONSTANTS || isint(p->type) || isptr(p->type)),
- p->x.name = p->name;
- if (p->scope >= LABELS)
- p->x.name = stringf(p->generated ? "L%s" : "_%s",
- p->x.name);
-}
-static void segment(int n) {
- cseg = n;
- switch (n) {
- case CODE: print(".seg \"text\"\n"); break;
- case BSS: print(".seg \"bss\"\n"); break;
- case DATA: print(".seg \"data\"\n"); break;
- case LIT: print(".seg \"text\"\n"); break;
- }
-}
-static void space(int n) {
- if (cseg != BSS)
- print(".skip %d\n", n);
-}
-static void global(Symbol p) {
- print(".align %d\n", p->type->align);
- assert(p->u.seg);
- if (p->u.seg == BSS
- && (p->sclass == STATIC || Aflag >= 2))
- print(".reserve %s,%d\n", p->x.name, p->type->size);
- else if (p->u.seg == BSS)
- print(".common %s,%d\n", p->x.name, p->type->size);
- else
- print("%s:\n", p->x.name);
-}
-static void blkfetch(int k, int off, int reg, int tmp) {
- assert(k == 1 || k == 2 || k == 4);
- assert(salign >= k);
- if (k == 1)
- print("ldub [%%r%d+%d],%%r%d\n", reg, off, tmp);
- else if (k == 2)
- print("lduh [%%r%d+%d],%%r%d\n", reg, off, tmp);
- else
- print("ld [%%r%d+%d],%%r%d\n", reg, off, tmp);
-}
-static void blkstore(int k, int off, int reg, int tmp) {
- assert(k == 1 || k == 2 || k == 4);
- assert(dalign >= k);
- if (k == 1)
- print("stb %%r%d,[%%r%d+%d]\n", tmp, reg, off);
- else if (k == 2)
- print("sth %%r%d,[%%r%d+%d]\n", tmp, reg, off);
- else
- print("st %%r%d,[%%r%d+%d]\n", tmp, reg, off);
-}
-static void blkloop(int dreg, int doff, int sreg, int soff, int size, int tmps[]) {
- if ((size&~7) < 4096) {
- print("add %%r%d,%d,%%r%d\n", sreg, size&~7, sreg);
- print("add %%r%d,%d,%%r%d\n", dreg, size&~7, tmps[2]);
- } else {
- print("set %d,%%r%d\n", size&~7, tmps[2]);
- print("add %%r%d,%%r%d,%%r%d\n", sreg, tmps[2], sreg);
- print("add %%r%d,%%r%d,%%r%d\n", dreg, tmps[2], tmps[2]);
- }
- blkcopy(tmps[2], doff, sreg, soff, size&7, tmps);
- print("1: dec 8,%%r%d\n", tmps[2]);
- blkcopy(tmps[2], doff, sreg, soff - 8, 8, tmps);
- print("cmp %%r%d,%%r%d; ", tmps[2], dreg);
- print("bgt 1b; ");
- print("dec 8,%%r%d\n", sreg);
-}
-static void defsymbol2(Symbol p) {
- if (p->scope >= LOCAL && p->sclass == STATIC)
- p->x.name = stringf(".%d", genlabel(1));
- else
- assert(p->scope != CONSTANTS || isint(p->type) || isptr(p->type)),
- p->x.name = p->name;
- if (p->scope >= LABELS)
- p->x.name = stringf(p->generated ? ".L%s" : "%s",
- p->x.name);
-}
-
-static Symbol prevg;
-
-static void globalend(void) {
- if (prevg && prevg->type->size > 0)
- print(".size %s,%d\n", prevg->x.name, prevg->type->size);
- prevg = NULL;
-}
-
-static void export2(Symbol p) {
- globalend();
- print(".global %s\n", p->x.name);
-}
-
-static void progend2(void) {
- globalend();
-}
-
-static void global2(Symbol p) {
- globalend();
- assert(p->u.seg);
- if (!p->generated) {
- print(".type %s,#%s\n", p->x.name,
- isfunc(p->type) ? "function" : "object");
- if (p->type->size > 0)
- print(".size %s,%d\n", p->x.name, p->type->size);
- else
- prevg = p;
- }
- if (p->u.seg == BSS && p->sclass == STATIC)
- print(".local %s\n.common %s,%d,%d\n", p->x.name, p->x.name,
- p->type->size, p->type->align);
- else if (p->u.seg == BSS && Aflag >= 2)
- print(".align %d\n%s:.skip %d\n", p->type->align, p->x.name,
- p->type->size);
- else if (p->u.seg == BSS)
- print(".common %s,%d,%d\n", p->x.name, p->type->size, p->type->align);
- else
- print(".align %d\n%s:\n", p->type->align, p->x.name);
-}
-
-static void segment2(int n) {
- cseg = n;
- switch (n) {
- case CODE: print(".section \".text\"\n"); break;
- case BSS: print(".section \".bss\"\n"); break;
- case DATA: print(".section \".data\"\n"); break;
- case LIT: print(".section \".rodata\"\n"); break;
- }
-}
-Interface sparcIR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 4, 4, 0, /* long */
- 4, 4, 0, /* long long */
- 4, 4, 1, /* float */
- 8, 8, 1, /* double */
- 8, 8, 1, /* long double */
- 4, 4, 0, /* T * */
- 0, 1, 0, /* struct */
- 0, /* little_endian */
- 0, /* mulops_calls */
- 1, /* wants_callb */
- 0, /* wants_argb */
- 1, /* left_to_right */
- 0, /* wants_dag */
- 0, /* unsigned_char */
- address,
- blockbeg,
- blockend,
- defaddress,
- defconst,
- defstring,
- defsymbol,
- emit,
- export,
- function,
- gen,
- global,
- import,
- local,
- progbeg,
- progend,
- segment,
- space,
- stabblock, 0, 0, stabinit, stabline, stabsym, stabtype,
- {
- 1, /* max_unaligned_load */
- rmap,
- blkfetch, blkstore, blkloop,
- _label,
- _rule,
- _nts,
- _kids,
- _string,
- _templates,
- _isinstruction,
- _ntname,
- emit2,
- doarg,
- target,
- clobber,
-
- }
-};
-
-Interface solarisIR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 4, 4, 0, /* long */
- 4, 4, 0, /* long long */
- 4, 4, 1, /* float */
- 8, 8, 1, /* double */
- 8, 8, 1, /* long double */
- 4, 4, 0, /* T * */
- 0, 1, 0, /* struct */
- 0, /* little_endian */
- 0, /* mulops_calls */
- 1, /* wants_callb */
- 0, /* wants_argb */
- 1, /* left_to_right */
- 0, /* wants_dag */
- 0, /* unsigned_char */
- address,
- blockbeg,
- blockend,
- defaddress,
- defconst,
- defstring,
- defsymbol2,
- emit,
- export2,
- function,
- gen,
- global2,
- import,
- local,
- progbeg,
- progend2,
- segment2,
- space,
- stabblock, 0, 0, stabinit, stabline, stabsym, stabtype,
- {
- 1, /* max_unaligned_load */
- rmap,
- blkfetch, blkstore, blkloop,
- _label,
- _rule,
- _nts,
- _kids,
- _string,
- _templates,
- _isinstruction,
- _ntname,
- emit2,
- doarg,
- target,
- clobber,
-
- }
-};
-static char rcsid[] = "$Id: sparc.md 145 2001-10-17 21:53:10Z timo $";
+%{
+#include "c.h"
+#define NODEPTR_TYPE Node
+#define OP_LABEL(p) ((p)->op)
+#define LEFT_CHILD(p) ((p)->kids[0])
+#define RIGHT_CHILD(p) ((p)->kids[1])
+#define STATE_LABEL(p) ((p)->x.state)
+static void address(Symbol, Symbol, long);
+static void blkfetch(int, int, int, int);
+static void blkloop(int, int, int, int, int, int[]);
+static void blkstore(int, int, int, int);
+static void defaddress(Symbol);
+static void defconst(int, int, Value);
+static void defstring(int, char *);
+static void defsymbol(Symbol);
+static void doarg(Node);
+static void emit2(Node);
+static void export(Symbol);
+static void clobber(Node);
+static void function(Symbol, Symbol [], Symbol [], int);
+static void global(Symbol);
+static void import(Symbol);
+static void local(Symbol);
+static void progbeg(int, char **);
+static void progend(void);
+static void segment(int);
+static void space(int);
+static void target(Node);
+static int imm(Node);
+static void renameregs(void);
+extern Interface sparcIR, solarisIR;
+static void defsymbol2(Symbol);
+static void export2(Symbol);
+static void globalend(void);
+static void global2(Symbol);
+static void segment2(int);
+static void progend2(void);
+
+extern char *stabprefix;
+extern void stabblock(int, int, Symbol*);
+extern void stabend(Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
+extern void stabfend(Symbol, int);
+extern void stabinit(char *, int, char *[]);
+extern void stabline(Coordinate *);
+extern void stabsym(Symbol);
+extern void stabtype(Symbol);
+static Symbol greg[32], gregw;
+static Symbol *oreg = &greg[8], *ireg = &greg[24];
+static Symbol freg[32], freg2[32];
+static Symbol fregw, freg2w;
+
+static int regvars;
+static int retstruct;
+
+static int pflag = 0;
+
+static int cseg;
+
+%}
+%start stmt
+%term CNSTF4=4113
+%term CNSTF8=8209
+%term CNSTF16=16401
+%term CNSTI1=1045
+%term CNSTI2=2069
+%term CNSTI4=4117
+%term CNSTI8=8213
+%term CNSTP4=4119
+%term CNSTP8=8215
+%term CNSTU1=1046
+%term CNSTU2=2070
+%term CNSTU4=4118
+%term CNSTU8=8214
+
+%term ARGB=41
+%term ARGF4=4129
+%term ARGF8=8225
+%term ARGF16=16417
+%term ARGI4=4133
+%term ARGI8=8229
+%term ARGP4=4135
+%term ARGP8=8231
+%term ARGU4=4134
+%term ARGU8=8230
+
+%term ASGNB=57
+%term ASGNF4=4145
+%term ASGNF8=8241
+%term ASGNF16=16433
+%term ASGNI1=1077
+%term ASGNI2=2101
+%term ASGNI4=4149
+%term ASGNI8=8245
+%term ASGNP4=4151
+%term ASGNP8=8247
+%term ASGNU1=1078
+%term ASGNU2=2102
+%term ASGNU4=4150
+%term ASGNU8=8246
+
+%term INDIRB=73
+%term INDIRF4=4161
+%term INDIRF8=8257
+%term INDIRF16=16449
+%term INDIRI1=1093
+%term INDIRI2=2117
+%term INDIRI4=4165
+%term INDIRI8=8261
+%term INDIRP4=4167
+%term INDIRP8=8263
+%term INDIRU1=1094
+%term INDIRU2=2118
+%term INDIRU4=4166
+%term INDIRU8=8262
+
+%term CVFF4=4209
+%term CVFF8=8305
+%term CVFF16=16497
+%term CVFI4=4213
+%term CVFI8=8309
+
+%term CVIF4=4225
+%term CVIF8=8321
+%term CVIF16=16513
+%term CVII1=1157
+%term CVII2=2181
+%term CVII4=4229
+%term CVII8=8325
+%term CVIU1=1158
+%term CVIU2=2182
+%term CVIU4=4230
+%term CVIU8=8326
+
+%term CVPP4=4247
+%term CVPP8=8343
+%term CVPP16=16535
+%term CVPU4=4246
+%term CVPU8=8342
+
+%term CVUI1=1205
+%term CVUI2=2229
+%term CVUI4=4277
+%term CVUI8=8373
+%term CVUP4=4279
+%term CVUP8=8375
+%term CVUP16=16567
+%term CVUU1=1206
+%term CVUU2=2230
+%term CVUU4=4278
+%term CVUU8=8374
+
+%term NEGF4=4289
+%term NEGF8=8385
+%term NEGF16=16577
+%term NEGI4=4293
+%term NEGI8=8389
+
+%term CALLB=217
+%term CALLF4=4305
+%term CALLF8=8401
+%term CALLF16=16593
+%term CALLI4=4309
+%term CALLI8=8405
+%term CALLP4=4311
+%term CALLP8=8407
+%term CALLU4=4310
+%term CALLU8=8406
+%term CALLV=216
+
+%term RETF4=4337
+%term RETF8=8433
+%term RETF16=16625
+%term RETI4=4341
+%term RETI8=8437
+%term RETP4=4343
+%term RETP8=8439
+%term RETU4=4342
+%term RETU8=8438
+%term RETV=248
+
+%term ADDRGP4=4359
+%term ADDRGP8=8455
+
+%term ADDRFP4=4375
+%term ADDRFP8=8471
+
+%term ADDRLP4=4391
+%term ADDRLP8=8487
+
+%term ADDF4=4401
+%term ADDF8=8497
+%term ADDF16=16689
+%term ADDI4=4405
+%term ADDI8=8501
+%term ADDP4=4407
+%term ADDP8=8503
+%term ADDU4=4406
+%term ADDU8=8502
+
+%term SUBF4=4417
+%term SUBF8=8513
+%term SUBF16=16705
+%term SUBI4=4421
+%term SUBI8=8517
+%term SUBP4=4423
+%term SUBP8=8519
+%term SUBU4=4422
+%term SUBU8=8518
+
+%term LSHI4=4437
+%term LSHI8=8533
+%term LSHU4=4438
+%term LSHU8=8534
+
+%term MODI4=4453
+%term MODI8=8549
+%term MODU4=4454
+%term MODU8=8550
+
+%term RSHI4=4469
+%term RSHI8=8565
+%term RSHU4=4470
+%term RSHU8=8566
+
+%term BANDI4=4485
+%term BANDI8=8581
+%term BANDU4=4486
+%term BANDU8=8582
+
+%term BCOMI4=4501
+%term BCOMI8=8597
+%term BCOMU4=4502
+%term BCOMU8=8598
+
+%term BORI4=4517
+%term BORI8=8613
+%term BORU4=4518
+%term BORU8=8614
+
+%term BXORI4=4533
+%term BXORI8=8629
+%term BXORU4=4534
+%term BXORU8=8630
+
+%term DIVF4=4545
+%term DIVF8=8641
+%term DIVF16=16833
+%term DIVI4=4549
+%term DIVI8=8645
+%term DIVU4=4550
+%term DIVU8=8646
+
+%term MULF4=4561
+%term MULF8=8657
+%term MULF16=16849
+%term MULI4=4565
+%term MULI8=8661
+%term MULU4=4566
+%term MULU8=8662
+
+%term EQF4=4577
+%term EQF8=8673
+%term EQF16=16865
+%term EQI4=4581
+%term EQI8=8677
+%term EQU4=4582
+%term EQU8=8678
+
+%term GEF4=4593
+%term GEF8=8689
+%term GEI4=4597
+%term GEI8=8693
+%term GEI16=16885
+%term GEU4=4598
+%term GEU8=8694
+
+%term GTF4=4609
+%term GTF8=8705
+%term GTF16=16897
+%term GTI4=4613
+%term GTI8=8709
+%term GTU4=4614
+%term GTU8=8710
+
+%term LEF4=4625
+%term LEF8=8721
+%term LEF16=16913
+%term LEI4=4629
+%term LEI8=8725
+%term LEU4=4630
+%term LEU8=8726
+
+%term LTF4=4641
+%term LTF8=8737
+%term LTF16=16929
+%term LTI4=4645
+%term LTI8=8741
+%term LTU4=4646
+%term LTU8=8742
+
+%term NEF4=4657
+%term NEF8=8753
+%term NEF16=16945
+%term NEI4=4661
+%term NEI8=8757
+%term NEU4=4662
+%term NEU8=8758
+
+%term JUMPV=584
+
+%term LABELV=600
+
+%term LOADB=233
+%term LOADF4=4321
+%term LOADF8=8417
+%term LOADF16=16609
+%term LOADI1=1253
+%term LOADI2=2277
+%term LOADI4=4325
+%term LOADI8=8421
+%term LOADP4=4327
+%term LOADP8=8423
+%term LOADU1=1254
+%term LOADU2=2278
+%term LOADU4=4326
+%term LOADU8=8422
+
+%term VREGP=711
+%%
+reg: INDIRI1(VREGP) "# read register\n"
+reg: INDIRU1(VREGP) "# read register\n"
+
+reg: INDIRI2(VREGP) "# read register\n"
+reg: INDIRU2(VREGP) "# read register\n"
+
+reg: INDIRF4(VREGP) "# read register\n"
+reg: INDIRI4(VREGP) "# read register\n"
+reg: INDIRP4(VREGP) "# read register\n"
+reg: INDIRU4(VREGP) "# read register\n"
+
+reg: INDIRF8(VREGP) "# read register\n"
+reg: INDIRI8(VREGP) "# read register\n"
+reg: INDIRP8(VREGP) "# read register\n"
+reg: INDIRU8(VREGP) "# read register\n"
+
+stmt: ASGNI1(VREGP,reg) "# write register\n"
+stmt: ASGNU1(VREGP,reg) "# write register\n"
+
+stmt: ASGNI2(VREGP,reg) "# write register\n"
+stmt: ASGNU2(VREGP,reg) "# write register\n"
+
+stmt: ASGNF4(VREGP,reg) "# write register\n"
+stmt: ASGNI4(VREGP,reg) "# write register\n"
+stmt: ASGNP4(VREGP,reg) "# write register\n"
+stmt: ASGNU4(VREGP,reg) "# write register\n"
+
+stmt: ASGNF8(VREGP,reg) "# write register\n"
+stmt: ASGNI8(VREGP,reg) "# write register\n"
+stmt: ASGNP8(VREGP,reg) "# write register\n"
+stmt: ASGNU8(VREGP,reg) "# write register\n"
+con: CNSTI1 "%a"
+con: CNSTU1 "%a"
+
+con: CNSTI2 "%a"
+con: CNSTU2 "%a"
+
+con: CNSTI4 "%a"
+con: CNSTU4 "%a"
+con: CNSTP4 "%a"
+
+con: CNSTI8 "%a"
+con: CNSTU8 "%a"
+con: CNSTP8 "%a"
+stmt: reg ""
+reg: ADDRGP4 "set %a,%%%c\n" 1
+stk13: ADDRFP4 "%a" imm(a)
+stk13: ADDRLP4 "%a" imm(a)
+reg: stk13 "add %0,%%fp,%%%c\n" 1
+stk: ADDRFP4 "set %a,%%%c\n" 2
+stk: ADDRLP4 "set %a,%%%c\n" 2
+reg: ADDRFP4 "set %a,%%%c\nadd %%%c,%%fp,%%%c\n" 3
+reg: ADDRLP4 "set %a,%%%c\nadd %%%c,%%fp,%%%c\n" 3
+con13: CNSTI1 "%a" imm(a)
+con13: CNSTI2 "%a" imm(a)
+con13: CNSTI4 "%a" imm(a)
+con13: CNSTU1 "%a" imm(a)
+con13: CNSTU2 "%a" imm(a)
+con13: CNSTU4 "%a" imm(a)
+con13: CNSTP4 "%a" imm(a)
+base: ADDI4(reg,con13) "%%%0+%1"
+base: ADDP4(reg,con13) "%%%0+%1"
+base: ADDU4(reg,con13) "%%%0+%1"
+base: reg "%%%0"
+base: con13 "%0"
+base: stk13 "%%fp+%0"
+addr: base "%0"
+addr: ADDI4(reg,reg) "%%%0+%%%1"
+addr: ADDP4(reg,reg) "%%%0+%%%1"
+addr: ADDU4(reg,reg) "%%%0+%%%1"
+addr: stk "%%fp+%%%0"
+reg: INDIRI1(addr) "ldsb [%0],%%%c\n" 1
+reg: INDIRI2(addr) "ldsh [%0],%%%c\n" 1
+reg: INDIRI4(addr) "ld [%0],%%%c\n" 1
+reg: INDIRU1(addr) "ldub [%0],%%%c\n" 1
+reg: INDIRU2(addr) "lduh [%0],%%%c\n" 1
+reg: INDIRU4(addr) "ld [%0],%%%c\n" 1
+reg: INDIRP4(addr) "ld [%0],%%%c\n" 1
+reg: INDIRF4(addr) "ld [%0],%%f%c\n" 1
+stmt: ASGNI1(addr,reg) "stb %%%1,[%0]\n" 1
+stmt: ASGNI2(addr,reg) "sth %%%1,[%0]\n" 1
+stmt: ASGNI4(addr,reg) "st %%%1,[%0]\n" 1
+stmt: ASGNU1(addr,reg) "stb %%%1,[%0]\n" 1
+stmt: ASGNU2(addr,reg) "sth %%%1,[%0]\n" 1
+stmt: ASGNU4(addr,reg) "st %%%1,[%0]\n" 1
+stmt: ASGNP4(addr,reg) "st %%%1,[%0]\n" 1
+stmt: ASGNF4(addr,reg) "st %%f%1,[%0]\n" 1
+addrl: ADDRLP4 "%%%fp+%a" imm(a)
+
+reg: INDIRF8(addrl) "ldd [%0],%%f%c\n" 1
+stmt: ASGNF8(addrl,reg) "std %%f%1,[%0]\n" 1
+reg: INDIRF8(base) "ld2 [%0],%%f%c\n" 2
+stmt: ASGNF8(base,reg) "st2 %%f%1,[%0]\n" 2
+spill: ADDRLP4 "%a" !imm(a)
+
+stmt: ASGNI1(spill,reg) "set %0,%%g1\nstb %%%1,[%%fp+%%g1]\n"
+stmt: ASGNI2(spill,reg) "set %0,%%g1\nsth %%%1,[%%fp+%%g1]\n"
+stmt: ASGNI4(spill,reg) "set %0,%%g1\nst %%%1,[%%fp+%%g1]\n"
+stmt: ASGNU1(spill,reg) "set %0,%%g1\nstb %%%1,[%%fp+%%g1]\n"
+stmt: ASGNU2(spill,reg) "set %0,%%g1\nsth %%%1,[%%fp+%%g1]\n"
+stmt: ASGNU4(spill,reg) "set %0,%%g1\nst %%%1,[%%fp+%%g1]\n"
+stmt: ASGNP4(spill,reg) "set %0,%%g1\nst %%%1,[%%fp+%%g1]\n"
+stmt: ASGNF4(spill,reg) "set %0,%%g1\nst %%f%1,[%%fp+%%g1]\n"
+stmt: ASGNF8(spill,reg) "set %0,%%g1\nstd %%f%1,[%%fp+%%g1]\n"
+reg: CVII4(INDIRI1(addr)) "ldsb [%0],%%%c\n" 1
+reg: CVII4(INDIRI2(addr)) "ldsh [%0],%%%c\n" 1
+reg: CVUU4(INDIRU1(addr)) "ldub [%0],%%%c\n" 1
+reg: CVUU4(INDIRU2(addr)) "lduh [%0],%%%c\n" 1
+reg: CVUI4(INDIRU1(addr)) "ldub [%0],%%%c\n" 1
+reg: CVUI4(INDIRU2(addr)) "lduh [%0],%%%c\n" 1
+reg: LOADI1(reg) "mov %%%0,%%%c\n" move(a)
+reg: LOADI2(reg) "mov %%%0,%%%c\n" move(a)
+reg: LOADI4(reg) "mov %%%0,%%%c\n" move(a)
+reg: LOADP4(reg) "mov %%%0,%%%c\n" move(a)
+reg: LOADU1(reg) "mov %%%0,%%%c\n" move(a)
+reg: LOADU2(reg) "mov %%%0,%%%c\n" move(a)
+reg: LOADU4(reg) "mov %%%0,%%%c\n" move(a)
+reg: CNSTI1 "# reg\n" range(a, 0, 0)
+reg: CNSTI2 "# reg\n" range(a, 0, 0)
+reg: CNSTI4 "# reg\n" range(a, 0, 0)
+reg: CNSTP4 "# reg\n" range(a, 0, 0)
+reg: CNSTU1 "# reg\n" range(a, 0, 0)
+reg: CNSTU2 "# reg\n" range(a, 0, 0)
+reg: CNSTU4 "# reg\n" range(a, 0, 0)
+reg: con "set %0,%%%c\n" 1
+rc: con13 "%0"
+rc: reg "%%%0"
+reg: ADDI4(reg,rc) "add %%%0,%1,%%%c\n" 1
+reg: ADDP4(reg,rc) "add %%%0,%1,%%%c\n" 1
+reg: ADDU4(reg,rc) "add %%%0,%1,%%%c\n" 1
+reg: BANDI4(reg,rc) "and %%%0,%1,%%%c\n" 1
+reg: BORI4(reg,rc) "or %%%0,%1,%%%c\n" 1
+reg: BXORI4(reg,rc) "xor %%%0,%1,%%%c\n" 1
+reg: BANDU4(reg,rc) "and %%%0,%1,%%%c\n" 1
+reg: BORU4(reg,rc) "or %%%0,%1,%%%c\n" 1
+reg: BXORU4(reg,rc) "xor %%%0,%1,%%%c\n" 1
+reg: SUBI4(reg,rc) "sub %%%0,%1,%%%c\n" 1
+reg: SUBP4(reg,rc) "sub %%%0,%1,%%%c\n" 1
+reg: SUBU4(reg,rc) "sub %%%0,%1,%%%c\n" 1
+rc5: CNSTI4 "%a" range(a, 0, 31)
+rc5: reg "%%%0"
+reg: LSHI4(reg,rc5) "sll %%%0,%1,%%%c\n" 1
+reg: LSHU4(reg,rc5) "sll %%%0,%1,%%%c\n" 1
+reg: RSHI4(reg,rc5) "sra %%%0,%1,%%%c\n" 1
+reg: RSHU4(reg,rc5) "srl %%%0,%1,%%%c\n" 1
+reg: BANDI4(reg,BCOMI4(rc)) "andn %%%0,%1,%%%c\n" 1
+reg: BORI4(reg,BCOMI4(rc)) "orn %%%0,%1,%%%c\n" 1
+reg: BXORI4(reg,BCOMI4(rc)) "xnor %%%0,%1,%%%c\n" 1
+reg: BANDU4(reg,BCOMU4(rc)) "andn %%%0,%1,%%%c\n" 1
+reg: BORU4(reg,BCOMU4(rc)) "orn %%%0,%1,%%%c\n" 1
+reg: BXORU4(reg,BCOMU4(rc)) "xnor %%%0,%1,%%%c\n" 1
+reg: NEGI4(reg) "neg %%%0,%%%c\n" 1
+reg: BCOMI4(reg) "not %%%0,%%%c\n" 1
+reg: BCOMU4(reg) "not %%%0,%%%c\n" 1
+reg: CVII4(reg) "sll %%%0,8*(4-%a),%%%c; sra %%%c,8*(4-%a),%%%c\n" 2
+reg: CVUU4(reg) "sll %%%0,8*(4-%a),%%%c; srl %%%c,8*(4-%a),%%%c\n" 2
+reg: CVUU4(reg) "and %%%0,0xff,%%%c\n" (a->syms[0]->u.c.v.i == 1 ? 1 : LBURG_MAX)
+reg: CVUU4(reg) "set 0xffff,%%g1; and %%%0,%%g1,%%%c\n" 2
+reg: CVUI4(reg) "and %%%0,0xff,%%%c\n" (a->syms[0]->u.c.v.i == 1 ? 1 : LBURG_MAX)
+reg: CVUI4(reg) "set 0xffff,%%g1; and %%%0,%%g1,%%%c\n" 2
+addrg: ADDRGP4 "%a"
+stmt: JUMPV(addrg) "ba %0; nop\n" 2
+stmt: JUMPV(addr) "jmp %0; nop\n" 2
+stmt: LABELV "%a:\n"
+stmt: EQI4(reg,rc) "cmp %%%0,%1; be %a; nop\n" 3
+stmt: EQU4(reg,rc) "cmp %%%0,%1; be %a; nop\n" 3
+stmt: GEI4(reg,rc) "cmp %%%0,%1; bge %a; nop\n" 3
+stmt: GEU4(reg,rc) "cmp %%%0,%1; bgeu %a; nop\n" 3
+stmt: GTI4(reg,rc) "cmp %%%0,%1; bg %a; nop\n" 3
+stmt: GTU4(reg,rc) "cmp %%%0,%1; bgu %a; nop\n" 3
+stmt: LEI4(reg,rc) "cmp %%%0,%1; ble %a; nop\n" 3
+stmt: LEU4(reg,rc) "cmp %%%0,%1; bleu %a; nop\n" 3
+stmt: LTI4(reg,rc) "cmp %%%0,%1; bl %a; nop\n" 3
+stmt: LTU4(reg,rc) "cmp %%%0,%1; blu %a; nop\n" 3
+stmt: NEI4(reg,rc) "cmp %%%0,%1; bne %a; nop\n" 3
+stmt: NEU4(reg,rc) "cmp %%%0,%1; bne %a; nop\n" 3
+call: ADDRGP4 "%a"
+call: addr "%0"
+reg: CALLF8(call) "call %0; nop\n" 2
+reg: CALLF4(call) "call %0; nop\n" 2
+reg: CALLI4(call) "call %0; nop\n" 2
+reg: CALLP4(call) "call %0; nop\n" 2
+reg: CALLU4(call) "call %0; nop\n" 2
+stmt: CALLV(call) "call %0; nop\n" 2
+stmt: CALLB(call,reg) "call %0; st %%%1,[%%sp+64]; unimp %b&0xfff\n" 3
+
+stmt: RETF8(reg) "# ret\n" 1
+stmt: RETF4(reg) "# ret\n" 1
+stmt: RETI4(reg) "# ret\n" 1
+stmt: RETU4(reg) "# ret\n" 1
+stmt: RETP4(reg) "# ret\n" 1
+stmt: ARGI4(reg) "st %%%0,[%%sp+4*%c+68]\n" 1
+stmt: ARGU4(reg) "st %%%0,[%%sp+4*%c+68]\n" 1
+stmt: ARGP4(reg) "st %%%0,[%%sp+4*%c+68]\n" 1
+stmt: ARGF4(reg) "# ARGF4\n" 1
+stmt: ARGF8(reg) "# ARGF8\n" 1
+
+reg: DIVI4(reg,rc) "sra %%%0,31,%%g1; wr %%g0,%%g1,%%y; nop; nop; nop; sdiv %%%0,%1,%%%c\n" 6
+
+reg: DIVU4(reg,rc) "wr %%g0,%%g0,%%y; nop; nop; nop; udiv %%%0,%1,%%%c\n" 5
+
+reg: MODI4(reg,rc) "sra %%%0,31,%%g1; wr %%g0,%%g1,%%y; nop; nop; nop; sdiv %%%0,%1,%%g1\n; smul %%g1,%1,%%g1; sub %%%0,%%g1,%%%c\n" 8
+
+
+reg: MODU4(reg,rc) "wr %%g0,%%g0,%%y; nop; nop; nop; udiv %%%0,%1,%%g1\n; umul %%g1,%1,%%g1; sub %%%0,%%g1,%%%c\n" 7
+
+
+reg: MULI4(rc,reg) "smul %%%1,%0,%%%c\n" 1
+reg: MULU4(rc,reg) "umul %%%1,%0,%%%c\n" 1
+reg: ADDF8(reg,reg) "faddd %%f%0,%%f%1,%%f%c\n" 1
+reg: ADDF4(reg,reg) "fadds %%f%0,%%f%1,%%f%c\n" 1
+reg: DIVF8(reg,reg) "fdivd %%f%0,%%f%1,%%f%c\n" 1
+reg: DIVF4(reg,reg) "fdivs %%f%0,%%f%1,%%f%c\n" 1
+reg: MULF8(reg,reg) "fmuld %%f%0,%%f%1,%%f%c\n" 1
+reg: MULF4(reg,reg) "fmuls %%f%0,%%f%1,%%f%c\n" 1
+reg: SUBF8(reg,reg) "fsubd %%f%0,%%f%1,%%f%c\n" 1
+reg: SUBF4(reg,reg) "fsubs %%f%0,%%f%1,%%f%c\n" 1
+reg: NEGF4(reg) "fnegs %%f%0,%%f%c\n" 1
+reg: LOADF4(reg) "fmovs %%f%0,%%f%c\n" 1
+reg: CVFF4(reg) "fdtos %%f%0,%%f%c\n" 1
+reg: CVFF8(reg) "fstod %%f%0,%%f%c\n" 1
+reg: CVFI4(reg) "fstoi %%f%0,%%f0; st %%f0,[%%sp+64]; ld [%%sp+64],%%%c\n" (a->syms[0]->u.c.v.i==4?3:LBURG_MAX)
+
+reg: CVFI4(reg) "fdtoi %%f%0,%%f0; st %%f0,[%%sp+64]; ld [%%sp+64],%%%c\n" (a->syms[0]->u.c.v.i==8?3:LBURG_MAX)
+
+reg: CVIF4(reg) "st %%%0,[%%sp+64]; ld [%%sp+64],%%f%c; fitos %%f%c,%%f%c\n" 3
+
+reg: CVIF8(reg) "st %%%0,[%%sp+64]; ld [%%sp+64],%%f%c; fitod %%f%c,%%f%c\n" 3
+
+rel: EQF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbue"
+rel: EQF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbue"
+rel: GEF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbuge"
+rel: GEF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbuge"
+rel: GTF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbug"
+rel: GTF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbug"
+rel: LEF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbule"
+rel: LEF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbule"
+rel: LTF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbul"
+rel: LTF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbul"
+rel: NEF8(reg,reg) "fcmped %%f%0,%%f%1; nop; fbne"
+rel: NEF4(reg,reg) "fcmpes %%f%0,%%f%1; nop; fbne"
+
+stmt: rel "%0 %a; nop\n" 4
+reg: LOADF8(reg) "# LOADD\n" 2
+
+reg: NEGF8(reg) "# NEGD\n" 2
+
+stmt: ASGNB(reg,INDIRB(reg)) "# ASGNB\n"
+
+%%
+static void progend(void){}
+static void progbeg(int argc, char *argv[]) {
+ int i;
+
+ {
+ union {
+ char c;
+ int i;
+ } u;
+ u.i = 0;
+ u.c = 1;
+ swap = ((int)(u.i == 1)) != IR->little_endian;
+ }
+ parseflags(argc, argv);
+ for (i = 0; i < argc; i++)
+ if (strcmp(argv[i], "-p") == 0 || strcmp(argv[i], "-pg") == 0)
+ pflag = 1;
+ if (IR == &solarisIR)
+ stabprefix = ".LL";
+ else
+ stabprefix = "L";
+ for (i = 0; i < 8; i++) {
+ greg[i + 0] = mkreg(stringf("g%d", i), i + 0, 1, IREG);
+ greg[i + 8] = mkreg(stringf("o%d", i), i + 8, 1, IREG);
+ greg[i + 16] = mkreg(stringf("l%d", i), i + 16, 1, IREG);
+ greg[i + 24] = mkreg(stringf("i%d", i), i + 24, 1, IREG);
+ }
+ gregw = mkwildcard(greg);
+ for (i = 0; i < 32; i++)
+ freg[i] = mkreg("%d", i, 1, FREG);
+ for (i = 0; i < 31; i += 2)
+ freg2[i] = mkreg("%d", i, 3, FREG);
+ fregw = mkwildcard(freg);
+ freg2w = mkwildcard(freg2);
+ tmask[IREG] = 0x3fff3e00;
+ vmask[IREG] = 0x3ff00000;
+ tmask[FREG] = ~(unsigned)0;
+ vmask[FREG] = 0;
+}
+static Symbol rmap(int opk) {
+ switch (optype(opk)) {
+ case I: case U: case P: case B:
+ return gregw;
+ case F:
+ return opsize(opk) == 4 ? fregw : freg2w;
+ default:
+ return 0;
+ }
+}
+static void target(Node p) {
+ assert(p);
+ switch (specific(p->op)) {
+ case CNST+I: case CNST+U: case CNST+P:
+ if (range(p, 0, 0) == 0) {
+ setreg(p, greg[0]);
+ p->x.registered = 1;
+ }
+ break;
+ case CALL+B:
+ assert(p->syms[1] && p->syms[1]->type && isfunc(p->syms[1]->type));
+ p->syms[1] = intconst(freturn(p->syms[1]->type)->size);
+ break;
+ case CALL+F: setreg(p, opsize(p->op)==4?freg[0]:freg2[0]); break;
+ case CALL+I: case CALL+P: case CALL+U:
+ case CALL+V: setreg(p, oreg[0]); break;
+ case RET+F: rtarget(p, 0, opsize(p->op)==4?freg[0]:freg2[0]); break;
+ case RET+I: case RET+P: case RET+U:
+ rtarget(p, 0, ireg[0]);
+ p->kids[0]->x.registered = 1;
+ break;
+ case ARG+I: case ARG+P: case ARG+U:
+ if (p->syms[RX]->u.c.v.i < 6) {
+ rtarget(p, 0, oreg[p->syms[RX]->u.c.v.i]);
+ p->op = LOAD+opkind(p->op);
+ setreg(p, oreg[p->syms[RX]->u.c.v.i]);
+ }
+ break;
+ }
+}
+static void clobber(Node p) {
+ assert(p);
+ switch (specific(p->op)) {
+ case CALL+B: case CALL+F: case CALL+I:
+ spill(~(unsigned)3, FREG, p);
+ break;
+ case CALL+V:
+ spill(oreg[0]->x.regnode->mask, IREG, p);
+ spill(~(unsigned)3, FREG, p);
+ break;
+ case ARG+F:
+ if (opsize(p->op) == 4 && p->syms[2]->u.c.v.i <= 6)
+ spill((1<<(p->syms[2]->u.c.v.i + 8)), IREG, p);
+ else if (opsize(p->op) == 8 && p->syms[2]->u.c.v.i <= 5)
+ spill((3<<(p->syms[2]->u.c.v.i + 8))&0xff00, IREG, p);
+ break;
+ }
+}
+static int imm(Node p) {
+ return range(p, -4096, 4091);
+}
+static void doarg(Node p) {
+ assert(p && p->syms[0] && p->op != ARG+B);
+ p->syms[RX] = intconst(mkactual(4,
+ p->syms[0]->u.c.v.i)/4);
+}
+static void emit2(Node p) {
+ switch (p->op) {
+ case ARG+F+sizeop(4): {
+ int n = p->syms[RX]->u.c.v.i;
+ print("st %%f%d,[%%sp+4*%d+68]\n",
+ getregnum(p->x.kids[0]), n);
+ if (n <= 5)
+ print("ld [%%sp+4*%d+68],%%o%d\n", n, n);
+ break;
+ }
+ case ARG+F+sizeop(8): {
+ int n = p->syms[RX]->u.c.v.i;
+ int src = getregnum(p->x.kids[0]);
+ print("st %%f%d,[%%sp+4*%d+68]\n", src, n);
+ print("st %%f%d,[%%sp+4*%d+68]\n", src+1, n+1);
+ if (n <= 5)
+ print("ld [%%sp+4*%d+68],%%o%d\n", n, n);
+ if (n <= 4)
+ print("ld [%%sp+4*%d+68],%%o%d\n", n+1, n+1);
+ break;
+ }
+ case LOAD+F+sizeop(8): {
+ int dst = getregnum(p);
+ int src = getregnum(p->x.kids[0]);
+ print("fmovs %%f%d,%%f%d; ", src, dst);
+ print("fmovs %%f%d,%%f%d\n", src+1, dst+1);
+ break;
+ }
+ case NEG+F+sizeop(8): {
+ int dst = getregnum(p);
+ int src = getregnum(p->x.kids[0]);
+ print("fnegs %%f%d,%%f%d; ", src, dst);
+ print("fmovs %%f%d,%%f%d\n", src+1, dst+1);
+ break;
+ }
+ case ASGN+B: {
+ static int tmpregs[] = { 1, 2, 3 };
+ dalign = salign = p->syms[1]->u.c.v.i;
+ blkcopy(getregnum(p->x.kids[0]), 0,
+ getregnum(p->x.kids[1]), 0,
+ p->syms[0]->u.c.v.i, tmpregs);
+ break;
+ }
+ }
+}
+static void local(Symbol p) {
+ if (retstruct) {
+ assert(p == retv);
+ p->x.name = stringd(4*16);
+ p->x.offset = 4*16;
+ p->sclass = AUTO;
+ retstruct = 0;
+ return;
+ }
+ if (isscalar(p->type) && !p->addressed && !isfloat(p->type))
+ p->sclass = REGISTER;
+ if (askregvar(p, rmap(ttob(p->type))) == 0)
+ mkauto(p);
+ else if (p->scope > LOCAL)
+ regvars++;
+}
+static void function(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
+ int autos = 0, i, leaf, reg, varargs;
+
+ if (IR == &solarisIR)
+ globalend();
+ regvars = 0;
+ for (i = 0; callee[i]; i++)
+ ;
+ varargs = variadic(f->type)
+ || i > 0 && strcmp(callee[i-1]->name,
+ "__builtin_va_alist") == 0;
+ usedmask[0] = usedmask[1] = 0;
+ freemask[0] = freemask[1] = ~(unsigned)0;
+ for (i = 0; i < 8; i++)
+ ireg[i]->x.regnode->vbl = NULL;
+ offset = 68;
+ maxargoffset = 24;
+ reg = 0;
+ for (i = 0; callee[i]; i++) {
+ Symbol p = callee[i], q = caller[i];
+ int size = roundup(q->type->size, 4);
+ assert(q);
+ if (isfloat(p->type) || reg >= 6) {
+ p->x.offset = q->x.offset = offset;
+ p->x.name = q->x.name = stringd(offset);
+ p->sclass = q->sclass = AUTO;
+ autos++;
+ }
+ else if (p->addressed || varargs) {
+ p->x.offset = offset;
+ p->x.name = stringd(p->x.offset);
+ p->sclass = AUTO;
+ q->sclass = REGISTER;
+ askregvar(q, ireg[reg]);
+ assert(q->x.regnode);
+ autos++;
+ }
+ else {
+ p->sclass = q->sclass = REGISTER;
+ askregvar(p, ireg[reg]);
+ assert(p->x.regnode);
+ q->x.name = p->x.name;
+ }
+ offset += size;
+ reg += isstruct(p->type) ? 1 : size/4;
+ }
+ assert(caller[i] == 0);
+ offset = maxoffset = 0;
+ retstruct = isstruct(freturn(f->type));
+ gencode(caller, callee);
+ maxargoffset = roundup(maxargoffset, 4);
+ framesize = roundup(maxoffset + maxargoffset + 4*(16+1), 8);
+ assert(!varargs || autos);
+ leaf = (!ncalls
+ && !maxoffset && !autos && !regvars
+ && !isstruct(freturn(f->type))
+ && !(usedmask[IREG]&0x00ffff01)
+ && !(usedmask[FREG]&~(unsigned)3)
+ && !pflag && !glevel);
+ print(".align 4\n%s:\n", f->x.name);
+ if (leaf) {
+ for (i = 0; caller[i] && callee[i]; i++) {
+ Symbol p = caller[i], q = callee[i];
+ if (p->sclass == REGISTER && q->sclass == REGISTER) {
+ assert(q->x.regnode);
+ assert(q->x.regnode->set == IREG);
+ assert(q->x.regnode->number >= 24);
+ assert(q->x.regnode->number <= 31);
+ p->x.name = greg[q->x.regnode->number - 16]->x.name;
+ }
+ }
+ renameregs();
+ } else if (framesize <= 4095)
+ print("save %%sp,%d,%%sp\n", -framesize);
+ else
+ print("set %d,%%g1; save %%sp,%%g1,%%sp\n", -framesize);
+ if (varargs)
+ for (; reg < 6; reg++)
+ print("st %%i%d,[%%fp+%d]\n", reg, 4*reg + 68);
+ else {
+ offset = 4*(16 + 1);
+ reg = 0;
+ for (i = 0; caller[i]; i++) {
+ Symbol p = caller[i];
+ if (isfloat(p->type) && p->type->size == 8 && reg <= 4) {
+ print("st %%r%d,[%%fp+%d]\n",
+ ireg[reg++]->x.regnode->number, offset);
+ print("st %%r%d,[%%fp+%d]\n",
+ ireg[reg++]->x.regnode->number, offset + 4);
+ } else if (isfloat(p->type) && p->type->size == 4 && reg <= 5)
+ print("st %%r%d,[%%fp+%d]\n",
+ ireg[reg++]->x.regnode->number, offset);
+ else
+ reg++;
+ offset += roundup(p->type->size, 4);
+ }
+ }
+ if (pflag) {
+ int lab = genlabel(1);
+ print("set L%d,%%o0; call mcount; nop\n", lab);
+ print(".seg \"data\"\n.align 4; L%d:.word 0\n.seg \"text\"\n", lab);
+ }
+ emitcode();
+ if (isstruct(freturn(f->type)))
+ print("jmp %%i7+12; restore\n");
+ else if (!leaf)
+ print("ret; restore\n");
+ else {
+ renameregs();
+ print("retl; nop\n");
+ }
+ if (IR == &solarisIR) {
+ print(".type %s,#function\n", f->x.name);
+ print(".size %s,.-%s\n", f->x.name, f->x.name);
+ }
+}
+#define exch(x, y, t) (((t) = x), ((x) = (y)), ((y) = (t)))
+
+static void renameregs(void) {
+ int i;
+
+ for (i = 0; i < 8; i++) {
+ char *ptmp;
+ int itmp;
+ if (ireg[i]->x.regnode->vbl)
+ ireg[i]->x.regnode->vbl->x.name = oreg[i]->x.name;
+ exch(ireg[i]->x.name, oreg[i]->x.name, ptmp);
+ exch(ireg[i]->x.regnode->number,
+ oreg[i]->x.regnode->number, itmp);
+ }
+}
+static void defconst(int suffix, int size, Value v) {
+ if (suffix == F && size == 4) {
+ float f = v.d;
+ print(".word 0x%x\n", *(unsigned *)&f);
+ } else if (suffix == F && size == 8) {
+ double d = v.d;
+ unsigned *p = (unsigned *)&d;
+ print(".word 0x%x\n.word 0x%x\n", p[swap], p[!swap]);
+ } else if (suffix == P)
+ print(".word 0x%x\n", v.p);
+ else if (size == 1)
+ print(".byte 0x%x\n", suffix == I ? v.i : v.u);
+ else if (size == 2)
+ print(".half 0x%x\n", suffix == I ? v.i : v.u);
+ else if (size == 4)
+ print(".word 0x%x\n", suffix == I ? v.i : v.u);
+ else assert(0);
+}
+
+static void defaddress(Symbol p) {
+ print(".word %s\n", p->x.name);
+}
+
+static void defstring(int n, char *str) {
+ char *s;
+
+ for (s = str; s < str + n; s++)
+ print(".byte %d\n", (*s)&0377);
+}
+
+static void address(Symbol q, Symbol p, long n) {
+ if (p->scope == GLOBAL || p->sclass == STATIC || p->sclass == EXTERN)
+ q->x.name = stringf("%s%s%D", p->x.name, n >= 0 ? "+" : "", n);
+ else {
+ assert(n <= INT_MAX && n >= INT_MIN);
+ q->x.offset = p->x.offset + n;
+ q->x.name = stringd(q->x.offset);
+ }
+}
+static void export(Symbol p) {
+ print(".global %s\n", p->x.name);
+}
+static void import(Symbol p) {}
+static void defsymbol(Symbol p) {
+ if (p->scope >= LOCAL && p->sclass == STATIC)
+ p->x.name = stringf("%d", genlabel(1));
+ else
+ assert(p->scope != CONSTANTS || isint(p->type) || isptr(p->type)),
+ p->x.name = p->name;
+ if (p->scope >= LABELS)
+ p->x.name = stringf(p->generated ? "L%s" : "_%s",
+ p->x.name);
+}
+static void segment(int n) {
+ cseg = n;
+ switch (n) {
+ case CODE: print(".seg \"text\"\n"); break;
+ case BSS: print(".seg \"bss\"\n"); break;
+ case DATA: print(".seg \"data\"\n"); break;
+ case LIT: print(".seg \"text\"\n"); break;
+ }
+}
+static void space(int n) {
+ if (cseg != BSS)
+ print(".skip %d\n", n);
+}
+static void global(Symbol p) {
+ print(".align %d\n", p->type->align);
+ assert(p->u.seg);
+ if (p->u.seg == BSS
+ && (p->sclass == STATIC || Aflag >= 2))
+ print(".reserve %s,%d\n", p->x.name, p->type->size);
+ else if (p->u.seg == BSS)
+ print(".common %s,%d\n", p->x.name, p->type->size);
+ else
+ print("%s:\n", p->x.name);
+}
+static void blkfetch(int k, int off, int reg, int tmp) {
+ assert(k == 1 || k == 2 || k == 4);
+ assert(salign >= k);
+ if (k == 1)
+ print("ldub [%%r%d+%d],%%r%d\n", reg, off, tmp);
+ else if (k == 2)
+ print("lduh [%%r%d+%d],%%r%d\n", reg, off, tmp);
+ else
+ print("ld [%%r%d+%d],%%r%d\n", reg, off, tmp);
+}
+static void blkstore(int k, int off, int reg, int tmp) {
+ assert(k == 1 || k == 2 || k == 4);
+ assert(dalign >= k);
+ if (k == 1)
+ print("stb %%r%d,[%%r%d+%d]\n", tmp, reg, off);
+ else if (k == 2)
+ print("sth %%r%d,[%%r%d+%d]\n", tmp, reg, off);
+ else
+ print("st %%r%d,[%%r%d+%d]\n", tmp, reg, off);
+}
+static void blkloop(int dreg, int doff, int sreg, int soff, int size, int tmps[]) {
+ if ((size&~7) < 4096) {
+ print("add %%r%d,%d,%%r%d\n", sreg, size&~7, sreg);
+ print("add %%r%d,%d,%%r%d\n", dreg, size&~7, tmps[2]);
+ } else {
+ print("set %d,%%r%d\n", size&~7, tmps[2]);
+ print("add %%r%d,%%r%d,%%r%d\n", sreg, tmps[2], sreg);
+ print("add %%r%d,%%r%d,%%r%d\n", dreg, tmps[2], tmps[2]);
+ }
+ blkcopy(tmps[2], doff, sreg, soff, size&7, tmps);
+ print("1: dec 8,%%r%d\n", tmps[2]);
+ blkcopy(tmps[2], doff, sreg, soff - 8, 8, tmps);
+ print("cmp %%r%d,%%r%d; ", tmps[2], dreg);
+ print("bgt 1b; ");
+ print("dec 8,%%r%d\n", sreg);
+}
+static void defsymbol2(Symbol p) {
+ if (p->scope >= LOCAL && p->sclass == STATIC)
+ p->x.name = stringf(".%d", genlabel(1));
+ else
+ assert(p->scope != CONSTANTS || isint(p->type) || isptr(p->type)),
+ p->x.name = p->name;
+ if (p->scope >= LABELS)
+ p->x.name = stringf(p->generated ? ".L%s" : "%s",
+ p->x.name);
+}
+
+static Symbol prevg;
+
+static void globalend(void) {
+ if (prevg && prevg->type->size > 0)
+ print(".size %s,%d\n", prevg->x.name, prevg->type->size);
+ prevg = NULL;
+}
+
+static void export2(Symbol p) {
+ globalend();
+ print(".global %s\n", p->x.name);
+}
+
+static void progend2(void) {
+ globalend();
+}
+
+static void global2(Symbol p) {
+ globalend();
+ assert(p->u.seg);
+ if (!p->generated) {
+ print(".type %s,#%s\n", p->x.name,
+ isfunc(p->type) ? "function" : "object");
+ if (p->type->size > 0)
+ print(".size %s,%d\n", p->x.name, p->type->size);
+ else
+ prevg = p;
+ }
+ if (p->u.seg == BSS && p->sclass == STATIC)
+ print(".local %s\n.common %s,%d,%d\n", p->x.name, p->x.name,
+ p->type->size, p->type->align);
+ else if (p->u.seg == BSS && Aflag >= 2)
+ print(".align %d\n%s:.skip %d\n", p->type->align, p->x.name,
+ p->type->size);
+ else if (p->u.seg == BSS)
+ print(".common %s,%d,%d\n", p->x.name, p->type->size, p->type->align);
+ else
+ print(".align %d\n%s:\n", p->type->align, p->x.name);
+}
+
+static void segment2(int n) {
+ cseg = n;
+ switch (n) {
+ case CODE: print(".section \".text\"\n"); break;
+ case BSS: print(".section \".bss\"\n"); break;
+ case DATA: print(".section \".data\"\n"); break;
+ case LIT: print(".section \".rodata\"\n"); break;
+ }
+}
+Interface sparcIR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 4, 4, 0, /* long */
+ 4, 4, 0, /* long long */
+ 4, 4, 1, /* float */
+ 8, 8, 1, /* double */
+ 8, 8, 1, /* long double */
+ 4, 4, 0, /* T * */
+ 0, 1, 0, /* struct */
+ 0, /* little_endian */
+ 0, /* mulops_calls */
+ 1, /* wants_callb */
+ 0, /* wants_argb */
+ 1, /* left_to_right */
+ 0, /* wants_dag */
+ 0, /* unsigned_char */
+ address,
+ blockbeg,
+ blockend,
+ defaddress,
+ defconst,
+ defstring,
+ defsymbol,
+ emit,
+ export,
+ function,
+ gen,
+ global,
+ import,
+ local,
+ progbeg,
+ progend,
+ segment,
+ space,
+ stabblock, 0, 0, stabinit, stabline, stabsym, stabtype,
+ {
+ 1, /* max_unaligned_load */
+ rmap,
+ blkfetch, blkstore, blkloop,
+ _label,
+ _rule,
+ _nts,
+ _kids,
+ _string,
+ _templates,
+ _isinstruction,
+ _ntname,
+ emit2,
+ doarg,
+ target,
+ clobber,
+
+ }
+};
+
+Interface solarisIR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 4, 4, 0, /* long */
+ 4, 4, 0, /* long long */
+ 4, 4, 1, /* float */
+ 8, 8, 1, /* double */
+ 8, 8, 1, /* long double */
+ 4, 4, 0, /* T * */
+ 0, 1, 0, /* struct */
+ 0, /* little_endian */
+ 0, /* mulops_calls */
+ 1, /* wants_callb */
+ 0, /* wants_argb */
+ 1, /* left_to_right */
+ 0, /* wants_dag */
+ 0, /* unsigned_char */
+ address,
+ blockbeg,
+ blockend,
+ defaddress,
+ defconst,
+ defstring,
+ defsymbol2,
+ emit,
+ export2,
+ function,
+ gen,
+ global2,
+ import,
+ local,
+ progbeg,
+ progend2,
+ segment2,
+ space,
+ stabblock, 0, 0, stabinit, stabline, stabsym, stabtype,
+ {
+ 1, /* max_unaligned_load */
+ rmap,
+ blkfetch, blkstore, blkloop,
+ _label,
+ _rule,
+ _nts,
+ _kids,
+ _string,
+ _templates,
+ _isinstruction,
+ _ntname,
+ emit2,
+ doarg,
+ target,
+ clobber,
+
+ }
+};
+static char rcsid[] = "$Id: sparc.md 145 2001-10-17 21:53:10Z timo $";
diff --git a/lcc/src/stab.c b/lcc/src/stab.c
index 152b778..e1b52cf 100755
--- a/lcc/src/stab.c
+++ b/lcc/src/stab.c
@@ -1,330 +1,330 @@
-#include <string.h>
-#include <stdlib.h>
-#include "c.h"
-#include "stab.h"
-
-
-static char *currentfile; /* current file name */
-static int ntypes;
-
-extern Interface sparcIR;
-
-char *stabprefix = "L";
-
-extern char *stabprefix;
-extern void stabblock(int, int, Symbol*);
-extern void stabend(Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
-extern void stabfend(Symbol, int);
-extern void stabinit(char *, int, char *[]);
-extern void stabline(Coordinate *);
-extern void stabsym(Symbol);
-extern void stabtype(Symbol);
-
-static void asgncode(Type, int);
-static void dbxout(Type);
-static int dbxtype(Type);
-static int emittype(Type, int, int);
-
-/* asgncode - assign type code to ty */
-static void asgncode(Type ty, int lev) {
- if (ty->x.marked || ty->x.typeno)
- return;
- ty->x.marked = 1;
- switch (ty->op) {
- case VOLATILE: case CONST: case VOLATILE+CONST:
- asgncode(ty->type, lev);
- ty->x.typeno = ty->type->x.typeno;
- break;
- case POINTER: case FUNCTION: case ARRAY:
- asgncode(ty->type, lev + 1);
- /* fall thru */
- case VOID: case INT: case UNSIGNED: case FLOAT:
- break;
- case STRUCT: case UNION: {
- Field p;
- for (p = fieldlist(ty); p; p = p->link)
- asgncode(p->type, lev + 1);
- /* fall thru */
- case ENUM:
- if (ty->x.typeno == 0)
- ty->x.typeno = ++ntypes;
- if (lev > 0 && (*ty->u.sym->name < '0' || *ty->u.sym->name > '9'))
- dbxout(ty);
- break;
- }
- default:
- assert(0);
- }
-}
-
-/* dbxout - output .stabs entry for type ty */
-static void dbxout(Type ty) {
- ty = unqual(ty);
- if (!ty->x.printed) {
- int col = 0;
- print(".stabs \""), col += 8;
- if (ty->u.sym && !(isfunc(ty) || isarray(ty) || isptr(ty)))
- print("%s", ty->u.sym->name), col += strlen(ty->u.sym->name);
- print(":%c", isstruct(ty) || isenum(ty) ? 'T' : 't'), col += 2;
- emittype(ty, 0, col);
- print("\",%d,0,0,0\n", N_LSYM);
- }
-}
-
-/* dbxtype - emit a stabs entry for type ty, return type code */
-static int dbxtype(Type ty) {
- asgncode(ty, 0);
- dbxout(ty);
- return ty->x.typeno;
-}
-
-/*
- * emittype - emit ty's type number, emitting its definition if necessary.
- * Returns the output column number after emission; col is the approximate
- * output column before emission and is used to emit continuation lines for long
- * struct, union, and enum types. Continuations are not emitted for other types,
- * even if the definition is long. lev is the depth of calls to emittype.
- */
-static int emittype(Type ty, int lev, int col) {
- int tc = ty->x.typeno;
-
- if (isconst(ty) || isvolatile(ty)) {
- col = emittype(ty->type, lev, col);
- ty->x.typeno = ty->type->x.typeno;
- ty->x.printed = 1;
- return col;
- }
- if (tc == 0) {
- ty->x.typeno = tc = ++ntypes;
-/* fprint(2,"`%t'=%d\n", ty, tc); */
- }
- print("%d", tc), col += 3;
- if (ty->x.printed)
- return col;
- ty->x.printed = 1;
- switch (ty->op) {
- case VOID: /* void is defined as itself */
- print("=%d", tc), col += 1+3;
- break;
- case INT:
- if (ty == chartype) /* plain char is a subrange of itself */
- print("=r%d;%d;%d;", tc, ty->u.sym->u.limits.min.i, ty->u.sym->u.limits.max.i),
- col += 2+3+2*2.408*ty->size+2;
- else /* other signed ints are subranges of int */
- print("=r1;%D;%D;", ty->u.sym->u.limits.min.i, ty->u.sym->u.limits.max.i),
- col += 4+2*2.408*ty->size+2;
- break;
- case UNSIGNED:
- if (ty == chartype) /* plain char is a subrange of itself */
- print("=r%d;0;%u;", tc, ty->u.sym->u.limits.max.i),
- col += 2+3+2+2.408*ty->size+1;
- else /* other signed ints are subranges of int */
- print("=r1;0;%U;", ty->u.sym->u.limits.max.i),
- col += 4+2.408*ty->size+1;
- break;
- case FLOAT: /* float, double, long double get sizes, not ranges */
- print("=r1;%d;0;", ty->size), col += 4+1+3;
- break;
- case POINTER:
- print("=*"), col += 2;
- col = emittype(ty->type, lev + 1, col);
- break;
- case FUNCTION:
- print("=f"), col += 2;
- col = emittype(ty->type, lev + 1, col);
- break;
- case ARRAY: /* array includes subscript as an int range */
- if (ty->size && ty->type->size)
- print("=ar1;0;%d;", ty->size/ty->type->size - 1), col += 7+3+1;
- else
- print("=ar1;0;-1;"), col += 10;
- col = emittype(ty->type, lev + 1, col);
- break;
- case STRUCT: case UNION: {
- Field p;
- if (!ty->u.sym->defined) {
- print("=x%c%s:", ty->op == STRUCT ? 's' : 'u', ty->u.sym->name);
- col += 2+1+strlen(ty->u.sym->name)+1;
- break;
- }
- if (lev > 0 && (*ty->u.sym->name < '0' || *ty->u.sym->name > '9')) {
- ty->x.printed = 0;
- break;
- }
- print("=%c%d", ty->op == STRUCT ? 's' : 'u', ty->size), col += 1+1+3;
- for (p = fieldlist(ty); p; p = p->link) {
- if (p->name)
- print("%s:", p->name), col += strlen(p->name)+1;
- else
- print(":"), col += 1;
- col = emittype(p->type, lev + 1, col);
- if (p->lsb)
- print(",%d,%d;", 8*p->offset +
- (IR->little_endian ? fieldright(p) : fieldleft(p)),
- fieldsize(p));
- else
- print(",%d,%d;", 8*p->offset, 8*p->type->size);
- col += 1+3+1+3+1; /* accounts for ,%d,%d; */
- if (col >= 80 && p->link) {
- print("\\\\\",%d,0,0,0\n.stabs \"", N_LSYM);
- col = 8;
- }
- }
- print(";"), col += 1;
- break;
- }
- case ENUM: {
- Symbol *p;
- if (lev > 0 && (*ty->u.sym->name < '0' || *ty->u.sym->name > '9')) {
- ty->x.printed = 0;
- break;
- }
- print("=e"), col += 2;
- for (p = ty->u.sym->u.idlist; *p; p++) {
- print("%s:%d,", (*p)->name, (*p)->u.value), col += strlen((*p)->name)+3;
- if (col >= 80 && p[1]) {
- print("\\\\\",%d,0,0,0\n.stabs \"", N_LSYM);
- col = 8;
- }
- }
- print(";"), col += 1;
- break;
- }
- default:
- assert(0);
- }
- return col;
-}
-
-/* stabblock - output a stab entry for '{' or '}' at level lev */
-void stabblock(int brace, int lev, Symbol *p) {
- if (brace == '{')
- while (*p)
- stabsym(*p++);
- if (IR == &sparcIR)
- print(".stabd 0x%x,0,%d\n", brace == '{' ? N_LBRAC : N_RBRAC, lev);
- else {
- int lab = genlabel(1);
- print(".stabn 0x%x,0,%d,%s%d-%s\n", brace == '{' ? N_LBRAC : N_RBRAC, lev,
- stabprefix, lab, cfunc->x.name);
- print("%s%d:\n", stabprefix, lab);
- }
-}
-
-/* stabinit - initialize stab output */
-void stabinit(char *file, int argc, char *argv[]) {
- typedef void (*Closure)(Symbol, void *);
- extern char *getcwd(char *, size_t);
-
- print(".stabs \"lcc4_compiled.\",0x%x,0,0,0\n", N_OPT);
- if (file && *file) {
- char buf[1024], *cwd = getcwd(buf, sizeof buf);
- if (cwd)
- print(".stabs \"%s/\",0x%x,0,3,%stext0\n", cwd, N_SO, stabprefix);
- print(".stabs \"%s\",0x%x,0,3,%stext0\n", file, N_SO, stabprefix);
- (*IR->segment)(CODE);
- print("%stext0:\n", stabprefix, N_SO);
- currentfile = file;
- }
- dbxtype(inttype);
- dbxtype(chartype);
- dbxtype(doubletype);
- dbxtype(floattype);
- dbxtype(longdouble);
- dbxtype(longtype);
- dbxtype(longlong);
- dbxtype(shorttype);
- dbxtype(signedchar);
- dbxtype(unsignedchar);
- dbxtype(unsignedlong);
- dbxtype(unsignedlonglong);
- dbxtype(unsignedshort);
- dbxtype(unsignedtype);
- dbxtype(voidtype);
- foreach(types, GLOBAL, (Closure)stabtype, NULL);
-}
-
-/* stabline - emit stab entry for source coordinate *cp */
-void stabline(Coordinate *cp) {
- if (cp->file && cp->file != currentfile) {
- int lab = genlabel(1);
- print(".stabs \"%s\",0x%x,0,0,%s%d\n", cp->file, N_SOL, stabprefix, lab);
- print("%s%d:\n", stabprefix, lab);
- currentfile = cp->file;
- }
- if (IR == &sparcIR)
- print(".stabd 0x%x,0,%d\n", N_SLINE, cp->y);
- else {
- int lab = genlabel(1);
- print(".stabn 0x%x,0,%d,%s%d-%s\n", N_SLINE, cp->y,
- stabprefix, lab, cfunc->x.name);
- print("%s%d:\n", stabprefix, lab);
- }
-}
-
-/* stabsym - output a stab entry for symbol p */
-void stabsym(Symbol p) {
- int code, tc, sz = p->type->size;
-
- if (p->generated || p->computed)
- return;
- if (isfunc(p->type)) {
- print(".stabs \"%s:%c%d\",%d,0,0,%s\n", p->name,
- p->sclass == STATIC ? 'f' : 'F', dbxtype(freturn(p->type)),
- N_FUN, p->x.name);
- return;
- }
- if (!IR->wants_argb && p->scope == PARAM && p->structarg) {
- assert(isptr(p->type) && isstruct(p->type->type));
- tc = dbxtype(p->type->type);
- sz = p->type->type->size;
- } else
- tc = dbxtype(p->type);
- if (p->sclass == AUTO && p->scope == GLOBAL || p->sclass == EXTERN) {
- print(".stabs \"%s:G", p->name);
- code = N_GSYM;
- } else if (p->sclass == STATIC) {
- print(".stabs \"%s:%c%d\",%d,0,0,%s\n", p->name, p->scope == GLOBAL ? 'S' : 'V',
- tc, p->u.seg == BSS ? N_LCSYM : N_STSYM, p->x.name);
- return;
- } else if (p->sclass == REGISTER) {
- if (p->x.regnode) {
- int r = p->x.regnode->number;
- if (p->x.regnode->set == FREG)
- r += 32; /* floating point */
- print(".stabs \"%s:%c%d\",%d,0,", p->name,
- p->scope == PARAM ? 'P' : 'r', tc, N_RSYM);
- print("%d,%d\n", sz, r);
- }
- return;
- } else if (p->scope == PARAM) {
- print(".stabs \"%s:p", p->name);
- code = N_PSYM;
- } else if (p->scope >= LOCAL) {
- print(".stabs \"%s:", p->name);
- code = N_LSYM;
- } else
- assert(0);
- print("%d\",%d,0,0,%s\n", tc, code,
- p->scope >= PARAM && p->sclass != EXTERN ? p->x.name : "0");
-}
-
-/* stabtype - output a stab entry for type *p */
-void stabtype(Symbol p) {
- if (p->type) {
- if (p->sclass == 0)
- dbxtype(p->type);
- else if (p->sclass == TYPEDEF)
- print(".stabs \"%s:t%d\",%d,0,0,0\n", p->name, dbxtype(p->type), N_LSYM);
- }
-}
-
-/* stabend - finalize a function */
-void stabfend(Symbol p, int lineno) {}
-
-/* stabend - finalize stab output */
-void stabend(Coordinate *cp, Symbol p, Coordinate **cpp, Symbol *sp, Symbol *stab) {
- (*IR->segment)(CODE);
- print(".stabs \"\", %d, 0, 0,%setext\n", N_SO, stabprefix);
- print("%setext:\n", stabprefix);
-}
+#include <string.h>
+#include <stdlib.h>
+#include "c.h"
+#include "stab.h"
+
+
+static char *currentfile; /* current file name */
+static int ntypes;
+
+extern Interface sparcIR;
+
+char *stabprefix = "L";
+
+extern char *stabprefix;
+extern void stabblock(int, int, Symbol*);
+extern void stabend(Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
+extern void stabfend(Symbol, int);
+extern void stabinit(char *, int, char *[]);
+extern void stabline(Coordinate *);
+extern void stabsym(Symbol);
+extern void stabtype(Symbol);
+
+static void asgncode(Type, int);
+static void dbxout(Type);
+static int dbxtype(Type);
+static int emittype(Type, int, int);
+
+/* asgncode - assign type code to ty */
+static void asgncode(Type ty, int lev) {
+ if (ty->x.marked || ty->x.typeno)
+ return;
+ ty->x.marked = 1;
+ switch (ty->op) {
+ case VOLATILE: case CONST: case VOLATILE+CONST:
+ asgncode(ty->type, lev);
+ ty->x.typeno = ty->type->x.typeno;
+ break;
+ case POINTER: case FUNCTION: case ARRAY:
+ asgncode(ty->type, lev + 1);
+ /* fall thru */
+ case VOID: case INT: case UNSIGNED: case FLOAT:
+ break;
+ case STRUCT: case UNION: {
+ Field p;
+ for (p = fieldlist(ty); p; p = p->link)
+ asgncode(p->type, lev + 1);
+ /* fall thru */
+ case ENUM:
+ if (ty->x.typeno == 0)
+ ty->x.typeno = ++ntypes;
+ if (lev > 0 && (*ty->u.sym->name < '0' || *ty->u.sym->name > '9'))
+ dbxout(ty);
+ break;
+ }
+ default:
+ assert(0);
+ }
+}
+
+/* dbxout - output .stabs entry for type ty */
+static void dbxout(Type ty) {
+ ty = unqual(ty);
+ if (!ty->x.printed) {
+ int col = 0;
+ print(".stabs \""), col += 8;
+ if (ty->u.sym && !(isfunc(ty) || isarray(ty) || isptr(ty)))
+ print("%s", ty->u.sym->name), col += strlen(ty->u.sym->name);
+ print(":%c", isstruct(ty) || isenum(ty) ? 'T' : 't'), col += 2;
+ emittype(ty, 0, col);
+ print("\",%d,0,0,0\n", N_LSYM);
+ }
+}
+
+/* dbxtype - emit a stabs entry for type ty, return type code */
+static int dbxtype(Type ty) {
+ asgncode(ty, 0);
+ dbxout(ty);
+ return ty->x.typeno;
+}
+
+/*
+ * emittype - emit ty's type number, emitting its definition if necessary.
+ * Returns the output column number after emission; col is the approximate
+ * output column before emission and is used to emit continuation lines for long
+ * struct, union, and enum types. Continuations are not emitted for other types,
+ * even if the definition is long. lev is the depth of calls to emittype.
+ */
+static int emittype(Type ty, int lev, int col) {
+ int tc = ty->x.typeno;
+
+ if (isconst(ty) || isvolatile(ty)) {
+ col = emittype(ty->type, lev, col);
+ ty->x.typeno = ty->type->x.typeno;
+ ty->x.printed = 1;
+ return col;
+ }
+ if (tc == 0) {
+ ty->x.typeno = tc = ++ntypes;
+/* fprint(2,"`%t'=%d\n", ty, tc); */
+ }
+ print("%d", tc), col += 3;
+ if (ty->x.printed)
+ return col;
+ ty->x.printed = 1;
+ switch (ty->op) {
+ case VOID: /* void is defined as itself */
+ print("=%d", tc), col += 1+3;
+ break;
+ case INT:
+ if (ty == chartype) /* plain char is a subrange of itself */
+ print("=r%d;%d;%d;", tc, ty->u.sym->u.limits.min.i, ty->u.sym->u.limits.max.i),
+ col += 2+3+2*2.408*ty->size+2;
+ else /* other signed ints are subranges of int */
+ print("=r1;%D;%D;", ty->u.sym->u.limits.min.i, ty->u.sym->u.limits.max.i),
+ col += 4+2*2.408*ty->size+2;
+ break;
+ case UNSIGNED:
+ if (ty == chartype) /* plain char is a subrange of itself */
+ print("=r%d;0;%u;", tc, ty->u.sym->u.limits.max.i),
+ col += 2+3+2+2.408*ty->size+1;
+ else /* other signed ints are subranges of int */
+ print("=r1;0;%U;", ty->u.sym->u.limits.max.i),
+ col += 4+2.408*ty->size+1;
+ break;
+ case FLOAT: /* float, double, long double get sizes, not ranges */
+ print("=r1;%d;0;", ty->size), col += 4+1+3;
+ break;
+ case POINTER:
+ print("=*"), col += 2;
+ col = emittype(ty->type, lev + 1, col);
+ break;
+ case FUNCTION:
+ print("=f"), col += 2;
+ col = emittype(ty->type, lev + 1, col);
+ break;
+ case ARRAY: /* array includes subscript as an int range */
+ if (ty->size && ty->type->size)
+ print("=ar1;0;%d;", ty->size/ty->type->size - 1), col += 7+3+1;
+ else
+ print("=ar1;0;-1;"), col += 10;
+ col = emittype(ty->type, lev + 1, col);
+ break;
+ case STRUCT: case UNION: {
+ Field p;
+ if (!ty->u.sym->defined) {
+ print("=x%c%s:", ty->op == STRUCT ? 's' : 'u', ty->u.sym->name);
+ col += 2+1+strlen(ty->u.sym->name)+1;
+ break;
+ }
+ if (lev > 0 && (*ty->u.sym->name < '0' || *ty->u.sym->name > '9')) {
+ ty->x.printed = 0;
+ break;
+ }
+ print("=%c%d", ty->op == STRUCT ? 's' : 'u', ty->size), col += 1+1+3;
+ for (p = fieldlist(ty); p; p = p->link) {
+ if (p->name)
+ print("%s:", p->name), col += strlen(p->name)+1;
+ else
+ print(":"), col += 1;
+ col = emittype(p->type, lev + 1, col);
+ if (p->lsb)
+ print(",%d,%d;", 8*p->offset +
+ (IR->little_endian ? fieldright(p) : fieldleft(p)),
+ fieldsize(p));
+ else
+ print(",%d,%d;", 8*p->offset, 8*p->type->size);
+ col += 1+3+1+3+1; /* accounts for ,%d,%d; */
+ if (col >= 80 && p->link) {
+ print("\\\\\",%d,0,0,0\n.stabs \"", N_LSYM);
+ col = 8;
+ }
+ }
+ print(";"), col += 1;
+ break;
+ }
+ case ENUM: {
+ Symbol *p;
+ if (lev > 0 && (*ty->u.sym->name < '0' || *ty->u.sym->name > '9')) {
+ ty->x.printed = 0;
+ break;
+ }
+ print("=e"), col += 2;
+ for (p = ty->u.sym->u.idlist; *p; p++) {
+ print("%s:%d,", (*p)->name, (*p)->u.value), col += strlen((*p)->name)+3;
+ if (col >= 80 && p[1]) {
+ print("\\\\\",%d,0,0,0\n.stabs \"", N_LSYM);
+ col = 8;
+ }
+ }
+ print(";"), col += 1;
+ break;
+ }
+ default:
+ assert(0);
+ }
+ return col;
+}
+
+/* stabblock - output a stab entry for '{' or '}' at level lev */
+void stabblock(int brace, int lev, Symbol *p) {
+ if (brace == '{')
+ while (*p)
+ stabsym(*p++);
+ if (IR == &sparcIR)
+ print(".stabd 0x%x,0,%d\n", brace == '{' ? N_LBRAC : N_RBRAC, lev);
+ else {
+ int lab = genlabel(1);
+ print(".stabn 0x%x,0,%d,%s%d-%s\n", brace == '{' ? N_LBRAC : N_RBRAC, lev,
+ stabprefix, lab, cfunc->x.name);
+ print("%s%d:\n", stabprefix, lab);
+ }
+}
+
+/* stabinit - initialize stab output */
+void stabinit(char *file, int argc, char *argv[]) {
+ typedef void (*Closure)(Symbol, void *);
+ extern char *getcwd(char *, size_t);
+
+ print(".stabs \"lcc4_compiled.\",0x%x,0,0,0\n", N_OPT);
+ if (file && *file) {
+ char buf[1024], *cwd = getcwd(buf, sizeof buf);
+ if (cwd)
+ print(".stabs \"%s/\",0x%x,0,3,%stext0\n", cwd, N_SO, stabprefix);
+ print(".stabs \"%s\",0x%x,0,3,%stext0\n", file, N_SO, stabprefix);
+ (*IR->segment)(CODE);
+ print("%stext0:\n", stabprefix, N_SO);
+ currentfile = file;
+ }
+ dbxtype(inttype);
+ dbxtype(chartype);
+ dbxtype(doubletype);
+ dbxtype(floattype);
+ dbxtype(longdouble);
+ dbxtype(longtype);
+ dbxtype(longlong);
+ dbxtype(shorttype);
+ dbxtype(signedchar);
+ dbxtype(unsignedchar);
+ dbxtype(unsignedlong);
+ dbxtype(unsignedlonglong);
+ dbxtype(unsignedshort);
+ dbxtype(unsignedtype);
+ dbxtype(voidtype);
+ foreach(types, GLOBAL, (Closure)stabtype, NULL);
+}
+
+/* stabline - emit stab entry for source coordinate *cp */
+void stabline(Coordinate *cp) {
+ if (cp->file && cp->file != currentfile) {
+ int lab = genlabel(1);
+ print(".stabs \"%s\",0x%x,0,0,%s%d\n", cp->file, N_SOL, stabprefix, lab);
+ print("%s%d:\n", stabprefix, lab);
+ currentfile = cp->file;
+ }
+ if (IR == &sparcIR)
+ print(".stabd 0x%x,0,%d\n", N_SLINE, cp->y);
+ else {
+ int lab = genlabel(1);
+ print(".stabn 0x%x,0,%d,%s%d-%s\n", N_SLINE, cp->y,
+ stabprefix, lab, cfunc->x.name);
+ print("%s%d:\n", stabprefix, lab);
+ }
+}
+
+/* stabsym - output a stab entry for symbol p */
+void stabsym(Symbol p) {
+ int code, tc, sz = p->type->size;
+
+ if (p->generated || p->computed)
+ return;
+ if (isfunc(p->type)) {
+ print(".stabs \"%s:%c%d\",%d,0,0,%s\n", p->name,
+ p->sclass == STATIC ? 'f' : 'F', dbxtype(freturn(p->type)),
+ N_FUN, p->x.name);
+ return;
+ }
+ if (!IR->wants_argb && p->scope == PARAM && p->structarg) {
+ assert(isptr(p->type) && isstruct(p->type->type));
+ tc = dbxtype(p->type->type);
+ sz = p->type->type->size;
+ } else
+ tc = dbxtype(p->type);
+ if (p->sclass == AUTO && p->scope == GLOBAL || p->sclass == EXTERN) {
+ print(".stabs \"%s:G", p->name);
+ code = N_GSYM;
+ } else if (p->sclass == STATIC) {
+ print(".stabs \"%s:%c%d\",%d,0,0,%s\n", p->name, p->scope == GLOBAL ? 'S' : 'V',
+ tc, p->u.seg == BSS ? N_LCSYM : N_STSYM, p->x.name);
+ return;
+ } else if (p->sclass == REGISTER) {
+ if (p->x.regnode) {
+ int r = p->x.regnode->number;
+ if (p->x.regnode->set == FREG)
+ r += 32; /* floating point */
+ print(".stabs \"%s:%c%d\",%d,0,", p->name,
+ p->scope == PARAM ? 'P' : 'r', tc, N_RSYM);
+ print("%d,%d\n", sz, r);
+ }
+ return;
+ } else if (p->scope == PARAM) {
+ print(".stabs \"%s:p", p->name);
+ code = N_PSYM;
+ } else if (p->scope >= LOCAL) {
+ print(".stabs \"%s:", p->name);
+ code = N_LSYM;
+ } else
+ assert(0);
+ print("%d\",%d,0,0,%s\n", tc, code,
+ p->scope >= PARAM && p->sclass != EXTERN ? p->x.name : "0");
+}
+
+/* stabtype - output a stab entry for type *p */
+void stabtype(Symbol p) {
+ if (p->type) {
+ if (p->sclass == 0)
+ dbxtype(p->type);
+ else if (p->sclass == TYPEDEF)
+ print(".stabs \"%s:t%d\",%d,0,0,0\n", p->name, dbxtype(p->type), N_LSYM);
+ }
+}
+
+/* stabend - finalize a function */
+void stabfend(Symbol p, int lineno) {}
+
+/* stabend - finalize stab output */
+void stabend(Coordinate *cp, Symbol p, Coordinate **cpp, Symbol *sp, Symbol *stab) {
+ (*IR->segment)(CODE);
+ print(".stabs \"\", %d, 0, 0,%setext\n", N_SO, stabprefix);
+ print("%setext:\n", stabprefix);
+}
diff --git a/lcc/src/stab.h b/lcc/src/stab.h
index bfb7ebf..198b1fe 100755
--- a/lcc/src/stab.h
+++ b/lcc/src/stab.h
@@ -1,113 +1,113 @@
-/* @(#)stab.h 1.11 92/05/11 SMI */
-/*
- * Copyright (c) 1990 by Sun Microsystems, Inc.
- */
-
-/*
- * This file gives definitions supplementing <a.out.h>
- * for permanent symbol table entries.
- * These must have one of the N_STAB bits on,
- * and are subject to relocation according to the masks in <a.out.h>.
- */
-
-#ifndef _STAB_H
-#define _STAB_H
-
-
-#if !defined(_a_out_h) && !defined(_A_OUT_H)
-/* this file contains fragments of a.out.h and stab.h relevant to
- * support of stabX processing within ELF files - see the
- * Format of a symbol table entry
- */
-struct nlist {
- union {
- char *n_name; /* for use when in-core */
- long n_strx; /* index into file string table */
- } n_un;
- unsigned char n_type; /* type flag (N_TEXT,..) */
- char n_other; /* unused */
- short n_desc; /* see <stab.h> */
- unsigned long n_value; /* value of symbol (or sdb offset) */
-};
-
-/*
- * Simple values for n_type.
- */
-#define N_UNDF 0x0 /* undefined */
-#define N_ABS 0x2 /* absolute */
-#define N_TEXT 0x4 /* text */
-#define N_DATA 0x6 /* data */
-#define N_BSS 0x8 /* bss */
-#define N_COMM 0x12 /* common (internal to ld) */
-#define N_FN 0x1f /* file name symbol */
-
-#define N_EXT 01 /* external bit, or'ed in */
-#define N_TYPE 0x1e /* mask for all the type bits */
-
-#endif
-
-/*
- * for symbolic debugger, sdb(1):
- */
-#define N_GSYM 0x20 /* global symbol: name,,0,type,0 */
-#define N_FNAME 0x22 /* procedure name (f77 kludge): name,,0 */
-#define N_FUN 0x24 /* procedure: name,,0,linenumber,address */
-#define N_STSYM 0x26 /* static symbol: name,,0,type,address */
-#define N_LCSYM 0x28 /* .lcomm symbol: name,,0,type,address */
-#define N_MAIN 0x2a /* name of main routine : name,,0,0,0 */
-#define N_ROSYM 0x2c /* ro_data objects */
-#define N_OBJ 0x38 /* object file path or name */
-#define N_OPT 0x3c /* compiler options */
-#define N_RSYM 0x40 /* register sym: name,,0,type,register */
-#define N_SLINE 0x44 /* src line: 0,,0,linenumber,address */
-#define N_FLINE 0x4c /* function start.end */
-#define N_SSYM 0x60 /* structure elt: name,,0,type,struct_offset */
-#define N_ENDM 0x62 /* last stab emitted for module */
-#define N_SO 0x64 /* source file name: name,,0,0,address */
-#define N_LSYM 0x80 /* local sym: name,,0,type,offset */
-#define N_BINCL 0x82 /* header file: name,,0,0,0 */
-#define N_SOL 0x84 /* #included file name: name,,0,0,address */
-#define N_PSYM 0xa0 /* parameter: name,,0,type,offset */
-#define N_EINCL 0xa2 /* end of include file */
-#define N_ENTRY 0xa4 /* alternate entry: name,linenumber,address */
-#define N_LBRAC 0xc0 /* left bracket: 0,,0,nesting level,address */
-#define N_EXCL 0xc2 /* excluded include file */
-#define N_RBRAC 0xe0 /* right bracket: 0,,0,nesting level,address */
-#define N_BCOMM 0xe2 /* begin common: name,, */
-#define N_ECOMM 0xe4 /* end common: name,, */
-#define N_ECOML 0xe8 /* end common (local name): ,,address */
-#define N_LENG 0xfe /* second stab entry with length information */
-
-/*
- * for the berkeley pascal compiler, pc(1):
- */
-#define N_PC 0x30 /* global pascal symbol: name,,0,subtype,line */
-#define N_WITH 0xea /* pascal with statement: type,,0,0,offset */
-
-/*
- * for code browser only
- */
-#define N_BROWS 0x48 /* path to associated .cb file */
-
-/*
- * Optional langauge designations for N_SO
- */
-#define N_SO_AS 1 /* Assembler */
-#define N_SO_C 2 /* C */
-#define N_SO_ANSI_C 3 /* ANSI C */
-#define N_SO_CC 4 /* C++ */
-#define N_SO_FORTRAN 5 /* Fortran 77 */
-#define N_SO_PASCAL 6 /* Pascal */
-
-/*
- * Floating point type values
- */
-#define NF_NONE 0 /* Undefined type */
-#define NF_SINGLE 1 /* IEEE 32 bit float */
-#define NF_DOUBLE 2 /* IEEE 64 bit float */
-#define NF_COMPLEX 3 /* Fortran complex */
-#define NF_COMPLEX16 4 /* Fortran double complex */
-#define NF_COMPLEX32 5 /* Fortran complex*16 */
-#define NF_LDOUBLE 6 /* Long double */
-
-#endif
+/* @(#)stab.h 1.11 92/05/11 SMI */
+/*
+ * Copyright (c) 1990 by Sun Microsystems, Inc.
+ */
+
+/*
+ * This file gives definitions supplementing <a.out.h>
+ * for permanent symbol table entries.
+ * These must have one of the N_STAB bits on,
+ * and are subject to relocation according to the masks in <a.out.h>.
+ */
+
+#ifndef _STAB_H
+#define _STAB_H
+
+
+#if !defined(_a_out_h) && !defined(_A_OUT_H)
+/* this file contains fragments of a.out.h and stab.h relevant to
+ * support of stabX processing within ELF files - see the
+ * Format of a symbol table entry
+ */
+struct nlist {
+ union {
+ char *n_name; /* for use when in-core */
+ long n_strx; /* index into file string table */
+ } n_un;
+ unsigned char n_type; /* type flag (N_TEXT,..) */
+ char n_other; /* unused */
+ short n_desc; /* see <stab.h> */
+ unsigned long n_value; /* value of symbol (or sdb offset) */
+};
+
+/*
+ * Simple values for n_type.
+ */
+#define N_UNDF 0x0 /* undefined */
+#define N_ABS 0x2 /* absolute */
+#define N_TEXT 0x4 /* text */
+#define N_DATA 0x6 /* data */
+#define N_BSS 0x8 /* bss */
+#define N_COMM 0x12 /* common (internal to ld) */
+#define N_FN 0x1f /* file name symbol */
+
+#define N_EXT 01 /* external bit, or'ed in */
+#define N_TYPE 0x1e /* mask for all the type bits */
+
+#endif
+
+/*
+ * for symbolic debugger, sdb(1):
+ */
+#define N_GSYM 0x20 /* global symbol: name,,0,type,0 */
+#define N_FNAME 0x22 /* procedure name (f77 kludge): name,,0 */
+#define N_FUN 0x24 /* procedure: name,,0,linenumber,address */
+#define N_STSYM 0x26 /* static symbol: name,,0,type,address */
+#define N_LCSYM 0x28 /* .lcomm symbol: name,,0,type,address */
+#define N_MAIN 0x2a /* name of main routine : name,,0,0,0 */
+#define N_ROSYM 0x2c /* ro_data objects */
+#define N_OBJ 0x38 /* object file path or name */
+#define N_OPT 0x3c /* compiler options */
+#define N_RSYM 0x40 /* register sym: name,,0,type,register */
+#define N_SLINE 0x44 /* src line: 0,,0,linenumber,address */
+#define N_FLINE 0x4c /* function start.end */
+#define N_SSYM 0x60 /* structure elt: name,,0,type,struct_offset */
+#define N_ENDM 0x62 /* last stab emitted for module */
+#define N_SO 0x64 /* source file name: name,,0,0,address */
+#define N_LSYM 0x80 /* local sym: name,,0,type,offset */
+#define N_BINCL 0x82 /* header file: name,,0,0,0 */
+#define N_SOL 0x84 /* #included file name: name,,0,0,address */
+#define N_PSYM 0xa0 /* parameter: name,,0,type,offset */
+#define N_EINCL 0xa2 /* end of include file */
+#define N_ENTRY 0xa4 /* alternate entry: name,linenumber,address */
+#define N_LBRAC 0xc0 /* left bracket: 0,,0,nesting level,address */
+#define N_EXCL 0xc2 /* excluded include file */
+#define N_RBRAC 0xe0 /* right bracket: 0,,0,nesting level,address */
+#define N_BCOMM 0xe2 /* begin common: name,, */
+#define N_ECOMM 0xe4 /* end common: name,, */
+#define N_ECOML 0xe8 /* end common (local name): ,,address */
+#define N_LENG 0xfe /* second stab entry with length information */
+
+/*
+ * for the berkeley pascal compiler, pc(1):
+ */
+#define N_PC 0x30 /* global pascal symbol: name,,0,subtype,line */
+#define N_WITH 0xea /* pascal with statement: type,,0,0,offset */
+
+/*
+ * for code browser only
+ */
+#define N_BROWS 0x48 /* path to associated .cb file */
+
+/*
+ * Optional langauge designations for N_SO
+ */
+#define N_SO_AS 1 /* Assembler */
+#define N_SO_C 2 /* C */
+#define N_SO_ANSI_C 3 /* ANSI C */
+#define N_SO_CC 4 /* C++ */
+#define N_SO_FORTRAN 5 /* Fortran 77 */
+#define N_SO_PASCAL 6 /* Pascal */
+
+/*
+ * Floating point type values
+ */
+#define NF_NONE 0 /* Undefined type */
+#define NF_SINGLE 1 /* IEEE 32 bit float */
+#define NF_DOUBLE 2 /* IEEE 64 bit float */
+#define NF_COMPLEX 3 /* Fortran complex */
+#define NF_COMPLEX16 4 /* Fortran double complex */
+#define NF_COMPLEX32 5 /* Fortran complex*16 */
+#define NF_LDOUBLE 6 /* Long double */
+
+#endif
diff --git a/lcc/src/stmt.c b/lcc/src/stmt.c
index b742a32..94ab403 100755
--- a/lcc/src/stmt.c
+++ b/lcc/src/stmt.c
@@ -1,697 +1,697 @@
-#include "c.h"
-
-
-#define SWSIZE 512
-
-#define den(i,j) ((j-buckets[i]+1.0)/(v[j]-v[buckets[i]]+1))
-
-struct code codehead = { Start };
-Code codelist = &codehead;
-float density = 0.5;
-Table stmtlabs;
-
-static int foldcond(Tree e1, Tree e2);
-static void caselabel(Swtch, long, int);
-static void cmp(int, Symbol, long, int);
-static Tree conditional(int);
-static void dostmt(int, Swtch, int);
-static int equal(Symbol, Symbol);
-static void forstmt(int, Swtch, int);
-static void ifstmt(int, int, Swtch, int);
-static Symbol localaddr(Tree);
-static void stmtlabel(void);
-static void swstmt(int, int, int);
-static void whilestmt(int, Swtch, int);
-Code code(int kind) {
- Code cp;
-
- if (!reachable(kind))
- warning("unreachable code\n");
-
- NEW(cp, FUNC);
- cp->kind = kind;
- cp->prev = codelist;
- cp->next = NULL;
- codelist->next = cp;
- codelist = cp;
- return cp;
-}
-int reachable(int kind) {
- Code cp;
-
- if (kind > Start) {
- Code cp;
- for (cp = codelist; cp->kind < Label; )
- cp = cp->prev;
- if (cp->kind == Jump || cp->kind == Switch)
- return 0;
- }
- return 1;
-}
-void addlocal(Symbol p) {
- if (!p->defined) {
- code(Local)->u.var = p;
- p->defined = 1;
- p->scope = level;
- }
-}
-void definept(Coordinate *p) {
- Code cp = code(Defpoint);
-
- cp->u.point.src = p ? *p : src;
- cp->u.point.point = npoints;
- if (ncalled > 0) {
- int n = findcount(cp->u.point.src.file,
- cp->u.point.src.x, cp->u.point.src.y);
- if (n > 0)
- refinc = (float)n/ncalled;
- }
- if (glevel > 2) locus(identifiers, &cp->u.point.src);
- if (events.points && reachable(Gen))
- {
- Tree e = NULL;
- apply(events.points, &cp->u.point.src, &e);
- if (e)
- listnodes(e, 0, 0);
- }
-}
-void statement(int loop, Swtch swp, int lev) {
- float ref = refinc;
-
- if (Aflag >= 2 && lev == 15)
- warning("more than 15 levels of nested statements\n");
- switch (t) {
- case IF: ifstmt(genlabel(2), loop, swp, lev + 1);
- break;
- case WHILE: whilestmt(genlabel(3), swp, lev + 1); break;
- case DO: dostmt(genlabel(3), swp, lev + 1); expect(';');
- break;
-
- case FOR: forstmt(genlabel(4), swp, lev + 1);
- break;
- case BREAK: walk(NULL, 0, 0);
- definept(NULL);
- if (swp && swp->lab > loop)
- branch(swp->lab + 1);
- else if (loop)
- branch(loop + 2);
- else
- error("illegal break statement\n");
- t = gettok(); expect(';');
- break;
-
- case CONTINUE: walk(NULL, 0, 0);
- definept(NULL);
- if (loop)
- branch(loop + 1);
- else
- error("illegal continue statement\n");
- t = gettok(); expect(';');
- break;
-
- case SWITCH: swstmt(loop, genlabel(2), lev + 1);
- break;
- case CASE: {
- int lab = genlabel(1);
- if (swp == NULL)
- error("illegal case label\n");
- definelab(lab);
- while (t == CASE) {
- static char stop[] = { IF, ID, 0 };
- Tree p;
- t = gettok();
- p = constexpr(0);
- if (generic(p->op) == CNST && isint(p->type)) {
- if (swp) {
- needconst++;
- p = cast(p, swp->sym->type);
- if (p->type->op == UNSIGNED)
- p->u.v.i = extend(p->u.v.u, p->type);
- needconst--;
- caselabel(swp, p->u.v.i, lab);
- }
- } else
- error("case label must be a constant integer expression\n");
-
- test(':', stop);
- }
- statement(loop, swp, lev);
- } break;
- case DEFAULT: if (swp == NULL)
- error("illegal default label\n");
- else if (swp->deflab)
- error("extra default label\n");
- else {
- swp->deflab = findlabel(swp->lab);
- definelab(swp->deflab->u.l.label);
- }
- t = gettok();
- expect(':');
- statement(loop, swp, lev); break;
- case RETURN: {
- Type rty = freturn(cfunc->type);
- t = gettok();
- definept(NULL);
- if (t != ';')
- if (rty == voidtype) {
- error("extraneous return value\n");
- expr(0);
- retcode(NULL);
- } else
- retcode(expr(0));
- else {
- if (rty != voidtype)
- warning("missing return value\n");
- retcode(NULL);
- }
- branch(cfunc->u.f.label);
- } expect(';');
- break;
-
- case '{': compound(loop, swp, lev + 1); break;
- case ';': definept(NULL); t = gettok(); break;
- case GOTO: walk(NULL, 0, 0);
- definept(NULL);
- t = gettok();
- if (t == ID) {
- Symbol p = lookup(token, stmtlabs);
- if (p == NULL) {
- p = install(token, &stmtlabs, 0, FUNC);
- p->scope = LABELS;
- p->u.l.label = genlabel(1);
- p->src = src;
- }
- use(p, src);
- branch(p->u.l.label);
- t = gettok();
- } else
- error("missing label in goto\n"); expect(';');
- break;
-
- case ID: if (getchr() == ':') {
- stmtlabel();
- statement(loop, swp, lev);
- break;
- }
- default: definept(NULL);
- if (kind[t] != ID) {
- error("unrecognized statement\n");
- t = gettok();
- } else {
- Tree e = expr0(0);
- listnodes(e, 0, 0);
- if (nodecount == 0 || nodecount > 200)
- walk(NULL, 0, 0);
- else if (glevel) walk(NULL, 0, 0);
- deallocate(STMT);
- } expect(';');
- break;
-
- }
- if (kind[t] != IF && kind[t] != ID
- && t != '}' && t != EOI) {
- static char stop[] = { IF, ID, '}', 0 };
- error("illegal statement termination\n");
- skipto(0, stop);
- }
- refinc = ref;
-}
-
-static void ifstmt(int lab, int loop, Swtch swp, int lev) {
- t = gettok();
- expect('(');
- definept(NULL);
- walk(conditional(')'), 0, lab);
- refinc /= 2.0;
- statement(loop, swp, lev);
- if (t == ELSE) {
- branch(lab + 1);
- t = gettok();
- definelab(lab);
- statement(loop, swp, lev);
- if (findlabel(lab + 1)->ref)
- definelab(lab + 1);
- } else
- definelab(lab);
-}
-static Tree conditional(int tok) {
- Tree p = expr(tok);
-
- if (Aflag > 1 && isfunc(p->type))
- warning("%s used in a conditional expression\n",
- funcname(p));
- return cond(p);
-}
-static void stmtlabel(void) {
- Symbol p = lookup(token, stmtlabs);
-
- if (p == NULL) {
- p = install(token, &stmtlabs, 0, FUNC);
- p->scope = LABELS;
- p->u.l.label = genlabel(1);
- p->src = src;
- }
- if (p->defined)
- error("redefinition of label `%s' previously defined at %w\n", p->name, &p->src);
-
- p->defined = 1;
- definelab(p->u.l.label);
- t = gettok();
- expect(':');
-}
-static void forstmt(int lab, Swtch swp, int lev) {
- int once = 0;
- Tree e1 = NULL, e2 = NULL, e3 = NULL;
- Coordinate pt2, pt3;
-
- t = gettok();
- expect('(');
- definept(NULL);
- if (kind[t] == ID)
- e1 = texpr(expr0, ';', FUNC);
- else
- expect(';');
- walk(e1, 0, 0);
- pt2 = src;
- refinc *= 10.0;
- if (kind[t] == ID)
- e2 = texpr(conditional, ';', FUNC);
- else
- expect(';');
- pt3 = src;
- if (kind[t] == ID)
- e3 = texpr(expr0, ')', FUNC);
- else {
- static char stop[] = { IF, ID, '}', 0 };
- test(')', stop);
- }
- if (e2) {
- once = foldcond(e1, e2);
- if (!once)
- branch(lab + 3);
- }
- definelab(lab);
- statement(lab, swp, lev);
- definelab(lab + 1);
- definept(&pt3);
- if (e3)
- walk(e3, 0, 0);
- if (e2) {
- if (!once)
- definelab(lab + 3);
- definept(&pt2);
- walk(e2, lab, 0);
- } else {
- definept(&pt2);
- branch(lab);
- }
- if (findlabel(lab + 2)->ref)
- definelab(lab + 2);
-}
-static void swstmt(int loop, int lab, int lev) {
- Tree e;
- struct swtch sw;
- Code head, tail;
-
- t = gettok();
- expect('(');
- definept(NULL);
- e = expr(')');
- if (!isint(e->type)) {
- error("illegal type `%t' in switch expression\n",
- e->type);
- e = retype(e, inttype);
- }
- e = cast(e, promote(e->type));
- if (generic(e->op) == INDIR && isaddrop(e->kids[0]->op)
- && e->kids[0]->u.sym->type == e->type
- && !isvolatile(e->kids[0]->u.sym->type)) {
- sw.sym = e->kids[0]->u.sym;
- walk(NULL, 0, 0);
- } else {
- sw.sym = genident(REGISTER, e->type, level);
- addlocal(sw.sym);
- walk(asgn(sw.sym, e), 0, 0);
- }
- head = code(Switch);
- sw.lab = lab;
- sw.deflab = NULL;
- sw.ncases = 0;
- sw.size = SWSIZE;
- sw.values = newarray(SWSIZE, sizeof *sw.values, FUNC);
- sw.labels = newarray(SWSIZE, sizeof *sw.labels, FUNC);
- refinc /= 10.0;
- statement(loop, &sw, lev);
- if (sw.deflab == NULL) {
- sw.deflab = findlabel(lab);
- definelab(lab);
- if (sw.ncases == 0)
- warning("switch statement with no cases\n");
- }
- if (findlabel(lab + 1)->ref)
- definelab(lab + 1);
- tail = codelist;
- codelist = head->prev;
- codelist->next = head->prev = NULL;
- if (sw.ncases > 0)
- swgen(&sw);
- branch(lab);
- head->next->prev = codelist;
- codelist->next = head->next;
- codelist = tail;
-}
-static void caselabel(Swtch swp, long val, int lab) {
- int k;
-
- if (swp->ncases >= swp->size)
- {
- long *vals = swp->values;
- Symbol *labs = swp->labels;
- swp->size *= 2;
- swp->values = newarray(swp->size, sizeof *swp->values, FUNC);
- swp->labels = newarray(swp->size, sizeof *swp->labels, FUNC);
- for (k = 0; k < swp->ncases; k++) {
- swp->values[k] = vals[k];
- swp->labels[k] = labs[k];
- }
- }
- k = swp->ncases;
- for ( ; k > 0 && swp->values[k-1] >= val; k--) {
- swp->values[k] = swp->values[k-1];
- swp->labels[k] = swp->labels[k-1];
- }
- if (k < swp->ncases && swp->values[k] == val)
- error("duplicate case label `%d'\n", val);
- swp->values[k] = val;
- swp->labels[k] = findlabel(lab);
- ++swp->ncases;
- if (Aflag >= 2 && swp->ncases == 258)
- warning("more than 257 cases in a switch\n");
-}
-void swgen(Swtch swp) {
- int *buckets, k, n;
- long *v = swp->values;
-
- buckets = newarray(swp->ncases + 1,
- sizeof *buckets, FUNC);
- for (n = k = 0; k < swp->ncases; k++, n++) {
- buckets[n] = k;
- while (n > 0 && den(n-1, k) >= density)
- n--;
- }
- buckets[n] = swp->ncases;
- swcode(swp, buckets, 0, n - 1);
-}
-void swcode(Swtch swp, int b[], int lb, int ub) {
- int hilab, lolab, l, u, k = (lb + ub)/2;
- long *v = swp->values;
-
- if (k > lb && k < ub) {
- lolab = genlabel(1);
- hilab = genlabel(1);
- } else if (k > lb) {
- lolab = genlabel(1);
- hilab = swp->deflab->u.l.label;
- } else if (k < ub) {
- lolab = swp->deflab->u.l.label;
- hilab = genlabel(1);
- } else
- lolab = hilab = swp->deflab->u.l.label;
- l = b[k];
- u = b[k+1] - 1;
- if (u - l + 1 <= 3)
- {
- int i;
- for (i = l; i <= u; i++)
- cmp(EQ, swp->sym, v[i], swp->labels[i]->u.l.label);
- if (k > lb && k < ub)
- cmp(GT, swp->sym, v[u], hilab);
- else if (k > lb)
- cmp(GT, swp->sym, v[u], hilab);
- else if (k < ub)
- cmp(LT, swp->sym, v[l], lolab);
- else
- assert(lolab == hilab),
- branch(lolab);
- walk(NULL, 0, 0);
- }
- else {
- Tree e;
- Type ty = signedint(swp->sym->type);
- Symbol table = genident(STATIC,
- array(voidptype, u - l + 1, 0), GLOBAL);
- (*IR->defsymbol)(table);
- if (!isunsigned(swp->sym->type) || v[l] != 0)
- cmp(LT, swp->sym, v[l], lolab);
- cmp(GT, swp->sym, v[u], hilab);
- e = (*optree['-'])(SUB, cast(idtree(swp->sym), ty), cnsttree(ty, v[l]));
- if (e->type->size < unsignedptr->size)
- e = cast(e, unsignedlong);
- walk(tree(JUMP, voidtype,
- rvalue((*optree['+'])(ADD, pointer(idtree(table)), e)), NULL),
- 0, 0);
- code(Switch);
- codelist->u.swtch.table = table;
- codelist->u.swtch.sym = swp->sym;
- codelist->u.swtch.deflab = swp->deflab;
- codelist->u.swtch.size = u - l + 1;
- codelist->u.swtch.values = &v[l];
- codelist->u.swtch.labels = &swp->labels[l];
- if (v[u] - v[l] + 1 >= 10000)
- warning("switch generates a huge table\n");
- }
- if (k > lb) {
- assert(lolab != swp->deflab->u.l.label);
- definelab(lolab);
- swcode(swp, b, lb, k - 1);
- }
- if (k < ub) {
- assert(hilab != swp->deflab->u.l.label);
- definelab(hilab);
- swcode(swp, b, k + 1, ub);
- }
-}
-static void cmp(int op, Symbol p, long n, int lab) {
- Type ty = signedint(p->type);
-
- listnodes(eqtree(op,
- cast(idtree(p), ty),
- cnsttree(ty, n)),
- lab, 0);
-}
-void retcode(Tree p) {
- Type ty;
-
- if (p == NULL) {
- if (events.returns)
- apply(events.returns, cfunc, NULL);
- return;
- }
- p = pointer(p);
- ty = assign(freturn(cfunc->type), p);
- if (ty == NULL) {
- error("illegal return type; found `%t' expected `%t'\n",
- p->type, freturn(cfunc->type));
- return;
- }
- p = cast(p, ty);
- if (retv)
- {
- if (iscallb(p))
- p = tree(RIGHT, p->type,
- tree(CALL+B, p->type,
- p->kids[0]->kids[0], idtree(retv)),
- rvalue(idtree(retv)));
- else
- p = asgntree(ASGN, rvalue(idtree(retv)), p);
- walk(p, 0, 0);
- if (events.returns)
- apply(events.returns, cfunc, rvalue(idtree(retv)));
- return;
- }
- if (events.returns)
- {
- Symbol t1 = genident(AUTO, p->type, level);
- addlocal(t1);
- walk(asgn(t1, p), 0, 0);
- apply(events.returns, cfunc, idtree(t1));
- p = idtree(t1);
- }
- if (!isfloat(p->type))
- p = cast(p, promote(p->type));
- if (isptr(p->type))
- {
- Symbol q = localaddr(p);
- if (q && (q->computed || q->generated))
- warning("pointer to a %s is an illegal return value\n",
- q->scope == PARAM ? "parameter" : "local");
- else if (q)
- warning("pointer to %s `%s' is an illegal return value\n",
- q->scope == PARAM ? "parameter" : "local", q->name);
- }
- walk(tree(mkop(RET,p->type), p->type, p, NULL), 0, 0);
-}
-void definelab(int lab) {
- Code cp;
- Symbol p = findlabel(lab);
-
- assert(lab);
- walk(NULL, 0, 0);
- code(Label)->u.forest = newnode(LABEL+V, NULL, NULL, p);
- for (cp = codelist->prev; cp->kind <= Label; )
- cp = cp->prev;
- while ( cp->kind == Jump
- && cp->u.forest->kids[0]
- && specific(cp->u.forest->kids[0]->op) == ADDRG+P
- && cp->u.forest->kids[0]->syms[0] == p) {
- assert(cp->u.forest->kids[0]->syms[0]->u.l.label == lab);
- p->ref--;
- assert(cp->next);
- assert(cp->prev);
- cp->prev->next = cp->next;
- cp->next->prev = cp->prev;
- cp = cp->prev;
- while (cp->kind <= Label)
- cp = cp->prev;
- }
-}
-Node jump(int lab) {
- Symbol p = findlabel(lab);
-
- p->ref++;
- return newnode(JUMP+V, newnode(ADDRG+ttob(voidptype), NULL, NULL, p),
- NULL, NULL);
-}
-void branch(int lab) {
- Code cp;
- Symbol p = findlabel(lab);
-
- assert(lab);
- walk(NULL, 0, 0);
- code(Label)->u.forest = jump(lab);
- for (cp = codelist->prev; cp->kind < Label; )
- cp = cp->prev;
- while ( cp->kind == Label
- && cp->u.forest->op == LABEL+V
- && !equal(cp->u.forest->syms[0], p)) {
- equatelab(cp->u.forest->syms[0], p);
- assert(cp->next);
- assert(cp->prev);
- cp->prev->next = cp->next;
- cp->next->prev = cp->prev;
- cp = cp->prev;
- while (cp->kind < Label)
- cp = cp->prev;
- }
- if (cp->kind == Jump || cp->kind == Switch) {
- p->ref--;
- codelist->prev->next = NULL;
- codelist = codelist->prev;
- } else {
- codelist->kind = Jump;
- if (cp->kind == Label
- && cp->u.forest->op == LABEL+V
- && equal(cp->u.forest->syms[0], p))
- warning("source code specifies an infinite loop");
- }
-}
-void equatelab(Symbol old, Symbol new) {
- assert(old->u.l.equatedto == NULL);
- old->u.l.equatedto = new;
- new->ref++;
-}
-static int equal(Symbol lprime, Symbol dst) {
- assert(dst && lprime);
- for ( ; dst; dst = dst->u.l.equatedto)
- if (lprime == dst)
- return 1;
- return 0;
-}
-/* dostmt - do statement while ( expression ) */
-static void dostmt(int lab, Swtch swp, int lev) {
- refinc *= 10.0;
- t = gettok();
- definelab(lab);
- statement(lab, swp, lev);
- definelab(lab + 1);
- expect(WHILE);
- expect('(');
- definept(NULL);
- walk(conditional(')'), lab, 0);
- if (findlabel(lab + 2)->ref)
- definelab(lab + 2);
-}
-
-/* foldcond - check if initial test in for(e1;e2;e3) S is necessary */
-static int foldcond(Tree e1, Tree e2) {
- int op = generic(e2->op);
- Symbol v;
-
- if (e1 == 0 || e2 == 0)
- return 0;
- if (generic(e1->op) == ASGN && isaddrop(e1->kids[0]->op)
- && generic(e1->kids[1]->op) == CNST) {
- v = e1->kids[0]->u.sym;
- e1 = e1->kids[1];
- } else
- return 0;
- if ((op==LE || op==LT || op==EQ || op==NE || op==GT || op==GE)
- && generic(e2->kids[0]->op) == INDIR
- && e2->kids[0]->kids[0]->u.sym == v
- && e2->kids[1]->op == e1->op) {
- e1 = simplify(op, e2->type, e1, e2->kids[1]);
- if (e1->op == CNST+I)
- return e1->u.v.i;
- }
- return 0;
-}
-
-/* localaddr - returns q if p yields the address of local/parameter q; otherwise returns 0 */
-static Symbol localaddr(Tree p) {
- if (p == NULL)
- return NULL;
- switch (generic(p->op)) {
- case INDIR: case CALL: case ARG:
- return NULL;
- case ADDRL: case ADDRF:
- return p->u.sym;
- case RIGHT: case ASGN:
- if (p->kids[1])
- return localaddr(p->kids[1]);
- return localaddr(p->kids[0]);
- case COND: {
- Symbol q;
- assert(p->kids[1] && p->kids[1]->op == RIGHT);
- if ((q = localaddr(p->kids[1]->kids[0])) != NULL)
- return q;
- return localaddr(p->kids[1]->kids[1]);
- }
- default: {
- Symbol q;
- if (p->kids[0] && (q = localaddr(p->kids[0])) != NULL)
- return q;
- return localaddr(p->kids[1]);
- }
- }
-}
-
-/* whilestmt - while ( expression ) statement */
-static void whilestmt(int lab, Swtch swp, int lev) {
- Coordinate pt;
- Tree e;
-
- refinc *= 10.0;
- t = gettok();
- expect('(');
- walk(NULL, 0, 0);
- pt = src;
- e = texpr(conditional, ')', FUNC);
- branch(lab + 1);
- definelab(lab);
- statement(lab, swp, lev);
- definelab(lab + 1);
- definept(&pt);
- walk(e, lab, 0);
- if (findlabel(lab + 2)->ref)
- definelab(lab + 2);
-}
+#include "c.h"
+
+
+#define SWSIZE 512
+
+#define den(i,j) ((j-buckets[i]+1.0)/(v[j]-v[buckets[i]]+1))
+
+struct code codehead = { Start };
+Code codelist = &codehead;
+float density = 0.5;
+Table stmtlabs;
+
+static int foldcond(Tree e1, Tree e2);
+static void caselabel(Swtch, long, int);
+static void cmp(int, Symbol, long, int);
+static Tree conditional(int);
+static void dostmt(int, Swtch, int);
+static int equal(Symbol, Symbol);
+static void forstmt(int, Swtch, int);
+static void ifstmt(int, int, Swtch, int);
+static Symbol localaddr(Tree);
+static void stmtlabel(void);
+static void swstmt(int, int, int);
+static void whilestmt(int, Swtch, int);
+Code code(int kind) {
+ Code cp;
+
+ if (!reachable(kind))
+ warning("unreachable code\n");
+
+ NEW(cp, FUNC);
+ cp->kind = kind;
+ cp->prev = codelist;
+ cp->next = NULL;
+ codelist->next = cp;
+ codelist = cp;
+ return cp;
+}
+int reachable(int kind) {
+ Code cp;
+
+ if (kind > Start) {
+ Code cp;
+ for (cp = codelist; cp->kind < Label; )
+ cp = cp->prev;
+ if (cp->kind == Jump || cp->kind == Switch)
+ return 0;
+ }
+ return 1;
+}
+void addlocal(Symbol p) {
+ if (!p->defined) {
+ code(Local)->u.var = p;
+ p->defined = 1;
+ p->scope = level;
+ }
+}
+void definept(Coordinate *p) {
+ Code cp = code(Defpoint);
+
+ cp->u.point.src = p ? *p : src;
+ cp->u.point.point = npoints;
+ if (ncalled > 0) {
+ int n = findcount(cp->u.point.src.file,
+ cp->u.point.src.x, cp->u.point.src.y);
+ if (n > 0)
+ refinc = (float)n/ncalled;
+ }
+ if (glevel > 2) locus(identifiers, &cp->u.point.src);
+ if (events.points && reachable(Gen))
+ {
+ Tree e = NULL;
+ apply(events.points, &cp->u.point.src, &e);
+ if (e)
+ listnodes(e, 0, 0);
+ }
+}
+void statement(int loop, Swtch swp, int lev) {
+ float ref = refinc;
+
+ if (Aflag >= 2 && lev == 15)
+ warning("more than 15 levels of nested statements\n");
+ switch (t) {
+ case IF: ifstmt(genlabel(2), loop, swp, lev + 1);
+ break;
+ case WHILE: whilestmt(genlabel(3), swp, lev + 1); break;
+ case DO: dostmt(genlabel(3), swp, lev + 1); expect(';');
+ break;
+
+ case FOR: forstmt(genlabel(4), swp, lev + 1);
+ break;
+ case BREAK: walk(NULL, 0, 0);
+ definept(NULL);
+ if (swp && swp->lab > loop)
+ branch(swp->lab + 1);
+ else if (loop)
+ branch(loop + 2);
+ else
+ error("illegal break statement\n");
+ t = gettok(); expect(';');
+ break;
+
+ case CONTINUE: walk(NULL, 0, 0);
+ definept(NULL);
+ if (loop)
+ branch(loop + 1);
+ else
+ error("illegal continue statement\n");
+ t = gettok(); expect(';');
+ break;
+
+ case SWITCH: swstmt(loop, genlabel(2), lev + 1);
+ break;
+ case CASE: {
+ int lab = genlabel(1);
+ if (swp == NULL)
+ error("illegal case label\n");
+ definelab(lab);
+ while (t == CASE) {
+ static char stop[] = { IF, ID, 0 };
+ Tree p;
+ t = gettok();
+ p = constexpr(0);
+ if (generic(p->op) == CNST && isint(p->type)) {
+ if (swp) {
+ needconst++;
+ p = cast(p, swp->sym->type);
+ if (p->type->op == UNSIGNED)
+ p->u.v.i = extend(p->u.v.u, p->type);
+ needconst--;
+ caselabel(swp, p->u.v.i, lab);
+ }
+ } else
+ error("case label must be a constant integer expression\n");
+
+ test(':', stop);
+ }
+ statement(loop, swp, lev);
+ } break;
+ case DEFAULT: if (swp == NULL)
+ error("illegal default label\n");
+ else if (swp->deflab)
+ error("extra default label\n");
+ else {
+ swp->deflab = findlabel(swp->lab);
+ definelab(swp->deflab->u.l.label);
+ }
+ t = gettok();
+ expect(':');
+ statement(loop, swp, lev); break;
+ case RETURN: {
+ Type rty = freturn(cfunc->type);
+ t = gettok();
+ definept(NULL);
+ if (t != ';')
+ if (rty == voidtype) {
+ error("extraneous return value\n");
+ expr(0);
+ retcode(NULL);
+ } else
+ retcode(expr(0));
+ else {
+ if (rty != voidtype)
+ warning("missing return value\n");
+ retcode(NULL);
+ }
+ branch(cfunc->u.f.label);
+ } expect(';');
+ break;
+
+ case '{': compound(loop, swp, lev + 1); break;
+ case ';': definept(NULL); t = gettok(); break;
+ case GOTO: walk(NULL, 0, 0);
+ definept(NULL);
+ t = gettok();
+ if (t == ID) {
+ Symbol p = lookup(token, stmtlabs);
+ if (p == NULL) {
+ p = install(token, &stmtlabs, 0, FUNC);
+ p->scope = LABELS;
+ p->u.l.label = genlabel(1);
+ p->src = src;
+ }
+ use(p, src);
+ branch(p->u.l.label);
+ t = gettok();
+ } else
+ error("missing label in goto\n"); expect(';');
+ break;
+
+ case ID: if (getchr() == ':') {
+ stmtlabel();
+ statement(loop, swp, lev);
+ break;
+ }
+ default: definept(NULL);
+ if (kind[t] != ID) {
+ error("unrecognized statement\n");
+ t = gettok();
+ } else {
+ Tree e = expr0(0);
+ listnodes(e, 0, 0);
+ if (nodecount == 0 || nodecount > 200)
+ walk(NULL, 0, 0);
+ else if (glevel) walk(NULL, 0, 0);
+ deallocate(STMT);
+ } expect(';');
+ break;
+
+ }
+ if (kind[t] != IF && kind[t] != ID
+ && t != '}' && t != EOI) {
+ static char stop[] = { IF, ID, '}', 0 };
+ error("illegal statement termination\n");
+ skipto(0, stop);
+ }
+ refinc = ref;
+}
+
+static void ifstmt(int lab, int loop, Swtch swp, int lev) {
+ t = gettok();
+ expect('(');
+ definept(NULL);
+ walk(conditional(')'), 0, lab);
+ refinc /= 2.0;
+ statement(loop, swp, lev);
+ if (t == ELSE) {
+ branch(lab + 1);
+ t = gettok();
+ definelab(lab);
+ statement(loop, swp, lev);
+ if (findlabel(lab + 1)->ref)
+ definelab(lab + 1);
+ } else
+ definelab(lab);
+}
+static Tree conditional(int tok) {
+ Tree p = expr(tok);
+
+ if (Aflag > 1 && isfunc(p->type))
+ warning("%s used in a conditional expression\n",
+ funcname(p));
+ return cond(p);
+}
+static void stmtlabel(void) {
+ Symbol p = lookup(token, stmtlabs);
+
+ if (p == NULL) {
+ p = install(token, &stmtlabs, 0, FUNC);
+ p->scope = LABELS;
+ p->u.l.label = genlabel(1);
+ p->src = src;
+ }
+ if (p->defined)
+ error("redefinition of label `%s' previously defined at %w\n", p->name, &p->src);
+
+ p->defined = 1;
+ definelab(p->u.l.label);
+ t = gettok();
+ expect(':');
+}
+static void forstmt(int lab, Swtch swp, int lev) {
+ int once = 0;
+ Tree e1 = NULL, e2 = NULL, e3 = NULL;
+ Coordinate pt2, pt3;
+
+ t = gettok();
+ expect('(');
+ definept(NULL);
+ if (kind[t] == ID)
+ e1 = texpr(expr0, ';', FUNC);
+ else
+ expect(';');
+ walk(e1, 0, 0);
+ pt2 = src;
+ refinc *= 10.0;
+ if (kind[t] == ID)
+ e2 = texpr(conditional, ';', FUNC);
+ else
+ expect(';');
+ pt3 = src;
+ if (kind[t] == ID)
+ e3 = texpr(expr0, ')', FUNC);
+ else {
+ static char stop[] = { IF, ID, '}', 0 };
+ test(')', stop);
+ }
+ if (e2) {
+ once = foldcond(e1, e2);
+ if (!once)
+ branch(lab + 3);
+ }
+ definelab(lab);
+ statement(lab, swp, lev);
+ definelab(lab + 1);
+ definept(&pt3);
+ if (e3)
+ walk(e3, 0, 0);
+ if (e2) {
+ if (!once)
+ definelab(lab + 3);
+ definept(&pt2);
+ walk(e2, lab, 0);
+ } else {
+ definept(&pt2);
+ branch(lab);
+ }
+ if (findlabel(lab + 2)->ref)
+ definelab(lab + 2);
+}
+static void swstmt(int loop, int lab, int lev) {
+ Tree e;
+ struct swtch sw;
+ Code head, tail;
+
+ t = gettok();
+ expect('(');
+ definept(NULL);
+ e = expr(')');
+ if (!isint(e->type)) {
+ error("illegal type `%t' in switch expression\n",
+ e->type);
+ e = retype(e, inttype);
+ }
+ e = cast(e, promote(e->type));
+ if (generic(e->op) == INDIR && isaddrop(e->kids[0]->op)
+ && e->kids[0]->u.sym->type == e->type
+ && !isvolatile(e->kids[0]->u.sym->type)) {
+ sw.sym = e->kids[0]->u.sym;
+ walk(NULL, 0, 0);
+ } else {
+ sw.sym = genident(REGISTER, e->type, level);
+ addlocal(sw.sym);
+ walk(asgn(sw.sym, e), 0, 0);
+ }
+ head = code(Switch);
+ sw.lab = lab;
+ sw.deflab = NULL;
+ sw.ncases = 0;
+ sw.size = SWSIZE;
+ sw.values = newarray(SWSIZE, sizeof *sw.values, FUNC);
+ sw.labels = newarray(SWSIZE, sizeof *sw.labels, FUNC);
+ refinc /= 10.0;
+ statement(loop, &sw, lev);
+ if (sw.deflab == NULL) {
+ sw.deflab = findlabel(lab);
+ definelab(lab);
+ if (sw.ncases == 0)
+ warning("switch statement with no cases\n");
+ }
+ if (findlabel(lab + 1)->ref)
+ definelab(lab + 1);
+ tail = codelist;
+ codelist = head->prev;
+ codelist->next = head->prev = NULL;
+ if (sw.ncases > 0)
+ swgen(&sw);
+ branch(lab);
+ head->next->prev = codelist;
+ codelist->next = head->next;
+ codelist = tail;
+}
+static void caselabel(Swtch swp, long val, int lab) {
+ int k;
+
+ if (swp->ncases >= swp->size)
+ {
+ long *vals = swp->values;
+ Symbol *labs = swp->labels;
+ swp->size *= 2;
+ swp->values = newarray(swp->size, sizeof *swp->values, FUNC);
+ swp->labels = newarray(swp->size, sizeof *swp->labels, FUNC);
+ for (k = 0; k < swp->ncases; k++) {
+ swp->values[k] = vals[k];
+ swp->labels[k] = labs[k];
+ }
+ }
+ k = swp->ncases;
+ for ( ; k > 0 && swp->values[k-1] >= val; k--) {
+ swp->values[k] = swp->values[k-1];
+ swp->labels[k] = swp->labels[k-1];
+ }
+ if (k < swp->ncases && swp->values[k] == val)
+ error("duplicate case label `%d'\n", val);
+ swp->values[k] = val;
+ swp->labels[k] = findlabel(lab);
+ ++swp->ncases;
+ if (Aflag >= 2 && swp->ncases == 258)
+ warning("more than 257 cases in a switch\n");
+}
+void swgen(Swtch swp) {
+ int *buckets, k, n;
+ long *v = swp->values;
+
+ buckets = newarray(swp->ncases + 1,
+ sizeof *buckets, FUNC);
+ for (n = k = 0; k < swp->ncases; k++, n++) {
+ buckets[n] = k;
+ while (n > 0 && den(n-1, k) >= density)
+ n--;
+ }
+ buckets[n] = swp->ncases;
+ swcode(swp, buckets, 0, n - 1);
+}
+void swcode(Swtch swp, int b[], int lb, int ub) {
+ int hilab, lolab, l, u, k = (lb + ub)/2;
+ long *v = swp->values;
+
+ if (k > lb && k < ub) {
+ lolab = genlabel(1);
+ hilab = genlabel(1);
+ } else if (k > lb) {
+ lolab = genlabel(1);
+ hilab = swp->deflab->u.l.label;
+ } else if (k < ub) {
+ lolab = swp->deflab->u.l.label;
+ hilab = genlabel(1);
+ } else
+ lolab = hilab = swp->deflab->u.l.label;
+ l = b[k];
+ u = b[k+1] - 1;
+ if (u - l + 1 <= 3)
+ {
+ int i;
+ for (i = l; i <= u; i++)
+ cmp(EQ, swp->sym, v[i], swp->labels[i]->u.l.label);
+ if (k > lb && k < ub)
+ cmp(GT, swp->sym, v[u], hilab);
+ else if (k > lb)
+ cmp(GT, swp->sym, v[u], hilab);
+ else if (k < ub)
+ cmp(LT, swp->sym, v[l], lolab);
+ else
+ assert(lolab == hilab),
+ branch(lolab);
+ walk(NULL, 0, 0);
+ }
+ else {
+ Tree e;
+ Type ty = signedint(swp->sym->type);
+ Symbol table = genident(STATIC,
+ array(voidptype, u - l + 1, 0), GLOBAL);
+ (*IR->defsymbol)(table);
+ if (!isunsigned(swp->sym->type) || v[l] != 0)
+ cmp(LT, swp->sym, v[l], lolab);
+ cmp(GT, swp->sym, v[u], hilab);
+ e = (*optree['-'])(SUB, cast(idtree(swp->sym), ty), cnsttree(ty, v[l]));
+ if (e->type->size < unsignedptr->size)
+ e = cast(e, unsignedlong);
+ walk(tree(JUMP, voidtype,
+ rvalue((*optree['+'])(ADD, pointer(idtree(table)), e)), NULL),
+ 0, 0);
+ code(Switch);
+ codelist->u.swtch.table = table;
+ codelist->u.swtch.sym = swp->sym;
+ codelist->u.swtch.deflab = swp->deflab;
+ codelist->u.swtch.size = u - l + 1;
+ codelist->u.swtch.values = &v[l];
+ codelist->u.swtch.labels = &swp->labels[l];
+ if (v[u] - v[l] + 1 >= 10000)
+ warning("switch generates a huge table\n");
+ }
+ if (k > lb) {
+ assert(lolab != swp->deflab->u.l.label);
+ definelab(lolab);
+ swcode(swp, b, lb, k - 1);
+ }
+ if (k < ub) {
+ assert(hilab != swp->deflab->u.l.label);
+ definelab(hilab);
+ swcode(swp, b, k + 1, ub);
+ }
+}
+static void cmp(int op, Symbol p, long n, int lab) {
+ Type ty = signedint(p->type);
+
+ listnodes(eqtree(op,
+ cast(idtree(p), ty),
+ cnsttree(ty, n)),
+ lab, 0);
+}
+void retcode(Tree p) {
+ Type ty;
+
+ if (p == NULL) {
+ if (events.returns)
+ apply(events.returns, cfunc, NULL);
+ return;
+ }
+ p = pointer(p);
+ ty = assign(freturn(cfunc->type), p);
+ if (ty == NULL) {
+ error("illegal return type; found `%t' expected `%t'\n",
+ p->type, freturn(cfunc->type));
+ return;
+ }
+ p = cast(p, ty);
+ if (retv)
+ {
+ if (iscallb(p))
+ p = tree(RIGHT, p->type,
+ tree(CALL+B, p->type,
+ p->kids[0]->kids[0], idtree(retv)),
+ rvalue(idtree(retv)));
+ else
+ p = asgntree(ASGN, rvalue(idtree(retv)), p);
+ walk(p, 0, 0);
+ if (events.returns)
+ apply(events.returns, cfunc, rvalue(idtree(retv)));
+ return;
+ }
+ if (events.returns)
+ {
+ Symbol t1 = genident(AUTO, p->type, level);
+ addlocal(t1);
+ walk(asgn(t1, p), 0, 0);
+ apply(events.returns, cfunc, idtree(t1));
+ p = idtree(t1);
+ }
+ if (!isfloat(p->type))
+ p = cast(p, promote(p->type));
+ if (isptr(p->type))
+ {
+ Symbol q = localaddr(p);
+ if (q && (q->computed || q->generated))
+ warning("pointer to a %s is an illegal return value\n",
+ q->scope == PARAM ? "parameter" : "local");
+ else if (q)
+ warning("pointer to %s `%s' is an illegal return value\n",
+ q->scope == PARAM ? "parameter" : "local", q->name);
+ }
+ walk(tree(mkop(RET,p->type), p->type, p, NULL), 0, 0);
+}
+void definelab(int lab) {
+ Code cp;
+ Symbol p = findlabel(lab);
+
+ assert(lab);
+ walk(NULL, 0, 0);
+ code(Label)->u.forest = newnode(LABEL+V, NULL, NULL, p);
+ for (cp = codelist->prev; cp->kind <= Label; )
+ cp = cp->prev;
+ while ( cp->kind == Jump
+ && cp->u.forest->kids[0]
+ && specific(cp->u.forest->kids[0]->op) == ADDRG+P
+ && cp->u.forest->kids[0]->syms[0] == p) {
+ assert(cp->u.forest->kids[0]->syms[0]->u.l.label == lab);
+ p->ref--;
+ assert(cp->next);
+ assert(cp->prev);
+ cp->prev->next = cp->next;
+ cp->next->prev = cp->prev;
+ cp = cp->prev;
+ while (cp->kind <= Label)
+ cp = cp->prev;
+ }
+}
+Node jump(int lab) {
+ Symbol p = findlabel(lab);
+
+ p->ref++;
+ return newnode(JUMP+V, newnode(ADDRG+ttob(voidptype), NULL, NULL, p),
+ NULL, NULL);
+}
+void branch(int lab) {
+ Code cp;
+ Symbol p = findlabel(lab);
+
+ assert(lab);
+ walk(NULL, 0, 0);
+ code(Label)->u.forest = jump(lab);
+ for (cp = codelist->prev; cp->kind < Label; )
+ cp = cp->prev;
+ while ( cp->kind == Label
+ && cp->u.forest->op == LABEL+V
+ && !equal(cp->u.forest->syms[0], p)) {
+ equatelab(cp->u.forest->syms[0], p);
+ assert(cp->next);
+ assert(cp->prev);
+ cp->prev->next = cp->next;
+ cp->next->prev = cp->prev;
+ cp = cp->prev;
+ while (cp->kind < Label)
+ cp = cp->prev;
+ }
+ if (cp->kind == Jump || cp->kind == Switch) {
+ p->ref--;
+ codelist->prev->next = NULL;
+ codelist = codelist->prev;
+ } else {
+ codelist->kind = Jump;
+ if (cp->kind == Label
+ && cp->u.forest->op == LABEL+V
+ && equal(cp->u.forest->syms[0], p))
+ warning("source code specifies an infinite loop");
+ }
+}
+void equatelab(Symbol old, Symbol new) {
+ assert(old->u.l.equatedto == NULL);
+ old->u.l.equatedto = new;
+ new->ref++;
+}
+static int equal(Symbol lprime, Symbol dst) {
+ assert(dst && lprime);
+ for ( ; dst; dst = dst->u.l.equatedto)
+ if (lprime == dst)
+ return 1;
+ return 0;
+}
+/* dostmt - do statement while ( expression ) */
+static void dostmt(int lab, Swtch swp, int lev) {
+ refinc *= 10.0;
+ t = gettok();
+ definelab(lab);
+ statement(lab, swp, lev);
+ definelab(lab + 1);
+ expect(WHILE);
+ expect('(');
+ definept(NULL);
+ walk(conditional(')'), lab, 0);
+ if (findlabel(lab + 2)->ref)
+ definelab(lab + 2);
+}
+
+/* foldcond - check if initial test in for(e1;e2;e3) S is necessary */
+static int foldcond(Tree e1, Tree e2) {
+ int op = generic(e2->op);
+ Symbol v;
+
+ if (e1 == 0 || e2 == 0)
+ return 0;
+ if (generic(e1->op) == ASGN && isaddrop(e1->kids[0]->op)
+ && generic(e1->kids[1]->op) == CNST) {
+ v = e1->kids[0]->u.sym;
+ e1 = e1->kids[1];
+ } else
+ return 0;
+ if ((op==LE || op==LT || op==EQ || op==NE || op==GT || op==GE)
+ && generic(e2->kids[0]->op) == INDIR
+ && e2->kids[0]->kids[0]->u.sym == v
+ && e2->kids[1]->op == e1->op) {
+ e1 = simplify(op, e2->type, e1, e2->kids[1]);
+ if (e1->op == CNST+I)
+ return e1->u.v.i;
+ }
+ return 0;
+}
+
+/* localaddr - returns q if p yields the address of local/parameter q; otherwise returns 0 */
+static Symbol localaddr(Tree p) {
+ if (p == NULL)
+ return NULL;
+ switch (generic(p->op)) {
+ case INDIR: case CALL: case ARG:
+ return NULL;
+ case ADDRL: case ADDRF:
+ return p->u.sym;
+ case RIGHT: case ASGN:
+ if (p->kids[1])
+ return localaddr(p->kids[1]);
+ return localaddr(p->kids[0]);
+ case COND: {
+ Symbol q;
+ assert(p->kids[1] && p->kids[1]->op == RIGHT);
+ if ((q = localaddr(p->kids[1]->kids[0])) != NULL)
+ return q;
+ return localaddr(p->kids[1]->kids[1]);
+ }
+ default: {
+ Symbol q;
+ if (p->kids[0] && (q = localaddr(p->kids[0])) != NULL)
+ return q;
+ return localaddr(p->kids[1]);
+ }
+ }
+}
+
+/* whilestmt - while ( expression ) statement */
+static void whilestmt(int lab, Swtch swp, int lev) {
+ Coordinate pt;
+ Tree e;
+
+ refinc *= 10.0;
+ t = gettok();
+ expect('(');
+ walk(NULL, 0, 0);
+ pt = src;
+ e = texpr(conditional, ')', FUNC);
+ branch(lab + 1);
+ definelab(lab);
+ statement(lab, swp, lev);
+ definelab(lab + 1);
+ definept(&pt);
+ walk(e, lab, 0);
+ if (findlabel(lab + 2)->ref)
+ definelab(lab + 2);
+}
diff --git a/lcc/src/string.c b/lcc/src/string.c
index 4fee2c9..73cfc85 100755
--- a/lcc/src/string.c
+++ b/lcc/src/string.c
@@ -1,122 +1,122 @@
-#include "c.h"
-
-
-static struct string {
- char *str;
- int len;
- struct string *link;
-} *buckets[1024];
-static int scatter[] = { /* map characters to random values */
- 2078917053, 143302914, 1027100827, 1953210302, 755253631,
- 2002600785, 1405390230, 45248011, 1099951567, 433832350,
- 2018585307, 438263339, 813528929, 1703199216, 618906479,
- 573714703, 766270699, 275680090, 1510320440, 1583583926,
- 1723401032, 1965443329, 1098183682, 1636505764, 980071615,
- 1011597961, 643279273, 1315461275, 157584038, 1069844923,
- 471560540, 89017443, 1213147837, 1498661368, 2042227746,
- 1968401469, 1353778505, 1300134328, 2013649480, 306246424,
- 1733966678, 1884751139, 744509763, 400011959, 1440466707,
- 1363416242, 973726663, 59253759, 1639096332, 336563455,
- 1642837685, 1215013716, 154523136, 593537720, 704035832,
- 1134594751, 1605135681, 1347315106, 302572379, 1762719719,
- 269676381, 774132919, 1851737163, 1482824219, 125310639,
- 1746481261, 1303742040, 1479089144, 899131941, 1169907872,
- 1785335569, 485614972, 907175364, 382361684, 885626931,
- 200158423, 1745777927, 1859353594, 259412182, 1237390611,
- 48433401, 1902249868, 304920680, 202956538, 348303940,
- 1008956512, 1337551289, 1953439621, 208787970, 1640123668,
- 1568675693, 478464352, 266772940, 1272929208, 1961288571,
- 392083579, 871926821, 1117546963, 1871172724, 1771058762,
- 139971187, 1509024645, 109190086, 1047146551, 1891386329,
- 994817018, 1247304975, 1489680608, 706686964, 1506717157,
- 579587572, 755120366, 1261483377, 884508252, 958076904,
- 1609787317, 1893464764, 148144545, 1415743291, 2102252735,
- 1788268214, 836935336, 433233439, 2055041154, 2109864544,
- 247038362, 299641085, 834307717, 1364585325, 23330161,
- 457882831, 1504556512, 1532354806, 567072918, 404219416,
- 1276257488, 1561889936, 1651524391, 618454448, 121093252,
- 1010757900, 1198042020, 876213618, 124757630, 2082550272,
- 1834290522, 1734544947, 1828531389, 1982435068, 1002804590,
- 1783300476, 1623219634, 1839739926, 69050267, 1530777140,
- 1802120822, 316088629, 1830418225, 488944891, 1680673954,
- 1853748387, 946827723, 1037746818, 1238619545, 1513900641,
- 1441966234, 367393385, 928306929, 946006977, 985847834,
- 1049400181, 1956764878, 36406206, 1925613800, 2081522508,
- 2118956479, 1612420674, 1668583807, 1800004220, 1447372094,
- 523904750, 1435821048, 923108080, 216161028, 1504871315,
- 306401572, 2018281851, 1820959944, 2136819798, 359743094,
- 1354150250, 1843084537, 1306570817, 244413420, 934220434,
- 672987810, 1686379655, 1301613820, 1601294739, 484902984,
- 139978006, 503211273, 294184214, 176384212, 281341425,
- 228223074, 147857043, 1893762099, 1896806882, 1947861263,
- 1193650546, 273227984, 1236198663, 2116758626, 489389012,
- 593586330, 275676551, 360187215, 267062626, 265012701,
- 719930310, 1621212876, 2108097238, 2026501127, 1865626297,
- 894834024, 552005290, 1404522304, 48964196, 5816381,
- 1889425288, 188942202, 509027654, 36125855, 365326415,
- 790369079, 264348929, 513183458, 536647531, 13672163,
- 313561074, 1730298077, 286900147, 1549759737, 1699573055,
- 776289160, 2143346068, 1975249606, 1136476375, 262925046,
- 92778659, 1856406685, 1884137923, 53392249, 1735424165,
- 1602280572
-};
-char *string(const char *str) {
- const char *s;
-
- for (s = str; *s; s++)
- ;
- return stringn(str, s - str);
-}
-char *stringd(long n) {
- char str[25], *s = str + sizeof (str);
- unsigned long m;
-
- if (n == LONG_MIN)
- m = (unsigned long)LONG_MAX + 1;
- else if (n < 0)
- m = -n;
- else
- m = n;
- do
- *--s = m%10 + '0';
- while ((m /= 10) != 0);
- if (n < 0)
- *--s = '-';
- return stringn(s, str + sizeof (str) - s);
-}
-char *stringn(const char *str, int len) {
- int i;
- unsigned int h;
- const char *end;
- struct string *p;
-
- assert(str);
- for (h = 0, i = len, end = str; i > 0; i--)
- h = (h<<1) + scatter[*(unsigned char *)end++];
- h &= NELEMS(buckets)-1;
- for (p = buckets[h]; p; p = p->link)
- if (len == p->len) {
- const char *s1 = str;
- char *s2 = p->str;
- do {
- if (s1 == end)
- return p->str;
- } while (*s1++ == *s2++);
- }
- {
- static char *next, *strlimit;
- if (len + 1 >= strlimit - next) {
- int n = len + 4*1024;
- next = allocate(n, PERM);
- strlimit = next + n;
- }
- NEW(p, PERM);
- p->len = len;
- for (p->str = next; str < end; )
- *next++ = *str++;
- *next++ = 0;
- p->link = buckets[h];
- buckets[h] = p;
- return p->str;
- }
-}
+#include "c.h"
+
+
+static struct string {
+ char *str;
+ int len;
+ struct string *link;
+} *buckets[1024];
+static int scatter[] = { /* map characters to random values */
+ 2078917053, 143302914, 1027100827, 1953210302, 755253631,
+ 2002600785, 1405390230, 45248011, 1099951567, 433832350,
+ 2018585307, 438263339, 813528929, 1703199216, 618906479,
+ 573714703, 766270699, 275680090, 1510320440, 1583583926,
+ 1723401032, 1965443329, 1098183682, 1636505764, 980071615,
+ 1011597961, 643279273, 1315461275, 157584038, 1069844923,
+ 471560540, 89017443, 1213147837, 1498661368, 2042227746,
+ 1968401469, 1353778505, 1300134328, 2013649480, 306246424,
+ 1733966678, 1884751139, 744509763, 400011959, 1440466707,
+ 1363416242, 973726663, 59253759, 1639096332, 336563455,
+ 1642837685, 1215013716, 154523136, 593537720, 704035832,
+ 1134594751, 1605135681, 1347315106, 302572379, 1762719719,
+ 269676381, 774132919, 1851737163, 1482824219, 125310639,
+ 1746481261, 1303742040, 1479089144, 899131941, 1169907872,
+ 1785335569, 485614972, 907175364, 382361684, 885626931,
+ 200158423, 1745777927, 1859353594, 259412182, 1237390611,
+ 48433401, 1902249868, 304920680, 202956538, 348303940,
+ 1008956512, 1337551289, 1953439621, 208787970, 1640123668,
+ 1568675693, 478464352, 266772940, 1272929208, 1961288571,
+ 392083579, 871926821, 1117546963, 1871172724, 1771058762,
+ 139971187, 1509024645, 109190086, 1047146551, 1891386329,
+ 994817018, 1247304975, 1489680608, 706686964, 1506717157,
+ 579587572, 755120366, 1261483377, 884508252, 958076904,
+ 1609787317, 1893464764, 148144545, 1415743291, 2102252735,
+ 1788268214, 836935336, 433233439, 2055041154, 2109864544,
+ 247038362, 299641085, 834307717, 1364585325, 23330161,
+ 457882831, 1504556512, 1532354806, 567072918, 404219416,
+ 1276257488, 1561889936, 1651524391, 618454448, 121093252,
+ 1010757900, 1198042020, 876213618, 124757630, 2082550272,
+ 1834290522, 1734544947, 1828531389, 1982435068, 1002804590,
+ 1783300476, 1623219634, 1839739926, 69050267, 1530777140,
+ 1802120822, 316088629, 1830418225, 488944891, 1680673954,
+ 1853748387, 946827723, 1037746818, 1238619545, 1513900641,
+ 1441966234, 367393385, 928306929, 946006977, 985847834,
+ 1049400181, 1956764878, 36406206, 1925613800, 2081522508,
+ 2118956479, 1612420674, 1668583807, 1800004220, 1447372094,
+ 523904750, 1435821048, 923108080, 216161028, 1504871315,
+ 306401572, 2018281851, 1820959944, 2136819798, 359743094,
+ 1354150250, 1843084537, 1306570817, 244413420, 934220434,
+ 672987810, 1686379655, 1301613820, 1601294739, 484902984,
+ 139978006, 503211273, 294184214, 176384212, 281341425,
+ 228223074, 147857043, 1893762099, 1896806882, 1947861263,
+ 1193650546, 273227984, 1236198663, 2116758626, 489389012,
+ 593586330, 275676551, 360187215, 267062626, 265012701,
+ 719930310, 1621212876, 2108097238, 2026501127, 1865626297,
+ 894834024, 552005290, 1404522304, 48964196, 5816381,
+ 1889425288, 188942202, 509027654, 36125855, 365326415,
+ 790369079, 264348929, 513183458, 536647531, 13672163,
+ 313561074, 1730298077, 286900147, 1549759737, 1699573055,
+ 776289160, 2143346068, 1975249606, 1136476375, 262925046,
+ 92778659, 1856406685, 1884137923, 53392249, 1735424165,
+ 1602280572
+};
+char *string(const char *str) {
+ const char *s;
+
+ for (s = str; *s; s++)
+ ;
+ return stringn(str, s - str);
+}
+char *stringd(long n) {
+ char str[25], *s = str + sizeof (str);
+ unsigned long m;
+
+ if (n == LONG_MIN)
+ m = (unsigned long)LONG_MAX + 1;
+ else if (n < 0)
+ m = -n;
+ else
+ m = n;
+ do
+ *--s = m%10 + '0';
+ while ((m /= 10) != 0);
+ if (n < 0)
+ *--s = '-';
+ return stringn(s, str + sizeof (str) - s);
+}
+char *stringn(const char *str, int len) {
+ int i;
+ unsigned int h;
+ const char *end;
+ struct string *p;
+
+ assert(str);
+ for (h = 0, i = len, end = str; i > 0; i--)
+ h = (h<<1) + scatter[*(unsigned char *)end++];
+ h &= NELEMS(buckets)-1;
+ for (p = buckets[h]; p; p = p->link)
+ if (len == p->len) {
+ const char *s1 = str;
+ char *s2 = p->str;
+ do {
+ if (s1 == end)
+ return p->str;
+ } while (*s1++ == *s2++);
+ }
+ {
+ static char *next, *strlimit;
+ if (len + 1 >= strlimit - next) {
+ int n = len + 4*1024;
+ next = allocate(n, PERM);
+ strlimit = next + n;
+ }
+ NEW(p, PERM);
+ p->len = len;
+ for (p->str = next; str < end; )
+ *next++ = *str++;
+ *next++ = 0;
+ p->link = buckets[h];
+ buckets[h] = p;
+ return p->str;
+ }
+}
diff --git a/lcc/src/sym.c b/lcc/src/sym.c
index 1d754d4..723cdd4 100755
--- a/lcc/src/sym.c
+++ b/lcc/src/sym.c
@@ -1,315 +1,315 @@
-#include "c.h"
-#include <stdio.h>
-
-
-#define equalp(x) v.x == p->sym.u.c.v.x
-
-struct table {
- int level;
- Table previous;
- struct entry {
- struct symbol sym;
- struct entry *link;
- } *buckets[256];
- Symbol all;
-};
-#define HASHSIZE NELEMS(((Table)0)->buckets)
-static struct table
- cns = { CONSTANTS },
- ext = { GLOBAL },
- ids = { GLOBAL },
- tys = { GLOBAL };
-Table constants = &cns;
-Table externals = &ext;
-Table identifiers = &ids;
-Table globals = &ids;
-Table types = &tys;
-Table labels;
-int level = GLOBAL;
-static int tempid;
-List loci, symbols;
-
-Table table(Table tp, int level) {
- Table new;
-
- NEW0(new, FUNC);
- new->previous = tp;
- new->level = level;
- if (tp)
- new->all = tp->all;
- return new;
-}
-void foreach(Table tp, int lev, void (*apply)(Symbol, void *), void *cl) {
- assert(tp);
- while (tp && tp->level > lev)
- tp = tp->previous;
- if (tp && tp->level == lev) {
- Symbol p;
- Coordinate sav;
- sav = src;
- for (p = tp->all; p && p->scope == lev; p = p->up) {
- src = p->src;
- (*apply)(p, cl);
- }
- src = sav;
- }
-}
-void enterscope(void) {
- if (++level == LOCAL)
- tempid = 0;
-}
-void exitscope(void) {
- rmtypes(level);
- if (types->level == level)
- types = types->previous;
- if (identifiers->level == level) {
- if (Aflag >= 2) {
- int n = 0;
- Symbol p;
- for (p = identifiers->all; p && p->scope == level; p = p->up)
- if (++n > 127) {
- warning("more than 127 identifiers declared in a block\n");
- break;
- }
- }
- identifiers = identifiers->previous;
- }
- assert(level >= GLOBAL);
- --level;
-}
-Symbol install(const char *name, Table *tpp, int level, int arena) {
- Table tp = *tpp;
- struct entry *p;
- unsigned h = (unsigned long)name&(HASHSIZE-1);
-
- assert(level == 0 || level >= tp->level);
- if (level > 0 && tp->level < level)
- tp = *tpp = table(tp, level);
- NEW0(p, arena);
- p->sym.name = (char *)name;
- p->sym.scope = level;
- p->sym.up = tp->all;
- tp->all = &p->sym;
- p->link = tp->buckets[h];
- tp->buckets[h] = p;
- return &p->sym;
-}
-Symbol relocate(const char *name, Table src, Table dst) {
- struct entry *p, **q;
- Symbol *r;
- unsigned h = (unsigned long)name&(HASHSIZE-1);
-
- for (q = &src->buckets[h]; *q; q = &(*q)->link)
- if (name == (*q)->sym.name)
- break;
- assert(*q);
- /*
- Remove the entry from src's hash chain
- and from its list of all symbols.
- */
- p = *q;
- *q = (*q)->link;
- for (r = &src->all; *r && *r != &p->sym; r = &(*r)->up)
- ;
- assert(*r == &p->sym);
- *r = p->sym.up;
- /*
- Insert the entry into dst's hash chain
- and into its list of all symbols.
- Return the symbol-table entry.
- */
- p->link = dst->buckets[h];
- dst->buckets[h] = p;
- p->sym.up = dst->all;
- dst->all = &p->sym;
- return &p->sym;
-}
-Symbol lookup(const char *name, Table tp) {
- struct entry *p;
- unsigned h = (unsigned long)name&(HASHSIZE-1);
-
- assert(tp);
- do
- for (p = tp->buckets[h]; p; p = p->link)
- if (name == p->sym.name)
- return &p->sym;
- while ((tp = tp->previous) != NULL);
- return NULL;
-}
-int genlabel(int n) {
- static int label = 1;
-
- label += n;
- return label - n;
-}
-Symbol findlabel(int lab) {
- struct entry *p;
- unsigned h = lab&(HASHSIZE-1);
-
- for (p = labels->buckets[h]; p; p = p->link)
- if (lab == p->sym.u.l.label)
- return &p->sym;
- NEW0(p, FUNC);
- p->sym.name = stringd(lab);
- p->sym.scope = LABELS;
- p->sym.up = labels->all;
- labels->all = &p->sym;
- p->link = labels->buckets[h];
- labels->buckets[h] = p;
- p->sym.generated = 1;
- p->sym.u.l.label = lab;
- (*IR->defsymbol)(&p->sym);
- return &p->sym;
-}
-Symbol constant(Type ty, Value v) {
- struct entry *p;
- unsigned h = v.u&(HASHSIZE-1);
-
- ty = unqual(ty);
- for (p = constants->buckets[h]; p; p = p->link)
- if (eqtype(ty, p->sym.type, 1))
- switch (ty->op) {
- case INT: if (equalp(i)) return &p->sym; break;
- case UNSIGNED: if (equalp(u)) return &p->sym; break;
- case FLOAT: if (equalp(d)) return &p->sym; break;
- case FUNCTION: if (equalp(g)) return &p->sym; break;
- case ARRAY:
- case POINTER: if (equalp(p)) return &p->sym; break;
- default: assert(0);
- }
- NEW0(p, PERM);
- p->sym.name = vtoa(ty, v);
- p->sym.scope = CONSTANTS;
- p->sym.type = ty;
- p->sym.sclass = STATIC;
- p->sym.u.c.v = v;
- p->link = constants->buckets[h];
- p->sym.up = constants->all;
- constants->all = &p->sym;
- constants->buckets[h] = p;
- if (ty->u.sym && !ty->u.sym->addressed)
- (*IR->defsymbol)(&p->sym);
- p->sym.defined = 1;
- return &p->sym;
-}
-Symbol intconst(int n) {
- Value v;
-
- v.i = n;
- return constant(inttype, v);
-}
-Symbol genident(int scls, Type ty, int lev) {
- Symbol p;
-
- NEW0(p, lev >= LOCAL ? FUNC : PERM);
- p->name = stringd(genlabel(1));
- p->scope = lev;
- p->sclass = scls;
- p->type = ty;
- p->generated = 1;
- if (lev == GLOBAL)
- (*IR->defsymbol)(p);
- return p;
-}
-
-Symbol temporary(int scls, Type ty) {
- Symbol p;
-
- NEW0(p, FUNC);
- p->name = stringd(++tempid);
- p->scope = level < LOCAL ? LOCAL : level;
- p->sclass = scls;
- p->type = ty;
- p->temporary = 1;
- p->generated = 1;
- return p;
-}
-Symbol newtemp(int sclass, int tc, int size) {
- Symbol p = temporary(sclass, btot(tc, size));
-
- (*IR->local)(p);
- p->defined = 1;
- return p;
-}
-
-Symbol allsymbols(Table tp) {
- return tp->all;
-}
-
-void locus(Table tp, Coordinate *cp) {
- loci = append(cp, loci);
- symbols = append(allsymbols(tp), symbols);
-}
-
-void use(Symbol p, Coordinate src) {
- Coordinate *cp;
-
- NEW(cp, PERM);
- *cp = src;
- p->uses = append(cp, p->uses);
-}
-/* findtype - find type ty in identifiers */
-Symbol findtype(Type ty) {
- Table tp = identifiers;
- int i;
- struct entry *p;
-
- assert(tp);
- do
- for (i = 0; i < HASHSIZE; i++)
- for (p = tp->buckets[i]; p; p = p->link)
- if (p->sym.type == ty && p->sym.sclass == TYPEDEF)
- return &p->sym;
- while ((tp = tp->previous) != NULL);
- return NULL;
-}
-
-/* mkstr - make a string constant */
-Symbol mkstr(char *str) {
- Value v;
- Symbol p;
-
- v.p = str;
- p = constant(array(chartype, strlen(v.p) + 1, 0), v);
- if (p->u.c.loc == NULL)
- p->u.c.loc = genident(STATIC, p->type, GLOBAL);
- return p;
-}
-
-/* mksymbol - make a symbol for name, install in &globals if sclass==EXTERN */
-Symbol mksymbol(int sclass, const char *name, Type ty) {
- Symbol p;
-
- if (sclass == EXTERN)
- p = install(string(name), &globals, GLOBAL, PERM);
- else {
- NEW0(p, PERM);
- p->name = string(name);
- p->scope = GLOBAL;
- }
- p->sclass = sclass;
- p->type = ty;
- (*IR->defsymbol)(p);
- p->defined = 1;
- return p;
-}
-
-/* vtoa - return string for the constant v of type ty */
-char *vtoa(Type ty, Value v) {
- char buf[50];
-
- ty = unqual(ty);
- switch (ty->op) {
- case INT: return stringd(v.i);
- case UNSIGNED: return stringf((v.u&~0x7FFF) ? "0x%X" : "%U", v.u);
- case FLOAT: return stringf("%g", (double)v.d);
- case ARRAY:
- if (ty->type == chartype || ty->type == signedchar
- || ty->type == unsignedchar)
- return v.p;
- return stringf("%p", v.p);
- case POINTER: return stringf("%p", v.p);
- case FUNCTION: return stringf("%p", v.g);
- }
- assert(0); return NULL;
-}
+#include "c.h"
+#include <stdio.h>
+
+
+#define equalp(x) v.x == p->sym.u.c.v.x
+
+struct table {
+ int level;
+ Table previous;
+ struct entry {
+ struct symbol sym;
+ struct entry *link;
+ } *buckets[256];
+ Symbol all;
+};
+#define HASHSIZE NELEMS(((Table)0)->buckets)
+static struct table
+ cns = { CONSTANTS },
+ ext = { GLOBAL },
+ ids = { GLOBAL },
+ tys = { GLOBAL };
+Table constants = &cns;
+Table externals = &ext;
+Table identifiers = &ids;
+Table globals = &ids;
+Table types = &tys;
+Table labels;
+int level = GLOBAL;
+static int tempid;
+List loci, symbols;
+
+Table table(Table tp, int level) {
+ Table new;
+
+ NEW0(new, FUNC);
+ new->previous = tp;
+ new->level = level;
+ if (tp)
+ new->all = tp->all;
+ return new;
+}
+void foreach(Table tp, int lev, void (*apply)(Symbol, void *), void *cl) {
+ assert(tp);
+ while (tp && tp->level > lev)
+ tp = tp->previous;
+ if (tp && tp->level == lev) {
+ Symbol p;
+ Coordinate sav;
+ sav = src;
+ for (p = tp->all; p && p->scope == lev; p = p->up) {
+ src = p->src;
+ (*apply)(p, cl);
+ }
+ src = sav;
+ }
+}
+void enterscope(void) {
+ if (++level == LOCAL)
+ tempid = 0;
+}
+void exitscope(void) {
+ rmtypes(level);
+ if (types->level == level)
+ types = types->previous;
+ if (identifiers->level == level) {
+ if (Aflag >= 2) {
+ int n = 0;
+ Symbol p;
+ for (p = identifiers->all; p && p->scope == level; p = p->up)
+ if (++n > 127) {
+ warning("more than 127 identifiers declared in a block\n");
+ break;
+ }
+ }
+ identifiers = identifiers->previous;
+ }
+ assert(level >= GLOBAL);
+ --level;
+}
+Symbol install(const char *name, Table *tpp, int level, int arena) {
+ Table tp = *tpp;
+ struct entry *p;
+ unsigned h = (unsigned long)name&(HASHSIZE-1);
+
+ assert(level == 0 || level >= tp->level);
+ if (level > 0 && tp->level < level)
+ tp = *tpp = table(tp, level);
+ NEW0(p, arena);
+ p->sym.name = (char *)name;
+ p->sym.scope = level;
+ p->sym.up = tp->all;
+ tp->all = &p->sym;
+ p->link = tp->buckets[h];
+ tp->buckets[h] = p;
+ return &p->sym;
+}
+Symbol relocate(const char *name, Table src, Table dst) {
+ struct entry *p, **q;
+ Symbol *r;
+ unsigned h = (unsigned long)name&(HASHSIZE-1);
+
+ for (q = &src->buckets[h]; *q; q = &(*q)->link)
+ if (name == (*q)->sym.name)
+ break;
+ assert(*q);
+ /*
+ Remove the entry from src's hash chain
+ and from its list of all symbols.
+ */
+ p = *q;
+ *q = (*q)->link;
+ for (r = &src->all; *r && *r != &p->sym; r = &(*r)->up)
+ ;
+ assert(*r == &p->sym);
+ *r = p->sym.up;
+ /*
+ Insert the entry into dst's hash chain
+ and into its list of all symbols.
+ Return the symbol-table entry.
+ */
+ p->link = dst->buckets[h];
+ dst->buckets[h] = p;
+ p->sym.up = dst->all;
+ dst->all = &p->sym;
+ return &p->sym;
+}
+Symbol lookup(const char *name, Table tp) {
+ struct entry *p;
+ unsigned h = (unsigned long)name&(HASHSIZE-1);
+
+ assert(tp);
+ do
+ for (p = tp->buckets[h]; p; p = p->link)
+ if (name == p->sym.name)
+ return &p->sym;
+ while ((tp = tp->previous) != NULL);
+ return NULL;
+}
+int genlabel(int n) {
+ static int label = 1;
+
+ label += n;
+ return label - n;
+}
+Symbol findlabel(int lab) {
+ struct entry *p;
+ unsigned h = lab&(HASHSIZE-1);
+
+ for (p = labels->buckets[h]; p; p = p->link)
+ if (lab == p->sym.u.l.label)
+ return &p->sym;
+ NEW0(p, FUNC);
+ p->sym.name = stringd(lab);
+ p->sym.scope = LABELS;
+ p->sym.up = labels->all;
+ labels->all = &p->sym;
+ p->link = labels->buckets[h];
+ labels->buckets[h] = p;
+ p->sym.generated = 1;
+ p->sym.u.l.label = lab;
+ (*IR->defsymbol)(&p->sym);
+ return &p->sym;
+}
+Symbol constant(Type ty, Value v) {
+ struct entry *p;
+ unsigned h = v.u&(HASHSIZE-1);
+
+ ty = unqual(ty);
+ for (p = constants->buckets[h]; p; p = p->link)
+ if (eqtype(ty, p->sym.type, 1))
+ switch (ty->op) {
+ case INT: if (equalp(i)) return &p->sym; break;
+ case UNSIGNED: if (equalp(u)) return &p->sym; break;
+ case FLOAT: if (equalp(d)) return &p->sym; break;
+ case FUNCTION: if (equalp(g)) return &p->sym; break;
+ case ARRAY:
+ case POINTER: if (equalp(p)) return &p->sym; break;
+ default: assert(0);
+ }
+ NEW0(p, PERM);
+ p->sym.name = vtoa(ty, v);
+ p->sym.scope = CONSTANTS;
+ p->sym.type = ty;
+ p->sym.sclass = STATIC;
+ p->sym.u.c.v = v;
+ p->link = constants->buckets[h];
+ p->sym.up = constants->all;
+ constants->all = &p->sym;
+ constants->buckets[h] = p;
+ if (ty->u.sym && !ty->u.sym->addressed)
+ (*IR->defsymbol)(&p->sym);
+ p->sym.defined = 1;
+ return &p->sym;
+}
+Symbol intconst(int n) {
+ Value v;
+
+ v.i = n;
+ return constant(inttype, v);
+}
+Symbol genident(int scls, Type ty, int lev) {
+ Symbol p;
+
+ NEW0(p, lev >= LOCAL ? FUNC : PERM);
+ p->name = stringd(genlabel(1));
+ p->scope = lev;
+ p->sclass = scls;
+ p->type = ty;
+ p->generated = 1;
+ if (lev == GLOBAL)
+ (*IR->defsymbol)(p);
+ return p;
+}
+
+Symbol temporary(int scls, Type ty) {
+ Symbol p;
+
+ NEW0(p, FUNC);
+ p->name = stringd(++tempid);
+ p->scope = level < LOCAL ? LOCAL : level;
+ p->sclass = scls;
+ p->type = ty;
+ p->temporary = 1;
+ p->generated = 1;
+ return p;
+}
+Symbol newtemp(int sclass, int tc, int size) {
+ Symbol p = temporary(sclass, btot(tc, size));
+
+ (*IR->local)(p);
+ p->defined = 1;
+ return p;
+}
+
+Symbol allsymbols(Table tp) {
+ return tp->all;
+}
+
+void locus(Table tp, Coordinate *cp) {
+ loci = append(cp, loci);
+ symbols = append(allsymbols(tp), symbols);
+}
+
+void use(Symbol p, Coordinate src) {
+ Coordinate *cp;
+
+ NEW(cp, PERM);
+ *cp = src;
+ p->uses = append(cp, p->uses);
+}
+/* findtype - find type ty in identifiers */
+Symbol findtype(Type ty) {
+ Table tp = identifiers;
+ int i;
+ struct entry *p;
+
+ assert(tp);
+ do
+ for (i = 0; i < HASHSIZE; i++)
+ for (p = tp->buckets[i]; p; p = p->link)
+ if (p->sym.type == ty && p->sym.sclass == TYPEDEF)
+ return &p->sym;
+ while ((tp = tp->previous) != NULL);
+ return NULL;
+}
+
+/* mkstr - make a string constant */
+Symbol mkstr(char *str) {
+ Value v;
+ Symbol p;
+
+ v.p = str;
+ p = constant(array(chartype, strlen(v.p) + 1, 0), v);
+ if (p->u.c.loc == NULL)
+ p->u.c.loc = genident(STATIC, p->type, GLOBAL);
+ return p;
+}
+
+/* mksymbol - make a symbol for name, install in &globals if sclass==EXTERN */
+Symbol mksymbol(int sclass, const char *name, Type ty) {
+ Symbol p;
+
+ if (sclass == EXTERN)
+ p = install(string(name), &globals, GLOBAL, PERM);
+ else {
+ NEW0(p, PERM);
+ p->name = string(name);
+ p->scope = GLOBAL;
+ }
+ p->sclass = sclass;
+ p->type = ty;
+ (*IR->defsymbol)(p);
+ p->defined = 1;
+ return p;
+}
+
+/* vtoa - return string for the constant v of type ty */
+char *vtoa(Type ty, Value v) {
+ char buf[50];
+
+ ty = unqual(ty);
+ switch (ty->op) {
+ case INT: return stringd(v.i);
+ case UNSIGNED: return stringf((v.u&~0x7FFF) ? "0x%X" : "%U", v.u);
+ case FLOAT: return stringf("%g", (double)v.d);
+ case ARRAY:
+ if (ty->type == chartype || ty->type == signedchar
+ || ty->type == unsignedchar)
+ return v.p;
+ return stringf("%p", v.p);
+ case POINTER: return stringf("%p", v.p);
+ case FUNCTION: return stringf("%p", v.g);
+ }
+ assert(0); return NULL;
+}
diff --git a/lcc/src/symbolic.c b/lcc/src/symbolic.c
index 35ff55c..dcb613e 100755
--- a/lcc/src/symbolic.c
+++ b/lcc/src/symbolic.c
@@ -1,494 +1,494 @@
-#include <time.h>
-#include <ctype.h>
-#include "c.h"
-
-#define I(f) s_##f
-
-static Node *tail;
-static int off, maxoff, uid = 0, verbose = 0, html = 0;
-
-static const char *yyBEGIN(const char *tag) {
- if (html)
- print("<%s>", tag);
- return tag;
-}
-
-static void yyEND(const char *tag) {
- if (html)
- print("</%s>", tag);
- if (isupper(*tag))
- print("\n");
-}
-
-#define BEGIN(tag) do { const char *yytag=yyBEGIN(#tag);
-#define END yyEND(yytag); } while (0)
-#define ITEM BEGIN(li)
-#define START BEGIN(LI)
-#define ANCHOR(attr,code) do { const char *yytag="a"; if (html) { printf("<a " #attr "=\""); code; print("\">"); }
-#define NEWLINE print(html ? "<br>\n" : "\n")
-
-static void emitCoord(Coordinate src) {
- if (src.file && *src.file) {
- ANCHOR(href,print("%s", src.file)); print("%s", src.file); END;
- print(":");
- }
- print("%d.%d", src.y, src.x);
-}
-
-static void emitString(int len, const char *s) {
- for ( ; len-- > 0; s++)
- if (*s == '&' && html)
- print("&amp;");
- else if (*s == '<' && html)
- print("&lt;");
- else if (*s == '>' && html)
- print("&lt;");
- else if (*s == '"' || *s == '\\')
- print("\\%c", *s);
- else if (*s >= ' ' && *s < 0177)
- print("%c", *s);
- else
- print("\\%d%d%d", (*s>>6)&3, (*s>>3)&7, *s&7);
-}
-
-static void emitSymRef(Symbol p) {
- (*IR->defsymbol)(p);
- ANCHOR(href,print("#%s", p->x.name)); BEGIN(code); print("%s", p->name); END; END;
-}
-
-static void emitSymbol(Symbol p) {
- (*IR->defsymbol)(p);
- ANCHOR(name,print("%s", p->x.name)); BEGIN(code); print("%s", p->name); END; END;
- BEGIN(ul);
-#define xx(field,code) ITEM; if (!html) print(" "); print(#field "="); code; END
- if (verbose && (src.y || src.x))
- xx(src,emitCoord(p->src));
- xx(type,print("%t", p->type));
- xx(sclass,print("%k", p->sclass));
- switch (p->scope) {
- case CONSTANTS: xx(scope,print("CONSTANTS")); break;
- case LABELS: xx(scope,print("LABELS")); break;
- case GLOBAL: xx(scope,print("GLOBAL")); break;
- case PARAM: xx(scope,print("PARAM")); break;
- case LOCAL: xx(scope,print("LOCAL")); break;
- default:
- if (p->scope > LOCAL)
- xx(scope,print("LOCAL+%d", p->scope-LOCAL));
- else
- xx(scope,print("%d", p->scope));
- }
- if (p->scope >= PARAM && p->sclass != STATIC)
- xx(offset,print("%d", p->x.offset));
- xx(ref,print("%f", p->ref));
- if (p->temporary && p->u.t.cse)
- xx(u.t.cse,print("%p", p->u.t.cse));
- END;
-#undef xx
-}
-
-/* address - initialize q for addressing expression p+n */
-static void I(address)(Symbol q, Symbol p, long n) {
- q->name = stringf("%s%s%D", p->name, n > 0 ? "+" : "", n);
- (*IR->defsymbol)(q);
- START; print("address "); emitSymbol(q); END;
-}
-
-/* blockbeg - start a block */
-static void I(blockbeg)(Env *e) {
- e->offset = off;
- START; print("blockbeg off=%d", off); END;
-}
-
-/* blockend - start a block */
-static void I(blockend)(Env *e) {
- if (off > maxoff)
- maxoff = off;
- START; print("blockend off=%d", off); END;
- off = e->offset;
-}
-
-/* defaddress - initialize an address */
-static void I(defaddress)(Symbol p){
- START; print("defaddress "); emitSymRef(p); END;
-}
-
-/* defconst - define a constant */
-static void I(defconst)(int suffix, int size, Value v) {
- START;
- print("defconst ");
- switch (suffix) {
- case I:
- print("int.%d ", size);
- BEGIN(code);
- if (size > sizeof (int))
- print("%D", v.i);
- else
- print("%d", (int)v.i);
- END;
- break;
- case U:
- print("unsigned.%d ", size);
- BEGIN(code);
- if (size > sizeof (unsigned))
- print("%U", v.u);
- else
- print("%u", (unsigned)v.u);
- END;
- break;
- case P: print("void*.%d ", size); BEGIN(code); print("%p", v.p); END; break;
- case F: print("float.%d ", size); BEGIN(code); print("%g", (double)v.d); END; break;
- default: assert(0);
- }
- END;
-}
-
-/* defstring - emit a string constant */
-static void I(defstring)(int len, char *s) {
- START; print("defstring ");
- BEGIN(code); print("\""); emitString(len, s); print("\""); END;
- END;
-}
-
-/* defsymbol - define a symbol: initialize p->x */
-static void I(defsymbol)(Symbol p) {
- if (p->x.name == NULL)
- p->x.name = stringd(++uid);
-}
-
-/* emit - emit the dags on list p */
-static void I(emit)(Node p){
- ITEM;
- if (!html)
- print(" ");
- for (; p; p = p->x.next) {
- if (p->op == LABEL+V) {
- assert(p->syms[0]);
- ANCHOR(name,print("%s", p->syms[0]->x.name));
- BEGIN(code); print("%s", p->syms[0]->name); END;
- END;
- print(":");
- } else {
- int i;
- if (p->x.listed) {
- BEGIN(strong); print("%d", p->x.inst); END; print("'");
- print(" %s", opname(p->op));
- } else
- print("%d. %s", p->x.inst, opname(p->op));
- if (p->count > 1)
- print(" count=%d", p->count);
- for (i = 0; i < NELEMS(p->kids) && p->kids[i]; i++)
- print(" #%d", p->kids[i]->x.inst);
- if (generic(p->op) == CALL && p->syms[0] && p->syms[0]->type)
- print(" {%t}", p->syms[0]->type);
- else
- for (i = 0; i < NELEMS(p->syms) && p->syms[i]; i++) {
- print(" ");
- if (p->syms[i]->scope == CONSTANTS)
- print(p->syms[i]->name);
- else
- emitSymRef(p->syms[i]);
- }
- }
- NEWLINE;
- }
- END;
-}
-
-/* export - announce p as exported */
-static void I(export)(Symbol p) {
- START; print("export "); emitSymRef(p); END;
-}
-
-/* function - generate code for a function */
-static void I(function)(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
- int i;
-
- (*IR->defsymbol)(f);
- off = 0;
- for (i = 0; caller[i] && callee[i]; i++) {
- off = roundup(off, caller[i]->type->align);
- caller[i]->x.offset = callee[i]->x.offset = off;
- off += caller[i]->type->size;
- }
- if (!html) {
- print("function ");
- emitSymbol(f);
- print(" ncalls=%d\n", ncalls);
- for (i = 0; caller[i]; i++)
- START; print("caller "); emitSymbol(caller[i]); END;
- for (i = 0; callee[i]; i++)
- START; print("callee "); emitSymbol(callee[i]); END;
- } else {
- START;
- print("function");
- BEGIN(UL);
-#define xx(field,code) ITEM; print(#field "="); code; END
- xx(f,emitSymbol(f));
- xx(ncalls,print("%d", ncalls));
- if (caller[0]) {
- ITEM; print("caller"); BEGIN(OL);
- for (i = 0; caller[i]; i++)
- ITEM; emitSymbol(caller[i]); END;
- END; END;
- ITEM; print("callee"); BEGIN(OL);
- for (i = 0; callee[i]; i++)
- ITEM; emitSymbol(callee[i]); END;
- END; END;
- } else {
- xx(caller,BEGIN(em); print("empty"); END);
- xx(callee,BEGIN(em); print("empty"); END);
- }
- END;
- END;
- }
- maxoff = off = 0;
- gencode(caller, callee);
- if (html)
- START; print("emitcode"); BEGIN(ul); emitcode(); END; END;
- else
- emitcode();
- START; print("maxoff=%d", maxoff); END;
-#undef xx
-}
-
-/* visit - generate code for *p */
-static int visit(Node p, int n) {
- if (p && p->x.inst == 0) {
- p->x.inst = ++n;
- n = visit(p->kids[0], n);
- n = visit(p->kids[1], n);
- *tail = p;
- tail = &p->x.next;
- }
- return n;
-}
-
-/* gen0 - generate code for the dags on list p */
-static Node I(gen)(Node p) {
- int n;
- Node nodelist;
-
- tail = &nodelist;
- for (n = 0; p; p = p->link) {
- switch (generic(p->op)) { /* check for valid forest */
- case CALL:
- assert(IR->wants_dag || p->count == 0);
- break;
- case ARG:
- case ASGN: case JUMP: case LABEL: case RET:
- case EQ: case GE: case GT: case LE: case LT: case NE:
- assert(p->count == 0);
- break;
- case INDIR:
- assert(IR->wants_dag && p->count > 0);
- break;
- default:
- assert(0);
- }
- check(p);
- p->x.listed = 1;
- n = visit(p, n);
- }
- *tail = 0;
- return nodelist;
-}
-
-/* global - announce a global */
-static void I(global)(Symbol p) {
- START; print("global "); emitSymbol(p); END;
-}
-
-/* import - import a symbol */
-static void I(import)(Symbol p) {
- START; print("import "); emitSymRef(p); END;
-}
-
-/* local - local variable */
-static void I(local)(Symbol p) {
- if (p->temporary)
- p->name = stringf("t%s", p->name);
- (*IR->defsymbol)(p);
- off = roundup(off, p->type->align);
- p->x.offset = off;
- off += p->type->size;
- START; print(p->temporary ? "temporary " : "local "); emitSymbol(p); END;
-}
-
-/* progbeg - beginning of program */
-static void I(progbeg)(int argc, char *argv[]) {
- int i;
-
- for (i = 1; i < argc; i++)
- if (strcmp(argv[i], "-v") == 0)
- verbose++;
- else if (strcmp(argv[i], "-html") == 0)
- html++;
- if (html) {
- print("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2 Final//EN\">\n");
- print("<html>");
- BEGIN(head);
- if (firstfile && *firstfile)
- BEGIN(title); emitString(strlen(firstfile), firstfile); END;
- print("<link rev=made href=\"mailto:drh@microsoft.com\">\n");
- END;
- print("<body>\n");
- if (firstfile && *firstfile)
- BEGIN(h1); emitString(strlen(firstfile), firstfile); END;
- BEGIN(P); BEGIN(em);
- print("Links lead from uses of identifiers and labels to their definitions.");
- END; END;
- print("<ul>\n");
- START;
- print("progbeg");
- BEGIN(ol);
- for (i = 1; i < argc; i++) {
- ITEM;
- BEGIN(code); print("\""); emitString(strlen(argv[i]), argv[i]); print("\""); END;
- END;
- }
- END;
- END;
- }
-}
-
-/* progend - end of program */
-static void I(progend)(void) {
- START; print("progend"); END;
- if (html) {
- time_t t;
- print("</ul>\n");
- time(&t);
- print("<hr><address>%s</address>\n", ctime(&t));
- print("</body></html>\n");
- }
-}
-
-/* segment - switch to segment s */
-static void I(segment)(int s) {
- START; print("segment %s", &"text\0bss\0.data\0lit\0.sym\0."[5*s-5]); END;
-}
-
-/* space - initialize n bytes of space */
-static void I(space)(int n) {
- START; print("space %d", n); END;
-}
-
-static void I(stabblock)(int brace, int lev, Symbol *p) {}
-
-/* stabend - finalize stab output */
-static void I(stabend)(Coordinate *cp, Symbol p, Coordinate **cpp, Symbol *sp, Symbol *stab) {
- int i;
-
- if (p)
- emitSymRef(p);
- print("\n");
- if (cpp && sp)
- for (i = 0; cpp[i] && sp[i]; i++) {
- print("%w.%d: ", cpp[i], cpp[i]->x);
- emitSymRef(sp[i]);
- print("\n");
- }
-}
-
-static void I(stabfend)(Symbol p, int lineno) {}
-static void I(stabinit)(char *file, int argc, char *argv[]) {}
-
-/* stabline - emit line number information for source coordinate *cp */
-static void I(stabline)(Coordinate *cp) {
- if (cp->file)
- print("%s:", cp->file);
- print("%d.%d:\n", cp->y, cp->x);
-}
-
-static void I(stabsym)(Symbol p) {}
-static void I(stabtype)(Symbol p) {}
-
-Interface symbolicIR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 4, 4, 0, /* long */
- 4, 4, 0, /* long long */
- 4, 4, 1, /* float */
- 8, 8, 1, /* double */
- 8, 8, 1, /* long double */
- 4, 4, 0, /* T* */
- 0, 4, 0, /* struct */
- 0, /* little_endian */
- 0, /* mulops_calls */
- 0, /* wants_callb */
- 1, /* wants_argb */
- 1, /* left_to_right */
- 1, /* wants_dag */
- 0, /* unsigned_char */
- I(address),
- I(blockbeg),
- I(blockend),
- I(defaddress),
- I(defconst),
- I(defstring),
- I(defsymbol),
- I(emit),
- I(export),
- I(function),
- I(gen),
- I(global),
- I(import),
- I(local),
- I(progbeg),
- I(progend),
- I(segment),
- I(space),
- I(stabblock),
- I(stabend),
- I(stabfend),
- I(stabinit),
- I(stabline),
- I(stabsym),
- I(stabtype)
-};
-
-Interface symbolic64IR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 8, 8, 0, /* long */
- 8, 8, 0, /* long long */
- 4, 4, 1, /* float */
- 8, 8, 1, /* double */
- 8, 8, 1, /* long double */
- 8, 8, 0, /* T* */
- 0, 1, 0, /* struct */
- 1, /* little_endian */
- 0, /* mulops_calls */
- 0, /* wants_callb */
- 1, /* wants_argb */
- 1, /* left_to_right */
- 1, /* wants_dag */
- 0, /* unsigned_char */
- I(address),
- I(blockbeg),
- I(blockend),
- I(defaddress),
- I(defconst),
- I(defstring),
- I(defsymbol),
- I(emit),
- I(export),
- I(function),
- I(gen),
- I(global),
- I(import),
- I(local),
- I(progbeg),
- I(progend),
- I(segment),
- I(space),
- I(stabblock),
- I(stabend),
- I(stabfend),
- I(stabinit),
- I(stabline),
- I(stabsym),
- I(stabtype)
-};
+#include <time.h>
+#include <ctype.h>
+#include "c.h"
+
+#define I(f) s_##f
+
+static Node *tail;
+static int off, maxoff, uid = 0, verbose = 0, html = 0;
+
+static const char *yyBEGIN(const char *tag) {
+ if (html)
+ print("<%s>", tag);
+ return tag;
+}
+
+static void yyEND(const char *tag) {
+ if (html)
+ print("</%s>", tag);
+ if (isupper(*tag))
+ print("\n");
+}
+
+#define BEGIN(tag) do { const char *yytag=yyBEGIN(#tag);
+#define END yyEND(yytag); } while (0)
+#define ITEM BEGIN(li)
+#define START BEGIN(LI)
+#define ANCHOR(attr,code) do { const char *yytag="a"; if (html) { printf("<a " #attr "=\""); code; print("\">"); }
+#define NEWLINE print(html ? "<br>\n" : "\n")
+
+static void emitCoord(Coordinate src) {
+ if (src.file && *src.file) {
+ ANCHOR(href,print("%s", src.file)); print("%s", src.file); END;
+ print(":");
+ }
+ print("%d.%d", src.y, src.x);
+}
+
+static void emitString(int len, const char *s) {
+ for ( ; len-- > 0; s++)
+ if (*s == '&' && html)
+ print("&amp;");
+ else if (*s == '<' && html)
+ print("&lt;");
+ else if (*s == '>' && html)
+ print("&lt;");
+ else if (*s == '"' || *s == '\\')
+ print("\\%c", *s);
+ else if (*s >= ' ' && *s < 0177)
+ print("%c", *s);
+ else
+ print("\\%d%d%d", (*s>>6)&3, (*s>>3)&7, *s&7);
+}
+
+static void emitSymRef(Symbol p) {
+ (*IR->defsymbol)(p);
+ ANCHOR(href,print("#%s", p->x.name)); BEGIN(code); print("%s", p->name); END; END;
+}
+
+static void emitSymbol(Symbol p) {
+ (*IR->defsymbol)(p);
+ ANCHOR(name,print("%s", p->x.name)); BEGIN(code); print("%s", p->name); END; END;
+ BEGIN(ul);
+#define xx(field,code) ITEM; if (!html) print(" "); print(#field "="); code; END
+ if (verbose && (src.y || src.x))
+ xx(src,emitCoord(p->src));
+ xx(type,print("%t", p->type));
+ xx(sclass,print("%k", p->sclass));
+ switch (p->scope) {
+ case CONSTANTS: xx(scope,print("CONSTANTS")); break;
+ case LABELS: xx(scope,print("LABELS")); break;
+ case GLOBAL: xx(scope,print("GLOBAL")); break;
+ case PARAM: xx(scope,print("PARAM")); break;
+ case LOCAL: xx(scope,print("LOCAL")); break;
+ default:
+ if (p->scope > LOCAL)
+ xx(scope,print("LOCAL+%d", p->scope-LOCAL));
+ else
+ xx(scope,print("%d", p->scope));
+ }
+ if (p->scope >= PARAM && p->sclass != STATIC)
+ xx(offset,print("%d", p->x.offset));
+ xx(ref,print("%f", p->ref));
+ if (p->temporary && p->u.t.cse)
+ xx(u.t.cse,print("%p", p->u.t.cse));
+ END;
+#undef xx
+}
+
+/* address - initialize q for addressing expression p+n */
+static void I(address)(Symbol q, Symbol p, long n) {
+ q->name = stringf("%s%s%D", p->name, n > 0 ? "+" : "", n);
+ (*IR->defsymbol)(q);
+ START; print("address "); emitSymbol(q); END;
+}
+
+/* blockbeg - start a block */
+static void I(blockbeg)(Env *e) {
+ e->offset = off;
+ START; print("blockbeg off=%d", off); END;
+}
+
+/* blockend - start a block */
+static void I(blockend)(Env *e) {
+ if (off > maxoff)
+ maxoff = off;
+ START; print("blockend off=%d", off); END;
+ off = e->offset;
+}
+
+/* defaddress - initialize an address */
+static void I(defaddress)(Symbol p){
+ START; print("defaddress "); emitSymRef(p); END;
+}
+
+/* defconst - define a constant */
+static void I(defconst)(int suffix, int size, Value v) {
+ START;
+ print("defconst ");
+ switch (suffix) {
+ case I:
+ print("int.%d ", size);
+ BEGIN(code);
+ if (size > sizeof (int))
+ print("%D", v.i);
+ else
+ print("%d", (int)v.i);
+ END;
+ break;
+ case U:
+ print("unsigned.%d ", size);
+ BEGIN(code);
+ if (size > sizeof (unsigned))
+ print("%U", v.u);
+ else
+ print("%u", (unsigned)v.u);
+ END;
+ break;
+ case P: print("void*.%d ", size); BEGIN(code); print("%p", v.p); END; break;
+ case F: print("float.%d ", size); BEGIN(code); print("%g", (double)v.d); END; break;
+ default: assert(0);
+ }
+ END;
+}
+
+/* defstring - emit a string constant */
+static void I(defstring)(int len, char *s) {
+ START; print("defstring ");
+ BEGIN(code); print("\""); emitString(len, s); print("\""); END;
+ END;
+}
+
+/* defsymbol - define a symbol: initialize p->x */
+static void I(defsymbol)(Symbol p) {
+ if (p->x.name == NULL)
+ p->x.name = stringd(++uid);
+}
+
+/* emit - emit the dags on list p */
+static void I(emit)(Node p){
+ ITEM;
+ if (!html)
+ print(" ");
+ for (; p; p = p->x.next) {
+ if (p->op == LABEL+V) {
+ assert(p->syms[0]);
+ ANCHOR(name,print("%s", p->syms[0]->x.name));
+ BEGIN(code); print("%s", p->syms[0]->name); END;
+ END;
+ print(":");
+ } else {
+ int i;
+ if (p->x.listed) {
+ BEGIN(strong); print("%d", p->x.inst); END; print("'");
+ print(" %s", opname(p->op));
+ } else
+ print("%d. %s", p->x.inst, opname(p->op));
+ if (p->count > 1)
+ print(" count=%d", p->count);
+ for (i = 0; i < NELEMS(p->kids) && p->kids[i]; i++)
+ print(" #%d", p->kids[i]->x.inst);
+ if (generic(p->op) == CALL && p->syms[0] && p->syms[0]->type)
+ print(" {%t}", p->syms[0]->type);
+ else
+ for (i = 0; i < NELEMS(p->syms) && p->syms[i]; i++) {
+ print(" ");
+ if (p->syms[i]->scope == CONSTANTS)
+ print(p->syms[i]->name);
+ else
+ emitSymRef(p->syms[i]);
+ }
+ }
+ NEWLINE;
+ }
+ END;
+}
+
+/* export - announce p as exported */
+static void I(export)(Symbol p) {
+ START; print("export "); emitSymRef(p); END;
+}
+
+/* function - generate code for a function */
+static void I(function)(Symbol f, Symbol caller[], Symbol callee[], int ncalls) {
+ int i;
+
+ (*IR->defsymbol)(f);
+ off = 0;
+ for (i = 0; caller[i] && callee[i]; i++) {
+ off = roundup(off, caller[i]->type->align);
+ caller[i]->x.offset = callee[i]->x.offset = off;
+ off += caller[i]->type->size;
+ }
+ if (!html) {
+ print("function ");
+ emitSymbol(f);
+ print(" ncalls=%d\n", ncalls);
+ for (i = 0; caller[i]; i++)
+ START; print("caller "); emitSymbol(caller[i]); END;
+ for (i = 0; callee[i]; i++)
+ START; print("callee "); emitSymbol(callee[i]); END;
+ } else {
+ START;
+ print("function");
+ BEGIN(UL);
+#define xx(field,code) ITEM; print(#field "="); code; END
+ xx(f,emitSymbol(f));
+ xx(ncalls,print("%d", ncalls));
+ if (caller[0]) {
+ ITEM; print("caller"); BEGIN(OL);
+ for (i = 0; caller[i]; i++)
+ ITEM; emitSymbol(caller[i]); END;
+ END; END;
+ ITEM; print("callee"); BEGIN(OL);
+ for (i = 0; callee[i]; i++)
+ ITEM; emitSymbol(callee[i]); END;
+ END; END;
+ } else {
+ xx(caller,BEGIN(em); print("empty"); END);
+ xx(callee,BEGIN(em); print("empty"); END);
+ }
+ END;
+ END;
+ }
+ maxoff = off = 0;
+ gencode(caller, callee);
+ if (html)
+ START; print("emitcode"); BEGIN(ul); emitcode(); END; END;
+ else
+ emitcode();
+ START; print("maxoff=%d", maxoff); END;
+#undef xx
+}
+
+/* visit - generate code for *p */
+static int visit(Node p, int n) {
+ if (p && p->x.inst == 0) {
+ p->x.inst = ++n;
+ n = visit(p->kids[0], n);
+ n = visit(p->kids[1], n);
+ *tail = p;
+ tail = &p->x.next;
+ }
+ return n;
+}
+
+/* gen0 - generate code for the dags on list p */
+static Node I(gen)(Node p) {
+ int n;
+ Node nodelist;
+
+ tail = &nodelist;
+ for (n = 0; p; p = p->link) {
+ switch (generic(p->op)) { /* check for valid forest */
+ case CALL:
+ assert(IR->wants_dag || p->count == 0);
+ break;
+ case ARG:
+ case ASGN: case JUMP: case LABEL: case RET:
+ case EQ: case GE: case GT: case LE: case LT: case NE:
+ assert(p->count == 0);
+ break;
+ case INDIR:
+ assert(IR->wants_dag && p->count > 0);
+ break;
+ default:
+ assert(0);
+ }
+ check(p);
+ p->x.listed = 1;
+ n = visit(p, n);
+ }
+ *tail = 0;
+ return nodelist;
+}
+
+/* global - announce a global */
+static void I(global)(Symbol p) {
+ START; print("global "); emitSymbol(p); END;
+}
+
+/* import - import a symbol */
+static void I(import)(Symbol p) {
+ START; print("import "); emitSymRef(p); END;
+}
+
+/* local - local variable */
+static void I(local)(Symbol p) {
+ if (p->temporary)
+ p->name = stringf("t%s", p->name);
+ (*IR->defsymbol)(p);
+ off = roundup(off, p->type->align);
+ p->x.offset = off;
+ off += p->type->size;
+ START; print(p->temporary ? "temporary " : "local "); emitSymbol(p); END;
+}
+
+/* progbeg - beginning of program */
+static void I(progbeg)(int argc, char *argv[]) {
+ int i;
+
+ for (i = 1; i < argc; i++)
+ if (strcmp(argv[i], "-v") == 0)
+ verbose++;
+ else if (strcmp(argv[i], "-html") == 0)
+ html++;
+ if (html) {
+ print("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2 Final//EN\">\n");
+ print("<html>");
+ BEGIN(head);
+ if (firstfile && *firstfile)
+ BEGIN(title); emitString(strlen(firstfile), firstfile); END;
+ print("<link rev=made href=\"mailto:drh@microsoft.com\">\n");
+ END;
+ print("<body>\n");
+ if (firstfile && *firstfile)
+ BEGIN(h1); emitString(strlen(firstfile), firstfile); END;
+ BEGIN(P); BEGIN(em);
+ print("Links lead from uses of identifiers and labels to their definitions.");
+ END; END;
+ print("<ul>\n");
+ START;
+ print("progbeg");
+ BEGIN(ol);
+ for (i = 1; i < argc; i++) {
+ ITEM;
+ BEGIN(code); print("\""); emitString(strlen(argv[i]), argv[i]); print("\""); END;
+ END;
+ }
+ END;
+ END;
+ }
+}
+
+/* progend - end of program */
+static void I(progend)(void) {
+ START; print("progend"); END;
+ if (html) {
+ time_t t;
+ print("</ul>\n");
+ time(&t);
+ print("<hr><address>%s</address>\n", ctime(&t));
+ print("</body></html>\n");
+ }
+}
+
+/* segment - switch to segment s */
+static void I(segment)(int s) {
+ START; print("segment %s", &"text\0bss\0.data\0lit\0.sym\0."[5*s-5]); END;
+}
+
+/* space - initialize n bytes of space */
+static void I(space)(int n) {
+ START; print("space %d", n); END;
+}
+
+static void I(stabblock)(int brace, int lev, Symbol *p) {}
+
+/* stabend - finalize stab output */
+static void I(stabend)(Coordinate *cp, Symbol p, Coordinate **cpp, Symbol *sp, Symbol *stab) {
+ int i;
+
+ if (p)
+ emitSymRef(p);
+ print("\n");
+ if (cpp && sp)
+ for (i = 0; cpp[i] && sp[i]; i++) {
+ print("%w.%d: ", cpp[i], cpp[i]->x);
+ emitSymRef(sp[i]);
+ print("\n");
+ }
+}
+
+static void I(stabfend)(Symbol p, int lineno) {}
+static void I(stabinit)(char *file, int argc, char *argv[]) {}
+
+/* stabline - emit line number information for source coordinate *cp */
+static void I(stabline)(Coordinate *cp) {
+ if (cp->file)
+ print("%s:", cp->file);
+ print("%d.%d:\n", cp->y, cp->x);
+}
+
+static void I(stabsym)(Symbol p) {}
+static void I(stabtype)(Symbol p) {}
+
+Interface symbolicIR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 4, 4, 0, /* long */
+ 4, 4, 0, /* long long */
+ 4, 4, 1, /* float */
+ 8, 8, 1, /* double */
+ 8, 8, 1, /* long double */
+ 4, 4, 0, /* T* */
+ 0, 4, 0, /* struct */
+ 0, /* little_endian */
+ 0, /* mulops_calls */
+ 0, /* wants_callb */
+ 1, /* wants_argb */
+ 1, /* left_to_right */
+ 1, /* wants_dag */
+ 0, /* unsigned_char */
+ I(address),
+ I(blockbeg),
+ I(blockend),
+ I(defaddress),
+ I(defconst),
+ I(defstring),
+ I(defsymbol),
+ I(emit),
+ I(export),
+ I(function),
+ I(gen),
+ I(global),
+ I(import),
+ I(local),
+ I(progbeg),
+ I(progend),
+ I(segment),
+ I(space),
+ I(stabblock),
+ I(stabend),
+ I(stabfend),
+ I(stabinit),
+ I(stabline),
+ I(stabsym),
+ I(stabtype)
+};
+
+Interface symbolic64IR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 8, 8, 0, /* long */
+ 8, 8, 0, /* long long */
+ 4, 4, 1, /* float */
+ 8, 8, 1, /* double */
+ 8, 8, 1, /* long double */
+ 8, 8, 0, /* T* */
+ 0, 1, 0, /* struct */
+ 1, /* little_endian */
+ 0, /* mulops_calls */
+ 0, /* wants_callb */
+ 1, /* wants_argb */
+ 1, /* left_to_right */
+ 1, /* wants_dag */
+ 0, /* unsigned_char */
+ I(address),
+ I(blockbeg),
+ I(blockend),
+ I(defaddress),
+ I(defconst),
+ I(defstring),
+ I(defsymbol),
+ I(emit),
+ I(export),
+ I(function),
+ I(gen),
+ I(global),
+ I(import),
+ I(local),
+ I(progbeg),
+ I(progend),
+ I(segment),
+ I(space),
+ I(stabblock),
+ I(stabend),
+ I(stabfend),
+ I(stabinit),
+ I(stabline),
+ I(stabsym),
+ I(stabtype)
+};
diff --git a/lcc/src/token.h b/lcc/src/token.h
index f92bf6a..d309f9b 100755
--- a/lcc/src/token.h
+++ b/lcc/src/token.h
@@ -1,133 +1,133 @@
-/*
-xx(symbol, value, prec, op, optree, kind, string)
-*/
-yy(0, 0, 0, 0, 0, 0, 0)
-xx(FLOAT, 1, 0, 0, 0, CHAR, "float")
-xx(DOUBLE, 2, 0, 0, 0, CHAR, "double")
-xx(CHAR, 3, 0, 0, 0, CHAR, "char")
-xx(SHORT, 4, 0, 0, 0, CHAR, "short")
-xx(INT, 5, 0, 0, 0, CHAR, "int")
-xx(UNSIGNED, 6, 0, 0, 0, CHAR, "unsigned")
-xx(POINTER, 7, 0, 0, 0, 0, "pointer")
-xx(VOID, 8, 0, 0, 0, CHAR, "void")
-xx(STRUCT, 9, 0, 0, 0, CHAR, "struct")
-xx(UNION, 10, 0, 0, 0, CHAR, "union")
-xx(FUNCTION, 11, 0, 0, 0, 0, "function")
-xx(ARRAY, 12, 0, 0, 0, 0, "array")
-xx(ENUM, 13, 0, 0, 0, CHAR, "enum")
-xx(LONG, 14, 0, 0, 0, CHAR, "long")
-xx(CONST, 15, 0, 0, 0, CHAR, "const")
-xx(VOLATILE, 16, 0, 0, 0, CHAR, "volatile")
-yy(0, 17, 0, 0, 0, 0, 0)
-yy(0, 18, 0, 0, 0, 0, 0)
-yy(0, 19, 0, 0, 0, 0, 0)
-yy(0, 20, 0, 0, 0, 0, 0)
-yy(0, 21, 0, 0, 0, 0, 0)
-yy(0, 22, 0, 0, 0, 0, 0)
-yy(0, 23, 0, 0, 0, 0, 0)
-yy(0, 24, 0, 0, 0, 0, 0)
-yy(0, 25, 0, 0, 0, 0, 0)
-yy(0, 26, 0, 0, 0, 0, 0)
-yy(0, 27, 0, 0, 0, 0, 0)
-yy(0, 28, 0, 0, 0, 0, "long long")
-yy(0, 29, 0, 0, 0, 0, 0)
-yy(0, 30, 0, 0, 0, 0, 0)
-yy(0, 31, 0, 0, 0, 0, "const volatile")
-xx(ID, 32, 0, 0, 0, ID, "identifier")
-yy(0, 33, 0, 0, 0, ID, "!")
-xx(FCON, 34, 0, 0, 0, ID, "floating constant")
-xx(ICON, 35, 0, 0, 0, ID, "integer constant")
-xx(SCON, 36, 0, 0, 0, ID, "string constant")
-yy(0, 37, 13, MOD, bittree,'%', "%")
-yy(0, 38, 8, BAND, bittree,ID, "&")
-xx(INCR, 39, 0, ADD, addtree,ID, "++")
-yy(0, 40, 0, 0, 0, ID, "(")
-yy(0, 41, 0, 0, 0, ')', ")")
-yy(0, 42, 13, MUL, multree,ID, "*")
-yy(0, 43, 12, ADD, addtree,ID, "+")
-yy(0, 44, 1, 0, 0, ',', ",")
-yy(0, 45, 12, SUB, subtree,ID, "-")
-yy(0, 46, 0, 0, 0, '.', ".")
-yy(0, 47, 13, DIV, multree,'/', "/")
-xx(DECR, 48, 0, SUB, subtree,ID, "--")
-xx(DEREF, 49, 0, 0, 0, DEREF, "->")
-xx(ANDAND, 50, 5, AND, andtree,ANDAND, "&&")
-xx(OROR, 51, 4, OR, andtree,OROR, "||")
-xx(LEQ, 52, 10, LE, cmptree,LEQ, "<=")
-xx(EQL, 53, 9, EQ, eqtree, EQL, "==")
-xx(NEQ, 54, 9, NE, eqtree, NEQ, "!=")
-xx(GEQ, 55, 10, GE, cmptree,GEQ, ">=")
-xx(RSHIFT, 56, 11, RSH, shtree, RSHIFT, ">>")
-xx(LSHIFT, 57, 11, LSH, shtree, LSHIFT, "<<")
-yy(0, 58, 0, 0, 0, ':', ":")
-yy(0, 59, 0, 0, 0, IF, ";")
-yy(0, 60, 10, LT, cmptree,'<', "<")
-yy(0, 61, 2, ASGN, asgntree,'=', "=")
-yy(0, 62, 10, GT, cmptree,'>', ">")
-yy(0, 63, 0, 0, 0, '?', "?")
-xx(ELLIPSIS, 64, 0, 0, 0, ELLIPSIS,"...")
-xx(SIZEOF, 65, 0, 0, 0, ID, "sizeof")
-yy(0, 66, 0, 0, 0, 0, 0)
-xx(AUTO, 67, 0, 0, 0, STATIC, "auto")
-xx(BREAK, 68, 0, 0, 0, IF, "break")
-xx(CASE, 69, 0, 0, 0, IF, "case")
-xx(CONTINUE, 70, 0, 0, 0, IF, "continue")
-xx(DEFAULT, 71, 0, 0, 0, IF, "default")
-xx(DO, 72, 0, 0, 0, IF, "do")
-xx(ELSE, 73, 0, 0, 0, IF, "else")
-xx(EXTERN, 74, 0, 0, 0, STATIC, "extern")
-xx(FOR, 75, 0, 0, 0, IF, "for")
-xx(GOTO, 76, 0, 0, 0, IF, "goto")
-xx(IF, 77, 0, 0, 0, IF, "if")
-xx(REGISTER, 78, 0, 0, 0, STATIC, "register")
-xx(RETURN, 79, 0, 0, 0, IF, "return")
-xx(SIGNED, 80, 0, 0, 0, CHAR, "signed")
-xx(STATIC, 81, 0, 0, 0, STATIC, "static")
-xx(SWITCH, 82, 0, 0, 0, IF, "switch")
-xx(TYPEDEF, 83, 0, 0, 0, STATIC, "typedef")
-xx(WHILE, 84, 0, 0, 0, IF, "while")
-xx(TYPECODE, 85, 0, 0, 0, ID, "__typecode")
-xx(FIRSTARG, 86, 0, 0, 0, ID, "__firstarg")
-yy(0, 87, 0, 0, 0, 0, 0)
-yy(0, 88, 0, 0, 0, 0, 0)
-yy(0, 89, 0, 0, 0, 0, 0)
-yy(0, 90, 0, 0, 0, 0, 0)
-yy(0, 91, 0, 0, 0, '[', "[")
-yy(0, 92, 0, 0, 0, 0, 0)
-yy(0, 93, 0, 0, 0, ']', "]")
-yy(0, 94, 7, BXOR, bittree,'^', "^")
-yy(0, 95, 0, 0, 0, 0, 0)
-yy(0, 96, 0, 0, 0, 0, 0)
-yy(0, 97, 0, 0, 0, 0, 0)
-yy(0, 98, 0, 0, 0, 0, 0)
-yy(0, 99, 0, 0, 0, 0, 0)
-yy(0, 100, 0, 0, 0, 0, 0)
-yy(0, 101, 0, 0, 0, 0, 0)
-yy(0, 102, 0, 0, 0, 0, 0)
-yy(0, 103, 0, 0, 0, 0, 0)
-yy(0, 104, 0, 0, 0, 0, 0)
-yy(0, 105, 0, 0, 0, 0, 0)
-yy(0, 106, 0, 0, 0, 0, 0)
-yy(0, 107, 0, 0, 0, 0, 0)
-yy(0, 108, 0, 0, 0, 0, 0)
-yy(0, 109, 0, 0, 0, 0, 0)
-yy(0, 110, 0, 0, 0, 0, 0)
-yy(0, 111, 0, 0, 0, 0, 0)
-yy(0, 112, 0, 0, 0, 0, 0)
-yy(0, 113, 0, 0, 0, 0, 0)
-yy(0, 114, 0, 0, 0, 0, 0)
-yy(0, 115, 0, 0, 0, 0, 0)
-yy(0, 116, 0, 0, 0, 0, 0)
-yy(0, 117, 0, 0, 0, 0, 0)
-yy(0, 118, 0, 0, 0, 0, 0)
-yy(0, 119, 0, 0, 0, 0, 0)
-yy(0, 120, 0, 0, 0, 0, 0)
-yy(0, 121, 0, 0, 0, 0, 0)
-yy(0, 122, 0, 0, 0, 0, 0)
-yy(0, 123, 0, 0, 0, IF, "{")
-yy(0, 124, 6, BOR, bittree,'|', "|")
-yy(0, 125, 0, 0, 0, '}', "}")
-yy(0, 126, 0, BCOM, 0, ID, "~")
-xx(EOI, 127, 0, 0, 0, EOI, "end of input")
-#undef xx
-#undef yy
+/*
+xx(symbol, value, prec, op, optree, kind, string)
+*/
+yy(0, 0, 0, 0, 0, 0, 0)
+xx(FLOAT, 1, 0, 0, 0, CHAR, "float")
+xx(DOUBLE, 2, 0, 0, 0, CHAR, "double")
+xx(CHAR, 3, 0, 0, 0, CHAR, "char")
+xx(SHORT, 4, 0, 0, 0, CHAR, "short")
+xx(INT, 5, 0, 0, 0, CHAR, "int")
+xx(UNSIGNED, 6, 0, 0, 0, CHAR, "unsigned")
+xx(POINTER, 7, 0, 0, 0, 0, "pointer")
+xx(VOID, 8, 0, 0, 0, CHAR, "void")
+xx(STRUCT, 9, 0, 0, 0, CHAR, "struct")
+xx(UNION, 10, 0, 0, 0, CHAR, "union")
+xx(FUNCTION, 11, 0, 0, 0, 0, "function")
+xx(ARRAY, 12, 0, 0, 0, 0, "array")
+xx(ENUM, 13, 0, 0, 0, CHAR, "enum")
+xx(LONG, 14, 0, 0, 0, CHAR, "long")
+xx(CONST, 15, 0, 0, 0, CHAR, "const")
+xx(VOLATILE, 16, 0, 0, 0, CHAR, "volatile")
+yy(0, 17, 0, 0, 0, 0, 0)
+yy(0, 18, 0, 0, 0, 0, 0)
+yy(0, 19, 0, 0, 0, 0, 0)
+yy(0, 20, 0, 0, 0, 0, 0)
+yy(0, 21, 0, 0, 0, 0, 0)
+yy(0, 22, 0, 0, 0, 0, 0)
+yy(0, 23, 0, 0, 0, 0, 0)
+yy(0, 24, 0, 0, 0, 0, 0)
+yy(0, 25, 0, 0, 0, 0, 0)
+yy(0, 26, 0, 0, 0, 0, 0)
+yy(0, 27, 0, 0, 0, 0, 0)
+yy(0, 28, 0, 0, 0, 0, "long long")
+yy(0, 29, 0, 0, 0, 0, 0)
+yy(0, 30, 0, 0, 0, 0, 0)
+yy(0, 31, 0, 0, 0, 0, "const volatile")
+xx(ID, 32, 0, 0, 0, ID, "identifier")
+yy(0, 33, 0, 0, 0, ID, "!")
+xx(FCON, 34, 0, 0, 0, ID, "floating constant")
+xx(ICON, 35, 0, 0, 0, ID, "integer constant")
+xx(SCON, 36, 0, 0, 0, ID, "string constant")
+yy(0, 37, 13, MOD, bittree,'%', "%")
+yy(0, 38, 8, BAND, bittree,ID, "&")
+xx(INCR, 39, 0, ADD, addtree,ID, "++")
+yy(0, 40, 0, 0, 0, ID, "(")
+yy(0, 41, 0, 0, 0, ')', ")")
+yy(0, 42, 13, MUL, multree,ID, "*")
+yy(0, 43, 12, ADD, addtree,ID, "+")
+yy(0, 44, 1, 0, 0, ',', ",")
+yy(0, 45, 12, SUB, subtree,ID, "-")
+yy(0, 46, 0, 0, 0, '.', ".")
+yy(0, 47, 13, DIV, multree,'/', "/")
+xx(DECR, 48, 0, SUB, subtree,ID, "--")
+xx(DEREF, 49, 0, 0, 0, DEREF, "->")
+xx(ANDAND, 50, 5, AND, andtree,ANDAND, "&&")
+xx(OROR, 51, 4, OR, andtree,OROR, "||")
+xx(LEQ, 52, 10, LE, cmptree,LEQ, "<=")
+xx(EQL, 53, 9, EQ, eqtree, EQL, "==")
+xx(NEQ, 54, 9, NE, eqtree, NEQ, "!=")
+xx(GEQ, 55, 10, GE, cmptree,GEQ, ">=")
+xx(RSHIFT, 56, 11, RSH, shtree, RSHIFT, ">>")
+xx(LSHIFT, 57, 11, LSH, shtree, LSHIFT, "<<")
+yy(0, 58, 0, 0, 0, ':', ":")
+yy(0, 59, 0, 0, 0, IF, ";")
+yy(0, 60, 10, LT, cmptree,'<', "<")
+yy(0, 61, 2, ASGN, asgntree,'=', "=")
+yy(0, 62, 10, GT, cmptree,'>', ">")
+yy(0, 63, 0, 0, 0, '?', "?")
+xx(ELLIPSIS, 64, 0, 0, 0, ELLIPSIS,"...")
+xx(SIZEOF, 65, 0, 0, 0, ID, "sizeof")
+yy(0, 66, 0, 0, 0, 0, 0)
+xx(AUTO, 67, 0, 0, 0, STATIC, "auto")
+xx(BREAK, 68, 0, 0, 0, IF, "break")
+xx(CASE, 69, 0, 0, 0, IF, "case")
+xx(CONTINUE, 70, 0, 0, 0, IF, "continue")
+xx(DEFAULT, 71, 0, 0, 0, IF, "default")
+xx(DO, 72, 0, 0, 0, IF, "do")
+xx(ELSE, 73, 0, 0, 0, IF, "else")
+xx(EXTERN, 74, 0, 0, 0, STATIC, "extern")
+xx(FOR, 75, 0, 0, 0, IF, "for")
+xx(GOTO, 76, 0, 0, 0, IF, "goto")
+xx(IF, 77, 0, 0, 0, IF, "if")
+xx(REGISTER, 78, 0, 0, 0, STATIC, "register")
+xx(RETURN, 79, 0, 0, 0, IF, "return")
+xx(SIGNED, 80, 0, 0, 0, CHAR, "signed")
+xx(STATIC, 81, 0, 0, 0, STATIC, "static")
+xx(SWITCH, 82, 0, 0, 0, IF, "switch")
+xx(TYPEDEF, 83, 0, 0, 0, STATIC, "typedef")
+xx(WHILE, 84, 0, 0, 0, IF, "while")
+xx(TYPECODE, 85, 0, 0, 0, ID, "__typecode")
+xx(FIRSTARG, 86, 0, 0, 0, ID, "__firstarg")
+yy(0, 87, 0, 0, 0, 0, 0)
+yy(0, 88, 0, 0, 0, 0, 0)
+yy(0, 89, 0, 0, 0, 0, 0)
+yy(0, 90, 0, 0, 0, 0, 0)
+yy(0, 91, 0, 0, 0, '[', "[")
+yy(0, 92, 0, 0, 0, 0, 0)
+yy(0, 93, 0, 0, 0, ']', "]")
+yy(0, 94, 7, BXOR, bittree,'^', "^")
+yy(0, 95, 0, 0, 0, 0, 0)
+yy(0, 96, 0, 0, 0, 0, 0)
+yy(0, 97, 0, 0, 0, 0, 0)
+yy(0, 98, 0, 0, 0, 0, 0)
+yy(0, 99, 0, 0, 0, 0, 0)
+yy(0, 100, 0, 0, 0, 0, 0)
+yy(0, 101, 0, 0, 0, 0, 0)
+yy(0, 102, 0, 0, 0, 0, 0)
+yy(0, 103, 0, 0, 0, 0, 0)
+yy(0, 104, 0, 0, 0, 0, 0)
+yy(0, 105, 0, 0, 0, 0, 0)
+yy(0, 106, 0, 0, 0, 0, 0)
+yy(0, 107, 0, 0, 0, 0, 0)
+yy(0, 108, 0, 0, 0, 0, 0)
+yy(0, 109, 0, 0, 0, 0, 0)
+yy(0, 110, 0, 0, 0, 0, 0)
+yy(0, 111, 0, 0, 0, 0, 0)
+yy(0, 112, 0, 0, 0, 0, 0)
+yy(0, 113, 0, 0, 0, 0, 0)
+yy(0, 114, 0, 0, 0, 0, 0)
+yy(0, 115, 0, 0, 0, 0, 0)
+yy(0, 116, 0, 0, 0, 0, 0)
+yy(0, 117, 0, 0, 0, 0, 0)
+yy(0, 118, 0, 0, 0, 0, 0)
+yy(0, 119, 0, 0, 0, 0, 0)
+yy(0, 120, 0, 0, 0, 0, 0)
+yy(0, 121, 0, 0, 0, 0, 0)
+yy(0, 122, 0, 0, 0, 0, 0)
+yy(0, 123, 0, 0, 0, IF, "{")
+yy(0, 124, 6, BOR, bittree,'|', "|")
+yy(0, 125, 0, 0, 0, '}', "}")
+yy(0, 126, 0, BCOM, 0, ID, "~")
+xx(EOI, 127, 0, 0, 0, EOI, "end of input")
+#undef xx
+#undef yy
diff --git a/lcc/src/trace.c b/lcc/src/trace.c
index 55b18a1..06b627d 100755
--- a/lcc/src/trace.c
+++ b/lcc/src/trace.c
@@ -1,180 +1,180 @@
-#include "c.h"
-
-
-static char *fmt, *fp, *fmtend; /* format string, current & limit pointer */
-static Tree args; /* printf arguments */
-static Symbol frameno; /* local holding frame number */
-
-/* appendstr - append str to the evolving format string, expanding it if necessary */
-static void appendstr(char *str) {
- do
- if (fp == fmtend)
- if (fp) {
- char *s = allocate(2*(fmtend - fmt), FUNC);
- strncpy(s, fmt, fmtend - fmt);
- fp = s + (fmtend - fmt);
- fmtend = s + 2*(fmtend - fmt);
- fmt = s;
- } else {
- fp = fmt = allocate(80, FUNC);
- fmtend = fmt + 80;
- }
- while ((*fp++ = *str++) != 0);
- fp--;
-}
-
-/* tracevalue - append format and argument to print the value of e */
-static void tracevalue(Tree e, int lev) {
- Type ty = unqual(e->type);
-
- switch (ty->op) {
- case INT:
- if (ty == chartype || ty == signedchar)
- appendstr("'\\x%02x'");
- else if (ty == longtype)
- appendstr("0x%ld");
- else
- appendstr("0x%d");
- break;
- case UNSIGNED:
- if (ty == chartype || ty == unsignedchar)
- appendstr("'\\x%02x'");
- else if (ty == unsignedlong)
- appendstr("0x%lx");
- else
- appendstr("0x%x");
- break;
- case FLOAT:
- if (ty == longdouble)
- appendstr("%Lg");
- else
- appendstr("%g");
- break;
- case POINTER:
- if (unqual(ty->type) == chartype
- || unqual(ty->type) == signedchar
- || unqual(ty->type) == unsignedchar) {
- static Symbol null;
- if (null == NULL)
- null = mkstr("(null)");
- tracevalue(cast(e, unsignedtype), lev + 1);
- appendstr(" \"%.30s\"");
- e = condtree(e, e, pointer(idtree(null->u.c.loc)));
- } else {
- appendstr("("); appendstr(typestring(ty, "")); appendstr(")0x%x");
- }
- break;
- case STRUCT: {
- Field q;
- appendstr("("); appendstr(typestring(ty, "")); appendstr("){");
- for (q = ty->u.sym->u.s.flist; q; q = q->link) {
- appendstr(q->name); appendstr("=");
- tracevalue(field(addrof(e), q->name), lev + 1);
- if (q->link)
- appendstr(",");
- }
- appendstr("}");
- return;
- }
- case UNION:
- appendstr("("); appendstr(typestring(ty, "")); appendstr("){...}");
- return;
- case ARRAY:
- if (lev && ty->type->size > 0) {
- int i;
- e = pointer(e);
- appendstr("{");
- for (i = 0; i < ty->size/ty->type->size; i++) {
- Tree p = (*optree['+'])(ADD, e, consttree(i, inttype));
- if (isptr(p->type) && isarray(p->type->type))
- p = retype(p, p->type->type);
- else
- p = rvalue(p);
- if (i)
- appendstr(",");
- tracevalue(p, lev + 1);
- }
- appendstr("}");
- } else
- appendstr(typestring(ty, ""));
- return;
- default:
- assert(0);
- }
- e = cast(e, promote(ty));
- args = tree(mkop(ARG,e->type), e->type, e, args);
-}
-
-/* tracefinis - complete & generate the trace call to print */
-static void tracefinis(Symbol printer) {
- Tree *ap;
- Symbol p;
-
- *fp = 0;
- p = mkstr(string(fmt));
- for (ap = &args; *ap; ap = &(*ap)->kids[1])
- ;
- *ap = tree(ARG+P, charptype, pointer(idtree(p->u.c.loc)), 0);
- walk(calltree(pointer(idtree(printer)), freturn(printer->type), args, NULL), 0, 0);
- args = 0;
- fp = fmtend = 0;
-}
-
-/* tracecall - generate code to trace entry to f */
-static void tracecall(Symbol printer, Symbol f) {
- int i;
- Symbol counter = genident(STATIC, inttype, GLOBAL);
-
- defglobal(counter, BSS);
- (*IR->space)(counter->type->size);
- frameno = genident(AUTO, inttype, level);
- addlocal(frameno);
- appendstr(f->name); appendstr("#");
- tracevalue(asgn(frameno, incr(INCR, idtree(counter), consttree(1, inttype))), 0);
- appendstr("(");
- for (i = 0; f->u.f.callee[i]; i++) {
- if (i)
- appendstr(",");
- appendstr(f->u.f.callee[i]->name); appendstr("=");
- tracevalue(idtree(f->u.f.callee[i]), 0);
- }
- if (variadic(f->type))
- appendstr(",...");
- appendstr(") called\n");
- tracefinis(printer);
-}
-
-/* tracereturn - generate code to trace return e */
-static void tracereturn(Symbol printer, Symbol f, Tree e) {
- appendstr(f->name); appendstr("#");
- tracevalue(idtree(frameno), 0);
- appendstr(" returned");
- if (freturn(f->type) != voidtype && e) {
- appendstr(" ");
- tracevalue(e, 0);
- }
- appendstr("\n");
- tracefinis(printer);
-}
-
-/* trace_init - initialize for tracing */
-void trace_init(int argc, char *argv[]) {
- int i;
- static int inited;
-
- if (inited)
- return;
- inited = 1;
- type_init(argc, argv);
- if (IR)
- for (i = 1; i < argc; i++)
- if (strncmp(argv[i], "-t", 2) == 0 && strchr(argv[i], '=') == NULL) {
- Symbol printer = mksymbol(EXTERN,
- argv[i][2] ? &argv[i][2] : "printf",
- ftype(inttype, ptr(qual(CONST, chartype))));
- printer->defined = 0;
- attach((Apply)tracecall, printer, &events.entry);
- attach((Apply)tracereturn, printer, &events.returns);
- break;
- }
-}
+#include "c.h"
+
+
+static char *fmt, *fp, *fmtend; /* format string, current & limit pointer */
+static Tree args; /* printf arguments */
+static Symbol frameno; /* local holding frame number */
+
+/* appendstr - append str to the evolving format string, expanding it if necessary */
+static void appendstr(char *str) {
+ do
+ if (fp == fmtend)
+ if (fp) {
+ char *s = allocate(2*(fmtend - fmt), FUNC);
+ strncpy(s, fmt, fmtend - fmt);
+ fp = s + (fmtend - fmt);
+ fmtend = s + 2*(fmtend - fmt);
+ fmt = s;
+ } else {
+ fp = fmt = allocate(80, FUNC);
+ fmtend = fmt + 80;
+ }
+ while ((*fp++ = *str++) != 0);
+ fp--;
+}
+
+/* tracevalue - append format and argument to print the value of e */
+static void tracevalue(Tree e, int lev) {
+ Type ty = unqual(e->type);
+
+ switch (ty->op) {
+ case INT:
+ if (ty == chartype || ty == signedchar)
+ appendstr("'\\x%02x'");
+ else if (ty == longtype)
+ appendstr("0x%ld");
+ else
+ appendstr("0x%d");
+ break;
+ case UNSIGNED:
+ if (ty == chartype || ty == unsignedchar)
+ appendstr("'\\x%02x'");
+ else if (ty == unsignedlong)
+ appendstr("0x%lx");
+ else
+ appendstr("0x%x");
+ break;
+ case FLOAT:
+ if (ty == longdouble)
+ appendstr("%Lg");
+ else
+ appendstr("%g");
+ break;
+ case POINTER:
+ if (unqual(ty->type) == chartype
+ || unqual(ty->type) == signedchar
+ || unqual(ty->type) == unsignedchar) {
+ static Symbol null;
+ if (null == NULL)
+ null = mkstr("(null)");
+ tracevalue(cast(e, unsignedtype), lev + 1);
+ appendstr(" \"%.30s\"");
+ e = condtree(e, e, pointer(idtree(null->u.c.loc)));
+ } else {
+ appendstr("("); appendstr(typestring(ty, "")); appendstr(")0x%x");
+ }
+ break;
+ case STRUCT: {
+ Field q;
+ appendstr("("); appendstr(typestring(ty, "")); appendstr("){");
+ for (q = ty->u.sym->u.s.flist; q; q = q->link) {
+ appendstr(q->name); appendstr("=");
+ tracevalue(field(addrof(e), q->name), lev + 1);
+ if (q->link)
+ appendstr(",");
+ }
+ appendstr("}");
+ return;
+ }
+ case UNION:
+ appendstr("("); appendstr(typestring(ty, "")); appendstr("){...}");
+ return;
+ case ARRAY:
+ if (lev && ty->type->size > 0) {
+ int i;
+ e = pointer(e);
+ appendstr("{");
+ for (i = 0; i < ty->size/ty->type->size; i++) {
+ Tree p = (*optree['+'])(ADD, e, consttree(i, inttype));
+ if (isptr(p->type) && isarray(p->type->type))
+ p = retype(p, p->type->type);
+ else
+ p = rvalue(p);
+ if (i)
+ appendstr(",");
+ tracevalue(p, lev + 1);
+ }
+ appendstr("}");
+ } else
+ appendstr(typestring(ty, ""));
+ return;
+ default:
+ assert(0);
+ }
+ e = cast(e, promote(ty));
+ args = tree(mkop(ARG,e->type), e->type, e, args);
+}
+
+/* tracefinis - complete & generate the trace call to print */
+static void tracefinis(Symbol printer) {
+ Tree *ap;
+ Symbol p;
+
+ *fp = 0;
+ p = mkstr(string(fmt));
+ for (ap = &args; *ap; ap = &(*ap)->kids[1])
+ ;
+ *ap = tree(ARG+P, charptype, pointer(idtree(p->u.c.loc)), 0);
+ walk(calltree(pointer(idtree(printer)), freturn(printer->type), args, NULL), 0, 0);
+ args = 0;
+ fp = fmtend = 0;
+}
+
+/* tracecall - generate code to trace entry to f */
+static void tracecall(Symbol printer, Symbol f) {
+ int i;
+ Symbol counter = genident(STATIC, inttype, GLOBAL);
+
+ defglobal(counter, BSS);
+ (*IR->space)(counter->type->size);
+ frameno = genident(AUTO, inttype, level);
+ addlocal(frameno);
+ appendstr(f->name); appendstr("#");
+ tracevalue(asgn(frameno, incr(INCR, idtree(counter), consttree(1, inttype))), 0);
+ appendstr("(");
+ for (i = 0; f->u.f.callee[i]; i++) {
+ if (i)
+ appendstr(",");
+ appendstr(f->u.f.callee[i]->name); appendstr("=");
+ tracevalue(idtree(f->u.f.callee[i]), 0);
+ }
+ if (variadic(f->type))
+ appendstr(",...");
+ appendstr(") called\n");
+ tracefinis(printer);
+}
+
+/* tracereturn - generate code to trace return e */
+static void tracereturn(Symbol printer, Symbol f, Tree e) {
+ appendstr(f->name); appendstr("#");
+ tracevalue(idtree(frameno), 0);
+ appendstr(" returned");
+ if (freturn(f->type) != voidtype && e) {
+ appendstr(" ");
+ tracevalue(e, 0);
+ }
+ appendstr("\n");
+ tracefinis(printer);
+}
+
+/* trace_init - initialize for tracing */
+void trace_init(int argc, char *argv[]) {
+ int i;
+ static int inited;
+
+ if (inited)
+ return;
+ inited = 1;
+ type_init(argc, argv);
+ if (IR)
+ for (i = 1; i < argc; i++)
+ if (strncmp(argv[i], "-t", 2) == 0 && strchr(argv[i], '=') == NULL) {
+ Symbol printer = mksymbol(EXTERN,
+ argv[i][2] ? &argv[i][2] : "printf",
+ ftype(inttype, ptr(qual(CONST, chartype))));
+ printer->defined = 0;
+ attach((Apply)tracecall, printer, &events.entry);
+ attach((Apply)tracereturn, printer, &events.returns);
+ break;
+ }
+}
diff --git a/lcc/src/tree.c b/lcc/src/tree.c
index 1f5b49c..d2b6a91 100755
--- a/lcc/src/tree.c
+++ b/lcc/src/tree.c
@@ -1,223 +1,223 @@
-#include "c.h"
-
-
-int where = STMT;
-static int warn;
-static int nid = 1; /* identifies trees & nodes in debugging output */
-static struct nodeid {
- int printed;
- Tree node;
-} ids[500]; /* if ids[i].node == p, then p's id is i */
-
-static void printtree1(Tree, int, int);
-
-Tree tree(int op, Type type, Tree left, Tree right) {
- Tree p;
-
- NEW0(p, where);
- p->op = op;
- p->type = type;
- p->kids[0] = left;
- p->kids[1] = right;
- return p;
-}
-
-Tree texpr(Tree (*f)(int), int tok, int a) {
- int save = where;
- Tree p;
-
- where = a;
- p = (*f)(tok);
- where = save;
- return p;
-}
-static Tree root1(Tree p) {
- if (p == NULL)
- return p;
- if (p->type == voidtype)
- warn++;
- switch (generic(p->op)) {
- case COND: {
- Tree q = p->kids[1];
- assert(q && q->op == RIGHT);
- if (p->u.sym && q->kids[0] && generic(q->kids[0]->op) == ASGN)
- q->kids[0] = root1(q->kids[0]->kids[1]);
- else
- q->kids[0] = root1(q->kids[0]);
- if (p->u.sym && q->kids[1] && generic(q->kids[1]->op) == ASGN)
- q->kids[1] = root1(q->kids[1]->kids[1]);
- else
- q->kids[1] = root1(q->kids[1]);
- p->u.sym = 0;
- if (q->kids[0] == 0 && q->kids[1] == 0)
- p = root1(p->kids[0]);
- }
- break;
- case AND: case OR:
- if ((p->kids[1] = root1(p->kids[1])) == 0)
- p = root1(p->kids[0]);
- break;
- case NOT:
- if (warn++ == 0)
- warning("expression with no effect elided\n");
- return root1(p->kids[0]);
- case RIGHT:
- if (p->kids[1] == 0)
- return root1(p->kids[0]);
- if (p->kids[0] && p->kids[0]->op == CALL+B
- && p->kids[1] && p->kids[1]->op == INDIR+B)
- /* avoid premature release of the CALL+B temporary */
- return p->kids[0];
- if (p->kids[0] && p->kids[0]->op == RIGHT
- && p->kids[1] == p->kids[0]->kids[0])
- /* de-construct e++ construction */
- return p->kids[0]->kids[1];
- p = tree(RIGHT, p->type, root1(p->kids[0]), root1(p->kids[1]));
- return p->kids[0] || p->kids[1] ? p : (Tree)0;
- case EQ: case NE: case GT: case GE: case LE: case LT:
- case ADD: case SUB: case MUL: case DIV: case MOD:
- case LSH: case RSH: case BAND: case BOR: case BXOR:
- if (warn++ == 0)
- warning("expression with no effect elided\n");
- p = tree(RIGHT, p->type, root1(p->kids[0]), root1(p->kids[1]));
- return p->kids[0] || p->kids[1] ? p : (Tree)0;
- case INDIR:
- if (p->type->size == 0 && unqual(p->type) != voidtype)
- warning("reference to `%t' elided\n", p->type);
- if (isptr(p->kids[0]->type) && isvolatile(p->kids[0]->type->type))
- warning("reference to `volatile %t' elided\n", p->type);
- /* fall thru */
- case CVI: case CVF: case CVU: case CVP:
- case NEG: case BCOM: case FIELD:
- if (warn++ == 0)
- warning("expression with no effect elided\n");
- return root1(p->kids[0]);
- case ADDRL: case ADDRG: case ADDRF: case CNST:
- if (needconst)
- return p;
- if (warn++ == 0)
- warning("expression with no effect elided\n");
- return NULL;
- case ARG: case ASGN: case CALL: case JUMP: case LABEL:
- break;
- default: assert(0);
- }
- return p;
-}
-
-Tree root(Tree p) {
- warn = 0;
- return root1(p);
-}
-
-char *opname(int op) {
- static char *opnames[] = {
- "",
- "CNST",
- "ARG",
- "ASGN",
- "INDIR",
- "CVC",
- "CVD",
- "CVF",
- "CVI",
- "CVP",
- "CVS",
- "CVU",
- "NEG",
- "CALL",
- "*LOAD*",
- "RET",
- "ADDRG",
- "ADDRF",
- "ADDRL",
- "ADD",
- "SUB",
- "LSH",
- "MOD",
- "RSH",
- "BAND",
- "BCOM",
- "BOR",
- "BXOR",
- "DIV",
- "MUL",
- "EQ",
- "GE",
- "GT",
- "LE",
- "LT",
- "NE",
- "JUMP",
- "LABEL",
- "AND",
- "NOT",
- "OR",
- "COND",
- "RIGHT",
- "FIELD"
- }, *suffixes[] = {
- "0", "F", "D", "C", "S", "I", "U", "P", "V", "B",
- "10","11","12","13","14","15"
- };
-
- if (generic(op) >= AND && generic(op) <= FIELD && opsize(op) == 0)
- return opnames[opindex(op)];
- return stringf("%s%s%s",
- opindex(op) > 0 && opindex(op) < NELEMS(opnames) ?
- opnames[opindex(op)] : stringd(opindex(op)),
- suffixes[optype(op)], opsize(op) > 0 ? stringd(opsize(op)) : "");
-}
-
-int nodeid(Tree p) {
- int i = 1;
-
- ids[nid].node = p;
- while (ids[i].node != p)
- i++;
- if (i == nid)
- ids[nid++].printed = 0;
- return i;
-}
-
-/* printed - return pointer to ids[id].printed */
-int *printed(int id) {
- if (id)
- return &ids[id].printed;
- nid = 1;
- return 0;
-}
-
-/* printtree - print tree p on fd */
-void printtree(Tree p, int fd) {
- (void)printed(0);
- printtree1(p, fd, 1);
-}
-
-/* printtree1 - recursively print tree p */
-static void printtree1(Tree p, int fd, int lev) {
- FILE *f = fd == 1 ? stdout : stderr;
- int i;
- static char blanks[] = " ";
-
- if (p == 0 || *printed(i = nodeid(p)))
- return;
- fprint(f, "#%d%S%S", i, blanks, i < 10 ? 2 : i < 100 ? 1 : 0, blanks, lev);
- fprint(f, "%s %t", opname(p->op), p->type);
- *printed(i) = 1;
- for (i = 0; i < NELEMS(p->kids); i++)
- if (p->kids[i])
- fprint(f, " #%d", nodeid(p->kids[i]));
- if (p->op == FIELD && p->u.field)
- fprint(f, " %s %d..%d", p->u.field->name,
- fieldsize(p->u.field) + fieldright(p->u.field), fieldright(p->u.field));
- else if (generic(p->op) == CNST)
- fprint(f, " %s", vtoa(p->type, p->u.v));
- else if (p->u.sym)
- fprint(f, " %s", p->u.sym->name);
- if (p->node)
- fprint(f, " node=%p", p->node);
- fprint(f, "\n");
- for (i = 0; i < NELEMS(p->kids); i++)
- printtree1(p->kids[i], fd, lev + 1);
-}
+#include "c.h"
+
+
+int where = STMT;
+static int warn;
+static int nid = 1; /* identifies trees & nodes in debugging output */
+static struct nodeid {
+ int printed;
+ Tree node;
+} ids[500]; /* if ids[i].node == p, then p's id is i */
+
+static void printtree1(Tree, int, int);
+
+Tree tree(int op, Type type, Tree left, Tree right) {
+ Tree p;
+
+ NEW0(p, where);
+ p->op = op;
+ p->type = type;
+ p->kids[0] = left;
+ p->kids[1] = right;
+ return p;
+}
+
+Tree texpr(Tree (*f)(int), int tok, int a) {
+ int save = where;
+ Tree p;
+
+ where = a;
+ p = (*f)(tok);
+ where = save;
+ return p;
+}
+static Tree root1(Tree p) {
+ if (p == NULL)
+ return p;
+ if (p->type == voidtype)
+ warn++;
+ switch (generic(p->op)) {
+ case COND: {
+ Tree q = p->kids[1];
+ assert(q && q->op == RIGHT);
+ if (p->u.sym && q->kids[0] && generic(q->kids[0]->op) == ASGN)
+ q->kids[0] = root1(q->kids[0]->kids[1]);
+ else
+ q->kids[0] = root1(q->kids[0]);
+ if (p->u.sym && q->kids[1] && generic(q->kids[1]->op) == ASGN)
+ q->kids[1] = root1(q->kids[1]->kids[1]);
+ else
+ q->kids[1] = root1(q->kids[1]);
+ p->u.sym = 0;
+ if (q->kids[0] == 0 && q->kids[1] == 0)
+ p = root1(p->kids[0]);
+ }
+ break;
+ case AND: case OR:
+ if ((p->kids[1] = root1(p->kids[1])) == 0)
+ p = root1(p->kids[0]);
+ break;
+ case NOT:
+ if (warn++ == 0)
+ warning("expression with no effect elided\n");
+ return root1(p->kids[0]);
+ case RIGHT:
+ if (p->kids[1] == 0)
+ return root1(p->kids[0]);
+ if (p->kids[0] && p->kids[0]->op == CALL+B
+ && p->kids[1] && p->kids[1]->op == INDIR+B)
+ /* avoid premature release of the CALL+B temporary */
+ return p->kids[0];
+ if (p->kids[0] && p->kids[0]->op == RIGHT
+ && p->kids[1] == p->kids[0]->kids[0])
+ /* de-construct e++ construction */
+ return p->kids[0]->kids[1];
+ p = tree(RIGHT, p->type, root1(p->kids[0]), root1(p->kids[1]));
+ return p->kids[0] || p->kids[1] ? p : (Tree)0;
+ case EQ: case NE: case GT: case GE: case LE: case LT:
+ case ADD: case SUB: case MUL: case DIV: case MOD:
+ case LSH: case RSH: case BAND: case BOR: case BXOR:
+ if (warn++ == 0)
+ warning("expression with no effect elided\n");
+ p = tree(RIGHT, p->type, root1(p->kids[0]), root1(p->kids[1]));
+ return p->kids[0] || p->kids[1] ? p : (Tree)0;
+ case INDIR:
+ if (p->type->size == 0 && unqual(p->type) != voidtype)
+ warning("reference to `%t' elided\n", p->type);
+ if (isptr(p->kids[0]->type) && isvolatile(p->kids[0]->type->type))
+ warning("reference to `volatile %t' elided\n", p->type);
+ /* fall thru */
+ case CVI: case CVF: case CVU: case CVP:
+ case NEG: case BCOM: case FIELD:
+ if (warn++ == 0)
+ warning("expression with no effect elided\n");
+ return root1(p->kids[0]);
+ case ADDRL: case ADDRG: case ADDRF: case CNST:
+ if (needconst)
+ return p;
+ if (warn++ == 0)
+ warning("expression with no effect elided\n");
+ return NULL;
+ case ARG: case ASGN: case CALL: case JUMP: case LABEL:
+ break;
+ default: assert(0);
+ }
+ return p;
+}
+
+Tree root(Tree p) {
+ warn = 0;
+ return root1(p);
+}
+
+char *opname(int op) {
+ static char *opnames[] = {
+ "",
+ "CNST",
+ "ARG",
+ "ASGN",
+ "INDIR",
+ "CVC",
+ "CVD",
+ "CVF",
+ "CVI",
+ "CVP",
+ "CVS",
+ "CVU",
+ "NEG",
+ "CALL",
+ "*LOAD*",
+ "RET",
+ "ADDRG",
+ "ADDRF",
+ "ADDRL",
+ "ADD",
+ "SUB",
+ "LSH",
+ "MOD",
+ "RSH",
+ "BAND",
+ "BCOM",
+ "BOR",
+ "BXOR",
+ "DIV",
+ "MUL",
+ "EQ",
+ "GE",
+ "GT",
+ "LE",
+ "LT",
+ "NE",
+ "JUMP",
+ "LABEL",
+ "AND",
+ "NOT",
+ "OR",
+ "COND",
+ "RIGHT",
+ "FIELD"
+ }, *suffixes[] = {
+ "0", "F", "D", "C", "S", "I", "U", "P", "V", "B",
+ "10","11","12","13","14","15"
+ };
+
+ if (generic(op) >= AND && generic(op) <= FIELD && opsize(op) == 0)
+ return opnames[opindex(op)];
+ return stringf("%s%s%s",
+ opindex(op) > 0 && opindex(op) < NELEMS(opnames) ?
+ opnames[opindex(op)] : stringd(opindex(op)),
+ suffixes[optype(op)], opsize(op) > 0 ? stringd(opsize(op)) : "");
+}
+
+int nodeid(Tree p) {
+ int i = 1;
+
+ ids[nid].node = p;
+ while (ids[i].node != p)
+ i++;
+ if (i == nid)
+ ids[nid++].printed = 0;
+ return i;
+}
+
+/* printed - return pointer to ids[id].printed */
+int *printed(int id) {
+ if (id)
+ return &ids[id].printed;
+ nid = 1;
+ return 0;
+}
+
+/* printtree - print tree p on fd */
+void printtree(Tree p, int fd) {
+ (void)printed(0);
+ printtree1(p, fd, 1);
+}
+
+/* printtree1 - recursively print tree p */
+static void printtree1(Tree p, int fd, int lev) {
+ FILE *f = fd == 1 ? stdout : stderr;
+ int i;
+ static char blanks[] = " ";
+
+ if (p == 0 || *printed(i = nodeid(p)))
+ return;
+ fprint(f, "#%d%S%S", i, blanks, i < 10 ? 2 : i < 100 ? 1 : 0, blanks, lev);
+ fprint(f, "%s %t", opname(p->op), p->type);
+ *printed(i) = 1;
+ for (i = 0; i < NELEMS(p->kids); i++)
+ if (p->kids[i])
+ fprint(f, " #%d", nodeid(p->kids[i]));
+ if (p->op == FIELD && p->u.field)
+ fprint(f, " %s %d..%d", p->u.field->name,
+ fieldsize(p->u.field) + fieldright(p->u.field), fieldright(p->u.field));
+ else if (generic(p->op) == CNST)
+ fprint(f, " %s", vtoa(p->type, p->u.v));
+ else if (p->u.sym)
+ fprint(f, " %s", p->u.sym->name);
+ if (p->node)
+ fprint(f, " node=%p", p->node);
+ fprint(f, "\n");
+ for (i = 0; i < NELEMS(p->kids); i++)
+ printtree1(p->kids[i], fd, lev + 1);
+}
diff --git a/lcc/src/types.c b/lcc/src/types.c
index eead3e1..207cdb5 100755
--- a/lcc/src/types.c
+++ b/lcc/src/types.c
@@ -1,748 +1,748 @@
-#include "c.h"
-#include <float.h>
-
-
-static Field isfield(const char *, Field);
-static Type type(int, Type, int, int, void *);
-
-static struct entry {
- struct type type;
- struct entry *link;
-} *typetable[128];
-static int maxlevel;
-
-static Symbol pointersym;
-
-Type chartype; /* char */
-Type doubletype; /* double */
-Type floattype; /* float */
-Type inttype; /* signed int */
-Type longdouble; /* long double */
-Type longtype; /* long */
-Type longlong; /* long long */
-Type shorttype; /* signed short int */
-Type signedchar; /* signed char */
-Type unsignedchar; /* unsigned char */
-Type unsignedlong; /* unsigned long int */
-Type unsignedlonglong; /* unsigned long long int */
-Type unsignedshort; /* unsigned short int */
-Type unsignedtype; /* unsigned int */
-Type funcptype; /* void (*)() */
-Type charptype; /* char* */
-Type voidptype; /* void* */
-Type voidtype; /* basic types: void */
-Type unsignedptr; /* unsigned type to hold void* */
-Type signedptr; /* signed type to hold void* */
-Type widechar; /* unsigned type that represents wchar_t */
-
-static Type xxinit(int op, char *name, Metrics m) {
- Symbol p = install(string(name), &types, GLOBAL, PERM);
- Type ty = type(op, 0, m.size, m.align, p);
-
- assert(ty->align == 0 || ty->size%ty->align == 0);
- p->type = ty;
- p->addressed = m.outofline;
- switch (ty->op) {
- case INT:
- p->u.limits.max.i = ones(8*ty->size)>>1;
- p->u.limits.min.i = -p->u.limits.max.i - 1;
- break;
- case UNSIGNED:
- p->u.limits.max.u = ones(8*ty->size);
- p->u.limits.min.u = 0;
- break;
- case FLOAT:
- if (ty->size == sizeof (float))
- p->u.limits.max.d = FLT_MAX;
- else if (ty->size == sizeof (double))
- p->u.limits.max.d = DBL_MAX;
- else
- p->u.limits.max.d = LDBL_MAX;
- p->u.limits.min.d = -p->u.limits.max.d;
- break;
- default: assert(0);
- }
- return ty;
-}
-static Type type(int op, Type ty, int size, int align, void *sym) {
- unsigned h = (op^((unsigned long)ty>>3))
-&(NELEMS(typetable)-1);
- struct entry *tn;
-
- if (op != FUNCTION && (op != ARRAY || size > 0))
- for (tn = typetable[h]; tn; tn = tn->link)
- if (tn->type.op == op && tn->type.type == ty
- && tn->type.size == size && tn->type.align == align
- && tn->type.u.sym == sym)
- return &tn->type;
- NEW0(tn, PERM);
- tn->type.op = op;
- tn->type.type = ty;
- tn->type.size = size;
- tn->type.align = align;
- tn->type.u.sym = sym;
- tn->link = typetable[h];
- typetable[h] = tn;
- return &tn->type;
-}
-void type_init(int argc, char *argv[]) {
- static int inited;
- int i;
-
- if (inited)
- return;
- inited = 1;
- if (!IR)
- return;
- for (i = 1; i < argc; i++) {
- int size, align, outofline;
- if (strncmp(argv[i], "-unsigned_char=", 15) == 0)
- IR->unsigned_char = argv[i][15] - '0';
-#define xx(name) \
- else if (sscanf(argv[i], "-" #name "=%d,%d,%d", &size, &align, &outofline) == 3) { \
- IR->name.size = size; IR->name.align = align; \
- IR->name.outofline = outofline; }
- xx(charmetric)
- xx(shortmetric)
- xx(intmetric)
- xx(longmetric)
- xx(longlongmetric)
- xx(floatmetric)
- xx(doublemetric)
- xx(longdoublemetric)
- xx(ptrmetric)
- xx(structmetric)
-#undef xx
- }
-#define xx(v,name,op,metrics) v=xxinit(op,name,IR->metrics)
- xx(chartype, "char", IR->unsigned_char ? UNSIGNED : INT,charmetric);
- xx(doubletype, "double", FLOAT, doublemetric);
- xx(floattype, "float", FLOAT, floatmetric);
- xx(inttype, "int", INT, intmetric);
- xx(longdouble, "long double", FLOAT, longdoublemetric);
- xx(longtype, "long int", INT, longmetric);
- xx(longlong, "long long int", INT, longlongmetric);
- xx(shorttype, "short", INT, shortmetric);
- xx(signedchar, "signed char", INT, charmetric);
- xx(unsignedchar, "unsigned char", UNSIGNED,charmetric);
- xx(unsignedlong, "unsigned long", UNSIGNED,longmetric);
- xx(unsignedshort, "unsigned short", UNSIGNED,shortmetric);
- xx(unsignedtype, "unsigned int", UNSIGNED,intmetric);
- xx(unsignedlonglong,"unsigned long long",UNSIGNED,longlongmetric);
-#undef xx
- {
- Symbol p;
- p = install(string("void"), &types, GLOBAL, PERM);
- voidtype = type(VOID, NULL, 0, 0, p);
- p->type = voidtype;
- }
- pointersym = install(string("T*"), &types, GLOBAL, PERM);
- pointersym->addressed = IR->ptrmetric.outofline;
- pointersym->u.limits.max.p = (void*)ones(8*IR->ptrmetric.size);
- pointersym->u.limits.min.p = 0;
- voidptype = ptr(voidtype);
- funcptype = ptr(func(voidtype, NULL, 1));
- charptype = ptr(chartype);
-#define xx(v,t) if (v==NULL && t->size==voidptype->size && t->align==voidptype->align) v=t
- xx(unsignedptr,unsignedshort);
- xx(unsignedptr,unsignedtype);
- xx(unsignedptr,unsignedlong);
- xx(unsignedptr,unsignedlonglong);
- if (unsignedptr == NULL)
- unsignedptr = type(UNSIGNED, NULL, voidptype->size, voidptype->align, voidptype->u.sym);
- xx(signedptr,shorttype);
- xx(signedptr,inttype);
- xx(signedptr,longtype);
- xx(signedptr,longlong);
- if (signedptr == NULL)
- signedptr = type(INT, NULL, voidptype->size, voidptype->align, voidptype->u.sym);
-#undef xx
- widechar = unsignedshort;
- for (i = 0; i < argc; i++) {
-#define xx(name,type) \
- if (strcmp(argv[i], "-wchar_t=" #name) == 0) \
- widechar = type;
- xx(unsigned_char,unsignedchar)
- xx(unsigned_int,unsignedtype)
- xx(unsigned_short,unsignedshort)
- }
-#undef xx
-}
-void rmtypes(int lev) {
- if (maxlevel >= lev) {
- int i;
- maxlevel = 0;
- for (i = 0; i < NELEMS(typetable); i++) {
- struct entry *tn, **tq = &typetable[i];
- while ((tn = *tq) != NULL)
- if (tn->type.op == FUNCTION)
- tq = &tn->link;
- else if (tn->type.u.sym && tn->type.u.sym->scope >= lev)
- *tq = tn->link;
- else {
- if (tn->type.u.sym && tn->type.u.sym->scope > maxlevel)
- maxlevel = tn->type.u.sym->scope;
- tq = &tn->link;
- }
-
- }
- }
-}
-Type ptr(Type ty) {
- return type(POINTER, ty, IR->ptrmetric.size,
- IR->ptrmetric.align, pointersym);
-}
-Type deref(Type ty) {
- if (isptr(ty))
- ty = ty->type;
- else
- error("type error: %s\n", "pointer expected");
- return isenum(ty) ? unqual(ty)->type : ty;
-}
-Type array(Type ty, int n, int a) {
- assert(ty);
- if (isfunc(ty)) {
- error("illegal type `array of %t'\n", ty);
- return array(inttype, n, 0);
- }
- if (isarray(ty) && ty->size == 0)
- error("missing array size\n");
- if (ty->size == 0) {
- if (unqual(ty) == voidtype)
- error("illegal type `array of %t'\n", ty);
- else if (Aflag >= 2)
- warning("declaring type array of %t' is undefined\n", ty);
-
- } else if (n > INT_MAX/ty->size) {
- error("size of `array of %t' exceeds %d bytes\n",
- ty, INT_MAX);
- n = 1;
- }
- return type(ARRAY, ty, n*ty->size,
- a ? a : ty->align, NULL);
-}
-Type atop(Type ty) {
- if (isarray(ty))
- return ptr(ty->type);
- error("type error: %s\n", "array expected");
- return ptr(ty);
-}
-Type qual(int op, Type ty) {
- if (isarray(ty))
- ty = type(ARRAY, qual(op, ty->type), ty->size,
- ty->align, NULL);
- else if (isfunc(ty))
- warning("qualified function type ignored\n");
- else if (isconst(ty) && op == CONST
- || isvolatile(ty) && op == VOLATILE)
- error("illegal type `%k %t'\n", op, ty);
- else {
- if (isqual(ty)) {
- op += ty->op;
- ty = ty->type;
- }
- ty = type(op, ty, ty->size, ty->align, NULL);
- }
- return ty;
-}
-Type func(Type ty, Type *proto, int style) {
- if (ty && (isarray(ty) || isfunc(ty)))
- error("illegal return type `%t'\n", ty);
- ty = type(FUNCTION, ty, 0, 0, NULL);
- ty->u.f.proto = proto;
- ty->u.f.oldstyle = style;
- return ty;
-}
-Type freturn(Type ty) {
- if (isfunc(ty))
- return ty->type;
- error("type error: %s\n", "function expected");
- return inttype;
-}
-int variadic(Type ty) {
- if (isfunc(ty) && ty->u.f.proto) {
- int i;
- for (i = 0; ty->u.f.proto[i]; i++)
- ;
- return i > 1 && ty->u.f.proto[i-1] == voidtype;
- }
- return 0;
-}
-Type newstruct(int op, char *tag) {
- Symbol p;
-
- assert(tag);
- if (*tag == 0)
- tag = stringd(genlabel(1));
- else
- if ((p = lookup(tag, types)) != NULL && (p->scope == level
- || p->scope == PARAM && level == PARAM+1)) {
- if (p->type->op == op && !p->defined)
- return p->type;
- error("redefinition of `%s' previously defined at %w\n",
- p->name, &p->src);
- }
- p = install(tag, &types, level, PERM);
- p->type = type(op, NULL, 0, 0, p);
- if (p->scope > maxlevel)
- maxlevel = p->scope;
- p->src = src;
- return p->type;
-}
-Field newfield(char *name, Type ty, Type fty) {
- Field p, *q = &ty->u.sym->u.s.flist;
-
- if (name == NULL)
- name = stringd(genlabel(1));
- for (p = *q; p; q = &p->link, p = *q)
- if (p->name == name)
- error("duplicate field name `%s' in `%t'\n",
- name, ty);
- NEW0(p, PERM);
- *q = p;
- p->name = name;
- p->type = fty;
- if (xref) { /* omit */
- if (ty->u.sym->u.s.ftab == NULL) /* omit */
- ty->u.sym->u.s.ftab = table(NULL, level); /* omit */
- install(name, &ty->u.sym->u.s.ftab, 0, PERM)->src = src;/* omit */
- } /* omit */
- return p;
-}
-int eqtype(Type ty1, Type ty2, int ret) {
- if (ty1 == ty2)
- return 1;
- if (ty1->op != ty2->op)
- return 0;
- switch (ty1->op) {
- case ENUM: case UNION: case STRUCT:
- case UNSIGNED: case INT: case FLOAT:
- return 0;
- case POINTER: return eqtype(ty1->type, ty2->type, 1);
- case VOLATILE: case CONST+VOLATILE:
- case CONST: return eqtype(ty1->type, ty2->type, 1);
- case ARRAY: if (eqtype(ty1->type, ty2->type, 1)) {
- if (ty1->size == ty2->size)
- return 1;
- if (ty1->size == 0 || ty2->size == 0)
- return ret;
- }
- return 0;
- case FUNCTION: if (eqtype(ty1->type, ty2->type, 1)) {
- Type *p1 = ty1->u.f.proto, *p2 = ty2->u.f.proto;
- if (p1 == p2)
- return 1;
- if (p1 && p2) {
- for ( ; *p1 && *p2; p1++, p2++)
- if (eqtype(unqual(*p1), unqual(*p2), 1) == 0)
- return 0;
- if (*p1 == NULL && *p2 == NULL)
- return 1;
- } else {
- if (variadic(p1 ? ty1 : ty2))
- return 0;
- if (p1 == NULL)
- p1 = p2;
- for ( ; *p1; p1++) {
- Type ty = unqual(*p1);
- if (promote(ty) != (isenum(ty) ? ty->type : ty))
- return 0;
- }
- return 1;
- }
- }
- return 0;
- }
- assert(0); return 0;
-}
-Type promote(Type ty) {
- ty = unqual(ty);
- switch (ty->op) {
- case ENUM:
- return inttype;
- case INT:
- if (ty->size < inttype->size)
- return inttype;
- break;
- case UNSIGNED:
- if (ty->size < inttype->size)
- return inttype;
- if (ty->size < unsignedtype->size)
- return unsignedtype;
- break;
- case FLOAT:
- if (ty->size < doubletype->size)
- return doubletype;
- }
- return ty;
-}
-Type signedint(Type ty) {
- if (ty->op == INT)
- return ty;
- assert(ty->op == UNSIGNED);
-#define xx(t) if (ty->size == t->size) return t
- xx(inttype);
- xx(longtype);
- xx(longlong);
-#undef xx
- assert(0); return NULL;
-}
-Type compose(Type ty1, Type ty2) {
- if (ty1 == ty2)
- return ty1;
- assert(ty1->op == ty2->op);
- switch (ty1->op) {
- case POINTER:
- return ptr(compose(ty1->type, ty2->type));
- case CONST+VOLATILE:
- return qual(CONST, qual(VOLATILE,
- compose(ty1->type, ty2->type)));
- case CONST: case VOLATILE:
- return qual(ty1->op, compose(ty1->type, ty2->type));
- case ARRAY: { Type ty = compose(ty1->type, ty2->type);
- if (ty1->size && (ty1->type->size && ty2->size == 0 || ty1->size == ty2->size))
- return array(ty, ty1->size/ty1->type->size, ty1->align);
- if (ty2->size && ty2->type->size && ty1->size == 0)
- return array(ty, ty2->size/ty2->type->size, ty2->align);
- return array(ty, 0, 0); }
- case FUNCTION: { Type *p1 = ty1->u.f.proto, *p2 = ty2->u.f.proto;
- Type ty = compose(ty1->type, ty2->type);
- List tlist = NULL;
- if (p1 == NULL && p2 == NULL)
- return func(ty, NULL, 1);
- if (p1 && p2 == NULL)
- return func(ty, p1, ty1->u.f.oldstyle);
- if (p2 && p1 == NULL)
- return func(ty, p2, ty2->u.f.oldstyle);
- for ( ; *p1 && *p2; p1++, p2++) {
- Type ty = compose(unqual(*p1), unqual(*p2));
- if (isconst(*p1) || isconst(*p2))
- ty = qual(CONST, ty);
- if (isvolatile(*p1) || isvolatile(*p2))
- ty = qual(VOLATILE, ty);
- tlist = append(ty, tlist);
- }
- assert(*p1 == NULL && *p2 == NULL);
- return func(ty, ltov(&tlist, PERM), 0); }
- }
- assert(0); return NULL;
-}
-int ttob(Type ty) {
- switch (ty->op) {
- case CONST: case VOLATILE: case CONST+VOLATILE:
- return ttob(ty->type);
- case VOID: case INT: case UNSIGNED: case FLOAT:
- return ty->op + sizeop(ty->size);
- case POINTER:
- return POINTER + sizeop(voidptype->size);
- case FUNCTION:
- return POINTER + sizeop(funcptype->size);
- case ARRAY: case STRUCT: case UNION:
- return STRUCT;
- case ENUM:
- return INT + sizeop(inttype->size);
- }
- assert(0); return INT;
-}
-Type btot(int op, int size) {
-#define xx(ty) if (size == (ty)->size) return ty;
- switch (optype(op)) {
- case F:
- xx(floattype);
- xx(doubletype);
- xx(longdouble);
- assert(0); return 0;
- case I:
- if (chartype->op == INT)
- xx(chartype);
- xx(signedchar);
- xx(shorttype);
- xx(inttype);
- xx(longtype);
- xx(longlong);
- assert(0); return 0;
- case U:
- if (chartype->op == UNSIGNED)
- xx(chartype);
- xx(unsignedchar);
- xx(unsignedshort);
- xx(unsignedtype);
- xx(unsignedlong);
- xx(unsignedlonglong);
- assert(0); return 0;
- case P:
- xx(voidptype);
- xx(funcptype);
- assert(0); return 0;
- }
-#undef xx
- assert(0); return 0;
-}
-int hasproto(Type ty) {
- if (ty == 0)
- return 1;
- switch (ty->op) {
- case CONST: case VOLATILE: case CONST+VOLATILE: case POINTER:
- case ARRAY:
- return hasproto(ty->type);
- case FUNCTION:
- return hasproto(ty->type) && ty->u.f.proto;
- case STRUCT: case UNION:
- case VOID: case FLOAT: case ENUM: case INT: case UNSIGNED:
- return 1;
- }
- assert(0); return 0;
-}
-/* fieldlist - construct a flat list of fields in type ty */
-Field fieldlist(Type ty) {
- return ty->u.sym->u.s.flist;
-}
-
-/* fieldref - find field name of type ty, return entry */
-Field fieldref(const char *name, Type ty) {
- Field p = isfield(name, unqual(ty)->u.sym->u.s.flist);
-
- if (p && xref) {
- Symbol q;
- assert(unqual(ty)->u.sym->u.s.ftab);
- q = lookup(name, unqual(ty)->u.sym->u.s.ftab);
- assert(q);
- use(q, src);
- }
- return p;
-}
-
-/* ftype - return a function type for rty function (ty,...)' */
-Type ftype(Type rty, Type ty) {
- List list = append(ty, NULL);
-
- list = append(voidtype, list);
- return func(rty, ltov(&list, PERM), 0);
-}
-
-/* isfield - if name is a field in flist, return pointer to the field structure */
-static Field isfield(const char *name, Field flist) {
- for ( ; flist; flist = flist->link)
- if (flist->name == name)
- break;
- return flist;
-}
-
-/* outtype - output type ty */
-void outtype(Type ty, FILE *f) {
- switch (ty->op) {
- case CONST+VOLATILE: case CONST: case VOLATILE:
- fprint(f, "%k %t", ty->op, ty->type);
- break;
- case STRUCT: case UNION: case ENUM:
- assert(ty->u.sym);
- if (ty->size == 0)
- fprint(f, "incomplete ");
- assert(ty->u.sym->name);
- if (*ty->u.sym->name >= '1' && *ty->u.sym->name <= '9') {
- Symbol p = findtype(ty);
- if (p == 0)
- fprint(f, "%k defined at %w", ty->op, &ty->u.sym->src);
- else
- fprint(f, p->name);
- } else {
- fprint(f, "%k %s", ty->op, ty->u.sym->name);
- if (ty->size == 0)
- fprint(f, " defined at %w", &ty->u.sym->src);
- }
- break;
- case VOID: case FLOAT: case INT: case UNSIGNED:
- fprint(f, ty->u.sym->name);
- break;
- case POINTER:
- fprint(f, "pointer to %t", ty->type);
- break;
- case FUNCTION:
- fprint(f, "%t function", ty->type);
- if (ty->u.f.proto && ty->u.f.proto[0]) {
- int i;
- fprint(f, "(%t", ty->u.f.proto[0]);
- for (i = 1; ty->u.f.proto[i]; i++)
- if (ty->u.f.proto[i] == voidtype)
- fprint(f, ",...");
- else
- fprint(f, ",%t", ty->u.f.proto[i]);
- fprint(f, ")");
- } else if (ty->u.f.proto && ty->u.f.proto[0] == 0)
- fprint(f, "(void)");
-
- break;
- case ARRAY:
- if (ty->size > 0 && ty->type && ty->type->size > 0) {
- fprint(f, "array %d", ty->size/ty->type->size);
- while (ty->type && isarray(ty->type) && ty->type->type->size > 0) {
- ty = ty->type;
- fprint(f, ",%d", ty->size/ty->type->size);
- }
- } else
- fprint(f, "incomplete array");
- if (ty->type)
- fprint(f, " of %t", ty->type);
- break;
- default: assert(0);
- }
-}
-
-/* printdecl - output a C declaration for symbol p of type ty */
-void printdecl(Symbol p, Type ty) {
- switch (p->sclass) {
- case AUTO:
- fprint(stderr, "%s;\n", typestring(ty, p->name));
- break;
- case STATIC: case EXTERN:
- fprint(stderr, "%k %s;\n", p->sclass, typestring(ty, p->name));
- break;
- case TYPEDEF: case ENUM:
- break;
- default: assert(0);
- }
-}
-
-/* printproto - output a prototype declaration for function p */
-void printproto(Symbol p, Symbol callee[]) {
- if (p->type->u.f.proto)
- printdecl(p, p->type);
- else {
- int i;
- List list = 0;
- if (callee[0] == 0)
- list = append(voidtype, list);
- else
- for (i = 0; callee[i]; i++)
- list = append(callee[i]->type, list);
- printdecl(p, func(freturn(p->type), ltov(&list, PERM), 0));
- }
-}
-
-/* prtype - print details of type ty on f with given indent */
-static void prtype(Type ty, FILE *f, int indent, unsigned mark) {
- switch (ty->op) {
- default:
- fprint(f, "(%d %d %d [%p])", ty->op, ty->size, ty->align, ty->u.sym);
- break;
- case FLOAT: case INT: case UNSIGNED: case VOID:
- fprint(f, "(%k %d %d [\"%s\"])", ty->op, ty->size, ty->align, ty->u.sym->name);
- break;
- case CONST+VOLATILE: case CONST: case VOLATILE: case POINTER: case ARRAY:
- fprint(f, "(%k %d %d ", ty->op, ty->size, ty->align);
- prtype(ty->type, f, indent+1, mark);
- fprint(f, ")");
- break;
- case STRUCT: case UNION:
- fprint(f, "(%k %d %d [\"%s\"]", ty->op, ty->size, ty->align, ty->u.sym->name);
- if (ty->x.marked != mark) {
- Field p;
- ty->x.marked = mark;
- for (p = ty->u.sym->u.s.flist; p; p = p->link) {
- fprint(f, "\n%I", indent+1);
- prtype(p->type, f, indent+1, mark);
- fprint(f, " %s@%d", p->name, p->offset);
- if (p->lsb)
- fprint(f, ":%d..%d",
- fieldsize(p) + fieldright(p), fieldright(p));
- }
- fprint(f, "\n%I", indent);
- }
- fprint(f, ")");
- break;
- case ENUM:
- fprint(f, "(%k %d %d [\"%s\"]", ty->op, ty->size, ty->align, ty->u.sym->name);
- if (ty->x.marked != mark) {
- int i;
- Symbol *p = ty->u.sym->u.idlist;
- ty->x.marked = mark;
- for (i = 0; p[i] != NULL; i++)
- fprint(f, "%I%s=%d\n", indent+1, p[i]->name, p[i]->u.value);
- }
- fprint(f, ")");
- break;
- case FUNCTION:
- fprint(f, "(%k %d %d ", ty->op, ty->size, ty->align);
- prtype(ty->type, f, indent+1, mark);
- if (ty->u.f.proto) {
- int i;
- fprint(f, "\n%I{", indent+1);
- for (i = 0; ty->u.f.proto[i]; i++) {
- if (i > 0)
- fprint(f, "%I", indent+2);
- prtype(ty->u.f.proto[i], f, indent+2, mark);
- fprint(f, "\n");
- }
- fprint(f, "%I}", indent+1);
- }
- fprint(f, ")");
- break;
- }
-}
-
-/* printtype - print details of type ty on fd */
-void printtype(Type ty, int fd) {
- static unsigned mark;
- prtype(ty, fd == 1 ? stdout : stderr, 0, ++mark);
- fprint(fd == 1 ? stdout : stderr, "\n");
-}
-
-/* typestring - return ty as C declaration for str, which may be "" */
-char *typestring(Type ty, char *str) {
- for ( ; ty; ty = ty->type) {
- Symbol p;
- switch (ty->op) {
- case CONST+VOLATILE: case CONST: case VOLATILE:
- if (isptr(ty->type))
- str = stringf("%k %s", ty->op, str);
- else
- return stringf("%k %s", ty->op, typestring(ty->type, str));
- break;
- case STRUCT: case UNION: case ENUM:
- assert(ty->u.sym);
- if ((p = findtype(ty)) != NULL)
- return *str ? stringf("%s %s", p->name, str) : p->name;
- if (*ty->u.sym->name >= '1' && *ty->u.sym->name <= '9')
- warning("unnamed %k in prototype\n", ty->op);
- if (*str)
- return stringf("%k %s %s", ty->op, ty->u.sym->name, str);
- else
- return stringf("%k %s", ty->op, ty->u.sym->name);
- case VOID: case FLOAT: case INT: case UNSIGNED:
- return *str ? stringf("%s %s", ty->u.sym->name, str) : ty->u.sym->name;
- case POINTER:
- if (!ischar(ty->type) && (p = findtype(ty)) != NULL)
- return *str ? stringf("%s %s", p->name, str) : p->name;
- str = stringf(isarray(ty->type) || isfunc(ty->type) ? "(*%s)" : "*%s", str);
- break;
- case FUNCTION:
- if ((p = findtype(ty)) != NULL)
- return *str ? stringf("%s %s", p->name, str) : p->name;
- if (ty->u.f.proto == 0)
- str = stringf("%s()", str);
- else if (ty->u.f.proto[0]) {
- int i;
- str = stringf("%s(%s", str, typestring(ty->u.f.proto[0], ""));
- for (i = 1; ty->u.f.proto[i]; i++)
- if (ty->u.f.proto[i] == voidtype)
- str = stringf("%s, ...", str);
- else
- str = stringf("%s, %s", str, typestring(ty->u.f.proto[i], ""));
- str = stringf("%s)", str);
- } else
- str = stringf("%s(void)", str);
- break;
- case ARRAY:
- if ((p = findtype(ty)) != NULL)
- return *str ? stringf("%s %s", p->name, str) : p->name;
- if (ty->type && ty->type->size > 0)
- str = stringf("%s[%d]", str, ty->size/ty->type->size);
- else
- str = stringf("%s[]", str);
- break;
- default: assert(0);
- }
- }
- assert(0); return 0;
-}
-
+#include "c.h"
+#include <float.h>
+
+
+static Field isfield(const char *, Field);
+static Type type(int, Type, int, int, void *);
+
+static struct entry {
+ struct type type;
+ struct entry *link;
+} *typetable[128];
+static int maxlevel;
+
+static Symbol pointersym;
+
+Type chartype; /* char */
+Type doubletype; /* double */
+Type floattype; /* float */
+Type inttype; /* signed int */
+Type longdouble; /* long double */
+Type longtype; /* long */
+Type longlong; /* long long */
+Type shorttype; /* signed short int */
+Type signedchar; /* signed char */
+Type unsignedchar; /* unsigned char */
+Type unsignedlong; /* unsigned long int */
+Type unsignedlonglong; /* unsigned long long int */
+Type unsignedshort; /* unsigned short int */
+Type unsignedtype; /* unsigned int */
+Type funcptype; /* void (*)() */
+Type charptype; /* char* */
+Type voidptype; /* void* */
+Type voidtype; /* basic types: void */
+Type unsignedptr; /* unsigned type to hold void* */
+Type signedptr; /* signed type to hold void* */
+Type widechar; /* unsigned type that represents wchar_t */
+
+static Type xxinit(int op, char *name, Metrics m) {
+ Symbol p = install(string(name), &types, GLOBAL, PERM);
+ Type ty = type(op, 0, m.size, m.align, p);
+
+ assert(ty->align == 0 || ty->size%ty->align == 0);
+ p->type = ty;
+ p->addressed = m.outofline;
+ switch (ty->op) {
+ case INT:
+ p->u.limits.max.i = ones(8*ty->size)>>1;
+ p->u.limits.min.i = -p->u.limits.max.i - 1;
+ break;
+ case UNSIGNED:
+ p->u.limits.max.u = ones(8*ty->size);
+ p->u.limits.min.u = 0;
+ break;
+ case FLOAT:
+ if (ty->size == sizeof (float))
+ p->u.limits.max.d = FLT_MAX;
+ else if (ty->size == sizeof (double))
+ p->u.limits.max.d = DBL_MAX;
+ else
+ p->u.limits.max.d = LDBL_MAX;
+ p->u.limits.min.d = -p->u.limits.max.d;
+ break;
+ default: assert(0);
+ }
+ return ty;
+}
+static Type type(int op, Type ty, int size, int align, void *sym) {
+ unsigned h = (op^((unsigned long)ty>>3))
+&(NELEMS(typetable)-1);
+ struct entry *tn;
+
+ if (op != FUNCTION && (op != ARRAY || size > 0))
+ for (tn = typetable[h]; tn; tn = tn->link)
+ if (tn->type.op == op && tn->type.type == ty
+ && tn->type.size == size && tn->type.align == align
+ && tn->type.u.sym == sym)
+ return &tn->type;
+ NEW0(tn, PERM);
+ tn->type.op = op;
+ tn->type.type = ty;
+ tn->type.size = size;
+ tn->type.align = align;
+ tn->type.u.sym = sym;
+ tn->link = typetable[h];
+ typetable[h] = tn;
+ return &tn->type;
+}
+void type_init(int argc, char *argv[]) {
+ static int inited;
+ int i;
+
+ if (inited)
+ return;
+ inited = 1;
+ if (!IR)
+ return;
+ for (i = 1; i < argc; i++) {
+ int size, align, outofline;
+ if (strncmp(argv[i], "-unsigned_char=", 15) == 0)
+ IR->unsigned_char = argv[i][15] - '0';
+#define xx(name) \
+ else if (sscanf(argv[i], "-" #name "=%d,%d,%d", &size, &align, &outofline) == 3) { \
+ IR->name.size = size; IR->name.align = align; \
+ IR->name.outofline = outofline; }
+ xx(charmetric)
+ xx(shortmetric)
+ xx(intmetric)
+ xx(longmetric)
+ xx(longlongmetric)
+ xx(floatmetric)
+ xx(doublemetric)
+ xx(longdoublemetric)
+ xx(ptrmetric)
+ xx(structmetric)
+#undef xx
+ }
+#define xx(v,name,op,metrics) v=xxinit(op,name,IR->metrics)
+ xx(chartype, "char", IR->unsigned_char ? UNSIGNED : INT,charmetric);
+ xx(doubletype, "double", FLOAT, doublemetric);
+ xx(floattype, "float", FLOAT, floatmetric);
+ xx(inttype, "int", INT, intmetric);
+ xx(longdouble, "long double", FLOAT, longdoublemetric);
+ xx(longtype, "long int", INT, longmetric);
+ xx(longlong, "long long int", INT, longlongmetric);
+ xx(shorttype, "short", INT, shortmetric);
+ xx(signedchar, "signed char", INT, charmetric);
+ xx(unsignedchar, "unsigned char", UNSIGNED,charmetric);
+ xx(unsignedlong, "unsigned long", UNSIGNED,longmetric);
+ xx(unsignedshort, "unsigned short", UNSIGNED,shortmetric);
+ xx(unsignedtype, "unsigned int", UNSIGNED,intmetric);
+ xx(unsignedlonglong,"unsigned long long",UNSIGNED,longlongmetric);
+#undef xx
+ {
+ Symbol p;
+ p = install(string("void"), &types, GLOBAL, PERM);
+ voidtype = type(VOID, NULL, 0, 0, p);
+ p->type = voidtype;
+ }
+ pointersym = install(string("T*"), &types, GLOBAL, PERM);
+ pointersym->addressed = IR->ptrmetric.outofline;
+ pointersym->u.limits.max.p = (void*)ones(8*IR->ptrmetric.size);
+ pointersym->u.limits.min.p = 0;
+ voidptype = ptr(voidtype);
+ funcptype = ptr(func(voidtype, NULL, 1));
+ charptype = ptr(chartype);
+#define xx(v,t) if (v==NULL && t->size==voidptype->size && t->align==voidptype->align) v=t
+ xx(unsignedptr,unsignedshort);
+ xx(unsignedptr,unsignedtype);
+ xx(unsignedptr,unsignedlong);
+ xx(unsignedptr,unsignedlonglong);
+ if (unsignedptr == NULL)
+ unsignedptr = type(UNSIGNED, NULL, voidptype->size, voidptype->align, voidptype->u.sym);
+ xx(signedptr,shorttype);
+ xx(signedptr,inttype);
+ xx(signedptr,longtype);
+ xx(signedptr,longlong);
+ if (signedptr == NULL)
+ signedptr = type(INT, NULL, voidptype->size, voidptype->align, voidptype->u.sym);
+#undef xx
+ widechar = unsignedshort;
+ for (i = 0; i < argc; i++) {
+#define xx(name,type) \
+ if (strcmp(argv[i], "-wchar_t=" #name) == 0) \
+ widechar = type;
+ xx(unsigned_char,unsignedchar)
+ xx(unsigned_int,unsignedtype)
+ xx(unsigned_short,unsignedshort)
+ }
+#undef xx
+}
+void rmtypes(int lev) {
+ if (maxlevel >= lev) {
+ int i;
+ maxlevel = 0;
+ for (i = 0; i < NELEMS(typetable); i++) {
+ struct entry *tn, **tq = &typetable[i];
+ while ((tn = *tq) != NULL)
+ if (tn->type.op == FUNCTION)
+ tq = &tn->link;
+ else if (tn->type.u.sym && tn->type.u.sym->scope >= lev)
+ *tq = tn->link;
+ else {
+ if (tn->type.u.sym && tn->type.u.sym->scope > maxlevel)
+ maxlevel = tn->type.u.sym->scope;
+ tq = &tn->link;
+ }
+
+ }
+ }
+}
+Type ptr(Type ty) {
+ return type(POINTER, ty, IR->ptrmetric.size,
+ IR->ptrmetric.align, pointersym);
+}
+Type deref(Type ty) {
+ if (isptr(ty))
+ ty = ty->type;
+ else
+ error("type error: %s\n", "pointer expected");
+ return isenum(ty) ? unqual(ty)->type : ty;
+}
+Type array(Type ty, int n, int a) {
+ assert(ty);
+ if (isfunc(ty)) {
+ error("illegal type `array of %t'\n", ty);
+ return array(inttype, n, 0);
+ }
+ if (isarray(ty) && ty->size == 0)
+ error("missing array size\n");
+ if (ty->size == 0) {
+ if (unqual(ty) == voidtype)
+ error("illegal type `array of %t'\n", ty);
+ else if (Aflag >= 2)
+ warning("declaring type array of %t' is undefined\n", ty);
+
+ } else if (n > INT_MAX/ty->size) {
+ error("size of `array of %t' exceeds %d bytes\n",
+ ty, INT_MAX);
+ n = 1;
+ }
+ return type(ARRAY, ty, n*ty->size,
+ a ? a : ty->align, NULL);
+}
+Type atop(Type ty) {
+ if (isarray(ty))
+ return ptr(ty->type);
+ error("type error: %s\n", "array expected");
+ return ptr(ty);
+}
+Type qual(int op, Type ty) {
+ if (isarray(ty))
+ ty = type(ARRAY, qual(op, ty->type), ty->size,
+ ty->align, NULL);
+ else if (isfunc(ty))
+ warning("qualified function type ignored\n");
+ else if (isconst(ty) && op == CONST
+ || isvolatile(ty) && op == VOLATILE)
+ error("illegal type `%k %t'\n", op, ty);
+ else {
+ if (isqual(ty)) {
+ op += ty->op;
+ ty = ty->type;
+ }
+ ty = type(op, ty, ty->size, ty->align, NULL);
+ }
+ return ty;
+}
+Type func(Type ty, Type *proto, int style) {
+ if (ty && (isarray(ty) || isfunc(ty)))
+ error("illegal return type `%t'\n", ty);
+ ty = type(FUNCTION, ty, 0, 0, NULL);
+ ty->u.f.proto = proto;
+ ty->u.f.oldstyle = style;
+ return ty;
+}
+Type freturn(Type ty) {
+ if (isfunc(ty))
+ return ty->type;
+ error("type error: %s\n", "function expected");
+ return inttype;
+}
+int variadic(Type ty) {
+ if (isfunc(ty) && ty->u.f.proto) {
+ int i;
+ for (i = 0; ty->u.f.proto[i]; i++)
+ ;
+ return i > 1 && ty->u.f.proto[i-1] == voidtype;
+ }
+ return 0;
+}
+Type newstruct(int op, char *tag) {
+ Symbol p;
+
+ assert(tag);
+ if (*tag == 0)
+ tag = stringd(genlabel(1));
+ else
+ if ((p = lookup(tag, types)) != NULL && (p->scope == level
+ || p->scope == PARAM && level == PARAM+1)) {
+ if (p->type->op == op && !p->defined)
+ return p->type;
+ error("redefinition of `%s' previously defined at %w\n",
+ p->name, &p->src);
+ }
+ p = install(tag, &types, level, PERM);
+ p->type = type(op, NULL, 0, 0, p);
+ if (p->scope > maxlevel)
+ maxlevel = p->scope;
+ p->src = src;
+ return p->type;
+}
+Field newfield(char *name, Type ty, Type fty) {
+ Field p, *q = &ty->u.sym->u.s.flist;
+
+ if (name == NULL)
+ name = stringd(genlabel(1));
+ for (p = *q; p; q = &p->link, p = *q)
+ if (p->name == name)
+ error("duplicate field name `%s' in `%t'\n",
+ name, ty);
+ NEW0(p, PERM);
+ *q = p;
+ p->name = name;
+ p->type = fty;
+ if (xref) { /* omit */
+ if (ty->u.sym->u.s.ftab == NULL) /* omit */
+ ty->u.sym->u.s.ftab = table(NULL, level); /* omit */
+ install(name, &ty->u.sym->u.s.ftab, 0, PERM)->src = src;/* omit */
+ } /* omit */
+ return p;
+}
+int eqtype(Type ty1, Type ty2, int ret) {
+ if (ty1 == ty2)
+ return 1;
+ if (ty1->op != ty2->op)
+ return 0;
+ switch (ty1->op) {
+ case ENUM: case UNION: case STRUCT:
+ case UNSIGNED: case INT: case FLOAT:
+ return 0;
+ case POINTER: return eqtype(ty1->type, ty2->type, 1);
+ case VOLATILE: case CONST+VOLATILE:
+ case CONST: return eqtype(ty1->type, ty2->type, 1);
+ case ARRAY: if (eqtype(ty1->type, ty2->type, 1)) {
+ if (ty1->size == ty2->size)
+ return 1;
+ if (ty1->size == 0 || ty2->size == 0)
+ return ret;
+ }
+ return 0;
+ case FUNCTION: if (eqtype(ty1->type, ty2->type, 1)) {
+ Type *p1 = ty1->u.f.proto, *p2 = ty2->u.f.proto;
+ if (p1 == p2)
+ return 1;
+ if (p1 && p2) {
+ for ( ; *p1 && *p2; p1++, p2++)
+ if (eqtype(unqual(*p1), unqual(*p2), 1) == 0)
+ return 0;
+ if (*p1 == NULL && *p2 == NULL)
+ return 1;
+ } else {
+ if (variadic(p1 ? ty1 : ty2))
+ return 0;
+ if (p1 == NULL)
+ p1 = p2;
+ for ( ; *p1; p1++) {
+ Type ty = unqual(*p1);
+ if (promote(ty) != (isenum(ty) ? ty->type : ty))
+ return 0;
+ }
+ return 1;
+ }
+ }
+ return 0;
+ }
+ assert(0); return 0;
+}
+Type promote(Type ty) {
+ ty = unqual(ty);
+ switch (ty->op) {
+ case ENUM:
+ return inttype;
+ case INT:
+ if (ty->size < inttype->size)
+ return inttype;
+ break;
+ case UNSIGNED:
+ if (ty->size < inttype->size)
+ return inttype;
+ if (ty->size < unsignedtype->size)
+ return unsignedtype;
+ break;
+ case FLOAT:
+ if (ty->size < doubletype->size)
+ return doubletype;
+ }
+ return ty;
+}
+Type signedint(Type ty) {
+ if (ty->op == INT)
+ return ty;
+ assert(ty->op == UNSIGNED);
+#define xx(t) if (ty->size == t->size) return t
+ xx(inttype);
+ xx(longtype);
+ xx(longlong);
+#undef xx
+ assert(0); return NULL;
+}
+Type compose(Type ty1, Type ty2) {
+ if (ty1 == ty2)
+ return ty1;
+ assert(ty1->op == ty2->op);
+ switch (ty1->op) {
+ case POINTER:
+ return ptr(compose(ty1->type, ty2->type));
+ case CONST+VOLATILE:
+ return qual(CONST, qual(VOLATILE,
+ compose(ty1->type, ty2->type)));
+ case CONST: case VOLATILE:
+ return qual(ty1->op, compose(ty1->type, ty2->type));
+ case ARRAY: { Type ty = compose(ty1->type, ty2->type);
+ if (ty1->size && (ty1->type->size && ty2->size == 0 || ty1->size == ty2->size))
+ return array(ty, ty1->size/ty1->type->size, ty1->align);
+ if (ty2->size && ty2->type->size && ty1->size == 0)
+ return array(ty, ty2->size/ty2->type->size, ty2->align);
+ return array(ty, 0, 0); }
+ case FUNCTION: { Type *p1 = ty1->u.f.proto, *p2 = ty2->u.f.proto;
+ Type ty = compose(ty1->type, ty2->type);
+ List tlist = NULL;
+ if (p1 == NULL && p2 == NULL)
+ return func(ty, NULL, 1);
+ if (p1 && p2 == NULL)
+ return func(ty, p1, ty1->u.f.oldstyle);
+ if (p2 && p1 == NULL)
+ return func(ty, p2, ty2->u.f.oldstyle);
+ for ( ; *p1 && *p2; p1++, p2++) {
+ Type ty = compose(unqual(*p1), unqual(*p2));
+ if (isconst(*p1) || isconst(*p2))
+ ty = qual(CONST, ty);
+ if (isvolatile(*p1) || isvolatile(*p2))
+ ty = qual(VOLATILE, ty);
+ tlist = append(ty, tlist);
+ }
+ assert(*p1 == NULL && *p2 == NULL);
+ return func(ty, ltov(&tlist, PERM), 0); }
+ }
+ assert(0); return NULL;
+}
+int ttob(Type ty) {
+ switch (ty->op) {
+ case CONST: case VOLATILE: case CONST+VOLATILE:
+ return ttob(ty->type);
+ case VOID: case INT: case UNSIGNED: case FLOAT:
+ return ty->op + sizeop(ty->size);
+ case POINTER:
+ return POINTER + sizeop(voidptype->size);
+ case FUNCTION:
+ return POINTER + sizeop(funcptype->size);
+ case ARRAY: case STRUCT: case UNION:
+ return STRUCT;
+ case ENUM:
+ return INT + sizeop(inttype->size);
+ }
+ assert(0); return INT;
+}
+Type btot(int op, int size) {
+#define xx(ty) if (size == (ty)->size) return ty;
+ switch (optype(op)) {
+ case F:
+ xx(floattype);
+ xx(doubletype);
+ xx(longdouble);
+ assert(0); return 0;
+ case I:
+ if (chartype->op == INT)
+ xx(chartype);
+ xx(signedchar);
+ xx(shorttype);
+ xx(inttype);
+ xx(longtype);
+ xx(longlong);
+ assert(0); return 0;
+ case U:
+ if (chartype->op == UNSIGNED)
+ xx(chartype);
+ xx(unsignedchar);
+ xx(unsignedshort);
+ xx(unsignedtype);
+ xx(unsignedlong);
+ xx(unsignedlonglong);
+ assert(0); return 0;
+ case P:
+ xx(voidptype);
+ xx(funcptype);
+ assert(0); return 0;
+ }
+#undef xx
+ assert(0); return 0;
+}
+int hasproto(Type ty) {
+ if (ty == 0)
+ return 1;
+ switch (ty->op) {
+ case CONST: case VOLATILE: case CONST+VOLATILE: case POINTER:
+ case ARRAY:
+ return hasproto(ty->type);
+ case FUNCTION:
+ return hasproto(ty->type) && ty->u.f.proto;
+ case STRUCT: case UNION:
+ case VOID: case FLOAT: case ENUM: case INT: case UNSIGNED:
+ return 1;
+ }
+ assert(0); return 0;
+}
+/* fieldlist - construct a flat list of fields in type ty */
+Field fieldlist(Type ty) {
+ return ty->u.sym->u.s.flist;
+}
+
+/* fieldref - find field name of type ty, return entry */
+Field fieldref(const char *name, Type ty) {
+ Field p = isfield(name, unqual(ty)->u.sym->u.s.flist);
+
+ if (p && xref) {
+ Symbol q;
+ assert(unqual(ty)->u.sym->u.s.ftab);
+ q = lookup(name, unqual(ty)->u.sym->u.s.ftab);
+ assert(q);
+ use(q, src);
+ }
+ return p;
+}
+
+/* ftype - return a function type for rty function (ty,...)' */
+Type ftype(Type rty, Type ty) {
+ List list = append(ty, NULL);
+
+ list = append(voidtype, list);
+ return func(rty, ltov(&list, PERM), 0);
+}
+
+/* isfield - if name is a field in flist, return pointer to the field structure */
+static Field isfield(const char *name, Field flist) {
+ for ( ; flist; flist = flist->link)
+ if (flist->name == name)
+ break;
+ return flist;
+}
+
+/* outtype - output type ty */
+void outtype(Type ty, FILE *f) {
+ switch (ty->op) {
+ case CONST+VOLATILE: case CONST: case VOLATILE:
+ fprint(f, "%k %t", ty->op, ty->type);
+ break;
+ case STRUCT: case UNION: case ENUM:
+ assert(ty->u.sym);
+ if (ty->size == 0)
+ fprint(f, "incomplete ");
+ assert(ty->u.sym->name);
+ if (*ty->u.sym->name >= '1' && *ty->u.sym->name <= '9') {
+ Symbol p = findtype(ty);
+ if (p == 0)
+ fprint(f, "%k defined at %w", ty->op, &ty->u.sym->src);
+ else
+ fprint(f, p->name);
+ } else {
+ fprint(f, "%k %s", ty->op, ty->u.sym->name);
+ if (ty->size == 0)
+ fprint(f, " defined at %w", &ty->u.sym->src);
+ }
+ break;
+ case VOID: case FLOAT: case INT: case UNSIGNED:
+ fprint(f, ty->u.sym->name);
+ break;
+ case POINTER:
+ fprint(f, "pointer to %t", ty->type);
+ break;
+ case FUNCTION:
+ fprint(f, "%t function", ty->type);
+ if (ty->u.f.proto && ty->u.f.proto[0]) {
+ int i;
+ fprint(f, "(%t", ty->u.f.proto[0]);
+ for (i = 1; ty->u.f.proto[i]; i++)
+ if (ty->u.f.proto[i] == voidtype)
+ fprint(f, ",...");
+ else
+ fprint(f, ",%t", ty->u.f.proto[i]);
+ fprint(f, ")");
+ } else if (ty->u.f.proto && ty->u.f.proto[0] == 0)
+ fprint(f, "(void)");
+
+ break;
+ case ARRAY:
+ if (ty->size > 0 && ty->type && ty->type->size > 0) {
+ fprint(f, "array %d", ty->size/ty->type->size);
+ while (ty->type && isarray(ty->type) && ty->type->type->size > 0) {
+ ty = ty->type;
+ fprint(f, ",%d", ty->size/ty->type->size);
+ }
+ } else
+ fprint(f, "incomplete array");
+ if (ty->type)
+ fprint(f, " of %t", ty->type);
+ break;
+ default: assert(0);
+ }
+}
+
+/* printdecl - output a C declaration for symbol p of type ty */
+void printdecl(Symbol p, Type ty) {
+ switch (p->sclass) {
+ case AUTO:
+ fprint(stderr, "%s;\n", typestring(ty, p->name));
+ break;
+ case STATIC: case EXTERN:
+ fprint(stderr, "%k %s;\n", p->sclass, typestring(ty, p->name));
+ break;
+ case TYPEDEF: case ENUM:
+ break;
+ default: assert(0);
+ }
+}
+
+/* printproto - output a prototype declaration for function p */
+void printproto(Symbol p, Symbol callee[]) {
+ if (p->type->u.f.proto)
+ printdecl(p, p->type);
+ else {
+ int i;
+ List list = 0;
+ if (callee[0] == 0)
+ list = append(voidtype, list);
+ else
+ for (i = 0; callee[i]; i++)
+ list = append(callee[i]->type, list);
+ printdecl(p, func(freturn(p->type), ltov(&list, PERM), 0));
+ }
+}
+
+/* prtype - print details of type ty on f with given indent */
+static void prtype(Type ty, FILE *f, int indent, unsigned mark) {
+ switch (ty->op) {
+ default:
+ fprint(f, "(%d %d %d [%p])", ty->op, ty->size, ty->align, ty->u.sym);
+ break;
+ case FLOAT: case INT: case UNSIGNED: case VOID:
+ fprint(f, "(%k %d %d [\"%s\"])", ty->op, ty->size, ty->align, ty->u.sym->name);
+ break;
+ case CONST+VOLATILE: case CONST: case VOLATILE: case POINTER: case ARRAY:
+ fprint(f, "(%k %d %d ", ty->op, ty->size, ty->align);
+ prtype(ty->type, f, indent+1, mark);
+ fprint(f, ")");
+ break;
+ case STRUCT: case UNION:
+ fprint(f, "(%k %d %d [\"%s\"]", ty->op, ty->size, ty->align, ty->u.sym->name);
+ if (ty->x.marked != mark) {
+ Field p;
+ ty->x.marked = mark;
+ for (p = ty->u.sym->u.s.flist; p; p = p->link) {
+ fprint(f, "\n%I", indent+1);
+ prtype(p->type, f, indent+1, mark);
+ fprint(f, " %s@%d", p->name, p->offset);
+ if (p->lsb)
+ fprint(f, ":%d..%d",
+ fieldsize(p) + fieldright(p), fieldright(p));
+ }
+ fprint(f, "\n%I", indent);
+ }
+ fprint(f, ")");
+ break;
+ case ENUM:
+ fprint(f, "(%k %d %d [\"%s\"]", ty->op, ty->size, ty->align, ty->u.sym->name);
+ if (ty->x.marked != mark) {
+ int i;
+ Symbol *p = ty->u.sym->u.idlist;
+ ty->x.marked = mark;
+ for (i = 0; p[i] != NULL; i++)
+ fprint(f, "%I%s=%d\n", indent+1, p[i]->name, p[i]->u.value);
+ }
+ fprint(f, ")");
+ break;
+ case FUNCTION:
+ fprint(f, "(%k %d %d ", ty->op, ty->size, ty->align);
+ prtype(ty->type, f, indent+1, mark);
+ if (ty->u.f.proto) {
+ int i;
+ fprint(f, "\n%I{", indent+1);
+ for (i = 0; ty->u.f.proto[i]; i++) {
+ if (i > 0)
+ fprint(f, "%I", indent+2);
+ prtype(ty->u.f.proto[i], f, indent+2, mark);
+ fprint(f, "\n");
+ }
+ fprint(f, "%I}", indent+1);
+ }
+ fprint(f, ")");
+ break;
+ }
+}
+
+/* printtype - print details of type ty on fd */
+void printtype(Type ty, int fd) {
+ static unsigned mark;
+ prtype(ty, fd == 1 ? stdout : stderr, 0, ++mark);
+ fprint(fd == 1 ? stdout : stderr, "\n");
+}
+
+/* typestring - return ty as C declaration for str, which may be "" */
+char *typestring(Type ty, char *str) {
+ for ( ; ty; ty = ty->type) {
+ Symbol p;
+ switch (ty->op) {
+ case CONST+VOLATILE: case CONST: case VOLATILE:
+ if (isptr(ty->type))
+ str = stringf("%k %s", ty->op, str);
+ else
+ return stringf("%k %s", ty->op, typestring(ty->type, str));
+ break;
+ case STRUCT: case UNION: case ENUM:
+ assert(ty->u.sym);
+ if ((p = findtype(ty)) != NULL)
+ return *str ? stringf("%s %s", p->name, str) : p->name;
+ if (*ty->u.sym->name >= '1' && *ty->u.sym->name <= '9')
+ warning("unnamed %k in prototype\n", ty->op);
+ if (*str)
+ return stringf("%k %s %s", ty->op, ty->u.sym->name, str);
+ else
+ return stringf("%k %s", ty->op, ty->u.sym->name);
+ case VOID: case FLOAT: case INT: case UNSIGNED:
+ return *str ? stringf("%s %s", ty->u.sym->name, str) : ty->u.sym->name;
+ case POINTER:
+ if (!ischar(ty->type) && (p = findtype(ty)) != NULL)
+ return *str ? stringf("%s %s", p->name, str) : p->name;
+ str = stringf(isarray(ty->type) || isfunc(ty->type) ? "(*%s)" : "*%s", str);
+ break;
+ case FUNCTION:
+ if ((p = findtype(ty)) != NULL)
+ return *str ? stringf("%s %s", p->name, str) : p->name;
+ if (ty->u.f.proto == 0)
+ str = stringf("%s()", str);
+ else if (ty->u.f.proto[0]) {
+ int i;
+ str = stringf("%s(%s", str, typestring(ty->u.f.proto[0], ""));
+ for (i = 1; ty->u.f.proto[i]; i++)
+ if (ty->u.f.proto[i] == voidtype)
+ str = stringf("%s, ...", str);
+ else
+ str = stringf("%s, %s", str, typestring(ty->u.f.proto[i], ""));
+ str = stringf("%s)", str);
+ } else
+ str = stringf("%s(void)", str);
+ break;
+ case ARRAY:
+ if ((p = findtype(ty)) != NULL)
+ return *str ? stringf("%s %s", p->name, str) : p->name;
+ if (ty->type && ty->type->size > 0)
+ str = stringf("%s[%d]", str, ty->size/ty->type->size);
+ else
+ str = stringf("%s[]", str);
+ break;
+ default: assert(0);
+ }
+ }
+ assert(0); return 0;
+}
+
diff --git a/lcc/src/x86.md b/lcc/src/x86.md
index 7e8b84f..6c4e1c4 100755
--- a/lcc/src/x86.md
+++ b/lcc/src/x86.md
@@ -1,998 +1,998 @@
-%{
-enum { EAX=0, ECX=1, EDX=2, EBX=3, ESI=6, EDI=7 };
-#include "c.h"
-#define NODEPTR_TYPE Node
-#define OP_LABEL(p) ((p)->op)
-#define LEFT_CHILD(p) ((p)->kids[0])
-#define RIGHT_CHILD(p) ((p)->kids[1])
-#define STATE_LABEL(p) ((p)->x.state)
-static void address(Symbol, Symbol, long);
-static void blkfetch(int, int, int, int);
-static void blkloop(int, int, int, int, int, int[]);
-static void blkstore(int, int, int, int);
-static void defaddress(Symbol);
-static void defconst(int, int, Value);
-static void defstring(int, char *);
-static void defsymbol(Symbol);
-static void doarg(Node);
-static void emit2(Node);
-static void export(Symbol);
-static void clobber(Node);
-static void function(Symbol, Symbol [], Symbol [], int);
-static void global(Symbol);
-static void import(Symbol);
-static void local(Symbol);
-static void progbeg(int, char **);
-static void progend(void);
-static void segment(int);
-static void space(int);
-static void target(Node);
-extern int ckstack(Node, int);
-extern int memop(Node);
-extern int sametree(Node, Node);
-static Symbol charreg[32], shortreg[32], intreg[32];
-static Symbol fltreg[32];
-
-static Symbol charregw, shortregw, intregw, fltregw;
-
-static int cseg;
-
-static Symbol quo, rem;
-
-%}
-%start stmt
-%term CNSTF4=4113
-%term CNSTF8=8209
-%term CNSTF16=16401
-%term CNSTI1=1045
-%term CNSTI2=2069
-%term CNSTI4=4117
-%term CNSTI8=8213
-%term CNSTP4=4119
-%term CNSTP8=8215
-%term CNSTU1=1046
-%term CNSTU2=2070
-%term CNSTU4=4118
-%term CNSTU8=8214
-
-%term ARGB=41
-%term ARGF4=4129
-%term ARGF8=8225
-%term ARGF16=16417
-%term ARGI4=4133
-%term ARGI8=8229
-%term ARGP4=4135
-%term ARGP8=8231
-%term ARGU4=4134
-%term ARGU8=8230
-
-%term ASGNB=57
-%term ASGNF4=4145
-%term ASGNF8=8241
-%term ASGNF16=16433
-%term ASGNI1=1077
-%term ASGNI2=2101
-%term ASGNI4=4149
-%term ASGNI8=8245
-%term ASGNP4=4151
-%term ASGNP8=8247
-%term ASGNU1=1078
-%term ASGNU2=2102
-%term ASGNU4=4150
-%term ASGNU8=8246
-
-%term INDIRB=73
-%term INDIRF4=4161
-%term INDIRF8=8257
-%term INDIRF16=16449
-%term INDIRI1=1093
-%term INDIRI2=2117
-%term INDIRI4=4165
-%term INDIRI8=8261
-%term INDIRP4=4167
-%term INDIRP8=8263
-%term INDIRU1=1094
-%term INDIRU2=2118
-%term INDIRU4=4166
-%term INDIRU8=8262
-
-%term CVFF4=4209
-%term CVFF8=8305
-%term CVFF16=16497
-%term CVFI4=4213
-%term CVFI8=8309
-
-%term CVIF4=4225
-%term CVIF8=8321
-%term CVIF16=16513
-%term CVII1=1157
-%term CVII2=2181
-%term CVII4=4229
-%term CVII8=8325
-%term CVIU1=1158
-%term CVIU2=2182
-%term CVIU4=4230
-%term CVIU8=8326
-
-%term CVPP4=4247
-%term CVPP8=8343
-%term CVPP16=16535
-%term CVPU4=4246
-%term CVPU8=8342
-
-%term CVUI1=1205
-%term CVUI2=2229
-%term CVUI4=4277
-%term CVUI8=8373
-%term CVUP4=4279
-%term CVUP8=8375
-%term CVUP16=16567
-%term CVUU1=1206
-%term CVUU2=2230
-%term CVUU4=4278
-%term CVUU8=8374
-
-%term NEGF4=4289
-%term NEGF8=8385
-%term NEGF16=16577
-%term NEGI4=4293
-%term NEGI8=8389
-
-%term CALLB=217
-%term CALLF4=4305
-%term CALLF8=8401
-%term CALLF16=16593
-%term CALLI4=4309
-%term CALLI8=8405
-%term CALLP4=4311
-%term CALLP8=8407
-%term CALLU4=4310
-%term CALLU8=8406
-%term CALLV=216
-
-%term RETF4=4337
-%term RETF8=8433
-%term RETF16=16625
-%term RETI4=4341
-%term RETI8=8437
-%term RETP4=4343
-%term RETP8=8439
-%term RETU4=4342
-%term RETU8=8438
-%term RETV=248
-
-%term ADDRGP4=4359
-%term ADDRGP8=8455
-
-%term ADDRFP4=4375
-%term ADDRFP8=8471
-
-%term ADDRLP4=4391
-%term ADDRLP8=8487
-
-%term ADDF4=4401
-%term ADDF8=8497
-%term ADDF16=16689
-%term ADDI4=4405
-%term ADDI8=8501
-%term ADDP4=4407
-%term ADDP8=8503
-%term ADDU4=4406
-%term ADDU8=8502
-
-%term SUBF4=4417
-%term SUBF8=8513
-%term SUBF16=16705
-%term SUBI4=4421
-%term SUBI8=8517
-%term SUBP4=4423
-%term SUBP8=8519
-%term SUBU4=4422
-%term SUBU8=8518
-
-%term LSHI4=4437
-%term LSHI8=8533
-%term LSHU4=4438
-%term LSHU8=8534
-
-%term MODI4=4453
-%term MODI8=8549
-%term MODU4=4454
-%term MODU8=8550
-
-%term RSHI4=4469
-%term RSHI8=8565
-%term RSHU4=4470
-%term RSHU8=8566
-
-%term BANDI4=4485
-%term BANDI8=8581
-%term BANDU4=4486
-%term BANDU8=8582
-
-%term BCOMI4=4501
-%term BCOMI8=8597
-%term BCOMU4=4502
-%term BCOMU8=8598
-
-%term BORI4=4517
-%term BORI8=8613
-%term BORU4=4518
-%term BORU8=8614
-
-%term BXORI4=4533
-%term BXORI8=8629
-%term BXORU4=4534
-%term BXORU8=8630
-
-%term DIVF4=4545
-%term DIVF8=8641
-%term DIVF16=16833
-%term DIVI4=4549
-%term DIVI8=8645
-%term DIVU4=4550
-%term DIVU8=8646
-
-%term MULF4=4561
-%term MULF8=8657
-%term MULF16=16849
-%term MULI4=4565
-%term MULI8=8661
-%term MULU4=4566
-%term MULU8=8662
-
-%term EQF4=4577
-%term EQF8=8673
-%term EQF16=16865
-%term EQI4=4581
-%term EQI8=8677
-%term EQU4=4582
-%term EQU8=8678
-
-%term GEF4=4593
-%term GEF8=8689
-%term GEI4=4597
-%term GEI8=8693
-%term GEI16=16885
-%term GEU4=4598
-%term GEU8=8694
-
-%term GTF4=4609
-%term GTF8=8705
-%term GTF16=16897
-%term GTI4=4613
-%term GTI8=8709
-%term GTU4=4614
-%term GTU8=8710
-
-%term LEF4=4625
-%term LEF8=8721
-%term LEF16=16913
-%term LEI4=4629
-%term LEI8=8725
-%term LEU4=4630
-%term LEU8=8726
-
-%term LTF4=4641
-%term LTF8=8737
-%term LTF16=16929
-%term LTI4=4645
-%term LTI8=8741
-%term LTU4=4646
-%term LTU8=8742
-
-%term NEF4=4657
-%term NEF8=8753
-%term NEF16=16945
-%term NEI4=4661
-%term NEI8=8757
-%term NEU4=4662
-%term NEU8=8758
-
-%term JUMPV=584
-
-%term LABELV=600
-
-%term LOADB=233
-%term LOADF4=4321
-%term LOADF8=8417
-%term LOADF16=16609
-%term LOADI1=1253
-%term LOADI2=2277
-%term LOADI4=4325
-%term LOADI8=8421
-%term LOADP4=4327
-%term LOADP8=8423
-%term LOADU1=1254
-%term LOADU2=2278
-%term LOADU4=4326
-%term LOADU8=8422
-
-%term VREGP=711
-%%
-reg: INDIRI1(VREGP) "# read register\n"
-reg: INDIRU1(VREGP) "# read register\n"
-
-reg: INDIRI2(VREGP) "# read register\n"
-reg: INDIRU2(VREGP) "# read register\n"
-
-reg: INDIRF4(VREGP) "# read register\n"
-reg: INDIRI4(VREGP) "# read register\n"
-reg: INDIRP4(VREGP) "# read register\n"
-reg: INDIRU4(VREGP) "# read register\n"
-
-reg: INDIRF8(VREGP) "# read register\n"
-reg: INDIRI8(VREGP) "# read register\n"
-reg: INDIRP8(VREGP) "# read register\n"
-reg: INDIRU8(VREGP) "# read register\n"
-
-stmt: ASGNI1(VREGP,reg) "# write register\n"
-stmt: ASGNU1(VREGP,reg) "# write register\n"
-
-stmt: ASGNI2(VREGP,reg) "# write register\n"
-stmt: ASGNU2(VREGP,reg) "# write register\n"
-
-stmt: ASGNF4(VREGP,reg) "# write register\n"
-stmt: ASGNI4(VREGP,reg) "# write register\n"
-stmt: ASGNP4(VREGP,reg) "# write register\n"
-stmt: ASGNU4(VREGP,reg) "# write register\n"
-
-stmt: ASGNF8(VREGP,reg) "# write register\n"
-stmt: ASGNI8(VREGP,reg) "# write register\n"
-stmt: ASGNP8(VREGP,reg) "# write register\n"
-stmt: ASGNU8(VREGP,reg) "# write register\n"
-con: CNSTI1 "%a"
-con: CNSTU1 "%a"
-
-con: CNSTI2 "%a"
-con: CNSTU2 "%a"
-
-con: CNSTI4 "%a"
-con: CNSTU4 "%a"
-con: CNSTP4 "%a"
-
-con: CNSTI8 "%a"
-con: CNSTU8 "%a"
-con: CNSTP8 "%a"
-stmt: reg ""
-acon: ADDRGP4 "(%a)"
-acon: con "(%0)"
-base: ADDRGP4 "(%a)"
-base: reg "[%0]"
-base: ADDI4(reg,acon) "%1[%0]"
-base: ADDP4(reg,acon) "%1[%0]"
-base: ADDU4(reg,acon) "%1[%0]"
-base: ADDRFP4 "(%a)[ebp]"
-base: ADDRLP4 "(%a)[ebp]"
-index: reg "%0"
-index: LSHI4(reg,con1) "%0*2"
-index: LSHI4(reg,con2) "%0*4"
-index: LSHI4(reg,con3) "%0*8"
-
-con1: CNSTI4 "1" range(a, 1, 1)
-con1: CNSTU4 "1" range(a, 1, 1)
-con2: CNSTI4 "2" range(a, 2, 2)
-con2: CNSTU4 "2" range(a, 2, 2)
-con3: CNSTI4 "3" range(a, 3, 3)
-con3: CNSTU4 "3" range(a, 3, 3)
-index: LSHU4(reg,con1) "%0*2"
-index: LSHU4(reg,con2) "%0*4"
-index: LSHU4(reg,con3) "%0*8"
-addr: base "%0"
-addr: ADDI4(index,base) "%1[%0]"
-addr: ADDP4(index,base) "%1[%0]"
-addr: ADDU4(index,base) "%1[%0]"
-addr: index "[%0]"
-mem: INDIRI1(addr) "byte ptr %0"
-mem: INDIRI2(addr) "word ptr %0"
-mem: INDIRI4(addr) "dword ptr %0"
-mem: INDIRU1(addr) "byte ptr %0"
-mem: INDIRU2(addr) "word ptr %0"
-mem: INDIRU4(addr) "dword ptr %0"
-mem: INDIRP4(addr) "dword ptr %0"
-rc: reg "%0"
-rc: con "%0"
-
-mr: reg "%0"
-mr: mem "%0"
-
-mrc0: mem "%0"
-mrc0: rc "%0"
-mrc1: mem "%0" 1
-mrc1: rc "%0"
-
-mrc3: mem "%0" 3
-mrc3: rc "%0"
-reg: addr "lea %c,%0\n" 1
-reg: mrc0 "mov %c,%0\n" 1
-reg: LOADI1(reg) "# move\n" 1
-reg: LOADI2(reg) "# move\n" 1
-reg: LOADI4(reg) "# move\n" move(a)
-reg: LOADU1(reg) "# move\n" 1
-reg: LOADU2(reg) "# move\n" 1
-reg: LOADU4(reg) "# move\n" move(a)
-reg: LOADP4(reg) "# move\n" move(a)
-reg: ADDI4(reg,mrc1) "?mov %c,%0\nadd %c,%1\n" 1
-reg: ADDP4(reg,mrc1) "?mov %c,%0\nadd %c,%1\n" 1
-reg: ADDU4(reg,mrc1) "?mov %c,%0\nadd %c,%1\n" 1
-reg: SUBI4(reg,mrc1) "?mov %c,%0\nsub %c,%1\n" 1
-reg: SUBP4(reg,mrc1) "?mov %c,%0\nsub %c,%1\n" 1
-reg: SUBU4(reg,mrc1) "?mov %c,%0\nsub %c,%1\n" 1
-reg: BANDI4(reg,mrc1) "?mov %c,%0\nand %c,%1\n" 1
-reg: BORI4(reg,mrc1) "?mov %c,%0\nor %c,%1\n" 1
-reg: BXORI4(reg,mrc1) "?mov %c,%0\nxor %c,%1\n" 1
-reg: BANDU4(reg,mrc1) "?mov %c,%0\nand %c,%1\n" 1
-reg: BORU4(reg,mrc1) "?mov %c,%0\nor %c,%1\n" 1
-reg: BXORU4(reg,mrc1) "?mov %c,%0\nxor %c,%1\n" 1
-stmt: ASGNI4(addr,ADDI4(mem,con1)) "inc %1\n" memop(a)
-stmt: ASGNI4(addr,ADDU4(mem,con1)) "inc %1\n" memop(a)
-stmt: ASGNP4(addr,ADDP4(mem,con1)) "inc %1\n" memop(a)
-stmt: ASGNI4(addr,SUBI4(mem,con1)) "dec %1\n" memop(a)
-stmt: ASGNI4(addr,SUBU4(mem,con1)) "dec %1\n" memop(a)
-stmt: ASGNP4(addr,SUBP4(mem,con1)) "dec %1\n" memop(a)
-stmt: ASGNI4(addr,ADDI4(mem,rc)) "add %1,%2\n" memop(a)
-stmt: ASGNI4(addr,SUBI4(mem,rc)) "sub %1,%2\n" memop(a)
-stmt: ASGNU4(addr,ADDU4(mem,rc)) "add %1,%2\n" memop(a)
-stmt: ASGNU4(addr,SUBU4(mem,rc)) "sub %1,%2\n" memop(a)
-
-stmt: ASGNI4(addr,BANDI4(mem,rc)) "and %1,%2\n" memop(a)
-stmt: ASGNI4(addr,BORI4(mem,rc)) "or %1,%2\n" memop(a)
-stmt: ASGNI4(addr,BXORI4(mem,rc)) "xor %1,%2\n" memop(a)
-stmt: ASGNU4(addr,BANDU4(mem,rc)) "and %1,%2\n" memop(a)
-stmt: ASGNU4(addr,BORU4(mem,rc)) "or %1,%2\n" memop(a)
-stmt: ASGNU4(addr,BXORU4(mem,rc)) "xor %1,%2\n" memop(a)
-reg: BCOMI4(reg) "?mov %c,%0\nnot %c\n" 2
-reg: BCOMU4(reg) "?mov %c,%0\nnot %c\n" 2
-reg: NEGI4(reg) "?mov %c,%0\nneg %c\n" 2
-
-stmt: ASGNI4(addr,BCOMI4(mem)) "not %1\n" memop(a)
-stmt: ASGNU4(addr,BCOMU4(mem)) "not %1\n" memop(a)
-stmt: ASGNI4(addr,NEGI4(mem)) "neg %1\n" memop(a)
-reg: LSHI4(reg,con5) "?mov %c,%0\nsal %c,%1\n" 2
-reg: LSHU4(reg,con5) "?mov %c,%0\nshl %c,%1\n" 2
-reg: RSHI4(reg,con5) "?mov %c,%0\nsar %c,%1\n" 2
-reg: RSHU4(reg,con5) "?mov %c,%0\nshr %c,%1\n" 2
-
-stmt: ASGNI4(addr,LSHI4(mem,con5)) "sal %1,%2\n" memop(a)
-stmt: ASGNI4(addr,LSHU4(mem,con5)) "shl %1,%2\n" memop(a)
-stmt: ASGNI4(addr,RSHI4(mem,con5)) "sar %1,%2\n" memop(a)
-stmt: ASGNI4(addr,RSHU4(mem,con5)) "shr %1,%2\n" memop(a)
-
-con5: CNSTI4 "%a" range(a, 0, 31)
-
-reg: LSHI4(reg,reg) "?mov %c,%0\nmov ecx,%1\nsal %c,cl\n" 3
-reg: LSHU4(reg,reg) "?mov %c,%0\nmov ecx,%1\nshl %c,cl\n" 2
-reg: RSHI4(reg,reg) "?mov %c,%0\nmov ecx,%1\nsar %c,cl\n" 2
-reg: RSHU4(reg,reg) "?mov %c,%0\nmov ecx,%1\nshr %c,cl\n" 2
-reg: MULI4(reg,mrc3) "?mov %c,%0\nimul %c,%1\n" 14
-reg: MULI4(con,mr) "imul %c,%1,%0\n" 13
-reg: MULU4(reg,mr) "mul %1\n" 13
-reg: DIVU4(reg,reg) "xor edx,edx\ndiv %1\n"
-reg: MODU4(reg,reg) "xor edx,edx\ndiv %1\n"
-reg: DIVI4(reg,reg) "cdq\nidiv %1\n"
-reg: MODI4(reg,reg) "cdq\nidiv %1\n"
-reg: CVPU4(reg) "mov %c,%0\n" move(a)
-reg: CVUP4(reg) "mov %c,%0\n" move(a)
-reg: CVII4(INDIRI1(addr)) "movsx %c,byte ptr %0\n" 3
-reg: CVII4(INDIRI2(addr)) "movsx %c,word ptr %0\n" 3
-reg: CVUU4(INDIRU1(addr)) "movzx %c,byte ptr %0\n" 3
-reg: CVUU4(INDIRU2(addr)) "movzx %c,word ptr %0\n" 3
-reg: CVII4(reg) "# extend\n" 3
-reg: CVIU4(reg) "# extend\n" 3
-reg: CVUI4(reg) "# extend\n" 3
-reg: CVUU4(reg) "# extend\n" 3
-
-reg: CVII1(reg) "# truncate\n" 1
-reg: CVII2(reg) "# truncate\n" 1
-reg: CVUU1(reg) "# truncate\n" 1
-reg: CVUU2(reg) "# truncate\n" 1
-stmt: ASGNI1(addr,rc) "mov byte ptr %0,%1\n" 1
-stmt: ASGNI2(addr,rc) "mov word ptr %0,%1\n" 1
-stmt: ASGNI4(addr,rc) "mov dword ptr %0,%1\n" 1
-stmt: ASGNU1(addr,rc) "mov byte ptr %0,%1\n" 1
-stmt: ASGNU2(addr,rc) "mov word ptr %0,%1\n" 1
-stmt: ASGNU4(addr,rc) "mov dword ptr %0,%1\n" 1
-stmt: ASGNP4(addr,rc) "mov dword ptr %0,%1\n" 1
-stmt: ARGI4(mrc3) "push %0\n" 1
-stmt: ARGU4(mrc3) "push %0\n" 1
-stmt: ARGP4(mrc3) "push %0\n" 1
-stmt: ASGNB(reg,INDIRB(reg)) "mov ecx,%a\nrep movsb\n"
-stmt: ARGB(INDIRB(reg)) "sub esp,%a\nmov edi,esp\nmov ecx,%a\nrep movsb\n"
-
-memf: INDIRF8(addr) "qword ptr %0"
-memf: INDIRF4(addr) "dword ptr %0"
-memf: CVFF8(INDIRF4(addr)) "dword ptr %0"
-reg: memf "fld %0\n" 3
-stmt: ASGNF8(addr,reg) "fstp qword ptr %0\n" 7
-stmt: ASGNF4(addr,reg) "fstp dword ptr %0\n" 7
-stmt: ASGNF4(addr,CVFF4(reg)) "fstp dword ptr %0\n" 7
-stmt: ARGF8(reg) "sub esp,8\nfstp qword ptr [esp]\n"
-stmt: ARGF4(reg) "sub esp,4\nfstp dword ptr [esp]\n"
-reg: NEGF8(reg) "fchs\n"
-reg: NEGF4(reg) "fchs\n"
-flt: memf " %0"
-flt: reg "p st(1),st"
-reg: ADDF8(reg,flt) "fadd%1\n"
-reg: ADDF4(reg,flt) "fadd%1\n"
-reg: DIVF8(reg,flt) "fdiv%1\n"
-reg: DIVF4(reg,flt) "fdiv%1\n"
-reg: MULF8(reg,flt) "fmul%1\n"
-reg: MULF4(reg,flt) "fmul%1\n"
-reg: SUBF8(reg,flt) "fsub%1\n"
-reg: SUBF4(reg,flt) "fsub%1\n"
-reg: CVFF8(reg) "# CVFF8\n"
-reg: CVFF4(reg) "sub esp,4\nfstp dword ptr 0[esp]\nfld dword ptr 0[esp]\nadd esp,4\n" 12
-
-reg: CVFI4(reg) "call __ftol\n" 31
-reg: CVIF8(INDIRI4(addr)) "fild dword ptr %0\n" 10
-reg: CVIF4(reg) "push %0\nfild dword ptr 0[esp]\nadd esp,4\n" 12
-
-reg: CVIF8(reg) "push %0\nfild dword ptr 0[esp]\nadd esp,4\n" 12
-
-addrj: ADDRGP4 "%a"
-addrj: reg "%0" 2
-addrj: mem "%0" 2
-
-stmt: JUMPV(addrj) "jmp %0\n" 3
-stmt: LABELV "%a:\n"
-stmt: EQI4(mem,rc) "cmp %0,%1\nje %a\n" 5
-stmt: GEI4(mem,rc) "cmp %0,%1\njge %a\n" 5
-stmt: GTI4(mem,rc) "cmp %0,%1\njg %a\n" 5
-stmt: LEI4(mem,rc) "cmp %0,%1\njle %a\n" 5
-stmt: LTI4(mem,rc) "cmp %0,%1\njl %a\n" 5
-stmt: NEI4(mem,rc) "cmp %0,%1\njne %a\n" 5
-stmt: GEU4(mem,rc) "cmp %0,%1\njae %a\n" 5
-stmt: GTU4(mem,rc) "cmp %0,%1\nja %a\n" 5
-stmt: LEU4(mem,rc) "cmp %0,%1\njbe %a\n" 5
-stmt: LTU4(mem,rc) "cmp %0,%1\njb %a\n" 5
-stmt: EQI4(reg,mrc1) "cmp %0,%1\nje %a\n" 4
-stmt: GEI4(reg,mrc1) "cmp %0,%1\njge %a\n" 4
-stmt: GTI4(reg,mrc1) "cmp %0,%1\njg %a\n" 4
-stmt: LEI4(reg,mrc1) "cmp %0,%1\njle %a\n" 4
-stmt: LTI4(reg,mrc1) "cmp %0,%1\njl %a\n" 4
-stmt: NEI4(reg,mrc1) "cmp %0,%1\njne %a\n" 4
-
-stmt: EQU4(reg,mrc1) "cmp %0,%1\nje %a\n" 4
-stmt: GEU4(reg,mrc1) "cmp %0,%1\njae %a\n" 4
-stmt: GTU4(reg,mrc1) "cmp %0,%1\nja %a\n" 4
-stmt: LEU4(reg,mrc1) "cmp %0,%1\njbe %a\n" 4
-stmt: LTU4(reg,mrc1) "cmp %0,%1\njb %a\n" 4
-stmt: NEU4(reg,mrc1) "cmp %0,%1\njne %a\n" 4
-cmpf: memf " %0"
-cmpf: reg "p"
-stmt: EQF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\nje %a\n"
-stmt: GEF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njbe %a\n"
-stmt: GTF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njb %a\n"
-stmt: LEF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njae %a\n"
-stmt: LTF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\nja %a\n"
-stmt: NEF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njne %a\n"
-
-stmt: EQF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\nje %a\n"
-stmt: GEF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njbe %a\n"
-stmt: GTF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njb %a\n"
-stmt: LEF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njae %a\n"
-stmt: LTF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\nja %a\n"
-stmt: NEF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njne %a\n"
-reg: CALLI4(addrj) "call %0\nadd esp,%a\n"
-reg: CALLU4(addrj) "call %0\nadd esp,%a\n"
-reg: CALLP4(addrj) "call %0\nadd esp,%a\n"
-stmt: CALLV(addrj) "call %0\nadd esp,%a\n"
-reg: CALLF4(addrj) "call %0\nadd esp,%a\n"
-reg: CALLF8(addrj) "call %0\nadd esp,%a\n"
-stmt: CALLF4(addrj) "call %0\nadd esp,%a\nfstp\n"
-stmt: CALLF8(addrj) "call %0\nadd esp,%a\nfstp\n"
-
-stmt: RETI4(reg) "# ret\n"
-stmt: RETU4(reg) "# ret\n"
-stmt: RETP4(reg) "# ret\n"
-stmt: RETF4(reg) "# ret\n"
-stmt: RETF8(reg) "# ret\n"
-%%
-static void progbeg(int argc, char *argv[]) {
- int i;
-
- {
- union {
- char c;
- int i;
- } u;
- u.i = 0;
- u.c = 1;
- swap = ((int)(u.i == 1)) != IR->little_endian;
- }
- parseflags(argc, argv);
- intreg[EAX] = mkreg("eax", EAX, 1, IREG);
- intreg[EDX] = mkreg("edx", EDX, 1, IREG);
- intreg[ECX] = mkreg("ecx", ECX, 1, IREG);
- intreg[EBX] = mkreg("ebx", EBX, 1, IREG);
- intreg[ESI] = mkreg("esi", ESI, 1, IREG);
- intreg[EDI] = mkreg("edi", EDI, 1, IREG);
-
- shortreg[EAX] = mkreg("ax", EAX, 1, IREG);
- shortreg[ECX] = mkreg("cx", ECX, 1, IREG);
- shortreg[EDX] = mkreg("dx", EDX, 1, IREG);
- shortreg[EBX] = mkreg("bx", EBX, 1, IREG);
- shortreg[ESI] = mkreg("si", ESI, 1, IREG);
- shortreg[EDI] = mkreg("di", EDI, 1, IREG);
-
- charreg[EAX] = mkreg("al", EAX, 1, IREG);
- charreg[ECX] = mkreg("cl", ECX, 1, IREG);
- charreg[EDX] = mkreg("dl", EDX, 1, IREG);
- charreg[EBX] = mkreg("bl", EBX, 1, IREG);
- for (i = 0; i < 8; i++)
- fltreg[i] = mkreg("%d", i, 0, FREG);
- charregw = mkwildcard(charreg);
- shortregw = mkwildcard(shortreg);
- intregw = mkwildcard(intreg);
- fltregw = mkwildcard(fltreg);
-
- tmask[IREG] = (1<<EDI) | (1<<ESI) | (1<<EBX)
- | (1<<EDX) | (1<<ECX) | (1<<EAX);
- vmask[IREG] = 0;
- tmask[FREG] = 0xff;
- vmask[FREG] = 0;
- print(".486\n");
- print(".model flat\n");
- print("extrn __fltused:near\n");
- print("extrn __ftol:near\n");
- cseg = 0;
- quo = mkreg("eax", EAX, 1, IREG);
- quo->x.regnode->mask |= 1<<EDX;
- rem = mkreg("edx", EDX, 1, IREG);
- rem->x.regnode->mask |= 1<<EAX;
-}
-static Symbol rmap(int opk) {
- switch (optype(opk)) {
- case B: case P:
- return intregw;
- case I: case U:
- if (opsize(opk) == 1)
- return charregw;
- else if (opsize(opk) == 2)
- return shortregw;
- else
- return intregw;
- case F:
- return fltregw;
- default:
- return 0;
- }
-}
-static void segment(int n) {
- if (n == cseg)
- return;
- if (cseg == CODE || cseg == LIT)
- print("_TEXT ends\n");
- else if (cseg == DATA || cseg == BSS)
- print("_DATA ends\n");
- cseg = n;
- if (cseg == CODE || cseg == LIT)
- print("_TEXT segment\n");
- else if (cseg == DATA || cseg == BSS)
- print("_DATA segment\n");
-}
-static void progend(void) {
- segment(0);
- print("end\n");
-}
-static void target(Node p) {
- assert(p);
- switch (specific(p->op)) {
- case MUL+U:
- setreg(p, quo);
- rtarget(p, 0, intreg[EAX]);
- break;
- case DIV+I: case DIV+U:
- setreg(p, quo);
- rtarget(p, 0, quo);
- break;
- case MOD+I: case MOD+U:
- setreg(p, rem);
- rtarget(p, 0, quo);
- break;
- case ASGN+B:
- rtarget(p, 0, intreg[EDI]);
- rtarget(p->kids[1], 0, intreg[ESI]);
- break;
- case ARG+B:
- rtarget(p->kids[0], 0, intreg[ESI]);
- break;
- case CVF+I:
- setreg(p, intreg[EAX]);
- break;
- case CALL+I: case CALL+U: case CALL+P: case CALL+V:
- setreg(p, intreg[EAX]);
- break;
- case RET+I: case RET+U: case RET+P:
- rtarget(p, 0, intreg[EAX]);
- break;
- }
-}
-
-static void clobber(Node p) {
- static int nstack = 0;
-
- assert(p);
- nstack = ckstack(p, nstack);
- switch (specific(p->op)) {
- case RSH+I: case RSH+U: case LSH+I: case LSH+U:
- if (generic(p->kids[1]->op) != CNST
- && !( generic(p->kids[1]->op) == INDIR
- && specific(p->kids[1]->kids[0]->op) == VREG+P
- && p->kids[1]->syms[RX]->u.t.cse
- && generic(p->kids[1]->syms[RX]->u.t.cse->op) == CNST
-)) {
- spill(1<<ECX, 1, p);
- }
- break;
- case ASGN+B: case ARG+B:
- spill(1<<ECX | 1<<ESI | 1<<EDI, IREG, p);
- break;
- case EQ+F: case LE+F: case GE+F: case LT+F: case GT+F: case NE+F:
- spill(1<<EAX, IREG, p);
- break;
- case CALL+F:
- spill(1<<EDX | 1<<EAX | 1<<ECX, IREG, p);
- break;
- case CALL+I: case CALL+U: case CALL+P: case CALL+V:
- spill(1<<EDX | 1<<ECX, IREG, p);
- break;
- }
-}
-#define isfp(p) (optype((p)->op)==F)
-
-int ckstack(Node p, int n) {
- int i;
-
- for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++)
- if (isfp(p->x.kids[i]))
- n--;
- if (isfp(p) && p->count > 0)
- n++;
- if (n > 8)
- error("expression too complicated\n");
- debug(fprint(stderr, "(ckstack(%x)=%d)\n", p, n));
- assert(n >= 0);
- return n;
-}
-int memop(Node p) {
- assert(p);
- assert(generic(p->op) == ASGN);
- assert(p->kids[0]);
- assert(p->kids[1]);
- if (generic(p->kids[1]->kids[0]->op) == INDIR
- && sametree(p->kids[0], p->kids[1]->kids[0]->kids[0]))
- return 3;
- else
- return LBURG_MAX;
-}
-int sametree(Node p, Node q) {
- return p == NULL && q == NULL
- || p && q && p->op == q->op && p->syms[0] == q->syms[0]
- && sametree(p->kids[0], q->kids[0])
- && sametree(p->kids[1], q->kids[1]);
-}
-static void emit2(Node p) {
- int op = specific(p->op);
-#define preg(f) ((f)[getregnum(p->x.kids[0])]->x.name)
-
- if (op == CVI+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
- print("movsx %s,%s\n", p->syms[RX]->x.name
-, preg(charreg));
- else if (op == CVI+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
- print("movsx %s,%s\n", p->syms[RX]->x.name
-, preg(charreg));
- else if (op == CVI+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
- print("movsx %s,%s\n", p->syms[RX]->x.name
-, preg(shortreg));
- else if (op == CVI+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
- print("movsx %s,%s\n", p->syms[RX]->x.name
-, preg(shortreg));
-
- else if (op == CVU+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
- print("movzx %s,%s\n", p->syms[RX]->x.name
-, preg(charreg));
- else if (op == CVU+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
- print("movzx %s,%s\n", p->syms[RX]->x.name
-, preg(charreg));
- else if (op == CVU+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
- print("movzx %s,%s\n", p->syms[RX]->x.name
-, preg(shortreg));
- else if (op == CVU+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
- print("movzx %s,%s\n", p->syms[RX]->x.name
-, preg(shortreg));
- else if (generic(op) == CVI || generic(op) == CVU || generic(op) == LOAD) {
- char *dst = intreg[getregnum(p)]->x.name;
- char *src = preg(intreg);
- assert(opsize(p->op) <= opsize(p->x.kids[0]->op));
- if (dst != src)
- print("mov %s,%s\n", dst, src);
- }
-}
-
-static void doarg(Node p) {
- assert(p && p->syms[0]);
- mkactual(4, p->syms[0]->u.c.v.i);
-}
-static void blkfetch(int k, int off, int reg, int tmp) {}
-static void blkstore(int k, int off, int reg, int tmp) {}
-static void blkloop(int dreg, int doff, int sreg, int soff,
- int size, int tmps[]) {}
-static void local(Symbol p) {
- if (isfloat(p->type))
- p->sclass = AUTO;
- if (askregvar(p, (*IR->x.rmap)(ttob(p->type))) == 0)
- mkauto(p);
-}
-static void function(Symbol f, Symbol caller[], Symbol callee[], int n) {
- int i;
-
- print("%s:\n", f->x.name);
- print("push ebx\n");
- print("push esi\n");
- print("push edi\n");
- print("push ebp\n");
- print("mov ebp,esp\n");
- usedmask[0] = usedmask[1] = 0;
- freemask[0] = freemask[1] = ~(unsigned)0;
- offset = 16 + 4;
- for (i = 0; callee[i]; i++) {
- Symbol p = callee[i];
- Symbol q = caller[i];
- assert(q);
- p->x.offset = q->x.offset = offset;
- p->x.name = q->x.name = stringf("%d", p->x.offset);
- p->sclass = q->sclass = AUTO;
- offset += roundup(q->type->size, 4);
- }
- assert(caller[i] == 0);
- offset = maxoffset = 0;
- gencode(caller, callee);
- framesize = roundup(maxoffset, 4);
- if (framesize > 0)
- print("sub esp,%d\n", framesize);
- emitcode();
- print("mov esp,ebp\n");
- print("pop ebp\n");
- print("pop edi\n");
- print("pop esi\n");
- print("pop ebx\n");
- print("ret\n");
-}
-static void defsymbol(Symbol p) {
- if (p->scope >= LOCAL && p->sclass == STATIC)
- p->x.name = stringf("L%d", genlabel(1));
- else if (p->generated)
- p->x.name = stringf("L%s", p->name);
- else if (p->scope == GLOBAL || p->sclass == EXTERN)
- p->x.name = stringf("_%s", p->name);
- else if (p->scope == CONSTANTS
- && (isint(p->type) || isptr(p->type))
- && p->name[0] == '0' && p->name[1] == 'x')
- p->x.name = stringf("0%sH", &p->name[2]);
- else
- p->x.name = p->name;
-}
-static void address(Symbol q, Symbol p, long n) {
- if (p->scope == GLOBAL
- || p->sclass == STATIC || p->sclass == EXTERN)
- q->x.name = stringf("%s%s%D",
- p->x.name, n >= 0 ? "+" : "", n);
- else {
- assert(n <= INT_MAX && n >= INT_MIN);
- q->x.offset = p->x.offset + n;
- q->x.name = stringd(q->x.offset);
- }
-}
-static void defconst(int suffix, int size, Value v) {
- if (suffix == I && size == 1)
- print("db %d\n", v.u);
- else if (suffix == I && size == 2)
- print("dw %d\n", v.i);
- else if (suffix == I && size == 4)
- print("dd %d\n", v.i);
- else if (suffix == U && size == 1)
- print("db 0%xH\n", v.u);
- else if (suffix == U && size == 2)
- print("dw 0%xH\n", v.u);
- else if (suffix == U && size == 4)
- print("dd 0%xH\n", v.u);
- else if (suffix == P && size == 4)
- print("dd 0%xH\n", v.p);
- else if (suffix == F && size == 4) {
- float f = v.d;
- print("dd 0%xH\n", *(unsigned *)&f);
- }
- else if (suffix == F && size == 8) {
- double d = v.d;
- unsigned *p = (unsigned *)&d;
- print("dd 0%xH\ndd 0%xH\n", p[swap], p[!swap]);
- }
- else assert(0);
-}
-static void defaddress(Symbol p) {
- print("dd %s\n", p->x.name);
-}
-static void defstring(int n, char *str) {
- char *s;
-
- for (s = str; s < str + n; s++)
- print("db %d\n", (*s)&0377);
-}
-static void export(Symbol p) {
- print("public %s\n", p->x.name);
-}
-static void import(Symbol p) {
- int oldseg = cseg;
-
- if (p->ref > 0) {
- segment(0);
- print("extrn %s:near\n", p->x.name);
- segment(oldseg);
- }
-}
-static void global(Symbol p) {
- print("align %d\n",
- p->type->align > 4 ? 4 : p->type->align);
- print("%s label byte\n", p->x.name);
- if (p->u.seg == BSS)
- print("db %d dup (0)\n", p->type->size);
-}
-static void space(int n) {
- if (cseg != BSS)
- print("db %d dup (0)\n", n);
-}
-Interface x86IR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 4, 4, 0, /* long */
- 4, 4, 0, /* long long */
- 4, 4, 1, /* float */
- 8, 4, 1, /* double */
- 8, 4, 1, /* long double */
- 4, 4, 0, /* T * */
- 0, 4, 0, /* struct; so that ARGB keeps stack aligned */
- 1, /* little_endian */
- 0, /* mulops_calls */
- 0, /* wants_callb */
- 1, /* wants_argb */
- 0, /* left_to_right */
- 0, /* wants_dag */
- 0, /* unsigned_char */
- address,
- blockbeg,
- blockend,
- defaddress,
- defconst,
- defstring,
- defsymbol,
- emit,
- export,
- function,
- gen,
- global,
- import,
- local,
- progbeg,
- progend,
- segment,
- space,
- 0, 0, 0, 0, 0, 0, 0,
- {1, rmap,
- blkfetch, blkstore, blkloop,
- _label,
- _rule,
- _nts,
- _kids,
- _string,
- _templates,
- _isinstruction,
- _ntname,
- emit2,
- doarg,
- target,
- clobber,
-}
-};
-static char rcsid[] = "$Id: x86.md 145 2001-10-17 21:53:10Z timo $";
+%{
+enum { EAX=0, ECX=1, EDX=2, EBX=3, ESI=6, EDI=7 };
+#include "c.h"
+#define NODEPTR_TYPE Node
+#define OP_LABEL(p) ((p)->op)
+#define LEFT_CHILD(p) ((p)->kids[0])
+#define RIGHT_CHILD(p) ((p)->kids[1])
+#define STATE_LABEL(p) ((p)->x.state)
+static void address(Symbol, Symbol, long);
+static void blkfetch(int, int, int, int);
+static void blkloop(int, int, int, int, int, int[]);
+static void blkstore(int, int, int, int);
+static void defaddress(Symbol);
+static void defconst(int, int, Value);
+static void defstring(int, char *);
+static void defsymbol(Symbol);
+static void doarg(Node);
+static void emit2(Node);
+static void export(Symbol);
+static void clobber(Node);
+static void function(Symbol, Symbol [], Symbol [], int);
+static void global(Symbol);
+static void import(Symbol);
+static void local(Symbol);
+static void progbeg(int, char **);
+static void progend(void);
+static void segment(int);
+static void space(int);
+static void target(Node);
+extern int ckstack(Node, int);
+extern int memop(Node);
+extern int sametree(Node, Node);
+static Symbol charreg[32], shortreg[32], intreg[32];
+static Symbol fltreg[32];
+
+static Symbol charregw, shortregw, intregw, fltregw;
+
+static int cseg;
+
+static Symbol quo, rem;
+
+%}
+%start stmt
+%term CNSTF4=4113
+%term CNSTF8=8209
+%term CNSTF16=16401
+%term CNSTI1=1045
+%term CNSTI2=2069
+%term CNSTI4=4117
+%term CNSTI8=8213
+%term CNSTP4=4119
+%term CNSTP8=8215
+%term CNSTU1=1046
+%term CNSTU2=2070
+%term CNSTU4=4118
+%term CNSTU8=8214
+
+%term ARGB=41
+%term ARGF4=4129
+%term ARGF8=8225
+%term ARGF16=16417
+%term ARGI4=4133
+%term ARGI8=8229
+%term ARGP4=4135
+%term ARGP8=8231
+%term ARGU4=4134
+%term ARGU8=8230
+
+%term ASGNB=57
+%term ASGNF4=4145
+%term ASGNF8=8241
+%term ASGNF16=16433
+%term ASGNI1=1077
+%term ASGNI2=2101
+%term ASGNI4=4149
+%term ASGNI8=8245
+%term ASGNP4=4151
+%term ASGNP8=8247
+%term ASGNU1=1078
+%term ASGNU2=2102
+%term ASGNU4=4150
+%term ASGNU8=8246
+
+%term INDIRB=73
+%term INDIRF4=4161
+%term INDIRF8=8257
+%term INDIRF16=16449
+%term INDIRI1=1093
+%term INDIRI2=2117
+%term INDIRI4=4165
+%term INDIRI8=8261
+%term INDIRP4=4167
+%term INDIRP8=8263
+%term INDIRU1=1094
+%term INDIRU2=2118
+%term INDIRU4=4166
+%term INDIRU8=8262
+
+%term CVFF4=4209
+%term CVFF8=8305
+%term CVFF16=16497
+%term CVFI4=4213
+%term CVFI8=8309
+
+%term CVIF4=4225
+%term CVIF8=8321
+%term CVIF16=16513
+%term CVII1=1157
+%term CVII2=2181
+%term CVII4=4229
+%term CVII8=8325
+%term CVIU1=1158
+%term CVIU2=2182
+%term CVIU4=4230
+%term CVIU8=8326
+
+%term CVPP4=4247
+%term CVPP8=8343
+%term CVPP16=16535
+%term CVPU4=4246
+%term CVPU8=8342
+
+%term CVUI1=1205
+%term CVUI2=2229
+%term CVUI4=4277
+%term CVUI8=8373
+%term CVUP4=4279
+%term CVUP8=8375
+%term CVUP16=16567
+%term CVUU1=1206
+%term CVUU2=2230
+%term CVUU4=4278
+%term CVUU8=8374
+
+%term NEGF4=4289
+%term NEGF8=8385
+%term NEGF16=16577
+%term NEGI4=4293
+%term NEGI8=8389
+
+%term CALLB=217
+%term CALLF4=4305
+%term CALLF8=8401
+%term CALLF16=16593
+%term CALLI4=4309
+%term CALLI8=8405
+%term CALLP4=4311
+%term CALLP8=8407
+%term CALLU4=4310
+%term CALLU8=8406
+%term CALLV=216
+
+%term RETF4=4337
+%term RETF8=8433
+%term RETF16=16625
+%term RETI4=4341
+%term RETI8=8437
+%term RETP4=4343
+%term RETP8=8439
+%term RETU4=4342
+%term RETU8=8438
+%term RETV=248
+
+%term ADDRGP4=4359
+%term ADDRGP8=8455
+
+%term ADDRFP4=4375
+%term ADDRFP8=8471
+
+%term ADDRLP4=4391
+%term ADDRLP8=8487
+
+%term ADDF4=4401
+%term ADDF8=8497
+%term ADDF16=16689
+%term ADDI4=4405
+%term ADDI8=8501
+%term ADDP4=4407
+%term ADDP8=8503
+%term ADDU4=4406
+%term ADDU8=8502
+
+%term SUBF4=4417
+%term SUBF8=8513
+%term SUBF16=16705
+%term SUBI4=4421
+%term SUBI8=8517
+%term SUBP4=4423
+%term SUBP8=8519
+%term SUBU4=4422
+%term SUBU8=8518
+
+%term LSHI4=4437
+%term LSHI8=8533
+%term LSHU4=4438
+%term LSHU8=8534
+
+%term MODI4=4453
+%term MODI8=8549
+%term MODU4=4454
+%term MODU8=8550
+
+%term RSHI4=4469
+%term RSHI8=8565
+%term RSHU4=4470
+%term RSHU8=8566
+
+%term BANDI4=4485
+%term BANDI8=8581
+%term BANDU4=4486
+%term BANDU8=8582
+
+%term BCOMI4=4501
+%term BCOMI8=8597
+%term BCOMU4=4502
+%term BCOMU8=8598
+
+%term BORI4=4517
+%term BORI8=8613
+%term BORU4=4518
+%term BORU8=8614
+
+%term BXORI4=4533
+%term BXORI8=8629
+%term BXORU4=4534
+%term BXORU8=8630
+
+%term DIVF4=4545
+%term DIVF8=8641
+%term DIVF16=16833
+%term DIVI4=4549
+%term DIVI8=8645
+%term DIVU4=4550
+%term DIVU8=8646
+
+%term MULF4=4561
+%term MULF8=8657
+%term MULF16=16849
+%term MULI4=4565
+%term MULI8=8661
+%term MULU4=4566
+%term MULU8=8662
+
+%term EQF4=4577
+%term EQF8=8673
+%term EQF16=16865
+%term EQI4=4581
+%term EQI8=8677
+%term EQU4=4582
+%term EQU8=8678
+
+%term GEF4=4593
+%term GEF8=8689
+%term GEI4=4597
+%term GEI8=8693
+%term GEI16=16885
+%term GEU4=4598
+%term GEU8=8694
+
+%term GTF4=4609
+%term GTF8=8705
+%term GTF16=16897
+%term GTI4=4613
+%term GTI8=8709
+%term GTU4=4614
+%term GTU8=8710
+
+%term LEF4=4625
+%term LEF8=8721
+%term LEF16=16913
+%term LEI4=4629
+%term LEI8=8725
+%term LEU4=4630
+%term LEU8=8726
+
+%term LTF4=4641
+%term LTF8=8737
+%term LTF16=16929
+%term LTI4=4645
+%term LTI8=8741
+%term LTU4=4646
+%term LTU8=8742
+
+%term NEF4=4657
+%term NEF8=8753
+%term NEF16=16945
+%term NEI4=4661
+%term NEI8=8757
+%term NEU4=4662
+%term NEU8=8758
+
+%term JUMPV=584
+
+%term LABELV=600
+
+%term LOADB=233
+%term LOADF4=4321
+%term LOADF8=8417
+%term LOADF16=16609
+%term LOADI1=1253
+%term LOADI2=2277
+%term LOADI4=4325
+%term LOADI8=8421
+%term LOADP4=4327
+%term LOADP8=8423
+%term LOADU1=1254
+%term LOADU2=2278
+%term LOADU4=4326
+%term LOADU8=8422
+
+%term VREGP=711
+%%
+reg: INDIRI1(VREGP) "# read register\n"
+reg: INDIRU1(VREGP) "# read register\n"
+
+reg: INDIRI2(VREGP) "# read register\n"
+reg: INDIRU2(VREGP) "# read register\n"
+
+reg: INDIRF4(VREGP) "# read register\n"
+reg: INDIRI4(VREGP) "# read register\n"
+reg: INDIRP4(VREGP) "# read register\n"
+reg: INDIRU4(VREGP) "# read register\n"
+
+reg: INDIRF8(VREGP) "# read register\n"
+reg: INDIRI8(VREGP) "# read register\n"
+reg: INDIRP8(VREGP) "# read register\n"
+reg: INDIRU8(VREGP) "# read register\n"
+
+stmt: ASGNI1(VREGP,reg) "# write register\n"
+stmt: ASGNU1(VREGP,reg) "# write register\n"
+
+stmt: ASGNI2(VREGP,reg) "# write register\n"
+stmt: ASGNU2(VREGP,reg) "# write register\n"
+
+stmt: ASGNF4(VREGP,reg) "# write register\n"
+stmt: ASGNI4(VREGP,reg) "# write register\n"
+stmt: ASGNP4(VREGP,reg) "# write register\n"
+stmt: ASGNU4(VREGP,reg) "# write register\n"
+
+stmt: ASGNF8(VREGP,reg) "# write register\n"
+stmt: ASGNI8(VREGP,reg) "# write register\n"
+stmt: ASGNP8(VREGP,reg) "# write register\n"
+stmt: ASGNU8(VREGP,reg) "# write register\n"
+con: CNSTI1 "%a"
+con: CNSTU1 "%a"
+
+con: CNSTI2 "%a"
+con: CNSTU2 "%a"
+
+con: CNSTI4 "%a"
+con: CNSTU4 "%a"
+con: CNSTP4 "%a"
+
+con: CNSTI8 "%a"
+con: CNSTU8 "%a"
+con: CNSTP8 "%a"
+stmt: reg ""
+acon: ADDRGP4 "(%a)"
+acon: con "(%0)"
+base: ADDRGP4 "(%a)"
+base: reg "[%0]"
+base: ADDI4(reg,acon) "%1[%0]"
+base: ADDP4(reg,acon) "%1[%0]"
+base: ADDU4(reg,acon) "%1[%0]"
+base: ADDRFP4 "(%a)[ebp]"
+base: ADDRLP4 "(%a)[ebp]"
+index: reg "%0"
+index: LSHI4(reg,con1) "%0*2"
+index: LSHI4(reg,con2) "%0*4"
+index: LSHI4(reg,con3) "%0*8"
+
+con1: CNSTI4 "1" range(a, 1, 1)
+con1: CNSTU4 "1" range(a, 1, 1)
+con2: CNSTI4 "2" range(a, 2, 2)
+con2: CNSTU4 "2" range(a, 2, 2)
+con3: CNSTI4 "3" range(a, 3, 3)
+con3: CNSTU4 "3" range(a, 3, 3)
+index: LSHU4(reg,con1) "%0*2"
+index: LSHU4(reg,con2) "%0*4"
+index: LSHU4(reg,con3) "%0*8"
+addr: base "%0"
+addr: ADDI4(index,base) "%1[%0]"
+addr: ADDP4(index,base) "%1[%0]"
+addr: ADDU4(index,base) "%1[%0]"
+addr: index "[%0]"
+mem: INDIRI1(addr) "byte ptr %0"
+mem: INDIRI2(addr) "word ptr %0"
+mem: INDIRI4(addr) "dword ptr %0"
+mem: INDIRU1(addr) "byte ptr %0"
+mem: INDIRU2(addr) "word ptr %0"
+mem: INDIRU4(addr) "dword ptr %0"
+mem: INDIRP4(addr) "dword ptr %0"
+rc: reg "%0"
+rc: con "%0"
+
+mr: reg "%0"
+mr: mem "%0"
+
+mrc0: mem "%0"
+mrc0: rc "%0"
+mrc1: mem "%0" 1
+mrc1: rc "%0"
+
+mrc3: mem "%0" 3
+mrc3: rc "%0"
+reg: addr "lea %c,%0\n" 1
+reg: mrc0 "mov %c,%0\n" 1
+reg: LOADI1(reg) "# move\n" 1
+reg: LOADI2(reg) "# move\n" 1
+reg: LOADI4(reg) "# move\n" move(a)
+reg: LOADU1(reg) "# move\n" 1
+reg: LOADU2(reg) "# move\n" 1
+reg: LOADU4(reg) "# move\n" move(a)
+reg: LOADP4(reg) "# move\n" move(a)
+reg: ADDI4(reg,mrc1) "?mov %c,%0\nadd %c,%1\n" 1
+reg: ADDP4(reg,mrc1) "?mov %c,%0\nadd %c,%1\n" 1
+reg: ADDU4(reg,mrc1) "?mov %c,%0\nadd %c,%1\n" 1
+reg: SUBI4(reg,mrc1) "?mov %c,%0\nsub %c,%1\n" 1
+reg: SUBP4(reg,mrc1) "?mov %c,%0\nsub %c,%1\n" 1
+reg: SUBU4(reg,mrc1) "?mov %c,%0\nsub %c,%1\n" 1
+reg: BANDI4(reg,mrc1) "?mov %c,%0\nand %c,%1\n" 1
+reg: BORI4(reg,mrc1) "?mov %c,%0\nor %c,%1\n" 1
+reg: BXORI4(reg,mrc1) "?mov %c,%0\nxor %c,%1\n" 1
+reg: BANDU4(reg,mrc1) "?mov %c,%0\nand %c,%1\n" 1
+reg: BORU4(reg,mrc1) "?mov %c,%0\nor %c,%1\n" 1
+reg: BXORU4(reg,mrc1) "?mov %c,%0\nxor %c,%1\n" 1
+stmt: ASGNI4(addr,ADDI4(mem,con1)) "inc %1\n" memop(a)
+stmt: ASGNI4(addr,ADDU4(mem,con1)) "inc %1\n" memop(a)
+stmt: ASGNP4(addr,ADDP4(mem,con1)) "inc %1\n" memop(a)
+stmt: ASGNI4(addr,SUBI4(mem,con1)) "dec %1\n" memop(a)
+stmt: ASGNI4(addr,SUBU4(mem,con1)) "dec %1\n" memop(a)
+stmt: ASGNP4(addr,SUBP4(mem,con1)) "dec %1\n" memop(a)
+stmt: ASGNI4(addr,ADDI4(mem,rc)) "add %1,%2\n" memop(a)
+stmt: ASGNI4(addr,SUBI4(mem,rc)) "sub %1,%2\n" memop(a)
+stmt: ASGNU4(addr,ADDU4(mem,rc)) "add %1,%2\n" memop(a)
+stmt: ASGNU4(addr,SUBU4(mem,rc)) "sub %1,%2\n" memop(a)
+
+stmt: ASGNI4(addr,BANDI4(mem,rc)) "and %1,%2\n" memop(a)
+stmt: ASGNI4(addr,BORI4(mem,rc)) "or %1,%2\n" memop(a)
+stmt: ASGNI4(addr,BXORI4(mem,rc)) "xor %1,%2\n" memop(a)
+stmt: ASGNU4(addr,BANDU4(mem,rc)) "and %1,%2\n" memop(a)
+stmt: ASGNU4(addr,BORU4(mem,rc)) "or %1,%2\n" memop(a)
+stmt: ASGNU4(addr,BXORU4(mem,rc)) "xor %1,%2\n" memop(a)
+reg: BCOMI4(reg) "?mov %c,%0\nnot %c\n" 2
+reg: BCOMU4(reg) "?mov %c,%0\nnot %c\n" 2
+reg: NEGI4(reg) "?mov %c,%0\nneg %c\n" 2
+
+stmt: ASGNI4(addr,BCOMI4(mem)) "not %1\n" memop(a)
+stmt: ASGNU4(addr,BCOMU4(mem)) "not %1\n" memop(a)
+stmt: ASGNI4(addr,NEGI4(mem)) "neg %1\n" memop(a)
+reg: LSHI4(reg,con5) "?mov %c,%0\nsal %c,%1\n" 2
+reg: LSHU4(reg,con5) "?mov %c,%0\nshl %c,%1\n" 2
+reg: RSHI4(reg,con5) "?mov %c,%0\nsar %c,%1\n" 2
+reg: RSHU4(reg,con5) "?mov %c,%0\nshr %c,%1\n" 2
+
+stmt: ASGNI4(addr,LSHI4(mem,con5)) "sal %1,%2\n" memop(a)
+stmt: ASGNI4(addr,LSHU4(mem,con5)) "shl %1,%2\n" memop(a)
+stmt: ASGNI4(addr,RSHI4(mem,con5)) "sar %1,%2\n" memop(a)
+stmt: ASGNI4(addr,RSHU4(mem,con5)) "shr %1,%2\n" memop(a)
+
+con5: CNSTI4 "%a" range(a, 0, 31)
+
+reg: LSHI4(reg,reg) "?mov %c,%0\nmov ecx,%1\nsal %c,cl\n" 3
+reg: LSHU4(reg,reg) "?mov %c,%0\nmov ecx,%1\nshl %c,cl\n" 2
+reg: RSHI4(reg,reg) "?mov %c,%0\nmov ecx,%1\nsar %c,cl\n" 2
+reg: RSHU4(reg,reg) "?mov %c,%0\nmov ecx,%1\nshr %c,cl\n" 2
+reg: MULI4(reg,mrc3) "?mov %c,%0\nimul %c,%1\n" 14
+reg: MULI4(con,mr) "imul %c,%1,%0\n" 13
+reg: MULU4(reg,mr) "mul %1\n" 13
+reg: DIVU4(reg,reg) "xor edx,edx\ndiv %1\n"
+reg: MODU4(reg,reg) "xor edx,edx\ndiv %1\n"
+reg: DIVI4(reg,reg) "cdq\nidiv %1\n"
+reg: MODI4(reg,reg) "cdq\nidiv %1\n"
+reg: CVPU4(reg) "mov %c,%0\n" move(a)
+reg: CVUP4(reg) "mov %c,%0\n" move(a)
+reg: CVII4(INDIRI1(addr)) "movsx %c,byte ptr %0\n" 3
+reg: CVII4(INDIRI2(addr)) "movsx %c,word ptr %0\n" 3
+reg: CVUU4(INDIRU1(addr)) "movzx %c,byte ptr %0\n" 3
+reg: CVUU4(INDIRU2(addr)) "movzx %c,word ptr %0\n" 3
+reg: CVII4(reg) "# extend\n" 3
+reg: CVIU4(reg) "# extend\n" 3
+reg: CVUI4(reg) "# extend\n" 3
+reg: CVUU4(reg) "# extend\n" 3
+
+reg: CVII1(reg) "# truncate\n" 1
+reg: CVII2(reg) "# truncate\n" 1
+reg: CVUU1(reg) "# truncate\n" 1
+reg: CVUU2(reg) "# truncate\n" 1
+stmt: ASGNI1(addr,rc) "mov byte ptr %0,%1\n" 1
+stmt: ASGNI2(addr,rc) "mov word ptr %0,%1\n" 1
+stmt: ASGNI4(addr,rc) "mov dword ptr %0,%1\n" 1
+stmt: ASGNU1(addr,rc) "mov byte ptr %0,%1\n" 1
+stmt: ASGNU2(addr,rc) "mov word ptr %0,%1\n" 1
+stmt: ASGNU4(addr,rc) "mov dword ptr %0,%1\n" 1
+stmt: ASGNP4(addr,rc) "mov dword ptr %0,%1\n" 1
+stmt: ARGI4(mrc3) "push %0\n" 1
+stmt: ARGU4(mrc3) "push %0\n" 1
+stmt: ARGP4(mrc3) "push %0\n" 1
+stmt: ASGNB(reg,INDIRB(reg)) "mov ecx,%a\nrep movsb\n"
+stmt: ARGB(INDIRB(reg)) "sub esp,%a\nmov edi,esp\nmov ecx,%a\nrep movsb\n"
+
+memf: INDIRF8(addr) "qword ptr %0"
+memf: INDIRF4(addr) "dword ptr %0"
+memf: CVFF8(INDIRF4(addr)) "dword ptr %0"
+reg: memf "fld %0\n" 3
+stmt: ASGNF8(addr,reg) "fstp qword ptr %0\n" 7
+stmt: ASGNF4(addr,reg) "fstp dword ptr %0\n" 7
+stmt: ASGNF4(addr,CVFF4(reg)) "fstp dword ptr %0\n" 7
+stmt: ARGF8(reg) "sub esp,8\nfstp qword ptr [esp]\n"
+stmt: ARGF4(reg) "sub esp,4\nfstp dword ptr [esp]\n"
+reg: NEGF8(reg) "fchs\n"
+reg: NEGF4(reg) "fchs\n"
+flt: memf " %0"
+flt: reg "p st(1),st"
+reg: ADDF8(reg,flt) "fadd%1\n"
+reg: ADDF4(reg,flt) "fadd%1\n"
+reg: DIVF8(reg,flt) "fdiv%1\n"
+reg: DIVF4(reg,flt) "fdiv%1\n"
+reg: MULF8(reg,flt) "fmul%1\n"
+reg: MULF4(reg,flt) "fmul%1\n"
+reg: SUBF8(reg,flt) "fsub%1\n"
+reg: SUBF4(reg,flt) "fsub%1\n"
+reg: CVFF8(reg) "# CVFF8\n"
+reg: CVFF4(reg) "sub esp,4\nfstp dword ptr 0[esp]\nfld dword ptr 0[esp]\nadd esp,4\n" 12
+
+reg: CVFI4(reg) "call __ftol\n" 31
+reg: CVIF8(INDIRI4(addr)) "fild dword ptr %0\n" 10
+reg: CVIF4(reg) "push %0\nfild dword ptr 0[esp]\nadd esp,4\n" 12
+
+reg: CVIF8(reg) "push %0\nfild dword ptr 0[esp]\nadd esp,4\n" 12
+
+addrj: ADDRGP4 "%a"
+addrj: reg "%0" 2
+addrj: mem "%0" 2
+
+stmt: JUMPV(addrj) "jmp %0\n" 3
+stmt: LABELV "%a:\n"
+stmt: EQI4(mem,rc) "cmp %0,%1\nje %a\n" 5
+stmt: GEI4(mem,rc) "cmp %0,%1\njge %a\n" 5
+stmt: GTI4(mem,rc) "cmp %0,%1\njg %a\n" 5
+stmt: LEI4(mem,rc) "cmp %0,%1\njle %a\n" 5
+stmt: LTI4(mem,rc) "cmp %0,%1\njl %a\n" 5
+stmt: NEI4(mem,rc) "cmp %0,%1\njne %a\n" 5
+stmt: GEU4(mem,rc) "cmp %0,%1\njae %a\n" 5
+stmt: GTU4(mem,rc) "cmp %0,%1\nja %a\n" 5
+stmt: LEU4(mem,rc) "cmp %0,%1\njbe %a\n" 5
+stmt: LTU4(mem,rc) "cmp %0,%1\njb %a\n" 5
+stmt: EQI4(reg,mrc1) "cmp %0,%1\nje %a\n" 4
+stmt: GEI4(reg,mrc1) "cmp %0,%1\njge %a\n" 4
+stmt: GTI4(reg,mrc1) "cmp %0,%1\njg %a\n" 4
+stmt: LEI4(reg,mrc1) "cmp %0,%1\njle %a\n" 4
+stmt: LTI4(reg,mrc1) "cmp %0,%1\njl %a\n" 4
+stmt: NEI4(reg,mrc1) "cmp %0,%1\njne %a\n" 4
+
+stmt: EQU4(reg,mrc1) "cmp %0,%1\nje %a\n" 4
+stmt: GEU4(reg,mrc1) "cmp %0,%1\njae %a\n" 4
+stmt: GTU4(reg,mrc1) "cmp %0,%1\nja %a\n" 4
+stmt: LEU4(reg,mrc1) "cmp %0,%1\njbe %a\n" 4
+stmt: LTU4(reg,mrc1) "cmp %0,%1\njb %a\n" 4
+stmt: NEU4(reg,mrc1) "cmp %0,%1\njne %a\n" 4
+cmpf: memf " %0"
+cmpf: reg "p"
+stmt: EQF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\nje %a\n"
+stmt: GEF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njbe %a\n"
+stmt: GTF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njb %a\n"
+stmt: LEF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njae %a\n"
+stmt: LTF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\nja %a\n"
+stmt: NEF8(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njne %a\n"
+
+stmt: EQF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\nje %a\n"
+stmt: GEF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njbe %a\n"
+stmt: GTF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njb %a\n"
+stmt: LEF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njae %a\n"
+stmt: LTF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\nja %a\n"
+stmt: NEF4(cmpf,reg) "fcomp%0\nfstsw ax\nsahf\njne %a\n"
+reg: CALLI4(addrj) "call %0\nadd esp,%a\n"
+reg: CALLU4(addrj) "call %0\nadd esp,%a\n"
+reg: CALLP4(addrj) "call %0\nadd esp,%a\n"
+stmt: CALLV(addrj) "call %0\nadd esp,%a\n"
+reg: CALLF4(addrj) "call %0\nadd esp,%a\n"
+reg: CALLF8(addrj) "call %0\nadd esp,%a\n"
+stmt: CALLF4(addrj) "call %0\nadd esp,%a\nfstp\n"
+stmt: CALLF8(addrj) "call %0\nadd esp,%a\nfstp\n"
+
+stmt: RETI4(reg) "# ret\n"
+stmt: RETU4(reg) "# ret\n"
+stmt: RETP4(reg) "# ret\n"
+stmt: RETF4(reg) "# ret\n"
+stmt: RETF8(reg) "# ret\n"
+%%
+static void progbeg(int argc, char *argv[]) {
+ int i;
+
+ {
+ union {
+ char c;
+ int i;
+ } u;
+ u.i = 0;
+ u.c = 1;
+ swap = ((int)(u.i == 1)) != IR->little_endian;
+ }
+ parseflags(argc, argv);
+ intreg[EAX] = mkreg("eax", EAX, 1, IREG);
+ intreg[EDX] = mkreg("edx", EDX, 1, IREG);
+ intreg[ECX] = mkreg("ecx", ECX, 1, IREG);
+ intreg[EBX] = mkreg("ebx", EBX, 1, IREG);
+ intreg[ESI] = mkreg("esi", ESI, 1, IREG);
+ intreg[EDI] = mkreg("edi", EDI, 1, IREG);
+
+ shortreg[EAX] = mkreg("ax", EAX, 1, IREG);
+ shortreg[ECX] = mkreg("cx", ECX, 1, IREG);
+ shortreg[EDX] = mkreg("dx", EDX, 1, IREG);
+ shortreg[EBX] = mkreg("bx", EBX, 1, IREG);
+ shortreg[ESI] = mkreg("si", ESI, 1, IREG);
+ shortreg[EDI] = mkreg("di", EDI, 1, IREG);
+
+ charreg[EAX] = mkreg("al", EAX, 1, IREG);
+ charreg[ECX] = mkreg("cl", ECX, 1, IREG);
+ charreg[EDX] = mkreg("dl", EDX, 1, IREG);
+ charreg[EBX] = mkreg("bl", EBX, 1, IREG);
+ for (i = 0; i < 8; i++)
+ fltreg[i] = mkreg("%d", i, 0, FREG);
+ charregw = mkwildcard(charreg);
+ shortregw = mkwildcard(shortreg);
+ intregw = mkwildcard(intreg);
+ fltregw = mkwildcard(fltreg);
+
+ tmask[IREG] = (1<<EDI) | (1<<ESI) | (1<<EBX)
+ | (1<<EDX) | (1<<ECX) | (1<<EAX);
+ vmask[IREG] = 0;
+ tmask[FREG] = 0xff;
+ vmask[FREG] = 0;
+ print(".486\n");
+ print(".model flat\n");
+ print("extrn __fltused:near\n");
+ print("extrn __ftol:near\n");
+ cseg = 0;
+ quo = mkreg("eax", EAX, 1, IREG);
+ quo->x.regnode->mask |= 1<<EDX;
+ rem = mkreg("edx", EDX, 1, IREG);
+ rem->x.regnode->mask |= 1<<EAX;
+}
+static Symbol rmap(int opk) {
+ switch (optype(opk)) {
+ case B: case P:
+ return intregw;
+ case I: case U:
+ if (opsize(opk) == 1)
+ return charregw;
+ else if (opsize(opk) == 2)
+ return shortregw;
+ else
+ return intregw;
+ case F:
+ return fltregw;
+ default:
+ return 0;
+ }
+}
+static void segment(int n) {
+ if (n == cseg)
+ return;
+ if (cseg == CODE || cseg == LIT)
+ print("_TEXT ends\n");
+ else if (cseg == DATA || cseg == BSS)
+ print("_DATA ends\n");
+ cseg = n;
+ if (cseg == CODE || cseg == LIT)
+ print("_TEXT segment\n");
+ else if (cseg == DATA || cseg == BSS)
+ print("_DATA segment\n");
+}
+static void progend(void) {
+ segment(0);
+ print("end\n");
+}
+static void target(Node p) {
+ assert(p);
+ switch (specific(p->op)) {
+ case MUL+U:
+ setreg(p, quo);
+ rtarget(p, 0, intreg[EAX]);
+ break;
+ case DIV+I: case DIV+U:
+ setreg(p, quo);
+ rtarget(p, 0, quo);
+ break;
+ case MOD+I: case MOD+U:
+ setreg(p, rem);
+ rtarget(p, 0, quo);
+ break;
+ case ASGN+B:
+ rtarget(p, 0, intreg[EDI]);
+ rtarget(p->kids[1], 0, intreg[ESI]);
+ break;
+ case ARG+B:
+ rtarget(p->kids[0], 0, intreg[ESI]);
+ break;
+ case CVF+I:
+ setreg(p, intreg[EAX]);
+ break;
+ case CALL+I: case CALL+U: case CALL+P: case CALL+V:
+ setreg(p, intreg[EAX]);
+ break;
+ case RET+I: case RET+U: case RET+P:
+ rtarget(p, 0, intreg[EAX]);
+ break;
+ }
+}
+
+static void clobber(Node p) {
+ static int nstack = 0;
+
+ assert(p);
+ nstack = ckstack(p, nstack);
+ switch (specific(p->op)) {
+ case RSH+I: case RSH+U: case LSH+I: case LSH+U:
+ if (generic(p->kids[1]->op) != CNST
+ && !( generic(p->kids[1]->op) == INDIR
+ && specific(p->kids[1]->kids[0]->op) == VREG+P
+ && p->kids[1]->syms[RX]->u.t.cse
+ && generic(p->kids[1]->syms[RX]->u.t.cse->op) == CNST
+)) {
+ spill(1<<ECX, 1, p);
+ }
+ break;
+ case ASGN+B: case ARG+B:
+ spill(1<<ECX | 1<<ESI | 1<<EDI, IREG, p);
+ break;
+ case EQ+F: case LE+F: case GE+F: case LT+F: case GT+F: case NE+F:
+ spill(1<<EAX, IREG, p);
+ break;
+ case CALL+F:
+ spill(1<<EDX | 1<<EAX | 1<<ECX, IREG, p);
+ break;
+ case CALL+I: case CALL+U: case CALL+P: case CALL+V:
+ spill(1<<EDX | 1<<ECX, IREG, p);
+ break;
+ }
+}
+#define isfp(p) (optype((p)->op)==F)
+
+int ckstack(Node p, int n) {
+ int i;
+
+ for (i = 0; i < NELEMS(p->x.kids) && p->x.kids[i]; i++)
+ if (isfp(p->x.kids[i]))
+ n--;
+ if (isfp(p) && p->count > 0)
+ n++;
+ if (n > 8)
+ error("expression too complicated\n");
+ debug(fprint(stderr, "(ckstack(%x)=%d)\n", p, n));
+ assert(n >= 0);
+ return n;
+}
+int memop(Node p) {
+ assert(p);
+ assert(generic(p->op) == ASGN);
+ assert(p->kids[0]);
+ assert(p->kids[1]);
+ if (generic(p->kids[1]->kids[0]->op) == INDIR
+ && sametree(p->kids[0], p->kids[1]->kids[0]->kids[0]))
+ return 3;
+ else
+ return LBURG_MAX;
+}
+int sametree(Node p, Node q) {
+ return p == NULL && q == NULL
+ || p && q && p->op == q->op && p->syms[0] == q->syms[0]
+ && sametree(p->kids[0], q->kids[0])
+ && sametree(p->kids[1], q->kids[1]);
+}
+static void emit2(Node p) {
+ int op = specific(p->op);
+#define preg(f) ((f)[getregnum(p->x.kids[0])]->x.name)
+
+ if (op == CVI+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
+ print("movsx %s,%s\n", p->syms[RX]->x.name
+, preg(charreg));
+ else if (op == CVI+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
+ print("movsx %s,%s\n", p->syms[RX]->x.name
+, preg(charreg));
+ else if (op == CVI+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
+ print("movsx %s,%s\n", p->syms[RX]->x.name
+, preg(shortreg));
+ else if (op == CVI+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
+ print("movsx %s,%s\n", p->syms[RX]->x.name
+, preg(shortreg));
+
+ else if (op == CVU+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
+ print("movzx %s,%s\n", p->syms[RX]->x.name
+, preg(charreg));
+ else if (op == CVU+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
+ print("movzx %s,%s\n", p->syms[RX]->x.name
+, preg(charreg));
+ else if (op == CVU+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
+ print("movzx %s,%s\n", p->syms[RX]->x.name
+, preg(shortreg));
+ else if (op == CVU+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
+ print("movzx %s,%s\n", p->syms[RX]->x.name
+, preg(shortreg));
+ else if (generic(op) == CVI || generic(op) == CVU || generic(op) == LOAD) {
+ char *dst = intreg[getregnum(p)]->x.name;
+ char *src = preg(intreg);
+ assert(opsize(p->op) <= opsize(p->x.kids[0]->op));
+ if (dst != src)
+ print("mov %s,%s\n", dst, src);
+ }
+}
+
+static void doarg(Node p) {
+ assert(p && p->syms[0]);
+ mkactual(4, p->syms[0]->u.c.v.i);
+}
+static void blkfetch(int k, int off, int reg, int tmp) {}
+static void blkstore(int k, int off, int reg, int tmp) {}
+static void blkloop(int dreg, int doff, int sreg, int soff,
+ int size, int tmps[]) {}
+static void local(Symbol p) {
+ if (isfloat(p->type))
+ p->sclass = AUTO;
+ if (askregvar(p, (*IR->x.rmap)(ttob(p->type))) == 0)
+ mkauto(p);
+}
+static void function(Symbol f, Symbol caller[], Symbol callee[], int n) {
+ int i;
+
+ print("%s:\n", f->x.name);
+ print("push ebx\n");
+ print("push esi\n");
+ print("push edi\n");
+ print("push ebp\n");
+ print("mov ebp,esp\n");
+ usedmask[0] = usedmask[1] = 0;
+ freemask[0] = freemask[1] = ~(unsigned)0;
+ offset = 16 + 4;
+ for (i = 0; callee[i]; i++) {
+ Symbol p = callee[i];
+ Symbol q = caller[i];
+ assert(q);
+ p->x.offset = q->x.offset = offset;
+ p->x.name = q->x.name = stringf("%d", p->x.offset);
+ p->sclass = q->sclass = AUTO;
+ offset += roundup(q->type->size, 4);
+ }
+ assert(caller[i] == 0);
+ offset = maxoffset = 0;
+ gencode(caller, callee);
+ framesize = roundup(maxoffset, 4);
+ if (framesize > 0)
+ print("sub esp,%d\n", framesize);
+ emitcode();
+ print("mov esp,ebp\n");
+ print("pop ebp\n");
+ print("pop edi\n");
+ print("pop esi\n");
+ print("pop ebx\n");
+ print("ret\n");
+}
+static void defsymbol(Symbol p) {
+ if (p->scope >= LOCAL && p->sclass == STATIC)
+ p->x.name = stringf("L%d", genlabel(1));
+ else if (p->generated)
+ p->x.name = stringf("L%s", p->name);
+ else if (p->scope == GLOBAL || p->sclass == EXTERN)
+ p->x.name = stringf("_%s", p->name);
+ else if (p->scope == CONSTANTS
+ && (isint(p->type) || isptr(p->type))
+ && p->name[0] == '0' && p->name[1] == 'x')
+ p->x.name = stringf("0%sH", &p->name[2]);
+ else
+ p->x.name = p->name;
+}
+static void address(Symbol q, Symbol p, long n) {
+ if (p->scope == GLOBAL
+ || p->sclass == STATIC || p->sclass == EXTERN)
+ q->x.name = stringf("%s%s%D",
+ p->x.name, n >= 0 ? "+" : "", n);
+ else {
+ assert(n <= INT_MAX && n >= INT_MIN);
+ q->x.offset = p->x.offset + n;
+ q->x.name = stringd(q->x.offset);
+ }
+}
+static void defconst(int suffix, int size, Value v) {
+ if (suffix == I && size == 1)
+ print("db %d\n", v.u);
+ else if (suffix == I && size == 2)
+ print("dw %d\n", v.i);
+ else if (suffix == I && size == 4)
+ print("dd %d\n", v.i);
+ else if (suffix == U && size == 1)
+ print("db 0%xH\n", v.u);
+ else if (suffix == U && size == 2)
+ print("dw 0%xH\n", v.u);
+ else if (suffix == U && size == 4)
+ print("dd 0%xH\n", v.u);
+ else if (suffix == P && size == 4)
+ print("dd 0%xH\n", v.p);
+ else if (suffix == F && size == 4) {
+ float f = v.d;
+ print("dd 0%xH\n", *(unsigned *)&f);
+ }
+ else if (suffix == F && size == 8) {
+ double d = v.d;
+ unsigned *p = (unsigned *)&d;
+ print("dd 0%xH\ndd 0%xH\n", p[swap], p[!swap]);
+ }
+ else assert(0);
+}
+static void defaddress(Symbol p) {
+ print("dd %s\n", p->x.name);
+}
+static void defstring(int n, char *str) {
+ char *s;
+
+ for (s = str; s < str + n; s++)
+ print("db %d\n", (*s)&0377);
+}
+static void export(Symbol p) {
+ print("public %s\n", p->x.name);
+}
+static void import(Symbol p) {
+ int oldseg = cseg;
+
+ if (p->ref > 0) {
+ segment(0);
+ print("extrn %s:near\n", p->x.name);
+ segment(oldseg);
+ }
+}
+static void global(Symbol p) {
+ print("align %d\n",
+ p->type->align > 4 ? 4 : p->type->align);
+ print("%s label byte\n", p->x.name);
+ if (p->u.seg == BSS)
+ print("db %d dup (0)\n", p->type->size);
+}
+static void space(int n) {
+ if (cseg != BSS)
+ print("db %d dup (0)\n", n);
+}
+Interface x86IR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 4, 4, 0, /* long */
+ 4, 4, 0, /* long long */
+ 4, 4, 1, /* float */
+ 8, 4, 1, /* double */
+ 8, 4, 1, /* long double */
+ 4, 4, 0, /* T * */
+ 0, 4, 0, /* struct; so that ARGB keeps stack aligned */
+ 1, /* little_endian */
+ 0, /* mulops_calls */
+ 0, /* wants_callb */
+ 1, /* wants_argb */
+ 0, /* left_to_right */
+ 0, /* wants_dag */
+ 0, /* unsigned_char */
+ address,
+ blockbeg,
+ blockend,
+ defaddress,
+ defconst,
+ defstring,
+ defsymbol,
+ emit,
+ export,
+ function,
+ gen,
+ global,
+ import,
+ local,
+ progbeg,
+ progend,
+ segment,
+ space,
+ 0, 0, 0, 0, 0, 0, 0,
+ {1, rmap,
+ blkfetch, blkstore, blkloop,
+ _label,
+ _rule,
+ _nts,
+ _kids,
+ _string,
+ _templates,
+ _isinstruction,
+ _ntname,
+ emit2,
+ doarg,
+ target,
+ clobber,
+}
+};
+static char rcsid[] = "$Id: x86.md 145 2001-10-17 21:53:10Z timo $";
diff --git a/lcc/src/x86linux.md b/lcc/src/x86linux.md
index b7baaff..d185f56 100755
--- a/lcc/src/x86linux.md
+++ b/lcc/src/x86linux.md
@@ -1,1081 +1,1081 @@
-%{
-/* x86/linux lburg spec. Derived from x86.md by
-Marcos Ramirez <marcos@inf.utfsm.cl>
-Horst von Brand <vonbrand@sleipnir.valparaiso.cl>
-Jacob Navia <jacob@jacob.remcomp.fr>
-*/
-enum { EAX=0, ECX=1, EDX=2, EBX=3, ESI=6, EDI=7 };
-#include "c.h"
-#define NODEPTR_TYPE Node
-#define OP_LABEL(p) ((p)->op)
-#define LEFT_CHILD(p) ((p)->kids[0])
-#define RIGHT_CHILD(p) ((p)->kids[1])
-#define STATE_LABEL(p) ((p)->x.state)
-extern int ckstack(Node, int);
-extern int memop(Node);
-extern int sametree(Node, Node);
-static Symbol charreg[32], shortreg[32], intreg[32];
-static Symbol fltreg[32];
-
-static Symbol charregw, shortregw, intregw, fltregw;
-
-static int cseg;
-
-static Symbol quo, rem;
-
-extern char *stabprefix;
-extern void stabblock(int, int, Symbol*);
-extern void stabend(Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
-extern void stabfend(Symbol, int);
-extern void stabinit(char *, int, char *[]);
-extern void stabline(Coordinate *);
-extern void stabsym(Symbol);
-extern void stabtype(Symbol);
-
-static int pflag = 0;
-static char rcsid[] = "$Id: x86linux.md 145 2001-10-17 21:53:10Z timo $";
-
-#define hasargs(p) (p->syms[0] && p->syms[0]->u.c.v.i > 0 ? 0 : LBURG_MAX)
-%}
-%start stmt
-%term CNSTF4=4113
-%term CNSTF8=8209
-%term CNSTF16=16401
-%term CNSTI1=1045
-%term CNSTI2=2069
-%term CNSTI4=4117
-%term CNSTI8=8213
-%term CNSTP4=4119
-%term CNSTP8=8215
-%term CNSTU1=1046
-%term CNSTU2=2070
-%term CNSTU4=4118
-%term CNSTU8=8214
-
-%term ARGB=41
-%term ARGF4=4129
-%term ARGF8=8225
-%term ARGF16=16417
-%term ARGI4=4133
-%term ARGI8=8229
-%term ARGP4=4135
-%term ARGP8=8231
-%term ARGU4=4134
-%term ARGU8=8230
-
-%term ASGNB=57
-%term ASGNF4=4145
-%term ASGNF8=8241
-%term ASGNF16=16433
-%term ASGNI1=1077
-%term ASGNI2=2101
-%term ASGNI4=4149
-%term ASGNI8=8245
-%term ASGNP4=4151
-%term ASGNP8=8247
-%term ASGNU1=1078
-%term ASGNU2=2102
-%term ASGNU4=4150
-%term ASGNU8=8246
-
-%term INDIRB=73
-%term INDIRF4=4161
-%term INDIRF8=8257
-%term INDIRF16=16449
-%term INDIRI1=1093
-%term INDIRI2=2117
-%term INDIRI4=4165
-%term INDIRI8=8261
-%term INDIRP4=4167
-%term INDIRP8=8263
-%term INDIRU1=1094
-%term INDIRU2=2118
-%term INDIRU4=4166
-%term INDIRU8=8262
-
-%term CVFF4=4209
-%term CVFF8=8305
-%term CVFF16=16497
-%term CVFI4=4213
-%term CVFI8=8309
-
-%term CVIF4=4225
-%term CVIF8=8321
-%term CVIF16=16513
-%term CVII1=1157
-%term CVII2=2181
-%term CVII4=4229
-%term CVII8=8325
-%term CVIU1=1158
-%term CVIU2=2182
-%term CVIU4=4230
-%term CVIU8=8326
-
-%term CVPP4=4247
-%term CVPP8=8343
-%term CVPP16=16535
-%term CVPU4=4246
-%term CVPU8=8342
-
-%term CVUI1=1205
-%term CVUI2=2229
-%term CVUI4=4277
-%term CVUI8=8373
-%term CVUP4=4279
-%term CVUP8=8375
-%term CVUP16=16567
-%term CVUU1=1206
-%term CVUU2=2230
-%term CVUU4=4278
-%term CVUU8=8374
-
-%term NEGF4=4289
-%term NEGF8=8385
-%term NEGF16=16577
-%term NEGI4=4293
-%term NEGI8=8389
-
-%term CALLB=217
-%term CALLF4=4305
-%term CALLF8=8401
-%term CALLF16=16593
-%term CALLI4=4309
-%term CALLI8=8405
-%term CALLP4=4311
-%term CALLP8=8407
-%term CALLU4=4310
-%term CALLU8=8406
-%term CALLV=216
-
-%term RETF4=4337
-%term RETF8=8433
-%term RETF16=16625
-%term RETI4=4341
-%term RETI8=8437
-%term RETP4=4343
-%term RETP8=8439
-%term RETU4=4342
-%term RETU8=8438
-%term RETV=248
-
-%term ADDRGP4=4359
-%term ADDRGP8=8455
-
-%term ADDRFP4=4375
-%term ADDRFP8=8471
-
-%term ADDRLP4=4391
-%term ADDRLP8=8487
-
-%term ADDF4=4401
-%term ADDF8=8497
-%term ADDF16=16689
-%term ADDI4=4405
-%term ADDI8=8501
-%term ADDP4=4407
-%term ADDP8=8503
-%term ADDU4=4406
-%term ADDU8=8502
-
-%term SUBF4=4417
-%term SUBF8=8513
-%term SUBF16=16705
-%term SUBI4=4421
-%term SUBI8=8517
-%term SUBP4=4423
-%term SUBP8=8519
-%term SUBU4=4422
-%term SUBU8=8518
-
-%term LSHI4=4437
-%term LSHI8=8533
-%term LSHU4=4438
-%term LSHU8=8534
-
-%term MODI4=4453
-%term MODI8=8549
-%term MODU4=4454
-%term MODU8=8550
-
-%term RSHI4=4469
-%term RSHI8=8565
-%term RSHU4=4470
-%term RSHU8=8566
-
-%term BANDI4=4485
-%term BANDI8=8581
-%term BANDU4=4486
-%term BANDU8=8582
-
-%term BCOMI4=4501
-%term BCOMI8=8597
-%term BCOMU4=4502
-%term BCOMU8=8598
-
-%term BORI4=4517
-%term BORI8=8613
-%term BORU4=4518
-%term BORU8=8614
-
-%term BXORI4=4533
-%term BXORI8=8629
-%term BXORU4=4534
-%term BXORU8=8630
-
-%term DIVF4=4545
-%term DIVF8=8641
-%term DIVF16=16833
-%term DIVI4=4549
-%term DIVI8=8645
-%term DIVU4=4550
-%term DIVU8=8646
-
-%term MULF4=4561
-%term MULF8=8657
-%term MULF16=16849
-%term MULI4=4565
-%term MULI8=8661
-%term MULU4=4566
-%term MULU8=8662
-
-%term EQF4=4577
-%term EQF8=8673
-%term EQF16=16865
-%term EQI4=4581
-%term EQI8=8677
-%term EQU4=4582
-%term EQU8=8678
-
-%term GEF4=4593
-%term GEF8=8689
-%term GEI4=4597
-%term GEI8=8693
-%term GEI16=16885
-%term GEU4=4598
-%term GEU8=8694
-
-%term GTF4=4609
-%term GTF8=8705
-%term GTF16=16897
-%term GTI4=4613
-%term GTI8=8709
-%term GTU4=4614
-%term GTU8=8710
-
-%term LEF4=4625
-%term LEF8=8721
-%term LEF16=16913
-%term LEI4=4629
-%term LEI8=8725
-%term LEU4=4630
-%term LEU8=8726
-
-%term LTF4=4641
-%term LTF8=8737
-%term LTF16=16929
-%term LTI4=4645
-%term LTI8=8741
-%term LTU4=4646
-%term LTU8=8742
-
-%term NEF4=4657
-%term NEF8=8753
-%term NEF16=16945
-%term NEI4=4661
-%term NEI8=8757
-%term NEU4=4662
-%term NEU8=8758
-
-%term JUMPV=584
-
-%term LABELV=600
-
-%term LOADB=233
-%term LOADF4=4321
-%term LOADF8=8417
-%term LOADF16=16609
-%term LOADI1=1253
-%term LOADI2=2277
-%term LOADI4=4325
-%term LOADI8=8421
-%term LOADP4=4327
-%term LOADP8=8423
-%term LOADU1=1254
-%term LOADU2=2278
-%term LOADU4=4326
-%term LOADU8=8422
-
-%term VREGP=711
-%%
-reg: INDIRI1(VREGP) "# read register\n"
-reg: INDIRU1(VREGP) "# read register\n"
-
-reg: INDIRI2(VREGP) "# read register\n"
-reg: INDIRU2(VREGP) "# read register\n"
-
-reg: INDIRI4(VREGP) "# read register\n"
-reg: INDIRP4(VREGP) "# read register\n"
-reg: INDIRU4(VREGP) "# read register\n"
-
-reg: INDIRI8(VREGP) "# read register\n"
-reg: INDIRP8(VREGP) "# read register\n"
-reg: INDIRU8(VREGP) "# read register\n"
-
-freg: INDIRF4(VREGP) "# read register\n"
-freg: INDIRF8(VREGP) "# read register\n"
-
-stmt: ASGNI1(VREGP,reg) "# write register\n"
-stmt: ASGNU1(VREGP,reg) "# write register\n"
-
-stmt: ASGNI2(VREGP,reg) "# write register\n"
-stmt: ASGNU2(VREGP,reg) "# write register\n"
-
-stmt: ASGNF4(VREGP,reg) "# write register\n"
-stmt: ASGNI4(VREGP,reg) "# write register\n"
-stmt: ASGNP4(VREGP,reg) "# write register\n"
-stmt: ASGNU4(VREGP,reg) "# write register\n"
-
-stmt: ASGNF8(VREGP,reg) "# write register\n"
-stmt: ASGNI8(VREGP,reg) "# write register\n"
-stmt: ASGNP8(VREGP,reg) "# write register\n"
-stmt: ASGNU8(VREGP,reg) "# write register\n"
-
-cnst: CNSTI1 "%a"
-cnst: CNSTU1 "%a"
-
-cnst: CNSTI2 "%a"
-cnst: CNSTU2 "%a"
-
-cnst: CNSTI4 "%a"
-cnst: CNSTU4 "%a"
-cnst: CNSTP4 "%a"
-
-cnst: CNSTI8 "%a"
-cnst: CNSTU8 "%a"
-cnst: CNSTP8 "%a"
-
-con: cnst "$%0"
-
-stmt: reg ""
-stmt: freg ""
-
-acon: ADDRGP4 "%a"
-acon: ADDRGP8 "%a"
-acon: cnst "%0"
-
-baseaddr: ADDRGP4 "%a"
-base: reg "(%0)"
-base: ADDI4(reg,acon) "%1(%0)"
-base: ADDP4(reg,acon) "%1(%0)"
-base: ADDU4(reg,acon) "%1(%0)"
-base: ADDRFP4 "%a(%%ebp)"
-base: ADDRLP4 "%a(%%ebp)"
-
-index: reg "%0"
-index: LSHI4(reg,con1) "%0,2"
-index: LSHI4(reg,con2) "%0,4"
-index: LSHI4(reg,con3) "%0,8"
-index: LSHU4(reg,con1) "%0,2"
-index: LSHU4(reg,con2) "%0,4"
-index: LSHU4(reg,con3) "%0,8"
-
-con0: CNSTI4 "1" range(a, 0, 0)
-con0: CNSTU4 "1" range(a, 0, 0)
-con1: CNSTI4 "1" range(a, 1, 1)
-con1: CNSTU4 "1" range(a, 1, 1)
-con2: CNSTI4 "2" range(a, 2, 2)
-con2: CNSTU4 "2" range(a, 2, 2)
-con3: CNSTI4 "3" range(a, 3, 3)
-con3: CNSTU4 "3" range(a, 3, 3)
-
-addr: base "%0"
-addr: baseaddr "%0"
-addr: ADDI4(index,baseaddr) "%1(,%0)"
-addr: ADDP4(index,baseaddr) "%1(,%0)"
-addr: ADDU4(index,baseaddr) "%1(,%0)"
-
-addr: ADDI4(reg,baseaddr) "%1(%0)"
-addr: ADDP4(reg,baseaddr) "%1(%0)"
-addr: ADDU4(reg,baseaddr) "%1(%0)"
-
-addr: ADDI4(index,reg) "(%1,%0)"
-addr: ADDP4(index,reg) "(%1,%0)"
-addr: ADDU4(index,reg) "(%1,%0)"
-
-addr: index "(,%0)"
-
-mem1: INDIRI1(addr) "%0"
-mem1: INDIRU1(addr) "%0"
-mem2: INDIRI2(addr) "%0"
-mem2: INDIRU2(addr) "%0"
-mem4: INDIRI4(addr) "%0"
-mem4: INDIRU4(addr) "%0"
-mem4: INDIRP4(addr) "%0"
-
-rc: reg "%0"
-rc: con "%0"
-
-mr: reg "%0"
-mr: mem4 "%0"
-
-mr1: reg "%0"
-mr1: mem1 "%0"
-
-mr2: reg "%0"
-mr2: mem2 "%0"
-
-mrc: mem4 "%0" 1
-mrc: mem1 "%0" 1
-mrc: mem2 "%0" 1
-mrc: rc "%0"
-
-reg: addr "leal %0,%c\n" 1
-reg: mr "movl %0,%c\n" 1
-reg: mr1 "movb %0,%c\n" 1
-reg: mr2 "movw %0,%c\n" 1
-reg: con "movl %0,%c\n" 1
-
-reg: LOADI1(reg) "# move\n" 1
-reg: LOADI2(reg) "# move\n" 1
-reg: LOADI4(reg) "# move\n" move(a)
-reg: LOADU1(reg) "# move\n" 1
-reg: LOADU2(reg) "# move\n" 1
-reg: LOADU4(reg) "# move\n" move(a)
-reg: LOADP4(reg) "# move\n" move(a)
-reg: ADDI4(reg,mrc) "?movl %0,%c\naddl %1,%c\n" 1
-reg: ADDP4(reg,mrc) "?movl %0,%c\naddl %1,%c\n" 1
-reg: ADDU4(reg,mrc) "?movl %0,%c\naddl %1,%c\n" 1
-reg: SUBI4(reg,mrc) "?movl %0,%c\nsubl %1,%c\n" 1
-reg: SUBP4(reg,mrc) "?movl %0,%c\nsubl %1,%c\n" 1
-reg: SUBU4(reg,mrc) "?movl %0,%c\nsubl %1,%c\n" 1
-reg: BANDI4(reg,mrc) "?movl %0,%c\nandl %1,%c\n" 1
-reg: BORI4(reg,mrc) "?movl %0,%c\norl %1,%c\n" 1
-reg: BXORI4(reg,mrc) "?movl %0,%c\nxorl %1,%c\n" 1
-reg: BANDU4(reg,mrc) "?movl %0,%c\nandl %1,%c\n" 1
-reg: BORU4(reg,mrc) "?movl %0,%c\norl %1,%c\n" 1
-reg: BXORU4(reg,mrc) "?movl %0,%c\nxorl %1,%c\n" 1
-
-stmt: ASGNI4(addr,ADDI4(mem4,con1)) "incl %1\n" memop(a)
-stmt: ASGNI4(addr,ADDU4(mem4,con1)) "incl %1\n" memop(a)
-stmt: ASGNP4(addr,ADDP4(mem4,con1)) "incl %1\n" memop(a)
-stmt: ASGNI4(addr,SUBI4(mem4,con1)) "decl %1\n" memop(a)
-stmt: ASGNI4(addr,SUBU4(mem4,con1)) "decl %1\n" memop(a)
-stmt: ASGNP4(addr,SUBP4(mem4,con1)) "decl %1\n" memop(a)
-stmt: ASGNI4(addr,ADDI4(mem4,rc)) "addl %2,%1\n" memop(a)
-stmt: ASGNI4(addr,SUBI4(mem4,rc)) "sub %2,%1\n" memop(a)
-stmt: ASGNU4(addr,ADDU4(mem4,rc)) "add %2,%1\n" memop(a)
-stmt: ASGNU4(addr,SUBU4(mem4,rc)) "sub %2,%1\n" memop(a)
-
-stmt: ASGNI4(addr,BANDI4(mem4,rc)) "andl %2,%1\n" memop(a)
-stmt: ASGNI4(addr,BORI4(mem4,rc)) "orl %2,%1\n" memop(a)
-stmt: ASGNI4(addr,BXORI4(mem4,rc)) "xorl %2,%1\n" memop(a)
-stmt: ASGNU4(addr,BANDU4(mem4,rc)) "andl %2,%1\n" memop(a)
-stmt: ASGNU4(addr,BORU4(mem4,rc)) "orl %2,%1\n" memop(a)
-stmt: ASGNU4(addr,BXORU4(mem4,rc)) "xorl %2,%1\n" memop(a)
-reg: BCOMI4(reg) "?movl %0,%c\nnotl %c\n" 2
-reg: BCOMU4(reg) "?movl %0,%c\nnotl %c\n" 2
-reg: NEGI4(reg) "?movl %0,%c\nnegl %c\n" 2
-
-stmt: ASGNI4(addr,BCOMI4(mem4)) "notl %1\n" memop(a)
-stmt: ASGNU4(addr,BCOMU4(mem4)) "notl %1\n" memop(a)
-stmt: ASGNI4(addr,NEGI4(mem4)) "negl %1\n" memop(a)
-reg: LSHI4(reg,rc5) "?movl %0,%c\nsall %1,%c\n" 2
-reg: LSHU4(reg,rc5) "?movl %0,%c\nshll %1,%c\n" 2
-reg: RSHI4(reg,rc5) "?movl %0,%c\nsarl %1,%c\n" 2
-reg: RSHU4(reg,rc5) "?movl %0,%c\nshrl %1,%c\n" 2
-
-stmt: ASGNI4(addr,LSHI4(mem4,rc5)) "sall %2,%1\n" memop(a)
-stmt: ASGNI4(addr,LSHU4(mem4,rc5)) "shll %2,%1\n" memop(a)
-stmt: ASGNI4(addr,RSHI4(mem4,rc5)) "sarl %2,%1\n" memop(a)
-stmt: ASGNI4(addr,RSHU4(mem4,rc5)) "shrl %2,%1\n" memop(a)
-
-rc5: CNSTI4 "$%a" range(a, 0, 31)
-rc5: reg "%%cl"
-reg: MULI4(reg,mrc) "?movl %0,%c\nimull %1,%c\n" 14
-reg: MULI4(con,mr) "imul %0,%1,%c\n" 13
-reg: MULU4(reg,mr) "mull %1\n" 13
-reg: DIVU4(reg,reg) "xorl %%edx,%%edx\ndivl %1\n"
-reg: MODU4(reg,reg) "xorl %%edx,%%edx\ndivl %1\n"
-reg: DIVI4(reg,reg) "cdq\nidivl %1\n"
-reg: MODI4(reg,reg) "cdq\nidivl %1\n"
-reg: CVPU4(reg) "movl %0,%c\n" move(a)
-reg: CVUP4(reg) "movl %0,%c\n" move(a)
-reg: CVII4(INDIRI1(addr)) "movsbl %0,%c\n" 3
-reg: CVII4(INDIRI2(addr)) "movswl %0,%c\n" 3
-reg: CVUU4(INDIRU1(addr)) "movzbl %0,%c\n" 3
-reg: CVUU4(INDIRU2(addr)) "movzwl %0,%c\n" 3
-reg: CVII4(reg) "# extend\n" 3
-reg: CVIU4(reg) "# extend\n" 3
-reg: CVUI4(reg) "# extend\n" 3
-reg: CVUU4(reg) "# extend\n" 3
-
-reg: CVII1(reg) "# truncate\n" 1
-reg: CVII2(reg) "# truncate\n" 1
-reg: CVUU1(reg) "# truncate\n" 1
-reg: CVUU2(reg) "# truncate\n" 1
-
-mrca: mem4 "%0"
-mrca: rc "%0"
-mrca: ADDRGP4 "$%a"
-mrca: ADDRGP8 "$%a"
-
-stmt: ASGNI1(addr,rc) "movb %1,%0\n" 1
-stmt: ASGNI2(addr,rc) "movw %1,%0\n" 1
-stmt: ASGNI4(addr,rc) "movl %1,%0\n" 1
-stmt: ASGNU1(addr,rc) "movb %1,%0\n" 1
-stmt: ASGNU2(addr,rc) "movw %1,%0\n" 1
-stmt: ASGNU4(addr,rc) "movl %1,%0\n" 1
-stmt: ASGNP4(addr,rc) "movl %1,%0\n" 1
-stmt: ARGI4(mrca) "pushl %0\n" 1
-stmt: ARGU4(mrca) "pushl %0\n" 1
-stmt: ARGP4(mrca) "pushl %0\n" 1
-stmt: ASGNB(reg,INDIRB(reg)) "movl $%a,%%ecx\nrep\nmovsb\n"
-stmt: ARGB(INDIRB(reg)) "subl $%a,%%esp\nmovl %%esp,%%edi\nmovl $%a,%%ecx\nrep\nmovsb\n"
-
-memf: INDIRF8(addr) "l %0"
-memf: INDIRF4(addr) "s %0"
-memf: CVFF8(INDIRF4(addr)) "s %0"
-memf: CVFF4(INDIRF8(addr)) "l %0"
-
-freg: memf "fld%0\n" 3
-
-stmt: ASGNF8(addr,freg) "fstpl %0\n" 7
-stmt: ASGNF4(addr,freg) "fstps %0\n" 7
-stmt: ASGNF4(addr,CVFF4(freg)) "fstps %0\n" 7
-
-stmt: ARGF8(freg) "subl $8,%%esp\nfstpl (%%esp)\n"
-stmt: ARGF4(freg) "subl $4,%%esp\nfstps (%%esp)\n"
-freg: NEGF8(freg) "fchs\n"
-freg: NEGF4(freg) "fchs\n"
-
-flt: memf "%0"
-flt: freg "p %%st(1),%%st"
-
-freg: ADDF4(freg,flt) "fadd%1\n"
-freg: ADDF8(freg,flt) "fadd%1\n"
-
-freg: DIVF4(freg,flt) "fdiv%1\n"
-freg: DIVF8(freg,flt) "fdiv%1\n"
-
-freg: MULF4(freg,flt) "fmul%1\n"
-freg: MULF8(freg,flt) "fmul%1\n"
-
-freg: SUBF4(freg,flt) "fsub%1\n"
-freg: SUBF8(freg,flt) "fsub%1\n"
-
-freg: CVFF8(freg) "# CVFF8\n"
-freg: CVFF4(freg) "sub $4,%%esp\nfstps (%%esp)\nflds (%%esp)\naddl $4,%%esp\n" 12
-
-stmt: ASGNI4(addr,CVFI4(freg)) "fistpl %0\n" 29
-reg: CVFI4(freg) "subl $4,%%esp\nfistpl 0(%%esp)\npopl %c\n" 31
-
-freg: CVIF8(INDIRI4(addr)) "fildl %0\n" 10
-freg: CVIF8(reg) "pushl %0\nfildl (%%esp)\naddl $4,%%esp\n" 12
-
-freg: CVIF4(INDIRI4(addr)) "fildl %0\n" 10
-freg: CVIF4(reg) "pushl %0\nfildl (%%esp)\naddl $4,%%esp\n" 12
-
-addrj: ADDRGP4 "%a"
-addrj: reg "*%0" 2
-addrj: mem4 "*%0" 2
-
-stmt: LABELV "%a:\n"
-stmt: JUMPV(addrj) "jmp %0\n" 3
-stmt: EQI4(mem4,rc) "cmpl %1,%0\nje %a\n" 5
-stmt: GEI4(mem4,rc) "cmpl %1,%0\njge %a\n" 5
-stmt: GTI4(mem4,rc) "cmpl %1,%0\njg %a\n" 5
-stmt: LEI4(mem4,rc) "cmpl %1,%0\njle %a\n" 5
-stmt: LTI4(mem4,rc) "cmpl %1,%0\njl %a\n" 5
-stmt: NEI4(mem4,rc) "cmpl %1,%0\njne %a\n" 5
-stmt: GEU4(mem4,rc) "cmpl %1,%0\njae %a\n" 5
-stmt: GTU4(mem4,rc) "cmpl %1,%0\nja %a\n" 5
-stmt: LEU4(mem4,rc) "cmpl %1,%0\njbe %a\n" 5
-stmt: LTU4(mem4,rc) "cmpl %1,%0\njb %a\n" 5
-stmt: EQI4(reg,mrc) "cmpl %1,%0\nje %a\n" 4
-stmt: GEI4(reg,mrc) "cmpl %1,%0\njge %a\n" 4
-stmt: GTI4(reg,mrc) "cmpl %1,%0\njg %a\n" 4
-stmt: LEI4(reg,mrc) "cmpl %1,%0\njle %a\n" 4
-stmt: LTI4(reg,mrc) "cmpl %1,%0\njl %a\n" 4
-stmt: NEI4(reg,mrc) "cmpl %1,%0\njne %a\n" 4
-
-stmt: EQU4(reg,mrc) "cmpl %1,%0\nje %a\n" 4
-stmt: GEU4(reg,mrc) "cmpl %1,%0\njae %a\n" 4
-stmt: GTU4(reg,mrc) "cmpl %1,%0\nja %a\n" 4
-stmt: LEU4(reg,mrc) "cmpl %1,%0\njbe %a\n" 4
-stmt: LTU4(reg,mrc) "cmpl %1,%0\njb %a\n" 4
-stmt: NEU4(reg,mrc) "cmpl %1,%0\njne %a\n" 4
-
-stmt: EQI4(BANDU4(mr,con),con0) "testl %1,%0\nje %a\n" 3
-stmt: NEI4(BANDU4(mr,con),con0) "testl %1,%0\njne %a\n"
-
-stmt: EQI4(BANDU4(CVII2(INDIRI2(addr)),con),con0) "testw %1,%0\nje %a\n"
-stmt: NEI4(BANDU4(CVII2(INDIRI2(addr)),con),con0) "testw %1,%0\njne %a\n"
-stmt: EQI4(BANDU4(CVIU2(INDIRI2(addr)),con),con0) "testw %1,%0\nje %a\n"
-stmt: NEI4(BANDU4(CVIU2(INDIRI2(addr)),con),con0) "testw %1,%0\njne %a\n"
-stmt: EQI4(BANDU4(CVII1(INDIRI1(addr)),con),con0) "testb %1,%0\nje %a\n"
-
-cmpf: INDIRF8(addr) "l %0"
-cmpf: INDIRF4(addr) "s %0"
-cmpf: CVFF8(INDIRF4(addr)) "s %0"
-cmpf: freg "p"
-
-stmt: EQF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\nje %a\n"
-stmt: GEF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njbe %a\n"
-stmt: GTF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njb %a\n"
-stmt: LEF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njae %a\n"
-stmt: LTF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\nja %a\n"
-stmt: NEF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njne %a\n"
-
-stmt: EQF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\nje %a\n"
-stmt: GEF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njbe %a\n"
-stmt: GTF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njb %a\n"
-stmt: LEF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njae %a\n"
-stmt: LTF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\nja %a\n"
-stmt: NEF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njne %a\n"
-
-freg: DIVF8(freg,CVIF8(INDIRI4(addr))) "fidivl %1\n"
-freg: DIVF8(CVIF8(INDIRI4(addr)),freg) "fidivrl %0\n"
-freg: DIVF8(freg,CVIF8(CVII2(INDIRI2(addr)))) "fidivs %1\n"
-freg: DIVF8(CVIF8(CVII2(INDIRI2(addr))),freg) "fidivrs %0\n"
-freg: MULF8(freg,CVIF8(INDIRI4(addr))) "fimull %1\n"
-freg: MULF8(freg,CVIF8(CVII2(INDIRI2(addr)))) "fimuls %1\n"
-freg: SUBF8(freg,CVIF8(INDIRI4(addr))) "fisubl %1\n"
-freg: SUBF8(CVIF8(INDIRI4(addr)),freg) "fisubrl %0\n"
-freg: SUBF8(freg,CVIF8(CVII2(INDIRI2(addr)))) "fisubs %1\n"
-freg: SUBF8(CVIF8(CVII2(INDIRI2(addr))),freg) "fisubrs %0\n"
-freg: ADDF8(freg,CVIF8(INDIRI4(addr))) "fiaddl %1\n"
-freg: ADDF8(freg,CVIF8(CVII2(INDIRI2(addr)))) "fiadds %1\n"
-freg: ADDF8(freg,CVFF8(INDIRF4(addr))) "fdivs %1\n"
-freg: SUBF8(freg,CVFF8(INDIRF4(addr))) "fsubs %1\n"
-freg: MULF8(freg,CVFF8(INDIRF4(addr))) "fmuls %1\n"
-freg: DIVF8(freg,CVFF8(INDIRF4(addr))) "fdivs %1\n"
-freg: LOADF8(memf) "fld%0\n"
-
-reg: CALLI4(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
-reg: CALLU4(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
-reg: CALLP4(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
-
-reg: CALLI4(addrj) "call %0\n" 1
-reg: CALLU4(addrj) "call %0\n" 1
-reg: CALLP4(addrj) "call %0\n" 1
-
-stmt: CALLV(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
-stmt: CALLV(addrj) "call %0\n" 1
-
-freg: CALLF4(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
-freg: CALLF4(addrj) "call %0\n" 1
-
-stmt: CALLF4(addrj) "call %0\naddl $%a,%%esp\nfstp %%st(0)\n" hasargs(a)
-stmt: CALLF4(addrj) "call %0\nfstp %%st(0)\n" 1
-
-freg: CALLF8(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
-freg: CALLF8(addrj) "call %0\n" 1
-
-stmt: CALLF8(addrj) "call %0\naddl $%a,%%esp\nfstp %%st(0)\n" hasargs(a)
-stmt: CALLF8(addrj) "call %0\nfstp %%st(0)\n" 1
-
-stmt: RETI4(reg) "# ret\n"
-stmt: RETU4(reg) "# ret\n"
-stmt: RETP4(reg) "# ret\n"
-stmt: RETF4(freg) "# ret\n"
-stmt: RETF8(freg) "# ret\n"
-%%
-static void progbeg(int argc, char *argv[]) {
- int i;
-
- {
- union {
- char c;
- int i;
- } u;
- u.i = 0;
- u.c = 1;
- swap = ((int)(u.i == 1)) != IR->little_endian;
- }
- parseflags(argc, argv);
- for (i = 0; i < argc; i++)
- if (strcmp(argv[i], "-p") == 0 || strcmp(argv[i], "-pg") == 0)
- pflag = 1;
- intreg[EAX] = mkreg("%%eax", EAX, 1, IREG);
- intreg[EDX] = mkreg("%%edx", EDX, 1, IREG);
- intreg[ECX] = mkreg("%%ecx", ECX, 1, IREG);
- intreg[EBX] = mkreg("%%ebx", EBX, 1, IREG);
- intreg[ESI] = mkreg("%%esi", ESI, 1, IREG);
- intreg[EDI] = mkreg("%%edi", EDI, 1, IREG);
- shortreg[EAX] = mkreg("%%ax", EAX, 1, IREG);
- shortreg[ECX] = mkreg("%%cx", ECX, 1, IREG);
- shortreg[EDX] = mkreg("%%dx", EDX, 1, IREG);
- shortreg[EBX] = mkreg("%%bx", EBX, 1, IREG);
- shortreg[ESI] = mkreg("%%si", ESI, 1, IREG);
- shortreg[EDI] = mkreg("%%di", EDI, 1, IREG);
- charreg[EAX] = mkreg("%%al", EAX, 1, IREG);
- charreg[ECX] = mkreg("%%cl", ECX, 1, IREG);
- charreg[EDX] = mkreg("%%dl", EDX, 1, IREG);
- charreg[EBX] = mkreg("%%bl", EBX, 1, IREG);
- for (i = 0; i < 8; i++)
- fltreg[i] = mkreg("%d", i, 0, FREG);
- charregw = mkwildcard(charreg);
- shortregw = mkwildcard(shortreg);
- intregw = mkwildcard(intreg);
- fltregw = mkwildcard(fltreg);
-
- tmask[IREG] = (1<<EDI) | (1<<ESI) | (1<<EBX)
- | (1<<EDX) | (1<<ECX) | (1<<EAX);
- vmask[IREG] = 0;
- tmask[FREG] = 0xff;
- vmask[FREG] = 0;
-
- cseg = 0;
- quo = mkreg("%%eax", EAX, 1, IREG);
- quo->x.regnode->mask |= 1<<EDX;
- rem = mkreg("%%edx", EDX, 1, IREG);
- rem->x.regnode->mask |= 1<<EAX;
-
- stabprefix = ".LL";
-}
-
-static Symbol rmap(int opk) {
- switch (optype(opk)) {
- case B: case P:
- return intregw;
- case I: case U:
- if (opsize(opk) == 1)
- return charregw;
- else if (opsize(opk) == 2)
- return shortregw;
- else
- return intregw;
- case F:
- return fltregw;
- default:
- return 0;
- }
-}
-
-static Symbol prevg;
-
-static void globalend(void) {
- if (prevg && prevg->type->size > 0)
- print(".size %s,%d\n", prevg->x.name, prevg->type->size);
- prevg = NULL;
-}
-
-static void progend(void) {
- globalend();
- (*IR->segment)(CODE);
- print(".ident \"LCC: 4.1\"\n");
-}
-
-static void target(Node p) {
- assert(p);
- switch (specific(p->op)) {
- case RSH+I: case RSH+U: case LSH+I: case LSH+U:
- if (generic(p->kids[1]->op) != CNST
- && !( generic(p->kids[1]->op) == INDIR
- && specific(p->kids[1]->kids[0]->op) == VREG+P
- && p->kids[1]->syms[RX]->u.t.cse
- && generic(p->kids[1]->syms[RX]->u.t.cse->op) == CNST)) {
- rtarget(p, 1, intreg[ECX]);
- setreg(p, intreg[EAX]);
- }
- break;
- case MUL+U:
- setreg(p, quo);
- rtarget(p, 0, intreg[EAX]);
- break;
- case DIV+I: case DIV+U:
- setreg(p, quo);
- rtarget(p, 0, intreg[EAX]);
- rtarget(p, 1, intreg[ECX]);
- break;
- case MOD+I: case MOD+U:
- setreg(p, rem);
- rtarget(p, 0, intreg[EAX]);
- rtarget(p, 1, intreg[ECX]);
- break;
- case ASGN+B:
- rtarget(p, 0, intreg[EDI]);
- rtarget(p->kids[1], 0, intreg[ESI]);
- break;
- case ARG+B:
- rtarget(p->kids[0], 0, intreg[ESI]);
- break;
- case CVF+I:
- setreg(p, intreg[EAX]);
- break;
- case CALL+I: case CALL+U: case CALL+P: case CALL+V:
- setreg(p, intreg[EAX]);
- break;
- case RET+I: case RET+U: case RET+P:
- rtarget(p, 0, intreg[EAX]);
- break;
- }
-}
-
-static void clobber(Node p) {
- static int nstack = 0;
-
- assert(p);
- nstack = ckstack(p, nstack);
- switch (specific(p->op)) {
- case ASGN+B: case ARG+B:
- spill(1<<ECX | 1<<ESI | 1<<EDI, IREG, p);
- break;
- case EQ+F: case LE+F: case GE+F: case LT+F: case GT+F: case NE+F:
- spill(1<<EAX, IREG, p);
- break;
- case CALL+F:
- spill(1<<EDX | 1<<EAX | 1<<ECX, IREG, p);
- break;
- case CALL+I: case CALL+U: case CALL+P: case CALL+V:
- spill(1<<EDX | 1<<ECX, IREG, p);
- break;
- }
-}
-
-static void emit2(Node p) {
- int op = specific(p->op);
-#define preg(f) ((f)[getregnum(p->x.kids[0])]->x.name)
-
- if (op == CVI+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
- print("movsbl %s,%s\n", preg(charreg), p->syms[RX]->x.name);
- else if (op == CVI+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
- print("movsbl %s,%s\n", preg(charreg), p->syms[RX]->x.name);
- else if (op == CVI+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
- print("movswl %s,%s\n", preg(shortreg), p->syms[RX]->x.name);
- else if (op == CVI+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
- print("movswl %s,%s\n", preg(shortreg), p->syms[RX]->x.name);
- else if (op == CVU+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
- print("movzbl %s,%s\n", preg(charreg), p->syms[RX]->x.name);
- else if (op == CVU+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
- print("movzbl %s,%s\n", preg(charreg), p->syms[RX]->x.name);
- else if (op == CVU+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
- print("movzwl %s,%s\n", preg(shortreg), p->syms[RX]->x.name);
- else if (op == CVU+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
- print("movzwl %s,%s\n", preg(shortreg), p->syms[RX]->x.name);
- else if (generic(op) == CVI || generic(op) == CVU || generic(op) == LOAD) {
- char *dst = intreg[getregnum(p)]->x.name;
- char *src = preg(intreg);
- assert(opsize(p->op) <= opsize(p->x.kids[0]->op));
- if (dst != src)
- print("movl %s,%s\n", src, dst);
- }
-}
-
-static void function(Symbol f, Symbol caller[], Symbol callee[], int n) {
- int i;
-
- globalend();
- print(".align 16\n");
- print(".type %s,@function\n", f->x.name);
- print("%s:\n", f->x.name);
- print("pushl %%ebp\n");
- if (pflag) {
- static int plab;
- print("movl %%esp,%%ebp\n");
- (*IR->segment)(DATA);
- print(".align 4\n.LP%d:\n.long 0\n", plab);
- (*IR->segment)(CODE);
- print("movl $.LP%d,%%edx\ncall mcount\n", plab);
- plab++;
- }
- print("pushl %%ebx\n");
- print("pushl %%esi\n");
- print("pushl %%edi\n");
- print("movl %%esp,%%ebp\n");
-
- usedmask[0] = usedmask[1] = 0;
- freemask[0] = freemask[1] = ~0U;
- offset = 16 + 4;
- for (i = 0; callee[i]; i++) {
- Symbol p = callee[i];
- Symbol q = caller[i];
- assert(q);
- offset = roundup(offset, q->type->align);
- p->x.offset = q->x.offset = offset;
- p->x.name = q->x.name = stringf("%d", p->x.offset);
- p->sclass = q->sclass = AUTO;
- offset += roundup(q->type->size, 4);
- }
- assert(caller[i] == 0);
- offset = maxoffset = 0;
- gencode(caller, callee);
- framesize = roundup(maxoffset, 4);
- if (framesize > 0)
- print("subl $%d,%%esp\n", framesize);
- emitcode();
- print("movl %%ebp,%%esp\n");
- print("popl %%edi\n");
- print("popl %%esi\n");
- print("popl %%ebx\n");
- print("popl %%ebp\n");
- print("ret\n");
- { int l = genlabel(1);
- print(".Lf%d:\n", l);
- print(".size %s,.Lf%d-%s\n", f->x.name, l, f->x.name);
- }
-}
-
-static void defsymbol(Symbol p) {
- if (p->scope >= LOCAL && p->sclass == STATIC)
- p->x.name = stringf("%s.%d", p->name, genlabel(1));
- else if (p->generated)
- p->x.name = stringf(".LC%s", p->name);
- else if (p->scope == GLOBAL || p->sclass == EXTERN)
- p->x.name = stringf("%s", p->name);
- else
- p->x.name = p->name;
-}
-
-static void segment(int n) {
- if (n == cseg)
- return;
- cseg = n;
- if (cseg == CODE)
- print(".text\n");
- else if (cseg == BSS)
- print(".bss\n");
- else if (cseg == DATA || cseg == LIT)
- print(".data\n");
-}
-
-static void defconst(int suffix, int size, Value v) {
- if (suffix == I && size == 1)
- print(".byte %d\n", v.u);
- else if (suffix == I && size == 2)
- print(".word %d\n", v.i);
- else if (suffix == I && size == 4)
- print(".long %d\n", v.i);
- else if (suffix == U && size == 1)
- print(".byte %d\n", v.u);
- else if (suffix == U && size == 2)
- print(".word %d\n", v.u);
- else if (suffix == U && size == 4)
- print(".long %d\n", v.u);
- else if (suffix == P && size == 4)
- print(".long %d\n", v.p);
- else if (suffix == F && size == 4) {
- float f = v.d;
- print(".long %d\n", *(unsigned *)&f);
- } else if (suffix == F && size == 8) {
- double d = v.d;
- unsigned *p = (unsigned *)&d;
- print(".long %d\n.long %d\n", p[swap], p[!swap]);
- }
- else assert(0);
-}
-
-static void defaddress(Symbol p) {
- print(".long %s\n", p->x.name);
-}
-
-static void defstring(int n, char *str) {
- char *s;
-
- for (s = str; s < str + n; s++)
- print(".byte %d\n", (*s)&0377);
-}
-
-static void export(Symbol p) {
- globalend();
- print(".globl %s\n", p->x.name);
-}
-
-static void import(Symbol p) {}
-
-static void global(Symbol p) {
- globalend();
- print(".align %d\n", p->type->align > 4 ? 4 : p->type->align);
- if (!p->generated) {
- print(".type %s,@%s\n", p->x.name,
- isfunc(p->type) ? "function" : "object");
- if (p->type->size > 0)
- print(".size %s,%d\n", p->x.name, p->type->size);
- else
- prevg = p;
- }
- if (p->u.seg == BSS) {
- if (p->sclass == STATIC)
- print(".lcomm %s,%d\n", p->x.name, p->type->size);
- else
- print(".comm %s,%d\n", p->x.name, p->type->size);
- } else {
- print("%s:\n", p->x.name);
- }
-}
-
-static void space(int n) {
- if (cseg != BSS)
- print(".space %d\n", n);
-}
-
-Interface x86linuxIR = {
- 1, 1, 0, /* char */
- 2, 2, 0, /* short */
- 4, 4, 0, /* int */
- 4, 4, 0, /* long */
- 4, 4, 0, /* long long */
- 4, 4, 1, /* float */
- 8, 4, 1, /* double */
- 8, 4, 1, /* long double */
- 4, 4, 0, /* T * */
- 0, 4, 0, /* struct; so that ARGB keeps stack aligned */
- 1, /* little_endian */
- 0, /* mulops_calls */
- 0, /* wants_callb */
- 1, /* wants_argb */
- 0, /* left_to_right */
- 0, /* wants_dag */
- 0, /* unsigned_char */
- 0, /* address */
- blockbeg,
- blockend,
- defaddress,
- defconst,
- defstring,
- defsymbol,
- emit,
- export,
- function,
- gen,
- global,
- import,
- 0, /* local */
- progbeg,
- progend,
- segment,
- space,
- stabblock, stabend, 0, stabinit, stabline, stabsym, stabtype,
- {1, rmap,
- 0, 0, 0, /* blkfetch, blkstore, blkloop */
- _label,
- _rule,
- _nts,
- _kids,
- _string,
- _templates,
- _isinstruction,
- _ntname,
- emit2,
- 0, /* doarg */
- target,
- clobber,
- }
-};
-
-void x86linux_init(int argc, char *argv[]) {
- static int inited;
- extern Interface x86IR;
-
- if (inited)
- return;
- inited = 1;
-#define xx(f) assert(!x86linuxIR.f); x86linuxIR.f = x86IR.f
- xx(address);
- xx(local);
- xx(x.blkfetch);
- xx(x.blkstore);
- xx(x.blkloop);
- xx(x.doarg);
-#undef xx
-}
+%{
+/* x86/linux lburg spec. Derived from x86.md by
+Marcos Ramirez <marcos@inf.utfsm.cl>
+Horst von Brand <vonbrand@sleipnir.valparaiso.cl>
+Jacob Navia <jacob@jacob.remcomp.fr>
+*/
+enum { EAX=0, ECX=1, EDX=2, EBX=3, ESI=6, EDI=7 };
+#include "c.h"
+#define NODEPTR_TYPE Node
+#define OP_LABEL(p) ((p)->op)
+#define LEFT_CHILD(p) ((p)->kids[0])
+#define RIGHT_CHILD(p) ((p)->kids[1])
+#define STATE_LABEL(p) ((p)->x.state)
+extern int ckstack(Node, int);
+extern int memop(Node);
+extern int sametree(Node, Node);
+static Symbol charreg[32], shortreg[32], intreg[32];
+static Symbol fltreg[32];
+
+static Symbol charregw, shortregw, intregw, fltregw;
+
+static int cseg;
+
+static Symbol quo, rem;
+
+extern char *stabprefix;
+extern void stabblock(int, int, Symbol*);
+extern void stabend(Coordinate *, Symbol, Coordinate **, Symbol *, Symbol *);
+extern void stabfend(Symbol, int);
+extern void stabinit(char *, int, char *[]);
+extern void stabline(Coordinate *);
+extern void stabsym(Symbol);
+extern void stabtype(Symbol);
+
+static int pflag = 0;
+static char rcsid[] = "$Id: x86linux.md 145 2001-10-17 21:53:10Z timo $";
+
+#define hasargs(p) (p->syms[0] && p->syms[0]->u.c.v.i > 0 ? 0 : LBURG_MAX)
+%}
+%start stmt
+%term CNSTF4=4113
+%term CNSTF8=8209
+%term CNSTF16=16401
+%term CNSTI1=1045
+%term CNSTI2=2069
+%term CNSTI4=4117
+%term CNSTI8=8213
+%term CNSTP4=4119
+%term CNSTP8=8215
+%term CNSTU1=1046
+%term CNSTU2=2070
+%term CNSTU4=4118
+%term CNSTU8=8214
+
+%term ARGB=41
+%term ARGF4=4129
+%term ARGF8=8225
+%term ARGF16=16417
+%term ARGI4=4133
+%term ARGI8=8229
+%term ARGP4=4135
+%term ARGP8=8231
+%term ARGU4=4134
+%term ARGU8=8230
+
+%term ASGNB=57
+%term ASGNF4=4145
+%term ASGNF8=8241
+%term ASGNF16=16433
+%term ASGNI1=1077
+%term ASGNI2=2101
+%term ASGNI4=4149
+%term ASGNI8=8245
+%term ASGNP4=4151
+%term ASGNP8=8247
+%term ASGNU1=1078
+%term ASGNU2=2102
+%term ASGNU4=4150
+%term ASGNU8=8246
+
+%term INDIRB=73
+%term INDIRF4=4161
+%term INDIRF8=8257
+%term INDIRF16=16449
+%term INDIRI1=1093
+%term INDIRI2=2117
+%term INDIRI4=4165
+%term INDIRI8=8261
+%term INDIRP4=4167
+%term INDIRP8=8263
+%term INDIRU1=1094
+%term INDIRU2=2118
+%term INDIRU4=4166
+%term INDIRU8=8262
+
+%term CVFF4=4209
+%term CVFF8=8305
+%term CVFF16=16497
+%term CVFI4=4213
+%term CVFI8=8309
+
+%term CVIF4=4225
+%term CVIF8=8321
+%term CVIF16=16513
+%term CVII1=1157
+%term CVII2=2181
+%term CVII4=4229
+%term CVII8=8325
+%term CVIU1=1158
+%term CVIU2=2182
+%term CVIU4=4230
+%term CVIU8=8326
+
+%term CVPP4=4247
+%term CVPP8=8343
+%term CVPP16=16535
+%term CVPU4=4246
+%term CVPU8=8342
+
+%term CVUI1=1205
+%term CVUI2=2229
+%term CVUI4=4277
+%term CVUI8=8373
+%term CVUP4=4279
+%term CVUP8=8375
+%term CVUP16=16567
+%term CVUU1=1206
+%term CVUU2=2230
+%term CVUU4=4278
+%term CVUU8=8374
+
+%term NEGF4=4289
+%term NEGF8=8385
+%term NEGF16=16577
+%term NEGI4=4293
+%term NEGI8=8389
+
+%term CALLB=217
+%term CALLF4=4305
+%term CALLF8=8401
+%term CALLF16=16593
+%term CALLI4=4309
+%term CALLI8=8405
+%term CALLP4=4311
+%term CALLP8=8407
+%term CALLU4=4310
+%term CALLU8=8406
+%term CALLV=216
+
+%term RETF4=4337
+%term RETF8=8433
+%term RETF16=16625
+%term RETI4=4341
+%term RETI8=8437
+%term RETP4=4343
+%term RETP8=8439
+%term RETU4=4342
+%term RETU8=8438
+%term RETV=248
+
+%term ADDRGP4=4359
+%term ADDRGP8=8455
+
+%term ADDRFP4=4375
+%term ADDRFP8=8471
+
+%term ADDRLP4=4391
+%term ADDRLP8=8487
+
+%term ADDF4=4401
+%term ADDF8=8497
+%term ADDF16=16689
+%term ADDI4=4405
+%term ADDI8=8501
+%term ADDP4=4407
+%term ADDP8=8503
+%term ADDU4=4406
+%term ADDU8=8502
+
+%term SUBF4=4417
+%term SUBF8=8513
+%term SUBF16=16705
+%term SUBI4=4421
+%term SUBI8=8517
+%term SUBP4=4423
+%term SUBP8=8519
+%term SUBU4=4422
+%term SUBU8=8518
+
+%term LSHI4=4437
+%term LSHI8=8533
+%term LSHU4=4438
+%term LSHU8=8534
+
+%term MODI4=4453
+%term MODI8=8549
+%term MODU4=4454
+%term MODU8=8550
+
+%term RSHI4=4469
+%term RSHI8=8565
+%term RSHU4=4470
+%term RSHU8=8566
+
+%term BANDI4=4485
+%term BANDI8=8581
+%term BANDU4=4486
+%term BANDU8=8582
+
+%term BCOMI4=4501
+%term BCOMI8=8597
+%term BCOMU4=4502
+%term BCOMU8=8598
+
+%term BORI4=4517
+%term BORI8=8613
+%term BORU4=4518
+%term BORU8=8614
+
+%term BXORI4=4533
+%term BXORI8=8629
+%term BXORU4=4534
+%term BXORU8=8630
+
+%term DIVF4=4545
+%term DIVF8=8641
+%term DIVF16=16833
+%term DIVI4=4549
+%term DIVI8=8645
+%term DIVU4=4550
+%term DIVU8=8646
+
+%term MULF4=4561
+%term MULF8=8657
+%term MULF16=16849
+%term MULI4=4565
+%term MULI8=8661
+%term MULU4=4566
+%term MULU8=8662
+
+%term EQF4=4577
+%term EQF8=8673
+%term EQF16=16865
+%term EQI4=4581
+%term EQI8=8677
+%term EQU4=4582
+%term EQU8=8678
+
+%term GEF4=4593
+%term GEF8=8689
+%term GEI4=4597
+%term GEI8=8693
+%term GEI16=16885
+%term GEU4=4598
+%term GEU8=8694
+
+%term GTF4=4609
+%term GTF8=8705
+%term GTF16=16897
+%term GTI4=4613
+%term GTI8=8709
+%term GTU4=4614
+%term GTU8=8710
+
+%term LEF4=4625
+%term LEF8=8721
+%term LEF16=16913
+%term LEI4=4629
+%term LEI8=8725
+%term LEU4=4630
+%term LEU8=8726
+
+%term LTF4=4641
+%term LTF8=8737
+%term LTF16=16929
+%term LTI4=4645
+%term LTI8=8741
+%term LTU4=4646
+%term LTU8=8742
+
+%term NEF4=4657
+%term NEF8=8753
+%term NEF16=16945
+%term NEI4=4661
+%term NEI8=8757
+%term NEU4=4662
+%term NEU8=8758
+
+%term JUMPV=584
+
+%term LABELV=600
+
+%term LOADB=233
+%term LOADF4=4321
+%term LOADF8=8417
+%term LOADF16=16609
+%term LOADI1=1253
+%term LOADI2=2277
+%term LOADI4=4325
+%term LOADI8=8421
+%term LOADP4=4327
+%term LOADP8=8423
+%term LOADU1=1254
+%term LOADU2=2278
+%term LOADU4=4326
+%term LOADU8=8422
+
+%term VREGP=711
+%%
+reg: INDIRI1(VREGP) "# read register\n"
+reg: INDIRU1(VREGP) "# read register\n"
+
+reg: INDIRI2(VREGP) "# read register\n"
+reg: INDIRU2(VREGP) "# read register\n"
+
+reg: INDIRI4(VREGP) "# read register\n"
+reg: INDIRP4(VREGP) "# read register\n"
+reg: INDIRU4(VREGP) "# read register\n"
+
+reg: INDIRI8(VREGP) "# read register\n"
+reg: INDIRP8(VREGP) "# read register\n"
+reg: INDIRU8(VREGP) "# read register\n"
+
+freg: INDIRF4(VREGP) "# read register\n"
+freg: INDIRF8(VREGP) "# read register\n"
+
+stmt: ASGNI1(VREGP,reg) "# write register\n"
+stmt: ASGNU1(VREGP,reg) "# write register\n"
+
+stmt: ASGNI2(VREGP,reg) "# write register\n"
+stmt: ASGNU2(VREGP,reg) "# write register\n"
+
+stmt: ASGNF4(VREGP,reg) "# write register\n"
+stmt: ASGNI4(VREGP,reg) "# write register\n"
+stmt: ASGNP4(VREGP,reg) "# write register\n"
+stmt: ASGNU4(VREGP,reg) "# write register\n"
+
+stmt: ASGNF8(VREGP,reg) "# write register\n"
+stmt: ASGNI8(VREGP,reg) "# write register\n"
+stmt: ASGNP8(VREGP,reg) "# write register\n"
+stmt: ASGNU8(VREGP,reg) "# write register\n"
+
+cnst: CNSTI1 "%a"
+cnst: CNSTU1 "%a"
+
+cnst: CNSTI2 "%a"
+cnst: CNSTU2 "%a"
+
+cnst: CNSTI4 "%a"
+cnst: CNSTU4 "%a"
+cnst: CNSTP4 "%a"
+
+cnst: CNSTI8 "%a"
+cnst: CNSTU8 "%a"
+cnst: CNSTP8 "%a"
+
+con: cnst "$%0"
+
+stmt: reg ""
+stmt: freg ""
+
+acon: ADDRGP4 "%a"
+acon: ADDRGP8 "%a"
+acon: cnst "%0"
+
+baseaddr: ADDRGP4 "%a"
+base: reg "(%0)"
+base: ADDI4(reg,acon) "%1(%0)"
+base: ADDP4(reg,acon) "%1(%0)"
+base: ADDU4(reg,acon) "%1(%0)"
+base: ADDRFP4 "%a(%%ebp)"
+base: ADDRLP4 "%a(%%ebp)"
+
+index: reg "%0"
+index: LSHI4(reg,con1) "%0,2"
+index: LSHI4(reg,con2) "%0,4"
+index: LSHI4(reg,con3) "%0,8"
+index: LSHU4(reg,con1) "%0,2"
+index: LSHU4(reg,con2) "%0,4"
+index: LSHU4(reg,con3) "%0,8"
+
+con0: CNSTI4 "1" range(a, 0, 0)
+con0: CNSTU4 "1" range(a, 0, 0)
+con1: CNSTI4 "1" range(a, 1, 1)
+con1: CNSTU4 "1" range(a, 1, 1)
+con2: CNSTI4 "2" range(a, 2, 2)
+con2: CNSTU4 "2" range(a, 2, 2)
+con3: CNSTI4 "3" range(a, 3, 3)
+con3: CNSTU4 "3" range(a, 3, 3)
+
+addr: base "%0"
+addr: baseaddr "%0"
+addr: ADDI4(index,baseaddr) "%1(,%0)"
+addr: ADDP4(index,baseaddr) "%1(,%0)"
+addr: ADDU4(index,baseaddr) "%1(,%0)"
+
+addr: ADDI4(reg,baseaddr) "%1(%0)"
+addr: ADDP4(reg,baseaddr) "%1(%0)"
+addr: ADDU4(reg,baseaddr) "%1(%0)"
+
+addr: ADDI4(index,reg) "(%1,%0)"
+addr: ADDP4(index,reg) "(%1,%0)"
+addr: ADDU4(index,reg) "(%1,%0)"
+
+addr: index "(,%0)"
+
+mem1: INDIRI1(addr) "%0"
+mem1: INDIRU1(addr) "%0"
+mem2: INDIRI2(addr) "%0"
+mem2: INDIRU2(addr) "%0"
+mem4: INDIRI4(addr) "%0"
+mem4: INDIRU4(addr) "%0"
+mem4: INDIRP4(addr) "%0"
+
+rc: reg "%0"
+rc: con "%0"
+
+mr: reg "%0"
+mr: mem4 "%0"
+
+mr1: reg "%0"
+mr1: mem1 "%0"
+
+mr2: reg "%0"
+mr2: mem2 "%0"
+
+mrc: mem4 "%0" 1
+mrc: mem1 "%0" 1
+mrc: mem2 "%0" 1
+mrc: rc "%0"
+
+reg: addr "leal %0,%c\n" 1
+reg: mr "movl %0,%c\n" 1
+reg: mr1 "movb %0,%c\n" 1
+reg: mr2 "movw %0,%c\n" 1
+reg: con "movl %0,%c\n" 1
+
+reg: LOADI1(reg) "# move\n" 1
+reg: LOADI2(reg) "# move\n" 1
+reg: LOADI4(reg) "# move\n" move(a)
+reg: LOADU1(reg) "# move\n" 1
+reg: LOADU2(reg) "# move\n" 1
+reg: LOADU4(reg) "# move\n" move(a)
+reg: LOADP4(reg) "# move\n" move(a)
+reg: ADDI4(reg,mrc) "?movl %0,%c\naddl %1,%c\n" 1
+reg: ADDP4(reg,mrc) "?movl %0,%c\naddl %1,%c\n" 1
+reg: ADDU4(reg,mrc) "?movl %0,%c\naddl %1,%c\n" 1
+reg: SUBI4(reg,mrc) "?movl %0,%c\nsubl %1,%c\n" 1
+reg: SUBP4(reg,mrc) "?movl %0,%c\nsubl %1,%c\n" 1
+reg: SUBU4(reg,mrc) "?movl %0,%c\nsubl %1,%c\n" 1
+reg: BANDI4(reg,mrc) "?movl %0,%c\nandl %1,%c\n" 1
+reg: BORI4(reg,mrc) "?movl %0,%c\norl %1,%c\n" 1
+reg: BXORI4(reg,mrc) "?movl %0,%c\nxorl %1,%c\n" 1
+reg: BANDU4(reg,mrc) "?movl %0,%c\nandl %1,%c\n" 1
+reg: BORU4(reg,mrc) "?movl %0,%c\norl %1,%c\n" 1
+reg: BXORU4(reg,mrc) "?movl %0,%c\nxorl %1,%c\n" 1
+
+stmt: ASGNI4(addr,ADDI4(mem4,con1)) "incl %1\n" memop(a)
+stmt: ASGNI4(addr,ADDU4(mem4,con1)) "incl %1\n" memop(a)
+stmt: ASGNP4(addr,ADDP4(mem4,con1)) "incl %1\n" memop(a)
+stmt: ASGNI4(addr,SUBI4(mem4,con1)) "decl %1\n" memop(a)
+stmt: ASGNI4(addr,SUBU4(mem4,con1)) "decl %1\n" memop(a)
+stmt: ASGNP4(addr,SUBP4(mem4,con1)) "decl %1\n" memop(a)
+stmt: ASGNI4(addr,ADDI4(mem4,rc)) "addl %2,%1\n" memop(a)
+stmt: ASGNI4(addr,SUBI4(mem4,rc)) "sub %2,%1\n" memop(a)
+stmt: ASGNU4(addr,ADDU4(mem4,rc)) "add %2,%1\n" memop(a)
+stmt: ASGNU4(addr,SUBU4(mem4,rc)) "sub %2,%1\n" memop(a)
+
+stmt: ASGNI4(addr,BANDI4(mem4,rc)) "andl %2,%1\n" memop(a)
+stmt: ASGNI4(addr,BORI4(mem4,rc)) "orl %2,%1\n" memop(a)
+stmt: ASGNI4(addr,BXORI4(mem4,rc)) "xorl %2,%1\n" memop(a)
+stmt: ASGNU4(addr,BANDU4(mem4,rc)) "andl %2,%1\n" memop(a)
+stmt: ASGNU4(addr,BORU4(mem4,rc)) "orl %2,%1\n" memop(a)
+stmt: ASGNU4(addr,BXORU4(mem4,rc)) "xorl %2,%1\n" memop(a)
+reg: BCOMI4(reg) "?movl %0,%c\nnotl %c\n" 2
+reg: BCOMU4(reg) "?movl %0,%c\nnotl %c\n" 2
+reg: NEGI4(reg) "?movl %0,%c\nnegl %c\n" 2
+
+stmt: ASGNI4(addr,BCOMI4(mem4)) "notl %1\n" memop(a)
+stmt: ASGNU4(addr,BCOMU4(mem4)) "notl %1\n" memop(a)
+stmt: ASGNI4(addr,NEGI4(mem4)) "negl %1\n" memop(a)
+reg: LSHI4(reg,rc5) "?movl %0,%c\nsall %1,%c\n" 2
+reg: LSHU4(reg,rc5) "?movl %0,%c\nshll %1,%c\n" 2
+reg: RSHI4(reg,rc5) "?movl %0,%c\nsarl %1,%c\n" 2
+reg: RSHU4(reg,rc5) "?movl %0,%c\nshrl %1,%c\n" 2
+
+stmt: ASGNI4(addr,LSHI4(mem4,rc5)) "sall %2,%1\n" memop(a)
+stmt: ASGNI4(addr,LSHU4(mem4,rc5)) "shll %2,%1\n" memop(a)
+stmt: ASGNI4(addr,RSHI4(mem4,rc5)) "sarl %2,%1\n" memop(a)
+stmt: ASGNI4(addr,RSHU4(mem4,rc5)) "shrl %2,%1\n" memop(a)
+
+rc5: CNSTI4 "$%a" range(a, 0, 31)
+rc5: reg "%%cl"
+reg: MULI4(reg,mrc) "?movl %0,%c\nimull %1,%c\n" 14
+reg: MULI4(con,mr) "imul %0,%1,%c\n" 13
+reg: MULU4(reg,mr) "mull %1\n" 13
+reg: DIVU4(reg,reg) "xorl %%edx,%%edx\ndivl %1\n"
+reg: MODU4(reg,reg) "xorl %%edx,%%edx\ndivl %1\n"
+reg: DIVI4(reg,reg) "cdq\nidivl %1\n"
+reg: MODI4(reg,reg) "cdq\nidivl %1\n"
+reg: CVPU4(reg) "movl %0,%c\n" move(a)
+reg: CVUP4(reg) "movl %0,%c\n" move(a)
+reg: CVII4(INDIRI1(addr)) "movsbl %0,%c\n" 3
+reg: CVII4(INDIRI2(addr)) "movswl %0,%c\n" 3
+reg: CVUU4(INDIRU1(addr)) "movzbl %0,%c\n" 3
+reg: CVUU4(INDIRU2(addr)) "movzwl %0,%c\n" 3
+reg: CVII4(reg) "# extend\n" 3
+reg: CVIU4(reg) "# extend\n" 3
+reg: CVUI4(reg) "# extend\n" 3
+reg: CVUU4(reg) "# extend\n" 3
+
+reg: CVII1(reg) "# truncate\n" 1
+reg: CVII2(reg) "# truncate\n" 1
+reg: CVUU1(reg) "# truncate\n" 1
+reg: CVUU2(reg) "# truncate\n" 1
+
+mrca: mem4 "%0"
+mrca: rc "%0"
+mrca: ADDRGP4 "$%a"
+mrca: ADDRGP8 "$%a"
+
+stmt: ASGNI1(addr,rc) "movb %1,%0\n" 1
+stmt: ASGNI2(addr,rc) "movw %1,%0\n" 1
+stmt: ASGNI4(addr,rc) "movl %1,%0\n" 1
+stmt: ASGNU1(addr,rc) "movb %1,%0\n" 1
+stmt: ASGNU2(addr,rc) "movw %1,%0\n" 1
+stmt: ASGNU4(addr,rc) "movl %1,%0\n" 1
+stmt: ASGNP4(addr,rc) "movl %1,%0\n" 1
+stmt: ARGI4(mrca) "pushl %0\n" 1
+stmt: ARGU4(mrca) "pushl %0\n" 1
+stmt: ARGP4(mrca) "pushl %0\n" 1
+stmt: ASGNB(reg,INDIRB(reg)) "movl $%a,%%ecx\nrep\nmovsb\n"
+stmt: ARGB(INDIRB(reg)) "subl $%a,%%esp\nmovl %%esp,%%edi\nmovl $%a,%%ecx\nrep\nmovsb\n"
+
+memf: INDIRF8(addr) "l %0"
+memf: INDIRF4(addr) "s %0"
+memf: CVFF8(INDIRF4(addr)) "s %0"
+memf: CVFF4(INDIRF8(addr)) "l %0"
+
+freg: memf "fld%0\n" 3
+
+stmt: ASGNF8(addr,freg) "fstpl %0\n" 7
+stmt: ASGNF4(addr,freg) "fstps %0\n" 7
+stmt: ASGNF4(addr,CVFF4(freg)) "fstps %0\n" 7
+
+stmt: ARGF8(freg) "subl $8,%%esp\nfstpl (%%esp)\n"
+stmt: ARGF4(freg) "subl $4,%%esp\nfstps (%%esp)\n"
+freg: NEGF8(freg) "fchs\n"
+freg: NEGF4(freg) "fchs\n"
+
+flt: memf "%0"
+flt: freg "p %%st(1),%%st"
+
+freg: ADDF4(freg,flt) "fadd%1\n"
+freg: ADDF8(freg,flt) "fadd%1\n"
+
+freg: DIVF4(freg,flt) "fdiv%1\n"
+freg: DIVF8(freg,flt) "fdiv%1\n"
+
+freg: MULF4(freg,flt) "fmul%1\n"
+freg: MULF8(freg,flt) "fmul%1\n"
+
+freg: SUBF4(freg,flt) "fsub%1\n"
+freg: SUBF8(freg,flt) "fsub%1\n"
+
+freg: CVFF8(freg) "# CVFF8\n"
+freg: CVFF4(freg) "sub $4,%%esp\nfstps (%%esp)\nflds (%%esp)\naddl $4,%%esp\n" 12
+
+stmt: ASGNI4(addr,CVFI4(freg)) "fistpl %0\n" 29
+reg: CVFI4(freg) "subl $4,%%esp\nfistpl 0(%%esp)\npopl %c\n" 31
+
+freg: CVIF8(INDIRI4(addr)) "fildl %0\n" 10
+freg: CVIF8(reg) "pushl %0\nfildl (%%esp)\naddl $4,%%esp\n" 12
+
+freg: CVIF4(INDIRI4(addr)) "fildl %0\n" 10
+freg: CVIF4(reg) "pushl %0\nfildl (%%esp)\naddl $4,%%esp\n" 12
+
+addrj: ADDRGP4 "%a"
+addrj: reg "*%0" 2
+addrj: mem4 "*%0" 2
+
+stmt: LABELV "%a:\n"
+stmt: JUMPV(addrj) "jmp %0\n" 3
+stmt: EQI4(mem4,rc) "cmpl %1,%0\nje %a\n" 5
+stmt: GEI4(mem4,rc) "cmpl %1,%0\njge %a\n" 5
+stmt: GTI4(mem4,rc) "cmpl %1,%0\njg %a\n" 5
+stmt: LEI4(mem4,rc) "cmpl %1,%0\njle %a\n" 5
+stmt: LTI4(mem4,rc) "cmpl %1,%0\njl %a\n" 5
+stmt: NEI4(mem4,rc) "cmpl %1,%0\njne %a\n" 5
+stmt: GEU4(mem4,rc) "cmpl %1,%0\njae %a\n" 5
+stmt: GTU4(mem4,rc) "cmpl %1,%0\nja %a\n" 5
+stmt: LEU4(mem4,rc) "cmpl %1,%0\njbe %a\n" 5
+stmt: LTU4(mem4,rc) "cmpl %1,%0\njb %a\n" 5
+stmt: EQI4(reg,mrc) "cmpl %1,%0\nje %a\n" 4
+stmt: GEI4(reg,mrc) "cmpl %1,%0\njge %a\n" 4
+stmt: GTI4(reg,mrc) "cmpl %1,%0\njg %a\n" 4
+stmt: LEI4(reg,mrc) "cmpl %1,%0\njle %a\n" 4
+stmt: LTI4(reg,mrc) "cmpl %1,%0\njl %a\n" 4
+stmt: NEI4(reg,mrc) "cmpl %1,%0\njne %a\n" 4
+
+stmt: EQU4(reg,mrc) "cmpl %1,%0\nje %a\n" 4
+stmt: GEU4(reg,mrc) "cmpl %1,%0\njae %a\n" 4
+stmt: GTU4(reg,mrc) "cmpl %1,%0\nja %a\n" 4
+stmt: LEU4(reg,mrc) "cmpl %1,%0\njbe %a\n" 4
+stmt: LTU4(reg,mrc) "cmpl %1,%0\njb %a\n" 4
+stmt: NEU4(reg,mrc) "cmpl %1,%0\njne %a\n" 4
+
+stmt: EQI4(BANDU4(mr,con),con0) "testl %1,%0\nje %a\n" 3
+stmt: NEI4(BANDU4(mr,con),con0) "testl %1,%0\njne %a\n"
+
+stmt: EQI4(BANDU4(CVII2(INDIRI2(addr)),con),con0) "testw %1,%0\nje %a\n"
+stmt: NEI4(BANDU4(CVII2(INDIRI2(addr)),con),con0) "testw %1,%0\njne %a\n"
+stmt: EQI4(BANDU4(CVIU2(INDIRI2(addr)),con),con0) "testw %1,%0\nje %a\n"
+stmt: NEI4(BANDU4(CVIU2(INDIRI2(addr)),con),con0) "testw %1,%0\njne %a\n"
+stmt: EQI4(BANDU4(CVII1(INDIRI1(addr)),con),con0) "testb %1,%0\nje %a\n"
+
+cmpf: INDIRF8(addr) "l %0"
+cmpf: INDIRF4(addr) "s %0"
+cmpf: CVFF8(INDIRF4(addr)) "s %0"
+cmpf: freg "p"
+
+stmt: EQF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\nje %a\n"
+stmt: GEF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njbe %a\n"
+stmt: GTF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njb %a\n"
+stmt: LEF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njae %a\n"
+stmt: LTF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\nja %a\n"
+stmt: NEF8(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njne %a\n"
+
+stmt: EQF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\nje %a\n"
+stmt: GEF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njbe %a\n"
+stmt: GTF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njb %a\n"
+stmt: LEF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njae %a\n"
+stmt: LTF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\nja %a\n"
+stmt: NEF4(cmpf,freg) "fcomp%0\nfstsw %%ax\nsahf\njne %a\n"
+
+freg: DIVF8(freg,CVIF8(INDIRI4(addr))) "fidivl %1\n"
+freg: DIVF8(CVIF8(INDIRI4(addr)),freg) "fidivrl %0\n"
+freg: DIVF8(freg,CVIF8(CVII2(INDIRI2(addr)))) "fidivs %1\n"
+freg: DIVF8(CVIF8(CVII2(INDIRI2(addr))),freg) "fidivrs %0\n"
+freg: MULF8(freg,CVIF8(INDIRI4(addr))) "fimull %1\n"
+freg: MULF8(freg,CVIF8(CVII2(INDIRI2(addr)))) "fimuls %1\n"
+freg: SUBF8(freg,CVIF8(INDIRI4(addr))) "fisubl %1\n"
+freg: SUBF8(CVIF8(INDIRI4(addr)),freg) "fisubrl %0\n"
+freg: SUBF8(freg,CVIF8(CVII2(INDIRI2(addr)))) "fisubs %1\n"
+freg: SUBF8(CVIF8(CVII2(INDIRI2(addr))),freg) "fisubrs %0\n"
+freg: ADDF8(freg,CVIF8(INDIRI4(addr))) "fiaddl %1\n"
+freg: ADDF8(freg,CVIF8(CVII2(INDIRI2(addr)))) "fiadds %1\n"
+freg: ADDF8(freg,CVFF8(INDIRF4(addr))) "fdivs %1\n"
+freg: SUBF8(freg,CVFF8(INDIRF4(addr))) "fsubs %1\n"
+freg: MULF8(freg,CVFF8(INDIRF4(addr))) "fmuls %1\n"
+freg: DIVF8(freg,CVFF8(INDIRF4(addr))) "fdivs %1\n"
+freg: LOADF8(memf) "fld%0\n"
+
+reg: CALLI4(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
+reg: CALLU4(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
+reg: CALLP4(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
+
+reg: CALLI4(addrj) "call %0\n" 1
+reg: CALLU4(addrj) "call %0\n" 1
+reg: CALLP4(addrj) "call %0\n" 1
+
+stmt: CALLV(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
+stmt: CALLV(addrj) "call %0\n" 1
+
+freg: CALLF4(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
+freg: CALLF4(addrj) "call %0\n" 1
+
+stmt: CALLF4(addrj) "call %0\naddl $%a,%%esp\nfstp %%st(0)\n" hasargs(a)
+stmt: CALLF4(addrj) "call %0\nfstp %%st(0)\n" 1
+
+freg: CALLF8(addrj) "call %0\naddl $%a,%%esp\n" hasargs(a)
+freg: CALLF8(addrj) "call %0\n" 1
+
+stmt: CALLF8(addrj) "call %0\naddl $%a,%%esp\nfstp %%st(0)\n" hasargs(a)
+stmt: CALLF8(addrj) "call %0\nfstp %%st(0)\n" 1
+
+stmt: RETI4(reg) "# ret\n"
+stmt: RETU4(reg) "# ret\n"
+stmt: RETP4(reg) "# ret\n"
+stmt: RETF4(freg) "# ret\n"
+stmt: RETF8(freg) "# ret\n"
+%%
+static void progbeg(int argc, char *argv[]) {
+ int i;
+
+ {
+ union {
+ char c;
+ int i;
+ } u;
+ u.i = 0;
+ u.c = 1;
+ swap = ((int)(u.i == 1)) != IR->little_endian;
+ }
+ parseflags(argc, argv);
+ for (i = 0; i < argc; i++)
+ if (strcmp(argv[i], "-p") == 0 || strcmp(argv[i], "-pg") == 0)
+ pflag = 1;
+ intreg[EAX] = mkreg("%%eax", EAX, 1, IREG);
+ intreg[EDX] = mkreg("%%edx", EDX, 1, IREG);
+ intreg[ECX] = mkreg("%%ecx", ECX, 1, IREG);
+ intreg[EBX] = mkreg("%%ebx", EBX, 1, IREG);
+ intreg[ESI] = mkreg("%%esi", ESI, 1, IREG);
+ intreg[EDI] = mkreg("%%edi", EDI, 1, IREG);
+ shortreg[EAX] = mkreg("%%ax", EAX, 1, IREG);
+ shortreg[ECX] = mkreg("%%cx", ECX, 1, IREG);
+ shortreg[EDX] = mkreg("%%dx", EDX, 1, IREG);
+ shortreg[EBX] = mkreg("%%bx", EBX, 1, IREG);
+ shortreg[ESI] = mkreg("%%si", ESI, 1, IREG);
+ shortreg[EDI] = mkreg("%%di", EDI, 1, IREG);
+ charreg[EAX] = mkreg("%%al", EAX, 1, IREG);
+ charreg[ECX] = mkreg("%%cl", ECX, 1, IREG);
+ charreg[EDX] = mkreg("%%dl", EDX, 1, IREG);
+ charreg[EBX] = mkreg("%%bl", EBX, 1, IREG);
+ for (i = 0; i < 8; i++)
+ fltreg[i] = mkreg("%d", i, 0, FREG);
+ charregw = mkwildcard(charreg);
+ shortregw = mkwildcard(shortreg);
+ intregw = mkwildcard(intreg);
+ fltregw = mkwildcard(fltreg);
+
+ tmask[IREG] = (1<<EDI) | (1<<ESI) | (1<<EBX)
+ | (1<<EDX) | (1<<ECX) | (1<<EAX);
+ vmask[IREG] = 0;
+ tmask[FREG] = 0xff;
+ vmask[FREG] = 0;
+
+ cseg = 0;
+ quo = mkreg("%%eax", EAX, 1, IREG);
+ quo->x.regnode->mask |= 1<<EDX;
+ rem = mkreg("%%edx", EDX, 1, IREG);
+ rem->x.regnode->mask |= 1<<EAX;
+
+ stabprefix = ".LL";
+}
+
+static Symbol rmap(int opk) {
+ switch (optype(opk)) {
+ case B: case P:
+ return intregw;
+ case I: case U:
+ if (opsize(opk) == 1)
+ return charregw;
+ else if (opsize(opk) == 2)
+ return shortregw;
+ else
+ return intregw;
+ case F:
+ return fltregw;
+ default:
+ return 0;
+ }
+}
+
+static Symbol prevg;
+
+static void globalend(void) {
+ if (prevg && prevg->type->size > 0)
+ print(".size %s,%d\n", prevg->x.name, prevg->type->size);
+ prevg = NULL;
+}
+
+static void progend(void) {
+ globalend();
+ (*IR->segment)(CODE);
+ print(".ident \"LCC: 4.1\"\n");
+}
+
+static void target(Node p) {
+ assert(p);
+ switch (specific(p->op)) {
+ case RSH+I: case RSH+U: case LSH+I: case LSH+U:
+ if (generic(p->kids[1]->op) != CNST
+ && !( generic(p->kids[1]->op) == INDIR
+ && specific(p->kids[1]->kids[0]->op) == VREG+P
+ && p->kids[1]->syms[RX]->u.t.cse
+ && generic(p->kids[1]->syms[RX]->u.t.cse->op) == CNST)) {
+ rtarget(p, 1, intreg[ECX]);
+ setreg(p, intreg[EAX]);
+ }
+ break;
+ case MUL+U:
+ setreg(p, quo);
+ rtarget(p, 0, intreg[EAX]);
+ break;
+ case DIV+I: case DIV+U:
+ setreg(p, quo);
+ rtarget(p, 0, intreg[EAX]);
+ rtarget(p, 1, intreg[ECX]);
+ break;
+ case MOD+I: case MOD+U:
+ setreg(p, rem);
+ rtarget(p, 0, intreg[EAX]);
+ rtarget(p, 1, intreg[ECX]);
+ break;
+ case ASGN+B:
+ rtarget(p, 0, intreg[EDI]);
+ rtarget(p->kids[1], 0, intreg[ESI]);
+ break;
+ case ARG+B:
+ rtarget(p->kids[0], 0, intreg[ESI]);
+ break;
+ case CVF+I:
+ setreg(p, intreg[EAX]);
+ break;
+ case CALL+I: case CALL+U: case CALL+P: case CALL+V:
+ setreg(p, intreg[EAX]);
+ break;
+ case RET+I: case RET+U: case RET+P:
+ rtarget(p, 0, intreg[EAX]);
+ break;
+ }
+}
+
+static void clobber(Node p) {
+ static int nstack = 0;
+
+ assert(p);
+ nstack = ckstack(p, nstack);
+ switch (specific(p->op)) {
+ case ASGN+B: case ARG+B:
+ spill(1<<ECX | 1<<ESI | 1<<EDI, IREG, p);
+ break;
+ case EQ+F: case LE+F: case GE+F: case LT+F: case GT+F: case NE+F:
+ spill(1<<EAX, IREG, p);
+ break;
+ case CALL+F:
+ spill(1<<EDX | 1<<EAX | 1<<ECX, IREG, p);
+ break;
+ case CALL+I: case CALL+U: case CALL+P: case CALL+V:
+ spill(1<<EDX | 1<<ECX, IREG, p);
+ break;
+ }
+}
+
+static void emit2(Node p) {
+ int op = specific(p->op);
+#define preg(f) ((f)[getregnum(p->x.kids[0])]->x.name)
+
+ if (op == CVI+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
+ print("movsbl %s,%s\n", preg(charreg), p->syms[RX]->x.name);
+ else if (op == CVI+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
+ print("movsbl %s,%s\n", preg(charreg), p->syms[RX]->x.name);
+ else if (op == CVI+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
+ print("movswl %s,%s\n", preg(shortreg), p->syms[RX]->x.name);
+ else if (op == CVI+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
+ print("movswl %s,%s\n", preg(shortreg), p->syms[RX]->x.name);
+ else if (op == CVU+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
+ print("movzbl %s,%s\n", preg(charreg), p->syms[RX]->x.name);
+ else if (op == CVU+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 1)
+ print("movzbl %s,%s\n", preg(charreg), p->syms[RX]->x.name);
+ else if (op == CVU+I && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
+ print("movzwl %s,%s\n", preg(shortreg), p->syms[RX]->x.name);
+ else if (op == CVU+U && opsize(p->op) == 4 && opsize(p->x.kids[0]->op) == 2)
+ print("movzwl %s,%s\n", preg(shortreg), p->syms[RX]->x.name);
+ else if (generic(op) == CVI || generic(op) == CVU || generic(op) == LOAD) {
+ char *dst = intreg[getregnum(p)]->x.name;
+ char *src = preg(intreg);
+ assert(opsize(p->op) <= opsize(p->x.kids[0]->op));
+ if (dst != src)
+ print("movl %s,%s\n", src, dst);
+ }
+}
+
+static void function(Symbol f, Symbol caller[], Symbol callee[], int n) {
+ int i;
+
+ globalend();
+ print(".align 16\n");
+ print(".type %s,@function\n", f->x.name);
+ print("%s:\n", f->x.name);
+ print("pushl %%ebp\n");
+ if (pflag) {
+ static int plab;
+ print("movl %%esp,%%ebp\n");
+ (*IR->segment)(DATA);
+ print(".align 4\n.LP%d:\n.long 0\n", plab);
+ (*IR->segment)(CODE);
+ print("movl $.LP%d,%%edx\ncall mcount\n", plab);
+ plab++;
+ }
+ print("pushl %%ebx\n");
+ print("pushl %%esi\n");
+ print("pushl %%edi\n");
+ print("movl %%esp,%%ebp\n");
+
+ usedmask[0] = usedmask[1] = 0;
+ freemask[0] = freemask[1] = ~0U;
+ offset = 16 + 4;
+ for (i = 0; callee[i]; i++) {
+ Symbol p = callee[i];
+ Symbol q = caller[i];
+ assert(q);
+ offset = roundup(offset, q->type->align);
+ p->x.offset = q->x.offset = offset;
+ p->x.name = q->x.name = stringf("%d", p->x.offset);
+ p->sclass = q->sclass = AUTO;
+ offset += roundup(q->type->size, 4);
+ }
+ assert(caller[i] == 0);
+ offset = maxoffset = 0;
+ gencode(caller, callee);
+ framesize = roundup(maxoffset, 4);
+ if (framesize > 0)
+ print("subl $%d,%%esp\n", framesize);
+ emitcode();
+ print("movl %%ebp,%%esp\n");
+ print("popl %%edi\n");
+ print("popl %%esi\n");
+ print("popl %%ebx\n");
+ print("popl %%ebp\n");
+ print("ret\n");
+ { int l = genlabel(1);
+ print(".Lf%d:\n", l);
+ print(".size %s,.Lf%d-%s\n", f->x.name, l, f->x.name);
+ }
+}
+
+static void defsymbol(Symbol p) {
+ if (p->scope >= LOCAL && p->sclass == STATIC)
+ p->x.name = stringf("%s.%d", p->name, genlabel(1));
+ else if (p->generated)
+ p->x.name = stringf(".LC%s", p->name);
+ else if (p->scope == GLOBAL || p->sclass == EXTERN)
+ p->x.name = stringf("%s", p->name);
+ else
+ p->x.name = p->name;
+}
+
+static void segment(int n) {
+ if (n == cseg)
+ return;
+ cseg = n;
+ if (cseg == CODE)
+ print(".text\n");
+ else if (cseg == BSS)
+ print(".bss\n");
+ else if (cseg == DATA || cseg == LIT)
+ print(".data\n");
+}
+
+static void defconst(int suffix, int size, Value v) {
+ if (suffix == I && size == 1)
+ print(".byte %d\n", v.u);
+ else if (suffix == I && size == 2)
+ print(".word %d\n", v.i);
+ else if (suffix == I && size == 4)
+ print(".long %d\n", v.i);
+ else if (suffix == U && size == 1)
+ print(".byte %d\n", v.u);
+ else if (suffix == U && size == 2)
+ print(".word %d\n", v.u);
+ else if (suffix == U && size == 4)
+ print(".long %d\n", v.u);
+ else if (suffix == P && size == 4)
+ print(".long %d\n", v.p);
+ else if (suffix == F && size == 4) {
+ float f = v.d;
+ print(".long %d\n", *(unsigned *)&f);
+ } else if (suffix == F && size == 8) {
+ double d = v.d;
+ unsigned *p = (unsigned *)&d;
+ print(".long %d\n.long %d\n", p[swap], p[!swap]);
+ }
+ else assert(0);
+}
+
+static void defaddress(Symbol p) {
+ print(".long %s\n", p->x.name);
+}
+
+static void defstring(int n, char *str) {
+ char *s;
+
+ for (s = str; s < str + n; s++)
+ print(".byte %d\n", (*s)&0377);
+}
+
+static void export(Symbol p) {
+ globalend();
+ print(".globl %s\n", p->x.name);
+}
+
+static void import(Symbol p) {}
+
+static void global(Symbol p) {
+ globalend();
+ print(".align %d\n", p->type->align > 4 ? 4 : p->type->align);
+ if (!p->generated) {
+ print(".type %s,@%s\n", p->x.name,
+ isfunc(p->type) ? "function" : "object");
+ if (p->type->size > 0)
+ print(".size %s,%d\n", p->x.name, p->type->size);
+ else
+ prevg = p;
+ }
+ if (p->u.seg == BSS) {
+ if (p->sclass == STATIC)
+ print(".lcomm %s,%d\n", p->x.name, p->type->size);
+ else
+ print(".comm %s,%d\n", p->x.name, p->type->size);
+ } else {
+ print("%s:\n", p->x.name);
+ }
+}
+
+static void space(int n) {
+ if (cseg != BSS)
+ print(".space %d\n", n);
+}
+
+Interface x86linuxIR = {
+ 1, 1, 0, /* char */
+ 2, 2, 0, /* short */
+ 4, 4, 0, /* int */
+ 4, 4, 0, /* long */
+ 4, 4, 0, /* long long */
+ 4, 4, 1, /* float */
+ 8, 4, 1, /* double */
+ 8, 4, 1, /* long double */
+ 4, 4, 0, /* T * */
+ 0, 4, 0, /* struct; so that ARGB keeps stack aligned */
+ 1, /* little_endian */
+ 0, /* mulops_calls */
+ 0, /* wants_callb */
+ 1, /* wants_argb */
+ 0, /* left_to_right */
+ 0, /* wants_dag */
+ 0, /* unsigned_char */
+ 0, /* address */
+ blockbeg,
+ blockend,
+ defaddress,
+ defconst,
+ defstring,
+ defsymbol,
+ emit,
+ export,
+ function,
+ gen,
+ global,
+ import,
+ 0, /* local */
+ progbeg,
+ progend,
+ segment,
+ space,
+ stabblock, stabend, 0, stabinit, stabline, stabsym, stabtype,
+ {1, rmap,
+ 0, 0, 0, /* blkfetch, blkstore, blkloop */
+ _label,
+ _rule,
+ _nts,
+ _kids,
+ _string,
+ _templates,
+ _isinstruction,
+ _ntname,
+ emit2,
+ 0, /* doarg */
+ target,
+ clobber,
+ }
+};
+
+void x86linux_init(int argc, char *argv[]) {
+ static int inited;
+ extern Interface x86IR;
+
+ if (inited)
+ return;
+ inited = 1;
+#define xx(f) assert(!x86linuxIR.f); x86linuxIR.f = x86IR.f
+ xx(address);
+ xx(local);
+ xx(x.blkfetch);
+ xx(x.blkstore);
+ xx(x.blkloop);
+ xx(x.doarg);
+#undef xx
+}
diff --git a/lcc/tst/8q.c b/lcc/tst/8q.c
index e55ba1a..60a65a9 100755
--- a/lcc/tst/8q.c
+++ b/lcc/tst/8q.c
@@ -1,39 +1,39 @@
-int up[15], down[15], rows[8], x[8];
-int queens(), print();
-
-main()
-{
- int i;
-
- for (i = 0; i < 15; i++)
- up[i] = down[i] = 1;
- for (i = 0; i < 8; i++)
- rows[i] = 1;
- queens(0);
- return 0;
-}
-
-queens(c)
-{
- int r;
-
- for (r = 0; r < 8; r++)
- if (rows[r] && up[r-c+7] && down[r+c]) {
- rows[r] = up[r-c+7] = down[r+c] = 0;
- x[c] = r;
- if (c == 7)
- print();
- else
- queens(c + 1);
- rows[r] = up[r-c+7] = down[r+c] = 1;
- }
-}
-
-print()
-{
- int k;
-
- for (k = 0; k < 8; k++)
- printf("%c ", x[k]+'1');
- printf("\n");
-}
+int up[15], down[15], rows[8], x[8];
+int queens(), print();
+
+main()
+{
+ int i;
+
+ for (i = 0; i < 15; i++)
+ up[i] = down[i] = 1;
+ for (i = 0; i < 8; i++)
+ rows[i] = 1;
+ queens(0);
+ return 0;
+}
+
+queens(c)
+{
+ int r;
+
+ for (r = 0; r < 8; r++)
+ if (rows[r] && up[r-c+7] && down[r+c]) {
+ rows[r] = up[r-c+7] = down[r+c] = 0;
+ x[c] = r;
+ if (c == 7)
+ print();
+ else
+ queens(c + 1);
+ rows[r] = up[r-c+7] = down[r+c] = 1;
+ }
+}
+
+print()
+{
+ int k;
+
+ for (k = 0; k < 8; k++)
+ printf("%c ", x[k]+'1');
+ printf("\n");
+}
diff --git a/lcc/tst/array.c b/lcc/tst/array.c
index 7b03da5..4c967e7 100755
--- a/lcc/tst/array.c
+++ b/lcc/tst/array.c
@@ -1,48 +1,48 @@
-int x[3][4], *y[3];
-
-main() {
- int z[3][4];
- int i, j, *p;
-
- for (i = 0; i < 3; i++) {
- for (j = 0; j < 4; j++)
- x[i][j] = 1000*i + j;
- y[i] = x[i];
- }
- f();
- for (i = 0; i < 3; i++) {
- y[i] = p = &z[i][0];
- for (j = 0; j < 4; j++)
- p[j] = x[i][j];
- }
- g(z, y);
- return 0;
-}
-
-f() {
- int i, j;
-
- for (i = 0; i < 3; i++)
- for (j = 0; j < 4; j++)
- printf(" %d", x[i][j]);
- printf("\n");
- for (i = 0; i < 3; i++)
- for (j = 0; j < 4; j++)
- printf(" %d", y[i][j]);
- printf("\n");
-}
-
-g(x, y)
-int x[][4], *y[];
-{
- int i, j;
-
- for (i = 0; i < 3; i++)
- for (j = 0; j < 4; j++)
- printf(" %d", x[i][j]);
- printf("\n");
- for (i = 0; i < 3; i++)
- for (j = 0; j < 4; j++)
- printf(" %d", y[i][j]);
- printf("\n");
-}
+int x[3][4], *y[3];
+
+main() {
+ int z[3][4];
+ int i, j, *p;
+
+ for (i = 0; i < 3; i++) {
+ for (j = 0; j < 4; j++)
+ x[i][j] = 1000*i + j;
+ y[i] = x[i];
+ }
+ f();
+ for (i = 0; i < 3; i++) {
+ y[i] = p = &z[i][0];
+ for (j = 0; j < 4; j++)
+ p[j] = x[i][j];
+ }
+ g(z, y);
+ return 0;
+}
+
+f() {
+ int i, j;
+
+ for (i = 0; i < 3; i++)
+ for (j = 0; j < 4; j++)
+ printf(" %d", x[i][j]);
+ printf("\n");
+ for (i = 0; i < 3; i++)
+ for (j = 0; j < 4; j++)
+ printf(" %d", y[i][j]);
+ printf("\n");
+}
+
+g(x, y)
+int x[][4], *y[];
+{
+ int i, j;
+
+ for (i = 0; i < 3; i++)
+ for (j = 0; j < 4; j++)
+ printf(" %d", x[i][j]);
+ printf("\n");
+ for (i = 0; i < 3; i++)
+ for (j = 0; j < 4; j++)
+ printf(" %d", y[i][j]);
+ printf("\n");
+}
diff --git a/lcc/tst/cf.0 b/lcc/tst/cf.0
index 1c9226a..28efab7 100755
--- a/lcc/tst/cf.0
+++ b/lcc/tst/cf.0
@@ -1,32 +1,32 @@
-/* cf - print character frequencies */
-float f[128];
-
-main(argc, argv)
-int argc;
-char *argv[];
-{
- int i, c, nc;
- float cutoff, atof();
-
- if (argc <= 1)
- cutoff = 0.0;
- else
- cutoff = atof(argv[1])/100;
- for (i = 0; i <= 127; )
- f[i++] = 0.0;
- nc = 0;
- while ((c = getchar()) != -1) {
- f[c] += 1;
- nc++;
- }
- printf("char\tfreq\n");
- for (i = 0; i <= 127; ++i)
- if (f[i] && f[i]/nc >= cutoff) {
- if (i <= ' ')
- printf("%03o", i);
- else
- printf("%c", i);
- printf("\t%.1f\n", 100*f[i]/nc);
- }
- return 0;
-}
+/* cf - print character frequencies */
+float f[128];
+
+main(argc, argv)
+int argc;
+char *argv[];
+{
+ int i, c, nc;
+ float cutoff, atof();
+
+ if (argc <= 1)
+ cutoff = 0.0;
+ else
+ cutoff = atof(argv[1])/100;
+ for (i = 0; i <= 127; )
+ f[i++] = 0.0;
+ nc = 0;
+ while ((c = getchar()) != -1) {
+ f[c] += 1;
+ nc++;
+ }
+ printf("char\tfreq\n");
+ for (i = 0; i <= 127; ++i)
+ if (f[i] && f[i]/nc >= cutoff) {
+ if (i <= ' ')
+ printf("%03o", i);
+ else
+ printf("%c", i);
+ printf("\t%.1f\n", 100*f[i]/nc);
+ }
+ return 0;
+}
diff --git a/lcc/tst/cf.c b/lcc/tst/cf.c
index 1c9226a..28efab7 100755
--- a/lcc/tst/cf.c
+++ b/lcc/tst/cf.c
@@ -1,32 +1,32 @@
-/* cf - print character frequencies */
-float f[128];
-
-main(argc, argv)
-int argc;
-char *argv[];
-{
- int i, c, nc;
- float cutoff, atof();
-
- if (argc <= 1)
- cutoff = 0.0;
- else
- cutoff = atof(argv[1])/100;
- for (i = 0; i <= 127; )
- f[i++] = 0.0;
- nc = 0;
- while ((c = getchar()) != -1) {
- f[c] += 1;
- nc++;
- }
- printf("char\tfreq\n");
- for (i = 0; i <= 127; ++i)
- if (f[i] && f[i]/nc >= cutoff) {
- if (i <= ' ')
- printf("%03o", i);
- else
- printf("%c", i);
- printf("\t%.1f\n", 100*f[i]/nc);
- }
- return 0;
-}
+/* cf - print character frequencies */
+float f[128];
+
+main(argc, argv)
+int argc;
+char *argv[];
+{
+ int i, c, nc;
+ float cutoff, atof();
+
+ if (argc <= 1)
+ cutoff = 0.0;
+ else
+ cutoff = atof(argv[1])/100;
+ for (i = 0; i <= 127; )
+ f[i++] = 0.0;
+ nc = 0;
+ while ((c = getchar()) != -1) {
+ f[c] += 1;
+ nc++;
+ }
+ printf("char\tfreq\n");
+ for (i = 0; i <= 127; ++i)
+ if (f[i] && f[i]/nc >= cutoff) {
+ if (i <= ' ')
+ printf("%03o", i);
+ else
+ printf("%c", i);
+ printf("\t%.1f\n", 100*f[i]/nc);
+ }
+ return 0;
+}
diff --git a/lcc/tst/cq.c b/lcc/tst/cq.c
index 55d18d1..5cd0d6e 100755
--- a/lcc/tst/cq.c
+++ b/lcc/tst/cq.c
@@ -1,5316 +1,5316 @@
- struct defs {
- int cbits; /* No. of bits per char */
- int ibits; /* int */
- int sbits; /* short */
- int lbits; /* long */
- int ubits; /* unsigned */
- int fbits; /* float */
- int dbits; /* double */
- float fprec; /* Smallest number that can be */
- float dprec; /* significantly added to 1. */
- int flgs; /* Print return codes, by section */
- int flgm; /* Announce machine dependencies */
- int flgd; /* give explicit diagnostics */
- int flgl; /* Report local return codes. */
- int rrc; /* recent return code */
- int crc; /* Cumulative return code */
- char rfs[8]; /* Return from section */
- };
-main(n,args) /* C REFERENCE MANUAL */
-int n;
-char **args;
-{
-
-/* This program performs a series of tests on a C compiler,
-based on information in the
-
- C REFERENCE MANUAL
-
-which appears as Appendix A to the book "The C Programming
-Language" by Brian W. Kernighan and Dennis M. Ritchie
-(Prentice-Hall, 1978, $10.95). This Appendix is hereafter
-referred to as "the Manual".
-
- The rules followed in writing this program are:
-
- 1. The entire program is written in legal C, according
- to the Manual. It should compile with no error messages,
- although some warning messages may be produced by some
- compilers. Failure to compile should be interpreted as
- a compiler error.
-
- 2. The program is clean, in that it does not make use
- of any features of the operating system on which it runs,
- with the sole exceptions of the printf() function, and an
- internal "options" routine, which is easily excised.
-
- 3. No global variables are used, except for the spec-
- ific purpose of testing the global variable facility.
-
- The program is divided into modules having names of the
-form snnn... These modules correspond to those sections of the
-Manual, as identified by boldface type headings, in which
-there is something to test. For example, s241() corresponds
-to section 2.4.1 of the Manual (Integer constants) and tests
-the facilities described therein. The module numbering
-scheme is ambiguous, especially when it names modules
-referring to more than one section; module s7813, for ex-
-ample, deals with sections 7.8 through 7.13. Nonetheless,
-it is surprisingly easy to find a section in the Manual
-corresponding to a section of code, and vice versa.
-
- Note also that there seem to be "holes" in the program,
-at least from the point of view that there exist sections in the
-Manual for which there is no corresponding code. Such holes
-arise from three causes: (a) there is nothing in that partic-
-ular section to test, (b) everything in that section is tested
-elsewhere, and (c) it was deemed advisable not to check cer-
-tain features like preprocessor or listing control features.
-
- Modules are called by a main program main(). The mod-
-ules that are called, and the sequence in which they are
-called, are determined by two lists in main(), in which the
-module names appear. The first list (an extern statement)
-declares the module names to be external. The second (a stat-
-ic int statement) names the modules and defines the sequence
-in which they are called. There is no need for these lists
-to be in the same order, but it is probably a good idea to keep
-them that way in the interest of clarity. Since there are no
-cross-linkages between modules, new modules may be added,
-or old ones deleted, simply by editing the lists, with one
-exception: section s26, which pokes around at the hardware
-trying to figure out the characteristics of the machine that
-it is running on, saves information that is subsequently
-used by sections s626, s72, and s757. If this program is
-to be broken up into smallish pieces, say for running on
-a microcomputer, take care to see that s26 is called before
-calling any of the latter three sections. The size
-of the lists, i.e., the number of modules to be called, is
-not explicitly specified as a program parameter, but is
-determined dynamically using the sizeof operator.
-
- Communication between the main program and the modules
-takes place in two ways. In all cases, a pointer to a structure
-is passed to the called module. The structure contains flags
-that will determine the type of information to be published
-by the module, and fields that may be written in by the
-module. The former include "flgm" and "flgd", which, if set
-to a nonzero value, specify that machine dependencies are to
-be announced or that error messages are to be printed, re-
-spectively. The called module's name, and the hardware char-
-acteristics probed in s26() comprise the latter.
-
-
- Also, in all cases, a return code is returned by the called
-module. A return code of zero indicates that all has gone well;
-nonzero indicates otherwise. Since more than one type of error
-may be detected by a module, the return code is a composite
-of error indicators, which, individually, are given as numbers
-that are powers of two. Thus, a return code of 10 indicates
-that two specific errors, 8 and 2, were detected. Whether or
-not the codes returned by the modules are printed by the main
-program is determined by setting "flgs" to 1 (resp. 0).
-
- The entire logic of the main program is contained in the
-half-dozen or so lines at the end. The somewhat cryptic
-statement:
-
- d0.rrc = (*sec[j])(pd0);
-
-in the for loop calls the modules. The rest of the code is
-reasonably straightforward.
-
- Finally, in each of the modules, there is the following
-prologue:
-
- snnn(pd0)
- struct defs *pd0;
- {
- static char snnner[] = "snnn,er%d\n";
- static char qsnnn[8] = "snnn ";
- char *ps, *pt;
- int rc;
-
- rc = 0;
- ps = qsnnn;
- pt = pd0->rfs;
- while(*pt++ = *ps++);
-
-used for housekeeping, handshaking and module initialization.
-
- */
- extern
- s22(),
- s241(),
- s243(),
- s244(),
- s25(),
- s26(),
- s4(),
- s61(),
- s626(),
- s71(),
- s72(),
- s757(),
- s7813(),
- s714(),
- s715(),
- s81(),
- s84(),
- s85(),
- s86(),
- s88(),
- s9()
- ;
-
- int j;
- static int (*sec[])() = {
- s22,
- s241,
- s243,
- s244,
- s25,
- s26,
- s4,
- s61,
- s626,
- s71,
- s72,
- s757,
- s7813,
- s714,
- s715,
- s81,
- s84,
- s85,
- s86,
- s88,
- s9
- };
-
- static struct defs d0, *pd0;
-
- d0.flgs = 1; /* These flags dictate */
- d0.flgm = 1; /* the verbosity of */
- d0.flgd = 1; /* the program. */
- d0.flgl = 1;
-
- pd0 = &d0;
-
- for (j=0; j<sizeof(sec) / sizeof(sec[0]); j++) {
- d0.rrc = (*sec[j])(pd0);
- d0.crc = d0.crc+d0.rrc;
- if(d0.flgs != 0) printf("Section %s returned %d.\n",d0.rfs,d0.rrc);
- }
-
- if(d0.crc == 0) printf("\nNo errors detected.\n");
- else printf("\nFailed.\n");
- return 0;
-}
-s22(pd0) /* 2.2 Identifiers (Names) */
-struct defs *pd0;
-{
- int a234, a;
- int _, _234, A, rc;
-
- static char s22er[] = "s22,er%d\n";
- static char qs22[8] = "s22 ";
-
- char *ps, *pt;
- /* Initialize */
-
- rc = 0;
- ps = qs22;
- pt = pd0 -> rfs;
- while (*pt++ = *ps++);
-
- /* An identifier is a sequence of letters and digits;
- the first character must be a letter. The under-
- score _ counts as a letter. */
-
- a=1;
- _=2;
- _234=3;
- a234=4;
- if(a+_+_234+a234 != 10) {
- rc = rc+1;
- if(pd0->flgd != 0) printf(s22er,1);
- }
-
- /* Upper and lower case letters are different. */
-
- A = 2;
- if (A == a) {
- rc = rc+4;
- if (pd0->flgd != 0) printf(s22er,4);
- }
-
- return(rc);
-}
-s241(pd0) /* 2.4.1 Integer constants
- 2.4.2 Explicit long constants */
-struct defs *pd0;
-{
- long pow2();
- static char s241er[] = "s241,er%d\n";
- static char qs241[8] = "s241 ";
- char *ps, *pt;
- int rc, j, lrc;
- static long g[39] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,6,0,8,0,12,0,16,0,18,0,20,0,24,
- 0,28,0,30,0,32,0,36};
- long d[39], o[39], x[39];
-
- rc = 0;
- lrc = 0;
- ps = qs241;
- pt = pd0 -> rfs;
- while (*pt++ = *ps++);
-
- /* An integer constant consisting of a sequence of digits is
- taken to be octal if it begins with 0 (digit zero), decimal
- otherwise. */
-
- if ( 8 != 010
- || 16 != 020
- || 24 != 030
- || 32 != 040
- || 40 != 050
- || 48 != 060
- || 56 != 070
- || 64 != 0100
- || 72 != 0110
- || 80 != 0120
- || 9 != 0011
- || 17 != 0021
- || 25 != 0031
- || 33 != 0041
- || 41 != 0051
- || 49 != 0061
- || 57 != 0071
- || 65 != 0101
- || 73 != 0111
- || 81 != 0121 ){
-
- rc = rc+1;
- if( pd0->flgd != 0 ) printf(s241er,1);
- }
-
- /* A sequence of digits preceded by 0x or 0X (digit zero)
- is taken to be a hexadecimal integer. The hexadecimal
- digits include a or A through f or F with values 10
- through 15. */
-
- if ( 0x00abcdef != 0xabcdef
- || 0xabcdef != 0Xabcdef || 0Xabcdef != 0XAbcdef
- || 0XAbcdef != 0XABcdef || 0XABcdef != 0XABCdef
- || 0XABCdef != 0XABCDef || 0XABCDef != 0XABCDEf
- || 0XABCDEf != 0XABCDEF || 0xABCDEF != 11259375 ){
-
- rc = rc+2;
- if( pd0->flgd != 0 ) printf(s241er,2);
- }
-
- /* A decimal constant whose value exceeds the largest signed
- machine integer is taken to be long; an octal or hex con-
- stant which exceeds the largest unsigned machine integer
- is likewise taken to be long. */
-
- if ( sizeof 010000000000 != sizeof(long) /* 2**30 */
- || sizeof 1073741824 != sizeof(long) /* ditto */
- || sizeof 0x40000000 != sizeof(long) ){ /* " */
-
- rc = rc+4;
- if( pd0->flgd != 0 ) printf(s241er,4);
- }
-
- /* A decimal, octal, or hexadecimal constant immediately followed
- by l (letter ell) or L is a long constant. */
-
- if ( sizeof 67l != sizeof(long)
- || sizeof 67L != sizeof(long)
- || sizeof 067l != sizeof(long)
- || sizeof 067L != sizeof(long)
- || sizeof 0X67l != sizeof(long)
- || sizeof 0x67L != sizeof(long) ){
-
- rc = rc+8;
- if( pd0 -> flgd != 0 ) printf(s241er,8);
- }
-
- /* Finally, we test to see that decimal (d), octal (o),
- and hexadecimal (x) constants representing the same values
- agree among themselves, and with computed values, at spec-
- ified points over an appropriate range. The points select-
- ed here are those with the greatest potential for caus-
- ing trouble, i.e., zero, 1-16, and values of 2**n and
- 2**n - 1 where n is some multiple of 4 or 6. Unfortunately,
- just what happens when a value is too big to fit in a
- long is undefined; however, it would be nice if what
- happened were at least consistent... */
-
- for ( j=0; j<17; j++ ) g[j] = j;
- for ( j=18; j<39; ) {
- g[j] = pow2(g[j]);
- g[j-1] = g[j] - 1;
- j = j+2;
- }
-
- d[0] = 0; o[0] = 00; x[0] = 0x0;
- d[1] = 1; o[1] = 01; x[1] = 0x1;
- d[2] = 2; o[2] = 02; x[2] = 0x2;
- d[3] = 3; o[3] = 03; x[3] = 0x3;
- d[4] = 4; o[4] = 04; x[4] = 0x4;
- d[5] = 5; o[5] = 05; x[5] = 0x5;
- d[6] = 6; o[6] = 06; x[6] = 0x6;
- d[7] = 7; o[7] = 07; x[7] = 0x7;
- d[8] = 8; o[8] = 010; x[8] = 0x8;
- d[9] = 9; o[9] = 011; x[9] = 0x9;
- d[10] = 10; o[10] = 012; x[10] = 0xa;
- d[11] = 11; o[11] = 013; x[11] = 0xb;
- d[12] = 12; o[12] = 014; x[12] = 0xc;
- d[13] = 13; o[13] = 015; x[13] = 0xd;
- d[14] = 14; o[14] = 016; x[14] = 0xe;
- d[15] = 15; o[15] = 017; x[15] = 0xf;
- d[16] = 16; o[16] = 020; x[16] = 0x10;
- d[17] = 63; o[17] = 077; x[17] = 0x3f;
- d[18] = 64; o[18] = 0100; x[18] = 0x40;
- d[19] = 255; o[19] = 0377; x[19] = 0xff;
- d[20] = 256; o[20] = 0400; x[20] = 0x100;
- d[21] = 4095; o[21] = 07777; x[21] = 0xfff;
- d[22] = 4096; o[22] = 010000; x[22] = 0x1000;
- d[23] = 65535; o[23] = 0177777; x[23] = 0xffff;
- d[24] = 65536; o[24] = 0200000; x[24] = 0x10000;
- d[25] = 262143; o[25] = 0777777; x[25] = 0x3ffff;
- d[26] = 262144; o[26] = 01000000; x[26] = 0x40000;
- d[27] = 1048575; o[27] = 03777777; x[27] = 0xfffff;
- d[28] = 1048576; o[28] = 04000000; x[28] = 0x100000;
- d[29] = 16777215; o[29] = 077777777; x[29] = 0xffffff;
- d[30] = 16777216; o[30] = 0100000000; x[30] = 0x1000000;
- d[31] = 268435455; o[31] = 01777777777; x[31] = 0xfffffff;
- d[32] = 268435456; o[32] = 02000000000; x[32] = 0x10000000;
- d[33] = 1073741823; o[33] = 07777777777; x[33] = 0x3fffffff;
- d[34] = 1073741824; o[34] = 010000000000; x[34] = 0x40000000;
- d[35] = 4294967295; o[35] = 037777777777; x[35] = 0xffffffff;
- d[36] = 4294967296; o[36] = 040000000000; x[36] = 0x100000000;
- d[37] = 68719476735; o[37] = 0777777777777; x[37] = 0xfffffffff;
- d[38] = 68719476736; o[38] = 01000000000000; x[38] = 0x1000000000;
-
- /* WHEW! */
-
- for (j=0; j<39; j++){
- if ( g[j] != d[j]
- || d[j] != o[j]
- || o[j] != x[j]) {
-
- if( pd0 -> flgm != 0 ) {
-/* printf(s241er,16); save in case opinions change... */
- printf("Decimal and octal/hex constants sometimes give\n");
- printf(" different results when assigned to longs.\n");
- }
-/* lrc = 1; save... */
- }
- }
-
- if (lrc != 0) rc =16;
-
- return rc;
-}
-
-long pow2(n) /* Calculate 2**n by multiplying, not shifting */
-long n;
-{
- long s;
- s = 1;
- while(n--) s = s*2;
- return s;
-}
-s243(pd0) /* 2.4.3 Character constants */
-struct defs *pd0;
-{
- static char s243er[] = "s243,er%d\n";
- static char qs243[8] = "s243 ";
- char *ps, *pt;
- int rc;
- char chars[256];
-
- rc = 0;
- ps = qs243;
- pt = pd0->rfs;
- while(*pt++ = *ps++);
-
- /* One of the problems that arises when testing character constants
- is that of definition: What, exactly, is the character set?
- In order to guarantee a certain amount of machine independence,
- the character set we will use here is the set of characters writ-
- able as escape sequences in C, plus those characters used in writ-
- ing C programs, i.e.,
-
- letters:
- ABCDEFGHIJKLMNOPQRSTUVWXYZ 26
- abcdefghijklmnopqrstuvwxyz 26
- numbers:
- 0123456789 10
- special characters:
- ~!"#%&()_=-^|{}[]+;*:<>,.?/ 27
- extra special characters:
- newline \n
- horizontal tab \t
- backspace \b
- carriage return \r
- form feed \f
- backslash \\
- single quote \' 7
- blank & NUL 2
- ---
- 98
-
- Any specific implementation of C may of course support additional
- characters. */
-
- /* Since the value of a character constant is the numerical value
- of the character in the machine's character set, there should
- be a one-to-one correspondence between characters and values. */
-
- zerofill(chars);
-
- chars['a'] = 1; chars['A'] = 1; chars['~'] = 1; chars['0'] = 1;
- chars['b'] = 1; chars['B'] = 1; chars['!'] = 1; chars['1'] = 1;
- chars['c'] = 1; chars['C'] = 1; chars['"'] = 1; chars['2'] = 1;
- chars['d'] = 1; chars['D'] = 1; chars['#'] = 1; chars['3'] = 1;
- chars['e'] = 1; chars['E'] = 1; chars['%'] = 1; chars['4'] = 1;
- chars['f'] = 1; chars['F'] = 1; chars['&'] = 1; chars['5'] = 1;
- chars['g'] = 1; chars['G'] = 1; chars['('] = 1; chars['6'] = 1;
- chars['h'] = 1; chars['H'] = 1; chars[')'] = 1; chars['7'] = 1;
- chars['i'] = 1; chars['I'] = 1; chars['_'] = 1; chars['8'] = 1;
- chars['j'] = 1; chars['J'] = 1; chars['='] = 1; chars['9'] = 1;
- chars['k'] = 1; chars['K'] = 1; chars['-'] = 1;
- chars['l'] = 1; chars['L'] = 1; chars['^'] = 1;
- chars['m'] = 1; chars['M'] = 1; chars['|'] = 1; chars['\n'] = 1;
- chars['n'] = 1; chars['N'] = 1; chars['\t'] = 1;
- chars['o'] = 1; chars['O'] = 1; chars['{'] = 1; chars['\b'] = 1;
- chars['p'] = 1; chars['P'] = 1; chars['}'] = 1; chars['\r'] = 1;
- chars['q'] = 1; chars['Q'] = 1; chars['['] = 1; chars['\f'] = 1;
- chars['r'] = 1; chars['R'] = 1; chars[']'] = 1;
- chars['s'] = 1; chars['S'] = 1; chars['+'] = 1; chars['\\'] = 1;
- chars['t'] = 1; chars['T'] = 1; chars[';'] = 1; chars['\''] = 1;
- chars['u'] = 1; chars['U'] = 1; chars['*'] = 1;
- chars['v'] = 1; chars['V'] = 1; chars[':'] = 1; chars['\0'] = 1;
- chars['w'] = 1; chars['W'] = 1; chars['<'] = 1; chars[' '] = 1;
- chars['x'] = 1; chars['X'] = 1; chars['>'] = 1;
- chars['y'] = 1; chars['Y'] = 1; chars[','] = 1;
- chars['z'] = 1; chars['Z'] = 1; chars['.'] = 1;
- chars['?'] = 1;
- chars['/'] = 1;
-
- if(sumof(chars) != 98){
- rc = rc+1;
- if(pd0->flgd != 0) printf(s243er,1);
- }
-
- /* Finally, the escape \ddd consists of the backslash followed
- by 1, 2, or 3 octal digits which are taken to specify the
- desired character. */
-
- if( '\0' != 0 || '\01' != 1 || '\02' != 2
- || '\03' != 3 || '\04' != 4 || '\05' != 5
- || '\06' != 6 || '\07' != 7 || '\10' != 8
- || '\17' != 15 || '\20' != 16 || '\77' != 63
- || '\100' != 64 || '\177' != 127 ){
-
- rc = rc+8;
- if(pd0->flgd != 0) printf(s243er,8);
- }
-
- return rc;
-}
-zerofill(x)
-char *x;
-{
- int j;
-
- for (j=0; j<256; j++) *x++ = 0;
-}
-sumof(x)
-char *x;
-{
- char *p;
- int total, j;
-
- p = x;
- total = 0;
-
- for(j=0; j<256; j++) total = total+ *p++;
- return total;
-}
-s244(pd0)
-struct defs *pd0;
-{
- double a[8];
- int rc, lrc, j;
- static char s244er[] = "s244,er%d\n";
- static char qs244[8] = "s244 ";
- char *ps, *pt;
-
- ps = qs244;
- pt = pd0->rfs;
- while(*pt++ = *ps++);
- rc = 0;
- lrc = 0;
-
- /* Unfortunately, there's not a lot we can do with floating constants.
- We can check to see that the various representations can be com-
- piled, that the conversion is such that they yield the same hard-
- ware representations in all cases, and that all representations
- thus checked are double precision. */
-
- a[0] = .1250E+04;
- a[1] = 1.250E3;
- a[2] = 12.50E02;
- a[3] = 125.0e+1;
- a[4] = 1250e00;
- a[5] = 12500.e-01;
- a[6] = 125000e-2;
- a[7] = 1250.;
-
- lrc = 0;
- for (j=0; j<7; j++) if(a[j] != a[j+1]) lrc = 1;
-
- if(lrc != 0) {
- if(pd0->flgd != 0) printf(s244er,1);
- rc = rc+1;
- }
-
- if ( (sizeof .1250E+04 ) != sizeof(double)
- || (sizeof 1.250E3 ) != sizeof(double)
- || (sizeof 12.50E02 ) != sizeof(double)
- || (sizeof 1.250e+1 ) != sizeof(double)
- || (sizeof 1250e00 ) != sizeof(double)
- || (sizeof 12500.e-01) != sizeof(double)
- || (sizeof 125000e-2 ) != sizeof(double)
- || (sizeof 1250. ) != sizeof(double)){
-
- if(pd0->flgd != 0) printf(s244er,2);
- rc = rc+2;
- }
-
- return rc;
-}
-s25(pd0)
-struct defs *pd0;
-{
- char *s, *s2;
- int rc, lrc, j;
- static char s25er[] = "s25,er%d\n";
- static char qs25[8] = "s25 ";
- char *ps, *pt;
-
- ps = qs25;
- pt = pd0->rfs;
- while(*pt++ = *ps++);
- rc = 0;
-
- /* A string is a sequence of characters surrounded by double
- quotes, as in "...". */
-
- s = "...";
-
- /* A string has type "array of characters" and storage class
- static and is initialized with the given characters. */
-
- if ( s[0] != s[1] || s[1] != s[2]
- || s[2] != '.' ) {
-
- rc = rc+1;
- if(pd0->flgd != 0) printf(s25er,1);
- }
-
- /* The compiler places a null byte \0 at the end of each string
- so the program which scans the string can find its end. */
-
- if( s[3] != '\0' ){
- rc = rc+4;
- if(pd0->flgd != 0) printf(s25er,4);
- }
-
- /* In a string, the double quote character " must be preceded
- by a \. */
-
- if( ".\"."[1] != '"' ){
- rc = rc+8;
- if(pd0->flgd != 0) printf(s25er,8);
- }
-
- /* In addition, the same escapes described for character constants
- may be used. */
-
- s = "\n\t\b\r\f\\\'";
-
- if( s[0] != '\n'
- || s[1] != '\t'
- || s[2] != '\b'
- || s[3] != '\r'
- || s[4] != '\f'
- || s[5] != '\\'
- || s[6] != '\'' ){
-
- rc = rc+16;
- if( pd0->flgd != 0) printf(s25er,16);
- }
-
- /* Finally, a \ and an immediately following newline are ignored */
-
- s2 = "queep!";
- s = "queep!";
-
- lrc = 0;
- for (j=0; j<sizeof "queep!"; j++) if(s[j] != s2[j]) lrc = 1;
- if (lrc != 0){
- rc = rc+32;
- if(pd0->flgd != 0) printf(s25er,32);
- }
- return rc;
-}
-s26(pd0) /* 2.6 Hardware Characteristics */
-struct defs *pd0;
-{
- static char qs26[8] = "s26 ";
- char *ps, *pt;
- char c0, c1;
- float temp, one, delta;
- double tempd, oned;
- static char s[] = "%3d bits in %ss.\n";
- static char s2[] = "%e is the least number that can be added to 1. (%s).\n";
-
- ps = qs26;
- pt = pd0->rfs;
-
- while(*pt++ = *ps++);
-
- /* Here, we shake the machinery a little to see what falls
- out. First, we find out how many bits are in a char. */
-
- pd0->cbits = 0;
- c0 = 0;
- c1 = 1;
-
- while(c0 != c1) {
- c1 = c1<<1;
- pd0->cbits = pd0->cbits+1;
- }
- /* That information lets us determine the size of everything else. */
-
- pd0->ibits = pd0->cbits * sizeof(int);
- pd0->sbits = pd0->cbits * sizeof(short);
- pd0->lbits = pd0->cbits * sizeof(long);
- pd0->ubits = pd0->cbits * sizeof(unsigned);
- pd0->fbits = pd0->cbits * sizeof(float);
- pd0->dbits = pd0->cbits * sizeof(double);
-
- /* We have now almost reconstructed the table in section 2.6, the
- exception being the range of the floating point hardware.
- Now there are just so many ways to conjure up a floating point
- representation system that it's damned near impossible to guess
- what's going on by writing a program to interpret bit patterns.
- Further, the information isn't all that useful, if we consider
- the fact that machines that won't handle numbers between 10**30
- and 10**-30 are very hard to find, and that people playing with
- numbers outside that range have a lot more to worry about than
- just the capacity of the characteristic.
-
- A much more useful measure is the precision, which can be ex-
- pressed in terms of the smallest number that can be added to
- 1. without loss of significance. We calculate that here, for
- float and double. */
-
- one = 1.;
- delta = 1.;
- temp = 0.;
- while(temp != one) {
- temp = one+delta;
- delta = delta/2.;
- }
- pd0->fprec = delta * 4.;
- oned = 1.;
- delta = 1.;
- tempd = 0.;
- while(tempd != oned) {
- tempd = oned+delta;
- delta = delta/2.;
- }
- pd0->dprec = delta * 4.;
-
- /* Now, if anyone's interested, we publish the results. */
-
- if(pd0->flgm != 0) {
- printf(s,pd0->cbits,"char");
- printf(s,pd0->ibits,"int");
- printf(s,pd0->sbits,"short");
- printf(s,pd0->lbits,"long");
- printf(s,pd0->ubits,"unsigned");
- printf(s,pd0->fbits,"float");
- printf(s,pd0->dbits,"double");
- printf(s2,pd0->fprec,"float");
- printf(s2,pd0->dprec,"double");
- }
- /* Since we are only exploring and perhaps reporting, but not
- testing any features, we cannot return an error code. */
-
- return 0;
-}
-int extvar;
-s4(pd0) /* 4. What's in a name? */
-struct defs *pd0;
-{
- static char s4er[] = "s4,er%d\n";
- static char qs4[8] = "s4 ";
- char *ps, *pt;
- int j, rc;
-
- short sint; /* short integer, for size test */
- int pint; /* plain */
- long lint; /* long */
- unsigned target;
- unsigned int mask;
-
- rc = 0;
- ps = qs4;
- pt = pd0->rfs;
-
- while(*pt++ = *ps++);
-
-/* There are four declarable storage classes: automatic,
-static, external, and register. Automatic variables have
-been dealt with extensively thus far, and will not be specif-
-ically treated in this section. Register variables are treated
-in section s81.
-
- Static variables are local to a block, but retain their
-values upon reentry to a block, even after control has left
-the block. */
-
- for (j=0; j<3; j++)
- if(svtest(j) != zero()){
- rc = 1;
- if(pd0->flgd != 0) printf(s4er,1);
- }
- ;
-
-/* External variables exist and retain their values throughout
-the execution of the entire program, and may be used for comm-
-unication between functions, even separately compiled functions.
- */
-
- setev();
- if(testev() != 0){
- rc=rc+2;
- if(pd0->flgd != 0) printf(s4er,2);
- }
-/*
- Characters have been tested elsewhere (in s243).
-
- Up to three sizes of integer, declared short int, int, and
-long int, are available. Longer integers provide no less storage
-than shorter ones, but implementation may make either short
-integers, or long integers, or both, equivalent to plain
-integers.
- */
-
- if(sizeof lint < sizeof pint || sizeof pint < sizeof sint){
-
- rc = rc+4;
- if(pd0->flgd != 0) printf(s4er,4);
- }
-
-/* Unsigned integers, declared unsigned, obey the laws of
-arithmetic modulo 2**n, where n is the number of bits in the
-implementation */
-
- target = ~0U;
- mask = 1;
-
- for(j=0; j<(sizeof target)*pd0->cbits; j++){
-
- mask = mask&target;
- target = target>>1;
- }
-
- if(mask != 1 || target != 0){
-
- rc = rc+8;
- if(pd0->flgd != 0) printf(s4er,8);
- }
-
- return rc;
-}
-svtest(n)
-int n;
-{
- static k;
- int rc;
- switch (n) {
-
- case 0: k = 1978;
- rc = 0;
- break;
-
- case 1: if(k != 1978) rc = 1;
- else{
- k = 1929;
- rc = 0;
- }
- break;
-
- case 2: if(k != 1929) rc = 1;
- else rc = 0;
- break;
- }
- return rc;
-}
-zero(){ /* Returns a value of zero, possibly */
- static k; /* with side effects, as it's called */
- int rc; /* alternately with svtest, above, */
- k = 2; /* and has the same internal storage */
- rc = 0; /* requirements. */
- return rc;
-}
-testev(){
- if(extvar != 1066) return 1;
- else return 0;
-}
-s61(pd0) /* Characters and integers */
-struct defs *pd0;
-{
- static char s61er[] = "s61,er%d\n";
- static char qs61[8] = "s61 ";
- short from, shortint;
- long int to, longint;
- int rc, lrc;
- int j;
- char fromc, charint;
- char *wd, *pc[6];
-
- static char upper_alpha[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
- static char lower_alpha[] = "abcdefghijklmnopqrstuvwxyz";
- static char numbers[] = "0123456789";
- static char special_characters[] = "~!\"#%&()_=-^|{}[]+;*:<>,.?/";
- static char extra_special_characters[] = "\n\t\b\r\f\\\'";
- static char blank_and_NUL[] = " \0";
-
- char *ps, *pt;
- ps = qs61;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
-/* A character or a short integer may be used wherever
-an integer may be used. In all cases, the value is converted
-to integer. This principle is extensively used throughout this
-program, and will not be explicitly tested here. */
-
-/* Conversion of a shorter integer to a longer always
-involves sign extension. */
-
- from = -19;
- to = from;
-
- if(to != -19){
- rc = rc+1;
- if(pd0->flgd != 0) printf(s61er,1);
- }
-
-/* It is guaranteed that a member of the standard char-
-acter set is nonnegative. */
-
- pc[0] = upper_alpha;
- pc[1] = lower_alpha;
- pc[2] = numbers;
- pc[3] = special_characters;
- pc[4] = extra_special_characters;
- pc[5] = blank_and_NUL;
-
- lrc = 0;
- for (j=0; j<6; j++)
- while(*pc[j]) if(*pc[j]++ < 0) lrc =1;
-
- if(lrc != 0){
- rc=rc+2;
- if(pd0->flgd != 0) printf(s61er,2);
- }
-
-/* When a longer integer is converted to a shorter or
-to a char, it is truncated on the left; excess bits are
-simply discarded. */
-
- longint = 1048579; /* =2**20+3 */
- shortint = longint;
- charint = longint;
-
- if((shortint != longint && shortint != 3) ||
- (charint != longint && charint != 3)) {
- rc = rc+8;
- if(pd0->flgd != 0) printf(s61er,8);
- }
-
- return rc;
-}
-s626(pd0) /* 6.2 Float and double */
- /* 6.3 Floating and integral */
- /* 6.4 Pointers and integers */
- /* 6.5 Unsigned */
- /* 6.6 Arithmetic conversions */
-struct defs *pd0;
-{
- static char s626er[] = "s626,er%d\n";
- static char qs626[8] = "s626 ";
- int rc;
- char *ps, *pt;
- float eps, f1, f2, f3, f4, f;
- long lint1, lint2, l, ls;
- char c, t[28], t0;
- short s;
- int is, i, j;
- unsigned u, us;
- double d, ds;
- ps = qs626;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
- /* Conversions of integral values to floating type are
- well-behaved. */
-
- f1 = 1.;
- lint1 = 1.;
- lint2 = 1.;
-
- for(j=0;j<pd0->lbits-2;j++){
- f1 = f1*2;
- lint2 = (lint2<<1)|lint1;
- }
- f2 = lint2;
- f1 = (f1-f2)/f1;
- if(f1>2.*pd0->fprec){
-
- rc = rc+2;
- if(pd0->flgd != 0) printf(s626er,2);
- }
-
- /* Pointer-integer combinations are discussed in s74,
- "Additive operators". The unsigned-int combination
- appears below. */
-
- c = 125;
- s = 125;
- i = 125; is = 15625;
- u = 125; us = 15625;
- l = 125; ls = 15625;
- f = 125.;
- d = 125.; ds = 15625.;
-
- for(j=0;j<28;j++) t[j] = 0;
-
- if(c*c != is) t[ 0] = 1;
- if(s*c != is) t[ 1] = 1;
- if(s*s != is) t[ 2] = 1;
- if(i*c != is) t[ 3] = 1;
- if(i*s != is) t[ 4] = 1;
- if(i*i != is) t[ 5] = 1;
- if(u*c != us) t[ 6] = 1;
- if(u*s != us) t[ 7] = 1;
- if(u*i != us) t[ 8] = 1;
- if(u*u != us) t[ 9] = 1;
- if(l*c != ls) t[10] = 1;
- if(l*s != ls) t[11] = 1;
- if(l*i != ls) t[12] = 1;
- if(l*u != us) t[13] = 1;
- if(l*l != ls) t[14] = 1;
- if(f*c != ds) t[15] = 1;
- if(f*s != ds) t[16] = 1;
- if(f*i != ds) t[17] = 1;
- if(f*u != ds) t[18] = 1;
- if(f*l != ds) t[19] = 1;
- if(f*f != ds) t[20] = 1;
- if(d*c != ds) t[21] = 1;
- if(d*s != ds) t[22] = 1;
- if(d*i != ds) t[23] = 1;
- if(d*u != ds) t[24] = 1;
- if(d*l != ds) t[25] = 1;
- if(d*f != ds) t[26] = 1;
- if(d*d != ds) t[27] = 1;
-
- t0 = 0;
- for(j=0; j<28; j++) t0 = t0+t[j];
-
- if(t0 != 0){
-
- rc = rc+4;
- if(pd0->flgd != 0){
-
- printf(s626er,4);
- printf(" key=");
- for(j=0;j<28;j++) printf("%d",t[j]);
- printf("\n");
- }
- }
-
- /* When an unsigned integer is converted to long,
- the value of the result is the same numerically
- as that of the unsigned integer. */
-
- l = (unsigned)0100000;
- if((long)l > (unsigned)0100000){
-
- rc = rc+8;
- if(pd0->flgd != 0) printf(s626er,8);
- }
-
- return rc;
-}
-s71(pd0) /* 7.1 Primary expressions */
-struct defs *pd0;
-{
- static char s71er[] = "s71,er%d\n";
- static char qs71[8] = "s71 ";
- int rc;
- char *ps, *pt;
- static char q = 'q';
- int x[10], McCarthy(), clobber(), a, b, *p;
- ps = qs71;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
-/* Testing of expressions and operators is quite complicated,
- because (a) problems are apt to surface in queer combinations
- of operators and operands, rather than in isolation,
- and (b) the number of expressions needed to provoke a case
- of improper behaviour may be quite large. Hence, we take the
- following approach: for this section, and for subsequent
- sections through 7.15, we will check the primitive operations
- in isolation, thus verifying that the primitives work,
- after a fashion. The job of testing combinations, we will
- leave to a separate, machine-generated program, to be included
- in the C test package at some later date.
- */
-
-/* A string is a primary expression. The identifier points to
- the first character of a string.
- */
-
- if(*"queep" != q){
- rc = rc+1;
- if(pd0->flgd != 0) printf(s71er,1);
- }
-/* A parenthesized expression is a primary expression whose
- type and value are the same as those of the unadorned
- expression.
- */
- if((2+3) != 2+3) {
- rc = rc+2;
- if(pd0->flgd != 0) printf(s71er,2);
- }
-
-/* A primary expression followed by an expression in square
- brackets is a primary expression. The intuitive meaning is
- that of a subscript. The expression E1[E2] is identical
- (by definition) to *((E1)+(E2)).
- */
-
- x[5] = 1942;
- if(x[5] != 1942 || x[5] != *((x)+(5))){
- rc = rc+4;
- if(pd0->flgd != 0) printf(s71er,4);
- }
-
-/* If the various flavors of function calls didn't work, we
- would never have gotten this far; however, we do need to
- show that functions can be recursive...
- */
-
- if ( McCarthy(-5) != 91){
- rc = rc+8;
- if(pd0->flgd != 0) printf(s71er,8);
- }
-
-/* and that argument passing is strictly by value. */
-
- a = 2;
- b = 3;
- p = &b;
-
- clobber(a,p);
-
- if(a != 2 || b != 2){
- rc = rc+16;
- if(pd0->flgd != 0) printf(s71er,16);
- }
-
-/* Finally, structures and unions are addressed thusly: */
-
- if(pd0->dprec != (*pd0).dprec){
- rc = rc+32;
- if(pd0->flgd != 0) printf(s71er,32);
- }
-
- return rc;
-}
-McCarthy(x)
-int x;
-{
- if(x>100) return x-10;
- else return McCarthy( McCarthy(x+11));
-}
-clobber(x,y)
-int x, *y;
-{
- x = 3;
- *y = 2;
-}
-s714(pd0) /* 7.14 Assignment operators */
-struct defs *pd0;
-{
- static char f[] = "Local error %d.\n";
- static char s714er[] = "s714,er%d\n";
- static char qs714[8] = "s714 ";
- register int prlc, lrc;
- int rc;
- char cl, cr;
- short sl, sr;
- int il, ir;
- long ll, lr;
- unsigned ul, ur;
- float fl, fr;
- double dl, dr;
- char *ps, *pt;
- ps = qs714;
- pt = pd0->rfs;
- rc = 0;
- lrc = 0;
- prlc = pd0->flgl;
- while (*pt++ = *ps++);
-
- /* This section tests the assignment operators.
-
- It is an exhaustive test of all assignment statements
- of the form:
-
- vl op vr
-
- where vl and vr are variables from the set
- {char,short,int,long,unsigned,float,double} and op is
- one of the assignment operators. There are 395 such
- statements.
-
- The initial values for the variables have been chosen
- so that both the initial values and the results will
- "fit" in just about any implementation, and that the re-
- sults will be such that they test for the proper form-
- ation of composite operators, rather than checking for
- the valid operation of those operators' components.
- For example, in checking >>=, we want to verify that
- a right shift and a move take place, rather than
- whether or not there may be some peculiarities about
- the right shift. Such tests have been made previously,
- and to repeat them here would be to throw out a red
- herring.
-
- The table below lists the operators, assignment targets,
- initial values for left and right operands, and the
- expected values of the results.
-
-
- = += -= *= /= %= >>= <<= &= ^= |=
-char 2 7 3 10 2 1 1 20 8 6 14
-short 2 7 3 10 2 1 1 20 8 6 14
-int 2 7 3 10 2 1 1 20 8 6 14
-long 2 7 3 10 2 1 1 20 8 6 14
-unsigned 2 7 3 10 2 1 1 20 8 6 14
-float 2 7 3 10 2.5 | |
-double 2 7 3 10 2.5 | |
- | |
-initial (5,2) | (5,2) | (12,10)
-
- The following machine-generated program reflects the
- tests described in the table.
- */
-
- cl = 5; cr = 2;
- cl = cr;
- if(cl != 2){
- lrc = 1;
- if(prlc) printf(f,lrc);
- }
- cl = 5; sr = 2;
- cl = sr;
- if(cl != 2){
- lrc = 2;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ir = 2;
- cl = ir;
- if(cl != 2){
- lrc = 3;
- if(prlc) printf(f,lrc);
- }
- cl = 5; lr = 2;
- cl = lr;
- if(cl != 2){
- lrc = 4;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ur = 2;
- cl = ur;
- if(cl != 2){
- lrc = 5;
- if(prlc) printf(f,lrc);
- }
- cl = 5; fr = 2;
- cl = fr;
- if(cl != 2){
- lrc = 6;
- if(prlc) printf(f,lrc);
- }
- cl = 5; dr = 2;
- cl = dr;
- if(cl != 2){
- lrc = 7;
- if(prlc) printf(f,lrc);
- }
- sl = 5; cr = 2;
- sl = cr;
- if(sl != 2){
- lrc = 8;
- if(prlc) printf(f,lrc);
- }
- sl = 5; sr = 2;
- sl = sr;
- if(sl != 2){
- lrc = 9;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ir = 2;
- sl = ir;
- if(sl != 2){
- lrc = 10;
- if(prlc) printf(f,lrc);
- }
- sl = 5; lr = 2;
- sl = lr;
- if(sl != 2){
- lrc = 11;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ur = 2;
- sl = ur;
- if(sl != 2){
- lrc = 12;
- if(prlc) printf(f,lrc);
- }
- sl = 5; fr = 2;
- sl = fr;
- if(sl != 2){
- lrc = 13;
- if(prlc) printf(f,lrc);
- }
- sl = 5; dr = 2;
- sl = dr;
- if(sl != 2){
- lrc = 14;
- if(prlc) printf(f,lrc);
- }
- il = 5; cr = 2;
- il = cr;
- if(il != 2){
- lrc = 15;
- if(prlc) printf(f,lrc);
- }
- il = 5; sr = 2;
- il = sr;
- if(il != 2){
- lrc = 16;
- if(prlc) printf(f,lrc);
- }
- il = 5; ir = 2;
- il = ir;
- if(il != 2){
- lrc = 17;
- if(prlc) printf(f,lrc);
- }
- il = 5; lr = 2;
- il = lr;
- if(il != 2){
- lrc = 18;
- if(prlc) printf(f,lrc);
- }
- il = 5; ur = 2;
- il = ur;
- if(il != 2){
- lrc = 19;
- if(prlc) printf(f,lrc);
- }
- il = 5; fr = 2;
- il = fr;
- if(il != 2){
- lrc = 20;
- if(prlc) printf(f,lrc);
- }
- il = 5; dr = 2;
- il = dr;
- if(il != 2){
- lrc = 21;
- if(prlc) printf(f,lrc);
- }
- ll = 5; cr = 2;
- ll = cr;
- if(ll != 2){
- lrc = 22;
- if(prlc) printf(f,lrc);
- }
- ll = 5; sr = 2;
- ll = sr;
- if(ll != 2){
- lrc = 23;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ir = 2;
- ll = ir;
- if(ll != 2){
- lrc = 24;
- if(prlc) printf(f,lrc);
- }
- ll = 5; lr = 2;
- ll = lr;
- if(ll != 2){
- lrc = 25;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ur = 2;
- ll = ur;
- if(ll != 2){
- lrc = 26;
- if(prlc) printf(f,lrc);
- }
- ll = 5; fr = 2;
- ll = fr;
- if(ll != 2){
- lrc = 27;
- if(prlc) printf(f,lrc);
- }
- ll = 5; dr = 2;
- ll = dr;
- if(ll != 2){
- lrc = 28;
- if(prlc) printf(f,lrc);
- }
- ul = 5; cr = 2;
- ul = cr;
- if(ul != 2){
- lrc = 29;
- if(prlc) printf(f,lrc);
- }
- ul = 5; sr = 2;
- ul = sr;
- if(ul != 2){
- lrc = 30;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ir = 2;
- ul = ir;
- if(ul != 2){
- lrc = 31;
- if(prlc) printf(f,lrc);
- }
- ul = 5; lr = 2;
- ul = lr;
- if(ul != 2){
- lrc = 32;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ur = 2;
- ul = ur;
- if(ul != 2){
- lrc = 33;
- if(prlc) printf(f,lrc);
- }
- ul = 5; fr = 2;
- ul = fr;
- if(ul != 2){
- lrc = 34;
- if(prlc) printf(f,lrc);
- }
- ul = 5; dr = 2;
- ul = dr;
- if(ul != 2){
- lrc = 35;
- if(prlc) printf(f,lrc);
- }
- fl = 5; cr = 2;
- fl = cr;
- if(fl != 2){
- lrc = 36;
- if(prlc) printf(f,lrc);
- }
- fl = 5; sr = 2;
- fl = sr;
- if(fl != 2){
- lrc = 37;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ir = 2;
- fl = ir;
- if(fl != 2){
- lrc = 38;
- if(prlc) printf(f,lrc);
- }
- fl = 5; lr = 2;
- fl = lr;
- if(fl != 2){
- lrc = 39;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ur = 2;
- fl = ur;
- if(fl != 2){
- lrc = 40;
- if(prlc) printf(f,lrc);
- }
- fl = 5; fr = 2;
- fl = fr;
- if(fl != 2){
- lrc = 41;
- if(prlc) printf(f,lrc);
- }
- fl = 5; dr = 2;
- fl = dr;
- if(fl != 2){
- lrc = 42;
- if(prlc) printf(f,lrc);
- }
- dl = 5; cr = 2;
- dl = cr;
- if(dl != 2){
- lrc = 43;
- if(prlc) printf(f,lrc);
- }
- dl = 5; sr = 2;
- dl = sr;
- if(dl != 2){
- lrc = 44;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ir = 2;
- dl = ir;
- if(dl != 2){
- lrc = 45;
- if(prlc) printf(f,lrc);
- }
- dl = 5; lr = 2;
- dl = lr;
- if(dl != 2){
- lrc = 46;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ur = 2;
- dl = ur;
- if(dl != 2){
- lrc = 47;
- if(prlc) printf(f,lrc);
- }
- dl = 5; fr = 2;
- dl = fr;
- if(dl != 2){
- lrc = 48;
- if(prlc) printf(f,lrc);
- }
- dl = 5; dr = 2;
- dl = dr;
- if(dl != 2){
- lrc = 49;
- if(prlc) printf(f,lrc);
- }
- cl = 5; cr = 2;
- cl += cr;
- if(cl != 7){
- lrc = 50;
- if(prlc) printf(f,lrc);
- }
- cl = 5; sr = 2;
- cl += sr;
- if(cl != 7){
- lrc = 51;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ir = 2;
- cl += ir;
- if(cl != 7){
- lrc = 52;
- if(prlc) printf(f,lrc);
- }
- cl = 5; lr = 2;
- cl += lr;
- if(cl != 7){
- lrc = 53;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ur = 2;
- cl += ur;
- if(cl != 7){
- lrc = 54;
- if(prlc) printf(f,lrc);
- }
- cl = 5; fr = 2;
- cl += fr;
- if(cl != 7){
- lrc = 55;
- if(prlc) printf(f,lrc);
- }
- cl = 5; dr = 2;
- cl += dr;
- if(cl != 7){
- lrc = 56;
- if(prlc) printf(f,lrc);
- }
- sl = 5; cr = 2;
- sl += cr;
- if(sl != 7){
- lrc = 57;
- if(prlc) printf(f,lrc);
- }
- sl = 5; sr = 2;
- sl += sr;
- if(sl != 7){
- lrc = 58;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ir = 2;
- sl += ir;
- if(sl != 7){
- lrc = 59;
- if(prlc) printf(f,lrc);
- }
- sl = 5; lr = 2;
- sl += lr;
- if(sl != 7){
- lrc = 60;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ur = 2;
- sl += ur;
- if(sl != 7){
- lrc = 61;
- if(prlc) printf(f,lrc);
- }
- sl = 5; fr = 2;
- sl += fr;
- if(sl != 7){
- lrc = 62;
- if(prlc) printf(f,lrc);
- }
- sl = 5; dr = 2;
- sl += dr;
- if(sl != 7){
- lrc = 63;
- if(prlc) printf(f,lrc);
- }
- il = 5; cr = 2;
- il += cr;
- if(il != 7){
- lrc = 64;
- if(prlc) printf(f,lrc);
- }
- il = 5; sr = 2;
- il += sr;
- if(il != 7){
- lrc = 65;
- if(prlc) printf(f,lrc);
- }
- il = 5; ir = 2;
- il += ir;
- if(il != 7){
- lrc = 66;
- if(prlc) printf(f,lrc);
- }
- il = 5; lr = 2;
- il += lr;
- if(il != 7){
- lrc = 67;
- if(prlc) printf(f,lrc);
- }
- il = 5; ur = 2;
- il += ur;
- if(il != 7){
- lrc = 68;
- if(prlc) printf(f,lrc);
- }
- il = 5; fr = 2;
- il += fr;
- if(il != 7){
- lrc = 69;
- if(prlc) printf(f,lrc);
- }
- il = 5; dr = 2;
- il += dr;
- if(il != 7){
- lrc = 70;
- if(prlc) printf(f,lrc);
- }
- ll = 5; cr = 2;
- ll += cr;
- if(ll != 7){
- lrc = 71;
- if(prlc) printf(f,lrc);
- }
- ll = 5; sr = 2;
- ll += sr;
- if(ll != 7){
- lrc = 72;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ir = 2;
- ll += ir;
- if(ll != 7){
- lrc = 73;
- if(prlc) printf(f,lrc);
- }
- ll = 5; lr = 2;
- ll += lr;
- if(ll != 7){
- lrc = 74;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ur = 2;
- ll += ur;
- if(ll != 7){
- lrc = 75;
- if(prlc) printf(f,lrc);
- }
- ll = 5; fr = 2;
- ll += fr;
- if(ll != 7){
- lrc = 76;
- if(prlc) printf(f,lrc);
- }
- ll = 5; dr = 2;
- ll += dr;
- if(ll != 7){
- lrc = 77;
- if(prlc) printf(f,lrc);
- }
- ul = 5; cr = 2;
- ul += cr;
- if(ul != 7){
- lrc = 78;
- if(prlc) printf(f,lrc);
- }
- ul = 5; sr = 2;
- ul += sr;
- if(ul != 7){
- lrc = 79;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ir = 2;
- ul += ir;
- if(ul != 7){
- lrc = 80;
- if(prlc) printf(f,lrc);
- }
- ul = 5; lr = 2;
- ul += lr;
- if(ul != 7){
- lrc = 81;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ur = 2;
- ul += ur;
- if(ul != 7){
- lrc = 82;
- if(prlc) printf(f,lrc);
- }
- ul = 5; fr = 2;
- ul += fr;
- if(ul != 7){
- lrc = 83;
- if(prlc) printf(f,lrc);
- }
- ul = 5; dr = 2;
- ul += dr;
- if(ul != 7){
- lrc = 84;
- if(prlc) printf(f,lrc);
- }
- fl = 5; cr = 2;
- fl += cr;
- if(fl != 7){
- lrc = 85;
- if(prlc) printf(f,lrc);
- }
- fl = 5; sr = 2;
- fl += sr;
- if(fl != 7){
- lrc = 86;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ir = 2;
- fl += ir;
- if(fl != 7){
- lrc = 87;
- if(prlc) printf(f,lrc);
- }
- fl = 5; lr = 2;
- fl += lr;
- if(fl != 7){
- lrc = 88;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ur = 2;
- fl += ur;
- if(fl != 7){
- lrc = 89;
- if(prlc) printf(f,lrc);
- }
- fl = 5; fr = 2;
- fl += fr;
- if(fl != 7){
- lrc = 90;
- if(prlc) printf(f,lrc);
- }
- fl = 5; dr = 2;
- fl += dr;
- if(fl != 7){
- lrc = 91;
- if(prlc) printf(f,lrc);
- }
- dl = 5; cr = 2;
- dl += cr;
- if(dl != 7){
- lrc = 92;
- if(prlc) printf(f,lrc);
- }
- dl = 5; sr = 2;
- dl += sr;
- if(dl != 7){
- lrc = 93;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ir = 2;
- dl += ir;
- if(dl != 7){
- lrc = 94;
- if(prlc) printf(f,lrc);
- }
- dl = 5; lr = 2;
- dl += lr;
- if(dl != 7){
- lrc = 95;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ur = 2;
- dl += ur;
- if(dl != 7){
- lrc = 96;
- if(prlc) printf(f,lrc);
- }
- dl = 5; fr = 2;
- dl += fr;
- if(dl != 7){
- lrc = 97;
- if(prlc) printf(f,lrc);
- }
- dl = 5; dr = 2;
- dl += dr;
- if(dl != 7){
- lrc = 98;
- if(prlc) printf(f,lrc);
- }
- cl = 5; cr = 2;
- cl -= cr;
- if(cl != 3){
- lrc = 99;
- if(prlc) printf(f,lrc);
- }
- cl = 5; sr = 2;
- cl -= sr;
- if(cl != 3){
- lrc = 100;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ir = 2;
- cl -= ir;
- if(cl != 3){
- lrc = 101;
- if(prlc) printf(f,lrc);
- }
- cl = 5; lr = 2;
- cl -= lr;
- if(cl != 3){
- lrc = 102;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ur = 2;
- cl -= ur;
- if(cl != 3){
- lrc = 103;
- if(prlc) printf(f,lrc);
- }
- cl = 5; fr = 2;
- cl -= fr;
- if(cl != 3){
- lrc = 104;
- if(prlc) printf(f,lrc);
- }
- cl = 5; dr = 2;
- cl -= dr;
- if(cl != 3){
- lrc = 105;
- if(prlc) printf(f,lrc);
- }
- sl = 5; cr = 2;
- sl -= cr;
- if(sl != 3){
- lrc = 106;
- if(prlc) printf(f,lrc);
- }
- sl = 5; sr = 2;
- sl -= sr;
- if(sl != 3){
- lrc = 107;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ir = 2;
- sl -= ir;
- if(sl != 3){
- lrc = 108;
- if(prlc) printf(f,lrc);
- }
- sl = 5; lr = 2;
- sl -= lr;
- if(sl != 3){
- lrc = 109;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ur = 2;
- sl -= ur;
- if(sl != 3){
- lrc = 110;
- if(prlc) printf(f,lrc);
- }
- sl = 5; fr = 2;
- sl -= fr;
- if(sl != 3){
- lrc = 111;
- if(prlc) printf(f,lrc);
- }
- sl = 5; dr = 2;
- sl -= dr;
- if(sl != 3){
- lrc = 112;
- if(prlc) printf(f,lrc);
- }
- il = 5; cr = 2;
- il -= cr;
- if(il != 3){
- lrc = 113;
- if(prlc) printf(f,lrc);
- }
- il = 5; sr = 2;
- il -= sr;
- if(il != 3){
- lrc = 114;
- if(prlc) printf(f,lrc);
- }
- il = 5; ir = 2;
- il -= ir;
- if(il != 3){
- lrc = 115;
- if(prlc) printf(f,lrc);
- }
- il = 5; lr = 2;
- il -= lr;
- if(il != 3){
- lrc = 116;
- if(prlc) printf(f,lrc);
- }
- il = 5; ur = 2;
- il -= ur;
- if(il != 3){
- lrc = 117;
- if(prlc) printf(f,lrc);
- }
- il = 5; fr = 2;
- il -= fr;
- if(il != 3){
- lrc = 118;
- if(prlc) printf(f,lrc);
- }
- il = 5; dr = 2;
- il -= dr;
- if(il != 3){
- lrc = 119;
- if(prlc) printf(f,lrc);
- }
- ll = 5; cr = 2;
- ll -= cr;
- if(ll != 3){
- lrc = 120;
- if(prlc) printf(f,lrc);
- }
- ll = 5; sr = 2;
- ll -= sr;
- if(ll != 3){
- lrc = 121;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ir = 2;
- ll -= ir;
- if(ll != 3){
- lrc = 122;
- if(prlc) printf(f,lrc);
- }
- ll = 5; lr = 2;
- ll -= lr;
- if(ll != 3){
- lrc = 123;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ur = 2;
- ll -= ur;
- if(ll != 3){
- lrc = 124;
- if(prlc) printf(f,lrc);
- }
- ll = 5; fr = 2;
- ll -= fr;
- if(ll != 3){
- lrc = 125;
- if(prlc) printf(f,lrc);
- }
- ll = 5; dr = 2;
- ll -= dr;
- if(ll != 3){
- lrc = 126;
- if(prlc) printf(f,lrc);
- }
- ul = 5; cr = 2;
- ul -= cr;
- if(ul != 3){
- lrc = 127;
- if(prlc) printf(f,lrc);
- }
- ul = 5; sr = 2;
- ul -= sr;
- if(ul != 3){
- lrc = 128;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ir = 2;
- ul -= ir;
- if(ul != 3){
- lrc = 129;
- if(prlc) printf(f,lrc);
- }
- ul = 5; lr = 2;
- ul -= lr;
- if(ul != 3){
- lrc = 130;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ur = 2;
- ul -= ur;
- if(ul != 3){
- lrc = 131;
- if(prlc) printf(f,lrc);
- }
- ul = 5; fr = 2;
- ul -= fr;
- if(ul != 3){
- lrc = 132;
- if(prlc) printf(f,lrc);
- }
- ul = 5; dr = 2;
- ul -= dr;
- if(ul != 3){
- lrc = 133;
- if(prlc) printf(f,lrc);
- }
- fl = 5; cr = 2;
- fl -= cr;
- if(fl != 3){
- lrc = 134;
- if(prlc) printf(f,lrc);
- }
- fl = 5; sr = 2;
- fl -= sr;
- if(fl != 3){
- lrc = 135;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ir = 2;
- fl -= ir;
- if(fl != 3){
- lrc = 136;
- if(prlc) printf(f,lrc);
- }
- fl = 5; lr = 2;
- fl -= lr;
- if(fl != 3){
- lrc = 137;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ur = 2;
- fl -= ur;
- if(fl != 3){
- lrc = 138;
- if(prlc) printf(f,lrc);
- }
- fl = 5; fr = 2;
- fl -= fr;
- if(fl != 3){
- lrc = 139;
- if(prlc) printf(f,lrc);
- }
- fl = 5; dr = 2;
- fl -= dr;
- if(fl != 3){
- lrc = 140;
- if(prlc) printf(f,lrc);
- }
- dl = 5; cr = 2;
- dl -= cr;
- if(dl != 3){
- lrc = 141;
- if(prlc) printf(f,lrc);
- }
- dl = 5; sr = 2;
- dl -= sr;
- if(dl != 3){
- lrc = 142;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ir = 2;
- dl -= ir;
- if(dl != 3){
- lrc = 143;
- if(prlc) printf(f,lrc);
- }
- dl = 5; lr = 2;
- dl -= lr;
- if(dl != 3){
- lrc = 144;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ur = 2;
- dl -= ur;
- if(dl != 3){
- lrc = 145;
- if(prlc) printf(f,lrc);
- }
- dl = 5; fr = 2;
- dl -= fr;
- if(dl != 3){
- lrc = 146;
- if(prlc) printf(f,lrc);
- }
- dl = 5; dr = 2;
- dl -= dr;
- if(dl != 3){
- lrc = 147;
- if(prlc) printf(f,lrc);
- }
- cl = 5; cr = 2;
- cl *= cr;
- if(cl != 10){
- lrc = 148;
- if(prlc) printf(f,lrc);
- }
- cl = 5; sr = 2;
- cl *= sr;
- if(cl != 10){
- lrc = 149;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ir = 2;
- cl *= ir;
- if(cl != 10){
- lrc = 150;
- if(prlc) printf(f,lrc);
- }
- cl = 5; lr = 2;
- cl *= lr;
- if(cl != 10){
- lrc = 151;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ur = 2;
- cl *= ur;
- if(cl != 10){
- lrc = 152;
- if(prlc) printf(f,lrc);
- }
- cl = 5; fr = 2;
- cl *= fr;
- if(cl != 10){
- lrc = 153;
- if(prlc) printf(f,lrc);
- }
- cl = 5; dr = 2;
- cl *= dr;
- if(cl != 10){
- lrc = 154;
- if(prlc) printf(f,lrc);
- }
- sl = 5; cr = 2;
- sl *= cr;
- if(sl != 10){
- lrc = 155;
- if(prlc) printf(f,lrc);
- }
- sl = 5; sr = 2;
- sl *= sr;
- if(sl != 10){
- lrc = 156;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ir = 2;
- sl *= ir;
- if(sl != 10){
- lrc = 157;
- if(prlc) printf(f,lrc);
- }
- sl = 5; lr = 2;
- sl *= lr;
- if(sl != 10){
- lrc = 158;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ur = 2;
- sl *= ur;
- if(sl != 10){
- lrc = 159;
- if(prlc) printf(f,lrc);
- }
- sl = 5; fr = 2;
- sl *= fr;
- if(sl != 10){
- lrc = 160;
- if(prlc) printf(f,lrc);
- }
- sl = 5; dr = 2;
- sl *= dr;
- if(sl != 10){
- lrc = 161;
- if(prlc) printf(f,lrc);
- }
- il = 5; cr = 2;
- il *= cr;
- if(il != 10){
- lrc = 162;
- if(prlc) printf(f,lrc);
- }
- il = 5; sr = 2;
- il *= sr;
- if(il != 10){
- lrc = 163;
- if(prlc) printf(f,lrc);
- }
- il = 5; ir = 2;
- il *= ir;
- if(il != 10){
- lrc = 164;
- if(prlc) printf(f,lrc);
- }
- il = 5; lr = 2;
- il *= lr;
- if(il != 10){
- lrc = 165;
- if(prlc) printf(f,lrc);
- }
- il = 5; ur = 2;
- il *= ur;
- if(il != 10){
- lrc = 166;
- if(prlc) printf(f,lrc);
- }
- il = 5; fr = 2;
- il *= fr;
- if(il != 10){
- lrc = 167;
- if(prlc) printf(f,lrc);
- }
- il = 5; dr = 2;
- il *= dr;
- if(il != 10){
- lrc = 168;
- if(prlc) printf(f,lrc);
- }
- ll = 5; cr = 2;
- ll *= cr;
- if(ll != 10){
- lrc = 169;
- if(prlc) printf(f,lrc);
- }
- ll = 5; sr = 2;
- ll *= sr;
- if(ll != 10){
- lrc = 170;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ir = 2;
- ll *= ir;
- if(ll != 10){
- lrc = 171;
- if(prlc) printf(f,lrc);
- }
- ll = 5; lr = 2;
- ll *= lr;
- if(ll != 10){
- lrc = 172;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ur = 2;
- ll *= ur;
- if(ll != 10){
- lrc = 173;
- if(prlc) printf(f,lrc);
- }
- ll = 5; fr = 2;
- ll *= fr;
- if(ll != 10){
- lrc = 174;
- if(prlc) printf(f,lrc);
- }
- ll = 5; dr = 2;
- ll *= dr;
- if(ll != 10){
- lrc = 175;
- if(prlc) printf(f,lrc);
- }
- ul = 5; cr = 2;
- ul *= cr;
- if(ul != 10){
- lrc = 176;
- if(prlc) printf(f,lrc);
- }
- ul = 5; sr = 2;
- ul *= sr;
- if(ul != 10){
- lrc = 177;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ir = 2;
- ul *= ir;
- if(ul != 10){
- lrc = 178;
- if(prlc) printf(f,lrc);
- }
- ul = 5; lr = 2;
- ul *= lr;
- if(ul != 10){
- lrc = 179;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ur = 2;
- ul *= ur;
- if(ul != 10){
- lrc = 180;
- if(prlc) printf(f,lrc);
- }
- ul = 5; fr = 2;
- ul *= fr;
- if(ul != 10){
- lrc = 181;
- if(prlc) printf(f,lrc);
- }
- ul = 5; dr = 2;
- ul *= dr;
- if(ul != 10){
- lrc = 182;
- if(prlc) printf(f,lrc);
- }
- fl = 5; cr = 2;
- fl *= cr;
- if(fl != 10){
- lrc = 183;
- if(prlc) printf(f,lrc);
- }
- fl = 5; sr = 2;
- fl *= sr;
- if(fl != 10){
- lrc = 184;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ir = 2;
- fl *= ir;
- if(fl != 10){
- lrc = 185;
- if(prlc) printf(f,lrc);
- }
- fl = 5; lr = 2;
- fl *= lr;
- if(fl != 10){
- lrc = 186;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ur = 2;
- fl *= ur;
- if(fl != 10){
- lrc = 187;
- if(prlc) printf(f,lrc);
- }
- fl = 5; fr = 2;
- fl *= fr;
- if(fl != 10){
- lrc = 188;
- if(prlc) printf(f,lrc);
- }
- fl = 5; dr = 2;
- fl *= dr;
- if(fl != 10){
- lrc = 189;
- if(prlc) printf(f,lrc);
- }
- dl = 5; cr = 2;
- dl *= cr;
- if(dl != 10){
- lrc = 190;
- if(prlc) printf(f,lrc);
- }
- dl = 5; sr = 2;
- dl *= sr;
- if(dl != 10){
- lrc = 191;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ir = 2;
- dl *= ir;
- if(dl != 10){
- lrc = 192;
- if(prlc) printf(f,lrc);
- }
- dl = 5; lr = 2;
- dl *= lr;
- if(dl != 10){
- lrc = 193;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ur = 2;
- dl *= ur;
- if(dl != 10){
- lrc = 194;
- if(prlc) printf(f,lrc);
- }
- dl = 5; fr = 2;
- dl *= fr;
- if(dl != 10){
- lrc = 195;
- if(prlc) printf(f,lrc);
- }
- dl = 5; dr = 2;
- dl *= dr;
- if(dl != 10){
- lrc = 196;
- if(prlc) printf(f,lrc);
- }
- cl = 5; cr = 2;
- cl /= cr;
- if(cl != 2){
- lrc = 197;
- if(prlc) printf(f,lrc);
- }
- cl = 5; sr = 2;
- cl /= sr;
- if(cl != 2){
- lrc = 198;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ir = 2;
- cl /= ir;
- if(cl != 2){
- lrc = 199;
- if(prlc) printf(f,lrc);
- }
- cl = 5; lr = 2;
- cl /= lr;
- if(cl != 2){
- lrc = 200;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ur = 2;
- cl /= ur;
- if(cl != 2){
- lrc = 201;
- if(prlc) printf(f,lrc);
- }
- cl = 5; fr = 2;
- cl /= fr;
- if(cl != 2){
- lrc = 202;
- if(prlc) printf(f,lrc);
- }
- cl = 5; dr = 2;
- cl /= dr;
- if(cl != 2){
- lrc = 203;
- if(prlc) printf(f,lrc);
- }
- sl = 5; cr = 2;
- sl /= cr;
- if(sl != 2){
- lrc = 204;
- if(prlc) printf(f,lrc);
- }
- sl = 5; sr = 2;
- sl /= sr;
- if(sl != 2){
- lrc = 205;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ir = 2;
- sl /= ir;
- if(sl != 2){
- lrc = 206;
- if(prlc) printf(f,lrc);
- }
- sl = 5; lr = 2;
- sl /= lr;
- if(sl != 2){
- lrc = 207;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ur = 2;
- sl /= ur;
- if(sl != 2){
- lrc = 208;
- if(prlc) printf(f,lrc);
- }
- sl = 5; fr = 2;
- sl /= fr;
- if(sl != 2){
- lrc = 209;
- if(prlc) printf(f,lrc);
- }
- sl = 5; dr = 2;
- sl /= dr;
- if(sl != 2){
- lrc = 210;
- if(prlc) printf(f,lrc);
- }
- il = 5; cr = 2;
- il /= cr;
- if(il != 2){
- lrc = 211;
- if(prlc) printf(f,lrc);
- }
- il = 5; sr = 2;
- il /= sr;
- if(il != 2){
- lrc = 212;
- if(prlc) printf(f,lrc);
- }
- il = 5; ir = 2;
- il /= ir;
- if(il != 2){
- lrc = 213;
- if(prlc) printf(f,lrc);
- }
- il = 5; lr = 2;
- il /= lr;
- if(il != 2){
- lrc = 214;
- if(prlc) printf(f,lrc);
- }
- il = 5; ur = 2;
- il /= ur;
- if(il != 2){
- lrc = 215;
- if(prlc) printf(f,lrc);
- }
- il = 5; fr = 2;
- il /= fr;
- if(il != 2){
- lrc = 216;
- if(prlc) printf(f,lrc);
- }
- il = 5; dr = 2;
- il /= dr;
- if(il != 2){
- lrc = 217;
- if(prlc) printf(f,lrc);
- }
- ll = 5; cr = 2;
- ll /= cr;
- if(ll != 2){
- lrc = 218;
- if(prlc) printf(f,lrc);
- }
- ll = 5; sr = 2;
- ll /= sr;
- if(ll != 2){
- lrc = 219;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ir = 2;
- ll /= ir;
- if(ll != 2){
- lrc = 220;
- if(prlc) printf(f,lrc);
- }
- ll = 5; lr = 2;
- ll /= lr;
- if(ll != 2){
- lrc = 221;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ur = 2;
- ll /= ur;
- if(ll != 2){
- lrc = 222;
- if(prlc) printf(f,lrc);
- }
- ll = 5; fr = 2;
- ll /= fr;
- if(ll != 2){
- lrc = 223;
- if(prlc) printf(f,lrc);
- }
- ll = 5; dr = 2;
- ll /= dr;
- if(ll != 2){
- lrc = 224;
- if(prlc) printf(f,lrc);
- }
- ul = 5; cr = 2;
- ul /= cr;
- if(ul != 2){
- lrc = 225;
- if(prlc) printf(f,lrc);
- }
- ul = 5; sr = 2;
- ul /= sr;
- if(ul != 2){
- lrc = 226;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ir = 2;
- ul /= ir;
- if(ul != 2){
- lrc = 227;
- if(prlc) printf(f,lrc);
- }
- ul = 5; lr = 2;
- ul /= lr;
- if(ul != 2){
- lrc = 228;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ur = 2;
- ul /= ur;
- if(ul != 2){
- lrc = 229;
- if(prlc) printf(f,lrc);
- }
- ul = 5; fr = 2;
- ul /= fr;
- if(ul != 2){
- lrc = 230;
- if(prlc) printf(f,lrc);
- }
- ul = 5; dr = 2;
- ul /= dr;
- if(ul != 2){
- lrc = 231;
- if(prlc) printf(f,lrc);
- }
- fl = 5; cr = 2;
- fl /= cr;
- if(fl != 2.5){
- lrc = 232;
- if(prlc) printf(f,lrc);
- }
- fl = 5; sr = 2;
- fl /= sr;
- if(fl != 2.5){
- lrc = 233;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ir = 2;
- fl /= ir;
- if(fl != 2.5){
- lrc = 234;
- if(prlc) printf(f,lrc);
- }
- fl = 5; lr = 2;
- fl /= lr;
- if(fl != 2.5){
- lrc = 235;
- if(prlc) printf(f,lrc);
- }
- fl = 5; ur = 2;
- fl /= ur;
- if(fl != 2.5){
- lrc = 236;
- if(prlc) printf(f,lrc);
- }
- fl = 5; fr = 2;
- fl /= fr;
- if(fl != 2.5){
- lrc = 237;
- if(prlc) printf(f,lrc);
- }
- fl = 5; dr = 2;
- fl /= dr;
- if(fl != 2.5){
- lrc = 238;
- if(prlc) printf(f,lrc);
- }
- dl = 5; cr = 2;
- dl /= cr;
- if(dl != 2.5){
- lrc = 239;
- if(prlc) printf(f,lrc);
- }
- dl = 5; sr = 2;
- dl /= sr;
- if(dl != 2.5){
- lrc = 240;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ir = 2;
- dl /= ir;
- if(dl != 2.5){
- lrc = 241;
- if(prlc) printf(f,lrc);
- }
- dl = 5; lr = 2;
- dl /= lr;
- if(dl != 2.5){
- lrc = 242;
- if(prlc) printf(f,lrc);
- }
- dl = 5; ur = 2;
- dl /= ur;
- if(dl != 2.5){
- lrc = 243;
- if(prlc) printf(f,lrc);
- }
- dl = 5; fr = 2;
- dl /= fr;
- if(dl != 2.5){
- lrc = 244;
- if(prlc) printf(f,lrc);
- }
- dl = 5; dr = 2;
- dl /= dr;
- if(dl != 2.5){
- lrc = 245;
- if(prlc) printf(f,lrc);
- }
- cl = 5; cr = 2;
- cl %= cr;
- if(cl != 1){
- lrc = 246;
- if(prlc) printf(f,lrc);
- }
- cl = 5; sr = 2;
- cl %= sr;
- if(cl != 1){
- lrc = 247;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ir = 2;
- cl %= ir;
- if(cl != 1){
- lrc = 248;
- if(prlc) printf(f,lrc);
- }
- cl = 5; lr = 2;
- cl %= lr;
- if(cl != 1){
- lrc = 249;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ur = 2;
- cl %= ur;
- if(cl != 1){
- lrc = 250;
- if(prlc) printf(f,lrc);
- }
- sl = 5; cr = 2;
- sl %= cr;
- if(sl != 1){
- lrc = 251;
- if(prlc) printf(f,lrc);
- }
- sl = 5; sr = 2;
- sl %= sr;
- if(sl != 1){
- lrc = 252;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ir = 2;
- sl %= ir;
- if(sl != 1){
- lrc = 253;
- if(prlc) printf(f,lrc);
- }
- sl = 5; lr = 2;
- sl %= lr;
- if(sl != 1){
- lrc = 254;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ur = 2;
- sl %= ur;
- if(sl != 1){
- lrc = 255;
- if(prlc) printf(f,lrc);
- }
- il = 5; cr = 2;
- il %= cr;
- if(il != 1){
- lrc = 256;
- if(prlc) printf(f,lrc);
- }
- il = 5; sr = 2;
- il %= sr;
- if(il != 1){
- lrc = 257;
- if(prlc) printf(f,lrc);
- }
- il = 5; ir = 2;
- il %= ir;
- if(il != 1){
- lrc = 258;
- if(prlc) printf(f,lrc);
- }
- il = 5; lr = 2;
- il %= lr;
- if(il != 1){
- lrc = 259;
- if(prlc) printf(f,lrc);
- }
- il = 5; ur = 2;
- il %= ur;
- if(il != 1){
- lrc = 260;
- if(prlc) printf(f,lrc);
- }
- ll = 5; cr = 2;
- ll %= cr;
- if(ll != 1){
- lrc = 261;
- if(prlc) printf(f,lrc);
- }
- ll = 5; sr = 2;
- ll %= sr;
- if(ll != 1){
- lrc = 262;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ir = 2;
- ll %= ir;
- if(ll != 1){
- lrc = 263;
- if(prlc) printf(f,lrc);
- }
- ll = 5; lr = 2;
- ll %= lr;
- if(ll != 1){
- lrc = 264;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ur = 2;
- ll %= ur;
- if(ll != 1){
- lrc = 265;
- if(prlc) printf(f,lrc);
- }
- ul = 5; cr = 2;
- ul %= cr;
- if(ul != 1){
- lrc = 266;
- if(prlc) printf(f,lrc);
- }
- ul = 5; sr = 2;
- ul %= sr;
- if(ul != 1){
- lrc = 267;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ir = 2;
- ul %= ir;
- if(ul != 1){
- lrc = 268;
- if(prlc) printf(f,lrc);
- }
- ul = 5; lr = 2;
- ul %= lr;
- if(ul != 1){
- lrc = 269;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ur = 2;
- ul %= ur;
- if(ul != 1){
- lrc = 270;
- if(prlc) printf(f,lrc);
- }
- cl = 5; cr = 2;
- cl >>= cr;
- if(cl != 1){
- lrc = 271;
- if(prlc) printf(f,lrc);
- }
- cl = 5; sr = 2;
- cl >>= sr;
- if(cl != 1){
- lrc = 272;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ir = 2;
- cl >>= ir;
- if(cl != 1){
- lrc = 273;
- if(prlc) printf(f,lrc);
- }
- cl = 5; lr = 2;
- cl >>= lr;
- if(cl != 1){
- lrc = 274;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ur = 2;
- cl >>= ur;
- if(cl != 1){
- lrc = 275;
- if(prlc) printf(f,lrc);
- }
- sl = 5; cr = 2;
- sl >>= cr;
- if(sl != 1){
- lrc = 276;
- if(prlc) printf(f,lrc);
- }
- sl = 5; sr = 2;
- sl >>= sr;
- if(sl != 1){
- lrc = 277;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ir = 2;
- sl >>= ir;
- if(sl != 1){
- lrc = 278;
- if(prlc) printf(f,lrc);
- }
- sl = 5; lr = 2;
- sl >>= lr;
- if(sl != 1){
- lrc = 279;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ur = 2;
- sl >>= ur;
- if(sl != 1){
- lrc = 280;
- if(prlc) printf(f,lrc);
- }
- il = 5; cr = 2;
- il >>= cr;
- if(il != 1){
- lrc = 281;
- if(prlc) printf(f,lrc);
- }
- il = 5; sr = 2;
- il >>= sr;
- if(il != 1){
- lrc = 282;
- if(prlc) printf(f,lrc);
- }
- il = 5; ir = 2;
- il >>= ir;
- if(il != 1){
- lrc = 283;
- if(prlc) printf(f,lrc);
- }
- il = 5; lr = 2;
- il >>= lr;
- if(il != 1){
- lrc = 284;
- if(prlc) printf(f,lrc);
- }
- il = 5; ur = 2;
- il >>= ur;
- if(il != 1){
- lrc = 285;
- if(prlc) printf(f,lrc);
- }
- ll = 5; cr = 2;
- ll >>= cr;
- if(ll != 1){
- lrc = 286;
- if(prlc) printf(f,lrc);
- }
- ll = 5; sr = 2;
- ll >>= sr;
- if(ll != 1){
- lrc = 287;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ir = 2;
- ll >>= ir;
- if(ll != 1){
- lrc = 288;
- if(prlc) printf(f,lrc);
- }
- ll = 5; lr = 2;
- ll >>= lr;
- if(ll != 1){
- lrc = 289;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ur = 2;
- ll >>= ur;
- if(ll != 1){
- lrc = 290;
- if(prlc) printf(f,lrc);
- }
- ul = 5; cr = 2;
- ul >>= cr;
- if(ul != 1){
- lrc = 291;
- if(prlc) printf(f,lrc);
- }
- ul = 5; sr = 2;
- ul >>= sr;
- if(ul != 1){
- lrc = 292;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ir = 2;
- ul >>= ir;
- if(ul != 1){
- lrc = 293;
- if(prlc) printf(f,lrc);
- }
- ul = 5; lr = 2;
- ul >>= lr;
- if(ul != 1){
- lrc = 294;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ur = 2;
- ul >>= ur;
- if(ul != 1){
- lrc = 295;
- if(prlc) printf(f,lrc);
- }
- cl = 5; cr = 2;
- cl <<= cr;
- if(cl != 20){
- lrc = 296;
- if(prlc) printf(f,lrc);
- }
- cl = 5; sr = 2;
- cl <<= sr;
- if(cl != 20){
- lrc = 297;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ir = 2;
- cl <<= ir;
- if(cl != 20){
- lrc = 298;
- if(prlc) printf(f,lrc);
- }
- cl = 5; lr = 2;
- cl <<= lr;
- if(cl != 20){
- lrc = 299;
- if(prlc) printf(f,lrc);
- }
- cl = 5; ur = 2;
- cl <<= ur;
- if(cl != 20){
- lrc = 300;
- if(prlc) printf(f,lrc);
- }
- sl = 5; cr = 2;
- sl <<= cr;
- if(sl != 20){
- lrc = 301;
- if(prlc) printf(f,lrc);
- }
- sl = 5; sr = 2;
- sl <<= sr;
- if(sl != 20){
- lrc = 302;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ir = 2;
- sl <<= ir;
- if(sl != 20){
- lrc = 303;
- if(prlc) printf(f,lrc);
- }
- sl = 5; lr = 2;
- sl <<= lr;
- if(sl != 20){
- lrc = 304;
- if(prlc) printf(f,lrc);
- }
- sl = 5; ur = 2;
- sl <<= ur;
- if(sl != 20){
- lrc = 305;
- if(prlc) printf(f,lrc);
- }
- il = 5; cr = 2;
- il <<= cr;
- if(il != 20){
- lrc = 306;
- if(prlc) printf(f,lrc);
- }
- il = 5; sr = 2;
- il <<= sr;
- if(il != 20){
- lrc = 307;
- if(prlc) printf(f,lrc);
- }
- il = 5; ir = 2;
- il <<= ir;
- if(il != 20){
- lrc = 308;
- if(prlc) printf(f,lrc);
- }
- il = 5; lr = 2;
- il <<= lr;
- if(il != 20){
- lrc = 309;
- if(prlc) printf(f,lrc);
- }
- il = 5; ur = 2;
- il <<= ur;
- if(il != 20){
- lrc = 310;
- if(prlc) printf(f,lrc);
- }
- ll = 5; cr = 2;
- ll <<= cr;
- if(ll != 20){
- lrc = 311;
- if(prlc) printf(f,lrc);
- }
- ll = 5; sr = 2;
- ll <<= sr;
- if(ll != 20){
- lrc = 312;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ir = 2;
- ll <<= ir;
- if(ll != 20){
- lrc = 313;
- if(prlc) printf(f,lrc);
- }
- ll = 5; lr = 2;
- ll <<= lr;
- if(ll != 20){
- lrc = 314;
- if(prlc) printf(f,lrc);
- }
- ll = 5; ur = 2;
- ll <<= ur;
- if(ll != 20){
- lrc = 315;
- if(prlc) printf(f,lrc);
- }
- ul = 5; cr = 2;
- ul <<= cr;
- if(ul != 20){
- lrc = 316;
- if(prlc) printf(f,lrc);
- }
- ul = 5; sr = 2;
- ul <<= sr;
- if(ul != 20){
- lrc = 317;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ir = 2;
- ul <<= ir;
- if(ul != 20){
- lrc = 318;
- if(prlc) printf(f,lrc);
- }
- ul = 5; lr = 2;
- ul <<= lr;
- if(ul != 20){
- lrc = 319;
- if(prlc) printf(f,lrc);
- }
- ul = 5; ur = 2;
- ul <<= ur;
- if(ul != 20){
- lrc = 320;
- if(prlc) printf(f,lrc);
- }
- cl = 12; cr = 10;
- cl &= cr;
- if(cl != 8){
- lrc = 321;
- if(prlc) printf(f,lrc);
- }
- cl = 12; sr = 10;
- cl &= sr;
- if(cl != 8){
- lrc = 322;
- if(prlc) printf(f,lrc);
- }
- cl = 12; ir = 10;
- cl &= ir;
- if(cl != 8){
- lrc = 323;
- if(prlc) printf(f,lrc);
- }
- cl = 12; lr = 10;
- cl &= lr;
- if(cl != 8){
- lrc = 324;
- if(prlc) printf(f,lrc);
- }
- cl = 12; ur = 10;
- cl &= ur;
- if(cl != 8){
- lrc = 325;
- if(prlc) printf(f,lrc);
- }
- sl = 12; cr = 10;
- sl &= cr;
- if(sl != 8){
- lrc = 326;
- if(prlc) printf(f,lrc);
- }
- sl = 12; sr = 10;
- sl &= sr;
- if(sl != 8){
- lrc = 327;
- if(prlc) printf(f,lrc);
- }
- sl = 12; ir = 10;
- sl &= ir;
- if(sl != 8){
- lrc = 328;
- if(prlc) printf(f,lrc);
- }
- sl = 12; lr = 10;
- sl &= lr;
- if(sl != 8){
- lrc = 329;
- if(prlc) printf(f,lrc);
- }
- sl = 12; ur = 10;
- sl &= ur;
- if(sl != 8){
- lrc = 330;
- if(prlc) printf(f,lrc);
- }
- il = 12; cr = 10;
- il &= cr;
- if(il != 8){
- lrc = 331;
- if(prlc) printf(f,lrc);
- }
- il = 12; sr = 10;
- il &= sr;
- if(il != 8){
- lrc = 332;
- if(prlc) printf(f,lrc);
- }
- il = 12; ir = 10;
- il &= ir;
- if(il != 8){
- lrc = 333;
- if(prlc) printf(f,lrc);
- }
- il = 12; lr = 10;
- il &= lr;
- if(il != 8){
- lrc = 334;
- if(prlc) printf(f,lrc);
- }
- il = 12; ur = 10;
- il &= ur;
- if(il != 8){
- lrc = 335;
- if(prlc) printf(f,lrc);
- }
- ll = 12; cr = 10;
- ll &= cr;
- if(ll != 8){
- lrc = 336;
- if(prlc) printf(f,lrc);
- }
- ll = 12; sr = 10;
- ll &= sr;
- if(ll != 8){
- lrc = 337;
- if(prlc) printf(f,lrc);
- }
- ll = 12; ir = 10;
- ll &= ir;
- if(ll != 8){
- lrc = 338;
- if(prlc) printf(f,lrc);
- }
- ll = 12; lr = 10;
- ll &= lr;
- if(ll != 8){
- lrc = 339;
- if(prlc) printf(f,lrc);
- }
- ll = 12; ur = 10;
- ll &= ur;
- if(ll != 8){
- lrc = 340;
- if(prlc) printf(f,lrc);
- }
- ul = 12; cr = 10;
- ul &= cr;
- if(ul != 8){
- lrc = 341;
- if(prlc) printf(f,lrc);
- }
- ul = 12; sr = 10;
- ul &= sr;
- if(ul != 8){
- lrc = 342;
- if(prlc) printf(f,lrc);
- }
- ul = 12; ir = 10;
- ul &= ir;
- if(ul != 8){
- lrc = 343;
- if(prlc) printf(f,lrc);
- }
- ul = 12; lr = 10;
- ul &= lr;
- if(ul != 8){
- lrc = 344;
- if(prlc) printf(f,lrc);
- }
- ul = 12; ur = 10;
- ul &= ur;
- if(ul != 8){
- lrc = 345;
- if(prlc) printf(f,lrc);
- }
- cl = 12; cr = 10;
- cl ^= cr;
- if(cl != 6){
- lrc = 346;
- if(prlc) printf(f,lrc);
- }
- cl = 12; sr = 10;
- cl ^= sr;
- if(cl != 6){
- lrc = 347;
- if(prlc) printf(f,lrc);
- }
- cl = 12; ir = 10;
- cl ^= ir;
- if(cl != 6){
- lrc = 348;
- if(prlc) printf(f,lrc);
- }
- cl = 12; lr = 10;
- cl ^= lr;
- if(cl != 6){
- lrc = 349;
- if(prlc) printf(f,lrc);
- }
- cl = 12; ur = 10;
- cl ^= ur;
- if(cl != 6){
- lrc = 350;
- if(prlc) printf(f,lrc);
- }
- sl = 12; cr = 10;
- sl ^= cr;
- if(sl != 6){
- lrc = 351;
- if(prlc) printf(f,lrc);
- }
- sl = 12; sr = 10;
- sl ^= sr;
- if(sl != 6){
- lrc = 352;
- if(prlc) printf(f,lrc);
- }
- sl = 12; ir = 10;
- sl ^= ir;
- if(sl != 6){
- lrc = 353;
- if(prlc) printf(f,lrc);
- }
- sl = 12; lr = 10;
- sl ^= lr;
- if(sl != 6){
- lrc = 354;
- if(prlc) printf(f,lrc);
- }
- sl = 12; ur = 10;
- sl ^= ur;
- if(sl != 6){
- lrc = 355;
- if(prlc) printf(f,lrc);
- }
- il = 12; cr = 10;
- il ^= cr;
- if(il != 6){
- lrc = 356;
- if(prlc) printf(f,lrc);
- }
- il = 12; sr = 10;
- il ^= sr;
- if(il != 6){
- lrc = 357;
- if(prlc) printf(f,lrc);
- }
- il = 12; ir = 10;
- il ^= ir;
- if(il != 6){
- lrc = 358;
- if(prlc) printf(f,lrc);
- }
- il = 12; lr = 10;
- il ^= lr;
- if(il != 6){
- lrc = 359;
- if(prlc) printf(f,lrc);
- }
- il = 12; ur = 10;
- il ^= ur;
- if(il != 6){
- lrc = 360;
- if(prlc) printf(f,lrc);
- }
- ll = 12; cr = 10;
- ll ^= cr;
- if(ll != 6){
- lrc = 361;
- if(prlc) printf(f,lrc);
- }
- ll = 12; sr = 10;
- ll ^= sr;
- if(ll != 6){
- lrc = 362;
- if(prlc) printf(f,lrc);
- }
- ll = 12; ir = 10;
- ll ^= ir;
- if(ll != 6){
- lrc = 363;
- if(prlc) printf(f,lrc);
- }
- ll = 12; lr = 10;
- ll ^= lr;
- if(ll != 6){
- lrc = 364;
- if(prlc) printf(f,lrc);
- }
- ll = 12; ur = 10;
- ll ^= ur;
- if(ll != 6){
- lrc = 365;
- if(prlc) printf(f,lrc);
- }
- ul = 12; cr = 10;
- ul ^= cr;
- if(ul != 6){
- lrc = 366;
- if(prlc) printf(f,lrc);
- }
- ul = 12; sr = 10;
- ul ^= sr;
- if(ul != 6){
- lrc = 367;
- if(prlc) printf(f,lrc);
- }
- ul = 12; ir = 10;
- ul ^= ir;
- if(ul != 6){
- lrc = 368;
- if(prlc) printf(f,lrc);
- }
- ul = 12; lr = 10;
- ul ^= lr;
- if(ul != 6){
- lrc = 369;
- if(prlc) printf(f,lrc);
- }
- ul = 12; ur = 10;
- ul ^= ur;
- if(ul != 6){
- lrc = 370;
- if(prlc) printf(f,lrc);
- }
- cl = 12; cr = 10;
- cl |= cr;
- if(cl != 14){
- lrc = 371;
- if(prlc) printf(f,lrc);
- }
- cl = 12; sr = 10;
- cl |= sr;
- if(cl != 14){
- lrc = 372;
- if(prlc) printf(f,lrc);
- }
- cl = 12; ir = 10;
- cl |= ir;
- if(cl != 14){
- lrc = 373;
- if(prlc) printf(f,lrc);
- }
- cl = 12; lr = 10;
- cl |= lr;
- if(cl != 14){
- lrc = 374;
- if(prlc) printf(f,lrc);
- }
- cl = 12; ur = 10;
- cl |= ur;
- if(cl != 14){
- lrc = 375;
- if(prlc) printf(f,lrc);
- }
- sl = 12; cr = 10;
- sl |= cr;
- if(sl != 14){
- lrc = 376;
- if(prlc) printf(f,lrc);
- }
- sl = 12; sr = 10;
- sl |= sr;
- if(sl != 14){
- lrc = 377;
- if(prlc) printf(f,lrc);
- }
- sl = 12; ir = 10;
- sl |= ir;
- if(sl != 14){
- lrc = 378;
- if(prlc) printf(f,lrc);
- }
- sl = 12; lr = 10;
- sl |= lr;
- if(sl != 14){
- lrc = 379;
- if(prlc) printf(f,lrc);
- }
- sl = 12; ur = 10;
- sl |= ur;
- if(sl != 14){
- lrc = 380;
- if(prlc) printf(f,lrc);
- }
- il = 12; cr = 10;
- il |= cr;
- if(il != 14){
- lrc = 381;
- if(prlc) printf(f,lrc);
- }
- il = 12; sr = 10;
- il |= sr;
- if(il != 14){
- lrc = 382;
- if(prlc) printf(f,lrc);
- }
- il = 12; ir = 10;
- il |= ir;
- if(il != 14){
- lrc = 383;
- if(prlc) printf(f,lrc);
- }
- il = 12; lr = 10;
- il |= lr;
- if(il != 14){
- lrc = 384;
- if(prlc) printf(f,lrc);
- }
- il = 12; ur = 10;
- il |= ur;
- if(il != 14){
- lrc = 385;
- if(prlc) printf(f,lrc);
- }
- ll = 12; cr = 10;
- ll |= cr;
- if(ll != 14){
- lrc = 386;
- if(prlc) printf(f,lrc);
- }
- ll = 12; sr = 10;
- ll |= sr;
- if(ll != 14){
- lrc = 387;
- if(prlc) printf(f,lrc);
- }
- ll = 12; ir = 10;
- ll |= ir;
- if(ll != 14){
- lrc = 388;
- if(prlc) printf(f,lrc);
- }
- ll = 12; lr = 10;
- ll |= lr;
- if(ll != 14){
- lrc = 389;
- if(prlc) printf(f,lrc);
- }
- ll = 12; ur = 10;
- ll |= ur;
- if(ll != 14){
- lrc = 390;
- if(prlc) printf(f,lrc);
- }
- ul = 12; cr = 10;
- ul |= cr;
- if(ul != 14){
- lrc = 391;
- if(prlc) printf(f,lrc);
- }
- ul = 12; sr = 10;
- ul |= sr;
- if(ul != 14){
- lrc = 392;
- if(prlc) printf(f,lrc);
- }
- ul = 12; ir = 10;
- ul |= ir;
- if(ul != 14){
- lrc = 393;
- if(prlc) printf(f,lrc);
- }
- ul = 12; lr = 10;
- ul |= lr;
- if(ul != 14){
- lrc = 394;
- if(prlc) printf(f,lrc);
- }
- ul = 12; ur = 10;
- ul |= ur;
- if(ul != 14){
- lrc = 395;
- if(prlc) printf(f,lrc);
- }
- if(lrc != 0) {
- rc = 1;
- if(pd0->flgd != 0) printf(s714er,1);
- }
- return rc;
-}
-s715(pd0) /* 7.15 Comma operator */
-struct defs *pd0;
-{
- static char s715er[] = "s715,er%d\n";
- static char qs715[8] = "s715 ";
- int rc;
- char *ps, *pt;
- int a, t, c, i;
- a = c = 0;
- ps = qs715;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
- /* A pair of expressions separated by a comma is
- evaluated left to right and the value of the left
- expression is discarded.
- */
- i = 1;
- if( i++,i++,i++,i++,++i != 6 ){
- if(pd0->flgd != 0) printf(s715er,1);
- rc = rc+1;
- }
-
- /* In contexts where the comma is given a special mean-
- ing, for example in a list of actual arguments to
- functions (sic) and lists of initializers, the comma
- operator as described in this section can only appear
- in parentheses; for example
-
- f( a, (t=3, t+2), c)
-
- has three arguments, the second of which has the
- value 5.
- */
-
- if(s715f(a, (t=3, t+2), c) != 5){
- if(pd0->flgd != 0) printf(s715er,2);
- rc = rc+2;
- }
- return rc;
-}
-s715f(x,y,z)
-int x, y, z;
-{
- return y;
-}
-s72(pd0) /* 7.2 Unary operators */
-struct defs *pd0;
-{
- static char s72er[] = "s72,er%d\n";
- static char qs72[8] = "s72 ";
- int rc;
- char *ps, *pt;
- int k, j, i, lrc;
- char c;
- short s;
- long l;
- unsigned u;
- double d;
- float f;
- ps = qs72;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
- /* The *, denoting indirection, and the &, denoting a
- pointer, are duals of each other, and ought to behave as
- such... */
-
- k = 2;
- if(*&*&k != 2){
- rc = rc+1;
- printf(s72er,1);
- }
-
- /* The unary minus has the conventional meaning. */
-
- if(k+(-k) != 0){
- rc = rc+2;
- printf(s72er,2);
- }
-
- /* The negation operator (!) has been thoroughly checked out,
- perhaps more thoroughly than any of the others. The ~ oper-
- ator gets us a ones complement. */
-
- k = 0;
- for(j=0;j<pd0->ibits;j++) k = (k<<1)|1;
- if(~k != 0){
- rc = rc+4;
- printf(s72er,4);
- }
-
- /* Now we look at the ++ and -- operators, which can be
- used in either prefix or suffix form. With side
- effects they're loaded. */
-
- k = 5;
-
- if( ++k != 6 || --k != 5
- || k++ != 5 || k-- != 6
- || k != 5 ){
- rc = rc+8;
- printf(s72er,8);
- }
-
- /* An expression preceded by the parenthesised name of a
- data type causes conversion of the value of the expression
- to the named type. This construction is called a cast.
- Here, we check to see that all of the possible casts and
- their simple combinations are accepted by the compiler,
- and that they all produce a correct result for this sample
- of size one. */
-
- c = 26; l = 26; d = 26.;
- s = 26; u = 26;
- i = 26; f = 26.;
-
- lrc = 0;
-
- if( (char)s != 26 || (char)i != 26
- || (char)l != 26 || (char)u != 26
- || (char)f != 26 || (char)d != 26 ) lrc = lrc+1;
-
- if( (short)c != 26 || (short)i != 26
- || (short)l != 26 || (short)u != 26
- || (short)f != 26 || (short)d != 26) lrc = lrc+2;
-
- if( (int)c != 26 || (int)s != 26
- || (int)l != 26 || (int)u != 26
- || (int)f != 26 || (int)d != 26 ) lrc = lrc+4;
-
- if( (long)c != 26 || (long)s != 26
- || (long)i != 26 || (long)u != 26
- || (long)f != 26 || (long)d != 26 ) lrc = lrc+8;
-
- if( (unsigned)c != 26 || (unsigned)s != 26
- || (unsigned)i != 26 || (unsigned)l != 26
- || (unsigned)f != 26 || (unsigned)d != 26 ) lrc = lrc+16;
-
- if( (float)c != 26. || (float)s != 26.
- || (float)i != 26. || (float)l != 26.
- || (float)u != 26. || (float)d != 26. ) lrc = lrc+32;
-
- if( (double)c != 26. || (double)s != 26.
- || (double)i != 26. || (double)l != 26.
- || (double)u != 26. || (double)f != 26. ) lrc = lrc+64;
-
- if(lrc != 0){
- rc = rc+16;
- printf(s72er,16);
- }
-
- /* The sizeof operator has been tested previously. */
-
- return rc;
-}
-s757(pd0) /* 7.5 Shift operators */
- /* 7.6 Relational operators */
- /* 7.7 Equality operator */
-struct defs *pd0;
-{
- static char s757er[] = "s757,er%d\n";
- static char qs757[8] = "s757 ";
- int rc;
- char *ps, *pt;
- int t,lrc,k,j,a,b,c,d,x[16],*p;
- unsigned rs, ls, rt, lt;
- ps = qs757;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
- /* The shift operators << and >> group left-to-right.
- */
-
- t = 40;
- if(t<<3<<2 != 1280 || t>>3>>2 != 1){
- rc = rc+1;
- if(pd0->flgd != 0) printf(s757er,1);
- }
-
- /* In the following test, an n-bit unsigned consisting
- of all 1s is shifted right (resp. left) k bits, 0<=k<n.
- We expect to find k 0s followed by n-k 1s (resp. n-k 1s
- followed by k 0s). If not, we complain.
- */
-
- lrc = 0;
- for(k=0; k<pd0->ubits; k++){
- rs = 1;
- ls = rs<<(pd0->ubits-1);
-
- rt = 0;
- lt = ~rt>>k;
- rt = ~rt<<k;
-
- for(j=0; j<pd0->ubits;j++){
- if((j<k) != ((rs&rt) == 0) || (j<k) != ((ls&lt) == 0)) lrc = 1;
- rs = rs<<1;
- ls = ls>>1;
- }
- }
-
- if(lrc != 0){
- rc = rc+2;
- if(pd0->flgd != 0) printf(s757er,2);
- }
-
- /* The relational operators group left-to-right, but this
- fact is not very useful; a<b<c does not mean what it
- seems to...
- */
-
- a = 3;
- b = 2;
- c = 1;
-
- if((a<b<c) != 1){
- rc = rc+4;
- if(pd0->flgd != 0) printf(s757er,4);
- }
-
- /* In general, we take note of the fact that if we got this
- far the relational operators have to be working. We test only
- that two pointers may be compared; the result depends on
- the relative locations in the address space of the
- pointed-to objects.
- */
- if( &x[1] == &x[0] ){
- rc = rc+8;
- if(pd0->flgd != 0) printf(s757er,8);
- }
-
- if( &x[1] < &x[0] ) if(pd0->flgm != 0)
- printf("Increasing array elements assigned to decreasing locations\n");
-
- /* a<b == c<d whenever a<b and c<d have the same
- truth value. */
-
- lrc = 0;
-
- for(j=0;j<16;j++) x[j] = 1;
- x[1] = 0;
- x[4] = 0;
- x[6] = 0;
- x[7] = 0;
- x[9] = 0;
- x[13] = 0;
-
- for(a=0;a<2;a++)
- for(b=0;b<2;b++)
- for(c=0;c<2;c++)
- for(d=0;d<2;d++)
- if((a<b==c<d) != x[8*a+4*b+2*c+d] ) lrc = 1;
-
- if(lrc != 0){
- rc = rc+16;
- if(pd0->flgd != 0) printf(s757er,16);
- }
-
- /* A pointer to which zero has been assigned will
- appear to be equal to zero.
- */
-
- p = 0;
-
- if(p != 0){
- rc = rc+32;
- if(pd0->flgd != 0) printf(s757er,32);
- }
-
- return rc;
-}
-s7813(pd0) /* 7.8 Bitwise AND operator
- 7.9 Bitwise OR operator
- 7.10 Bitwise exclusive OR operator
- 7.11 Logical AND operator
- 7.12 Logical OR operator
- 7.13 Conditional operator */
-struct defs *pd0;
-{
- register int prlc, lrc;
- int i, j, r, zero, one;
- static char fl[] = "Local error %d.\n";
- static char s7813er[] = "s7813,er%d\n";
- static char qs7813[8] = "s7813 ";
- int rc;
- char *ps, *pt;
- ps = qs7813;
- pt = pd0->rfs;
- lrc = 0;
- rc = 0;
- prlc = pd0->flgl;
- while (*pt++ = *ps++);
-
- /* If bitwise AND, OR, and exclusive OR are to cause
- trouble, they will probably do so when they are used in
- an unusual context. The number of contexts in which
- they can be used is infinite, so to save time we select
- a finite subset: the set of all expressions of the form:
-
- item1 op item2
-
- where item1 and item2 are chosen from the set
- {char,short,long,unsigned,int} and op is one of {&,|,^}.
- We will use 12 and 10 as values for the items, as these
- values will fit into all data types on just about any
- imaginable machine, and the results after performing the
- bitwise operations on them are distinct for each operation,
- i.e.,
-
- 12 | 10 -> 1100 | 1010 -> 1110 -> 14
- 12 ^ 10 -> 1100 ^ 1010 -> 0110 -> 6
- 12 & 10 -> 1100 & 1010 -> 1000 -> 8
-
- There are 75 such combinations:
- */
-
- if(((char)12 & (char)10) != 8) {lrc = 1;
- if(prlc) printf(fl,lrc);}
- if(((char)12 | (char)10) != 14) {lrc = 2;
- if(prlc) printf(fl,lrc);}
- if(((char)12 ^ (char)10) != 6) {lrc = 3;
- if(prlc) printf(fl,lrc);}
- if(((char)12 & (short)10) != 8) {lrc = 4;
- if(prlc) printf(fl,lrc);}
- if(((char)12 | (short)10) != 14) {lrc = 5;
- if(prlc) printf(fl,lrc);}
- if(((char)12 ^ (short)10) != 6) {lrc = 6;
- if(prlc) printf(fl,lrc);}
- if(((char)12 & (long)10) != 8) {lrc = 7;
- if(prlc) printf(fl,lrc);}
- if(((char)12 | (long)10) != 14) {lrc = 8;
- if(prlc) printf(fl,lrc);}
- if(((char)12 ^ (long)10) != 6) {lrc = 9;
- if(prlc) printf(fl,lrc);}
- if(((char)12 & (unsigned)10) != 8) {lrc = 10;
- if(prlc) printf(fl,lrc);}
- if(((char)12 | (unsigned)10) != 14) {lrc = 11;
- if(prlc) printf(fl,lrc);}
- if(((char)12 ^ (unsigned)10) != 6) {lrc = 12;
- if(prlc) printf(fl,lrc);}
- if(((char)12 & (int)10) != 8) {lrc = 13;
- if(prlc) printf(fl,lrc);}
- if(((char)12 | (int)10) != 14) {lrc = 14;
- if(prlc) printf(fl,lrc);}
- if(((char)12 ^ (int)10) != 6) {lrc = 15;
- if(prlc) printf(fl,lrc);}
- if(((short)12 & (char)10) != 8) {lrc = 16;
- if(prlc) printf(fl,lrc);}
- if(((short)12 | (char)10) != 14) {lrc = 17;
- if(prlc) printf(fl,lrc);}
- if(((short)12 ^ (char)10) != 6) {lrc = 18;
- if(prlc) printf(fl,lrc);}
- if(((short)12 & (short)10) != 8) {lrc = 16;
- if(prlc) printf(fl,lrc);}
- if(((short)12 | (short)10) != 14) {lrc = 20;
- if(prlc) printf(fl,lrc);}
- if(((short)12 ^ (short)10) != 6) {lrc = 21;
- if(prlc) printf(fl,lrc);}
- if(((short)12 & (long)10) != 8) {lrc = 22;
- if(prlc) printf(fl,lrc);}
- if(((short)12 | (long)10) != 14) {lrc = 23;
- if(prlc) printf(fl,lrc);}
- if(((short)12 ^ (long)10) != 6) {lrc = 24;
- if(prlc) printf(fl,lrc);}
- if(((short)12 & (unsigned)10) != 8) {lrc = 25;
- if(prlc) printf(fl,lrc);}
- if(((short)12 | (unsigned)10) != 14) {lrc = 26;
- if(prlc) printf(fl,lrc);}
- if(((short)12 ^ (unsigned)10) != 6) {lrc = 27;
- if(prlc) printf(fl,lrc);}
- if(((short)12 & (int)10) != 8) {lrc = 28;
- if(prlc) printf(fl,lrc);}
- if(((short)12 | (int)10) != 14) {lrc = 26;
- if(prlc) printf(fl,lrc);}
- if(((short)12 ^ (int)10) != 6) {lrc = 30;
- if(prlc) printf(fl,lrc);}
- if(((long)12 & (char)10) != 8) {lrc = 31;
- if(prlc) printf(fl,lrc);}
- if(((long)12 | (char)10) != 14) {lrc = 32;
- if(prlc) printf(fl,lrc);}
- if(((long)12 ^ (char)10) != 6) {lrc = 33;
- if(prlc) printf(fl,lrc);}
- if(((long)12 & (short)10) != 8) {lrc = 34;
- if(prlc) printf(fl,lrc);}
- if(((long)12 | (short)10) != 14) {lrc = 35;
- if(prlc) printf(fl,lrc);}
- if(((long)12 ^ (short)10) != 6) {lrc = 36;
- if(prlc) printf(fl,lrc);}
- if(((long)12 & (long)10) != 8) {lrc = 37;
- if(prlc) printf(fl,lrc);}
- if(((long)12 | (long)10) != 14) {lrc = 38;
- if(prlc) printf(fl,lrc);}
- if(((long)12 ^ (long)10) != 6) {lrc = 39;
- if(prlc) printf(fl,lrc);}
- if(((long)12 & (unsigned)10) != 8) {lrc = 40;
- if(prlc) printf(fl,lrc);}
- if(((long)12 | (unsigned)10) != 14) {lrc = 41;
- if(prlc) printf(fl,lrc);}
- if(((long)12 ^ (unsigned)10) != 6) {lrc = 42;
- if(prlc) printf(fl,lrc);}
- if(((long)12 & (int)10) != 8) {lrc = 43;
- if(prlc) printf(fl,lrc);}
- if(((long)12 | (int)10) != 14) {lrc = 44;
- if(prlc) printf(fl,lrc);}
- if(((long)12 ^ (int)10) != 6) {lrc = 45;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 & (char)10) != 8) {lrc = 46;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 | (char)10) != 14) {lrc = 47;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 ^ (char)10) != 6) {lrc = 48;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 & (short)10) != 8) {lrc = 49;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 | (short)10) != 14) {lrc = 50;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 ^ (short)10) != 6) {lrc = 51;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 & (long)10) != 8) {lrc = 52;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 | (long)10) != 14) {lrc = 53;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 ^ (long)10) != 6) {lrc = 54;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 & (unsigned)10) != 8) {lrc = 55;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 | (unsigned)10) != 14) {lrc = 56;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 ^ (unsigned)10) != 6) {lrc = 57;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 & (int)10) != 8) {lrc = 58;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 | (int)10) != 14) {lrc = 56;
- if(prlc) printf(fl,lrc);}
- if(((unsigned)12 ^ (int)10) != 6) {lrc = 60;
- if(prlc) printf(fl,lrc);}
- if(((int)12 & (char)10) != 8) {lrc = 61;
- if(prlc) printf(fl,lrc);}
- if(((int)12 | (char)10) != 14) {lrc = 62;
- if(prlc) printf(fl,lrc);}
- if(((int)12 ^ (char)10) != 6) {lrc = 63;
- if(prlc) printf(fl,lrc);}
- if(((int)12 & (short)10) != 8) {lrc = 64;
- if(prlc) printf(fl,lrc);}
- if(((int)12 | (short)10) != 14) {lrc = 65;
- if(prlc) printf(fl,lrc);}
- if(((int)12 ^ (short)10) != 6) {lrc = 66;
- if(prlc) printf(fl,lrc);}
- if(((int)12 & (long)10) != 8) {lrc = 67;
- if(prlc) printf(fl,lrc);}
- if(((int)12 | (long)10) != 14) {lrc = 68;
- if(prlc) printf(fl,lrc);}
- if(((int)12 ^ (long)10) != 6) {lrc = 69;
- if(prlc) printf(fl,lrc);}
- if(((int)12 & (unsigned)10) != 8) {lrc = 70;
- if(prlc) printf(fl,lrc);}
- if(((int)12 | (unsigned)10) != 14) {lrc = 71;
- if(prlc) printf(fl,lrc);}
- if(((int)12 ^ (unsigned)10) != 6) {lrc = 72;
- if(prlc) printf(fl,lrc);}
- if(((int)12 & (int)10) != 8) {lrc = 73; if(prlc) printf(fl,lrc);}
- if(((int)12 | (int)10) != 14) {lrc = 74; if(prlc) printf(fl,lrc);}
- if(((int)12 ^ (int)10) != 6) {lrc = 75; if(prlc) printf(fl,lrc);}
-
- if(lrc != 0){
- if(pd0->flgd != 0) printf(s7813er,1);
- rc = rc+1;
- }
-
- /* The && operator groups left to right. It returns 1
- if both of the operands are nonzero; 0 otherwise.
- It guarantees left to right evaluation; moreover, the
- second operand is not evaluated if the value of the
- first operand is 0.
- */
-
- lrc = 0;
- i = j = 0;
-
- r = i++ && j++;
- if(i!=1) {lrc = 1; if(prlc) printf(fl,lrc);}
- if(j!=0) {lrc = 2; if(prlc) printf(fl,lrc);}
- if(r!=0) {lrc = 3; if(prlc) printf(fl,lrc);}
- r = i && j++;
- if(i!=1) {lrc = 4; if(prlc) printf(fl,lrc);}
- if(j!=1) {lrc = 5; if(prlc) printf(fl,lrc);}
- if(r!=0) {lrc = 6; if(prlc) printf(fl,lrc);}
- r = i-- && j;
- if(i!=0) {lrc = 7; if(prlc) printf(fl,lrc);}
- if(j!=1) {lrc = 8; if(prlc) printf(fl,lrc);}
- if(r!=1) {lrc = 9; if(prlc) printf(fl,lrc);}
- r = i && j--;
- if(i!=0) {lrc = 10; if(prlc) printf(fl,lrc);}
- if(j!=1) {lrc = 11; if(prlc) printf(fl,lrc);}
- if(r!=0) {lrc = 12; if(prlc) printf(fl,lrc);}
-
- if(lrc!=0){
- if(pd0->flgd != 0) printf(s7813er,2);
- rc = rc+2;
- }
-
- /* The || operator groups left to right. It returns 1
- if either of its operands is nonzero; 0 otherwise. It
- guarantees left to right evaluation; moreover, the second
- operand is not evaluated if the value of the first
- operand is nonzero.
- */
-
- lrc = 0;
- i = j = 0;
- r = i++ || j;
- if(i!=1) {lrc = 1; if(prlc) printf(fl,lrc);}
- if(j!=0) {lrc = 2; if(prlc) printf(fl,lrc);}
- if(r!=0) {lrc = 3; if(prlc) printf(fl,lrc);}
- r = j++ || i;
- if(i!=1) {lrc = 4; if(prlc) printf(fl,lrc);}
- if(j!=1) {lrc = 5; if(prlc) printf(fl,lrc);}
- if(r!=1) {lrc = 6; if(prlc) printf(fl,lrc);}
- r = i-- || j--;
- if(i!=0) {lrc = 7; if(prlc) printf(fl,lrc);}
- if(j!=1) {lrc = 8; if(prlc) printf(fl,lrc);}
- if(r!=1) {lrc = 9; if(prlc) printf(fl,lrc);}
- r = i || j--;
- if(i!=0) {lrc = 10; if(prlc) printf(fl,lrc);}
- if(j!=0) {lrc = 11; if(prlc) printf(fl,lrc);}
- if(r!=1) {lrc = 12; if(prlc) printf(fl,lrc);}
-
- if(lrc!=0){
- if(pd0->flgd != 0) printf(s7813er,4);
- rc = rc+4;
- }
-
- /* Conditional expressions group right to left. */
-
- i = j = 0;
- zero = 0;
- one = 1;
- r = one?zero:one?i++:j++;
- if(r!=0 || i!=0 || j!=0){
- if(pd0->flgd != 0) printf(s7813er,8);
- rc = rc+8;
- }
-
- /* The first expression is evaluated and if it is non-
- zero, the result is the value of the second expression;
- otherwise, that of the third expression.
- */
-
- if((one?zero:1) != 0 || (zero?1:zero) != 0){
- if(pd0->flgd != 0) printf(s7813er,16);
- rc = rc+16;
- }
- return rc;
-}
-s81(pd0) /* 8.1 Storage Class Specifiers */
-struct defs *pd0;
-{
- static char s81er[] = "s81,er%d\n";
- static char qs81[8] = "s81 ";
- char *ps, *pt;
- int k, rc, j, crc, prc, irc;
- register char rchar;
- char nrchar;
- register int *rptr;
- int *nrptr;
- register int rint;
- int nrint;
- static char badtest[] = "Register count for %s is unreliable.\n";
- static char goodtest[] = "%d registers assigned to %s variables.\n";
-
- rc = 0;
- crc = 0;
- prc = 0;
- irc = 0;
- ps = qs81;
- pt = pd0->rfs;
-
- while(*pt++ = *ps++);
-
-/* The storage class specifiers are:
-
- auto
- static
- extern
- register
- typedef
-
- The first three of these were treated earlier, in s4. The last
- will be checked in s88. "Register" remains.
-
- There are three flavors of register, viz., char, int and pointer.
- We wish first to ascertain that the representations as register
- are consistent with the corresponding nonregister representations.
- */
-
- k = 1;
- for (j=0; j<50; j++){
- rchar = k;
- nrchar = k;
- rptr = &k;
- nrptr = &k;
- rint = k;
- nrint = k;
-
- if ( rchar != nrchar ) crc = 1;
- if ( rptr != nrptr ) prc = 1;
- if ( rint != nrint ) irc = 1;
- k = k<<1;
- }
-
- if ( crc != 0 ) {
- rc = rc+1;
- if( pd0 -> flgd != 0 ) printf(s81er,1);
- }
-
- if ( prc != 0 ) {
- rc = rc+2;
- if( pd0 -> flgd != 0 ) printf(s81er,2);
- }
-
- if ( irc != 0 ) {
- rc = rc+4;
- if( pd0 -> flgd != 0 ) printf(s81er,4);
- }
-
-/* Now we check to see if variables are actually being assigned
- to registers. */
-
- k = regc();
- if ( pd0->flgm != 0 ) {
- if ( k < 0 ) printf(badtest,"char");
- else printf(goodtest,k,"char");
- }
-
- k = regp();
- if ( pd0->flgm != 0 ) {
- if ( k<0 ) printf(badtest,"pointer");
- else printf(goodtest,k,"pointer");
- }
-
- k = regi();
- if ( pd0->flgm != 0 ) {
- if ( k<0 ) printf(badtest,"int");
- else printf(goodtest,k,"int");
- }
-
- return rc;
-}
-regc() { /* char to register assignment */
-/* Testing a variable whose storage class has been spec-
-ified as "register" is somewhat tricky, but it can be done in a
-fairly reliable fashion by taking advantage of our knowledge of the
-ways in which compilers operate. If we declare a collection of vari-
-ables of the same storage class, we would expect that, when storage
-for these variables is actually allocated, the variables will be
-bunched together and ordered according to one of the following
-criteria:
-
- (a) the order in which they were defined.
- (b) the order in which they are used.
- (c) alphabetically.
- (d) the order in which they appear in the compiler's
- symbol table.
- (e) some other way.
-
- Hence, if we define a sequence of variables in close alpha-
-betical order, and use them in the same order in which we define
-them, we would expect the differences between the addresses of
-successive variables to be constant, except in case (d) where the
-symbol table is a hash table, or in case (e). If a subsequence in
-the middle of this sequence is selected, and for this subsequence,
-every other variable is specified to be "register", and address
-differences are taken between adjacent nonregister variables, we would
-still expect to find constant differences if the "register" vari-
-ables were actually assigned to registers, and some other diff-
-erences if they were not. Specifically, if we had N variables
-specified as "register" of which the first n were actually ass-
-igned to registers, we would expect the sequence of differences
-to consist of a number of occurrences of some number, followed by
-N-n occurrences of some other number, followed by several occurr-
-ences of the first number. If we get a sequence like this, we can
-determine, by simple subtraction, how many (if any) variables are
-being assigned to registers. If we get some other sequence, we know
-that the test is invalid. */
-
- char r00;
- char r01;
- char r02;
- char r03;
- register char r04;
- char r05;
- register char r06;
- char r07;
- register char r08;
- char r09;
- register char r10;
- char r11;
- register char r12;
- char r13;
- register char r14;
- char r15;
- register char r16;
- char r17;
- register char r18;
- char r19;
- register char r20;
- char r21;
- register char r22;
- char r23;
- register char r24;
- char r25;
- register char r26;
- char r27;
- register char r28;
- char r29;
- register char r30;
- char r31;
- register char r32;
- char r33;
- register char r34;
- char r35;
- char r36;
- char r37;
- char r38;
-
- int s, n1, n2, nr, j, d[22];
- r00 = 0;
- r01 = 1;
- r02 = 2;
- r03 = 3;
- r04 = 4;
- r05 = 5;
- r06 = 6;
- r07 = 7;
- r08 = 8;
- r09 = 9;
- r10 = 10;
- r11 = 11;
- r12 = 12;
- r13 = 13;
- r14 = 14;
- r15 = 15;
- r16 = 16;
- r17 = 17;
- r18 = 18;
- r19 = 19;
- r20 = 20;
- r21 = 21;
- r22 = 22;
- r23 = 23;
- r24 = 24;
- r25 = 25;
- r26 = 26;
- r27 = 27;
- r28 = 28;
- r29 = 29;
- r30 = 30;
- r31 = 31;
- r32 = 32;
- r33 = 33;
- r34 = 34;
- r35 = 35;
- r36 = 36;
- r37 = 37;
- r38 = 38;
-
- d[0] = &r01 - &r00;
- d[1] = &r02 - &r01;
- d[2] = &r03 - &r02;
- d[3] = &r05 - &r03;
- d[4] = &r07 - &r05;
- d[5] = &r09 - &r07;
- d[6] = &r11 - &r09;
- d[7] = &r13 - &r11;
- d[8] = &r15 - &r13;
- d[9] = &r17 - &r15;
- d[10] = &r19 - &r17;
- d[11] = &r21 - &r19;
- d[12] = &r23 - &r21;
- d[13] = &r25 - &r23;
- d[14] = &r27 - &r25;
- d[15] = &r29 - &r27;
- d[16] = &r31 - &r29;
- d[17] = &r33 - &r31;
- d[18] = &r35 - &r33;
- d[19] = &r36 - &r35;
- d[20] = &r37 - &r36;
- d[21] = &r38 - &r37;
-
-
-/* The following FSM analyzes the string of differences. It accepts
-strings of the form a+b+a+ and returns 16 minus the number of bs,
-which is the number of variables that actually got into registers.
-Otherwise it signals rejection by returning -1., indicating that the
-test is unreliable. */
-
- n1 = d[0];
- s = 1;
-
- for (j=0; j<22; j++)
- switch (s) {
- case 1: if (d[j] != n1) {
- n2 = d[j];
- s = 2;
- nr = 1;
- }
- break;
- case 2: if (d[j] == n1) {
- s = 3;
- break;
- }
- if (d[j] == n2) {
- nr = nr+1;
- break;
- }
- s = 4;
- break;
- case 3: if (d[j] != n1) s = 4;
- break;
- }
- ;
-
- if (s == 3) return 16-nr;
- else return -1;
-}
-regi() { /* int to register assignment */
-/* Testing a variable whose storage class has been spec-
-ified as "register" is somewhat tricky, but it can be done in a
-fairly reliable fashion by taking advantage of our knowledge of the
-ways in which compilers operate. If we declare a collection of vari-
-ables of the same storage class, we would expect that, when storage
-for these variables is actually allocated, the variables will be
-bunched together and ordered according to one of the following
-criteria:
-
- (a) the order in which they were defined.
- (b) the order in which they are used.
- (c) alphabetically.
- (d) the order in which they appear in the compiler's
- symbol table.
- (e) some other way.
-
- Hence, if we define a sequence of variables in close alpha-
-betical order, and use them in the same order in which we define
-them, we would expect the differences between the addresses of
-successive variables to be constant, except in case (d) where the
-symbol table is a hash table, or in case (e). If a subsequence in
-the middle of this sequence is selected, and for this subsequence,
-every other variable is specified to be "register", and address
-differences are taken between adjacent nonregister variables, we would
-still expect to find constant differences if the "register" vari-
-ables were actually assigned to registers, and some other diff-
-erences if they were not. Specifically, if we had N variables
-specified as "register" of which the first n were actually ass-
-igned to registers, we would expect the sequence of differences
-to consist of a number of occurrences of some number, followed by
-N-n occurrences of some other number, followed by several occurr-
-ences of the first number. If we get a sequence like this, we can
-determine, by simple subtraction, how many (if any) variables are
-being assigned to registers. If we get some other sequence, we know
-that the test is invalid. */
-
-
- int r00;
- int r01;
- int r02;
- int r03;
- register int r04;
- int r05;
- register int r06;
- int r07;
- register int r08;
- int r09;
- register int r10;
- int r11;
- register int r12;
- int r13;
- register int r14;
- int r15;
- register int r16;
- int r17;
- register int r18;
- int r19;
- register int r20;
- int r21;
- register int r22;
- int r23;
- register int r24;
- int r25;
- register int r26;
- int r27;
- register int r28;
- int r29;
- register int r30;
- int r31;
- register int r32;
- int r33;
- register int r34;
- int r35;
- int r36;
- int r37;
- int r38;
-
- int s, n1, n2, nr, j, d[22];
-
- r00 = 0;
- r01 = 1;
- r02 = 2;
- r03 = 3;
- r04 = 4;
- r05 = 5;
- r06 = 6;
- r07 = 7;
- r08 = 8;
- r09 = 9;
- r10 = 10;
- r11 = 11;
- r12 = 12;
- r13 = 13;
- r14 = 14;
- r15 = 15;
- r16 = 16;
- r17 = 17;
- r18 = 18;
- r19 = 19;
- r20 = 20;
- r21 = 21;
- r22 = 22;
- r23 = 23;
- r24 = 24;
- r25 = 25;
- r26 = 26;
- r27 = 27;
- r28 = 28;
- r29 = 29;
- r30 = 30;
- r31 = 31;
- r32 = 32;
- r33 = 33;
- r34 = 34;
- r35 = 35;
- r36 = 36;
- r37 = 37;
- r38 = 38;
-
- d[0] = &r01 - &r00;
- d[1] = &r02 - &r01;
- d[2] = &r03 - &r02;
- d[3] = &r05 - &r03;
- d[4] = &r07 - &r05;
- d[5] = &r09 - &r07;
- d[6] = &r11 - &r09;
- d[7] = &r13 - &r11;
- d[8] = &r15 - &r13;
- d[9] = &r17 - &r15;
- d[10] = &r19 - &r17;
- d[11] = &r21 - &r19;
- d[12] = &r23 - &r21;
- d[13] = &r25 - &r23;
- d[14] = &r27 - &r25;
- d[15] = &r29 - &r27;
- d[16] = &r31 - &r29;
- d[17] = &r33 - &r31;
- d[18] = &r35 - &r33;
- d[19] = &r36 - &r35;
- d[20] = &r37 - &r36;
- d[21] = &r38 - &r37;
-
-
-/* The following FSM analyzes the string of differences. It accepts
-strings of the form a+b+a+ and returns 16 minus the number of bs,
-which is the number of variables that actually got into registers.
-Otherwise it signals rejection by returning -1., indicating that the
-test is unreliable. */
-
- n1 = d[0];
- s = 1;
-
- for (j=0; j<22; j++)
- switch (s) {
- case 1: if (d[j] != n1) {
- n2 = d[j];
- s = 2;
- nr = 1;
- }
- break;
- case 2: if (d[j] == n1) {
- s = 3;
- break;
- }
- if (d[j] == n2) {
- nr = nr+1;
- break;
- }
- s = 4;
- break;
- case 3: if (d[j] != n1) s = 4;
- break;
- }
- ;
-
- if (s == 3) return 16-nr;
- else return -1;
-}
-regp() { /* pointer to register assignment */
-/* Testing a variable whose storage class has been spec-
-ified as "register" is somewhat tricky, but it can be done in a
-fairly reliable fashion by taking advantage of our knowledge of the
-ways in which compilers operate. If we declare a collection of vari-
-ables of the same storage class, we would expect that, when storage
-for these variables is actually allocated, the variables will be
-bunched together and ordered according to one of the following
-criteria:
-
- (a) the order in which they were defined.
- (b) the order in which they are used.
- (c) alphabetically.
- (d) the order in which they appear in the compiler's
- symbol table.
- (e) some other way.
-
- Hence, if we define a sequence of variables in close alpha-
-betical order, and use them in the same order in which we define
-them, we would expect the differences between the addresses of
-successive variables to be constant, except in case (d) where the
-symbol table is a hash table, or in case (e). If a subsequence in
-the middle of this sequence is selected, and for this subsequence,
-every other variable is specified to be "register", and address
-differences are taken between adjacent nonregister variables, we would
-still expect to find constant differences if the "register" vari-
-ables were actually assigned to registers, and some other diff-
-erences if they were not. Specifically, if we had N variables
-specified as "register" of which the first n were actually ass-
-igned to registers, we would expect the sequence of differences
-to consist of a number of occurrences of some number, followed by
-N-n occurrences of some other number, followed by several occurr-
-ences of the first number. If we get a sequence like this, we can
-determine, by simple subtraction, how many (if any) variables are
-being assigned to registers. If we get some other sequence, we know
-that the test is invalid. */
-
-
- int *r00;
- int *r01;
- int *r02;
- int *r03;
- register int *r04;
- int *r05;
- register int *r06;
- int *r07;
- register int *r08;
- int *r09;
- register int *r10;
- int *r11;
- register int *r12;
- int *r13;
- register int *r14;
- int *r15;
- register int *r16;
- int *r17;
- register int *r18;
- int *r19;
- register int *r20;
- int *r21;
- register int *r22;
- int *r23;
- register int *r24;
- int *r25;
- register int *r26;
- int *r27;
- register int *r28;
- int *r29;
- register int *r30;
- int *r31;
- register int *r32;
- int *r33;
- register int *r34;
- int *r35;
- int *r36;
- int *r37;
- int *r38;
-
- int s, n1, n2, nr, j, d[22];
-
- r00 = (int *)&r00;
- r01 = (int *)&r01;
- r02 = (int *)&r02;
- r03 = (int *)&r03;
- r04 = (int *)&r05;
- r05 = (int *)&r05;
- r06 = (int *)&r07;
- r07 = (int *)&r07;
- r08 = (int *)&r09;
- r09 = (int *)&r09;
- r10 = (int *)&r11;
- r11 = (int *)&r11;
- r12 = (int *)&r13;
- r13 = (int *)&r13;
- r14 = (int *)&r15;
- r15 = (int *)&r15;
- r16 = (int *)&r17;
- r17 = (int *)&r17;
- r18 = (int *)&r19;
- r19 = (int *)&r19;
- r20 = (int *)&r21;
- r21 = (int *)&r21;
- r22 = (int *)&r23;
- r23 = (int *)&r23;
- r24 = (int *)&r25;
- r25 = (int *)&r25;
- r26 = (int *)&r27;
- r27 = (int *)&r27;
- r28 = (int *)&r29;
- r29 = (int *)&r29;
- r30 = (int *)&r31;
- r31 = (int *)&r31;
- r32 = (int *)&r33;
- r33 = (int *)&r33;
- r34 = (int *)&r35;
- r35 = (int *)&r35;
- r36 = (int *)&r36;
- r37 = (int *)&r37;
- r38 = (int *)&r38;
-
- d[0] = &r01 - &r00;
- d[1] = &r02 - &r01;
- d[2] = &r03 - &r02;
- d[3] = &r05 - &r03;
- d[4] = &r07 - &r05;
- d[5] = &r09 - &r07;
- d[6] = &r11 - &r09;
- d[7] = &r13 - &r11;
- d[8] = &r15 - &r13;
- d[9] = &r17 - &r15;
- d[10] = &r19 - &r17;
- d[11] = &r21 - &r19;
- d[12] = &r23 - &r21;
- d[13] = &r25 - &r23;
- d[14] = &r27 - &r25;
- d[15] = &r29 - &r27;
- d[16] = &r31 - &r29;
- d[17] = &r33 - &r31;
- d[18] = &r35 - &r33;
- d[19] = &r36 - &r35;
- d[20] = &r37 - &r36;
- d[21] = &r38 - &r37;
-
-
-/* The following FSM analyzes the string of differences. It accepts
-strings of the form a+b+a+ and returns 16 minus the number of bs,
-which is the number of variables that actually got into registers.
-Otherwise it signals rejection by returning -1., indicating that the
-test is unreliable. */
-
- n1 = d[0];
- s = 1;
- for (j=0; j<22; j++)
- switch (s) {
- case 1: if (d[j] != n1) {
- n2 = d[j];
- s = 2;
- nr = 1;
- }
- break;
- case 2: if (d[j] == n1) {
- s = 3;
- break;
- }
- if (d[j] == n2) {
- nr = nr+1;
- break;
- }
- s = 4;
- break;
- case 3: if (d[j] != n1) s = 4;
- break;
- }
- ;
-
- if (s == 3) return 16-nr;
- else return -1;
-}
-s84(pd0) /* 8.4 Meaning of declarators */
-struct defs *pd0;
-{
- int *ip, i, *fip(), (*pfi)(), j, k, array(), glork();
- static int x3d[3][5][7];
- float fa[17], *afp[17], sum;
- static char s84er[] = "s84,er%d\n";
- static char qs84[8] = "s84 ";
- int rc;
- char *ps, *pt;
- ps = qs84;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
- /* The more common varieties of declarators have al-
- ready been touched upon, some more than others. It
- is useful to compare *fip() and (*pfi)().
- */
-
- ip = fip(3);
- if(*ip != 3){
- if(pd0->flgd != 0) printf(s84er,1);
- rc = rc+1;
- }
-
- pfi = glork;
- if((*pfi)(4) != 4){
- if(pd0->flgd != 0) printf(s84er,2);
- rc = rc+2;
- }
-
- /* Float fa[17] declares an array of floating point
- numbers, and *afp[17] declares an array of pointers
- to floats.
- */
-
- for(j=0; j<17; j++){
- fa[j] = j;
- afp[j] = &fa[j];
- }
-
- sum = 0.;
- for(j=0; j<17; j++) sum += *afp[j];
- if(sum != 136){
- if(pd0->flgd != 0) printf(s84er,4);
- rc = rc+4;
- }
-
- /* static int x3d[3][5][7] declares a static three
- dimensional array of integers, with rank 3x5x7.
- In complete detail, x3d is an array of three items;
- each item is an array of five arrays, and each of
- the latter arrays is an array of seven integers.
- Any of the expressions x3d, x3d[i], x3d[i][j],
- and x3d[i][j][k] may reasonably appear in an express-
- ion. The first three have type "array"; the last has
- type int.
- */
-
- for (i=0; i<3; i++)
- for (j=0; j<5; j++)
- for (k=0; k<7; k++)
- x3d[i][j][k] = i*35+j*7+k;
-
- i = 1; j = 2; k = 3;
-
- if( array(x3d,105,0)
- +array(x3d[i],35,35)
- +array(x3d[i][j],7,49)
- + x3d[i][j][k]-52){
-
- if(pd0->flgd != 0) printf(s84er,8);
- rc = rc+8;
- }
-
- return rc;
-}
-array(a,size,start)
-int a[], size, start;
-{
- int i;
- for(i=0; i<size; i++)
- if(a[i] != i+start) return 1;
-
- return 0;
-}
-int *fip(x)
-int x;
-{
- static int y;
- y = x;
- return &y;
-}
-glork(x)
-int x;
-{return x;}
-s85(pd0) /* 8.5 Structure and union declarations */
-struct defs *pd0;
-{
- static char s85er[] = "s85,er%d\n";
- static char qs85[8] = "s85 ";
- int rc;
- char *ps, *pt;
-
- struct tnode {
- char tword[20];
- int count;
- struct tnode *left;
- struct tnode *right;
- };
-
- struct tnode s1, s2, *sp;
-
- struct{
- char cdummy;
- char c;
- } sc;
-
- struct{
- char cdummy;
- short s;
- } ss;
-
- struct{
- char cdummy;
- int i;
- } si;
-
- struct{
- char cdummy;
- long l;
- } sl;
-
- struct{
- char cdummy;
- unsigned u;
- } su;
-
- struct{
- char cdummy;
- float f;
- } sf;
-
- struct{
- char cdummy;
- double d;
- } sd;
-
- int diff[7], j;
-
- static char *type[] = {
- "char",
- "short",
- "int",
- "long",
- "unsigned",
- "float",
- "double"
- };
-
- static char aln[] = " alignment: ";
-
- struct{
- int twobit:2;
- int :1;
- int threebit:3;
- int onebit:1;
- } s3;
-
- union{
- char u1[30];
- short u2[30];
- int u3[30];
- long u4[30];
- unsigned u5[30];
- float u6[30];
- double u7[30];
- } u0;
-
- ps = qs85;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
- /* Within a structure, the objects declared have
- addresses which increase as their declarations are
- read left to right.
- */
-
- if( (char *)&s1.count - &s1.tword[0] <= 0
- ||(char *)&s1.left - (char *)&s1.count <= 0
- ||(char *)&s1.right - (char *)&s1.left <= 0){
- if(pd0->flgd != 0) printf(s85er,1);
- rc = rc+1;
- }
-
- /* Each non-field member of a structure begins on an
- addressing boundary appropriate to its type.
- */
-
- diff[0] = &sc.c - &sc.cdummy;
- diff[1] = (char *)&ss.s - &ss.cdummy;
- diff[2] = (char *)&si.i - &si.cdummy;
- diff[3] = (char *)&sl.l - &sl.cdummy;
- diff[4] = (char *)&su.u - &su.cdummy;
- diff[5] = (char *)&sf.f - &sf.cdummy;
- diff[6] = (char *)&sd.d - &sd.cdummy;
-
- if(pd0->flgm != 0)
- for(j=0; j<7; j++)
- printf("%s%s%d\n",type[j],aln,diff[j]);
-
- /* Field specifications are highly implementation de-
- pendent. About the only thing we can do here is to
- check is that the compiler accepts the field constructs,
- and that they seem to work, after a fashion, at
- run time...
- */
-
- s3.threebit = 7;
- s3.twobit = s3.threebit;
- s3.threebit = s3.twobit;
-
- if(s3.threebit != 3){
- if(s3.threebit == -1){
- if(pd0->flgm != 0) printf("Sign extension in fields\n");
- }
- else{
- if(pd0->flgd != 0) printf(s85er,2);
- rc = rc+2;
- }
- }
-
- s3.onebit = 1;
- if(s3.onebit != 1){
- if(pd0->flgm != 0)
- printf("Be especially careful with 1-bit fields!\n");
- }
-
- /* A union may be thought of as a structure all of whose
- members begin at offset 0 and whose size is sufficient
- to contain any of its members.
- */
-
- if( (char *)u0.u1 - (char *)&u0 != 0
- ||(char *)u0.u2 - (char *)&u0 != 0
- ||(char *)u0.u3 - (char *)&u0 != 0
- ||(char *)u0.u4 - (char *)&u0 != 0
- ||(char *)u0.u5 - (char *)&u0 != 0
- ||(char *)u0.u6 - (char *)&u0 != 0
- ||(char *)u0.u7 - (char *)&u0 != 0){
-
- if(pd0->flgd != 0) printf(s85er,4);
- rc = rc+4;
- }
-
- if( sizeof u0 < sizeof u0.u1
- ||sizeof u0 < sizeof u0.u2
- ||sizeof u0 < sizeof u0.u3
- ||sizeof u0 < sizeof u0.u4
- ||sizeof u0 < sizeof u0.u5
- ||sizeof u0 < sizeof u0.u6
- ||sizeof u0 < sizeof u0.u7){
-
- if(pd0->flgd != 0) printf(s85er,8);
- rc = rc+8;
- }
-
- /* Finally, we check that the pointers work. */
-
- s1.right = &s2;
- s2.tword[0] = 2;
- s1.right->tword[0] += 1;
- if(s2.tword[0] != 3){
- if(pd0->flgd != 0) printf(s85er,16);
- rc = rc+16;
- }
- return rc;
-}
-s86(pd0) /* 8.6 Initialization */
-struct defs *pd0;
-{
- static char s86er[] = "s86,er%d\n";
- static char qs86[8] = "s86 ";
- int lrc, rc;
- char *ps, *pt;
- int one(), i, j, k;
- static int x[] = {1,3,5};
- static int *pint = x+2;
- static int zero[10];
- int *apint = pint-1;
- register int *rpint = apint+one();
- static float y0[] = {1,3,5,2,4,6,3,5,7,0,0,0};
- static float y1[4][3] = {
- {1,3,5},
- {2,4,6},
- {3,5,7},
- };
- static float y2[4][3] = {1,3,5,2,4,6,3,5,7};
- static float y3[4][3] = {
- {1},{2},{3},{4}
- };
- ps = qs86;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
- /* The expression in an initializer for a static or
- external variable must be a constant expression or
- an expression that reduces to the address of a pre-
- viously declared variable, possibly offset by a
- constant expression.
- */
-
- if(*pint != 5){
- if(pd0->flgd != 0) printf(s86er,1);
- rc = rc+1;
- }
-
- /* Automatic and register variables may be initialized
- by arbitrary expressions involving constants and previously
- declared variables and functions.
- */
-
- if(*apint != 3){
- if(pd0->flgd != 0) printf(s86er,2);
- rc = rc+2;
- }
-
- if(*rpint != 5){
- if(pd0->flgd != 0) printf(s86er,4);
- rc = rc+4;
- }
-
- /* Static variables that are not initialized are guar-
- anteed to start off as zero.
- */
-
- lrc = 0;
- for(j=0; j<10; j++)
- if(zero[j] != 0) lrc = 1;
- if(lrc != 0){
- if(pd0->flgd != 0) printf(s86er,8);
- rc = rc+8;
- }
-
- /* y0, y1, and y2, as declared, should define and
- initialize identical arrays.
- */
- lrc = 0;
- for(i=0; i<4; i++)
- for(j=0; j<3; j++){
- k = 3*i+j;
- if( y1[i][j] != y2[i][j]
- ||y1[i][j] != y0[k]) lrc = 1;
- }
-
- if(lrc != 0){
- if(pd0->flgd != 0) printf(s86er,16);
- rc = rc+16;
- }
-
- /* y3 initializes the first column of the array and
- leaves the rest zero.
- */
-
- lrc = 0;
- for(j=0; j<4; j++) if(y3[j][0] != j+1) lrc = 1;
-
- if(lrc != 0){
- if(pd0->flgd != 0) printf(s86er,32);
- rc = rc+32;
- }
- return rc;
-}
-one(){
- return 1;
-}
-int *metricp;
-s88(pd0) /* 8.8 Typedef */
-struct defs *pd0;
-{
- static char s88er[] = "s88,er%d\n";
- static char qs88[8] = "s88 ";
- int rc;
- char *ps, *pt;
-
- /* Declarations whose "storage class" is typdef do not
- define storage, but instead define identifiers which
- can later be used as if they were type keywords naming
- fundamental or derived types.
- */
-
- typedef int MILES, *KLICKSP;
- typedef struct {double re, im;} complex;
-
- MILES distance;
- extern KLICKSP metricp;
- complex z, *zp;
-
- ps = qs88;
- pt = pd0->rfs;
- rc = 0;
- while(*pt++ = *ps++);
-
- /* Hopefully, all of this stuff will compile. After that,
- we can only make some superficial tests.
-
- The type of distance is int,
- */
-
- if(sizeof distance != sizeof(int)){
- if(pd0->flgd != 0) printf(s88er,1);
- rc = rc+1;
- }
-
- /* that of metricp is "pointer to int", */
-
- metricp = &distance;
- distance = 2;
- *metricp = 3;
-
- if(distance != 3){
- if(pd0->flgd != 0) printf(s88er,2);
- rc = rc+2;
- }
-
- /* and that of z is the specified structure. zp is a
- pointer to such a structure.
- */
-
- z.re = 0.;
- z.im = 0.;
- zp = &z;
- zp->re = 1.;
- zp->im = 1.;
- if(z.re+z.im != 2.){
- if(pd0->flgd != 0) printf(s88er,4);
- rc = rc+4;
- }
-
- return rc;
-}
-s9(pd0) /* 9 Statements */
-struct defs *pd0;
-{
- static char s9er[] = "s9,er%d\n";
- static char qs9[8] = "s9 ";
- int rc;
- char *ps, *pt;
- int lrc, i;
-
- ps = qs9;
- pt = pd0->rfs;
- rc = 0;
- while (*pt++ = *ps++);
-
- /* One would think that the section on statements would
- provide the most variety in the entire sequence of tests.
- As it turns out, most of the material in this section has
- already been checked in the process of checking out
- everything else, and the section at this point is somewhat
- anticlimactic. For this reason, we restrict ourselves
- to testing two features not already covered.
-
- Compound statements are delimited by braces. They have the
- nice property that identifiers of the auto and register
- variety are pushed and popped. It is currently legal to
- transfer into a block, but we wont...
- */
-
- lrc = 0;
- for(i=0; i<2; i++){
- int j;
- register int k;
- j = k = 2;
- {
- int j;
- register int k;
- j = k = 3;
- if((j != 3) || (k != 3)) lrc = 1;
- }
- if((j != 2) || (k != 2)) lrc = 1;
- }
-
- if(lrc != 0){
- if(pd0->flgd != 0) printf(s9er,1);
- rc = rc+1;
- }
-
- /* Goto statements go to labeled statements, we hope. */
-
- goto nobarf;
- if(pd0->flgd != 0) printf(s9er,2);
- rc = rc+2;
- nobarf:;
-
- return rc;
-}
-setev(){ /* Sets an external variable. Used */
- extern int extvar; /* by s4, and should be compiled */
- extvar = 1066; /* separately from s4. */
-}
- int lbits; /* long */
- int ubits; /* unsigned */
- int fbits; /* float */
- int dbits; /* double */
- float fprec; /* Smallest number that can be */
- float dprec; /* significantly added to 1. */
- int flgs; /* Print return codes, by section */
- int flgm; /* Announce machine dependencies */
- int flgd; /* give explicit diagnostics */
- int flgl; /* Report local return codes. */
- int rrc; /* recent return code */
- int crc; /* Cumulative return code */
- char rfs[8]; /* Return from section */
+ struct defs {
+ int cbits; /* No. of bits per char */
+ int ibits; /* int */
+ int sbits; /* short */
+ int lbits; /* long */
+ int ubits; /* unsigned */
+ int fbits; /* float */
+ int dbits; /* double */
+ float fprec; /* Smallest number that can be */
+ float dprec; /* significantly added to 1. */
+ int flgs; /* Print return codes, by section */
+ int flgm; /* Announce machine dependencies */
+ int flgd; /* give explicit diagnostics */
+ int flgl; /* Report local return codes. */
+ int rrc; /* recent return code */
+ int crc; /* Cumulative return code */
+ char rfs[8]; /* Return from section */
+ };
+main(n,args) /* C REFERENCE MANUAL */
+int n;
+char **args;
+{
+
+/* This program performs a series of tests on a C compiler,
+based on information in the
+
+ C REFERENCE MANUAL
+
+which appears as Appendix A to the book "The C Programming
+Language" by Brian W. Kernighan and Dennis M. Ritchie
+(Prentice-Hall, 1978, $10.95). This Appendix is hereafter
+referred to as "the Manual".
+
+ The rules followed in writing this program are:
+
+ 1. The entire program is written in legal C, according
+ to the Manual. It should compile with no error messages,
+ although some warning messages may be produced by some
+ compilers. Failure to compile should be interpreted as
+ a compiler error.
+
+ 2. The program is clean, in that it does not make use
+ of any features of the operating system on which it runs,
+ with the sole exceptions of the printf() function, and an
+ internal "options" routine, which is easily excised.
+
+ 3. No global variables are used, except for the spec-
+ ific purpose of testing the global variable facility.
+
+ The program is divided into modules having names of the
+form snnn... These modules correspond to those sections of the
+Manual, as identified by boldface type headings, in which
+there is something to test. For example, s241() corresponds
+to section 2.4.1 of the Manual (Integer constants) and tests
+the facilities described therein. The module numbering
+scheme is ambiguous, especially when it names modules
+referring to more than one section; module s7813, for ex-
+ample, deals with sections 7.8 through 7.13. Nonetheless,
+it is surprisingly easy to find a section in the Manual
+corresponding to a section of code, and vice versa.
+
+ Note also that there seem to be "holes" in the program,
+at least from the point of view that there exist sections in the
+Manual for which there is no corresponding code. Such holes
+arise from three causes: (a) there is nothing in that partic-
+ular section to test, (b) everything in that section is tested
+elsewhere, and (c) it was deemed advisable not to check cer-
+tain features like preprocessor or listing control features.
+
+ Modules are called by a main program main(). The mod-
+ules that are called, and the sequence in which they are
+called, are determined by two lists in main(), in which the
+module names appear. The first list (an extern statement)
+declares the module names to be external. The second (a stat-
+ic int statement) names the modules and defines the sequence
+in which they are called. There is no need for these lists
+to be in the same order, but it is probably a good idea to keep
+them that way in the interest of clarity. Since there are no
+cross-linkages between modules, new modules may be added,
+or old ones deleted, simply by editing the lists, with one
+exception: section s26, which pokes around at the hardware
+trying to figure out the characteristics of the machine that
+it is running on, saves information that is subsequently
+used by sections s626, s72, and s757. If this program is
+to be broken up into smallish pieces, say for running on
+a microcomputer, take care to see that s26 is called before
+calling any of the latter three sections. The size
+of the lists, i.e., the number of modules to be called, is
+not explicitly specified as a program parameter, but is
+determined dynamically using the sizeof operator.
+
+ Communication between the main program and the modules
+takes place in two ways. In all cases, a pointer to a structure
+is passed to the called module. The structure contains flags
+that will determine the type of information to be published
+by the module, and fields that may be written in by the
+module. The former include "flgm" and "flgd", which, if set
+to a nonzero value, specify that machine dependencies are to
+be announced or that error messages are to be printed, re-
+spectively. The called module's name, and the hardware char-
+acteristics probed in s26() comprise the latter.
+
+
+ Also, in all cases, a return code is returned by the called
+module. A return code of zero indicates that all has gone well;
+nonzero indicates otherwise. Since more than one type of error
+may be detected by a module, the return code is a composite
+of error indicators, which, individually, are given as numbers
+that are powers of two. Thus, a return code of 10 indicates
+that two specific errors, 8 and 2, were detected. Whether or
+not the codes returned by the modules are printed by the main
+program is determined by setting "flgs" to 1 (resp. 0).
+
+ The entire logic of the main program is contained in the
+half-dozen or so lines at the end. The somewhat cryptic
+statement:
+
+ d0.rrc = (*sec[j])(pd0);
+
+in the for loop calls the modules. The rest of the code is
+reasonably straightforward.
+
+ Finally, in each of the modules, there is the following
+prologue:
+
+ snnn(pd0)
+ struct defs *pd0;
+ {
+ static char snnner[] = "snnn,er%d\n";
+ static char qsnnn[8] = "snnn ";
+ char *ps, *pt;
+ int rc;
+
+ rc = 0;
+ ps = qsnnn;
+ pt = pd0->rfs;
+ while(*pt++ = *ps++);
+
+used for housekeeping, handshaking and module initialization.
+
+ */
+ extern
+ s22(),
+ s241(),
+ s243(),
+ s244(),
+ s25(),
+ s26(),
+ s4(),
+ s61(),
+ s626(),
+ s71(),
+ s72(),
+ s757(),
+ s7813(),
+ s714(),
+ s715(),
+ s81(),
+ s84(),
+ s85(),
+ s86(),
+ s88(),
+ s9()
+ ;
+
+ int j;
+ static int (*sec[])() = {
+ s22,
+ s241,
+ s243,
+ s244,
+ s25,
+ s26,
+ s4,
+ s61,
+ s626,
+ s71,
+ s72,
+ s757,
+ s7813,
+ s714,
+ s715,
+ s81,
+ s84,
+ s85,
+ s86,
+ s88,
+ s9
+ };
+
+ static struct defs d0, *pd0;
+
+ d0.flgs = 1; /* These flags dictate */
+ d0.flgm = 1; /* the verbosity of */
+ d0.flgd = 1; /* the program. */
+ d0.flgl = 1;
+
+ pd0 = &d0;
+
+ for (j=0; j<sizeof(sec) / sizeof(sec[0]); j++) {
+ d0.rrc = (*sec[j])(pd0);
+ d0.crc = d0.crc+d0.rrc;
+ if(d0.flgs != 0) printf("Section %s returned %d.\n",d0.rfs,d0.rrc);
+ }
+
+ if(d0.crc == 0) printf("\nNo errors detected.\n");
+ else printf("\nFailed.\n");
+ return 0;
+}
+s22(pd0) /* 2.2 Identifiers (Names) */
+struct defs *pd0;
+{
+ int a234, a;
+ int _, _234, A, rc;
+
+ static char s22er[] = "s22,er%d\n";
+ static char qs22[8] = "s22 ";
+
+ char *ps, *pt;
+ /* Initialize */
+
+ rc = 0;
+ ps = qs22;
+ pt = pd0 -> rfs;
+ while (*pt++ = *ps++);
+
+ /* An identifier is a sequence of letters and digits;
+ the first character must be a letter. The under-
+ score _ counts as a letter. */
+
+ a=1;
+ _=2;
+ _234=3;
+ a234=4;
+ if(a+_+_234+a234 != 10) {
+ rc = rc+1;
+ if(pd0->flgd != 0) printf(s22er,1);
+ }
+
+ /* Upper and lower case letters are different. */
+
+ A = 2;
+ if (A == a) {
+ rc = rc+4;
+ if (pd0->flgd != 0) printf(s22er,4);
+ }
+
+ return(rc);
+}
+s241(pd0) /* 2.4.1 Integer constants
+ 2.4.2 Explicit long constants */
+struct defs *pd0;
+{
+ long pow2();
+ static char s241er[] = "s241,er%d\n";
+ static char qs241[8] = "s241 ";
+ char *ps, *pt;
+ int rc, j, lrc;
+ static long g[39] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,6,0,8,0,12,0,16,0,18,0,20,0,24,
+ 0,28,0,30,0,32,0,36};
+ long d[39], o[39], x[39];
+
+ rc = 0;
+ lrc = 0;
+ ps = qs241;
+ pt = pd0 -> rfs;
+ while (*pt++ = *ps++);
+
+ /* An integer constant consisting of a sequence of digits is
+ taken to be octal if it begins with 0 (digit zero), decimal
+ otherwise. */
+
+ if ( 8 != 010
+ || 16 != 020
+ || 24 != 030
+ || 32 != 040
+ || 40 != 050
+ || 48 != 060
+ || 56 != 070
+ || 64 != 0100
+ || 72 != 0110
+ || 80 != 0120
+ || 9 != 0011
+ || 17 != 0021
+ || 25 != 0031
+ || 33 != 0041
+ || 41 != 0051
+ || 49 != 0061
+ || 57 != 0071
+ || 65 != 0101
+ || 73 != 0111
+ || 81 != 0121 ){
+
+ rc = rc+1;
+ if( pd0->flgd != 0 ) printf(s241er,1);
+ }
+
+ /* A sequence of digits preceded by 0x or 0X (digit zero)
+ is taken to be a hexadecimal integer. The hexadecimal
+ digits include a or A through f or F with values 10
+ through 15. */
+
+ if ( 0x00abcdef != 0xabcdef
+ || 0xabcdef != 0Xabcdef || 0Xabcdef != 0XAbcdef
+ || 0XAbcdef != 0XABcdef || 0XABcdef != 0XABCdef
+ || 0XABCdef != 0XABCDef || 0XABCDef != 0XABCDEf
+ || 0XABCDEf != 0XABCDEF || 0xABCDEF != 11259375 ){
+
+ rc = rc+2;
+ if( pd0->flgd != 0 ) printf(s241er,2);
+ }
+
+ /* A decimal constant whose value exceeds the largest signed
+ machine integer is taken to be long; an octal or hex con-
+ stant which exceeds the largest unsigned machine integer
+ is likewise taken to be long. */
+
+ if ( sizeof 010000000000 != sizeof(long) /* 2**30 */
+ || sizeof 1073741824 != sizeof(long) /* ditto */
+ || sizeof 0x40000000 != sizeof(long) ){ /* " */
+
+ rc = rc+4;
+ if( pd0->flgd != 0 ) printf(s241er,4);
+ }
+
+ /* A decimal, octal, or hexadecimal constant immediately followed
+ by l (letter ell) or L is a long constant. */
+
+ if ( sizeof 67l != sizeof(long)
+ || sizeof 67L != sizeof(long)
+ || sizeof 067l != sizeof(long)
+ || sizeof 067L != sizeof(long)
+ || sizeof 0X67l != sizeof(long)
+ || sizeof 0x67L != sizeof(long) ){
+
+ rc = rc+8;
+ if( pd0 -> flgd != 0 ) printf(s241er,8);
+ }
+
+ /* Finally, we test to see that decimal (d), octal (o),
+ and hexadecimal (x) constants representing the same values
+ agree among themselves, and with computed values, at spec-
+ ified points over an appropriate range. The points select-
+ ed here are those with the greatest potential for caus-
+ ing trouble, i.e., zero, 1-16, and values of 2**n and
+ 2**n - 1 where n is some multiple of 4 or 6. Unfortunately,
+ just what happens when a value is too big to fit in a
+ long is undefined; however, it would be nice if what
+ happened were at least consistent... */
+
+ for ( j=0; j<17; j++ ) g[j] = j;
+ for ( j=18; j<39; ) {
+ g[j] = pow2(g[j]);
+ g[j-1] = g[j] - 1;
+ j = j+2;
+ }
+
+ d[0] = 0; o[0] = 00; x[0] = 0x0;
+ d[1] = 1; o[1] = 01; x[1] = 0x1;
+ d[2] = 2; o[2] = 02; x[2] = 0x2;
+ d[3] = 3; o[3] = 03; x[3] = 0x3;
+ d[4] = 4; o[4] = 04; x[4] = 0x4;
+ d[5] = 5; o[5] = 05; x[5] = 0x5;
+ d[6] = 6; o[6] = 06; x[6] = 0x6;
+ d[7] = 7; o[7] = 07; x[7] = 0x7;
+ d[8] = 8; o[8] = 010; x[8] = 0x8;
+ d[9] = 9; o[9] = 011; x[9] = 0x9;
+ d[10] = 10; o[10] = 012; x[10] = 0xa;
+ d[11] = 11; o[11] = 013; x[11] = 0xb;
+ d[12] = 12; o[12] = 014; x[12] = 0xc;
+ d[13] = 13; o[13] = 015; x[13] = 0xd;
+ d[14] = 14; o[14] = 016; x[14] = 0xe;
+ d[15] = 15; o[15] = 017; x[15] = 0xf;
+ d[16] = 16; o[16] = 020; x[16] = 0x10;
+ d[17] = 63; o[17] = 077; x[17] = 0x3f;
+ d[18] = 64; o[18] = 0100; x[18] = 0x40;
+ d[19] = 255; o[19] = 0377; x[19] = 0xff;
+ d[20] = 256; o[20] = 0400; x[20] = 0x100;
+ d[21] = 4095; o[21] = 07777; x[21] = 0xfff;
+ d[22] = 4096; o[22] = 010000; x[22] = 0x1000;
+ d[23] = 65535; o[23] = 0177777; x[23] = 0xffff;
+ d[24] = 65536; o[24] = 0200000; x[24] = 0x10000;
+ d[25] = 262143; o[25] = 0777777; x[25] = 0x3ffff;
+ d[26] = 262144; o[26] = 01000000; x[26] = 0x40000;
+ d[27] = 1048575; o[27] = 03777777; x[27] = 0xfffff;
+ d[28] = 1048576; o[28] = 04000000; x[28] = 0x100000;
+ d[29] = 16777215; o[29] = 077777777; x[29] = 0xffffff;
+ d[30] = 16777216; o[30] = 0100000000; x[30] = 0x1000000;
+ d[31] = 268435455; o[31] = 01777777777; x[31] = 0xfffffff;
+ d[32] = 268435456; o[32] = 02000000000; x[32] = 0x10000000;
+ d[33] = 1073741823; o[33] = 07777777777; x[33] = 0x3fffffff;
+ d[34] = 1073741824; o[34] = 010000000000; x[34] = 0x40000000;
+ d[35] = 4294967295; o[35] = 037777777777; x[35] = 0xffffffff;
+ d[36] = 4294967296; o[36] = 040000000000; x[36] = 0x100000000;
+ d[37] = 68719476735; o[37] = 0777777777777; x[37] = 0xfffffffff;
+ d[38] = 68719476736; o[38] = 01000000000000; x[38] = 0x1000000000;
+
+ /* WHEW! */
+
+ for (j=0; j<39; j++){
+ if ( g[j] != d[j]
+ || d[j] != o[j]
+ || o[j] != x[j]) {
+
+ if( pd0 -> flgm != 0 ) {
+/* printf(s241er,16); save in case opinions change... */
+ printf("Decimal and octal/hex constants sometimes give\n");
+ printf(" different results when assigned to longs.\n");
+ }
+/* lrc = 1; save... */
+ }
+ }
+
+ if (lrc != 0) rc =16;
+
+ return rc;
+}
+
+long pow2(n) /* Calculate 2**n by multiplying, not shifting */
+long n;
+{
+ long s;
+ s = 1;
+ while(n--) s = s*2;
+ return s;
+}
+s243(pd0) /* 2.4.3 Character constants */
+struct defs *pd0;
+{
+ static char s243er[] = "s243,er%d\n";
+ static char qs243[8] = "s243 ";
+ char *ps, *pt;
+ int rc;
+ char chars[256];
+
+ rc = 0;
+ ps = qs243;
+ pt = pd0->rfs;
+ while(*pt++ = *ps++);
+
+ /* One of the problems that arises when testing character constants
+ is that of definition: What, exactly, is the character set?
+ In order to guarantee a certain amount of machine independence,
+ the character set we will use here is the set of characters writ-
+ able as escape sequences in C, plus those characters used in writ-
+ ing C programs, i.e.,
+
+ letters:
+ ABCDEFGHIJKLMNOPQRSTUVWXYZ 26
+ abcdefghijklmnopqrstuvwxyz 26
+ numbers:
+ 0123456789 10
+ special characters:
+ ~!"#%&()_=-^|{}[]+;*:<>,.?/ 27
+ extra special characters:
+ newline \n
+ horizontal tab \t
+ backspace \b
+ carriage return \r
+ form feed \f
+ backslash \\
+ single quote \' 7
+ blank & NUL 2
+ ---
+ 98
+
+ Any specific implementation of C may of course support additional
+ characters. */
+
+ /* Since the value of a character constant is the numerical value
+ of the character in the machine's character set, there should
+ be a one-to-one correspondence between characters and values. */
+
+ zerofill(chars);
+
+ chars['a'] = 1; chars['A'] = 1; chars['~'] = 1; chars['0'] = 1;
+ chars['b'] = 1; chars['B'] = 1; chars['!'] = 1; chars['1'] = 1;
+ chars['c'] = 1; chars['C'] = 1; chars['"'] = 1; chars['2'] = 1;
+ chars['d'] = 1; chars['D'] = 1; chars['#'] = 1; chars['3'] = 1;
+ chars['e'] = 1; chars['E'] = 1; chars['%'] = 1; chars['4'] = 1;
+ chars['f'] = 1; chars['F'] = 1; chars['&'] = 1; chars['5'] = 1;
+ chars['g'] = 1; chars['G'] = 1; chars['('] = 1; chars['6'] = 1;
+ chars['h'] = 1; chars['H'] = 1; chars[')'] = 1; chars['7'] = 1;
+ chars['i'] = 1; chars['I'] = 1; chars['_'] = 1; chars['8'] = 1;
+ chars['j'] = 1; chars['J'] = 1; chars['='] = 1; chars['9'] = 1;
+ chars['k'] = 1; chars['K'] = 1; chars['-'] = 1;
+ chars['l'] = 1; chars['L'] = 1; chars['^'] = 1;
+ chars['m'] = 1; chars['M'] = 1; chars['|'] = 1; chars['\n'] = 1;
+ chars['n'] = 1; chars['N'] = 1; chars['\t'] = 1;
+ chars['o'] = 1; chars['O'] = 1; chars['{'] = 1; chars['\b'] = 1;
+ chars['p'] = 1; chars['P'] = 1; chars['}'] = 1; chars['\r'] = 1;
+ chars['q'] = 1; chars['Q'] = 1; chars['['] = 1; chars['\f'] = 1;
+ chars['r'] = 1; chars['R'] = 1; chars[']'] = 1;
+ chars['s'] = 1; chars['S'] = 1; chars['+'] = 1; chars['\\'] = 1;
+ chars['t'] = 1; chars['T'] = 1; chars[';'] = 1; chars['\''] = 1;
+ chars['u'] = 1; chars['U'] = 1; chars['*'] = 1;
+ chars['v'] = 1; chars['V'] = 1; chars[':'] = 1; chars['\0'] = 1;
+ chars['w'] = 1; chars['W'] = 1; chars['<'] = 1; chars[' '] = 1;
+ chars['x'] = 1; chars['X'] = 1; chars['>'] = 1;
+ chars['y'] = 1; chars['Y'] = 1; chars[','] = 1;
+ chars['z'] = 1; chars['Z'] = 1; chars['.'] = 1;
+ chars['?'] = 1;
+ chars['/'] = 1;
+
+ if(sumof(chars) != 98){
+ rc = rc+1;
+ if(pd0->flgd != 0) printf(s243er,1);
+ }
+
+ /* Finally, the escape \ddd consists of the backslash followed
+ by 1, 2, or 3 octal digits which are taken to specify the
+ desired character. */
+
+ if( '\0' != 0 || '\01' != 1 || '\02' != 2
+ || '\03' != 3 || '\04' != 4 || '\05' != 5
+ || '\06' != 6 || '\07' != 7 || '\10' != 8
+ || '\17' != 15 || '\20' != 16 || '\77' != 63
+ || '\100' != 64 || '\177' != 127 ){
+
+ rc = rc+8;
+ if(pd0->flgd != 0) printf(s243er,8);
+ }
+
+ return rc;
+}
+zerofill(x)
+char *x;
+{
+ int j;
+
+ for (j=0; j<256; j++) *x++ = 0;
+}
+sumof(x)
+char *x;
+{
+ char *p;
+ int total, j;
+
+ p = x;
+ total = 0;
+
+ for(j=0; j<256; j++) total = total+ *p++;
+ return total;
+}
+s244(pd0)
+struct defs *pd0;
+{
+ double a[8];
+ int rc, lrc, j;
+ static char s244er[] = "s244,er%d\n";
+ static char qs244[8] = "s244 ";
+ char *ps, *pt;
+
+ ps = qs244;
+ pt = pd0->rfs;
+ while(*pt++ = *ps++);
+ rc = 0;
+ lrc = 0;
+
+ /* Unfortunately, there's not a lot we can do with floating constants.
+ We can check to see that the various representations can be com-
+ piled, that the conversion is such that they yield the same hard-
+ ware representations in all cases, and that all representations
+ thus checked are double precision. */
+
+ a[0] = .1250E+04;
+ a[1] = 1.250E3;
+ a[2] = 12.50E02;
+ a[3] = 125.0e+1;
+ a[4] = 1250e00;
+ a[5] = 12500.e-01;
+ a[6] = 125000e-2;
+ a[7] = 1250.;
+
+ lrc = 0;
+ for (j=0; j<7; j++) if(a[j] != a[j+1]) lrc = 1;
+
+ if(lrc != 0) {
+ if(pd0->flgd != 0) printf(s244er,1);
+ rc = rc+1;
+ }
+
+ if ( (sizeof .1250E+04 ) != sizeof(double)
+ || (sizeof 1.250E3 ) != sizeof(double)
+ || (sizeof 12.50E02 ) != sizeof(double)
+ || (sizeof 1.250e+1 ) != sizeof(double)
+ || (sizeof 1250e00 ) != sizeof(double)
+ || (sizeof 12500.e-01) != sizeof(double)
+ || (sizeof 125000e-2 ) != sizeof(double)
+ || (sizeof 1250. ) != sizeof(double)){
+
+ if(pd0->flgd != 0) printf(s244er,2);
+ rc = rc+2;
+ }
+
+ return rc;
+}
+s25(pd0)
+struct defs *pd0;
+{
+ char *s, *s2;
+ int rc, lrc, j;
+ static char s25er[] = "s25,er%d\n";
+ static char qs25[8] = "s25 ";
+ char *ps, *pt;
+
+ ps = qs25;
+ pt = pd0->rfs;
+ while(*pt++ = *ps++);
+ rc = 0;
+
+ /* A string is a sequence of characters surrounded by double
+ quotes, as in "...". */
+
+ s = "...";
+
+ /* A string has type "array of characters" and storage class
+ static and is initialized with the given characters. */
+
+ if ( s[0] != s[1] || s[1] != s[2]
+ || s[2] != '.' ) {
+
+ rc = rc+1;
+ if(pd0->flgd != 0) printf(s25er,1);
+ }
+
+ /* The compiler places a null byte \0 at the end of each string
+ so the program which scans the string can find its end. */
+
+ if( s[3] != '\0' ){
+ rc = rc+4;
+ if(pd0->flgd != 0) printf(s25er,4);
+ }
+
+ /* In a string, the double quote character " must be preceded
+ by a \. */
+
+ if( ".\"."[1] != '"' ){
+ rc = rc+8;
+ if(pd0->flgd != 0) printf(s25er,8);
+ }
+
+ /* In addition, the same escapes described for character constants
+ may be used. */
+
+ s = "\n\t\b\r\f\\\'";
+
+ if( s[0] != '\n'
+ || s[1] != '\t'
+ || s[2] != '\b'
+ || s[3] != '\r'
+ || s[4] != '\f'
+ || s[5] != '\\'
+ || s[6] != '\'' ){
+
+ rc = rc+16;
+ if( pd0->flgd != 0) printf(s25er,16);
+ }
+
+ /* Finally, a \ and an immediately following newline are ignored */
+
+ s2 = "queep!";
+ s = "queep!";
+
+ lrc = 0;
+ for (j=0; j<sizeof "queep!"; j++) if(s[j] != s2[j]) lrc = 1;
+ if (lrc != 0){
+ rc = rc+32;
+ if(pd0->flgd != 0) printf(s25er,32);
+ }
+ return rc;
+}
+s26(pd0) /* 2.6 Hardware Characteristics */
+struct defs *pd0;
+{
+ static char qs26[8] = "s26 ";
+ char *ps, *pt;
+ char c0, c1;
+ float temp, one, delta;
+ double tempd, oned;
+ static char s[] = "%3d bits in %ss.\n";
+ static char s2[] = "%e is the least number that can be added to 1. (%s).\n";
+
+ ps = qs26;
+ pt = pd0->rfs;
+
+ while(*pt++ = *ps++);
+
+ /* Here, we shake the machinery a little to see what falls
+ out. First, we find out how many bits are in a char. */
+
+ pd0->cbits = 0;
+ c0 = 0;
+ c1 = 1;
+
+ while(c0 != c1) {
+ c1 = c1<<1;
+ pd0->cbits = pd0->cbits+1;
+ }
+ /* That information lets us determine the size of everything else. */
+
+ pd0->ibits = pd0->cbits * sizeof(int);
+ pd0->sbits = pd0->cbits * sizeof(short);
+ pd0->lbits = pd0->cbits * sizeof(long);
+ pd0->ubits = pd0->cbits * sizeof(unsigned);
+ pd0->fbits = pd0->cbits * sizeof(float);
+ pd0->dbits = pd0->cbits * sizeof(double);
+
+ /* We have now almost reconstructed the table in section 2.6, the
+ exception being the range of the floating point hardware.
+ Now there are just so many ways to conjure up a floating point
+ representation system that it's damned near impossible to guess
+ what's going on by writing a program to interpret bit patterns.
+ Further, the information isn't all that useful, if we consider
+ the fact that machines that won't handle numbers between 10**30
+ and 10**-30 are very hard to find, and that people playing with
+ numbers outside that range have a lot more to worry about than
+ just the capacity of the characteristic.
+
+ A much more useful measure is the precision, which can be ex-
+ pressed in terms of the smallest number that can be added to
+ 1. without loss of significance. We calculate that here, for
+ float and double. */
+
+ one = 1.;
+ delta = 1.;
+ temp = 0.;
+ while(temp != one) {
+ temp = one+delta;
+ delta = delta/2.;
+ }
+ pd0->fprec = delta * 4.;
+ oned = 1.;
+ delta = 1.;
+ tempd = 0.;
+ while(tempd != oned) {
+ tempd = oned+delta;
+ delta = delta/2.;
+ }
+ pd0->dprec = delta * 4.;
+
+ /* Now, if anyone's interested, we publish the results. */
+
+ if(pd0->flgm != 0) {
+ printf(s,pd0->cbits,"char");
+ printf(s,pd0->ibits,"int");
+ printf(s,pd0->sbits,"short");
+ printf(s,pd0->lbits,"long");
+ printf(s,pd0->ubits,"unsigned");
+ printf(s,pd0->fbits,"float");
+ printf(s,pd0->dbits,"double");
+ printf(s2,pd0->fprec,"float");
+ printf(s2,pd0->dprec,"double");
+ }
+ /* Since we are only exploring and perhaps reporting, but not
+ testing any features, we cannot return an error code. */
+
+ return 0;
+}
+int extvar;
+s4(pd0) /* 4. What's in a name? */
+struct defs *pd0;
+{
+ static char s4er[] = "s4,er%d\n";
+ static char qs4[8] = "s4 ";
+ char *ps, *pt;
+ int j, rc;
+
+ short sint; /* short integer, for size test */
+ int pint; /* plain */
+ long lint; /* long */
+ unsigned target;
+ unsigned int mask;
+
+ rc = 0;
+ ps = qs4;
+ pt = pd0->rfs;
+
+ while(*pt++ = *ps++);
+
+/* There are four declarable storage classes: automatic,
+static, external, and register. Automatic variables have
+been dealt with extensively thus far, and will not be specif-
+ically treated in this section. Register variables are treated
+in section s81.
+
+ Static variables are local to a block, but retain their
+values upon reentry to a block, even after control has left
+the block. */
+
+ for (j=0; j<3; j++)
+ if(svtest(j) != zero()){
+ rc = 1;
+ if(pd0->flgd != 0) printf(s4er,1);
+ }
+ ;
+
+/* External variables exist and retain their values throughout
+the execution of the entire program, and may be used for comm-
+unication between functions, even separately compiled functions.
+ */
+
+ setev();
+ if(testev() != 0){
+ rc=rc+2;
+ if(pd0->flgd != 0) printf(s4er,2);
+ }
+/*
+ Characters have been tested elsewhere (in s243).
+
+ Up to three sizes of integer, declared short int, int, and
+long int, are available. Longer integers provide no less storage
+than shorter ones, but implementation may make either short
+integers, or long integers, or both, equivalent to plain
+integers.
+ */
+
+ if(sizeof lint < sizeof pint || sizeof pint < sizeof sint){
+
+ rc = rc+4;
+ if(pd0->flgd != 0) printf(s4er,4);
+ }
+
+/* Unsigned integers, declared unsigned, obey the laws of
+arithmetic modulo 2**n, where n is the number of bits in the
+implementation */
+
+ target = ~0U;
+ mask = 1;
+
+ for(j=0; j<(sizeof target)*pd0->cbits; j++){
+
+ mask = mask&target;
+ target = target>>1;
+ }
+
+ if(mask != 1 || target != 0){
+
+ rc = rc+8;
+ if(pd0->flgd != 0) printf(s4er,8);
+ }
+
+ return rc;
+}
+svtest(n)
+int n;
+{
+ static k;
+ int rc;
+ switch (n) {
+
+ case 0: k = 1978;
+ rc = 0;
+ break;
+
+ case 1: if(k != 1978) rc = 1;
+ else{
+ k = 1929;
+ rc = 0;
+ }
+ break;
+
+ case 2: if(k != 1929) rc = 1;
+ else rc = 0;
+ break;
+ }
+ return rc;
+}
+zero(){ /* Returns a value of zero, possibly */
+ static k; /* with side effects, as it's called */
+ int rc; /* alternately with svtest, above, */
+ k = 2; /* and has the same internal storage */
+ rc = 0; /* requirements. */
+ return rc;
+}
+testev(){
+ if(extvar != 1066) return 1;
+ else return 0;
+}
+s61(pd0) /* Characters and integers */
+struct defs *pd0;
+{
+ static char s61er[] = "s61,er%d\n";
+ static char qs61[8] = "s61 ";
+ short from, shortint;
+ long int to, longint;
+ int rc, lrc;
+ int j;
+ char fromc, charint;
+ char *wd, *pc[6];
+
+ static char upper_alpha[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
+ static char lower_alpha[] = "abcdefghijklmnopqrstuvwxyz";
+ static char numbers[] = "0123456789";
+ static char special_characters[] = "~!\"#%&()_=-^|{}[]+;*:<>,.?/";
+ static char extra_special_characters[] = "\n\t\b\r\f\\\'";
+ static char blank_and_NUL[] = " \0";
+
+ char *ps, *pt;
+ ps = qs61;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+/* A character or a short integer may be used wherever
+an integer may be used. In all cases, the value is converted
+to integer. This principle is extensively used throughout this
+program, and will not be explicitly tested here. */
+
+/* Conversion of a shorter integer to a longer always
+involves sign extension. */
+
+ from = -19;
+ to = from;
+
+ if(to != -19){
+ rc = rc+1;
+ if(pd0->flgd != 0) printf(s61er,1);
+ }
+
+/* It is guaranteed that a member of the standard char-
+acter set is nonnegative. */
+
+ pc[0] = upper_alpha;
+ pc[1] = lower_alpha;
+ pc[2] = numbers;
+ pc[3] = special_characters;
+ pc[4] = extra_special_characters;
+ pc[5] = blank_and_NUL;
+
+ lrc = 0;
+ for (j=0; j<6; j++)
+ while(*pc[j]) if(*pc[j]++ < 0) lrc =1;
+
+ if(lrc != 0){
+ rc=rc+2;
+ if(pd0->flgd != 0) printf(s61er,2);
+ }
+
+/* When a longer integer is converted to a shorter or
+to a char, it is truncated on the left; excess bits are
+simply discarded. */
+
+ longint = 1048579; /* =2**20+3 */
+ shortint = longint;
+ charint = longint;
+
+ if((shortint != longint && shortint != 3) ||
+ (charint != longint && charint != 3)) {
+ rc = rc+8;
+ if(pd0->flgd != 0) printf(s61er,8);
+ }
+
+ return rc;
+}
+s626(pd0) /* 6.2 Float and double */
+ /* 6.3 Floating and integral */
+ /* 6.4 Pointers and integers */
+ /* 6.5 Unsigned */
+ /* 6.6 Arithmetic conversions */
+struct defs *pd0;
+{
+ static char s626er[] = "s626,er%d\n";
+ static char qs626[8] = "s626 ";
+ int rc;
+ char *ps, *pt;
+ float eps, f1, f2, f3, f4, f;
+ long lint1, lint2, l, ls;
+ char c, t[28], t0;
+ short s;
+ int is, i, j;
+ unsigned u, us;
+ double d, ds;
+ ps = qs626;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+ /* Conversions of integral values to floating type are
+ well-behaved. */
+
+ f1 = 1.;
+ lint1 = 1.;
+ lint2 = 1.;
+
+ for(j=0;j<pd0->lbits-2;j++){
+ f1 = f1*2;
+ lint2 = (lint2<<1)|lint1;
+ }
+ f2 = lint2;
+ f1 = (f1-f2)/f1;
+ if(f1>2.*pd0->fprec){
+
+ rc = rc+2;
+ if(pd0->flgd != 0) printf(s626er,2);
+ }
+
+ /* Pointer-integer combinations are discussed in s74,
+ "Additive operators". The unsigned-int combination
+ appears below. */
+
+ c = 125;
+ s = 125;
+ i = 125; is = 15625;
+ u = 125; us = 15625;
+ l = 125; ls = 15625;
+ f = 125.;
+ d = 125.; ds = 15625.;
+
+ for(j=0;j<28;j++) t[j] = 0;
+
+ if(c*c != is) t[ 0] = 1;
+ if(s*c != is) t[ 1] = 1;
+ if(s*s != is) t[ 2] = 1;
+ if(i*c != is) t[ 3] = 1;
+ if(i*s != is) t[ 4] = 1;
+ if(i*i != is) t[ 5] = 1;
+ if(u*c != us) t[ 6] = 1;
+ if(u*s != us) t[ 7] = 1;
+ if(u*i != us) t[ 8] = 1;
+ if(u*u != us) t[ 9] = 1;
+ if(l*c != ls) t[10] = 1;
+ if(l*s != ls) t[11] = 1;
+ if(l*i != ls) t[12] = 1;
+ if(l*u != us) t[13] = 1;
+ if(l*l != ls) t[14] = 1;
+ if(f*c != ds) t[15] = 1;
+ if(f*s != ds) t[16] = 1;
+ if(f*i != ds) t[17] = 1;
+ if(f*u != ds) t[18] = 1;
+ if(f*l != ds) t[19] = 1;
+ if(f*f != ds) t[20] = 1;
+ if(d*c != ds) t[21] = 1;
+ if(d*s != ds) t[22] = 1;
+ if(d*i != ds) t[23] = 1;
+ if(d*u != ds) t[24] = 1;
+ if(d*l != ds) t[25] = 1;
+ if(d*f != ds) t[26] = 1;
+ if(d*d != ds) t[27] = 1;
+
+ t0 = 0;
+ for(j=0; j<28; j++) t0 = t0+t[j];
+
+ if(t0 != 0){
+
+ rc = rc+4;
+ if(pd0->flgd != 0){
+
+ printf(s626er,4);
+ printf(" key=");
+ for(j=0;j<28;j++) printf("%d",t[j]);
+ printf("\n");
+ }
+ }
+
+ /* When an unsigned integer is converted to long,
+ the value of the result is the same numerically
+ as that of the unsigned integer. */
+
+ l = (unsigned)0100000;
+ if((long)l > (unsigned)0100000){
+
+ rc = rc+8;
+ if(pd0->flgd != 0) printf(s626er,8);
+ }
+
+ return rc;
+}
+s71(pd0) /* 7.1 Primary expressions */
+struct defs *pd0;
+{
+ static char s71er[] = "s71,er%d\n";
+ static char qs71[8] = "s71 ";
+ int rc;
+ char *ps, *pt;
+ static char q = 'q';
+ int x[10], McCarthy(), clobber(), a, b, *p;
+ ps = qs71;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+/* Testing of expressions and operators is quite complicated,
+ because (a) problems are apt to surface in queer combinations
+ of operators and operands, rather than in isolation,
+ and (b) the number of expressions needed to provoke a case
+ of improper behaviour may be quite large. Hence, we take the
+ following approach: for this section, and for subsequent
+ sections through 7.15, we will check the primitive operations
+ in isolation, thus verifying that the primitives work,
+ after a fashion. The job of testing combinations, we will
+ leave to a separate, machine-generated program, to be included
+ in the C test package at some later date.
+ */
+
+/* A string is a primary expression. The identifier points to
+ the first character of a string.
+ */
+
+ if(*"queep" != q){
+ rc = rc+1;
+ if(pd0->flgd != 0) printf(s71er,1);
+ }
+/* A parenthesized expression is a primary expression whose
+ type and value are the same as those of the unadorned
+ expression.
+ */
+ if((2+3) != 2+3) {
+ rc = rc+2;
+ if(pd0->flgd != 0) printf(s71er,2);
+ }
+
+/* A primary expression followed by an expression in square
+ brackets is a primary expression. The intuitive meaning is
+ that of a subscript. The expression E1[E2] is identical
+ (by definition) to *((E1)+(E2)).
+ */
+
+ x[5] = 1942;
+ if(x[5] != 1942 || x[5] != *((x)+(5))){
+ rc = rc+4;
+ if(pd0->flgd != 0) printf(s71er,4);
+ }
+
+/* If the various flavors of function calls didn't work, we
+ would never have gotten this far; however, we do need to
+ show that functions can be recursive...
+ */
+
+ if ( McCarthy(-5) != 91){
+ rc = rc+8;
+ if(pd0->flgd != 0) printf(s71er,8);
+ }
+
+/* and that argument passing is strictly by value. */
+
+ a = 2;
+ b = 3;
+ p = &b;
+
+ clobber(a,p);
+
+ if(a != 2 || b != 2){
+ rc = rc+16;
+ if(pd0->flgd != 0) printf(s71er,16);
+ }
+
+/* Finally, structures and unions are addressed thusly: */
+
+ if(pd0->dprec != (*pd0).dprec){
+ rc = rc+32;
+ if(pd0->flgd != 0) printf(s71er,32);
+ }
+
+ return rc;
+}
+McCarthy(x)
+int x;
+{
+ if(x>100) return x-10;
+ else return McCarthy( McCarthy(x+11));
+}
+clobber(x,y)
+int x, *y;
+{
+ x = 3;
+ *y = 2;
+}
+s714(pd0) /* 7.14 Assignment operators */
+struct defs *pd0;
+{
+ static char f[] = "Local error %d.\n";
+ static char s714er[] = "s714,er%d\n";
+ static char qs714[8] = "s714 ";
+ register int prlc, lrc;
+ int rc;
+ char cl, cr;
+ short sl, sr;
+ int il, ir;
+ long ll, lr;
+ unsigned ul, ur;
+ float fl, fr;
+ double dl, dr;
+ char *ps, *pt;
+ ps = qs714;
+ pt = pd0->rfs;
+ rc = 0;
+ lrc = 0;
+ prlc = pd0->flgl;
+ while (*pt++ = *ps++);
+
+ /* This section tests the assignment operators.
+
+ It is an exhaustive test of all assignment statements
+ of the form:
+
+ vl op vr
+
+ where vl and vr are variables from the set
+ {char,short,int,long,unsigned,float,double} and op is
+ one of the assignment operators. There are 395 such
+ statements.
+
+ The initial values for the variables have been chosen
+ so that both the initial values and the results will
+ "fit" in just about any implementation, and that the re-
+ sults will be such that they test for the proper form-
+ ation of composite operators, rather than checking for
+ the valid operation of those operators' components.
+ For example, in checking >>=, we want to verify that
+ a right shift and a move take place, rather than
+ whether or not there may be some peculiarities about
+ the right shift. Such tests have been made previously,
+ and to repeat them here would be to throw out a red
+ herring.
+
+ The table below lists the operators, assignment targets,
+ initial values for left and right operands, and the
+ expected values of the results.
+
+
+ = += -= *= /= %= >>= <<= &= ^= |=
+char 2 7 3 10 2 1 1 20 8 6 14
+short 2 7 3 10 2 1 1 20 8 6 14
+int 2 7 3 10 2 1 1 20 8 6 14
+long 2 7 3 10 2 1 1 20 8 6 14
+unsigned 2 7 3 10 2 1 1 20 8 6 14
+float 2 7 3 10 2.5 | |
+double 2 7 3 10 2.5 | |
+ | |
+initial (5,2) | (5,2) | (12,10)
+
+ The following machine-generated program reflects the
+ tests described in the table.
+ */
+
+ cl = 5; cr = 2;
+ cl = cr;
+ if(cl != 2){
+ lrc = 1;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; sr = 2;
+ cl = sr;
+ if(cl != 2){
+ lrc = 2;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ir = 2;
+ cl = ir;
+ if(cl != 2){
+ lrc = 3;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; lr = 2;
+ cl = lr;
+ if(cl != 2){
+ lrc = 4;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ur = 2;
+ cl = ur;
+ if(cl != 2){
+ lrc = 5;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; fr = 2;
+ cl = fr;
+ if(cl != 2){
+ lrc = 6;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; dr = 2;
+ cl = dr;
+ if(cl != 2){
+ lrc = 7;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; cr = 2;
+ sl = cr;
+ if(sl != 2){
+ lrc = 8;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; sr = 2;
+ sl = sr;
+ if(sl != 2){
+ lrc = 9;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ir = 2;
+ sl = ir;
+ if(sl != 2){
+ lrc = 10;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; lr = 2;
+ sl = lr;
+ if(sl != 2){
+ lrc = 11;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ur = 2;
+ sl = ur;
+ if(sl != 2){
+ lrc = 12;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; fr = 2;
+ sl = fr;
+ if(sl != 2){
+ lrc = 13;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; dr = 2;
+ sl = dr;
+ if(sl != 2){
+ lrc = 14;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; cr = 2;
+ il = cr;
+ if(il != 2){
+ lrc = 15;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; sr = 2;
+ il = sr;
+ if(il != 2){
+ lrc = 16;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ir = 2;
+ il = ir;
+ if(il != 2){
+ lrc = 17;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; lr = 2;
+ il = lr;
+ if(il != 2){
+ lrc = 18;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ur = 2;
+ il = ur;
+ if(il != 2){
+ lrc = 19;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; fr = 2;
+ il = fr;
+ if(il != 2){
+ lrc = 20;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; dr = 2;
+ il = dr;
+ if(il != 2){
+ lrc = 21;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; cr = 2;
+ ll = cr;
+ if(ll != 2){
+ lrc = 22;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; sr = 2;
+ ll = sr;
+ if(ll != 2){
+ lrc = 23;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ir = 2;
+ ll = ir;
+ if(ll != 2){
+ lrc = 24;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; lr = 2;
+ ll = lr;
+ if(ll != 2){
+ lrc = 25;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ur = 2;
+ ll = ur;
+ if(ll != 2){
+ lrc = 26;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; fr = 2;
+ ll = fr;
+ if(ll != 2){
+ lrc = 27;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; dr = 2;
+ ll = dr;
+ if(ll != 2){
+ lrc = 28;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; cr = 2;
+ ul = cr;
+ if(ul != 2){
+ lrc = 29;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; sr = 2;
+ ul = sr;
+ if(ul != 2){
+ lrc = 30;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ir = 2;
+ ul = ir;
+ if(ul != 2){
+ lrc = 31;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; lr = 2;
+ ul = lr;
+ if(ul != 2){
+ lrc = 32;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ur = 2;
+ ul = ur;
+ if(ul != 2){
+ lrc = 33;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; fr = 2;
+ ul = fr;
+ if(ul != 2){
+ lrc = 34;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; dr = 2;
+ ul = dr;
+ if(ul != 2){
+ lrc = 35;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; cr = 2;
+ fl = cr;
+ if(fl != 2){
+ lrc = 36;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; sr = 2;
+ fl = sr;
+ if(fl != 2){
+ lrc = 37;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ir = 2;
+ fl = ir;
+ if(fl != 2){
+ lrc = 38;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; lr = 2;
+ fl = lr;
+ if(fl != 2){
+ lrc = 39;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ur = 2;
+ fl = ur;
+ if(fl != 2){
+ lrc = 40;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; fr = 2;
+ fl = fr;
+ if(fl != 2){
+ lrc = 41;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; dr = 2;
+ fl = dr;
+ if(fl != 2){
+ lrc = 42;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; cr = 2;
+ dl = cr;
+ if(dl != 2){
+ lrc = 43;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; sr = 2;
+ dl = sr;
+ if(dl != 2){
+ lrc = 44;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ir = 2;
+ dl = ir;
+ if(dl != 2){
+ lrc = 45;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; lr = 2;
+ dl = lr;
+ if(dl != 2){
+ lrc = 46;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ur = 2;
+ dl = ur;
+ if(dl != 2){
+ lrc = 47;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; fr = 2;
+ dl = fr;
+ if(dl != 2){
+ lrc = 48;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; dr = 2;
+ dl = dr;
+ if(dl != 2){
+ lrc = 49;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; cr = 2;
+ cl += cr;
+ if(cl != 7){
+ lrc = 50;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; sr = 2;
+ cl += sr;
+ if(cl != 7){
+ lrc = 51;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ir = 2;
+ cl += ir;
+ if(cl != 7){
+ lrc = 52;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; lr = 2;
+ cl += lr;
+ if(cl != 7){
+ lrc = 53;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ur = 2;
+ cl += ur;
+ if(cl != 7){
+ lrc = 54;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; fr = 2;
+ cl += fr;
+ if(cl != 7){
+ lrc = 55;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; dr = 2;
+ cl += dr;
+ if(cl != 7){
+ lrc = 56;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; cr = 2;
+ sl += cr;
+ if(sl != 7){
+ lrc = 57;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; sr = 2;
+ sl += sr;
+ if(sl != 7){
+ lrc = 58;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ir = 2;
+ sl += ir;
+ if(sl != 7){
+ lrc = 59;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; lr = 2;
+ sl += lr;
+ if(sl != 7){
+ lrc = 60;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ur = 2;
+ sl += ur;
+ if(sl != 7){
+ lrc = 61;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; fr = 2;
+ sl += fr;
+ if(sl != 7){
+ lrc = 62;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; dr = 2;
+ sl += dr;
+ if(sl != 7){
+ lrc = 63;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; cr = 2;
+ il += cr;
+ if(il != 7){
+ lrc = 64;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; sr = 2;
+ il += sr;
+ if(il != 7){
+ lrc = 65;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ir = 2;
+ il += ir;
+ if(il != 7){
+ lrc = 66;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; lr = 2;
+ il += lr;
+ if(il != 7){
+ lrc = 67;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ur = 2;
+ il += ur;
+ if(il != 7){
+ lrc = 68;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; fr = 2;
+ il += fr;
+ if(il != 7){
+ lrc = 69;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; dr = 2;
+ il += dr;
+ if(il != 7){
+ lrc = 70;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; cr = 2;
+ ll += cr;
+ if(ll != 7){
+ lrc = 71;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; sr = 2;
+ ll += sr;
+ if(ll != 7){
+ lrc = 72;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ir = 2;
+ ll += ir;
+ if(ll != 7){
+ lrc = 73;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; lr = 2;
+ ll += lr;
+ if(ll != 7){
+ lrc = 74;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ur = 2;
+ ll += ur;
+ if(ll != 7){
+ lrc = 75;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; fr = 2;
+ ll += fr;
+ if(ll != 7){
+ lrc = 76;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; dr = 2;
+ ll += dr;
+ if(ll != 7){
+ lrc = 77;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; cr = 2;
+ ul += cr;
+ if(ul != 7){
+ lrc = 78;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; sr = 2;
+ ul += sr;
+ if(ul != 7){
+ lrc = 79;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ir = 2;
+ ul += ir;
+ if(ul != 7){
+ lrc = 80;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; lr = 2;
+ ul += lr;
+ if(ul != 7){
+ lrc = 81;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ur = 2;
+ ul += ur;
+ if(ul != 7){
+ lrc = 82;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; fr = 2;
+ ul += fr;
+ if(ul != 7){
+ lrc = 83;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; dr = 2;
+ ul += dr;
+ if(ul != 7){
+ lrc = 84;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; cr = 2;
+ fl += cr;
+ if(fl != 7){
+ lrc = 85;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; sr = 2;
+ fl += sr;
+ if(fl != 7){
+ lrc = 86;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ir = 2;
+ fl += ir;
+ if(fl != 7){
+ lrc = 87;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; lr = 2;
+ fl += lr;
+ if(fl != 7){
+ lrc = 88;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ur = 2;
+ fl += ur;
+ if(fl != 7){
+ lrc = 89;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; fr = 2;
+ fl += fr;
+ if(fl != 7){
+ lrc = 90;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; dr = 2;
+ fl += dr;
+ if(fl != 7){
+ lrc = 91;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; cr = 2;
+ dl += cr;
+ if(dl != 7){
+ lrc = 92;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; sr = 2;
+ dl += sr;
+ if(dl != 7){
+ lrc = 93;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ir = 2;
+ dl += ir;
+ if(dl != 7){
+ lrc = 94;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; lr = 2;
+ dl += lr;
+ if(dl != 7){
+ lrc = 95;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ur = 2;
+ dl += ur;
+ if(dl != 7){
+ lrc = 96;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; fr = 2;
+ dl += fr;
+ if(dl != 7){
+ lrc = 97;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; dr = 2;
+ dl += dr;
+ if(dl != 7){
+ lrc = 98;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; cr = 2;
+ cl -= cr;
+ if(cl != 3){
+ lrc = 99;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; sr = 2;
+ cl -= sr;
+ if(cl != 3){
+ lrc = 100;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ir = 2;
+ cl -= ir;
+ if(cl != 3){
+ lrc = 101;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; lr = 2;
+ cl -= lr;
+ if(cl != 3){
+ lrc = 102;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ur = 2;
+ cl -= ur;
+ if(cl != 3){
+ lrc = 103;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; fr = 2;
+ cl -= fr;
+ if(cl != 3){
+ lrc = 104;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; dr = 2;
+ cl -= dr;
+ if(cl != 3){
+ lrc = 105;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; cr = 2;
+ sl -= cr;
+ if(sl != 3){
+ lrc = 106;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; sr = 2;
+ sl -= sr;
+ if(sl != 3){
+ lrc = 107;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ir = 2;
+ sl -= ir;
+ if(sl != 3){
+ lrc = 108;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; lr = 2;
+ sl -= lr;
+ if(sl != 3){
+ lrc = 109;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ur = 2;
+ sl -= ur;
+ if(sl != 3){
+ lrc = 110;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; fr = 2;
+ sl -= fr;
+ if(sl != 3){
+ lrc = 111;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; dr = 2;
+ sl -= dr;
+ if(sl != 3){
+ lrc = 112;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; cr = 2;
+ il -= cr;
+ if(il != 3){
+ lrc = 113;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; sr = 2;
+ il -= sr;
+ if(il != 3){
+ lrc = 114;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ir = 2;
+ il -= ir;
+ if(il != 3){
+ lrc = 115;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; lr = 2;
+ il -= lr;
+ if(il != 3){
+ lrc = 116;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ur = 2;
+ il -= ur;
+ if(il != 3){
+ lrc = 117;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; fr = 2;
+ il -= fr;
+ if(il != 3){
+ lrc = 118;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; dr = 2;
+ il -= dr;
+ if(il != 3){
+ lrc = 119;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; cr = 2;
+ ll -= cr;
+ if(ll != 3){
+ lrc = 120;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; sr = 2;
+ ll -= sr;
+ if(ll != 3){
+ lrc = 121;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ir = 2;
+ ll -= ir;
+ if(ll != 3){
+ lrc = 122;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; lr = 2;
+ ll -= lr;
+ if(ll != 3){
+ lrc = 123;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ur = 2;
+ ll -= ur;
+ if(ll != 3){
+ lrc = 124;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; fr = 2;
+ ll -= fr;
+ if(ll != 3){
+ lrc = 125;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; dr = 2;
+ ll -= dr;
+ if(ll != 3){
+ lrc = 126;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; cr = 2;
+ ul -= cr;
+ if(ul != 3){
+ lrc = 127;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; sr = 2;
+ ul -= sr;
+ if(ul != 3){
+ lrc = 128;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ir = 2;
+ ul -= ir;
+ if(ul != 3){
+ lrc = 129;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; lr = 2;
+ ul -= lr;
+ if(ul != 3){
+ lrc = 130;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ur = 2;
+ ul -= ur;
+ if(ul != 3){
+ lrc = 131;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; fr = 2;
+ ul -= fr;
+ if(ul != 3){
+ lrc = 132;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; dr = 2;
+ ul -= dr;
+ if(ul != 3){
+ lrc = 133;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; cr = 2;
+ fl -= cr;
+ if(fl != 3){
+ lrc = 134;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; sr = 2;
+ fl -= sr;
+ if(fl != 3){
+ lrc = 135;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ir = 2;
+ fl -= ir;
+ if(fl != 3){
+ lrc = 136;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; lr = 2;
+ fl -= lr;
+ if(fl != 3){
+ lrc = 137;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ur = 2;
+ fl -= ur;
+ if(fl != 3){
+ lrc = 138;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; fr = 2;
+ fl -= fr;
+ if(fl != 3){
+ lrc = 139;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; dr = 2;
+ fl -= dr;
+ if(fl != 3){
+ lrc = 140;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; cr = 2;
+ dl -= cr;
+ if(dl != 3){
+ lrc = 141;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; sr = 2;
+ dl -= sr;
+ if(dl != 3){
+ lrc = 142;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ir = 2;
+ dl -= ir;
+ if(dl != 3){
+ lrc = 143;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; lr = 2;
+ dl -= lr;
+ if(dl != 3){
+ lrc = 144;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ur = 2;
+ dl -= ur;
+ if(dl != 3){
+ lrc = 145;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; fr = 2;
+ dl -= fr;
+ if(dl != 3){
+ lrc = 146;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; dr = 2;
+ dl -= dr;
+ if(dl != 3){
+ lrc = 147;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; cr = 2;
+ cl *= cr;
+ if(cl != 10){
+ lrc = 148;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; sr = 2;
+ cl *= sr;
+ if(cl != 10){
+ lrc = 149;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ir = 2;
+ cl *= ir;
+ if(cl != 10){
+ lrc = 150;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; lr = 2;
+ cl *= lr;
+ if(cl != 10){
+ lrc = 151;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ur = 2;
+ cl *= ur;
+ if(cl != 10){
+ lrc = 152;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; fr = 2;
+ cl *= fr;
+ if(cl != 10){
+ lrc = 153;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; dr = 2;
+ cl *= dr;
+ if(cl != 10){
+ lrc = 154;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; cr = 2;
+ sl *= cr;
+ if(sl != 10){
+ lrc = 155;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; sr = 2;
+ sl *= sr;
+ if(sl != 10){
+ lrc = 156;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ir = 2;
+ sl *= ir;
+ if(sl != 10){
+ lrc = 157;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; lr = 2;
+ sl *= lr;
+ if(sl != 10){
+ lrc = 158;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ur = 2;
+ sl *= ur;
+ if(sl != 10){
+ lrc = 159;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; fr = 2;
+ sl *= fr;
+ if(sl != 10){
+ lrc = 160;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; dr = 2;
+ sl *= dr;
+ if(sl != 10){
+ lrc = 161;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; cr = 2;
+ il *= cr;
+ if(il != 10){
+ lrc = 162;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; sr = 2;
+ il *= sr;
+ if(il != 10){
+ lrc = 163;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ir = 2;
+ il *= ir;
+ if(il != 10){
+ lrc = 164;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; lr = 2;
+ il *= lr;
+ if(il != 10){
+ lrc = 165;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ur = 2;
+ il *= ur;
+ if(il != 10){
+ lrc = 166;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; fr = 2;
+ il *= fr;
+ if(il != 10){
+ lrc = 167;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; dr = 2;
+ il *= dr;
+ if(il != 10){
+ lrc = 168;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; cr = 2;
+ ll *= cr;
+ if(ll != 10){
+ lrc = 169;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; sr = 2;
+ ll *= sr;
+ if(ll != 10){
+ lrc = 170;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ir = 2;
+ ll *= ir;
+ if(ll != 10){
+ lrc = 171;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; lr = 2;
+ ll *= lr;
+ if(ll != 10){
+ lrc = 172;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ur = 2;
+ ll *= ur;
+ if(ll != 10){
+ lrc = 173;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; fr = 2;
+ ll *= fr;
+ if(ll != 10){
+ lrc = 174;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; dr = 2;
+ ll *= dr;
+ if(ll != 10){
+ lrc = 175;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; cr = 2;
+ ul *= cr;
+ if(ul != 10){
+ lrc = 176;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; sr = 2;
+ ul *= sr;
+ if(ul != 10){
+ lrc = 177;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ir = 2;
+ ul *= ir;
+ if(ul != 10){
+ lrc = 178;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; lr = 2;
+ ul *= lr;
+ if(ul != 10){
+ lrc = 179;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ur = 2;
+ ul *= ur;
+ if(ul != 10){
+ lrc = 180;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; fr = 2;
+ ul *= fr;
+ if(ul != 10){
+ lrc = 181;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; dr = 2;
+ ul *= dr;
+ if(ul != 10){
+ lrc = 182;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; cr = 2;
+ fl *= cr;
+ if(fl != 10){
+ lrc = 183;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; sr = 2;
+ fl *= sr;
+ if(fl != 10){
+ lrc = 184;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ir = 2;
+ fl *= ir;
+ if(fl != 10){
+ lrc = 185;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; lr = 2;
+ fl *= lr;
+ if(fl != 10){
+ lrc = 186;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ur = 2;
+ fl *= ur;
+ if(fl != 10){
+ lrc = 187;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; fr = 2;
+ fl *= fr;
+ if(fl != 10){
+ lrc = 188;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; dr = 2;
+ fl *= dr;
+ if(fl != 10){
+ lrc = 189;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; cr = 2;
+ dl *= cr;
+ if(dl != 10){
+ lrc = 190;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; sr = 2;
+ dl *= sr;
+ if(dl != 10){
+ lrc = 191;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ir = 2;
+ dl *= ir;
+ if(dl != 10){
+ lrc = 192;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; lr = 2;
+ dl *= lr;
+ if(dl != 10){
+ lrc = 193;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ur = 2;
+ dl *= ur;
+ if(dl != 10){
+ lrc = 194;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; fr = 2;
+ dl *= fr;
+ if(dl != 10){
+ lrc = 195;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; dr = 2;
+ dl *= dr;
+ if(dl != 10){
+ lrc = 196;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; cr = 2;
+ cl /= cr;
+ if(cl != 2){
+ lrc = 197;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; sr = 2;
+ cl /= sr;
+ if(cl != 2){
+ lrc = 198;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ir = 2;
+ cl /= ir;
+ if(cl != 2){
+ lrc = 199;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; lr = 2;
+ cl /= lr;
+ if(cl != 2){
+ lrc = 200;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ur = 2;
+ cl /= ur;
+ if(cl != 2){
+ lrc = 201;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; fr = 2;
+ cl /= fr;
+ if(cl != 2){
+ lrc = 202;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; dr = 2;
+ cl /= dr;
+ if(cl != 2){
+ lrc = 203;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; cr = 2;
+ sl /= cr;
+ if(sl != 2){
+ lrc = 204;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; sr = 2;
+ sl /= sr;
+ if(sl != 2){
+ lrc = 205;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ir = 2;
+ sl /= ir;
+ if(sl != 2){
+ lrc = 206;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; lr = 2;
+ sl /= lr;
+ if(sl != 2){
+ lrc = 207;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ur = 2;
+ sl /= ur;
+ if(sl != 2){
+ lrc = 208;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; fr = 2;
+ sl /= fr;
+ if(sl != 2){
+ lrc = 209;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; dr = 2;
+ sl /= dr;
+ if(sl != 2){
+ lrc = 210;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; cr = 2;
+ il /= cr;
+ if(il != 2){
+ lrc = 211;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; sr = 2;
+ il /= sr;
+ if(il != 2){
+ lrc = 212;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ir = 2;
+ il /= ir;
+ if(il != 2){
+ lrc = 213;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; lr = 2;
+ il /= lr;
+ if(il != 2){
+ lrc = 214;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ur = 2;
+ il /= ur;
+ if(il != 2){
+ lrc = 215;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; fr = 2;
+ il /= fr;
+ if(il != 2){
+ lrc = 216;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; dr = 2;
+ il /= dr;
+ if(il != 2){
+ lrc = 217;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; cr = 2;
+ ll /= cr;
+ if(ll != 2){
+ lrc = 218;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; sr = 2;
+ ll /= sr;
+ if(ll != 2){
+ lrc = 219;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ir = 2;
+ ll /= ir;
+ if(ll != 2){
+ lrc = 220;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; lr = 2;
+ ll /= lr;
+ if(ll != 2){
+ lrc = 221;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ur = 2;
+ ll /= ur;
+ if(ll != 2){
+ lrc = 222;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; fr = 2;
+ ll /= fr;
+ if(ll != 2){
+ lrc = 223;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; dr = 2;
+ ll /= dr;
+ if(ll != 2){
+ lrc = 224;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; cr = 2;
+ ul /= cr;
+ if(ul != 2){
+ lrc = 225;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; sr = 2;
+ ul /= sr;
+ if(ul != 2){
+ lrc = 226;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ir = 2;
+ ul /= ir;
+ if(ul != 2){
+ lrc = 227;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; lr = 2;
+ ul /= lr;
+ if(ul != 2){
+ lrc = 228;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ur = 2;
+ ul /= ur;
+ if(ul != 2){
+ lrc = 229;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; fr = 2;
+ ul /= fr;
+ if(ul != 2){
+ lrc = 230;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; dr = 2;
+ ul /= dr;
+ if(ul != 2){
+ lrc = 231;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; cr = 2;
+ fl /= cr;
+ if(fl != 2.5){
+ lrc = 232;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; sr = 2;
+ fl /= sr;
+ if(fl != 2.5){
+ lrc = 233;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ir = 2;
+ fl /= ir;
+ if(fl != 2.5){
+ lrc = 234;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; lr = 2;
+ fl /= lr;
+ if(fl != 2.5){
+ lrc = 235;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; ur = 2;
+ fl /= ur;
+ if(fl != 2.5){
+ lrc = 236;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; fr = 2;
+ fl /= fr;
+ if(fl != 2.5){
+ lrc = 237;
+ if(prlc) printf(f,lrc);
+ }
+ fl = 5; dr = 2;
+ fl /= dr;
+ if(fl != 2.5){
+ lrc = 238;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; cr = 2;
+ dl /= cr;
+ if(dl != 2.5){
+ lrc = 239;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; sr = 2;
+ dl /= sr;
+ if(dl != 2.5){
+ lrc = 240;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ir = 2;
+ dl /= ir;
+ if(dl != 2.5){
+ lrc = 241;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; lr = 2;
+ dl /= lr;
+ if(dl != 2.5){
+ lrc = 242;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; ur = 2;
+ dl /= ur;
+ if(dl != 2.5){
+ lrc = 243;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; fr = 2;
+ dl /= fr;
+ if(dl != 2.5){
+ lrc = 244;
+ if(prlc) printf(f,lrc);
+ }
+ dl = 5; dr = 2;
+ dl /= dr;
+ if(dl != 2.5){
+ lrc = 245;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; cr = 2;
+ cl %= cr;
+ if(cl != 1){
+ lrc = 246;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; sr = 2;
+ cl %= sr;
+ if(cl != 1){
+ lrc = 247;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ir = 2;
+ cl %= ir;
+ if(cl != 1){
+ lrc = 248;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; lr = 2;
+ cl %= lr;
+ if(cl != 1){
+ lrc = 249;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ur = 2;
+ cl %= ur;
+ if(cl != 1){
+ lrc = 250;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; cr = 2;
+ sl %= cr;
+ if(sl != 1){
+ lrc = 251;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; sr = 2;
+ sl %= sr;
+ if(sl != 1){
+ lrc = 252;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ir = 2;
+ sl %= ir;
+ if(sl != 1){
+ lrc = 253;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; lr = 2;
+ sl %= lr;
+ if(sl != 1){
+ lrc = 254;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ur = 2;
+ sl %= ur;
+ if(sl != 1){
+ lrc = 255;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; cr = 2;
+ il %= cr;
+ if(il != 1){
+ lrc = 256;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; sr = 2;
+ il %= sr;
+ if(il != 1){
+ lrc = 257;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ir = 2;
+ il %= ir;
+ if(il != 1){
+ lrc = 258;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; lr = 2;
+ il %= lr;
+ if(il != 1){
+ lrc = 259;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ur = 2;
+ il %= ur;
+ if(il != 1){
+ lrc = 260;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; cr = 2;
+ ll %= cr;
+ if(ll != 1){
+ lrc = 261;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; sr = 2;
+ ll %= sr;
+ if(ll != 1){
+ lrc = 262;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ir = 2;
+ ll %= ir;
+ if(ll != 1){
+ lrc = 263;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; lr = 2;
+ ll %= lr;
+ if(ll != 1){
+ lrc = 264;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ur = 2;
+ ll %= ur;
+ if(ll != 1){
+ lrc = 265;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; cr = 2;
+ ul %= cr;
+ if(ul != 1){
+ lrc = 266;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; sr = 2;
+ ul %= sr;
+ if(ul != 1){
+ lrc = 267;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ir = 2;
+ ul %= ir;
+ if(ul != 1){
+ lrc = 268;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; lr = 2;
+ ul %= lr;
+ if(ul != 1){
+ lrc = 269;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ur = 2;
+ ul %= ur;
+ if(ul != 1){
+ lrc = 270;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; cr = 2;
+ cl >>= cr;
+ if(cl != 1){
+ lrc = 271;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; sr = 2;
+ cl >>= sr;
+ if(cl != 1){
+ lrc = 272;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ir = 2;
+ cl >>= ir;
+ if(cl != 1){
+ lrc = 273;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; lr = 2;
+ cl >>= lr;
+ if(cl != 1){
+ lrc = 274;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ur = 2;
+ cl >>= ur;
+ if(cl != 1){
+ lrc = 275;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; cr = 2;
+ sl >>= cr;
+ if(sl != 1){
+ lrc = 276;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; sr = 2;
+ sl >>= sr;
+ if(sl != 1){
+ lrc = 277;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ir = 2;
+ sl >>= ir;
+ if(sl != 1){
+ lrc = 278;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; lr = 2;
+ sl >>= lr;
+ if(sl != 1){
+ lrc = 279;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ur = 2;
+ sl >>= ur;
+ if(sl != 1){
+ lrc = 280;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; cr = 2;
+ il >>= cr;
+ if(il != 1){
+ lrc = 281;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; sr = 2;
+ il >>= sr;
+ if(il != 1){
+ lrc = 282;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ir = 2;
+ il >>= ir;
+ if(il != 1){
+ lrc = 283;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; lr = 2;
+ il >>= lr;
+ if(il != 1){
+ lrc = 284;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ur = 2;
+ il >>= ur;
+ if(il != 1){
+ lrc = 285;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; cr = 2;
+ ll >>= cr;
+ if(ll != 1){
+ lrc = 286;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; sr = 2;
+ ll >>= sr;
+ if(ll != 1){
+ lrc = 287;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ir = 2;
+ ll >>= ir;
+ if(ll != 1){
+ lrc = 288;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; lr = 2;
+ ll >>= lr;
+ if(ll != 1){
+ lrc = 289;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ur = 2;
+ ll >>= ur;
+ if(ll != 1){
+ lrc = 290;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; cr = 2;
+ ul >>= cr;
+ if(ul != 1){
+ lrc = 291;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; sr = 2;
+ ul >>= sr;
+ if(ul != 1){
+ lrc = 292;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ir = 2;
+ ul >>= ir;
+ if(ul != 1){
+ lrc = 293;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; lr = 2;
+ ul >>= lr;
+ if(ul != 1){
+ lrc = 294;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ur = 2;
+ ul >>= ur;
+ if(ul != 1){
+ lrc = 295;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; cr = 2;
+ cl <<= cr;
+ if(cl != 20){
+ lrc = 296;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; sr = 2;
+ cl <<= sr;
+ if(cl != 20){
+ lrc = 297;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ir = 2;
+ cl <<= ir;
+ if(cl != 20){
+ lrc = 298;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; lr = 2;
+ cl <<= lr;
+ if(cl != 20){
+ lrc = 299;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 5; ur = 2;
+ cl <<= ur;
+ if(cl != 20){
+ lrc = 300;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; cr = 2;
+ sl <<= cr;
+ if(sl != 20){
+ lrc = 301;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; sr = 2;
+ sl <<= sr;
+ if(sl != 20){
+ lrc = 302;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ir = 2;
+ sl <<= ir;
+ if(sl != 20){
+ lrc = 303;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; lr = 2;
+ sl <<= lr;
+ if(sl != 20){
+ lrc = 304;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 5; ur = 2;
+ sl <<= ur;
+ if(sl != 20){
+ lrc = 305;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; cr = 2;
+ il <<= cr;
+ if(il != 20){
+ lrc = 306;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; sr = 2;
+ il <<= sr;
+ if(il != 20){
+ lrc = 307;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ir = 2;
+ il <<= ir;
+ if(il != 20){
+ lrc = 308;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; lr = 2;
+ il <<= lr;
+ if(il != 20){
+ lrc = 309;
+ if(prlc) printf(f,lrc);
+ }
+ il = 5; ur = 2;
+ il <<= ur;
+ if(il != 20){
+ lrc = 310;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; cr = 2;
+ ll <<= cr;
+ if(ll != 20){
+ lrc = 311;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; sr = 2;
+ ll <<= sr;
+ if(ll != 20){
+ lrc = 312;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ir = 2;
+ ll <<= ir;
+ if(ll != 20){
+ lrc = 313;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; lr = 2;
+ ll <<= lr;
+ if(ll != 20){
+ lrc = 314;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 5; ur = 2;
+ ll <<= ur;
+ if(ll != 20){
+ lrc = 315;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; cr = 2;
+ ul <<= cr;
+ if(ul != 20){
+ lrc = 316;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; sr = 2;
+ ul <<= sr;
+ if(ul != 20){
+ lrc = 317;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ir = 2;
+ ul <<= ir;
+ if(ul != 20){
+ lrc = 318;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; lr = 2;
+ ul <<= lr;
+ if(ul != 20){
+ lrc = 319;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 5; ur = 2;
+ ul <<= ur;
+ if(ul != 20){
+ lrc = 320;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; cr = 10;
+ cl &= cr;
+ if(cl != 8){
+ lrc = 321;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; sr = 10;
+ cl &= sr;
+ if(cl != 8){
+ lrc = 322;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; ir = 10;
+ cl &= ir;
+ if(cl != 8){
+ lrc = 323;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; lr = 10;
+ cl &= lr;
+ if(cl != 8){
+ lrc = 324;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; ur = 10;
+ cl &= ur;
+ if(cl != 8){
+ lrc = 325;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; cr = 10;
+ sl &= cr;
+ if(sl != 8){
+ lrc = 326;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; sr = 10;
+ sl &= sr;
+ if(sl != 8){
+ lrc = 327;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; ir = 10;
+ sl &= ir;
+ if(sl != 8){
+ lrc = 328;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; lr = 10;
+ sl &= lr;
+ if(sl != 8){
+ lrc = 329;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; ur = 10;
+ sl &= ur;
+ if(sl != 8){
+ lrc = 330;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; cr = 10;
+ il &= cr;
+ if(il != 8){
+ lrc = 331;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; sr = 10;
+ il &= sr;
+ if(il != 8){
+ lrc = 332;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; ir = 10;
+ il &= ir;
+ if(il != 8){
+ lrc = 333;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; lr = 10;
+ il &= lr;
+ if(il != 8){
+ lrc = 334;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; ur = 10;
+ il &= ur;
+ if(il != 8){
+ lrc = 335;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; cr = 10;
+ ll &= cr;
+ if(ll != 8){
+ lrc = 336;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; sr = 10;
+ ll &= sr;
+ if(ll != 8){
+ lrc = 337;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; ir = 10;
+ ll &= ir;
+ if(ll != 8){
+ lrc = 338;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; lr = 10;
+ ll &= lr;
+ if(ll != 8){
+ lrc = 339;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; ur = 10;
+ ll &= ur;
+ if(ll != 8){
+ lrc = 340;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; cr = 10;
+ ul &= cr;
+ if(ul != 8){
+ lrc = 341;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; sr = 10;
+ ul &= sr;
+ if(ul != 8){
+ lrc = 342;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; ir = 10;
+ ul &= ir;
+ if(ul != 8){
+ lrc = 343;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; lr = 10;
+ ul &= lr;
+ if(ul != 8){
+ lrc = 344;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; ur = 10;
+ ul &= ur;
+ if(ul != 8){
+ lrc = 345;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; cr = 10;
+ cl ^= cr;
+ if(cl != 6){
+ lrc = 346;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; sr = 10;
+ cl ^= sr;
+ if(cl != 6){
+ lrc = 347;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; ir = 10;
+ cl ^= ir;
+ if(cl != 6){
+ lrc = 348;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; lr = 10;
+ cl ^= lr;
+ if(cl != 6){
+ lrc = 349;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; ur = 10;
+ cl ^= ur;
+ if(cl != 6){
+ lrc = 350;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; cr = 10;
+ sl ^= cr;
+ if(sl != 6){
+ lrc = 351;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; sr = 10;
+ sl ^= sr;
+ if(sl != 6){
+ lrc = 352;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; ir = 10;
+ sl ^= ir;
+ if(sl != 6){
+ lrc = 353;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; lr = 10;
+ sl ^= lr;
+ if(sl != 6){
+ lrc = 354;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; ur = 10;
+ sl ^= ur;
+ if(sl != 6){
+ lrc = 355;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; cr = 10;
+ il ^= cr;
+ if(il != 6){
+ lrc = 356;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; sr = 10;
+ il ^= sr;
+ if(il != 6){
+ lrc = 357;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; ir = 10;
+ il ^= ir;
+ if(il != 6){
+ lrc = 358;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; lr = 10;
+ il ^= lr;
+ if(il != 6){
+ lrc = 359;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; ur = 10;
+ il ^= ur;
+ if(il != 6){
+ lrc = 360;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; cr = 10;
+ ll ^= cr;
+ if(ll != 6){
+ lrc = 361;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; sr = 10;
+ ll ^= sr;
+ if(ll != 6){
+ lrc = 362;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; ir = 10;
+ ll ^= ir;
+ if(ll != 6){
+ lrc = 363;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; lr = 10;
+ ll ^= lr;
+ if(ll != 6){
+ lrc = 364;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; ur = 10;
+ ll ^= ur;
+ if(ll != 6){
+ lrc = 365;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; cr = 10;
+ ul ^= cr;
+ if(ul != 6){
+ lrc = 366;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; sr = 10;
+ ul ^= sr;
+ if(ul != 6){
+ lrc = 367;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; ir = 10;
+ ul ^= ir;
+ if(ul != 6){
+ lrc = 368;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; lr = 10;
+ ul ^= lr;
+ if(ul != 6){
+ lrc = 369;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; ur = 10;
+ ul ^= ur;
+ if(ul != 6){
+ lrc = 370;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; cr = 10;
+ cl |= cr;
+ if(cl != 14){
+ lrc = 371;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; sr = 10;
+ cl |= sr;
+ if(cl != 14){
+ lrc = 372;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; ir = 10;
+ cl |= ir;
+ if(cl != 14){
+ lrc = 373;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; lr = 10;
+ cl |= lr;
+ if(cl != 14){
+ lrc = 374;
+ if(prlc) printf(f,lrc);
+ }
+ cl = 12; ur = 10;
+ cl |= ur;
+ if(cl != 14){
+ lrc = 375;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; cr = 10;
+ sl |= cr;
+ if(sl != 14){
+ lrc = 376;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; sr = 10;
+ sl |= sr;
+ if(sl != 14){
+ lrc = 377;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; ir = 10;
+ sl |= ir;
+ if(sl != 14){
+ lrc = 378;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; lr = 10;
+ sl |= lr;
+ if(sl != 14){
+ lrc = 379;
+ if(prlc) printf(f,lrc);
+ }
+ sl = 12; ur = 10;
+ sl |= ur;
+ if(sl != 14){
+ lrc = 380;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; cr = 10;
+ il |= cr;
+ if(il != 14){
+ lrc = 381;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; sr = 10;
+ il |= sr;
+ if(il != 14){
+ lrc = 382;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; ir = 10;
+ il |= ir;
+ if(il != 14){
+ lrc = 383;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; lr = 10;
+ il |= lr;
+ if(il != 14){
+ lrc = 384;
+ if(prlc) printf(f,lrc);
+ }
+ il = 12; ur = 10;
+ il |= ur;
+ if(il != 14){
+ lrc = 385;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; cr = 10;
+ ll |= cr;
+ if(ll != 14){
+ lrc = 386;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; sr = 10;
+ ll |= sr;
+ if(ll != 14){
+ lrc = 387;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; ir = 10;
+ ll |= ir;
+ if(ll != 14){
+ lrc = 388;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; lr = 10;
+ ll |= lr;
+ if(ll != 14){
+ lrc = 389;
+ if(prlc) printf(f,lrc);
+ }
+ ll = 12; ur = 10;
+ ll |= ur;
+ if(ll != 14){
+ lrc = 390;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; cr = 10;
+ ul |= cr;
+ if(ul != 14){
+ lrc = 391;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; sr = 10;
+ ul |= sr;
+ if(ul != 14){
+ lrc = 392;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; ir = 10;
+ ul |= ir;
+ if(ul != 14){
+ lrc = 393;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; lr = 10;
+ ul |= lr;
+ if(ul != 14){
+ lrc = 394;
+ if(prlc) printf(f,lrc);
+ }
+ ul = 12; ur = 10;
+ ul |= ur;
+ if(ul != 14){
+ lrc = 395;
+ if(prlc) printf(f,lrc);
+ }
+ if(lrc != 0) {
+ rc = 1;
+ if(pd0->flgd != 0) printf(s714er,1);
+ }
+ return rc;
+}
+s715(pd0) /* 7.15 Comma operator */
+struct defs *pd0;
+{
+ static char s715er[] = "s715,er%d\n";
+ static char qs715[8] = "s715 ";
+ int rc;
+ char *ps, *pt;
+ int a, t, c, i;
+ a = c = 0;
+ ps = qs715;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+ /* A pair of expressions separated by a comma is
+ evaluated left to right and the value of the left
+ expression is discarded.
+ */
+ i = 1;
+ if( i++,i++,i++,i++,++i != 6 ){
+ if(pd0->flgd != 0) printf(s715er,1);
+ rc = rc+1;
+ }
+
+ /* In contexts where the comma is given a special mean-
+ ing, for example in a list of actual arguments to
+ functions (sic) and lists of initializers, the comma
+ operator as described in this section can only appear
+ in parentheses; for example
+
+ f( a, (t=3, t+2), c)
+
+ has three arguments, the second of which has the
+ value 5.
+ */
+
+ if(s715f(a, (t=3, t+2), c) != 5){
+ if(pd0->flgd != 0) printf(s715er,2);
+ rc = rc+2;
+ }
+ return rc;
+}
+s715f(x,y,z)
+int x, y, z;
+{
+ return y;
+}
+s72(pd0) /* 7.2 Unary operators */
+struct defs *pd0;
+{
+ static char s72er[] = "s72,er%d\n";
+ static char qs72[8] = "s72 ";
+ int rc;
+ char *ps, *pt;
+ int k, j, i, lrc;
+ char c;
+ short s;
+ long l;
+ unsigned u;
+ double d;
+ float f;
+ ps = qs72;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+ /* The *, denoting indirection, and the &, denoting a
+ pointer, are duals of each other, and ought to behave as
+ such... */
+
+ k = 2;
+ if(*&*&k != 2){
+ rc = rc+1;
+ printf(s72er,1);
+ }
+
+ /* The unary minus has the conventional meaning. */
+
+ if(k+(-k) != 0){
+ rc = rc+2;
+ printf(s72er,2);
+ }
+
+ /* The negation operator (!) has been thoroughly checked out,
+ perhaps more thoroughly than any of the others. The ~ oper-
+ ator gets us a ones complement. */
+
+ k = 0;
+ for(j=0;j<pd0->ibits;j++) k = (k<<1)|1;
+ if(~k != 0){
+ rc = rc+4;
+ printf(s72er,4);
+ }
+
+ /* Now we look at the ++ and -- operators, which can be
+ used in either prefix or suffix form. With side
+ effects they're loaded. */
+
+ k = 5;
+
+ if( ++k != 6 || --k != 5
+ || k++ != 5 || k-- != 6
+ || k != 5 ){
+ rc = rc+8;
+ printf(s72er,8);
+ }
+
+ /* An expression preceded by the parenthesised name of a
+ data type causes conversion of the value of the expression
+ to the named type. This construction is called a cast.
+ Here, we check to see that all of the possible casts and
+ their simple combinations are accepted by the compiler,
+ and that they all produce a correct result for this sample
+ of size one. */
+
+ c = 26; l = 26; d = 26.;
+ s = 26; u = 26;
+ i = 26; f = 26.;
+
+ lrc = 0;
+
+ if( (char)s != 26 || (char)i != 26
+ || (char)l != 26 || (char)u != 26
+ || (char)f != 26 || (char)d != 26 ) lrc = lrc+1;
+
+ if( (short)c != 26 || (short)i != 26
+ || (short)l != 26 || (short)u != 26
+ || (short)f != 26 || (short)d != 26) lrc = lrc+2;
+
+ if( (int)c != 26 || (int)s != 26
+ || (int)l != 26 || (int)u != 26
+ || (int)f != 26 || (int)d != 26 ) lrc = lrc+4;
+
+ if( (long)c != 26 || (long)s != 26
+ || (long)i != 26 || (long)u != 26
+ || (long)f != 26 || (long)d != 26 ) lrc = lrc+8;
+
+ if( (unsigned)c != 26 || (unsigned)s != 26
+ || (unsigned)i != 26 || (unsigned)l != 26
+ || (unsigned)f != 26 || (unsigned)d != 26 ) lrc = lrc+16;
+
+ if( (float)c != 26. || (float)s != 26.
+ || (float)i != 26. || (float)l != 26.
+ || (float)u != 26. || (float)d != 26. ) lrc = lrc+32;
+
+ if( (double)c != 26. || (double)s != 26.
+ || (double)i != 26. || (double)l != 26.
+ || (double)u != 26. || (double)f != 26. ) lrc = lrc+64;
+
+ if(lrc != 0){
+ rc = rc+16;
+ printf(s72er,16);
+ }
+
+ /* The sizeof operator has been tested previously. */
+
+ return rc;
+}
+s757(pd0) /* 7.5 Shift operators */
+ /* 7.6 Relational operators */
+ /* 7.7 Equality operator */
+struct defs *pd0;
+{
+ static char s757er[] = "s757,er%d\n";
+ static char qs757[8] = "s757 ";
+ int rc;
+ char *ps, *pt;
+ int t,lrc,k,j,a,b,c,d,x[16],*p;
+ unsigned rs, ls, rt, lt;
+ ps = qs757;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+ /* The shift operators << and >> group left-to-right.
+ */
+
+ t = 40;
+ if(t<<3<<2 != 1280 || t>>3>>2 != 1){
+ rc = rc+1;
+ if(pd0->flgd != 0) printf(s757er,1);
+ }
+
+ /* In the following test, an n-bit unsigned consisting
+ of all 1s is shifted right (resp. left) k bits, 0<=k<n.
+ We expect to find k 0s followed by n-k 1s (resp. n-k 1s
+ followed by k 0s). If not, we complain.
+ */
+
+ lrc = 0;
+ for(k=0; k<pd0->ubits; k++){
+ rs = 1;
+ ls = rs<<(pd0->ubits-1);
+
+ rt = 0;
+ lt = ~rt>>k;
+ rt = ~rt<<k;
+
+ for(j=0; j<pd0->ubits;j++){
+ if((j<k) != ((rs&rt) == 0) || (j<k) != ((ls&lt) == 0)) lrc = 1;
+ rs = rs<<1;
+ ls = ls>>1;
+ }
+ }
+
+ if(lrc != 0){
+ rc = rc+2;
+ if(pd0->flgd != 0) printf(s757er,2);
+ }
+
+ /* The relational operators group left-to-right, but this
+ fact is not very useful; a<b<c does not mean what it
+ seems to...
+ */
+
+ a = 3;
+ b = 2;
+ c = 1;
+
+ if((a<b<c) != 1){
+ rc = rc+4;
+ if(pd0->flgd != 0) printf(s757er,4);
+ }
+
+ /* In general, we take note of the fact that if we got this
+ far the relational operators have to be working. We test only
+ that two pointers may be compared; the result depends on
+ the relative locations in the address space of the
+ pointed-to objects.
+ */
+ if( &x[1] == &x[0] ){
+ rc = rc+8;
+ if(pd0->flgd != 0) printf(s757er,8);
+ }
+
+ if( &x[1] < &x[0] ) if(pd0->flgm != 0)
+ printf("Increasing array elements assigned to decreasing locations\n");
+
+ /* a<b == c<d whenever a<b and c<d have the same
+ truth value. */
+
+ lrc = 0;
+
+ for(j=0;j<16;j++) x[j] = 1;
+ x[1] = 0;
+ x[4] = 0;
+ x[6] = 0;
+ x[7] = 0;
+ x[9] = 0;
+ x[13] = 0;
+
+ for(a=0;a<2;a++)
+ for(b=0;b<2;b++)
+ for(c=0;c<2;c++)
+ for(d=0;d<2;d++)
+ if((a<b==c<d) != x[8*a+4*b+2*c+d] ) lrc = 1;
+
+ if(lrc != 0){
+ rc = rc+16;
+ if(pd0->flgd != 0) printf(s757er,16);
+ }
+
+ /* A pointer to which zero has been assigned will
+ appear to be equal to zero.
+ */
+
+ p = 0;
+
+ if(p != 0){
+ rc = rc+32;
+ if(pd0->flgd != 0) printf(s757er,32);
+ }
+
+ return rc;
+}
+s7813(pd0) /* 7.8 Bitwise AND operator
+ 7.9 Bitwise OR operator
+ 7.10 Bitwise exclusive OR operator
+ 7.11 Logical AND operator
+ 7.12 Logical OR operator
+ 7.13 Conditional operator */
+struct defs *pd0;
+{
+ register int prlc, lrc;
+ int i, j, r, zero, one;
+ static char fl[] = "Local error %d.\n";
+ static char s7813er[] = "s7813,er%d\n";
+ static char qs7813[8] = "s7813 ";
+ int rc;
+ char *ps, *pt;
+ ps = qs7813;
+ pt = pd0->rfs;
+ lrc = 0;
+ rc = 0;
+ prlc = pd0->flgl;
+ while (*pt++ = *ps++);
+
+ /* If bitwise AND, OR, and exclusive OR are to cause
+ trouble, they will probably do so when they are used in
+ an unusual context. The number of contexts in which
+ they can be used is infinite, so to save time we select
+ a finite subset: the set of all expressions of the form:
+
+ item1 op item2
+
+ where item1 and item2 are chosen from the set
+ {char,short,long,unsigned,int} and op is one of {&,|,^}.
+ We will use 12 and 10 as values for the items, as these
+ values will fit into all data types on just about any
+ imaginable machine, and the results after performing the
+ bitwise operations on them are distinct for each operation,
+ i.e.,
+
+ 12 | 10 -> 1100 | 1010 -> 1110 -> 14
+ 12 ^ 10 -> 1100 ^ 1010 -> 0110 -> 6
+ 12 & 10 -> 1100 & 1010 -> 1000 -> 8
+
+ There are 75 such combinations:
+ */
+
+ if(((char)12 & (char)10) != 8) {lrc = 1;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 | (char)10) != 14) {lrc = 2;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 ^ (char)10) != 6) {lrc = 3;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 & (short)10) != 8) {lrc = 4;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 | (short)10) != 14) {lrc = 5;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 ^ (short)10) != 6) {lrc = 6;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 & (long)10) != 8) {lrc = 7;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 | (long)10) != 14) {lrc = 8;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 ^ (long)10) != 6) {lrc = 9;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 & (unsigned)10) != 8) {lrc = 10;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 | (unsigned)10) != 14) {lrc = 11;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 ^ (unsigned)10) != 6) {lrc = 12;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 & (int)10) != 8) {lrc = 13;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 | (int)10) != 14) {lrc = 14;
+ if(prlc) printf(fl,lrc);}
+ if(((char)12 ^ (int)10) != 6) {lrc = 15;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 & (char)10) != 8) {lrc = 16;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 | (char)10) != 14) {lrc = 17;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 ^ (char)10) != 6) {lrc = 18;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 & (short)10) != 8) {lrc = 16;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 | (short)10) != 14) {lrc = 20;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 ^ (short)10) != 6) {lrc = 21;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 & (long)10) != 8) {lrc = 22;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 | (long)10) != 14) {lrc = 23;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 ^ (long)10) != 6) {lrc = 24;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 & (unsigned)10) != 8) {lrc = 25;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 | (unsigned)10) != 14) {lrc = 26;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 ^ (unsigned)10) != 6) {lrc = 27;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 & (int)10) != 8) {lrc = 28;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 | (int)10) != 14) {lrc = 26;
+ if(prlc) printf(fl,lrc);}
+ if(((short)12 ^ (int)10) != 6) {lrc = 30;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 & (char)10) != 8) {lrc = 31;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 | (char)10) != 14) {lrc = 32;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 ^ (char)10) != 6) {lrc = 33;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 & (short)10) != 8) {lrc = 34;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 | (short)10) != 14) {lrc = 35;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 ^ (short)10) != 6) {lrc = 36;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 & (long)10) != 8) {lrc = 37;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 | (long)10) != 14) {lrc = 38;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 ^ (long)10) != 6) {lrc = 39;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 & (unsigned)10) != 8) {lrc = 40;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 | (unsigned)10) != 14) {lrc = 41;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 ^ (unsigned)10) != 6) {lrc = 42;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 & (int)10) != 8) {lrc = 43;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 | (int)10) != 14) {lrc = 44;
+ if(prlc) printf(fl,lrc);}
+ if(((long)12 ^ (int)10) != 6) {lrc = 45;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 & (char)10) != 8) {lrc = 46;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 | (char)10) != 14) {lrc = 47;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 ^ (char)10) != 6) {lrc = 48;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 & (short)10) != 8) {lrc = 49;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 | (short)10) != 14) {lrc = 50;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 ^ (short)10) != 6) {lrc = 51;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 & (long)10) != 8) {lrc = 52;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 | (long)10) != 14) {lrc = 53;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 ^ (long)10) != 6) {lrc = 54;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 & (unsigned)10) != 8) {lrc = 55;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 | (unsigned)10) != 14) {lrc = 56;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 ^ (unsigned)10) != 6) {lrc = 57;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 & (int)10) != 8) {lrc = 58;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 | (int)10) != 14) {lrc = 56;
+ if(prlc) printf(fl,lrc);}
+ if(((unsigned)12 ^ (int)10) != 6) {lrc = 60;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 & (char)10) != 8) {lrc = 61;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 | (char)10) != 14) {lrc = 62;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 ^ (char)10) != 6) {lrc = 63;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 & (short)10) != 8) {lrc = 64;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 | (short)10) != 14) {lrc = 65;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 ^ (short)10) != 6) {lrc = 66;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 & (long)10) != 8) {lrc = 67;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 | (long)10) != 14) {lrc = 68;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 ^ (long)10) != 6) {lrc = 69;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 & (unsigned)10) != 8) {lrc = 70;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 | (unsigned)10) != 14) {lrc = 71;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 ^ (unsigned)10) != 6) {lrc = 72;
+ if(prlc) printf(fl,lrc);}
+ if(((int)12 & (int)10) != 8) {lrc = 73; if(prlc) printf(fl,lrc);}
+ if(((int)12 | (int)10) != 14) {lrc = 74; if(prlc) printf(fl,lrc);}
+ if(((int)12 ^ (int)10) != 6) {lrc = 75; if(prlc) printf(fl,lrc);}
+
+ if(lrc != 0){
+ if(pd0->flgd != 0) printf(s7813er,1);
+ rc = rc+1;
+ }
+
+ /* The && operator groups left to right. It returns 1
+ if both of the operands are nonzero; 0 otherwise.
+ It guarantees left to right evaluation; moreover, the
+ second operand is not evaluated if the value of the
+ first operand is 0.
+ */
+
+ lrc = 0;
+ i = j = 0;
+
+ r = i++ && j++;
+ if(i!=1) {lrc = 1; if(prlc) printf(fl,lrc);}
+ if(j!=0) {lrc = 2; if(prlc) printf(fl,lrc);}
+ if(r!=0) {lrc = 3; if(prlc) printf(fl,lrc);}
+ r = i && j++;
+ if(i!=1) {lrc = 4; if(prlc) printf(fl,lrc);}
+ if(j!=1) {lrc = 5; if(prlc) printf(fl,lrc);}
+ if(r!=0) {lrc = 6; if(prlc) printf(fl,lrc);}
+ r = i-- && j;
+ if(i!=0) {lrc = 7; if(prlc) printf(fl,lrc);}
+ if(j!=1) {lrc = 8; if(prlc) printf(fl,lrc);}
+ if(r!=1) {lrc = 9; if(prlc) printf(fl,lrc);}
+ r = i && j--;
+ if(i!=0) {lrc = 10; if(prlc) printf(fl,lrc);}
+ if(j!=1) {lrc = 11; if(prlc) printf(fl,lrc);}
+ if(r!=0) {lrc = 12; if(prlc) printf(fl,lrc);}
+
+ if(lrc!=0){
+ if(pd0->flgd != 0) printf(s7813er,2);
+ rc = rc+2;
+ }
+
+ /* The || operator groups left to right. It returns 1
+ if either of its operands is nonzero; 0 otherwise. It
+ guarantees left to right evaluation; moreover, the second
+ operand is not evaluated if the value of the first
+ operand is nonzero.
+ */
+
+ lrc = 0;
+ i = j = 0;
+ r = i++ || j;
+ if(i!=1) {lrc = 1; if(prlc) printf(fl,lrc);}
+ if(j!=0) {lrc = 2; if(prlc) printf(fl,lrc);}
+ if(r!=0) {lrc = 3; if(prlc) printf(fl,lrc);}
+ r = j++ || i;
+ if(i!=1) {lrc = 4; if(prlc) printf(fl,lrc);}
+ if(j!=1) {lrc = 5; if(prlc) printf(fl,lrc);}
+ if(r!=1) {lrc = 6; if(prlc) printf(fl,lrc);}
+ r = i-- || j--;
+ if(i!=0) {lrc = 7; if(prlc) printf(fl,lrc);}
+ if(j!=1) {lrc = 8; if(prlc) printf(fl,lrc);}
+ if(r!=1) {lrc = 9; if(prlc) printf(fl,lrc);}
+ r = i || j--;
+ if(i!=0) {lrc = 10; if(prlc) printf(fl,lrc);}
+ if(j!=0) {lrc = 11; if(prlc) printf(fl,lrc);}
+ if(r!=1) {lrc = 12; if(prlc) printf(fl,lrc);}
+
+ if(lrc!=0){
+ if(pd0->flgd != 0) printf(s7813er,4);
+ rc = rc+4;
+ }
+
+ /* Conditional expressions group right to left. */
+
+ i = j = 0;
+ zero = 0;
+ one = 1;
+ r = one?zero:one?i++:j++;
+ if(r!=0 || i!=0 || j!=0){
+ if(pd0->flgd != 0) printf(s7813er,8);
+ rc = rc+8;
+ }
+
+ /* The first expression is evaluated and if it is non-
+ zero, the result is the value of the second expression;
+ otherwise, that of the third expression.
+ */
+
+ if((one?zero:1) != 0 || (zero?1:zero) != 0){
+ if(pd0->flgd != 0) printf(s7813er,16);
+ rc = rc+16;
+ }
+ return rc;
+}
+s81(pd0) /* 8.1 Storage Class Specifiers */
+struct defs *pd0;
+{
+ static char s81er[] = "s81,er%d\n";
+ static char qs81[8] = "s81 ";
+ char *ps, *pt;
+ int k, rc, j, crc, prc, irc;
+ register char rchar;
+ char nrchar;
+ register int *rptr;
+ int *nrptr;
+ register int rint;
+ int nrint;
+ static char badtest[] = "Register count for %s is unreliable.\n";
+ static char goodtest[] = "%d registers assigned to %s variables.\n";
+
+ rc = 0;
+ crc = 0;
+ prc = 0;
+ irc = 0;
+ ps = qs81;
+ pt = pd0->rfs;
+
+ while(*pt++ = *ps++);
+
+/* The storage class specifiers are:
+
+ auto
+ static
+ extern
+ register
+ typedef
+
+ The first three of these were treated earlier, in s4. The last
+ will be checked in s88. "Register" remains.
+
+ There are three flavors of register, viz., char, int and pointer.
+ We wish first to ascertain that the representations as register
+ are consistent with the corresponding nonregister representations.
+ */
+
+ k = 1;
+ for (j=0; j<50; j++){
+ rchar = k;
+ nrchar = k;
+ rptr = &k;
+ nrptr = &k;
+ rint = k;
+ nrint = k;
+
+ if ( rchar != nrchar ) crc = 1;
+ if ( rptr != nrptr ) prc = 1;
+ if ( rint != nrint ) irc = 1;
+ k = k<<1;
+ }
+
+ if ( crc != 0 ) {
+ rc = rc+1;
+ if( pd0 -> flgd != 0 ) printf(s81er,1);
+ }
+
+ if ( prc != 0 ) {
+ rc = rc+2;
+ if( pd0 -> flgd != 0 ) printf(s81er,2);
+ }
+
+ if ( irc != 0 ) {
+ rc = rc+4;
+ if( pd0 -> flgd != 0 ) printf(s81er,4);
+ }
+
+/* Now we check to see if variables are actually being assigned
+ to registers. */
+
+ k = regc();
+ if ( pd0->flgm != 0 ) {
+ if ( k < 0 ) printf(badtest,"char");
+ else printf(goodtest,k,"char");
+ }
+
+ k = regp();
+ if ( pd0->flgm != 0 ) {
+ if ( k<0 ) printf(badtest,"pointer");
+ else printf(goodtest,k,"pointer");
+ }
+
+ k = regi();
+ if ( pd0->flgm != 0 ) {
+ if ( k<0 ) printf(badtest,"int");
+ else printf(goodtest,k,"int");
+ }
+
+ return rc;
+}
+regc() { /* char to register assignment */
+/* Testing a variable whose storage class has been spec-
+ified as "register" is somewhat tricky, but it can be done in a
+fairly reliable fashion by taking advantage of our knowledge of the
+ways in which compilers operate. If we declare a collection of vari-
+ables of the same storage class, we would expect that, when storage
+for these variables is actually allocated, the variables will be
+bunched together and ordered according to one of the following
+criteria:
+
+ (a) the order in which they were defined.
+ (b) the order in which they are used.
+ (c) alphabetically.
+ (d) the order in which they appear in the compiler's
+ symbol table.
+ (e) some other way.
+
+ Hence, if we define a sequence of variables in close alpha-
+betical order, and use them in the same order in which we define
+them, we would expect the differences between the addresses of
+successive variables to be constant, except in case (d) where the
+symbol table is a hash table, or in case (e). If a subsequence in
+the middle of this sequence is selected, and for this subsequence,
+every other variable is specified to be "register", and address
+differences are taken between adjacent nonregister variables, we would
+still expect to find constant differences if the "register" vari-
+ables were actually assigned to registers, and some other diff-
+erences if they were not. Specifically, if we had N variables
+specified as "register" of which the first n were actually ass-
+igned to registers, we would expect the sequence of differences
+to consist of a number of occurrences of some number, followed by
+N-n occurrences of some other number, followed by several occurr-
+ences of the first number. If we get a sequence like this, we can
+determine, by simple subtraction, how many (if any) variables are
+being assigned to registers. If we get some other sequence, we know
+that the test is invalid. */
+
+ char r00;
+ char r01;
+ char r02;
+ char r03;
+ register char r04;
+ char r05;
+ register char r06;
+ char r07;
+ register char r08;
+ char r09;
+ register char r10;
+ char r11;
+ register char r12;
+ char r13;
+ register char r14;
+ char r15;
+ register char r16;
+ char r17;
+ register char r18;
+ char r19;
+ register char r20;
+ char r21;
+ register char r22;
+ char r23;
+ register char r24;
+ char r25;
+ register char r26;
+ char r27;
+ register char r28;
+ char r29;
+ register char r30;
+ char r31;
+ register char r32;
+ char r33;
+ register char r34;
+ char r35;
+ char r36;
+ char r37;
+ char r38;
+
+ int s, n1, n2, nr, j, d[22];
+ r00 = 0;
+ r01 = 1;
+ r02 = 2;
+ r03 = 3;
+ r04 = 4;
+ r05 = 5;
+ r06 = 6;
+ r07 = 7;
+ r08 = 8;
+ r09 = 9;
+ r10 = 10;
+ r11 = 11;
+ r12 = 12;
+ r13 = 13;
+ r14 = 14;
+ r15 = 15;
+ r16 = 16;
+ r17 = 17;
+ r18 = 18;
+ r19 = 19;
+ r20 = 20;
+ r21 = 21;
+ r22 = 22;
+ r23 = 23;
+ r24 = 24;
+ r25 = 25;
+ r26 = 26;
+ r27 = 27;
+ r28 = 28;
+ r29 = 29;
+ r30 = 30;
+ r31 = 31;
+ r32 = 32;
+ r33 = 33;
+ r34 = 34;
+ r35 = 35;
+ r36 = 36;
+ r37 = 37;
+ r38 = 38;
+
+ d[0] = &r01 - &r00;
+ d[1] = &r02 - &r01;
+ d[2] = &r03 - &r02;
+ d[3] = &r05 - &r03;
+ d[4] = &r07 - &r05;
+ d[5] = &r09 - &r07;
+ d[6] = &r11 - &r09;
+ d[7] = &r13 - &r11;
+ d[8] = &r15 - &r13;
+ d[9] = &r17 - &r15;
+ d[10] = &r19 - &r17;
+ d[11] = &r21 - &r19;
+ d[12] = &r23 - &r21;
+ d[13] = &r25 - &r23;
+ d[14] = &r27 - &r25;
+ d[15] = &r29 - &r27;
+ d[16] = &r31 - &r29;
+ d[17] = &r33 - &r31;
+ d[18] = &r35 - &r33;
+ d[19] = &r36 - &r35;
+ d[20] = &r37 - &r36;
+ d[21] = &r38 - &r37;
+
+
+/* The following FSM analyzes the string of differences. It accepts
+strings of the form a+b+a+ and returns 16 minus the number of bs,
+which is the number of variables that actually got into registers.
+Otherwise it signals rejection by returning -1., indicating that the
+test is unreliable. */
+
+ n1 = d[0];
+ s = 1;
+
+ for (j=0; j<22; j++)
+ switch (s) {
+ case 1: if (d[j] != n1) {
+ n2 = d[j];
+ s = 2;
+ nr = 1;
+ }
+ break;
+ case 2: if (d[j] == n1) {
+ s = 3;
+ break;
+ }
+ if (d[j] == n2) {
+ nr = nr+1;
+ break;
+ }
+ s = 4;
+ break;
+ case 3: if (d[j] != n1) s = 4;
+ break;
+ }
+ ;
+
+ if (s == 3) return 16-nr;
+ else return -1;
+}
+regi() { /* int to register assignment */
+/* Testing a variable whose storage class has been spec-
+ified as "register" is somewhat tricky, but it can be done in a
+fairly reliable fashion by taking advantage of our knowledge of the
+ways in which compilers operate. If we declare a collection of vari-
+ables of the same storage class, we would expect that, when storage
+for these variables is actually allocated, the variables will be
+bunched together and ordered according to one of the following
+criteria:
+
+ (a) the order in which they were defined.
+ (b) the order in which they are used.
+ (c) alphabetically.
+ (d) the order in which they appear in the compiler's
+ symbol table.
+ (e) some other way.
+
+ Hence, if we define a sequence of variables in close alpha-
+betical order, and use them in the same order in which we define
+them, we would expect the differences between the addresses of
+successive variables to be constant, except in case (d) where the
+symbol table is a hash table, or in case (e). If a subsequence in
+the middle of this sequence is selected, and for this subsequence,
+every other variable is specified to be "register", and address
+differences are taken between adjacent nonregister variables, we would
+still expect to find constant differences if the "register" vari-
+ables were actually assigned to registers, and some other diff-
+erences if they were not. Specifically, if we had N variables
+specified as "register" of which the first n were actually ass-
+igned to registers, we would expect the sequence of differences
+to consist of a number of occurrences of some number, followed by
+N-n occurrences of some other number, followed by several occurr-
+ences of the first number. If we get a sequence like this, we can
+determine, by simple subtraction, how many (if any) variables are
+being assigned to registers. If we get some other sequence, we know
+that the test is invalid. */
+
+
+ int r00;
+ int r01;
+ int r02;
+ int r03;
+ register int r04;
+ int r05;
+ register int r06;
+ int r07;
+ register int r08;
+ int r09;
+ register int r10;
+ int r11;
+ register int r12;
+ int r13;
+ register int r14;
+ int r15;
+ register int r16;
+ int r17;
+ register int r18;
+ int r19;
+ register int r20;
+ int r21;
+ register int r22;
+ int r23;
+ register int r24;
+ int r25;
+ register int r26;
+ int r27;
+ register int r28;
+ int r29;
+ register int r30;
+ int r31;
+ register int r32;
+ int r33;
+ register int r34;
+ int r35;
+ int r36;
+ int r37;
+ int r38;
+
+ int s, n1, n2, nr, j, d[22];
+
+ r00 = 0;
+ r01 = 1;
+ r02 = 2;
+ r03 = 3;
+ r04 = 4;
+ r05 = 5;
+ r06 = 6;
+ r07 = 7;
+ r08 = 8;
+ r09 = 9;
+ r10 = 10;
+ r11 = 11;
+ r12 = 12;
+ r13 = 13;
+ r14 = 14;
+ r15 = 15;
+ r16 = 16;
+ r17 = 17;
+ r18 = 18;
+ r19 = 19;
+ r20 = 20;
+ r21 = 21;
+ r22 = 22;
+ r23 = 23;
+ r24 = 24;
+ r25 = 25;
+ r26 = 26;
+ r27 = 27;
+ r28 = 28;
+ r29 = 29;
+ r30 = 30;
+ r31 = 31;
+ r32 = 32;
+ r33 = 33;
+ r34 = 34;
+ r35 = 35;
+ r36 = 36;
+ r37 = 37;
+ r38 = 38;
+
+ d[0] = &r01 - &r00;
+ d[1] = &r02 - &r01;
+ d[2] = &r03 - &r02;
+ d[3] = &r05 - &r03;
+ d[4] = &r07 - &r05;
+ d[5] = &r09 - &r07;
+ d[6] = &r11 - &r09;
+ d[7] = &r13 - &r11;
+ d[8] = &r15 - &r13;
+ d[9] = &r17 - &r15;
+ d[10] = &r19 - &r17;
+ d[11] = &r21 - &r19;
+ d[12] = &r23 - &r21;
+ d[13] = &r25 - &r23;
+ d[14] = &r27 - &r25;
+ d[15] = &r29 - &r27;
+ d[16] = &r31 - &r29;
+ d[17] = &r33 - &r31;
+ d[18] = &r35 - &r33;
+ d[19] = &r36 - &r35;
+ d[20] = &r37 - &r36;
+ d[21] = &r38 - &r37;
+
+
+/* The following FSM analyzes the string of differences. It accepts
+strings of the form a+b+a+ and returns 16 minus the number of bs,
+which is the number of variables that actually got into registers.
+Otherwise it signals rejection by returning -1., indicating that the
+test is unreliable. */
+
+ n1 = d[0];
+ s = 1;
+
+ for (j=0; j<22; j++)
+ switch (s) {
+ case 1: if (d[j] != n1) {
+ n2 = d[j];
+ s = 2;
+ nr = 1;
+ }
+ break;
+ case 2: if (d[j] == n1) {
+ s = 3;
+ break;
+ }
+ if (d[j] == n2) {
+ nr = nr+1;
+ break;
+ }
+ s = 4;
+ break;
+ case 3: if (d[j] != n1) s = 4;
+ break;
+ }
+ ;
+
+ if (s == 3) return 16-nr;
+ else return -1;
+}
+regp() { /* pointer to register assignment */
+/* Testing a variable whose storage class has been spec-
+ified as "register" is somewhat tricky, but it can be done in a
+fairly reliable fashion by taking advantage of our knowledge of the
+ways in which compilers operate. If we declare a collection of vari-
+ables of the same storage class, we would expect that, when storage
+for these variables is actually allocated, the variables will be
+bunched together and ordered according to one of the following
+criteria:
+
+ (a) the order in which they were defined.
+ (b) the order in which they are used.
+ (c) alphabetically.
+ (d) the order in which they appear in the compiler's
+ symbol table.
+ (e) some other way.
+
+ Hence, if we define a sequence of variables in close alpha-
+betical order, and use them in the same order in which we define
+them, we would expect the differences between the addresses of
+successive variables to be constant, except in case (d) where the
+symbol table is a hash table, or in case (e). If a subsequence in
+the middle of this sequence is selected, and for this subsequence,
+every other variable is specified to be "register", and address
+differences are taken between adjacent nonregister variables, we would
+still expect to find constant differences if the "register" vari-
+ables were actually assigned to registers, and some other diff-
+erences if they were not. Specifically, if we had N variables
+specified as "register" of which the first n were actually ass-
+igned to registers, we would expect the sequence of differences
+to consist of a number of occurrences of some number, followed by
+N-n occurrences of some other number, followed by several occurr-
+ences of the first number. If we get a sequence like this, we can
+determine, by simple subtraction, how many (if any) variables are
+being assigned to registers. If we get some other sequence, we know
+that the test is invalid. */
+
+
+ int *r00;
+ int *r01;
+ int *r02;
+ int *r03;
+ register int *r04;
+ int *r05;
+ register int *r06;
+ int *r07;
+ register int *r08;
+ int *r09;
+ register int *r10;
+ int *r11;
+ register int *r12;
+ int *r13;
+ register int *r14;
+ int *r15;
+ register int *r16;
+ int *r17;
+ register int *r18;
+ int *r19;
+ register int *r20;
+ int *r21;
+ register int *r22;
+ int *r23;
+ register int *r24;
+ int *r25;
+ register int *r26;
+ int *r27;
+ register int *r28;
+ int *r29;
+ register int *r30;
+ int *r31;
+ register int *r32;
+ int *r33;
+ register int *r34;
+ int *r35;
+ int *r36;
+ int *r37;
+ int *r38;
+
+ int s, n1, n2, nr, j, d[22];
+
+ r00 = (int *)&r00;
+ r01 = (int *)&r01;
+ r02 = (int *)&r02;
+ r03 = (int *)&r03;
+ r04 = (int *)&r05;
+ r05 = (int *)&r05;
+ r06 = (int *)&r07;
+ r07 = (int *)&r07;
+ r08 = (int *)&r09;
+ r09 = (int *)&r09;
+ r10 = (int *)&r11;
+ r11 = (int *)&r11;
+ r12 = (int *)&r13;
+ r13 = (int *)&r13;
+ r14 = (int *)&r15;
+ r15 = (int *)&r15;
+ r16 = (int *)&r17;
+ r17 = (int *)&r17;
+ r18 = (int *)&r19;
+ r19 = (int *)&r19;
+ r20 = (int *)&r21;
+ r21 = (int *)&r21;
+ r22 = (int *)&r23;
+ r23 = (int *)&r23;
+ r24 = (int *)&r25;
+ r25 = (int *)&r25;
+ r26 = (int *)&r27;
+ r27 = (int *)&r27;
+ r28 = (int *)&r29;
+ r29 = (int *)&r29;
+ r30 = (int *)&r31;
+ r31 = (int *)&r31;
+ r32 = (int *)&r33;
+ r33 = (int *)&r33;
+ r34 = (int *)&r35;
+ r35 = (int *)&r35;
+ r36 = (int *)&r36;
+ r37 = (int *)&r37;
+ r38 = (int *)&r38;
+
+ d[0] = &r01 - &r00;
+ d[1] = &r02 - &r01;
+ d[2] = &r03 - &r02;
+ d[3] = &r05 - &r03;
+ d[4] = &r07 - &r05;
+ d[5] = &r09 - &r07;
+ d[6] = &r11 - &r09;
+ d[7] = &r13 - &r11;
+ d[8] = &r15 - &r13;
+ d[9] = &r17 - &r15;
+ d[10] = &r19 - &r17;
+ d[11] = &r21 - &r19;
+ d[12] = &r23 - &r21;
+ d[13] = &r25 - &r23;
+ d[14] = &r27 - &r25;
+ d[15] = &r29 - &r27;
+ d[16] = &r31 - &r29;
+ d[17] = &r33 - &r31;
+ d[18] = &r35 - &r33;
+ d[19] = &r36 - &r35;
+ d[20] = &r37 - &r36;
+ d[21] = &r38 - &r37;
+
+
+/* The following FSM analyzes the string of differences. It accepts
+strings of the form a+b+a+ and returns 16 minus the number of bs,
+which is the number of variables that actually got into registers.
+Otherwise it signals rejection by returning -1., indicating that the
+test is unreliable. */
+
+ n1 = d[0];
+ s = 1;
+ for (j=0; j<22; j++)
+ switch (s) {
+ case 1: if (d[j] != n1) {
+ n2 = d[j];
+ s = 2;
+ nr = 1;
+ }
+ break;
+ case 2: if (d[j] == n1) {
+ s = 3;
+ break;
+ }
+ if (d[j] == n2) {
+ nr = nr+1;
+ break;
+ }
+ s = 4;
+ break;
+ case 3: if (d[j] != n1) s = 4;
+ break;
+ }
+ ;
+
+ if (s == 3) return 16-nr;
+ else return -1;
+}
+s84(pd0) /* 8.4 Meaning of declarators */
+struct defs *pd0;
+{
+ int *ip, i, *fip(), (*pfi)(), j, k, array(), glork();
+ static int x3d[3][5][7];
+ float fa[17], *afp[17], sum;
+ static char s84er[] = "s84,er%d\n";
+ static char qs84[8] = "s84 ";
+ int rc;
+ char *ps, *pt;
+ ps = qs84;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+ /* The more common varieties of declarators have al-
+ ready been touched upon, some more than others. It
+ is useful to compare *fip() and (*pfi)().
+ */
+
+ ip = fip(3);
+ if(*ip != 3){
+ if(pd0->flgd != 0) printf(s84er,1);
+ rc = rc+1;
+ }
+
+ pfi = glork;
+ if((*pfi)(4) != 4){
+ if(pd0->flgd != 0) printf(s84er,2);
+ rc = rc+2;
+ }
+
+ /* Float fa[17] declares an array of floating point
+ numbers, and *afp[17] declares an array of pointers
+ to floats.
+ */
+
+ for(j=0; j<17; j++){
+ fa[j] = j;
+ afp[j] = &fa[j];
+ }
+
+ sum = 0.;
+ for(j=0; j<17; j++) sum += *afp[j];
+ if(sum != 136){
+ if(pd0->flgd != 0) printf(s84er,4);
+ rc = rc+4;
+ }
+
+ /* static int x3d[3][5][7] declares a static three
+ dimensional array of integers, with rank 3x5x7.
+ In complete detail, x3d is an array of three items;
+ each item is an array of five arrays, and each of
+ the latter arrays is an array of seven integers.
+ Any of the expressions x3d, x3d[i], x3d[i][j],
+ and x3d[i][j][k] may reasonably appear in an express-
+ ion. The first three have type "array"; the last has
+ type int.
+ */
+
+ for (i=0; i<3; i++)
+ for (j=0; j<5; j++)
+ for (k=0; k<7; k++)
+ x3d[i][j][k] = i*35+j*7+k;
+
+ i = 1; j = 2; k = 3;
+
+ if( array(x3d,105,0)
+ +array(x3d[i],35,35)
+ +array(x3d[i][j],7,49)
+ + x3d[i][j][k]-52){
+
+ if(pd0->flgd != 0) printf(s84er,8);
+ rc = rc+8;
+ }
+
+ return rc;
+}
+array(a,size,start)
+int a[], size, start;
+{
+ int i;
+ for(i=0; i<size; i++)
+ if(a[i] != i+start) return 1;
+
+ return 0;
+}
+int *fip(x)
+int x;
+{
+ static int y;
+ y = x;
+ return &y;
+}
+glork(x)
+int x;
+{return x;}
+s85(pd0) /* 8.5 Structure and union declarations */
+struct defs *pd0;
+{
+ static char s85er[] = "s85,er%d\n";
+ static char qs85[8] = "s85 ";
+ int rc;
+ char *ps, *pt;
+
+ struct tnode {
+ char tword[20];
+ int count;
+ struct tnode *left;
+ struct tnode *right;
+ };
+
+ struct tnode s1, s2, *sp;
+
+ struct{
+ char cdummy;
+ char c;
+ } sc;
+
+ struct{
+ char cdummy;
+ short s;
+ } ss;
+
+ struct{
+ char cdummy;
+ int i;
+ } si;
+
+ struct{
+ char cdummy;
+ long l;
+ } sl;
+
+ struct{
+ char cdummy;
+ unsigned u;
+ } su;
+
+ struct{
+ char cdummy;
+ float f;
+ } sf;
+
+ struct{
+ char cdummy;
+ double d;
+ } sd;
+
+ int diff[7], j;
+
+ static char *type[] = {
+ "char",
+ "short",
+ "int",
+ "long",
+ "unsigned",
+ "float",
+ "double"
+ };
+
+ static char aln[] = " alignment: ";
+
+ struct{
+ int twobit:2;
+ int :1;
+ int threebit:3;
+ int onebit:1;
+ } s3;
+
+ union{
+ char u1[30];
+ short u2[30];
+ int u3[30];
+ long u4[30];
+ unsigned u5[30];
+ float u6[30];
+ double u7[30];
+ } u0;
+
+ ps = qs85;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+ /* Within a structure, the objects declared have
+ addresses which increase as their declarations are
+ read left to right.
+ */
+
+ if( (char *)&s1.count - &s1.tword[0] <= 0
+ ||(char *)&s1.left - (char *)&s1.count <= 0
+ ||(char *)&s1.right - (char *)&s1.left <= 0){
+ if(pd0->flgd != 0) printf(s85er,1);
+ rc = rc+1;
+ }
+
+ /* Each non-field member of a structure begins on an
+ addressing boundary appropriate to its type.
+ */
+
+ diff[0] = &sc.c - &sc.cdummy;
+ diff[1] = (char *)&ss.s - &ss.cdummy;
+ diff[2] = (char *)&si.i - &si.cdummy;
+ diff[3] = (char *)&sl.l - &sl.cdummy;
+ diff[4] = (char *)&su.u - &su.cdummy;
+ diff[5] = (char *)&sf.f - &sf.cdummy;
+ diff[6] = (char *)&sd.d - &sd.cdummy;
+
+ if(pd0->flgm != 0)
+ for(j=0; j<7; j++)
+ printf("%s%s%d\n",type[j],aln,diff[j]);
+
+ /* Field specifications are highly implementation de-
+ pendent. About the only thing we can do here is to
+ check is that the compiler accepts the field constructs,
+ and that they seem to work, after a fashion, at
+ run time...
+ */
+
+ s3.threebit = 7;
+ s3.twobit = s3.threebit;
+ s3.threebit = s3.twobit;
+
+ if(s3.threebit != 3){
+ if(s3.threebit == -1){
+ if(pd0->flgm != 0) printf("Sign extension in fields\n");
+ }
+ else{
+ if(pd0->flgd != 0) printf(s85er,2);
+ rc = rc+2;
+ }
+ }
+
+ s3.onebit = 1;
+ if(s3.onebit != 1){
+ if(pd0->flgm != 0)
+ printf("Be especially careful with 1-bit fields!\n");
+ }
+
+ /* A union may be thought of as a structure all of whose
+ members begin at offset 0 and whose size is sufficient
+ to contain any of its members.
+ */
+
+ if( (char *)u0.u1 - (char *)&u0 != 0
+ ||(char *)u0.u2 - (char *)&u0 != 0
+ ||(char *)u0.u3 - (char *)&u0 != 0
+ ||(char *)u0.u4 - (char *)&u0 != 0
+ ||(char *)u0.u5 - (char *)&u0 != 0
+ ||(char *)u0.u6 - (char *)&u0 != 0
+ ||(char *)u0.u7 - (char *)&u0 != 0){
+
+ if(pd0->flgd != 0) printf(s85er,4);
+ rc = rc+4;
+ }
+
+ if( sizeof u0 < sizeof u0.u1
+ ||sizeof u0 < sizeof u0.u2
+ ||sizeof u0 < sizeof u0.u3
+ ||sizeof u0 < sizeof u0.u4
+ ||sizeof u0 < sizeof u0.u5
+ ||sizeof u0 < sizeof u0.u6
+ ||sizeof u0 < sizeof u0.u7){
+
+ if(pd0->flgd != 0) printf(s85er,8);
+ rc = rc+8;
+ }
+
+ /* Finally, we check that the pointers work. */
+
+ s1.right = &s2;
+ s2.tword[0] = 2;
+ s1.right->tword[0] += 1;
+ if(s2.tword[0] != 3){
+ if(pd0->flgd != 0) printf(s85er,16);
+ rc = rc+16;
+ }
+ return rc;
+}
+s86(pd0) /* 8.6 Initialization */
+struct defs *pd0;
+{
+ static char s86er[] = "s86,er%d\n";
+ static char qs86[8] = "s86 ";
+ int lrc, rc;
+ char *ps, *pt;
+ int one(), i, j, k;
+ static int x[] = {1,3,5};
+ static int *pint = x+2;
+ static int zero[10];
+ int *apint = pint-1;
+ register int *rpint = apint+one();
+ static float y0[] = {1,3,5,2,4,6,3,5,7,0,0,0};
+ static float y1[4][3] = {
+ {1,3,5},
+ {2,4,6},
+ {3,5,7},
+ };
+ static float y2[4][3] = {1,3,5,2,4,6,3,5,7};
+ static float y3[4][3] = {
+ {1},{2},{3},{4}
+ };
+ ps = qs86;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+ /* The expression in an initializer for a static or
+ external variable must be a constant expression or
+ an expression that reduces to the address of a pre-
+ viously declared variable, possibly offset by a
+ constant expression.
+ */
+
+ if(*pint != 5){
+ if(pd0->flgd != 0) printf(s86er,1);
+ rc = rc+1;
+ }
+
+ /* Automatic and register variables may be initialized
+ by arbitrary expressions involving constants and previously
+ declared variables and functions.
+ */
+
+ if(*apint != 3){
+ if(pd0->flgd != 0) printf(s86er,2);
+ rc = rc+2;
+ }
+
+ if(*rpint != 5){
+ if(pd0->flgd != 0) printf(s86er,4);
+ rc = rc+4;
+ }
+
+ /* Static variables that are not initialized are guar-
+ anteed to start off as zero.
+ */
+
+ lrc = 0;
+ for(j=0; j<10; j++)
+ if(zero[j] != 0) lrc = 1;
+ if(lrc != 0){
+ if(pd0->flgd != 0) printf(s86er,8);
+ rc = rc+8;
+ }
+
+ /* y0, y1, and y2, as declared, should define and
+ initialize identical arrays.
+ */
+ lrc = 0;
+ for(i=0; i<4; i++)
+ for(j=0; j<3; j++){
+ k = 3*i+j;
+ if( y1[i][j] != y2[i][j]
+ ||y1[i][j] != y0[k]) lrc = 1;
+ }
+
+ if(lrc != 0){
+ if(pd0->flgd != 0) printf(s86er,16);
+ rc = rc+16;
+ }
+
+ /* y3 initializes the first column of the array and
+ leaves the rest zero.
+ */
+
+ lrc = 0;
+ for(j=0; j<4; j++) if(y3[j][0] != j+1) lrc = 1;
+
+ if(lrc != 0){
+ if(pd0->flgd != 0) printf(s86er,32);
+ rc = rc+32;
+ }
+ return rc;
+}
+one(){
+ return 1;
+}
+int *metricp;
+s88(pd0) /* 8.8 Typedef */
+struct defs *pd0;
+{
+ static char s88er[] = "s88,er%d\n";
+ static char qs88[8] = "s88 ";
+ int rc;
+ char *ps, *pt;
+
+ /* Declarations whose "storage class" is typdef do not
+ define storage, but instead define identifiers which
+ can later be used as if they were type keywords naming
+ fundamental or derived types.
+ */
+
+ typedef int MILES, *KLICKSP;
+ typedef struct {double re, im;} complex;
+
+ MILES distance;
+ extern KLICKSP metricp;
+ complex z, *zp;
+
+ ps = qs88;
+ pt = pd0->rfs;
+ rc = 0;
+ while(*pt++ = *ps++);
+
+ /* Hopefully, all of this stuff will compile. After that,
+ we can only make some superficial tests.
+
+ The type of distance is int,
+ */
+
+ if(sizeof distance != sizeof(int)){
+ if(pd0->flgd != 0) printf(s88er,1);
+ rc = rc+1;
+ }
+
+ /* that of metricp is "pointer to int", */
+
+ metricp = &distance;
+ distance = 2;
+ *metricp = 3;
+
+ if(distance != 3){
+ if(pd0->flgd != 0) printf(s88er,2);
+ rc = rc+2;
+ }
+
+ /* and that of z is the specified structure. zp is a
+ pointer to such a structure.
+ */
+
+ z.re = 0.;
+ z.im = 0.;
+ zp = &z;
+ zp->re = 1.;
+ zp->im = 1.;
+ if(z.re+z.im != 2.){
+ if(pd0->flgd != 0) printf(s88er,4);
+ rc = rc+4;
+ }
+
+ return rc;
+}
+s9(pd0) /* 9 Statements */
+struct defs *pd0;
+{
+ static char s9er[] = "s9,er%d\n";
+ static char qs9[8] = "s9 ";
+ int rc;
+ char *ps, *pt;
+ int lrc, i;
+
+ ps = qs9;
+ pt = pd0->rfs;
+ rc = 0;
+ while (*pt++ = *ps++);
+
+ /* One would think that the section on statements would
+ provide the most variety in the entire sequence of tests.
+ As it turns out, most of the material in this section has
+ already been checked in the process of checking out
+ everything else, and the section at this point is somewhat
+ anticlimactic. For this reason, we restrict ourselves
+ to testing two features not already covered.
+
+ Compound statements are delimited by braces. They have the
+ nice property that identifiers of the auto and register
+ variety are pushed and popped. It is currently legal to
+ transfer into a block, but we wont...
+ */
+
+ lrc = 0;
+ for(i=0; i<2; i++){
+ int j;
+ register int k;
+ j = k = 2;
+ {
+ int j;
+ register int k;
+ j = k = 3;
+ if((j != 3) || (k != 3)) lrc = 1;
+ }
+ if((j != 2) || (k != 2)) lrc = 1;
+ }
+
+ if(lrc != 0){
+ if(pd0->flgd != 0) printf(s9er,1);
+ rc = rc+1;
+ }
+
+ /* Goto statements go to labeled statements, we hope. */
+
+ goto nobarf;
+ if(pd0->flgd != 0) printf(s9er,2);
+ rc = rc+2;
+ nobarf:;
+
+ return rc;
+}
+setev(){ /* Sets an external variable. Used */
+ extern int extvar; /* by s4, and should be compiled */
+ extvar = 1066; /* separately from s4. */
+}
+ int lbits; /* long */
+ int ubits; /* unsigned */
+ int fbits; /* float */
+ int dbits; /* double */
+ float fprec; /* Smallest number that can be */
+ float dprec; /* significantly added to 1. */
+ int flgs; /* Print return codes, by section */
+ int flgm; /* Announce machine dependencies */
+ int flgd; /* give explicit diagnostics */
+ int flgl; /* Report local return codes. */
+ int rrc; /* recent return code */
+ int crc; /* Cumulative return code */
+ char rfs[8]; /* Return from section */
diff --git a/lcc/tst/cvt.c b/lcc/tst/cvt.c
index 4fb7186..c2fa515 100755
--- a/lcc/tst/cvt.c
+++ b/lcc/tst/cvt.c
@@ -1,35 +1,35 @@
-signed char c;
-signed short s;
-signed int i;
-signed long int l;
-unsigned char C;
-unsigned short S;
-unsigned int I;
-unsigned long int L;
-float f;
-double d;
-long double D;
-void *p;
-void (*P)(void);
-
-void print(void) {
- printf("%d %d %d %ld %u %u %u %lu %f %f %lf\n",c,s,i,l,C,S,I,L,f,d,D);
-}
-
-main() {
- c= 1; s=c;i=c;l=c;C=c;S=c;I=c;L=c;f=c;d=c;D=c; print();
- s= 2; c=s; i=s;l=s;C=s;S=s;I=s;L=s;f=s;d=s;D=s; print();
- i= 3; c=i;s=i; l=i;C=i;S=i;I=i;L=i;f=i;d=i;D=i; print();
- l= 4; c=l;s=l;i=l; C=l;S=l;I=l;L=l;f=l;d=l;D=l; print();
- C= 5; c=C;s=C;i=C;l=C; S=C;I=C;L=C;f=C;d=C;D=C; print();
- S= 6; c=S;s=S;i=S;l=S;C=S; I=S;L=S;f=S;d=S;D=S; print();
- I= 7; c=I;s=I;i=I;l=I;C=I;S=I; L=I;f=I;d=I;D=I; print();
- L= 8; c=L;s=L;i=L;l=L;C=L;S=L;I=S; f=L;d=L;D=L; print();
- f= 9; c=f;s=f;i=f;l=f;C=f;S=f;I=f;L=f; d=f;D=f; print();
- d=10; c=d;s=d;i=d;l=d;C=d;S=d;I=d;L=d;f=d; D=d; print();
- D=11; c=D;s=D;i=D;l=D;C=D;S=D;I=D;L=D;f=D;d=D; print();
-
- p=0; p=0L; p=0U; p=0UL; p=P;
- P=0; P=0L; P=0U; P=0UL; P=p;
- return 0;
-}
+signed char c;
+signed short s;
+signed int i;
+signed long int l;
+unsigned char C;
+unsigned short S;
+unsigned int I;
+unsigned long int L;
+float f;
+double d;
+long double D;
+void *p;
+void (*P)(void);
+
+void print(void) {
+ printf("%d %d %d %ld %u %u %u %lu %f %f %lf\n",c,s,i,l,C,S,I,L,f,d,D);
+}
+
+main() {
+ c= 1; s=c;i=c;l=c;C=c;S=c;I=c;L=c;f=c;d=c;D=c; print();
+ s= 2; c=s; i=s;l=s;C=s;S=s;I=s;L=s;f=s;d=s;D=s; print();
+ i= 3; c=i;s=i; l=i;C=i;S=i;I=i;L=i;f=i;d=i;D=i; print();
+ l= 4; c=l;s=l;i=l; C=l;S=l;I=l;L=l;f=l;d=l;D=l; print();
+ C= 5; c=C;s=C;i=C;l=C; S=C;I=C;L=C;f=C;d=C;D=C; print();
+ S= 6; c=S;s=S;i=S;l=S;C=S; I=S;L=S;f=S;d=S;D=S; print();
+ I= 7; c=I;s=I;i=I;l=I;C=I;S=I; L=I;f=I;d=I;D=I; print();
+ L= 8; c=L;s=L;i=L;l=L;C=L;S=L;I=S; f=L;d=L;D=L; print();
+ f= 9; c=f;s=f;i=f;l=f;C=f;S=f;I=f;L=f; d=f;D=f; print();
+ d=10; c=d;s=d;i=d;l=d;C=d;S=d;I=d;L=d;f=d; D=d; print();
+ D=11; c=D;s=D;i=D;l=D;C=D;S=D;I=D;L=D;f=D;d=D; print();
+
+ p=0; p=0L; p=0U; p=0UL; p=P;
+ P=0; P=0L; P=0U; P=0UL; P=p;
+ return 0;
+}
diff --git a/lcc/tst/fields.c b/lcc/tst/fields.c
index 658f4f6..242a53b 100755
--- a/lcc/tst/fields.c
+++ b/lcc/tst/fields.c
@@ -1,34 +1,34 @@
-struct foo {
- int a;
- char b;
- int x : 12, y : 4, : 0, : 4, z : 3;
- char c;
-} x = { 1, 2, 3, 4, 5, 6 };
-int i = 16;
-struct baz { unsigned int a:2, b:4, c:32;} y = { 7, 8, 9};
-
-main()
-{
- printf("x = %d %d %d %d %d %d\n", x.a, x.b, x.x, x.y, x.z, x.c);
- printf("y = %d %d %d\n", y.a, y.b, y.c);
- x.y = i;
- x.z = 070;
- printf("x = %d %d %d %d %d %d\n", x.a, x.b, x.x, x.y, x.z, x.c);
- y.a = 2;
- y.c = i;
- printf("y = %d %d %d\n", y.a, y.b, y.c);
- f2(&x);
- return 0;
-}
-
-f1(struct baz *p) {
- p->a = p->b = 0;
- if (p->b)
- printf("p->b != 0!\n");
- p->a = 0x3; p->b = 0xf;
- printf("p->a = 0x%x, p->b = 0x%x\n", p->a, p->b);
-}
-f2(struct baz *p) {
- p->a = (i==0);
- p->b = (f1(p),0);
-}
+struct foo {
+ int a;
+ char b;
+ int x : 12, y : 4, : 0, : 4, z : 3;
+ char c;
+} x = { 1, 2, 3, 4, 5, 6 };
+int i = 16;
+struct baz { unsigned int a:2, b:4, c:32;} y = { 7, 8, 9};
+
+main()
+{
+ printf("x = %d %d %d %d %d %d\n", x.a, x.b, x.x, x.y, x.z, x.c);
+ printf("y = %d %d %d\n", y.a, y.b, y.c);
+ x.y = i;
+ x.z = 070;
+ printf("x = %d %d %d %d %d %d\n", x.a, x.b, x.x, x.y, x.z, x.c);
+ y.a = 2;
+ y.c = i;
+ printf("y = %d %d %d\n", y.a, y.b, y.c);
+ f2(&x);
+ return 0;
+}
+
+f1(struct baz *p) {
+ p->a = p->b = 0;
+ if (p->b)
+ printf("p->b != 0!\n");
+ p->a = 0x3; p->b = 0xf;
+ printf("p->a = 0x%x, p->b = 0x%x\n", p->a, p->b);
+}
+f2(struct baz *p) {
+ p->a = (i==0);
+ p->b = (f1(p),0);
+}
diff --git a/lcc/tst/front.c b/lcc/tst/front.c
index 0ce8ae7..13125cf 100755
--- a/lcc/tst/front.c
+++ b/lcc/tst/front.c
@@ -1,120 +1,120 @@
-main() {
- exit(0);
-}
-
-nested(a,b) {
- if ((a<4 && b == 'r')
- || (a == 1 && (b == 'h' || b == 'i'))
- || (a == 2 && (b == 'o' || b == 'y'))
- ) a=b;
-}
-
-/* type name scope */
-
-void s(struct D *d) {} /* this struct D differs from the one below */
-typedef struct D D;
-struct D {int x, y;} Dy={0};
-D Dz={1};
-Dfunc(){
- D a; a.y=1;
- s(&Dy); /* error */
-}
-
-/* qualifiers */
-
-const a; int b;
-const int a, *x; int b, *y;
-volatile unsigned z;
-
-f() {
- x = y;
- z = z + z; /* should be 2 references to z's r-value */
-}
-f1() {
- x = &a;
- x = &b;
- y = &a; /* error */
- y = &b;
-}
-f2(int **a, int **b) {
- f(&x, &y);
- **a = 0;
- return **b;
-}
-g(const int *p) {
- g(&a);
- g(&b);
- return *p;
-}
-h(int *p) {
- f(&a);
- f(&b);
- return *p;
-}
-h1(const int x, int y) {
- h1(a,b);
- h1(b,a);
- return x + y;
-}
-h2() {
- char *b; const void *p;
- p = b;
- b = p; /* error */
-}
-
-
-/* static naming */
-
-extern int yy; set1() { { static yy=1; yy=2;} yy=4;}
-static int yy; set2() { yy=5; {static yy=2; yy=3; }}
-static void goo() {}
-sss() { int goo; { static int goo();} goo=1;}
-rrr(p) float *p; { extern int xr;
- { static float xr;
- { extern int *xr; } p=&xr; }}
-
-/* local extern */
-
-static int ss1;
-int ss3;
-extern int ss5;
-setstatic() { extern int ss1,ss2,ss3,ss4; ss1 = ss2; ss3 = ss4; ss5 = 0;}
-static int ss2;
-int ss4;
-static int ss5;
-
-/* function prototypes */
-
-int fx1(void);
-int fx1();
-
-int gx1(double x);
-int gx1(x) double x; { gx1(&x); } /* error */
-
-int hx1();
-int hx1(double x,...); /* error */
-
-int ff1(double x, int *y);
-int ff1(x,y) float x; int y[]; {x=y[0];}
-
-int gg1(int a);
-int gg1(a,b){a=b;}
-
-int hh1(const int x);
-hh1(a) {return a;}
-
-extern int strcmp(const char*, const char*);
-extern void qsort(void*, int, int, int (*)(const void*, const void*));
-extern int cmp(char**a, char**b) { return strcmp(*a,*b); }
-sort() {
- int n; char *a[100];
- qsort(a, n, sizeof(char*), (int (*)(const void*, const void*))cmp);
- qsort(a, n, sizeof(char*), cmp); /* error */
-}
-
-/* nasty calls */
-
-onearg(){
- int a,b,c,d;
- f( ( (a? (b = 1): (c = 2)), (d ? 3 : 4) ) ); /* 1 argument */
-}
+main() {
+ exit(0);
+}
+
+nested(a,b) {
+ if ((a<4 && b == 'r')
+ || (a == 1 && (b == 'h' || b == 'i'))
+ || (a == 2 && (b == 'o' || b == 'y'))
+ ) a=b;
+}
+
+/* type name scope */
+
+void s(struct D *d) {} /* this struct D differs from the one below */
+typedef struct D D;
+struct D {int x, y;} Dy={0};
+D Dz={1};
+Dfunc(){
+ D a; a.y=1;
+ s(&Dy); /* error */
+}
+
+/* qualifiers */
+
+const a; int b;
+const int a, *x; int b, *y;
+volatile unsigned z;
+
+f() {
+ x = y;
+ z = z + z; /* should be 2 references to z's r-value */
+}
+f1() {
+ x = &a;
+ x = &b;
+ y = &a; /* error */
+ y = &b;
+}
+f2(int **a, int **b) {
+ f(&x, &y);
+ **a = 0;
+ return **b;
+}
+g(const int *p) {
+ g(&a);
+ g(&b);
+ return *p;
+}
+h(int *p) {
+ f(&a);
+ f(&b);
+ return *p;
+}
+h1(const int x, int y) {
+ h1(a,b);
+ h1(b,a);
+ return x + y;
+}
+h2() {
+ char *b; const void *p;
+ p = b;
+ b = p; /* error */
+}
+
+
+/* static naming */
+
+extern int yy; set1() { { static yy=1; yy=2;} yy=4;}
+static int yy; set2() { yy=5; {static yy=2; yy=3; }}
+static void goo() {}
+sss() { int goo; { static int goo();} goo=1;}
+rrr(p) float *p; { extern int xr;
+ { static float xr;
+ { extern int *xr; } p=&xr; }}
+
+/* local extern */
+
+static int ss1;
+int ss3;
+extern int ss5;
+setstatic() { extern int ss1,ss2,ss3,ss4; ss1 = ss2; ss3 = ss4; ss5 = 0;}
+static int ss2;
+int ss4;
+static int ss5;
+
+/* function prototypes */
+
+int fx1(void);
+int fx1();
+
+int gx1(double x);
+int gx1(x) double x; { gx1(&x); } /* error */
+
+int hx1();
+int hx1(double x,...); /* error */
+
+int ff1(double x, int *y);
+int ff1(x,y) float x; int y[]; {x=y[0];}
+
+int gg1(int a);
+int gg1(a,b){a=b;}
+
+int hh1(const int x);
+hh1(a) {return a;}
+
+extern int strcmp(const char*, const char*);
+extern void qsort(void*, int, int, int (*)(const void*, const void*));
+extern int cmp(char**a, char**b) { return strcmp(*a,*b); }
+sort() {
+ int n; char *a[100];
+ qsort(a, n, sizeof(char*), (int (*)(const void*, const void*))cmp);
+ qsort(a, n, sizeof(char*), cmp); /* error */
+}
+
+/* nasty calls */
+
+onearg(){
+ int a,b,c,d;
+ f( ( (a? (b = 1): (c = 2)), (d ? 3 : 4) ) ); /* 1 argument */
+}
diff --git a/lcc/tst/incr.c b/lcc/tst/incr.c
index d3d6144..7af89c6 100755
--- a/lcc/tst/incr.c
+++ b/lcc/tst/incr.c
@@ -1,39 +1,39 @@
-main() {}
-
-memchar() {
- char x, *p;
-
- &x, &p;
- x = *p++;
- x = *++p;
- x = *p--;
- x = *--p;
-}
-
-memint() {
- int x, *p;
-
- &x, &p;
- x = *p++;
- x = *++p;
- x = *p--;
- x = *--p;
-}
-
-regchar() {
- register char x, *p;
-
- x = *p++;
- x = *++p;
- x = *p--;
- x = *--p;
-}
-
-regint() {
- register int x, *p;
-
- x = *p++;
- x = *++p;
- x = *p--;
- x = *--p;
-}
+main() {}
+
+memchar() {
+ char x, *p;
+
+ &x, &p;
+ x = *p++;
+ x = *++p;
+ x = *p--;
+ x = *--p;
+}
+
+memint() {
+ int x, *p;
+
+ &x, &p;
+ x = *p++;
+ x = *++p;
+ x = *p--;
+ x = *--p;
+}
+
+regchar() {
+ register char x, *p;
+
+ x = *p++;
+ x = *++p;
+ x = *p--;
+ x = *--p;
+}
+
+regint() {
+ register int x, *p;
+
+ x = *p++;
+ x = *++p;
+ x = *p--;
+ x = *--p;
+}
diff --git a/lcc/tst/init.c b/lcc/tst/init.c
index 310c707..55cece3 100755
--- a/lcc/tst/init.c
+++ b/lcc/tst/init.c
@@ -1,59 +1,59 @@
-
-typedef struct { int codes[3]; char name[6]; } Word;
-
-Word words[] = {
- 1, 2, 3, "if",
- { { 4, 5 }, { 'f', 'o', 'r' } },
- 6, 7, 8, {"else"},
- { { 9, 10, 11,}, 'w', 'h', 'i', 'l', 'e', },
- { 0 },
-}, *wordlist = words;
-
-int x[][5] = { 1, 2, 3, 4, 0, { 5, 6 }, { 7 } };
-int *y[] = { x[0], x[1], x[2], 0 };
-
-
-main()
-{
- int i, j;
-
- for (i = 0; y[i]; i++) {
- for (j = 0; y[i][j]; j++)
- printf(" %d", y[i][j]);
- printf("\n");
- }
- f();
- g(wordlist);
- return 0;
-}
-
-f() {
- static char *keywords[] = {"if", "for", "else", "while", 0, };
- char **p;
-
- for (p = keywords; *p; p++)
- printf("%s\n", *p);
-}
-
-g(p)
-Word *p;
-{
- int i;
-
- for ( ; p->codes[0]; p++) {
- for (i = 0; i < sizeof p->codes/sizeof(p->codes[0]); i++)
- printf("%d ", p->codes[i]);
- printf("%s\n", p->name);
- }
- h();
-}
-
-h()
-{
- int i;
-
- for (i = 0; i < sizeof(words)/sizeof(Word); i++)
- printf("%d %d %d %s\n", words[i].codes[0],
- words[i].codes[1], words[i].codes[2],
- &words[i].name[0]);
-}
+
+typedef struct { int codes[3]; char name[6]; } Word;
+
+Word words[] = {
+ 1, 2, 3, "if",
+ { { 4, 5 }, { 'f', 'o', 'r' } },
+ 6, 7, 8, {"else"},
+ { { 9, 10, 11,}, 'w', 'h', 'i', 'l', 'e', },
+ { 0 },
+}, *wordlist = words;
+
+int x[][5] = { 1, 2, 3, 4, 0, { 5, 6 }, { 7 } };
+int *y[] = { x[0], x[1], x[2], 0 };
+
+
+main()
+{
+ int i, j;
+
+ for (i = 0; y[i]; i++) {
+ for (j = 0; y[i][j]; j++)
+ printf(" %d", y[i][j]);
+ printf("\n");
+ }
+ f();
+ g(wordlist);
+ return 0;
+}
+
+f() {
+ static char *keywords[] = {"if", "for", "else", "while", 0, };
+ char **p;
+
+ for (p = keywords; *p; p++)
+ printf("%s\n", *p);
+}
+
+g(p)
+Word *p;
+{
+ int i;
+
+ for ( ; p->codes[0]; p++) {
+ for (i = 0; i < sizeof p->codes/sizeof(p->codes[0]); i++)
+ printf("%d ", p->codes[i]);
+ printf("%s\n", p->name);
+ }
+ h();
+}
+
+h()
+{
+ int i;
+
+ for (i = 0; i < sizeof(words)/sizeof(Word); i++)
+ printf("%d %d %d %s\n", words[i].codes[0],
+ words[i].codes[1], words[i].codes[2],
+ &words[i].name[0]);
+}
diff --git a/lcc/tst/limits.c b/lcc/tst/limits.c
index 03b1806..e2a13a6 100755
--- a/lcc/tst/limits.c
+++ b/lcc/tst/limits.c
@@ -1,19 +1,19 @@
-#include <limits.h>
-
-main() {
- printf("UCHAR_MAX: %08x=%d\n", UCHAR_MAX, UCHAR_MAX);
- printf("USHRT_MAX: %08x=%d\n", USHRT_MAX, USHRT_MAX);
- printf("UINT_MAX: %08x=%d\n", UINT_MAX, UINT_MAX);
- printf("ULONG_MAX: %08lx=%ld\n", ULONG_MAX, ULONG_MAX);
- printf("CHAR_MAX: %08x=%d\n", CHAR_MAX, CHAR_MAX);
- printf("SCHAR_MAX: %08x=%d\n", SCHAR_MAX, SCHAR_MAX);
- printf("SHRT_MAX: %08x=%d\n", SHRT_MAX, SHRT_MAX);
- printf("INT_MAX: %08x=%d\n", INT_MAX, INT_MAX);
- printf("LONG_MAX: %08lx=%ld\n", LONG_MAX, LONG_MAX);
- printf("CHAR_MIN: %08x=%d\n", CHAR_MIN, CHAR_MIN);
- printf("SCHAR_MIN: %08x=%d\n", SCHAR_MIN, SCHAR_MIN);
- printf("SHRT_MIN: %08x=%d\n", SHRT_MIN, SHRT_MIN);
- printf("INT_MIN: %08x=%d\n", INT_MIN, INT_MIN);
- printf("LONG_MIN: %08lx=%ld\n", LONG_MIN, LONG_MIN);
- return 0;
-}
+#include <limits.h>
+
+main() {
+ printf("UCHAR_MAX: %08x=%d\n", UCHAR_MAX, UCHAR_MAX);
+ printf("USHRT_MAX: %08x=%d\n", USHRT_MAX, USHRT_MAX);
+ printf("UINT_MAX: %08x=%d\n", UINT_MAX, UINT_MAX);
+ printf("ULONG_MAX: %08lx=%ld\n", ULONG_MAX, ULONG_MAX);
+ printf("CHAR_MAX: %08x=%d\n", CHAR_MAX, CHAR_MAX);
+ printf("SCHAR_MAX: %08x=%d\n", SCHAR_MAX, SCHAR_MAX);
+ printf("SHRT_MAX: %08x=%d\n", SHRT_MAX, SHRT_MAX);
+ printf("INT_MAX: %08x=%d\n", INT_MAX, INT_MAX);
+ printf("LONG_MAX: %08lx=%ld\n", LONG_MAX, LONG_MAX);
+ printf("CHAR_MIN: %08x=%d\n", CHAR_MIN, CHAR_MIN);
+ printf("SCHAR_MIN: %08x=%d\n", SCHAR_MIN, SCHAR_MIN);
+ printf("SHRT_MIN: %08x=%d\n", SHRT_MIN, SHRT_MIN);
+ printf("INT_MIN: %08x=%d\n", INT_MIN, INT_MIN);
+ printf("LONG_MIN: %08lx=%ld\n", LONG_MIN, LONG_MIN);
+ return 0;
+}
diff --git a/lcc/tst/paranoia.c b/lcc/tst/paranoia.c
index 76e0f05..ec9f8ce 100755
--- a/lcc/tst/paranoia.c
+++ b/lcc/tst/paranoia.c
@@ -1,2203 +1,2203 @@
-#undef V9
-#define NOPAUSE
-/* A C version of Kahan's Floating Point Test "Paranoia"
-
- Thos Sumner, UCSF, Feb. 1985
- David Gay, BTL, Jan. 1986
-
- This is a rewrite from the Pascal version by
-
- B. A. Wichmann, 18 Jan. 1985
-
- (and does NOT exhibit good C programming style).
-
-(C) Apr 19 1983 in BASIC version by:
- Professor W. M. Kahan,
- 567 Evans Hall
- Electrical Engineering & Computer Science Dept.
- University of California
- Berkeley, California 94720
- USA
-
-converted to Pascal by:
- B. A. Wichmann
- National Physical Laboratory
- Teddington Middx
- TW11 OLW
- UK
-
-converted to C by:
-
- David M. Gay and Thos Sumner
- AT&T Bell Labs Computer Center, Rm. U-76
- 600 Mountain Avenue University of California
- Murray Hill, NJ 07974 San Francisco, CA 94143
- USA USA
-
-with simultaneous corrections to the Pascal source (reflected
-in the Pascal source available over netlib).
-[A couple of bug fixes from dgh = sun!dhough incorporated 31 July 1986.]
-
-Reports of results on various systems from all the versions
-of Paranoia are being collected by Richard Karpinski at the
-same address as Thos Sumner. This includes sample outputs,
-bug reports, and criticisms.
-
-You may copy this program freely if you acknowledge its source.
-Comments on the Pascal version to NPL, please.
-
-
-The C version catches signals from floating-point exceptions.
-If signal(SIGFPE,...) is unavailable in your environment, you may
-#define NOSIGNAL to comment out the invocations of signal.
-
-This source file is too big for some C compilers, but may be split
-into pieces. Comments containing "SPLIT" suggest convenient places
-for this splitting. At the end of these comments is an "ed script"
-(for the UNIX(tm) editor ed) that will do this splitting.
-
-By #defining Single when you compile this source, you may obtain
-a single-precision C version of Paranoia.
-
-
-The following is from the introductory commentary from Wichmann's work:
-
-The BASIC program of Kahan is written in Microsoft BASIC using many
-facilities which have no exact analogy in Pascal. The Pascal
-version below cannot therefore be exactly the same. Rather than be
-a minimal transcription of the BASIC program, the Pascal coding
-follows the conventional style of block-structured languages. Hence
-the Pascal version could be useful in producing versions in other
-structured languages.
-
-Rather than use identifiers of minimal length (which therefore have
-little mnemonic significance), the Pascal version uses meaningful
-identifiers as follows [Note: A few changes have been made for C]:
-
-
-BASIC C BASIC C BASIC C
-
- A J S StickyBit
- A1 AInverse J0 NoErrors T
- B Radix [Failure] T0 Underflow
- B1 BInverse J1 NoErrors T2 ThirtyTwo
- B2 RadixD2 [SeriousDefect] T5 OneAndHalf
- B9 BMinusU2 J2 NoErrors T7 TwentySeven
- C [Defect] T8 TwoForty
- C1 CInverse J3 NoErrors U OneUlp
- D [Flaw] U0 UnderflowThreshold
- D4 FourD K PageNo U1
- E0 L Milestone U2
- E1 M V
- E2 Exp2 N V0
- E3 N1 V8
- E5 MinSqEr O Zero V9
- E6 SqEr O1 One W
- E7 MaxSqEr O2 Two X
- E8 O3 Three X1
- E9 O4 Four X8
- F1 MinusOne O5 Five X9 Random1
- F2 Half O8 Eight Y
- F3 Third O9 Nine Y1
- F6 P Precision Y2
- F9 Q Y9 Random2
- G1 GMult Q8 Z
- G2 GDiv Q9 Z0 PseudoZero
- G3 GAddSub R Z1
- H R1 RMult Z2
- H1 HInverse R2 RDiv Z9
- I R3 RAddSub
- IO NoTrials R4 RSqrt
- I3 IEEE R9 Random9
-
- SqRWrng
-
-All the variables in BASIC are true variables and in consequence,
-the program is more difficult to follow since the "constants" must
-be determined (the glossary is very helpful). The Pascal version
-uses Real constants, but checks are added to ensure that the values
-are correctly converted by the compiler.
-
-The major textual change to the Pascal version apart from the
-identifiersis that named procedures are used, inserting parameters
-wherehelpful. New procedures are also introduced. The
-correspondence is as follows:
-
-
-BASIC Pascal
-lines
-
- 90- 140 Pause
- 170- 250 Instructions
- 380- 460 Heading
- 480- 670 Characteristics
- 690- 870 History
-2940-2950 Random
-3710-3740 NewD
-4040-4080 DoesYequalX
-4090-4110 PrintIfNPositive
-4640-4850 TestPartialUnderflow
-
-=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=
-
-Below is an "ed script" that splits para.c into 10 files
-of the form part[1-8].c, subs.c, and msgs.c, plus a header
-file, paranoia.h, that these files require.
-
-r paranoia.c
-$
-?SPLIT
-+,$w msgs.c
- .,$d
-?SPLIT
- .d
-+d
--,$w subs.c
--,$d
-?part8
-+d
-?include
- .,$w part8.c
- .,$d
--d
-?part7
-+d
-?include
- .,$w part7.c
- .,$d
--d
-?part6
-+d
-?include
- .,$w part6.c
- .,$d
--d
-?part5
-+d
-?include
- .,$w part5.c
- .,$d
--d
-?part4
-+d
-?include
- .,$w part4.c
- .,$d
--d
-?part3
-+d
-?include
- .,$w part3.c
- .,$d
--d
-?part2
-+d
-?include
- .,$w part2.c
- .,$d
-?SPLIT
- .d
-1,/^#include/-1d
-1,$w part1.c
-/Computed constants/,$d
-1,$s/^int/extern &/
-1,$s/^FLOAT/extern &/
-1,$s/^char/extern &/
-1,$s! = .*!;!
-/^Guard/,/^Round/s/^/extern /
-/^jmp_buf/s/^/extern /
-/^Sig_type/s/^/extern /
-s/$/\
-extern void sigfpe();/
-w paranoia.h
-q
-
-*/
-
-#include <stdio.h>
-#ifndef NOSIGNAL
-#include <signal.h>
-#endif
-#include <setjmp.h>
-
-extern double fabs(), floor(), log(), pow(), sqrt();
-
-#ifdef Single
-#define FLOAT float
-#define FABS(x) (float)fabs((double)(x))
-#define FLOOR(x) (float)floor((double)(x))
-#define LOG(x) (float)log((double)(x))
-#define POW(x,y) (float)pow((double)(x),(double)(y))
-#define SQRT(x) (float)sqrt((double)(x))
-#else
-#define FLOAT double
-#define FABS(x) fabs(x)
-#define FLOOR(x) floor(x)
-#define LOG(x) log(x)
-#define POW(x,y) pow(x,y)
-#define SQRT(x) sqrt(x)
-#endif
-
-jmp_buf ovfl_buf;
-typedef void (*Sig_type)();
-Sig_type sigsave;
-
-#define KEYBOARD 0
-
-FLOAT Radix, BInvrse, RadixD2, BMinusU2;
-FLOAT Sign(), Random();
-
-/*Small floating point constants.*/
-FLOAT Zero = 0.0;
-FLOAT Half = 0.5;
-FLOAT One = 1.0;
-FLOAT Two = 2.0;
-FLOAT Three = 3.0;
-FLOAT Four = 4.0;
-FLOAT Five = 5.0;
-FLOAT Eight = 8.0;
-FLOAT Nine = 9.0;
-FLOAT TwentySeven = 27.0;
-FLOAT ThirtyTwo = 32.0;
-FLOAT TwoForty = 240.0;
-FLOAT MinusOne = -1.0;
-FLOAT OneAndHalf = 1.5;
-/*Integer constants*/
-int NoTrials = 20; /*Number of tests for commutativity. */
-#define False 0
-#define True 1
-
-/* Definitions for declared types
- Guard == (Yes, No);
- Rounding == (Chopped, Rounded, Other);
- Message == packed array [1..40] of char;
- Class == (Flaw, Defect, Serious, Failure);
- */
-#define Yes 1
-#define No 0
-#define Chopped 2
-#define Rounded 1
-#define Other 0
-#define Flaw 3
-#define Defect 2
-#define Serious 1
-#define Failure 0
-typedef int Guard, Rounding, Class;
-typedef char Message;
-
-/* Declarations of Variables */
-int Indx;
-char ch[8];
-FLOAT AInvrse, A1;
-FLOAT C, CInvrse;
-FLOAT D, FourD;
-FLOAT E0, E1, Exp2, E3, MinSqEr;
-FLOAT SqEr, MaxSqEr, E9;
-FLOAT Third;
-FLOAT F6, F9;
-FLOAT H, HInvrse;
-int I;
-FLOAT StickyBit, J;
-FLOAT MyZero;
-FLOAT Precision;
-FLOAT Q, Q9;
-FLOAT R, Random9;
-FLOAT T, Underflow, S;
-FLOAT OneUlp, UfThold, U1, U2;
-FLOAT V, V0, V9;
-FLOAT W;
-FLOAT X, X1, X2, X8, Random1;
-FLOAT Y, Y1, Y2, Random2;
-FLOAT Z, PseudoZero, Z1, Z2, Z9;
-int ErrCnt[4];
-int fpecount;
-int Milestone;
-int PageNo;
-int M, N, N1;
-Guard GMult, GDiv, GAddSub;
-Rounding RMult, RDiv, RAddSub, RSqrt;
-int Break, Done, NotMonot, Monot, Anomaly, IEEE,
- SqRWrng, UfNGrad;
-/* Computed constants. */
-/*U1 gap below 1.0, i.e, 1.0-U1 is next number below 1.0 */
-/*U2 gap above 1.0, i.e, 1.0+U2 is next number above 1.0 */
-
-/* floating point exception receiver */
- void
-sigfpe(i)
-{
- fpecount++;
- printf("\n* * * FLOATING-POINT ERROR * * *\n");
- fflush(stdout);
- if (sigsave) {
-#ifndef NOSIGNAL
- signal(SIGFPE, sigsave);
-#endif
- sigsave = 0;
- longjmp(ovfl_buf, 1);
- }
- abort();
-}
-
-main()
-{
-#ifdef mc
- char *out;
- ieee_flags("set", "precision", "double", &out);
-#endif
- /* First two assignments use integer right-hand sides. */
- Zero = 0;
- One = 1;
- Two = One + One;
- Three = Two + One;
- Four = Three + One;
- Five = Four + One;
- Eight = Four + Four;
- Nine = Three * Three;
- TwentySeven = Nine * Three;
- ThirtyTwo = Four * Eight;
- TwoForty = Four * Five * Three * Four;
- MinusOne = -One;
- Half = One / Two;
- OneAndHalf = One + Half;
- ErrCnt[Failure] = 0;
- ErrCnt[Serious] = 0;
- ErrCnt[Defect] = 0;
- ErrCnt[Flaw] = 0;
- PageNo = 1;
- /*=============================================*/
- Milestone = 0;
- /*=============================================*/
-#ifndef NOSIGNAL
- signal(SIGFPE, sigfpe);
-#endif
- Instructions();
- Pause();
- Heading();
- Pause();
- Characteristics();
- Pause();
- History();
- Pause();
- /*=============================================*/
- Milestone = 7;
- /*=============================================*/
- printf("Program is now RUNNING tests on small integers:\n");
-
- TstCond (Failure, (Zero + Zero == Zero) && (One - One == Zero)
- && (One > Zero) && (One + One == Two),
- "0+0 != 0, 1-1 != 0, 1 <= 0, or 1+1 != 2");
- Z = - Zero;
- if (Z != 0.0) {
- ErrCnt[Failure] = ErrCnt[Failure] + 1;
- printf("Comparison alleges that -0.0 is Non-zero!\n");
- U1 = 0.001;
- Radix = 1;
- TstPtUf();
- }
- TstCond (Failure, (Three == Two + One) && (Four == Three + One)
- && (Four + Two * (- Two) == Zero)
- && (Four - Three - One == Zero),
- "3 != 2+1, 4 != 3+1, 4+2*(-2) != 0, or 4-3-1 != 0");
- TstCond (Failure, (MinusOne == (0 - One))
- && (MinusOne + One == Zero ) && (One + MinusOne == Zero)
- && (MinusOne + FABS(One) == Zero)
- && (MinusOne + MinusOne * MinusOne == Zero),
- "-1+1 != 0, (-1)+abs(1) != 0, or -1+(-1)*(-1) != 0");
- TstCond (Failure, Half + MinusOne + Half == Zero,
- "1/2 + (-1) + 1/2 != 0");
- /*=============================================*/
- /*SPLIT
- part2();
- part3();
- part4();
- part5();
- part6();
- part7();
- part8();
- }
-#include "paranoia.h"
-part2(){
-*/
- Milestone = 10;
- /*=============================================*/
- TstCond (Failure, (Nine == Three * Three)
- && (TwentySeven == Nine * Three) && (Eight == Four + Four)
- && (ThirtyTwo == Eight * Four)
- && (ThirtyTwo - TwentySeven - Four - One == Zero),
- "9 != 3*3, 27 != 9*3, 32 != 8*4, or 32-27-4-1 != 0");
- TstCond (Failure, (Five == Four + One) &&
- (TwoForty == Four * Five * Three * Four)
- && (TwoForty / Three - Four * Four * Five == Zero)
- && ( TwoForty / Four - Five * Three * Four == Zero)
- && ( TwoForty / Five - Four * Three * Four == Zero),
- "5 != 4+1, 240/3 != 80, 240/4 != 60, or 240/5 != 48");
- if (ErrCnt[Failure] == 0) {
- printf("-1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.\n");
- printf("\n");
- }
- printf("Searching for Radix and Precision.\n");
- W = One;
- do {
- W = W + W;
- Y = W + One;
- Z = Y - W;
- Y = Z - One;
- } while (MinusOne + FABS(Y) < Zero);
- /*.. now W is just big enough that |((W+1)-W)-1| >= 1 ...*/
- Precision = Zero;
- Y = One;
- do {
- Radix = W + Y;
- Y = Y + Y;
- Radix = Radix - W;
- } while ( Radix == Zero);
- if (Radix < Two) Radix = One;
- printf("Radix = %f .\n", Radix);
- if (Radix != 1) {
- W = One;
- do {
- Precision = Precision + One;
- W = W * Radix;
- Y = W + One;
- } while ((Y - W) == One);
- }
- /*... now W == Radix^Precision is barely too big to satisfy (W+1)-W == 1
- ...*/
- U1 = One / W;
- U2 = Radix * U1;
- printf("Closest relative separation found is U1 = %.7e .\n\n", U1);
- printf("Recalculating radix and precision\n ");
-
- /*save old values*/
- E0 = Radix;
- E1 = U1;
- E9 = U2;
- E3 = Precision;
-
- X = Four / Three;
- Third = X - One;
- F6 = Half - Third;
- X = F6 + F6;
- X = FABS(X - Third);
- if (X < U2) X = U2;
-
- /*... now X = (unknown no.) ulps of 1+...*/
- do {
- U2 = X;
- Y = Half * U2 + ThirtyTwo * U2 * U2;
- Y = One + Y;
- X = Y - One;
- } while ( ! ((U2 <= X) || (X <= Zero)));
-
- /*... now U2 == 1 ulp of 1 + ... */
- X = Two / Three;
- F6 = X - Half;
- Third = F6 + F6;
- X = Third - Half;
- X = FABS(X + F6);
- if (X < U1) X = U1;
-
- /*... now X == (unknown no.) ulps of 1 -... */
- do {
- U1 = X;
- Y = Half * U1 + ThirtyTwo * U1 * U1;
- Y = Half - Y;
- X = Half + Y;
- Y = Half - X;
- X = Half + Y;
- } while ( ! ((U1 <= X) || (X <= Zero)));
- /*... now U1 == 1 ulp of 1 - ... */
- if (U1 == E1) printf("confirms closest relative separation U1 .\n");
- else printf("gets better closest relative separation U1 = %.7e .\n", U1);
- W = One / U1;
- F9 = (Half - U1) + Half;
- Radix = FLOOR(0.01 + U2 / U1);
- if (Radix == E0) printf("Radix confirmed.\n");
- else printf("MYSTERY: recalculated Radix = %.7e .\n", Radix);
- TstCond (Defect, Radix <= Eight + Eight,
- "Radix is too big: roundoff problems");
- TstCond (Flaw, (Radix == Two) || (Radix == 10)
- || (Radix == One), "Radix is not as good as 2 or 10");
- /*=============================================*/
- Milestone = 20;
- /*=============================================*/
- TstCond (Failure, F9 - Half < Half,
- "(1-U1)-1/2 < 1/2 is FALSE, prog. fails?");
- X = F9;
- I = 1;
- Y = X - Half;
- Z = Y - Half;
- TstCond (Failure, (X != One)
- || (Z == Zero), "Comparison is fuzzy,X=1 but X-1/2-1/2 != 0");
- X = One + U2;
- I = 0;
- /*=============================================*/
- Milestone = 25;
- /*=============================================*/
- /*... BMinusU2 = nextafter(Radix, 0) */
- BMinusU2 = Radix - One;
- BMinusU2 = (BMinusU2 - U2) + One;
- /* Purify Integers */
- if (Radix != One) {
- X = - TwoForty * LOG(U1) / LOG(Radix);
- Y = FLOOR(Half + X);
- if (FABS(X - Y) * Four < One) X = Y;
- Precision = X / TwoForty;
- Y = FLOOR(Half + Precision);
- if (FABS(Precision - Y) * TwoForty < Half) Precision = Y;
- }
- if ((Precision != FLOOR(Precision)) || (Radix == One)) {
- printf("Precision cannot be characterized by an Integer number\n");
- printf("of significant digits but, by itself, this is a minor flaw.\n");
- }
- if (Radix == One)
- printf("logarithmic encoding has precision characterized solely by U1.\n");
- else printf("The number of significant digits of the Radix is %f .\n",
- Precision);
- TstCond (Serious, U2 * Nine * Nine * TwoForty < One,
- "Precision worse than 5 decimal figures ");
- /*=============================================*/
- Milestone = 30;
- /*=============================================*/
- /* Test for extra-precise subepressions */
- X = FABS(((Four / Three - One) - One / Four) * Three - One / Four);
- do {
- Z2 = X;
- X = (One + (Half * Z2 + ThirtyTwo * Z2 * Z2)) - One;
- } while ( ! ((Z2 <= X) || (X <= Zero)));
- X = Y = Z = FABS((Three / Four - Two / Three) * Three - One / Four);
- do {
- Z1 = Z;
- Z = (One / Two - ((One / Two - (Half * Z1 + ThirtyTwo * Z1 * Z1))
- + One / Two)) + One / Two;
- } while ( ! ((Z1 <= Z) || (Z <= Zero)));
- do {
- do {
- Y1 = Y;
- Y = (Half - ((Half - (Half * Y1 + ThirtyTwo * Y1 * Y1)) + Half
- )) + Half;
- } while ( ! ((Y1 <= Y) || (Y <= Zero)));
- X1 = X;
- X = ((Half * X1 + ThirtyTwo * X1 * X1) - F9) + F9;
- } while ( ! ((X1 <= X) || (X <= Zero)));
- if ((X1 != Y1) || (X1 != Z1)) {
- BadCond(Serious, "Disagreements among the values X1, Y1, Z1,\n");
- printf("respectively %.7e, %.7e, %.7e,\n", X1, Y1, Z1);
- printf("are symptoms of inconsistencies introduced\n");
- printf("by extra-precise evaluation of arithmetic subexpressions.\n");
- notify("Possibly some part of this");
- if ((X1 == U1) || (Y1 == U1) || (Z1 == U1)) printf(
- "That feature is not tested further by this program.\n") ;
- }
- else {
- if ((Z1 != U1) || (Z2 != U2)) {
- if ((Z1 >= U1) || (Z2 >= U2)) {
- BadCond(Failure, "");
- notify("Precision");
- printf("\tU1 = %.7e, Z1 - U1 = %.7e\n",U1,Z1-U1);
- printf("\tU2 = %.7e, Z2 - U2 = %.7e\n",U2,Z2-U2);
- }
- else {
- if ((Z1 <= Zero) || (Z2 <= Zero)) {
- printf("Because of unusual Radix = %f", Radix);
- printf(", or exact rational arithmetic a result\n");
- printf("Z1 = %.7e, or Z2 = %.7e ", Z1, Z2);
- notify("of an\nextra-precision");
- }
- if (Z1 != Z2 || Z1 > Zero) {
- X = Z1 / U1;
- Y = Z2 / U2;
- if (Y > X) X = Y;
- Q = - LOG(X);
- printf("Some subexpressions appear to be calculated extra\n");
- printf("precisely with about %g extra B-digits, i.e.\n",
- (Q / LOG(Radix)));
- printf("roughly %g extra significant decimals.\n",
- Q / LOG(10.));
- }
- printf("That feature is not tested further by this program.\n");
- }
- }
- }
- Pause();
- /*=============================================*/
- /*SPLIT
- }
-#include "paranoia.h"
-part3(){
-*/
- Milestone = 35;
- /*=============================================*/
- if (Radix >= Two) {
- X = W / (Radix * Radix);
- Y = X + One;
- Z = Y - X;
- T = Z + U2;
- X = T - Z;
- TstCond (Failure, X == U2,
- "Subtraction is not normalized X=Y,X+Z != Y+Z!");
- if (X == U2) printf(
- "Subtraction appears to be normalized, as it should be.");
- }
- printf("\nChecking for guard digit in *, /, and -.\n");
- Y = F9 * One;
- Z = One * F9;
- X = F9 - Half;
- Y = (Y - Half) - X;
- Z = (Z - Half) - X;
- X = One + U2;
- T = X * Radix;
- R = Radix * X;
- X = T - Radix;
- X = X - Radix * U2;
- T = R - Radix;
- T = T - Radix * U2;
- X = X * (Radix - One);
- T = T * (Radix - One);
- if ((X == Zero) && (Y == Zero) && (Z == Zero) && (T == Zero)) GMult = Yes;
- else {
- GMult = No;
- TstCond (Serious, False,
- "* lacks a Guard Digit, so 1*X != X");
- }
- Z = Radix * U2;
- X = One + Z;
- Y = FABS((X + Z) - X * X) - U2;
- X = One - U2;
- Z = FABS((X - U2) - X * X) - U1;
- TstCond (Failure, (Y <= Zero)
- && (Z <= Zero), "* gets too many final digits wrong.\n");
- Y = One - U2;
- X = One + U2;
- Z = One / Y;
- Y = Z - X;
- X = One / Three;
- Z = Three / Nine;
- X = X - Z;
- T = Nine / TwentySeven;
- Z = Z - T;
- TstCond(Defect, X == Zero && Y == Zero && Z == Zero,
- "Division lacks a Guard Digit, so error can exceed 1 ulp\nor 1/3 and 3/9 and 9/27 may disagree");
- Y = F9 / One;
- X = F9 - Half;
- Y = (Y - Half) - X;
- X = One + U2;
- T = X / One;
- X = T - X;
- if ((X == Zero) && (Y == Zero) && (Z == Zero)) GDiv = Yes;
- else {
- GDiv = No;
- TstCond (Serious, False,
- "Division lacks a Guard Digit, so X/1 != X");
- }
- X = One / (One + U2);
- Y = X - Half - Half;
- TstCond (Serious, Y < Zero,
- "Computed value of 1/1.000..1 >= 1");
- X = One - U2;
- Y = One + Radix * U2;
- Z = X * Radix;
- T = Y * Radix;
- R = Z / Radix;
- StickyBit = T / Radix;
- X = R - X;
- Y = StickyBit - Y;
- TstCond (Failure, X == Zero && Y == Zero,
- "* and/or / gets too many last digits wrong");
- Y = One - U1;
- X = One - F9;
- Y = One - Y;
- T = Radix - U2;
- Z = Radix - BMinusU2;
- T = Radix - T;
- if ((X == U1) && (Y == U1) && (Z == U2) && (T == U2)) GAddSub = Yes;
- else {
- GAddSub = No;
- TstCond (Serious, False,
- "- lacks Guard Digit, so cancellation is obscured");
- }
- if (F9 != One && F9 - One >= Zero) {
- BadCond(Serious, "comparison alleges (1-U1) < 1 although\n");
- printf(" subtraction yields (1-U1) - 1 = 0 , thereby vitiating\n");
- printf(" such precautions against division by zero as\n");
- printf(" ... if (X == 1.0) {.....} else {.../(X-1.0)...}\n");
- }
- if (GMult == Yes && GDiv == Yes && GAddSub == Yes) printf(
- " *, /, and - appear to have guard digits, as they should.\n");
- /*=============================================*/
- Milestone = 40;
- /*=============================================*/
- Pause();
- printf("Checking rounding on multiply, divide and add/subtract.\n");
- RMult = Other;
- RDiv = Other;
- RAddSub = Other;
- RadixD2 = Radix / Two;
- A1 = Two;
- Done = False;
- do {
- AInvrse = Radix;
- do {
- X = AInvrse;
- AInvrse = AInvrse / A1;
- } while ( ! (FLOOR(AInvrse) != AInvrse));
- Done = (X == One) || (A1 > Three);
- if (! Done) A1 = Nine + One;
- } while ( ! (Done));
- if (X == One) A1 = Radix;
- AInvrse = One / A1;
- X = A1;
- Y = AInvrse;
- Done = False;
- do {
- Z = X * Y - Half;
- TstCond (Failure, Z == Half,
- "X * (1/X) differs from 1");
- Done = X == Radix;
- X = Radix;
- Y = One / X;
- } while ( ! (Done));
- Y2 = One + U2;
- Y1 = One - U2;
- X = OneAndHalf - U2;
- Y = OneAndHalf + U2;
- Z = (X - U2) * Y2;
- T = Y * Y1;
- Z = Z - X;
- T = T - X;
- X = X * Y2;
- Y = (Y + U2) * Y1;
- X = X - OneAndHalf;
- Y = Y - OneAndHalf;
- if ((X == Zero) && (Y == Zero) && (Z == Zero) && (T <= Zero)) {
- X = (OneAndHalf + U2) * Y2;
- Y = OneAndHalf - U2 - U2;
- Z = OneAndHalf + U2 + U2;
- T = (OneAndHalf - U2) * Y1;
- X = X - (Z + U2);
- StickyBit = Y * Y1;
- S = Z * Y2;
- T = T - Y;
- Y = (U2 - Y) + StickyBit;
- Z = S - (Z + U2 + U2);
- StickyBit = (Y2 + U2) * Y1;
- Y1 = Y2 * Y1;
- StickyBit = StickyBit - Y2;
- Y1 = Y1 - Half;
- if ((X == Zero) && (Y == Zero) && (Z == Zero) && (T == Zero)
- && ( StickyBit == Zero) && (Y1 == Half)) {
- RMult = Rounded;
- printf("Multiplication appears to round correctly.\n");
- }
- else if ((X + U2 == Zero) && (Y < Zero) && (Z + U2 == Zero)
- && (T < Zero) && (StickyBit + U2 == Zero)
- && (Y1 < Half)) {
- RMult = Chopped;
- printf("Multiplication appears to chop.\n");
- }
- else printf("* is neither chopped nor correctly rounded.\n");
- if ((RMult == Rounded) && (GMult == No)) notify("Multiplication");
- }
- else printf("* is neither chopped nor correctly rounded.\n");
- /*=============================================*/
- Milestone = 45;
- /*=============================================*/
- Y2 = One + U2;
- Y1 = One - U2;
- Z = OneAndHalf + U2 + U2;
- X = Z / Y2;
- T = OneAndHalf - U2 - U2;
- Y = (T - U2) / Y1;
- Z = (Z + U2) / Y2;
- X = X - OneAndHalf;
- Y = Y - T;
- T = T / Y1;
- Z = Z - (OneAndHalf + U2);
- T = (U2 - OneAndHalf) + T;
- if (! ((X > Zero) || (Y > Zero) || (Z > Zero) || (T > Zero))) {
- X = OneAndHalf / Y2;
- Y = OneAndHalf - U2;
- Z = OneAndHalf + U2;
- X = X - Y;
- T = OneAndHalf / Y1;
- Y = Y / Y1;
- T = T - (Z + U2);
- Y = Y - Z;
- Z = Z / Y2;
- Y1 = (Y2 + U2) / Y2;
- Z = Z - OneAndHalf;
- Y2 = Y1 - Y2;
- Y1 = (F9 - U1) / F9;
- if ((X == Zero) && (Y == Zero) && (Z == Zero) && (T == Zero)
- && (Y2 == Zero) && (Y2 == Zero)
- && (Y1 - Half == F9 - Half )) {
- RDiv = Rounded;
- printf("Division appears to round correctly.\n");
- if (GDiv == No) notify("Division");
- }
- else if ((X < Zero) && (Y < Zero) && (Z < Zero) && (T < Zero)
- && (Y2 < Zero) && (Y1 - Half < F9 - Half)) {
- RDiv = Chopped;
- printf("Division appears to chop.\n");
- }
- }
- if (RDiv == Other) printf("/ is neither chopped nor correctly rounded.\n");
- BInvrse = One / Radix;
- TstCond (Failure, (BInvrse * Radix - Half == Half),
- "Radix * ( 1 / Radix ) differs from 1");
- /*=============================================*/
- /*SPLIT
- }
-#include "paranoia.h"
-part4(){
-*/
- Milestone = 50;
- /*=============================================*/
- TstCond (Failure, ((F9 + U1) - Half == Half)
- && ((BMinusU2 + U2 ) - One == Radix - One),
- "Incomplete carry-propagation in Addition");
- X = One - U1 * U1;
- Y = One + U2 * (One - U2);
- Z = F9 - Half;
- X = (X - Half) - Z;
- Y = Y - One;
- if ((X == Zero) && (Y == Zero)) {
- RAddSub = Chopped;
- printf("Add/Subtract appears to be chopped.\n");
- }
- if (GAddSub == Yes) {
- X = (Half + U2) * U2;
- Y = (Half - U2) * U2;
- X = One + X;
- Y = One + Y;
- X = (One + U2) - X;
- Y = One - Y;
- if ((X == Zero) && (Y == Zero)) {
- X = (Half + U2) * U1;
- Y = (Half - U2) * U1;
- X = One - X;
- Y = One - Y;
- X = F9 - X;
- Y = One - Y;
- if ((X == Zero) && (Y == Zero)) {
- RAddSub = Rounded;
- printf("Addition/Subtraction appears to round correctly.\n");
- if (GAddSub == No) notify("Add/Subtract");
- }
- else printf("Addition/Subtraction neither rounds nor chops.\n");
- }
- else printf("Addition/Subtraction neither rounds nor chops.\n");
- }
- else printf("Addition/Subtraction neither rounds nor chops.\n");
- S = One;
- X = One + Half * (One + Half);
- Y = (One + U2) * Half;
- Z = X - Y;
- T = Y - X;
- StickyBit = Z + T;
- if (StickyBit != Zero) {
- S = Zero;
- BadCond(Flaw, "(X - Y) + (Y - X) is non zero!\n");
- }
- StickyBit = Zero;
- if ((GMult == Yes) && (GDiv == Yes) && (GAddSub == Yes)
- && (RMult == Rounded) && (RDiv == Rounded)
- && (RAddSub == Rounded) && (FLOOR(RadixD2) == RadixD2)) {
- printf("Checking for sticky bit.\n");
- X = (Half + U1) * U2;
- Y = Half * U2;
- Z = One + Y;
- T = One + X;
- if ((Z - One <= Zero) && (T - One >= U2)) {
- Z = T + Y;
- Y = Z - X;
- if ((Z - T >= U2) && (Y - T == Zero)) {
- X = (Half + U1) * U1;
- Y = Half * U1;
- Z = One - Y;
- T = One - X;
- if ((Z - One == Zero) && (T - F9 == Zero)) {
- Z = (Half - U1) * U1;
- T = F9 - Z;
- Q = F9 - Y;
- if ((T - F9 == Zero) && (F9 - U1 - Q == Zero)) {
- Z = (One + U2) * OneAndHalf;
- T = (OneAndHalf + U2) - Z + U2;
- X = One + Half / Radix;
- Y = One + Radix * U2;
- Z = X * Y;
- if (T == Zero && X + Radix * U2 - Z == Zero) {
- if (Radix != Two) {
- X = Two + U2;
- Y = X / Two;
- if ((Y - One == Zero)) StickyBit = S;
- }
- else StickyBit = S;
- }
- }
- }
- }
- }
- }
- if (StickyBit == One) printf("Sticky bit apparently used correctly.\n");
- else printf("Sticky bit used incorrectly or not at all.\n");
- TstCond (Flaw, !(GMult == No || GDiv == No || GAddSub == No ||
- RMult == Other || RDiv == Other || RAddSub == Other),
- "lack(s) of guard digits or failure(s) to correctly round or chop\n(noted above) count as one flaw in the final tally below");
- /*=============================================*/
- Milestone = 60;
- /*=============================================*/
- printf("\n");
- printf("Does Multiplication commute? ");
- printf("Testing on %d random pairs.\n", NoTrials);
- Random9 = SQRT(3.0);
- Random1 = Third;
- I = 1;
- do {
- X = Random();
- Y = Random();
- Z9 = Y * X;
- Z = X * Y;
- Z9 = Z - Z9;
- I = I + 1;
- } while ( ! ((I > NoTrials) || (Z9 != Zero)));
- if (I == NoTrials) {
- Random1 = One + Half / Three;
- Random2 = (U2 + U1) + One;
- Z = Random1 * Random2;
- Y = Random2 * Random1;
- Z9 = (One + Half / Three) * ((U2 + U1) + One) - (One + Half /
- Three) * ((U2 + U1) + One);
- }
- if (! ((I == NoTrials) || (Z9 == Zero)))
- BadCond(Defect, "X * Y == Y * X trial fails.\n");
- else printf(" No failures found in %d integer pairs.\n", NoTrials);
- /*=============================================*/
- Milestone = 70;
- /*=============================================*/
- printf("\nRunning test of square root(x).\n");
- TstCond (Failure, (Zero == SQRT(Zero))
- && (- Zero == SQRT(- Zero))
- && (One == SQRT(One)), "Square root of 0.0, -0.0 or 1.0 wrong");
- MinSqEr = Zero;
- MaxSqEr = Zero;
- J = Zero;
- X = Radix;
- OneUlp = U2;
- SqXMinX (Serious);
- X = BInvrse;
- OneUlp = BInvrse * U1;
- SqXMinX (Serious);
- X = U1;
- OneUlp = U1 * U1;
- SqXMinX (Serious);
- if (J != Zero) Pause();
- printf("Testing if sqrt(X * X) == X for %d Integers X.\n", NoTrials);
- J = Zero;
- X = Two;
- Y = Radix;
- if ((Radix != One)) do {
- X = Y;
- Y = Radix * Y;
- } while ( ! ((Y - X >= NoTrials)));
- OneUlp = X * U2;
- I = 1;
- while (I <= NoTrials) {
- X = X + One;
- SqXMinX (Defect);
- if (J > Zero) break;
- I = I + 1;
- }
- printf("Test for sqrt monotonicity.\n");
- I = - 1;
- X = BMinusU2;
- Y = Radix;
- Z = Radix + Radix * U2;
- NotMonot = False;
- Monot = False;
- while ( ! (NotMonot || Monot)) {
- I = I + 1;
- X = SQRT(X);
- Q = SQRT(Y);
- Z = SQRT(Z);
- if ((X > Q) || (Q > Z)) NotMonot = True;
- else {
- Q = FLOOR(Q + Half);
- if ((I > 0) || (Radix == Q * Q)) Monot = True;
- else if (I > 0) {
- if (I > 1) Monot = True;
- else {
- Y = Y * BInvrse;
- X = Y - U1;
- Z = Y + U1;
- }
- }
- else {
- Y = Q;
- X = Y - U2;
- Z = Y + U2;
- }
- }
- }
- if (Monot) printf("sqrt has passed a test for Monotonicity.\n");
- else {
- BadCond(Defect, "");
- printf("sqrt(X) is non-monotonic for X near %.7e .\n", Y);
- }
- /*=============================================*/
- /*SPLIT
- }
-#include "paranoia.h"
-part5(){
-*/
- Milestone = 80;
- /*=============================================*/
- MinSqEr = MinSqEr + Half;
- MaxSqEr = MaxSqEr - Half;
- Y = (SQRT(One + U2) - One) / U2;
- SqEr = (Y - One) + U2 / Eight;
- if (SqEr > MaxSqEr) MaxSqEr = SqEr;
- SqEr = Y + U2 / Eight;
- if (SqEr < MinSqEr) MinSqEr = SqEr;
- Y = ((SQRT(F9) - U2) - (One - U2)) / U1;
- SqEr = Y + U1 / Eight;
- if (SqEr > MaxSqEr) MaxSqEr = SqEr;
- SqEr = (Y + One) + U1 / Eight;
- if (SqEr < MinSqEr) MinSqEr = SqEr;
- OneUlp = U2;
- X = OneUlp;
- for( Indx = 1; Indx <= 3; ++Indx) {
- Y = SQRT((X + U1 + X) + F9);
- Y = ((Y - U2) - ((One - U2) + X)) / OneUlp;
- Z = ((U1 - X) + F9) * Half * X * X / OneUlp;
- SqEr = (Y + Half) + Z;
- if (SqEr < MinSqEr) MinSqEr = SqEr;
- SqEr = (Y - Half) + Z;
- if (SqEr > MaxSqEr) MaxSqEr = SqEr;
- if (((Indx == 1) || (Indx == 3)))
- X = OneUlp * Sign (X) * FLOOR(Eight / (Nine * SQRT(OneUlp)));
- else {
- OneUlp = U1;
- X = - OneUlp;
- }
- }
- /*=============================================*/
- Milestone = 85;
- /*=============================================*/
- SqRWrng = False;
- Anomaly = False;
- RSqrt = Other; /* ~dgh */
- if (Radix != One) {
- printf("Testing whether sqrt is rounded or chopped.\n");
- D = FLOOR(Half + POW(Radix, One + Precision - FLOOR(Precision)));
- /* ... == Radix^(1 + fract) if (Precision == Integer + fract. */
- X = D / Radix;
- Y = D / A1;
- if ((X != FLOOR(X)) || (Y != FLOOR(Y))) {
- Anomaly = True;
- }
- else {
- X = Zero;
- Z2 = X;
- Y = One;
- Y2 = Y;
- Z1 = Radix - One;
- FourD = Four * D;
- do {
- if (Y2 > Z2) {
- Q = Radix;
- Y1 = Y;
- do {
- X1 = FABS(Q + FLOOR(Half - Q / Y1) * Y1);
- Q = Y1;
- Y1 = X1;
- } while ( ! (X1 <= Zero));
- if (Q <= One) {
- Z2 = Y2;
- Z = Y;
- }
- }
- Y = Y + Two;
- X = X + Eight;
- Y2 = Y2 + X;
- if (Y2 >= FourD) Y2 = Y2 - FourD;
- } while ( ! (Y >= D));
- X8 = FourD - Z2;
- Q = (X8 + Z * Z) / FourD;
- X8 = X8 / Eight;
- if (Q != FLOOR(Q)) Anomaly = True;
- else {
- Break = False;
- do {
- X = Z1 * Z;
- X = X - FLOOR(X / Radix) * Radix;
- if (X == One)
- Break = True;
- else
- Z1 = Z1 - One;
- } while ( ! (Break || (Z1 <= Zero)));
- if ((Z1 <= Zero) && (! Break)) Anomaly = True;
- else {
- if (Z1 > RadixD2) Z1 = Z1 - Radix;
- do {
- NewD();
- } while ( ! (U2 * D >= F9));
- if (D * Radix - D != W - D) Anomaly = True;
- else {
- Z2 = D;
- I = 0;
- Y = D + (One + Z) * Half;
- X = D + Z + Q;
- SR3750();
- Y = D + (One - Z) * Half + D;
- X = D - Z + D;
- X = X + Q + X;
- SR3750();
- NewD();
- if (D - Z2 != W - Z2) Anomaly = True;
- else {
- Y = (D - Z2) + (Z2 + (One - Z) * Half);
- X = (D - Z2) + (Z2 - Z + Q);
- SR3750();
- Y = (One + Z) * Half;
- X = Q;
- SR3750();
- if (I == 0) Anomaly = True;
- }
- }
- }
- }
- }
- if ((I == 0) || Anomaly) {
- BadCond(Failure, "Anomalous arithmetic with Integer < ");
- printf("Radix^Precision = %.7e\n", W);
- printf(" fails test whether sqrt rounds or chops.\n");
- SqRWrng = True;
- }
- }
- if (! Anomaly) {
- if (! ((MinSqEr < Zero) || (MaxSqEr > Zero))) {
- RSqrt = Rounded;
- printf("Square root appears to be correctly rounded.\n");
- }
- else {
- if ((MaxSqEr + U2 > U2 - Half) || (MinSqEr > Half)
- || (MinSqEr + Radix < Half)) SqRWrng = True;
- else {
- RSqrt = Chopped;
- printf("Square root appears to be chopped.\n");
- }
- }
- }
- if (SqRWrng) {
- printf("Square root is neither chopped nor correctly rounded.\n");
- printf("Observed errors run from %.7e ", MinSqEr - Half);
- printf("to %.7e ulps.\n", Half + MaxSqEr);
- TstCond (Serious, MaxSqEr - MinSqEr < Radix * Radix,
- "sqrt gets too many last digits wrong");
- }
- /*=============================================*/
- Milestone = 90;
- /*=============================================*/
- Pause();
- printf("Testing powers Z^i for small Integers Z and i.\n");
- N = 0;
- /* ... test powers of zero. */
- I = 0;
- Z = -Zero;
- M = 3.0;
- Break = False;
- do {
- X = One;
- SR3980();
- if (I <= 10) {
- I = 1023;
- SR3980();
- }
- if (Z == MinusOne) Break = True;
- else {
- Z = MinusOne;
- PrintIfNPositive();
- N = 0;
- /* .. if(-1)^N is invalid, replace MinusOne by One. */
- I = - 4;
- }
- } while ( ! Break);
- PrintIfNPositive();
- N1 = N;
- N = 0;
- Z = A1;
- M = FLOOR(Two * LOG(W) / LOG(A1));
- Break = False;
- do {
- X = Z;
- I = 1;
- SR3980();
- if (Z == AInvrse) Break = True;
- else Z = AInvrse;
- } while ( ! (Break));
- /*=============================================*/
- Milestone = 100;
- /*=============================================*/
- /* Powers of Radix have been tested, */
- /* next try a few primes */
- M = NoTrials;
- Z = Three;
- do {
- X = Z;
- I = 1;
- SR3980();
- do {
- Z = Z + Two;
- } while ( Three * FLOOR(Z / Three) == Z );
- } while ( Z < Eight * Three );
- if (N > 0) {
- printf("Errors like this may invalidate financial calculations\n");
- printf("\tinvolving interest rates.\n");
- }
- PrintIfNPositive();
- N += N1;
- if (N == 0) printf("... no discrepancis found.\n");
- if (N > 0) Pause();
- else printf("\n");
- /*=============================================*/
- /*SPLIT
- }
-#include "paranoia.h"
-part6(){
-*/
- Milestone = 110;
- /*=============================================*/
- printf("Seeking Underflow thresholds UfThold and E0.\n");
- D = U1;
- if (Precision != FLOOR(Precision)) {
- D = BInvrse;
- X = Precision;
- do {
- D = D * BInvrse;
- X = X - One;
- } while ( X > Zero);
- }
- Y = One;
- Z = D;
- /* ... D is power of 1/Radix < 1. */
- do {
- C = Y;
- Y = Z;
- Z = Y * Y;
- } while ((Y > Z) && (Z + Z > Z));
- Y = C;
- Z = Y * D;
- do {
- C = Y;
- Y = Z;
- Z = Y * D;
- } while ((Y > Z) && (Z + Z > Z));
- if (Radix < Two) HInvrse = Two;
- else HInvrse = Radix;
- H = One / HInvrse;
- /* ... 1/HInvrse == H == Min(1/Radix, 1/2) */
- CInvrse = One / C;
- E0 = C;
- Z = E0 * H;
- /* ...1/Radix^(BIG Integer) << 1 << CInvrse == 1/C */
- do {
- Y = E0;
- E0 = Z;
- Z = E0 * H;
- } while ((E0 > Z) && (Z + Z > Z));
- UfThold = E0;
- E1 = Zero;
- Q = Zero;
- E9 = U2;
- S = One + E9;
- D = C * S;
- if (D <= C) {
- E9 = Radix * U2;
- S = One + E9;
- D = C * S;
- if (D <= C) {
- BadCond(Failure, "multiplication gets too many last digits wrong.\n");
- Underflow = E0;
- Y1 = Zero;
- PseudoZero = Z;
- Pause();
- }
- }
- else {
- Underflow = D;
- PseudoZero = Underflow * H;
- UfThold = Zero;
- do {
- Y1 = Underflow;
- Underflow = PseudoZero;
- if (E1 + E1 <= E1) {
- Y2 = Underflow * HInvrse;
- E1 = FABS(Y1 - Y2);
- Q = Y1;
- if ((UfThold == Zero) && (Y1 != Y2)) UfThold = Y1;
- }
- PseudoZero = PseudoZero * H;
- } while ((Underflow > PseudoZero)
- && (PseudoZero + PseudoZero > PseudoZero));
- }
- /* Comment line 4530 .. 4560 */
- if (PseudoZero != Zero) {
- printf("\n");
- Z = PseudoZero;
- /* ... Test PseudoZero for "phoney- zero" violates */
- /* ... PseudoZero < Underflow or PseudoZero < PseudoZero + PseudoZero
- ... */
- if (PseudoZero <= Zero) {
- BadCond(Failure, "Positive expressions can underflow to an\n");
- printf("allegedly negative value\n");
- printf("PseudoZero that prints out as: %g .\n", PseudoZero);
- X = - PseudoZero;
- if (X <= Zero) {
- printf("But -PseudoZero, which should be\n");
- printf("positive, isn't; it prints out as %g .\n", X);
- }
- }
- else {
- BadCond(Flaw, "Underflow can stick at an allegedly positive\n");
- printf("value PseudoZero that prints out as %g .\n", PseudoZero);
- }
- TstPtUf();
- }
- /*=============================================*/
- Milestone = 120;
- /*=============================================*/
- if (CInvrse * Y > CInvrse * Y1) {
- S = H * S;
- E0 = Underflow;
- }
- if (! ((E1 == Zero) || (E1 == E0))) {
- BadCond(Defect, "");
- if (E1 < E0) {
- printf("Products underflow at a higher");
- printf(" threshold than differences.\n");
- if (PseudoZero == Zero)
- E0 = E1;
- }
- else {
- printf("Difference underflows at a higher");
- printf(" threshold than products.\n");
- }
- }
- printf("Smallest strictly positive number found is E0 = %g .\n", E0);
- Z = E0;
- TstPtUf();
- Underflow = E0;
- if (N == 1) Underflow = Y;
- I = 4;
- if (E1 == Zero) I = 3;
- if (UfThold == Zero) I = I - 2;
- UfNGrad = True;
- switch (I) {
- case 1:
- UfThold = Underflow;
- if ((CInvrse * Q) != ((CInvrse * Y) * S)) {
- UfThold = Y;
- BadCond(Failure, "Either accuracy deteriorates as numbers\n");
- printf("approach a threshold = %.17e\n", UfThold);;
- printf(" coming down from %.17e\n", C);
- printf(" or else multiplication gets too many last digits wrong.\n");
- }
- Pause();
- break;
-
- case 2:
- BadCond(Failure, "Underflow confuses Comparison, which alleges that\n");
- printf("Q == Y while denying that |Q - Y| == 0; these values\n");
- printf("print out as Q = %.17e, Y = %.17e .\n", Q, Y2);
- printf ("|Q - Y| = %.17e .\n" , FABS(Q - Y2));
- UfThold = Q;
- break;
-
- case 3:
- X = X;
- break;
-
- case 4:
- if ((Q == UfThold) && (E1 == E0)
- && (FABS( UfThold - E1 / E9) <= E1)) {
- UfNGrad = False;
- printf("Underflow is gradual; it incurs Absolute Error =\n");
- printf("(roundoff in UfThold) < E0.\n");
- Y = E0 * CInvrse;
- Y = Y * (OneAndHalf + U2);
- X = CInvrse * (One + U2);
- Y = Y / X;
- IEEE = (Y == E0);
- }
- }
- if (UfNGrad) {
- printf("\n");
- sigsave = sigfpe;
- if (setjmp(ovfl_buf)) {
- printf("Underflow / UfThold failed!\n");
- R = H + H;
- }
- else R = SQRT(Underflow / UfThold);
- sigsave = 0;
- if (R <= H) {
- Z = R * UfThold;
- X = Z * (One + R * H * (One + H));
- }
- else {
- Z = UfThold;
- X = Z * (One + H * H * (One + H));
- }
- if (! ((X == Z) || (X - Z != Zero))) {
- BadCond(Flaw, "");
- printf("X = %.17e\n\tis not equal to Z = %.17e .\n", X, Z);
- Z9 = X - Z;
- printf("yet X - Z yields %.17e .\n", Z9);
- printf(" Should this NOT signal Underflow, ");
- printf("this is a SERIOUS DEFECT\nthat causes ");
- printf("confusion when innocent statements like\n");;
- printf(" if (X == Z) ... else");
- printf(" ... (f(X) - f(Z)) / (X - Z) ...\n");
- printf("encounter Division by Zero although actually\n");
- sigsave = sigfpe;
- if (setjmp(ovfl_buf)) printf("X / Z fails!\n");
- else printf("X / Z = 1 + %g .\n", (X / Z - Half) - Half);
- sigsave = 0;
- }
- }
- printf("The Underflow threshold is %.17e, %s\n", UfThold,
- " below which");
- printf("calculation may suffer larger Relative error than ");
- printf("merely roundoff.\n");
- Y2 = U1 * U1;
- Y = Y2 * Y2;
- Y2 = Y * U1;
- if (Y2 <= UfThold) {
- if (Y > E0) {
- BadCond(Defect, "");
- I = 5;
- }
- else {
- BadCond(Serious, "");
- I = 4;
- }
- printf("Range is too narrow; U1^%d Underflows.\n", I);
- }
- /*=============================================*/
- /*SPLIT
- }
-#include "paranoia.h"
-part7(){
-*/
- Milestone = 130;
- /*=============================================*/
- Y = - FLOOR(Half - TwoForty * LOG(UfThold) / LOG(HInvrse)) / TwoForty;
- Y2 = Y + Y;
- printf("Since underflow occurs below the threshold\n");
- printf("UfThold = (%.17e) ^ (%.17e)\nonly underflow ", HInvrse, Y);
- printf("should afflict the expression\n\t(%.17e) ^ (%.17e);\n", HInvrse, Y);
- V9 = POW(HInvrse, Y2);
- printf("actually calculating yields: %.17e .\n", V9);
- if (! ((V9 >= Zero) && (V9 <= (Radix + Radix + E9) * UfThold))) {
- BadCond(Serious, "this is not between 0 and underflow\n");
- printf(" threshold = %.17e .\n", UfThold);
- }
- else if (! (V9 > UfThold * (One + E9)))
- printf("This computed value is O.K.\n");
- else {
- BadCond(Defect, "this is not between 0 and underflow\n");
- printf(" threshold = %.17e .\n", UfThold);
- }
- /*=============================================*/
- Milestone = 140;
- /*=============================================*/
- printf("\n");
- /* ...calculate Exp2 == exp(2) == 7.389056099... */
- X = Zero;
- I = 2;
- Y = Two * Three;
- Q = Zero;
- N = 0;
- do {
- Z = X;
- I = I + 1;
- Y = Y / (I + I);
- R = Y + Q;
- X = Z + R;
- Q = (Z - X) + R;
- } while(X > Z);
- Z = (OneAndHalf + One / Eight) + X / (OneAndHalf * ThirtyTwo);
- X = Z * Z;
- Exp2 = X * X;
- X = F9;
- Y = X - U1;
- printf("Testing X^((X + 1) / (X - 1)) vs. exp(2) = %.17e as X -> 1.\n",
- Exp2);
- for(I = 1;;) {
- Z = X - BInvrse;
- Z = (X + One) / (Z - (One - BInvrse));
- Q = POW(X, Z) - Exp2;
- if (FABS(Q) > TwoForty * U2) {
- N = 1;
- V9 = (X - BInvrse) - (One - BInvrse);
- BadCond(Defect, "Calculated");
- printf(" %.17e for\n", POW(X,Z));
- printf("\t(1 + (%.17e) ^ (%.17e);\n", V9, Z);
- printf("\tdiffers from correct value by %.17e .\n", Q);
- printf("\tThis much error may spoil financial\n");
- printf("\tcalculations involving tiny interest rates.\n");
- break;
- }
- else {
- Z = (Y - X) * Two + Y;
- X = Y;
- Y = Z;
- Z = One + (X - F9)*(X - F9);
- if (Z > One && I < NoTrials) I++;
- else {
- if (X > One) {
- if (N == 0)
- printf("Accuracy seems adequate.\n");
- break;
- }
- else {
- X = One + U2;
- Y = U2 + U2;
- Y += X;
- I = 1;
- }
- }
- }
- }
- /*=============================================*/
- Milestone = 150;
- /*=============================================*/
- printf("Testing powers Z^Q at four nearly extreme values.\n");
- N = 0;
- Z = A1;
- Q = FLOOR(Half - LOG(C) / LOG(A1));
- Break = False;
- do {
- X = CInvrse;
- Y = POW(Z, Q);
- IsYeqX();
- Q = - Q;
- X = C;
- Y = POW(Z, Q);
- IsYeqX();
- if (Z < One) Break = True;
- else Z = AInvrse;
- } while ( ! (Break));
- PrintIfNPositive();
- if (N == 0) printf(" ... no discrepancies found.\n");
- printf("\n");
-
- /*=============================================*/
- Milestone = 160;
- /*=============================================*/
- Pause();
- printf("Searching for Overflow threshold:\n");
- printf("This may generate an error.\n");
- Y = - CInvrse;
- V9 = HInvrse * Y;
- sigsave = sigfpe;
- if (setjmp(ovfl_buf)) { I = 0; V9 = Y; goto overflow; }
- do {
- V = Y;
- Y = V9;
- V9 = HInvrse * Y;
- } while(V9 < Y);
- I = 1;
-overflow:
- sigsave = 0;
- Z = V9;
- printf("Can `Z = -Y' overflow?\n");
- printf("Trying it on Y = %.17e .\n", Y);
- V9 = - Y;
- V0 = V9;
- if (V - Y == V + V0) printf("Seems O.K.\n");
- else {
- printf("finds a ");
- BadCond(Flaw, "-(-Y) differs from Y.\n");
- }
- if (Z != Y) {
- BadCond(Serious, "");
- printf("overflow past %.17e\n\tshrinks to %.17e .\n", Y, Z);
- }
- if (I) {
- Y = V * (HInvrse * U2 - HInvrse);
- Z = Y + ((One - HInvrse) * U2) * V;
- if (Z < V0) Y = Z;
- if (Y < V0) V = Y;
- if (V0 - V < V0) V = V0;
- }
- else {
- V = Y * (HInvrse * U2 - HInvrse);
- V = V + ((One - HInvrse) * U2) * Y;
- }
- printf("Overflow threshold is V = %.17e .\n", V);
- if (I) printf("Overflow saturates at V0 = %.17e .\n", V0);
- else printf("There is no saturation value because the system traps on overflow.\n");
- V9 = V * One;
- printf("No Overflow should be signaled for V * 1 = %.17e\n", V9);
- V9 = V / One;
- printf(" nor for V / 1 = %.17e .\n", V9);
- printf("Any overflow signal separating this * from the one\n");
- printf("above is a DEFECT.\n");
- /*=============================================*/
- Milestone = 170;
- /*=============================================*/
- if (!(-V < V && -V0 < V0 && -UfThold < V && UfThold < V)) {
- BadCond(Failure, "Comparisons involving ");
- printf("+-%g, +-%g\nand +-%g are confused by Overflow.",
- V, V0, UfThold);
- }
- /*=============================================*/
- Milestone = 175;
- /*=============================================*/
- printf("\n");
- for(Indx = 1; Indx <= 3; ++Indx) {
- switch (Indx) {
- case 1: Z = UfThold; break;
- case 2: Z = E0; break;
- case 3: Z = PseudoZero; break;
- }
- if (Z != Zero) {
- V9 = SQRT(Z);
- Y = V9 * V9;
- if (Y / (One - Radix * E9) < Z
- || Y > (One + Radix * E9) * Z) { /* dgh: + E9 --> * E9 */
- if (V9 > U1) BadCond(Serious, "");
- else BadCond(Defect, "");
- printf("Comparison alleges that what prints as Z = %.17e\n", Z);
- printf(" is too far from sqrt(Z) ^ 2 = %.17e .\n", Y);
- }
- }
- }
- /*=============================================*/
- Milestone = 180;
- /*=============================================*/
- for(Indx = 1; Indx <= 2; ++Indx) {
- if (Indx == 1) Z = V;
- else Z = V0;
- V9 = SQRT(Z);
- X = (One - Radix * E9) * V9;
- V9 = V9 * X;
- if (((V9 < (One - Two * Radix * E9) * Z) || (V9 > Z))) {
- Y = V9;
- if (X < W) BadCond(Serious, "");
- else BadCond(Defect, "");
- printf("Comparison alleges that Z = %17e\n", Z);
- printf(" is too far from sqrt(Z) ^ 2 (%.17e) .\n", Y);
- }
- }
- /*=============================================*/
- /*SPLIT
- }
-#include "paranoia.h"
-part8(){
-*/
- Milestone = 190;
- /*=============================================*/
- Pause();
- X = UfThold * V;
- Y = Radix * Radix;
- if (X*Y < One || X > Y) {
- if (X * Y < U1 || X > Y/U1) BadCond(Defect, "Badly");
- else BadCond(Flaw, "");
-
- printf(" unbalanced range; UfThold * V = %.17e\n\t%s\n",
- X, "is too far from 1.\n");
- }
- /*=============================================*/
- Milestone = 200;
- /*=============================================*/
- for (Indx = 1; Indx <= 5; ++Indx) {
- X = F9;
- switch (Indx) {
- case 2: X = One + U2; break;
- case 3: X = V; break;
- case 4: X = UfThold; break;
- case 5: X = Radix;
- }
- Y = X;
- sigsave = sigfpe;
- if (setjmp(ovfl_buf))
- printf(" X / X traps when X = %g\n", X);
- else {
- V9 = (Y / X - Half) - Half;
- if (V9 == Zero) continue;
- if (V9 == - U1 && Indx < 5) BadCond(Flaw, "");
- else BadCond(Serious, "");
- printf(" X / X differs from 1 when X = %.17e\n", X);
- printf(" instead, X / X - 1/2 - 1/2 = %.17e .\n", V9);
- }
- sigsave = 0;
- }
- /*=============================================*/
- Milestone = 210;
- /*=============================================*/
- MyZero = Zero;
- printf("\n");
- printf("What message and/or values does Division by Zero produce?\n") ;
-#ifndef NOPAUSE
- printf("This can interupt your program. You can ");
- printf("skip this part if you wish.\n");
- printf("Do you wish to compute 1 / 0? ");
- fflush(stdout);
- read (KEYBOARD, ch, 8);
- if ((ch[0] == 'Y') || (ch[0] == 'y')) {
-#endif
- sigsave = sigfpe;
- printf(" Trying to compute 1 / 0 produces ...");
- if (!setjmp(ovfl_buf)) printf(" %.7e .\n", One / MyZero);
- sigsave = 0;
-#ifndef NOPAUSE
- }
- else printf("O.K.\n");
- printf("\nDo you wish to compute 0 / 0? ");
- fflush(stdout);
- read (KEYBOARD, ch, 80);
- if ((ch[0] == 'Y') || (ch[0] == 'y')) {
-#endif
- sigsave = sigfpe;
- printf("\n Trying to compute 0 / 0 produces ...");
- if (!setjmp(ovfl_buf)) printf(" %.7e .\n", Zero / MyZero);
- sigsave = 0;
-#ifndef NOPAUSE
- }
- else printf("O.K.\n");
-#endif
- /*=============================================*/
- Milestone = 220;
- /*=============================================*/
- Pause();
- printf("\n");
- {
- static char *msg[] = {
- "FAILUREs encountered =",
- "SERIOUS DEFECTs discovered =",
- "DEFECTs discovered =",
- "FLAWs discovered =" };
- int i;
- for(i = 0; i < 4; i++) if (ErrCnt[i])
- printf("The number of %-29s %d.\n",
- msg[i], ErrCnt[i]);
- }
- printf("\n");
- if ((ErrCnt[Failure] + ErrCnt[Serious] + ErrCnt[Defect]
- + ErrCnt[Flaw]) > 0) {
- if ((ErrCnt[Failure] + ErrCnt[Serious] + ErrCnt[
- Defect] == 0) && (ErrCnt[Flaw] > 0)) {
- printf("The arithmetic diagnosed seems ");
- printf("Satisfactory though flawed.\n");
- }
- if ((ErrCnt[Failure] + ErrCnt[Serious] == 0)
- && ( ErrCnt[Defect] > 0)) {
- printf("The arithmetic diagnosed may be Acceptable\n");
- printf("despite inconvenient Defects.\n");
- }
- if ((ErrCnt[Failure] + ErrCnt[Serious]) > 0) {
- printf("The arithmetic diagnosed has ");
- printf("unacceptable Serious Defects.\n");
- }
- if (ErrCnt[Failure] > 0) {
- printf("Potentially fatal FAILURE may have spoiled this");
- printf(" program's subsequent diagnoses.\n");
- }
- }
- else {
- printf("No failures, defects nor flaws have been discovered.\n");
- if (! ((RMult == Rounded) && (RDiv == Rounded)
- && (RAddSub == Rounded) && (RSqrt == Rounded)))
- printf("The arithmetic diagnosed seems Satisfactory.\n");
- else {
- if (StickyBit >= One &&
- (Radix - Two) * (Radix - Nine - One) == Zero) {
- printf("Rounding appears to conform to ");
- printf("the proposed IEEE standard P");
- if ((Radix == Two) &&
- ((Precision - Four * Three * Two) *
- ( Precision - TwentySeven -
- TwentySeven + One) == Zero))
- printf("754");
- else printf("854");
- if (IEEE) printf(".\n");
- else {
- printf(",\nexcept for possibly Double Rounding");
- printf(" during Gradual Underflow.\n");
- }
- }
- printf("The arithmetic diagnosed appears to be Excellent!\n");
- }
- }
- if (fpecount)
- printf("\nA total of %d floating point exceptions were registered.\n",
- fpecount);
- printf("END OF TEST.\n");
- return 0;
- }
-
-/*SPLIT subs.c
-#include "paranoia.h"
-*/
-
-/* Sign */
-
-FLOAT Sign (X)
-FLOAT X;
-{ return X >= 0. ? 1.0 : -1.0; }
-
-/* Pause */
-
-Pause()
-{
-#ifndef NOPAUSE
- char ch[8];
-
- printf("\nTo continue, press RETURN");
- fflush(stdout);
- read(KEYBOARD, ch, 8);
-#endif
- printf("\nDiagnosis resumes after milestone Number %d", Milestone);
- printf(" Page: %d\n\n", PageNo);
- ++Milestone;
- ++PageNo;
- }
-
- /* TstCond */
-
-TstCond (K, Valid, T)
-int K, Valid;
-char *T;
-{ if (! Valid) { BadCond(K,T); printf(".\n"); } }
-
-BadCond(K, T)
-int K;
-char *T;
-{
- static char *msg[] = { "FAILURE", "SERIOUS DEFECT", "DEFECT", "FLAW" };
-
- ErrCnt [K] = ErrCnt [K] + 1;
- printf("%s: %s", msg[K], T);
- }
-
-/* Random */
-/* Random computes
- X = (Random1 + Random9)^5
- Random1 = X - FLOOR(X) + 0.000005 * X;
- and returns the new value of Random1
-*/
-
-FLOAT Random()
-{
- FLOAT X, Y;
-
- X = Random1 + Random9;
- Y = X * X;
- Y = Y * Y;
- X = X * Y;
- Y = X - FLOOR(X);
- Random1 = Y + X * 0.000005;
- return(Random1);
- }
-
-/* SqXMinX */
-
-SqXMinX (ErrKind)
-int ErrKind;
-{
- FLOAT XA, XB;
-
- XB = X * BInvrse;
- XA = X - XB;
- SqEr = ((SQRT(X * X) - XB) - XA) / OneUlp;
- if (SqEr != Zero) {
- if (SqEr < MinSqEr) MinSqEr = SqEr;
- if (SqEr > MaxSqEr) MaxSqEr = SqEr;
- J = J + 1.0;
- BadCond(ErrKind, "\n");
- printf("sqrt( %.17e) - %.17e = %.17e\n", X * X, X, OneUlp * SqEr);
- printf("\tinstead of correct value 0 .\n");
- }
- }
-
-/* NewD */
-
-NewD()
-{
- X = Z1 * Q;
- X = FLOOR(Half - X / Radix) * Radix + X;
- Q = (Q - X * Z) / Radix + X * X * (D / Radix);
- Z = Z - Two * X * D;
- if (Z <= Zero) {
- Z = - Z;
- Z1 = - Z1;
- }
- D = Radix * D;
- }
-
-/* SR3750 */
-
-SR3750()
-{
- if (! ((X - Radix < Z2 - Radix) || (X - Z2 > W - Z2))) {
- I = I + 1;
- X2 = SQRT(X * D);
- Y2 = (X2 - Z2) - (Y - Z2);
- X2 = X8 / (Y - Half);
- X2 = X2 - Half * X2 * X2;
- SqEr = (Y2 + Half) + (Half - X2);
- if (SqEr < MinSqEr) MinSqEr = SqEr;
- SqEr = Y2 - X2;
- if (SqEr > MaxSqEr) MaxSqEr = SqEr;
- }
- }
-
-/* IsYeqX */
-
-IsYeqX()
-{
- if (Y != X) {
- if (N <= 0) {
- if (Z == Zero && Q <= Zero)
- printf("WARNING: computing\n");
- else BadCond(Defect, "computing\n");
- printf("\t(%.17e) ^ (%.17e)\n", Z, Q);
- printf("\tyielded %.17e;\n", Y);
- printf("\twhich compared unequal to correct %.17e ;\n",
- X);
- printf("\t\tthey differ by %.17e .\n", Y - X);
- }
- N = N + 1; /* ... count discrepancies. */
- }
- }
-
-/* SR3980 */
-
-SR3980()
-{
- do {
- Q = (FLOAT) I;
- Y = POW(Z, Q);
- IsYeqX();
- if (++I > M) break;
- X = Z * X;
- } while ( X < W );
- }
-
-/* PrintIfNPositive */
-
-PrintIfNPositive()
-{
- if (N > 0) printf("Similar discrepancies have occurred %d times.\n", N);
- }
-
-/* TstPtUf */
-
-TstPtUf()
-{
- N = 0;
- if (Z != Zero) {
- printf("Since comparison denies Z = 0, evaluating ");
- printf("(Z + Z) / Z should be safe.\n");
- sigsave = sigfpe;
- if (setjmp(ovfl_buf)) goto very_serious;
- Q9 = (Z + Z) / Z;
- printf("What the machine gets for (Z + Z) / Z is %.17e .\n",
- Q9);
- if (FABS(Q9 - Two) < Radix * U2) {
- printf("This is O.K., provided Over/Underflow");
- printf(" has NOT just been signaled.\n");
- }
- else {
- if ((Q9 < One) || (Q9 > Two)) {
-very_serious:
- N = 1;
- ErrCnt [Serious] = ErrCnt [Serious] + 1;
- printf("This is a VERY SERIOUS DEFECT!\n");
- }
- else {
- N = 1;
- ErrCnt [Defect] = ErrCnt [Defect] + 1;
- printf("This is a DEFECT!\n");
- }
- }
- sigsave = 0;
- V9 = Z * One;
- Random1 = V9;
- V9 = One * Z;
- Random2 = V9;
- V9 = Z / One;
- if ((Z == Random1) && (Z == Random2) && (Z == V9)) {
- if (N > 0) Pause();
- }
- else {
- N = 1;
- BadCond(Defect, "What prints as Z = ");
- printf("%.17e\n\tcompares different from ", Z);
- if (Z != Random1) printf("Z * 1 = %.17e ", Random1);
- if (! ((Z == Random2)
- || (Random2 == Random1)))
- printf("1 * Z == %g\n", Random2);
- if (! (Z == V9)) printf("Z / 1 = %.17e\n", V9);
- if (Random2 != Random1) {
- ErrCnt [Defect] = ErrCnt [Defect] + 1;
- BadCond(Defect, "Multiplication does not commute!\n");
- printf("\tComparison alleges that 1 * Z = %.17e\n",
- Random2);
- printf("\tdiffers from Z * 1 = %.17e\n", Random1);
- }
- Pause();
- }
- }
- }
-
-notify(s)
-char *s;
-{
- printf("%s test appears to be inconsistent...\n", s);
- printf(" PLEASE NOTIFY KARPINKSI!\n");
- }
-
-/*SPLIT msgs.c */
-
-/* Instructions */
-
-msglist(s)
-char **s;
-{ while(*s) printf("%s\n", *s++); }
-
-Instructions()
-{
- static char *instr[] = {
- "Lest this program stop prematurely, i.e. before displaying\n",
- " `END OF TEST',\n",
- "try to persuade the computer NOT to terminate execution when an",
- "error like Over/Underflow or Division by Zero occurs, but rather",
- "to persevere with a surrogate value after, perhaps, displaying some",
- "warning. If persuasion avails naught, don't despair but run this",
- "program anyway to see how many milestones it passes, and then",
- "amend it to make further progress.\n",
- "Answer questions with Y, y, N or n (unless otherwise indicated).\n",
- 0};
-
- msglist(instr);
- }
-
-/* Heading */
-
-Heading()
-{
- static char *head[] = {
- "Users are invited to help debug and augment this program so it will",
- "cope with unanticipated and newly uncovered arithmetic pathologies.\n",
- "Please send suggestions and interesting results to",
- "\tRichard Karpinski",
- "\tComputer Center U-76",
- "\tUniversity of California",
- "\tSan Francisco, CA 94143-0704, USA\n",
- "In doing so, please include the following information:",
-#ifdef Single
- "\tPrecision:\tsingle;",
-#else
- "\tPrecision:\tdouble;",
-#endif
- "\tVersion:\t10 February 1989;",
- "\tComputer:\n",
- "\tCompiler:\n",
- "\tOptimization level:\n",
- "\tOther relevant compiler options:",
- 0};
-
- msglist(head);
- }
-
-/* Characteristics */
-
-Characteristics()
-{
- static char *chars[] = {
- "Running this program should reveal these characteristics:",
- " Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...",
- " Precision = number of significant digits carried.",
- " U2 = Radix/Radix^Precision = One Ulp",
- "\t(OneUlpnit in the Last Place) of 1.000xxx .",
- " U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .",
- " Adequacy of guard digits for Mult., Div. and Subt.",
- " Whether arithmetic is chopped, correctly rounded, or something else",
- "\tfor Mult., Div., Add/Subt. and Sqrt.",
- " Whether a Sticky Bit used correctly for rounding.",
- " UnderflowThreshold = an underflow threshold.",
- " E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.",
- " V = an overflow threshold, roughly.",
- " V0 tells, roughly, whether Infinity is represented.",
- " Comparisions are checked for consistency with subtraction",
- "\tand for contamination with pseudo-zeros.",
- " Sqrt is tested. Y^X is not tested.",
- " Extra-precise subexpressions are revealed but NOT YET tested.",
- " Decimal-Binary conversion is NOT YET tested for accuracy.",
- 0};
-
- msglist(chars);
- }
-
-History()
-
-{ /* History */
- /* Converted from Brian Wichmann's Pascal version to C by Thos Sumner,
- with further massaging by David M. Gay. */
-
- static char *hist[] = {
- "The program attempts to discriminate among",
- " FLAWs, like lack of a sticky bit,",
- " Serious DEFECTs, like lack of a guard digit, and",
- " FAILUREs, like 2+2 == 5 .",
- "Failures may confound subsequent diagnoses.\n",
- "The diagnostic capabilities of this program go beyond an earlier",
- "program called `MACHAR', which can be found at the end of the",
- "book `Software Manual for the Elementary Functions' (1980) by",
- "W. J. Cody and W. Waite. Although both programs try to discover",
- "the Radix, Precision and range (over/underflow thresholds)",
- "of the arithmetic, this program tries to cope with a wider variety",
- "of pathologies, and to say how well the arithmetic is implemented.",
- "\nThe program is based upon a conventional radix representation for",
- "floating-point numbers, but also allows logarithmic encoding",
- "as used by certain early WANG machines.\n",
- "BASIC version of this program (C) 1983 by Prof. W. M. Kahan;",
- "see source comments for more history.",
- 0};
-
- msglist(hist);
- }
-
-double
-pow(x, y) /* return x ^ y (exponentiation) */
-double x, y;
-{
- extern double exp(), frexp(), ldexp(), log(), modf();
- double xy, ye;
- long i;
- int ex, ey = 0, flip = 0;
-
- if (!y) return 1.0;
-
- if ((y < -1100. || y > 1100.) && x != -1.) return exp(y * log(x));
-
- if (y < 0.) { y = -y; flip = 1; }
- y = modf(y, &ye);
- if (y) xy = exp(y * log(x));
- else xy = 1.0;
- /* next several lines assume >= 32 bit integers */
- x = frexp(x, &ex);
- if (i = ye) for(;;) {
- if (i & 1) { xy *= x; ey += ex; }
- if (!(i >>= 1)) break;
- x *= x;
- ex *= 2;
- if (x < .5) { x *= 2.; ex -= 1; }
- }
- if (flip) { xy = 1. / xy; ey = -ey; }
- return ldexp(xy, ey);
-}
+#undef V9
+#define NOPAUSE
+/* A C version of Kahan's Floating Point Test "Paranoia"
+
+ Thos Sumner, UCSF, Feb. 1985
+ David Gay, BTL, Jan. 1986
+
+ This is a rewrite from the Pascal version by
+
+ B. A. Wichmann, 18 Jan. 1985
+
+ (and does NOT exhibit good C programming style).
+
+(C) Apr 19 1983 in BASIC version by:
+ Professor W. M. Kahan,
+ 567 Evans Hall
+ Electrical Engineering & Computer Science Dept.
+ University of California
+ Berkeley, California 94720
+ USA
+
+converted to Pascal by:
+ B. A. Wichmann
+ National Physical Laboratory
+ Teddington Middx
+ TW11 OLW
+ UK
+
+converted to C by:
+
+ David M. Gay and Thos Sumner
+ AT&T Bell Labs Computer Center, Rm. U-76
+ 600 Mountain Avenue University of California
+ Murray Hill, NJ 07974 San Francisco, CA 94143
+ USA USA
+
+with simultaneous corrections to the Pascal source (reflected
+in the Pascal source available over netlib).
+[A couple of bug fixes from dgh = sun!dhough incorporated 31 July 1986.]
+
+Reports of results on various systems from all the versions
+of Paranoia are being collected by Richard Karpinski at the
+same address as Thos Sumner. This includes sample outputs,
+bug reports, and criticisms.
+
+You may copy this program freely if you acknowledge its source.
+Comments on the Pascal version to NPL, please.
+
+
+The C version catches signals from floating-point exceptions.
+If signal(SIGFPE,...) is unavailable in your environment, you may
+#define NOSIGNAL to comment out the invocations of signal.
+
+This source file is too big for some C compilers, but may be split
+into pieces. Comments containing "SPLIT" suggest convenient places
+for this splitting. At the end of these comments is an "ed script"
+(for the UNIX(tm) editor ed) that will do this splitting.
+
+By #defining Single when you compile this source, you may obtain
+a single-precision C version of Paranoia.
+
+
+The following is from the introductory commentary from Wichmann's work:
+
+The BASIC program of Kahan is written in Microsoft BASIC using many
+facilities which have no exact analogy in Pascal. The Pascal
+version below cannot therefore be exactly the same. Rather than be
+a minimal transcription of the BASIC program, the Pascal coding
+follows the conventional style of block-structured languages. Hence
+the Pascal version could be useful in producing versions in other
+structured languages.
+
+Rather than use identifiers of minimal length (which therefore have
+little mnemonic significance), the Pascal version uses meaningful
+identifiers as follows [Note: A few changes have been made for C]:
+
+
+BASIC C BASIC C BASIC C
+
+ A J S StickyBit
+ A1 AInverse J0 NoErrors T
+ B Radix [Failure] T0 Underflow
+ B1 BInverse J1 NoErrors T2 ThirtyTwo
+ B2 RadixD2 [SeriousDefect] T5 OneAndHalf
+ B9 BMinusU2 J2 NoErrors T7 TwentySeven
+ C [Defect] T8 TwoForty
+ C1 CInverse J3 NoErrors U OneUlp
+ D [Flaw] U0 UnderflowThreshold
+ D4 FourD K PageNo U1
+ E0 L Milestone U2
+ E1 M V
+ E2 Exp2 N V0
+ E3 N1 V8
+ E5 MinSqEr O Zero V9
+ E6 SqEr O1 One W
+ E7 MaxSqEr O2 Two X
+ E8 O3 Three X1
+ E9 O4 Four X8
+ F1 MinusOne O5 Five X9 Random1
+ F2 Half O8 Eight Y
+ F3 Third O9 Nine Y1
+ F6 P Precision Y2
+ F9 Q Y9 Random2
+ G1 GMult Q8 Z
+ G2 GDiv Q9 Z0 PseudoZero
+ G3 GAddSub R Z1
+ H R1 RMult Z2
+ H1 HInverse R2 RDiv Z9
+ I R3 RAddSub
+ IO NoTrials R4 RSqrt
+ I3 IEEE R9 Random9
+
+ SqRWrng
+
+All the variables in BASIC are true variables and in consequence,
+the program is more difficult to follow since the "constants" must
+be determined (the glossary is very helpful). The Pascal version
+uses Real constants, but checks are added to ensure that the values
+are correctly converted by the compiler.
+
+The major textual change to the Pascal version apart from the
+identifiersis that named procedures are used, inserting parameters
+wherehelpful. New procedures are also introduced. The
+correspondence is as follows:
+
+
+BASIC Pascal
+lines
+
+ 90- 140 Pause
+ 170- 250 Instructions
+ 380- 460 Heading
+ 480- 670 Characteristics
+ 690- 870 History
+2940-2950 Random
+3710-3740 NewD
+4040-4080 DoesYequalX
+4090-4110 PrintIfNPositive
+4640-4850 TestPartialUnderflow
+
+=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=
+
+Below is an "ed script" that splits para.c into 10 files
+of the form part[1-8].c, subs.c, and msgs.c, plus a header
+file, paranoia.h, that these files require.
+
+r paranoia.c
+$
+?SPLIT
++,$w msgs.c
+ .,$d
+?SPLIT
+ .d
++d
+-,$w subs.c
+-,$d
+?part8
++d
+?include
+ .,$w part8.c
+ .,$d
+-d
+?part7
++d
+?include
+ .,$w part7.c
+ .,$d
+-d
+?part6
++d
+?include
+ .,$w part6.c
+ .,$d
+-d
+?part5
++d
+?include
+ .,$w part5.c
+ .,$d
+-d
+?part4
++d
+?include
+ .,$w part4.c
+ .,$d
+-d
+?part3
++d
+?include
+ .,$w part3.c
+ .,$d
+-d
+?part2
++d
+?include
+ .,$w part2.c
+ .,$d
+?SPLIT
+ .d
+1,/^#include/-1d
+1,$w part1.c
+/Computed constants/,$d
+1,$s/^int/extern &/
+1,$s/^FLOAT/extern &/
+1,$s/^char/extern &/
+1,$s! = .*!;!
+/^Guard/,/^Round/s/^/extern /
+/^jmp_buf/s/^/extern /
+/^Sig_type/s/^/extern /
+s/$/\
+extern void sigfpe();/
+w paranoia.h
+q
+
+*/
+
+#include <stdio.h>
+#ifndef NOSIGNAL
+#include <signal.h>
+#endif
+#include <setjmp.h>
+
+extern double fabs(), floor(), log(), pow(), sqrt();
+
+#ifdef Single
+#define FLOAT float
+#define FABS(x) (float)fabs((double)(x))
+#define FLOOR(x) (float)floor((double)(x))
+#define LOG(x) (float)log((double)(x))
+#define POW(x,y) (float)pow((double)(x),(double)(y))
+#define SQRT(x) (float)sqrt((double)(x))
+#else
+#define FLOAT double
+#define FABS(x) fabs(x)
+#define FLOOR(x) floor(x)
+#define LOG(x) log(x)
+#define POW(x,y) pow(x,y)
+#define SQRT(x) sqrt(x)
+#endif
+
+jmp_buf ovfl_buf;
+typedef void (*Sig_type)();
+Sig_type sigsave;
+
+#define KEYBOARD 0
+
+FLOAT Radix, BInvrse, RadixD2, BMinusU2;
+FLOAT Sign(), Random();
+
+/*Small floating point constants.*/
+FLOAT Zero = 0.0;
+FLOAT Half = 0.5;
+FLOAT One = 1.0;
+FLOAT Two = 2.0;
+FLOAT Three = 3.0;
+FLOAT Four = 4.0;
+FLOAT Five = 5.0;
+FLOAT Eight = 8.0;
+FLOAT Nine = 9.0;
+FLOAT TwentySeven = 27.0;
+FLOAT ThirtyTwo = 32.0;
+FLOAT TwoForty = 240.0;
+FLOAT MinusOne = -1.0;
+FLOAT OneAndHalf = 1.5;
+/*Integer constants*/
+int NoTrials = 20; /*Number of tests for commutativity. */
+#define False 0
+#define True 1
+
+/* Definitions for declared types
+ Guard == (Yes, No);
+ Rounding == (Chopped, Rounded, Other);
+ Message == packed array [1..40] of char;
+ Class == (Flaw, Defect, Serious, Failure);
+ */
+#define Yes 1
+#define No 0
+#define Chopped 2
+#define Rounded 1
+#define Other 0
+#define Flaw 3
+#define Defect 2
+#define Serious 1
+#define Failure 0
+typedef int Guard, Rounding, Class;
+typedef char Message;
+
+/* Declarations of Variables */
+int Indx;
+char ch[8];
+FLOAT AInvrse, A1;
+FLOAT C, CInvrse;
+FLOAT D, FourD;
+FLOAT E0, E1, Exp2, E3, MinSqEr;
+FLOAT SqEr, MaxSqEr, E9;
+FLOAT Third;
+FLOAT F6, F9;
+FLOAT H, HInvrse;
+int I;
+FLOAT StickyBit, J;
+FLOAT MyZero;
+FLOAT Precision;
+FLOAT Q, Q9;
+FLOAT R, Random9;
+FLOAT T, Underflow, S;
+FLOAT OneUlp, UfThold, U1, U2;
+FLOAT V, V0, V9;
+FLOAT W;
+FLOAT X, X1, X2, X8, Random1;
+FLOAT Y, Y1, Y2, Random2;
+FLOAT Z, PseudoZero, Z1, Z2, Z9;
+int ErrCnt[4];
+int fpecount;
+int Milestone;
+int PageNo;
+int M, N, N1;
+Guard GMult, GDiv, GAddSub;
+Rounding RMult, RDiv, RAddSub, RSqrt;
+int Break, Done, NotMonot, Monot, Anomaly, IEEE,
+ SqRWrng, UfNGrad;
+/* Computed constants. */
+/*U1 gap below 1.0, i.e, 1.0-U1 is next number below 1.0 */
+/*U2 gap above 1.0, i.e, 1.0+U2 is next number above 1.0 */
+
+/* floating point exception receiver */
+ void
+sigfpe(i)
+{
+ fpecount++;
+ printf("\n* * * FLOATING-POINT ERROR * * *\n");
+ fflush(stdout);
+ if (sigsave) {
+#ifndef NOSIGNAL
+ signal(SIGFPE, sigsave);
+#endif
+ sigsave = 0;
+ longjmp(ovfl_buf, 1);
+ }
+ abort();
+}
+
+main()
+{
+#ifdef mc
+ char *out;
+ ieee_flags("set", "precision", "double", &out);
+#endif
+ /* First two assignments use integer right-hand sides. */
+ Zero = 0;
+ One = 1;
+ Two = One + One;
+ Three = Two + One;
+ Four = Three + One;
+ Five = Four + One;
+ Eight = Four + Four;
+ Nine = Three * Three;
+ TwentySeven = Nine * Three;
+ ThirtyTwo = Four * Eight;
+ TwoForty = Four * Five * Three * Four;
+ MinusOne = -One;
+ Half = One / Two;
+ OneAndHalf = One + Half;
+ ErrCnt[Failure] = 0;
+ ErrCnt[Serious] = 0;
+ ErrCnt[Defect] = 0;
+ ErrCnt[Flaw] = 0;
+ PageNo = 1;
+ /*=============================================*/
+ Milestone = 0;
+ /*=============================================*/
+#ifndef NOSIGNAL
+ signal(SIGFPE, sigfpe);
+#endif
+ Instructions();
+ Pause();
+ Heading();
+ Pause();
+ Characteristics();
+ Pause();
+ History();
+ Pause();
+ /*=============================================*/
+ Milestone = 7;
+ /*=============================================*/
+ printf("Program is now RUNNING tests on small integers:\n");
+
+ TstCond (Failure, (Zero + Zero == Zero) && (One - One == Zero)
+ && (One > Zero) && (One + One == Two),
+ "0+0 != 0, 1-1 != 0, 1 <= 0, or 1+1 != 2");
+ Z = - Zero;
+ if (Z != 0.0) {
+ ErrCnt[Failure] = ErrCnt[Failure] + 1;
+ printf("Comparison alleges that -0.0 is Non-zero!\n");
+ U1 = 0.001;
+ Radix = 1;
+ TstPtUf();
+ }
+ TstCond (Failure, (Three == Two + One) && (Four == Three + One)
+ && (Four + Two * (- Two) == Zero)
+ && (Four - Three - One == Zero),
+ "3 != 2+1, 4 != 3+1, 4+2*(-2) != 0, or 4-3-1 != 0");
+ TstCond (Failure, (MinusOne == (0 - One))
+ && (MinusOne + One == Zero ) && (One + MinusOne == Zero)
+ && (MinusOne + FABS(One) == Zero)
+ && (MinusOne + MinusOne * MinusOne == Zero),
+ "-1+1 != 0, (-1)+abs(1) != 0, or -1+(-1)*(-1) != 0");
+ TstCond (Failure, Half + MinusOne + Half == Zero,
+ "1/2 + (-1) + 1/2 != 0");
+ /*=============================================*/
+ /*SPLIT
+ part2();
+ part3();
+ part4();
+ part5();
+ part6();
+ part7();
+ part8();
+ }
+#include "paranoia.h"
+part2(){
+*/
+ Milestone = 10;
+ /*=============================================*/
+ TstCond (Failure, (Nine == Three * Three)
+ && (TwentySeven == Nine * Three) && (Eight == Four + Four)
+ && (ThirtyTwo == Eight * Four)
+ && (ThirtyTwo - TwentySeven - Four - One == Zero),
+ "9 != 3*3, 27 != 9*3, 32 != 8*4, or 32-27-4-1 != 0");
+ TstCond (Failure, (Five == Four + One) &&
+ (TwoForty == Four * Five * Three * Four)
+ && (TwoForty / Three - Four * Four * Five == Zero)
+ && ( TwoForty / Four - Five * Three * Four == Zero)
+ && ( TwoForty / Five - Four * Three * Four == Zero),
+ "5 != 4+1, 240/3 != 80, 240/4 != 60, or 240/5 != 48");
+ if (ErrCnt[Failure] == 0) {
+ printf("-1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.\n");
+ printf("\n");
+ }
+ printf("Searching for Radix and Precision.\n");
+ W = One;
+ do {
+ W = W + W;
+ Y = W + One;
+ Z = Y - W;
+ Y = Z - One;
+ } while (MinusOne + FABS(Y) < Zero);
+ /*.. now W is just big enough that |((W+1)-W)-1| >= 1 ...*/
+ Precision = Zero;
+ Y = One;
+ do {
+ Radix = W + Y;
+ Y = Y + Y;
+ Radix = Radix - W;
+ } while ( Radix == Zero);
+ if (Radix < Two) Radix = One;
+ printf("Radix = %f .\n", Radix);
+ if (Radix != 1) {
+ W = One;
+ do {
+ Precision = Precision + One;
+ W = W * Radix;
+ Y = W + One;
+ } while ((Y - W) == One);
+ }
+ /*... now W == Radix^Precision is barely too big to satisfy (W+1)-W == 1
+ ...*/
+ U1 = One / W;
+ U2 = Radix * U1;
+ printf("Closest relative separation found is U1 = %.7e .\n\n", U1);
+ printf("Recalculating radix and precision\n ");
+
+ /*save old values*/
+ E0 = Radix;
+ E1 = U1;
+ E9 = U2;
+ E3 = Precision;
+
+ X = Four / Three;
+ Third = X - One;
+ F6 = Half - Third;
+ X = F6 + F6;
+ X = FABS(X - Third);
+ if (X < U2) X = U2;
+
+ /*... now X = (unknown no.) ulps of 1+...*/
+ do {
+ U2 = X;
+ Y = Half * U2 + ThirtyTwo * U2 * U2;
+ Y = One + Y;
+ X = Y - One;
+ } while ( ! ((U2 <= X) || (X <= Zero)));
+
+ /*... now U2 == 1 ulp of 1 + ... */
+ X = Two / Three;
+ F6 = X - Half;
+ Third = F6 + F6;
+ X = Third - Half;
+ X = FABS(X + F6);
+ if (X < U1) X = U1;
+
+ /*... now X == (unknown no.) ulps of 1 -... */
+ do {
+ U1 = X;
+ Y = Half * U1 + ThirtyTwo * U1 * U1;
+ Y = Half - Y;
+ X = Half + Y;
+ Y = Half - X;
+ X = Half + Y;
+ } while ( ! ((U1 <= X) || (X <= Zero)));
+ /*... now U1 == 1 ulp of 1 - ... */
+ if (U1 == E1) printf("confirms closest relative separation U1 .\n");
+ else printf("gets better closest relative separation U1 = %.7e .\n", U1);
+ W = One / U1;
+ F9 = (Half - U1) + Half;
+ Radix = FLOOR(0.01 + U2 / U1);
+ if (Radix == E0) printf("Radix confirmed.\n");
+ else printf("MYSTERY: recalculated Radix = %.7e .\n", Radix);
+ TstCond (Defect, Radix <= Eight + Eight,
+ "Radix is too big: roundoff problems");
+ TstCond (Flaw, (Radix == Two) || (Radix == 10)
+ || (Radix == One), "Radix is not as good as 2 or 10");
+ /*=============================================*/
+ Milestone = 20;
+ /*=============================================*/
+ TstCond (Failure, F9 - Half < Half,
+ "(1-U1)-1/2 < 1/2 is FALSE, prog. fails?");
+ X = F9;
+ I = 1;
+ Y = X - Half;
+ Z = Y - Half;
+ TstCond (Failure, (X != One)
+ || (Z == Zero), "Comparison is fuzzy,X=1 but X-1/2-1/2 != 0");
+ X = One + U2;
+ I = 0;
+ /*=============================================*/
+ Milestone = 25;
+ /*=============================================*/
+ /*... BMinusU2 = nextafter(Radix, 0) */
+ BMinusU2 = Radix - One;
+ BMinusU2 = (BMinusU2 - U2) + One;
+ /* Purify Integers */
+ if (Radix != One) {
+ X = - TwoForty * LOG(U1) / LOG(Radix);
+ Y = FLOOR(Half + X);
+ if (FABS(X - Y) * Four < One) X = Y;
+ Precision = X / TwoForty;
+ Y = FLOOR(Half + Precision);
+ if (FABS(Precision - Y) * TwoForty < Half) Precision = Y;
+ }
+ if ((Precision != FLOOR(Precision)) || (Radix == One)) {
+ printf("Precision cannot be characterized by an Integer number\n");
+ printf("of significant digits but, by itself, this is a minor flaw.\n");
+ }
+ if (Radix == One)
+ printf("logarithmic encoding has precision characterized solely by U1.\n");
+ else printf("The number of significant digits of the Radix is %f .\n",
+ Precision);
+ TstCond (Serious, U2 * Nine * Nine * TwoForty < One,
+ "Precision worse than 5 decimal figures ");
+ /*=============================================*/
+ Milestone = 30;
+ /*=============================================*/
+ /* Test for extra-precise subepressions */
+ X = FABS(((Four / Three - One) - One / Four) * Three - One / Four);
+ do {
+ Z2 = X;
+ X = (One + (Half * Z2 + ThirtyTwo * Z2 * Z2)) - One;
+ } while ( ! ((Z2 <= X) || (X <= Zero)));
+ X = Y = Z = FABS((Three / Four - Two / Three) * Three - One / Four);
+ do {
+ Z1 = Z;
+ Z = (One / Two - ((One / Two - (Half * Z1 + ThirtyTwo * Z1 * Z1))
+ + One / Two)) + One / Two;
+ } while ( ! ((Z1 <= Z) || (Z <= Zero)));
+ do {
+ do {
+ Y1 = Y;
+ Y = (Half - ((Half - (Half * Y1 + ThirtyTwo * Y1 * Y1)) + Half
+ )) + Half;
+ } while ( ! ((Y1 <= Y) || (Y <= Zero)));
+ X1 = X;
+ X = ((Half * X1 + ThirtyTwo * X1 * X1) - F9) + F9;
+ } while ( ! ((X1 <= X) || (X <= Zero)));
+ if ((X1 != Y1) || (X1 != Z1)) {
+ BadCond(Serious, "Disagreements among the values X1, Y1, Z1,\n");
+ printf("respectively %.7e, %.7e, %.7e,\n", X1, Y1, Z1);
+ printf("are symptoms of inconsistencies introduced\n");
+ printf("by extra-precise evaluation of arithmetic subexpressions.\n");
+ notify("Possibly some part of this");
+ if ((X1 == U1) || (Y1 == U1) || (Z1 == U1)) printf(
+ "That feature is not tested further by this program.\n") ;
+ }
+ else {
+ if ((Z1 != U1) || (Z2 != U2)) {
+ if ((Z1 >= U1) || (Z2 >= U2)) {
+ BadCond(Failure, "");
+ notify("Precision");
+ printf("\tU1 = %.7e, Z1 - U1 = %.7e\n",U1,Z1-U1);
+ printf("\tU2 = %.7e, Z2 - U2 = %.7e\n",U2,Z2-U2);
+ }
+ else {
+ if ((Z1 <= Zero) || (Z2 <= Zero)) {
+ printf("Because of unusual Radix = %f", Radix);
+ printf(", or exact rational arithmetic a result\n");
+ printf("Z1 = %.7e, or Z2 = %.7e ", Z1, Z2);
+ notify("of an\nextra-precision");
+ }
+ if (Z1 != Z2 || Z1 > Zero) {
+ X = Z1 / U1;
+ Y = Z2 / U2;
+ if (Y > X) X = Y;
+ Q = - LOG(X);
+ printf("Some subexpressions appear to be calculated extra\n");
+ printf("precisely with about %g extra B-digits, i.e.\n",
+ (Q / LOG(Radix)));
+ printf("roughly %g extra significant decimals.\n",
+ Q / LOG(10.));
+ }
+ printf("That feature is not tested further by this program.\n");
+ }
+ }
+ }
+ Pause();
+ /*=============================================*/
+ /*SPLIT
+ }
+#include "paranoia.h"
+part3(){
+*/
+ Milestone = 35;
+ /*=============================================*/
+ if (Radix >= Two) {
+ X = W / (Radix * Radix);
+ Y = X + One;
+ Z = Y - X;
+ T = Z + U2;
+ X = T - Z;
+ TstCond (Failure, X == U2,
+ "Subtraction is not normalized X=Y,X+Z != Y+Z!");
+ if (X == U2) printf(
+ "Subtraction appears to be normalized, as it should be.");
+ }
+ printf("\nChecking for guard digit in *, /, and -.\n");
+ Y = F9 * One;
+ Z = One * F9;
+ X = F9 - Half;
+ Y = (Y - Half) - X;
+ Z = (Z - Half) - X;
+ X = One + U2;
+ T = X * Radix;
+ R = Radix * X;
+ X = T - Radix;
+ X = X - Radix * U2;
+ T = R - Radix;
+ T = T - Radix * U2;
+ X = X * (Radix - One);
+ T = T * (Radix - One);
+ if ((X == Zero) && (Y == Zero) && (Z == Zero) && (T == Zero)) GMult = Yes;
+ else {
+ GMult = No;
+ TstCond (Serious, False,
+ "* lacks a Guard Digit, so 1*X != X");
+ }
+ Z = Radix * U2;
+ X = One + Z;
+ Y = FABS((X + Z) - X * X) - U2;
+ X = One - U2;
+ Z = FABS((X - U2) - X * X) - U1;
+ TstCond (Failure, (Y <= Zero)
+ && (Z <= Zero), "* gets too many final digits wrong.\n");
+ Y = One - U2;
+ X = One + U2;
+ Z = One / Y;
+ Y = Z - X;
+ X = One / Three;
+ Z = Three / Nine;
+ X = X - Z;
+ T = Nine / TwentySeven;
+ Z = Z - T;
+ TstCond(Defect, X == Zero && Y == Zero && Z == Zero,
+ "Division lacks a Guard Digit, so error can exceed 1 ulp\nor 1/3 and 3/9 and 9/27 may disagree");
+ Y = F9 / One;
+ X = F9 - Half;
+ Y = (Y - Half) - X;
+ X = One + U2;
+ T = X / One;
+ X = T - X;
+ if ((X == Zero) && (Y == Zero) && (Z == Zero)) GDiv = Yes;
+ else {
+ GDiv = No;
+ TstCond (Serious, False,
+ "Division lacks a Guard Digit, so X/1 != X");
+ }
+ X = One / (One + U2);
+ Y = X - Half - Half;
+ TstCond (Serious, Y < Zero,
+ "Computed value of 1/1.000..1 >= 1");
+ X = One - U2;
+ Y = One + Radix * U2;
+ Z = X * Radix;
+ T = Y * Radix;
+ R = Z / Radix;
+ StickyBit = T / Radix;
+ X = R - X;
+ Y = StickyBit - Y;
+ TstCond (Failure, X == Zero && Y == Zero,
+ "* and/or / gets too many last digits wrong");
+ Y = One - U1;
+ X = One - F9;
+ Y = One - Y;
+ T = Radix - U2;
+ Z = Radix - BMinusU2;
+ T = Radix - T;
+ if ((X == U1) && (Y == U1) && (Z == U2) && (T == U2)) GAddSub = Yes;
+ else {
+ GAddSub = No;
+ TstCond (Serious, False,
+ "- lacks Guard Digit, so cancellation is obscured");
+ }
+ if (F9 != One && F9 - One >= Zero) {
+ BadCond(Serious, "comparison alleges (1-U1) < 1 although\n");
+ printf(" subtraction yields (1-U1) - 1 = 0 , thereby vitiating\n");
+ printf(" such precautions against division by zero as\n");
+ printf(" ... if (X == 1.0) {.....} else {.../(X-1.0)...}\n");
+ }
+ if (GMult == Yes && GDiv == Yes && GAddSub == Yes) printf(
+ " *, /, and - appear to have guard digits, as they should.\n");
+ /*=============================================*/
+ Milestone = 40;
+ /*=============================================*/
+ Pause();
+ printf("Checking rounding on multiply, divide and add/subtract.\n");
+ RMult = Other;
+ RDiv = Other;
+ RAddSub = Other;
+ RadixD2 = Radix / Two;
+ A1 = Two;
+ Done = False;
+ do {
+ AInvrse = Radix;
+ do {
+ X = AInvrse;
+ AInvrse = AInvrse / A1;
+ } while ( ! (FLOOR(AInvrse) != AInvrse));
+ Done = (X == One) || (A1 > Three);
+ if (! Done) A1 = Nine + One;
+ } while ( ! (Done));
+ if (X == One) A1 = Radix;
+ AInvrse = One / A1;
+ X = A1;
+ Y = AInvrse;
+ Done = False;
+ do {
+ Z = X * Y - Half;
+ TstCond (Failure, Z == Half,
+ "X * (1/X) differs from 1");
+ Done = X == Radix;
+ X = Radix;
+ Y = One / X;
+ } while ( ! (Done));
+ Y2 = One + U2;
+ Y1 = One - U2;
+ X = OneAndHalf - U2;
+ Y = OneAndHalf + U2;
+ Z = (X - U2) * Y2;
+ T = Y * Y1;
+ Z = Z - X;
+ T = T - X;
+ X = X * Y2;
+ Y = (Y + U2) * Y1;
+ X = X - OneAndHalf;
+ Y = Y - OneAndHalf;
+ if ((X == Zero) && (Y == Zero) && (Z == Zero) && (T <= Zero)) {
+ X = (OneAndHalf + U2) * Y2;
+ Y = OneAndHalf - U2 - U2;
+ Z = OneAndHalf + U2 + U2;
+ T = (OneAndHalf - U2) * Y1;
+ X = X - (Z + U2);
+ StickyBit = Y * Y1;
+ S = Z * Y2;
+ T = T - Y;
+ Y = (U2 - Y) + StickyBit;
+ Z = S - (Z + U2 + U2);
+ StickyBit = (Y2 + U2) * Y1;
+ Y1 = Y2 * Y1;
+ StickyBit = StickyBit - Y2;
+ Y1 = Y1 - Half;
+ if ((X == Zero) && (Y == Zero) && (Z == Zero) && (T == Zero)
+ && ( StickyBit == Zero) && (Y1 == Half)) {
+ RMult = Rounded;
+ printf("Multiplication appears to round correctly.\n");
+ }
+ else if ((X + U2 == Zero) && (Y < Zero) && (Z + U2 == Zero)
+ && (T < Zero) && (StickyBit + U2 == Zero)
+ && (Y1 < Half)) {
+ RMult = Chopped;
+ printf("Multiplication appears to chop.\n");
+ }
+ else printf("* is neither chopped nor correctly rounded.\n");
+ if ((RMult == Rounded) && (GMult == No)) notify("Multiplication");
+ }
+ else printf("* is neither chopped nor correctly rounded.\n");
+ /*=============================================*/
+ Milestone = 45;
+ /*=============================================*/
+ Y2 = One + U2;
+ Y1 = One - U2;
+ Z = OneAndHalf + U2 + U2;
+ X = Z / Y2;
+ T = OneAndHalf - U2 - U2;
+ Y = (T - U2) / Y1;
+ Z = (Z + U2) / Y2;
+ X = X - OneAndHalf;
+ Y = Y - T;
+ T = T / Y1;
+ Z = Z - (OneAndHalf + U2);
+ T = (U2 - OneAndHalf) + T;
+ if (! ((X > Zero) || (Y > Zero) || (Z > Zero) || (T > Zero))) {
+ X = OneAndHalf / Y2;
+ Y = OneAndHalf - U2;
+ Z = OneAndHalf + U2;
+ X = X - Y;
+ T = OneAndHalf / Y1;
+ Y = Y / Y1;
+ T = T - (Z + U2);
+ Y = Y - Z;
+ Z = Z / Y2;
+ Y1 = (Y2 + U2) / Y2;
+ Z = Z - OneAndHalf;
+ Y2 = Y1 - Y2;
+ Y1 = (F9 - U1) / F9;
+ if ((X == Zero) && (Y == Zero) && (Z == Zero) && (T == Zero)
+ && (Y2 == Zero) && (Y2 == Zero)
+ && (Y1 - Half == F9 - Half )) {
+ RDiv = Rounded;
+ printf("Division appears to round correctly.\n");
+ if (GDiv == No) notify("Division");
+ }
+ else if ((X < Zero) && (Y < Zero) && (Z < Zero) && (T < Zero)
+ && (Y2 < Zero) && (Y1 - Half < F9 - Half)) {
+ RDiv = Chopped;
+ printf("Division appears to chop.\n");
+ }
+ }
+ if (RDiv == Other) printf("/ is neither chopped nor correctly rounded.\n");
+ BInvrse = One / Radix;
+ TstCond (Failure, (BInvrse * Radix - Half == Half),
+ "Radix * ( 1 / Radix ) differs from 1");
+ /*=============================================*/
+ /*SPLIT
+ }
+#include "paranoia.h"
+part4(){
+*/
+ Milestone = 50;
+ /*=============================================*/
+ TstCond (Failure, ((F9 + U1) - Half == Half)
+ && ((BMinusU2 + U2 ) - One == Radix - One),
+ "Incomplete carry-propagation in Addition");
+ X = One - U1 * U1;
+ Y = One + U2 * (One - U2);
+ Z = F9 - Half;
+ X = (X - Half) - Z;
+ Y = Y - One;
+ if ((X == Zero) && (Y == Zero)) {
+ RAddSub = Chopped;
+ printf("Add/Subtract appears to be chopped.\n");
+ }
+ if (GAddSub == Yes) {
+ X = (Half + U2) * U2;
+ Y = (Half - U2) * U2;
+ X = One + X;
+ Y = One + Y;
+ X = (One + U2) - X;
+ Y = One - Y;
+ if ((X == Zero) && (Y == Zero)) {
+ X = (Half + U2) * U1;
+ Y = (Half - U2) * U1;
+ X = One - X;
+ Y = One - Y;
+ X = F9 - X;
+ Y = One - Y;
+ if ((X == Zero) && (Y == Zero)) {
+ RAddSub = Rounded;
+ printf("Addition/Subtraction appears to round correctly.\n");
+ if (GAddSub == No) notify("Add/Subtract");
+ }
+ else printf("Addition/Subtraction neither rounds nor chops.\n");
+ }
+ else printf("Addition/Subtraction neither rounds nor chops.\n");
+ }
+ else printf("Addition/Subtraction neither rounds nor chops.\n");
+ S = One;
+ X = One + Half * (One + Half);
+ Y = (One + U2) * Half;
+ Z = X - Y;
+ T = Y - X;
+ StickyBit = Z + T;
+ if (StickyBit != Zero) {
+ S = Zero;
+ BadCond(Flaw, "(X - Y) + (Y - X) is non zero!\n");
+ }
+ StickyBit = Zero;
+ if ((GMult == Yes) && (GDiv == Yes) && (GAddSub == Yes)
+ && (RMult == Rounded) && (RDiv == Rounded)
+ && (RAddSub == Rounded) && (FLOOR(RadixD2) == RadixD2)) {
+ printf("Checking for sticky bit.\n");
+ X = (Half + U1) * U2;
+ Y = Half * U2;
+ Z = One + Y;
+ T = One + X;
+ if ((Z - One <= Zero) && (T - One >= U2)) {
+ Z = T + Y;
+ Y = Z - X;
+ if ((Z - T >= U2) && (Y - T == Zero)) {
+ X = (Half + U1) * U1;
+ Y = Half * U1;
+ Z = One - Y;
+ T = One - X;
+ if ((Z - One == Zero) && (T - F9 == Zero)) {
+ Z = (Half - U1) * U1;
+ T = F9 - Z;
+ Q = F9 - Y;
+ if ((T - F9 == Zero) && (F9 - U1 - Q == Zero)) {
+ Z = (One + U2) * OneAndHalf;
+ T = (OneAndHalf + U2) - Z + U2;
+ X = One + Half / Radix;
+ Y = One + Radix * U2;
+ Z = X * Y;
+ if (T == Zero && X + Radix * U2 - Z == Zero) {
+ if (Radix != Two) {
+ X = Two + U2;
+ Y = X / Two;
+ if ((Y - One == Zero)) StickyBit = S;
+ }
+ else StickyBit = S;
+ }
+ }
+ }
+ }
+ }
+ }
+ if (StickyBit == One) printf("Sticky bit apparently used correctly.\n");
+ else printf("Sticky bit used incorrectly or not at all.\n");
+ TstCond (Flaw, !(GMult == No || GDiv == No || GAddSub == No ||
+ RMult == Other || RDiv == Other || RAddSub == Other),
+ "lack(s) of guard digits or failure(s) to correctly round or chop\n(noted above) count as one flaw in the final tally below");
+ /*=============================================*/
+ Milestone = 60;
+ /*=============================================*/
+ printf("\n");
+ printf("Does Multiplication commute? ");
+ printf("Testing on %d random pairs.\n", NoTrials);
+ Random9 = SQRT(3.0);
+ Random1 = Third;
+ I = 1;
+ do {
+ X = Random();
+ Y = Random();
+ Z9 = Y * X;
+ Z = X * Y;
+ Z9 = Z - Z9;
+ I = I + 1;
+ } while ( ! ((I > NoTrials) || (Z9 != Zero)));
+ if (I == NoTrials) {
+ Random1 = One + Half / Three;
+ Random2 = (U2 + U1) + One;
+ Z = Random1 * Random2;
+ Y = Random2 * Random1;
+ Z9 = (One + Half / Three) * ((U2 + U1) + One) - (One + Half /
+ Three) * ((U2 + U1) + One);
+ }
+ if (! ((I == NoTrials) || (Z9 == Zero)))
+ BadCond(Defect, "X * Y == Y * X trial fails.\n");
+ else printf(" No failures found in %d integer pairs.\n", NoTrials);
+ /*=============================================*/
+ Milestone = 70;
+ /*=============================================*/
+ printf("\nRunning test of square root(x).\n");
+ TstCond (Failure, (Zero == SQRT(Zero))
+ && (- Zero == SQRT(- Zero))
+ && (One == SQRT(One)), "Square root of 0.0, -0.0 or 1.0 wrong");
+ MinSqEr = Zero;
+ MaxSqEr = Zero;
+ J = Zero;
+ X = Radix;
+ OneUlp = U2;
+ SqXMinX (Serious);
+ X = BInvrse;
+ OneUlp = BInvrse * U1;
+ SqXMinX (Serious);
+ X = U1;
+ OneUlp = U1 * U1;
+ SqXMinX (Serious);
+ if (J != Zero) Pause();
+ printf("Testing if sqrt(X * X) == X for %d Integers X.\n", NoTrials);
+ J = Zero;
+ X = Two;
+ Y = Radix;
+ if ((Radix != One)) do {
+ X = Y;
+ Y = Radix * Y;
+ } while ( ! ((Y - X >= NoTrials)));
+ OneUlp = X * U2;
+ I = 1;
+ while (I <= NoTrials) {
+ X = X + One;
+ SqXMinX (Defect);
+ if (J > Zero) break;
+ I = I + 1;
+ }
+ printf("Test for sqrt monotonicity.\n");
+ I = - 1;
+ X = BMinusU2;
+ Y = Radix;
+ Z = Radix + Radix * U2;
+ NotMonot = False;
+ Monot = False;
+ while ( ! (NotMonot || Monot)) {
+ I = I + 1;
+ X = SQRT(X);
+ Q = SQRT(Y);
+ Z = SQRT(Z);
+ if ((X > Q) || (Q > Z)) NotMonot = True;
+ else {
+ Q = FLOOR(Q + Half);
+ if ((I > 0) || (Radix == Q * Q)) Monot = True;
+ else if (I > 0) {
+ if (I > 1) Monot = True;
+ else {
+ Y = Y * BInvrse;
+ X = Y - U1;
+ Z = Y + U1;
+ }
+ }
+ else {
+ Y = Q;
+ X = Y - U2;
+ Z = Y + U2;
+ }
+ }
+ }
+ if (Monot) printf("sqrt has passed a test for Monotonicity.\n");
+ else {
+ BadCond(Defect, "");
+ printf("sqrt(X) is non-monotonic for X near %.7e .\n", Y);
+ }
+ /*=============================================*/
+ /*SPLIT
+ }
+#include "paranoia.h"
+part5(){
+*/
+ Milestone = 80;
+ /*=============================================*/
+ MinSqEr = MinSqEr + Half;
+ MaxSqEr = MaxSqEr - Half;
+ Y = (SQRT(One + U2) - One) / U2;
+ SqEr = (Y - One) + U2 / Eight;
+ if (SqEr > MaxSqEr) MaxSqEr = SqEr;
+ SqEr = Y + U2 / Eight;
+ if (SqEr < MinSqEr) MinSqEr = SqEr;
+ Y = ((SQRT(F9) - U2) - (One - U2)) / U1;
+ SqEr = Y + U1 / Eight;
+ if (SqEr > MaxSqEr) MaxSqEr = SqEr;
+ SqEr = (Y + One) + U1 / Eight;
+ if (SqEr < MinSqEr) MinSqEr = SqEr;
+ OneUlp = U2;
+ X = OneUlp;
+ for( Indx = 1; Indx <= 3; ++Indx) {
+ Y = SQRT((X + U1 + X) + F9);
+ Y = ((Y - U2) - ((One - U2) + X)) / OneUlp;
+ Z = ((U1 - X) + F9) * Half * X * X / OneUlp;
+ SqEr = (Y + Half) + Z;
+ if (SqEr < MinSqEr) MinSqEr = SqEr;
+ SqEr = (Y - Half) + Z;
+ if (SqEr > MaxSqEr) MaxSqEr = SqEr;
+ if (((Indx == 1) || (Indx == 3)))
+ X = OneUlp * Sign (X) * FLOOR(Eight / (Nine * SQRT(OneUlp)));
+ else {
+ OneUlp = U1;
+ X = - OneUlp;
+ }
+ }
+ /*=============================================*/
+ Milestone = 85;
+ /*=============================================*/
+ SqRWrng = False;
+ Anomaly = False;
+ RSqrt = Other; /* ~dgh */
+ if (Radix != One) {
+ printf("Testing whether sqrt is rounded or chopped.\n");
+ D = FLOOR(Half + POW(Radix, One + Precision - FLOOR(Precision)));
+ /* ... == Radix^(1 + fract) if (Precision == Integer + fract. */
+ X = D / Radix;
+ Y = D / A1;
+ if ((X != FLOOR(X)) || (Y != FLOOR(Y))) {
+ Anomaly = True;
+ }
+ else {
+ X = Zero;
+ Z2 = X;
+ Y = One;
+ Y2 = Y;
+ Z1 = Radix - One;
+ FourD = Four * D;
+ do {
+ if (Y2 > Z2) {
+ Q = Radix;
+ Y1 = Y;
+ do {
+ X1 = FABS(Q + FLOOR(Half - Q / Y1) * Y1);
+ Q = Y1;
+ Y1 = X1;
+ } while ( ! (X1 <= Zero));
+ if (Q <= One) {
+ Z2 = Y2;
+ Z = Y;
+ }
+ }
+ Y = Y + Two;
+ X = X + Eight;
+ Y2 = Y2 + X;
+ if (Y2 >= FourD) Y2 = Y2 - FourD;
+ } while ( ! (Y >= D));
+ X8 = FourD - Z2;
+ Q = (X8 + Z * Z) / FourD;
+ X8 = X8 / Eight;
+ if (Q != FLOOR(Q)) Anomaly = True;
+ else {
+ Break = False;
+ do {
+ X = Z1 * Z;
+ X = X - FLOOR(X / Radix) * Radix;
+ if (X == One)
+ Break = True;
+ else
+ Z1 = Z1 - One;
+ } while ( ! (Break || (Z1 <= Zero)));
+ if ((Z1 <= Zero) && (! Break)) Anomaly = True;
+ else {
+ if (Z1 > RadixD2) Z1 = Z1 - Radix;
+ do {
+ NewD();
+ } while ( ! (U2 * D >= F9));
+ if (D * Radix - D != W - D) Anomaly = True;
+ else {
+ Z2 = D;
+ I = 0;
+ Y = D + (One + Z) * Half;
+ X = D + Z + Q;
+ SR3750();
+ Y = D + (One - Z) * Half + D;
+ X = D - Z + D;
+ X = X + Q + X;
+ SR3750();
+ NewD();
+ if (D - Z2 != W - Z2) Anomaly = True;
+ else {
+ Y = (D - Z2) + (Z2 + (One - Z) * Half);
+ X = (D - Z2) + (Z2 - Z + Q);
+ SR3750();
+ Y = (One + Z) * Half;
+ X = Q;
+ SR3750();
+ if (I == 0) Anomaly = True;
+ }
+ }
+ }
+ }
+ }
+ if ((I == 0) || Anomaly) {
+ BadCond(Failure, "Anomalous arithmetic with Integer < ");
+ printf("Radix^Precision = %.7e\n", W);
+ printf(" fails test whether sqrt rounds or chops.\n");
+ SqRWrng = True;
+ }
+ }
+ if (! Anomaly) {
+ if (! ((MinSqEr < Zero) || (MaxSqEr > Zero))) {
+ RSqrt = Rounded;
+ printf("Square root appears to be correctly rounded.\n");
+ }
+ else {
+ if ((MaxSqEr + U2 > U2 - Half) || (MinSqEr > Half)
+ || (MinSqEr + Radix < Half)) SqRWrng = True;
+ else {
+ RSqrt = Chopped;
+ printf("Square root appears to be chopped.\n");
+ }
+ }
+ }
+ if (SqRWrng) {
+ printf("Square root is neither chopped nor correctly rounded.\n");
+ printf("Observed errors run from %.7e ", MinSqEr - Half);
+ printf("to %.7e ulps.\n", Half + MaxSqEr);
+ TstCond (Serious, MaxSqEr - MinSqEr < Radix * Radix,
+ "sqrt gets too many last digits wrong");
+ }
+ /*=============================================*/
+ Milestone = 90;
+ /*=============================================*/
+ Pause();
+ printf("Testing powers Z^i for small Integers Z and i.\n");
+ N = 0;
+ /* ... test powers of zero. */
+ I = 0;
+ Z = -Zero;
+ M = 3.0;
+ Break = False;
+ do {
+ X = One;
+ SR3980();
+ if (I <= 10) {
+ I = 1023;
+ SR3980();
+ }
+ if (Z == MinusOne) Break = True;
+ else {
+ Z = MinusOne;
+ PrintIfNPositive();
+ N = 0;
+ /* .. if(-1)^N is invalid, replace MinusOne by One. */
+ I = - 4;
+ }
+ } while ( ! Break);
+ PrintIfNPositive();
+ N1 = N;
+ N = 0;
+ Z = A1;
+ M = FLOOR(Two * LOG(W) / LOG(A1));
+ Break = False;
+ do {
+ X = Z;
+ I = 1;
+ SR3980();
+ if (Z == AInvrse) Break = True;
+ else Z = AInvrse;
+ } while ( ! (Break));
+ /*=============================================*/
+ Milestone = 100;
+ /*=============================================*/
+ /* Powers of Radix have been tested, */
+ /* next try a few primes */
+ M = NoTrials;
+ Z = Three;
+ do {
+ X = Z;
+ I = 1;
+ SR3980();
+ do {
+ Z = Z + Two;
+ } while ( Three * FLOOR(Z / Three) == Z );
+ } while ( Z < Eight * Three );
+ if (N > 0) {
+ printf("Errors like this may invalidate financial calculations\n");
+ printf("\tinvolving interest rates.\n");
+ }
+ PrintIfNPositive();
+ N += N1;
+ if (N == 0) printf("... no discrepancis found.\n");
+ if (N > 0) Pause();
+ else printf("\n");
+ /*=============================================*/
+ /*SPLIT
+ }
+#include "paranoia.h"
+part6(){
+*/
+ Milestone = 110;
+ /*=============================================*/
+ printf("Seeking Underflow thresholds UfThold and E0.\n");
+ D = U1;
+ if (Precision != FLOOR(Precision)) {
+ D = BInvrse;
+ X = Precision;
+ do {
+ D = D * BInvrse;
+ X = X - One;
+ } while ( X > Zero);
+ }
+ Y = One;
+ Z = D;
+ /* ... D is power of 1/Radix < 1. */
+ do {
+ C = Y;
+ Y = Z;
+ Z = Y * Y;
+ } while ((Y > Z) && (Z + Z > Z));
+ Y = C;
+ Z = Y * D;
+ do {
+ C = Y;
+ Y = Z;
+ Z = Y * D;
+ } while ((Y > Z) && (Z + Z > Z));
+ if (Radix < Two) HInvrse = Two;
+ else HInvrse = Radix;
+ H = One / HInvrse;
+ /* ... 1/HInvrse == H == Min(1/Radix, 1/2) */
+ CInvrse = One / C;
+ E0 = C;
+ Z = E0 * H;
+ /* ...1/Radix^(BIG Integer) << 1 << CInvrse == 1/C */
+ do {
+ Y = E0;
+ E0 = Z;
+ Z = E0 * H;
+ } while ((E0 > Z) && (Z + Z > Z));
+ UfThold = E0;
+ E1 = Zero;
+ Q = Zero;
+ E9 = U2;
+ S = One + E9;
+ D = C * S;
+ if (D <= C) {
+ E9 = Radix * U2;
+ S = One + E9;
+ D = C * S;
+ if (D <= C) {
+ BadCond(Failure, "multiplication gets too many last digits wrong.\n");
+ Underflow = E0;
+ Y1 = Zero;
+ PseudoZero = Z;
+ Pause();
+ }
+ }
+ else {
+ Underflow = D;
+ PseudoZero = Underflow * H;
+ UfThold = Zero;
+ do {
+ Y1 = Underflow;
+ Underflow = PseudoZero;
+ if (E1 + E1 <= E1) {
+ Y2 = Underflow * HInvrse;
+ E1 = FABS(Y1 - Y2);
+ Q = Y1;
+ if ((UfThold == Zero) && (Y1 != Y2)) UfThold = Y1;
+ }
+ PseudoZero = PseudoZero * H;
+ } while ((Underflow > PseudoZero)
+ && (PseudoZero + PseudoZero > PseudoZero));
+ }
+ /* Comment line 4530 .. 4560 */
+ if (PseudoZero != Zero) {
+ printf("\n");
+ Z = PseudoZero;
+ /* ... Test PseudoZero for "phoney- zero" violates */
+ /* ... PseudoZero < Underflow or PseudoZero < PseudoZero + PseudoZero
+ ... */
+ if (PseudoZero <= Zero) {
+ BadCond(Failure, "Positive expressions can underflow to an\n");
+ printf("allegedly negative value\n");
+ printf("PseudoZero that prints out as: %g .\n", PseudoZero);
+ X = - PseudoZero;
+ if (X <= Zero) {
+ printf("But -PseudoZero, which should be\n");
+ printf("positive, isn't; it prints out as %g .\n", X);
+ }
+ }
+ else {
+ BadCond(Flaw, "Underflow can stick at an allegedly positive\n");
+ printf("value PseudoZero that prints out as %g .\n", PseudoZero);
+ }
+ TstPtUf();
+ }
+ /*=============================================*/
+ Milestone = 120;
+ /*=============================================*/
+ if (CInvrse * Y > CInvrse * Y1) {
+ S = H * S;
+ E0 = Underflow;
+ }
+ if (! ((E1 == Zero) || (E1 == E0))) {
+ BadCond(Defect, "");
+ if (E1 < E0) {
+ printf("Products underflow at a higher");
+ printf(" threshold than differences.\n");
+ if (PseudoZero == Zero)
+ E0 = E1;
+ }
+ else {
+ printf("Difference underflows at a higher");
+ printf(" threshold than products.\n");
+ }
+ }
+ printf("Smallest strictly positive number found is E0 = %g .\n", E0);
+ Z = E0;
+ TstPtUf();
+ Underflow = E0;
+ if (N == 1) Underflow = Y;
+ I = 4;
+ if (E1 == Zero) I = 3;
+ if (UfThold == Zero) I = I - 2;
+ UfNGrad = True;
+ switch (I) {
+ case 1:
+ UfThold = Underflow;
+ if ((CInvrse * Q) != ((CInvrse * Y) * S)) {
+ UfThold = Y;
+ BadCond(Failure, "Either accuracy deteriorates as numbers\n");
+ printf("approach a threshold = %.17e\n", UfThold);;
+ printf(" coming down from %.17e\n", C);
+ printf(" or else multiplication gets too many last digits wrong.\n");
+ }
+ Pause();
+ break;
+
+ case 2:
+ BadCond(Failure, "Underflow confuses Comparison, which alleges that\n");
+ printf("Q == Y while denying that |Q - Y| == 0; these values\n");
+ printf("print out as Q = %.17e, Y = %.17e .\n", Q, Y2);
+ printf ("|Q - Y| = %.17e .\n" , FABS(Q - Y2));
+ UfThold = Q;
+ break;
+
+ case 3:
+ X = X;
+ break;
+
+ case 4:
+ if ((Q == UfThold) && (E1 == E0)
+ && (FABS( UfThold - E1 / E9) <= E1)) {
+ UfNGrad = False;
+ printf("Underflow is gradual; it incurs Absolute Error =\n");
+ printf("(roundoff in UfThold) < E0.\n");
+ Y = E0 * CInvrse;
+ Y = Y * (OneAndHalf + U2);
+ X = CInvrse * (One + U2);
+ Y = Y / X;
+ IEEE = (Y == E0);
+ }
+ }
+ if (UfNGrad) {
+ printf("\n");
+ sigsave = sigfpe;
+ if (setjmp(ovfl_buf)) {
+ printf("Underflow / UfThold failed!\n");
+ R = H + H;
+ }
+ else R = SQRT(Underflow / UfThold);
+ sigsave = 0;
+ if (R <= H) {
+ Z = R * UfThold;
+ X = Z * (One + R * H * (One + H));
+ }
+ else {
+ Z = UfThold;
+ X = Z * (One + H * H * (One + H));
+ }
+ if (! ((X == Z) || (X - Z != Zero))) {
+ BadCond(Flaw, "");
+ printf("X = %.17e\n\tis not equal to Z = %.17e .\n", X, Z);
+ Z9 = X - Z;
+ printf("yet X - Z yields %.17e .\n", Z9);
+ printf(" Should this NOT signal Underflow, ");
+ printf("this is a SERIOUS DEFECT\nthat causes ");
+ printf("confusion when innocent statements like\n");;
+ printf(" if (X == Z) ... else");
+ printf(" ... (f(X) - f(Z)) / (X - Z) ...\n");
+ printf("encounter Division by Zero although actually\n");
+ sigsave = sigfpe;
+ if (setjmp(ovfl_buf)) printf("X / Z fails!\n");
+ else printf("X / Z = 1 + %g .\n", (X / Z - Half) - Half);
+ sigsave = 0;
+ }
+ }
+ printf("The Underflow threshold is %.17e, %s\n", UfThold,
+ " below which");
+ printf("calculation may suffer larger Relative error than ");
+ printf("merely roundoff.\n");
+ Y2 = U1 * U1;
+ Y = Y2 * Y2;
+ Y2 = Y * U1;
+ if (Y2 <= UfThold) {
+ if (Y > E0) {
+ BadCond(Defect, "");
+ I = 5;
+ }
+ else {
+ BadCond(Serious, "");
+ I = 4;
+ }
+ printf("Range is too narrow; U1^%d Underflows.\n", I);
+ }
+ /*=============================================*/
+ /*SPLIT
+ }
+#include "paranoia.h"
+part7(){
+*/
+ Milestone = 130;
+ /*=============================================*/
+ Y = - FLOOR(Half - TwoForty * LOG(UfThold) / LOG(HInvrse)) / TwoForty;
+ Y2 = Y + Y;
+ printf("Since underflow occurs below the threshold\n");
+ printf("UfThold = (%.17e) ^ (%.17e)\nonly underflow ", HInvrse, Y);
+ printf("should afflict the expression\n\t(%.17e) ^ (%.17e);\n", HInvrse, Y);
+ V9 = POW(HInvrse, Y2);
+ printf("actually calculating yields: %.17e .\n", V9);
+ if (! ((V9 >= Zero) && (V9 <= (Radix + Radix + E9) * UfThold))) {
+ BadCond(Serious, "this is not between 0 and underflow\n");
+ printf(" threshold = %.17e .\n", UfThold);
+ }
+ else if (! (V9 > UfThold * (One + E9)))
+ printf("This computed value is O.K.\n");
+ else {
+ BadCond(Defect, "this is not between 0 and underflow\n");
+ printf(" threshold = %.17e .\n", UfThold);
+ }
+ /*=============================================*/
+ Milestone = 140;
+ /*=============================================*/
+ printf("\n");
+ /* ...calculate Exp2 == exp(2) == 7.389056099... */
+ X = Zero;
+ I = 2;
+ Y = Two * Three;
+ Q = Zero;
+ N = 0;
+ do {
+ Z = X;
+ I = I + 1;
+ Y = Y / (I + I);
+ R = Y + Q;
+ X = Z + R;
+ Q = (Z - X) + R;
+ } while(X > Z);
+ Z = (OneAndHalf + One / Eight) + X / (OneAndHalf * ThirtyTwo);
+ X = Z * Z;
+ Exp2 = X * X;
+ X = F9;
+ Y = X - U1;
+ printf("Testing X^((X + 1) / (X - 1)) vs. exp(2) = %.17e as X -> 1.\n",
+ Exp2);
+ for(I = 1;;) {
+ Z = X - BInvrse;
+ Z = (X + One) / (Z - (One - BInvrse));
+ Q = POW(X, Z) - Exp2;
+ if (FABS(Q) > TwoForty * U2) {
+ N = 1;
+ V9 = (X - BInvrse) - (One - BInvrse);
+ BadCond(Defect, "Calculated");
+ printf(" %.17e for\n", POW(X,Z));
+ printf("\t(1 + (%.17e) ^ (%.17e);\n", V9, Z);
+ printf("\tdiffers from correct value by %.17e .\n", Q);
+ printf("\tThis much error may spoil financial\n");
+ printf("\tcalculations involving tiny interest rates.\n");
+ break;
+ }
+ else {
+ Z = (Y - X) * Two + Y;
+ X = Y;
+ Y = Z;
+ Z = One + (X - F9)*(X - F9);
+ if (Z > One && I < NoTrials) I++;
+ else {
+ if (X > One) {
+ if (N == 0)
+ printf("Accuracy seems adequate.\n");
+ break;
+ }
+ else {
+ X = One + U2;
+ Y = U2 + U2;
+ Y += X;
+ I = 1;
+ }
+ }
+ }
+ }
+ /*=============================================*/
+ Milestone = 150;
+ /*=============================================*/
+ printf("Testing powers Z^Q at four nearly extreme values.\n");
+ N = 0;
+ Z = A1;
+ Q = FLOOR(Half - LOG(C) / LOG(A1));
+ Break = False;
+ do {
+ X = CInvrse;
+ Y = POW(Z, Q);
+ IsYeqX();
+ Q = - Q;
+ X = C;
+ Y = POW(Z, Q);
+ IsYeqX();
+ if (Z < One) Break = True;
+ else Z = AInvrse;
+ } while ( ! (Break));
+ PrintIfNPositive();
+ if (N == 0) printf(" ... no discrepancies found.\n");
+ printf("\n");
+
+ /*=============================================*/
+ Milestone = 160;
+ /*=============================================*/
+ Pause();
+ printf("Searching for Overflow threshold:\n");
+ printf("This may generate an error.\n");
+ Y = - CInvrse;
+ V9 = HInvrse * Y;
+ sigsave = sigfpe;
+ if (setjmp(ovfl_buf)) { I = 0; V9 = Y; goto overflow; }
+ do {
+ V = Y;
+ Y = V9;
+ V9 = HInvrse * Y;
+ } while(V9 < Y);
+ I = 1;
+overflow:
+ sigsave = 0;
+ Z = V9;
+ printf("Can `Z = -Y' overflow?\n");
+ printf("Trying it on Y = %.17e .\n", Y);
+ V9 = - Y;
+ V0 = V9;
+ if (V - Y == V + V0) printf("Seems O.K.\n");
+ else {
+ printf("finds a ");
+ BadCond(Flaw, "-(-Y) differs from Y.\n");
+ }
+ if (Z != Y) {
+ BadCond(Serious, "");
+ printf("overflow past %.17e\n\tshrinks to %.17e .\n", Y, Z);
+ }
+ if (I) {
+ Y = V * (HInvrse * U2 - HInvrse);
+ Z = Y + ((One - HInvrse) * U2) * V;
+ if (Z < V0) Y = Z;
+ if (Y < V0) V = Y;
+ if (V0 - V < V0) V = V0;
+ }
+ else {
+ V = Y * (HInvrse * U2 - HInvrse);
+ V = V + ((One - HInvrse) * U2) * Y;
+ }
+ printf("Overflow threshold is V = %.17e .\n", V);
+ if (I) printf("Overflow saturates at V0 = %.17e .\n", V0);
+ else printf("There is no saturation value because the system traps on overflow.\n");
+ V9 = V * One;
+ printf("No Overflow should be signaled for V * 1 = %.17e\n", V9);
+ V9 = V / One;
+ printf(" nor for V / 1 = %.17e .\n", V9);
+ printf("Any overflow signal separating this * from the one\n");
+ printf("above is a DEFECT.\n");
+ /*=============================================*/
+ Milestone = 170;
+ /*=============================================*/
+ if (!(-V < V && -V0 < V0 && -UfThold < V && UfThold < V)) {
+ BadCond(Failure, "Comparisons involving ");
+ printf("+-%g, +-%g\nand +-%g are confused by Overflow.",
+ V, V0, UfThold);
+ }
+ /*=============================================*/
+ Milestone = 175;
+ /*=============================================*/
+ printf("\n");
+ for(Indx = 1; Indx <= 3; ++Indx) {
+ switch (Indx) {
+ case 1: Z = UfThold; break;
+ case 2: Z = E0; break;
+ case 3: Z = PseudoZero; break;
+ }
+ if (Z != Zero) {
+ V9 = SQRT(Z);
+ Y = V9 * V9;
+ if (Y / (One - Radix * E9) < Z
+ || Y > (One + Radix * E9) * Z) { /* dgh: + E9 --> * E9 */
+ if (V9 > U1) BadCond(Serious, "");
+ else BadCond(Defect, "");
+ printf("Comparison alleges that what prints as Z = %.17e\n", Z);
+ printf(" is too far from sqrt(Z) ^ 2 = %.17e .\n", Y);
+ }
+ }
+ }
+ /*=============================================*/
+ Milestone = 180;
+ /*=============================================*/
+ for(Indx = 1; Indx <= 2; ++Indx) {
+ if (Indx == 1) Z = V;
+ else Z = V0;
+ V9 = SQRT(Z);
+ X = (One - Radix * E9) * V9;
+ V9 = V9 * X;
+ if (((V9 < (One - Two * Radix * E9) * Z) || (V9 > Z))) {
+ Y = V9;
+ if (X < W) BadCond(Serious, "");
+ else BadCond(Defect, "");
+ printf("Comparison alleges that Z = %17e\n", Z);
+ printf(" is too far from sqrt(Z) ^ 2 (%.17e) .\n", Y);
+ }
+ }
+ /*=============================================*/
+ /*SPLIT
+ }
+#include "paranoia.h"
+part8(){
+*/
+ Milestone = 190;
+ /*=============================================*/
+ Pause();
+ X = UfThold * V;
+ Y = Radix * Radix;
+ if (X*Y < One || X > Y) {
+ if (X * Y < U1 || X > Y/U1) BadCond(Defect, "Badly");
+ else BadCond(Flaw, "");
+
+ printf(" unbalanced range; UfThold * V = %.17e\n\t%s\n",
+ X, "is too far from 1.\n");
+ }
+ /*=============================================*/
+ Milestone = 200;
+ /*=============================================*/
+ for (Indx = 1; Indx <= 5; ++Indx) {
+ X = F9;
+ switch (Indx) {
+ case 2: X = One + U2; break;
+ case 3: X = V; break;
+ case 4: X = UfThold; break;
+ case 5: X = Radix;
+ }
+ Y = X;
+ sigsave = sigfpe;
+ if (setjmp(ovfl_buf))
+ printf(" X / X traps when X = %g\n", X);
+ else {
+ V9 = (Y / X - Half) - Half;
+ if (V9 == Zero) continue;
+ if (V9 == - U1 && Indx < 5) BadCond(Flaw, "");
+ else BadCond(Serious, "");
+ printf(" X / X differs from 1 when X = %.17e\n", X);
+ printf(" instead, X / X - 1/2 - 1/2 = %.17e .\n", V9);
+ }
+ sigsave = 0;
+ }
+ /*=============================================*/
+ Milestone = 210;
+ /*=============================================*/
+ MyZero = Zero;
+ printf("\n");
+ printf("What message and/or values does Division by Zero produce?\n") ;
+#ifndef NOPAUSE
+ printf("This can interupt your program. You can ");
+ printf("skip this part if you wish.\n");
+ printf("Do you wish to compute 1 / 0? ");
+ fflush(stdout);
+ read (KEYBOARD, ch, 8);
+ if ((ch[0] == 'Y') || (ch[0] == 'y')) {
+#endif
+ sigsave = sigfpe;
+ printf(" Trying to compute 1 / 0 produces ...");
+ if (!setjmp(ovfl_buf)) printf(" %.7e .\n", One / MyZero);
+ sigsave = 0;
+#ifndef NOPAUSE
+ }
+ else printf("O.K.\n");
+ printf("\nDo you wish to compute 0 / 0? ");
+ fflush(stdout);
+ read (KEYBOARD, ch, 80);
+ if ((ch[0] == 'Y') || (ch[0] == 'y')) {
+#endif
+ sigsave = sigfpe;
+ printf("\n Trying to compute 0 / 0 produces ...");
+ if (!setjmp(ovfl_buf)) printf(" %.7e .\n", Zero / MyZero);
+ sigsave = 0;
+#ifndef NOPAUSE
+ }
+ else printf("O.K.\n");
+#endif
+ /*=============================================*/
+ Milestone = 220;
+ /*=============================================*/
+ Pause();
+ printf("\n");
+ {
+ static char *msg[] = {
+ "FAILUREs encountered =",
+ "SERIOUS DEFECTs discovered =",
+ "DEFECTs discovered =",
+ "FLAWs discovered =" };
+ int i;
+ for(i = 0; i < 4; i++) if (ErrCnt[i])
+ printf("The number of %-29s %d.\n",
+ msg[i], ErrCnt[i]);
+ }
+ printf("\n");
+ if ((ErrCnt[Failure] + ErrCnt[Serious] + ErrCnt[Defect]
+ + ErrCnt[Flaw]) > 0) {
+ if ((ErrCnt[Failure] + ErrCnt[Serious] + ErrCnt[
+ Defect] == 0) && (ErrCnt[Flaw] > 0)) {
+ printf("The arithmetic diagnosed seems ");
+ printf("Satisfactory though flawed.\n");
+ }
+ if ((ErrCnt[Failure] + ErrCnt[Serious] == 0)
+ && ( ErrCnt[Defect] > 0)) {
+ printf("The arithmetic diagnosed may be Acceptable\n");
+ printf("despite inconvenient Defects.\n");
+ }
+ if ((ErrCnt[Failure] + ErrCnt[Serious]) > 0) {
+ printf("The arithmetic diagnosed has ");
+ printf("unacceptable Serious Defects.\n");
+ }
+ if (ErrCnt[Failure] > 0) {
+ printf("Potentially fatal FAILURE may have spoiled this");
+ printf(" program's subsequent diagnoses.\n");
+ }
+ }
+ else {
+ printf("No failures, defects nor flaws have been discovered.\n");
+ if (! ((RMult == Rounded) && (RDiv == Rounded)
+ && (RAddSub == Rounded) && (RSqrt == Rounded)))
+ printf("The arithmetic diagnosed seems Satisfactory.\n");
+ else {
+ if (StickyBit >= One &&
+ (Radix - Two) * (Radix - Nine - One) == Zero) {
+ printf("Rounding appears to conform to ");
+ printf("the proposed IEEE standard P");
+ if ((Radix == Two) &&
+ ((Precision - Four * Three * Two) *
+ ( Precision - TwentySeven -
+ TwentySeven + One) == Zero))
+ printf("754");
+ else printf("854");
+ if (IEEE) printf(".\n");
+ else {
+ printf(",\nexcept for possibly Double Rounding");
+ printf(" during Gradual Underflow.\n");
+ }
+ }
+ printf("The arithmetic diagnosed appears to be Excellent!\n");
+ }
+ }
+ if (fpecount)
+ printf("\nA total of %d floating point exceptions were registered.\n",
+ fpecount);
+ printf("END OF TEST.\n");
+ return 0;
+ }
+
+/*SPLIT subs.c
+#include "paranoia.h"
+*/
+
+/* Sign */
+
+FLOAT Sign (X)
+FLOAT X;
+{ return X >= 0. ? 1.0 : -1.0; }
+
+/* Pause */
+
+Pause()
+{
+#ifndef NOPAUSE
+ char ch[8];
+
+ printf("\nTo continue, press RETURN");
+ fflush(stdout);
+ read(KEYBOARD, ch, 8);
+#endif
+ printf("\nDiagnosis resumes after milestone Number %d", Milestone);
+ printf(" Page: %d\n\n", PageNo);
+ ++Milestone;
+ ++PageNo;
+ }
+
+ /* TstCond */
+
+TstCond (K, Valid, T)
+int K, Valid;
+char *T;
+{ if (! Valid) { BadCond(K,T); printf(".\n"); } }
+
+BadCond(K, T)
+int K;
+char *T;
+{
+ static char *msg[] = { "FAILURE", "SERIOUS DEFECT", "DEFECT", "FLAW" };
+
+ ErrCnt [K] = ErrCnt [K] + 1;
+ printf("%s: %s", msg[K], T);
+ }
+
+/* Random */
+/* Random computes
+ X = (Random1 + Random9)^5
+ Random1 = X - FLOOR(X) + 0.000005 * X;
+ and returns the new value of Random1
+*/
+
+FLOAT Random()
+{
+ FLOAT X, Y;
+
+ X = Random1 + Random9;
+ Y = X * X;
+ Y = Y * Y;
+ X = X * Y;
+ Y = X - FLOOR(X);
+ Random1 = Y + X * 0.000005;
+ return(Random1);
+ }
+
+/* SqXMinX */
+
+SqXMinX (ErrKind)
+int ErrKind;
+{
+ FLOAT XA, XB;
+
+ XB = X * BInvrse;
+ XA = X - XB;
+ SqEr = ((SQRT(X * X) - XB) - XA) / OneUlp;
+ if (SqEr != Zero) {
+ if (SqEr < MinSqEr) MinSqEr = SqEr;
+ if (SqEr > MaxSqEr) MaxSqEr = SqEr;
+ J = J + 1.0;
+ BadCond(ErrKind, "\n");
+ printf("sqrt( %.17e) - %.17e = %.17e\n", X * X, X, OneUlp * SqEr);
+ printf("\tinstead of correct value 0 .\n");
+ }
+ }
+
+/* NewD */
+
+NewD()
+{
+ X = Z1 * Q;
+ X = FLOOR(Half - X / Radix) * Radix + X;
+ Q = (Q - X * Z) / Radix + X * X * (D / Radix);
+ Z = Z - Two * X * D;
+ if (Z <= Zero) {
+ Z = - Z;
+ Z1 = - Z1;
+ }
+ D = Radix * D;
+ }
+
+/* SR3750 */
+
+SR3750()
+{
+ if (! ((X - Radix < Z2 - Radix) || (X - Z2 > W - Z2))) {
+ I = I + 1;
+ X2 = SQRT(X * D);
+ Y2 = (X2 - Z2) - (Y - Z2);
+ X2 = X8 / (Y - Half);
+ X2 = X2 - Half * X2 * X2;
+ SqEr = (Y2 + Half) + (Half - X2);
+ if (SqEr < MinSqEr) MinSqEr = SqEr;
+ SqEr = Y2 - X2;
+ if (SqEr > MaxSqEr) MaxSqEr = SqEr;
+ }
+ }
+
+/* IsYeqX */
+
+IsYeqX()
+{
+ if (Y != X) {
+ if (N <= 0) {
+ if (Z == Zero && Q <= Zero)
+ printf("WARNING: computing\n");
+ else BadCond(Defect, "computing\n");
+ printf("\t(%.17e) ^ (%.17e)\n", Z, Q);
+ printf("\tyielded %.17e;\n", Y);
+ printf("\twhich compared unequal to correct %.17e ;\n",
+ X);
+ printf("\t\tthey differ by %.17e .\n", Y - X);
+ }
+ N = N + 1; /* ... count discrepancies. */
+ }
+ }
+
+/* SR3980 */
+
+SR3980()
+{
+ do {
+ Q = (FLOAT) I;
+ Y = POW(Z, Q);
+ IsYeqX();
+ if (++I > M) break;
+ X = Z * X;
+ } while ( X < W );
+ }
+
+/* PrintIfNPositive */
+
+PrintIfNPositive()
+{
+ if (N > 0) printf("Similar discrepancies have occurred %d times.\n", N);
+ }
+
+/* TstPtUf */
+
+TstPtUf()
+{
+ N = 0;
+ if (Z != Zero) {
+ printf("Since comparison denies Z = 0, evaluating ");
+ printf("(Z + Z) / Z should be safe.\n");
+ sigsave = sigfpe;
+ if (setjmp(ovfl_buf)) goto very_serious;
+ Q9 = (Z + Z) / Z;
+ printf("What the machine gets for (Z + Z) / Z is %.17e .\n",
+ Q9);
+ if (FABS(Q9 - Two) < Radix * U2) {
+ printf("This is O.K., provided Over/Underflow");
+ printf(" has NOT just been signaled.\n");
+ }
+ else {
+ if ((Q9 < One) || (Q9 > Two)) {
+very_serious:
+ N = 1;
+ ErrCnt [Serious] = ErrCnt [Serious] + 1;
+ printf("This is a VERY SERIOUS DEFECT!\n");
+ }
+ else {
+ N = 1;
+ ErrCnt [Defect] = ErrCnt [Defect] + 1;
+ printf("This is a DEFECT!\n");
+ }
+ }
+ sigsave = 0;
+ V9 = Z * One;
+ Random1 = V9;
+ V9 = One * Z;
+ Random2 = V9;
+ V9 = Z / One;
+ if ((Z == Random1) && (Z == Random2) && (Z == V9)) {
+ if (N > 0) Pause();
+ }
+ else {
+ N = 1;
+ BadCond(Defect, "What prints as Z = ");
+ printf("%.17e\n\tcompares different from ", Z);
+ if (Z != Random1) printf("Z * 1 = %.17e ", Random1);
+ if (! ((Z == Random2)
+ || (Random2 == Random1)))
+ printf("1 * Z == %g\n", Random2);
+ if (! (Z == V9)) printf("Z / 1 = %.17e\n", V9);
+ if (Random2 != Random1) {
+ ErrCnt [Defect] = ErrCnt [Defect] + 1;
+ BadCond(Defect, "Multiplication does not commute!\n");
+ printf("\tComparison alleges that 1 * Z = %.17e\n",
+ Random2);
+ printf("\tdiffers from Z * 1 = %.17e\n", Random1);
+ }
+ Pause();
+ }
+ }
+ }
+
+notify(s)
+char *s;
+{
+ printf("%s test appears to be inconsistent...\n", s);
+ printf(" PLEASE NOTIFY KARPINKSI!\n");
+ }
+
+/*SPLIT msgs.c */
+
+/* Instructions */
+
+msglist(s)
+char **s;
+{ while(*s) printf("%s\n", *s++); }
+
+Instructions()
+{
+ static char *instr[] = {
+ "Lest this program stop prematurely, i.e. before displaying\n",
+ " `END OF TEST',\n",
+ "try to persuade the computer NOT to terminate execution when an",
+ "error like Over/Underflow or Division by Zero occurs, but rather",
+ "to persevere with a surrogate value after, perhaps, displaying some",
+ "warning. If persuasion avails naught, don't despair but run this",
+ "program anyway to see how many milestones it passes, and then",
+ "amend it to make further progress.\n",
+ "Answer questions with Y, y, N or n (unless otherwise indicated).\n",
+ 0};
+
+ msglist(instr);
+ }
+
+/* Heading */
+
+Heading()
+{
+ static char *head[] = {
+ "Users are invited to help debug and augment this program so it will",
+ "cope with unanticipated and newly uncovered arithmetic pathologies.\n",
+ "Please send suggestions and interesting results to",
+ "\tRichard Karpinski",
+ "\tComputer Center U-76",
+ "\tUniversity of California",
+ "\tSan Francisco, CA 94143-0704, USA\n",
+ "In doing so, please include the following information:",
+#ifdef Single
+ "\tPrecision:\tsingle;",
+#else
+ "\tPrecision:\tdouble;",
+#endif
+ "\tVersion:\t10 February 1989;",
+ "\tComputer:\n",
+ "\tCompiler:\n",
+ "\tOptimization level:\n",
+ "\tOther relevant compiler options:",
+ 0};
+
+ msglist(head);
+ }
+
+/* Characteristics */
+
+Characteristics()
+{
+ static char *chars[] = {
+ "Running this program should reveal these characteristics:",
+ " Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...",
+ " Precision = number of significant digits carried.",
+ " U2 = Radix/Radix^Precision = One Ulp",
+ "\t(OneUlpnit in the Last Place) of 1.000xxx .",
+ " U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .",
+ " Adequacy of guard digits for Mult., Div. and Subt.",
+ " Whether arithmetic is chopped, correctly rounded, or something else",
+ "\tfor Mult., Div., Add/Subt. and Sqrt.",
+ " Whether a Sticky Bit used correctly for rounding.",
+ " UnderflowThreshold = an underflow threshold.",
+ " E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.",
+ " V = an overflow threshold, roughly.",
+ " V0 tells, roughly, whether Infinity is represented.",
+ " Comparisions are checked for consistency with subtraction",
+ "\tand for contamination with pseudo-zeros.",
+ " Sqrt is tested. Y^X is not tested.",
+ " Extra-precise subexpressions are revealed but NOT YET tested.",
+ " Decimal-Binary conversion is NOT YET tested for accuracy.",
+ 0};
+
+ msglist(chars);
+ }
+
+History()
+
+{ /* History */
+ /* Converted from Brian Wichmann's Pascal version to C by Thos Sumner,
+ with further massaging by David M. Gay. */
+
+ static char *hist[] = {
+ "The program attempts to discriminate among",
+ " FLAWs, like lack of a sticky bit,",
+ " Serious DEFECTs, like lack of a guard digit, and",
+ " FAILUREs, like 2+2 == 5 .",
+ "Failures may confound subsequent diagnoses.\n",
+ "The diagnostic capabilities of this program go beyond an earlier",
+ "program called `MACHAR', which can be found at the end of the",
+ "book `Software Manual for the Elementary Functions' (1980) by",
+ "W. J. Cody and W. Waite. Although both programs try to discover",
+ "the Radix, Precision and range (over/underflow thresholds)",
+ "of the arithmetic, this program tries to cope with a wider variety",
+ "of pathologies, and to say how well the arithmetic is implemented.",
+ "\nThe program is based upon a conventional radix representation for",
+ "floating-point numbers, but also allows logarithmic encoding",
+ "as used by certain early WANG machines.\n",
+ "BASIC version of this program (C) 1983 by Prof. W. M. Kahan;",
+ "see source comments for more history.",
+ 0};
+
+ msglist(hist);
+ }
+
+double
+pow(x, y) /* return x ^ y (exponentiation) */
+double x, y;
+{
+ extern double exp(), frexp(), ldexp(), log(), modf();
+ double xy, ye;
+ long i;
+ int ex, ey = 0, flip = 0;
+
+ if (!y) return 1.0;
+
+ if ((y < -1100. || y > 1100.) && x != -1.) return exp(y * log(x));
+
+ if (y < 0.) { y = -y; flip = 1; }
+ y = modf(y, &ye);
+ if (y) xy = exp(y * log(x));
+ else xy = 1.0;
+ /* next several lines assume >= 32 bit integers */
+ x = frexp(x, &ex);
+ if (i = ye) for(;;) {
+ if (i & 1) { xy *= x; ey += ex; }
+ if (!(i >>= 1)) break;
+ x *= x;
+ ex *= 2;
+ if (x < .5) { x *= 2.; ex -= 1; }
+ }
+ if (flip) { xy = 1. / xy; ey = -ey; }
+ return ldexp(xy, ey);
+}
diff --git a/lcc/tst/sort.c b/lcc/tst/sort.c
index 029de8e..a0cff62 100755
--- a/lcc/tst/sort.c
+++ b/lcc/tst/sort.c
@@ -1,65 +1,65 @@
-int in[] = {10, 32, -1, 567, 3, 18, 1, -51, 789, 0};
-
-main() {
- int i;
-
- sort(in, (sizeof in)/(sizeof in[0]));
- for (i = 0; i < (sizeof in)/(sizeof in[0]); i++) {
- putd(in[i]);
- putchar('\n');
- }
- return 0;
-}
-
-/* putd - output decimal number */
-putd(n) {
- if (n < 0) {
- putchar('-');
- n = -n;
- }
- if (n/10)
- putd(n/10);
- putchar(n%10 + '0');
-}
-
-int *xx;
-
-/* sort - sort a[0..n-1] into increasing order */
-sort(a, n) int a[]; {
- quick(xx = a, 0, --n);
-}
-
-/* quick - quicksort a[lb..ub] */
-quick(a, lb, ub) int a[]; {
- int k, partition();
-
- if (lb >= ub)
- return;
- k = partition(a, lb, ub);
- quick(a, lb, k - 1);
- quick(a, k + 1, ub);
-}
-
-/* partition - partition a[i..j] */
-int partition(a, i, j) int a[]; {
- int v, k;
-
- j++;
- k = i;
- v = a[k];
- while (i < j) {
- i++; while (a[i] < v) i++;
- j--; while (a[j] > v) j--;
- if (i < j) exchange(&a[i], &a[j]);
- }
- exchange(&a[k], &a[j]);
- return j;
-}
-
-/* exchange - exchange *x and *y */
-exchange(x, y) int *x, *y; {
- int t;
-
- printf("exchange(%d,%d)\n", x - xx, y - xx);
- t = *x; *x = *y; *y = t;
-}
+int in[] = {10, 32, -1, 567, 3, 18, 1, -51, 789, 0};
+
+main() {
+ int i;
+
+ sort(in, (sizeof in)/(sizeof in[0]));
+ for (i = 0; i < (sizeof in)/(sizeof in[0]); i++) {
+ putd(in[i]);
+ putchar('\n');
+ }
+ return 0;
+}
+
+/* putd - output decimal number */
+putd(n) {
+ if (n < 0) {
+ putchar('-');
+ n = -n;
+ }
+ if (n/10)
+ putd(n/10);
+ putchar(n%10 + '0');
+}
+
+int *xx;
+
+/* sort - sort a[0..n-1] into increasing order */
+sort(a, n) int a[]; {
+ quick(xx = a, 0, --n);
+}
+
+/* quick - quicksort a[lb..ub] */
+quick(a, lb, ub) int a[]; {
+ int k, partition();
+
+ if (lb >= ub)
+ return;
+ k = partition(a, lb, ub);
+ quick(a, lb, k - 1);
+ quick(a, k + 1, ub);
+}
+
+/* partition - partition a[i..j] */
+int partition(a, i, j) int a[]; {
+ int v, k;
+
+ j++;
+ k = i;
+ v = a[k];
+ while (i < j) {
+ i++; while (a[i] < v) i++;
+ j--; while (a[j] > v) j--;
+ if (i < j) exchange(&a[i], &a[j]);
+ }
+ exchange(&a[k], &a[j]);
+ return j;
+}
+
+/* exchange - exchange *x and *y */
+exchange(x, y) int *x, *y; {
+ int t;
+
+ printf("exchange(%d,%d)\n", x - xx, y - xx);
+ t = *x; *x = *y; *y = t;
+}
diff --git a/lcc/tst/spill.c b/lcc/tst/spill.c
index 4a3d9aa..2c5da81 100755
--- a/lcc/tst/spill.c
+++ b/lcc/tst/spill.c
@@ -1,17 +1,17 @@
-main(){}
-
-f(i){i=f()+f();}
-
-f2(i){i=f()+(i?f():1);}
-
-f3(int i,int *p){register r1=0,r2=0,r3=0,r4=0,r5=0,r6=0,r7=0,r8=0,r9=0,r10=0;*p++=i?f():0;}
-
-double a[10],b[10];int i;f4(){register r6=0,r7=0,r8=0,r9=0,r10=0,r11=0;i=a[i]+b[i] && i && a[i]-b[i];}
-/* f4 causes parent to spill child on vax when odd double regs are enabled */
-
-int j, k, m, n;
-double *A, *B, x;
-f5(){
- x=A[k*m]*A[j*m]+B[k*n]*B[j*n];
- x=A[k*m]*B[j*n]-B[k*n]*A[j*m];
-}
+main(){}
+
+f(i){i=f()+f();}
+
+f2(i){i=f()+(i?f():1);}
+
+f3(int i,int *p){register r1=0,r2=0,r3=0,r4=0,r5=0,r6=0,r7=0,r8=0,r9=0,r10=0;*p++=i?f():0;}
+
+double a[10],b[10];int i;f4(){register r6=0,r7=0,r8=0,r9=0,r10=0,r11=0;i=a[i]+b[i] && i && a[i]-b[i];}
+/* f4 causes parent to spill child on vax when odd double regs are enabled */
+
+int j, k, m, n;
+double *A, *B, x;
+f5(){
+ x=A[k*m]*A[j*m]+B[k*n]*B[j*n];
+ x=A[k*m]*B[j*n]-B[k*n]*A[j*m];
+}
diff --git a/lcc/tst/stdarg.c b/lcc/tst/stdarg.c
index ff6c918..c6a5338 100755
--- a/lcc/tst/stdarg.c
+++ b/lcc/tst/stdarg.c
@@ -1,51 +1,51 @@
-#include <stdarg.h>
-
-struct node { int a[4]; } x = {1,2,3,4};
-
-print(char *fmt, ...);
-
-main() {
- print("test 1\n");
- print("test %s\n", "2");
- print("test %d%c", 3, '\n');
- print("%s%s %w%c", "te", "st", 4, '\n');
- print("%s%s %f%c", "te", "st", 5.0, '\n');
- print("%b %b %b %b %b %b\n", x, x, x, x, x, x);
- return 0;
-}
-
-print(char *fmt, ...) {
- va_list ap;
-
- va_start(ap, fmt);
- for (; *fmt; fmt++)
- if (*fmt == '%')
- switch (*++fmt) {
- case 'b': {
- struct node x = va_arg(ap, struct node);
- printf("{%d %d %d %d}", x.a[0], x.a[1], x.a[2], x.a[3]);
- break;
- }
- case 'c':
- printf("%c", va_arg(ap, char));
- break;
- case 'd':
- printf("%d", va_arg(ap, int));
- break;
- case 'w':
- printf("%x", va_arg(ap, short));
- break;
- case 's':
- printf("%s", va_arg(ap, char *));
- break;
- case 'f':
- printf("%f", va_arg(ap, double));
- break;
- default:
- printf("%c", *fmt);
- break;
- }
- else
- printf("%c", *fmt);
- va_end(ap);
-}
+#include <stdarg.h>
+
+struct node { int a[4]; } x = {1,2,3,4};
+
+print(char *fmt, ...);
+
+main() {
+ print("test 1\n");
+ print("test %s\n", "2");
+ print("test %d%c", 3, '\n');
+ print("%s%s %w%c", "te", "st", 4, '\n');
+ print("%s%s %f%c", "te", "st", 5.0, '\n');
+ print("%b %b %b %b %b %b\n", x, x, x, x, x, x);
+ return 0;
+}
+
+print(char *fmt, ...) {
+ va_list ap;
+
+ va_start(ap, fmt);
+ for (; *fmt; fmt++)
+ if (*fmt == '%')
+ switch (*++fmt) {
+ case 'b': {
+ struct node x = va_arg(ap, struct node);
+ printf("{%d %d %d %d}", x.a[0], x.a[1], x.a[2], x.a[3]);
+ break;
+ }
+ case 'c':
+ printf("%c", va_arg(ap, char));
+ break;
+ case 'd':
+ printf("%d", va_arg(ap, int));
+ break;
+ case 'w':
+ printf("%x", va_arg(ap, short));
+ break;
+ case 's':
+ printf("%s", va_arg(ap, char *));
+ break;
+ case 'f':
+ printf("%f", va_arg(ap, double));
+ break;
+ default:
+ printf("%c", *fmt);
+ break;
+ }
+ else
+ printf("%c", *fmt);
+ va_end(ap);
+}
diff --git a/lcc/tst/struct.c b/lcc/tst/struct.c
index 97da897..fe81681 100755
--- a/lcc/tst/struct.c
+++ b/lcc/tst/struct.c
@@ -1,69 +1,69 @@
-typedef struct point { int x,y; } point;
-typedef struct rect { point pt1, pt2; } rect;
-
-point addpoint(point p1, point p2) { /* add two points */
- p1.x += p2.x;
- p1.y += p2.y;
- return p1;
-}
-
-#define min(a, b) ((a) < (b) ? (a) : (b))
-#define max(a, b) ((a) > (b) ? (a) : (b))
-
-rect canonrect(rect r) { /* canonicalize rectangle coordinates */
- rect temp;
-
- temp.pt1.x = min(r.pt1.x, r.pt2.x);
- temp.pt1.y = min(r.pt1.y, r.pt2.y);
- temp.pt2.x = max(r.pt1.x, r.pt2.x);
- temp.pt2.y = max(r.pt1.y, r.pt2.y);
- return temp;
-}
-
-point makepoint(int x, int y) { /* make a point from x and y components */
- point p;
-
- p.x = x;
- p.y = y;
- return p;
-}
-
-rect makerect(point p1, point p2) { /* make a rectangle from two points */
- rect r;
-
- r.pt1 = p1;
- r.pt2 = p2;
- return canonrect(r);
-}
-
-int ptinrect(point p, rect r) { /* is p in r? */
- return p.x >= r.pt1.x && p.x < r.pt2.x
- && p.y >= r.pt1.y && p.y < r.pt2.y;
-}
-
-struct odd {char a[3]; } y = {'a', 'b', 0};
-
-odd(struct odd y) {
- struct odd x = y;
- printf("%s\n", x.a);
-}
-
-main() {
- int i;
- point x, origin = { 0, 0 }, maxpt = { 320, 320 };
- point pts[] = { -1, -1, 1, 1, 20, 300, 500, 400 };
- rect screen = makerect(addpoint(maxpt, makepoint(-10, -10)),
- addpoint(origin, makepoint(10, 10)));
-
- for (i = 0; i < sizeof pts/sizeof pts[0]; i++) {
- printf("(%d,%d) is ", pts[i].x,
- (x = makepoint(pts[i].x, pts[i].y)).y);
- if (ptinrect(x, screen) == 0)
- printf("not ");
- printf("within [%d,%d; %d,%d]\n", screen.pt1.x, screen.pt1.y,
- screen.pt2.x, screen.pt2.y);
- }
- odd(y);
- exit(0);
-}
-
+typedef struct point { int x,y; } point;
+typedef struct rect { point pt1, pt2; } rect;
+
+point addpoint(point p1, point p2) { /* add two points */
+ p1.x += p2.x;
+ p1.y += p2.y;
+ return p1;
+}
+
+#define min(a, b) ((a) < (b) ? (a) : (b))
+#define max(a, b) ((a) > (b) ? (a) : (b))
+
+rect canonrect(rect r) { /* canonicalize rectangle coordinates */
+ rect temp;
+
+ temp.pt1.x = min(r.pt1.x, r.pt2.x);
+ temp.pt1.y = min(r.pt1.y, r.pt2.y);
+ temp.pt2.x = max(r.pt1.x, r.pt2.x);
+ temp.pt2.y = max(r.pt1.y, r.pt2.y);
+ return temp;
+}
+
+point makepoint(int x, int y) { /* make a point from x and y components */
+ point p;
+
+ p.x = x;
+ p.y = y;
+ return p;
+}
+
+rect makerect(point p1, point p2) { /* make a rectangle from two points */
+ rect r;
+
+ r.pt1 = p1;
+ r.pt2 = p2;
+ return canonrect(r);
+}
+
+int ptinrect(point p, rect r) { /* is p in r? */
+ return p.x >= r.pt1.x && p.x < r.pt2.x
+ && p.y >= r.pt1.y && p.y < r.pt2.y;
+}
+
+struct odd {char a[3]; } y = {'a', 'b', 0};
+
+odd(struct odd y) {
+ struct odd x = y;
+ printf("%s\n", x.a);
+}
+
+main() {
+ int i;
+ point x, origin = { 0, 0 }, maxpt = { 320, 320 };
+ point pts[] = { -1, -1, 1, 1, 20, 300, 500, 400 };
+ rect screen = makerect(addpoint(maxpt, makepoint(-10, -10)),
+ addpoint(origin, makepoint(10, 10)));
+
+ for (i = 0; i < sizeof pts/sizeof pts[0]; i++) {
+ printf("(%d,%d) is ", pts[i].x,
+ (x = makepoint(pts[i].x, pts[i].y)).y);
+ if (ptinrect(x, screen) == 0)
+ printf("not ");
+ printf("within [%d,%d; %d,%d]\n", screen.pt1.x, screen.pt1.y,
+ screen.pt2.x, screen.pt2.y);
+ }
+ odd(y);
+ exit(0);
+}
+
diff --git a/lcc/tst/switch.c b/lcc/tst/switch.c
index 0cd48de..dd62d79 100755
--- a/lcc/tst/switch.c
+++ b/lcc/tst/switch.c
@@ -1,137 +1,137 @@
-main()
-{
- int i; char *s;
-
- for (s = "bfnrtvx"; *s; s++)
- printf("%c = 0x%x\n", *s, backslash(*s));
- f();
- g();
- h();
- for (i = 0x1000000; i&0x7000000; i += 0x1000000)
- big(i);
- limit();
- return 0;
-}
-
-backslash(c)
-{
- switch (c) {
- case 'b':
- return '\b';
- case 'f':
- return '\f';
- case 'n':
- return '\n';
- case 'r':
- return '\r';
- case 't':
- return '\t';
- case 'v':
- return '\v';
- }
- return c;
-}
-
-f() {
- int i, x = 0, y;
-
- printf("f:\n");
- for (i = 0; i <= 20; i++) {
- y = i;
- switch (i) {
- case 1: x = i; break;
- case 2: x = i; break;
- case 7: x = i; break;
- case 8: x = i; break;
- case 9: x = i; break;
- case 16: x = i; break;
- case 17: x = i; break;
- case 18: x = i; break;
- case 19: x = i; break;
- case 20: x = i; break;
- }
- printf("x = %d\n", x);
- }
-}
-
-g() {
- int i;
-
- printf("g:\n");
- for (i = 1; i <= 10; i++)
- switch (i) {
- case 1: case 2: printf("1 %d\n", i); break;
- case 3: case 4: case 5: printf("2 %d\n", i); break;
- case 6: case 7: case 8: printf("3 %d\n", i);
- default:
- printf("d %d\n", i); break;
- case 1001: case 1002: case 1003: case 1004:
- printf("5 %d\n", i); break;
- case 3001: case 3002: case 3003: case 3004:
- printf("6 %d\n", i); break;
- }
-}
-
-h()
-{
- int i, n=0;
-
- printf("h:\n");
- for (i = 1; i <= 500; i++)
- switch (i) {
- default: n++; continue;
- case 128: printf("i = %d\n", i); break;
- case 16: printf("i = %d\n", i); break;
- case 8: printf("i = %d\n", i); break;
- case 120: printf("i = %d\n", i); break;
- case 280: printf("i = %d\n", i); break;
- case 264: printf("i = %d\n", i); break;
- case 248: printf("i = %d\n", i); break;
- case 272: printf("i = %d\n", i); break;
- case 304: printf("i = %d\n", i); break;
- case 296: printf("i = %d\n", i); break;
- case 288: printf("i = %d\n", i); break;
- case 312: printf("i = %d\n", i); break;
- }
- printf("%d defaults\n", n);
-}
-
-big(x) unsigned x; {
- switch(x&0x6000000){
- case -1:
- case -2:
- case 0x0000000:
- printf("x = 0x%x\n", x); break;
- case 0x2000000:
- printf("x = 0x%x\n", x); break;
- case 0x4000000:
- printf("x = 0x%x\n", x); break;
- default:
- printf("x = 0x%x (default)\n", x); break;
- }
-}
-
-#include <limits.h>
-
-limit() {
- int i;
-
- for (i = INT_MIN; i <= INT_MIN+5; i++)
- switch (i) {
- case INT_MIN: printf("0\n"); break;
- case INT_MIN+1: printf("1\n"); break;
- case INT_MIN+2: printf("2\n"); break;
- case INT_MIN+3: printf("3\n"); break;
- case INT_MIN+4: printf("4\n"); break;
- default: printf("5\n"); break;
- }
- for (i = INT_MAX; i >= INT_MAX-5; i--)
- switch (i) {
- case INT_MAX: printf("0\n"); break;
- case INT_MAX-1: printf("1\n"); break;
- case INT_MAX-2: printf("2\n"); break;
- case INT_MAX-3: printf("3\n"); break;
- case INT_MAX-4: printf("4\n"); break;
- default: printf("5\n"); break;
- }
-}
+main()
+{
+ int i; char *s;
+
+ for (s = "bfnrtvx"; *s; s++)
+ printf("%c = 0x%x\n", *s, backslash(*s));
+ f();
+ g();
+ h();
+ for (i = 0x1000000; i&0x7000000; i += 0x1000000)
+ big(i);
+ limit();
+ return 0;
+}
+
+backslash(c)
+{
+ switch (c) {
+ case 'b':
+ return '\b';
+ case 'f':
+ return '\f';
+ case 'n':
+ return '\n';
+ case 'r':
+ return '\r';
+ case 't':
+ return '\t';
+ case 'v':
+ return '\v';
+ }
+ return c;
+}
+
+f() {
+ int i, x = 0, y;
+
+ printf("f:\n");
+ for (i = 0; i <= 20; i++) {
+ y = i;
+ switch (i) {
+ case 1: x = i; break;
+ case 2: x = i; break;
+ case 7: x = i; break;
+ case 8: x = i; break;
+ case 9: x = i; break;
+ case 16: x = i; break;
+ case 17: x = i; break;
+ case 18: x = i; break;
+ case 19: x = i; break;
+ case 20: x = i; break;
+ }
+ printf("x = %d\n", x);
+ }
+}
+
+g() {
+ int i;
+
+ printf("g:\n");
+ for (i = 1; i <= 10; i++)
+ switch (i) {
+ case 1: case 2: printf("1 %d\n", i); break;
+ case 3: case 4: case 5: printf("2 %d\n", i); break;
+ case 6: case 7: case 8: printf("3 %d\n", i);
+ default:
+ printf("d %d\n", i); break;
+ case 1001: case 1002: case 1003: case 1004:
+ printf("5 %d\n", i); break;
+ case 3001: case 3002: case 3003: case 3004:
+ printf("6 %d\n", i); break;
+ }
+}
+
+h()
+{
+ int i, n=0;
+
+ printf("h:\n");
+ for (i = 1; i <= 500; i++)
+ switch (i) {
+ default: n++; continue;
+ case 128: printf("i = %d\n", i); break;
+ case 16: printf("i = %d\n", i); break;
+ case 8: printf("i = %d\n", i); break;
+ case 120: printf("i = %d\n", i); break;
+ case 280: printf("i = %d\n", i); break;
+ case 264: printf("i = %d\n", i); break;
+ case 248: printf("i = %d\n", i); break;
+ case 272: printf("i = %d\n", i); break;
+ case 304: printf("i = %d\n", i); break;
+ case 296: printf("i = %d\n", i); break;
+ case 288: printf("i = %d\n", i); break;
+ case 312: printf("i = %d\n", i); break;
+ }
+ printf("%d defaults\n", n);
+}
+
+big(x) unsigned x; {
+ switch(x&0x6000000){
+ case -1:
+ case -2:
+ case 0x0000000:
+ printf("x = 0x%x\n", x); break;
+ case 0x2000000:
+ printf("x = 0x%x\n", x); break;
+ case 0x4000000:
+ printf("x = 0x%x\n", x); break;
+ default:
+ printf("x = 0x%x (default)\n", x); break;
+ }
+}
+
+#include <limits.h>
+
+limit() {
+ int i;
+
+ for (i = INT_MIN; i <= INT_MIN+5; i++)
+ switch (i) {
+ case INT_MIN: printf("0\n"); break;
+ case INT_MIN+1: printf("1\n"); break;
+ case INT_MIN+2: printf("2\n"); break;
+ case INT_MIN+3: printf("3\n"); break;
+ case INT_MIN+4: printf("4\n"); break;
+ default: printf("5\n"); break;
+ }
+ for (i = INT_MAX; i >= INT_MAX-5; i--)
+ switch (i) {
+ case INT_MAX: printf("0\n"); break;
+ case INT_MAX-1: printf("1\n"); break;
+ case INT_MAX-2: printf("2\n"); break;
+ case INT_MAX-3: printf("3\n"); break;
+ case INT_MAX-4: printf("4\n"); break;
+ default: printf("5\n"); break;
+ }
+}
diff --git a/lcc/tst/wf1.0 b/lcc/tst/wf1.0
index 28f6ebd..761b526 100755
--- a/lcc/tst/wf1.0
+++ b/lcc/tst/wf1.0
@@ -1,115 +1,115 @@
-/* wf1 - print word frequencies; uses structures */
-
-struct node {
- int count; /* frequency count */
- struct node *left; /* left subtree */
- struct node *right; /* right subtree */
- char *word; /* word itself */
-} words[2000];
-int next; /* index of next free entry in words */
-
-struct node *lookup();
-
-main()
-{
- struct node *root;
- char word[20];
-
- root = 0;
- next = 0;
- while (getword(word))
- lookup(word, &root)->count++;
- tprint(root);
- return 0;
-}
-
-/* err - print error message s and die */
-err(s)
-char *s;
-{
- printf("? %s\n", s);
- exit(1);
-}
-
-/* getword - get next input word into buf, return 0 on EOF */
-int getword(buf)
-char *buf;
-{
- char *s;
- int c;
-
- while ((c = getchar()) != -1 && isletter(c) == 0)
- ;
- for (s = buf; c = isletter(c); c = getchar())
- *s++ = c;
- *s = 0;
- if (s > buf)
- return (1);
- return (0);
-}
-
-/* isletter - return folded version of c if it is a letter, 0 otherwise */
-int isletter(c)
-int c;
-{
- if (c >= 'A' && c <= 'Z')
- c += 'a' - 'A';
- if (c >= 'a' && c <= 'z')
- return (c);
- return (0);
-}
-
-/* lookup - lookup word in tree; install if necessary */
-struct node *lookup(word, p)
-char *word;
-struct node **p;
-{
- int cond;
- char *malloc();
-
- if (*p) {
- cond = strcmp(word, (*p)->word);
- if (cond < 0)
- return lookup(word, &(*p)->left);
- else if (cond > 0)
- return lookup(word, &(*p)->right);
- else
- return *p;
- }
- if (next >= 2000)
- err("out of node storage");
- words[next].count = 0;
- words[next].left = words[next].right = 0;
- words[next].word = malloc(strlen(word) + 1);
- if (words[next].word == 0)
- err("out of word storage");
- strcpy(words[next].word, word);
- return *p = &words[next++];
-}
-
-/* tprint - print tree */
-tprint(tree)
-struct node *tree;
-{
- if (tree) {
- tprint(tree->left);
- printf("%d\t%s\n", tree->count, tree->word);
- tprint(tree->right);
- }
-}
-
-/* strcmp - compare s1 and s2, return <0, 0, or >0 */
-int strcmp(s1, s2)
-char *s1, *s2;
-{
- while (*s1 == *s2) {
- if (*s1++ == 0)
- return 0;
- ++s2;
- }
- if (*s1 == 0)
- return -1;
- else if (*s2 == 0)
- return 1;
- return *s1 - *s2;
-}
+/* wf1 - print word frequencies; uses structures */
+
+struct node {
+ int count; /* frequency count */
+ struct node *left; /* left subtree */
+ struct node *right; /* right subtree */
+ char *word; /* word itself */
+} words[2000];
+int next; /* index of next free entry in words */
+
+struct node *lookup();
+
+main()
+{
+ struct node *root;
+ char word[20];
+
+ root = 0;
+ next = 0;
+ while (getword(word))
+ lookup(word, &root)->count++;
+ tprint(root);
+ return 0;
+}
+
+/* err - print error message s and die */
+err(s)
+char *s;
+{
+ printf("? %s\n", s);
+ exit(1);
+}
+
+/* getword - get next input word into buf, return 0 on EOF */
+int getword(buf)
+char *buf;
+{
+ char *s;
+ int c;
+
+ while ((c = getchar()) != -1 && isletter(c) == 0)
+ ;
+ for (s = buf; c = isletter(c); c = getchar())
+ *s++ = c;
+ *s = 0;
+ if (s > buf)
+ return (1);
+ return (0);
+}
+
+/* isletter - return folded version of c if it is a letter, 0 otherwise */
+int isletter(c)
+int c;
+{
+ if (c >= 'A' && c <= 'Z')
+ c += 'a' - 'A';
+ if (c >= 'a' && c <= 'z')
+ return (c);
+ return (0);
+}
+
+/* lookup - lookup word in tree; install if necessary */
+struct node *lookup(word, p)
+char *word;
+struct node **p;
+{
+ int cond;
+ char *malloc();
+
+ if (*p) {
+ cond = strcmp(word, (*p)->word);
+ if (cond < 0)
+ return lookup(word, &(*p)->left);
+ else if (cond > 0)
+ return lookup(word, &(*p)->right);
+ else
+ return *p;
+ }
+ if (next >= 2000)
+ err("out of node storage");
+ words[next].count = 0;
+ words[next].left = words[next].right = 0;
+ words[next].word = malloc(strlen(word) + 1);
+ if (words[next].word == 0)
+ err("out of word storage");
+ strcpy(words[next].word, word);
+ return *p = &words[next++];
+}
+
+/* tprint - print tree */
+tprint(tree)
+struct node *tree;
+{
+ if (tree) {
+ tprint(tree->left);
+ printf("%d\t%s\n", tree->count, tree->word);
+ tprint(tree->right);
+ }
+}
+
+/* strcmp - compare s1 and s2, return <0, 0, or >0 */
+int strcmp(s1, s2)
+char *s1, *s2;
+{
+ while (*s1 == *s2) {
+ if (*s1++ == 0)
+ return 0;
+ ++s2;
+ }
+ if (*s1 == 0)
+ return -1;
+ else if (*s2 == 0)
+ return 1;
+ return *s1 - *s2;
+}
diff --git a/lcc/tst/wf1.c b/lcc/tst/wf1.c
index a95b4ec..d0c6e32 100755
--- a/lcc/tst/wf1.c
+++ b/lcc/tst/wf1.c
@@ -1,101 +1,101 @@
-/* wf1 - print word frequencies; uses structures */
-
-struct node {
- int count; /* frequency count */
- struct node *left; /* left subtree */
- struct node *right; /* right subtree */
- char *word; /* word itself */
-} words[2000];
-int next; /* index of next free entry in words */
-
-struct node *lookup();
-
-main() {
- struct node *root;
- char word[20];
-
- root = 0;
- next = 0;
- while (getword(word))
- lookup(word, &root)->count++;
- tprint(root);
- return 0;
-}
-
-/* err - print error message s and die */
-err(s) char *s; {
- printf("? %s\n", s);
- exit(1);
-}
-
-/* getword - get next input word into buf, return 0 on EOF */
-int getword(buf) char *buf; {
- char *s;
- int c;
-
- while ((c = getchar()) != -1 && isletter(c) == 0)
- ;
- for (s = buf; c = isletter(c); c = getchar())
- *s++ = c;
- *s = 0;
- if (s > buf)
- return (1);
- return (0);
-}
-
-/* isletter - return folded version of c if it is a letter, 0 otherwise */
-int isletter(c) {
- if (c >= 'A' && c <= 'Z')
- c += 'a' - 'A';
- if (c >= 'a' && c <= 'z')
- return (c);
- return (0);
-}
-
-/* lookup - lookup word in tree; install if necessary */
-struct node *lookup(word, p) char *word; struct node **p; {
- int cond;
- char *malloc();
-
- if (*p) {
- cond = strcmp(word, (*p)->word);
- if (cond < 0)
- return lookup(word, &(*p)->left);
- else if (cond > 0)
- return lookup(word, &(*p)->right);
- else
- return *p;
- }
- if (next >= 2000)
- err("out of node storage");
- words[next].count = 0;
- words[next].left = words[next].right = 0;
- words[next].word = malloc(strlen(word) + 1);
- if (words[next].word == 0)
- err("out of word storage");
- strcpy(words[next].word, word);
- return *p = &words[next++];
-}
-
-/* tprint - print tree */
-tprint(tree) struct node *tree; {
- if (tree) {
- tprint(tree->left);
- printf("%d\t%s\n", tree->count, tree->word);
- tprint(tree->right);
- }
-}
-
-/* strcmp - compare s1 and s2, return <0, 0, or >0 */
-int strcmp(s1, s2) char *s1, *s2; {
- while (*s1 == *s2) {
- if (*s1++ == 0)
- return 0;
- ++s2;
- }
- if (*s1 == 0)
- return -1;
- else if (*s2 == 0)
- return 1;
- return *s1 - *s2;
-}
+/* wf1 - print word frequencies; uses structures */
+
+struct node {
+ int count; /* frequency count */
+ struct node *left; /* left subtree */
+ struct node *right; /* right subtree */
+ char *word; /* word itself */
+} words[2000];
+int next; /* index of next free entry in words */
+
+struct node *lookup();
+
+main() {
+ struct node *root;
+ char word[20];
+
+ root = 0;
+ next = 0;
+ while (getword(word))
+ lookup(word, &root)->count++;
+ tprint(root);
+ return 0;
+}
+
+/* err - print error message s and die */
+err(s) char *s; {
+ printf("? %s\n", s);
+ exit(1);
+}
+
+/* getword - get next input word into buf, return 0 on EOF */
+int getword(buf) char *buf; {
+ char *s;
+ int c;
+
+ while ((c = getchar()) != -1 && isletter(c) == 0)
+ ;
+ for (s = buf; c = isletter(c); c = getchar())
+ *s++ = c;
+ *s = 0;
+ if (s > buf)
+ return (1);
+ return (0);
+}
+
+/* isletter - return folded version of c if it is a letter, 0 otherwise */
+int isletter(c) {
+ if (c >= 'A' && c <= 'Z')
+ c += 'a' - 'A';
+ if (c >= 'a' && c <= 'z')
+ return (c);
+ return (0);
+}
+
+/* lookup - lookup word in tree; install if necessary */
+struct node *lookup(word, p) char *word; struct node **p; {
+ int cond;
+ char *malloc();
+
+ if (*p) {
+ cond = strcmp(word, (*p)->word);
+ if (cond < 0)
+ return lookup(word, &(*p)->left);
+ else if (cond > 0)
+ return lookup(word, &(*p)->right);
+ else
+ return *p;
+ }
+ if (next >= 2000)
+ err("out of node storage");
+ words[next].count = 0;
+ words[next].left = words[next].right = 0;
+ words[next].word = malloc(strlen(word) + 1);
+ if (words[next].word == 0)
+ err("out of word storage");
+ strcpy(words[next].word, word);
+ return *p = &words[next++];
+}
+
+/* tprint - print tree */
+tprint(tree) struct node *tree; {
+ if (tree) {
+ tprint(tree->left);
+ printf("%d\t%s\n", tree->count, tree->word);
+ tprint(tree->right);
+ }
+}
+
+/* strcmp - compare s1 and s2, return <0, 0, or >0 */
+int strcmp(s1, s2) char *s1, *s2; {
+ while (*s1 == *s2) {
+ if (*s1++ == 0)
+ return 0;
+ ++s2;
+ }
+ if (*s1 == 0)
+ return -1;
+ else if (*s2 == 0)
+ return 1;
+ return *s1 - *s2;
+}
diff --git a/lcc/tst/yacc.0 b/lcc/tst/yacc.0
index 8bea9c4..46de7cb 100755
--- a/lcc/tst/yacc.0
+++ b/lcc/tst/yacc.0
@@ -1 +1 @@
-a=-b+5*c
+a=-b+5*c
diff --git a/lcc/tst/yacc.c b/lcc/tst/yacc.c
index cd3e9d0..3e297d2 100755
--- a/lcc/tst/yacc.c
+++ b/lcc/tst/yacc.c
@@ -1,591 +1,591 @@
-# define ID 257
-# define CON 258
-# define UNARYMINUS 259
-#define yyclearin yychar = -1
-#define yyerrok yyerrflag = 0
-extern int yychar;
-extern short yyerrflag;
-#ifndef YYMAXDEPTH
-#define YYMAXDEPTH 150
-#endif
-#ifndef YYSTYPE
-#define YYSTYPE int
-#endif
-YYSTYPE yylval, yyval;
-# define YYERRCODE 256
-
-
-
-#include <stdio.h>
-
-# define U(x) x
-# define NLSTATE yyprevious=YYNEWLINE
-# define BEGIN yybgin = yysvec + 1 +
-# define INITIAL 0
-# define YYLERR yysvec
-# define YYSTATE (yyestate-yysvec-1)
-# define YYOPTIM 1
-# define YYLMAX 200
-# define output(c) (void)putc(c,yyout)
-# define input() (((yytchar=yysptr>yysbuf?U(*--yysptr):getc(yyin))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar)
-# define unput(c) {yytchar= (c);if(yytchar=='\n')yylineno--;*yysptr++=yytchar;}
-# define yymore() (yymorfg=1)
-# define ECHO fprintf(yyout, "%s",yytext)
-# define REJECT { nstr = yyreject(); goto yyfussy;}
-int yyleng; extern char yytext[];
-int yymorfg;
-extern char *yysptr, yysbuf[];
-int yytchar;
-FILE *yyin ={stdin}, *yyout ={stdout};
-extern int yylineno;
-struct yysvf {
- struct yywork *yystoff;
- struct yysvf *yyother;
- int *yystops;};
-struct yysvf *yyestate;
-extern struct yysvf yysvec[], *yybgin;
-# define YYNEWLINE 10
-yylex(){
-int nstr; extern int yyprevious;
-while((nstr = yylook()) >= 0)
-yyfussy: switch(nstr){
-case 0:
-if(yywrap()) return(0); break;
-case 1:
- return ID;
-break;
-case 2:
- return CON;
-break;
-case 3:
- ;
-break;
-case 4:
- return yytext[0];
-break;
-case -1:
-break;
-default:
-fprintf(yyout,"bad switch yylook %d",nstr);
-} return(0); }
-/* end of yylex */
-int yyvstop[] ={
-0,
-
-4,
-0,
-
-3,
-4,
-0,
-
-2,
-4,
-0,
-
-1,
-4,
-0,
-
-2,
-0,
-
-1,
-0,
-0};
-# define YYTYPE char
-struct yywork { YYTYPE verify, advance; } yycrank[] ={
-0,0, 0,0, 1,3, 0,0,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 1,4, 1,3,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 0,0, 0,0,
-0,0, 1,5, 5,7, 5,7,
-5,7, 5,7, 5,7, 5,7,
-5,7, 5,7, 5,7, 5,7,
-0,0, 0,0, 0,0, 0,0,
-0,0, 0,0, 1,6, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 0,0, 0,0, 0,0,
-0,0, 0,0, 0,0, 0,0,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 0,0, 0,0,
-0,0, 0,0, 6,8, 0,0,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 6,8, 6,8,
-6,8, 6,8, 0,0, 0,0,
-0,0};
-struct yysvf yysvec[] ={
-0, 0, 0,
-yycrank+-1, 0, 0,
-yycrank+0, yysvec+1, 0,
-yycrank+0, 0, yyvstop+1,
-yycrank+0, 0, yyvstop+3,
-yycrank+2, 0, yyvstop+6,
-yycrank+19, 0, yyvstop+9,
-yycrank+0, yysvec+5, yyvstop+12,
-yycrank+0, yysvec+6, yyvstop+14,
-0, 0, 0};
-struct yywork *yytop = yycrank+141;
-struct yysvf *yybgin = yysvec+1;
-char yymatch[] ={
-00 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
-01 ,011 ,012 ,01 ,01 ,01 ,01 ,01 ,
-01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
-01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
-011 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
-01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
-'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,
-'0' ,'0' ,01 ,01 ,01 ,01 ,01 ,01 ,
-01 ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
-'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
-'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
-'A' ,'A' ,'A' ,01 ,01 ,01 ,01 ,'A' ,
-01 ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
-'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
-'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
-'A' ,'A' ,'A' ,01 ,01 ,01 ,01 ,01 ,
-0};
-char yyextra[] ={
-0,0,0,0,0,0,0,0,
-0};
-/* ncform 4.1 83/08/11 */
-
-int yylineno =1;
-# define YYU(x) x
-# define NLSTATE yyprevious=YYNEWLINE
-char yytext[YYLMAX];
-struct yysvf *yylstate [YYLMAX], **yylsp, **yyolsp;
-char yysbuf[YYLMAX];
-char *yysptr = yysbuf;
-int *yyfnd;
-extern struct yysvf *yyestate;
-int yyprevious = YYNEWLINE;
-yylook(){
- register struct yysvf *yystate, **lsp;
- register struct yywork *yyt;
- struct yysvf *yyz;
- int yych;
- struct yywork *yyr;
-# ifdef LEXDEBUG
- int debug;
-# endif
- char *yylastch;
- /* start off machines */
-# ifdef LEXDEBUG
- debug = 0;
-# endif
- if (!yymorfg)
- yylastch = yytext;
- else {
- yymorfg=0;
- yylastch = yytext+yyleng;
- }
- for(;;){
- lsp = yylstate;
- yyestate = yystate = yybgin;
- if (yyprevious==YYNEWLINE) yystate++;
- for (;;){
-# ifdef LEXDEBUG
- if(debug)fprintf(yyout,"state %d\n",yystate-yysvec-1);
-# endif
- yyt = yystate->yystoff;
- if(yyt == yycrank){ /* may not be any transitions */
- yyz = yystate->yyother;
- if(yyz == 0)break;
- if(yyz->yystoff == yycrank)break;
- }
- *yylastch++ = yych = input();
- tryagain:
-# ifdef LEXDEBUG
- if(debug){
- fprintf(yyout,"char ");
- allprint(yych);
- putchar('\n');
- }
-# endif
- yyr = yyt;
- if ( yyt > yycrank){
- yyt = yyr + yych;
- if (yyt <= yytop && yyt->verify+yysvec == yystate){
- if(yyt->advance+yysvec == YYLERR) /* error transitions */
- {unput(*--yylastch);break;}
- *lsp++ = yystate = yyt->advance+yysvec;
- goto contin;
- }
- }
-# ifdef YYOPTIM
- else if(yyt < yycrank) { /* r < yycrank */
- yyt = yyr = yycrank+(yycrank-yyt);
-# ifdef LEXDEBUG
- if(debug)fprintf(yyout,"compressed state\n");
-# endif
- yyt = yyt + yych;
- if(yyt <= yytop && yyt->verify+yysvec == yystate){
- if(yyt->advance+yysvec == YYLERR) /* error transitions */
- {unput(*--yylastch);break;}
- *lsp++ = yystate = yyt->advance+yysvec;
- goto contin;
- }
- yyt = yyr + YYU(yymatch[yych]);
-# ifdef LEXDEBUG
- if(debug){
- fprintf(yyout,"try fall back character ");
- allprint(YYU(yymatch[yych]));
- putchar('\n');
- }
-# endif
- if(yyt <= yytop && yyt->verify+yysvec == yystate){
- if(yyt->advance+yysvec == YYLERR) /* error transition */
- {unput(*--yylastch);break;}
- *lsp++ = yystate = yyt->advance+yysvec;
- goto contin;
- }
- }
- if ((yystate = yystate->yyother) && (yyt= yystate->yystoff) != yycrank){
-# ifdef LEXDEBUG
- if(debug)fprintf(yyout,"fall back to state %d\n",yystate-yysvec-1);
-# endif
- goto tryagain;
- }
-# endif
- else
- {unput(*--yylastch);break;}
- contin:
-# ifdef LEXDEBUG
- if(debug){
- fprintf(yyout,"state %d char ",yystate-yysvec-1);
- allprint(yych);
- putchar('\n');
- }
-# endif
- ;
- }
-# ifdef LEXDEBUG
- if(debug){
- fprintf(yyout,"stopped at %d with ",*(lsp-1)-yysvec-1);
- allprint(yych);
- putchar('\n');
- }
-# endif
- while (lsp-- > yylstate){
- *yylastch-- = 0;
- if (*lsp != 0 && (yyfnd= (*lsp)->yystops) && *yyfnd > 0){
- yyolsp = lsp;
- if(yyextra[*yyfnd]){ /* must backup */
- while(yyback((*lsp)->yystops,-*yyfnd) != 1 && lsp > yylstate){
- lsp--;
- unput(*yylastch--);
- }
- }
- yyprevious = YYU(*yylastch);
- yylsp = lsp;
- yyleng = yylastch-yytext+1;
- yytext[yyleng] = 0;
-# ifdef LEXDEBUG
- if(debug){
- fprintf(yyout,"\nmatch ");
- sprint(yytext);
- fprintf(yyout," action %d\n",*yyfnd);
- }
-# endif
- return(*yyfnd++);
- }
- unput(*yylastch);
- }
- if (yytext[0] == 0 /* && feof(yyin) */)
- {
- yysptr=yysbuf;
- return(0);
- }
- yyprevious = yytext[0] = input();
- if (yyprevious>0)
- output(yyprevious);
- yylastch=yytext;
-# ifdef LEXDEBUG
- if(debug)putchar('\n');
-# endif
- }
- }
-yyback(p, m)
- int *p;
-{
-if (p==0) return(0);
-while (*p)
- {
- if (*p++ == m)
- return(1);
- }
-return(0);
-}
- /* the following are only used in the lex library */
-yyinput(){
- return(input());
- }
-yyoutput(c)
- int c; {
- output(c);
- }
-yyunput(c)
- int c; {
- unput(c);
- }
-
-main() {
- yyparse();
- return 0;
-}
-
-/* yyerror - issue error message */
-yyerror(s) char *s; {
- printf("%s\n", s);
-}
-short yyexca[] ={
--1, 1,
- 0, -1,
- -2, 0,
- };
-# define YYNPROD 15
-# define YYLAST 249
-short yyact[]={
-
- 12, 2, 9, 8, 17, 11, 25, 17, 15, 18,
- 16, 10, 18, 17, 15, 7, 16, 13, 18, 5,
- 3, 1, 0, 19, 20, 0, 0, 21, 22, 23,
- 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 6, 14, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 4, 6 };
-short yypact[]={
-
--1000, -9,-1000, 5, -7, -59,-1000,-1000,-1000, -40,
- -29, -40, -40,-1000,-1000, -40, -40, -40, -40, -38,
- -35, -38, -38,-1000,-1000,-1000 };
-short yypgo[]={
-
- 0, 21, 20, 17, 11 };
-short yyr1[]={
-
- 0, 1, 1, 1, 1, 2, 4, 4, 4, 4,
- 4, 4, 4, 4, 3 };
-short yyr2[]={
-
- 0, 0, 2, 3, 3, 3, 3, 3, 3, 3,
- 2, 3, 1, 1, 1 };
-short yychk[]={
-
--1000, -1, 10, -2, 256, -3, 257, 10, 10, 61,
- -4, 45, 40, -3, 258, 43, 45, 42, 47, -4,
- -4, -4, -4, -4, -4, 41 };
-short yydef[]={
-
- 1, -2, 2, 0, 0, 0, 14, 3, 4, 0,
- 5, 0, 0, 12, 13, 0, 0, 0, 0, 10,
- 0, 6, 7, 8, 9, 11 };
-#ifndef lint
-#endif
-
-# define YYFLAG -1000
-# define YYERROR goto yyerrlab
-# define YYACCEPT return(0)
-# define YYABORT return(1)
-
-/* parser for yacc output */
-
-#ifdef YYDEBUG
-int yydebug = 0; /* 1 for debugging */
-#endif
-YYSTYPE yyv[YYMAXDEPTH]; /* where the values are stored */
-int yychar = -1; /* current input token number */
-int yynerrs = 0; /* number of errors */
-short yyerrflag = 0; /* error recovery flag */
-
-yyparse() {
-
- short yys[YYMAXDEPTH];
- short yyj, yym;
- register YYSTYPE *yypvt;
- register short yystate, *yyps, yyn;
- register YYSTYPE *yypv;
- register short *yyxi;
-
- yystate = 0;
- yychar = -1;
- yynerrs = 0;
- yyerrflag = 0;
- yyps= &yys[-1];
- yypv= &yyv[-1];
-
- yystack: /* put a state and value onto the stack */
-
-#ifdef YYDEBUG
- if( yydebug ) printf( "state %d, char 0%o\n", yystate, yychar );
-#endif
- if( ++yyps> &yys[YYMAXDEPTH] ) { yyerror( "yacc stack overflow" ); return(1); }
- *yyps = yystate;
- ++yypv;
- *yypv = yyval;
-
- yynewstate:
-
- yyn = yypact[yystate];
-
- if( yyn<= YYFLAG ) goto yydefault; /* simple state */
-
- if( yychar<0 ) if( (yychar=yylex())<0 ) yychar=0;
- if( (yyn += yychar)<0 || yyn >= YYLAST ) goto yydefault;
-
- if( yychk[ yyn=yyact[ yyn ] ] == yychar ){ /* valid shift */
- yychar = -1;
- yyval = yylval;
- yystate = yyn;
- if( yyerrflag > 0 ) --yyerrflag;
- goto yystack;
- }
-
- yydefault:
- /* default state action */
-
- if( (yyn=yydef[yystate]) == -2 ) {
- if( yychar<0 ) if( (yychar=yylex())<0 ) yychar = 0;
- /* look through exception table */
-
- for( yyxi=yyexca; (*yyxi!= (-1)) || (yyxi[1]!=yystate) ; yyxi += 2 ) ; /* VOID */
-
- while( *(yyxi+=2) >= 0 ){
- if( *yyxi == yychar ) break;
- }
- if( (yyn = yyxi[1]) < 0 ) return(0); /* accept */
- }
-
- if( yyn == 0 ){ /* error */
- /* error ... attempt to resume parsing */
-
- switch( yyerrflag ){
-
- case 0: /* brand new error */
-
- yyerror( "syntax error" );
- yyerrlab:
- ++yynerrs;
-
- case 1:
- case 2: /* incompletely recovered error ... try again */
-
- yyerrflag = 3;
-
- /* find a state where "error" is a legal shift action */
-
- while ( yyps >= yys ) {
- yyn = yypact[*yyps] + YYERRCODE;
- if( yyn>= 0 && yyn < YYLAST && yychk[yyact[yyn]] == YYERRCODE ){
- yystate = yyact[yyn]; /* simulate a shift of "error" */
- goto yystack;
- }
- yyn = yypact[*yyps];
-
- /* the current yyps has no shift onn "error", pop stack */
-
-#ifdef YYDEBUG
- if( yydebug ) printf( "error recovery pops state %d, uncovers %d\n", *yyps, yyps[-1] );
-#endif
- --yyps;
- --yypv;
- }
-
- /* there is no state on the stack with an error shift ... abort */
-
- yyabort:
- return(1);
-
-
- case 3: /* no shift yet; clobber input char */
-
-#ifdef YYDEBUG
- if( yydebug ) printf( "error recovery discards char %d\n", yychar );
-#endif
-
- if( yychar == 0 ) goto yyabort; /* don't discard EOF, quit */
- yychar = -1;
- goto yynewstate; /* try again in the same state */
-
- }
-
- }
-
- /* reduction by production yyn */
-
-#ifdef YYDEBUG
- if( yydebug ) printf("reduce %d\n",yyn);
-#endif
- yyps -= yyr2[yyn];
- yypvt = yypv;
- yypv -= yyr2[yyn];
- yyval = yypv[1];
- yym=yyn;
- /* consult goto table to find next state */
- yyn = yyr1[yyn];
- yyj = yypgo[yyn] + *yyps + 1;
- if( yyj>=YYLAST || yychk[ yystate = yyact[yyj] ] != -yyn ) yystate = yyact[yypgo[yyn]];
- switch(yym){
-
-case 4:
-{ yyerrok; } break;
-case 5:
-{ printf("store\n"); } break;
-case 6:
-{ printf("add\n"); } break;
-case 7:
-{ printf("negate\nadd\n"); } break;
-case 8:
-{ printf("multiply\n"); } break;
-case 9:
-{ printf("divide\n"); } break;
-case 10:
-{ printf("negate\n"); } break;
-case 12:
-{ printf("load\n"); } break;
-case 13:
-{ printf("push %s\n", yytext); } break;
-case 14:
-{ printf("%s\n", yytext); } break;
- }
- goto yystack; /* stack new state and value */
-
- }
-int yywrap() { return 1; }
+# define ID 257
+# define CON 258
+# define UNARYMINUS 259
+#define yyclearin yychar = -1
+#define yyerrok yyerrflag = 0
+extern int yychar;
+extern short yyerrflag;
+#ifndef YYMAXDEPTH
+#define YYMAXDEPTH 150
+#endif
+#ifndef YYSTYPE
+#define YYSTYPE int
+#endif
+YYSTYPE yylval, yyval;
+# define YYERRCODE 256
+
+
+
+#include <stdio.h>
+
+# define U(x) x
+# define NLSTATE yyprevious=YYNEWLINE
+# define BEGIN yybgin = yysvec + 1 +
+# define INITIAL 0
+# define YYLERR yysvec
+# define YYSTATE (yyestate-yysvec-1)
+# define YYOPTIM 1
+# define YYLMAX 200
+# define output(c) (void)putc(c,yyout)
+# define input() (((yytchar=yysptr>yysbuf?U(*--yysptr):getc(yyin))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar)
+# define unput(c) {yytchar= (c);if(yytchar=='\n')yylineno--;*yysptr++=yytchar;}
+# define yymore() (yymorfg=1)
+# define ECHO fprintf(yyout, "%s",yytext)
+# define REJECT { nstr = yyreject(); goto yyfussy;}
+int yyleng; extern char yytext[];
+int yymorfg;
+extern char *yysptr, yysbuf[];
+int yytchar;
+FILE *yyin ={stdin}, *yyout ={stdout};
+extern int yylineno;
+struct yysvf {
+ struct yywork *yystoff;
+ struct yysvf *yyother;
+ int *yystops;};
+struct yysvf *yyestate;
+extern struct yysvf yysvec[], *yybgin;
+# define YYNEWLINE 10
+yylex(){
+int nstr; extern int yyprevious;
+while((nstr = yylook()) >= 0)
+yyfussy: switch(nstr){
+case 0:
+if(yywrap()) return(0); break;
+case 1:
+ return ID;
+break;
+case 2:
+ return CON;
+break;
+case 3:
+ ;
+break;
+case 4:
+ return yytext[0];
+break;
+case -1:
+break;
+default:
+fprintf(yyout,"bad switch yylook %d",nstr);
+} return(0); }
+/* end of yylex */
+int yyvstop[] ={
+0,
+
+4,
+0,
+
+3,
+4,
+0,
+
+2,
+4,
+0,
+
+1,
+4,
+0,
+
+2,
+0,
+
+1,
+0,
+0};
+# define YYTYPE char
+struct yywork { YYTYPE verify, advance; } yycrank[] ={
+0,0, 0,0, 1,3, 0,0,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 1,4, 1,3,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 0,0, 0,0,
+0,0, 1,5, 5,7, 5,7,
+5,7, 5,7, 5,7, 5,7,
+5,7, 5,7, 5,7, 5,7,
+0,0, 0,0, 0,0, 0,0,
+0,0, 0,0, 1,6, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 0,0, 0,0, 0,0,
+0,0, 0,0, 0,0, 0,0,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 0,0, 0,0,
+0,0, 0,0, 6,8, 0,0,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 6,8, 6,8,
+6,8, 6,8, 0,0, 0,0,
+0,0};
+struct yysvf yysvec[] ={
+0, 0, 0,
+yycrank+-1, 0, 0,
+yycrank+0, yysvec+1, 0,
+yycrank+0, 0, yyvstop+1,
+yycrank+0, 0, yyvstop+3,
+yycrank+2, 0, yyvstop+6,
+yycrank+19, 0, yyvstop+9,
+yycrank+0, yysvec+5, yyvstop+12,
+yycrank+0, yysvec+6, yyvstop+14,
+0, 0, 0};
+struct yywork *yytop = yycrank+141;
+struct yysvf *yybgin = yysvec+1;
+char yymatch[] ={
+00 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
+01 ,011 ,012 ,01 ,01 ,01 ,01 ,01 ,
+01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
+01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
+011 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
+01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
+'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,
+'0' ,'0' ,01 ,01 ,01 ,01 ,01 ,01 ,
+01 ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
+'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
+'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
+'A' ,'A' ,'A' ,01 ,01 ,01 ,01 ,'A' ,
+01 ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
+'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
+'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
+'A' ,'A' ,'A' ,01 ,01 ,01 ,01 ,01 ,
+0};
+char yyextra[] ={
+0,0,0,0,0,0,0,0,
+0};
+/* ncform 4.1 83/08/11 */
+
+int yylineno =1;
+# define YYU(x) x
+# define NLSTATE yyprevious=YYNEWLINE
+char yytext[YYLMAX];
+struct yysvf *yylstate [YYLMAX], **yylsp, **yyolsp;
+char yysbuf[YYLMAX];
+char *yysptr = yysbuf;
+int *yyfnd;
+extern struct yysvf *yyestate;
+int yyprevious = YYNEWLINE;
+yylook(){
+ register struct yysvf *yystate, **lsp;
+ register struct yywork *yyt;
+ struct yysvf *yyz;
+ int yych;
+ struct yywork *yyr;
+# ifdef LEXDEBUG
+ int debug;
+# endif
+ char *yylastch;
+ /* start off machines */
+# ifdef LEXDEBUG
+ debug = 0;
+# endif
+ if (!yymorfg)
+ yylastch = yytext;
+ else {
+ yymorfg=0;
+ yylastch = yytext+yyleng;
+ }
+ for(;;){
+ lsp = yylstate;
+ yyestate = yystate = yybgin;
+ if (yyprevious==YYNEWLINE) yystate++;
+ for (;;){
+# ifdef LEXDEBUG
+ if(debug)fprintf(yyout,"state %d\n",yystate-yysvec-1);
+# endif
+ yyt = yystate->yystoff;
+ if(yyt == yycrank){ /* may not be any transitions */
+ yyz = yystate->yyother;
+ if(yyz == 0)break;
+ if(yyz->yystoff == yycrank)break;
+ }
+ *yylastch++ = yych = input();
+ tryagain:
+# ifdef LEXDEBUG
+ if(debug){
+ fprintf(yyout,"char ");
+ allprint(yych);
+ putchar('\n');
+ }
+# endif
+ yyr = yyt;
+ if ( yyt > yycrank){
+ yyt = yyr + yych;
+ if (yyt <= yytop && yyt->verify+yysvec == yystate){
+ if(yyt->advance+yysvec == YYLERR) /* error transitions */
+ {unput(*--yylastch);break;}
+ *lsp++ = yystate = yyt->advance+yysvec;
+ goto contin;
+ }
+ }
+# ifdef YYOPTIM
+ else if(yyt < yycrank) { /* r < yycrank */
+ yyt = yyr = yycrank+(yycrank-yyt);
+# ifdef LEXDEBUG
+ if(debug)fprintf(yyout,"compressed state\n");
+# endif
+ yyt = yyt + yych;
+ if(yyt <= yytop && yyt->verify+yysvec == yystate){
+ if(yyt->advance+yysvec == YYLERR) /* error transitions */
+ {unput(*--yylastch);break;}
+ *lsp++ = yystate = yyt->advance+yysvec;
+ goto contin;
+ }
+ yyt = yyr + YYU(yymatch[yych]);
+# ifdef LEXDEBUG
+ if(debug){
+ fprintf(yyout,"try fall back character ");
+ allprint(YYU(yymatch[yych]));
+ putchar('\n');
+ }
+# endif
+ if(yyt <= yytop && yyt->verify+yysvec == yystate){
+ if(yyt->advance+yysvec == YYLERR) /* error transition */
+ {unput(*--yylastch);break;}
+ *lsp++ = yystate = yyt->advance+yysvec;
+ goto contin;
+ }
+ }
+ if ((yystate = yystate->yyother) && (yyt= yystate->yystoff) != yycrank){
+# ifdef LEXDEBUG
+ if(debug)fprintf(yyout,"fall back to state %d\n",yystate-yysvec-1);
+# endif
+ goto tryagain;
+ }
+# endif
+ else
+ {unput(*--yylastch);break;}
+ contin:
+# ifdef LEXDEBUG
+ if(debug){
+ fprintf(yyout,"state %d char ",yystate-yysvec-1);
+ allprint(yych);
+ putchar('\n');
+ }
+# endif
+ ;
+ }
+# ifdef LEXDEBUG
+ if(debug){
+ fprintf(yyout,"stopped at %d with ",*(lsp-1)-yysvec-1);
+ allprint(yych);
+ putchar('\n');
+ }
+# endif
+ while (lsp-- > yylstate){
+ *yylastch-- = 0;
+ if (*lsp != 0 && (yyfnd= (*lsp)->yystops) && *yyfnd > 0){
+ yyolsp = lsp;
+ if(yyextra[*yyfnd]){ /* must backup */
+ while(yyback((*lsp)->yystops,-*yyfnd) != 1 && lsp > yylstate){
+ lsp--;
+ unput(*yylastch--);
+ }
+ }
+ yyprevious = YYU(*yylastch);
+ yylsp = lsp;
+ yyleng = yylastch-yytext+1;
+ yytext[yyleng] = 0;
+# ifdef LEXDEBUG
+ if(debug){
+ fprintf(yyout,"\nmatch ");
+ sprint(yytext);
+ fprintf(yyout," action %d\n",*yyfnd);
+ }
+# endif
+ return(*yyfnd++);
+ }
+ unput(*yylastch);
+ }
+ if (yytext[0] == 0 /* && feof(yyin) */)
+ {
+ yysptr=yysbuf;
+ return(0);
+ }
+ yyprevious = yytext[0] = input();
+ if (yyprevious>0)
+ output(yyprevious);
+ yylastch=yytext;
+# ifdef LEXDEBUG
+ if(debug)putchar('\n');
+# endif
+ }
+ }
+yyback(p, m)
+ int *p;
+{
+if (p==0) return(0);
+while (*p)
+ {
+ if (*p++ == m)
+ return(1);
+ }
+return(0);
+}
+ /* the following are only used in the lex library */
+yyinput(){
+ return(input());
+ }
+yyoutput(c)
+ int c; {
+ output(c);
+ }
+yyunput(c)
+ int c; {
+ unput(c);
+ }
+
+main() {
+ yyparse();
+ return 0;
+}
+
+/* yyerror - issue error message */
+yyerror(s) char *s; {
+ printf("%s\n", s);
+}
+short yyexca[] ={
+-1, 1,
+ 0, -1,
+ -2, 0,
+ };
+# define YYNPROD 15
+# define YYLAST 249
+short yyact[]={
+
+ 12, 2, 9, 8, 17, 11, 25, 17, 15, 18,
+ 16, 10, 18, 17, 15, 7, 16, 13, 18, 5,
+ 3, 1, 0, 19, 20, 0, 0, 21, 22, 23,
+ 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 6, 14, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 4, 6 };
+short yypact[]={
+
+-1000, -9,-1000, 5, -7, -59,-1000,-1000,-1000, -40,
+ -29, -40, -40,-1000,-1000, -40, -40, -40, -40, -38,
+ -35, -38, -38,-1000,-1000,-1000 };
+short yypgo[]={
+
+ 0, 21, 20, 17, 11 };
+short yyr1[]={
+
+ 0, 1, 1, 1, 1, 2, 4, 4, 4, 4,
+ 4, 4, 4, 4, 3 };
+short yyr2[]={
+
+ 0, 0, 2, 3, 3, 3, 3, 3, 3, 3,
+ 2, 3, 1, 1, 1 };
+short yychk[]={
+
+-1000, -1, 10, -2, 256, -3, 257, 10, 10, 61,
+ -4, 45, 40, -3, 258, 43, 45, 42, 47, -4,
+ -4, -4, -4, -4, -4, 41 };
+short yydef[]={
+
+ 1, -2, 2, 0, 0, 0, 14, 3, 4, 0,
+ 5, 0, 0, 12, 13, 0, 0, 0, 0, 10,
+ 0, 6, 7, 8, 9, 11 };
+#ifndef lint
+#endif
+
+# define YYFLAG -1000
+# define YYERROR goto yyerrlab
+# define YYACCEPT return(0)
+# define YYABORT return(1)
+
+/* parser for yacc output */
+
+#ifdef YYDEBUG
+int yydebug = 0; /* 1 for debugging */
+#endif
+YYSTYPE yyv[YYMAXDEPTH]; /* where the values are stored */
+int yychar = -1; /* current input token number */
+int yynerrs = 0; /* number of errors */
+short yyerrflag = 0; /* error recovery flag */
+
+yyparse() {
+
+ short yys[YYMAXDEPTH];
+ short yyj, yym;
+ register YYSTYPE *yypvt;
+ register short yystate, *yyps, yyn;
+ register YYSTYPE *yypv;
+ register short *yyxi;
+
+ yystate = 0;
+ yychar = -1;
+ yynerrs = 0;
+ yyerrflag = 0;
+ yyps= &yys[-1];
+ yypv= &yyv[-1];
+
+ yystack: /* put a state and value onto the stack */
+
+#ifdef YYDEBUG
+ if( yydebug ) printf( "state %d, char 0%o\n", yystate, yychar );
+#endif
+ if( ++yyps> &yys[YYMAXDEPTH] ) { yyerror( "yacc stack overflow" ); return(1); }
+ *yyps = yystate;
+ ++yypv;
+ *yypv = yyval;
+
+ yynewstate:
+
+ yyn = yypact[yystate];
+
+ if( yyn<= YYFLAG ) goto yydefault; /* simple state */
+
+ if( yychar<0 ) if( (yychar=yylex())<0 ) yychar=0;
+ if( (yyn += yychar)<0 || yyn >= YYLAST ) goto yydefault;
+
+ if( yychk[ yyn=yyact[ yyn ] ] == yychar ){ /* valid shift */
+ yychar = -1;
+ yyval = yylval;
+ yystate = yyn;
+ if( yyerrflag > 0 ) --yyerrflag;
+ goto yystack;
+ }
+
+ yydefault:
+ /* default state action */
+
+ if( (yyn=yydef[yystate]) == -2 ) {
+ if( yychar<0 ) if( (yychar=yylex())<0 ) yychar = 0;
+ /* look through exception table */
+
+ for( yyxi=yyexca; (*yyxi!= (-1)) || (yyxi[1]!=yystate) ; yyxi += 2 ) ; /* VOID */
+
+ while( *(yyxi+=2) >= 0 ){
+ if( *yyxi == yychar ) break;
+ }
+ if( (yyn = yyxi[1]) < 0 ) return(0); /* accept */
+ }
+
+ if( yyn == 0 ){ /* error */
+ /* error ... attempt to resume parsing */
+
+ switch( yyerrflag ){
+
+ case 0: /* brand new error */
+
+ yyerror( "syntax error" );
+ yyerrlab:
+ ++yynerrs;
+
+ case 1:
+ case 2: /* incompletely recovered error ... try again */
+
+ yyerrflag = 3;
+
+ /* find a state where "error" is a legal shift action */
+
+ while ( yyps >= yys ) {
+ yyn = yypact[*yyps] + YYERRCODE;
+ if( yyn>= 0 && yyn < YYLAST && yychk[yyact[yyn]] == YYERRCODE ){
+ yystate = yyact[yyn]; /* simulate a shift of "error" */
+ goto yystack;
+ }
+ yyn = yypact[*yyps];
+
+ /* the current yyps has no shift onn "error", pop stack */
+
+#ifdef YYDEBUG
+ if( yydebug ) printf( "error recovery pops state %d, uncovers %d\n", *yyps, yyps[-1] );
+#endif
+ --yyps;
+ --yypv;
+ }
+
+ /* there is no state on the stack with an error shift ... abort */
+
+ yyabort:
+ return(1);
+
+
+ case 3: /* no shift yet; clobber input char */
+
+#ifdef YYDEBUG
+ if( yydebug ) printf( "error recovery discards char %d\n", yychar );
+#endif
+
+ if( yychar == 0 ) goto yyabort; /* don't discard EOF, quit */
+ yychar = -1;
+ goto yynewstate; /* try again in the same state */
+
+ }
+
+ }
+
+ /* reduction by production yyn */
+
+#ifdef YYDEBUG
+ if( yydebug ) printf("reduce %d\n",yyn);
+#endif
+ yyps -= yyr2[yyn];
+ yypvt = yypv;
+ yypv -= yyr2[yyn];
+ yyval = yypv[1];
+ yym=yyn;
+ /* consult goto table to find next state */
+ yyn = yyr1[yyn];
+ yyj = yypgo[yyn] + *yyps + 1;
+ if( yyj>=YYLAST || yychk[ yystate = yyact[yyj] ] != -yyn ) yystate = yyact[yypgo[yyn]];
+ switch(yym){
+
+case 4:
+{ yyerrok; } break;
+case 5:
+{ printf("store\n"); } break;
+case 6:
+{ printf("add\n"); } break;
+case 7:
+{ printf("negate\nadd\n"); } break;
+case 8:
+{ printf("multiply\n"); } break;
+case 9:
+{ printf("divide\n"); } break;
+case 10:
+{ printf("negate\n"); } break;
+case 12:
+{ printf("load\n"); } break;
+case 13:
+{ printf("push %s\n", yytext); } break;
+case 14:
+{ printf("%s\n", yytext); } break;
+ }
+ goto yystack; /* stack new state and value */
+
+ }
+int yywrap() { return 1; }
diff --git a/lcc/x86/linux/tst/8q.1bk b/lcc/x86/linux/tst/8q.1bk
index c66df8e..7ed6437 100755
--- a/lcc/x86/linux/tst/8q.1bk
+++ b/lcc/x86/linux/tst/8q.1bk
@@ -1,92 +1,92 @@
-1 5 8 6 3 7 2 4
-1 6 8 3 7 4 2 5
-1 7 4 6 8 2 5 3
-1 7 5 8 2 4 6 3
-2 4 6 8 3 1 7 5
-2 5 7 1 3 8 6 4
-2 5 7 4 1 8 6 3
-2 6 1 7 4 8 3 5
-2 6 8 3 1 4 7 5
-2 7 3 6 8 5 1 4
-2 7 5 8 1 4 6 3
-2 8 6 1 3 5 7 4
-3 1 7 5 8 2 4 6
-3 5 2 8 1 7 4 6
-3 5 2 8 6 4 7 1
-3 5 7 1 4 2 8 6
-3 5 8 4 1 7 2 6
-3 6 2 5 8 1 7 4
-3 6 2 7 1 4 8 5
-3 6 2 7 5 1 8 4
-3 6 4 1 8 5 7 2
-3 6 4 2 8 5 7 1
-3 6 8 1 4 7 5 2
-3 6 8 1 5 7 2 4
-3 6 8 2 4 1 7 5
-3 7 2 8 5 1 4 6
-3 7 2 8 6 4 1 5
-3 8 4 7 1 6 2 5
-4 1 5 8 2 7 3 6
-4 1 5 8 6 3 7 2
-4 2 5 8 6 1 3 7
-4 2 7 3 6 8 1 5
-4 2 7 3 6 8 5 1
-4 2 7 5 1 8 6 3
-4 2 8 5 7 1 3 6
-4 2 8 6 1 3 5 7
-4 6 1 5 2 8 3 7
-4 6 8 2 7 1 3 5
-4 6 8 3 1 7 5 2
-4 7 1 8 5 2 6 3
-4 7 3 8 2 5 1 6
-4 7 5 2 6 1 3 8
-4 7 5 3 1 6 8 2
-4 8 1 3 6 2 7 5
-4 8 1 5 7 2 6 3
-4 8 5 3 1 7 2 6
-5 1 4 6 8 2 7 3
-5 1 8 4 2 7 3 6
-5 1 8 6 3 7 2 4
-5 2 4 6 8 3 1 7
-5 2 4 7 3 8 6 1
-5 2 6 1 7 4 8 3
-5 2 8 1 4 7 3 6
-5 3 1 6 8 2 4 7
-5 3 1 7 2 8 6 4
-5 3 8 4 7 1 6 2
-5 7 1 3 8 6 4 2
-5 7 1 4 2 8 6 3
-5 7 2 4 8 1 3 6
-5 7 2 6 3 1 4 8
-5 7 2 6 3 1 8 4
-5 7 4 1 3 8 6 2
-5 8 4 1 3 6 2 7
-5 8 4 1 7 2 6 3
-6 1 5 2 8 3 7 4
-6 2 7 1 3 5 8 4
-6 2 7 1 4 8 5 3
-6 3 1 7 5 8 2 4
-6 3 1 8 4 2 7 5
-6 3 1 8 5 2 4 7
-6 3 5 7 1 4 2 8
-6 3 5 8 1 4 2 7
-6 3 7 2 4 8 1 5
-6 3 7 2 8 5 1 4
-6 3 7 4 1 8 2 5
-6 4 1 5 8 2 7 3
-6 4 2 8 5 7 1 3
-6 4 7 1 3 5 2 8
-6 4 7 1 8 2 5 3
-6 8 2 4 1 7 5 3
-7 1 3 8 6 4 2 5
-7 2 4 1 8 5 3 6
-7 2 6 3 1 4 8 5
-7 3 1 6 8 5 2 4
-7 3 8 2 5 1 6 4
-7 4 2 5 8 1 3 6
-7 4 2 8 6 1 3 5
-7 5 3 1 6 8 2 4
-8 2 4 1 7 5 3 6
-8 2 5 3 1 7 4 6
-8 3 1 6 2 5 7 4
-8 4 1 3 6 2 7 5
+1 5 8 6 3 7 2 4
+1 6 8 3 7 4 2 5
+1 7 4 6 8 2 5 3
+1 7 5 8 2 4 6 3
+2 4 6 8 3 1 7 5
+2 5 7 1 3 8 6 4
+2 5 7 4 1 8 6 3
+2 6 1 7 4 8 3 5
+2 6 8 3 1 4 7 5
+2 7 3 6 8 5 1 4
+2 7 5 8 1 4 6 3
+2 8 6 1 3 5 7 4
+3 1 7 5 8 2 4 6
+3 5 2 8 1 7 4 6
+3 5 2 8 6 4 7 1
+3 5 7 1 4 2 8 6
+3 5 8 4 1 7 2 6
+3 6 2 5 8 1 7 4
+3 6 2 7 1 4 8 5
+3 6 2 7 5 1 8 4
+3 6 4 1 8 5 7 2
+3 6 4 2 8 5 7 1
+3 6 8 1 4 7 5 2
+3 6 8 1 5 7 2 4
+3 6 8 2 4 1 7 5
+3 7 2 8 5 1 4 6
+3 7 2 8 6 4 1 5
+3 8 4 7 1 6 2 5
+4 1 5 8 2 7 3 6
+4 1 5 8 6 3 7 2
+4 2 5 8 6 1 3 7
+4 2 7 3 6 8 1 5
+4 2 7 3 6 8 5 1
+4 2 7 5 1 8 6 3
+4 2 8 5 7 1 3 6
+4 2 8 6 1 3 5 7
+4 6 1 5 2 8 3 7
+4 6 8 2 7 1 3 5
+4 6 8 3 1 7 5 2
+4 7 1 8 5 2 6 3
+4 7 3 8 2 5 1 6
+4 7 5 2 6 1 3 8
+4 7 5 3 1 6 8 2
+4 8 1 3 6 2 7 5
+4 8 1 5 7 2 6 3
+4 8 5 3 1 7 2 6
+5 1 4 6 8 2 7 3
+5 1 8 4 2 7 3 6
+5 1 8 6 3 7 2 4
+5 2 4 6 8 3 1 7
+5 2 4 7 3 8 6 1
+5 2 6 1 7 4 8 3
+5 2 8 1 4 7 3 6
+5 3 1 6 8 2 4 7
+5 3 1 7 2 8 6 4
+5 3 8 4 7 1 6 2
+5 7 1 3 8 6 4 2
+5 7 1 4 2 8 6 3
+5 7 2 4 8 1 3 6
+5 7 2 6 3 1 4 8
+5 7 2 6 3 1 8 4
+5 7 4 1 3 8 6 2
+5 8 4 1 3 6 2 7
+5 8 4 1 7 2 6 3
+6 1 5 2 8 3 7 4
+6 2 7 1 3 5 8 4
+6 2 7 1 4 8 5 3
+6 3 1 7 5 8 2 4
+6 3 1 8 4 2 7 5
+6 3 1 8 5 2 4 7
+6 3 5 7 1 4 2 8
+6 3 5 8 1 4 2 7
+6 3 7 2 4 8 1 5
+6 3 7 2 8 5 1 4
+6 3 7 4 1 8 2 5
+6 4 1 5 8 2 7 3
+6 4 2 8 5 7 1 3
+6 4 7 1 3 5 2 8
+6 4 7 1 8 2 5 3
+6 8 2 4 1 7 5 3
+7 1 3 8 6 4 2 5
+7 2 4 1 8 5 3 6
+7 2 6 3 1 4 8 5
+7 3 1 6 8 5 2 4
+7 3 8 2 5 1 6 4
+7 4 2 5 8 1 3 6
+7 4 2 8 6 1 3 5
+7 5 3 1 6 8 2 4
+8 2 4 1 7 5 3 6
+8 2 5 3 1 7 4 6
+8 3 1 6 2 5 7 4
+8 4 1 3 6 2 7 5
diff --git a/lcc/x86/linux/tst/8q.2bk b/lcc/x86/linux/tst/8q.2bk
index fb28350..d4dc0ed 100755
--- a/lcc/x86/linux/tst/8q.2bk
+++ b/lcc/x86/linux/tst/8q.2bk
@@ -1,2 +1,2 @@
-tst/8q.c:30: warning: missing return value
-tst/8q.c:39: warning: missing return value
+tst/8q.c:30: warning: missing return value
+tst/8q.c:39: warning: missing return value
diff --git a/lcc/x86/linux/tst/8q.sbk b/lcc/x86/linux/tst/8q.sbk
index 34af0f1..31a8748 100755
--- a/lcc/x86/linux/tst/8q.sbk
+++ b/lcc/x86/linux/tst/8q.sbk
@@ -1,180 +1,180 @@
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $0,-4(%ebp)
-.LC2:
-movl -4(%ebp),%edi
-leal (,%edi,4),%edi
-movl $1,down(%edi)
-movl $1,up(%edi)
-.LC3:
-incl -4(%ebp)
-cmpl $15,-4(%ebp)
-jl .LC2
-movl $0,-4(%ebp)
-.LC6:
-movl -4(%ebp),%edi
-movl $1,rows(,%edi,4)
-.LC7:
-incl -4(%ebp)
-cmpl $8,-4(%ebp)
-jl .LC6
-pushl $0
-call queens
-addl $4,%esp
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf10:
-.size main,.Lf10-main
-.globl queens
-.align 16
-.type queens,@function
-queens:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $0,-4(%ebp)
-.LC12:
-movl -4(%ebp),%edi
-cmpl $0,rows(,%edi,4)
-je .LC16
-movl 20(%ebp),%esi
-movl %edi,%ebx
-subl %esi,%ebx
-cmpl $0,up+28(,%ebx,4)
-je .LC16
-leal (%esi,%edi),%edi
-cmpl $0,down(,%edi,4)
-je .LC16
-movl -4(%ebp),%edi
-movl 20(%ebp),%esi
-leal (%esi,%edi),%ebx
-movl $0,down(,%ebx,4)
-movl %edi,%ebx
-subl %esi,%ebx
-movl $0,up+28(,%ebx,4)
-movl $0,rows(,%edi,4)
-movl 20(%ebp),%edi
-movl -4(%ebp),%esi
-movl %esi,x(,%edi,4)
-cmpl $7,20(%ebp)
-jne .LC20
-call print
-jmp .LC21
-.LC20:
-movl 20(%ebp),%edi
-leal 1(%edi),%edi
-pushl %edi
-call queens
-addl $4,%esp
-.LC21:
-movl -4(%ebp),%edi
-movl 20(%ebp),%esi
-leal (%esi,%edi),%ebx
-movl $1,down(,%ebx,4)
-movl %edi,%ebx
-subl %esi,%ebx
-movl $1,up+28(,%ebx,4)
-movl $1,rows(,%edi,4)
-.LC16:
-.LC13:
-incl -4(%ebp)
-cmpl $8,-4(%ebp)
-jl .LC12
-movl $0,%eax
-.LC11:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf23:
-.size queens,.Lf23-queens
-.globl print
-.align 16
-.type print,@function
-print:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $0,-4(%ebp)
-.LC25:
-movl -4(%ebp),%edi
-movl x(,%edi,4),%edi
-leal 49(%edi),%edi
-pushl %edi
-pushl $.LC29
-call printf
-addl $8,%esp
-.LC26:
-incl -4(%ebp)
-cmpl $8,-4(%ebp)
-jl .LC25
-pushl $.LC30
-call printf
-addl $4,%esp
-movl $0,%eax
-.LC24:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf31:
-.size print,.Lf31-print
-.bss
-.globl x
-.align 4
-.type x,@object
-.size x,32
-.comm x,32
-.globl rows
-.align 4
-.type rows,@object
-.size rows,32
-.comm rows,32
-.globl down
-.align 4
-.type down,@object
-.size down,60
-.comm down,60
-.globl up
-.align 4
-.type up,@object
-.size up,60
-.comm up,60
-.data
-.align 1
-.LC30:
-.byte 10
-.byte 0
-.align 1
-.LC29:
-.byte 37
-.byte 99
-.byte 32
-.byte 0
-.text
-.ident "LCC: 4.1"
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $0,-4(%ebp)
+.LC2:
+movl -4(%ebp),%edi
+leal (,%edi,4),%edi
+movl $1,down(%edi)
+movl $1,up(%edi)
+.LC3:
+incl -4(%ebp)
+cmpl $15,-4(%ebp)
+jl .LC2
+movl $0,-4(%ebp)
+.LC6:
+movl -4(%ebp),%edi
+movl $1,rows(,%edi,4)
+.LC7:
+incl -4(%ebp)
+cmpl $8,-4(%ebp)
+jl .LC6
+pushl $0
+call queens
+addl $4,%esp
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf10:
+.size main,.Lf10-main
+.globl queens
+.align 16
+.type queens,@function
+queens:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $0,-4(%ebp)
+.LC12:
+movl -4(%ebp),%edi
+cmpl $0,rows(,%edi,4)
+je .LC16
+movl 20(%ebp),%esi
+movl %edi,%ebx
+subl %esi,%ebx
+cmpl $0,up+28(,%ebx,4)
+je .LC16
+leal (%esi,%edi),%edi
+cmpl $0,down(,%edi,4)
+je .LC16
+movl -4(%ebp),%edi
+movl 20(%ebp),%esi
+leal (%esi,%edi),%ebx
+movl $0,down(,%ebx,4)
+movl %edi,%ebx
+subl %esi,%ebx
+movl $0,up+28(,%ebx,4)
+movl $0,rows(,%edi,4)
+movl 20(%ebp),%edi
+movl -4(%ebp),%esi
+movl %esi,x(,%edi,4)
+cmpl $7,20(%ebp)
+jne .LC20
+call print
+jmp .LC21
+.LC20:
+movl 20(%ebp),%edi
+leal 1(%edi),%edi
+pushl %edi
+call queens
+addl $4,%esp
+.LC21:
+movl -4(%ebp),%edi
+movl 20(%ebp),%esi
+leal (%esi,%edi),%ebx
+movl $1,down(,%ebx,4)
+movl %edi,%ebx
+subl %esi,%ebx
+movl $1,up+28(,%ebx,4)
+movl $1,rows(,%edi,4)
+.LC16:
+.LC13:
+incl -4(%ebp)
+cmpl $8,-4(%ebp)
+jl .LC12
+movl $0,%eax
+.LC11:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf23:
+.size queens,.Lf23-queens
+.globl print
+.align 16
+.type print,@function
+print:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $0,-4(%ebp)
+.LC25:
+movl -4(%ebp),%edi
+movl x(,%edi,4),%edi
+leal 49(%edi),%edi
+pushl %edi
+pushl $.LC29
+call printf
+addl $8,%esp
+.LC26:
+incl -4(%ebp)
+cmpl $8,-4(%ebp)
+jl .LC25
+pushl $.LC30
+call printf
+addl $4,%esp
+movl $0,%eax
+.LC24:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf31:
+.size print,.Lf31-print
+.bss
+.globl x
+.align 4
+.type x,@object
+.size x,32
+.comm x,32
+.globl rows
+.align 4
+.type rows,@object
+.size rows,32
+.comm rows,32
+.globl down
+.align 4
+.type down,@object
+.size down,60
+.comm down,60
+.globl up
+.align 4
+.type up,@object
+.size up,60
+.comm up,60
+.data
+.align 1
+.LC30:
+.byte 10
+.byte 0
+.align 1
+.LC29:
+.byte 37
+.byte 99
+.byte 32
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/array.1bk b/lcc/x86/linux/tst/array.1bk
index e188568..4d3817c 100755
--- a/lcc/x86/linux/tst/array.1bk
+++ b/lcc/x86/linux/tst/array.1bk
@@ -1,4 +1,4 @@
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
diff --git a/lcc/x86/linux/tst/array.2bk b/lcc/x86/linux/tst/array.2bk
index 0a9b206..c8cf31e 100755
--- a/lcc/x86/linux/tst/array.2bk
+++ b/lcc/x86/linux/tst/array.2bk
@@ -1,2 +1,2 @@
-tst/array.c:33: warning: missing return value
-tst/array.c:48: warning: missing return value
+tst/array.c:33: warning: missing return value
+tst/array.c:48: warning: missing return value
diff --git a/lcc/x86/linux/tst/array.sbk b/lcc/x86/linux/tst/array.sbk
index 2505a6d..d50395c 100755
--- a/lcc/x86/linux/tst/array.sbk
+++ b/lcc/x86/linux/tst/array.sbk
@@ -1,235 +1,235 @@
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $60,%esp
-movl $0,-8(%ebp)
-.LC2:
-movl $0,-4(%ebp)
-.LC6:
-movl -4(%ebp),%edi
-movl -8(%ebp),%esi
-movl %esi,%ebx
-sall $4,%ebx
-leal x(%ebx),%ebx
-imul $1000,%esi,%esi
-leal (%edi,%esi),%esi
-movl %esi,(%ebx,%edi,4)
-.LC7:
-incl -4(%ebp)
-cmpl $4,-4(%ebp)
-jl .LC6
-movl -8(%ebp),%edi
-movl %edi,%esi
-sall $4,%esi
-leal x(%esi),%esi
-movl %esi,y(,%edi,4)
-.LC3:
-incl -8(%ebp)
-cmpl $3,-8(%ebp)
-jl .LC2
-call f
-movl $0,-8(%ebp)
-.LC10:
-movl -8(%ebp),%edi
-movl %edi,%esi
-sall $4,%esi
-leal -60(%ebp),%ebx
-leal (%ebx,%esi),%esi
-movl %esi,-12(%ebp)
-movl %esi,y(,%edi,4)
-movl $0,-4(%ebp)
-.LC14:
-movl -4(%ebp),%edi
-leal (,%edi,4),%edi
-movl -12(%ebp),%esi
-movl -8(%ebp),%ebx
-sall $4,%ebx
-leal x(%ebx),%ebx
-movl (%ebx,%edi),%ebx
-movl %ebx,(%esi,%edi)
-.LC15:
-incl -4(%ebp)
-cmpl $4,-4(%ebp)
-jl .LC14
-.LC11:
-incl -8(%ebp)
-cmpl $3,-8(%ebp)
-jl .LC10
-pushl $y
-leal -60(%ebp),%edi
-pushl %edi
-call g
-addl $8,%esp
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf18:
-.size main,.Lf18-main
-.globl f
-.align 16
-.type f,@function
-f:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-movl $0,-8(%ebp)
-.LC20:
-movl $0,-4(%ebp)
-.LC24:
-movl -4(%ebp),%edi
-movl -8(%ebp),%esi
-sall $4,%esi
-leal x(%esi),%esi
-pushl (%esi,%edi,4)
-pushl $.LC28
-call printf
-addl $8,%esp
-.LC25:
-incl -4(%ebp)
-cmpl $4,-4(%ebp)
-jl .LC24
-.LC21:
-incl -8(%ebp)
-cmpl $3,-8(%ebp)
-jl .LC20
-pushl $.LC29
-call printf
-addl $4,%esp
-movl $0,-8(%ebp)
-.LC30:
-movl $0,-4(%ebp)
-.LC34:
-movl -4(%ebp),%edi
-movl -8(%ebp),%esi
-movl y(,%esi,4),%esi
-pushl (%esi,%edi,4)
-pushl $.LC28
-call printf
-addl $8,%esp
-.LC35:
-incl -4(%ebp)
-cmpl $4,-4(%ebp)
-jl .LC34
-.LC31:
-incl -8(%ebp)
-cmpl $3,-8(%ebp)
-jl .LC30
-pushl $.LC29
-call printf
-addl $4,%esp
-movl $0,%eax
-.LC19:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf38:
-.size f,.Lf38-f
-.globl g
-.align 16
-.type g,@function
-g:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-movl $0,-8(%ebp)
-.LC40:
-movl $0,-4(%ebp)
-.LC44:
-movl -4(%ebp),%edi
-movl -8(%ebp),%esi
-sall $4,%esi
-movl 20(%ebp),%ebx
-leal (%ebx,%esi),%esi
-pushl (%esi,%edi,4)
-pushl $.LC28
-call printf
-addl $8,%esp
-.LC45:
-incl -4(%ebp)
-cmpl $4,-4(%ebp)
-jl .LC44
-.LC41:
-incl -8(%ebp)
-cmpl $3,-8(%ebp)
-jl .LC40
-pushl $.LC29
-call printf
-addl $4,%esp
-movl $0,-8(%ebp)
-.LC48:
-movl $0,-4(%ebp)
-.LC52:
-movl -4(%ebp),%edi
-movl -8(%ebp),%esi
-movl 24(%ebp),%ebx
-movl (%ebx,%esi,4),%esi
-pushl (%esi,%edi,4)
-pushl $.LC28
-call printf
-addl $8,%esp
-.LC53:
-incl -4(%ebp)
-cmpl $4,-4(%ebp)
-jl .LC52
-.LC49:
-incl -8(%ebp)
-cmpl $3,-8(%ebp)
-jl .LC48
-pushl $.LC29
-call printf
-addl $4,%esp
-movl $0,%eax
-.LC39:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf56:
-.size g,.Lf56-g
-.bss
-.globl y
-.align 4
-.type y,@object
-.size y,12
-.comm y,12
-.globl x
-.align 4
-.type x,@object
-.size x,48
-.comm x,48
-.data
-.align 1
-.LC29:
-.byte 10
-.byte 0
-.align 1
-.LC28:
-.byte 32
-.byte 37
-.byte 100
-.byte 0
-.text
-.ident "LCC: 4.1"
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $60,%esp
+movl $0,-8(%ebp)
+.LC2:
+movl $0,-4(%ebp)
+.LC6:
+movl -4(%ebp),%edi
+movl -8(%ebp),%esi
+movl %esi,%ebx
+sall $4,%ebx
+leal x(%ebx),%ebx
+imul $1000,%esi,%esi
+leal (%edi,%esi),%esi
+movl %esi,(%ebx,%edi,4)
+.LC7:
+incl -4(%ebp)
+cmpl $4,-4(%ebp)
+jl .LC6
+movl -8(%ebp),%edi
+movl %edi,%esi
+sall $4,%esi
+leal x(%esi),%esi
+movl %esi,y(,%edi,4)
+.LC3:
+incl -8(%ebp)
+cmpl $3,-8(%ebp)
+jl .LC2
+call f
+movl $0,-8(%ebp)
+.LC10:
+movl -8(%ebp),%edi
+movl %edi,%esi
+sall $4,%esi
+leal -60(%ebp),%ebx
+leal (%ebx,%esi),%esi
+movl %esi,-12(%ebp)
+movl %esi,y(,%edi,4)
+movl $0,-4(%ebp)
+.LC14:
+movl -4(%ebp),%edi
+leal (,%edi,4),%edi
+movl -12(%ebp),%esi
+movl -8(%ebp),%ebx
+sall $4,%ebx
+leal x(%ebx),%ebx
+movl (%ebx,%edi),%ebx
+movl %ebx,(%esi,%edi)
+.LC15:
+incl -4(%ebp)
+cmpl $4,-4(%ebp)
+jl .LC14
+.LC11:
+incl -8(%ebp)
+cmpl $3,-8(%ebp)
+jl .LC10
+pushl $y
+leal -60(%ebp),%edi
+pushl %edi
+call g
+addl $8,%esp
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf18:
+.size main,.Lf18-main
+.globl f
+.align 16
+.type f,@function
+f:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+movl $0,-8(%ebp)
+.LC20:
+movl $0,-4(%ebp)
+.LC24:
+movl -4(%ebp),%edi
+movl -8(%ebp),%esi
+sall $4,%esi
+leal x(%esi),%esi
+pushl (%esi,%edi,4)
+pushl $.LC28
+call printf
+addl $8,%esp
+.LC25:
+incl -4(%ebp)
+cmpl $4,-4(%ebp)
+jl .LC24
+.LC21:
+incl -8(%ebp)
+cmpl $3,-8(%ebp)
+jl .LC20
+pushl $.LC29
+call printf
+addl $4,%esp
+movl $0,-8(%ebp)
+.LC30:
+movl $0,-4(%ebp)
+.LC34:
+movl -4(%ebp),%edi
+movl -8(%ebp),%esi
+movl y(,%esi,4),%esi
+pushl (%esi,%edi,4)
+pushl $.LC28
+call printf
+addl $8,%esp
+.LC35:
+incl -4(%ebp)
+cmpl $4,-4(%ebp)
+jl .LC34
+.LC31:
+incl -8(%ebp)
+cmpl $3,-8(%ebp)
+jl .LC30
+pushl $.LC29
+call printf
+addl $4,%esp
+movl $0,%eax
+.LC19:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf38:
+.size f,.Lf38-f
+.globl g
+.align 16
+.type g,@function
+g:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+movl $0,-8(%ebp)
+.LC40:
+movl $0,-4(%ebp)
+.LC44:
+movl -4(%ebp),%edi
+movl -8(%ebp),%esi
+sall $4,%esi
+movl 20(%ebp),%ebx
+leal (%ebx,%esi),%esi
+pushl (%esi,%edi,4)
+pushl $.LC28
+call printf
+addl $8,%esp
+.LC45:
+incl -4(%ebp)
+cmpl $4,-4(%ebp)
+jl .LC44
+.LC41:
+incl -8(%ebp)
+cmpl $3,-8(%ebp)
+jl .LC40
+pushl $.LC29
+call printf
+addl $4,%esp
+movl $0,-8(%ebp)
+.LC48:
+movl $0,-4(%ebp)
+.LC52:
+movl -4(%ebp),%edi
+movl -8(%ebp),%esi
+movl 24(%ebp),%ebx
+movl (%ebx,%esi,4),%esi
+pushl (%esi,%edi,4)
+pushl $.LC28
+call printf
+addl $8,%esp
+.LC53:
+incl -4(%ebp)
+cmpl $4,-4(%ebp)
+jl .LC52
+.LC49:
+incl -8(%ebp)
+cmpl $3,-8(%ebp)
+jl .LC48
+pushl $.LC29
+call printf
+addl $4,%esp
+movl $0,%eax
+.LC39:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf56:
+.size g,.Lf56-g
+.bss
+.globl y
+.align 4
+.type y,@object
+.size y,12
+.comm y,12
+.globl x
+.align 4
+.type x,@object
+.size x,48
+.comm x,48
+.data
+.align 1
+.LC29:
+.byte 10
+.byte 0
+.align 1
+.LC28:
+.byte 32
+.byte 37
+.byte 100
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/cf.1bk b/lcc/x86/linux/tst/cf.1bk
index 24e21ba..9e331c5 100755
--- a/lcc/x86/linux/tst/cf.1bk
+++ b/lcc/x86/linux/tst/cf.1bk
@@ -1,51 +1,51 @@
-char freq
-011 8.1
-012 6.1
-040 11.9
-! 0.2
-" 1.5
-% 0.6
-& 0.4
-' 0.4
-( 2.9
-) 2.9
-* 0.8
-+ 1.3
-, 1.3
-- 0.4
-. 0.6
-/ 1.0
-0 2.5
-1 1.9
-2 0.6
-3 0.2
-7 0.4
-8 0.2
-; 3.8
-< 0.8
-= 2.7
-> 0.2
-[ 1.5
-\ 0.8
-] 1.5
-a 3.1
-c 4.4
-e 2.3
-f 6.0
-g 1.3
-h 1.0
-i 5.0
-l 1.0
-m 0.2
-n 3.3
-o 2.1
-p 1.0
-q 0.4
-r 4.2
-s 0.6
-t 3.8
-u 1.2
-v 0.6
-w 0.2
-{ 0.6
-} 0.6
+char freq
+011 8.1
+012 6.1
+040 11.9
+! 0.2
+" 1.5
+% 0.6
+& 0.4
+' 0.4
+( 2.9
+) 2.9
+* 0.8
++ 1.3
+, 1.3
+- 0.4
+. 0.6
+/ 1.0
+0 2.5
+1 1.9
+2 0.6
+3 0.2
+7 0.4
+8 0.2
+; 3.8
+< 0.8
+= 2.7
+> 0.2
+[ 1.5
+\ 0.8
+] 1.5
+a 3.1
+c 4.4
+e 2.3
+f 6.0
+g 1.3
+h 1.0
+i 5.0
+l 1.0
+m 0.2
+n 3.3
+o 2.1
+p 1.0
+q 0.4
+r 4.2
+s 0.6
+t 3.8
+u 1.2
+v 0.6
+w 0.2
+{ 0.6
+} 0.6
diff --git a/lcc/x86/linux/tst/cf.sbk b/lcc/x86/linux/tst/cf.sbk
index dc886e0..9058d0b 100755
--- a/lcc/x86/linux/tst/cf.sbk
+++ b/lcc/x86/linux/tst/cf.sbk
@@ -1,161 +1,161 @@
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $24,%esp
-cmpl $1,20(%ebp)
-jg .LC2
-flds .LC4
-fstps -16(%ebp)
-jmp .LC3
-.LC2:
-movl 24(%ebp),%edi
-pushl 4(%edi)
-call atof
-addl $4,%esp
-fstps -20(%ebp)
-flds -20(%ebp)
-fdivs .LC5
-fstps -16(%ebp)
-.LC3:
-movl $0,-4(%ebp)
-.LC6:
-movl -4(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-4(%ebp)
-flds .LC4
-fstps f(,%edi,4)
-.LC7:
-cmpl $127,-4(%ebp)
-jle .LC6
-movl $0,-8(%ebp)
-jmp .LC11
-.LC10:
-movl -12(%ebp),%edi
-leal f(,%edi,4),%edi
-flds (,%edi)
-fadds .LC13
-fstps (,%edi)
-incl -8(%ebp)
-.LC11:
-call getchar
-movl %eax,-12(%ebp)
-cmpl $-1,%eax
-jne .LC10
-pushl $.LC14
-call printf
-addl $4,%esp
-movl $0,-4(%ebp)
-.LC15:
-movl -4(%ebp),%edi
-flds f(,%edi,4)
-fstps -24(%ebp)
-flds .LC4
-fcomps -24(%ebp)
-fstsw %ax
-sahf
-je .LC19
-flds -24(%ebp)
-fildl -8(%ebp)
-fdivp %st(1),%st
-flds -16(%ebp)
-fcompp
-fstsw %ax
-sahf
-ja .LC19
-cmpl $32,-4(%ebp)
-jg .LC21
-pushl -4(%ebp)
-pushl $.LC23
-call printf
-addl $8,%esp
-jmp .LC22
-.LC21:
-pushl -4(%ebp)
-pushl $.LC24
-call printf
-addl $8,%esp
-.LC22:
-flds .LC5
-movl -4(%ebp),%edi
-fmuls f(,%edi,4)
-fildl -8(%ebp)
-fdivp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC25
-call printf
-addl $12,%esp
-.LC19:
-.LC16:
-incl -4(%ebp)
-cmpl $127,-4(%ebp)
-jle .LC15
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf26:
-.size main,.Lf26-main
-.bss
-.globl f
-.align 4
-.type f,@object
-.size f,512
-.comm f,512
-.data
-.align 1
-.LC25:
-.byte 9
-.byte 37
-.byte 46
-.byte 49
-.byte 102
-.byte 10
-.byte 0
-.align 1
-.LC24:
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.LC23:
-.byte 37
-.byte 48
-.byte 51
-.byte 111
-.byte 0
-.align 1
-.LC14:
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 9
-.byte 102
-.byte 114
-.byte 101
-.byte 113
-.byte 10
-.byte 0
-.align 4
-.LC13:
-.long 1065353216
-.align 4
-.LC5:
-.long 1120403456
-.align 4
-.LC4:
-.long 0
-.text
-.ident "LCC: 4.1"
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $24,%esp
+cmpl $1,20(%ebp)
+jg .LC2
+flds .LC4
+fstps -16(%ebp)
+jmp .LC3
+.LC2:
+movl 24(%ebp),%edi
+pushl 4(%edi)
+call atof
+addl $4,%esp
+fstps -20(%ebp)
+flds -20(%ebp)
+fdivs .LC5
+fstps -16(%ebp)
+.LC3:
+movl $0,-4(%ebp)
+.LC6:
+movl -4(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-4(%ebp)
+flds .LC4
+fstps f(,%edi,4)
+.LC7:
+cmpl $127,-4(%ebp)
+jle .LC6
+movl $0,-8(%ebp)
+jmp .LC11
+.LC10:
+movl -12(%ebp),%edi
+leal f(,%edi,4),%edi
+flds (,%edi)
+fadds .LC13
+fstps (,%edi)
+incl -8(%ebp)
+.LC11:
+call getchar
+movl %eax,-12(%ebp)
+cmpl $-1,%eax
+jne .LC10
+pushl $.LC14
+call printf
+addl $4,%esp
+movl $0,-4(%ebp)
+.LC15:
+movl -4(%ebp),%edi
+flds f(,%edi,4)
+fstps -24(%ebp)
+flds .LC4
+fcomps -24(%ebp)
+fstsw %ax
+sahf
+je .LC19
+flds -24(%ebp)
+fildl -8(%ebp)
+fdivp %st(1),%st
+flds -16(%ebp)
+fcompp
+fstsw %ax
+sahf
+ja .LC19
+cmpl $32,-4(%ebp)
+jg .LC21
+pushl -4(%ebp)
+pushl $.LC23
+call printf
+addl $8,%esp
+jmp .LC22
+.LC21:
+pushl -4(%ebp)
+pushl $.LC24
+call printf
+addl $8,%esp
+.LC22:
+flds .LC5
+movl -4(%ebp),%edi
+fmuls f(,%edi,4)
+fildl -8(%ebp)
+fdivp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC25
+call printf
+addl $12,%esp
+.LC19:
+.LC16:
+incl -4(%ebp)
+cmpl $127,-4(%ebp)
+jle .LC15
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf26:
+.size main,.Lf26-main
+.bss
+.globl f
+.align 4
+.type f,@object
+.size f,512
+.comm f,512
+.data
+.align 1
+.LC25:
+.byte 9
+.byte 37
+.byte 46
+.byte 49
+.byte 102
+.byte 10
+.byte 0
+.align 1
+.LC24:
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.LC23:
+.byte 37
+.byte 48
+.byte 51
+.byte 111
+.byte 0
+.align 1
+.LC14:
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 9
+.byte 102
+.byte 114
+.byte 101
+.byte 113
+.byte 10
+.byte 0
+.align 4
+.LC13:
+.long 1065353216
+.align 4
+.LC5:
+.long 1120403456
+.align 4
+.LC4:
+.long 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/cq.1bk b/lcc/x86/linux/tst/cq.1bk
index 05acbee..f0e8b35 100755
--- a/lcc/x86/linux/tst/cq.1bk
+++ b/lcc/x86/linux/tst/cq.1bk
@@ -1,48 +1,48 @@
-Section s22 returned 0.
-Decimal and octal/hex constants sometimes give
- different results when assigned to longs.
-Decimal and octal/hex constants sometimes give
- different results when assigned to longs.
-Section s241 returned 0.
-Section s243 returned 0.
-Section s244 returned 0.
-Section s25 returned 0.
- 8 bits in chars.
- 32 bits in ints.
- 16 bits in shorts.
- 32 bits in longs.
- 32 bits in unsigneds.
- 32 bits in floats.
- 64 bits in doubles.
-1.192093e-07 is the least number that can be added to 1. (float).
-2.220446e-16 is the least number that can be added to 1. (double).
-Section s26 returned 0.
-Section s4 returned 0.
-Section s61 returned 0.
-Section s626 returned 0.
-Section s71 returned 0.
-Section s72 returned 0.
-Section s757 returned 0.
-Section s7813 returned 0.
-Section s714 returned 0.
-Section s715 returned 0.
-Register count for char is unreliable.
-Register count for pointer is unreliable.
-Register count for int is unreliable.
-Section s81 returned 0.
-Section s84 returned 0.
-char alignment: 1
-short alignment: 2
-int alignment: 4
-long alignment: 4
-unsigned alignment: 4
-float alignment: 4
-double alignment: 4
-Sign extension in fields
-Be especially careful with 1-bit fields!
-Section s85 returned 0.
-Section s86 returned 0.
-Section s88 returned 0.
-Section s9 returned 0.
-
-No errors detected.
+Section s22 returned 0.
+Decimal and octal/hex constants sometimes give
+ different results when assigned to longs.
+Decimal and octal/hex constants sometimes give
+ different results when assigned to longs.
+Section s241 returned 0.
+Section s243 returned 0.
+Section s244 returned 0.
+Section s25 returned 0.
+ 8 bits in chars.
+ 32 bits in ints.
+ 16 bits in shorts.
+ 32 bits in longs.
+ 32 bits in unsigneds.
+ 32 bits in floats.
+ 64 bits in doubles.
+1.192093e-07 is the least number that can be added to 1. (float).
+2.220446e-16 is the least number that can be added to 1. (double).
+Section s26 returned 0.
+Section s4 returned 0.
+Section s61 returned 0.
+Section s626 returned 0.
+Section s71 returned 0.
+Section s72 returned 0.
+Section s757 returned 0.
+Section s7813 returned 0.
+Section s714 returned 0.
+Section s715 returned 0.
+Register count for char is unreliable.
+Register count for pointer is unreliable.
+Register count for int is unreliable.
+Section s81 returned 0.
+Section s84 returned 0.
+char alignment: 1
+short alignment: 2
+int alignment: 4
+long alignment: 4
+unsigned alignment: 4
+float alignment: 4
+double alignment: 4
+Sign extension in fields
+Be especially careful with 1-bit fields!
+Section s85 returned 0.
+Section s86 returned 0.
+Section s88 returned 0.
+Section s9 returned 0.
+
+No errors detected.
diff --git a/lcc/x86/linux/tst/cq.2bk b/lcc/x86/linux/tst/cq.2bk
index 295f5b6..7c6ba5e 100755
--- a/lcc/x86/linux/tst/cq.2bk
+++ b/lcc/x86/linux/tst/cq.2bk
@@ -1,25 +1,25 @@
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `4294967296'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `040000000000'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `0x100000000'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `68719476735'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `0777777777777'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `0xfffffffff'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `68719476736'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `01000000000000'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `0x1000000000'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:533: warning: missing return value
-tst/cq.c:1169: warning: missing return value
-tst/cq.c:5294: warning: unreachable code
-tst/cq.c:5303: warning: missing return value
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `4294967296'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `040000000000'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `0x100000000'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `68719476735'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `0777777777777'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `0xfffffffff'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `68719476736'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `01000000000000'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `0x1000000000'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:533: warning: missing return value
+tst/cq.c:1169: warning: missing return value
+tst/cq.c:5294: warning: unreachable code
+tst/cq.c:5303: warning: missing return value
diff --git a/lcc/x86/linux/tst/cq.sbk b/lcc/x86/linux/tst/cq.sbk
index 6e93567..dfe165f 100755
--- a/lcc/x86/linux/tst/cq.sbk
+++ b/lcc/x86/linux/tst/cq.sbk
@@ -1,15756 +1,15756 @@
-.data
-.align 4
-.type sec.2,@object
-sec.2:
-.long s22
-.long s241
-.long s243
-.long s244
-.long s25
-.long s26
-.long s4
-.long s61
-.long s626
-.long s71
-.long s72
-.long s757
-.long s7813
-.long s714
-.long s715
-.long s81
-.long s84
-.long s85
-.long s86
-.long s88
-.long s9
-.bss
-.size sec.2,84
-.align 4
-.type d0.3,@object
-.size d0.3,68
-.lcomm d0.3,68
-.align 4
-.type pd0.4,@object
-.size pd0.4,4
-.lcomm pd0.4,4
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $1,d0.3+36
-movl $1,d0.3+40
-movl $1,d0.3+44
-movl $1,d0.3+48
-leal d0.3,%edi
-movl %edi,pd0.4
-movl $0,-4(%ebp)
-jmp .LC12
-.LC9:
-pushl pd0.4
-movl -4(%ebp),%edi
-call *sec.2(,%edi,4)
-addl $4,%esp
-movl %eax,d0.3+52
-movl d0.3+56,%edi
-movl d0.3+52,%esi
-leal (%esi,%edi),%edi
-movl %edi,d0.3+56
-cmpl $0,d0.3+36
-je .LC17
-pushl d0.3+52
-pushl $d0.3+60
-pushl $.LC20
-call printf
-addl $12,%esp
-.LC17:
-.LC10:
-incl -4(%ebp)
-.LC12:
-movl -4(%ebp),%edi
-cmpl $21,%edi
-jb .LC9
-cmpl $0,d0.3+56
-jne .LC23
-pushl $.LC26
-call printf
-addl $4,%esp
-jmp .LC24
-.LC23:
-pushl $.LC27
-call printf
-addl $4,%esp
-.LC24:
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf28:
-.size main,.Lf28-main
-.data
-.align 1
-.type s22er.30,@object
-s22er.30:
-.byte 115
-.byte 50
-.byte 50
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s22er.30,10
-.align 1
-.type qs22.31,@object
-.size qs22.31,8
-qs22.31:
-.byte 115
-.byte 50
-.byte 50
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s22
-.text
-.align 16
-.type s22,@function
-s22:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $32,%esp
-movl $0,-12(%ebp)
-leal qs22.31,%edi
-movl %edi,-4(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-8(%ebp)
-.LC32:
-.LC33:
-movl -8(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-8(%ebp)
-movl -4(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-4(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC32
-movl $1,-16(%ebp)
-movl $2,-24(%ebp)
-movl $3,-28(%ebp)
-movl $4,-20(%ebp)
-movl -16(%ebp),%edi
-movl -24(%ebp),%esi
-leal (%esi,%edi),%edi
-movl -28(%ebp),%esi
-leal (%esi,%edi),%edi
-movl -20(%ebp),%esi
-leal (%esi,%edi),%edi
-cmpl $10,%edi
-je .LC35
-incl -12(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC37
-pushl $1
-pushl $s22er.30
-call printf
-addl $8,%esp
-.LC37:
-.LC35:
-movl $2,-32(%ebp)
-movl -16(%ebp),%edi
-cmpl %edi,-32(%ebp)
-jne .LC39
-addl $4,-12(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC41
-pushl $4
-pushl $s22er.30
-call printf
-addl $8,%esp
-.LC41:
-.LC39:
-movl -12(%ebp),%eax
-.LC29:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf43:
-.size s22,.Lf43-s22
-.data
-.align 1
-.type s241er.45,@object
-s241er.45:
-.byte 115
-.byte 50
-.byte 52
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s241er.45,11
-.align 1
-.type qs241.46,@object
-.size qs241.46,8
-qs241.46:
-.byte 115
-.byte 50
-.byte 52
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 4
-.type g.47,@object
-.size g.47,156
-g.47:
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 0
-.long 6
-.long 0
-.long 8
-.long 0
-.long 12
-.long 0
-.long 16
-.long 0
-.long 18
-.long 0
-.long 20
-.long 0
-.long 24
-.long 0
-.long 28
-.long 0
-.long 30
-.long 0
-.long 32
-.long 0
-.long 36
-.globl s241
-.text
-.align 16
-.type s241,@function
-s241:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $488,%esp
-movl $0,-484(%ebp)
-movl $0,-488(%ebp)
-leal qs241.46,%edi
-movl %edi,-476(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-480(%ebp)
-.LC48:
-.LC49:
-movl -480(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-480(%ebp)
-movl -476(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-476(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC48
-jmp .LC51
-incl -484(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC53
-pushl $1
-pushl $s241er.45
-call printf
-addl $8,%esp
-.LC53:
-.LC51:
-jmp .LC55
-addl $2,-484(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC57
-pushl $2
-pushl $s241er.45
-call printf
-addl $8,%esp
-.LC57:
-.LC55:
-jmp .LC59
-addl $4,-484(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC61
-pushl $4
-pushl $s241er.45
-call printf
-addl $8,%esp
-.LC61:
-.LC59:
-jmp .LC63
-addl $8,-484(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC65
-pushl $8
-pushl $s241er.45
-call printf
-addl $8,%esp
-.LC65:
-.LC63:
-movl $0,-4(%ebp)
-.LC67:
-movl -4(%ebp),%edi
-movl %edi,g.47(,%edi,4)
-.LC68:
-incl -4(%ebp)
-cmpl $17,-4(%ebp)
-jl .LC67
-movl $18,-4(%ebp)
-.LC71:
-movl -4(%ebp),%edi
-leal g.47(,%edi,4),%edi
-pushl (,%edi)
-call pow2
-addl $4,%esp
-movl %eax,(,%edi)
-movl -4(%ebp),%edi
-leal (,%edi,4),%edi
-movl g.47(%edi),%esi
-subl $1,%esi
-movl %esi,g.47-4(%edi)
-addl $2,-4(%ebp)
-.LC72:
-cmpl $39,-4(%ebp)
-jl .LC71
-movl $0,-160(%ebp)
-movl $0,-316(%ebp)
-movl $0,-472(%ebp)
-movl $1,-156(%ebp)
-movl $1,-312(%ebp)
-movl $1,-468(%ebp)
-movl $2,-152(%ebp)
-movl $2,-308(%ebp)
-movl $2,-464(%ebp)
-movl $3,-148(%ebp)
-movl $3,-304(%ebp)
-movl $3,-460(%ebp)
-movl $4,-144(%ebp)
-movl $4,-300(%ebp)
-movl $4,-456(%ebp)
-movl $5,-140(%ebp)
-movl $5,-296(%ebp)
-movl $5,-452(%ebp)
-movl $6,-136(%ebp)
-movl $6,-292(%ebp)
-movl $6,-448(%ebp)
-movl $7,-132(%ebp)
-movl $7,-288(%ebp)
-movl $7,-444(%ebp)
-movl $8,-128(%ebp)
-movl $8,-284(%ebp)
-movl $8,-440(%ebp)
-movl $9,-124(%ebp)
-movl $9,-280(%ebp)
-movl $9,-436(%ebp)
-movl $10,-120(%ebp)
-movl $10,-276(%ebp)
-movl $10,-432(%ebp)
-movl $11,-116(%ebp)
-movl $11,-272(%ebp)
-movl $11,-428(%ebp)
-movl $12,-112(%ebp)
-movl $12,-268(%ebp)
-movl $12,-424(%ebp)
-movl $13,-108(%ebp)
-movl $13,-264(%ebp)
-movl $13,-420(%ebp)
-movl $14,-104(%ebp)
-movl $14,-260(%ebp)
-movl $14,-416(%ebp)
-movl $15,-100(%ebp)
-movl $15,-256(%ebp)
-movl $15,-412(%ebp)
-movl $16,-96(%ebp)
-movl $16,-252(%ebp)
-movl $16,-408(%ebp)
-movl $63,-92(%ebp)
-movl $63,-248(%ebp)
-movl $63,-404(%ebp)
-movl $64,-88(%ebp)
-movl $64,-244(%ebp)
-movl $64,-400(%ebp)
-movl $255,-84(%ebp)
-movl $255,-240(%ebp)
-movl $255,-396(%ebp)
-movl $256,-80(%ebp)
-movl $256,-236(%ebp)
-movl $256,-392(%ebp)
-movl $4095,-76(%ebp)
-movl $4095,-232(%ebp)
-movl $4095,-388(%ebp)
-movl $4096,-72(%ebp)
-movl $4096,-228(%ebp)
-movl $4096,-384(%ebp)
-movl $65535,-68(%ebp)
-movl $65535,-224(%ebp)
-movl $65535,-380(%ebp)
-movl $65536,-64(%ebp)
-movl $65536,-220(%ebp)
-movl $65536,-376(%ebp)
-movl $262143,-60(%ebp)
-movl $262143,-216(%ebp)
-movl $262143,-372(%ebp)
-movl $262144,-56(%ebp)
-movl $262144,-212(%ebp)
-movl $262144,-368(%ebp)
-movl $1048575,-52(%ebp)
-movl $1048575,-208(%ebp)
-movl $1048575,-364(%ebp)
-movl $1048576,-48(%ebp)
-movl $1048576,-204(%ebp)
-movl $1048576,-360(%ebp)
-movl $16777215,-44(%ebp)
-movl $16777215,-200(%ebp)
-movl $16777215,-356(%ebp)
-movl $16777216,-40(%ebp)
-movl $16777216,-196(%ebp)
-movl $16777216,-352(%ebp)
-movl $268435455,-36(%ebp)
-movl $268435455,-192(%ebp)
-movl $268435455,-348(%ebp)
-movl $268435456,-32(%ebp)
-movl $268435456,-188(%ebp)
-movl $268435456,-344(%ebp)
-movl $1073741823,-28(%ebp)
-movl $1073741823,-184(%ebp)
-movl $1073741823,-340(%ebp)
-movl $1073741824,-24(%ebp)
-movl $1073741824,-180(%ebp)
-movl $1073741824,-336(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-20(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-176(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-332(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-16(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-172(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-328(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-12(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-168(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-324(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-8(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-164(%ebp)
-movl $0xffffffff,%edi
-movl %edi,-320(%ebp)
-movl $0,-4(%ebp)
-.LC190:
-movl -4(%ebp),%edi
-leal (,%edi,4),%edi
-leal -160(%ebp),%esi
-movl (%esi,%edi),%esi
-cmpl %esi,g.47(%edi)
-jne .LC197
-leal -316(%ebp),%ebx
-movl (%ebx,%edi),%ebx
-cmpl %ebx,%esi
-jne .LC197
-leal -472(%ebp),%esi
-cmpl (%esi,%edi),%ebx
-je .LC194
-.LC197:
-movl 20(%ebp),%edi
-cmpl $0,40(%edi)
-je .LC198
-pushl $.LC200
-call printf
-addl $4,%esp
-pushl $.LC201
-call printf
-addl $4,%esp
-.LC198:
-.LC194:
-.LC191:
-incl -4(%ebp)
-cmpl $39,-4(%ebp)
-jl .LC190
-cmpl $0,-488(%ebp)
-je .LC202
-movl $16,-484(%ebp)
-.LC202:
-movl -484(%ebp),%eax
-.LC44:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf204:
-.size s241,.Lf204-s241
-.globl pow2
-.align 16
-.type pow2,@function
-pow2:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $1,-4(%ebp)
-jmp .LC207
-.LC206:
-sall $1,-4(%ebp)
-.LC207:
-movl 20(%ebp),%edi
-movl %edi,%esi
-subl $1,%esi
-movl %esi,20(%ebp)
-cmpl $0,%edi
-jne .LC206
-movl -4(%ebp),%eax
-.LC205:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf209:
-.size pow2,.Lf209-pow2
-.data
-.align 1
-.type s243er.211,@object
-s243er.211:
-.byte 115
-.byte 50
-.byte 52
-.byte 51
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s243er.211,11
-.align 1
-.type qs243.212,@object
-.size qs243.212,8
-qs243.212:
-.byte 115
-.byte 50
-.byte 52
-.byte 51
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s243
-.text
-.align 16
-.type s243,@function
-s243:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $268,%esp
-movl $0,-268(%ebp)
-leal qs243.212,%edi
-movl %edi,-260(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-264(%ebp)
-.LC213:
-.LC214:
-movl -264(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-264(%ebp)
-movl -260(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-260(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC213
-leal -256(%ebp),%edi
-pushl %edi
-call zerofill
-addl $4,%esp
-movb $1,-159(%ebp)
-movb $1,-191(%ebp)
-movb $1,-130(%ebp)
-movb $1,-208(%ebp)
-movb $1,-158(%ebp)
-movb $1,-190(%ebp)
-movb $1,-223(%ebp)
-movb $1,-207(%ebp)
-movb $1,-157(%ebp)
-movb $1,-189(%ebp)
-movb $1,-222(%ebp)
-movb $1,-206(%ebp)
-movb $1,-156(%ebp)
-movb $1,-188(%ebp)
-movb $1,-221(%ebp)
-movb $1,-205(%ebp)
-movb $1,-155(%ebp)
-movb $1,-187(%ebp)
-movb $1,-219(%ebp)
-movb $1,-204(%ebp)
-movb $1,-154(%ebp)
-movb $1,-186(%ebp)
-movb $1,-218(%ebp)
-movb $1,-203(%ebp)
-movb $1,-153(%ebp)
-movb $1,-185(%ebp)
-movb $1,-216(%ebp)
-movb $1,-202(%ebp)
-movb $1,-152(%ebp)
-movb $1,-184(%ebp)
-movb $1,-215(%ebp)
-movb $1,-201(%ebp)
-movb $1,-151(%ebp)
-movb $1,-183(%ebp)
-movb $1,-161(%ebp)
-movb $1,-200(%ebp)
-movb $1,-150(%ebp)
-movb $1,-182(%ebp)
-movb $1,-195(%ebp)
-movb $1,-199(%ebp)
-movb $1,-149(%ebp)
-movb $1,-181(%ebp)
-movb $1,-211(%ebp)
-movb $1,-148(%ebp)
-movb $1,-180(%ebp)
-movb $1,-162(%ebp)
-movb $1,-147(%ebp)
-movb $1,-179(%ebp)
-movb $1,-132(%ebp)
-movb $1,-246(%ebp)
-movb $1,-146(%ebp)
-movb $1,-178(%ebp)
-movb $1,-247(%ebp)
-movb $1,-145(%ebp)
-movb $1,-177(%ebp)
-movb $1,-133(%ebp)
-movb $1,-248(%ebp)
-movb $1,-144(%ebp)
-movb $1,-176(%ebp)
-movb $1,-131(%ebp)
-movb $1,-243(%ebp)
-movb $1,-143(%ebp)
-movb $1,-175(%ebp)
-movb $1,-165(%ebp)
-movb $1,-244(%ebp)
-movb $1,-142(%ebp)
-movb $1,-174(%ebp)
-movb $1,-163(%ebp)
-movb $1,-141(%ebp)
-movb $1,-173(%ebp)
-movb $1,-213(%ebp)
-movb $1,-164(%ebp)
-movb $1,-140(%ebp)
-movb $1,-172(%ebp)
-movb $1,-197(%ebp)
-movb $1,-217(%ebp)
-movb $1,-139(%ebp)
-movb $1,-171(%ebp)
-movb $1,-214(%ebp)
-movb $1,-138(%ebp)
-movb $1,-170(%ebp)
-movb $1,-198(%ebp)
-movb $1,-256(%ebp)
-movb $1,-137(%ebp)
-movb $1,-169(%ebp)
-movb $1,-196(%ebp)
-movb $1,-224(%ebp)
-movb $1,-136(%ebp)
-movb $1,-168(%ebp)
-movb $1,-194(%ebp)
-movb $1,-135(%ebp)
-movb $1,-167(%ebp)
-movb $1,-212(%ebp)
-movb $1,-134(%ebp)
-movb $1,-166(%ebp)
-movb $1,-210(%ebp)
-movb $1,-193(%ebp)
-movb $1,-209(%ebp)
-leal -256(%ebp),%edi
-pushl %edi
-call sumof
-addl $4,%esp
-cmpl $98,%eax
-je .LC313
-incl -268(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC315
-pushl $1
-pushl $s243er.211
-call printf
-addl $8,%esp
-.LC315:
-.LC313:
-jmp .LC317
-addl $8,-268(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC319
-pushl $8
-pushl $s243er.211
-call printf
-addl $8,%esp
-.LC319:
-.LC317:
-movl -268(%ebp),%eax
-.LC210:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf321:
-.size s243,.Lf321-s243
-.globl zerofill
-.align 16
-.type zerofill,@function
-zerofill:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $0,-4(%ebp)
-.LC323:
-movl 20(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,20(%ebp)
-movb $0,(,%edi)
-.LC324:
-incl -4(%ebp)
-cmpl $256,-4(%ebp)
-jl .LC323
-movl $0,%eax
-.LC322:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf327:
-.size zerofill,.Lf327-zerofill
-.globl sumof
-.align 16
-.type sumof,@function
-sumof:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $12,%esp
-movl 20(%ebp),%edi
-movl %edi,-12(%ebp)
-movl $0,-4(%ebp)
-movl $0,-8(%ebp)
-.LC329:
-movl -12(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-12(%ebp)
-movsbl (,%edi),%edi
-addl %edi,-4(%ebp)
-.LC330:
-incl -8(%ebp)
-cmpl $256,-8(%ebp)
-jl .LC329
-movl -4(%ebp),%eax
-.LC328:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf333:
-.size sumof,.Lf333-sumof
-.data
-.align 1
-.type s244er.335,@object
-s244er.335:
-.byte 115
-.byte 50
-.byte 52
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s244er.335,11
-.align 1
-.type qs244.336,@object
-.size qs244.336,8
-qs244.336:
-.byte 115
-.byte 50
-.byte 52
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s244
-.text
-.align 16
-.type s244,@function
-s244:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $92,%esp
-leal qs244.336,%edi
-movl %edi,-72(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-76(%ebp)
-.LC337:
-.LC338:
-movl -76(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-76(%ebp)
-movl -72(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-72(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC337
-movl $0,-84(%ebp)
-movl $0,-80(%ebp)
-fldl .LC340
-fstpl -68(%ebp)
-fldl .LC340
-fstpl -60(%ebp)
-fldl .LC340
-fstpl -52(%ebp)
-fldl .LC340
-fstpl -44(%ebp)
-fldl .LC340
-fstpl -36(%ebp)
-fldl .LC340
-fstpl -28(%ebp)
-fldl .LC340
-fstpl -20(%ebp)
-fldl .LC340
-fstpl -12(%ebp)
-movl $0,-80(%ebp)
-movl $0,-4(%ebp)
-.LC348:
-movl -4(%ebp),%edi
-leal (,%edi,8),%edi
-leal -68(%ebp),%esi
-leal -60(%ebp),%ebx
-fldl (%ebx,%edi)
-fcompl (%esi,%edi)
-fstsw %ax
-sahf
-je .LC352
-movl $1,-80(%ebp)
-.LC352:
-.LC349:
-incl -4(%ebp)
-cmpl $7,-4(%ebp)
-jl .LC348
-cmpl $0,-80(%ebp)
-je .LC355
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC357
-pushl $1
-pushl $s244er.335
-call printf
-addl $8,%esp
-.LC357:
-incl -84(%ebp)
-.LC355:
-jmp .LC359
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC361
-pushl $2
-pushl $s244er.335
-call printf
-addl $8,%esp
-.LC361:
-addl $2,-84(%ebp)
-.LC359:
-movl -84(%ebp),%eax
-.LC334:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf363:
-.size s244,.Lf363-s244
-.data
-.align 1
-.type s25er.365,@object
-s25er.365:
-.byte 115
-.byte 50
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s25er.365,10
-.align 1
-.type qs25.366,@object
-.size qs25.366,8
-qs25.366:
-.byte 115
-.byte 50
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s25
-.text
-.align 16
-.type s25,@function
-s25:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $28,%esp
-leal qs25.366,%edi
-movl %edi,-16(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-20(%ebp)
-.LC367:
-.LC368:
-movl -20(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-20(%ebp)
-movl -16(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-16(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC367
-movl $0,-24(%ebp)
-leal .LC370,%edi
-movl %edi,-8(%ebp)
-movl -8(%ebp),%edi
-movsbl 1(%edi),%esi
-movsbl (,%edi),%ebx
-cmpl %esi,%ebx
-jne .LC374
-movsbl 2(%edi),%edi
-cmpl %edi,%esi
-jne .LC374
-cmpl $46,%edi
-je .LC371
-.LC374:
-incl -24(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC375
-pushl $1
-pushl $s25er.365
-call printf
-addl $8,%esp
-.LC375:
-.LC371:
-movl -8(%ebp),%edi
-movsbl 3(%edi),%edi
-cmpl $0,%edi
-je .LC377
-addl $4,-24(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC379
-pushl $4
-pushl $s25er.365
-call printf
-addl $8,%esp
-.LC379:
-.LC377:
-movsbl .LC383+1,%edi
-cmpl $34,%edi
-je .LC381
-addl $8,-24(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC385
-pushl $8
-pushl $s25er.365
-call printf
-addl $8,%esp
-.LC385:
-.LC381:
-leal .LC387,%edi
-movl %edi,-8(%ebp)
-movl -8(%ebp),%edi
-movsbl (,%edi),%esi
-cmpl $10,%esi
-jne .LC395
-movsbl 1(%edi),%esi
-cmpl $9,%esi
-jne .LC395
-movsbl 2(%edi),%esi
-cmpl $8,%esi
-jne .LC395
-movsbl 3(%edi),%esi
-cmpl $13,%esi
-jne .LC395
-movsbl 4(%edi),%esi
-cmpl $12,%esi
-jne .LC395
-movsbl 5(%edi),%esi
-cmpl $92,%esi
-jne .LC395
-movsbl 6(%edi),%edi
-cmpl $39,%edi
-je .LC388
-.LC395:
-addl $16,-24(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC396
-pushl $16
-pushl $s25er.365
-call printf
-addl $8,%esp
-.LC396:
-.LC388:
-leal .LC398,%edi
-movl %edi,-12(%ebp)
-movl %edi,-8(%ebp)
-movl $0,-28(%ebp)
-movl $0,-4(%ebp)
-jmp .LC402
-.LC399:
-movl -4(%ebp),%edi
-movl -8(%ebp),%esi
-movsbl (%esi,%edi),%esi
-movl -12(%ebp),%ebx
-movsbl (%ebx,%edi),%edi
-cmpl %edi,%esi
-je .LC403
-movl $1,-28(%ebp)
-.LC403:
-.LC400:
-incl -4(%ebp)
-.LC402:
-movl -4(%ebp),%edi
-cmpl $7,%edi
-jb .LC399
-cmpl $0,-28(%ebp)
-je .LC405
-addl $32,-24(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC407
-pushl $32
-pushl $s25er.365
-call printf
-addl $8,%esp
-.LC407:
-.LC405:
-movl -24(%ebp),%eax
-.LC364:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf409:
-.size s25,.Lf409-s25
-.data
-.align 1
-.type qs26.411,@object
-.size qs26.411,8
-qs26.411:
-.byte 115
-.byte 50
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.type s.412,@object
-s.412:
-.byte 37
-.byte 51
-.byte 100
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 37
-.byte 115
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.size s.412,18
-.align 1
-.type s2.413,@object
-s2.413:
-.byte 37
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 97
-.byte 100
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 49
-.byte 46
-.byte 32
-.byte 40
-.byte 37
-.byte 115
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.size s2.413,54
-.globl s26
-.text
-.align 16
-.type s26,@function
-s26:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $56,%esp
-leal qs26.411,%edi
-movl %edi,-36(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-40(%ebp)
-.LC414:
-.LC415:
-movl -40(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-40(%ebp)
-movl -36(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-36(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC414
-movl 20(%ebp),%edi
-movl $0,(,%edi)
-movb $0,-41(%ebp)
-movb $1,-5(%ebp)
-jmp .LC418
-.LC417:
-movsbl -5(%ebp),%edi
-leal (,%edi,2),%edi
-movl %edi,%ebx
-movb %bl,-5(%ebp)
-movl 20(%ebp),%edi
-incl (,%edi)
-.LC418:
-movsbl -41(%ebp),%edi
-movsbl -5(%ebp),%esi
-cmpl %esi,%edi
-jne .LC417
-movl 20(%ebp),%edi
-movl (,%edi),%esi
-leal (,%esi,4),%esi
-movl %esi,4(%edi)
-movl 20(%ebp),%edi
-movl (,%edi),%esi
-leal (,%esi,2),%esi
-movl %esi,8(%edi)
-movl 20(%ebp),%edi
-movl (,%edi),%esi
-leal (,%esi,4),%esi
-movl %esi,12(%edi)
-movl 20(%ebp),%edi
-movl (,%edi),%esi
-leal (,%esi,4),%esi
-movl %esi,16(%edi)
-movl 20(%ebp),%edi
-movl (,%edi),%esi
-leal (,%esi,4),%esi
-movl %esi,20(%edi)
-movl 20(%ebp),%edi
-movl (,%edi),%esi
-leal (,%esi,8),%esi
-movl %esi,24(%edi)
-flds .LC420
-fstps -16(%ebp)
-flds .LC420
-fstps -4(%ebp)
-flds .LC421
-fstps -12(%ebp)
-jmp .LC423
-.LC422:
-flds -16(%ebp)
-fadds -4(%ebp)
-fstps -12(%ebp)
-flds -4(%ebp)
-fdivl .LC425
-fstps -4(%ebp)
-.LC423:
-flds -16(%ebp)
-fcomps -12(%ebp)
-fstsw %ax
-sahf
-jne .LC422
-movl 20(%ebp),%edi
-fldl .LC426
-fmuls -4(%ebp)
-fstps 28(%edi)
-fldl .LC427
-fstpl -32(%ebp)
-flds .LC420
-fstps -4(%ebp)
-fldl .LC428
-fstpl -24(%ebp)
-jmp .LC430
-.LC429:
-flds -4(%ebp)
-fstpl -56(%ebp)
-fldl -32(%ebp)
-faddl -56(%ebp)
-fstpl -24(%ebp)
-fldl -56(%ebp)
-fdivl .LC425
-fstps -4(%ebp)
-.LC430:
-fldl -32(%ebp)
-fcompl -24(%ebp)
-fstsw %ax
-sahf
-jne .LC429
-movl 20(%ebp),%edi
-fldl .LC426
-fmuls -4(%ebp)
-fstps 32(%edi)
-movl 20(%ebp),%edi
-cmpl $0,40(%edi)
-je .LC432
-pushl $.LC434
-movl 20(%ebp),%edi
-pushl (,%edi)
-pushl $s.412
-call printf
-addl $12,%esp
-pushl $.LC435
-movl 20(%ebp),%edi
-pushl 4(%edi)
-pushl $s.412
-call printf
-addl $12,%esp
-pushl $.LC436
-movl 20(%ebp),%edi
-pushl 8(%edi)
-pushl $s.412
-call printf
-addl $12,%esp
-pushl $.LC437
-movl 20(%ebp),%edi
-pushl 12(%edi)
-pushl $s.412
-call printf
-addl $12,%esp
-pushl $.LC438
-movl 20(%ebp),%edi
-pushl 16(%edi)
-pushl $s.412
-call printf
-addl $12,%esp
-pushl $.LC439
-movl 20(%ebp),%edi
-pushl 20(%edi)
-pushl $s.412
-call printf
-addl $12,%esp
-pushl $.LC440
-movl 20(%ebp),%edi
-pushl 24(%edi)
-pushl $s.412
-call printf
-addl $12,%esp
-pushl $.LC439
-movl 20(%ebp),%edi
-flds 28(%edi)
-subl $8,%esp
-fstpl (%esp)
-pushl $s2.413
-call printf
-addl $16,%esp
-pushl $.LC440
-movl 20(%ebp),%edi
-flds 32(%edi)
-subl $8,%esp
-fstpl (%esp)
-pushl $s2.413
-call printf
-addl $16,%esp
-.LC432:
-movl $0,%eax
-.LC410:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf441:
-.size s26,.Lf441-s26
-.data
-.align 1
-.type s4er.443,@object
-s4er.443:
-.byte 115
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s4er.443,9
-.align 1
-.type qs4.444,@object
-.size qs4.444,8
-qs4.444:
-.byte 115
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s4
-.text
-.align 16
-.type s4,@function
-s4:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $36,%esp
-movl $0,-24(%ebp)
-leal qs4.444,%edi
-movl %edi,-16(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-20(%ebp)
-.LC445:
-.LC446:
-movl -20(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-20(%ebp)
-movl -16(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-16(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC445
-movl $0,-4(%ebp)
-.LC448:
-pushl -4(%ebp)
-call svtest
-addl $4,%esp
-movl %eax,%edi
-call zero
-cmpl %eax,%edi
-je .LC452
-movl $1,-24(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC454
-pushl $1
-pushl $s4er.443
-call printf
-addl $8,%esp
-.LC454:
-.LC452:
-.LC449:
-incl -4(%ebp)
-cmpl $3,-4(%ebp)
-jl .LC448
-call setev
-call testev
-cmpl $0,%eax
-je .LC456
-addl $2,-24(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC458
-pushl $2
-pushl $s4er.443
-call printf
-addl $8,%esp
-.LC458:
-.LC456:
-jmp .LC460
-addl $4,-24(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC462
-pushl $4
-pushl $s4er.443
-call printf
-addl $8,%esp
-.LC462:
-.LC460:
-movl $0xffffffff,-8(%ebp)
-movl $1,-12(%ebp)
-movl $0,-4(%ebp)
-jmp .LC467
-.LC464:
-movl -8(%ebp),%edi
-andl %edi,-12(%ebp)
-shrl $1,%edi
-movl %edi,-8(%ebp)
-.LC465:
-incl -4(%ebp)
-.LC467:
-movl -4(%ebp),%edi
-movl 20(%ebp),%esi
-movl (,%esi),%esi
-leal (,%esi,4),%esi
-cmpl %esi,%edi
-jb .LC464
-movl -12(%ebp),%edi
-cmpl $1,%edi
-jne .LC470
-movl -8(%ebp),%edi
-cmpl $0,%edi
-je .LC468
-.LC470:
-addl $8,-24(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC471
-pushl $8
-pushl $s4er.443
-call printf
-addl $8,%esp
-.LC471:
-.LC468:
-movl -24(%ebp),%eax
-.LC442:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf473:
-.size s4,.Lf473-s4
-.bss
-.align 4
-.type k.475,@object
-.size k.475,4
-.lcomm k.475,4
-.globl svtest
-.text
-.align 16
-.type svtest,@function
-svtest:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl 20(%ebp),%edi
-cmpl $0,%edi
-je .LC478
-cmpl $1,%edi
-je .LC479
-cmpl $2,%edi
-je .LC482
-jmp .LC476
-.LC478:
-movl $1978,k.475
-movl $0,-4(%ebp)
-jmp .LC477
-.LC479:
-cmpl $1978,k.475
-je .LC480
-movl $1,-4(%ebp)
-jmp .LC477
-.LC480:
-movl $1929,k.475
-movl $0,-4(%ebp)
-jmp .LC477
-.LC482:
-cmpl $1929,k.475
-je .LC483
-movl $1,-4(%ebp)
-jmp .LC477
-.LC483:
-movl $0,-4(%ebp)
-.LC476:
-.LC477:
-movl -4(%ebp),%eax
-.LC474:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf485:
-.size svtest,.Lf485-svtest
-.bss
-.align 4
-.type k.487,@object
-.size k.487,4
-.lcomm k.487,4
-.globl zero
-.text
-.align 16
-.type zero,@function
-zero:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $2,k.487
-movl $0,-4(%ebp)
-movl -4(%ebp),%eax
-.LC486:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf488:
-.size zero,.Lf488-zero
-.globl testev
-.align 16
-.type testev,@function
-testev:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-cmpl $1066,extvar
-je .LC490
-movl $1,%eax
-jmp .LC489
-.LC490:
-movl $0,%eax
-.LC489:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf492:
-.size testev,.Lf492-testev
-.data
-.align 1
-.type s61er.494,@object
-s61er.494:
-.byte 115
-.byte 54
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s61er.494,10
-.align 1
-.type qs61.495,@object
-.size qs61.495,8
-qs61.495:
-.byte 115
-.byte 54
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.type upper_alpha.496,@object
-upper_alpha.496:
-.byte 65
-.byte 66
-.byte 67
-.byte 68
-.byte 69
-.byte 70
-.byte 71
-.byte 72
-.byte 73
-.byte 74
-.byte 75
-.byte 76
-.byte 77
-.byte 78
-.byte 79
-.byte 80
-.byte 81
-.byte 82
-.byte 83
-.byte 84
-.byte 85
-.byte 86
-.byte 87
-.byte 88
-.byte 89
-.byte 90
-.byte 0
-.size upper_alpha.496,27
-.align 1
-.type lower_alpha.497,@object
-lower_alpha.497:
-.byte 97
-.byte 98
-.byte 99
-.byte 100
-.byte 101
-.byte 102
-.byte 103
-.byte 104
-.byte 105
-.byte 106
-.byte 107
-.byte 108
-.byte 109
-.byte 110
-.byte 111
-.byte 112
-.byte 113
-.byte 114
-.byte 115
-.byte 116
-.byte 117
-.byte 118
-.byte 119
-.byte 120
-.byte 121
-.byte 122
-.byte 0
-.size lower_alpha.497,27
-.align 1
-.type numbers.498,@object
-numbers.498:
-.byte 48
-.byte 49
-.byte 50
-.byte 51
-.byte 52
-.byte 53
-.byte 54
-.byte 55
-.byte 56
-.byte 57
-.byte 0
-.size numbers.498,11
-.align 1
-.type special_characters.499,@object
-special_characters.499:
-.byte 126
-.byte 33
-.byte 34
-.byte 35
-.byte 37
-.byte 38
-.byte 40
-.byte 41
-.byte 95
-.byte 61
-.byte 45
-.byte 94
-.byte 124
-.byte 123
-.byte 125
-.byte 91
-.byte 93
-.byte 43
-.byte 59
-.byte 42
-.byte 58
-.byte 60
-.byte 62
-.byte 44
-.byte 46
-.byte 63
-.byte 47
-.byte 0
-.size special_characters.499,28
-.align 1
-.type extra_special_characters.500,@object
-extra_special_characters.500:
-.byte 10
-.byte 9
-.byte 8
-.byte 13
-.byte 12
-.byte 92
-.byte 39
-.byte 0
-.size extra_special_characters.500,8
-.align 1
-.type blank_and_NUL.501,@object
-blank_and_NUL.501:
-.byte 32
-.byte 0
-.byte 0
-.size blank_and_NUL.501,3
-.globl s61
-.text
-.align 16
-.type s61,@function
-s61:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $60,%esp
-leal qs61.495,%edi
-movl %edi,-36(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-40(%ebp)
-movl $0,-48(%ebp)
-.LC502:
-.LC503:
-movl -40(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-40(%ebp)
-movl -36(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-36(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC502
-movw $-19,-54(%ebp)
-movswl -54(%ebp),%edi
-movl %edi,-60(%ebp)
-cmpl $-19,-60(%ebp)
-je .LC505
-incl -48(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC507
-pushl $1
-pushl $s61er.494
-call printf
-addl $8,%esp
-.LC507:
-.LC505:
-leal upper_alpha.496,%edi
-movl %edi,-28(%ebp)
-leal lower_alpha.497,%edi
-movl %edi,-24(%ebp)
-leal numbers.498,%edi
-movl %edi,-20(%ebp)
-leal special_characters.499,%edi
-movl %edi,-16(%ebp)
-leal extra_special_characters.500,%edi
-movl %edi,-12(%ebp)
-leal blank_and_NUL.501,%edi
-movl %edi,-8(%ebp)
-movl $0,-32(%ebp)
-movl $0,-4(%ebp)
-jmp .LC519
-.LC518:
-movl -4(%ebp),%edi
-leal -28(%ebp),%esi
-leal (%esi,%edi,4),%edi
-movl (,%edi),%esi
-leal 1(%esi),%ebx
-movl %ebx,(,%edi)
-movsbl (,%esi),%edi
-cmpl $0,%edi
-jge .LC521
-movl $1,-32(%ebp)
-.LC521:
-.LC519:
-movl -4(%ebp),%edi
-leal -28(%ebp),%esi
-movl (%esi,%edi,4),%edi
-movsbl (,%edi),%edi
-cmpl $0,%edi
-jne .LC518
-.LC515:
-incl -4(%ebp)
-cmpl $6,-4(%ebp)
-jl .LC519
-cmpl $0,-32(%ebp)
-je .LC523
-addl $2,-48(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC525
-pushl $2
-pushl $s61er.494
-call printf
-addl $8,%esp
-.LC525:
-.LC523:
-movl $1048579,-44(%ebp)
-movl -44(%ebp),%edi
-movl %edi,%esi
-movw %si,-50(%ebp)
-movl %edi,%ebx
-movb %bl,-51(%ebp)
-movswl -50(%ebp),%edi
-cmpl -44(%ebp),%edi
-je .LC530
-cmpl $3,%edi
-jne .LC529
-.LC530:
-movsbl -51(%ebp),%edi
-cmpl -44(%ebp),%edi
-je .LC527
-cmpl $3,%edi
-je .LC527
-.LC529:
-addl $8,-48(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC531
-pushl $8
-pushl $s61er.494
-call printf
-addl $8,%esp
-.LC531:
-.LC527:
-movl -48(%ebp),%eax
-.LC493:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf533:
-.size s61,.Lf533-s61
-.data
-.align 1
-.type s626er.535,@object
-s626er.535:
-.byte 115
-.byte 54
-.byte 50
-.byte 54
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s626er.535,11
-.align 1
-.type qs626.536,@object
-.size qs626.536,8
-qs626.536:
-.byte 115
-.byte 54
-.byte 50
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s626
-.text
-.align 16
-.type s626,@function
-s626:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $128,%esp
-leal qs626.536,%edi
-movl %edi,-56(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-60(%ebp)
-movl $0,-104(%ebp)
-.LC537:
-.LC538:
-movl -60(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-60(%ebp)
-movl -56(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-56(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC537
-flds .LC420
-fstps -36(%ebp)
-movl $1,-64(%ebp)
-movl $1,-40(%ebp)
-movl $0,-4(%ebp)
-jmp .LC543
-.LC540:
-flds .LC544
-fmuls -36(%ebp)
-fstps -36(%ebp)
-movl -40(%ebp),%edi
-leal (,%edi,2),%edi
-orl -64(%ebp),%edi
-movl %edi,-40(%ebp)
-.LC541:
-incl -4(%ebp)
-.LC543:
-movl 20(%ebp),%edi
-movl 12(%edi),%edi
-subl $2,%edi
-cmpl %edi,-4(%ebp)
-jl .LC540
-fildl -40(%ebp)
-fstps -112(%ebp)
-flds -36(%ebp)
-fsubs -112(%ebp)
-fdivs -36(%ebp)
-fstps -36(%ebp)
-fldl .LC425
-movl 20(%ebp),%edi
-fmuls 28(%edi)
-fcomps -36(%ebp)
-fstsw %ax
-sahf
-jae .LC545
-addl $2,-104(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC547
-pushl $2
-pushl $s626er.535
-call printf
-addl $8,%esp
-.LC547:
-.LC545:
-movb $125,-73(%ebp)
-movw $125,-76(%ebp)
-movl $125,-80(%ebp)
-movl $15625,-96(%ebp)
-movl $125,-84(%ebp)
-movl $15625,-100(%ebp)
-movl $125,-68(%ebp)
-movl $15625,-108(%ebp)
-flds .LC549
-fstps -72(%ebp)
-fldl .LC550
-fstpl -92(%ebp)
-fldl .LC551
-fstpl -52(%ebp)
-movl $0,-4(%ebp)
-.LC552:
-movl -4(%ebp),%edi
-leal -32(%ebp),%esi
-movb $0,(%esi,%edi)
-.LC553:
-incl -4(%ebp)
-cmpl $28,-4(%ebp)
-jl .LC552
-movsbl -73(%ebp),%edi
-movl %edi,%esi
-imull %edi,%esi
-cmpl -96(%ebp),%esi
-je .LC556
-movb $1,-32(%ebp)
-.LC556:
-movswl -76(%ebp),%edi
-movsbl -73(%ebp),%esi
-imull %esi,%edi
-cmpl -96(%ebp),%edi
-je .LC558
-movb $1,-31(%ebp)
-.LC558:
-movswl -76(%ebp),%edi
-movl %edi,%esi
-imull %edi,%esi
-cmpl -96(%ebp),%esi
-je .LC561
-movb $1,-30(%ebp)
-.LC561:
-movl -80(%ebp),%edi
-movsbl -73(%ebp),%esi
-imull %esi,%edi
-cmpl -96(%ebp),%edi
-je .LC564
-movb $1,-29(%ebp)
-.LC564:
-movl -80(%ebp),%edi
-movswl -76(%ebp),%esi
-imull %esi,%edi
-cmpl -96(%ebp),%edi
-je .LC567
-movb $1,-28(%ebp)
-.LC567:
-movl -80(%ebp),%edi
-movl %edi,%esi
-imull %edi,%esi
-cmpl -96(%ebp),%esi
-je .LC570
-movb $1,-27(%ebp)
-.LC570:
-movl -84(%ebp),%eax
-movsbl -73(%ebp),%edi
-mull %edi
-cmpl -100(%ebp),%eax
-je .LC573
-movb $1,-26(%ebp)
-.LC573:
-movl -84(%ebp),%eax
-movswl -76(%ebp),%edi
-mull %edi
-cmpl -100(%ebp),%eax
-je .LC576
-movb $1,-25(%ebp)
-.LC576:
-movl -84(%ebp),%eax
-movl -80(%ebp),%edi
-mull %edi
-cmpl -100(%ebp),%eax
-je .LC579
-movb $1,-24(%ebp)
-.LC579:
-movl -84(%ebp),%edi
-movl %edi,%eax
-mull %edi
-cmpl -100(%ebp),%eax
-je .LC582
-movb $1,-23(%ebp)
-.LC582:
-movl -68(%ebp),%edi
-movsbl -73(%ebp),%esi
-imull %esi,%edi
-cmpl -108(%ebp),%edi
-je .LC585
-movb $1,-22(%ebp)
-.LC585:
-movl -68(%ebp),%edi
-movswl -76(%ebp),%esi
-imull %esi,%edi
-cmpl -108(%ebp),%edi
-je .LC588
-movb $1,-21(%ebp)
-.LC588:
-movl -68(%ebp),%edi
-imull -80(%ebp),%edi
-cmpl -108(%ebp),%edi
-je .LC591
-movb $1,-20(%ebp)
-.LC591:
-movl -68(%ebp),%edi
-movl %edi,%eax
-mull -84(%ebp)
-cmpl -100(%ebp),%eax
-je .LC594
-movb $1,-19(%ebp)
-.LC594:
-movl -68(%ebp),%edi
-movl %edi,%esi
-imull %edi,%esi
-cmpl -108(%ebp),%esi
-je .LC597
-movb $1,-18(%ebp)
-.LC597:
-flds -72(%ebp)
-movsbl -73(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC600
-movb $1,-17(%ebp)
-.LC600:
-flds -72(%ebp)
-movswl -76(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC603
-movb $1,-16(%ebp)
-.LC603:
-flds -72(%ebp)
-fildl -80(%ebp)
-fmulp %st(1),%st
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC606
-movb $1,-15(%ebp)
-.LC606:
-movl -84(%ebp),%edi
-flds -72(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC609
-movb $1,-14(%ebp)
-.LC609:
-flds -72(%ebp)
-fildl -68(%ebp)
-fmulp %st(1),%st
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC613
-movb $1,-13(%ebp)
-.LC613:
-flds -72(%ebp)
-fmuls -72(%ebp)
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC616
-movb $1,-12(%ebp)
-.LC616:
-fldl -92(%ebp)
-movsbl -73(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC619
-movb $1,-11(%ebp)
-.LC619:
-fldl -92(%ebp)
-movswl -76(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC622
-movb $1,-10(%ebp)
-.LC622:
-fldl -92(%ebp)
-fimull -80(%ebp)
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC625
-movb $1,-9(%ebp)
-.LC625:
-movl -84(%ebp),%edi
-fldl -92(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fmulp %st(1),%st
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC628
-movb $1,-8(%ebp)
-.LC628:
-fldl -92(%ebp)
-fimull -68(%ebp)
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC631
-movb $1,-7(%ebp)
-.LC631:
-fldl -92(%ebp)
-fmuls -72(%ebp)
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC634
-movb $1,-6(%ebp)
-.LC634:
-fldl -92(%ebp)
-fmull -92(%ebp)
-fldl -52(%ebp)
-fcompp
-fstsw %ax
-sahf
-je .LC637
-movb $1,-5(%ebp)
-.LC637:
-movb $0,-41(%ebp)
-movl $0,-4(%ebp)
-.LC640:
-movsbl -41(%ebp),%edi
-movl -4(%ebp),%esi
-leal -32(%ebp),%ebx
-movsbl (%ebx,%esi),%esi
-leal (%esi,%edi),%edi
-movl %edi,%ebx
-movb %bl,-41(%ebp)
-.LC641:
-incl -4(%ebp)
-cmpl $28,-4(%ebp)
-jl .LC640
-movsbl -41(%ebp),%edi
-cmpl $0,%edi
-je .LC644
-addl $4,-104(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC646
-pushl $4
-pushl $s626er.535
-call printf
-addl $8,%esp
-pushl $.LC648
-call printf
-addl $4,%esp
-movl $0,-4(%ebp)
-.LC649:
-movl -4(%ebp),%edi
-leal -32(%ebp),%esi
-movsbl (%esi,%edi),%edi
-pushl %edi
-pushl $.LC653
-call printf
-addl $8,%esp
-.LC650:
-incl -4(%ebp)
-cmpl $28,-4(%ebp)
-jl .LC649
-pushl $.LC654
-call printf
-addl $4,%esp
-.LC646:
-.LC644:
-movl $32768,-68(%ebp)
-movl -68(%ebp),%edi
-cmpl $0x8000,%edi
-jbe .LC655
-addl $8,-104(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC657
-pushl $8
-pushl $s626er.535
-call printf
-addl $8,%esp
-.LC657:
-.LC655:
-movl -104(%ebp),%eax
-.LC534:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf659:
-.size s626,.Lf659-s626
-.data
-.align 1
-.type s71er.661,@object
-s71er.661:
-.byte 115
-.byte 55
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s71er.661,10
-.align 1
-.type qs71.662,@object
-.size qs71.662,8
-qs71.662:
-.byte 115
-.byte 55
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.type q.663,@object
-.size q.663,1
-q.663:
-.byte 113
-.globl s71
-.text
-.align 16
-.type s71,@function
-s71:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $68,%esp
-leal qs71.662,%edi
-movl %edi,-4(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-8(%ebp)
-movl $0,-12(%ebp)
-.LC664:
-.LC665:
-movl -8(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-8(%ebp)
-movl -4(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-4(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC664
-movsbl .LC669,%edi
-movsbl q.663,%esi
-cmpl %esi,%edi
-je .LC667
-incl -12(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC670
-pushl $1
-pushl $s71er.661
-call printf
-addl $8,%esp
-.LC670:
-.LC667:
-jmp .LC672
-addl $2,-12(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC674
-pushl $2
-pushl $s71er.661
-call printf
-addl $8,%esp
-.LC674:
-.LC672:
-movl $1942,-32(%ebp)
-cmpl $1942,-32(%ebp)
-jne .LC682
-movl -32(%ebp),%edi
-cmpl %edi,-32(%ebp)
-je .LC677
-.LC682:
-addl $4,-12(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC683
-pushl $4
-pushl $s71er.661
-call printf
-addl $8,%esp
-.LC683:
-.LC677:
-pushl $-5
-call McCarthy
-addl $4,%esp
-cmpl $91,%eax
-je .LC685
-addl $8,-12(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC687
-pushl $8
-pushl $s71er.661
-call printf
-addl $8,%esp
-.LC687:
-.LC685:
-movl $2,-56(%ebp)
-movl $3,-60(%ebp)
-leal -60(%ebp),%edi
-movl %edi,-64(%ebp)
-pushl -64(%ebp)
-pushl -56(%ebp)
-call clobber
-addl $8,%esp
-cmpl $2,-56(%ebp)
-jne .LC691
-cmpl $2,-60(%ebp)
-je .LC689
-.LC691:
-addl $16,-12(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC692
-pushl $16
-pushl $s71er.661
-call printf
-addl $8,%esp
-.LC692:
-.LC689:
-movl 20(%ebp),%edi
-flds 32(%edi)
-fstps -68(%ebp)
-flds -68(%ebp)
-fcomps -68(%ebp)
-fstsw %ax
-sahf
-je .LC694
-addl $32,-12(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC696
-pushl $32
-pushl $s71er.661
-call printf
-addl $8,%esp
-.LC696:
-.LC694:
-movl -12(%ebp),%eax
-.LC660:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf698:
-.size s71,.Lf698-s71
-.globl McCarthy
-.align 16
-.type McCarthy,@function
-McCarthy:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-cmpl $100,20(%ebp)
-jle .LC700
-movl 20(%ebp),%edi
-movl %edi,%eax
-subl $10,%eax
-jmp .LC699
-.LC700:
-movl 20(%ebp),%edi
-leal 11(%edi),%edi
-pushl %edi
-call McCarthy
-addl $4,%esp
-movl %eax,%edi
-pushl %edi
-call McCarthy
-addl $4,%esp
-movl %eax,%edi
-.LC699:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf702:
-.size McCarthy,.Lf702-McCarthy
-.globl clobber
-.align 16
-.type clobber,@function
-clobber:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl $3,20(%ebp)
-movl 24(%ebp),%edi
-movl $2,(,%edi)
-movl $0,%eax
-.LC703:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf704:
-.size clobber,.Lf704-clobber
-.data
-.align 1
-.type f.706,@object
-f.706:
-.byte 76
-.byte 111
-.byte 99
-.byte 97
-.byte 108
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.size f.706,17
-.align 1
-.type s714er.707,@object
-s714er.707:
-.byte 115
-.byte 55
-.byte 49
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s714er.707,11
-.align 1
-.type qs714.708,@object
-.size qs714.708,8
-qs714.708:
-.byte 115
-.byte 55
-.byte 49
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s714
-.text
-.align 16
-.type s714,@function
-s714:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $248,%esp
-leal qs714.708,%edi
-movl %edi,-68(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%esi
-movl %esi,-72(%ebp)
-movl $0,-76(%ebp)
-movl $0,-8(%ebp)
-movl 48(%edi),%edi
-movl %edi,-4(%ebp)
-.LC709:
-.LC710:
-movl -72(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-72(%ebp)
-movl -68(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-68(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC709
-movb $5,-9(%ebp)
-movb $2,-25(%ebp)
-movb -25(%ebp),%bl
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC712
-movl $1,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC714
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC714:
-.LC712:
-movb $5,-9(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC716
-movl $2,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC718
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC718:
-.LC716:
-movb $5,-9(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC720
-movl $3,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC722
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC722:
-.LC720:
-movb $5,-9(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC724
-movl $4,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC726
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC726:
-.LC724:
-movb $5,-9(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC728
-movl $5,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC730
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC730:
-.LC728:
-movb $5,-9(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC732
-movl $6,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC734
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC734:
-.LC732:
-movb $5,-9(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC736
-movl $7,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC738
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC738:
-.LC736:
-movw $5,-12(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC740
-movl $8,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC742
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC742:
-.LC740:
-movw $5,-12(%ebp)
-movw $2,-28(%ebp)
-movw -28(%ebp),%di
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC744
-movl $9,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC746
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC746:
-.LC744:
-movw $5,-12(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC748
-movl $10,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC750
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC750:
-.LC748:
-movw $5,-12(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC752
-movl $11,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC754
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC754:
-.LC752:
-movw $5,-12(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC756
-movl $12,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC758
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC758:
-.LC756:
-movw $5,-12(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC760
-movl $13,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC762
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC762:
-.LC760:
-movw $5,-12(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC764
-movl $14,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC766
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC766:
-.LC764:
-movl $5,-16(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC768
-movl $15,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC770
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC770:
-.LC768:
-movl $5,-16(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC772
-movl $16,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC774
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC774:
-.LC772:
-movl $5,-16(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC776
-movl $17,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC778
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC778:
-.LC776:
-movl $5,-16(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC780
-movl $18,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC782
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC782:
-.LC780:
-movl $5,-16(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC784
-movl $19,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC786
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC786:
-.LC784:
-movl $5,-16(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -56(%ebp)
-fistpl -16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC788
-movl $20,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC790
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC790:
-.LC788:
-movl $5,-16(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fistpl -16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC792
-movl $21,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC794
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC794:
-.LC792:
-movl $5,-20(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC796
-movl $22,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC798
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC798:
-.LC796:
-movl $5,-20(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC800
-movl $23,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC802
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC802:
-.LC800:
-movl $5,-20(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC804
-movl $24,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC806
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC806:
-.LC804:
-movl $5,-20(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC808
-movl $25,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC810
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC810:
-.LC808:
-movl $5,-20(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC812
-movl $26,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC814
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC814:
-.LC812:
-movl $5,-20(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -56(%ebp)
-fistpl -20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC816
-movl $27,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC818
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC818:
-.LC816:
-movl $5,-20(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fistpl -20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC820
-movl $28,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC822
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC822:
-.LC820:
-movl $5,-24(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC824
-movl $29,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC826
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC826:
-.LC824:
-movl $5,-24(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC828
-movl $30,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC830
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC830:
-.LC828:
-movl $5,-24(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC832
-movl $31,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC834
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC834:
-.LC832:
-movl $5,-24(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC836
-movl $32,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC838
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC838:
-.LC836:
-movl $5,-24(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC840
-movl $33,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC842
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC842:
-.LC840:
-movl $5,-24(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds .LC847
-fcomps -56(%ebp)
-fstsw %ax
-sahf
-ja .LC845
-flds -56(%ebp)
-fsubs .LC847
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-80(%ebp)
-jmp .LC846
-.LC845:
-flds -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-80(%ebp)
-.LC846:
-movl -80(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC848
-movl $34,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC850
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC850:
-.LC848:
-movl $5,-24(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl .LC855
-fcompl -64(%ebp)
-fstsw %ax
-sahf
-ja .LC853
-fldl -64(%ebp)
-fsubl .LC855
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-92(%ebp)
-jmp .LC854
-.LC853:
-fldl -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-92(%ebp)
-.LC854:
-movl -92(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC856
-movl $35,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC858
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC858:
-.LC856:
-flds .LC860
-fstps -44(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstps -44(%ebp)
-flds .LC544
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC861
-movl $36,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC863
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC863:
-.LC861:
-flds .LC860
-fstps -44(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstps -44(%ebp)
-flds .LC544
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC865
-movl $37,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC867
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC867:
-.LC865:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-32(%ebp)
-fildl -32(%ebp)
-fstps -44(%ebp)
-flds .LC544
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC869
-movl $38,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC871
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC871:
-.LC869:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-36(%ebp)
-fildl -36(%ebp)
-fstps -44(%ebp)
-flds .LC544
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC873
-movl $39,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC875
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC875:
-.LC873:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fstps -44(%ebp)
-flds .LC544
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC877
-movl $40,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC879
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC879:
-.LC877:
-flds .LC860
-fstps -44(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -56(%ebp)
-fstps -44(%ebp)
-flds .LC544
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC881
-movl $41,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC883
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC883:
-.LC881:
-flds .LC860
-fstps -44(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fstps -44(%ebp)
-flds .LC544
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC885
-movl $42,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC887
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC887:
-.LC885:
-fldl .LC889
-fstpl -52(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstpl -52(%ebp)
-fldl .LC425
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC890
-movl $43,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC892
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC892:
-.LC890:
-fldl .LC889
-fstpl -52(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstpl -52(%ebp)
-fldl .LC425
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC894
-movl $44,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC896
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC896:
-.LC894:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-32(%ebp)
-fildl -32(%ebp)
-fstpl -52(%ebp)
-fldl .LC425
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC898
-movl $45,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC900
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC900:
-.LC898:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-36(%ebp)
-fildl -36(%ebp)
-fstpl -52(%ebp)
-fldl .LC425
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC902
-movl $46,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC904
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC904:
-.LC902:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC425
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC906
-movl $47,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC908
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC908:
-.LC906:
-fldl .LC889
-fstpl -52(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -56(%ebp)
-fstpl -52(%ebp)
-fldl .LC425
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC910
-movl $48,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC912
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC912:
-.LC910:
-fldl .LC889
-fstpl -52(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fstpl -52(%ebp)
-fldl .LC425
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC914
-movl $49,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC916
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC916:
-.LC914:
-movb $5,-9(%ebp)
-movb $2,-25(%ebp)
-movsbl -9(%ebp),%edi
-movsbl -25(%ebp),%esi
-leal (%esi,%edi),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $7,%edi
-je .LC918
-movl $50,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC920
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC920:
-.LC918:
-movb $5,-9(%ebp)
-movw $2,-28(%ebp)
-movsbl -9(%ebp),%edi
-movswl -28(%ebp),%esi
-leal (%esi,%edi),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $7,%edi
-je .LC922
-movl $51,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC924
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC924:
-.LC922:
-movb $5,-9(%ebp)
-movl $2,-32(%ebp)
-movsbl -9(%ebp),%edi
-movl -32(%ebp),%esi
-leal (%esi,%edi),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $7,%edi
-je .LC926
-movl $52,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC928
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC928:
-.LC926:
-movb $5,-9(%ebp)
-movl $2,-36(%ebp)
-movsbl -9(%ebp),%edi
-movl -36(%ebp),%esi
-leal (%esi,%edi),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $7,%edi
-je .LC930
-movl $53,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC932
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC932:
-.LC930:
-movb $5,-9(%ebp)
-movl $2,-40(%ebp)
-movsbl -9(%ebp),%edi
-movl -40(%ebp),%esi
-leal (%esi,%edi),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $7,%edi
-je .LC934
-movl $54,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC936
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC936:
-.LC934:
-movb $5,-9(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movsbl -9(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fadds -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $7,%edi
-je .LC938
-movl $55,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC940
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC940:
-.LC938:
-movb $5,-9(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movsbl -9(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddl -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $7,%edi
-je .LC942
-movl $56,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC944
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC944:
-.LC942:
-movw $5,-12(%ebp)
-movb $2,-25(%ebp)
-movswl -12(%ebp),%edi
-movsbl -25(%ebp),%esi
-leal (%esi,%edi),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $7,%edi
-je .LC946
-movl $57,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC948
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC948:
-.LC946:
-movw $5,-12(%ebp)
-movw $2,-28(%ebp)
-movswl -12(%ebp),%edi
-movswl -28(%ebp),%esi
-leal (%esi,%edi),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $7,%edi
-je .LC950
-movl $58,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC952
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC952:
-.LC950:
-movw $5,-12(%ebp)
-movl $2,-32(%ebp)
-movswl -12(%ebp),%edi
-movl -32(%ebp),%esi
-leal (%esi,%edi),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $7,%edi
-je .LC954
-movl $59,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC956
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC956:
-.LC954:
-movw $5,-12(%ebp)
-movl $2,-36(%ebp)
-movswl -12(%ebp),%edi
-movl -36(%ebp),%esi
-leal (%esi,%edi),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $7,%edi
-je .LC958
-movl $60,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC960
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC960:
-.LC958:
-movw $5,-12(%ebp)
-movl $2,-40(%ebp)
-movswl -12(%ebp),%edi
-movl -40(%ebp),%esi
-leal (%esi,%edi),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $7,%edi
-je .LC962
-movl $61,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC964
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC964:
-.LC962:
-movw $5,-12(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movswl -12(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fadds -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $7,%edi
-je .LC966
-movl $62,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC968
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC968:
-.LC966:
-movw $5,-12(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movswl -12(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddl -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $7,%edi
-je .LC970
-movl $63,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC972
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC972:
-.LC970:
-movl $5,-16(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-addl %edi,-16(%ebp)
-cmpl $7,-16(%ebp)
-je .LC974
-movl $64,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC976
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC976:
-.LC974:
-movl $5,-16(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-addl %edi,-16(%ebp)
-cmpl $7,-16(%ebp)
-je .LC978
-movl $65,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC980
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC980:
-.LC978:
-movl $5,-16(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-addl %edi,-16(%ebp)
-cmpl $7,-16(%ebp)
-je .LC982
-movl $66,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC984
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC984:
-.LC982:
-movl $5,-16(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-addl %edi,-16(%ebp)
-cmpl $7,-16(%ebp)
-je .LC986
-movl $67,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC988
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC988:
-.LC986:
-movl $5,-16(%ebp)
-movl $2,-40(%ebp)
-movl -16(%ebp),%edi
-movl -40(%ebp),%esi
-leal (%esi,%edi),%edi
-movl %edi,-16(%ebp)
-cmpl $7,-16(%ebp)
-je .LC990
-movl $68,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC992
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC992:
-.LC990:
-movl $5,-16(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fildl -16(%ebp)
-fadds -56(%ebp)
-fistpl -16(%ebp)
-cmpl $7,-16(%ebp)
-je .LC994
-movl $69,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC996
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC996:
-.LC994:
-movl $5,-16(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fildl -16(%ebp)
-faddl -64(%ebp)
-fistpl -16(%ebp)
-cmpl $7,-16(%ebp)
-je .LC998
-movl $70,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1000
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1000:
-.LC998:
-movl $5,-20(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-addl %edi,-20(%ebp)
-cmpl $7,-20(%ebp)
-je .LC1002
-movl $71,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1004
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1004:
-.LC1002:
-movl $5,-20(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-addl %edi,-20(%ebp)
-cmpl $7,-20(%ebp)
-je .LC1006
-movl $72,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1008
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1008:
-.LC1006:
-movl $5,-20(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-addl %edi,-20(%ebp)
-cmpl $7,-20(%ebp)
-je .LC1010
-movl $73,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1012
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1012:
-.LC1010:
-movl $5,-20(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-addl %edi,-20(%ebp)
-cmpl $7,-20(%ebp)
-je .LC1014
-movl $74,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1016
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1016:
-.LC1014:
-movl $5,-20(%ebp)
-movl $2,-40(%ebp)
-movl -20(%ebp),%edi
-movl -40(%ebp),%esi
-leal (%esi,%edi),%edi
-movl %edi,-20(%ebp)
-cmpl $7,-20(%ebp)
-je .LC1018
-movl $75,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1020
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1020:
-.LC1018:
-movl $5,-20(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fildl -20(%ebp)
-fadds -56(%ebp)
-fistpl -20(%ebp)
-cmpl $7,-20(%ebp)
-je .LC1022
-movl $76,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1024
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1024:
-.LC1022:
-movl $5,-20(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fildl -20(%ebp)
-faddl -64(%ebp)
-fistpl -20(%ebp)
-cmpl $7,-20(%ebp)
-je .LC1026
-movl $77,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1028
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1028:
-.LC1026:
-movl $5,-24(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-add %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $7,%edi
-je .LC1030
-movl $78,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1032
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1032:
-.LC1030:
-movl $5,-24(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-add %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $7,%edi
-je .LC1034
-movl $79,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1036
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1036:
-.LC1034:
-movl $5,-24(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-add %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $7,%edi
-je .LC1038
-movl $80,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1040
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1040:
-.LC1038:
-movl $5,-24(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-add %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $7,%edi
-je .LC1042
-movl $81,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1044
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1044:
-.LC1042:
-movl $5,-24(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-add %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $7,%edi
-je .LC1046
-movl $82,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1048
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1048:
-.LC1046:
-movl $5,-24(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movl -24(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-fadds -56(%ebp)
-fstps -128(%ebp)
-flds .LC847
-fcomps -128(%ebp)
-fstsw %ax
-sahf
-ja .LC1051
-flds -128(%ebp)
-fsubs .LC847
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-124(%ebp)
-jmp .LC1052
-.LC1051:
-flds -128(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-124(%ebp)
-.LC1052:
-movl -124(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $7,%edi
-je .LC1053
-movl $83,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1055
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1055:
-.LC1053:
-movl $5,-24(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movl -24(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-faddl -64(%ebp)
-fstpl -144(%ebp)
-fldl .LC855
-fcompl -144(%ebp)
-fstsw %ax
-sahf
-ja .LC1058
-fldl -144(%ebp)
-fsubl .LC855
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-136(%ebp)
-jmp .LC1059
-.LC1058:
-fldl -144(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-136(%ebp)
-.LC1059:
-movl -136(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $7,%edi
-je .LC1060
-movl $84,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1062
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1062:
-.LC1060:
-flds .LC860
-fstps -44(%ebp)
-movb $2,-25(%ebp)
-flds -44(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fstps -44(%ebp)
-flds .LC1066
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1064
-movl $85,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1067
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1067:
-.LC1064:
-flds .LC860
-fstps -44(%ebp)
-movw $2,-28(%ebp)
-flds -44(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fstps -44(%ebp)
-flds .LC1066
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1069
-movl $86,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1071
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1071:
-.LC1069:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-32(%ebp)
-flds -44(%ebp)
-fildl -32(%ebp)
-faddp %st(1),%st
-fstps -44(%ebp)
-flds .LC1066
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1073
-movl $87,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1075
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1075:
-.LC1073:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-36(%ebp)
-flds -44(%ebp)
-fildl -36(%ebp)
-faddp %st(1),%st
-fstps -44(%ebp)
-flds .LC1066
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1077
-movl $88,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1079
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1079:
-.LC1077:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-flds -44(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fstps -44(%ebp)
-flds .LC1066
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1081
-movl $89,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1083
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1083:
-.LC1081:
-flds .LC860
-fstps -44(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -44(%ebp)
-fadds -56(%ebp)
-fstps -44(%ebp)
-flds .LC1066
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1085
-movl $90,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1087
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1087:
-.LC1085:
-flds .LC860
-fstps -44(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-flds -44(%ebp)
-faddl -64(%ebp)
-fstps -44(%ebp)
-flds .LC1066
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1089
-movl $91,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1091
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1091:
-.LC1089:
-fldl .LC889
-fstpl -52(%ebp)
-movb $2,-25(%ebp)
-fldl -52(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1095
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1093
-movl $92,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1096
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1096:
-.LC1093:
-fldl .LC889
-fstpl -52(%ebp)
-movw $2,-28(%ebp)
-fldl -52(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1095
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1098
-movl $93,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1100
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1100:
-.LC1098:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-32(%ebp)
-fldl -52(%ebp)
-fiaddl -32(%ebp)
-fstpl -52(%ebp)
-fldl .LC1095
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1102
-movl $94,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1104
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1104:
-.LC1102:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-36(%ebp)
-fldl -52(%ebp)
-fiaddl -36(%ebp)
-fstpl -52(%ebp)
-fldl .LC1095
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1106
-movl $95,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1108
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1108:
-.LC1106:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-fldl -52(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-faddp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1095
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1110
-movl $96,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1112
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1112:
-.LC1110:
-fldl .LC889
-fstpl -52(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fldl -52(%ebp)
-fadds -56(%ebp)
-fstpl -52(%ebp)
-fldl .LC1095
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1114
-movl $97,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1116
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1116:
-.LC1114:
-fldl .LC889
-fstpl -52(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -52(%ebp)
-faddl -64(%ebp)
-fstpl -52(%ebp)
-fldl .LC1095
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1118
-movl $98,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1120
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1120:
-.LC1118:
-movb $5,-9(%ebp)
-movb $2,-25(%ebp)
-movsbl -9(%ebp),%edi
-movsbl -25(%ebp),%esi
-subl %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $3,%edi
-je .LC1122
-movl $99,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1124
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1124:
-.LC1122:
-movb $5,-9(%ebp)
-movw $2,-28(%ebp)
-movsbl -9(%ebp),%edi
-movswl -28(%ebp),%esi
-subl %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $3,%edi
-je .LC1126
-movl $100,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1128
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1128:
-.LC1126:
-movb $5,-9(%ebp)
-movl $2,-32(%ebp)
-movsbl -9(%ebp),%edi
-subl -32(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $3,%edi
-je .LC1130
-movl $101,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1132
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1132:
-.LC1130:
-movb $5,-9(%ebp)
-movl $2,-36(%ebp)
-movsbl -9(%ebp),%edi
-subl -36(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $3,%edi
-je .LC1134
-movl $102,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1136
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1136:
-.LC1134:
-movb $5,-9(%ebp)
-movl $2,-40(%ebp)
-movsbl -9(%ebp),%edi
-subl -40(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $3,%edi
-je .LC1138
-movl $103,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1140
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1140:
-.LC1138:
-movb $5,-9(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movsbl -9(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fsubs -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $3,%edi
-je .LC1142
-movl $104,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1144
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1144:
-.LC1142:
-movb $5,-9(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movsbl -9(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fsubl -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $3,%edi
-je .LC1146
-movl $105,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1148
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1148:
-.LC1146:
-movw $5,-12(%ebp)
-movb $2,-25(%ebp)
-movswl -12(%ebp),%edi
-movsbl -25(%ebp),%esi
-subl %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $3,%edi
-je .LC1150
-movl $106,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1152
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1152:
-.LC1150:
-movw $5,-12(%ebp)
-movw $2,-28(%ebp)
-movswl -12(%ebp),%edi
-movswl -28(%ebp),%esi
-subl %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $3,%edi
-je .LC1154
-movl $107,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1156
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1156:
-.LC1154:
-movw $5,-12(%ebp)
-movl $2,-32(%ebp)
-movswl -12(%ebp),%edi
-subl -32(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $3,%edi
-je .LC1158
-movl $108,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1160
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1160:
-.LC1158:
-movw $5,-12(%ebp)
-movl $2,-36(%ebp)
-movswl -12(%ebp),%edi
-subl -36(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $3,%edi
-je .LC1162
-movl $109,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1164
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1164:
-.LC1162:
-movw $5,-12(%ebp)
-movl $2,-40(%ebp)
-movswl -12(%ebp),%edi
-subl -40(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $3,%edi
-je .LC1166
-movl $110,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1168
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1168:
-.LC1166:
-movw $5,-12(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movswl -12(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fsubs -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $3,%edi
-je .LC1170
-movl $111,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1172
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1172:
-.LC1170:
-movw $5,-12(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movswl -12(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fsubl -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $3,%edi
-je .LC1174
-movl $112,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1176
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1176:
-.LC1174:
-movl $5,-16(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-sub %edi,-16(%ebp)
-cmpl $3,-16(%ebp)
-je .LC1178
-movl $113,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1180
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1180:
-.LC1178:
-movl $5,-16(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-sub %edi,-16(%ebp)
-cmpl $3,-16(%ebp)
-je .LC1182
-movl $114,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1184
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1184:
-.LC1182:
-movl $5,-16(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-sub %edi,-16(%ebp)
-cmpl $3,-16(%ebp)
-je .LC1186
-movl $115,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1188
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1188:
-.LC1186:
-movl $5,-16(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-sub %edi,-16(%ebp)
-cmpl $3,-16(%ebp)
-je .LC1190
-movl $116,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1192
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1192:
-.LC1190:
-movl $5,-16(%ebp)
-movl $2,-40(%ebp)
-movl -16(%ebp),%edi
-subl -40(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $3,-16(%ebp)
-je .LC1194
-movl $117,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1196
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1196:
-.LC1194:
-movl $5,-16(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fildl -16(%ebp)
-fsubs -56(%ebp)
-fistpl -16(%ebp)
-cmpl $3,-16(%ebp)
-je .LC1198
-movl $118,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1200
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1200:
-.LC1198:
-movl $5,-16(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fisubrl -16(%ebp)
-fistpl -16(%ebp)
-cmpl $3,-16(%ebp)
-je .LC1202
-movl $119,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1204
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1204:
-.LC1202:
-movl $5,-20(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-sub %edi,-20(%ebp)
-cmpl $3,-20(%ebp)
-je .LC1206
-movl $120,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1208
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1208:
-.LC1206:
-movl $5,-20(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-sub %edi,-20(%ebp)
-cmpl $3,-20(%ebp)
-je .LC1210
-movl $121,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1212
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1212:
-.LC1210:
-movl $5,-20(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-sub %edi,-20(%ebp)
-cmpl $3,-20(%ebp)
-je .LC1214
-movl $122,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1216
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1216:
-.LC1214:
-movl $5,-20(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-sub %edi,-20(%ebp)
-cmpl $3,-20(%ebp)
-je .LC1218
-movl $123,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1220
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1220:
-.LC1218:
-movl $5,-20(%ebp)
-movl $2,-40(%ebp)
-movl -20(%ebp),%edi
-subl -40(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $3,-20(%ebp)
-je .LC1222
-movl $124,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1224
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1224:
-.LC1222:
-movl $5,-20(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fildl -20(%ebp)
-fsubs -56(%ebp)
-fistpl -20(%ebp)
-cmpl $3,-20(%ebp)
-je .LC1226
-movl $125,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1228
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1228:
-.LC1226:
-movl $5,-20(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fisubrl -20(%ebp)
-fistpl -20(%ebp)
-cmpl $3,-20(%ebp)
-je .LC1230
-movl $126,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1232
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1232:
-.LC1230:
-movl $5,-24(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%edi
-sub %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $3,%edi
-je .LC1234
-movl $127,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1236
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1236:
-.LC1234:
-movl $5,-24(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%edi
-sub %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $3,%edi
-je .LC1238
-movl $128,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1240
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1240:
-.LC1238:
-movl $5,-24(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%edi
-sub %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $3,%edi
-je .LC1242
-movl $129,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1244
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1244:
-.LC1242:
-movl $5,-24(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%edi
-sub %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $3,%edi
-je .LC1246
-movl $130,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1248
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1248:
-.LC1246:
-movl $5,-24(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-sub %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $3,%edi
-je .LC1250
-movl $131,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1252
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1252:
-.LC1250:
-movl $5,-24(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movl -24(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-fsubs -56(%ebp)
-fstps -160(%ebp)
-flds .LC847
-fcomps -160(%ebp)
-fstsw %ax
-sahf
-ja .LC1255
-flds -160(%ebp)
-fsubs .LC847
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-156(%ebp)
-jmp .LC1256
-.LC1255:
-flds -160(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-156(%ebp)
-.LC1256:
-movl -156(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $3,%edi
-je .LC1257
-movl $132,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1259
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1259:
-.LC1257:
-movl $5,-24(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movl -24(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fsubl -64(%ebp)
-fstpl -176(%ebp)
-fldl .LC855
-fcompl -176(%ebp)
-fstsw %ax
-sahf
-ja .LC1262
-fldl -176(%ebp)
-fsubl .LC855
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-168(%ebp)
-jmp .LC1263
-.LC1262:
-fldl -176(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-168(%ebp)
-.LC1263:
-movl -168(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $3,%edi
-je .LC1264
-movl $133,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1266
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1266:
-.LC1264:
-flds .LC860
-fstps -44(%ebp)
-movb $2,-25(%ebp)
-flds -44(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fsubp %st(1),%st
-fstps -44(%ebp)
-flds .LC1270
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1268
-movl $134,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1271
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1271:
-.LC1268:
-flds .LC860
-fstps -44(%ebp)
-movw $2,-28(%ebp)
-flds -44(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fsubp %st(1),%st
-fstps -44(%ebp)
-flds .LC1270
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1273
-movl $135,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1275
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1275:
-.LC1273:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-32(%ebp)
-flds -44(%ebp)
-fildl -32(%ebp)
-fsubp %st(1),%st
-fstps -44(%ebp)
-flds .LC1270
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1277
-movl $136,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1279
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1279:
-.LC1277:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-36(%ebp)
-flds -44(%ebp)
-fildl -36(%ebp)
-fsubp %st(1),%st
-fstps -44(%ebp)
-flds .LC1270
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1281
-movl $137,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1283
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1283:
-.LC1281:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-flds -44(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-fsubp %st(1),%st
-fstps -44(%ebp)
-flds .LC1270
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1285
-movl $138,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1287
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1287:
-.LC1285:
-flds .LC860
-fstps -44(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -44(%ebp)
-fsubs -56(%ebp)
-fstps -44(%ebp)
-flds .LC1270
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1289
-movl $139,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1291
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1291:
-.LC1289:
-flds .LC860
-fstps -44(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-flds -44(%ebp)
-fsubl -64(%ebp)
-fstps -44(%ebp)
-flds .LC1270
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1293
-movl $140,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1295
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1295:
-.LC1293:
-fldl .LC889
-fstpl -52(%ebp)
-movb $2,-25(%ebp)
-fldl -52(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fsubp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1299
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1297
-movl $141,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1300
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1300:
-.LC1297:
-fldl .LC889
-fstpl -52(%ebp)
-movw $2,-28(%ebp)
-fldl -52(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fsubp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1299
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1302
-movl $142,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1304
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1304:
-.LC1302:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-32(%ebp)
-fldl -52(%ebp)
-fisubl -32(%ebp)
-fstpl -52(%ebp)
-fldl .LC1299
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1306
-movl $143,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1308
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1308:
-.LC1306:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-36(%ebp)
-fldl -52(%ebp)
-fisubl -36(%ebp)
-fstpl -52(%ebp)
-fldl .LC1299
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1310
-movl $144,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1312
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1312:
-.LC1310:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-fldl -52(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fsubp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1299
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1314
-movl $145,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1316
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1316:
-.LC1314:
-fldl .LC889
-fstpl -52(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fldl -52(%ebp)
-fsubs -56(%ebp)
-fstpl -52(%ebp)
-fldl .LC1299
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1318
-movl $146,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1320
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1320:
-.LC1318:
-fldl .LC889
-fstpl -52(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -52(%ebp)
-fsubl -64(%ebp)
-fstpl -52(%ebp)
-fldl .LC1299
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1322
-movl $147,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1324
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1324:
-.LC1322:
-movb $5,-9(%ebp)
-movb $2,-25(%ebp)
-movsbl -9(%ebp),%edi
-movsbl -25(%ebp),%esi
-imull %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $10,%edi
-je .LC1326
-movl $148,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1328
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1328:
-.LC1326:
-movb $5,-9(%ebp)
-movw $2,-28(%ebp)
-movsbl -9(%ebp),%edi
-movswl -28(%ebp),%esi
-imull %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $10,%edi
-je .LC1330
-movl $149,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1332
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1332:
-.LC1330:
-movb $5,-9(%ebp)
-movl $2,-32(%ebp)
-movsbl -9(%ebp),%edi
-imull -32(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $10,%edi
-je .LC1334
-movl $150,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1336
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1336:
-.LC1334:
-movb $5,-9(%ebp)
-movl $2,-36(%ebp)
-movsbl -9(%ebp),%edi
-imull -36(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $10,%edi
-je .LC1338
-movl $151,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1340
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1340:
-.LC1338:
-movb $5,-9(%ebp)
-movl $2,-40(%ebp)
-movsbl -9(%ebp),%edi
-movl %edi,%eax
-mull -40(%ebp)
-movl %eax,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $10,%edi
-je .LC1342
-movl $152,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1344
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1344:
-.LC1342:
-movb $5,-9(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movsbl -9(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmuls -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $10,%edi
-je .LC1346
-movl $153,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1348
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1348:
-.LC1346:
-movb $5,-9(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movsbl -9(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmull -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $10,%edi
-je .LC1350
-movl $154,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1352
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1352:
-.LC1350:
-movw $5,-12(%ebp)
-movb $2,-25(%ebp)
-movswl -12(%ebp),%edi
-movsbl -25(%ebp),%esi
-imull %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $10,%edi
-je .LC1354
-movl $155,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1356
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1356:
-.LC1354:
-movw $5,-12(%ebp)
-movw $2,-28(%ebp)
-movswl -12(%ebp),%edi
-movswl -28(%ebp),%esi
-imull %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $10,%edi
-je .LC1358
-movl $156,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1360
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1360:
-.LC1358:
-movw $5,-12(%ebp)
-movl $2,-32(%ebp)
-movswl -12(%ebp),%edi
-imull -32(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $10,%edi
-je .LC1362
-movl $157,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1364
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1364:
-.LC1362:
-movw $5,-12(%ebp)
-movl $2,-36(%ebp)
-movswl -12(%ebp),%edi
-imull -36(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $10,%edi
-je .LC1366
-movl $158,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1368
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1368:
-.LC1366:
-movw $5,-12(%ebp)
-movl $2,-40(%ebp)
-movswl -12(%ebp),%edi
-movl %edi,%eax
-mull -40(%ebp)
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $10,%edi
-je .LC1370
-movl $159,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1372
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1372:
-.LC1370:
-movw $5,-12(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movswl -12(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmuls -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $10,%edi
-je .LC1374
-movl $160,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1376
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1376:
-.LC1374:
-movw $5,-12(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movswl -12(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmull -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $10,%edi
-je .LC1378
-movl $161,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1380
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1380:
-.LC1378:
-movl $5,-16(%ebp)
-movb $2,-25(%ebp)
-movl -16(%ebp),%edi
-movsbl -25(%ebp),%esi
-imull %esi,%edi
-movl %edi,-16(%ebp)
-cmpl $10,-16(%ebp)
-je .LC1382
-movl $162,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1384
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1384:
-.LC1382:
-movl $5,-16(%ebp)
-movw $2,-28(%ebp)
-movl -16(%ebp),%edi
-movswl -28(%ebp),%esi
-imull %esi,%edi
-movl %edi,-16(%ebp)
-cmpl $10,-16(%ebp)
-je .LC1386
-movl $163,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1388
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1388:
-.LC1386:
-movl $5,-16(%ebp)
-movl $2,-32(%ebp)
-movl -16(%ebp),%edi
-imull -32(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $10,-16(%ebp)
-je .LC1390
-movl $164,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1392
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1392:
-.LC1390:
-movl $5,-16(%ebp)
-movl $2,-36(%ebp)
-movl -16(%ebp),%edi
-imull -36(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $10,-16(%ebp)
-je .LC1394
-movl $165,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1396
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1396:
-.LC1394:
-movl $5,-16(%ebp)
-movl $2,-40(%ebp)
-movl -16(%ebp),%edi
-movl %edi,%eax
-mull -40(%ebp)
-movl %eax,%edi
-movl %edi,-16(%ebp)
-cmpl $10,-16(%ebp)
-je .LC1398
-movl $166,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1400
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1400:
-.LC1398:
-movl $5,-16(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fildl -16(%ebp)
-fmuls -56(%ebp)
-fistpl -16(%ebp)
-cmpl $10,-16(%ebp)
-je .LC1402
-movl $167,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1404
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1404:
-.LC1402:
-movl $5,-16(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fildl -16(%ebp)
-fmull -64(%ebp)
-fistpl -16(%ebp)
-cmpl $10,-16(%ebp)
-je .LC1406
-movl $168,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1408
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1408:
-.LC1406:
-movl $5,-20(%ebp)
-movb $2,-25(%ebp)
-movl -20(%ebp),%edi
-movsbl -25(%ebp),%esi
-imull %esi,%edi
-movl %edi,-20(%ebp)
-cmpl $10,-20(%ebp)
-je .LC1410
-movl $169,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1412
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1412:
-.LC1410:
-movl $5,-20(%ebp)
-movw $2,-28(%ebp)
-movl -20(%ebp),%edi
-movswl -28(%ebp),%esi
-imull %esi,%edi
-movl %edi,-20(%ebp)
-cmpl $10,-20(%ebp)
-je .LC1414
-movl $170,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1416
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1416:
-.LC1414:
-movl $5,-20(%ebp)
-movl $2,-32(%ebp)
-movl -20(%ebp),%edi
-imull -32(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $10,-20(%ebp)
-je .LC1418
-movl $171,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1420
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1420:
-.LC1418:
-movl $5,-20(%ebp)
-movl $2,-36(%ebp)
-movl -20(%ebp),%edi
-imull -36(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $10,-20(%ebp)
-je .LC1422
-movl $172,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1424
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1424:
-.LC1422:
-movl $5,-20(%ebp)
-movl $2,-40(%ebp)
-movl -20(%ebp),%edi
-movl %edi,%eax
-mull -40(%ebp)
-movl %eax,%edi
-movl %edi,-20(%ebp)
-cmpl $10,-20(%ebp)
-je .LC1426
-movl $173,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1428
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1428:
-.LC1426:
-movl $5,-20(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fildl -20(%ebp)
-fmuls -56(%ebp)
-fistpl -20(%ebp)
-cmpl $10,-20(%ebp)
-je .LC1430
-movl $174,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1432
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1432:
-.LC1430:
-movl $5,-20(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fildl -20(%ebp)
-fmull -64(%ebp)
-fistpl -20(%ebp)
-cmpl $10,-20(%ebp)
-je .LC1434
-movl $175,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1436
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1436:
-.LC1434:
-movl $5,-24(%ebp)
-movb $2,-25(%ebp)
-movl -24(%ebp),%eax
-movsbl -25(%ebp),%edi
-mull %edi
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $10,%edi
-je .LC1438
-movl $176,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1440
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1440:
-.LC1438:
-movl $5,-24(%ebp)
-movw $2,-28(%ebp)
-movl -24(%ebp),%eax
-movswl -28(%ebp),%edi
-mull %edi
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $10,%edi
-je .LC1442
-movl $177,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1444
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1444:
-.LC1442:
-movl $5,-24(%ebp)
-movl $2,-32(%ebp)
-movl -24(%ebp),%eax
-movl -32(%ebp),%edi
-mull %edi
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $10,%edi
-je .LC1446
-movl $178,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1448
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1448:
-.LC1446:
-movl $5,-24(%ebp)
-movl $2,-36(%ebp)
-movl -24(%ebp),%eax
-movl -36(%ebp),%edi
-mull %edi
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $10,%edi
-je .LC1450
-movl $179,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1452
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1452:
-.LC1450:
-movl $5,-24(%ebp)
-movl $2,-40(%ebp)
-movl -24(%ebp),%eax
-mull -40(%ebp)
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $10,%edi
-je .LC1454
-movl $180,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1456
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1456:
-.LC1454:
-movl $5,-24(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movl -24(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-fmuls -56(%ebp)
-fstps -192(%ebp)
-flds .LC847
-fcomps -192(%ebp)
-fstsw %ax
-sahf
-ja .LC1459
-flds -192(%ebp)
-fsubs .LC847
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-188(%ebp)
-jmp .LC1460
-.LC1459:
-flds -192(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-188(%ebp)
-.LC1460:
-movl -188(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $10,%edi
-je .LC1461
-movl $181,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1463
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1463:
-.LC1461:
-movl $5,-24(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movl -24(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fmull -64(%ebp)
-fstpl -208(%ebp)
-fldl .LC855
-fcompl -208(%ebp)
-fstsw %ax
-sahf
-ja .LC1466
-fldl -208(%ebp)
-fsubl .LC855
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-200(%ebp)
-jmp .LC1467
-.LC1466:
-fldl -208(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-200(%ebp)
-.LC1467:
-movl -200(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $10,%edi
-je .LC1468
-movl $182,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1470
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1470:
-.LC1468:
-flds .LC860
-fstps -44(%ebp)
-movb $2,-25(%ebp)
-flds -44(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fstps -44(%ebp)
-flds .LC1474
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1472
-movl $183,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1475
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1475:
-.LC1472:
-flds .LC860
-fstps -44(%ebp)
-movw $2,-28(%ebp)
-flds -44(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fstps -44(%ebp)
-flds .LC1474
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1477
-movl $184,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1479
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1479:
-.LC1477:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-32(%ebp)
-flds -44(%ebp)
-fildl -32(%ebp)
-fmulp %st(1),%st
-fstps -44(%ebp)
-flds .LC1474
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1481
-movl $185,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1483
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1483:
-.LC1481:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-36(%ebp)
-flds -44(%ebp)
-fildl -36(%ebp)
-fmulp %st(1),%st
-fstps -44(%ebp)
-flds .LC1474
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1485
-movl $186,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1487
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1487:
-.LC1485:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-flds -44(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fstps -44(%ebp)
-flds .LC1474
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1489
-movl $187,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1491
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1491:
-.LC1489:
-flds .LC860
-fstps -44(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -44(%ebp)
-fmuls -56(%ebp)
-fstps -44(%ebp)
-flds .LC1474
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1493
-movl $188,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1495
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1495:
-.LC1493:
-flds .LC860
-fstps -44(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-flds -44(%ebp)
-fmull -64(%ebp)
-fstps -44(%ebp)
-flds .LC1474
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1497
-movl $189,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1499
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1499:
-.LC1497:
-fldl .LC889
-fstpl -52(%ebp)
-movb $2,-25(%ebp)
-fldl -52(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1503
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1501
-movl $190,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1504
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1504:
-.LC1501:
-fldl .LC889
-fstpl -52(%ebp)
-movw $2,-28(%ebp)
-fldl -52(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1503
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1506
-movl $191,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1508
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1508:
-.LC1506:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-32(%ebp)
-fldl -52(%ebp)
-fimull -32(%ebp)
-fstpl -52(%ebp)
-fldl .LC1503
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1510
-movl $192,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1512
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1512:
-.LC1510:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-36(%ebp)
-fldl -52(%ebp)
-fimull -36(%ebp)
-fstpl -52(%ebp)
-fldl .LC1503
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1514
-movl $193,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1516
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1516:
-.LC1514:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-fldl -52(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fmulp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1503
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1518
-movl $194,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1520
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1520:
-.LC1518:
-fldl .LC889
-fstpl -52(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fldl -52(%ebp)
-fmuls -56(%ebp)
-fstpl -52(%ebp)
-fldl .LC1503
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1522
-movl $195,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1524
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1524:
-.LC1522:
-fldl .LC889
-fstpl -52(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -52(%ebp)
-fmull -64(%ebp)
-fstpl -52(%ebp)
-fldl .LC1503
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1526
-movl $196,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1528
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1528:
-.LC1526:
-movb $5,-9(%ebp)
-movb $2,-25(%ebp)
-movsbl -9(%ebp),%eax
-movsbl -25(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC1530
-movl $197,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1532
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1532:
-.LC1530:
-movb $5,-9(%ebp)
-movw $2,-28(%ebp)
-movsbl -9(%ebp),%eax
-movswl -28(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC1534
-movl $198,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1536
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1536:
-.LC1534:
-movb $5,-9(%ebp)
-movl $2,-32(%ebp)
-movsbl -9(%ebp),%eax
-movl -32(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC1538
-movl $199,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1540
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1540:
-.LC1538:
-movb $5,-9(%ebp)
-movl $2,-36(%ebp)
-movsbl -9(%ebp),%eax
-movl -36(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC1542
-movl $200,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1544
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1544:
-.LC1542:
-movb $5,-9(%ebp)
-movl $2,-40(%ebp)
-movsbl -9(%ebp),%edi
-movl %edi,%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %eax,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC1546
-movl $201,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1548
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1548:
-.LC1546:
-movb $5,-9(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movsbl -9(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fdivs -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC1550
-movl $202,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1552
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1552:
-.LC1550:
-movb $5,-9(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movsbl -9(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fdivl -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $2,%edi
-je .LC1554
-movl $203,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1556
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1556:
-.LC1554:
-movw $5,-12(%ebp)
-movb $2,-25(%ebp)
-movswl -12(%ebp),%eax
-movsbl -25(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC1558
-movl $204,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1560
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1560:
-.LC1558:
-movw $5,-12(%ebp)
-movw $2,-28(%ebp)
-movswl -12(%ebp),%eax
-movswl -28(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC1562
-movl $205,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1564
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1564:
-.LC1562:
-movw $5,-12(%ebp)
-movl $2,-32(%ebp)
-movswl -12(%ebp),%eax
-movl -32(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC1566
-movl $206,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1568
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1568:
-.LC1566:
-movw $5,-12(%ebp)
-movl $2,-36(%ebp)
-movswl -12(%ebp),%eax
-movl -36(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC1570
-movl $207,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1572
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1572:
-.LC1570:
-movw $5,-12(%ebp)
-movl $2,-40(%ebp)
-movswl -12(%ebp),%edi
-movl %edi,%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC1574
-movl $208,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1576
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1576:
-.LC1574:
-movw $5,-12(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movswl -12(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fdivs -56(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC1578
-movl $209,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1580
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1580:
-.LC1578:
-movw $5,-12(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movswl -12(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fdivl -64(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $2,%edi
-je .LC1582
-movl $210,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1584
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1584:
-.LC1582:
-movl $5,-16(%ebp)
-movb $2,-25(%ebp)
-movl -16(%ebp),%eax
-movsbl -25(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC1586
-movl $211,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1588
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1588:
-.LC1586:
-movl $5,-16(%ebp)
-movw $2,-28(%ebp)
-movl -16(%ebp),%eax
-movswl -28(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC1590
-movl $212,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1592
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1592:
-.LC1590:
-movl $5,-16(%ebp)
-movl $2,-32(%ebp)
-movl -16(%ebp),%eax
-movl -32(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC1594
-movl $213,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1596
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1596:
-.LC1594:
-movl $5,-16(%ebp)
-movl $2,-36(%ebp)
-movl -16(%ebp),%eax
-movl -36(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC1598
-movl $214,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1600
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1600:
-.LC1598:
-movl $5,-16(%ebp)
-movl $2,-40(%ebp)
-movl -16(%ebp),%edi
-movl %edi,%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %eax,%edi
-movl %edi,-16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC1602
-movl $215,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1604
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1604:
-.LC1602:
-movl $5,-16(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fildl -16(%ebp)
-fdivs -56(%ebp)
-fistpl -16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC1606
-movl $216,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1608
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1608:
-.LC1606:
-movl $5,-16(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fidivrl -16(%ebp)
-fistpl -16(%ebp)
-cmpl $2,-16(%ebp)
-je .LC1610
-movl $217,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1612
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1612:
-.LC1610:
-movl $5,-20(%ebp)
-movb $2,-25(%ebp)
-movl -20(%ebp),%eax
-movsbl -25(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC1614
-movl $218,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1616
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1616:
-.LC1614:
-movl $5,-20(%ebp)
-movw $2,-28(%ebp)
-movl -20(%ebp),%eax
-movswl -28(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC1618
-movl $219,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1620
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1620:
-.LC1618:
-movl $5,-20(%ebp)
-movl $2,-32(%ebp)
-movl -20(%ebp),%eax
-movl -32(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC1622
-movl $220,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1624
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1624:
-.LC1622:
-movl $5,-20(%ebp)
-movl $2,-36(%ebp)
-movl -20(%ebp),%eax
-movl -36(%ebp),%ecx
-cdq
-idivl %ecx
-movl %eax,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC1626
-movl $221,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1628
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1628:
-.LC1626:
-movl $5,-20(%ebp)
-movl $2,-40(%ebp)
-movl -20(%ebp),%edi
-movl %edi,%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %eax,%edi
-movl %edi,-20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC1630
-movl $222,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1632
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1632:
-.LC1630:
-movl $5,-20(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fildl -20(%ebp)
-fdivs -56(%ebp)
-fistpl -20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC1634
-movl $223,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1636
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1636:
-.LC1634:
-movl $5,-20(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fidivrl -20(%ebp)
-fistpl -20(%ebp)
-cmpl $2,-20(%ebp)
-je .LC1638
-movl $224,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1640
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1640:
-.LC1638:
-movl $5,-24(%ebp)
-movb $2,-25(%ebp)
-movl -24(%ebp),%eax
-movsbl -25(%ebp),%edi
-movl %edi,%ecx
-xorl %edx,%edx
-divl %ecx
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC1642
-movl $225,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1644
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1644:
-.LC1642:
-movl $5,-24(%ebp)
-movw $2,-28(%ebp)
-movl -24(%ebp),%eax
-movswl -28(%ebp),%edi
-movl %edi,%ecx
-xorl %edx,%edx
-divl %ecx
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC1646
-movl $226,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1648
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1648:
-.LC1646:
-movl $5,-24(%ebp)
-movl $2,-32(%ebp)
-movl -24(%ebp),%eax
-movl -32(%ebp),%edi
-movl %edi,%ecx
-xorl %edx,%edx
-divl %ecx
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC1650
-movl $227,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1652
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1652:
-.LC1650:
-movl $5,-24(%ebp)
-movl $2,-36(%ebp)
-movl -24(%ebp),%eax
-movl -36(%ebp),%edi
-movl %edi,%ecx
-xorl %edx,%edx
-divl %ecx
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC1654
-movl $228,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1656
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1656:
-.LC1654:
-movl $5,-24(%ebp)
-movl $2,-40(%ebp)
-movl -24(%ebp),%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC1658
-movl $229,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1660
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1660:
-.LC1658:
-movl $5,-24(%ebp)
-flds .LC544
-fstps -56(%ebp)
-movl -24(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-fdivs -56(%ebp)
-fstps -224(%ebp)
-flds .LC847
-fcomps -224(%ebp)
-fstsw %ax
-sahf
-ja .LC1663
-flds -224(%ebp)
-fsubs .LC847
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-220(%ebp)
-jmp .LC1664
-.LC1663:
-flds -224(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-220(%ebp)
-.LC1664:
-movl -220(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC1665
-movl $230,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1667
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1667:
-.LC1665:
-movl $5,-24(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-movl -24(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fdivl -64(%ebp)
-fstpl -240(%ebp)
-fldl .LC855
-fcompl -240(%ebp)
-fstsw %ax
-sahf
-ja .LC1670
-fldl -240(%ebp)
-fsubl .LC855
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-232(%ebp)
-jmp .LC1671
-.LC1670:
-fldl -240(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-232(%ebp)
-.LC1671:
-movl -232(%ebp),%edi
-movl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $2,%edi
-je .LC1672
-movl $231,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1674
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1674:
-.LC1672:
-flds .LC860
-fstps -44(%ebp)
-movb $2,-25(%ebp)
-flds -44(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fdivp %st(1),%st
-fstps -44(%ebp)
-fldl .LC1678
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1676
-movl $232,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1679
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1679:
-.LC1676:
-flds .LC860
-fstps -44(%ebp)
-movw $2,-28(%ebp)
-flds -44(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fdivp %st(1),%st
-fstps -44(%ebp)
-fldl .LC1678
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1681
-movl $233,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1683
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1683:
-.LC1681:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-32(%ebp)
-flds -44(%ebp)
-fildl -32(%ebp)
-fdivp %st(1),%st
-fstps -44(%ebp)
-fldl .LC1678
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1685
-movl $234,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1687
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1687:
-.LC1685:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-36(%ebp)
-flds -44(%ebp)
-fildl -36(%ebp)
-fdivp %st(1),%st
-fstps -44(%ebp)
-fldl .LC1678
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1689
-movl $235,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1691
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1691:
-.LC1689:
-flds .LC860
-fstps -44(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-flds -44(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-fdivp %st(1),%st
-fstps -44(%ebp)
-fldl .LC1678
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1693
-movl $236,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1695
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1695:
-.LC1693:
-flds .LC860
-fstps -44(%ebp)
-flds .LC544
-fstps -56(%ebp)
-flds -44(%ebp)
-fdivs -56(%ebp)
-fstps -44(%ebp)
-fldl .LC1678
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1697
-movl $237,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1699
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1699:
-.LC1697:
-flds .LC860
-fstps -44(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-flds -44(%ebp)
-fdivl -64(%ebp)
-fstps -44(%ebp)
-fldl .LC1678
-fcomps -44(%ebp)
-fstsw %ax
-sahf
-je .LC1701
-movl $238,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1703
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1703:
-.LC1701:
-fldl .LC889
-fstpl -52(%ebp)
-movb $2,-25(%ebp)
-fldl -52(%ebp)
-movsbl -25(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fdivp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1678
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1705
-movl $239,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1707
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1707:
-.LC1705:
-fldl .LC889
-fstpl -52(%ebp)
-movw $2,-28(%ebp)
-fldl -52(%ebp)
-movswl -28(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fdivp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1678
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1709
-movl $240,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1711
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1711:
-.LC1709:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-32(%ebp)
-fldl -52(%ebp)
-fidivl -32(%ebp)
-fstpl -52(%ebp)
-fldl .LC1678
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1713
-movl $241,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1715
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1715:
-.LC1713:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-36(%ebp)
-fldl -52(%ebp)
-fidivl -36(%ebp)
-fstpl -52(%ebp)
-fldl .LC1678
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1717
-movl $242,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1719
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1719:
-.LC1717:
-fldl .LC889
-fstpl -52(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-fldl -52(%ebp)
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fdivp %st(1),%st
-fstpl -52(%ebp)
-fldl .LC1678
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1721
-movl $243,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1723
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1723:
-.LC1721:
-fldl .LC889
-fstpl -52(%ebp)
-flds .LC544
-fstps -56(%ebp)
-fldl -52(%ebp)
-fdivs -56(%ebp)
-fstpl -52(%ebp)
-fldl .LC1678
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1725
-movl $244,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1727
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1727:
-.LC1725:
-fldl .LC889
-fstpl -52(%ebp)
-fldl .LC425
-fstpl -64(%ebp)
-fldl -52(%ebp)
-fdivl -64(%ebp)
-fstpl -52(%ebp)
-fldl .LC1678
-fcompl -52(%ebp)
-fstsw %ax
-sahf
-je .LC1729
-movl $245,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1731
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1731:
-.LC1729:
-movb $5,-9(%ebp)
-movb $2,-25(%ebp)
-movsbl -9(%ebp),%eax
-movsbl -25(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1733
-movl $246,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1735
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1735:
-.LC1733:
-movb $5,-9(%ebp)
-movw $2,-28(%ebp)
-movsbl -9(%ebp),%eax
-movswl -28(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1737
-movl $247,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1739
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1739:
-.LC1737:
-movb $5,-9(%ebp)
-movl $2,-32(%ebp)
-movsbl -9(%ebp),%eax
-movl -32(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1741
-movl $248,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1743
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1743:
-.LC1741:
-movb $5,-9(%ebp)
-movl $2,-36(%ebp)
-movsbl -9(%ebp),%eax
-movl -36(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1745
-movl $249,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1747
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1747:
-.LC1745:
-movb $5,-9(%ebp)
-movl $2,-40(%ebp)
-movsbl -9(%ebp),%edi
-movl %edi,%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %edx,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1749
-movl $250,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1751
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1751:
-.LC1749:
-movw $5,-12(%ebp)
-movb $2,-25(%ebp)
-movswl -12(%ebp),%eax
-movsbl -25(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1753
-movl $251,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1755
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1755:
-.LC1753:
-movw $5,-12(%ebp)
-movw $2,-28(%ebp)
-movswl -12(%ebp),%eax
-movswl -28(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1757
-movl $252,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1759
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1759:
-.LC1757:
-movw $5,-12(%ebp)
-movl $2,-32(%ebp)
-movswl -12(%ebp),%eax
-movl -32(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1761
-movl $253,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1763
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1763:
-.LC1761:
-movw $5,-12(%ebp)
-movl $2,-36(%ebp)
-movswl -12(%ebp),%eax
-movl -36(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1765
-movl $254,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1767
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1767:
-.LC1765:
-movw $5,-12(%ebp)
-movl $2,-40(%ebp)
-movswl -12(%ebp),%edi
-movl %edi,%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %edx,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1769
-movl $255,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1771
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1771:
-.LC1769:
-movl $5,-16(%ebp)
-movb $2,-25(%ebp)
-movl -16(%ebp),%eax
-movsbl -25(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1773
-movl $256,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1775
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1775:
-.LC1773:
-movl $5,-16(%ebp)
-movw $2,-28(%ebp)
-movl -16(%ebp),%eax
-movswl -28(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1777
-movl $257,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1779
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1779:
-.LC1777:
-movl $5,-16(%ebp)
-movl $2,-32(%ebp)
-movl -16(%ebp),%eax
-movl -32(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1781
-movl $258,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1783
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1783:
-.LC1781:
-movl $5,-16(%ebp)
-movl $2,-36(%ebp)
-movl -16(%ebp),%eax
-movl -36(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1785
-movl $259,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1787
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1787:
-.LC1785:
-movl $5,-16(%ebp)
-movl $2,-40(%ebp)
-movl -16(%ebp),%edi
-movl %edi,%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %edx,%edi
-movl %edi,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1789
-movl $260,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1791
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1791:
-.LC1789:
-movl $5,-20(%ebp)
-movb $2,-25(%ebp)
-movl -20(%ebp),%eax
-movsbl -25(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1793
-movl $261,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1795
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1795:
-.LC1793:
-movl $5,-20(%ebp)
-movw $2,-28(%ebp)
-movl -20(%ebp),%eax
-movswl -28(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1797
-movl $262,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1799
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1799:
-.LC1797:
-movl $5,-20(%ebp)
-movl $2,-32(%ebp)
-movl -20(%ebp),%eax
-movl -32(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1801
-movl $263,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1803
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1803:
-.LC1801:
-movl $5,-20(%ebp)
-movl $2,-36(%ebp)
-movl -20(%ebp),%eax
-movl -36(%ebp),%ecx
-cdq
-idivl %ecx
-movl %edx,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1805
-movl $264,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1807
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1807:
-.LC1805:
-movl $5,-20(%ebp)
-movl $2,-40(%ebp)
-movl -20(%ebp),%edi
-movl %edi,%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %edx,%edi
-movl %edi,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1809
-movl $265,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1811
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1811:
-.LC1809:
-movl $5,-24(%ebp)
-movb $2,-25(%ebp)
-movl -24(%ebp),%eax
-movsbl -25(%ebp),%edi
-movl %edi,%ecx
-xorl %edx,%edx
-divl %ecx
-movl %edx,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1813
-movl $266,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1815
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1815:
-.LC1813:
-movl $5,-24(%ebp)
-movw $2,-28(%ebp)
-movl -24(%ebp),%eax
-movswl -28(%ebp),%edi
-movl %edi,%ecx
-xorl %edx,%edx
-divl %ecx
-movl %edx,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1817
-movl $267,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1819
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1819:
-.LC1817:
-movl $5,-24(%ebp)
-movl $2,-32(%ebp)
-movl -24(%ebp),%eax
-movl -32(%ebp),%edi
-movl %edi,%ecx
-xorl %edx,%edx
-divl %ecx
-movl %edx,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1821
-movl $268,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1823
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1823:
-.LC1821:
-movl $5,-24(%ebp)
-movl $2,-36(%ebp)
-movl -24(%ebp),%eax
-movl -36(%ebp),%edi
-movl %edi,%ecx
-xorl %edx,%edx
-divl %ecx
-movl %edx,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1825
-movl $269,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1827
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1827:
-.LC1825:
-movl $5,-24(%ebp)
-movl $2,-40(%ebp)
-movl -24(%ebp),%eax
-movl -40(%ebp),%ecx
-xorl %edx,%edx
-divl %ecx
-movl %edx,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1829
-movl $270,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1831
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1831:
-.LC1829:
-movb $5,-9(%ebp)
-movb $2,-25(%ebp)
-movsbl -9(%ebp),%edi
-movsbl -25(%ebp),%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1833
-movl $271,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1835
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1835:
-.LC1833:
-movb $5,-9(%ebp)
-movw $2,-28(%ebp)
-movsbl -9(%ebp),%edi
-movswl -28(%ebp),%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1837
-movl $272,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1839
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1839:
-.LC1837:
-movb $5,-9(%ebp)
-movl $2,-32(%ebp)
-movsbl -9(%ebp),%edi
-movl -32(%ebp),%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1841
-movl $273,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1843
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1843:
-.LC1841:
-movb $5,-9(%ebp)
-movl $2,-36(%ebp)
-movsbl -9(%ebp),%edi
-movl -36(%ebp),%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1845
-movl $274,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1847
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1847:
-.LC1845:
-movb $5,-9(%ebp)
-movl $2,-40(%ebp)
-movsbl -9(%ebp),%edi
-movl -40(%ebp),%esi
-movl %esi,%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $1,%edi
-je .LC1849
-movl $275,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1851
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1851:
-.LC1849:
-movw $5,-12(%ebp)
-movb $2,-25(%ebp)
-movswl -12(%ebp),%edi
-movsbl -25(%ebp),%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1853
-movl $276,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1855
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1855:
-.LC1853:
-movw $5,-12(%ebp)
-movw $2,-28(%ebp)
-movswl -12(%ebp),%edi
-movswl -28(%ebp),%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1857
-movl $277,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1859
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1859:
-.LC1857:
-movw $5,-12(%ebp)
-movl $2,-32(%ebp)
-movswl -12(%ebp),%edi
-movl -32(%ebp),%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1861
-movl $278,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1863
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1863:
-.LC1861:
-movw $5,-12(%ebp)
-movl $2,-36(%ebp)
-movswl -12(%ebp),%edi
-movl -36(%ebp),%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1865
-movl $279,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1867
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1867:
-.LC1865:
-movw $5,-12(%ebp)
-movl $2,-40(%ebp)
-movswl -12(%ebp),%edi
-movl -40(%ebp),%esi
-movl %esi,%ecx
-movl %edi,%eax
-sarl %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $1,%edi
-je .LC1869
-movl $280,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1871
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1871:
-.LC1869:
-movl $5,-16(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%ecx
-sarl %cl,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1873
-movl $281,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1875
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1875:
-.LC1873:
-movl $5,-16(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%ecx
-sarl %cl,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1877
-movl $282,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1879
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1879:
-.LC1877:
-movl $5,-16(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%ecx
-sarl %cl,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1881
-movl $283,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1883
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1883:
-.LC1881:
-movl $5,-16(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%ecx
-sarl %cl,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1885
-movl $284,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1887
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1887:
-.LC1885:
-movl $5,-16(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-movl %edi,%ecx
-sarl %cl,-16(%ebp)
-cmpl $1,-16(%ebp)
-je .LC1889
-movl $285,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1891
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1891:
-.LC1889:
-movl $5,-20(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%ecx
-sarl %cl,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1893
-movl $286,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1895
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1895:
-.LC1893:
-movl $5,-20(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%ecx
-sarl %cl,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1897
-movl $287,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1899
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1899:
-.LC1897:
-movl $5,-20(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%ecx
-sarl %cl,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1901
-movl $288,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1903
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1903:
-.LC1901:
-movl $5,-20(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%ecx
-sarl %cl,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1905
-movl $289,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1907
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1907:
-.LC1905:
-movl $5,-20(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-movl %edi,%ecx
-sarl %cl,-20(%ebp)
-cmpl $1,-20(%ebp)
-je .LC1909
-movl $290,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1911
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1911:
-.LC1909:
-movl $5,-24(%ebp)
-movb $2,-25(%ebp)
-movl -24(%ebp),%edi
-movsbl -25(%ebp),%ecx
-movl %edi,%eax
-shrl %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1913
-movl $291,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1915
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1915:
-.LC1913:
-movl $5,-24(%ebp)
-movw $2,-28(%ebp)
-movl -24(%ebp),%edi
-movswl -28(%ebp),%ecx
-movl %edi,%eax
-shrl %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1917
-movl $292,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1919
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1919:
-.LC1917:
-movl $5,-24(%ebp)
-movl $2,-32(%ebp)
-movl -24(%ebp),%edi
-movl -32(%ebp),%ecx
-movl %edi,%eax
-shrl %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1921
-movl $293,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1923
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1923:
-.LC1921:
-movl $5,-24(%ebp)
-movl $2,-36(%ebp)
-movl -24(%ebp),%edi
-movl -36(%ebp),%ecx
-movl %edi,%eax
-shrl %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1925
-movl $294,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1927
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1927:
-.LC1925:
-movl $5,-24(%ebp)
-movl $2,-40(%ebp)
-movl -24(%ebp),%edi
-movl -40(%ebp),%esi
-movl %esi,%ecx
-movl %edi,%eax
-shrl %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $1,%edi
-je .LC1929
-movl $295,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1931
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1931:
-.LC1929:
-movb $5,-9(%ebp)
-movb $2,-25(%ebp)
-movsbl -9(%ebp),%edi
-movsbl -25(%ebp),%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $20,%edi
-je .LC1933
-movl $296,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1935
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1935:
-.LC1933:
-movb $5,-9(%ebp)
-movw $2,-28(%ebp)
-movsbl -9(%ebp),%edi
-movswl -28(%ebp),%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $20,%edi
-je .LC1937
-movl $297,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1939
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1939:
-.LC1937:
-movb $5,-9(%ebp)
-movl $2,-32(%ebp)
-movsbl -9(%ebp),%edi
-movl -32(%ebp),%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $20,%edi
-je .LC1941
-movl $298,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1943
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1943:
-.LC1941:
-movb $5,-9(%ebp)
-movl $2,-36(%ebp)
-movsbl -9(%ebp),%edi
-movl -36(%ebp),%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $20,%edi
-je .LC1945
-movl $299,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1947
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1947:
-.LC1945:
-movb $5,-9(%ebp)
-movl $2,-40(%ebp)
-movsbl -9(%ebp),%edi
-movl -40(%ebp),%esi
-movl %esi,%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $20,%edi
-je .LC1949
-movl $300,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1951
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1951:
-.LC1949:
-movw $5,-12(%ebp)
-movb $2,-25(%ebp)
-movswl -12(%ebp),%edi
-movsbl -25(%ebp),%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $20,%edi
-je .LC1953
-movl $301,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1955
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1955:
-.LC1953:
-movw $5,-12(%ebp)
-movw $2,-28(%ebp)
-movswl -12(%ebp),%edi
-movswl -28(%ebp),%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $20,%edi
-je .LC1957
-movl $302,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1959
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1959:
-.LC1957:
-movw $5,-12(%ebp)
-movl $2,-32(%ebp)
-movswl -12(%ebp),%edi
-movl -32(%ebp),%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $20,%edi
-je .LC1961
-movl $303,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1963
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1963:
-.LC1961:
-movw $5,-12(%ebp)
-movl $2,-36(%ebp)
-movswl -12(%ebp),%edi
-movl -36(%ebp),%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $20,%edi
-je .LC1965
-movl $304,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1967
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1967:
-.LC1965:
-movw $5,-12(%ebp)
-movl $2,-40(%ebp)
-movswl -12(%ebp),%edi
-movl -40(%ebp),%esi
-movl %esi,%ecx
-movl %edi,%eax
-sall %cl,%eax
-movl %eax,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $20,%edi
-je .LC1969
-movl $305,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1971
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1971:
-.LC1969:
-movl $5,-16(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%ecx
-sall %cl,-16(%ebp)
-cmpl $20,-16(%ebp)
-je .LC1973
-movl $306,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1975
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1975:
-.LC1973:
-movl $5,-16(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%ecx
-sall %cl,-16(%ebp)
-cmpl $20,-16(%ebp)
-je .LC1977
-movl $307,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1979
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1979:
-.LC1977:
-movl $5,-16(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%ecx
-sall %cl,-16(%ebp)
-cmpl $20,-16(%ebp)
-je .LC1981
-movl $308,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1983
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1983:
-.LC1981:
-movl $5,-16(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%ecx
-sall %cl,-16(%ebp)
-cmpl $20,-16(%ebp)
-je .LC1985
-movl $309,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1987
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1987:
-.LC1985:
-movl $5,-16(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-movl %edi,%ecx
-sall %cl,-16(%ebp)
-cmpl $20,-16(%ebp)
-je .LC1989
-movl $310,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1991
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1991:
-.LC1989:
-movl $5,-20(%ebp)
-movb $2,-25(%ebp)
-movsbl -25(%ebp),%ecx
-sall %cl,-20(%ebp)
-cmpl $20,-20(%ebp)
-je .LC1993
-movl $311,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1995
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1995:
-.LC1993:
-movl $5,-20(%ebp)
-movw $2,-28(%ebp)
-movswl -28(%ebp),%ecx
-sall %cl,-20(%ebp)
-cmpl $20,-20(%ebp)
-je .LC1997
-movl $312,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC1999
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC1999:
-.LC1997:
-movl $5,-20(%ebp)
-movl $2,-32(%ebp)
-movl -32(%ebp),%ecx
-sall %cl,-20(%ebp)
-cmpl $20,-20(%ebp)
-je .LC2001
-movl $313,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2003
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2003:
-.LC2001:
-movl $5,-20(%ebp)
-movl $2,-36(%ebp)
-movl -36(%ebp),%ecx
-sall %cl,-20(%ebp)
-cmpl $20,-20(%ebp)
-je .LC2005
-movl $314,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2007
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2007:
-.LC2005:
-movl $5,-20(%ebp)
-movl $2,-40(%ebp)
-movl -40(%ebp),%edi
-movl %edi,%ecx
-sall %cl,-20(%ebp)
-cmpl $20,-20(%ebp)
-je .LC2009
-movl $315,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2011
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2011:
-.LC2009:
-movl $5,-24(%ebp)
-movb $2,-25(%ebp)
-movl -24(%ebp),%edi
-movsbl -25(%ebp),%ecx
-movl %edi,%eax
-shll %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $20,%edi
-je .LC2013
-movl $316,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2015
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2015:
-.LC2013:
-movl $5,-24(%ebp)
-movw $2,-28(%ebp)
-movl -24(%ebp),%edi
-movswl -28(%ebp),%ecx
-movl %edi,%eax
-shll %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $20,%edi
-je .LC2017
-movl $317,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2019
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2019:
-.LC2017:
-movl $5,-24(%ebp)
-movl $2,-32(%ebp)
-movl -24(%ebp),%edi
-movl -32(%ebp),%ecx
-movl %edi,%eax
-shll %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $20,%edi
-je .LC2021
-movl $318,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2023
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2023:
-.LC2021:
-movl $5,-24(%ebp)
-movl $2,-36(%ebp)
-movl -24(%ebp),%edi
-movl -36(%ebp),%ecx
-movl %edi,%eax
-shll %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $20,%edi
-je .LC2025
-movl $319,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2027
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2027:
-.LC2025:
-movl $5,-24(%ebp)
-movl $2,-40(%ebp)
-movl -24(%ebp),%edi
-movl -40(%ebp),%esi
-movl %esi,%ecx
-movl %edi,%eax
-shll %cl,%eax
-movl %eax,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $20,%edi
-je .LC2029
-movl $320,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2031
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2031:
-.LC2029:
-movb $12,-9(%ebp)
-movb $10,-25(%ebp)
-movsbl -9(%ebp),%edi
-movsbl -25(%ebp),%esi
-andl %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $8,%edi
-je .LC2033
-movl $321,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2035
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2035:
-.LC2033:
-movb $12,-9(%ebp)
-movw $10,-28(%ebp)
-movsbl -9(%ebp),%edi
-movswl -28(%ebp),%esi
-andl %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $8,%edi
-je .LC2037
-movl $322,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2039
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2039:
-.LC2037:
-movb $12,-9(%ebp)
-movl $10,-32(%ebp)
-movsbl -9(%ebp),%edi
-andl -32(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $8,%edi
-je .LC2041
-movl $323,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2043
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2043:
-.LC2041:
-movb $12,-9(%ebp)
-movl $10,-36(%ebp)
-movsbl -9(%ebp),%edi
-andl -36(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $8,%edi
-je .LC2045
-movl $324,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2047
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2047:
-.LC2045:
-movb $12,-9(%ebp)
-movl $10,-40(%ebp)
-movsbl -9(%ebp),%edi
-andl -40(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $8,%edi
-je .LC2049
-movl $325,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2051
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2051:
-.LC2049:
-movw $12,-12(%ebp)
-movb $10,-25(%ebp)
-movswl -12(%ebp),%edi
-movsbl -25(%ebp),%esi
-andl %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $8,%edi
-je .LC2053
-movl $326,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2055
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2055:
-.LC2053:
-movw $12,-12(%ebp)
-movw $10,-28(%ebp)
-movswl -12(%ebp),%edi
-movswl -28(%ebp),%esi
-andl %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $8,%edi
-je .LC2057
-movl $327,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2059
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2059:
-.LC2057:
-movw $12,-12(%ebp)
-movl $10,-32(%ebp)
-movswl -12(%ebp),%edi
-andl -32(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $8,%edi
-je .LC2061
-movl $328,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2063
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2063:
-.LC2061:
-movw $12,-12(%ebp)
-movl $10,-36(%ebp)
-movswl -12(%ebp),%edi
-andl -36(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $8,%edi
-je .LC2065
-movl $329,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2067
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2067:
-.LC2065:
-movw $12,-12(%ebp)
-movl $10,-40(%ebp)
-movswl -12(%ebp),%edi
-andl -40(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $8,%edi
-je .LC2069
-movl $330,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2071
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2071:
-.LC2069:
-movl $12,-16(%ebp)
-movb $10,-25(%ebp)
-movsbl -25(%ebp),%edi
-andl %edi,-16(%ebp)
-cmpl $8,-16(%ebp)
-je .LC2073
-movl $331,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2075
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2075:
-.LC2073:
-movl $12,-16(%ebp)
-movw $10,-28(%ebp)
-movswl -28(%ebp),%edi
-andl %edi,-16(%ebp)
-cmpl $8,-16(%ebp)
-je .LC2077
-movl $332,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2079
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2079:
-.LC2077:
-movl $12,-16(%ebp)
-movl $10,-32(%ebp)
-movl -32(%ebp),%edi
-andl %edi,-16(%ebp)
-cmpl $8,-16(%ebp)
-je .LC2081
-movl $333,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2083
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2083:
-.LC2081:
-movl $12,-16(%ebp)
-movl $10,-36(%ebp)
-movl -36(%ebp),%edi
-andl %edi,-16(%ebp)
-cmpl $8,-16(%ebp)
-je .LC2085
-movl $334,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2087
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2087:
-.LC2085:
-movl $12,-16(%ebp)
-movl $10,-40(%ebp)
-movl -16(%ebp),%edi
-andl -40(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $8,-16(%ebp)
-je .LC2089
-movl $335,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2091
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2091:
-.LC2089:
-movl $12,-20(%ebp)
-movb $10,-25(%ebp)
-movsbl -25(%ebp),%edi
-andl %edi,-20(%ebp)
-cmpl $8,-20(%ebp)
-je .LC2093
-movl $336,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2095
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2095:
-.LC2093:
-movl $12,-20(%ebp)
-movw $10,-28(%ebp)
-movswl -28(%ebp),%edi
-andl %edi,-20(%ebp)
-cmpl $8,-20(%ebp)
-je .LC2097
-movl $337,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2099
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2099:
-.LC2097:
-movl $12,-20(%ebp)
-movl $10,-32(%ebp)
-movl -32(%ebp),%edi
-andl %edi,-20(%ebp)
-cmpl $8,-20(%ebp)
-je .LC2101
-movl $338,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2103
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2103:
-.LC2101:
-movl $12,-20(%ebp)
-movl $10,-36(%ebp)
-movl -36(%ebp),%edi
-andl %edi,-20(%ebp)
-cmpl $8,-20(%ebp)
-je .LC2105
-movl $339,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2107
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2107:
-.LC2105:
-movl $12,-20(%ebp)
-movl $10,-40(%ebp)
-movl -20(%ebp),%edi
-andl -40(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $8,-20(%ebp)
-je .LC2109
-movl $340,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2111
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2111:
-.LC2109:
-movl $12,-24(%ebp)
-movb $10,-25(%ebp)
-movsbl -25(%ebp),%edi
-andl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $8,%edi
-je .LC2113
-movl $341,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2115
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2115:
-.LC2113:
-movl $12,-24(%ebp)
-movw $10,-28(%ebp)
-movswl -28(%ebp),%edi
-andl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $8,%edi
-je .LC2117
-movl $342,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2119
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2119:
-.LC2117:
-movl $12,-24(%ebp)
-movl $10,-32(%ebp)
-movl -32(%ebp),%edi
-andl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $8,%edi
-je .LC2121
-movl $343,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2123
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2123:
-.LC2121:
-movl $12,-24(%ebp)
-movl $10,-36(%ebp)
-movl -36(%ebp),%edi
-andl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $8,%edi
-je .LC2125
-movl $344,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2127
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2127:
-.LC2125:
-movl $12,-24(%ebp)
-movl $10,-40(%ebp)
-movl -40(%ebp),%edi
-andl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $8,%edi
-je .LC2129
-movl $345,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2131
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2131:
-.LC2129:
-movb $12,-9(%ebp)
-movb $10,-25(%ebp)
-movsbl -9(%ebp),%edi
-movsbl -25(%ebp),%esi
-xorl %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $6,%edi
-je .LC2133
-movl $346,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2135
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2135:
-.LC2133:
-movb $12,-9(%ebp)
-movw $10,-28(%ebp)
-movsbl -9(%ebp),%edi
-movswl -28(%ebp),%esi
-xorl %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $6,%edi
-je .LC2137
-movl $347,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2139
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2139:
-.LC2137:
-movb $12,-9(%ebp)
-movl $10,-32(%ebp)
-movsbl -9(%ebp),%edi
-xorl -32(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $6,%edi
-je .LC2141
-movl $348,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2143
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2143:
-.LC2141:
-movb $12,-9(%ebp)
-movl $10,-36(%ebp)
-movsbl -9(%ebp),%edi
-xorl -36(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $6,%edi
-je .LC2145
-movl $349,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2147
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2147:
-.LC2145:
-movb $12,-9(%ebp)
-movl $10,-40(%ebp)
-movsbl -9(%ebp),%edi
-xorl -40(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $6,%edi
-je .LC2149
-movl $350,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2151
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2151:
-.LC2149:
-movw $12,-12(%ebp)
-movb $10,-25(%ebp)
-movswl -12(%ebp),%edi
-movsbl -25(%ebp),%esi
-xorl %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $6,%edi
-je .LC2153
-movl $351,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2155
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2155:
-.LC2153:
-movw $12,-12(%ebp)
-movw $10,-28(%ebp)
-movswl -12(%ebp),%edi
-movswl -28(%ebp),%esi
-xorl %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $6,%edi
-je .LC2157
-movl $352,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2159
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2159:
-.LC2157:
-movw $12,-12(%ebp)
-movl $10,-32(%ebp)
-movswl -12(%ebp),%edi
-xorl -32(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $6,%edi
-je .LC2161
-movl $353,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2163
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2163:
-.LC2161:
-movw $12,-12(%ebp)
-movl $10,-36(%ebp)
-movswl -12(%ebp),%edi
-xorl -36(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $6,%edi
-je .LC2165
-movl $354,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2167
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2167:
-.LC2165:
-movw $12,-12(%ebp)
-movl $10,-40(%ebp)
-movswl -12(%ebp),%edi
-xorl -40(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $6,%edi
-je .LC2169
-movl $355,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2171
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2171:
-.LC2169:
-movl $12,-16(%ebp)
-movb $10,-25(%ebp)
-movsbl -25(%ebp),%edi
-xorl %edi,-16(%ebp)
-cmpl $6,-16(%ebp)
-je .LC2173
-movl $356,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2175
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2175:
-.LC2173:
-movl $12,-16(%ebp)
-movw $10,-28(%ebp)
-movswl -28(%ebp),%edi
-xorl %edi,-16(%ebp)
-cmpl $6,-16(%ebp)
-je .LC2177
-movl $357,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2179
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2179:
-.LC2177:
-movl $12,-16(%ebp)
-movl $10,-32(%ebp)
-movl -32(%ebp),%edi
-xorl %edi,-16(%ebp)
-cmpl $6,-16(%ebp)
-je .LC2181
-movl $358,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2183
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2183:
-.LC2181:
-movl $12,-16(%ebp)
-movl $10,-36(%ebp)
-movl -36(%ebp),%edi
-xorl %edi,-16(%ebp)
-cmpl $6,-16(%ebp)
-je .LC2185
-movl $359,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2187
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2187:
-.LC2185:
-movl $12,-16(%ebp)
-movl $10,-40(%ebp)
-movl -16(%ebp),%edi
-xorl -40(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $6,-16(%ebp)
-je .LC2189
-movl $360,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2191
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2191:
-.LC2189:
-movl $12,-20(%ebp)
-movb $10,-25(%ebp)
-movsbl -25(%ebp),%edi
-xorl %edi,-20(%ebp)
-cmpl $6,-20(%ebp)
-je .LC2193
-movl $361,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2195
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2195:
-.LC2193:
-movl $12,-20(%ebp)
-movw $10,-28(%ebp)
-movswl -28(%ebp),%edi
-xorl %edi,-20(%ebp)
-cmpl $6,-20(%ebp)
-je .LC2197
-movl $362,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2199
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2199:
-.LC2197:
-movl $12,-20(%ebp)
-movl $10,-32(%ebp)
-movl -32(%ebp),%edi
-xorl %edi,-20(%ebp)
-cmpl $6,-20(%ebp)
-je .LC2201
-movl $363,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2203
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2203:
-.LC2201:
-movl $12,-20(%ebp)
-movl $10,-36(%ebp)
-movl -36(%ebp),%edi
-xorl %edi,-20(%ebp)
-cmpl $6,-20(%ebp)
-je .LC2205
-movl $364,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2207
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2207:
-.LC2205:
-movl $12,-20(%ebp)
-movl $10,-40(%ebp)
-movl -20(%ebp),%edi
-xorl -40(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $6,-20(%ebp)
-je .LC2209
-movl $365,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2211
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2211:
-.LC2209:
-movl $12,-24(%ebp)
-movb $10,-25(%ebp)
-movsbl -25(%ebp),%edi
-xorl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $6,%edi
-je .LC2213
-movl $366,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2215
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2215:
-.LC2213:
-movl $12,-24(%ebp)
-movw $10,-28(%ebp)
-movswl -28(%ebp),%edi
-xorl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $6,%edi
-je .LC2217
-movl $367,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2219
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2219:
-.LC2217:
-movl $12,-24(%ebp)
-movl $10,-32(%ebp)
-movl -32(%ebp),%edi
-xorl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $6,%edi
-je .LC2221
-movl $368,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2223
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2223:
-.LC2221:
-movl $12,-24(%ebp)
-movl $10,-36(%ebp)
-movl -36(%ebp),%edi
-xorl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $6,%edi
-je .LC2225
-movl $369,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2227
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2227:
-.LC2225:
-movl $12,-24(%ebp)
-movl $10,-40(%ebp)
-movl -40(%ebp),%edi
-xorl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $6,%edi
-je .LC2229
-movl $370,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2231
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2231:
-.LC2229:
-movb $12,-9(%ebp)
-movb $10,-25(%ebp)
-movsbl -9(%ebp),%edi
-movsbl -25(%ebp),%esi
-orl %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $14,%edi
-je .LC2233
-movl $371,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2235
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2235:
-.LC2233:
-movb $12,-9(%ebp)
-movw $10,-28(%ebp)
-movsbl -9(%ebp),%edi
-movswl -28(%ebp),%esi
-orl %esi,%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $14,%edi
-je .LC2237
-movl $372,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2239
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2239:
-.LC2237:
-movb $12,-9(%ebp)
-movl $10,-32(%ebp)
-movsbl -9(%ebp),%edi
-orl -32(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $14,%edi
-je .LC2241
-movl $373,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2243
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2243:
-.LC2241:
-movb $12,-9(%ebp)
-movl $10,-36(%ebp)
-movsbl -9(%ebp),%edi
-orl -36(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $14,%edi
-je .LC2245
-movl $374,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2247
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2247:
-.LC2245:
-movb $12,-9(%ebp)
-movl $10,-40(%ebp)
-movsbl -9(%ebp),%edi
-orl -40(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-9(%ebp)
-movsbl -9(%ebp),%edi
-cmpl $14,%edi
-je .LC2249
-movl $375,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2251
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2251:
-.LC2249:
-movw $12,-12(%ebp)
-movb $10,-25(%ebp)
-movswl -12(%ebp),%edi
-movsbl -25(%ebp),%esi
-orl %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $14,%edi
-je .LC2253
-movl $376,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2255
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2255:
-.LC2253:
-movw $12,-12(%ebp)
-movw $10,-28(%ebp)
-movswl -12(%ebp),%edi
-movswl -28(%ebp),%esi
-orl %esi,%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $14,%edi
-je .LC2257
-movl $377,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2259
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2259:
-.LC2257:
-movw $12,-12(%ebp)
-movl $10,-32(%ebp)
-movswl -12(%ebp),%edi
-orl -32(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $14,%edi
-je .LC2261
-movl $378,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2263
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2263:
-.LC2261:
-movw $12,-12(%ebp)
-movl $10,-36(%ebp)
-movswl -12(%ebp),%edi
-orl -36(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $14,%edi
-je .LC2265
-movl $379,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2267
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2267:
-.LC2265:
-movw $12,-12(%ebp)
-movl $10,-40(%ebp)
-movswl -12(%ebp),%edi
-orl -40(%ebp),%edi
-movw %di,-12(%ebp)
-movswl -12(%ebp),%edi
-cmpl $14,%edi
-je .LC2269
-movl $380,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2271
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2271:
-.LC2269:
-movl $12,-16(%ebp)
-movb $10,-25(%ebp)
-movsbl -25(%ebp),%edi
-orl %edi,-16(%ebp)
-cmpl $14,-16(%ebp)
-je .LC2273
-movl $381,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2275
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2275:
-.LC2273:
-movl $12,-16(%ebp)
-movw $10,-28(%ebp)
-movswl -28(%ebp),%edi
-orl %edi,-16(%ebp)
-cmpl $14,-16(%ebp)
-je .LC2277
-movl $382,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2279
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2279:
-.LC2277:
-movl $12,-16(%ebp)
-movl $10,-32(%ebp)
-movl -32(%ebp),%edi
-orl %edi,-16(%ebp)
-cmpl $14,-16(%ebp)
-je .LC2281
-movl $383,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2283
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2283:
-.LC2281:
-movl $12,-16(%ebp)
-movl $10,-36(%ebp)
-movl -36(%ebp),%edi
-orl %edi,-16(%ebp)
-cmpl $14,-16(%ebp)
-je .LC2285
-movl $384,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2287
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2287:
-.LC2285:
-movl $12,-16(%ebp)
-movl $10,-40(%ebp)
-movl -16(%ebp),%edi
-orl -40(%ebp),%edi
-movl %edi,-16(%ebp)
-cmpl $14,-16(%ebp)
-je .LC2289
-movl $385,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2291
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2291:
-.LC2289:
-movl $12,-20(%ebp)
-movb $10,-25(%ebp)
-movsbl -25(%ebp),%edi
-orl %edi,-20(%ebp)
-cmpl $14,-20(%ebp)
-je .LC2293
-movl $386,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2295
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2295:
-.LC2293:
-movl $12,-20(%ebp)
-movw $10,-28(%ebp)
-movswl -28(%ebp),%edi
-orl %edi,-20(%ebp)
-cmpl $14,-20(%ebp)
-je .LC2297
-movl $387,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2299
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2299:
-.LC2297:
-movl $12,-20(%ebp)
-movl $10,-32(%ebp)
-movl -32(%ebp),%edi
-orl %edi,-20(%ebp)
-cmpl $14,-20(%ebp)
-je .LC2301
-movl $388,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2303
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2303:
-.LC2301:
-movl $12,-20(%ebp)
-movl $10,-36(%ebp)
-movl -36(%ebp),%edi
-orl %edi,-20(%ebp)
-cmpl $14,-20(%ebp)
-je .LC2305
-movl $389,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2307
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2307:
-.LC2305:
-movl $12,-20(%ebp)
-movl $10,-40(%ebp)
-movl -20(%ebp),%edi
-orl -40(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $14,-20(%ebp)
-je .LC2309
-movl $390,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2311
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2311:
-.LC2309:
-movl $12,-24(%ebp)
-movb $10,-25(%ebp)
-movsbl -25(%ebp),%edi
-orl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $14,%edi
-je .LC2313
-movl $391,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2315
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2315:
-.LC2313:
-movl $12,-24(%ebp)
-movw $10,-28(%ebp)
-movswl -28(%ebp),%edi
-orl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $14,%edi
-je .LC2317
-movl $392,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2319
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2319:
-.LC2317:
-movl $12,-24(%ebp)
-movl $10,-32(%ebp)
-movl -32(%ebp),%edi
-orl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $14,%edi
-je .LC2321
-movl $393,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2323
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2323:
-.LC2321:
-movl $12,-24(%ebp)
-movl $10,-36(%ebp)
-movl -36(%ebp),%edi
-orl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $14,%edi
-je .LC2325
-movl $394,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2327
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2327:
-.LC2325:
-movl $12,-24(%ebp)
-movl $10,-40(%ebp)
-movl -40(%ebp),%edi
-orl %edi,-24(%ebp)
-movl -24(%ebp),%edi
-cmpl $14,%edi
-je .LC2329
-movl $395,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2331
-pushl -8(%ebp)
-pushl $f.706
-call printf
-addl $8,%esp
-.LC2331:
-.LC2329:
-cmpl $0,-8(%ebp)
-je .LC2333
-movl $1,-76(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2335
-pushl $1
-pushl $s714er.707
-call printf
-addl $8,%esp
-.LC2335:
-.LC2333:
-movl -76(%ebp),%eax
-.LC705:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf2337:
-.size s714,.Lf2337-s714
-.data
-.align 1
-.type s715er.2339,@object
-s715er.2339:
-.byte 115
-.byte 55
-.byte 49
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s715er.2339,11
-.align 1
-.type qs715.2340,@object
-.size qs715.2340,8
-qs715.2340:
-.byte 115
-.byte 55
-.byte 49
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s715
-.text
-.align 16
-.type s715,@function
-s715:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $28,%esp
-movl $0,-28(%ebp)
-movl $0,-20(%ebp)
-leal qs715.2340,%edi
-movl %edi,-4(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-8(%ebp)
-movl $0,-16(%ebp)
-.LC2341:
-.LC2342:
-movl -8(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-8(%ebp)
-movl -4(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-4(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC2341
-movl $1,-12(%ebp)
-incl -12(%ebp)
-incl -12(%ebp)
-incl -12(%ebp)
-incl -12(%ebp)
-movl -12(%ebp),%edi
-leal 1(%edi),%edi
-movl %edi,-12(%ebp)
-cmpl $6,%edi
-je .LC2344
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2346
-pushl $1
-pushl $s715er.2339
-call printf
-addl $8,%esp
-.LC2346:
-incl -16(%ebp)
-.LC2344:
-pushl -28(%ebp)
-movl $3,-24(%ebp)
-movl -24(%ebp),%edi
-leal 2(%edi),%edi
-pushl %edi
-pushl -20(%ebp)
-call s715f
-addl $12,%esp
-cmpl $5,%eax
-je .LC2348
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2350
-pushl $2
-pushl $s715er.2339
-call printf
-addl $8,%esp
-.LC2350:
-addl $2,-16(%ebp)
-.LC2348:
-movl -16(%ebp),%eax
-.LC2338:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf2352:
-.size s715,.Lf2352-s715
-.globl s715f
-.align 16
-.type s715f,@function
-s715f:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 24(%ebp),%eax
-.LC2353:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf2354:
-.size s715f,.Lf2354-s715f
-.data
-.align 1
-.type s72er.2356,@object
-s72er.2356:
-.byte 115
-.byte 55
-.byte 50
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s72er.2356,10
-.align 1
-.type qs72.2357,@object
-.size qs72.2357,8
-qs72.2357:
-.byte 115
-.byte 55
-.byte 50
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s72
-.text
-.align 16
-.type s72,@function
-s72:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $100,%esp
-leal qs72.2357,%edi
-movl %edi,-12(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-16(%ebp)
-movl $0,-24(%ebp)
-.LC2358:
-.LC2359:
-movl -16(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-16(%ebp)
-movl -12(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-12(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC2358
-movl $2,-4(%ebp)
-cmpl $2,-4(%ebp)
-je .LC2361
-incl -24(%ebp)
-pushl $1
-pushl $s72er.2356
-call printf
-addl $8,%esp
-.LC2361:
-movl -4(%ebp),%edi
-movl %edi,%esi
-negl %esi
-leal (%esi,%edi),%edi
-cmpl $0,%edi
-je .LC2363
-addl $2,-24(%ebp)
-pushl $2
-pushl $s72er.2356
-call printf
-addl $8,%esp
-.LC2363:
-movl $0,-4(%ebp)
-movl $0,-8(%ebp)
-jmp .LC2368
-.LC2365:
-movl -4(%ebp),%edi
-leal (,%edi,2),%edi
-orl $1,%edi
-movl %edi,-4(%ebp)
-.LC2366:
-incl -8(%ebp)
-.LC2368:
-movl 20(%ebp),%edi
-movl 4(%edi),%edi
-cmpl %edi,-8(%ebp)
-jl .LC2365
-movl -4(%ebp),%edi
-notl %edi
-cmpl $0,%edi
-je .LC2369
-addl $4,-24(%ebp)
-pushl $4
-pushl $s72er.2356
-call printf
-addl $8,%esp
-.LC2369:
-movl $5,-4(%ebp)
-movl -4(%ebp),%edi
-leal 1(%edi),%edi
-movl %edi,-4(%ebp)
-cmpl $6,%edi
-jne .LC2376
-movl -4(%ebp),%edi
-subl $1,%edi
-movl %edi,-4(%ebp)
-cmpl $5,%edi
-jne .LC2376
-movl -4(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-4(%ebp)
-cmpl $5,%edi
-jne .LC2376
-movl -4(%ebp),%edi
-movl %edi,%esi
-subl $1,%esi
-movl %esi,-4(%ebp)
-cmpl $6,%edi
-jne .LC2376
-cmpl $5,-4(%ebp)
-je .LC2371
-.LC2376:
-addl $8,-24(%ebp)
-pushl $8
-pushl $s72er.2356
-call printf
-addl $8,%esp
-.LC2371:
-movb $26,-29(%ebp)
-movl $26,-36(%ebp)
-fldl .LC2377
-fstpl -48(%ebp)
-movw $26,-32(%ebp)
-movl $26,-40(%ebp)
-movl $26,-28(%ebp)
-flds .LC2378
-fstps -52(%ebp)
-movl $0,-20(%ebp)
-movswl -32(%ebp),%edi
-movl %edi,%ebx
-movsbl %bl,%edi
-cmpl $26,%edi
-jne .LC2385
-movl -28(%ebp),%edi
-movl %edi,%ebx
-movsbl %bl,%edi
-cmpl $26,%edi
-jne .LC2385
-movl -36(%ebp),%edi
-movl %edi,%ebx
-movsbl %bl,%edi
-cmpl $26,%edi
-jne .LC2385
-movl -40(%ebp),%edi
-movl %edi,%ebx
-movsbl %bl,%edi
-cmpl $26,%edi
-jne .LC2385
-flds -52(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movsbl %bl,%edi
-cmpl $26,%edi
-jne .LC2385
-fldl -48(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%ebx
-movsbl %bl,%edi
-cmpl $26,%edi
-je .LC2379
-.LC2385:
-incl -20(%ebp)
-.LC2379:
-movsbl -29(%ebp),%edi
-movswl %di,%edi
-cmpl $26,%edi
-jne .LC2392
-movl -28(%ebp),%edi
-movswl %di,%edi
-cmpl $26,%edi
-jne .LC2392
-movl -36(%ebp),%edi
-movswl %di,%edi
-cmpl $26,%edi
-jne .LC2392
-movl -40(%ebp),%edi
-movswl %di,%edi
-cmpl $26,%edi
-jne .LC2392
-flds -52(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movswl %di,%edi
-cmpl $26,%edi
-jne .LC2392
-fldl -48(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movswl %di,%edi
-cmpl $26,%edi
-je .LC2386
-.LC2392:
-addl $2,-20(%ebp)
-.LC2386:
-movsbl -29(%ebp),%edi
-cmpl $26,%edi
-jne .LC2399
-movswl -32(%ebp),%edi
-cmpl $26,%edi
-jne .LC2399
-cmpl $26,-36(%ebp)
-jne .LC2399
-movl -40(%ebp),%edi
-cmpl $26,%edi
-jne .LC2399
-flds -52(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-cmpl $26,%eax
-jne .LC2399
-fldl -48(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-cmpl $26,%eax
-je .LC2393
-.LC2399:
-addl $4,-20(%ebp)
-.LC2393:
-movsbl -29(%ebp),%edi
-cmpl $26,%edi
-jne .LC2406
-movswl -32(%ebp),%edi
-cmpl $26,%edi
-jne .LC2406
-cmpl $26,-28(%ebp)
-jne .LC2406
-movl -40(%ebp),%edi
-cmpl $26,%edi
-jne .LC2406
-flds -52(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-cmpl $26,%eax
-jne .LC2406
-fldl -48(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-cmpl $26,%eax
-je .LC2400
-.LC2406:
-addl $8,-20(%ebp)
-.LC2400:
-movsbl -29(%ebp),%edi
-cmpl $26,%edi
-jne .LC2415
-movswl -32(%ebp),%edi
-cmpl $26,%edi
-jne .LC2415
-movl -28(%ebp),%edi
-cmpl $26,%edi
-jne .LC2415
-movl -36(%ebp),%edi
-cmpl $26,%edi
-jne .LC2415
-flds .LC847
-fcomps -52(%ebp)
-fstsw %ax
-sahf
-ja .LC2416
-flds -52(%ebp)
-fsubs .LC847
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-56(%ebp)
-jmp .LC2417
-.LC2416:
-flds -52(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-56(%ebp)
-.LC2417:
-movl -56(%ebp),%edi
-cmpl $26,%edi
-jne .LC2415
-fldl .LC855
-fcompl -48(%ebp)
-fstsw %ax
-sahf
-ja .LC2418
-fldl -48(%ebp)
-fsubl .LC855
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-60(%ebp)
-jmp .LC2419
-.LC2418:
-fldl -48(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-60(%ebp)
-.LC2419:
-movl -60(%ebp),%edi
-cmpl $26,%edi
-je .LC2407
-.LC2415:
-addl $16,-20(%ebp)
-.LC2407:
-movsbl -29(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2426
-movswl -32(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2426
-fildl -28(%ebp)
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2426
-fildl -36(%ebp)
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2426
-movl -40(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-sub $4,%esp
-fstps (%esp)
-flds (%esp)
-addl $4,%esp
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2426
-fldl -48(%ebp)
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-je .LC2420
-.LC2426:
-addl $32,-20(%ebp)
-.LC2420:
-movsbl -29(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2433
-movswl -32(%ebp),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2433
-fildl -28(%ebp)
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2433
-fildl -36(%ebp)
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2433
-movl -40(%ebp),%edi
-fldl .LC611
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fldl .LC2377
-fcompp
-fstsw %ax
-sahf
-jne .LC2433
-fldl .LC2377
-fcomps -52(%ebp)
-fstsw %ax
-sahf
-je .LC2427
-.LC2433:
-addl $64,-20(%ebp)
-.LC2427:
-cmpl $0,-20(%ebp)
-je .LC2434
-addl $16,-24(%ebp)
-pushl $16
-pushl $s72er.2356
-call printf
-addl $8,%esp
-.LC2434:
-movl -24(%ebp),%eax
-.LC2355:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf2436:
-.size s72,.Lf2436-s72
-.data
-.align 1
-.type s757er.2438,@object
-s757er.2438:
-.byte 115
-.byte 55
-.byte 53
-.byte 55
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s757er.2438,11
-.align 1
-.type qs757.2439,@object
-.size qs757.2439,8
-qs757.2439:
-.byte 115
-.byte 55
-.byte 53
-.byte 55
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s757
-.text
-.align 16
-.type s757,@function
-s757:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $148,%esp
-leal qs757.2439,%edi
-movl %edi,-112(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-116(%ebp)
-movl $0,-120(%ebp)
-.LC2440:
-.LC2441:
-movl -116(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-116(%ebp)
-movl -112(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-112(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC2440
-movl $40,-124(%ebp)
-movl -124(%ebp),%edi
-leal (,%edi,8),%esi
-leal (,%esi,4),%esi
-cmpl $1280,%esi
-jne .LC2445
-sarl $3,%edi
-sarl $2,%edi
-cmpl $1,%edi
-je .LC2443
-.LC2445:
-incl -120(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2446
-pushl $1
-pushl $s757er.2438
-call printf
-addl $8,%esp
-.LC2446:
-.LC2443:
-movl $0,-84(%ebp)
-movl $0,-100(%ebp)
-jmp .LC2451
-.LC2448:
-movl $1,-92(%ebp)
-movl -92(%ebp),%edi
-movl 20(%ebp),%esi
-movl 16(%esi),%esi
-movl %esi,%ecx
-subl $1,%ecx
-movl %edi,%eax
-shll %cl,%eax
-movl %eax,-96(%ebp)
-movl $0,-104(%ebp)
-movl -104(%ebp),%edi
-notl %edi
-movl -100(%ebp),%esi
-movl %esi,%ecx
-movl %edi,%eax
-shrl %cl,%eax
-movl %eax,-108(%ebp)
-movl %esi,%ecx
-movl %edi,%eax
-shll %cl,%eax
-movl %eax,-104(%ebp)
-movl $0,-88(%ebp)
-jmp .LC2455
-.LC2452:
-movl -100(%ebp),%edi
-cmpl %edi,-88(%ebp)
-jge .LC2463
-movl $1,-132(%ebp)
-jmp .LC2464
-.LC2463:
-movl $0,-132(%ebp)
-.LC2464:
-movl -92(%ebp),%edi
-andl -104(%ebp),%edi
-cmpl $0,%edi
-jne .LC2465
-movl $1,-136(%ebp)
-jmp .LC2466
-.LC2465:
-movl $0,-136(%ebp)
-.LC2466:
-movl -136(%ebp),%edi
-cmpl %edi,-132(%ebp)
-jne .LC2462
-movl -100(%ebp),%edi
-cmpl %edi,-88(%ebp)
-jge .LC2467
-movl $1,-140(%ebp)
-jmp .LC2468
-.LC2467:
-movl $0,-140(%ebp)
-.LC2468:
-movl -96(%ebp),%edi
-andl -108(%ebp),%edi
-cmpl $0,%edi
-jne .LC2469
-movl $1,-144(%ebp)
-jmp .LC2470
-.LC2469:
-movl $0,-144(%ebp)
-.LC2470:
-movl -144(%ebp),%edi
-cmpl %edi,-140(%ebp)
-je .LC2456
-.LC2462:
-movl $1,-84(%ebp)
-.LC2456:
-movl -92(%ebp),%edi
-leal (,%edi,2),%edi
-movl %edi,-92(%ebp)
-movl -96(%ebp),%edi
-shrl $1,%edi
-movl %edi,-96(%ebp)
-.LC2453:
-incl -88(%ebp)
-.LC2455:
-movl 20(%ebp),%edi
-movl 16(%edi),%edi
-cmpl %edi,-88(%ebp)
-jl .LC2452
-.LC2449:
-incl -100(%ebp)
-.LC2451:
-movl 20(%ebp),%edi
-movl 16(%edi),%edi
-cmpl %edi,-100(%ebp)
-jl .LC2448
-cmpl $0,-84(%ebp)
-je .LC2471
-addl $2,-120(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2473
-pushl $2
-pushl $s757er.2438
-call printf
-addl $8,%esp
-.LC2473:
-.LC2471:
-movl $3,-16(%ebp)
-movl $2,-12(%ebp)
-movl $1,-8(%ebp)
-movl -12(%ebp),%edi
-cmpl %edi,-16(%ebp)
-jge .LC2481
-movl $1,-136(%ebp)
-jmp .LC2482
-.LC2481:
-movl $0,-136(%ebp)
-.LC2482:
-movl -8(%ebp),%edi
-cmpl %edi,-136(%ebp)
-jge .LC2479
-movl $1,-132(%ebp)
-jmp .LC2480
-.LC2479:
-movl $0,-132(%ebp)
-.LC2480:
-cmpl $1,-132(%ebp)
-je .LC2475
-addl $4,-120(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2483
-pushl $4
-pushl $s757er.2438
-call printf
-addl $8,%esp
-.LC2483:
-.LC2475:
-leal -76(%ebp),%edi
-leal -80(%ebp),%esi
-cmpl %esi,%edi
-jne .LC2485
-addl $8,-120(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2488
-pushl $8
-pushl $s757er.2438
-call printf
-addl $8,%esp
-.LC2488:
-.LC2485:
-leal -76(%ebp),%edi
-leal -80(%ebp),%esi
-cmpl %esi,%edi
-jae .LC2490
-movl 20(%ebp),%edi
-cmpl $0,40(%edi)
-je .LC2493
-pushl $.LC2495
-call printf
-addl $4,%esp
-.LC2493:
-.LC2490:
-movl $0,-84(%ebp)
-movl $0,-88(%ebp)
-.LC2496:
-movl -88(%ebp),%edi
-leal -80(%ebp),%esi
-movl $1,(%esi,%edi,4)
-.LC2497:
-incl -88(%ebp)
-cmpl $16,-88(%ebp)
-jl .LC2496
-movl $0,-76(%ebp)
-movl $0,-64(%ebp)
-movl $0,-56(%ebp)
-movl $0,-52(%ebp)
-movl $0,-44(%ebp)
-movl $0,-28(%ebp)
-movl $0,-16(%ebp)
-.LC2506:
-movl $0,-12(%ebp)
-.LC2510:
-movl $0,-8(%ebp)
-.LC2514:
-movl $0,-4(%ebp)
-.LC2518:
-movl -12(%ebp),%edi
-cmpl %edi,-16(%ebp)
-jge .LC2529
-movl $1,-144(%ebp)
-jmp .LC2530
-.LC2529:
-movl $0,-144(%ebp)
-.LC2530:
-movl -4(%ebp),%edi
-cmpl %edi,-8(%ebp)
-jge .LC2531
-movl $1,-148(%ebp)
-jmp .LC2532
-.LC2531:
-movl $0,-148(%ebp)
-.LC2532:
-movl -148(%ebp),%edi
-cmpl %edi,-144(%ebp)
-jne .LC2527
-movl $1,-140(%ebp)
-jmp .LC2528
-.LC2527:
-movl $0,-140(%ebp)
-.LC2528:
-movl -16(%ebp),%edi
-movl -12(%ebp),%esi
-leal (,%esi,4),%esi
-leal (%esi,%edi,8),%edi
-movl -8(%ebp),%esi
-leal (,%esi,2),%esi
-leal (%esi,%edi),%edi
-movl -4(%ebp),%esi
-leal (%esi,%edi),%edi
-leal -80(%ebp),%esi
-movl (%esi,%edi,4),%edi
-cmpl %edi,-140(%ebp)
-je .LC2522
-movl $1,-84(%ebp)
-.LC2522:
-.LC2519:
-incl -4(%ebp)
-cmpl $2,-4(%ebp)
-jl .LC2518
-.LC2515:
-incl -8(%ebp)
-cmpl $2,-8(%ebp)
-jl .LC2514
-.LC2511:
-incl -12(%ebp)
-cmpl $2,-12(%ebp)
-jl .LC2510
-.LC2507:
-incl -16(%ebp)
-cmpl $2,-16(%ebp)
-jl .LC2506
-cmpl $0,-84(%ebp)
-je .LC2533
-addl $16,-120(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2535
-pushl $16
-pushl $s757er.2438
-call printf
-addl $8,%esp
-.LC2535:
-.LC2533:
-movl $0,-128(%ebp)
-movl -128(%ebp),%edi
-cmpl $0,%edi
-je .LC2537
-addl $32,-120(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2539
-pushl $32
-pushl $s757er.2438
-call printf
-addl $8,%esp
-.LC2539:
-.LC2537:
-movl -120(%ebp),%eax
-.LC2437:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf2541:
-.size s757,.Lf2541-s757
-.data
-.align 1
-.type fl.2543,@object
-fl.2543:
-.byte 76
-.byte 111
-.byte 99
-.byte 97
-.byte 108
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.size fl.2543,17
-.align 1
-.type s7813er.2544,@object
-s7813er.2544:
-.byte 115
-.byte 55
-.byte 56
-.byte 49
-.byte 51
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s7813er.2544,12
-.align 1
-.type qs7813.2545,@object
-.size qs7813.2545,8
-qs7813.2545:
-.byte 115
-.byte 55
-.byte 56
-.byte 49
-.byte 51
-.byte 32
-.byte 32
-.byte 0
-.globl s7813
-.text
-.align 16
-.type s7813,@function
-s7813:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $88,%esp
-leal qs7813.2545,%edi
-movl %edi,-24(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%esi
-movl %esi,-28(%ebp)
-movl $0,-8(%ebp)
-movl $0,-32(%ebp)
-movl 48(%edi),%edi
-movl %edi,-4(%ebp)
-.LC2546:
-.LC2547:
-movl -28(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-28(%ebp)
-movl -24(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-24(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC2546
-jmp .LC2549
-movl $1,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2551
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2551:
-.LC2549:
-jmp .LC2553
-movl $2,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2555
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2555:
-.LC2553:
-jmp .LC2557
-movl $3,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2559
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2559:
-.LC2557:
-jmp .LC2561
-movl $4,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2563
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2563:
-.LC2561:
-jmp .LC2565
-movl $5,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2567
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2567:
-.LC2565:
-jmp .LC2569
-movl $6,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2571
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2571:
-.LC2569:
-jmp .LC2573
-movl $7,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2575
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2575:
-.LC2573:
-jmp .LC2577
-movl $8,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2579
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2579:
-.LC2577:
-jmp .LC2581
-movl $9,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2583
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2583:
-.LC2581:
-jmp .LC2585
-movl $10,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2587
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2587:
-.LC2585:
-jmp .LC2589
-movl $11,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2591
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2591:
-.LC2589:
-jmp .LC2593
-movl $12,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2595
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2595:
-.LC2593:
-jmp .LC2597
-movl $13,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2599
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2599:
-.LC2597:
-jmp .LC2601
-movl $14,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2603
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2603:
-.LC2601:
-jmp .LC2605
-movl $15,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2607
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2607:
-.LC2605:
-jmp .LC2609
-movl $16,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2611
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2611:
-.LC2609:
-jmp .LC2613
-movl $17,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2615
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2615:
-.LC2613:
-jmp .LC2617
-movl $18,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2619
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2619:
-.LC2617:
-jmp .LC2621
-movl $16,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2623
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2623:
-.LC2621:
-jmp .LC2625
-movl $20,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2627
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2627:
-.LC2625:
-jmp .LC2629
-movl $21,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2631
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2631:
-.LC2629:
-jmp .LC2633
-movl $22,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2635
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2635:
-.LC2633:
-jmp .LC2637
-movl $23,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2639
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2639:
-.LC2637:
-jmp .LC2641
-movl $24,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2643
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2643:
-.LC2641:
-jmp .LC2645
-movl $25,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2647
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2647:
-.LC2645:
-jmp .LC2649
-movl $26,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2651
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2651:
-.LC2649:
-jmp .LC2653
-movl $27,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2655
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2655:
-.LC2653:
-jmp .LC2657
-movl $28,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2659
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2659:
-.LC2657:
-jmp .LC2661
-movl $26,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2663
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2663:
-.LC2661:
-jmp .LC2665
-movl $30,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2667
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2667:
-.LC2665:
-jmp .LC2669
-movl $31,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2671
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2671:
-.LC2669:
-jmp .LC2673
-movl $32,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2675
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2675:
-.LC2673:
-jmp .LC2677
-movl $33,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2679
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2679:
-.LC2677:
-jmp .LC2681
-movl $34,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2683
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2683:
-.LC2681:
-jmp .LC2685
-movl $35,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2687
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2687:
-.LC2685:
-jmp .LC2689
-movl $36,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2691
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2691:
-.LC2689:
-jmp .LC2693
-movl $37,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2695
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2695:
-.LC2693:
-jmp .LC2697
-movl $38,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2699
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2699:
-.LC2697:
-jmp .LC2701
-movl $39,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2703
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2703:
-.LC2701:
-jmp .LC2705
-movl $40,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2707
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2707:
-.LC2705:
-jmp .LC2709
-movl $41,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2711
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2711:
-.LC2709:
-jmp .LC2713
-movl $42,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2715
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2715:
-.LC2713:
-jmp .LC2717
-movl $43,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2719
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2719:
-.LC2717:
-jmp .LC2721
-movl $44,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2723
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2723:
-.LC2721:
-jmp .LC2725
-movl $45,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2727
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2727:
-.LC2725:
-jmp .LC2729
-movl $46,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2731
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2731:
-.LC2729:
-jmp .LC2733
-movl $47,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2735
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2735:
-.LC2733:
-jmp .LC2737
-movl $48,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2739
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2739:
-.LC2737:
-jmp .LC2741
-movl $49,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2743
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2743:
-.LC2741:
-jmp .LC2745
-movl $50,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2747
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2747:
-.LC2745:
-jmp .LC2749
-movl $51,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2751
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2751:
-.LC2749:
-jmp .LC2753
-movl $52,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2755
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2755:
-.LC2753:
-jmp .LC2757
-movl $53,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2759
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2759:
-.LC2757:
-jmp .LC2761
-movl $54,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2763
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2763:
-.LC2761:
-jmp .LC2765
-movl $55,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2767
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2767:
-.LC2765:
-jmp .LC2769
-movl $56,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2771
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2771:
-.LC2769:
-jmp .LC2773
-movl $57,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2775
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2775:
-.LC2773:
-jmp .LC2777
-movl $58,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2779
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2779:
-.LC2777:
-jmp .LC2781
-movl $56,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2783
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2783:
-.LC2781:
-jmp .LC2785
-movl $60,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2787
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2787:
-.LC2785:
-jmp .LC2789
-movl $61,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2791
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2791:
-.LC2789:
-jmp .LC2793
-movl $62,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2795
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2795:
-.LC2793:
-jmp .LC2797
-movl $63,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2799
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2799:
-.LC2797:
-jmp .LC2801
-movl $64,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2803
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2803:
-.LC2801:
-jmp .LC2805
-movl $65,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2807
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2807:
-.LC2805:
-jmp .LC2809
-movl $66,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2811
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2811:
-.LC2809:
-jmp .LC2813
-movl $67,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2815
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2815:
-.LC2813:
-jmp .LC2817
-movl $68,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2819
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2819:
-.LC2817:
-jmp .LC2821
-movl $69,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2823
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2823:
-.LC2821:
-jmp .LC2825
-movl $70,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2827
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2827:
-.LC2825:
-jmp .LC2829
-movl $71,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2831
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2831:
-.LC2829:
-jmp .LC2833
-movl $72,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2835
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2835:
-.LC2833:
-jmp .LC2837
-movl $73,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2839
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2839:
-.LC2837:
-jmp .LC2841
-movl $74,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2843
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2843:
-.LC2841:
-jmp .LC2845
-movl $75,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2847
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2847:
-.LC2845:
-cmpl $0,-8(%ebp)
-je .LC2849
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2851
-pushl $1
-pushl $s7813er.2544
-call printf
-addl $8,%esp
-.LC2851:
-incl -32(%ebp)
-.LC2849:
-movl $0,-8(%ebp)
-movl $0,-16(%ebp)
-movl $0,-12(%ebp)
-movl -12(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-12(%ebp)
-cmpl $0,%edi
-je .LC2854
-movl -16(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-16(%ebp)
-cmpl $0,%edi
-je .LC2854
-movl $1,-44(%ebp)
-jmp .LC2855
-.LC2854:
-movl $0,-44(%ebp)
-.LC2855:
-movl -44(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $1,-12(%ebp)
-je .LC2856
-movl $1,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2858
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2858:
-.LC2856:
-cmpl $0,-16(%ebp)
-je .LC2860
-movl $2,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2862
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2862:
-.LC2860:
-cmpl $0,-20(%ebp)
-je .LC2864
-movl $3,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2866
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2866:
-.LC2864:
-cmpl $0,-12(%ebp)
-je .LC2869
-movl -16(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-16(%ebp)
-cmpl $0,%edi
-je .LC2869
-movl $1,-48(%ebp)
-jmp .LC2870
-.LC2869:
-movl $0,-48(%ebp)
-.LC2870:
-movl -48(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $1,-12(%ebp)
-je .LC2871
-movl $4,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2873
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2873:
-.LC2871:
-cmpl $1,-16(%ebp)
-je .LC2875
-movl $5,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2877
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2877:
-.LC2875:
-cmpl $0,-20(%ebp)
-je .LC2879
-movl $6,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2881
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2881:
-.LC2879:
-movl -12(%ebp),%edi
-movl %edi,%esi
-subl $1,%esi
-movl %esi,-12(%ebp)
-cmpl $0,%edi
-je .LC2884
-cmpl $0,-16(%ebp)
-je .LC2884
-movl $1,-52(%ebp)
-jmp .LC2885
-.LC2884:
-movl $0,-52(%ebp)
-.LC2885:
-movl -52(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $0,-12(%ebp)
-je .LC2886
-movl $7,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2888
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2888:
-.LC2886:
-cmpl $1,-16(%ebp)
-je .LC2890
-movl $8,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2892
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2892:
-.LC2890:
-cmpl $1,-20(%ebp)
-je .LC2894
-movl $9,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2896
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2896:
-.LC2894:
-cmpl $0,-12(%ebp)
-je .LC2899
-movl -16(%ebp),%edi
-movl %edi,%esi
-subl $1,%esi
-movl %esi,-16(%ebp)
-cmpl $0,%edi
-je .LC2899
-movl $1,-56(%ebp)
-jmp .LC2900
-.LC2899:
-movl $0,-56(%ebp)
-.LC2900:
-movl -56(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $0,-12(%ebp)
-je .LC2901
-movl $10,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2903
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2903:
-.LC2901:
-cmpl $1,-16(%ebp)
-je .LC2905
-movl $11,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2907
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2907:
-.LC2905:
-cmpl $0,-20(%ebp)
-je .LC2909
-movl $12,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2911
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2911:
-.LC2909:
-cmpl $0,-8(%ebp)
-je .LC2913
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2915
-pushl $2
-pushl $s7813er.2544
-call printf
-addl $8,%esp
-.LC2915:
-addl $2,-32(%ebp)
-.LC2913:
-movl $0,-8(%ebp)
-movl $0,-16(%ebp)
-movl $0,-12(%ebp)
-movl -12(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-12(%ebp)
-cmpl $0,%edi
-jne .LC2920
-cmpl $0,-16(%ebp)
-je .LC2918
-.LC2920:
-movl $1,-60(%ebp)
-jmp .LC2919
-.LC2918:
-movl $0,-60(%ebp)
-.LC2919:
-movl -60(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $1,-12(%ebp)
-je .LC2921
-movl $1,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2923
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2923:
-.LC2921:
-cmpl $0,-16(%ebp)
-je .LC2925
-movl $2,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2927
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2927:
-.LC2925:
-cmpl $0,-20(%ebp)
-je .LC2929
-movl $3,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2931
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2931:
-.LC2929:
-movl -16(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-16(%ebp)
-cmpl $0,%edi
-jne .LC2936
-cmpl $0,-12(%ebp)
-je .LC2934
-.LC2936:
-movl $1,-64(%ebp)
-jmp .LC2935
-.LC2934:
-movl $0,-64(%ebp)
-.LC2935:
-movl -64(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $1,-12(%ebp)
-je .LC2937
-movl $4,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2939
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2939:
-.LC2937:
-cmpl $1,-16(%ebp)
-je .LC2941
-movl $5,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2943
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2943:
-.LC2941:
-cmpl $1,-20(%ebp)
-je .LC2945
-movl $6,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2947
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2947:
-.LC2945:
-movl -12(%ebp),%edi
-movl %edi,%esi
-subl $1,%esi
-movl %esi,-12(%ebp)
-cmpl $0,%edi
-jne .LC2952
-movl -16(%ebp),%edi
-movl %edi,%esi
-subl $1,%esi
-movl %esi,-16(%ebp)
-cmpl $0,%edi
-je .LC2950
-.LC2952:
-movl $1,-68(%ebp)
-jmp .LC2951
-.LC2950:
-movl $0,-68(%ebp)
-.LC2951:
-movl -68(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $0,-12(%ebp)
-je .LC2953
-movl $7,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2955
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2955:
-.LC2953:
-cmpl $1,-16(%ebp)
-je .LC2957
-movl $8,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2959
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2959:
-.LC2957:
-cmpl $1,-20(%ebp)
-je .LC2961
-movl $9,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2963
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2963:
-.LC2961:
-cmpl $0,-12(%ebp)
-jne .LC2968
-movl -16(%ebp),%edi
-movl %edi,%esi
-subl $1,%esi
-movl %esi,-16(%ebp)
-cmpl $0,%edi
-je .LC2966
-.LC2968:
-movl $1,-72(%ebp)
-jmp .LC2967
-.LC2966:
-movl $0,-72(%ebp)
-.LC2967:
-movl -72(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $0,-12(%ebp)
-je .LC2969
-movl $10,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2971
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2971:
-.LC2969:
-cmpl $0,-16(%ebp)
-je .LC2973
-movl $11,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2975
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2975:
-.LC2973:
-cmpl $1,-20(%ebp)
-je .LC2977
-movl $12,-8(%ebp)
-cmpl $0,-4(%ebp)
-je .LC2979
-pushl -8(%ebp)
-pushl $fl.2543
-call printf
-addl $8,%esp
-.LC2979:
-.LC2977:
-cmpl $0,-8(%ebp)
-je .LC2981
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2983
-pushl $4
-pushl $s7813er.2544
-call printf
-addl $8,%esp
-.LC2983:
-addl $4,-32(%ebp)
-.LC2981:
-movl $0,-16(%ebp)
-movl $0,-12(%ebp)
-movl $0,-36(%ebp)
-movl $1,-40(%ebp)
-cmpl $0,-40(%ebp)
-je .LC2987
-movl -36(%ebp),%edi
-movl %edi,-76(%ebp)
-jmp .LC2988
-.LC2987:
-cmpl $0,-40(%ebp)
-je .LC2989
-movl -12(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-12(%ebp)
-movl %edi,-80(%ebp)
-jmp .LC2990
-.LC2989:
-movl -16(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-16(%ebp)
-movl %edi,-80(%ebp)
-.LC2990:
-movl -80(%ebp),%edi
-movl %edi,-76(%ebp)
-.LC2988:
-movl -76(%ebp),%edi
-movl %edi,-20(%ebp)
-cmpl $0,-20(%ebp)
-jne .LC2994
-cmpl $0,-12(%ebp)
-jne .LC2994
-cmpl $0,-16(%ebp)
-je .LC2991
-.LC2994:
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC2995
-pushl $8
-pushl $s7813er.2544
-call printf
-addl $8,%esp
-.LC2995:
-addl $8,-32(%ebp)
-.LC2991:
-cmpl $0,-40(%ebp)
-je .LC3002
-movl -36(%ebp),%edi
-movl %edi,-84(%ebp)
-jmp .LC3003
-.LC3002:
-movl $1,-84(%ebp)
-.LC3003:
-cmpl $0,-84(%ebp)
-jne .LC3001
-cmpl $0,-36(%ebp)
-je .LC3004
-movl $1,-88(%ebp)
-jmp .LC3005
-.LC3004:
-movl -36(%ebp),%edi
-movl %edi,-88(%ebp)
-.LC3005:
-cmpl $0,-88(%ebp)
-je .LC2997
-.LC3001:
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3006
-pushl $16
-pushl $s7813er.2544
-call printf
-addl $8,%esp
-.LC3006:
-addl $16,-32(%ebp)
-.LC2997:
-movl -32(%ebp),%eax
-.LC2542:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3008:
-.size s7813,.Lf3008-s7813
-.data
-.align 1
-.type s81er.3010,@object
-s81er.3010:
-.byte 115
-.byte 56
-.byte 49
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s81er.3010,10
-.align 1
-.type qs81.3011,@object
-.size qs81.3011,8
-qs81.3011:
-.byte 115
-.byte 56
-.byte 49
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.type badtest.3012,@object
-badtest.3012:
-.byte 82
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 117
-.byte 110
-.byte 114
-.byte 101
-.byte 108
-.byte 105
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.size badtest.3012,38
-.align 1
-.type goodtest.3013,@object
-goodtest.3013:
-.byte 37
-.byte 100
-.byte 32
-.byte 114
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 118
-.byte 97
-.byte 114
-.byte 105
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.size goodtest.3013,40
-.globl s81
-.text
-.align 16
-.type s81,@function
-s81:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $56,%esp
-movl $0,-56(%ebp)
-movl $0,-44(%ebp)
-movl $0,-48(%ebp)
-movl $0,-52(%ebp)
-leal qs81.3011,%edi
-movl %edi,-36(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-40(%ebp)
-.LC3014:
-.LC3015:
-movl -40(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-40(%ebp)
-movl -36(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-36(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC3014
-movl $1,-16(%ebp)
-movl $0,-20(%ebp)
-.LC3017:
-movl -16(%ebp),%edi
-movl %edi,%ebx
-movb %bl,-1(%ebp)
-movb %bl,-21(%ebp)
-leal -16(%ebp),%esi
-movl %esi,-8(%ebp)
-leal -16(%ebp),%esi
-movl %esi,-28(%ebp)
-movl %edi,-12(%ebp)
-movl %edi,-32(%ebp)
-movsbl -1(%ebp),%edi
-movsbl -21(%ebp),%esi
-cmpl %esi,%edi
-je .LC3021
-movl $1,-44(%ebp)
-.LC3021:
-movl -8(%ebp),%edi
-movl -28(%ebp),%esi
-cmpl %esi,%edi
-je .LC3023
-movl $1,-48(%ebp)
-.LC3023:
-movl -32(%ebp),%edi
-cmpl %edi,-12(%ebp)
-je .LC3025
-movl $1,-52(%ebp)
-.LC3025:
-sall $1,-16(%ebp)
-.LC3018:
-incl -20(%ebp)
-cmpl $50,-20(%ebp)
-jl .LC3017
-cmpl $0,-44(%ebp)
-je .LC3027
-incl -56(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3029
-pushl $1
-pushl $s81er.3010
-call printf
-addl $8,%esp
-.LC3029:
-.LC3027:
-cmpl $0,-48(%ebp)
-je .LC3031
-addl $2,-56(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3033
-pushl $2
-pushl $s81er.3010
-call printf
-addl $8,%esp
-.LC3033:
-.LC3031:
-cmpl $0,-52(%ebp)
-je .LC3035
-addl $4,-56(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3037
-pushl $4
-pushl $s81er.3010
-call printf
-addl $8,%esp
-.LC3037:
-.LC3035:
-call regc
-movl %eax,-16(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,40(%edi)
-je .LC3039
-cmpl $0,-16(%ebp)
-jge .LC3041
-pushl $.LC434
-pushl $badtest.3012
-call printf
-addl $8,%esp
-jmp .LC3042
-.LC3041:
-pushl $.LC434
-pushl -16(%ebp)
-pushl $goodtest.3013
-call printf
-addl $12,%esp
-.LC3042:
-.LC3039:
-call regp
-movl %eax,-16(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,40(%edi)
-je .LC3043
-cmpl $0,-16(%ebp)
-jge .LC3045
-pushl $.LC3047
-pushl $badtest.3012
-call printf
-addl $8,%esp
-jmp .LC3046
-.LC3045:
-pushl $.LC3047
-pushl -16(%ebp)
-pushl $goodtest.3013
-call printf
-addl $12,%esp
-.LC3046:
-.LC3043:
-call regi
-movl %eax,-16(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,40(%edi)
-je .LC3048
-cmpl $0,-16(%ebp)
-jge .LC3050
-pushl $.LC435
-pushl $badtest.3012
-call printf
-addl $8,%esp
-jmp .LC3051
-.LC3050:
-pushl $.LC435
-pushl -16(%ebp)
-pushl $goodtest.3013
-call printf
-addl $12,%esp
-.LC3051:
-.LC3048:
-movl -56(%ebp),%eax
-.LC3009:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3052:
-.size s81,.Lf3052-s81
-.globl regc
-.align 16
-.type regc,@function
-regc:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $148,%esp
-movb $0,-138(%ebp)
-movb $1,-117(%ebp)
-movb $2,-118(%ebp)
-movb $3,-119(%ebp)
-movb $4,-1(%ebp)
-movb $5,-120(%ebp)
-movb $6,-2(%ebp)
-movb $7,-121(%ebp)
-movb $8,-3(%ebp)
-movb $9,-122(%ebp)
-movb $10,-4(%ebp)
-movb $11,-123(%ebp)
-movb $12,-5(%ebp)
-movb $13,-124(%ebp)
-movb $14,-6(%ebp)
-movb $15,-125(%ebp)
-movb $16,-7(%ebp)
-movb $17,-126(%ebp)
-movb $18,-8(%ebp)
-movb $19,-127(%ebp)
-movb $20,-9(%ebp)
-movb $21,-128(%ebp)
-movb $22,-10(%ebp)
-movb $23,-129(%ebp)
-movb $24,-11(%ebp)
-movb $25,-130(%ebp)
-movb $26,-12(%ebp)
-movb $27,-131(%ebp)
-movb $28,-13(%ebp)
-movb $29,-132(%ebp)
-movb $30,-14(%ebp)
-movb $31,-133(%ebp)
-movb $32,-15(%ebp)
-movb $33,-134(%ebp)
-movb $34,-16(%ebp)
-movb $35,-135(%ebp)
-movb $36,-136(%ebp)
-movb $37,-137(%ebp)
-movb $38,-139(%ebp)
-leal -117(%ebp),%edi
-leal -138(%ebp),%esi
-movl %edi,%ebx
-subl %esi,%ebx
-movl %ebx,%esi
-movl %esi,-104(%ebp)
-leal -118(%ebp),%esi
-subl %edi,%esi
-movl %esi,%edi
-movl %edi,-100(%ebp)
-leal -119(%ebp),%edi
-leal -118(%ebp),%esi
-subl %esi,%edi
-movl %edi,-96(%ebp)
-leal -120(%ebp),%edi
-leal -119(%ebp),%esi
-subl %esi,%edi
-movl %edi,-92(%ebp)
-leal -121(%ebp),%edi
-leal -120(%ebp),%esi
-subl %esi,%edi
-movl %edi,-88(%ebp)
-leal -122(%ebp),%edi
-leal -121(%ebp),%esi
-subl %esi,%edi
-movl %edi,-84(%ebp)
-leal -123(%ebp),%edi
-leal -122(%ebp),%esi
-subl %esi,%edi
-movl %edi,-80(%ebp)
-leal -124(%ebp),%edi
-leal -123(%ebp),%esi
-subl %esi,%edi
-movl %edi,-76(%ebp)
-leal -125(%ebp),%edi
-leal -124(%ebp),%esi
-subl %esi,%edi
-movl %edi,-72(%ebp)
-leal -126(%ebp),%edi
-leal -125(%ebp),%esi
-subl %esi,%edi
-movl %edi,-68(%ebp)
-leal -127(%ebp),%edi
-leal -126(%ebp),%esi
-subl %esi,%edi
-movl %edi,-64(%ebp)
-leal -128(%ebp),%edi
-leal -127(%ebp),%esi
-subl %esi,%edi
-movl %edi,-60(%ebp)
-leal -129(%ebp),%edi
-leal -128(%ebp),%esi
-subl %esi,%edi
-movl %edi,-56(%ebp)
-leal -130(%ebp),%edi
-leal -129(%ebp),%esi
-subl %esi,%edi
-movl %edi,-52(%ebp)
-leal -131(%ebp),%edi
-leal -130(%ebp),%esi
-subl %esi,%edi
-movl %edi,-48(%ebp)
-leal -132(%ebp),%edi
-leal -131(%ebp),%esi
-subl %esi,%edi
-movl %edi,-44(%ebp)
-leal -133(%ebp),%edi
-leal -132(%ebp),%esi
-subl %esi,%edi
-movl %edi,-40(%ebp)
-leal -134(%ebp),%edi
-leal -133(%ebp),%esi
-subl %esi,%edi
-movl %edi,-36(%ebp)
-leal -135(%ebp),%edi
-leal -134(%ebp),%esi
-subl %esi,%edi
-movl %edi,-32(%ebp)
-leal -136(%ebp),%edi
-leal -135(%ebp),%esi
-subl %esi,%edi
-movl %edi,-28(%ebp)
-leal -137(%ebp),%edi
-leal -136(%ebp),%esi
-subl %esi,%edi
-movl %edi,-24(%ebp)
-leal -139(%ebp),%edi
-leal -137(%ebp),%esi
-subl %esi,%edi
-movl %edi,-20(%ebp)
-movl -104(%ebp),%edi
-movl %edi,-116(%ebp)
-movl $1,-112(%ebp)
-movl $0,-108(%ebp)
-.LC3075:
-movl -112(%ebp),%edi
-cmpl $1,%edi
-je .LC3081
-cmpl $2,%edi
-je .LC3084
-cmpl $3,%edi
-je .LC3089
-jmp .LC3079
-.LC3081:
-movl -108(%ebp),%edi
-leal -104(%ebp),%esi
-movl -116(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-je .LC3080
-movl -108(%ebp),%edi
-leal -104(%ebp),%esi
-movl (%esi,%edi,4),%edi
-movl %edi,-148(%ebp)
-movl $2,-112(%ebp)
-movl $1,-144(%ebp)
-jmp .LC3080
-.LC3084:
-movl -108(%ebp),%edi
-leal -104(%ebp),%esi
-movl -116(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-jne .LC3085
-movl $3,-112(%ebp)
-jmp .LC3080
-.LC3085:
-movl -108(%ebp),%edi
-leal -104(%ebp),%esi
-movl -148(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-jne .LC3087
-incl -144(%ebp)
-jmp .LC3080
-.LC3087:
-movl $4,-112(%ebp)
-jmp .LC3080
-.LC3089:
-movl -108(%ebp),%edi
-leal -104(%ebp),%esi
-movl -116(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-je .LC3080
-movl $4,-112(%ebp)
-.LC3079:
-.LC3080:
-.LC3076:
-incl -108(%ebp)
-cmpl $22,-108(%ebp)
-jl .LC3075
-cmpl $3,-112(%ebp)
-jne .LC3092
-movl $16,%edi
-movl %edi,%eax
-subl -144(%ebp),%eax
-jmp .LC3053
-.LC3092:
-movl $-1,%eax
-.LC3053:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3094:
-.size regc,.Lf3094-regc
-.globl regi
-.align 16
-.type regi,@function
-regi:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $264,%esp
-movl $0,-252(%ebp)
-movl $1,-168(%ebp)
-movl $2,-172(%ebp)
-movl $3,-176(%ebp)
-movl $4,-4(%ebp)
-movl $5,-180(%ebp)
-movl $6,-8(%ebp)
-movl $7,-184(%ebp)
-movl $8,-12(%ebp)
-movl $9,-188(%ebp)
-movl $10,-16(%ebp)
-movl $11,-192(%ebp)
-movl $12,-20(%ebp)
-movl $13,-196(%ebp)
-movl $14,-24(%ebp)
-movl $15,-200(%ebp)
-movl $16,-28(%ebp)
-movl $17,-204(%ebp)
-movl $18,-32(%ebp)
-movl $19,-208(%ebp)
-movl $20,-36(%ebp)
-movl $21,-212(%ebp)
-movl $22,-40(%ebp)
-movl $23,-216(%ebp)
-movl $24,-44(%ebp)
-movl $25,-220(%ebp)
-movl $26,-48(%ebp)
-movl $27,-224(%ebp)
-movl $28,-52(%ebp)
-movl $29,-228(%ebp)
-movl $30,-56(%ebp)
-movl $31,-232(%ebp)
-movl $32,-60(%ebp)
-movl $33,-236(%ebp)
-movl $34,-64(%ebp)
-movl $35,-240(%ebp)
-movl $36,-244(%ebp)
-movl $37,-248(%ebp)
-movl $38,-256(%ebp)
-leal -168(%ebp),%edi
-movl $4,%esi
-leal -252(%ebp),%ebx
-movl %edi,%edx
-subl %ebx,%edx
-movl %edx,%eax
-movl %esi,%ecx
-cdq
-idivl %ecx
-movl %eax,-152(%ebp)
-leal -172(%ebp),%ebx
-subl %edi,%ebx
-movl %ebx,%eax
-movl %esi,%ecx
-cdq
-idivl %ecx
-movl %eax,-148(%ebp)
-leal -176(%ebp),%edi
-leal -172(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-144(%ebp)
-leal -180(%ebp),%edi
-leal -176(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-140(%ebp)
-leal -184(%ebp),%edi
-leal -180(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-136(%ebp)
-leal -188(%ebp),%edi
-leal -184(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-132(%ebp)
-leal -192(%ebp),%edi
-leal -188(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-128(%ebp)
-leal -196(%ebp),%edi
-leal -192(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-124(%ebp)
-leal -200(%ebp),%edi
-leal -196(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-120(%ebp)
-leal -204(%ebp),%edi
-leal -200(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-116(%ebp)
-leal -208(%ebp),%edi
-leal -204(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-112(%ebp)
-leal -212(%ebp),%edi
-leal -208(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-108(%ebp)
-leal -216(%ebp),%edi
-leal -212(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-104(%ebp)
-leal -220(%ebp),%edi
-leal -216(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-100(%ebp)
-leal -224(%ebp),%edi
-leal -220(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-96(%ebp)
-leal -228(%ebp),%edi
-leal -224(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-92(%ebp)
-leal -232(%ebp),%edi
-leal -228(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-88(%ebp)
-leal -236(%ebp),%edi
-leal -232(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-84(%ebp)
-leal -240(%ebp),%edi
-leal -236(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-80(%ebp)
-leal -244(%ebp),%edi
-leal -240(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-76(%ebp)
-leal -248(%ebp),%edi
-leal -244(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-72(%ebp)
-leal -256(%ebp),%edi
-leal -248(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-68(%ebp)
-movl -152(%ebp),%edi
-movl %edi,-164(%ebp)
-movl $1,-160(%ebp)
-movl $0,-156(%ebp)
-.LC3117:
-movl -160(%ebp),%edi
-cmpl $1,%edi
-je .LC3123
-cmpl $2,%edi
-je .LC3126
-cmpl $3,%edi
-je .LC3131
-jmp .LC3121
-.LC3123:
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl -164(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-je .LC3122
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl (%esi,%edi,4),%edi
-movl %edi,-264(%ebp)
-movl $2,-160(%ebp)
-movl $1,-260(%ebp)
-jmp .LC3122
-.LC3126:
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl -164(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-jne .LC3127
-movl $3,-160(%ebp)
-jmp .LC3122
-.LC3127:
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl -264(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-jne .LC3129
-incl -260(%ebp)
-jmp .LC3122
-.LC3129:
-movl $4,-160(%ebp)
-jmp .LC3122
-.LC3131:
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl -164(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-je .LC3122
-movl $4,-160(%ebp)
-.LC3121:
-.LC3122:
-.LC3118:
-incl -156(%ebp)
-cmpl $22,-156(%ebp)
-jl .LC3117
-cmpl $3,-160(%ebp)
-jne .LC3134
-movl $16,%edi
-movl %edi,%eax
-subl -260(%ebp),%eax
-jmp .LC3095
-.LC3134:
-movl $-1,%eax
-.LC3095:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3136:
-.size regi,.Lf3136-regi
-.globl regp
-.align 16
-.type regp,@function
-regp:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $264,%esp
-leal -252(%ebp),%edi
-movl %edi,-252(%ebp)
-leal -228(%ebp),%edi
-movl %edi,-228(%ebp)
-leal -232(%ebp),%edi
-movl %edi,-232(%ebp)
-leal -236(%ebp),%edi
-movl %edi,-236(%ebp)
-leal -164(%ebp),%edi
-movl %edi,-4(%ebp)
-leal -164(%ebp),%edi
-movl %edi,-164(%ebp)
-leal -168(%ebp),%edi
-movl %edi,-8(%ebp)
-leal -168(%ebp),%edi
-movl %edi,-168(%ebp)
-leal -172(%ebp),%edi
-movl %edi,-12(%ebp)
-leal -172(%ebp),%edi
-movl %edi,-172(%ebp)
-leal -176(%ebp),%edi
-movl %edi,-16(%ebp)
-leal -176(%ebp),%edi
-movl %edi,-176(%ebp)
-leal -180(%ebp),%edi
-movl %edi,-20(%ebp)
-leal -180(%ebp),%edi
-movl %edi,-180(%ebp)
-leal -184(%ebp),%edi
-movl %edi,-24(%ebp)
-leal -184(%ebp),%edi
-movl %edi,-184(%ebp)
-leal -188(%ebp),%edi
-movl %edi,-28(%ebp)
-leal -188(%ebp),%edi
-movl %edi,-188(%ebp)
-leal -192(%ebp),%edi
-movl %edi,-32(%ebp)
-leal -192(%ebp),%edi
-movl %edi,-192(%ebp)
-leal -196(%ebp),%edi
-movl %edi,-36(%ebp)
-leal -196(%ebp),%edi
-movl %edi,-196(%ebp)
-leal -200(%ebp),%edi
-movl %edi,-40(%ebp)
-leal -200(%ebp),%edi
-movl %edi,-200(%ebp)
-leal -204(%ebp),%edi
-movl %edi,-44(%ebp)
-leal -204(%ebp),%edi
-movl %edi,-204(%ebp)
-leal -208(%ebp),%edi
-movl %edi,-48(%ebp)
-leal -208(%ebp),%edi
-movl %edi,-208(%ebp)
-leal -212(%ebp),%edi
-movl %edi,-52(%ebp)
-leal -212(%ebp),%edi
-movl %edi,-212(%ebp)
-leal -216(%ebp),%edi
-movl %edi,-56(%ebp)
-leal -216(%ebp),%edi
-movl %edi,-216(%ebp)
-leal -220(%ebp),%edi
-movl %edi,-60(%ebp)
-leal -220(%ebp),%edi
-movl %edi,-220(%ebp)
-leal -224(%ebp),%edi
-movl %edi,-64(%ebp)
-leal -224(%ebp),%edi
-movl %edi,-224(%ebp)
-leal -240(%ebp),%edi
-movl %edi,-240(%ebp)
-leal -244(%ebp),%edi
-movl %edi,-244(%ebp)
-leal -256(%ebp),%edi
-movl %edi,-256(%ebp)
-leal -228(%ebp),%edi
-movl $4,%esi
-leal -252(%ebp),%ebx
-movl %edi,%edx
-subl %ebx,%edx
-movl %edx,%eax
-movl %esi,%ecx
-cdq
-idivl %ecx
-movl %eax,-152(%ebp)
-leal -232(%ebp),%ebx
-subl %edi,%ebx
-movl %ebx,%eax
-movl %esi,%ecx
-cdq
-idivl %ecx
-movl %eax,-148(%ebp)
-leal -236(%ebp),%edi
-leal -232(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-144(%ebp)
-leal -164(%ebp),%edi
-leal -236(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-140(%ebp)
-leal -168(%ebp),%edi
-leal -164(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-136(%ebp)
-leal -172(%ebp),%edi
-leal -168(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-132(%ebp)
-leal -176(%ebp),%edi
-leal -172(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-128(%ebp)
-leal -180(%ebp),%edi
-leal -176(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-124(%ebp)
-leal -184(%ebp),%edi
-leal -180(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-120(%ebp)
-leal -188(%ebp),%edi
-leal -184(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-116(%ebp)
-leal -192(%ebp),%edi
-leal -188(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-112(%ebp)
-leal -196(%ebp),%edi
-leal -192(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-108(%ebp)
-leal -200(%ebp),%edi
-leal -196(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-104(%ebp)
-leal -204(%ebp),%edi
-leal -200(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-100(%ebp)
-leal -208(%ebp),%edi
-leal -204(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-96(%ebp)
-leal -212(%ebp),%edi
-leal -208(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-92(%ebp)
-leal -216(%ebp),%edi
-leal -212(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-88(%ebp)
-leal -220(%ebp),%edi
-leal -216(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-84(%ebp)
-leal -224(%ebp),%edi
-leal -220(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-80(%ebp)
-leal -240(%ebp),%edi
-leal -224(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-76(%ebp)
-leal -244(%ebp),%edi
-leal -240(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-72(%ebp)
-leal -256(%ebp),%edi
-leal -244(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-movl %eax,-68(%ebp)
-movl -152(%ebp),%edi
-movl %edi,-248(%ebp)
-movl $1,-160(%ebp)
-movl $0,-156(%ebp)
-.LC3159:
-movl -160(%ebp),%edi
-cmpl $1,%edi
-je .LC3165
-cmpl $2,%edi
-je .LC3168
-cmpl $3,%edi
-je .LC3173
-jmp .LC3163
-.LC3165:
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl -248(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-je .LC3164
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl (%esi,%edi,4),%edi
-movl %edi,-264(%ebp)
-movl $2,-160(%ebp)
-movl $1,-260(%ebp)
-jmp .LC3164
-.LC3168:
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl -248(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-jne .LC3169
-movl $3,-160(%ebp)
-jmp .LC3164
-.LC3169:
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl -264(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-jne .LC3171
-incl -260(%ebp)
-jmp .LC3164
-.LC3171:
-movl $4,-160(%ebp)
-jmp .LC3164
-.LC3173:
-movl -156(%ebp),%edi
-leal -152(%ebp),%esi
-movl -248(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-je .LC3164
-movl $4,-160(%ebp)
-.LC3163:
-.LC3164:
-.LC3160:
-incl -156(%ebp)
-cmpl $22,-156(%ebp)
-jl .LC3159
-cmpl $3,-160(%ebp)
-jne .LC3176
-movl $16,%edi
-movl %edi,%eax
-subl -260(%ebp),%eax
-jmp .LC3137
-.LC3176:
-movl $-1,%eax
-.LC3137:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3178:
-.size regp,.Lf3178-regp
-.bss
-.align 4
-.type x3d.3180,@object
-.size x3d.3180,420
-.lcomm x3d.3180,420
-.data
-.align 1
-.type s84er.3181,@object
-s84er.3181:
-.byte 115
-.byte 56
-.byte 52
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s84er.3181,10
-.align 1
-.type qs84.3182,@object
-.size qs84.3182,8
-qs84.3182:
-.byte 115
-.byte 56
-.byte 52
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s84
-.text
-.align 16
-.type s84,@function
-s84:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $172,%esp
-leal qs84.3182,%edi
-movl %edi,-156(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-160(%ebp)
-movl $0,-164(%ebp)
-.LC3183:
-.LC3184:
-movl -160(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-160(%ebp)
-movl -156(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-156(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC3183
-pushl $3
-call fip
-addl $4,%esp
-movl %eax,-168(%ebp)
-movl -168(%ebp),%edi
-cmpl $3,(,%edi)
-je .LC3186
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3188
-pushl $1
-pushl $s84er.3181
-call printf
-addl $8,%esp
-.LC3188:
-incl -164(%ebp)
-.LC3186:
-leal glork,%edi
-movl %edi,-172(%ebp)
-pushl $4
-call *-172(%ebp)
-addl $4,%esp
-cmpl $4,%eax
-je .LC3190
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3192
-pushl $2
-pushl $s84er.3181
-call printf
-addl $8,%esp
-.LC3192:
-addl $2,-164(%ebp)
-.LC3190:
-movl $0,-8(%ebp)
-.LC3194:
-movl -8(%ebp),%edi
-leal -80(%ebp),%esi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstps (%esi,%edi,4)
-movl -8(%ebp),%edi
-leal (,%edi,4),%edi
-leal -148(%ebp),%esi
-leal -80(%ebp),%ebx
-leal (%ebx,%edi),%ebx
-movl %ebx,(%esi,%edi)
-.LC3195:
-incl -8(%ebp)
-cmpl $17,-8(%ebp)
-jl .LC3194
-flds .LC421
-fstps -152(%ebp)
-movl $0,-8(%ebp)
-.LC3198:
-flds -152(%ebp)
-movl -8(%ebp),%edi
-leal -148(%ebp),%esi
-movl (%esi,%edi,4),%edi
-fadds (,%edi)
-fstps -152(%ebp)
-.LC3199:
-incl -8(%ebp)
-cmpl $17,-8(%ebp)
-jl .LC3198
-flds .LC3204
-fcomps -152(%ebp)
-fstsw %ax
-sahf
-je .LC3202
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3205
-pushl $4
-pushl $s84er.3181
-call printf
-addl $8,%esp
-.LC3205:
-addl $4,-164(%ebp)
-.LC3202:
-movl $0,-12(%ebp)
-.LC3207:
-movl $0,-8(%ebp)
-.LC3211:
-movl $0,-4(%ebp)
-.LC3215:
-movl -4(%ebp),%edi
-movl -8(%ebp),%esi
-movl -12(%ebp),%ebx
-imul $28,%esi,%edx
-imul $140,%ebx,%ecx
-leal x3d.3180(%ecx),%ecx
-leal (%ecx,%edx),%edx
-imul $35,%ebx,%ebx
-imul $7,%esi,%esi
-leal (%esi,%ebx),%esi
-leal (%edi,%esi),%esi
-movl %esi,(%edx,%edi,4)
-.LC3216:
-incl -4(%ebp)
-cmpl $7,-4(%ebp)
-jl .LC3215
-.LC3212:
-incl -8(%ebp)
-cmpl $5,-8(%ebp)
-jl .LC3211
-.LC3208:
-incl -12(%ebp)
-cmpl $3,-12(%ebp)
-jl .LC3207
-movl $1,-12(%ebp)
-movl $2,-8(%ebp)
-movl $3,-4(%ebp)
-pushl $0
-pushl $105
-pushl $x3d.3180
-call array
-addl $12,%esp
-movl %eax,%edi
-pushl $35
-pushl $35
-imul $140,-12(%ebp),%esi
-leal x3d.3180(%esi),%esi
-pushl %esi
-call array
-addl $12,%esp
-movl %eax,%esi
-pushl $49
-pushl $7
-imul $28,-8(%ebp),%ebx
-imul $140,-12(%ebp),%edx
-leal x3d.3180(%edx),%edx
-leal (%edx,%ebx),%ebx
-pushl %ebx
-call array
-addl $12,%esp
-leal (%esi,%edi),%edi
-leal (%eax,%edi),%edi
-movl -4(%ebp),%esi
-imul $28,-8(%ebp),%ebx
-imul $140,-12(%ebp),%edx
-leal x3d.3180(%edx),%edx
-leal (%edx,%ebx),%ebx
-movl (%ebx,%esi,4),%esi
-leal (%esi,%edi),%edi
-subl $52,%edi
-cmpl $0,%edi
-je .LC3219
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3221
-pushl $8
-pushl $s84er.3181
-call printf
-addl $8,%esp
-.LC3221:
-addl $8,-164(%ebp)
-.LC3219:
-movl -164(%ebp),%eax
-.LC3179:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3223:
-.size s84,.Lf3223-s84
-.globl array
-.align 16
-.type array,@function
-array:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $0,-4(%ebp)
-jmp .LC3228
-.LC3225:
-movl -4(%ebp),%edi
-movl 20(%ebp),%esi
-movl 28(%ebp),%ebx
-leal (%ebx,%edi),%ebx
-cmpl %ebx,(%esi,%edi,4)
-je .LC3229
-movl $1,%eax
-jmp .LC3224
-.LC3229:
-.LC3226:
-incl -4(%ebp)
-.LC3228:
-movl 24(%ebp),%edi
-cmpl %edi,-4(%ebp)
-jl .LC3225
-movl $0,%eax
-.LC3224:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3231:
-.size array,.Lf3231-array
-.bss
-.align 4
-.type y.3233,@object
-.size y.3233,4
-.lcomm y.3233,4
-.globl fip
-.text
-.align 16
-.type fip,@function
-fip:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-leal y.3233,%edi
-movl 20(%ebp),%esi
-movl %esi,y.3233
-movl %edi,%eax
-.LC3232:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3234:
-.size fip,.Lf3234-fip
-.globl glork
-.align 16
-.type glork,@function
-glork:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 20(%ebp),%eax
-.LC3235:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3236:
-.size glork,.Lf3236-glork
-.data
-.align 1
-.type s85er.3238,@object
-s85er.3238:
-.byte 115
-.byte 56
-.byte 53
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s85er.3238,10
-.align 1
-.type qs85.3239,@object
-.size qs85.3239,8
-qs85.3239:
-.byte 115
-.byte 56
-.byte 53
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 4
-.type type.3247,@object
-type.3247:
-.long .LC434
-.long .LC436
-.long .LC435
-.long .LC437
-.long .LC438
-.long .LC439
-.long .LC440
-.size type.3247,28
-.align 1
-.type aln.3248,@object
-aln.3248:
-.byte 32
-.byte 97
-.byte 108
-.byte 105
-.byte 103
-.byte 110
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 58
-.byte 32
-.byte 0
-.size aln.3248,13
-.globl s85
-.text
-.align 16
-.type s85,@function
-s85:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $404,%esp
-leal qs85.3239,%edi
-movl %edi,-276(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-280(%ebp)
-movl $0,-320(%ebp)
-.LC3252:
-.LC3253:
-movl -280(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-280(%ebp)
-movl -276(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-276(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC3252
-leal -296(%ebp),%edi
-leal -316(%ebp),%esi
-subl %esi,%edi
-cmpl $0,%edi
-jle .LC3263
-leal -292(%ebp),%edi
-leal -296(%ebp),%esi
-subl %esi,%edi
-cmpl $0,%edi
-jle .LC3263
-leal -288(%ebp),%edi
-leal -292(%ebp),%esi
-subl %esi,%edi
-cmpl $0,%edi
-jg .LC3255
-.LC3263:
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3264
-pushl $1
-pushl $s85er.3238
-call printf
-addl $8,%esp
-.LC3264:
-incl -320(%ebp)
-.LC3255:
-leal -355(%ebp),%edi
-leal -356(%ebp),%esi
-subl %esi,%edi
-movl %edi,-272(%ebp)
-leal -358(%ebp),%edi
-leal -360(%ebp),%esi
-subl %esi,%edi
-movl %edi,-268(%ebp)
-leal -364(%ebp),%edi
-leal -368(%ebp),%esi
-subl %esi,%edi
-movl %edi,-264(%ebp)
-leal -372(%ebp),%edi
-leal -376(%ebp),%esi
-subl %esi,%edi
-movl %edi,-260(%ebp)
-leal -380(%ebp),%edi
-leal -384(%ebp),%esi
-subl %esi,%edi
-movl %edi,-256(%ebp)
-leal -388(%ebp),%edi
-leal -392(%ebp),%esi
-subl %esi,%edi
-movl %edi,-252(%ebp)
-leal -400(%ebp),%edi
-leal -404(%ebp),%esi
-subl %esi,%edi
-movl %edi,-248(%ebp)
-movl 20(%ebp),%edi
-cmpl $0,40(%edi)
-je .LC3279
-movl $0,-244(%ebp)
-.LC3281:
-movl -244(%ebp),%edi
-leal (,%edi,4),%edi
-leal -272(%ebp),%esi
-pushl (%esi,%edi)
-pushl $aln.3248
-pushl type.3247(%edi)
-pushl $.LC3285
-call printf
-addl $16,%esp
-.LC3282:
-incl -244(%ebp)
-cmpl $7,-244(%ebp)
-jl .LC3281
-.LC3279:
-movl -284(%ebp),%edi
-orl $56,%edi
-movl %edi,-284(%ebp)
-movl -284(%ebp),%edi
-movl %edi,%esi
-andl $0xfffffffc,%esi
-sall $26,%edi
-sarl $29,%edi
-sall $30,%edi
-sarl $30,%edi
-andl $3,%edi
-orl %edi,%esi
-movl %esi,-284(%ebp)
-movl -284(%ebp),%edi
-movl %edi,%esi
-andl $0xffffffc7,%esi
-sall $30,%edi
-sarl $30,%edi
-sall $29,%edi
-sarl $29,%edi
-leal (,%edi,8),%edi
-andl $56,%edi
-orl %edi,%esi
-movl %esi,-284(%ebp)
-movl -284(%ebp),%edi
-sall $26,%edi
-sarl $29,%edi
-cmpl $3,%edi
-je .LC3286
-movl -284(%ebp),%edi
-sall $26,%edi
-sarl $29,%edi
-cmpl $-1,%edi
-jne .LC3288
-movl 20(%ebp),%edi
-cmpl $0,40(%edi)
-je .LC3289
-pushl $.LC3292
-call printf
-addl $4,%esp
-jmp .LC3289
-.LC3288:
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3293
-pushl $2
-pushl $s85er.3238
-call printf
-addl $8,%esp
-.LC3293:
-addl $2,-320(%ebp)
-.LC3289:
-.LC3286:
-movl -284(%ebp),%edi
-orl $64,%edi
-movl %edi,-284(%ebp)
-movl -284(%ebp),%edi
-sall $25,%edi
-sarl $31,%edi
-cmpl $1,%edi
-je .LC3295
-movl 20(%ebp),%edi
-cmpl $0,40(%edi)
-je .LC3297
-pushl $.LC3299
-call printf
-addl $4,%esp
-.LC3297:
-.LC3295:
-leal -240(%ebp),%edi
-movl %edi,%esi
-subl %edi,%esi
-cmpl $0,%esi
-jne .LC3307
-cmpl $0,%esi
-jne .LC3307
-cmpl $0,%esi
-jne .LC3307
-cmpl $0,%esi
-jne .LC3307
-cmpl $0,%esi
-jne .LC3307
-cmpl $0,%esi
-jne .LC3307
-cmpl $0,%esi
-je .LC3300
-.LC3307:
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3308
-pushl $4
-pushl $s85er.3238
-call printf
-addl $8,%esp
-.LC3308:
-addl $4,-320(%ebp)
-.LC3300:
-jmp .LC3310
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3312
-pushl $8
-pushl $s85er.3238
-call printf
-addl $8,%esp
-.LC3312:
-addl $8,-320(%ebp)
-.LC3310:
-leal -352(%ebp),%edi
-movl %edi,-288(%ebp)
-movb $2,-352(%ebp)
-movl -288(%ebp),%edi
-movsbl (,%edi),%esi
-leal 1(%esi),%esi
-movl %esi,%ebx
-movb %bl,(,%edi)
-movsbl -352(%ebp),%edi
-cmpl $3,%edi
-je .LC3316
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3318
-pushl $16
-pushl $s85er.3238
-call printf
-addl $8,%esp
-.LC3318:
-addl $16,-320(%ebp)
-.LC3316:
-movl -320(%ebp),%eax
-.LC3237:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3320:
-.size s85,.Lf3320-s85
-.data
-.align 1
-.type s86er.3322,@object
-s86er.3322:
-.byte 115
-.byte 56
-.byte 54
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s86er.3322,10
-.align 1
-.type qs86.3323,@object
-.size qs86.3323,8
-qs86.3323:
-.byte 115
-.byte 56
-.byte 54
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.align 4
-.type x.3324,@object
-x.3324:
-.long 1
-.long 3
-.long 5
-.size x.3324,12
-.align 4
-.type pint.3325,@object
-.size pint.3325,4
-pint.3325:
-.long x.3324+8
-.bss
-.align 4
-.type zero.3327,@object
-.size zero.3327,40
-.lcomm zero.3327,40
-.data
-.align 4
-.type y0.3328,@object
-y0.3328:
-.long 1065353216
-.long 1077936128
-.long 1084227584
-.long 1073741824
-.long 1082130432
-.long 1086324736
-.long 1077936128
-.long 1084227584
-.long 1088421888
-.long 0
-.long 0
-.long 0
-.size y0.3328,48
-.align 4
-.type y1.3329,@object
-.size y1.3329,48
-y1.3329:
-.long 1065353216
-.long 1077936128
-.long 1084227584
-.long 1073741824
-.long 1082130432
-.long 1086324736
-.long 1077936128
-.long 1084227584
-.long 1088421888
-.space 12
-.align 4
-.type y2.3330,@object
-.size y2.3330,48
-y2.3330:
-.long 1065353216
-.long 1077936128
-.long 1084227584
-.long 1073741824
-.long 1082130432
-.long 1086324736
-.long 1077936128
-.long 1084227584
-.long 1088421888
-.space 12
-.align 4
-.type y3.3331,@object
-.size y3.3331,48
-y3.3331:
-.long 1065353216
-.space 8
-.long 1073741824
-.space 8
-.long 1077936128
-.space 8
-.long 1082130432
-.space 8
-.globl s86
-.text
-.align 16
-.type s86,@function
-s86:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $40,%esp
-movl pint.3325,%edi
-leal -4(%edi),%edi
-movl %edi,-36(%ebp)
-call one
-movl -36(%ebp),%esi
-leal (%esi,%eax,4),%edi
-movl %edi,-4(%ebp)
-leal qs86.3323,%edi
-movl %edi,-24(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-28(%ebp)
-movl $0,-32(%ebp)
-.LC3332:
-.LC3333:
-movl -28(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-28(%ebp)
-movl -24(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-24(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC3332
-movl pint.3325,%edi
-cmpl $5,(,%edi)
-je .LC3335
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3337
-pushl $1
-pushl $s86er.3322
-call printf
-addl $8,%esp
-.LC3337:
-incl -32(%ebp)
-.LC3335:
-movl -36(%ebp),%edi
-cmpl $3,(,%edi)
-je .LC3339
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3341
-pushl $2
-pushl $s86er.3322
-call printf
-addl $8,%esp
-.LC3341:
-addl $2,-32(%ebp)
-.LC3339:
-movl -4(%ebp),%edi
-cmpl $5,(,%edi)
-je .LC3343
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3345
-pushl $4
-pushl $s86er.3322
-call printf
-addl $8,%esp
-.LC3345:
-addl $4,-32(%ebp)
-.LC3343:
-movl $0,-20(%ebp)
-movl $0,-8(%ebp)
-.LC3347:
-movl -8(%ebp),%edi
-cmpl $0,zero.3327(,%edi,4)
-je .LC3351
-movl $1,-20(%ebp)
-.LC3351:
-.LC3348:
-incl -8(%ebp)
-cmpl $10,-8(%ebp)
-jl .LC3347
-cmpl $0,-20(%ebp)
-je .LC3353
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3355
-pushl $8
-pushl $s86er.3322
-call printf
-addl $8,%esp
-.LC3355:
-addl $8,-32(%ebp)
-.LC3353:
-movl $0,-20(%ebp)
-movl $0,-12(%ebp)
-.LC3357:
-movl $0,-8(%ebp)
-.LC3361:
-imul $3,-12(%ebp),%edi
-movl -8(%ebp),%esi
-leal (%esi,%edi),%edi
-movl %edi,-16(%ebp)
-movl -8(%ebp),%edi
-leal (,%edi,4),%edi
-imul $12,-12(%ebp),%esi
-leal y1.3329(%esi),%ebx
-flds (%ebx,%edi)
-fstps -40(%ebp)
-leal y2.3330(%esi),%esi
-flds (%esi,%edi)
-fcomps -40(%ebp)
-fstsw %ax
-sahf
-jne .LC3367
-movl -16(%ebp),%edi
-flds y0.3328(,%edi,4)
-fcomps -40(%ebp)
-fstsw %ax
-sahf
-je .LC3365
-.LC3367:
-movl $1,-20(%ebp)
-.LC3365:
-.LC3362:
-incl -8(%ebp)
-cmpl $3,-8(%ebp)
-jl .LC3361
-.LC3358:
-incl -12(%ebp)
-cmpl $4,-12(%ebp)
-jl .LC3357
-cmpl $0,-20(%ebp)
-je .LC3368
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3370
-pushl $16
-pushl $s86er.3322
-call printf
-addl $8,%esp
-.LC3370:
-addl $16,-32(%ebp)
-.LC3368:
-movl $0,-20(%ebp)
-movl $0,-8(%ebp)
-.LC3372:
-movl -8(%ebp),%edi
-imul $12,%edi,%esi
-leal 1(%edi),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fcomps y3.3331(%esi)
-fstsw %ax
-sahf
-je .LC3376
-movl $1,-20(%ebp)
-.LC3376:
-.LC3373:
-incl -8(%ebp)
-cmpl $4,-8(%ebp)
-jl .LC3372
-cmpl $0,-20(%ebp)
-je .LC3378
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3380
-pushl $32
-pushl $s86er.3322
-call printf
-addl $8,%esp
-.LC3380:
-addl $32,-32(%ebp)
-.LC3378:
-movl -32(%ebp),%eax
-.LC3321:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3382:
-.size s86,.Lf3382-s86
-.globl one
-.align 16
-.type one,@function
-one:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl $1,%eax
-.LC3383:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3384:
-.size one,.Lf3384-one
-.data
-.align 1
-.type s88er.3386,@object
-s88er.3386:
-.byte 115
-.byte 56
-.byte 56
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s88er.3386,10
-.align 1
-.type qs88.3387,@object
-.size qs88.3387,8
-qs88.3387:
-.byte 115
-.byte 56
-.byte 56
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s88
-.text
-.align 16
-.type s88,@function
-s88:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $44,%esp
-leal qs88.3387,%edi
-movl %edi,-4(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-8(%ebp)
-movl $0,-12(%ebp)
-.LC3389:
-.LC3390:
-movl -8(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-8(%ebp)
-movl -4(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-4(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC3389
-jmp .LC3392
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3394
-pushl $1
-pushl $s88er.3386
-call printf
-addl $8,%esp
-.LC3394:
-incl -12(%ebp)
-.LC3392:
-leal -32(%ebp),%edi
-movl %edi,metricp
-movl $2,-32(%ebp)
-movl metricp,%edi
-movl $3,(,%edi)
-cmpl $3,-32(%ebp)
-je .LC3396
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3398
-pushl $2
-pushl $s88er.3386
-call printf
-addl $8,%esp
-.LC3398:
-addl $2,-12(%ebp)
-.LC3396:
-fldl .LC428
-fstpl -28(%ebp)
-fldl .LC428
-fstpl -20(%ebp)
-leal -28(%ebp),%edi
-movl %edi,-36(%ebp)
-movl -36(%ebp),%edi
-fldl .LC427
-fstpl (,%edi)
-movl -36(%ebp),%edi
-fldl .LC427
-fstpl 8(%edi)
-fldl -28(%ebp)
-faddl -20(%ebp)
-fldl .LC425
-fcompp
-fstsw %ax
-sahf
-je .LC3401
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3404
-pushl $4
-pushl $s88er.3386
-call printf
-addl $8,%esp
-.LC3404:
-addl $4,-12(%ebp)
-.LC3401:
-movl -12(%ebp),%eax
-.LC3385:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3406:
-.size s88,.Lf3406-s88
-.data
-.align 1
-.type s9er.3408,@object
-s9er.3408:
-.byte 115
-.byte 57
-.byte 44
-.byte 101
-.byte 114
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.size s9er.3408,9
-.align 1
-.type qs9.3409,@object
-.size qs9.3409,8
-qs9.3409:
-.byte 115
-.byte 57
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 0
-.globl s9
-.text
-.align 16
-.type s9,@function
-s9:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $36,%esp
-leal qs9.3409,%edi
-movl %edi,-12(%ebp)
-movl 20(%ebp),%edi
-leal 60(%edi),%edi
-movl %edi,-16(%ebp)
-movl $0,-20(%ebp)
-.LC3410:
-.LC3411:
-movl -16(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-16(%ebp)
-movl -12(%ebp),%esi
-leal 1(%esi),%ebx
-movl %ebx,-12(%ebp)
-movb (,%esi),%bl
-movb %bl,(,%edi)
-movsbl %bl,%edi
-cmpl $0,%edi
-jne .LC3410
-movl $0,-8(%ebp)
-movl $0,-4(%ebp)
-.LC3413:
-movl $2,-24(%ebp)
-movl $2,-28(%ebp)
-movl $3,-32(%ebp)
-movl $3,-36(%ebp)
-cmpl $3,-36(%ebp)
-jne .LC3419
-cmpl $3,-32(%ebp)
-je .LC3417
-.LC3419:
-movl $1,-8(%ebp)
-.LC3417:
-cmpl $2,-28(%ebp)
-jne .LC3422
-cmpl $2,-24(%ebp)
-je .LC3420
-.LC3422:
-movl $1,-8(%ebp)
-.LC3420:
-.LC3414:
-incl -4(%ebp)
-cmpl $2,-4(%ebp)
-jl .LC3413
-cmpl $0,-8(%ebp)
-je .LC3427
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3425
-pushl $1
-pushl $s9er.3408
-call printf
-addl $8,%esp
-.LC3425:
-incl -20(%ebp)
-jmp .LC3427
-movl 20(%ebp),%edi
-cmpl $0,44(%edi)
-je .LC3428
-pushl $2
-pushl $s9er.3408
-call printf
-addl $8,%esp
-.LC3428:
-addl $2,-20(%ebp)
-.LC3427:
-movl -20(%ebp),%eax
-.LC3407:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3430:
-.size s9,.Lf3430-s9
-.globl setev
-.align 16
-.type setev,@function
-setev:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl $1066,extvar
-movl $0,%eax
-.LC3431:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3432:
-.size setev,.Lf3432-setev
-.bss
-.globl rfs
-.align 1
-.type rfs,@object
-.size rfs,8
-.comm rfs,8
-.globl crc
-.align 4
-.type crc,@object
-.size crc,4
-.comm crc,4
-.globl rrc
-.align 4
-.type rrc,@object
-.size rrc,4
-.comm rrc,4
-.globl flgl
-.align 4
-.type flgl,@object
-.size flgl,4
-.comm flgl,4
-.globl flgd
-.align 4
-.type flgd,@object
-.size flgd,4
-.comm flgd,4
-.globl flgm
-.align 4
-.type flgm,@object
-.size flgm,4
-.comm flgm,4
-.globl flgs
-.align 4
-.type flgs,@object
-.size flgs,4
-.comm flgs,4
-.globl dprec
-.align 4
-.type dprec,@object
-.size dprec,4
-.comm dprec,4
-.globl fprec
-.align 4
-.type fprec,@object
-.size fprec,4
-.comm fprec,4
-.globl dbits
-.align 4
-.type dbits,@object
-.size dbits,4
-.comm dbits,4
-.globl fbits
-.align 4
-.type fbits,@object
-.size fbits,4
-.comm fbits,4
-.globl ubits
-.align 4
-.type ubits,@object
-.size ubits,4
-.comm ubits,4
-.globl lbits
-.align 4
-.type lbits,@object
-.size lbits,4
-.comm lbits,4
-.globl metricp
-.align 4
-.type metricp,@object
-.size metricp,4
-.comm metricp,4
-.globl extvar
-.align 4
-.type extvar,@object
-.size extvar,4
-.comm extvar,4
-.data
-.align 1
-.LC3299:
-.byte 66
-.byte 101
-.byte 32
-.byte 101
-.byte 115
-.byte 112
-.byte 101
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 101
-.byte 102
-.byte 117
-.byte 108
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 49
-.byte 45
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 102
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC3292:
-.byte 83
-.byte 105
-.byte 103
-.byte 110
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 101
-.byte 110
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 102
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC3285:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 4
-.LC3204:
-.long 1124597760
-.align 1
-.LC3047:
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.LC2495:
-.byte 73
-.byte 110
-.byte 99
-.byte 114
-.byte 101
-.byte 97
-.byte 115
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 97
-.byte 114
-.byte 114
-.byte 97
-.byte 121
-.byte 32
-.byte 101
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 114
-.byte 101
-.byte 97
-.byte 115
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 108
-.byte 111
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 10
-.byte 0
-.align 4
-.LC2378:
-.long 1104150528
-.align 4
-.LC2377:
-.long 0
-.long 1077542912
-.align 4
-.LC1678:
-.long 0
-.long 1074003968
-.align 4
-.LC1503:
-.long 0
-.long 1076101120
-.align 4
-.LC1474:
-.long 1092616192
-.align 4
-.LC1299:
-.long 0
-.long 1074266112
-.align 4
-.LC1270:
-.long 1077936128
-.align 4
-.LC1095:
-.long 0
-.long 1075576832
-.align 4
-.LC1066:
-.long 1088421888
-.align 4
-.LC889:
-.long 0
-.long 1075052544
-.align 4
-.LC860:
-.long 1084227584
-.align 4
-.LC855:
-.long 0
-.long 1105199104
-.align 4
-.LC847:
-.long 1325400064
-.align 1
-.LC669:
-.byte 113
-.byte 117
-.byte 101
-.byte 101
-.byte 112
-.byte 0
-.align 1
-.LC654:
-.byte 10
-.byte 0
-.align 1
-.LC653:
-.byte 37
-.byte 100
-.byte 0
-.align 1
-.LC648:
-.byte 32
-.byte 32
-.byte 32
-.byte 107
-.byte 101
-.byte 121
-.byte 61
-.byte 0
-.align 4
-.LC611:
-.long 0
-.long 1073741824
-.align 4
-.LC551:
-.long 0
-.long 1087276160
-.align 4
-.LC550:
-.long 0
-.long 1079984128
-.align 4
-.LC549:
-.long 1123680256
-.align 4
-.LC544:
-.long 1073741824
-.align 1
-.LC440:
-.byte 100
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 0
-.align 1
-.LC439:
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 0
-.align 1
-.LC438:
-.byte 117
-.byte 110
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 0
-.align 1
-.LC437:
-.byte 108
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.LC436:
-.byte 115
-.byte 104
-.byte 111
-.byte 114
-.byte 116
-.byte 0
-.align 1
-.LC435:
-.byte 105
-.byte 110
-.byte 116
-.byte 0
-.align 1
-.LC434:
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 0
-.align 4
-.LC428:
-.long 0
-.long 0
-.align 4
-.LC427:
-.long 0
-.long 1072693248
-.align 4
-.LC426:
-.long 0
-.long 1074790400
-.align 4
-.LC425:
-.long 0
-.long 1073741824
-.align 4
-.LC421:
-.long 0
-.align 4
-.LC420:
-.long 1065353216
-.align 1
-.LC398:
-.byte 113
-.byte 117
-.byte 101
-.byte 101
-.byte 112
-.byte 33
-.byte 0
-.align 1
-.LC387:
-.byte 10
-.byte 9
-.byte 8
-.byte 13
-.byte 12
-.byte 92
-.byte 39
-.byte 0
-.align 1
-.LC383:
-.byte 46
-.byte 34
-.byte 46
-.byte 0
-.align 1
-.LC370:
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 4
-.LC340:
-.long 0
-.long 1083410432
-.align 1
-.LC201:
-.byte 32
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 97
-.byte 115
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 108
-.byte 111
-.byte 110
-.byte 103
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC200:
-.byte 68
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 99
-.byte 116
-.byte 97
-.byte 108
-.byte 47
-.byte 104
-.byte 101
-.byte 120
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 116
-.byte 97
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 109
-.byte 101
-.byte 115
-.byte 32
-.byte 103
-.byte 105
-.byte 118
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC27:
-.byte 10
-.byte 70
-.byte 97
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC26:
-.byte 10
-.byte 78
-.byte 111
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 100
-.byte 101
-.byte 116
-.byte 101
-.byte 99
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC20:
-.byte 83
-.byte 101
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 37
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 116
-.byte 117
-.byte 114
-.byte 110
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.text
-.ident "LCC: 4.1"
+.data
+.align 4
+.type sec.2,@object
+sec.2:
+.long s22
+.long s241
+.long s243
+.long s244
+.long s25
+.long s26
+.long s4
+.long s61
+.long s626
+.long s71
+.long s72
+.long s757
+.long s7813
+.long s714
+.long s715
+.long s81
+.long s84
+.long s85
+.long s86
+.long s88
+.long s9
+.bss
+.size sec.2,84
+.align 4
+.type d0.3,@object
+.size d0.3,68
+.lcomm d0.3,68
+.align 4
+.type pd0.4,@object
+.size pd0.4,4
+.lcomm pd0.4,4
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $1,d0.3+36
+movl $1,d0.3+40
+movl $1,d0.3+44
+movl $1,d0.3+48
+leal d0.3,%edi
+movl %edi,pd0.4
+movl $0,-4(%ebp)
+jmp .LC12
+.LC9:
+pushl pd0.4
+movl -4(%ebp),%edi
+call *sec.2(,%edi,4)
+addl $4,%esp
+movl %eax,d0.3+52
+movl d0.3+56,%edi
+movl d0.3+52,%esi
+leal (%esi,%edi),%edi
+movl %edi,d0.3+56
+cmpl $0,d0.3+36
+je .LC17
+pushl d0.3+52
+pushl $d0.3+60
+pushl $.LC20
+call printf
+addl $12,%esp
+.LC17:
+.LC10:
+incl -4(%ebp)
+.LC12:
+movl -4(%ebp),%edi
+cmpl $21,%edi
+jb .LC9
+cmpl $0,d0.3+56
+jne .LC23
+pushl $.LC26
+call printf
+addl $4,%esp
+jmp .LC24
+.LC23:
+pushl $.LC27
+call printf
+addl $4,%esp
+.LC24:
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf28:
+.size main,.Lf28-main
+.data
+.align 1
+.type s22er.30,@object
+s22er.30:
+.byte 115
+.byte 50
+.byte 50
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s22er.30,10
+.align 1
+.type qs22.31,@object
+.size qs22.31,8
+qs22.31:
+.byte 115
+.byte 50
+.byte 50
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s22
+.text
+.align 16
+.type s22,@function
+s22:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $32,%esp
+movl $0,-12(%ebp)
+leal qs22.31,%edi
+movl %edi,-4(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-8(%ebp)
+.LC32:
+.LC33:
+movl -8(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-8(%ebp)
+movl -4(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-4(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC32
+movl $1,-16(%ebp)
+movl $2,-24(%ebp)
+movl $3,-28(%ebp)
+movl $4,-20(%ebp)
+movl -16(%ebp),%edi
+movl -24(%ebp),%esi
+leal (%esi,%edi),%edi
+movl -28(%ebp),%esi
+leal (%esi,%edi),%edi
+movl -20(%ebp),%esi
+leal (%esi,%edi),%edi
+cmpl $10,%edi
+je .LC35
+incl -12(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC37
+pushl $1
+pushl $s22er.30
+call printf
+addl $8,%esp
+.LC37:
+.LC35:
+movl $2,-32(%ebp)
+movl -16(%ebp),%edi
+cmpl %edi,-32(%ebp)
+jne .LC39
+addl $4,-12(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC41
+pushl $4
+pushl $s22er.30
+call printf
+addl $8,%esp
+.LC41:
+.LC39:
+movl -12(%ebp),%eax
+.LC29:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf43:
+.size s22,.Lf43-s22
+.data
+.align 1
+.type s241er.45,@object
+s241er.45:
+.byte 115
+.byte 50
+.byte 52
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s241er.45,11
+.align 1
+.type qs241.46,@object
+.size qs241.46,8
+qs241.46:
+.byte 115
+.byte 50
+.byte 52
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 4
+.type g.47,@object
+.size g.47,156
+g.47:
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 0
+.long 6
+.long 0
+.long 8
+.long 0
+.long 12
+.long 0
+.long 16
+.long 0
+.long 18
+.long 0
+.long 20
+.long 0
+.long 24
+.long 0
+.long 28
+.long 0
+.long 30
+.long 0
+.long 32
+.long 0
+.long 36
+.globl s241
+.text
+.align 16
+.type s241,@function
+s241:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $488,%esp
+movl $0,-484(%ebp)
+movl $0,-488(%ebp)
+leal qs241.46,%edi
+movl %edi,-476(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-480(%ebp)
+.LC48:
+.LC49:
+movl -480(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-480(%ebp)
+movl -476(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-476(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC48
+jmp .LC51
+incl -484(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC53
+pushl $1
+pushl $s241er.45
+call printf
+addl $8,%esp
+.LC53:
+.LC51:
+jmp .LC55
+addl $2,-484(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC57
+pushl $2
+pushl $s241er.45
+call printf
+addl $8,%esp
+.LC57:
+.LC55:
+jmp .LC59
+addl $4,-484(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC61
+pushl $4
+pushl $s241er.45
+call printf
+addl $8,%esp
+.LC61:
+.LC59:
+jmp .LC63
+addl $8,-484(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC65
+pushl $8
+pushl $s241er.45
+call printf
+addl $8,%esp
+.LC65:
+.LC63:
+movl $0,-4(%ebp)
+.LC67:
+movl -4(%ebp),%edi
+movl %edi,g.47(,%edi,4)
+.LC68:
+incl -4(%ebp)
+cmpl $17,-4(%ebp)
+jl .LC67
+movl $18,-4(%ebp)
+.LC71:
+movl -4(%ebp),%edi
+leal g.47(,%edi,4),%edi
+pushl (,%edi)
+call pow2
+addl $4,%esp
+movl %eax,(,%edi)
+movl -4(%ebp),%edi
+leal (,%edi,4),%edi
+movl g.47(%edi),%esi
+subl $1,%esi
+movl %esi,g.47-4(%edi)
+addl $2,-4(%ebp)
+.LC72:
+cmpl $39,-4(%ebp)
+jl .LC71
+movl $0,-160(%ebp)
+movl $0,-316(%ebp)
+movl $0,-472(%ebp)
+movl $1,-156(%ebp)
+movl $1,-312(%ebp)
+movl $1,-468(%ebp)
+movl $2,-152(%ebp)
+movl $2,-308(%ebp)
+movl $2,-464(%ebp)
+movl $3,-148(%ebp)
+movl $3,-304(%ebp)
+movl $3,-460(%ebp)
+movl $4,-144(%ebp)
+movl $4,-300(%ebp)
+movl $4,-456(%ebp)
+movl $5,-140(%ebp)
+movl $5,-296(%ebp)
+movl $5,-452(%ebp)
+movl $6,-136(%ebp)
+movl $6,-292(%ebp)
+movl $6,-448(%ebp)
+movl $7,-132(%ebp)
+movl $7,-288(%ebp)
+movl $7,-444(%ebp)
+movl $8,-128(%ebp)
+movl $8,-284(%ebp)
+movl $8,-440(%ebp)
+movl $9,-124(%ebp)
+movl $9,-280(%ebp)
+movl $9,-436(%ebp)
+movl $10,-120(%ebp)
+movl $10,-276(%ebp)
+movl $10,-432(%ebp)
+movl $11,-116(%ebp)
+movl $11,-272(%ebp)
+movl $11,-428(%ebp)
+movl $12,-112(%ebp)
+movl $12,-268(%ebp)
+movl $12,-424(%ebp)
+movl $13,-108(%ebp)
+movl $13,-264(%ebp)
+movl $13,-420(%ebp)
+movl $14,-104(%ebp)
+movl $14,-260(%ebp)
+movl $14,-416(%ebp)
+movl $15,-100(%ebp)
+movl $15,-256(%ebp)
+movl $15,-412(%ebp)
+movl $16,-96(%ebp)
+movl $16,-252(%ebp)
+movl $16,-408(%ebp)
+movl $63,-92(%ebp)
+movl $63,-248(%ebp)
+movl $63,-404(%ebp)
+movl $64,-88(%ebp)
+movl $64,-244(%ebp)
+movl $64,-400(%ebp)
+movl $255,-84(%ebp)
+movl $255,-240(%ebp)
+movl $255,-396(%ebp)
+movl $256,-80(%ebp)
+movl $256,-236(%ebp)
+movl $256,-392(%ebp)
+movl $4095,-76(%ebp)
+movl $4095,-232(%ebp)
+movl $4095,-388(%ebp)
+movl $4096,-72(%ebp)
+movl $4096,-228(%ebp)
+movl $4096,-384(%ebp)
+movl $65535,-68(%ebp)
+movl $65535,-224(%ebp)
+movl $65535,-380(%ebp)
+movl $65536,-64(%ebp)
+movl $65536,-220(%ebp)
+movl $65536,-376(%ebp)
+movl $262143,-60(%ebp)
+movl $262143,-216(%ebp)
+movl $262143,-372(%ebp)
+movl $262144,-56(%ebp)
+movl $262144,-212(%ebp)
+movl $262144,-368(%ebp)
+movl $1048575,-52(%ebp)
+movl $1048575,-208(%ebp)
+movl $1048575,-364(%ebp)
+movl $1048576,-48(%ebp)
+movl $1048576,-204(%ebp)
+movl $1048576,-360(%ebp)
+movl $16777215,-44(%ebp)
+movl $16777215,-200(%ebp)
+movl $16777215,-356(%ebp)
+movl $16777216,-40(%ebp)
+movl $16777216,-196(%ebp)
+movl $16777216,-352(%ebp)
+movl $268435455,-36(%ebp)
+movl $268435455,-192(%ebp)
+movl $268435455,-348(%ebp)
+movl $268435456,-32(%ebp)
+movl $268435456,-188(%ebp)
+movl $268435456,-344(%ebp)
+movl $1073741823,-28(%ebp)
+movl $1073741823,-184(%ebp)
+movl $1073741823,-340(%ebp)
+movl $1073741824,-24(%ebp)
+movl $1073741824,-180(%ebp)
+movl $1073741824,-336(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-20(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-176(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-332(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-16(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-172(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-328(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-12(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-168(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-324(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-8(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-164(%ebp)
+movl $0xffffffff,%edi
+movl %edi,-320(%ebp)
+movl $0,-4(%ebp)
+.LC190:
+movl -4(%ebp),%edi
+leal (,%edi,4),%edi
+leal -160(%ebp),%esi
+movl (%esi,%edi),%esi
+cmpl %esi,g.47(%edi)
+jne .LC197
+leal -316(%ebp),%ebx
+movl (%ebx,%edi),%ebx
+cmpl %ebx,%esi
+jne .LC197
+leal -472(%ebp),%esi
+cmpl (%esi,%edi),%ebx
+je .LC194
+.LC197:
+movl 20(%ebp),%edi
+cmpl $0,40(%edi)
+je .LC198
+pushl $.LC200
+call printf
+addl $4,%esp
+pushl $.LC201
+call printf
+addl $4,%esp
+.LC198:
+.LC194:
+.LC191:
+incl -4(%ebp)
+cmpl $39,-4(%ebp)
+jl .LC190
+cmpl $0,-488(%ebp)
+je .LC202
+movl $16,-484(%ebp)
+.LC202:
+movl -484(%ebp),%eax
+.LC44:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf204:
+.size s241,.Lf204-s241
+.globl pow2
+.align 16
+.type pow2,@function
+pow2:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $1,-4(%ebp)
+jmp .LC207
+.LC206:
+sall $1,-4(%ebp)
+.LC207:
+movl 20(%ebp),%edi
+movl %edi,%esi
+subl $1,%esi
+movl %esi,20(%ebp)
+cmpl $0,%edi
+jne .LC206
+movl -4(%ebp),%eax
+.LC205:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf209:
+.size pow2,.Lf209-pow2
+.data
+.align 1
+.type s243er.211,@object
+s243er.211:
+.byte 115
+.byte 50
+.byte 52
+.byte 51
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s243er.211,11
+.align 1
+.type qs243.212,@object
+.size qs243.212,8
+qs243.212:
+.byte 115
+.byte 50
+.byte 52
+.byte 51
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s243
+.text
+.align 16
+.type s243,@function
+s243:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $268,%esp
+movl $0,-268(%ebp)
+leal qs243.212,%edi
+movl %edi,-260(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-264(%ebp)
+.LC213:
+.LC214:
+movl -264(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-264(%ebp)
+movl -260(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-260(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC213
+leal -256(%ebp),%edi
+pushl %edi
+call zerofill
+addl $4,%esp
+movb $1,-159(%ebp)
+movb $1,-191(%ebp)
+movb $1,-130(%ebp)
+movb $1,-208(%ebp)
+movb $1,-158(%ebp)
+movb $1,-190(%ebp)
+movb $1,-223(%ebp)
+movb $1,-207(%ebp)
+movb $1,-157(%ebp)
+movb $1,-189(%ebp)
+movb $1,-222(%ebp)
+movb $1,-206(%ebp)
+movb $1,-156(%ebp)
+movb $1,-188(%ebp)
+movb $1,-221(%ebp)
+movb $1,-205(%ebp)
+movb $1,-155(%ebp)
+movb $1,-187(%ebp)
+movb $1,-219(%ebp)
+movb $1,-204(%ebp)
+movb $1,-154(%ebp)
+movb $1,-186(%ebp)
+movb $1,-218(%ebp)
+movb $1,-203(%ebp)
+movb $1,-153(%ebp)
+movb $1,-185(%ebp)
+movb $1,-216(%ebp)
+movb $1,-202(%ebp)
+movb $1,-152(%ebp)
+movb $1,-184(%ebp)
+movb $1,-215(%ebp)
+movb $1,-201(%ebp)
+movb $1,-151(%ebp)
+movb $1,-183(%ebp)
+movb $1,-161(%ebp)
+movb $1,-200(%ebp)
+movb $1,-150(%ebp)
+movb $1,-182(%ebp)
+movb $1,-195(%ebp)
+movb $1,-199(%ebp)
+movb $1,-149(%ebp)
+movb $1,-181(%ebp)
+movb $1,-211(%ebp)
+movb $1,-148(%ebp)
+movb $1,-180(%ebp)
+movb $1,-162(%ebp)
+movb $1,-147(%ebp)
+movb $1,-179(%ebp)
+movb $1,-132(%ebp)
+movb $1,-246(%ebp)
+movb $1,-146(%ebp)
+movb $1,-178(%ebp)
+movb $1,-247(%ebp)
+movb $1,-145(%ebp)
+movb $1,-177(%ebp)
+movb $1,-133(%ebp)
+movb $1,-248(%ebp)
+movb $1,-144(%ebp)
+movb $1,-176(%ebp)
+movb $1,-131(%ebp)
+movb $1,-243(%ebp)
+movb $1,-143(%ebp)
+movb $1,-175(%ebp)
+movb $1,-165(%ebp)
+movb $1,-244(%ebp)
+movb $1,-142(%ebp)
+movb $1,-174(%ebp)
+movb $1,-163(%ebp)
+movb $1,-141(%ebp)
+movb $1,-173(%ebp)
+movb $1,-213(%ebp)
+movb $1,-164(%ebp)
+movb $1,-140(%ebp)
+movb $1,-172(%ebp)
+movb $1,-197(%ebp)
+movb $1,-217(%ebp)
+movb $1,-139(%ebp)
+movb $1,-171(%ebp)
+movb $1,-214(%ebp)
+movb $1,-138(%ebp)
+movb $1,-170(%ebp)
+movb $1,-198(%ebp)
+movb $1,-256(%ebp)
+movb $1,-137(%ebp)
+movb $1,-169(%ebp)
+movb $1,-196(%ebp)
+movb $1,-224(%ebp)
+movb $1,-136(%ebp)
+movb $1,-168(%ebp)
+movb $1,-194(%ebp)
+movb $1,-135(%ebp)
+movb $1,-167(%ebp)
+movb $1,-212(%ebp)
+movb $1,-134(%ebp)
+movb $1,-166(%ebp)
+movb $1,-210(%ebp)
+movb $1,-193(%ebp)
+movb $1,-209(%ebp)
+leal -256(%ebp),%edi
+pushl %edi
+call sumof
+addl $4,%esp
+cmpl $98,%eax
+je .LC313
+incl -268(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC315
+pushl $1
+pushl $s243er.211
+call printf
+addl $8,%esp
+.LC315:
+.LC313:
+jmp .LC317
+addl $8,-268(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC319
+pushl $8
+pushl $s243er.211
+call printf
+addl $8,%esp
+.LC319:
+.LC317:
+movl -268(%ebp),%eax
+.LC210:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf321:
+.size s243,.Lf321-s243
+.globl zerofill
+.align 16
+.type zerofill,@function
+zerofill:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $0,-4(%ebp)
+.LC323:
+movl 20(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,20(%ebp)
+movb $0,(,%edi)
+.LC324:
+incl -4(%ebp)
+cmpl $256,-4(%ebp)
+jl .LC323
+movl $0,%eax
+.LC322:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf327:
+.size zerofill,.Lf327-zerofill
+.globl sumof
+.align 16
+.type sumof,@function
+sumof:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $12,%esp
+movl 20(%ebp),%edi
+movl %edi,-12(%ebp)
+movl $0,-4(%ebp)
+movl $0,-8(%ebp)
+.LC329:
+movl -12(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-12(%ebp)
+movsbl (,%edi),%edi
+addl %edi,-4(%ebp)
+.LC330:
+incl -8(%ebp)
+cmpl $256,-8(%ebp)
+jl .LC329
+movl -4(%ebp),%eax
+.LC328:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf333:
+.size sumof,.Lf333-sumof
+.data
+.align 1
+.type s244er.335,@object
+s244er.335:
+.byte 115
+.byte 50
+.byte 52
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s244er.335,11
+.align 1
+.type qs244.336,@object
+.size qs244.336,8
+qs244.336:
+.byte 115
+.byte 50
+.byte 52
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s244
+.text
+.align 16
+.type s244,@function
+s244:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $92,%esp
+leal qs244.336,%edi
+movl %edi,-72(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-76(%ebp)
+.LC337:
+.LC338:
+movl -76(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-76(%ebp)
+movl -72(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-72(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC337
+movl $0,-84(%ebp)
+movl $0,-80(%ebp)
+fldl .LC340
+fstpl -68(%ebp)
+fldl .LC340
+fstpl -60(%ebp)
+fldl .LC340
+fstpl -52(%ebp)
+fldl .LC340
+fstpl -44(%ebp)
+fldl .LC340
+fstpl -36(%ebp)
+fldl .LC340
+fstpl -28(%ebp)
+fldl .LC340
+fstpl -20(%ebp)
+fldl .LC340
+fstpl -12(%ebp)
+movl $0,-80(%ebp)
+movl $0,-4(%ebp)
+.LC348:
+movl -4(%ebp),%edi
+leal (,%edi,8),%edi
+leal -68(%ebp),%esi
+leal -60(%ebp),%ebx
+fldl (%ebx,%edi)
+fcompl (%esi,%edi)
+fstsw %ax
+sahf
+je .LC352
+movl $1,-80(%ebp)
+.LC352:
+.LC349:
+incl -4(%ebp)
+cmpl $7,-4(%ebp)
+jl .LC348
+cmpl $0,-80(%ebp)
+je .LC355
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC357
+pushl $1
+pushl $s244er.335
+call printf
+addl $8,%esp
+.LC357:
+incl -84(%ebp)
+.LC355:
+jmp .LC359
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC361
+pushl $2
+pushl $s244er.335
+call printf
+addl $8,%esp
+.LC361:
+addl $2,-84(%ebp)
+.LC359:
+movl -84(%ebp),%eax
+.LC334:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf363:
+.size s244,.Lf363-s244
+.data
+.align 1
+.type s25er.365,@object
+s25er.365:
+.byte 115
+.byte 50
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s25er.365,10
+.align 1
+.type qs25.366,@object
+.size qs25.366,8
+qs25.366:
+.byte 115
+.byte 50
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s25
+.text
+.align 16
+.type s25,@function
+s25:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $28,%esp
+leal qs25.366,%edi
+movl %edi,-16(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-20(%ebp)
+.LC367:
+.LC368:
+movl -20(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-20(%ebp)
+movl -16(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-16(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC367
+movl $0,-24(%ebp)
+leal .LC370,%edi
+movl %edi,-8(%ebp)
+movl -8(%ebp),%edi
+movsbl 1(%edi),%esi
+movsbl (,%edi),%ebx
+cmpl %esi,%ebx
+jne .LC374
+movsbl 2(%edi),%edi
+cmpl %edi,%esi
+jne .LC374
+cmpl $46,%edi
+je .LC371
+.LC374:
+incl -24(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC375
+pushl $1
+pushl $s25er.365
+call printf
+addl $8,%esp
+.LC375:
+.LC371:
+movl -8(%ebp),%edi
+movsbl 3(%edi),%edi
+cmpl $0,%edi
+je .LC377
+addl $4,-24(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC379
+pushl $4
+pushl $s25er.365
+call printf
+addl $8,%esp
+.LC379:
+.LC377:
+movsbl .LC383+1,%edi
+cmpl $34,%edi
+je .LC381
+addl $8,-24(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC385
+pushl $8
+pushl $s25er.365
+call printf
+addl $8,%esp
+.LC385:
+.LC381:
+leal .LC387,%edi
+movl %edi,-8(%ebp)
+movl -8(%ebp),%edi
+movsbl (,%edi),%esi
+cmpl $10,%esi
+jne .LC395
+movsbl 1(%edi),%esi
+cmpl $9,%esi
+jne .LC395
+movsbl 2(%edi),%esi
+cmpl $8,%esi
+jne .LC395
+movsbl 3(%edi),%esi
+cmpl $13,%esi
+jne .LC395
+movsbl 4(%edi),%esi
+cmpl $12,%esi
+jne .LC395
+movsbl 5(%edi),%esi
+cmpl $92,%esi
+jne .LC395
+movsbl 6(%edi),%edi
+cmpl $39,%edi
+je .LC388
+.LC395:
+addl $16,-24(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC396
+pushl $16
+pushl $s25er.365
+call printf
+addl $8,%esp
+.LC396:
+.LC388:
+leal .LC398,%edi
+movl %edi,-12(%ebp)
+movl %edi,-8(%ebp)
+movl $0,-28(%ebp)
+movl $0,-4(%ebp)
+jmp .LC402
+.LC399:
+movl -4(%ebp),%edi
+movl -8(%ebp),%esi
+movsbl (%esi,%edi),%esi
+movl -12(%ebp),%ebx
+movsbl (%ebx,%edi),%edi
+cmpl %edi,%esi
+je .LC403
+movl $1,-28(%ebp)
+.LC403:
+.LC400:
+incl -4(%ebp)
+.LC402:
+movl -4(%ebp),%edi
+cmpl $7,%edi
+jb .LC399
+cmpl $0,-28(%ebp)
+je .LC405
+addl $32,-24(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC407
+pushl $32
+pushl $s25er.365
+call printf
+addl $8,%esp
+.LC407:
+.LC405:
+movl -24(%ebp),%eax
+.LC364:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf409:
+.size s25,.Lf409-s25
+.data
+.align 1
+.type qs26.411,@object
+.size qs26.411,8
+qs26.411:
+.byte 115
+.byte 50
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.type s.412,@object
+s.412:
+.byte 37
+.byte 51
+.byte 100
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 37
+.byte 115
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.size s.412,18
+.align 1
+.type s2.413,@object
+s2.413:
+.byte 37
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 97
+.byte 100
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 49
+.byte 46
+.byte 32
+.byte 40
+.byte 37
+.byte 115
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.size s2.413,54
+.globl s26
+.text
+.align 16
+.type s26,@function
+s26:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $56,%esp
+leal qs26.411,%edi
+movl %edi,-36(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-40(%ebp)
+.LC414:
+.LC415:
+movl -40(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-40(%ebp)
+movl -36(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-36(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC414
+movl 20(%ebp),%edi
+movl $0,(,%edi)
+movb $0,-41(%ebp)
+movb $1,-5(%ebp)
+jmp .LC418
+.LC417:
+movsbl -5(%ebp),%edi
+leal (,%edi,2),%edi
+movl %edi,%ebx
+movb %bl,-5(%ebp)
+movl 20(%ebp),%edi
+incl (,%edi)
+.LC418:
+movsbl -41(%ebp),%edi
+movsbl -5(%ebp),%esi
+cmpl %esi,%edi
+jne .LC417
+movl 20(%ebp),%edi
+movl (,%edi),%esi
+leal (,%esi,4),%esi
+movl %esi,4(%edi)
+movl 20(%ebp),%edi
+movl (,%edi),%esi
+leal (,%esi,2),%esi
+movl %esi,8(%edi)
+movl 20(%ebp),%edi
+movl (,%edi),%esi
+leal (,%esi,4),%esi
+movl %esi,12(%edi)
+movl 20(%ebp),%edi
+movl (,%edi),%esi
+leal (,%esi,4),%esi
+movl %esi,16(%edi)
+movl 20(%ebp),%edi
+movl (,%edi),%esi
+leal (,%esi,4),%esi
+movl %esi,20(%edi)
+movl 20(%ebp),%edi
+movl (,%edi),%esi
+leal (,%esi,8),%esi
+movl %esi,24(%edi)
+flds .LC420
+fstps -16(%ebp)
+flds .LC420
+fstps -4(%ebp)
+flds .LC421
+fstps -12(%ebp)
+jmp .LC423
+.LC422:
+flds -16(%ebp)
+fadds -4(%ebp)
+fstps -12(%ebp)
+flds -4(%ebp)
+fdivl .LC425
+fstps -4(%ebp)
+.LC423:
+flds -16(%ebp)
+fcomps -12(%ebp)
+fstsw %ax
+sahf
+jne .LC422
+movl 20(%ebp),%edi
+fldl .LC426
+fmuls -4(%ebp)
+fstps 28(%edi)
+fldl .LC427
+fstpl -32(%ebp)
+flds .LC420
+fstps -4(%ebp)
+fldl .LC428
+fstpl -24(%ebp)
+jmp .LC430
+.LC429:
+flds -4(%ebp)
+fstpl -56(%ebp)
+fldl -32(%ebp)
+faddl -56(%ebp)
+fstpl -24(%ebp)
+fldl -56(%ebp)
+fdivl .LC425
+fstps -4(%ebp)
+.LC430:
+fldl -32(%ebp)
+fcompl -24(%ebp)
+fstsw %ax
+sahf
+jne .LC429
+movl 20(%ebp),%edi
+fldl .LC426
+fmuls -4(%ebp)
+fstps 32(%edi)
+movl 20(%ebp),%edi
+cmpl $0,40(%edi)
+je .LC432
+pushl $.LC434
+movl 20(%ebp),%edi
+pushl (,%edi)
+pushl $s.412
+call printf
+addl $12,%esp
+pushl $.LC435
+movl 20(%ebp),%edi
+pushl 4(%edi)
+pushl $s.412
+call printf
+addl $12,%esp
+pushl $.LC436
+movl 20(%ebp),%edi
+pushl 8(%edi)
+pushl $s.412
+call printf
+addl $12,%esp
+pushl $.LC437
+movl 20(%ebp),%edi
+pushl 12(%edi)
+pushl $s.412
+call printf
+addl $12,%esp
+pushl $.LC438
+movl 20(%ebp),%edi
+pushl 16(%edi)
+pushl $s.412
+call printf
+addl $12,%esp
+pushl $.LC439
+movl 20(%ebp),%edi
+pushl 20(%edi)
+pushl $s.412
+call printf
+addl $12,%esp
+pushl $.LC440
+movl 20(%ebp),%edi
+pushl 24(%edi)
+pushl $s.412
+call printf
+addl $12,%esp
+pushl $.LC439
+movl 20(%ebp),%edi
+flds 28(%edi)
+subl $8,%esp
+fstpl (%esp)
+pushl $s2.413
+call printf
+addl $16,%esp
+pushl $.LC440
+movl 20(%ebp),%edi
+flds 32(%edi)
+subl $8,%esp
+fstpl (%esp)
+pushl $s2.413
+call printf
+addl $16,%esp
+.LC432:
+movl $0,%eax
+.LC410:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf441:
+.size s26,.Lf441-s26
+.data
+.align 1
+.type s4er.443,@object
+s4er.443:
+.byte 115
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s4er.443,9
+.align 1
+.type qs4.444,@object
+.size qs4.444,8
+qs4.444:
+.byte 115
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s4
+.text
+.align 16
+.type s4,@function
+s4:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $36,%esp
+movl $0,-24(%ebp)
+leal qs4.444,%edi
+movl %edi,-16(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-20(%ebp)
+.LC445:
+.LC446:
+movl -20(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-20(%ebp)
+movl -16(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-16(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC445
+movl $0,-4(%ebp)
+.LC448:
+pushl -4(%ebp)
+call svtest
+addl $4,%esp
+movl %eax,%edi
+call zero
+cmpl %eax,%edi
+je .LC452
+movl $1,-24(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC454
+pushl $1
+pushl $s4er.443
+call printf
+addl $8,%esp
+.LC454:
+.LC452:
+.LC449:
+incl -4(%ebp)
+cmpl $3,-4(%ebp)
+jl .LC448
+call setev
+call testev
+cmpl $0,%eax
+je .LC456
+addl $2,-24(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC458
+pushl $2
+pushl $s4er.443
+call printf
+addl $8,%esp
+.LC458:
+.LC456:
+jmp .LC460
+addl $4,-24(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC462
+pushl $4
+pushl $s4er.443
+call printf
+addl $8,%esp
+.LC462:
+.LC460:
+movl $0xffffffff,-8(%ebp)
+movl $1,-12(%ebp)
+movl $0,-4(%ebp)
+jmp .LC467
+.LC464:
+movl -8(%ebp),%edi
+andl %edi,-12(%ebp)
+shrl $1,%edi
+movl %edi,-8(%ebp)
+.LC465:
+incl -4(%ebp)
+.LC467:
+movl -4(%ebp),%edi
+movl 20(%ebp),%esi
+movl (,%esi),%esi
+leal (,%esi,4),%esi
+cmpl %esi,%edi
+jb .LC464
+movl -12(%ebp),%edi
+cmpl $1,%edi
+jne .LC470
+movl -8(%ebp),%edi
+cmpl $0,%edi
+je .LC468
+.LC470:
+addl $8,-24(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC471
+pushl $8
+pushl $s4er.443
+call printf
+addl $8,%esp
+.LC471:
+.LC468:
+movl -24(%ebp),%eax
+.LC442:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf473:
+.size s4,.Lf473-s4
+.bss
+.align 4
+.type k.475,@object
+.size k.475,4
+.lcomm k.475,4
+.globl svtest
+.text
+.align 16
+.type svtest,@function
+svtest:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl 20(%ebp),%edi
+cmpl $0,%edi
+je .LC478
+cmpl $1,%edi
+je .LC479
+cmpl $2,%edi
+je .LC482
+jmp .LC476
+.LC478:
+movl $1978,k.475
+movl $0,-4(%ebp)
+jmp .LC477
+.LC479:
+cmpl $1978,k.475
+je .LC480
+movl $1,-4(%ebp)
+jmp .LC477
+.LC480:
+movl $1929,k.475
+movl $0,-4(%ebp)
+jmp .LC477
+.LC482:
+cmpl $1929,k.475
+je .LC483
+movl $1,-4(%ebp)
+jmp .LC477
+.LC483:
+movl $0,-4(%ebp)
+.LC476:
+.LC477:
+movl -4(%ebp),%eax
+.LC474:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf485:
+.size svtest,.Lf485-svtest
+.bss
+.align 4
+.type k.487,@object
+.size k.487,4
+.lcomm k.487,4
+.globl zero
+.text
+.align 16
+.type zero,@function
+zero:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $2,k.487
+movl $0,-4(%ebp)
+movl -4(%ebp),%eax
+.LC486:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf488:
+.size zero,.Lf488-zero
+.globl testev
+.align 16
+.type testev,@function
+testev:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+cmpl $1066,extvar
+je .LC490
+movl $1,%eax
+jmp .LC489
+.LC490:
+movl $0,%eax
+.LC489:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf492:
+.size testev,.Lf492-testev
+.data
+.align 1
+.type s61er.494,@object
+s61er.494:
+.byte 115
+.byte 54
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s61er.494,10
+.align 1
+.type qs61.495,@object
+.size qs61.495,8
+qs61.495:
+.byte 115
+.byte 54
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.type upper_alpha.496,@object
+upper_alpha.496:
+.byte 65
+.byte 66
+.byte 67
+.byte 68
+.byte 69
+.byte 70
+.byte 71
+.byte 72
+.byte 73
+.byte 74
+.byte 75
+.byte 76
+.byte 77
+.byte 78
+.byte 79
+.byte 80
+.byte 81
+.byte 82
+.byte 83
+.byte 84
+.byte 85
+.byte 86
+.byte 87
+.byte 88
+.byte 89
+.byte 90
+.byte 0
+.size upper_alpha.496,27
+.align 1
+.type lower_alpha.497,@object
+lower_alpha.497:
+.byte 97
+.byte 98
+.byte 99
+.byte 100
+.byte 101
+.byte 102
+.byte 103
+.byte 104
+.byte 105
+.byte 106
+.byte 107
+.byte 108
+.byte 109
+.byte 110
+.byte 111
+.byte 112
+.byte 113
+.byte 114
+.byte 115
+.byte 116
+.byte 117
+.byte 118
+.byte 119
+.byte 120
+.byte 121
+.byte 122
+.byte 0
+.size lower_alpha.497,27
+.align 1
+.type numbers.498,@object
+numbers.498:
+.byte 48
+.byte 49
+.byte 50
+.byte 51
+.byte 52
+.byte 53
+.byte 54
+.byte 55
+.byte 56
+.byte 57
+.byte 0
+.size numbers.498,11
+.align 1
+.type special_characters.499,@object
+special_characters.499:
+.byte 126
+.byte 33
+.byte 34
+.byte 35
+.byte 37
+.byte 38
+.byte 40
+.byte 41
+.byte 95
+.byte 61
+.byte 45
+.byte 94
+.byte 124
+.byte 123
+.byte 125
+.byte 91
+.byte 93
+.byte 43
+.byte 59
+.byte 42
+.byte 58
+.byte 60
+.byte 62
+.byte 44
+.byte 46
+.byte 63
+.byte 47
+.byte 0
+.size special_characters.499,28
+.align 1
+.type extra_special_characters.500,@object
+extra_special_characters.500:
+.byte 10
+.byte 9
+.byte 8
+.byte 13
+.byte 12
+.byte 92
+.byte 39
+.byte 0
+.size extra_special_characters.500,8
+.align 1
+.type blank_and_NUL.501,@object
+blank_and_NUL.501:
+.byte 32
+.byte 0
+.byte 0
+.size blank_and_NUL.501,3
+.globl s61
+.text
+.align 16
+.type s61,@function
+s61:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $60,%esp
+leal qs61.495,%edi
+movl %edi,-36(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-40(%ebp)
+movl $0,-48(%ebp)
+.LC502:
+.LC503:
+movl -40(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-40(%ebp)
+movl -36(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-36(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC502
+movw $-19,-54(%ebp)
+movswl -54(%ebp),%edi
+movl %edi,-60(%ebp)
+cmpl $-19,-60(%ebp)
+je .LC505
+incl -48(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC507
+pushl $1
+pushl $s61er.494
+call printf
+addl $8,%esp
+.LC507:
+.LC505:
+leal upper_alpha.496,%edi
+movl %edi,-28(%ebp)
+leal lower_alpha.497,%edi
+movl %edi,-24(%ebp)
+leal numbers.498,%edi
+movl %edi,-20(%ebp)
+leal special_characters.499,%edi
+movl %edi,-16(%ebp)
+leal extra_special_characters.500,%edi
+movl %edi,-12(%ebp)
+leal blank_and_NUL.501,%edi
+movl %edi,-8(%ebp)
+movl $0,-32(%ebp)
+movl $0,-4(%ebp)
+jmp .LC519
+.LC518:
+movl -4(%ebp),%edi
+leal -28(%ebp),%esi
+leal (%esi,%edi,4),%edi
+movl (,%edi),%esi
+leal 1(%esi),%ebx
+movl %ebx,(,%edi)
+movsbl (,%esi),%edi
+cmpl $0,%edi
+jge .LC521
+movl $1,-32(%ebp)
+.LC521:
+.LC519:
+movl -4(%ebp),%edi
+leal -28(%ebp),%esi
+movl (%esi,%edi,4),%edi
+movsbl (,%edi),%edi
+cmpl $0,%edi
+jne .LC518
+.LC515:
+incl -4(%ebp)
+cmpl $6,-4(%ebp)
+jl .LC519
+cmpl $0,-32(%ebp)
+je .LC523
+addl $2,-48(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC525
+pushl $2
+pushl $s61er.494
+call printf
+addl $8,%esp
+.LC525:
+.LC523:
+movl $1048579,-44(%ebp)
+movl -44(%ebp),%edi
+movl %edi,%esi
+movw %si,-50(%ebp)
+movl %edi,%ebx
+movb %bl,-51(%ebp)
+movswl -50(%ebp),%edi
+cmpl -44(%ebp),%edi
+je .LC530
+cmpl $3,%edi
+jne .LC529
+.LC530:
+movsbl -51(%ebp),%edi
+cmpl -44(%ebp),%edi
+je .LC527
+cmpl $3,%edi
+je .LC527
+.LC529:
+addl $8,-48(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC531
+pushl $8
+pushl $s61er.494
+call printf
+addl $8,%esp
+.LC531:
+.LC527:
+movl -48(%ebp),%eax
+.LC493:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf533:
+.size s61,.Lf533-s61
+.data
+.align 1
+.type s626er.535,@object
+s626er.535:
+.byte 115
+.byte 54
+.byte 50
+.byte 54
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s626er.535,11
+.align 1
+.type qs626.536,@object
+.size qs626.536,8
+qs626.536:
+.byte 115
+.byte 54
+.byte 50
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s626
+.text
+.align 16
+.type s626,@function
+s626:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $128,%esp
+leal qs626.536,%edi
+movl %edi,-56(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-60(%ebp)
+movl $0,-104(%ebp)
+.LC537:
+.LC538:
+movl -60(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-60(%ebp)
+movl -56(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-56(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC537
+flds .LC420
+fstps -36(%ebp)
+movl $1,-64(%ebp)
+movl $1,-40(%ebp)
+movl $0,-4(%ebp)
+jmp .LC543
+.LC540:
+flds .LC544
+fmuls -36(%ebp)
+fstps -36(%ebp)
+movl -40(%ebp),%edi
+leal (,%edi,2),%edi
+orl -64(%ebp),%edi
+movl %edi,-40(%ebp)
+.LC541:
+incl -4(%ebp)
+.LC543:
+movl 20(%ebp),%edi
+movl 12(%edi),%edi
+subl $2,%edi
+cmpl %edi,-4(%ebp)
+jl .LC540
+fildl -40(%ebp)
+fstps -112(%ebp)
+flds -36(%ebp)
+fsubs -112(%ebp)
+fdivs -36(%ebp)
+fstps -36(%ebp)
+fldl .LC425
+movl 20(%ebp),%edi
+fmuls 28(%edi)
+fcomps -36(%ebp)
+fstsw %ax
+sahf
+jae .LC545
+addl $2,-104(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC547
+pushl $2
+pushl $s626er.535
+call printf
+addl $8,%esp
+.LC547:
+.LC545:
+movb $125,-73(%ebp)
+movw $125,-76(%ebp)
+movl $125,-80(%ebp)
+movl $15625,-96(%ebp)
+movl $125,-84(%ebp)
+movl $15625,-100(%ebp)
+movl $125,-68(%ebp)
+movl $15625,-108(%ebp)
+flds .LC549
+fstps -72(%ebp)
+fldl .LC550
+fstpl -92(%ebp)
+fldl .LC551
+fstpl -52(%ebp)
+movl $0,-4(%ebp)
+.LC552:
+movl -4(%ebp),%edi
+leal -32(%ebp),%esi
+movb $0,(%esi,%edi)
+.LC553:
+incl -4(%ebp)
+cmpl $28,-4(%ebp)
+jl .LC552
+movsbl -73(%ebp),%edi
+movl %edi,%esi
+imull %edi,%esi
+cmpl -96(%ebp),%esi
+je .LC556
+movb $1,-32(%ebp)
+.LC556:
+movswl -76(%ebp),%edi
+movsbl -73(%ebp),%esi
+imull %esi,%edi
+cmpl -96(%ebp),%edi
+je .LC558
+movb $1,-31(%ebp)
+.LC558:
+movswl -76(%ebp),%edi
+movl %edi,%esi
+imull %edi,%esi
+cmpl -96(%ebp),%esi
+je .LC561
+movb $1,-30(%ebp)
+.LC561:
+movl -80(%ebp),%edi
+movsbl -73(%ebp),%esi
+imull %esi,%edi
+cmpl -96(%ebp),%edi
+je .LC564
+movb $1,-29(%ebp)
+.LC564:
+movl -80(%ebp),%edi
+movswl -76(%ebp),%esi
+imull %esi,%edi
+cmpl -96(%ebp),%edi
+je .LC567
+movb $1,-28(%ebp)
+.LC567:
+movl -80(%ebp),%edi
+movl %edi,%esi
+imull %edi,%esi
+cmpl -96(%ebp),%esi
+je .LC570
+movb $1,-27(%ebp)
+.LC570:
+movl -84(%ebp),%eax
+movsbl -73(%ebp),%edi
+mull %edi
+cmpl -100(%ebp),%eax
+je .LC573
+movb $1,-26(%ebp)
+.LC573:
+movl -84(%ebp),%eax
+movswl -76(%ebp),%edi
+mull %edi
+cmpl -100(%ebp),%eax
+je .LC576
+movb $1,-25(%ebp)
+.LC576:
+movl -84(%ebp),%eax
+movl -80(%ebp),%edi
+mull %edi
+cmpl -100(%ebp),%eax
+je .LC579
+movb $1,-24(%ebp)
+.LC579:
+movl -84(%ebp),%edi
+movl %edi,%eax
+mull %edi
+cmpl -100(%ebp),%eax
+je .LC582
+movb $1,-23(%ebp)
+.LC582:
+movl -68(%ebp),%edi
+movsbl -73(%ebp),%esi
+imull %esi,%edi
+cmpl -108(%ebp),%edi
+je .LC585
+movb $1,-22(%ebp)
+.LC585:
+movl -68(%ebp),%edi
+movswl -76(%ebp),%esi
+imull %esi,%edi
+cmpl -108(%ebp),%edi
+je .LC588
+movb $1,-21(%ebp)
+.LC588:
+movl -68(%ebp),%edi
+imull -80(%ebp),%edi
+cmpl -108(%ebp),%edi
+je .LC591
+movb $1,-20(%ebp)
+.LC591:
+movl -68(%ebp),%edi
+movl %edi,%eax
+mull -84(%ebp)
+cmpl -100(%ebp),%eax
+je .LC594
+movb $1,-19(%ebp)
+.LC594:
+movl -68(%ebp),%edi
+movl %edi,%esi
+imull %edi,%esi
+cmpl -108(%ebp),%esi
+je .LC597
+movb $1,-18(%ebp)
+.LC597:
+flds -72(%ebp)
+movsbl -73(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC600
+movb $1,-17(%ebp)
+.LC600:
+flds -72(%ebp)
+movswl -76(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC603
+movb $1,-16(%ebp)
+.LC603:
+flds -72(%ebp)
+fildl -80(%ebp)
+fmulp %st(1),%st
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC606
+movb $1,-15(%ebp)
+.LC606:
+movl -84(%ebp),%edi
+flds -72(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC609
+movb $1,-14(%ebp)
+.LC609:
+flds -72(%ebp)
+fildl -68(%ebp)
+fmulp %st(1),%st
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC613
+movb $1,-13(%ebp)
+.LC613:
+flds -72(%ebp)
+fmuls -72(%ebp)
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC616
+movb $1,-12(%ebp)
+.LC616:
+fldl -92(%ebp)
+movsbl -73(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC619
+movb $1,-11(%ebp)
+.LC619:
+fldl -92(%ebp)
+movswl -76(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC622
+movb $1,-10(%ebp)
+.LC622:
+fldl -92(%ebp)
+fimull -80(%ebp)
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC625
+movb $1,-9(%ebp)
+.LC625:
+movl -84(%ebp),%edi
+fldl -92(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fmulp %st(1),%st
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC628
+movb $1,-8(%ebp)
+.LC628:
+fldl -92(%ebp)
+fimull -68(%ebp)
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC631
+movb $1,-7(%ebp)
+.LC631:
+fldl -92(%ebp)
+fmuls -72(%ebp)
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC634
+movb $1,-6(%ebp)
+.LC634:
+fldl -92(%ebp)
+fmull -92(%ebp)
+fldl -52(%ebp)
+fcompp
+fstsw %ax
+sahf
+je .LC637
+movb $1,-5(%ebp)
+.LC637:
+movb $0,-41(%ebp)
+movl $0,-4(%ebp)
+.LC640:
+movsbl -41(%ebp),%edi
+movl -4(%ebp),%esi
+leal -32(%ebp),%ebx
+movsbl (%ebx,%esi),%esi
+leal (%esi,%edi),%edi
+movl %edi,%ebx
+movb %bl,-41(%ebp)
+.LC641:
+incl -4(%ebp)
+cmpl $28,-4(%ebp)
+jl .LC640
+movsbl -41(%ebp),%edi
+cmpl $0,%edi
+je .LC644
+addl $4,-104(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC646
+pushl $4
+pushl $s626er.535
+call printf
+addl $8,%esp
+pushl $.LC648
+call printf
+addl $4,%esp
+movl $0,-4(%ebp)
+.LC649:
+movl -4(%ebp),%edi
+leal -32(%ebp),%esi
+movsbl (%esi,%edi),%edi
+pushl %edi
+pushl $.LC653
+call printf
+addl $8,%esp
+.LC650:
+incl -4(%ebp)
+cmpl $28,-4(%ebp)
+jl .LC649
+pushl $.LC654
+call printf
+addl $4,%esp
+.LC646:
+.LC644:
+movl $32768,-68(%ebp)
+movl -68(%ebp),%edi
+cmpl $0x8000,%edi
+jbe .LC655
+addl $8,-104(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC657
+pushl $8
+pushl $s626er.535
+call printf
+addl $8,%esp
+.LC657:
+.LC655:
+movl -104(%ebp),%eax
+.LC534:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf659:
+.size s626,.Lf659-s626
+.data
+.align 1
+.type s71er.661,@object
+s71er.661:
+.byte 115
+.byte 55
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s71er.661,10
+.align 1
+.type qs71.662,@object
+.size qs71.662,8
+qs71.662:
+.byte 115
+.byte 55
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.type q.663,@object
+.size q.663,1
+q.663:
+.byte 113
+.globl s71
+.text
+.align 16
+.type s71,@function
+s71:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $68,%esp
+leal qs71.662,%edi
+movl %edi,-4(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-8(%ebp)
+movl $0,-12(%ebp)
+.LC664:
+.LC665:
+movl -8(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-8(%ebp)
+movl -4(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-4(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC664
+movsbl .LC669,%edi
+movsbl q.663,%esi
+cmpl %esi,%edi
+je .LC667
+incl -12(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC670
+pushl $1
+pushl $s71er.661
+call printf
+addl $8,%esp
+.LC670:
+.LC667:
+jmp .LC672
+addl $2,-12(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC674
+pushl $2
+pushl $s71er.661
+call printf
+addl $8,%esp
+.LC674:
+.LC672:
+movl $1942,-32(%ebp)
+cmpl $1942,-32(%ebp)
+jne .LC682
+movl -32(%ebp),%edi
+cmpl %edi,-32(%ebp)
+je .LC677
+.LC682:
+addl $4,-12(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC683
+pushl $4
+pushl $s71er.661
+call printf
+addl $8,%esp
+.LC683:
+.LC677:
+pushl $-5
+call McCarthy
+addl $4,%esp
+cmpl $91,%eax
+je .LC685
+addl $8,-12(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC687
+pushl $8
+pushl $s71er.661
+call printf
+addl $8,%esp
+.LC687:
+.LC685:
+movl $2,-56(%ebp)
+movl $3,-60(%ebp)
+leal -60(%ebp),%edi
+movl %edi,-64(%ebp)
+pushl -64(%ebp)
+pushl -56(%ebp)
+call clobber
+addl $8,%esp
+cmpl $2,-56(%ebp)
+jne .LC691
+cmpl $2,-60(%ebp)
+je .LC689
+.LC691:
+addl $16,-12(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC692
+pushl $16
+pushl $s71er.661
+call printf
+addl $8,%esp
+.LC692:
+.LC689:
+movl 20(%ebp),%edi
+flds 32(%edi)
+fstps -68(%ebp)
+flds -68(%ebp)
+fcomps -68(%ebp)
+fstsw %ax
+sahf
+je .LC694
+addl $32,-12(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC696
+pushl $32
+pushl $s71er.661
+call printf
+addl $8,%esp
+.LC696:
+.LC694:
+movl -12(%ebp),%eax
+.LC660:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf698:
+.size s71,.Lf698-s71
+.globl McCarthy
+.align 16
+.type McCarthy,@function
+McCarthy:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+cmpl $100,20(%ebp)
+jle .LC700
+movl 20(%ebp),%edi
+movl %edi,%eax
+subl $10,%eax
+jmp .LC699
+.LC700:
+movl 20(%ebp),%edi
+leal 11(%edi),%edi
+pushl %edi
+call McCarthy
+addl $4,%esp
+movl %eax,%edi
+pushl %edi
+call McCarthy
+addl $4,%esp
+movl %eax,%edi
+.LC699:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf702:
+.size McCarthy,.Lf702-McCarthy
+.globl clobber
+.align 16
+.type clobber,@function
+clobber:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl $3,20(%ebp)
+movl 24(%ebp),%edi
+movl $2,(,%edi)
+movl $0,%eax
+.LC703:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf704:
+.size clobber,.Lf704-clobber
+.data
+.align 1
+.type f.706,@object
+f.706:
+.byte 76
+.byte 111
+.byte 99
+.byte 97
+.byte 108
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.size f.706,17
+.align 1
+.type s714er.707,@object
+s714er.707:
+.byte 115
+.byte 55
+.byte 49
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s714er.707,11
+.align 1
+.type qs714.708,@object
+.size qs714.708,8
+qs714.708:
+.byte 115
+.byte 55
+.byte 49
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s714
+.text
+.align 16
+.type s714,@function
+s714:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $248,%esp
+leal qs714.708,%edi
+movl %edi,-68(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%esi
+movl %esi,-72(%ebp)
+movl $0,-76(%ebp)
+movl $0,-8(%ebp)
+movl 48(%edi),%edi
+movl %edi,-4(%ebp)
+.LC709:
+.LC710:
+movl -72(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-72(%ebp)
+movl -68(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-68(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC709
+movb $5,-9(%ebp)
+movb $2,-25(%ebp)
+movb -25(%ebp),%bl
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC712
+movl $1,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC714
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC714:
+.LC712:
+movb $5,-9(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC716
+movl $2,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC718
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC718:
+.LC716:
+movb $5,-9(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC720
+movl $3,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC722
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC722:
+.LC720:
+movb $5,-9(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC724
+movl $4,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC726
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC726:
+.LC724:
+movb $5,-9(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC728
+movl $5,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC730
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC730:
+.LC728:
+movb $5,-9(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC732
+movl $6,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC734
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC734:
+.LC732:
+movb $5,-9(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC736
+movl $7,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC738
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC738:
+.LC736:
+movw $5,-12(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC740
+movl $8,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC742
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC742:
+.LC740:
+movw $5,-12(%ebp)
+movw $2,-28(%ebp)
+movw -28(%ebp),%di
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC744
+movl $9,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC746
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC746:
+.LC744:
+movw $5,-12(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC748
+movl $10,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC750
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC750:
+.LC748:
+movw $5,-12(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC752
+movl $11,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC754
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC754:
+.LC752:
+movw $5,-12(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC756
+movl $12,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC758
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC758:
+.LC756:
+movw $5,-12(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC760
+movl $13,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC762
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC762:
+.LC760:
+movw $5,-12(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC764
+movl $14,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC766
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC766:
+.LC764:
+movl $5,-16(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC768
+movl $15,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC770
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC770:
+.LC768:
+movl $5,-16(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC772
+movl $16,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC774
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC774:
+.LC772:
+movl $5,-16(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC776
+movl $17,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC778
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC778:
+.LC776:
+movl $5,-16(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC780
+movl $18,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC782
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC782:
+.LC780:
+movl $5,-16(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC784
+movl $19,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC786
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC786:
+.LC784:
+movl $5,-16(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -56(%ebp)
+fistpl -16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC788
+movl $20,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC790
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC790:
+.LC788:
+movl $5,-16(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fistpl -16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC792
+movl $21,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC794
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC794:
+.LC792:
+movl $5,-20(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC796
+movl $22,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC798
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC798:
+.LC796:
+movl $5,-20(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC800
+movl $23,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC802
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC802:
+.LC800:
+movl $5,-20(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC804
+movl $24,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC806
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC806:
+.LC804:
+movl $5,-20(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC808
+movl $25,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC810
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC810:
+.LC808:
+movl $5,-20(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC812
+movl $26,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC814
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC814:
+.LC812:
+movl $5,-20(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -56(%ebp)
+fistpl -20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC816
+movl $27,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC818
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC818:
+.LC816:
+movl $5,-20(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fistpl -20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC820
+movl $28,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC822
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC822:
+.LC820:
+movl $5,-24(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC824
+movl $29,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC826
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC826:
+.LC824:
+movl $5,-24(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC828
+movl $30,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC830
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC830:
+.LC828:
+movl $5,-24(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC832
+movl $31,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC834
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC834:
+.LC832:
+movl $5,-24(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC836
+movl $32,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC838
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC838:
+.LC836:
+movl $5,-24(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC840
+movl $33,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC842
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC842:
+.LC840:
+movl $5,-24(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds .LC847
+fcomps -56(%ebp)
+fstsw %ax
+sahf
+ja .LC845
+flds -56(%ebp)
+fsubs .LC847
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-80(%ebp)
+jmp .LC846
+.LC845:
+flds -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-80(%ebp)
+.LC846:
+movl -80(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC848
+movl $34,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC850
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC850:
+.LC848:
+movl $5,-24(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl .LC855
+fcompl -64(%ebp)
+fstsw %ax
+sahf
+ja .LC853
+fldl -64(%ebp)
+fsubl .LC855
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-92(%ebp)
+jmp .LC854
+.LC853:
+fldl -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-92(%ebp)
+.LC854:
+movl -92(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC856
+movl $35,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC858
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC858:
+.LC856:
+flds .LC860
+fstps -44(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstps -44(%ebp)
+flds .LC544
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC861
+movl $36,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC863
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC863:
+.LC861:
+flds .LC860
+fstps -44(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstps -44(%ebp)
+flds .LC544
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC865
+movl $37,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC867
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC867:
+.LC865:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-32(%ebp)
+fildl -32(%ebp)
+fstps -44(%ebp)
+flds .LC544
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC869
+movl $38,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC871
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC871:
+.LC869:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-36(%ebp)
+fildl -36(%ebp)
+fstps -44(%ebp)
+flds .LC544
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC873
+movl $39,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC875
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC875:
+.LC873:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fstps -44(%ebp)
+flds .LC544
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC877
+movl $40,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC879
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC879:
+.LC877:
+flds .LC860
+fstps -44(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -56(%ebp)
+fstps -44(%ebp)
+flds .LC544
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC881
+movl $41,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC883
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC883:
+.LC881:
+flds .LC860
+fstps -44(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fstps -44(%ebp)
+flds .LC544
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC885
+movl $42,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC887
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC887:
+.LC885:
+fldl .LC889
+fstpl -52(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstpl -52(%ebp)
+fldl .LC425
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC890
+movl $43,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC892
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC892:
+.LC890:
+fldl .LC889
+fstpl -52(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstpl -52(%ebp)
+fldl .LC425
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC894
+movl $44,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC896
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC896:
+.LC894:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-32(%ebp)
+fildl -32(%ebp)
+fstpl -52(%ebp)
+fldl .LC425
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC898
+movl $45,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC900
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC900:
+.LC898:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-36(%ebp)
+fildl -36(%ebp)
+fstpl -52(%ebp)
+fldl .LC425
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC902
+movl $46,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC904
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC904:
+.LC902:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC425
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC906
+movl $47,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC908
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC908:
+.LC906:
+fldl .LC889
+fstpl -52(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -56(%ebp)
+fstpl -52(%ebp)
+fldl .LC425
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC910
+movl $48,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC912
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC912:
+.LC910:
+fldl .LC889
+fstpl -52(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fstpl -52(%ebp)
+fldl .LC425
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC914
+movl $49,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC916
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC916:
+.LC914:
+movb $5,-9(%ebp)
+movb $2,-25(%ebp)
+movsbl -9(%ebp),%edi
+movsbl -25(%ebp),%esi
+leal (%esi,%edi),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $7,%edi
+je .LC918
+movl $50,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC920
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC920:
+.LC918:
+movb $5,-9(%ebp)
+movw $2,-28(%ebp)
+movsbl -9(%ebp),%edi
+movswl -28(%ebp),%esi
+leal (%esi,%edi),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $7,%edi
+je .LC922
+movl $51,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC924
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC924:
+.LC922:
+movb $5,-9(%ebp)
+movl $2,-32(%ebp)
+movsbl -9(%ebp),%edi
+movl -32(%ebp),%esi
+leal (%esi,%edi),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $7,%edi
+je .LC926
+movl $52,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC928
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC928:
+.LC926:
+movb $5,-9(%ebp)
+movl $2,-36(%ebp)
+movsbl -9(%ebp),%edi
+movl -36(%ebp),%esi
+leal (%esi,%edi),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $7,%edi
+je .LC930
+movl $53,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC932
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC932:
+.LC930:
+movb $5,-9(%ebp)
+movl $2,-40(%ebp)
+movsbl -9(%ebp),%edi
+movl -40(%ebp),%esi
+leal (%esi,%edi),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $7,%edi
+je .LC934
+movl $54,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC936
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC936:
+.LC934:
+movb $5,-9(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movsbl -9(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fadds -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $7,%edi
+je .LC938
+movl $55,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC940
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC940:
+.LC938:
+movb $5,-9(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movsbl -9(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddl -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $7,%edi
+je .LC942
+movl $56,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC944
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC944:
+.LC942:
+movw $5,-12(%ebp)
+movb $2,-25(%ebp)
+movswl -12(%ebp),%edi
+movsbl -25(%ebp),%esi
+leal (%esi,%edi),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $7,%edi
+je .LC946
+movl $57,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC948
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC948:
+.LC946:
+movw $5,-12(%ebp)
+movw $2,-28(%ebp)
+movswl -12(%ebp),%edi
+movswl -28(%ebp),%esi
+leal (%esi,%edi),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $7,%edi
+je .LC950
+movl $58,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC952
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC952:
+.LC950:
+movw $5,-12(%ebp)
+movl $2,-32(%ebp)
+movswl -12(%ebp),%edi
+movl -32(%ebp),%esi
+leal (%esi,%edi),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $7,%edi
+je .LC954
+movl $59,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC956
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC956:
+.LC954:
+movw $5,-12(%ebp)
+movl $2,-36(%ebp)
+movswl -12(%ebp),%edi
+movl -36(%ebp),%esi
+leal (%esi,%edi),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $7,%edi
+je .LC958
+movl $60,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC960
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC960:
+.LC958:
+movw $5,-12(%ebp)
+movl $2,-40(%ebp)
+movswl -12(%ebp),%edi
+movl -40(%ebp),%esi
+leal (%esi,%edi),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $7,%edi
+je .LC962
+movl $61,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC964
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC964:
+.LC962:
+movw $5,-12(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movswl -12(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fadds -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $7,%edi
+je .LC966
+movl $62,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC968
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC968:
+.LC966:
+movw $5,-12(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movswl -12(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddl -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $7,%edi
+je .LC970
+movl $63,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC972
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC972:
+.LC970:
+movl $5,-16(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+addl %edi,-16(%ebp)
+cmpl $7,-16(%ebp)
+je .LC974
+movl $64,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC976
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC976:
+.LC974:
+movl $5,-16(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+addl %edi,-16(%ebp)
+cmpl $7,-16(%ebp)
+je .LC978
+movl $65,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC980
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC980:
+.LC978:
+movl $5,-16(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+addl %edi,-16(%ebp)
+cmpl $7,-16(%ebp)
+je .LC982
+movl $66,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC984
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC984:
+.LC982:
+movl $5,-16(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+addl %edi,-16(%ebp)
+cmpl $7,-16(%ebp)
+je .LC986
+movl $67,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC988
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC988:
+.LC986:
+movl $5,-16(%ebp)
+movl $2,-40(%ebp)
+movl -16(%ebp),%edi
+movl -40(%ebp),%esi
+leal (%esi,%edi),%edi
+movl %edi,-16(%ebp)
+cmpl $7,-16(%ebp)
+je .LC990
+movl $68,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC992
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC992:
+.LC990:
+movl $5,-16(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fildl -16(%ebp)
+fadds -56(%ebp)
+fistpl -16(%ebp)
+cmpl $7,-16(%ebp)
+je .LC994
+movl $69,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC996
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC996:
+.LC994:
+movl $5,-16(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fildl -16(%ebp)
+faddl -64(%ebp)
+fistpl -16(%ebp)
+cmpl $7,-16(%ebp)
+je .LC998
+movl $70,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1000
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1000:
+.LC998:
+movl $5,-20(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+addl %edi,-20(%ebp)
+cmpl $7,-20(%ebp)
+je .LC1002
+movl $71,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1004
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1004:
+.LC1002:
+movl $5,-20(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+addl %edi,-20(%ebp)
+cmpl $7,-20(%ebp)
+je .LC1006
+movl $72,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1008
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1008:
+.LC1006:
+movl $5,-20(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+addl %edi,-20(%ebp)
+cmpl $7,-20(%ebp)
+je .LC1010
+movl $73,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1012
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1012:
+.LC1010:
+movl $5,-20(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+addl %edi,-20(%ebp)
+cmpl $7,-20(%ebp)
+je .LC1014
+movl $74,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1016
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1016:
+.LC1014:
+movl $5,-20(%ebp)
+movl $2,-40(%ebp)
+movl -20(%ebp),%edi
+movl -40(%ebp),%esi
+leal (%esi,%edi),%edi
+movl %edi,-20(%ebp)
+cmpl $7,-20(%ebp)
+je .LC1018
+movl $75,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1020
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1020:
+.LC1018:
+movl $5,-20(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fildl -20(%ebp)
+fadds -56(%ebp)
+fistpl -20(%ebp)
+cmpl $7,-20(%ebp)
+je .LC1022
+movl $76,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1024
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1024:
+.LC1022:
+movl $5,-20(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fildl -20(%ebp)
+faddl -64(%ebp)
+fistpl -20(%ebp)
+cmpl $7,-20(%ebp)
+je .LC1026
+movl $77,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1028
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1028:
+.LC1026:
+movl $5,-24(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+add %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $7,%edi
+je .LC1030
+movl $78,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1032
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1032:
+.LC1030:
+movl $5,-24(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+add %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $7,%edi
+je .LC1034
+movl $79,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1036
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1036:
+.LC1034:
+movl $5,-24(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+add %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $7,%edi
+je .LC1038
+movl $80,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1040
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1040:
+.LC1038:
+movl $5,-24(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+add %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $7,%edi
+je .LC1042
+movl $81,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1044
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1044:
+.LC1042:
+movl $5,-24(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+add %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $7,%edi
+je .LC1046
+movl $82,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1048
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1048:
+.LC1046:
+movl $5,-24(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movl -24(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+fadds -56(%ebp)
+fstps -128(%ebp)
+flds .LC847
+fcomps -128(%ebp)
+fstsw %ax
+sahf
+ja .LC1051
+flds -128(%ebp)
+fsubs .LC847
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-124(%ebp)
+jmp .LC1052
+.LC1051:
+flds -128(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-124(%ebp)
+.LC1052:
+movl -124(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $7,%edi
+je .LC1053
+movl $83,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1055
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1055:
+.LC1053:
+movl $5,-24(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movl -24(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+faddl -64(%ebp)
+fstpl -144(%ebp)
+fldl .LC855
+fcompl -144(%ebp)
+fstsw %ax
+sahf
+ja .LC1058
+fldl -144(%ebp)
+fsubl .LC855
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-136(%ebp)
+jmp .LC1059
+.LC1058:
+fldl -144(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-136(%ebp)
+.LC1059:
+movl -136(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $7,%edi
+je .LC1060
+movl $84,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1062
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1062:
+.LC1060:
+flds .LC860
+fstps -44(%ebp)
+movb $2,-25(%ebp)
+flds -44(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fstps -44(%ebp)
+flds .LC1066
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1064
+movl $85,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1067
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1067:
+.LC1064:
+flds .LC860
+fstps -44(%ebp)
+movw $2,-28(%ebp)
+flds -44(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fstps -44(%ebp)
+flds .LC1066
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1069
+movl $86,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1071
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1071:
+.LC1069:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-32(%ebp)
+flds -44(%ebp)
+fildl -32(%ebp)
+faddp %st(1),%st
+fstps -44(%ebp)
+flds .LC1066
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1073
+movl $87,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1075
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1075:
+.LC1073:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-36(%ebp)
+flds -44(%ebp)
+fildl -36(%ebp)
+faddp %st(1),%st
+fstps -44(%ebp)
+flds .LC1066
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1077
+movl $88,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1079
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1079:
+.LC1077:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+flds -44(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fstps -44(%ebp)
+flds .LC1066
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1081
+movl $89,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1083
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1083:
+.LC1081:
+flds .LC860
+fstps -44(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -44(%ebp)
+fadds -56(%ebp)
+fstps -44(%ebp)
+flds .LC1066
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1085
+movl $90,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1087
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1087:
+.LC1085:
+flds .LC860
+fstps -44(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+flds -44(%ebp)
+faddl -64(%ebp)
+fstps -44(%ebp)
+flds .LC1066
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1089
+movl $91,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1091
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1091:
+.LC1089:
+fldl .LC889
+fstpl -52(%ebp)
+movb $2,-25(%ebp)
+fldl -52(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1095
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1093
+movl $92,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1096
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1096:
+.LC1093:
+fldl .LC889
+fstpl -52(%ebp)
+movw $2,-28(%ebp)
+fldl -52(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1095
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1098
+movl $93,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1100
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1100:
+.LC1098:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-32(%ebp)
+fldl -52(%ebp)
+fiaddl -32(%ebp)
+fstpl -52(%ebp)
+fldl .LC1095
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1102
+movl $94,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1104
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1104:
+.LC1102:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-36(%ebp)
+fldl -52(%ebp)
+fiaddl -36(%ebp)
+fstpl -52(%ebp)
+fldl .LC1095
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1106
+movl $95,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1108
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1108:
+.LC1106:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+fldl -52(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+faddp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1095
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1110
+movl $96,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1112
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1112:
+.LC1110:
+fldl .LC889
+fstpl -52(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fldl -52(%ebp)
+fadds -56(%ebp)
+fstpl -52(%ebp)
+fldl .LC1095
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1114
+movl $97,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1116
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1116:
+.LC1114:
+fldl .LC889
+fstpl -52(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -52(%ebp)
+faddl -64(%ebp)
+fstpl -52(%ebp)
+fldl .LC1095
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1118
+movl $98,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1120
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1120:
+.LC1118:
+movb $5,-9(%ebp)
+movb $2,-25(%ebp)
+movsbl -9(%ebp),%edi
+movsbl -25(%ebp),%esi
+subl %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $3,%edi
+je .LC1122
+movl $99,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1124
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1124:
+.LC1122:
+movb $5,-9(%ebp)
+movw $2,-28(%ebp)
+movsbl -9(%ebp),%edi
+movswl -28(%ebp),%esi
+subl %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $3,%edi
+je .LC1126
+movl $100,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1128
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1128:
+.LC1126:
+movb $5,-9(%ebp)
+movl $2,-32(%ebp)
+movsbl -9(%ebp),%edi
+subl -32(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $3,%edi
+je .LC1130
+movl $101,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1132
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1132:
+.LC1130:
+movb $5,-9(%ebp)
+movl $2,-36(%ebp)
+movsbl -9(%ebp),%edi
+subl -36(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $3,%edi
+je .LC1134
+movl $102,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1136
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1136:
+.LC1134:
+movb $5,-9(%ebp)
+movl $2,-40(%ebp)
+movsbl -9(%ebp),%edi
+subl -40(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $3,%edi
+je .LC1138
+movl $103,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1140
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1140:
+.LC1138:
+movb $5,-9(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movsbl -9(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fsubs -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $3,%edi
+je .LC1142
+movl $104,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1144
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1144:
+.LC1142:
+movb $5,-9(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movsbl -9(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fsubl -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $3,%edi
+je .LC1146
+movl $105,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1148
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1148:
+.LC1146:
+movw $5,-12(%ebp)
+movb $2,-25(%ebp)
+movswl -12(%ebp),%edi
+movsbl -25(%ebp),%esi
+subl %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $3,%edi
+je .LC1150
+movl $106,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1152
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1152:
+.LC1150:
+movw $5,-12(%ebp)
+movw $2,-28(%ebp)
+movswl -12(%ebp),%edi
+movswl -28(%ebp),%esi
+subl %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $3,%edi
+je .LC1154
+movl $107,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1156
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1156:
+.LC1154:
+movw $5,-12(%ebp)
+movl $2,-32(%ebp)
+movswl -12(%ebp),%edi
+subl -32(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $3,%edi
+je .LC1158
+movl $108,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1160
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1160:
+.LC1158:
+movw $5,-12(%ebp)
+movl $2,-36(%ebp)
+movswl -12(%ebp),%edi
+subl -36(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $3,%edi
+je .LC1162
+movl $109,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1164
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1164:
+.LC1162:
+movw $5,-12(%ebp)
+movl $2,-40(%ebp)
+movswl -12(%ebp),%edi
+subl -40(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $3,%edi
+je .LC1166
+movl $110,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1168
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1168:
+.LC1166:
+movw $5,-12(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movswl -12(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fsubs -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $3,%edi
+je .LC1170
+movl $111,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1172
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1172:
+.LC1170:
+movw $5,-12(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movswl -12(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fsubl -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $3,%edi
+je .LC1174
+movl $112,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1176
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1176:
+.LC1174:
+movl $5,-16(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+sub %edi,-16(%ebp)
+cmpl $3,-16(%ebp)
+je .LC1178
+movl $113,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1180
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1180:
+.LC1178:
+movl $5,-16(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+sub %edi,-16(%ebp)
+cmpl $3,-16(%ebp)
+je .LC1182
+movl $114,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1184
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1184:
+.LC1182:
+movl $5,-16(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+sub %edi,-16(%ebp)
+cmpl $3,-16(%ebp)
+je .LC1186
+movl $115,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1188
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1188:
+.LC1186:
+movl $5,-16(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+sub %edi,-16(%ebp)
+cmpl $3,-16(%ebp)
+je .LC1190
+movl $116,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1192
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1192:
+.LC1190:
+movl $5,-16(%ebp)
+movl $2,-40(%ebp)
+movl -16(%ebp),%edi
+subl -40(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $3,-16(%ebp)
+je .LC1194
+movl $117,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1196
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1196:
+.LC1194:
+movl $5,-16(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fildl -16(%ebp)
+fsubs -56(%ebp)
+fistpl -16(%ebp)
+cmpl $3,-16(%ebp)
+je .LC1198
+movl $118,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1200
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1200:
+.LC1198:
+movl $5,-16(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fisubrl -16(%ebp)
+fistpl -16(%ebp)
+cmpl $3,-16(%ebp)
+je .LC1202
+movl $119,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1204
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1204:
+.LC1202:
+movl $5,-20(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+sub %edi,-20(%ebp)
+cmpl $3,-20(%ebp)
+je .LC1206
+movl $120,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1208
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1208:
+.LC1206:
+movl $5,-20(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+sub %edi,-20(%ebp)
+cmpl $3,-20(%ebp)
+je .LC1210
+movl $121,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1212
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1212:
+.LC1210:
+movl $5,-20(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+sub %edi,-20(%ebp)
+cmpl $3,-20(%ebp)
+je .LC1214
+movl $122,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1216
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1216:
+.LC1214:
+movl $5,-20(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+sub %edi,-20(%ebp)
+cmpl $3,-20(%ebp)
+je .LC1218
+movl $123,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1220
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1220:
+.LC1218:
+movl $5,-20(%ebp)
+movl $2,-40(%ebp)
+movl -20(%ebp),%edi
+subl -40(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $3,-20(%ebp)
+je .LC1222
+movl $124,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1224
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1224:
+.LC1222:
+movl $5,-20(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fildl -20(%ebp)
+fsubs -56(%ebp)
+fistpl -20(%ebp)
+cmpl $3,-20(%ebp)
+je .LC1226
+movl $125,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1228
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1228:
+.LC1226:
+movl $5,-20(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fisubrl -20(%ebp)
+fistpl -20(%ebp)
+cmpl $3,-20(%ebp)
+je .LC1230
+movl $126,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1232
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1232:
+.LC1230:
+movl $5,-24(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%edi
+sub %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $3,%edi
+je .LC1234
+movl $127,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1236
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1236:
+.LC1234:
+movl $5,-24(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%edi
+sub %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $3,%edi
+je .LC1238
+movl $128,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1240
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1240:
+.LC1238:
+movl $5,-24(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%edi
+sub %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $3,%edi
+je .LC1242
+movl $129,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1244
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1244:
+.LC1242:
+movl $5,-24(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%edi
+sub %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $3,%edi
+je .LC1246
+movl $130,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1248
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1248:
+.LC1246:
+movl $5,-24(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+sub %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $3,%edi
+je .LC1250
+movl $131,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1252
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1252:
+.LC1250:
+movl $5,-24(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movl -24(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+fsubs -56(%ebp)
+fstps -160(%ebp)
+flds .LC847
+fcomps -160(%ebp)
+fstsw %ax
+sahf
+ja .LC1255
+flds -160(%ebp)
+fsubs .LC847
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-156(%ebp)
+jmp .LC1256
+.LC1255:
+flds -160(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-156(%ebp)
+.LC1256:
+movl -156(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $3,%edi
+je .LC1257
+movl $132,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1259
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1259:
+.LC1257:
+movl $5,-24(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movl -24(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fsubl -64(%ebp)
+fstpl -176(%ebp)
+fldl .LC855
+fcompl -176(%ebp)
+fstsw %ax
+sahf
+ja .LC1262
+fldl -176(%ebp)
+fsubl .LC855
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-168(%ebp)
+jmp .LC1263
+.LC1262:
+fldl -176(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-168(%ebp)
+.LC1263:
+movl -168(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $3,%edi
+je .LC1264
+movl $133,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1266
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1266:
+.LC1264:
+flds .LC860
+fstps -44(%ebp)
+movb $2,-25(%ebp)
+flds -44(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fsubp %st(1),%st
+fstps -44(%ebp)
+flds .LC1270
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1268
+movl $134,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1271
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1271:
+.LC1268:
+flds .LC860
+fstps -44(%ebp)
+movw $2,-28(%ebp)
+flds -44(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fsubp %st(1),%st
+fstps -44(%ebp)
+flds .LC1270
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1273
+movl $135,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1275
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1275:
+.LC1273:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-32(%ebp)
+flds -44(%ebp)
+fildl -32(%ebp)
+fsubp %st(1),%st
+fstps -44(%ebp)
+flds .LC1270
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1277
+movl $136,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1279
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1279:
+.LC1277:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-36(%ebp)
+flds -44(%ebp)
+fildl -36(%ebp)
+fsubp %st(1),%st
+fstps -44(%ebp)
+flds .LC1270
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1281
+movl $137,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1283
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1283:
+.LC1281:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+flds -44(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+fsubp %st(1),%st
+fstps -44(%ebp)
+flds .LC1270
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1285
+movl $138,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1287
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1287:
+.LC1285:
+flds .LC860
+fstps -44(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -44(%ebp)
+fsubs -56(%ebp)
+fstps -44(%ebp)
+flds .LC1270
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1289
+movl $139,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1291
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1291:
+.LC1289:
+flds .LC860
+fstps -44(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+flds -44(%ebp)
+fsubl -64(%ebp)
+fstps -44(%ebp)
+flds .LC1270
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1293
+movl $140,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1295
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1295:
+.LC1293:
+fldl .LC889
+fstpl -52(%ebp)
+movb $2,-25(%ebp)
+fldl -52(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fsubp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1299
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1297
+movl $141,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1300
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1300:
+.LC1297:
+fldl .LC889
+fstpl -52(%ebp)
+movw $2,-28(%ebp)
+fldl -52(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fsubp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1299
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1302
+movl $142,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1304
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1304:
+.LC1302:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-32(%ebp)
+fldl -52(%ebp)
+fisubl -32(%ebp)
+fstpl -52(%ebp)
+fldl .LC1299
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1306
+movl $143,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1308
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1308:
+.LC1306:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-36(%ebp)
+fldl -52(%ebp)
+fisubl -36(%ebp)
+fstpl -52(%ebp)
+fldl .LC1299
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1310
+movl $144,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1312
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1312:
+.LC1310:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+fldl -52(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fsubp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1299
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1314
+movl $145,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1316
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1316:
+.LC1314:
+fldl .LC889
+fstpl -52(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fldl -52(%ebp)
+fsubs -56(%ebp)
+fstpl -52(%ebp)
+fldl .LC1299
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1318
+movl $146,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1320
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1320:
+.LC1318:
+fldl .LC889
+fstpl -52(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -52(%ebp)
+fsubl -64(%ebp)
+fstpl -52(%ebp)
+fldl .LC1299
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1322
+movl $147,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1324
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1324:
+.LC1322:
+movb $5,-9(%ebp)
+movb $2,-25(%ebp)
+movsbl -9(%ebp),%edi
+movsbl -25(%ebp),%esi
+imull %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $10,%edi
+je .LC1326
+movl $148,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1328
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1328:
+.LC1326:
+movb $5,-9(%ebp)
+movw $2,-28(%ebp)
+movsbl -9(%ebp),%edi
+movswl -28(%ebp),%esi
+imull %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $10,%edi
+je .LC1330
+movl $149,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1332
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1332:
+.LC1330:
+movb $5,-9(%ebp)
+movl $2,-32(%ebp)
+movsbl -9(%ebp),%edi
+imull -32(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $10,%edi
+je .LC1334
+movl $150,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1336
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1336:
+.LC1334:
+movb $5,-9(%ebp)
+movl $2,-36(%ebp)
+movsbl -9(%ebp),%edi
+imull -36(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $10,%edi
+je .LC1338
+movl $151,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1340
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1340:
+.LC1338:
+movb $5,-9(%ebp)
+movl $2,-40(%ebp)
+movsbl -9(%ebp),%edi
+movl %edi,%eax
+mull -40(%ebp)
+movl %eax,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $10,%edi
+je .LC1342
+movl $152,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1344
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1344:
+.LC1342:
+movb $5,-9(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movsbl -9(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmuls -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $10,%edi
+je .LC1346
+movl $153,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1348
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1348:
+.LC1346:
+movb $5,-9(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movsbl -9(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmull -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $10,%edi
+je .LC1350
+movl $154,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1352
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1352:
+.LC1350:
+movw $5,-12(%ebp)
+movb $2,-25(%ebp)
+movswl -12(%ebp),%edi
+movsbl -25(%ebp),%esi
+imull %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $10,%edi
+je .LC1354
+movl $155,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1356
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1356:
+.LC1354:
+movw $5,-12(%ebp)
+movw $2,-28(%ebp)
+movswl -12(%ebp),%edi
+movswl -28(%ebp),%esi
+imull %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $10,%edi
+je .LC1358
+movl $156,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1360
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1360:
+.LC1358:
+movw $5,-12(%ebp)
+movl $2,-32(%ebp)
+movswl -12(%ebp),%edi
+imull -32(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $10,%edi
+je .LC1362
+movl $157,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1364
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1364:
+.LC1362:
+movw $5,-12(%ebp)
+movl $2,-36(%ebp)
+movswl -12(%ebp),%edi
+imull -36(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $10,%edi
+je .LC1366
+movl $158,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1368
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1368:
+.LC1366:
+movw $5,-12(%ebp)
+movl $2,-40(%ebp)
+movswl -12(%ebp),%edi
+movl %edi,%eax
+mull -40(%ebp)
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $10,%edi
+je .LC1370
+movl $159,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1372
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1372:
+.LC1370:
+movw $5,-12(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movswl -12(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmuls -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $10,%edi
+je .LC1374
+movl $160,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1376
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1376:
+.LC1374:
+movw $5,-12(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movswl -12(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmull -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $10,%edi
+je .LC1378
+movl $161,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1380
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1380:
+.LC1378:
+movl $5,-16(%ebp)
+movb $2,-25(%ebp)
+movl -16(%ebp),%edi
+movsbl -25(%ebp),%esi
+imull %esi,%edi
+movl %edi,-16(%ebp)
+cmpl $10,-16(%ebp)
+je .LC1382
+movl $162,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1384
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1384:
+.LC1382:
+movl $5,-16(%ebp)
+movw $2,-28(%ebp)
+movl -16(%ebp),%edi
+movswl -28(%ebp),%esi
+imull %esi,%edi
+movl %edi,-16(%ebp)
+cmpl $10,-16(%ebp)
+je .LC1386
+movl $163,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1388
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1388:
+.LC1386:
+movl $5,-16(%ebp)
+movl $2,-32(%ebp)
+movl -16(%ebp),%edi
+imull -32(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $10,-16(%ebp)
+je .LC1390
+movl $164,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1392
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1392:
+.LC1390:
+movl $5,-16(%ebp)
+movl $2,-36(%ebp)
+movl -16(%ebp),%edi
+imull -36(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $10,-16(%ebp)
+je .LC1394
+movl $165,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1396
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1396:
+.LC1394:
+movl $5,-16(%ebp)
+movl $2,-40(%ebp)
+movl -16(%ebp),%edi
+movl %edi,%eax
+mull -40(%ebp)
+movl %eax,%edi
+movl %edi,-16(%ebp)
+cmpl $10,-16(%ebp)
+je .LC1398
+movl $166,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1400
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1400:
+.LC1398:
+movl $5,-16(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fildl -16(%ebp)
+fmuls -56(%ebp)
+fistpl -16(%ebp)
+cmpl $10,-16(%ebp)
+je .LC1402
+movl $167,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1404
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1404:
+.LC1402:
+movl $5,-16(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fildl -16(%ebp)
+fmull -64(%ebp)
+fistpl -16(%ebp)
+cmpl $10,-16(%ebp)
+je .LC1406
+movl $168,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1408
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1408:
+.LC1406:
+movl $5,-20(%ebp)
+movb $2,-25(%ebp)
+movl -20(%ebp),%edi
+movsbl -25(%ebp),%esi
+imull %esi,%edi
+movl %edi,-20(%ebp)
+cmpl $10,-20(%ebp)
+je .LC1410
+movl $169,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1412
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1412:
+.LC1410:
+movl $5,-20(%ebp)
+movw $2,-28(%ebp)
+movl -20(%ebp),%edi
+movswl -28(%ebp),%esi
+imull %esi,%edi
+movl %edi,-20(%ebp)
+cmpl $10,-20(%ebp)
+je .LC1414
+movl $170,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1416
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1416:
+.LC1414:
+movl $5,-20(%ebp)
+movl $2,-32(%ebp)
+movl -20(%ebp),%edi
+imull -32(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $10,-20(%ebp)
+je .LC1418
+movl $171,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1420
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1420:
+.LC1418:
+movl $5,-20(%ebp)
+movl $2,-36(%ebp)
+movl -20(%ebp),%edi
+imull -36(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $10,-20(%ebp)
+je .LC1422
+movl $172,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1424
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1424:
+.LC1422:
+movl $5,-20(%ebp)
+movl $2,-40(%ebp)
+movl -20(%ebp),%edi
+movl %edi,%eax
+mull -40(%ebp)
+movl %eax,%edi
+movl %edi,-20(%ebp)
+cmpl $10,-20(%ebp)
+je .LC1426
+movl $173,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1428
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1428:
+.LC1426:
+movl $5,-20(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fildl -20(%ebp)
+fmuls -56(%ebp)
+fistpl -20(%ebp)
+cmpl $10,-20(%ebp)
+je .LC1430
+movl $174,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1432
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1432:
+.LC1430:
+movl $5,-20(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fildl -20(%ebp)
+fmull -64(%ebp)
+fistpl -20(%ebp)
+cmpl $10,-20(%ebp)
+je .LC1434
+movl $175,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1436
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1436:
+.LC1434:
+movl $5,-24(%ebp)
+movb $2,-25(%ebp)
+movl -24(%ebp),%eax
+movsbl -25(%ebp),%edi
+mull %edi
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $10,%edi
+je .LC1438
+movl $176,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1440
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1440:
+.LC1438:
+movl $5,-24(%ebp)
+movw $2,-28(%ebp)
+movl -24(%ebp),%eax
+movswl -28(%ebp),%edi
+mull %edi
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $10,%edi
+je .LC1442
+movl $177,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1444
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1444:
+.LC1442:
+movl $5,-24(%ebp)
+movl $2,-32(%ebp)
+movl -24(%ebp),%eax
+movl -32(%ebp),%edi
+mull %edi
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $10,%edi
+je .LC1446
+movl $178,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1448
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1448:
+.LC1446:
+movl $5,-24(%ebp)
+movl $2,-36(%ebp)
+movl -24(%ebp),%eax
+movl -36(%ebp),%edi
+mull %edi
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $10,%edi
+je .LC1450
+movl $179,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1452
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1452:
+.LC1450:
+movl $5,-24(%ebp)
+movl $2,-40(%ebp)
+movl -24(%ebp),%eax
+mull -40(%ebp)
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $10,%edi
+je .LC1454
+movl $180,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1456
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1456:
+.LC1454:
+movl $5,-24(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movl -24(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+fmuls -56(%ebp)
+fstps -192(%ebp)
+flds .LC847
+fcomps -192(%ebp)
+fstsw %ax
+sahf
+ja .LC1459
+flds -192(%ebp)
+fsubs .LC847
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-188(%ebp)
+jmp .LC1460
+.LC1459:
+flds -192(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-188(%ebp)
+.LC1460:
+movl -188(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $10,%edi
+je .LC1461
+movl $181,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1463
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1463:
+.LC1461:
+movl $5,-24(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movl -24(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fmull -64(%ebp)
+fstpl -208(%ebp)
+fldl .LC855
+fcompl -208(%ebp)
+fstsw %ax
+sahf
+ja .LC1466
+fldl -208(%ebp)
+fsubl .LC855
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-200(%ebp)
+jmp .LC1467
+.LC1466:
+fldl -208(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-200(%ebp)
+.LC1467:
+movl -200(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $10,%edi
+je .LC1468
+movl $182,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1470
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1470:
+.LC1468:
+flds .LC860
+fstps -44(%ebp)
+movb $2,-25(%ebp)
+flds -44(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fstps -44(%ebp)
+flds .LC1474
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1472
+movl $183,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1475
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1475:
+.LC1472:
+flds .LC860
+fstps -44(%ebp)
+movw $2,-28(%ebp)
+flds -44(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fstps -44(%ebp)
+flds .LC1474
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1477
+movl $184,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1479
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1479:
+.LC1477:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-32(%ebp)
+flds -44(%ebp)
+fildl -32(%ebp)
+fmulp %st(1),%st
+fstps -44(%ebp)
+flds .LC1474
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1481
+movl $185,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1483
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1483:
+.LC1481:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-36(%ebp)
+flds -44(%ebp)
+fildl -36(%ebp)
+fmulp %st(1),%st
+fstps -44(%ebp)
+flds .LC1474
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1485
+movl $186,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1487
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1487:
+.LC1485:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+flds -44(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fstps -44(%ebp)
+flds .LC1474
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1489
+movl $187,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1491
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1491:
+.LC1489:
+flds .LC860
+fstps -44(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -44(%ebp)
+fmuls -56(%ebp)
+fstps -44(%ebp)
+flds .LC1474
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1493
+movl $188,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1495
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1495:
+.LC1493:
+flds .LC860
+fstps -44(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+flds -44(%ebp)
+fmull -64(%ebp)
+fstps -44(%ebp)
+flds .LC1474
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1497
+movl $189,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1499
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1499:
+.LC1497:
+fldl .LC889
+fstpl -52(%ebp)
+movb $2,-25(%ebp)
+fldl -52(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1503
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1501
+movl $190,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1504
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1504:
+.LC1501:
+fldl .LC889
+fstpl -52(%ebp)
+movw $2,-28(%ebp)
+fldl -52(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1503
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1506
+movl $191,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1508
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1508:
+.LC1506:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-32(%ebp)
+fldl -52(%ebp)
+fimull -32(%ebp)
+fstpl -52(%ebp)
+fldl .LC1503
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1510
+movl $192,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1512
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1512:
+.LC1510:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-36(%ebp)
+fldl -52(%ebp)
+fimull -36(%ebp)
+fstpl -52(%ebp)
+fldl .LC1503
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1514
+movl $193,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1516
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1516:
+.LC1514:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+fldl -52(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fmulp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1503
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1518
+movl $194,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1520
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1520:
+.LC1518:
+fldl .LC889
+fstpl -52(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fldl -52(%ebp)
+fmuls -56(%ebp)
+fstpl -52(%ebp)
+fldl .LC1503
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1522
+movl $195,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1524
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1524:
+.LC1522:
+fldl .LC889
+fstpl -52(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -52(%ebp)
+fmull -64(%ebp)
+fstpl -52(%ebp)
+fldl .LC1503
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1526
+movl $196,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1528
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1528:
+.LC1526:
+movb $5,-9(%ebp)
+movb $2,-25(%ebp)
+movsbl -9(%ebp),%eax
+movsbl -25(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC1530
+movl $197,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1532
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1532:
+.LC1530:
+movb $5,-9(%ebp)
+movw $2,-28(%ebp)
+movsbl -9(%ebp),%eax
+movswl -28(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC1534
+movl $198,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1536
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1536:
+.LC1534:
+movb $5,-9(%ebp)
+movl $2,-32(%ebp)
+movsbl -9(%ebp),%eax
+movl -32(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC1538
+movl $199,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1540
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1540:
+.LC1538:
+movb $5,-9(%ebp)
+movl $2,-36(%ebp)
+movsbl -9(%ebp),%eax
+movl -36(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC1542
+movl $200,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1544
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1544:
+.LC1542:
+movb $5,-9(%ebp)
+movl $2,-40(%ebp)
+movsbl -9(%ebp),%edi
+movl %edi,%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %eax,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC1546
+movl $201,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1548
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1548:
+.LC1546:
+movb $5,-9(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movsbl -9(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fdivs -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC1550
+movl $202,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1552
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1552:
+.LC1550:
+movb $5,-9(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movsbl -9(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fdivl -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $2,%edi
+je .LC1554
+movl $203,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1556
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1556:
+.LC1554:
+movw $5,-12(%ebp)
+movb $2,-25(%ebp)
+movswl -12(%ebp),%eax
+movsbl -25(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC1558
+movl $204,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1560
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1560:
+.LC1558:
+movw $5,-12(%ebp)
+movw $2,-28(%ebp)
+movswl -12(%ebp),%eax
+movswl -28(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC1562
+movl $205,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1564
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1564:
+.LC1562:
+movw $5,-12(%ebp)
+movl $2,-32(%ebp)
+movswl -12(%ebp),%eax
+movl -32(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC1566
+movl $206,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1568
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1568:
+.LC1566:
+movw $5,-12(%ebp)
+movl $2,-36(%ebp)
+movswl -12(%ebp),%eax
+movl -36(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC1570
+movl $207,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1572
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1572:
+.LC1570:
+movw $5,-12(%ebp)
+movl $2,-40(%ebp)
+movswl -12(%ebp),%edi
+movl %edi,%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC1574
+movl $208,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1576
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1576:
+.LC1574:
+movw $5,-12(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movswl -12(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fdivs -56(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC1578
+movl $209,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1580
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1580:
+.LC1578:
+movw $5,-12(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movswl -12(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fdivl -64(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $2,%edi
+je .LC1582
+movl $210,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1584
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1584:
+.LC1582:
+movl $5,-16(%ebp)
+movb $2,-25(%ebp)
+movl -16(%ebp),%eax
+movsbl -25(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC1586
+movl $211,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1588
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1588:
+.LC1586:
+movl $5,-16(%ebp)
+movw $2,-28(%ebp)
+movl -16(%ebp),%eax
+movswl -28(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC1590
+movl $212,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1592
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1592:
+.LC1590:
+movl $5,-16(%ebp)
+movl $2,-32(%ebp)
+movl -16(%ebp),%eax
+movl -32(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC1594
+movl $213,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1596
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1596:
+.LC1594:
+movl $5,-16(%ebp)
+movl $2,-36(%ebp)
+movl -16(%ebp),%eax
+movl -36(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC1598
+movl $214,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1600
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1600:
+.LC1598:
+movl $5,-16(%ebp)
+movl $2,-40(%ebp)
+movl -16(%ebp),%edi
+movl %edi,%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %eax,%edi
+movl %edi,-16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC1602
+movl $215,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1604
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1604:
+.LC1602:
+movl $5,-16(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fildl -16(%ebp)
+fdivs -56(%ebp)
+fistpl -16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC1606
+movl $216,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1608
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1608:
+.LC1606:
+movl $5,-16(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fidivrl -16(%ebp)
+fistpl -16(%ebp)
+cmpl $2,-16(%ebp)
+je .LC1610
+movl $217,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1612
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1612:
+.LC1610:
+movl $5,-20(%ebp)
+movb $2,-25(%ebp)
+movl -20(%ebp),%eax
+movsbl -25(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC1614
+movl $218,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1616
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1616:
+.LC1614:
+movl $5,-20(%ebp)
+movw $2,-28(%ebp)
+movl -20(%ebp),%eax
+movswl -28(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC1618
+movl $219,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1620
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1620:
+.LC1618:
+movl $5,-20(%ebp)
+movl $2,-32(%ebp)
+movl -20(%ebp),%eax
+movl -32(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC1622
+movl $220,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1624
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1624:
+.LC1622:
+movl $5,-20(%ebp)
+movl $2,-36(%ebp)
+movl -20(%ebp),%eax
+movl -36(%ebp),%ecx
+cdq
+idivl %ecx
+movl %eax,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC1626
+movl $221,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1628
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1628:
+.LC1626:
+movl $5,-20(%ebp)
+movl $2,-40(%ebp)
+movl -20(%ebp),%edi
+movl %edi,%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %eax,%edi
+movl %edi,-20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC1630
+movl $222,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1632
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1632:
+.LC1630:
+movl $5,-20(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fildl -20(%ebp)
+fdivs -56(%ebp)
+fistpl -20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC1634
+movl $223,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1636
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1636:
+.LC1634:
+movl $5,-20(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fidivrl -20(%ebp)
+fistpl -20(%ebp)
+cmpl $2,-20(%ebp)
+je .LC1638
+movl $224,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1640
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1640:
+.LC1638:
+movl $5,-24(%ebp)
+movb $2,-25(%ebp)
+movl -24(%ebp),%eax
+movsbl -25(%ebp),%edi
+movl %edi,%ecx
+xorl %edx,%edx
+divl %ecx
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC1642
+movl $225,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1644
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1644:
+.LC1642:
+movl $5,-24(%ebp)
+movw $2,-28(%ebp)
+movl -24(%ebp),%eax
+movswl -28(%ebp),%edi
+movl %edi,%ecx
+xorl %edx,%edx
+divl %ecx
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC1646
+movl $226,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1648
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1648:
+.LC1646:
+movl $5,-24(%ebp)
+movl $2,-32(%ebp)
+movl -24(%ebp),%eax
+movl -32(%ebp),%edi
+movl %edi,%ecx
+xorl %edx,%edx
+divl %ecx
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC1650
+movl $227,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1652
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1652:
+.LC1650:
+movl $5,-24(%ebp)
+movl $2,-36(%ebp)
+movl -24(%ebp),%eax
+movl -36(%ebp),%edi
+movl %edi,%ecx
+xorl %edx,%edx
+divl %ecx
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC1654
+movl $228,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1656
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1656:
+.LC1654:
+movl $5,-24(%ebp)
+movl $2,-40(%ebp)
+movl -24(%ebp),%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC1658
+movl $229,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1660
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1660:
+.LC1658:
+movl $5,-24(%ebp)
+flds .LC544
+fstps -56(%ebp)
+movl -24(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+fdivs -56(%ebp)
+fstps -224(%ebp)
+flds .LC847
+fcomps -224(%ebp)
+fstsw %ax
+sahf
+ja .LC1663
+flds -224(%ebp)
+fsubs .LC847
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-220(%ebp)
+jmp .LC1664
+.LC1663:
+flds -224(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-220(%ebp)
+.LC1664:
+movl -220(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC1665
+movl $230,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1667
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1667:
+.LC1665:
+movl $5,-24(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+movl -24(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fdivl -64(%ebp)
+fstpl -240(%ebp)
+fldl .LC855
+fcompl -240(%ebp)
+fstsw %ax
+sahf
+ja .LC1670
+fldl -240(%ebp)
+fsubl .LC855
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-232(%ebp)
+jmp .LC1671
+.LC1670:
+fldl -240(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-232(%ebp)
+.LC1671:
+movl -232(%ebp),%edi
+movl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $2,%edi
+je .LC1672
+movl $231,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1674
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1674:
+.LC1672:
+flds .LC860
+fstps -44(%ebp)
+movb $2,-25(%ebp)
+flds -44(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fdivp %st(1),%st
+fstps -44(%ebp)
+fldl .LC1678
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1676
+movl $232,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1679
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1679:
+.LC1676:
+flds .LC860
+fstps -44(%ebp)
+movw $2,-28(%ebp)
+flds -44(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fdivp %st(1),%st
+fstps -44(%ebp)
+fldl .LC1678
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1681
+movl $233,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1683
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1683:
+.LC1681:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-32(%ebp)
+flds -44(%ebp)
+fildl -32(%ebp)
+fdivp %st(1),%st
+fstps -44(%ebp)
+fldl .LC1678
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1685
+movl $234,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1687
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1687:
+.LC1685:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-36(%ebp)
+flds -44(%ebp)
+fildl -36(%ebp)
+fdivp %st(1),%st
+fstps -44(%ebp)
+fldl .LC1678
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1689
+movl $235,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1691
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1691:
+.LC1689:
+flds .LC860
+fstps -44(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+flds -44(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+fdivp %st(1),%st
+fstps -44(%ebp)
+fldl .LC1678
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1693
+movl $236,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1695
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1695:
+.LC1693:
+flds .LC860
+fstps -44(%ebp)
+flds .LC544
+fstps -56(%ebp)
+flds -44(%ebp)
+fdivs -56(%ebp)
+fstps -44(%ebp)
+fldl .LC1678
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1697
+movl $237,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1699
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1699:
+.LC1697:
+flds .LC860
+fstps -44(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+flds -44(%ebp)
+fdivl -64(%ebp)
+fstps -44(%ebp)
+fldl .LC1678
+fcomps -44(%ebp)
+fstsw %ax
+sahf
+je .LC1701
+movl $238,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1703
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1703:
+.LC1701:
+fldl .LC889
+fstpl -52(%ebp)
+movb $2,-25(%ebp)
+fldl -52(%ebp)
+movsbl -25(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fdivp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1678
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1705
+movl $239,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1707
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1707:
+.LC1705:
+fldl .LC889
+fstpl -52(%ebp)
+movw $2,-28(%ebp)
+fldl -52(%ebp)
+movswl -28(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fdivp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1678
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1709
+movl $240,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1711
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1711:
+.LC1709:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-32(%ebp)
+fldl -52(%ebp)
+fidivl -32(%ebp)
+fstpl -52(%ebp)
+fldl .LC1678
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1713
+movl $241,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1715
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1715:
+.LC1713:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-36(%ebp)
+fldl -52(%ebp)
+fidivl -36(%ebp)
+fstpl -52(%ebp)
+fldl .LC1678
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1717
+movl $242,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1719
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1719:
+.LC1717:
+fldl .LC889
+fstpl -52(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+fldl -52(%ebp)
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fdivp %st(1),%st
+fstpl -52(%ebp)
+fldl .LC1678
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1721
+movl $243,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1723
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1723:
+.LC1721:
+fldl .LC889
+fstpl -52(%ebp)
+flds .LC544
+fstps -56(%ebp)
+fldl -52(%ebp)
+fdivs -56(%ebp)
+fstpl -52(%ebp)
+fldl .LC1678
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1725
+movl $244,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1727
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1727:
+.LC1725:
+fldl .LC889
+fstpl -52(%ebp)
+fldl .LC425
+fstpl -64(%ebp)
+fldl -52(%ebp)
+fdivl -64(%ebp)
+fstpl -52(%ebp)
+fldl .LC1678
+fcompl -52(%ebp)
+fstsw %ax
+sahf
+je .LC1729
+movl $245,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1731
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1731:
+.LC1729:
+movb $5,-9(%ebp)
+movb $2,-25(%ebp)
+movsbl -9(%ebp),%eax
+movsbl -25(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1733
+movl $246,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1735
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1735:
+.LC1733:
+movb $5,-9(%ebp)
+movw $2,-28(%ebp)
+movsbl -9(%ebp),%eax
+movswl -28(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1737
+movl $247,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1739
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1739:
+.LC1737:
+movb $5,-9(%ebp)
+movl $2,-32(%ebp)
+movsbl -9(%ebp),%eax
+movl -32(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1741
+movl $248,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1743
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1743:
+.LC1741:
+movb $5,-9(%ebp)
+movl $2,-36(%ebp)
+movsbl -9(%ebp),%eax
+movl -36(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1745
+movl $249,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1747
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1747:
+.LC1745:
+movb $5,-9(%ebp)
+movl $2,-40(%ebp)
+movsbl -9(%ebp),%edi
+movl %edi,%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %edx,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1749
+movl $250,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1751
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1751:
+.LC1749:
+movw $5,-12(%ebp)
+movb $2,-25(%ebp)
+movswl -12(%ebp),%eax
+movsbl -25(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1753
+movl $251,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1755
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1755:
+.LC1753:
+movw $5,-12(%ebp)
+movw $2,-28(%ebp)
+movswl -12(%ebp),%eax
+movswl -28(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1757
+movl $252,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1759
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1759:
+.LC1757:
+movw $5,-12(%ebp)
+movl $2,-32(%ebp)
+movswl -12(%ebp),%eax
+movl -32(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1761
+movl $253,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1763
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1763:
+.LC1761:
+movw $5,-12(%ebp)
+movl $2,-36(%ebp)
+movswl -12(%ebp),%eax
+movl -36(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1765
+movl $254,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1767
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1767:
+.LC1765:
+movw $5,-12(%ebp)
+movl $2,-40(%ebp)
+movswl -12(%ebp),%edi
+movl %edi,%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %edx,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1769
+movl $255,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1771
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1771:
+.LC1769:
+movl $5,-16(%ebp)
+movb $2,-25(%ebp)
+movl -16(%ebp),%eax
+movsbl -25(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1773
+movl $256,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1775
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1775:
+.LC1773:
+movl $5,-16(%ebp)
+movw $2,-28(%ebp)
+movl -16(%ebp),%eax
+movswl -28(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1777
+movl $257,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1779
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1779:
+.LC1777:
+movl $5,-16(%ebp)
+movl $2,-32(%ebp)
+movl -16(%ebp),%eax
+movl -32(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1781
+movl $258,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1783
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1783:
+.LC1781:
+movl $5,-16(%ebp)
+movl $2,-36(%ebp)
+movl -16(%ebp),%eax
+movl -36(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1785
+movl $259,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1787
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1787:
+.LC1785:
+movl $5,-16(%ebp)
+movl $2,-40(%ebp)
+movl -16(%ebp),%edi
+movl %edi,%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %edx,%edi
+movl %edi,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1789
+movl $260,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1791
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1791:
+.LC1789:
+movl $5,-20(%ebp)
+movb $2,-25(%ebp)
+movl -20(%ebp),%eax
+movsbl -25(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1793
+movl $261,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1795
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1795:
+.LC1793:
+movl $5,-20(%ebp)
+movw $2,-28(%ebp)
+movl -20(%ebp),%eax
+movswl -28(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1797
+movl $262,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1799
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1799:
+.LC1797:
+movl $5,-20(%ebp)
+movl $2,-32(%ebp)
+movl -20(%ebp),%eax
+movl -32(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1801
+movl $263,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1803
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1803:
+.LC1801:
+movl $5,-20(%ebp)
+movl $2,-36(%ebp)
+movl -20(%ebp),%eax
+movl -36(%ebp),%ecx
+cdq
+idivl %ecx
+movl %edx,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1805
+movl $264,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1807
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1807:
+.LC1805:
+movl $5,-20(%ebp)
+movl $2,-40(%ebp)
+movl -20(%ebp),%edi
+movl %edi,%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %edx,%edi
+movl %edi,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1809
+movl $265,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1811
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1811:
+.LC1809:
+movl $5,-24(%ebp)
+movb $2,-25(%ebp)
+movl -24(%ebp),%eax
+movsbl -25(%ebp),%edi
+movl %edi,%ecx
+xorl %edx,%edx
+divl %ecx
+movl %edx,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1813
+movl $266,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1815
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1815:
+.LC1813:
+movl $5,-24(%ebp)
+movw $2,-28(%ebp)
+movl -24(%ebp),%eax
+movswl -28(%ebp),%edi
+movl %edi,%ecx
+xorl %edx,%edx
+divl %ecx
+movl %edx,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1817
+movl $267,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1819
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1819:
+.LC1817:
+movl $5,-24(%ebp)
+movl $2,-32(%ebp)
+movl -24(%ebp),%eax
+movl -32(%ebp),%edi
+movl %edi,%ecx
+xorl %edx,%edx
+divl %ecx
+movl %edx,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1821
+movl $268,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1823
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1823:
+.LC1821:
+movl $5,-24(%ebp)
+movl $2,-36(%ebp)
+movl -24(%ebp),%eax
+movl -36(%ebp),%edi
+movl %edi,%ecx
+xorl %edx,%edx
+divl %ecx
+movl %edx,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1825
+movl $269,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1827
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1827:
+.LC1825:
+movl $5,-24(%ebp)
+movl $2,-40(%ebp)
+movl -24(%ebp),%eax
+movl -40(%ebp),%ecx
+xorl %edx,%edx
+divl %ecx
+movl %edx,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1829
+movl $270,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1831
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1831:
+.LC1829:
+movb $5,-9(%ebp)
+movb $2,-25(%ebp)
+movsbl -9(%ebp),%edi
+movsbl -25(%ebp),%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1833
+movl $271,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1835
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1835:
+.LC1833:
+movb $5,-9(%ebp)
+movw $2,-28(%ebp)
+movsbl -9(%ebp),%edi
+movswl -28(%ebp),%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1837
+movl $272,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1839
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1839:
+.LC1837:
+movb $5,-9(%ebp)
+movl $2,-32(%ebp)
+movsbl -9(%ebp),%edi
+movl -32(%ebp),%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1841
+movl $273,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1843
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1843:
+.LC1841:
+movb $5,-9(%ebp)
+movl $2,-36(%ebp)
+movsbl -9(%ebp),%edi
+movl -36(%ebp),%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1845
+movl $274,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1847
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1847:
+.LC1845:
+movb $5,-9(%ebp)
+movl $2,-40(%ebp)
+movsbl -9(%ebp),%edi
+movl -40(%ebp),%esi
+movl %esi,%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $1,%edi
+je .LC1849
+movl $275,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1851
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1851:
+.LC1849:
+movw $5,-12(%ebp)
+movb $2,-25(%ebp)
+movswl -12(%ebp),%edi
+movsbl -25(%ebp),%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1853
+movl $276,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1855
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1855:
+.LC1853:
+movw $5,-12(%ebp)
+movw $2,-28(%ebp)
+movswl -12(%ebp),%edi
+movswl -28(%ebp),%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1857
+movl $277,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1859
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1859:
+.LC1857:
+movw $5,-12(%ebp)
+movl $2,-32(%ebp)
+movswl -12(%ebp),%edi
+movl -32(%ebp),%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1861
+movl $278,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1863
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1863:
+.LC1861:
+movw $5,-12(%ebp)
+movl $2,-36(%ebp)
+movswl -12(%ebp),%edi
+movl -36(%ebp),%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1865
+movl $279,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1867
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1867:
+.LC1865:
+movw $5,-12(%ebp)
+movl $2,-40(%ebp)
+movswl -12(%ebp),%edi
+movl -40(%ebp),%esi
+movl %esi,%ecx
+movl %edi,%eax
+sarl %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $1,%edi
+je .LC1869
+movl $280,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1871
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1871:
+.LC1869:
+movl $5,-16(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%ecx
+sarl %cl,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1873
+movl $281,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1875
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1875:
+.LC1873:
+movl $5,-16(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%ecx
+sarl %cl,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1877
+movl $282,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1879
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1879:
+.LC1877:
+movl $5,-16(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%ecx
+sarl %cl,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1881
+movl $283,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1883
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1883:
+.LC1881:
+movl $5,-16(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%ecx
+sarl %cl,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1885
+movl $284,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1887
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1887:
+.LC1885:
+movl $5,-16(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+movl %edi,%ecx
+sarl %cl,-16(%ebp)
+cmpl $1,-16(%ebp)
+je .LC1889
+movl $285,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1891
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1891:
+.LC1889:
+movl $5,-20(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%ecx
+sarl %cl,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1893
+movl $286,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1895
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1895:
+.LC1893:
+movl $5,-20(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%ecx
+sarl %cl,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1897
+movl $287,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1899
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1899:
+.LC1897:
+movl $5,-20(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%ecx
+sarl %cl,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1901
+movl $288,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1903
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1903:
+.LC1901:
+movl $5,-20(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%ecx
+sarl %cl,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1905
+movl $289,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1907
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1907:
+.LC1905:
+movl $5,-20(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+movl %edi,%ecx
+sarl %cl,-20(%ebp)
+cmpl $1,-20(%ebp)
+je .LC1909
+movl $290,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1911
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1911:
+.LC1909:
+movl $5,-24(%ebp)
+movb $2,-25(%ebp)
+movl -24(%ebp),%edi
+movsbl -25(%ebp),%ecx
+movl %edi,%eax
+shrl %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1913
+movl $291,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1915
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1915:
+.LC1913:
+movl $5,-24(%ebp)
+movw $2,-28(%ebp)
+movl -24(%ebp),%edi
+movswl -28(%ebp),%ecx
+movl %edi,%eax
+shrl %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1917
+movl $292,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1919
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1919:
+.LC1917:
+movl $5,-24(%ebp)
+movl $2,-32(%ebp)
+movl -24(%ebp),%edi
+movl -32(%ebp),%ecx
+movl %edi,%eax
+shrl %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1921
+movl $293,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1923
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1923:
+.LC1921:
+movl $5,-24(%ebp)
+movl $2,-36(%ebp)
+movl -24(%ebp),%edi
+movl -36(%ebp),%ecx
+movl %edi,%eax
+shrl %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1925
+movl $294,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1927
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1927:
+.LC1925:
+movl $5,-24(%ebp)
+movl $2,-40(%ebp)
+movl -24(%ebp),%edi
+movl -40(%ebp),%esi
+movl %esi,%ecx
+movl %edi,%eax
+shrl %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $1,%edi
+je .LC1929
+movl $295,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1931
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1931:
+.LC1929:
+movb $5,-9(%ebp)
+movb $2,-25(%ebp)
+movsbl -9(%ebp),%edi
+movsbl -25(%ebp),%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $20,%edi
+je .LC1933
+movl $296,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1935
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1935:
+.LC1933:
+movb $5,-9(%ebp)
+movw $2,-28(%ebp)
+movsbl -9(%ebp),%edi
+movswl -28(%ebp),%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $20,%edi
+je .LC1937
+movl $297,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1939
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1939:
+.LC1937:
+movb $5,-9(%ebp)
+movl $2,-32(%ebp)
+movsbl -9(%ebp),%edi
+movl -32(%ebp),%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $20,%edi
+je .LC1941
+movl $298,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1943
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1943:
+.LC1941:
+movb $5,-9(%ebp)
+movl $2,-36(%ebp)
+movsbl -9(%ebp),%edi
+movl -36(%ebp),%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $20,%edi
+je .LC1945
+movl $299,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1947
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1947:
+.LC1945:
+movb $5,-9(%ebp)
+movl $2,-40(%ebp)
+movsbl -9(%ebp),%edi
+movl -40(%ebp),%esi
+movl %esi,%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $20,%edi
+je .LC1949
+movl $300,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1951
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1951:
+.LC1949:
+movw $5,-12(%ebp)
+movb $2,-25(%ebp)
+movswl -12(%ebp),%edi
+movsbl -25(%ebp),%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $20,%edi
+je .LC1953
+movl $301,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1955
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1955:
+.LC1953:
+movw $5,-12(%ebp)
+movw $2,-28(%ebp)
+movswl -12(%ebp),%edi
+movswl -28(%ebp),%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $20,%edi
+je .LC1957
+movl $302,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1959
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1959:
+.LC1957:
+movw $5,-12(%ebp)
+movl $2,-32(%ebp)
+movswl -12(%ebp),%edi
+movl -32(%ebp),%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $20,%edi
+je .LC1961
+movl $303,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1963
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1963:
+.LC1961:
+movw $5,-12(%ebp)
+movl $2,-36(%ebp)
+movswl -12(%ebp),%edi
+movl -36(%ebp),%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $20,%edi
+je .LC1965
+movl $304,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1967
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1967:
+.LC1965:
+movw $5,-12(%ebp)
+movl $2,-40(%ebp)
+movswl -12(%ebp),%edi
+movl -40(%ebp),%esi
+movl %esi,%ecx
+movl %edi,%eax
+sall %cl,%eax
+movl %eax,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $20,%edi
+je .LC1969
+movl $305,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1971
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1971:
+.LC1969:
+movl $5,-16(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%ecx
+sall %cl,-16(%ebp)
+cmpl $20,-16(%ebp)
+je .LC1973
+movl $306,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1975
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1975:
+.LC1973:
+movl $5,-16(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%ecx
+sall %cl,-16(%ebp)
+cmpl $20,-16(%ebp)
+je .LC1977
+movl $307,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1979
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1979:
+.LC1977:
+movl $5,-16(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%ecx
+sall %cl,-16(%ebp)
+cmpl $20,-16(%ebp)
+je .LC1981
+movl $308,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1983
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1983:
+.LC1981:
+movl $5,-16(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%ecx
+sall %cl,-16(%ebp)
+cmpl $20,-16(%ebp)
+je .LC1985
+movl $309,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1987
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1987:
+.LC1985:
+movl $5,-16(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+movl %edi,%ecx
+sall %cl,-16(%ebp)
+cmpl $20,-16(%ebp)
+je .LC1989
+movl $310,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1991
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1991:
+.LC1989:
+movl $5,-20(%ebp)
+movb $2,-25(%ebp)
+movsbl -25(%ebp),%ecx
+sall %cl,-20(%ebp)
+cmpl $20,-20(%ebp)
+je .LC1993
+movl $311,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1995
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1995:
+.LC1993:
+movl $5,-20(%ebp)
+movw $2,-28(%ebp)
+movswl -28(%ebp),%ecx
+sall %cl,-20(%ebp)
+cmpl $20,-20(%ebp)
+je .LC1997
+movl $312,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC1999
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC1999:
+.LC1997:
+movl $5,-20(%ebp)
+movl $2,-32(%ebp)
+movl -32(%ebp),%ecx
+sall %cl,-20(%ebp)
+cmpl $20,-20(%ebp)
+je .LC2001
+movl $313,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2003
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2003:
+.LC2001:
+movl $5,-20(%ebp)
+movl $2,-36(%ebp)
+movl -36(%ebp),%ecx
+sall %cl,-20(%ebp)
+cmpl $20,-20(%ebp)
+je .LC2005
+movl $314,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2007
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2007:
+.LC2005:
+movl $5,-20(%ebp)
+movl $2,-40(%ebp)
+movl -40(%ebp),%edi
+movl %edi,%ecx
+sall %cl,-20(%ebp)
+cmpl $20,-20(%ebp)
+je .LC2009
+movl $315,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2011
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2011:
+.LC2009:
+movl $5,-24(%ebp)
+movb $2,-25(%ebp)
+movl -24(%ebp),%edi
+movsbl -25(%ebp),%ecx
+movl %edi,%eax
+shll %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $20,%edi
+je .LC2013
+movl $316,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2015
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2015:
+.LC2013:
+movl $5,-24(%ebp)
+movw $2,-28(%ebp)
+movl -24(%ebp),%edi
+movswl -28(%ebp),%ecx
+movl %edi,%eax
+shll %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $20,%edi
+je .LC2017
+movl $317,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2019
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2019:
+.LC2017:
+movl $5,-24(%ebp)
+movl $2,-32(%ebp)
+movl -24(%ebp),%edi
+movl -32(%ebp),%ecx
+movl %edi,%eax
+shll %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $20,%edi
+je .LC2021
+movl $318,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2023
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2023:
+.LC2021:
+movl $5,-24(%ebp)
+movl $2,-36(%ebp)
+movl -24(%ebp),%edi
+movl -36(%ebp),%ecx
+movl %edi,%eax
+shll %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $20,%edi
+je .LC2025
+movl $319,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2027
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2027:
+.LC2025:
+movl $5,-24(%ebp)
+movl $2,-40(%ebp)
+movl -24(%ebp),%edi
+movl -40(%ebp),%esi
+movl %esi,%ecx
+movl %edi,%eax
+shll %cl,%eax
+movl %eax,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $20,%edi
+je .LC2029
+movl $320,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2031
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2031:
+.LC2029:
+movb $12,-9(%ebp)
+movb $10,-25(%ebp)
+movsbl -9(%ebp),%edi
+movsbl -25(%ebp),%esi
+andl %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $8,%edi
+je .LC2033
+movl $321,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2035
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2035:
+.LC2033:
+movb $12,-9(%ebp)
+movw $10,-28(%ebp)
+movsbl -9(%ebp),%edi
+movswl -28(%ebp),%esi
+andl %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $8,%edi
+je .LC2037
+movl $322,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2039
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2039:
+.LC2037:
+movb $12,-9(%ebp)
+movl $10,-32(%ebp)
+movsbl -9(%ebp),%edi
+andl -32(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $8,%edi
+je .LC2041
+movl $323,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2043
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2043:
+.LC2041:
+movb $12,-9(%ebp)
+movl $10,-36(%ebp)
+movsbl -9(%ebp),%edi
+andl -36(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $8,%edi
+je .LC2045
+movl $324,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2047
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2047:
+.LC2045:
+movb $12,-9(%ebp)
+movl $10,-40(%ebp)
+movsbl -9(%ebp),%edi
+andl -40(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $8,%edi
+je .LC2049
+movl $325,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2051
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2051:
+.LC2049:
+movw $12,-12(%ebp)
+movb $10,-25(%ebp)
+movswl -12(%ebp),%edi
+movsbl -25(%ebp),%esi
+andl %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $8,%edi
+je .LC2053
+movl $326,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2055
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2055:
+.LC2053:
+movw $12,-12(%ebp)
+movw $10,-28(%ebp)
+movswl -12(%ebp),%edi
+movswl -28(%ebp),%esi
+andl %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $8,%edi
+je .LC2057
+movl $327,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2059
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2059:
+.LC2057:
+movw $12,-12(%ebp)
+movl $10,-32(%ebp)
+movswl -12(%ebp),%edi
+andl -32(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $8,%edi
+je .LC2061
+movl $328,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2063
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2063:
+.LC2061:
+movw $12,-12(%ebp)
+movl $10,-36(%ebp)
+movswl -12(%ebp),%edi
+andl -36(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $8,%edi
+je .LC2065
+movl $329,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2067
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2067:
+.LC2065:
+movw $12,-12(%ebp)
+movl $10,-40(%ebp)
+movswl -12(%ebp),%edi
+andl -40(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $8,%edi
+je .LC2069
+movl $330,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2071
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2071:
+.LC2069:
+movl $12,-16(%ebp)
+movb $10,-25(%ebp)
+movsbl -25(%ebp),%edi
+andl %edi,-16(%ebp)
+cmpl $8,-16(%ebp)
+je .LC2073
+movl $331,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2075
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2075:
+.LC2073:
+movl $12,-16(%ebp)
+movw $10,-28(%ebp)
+movswl -28(%ebp),%edi
+andl %edi,-16(%ebp)
+cmpl $8,-16(%ebp)
+je .LC2077
+movl $332,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2079
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2079:
+.LC2077:
+movl $12,-16(%ebp)
+movl $10,-32(%ebp)
+movl -32(%ebp),%edi
+andl %edi,-16(%ebp)
+cmpl $8,-16(%ebp)
+je .LC2081
+movl $333,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2083
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2083:
+.LC2081:
+movl $12,-16(%ebp)
+movl $10,-36(%ebp)
+movl -36(%ebp),%edi
+andl %edi,-16(%ebp)
+cmpl $8,-16(%ebp)
+je .LC2085
+movl $334,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2087
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2087:
+.LC2085:
+movl $12,-16(%ebp)
+movl $10,-40(%ebp)
+movl -16(%ebp),%edi
+andl -40(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $8,-16(%ebp)
+je .LC2089
+movl $335,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2091
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2091:
+.LC2089:
+movl $12,-20(%ebp)
+movb $10,-25(%ebp)
+movsbl -25(%ebp),%edi
+andl %edi,-20(%ebp)
+cmpl $8,-20(%ebp)
+je .LC2093
+movl $336,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2095
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2095:
+.LC2093:
+movl $12,-20(%ebp)
+movw $10,-28(%ebp)
+movswl -28(%ebp),%edi
+andl %edi,-20(%ebp)
+cmpl $8,-20(%ebp)
+je .LC2097
+movl $337,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2099
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2099:
+.LC2097:
+movl $12,-20(%ebp)
+movl $10,-32(%ebp)
+movl -32(%ebp),%edi
+andl %edi,-20(%ebp)
+cmpl $8,-20(%ebp)
+je .LC2101
+movl $338,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2103
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2103:
+.LC2101:
+movl $12,-20(%ebp)
+movl $10,-36(%ebp)
+movl -36(%ebp),%edi
+andl %edi,-20(%ebp)
+cmpl $8,-20(%ebp)
+je .LC2105
+movl $339,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2107
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2107:
+.LC2105:
+movl $12,-20(%ebp)
+movl $10,-40(%ebp)
+movl -20(%ebp),%edi
+andl -40(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $8,-20(%ebp)
+je .LC2109
+movl $340,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2111
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2111:
+.LC2109:
+movl $12,-24(%ebp)
+movb $10,-25(%ebp)
+movsbl -25(%ebp),%edi
+andl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $8,%edi
+je .LC2113
+movl $341,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2115
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2115:
+.LC2113:
+movl $12,-24(%ebp)
+movw $10,-28(%ebp)
+movswl -28(%ebp),%edi
+andl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $8,%edi
+je .LC2117
+movl $342,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2119
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2119:
+.LC2117:
+movl $12,-24(%ebp)
+movl $10,-32(%ebp)
+movl -32(%ebp),%edi
+andl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $8,%edi
+je .LC2121
+movl $343,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2123
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2123:
+.LC2121:
+movl $12,-24(%ebp)
+movl $10,-36(%ebp)
+movl -36(%ebp),%edi
+andl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $8,%edi
+je .LC2125
+movl $344,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2127
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2127:
+.LC2125:
+movl $12,-24(%ebp)
+movl $10,-40(%ebp)
+movl -40(%ebp),%edi
+andl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $8,%edi
+je .LC2129
+movl $345,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2131
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2131:
+.LC2129:
+movb $12,-9(%ebp)
+movb $10,-25(%ebp)
+movsbl -9(%ebp),%edi
+movsbl -25(%ebp),%esi
+xorl %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $6,%edi
+je .LC2133
+movl $346,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2135
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2135:
+.LC2133:
+movb $12,-9(%ebp)
+movw $10,-28(%ebp)
+movsbl -9(%ebp),%edi
+movswl -28(%ebp),%esi
+xorl %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $6,%edi
+je .LC2137
+movl $347,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2139
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2139:
+.LC2137:
+movb $12,-9(%ebp)
+movl $10,-32(%ebp)
+movsbl -9(%ebp),%edi
+xorl -32(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $6,%edi
+je .LC2141
+movl $348,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2143
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2143:
+.LC2141:
+movb $12,-9(%ebp)
+movl $10,-36(%ebp)
+movsbl -9(%ebp),%edi
+xorl -36(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $6,%edi
+je .LC2145
+movl $349,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2147
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2147:
+.LC2145:
+movb $12,-9(%ebp)
+movl $10,-40(%ebp)
+movsbl -9(%ebp),%edi
+xorl -40(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $6,%edi
+je .LC2149
+movl $350,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2151
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2151:
+.LC2149:
+movw $12,-12(%ebp)
+movb $10,-25(%ebp)
+movswl -12(%ebp),%edi
+movsbl -25(%ebp),%esi
+xorl %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $6,%edi
+je .LC2153
+movl $351,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2155
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2155:
+.LC2153:
+movw $12,-12(%ebp)
+movw $10,-28(%ebp)
+movswl -12(%ebp),%edi
+movswl -28(%ebp),%esi
+xorl %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $6,%edi
+je .LC2157
+movl $352,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2159
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2159:
+.LC2157:
+movw $12,-12(%ebp)
+movl $10,-32(%ebp)
+movswl -12(%ebp),%edi
+xorl -32(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $6,%edi
+je .LC2161
+movl $353,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2163
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2163:
+.LC2161:
+movw $12,-12(%ebp)
+movl $10,-36(%ebp)
+movswl -12(%ebp),%edi
+xorl -36(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $6,%edi
+je .LC2165
+movl $354,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2167
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2167:
+.LC2165:
+movw $12,-12(%ebp)
+movl $10,-40(%ebp)
+movswl -12(%ebp),%edi
+xorl -40(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $6,%edi
+je .LC2169
+movl $355,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2171
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2171:
+.LC2169:
+movl $12,-16(%ebp)
+movb $10,-25(%ebp)
+movsbl -25(%ebp),%edi
+xorl %edi,-16(%ebp)
+cmpl $6,-16(%ebp)
+je .LC2173
+movl $356,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2175
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2175:
+.LC2173:
+movl $12,-16(%ebp)
+movw $10,-28(%ebp)
+movswl -28(%ebp),%edi
+xorl %edi,-16(%ebp)
+cmpl $6,-16(%ebp)
+je .LC2177
+movl $357,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2179
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2179:
+.LC2177:
+movl $12,-16(%ebp)
+movl $10,-32(%ebp)
+movl -32(%ebp),%edi
+xorl %edi,-16(%ebp)
+cmpl $6,-16(%ebp)
+je .LC2181
+movl $358,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2183
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2183:
+.LC2181:
+movl $12,-16(%ebp)
+movl $10,-36(%ebp)
+movl -36(%ebp),%edi
+xorl %edi,-16(%ebp)
+cmpl $6,-16(%ebp)
+je .LC2185
+movl $359,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2187
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2187:
+.LC2185:
+movl $12,-16(%ebp)
+movl $10,-40(%ebp)
+movl -16(%ebp),%edi
+xorl -40(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $6,-16(%ebp)
+je .LC2189
+movl $360,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2191
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2191:
+.LC2189:
+movl $12,-20(%ebp)
+movb $10,-25(%ebp)
+movsbl -25(%ebp),%edi
+xorl %edi,-20(%ebp)
+cmpl $6,-20(%ebp)
+je .LC2193
+movl $361,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2195
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2195:
+.LC2193:
+movl $12,-20(%ebp)
+movw $10,-28(%ebp)
+movswl -28(%ebp),%edi
+xorl %edi,-20(%ebp)
+cmpl $6,-20(%ebp)
+je .LC2197
+movl $362,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2199
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2199:
+.LC2197:
+movl $12,-20(%ebp)
+movl $10,-32(%ebp)
+movl -32(%ebp),%edi
+xorl %edi,-20(%ebp)
+cmpl $6,-20(%ebp)
+je .LC2201
+movl $363,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2203
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2203:
+.LC2201:
+movl $12,-20(%ebp)
+movl $10,-36(%ebp)
+movl -36(%ebp),%edi
+xorl %edi,-20(%ebp)
+cmpl $6,-20(%ebp)
+je .LC2205
+movl $364,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2207
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2207:
+.LC2205:
+movl $12,-20(%ebp)
+movl $10,-40(%ebp)
+movl -20(%ebp),%edi
+xorl -40(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $6,-20(%ebp)
+je .LC2209
+movl $365,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2211
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2211:
+.LC2209:
+movl $12,-24(%ebp)
+movb $10,-25(%ebp)
+movsbl -25(%ebp),%edi
+xorl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $6,%edi
+je .LC2213
+movl $366,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2215
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2215:
+.LC2213:
+movl $12,-24(%ebp)
+movw $10,-28(%ebp)
+movswl -28(%ebp),%edi
+xorl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $6,%edi
+je .LC2217
+movl $367,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2219
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2219:
+.LC2217:
+movl $12,-24(%ebp)
+movl $10,-32(%ebp)
+movl -32(%ebp),%edi
+xorl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $6,%edi
+je .LC2221
+movl $368,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2223
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2223:
+.LC2221:
+movl $12,-24(%ebp)
+movl $10,-36(%ebp)
+movl -36(%ebp),%edi
+xorl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $6,%edi
+je .LC2225
+movl $369,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2227
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2227:
+.LC2225:
+movl $12,-24(%ebp)
+movl $10,-40(%ebp)
+movl -40(%ebp),%edi
+xorl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $6,%edi
+je .LC2229
+movl $370,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2231
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2231:
+.LC2229:
+movb $12,-9(%ebp)
+movb $10,-25(%ebp)
+movsbl -9(%ebp),%edi
+movsbl -25(%ebp),%esi
+orl %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $14,%edi
+je .LC2233
+movl $371,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2235
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2235:
+.LC2233:
+movb $12,-9(%ebp)
+movw $10,-28(%ebp)
+movsbl -9(%ebp),%edi
+movswl -28(%ebp),%esi
+orl %esi,%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $14,%edi
+je .LC2237
+movl $372,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2239
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2239:
+.LC2237:
+movb $12,-9(%ebp)
+movl $10,-32(%ebp)
+movsbl -9(%ebp),%edi
+orl -32(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $14,%edi
+je .LC2241
+movl $373,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2243
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2243:
+.LC2241:
+movb $12,-9(%ebp)
+movl $10,-36(%ebp)
+movsbl -9(%ebp),%edi
+orl -36(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $14,%edi
+je .LC2245
+movl $374,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2247
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2247:
+.LC2245:
+movb $12,-9(%ebp)
+movl $10,-40(%ebp)
+movsbl -9(%ebp),%edi
+orl -40(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-9(%ebp)
+movsbl -9(%ebp),%edi
+cmpl $14,%edi
+je .LC2249
+movl $375,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2251
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2251:
+.LC2249:
+movw $12,-12(%ebp)
+movb $10,-25(%ebp)
+movswl -12(%ebp),%edi
+movsbl -25(%ebp),%esi
+orl %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $14,%edi
+je .LC2253
+movl $376,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2255
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2255:
+.LC2253:
+movw $12,-12(%ebp)
+movw $10,-28(%ebp)
+movswl -12(%ebp),%edi
+movswl -28(%ebp),%esi
+orl %esi,%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $14,%edi
+je .LC2257
+movl $377,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2259
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2259:
+.LC2257:
+movw $12,-12(%ebp)
+movl $10,-32(%ebp)
+movswl -12(%ebp),%edi
+orl -32(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $14,%edi
+je .LC2261
+movl $378,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2263
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2263:
+.LC2261:
+movw $12,-12(%ebp)
+movl $10,-36(%ebp)
+movswl -12(%ebp),%edi
+orl -36(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $14,%edi
+je .LC2265
+movl $379,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2267
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2267:
+.LC2265:
+movw $12,-12(%ebp)
+movl $10,-40(%ebp)
+movswl -12(%ebp),%edi
+orl -40(%ebp),%edi
+movw %di,-12(%ebp)
+movswl -12(%ebp),%edi
+cmpl $14,%edi
+je .LC2269
+movl $380,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2271
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2271:
+.LC2269:
+movl $12,-16(%ebp)
+movb $10,-25(%ebp)
+movsbl -25(%ebp),%edi
+orl %edi,-16(%ebp)
+cmpl $14,-16(%ebp)
+je .LC2273
+movl $381,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2275
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2275:
+.LC2273:
+movl $12,-16(%ebp)
+movw $10,-28(%ebp)
+movswl -28(%ebp),%edi
+orl %edi,-16(%ebp)
+cmpl $14,-16(%ebp)
+je .LC2277
+movl $382,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2279
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2279:
+.LC2277:
+movl $12,-16(%ebp)
+movl $10,-32(%ebp)
+movl -32(%ebp),%edi
+orl %edi,-16(%ebp)
+cmpl $14,-16(%ebp)
+je .LC2281
+movl $383,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2283
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2283:
+.LC2281:
+movl $12,-16(%ebp)
+movl $10,-36(%ebp)
+movl -36(%ebp),%edi
+orl %edi,-16(%ebp)
+cmpl $14,-16(%ebp)
+je .LC2285
+movl $384,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2287
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2287:
+.LC2285:
+movl $12,-16(%ebp)
+movl $10,-40(%ebp)
+movl -16(%ebp),%edi
+orl -40(%ebp),%edi
+movl %edi,-16(%ebp)
+cmpl $14,-16(%ebp)
+je .LC2289
+movl $385,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2291
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2291:
+.LC2289:
+movl $12,-20(%ebp)
+movb $10,-25(%ebp)
+movsbl -25(%ebp),%edi
+orl %edi,-20(%ebp)
+cmpl $14,-20(%ebp)
+je .LC2293
+movl $386,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2295
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2295:
+.LC2293:
+movl $12,-20(%ebp)
+movw $10,-28(%ebp)
+movswl -28(%ebp),%edi
+orl %edi,-20(%ebp)
+cmpl $14,-20(%ebp)
+je .LC2297
+movl $387,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2299
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2299:
+.LC2297:
+movl $12,-20(%ebp)
+movl $10,-32(%ebp)
+movl -32(%ebp),%edi
+orl %edi,-20(%ebp)
+cmpl $14,-20(%ebp)
+je .LC2301
+movl $388,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2303
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2303:
+.LC2301:
+movl $12,-20(%ebp)
+movl $10,-36(%ebp)
+movl -36(%ebp),%edi
+orl %edi,-20(%ebp)
+cmpl $14,-20(%ebp)
+je .LC2305
+movl $389,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2307
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2307:
+.LC2305:
+movl $12,-20(%ebp)
+movl $10,-40(%ebp)
+movl -20(%ebp),%edi
+orl -40(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $14,-20(%ebp)
+je .LC2309
+movl $390,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2311
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2311:
+.LC2309:
+movl $12,-24(%ebp)
+movb $10,-25(%ebp)
+movsbl -25(%ebp),%edi
+orl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $14,%edi
+je .LC2313
+movl $391,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2315
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2315:
+.LC2313:
+movl $12,-24(%ebp)
+movw $10,-28(%ebp)
+movswl -28(%ebp),%edi
+orl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $14,%edi
+je .LC2317
+movl $392,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2319
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2319:
+.LC2317:
+movl $12,-24(%ebp)
+movl $10,-32(%ebp)
+movl -32(%ebp),%edi
+orl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $14,%edi
+je .LC2321
+movl $393,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2323
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2323:
+.LC2321:
+movl $12,-24(%ebp)
+movl $10,-36(%ebp)
+movl -36(%ebp),%edi
+orl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $14,%edi
+je .LC2325
+movl $394,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2327
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2327:
+.LC2325:
+movl $12,-24(%ebp)
+movl $10,-40(%ebp)
+movl -40(%ebp),%edi
+orl %edi,-24(%ebp)
+movl -24(%ebp),%edi
+cmpl $14,%edi
+je .LC2329
+movl $395,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2331
+pushl -8(%ebp)
+pushl $f.706
+call printf
+addl $8,%esp
+.LC2331:
+.LC2329:
+cmpl $0,-8(%ebp)
+je .LC2333
+movl $1,-76(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2335
+pushl $1
+pushl $s714er.707
+call printf
+addl $8,%esp
+.LC2335:
+.LC2333:
+movl -76(%ebp),%eax
+.LC705:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf2337:
+.size s714,.Lf2337-s714
+.data
+.align 1
+.type s715er.2339,@object
+s715er.2339:
+.byte 115
+.byte 55
+.byte 49
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s715er.2339,11
+.align 1
+.type qs715.2340,@object
+.size qs715.2340,8
+qs715.2340:
+.byte 115
+.byte 55
+.byte 49
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s715
+.text
+.align 16
+.type s715,@function
+s715:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $28,%esp
+movl $0,-28(%ebp)
+movl $0,-20(%ebp)
+leal qs715.2340,%edi
+movl %edi,-4(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-8(%ebp)
+movl $0,-16(%ebp)
+.LC2341:
+.LC2342:
+movl -8(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-8(%ebp)
+movl -4(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-4(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC2341
+movl $1,-12(%ebp)
+incl -12(%ebp)
+incl -12(%ebp)
+incl -12(%ebp)
+incl -12(%ebp)
+movl -12(%ebp),%edi
+leal 1(%edi),%edi
+movl %edi,-12(%ebp)
+cmpl $6,%edi
+je .LC2344
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2346
+pushl $1
+pushl $s715er.2339
+call printf
+addl $8,%esp
+.LC2346:
+incl -16(%ebp)
+.LC2344:
+pushl -28(%ebp)
+movl $3,-24(%ebp)
+movl -24(%ebp),%edi
+leal 2(%edi),%edi
+pushl %edi
+pushl -20(%ebp)
+call s715f
+addl $12,%esp
+cmpl $5,%eax
+je .LC2348
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2350
+pushl $2
+pushl $s715er.2339
+call printf
+addl $8,%esp
+.LC2350:
+addl $2,-16(%ebp)
+.LC2348:
+movl -16(%ebp),%eax
+.LC2338:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf2352:
+.size s715,.Lf2352-s715
+.globl s715f
+.align 16
+.type s715f,@function
+s715f:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 24(%ebp),%eax
+.LC2353:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf2354:
+.size s715f,.Lf2354-s715f
+.data
+.align 1
+.type s72er.2356,@object
+s72er.2356:
+.byte 115
+.byte 55
+.byte 50
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s72er.2356,10
+.align 1
+.type qs72.2357,@object
+.size qs72.2357,8
+qs72.2357:
+.byte 115
+.byte 55
+.byte 50
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s72
+.text
+.align 16
+.type s72,@function
+s72:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $100,%esp
+leal qs72.2357,%edi
+movl %edi,-12(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-16(%ebp)
+movl $0,-24(%ebp)
+.LC2358:
+.LC2359:
+movl -16(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-16(%ebp)
+movl -12(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-12(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC2358
+movl $2,-4(%ebp)
+cmpl $2,-4(%ebp)
+je .LC2361
+incl -24(%ebp)
+pushl $1
+pushl $s72er.2356
+call printf
+addl $8,%esp
+.LC2361:
+movl -4(%ebp),%edi
+movl %edi,%esi
+negl %esi
+leal (%esi,%edi),%edi
+cmpl $0,%edi
+je .LC2363
+addl $2,-24(%ebp)
+pushl $2
+pushl $s72er.2356
+call printf
+addl $8,%esp
+.LC2363:
+movl $0,-4(%ebp)
+movl $0,-8(%ebp)
+jmp .LC2368
+.LC2365:
+movl -4(%ebp),%edi
+leal (,%edi,2),%edi
+orl $1,%edi
+movl %edi,-4(%ebp)
+.LC2366:
+incl -8(%ebp)
+.LC2368:
+movl 20(%ebp),%edi
+movl 4(%edi),%edi
+cmpl %edi,-8(%ebp)
+jl .LC2365
+movl -4(%ebp),%edi
+notl %edi
+cmpl $0,%edi
+je .LC2369
+addl $4,-24(%ebp)
+pushl $4
+pushl $s72er.2356
+call printf
+addl $8,%esp
+.LC2369:
+movl $5,-4(%ebp)
+movl -4(%ebp),%edi
+leal 1(%edi),%edi
+movl %edi,-4(%ebp)
+cmpl $6,%edi
+jne .LC2376
+movl -4(%ebp),%edi
+subl $1,%edi
+movl %edi,-4(%ebp)
+cmpl $5,%edi
+jne .LC2376
+movl -4(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-4(%ebp)
+cmpl $5,%edi
+jne .LC2376
+movl -4(%ebp),%edi
+movl %edi,%esi
+subl $1,%esi
+movl %esi,-4(%ebp)
+cmpl $6,%edi
+jne .LC2376
+cmpl $5,-4(%ebp)
+je .LC2371
+.LC2376:
+addl $8,-24(%ebp)
+pushl $8
+pushl $s72er.2356
+call printf
+addl $8,%esp
+.LC2371:
+movb $26,-29(%ebp)
+movl $26,-36(%ebp)
+fldl .LC2377
+fstpl -48(%ebp)
+movw $26,-32(%ebp)
+movl $26,-40(%ebp)
+movl $26,-28(%ebp)
+flds .LC2378
+fstps -52(%ebp)
+movl $0,-20(%ebp)
+movswl -32(%ebp),%edi
+movl %edi,%ebx
+movsbl %bl,%edi
+cmpl $26,%edi
+jne .LC2385
+movl -28(%ebp),%edi
+movl %edi,%ebx
+movsbl %bl,%edi
+cmpl $26,%edi
+jne .LC2385
+movl -36(%ebp),%edi
+movl %edi,%ebx
+movsbl %bl,%edi
+cmpl $26,%edi
+jne .LC2385
+movl -40(%ebp),%edi
+movl %edi,%ebx
+movsbl %bl,%edi
+cmpl $26,%edi
+jne .LC2385
+flds -52(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movsbl %bl,%edi
+cmpl $26,%edi
+jne .LC2385
+fldl -48(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%ebx
+movsbl %bl,%edi
+cmpl $26,%edi
+je .LC2379
+.LC2385:
+incl -20(%ebp)
+.LC2379:
+movsbl -29(%ebp),%edi
+movswl %di,%edi
+cmpl $26,%edi
+jne .LC2392
+movl -28(%ebp),%edi
+movswl %di,%edi
+cmpl $26,%edi
+jne .LC2392
+movl -36(%ebp),%edi
+movswl %di,%edi
+cmpl $26,%edi
+jne .LC2392
+movl -40(%ebp),%edi
+movswl %di,%edi
+cmpl $26,%edi
+jne .LC2392
+flds -52(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movswl %di,%edi
+cmpl $26,%edi
+jne .LC2392
+fldl -48(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movswl %di,%edi
+cmpl $26,%edi
+je .LC2386
+.LC2392:
+addl $2,-20(%ebp)
+.LC2386:
+movsbl -29(%ebp),%edi
+cmpl $26,%edi
+jne .LC2399
+movswl -32(%ebp),%edi
+cmpl $26,%edi
+jne .LC2399
+cmpl $26,-36(%ebp)
+jne .LC2399
+movl -40(%ebp),%edi
+cmpl $26,%edi
+jne .LC2399
+flds -52(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+cmpl $26,%eax
+jne .LC2399
+fldl -48(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+cmpl $26,%eax
+je .LC2393
+.LC2399:
+addl $4,-20(%ebp)
+.LC2393:
+movsbl -29(%ebp),%edi
+cmpl $26,%edi
+jne .LC2406
+movswl -32(%ebp),%edi
+cmpl $26,%edi
+jne .LC2406
+cmpl $26,-28(%ebp)
+jne .LC2406
+movl -40(%ebp),%edi
+cmpl $26,%edi
+jne .LC2406
+flds -52(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+cmpl $26,%eax
+jne .LC2406
+fldl -48(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+cmpl $26,%eax
+je .LC2400
+.LC2406:
+addl $8,-20(%ebp)
+.LC2400:
+movsbl -29(%ebp),%edi
+cmpl $26,%edi
+jne .LC2415
+movswl -32(%ebp),%edi
+cmpl $26,%edi
+jne .LC2415
+movl -28(%ebp),%edi
+cmpl $26,%edi
+jne .LC2415
+movl -36(%ebp),%edi
+cmpl $26,%edi
+jne .LC2415
+flds .LC847
+fcomps -52(%ebp)
+fstsw %ax
+sahf
+ja .LC2416
+flds -52(%ebp)
+fsubs .LC847
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-56(%ebp)
+jmp .LC2417
+.LC2416:
+flds -52(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-56(%ebp)
+.LC2417:
+movl -56(%ebp),%edi
+cmpl $26,%edi
+jne .LC2415
+fldl .LC855
+fcompl -48(%ebp)
+fstsw %ax
+sahf
+ja .LC2418
+fldl -48(%ebp)
+fsubl .LC855
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-60(%ebp)
+jmp .LC2419
+.LC2418:
+fldl -48(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-60(%ebp)
+.LC2419:
+movl -60(%ebp),%edi
+cmpl $26,%edi
+je .LC2407
+.LC2415:
+addl $16,-20(%ebp)
+.LC2407:
+movsbl -29(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2426
+movswl -32(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2426
+fildl -28(%ebp)
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2426
+fildl -36(%ebp)
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2426
+movl -40(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+sub $4,%esp
+fstps (%esp)
+flds (%esp)
+addl $4,%esp
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2426
+fldl -48(%ebp)
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+je .LC2420
+.LC2426:
+addl $32,-20(%ebp)
+.LC2420:
+movsbl -29(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2433
+movswl -32(%ebp),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2433
+fildl -28(%ebp)
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2433
+fildl -36(%ebp)
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2433
+movl -40(%ebp),%edi
+fldl .LC611
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fldl .LC2377
+fcompp
+fstsw %ax
+sahf
+jne .LC2433
+fldl .LC2377
+fcomps -52(%ebp)
+fstsw %ax
+sahf
+je .LC2427
+.LC2433:
+addl $64,-20(%ebp)
+.LC2427:
+cmpl $0,-20(%ebp)
+je .LC2434
+addl $16,-24(%ebp)
+pushl $16
+pushl $s72er.2356
+call printf
+addl $8,%esp
+.LC2434:
+movl -24(%ebp),%eax
+.LC2355:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf2436:
+.size s72,.Lf2436-s72
+.data
+.align 1
+.type s757er.2438,@object
+s757er.2438:
+.byte 115
+.byte 55
+.byte 53
+.byte 55
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s757er.2438,11
+.align 1
+.type qs757.2439,@object
+.size qs757.2439,8
+qs757.2439:
+.byte 115
+.byte 55
+.byte 53
+.byte 55
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s757
+.text
+.align 16
+.type s757,@function
+s757:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $148,%esp
+leal qs757.2439,%edi
+movl %edi,-112(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-116(%ebp)
+movl $0,-120(%ebp)
+.LC2440:
+.LC2441:
+movl -116(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-116(%ebp)
+movl -112(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-112(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC2440
+movl $40,-124(%ebp)
+movl -124(%ebp),%edi
+leal (,%edi,8),%esi
+leal (,%esi,4),%esi
+cmpl $1280,%esi
+jne .LC2445
+sarl $3,%edi
+sarl $2,%edi
+cmpl $1,%edi
+je .LC2443
+.LC2445:
+incl -120(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2446
+pushl $1
+pushl $s757er.2438
+call printf
+addl $8,%esp
+.LC2446:
+.LC2443:
+movl $0,-84(%ebp)
+movl $0,-100(%ebp)
+jmp .LC2451
+.LC2448:
+movl $1,-92(%ebp)
+movl -92(%ebp),%edi
+movl 20(%ebp),%esi
+movl 16(%esi),%esi
+movl %esi,%ecx
+subl $1,%ecx
+movl %edi,%eax
+shll %cl,%eax
+movl %eax,-96(%ebp)
+movl $0,-104(%ebp)
+movl -104(%ebp),%edi
+notl %edi
+movl -100(%ebp),%esi
+movl %esi,%ecx
+movl %edi,%eax
+shrl %cl,%eax
+movl %eax,-108(%ebp)
+movl %esi,%ecx
+movl %edi,%eax
+shll %cl,%eax
+movl %eax,-104(%ebp)
+movl $0,-88(%ebp)
+jmp .LC2455
+.LC2452:
+movl -100(%ebp),%edi
+cmpl %edi,-88(%ebp)
+jge .LC2463
+movl $1,-132(%ebp)
+jmp .LC2464
+.LC2463:
+movl $0,-132(%ebp)
+.LC2464:
+movl -92(%ebp),%edi
+andl -104(%ebp),%edi
+cmpl $0,%edi
+jne .LC2465
+movl $1,-136(%ebp)
+jmp .LC2466
+.LC2465:
+movl $0,-136(%ebp)
+.LC2466:
+movl -136(%ebp),%edi
+cmpl %edi,-132(%ebp)
+jne .LC2462
+movl -100(%ebp),%edi
+cmpl %edi,-88(%ebp)
+jge .LC2467
+movl $1,-140(%ebp)
+jmp .LC2468
+.LC2467:
+movl $0,-140(%ebp)
+.LC2468:
+movl -96(%ebp),%edi
+andl -108(%ebp),%edi
+cmpl $0,%edi
+jne .LC2469
+movl $1,-144(%ebp)
+jmp .LC2470
+.LC2469:
+movl $0,-144(%ebp)
+.LC2470:
+movl -144(%ebp),%edi
+cmpl %edi,-140(%ebp)
+je .LC2456
+.LC2462:
+movl $1,-84(%ebp)
+.LC2456:
+movl -92(%ebp),%edi
+leal (,%edi,2),%edi
+movl %edi,-92(%ebp)
+movl -96(%ebp),%edi
+shrl $1,%edi
+movl %edi,-96(%ebp)
+.LC2453:
+incl -88(%ebp)
+.LC2455:
+movl 20(%ebp),%edi
+movl 16(%edi),%edi
+cmpl %edi,-88(%ebp)
+jl .LC2452
+.LC2449:
+incl -100(%ebp)
+.LC2451:
+movl 20(%ebp),%edi
+movl 16(%edi),%edi
+cmpl %edi,-100(%ebp)
+jl .LC2448
+cmpl $0,-84(%ebp)
+je .LC2471
+addl $2,-120(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2473
+pushl $2
+pushl $s757er.2438
+call printf
+addl $8,%esp
+.LC2473:
+.LC2471:
+movl $3,-16(%ebp)
+movl $2,-12(%ebp)
+movl $1,-8(%ebp)
+movl -12(%ebp),%edi
+cmpl %edi,-16(%ebp)
+jge .LC2481
+movl $1,-136(%ebp)
+jmp .LC2482
+.LC2481:
+movl $0,-136(%ebp)
+.LC2482:
+movl -8(%ebp),%edi
+cmpl %edi,-136(%ebp)
+jge .LC2479
+movl $1,-132(%ebp)
+jmp .LC2480
+.LC2479:
+movl $0,-132(%ebp)
+.LC2480:
+cmpl $1,-132(%ebp)
+je .LC2475
+addl $4,-120(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2483
+pushl $4
+pushl $s757er.2438
+call printf
+addl $8,%esp
+.LC2483:
+.LC2475:
+leal -76(%ebp),%edi
+leal -80(%ebp),%esi
+cmpl %esi,%edi
+jne .LC2485
+addl $8,-120(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2488
+pushl $8
+pushl $s757er.2438
+call printf
+addl $8,%esp
+.LC2488:
+.LC2485:
+leal -76(%ebp),%edi
+leal -80(%ebp),%esi
+cmpl %esi,%edi
+jae .LC2490
+movl 20(%ebp),%edi
+cmpl $0,40(%edi)
+je .LC2493
+pushl $.LC2495
+call printf
+addl $4,%esp
+.LC2493:
+.LC2490:
+movl $0,-84(%ebp)
+movl $0,-88(%ebp)
+.LC2496:
+movl -88(%ebp),%edi
+leal -80(%ebp),%esi
+movl $1,(%esi,%edi,4)
+.LC2497:
+incl -88(%ebp)
+cmpl $16,-88(%ebp)
+jl .LC2496
+movl $0,-76(%ebp)
+movl $0,-64(%ebp)
+movl $0,-56(%ebp)
+movl $0,-52(%ebp)
+movl $0,-44(%ebp)
+movl $0,-28(%ebp)
+movl $0,-16(%ebp)
+.LC2506:
+movl $0,-12(%ebp)
+.LC2510:
+movl $0,-8(%ebp)
+.LC2514:
+movl $0,-4(%ebp)
+.LC2518:
+movl -12(%ebp),%edi
+cmpl %edi,-16(%ebp)
+jge .LC2529
+movl $1,-144(%ebp)
+jmp .LC2530
+.LC2529:
+movl $0,-144(%ebp)
+.LC2530:
+movl -4(%ebp),%edi
+cmpl %edi,-8(%ebp)
+jge .LC2531
+movl $1,-148(%ebp)
+jmp .LC2532
+.LC2531:
+movl $0,-148(%ebp)
+.LC2532:
+movl -148(%ebp),%edi
+cmpl %edi,-144(%ebp)
+jne .LC2527
+movl $1,-140(%ebp)
+jmp .LC2528
+.LC2527:
+movl $0,-140(%ebp)
+.LC2528:
+movl -16(%ebp),%edi
+movl -12(%ebp),%esi
+leal (,%esi,4),%esi
+leal (%esi,%edi,8),%edi
+movl -8(%ebp),%esi
+leal (,%esi,2),%esi
+leal (%esi,%edi),%edi
+movl -4(%ebp),%esi
+leal (%esi,%edi),%edi
+leal -80(%ebp),%esi
+movl (%esi,%edi,4),%edi
+cmpl %edi,-140(%ebp)
+je .LC2522
+movl $1,-84(%ebp)
+.LC2522:
+.LC2519:
+incl -4(%ebp)
+cmpl $2,-4(%ebp)
+jl .LC2518
+.LC2515:
+incl -8(%ebp)
+cmpl $2,-8(%ebp)
+jl .LC2514
+.LC2511:
+incl -12(%ebp)
+cmpl $2,-12(%ebp)
+jl .LC2510
+.LC2507:
+incl -16(%ebp)
+cmpl $2,-16(%ebp)
+jl .LC2506
+cmpl $0,-84(%ebp)
+je .LC2533
+addl $16,-120(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2535
+pushl $16
+pushl $s757er.2438
+call printf
+addl $8,%esp
+.LC2535:
+.LC2533:
+movl $0,-128(%ebp)
+movl -128(%ebp),%edi
+cmpl $0,%edi
+je .LC2537
+addl $32,-120(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2539
+pushl $32
+pushl $s757er.2438
+call printf
+addl $8,%esp
+.LC2539:
+.LC2537:
+movl -120(%ebp),%eax
+.LC2437:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf2541:
+.size s757,.Lf2541-s757
+.data
+.align 1
+.type fl.2543,@object
+fl.2543:
+.byte 76
+.byte 111
+.byte 99
+.byte 97
+.byte 108
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.size fl.2543,17
+.align 1
+.type s7813er.2544,@object
+s7813er.2544:
+.byte 115
+.byte 55
+.byte 56
+.byte 49
+.byte 51
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s7813er.2544,12
+.align 1
+.type qs7813.2545,@object
+.size qs7813.2545,8
+qs7813.2545:
+.byte 115
+.byte 55
+.byte 56
+.byte 49
+.byte 51
+.byte 32
+.byte 32
+.byte 0
+.globl s7813
+.text
+.align 16
+.type s7813,@function
+s7813:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $88,%esp
+leal qs7813.2545,%edi
+movl %edi,-24(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%esi
+movl %esi,-28(%ebp)
+movl $0,-8(%ebp)
+movl $0,-32(%ebp)
+movl 48(%edi),%edi
+movl %edi,-4(%ebp)
+.LC2546:
+.LC2547:
+movl -28(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-28(%ebp)
+movl -24(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-24(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC2546
+jmp .LC2549
+movl $1,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2551
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2551:
+.LC2549:
+jmp .LC2553
+movl $2,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2555
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2555:
+.LC2553:
+jmp .LC2557
+movl $3,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2559
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2559:
+.LC2557:
+jmp .LC2561
+movl $4,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2563
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2563:
+.LC2561:
+jmp .LC2565
+movl $5,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2567
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2567:
+.LC2565:
+jmp .LC2569
+movl $6,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2571
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2571:
+.LC2569:
+jmp .LC2573
+movl $7,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2575
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2575:
+.LC2573:
+jmp .LC2577
+movl $8,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2579
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2579:
+.LC2577:
+jmp .LC2581
+movl $9,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2583
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2583:
+.LC2581:
+jmp .LC2585
+movl $10,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2587
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2587:
+.LC2585:
+jmp .LC2589
+movl $11,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2591
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2591:
+.LC2589:
+jmp .LC2593
+movl $12,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2595
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2595:
+.LC2593:
+jmp .LC2597
+movl $13,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2599
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2599:
+.LC2597:
+jmp .LC2601
+movl $14,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2603
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2603:
+.LC2601:
+jmp .LC2605
+movl $15,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2607
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2607:
+.LC2605:
+jmp .LC2609
+movl $16,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2611
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2611:
+.LC2609:
+jmp .LC2613
+movl $17,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2615
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2615:
+.LC2613:
+jmp .LC2617
+movl $18,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2619
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2619:
+.LC2617:
+jmp .LC2621
+movl $16,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2623
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2623:
+.LC2621:
+jmp .LC2625
+movl $20,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2627
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2627:
+.LC2625:
+jmp .LC2629
+movl $21,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2631
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2631:
+.LC2629:
+jmp .LC2633
+movl $22,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2635
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2635:
+.LC2633:
+jmp .LC2637
+movl $23,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2639
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2639:
+.LC2637:
+jmp .LC2641
+movl $24,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2643
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2643:
+.LC2641:
+jmp .LC2645
+movl $25,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2647
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2647:
+.LC2645:
+jmp .LC2649
+movl $26,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2651
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2651:
+.LC2649:
+jmp .LC2653
+movl $27,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2655
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2655:
+.LC2653:
+jmp .LC2657
+movl $28,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2659
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2659:
+.LC2657:
+jmp .LC2661
+movl $26,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2663
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2663:
+.LC2661:
+jmp .LC2665
+movl $30,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2667
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2667:
+.LC2665:
+jmp .LC2669
+movl $31,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2671
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2671:
+.LC2669:
+jmp .LC2673
+movl $32,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2675
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2675:
+.LC2673:
+jmp .LC2677
+movl $33,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2679
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2679:
+.LC2677:
+jmp .LC2681
+movl $34,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2683
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2683:
+.LC2681:
+jmp .LC2685
+movl $35,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2687
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2687:
+.LC2685:
+jmp .LC2689
+movl $36,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2691
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2691:
+.LC2689:
+jmp .LC2693
+movl $37,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2695
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2695:
+.LC2693:
+jmp .LC2697
+movl $38,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2699
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2699:
+.LC2697:
+jmp .LC2701
+movl $39,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2703
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2703:
+.LC2701:
+jmp .LC2705
+movl $40,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2707
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2707:
+.LC2705:
+jmp .LC2709
+movl $41,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2711
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2711:
+.LC2709:
+jmp .LC2713
+movl $42,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2715
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2715:
+.LC2713:
+jmp .LC2717
+movl $43,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2719
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2719:
+.LC2717:
+jmp .LC2721
+movl $44,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2723
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2723:
+.LC2721:
+jmp .LC2725
+movl $45,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2727
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2727:
+.LC2725:
+jmp .LC2729
+movl $46,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2731
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2731:
+.LC2729:
+jmp .LC2733
+movl $47,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2735
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2735:
+.LC2733:
+jmp .LC2737
+movl $48,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2739
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2739:
+.LC2737:
+jmp .LC2741
+movl $49,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2743
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2743:
+.LC2741:
+jmp .LC2745
+movl $50,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2747
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2747:
+.LC2745:
+jmp .LC2749
+movl $51,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2751
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2751:
+.LC2749:
+jmp .LC2753
+movl $52,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2755
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2755:
+.LC2753:
+jmp .LC2757
+movl $53,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2759
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2759:
+.LC2757:
+jmp .LC2761
+movl $54,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2763
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2763:
+.LC2761:
+jmp .LC2765
+movl $55,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2767
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2767:
+.LC2765:
+jmp .LC2769
+movl $56,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2771
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2771:
+.LC2769:
+jmp .LC2773
+movl $57,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2775
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2775:
+.LC2773:
+jmp .LC2777
+movl $58,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2779
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2779:
+.LC2777:
+jmp .LC2781
+movl $56,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2783
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2783:
+.LC2781:
+jmp .LC2785
+movl $60,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2787
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2787:
+.LC2785:
+jmp .LC2789
+movl $61,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2791
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2791:
+.LC2789:
+jmp .LC2793
+movl $62,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2795
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2795:
+.LC2793:
+jmp .LC2797
+movl $63,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2799
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2799:
+.LC2797:
+jmp .LC2801
+movl $64,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2803
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2803:
+.LC2801:
+jmp .LC2805
+movl $65,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2807
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2807:
+.LC2805:
+jmp .LC2809
+movl $66,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2811
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2811:
+.LC2809:
+jmp .LC2813
+movl $67,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2815
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2815:
+.LC2813:
+jmp .LC2817
+movl $68,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2819
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2819:
+.LC2817:
+jmp .LC2821
+movl $69,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2823
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2823:
+.LC2821:
+jmp .LC2825
+movl $70,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2827
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2827:
+.LC2825:
+jmp .LC2829
+movl $71,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2831
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2831:
+.LC2829:
+jmp .LC2833
+movl $72,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2835
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2835:
+.LC2833:
+jmp .LC2837
+movl $73,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2839
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2839:
+.LC2837:
+jmp .LC2841
+movl $74,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2843
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2843:
+.LC2841:
+jmp .LC2845
+movl $75,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2847
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2847:
+.LC2845:
+cmpl $0,-8(%ebp)
+je .LC2849
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2851
+pushl $1
+pushl $s7813er.2544
+call printf
+addl $8,%esp
+.LC2851:
+incl -32(%ebp)
+.LC2849:
+movl $0,-8(%ebp)
+movl $0,-16(%ebp)
+movl $0,-12(%ebp)
+movl -12(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-12(%ebp)
+cmpl $0,%edi
+je .LC2854
+movl -16(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-16(%ebp)
+cmpl $0,%edi
+je .LC2854
+movl $1,-44(%ebp)
+jmp .LC2855
+.LC2854:
+movl $0,-44(%ebp)
+.LC2855:
+movl -44(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $1,-12(%ebp)
+je .LC2856
+movl $1,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2858
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2858:
+.LC2856:
+cmpl $0,-16(%ebp)
+je .LC2860
+movl $2,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2862
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2862:
+.LC2860:
+cmpl $0,-20(%ebp)
+je .LC2864
+movl $3,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2866
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2866:
+.LC2864:
+cmpl $0,-12(%ebp)
+je .LC2869
+movl -16(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-16(%ebp)
+cmpl $0,%edi
+je .LC2869
+movl $1,-48(%ebp)
+jmp .LC2870
+.LC2869:
+movl $0,-48(%ebp)
+.LC2870:
+movl -48(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $1,-12(%ebp)
+je .LC2871
+movl $4,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2873
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2873:
+.LC2871:
+cmpl $1,-16(%ebp)
+je .LC2875
+movl $5,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2877
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2877:
+.LC2875:
+cmpl $0,-20(%ebp)
+je .LC2879
+movl $6,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2881
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2881:
+.LC2879:
+movl -12(%ebp),%edi
+movl %edi,%esi
+subl $1,%esi
+movl %esi,-12(%ebp)
+cmpl $0,%edi
+je .LC2884
+cmpl $0,-16(%ebp)
+je .LC2884
+movl $1,-52(%ebp)
+jmp .LC2885
+.LC2884:
+movl $0,-52(%ebp)
+.LC2885:
+movl -52(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $0,-12(%ebp)
+je .LC2886
+movl $7,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2888
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2888:
+.LC2886:
+cmpl $1,-16(%ebp)
+je .LC2890
+movl $8,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2892
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2892:
+.LC2890:
+cmpl $1,-20(%ebp)
+je .LC2894
+movl $9,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2896
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2896:
+.LC2894:
+cmpl $0,-12(%ebp)
+je .LC2899
+movl -16(%ebp),%edi
+movl %edi,%esi
+subl $1,%esi
+movl %esi,-16(%ebp)
+cmpl $0,%edi
+je .LC2899
+movl $1,-56(%ebp)
+jmp .LC2900
+.LC2899:
+movl $0,-56(%ebp)
+.LC2900:
+movl -56(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $0,-12(%ebp)
+je .LC2901
+movl $10,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2903
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2903:
+.LC2901:
+cmpl $1,-16(%ebp)
+je .LC2905
+movl $11,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2907
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2907:
+.LC2905:
+cmpl $0,-20(%ebp)
+je .LC2909
+movl $12,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2911
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2911:
+.LC2909:
+cmpl $0,-8(%ebp)
+je .LC2913
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2915
+pushl $2
+pushl $s7813er.2544
+call printf
+addl $8,%esp
+.LC2915:
+addl $2,-32(%ebp)
+.LC2913:
+movl $0,-8(%ebp)
+movl $0,-16(%ebp)
+movl $0,-12(%ebp)
+movl -12(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-12(%ebp)
+cmpl $0,%edi
+jne .LC2920
+cmpl $0,-16(%ebp)
+je .LC2918
+.LC2920:
+movl $1,-60(%ebp)
+jmp .LC2919
+.LC2918:
+movl $0,-60(%ebp)
+.LC2919:
+movl -60(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $1,-12(%ebp)
+je .LC2921
+movl $1,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2923
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2923:
+.LC2921:
+cmpl $0,-16(%ebp)
+je .LC2925
+movl $2,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2927
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2927:
+.LC2925:
+cmpl $0,-20(%ebp)
+je .LC2929
+movl $3,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2931
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2931:
+.LC2929:
+movl -16(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-16(%ebp)
+cmpl $0,%edi
+jne .LC2936
+cmpl $0,-12(%ebp)
+je .LC2934
+.LC2936:
+movl $1,-64(%ebp)
+jmp .LC2935
+.LC2934:
+movl $0,-64(%ebp)
+.LC2935:
+movl -64(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $1,-12(%ebp)
+je .LC2937
+movl $4,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2939
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2939:
+.LC2937:
+cmpl $1,-16(%ebp)
+je .LC2941
+movl $5,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2943
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2943:
+.LC2941:
+cmpl $1,-20(%ebp)
+je .LC2945
+movl $6,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2947
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2947:
+.LC2945:
+movl -12(%ebp),%edi
+movl %edi,%esi
+subl $1,%esi
+movl %esi,-12(%ebp)
+cmpl $0,%edi
+jne .LC2952
+movl -16(%ebp),%edi
+movl %edi,%esi
+subl $1,%esi
+movl %esi,-16(%ebp)
+cmpl $0,%edi
+je .LC2950
+.LC2952:
+movl $1,-68(%ebp)
+jmp .LC2951
+.LC2950:
+movl $0,-68(%ebp)
+.LC2951:
+movl -68(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $0,-12(%ebp)
+je .LC2953
+movl $7,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2955
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2955:
+.LC2953:
+cmpl $1,-16(%ebp)
+je .LC2957
+movl $8,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2959
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2959:
+.LC2957:
+cmpl $1,-20(%ebp)
+je .LC2961
+movl $9,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2963
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2963:
+.LC2961:
+cmpl $0,-12(%ebp)
+jne .LC2968
+movl -16(%ebp),%edi
+movl %edi,%esi
+subl $1,%esi
+movl %esi,-16(%ebp)
+cmpl $0,%edi
+je .LC2966
+.LC2968:
+movl $1,-72(%ebp)
+jmp .LC2967
+.LC2966:
+movl $0,-72(%ebp)
+.LC2967:
+movl -72(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $0,-12(%ebp)
+je .LC2969
+movl $10,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2971
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2971:
+.LC2969:
+cmpl $0,-16(%ebp)
+je .LC2973
+movl $11,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2975
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2975:
+.LC2973:
+cmpl $1,-20(%ebp)
+je .LC2977
+movl $12,-8(%ebp)
+cmpl $0,-4(%ebp)
+je .LC2979
+pushl -8(%ebp)
+pushl $fl.2543
+call printf
+addl $8,%esp
+.LC2979:
+.LC2977:
+cmpl $0,-8(%ebp)
+je .LC2981
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2983
+pushl $4
+pushl $s7813er.2544
+call printf
+addl $8,%esp
+.LC2983:
+addl $4,-32(%ebp)
+.LC2981:
+movl $0,-16(%ebp)
+movl $0,-12(%ebp)
+movl $0,-36(%ebp)
+movl $1,-40(%ebp)
+cmpl $0,-40(%ebp)
+je .LC2987
+movl -36(%ebp),%edi
+movl %edi,-76(%ebp)
+jmp .LC2988
+.LC2987:
+cmpl $0,-40(%ebp)
+je .LC2989
+movl -12(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-12(%ebp)
+movl %edi,-80(%ebp)
+jmp .LC2990
+.LC2989:
+movl -16(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-16(%ebp)
+movl %edi,-80(%ebp)
+.LC2990:
+movl -80(%ebp),%edi
+movl %edi,-76(%ebp)
+.LC2988:
+movl -76(%ebp),%edi
+movl %edi,-20(%ebp)
+cmpl $0,-20(%ebp)
+jne .LC2994
+cmpl $0,-12(%ebp)
+jne .LC2994
+cmpl $0,-16(%ebp)
+je .LC2991
+.LC2994:
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC2995
+pushl $8
+pushl $s7813er.2544
+call printf
+addl $8,%esp
+.LC2995:
+addl $8,-32(%ebp)
+.LC2991:
+cmpl $0,-40(%ebp)
+je .LC3002
+movl -36(%ebp),%edi
+movl %edi,-84(%ebp)
+jmp .LC3003
+.LC3002:
+movl $1,-84(%ebp)
+.LC3003:
+cmpl $0,-84(%ebp)
+jne .LC3001
+cmpl $0,-36(%ebp)
+je .LC3004
+movl $1,-88(%ebp)
+jmp .LC3005
+.LC3004:
+movl -36(%ebp),%edi
+movl %edi,-88(%ebp)
+.LC3005:
+cmpl $0,-88(%ebp)
+je .LC2997
+.LC3001:
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3006
+pushl $16
+pushl $s7813er.2544
+call printf
+addl $8,%esp
+.LC3006:
+addl $16,-32(%ebp)
+.LC2997:
+movl -32(%ebp),%eax
+.LC2542:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3008:
+.size s7813,.Lf3008-s7813
+.data
+.align 1
+.type s81er.3010,@object
+s81er.3010:
+.byte 115
+.byte 56
+.byte 49
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s81er.3010,10
+.align 1
+.type qs81.3011,@object
+.size qs81.3011,8
+qs81.3011:
+.byte 115
+.byte 56
+.byte 49
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.type badtest.3012,@object
+badtest.3012:
+.byte 82
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 117
+.byte 110
+.byte 114
+.byte 101
+.byte 108
+.byte 105
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.size badtest.3012,38
+.align 1
+.type goodtest.3013,@object
+goodtest.3013:
+.byte 37
+.byte 100
+.byte 32
+.byte 114
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 118
+.byte 97
+.byte 114
+.byte 105
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.size goodtest.3013,40
+.globl s81
+.text
+.align 16
+.type s81,@function
+s81:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $56,%esp
+movl $0,-56(%ebp)
+movl $0,-44(%ebp)
+movl $0,-48(%ebp)
+movl $0,-52(%ebp)
+leal qs81.3011,%edi
+movl %edi,-36(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-40(%ebp)
+.LC3014:
+.LC3015:
+movl -40(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-40(%ebp)
+movl -36(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-36(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC3014
+movl $1,-16(%ebp)
+movl $0,-20(%ebp)
+.LC3017:
+movl -16(%ebp),%edi
+movl %edi,%ebx
+movb %bl,-1(%ebp)
+movb %bl,-21(%ebp)
+leal -16(%ebp),%esi
+movl %esi,-8(%ebp)
+leal -16(%ebp),%esi
+movl %esi,-28(%ebp)
+movl %edi,-12(%ebp)
+movl %edi,-32(%ebp)
+movsbl -1(%ebp),%edi
+movsbl -21(%ebp),%esi
+cmpl %esi,%edi
+je .LC3021
+movl $1,-44(%ebp)
+.LC3021:
+movl -8(%ebp),%edi
+movl -28(%ebp),%esi
+cmpl %esi,%edi
+je .LC3023
+movl $1,-48(%ebp)
+.LC3023:
+movl -32(%ebp),%edi
+cmpl %edi,-12(%ebp)
+je .LC3025
+movl $1,-52(%ebp)
+.LC3025:
+sall $1,-16(%ebp)
+.LC3018:
+incl -20(%ebp)
+cmpl $50,-20(%ebp)
+jl .LC3017
+cmpl $0,-44(%ebp)
+je .LC3027
+incl -56(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3029
+pushl $1
+pushl $s81er.3010
+call printf
+addl $8,%esp
+.LC3029:
+.LC3027:
+cmpl $0,-48(%ebp)
+je .LC3031
+addl $2,-56(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3033
+pushl $2
+pushl $s81er.3010
+call printf
+addl $8,%esp
+.LC3033:
+.LC3031:
+cmpl $0,-52(%ebp)
+je .LC3035
+addl $4,-56(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3037
+pushl $4
+pushl $s81er.3010
+call printf
+addl $8,%esp
+.LC3037:
+.LC3035:
+call regc
+movl %eax,-16(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,40(%edi)
+je .LC3039
+cmpl $0,-16(%ebp)
+jge .LC3041
+pushl $.LC434
+pushl $badtest.3012
+call printf
+addl $8,%esp
+jmp .LC3042
+.LC3041:
+pushl $.LC434
+pushl -16(%ebp)
+pushl $goodtest.3013
+call printf
+addl $12,%esp
+.LC3042:
+.LC3039:
+call regp
+movl %eax,-16(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,40(%edi)
+je .LC3043
+cmpl $0,-16(%ebp)
+jge .LC3045
+pushl $.LC3047
+pushl $badtest.3012
+call printf
+addl $8,%esp
+jmp .LC3046
+.LC3045:
+pushl $.LC3047
+pushl -16(%ebp)
+pushl $goodtest.3013
+call printf
+addl $12,%esp
+.LC3046:
+.LC3043:
+call regi
+movl %eax,-16(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,40(%edi)
+je .LC3048
+cmpl $0,-16(%ebp)
+jge .LC3050
+pushl $.LC435
+pushl $badtest.3012
+call printf
+addl $8,%esp
+jmp .LC3051
+.LC3050:
+pushl $.LC435
+pushl -16(%ebp)
+pushl $goodtest.3013
+call printf
+addl $12,%esp
+.LC3051:
+.LC3048:
+movl -56(%ebp),%eax
+.LC3009:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3052:
+.size s81,.Lf3052-s81
+.globl regc
+.align 16
+.type regc,@function
+regc:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $148,%esp
+movb $0,-138(%ebp)
+movb $1,-117(%ebp)
+movb $2,-118(%ebp)
+movb $3,-119(%ebp)
+movb $4,-1(%ebp)
+movb $5,-120(%ebp)
+movb $6,-2(%ebp)
+movb $7,-121(%ebp)
+movb $8,-3(%ebp)
+movb $9,-122(%ebp)
+movb $10,-4(%ebp)
+movb $11,-123(%ebp)
+movb $12,-5(%ebp)
+movb $13,-124(%ebp)
+movb $14,-6(%ebp)
+movb $15,-125(%ebp)
+movb $16,-7(%ebp)
+movb $17,-126(%ebp)
+movb $18,-8(%ebp)
+movb $19,-127(%ebp)
+movb $20,-9(%ebp)
+movb $21,-128(%ebp)
+movb $22,-10(%ebp)
+movb $23,-129(%ebp)
+movb $24,-11(%ebp)
+movb $25,-130(%ebp)
+movb $26,-12(%ebp)
+movb $27,-131(%ebp)
+movb $28,-13(%ebp)
+movb $29,-132(%ebp)
+movb $30,-14(%ebp)
+movb $31,-133(%ebp)
+movb $32,-15(%ebp)
+movb $33,-134(%ebp)
+movb $34,-16(%ebp)
+movb $35,-135(%ebp)
+movb $36,-136(%ebp)
+movb $37,-137(%ebp)
+movb $38,-139(%ebp)
+leal -117(%ebp),%edi
+leal -138(%ebp),%esi
+movl %edi,%ebx
+subl %esi,%ebx
+movl %ebx,%esi
+movl %esi,-104(%ebp)
+leal -118(%ebp),%esi
+subl %edi,%esi
+movl %esi,%edi
+movl %edi,-100(%ebp)
+leal -119(%ebp),%edi
+leal -118(%ebp),%esi
+subl %esi,%edi
+movl %edi,-96(%ebp)
+leal -120(%ebp),%edi
+leal -119(%ebp),%esi
+subl %esi,%edi
+movl %edi,-92(%ebp)
+leal -121(%ebp),%edi
+leal -120(%ebp),%esi
+subl %esi,%edi
+movl %edi,-88(%ebp)
+leal -122(%ebp),%edi
+leal -121(%ebp),%esi
+subl %esi,%edi
+movl %edi,-84(%ebp)
+leal -123(%ebp),%edi
+leal -122(%ebp),%esi
+subl %esi,%edi
+movl %edi,-80(%ebp)
+leal -124(%ebp),%edi
+leal -123(%ebp),%esi
+subl %esi,%edi
+movl %edi,-76(%ebp)
+leal -125(%ebp),%edi
+leal -124(%ebp),%esi
+subl %esi,%edi
+movl %edi,-72(%ebp)
+leal -126(%ebp),%edi
+leal -125(%ebp),%esi
+subl %esi,%edi
+movl %edi,-68(%ebp)
+leal -127(%ebp),%edi
+leal -126(%ebp),%esi
+subl %esi,%edi
+movl %edi,-64(%ebp)
+leal -128(%ebp),%edi
+leal -127(%ebp),%esi
+subl %esi,%edi
+movl %edi,-60(%ebp)
+leal -129(%ebp),%edi
+leal -128(%ebp),%esi
+subl %esi,%edi
+movl %edi,-56(%ebp)
+leal -130(%ebp),%edi
+leal -129(%ebp),%esi
+subl %esi,%edi
+movl %edi,-52(%ebp)
+leal -131(%ebp),%edi
+leal -130(%ebp),%esi
+subl %esi,%edi
+movl %edi,-48(%ebp)
+leal -132(%ebp),%edi
+leal -131(%ebp),%esi
+subl %esi,%edi
+movl %edi,-44(%ebp)
+leal -133(%ebp),%edi
+leal -132(%ebp),%esi
+subl %esi,%edi
+movl %edi,-40(%ebp)
+leal -134(%ebp),%edi
+leal -133(%ebp),%esi
+subl %esi,%edi
+movl %edi,-36(%ebp)
+leal -135(%ebp),%edi
+leal -134(%ebp),%esi
+subl %esi,%edi
+movl %edi,-32(%ebp)
+leal -136(%ebp),%edi
+leal -135(%ebp),%esi
+subl %esi,%edi
+movl %edi,-28(%ebp)
+leal -137(%ebp),%edi
+leal -136(%ebp),%esi
+subl %esi,%edi
+movl %edi,-24(%ebp)
+leal -139(%ebp),%edi
+leal -137(%ebp),%esi
+subl %esi,%edi
+movl %edi,-20(%ebp)
+movl -104(%ebp),%edi
+movl %edi,-116(%ebp)
+movl $1,-112(%ebp)
+movl $0,-108(%ebp)
+.LC3075:
+movl -112(%ebp),%edi
+cmpl $1,%edi
+je .LC3081
+cmpl $2,%edi
+je .LC3084
+cmpl $3,%edi
+je .LC3089
+jmp .LC3079
+.LC3081:
+movl -108(%ebp),%edi
+leal -104(%ebp),%esi
+movl -116(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+je .LC3080
+movl -108(%ebp),%edi
+leal -104(%ebp),%esi
+movl (%esi,%edi,4),%edi
+movl %edi,-148(%ebp)
+movl $2,-112(%ebp)
+movl $1,-144(%ebp)
+jmp .LC3080
+.LC3084:
+movl -108(%ebp),%edi
+leal -104(%ebp),%esi
+movl -116(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+jne .LC3085
+movl $3,-112(%ebp)
+jmp .LC3080
+.LC3085:
+movl -108(%ebp),%edi
+leal -104(%ebp),%esi
+movl -148(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+jne .LC3087
+incl -144(%ebp)
+jmp .LC3080
+.LC3087:
+movl $4,-112(%ebp)
+jmp .LC3080
+.LC3089:
+movl -108(%ebp),%edi
+leal -104(%ebp),%esi
+movl -116(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+je .LC3080
+movl $4,-112(%ebp)
+.LC3079:
+.LC3080:
+.LC3076:
+incl -108(%ebp)
+cmpl $22,-108(%ebp)
+jl .LC3075
+cmpl $3,-112(%ebp)
+jne .LC3092
+movl $16,%edi
+movl %edi,%eax
+subl -144(%ebp),%eax
+jmp .LC3053
+.LC3092:
+movl $-1,%eax
+.LC3053:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3094:
+.size regc,.Lf3094-regc
+.globl regi
+.align 16
+.type regi,@function
+regi:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $264,%esp
+movl $0,-252(%ebp)
+movl $1,-168(%ebp)
+movl $2,-172(%ebp)
+movl $3,-176(%ebp)
+movl $4,-4(%ebp)
+movl $5,-180(%ebp)
+movl $6,-8(%ebp)
+movl $7,-184(%ebp)
+movl $8,-12(%ebp)
+movl $9,-188(%ebp)
+movl $10,-16(%ebp)
+movl $11,-192(%ebp)
+movl $12,-20(%ebp)
+movl $13,-196(%ebp)
+movl $14,-24(%ebp)
+movl $15,-200(%ebp)
+movl $16,-28(%ebp)
+movl $17,-204(%ebp)
+movl $18,-32(%ebp)
+movl $19,-208(%ebp)
+movl $20,-36(%ebp)
+movl $21,-212(%ebp)
+movl $22,-40(%ebp)
+movl $23,-216(%ebp)
+movl $24,-44(%ebp)
+movl $25,-220(%ebp)
+movl $26,-48(%ebp)
+movl $27,-224(%ebp)
+movl $28,-52(%ebp)
+movl $29,-228(%ebp)
+movl $30,-56(%ebp)
+movl $31,-232(%ebp)
+movl $32,-60(%ebp)
+movl $33,-236(%ebp)
+movl $34,-64(%ebp)
+movl $35,-240(%ebp)
+movl $36,-244(%ebp)
+movl $37,-248(%ebp)
+movl $38,-256(%ebp)
+leal -168(%ebp),%edi
+movl $4,%esi
+leal -252(%ebp),%ebx
+movl %edi,%edx
+subl %ebx,%edx
+movl %edx,%eax
+movl %esi,%ecx
+cdq
+idivl %ecx
+movl %eax,-152(%ebp)
+leal -172(%ebp),%ebx
+subl %edi,%ebx
+movl %ebx,%eax
+movl %esi,%ecx
+cdq
+idivl %ecx
+movl %eax,-148(%ebp)
+leal -176(%ebp),%edi
+leal -172(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-144(%ebp)
+leal -180(%ebp),%edi
+leal -176(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-140(%ebp)
+leal -184(%ebp),%edi
+leal -180(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-136(%ebp)
+leal -188(%ebp),%edi
+leal -184(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-132(%ebp)
+leal -192(%ebp),%edi
+leal -188(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-128(%ebp)
+leal -196(%ebp),%edi
+leal -192(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-124(%ebp)
+leal -200(%ebp),%edi
+leal -196(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-120(%ebp)
+leal -204(%ebp),%edi
+leal -200(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-116(%ebp)
+leal -208(%ebp),%edi
+leal -204(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-112(%ebp)
+leal -212(%ebp),%edi
+leal -208(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-108(%ebp)
+leal -216(%ebp),%edi
+leal -212(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-104(%ebp)
+leal -220(%ebp),%edi
+leal -216(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-100(%ebp)
+leal -224(%ebp),%edi
+leal -220(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-96(%ebp)
+leal -228(%ebp),%edi
+leal -224(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-92(%ebp)
+leal -232(%ebp),%edi
+leal -228(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-88(%ebp)
+leal -236(%ebp),%edi
+leal -232(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-84(%ebp)
+leal -240(%ebp),%edi
+leal -236(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-80(%ebp)
+leal -244(%ebp),%edi
+leal -240(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-76(%ebp)
+leal -248(%ebp),%edi
+leal -244(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-72(%ebp)
+leal -256(%ebp),%edi
+leal -248(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-68(%ebp)
+movl -152(%ebp),%edi
+movl %edi,-164(%ebp)
+movl $1,-160(%ebp)
+movl $0,-156(%ebp)
+.LC3117:
+movl -160(%ebp),%edi
+cmpl $1,%edi
+je .LC3123
+cmpl $2,%edi
+je .LC3126
+cmpl $3,%edi
+je .LC3131
+jmp .LC3121
+.LC3123:
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl -164(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+je .LC3122
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl (%esi,%edi,4),%edi
+movl %edi,-264(%ebp)
+movl $2,-160(%ebp)
+movl $1,-260(%ebp)
+jmp .LC3122
+.LC3126:
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl -164(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+jne .LC3127
+movl $3,-160(%ebp)
+jmp .LC3122
+.LC3127:
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl -264(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+jne .LC3129
+incl -260(%ebp)
+jmp .LC3122
+.LC3129:
+movl $4,-160(%ebp)
+jmp .LC3122
+.LC3131:
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl -164(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+je .LC3122
+movl $4,-160(%ebp)
+.LC3121:
+.LC3122:
+.LC3118:
+incl -156(%ebp)
+cmpl $22,-156(%ebp)
+jl .LC3117
+cmpl $3,-160(%ebp)
+jne .LC3134
+movl $16,%edi
+movl %edi,%eax
+subl -260(%ebp),%eax
+jmp .LC3095
+.LC3134:
+movl $-1,%eax
+.LC3095:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3136:
+.size regi,.Lf3136-regi
+.globl regp
+.align 16
+.type regp,@function
+regp:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $264,%esp
+leal -252(%ebp),%edi
+movl %edi,-252(%ebp)
+leal -228(%ebp),%edi
+movl %edi,-228(%ebp)
+leal -232(%ebp),%edi
+movl %edi,-232(%ebp)
+leal -236(%ebp),%edi
+movl %edi,-236(%ebp)
+leal -164(%ebp),%edi
+movl %edi,-4(%ebp)
+leal -164(%ebp),%edi
+movl %edi,-164(%ebp)
+leal -168(%ebp),%edi
+movl %edi,-8(%ebp)
+leal -168(%ebp),%edi
+movl %edi,-168(%ebp)
+leal -172(%ebp),%edi
+movl %edi,-12(%ebp)
+leal -172(%ebp),%edi
+movl %edi,-172(%ebp)
+leal -176(%ebp),%edi
+movl %edi,-16(%ebp)
+leal -176(%ebp),%edi
+movl %edi,-176(%ebp)
+leal -180(%ebp),%edi
+movl %edi,-20(%ebp)
+leal -180(%ebp),%edi
+movl %edi,-180(%ebp)
+leal -184(%ebp),%edi
+movl %edi,-24(%ebp)
+leal -184(%ebp),%edi
+movl %edi,-184(%ebp)
+leal -188(%ebp),%edi
+movl %edi,-28(%ebp)
+leal -188(%ebp),%edi
+movl %edi,-188(%ebp)
+leal -192(%ebp),%edi
+movl %edi,-32(%ebp)
+leal -192(%ebp),%edi
+movl %edi,-192(%ebp)
+leal -196(%ebp),%edi
+movl %edi,-36(%ebp)
+leal -196(%ebp),%edi
+movl %edi,-196(%ebp)
+leal -200(%ebp),%edi
+movl %edi,-40(%ebp)
+leal -200(%ebp),%edi
+movl %edi,-200(%ebp)
+leal -204(%ebp),%edi
+movl %edi,-44(%ebp)
+leal -204(%ebp),%edi
+movl %edi,-204(%ebp)
+leal -208(%ebp),%edi
+movl %edi,-48(%ebp)
+leal -208(%ebp),%edi
+movl %edi,-208(%ebp)
+leal -212(%ebp),%edi
+movl %edi,-52(%ebp)
+leal -212(%ebp),%edi
+movl %edi,-212(%ebp)
+leal -216(%ebp),%edi
+movl %edi,-56(%ebp)
+leal -216(%ebp),%edi
+movl %edi,-216(%ebp)
+leal -220(%ebp),%edi
+movl %edi,-60(%ebp)
+leal -220(%ebp),%edi
+movl %edi,-220(%ebp)
+leal -224(%ebp),%edi
+movl %edi,-64(%ebp)
+leal -224(%ebp),%edi
+movl %edi,-224(%ebp)
+leal -240(%ebp),%edi
+movl %edi,-240(%ebp)
+leal -244(%ebp),%edi
+movl %edi,-244(%ebp)
+leal -256(%ebp),%edi
+movl %edi,-256(%ebp)
+leal -228(%ebp),%edi
+movl $4,%esi
+leal -252(%ebp),%ebx
+movl %edi,%edx
+subl %ebx,%edx
+movl %edx,%eax
+movl %esi,%ecx
+cdq
+idivl %ecx
+movl %eax,-152(%ebp)
+leal -232(%ebp),%ebx
+subl %edi,%ebx
+movl %ebx,%eax
+movl %esi,%ecx
+cdq
+idivl %ecx
+movl %eax,-148(%ebp)
+leal -236(%ebp),%edi
+leal -232(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-144(%ebp)
+leal -164(%ebp),%edi
+leal -236(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-140(%ebp)
+leal -168(%ebp),%edi
+leal -164(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-136(%ebp)
+leal -172(%ebp),%edi
+leal -168(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-132(%ebp)
+leal -176(%ebp),%edi
+leal -172(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-128(%ebp)
+leal -180(%ebp),%edi
+leal -176(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-124(%ebp)
+leal -184(%ebp),%edi
+leal -180(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-120(%ebp)
+leal -188(%ebp),%edi
+leal -184(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-116(%ebp)
+leal -192(%ebp),%edi
+leal -188(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-112(%ebp)
+leal -196(%ebp),%edi
+leal -192(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-108(%ebp)
+leal -200(%ebp),%edi
+leal -196(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-104(%ebp)
+leal -204(%ebp),%edi
+leal -200(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-100(%ebp)
+leal -208(%ebp),%edi
+leal -204(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-96(%ebp)
+leal -212(%ebp),%edi
+leal -208(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-92(%ebp)
+leal -216(%ebp),%edi
+leal -212(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-88(%ebp)
+leal -220(%ebp),%edi
+leal -216(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-84(%ebp)
+leal -224(%ebp),%edi
+leal -220(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-80(%ebp)
+leal -240(%ebp),%edi
+leal -224(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-76(%ebp)
+leal -244(%ebp),%edi
+leal -240(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-72(%ebp)
+leal -256(%ebp),%edi
+leal -244(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+movl %eax,-68(%ebp)
+movl -152(%ebp),%edi
+movl %edi,-248(%ebp)
+movl $1,-160(%ebp)
+movl $0,-156(%ebp)
+.LC3159:
+movl -160(%ebp),%edi
+cmpl $1,%edi
+je .LC3165
+cmpl $2,%edi
+je .LC3168
+cmpl $3,%edi
+je .LC3173
+jmp .LC3163
+.LC3165:
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl -248(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+je .LC3164
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl (%esi,%edi,4),%edi
+movl %edi,-264(%ebp)
+movl $2,-160(%ebp)
+movl $1,-260(%ebp)
+jmp .LC3164
+.LC3168:
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl -248(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+jne .LC3169
+movl $3,-160(%ebp)
+jmp .LC3164
+.LC3169:
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl -264(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+jne .LC3171
+incl -260(%ebp)
+jmp .LC3164
+.LC3171:
+movl $4,-160(%ebp)
+jmp .LC3164
+.LC3173:
+movl -156(%ebp),%edi
+leal -152(%ebp),%esi
+movl -248(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+je .LC3164
+movl $4,-160(%ebp)
+.LC3163:
+.LC3164:
+.LC3160:
+incl -156(%ebp)
+cmpl $22,-156(%ebp)
+jl .LC3159
+cmpl $3,-160(%ebp)
+jne .LC3176
+movl $16,%edi
+movl %edi,%eax
+subl -260(%ebp),%eax
+jmp .LC3137
+.LC3176:
+movl $-1,%eax
+.LC3137:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3178:
+.size regp,.Lf3178-regp
+.bss
+.align 4
+.type x3d.3180,@object
+.size x3d.3180,420
+.lcomm x3d.3180,420
+.data
+.align 1
+.type s84er.3181,@object
+s84er.3181:
+.byte 115
+.byte 56
+.byte 52
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s84er.3181,10
+.align 1
+.type qs84.3182,@object
+.size qs84.3182,8
+qs84.3182:
+.byte 115
+.byte 56
+.byte 52
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s84
+.text
+.align 16
+.type s84,@function
+s84:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $172,%esp
+leal qs84.3182,%edi
+movl %edi,-156(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-160(%ebp)
+movl $0,-164(%ebp)
+.LC3183:
+.LC3184:
+movl -160(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-160(%ebp)
+movl -156(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-156(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC3183
+pushl $3
+call fip
+addl $4,%esp
+movl %eax,-168(%ebp)
+movl -168(%ebp),%edi
+cmpl $3,(,%edi)
+je .LC3186
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3188
+pushl $1
+pushl $s84er.3181
+call printf
+addl $8,%esp
+.LC3188:
+incl -164(%ebp)
+.LC3186:
+leal glork,%edi
+movl %edi,-172(%ebp)
+pushl $4
+call *-172(%ebp)
+addl $4,%esp
+cmpl $4,%eax
+je .LC3190
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3192
+pushl $2
+pushl $s84er.3181
+call printf
+addl $8,%esp
+.LC3192:
+addl $2,-164(%ebp)
+.LC3190:
+movl $0,-8(%ebp)
+.LC3194:
+movl -8(%ebp),%edi
+leal -80(%ebp),%esi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstps (%esi,%edi,4)
+movl -8(%ebp),%edi
+leal (,%edi,4),%edi
+leal -148(%ebp),%esi
+leal -80(%ebp),%ebx
+leal (%ebx,%edi),%ebx
+movl %ebx,(%esi,%edi)
+.LC3195:
+incl -8(%ebp)
+cmpl $17,-8(%ebp)
+jl .LC3194
+flds .LC421
+fstps -152(%ebp)
+movl $0,-8(%ebp)
+.LC3198:
+flds -152(%ebp)
+movl -8(%ebp),%edi
+leal -148(%ebp),%esi
+movl (%esi,%edi,4),%edi
+fadds (,%edi)
+fstps -152(%ebp)
+.LC3199:
+incl -8(%ebp)
+cmpl $17,-8(%ebp)
+jl .LC3198
+flds .LC3204
+fcomps -152(%ebp)
+fstsw %ax
+sahf
+je .LC3202
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3205
+pushl $4
+pushl $s84er.3181
+call printf
+addl $8,%esp
+.LC3205:
+addl $4,-164(%ebp)
+.LC3202:
+movl $0,-12(%ebp)
+.LC3207:
+movl $0,-8(%ebp)
+.LC3211:
+movl $0,-4(%ebp)
+.LC3215:
+movl -4(%ebp),%edi
+movl -8(%ebp),%esi
+movl -12(%ebp),%ebx
+imul $28,%esi,%edx
+imul $140,%ebx,%ecx
+leal x3d.3180(%ecx),%ecx
+leal (%ecx,%edx),%edx
+imul $35,%ebx,%ebx
+imul $7,%esi,%esi
+leal (%esi,%ebx),%esi
+leal (%edi,%esi),%esi
+movl %esi,(%edx,%edi,4)
+.LC3216:
+incl -4(%ebp)
+cmpl $7,-4(%ebp)
+jl .LC3215
+.LC3212:
+incl -8(%ebp)
+cmpl $5,-8(%ebp)
+jl .LC3211
+.LC3208:
+incl -12(%ebp)
+cmpl $3,-12(%ebp)
+jl .LC3207
+movl $1,-12(%ebp)
+movl $2,-8(%ebp)
+movl $3,-4(%ebp)
+pushl $0
+pushl $105
+pushl $x3d.3180
+call array
+addl $12,%esp
+movl %eax,%edi
+pushl $35
+pushl $35
+imul $140,-12(%ebp),%esi
+leal x3d.3180(%esi),%esi
+pushl %esi
+call array
+addl $12,%esp
+movl %eax,%esi
+pushl $49
+pushl $7
+imul $28,-8(%ebp),%ebx
+imul $140,-12(%ebp),%edx
+leal x3d.3180(%edx),%edx
+leal (%edx,%ebx),%ebx
+pushl %ebx
+call array
+addl $12,%esp
+leal (%esi,%edi),%edi
+leal (%eax,%edi),%edi
+movl -4(%ebp),%esi
+imul $28,-8(%ebp),%ebx
+imul $140,-12(%ebp),%edx
+leal x3d.3180(%edx),%edx
+leal (%edx,%ebx),%ebx
+movl (%ebx,%esi,4),%esi
+leal (%esi,%edi),%edi
+subl $52,%edi
+cmpl $0,%edi
+je .LC3219
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3221
+pushl $8
+pushl $s84er.3181
+call printf
+addl $8,%esp
+.LC3221:
+addl $8,-164(%ebp)
+.LC3219:
+movl -164(%ebp),%eax
+.LC3179:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3223:
+.size s84,.Lf3223-s84
+.globl array
+.align 16
+.type array,@function
+array:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $0,-4(%ebp)
+jmp .LC3228
+.LC3225:
+movl -4(%ebp),%edi
+movl 20(%ebp),%esi
+movl 28(%ebp),%ebx
+leal (%ebx,%edi),%ebx
+cmpl %ebx,(%esi,%edi,4)
+je .LC3229
+movl $1,%eax
+jmp .LC3224
+.LC3229:
+.LC3226:
+incl -4(%ebp)
+.LC3228:
+movl 24(%ebp),%edi
+cmpl %edi,-4(%ebp)
+jl .LC3225
+movl $0,%eax
+.LC3224:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3231:
+.size array,.Lf3231-array
+.bss
+.align 4
+.type y.3233,@object
+.size y.3233,4
+.lcomm y.3233,4
+.globl fip
+.text
+.align 16
+.type fip,@function
+fip:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+leal y.3233,%edi
+movl 20(%ebp),%esi
+movl %esi,y.3233
+movl %edi,%eax
+.LC3232:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3234:
+.size fip,.Lf3234-fip
+.globl glork
+.align 16
+.type glork,@function
+glork:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 20(%ebp),%eax
+.LC3235:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3236:
+.size glork,.Lf3236-glork
+.data
+.align 1
+.type s85er.3238,@object
+s85er.3238:
+.byte 115
+.byte 56
+.byte 53
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s85er.3238,10
+.align 1
+.type qs85.3239,@object
+.size qs85.3239,8
+qs85.3239:
+.byte 115
+.byte 56
+.byte 53
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 4
+.type type.3247,@object
+type.3247:
+.long .LC434
+.long .LC436
+.long .LC435
+.long .LC437
+.long .LC438
+.long .LC439
+.long .LC440
+.size type.3247,28
+.align 1
+.type aln.3248,@object
+aln.3248:
+.byte 32
+.byte 97
+.byte 108
+.byte 105
+.byte 103
+.byte 110
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 58
+.byte 32
+.byte 0
+.size aln.3248,13
+.globl s85
+.text
+.align 16
+.type s85,@function
+s85:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $404,%esp
+leal qs85.3239,%edi
+movl %edi,-276(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-280(%ebp)
+movl $0,-320(%ebp)
+.LC3252:
+.LC3253:
+movl -280(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-280(%ebp)
+movl -276(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-276(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC3252
+leal -296(%ebp),%edi
+leal -316(%ebp),%esi
+subl %esi,%edi
+cmpl $0,%edi
+jle .LC3263
+leal -292(%ebp),%edi
+leal -296(%ebp),%esi
+subl %esi,%edi
+cmpl $0,%edi
+jle .LC3263
+leal -288(%ebp),%edi
+leal -292(%ebp),%esi
+subl %esi,%edi
+cmpl $0,%edi
+jg .LC3255
+.LC3263:
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3264
+pushl $1
+pushl $s85er.3238
+call printf
+addl $8,%esp
+.LC3264:
+incl -320(%ebp)
+.LC3255:
+leal -355(%ebp),%edi
+leal -356(%ebp),%esi
+subl %esi,%edi
+movl %edi,-272(%ebp)
+leal -358(%ebp),%edi
+leal -360(%ebp),%esi
+subl %esi,%edi
+movl %edi,-268(%ebp)
+leal -364(%ebp),%edi
+leal -368(%ebp),%esi
+subl %esi,%edi
+movl %edi,-264(%ebp)
+leal -372(%ebp),%edi
+leal -376(%ebp),%esi
+subl %esi,%edi
+movl %edi,-260(%ebp)
+leal -380(%ebp),%edi
+leal -384(%ebp),%esi
+subl %esi,%edi
+movl %edi,-256(%ebp)
+leal -388(%ebp),%edi
+leal -392(%ebp),%esi
+subl %esi,%edi
+movl %edi,-252(%ebp)
+leal -400(%ebp),%edi
+leal -404(%ebp),%esi
+subl %esi,%edi
+movl %edi,-248(%ebp)
+movl 20(%ebp),%edi
+cmpl $0,40(%edi)
+je .LC3279
+movl $0,-244(%ebp)
+.LC3281:
+movl -244(%ebp),%edi
+leal (,%edi,4),%edi
+leal -272(%ebp),%esi
+pushl (%esi,%edi)
+pushl $aln.3248
+pushl type.3247(%edi)
+pushl $.LC3285
+call printf
+addl $16,%esp
+.LC3282:
+incl -244(%ebp)
+cmpl $7,-244(%ebp)
+jl .LC3281
+.LC3279:
+movl -284(%ebp),%edi
+orl $56,%edi
+movl %edi,-284(%ebp)
+movl -284(%ebp),%edi
+movl %edi,%esi
+andl $0xfffffffc,%esi
+sall $26,%edi
+sarl $29,%edi
+sall $30,%edi
+sarl $30,%edi
+andl $3,%edi
+orl %edi,%esi
+movl %esi,-284(%ebp)
+movl -284(%ebp),%edi
+movl %edi,%esi
+andl $0xffffffc7,%esi
+sall $30,%edi
+sarl $30,%edi
+sall $29,%edi
+sarl $29,%edi
+leal (,%edi,8),%edi
+andl $56,%edi
+orl %edi,%esi
+movl %esi,-284(%ebp)
+movl -284(%ebp),%edi
+sall $26,%edi
+sarl $29,%edi
+cmpl $3,%edi
+je .LC3286
+movl -284(%ebp),%edi
+sall $26,%edi
+sarl $29,%edi
+cmpl $-1,%edi
+jne .LC3288
+movl 20(%ebp),%edi
+cmpl $0,40(%edi)
+je .LC3289
+pushl $.LC3292
+call printf
+addl $4,%esp
+jmp .LC3289
+.LC3288:
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3293
+pushl $2
+pushl $s85er.3238
+call printf
+addl $8,%esp
+.LC3293:
+addl $2,-320(%ebp)
+.LC3289:
+.LC3286:
+movl -284(%ebp),%edi
+orl $64,%edi
+movl %edi,-284(%ebp)
+movl -284(%ebp),%edi
+sall $25,%edi
+sarl $31,%edi
+cmpl $1,%edi
+je .LC3295
+movl 20(%ebp),%edi
+cmpl $0,40(%edi)
+je .LC3297
+pushl $.LC3299
+call printf
+addl $4,%esp
+.LC3297:
+.LC3295:
+leal -240(%ebp),%edi
+movl %edi,%esi
+subl %edi,%esi
+cmpl $0,%esi
+jne .LC3307
+cmpl $0,%esi
+jne .LC3307
+cmpl $0,%esi
+jne .LC3307
+cmpl $0,%esi
+jne .LC3307
+cmpl $0,%esi
+jne .LC3307
+cmpl $0,%esi
+jne .LC3307
+cmpl $0,%esi
+je .LC3300
+.LC3307:
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3308
+pushl $4
+pushl $s85er.3238
+call printf
+addl $8,%esp
+.LC3308:
+addl $4,-320(%ebp)
+.LC3300:
+jmp .LC3310
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3312
+pushl $8
+pushl $s85er.3238
+call printf
+addl $8,%esp
+.LC3312:
+addl $8,-320(%ebp)
+.LC3310:
+leal -352(%ebp),%edi
+movl %edi,-288(%ebp)
+movb $2,-352(%ebp)
+movl -288(%ebp),%edi
+movsbl (,%edi),%esi
+leal 1(%esi),%esi
+movl %esi,%ebx
+movb %bl,(,%edi)
+movsbl -352(%ebp),%edi
+cmpl $3,%edi
+je .LC3316
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3318
+pushl $16
+pushl $s85er.3238
+call printf
+addl $8,%esp
+.LC3318:
+addl $16,-320(%ebp)
+.LC3316:
+movl -320(%ebp),%eax
+.LC3237:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3320:
+.size s85,.Lf3320-s85
+.data
+.align 1
+.type s86er.3322,@object
+s86er.3322:
+.byte 115
+.byte 56
+.byte 54
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s86er.3322,10
+.align 1
+.type qs86.3323,@object
+.size qs86.3323,8
+qs86.3323:
+.byte 115
+.byte 56
+.byte 54
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.align 4
+.type x.3324,@object
+x.3324:
+.long 1
+.long 3
+.long 5
+.size x.3324,12
+.align 4
+.type pint.3325,@object
+.size pint.3325,4
+pint.3325:
+.long x.3324+8
+.bss
+.align 4
+.type zero.3327,@object
+.size zero.3327,40
+.lcomm zero.3327,40
+.data
+.align 4
+.type y0.3328,@object
+y0.3328:
+.long 1065353216
+.long 1077936128
+.long 1084227584
+.long 1073741824
+.long 1082130432
+.long 1086324736
+.long 1077936128
+.long 1084227584
+.long 1088421888
+.long 0
+.long 0
+.long 0
+.size y0.3328,48
+.align 4
+.type y1.3329,@object
+.size y1.3329,48
+y1.3329:
+.long 1065353216
+.long 1077936128
+.long 1084227584
+.long 1073741824
+.long 1082130432
+.long 1086324736
+.long 1077936128
+.long 1084227584
+.long 1088421888
+.space 12
+.align 4
+.type y2.3330,@object
+.size y2.3330,48
+y2.3330:
+.long 1065353216
+.long 1077936128
+.long 1084227584
+.long 1073741824
+.long 1082130432
+.long 1086324736
+.long 1077936128
+.long 1084227584
+.long 1088421888
+.space 12
+.align 4
+.type y3.3331,@object
+.size y3.3331,48
+y3.3331:
+.long 1065353216
+.space 8
+.long 1073741824
+.space 8
+.long 1077936128
+.space 8
+.long 1082130432
+.space 8
+.globl s86
+.text
+.align 16
+.type s86,@function
+s86:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $40,%esp
+movl pint.3325,%edi
+leal -4(%edi),%edi
+movl %edi,-36(%ebp)
+call one
+movl -36(%ebp),%esi
+leal (%esi,%eax,4),%edi
+movl %edi,-4(%ebp)
+leal qs86.3323,%edi
+movl %edi,-24(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-28(%ebp)
+movl $0,-32(%ebp)
+.LC3332:
+.LC3333:
+movl -28(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-28(%ebp)
+movl -24(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-24(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC3332
+movl pint.3325,%edi
+cmpl $5,(,%edi)
+je .LC3335
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3337
+pushl $1
+pushl $s86er.3322
+call printf
+addl $8,%esp
+.LC3337:
+incl -32(%ebp)
+.LC3335:
+movl -36(%ebp),%edi
+cmpl $3,(,%edi)
+je .LC3339
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3341
+pushl $2
+pushl $s86er.3322
+call printf
+addl $8,%esp
+.LC3341:
+addl $2,-32(%ebp)
+.LC3339:
+movl -4(%ebp),%edi
+cmpl $5,(,%edi)
+je .LC3343
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3345
+pushl $4
+pushl $s86er.3322
+call printf
+addl $8,%esp
+.LC3345:
+addl $4,-32(%ebp)
+.LC3343:
+movl $0,-20(%ebp)
+movl $0,-8(%ebp)
+.LC3347:
+movl -8(%ebp),%edi
+cmpl $0,zero.3327(,%edi,4)
+je .LC3351
+movl $1,-20(%ebp)
+.LC3351:
+.LC3348:
+incl -8(%ebp)
+cmpl $10,-8(%ebp)
+jl .LC3347
+cmpl $0,-20(%ebp)
+je .LC3353
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3355
+pushl $8
+pushl $s86er.3322
+call printf
+addl $8,%esp
+.LC3355:
+addl $8,-32(%ebp)
+.LC3353:
+movl $0,-20(%ebp)
+movl $0,-12(%ebp)
+.LC3357:
+movl $0,-8(%ebp)
+.LC3361:
+imul $3,-12(%ebp),%edi
+movl -8(%ebp),%esi
+leal (%esi,%edi),%edi
+movl %edi,-16(%ebp)
+movl -8(%ebp),%edi
+leal (,%edi,4),%edi
+imul $12,-12(%ebp),%esi
+leal y1.3329(%esi),%ebx
+flds (%ebx,%edi)
+fstps -40(%ebp)
+leal y2.3330(%esi),%esi
+flds (%esi,%edi)
+fcomps -40(%ebp)
+fstsw %ax
+sahf
+jne .LC3367
+movl -16(%ebp),%edi
+flds y0.3328(,%edi,4)
+fcomps -40(%ebp)
+fstsw %ax
+sahf
+je .LC3365
+.LC3367:
+movl $1,-20(%ebp)
+.LC3365:
+.LC3362:
+incl -8(%ebp)
+cmpl $3,-8(%ebp)
+jl .LC3361
+.LC3358:
+incl -12(%ebp)
+cmpl $4,-12(%ebp)
+jl .LC3357
+cmpl $0,-20(%ebp)
+je .LC3368
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3370
+pushl $16
+pushl $s86er.3322
+call printf
+addl $8,%esp
+.LC3370:
+addl $16,-32(%ebp)
+.LC3368:
+movl $0,-20(%ebp)
+movl $0,-8(%ebp)
+.LC3372:
+movl -8(%ebp),%edi
+imul $12,%edi,%esi
+leal 1(%edi),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fcomps y3.3331(%esi)
+fstsw %ax
+sahf
+je .LC3376
+movl $1,-20(%ebp)
+.LC3376:
+.LC3373:
+incl -8(%ebp)
+cmpl $4,-8(%ebp)
+jl .LC3372
+cmpl $0,-20(%ebp)
+je .LC3378
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3380
+pushl $32
+pushl $s86er.3322
+call printf
+addl $8,%esp
+.LC3380:
+addl $32,-32(%ebp)
+.LC3378:
+movl -32(%ebp),%eax
+.LC3321:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3382:
+.size s86,.Lf3382-s86
+.globl one
+.align 16
+.type one,@function
+one:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl $1,%eax
+.LC3383:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3384:
+.size one,.Lf3384-one
+.data
+.align 1
+.type s88er.3386,@object
+s88er.3386:
+.byte 115
+.byte 56
+.byte 56
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s88er.3386,10
+.align 1
+.type qs88.3387,@object
+.size qs88.3387,8
+qs88.3387:
+.byte 115
+.byte 56
+.byte 56
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s88
+.text
+.align 16
+.type s88,@function
+s88:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $44,%esp
+leal qs88.3387,%edi
+movl %edi,-4(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-8(%ebp)
+movl $0,-12(%ebp)
+.LC3389:
+.LC3390:
+movl -8(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-8(%ebp)
+movl -4(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-4(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC3389
+jmp .LC3392
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3394
+pushl $1
+pushl $s88er.3386
+call printf
+addl $8,%esp
+.LC3394:
+incl -12(%ebp)
+.LC3392:
+leal -32(%ebp),%edi
+movl %edi,metricp
+movl $2,-32(%ebp)
+movl metricp,%edi
+movl $3,(,%edi)
+cmpl $3,-32(%ebp)
+je .LC3396
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3398
+pushl $2
+pushl $s88er.3386
+call printf
+addl $8,%esp
+.LC3398:
+addl $2,-12(%ebp)
+.LC3396:
+fldl .LC428
+fstpl -28(%ebp)
+fldl .LC428
+fstpl -20(%ebp)
+leal -28(%ebp),%edi
+movl %edi,-36(%ebp)
+movl -36(%ebp),%edi
+fldl .LC427
+fstpl (,%edi)
+movl -36(%ebp),%edi
+fldl .LC427
+fstpl 8(%edi)
+fldl -28(%ebp)
+faddl -20(%ebp)
+fldl .LC425
+fcompp
+fstsw %ax
+sahf
+je .LC3401
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3404
+pushl $4
+pushl $s88er.3386
+call printf
+addl $8,%esp
+.LC3404:
+addl $4,-12(%ebp)
+.LC3401:
+movl -12(%ebp),%eax
+.LC3385:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3406:
+.size s88,.Lf3406-s88
+.data
+.align 1
+.type s9er.3408,@object
+s9er.3408:
+.byte 115
+.byte 57
+.byte 44
+.byte 101
+.byte 114
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.size s9er.3408,9
+.align 1
+.type qs9.3409,@object
+.size qs9.3409,8
+qs9.3409:
+.byte 115
+.byte 57
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 0
+.globl s9
+.text
+.align 16
+.type s9,@function
+s9:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $36,%esp
+leal qs9.3409,%edi
+movl %edi,-12(%ebp)
+movl 20(%ebp),%edi
+leal 60(%edi),%edi
+movl %edi,-16(%ebp)
+movl $0,-20(%ebp)
+.LC3410:
+.LC3411:
+movl -16(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-16(%ebp)
+movl -12(%ebp),%esi
+leal 1(%esi),%ebx
+movl %ebx,-12(%ebp)
+movb (,%esi),%bl
+movb %bl,(,%edi)
+movsbl %bl,%edi
+cmpl $0,%edi
+jne .LC3410
+movl $0,-8(%ebp)
+movl $0,-4(%ebp)
+.LC3413:
+movl $2,-24(%ebp)
+movl $2,-28(%ebp)
+movl $3,-32(%ebp)
+movl $3,-36(%ebp)
+cmpl $3,-36(%ebp)
+jne .LC3419
+cmpl $3,-32(%ebp)
+je .LC3417
+.LC3419:
+movl $1,-8(%ebp)
+.LC3417:
+cmpl $2,-28(%ebp)
+jne .LC3422
+cmpl $2,-24(%ebp)
+je .LC3420
+.LC3422:
+movl $1,-8(%ebp)
+.LC3420:
+.LC3414:
+incl -4(%ebp)
+cmpl $2,-4(%ebp)
+jl .LC3413
+cmpl $0,-8(%ebp)
+je .LC3427
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3425
+pushl $1
+pushl $s9er.3408
+call printf
+addl $8,%esp
+.LC3425:
+incl -20(%ebp)
+jmp .LC3427
+movl 20(%ebp),%edi
+cmpl $0,44(%edi)
+je .LC3428
+pushl $2
+pushl $s9er.3408
+call printf
+addl $8,%esp
+.LC3428:
+addl $2,-20(%ebp)
+.LC3427:
+movl -20(%ebp),%eax
+.LC3407:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3430:
+.size s9,.Lf3430-s9
+.globl setev
+.align 16
+.type setev,@function
+setev:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl $1066,extvar
+movl $0,%eax
+.LC3431:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3432:
+.size setev,.Lf3432-setev
+.bss
+.globl rfs
+.align 1
+.type rfs,@object
+.size rfs,8
+.comm rfs,8
+.globl crc
+.align 4
+.type crc,@object
+.size crc,4
+.comm crc,4
+.globl rrc
+.align 4
+.type rrc,@object
+.size rrc,4
+.comm rrc,4
+.globl flgl
+.align 4
+.type flgl,@object
+.size flgl,4
+.comm flgl,4
+.globl flgd
+.align 4
+.type flgd,@object
+.size flgd,4
+.comm flgd,4
+.globl flgm
+.align 4
+.type flgm,@object
+.size flgm,4
+.comm flgm,4
+.globl flgs
+.align 4
+.type flgs,@object
+.size flgs,4
+.comm flgs,4
+.globl dprec
+.align 4
+.type dprec,@object
+.size dprec,4
+.comm dprec,4
+.globl fprec
+.align 4
+.type fprec,@object
+.size fprec,4
+.comm fprec,4
+.globl dbits
+.align 4
+.type dbits,@object
+.size dbits,4
+.comm dbits,4
+.globl fbits
+.align 4
+.type fbits,@object
+.size fbits,4
+.comm fbits,4
+.globl ubits
+.align 4
+.type ubits,@object
+.size ubits,4
+.comm ubits,4
+.globl lbits
+.align 4
+.type lbits,@object
+.size lbits,4
+.comm lbits,4
+.globl metricp
+.align 4
+.type metricp,@object
+.size metricp,4
+.comm metricp,4
+.globl extvar
+.align 4
+.type extvar,@object
+.size extvar,4
+.comm extvar,4
+.data
+.align 1
+.LC3299:
+.byte 66
+.byte 101
+.byte 32
+.byte 101
+.byte 115
+.byte 112
+.byte 101
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 101
+.byte 102
+.byte 117
+.byte 108
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 49
+.byte 45
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 102
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC3292:
+.byte 83
+.byte 105
+.byte 103
+.byte 110
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 101
+.byte 110
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 102
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC3285:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 4
+.LC3204:
+.long 1124597760
+.align 1
+.LC3047:
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.LC2495:
+.byte 73
+.byte 110
+.byte 99
+.byte 114
+.byte 101
+.byte 97
+.byte 115
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 97
+.byte 114
+.byte 114
+.byte 97
+.byte 121
+.byte 32
+.byte 101
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 114
+.byte 101
+.byte 97
+.byte 115
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 108
+.byte 111
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 10
+.byte 0
+.align 4
+.LC2378:
+.long 1104150528
+.align 4
+.LC2377:
+.long 0
+.long 1077542912
+.align 4
+.LC1678:
+.long 0
+.long 1074003968
+.align 4
+.LC1503:
+.long 0
+.long 1076101120
+.align 4
+.LC1474:
+.long 1092616192
+.align 4
+.LC1299:
+.long 0
+.long 1074266112
+.align 4
+.LC1270:
+.long 1077936128
+.align 4
+.LC1095:
+.long 0
+.long 1075576832
+.align 4
+.LC1066:
+.long 1088421888
+.align 4
+.LC889:
+.long 0
+.long 1075052544
+.align 4
+.LC860:
+.long 1084227584
+.align 4
+.LC855:
+.long 0
+.long 1105199104
+.align 4
+.LC847:
+.long 1325400064
+.align 1
+.LC669:
+.byte 113
+.byte 117
+.byte 101
+.byte 101
+.byte 112
+.byte 0
+.align 1
+.LC654:
+.byte 10
+.byte 0
+.align 1
+.LC653:
+.byte 37
+.byte 100
+.byte 0
+.align 1
+.LC648:
+.byte 32
+.byte 32
+.byte 32
+.byte 107
+.byte 101
+.byte 121
+.byte 61
+.byte 0
+.align 4
+.LC611:
+.long 0
+.long 1073741824
+.align 4
+.LC551:
+.long 0
+.long 1087276160
+.align 4
+.LC550:
+.long 0
+.long 1079984128
+.align 4
+.LC549:
+.long 1123680256
+.align 4
+.LC544:
+.long 1073741824
+.align 1
+.LC440:
+.byte 100
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 0
+.align 1
+.LC439:
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 0
+.align 1
+.LC438:
+.byte 117
+.byte 110
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 0
+.align 1
+.LC437:
+.byte 108
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.LC436:
+.byte 115
+.byte 104
+.byte 111
+.byte 114
+.byte 116
+.byte 0
+.align 1
+.LC435:
+.byte 105
+.byte 110
+.byte 116
+.byte 0
+.align 1
+.LC434:
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 0
+.align 4
+.LC428:
+.long 0
+.long 0
+.align 4
+.LC427:
+.long 0
+.long 1072693248
+.align 4
+.LC426:
+.long 0
+.long 1074790400
+.align 4
+.LC425:
+.long 0
+.long 1073741824
+.align 4
+.LC421:
+.long 0
+.align 4
+.LC420:
+.long 1065353216
+.align 1
+.LC398:
+.byte 113
+.byte 117
+.byte 101
+.byte 101
+.byte 112
+.byte 33
+.byte 0
+.align 1
+.LC387:
+.byte 10
+.byte 9
+.byte 8
+.byte 13
+.byte 12
+.byte 92
+.byte 39
+.byte 0
+.align 1
+.LC383:
+.byte 46
+.byte 34
+.byte 46
+.byte 0
+.align 1
+.LC370:
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 4
+.LC340:
+.long 0
+.long 1083410432
+.align 1
+.LC201:
+.byte 32
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 97
+.byte 115
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 108
+.byte 111
+.byte 110
+.byte 103
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC200:
+.byte 68
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 99
+.byte 116
+.byte 97
+.byte 108
+.byte 47
+.byte 104
+.byte 101
+.byte 120
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 116
+.byte 97
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 109
+.byte 101
+.byte 115
+.byte 32
+.byte 103
+.byte 105
+.byte 118
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC27:
+.byte 10
+.byte 70
+.byte 97
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC26:
+.byte 10
+.byte 78
+.byte 111
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 100
+.byte 101
+.byte 116
+.byte 101
+.byte 99
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC20:
+.byte 83
+.byte 101
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 37
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 116
+.byte 117
+.byte 114
+.byte 110
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/cvt.1bk b/lcc/x86/linux/tst/cvt.1bk
index 74c79f1..b28b302 100755
--- a/lcc/x86/linux/tst/cvt.1bk
+++ b/lcc/x86/linux/tst/cvt.1bk
@@ -1,11 +1,11 @@
-1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
-2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
-3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
-4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
-5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
-6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
-7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
-8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
-9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
-10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
-11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
+1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
+2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
+3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
+4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
+5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
+6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
+7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
+8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
+9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
+10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
+11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
diff --git a/lcc/x86/linux/tst/cvt.2bk b/lcc/x86/linux/tst/cvt.2bk
index b3ab360..241527d 100755
--- a/lcc/x86/linux/tst/cvt.2bk
+++ b/lcc/x86/linux/tst/cvt.2bk
@@ -1,2 +1,2 @@
-tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
-tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
+tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
+tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
diff --git a/lcc/x86/linux/tst/cvt.sbk b/lcc/x86/linux/tst/cvt.sbk
index 06b427b..fa3c130 100755
--- a/lcc/x86/linux/tst/cvt.sbk
+++ b/lcc/x86/linux/tst/cvt.sbk
@@ -1,792 +1,792 @@
-.globl print
-.text
-.align 16
-.type print,@function
-print:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-fldl D
-subl $8,%esp
-fstpl (%esp)
-fldl d
-subl $8,%esp
-fstpl (%esp)
-flds f
-subl $8,%esp
-fstpl (%esp)
-pushl L
-pushl I
-movw S,%di
-movzwl %di,%edi
-pushl %edi
-movb C,%bl
-movzbl %bl,%edi
-pushl %edi
-pushl l
-pushl i
-movswl s,%edi
-pushl %edi
-movsbl c,%edi
-pushl %edi
-pushl $.LC2
-call printf
-addl $60,%esp
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf3:
-.size print,.Lf3-print
-.globl main
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $296,%esp
-movb $1,c
-movsbl c,%edi
-movl %edi,%esi
-movw %si,s
-movl %edi,i
-movl %edi,l
-movl %edi,%esi
-movl %esi,%ebx
-movb %bl,C
-movl %esi,%ebx
-movw %bx,S
-movl %esi,I
-movl %esi,L
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstps f
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstpl -8(%ebp)
-fldl -8(%ebp)
-fstpl d
-fldl -8(%ebp)
-fstpl D
-call print
-movw $2,s
-movswl s,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,i
-movl %edi,l
-movl %edi,%esi
-movl %esi,%ebx
-movb %bl,C
-movl %esi,%ebx
-movw %bx,S
-movl %esi,I
-movl %esi,L
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstps f
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstpl -16(%ebp)
-fldl -16(%ebp)
-fstpl d
-fldl -16(%ebp)
-fstpl D
-call print
-movl $3,i
-movl i,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,%esi
-movw %si,s
-movl %edi,l
-movl %edi,%esi
-movl %esi,%ebx
-movb %bl,C
-movl %esi,%ebx
-movw %bx,S
-movl %esi,I
-movl %esi,L
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstps f
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstpl -24(%ebp)
-fldl -24(%ebp)
-fstpl d
-fldl -24(%ebp)
-fstpl D
-call print
-movl $4,l
-movl l,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,%esi
-movw %si,s
-movl %edi,i
-movl %edi,%esi
-movl %esi,%ebx
-movb %bl,C
-movl %esi,%ebx
-movw %bx,S
-movl %esi,I
-movl %esi,L
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstps f
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstpl -32(%ebp)
-fldl -32(%ebp)
-fstpl d
-fldl -32(%ebp)
-fstpl D
-call print
-movb $5,C
-movb C,%bl
-movzbl %bl,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,%esi
-movw %si,s
-movl %edi,i
-movl %edi,l
-movl %edi,%esi
-movl %esi,%ebx
-movw %bx,S
-movl %esi,I
-movl %esi,L
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstps f
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstpl -40(%ebp)
-fldl -40(%ebp)
-fstpl d
-fldl -40(%ebp)
-fstpl D
-call print
-movw $6,S
-movw S,%di
-movzwl %di,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,%esi
-movw %si,s
-movl %edi,i
-movl %edi,l
-movl %edi,%esi
-movl %esi,%ebx
-movb %bl,C
-movl %esi,I
-movl %esi,L
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstps f
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fstpl -48(%ebp)
-fldl -48(%ebp)
-fstpl d
-fldl -48(%ebp)
-fstpl D
-call print
-movl $7,I
-movl I,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,%ebx
-movw %bx,s
-movl %edi,i
-movl %edi,l
-movl %edi,%ebx
-movb %bl,C
-movl %edi,%esi
-movw %si,S
-movl %edi,L
-fldl .LC5
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fstpl -56(%ebp)
-fldl -56(%ebp)
-fstps f
-fldl -56(%ebp)
-fstpl d
-fldl -56(%ebp)
-fstpl D
-call print
-movl $8,L
-movl L,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,%ebx
-movw %bx,s
-movl %edi,i
-movl %edi,l
-movl %edi,%ebx
-movb %bl,C
-movl %edi,%esi
-movw %si,S
-movw S,%si
-movzwl %si,%esi
-movl %esi,I
-fldl .LC5
-movl %edi,%esi
-shrl $1,%esi
-pushl %esi
-fildl (%esp)
-addl $4,%esp
-fmulp %st(1),%st
-andl $1,%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-faddp %st(1),%st
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fstps f
-fldl -64(%ebp)
-fstpl d
-fldl -64(%ebp)
-fstpl D
-call print
-flds .LC6
-fstps f
-flds f
-fstps -84(%ebp)
-flds -84(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,%esi
-movw %si,s
-movl %edi,i
-movl %edi,l
-flds .LC10
-fcomps -84(%ebp)
-fstsw %ax
-sahf
-ja .LC8
-flds -84(%ebp)
-fsubs .LC10
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-68(%ebp)
-jmp .LC9
-.LC8:
-flds -84(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-68(%ebp)
-.LC9:
-movl -68(%ebp),%edi
-movl %edi,%ebx
-movb %bl,C
-flds .LC10
-fcomps f
-fstsw %ax
-sahf
-ja .LC12
-flds f
-fsubs .LC10
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-72(%ebp)
-jmp .LC13
-.LC12:
-flds f
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-72(%ebp)
-.LC13:
-movl -72(%ebp),%edi
-movw %di,S
-flds .LC10
-fcomps f
-fstsw %ax
-sahf
-ja .LC15
-flds f
-fsubs .LC10
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-76(%ebp)
-jmp .LC16
-.LC15:
-flds f
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-76(%ebp)
-.LC16:
-movl -76(%ebp),%edi
-movl %edi,I
-flds .LC10
-fcomps f
-fstsw %ax
-sahf
-ja .LC18
-flds f
-fsubs .LC10
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-80(%ebp)
-jmp .LC19
-.LC18:
-flds f
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-80(%ebp)
-.LC19:
-movl -80(%ebp),%edi
-movl %edi,L
-flds f
-fstpl -120(%ebp)
-fldl -120(%ebp)
-fstpl d
-fldl -120(%ebp)
-fstpl D
-call print
-fldl .LC20
-fstpl d
-fldl d
-fstpl -144(%ebp)
-fldl -144(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,%esi
-movw %si,s
-movl %edi,i
-movl %edi,l
-fldl .LC24
-fcompl -144(%ebp)
-fstsw %ax
-sahf
-ja .LC22
-fldl -144(%ebp)
-fsubl .LC24
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-124(%ebp)
-jmp .LC23
-.LC22:
-fldl -144(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-124(%ebp)
-.LC23:
-movl -124(%ebp),%edi
-movl %edi,%ebx
-movb %bl,C
-fldl .LC24
-fcompl d
-fstsw %ax
-sahf
-ja .LC26
-fldl d
-fsubl .LC24
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-128(%ebp)
-jmp .LC27
-.LC26:
-fldl d
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-128(%ebp)
-.LC27:
-movl -128(%ebp),%edi
-movw %di,S
-fldl .LC24
-fcompl d
-fstsw %ax
-sahf
-ja .LC29
-fldl d
-fsubl .LC24
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-132(%ebp)
-jmp .LC30
-.LC29:
-fldl d
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-132(%ebp)
-.LC30:
-movl -132(%ebp),%edi
-movl %edi,I
-fldl .LC24
-fcompl d
-fstsw %ax
-sahf
-ja .LC32
-fldl d
-fsubl .LC24
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-136(%ebp)
-jmp .LC33
-.LC32:
-fldl d
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-136(%ebp)
-.LC33:
-movl -136(%ebp),%edi
-movl %edi,L
-fldl d
-fstps f
-fldl d
-fstpl D
-call print
-fldl .LC34
-fstpl D
-fldl D
-fstpl -232(%ebp)
-fldl -232(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,%ebx
-movb %bl,c
-movl %edi,%esi
-movw %si,s
-movl %edi,i
-movl %edi,l
-fldl .LC38
-fcompl -232(%ebp)
-fstsw %ax
-sahf
-ja .LC36
-fldl -232(%ebp)
-fsubl .LC38
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-212(%ebp)
-jmp .LC37
-.LC36:
-fldl -232(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-212(%ebp)
-.LC37:
-movl -212(%ebp),%edi
-movl %edi,%ebx
-movb %bl,C
-fldl .LC38
-fcompl D
-fstsw %ax
-sahf
-ja .LC40
-fldl D
-fsubl .LC38
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-216(%ebp)
-jmp .LC41
-.LC40:
-fldl D
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-216(%ebp)
-.LC41:
-movl -216(%ebp),%edi
-movw %di,S
-fldl .LC38
-fcompl D
-fstsw %ax
-sahf
-ja .LC43
-fldl D
-fsubl .LC38
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-220(%ebp)
-jmp .LC44
-.LC43:
-fldl D
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-220(%ebp)
-.LC44:
-movl -220(%ebp),%edi
-movl %edi,I
-fldl .LC38
-fcompl D
-fstsw %ax
-sahf
-ja .LC46
-fldl D
-fsubl .LC38
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-leal 0x80000000(%edi),%edi
-movl %edi,-224(%ebp)
-jmp .LC47
-.LC46:
-fldl D
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,%edi
-movl %edi,-224(%ebp)
-.LC47:
-movl -224(%ebp),%edi
-movl %edi,L
-fldl D
-fstps f
-fldl D
-fstpl d
-call print
-movl $0,p
-movl $0,p
-movl $0,p
-movl $0,p
-movl P,%edi
-movl %edi,p
-movl $0,P
-movl $0,P
-movl $0,P
-movl $0,P
-movl p,%edi
-movl %edi,P
-movl $0,%eax
-.LC4:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf48:
-.size main,.Lf48-main
-.bss
-.globl P
-.align 4
-.type P,@object
-.size P,4
-.comm P,4
-.globl p
-.align 4
-.type p,@object
-.size p,4
-.comm p,4
-.globl D
-.align 4
-.type D,@object
-.size D,8
-.comm D,8
-.globl d
-.align 4
-.type d,@object
-.size d,8
-.comm d,8
-.globl f
-.align 4
-.type f,@object
-.size f,4
-.comm f,4
-.globl L
-.align 4
-.type L,@object
-.size L,4
-.comm L,4
-.globl I
-.align 4
-.type I,@object
-.size I,4
-.comm I,4
-.globl S
-.align 2
-.type S,@object
-.size S,2
-.comm S,2
-.globl C
-.align 1
-.type C,@object
-.size C,1
-.comm C,1
-.globl l
-.align 4
-.type l,@object
-.size l,4
-.comm l,4
-.globl i
-.align 4
-.type i,@object
-.size i,4
-.comm i,4
-.globl s
-.align 2
-.type s,@object
-.size s,2
-.comm s,2
-.globl c
-.align 1
-.type c,@object
-.size c,1
-.comm c,1
-.data
-.align 4
-.LC38:
-.long 0
-.long 1105199104
-.align 4
-.LC34:
-.long 0
-.long 1076232192
-.align 4
-.LC24:
-.long 0
-.long 1105199104
-.align 4
-.LC20:
-.long 0
-.long 1076101120
-.align 4
-.LC10:
-.long 1325400064
-.align 4
-.LC6:
-.long 1091567616
-.align 4
-.LC5:
-.long 0
-.long 1073741824
-.align 1
-.LC2:
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 108
-.byte 100
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 117
-.byte 32
-.byte 37
-.byte 108
-.byte 117
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 37
-.byte 108
-.byte 102
-.byte 10
-.byte 0
-.text
-.ident "LCC: 4.1"
+.globl print
+.text
+.align 16
+.type print,@function
+print:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+fldl D
+subl $8,%esp
+fstpl (%esp)
+fldl d
+subl $8,%esp
+fstpl (%esp)
+flds f
+subl $8,%esp
+fstpl (%esp)
+pushl L
+pushl I
+movw S,%di
+movzwl %di,%edi
+pushl %edi
+movb C,%bl
+movzbl %bl,%edi
+pushl %edi
+pushl l
+pushl i
+movswl s,%edi
+pushl %edi
+movsbl c,%edi
+pushl %edi
+pushl $.LC2
+call printf
+addl $60,%esp
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf3:
+.size print,.Lf3-print
+.globl main
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $296,%esp
+movb $1,c
+movsbl c,%edi
+movl %edi,%esi
+movw %si,s
+movl %edi,i
+movl %edi,l
+movl %edi,%esi
+movl %esi,%ebx
+movb %bl,C
+movl %esi,%ebx
+movw %bx,S
+movl %esi,I
+movl %esi,L
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstps f
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstpl -8(%ebp)
+fldl -8(%ebp)
+fstpl d
+fldl -8(%ebp)
+fstpl D
+call print
+movw $2,s
+movswl s,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,i
+movl %edi,l
+movl %edi,%esi
+movl %esi,%ebx
+movb %bl,C
+movl %esi,%ebx
+movw %bx,S
+movl %esi,I
+movl %esi,L
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstps f
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstpl -16(%ebp)
+fldl -16(%ebp)
+fstpl d
+fldl -16(%ebp)
+fstpl D
+call print
+movl $3,i
+movl i,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,%esi
+movw %si,s
+movl %edi,l
+movl %edi,%esi
+movl %esi,%ebx
+movb %bl,C
+movl %esi,%ebx
+movw %bx,S
+movl %esi,I
+movl %esi,L
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstps f
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstpl -24(%ebp)
+fldl -24(%ebp)
+fstpl d
+fldl -24(%ebp)
+fstpl D
+call print
+movl $4,l
+movl l,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,%esi
+movw %si,s
+movl %edi,i
+movl %edi,%esi
+movl %esi,%ebx
+movb %bl,C
+movl %esi,%ebx
+movw %bx,S
+movl %esi,I
+movl %esi,L
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstps f
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstpl -32(%ebp)
+fldl -32(%ebp)
+fstpl d
+fldl -32(%ebp)
+fstpl D
+call print
+movb $5,C
+movb C,%bl
+movzbl %bl,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,%esi
+movw %si,s
+movl %edi,i
+movl %edi,l
+movl %edi,%esi
+movl %esi,%ebx
+movw %bx,S
+movl %esi,I
+movl %esi,L
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstps f
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstpl -40(%ebp)
+fldl -40(%ebp)
+fstpl d
+fldl -40(%ebp)
+fstpl D
+call print
+movw $6,S
+movw S,%di
+movzwl %di,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,%esi
+movw %si,s
+movl %edi,i
+movl %edi,l
+movl %edi,%esi
+movl %esi,%ebx
+movb %bl,C
+movl %esi,I
+movl %esi,L
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstps f
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fstpl -48(%ebp)
+fldl -48(%ebp)
+fstpl d
+fldl -48(%ebp)
+fstpl D
+call print
+movl $7,I
+movl I,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,%ebx
+movw %bx,s
+movl %edi,i
+movl %edi,l
+movl %edi,%ebx
+movb %bl,C
+movl %edi,%esi
+movw %si,S
+movl %edi,L
+fldl .LC5
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fstpl -56(%ebp)
+fldl -56(%ebp)
+fstps f
+fldl -56(%ebp)
+fstpl d
+fldl -56(%ebp)
+fstpl D
+call print
+movl $8,L
+movl L,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,%ebx
+movw %bx,s
+movl %edi,i
+movl %edi,l
+movl %edi,%ebx
+movb %bl,C
+movl %edi,%esi
+movw %si,S
+movw S,%si
+movzwl %si,%esi
+movl %esi,I
+fldl .LC5
+movl %edi,%esi
+shrl $1,%esi
+pushl %esi
+fildl (%esp)
+addl $4,%esp
+fmulp %st(1),%st
+andl $1,%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+faddp %st(1),%st
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fstps f
+fldl -64(%ebp)
+fstpl d
+fldl -64(%ebp)
+fstpl D
+call print
+flds .LC6
+fstps f
+flds f
+fstps -84(%ebp)
+flds -84(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,%esi
+movw %si,s
+movl %edi,i
+movl %edi,l
+flds .LC10
+fcomps -84(%ebp)
+fstsw %ax
+sahf
+ja .LC8
+flds -84(%ebp)
+fsubs .LC10
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-68(%ebp)
+jmp .LC9
+.LC8:
+flds -84(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-68(%ebp)
+.LC9:
+movl -68(%ebp),%edi
+movl %edi,%ebx
+movb %bl,C
+flds .LC10
+fcomps f
+fstsw %ax
+sahf
+ja .LC12
+flds f
+fsubs .LC10
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-72(%ebp)
+jmp .LC13
+.LC12:
+flds f
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-72(%ebp)
+.LC13:
+movl -72(%ebp),%edi
+movw %di,S
+flds .LC10
+fcomps f
+fstsw %ax
+sahf
+ja .LC15
+flds f
+fsubs .LC10
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-76(%ebp)
+jmp .LC16
+.LC15:
+flds f
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-76(%ebp)
+.LC16:
+movl -76(%ebp),%edi
+movl %edi,I
+flds .LC10
+fcomps f
+fstsw %ax
+sahf
+ja .LC18
+flds f
+fsubs .LC10
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-80(%ebp)
+jmp .LC19
+.LC18:
+flds f
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-80(%ebp)
+.LC19:
+movl -80(%ebp),%edi
+movl %edi,L
+flds f
+fstpl -120(%ebp)
+fldl -120(%ebp)
+fstpl d
+fldl -120(%ebp)
+fstpl D
+call print
+fldl .LC20
+fstpl d
+fldl d
+fstpl -144(%ebp)
+fldl -144(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,%esi
+movw %si,s
+movl %edi,i
+movl %edi,l
+fldl .LC24
+fcompl -144(%ebp)
+fstsw %ax
+sahf
+ja .LC22
+fldl -144(%ebp)
+fsubl .LC24
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-124(%ebp)
+jmp .LC23
+.LC22:
+fldl -144(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-124(%ebp)
+.LC23:
+movl -124(%ebp),%edi
+movl %edi,%ebx
+movb %bl,C
+fldl .LC24
+fcompl d
+fstsw %ax
+sahf
+ja .LC26
+fldl d
+fsubl .LC24
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-128(%ebp)
+jmp .LC27
+.LC26:
+fldl d
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-128(%ebp)
+.LC27:
+movl -128(%ebp),%edi
+movw %di,S
+fldl .LC24
+fcompl d
+fstsw %ax
+sahf
+ja .LC29
+fldl d
+fsubl .LC24
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-132(%ebp)
+jmp .LC30
+.LC29:
+fldl d
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-132(%ebp)
+.LC30:
+movl -132(%ebp),%edi
+movl %edi,I
+fldl .LC24
+fcompl d
+fstsw %ax
+sahf
+ja .LC32
+fldl d
+fsubl .LC24
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-136(%ebp)
+jmp .LC33
+.LC32:
+fldl d
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-136(%ebp)
+.LC33:
+movl -136(%ebp),%edi
+movl %edi,L
+fldl d
+fstps f
+fldl d
+fstpl D
+call print
+fldl .LC34
+fstpl D
+fldl D
+fstpl -232(%ebp)
+fldl -232(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,%ebx
+movb %bl,c
+movl %edi,%esi
+movw %si,s
+movl %edi,i
+movl %edi,l
+fldl .LC38
+fcompl -232(%ebp)
+fstsw %ax
+sahf
+ja .LC36
+fldl -232(%ebp)
+fsubl .LC38
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-212(%ebp)
+jmp .LC37
+.LC36:
+fldl -232(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-212(%ebp)
+.LC37:
+movl -212(%ebp),%edi
+movl %edi,%ebx
+movb %bl,C
+fldl .LC38
+fcompl D
+fstsw %ax
+sahf
+ja .LC40
+fldl D
+fsubl .LC38
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-216(%ebp)
+jmp .LC41
+.LC40:
+fldl D
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-216(%ebp)
+.LC41:
+movl -216(%ebp),%edi
+movw %di,S
+fldl .LC38
+fcompl D
+fstsw %ax
+sahf
+ja .LC43
+fldl D
+fsubl .LC38
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-220(%ebp)
+jmp .LC44
+.LC43:
+fldl D
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-220(%ebp)
+.LC44:
+movl -220(%ebp),%edi
+movl %edi,I
+fldl .LC38
+fcompl D
+fstsw %ax
+sahf
+ja .LC46
+fldl D
+fsubl .LC38
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+leal 0x80000000(%edi),%edi
+movl %edi,-224(%ebp)
+jmp .LC47
+.LC46:
+fldl D
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,%edi
+movl %edi,-224(%ebp)
+.LC47:
+movl -224(%ebp),%edi
+movl %edi,L
+fldl D
+fstps f
+fldl D
+fstpl d
+call print
+movl $0,p
+movl $0,p
+movl $0,p
+movl $0,p
+movl P,%edi
+movl %edi,p
+movl $0,P
+movl $0,P
+movl $0,P
+movl $0,P
+movl p,%edi
+movl %edi,P
+movl $0,%eax
+.LC4:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf48:
+.size main,.Lf48-main
+.bss
+.globl P
+.align 4
+.type P,@object
+.size P,4
+.comm P,4
+.globl p
+.align 4
+.type p,@object
+.size p,4
+.comm p,4
+.globl D
+.align 4
+.type D,@object
+.size D,8
+.comm D,8
+.globl d
+.align 4
+.type d,@object
+.size d,8
+.comm d,8
+.globl f
+.align 4
+.type f,@object
+.size f,4
+.comm f,4
+.globl L
+.align 4
+.type L,@object
+.size L,4
+.comm L,4
+.globl I
+.align 4
+.type I,@object
+.size I,4
+.comm I,4
+.globl S
+.align 2
+.type S,@object
+.size S,2
+.comm S,2
+.globl C
+.align 1
+.type C,@object
+.size C,1
+.comm C,1
+.globl l
+.align 4
+.type l,@object
+.size l,4
+.comm l,4
+.globl i
+.align 4
+.type i,@object
+.size i,4
+.comm i,4
+.globl s
+.align 2
+.type s,@object
+.size s,2
+.comm s,2
+.globl c
+.align 1
+.type c,@object
+.size c,1
+.comm c,1
+.data
+.align 4
+.LC38:
+.long 0
+.long 1105199104
+.align 4
+.LC34:
+.long 0
+.long 1076232192
+.align 4
+.LC24:
+.long 0
+.long 1105199104
+.align 4
+.LC20:
+.long 0
+.long 1076101120
+.align 4
+.LC10:
+.long 1325400064
+.align 4
+.LC6:
+.long 1091567616
+.align 4
+.LC5:
+.long 0
+.long 1073741824
+.align 1
+.LC2:
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 108
+.byte 100
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 117
+.byte 32
+.byte 37
+.byte 108
+.byte 117
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 37
+.byte 108
+.byte 102
+.byte 10
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/fields.1bk b/lcc/x86/linux/tst/fields.1bk
index f30b13f..56fdeb9 100755
--- a/lcc/x86/linux/tst/fields.1bk
+++ b/lcc/x86/linux/tst/fields.1bk
@@ -1,5 +1,5 @@
-x = 1 2 3 4 -3 6
-y = 3 8 9
-x = 1 2 3 0 0 6
-y = 2 8 16
-p->a = 0x3, p->b = 0xf
+x = 1 2 3 4 -3 6
+y = 3 8 9
+x = 1 2 3 0 0 6
+y = 2 8 16
+p->a = 0x3, p->b = 0xf
diff --git a/lcc/x86/linux/tst/fields.2bk b/lcc/x86/linux/tst/fields.2bk
index e689d78..51e1736 100755
--- a/lcc/x86/linux/tst/fields.2bk
+++ b/lcc/x86/linux/tst/fields.2bk
@@ -1,4 +1,4 @@
-tst/fields.c:6: warning: initializer exceeds bit-field width
-tst/fields.c:8: warning: initializer exceeds bit-field width
-tst/fields.c:30: warning: missing return value
-tst/fields.c:34: warning: missing return value
+tst/fields.c:6: warning: initializer exceeds bit-field width
+tst/fields.c:8: warning: initializer exceeds bit-field width
+tst/fields.c:30: warning: missing return value
+tst/fields.c:34: warning: missing return value
diff --git a/lcc/x86/linux/tst/fields.sbk b/lcc/x86/linux/tst/fields.sbk
index 44607ae..4664f80 100755
--- a/lcc/x86/linux/tst/fields.sbk
+++ b/lcc/x86/linux/tst/fields.sbk
@@ -1,321 +1,321 @@
-.data
-.globl x
-.align 4
-.type x,@object
-.size x,16
-x:
-.long 1
-.byte 2
-.space 3
-.byte 3
-.byte 64
-.space 2
-.byte 80
-.byte 6
-.space 2
-.globl i
-.align 4
-.type i,@object
-.size i,4
-i:
-.long 16
-.globl y
-.align 4
-.type y,@object
-.size y,8
-y:
-.byte 35
-.space 3
-.byte 9
-.byte 0
-.byte 0
-.byte 0
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movsbl x+13,%edi
-pushl %edi
-movl x+12,%edi
-sall $25,%edi
-sarl $29,%edi
-pushl %edi
-movl x+8,%edi
-sall $16,%edi
-sarl $28,%edi
-pushl %edi
-movl x+8,%edi
-sall $20,%edi
-sarl $20,%edi
-pushl %edi
-movsbl x+4,%edi
-pushl %edi
-pushl x
-pushl $.LC4
-call printf
-addl $28,%esp
-pushl y+4
-movl y,%edi
-movl %edi,%esi
-shrl $2,%esi
-andl $15,%esi
-pushl %esi
-andl $3,%edi
-pushl %edi
-pushl $.LC10
-call printf
-addl $16,%esp
-movl x+8,%edi
-andl $0xffff0fff,%edi
-movl i,%esi
-sall $28,%esi
-sarl $28,%esi
-shll $12,%esi
-andl $0xf000,%esi
-orl %esi,%edi
-movl %edi,x+8
-movl x+12,%edi
-andl $0xffffff8f,%edi
-movl %edi,x+12
-movsbl x+13,%edi
-pushl %edi
-movl x+12,%edi
-sall $25,%edi
-sarl $29,%edi
-pushl %edi
-movl x+8,%edi
-sall $16,%edi
-sarl $28,%edi
-pushl %edi
-movl x+8,%edi
-sall $20,%edi
-sarl $20,%edi
-pushl %edi
-movsbl x+4,%edi
-pushl %edi
-pushl x
-pushl $.LC4
-call printf
-addl $28,%esp
-movl y,%edi
-andl $0xfffffffc,%edi
-orl $2,%edi
-movl %edi,y
-movl i,%edi
-movl %edi,y+4
-pushl y+4
-movl y,%edi
-movl %edi,%esi
-shrl $2,%esi
-andl $15,%esi
-pushl %esi
-andl $3,%edi
-pushl %edi
-pushl $.LC10
-call printf
-addl $16,%esp
-pushl $x
-call f2
-addl $4,%esp
-movl $0,%eax
-.LC3:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf21:
-.size main,.Lf21-main
-.globl f1
-.align 16
-.type f1,@function
-f1:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 20(%ebp),%edi
-andl $0xffffffc3,(,%edi)
-movl 20(%ebp),%edi
-movl (,%edi),%esi
-andl $0xfffffffc,%esi
-movl $0,%ebx
-andl $3,%ebx
-andl $3,%ebx
-orl %ebx,%esi
-movl %esi,(,%edi)
-movl 20(%ebp),%edi
-movl (,%edi),%edi
-andl $60,%edi
-cmpl $0,%edi
-je .LC23
-pushl $.LC25
-call printf
-addl $4,%esp
-.LC23:
-movl 20(%ebp),%edi
-orl $3,(,%edi)
-movl 20(%ebp),%edi
-orl $60,(,%edi)
-movl 20(%ebp),%edi
-movl (,%edi),%edi
-movl %edi,%esi
-shrl $2,%esi
-andl $15,%esi
-pushl %esi
-andl $3,%edi
-pushl %edi
-pushl $.LC26
-call printf
-addl $12,%esp
-movl $0,%eax
-.LC22:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf27:
-.size f1,.Lf27-f1
-.globl f2
-.align 16
-.type f2,@function
-f2:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-cmpl $0,i
-jne .LC30
-movl $1,-4(%ebp)
-jmp .LC31
-.LC30:
-movl $0,-4(%ebp)
-.LC31:
-movl 20(%ebp),%edi
-movl (,%edi),%esi
-andl $0xfffffffc,%esi
-movl -4(%ebp),%ebx
-andl $3,%ebx
-andl $3,%ebx
-orl %ebx,%esi
-movl %esi,(,%edi)
-movl 20(%ebp),%edi
-pushl %edi
-call f1
-addl $4,%esp
-movl (,%edi),%esi
-andl $0xffffffc3,%esi
-movl $0,%ebx
-andl $15,%ebx
-leal (,%ebx,4),%ebx
-andl $60,%ebx
-orl %ebx,%esi
-movl %esi,(,%edi)
-movl $0,%eax
-.LC28:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf32:
-.size f2,.Lf32-f2
-.data
-.align 1
-.LC26:
-.byte 112
-.byte 45
-.byte 62
-.byte 97
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 44
-.byte 32
-.byte 112
-.byte 45
-.byte 62
-.byte 98
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 1
-.LC25:
-.byte 112
-.byte 45
-.byte 62
-.byte 98
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC10:
-.byte 121
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC4:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.text
-.ident "LCC: 4.1"
+.data
+.globl x
+.align 4
+.type x,@object
+.size x,16
+x:
+.long 1
+.byte 2
+.space 3
+.byte 3
+.byte 64
+.space 2
+.byte 80
+.byte 6
+.space 2
+.globl i
+.align 4
+.type i,@object
+.size i,4
+i:
+.long 16
+.globl y
+.align 4
+.type y,@object
+.size y,8
+y:
+.byte 35
+.space 3
+.byte 9
+.byte 0
+.byte 0
+.byte 0
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movsbl x+13,%edi
+pushl %edi
+movl x+12,%edi
+sall $25,%edi
+sarl $29,%edi
+pushl %edi
+movl x+8,%edi
+sall $16,%edi
+sarl $28,%edi
+pushl %edi
+movl x+8,%edi
+sall $20,%edi
+sarl $20,%edi
+pushl %edi
+movsbl x+4,%edi
+pushl %edi
+pushl x
+pushl $.LC4
+call printf
+addl $28,%esp
+pushl y+4
+movl y,%edi
+movl %edi,%esi
+shrl $2,%esi
+andl $15,%esi
+pushl %esi
+andl $3,%edi
+pushl %edi
+pushl $.LC10
+call printf
+addl $16,%esp
+movl x+8,%edi
+andl $0xffff0fff,%edi
+movl i,%esi
+sall $28,%esi
+sarl $28,%esi
+shll $12,%esi
+andl $0xf000,%esi
+orl %esi,%edi
+movl %edi,x+8
+movl x+12,%edi
+andl $0xffffff8f,%edi
+movl %edi,x+12
+movsbl x+13,%edi
+pushl %edi
+movl x+12,%edi
+sall $25,%edi
+sarl $29,%edi
+pushl %edi
+movl x+8,%edi
+sall $16,%edi
+sarl $28,%edi
+pushl %edi
+movl x+8,%edi
+sall $20,%edi
+sarl $20,%edi
+pushl %edi
+movsbl x+4,%edi
+pushl %edi
+pushl x
+pushl $.LC4
+call printf
+addl $28,%esp
+movl y,%edi
+andl $0xfffffffc,%edi
+orl $2,%edi
+movl %edi,y
+movl i,%edi
+movl %edi,y+4
+pushl y+4
+movl y,%edi
+movl %edi,%esi
+shrl $2,%esi
+andl $15,%esi
+pushl %esi
+andl $3,%edi
+pushl %edi
+pushl $.LC10
+call printf
+addl $16,%esp
+pushl $x
+call f2
+addl $4,%esp
+movl $0,%eax
+.LC3:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf21:
+.size main,.Lf21-main
+.globl f1
+.align 16
+.type f1,@function
+f1:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 20(%ebp),%edi
+andl $0xffffffc3,(,%edi)
+movl 20(%ebp),%edi
+movl (,%edi),%esi
+andl $0xfffffffc,%esi
+movl $0,%ebx
+andl $3,%ebx
+andl $3,%ebx
+orl %ebx,%esi
+movl %esi,(,%edi)
+movl 20(%ebp),%edi
+movl (,%edi),%edi
+andl $60,%edi
+cmpl $0,%edi
+je .LC23
+pushl $.LC25
+call printf
+addl $4,%esp
+.LC23:
+movl 20(%ebp),%edi
+orl $3,(,%edi)
+movl 20(%ebp),%edi
+orl $60,(,%edi)
+movl 20(%ebp),%edi
+movl (,%edi),%edi
+movl %edi,%esi
+shrl $2,%esi
+andl $15,%esi
+pushl %esi
+andl $3,%edi
+pushl %edi
+pushl $.LC26
+call printf
+addl $12,%esp
+movl $0,%eax
+.LC22:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf27:
+.size f1,.Lf27-f1
+.globl f2
+.align 16
+.type f2,@function
+f2:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+cmpl $0,i
+jne .LC30
+movl $1,-4(%ebp)
+jmp .LC31
+.LC30:
+movl $0,-4(%ebp)
+.LC31:
+movl 20(%ebp),%edi
+movl (,%edi),%esi
+andl $0xfffffffc,%esi
+movl -4(%ebp),%ebx
+andl $3,%ebx
+andl $3,%ebx
+orl %ebx,%esi
+movl %esi,(,%edi)
+movl 20(%ebp),%edi
+pushl %edi
+call f1
+addl $4,%esp
+movl (,%edi),%esi
+andl $0xffffffc3,%esi
+movl $0,%ebx
+andl $15,%ebx
+leal (,%ebx,4),%ebx
+andl $60,%ebx
+orl %ebx,%esi
+movl %esi,(,%edi)
+movl $0,%eax
+.LC28:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf32:
+.size f2,.Lf32-f2
+.data
+.align 1
+.LC26:
+.byte 112
+.byte 45
+.byte 62
+.byte 97
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 44
+.byte 32
+.byte 112
+.byte 45
+.byte 62
+.byte 98
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 1
+.LC25:
+.byte 112
+.byte 45
+.byte 62
+.byte 98
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC10:
+.byte 121
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC4:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/front.2bk b/lcc/x86/linux/tst/front.2bk
index 841e6a5..bbd390a 100755
--- a/lcc/x86/linux/tst/front.2bk
+++ b/lcc/x86/linux/tst/front.2bk
@@ -1,29 +1,29 @@
-tst/front.c:3: warning: missing return value
-tst/front.c:10: warning: missing return value
-tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
-tst/front.c:21: warning: missing return value
-tst/front.c:32: warning: missing return value
-tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
-tst/front.c:38: warning: missing return value
-tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
-tst/front.c:63: warning: missing return value
-tst/front.c:68: warning: missing return value
-tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
-tst/front.c:69: warning: missing return value
-tst/front.c:71: invalid storage class `static' for `int function goo'
-tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
-tst/front.c:71: warning: missing return value
-tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
-tst/front.c:74: warning: missing return value
-tst/front.c:81: warning: missing return value
-tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
-tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
-tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
-tst/front.c:92: warning: missing return value
-tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
-tst/front.c:98: warning: missing return value
-tst/front.c:101: conflicting argument declarations for function `gg1'
-tst/front.c:101: warning: missing return value
-tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
-tst/front.c:113: warning: missing return value
-tst/front.c:120: warning: missing return value
+tst/front.c:3: warning: missing return value
+tst/front.c:10: warning: missing return value
+tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
+tst/front.c:21: warning: missing return value
+tst/front.c:32: warning: missing return value
+tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
+tst/front.c:38: warning: missing return value
+tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
+tst/front.c:63: warning: missing return value
+tst/front.c:68: warning: missing return value
+tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
+tst/front.c:69: warning: missing return value
+tst/front.c:71: invalid storage class `static' for `int function goo'
+tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
+tst/front.c:71: warning: missing return value
+tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
+tst/front.c:74: warning: missing return value
+tst/front.c:81: warning: missing return value
+tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
+tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
+tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
+tst/front.c:92: warning: missing return value
+tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
+tst/front.c:98: warning: missing return value
+tst/front.c:101: conflicting argument declarations for function `gg1'
+tst/front.c:101: warning: missing return value
+tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
+tst/front.c:113: warning: missing return value
+tst/front.c:120: warning: missing return value
diff --git a/lcc/x86/linux/tst/front.sbk b/lcc/x86/linux/tst/front.sbk
index 348b6fe..e2d5b44 100755
--- a/lcc/x86/linux/tst/front.sbk
+++ b/lcc/x86/linux/tst/front.sbk
@@ -1,530 +1,530 @@
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl $0
-call exit
-addl $4,%esp
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf2:
-.size main,.Lf2-main
-.globl nested
-.align 16
-.type nested,@function
-nested:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-cmpl $4,20(%ebp)
-jge .LC7
-cmpl $114,24(%ebp)
-je .LC10
-.LC7:
-cmpl $1,20(%ebp)
-jne .LC9
-movl 24(%ebp),%edi
-cmpl $104,%edi
-je .LC10
-cmpl $105,%edi
-je .LC10
-.LC9:
-cmpl $2,20(%ebp)
-jne .LC4
-movl 24(%ebp),%edi
-cmpl $111,%edi
-je .LC10
-cmpl $121,%edi
-jne .LC4
-.LC10:
-movl 24(%ebp),%edi
-movl %edi,20(%ebp)
-.LC4:
-movl $0,%eax
-.LC3:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf11:
-.size nested,.Lf11-nested
-.globl s
-.align 16
-.type s,@function
-s:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-.LC12:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf13:
-.size s,.Lf13-s
-.data
-.globl Dy
-.align 4
-.type Dy,@object
-.size Dy,8
-Dy:
-.long 0
-.space 4
-.globl Dz
-.align 4
-.type Dz,@object
-.size Dz,8
-Dz:
-.long 1
-.space 4
-.globl Dfunc
-.text
-.align 16
-.type Dfunc,@function
-Dfunc:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf16:
-.size Dfunc,.Lf16-Dfunc
-.globl f
-.align 16
-.type f,@function
-f:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf18:
-.size f,.Lf18-f
-.globl f1
-.align 16
-.type f1,@function
-f1:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf20:
-.size f1,.Lf20-f1
-.globl f2
-.align 16
-.type f2,@function
-f2:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf22:
-.size f2,.Lf22-f2
-.globl g
-.align 16
-.type g,@function
-g:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf24:
-.size g,.Lf24-g
-.globl h
-.align 16
-.type h,@function
-h:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf26:
-.size h,.Lf26-h
-.globl h1
-.align 16
-.type h1,@function
-h1:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf28:
-.size h1,.Lf28-h1
-.globl h2
-.align 16
-.type h2,@function
-h2:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf30:
-.size h2,.Lf30-h2
-.data
-.align 4
-.type yy.32,@object
-.size yy.32,4
-yy.32:
-.long 1
-.globl set1
-.text
-.align 16
-.type set1,@function
-set1:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf33:
-.size set1,.Lf33-set1
-.data
-.align 4
-.type yy.35,@object
-.size yy.35,4
-yy.35:
-.long 2
-.globl set2
-.text
-.align 16
-.type set2,@function
-set2:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf36:
-.size set2,.Lf36-set2
-.align 16
-.type goo,@function
-goo:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf38:
-.size goo,.Lf38-goo
-.globl sss
-.align 16
-.type sss,@function
-sss:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf40:
-.size sss,.Lf40-sss
-.bss
-.align 4
-.type xr.42,@object
-.size xr.42,4
-.lcomm xr.42,4
-.globl rrr
-.text
-.align 16
-.type rrr,@function
-rrr:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf43:
-.size rrr,.Lf43-rrr
-.globl setstatic
-.align 16
-.type setstatic,@function
-setstatic:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf45:
-.size setstatic,.Lf45-setstatic
-.globl gx1
-.align 16
-.type gx1,@function
-gx1:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf47:
-.size gx1,.Lf47-gx1
-.globl ff1
-.align 16
-.type ff1,@function
-ff1:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf49:
-.size ff1,.Lf49-ff1
-.globl gg1
-.align 16
-.type gg1,@function
-gg1:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf51:
-.size gg1,.Lf51-gg1
-.globl hh1
-.align 16
-.type hh1,@function
-hh1:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf53:
-.size hh1,.Lf53-hh1
-.globl cmp
-.align 16
-.type cmp,@function
-cmp:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf55:
-.size cmp,.Lf55-cmp
-.globl sort
-.align 16
-.type sort,@function
-sort:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf57:
-.size sort,.Lf57-sort
-.globl onearg
-.align 16
-.type onearg,@function
-onearg:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf65:
-.size onearg,.Lf65-onearg
-.bss
-.globl ss4
-.align 4
-.type ss4,@object
-.size ss4,4
-.comm ss4,4
-.align 4
-.type ss2,@object
-.size ss2,4
-.lcomm ss2,4
-.align 4
-.type ss5,@object
-.size ss5,4
-.lcomm ss5,4
-.globl ss3
-.align 4
-.type ss3,@object
-.size ss3,4
-.comm ss3,4
-.align 4
-.type ss1,@object
-.size ss1,4
-.lcomm ss1,4
-.align 4
-.type yy,@object
-.size yy,4
-.lcomm yy,4
-.globl z
-.align 4
-.type z,@object
-.size z,4
-.comm z,4
-.globl y
-.align 4
-.type y,@object
-.size y,4
-.comm y,4
-.globl x
-.align 4
-.type x,@object
-.size x,4
-.comm x,4
-.globl b
-.align 4
-.type b,@object
-.size b,4
-.comm b,4
-.globl a
-.align 4
-.type a,@object
-.size a,4
-.comm a,4
-.text
-.ident "LCC: 4.1"
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl $0
+call exit
+addl $4,%esp
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf2:
+.size main,.Lf2-main
+.globl nested
+.align 16
+.type nested,@function
+nested:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+cmpl $4,20(%ebp)
+jge .LC7
+cmpl $114,24(%ebp)
+je .LC10
+.LC7:
+cmpl $1,20(%ebp)
+jne .LC9
+movl 24(%ebp),%edi
+cmpl $104,%edi
+je .LC10
+cmpl $105,%edi
+je .LC10
+.LC9:
+cmpl $2,20(%ebp)
+jne .LC4
+movl 24(%ebp),%edi
+cmpl $111,%edi
+je .LC10
+cmpl $121,%edi
+jne .LC4
+.LC10:
+movl 24(%ebp),%edi
+movl %edi,20(%ebp)
+.LC4:
+movl $0,%eax
+.LC3:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf11:
+.size nested,.Lf11-nested
+.globl s
+.align 16
+.type s,@function
+s:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+.LC12:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf13:
+.size s,.Lf13-s
+.data
+.globl Dy
+.align 4
+.type Dy,@object
+.size Dy,8
+Dy:
+.long 0
+.space 4
+.globl Dz
+.align 4
+.type Dz,@object
+.size Dz,8
+Dz:
+.long 1
+.space 4
+.globl Dfunc
+.text
+.align 16
+.type Dfunc,@function
+Dfunc:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf16:
+.size Dfunc,.Lf16-Dfunc
+.globl f
+.align 16
+.type f,@function
+f:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf18:
+.size f,.Lf18-f
+.globl f1
+.align 16
+.type f1,@function
+f1:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf20:
+.size f1,.Lf20-f1
+.globl f2
+.align 16
+.type f2,@function
+f2:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf22:
+.size f2,.Lf22-f2
+.globl g
+.align 16
+.type g,@function
+g:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf24:
+.size g,.Lf24-g
+.globl h
+.align 16
+.type h,@function
+h:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf26:
+.size h,.Lf26-h
+.globl h1
+.align 16
+.type h1,@function
+h1:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf28:
+.size h1,.Lf28-h1
+.globl h2
+.align 16
+.type h2,@function
+h2:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf30:
+.size h2,.Lf30-h2
+.data
+.align 4
+.type yy.32,@object
+.size yy.32,4
+yy.32:
+.long 1
+.globl set1
+.text
+.align 16
+.type set1,@function
+set1:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf33:
+.size set1,.Lf33-set1
+.data
+.align 4
+.type yy.35,@object
+.size yy.35,4
+yy.35:
+.long 2
+.globl set2
+.text
+.align 16
+.type set2,@function
+set2:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf36:
+.size set2,.Lf36-set2
+.align 16
+.type goo,@function
+goo:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf38:
+.size goo,.Lf38-goo
+.globl sss
+.align 16
+.type sss,@function
+sss:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf40:
+.size sss,.Lf40-sss
+.bss
+.align 4
+.type xr.42,@object
+.size xr.42,4
+.lcomm xr.42,4
+.globl rrr
+.text
+.align 16
+.type rrr,@function
+rrr:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf43:
+.size rrr,.Lf43-rrr
+.globl setstatic
+.align 16
+.type setstatic,@function
+setstatic:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf45:
+.size setstatic,.Lf45-setstatic
+.globl gx1
+.align 16
+.type gx1,@function
+gx1:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf47:
+.size gx1,.Lf47-gx1
+.globl ff1
+.align 16
+.type ff1,@function
+ff1:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf49:
+.size ff1,.Lf49-ff1
+.globl gg1
+.align 16
+.type gg1,@function
+gg1:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf51:
+.size gg1,.Lf51-gg1
+.globl hh1
+.align 16
+.type hh1,@function
+hh1:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf53:
+.size hh1,.Lf53-hh1
+.globl cmp
+.align 16
+.type cmp,@function
+cmp:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf55:
+.size cmp,.Lf55-cmp
+.globl sort
+.align 16
+.type sort,@function
+sort:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf57:
+.size sort,.Lf57-sort
+.globl onearg
+.align 16
+.type onearg,@function
+onearg:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf65:
+.size onearg,.Lf65-onearg
+.bss
+.globl ss4
+.align 4
+.type ss4,@object
+.size ss4,4
+.comm ss4,4
+.align 4
+.type ss2,@object
+.size ss2,4
+.lcomm ss2,4
+.align 4
+.type ss5,@object
+.size ss5,4
+.lcomm ss5,4
+.globl ss3
+.align 4
+.type ss3,@object
+.size ss3,4
+.comm ss3,4
+.align 4
+.type ss1,@object
+.size ss1,4
+.lcomm ss1,4
+.align 4
+.type yy,@object
+.size yy,4
+.lcomm yy,4
+.globl z
+.align 4
+.type z,@object
+.size z,4
+.comm z,4
+.globl y
+.align 4
+.type y,@object
+.size y,4
+.comm y,4
+.globl x
+.align 4
+.type x,@object
+.size x,4
+.comm x,4
+.globl b
+.align 4
+.type b,@object
+.size b,4
+.comm b,4
+.globl a
+.align 4
+.type a,@object
+.size a,4
+.comm a,4
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/incr.2bk b/lcc/x86/linux/tst/incr.2bk
index b86c400..d9ef13c 100755
--- a/lcc/x86/linux/tst/incr.2bk
+++ b/lcc/x86/linux/tst/incr.2bk
@@ -1,9 +1,9 @@
-tst/incr.c:1: warning: missing return value
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:11: warning: missing return value
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:21: warning: missing return value
-tst/incr.c:30: warning: missing return value
-tst/incr.c:39: warning: missing return value
+tst/incr.c:1: warning: missing return value
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:11: warning: missing return value
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:21: warning: missing return value
+tst/incr.c:30: warning: missing return value
+tst/incr.c:39: warning: missing return value
diff --git a/lcc/x86/linux/tst/incr.sbk b/lcc/x86/linux/tst/incr.sbk
index 1179a8a..f79e020 100755
--- a/lcc/x86/linux/tst/incr.sbk
+++ b/lcc/x86/linux/tst/incr.sbk
@@ -1,181 +1,181 @@
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf2:
-.size main,.Lf2-main
-.globl memchar
-.align 16
-.type memchar,@function
-memchar:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-movl -8(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-8(%ebp)
-movb (,%edi),%bl
-movb %bl,-1(%ebp)
-movl -8(%ebp),%edi
-leal 1(%edi),%edi
-movl %edi,-8(%ebp)
-movb (,%edi),%bl
-movb %bl,-1(%ebp)
-movl -8(%ebp),%edi
-leal -1(%edi),%esi
-movl %esi,-8(%ebp)
-movb (,%edi),%bl
-movb %bl,-1(%ebp)
-movl -8(%ebp),%edi
-leal -1(%edi),%edi
-movl %edi,-8(%ebp)
-movb (,%edi),%bl
-movb %bl,-1(%ebp)
-movl $0,%eax
-.LC3:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf4:
-.size memchar,.Lf4-memchar
-.globl memint
-.align 16
-.type memint,@function
-memint:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-movl -8(%ebp),%edi
-leal 4(%edi),%esi
-movl %esi,-8(%ebp)
-movl (,%edi),%edi
-movl %edi,-4(%ebp)
-movl -8(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-8(%ebp)
-movl (,%edi),%edi
-movl %edi,-4(%ebp)
-movl -8(%ebp),%edi
-leal -4(%edi),%esi
-movl %esi,-8(%ebp)
-movl (,%edi),%edi
-movl %edi,-4(%ebp)
-movl -8(%ebp),%edi
-leal -4(%edi),%edi
-movl %edi,-8(%ebp)
-movl (,%edi),%edi
-movl %edi,-4(%ebp)
-movl $0,%eax
-.LC5:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf6:
-.size memint,.Lf6-memint
-.globl regchar
-.align 16
-.type regchar,@function
-regchar:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-movl -8(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-8(%ebp)
-movb (,%edi),%bl
-movb %bl,-1(%ebp)
-movl -8(%ebp),%edi
-leal 1(%edi),%edi
-movl %edi,-8(%ebp)
-movb (,%edi),%bl
-movb %bl,-1(%ebp)
-movl -8(%ebp),%edi
-leal -1(%edi),%esi
-movl %esi,-8(%ebp)
-movb (,%edi),%bl
-movb %bl,-1(%ebp)
-movl -8(%ebp),%edi
-leal -1(%edi),%edi
-movl %edi,-8(%ebp)
-movb (,%edi),%bl
-movb %bl,-1(%ebp)
-movl $0,%eax
-.LC7:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf8:
-.size regchar,.Lf8-regchar
-.globl regint
-.align 16
-.type regint,@function
-regint:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-movl -8(%ebp),%edi
-leal 4(%edi),%esi
-movl %esi,-8(%ebp)
-movl (,%edi),%edi
-movl %edi,-4(%ebp)
-movl -8(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-8(%ebp)
-movl (,%edi),%edi
-movl %edi,-4(%ebp)
-movl -8(%ebp),%edi
-leal -4(%edi),%esi
-movl %esi,-8(%ebp)
-movl (,%edi),%edi
-movl %edi,-4(%ebp)
-movl -8(%ebp),%edi
-leal -4(%edi),%edi
-movl %edi,-8(%ebp)
-movl (,%edi),%edi
-movl %edi,-4(%ebp)
-movl $0,%eax
-.LC9:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf10:
-.size regint,.Lf10-regint
-.ident "LCC: 4.1"
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf2:
+.size main,.Lf2-main
+.globl memchar
+.align 16
+.type memchar,@function
+memchar:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+movl -8(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-8(%ebp)
+movb (,%edi),%bl
+movb %bl,-1(%ebp)
+movl -8(%ebp),%edi
+leal 1(%edi),%edi
+movl %edi,-8(%ebp)
+movb (,%edi),%bl
+movb %bl,-1(%ebp)
+movl -8(%ebp),%edi
+leal -1(%edi),%esi
+movl %esi,-8(%ebp)
+movb (,%edi),%bl
+movb %bl,-1(%ebp)
+movl -8(%ebp),%edi
+leal -1(%edi),%edi
+movl %edi,-8(%ebp)
+movb (,%edi),%bl
+movb %bl,-1(%ebp)
+movl $0,%eax
+.LC3:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf4:
+.size memchar,.Lf4-memchar
+.globl memint
+.align 16
+.type memint,@function
+memint:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+movl -8(%ebp),%edi
+leal 4(%edi),%esi
+movl %esi,-8(%ebp)
+movl (,%edi),%edi
+movl %edi,-4(%ebp)
+movl -8(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-8(%ebp)
+movl (,%edi),%edi
+movl %edi,-4(%ebp)
+movl -8(%ebp),%edi
+leal -4(%edi),%esi
+movl %esi,-8(%ebp)
+movl (,%edi),%edi
+movl %edi,-4(%ebp)
+movl -8(%ebp),%edi
+leal -4(%edi),%edi
+movl %edi,-8(%ebp)
+movl (,%edi),%edi
+movl %edi,-4(%ebp)
+movl $0,%eax
+.LC5:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf6:
+.size memint,.Lf6-memint
+.globl regchar
+.align 16
+.type regchar,@function
+regchar:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+movl -8(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-8(%ebp)
+movb (,%edi),%bl
+movb %bl,-1(%ebp)
+movl -8(%ebp),%edi
+leal 1(%edi),%edi
+movl %edi,-8(%ebp)
+movb (,%edi),%bl
+movb %bl,-1(%ebp)
+movl -8(%ebp),%edi
+leal -1(%edi),%esi
+movl %esi,-8(%ebp)
+movb (,%edi),%bl
+movb %bl,-1(%ebp)
+movl -8(%ebp),%edi
+leal -1(%edi),%edi
+movl %edi,-8(%ebp)
+movb (,%edi),%bl
+movb %bl,-1(%ebp)
+movl $0,%eax
+.LC7:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf8:
+.size regchar,.Lf8-regchar
+.globl regint
+.align 16
+.type regint,@function
+regint:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+movl -8(%ebp),%edi
+leal 4(%edi),%esi
+movl %esi,-8(%ebp)
+movl (,%edi),%edi
+movl %edi,-4(%ebp)
+movl -8(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-8(%ebp)
+movl (,%edi),%edi
+movl %edi,-4(%ebp)
+movl -8(%ebp),%edi
+leal -4(%edi),%esi
+movl %esi,-8(%ebp)
+movl (,%edi),%edi
+movl %edi,-4(%ebp)
+movl -8(%ebp),%edi
+leal -4(%edi),%edi
+movl %edi,-8(%ebp)
+movl (,%edi),%edi
+movl %edi,-4(%ebp)
+movl $0,%eax
+.LC9:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf10:
+.size regint,.Lf10-regint
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/init.1bk b/lcc/x86/linux/tst/init.1bk
index 042f3bb..77aff09 100755
--- a/lcc/x86/linux/tst/init.1bk
+++ b/lcc/x86/linux/tst/init.1bk
@@ -1,16 +1,16 @@
- 1 2 3 4
- 5 6
- 7
-if
-for
-else
-while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-0 0 0
+ 1 2 3 4
+ 5 6
+ 7
+if
+for
+else
+while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+0 0 0
diff --git a/lcc/x86/linux/tst/init.2bk b/lcc/x86/linux/tst/init.2bk
index da08062..aafe415 100755
--- a/lcc/x86/linux/tst/init.2bk
+++ b/lcc/x86/linux/tst/init.2bk
@@ -1,3 +1,3 @@
-tst/init.c:36: warning: missing return value
-tst/init.c:49: warning: missing return value
-tst/init.c:59: warning: missing return value
+tst/init.c:36: warning: missing return value
+tst/init.c:49: warning: missing return value
+tst/init.c:59: warning: missing return value
diff --git a/lcc/x86/linux/tst/init.sbk b/lcc/x86/linux/tst/init.sbk
index 843e281..7a5032a 100755
--- a/lcc/x86/linux/tst/init.sbk
+++ b/lcc/x86/linux/tst/init.sbk
@@ -1,336 +1,336 @@
-.data
-.globl words
-.align 4
-.type words,@object
-words:
-.long 1
-.long 2
-.long 3
-.byte 105
-.byte 102
-.byte 0
-.space 3
-.space 2
-.long 4
-.long 5
-.space 4
-.byte 102
-.byte 111
-.byte 114
-.space 3
-.space 2
-.long 6
-.long 7
-.long 8
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.space 1
-.space 2
-.long 9
-.long 10
-.long 11
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.space 1
-.space 2
-.long 0
-.space 8
-.space 8
-.size words,100
-.globl wordlist
-.align 4
-.type wordlist,@object
-.size wordlist,4
-wordlist:
-.long words
-.globl x
-.align 4
-.type x,@object
-x:
-.long 1
-.long 2
-.long 3
-.long 4
-.long 0
-.long 5
-.long 6
-.space 12
-.long 7
-.space 16
-.size x,60
-.globl y
-.align 4
-.type y,@object
-y:
-.long x
-.long x+20
-.long x+40
-.long 0
-.size y,16
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-movl $0,-8(%ebp)
-jmp .LC8
-.LC5:
-movl $0,-4(%ebp)
-jmp .LC12
-.LC9:
-movl -4(%ebp),%edi
-movl -8(%ebp),%esi
-movl y(,%esi,4),%esi
-pushl (%esi,%edi,4)
-pushl $.LC13
-call printf
-addl $8,%esp
-.LC10:
-incl -4(%ebp)
-.LC12:
-movl -4(%ebp),%edi
-movl -8(%ebp),%esi
-movl y(,%esi,4),%esi
-cmpl $0,(%esi,%edi,4)
-jne .LC9
-pushl $.LC14
-call printf
-addl $4,%esp
-.LC6:
-incl -8(%ebp)
-.LC8:
-movl -8(%ebp),%edi
-movl y(,%edi,4),%edi
-cmpl $0,%edi
-jne .LC5
-call f
-pushl wordlist
-call g
-addl $4,%esp
-movl $0,%eax
-.LC4:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf15:
-.size main,.Lf15-main
-.data
-.align 4
-.type keywords.17,@object
-keywords.17:
-.long .LC18
-.long .LC19
-.long .LC20
-.long .LC21
-.long 0
-.size keywords.17,20
-.globl f
-.text
-.align 16
-.type f,@function
-f:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-leal keywords.17,%edi
-movl %edi,-4(%ebp)
-jmp .LC25
-.LC22:
-movl -4(%ebp),%edi
-pushl (,%edi)
-pushl $.LC26
-call printf
-addl $8,%esp
-.LC23:
-movl -4(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-4(%ebp)
-.LC25:
-movl -4(%ebp),%edi
-movl (,%edi),%edi
-cmpl $0,%edi
-jne .LC22
-movl $0,%eax
-.LC16:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf27:
-.size f,.Lf27-f
-.globl g
-.align 16
-.type g,@function
-g:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-jmp .LC32
-.LC29:
-movl $0,-4(%ebp)
-jmp .LC36
-.LC33:
-movl -4(%ebp),%edi
-movl 20(%ebp),%esi
-pushl (%esi,%edi,4)
-pushl $.LC37
-call printf
-addl $8,%esp
-.LC34:
-incl -4(%ebp)
-.LC36:
-movl -4(%ebp),%edi
-cmpl $3,%edi
-jb .LC33
-movl 20(%ebp),%edi
-leal 12(%edi),%edi
-pushl %edi
-pushl $.LC26
-call printf
-addl $8,%esp
-.LC30:
-movl 20(%ebp),%edi
-leal 20(%edi),%edi
-movl %edi,20(%ebp)
-.LC32:
-movl 20(%ebp),%edi
-cmpl $0,(,%edi)
-jne .LC29
-call h
-movl $0,%eax
-.LC28:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf38:
-.size g,.Lf38-g
-.globl h
-.align 16
-.type h,@function
-h:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $0,-4(%ebp)
-jmp .LC43
-.LC40:
-imul $20,-4(%ebp),%edi
-leal words+12(%edi),%esi
-pushl %esi
-pushl words+8(%edi)
-pushl words+4(%edi)
-pushl words(%edi)
-pushl $.LC44
-call printf
-addl $20,%esp
-.LC41:
-incl -4(%ebp)
-.LC43:
-movl -4(%ebp),%edi
-cmpl $5,%edi
-jb .LC40
-movl $0,%eax
-.LC39:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf48:
-.size h,.Lf48-h
-.data
-.align 1
-.LC44:
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC37:
-.byte 37
-.byte 100
-.byte 32
-.byte 0
-.align 1
-.LC26:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC21:
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.byte 0
-.align 1
-.LC20:
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 1
-.LC19:
-.byte 102
-.byte 111
-.byte 114
-.byte 0
-.align 1
-.LC18:
-.byte 105
-.byte 102
-.byte 0
-.align 1
-.LC14:
-.byte 10
-.byte 0
-.align 1
-.LC13:
-.byte 32
-.byte 37
-.byte 100
-.byte 0
-.text
-.ident "LCC: 4.1"
+.data
+.globl words
+.align 4
+.type words,@object
+words:
+.long 1
+.long 2
+.long 3
+.byte 105
+.byte 102
+.byte 0
+.space 3
+.space 2
+.long 4
+.long 5
+.space 4
+.byte 102
+.byte 111
+.byte 114
+.space 3
+.space 2
+.long 6
+.long 7
+.long 8
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.space 1
+.space 2
+.long 9
+.long 10
+.long 11
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.space 1
+.space 2
+.long 0
+.space 8
+.space 8
+.size words,100
+.globl wordlist
+.align 4
+.type wordlist,@object
+.size wordlist,4
+wordlist:
+.long words
+.globl x
+.align 4
+.type x,@object
+x:
+.long 1
+.long 2
+.long 3
+.long 4
+.long 0
+.long 5
+.long 6
+.space 12
+.long 7
+.space 16
+.size x,60
+.globl y
+.align 4
+.type y,@object
+y:
+.long x
+.long x+20
+.long x+40
+.long 0
+.size y,16
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+movl $0,-8(%ebp)
+jmp .LC8
+.LC5:
+movl $0,-4(%ebp)
+jmp .LC12
+.LC9:
+movl -4(%ebp),%edi
+movl -8(%ebp),%esi
+movl y(,%esi,4),%esi
+pushl (%esi,%edi,4)
+pushl $.LC13
+call printf
+addl $8,%esp
+.LC10:
+incl -4(%ebp)
+.LC12:
+movl -4(%ebp),%edi
+movl -8(%ebp),%esi
+movl y(,%esi,4),%esi
+cmpl $0,(%esi,%edi,4)
+jne .LC9
+pushl $.LC14
+call printf
+addl $4,%esp
+.LC6:
+incl -8(%ebp)
+.LC8:
+movl -8(%ebp),%edi
+movl y(,%edi,4),%edi
+cmpl $0,%edi
+jne .LC5
+call f
+pushl wordlist
+call g
+addl $4,%esp
+movl $0,%eax
+.LC4:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf15:
+.size main,.Lf15-main
+.data
+.align 4
+.type keywords.17,@object
+keywords.17:
+.long .LC18
+.long .LC19
+.long .LC20
+.long .LC21
+.long 0
+.size keywords.17,20
+.globl f
+.text
+.align 16
+.type f,@function
+f:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+leal keywords.17,%edi
+movl %edi,-4(%ebp)
+jmp .LC25
+.LC22:
+movl -4(%ebp),%edi
+pushl (,%edi)
+pushl $.LC26
+call printf
+addl $8,%esp
+.LC23:
+movl -4(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-4(%ebp)
+.LC25:
+movl -4(%ebp),%edi
+movl (,%edi),%edi
+cmpl $0,%edi
+jne .LC22
+movl $0,%eax
+.LC16:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf27:
+.size f,.Lf27-f
+.globl g
+.align 16
+.type g,@function
+g:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+jmp .LC32
+.LC29:
+movl $0,-4(%ebp)
+jmp .LC36
+.LC33:
+movl -4(%ebp),%edi
+movl 20(%ebp),%esi
+pushl (%esi,%edi,4)
+pushl $.LC37
+call printf
+addl $8,%esp
+.LC34:
+incl -4(%ebp)
+.LC36:
+movl -4(%ebp),%edi
+cmpl $3,%edi
+jb .LC33
+movl 20(%ebp),%edi
+leal 12(%edi),%edi
+pushl %edi
+pushl $.LC26
+call printf
+addl $8,%esp
+.LC30:
+movl 20(%ebp),%edi
+leal 20(%edi),%edi
+movl %edi,20(%ebp)
+.LC32:
+movl 20(%ebp),%edi
+cmpl $0,(,%edi)
+jne .LC29
+call h
+movl $0,%eax
+.LC28:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf38:
+.size g,.Lf38-g
+.globl h
+.align 16
+.type h,@function
+h:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $0,-4(%ebp)
+jmp .LC43
+.LC40:
+imul $20,-4(%ebp),%edi
+leal words+12(%edi),%esi
+pushl %esi
+pushl words+8(%edi)
+pushl words+4(%edi)
+pushl words(%edi)
+pushl $.LC44
+call printf
+addl $20,%esp
+.LC41:
+incl -4(%ebp)
+.LC43:
+movl -4(%ebp),%edi
+cmpl $5,%edi
+jb .LC40
+movl $0,%eax
+.LC39:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf48:
+.size h,.Lf48-h
+.data
+.align 1
+.LC44:
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC37:
+.byte 37
+.byte 100
+.byte 32
+.byte 0
+.align 1
+.LC26:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC21:
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.byte 0
+.align 1
+.LC20:
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 1
+.LC19:
+.byte 102
+.byte 111
+.byte 114
+.byte 0
+.align 1
+.LC18:
+.byte 105
+.byte 102
+.byte 0
+.align 1
+.LC14:
+.byte 10
+.byte 0
+.align 1
+.LC13:
+.byte 32
+.byte 37
+.byte 100
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/limits.1bk b/lcc/x86/linux/tst/limits.1bk
index f0c1dc8..9beee8c 100755
--- a/lcc/x86/linux/tst/limits.1bk
+++ b/lcc/x86/linux/tst/limits.1bk
@@ -1,14 +1,14 @@
-UCHAR_MAX: 000000ff=255
-USHRT_MAX: 0000ffff=65535
-UINT_MAX: ffffffff=-1
-ULONG_MAX: ffffffff=-1
-CHAR_MAX: 0000007f=127
-SCHAR_MAX: 0000007f=127
-SHRT_MAX: 00007fff=32767
-INT_MAX: 7fffffff=2147483647
-LONG_MAX: 7fffffff=2147483647
-CHAR_MIN: ffffff80=-128
-SCHAR_MIN: ffffff80=-128
-SHRT_MIN: ffff8000=-32768
-INT_MIN: 80000000=-2147483648
-LONG_MIN: 80000000=-2147483648
+UCHAR_MAX: 000000ff=255
+USHRT_MAX: 0000ffff=65535
+UINT_MAX: ffffffff=-1
+ULONG_MAX: ffffffff=-1
+CHAR_MAX: 0000007f=127
+SCHAR_MAX: 0000007f=127
+SHRT_MAX: 00007fff=32767
+INT_MAX: 7fffffff=2147483647
+LONG_MAX: 7fffffff=2147483647
+CHAR_MIN: ffffff80=-128
+SCHAR_MIN: ffffff80=-128
+SHRT_MIN: ffff8000=-32768
+INT_MIN: 80000000=-2147483648
+LONG_MIN: 80000000=-2147483648
diff --git a/lcc/x86/linux/tst/limits.sbk b/lcc/x86/linux/tst/limits.sbk
index bed5d18..9d973d2 100755
--- a/lcc/x86/linux/tst/limits.sbk
+++ b/lcc/x86/linux/tst/limits.sbk
@@ -1,396 +1,396 @@
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl $255
-pushl $255
-pushl $.LC2
-call printf
-addl $12,%esp
-pushl $65535
-pushl $65535
-pushl $.LC3
-call printf
-addl $12,%esp
-pushl $0xffffffff
-pushl $0xffffffff
-pushl $.LC4
-call printf
-addl $12,%esp
-pushl $0xffffffff
-pushl $0xffffffff
-pushl $.LC5
-call printf
-addl $12,%esp
-pushl $127
-pushl $127
-pushl $.LC6
-call printf
-addl $12,%esp
-pushl $127
-pushl $127
-pushl $.LC7
-call printf
-addl $12,%esp
-pushl $32767
-pushl $32767
-pushl $.LC8
-call printf
-addl $12,%esp
-pushl $2147483647
-pushl $2147483647
-pushl $.LC9
-call printf
-addl $12,%esp
-pushl $2147483647
-pushl $2147483647
-pushl $.LC10
-call printf
-addl $12,%esp
-pushl $-128
-pushl $-128
-pushl $.LC11
-call printf
-addl $12,%esp
-pushl $-128
-pushl $-128
-pushl $.LC12
-call printf
-addl $12,%esp
-pushl $-32768
-pushl $-32768
-pushl $.LC13
-call printf
-addl $12,%esp
-pushl $-2147483648
-pushl $-2147483648
-pushl $.LC14
-call printf
-addl $12,%esp
-pushl $-2147483648
-pushl $-2147483648
-pushl $.LC15
-call printf
-addl $12,%esp
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf16:
-.size main,.Lf16-main
-.data
-.align 1
-.LC15:
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC14:
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC13:
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC12:
-.byte 83
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC11:
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 73
-.byte 78
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC10:
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC9:
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC8:
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC7:
-.byte 83
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC6:
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC5:
-.byte 85
-.byte 76
-.byte 79
-.byte 78
-.byte 71
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 108
-.byte 120
-.byte 61
-.byte 37
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC4:
-.byte 85
-.byte 73
-.byte 78
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC3:
-.byte 85
-.byte 83
-.byte 72
-.byte 82
-.byte 84
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC2:
-.byte 85
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 95
-.byte 77
-.byte 65
-.byte 88
-.byte 58
-.byte 9
-.byte 37
-.byte 48
-.byte 56
-.byte 120
-.byte 61
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.text
-.ident "LCC: 4.1"
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl $255
+pushl $255
+pushl $.LC2
+call printf
+addl $12,%esp
+pushl $65535
+pushl $65535
+pushl $.LC3
+call printf
+addl $12,%esp
+pushl $0xffffffff
+pushl $0xffffffff
+pushl $.LC4
+call printf
+addl $12,%esp
+pushl $0xffffffff
+pushl $0xffffffff
+pushl $.LC5
+call printf
+addl $12,%esp
+pushl $127
+pushl $127
+pushl $.LC6
+call printf
+addl $12,%esp
+pushl $127
+pushl $127
+pushl $.LC7
+call printf
+addl $12,%esp
+pushl $32767
+pushl $32767
+pushl $.LC8
+call printf
+addl $12,%esp
+pushl $2147483647
+pushl $2147483647
+pushl $.LC9
+call printf
+addl $12,%esp
+pushl $2147483647
+pushl $2147483647
+pushl $.LC10
+call printf
+addl $12,%esp
+pushl $-128
+pushl $-128
+pushl $.LC11
+call printf
+addl $12,%esp
+pushl $-128
+pushl $-128
+pushl $.LC12
+call printf
+addl $12,%esp
+pushl $-32768
+pushl $-32768
+pushl $.LC13
+call printf
+addl $12,%esp
+pushl $-2147483648
+pushl $-2147483648
+pushl $.LC14
+call printf
+addl $12,%esp
+pushl $-2147483648
+pushl $-2147483648
+pushl $.LC15
+call printf
+addl $12,%esp
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf16:
+.size main,.Lf16-main
+.data
+.align 1
+.LC15:
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC14:
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC13:
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC12:
+.byte 83
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC11:
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 73
+.byte 78
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC10:
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC9:
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC8:
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC7:
+.byte 83
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC6:
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC5:
+.byte 85
+.byte 76
+.byte 79
+.byte 78
+.byte 71
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 108
+.byte 120
+.byte 61
+.byte 37
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC4:
+.byte 85
+.byte 73
+.byte 78
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC3:
+.byte 85
+.byte 83
+.byte 72
+.byte 82
+.byte 84
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC2:
+.byte 85
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 95
+.byte 77
+.byte 65
+.byte 88
+.byte 58
+.byte 9
+.byte 37
+.byte 48
+.byte 56
+.byte 120
+.byte 61
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/paranoia.1bk b/lcc/x86/linux/tst/paranoia.1bk
index da344e6..fffebd5 100755
--- a/lcc/x86/linux/tst/paranoia.1bk
+++ b/lcc/x86/linux/tst/paranoia.1bk
@@ -1,183 +1,183 @@
-Lest this program stop prematurely, i.e. before displaying
-
- `END OF TEST',
-
-try to persuade the computer NOT to terminate execution when an
-error like Over/Underflow or Division by Zero occurs, but rather
-to persevere with a surrogate value after, perhaps, displaying some
-warning. If persuasion avails naught, don't despair but run this
-program anyway to see how many milestones it passes, and then
-amend it to make further progress.
-
-Answer questions with Y, y, N or n (unless otherwise indicated).
-
-
-Diagnosis resumes after milestone Number 0 Page: 1
-
-Users are invited to help debug and augment this program so it will
-cope with unanticipated and newly uncovered arithmetic pathologies.
-
-Please send suggestions and interesting results to
- Richard Karpinski
- Computer Center U-76
- University of California
- San Francisco, CA 94143-0704, USA
-
-In doing so, please include the following information:
- Precision: double;
- Version: 10 February 1989;
- Computer:
-
- Compiler:
-
- Optimization level:
-
- Other relevant compiler options:
-
-Diagnosis resumes after milestone Number 1 Page: 2
-
-Running this program should reveal these characteristics:
- Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
- Precision = number of significant digits carried.
- U2 = Radix/Radix^Precision = One Ulp
- (OneUlpnit in the Last Place) of 1.000xxx .
- U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
- Adequacy of guard digits for Mult., Div. and Subt.
- Whether arithmetic is chopped, correctly rounded, or something else
- for Mult., Div., Add/Subt. and Sqrt.
- Whether a Sticky Bit used correctly for rounding.
- UnderflowThreshold = an underflow threshold.
- E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
- V = an overflow threshold, roughly.
- V0 tells, roughly, whether Infinity is represented.
- Comparisions are checked for consistency with subtraction
- and for contamination with pseudo-zeros.
- Sqrt is tested. Y^X is not tested.
- Extra-precise subexpressions are revealed but NOT YET tested.
- Decimal-Binary conversion is NOT YET tested for accuracy.
-
-Diagnosis resumes after milestone Number 2 Page: 3
-
-The program attempts to discriminate among
- FLAWs, like lack of a sticky bit,
- Serious DEFECTs, like lack of a guard digit, and
- FAILUREs, like 2+2 == 5 .
-Failures may confound subsequent diagnoses.
-
-The diagnostic capabilities of this program go beyond an earlier
-program called `MACHAR', which can be found at the end of the
-book `Software Manual for the Elementary Functions' (1980) by
-W. J. Cody and W. Waite. Although both programs try to discover
-the Radix, Precision and range (over/underflow thresholds)
-of the arithmetic, this program tries to cope with a wider variety
-of pathologies, and to say how well the arithmetic is implemented.
-
-The program is based upon a conventional radix representation for
-floating-point numbers, but also allows logarithmic encoding
-as used by certain early WANG machines.
-
-BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
-see source comments for more history.
-
-Diagnosis resumes after milestone Number 3 Page: 4
-
-Program is now RUNNING tests on small integers:
--1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
-
-Searching for Radix and Precision.
-Radix = 2.000000 .
-Closest relative separation found is U1 = 1.1102230e-16 .
-
-Recalculating radix and precision
- confirms closest relative separation U1 .
-Radix confirmed.
-The number of significant digits of the Radix is 53.000000 .
-Some subexpressions appear to be calculated extra
-precisely with about 11 extra B-digits, i.e.
-roughly 3.31133 extra significant decimals.
-That feature is not tested further by this program.
-
-Diagnosis resumes after milestone Number 30 Page: 5
-
-Subtraction appears to be normalized, as it should be.
-Checking for guard digit in *, /, and -.
- *, /, and - appear to have guard digits, as they should.
-
-Diagnosis resumes after milestone Number 40 Page: 6
-
-Checking rounding on multiply, divide and add/subtract.
-* is neither chopped nor correctly rounded.
-/ is neither chopped nor correctly rounded.
-Addition/Subtraction neither rounds nor chops.
-Sticky bit used incorrectly or not at all.
-FLAW: lack(s) of guard digits or failure(s) to correctly round or chop
-(noted above) count as one flaw in the final tally below.
-
-Does Multiplication commute? Testing on 20 random pairs.
- No failures found in 20 integer pairs.
-
-Running test of square root(x).
-Testing if sqrt(X * X) == X for 20 Integers X.
-Test for sqrt monotonicity.
-sqrt has passed a test for Monotonicity.
-Testing whether sqrt is rounded or chopped.
-Square root is neither chopped nor correctly rounded.
-Observed errors run from -5.0000000e-01 to 5.0000000e-01 ulps.
-
-Diagnosis resumes after milestone Number 90 Page: 7
-
-Testing powers Z^i for small Integers Z and i.
-... no discrepancis found.
-
-Seeking Underflow thresholds UfThold and E0.
-Smallest strictly positive number found is E0 = 4.94066e-324 .
-Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
-What the machine gets for (Z + Z) / Z is 2.00000000000000000e+00 .
-This is O.K., provided Over/Underflow has NOT just been signaled.
-Underflow is gradual; it incurs Absolute Error =
-(roundoff in UfThold) < E0.
-The Underflow threshold is 2.22507385850720188e-308, below which
-calculation may suffer larger Relative error than merely roundoff.
-Since underflow occurs below the threshold
-UfThold = (2.00000000000000000e+00) ^ (-1.02200000000000000e+03)
-only underflow should afflict the expression
- (2.00000000000000000e+00) ^ (-1.02200000000000000e+03);
-actually calculating yields: 0.00000000000000000e+00 .
-This computed value is O.K.
-
-Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065218e+00 as X -> 1.
-Accuracy seems adequate.
-Testing powers Z^Q at four nearly extreme values.
- ... no discrepancies found.
-
-
-Diagnosis resumes after milestone Number 160 Page: 8
-
-Searching for Overflow threshold:
-This may generate an error.
-Can `Z = -Y' overflow?
-Trying it on Y = -Inf .
-Seems O.K.
-Overflow threshold is V = 1.79769313486231571e+308 .
-Overflow saturates at V0 = Inf .
-No Overflow should be signaled for V * 1 = 1.79769313486231571e+308
- nor for V / 1 = 1.79769313486231571e+308 .
-Any overflow signal separating this * from the one
-above is a DEFECT.
-
-
-Diagnosis resumes after milestone Number 190 Page: 9
-
-
-What message and/or values does Division by Zero produce?
- Trying to compute 1 / 0 produces ... Inf .
-
- Trying to compute 0 / 0 produces ... NaN .
-
-Diagnosis resumes after milestone Number 220 Page: 10
-
-
-The number of FLAWs discovered = 1.
-
-The arithmetic diagnosed seems Satisfactory though flawed.
-END OF TEST.
+Lest this program stop prematurely, i.e. before displaying
+
+ `END OF TEST',
+
+try to persuade the computer NOT to terminate execution when an
+error like Over/Underflow or Division by Zero occurs, but rather
+to persevere with a surrogate value after, perhaps, displaying some
+warning. If persuasion avails naught, don't despair but run this
+program anyway to see how many milestones it passes, and then
+amend it to make further progress.
+
+Answer questions with Y, y, N or n (unless otherwise indicated).
+
+
+Diagnosis resumes after milestone Number 0 Page: 1
+
+Users are invited to help debug and augment this program so it will
+cope with unanticipated and newly uncovered arithmetic pathologies.
+
+Please send suggestions and interesting results to
+ Richard Karpinski
+ Computer Center U-76
+ University of California
+ San Francisco, CA 94143-0704, USA
+
+In doing so, please include the following information:
+ Precision: double;
+ Version: 10 February 1989;
+ Computer:
+
+ Compiler:
+
+ Optimization level:
+
+ Other relevant compiler options:
+
+Diagnosis resumes after milestone Number 1 Page: 2
+
+Running this program should reveal these characteristics:
+ Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
+ Precision = number of significant digits carried.
+ U2 = Radix/Radix^Precision = One Ulp
+ (OneUlpnit in the Last Place) of 1.000xxx .
+ U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
+ Adequacy of guard digits for Mult., Div. and Subt.
+ Whether arithmetic is chopped, correctly rounded, or something else
+ for Mult., Div., Add/Subt. and Sqrt.
+ Whether a Sticky Bit used correctly for rounding.
+ UnderflowThreshold = an underflow threshold.
+ E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
+ V = an overflow threshold, roughly.
+ V0 tells, roughly, whether Infinity is represented.
+ Comparisions are checked for consistency with subtraction
+ and for contamination with pseudo-zeros.
+ Sqrt is tested. Y^X is not tested.
+ Extra-precise subexpressions are revealed but NOT YET tested.
+ Decimal-Binary conversion is NOT YET tested for accuracy.
+
+Diagnosis resumes after milestone Number 2 Page: 3
+
+The program attempts to discriminate among
+ FLAWs, like lack of a sticky bit,
+ Serious DEFECTs, like lack of a guard digit, and
+ FAILUREs, like 2+2 == 5 .
+Failures may confound subsequent diagnoses.
+
+The diagnostic capabilities of this program go beyond an earlier
+program called `MACHAR', which can be found at the end of the
+book `Software Manual for the Elementary Functions' (1980) by
+W. J. Cody and W. Waite. Although both programs try to discover
+the Radix, Precision and range (over/underflow thresholds)
+of the arithmetic, this program tries to cope with a wider variety
+of pathologies, and to say how well the arithmetic is implemented.
+
+The program is based upon a conventional radix representation for
+floating-point numbers, but also allows logarithmic encoding
+as used by certain early WANG machines.
+
+BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
+see source comments for more history.
+
+Diagnosis resumes after milestone Number 3 Page: 4
+
+Program is now RUNNING tests on small integers:
+-1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
+
+Searching for Radix and Precision.
+Radix = 2.000000 .
+Closest relative separation found is U1 = 1.1102230e-16 .
+
+Recalculating radix and precision
+ confirms closest relative separation U1 .
+Radix confirmed.
+The number of significant digits of the Radix is 53.000000 .
+Some subexpressions appear to be calculated extra
+precisely with about 11 extra B-digits, i.e.
+roughly 3.31133 extra significant decimals.
+That feature is not tested further by this program.
+
+Diagnosis resumes after milestone Number 30 Page: 5
+
+Subtraction appears to be normalized, as it should be.
+Checking for guard digit in *, /, and -.
+ *, /, and - appear to have guard digits, as they should.
+
+Diagnosis resumes after milestone Number 40 Page: 6
+
+Checking rounding on multiply, divide and add/subtract.
+* is neither chopped nor correctly rounded.
+/ is neither chopped nor correctly rounded.
+Addition/Subtraction neither rounds nor chops.
+Sticky bit used incorrectly or not at all.
+FLAW: lack(s) of guard digits or failure(s) to correctly round or chop
+(noted above) count as one flaw in the final tally below.
+
+Does Multiplication commute? Testing on 20 random pairs.
+ No failures found in 20 integer pairs.
+
+Running test of square root(x).
+Testing if sqrt(X * X) == X for 20 Integers X.
+Test for sqrt monotonicity.
+sqrt has passed a test for Monotonicity.
+Testing whether sqrt is rounded or chopped.
+Square root is neither chopped nor correctly rounded.
+Observed errors run from -5.0000000e-01 to 5.0000000e-01 ulps.
+
+Diagnosis resumes after milestone Number 90 Page: 7
+
+Testing powers Z^i for small Integers Z and i.
+... no discrepancis found.
+
+Seeking Underflow thresholds UfThold and E0.
+Smallest strictly positive number found is E0 = 4.94066e-324 .
+Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
+What the machine gets for (Z + Z) / Z is 2.00000000000000000e+00 .
+This is O.K., provided Over/Underflow has NOT just been signaled.
+Underflow is gradual; it incurs Absolute Error =
+(roundoff in UfThold) < E0.
+The Underflow threshold is 2.22507385850720188e-308, below which
+calculation may suffer larger Relative error than merely roundoff.
+Since underflow occurs below the threshold
+UfThold = (2.00000000000000000e+00) ^ (-1.02200000000000000e+03)
+only underflow should afflict the expression
+ (2.00000000000000000e+00) ^ (-1.02200000000000000e+03);
+actually calculating yields: 0.00000000000000000e+00 .
+This computed value is O.K.
+
+Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065218e+00 as X -> 1.
+Accuracy seems adequate.
+Testing powers Z^Q at four nearly extreme values.
+ ... no discrepancies found.
+
+
+Diagnosis resumes after milestone Number 160 Page: 8
+
+Searching for Overflow threshold:
+This may generate an error.
+Can `Z = -Y' overflow?
+Trying it on Y = -Inf .
+Seems O.K.
+Overflow threshold is V = 1.79769313486231571e+308 .
+Overflow saturates at V0 = Inf .
+No Overflow should be signaled for V * 1 = 1.79769313486231571e+308
+ nor for V / 1 = 1.79769313486231571e+308 .
+Any overflow signal separating this * from the one
+above is a DEFECT.
+
+
+Diagnosis resumes after milestone Number 190 Page: 9
+
+
+What message and/or values does Division by Zero produce?
+ Trying to compute 1 / 0 produces ... Inf .
+
+ Trying to compute 0 / 0 produces ... NaN .
+
+Diagnosis resumes after milestone Number 220 Page: 10
+
+
+The number of FLAWs discovered = 1.
+
+The arithmetic diagnosed seems Satisfactory though flawed.
+END OF TEST.
diff --git a/lcc/x86/linux/tst/paranoia.2bk b/lcc/x86/linux/tst/paranoia.2bk
index f6ddf16..2718174 100755
--- a/lcc/x86/linux/tst/paranoia.2bk
+++ b/lcc/x86/linux/tst/paranoia.2bk
@@ -1,16 +1,16 @@
-tst/paranoia.c:1867: warning: missing return value
-tst/paranoia.c:1874: warning: missing return value
-tst/paranoia.c:1884: warning: missing return value
-tst/paranoia.c:1924: warning: missing return value
-tst/paranoia.c:1939: warning: missing return value
-tst/paranoia.c:1956: warning: missing return value
-tst/paranoia.c:1975: warning: missing return value
-tst/paranoia.c:1988: warning: missing return value
-tst/paranoia.c:1995: warning: missing return value
-tst/paranoia.c:2055: warning: missing return value
-tst/paranoia.c:2062: warning: missing return value
-tst/paranoia.c:2070: warning: missing return value
-tst/paranoia.c:2087: warning: missing return value
-tst/paranoia.c:2115: warning: missing return value
-tst/paranoia.c:2144: warning: missing return value
-tst/paranoia.c:2173: warning: missing return value
+tst/paranoia.c:1867: warning: missing return value
+tst/paranoia.c:1874: warning: missing return value
+tst/paranoia.c:1884: warning: missing return value
+tst/paranoia.c:1924: warning: missing return value
+tst/paranoia.c:1939: warning: missing return value
+tst/paranoia.c:1956: warning: missing return value
+tst/paranoia.c:1975: warning: missing return value
+tst/paranoia.c:1988: warning: missing return value
+tst/paranoia.c:1995: warning: missing return value
+tst/paranoia.c:2055: warning: missing return value
+tst/paranoia.c:2062: warning: missing return value
+tst/paranoia.c:2070: warning: missing return value
+tst/paranoia.c:2087: warning: missing return value
+tst/paranoia.c:2115: warning: missing return value
+tst/paranoia.c:2144: warning: missing return value
+tst/paranoia.c:2173: warning: missing return value
diff --git a/lcc/x86/linux/tst/paranoia.sbk b/lcc/x86/linux/tst/paranoia.sbk
index 79c571c..0eaccc7 100755
--- a/lcc/x86/linux/tst/paranoia.sbk
+++ b/lcc/x86/linux/tst/paranoia.sbk
@@ -1,20248 +1,20248 @@
-.data
-.globl Zero
-.align 4
-.type Zero,@object
-.size Zero,8
-Zero:
-.long 0
-.long 0
-.globl Half
-.align 4
-.type Half,@object
-.size Half,8
-Half:
-.long 0
-.long 1071644672
-.globl One
-.align 4
-.type One,@object
-.size One,8
-One:
-.long 0
-.long 1072693248
-.globl Two
-.align 4
-.type Two,@object
-.size Two,8
-Two:
-.long 0
-.long 1073741824
-.globl Three
-.align 4
-.type Three,@object
-.size Three,8
-Three:
-.long 0
-.long 1074266112
-.globl Four
-.align 4
-.type Four,@object
-.size Four,8
-Four:
-.long 0
-.long 1074790400
-.globl Five
-.align 4
-.type Five,@object
-.size Five,8
-Five:
-.long 0
-.long 1075052544
-.globl Eight
-.align 4
-.type Eight,@object
-.size Eight,8
-Eight:
-.long 0
-.long 1075838976
-.globl Nine
-.align 4
-.type Nine,@object
-.size Nine,8
-Nine:
-.long 0
-.long 1075970048
-.globl TwentySeven
-.align 4
-.type TwentySeven,@object
-.size TwentySeven,8
-TwentySeven:
-.long 0
-.long 1077608448
-.globl ThirtyTwo
-.align 4
-.type ThirtyTwo,@object
-.size ThirtyTwo,8
-ThirtyTwo:
-.long 0
-.long 1077936128
-.globl TwoForty
-.align 4
-.type TwoForty,@object
-.size TwoForty,8
-TwoForty:
-.long 0
-.long 1080950784
-.globl MinusOne
-.align 4
-.type MinusOne,@object
-.size MinusOne,8
-MinusOne:
-.long 0
-.long -1074790400
-.globl OneAndHalf
-.align 4
-.type OneAndHalf,@object
-.size OneAndHalf,8
-OneAndHalf:
-.long 0
-.long 1073217536
-.globl NoTrials
-.align 4
-.type NoTrials,@object
-.size NoTrials,4
-NoTrials:
-.long 20
-.globl sigfpe
-.text
-.align 16
-.type sigfpe,@function
-sigfpe:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-incl fpecount
-pushl $.LC3
-call printf
-addl $4,%esp
-pushl $_IO_stdout_
-call fflush
-addl $4,%esp
-movl sigsave,%edi
-cmpl $0,%edi
-je .LC4
-pushl sigsave
-pushl $8
-call signal
-addl $8,%esp
-movl $0,sigsave
-pushl $1
-pushl $ovfl_buf
-call longjmp
-addl $8,%esp
-.LC4:
-call abort
-.LC2:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf6:
-.size sigfpe,.Lf6-sigfpe
-.data
-.align 4
-.type msg.758,@object
-msg.758:
-.long .LC759
-.long .LC760
-.long .LC761
-.long .LC762
-.size msg.758,16
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $1684,%esp
-fldl .LC8
-fstpl Zero
-fldl .LC9
-fstpl One
-fldl One
-fstpl -8(%ebp)
-fldl -8(%ebp)
-faddl -8(%ebp)
-fstpl Two
-fldl Two
-fstpl -16(%ebp)
-fldl -16(%ebp)
-faddl -8(%ebp)
-fstpl Three
-fldl Three
-fstpl -24(%ebp)
-fldl -24(%ebp)
-faddl -8(%ebp)
-fstpl Four
-fldl Four
-fstpl -32(%ebp)
-fldl -32(%ebp)
-faddl -8(%ebp)
-fstpl Five
-fldl -32(%ebp)
-faddl -32(%ebp)
-fstpl Eight
-fldl -24(%ebp)
-fmull -24(%ebp)
-fstpl Nine
-fldl Nine
-fmull -24(%ebp)
-fstpl TwentySeven
-fldl -32(%ebp)
-fmull Eight
-fstpl ThirtyTwo
-fldl -32(%ebp)
-fmull Five
-fmull -24(%ebp)
-fmull -32(%ebp)
-fstpl TwoForty
-fldl -8(%ebp)
-fchs
-fstpl MinusOne
-fldl -8(%ebp)
-fdivl -16(%ebp)
-fstpl Half
-fldl -8(%ebp)
-faddl Half
-fstpl OneAndHalf
-movl $0,ErrCnt
-movl $0,ErrCnt+4
-movl $0,ErrCnt+8
-movl $0,ErrCnt+12
-movl $1,PageNo
-movl $0,Milestone
-pushl $sigfpe
-pushl $8
-call signal
-addl $8,%esp
-call Instructions
-call Pause
-call Heading
-call Pause
-call Characteristics
-call Pause
-call History
-call Pause
-movl $7,Milestone
-pushl $.LC13
-call printf
-addl $4,%esp
-pushl $.LC15
-fldl Zero
-faddl Zero
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC16
-fldl One
-fsubl One
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC16
-fldl Zero
-fcompl One
-fstsw %ax
-sahf
-jae .LC16
-fldl One
-faddl One
-fldl Two
-fcompp
-fstsw %ax
-sahf
-jne .LC16
-movl $1,-36(%ebp)
-jmp .LC17
-.LC16:
-movl $0,-36(%ebp)
-.LC17:
-pushl -36(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl Zero
-fchs
-fstpl Z
-fldl .LC8
-fcompl Z
-fstsw %ax
-sahf
-je .LC18
-incl ErrCnt
-pushl $.LC20
-call printf
-addl $4,%esp
-fldl .LC21
-fstpl U1
-fldl .LC9
-fstpl Radix
-call TstPtUf
-.LC18:
-pushl $.LC23
-fldl Two
-faddl One
-fcompl Three
-fstsw %ax
-sahf
-jne .LC24
-fldl Three
-faddl One
-fcompl Four
-fstsw %ax
-sahf
-jne .LC24
-fldl Four
-fldl Two
-fldl Two
-fchs
-fmulp %st(1),%st
-faddp %st(1),%st
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC24
-fldl Four
-fsubl Three
-fsubl One
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC24
-movl $1,-56(%ebp)
-jmp .LC25
-.LC24:
-movl $0,-56(%ebp)
-.LC25:
-pushl -56(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl .LC8
-fsubl One
-fcompl MinusOne
-fstsw %ax
-sahf
-jne .LC28
-fldl MinusOne
-faddl One
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC28
-fldl One
-faddl MinusOne
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC28
-fldl One
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -132(%ebp)
-fldl MinusOne
-faddl -132(%ebp)
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC28
-fldl MinusOne
-fldl MinusOne
-fmull MinusOne
-faddp %st(1),%st
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC28
-movl $1,-100(%ebp)
-jmp .LC29
-.LC28:
-movl $0,-100(%ebp)
-.LC29:
-pushl $.LC27
-pushl -100(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-pushl $.LC31
-fldl Half
-faddl MinusOne
-faddl Half
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC32
-movl $1,-152(%ebp)
-jmp .LC33
-.LC32:
-movl $0,-152(%ebp)
-.LC33:
-pushl -152(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-movl $10,Milestone
-pushl $.LC35
-fldl Three
-fmull Three
-fcompl Nine
-fstsw %ax
-sahf
-jne .LC36
-fldl Nine
-fmull Three
-fcompl TwentySeven
-fstsw %ax
-sahf
-jne .LC36
-fldl Four
-faddl Four
-fcompl Eight
-fstsw %ax
-sahf
-jne .LC36
-fldl Eight
-fmull Four
-fcompl ThirtyTwo
-fstsw %ax
-sahf
-jne .LC36
-fldl ThirtyTwo
-fsubl TwentySeven
-fsubl Four
-fsubl One
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC36
-movl $1,-164(%ebp)
-jmp .LC37
-.LC36:
-movl $0,-164(%ebp)
-.LC37:
-pushl -164(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-pushl $.LC39
-fldl Four
-faddl One
-fcompl Five
-fstsw %ax
-sahf
-jne .LC40
-fldl Four
-fmull Five
-fmull Three
-fmull Four
-fcompl TwoForty
-fstsw %ax
-sahf
-jne .LC40
-fldl TwoForty
-fdivl Three
-fldl Four
-fmull Four
-fmull Five
-fsubp %st(1),%st
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC40
-fldl TwoForty
-fdivl Four
-fldl Five
-fmull Three
-fmull Four
-fsubp %st(1),%st
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC40
-fldl TwoForty
-fdivl Five
-fldl Four
-fmull Three
-fmull Four
-fsubp %st(1),%st
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC40
-movl $1,-216(%ebp)
-jmp .LC41
-.LC40:
-movl $0,-216(%ebp)
-.LC41:
-pushl -216(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-cmpl $0,ErrCnt
-jne .LC42
-pushl $.LC44
-call printf
-addl $4,%esp
-pushl $.LC45
-call printf
-addl $4,%esp
-.LC42:
-pushl $.LC46
-call printf
-addl $4,%esp
-fldl One
-fstpl W
-.LC47:
-fldl W
-fstpl -264(%ebp)
-fldl -264(%ebp)
-faddl -264(%ebp)
-fstpl W
-fldl W
-fstpl -272(%ebp)
-fldl -272(%ebp)
-faddl One
-fstpl Y
-fldl Y
-fsubl -272(%ebp)
-fstpl Z
-fldl Z
-fsubl One
-fstpl Y
-.LC48:
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -264(%ebp)
-fldl MinusOne
-faddl -264(%ebp)
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-ja .LC47
-fldl Zero
-fstpl Precision
-fldl One
-fstpl Y
-.LC50:
-fldl Y
-fstpl -280(%ebp)
-fldl W
-faddl -280(%ebp)
-fstpl Radix
-fldl -280(%ebp)
-faddl -280(%ebp)
-fstpl Y
-fldl Radix
-fsubl W
-fstpl Radix
-.LC51:
-fldl Zero
-fcompl Radix
-fstsw %ax
-sahf
-je .LC50
-fldl Two
-fcompl Radix
-fstsw %ax
-sahf
-jbe .LC53
-fldl One
-fstpl Radix
-.LC53:
-fldl Radix
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC55
-call printf
-addl $12,%esp
-fldl .LC9
-fcompl Radix
-fstsw %ax
-sahf
-je .LC56
-fldl One
-fstpl W
-.LC58:
-fldl Precision
-faddl One
-fstpl Precision
-fldl W
-fmull Radix
-fstpl W
-fldl W
-faddl One
-fstpl Y
-.LC59:
-fldl Y
-fsubl W
-fldl One
-fcompp
-fstsw %ax
-sahf
-je .LC58
-.LC56:
-fldl One
-fdivl W
-fstpl U1
-fldl U1
-fstpl -272(%ebp)
-fldl Radix
-fmull -272(%ebp)
-fstpl U2
-fldl -272(%ebp)
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC61
-call printf
-addl $12,%esp
-pushl $.LC62
-call printf
-addl $4,%esp
-fldl Radix
-fstpl E0
-fldl U1
-fstpl E1
-fldl U2
-fstpl E9
-fldl Precision
-fstpl E3
-fldl Four
-fdivl Three
-fstpl X
-fldl X
-fsubl One
-fstpl Third
-fldl Third
-fstpl -280(%ebp)
-fldl Half
-fsubl -280(%ebp)
-fstpl F6
-fldl F6
-fstpl -288(%ebp)
-fldl -288(%ebp)
-faddl -288(%ebp)
-fstpl X
-fldl X
-fsubl -280(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -296(%ebp)
-fldl -296(%ebp)
-fstpl X
-fldl U2
-fcompl X
-fstsw %ax
-sahf
-jbe .LC63
-fldl U2
-fstpl X
-.LC63:
-.LC65:
-fldl X
-fstpl U2
-fldl U2
-fstpl -304(%ebp)
-fldl Half
-fmull -304(%ebp)
-fldl ThirtyTwo
-fmull -304(%ebp)
-fmull -304(%ebp)
-faddp %st(1),%st
-fstpl Y
-fldl One
-faddl Y
-fstpl Y
-fldl Y
-fsubl One
-fstpl X
-.LC66:
-fldl X
-fcompl U2
-fstsw %ax
-sahf
-jae .LC68
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jb .LC65
-.LC68:
-fldl Two
-fdivl Three
-fstpl X
-fldl X
-fsubl Half
-fstpl F6
-fldl F6
-fstpl -320(%ebp)
-fldl -320(%ebp)
-faddl -320(%ebp)
-fstpl Third
-fldl Third
-fsubl Half
-fstpl X
-fldl X
-faddl -320(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -328(%ebp)
-fldl -328(%ebp)
-fstpl X
-fldl U1
-fcompl X
-fstsw %ax
-sahf
-jbe .LC69
-fldl U1
-fstpl X
-.LC69:
-.LC71:
-fldl X
-fstpl U1
-fldl U1
-fstpl -344(%ebp)
-fldl Half
-fmull -344(%ebp)
-fldl ThirtyTwo
-fmull -344(%ebp)
-fmull -344(%ebp)
-faddp %st(1),%st
-fstpl Y
-fldl Half
-fsubl Y
-fstpl Y
-fldl Half
-faddl Y
-fstpl X
-fldl Half
-fsubl X
-fstpl Y
-fldl Half
-faddl Y
-fstpl X
-.LC72:
-fldl X
-fcompl U1
-fstsw %ax
-sahf
-jae .LC74
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jb .LC71
-.LC74:
-fldl E1
-fcompl U1
-fstsw %ax
-sahf
-jne .LC75
-pushl $.LC77
-call printf
-addl $4,%esp
-jmp .LC76
-.LC75:
-fldl U1
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC78
-call printf
-addl $12,%esp
-.LC76:
-fldl One
-fdivl U1
-fstpl W
-fldl Half
-fsubl U1
-faddl Half
-fstpl F9
-fldl U2
-fdivl U1
-faddl .LC79
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -360(%ebp)
-fldl -360(%ebp)
-fstpl Radix
-fldl E0
-fcompl Radix
-fstsw %ax
-sahf
-jne .LC80
-pushl $.LC82
-call printf
-addl $4,%esp
-jmp .LC81
-.LC80:
-fldl Radix
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC83
-call printf
-addl $12,%esp
-.LC81:
-pushl $.LC85
-fldl Eight
-faddl Eight
-fcompl Radix
-fstsw %ax
-sahf
-jb .LC86
-movl $1,-364(%ebp)
-jmp .LC87
-.LC86:
-movl $0,-364(%ebp)
-.LC87:
-pushl -364(%ebp)
-pushl $2
-call TstCond
-addl $12,%esp
-pushl $.LC89
-fldl Two
-fcompl Radix
-fstsw %ax
-sahf
-je .LC93
-fldl .LC94
-fcompl Radix
-fstsw %ax
-sahf
-je .LC93
-fldl One
-fcompl Radix
-fstsw %ax
-sahf
-jne .LC90
-.LC93:
-movl $1,-376(%ebp)
-jmp .LC91
-.LC90:
-movl $0,-376(%ebp)
-.LC91:
-pushl -376(%ebp)
-pushl $3
-call TstCond
-addl $12,%esp
-movl $20,Milestone
-pushl $.LC96
-fldl F9
-fsubl Half
-fldl Half
-fcompp
-fstsw %ax
-sahf
-jbe .LC97
-movl $1,-388(%ebp)
-jmp .LC98
-.LC97:
-movl $0,-388(%ebp)
-.LC98:
-pushl -388(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl F9
-fstpl X
-movl $1,I
-fldl X
-fsubl Half
-fstpl Y
-fldl Y
-fsubl Half
-fstpl Z
-pushl $.LC100
-fldl One
-fcompl X
-fstsw %ax
-sahf
-jne .LC103
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jne .LC101
-.LC103:
-movl $1,-400(%ebp)
-jmp .LC102
-.LC101:
-movl $0,-400(%ebp)
-.LC102:
-pushl -400(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl One
-faddl U2
-fstpl X
-movl $0,I
-movl $25,Milestone
-fldl Radix
-fsubl One
-fstpl BMinusU2
-fldl BMinusU2
-fsubl U2
-faddl One
-fstpl BMinusU2
-fldl One
-fcompl Radix
-fstsw %ax
-sahf
-je .LC104
-fldl U1
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -440(%ebp)
-fldl Radix
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -448(%ebp)
-fldl TwoForty
-fchs
-fmull -440(%ebp)
-fdivl -448(%ebp)
-fstpl X
-fldl Half
-faddl X
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -456(%ebp)
-fldl -456(%ebp)
-fstpl Y
-fldl X
-fsubl Y
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -464(%ebp)
-fldl -464(%ebp)
-fmull Four
-fldl One
-fcompp
-fstsw %ax
-sahf
-jbe .LC106
-fldl Y
-fstpl X
-.LC106:
-fldl X
-fdivl TwoForty
-fstpl Precision
-fldl Half
-faddl Precision
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -472(%ebp)
-fldl -472(%ebp)
-fstpl Y
-fldl Precision
-fsubl Y
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -480(%ebp)
-fldl -480(%ebp)
-fmull TwoForty
-fldl Half
-fcompp
-fstsw %ax
-sahf
-jbe .LC108
-fldl Y
-fstpl Precision
-.LC108:
-.LC104:
-fldl Precision
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -448(%ebp)
-fldl -448(%ebp)
-fcompl Precision
-fstsw %ax
-sahf
-jne .LC112
-fldl One
-fcompl Radix
-fstsw %ax
-sahf
-jne .LC110
-.LC112:
-pushl $.LC113
-call printf
-addl $4,%esp
-pushl $.LC114
-call printf
-addl $4,%esp
-.LC110:
-fldl One
-fcompl Radix
-fstsw %ax
-sahf
-jne .LC115
-pushl $.LC117
-call printf
-addl $4,%esp
-jmp .LC116
-.LC115:
-fldl Precision
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC118
-call printf
-addl $12,%esp
-.LC116:
-pushl $.LC120
-fldl U2
-fmull Nine
-fmull Nine
-fmull TwoForty
-fldl One
-fcompp
-fstsw %ax
-sahf
-jbe .LC121
-movl $1,-452(%ebp)
-jmp .LC122
-.LC121:
-movl $0,-452(%ebp)
-.LC122:
-pushl -452(%ebp)
-pushl $1
-call TstCond
-addl $12,%esp
-movl $30,Milestone
-fldl One
-fdivl Four
-fstpl -492(%ebp)
-fldl Four
-fdivl Three
-fsubl One
-fsubl -492(%ebp)
-fmull Three
-fsubl -492(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -500(%ebp)
-fldl -500(%ebp)
-fstpl X
-.LC123:
-fldl X
-fstpl Z2
-fldl Z2
-fstpl -516(%ebp)
-fldl One
-fldl Half
-fmull -516(%ebp)
-fldl ThirtyTwo
-fmull -516(%ebp)
-fmull -516(%ebp)
-faddp %st(1),%st
-faddp %st(1),%st
-fsubl One
-fstpl X
-.LC124:
-fldl X
-fcompl Z2
-fstsw %ax
-sahf
-jae .LC126
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jb .LC123
-.LC126:
-fldl Three
-fdivl Four
-fldl Two
-fdivl Three
-fsubp %st(1),%st
-fmull Three
-fldl One
-fdivl Four
-fsubp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -532(%ebp)
-fldl -532(%ebp)
-fstpl Z
-fldl -532(%ebp)
-fstpl Y
-fldl -532(%ebp)
-fstpl X
-.LC127:
-fldl Z
-fstpl Z1
-fldl One
-fdivl Two
-fstpl -540(%ebp)
-fldl Z1
-fstpl -548(%ebp)
-fldl -540(%ebp)
-fldl -540(%ebp)
-fldl Half
-fmull -548(%ebp)
-fldl ThirtyTwo
-fmull -548(%ebp)
-fmull -548(%ebp)
-faddp %st(1),%st
-fsubp %st(1),%st
-faddl -540(%ebp)
-fsubp %st(1),%st
-faddl -540(%ebp)
-fstpl Z
-.LC128:
-fldl Z
-fcompl Z1
-fstsw %ax
-sahf
-jae .LC130
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jb .LC127
-.LC130:
-.LC131:
-.LC134:
-fldl Y
-fstpl Y1
-fldl Y1
-fstpl -556(%ebp)
-fldl Half
-fldl Half
-fldl Half
-fmull -556(%ebp)
-fldl ThirtyTwo
-fmull -556(%ebp)
-fmull -556(%ebp)
-faddp %st(1),%st
-fsubp %st(1),%st
-faddl Half
-fsubp %st(1),%st
-faddl Half
-fstpl Y
-.LC135:
-fldl Y
-fcompl Y1
-fstsw %ax
-sahf
-jae .LC137
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jb .LC134
-.LC137:
-fldl X
-fstpl X1
-fldl X1
-fstpl -556(%ebp)
-fldl Half
-fmull -556(%ebp)
-fldl ThirtyTwo
-fmull -556(%ebp)
-fmull -556(%ebp)
-faddp %st(1),%st
-fsubl F9
-faddl F9
-fstpl X
-.LC132:
-fldl X
-fcompl X1
-fstsw %ax
-sahf
-jae .LC138
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jb .LC131
-.LC138:
-fldl Y1
-fcompl X1
-fstsw %ax
-sahf
-jne .LC141
-fldl Z1
-fcompl X1
-fstsw %ax
-sahf
-je .LC139
-.LC141:
-pushl $.LC142
-pushl $1
-call BadCond
-addl $8,%esp
-fldl Z1
-subl $8,%esp
-fstpl (%esp)
-fldl Y1
-subl $8,%esp
-fstpl (%esp)
-fldl X1
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC143
-call printf
-addl $28,%esp
-pushl $.LC144
-call printf
-addl $4,%esp
-pushl $.LC145
-call printf
-addl $4,%esp
-pushl $.LC146
-call notify
-addl $4,%esp
-fldl U1
-fcompl X1
-fstsw %ax
-sahf
-je .LC150
-fldl U1
-fcompl Y1
-fstsw %ax
-sahf
-je .LC150
-fldl U1
-fcompl Z1
-fstsw %ax
-sahf
-jne .LC140
-.LC150:
-pushl $.LC151
-call printf
-addl $4,%esp
-jmp .LC140
-.LC139:
-fldl U1
-fcompl Z1
-fstsw %ax
-sahf
-jne .LC154
-fldl U2
-fcompl Z2
-fstsw %ax
-sahf
-je .LC152
-.LC154:
-fldl U1
-fcompl Z1
-fstsw %ax
-sahf
-jbe .LC157
-fldl U2
-fcompl Z2
-fstsw %ax
-sahf
-ja .LC155
-.LC157:
-pushl $.LC158
-pushl $0
-call BadCond
-addl $8,%esp
-pushl $.LC159
-call notify
-addl $4,%esp
-fldl Z1
-fsubl U1
-subl $8,%esp
-fstpl (%esp)
-fldl U1
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC160
-call printf
-addl $20,%esp
-fldl Z2
-fsubl U2
-subl $8,%esp
-fstpl (%esp)
-fldl U2
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC161
-call printf
-addl $20,%esp
-jmp .LC156
-.LC155:
-fldl Zero
-fcompl Z1
-fstsw %ax
-sahf
-jae .LC164
-fldl Zero
-fcompl Z2
-fstsw %ax
-sahf
-jb .LC162
-.LC164:
-fldl Radix
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC165
-call printf
-addl $12,%esp
-pushl $.LC166
-call printf
-addl $4,%esp
-fldl Z2
-subl $8,%esp
-fstpl (%esp)
-fldl Z1
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC167
-call printf
-addl $20,%esp
-pushl $.LC168
-call notify
-addl $4,%esp
-.LC162:
-fldl Z2
-fcompl Z1
-fstsw %ax
-sahf
-jne .LC171
-fldl Zero
-fcompl Z1
-fstsw %ax
-sahf
-jae .LC169
-.LC171:
-fldl Z1
-fdivl U1
-fstpl X
-fldl Z2
-fdivl U2
-fstpl Y
-fldl X
-fcompl Y
-fstsw %ax
-sahf
-jae .LC172
-fldl Y
-fstpl X
-.LC172:
-fldl X
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -580(%ebp)
-fldl -580(%ebp)
-fchs
-fstpl Q
-pushl $.LC174
-call printf
-addl $4,%esp
-fldl Radix
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -588(%ebp)
-fldl Q
-fdivl -588(%ebp)
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC175
-call printf
-addl $12,%esp
-fldl .LC94
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -596(%ebp)
-fldl Q
-fdivl -596(%ebp)
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC176
-call printf
-addl $12,%esp
-.LC169:
-pushl $.LC151
-call printf
-addl $4,%esp
-.LC156:
-.LC152:
-.LC140:
-call Pause
-movl $35,Milestone
-fldl Two
-fcompl Radix
-fstsw %ax
-sahf
-ja .LC177
-fldl W
-fldl Radix
-fmull Radix
-fdivp %st(1),%st
-fstpl X
-fldl X
-fstpl -576(%ebp)
-fldl -576(%ebp)
-faddl One
-fstpl Y
-fldl Y
-fsubl -576(%ebp)
-fstpl Z
-fldl Z
-fstpl -584(%ebp)
-fldl -584(%ebp)
-faddl U2
-fstpl T
-fldl T
-fsubl -584(%ebp)
-fstpl X
-pushl $.LC180
-fldl U2
-fcompl X
-fstsw %ax
-sahf
-jne .LC181
-movl $1,-560(%ebp)
-jmp .LC182
-.LC181:
-movl $0,-560(%ebp)
-.LC182:
-pushl -560(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl U2
-fcompl X
-fstsw %ax
-sahf
-jne .LC183
-pushl $.LC185
-call printf
-addl $4,%esp
-.LC183:
-.LC177:
-pushl $.LC186
-call printf
-addl $4,%esp
-fldl F9
-fmull One
-fstpl Y
-fldl One
-fmull F9
-fstpl Z
-fldl F9
-fsubl Half
-fstpl X
-fldl X
-fstpl -588(%ebp)
-fldl Y
-fsubl Half
-fsubl -588(%ebp)
-fstpl Y
-fldl Z
-fsubl Half
-fsubl -588(%ebp)
-fstpl Z
-fldl One
-faddl U2
-fstpl X
-fldl X
-fstpl -604(%ebp)
-fldl -604(%ebp)
-fmull Radix
-fstpl T
-fldl Radix
-fmull -604(%ebp)
-fstpl R
-fldl T
-fsubl Radix
-fstpl X
-fldl Radix
-fmull U2
-fstpl -620(%ebp)
-fldl X
-fsubl -620(%ebp)
-fstpl X
-fldl R
-fsubl Radix
-fstpl T
-fldl T
-fsubl -620(%ebp)
-fstpl T
-fldl Radix
-fsubl One
-fstpl -628(%ebp)
-fldl X
-fmull -628(%ebp)
-fstpl X
-fldl T
-fmull -628(%ebp)
-fstpl T
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC187
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC187
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jne .LC187
-fldl Zero
-fcompl T
-fstsw %ax
-sahf
-jne .LC187
-movl $1,GMult
-jmp .LC188
-.LC187:
-movl $0,GMult
-pushl $.LC189
-pushl $0
-pushl $1
-call TstCond
-addl $12,%esp
-.LC188:
-fldl Radix
-fmull U2
-fstpl Z
-fldl Z
-fstpl -648(%ebp)
-fldl One
-faddl -648(%ebp)
-fstpl X
-fldl X
-fstpl -656(%ebp)
-fldl -656(%ebp)
-faddl -648(%ebp)
-fldl -656(%ebp)
-fmull -656(%ebp)
-fsubp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -664(%ebp)
-fldl -664(%ebp)
-fsubl U2
-fstpl Y
-fldl One
-fsubl U2
-fstpl X
-fldl X
-fstpl -680(%ebp)
-fldl -680(%ebp)
-fsubl U2
-fldl -680(%ebp)
-fmull -680(%ebp)
-fsubp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -688(%ebp)
-fldl -688(%ebp)
-fsubl U1
-fstpl Z
-pushl $.LC191
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jb .LC192
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jb .LC192
-movl $1,-640(%ebp)
-jmp .LC193
-.LC192:
-movl $0,-640(%ebp)
-.LC193:
-pushl -640(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl One
-fsubl U2
-fstpl Y
-fldl One
-faddl U2
-fstpl X
-fldl One
-fdivl Y
-fstpl Z
-fldl Z
-fsubl X
-fstpl Y
-fldl One
-fdivl Three
-fstpl X
-fldl Three
-fdivl Nine
-fstpl Z
-fldl Z
-fstpl -740(%ebp)
-fldl X
-fsubl -740(%ebp)
-fstpl X
-fldl Nine
-fdivl TwentySeven
-fstpl T
-fldl -740(%ebp)
-fsubl T
-fstpl Z
-pushl $.LC195
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC196
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC196
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jne .LC196
-movl $1,-700(%ebp)
-jmp .LC197
-.LC196:
-movl $0,-700(%ebp)
-.LC197:
-pushl -700(%ebp)
-pushl $2
-call TstCond
-addl $12,%esp
-fldl F9
-fdivl One
-fstpl Y
-fldl F9
-fsubl Half
-fstpl X
-fldl Y
-fsubl Half
-fsubl X
-fstpl Y
-fldl One
-faddl U2
-fstpl X
-fldl X
-fstpl -780(%ebp)
-fldl -780(%ebp)
-fdivl One
-fstpl T
-fldl T
-fsubl -780(%ebp)
-fstpl X
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC198
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC198
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jne .LC198
-movl $1,GDiv
-jmp .LC199
-.LC198:
-movl $0,GDiv
-pushl $.LC200
-pushl $0
-pushl $1
-call TstCond
-addl $12,%esp
-.LC199:
-fldl One
-fldl One
-faddl U2
-fdivp %st(1),%st
-fstpl X
-fldl X
-fsubl Half
-fsubl Half
-fstpl Y
-pushl $.LC202
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jbe .LC203
-movl $1,-792(%ebp)
-jmp .LC204
-.LC203:
-movl $0,-792(%ebp)
-.LC204:
-pushl -792(%ebp)
-pushl $1
-call TstCond
-addl $12,%esp
-fldl One
-fsubl U2
-fstpl X
-fldl One
-fldl Radix
-fmull U2
-faddp %st(1),%st
-fstpl Y
-fldl X
-fstpl -844(%ebp)
-fldl -844(%ebp)
-fmull Radix
-fstpl Z
-fldl Y
-fstpl -852(%ebp)
-fldl -852(%ebp)
-fmull Radix
-fstpl T
-fldl Z
-fdivl Radix
-fstpl R
-fldl T
-fdivl Radix
-fstpl StickyBit
-fldl R
-fsubl -844(%ebp)
-fstpl X
-fldl StickyBit
-fsubl -852(%ebp)
-fstpl Y
-pushl $.LC206
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC207
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC207
-movl $1,-812(%ebp)
-jmp .LC208
-.LC207:
-movl $0,-812(%ebp)
-.LC208:
-pushl -812(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl One
-fsubl U1
-fstpl Y
-fldl One
-fsubl F9
-fstpl X
-fldl One
-fsubl Y
-fstpl Y
-fldl Radix
-fsubl U2
-fstpl T
-fldl Radix
-fsubl BMinusU2
-fstpl Z
-fldl Radix
-fsubl T
-fstpl T
-fldl U1
-fcompl X
-fstsw %ax
-sahf
-jne .LC209
-fldl U1
-fcompl Y
-fstsw %ax
-sahf
-jne .LC209
-fldl U2
-fcompl Z
-fstsw %ax
-sahf
-jne .LC209
-fldl U2
-fcompl T
-fstsw %ax
-sahf
-jne .LC209
-movl $1,GAddSub
-jmp .LC210
-.LC209:
-movl $0,GAddSub
-pushl $.LC211
-pushl $0
-pushl $1
-call TstCond
-addl $12,%esp
-.LC210:
-fldl One
-fcompl F9
-fstsw %ax
-sahf
-je .LC212
-fldl F9
-fsubl One
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-ja .LC212
-pushl $.LC214
-pushl $1
-call BadCond
-addl $8,%esp
-pushl $.LC215
-call printf
-addl $4,%esp
-pushl $.LC216
-call printf
-addl $4,%esp
-pushl $.LC217
-call printf
-addl $4,%esp
-.LC212:
-cmpl $1,GMult
-jne .LC218
-cmpl $1,GDiv
-jne .LC218
-cmpl $1,GAddSub
-jne .LC218
-pushl $.LC220
-call printf
-addl $4,%esp
-.LC218:
-movl $40,Milestone
-call Pause
-pushl $.LC221
-call printf
-addl $4,%esp
-movl $0,RMult
-movl $0,RDiv
-movl $0,RAddSub
-fldl Radix
-fdivl Two
-fstpl RadixD2
-fldl Two
-fstpl A1
-movl $0,Done
-.LC222:
-fldl Radix
-fstpl AInvrse
-.LC225:
-fldl AInvrse
-fstpl -924(%ebp)
-fldl -924(%ebp)
-fstpl X
-fldl -924(%ebp)
-fdivl A1
-fstpl AInvrse
-.LC226:
-fldl AInvrse
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -924(%ebp)
-fldl AInvrse
-fcompl -924(%ebp)
-fstsw %ax
-sahf
-je .LC225
-fldl One
-fcompl X
-fstsw %ax
-sahf
-je .LC231
-fldl Three
-fcompl A1
-fstsw %ax
-sahf
-jae .LC229
-.LC231:
-movl $1,-928(%ebp)
-jmp .LC230
-.LC229:
-movl $0,-928(%ebp)
-.LC230:
-movl -928(%ebp),%edi
-movl %edi,Done
-cmpl $0,Done
-jne .LC232
-fldl Nine
-faddl One
-fstpl A1
-.LC232:
-.LC223:
-cmpl $0,Done
-je .LC222
-fldl One
-fcompl X
-fstsw %ax
-sahf
-jne .LC234
-fldl Radix
-fstpl A1
-.LC234:
-fldl One
-fdivl A1
-fstpl AInvrse
-fldl A1
-fstpl X
-fldl AInvrse
-fstpl Y
-movl $0,Done
-.LC236:
-fldl X
-fmull Y
-fsubl Half
-fstpl Z
-pushl $.LC240
-fldl Half
-fcompl Z
-fstsw %ax
-sahf
-jne .LC241
-movl $1,-928(%ebp)
-jmp .LC242
-.LC241:
-movl $0,-928(%ebp)
-.LC242:
-pushl -928(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl Radix
-fcompl X
-fstsw %ax
-sahf
-jne .LC244
-movl $1,-940(%ebp)
-jmp .LC245
-.LC244:
-movl $0,-940(%ebp)
-.LC245:
-movl -940(%ebp),%edi
-movl %edi,Done
-fldl Radix
-fstpl X
-fldl One
-fdivl X
-fstpl Y
-.LC237:
-cmpl $0,Done
-je .LC236
-fldl One
-faddl U2
-fstpl Y2
-fldl One
-fsubl U2
-fstpl Y1
-fldl OneAndHalf
-fsubl U2
-fstpl X
-fldl OneAndHalf
-faddl U2
-fstpl Y
-fldl X
-fstpl -956(%ebp)
-fldl Y2
-fstpl -964(%ebp)
-fldl -956(%ebp)
-fsubl U2
-fmull -964(%ebp)
-fstpl Z
-fldl Y
-fstpl -972(%ebp)
-fldl Y1
-fstpl -980(%ebp)
-fldl -972(%ebp)
-fmull -980(%ebp)
-fstpl T
-fldl Z
-fsubl -956(%ebp)
-fstpl Z
-fldl T
-fsubl -956(%ebp)
-fstpl T
-fldl -956(%ebp)
-fmull -964(%ebp)
-fstpl X
-fldl -972(%ebp)
-faddl U2
-fmull -980(%ebp)
-fstpl Y
-fldl X
-fsubl OneAndHalf
-fstpl X
-fldl Y
-fsubl OneAndHalf
-fstpl Y
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC246
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC246
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jne .LC246
-fldl Zero
-fcompl T
-fstsw %ax
-sahf
-jb .LC246
-fldl OneAndHalf
-faddl U2
-fstpl -1012(%ebp)
-fldl -1012(%ebp)
-fmull Y2
-fstpl X
-fldl OneAndHalf
-fsubl U2
-fstpl -1028(%ebp)
-fldl -1028(%ebp)
-fsubl U2
-fstpl Y
-fldl -1012(%ebp)
-faddl U2
-fstpl Z
-fldl Y1
-fstpl -1036(%ebp)
-fldl -1028(%ebp)
-fmull -1036(%ebp)
-fstpl T
-fldl Z
-fstpl -1044(%ebp)
-fldl -1044(%ebp)
-faddl U2
-fstpl -1052(%ebp)
-fldl X
-fsubl -1052(%ebp)
-fstpl X
-fldl Y
-fstpl -1060(%ebp)
-fldl -1060(%ebp)
-fmull -1036(%ebp)
-fstpl StickyBit
-fldl -1044(%ebp)
-fmull Y2
-fstpl S
-fldl T
-fsubl -1060(%ebp)
-fstpl T
-fldl U2
-fsubl -1060(%ebp)
-faddl StickyBit
-fstpl Y
-fldl S
-fldl -1052(%ebp)
-faddl U2
-fsubp %st(1),%st
-fstpl Z
-fldl Y2
-faddl U2
-fmull -1036(%ebp)
-fstpl StickyBit
-fldl Y2
-fmull -1036(%ebp)
-fstpl Y1
-fldl StickyBit
-fsubl Y2
-fstpl StickyBit
-fldl Y1
-fsubl Half
-fstpl Y1
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC248
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC248
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jne .LC248
-fldl Zero
-fcompl T
-fstsw %ax
-sahf
-jne .LC248
-fldl Zero
-fcompl StickyBit
-fstsw %ax
-sahf
-jne .LC248
-fldl Half
-fcompl Y1
-fstsw %ax
-sahf
-jne .LC248
-movl $1,RMult
-pushl $.LC250
-call printf
-addl $4,%esp
-jmp .LC249
-.LC248:
-fldl X
-faddl U2
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC251
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jbe .LC251
-fldl Z
-faddl U2
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC251
-fldl Zero
-fcompl T
-fstsw %ax
-sahf
-jbe .LC251
-fldl StickyBit
-faddl U2
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC251
-fldl Half
-fcompl Y1
-fstsw %ax
-sahf
-jbe .LC251
-movl $2,RMult
-pushl $.LC253
-call printf
-addl $4,%esp
-jmp .LC252
-.LC251:
-pushl $.LC254
-call printf
-addl $4,%esp
-.LC252:
-.LC249:
-cmpl $1,RMult
-jne .LC247
-cmpl $0,GMult
-jne .LC247
-pushl $.LC257
-call notify
-addl $4,%esp
-jmp .LC247
-.LC246:
-pushl $.LC254
-call printf
-addl $4,%esp
-.LC247:
-movl $45,Milestone
-fldl One
-faddl U2
-fstpl Y2
-fldl One
-fsubl U2
-fstpl Y1
-fldl OneAndHalf
-faddl U2
-fstpl -1020(%ebp)
-fldl -1020(%ebp)
-faddl U2
-fstpl Z
-fldl Z
-fstpl -1028(%ebp)
-fldl Y2
-fstpl -1036(%ebp)
-fldl -1028(%ebp)
-fdivl -1036(%ebp)
-fstpl X
-fldl OneAndHalf
-fsubl U2
-fsubl U2
-fstpl T
-fldl T
-fstpl -1044(%ebp)
-fldl Y1
-fstpl -1052(%ebp)
-fldl -1044(%ebp)
-fsubl U2
-fdivl -1052(%ebp)
-fstpl Y
-fldl -1028(%ebp)
-faddl U2
-fdivl -1036(%ebp)
-fstpl Z
-fldl X
-fsubl OneAndHalf
-fstpl X
-fldl Y
-fsubl -1044(%ebp)
-fstpl Y
-fldl -1044(%ebp)
-fdivl -1052(%ebp)
-fstpl T
-fldl Z
-fsubl -1020(%ebp)
-fstpl Z
-fldl U2
-fsubl OneAndHalf
-faddl T
-fstpl T
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jb .LC258
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jb .LC258
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jb .LC258
-fldl Zero
-fcompl T
-fstsw %ax
-sahf
-jb .LC258
-fldl Y2
-fstpl -1076(%ebp)
-fldl OneAndHalf
-fdivl -1076(%ebp)
-fstpl X
-fldl OneAndHalf
-fsubl U2
-fstpl Y
-fldl OneAndHalf
-faddl U2
-fstpl Z
-fldl Y
-fstpl -1092(%ebp)
-fldl X
-fsubl -1092(%ebp)
-fstpl X
-fldl Y1
-fstpl -1100(%ebp)
-fldl OneAndHalf
-fdivl -1100(%ebp)
-fstpl T
-fldl -1092(%ebp)
-fdivl -1100(%ebp)
-fstpl Y
-fldl Z
-fstpl -1108(%ebp)
-fldl T
-fldl -1108(%ebp)
-faddl U2
-fsubp %st(1),%st
-fstpl T
-fldl Y
-fsubl -1108(%ebp)
-fstpl Y
-fldl -1108(%ebp)
-fdivl -1076(%ebp)
-fstpl Z
-fldl -1076(%ebp)
-faddl U2
-fdivl -1076(%ebp)
-fstpl Y1
-fldl Z
-fsubl OneAndHalf
-fstpl Z
-fldl Y1
-fsubl -1076(%ebp)
-fstpl Y2
-fldl F9
-fsubl U1
-fdivl F9
-fstpl Y1
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC260
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC260
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jne .LC260
-fldl Zero
-fcompl T
-fstsw %ax
-sahf
-jne .LC260
-fldl Zero
-fcompl Y2
-fstsw %ax
-sahf
-jne .LC260
-fldl Zero
-fcompl Y2
-fstsw %ax
-sahf
-jne .LC260
-fldl Y1
-fsubl Half
-fldl F9
-fsubl Half
-fcompp
-fstsw %ax
-sahf
-jne .LC260
-movl $1,RDiv
-pushl $.LC262
-call printf
-addl $4,%esp
-cmpl $0,GDiv
-jne .LC261
-pushl $.LC265
-call notify
-addl $4,%esp
-jmp .LC261
-.LC260:
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jbe .LC266
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jbe .LC266
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jbe .LC266
-fldl Zero
-fcompl T
-fstsw %ax
-sahf
-jbe .LC266
-fldl Zero
-fcompl Y2
-fstsw %ax
-sahf
-jbe .LC266
-fldl Y1
-fsubl Half
-fldl F9
-fsubl Half
-fcompp
-fstsw %ax
-sahf
-jbe .LC266
-movl $2,RDiv
-pushl $.LC268
-call printf
-addl $4,%esp
-.LC266:
-.LC261:
-.LC258:
-cmpl $0,RDiv
-jne .LC269
-pushl $.LC271
-call printf
-addl $4,%esp
-.LC269:
-fldl One
-fdivl Radix
-fstpl BInvrse
-pushl $.LC273
-fldl BInvrse
-fmull Radix
-fsubl Half
-fldl Half
-fcompp
-fstsw %ax
-sahf
-jne .LC274
-movl $1,-1064(%ebp)
-jmp .LC275
-.LC274:
-movl $0,-1064(%ebp)
-.LC275:
-pushl -1064(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-movl $50,Milestone
-pushl $.LC277
-fldl F9
-faddl U1
-fsubl Half
-fldl Half
-fcompp
-fstsw %ax
-sahf
-jne .LC278
-fldl BMinusU2
-faddl U2
-fsubl One
-fldl Radix
-fsubl One
-fcompp
-fstsw %ax
-sahf
-jne .LC278
-movl $1,-1084(%ebp)
-jmp .LC279
-.LC278:
-movl $0,-1084(%ebp)
-.LC279:
-pushl -1084(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl One
-fldl U1
-fmull U1
-fsubp %st(1),%st
-fstpl X
-fldl One
-fldl U2
-fldl One
-fsubl U2
-fmulp %st(1),%st
-faddp %st(1),%st
-fstpl Y
-fldl F9
-fsubl Half
-fstpl Z
-fldl X
-fsubl Half
-fsubl Z
-fstpl X
-fldl Y
-fsubl One
-fstpl Y
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC280
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC280
-movl $2,RAddSub
-pushl $.LC282
-call printf
-addl $4,%esp
-.LC280:
-cmpl $1,GAddSub
-jne .LC283
-fldl Half
-faddl U2
-fmull U2
-fstpl X
-fldl Half
-fsubl U2
-fmull U2
-fstpl Y
-fldl One
-faddl X
-fstpl X
-fldl One
-faddl Y
-fstpl Y
-fldl One
-faddl U2
-fsubl X
-fstpl X
-fldl One
-fsubl Y
-fstpl Y
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC285
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC285
-fldl Half
-faddl U2
-fmull U1
-fstpl X
-fldl Half
-fsubl U2
-fmull U1
-fstpl Y
-fldl One
-fsubl X
-fstpl X
-fldl One
-fsubl Y
-fstpl Y
-fldl F9
-fsubl X
-fstpl X
-fldl One
-fsubl Y
-fstpl Y
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jne .LC287
-fldl Zero
-fcompl Y
-fstsw %ax
-sahf
-jne .LC287
-movl $1,RAddSub
-pushl $.LC289
-call printf
-addl $4,%esp
-cmpl $0,GAddSub
-jne .LC284
-pushl $.LC292
-call notify
-addl $4,%esp
-jmp .LC284
-.LC287:
-pushl $.LC293
-call printf
-addl $4,%esp
-jmp .LC284
-.LC285:
-pushl $.LC293
-call printf
-addl $4,%esp
-jmp .LC284
-.LC283:
-pushl $.LC293
-call printf
-addl $4,%esp
-.LC284:
-fldl One
-fstpl S
-fldl One
-fldl Half
-fldl One
-faddl Half
-fmulp %st(1),%st
-faddp %st(1),%st
-fstpl X
-fldl One
-faddl U2
-fmull Half
-fstpl Y
-fldl X
-fstpl -1164(%ebp)
-fldl Y
-fstpl -1172(%ebp)
-fldl -1164(%ebp)
-fsubl -1172(%ebp)
-fstpl Z
-fldl -1172(%ebp)
-fsubl -1164(%ebp)
-fstpl T
-fldl Z
-faddl T
-fstpl StickyBit
-fldl Zero
-fcompl StickyBit
-fstsw %ax
-sahf
-je .LC294
-fldl Zero
-fstpl S
-pushl $.LC296
-pushl $3
-call BadCond
-addl $8,%esp
-.LC294:
-fldl Zero
-fstpl StickyBit
-cmpl $1,GMult
-jne .LC297
-cmpl $1,GDiv
-jne .LC297
-cmpl $1,GAddSub
-jne .LC297
-cmpl $1,RMult
-jne .LC297
-cmpl $1,RDiv
-jne .LC297
-cmpl $1,RAddSub
-jne .LC297
-fldl RadixD2
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1180(%ebp)
-fldl RadixD2
-fcompl -1180(%ebp)
-fstsw %ax
-sahf
-jne .LC297
-pushl $.LC299
-call printf
-addl $4,%esp
-fldl Half
-faddl U1
-fmull U2
-fstpl X
-fldl Half
-fmull U2
-fstpl Y
-fldl One
-faddl Y
-fstpl Z
-fldl One
-faddl X
-fstpl T
-fldl Z
-fsubl One
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jb .LC300
-fldl T
-fsubl One
-fldl U2
-fcompp
-fstsw %ax
-sahf
-ja .LC300
-fldl T
-faddl Y
-fstpl Z
-fldl Z
-fsubl X
-fstpl Y
-fldl Z
-fsubl T
-fldl U2
-fcompp
-fstsw %ax
-sahf
-ja .LC302
-fldl Y
-fsubl T
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC302
-fldl Half
-faddl U1
-fmull U1
-fstpl X
-fldl Half
-fmull U1
-fstpl Y
-fldl One
-fsubl Y
-fstpl Z
-fldl One
-fsubl X
-fstpl T
-fldl Z
-fsubl One
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC304
-fldl T
-fsubl F9
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC304
-fldl Half
-fsubl U1
-fmull U1
-fstpl Z
-fldl F9
-fsubl Z
-fstpl T
-fldl F9
-fsubl Y
-fstpl Q
-fldl T
-fsubl F9
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC306
-fldl F9
-fsubl U1
-fsubl Q
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC306
-fldl One
-faddl U2
-fmull OneAndHalf
-fstpl Z
-fldl OneAndHalf
-faddl U2
-fsubl Z
-faddl U2
-fstpl T
-fldl One
-fldl Half
-fdivl Radix
-faddp %st(1),%st
-fstpl X
-fldl One
-fldl Radix
-fmull U2
-faddp %st(1),%st
-fstpl Y
-fldl X
-fmull Y
-fstpl Z
-fldl Zero
-fcompl T
-fstsw %ax
-sahf
-jne .LC308
-fldl X
-fldl Radix
-fmull U2
-faddp %st(1),%st
-fsubl Z
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC308
-fldl Two
-fcompl Radix
-fstsw %ax
-sahf
-je .LC310
-fldl Two
-faddl U2
-fstpl X
-fldl X
-fdivl Two
-fstpl Y
-fldl Y
-fsubl One
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC311
-fldl S
-fstpl StickyBit
-jmp .LC311
-.LC310:
-fldl S
-fstpl StickyBit
-.LC311:
-.LC308:
-.LC306:
-.LC304:
-.LC302:
-.LC300:
-.LC297:
-fldl One
-fcompl StickyBit
-fstsw %ax
-sahf
-jne .LC314
-pushl $.LC316
-call printf
-addl $4,%esp
-jmp .LC315
-.LC314:
-pushl $.LC317
-call printf
-addl $4,%esp
-.LC315:
-pushl $.LC319
-cmpl $0,GMult
-je .LC320
-cmpl $0,GDiv
-je .LC320
-cmpl $0,GAddSub
-je .LC320
-cmpl $0,RMult
-je .LC320
-cmpl $0,RDiv
-je .LC320
-cmpl $0,RAddSub
-je .LC320
-movl $1,-1184(%ebp)
-jmp .LC321
-.LC320:
-movl $0,-1184(%ebp)
-.LC321:
-pushl -1184(%ebp)
-pushl $3
-call TstCond
-addl $12,%esp
-movl $60,Milestone
-pushl $.LC45
-call printf
-addl $4,%esp
-pushl $.LC322
-call printf
-addl $4,%esp
-pushl NoTrials
-pushl $.LC323
-call printf
-addl $8,%esp
-fldl .LC324
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1192(%ebp)
-fldl -1192(%ebp)
-fstpl Random9
-fldl Third
-fstpl Random1
-movl $1,I
-.LC325:
-call Random
-fstpl -1200(%ebp)
-fldl -1200(%ebp)
-fstpl X
-call Random
-fstpl -1208(%ebp)
-fldl -1208(%ebp)
-fstpl Y
-fldl Y
-fmull X
-fstpl Z9
-fldl X
-fmull Y
-fstpl Z
-fldl Z
-fsubl Z9
-fstpl Z9
-incl I
-.LC326:
-movl NoTrials,%edi
-cmpl %edi,I
-jg .LC328
-fldl Zero
-fcompl Z9
-fstsw %ax
-sahf
-je .LC325
-.LC328:
-movl NoTrials,%edi
-cmpl %edi,I
-jne .LC329
-fldl One
-fldl Half
-fdivl Three
-faddp %st(1),%st
-fstpl -1208(%ebp)
-fldl -1208(%ebp)
-fstpl Random1
-fldl U2
-faddl U1
-faddl One
-fstpl -1216(%ebp)
-fldl -1216(%ebp)
-fstpl Random2
-fldl Random1
-fstpl -1224(%ebp)
-fldl Random2
-fstpl -1232(%ebp)
-fldl -1224(%ebp)
-fmull -1232(%ebp)
-fstpl Z
-fldl -1232(%ebp)
-fmull -1224(%ebp)
-fstpl Y
-fldl -1208(%ebp)
-fmull -1216(%ebp)
-fstpl -1240(%ebp)
-fldl -1240(%ebp)
-fsubl -1240(%ebp)
-fstpl Z9
-.LC329:
-movl NoTrials,%edi
-cmpl %edi,I
-je .LC331
-fldl Zero
-fcompl Z9
-fstsw %ax
-sahf
-je .LC331
-pushl $.LC333
-pushl $2
-call BadCond
-addl $8,%esp
-jmp .LC332
-.LC331:
-pushl NoTrials
-pushl $.LC334
-call printf
-addl $8,%esp
-.LC332:
-movl $70,Milestone
-pushl $.LC335
-call printf
-addl $4,%esp
-fldl Zero
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1212(%ebp)
-fldl -1212(%ebp)
-fcompl Zero
-fstsw %ax
-sahf
-jne .LC338
-fldl Zero
-fchs
-fstpl -1220(%ebp)
-fldl -1220(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1228(%ebp)
-fldl -1228(%ebp)
-fcompl -1220(%ebp)
-fstsw %ax
-sahf
-jne .LC338
-fldl One
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1244(%ebp)
-fldl -1244(%ebp)
-fcompl One
-fstsw %ax
-sahf
-jne .LC338
-movl $1,-1196(%ebp)
-jmp .LC339
-.LC338:
-movl $0,-1196(%ebp)
-.LC339:
-pushl $.LC337
-pushl -1196(%ebp)
-pushl $0
-call TstCond
-addl $12,%esp
-fldl Zero
-fstpl MinSqEr
-fldl Zero
-fstpl MaxSqEr
-fldl Zero
-fstpl J
-fldl Radix
-fstpl X
-fldl U2
-fstpl OneUlp
-pushl $1
-call SqXMinX
-addl $4,%esp
-fldl BInvrse
-fstpl X
-fldl BInvrse
-fmull U1
-fstpl OneUlp
-pushl $1
-call SqXMinX
-addl $4,%esp
-fldl U1
-fstpl X
-fldl U1
-fmull U1
-fstpl OneUlp
-pushl $1
-call SqXMinX
-addl $4,%esp
-fldl Zero
-fcompl J
-fstsw %ax
-sahf
-je .LC340
-call Pause
-.LC340:
-pushl NoTrials
-pushl $.LC342
-call printf
-addl $8,%esp
-fldl Zero
-fstpl J
-fldl Two
-fstpl X
-fldl Radix
-fstpl Y
-fldl One
-fcompl Radix
-fstsw %ax
-sahf
-je .LC343
-.LC345:
-fldl Y
-fstpl -1284(%ebp)
-fldl -1284(%ebp)
-fstpl X
-fldl Radix
-fmull -1284(%ebp)
-fstpl Y
-.LC346:
-fldl Y
-fsubl X
-fildl NoTrials
-fcompp
-fstsw %ax
-sahf
-ja .LC345
-.LC343:
-fldl X
-fmull U2
-fstpl OneUlp
-movl $1,I
-jmp .LC349
-.LC348:
-fldl X
-faddl One
-fstpl X
-pushl $2
-call SqXMinX
-addl $4,%esp
-fldl Zero
-fcompl J
-fstsw %ax
-sahf
-jae .LC351
-jmp .LC350
-.LC351:
-incl I
-.LC349:
-movl NoTrials,%edi
-cmpl %edi,I
-jle .LC348
-.LC350:
-pushl $.LC353
-call printf
-addl $4,%esp
-movl $-1,I
-fldl BMinusU2
-fstpl X
-fldl Radix
-fstpl Y
-fldl Radix
-fldl Radix
-fmull U2
-faddp %st(1),%st
-fstpl Z
-movl $0,NotMonot
-movl $0,Monot
-jmp .LC355
-.LC354:
-incl I
-fldl X
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1292(%ebp)
-fldl -1292(%ebp)
-fstpl X
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1300(%ebp)
-fldl -1300(%ebp)
-fstpl Q
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1308(%ebp)
-fldl -1308(%ebp)
-fstpl Z
-fldl Q
-fcompl X
-fstsw %ax
-sahf
-jb .LC359
-fldl Z
-fcompl Q
-fstsw %ax
-sahf
-jae .LC357
-.LC359:
-movl $1,NotMonot
-jmp .LC358
-.LC357:
-fldl Q
-faddl Half
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1324(%ebp)
-fldl -1324(%ebp)
-fstpl Q
-cmpl $0,I
-jg .LC362
-fldl Q
-fmull Q
-fcompl Radix
-fstsw %ax
-sahf
-jne .LC360
-.LC362:
-movl $1,Monot
-jmp .LC361
-.LC360:
-cmpl $0,I
-jle .LC363
-cmpl $1,I
-jle .LC365
-movl $1,Monot
-jmp .LC364
-.LC365:
-fldl Y
-fmull BInvrse
-fstpl Y
-fldl Y
-fstpl -1340(%ebp)
-fldl -1340(%ebp)
-fsubl U1
-fstpl X
-fldl -1340(%ebp)
-faddl U1
-fstpl Z
-jmp .LC364
-.LC363:
-fldl Q
-fstpl Y
-fldl Y
-fstpl -1340(%ebp)
-fldl -1340(%ebp)
-fsubl U2
-fstpl X
-fldl -1340(%ebp)
-faddl U2
-fstpl Z
-.LC364:
-.LC361:
-.LC358:
-.LC355:
-cmpl $0,NotMonot
-jne .LC367
-cmpl $0,Monot
-je .LC354
-.LC367:
-cmpl $0,Monot
-je .LC368
-pushl $.LC370
-call printf
-addl $4,%esp
-jmp .LC369
-.LC368:
-pushl $.LC158
-pushl $2
-call BadCond
-addl $8,%esp
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC371
-call printf
-addl $12,%esp
-.LC369:
-movl $80,Milestone
-fldl MinSqEr
-faddl Half
-fstpl MinSqEr
-fldl MaxSqEr
-fsubl Half
-fstpl MaxSqEr
-fldl One
-faddl U2
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1300(%ebp)
-fldl -1300(%ebp)
-fsubl One
-fdivl U2
-fstpl Y
-fldl Y
-fsubl One
-fldl U2
-fdivl Eight
-faddp %st(1),%st
-fstpl SqEr
-fldl MaxSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jae .LC372
-fldl SqEr
-fstpl MaxSqEr
-.LC372:
-fldl Y
-fldl U2
-fdivl Eight
-faddp %st(1),%st
-fstpl SqEr
-fldl MinSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jbe .LC374
-fldl SqEr
-fstpl MinSqEr
-.LC374:
-fldl F9
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1324(%ebp)
-fldl -1324(%ebp)
-fsubl U2
-fldl One
-fsubl U2
-fsubp %st(1),%st
-fdivl U1
-fstpl Y
-fldl Y
-fldl U1
-fdivl Eight
-faddp %st(1),%st
-fstpl SqEr
-fldl MaxSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jae .LC376
-fldl SqEr
-fstpl MaxSqEr
-.LC376:
-fldl Y
-faddl One
-fldl U1
-fdivl Eight
-faddp %st(1),%st
-fstpl SqEr
-fldl MinSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jbe .LC378
-fldl SqEr
-fstpl MinSqEr
-.LC378:
-fldl U2
-fstpl OneUlp
-fldl OneUlp
-fstpl X
-movl $1,Indx
-.LC380:
-fldl X
-faddl U1
-faddl X
-faddl F9
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1356(%ebp)
-fldl -1356(%ebp)
-fstpl Y
-fldl Y
-fsubl U2
-fldl One
-fsubl U2
-faddl X
-fsubp %st(1),%st
-fdivl OneUlp
-fstpl Y
-fldl U1
-fsubl X
-faddl F9
-fmull Half
-fmull X
-fmull X
-fdivl OneUlp
-fstpl Z
-fldl Y
-faddl Half
-faddl Z
-fstpl SqEr
-fldl MinSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jbe .LC384
-fldl SqEr
-fstpl MinSqEr
-.LC384:
-fldl Y
-fsubl Half
-faddl Z
-fstpl SqEr
-fldl MaxSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jae .LC386
-fldl SqEr
-fstpl MaxSqEr
-.LC386:
-movl Indx,%edi
-cmpl $1,%edi
-je .LC390
-cmpl $3,%edi
-jne .LC388
-.LC390:
-fldl X
-subl $8,%esp
-fstpl (%esp)
-call Sign
-addl $8,%esp
-fstpl -1396(%ebp)
-fldl OneUlp
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1404(%ebp)
-fldl Eight
-fldl Nine
-fmull -1404(%ebp)
-fdivp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1412(%ebp)
-fldl OneUlp
-fmull -1396(%ebp)
-fmull -1412(%ebp)
-fstpl X
-jmp .LC389
-.LC388:
-fldl U1
-fstpl OneUlp
-fldl OneUlp
-fchs
-fstpl X
-.LC389:
-.LC381:
-incl Indx
-cmpl $3,Indx
-jle .LC380
-movl $85,Milestone
-movl $0,SqRWrng
-movl $0,Anomaly
-movl $0,RSqrt
-fldl One
-fcompl Radix
-fstsw %ax
-sahf
-je .LC391
-pushl $.LC393
-call printf
-addl $4,%esp
-fldl Precision
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1356(%ebp)
-fldl One
-faddl Precision
-fsubl -1356(%ebp)
-subl $8,%esp
-fstpl (%esp)
-fldl Radix
-subl $8,%esp
-fstpl (%esp)
-call pow
-addl $16,%esp
-fstpl -1364(%ebp)
-fldl Half
-faddl -1364(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1372(%ebp)
-fldl -1372(%ebp)
-fstpl D
-fldl D
-fdivl Radix
-fstpl X
-fldl D
-fdivl A1
-fstpl Y
-fldl X
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1396(%ebp)
-fldl -1396(%ebp)
-fcompl X
-fstsw %ax
-sahf
-jne .LC396
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1412(%ebp)
-fldl -1412(%ebp)
-fcompl Y
-fstsw %ax
-sahf
-je .LC394
-.LC396:
-movl $1,Anomaly
-jmp .LC395
-.LC394:
-fldl Zero
-fstpl X
-fldl X
-fstpl Z2
-fldl One
-fstpl Y
-fldl Y
-fstpl Y2
-fldl Radix
-fsubl One
-fstpl Z1
-fldl Four
-fmull D
-fstpl FourD
-.LC397:
-fldl Z2
-fcompl Y2
-fstsw %ax
-sahf
-jae .LC400
-fldl Radix
-fstpl Q
-fldl Y
-fstpl Y1
-.LC402:
-fldl Half
-fldl Q
-fdivl Y1
-fsubp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1436(%ebp)
-fldl Q
-fldl -1436(%ebp)
-fmull Y1
-faddp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -1444(%ebp)
-fldl -1444(%ebp)
-fstpl X1
-fldl Y1
-fstpl Q
-fldl X1
-fstpl Y1
-.LC403:
-fldl Zero
-fcompl X1
-fstsw %ax
-sahf
-jb .LC402
-fldl One
-fcompl Q
-fstsw %ax
-sahf
-jb .LC405
-fldl Y2
-fstpl Z2
-fldl Y
-fstpl Z
-.LC405:
-.LC400:
-fldl Y
-faddl Two
-fstpl Y
-fldl X
-faddl Eight
-fstpl X
-fldl Y2
-faddl X
-fstpl Y2
-fldl FourD
-fcompl Y2
-fstsw %ax
-sahf
-ja .LC407
-fldl Y2
-fsubl FourD
-fstpl Y2
-.LC407:
-.LC398:
-fldl D
-fcompl Y
-fstsw %ax
-sahf
-ja .LC397
-fldl FourD
-fsubl Z2
-fstpl X8
-fldl X8
-fstpl -1436(%ebp)
-fldl -1436(%ebp)
-fldl Z
-fmull Z
-faddp %st(1),%st
-fdivl FourD
-fstpl Q
-fldl -1436(%ebp)
-fdivl Eight
-fstpl X8
-fldl Q
-fstpl -1452(%ebp)
-fldl -1452(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1460(%ebp)
-fldl -1460(%ebp)
-fcompl -1452(%ebp)
-fstsw %ax
-sahf
-je .LC409
-movl $1,Anomaly
-jmp .LC410
-.LC409:
-movl $0,Break
-.LC411:
-fldl Z1
-fmull Z
-fstpl X
-fldl X
-fstpl -1468(%ebp)
-fldl -1468(%ebp)
-fdivl Radix
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1476(%ebp)
-fldl -1468(%ebp)
-fldl -1476(%ebp)
-fmull Radix
-fsubp %st(1),%st
-fstpl X
-fldl One
-fcompl X
-fstsw %ax
-sahf
-jne .LC414
-movl $1,Break
-jmp .LC415
-.LC414:
-fldl Z1
-fsubl One
-fstpl Z1
-.LC415:
-.LC412:
-cmpl $0,Break
-jne .LC416
-fldl Zero
-fcompl Z1
-fstsw %ax
-sahf
-jb .LC411
-.LC416:
-fldl Zero
-fcompl Z1
-fstsw %ax
-sahf
-jb .LC417
-cmpl $0,Break
-jne .LC417
-movl $1,Anomaly
-jmp .LC418
-.LC417:
-fldl RadixD2
-fcompl Z1
-fstsw %ax
-sahf
-jae .LC419
-fldl Z1
-fsubl Radix
-fstpl Z1
-.LC419:
-.LC421:
-call NewD
-.LC422:
-fldl U2
-fmull D
-fldl F9
-fcompp
-fstsw %ax
-sahf
-ja .LC421
-fldl D
-fmull Radix
-fsubl D
-fldl W
-fsubl D
-fcompp
-fstsw %ax
-sahf
-je .LC424
-movl $1,Anomaly
-jmp .LC425
-.LC424:
-fldl D
-fstpl Z2
-movl $0,I
-fldl D
-fldl One
-faddl Z
-fmull Half
-faddp %st(1),%st
-fstpl Y
-fldl D
-faddl Z
-faddl Q
-fstpl X
-call SR3750
-fldl D
-fldl One
-fsubl Z
-fmull Half
-faddp %st(1),%st
-faddl D
-fstpl Y
-fldl D
-fsubl Z
-faddl D
-fstpl X
-fldl X
-fstpl -1508(%ebp)
-fldl -1508(%ebp)
-faddl Q
-faddl -1508(%ebp)
-fstpl X
-call SR3750
-call NewD
-fldl D
-fsubl Z2
-fldl W
-fsubl Z2
-fcompp
-fstsw %ax
-sahf
-je .LC426
-movl $1,Anomaly
-jmp .LC427
-.LC426:
-fldl D
-fsubl Z2
-fstpl -1532(%ebp)
-fldl -1532(%ebp)
-fldl Z2
-fldl One
-fsubl Z
-fmull Half
-faddp %st(1),%st
-faddp %st(1),%st
-fstpl Y
-fldl -1532(%ebp)
-fldl Z2
-fsubl Z
-faddl Q
-faddp %st(1),%st
-fstpl X
-call SR3750
-fldl One
-faddl Z
-fmull Half
-fstpl Y
-fldl Q
-fstpl X
-call SR3750
-cmpl $0,I
-jne .LC428
-movl $1,Anomaly
-.LC428:
-.LC427:
-.LC425:
-.LC418:
-.LC410:
-.LC395:
-cmpl $0,I
-je .LC432
-cmpl $0,Anomaly
-je .LC430
-.LC432:
-pushl $.LC433
-pushl $0
-call BadCond
-addl $8,%esp
-fldl W
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC434
-call printf
-addl $12,%esp
-pushl $.LC435
-call printf
-addl $4,%esp
-movl $1,SqRWrng
-.LC430:
-.LC391:
-cmpl $0,Anomaly
-jne .LC436
-fldl Zero
-fcompl MinSqEr
-fstsw %ax
-sahf
-ja .LC438
-fldl Zero
-fcompl MaxSqEr
-fstsw %ax
-sahf
-jb .LC438
-movl $1,RSqrt
-pushl $.LC440
-call printf
-addl $4,%esp
-jmp .LC439
-.LC438:
-fldl MaxSqEr
-faddl U2
-fldl U2
-fsubl Half
-fcompp
-fstsw %ax
-sahf
-jb .LC444
-fldl Half
-fcompl MinSqEr
-fstsw %ax
-sahf
-jb .LC444
-fldl MinSqEr
-faddl Radix
-fldl Half
-fcompp
-fstsw %ax
-sahf
-jbe .LC441
-.LC444:
-movl $1,SqRWrng
-jmp .LC442
-.LC441:
-movl $2,RSqrt
-pushl $.LC445
-call printf
-addl $4,%esp
-.LC442:
-.LC439:
-.LC436:
-cmpl $0,SqRWrng
-je .LC446
-pushl $.LC448
-call printf
-addl $4,%esp
-fldl MinSqEr
-fsubl Half
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC449
-call printf
-addl $12,%esp
-fldl Half
-faddl MaxSqEr
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC450
-call printf
-addl $12,%esp
-pushl $.LC452
-fldl MaxSqEr
-fsubl MinSqEr
-fldl Radix
-fmull Radix
-fcompp
-fstsw %ax
-sahf
-jbe .LC453
-movl $1,-1344(%ebp)
-jmp .LC454
-.LC453:
-movl $0,-1344(%ebp)
-.LC454:
-pushl -1344(%ebp)
-pushl $1
-call TstCond
-addl $12,%esp
-.LC446:
-movl $90,Milestone
-call Pause
-pushl $.LC455
-call printf
-addl $4,%esp
-movl $0,N
-movl $0,I
-fldl Zero
-fchs
-fstpl Z
-movl $3,M
-movl $0,Break
-.LC456:
-fldl One
-fstpl X
-call SR3980
-cmpl $10,I
-jg .LC459
-movl $1023,I
-call SR3980
-.LC459:
-fldl MinusOne
-fcompl Z
-fstsw %ax
-sahf
-jne .LC461
-movl $1,Break
-jmp .LC462
-.LC461:
-fldl MinusOne
-fstpl Z
-call PrintIfNPositive
-movl $0,N
-movl $-4,I
-.LC462:
-.LC457:
-cmpl $0,Break
-je .LC456
-call PrintIfNPositive
-movl N,%edi
-movl %edi,N1
-movl $0,N
-fldl A1
-fstpl Z
-fldl W
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -1348(%ebp)
-fldl A1
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -1356(%ebp)
-fldl Two
-fmull -1348(%ebp)
-fdivl -1356(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1364(%ebp)
-fldl -1364(%ebp)
-fistpl M
-movl $0,Break
-.LC463:
-fldl Z
-fstpl X
-movl $1,I
-call SR3980
-fldl AInvrse
-fcompl Z
-fstsw %ax
-sahf
-jne .LC466
-movl $1,Break
-jmp .LC467
-.LC466:
-fldl AInvrse
-fstpl Z
-.LC467:
-.LC464:
-cmpl $0,Break
-je .LC463
-movl $100,Milestone
-movl NoTrials,%edi
-movl %edi,M
-fldl Three
-fstpl Z
-.LC468:
-fldl Z
-fstpl X
-movl $1,I
-call SR3980
-.LC471:
-fldl Z
-faddl Two
-fstpl Z
-.LC472:
-fldl Z
-fdivl Three
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1380(%ebp)
-fldl Three
-fmull -1380(%ebp)
-fldl Z
-fcompp
-fstsw %ax
-sahf
-je .LC471
-.LC469:
-fldl Eight
-fmull Three
-fcompl Z
-fstsw %ax
-sahf
-ja .LC468
-cmpl $0,N
-jle .LC474
-pushl $.LC476
-call printf
-addl $4,%esp
-pushl $.LC477
-call printf
-addl $4,%esp
-.LC474:
-call PrintIfNPositive
-movl N1,%edi
-addl %edi,N
-cmpl $0,N
-jne .LC478
-pushl $.LC480
-call printf
-addl $4,%esp
-.LC478:
-cmpl $0,N
-jle .LC481
-call Pause
-jmp .LC482
-.LC481:
-pushl $.LC45
-call printf
-addl $4,%esp
-.LC482:
-movl $110,Milestone
-pushl $.LC483
-call printf
-addl $4,%esp
-fldl U1
-fstpl D
-fldl Precision
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1380(%ebp)
-fldl -1380(%ebp)
-fcompl Precision
-fstsw %ax
-sahf
-je .LC484
-fldl BInvrse
-fstpl D
-fldl Precision
-fstpl X
-.LC486:
-fldl D
-fmull BInvrse
-fstpl D
-fldl X
-fsubl One
-fstpl X
-.LC487:
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jb .LC486
-.LC484:
-fldl One
-fstpl Y
-fldl D
-fstpl Z
-.LC489:
-fldl Y
-fstpl C
-fldl Z
-fstpl Y
-fldl Y
-fstpl -1388(%ebp)
-fldl -1388(%ebp)
-fmull -1388(%ebp)
-fstpl Z
-.LC490:
-fldl Z
-fcompl Y
-fstsw %ax
-sahf
-jae .LC492
-fldl Z
-faddl Z
-fldl Z
-fcompp
-fstsw %ax
-sahf
-jb .LC489
-.LC492:
-fldl C
-fstpl Y
-fldl Y
-fmull D
-fstpl Z
-.LC493:
-fldl Y
-fstpl C
-fldl Z
-fstpl Y
-fldl Y
-fmull D
-fstpl Z
-.LC494:
-fldl Z
-fcompl Y
-fstsw %ax
-sahf
-jae .LC496
-fldl Z
-faddl Z
-fldl Z
-fcompp
-fstsw %ax
-sahf
-jb .LC493
-.LC496:
-fldl Two
-fcompl Radix
-fstsw %ax
-sahf
-jbe .LC497
-fldl Two
-fstpl HInvrse
-jmp .LC498
-.LC497:
-fldl Radix
-fstpl HInvrse
-.LC498:
-fldl One
-fdivl HInvrse
-fstpl H
-fldl One
-fdivl C
-fstpl CInvrse
-fldl C
-fstpl E0
-fldl E0
-fmull H
-fstpl Z
-.LC499:
-fldl E0
-fstpl Y
-fldl Z
-fstpl E0
-fldl E0
-fmull H
-fstpl Z
-.LC500:
-fldl Z
-fcompl E0
-fstsw %ax
-sahf
-jae .LC502
-fldl Z
-faddl Z
-fldl Z
-fcompp
-fstsw %ax
-sahf
-jb .LC499
-.LC502:
-fldl E0
-fstpl UfThold
-fldl Zero
-fstpl E1
-fldl Zero
-fstpl Q
-fldl U2
-fstpl E9
-fldl One
-faddl E9
-fstpl S
-fldl C
-fmull S
-fstpl D
-fldl C
-fcompl D
-fstsw %ax
-sahf
-jb .LC503
-fldl Radix
-fmull U2
-fstpl E9
-fldl One
-faddl E9
-fstpl S
-fldl C
-fmull S
-fstpl D
-fldl C
-fcompl D
-fstsw %ax
-sahf
-jb .LC504
-pushl $.LC507
-pushl $0
-call BadCond
-addl $8,%esp
-fldl E0
-fstpl Underflow
-fldl Zero
-fstpl Y1
-fldl Z
-fstpl PseudoZero
-call Pause
-jmp .LC504
-.LC503:
-fldl D
-fstpl Underflow
-fldl Underflow
-fmull H
-fstpl PseudoZero
-fldl Zero
-fstpl UfThold
-.LC508:
-fldl Underflow
-fstpl Y1
-fldl PseudoZero
-fstpl Underflow
-fldl E1
-faddl E1
-fldl E1
-fcompp
-fstsw %ax
-sahf
-jb .LC511
-fldl Underflow
-fmull HInvrse
-fstpl Y2
-fldl Y1
-fsubl Y2
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -1452(%ebp)
-fldl -1452(%ebp)
-fstpl E1
-fldl Y1
-fstpl Q
-fldl Zero
-fcompl UfThold
-fstsw %ax
-sahf
-jne .LC513
-fldl Y2
-fcompl Y1
-fstsw %ax
-sahf
-je .LC513
-fldl Y1
-fstpl UfThold
-.LC513:
-.LC511:
-fldl PseudoZero
-fmull H
-fstpl PseudoZero
-.LC509:
-fldl PseudoZero
-fcompl Underflow
-fstsw %ax
-sahf
-jae .LC515
-fldl PseudoZero
-faddl PseudoZero
-fldl PseudoZero
-fcompp
-fstsw %ax
-sahf
-jb .LC508
-.LC515:
-.LC504:
-fldl Zero
-fcompl PseudoZero
-fstsw %ax
-sahf
-je .LC516
-pushl $.LC45
-call printf
-addl $4,%esp
-fldl PseudoZero
-fstpl Z
-fldl Zero
-fcompl PseudoZero
-fstsw %ax
-sahf
-jb .LC518
-pushl $.LC520
-pushl $0
-call BadCond
-addl $8,%esp
-pushl $.LC521
-call printf
-addl $4,%esp
-fldl PseudoZero
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC522
-call printf
-addl $12,%esp
-fldl PseudoZero
-fchs
-fstpl X
-fldl Zero
-fcompl X
-fstsw %ax
-sahf
-jb .LC519
-pushl $.LC525
-call printf
-addl $4,%esp
-fldl X
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC526
-call printf
-addl $12,%esp
-jmp .LC519
-.LC518:
-pushl $.LC527
-pushl $3
-call BadCond
-addl $8,%esp
-fldl PseudoZero
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC528
-call printf
-addl $12,%esp
-.LC519:
-call TstPtUf
-.LC516:
-movl $120,Milestone
-fldl CInvrse
-fmull Y
-fldl CInvrse
-fmull Y1
-fcompp
-fstsw %ax
-sahf
-jae .LC529
-fldl H
-fmull S
-fstpl S
-fldl Underflow
-fstpl E0
-.LC529:
-fldl Zero
-fcompl E1
-fstsw %ax
-sahf
-je .LC531
-fldl E0
-fcompl E1
-fstsw %ax
-sahf
-je .LC531
-pushl $.LC158
-pushl $2
-call BadCond
-addl $8,%esp
-fldl E0
-fcompl E1
-fstsw %ax
-sahf
-jbe .LC533
-pushl $.LC535
-call printf
-addl $4,%esp
-pushl $.LC536
-call printf
-addl $4,%esp
-fldl Zero
-fcompl PseudoZero
-fstsw %ax
-sahf
-jne .LC534
-fldl E1
-fstpl E0
-jmp .LC534
-.LC533:
-pushl $.LC539
-call printf
-addl $4,%esp
-pushl $.LC540
-call printf
-addl $4,%esp
-.LC534:
-.LC531:
-fldl E0
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC541
-call printf
-addl $12,%esp
-fldl E0
-fstpl Z
-call TstPtUf
-fldl E0
-fstpl Underflow
-cmpl $1,N
-jne .LC542
-fldl Y
-fstpl Underflow
-.LC542:
-movl $4,I
-fldl Zero
-fcompl E1
-fstsw %ax
-sahf
-jne .LC544
-movl $3,I
-.LC544:
-fldl Zero
-fcompl UfThold
-fstsw %ax
-sahf
-jne .LC546
-sub $2,I
-.LC546:
-movl $1,UfNGrad
-movl I,%edi
-cmpl $1,%edi
-jl .LC548
-cmpl $4,%edi
-jg .LC548
-jmp *.LC571-4(,%edi,4)
-.data
-.align 4
-.LC571:
-.long .LC550
-.long .LC557
-.long .LC562
-.long .LC563
-.text
-.LC550:
-fldl Underflow
-fstpl UfThold
-fldl CInvrse
-fmull Q
-fldl CInvrse
-fmull Y
-fmull S
-fcompp
-fstsw %ax
-sahf
-je .LC551
-fldl Y
-fstpl UfThold
-pushl $.LC553
-pushl $0
-call BadCond
-addl $8,%esp
-fldl UfThold
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC554
-call printf
-addl $12,%esp
-fldl C
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC555
-call printf
-addl $12,%esp
-pushl $.LC556
-call printf
-addl $4,%esp
-.LC551:
-call Pause
-jmp .LC549
-.LC557:
-pushl $.LC558
-pushl $0
-call BadCond
-addl $8,%esp
-pushl $.LC559
-call printf
-addl $4,%esp
-fldl Y2
-subl $8,%esp
-fstpl (%esp)
-fldl Q
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC560
-call printf
-addl $20,%esp
-fldl Q
-fsubl Y2
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -1468(%ebp)
-fldl -1468(%ebp)
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC561
-call printf
-addl $12,%esp
-fldl Q
-fstpl UfThold
-jmp .LC549
-.LC562:
-fldl X
-fstpl X
-jmp .LC549
-.LC563:
-fldl UfThold
-fcompl Q
-fstsw %ax
-sahf
-jne .LC564
-fldl E0
-fcompl E1
-fstsw %ax
-sahf
-jne .LC564
-fldl UfThold
-fldl E1
-fdivl E9
-fsubp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -1492(%ebp)
-fldl E1
-fcompl -1492(%ebp)
-fstsw %ax
-sahf
-jb .LC564
-movl $0,UfNGrad
-pushl $.LC566
-call printf
-addl $4,%esp
-pushl $.LC567
-call printf
-addl $4,%esp
-fldl E0
-fmull CInvrse
-fstpl Y
-fldl Y
-fldl OneAndHalf
-faddl U2
-fmulp %st(1),%st
-fstpl Y
-fldl CInvrse
-fldl One
-faddl U2
-fmulp %st(1),%st
-fstpl X
-fldl Y
-fdivl X
-fstpl Y
-fldl E0
-fcompl Y
-fstsw %ax
-sahf
-jne .LC569
-movl $1,-1496(%ebp)
-jmp .LC570
-.LC569:
-movl $0,-1496(%ebp)
-.LC570:
-movl -1496(%ebp),%edi
-movl %edi,IEEE
-.LC564:
-.LC548:
-.LC549:
-cmpl $0,UfNGrad
-je .LC573
-pushl $.LC45
-call printf
-addl $4,%esp
-leal sigfpe,%edi
-movl %edi,sigsave
-pushl $ovfl_buf
-call __setjmp
-addl $4,%esp
-cmpl $0,%eax
-je .LC575
-pushl $.LC577
-call printf
-addl $4,%esp
-fldl H
-faddl H
-fstpl R
-jmp .LC576
-.LC575:
-fldl Underflow
-fdivl UfThold
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1460(%ebp)
-fldl -1460(%ebp)
-fstpl R
-.LC576:
-movl $0,sigsave
-fldl H
-fcompl R
-fstsw %ax
-sahf
-jb .LC578
-fldl R
-fmull UfThold
-fstpl Z
-fldl Z
-fldl One
-fldl R
-fmull H
-fldl One
-faddl H
-fmulp %st(1),%st
-faddp %st(1),%st
-fmulp %st(1),%st
-fstpl X
-jmp .LC579
-.LC578:
-fldl UfThold
-fstpl Z
-fldl Z
-fldl One
-fldl H
-fmull H
-fldl One
-faddl H
-fmulp %st(1),%st
-faddp %st(1),%st
-fmulp %st(1),%st
-fstpl X
-.LC579:
-fldl Z
-fcompl X
-fstsw %ax
-sahf
-je .LC580
-fldl X
-fsubl Z
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC580
-pushl $.LC158
-pushl $3
-call BadCond
-addl $8,%esp
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-fldl X
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC582
-call printf
-addl $20,%esp
-fldl X
-fsubl Z
-fstpl Z9
-fldl Z9
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC583
-call printf
-addl $12,%esp
-pushl $.LC584
-call printf
-addl $4,%esp
-pushl $.LC585
-call printf
-addl $4,%esp
-pushl $.LC586
-call printf
-addl $4,%esp
-pushl $.LC587
-call printf
-addl $4,%esp
-pushl $.LC588
-call printf
-addl $4,%esp
-pushl $.LC589
-call printf
-addl $4,%esp
-leal sigfpe,%edi
-movl %edi,sigsave
-pushl $ovfl_buf
-call __setjmp
-addl $4,%esp
-cmpl $0,%eax
-je .LC590
-pushl $.LC592
-call printf
-addl $4,%esp
-jmp .LC591
-.LC590:
-fldl X
-fdivl Z
-fsubl Half
-fsubl Half
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC593
-call printf
-addl $12,%esp
-.LC591:
-movl $0,sigsave
-.LC580:
-.LC573:
-pushl $.LC595
-fldl UfThold
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC594
-call printf
-addl $16,%esp
-pushl $.LC596
-call printf
-addl $4,%esp
-pushl $.LC597
-call printf
-addl $4,%esp
-fldl U1
-fmull U1
-fstpl Y2
-fldl Y2
-fstpl -1468(%ebp)
-fldl -1468(%ebp)
-fmull -1468(%ebp)
-fstpl Y
-fldl Y
-fmull U1
-fstpl Y2
-fldl UfThold
-fcompl Y2
-fstsw %ax
-sahf
-jb .LC598
-fldl E0
-fcompl Y
-fstsw %ax
-sahf
-jae .LC600
-pushl $.LC158
-pushl $2
-call BadCond
-addl $8,%esp
-movl $5,I
-jmp .LC601
-.LC600:
-pushl $.LC158
-pushl $1
-call BadCond
-addl $8,%esp
-movl $4,I
-.LC601:
-pushl I
-pushl $.LC602
-call printf
-addl $8,%esp
-.LC598:
-movl $130,Milestone
-fldl UfThold
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -1476(%ebp)
-fldl HInvrse
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -1484(%ebp)
-fldl Half
-fldl TwoForty
-fmull -1476(%ebp)
-fdivl -1484(%ebp)
-fsubp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1492(%ebp)
-fldl -1492(%ebp)
-fchs
-fdivl TwoForty
-fstpl Y
-fldl Y
-faddl Y
-fstpl Y2
-pushl $.LC603
-call printf
-addl $4,%esp
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-fldl HInvrse
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC604
-call printf
-addl $20,%esp
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-fldl HInvrse
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC605
-call printf
-addl $20,%esp
-fldl Y2
-subl $8,%esp
-fstpl (%esp)
-fldl HInvrse
-subl $8,%esp
-fstpl (%esp)
-call pow
-addl $16,%esp
-fstpl -1508(%ebp)
-fldl -1508(%ebp)
-fstpl V9
-fldl V9
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC606
-call printf
-addl $12,%esp
-fldl Zero
-fcompl V9
-fstsw %ax
-sahf
-ja .LC609
-fldl Radix
-faddl Radix
-faddl E9
-fmull UfThold
-fcompl V9
-fstsw %ax
-sahf
-jae .LC607
-.LC609:
-pushl $.LC610
-pushl $1
-call BadCond
-addl $8,%esp
-fldl UfThold
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC611
-call printf
-addl $12,%esp
-jmp .LC608
-.LC607:
-fldl UfThold
-fldl One
-faddl E9
-fmulp %st(1),%st
-fcompl V9
-fstsw %ax
-sahf
-jb .LC612
-pushl $.LC614
-call printf
-addl $4,%esp
-jmp .LC613
-.LC612:
-pushl $.LC610
-pushl $2
-call BadCond
-addl $8,%esp
-fldl UfThold
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC611
-call printf
-addl $12,%esp
-.LC613:
-.LC608:
-movl $140,Milestone
-pushl $.LC45
-call printf
-addl $4,%esp
-fldl Zero
-fstpl X
-movl $2,I
-fldl Two
-fmull Three
-fstpl Y
-fldl Zero
-fstpl Q
-movl $0,N
-.LC615:
-fldl X
-fstpl Z
-incl I
-movl I,%edi
-fldl Y
-leal (%edi,%edi),%edi
-pushl %edi
-fildl (%esp)
-addl $4,%esp
-fdivp %st(1),%st
-fstpl Y
-fldl Y
-faddl Q
-fstpl R
-fldl Z
-fstpl -1540(%ebp)
-fldl R
-fstpl -1548(%ebp)
-fldl -1540(%ebp)
-faddl -1548(%ebp)
-fstpl X
-fldl -1540(%ebp)
-fsubl X
-faddl -1548(%ebp)
-fstpl Q
-.LC616:
-fldl Z
-fcompl X
-fstsw %ax
-sahf
-jb .LC615
-fldl OneAndHalf
-fldl One
-fdivl Eight
-faddp %st(1),%st
-fldl X
-fldl OneAndHalf
-fmull ThirtyTwo
-fdivp %st(1),%st
-faddp %st(1),%st
-fstpl Z
-fldl Z
-fstpl -1548(%ebp)
-fldl -1548(%ebp)
-fmull -1548(%ebp)
-fstpl X
-fldl X
-fstpl -1556(%ebp)
-fldl -1556(%ebp)
-fmull -1556(%ebp)
-fstpl Exp2
-fldl F9
-fstpl X
-fldl X
-fsubl U1
-fstpl Y
-fldl Exp2
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC618
-call printf
-addl $12,%esp
-movl $1,I
-.LC619:
-fldl X
-fsubl BInvrse
-fstpl Z
-fldl X
-faddl One
-fldl Z
-fldl One
-fsubl BInvrse
-fsubp %st(1),%st
-fdivp %st(1),%st
-fstpl Z
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-fldl X
-subl $8,%esp
-fstpl (%esp)
-call pow
-addl $16,%esp
-fstpl -1588(%ebp)
-fldl -1588(%ebp)
-fsubl Exp2
-fstpl Q
-fldl Q
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -1596(%ebp)
-fldl TwoForty
-fmull U2
-fcompl -1596(%ebp)
-fstsw %ax
-sahf
-jae .LC623
-movl $1,N
-fldl X
-fsubl BInvrse
-fldl One
-fsubl BInvrse
-fsubp %st(1),%st
-fstpl V9
-pushl $.LC625
-pushl $2
-call BadCond
-addl $8,%esp
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-fldl X
-subl $8,%esp
-fstpl (%esp)
-call pow
-addl $16,%esp
-fstpl -1612(%ebp)
-fldl -1612(%ebp)
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC626
-call printf
-addl $12,%esp
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-fldl V9
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC627
-call printf
-addl $20,%esp
-fldl Q
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC628
-call printf
-addl $12,%esp
-pushl $.LC629
-call printf
-addl $4,%esp
-pushl $.LC630
-call printf
-addl $4,%esp
-jmp .LC621
-.LC623:
-fldl Y
-fstpl -1604(%ebp)
-fldl -1604(%ebp)
-fsubl X
-fmull Two
-faddl -1604(%ebp)
-fstpl Z
-fldl -1604(%ebp)
-fstpl X
-fldl Z
-fstpl Y
-fldl X
-fsubl F9
-fstpl -1612(%ebp)
-fldl One
-fldl -1612(%ebp)
-fmull -1612(%ebp)
-faddp %st(1),%st
-fstpl Z
-fldl One
-fcompl Z
-fstsw %ax
-sahf
-jae .LC631
-movl NoTrials,%edi
-cmpl %edi,I
-jge .LC631
-incl I
-jmp .LC619
-.LC631:
-fldl One
-fcompl X
-fstsw %ax
-sahf
-jae .LC633
-cmpl $0,N
-jne .LC621
-pushl $.LC637
-call printf
-addl $4,%esp
-jmp .LC621
-.LC633:
-fldl One
-faddl U2
-fstpl X
-fldl U2
-faddl U2
-fstpl Y
-fldl Y
-faddl X
-fstpl Y
-movl $1,I
-jmp .LC619
-.LC621:
-movl $150,Milestone
-pushl $.LC638
-call printf
-addl $4,%esp
-movl $0,N
-fldl A1
-fstpl Z
-fldl C
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -1564(%ebp)
-fldl A1
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -1572(%ebp)
-fldl Half
-fldl -1564(%ebp)
-fdivl -1572(%ebp)
-fsubp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -1580(%ebp)
-fldl -1580(%ebp)
-fstpl Q
-movl $0,Break
-.LC639:
-fldl CInvrse
-fstpl X
-fldl Q
-subl $8,%esp
-fstpl (%esp)
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-call pow
-addl $16,%esp
-fstpl -1588(%ebp)
-fldl -1588(%ebp)
-fstpl Y
-call IsYeqX
-fldl Q
-fchs
-fstpl Q
-fldl C
-fstpl X
-fldl Q
-subl $8,%esp
-fstpl (%esp)
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-call pow
-addl $16,%esp
-fstpl -1596(%ebp)
-fldl -1596(%ebp)
-fstpl Y
-call IsYeqX
-fldl One
-fcompl Z
-fstsw %ax
-sahf
-jbe .LC642
-movl $1,Break
-jmp .LC643
-.LC642:
-fldl AInvrse
-fstpl Z
-.LC643:
-.LC640:
-cmpl $0,Break
-je .LC639
-call PrintIfNPositive
-cmpl $0,N
-jne .LC644
-pushl $.LC646
-call printf
-addl $4,%esp
-.LC644:
-pushl $.LC45
-call printf
-addl $4,%esp
-movl $160,Milestone
-call Pause
-pushl $.LC647
-call printf
-addl $4,%esp
-pushl $.LC648
-call printf
-addl $4,%esp
-fldl CInvrse
-fchs
-fstpl Y
-fldl HInvrse
-fmull Y
-fstpl V9
-leal sigfpe,%edi
-movl %edi,sigsave
-pushl $ovfl_buf
-call __setjmp
-addl $4,%esp
-cmpl $0,%eax
-je .LC649
-movl $0,I
-fldl Y
-fstpl V9
-jmp .LC651
-.LC649:
-.LC652:
-fldl Y
-fstpl V
-fldl V9
-fstpl Y
-fldl HInvrse
-fmull Y
-fstpl V9
-.LC653:
-fldl Y
-fcompl V9
-fstsw %ax
-sahf
-ja .LC652
-movl $1,I
-.LC651:
-movl $0,sigsave
-fldl V9
-fstpl Z
-pushl $.LC655
-call printf
-addl $4,%esp
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC656
-call printf
-addl $12,%esp
-fldl Y
-fchs
-fstpl V9
-fldl V9
-fstpl V0
-fldl V
-fsubl Y
-fldl V
-faddl V0
-fcompp
-fstsw %ax
-sahf
-jne .LC657
-pushl $.LC659
-call printf
-addl $4,%esp
-jmp .LC658
-.LC657:
-pushl $.LC660
-call printf
-addl $4,%esp
-pushl $.LC661
-pushl $3
-call BadCond
-addl $8,%esp
-.LC658:
-fldl Y
-fcompl Z
-fstsw %ax
-sahf
-je .LC662
-pushl $.LC158
-pushl $1
-call BadCond
-addl $8,%esp
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC664
-call printf
-addl $20,%esp
-.LC662:
-cmpl $0,I
-je .LC665
-fldl V
-fldl HInvrse
-fmull U2
-fsubl HInvrse
-fmulp %st(1),%st
-fstpl Y
-fldl Y
-fldl One
-fsubl HInvrse
-fmull U2
-fmull V
-faddp %st(1),%st
-fstpl Z
-fldl V0
-fcompl Z
-fstsw %ax
-sahf
-jbe .LC667
-fldl Z
-fstpl Y
-.LC667:
-fldl V0
-fcompl Y
-fstsw %ax
-sahf
-jbe .LC669
-fldl Y
-fstpl V
-.LC669:
-fldl V0
-fsubl V
-fldl V0
-fcompp
-fstsw %ax
-sahf
-jbe .LC666
-fldl V0
-fstpl V
-jmp .LC666
-.LC665:
-fldl Y
-fldl HInvrse
-fmull U2
-fsubl HInvrse
-fmulp %st(1),%st
-fstpl V
-fldl V
-fldl One
-fsubl HInvrse
-fmull U2
-fmull Y
-faddp %st(1),%st
-fstpl V
-.LC666:
-fldl V
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC673
-call printf
-addl $12,%esp
-cmpl $0,I
-je .LC674
-fldl V0
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC676
-call printf
-addl $12,%esp
-jmp .LC675
-.LC674:
-pushl $.LC677
-call printf
-addl $4,%esp
-.LC675:
-fldl V
-fmull One
-fstpl V9
-fldl V9
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC678
-call printf
-addl $12,%esp
-fldl V
-fdivl One
-fstpl V9
-fldl V9
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC679
-call printf
-addl $12,%esp
-pushl $.LC680
-call printf
-addl $4,%esp
-pushl $.LC681
-call printf
-addl $4,%esp
-movl $170,Milestone
-fldl V
-fchs
-fldl V
-fcompp
-fstsw %ax
-sahf
-jbe .LC686
-fldl V0
-fchs
-fldl V0
-fcompp
-fstsw %ax
-sahf
-jbe .LC686
-fldl UfThold
-fchs
-fldl V
-fcompp
-fstsw %ax
-sahf
-jbe .LC686
-fldl V
-fcompl UfThold
-fstsw %ax
-sahf
-ja .LC682
-.LC686:
-pushl $.LC687
-pushl $0
-call BadCond
-addl $8,%esp
-fldl UfThold
-subl $8,%esp
-fstpl (%esp)
-fldl V0
-subl $8,%esp
-fstpl (%esp)
-fldl V
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC688
-call printf
-addl $28,%esp
-.LC682:
-movl $175,Milestone
-pushl $.LC45
-call printf
-addl $4,%esp
-movl $1,Indx
-.LC689:
-movl Indx,%edi
-cmpl $1,%edi
-je .LC695
-cmpl $2,%edi
-je .LC696
-cmpl $3,%edi
-je .LC697
-jmp .LC693
-.LC695:
-fldl UfThold
-fstpl Z
-jmp .LC694
-.LC696:
-fldl E0
-fstpl Z
-jmp .LC694
-.LC697:
-fldl PseudoZero
-fstpl Z
-.LC693:
-.LC694:
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-je .LC698
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1628(%ebp)
-fldl -1628(%ebp)
-fstpl V9
-fldl V9
-fmull V9
-fstpl Y
-fldl Radix
-fmull E9
-fstpl -1660(%ebp)
-fldl Y
-fldl One
-fsubl -1660(%ebp)
-fdivp %st(1),%st
-fldl Z
-fcompp
-fstsw %ax
-sahf
-ja .LC702
-fldl One
-faddl -1660(%ebp)
-fmull Z
-fcompl Y
-fstsw %ax
-sahf
-jae .LC700
-.LC702:
-fldl U1
-fcompl V9
-fstsw %ax
-sahf
-jae .LC703
-pushl $.LC158
-pushl $1
-call BadCond
-addl $8,%esp
-jmp .LC704
-.LC703:
-pushl $.LC158
-pushl $2
-call BadCond
-addl $8,%esp
-.LC704:
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC705
-call printf
-addl $12,%esp
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC706
-call printf
-addl $12,%esp
-.LC700:
-.LC698:
-.LC690:
-incl Indx
-cmpl $3,Indx
-jle .LC689
-movl $180,Milestone
-movl $1,Indx
-.LC707:
-cmpl $1,Indx
-jne .LC711
-fldl V
-fstpl Z
-jmp .LC712
-.LC711:
-fldl V0
-fstpl Z
-.LC712:
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -1628(%ebp)
-fldl -1628(%ebp)
-fstpl V9
-fldl V9
-fstpl -1636(%ebp)
-fldl One
-fldl Radix
-fmull E9
-fsubp %st(1),%st
-fmull -1636(%ebp)
-fstpl X
-fldl -1636(%ebp)
-fmull X
-fstpl V9
-fldl One
-fldl Two
-fmull Radix
-fmull E9
-fsubp %st(1),%st
-fmull Z
-fcompl V9
-fstsw %ax
-sahf
-ja .LC715
-fldl Z
-fcompl V9
-fstsw %ax
-sahf
-jae .LC713
-.LC715:
-fldl V9
-fstpl Y
-fldl W
-fcompl X
-fstsw %ax
-sahf
-jbe .LC716
-pushl $.LC158
-pushl $1
-call BadCond
-addl $8,%esp
-jmp .LC717
-.LC716:
-pushl $.LC158
-pushl $2
-call BadCond
-addl $8,%esp
-.LC717:
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC718
-call printf
-addl $12,%esp
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC719
-call printf
-addl $12,%esp
-.LC713:
-.LC708:
-incl Indx
-cmpl $2,Indx
-jle .LC707
-movl $190,Milestone
-call Pause
-fldl UfThold
-fmull V
-fstpl X
-fldl Radix
-fmull Radix
-fstpl Y
-fldl X
-fmull Y
-fldl One
-fcompp
-fstsw %ax
-sahf
-ja .LC722
-fldl Y
-fcompl X
-fstsw %ax
-sahf
-jae .LC720
-.LC722:
-fldl X
-fmull Y
-fldl U1
-fcompp
-fstsw %ax
-sahf
-ja .LC725
-fldl Y
-fdivl U1
-fcompl X
-fstsw %ax
-sahf
-jae .LC723
-.LC725:
-pushl $.LC726
-pushl $2
-call BadCond
-addl $8,%esp
-jmp .LC724
-.LC723:
-pushl $.LC158
-pushl $3
-call BadCond
-addl $8,%esp
-.LC724:
-pushl $.LC728
-fldl X
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC727
-call printf
-addl $16,%esp
-.LC720:
-movl $200,Milestone
-movl $1,Indx
-.LC729:
-fldl F9
-fstpl X
-movl Indx,%edi
-cmpl $2,%edi
-jl .LC733
-cmpl $5,%edi
-jg .LC733
-jmp *.LC739-8(,%edi,4)
-.data
-.align 4
-.LC739:
-.long .LC735
-.long .LC736
-.long .LC737
-.long .LC738
-.text
-.LC735:
-fldl One
-faddl U2
-fstpl X
-jmp .LC734
-.LC736:
-fldl V
-fstpl X
-jmp .LC734
-.LC737:
-fldl UfThold
-fstpl X
-jmp .LC734
-.LC738:
-fldl Radix
-fstpl X
-.LC733:
-.LC734:
-fldl X
-fstpl Y
-leal sigfpe,%edi
-movl %edi,sigsave
-pushl $ovfl_buf
-call __setjmp
-addl $4,%esp
-cmpl $0,%eax
-je .LC741
-fldl X
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC743
-call printf
-addl $12,%esp
-jmp .LC742
-.LC741:
-fldl Y
-fdivl X
-fsubl Half
-fsubl Half
-fstpl V9
-fldl Zero
-fcompl V9
-fstsw %ax
-sahf
-jne .LC744
-jmp .LC730
-.LC744:
-fldl U1
-fchs
-fcompl V9
-fstsw %ax
-sahf
-jne .LC746
-cmpl $5,Indx
-jge .LC746
-pushl $.LC158
-pushl $3
-call BadCond
-addl $8,%esp
-jmp .LC747
-.LC746:
-pushl $.LC158
-pushl $1
-call BadCond
-addl $8,%esp
-.LC747:
-fldl X
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC748
-call printf
-addl $12,%esp
-fldl V9
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC749
-call printf
-addl $12,%esp
-.LC742:
-movl $0,sigsave
-.LC730:
-incl Indx
-cmpl $5,Indx
-jle .LC729
-movl $210,Milestone
-fldl Zero
-fstpl MyZero
-pushl $.LC45
-call printf
-addl $4,%esp
-pushl $.LC750
-call printf
-addl $4,%esp
-leal sigfpe,%edi
-movl %edi,sigsave
-pushl $.LC751
-call printf
-addl $4,%esp
-pushl $ovfl_buf
-call __setjmp
-addl $4,%esp
-cmpl $0,%eax
-jne .LC752
-fldl One
-fdivl MyZero
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC754
-call printf
-addl $12,%esp
-.LC752:
-movl $0,sigsave
-leal sigfpe,%edi
-movl %edi,sigsave
-pushl $.LC755
-call printf
-addl $4,%esp
-pushl $ovfl_buf
-call __setjmp
-addl $4,%esp
-cmpl $0,%eax
-jne .LC756
-fldl Zero
-fdivl MyZero
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC754
-call printf
-addl $12,%esp
-.LC756:
-movl $0,sigsave
-movl $220,Milestone
-call Pause
-pushl $.LC45
-call printf
-addl $4,%esp
-movl $0,-1648(%ebp)
-.LC763:
-movl -1648(%ebp),%edi
-cmpl $0,ErrCnt(,%edi,4)
-je .LC767
-movl -1648(%ebp),%edi
-leal (,%edi,4),%edi
-pushl ErrCnt(%edi)
-pushl msg.758(%edi)
-pushl $.LC769
-call printf
-addl $12,%esp
-.LC767:
-.LC764:
-incl -1648(%ebp)
-cmpl $4,-1648(%ebp)
-jl .LC763
-pushl $.LC45
-call printf
-addl $4,%esp
-movl ErrCnt,%edi
-movl ErrCnt+4,%esi
-leal (%esi,%edi),%edi
-movl ErrCnt+8,%esi
-leal (%esi,%edi),%edi
-movl ErrCnt+12,%esi
-leal (%esi,%edi),%edi
-cmpl $0,%edi
-jle .LC770
-movl ErrCnt,%edi
-movl ErrCnt+4,%esi
-leal (%esi,%edi),%edi
-movl ErrCnt+8,%esi
-leal (%esi,%edi),%edi
-cmpl $0,%edi
-jne .LC775
-cmpl $0,ErrCnt+12
-jle .LC775
-pushl $.LC780
-call printf
-addl $4,%esp
-pushl $.LC781
-call printf
-addl $4,%esp
-.LC775:
-movl ErrCnt,%edi
-movl ErrCnt+4,%esi
-leal (%esi,%edi),%edi
-cmpl $0,%edi
-jne .LC782
-cmpl $0,ErrCnt+8
-jle .LC782
-pushl $.LC786
-call printf
-addl $4,%esp
-pushl $.LC787
-call printf
-addl $4,%esp
-.LC782:
-movl ErrCnt,%edi
-movl ErrCnt+4,%esi
-leal (%esi,%edi),%edi
-cmpl $0,%edi
-jle .LC788
-pushl $.LC791
-call printf
-addl $4,%esp
-pushl $.LC792
-call printf
-addl $4,%esp
-.LC788:
-cmpl $0,ErrCnt
-jle .LC771
-pushl $.LC795
-call printf
-addl $4,%esp
-pushl $.LC796
-call printf
-addl $4,%esp
-jmp .LC771
-.LC770:
-pushl $.LC797
-call printf
-addl $4,%esp
-cmpl $1,RMult
-jne .LC802
-cmpl $1,RDiv
-jne .LC802
-cmpl $1,RAddSub
-jne .LC802
-cmpl $1,RSqrt
-je .LC798
-.LC802:
-pushl $.LC803
-call printf
-addl $4,%esp
-jmp .LC799
-.LC798:
-fldl One
-fcompl StickyBit
-fstsw %ax
-sahf
-ja .LC804
-fldl Radix
-fsubl Two
-fldl Radix
-fsubl Nine
-fsubl One
-fmulp %st(1),%st
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC804
-pushl $.LC806
-call printf
-addl $4,%esp
-pushl $.LC807
-call printf
-addl $4,%esp
-fldl Two
-fcompl Radix
-fstsw %ax
-sahf
-jne .LC808
-fldl Precision
-fldl Four
-fmull Three
-fmull Two
-fsubp %st(1),%st
-fldl Precision
-fsubl TwentySeven
-fsubl TwentySeven
-faddl One
-fmulp %st(1),%st
-fldl Zero
-fcompp
-fstsw %ax
-sahf
-jne .LC808
-pushl $.LC810
-call printf
-addl $4,%esp
-jmp .LC809
-.LC808:
-pushl $.LC811
-call printf
-addl $4,%esp
-.LC809:
-cmpl $0,IEEE
-je .LC812
-pushl $.LC814
-call printf
-addl $4,%esp
-jmp .LC813
-.LC812:
-pushl $.LC815
-call printf
-addl $4,%esp
-pushl $.LC816
-call printf
-addl $4,%esp
-.LC813:
-.LC804:
-pushl $.LC817
-call printf
-addl $4,%esp
-.LC799:
-.LC771:
-cmpl $0,fpecount
-je .LC818
-pushl fpecount
-pushl $.LC820
-call printf
-addl $8,%esp
-.LC818:
-pushl $.LC821
-call printf
-addl $4,%esp
-movl $0,%eax
-.LC7:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf822:
-.size main,.Lf822-main
-.globl Sign
-.align 16
-.type Sign,@function
-Sign:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-fldl .LC8
-fcompl 20(%ebp)
-fstsw %ax
-sahf
-ja .LC825
-fldl .LC9
-fstpl -8(%ebp)
-jmp .LC826
-.LC825:
-fldl .LC827
-fstpl -8(%ebp)
-.LC826:
-fldl -8(%ebp)
-.LC823:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf828:
-.size Sign,.Lf828-Sign
-.globl Pause
-.align 16
-.type Pause,@function
-Pause:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl Milestone
-pushl $.LC830
-call printf
-addl $8,%esp
-pushl PageNo
-pushl $.LC831
-call printf
-addl $8,%esp
-incl Milestone
-incl PageNo
-movl $0,%eax
-.LC829:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf832:
-.size Pause,.Lf832-Pause
-.globl TstCond
-.align 16
-.type TstCond,@function
-TstCond:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-cmpl $0,24(%ebp)
-jne .LC834
-pushl 28(%ebp)
-pushl 20(%ebp)
-call BadCond
-addl $8,%esp
-pushl $.LC814
-call printf
-addl $4,%esp
-.LC834:
-movl $0,%eax
-.LC833:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf836:
-.size TstCond,.Lf836-TstCond
-.data
-.align 4
-.type msg.838,@object
-msg.838:
-.long .LC839
-.long .LC840
-.long .LC841
-.long .LC842
-.size msg.838,16
-.globl BadCond
-.text
-.align 16
-.type BadCond,@function
-BadCond:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 20(%ebp),%edi
-leal ErrCnt(,%edi,4),%edi
-incl (,%edi)
-pushl 24(%ebp)
-movl 20(%ebp),%edi
-pushl msg.838(,%edi,4)
-pushl $.LC843
-call printf
-addl $12,%esp
-movl $0,%eax
-.LC837:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf844:
-.size BadCond,.Lf844-BadCond
-.globl Random
-.align 16
-.type Random,@function
-Random:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $48,%esp
-fldl Random1
-faddl Random9
-fstpl -8(%ebp)
-fldl -8(%ebp)
-fmull -8(%ebp)
-fstpl -16(%ebp)
-fldl -16(%ebp)
-fmull -16(%ebp)
-fstpl -16(%ebp)
-fldl -8(%ebp)
-fmull -16(%ebp)
-fstpl -8(%ebp)
-fldl -8(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -48(%ebp)
-fldl -8(%ebp)
-fsubl -48(%ebp)
-fstpl -16(%ebp)
-fldl -16(%ebp)
-fldl .LC846
-fmull -8(%ebp)
-faddp %st(1),%st
-fstpl Random1
-fldl Random1
-.LC845:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf847:
-.size Random,.Lf847-Random
-.globl SqXMinX
-.align 16
-.type SqXMinX,@function
-SqXMinX:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $40,%esp
-fldl X
-fmull BInvrse
-fstpl -8(%ebp)
-fldl X
-fsubl -8(%ebp)
-fstpl -16(%ebp)
-fldl X
-fmull X
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -32(%ebp)
-fldl -32(%ebp)
-fsubl -8(%ebp)
-fsubl -16(%ebp)
-fdivl OneUlp
-fstpl SqEr
-fldl Zero
-fcompl SqEr
-fstsw %ax
-sahf
-je .LC849
-fldl MinSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jbe .LC851
-fldl SqEr
-fstpl MinSqEr
-.LC851:
-fldl MaxSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jae .LC853
-fldl SqEr
-fstpl MaxSqEr
-.LC853:
-fldl J
-faddl .LC9
-fstpl J
-pushl $.LC45
-pushl 20(%ebp)
-call BadCond
-addl $8,%esp
-fldl OneUlp
-fmull SqEr
-subl $8,%esp
-fstpl (%esp)
-fldl X
-subl $8,%esp
-fstpl (%esp)
-fldl X
-fmull X
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC855
-call printf
-addl $28,%esp
-pushl $.LC856
-call printf
-addl $4,%esp
-.LC849:
-movl $0,%eax
-.LC848:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf857:
-.size SqXMinX,.Lf857-SqXMinX
-.globl NewD
-.align 16
-.type NewD,@function
-NewD:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $40,%esp
-fldl Z1
-fmull Q
-fstpl X
-fldl Half
-fldl X
-fdivl Radix
-fsubp %st(1),%st
-subl $8,%esp
-fstpl (%esp)
-call floor
-addl $8,%esp
-fstpl -8(%ebp)
-fldl -8(%ebp)
-fmull Radix
-faddl X
-fstpl X
-fldl X
-fstpl -24(%ebp)
-fldl Z
-fstpl -32(%ebp)
-fldl Q
-fldl -24(%ebp)
-fmull -32(%ebp)
-fsubp %st(1),%st
-fdivl Radix
-fldl -24(%ebp)
-fmull -24(%ebp)
-fldl D
-fdivl Radix
-fmulp %st(1),%st
-faddp %st(1),%st
-fstpl Q
-fldl -32(%ebp)
-fldl Two
-fmull -24(%ebp)
-fmull D
-fsubp %st(1),%st
-fstpl Z
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jb .LC859
-fldl Z
-fchs
-fstpl Z
-fldl Z1
-fchs
-fstpl Z1
-.LC859:
-fldl Radix
-fmull D
-fstpl D
-movl $0,%eax
-.LC858:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf861:
-.size NewD,.Lf861-NewD
-.globl SR3750
-.align 16
-.type SR3750,@function
-SR3750:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $64,%esp
-fldl X
-fsubl Radix
-fldl Z2
-fsubl Radix
-fcompp
-fstsw %ax
-sahf
-ja .LC863
-fldl X
-fsubl Z2
-fldl W
-fsubl Z2
-fcompp
-fstsw %ax
-sahf
-jb .LC863
-incl I
-fldl X
-fmull D
-subl $8,%esp
-fstpl (%esp)
-call sqrt
-addl $8,%esp
-fstpl -32(%ebp)
-fldl -32(%ebp)
-fstpl X2
-fldl X2
-fsubl Z2
-fldl Y
-fsubl Z2
-fsubp %st(1),%st
-fstpl Y2
-fldl X8
-fldl Y
-fsubl Half
-fdivp %st(1),%st
-fstpl X2
-fldl X2
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fldl Half
-fmull -64(%ebp)
-fmull -64(%ebp)
-fsubp %st(1),%st
-fstpl X2
-fldl Y2
-faddl Half
-fldl Half
-fsubl X2
-faddp %st(1),%st
-fstpl SqEr
-fldl MinSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jbe .LC865
-fldl SqEr
-fstpl MinSqEr
-.LC865:
-fldl Y2
-fsubl X2
-fstpl SqEr
-fldl MaxSqEr
-fcompl SqEr
-fstsw %ax
-sahf
-jae .LC867
-fldl SqEr
-fstpl MaxSqEr
-.LC867:
-.LC863:
-movl $0,%eax
-.LC862:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf869:
-.size SR3750,.Lf869-SR3750
-.globl IsYeqX
-.align 16
-.type IsYeqX,@function
-IsYeqX:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-fldl X
-fcompl Y
-fstsw %ax
-sahf
-je .LC871
-cmpl $0,N
-jg .LC873
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-jne .LC875
-fldl Zero
-fcompl Q
-fstsw %ax
-sahf
-jb .LC875
-pushl $.LC877
-call printf
-addl $4,%esp
-jmp .LC876
-.LC875:
-pushl $.LC878
-pushl $2
-call BadCond
-addl $8,%esp
-.LC876:
-fldl Q
-subl $8,%esp
-fstpl (%esp)
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC879
-call printf
-addl $20,%esp
-fldl Y
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC880
-call printf
-addl $12,%esp
-fldl X
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC881
-call printf
-addl $12,%esp
-fldl Y
-fsubl X
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC882
-call printf
-addl $12,%esp
-.LC873:
-incl N
-.LC871:
-movl $0,%eax
-.LC870:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf883:
-.size IsYeqX,.Lf883-IsYeqX
-.globl SR3980
-.align 16
-.type SR3980,@function
-SR3980:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-.LC885:
-fildl I
-fstpl Q
-fldl Q
-subl $8,%esp
-fstpl (%esp)
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-call pow
-addl $16,%esp
-fstpl -8(%ebp)
-fldl -8(%ebp)
-fstpl Y
-call IsYeqX
-movl I,%edi
-leal 1(%edi),%edi
-movl %edi,I
-cmpl M,%edi
-jle .LC888
-jmp .LC887
-.LC888:
-fldl Z
-fmull X
-fstpl X
-.LC886:
-fldl W
-fcompl X
-fstsw %ax
-sahf
-ja .LC885
-.LC887:
-movl $0,%eax
-.LC884:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf890:
-.size SR3980,.Lf890-SR3980
-.globl PrintIfNPositive
-.align 16
-.type PrintIfNPositive,@function
-PrintIfNPositive:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-cmpl $0,N
-jle .LC892
-pushl N
-pushl $.LC894
-call printf
-addl $8,%esp
-.LC892:
-movl $0,%eax
-.LC891:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf895:
-.size PrintIfNPositive,.Lf895-PrintIfNPositive
-.globl TstPtUf
-.align 16
-.type TstPtUf,@function
-TstPtUf:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $48,%esp
-movl $0,N
-fldl Zero
-fcompl Z
-fstsw %ax
-sahf
-je .LC897
-pushl $.LC899
-call printf
-addl $4,%esp
-pushl $.LC900
-call printf
-addl $4,%esp
-leal sigfpe,%edi
-movl %edi,sigsave
-pushl $ovfl_buf
-call __setjmp
-addl $4,%esp
-cmpl $0,%eax
-je .LC901
-jmp .LC903
-.LC901:
-fldl Z
-faddl Z
-fdivl Z
-fstpl Q9
-fldl Q9
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC904
-call printf
-addl $12,%esp
-fldl Q9
-fsubl Two
-subl $8,%esp
-fstpl (%esp)
-call fabs
-addl $8,%esp
-fstpl -16(%ebp)
-fldl Radix
-fmull U2
-fcompl -16(%ebp)
-fstsw %ax
-sahf
-jbe .LC905
-pushl $.LC907
-call printf
-addl $4,%esp
-pushl $.LC908
-call printf
-addl $4,%esp
-jmp .LC906
-.LC905:
-fldl One
-fcompl Q9
-fstsw %ax
-sahf
-ja .LC911
-fldl Two
-fcompl Q9
-fstsw %ax
-sahf
-jae .LC909
-.LC911:
-.LC903:
-movl $1,N
-movl ErrCnt+4,%edi
-leal 1(%edi),%edi
-movl %edi,ErrCnt+4
-pushl $.LC914
-call printf
-addl $4,%esp
-jmp .LC910
-.LC909:
-movl $1,N
-movl ErrCnt+8,%edi
-leal 1(%edi),%edi
-movl %edi,ErrCnt+8
-pushl $.LC917
-call printf
-addl $4,%esp
-.LC910:
-.LC906:
-movl $0,sigsave
-fldl Z
-fmull One
-fstpl V9
-fldl V9
-fstpl Random1
-fldl One
-fmull Z
-fstpl V9
-fldl V9
-fstpl Random2
-fldl Z
-fdivl One
-fstpl V9
-fldl Random1
-fcompl Z
-fstsw %ax
-sahf
-jne .LC918
-fldl Random2
-fcompl Z
-fstsw %ax
-sahf
-jne .LC918
-fldl V9
-fcompl Z
-fstsw %ax
-sahf
-jne .LC918
-cmpl $0,N
-jle .LC919
-call Pause
-jmp .LC919
-.LC918:
-movl $1,N
-pushl $.LC922
-pushl $2
-call BadCond
-addl $8,%esp
-fldl Z
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC923
-call printf
-addl $12,%esp
-fldl Random1
-fcompl Z
-fstsw %ax
-sahf
-je .LC924
-fldl Random1
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC926
-call printf
-addl $12,%esp
-.LC924:
-fldl Random2
-fcompl Z
-fstsw %ax
-sahf
-je .LC927
-fldl Random1
-fcompl Random2
-fstsw %ax
-sahf
-je .LC927
-fldl Random2
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC929
-call printf
-addl $12,%esp
-.LC927:
-fldl V9
-fcompl Z
-fstsw %ax
-sahf
-je .LC930
-fldl V9
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC932
-call printf
-addl $12,%esp
-.LC930:
-fldl Random1
-fcompl Random2
-fstsw %ax
-sahf
-je .LC933
-movl ErrCnt+8,%edi
-leal 1(%edi),%edi
-movl %edi,ErrCnt+8
-pushl $.LC937
-pushl $2
-call BadCond
-addl $8,%esp
-fldl Random2
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC938
-call printf
-addl $12,%esp
-fldl Random1
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC939
-call printf
-addl $12,%esp
-.LC933:
-call Pause
-.LC919:
-.LC897:
-movl $0,%eax
-.LC896:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf940:
-.size TstPtUf,.Lf940-TstPtUf
-.globl notify
-.align 16
-.type notify,@function
-notify:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl 20(%ebp)
-pushl $.LC942
-call printf
-addl $8,%esp
-pushl $.LC943
-call printf
-addl $4,%esp
-movl $0,%eax
-.LC941:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf944:
-.size notify,.Lf944-notify
-.globl msglist
-.align 16
-.type msglist,@function
-msglist:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-jmp .LC947
-.LC946:
-movl 20(%ebp),%edi
-leal 4(%edi),%esi
-movl %esi,20(%ebp)
-pushl (,%edi)
-pushl $.LC949
-call printf
-addl $8,%esp
-.LC947:
-movl 20(%ebp),%edi
-movl (,%edi),%edi
-cmpl $0,%edi
-jne .LC946
-movl $0,%eax
-.LC945:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf950:
-.size msglist,.Lf950-msglist
-.data
-.align 4
-.type instr.952,@object
-instr.952:
-.long .LC953
-.long .LC954
-.long .LC955
-.long .LC956
-.long .LC957
-.long .LC958
-.long .LC959
-.long .LC960
-.long .LC961
-.long 0
-.size instr.952,40
-.globl Instructions
-.text
-.align 16
-.type Instructions,@function
-Instructions:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl $instr.952
-call msglist
-addl $4,%esp
-movl $0,%eax
-.LC951:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf962:
-.size Instructions,.Lf962-Instructions
-.data
-.align 4
-.type head.964,@object
-head.964:
-.long .LC965
-.long .LC966
-.long .LC967
-.long .LC968
-.long .LC969
-.long .LC970
-.long .LC971
-.long .LC972
-.long .LC973
-.long .LC974
-.long .LC975
-.long .LC976
-.long .LC977
-.long .LC978
-.long 0
-.size head.964,60
-.globl Heading
-.text
-.align 16
-.type Heading,@function
-Heading:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl $head.964
-call msglist
-addl $4,%esp
-movl $0,%eax
-.LC963:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf979:
-.size Heading,.Lf979-Heading
-.data
-.align 4
-.type chars.981,@object
-chars.981:
-.long .LC982
-.long .LC983
-.long .LC984
-.long .LC985
-.long .LC986
-.long .LC987
-.long .LC988
-.long .LC989
-.long .LC990
-.long .LC991
-.long .LC992
-.long .LC993
-.long .LC994
-.long .LC995
-.long .LC996
-.long .LC997
-.long .LC998
-.long .LC999
-.long .LC1000
-.long 0
-.size chars.981,80
-.globl Characteristics
-.text
-.align 16
-.type Characteristics,@function
-Characteristics:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl $chars.981
-call msglist
-addl $4,%esp
-movl $0,%eax
-.LC980:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf1001:
-.size Characteristics,.Lf1001-Characteristics
-.data
-.align 4
-.type hist.1003,@object
-hist.1003:
-.long .LC1004
-.long .LC1005
-.long .LC1006
-.long .LC1007
-.long .LC1008
-.long .LC1009
-.long .LC1010
-.long .LC1011
-.long .LC1012
-.long .LC1013
-.long .LC1014
-.long .LC1015
-.long .LC1016
-.long .LC1017
-.long .LC1018
-.long .LC1019
-.long .LC1020
-.long 0
-.size hist.1003,72
-.globl History
-.text
-.align 16
-.type History,@function
-History:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl $hist.1003
-call msglist
-addl $4,%esp
-movl $0,%eax
-.LC1002:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf1021:
-.size History,.Lf1021-History
-.globl pow
-.align 16
-.type pow,@function
-pow:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $96,%esp
-movl $0,-20(%ebp)
-movl $0,-24(%ebp)
-fldl .LC8
-fcompl 28(%ebp)
-fstsw %ax
-sahf
-jne .LC1023
-fldl .LC9
-jmp .LC1022
-.LC1023:
-fldl .LC1028
-fcompl 28(%ebp)
-fstsw %ax
-sahf
-ja .LC1027
-fldl .LC1029
-fcompl 28(%ebp)
-fstsw %ax
-sahf
-jae .LC1025
-.LC1027:
-fldl .LC827
-fcompl 20(%ebp)
-fstsw %ax
-sahf
-je .LC1025
-fldl 20(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -48(%ebp)
-fldl 28(%ebp)
-fmull -48(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call exp
-addl $8,%esp
-fstpl -56(%ebp)
-fldl -56(%ebp)
-jmp .LC1022
-.LC1025:
-fldl .LC8
-fcompl 28(%ebp)
-fstsw %ax
-sahf
-jbe .LC1030
-fldl 28(%ebp)
-fchs
-fstpl 28(%ebp)
-movl $1,-24(%ebp)
-.LC1030:
-leal -32(%ebp),%edi
-pushl %edi
-fldl 28(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call modf
-addl $12,%esp
-fstpl -64(%ebp)
-fldl -64(%ebp)
-fstpl 28(%ebp)
-fldl .LC8
-fcompl 28(%ebp)
-fstsw %ax
-sahf
-je .LC1032
-fldl 20(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call log
-addl $8,%esp
-fstpl -72(%ebp)
-fldl 28(%ebp)
-fmull -72(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call exp
-addl $8,%esp
-fstpl -80(%ebp)
-fldl -80(%ebp)
-fstpl -16(%ebp)
-jmp .LC1033
-.LC1032:
-fldl .LC9
-fstpl -16(%ebp)
-.LC1033:
-leal -8(%ebp),%edi
-pushl %edi
-fldl 20(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call frexp
-addl $12,%esp
-fstpl -88(%ebp)
-fldl -88(%ebp)
-fstpl 20(%ebp)
-fldl -32(%ebp)
-subl $4,%esp
-fistpl 0(%esp)
-popl %eax
-movl %eax,-4(%ebp)
-cmpl $0,%eax
-je .LC1034
-.LC1036:
-movl -4(%ebp),%edi
-andl $1,%edi
-cmpl $0,%edi
-je .LC1040
-fldl -16(%ebp)
-fmull 20(%ebp)
-fstpl -16(%ebp)
-movl -8(%ebp),%edi
-addl %edi,-20(%ebp)
-.LC1040:
-movl -4(%ebp),%edi
-sarl $1,%edi
-movl %edi,-4(%ebp)
-cmpl $0,%edi
-jne .LC1042
-jmp .LC1038
-.LC1042:
-fldl 20(%ebp)
-fmull 20(%ebp)
-fstpl 20(%ebp)
-sall $1,-8(%ebp)
-fldl .LC1046
-fcompl 20(%ebp)
-fstsw %ax
-sahf
-jbe .LC1036
-fldl .LC1047
-fmull 20(%ebp)
-fstpl 20(%ebp)
-decl -8(%ebp)
-jmp .LC1036
-.LC1038:
-.LC1034:
-cmpl $0,-24(%ebp)
-je .LC1048
-fldl .LC9
-fdivl -16(%ebp)
-fstpl -16(%ebp)
-negl -20(%ebp)
-.LC1048:
-pushl -20(%ebp)
-fldl -16(%ebp)
-subl $8,%esp
-fstpl (%esp)
-call ldexp
-addl $12,%esp
-fstpl -96(%ebp)
-fldl -96(%ebp)
-.LC1022:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf1050:
-.size pow,.Lf1050-pow
-.bss
-.globl UfNGrad
-.align 4
-.type UfNGrad,@object
-.size UfNGrad,4
-.comm UfNGrad,4
-.globl SqRWrng
-.align 4
-.type SqRWrng,@object
-.size SqRWrng,4
-.comm SqRWrng,4
-.globl IEEE
-.align 4
-.type IEEE,@object
-.size IEEE,4
-.comm IEEE,4
-.globl Anomaly
-.align 4
-.type Anomaly,@object
-.size Anomaly,4
-.comm Anomaly,4
-.globl Monot
-.align 4
-.type Monot,@object
-.size Monot,4
-.comm Monot,4
-.globl NotMonot
-.align 4
-.type NotMonot,@object
-.size NotMonot,4
-.comm NotMonot,4
-.globl Done
-.align 4
-.type Done,@object
-.size Done,4
-.comm Done,4
-.globl Break
-.align 4
-.type Break,@object
-.size Break,4
-.comm Break,4
-.globl RSqrt
-.align 4
-.type RSqrt,@object
-.size RSqrt,4
-.comm RSqrt,4
-.globl RAddSub
-.align 4
-.type RAddSub,@object
-.size RAddSub,4
-.comm RAddSub,4
-.globl RDiv
-.align 4
-.type RDiv,@object
-.size RDiv,4
-.comm RDiv,4
-.globl RMult
-.align 4
-.type RMult,@object
-.size RMult,4
-.comm RMult,4
-.globl GAddSub
-.align 4
-.type GAddSub,@object
-.size GAddSub,4
-.comm GAddSub,4
-.globl GDiv
-.align 4
-.type GDiv,@object
-.size GDiv,4
-.comm GDiv,4
-.globl GMult
-.align 4
-.type GMult,@object
-.size GMult,4
-.comm GMult,4
-.globl N1
-.align 4
-.type N1,@object
-.size N1,4
-.comm N1,4
-.globl N
-.align 4
-.type N,@object
-.size N,4
-.comm N,4
-.globl M
-.align 4
-.type M,@object
-.size M,4
-.comm M,4
-.globl PageNo
-.align 4
-.type PageNo,@object
-.size PageNo,4
-.comm PageNo,4
-.globl Milestone
-.align 4
-.type Milestone,@object
-.size Milestone,4
-.comm Milestone,4
-.globl fpecount
-.align 4
-.type fpecount,@object
-.size fpecount,4
-.comm fpecount,4
-.globl ErrCnt
-.align 4
-.type ErrCnt,@object
-.size ErrCnt,16
-.comm ErrCnt,16
-.globl Z9
-.align 4
-.type Z9,@object
-.size Z9,8
-.comm Z9,8
-.globl Z2
-.align 4
-.type Z2,@object
-.size Z2,8
-.comm Z2,8
-.globl Z1
-.align 4
-.type Z1,@object
-.size Z1,8
-.comm Z1,8
-.globl PseudoZero
-.align 4
-.type PseudoZero,@object
-.size PseudoZero,8
-.comm PseudoZero,8
-.globl Z
-.align 4
-.type Z,@object
-.size Z,8
-.comm Z,8
-.globl Random2
-.align 4
-.type Random2,@object
-.size Random2,8
-.comm Random2,8
-.globl Y2
-.align 4
-.type Y2,@object
-.size Y2,8
-.comm Y2,8
-.globl Y1
-.align 4
-.type Y1,@object
-.size Y1,8
-.comm Y1,8
-.globl Y
-.align 4
-.type Y,@object
-.size Y,8
-.comm Y,8
-.globl Random1
-.align 4
-.type Random1,@object
-.size Random1,8
-.comm Random1,8
-.globl X8
-.align 4
-.type X8,@object
-.size X8,8
-.comm X8,8
-.globl X2
-.align 4
-.type X2,@object
-.size X2,8
-.comm X2,8
-.globl X1
-.align 4
-.type X1,@object
-.size X1,8
-.comm X1,8
-.globl X
-.align 4
-.type X,@object
-.size X,8
-.comm X,8
-.globl W
-.align 4
-.type W,@object
-.size W,8
-.comm W,8
-.globl V9
-.align 4
-.type V9,@object
-.size V9,8
-.comm V9,8
-.globl V0
-.align 4
-.type V0,@object
-.size V0,8
-.comm V0,8
-.globl V
-.align 4
-.type V,@object
-.size V,8
-.comm V,8
-.globl U2
-.align 4
-.type U2,@object
-.size U2,8
-.comm U2,8
-.globl U1
-.align 4
-.type U1,@object
-.size U1,8
-.comm U1,8
-.globl UfThold
-.align 4
-.type UfThold,@object
-.size UfThold,8
-.comm UfThold,8
-.globl OneUlp
-.align 4
-.type OneUlp,@object
-.size OneUlp,8
-.comm OneUlp,8
-.globl S
-.align 4
-.type S,@object
-.size S,8
-.comm S,8
-.globl Underflow
-.align 4
-.type Underflow,@object
-.size Underflow,8
-.comm Underflow,8
-.globl T
-.align 4
-.type T,@object
-.size T,8
-.comm T,8
-.globl Random9
-.align 4
-.type Random9,@object
-.size Random9,8
-.comm Random9,8
-.globl R
-.align 4
-.type R,@object
-.size R,8
-.comm R,8
-.globl Q9
-.align 4
-.type Q9,@object
-.size Q9,8
-.comm Q9,8
-.globl Q
-.align 4
-.type Q,@object
-.size Q,8
-.comm Q,8
-.globl Precision
-.align 4
-.type Precision,@object
-.size Precision,8
-.comm Precision,8
-.globl MyZero
-.align 4
-.type MyZero,@object
-.size MyZero,8
-.comm MyZero,8
-.globl J
-.align 4
-.type J,@object
-.size J,8
-.comm J,8
-.globl StickyBit
-.align 4
-.type StickyBit,@object
-.size StickyBit,8
-.comm StickyBit,8
-.globl I
-.align 4
-.type I,@object
-.size I,4
-.comm I,4
-.globl HInvrse
-.align 4
-.type HInvrse,@object
-.size HInvrse,8
-.comm HInvrse,8
-.globl H
-.align 4
-.type H,@object
-.size H,8
-.comm H,8
-.globl F9
-.align 4
-.type F9,@object
-.size F9,8
-.comm F9,8
-.globl F6
-.align 4
-.type F6,@object
-.size F6,8
-.comm F6,8
-.globl Third
-.align 4
-.type Third,@object
-.size Third,8
-.comm Third,8
-.globl E9
-.align 4
-.type E9,@object
-.size E9,8
-.comm E9,8
-.globl MaxSqEr
-.align 4
-.type MaxSqEr,@object
-.size MaxSqEr,8
-.comm MaxSqEr,8
-.globl SqEr
-.align 4
-.type SqEr,@object
-.size SqEr,8
-.comm SqEr,8
-.globl MinSqEr
-.align 4
-.type MinSqEr,@object
-.size MinSqEr,8
-.comm MinSqEr,8
-.globl E3
-.align 4
-.type E3,@object
-.size E3,8
-.comm E3,8
-.globl Exp2
-.align 4
-.type Exp2,@object
-.size Exp2,8
-.comm Exp2,8
-.globl E1
-.align 4
-.type E1,@object
-.size E1,8
-.comm E1,8
-.globl E0
-.align 4
-.type E0,@object
-.size E0,8
-.comm E0,8
-.globl FourD
-.align 4
-.type FourD,@object
-.size FourD,8
-.comm FourD,8
-.globl D
-.align 4
-.type D,@object
-.size D,8
-.comm D,8
-.globl CInvrse
-.align 4
-.type CInvrse,@object
-.size CInvrse,8
-.comm CInvrse,8
-.globl C
-.align 4
-.type C,@object
-.size C,8
-.comm C,8
-.globl A1
-.align 4
-.type A1,@object
-.size A1,8
-.comm A1,8
-.globl AInvrse
-.align 4
-.type AInvrse,@object
-.size AInvrse,8
-.comm AInvrse,8
-.globl ch
-.align 1
-.type ch,@object
-.size ch,8
-.comm ch,8
-.globl Indx
-.align 4
-.type Indx,@object
-.size Indx,4
-.comm Indx,4
-.globl BMinusU2
-.align 4
-.type BMinusU2,@object
-.size BMinusU2,8
-.comm BMinusU2,8
-.globl RadixD2
-.align 4
-.type RadixD2,@object
-.size RadixD2,8
-.comm RadixD2,8
-.globl BInvrse
-.align 4
-.type BInvrse,@object
-.size BInvrse,8
-.comm BInvrse,8
-.globl Radix
-.align 4
-.type Radix,@object
-.size Radix,8
-.comm Radix,8
-.globl sigsave
-.align 4
-.type sigsave,@object
-.size sigsave,4
-.comm sigsave,4
-.globl ovfl_buf
-.align 4
-.type ovfl_buf,@object
-.size ovfl_buf,24
-.comm ovfl_buf,24
-.data
-.align 4
-.LC1047:
-.long 0
-.long 1073741824
-.align 4
-.LC1046:
-.long 0
-.long 1071644672
-.align 4
-.LC1029:
-.long 0
-.long 1083256832
-.align 4
-.LC1028:
-.long 0
-.long -1064226816
-.align 1
-.LC1020:
-.byte 115
-.byte 101
-.byte 101
-.byte 32
-.byte 115
-.byte 111
-.byte 117
-.byte 114
-.byte 99
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 109
-.byte 111
-.byte 114
-.byte 101
-.byte 32
-.byte 104
-.byte 105
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 46
-.byte 0
-.align 1
-.LC1019:
-.byte 66
-.byte 65
-.byte 83
-.byte 73
-.byte 67
-.byte 32
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 40
-.byte 67
-.byte 41
-.byte 32
-.byte 49
-.byte 57
-.byte 56
-.byte 51
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 80
-.byte 114
-.byte 111
-.byte 102
-.byte 46
-.byte 32
-.byte 87
-.byte 46
-.byte 32
-.byte 77
-.byte 46
-.byte 32
-.byte 75
-.byte 97
-.byte 104
-.byte 97
-.byte 110
-.byte 59
-.byte 0
-.align 1
-.LC1018:
-.byte 97
-.byte 115
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 99
-.byte 101
-.byte 114
-.byte 116
-.byte 97
-.byte 105
-.byte 110
-.byte 32
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 121
-.byte 32
-.byte 87
-.byte 65
-.byte 78
-.byte 71
-.byte 32
-.byte 109
-.byte 97
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC1017:
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 45
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 44
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 108
-.byte 115
-.byte 111
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 32
-.byte 108
-.byte 111
-.byte 103
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 105
-.byte 99
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.LC1016:
-.byte 10
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 98
-.byte 97
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 117
-.byte 112
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 110
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 114
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 114
-.byte 101
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 101
-.byte 110
-.byte 116
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 0
-.align 1
-.LC1015:
-.byte 111
-.byte 102
-.byte 32
-.byte 112
-.byte 97
-.byte 116
-.byte 104
-.byte 111
-.byte 108
-.byte 111
-.byte 103
-.byte 105
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 115
-.byte 97
-.byte 121
-.byte 32
-.byte 104
-.byte 111
-.byte 119
-.byte 32
-.byte 119
-.byte 101
-.byte 108
-.byte 108
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 109
-.byte 112
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.LC1014:
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 116
-.byte 114
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 112
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 119
-.byte 105
-.byte 100
-.byte 101
-.byte 114
-.byte 32
-.byte 118
-.byte 97
-.byte 114
-.byte 105
-.byte 101
-.byte 116
-.byte 121
-.byte 0
-.align 1
-.LC1013:
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 44
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 32
-.byte 40
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 115
-.byte 41
-.byte 0
-.align 1
-.LC1012:
-.byte 87
-.byte 46
-.byte 32
-.byte 74
-.byte 46
-.byte 32
-.byte 67
-.byte 111
-.byte 100
-.byte 121
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 87
-.byte 46
-.byte 32
-.byte 87
-.byte 97
-.byte 105
-.byte 116
-.byte 101
-.byte 46
-.byte 32
-.byte 65
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 98
-.byte 111
-.byte 116
-.byte 104
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 115
-.byte 32
-.byte 116
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.LC1011:
-.byte 98
-.byte 111
-.byte 111
-.byte 107
-.byte 32
-.byte 32
-.byte 96
-.byte 83
-.byte 111
-.byte 102
-.byte 116
-.byte 119
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 77
-.byte 97
-.byte 110
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 69
-.byte 108
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 70
-.byte 117
-.byte 110
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 39
-.byte 32
-.byte 40
-.byte 49
-.byte 57
-.byte 56
-.byte 48
-.byte 41
-.byte 32
-.byte 98
-.byte 121
-.byte 0
-.align 1
-.LC1010:
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 96
-.byte 77
-.byte 65
-.byte 67
-.byte 72
-.byte 65
-.byte 82
-.byte 39
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 0
-.align 1
-.LC1009:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 99
-.byte 97
-.byte 112
-.byte 97
-.byte 98
-.byte 105
-.byte 108
-.byte 105
-.byte 116
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 103
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 121
-.byte 111
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 105
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.LC1008:
-.byte 70
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 115
-.byte 101
-.byte 113
-.byte 117
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC1007:
-.byte 32
-.byte 32
-.byte 32
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 50
-.byte 43
-.byte 50
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 53
-.byte 32
-.byte 46
-.byte 0
-.align 1
-.LC1006:
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 0
-.align 1
-.LC1005:
-.byte 32
-.byte 32
-.byte 32
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 115
-.byte 44
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 44
-.byte 0
-.align 1
-.LC1004:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 97
-.byte 116
-.byte 116
-.byte 101
-.byte 109
-.byte 112
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 105
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 97
-.byte 109
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.LC1000:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 68
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 45
-.byte 66
-.byte 105
-.byte 110
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 89
-.byte 69
-.byte 84
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 97
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 46
-.byte 0
-.align 1
-.LC999:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 69
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 101
-.byte 118
-.byte 101
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 89
-.byte 69
-.byte 84
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.LC998:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 32
-.byte 32
-.byte 89
-.byte 94
-.byte 88
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.LC997:
-.byte 9
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 116
-.byte 97
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 112
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 45
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 115
-.byte 46
-.byte 0
-.align 1
-.LC996:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 99
-.byte 121
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.LC995:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 86
-.byte 48
-.byte 32
-.byte 32
-.byte 116
-.byte 101
-.byte 108
-.byte 108
-.byte 115
-.byte 44
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 32
-.byte 73
-.byte 110
-.byte 102
-.byte 105
-.byte 110
-.byte 105
-.byte 116
-.byte 121
-.byte 32
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.LC994:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 86
-.byte 32
-.byte 61
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 44
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 46
-.byte 0
-.align 1
-.LC993:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 69
-.byte 48
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 101
-.byte 108
-.byte 108
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 98
-.byte 114
-.byte 117
-.byte 112
-.byte 116
-.byte 44
-.byte 32
-.byte 103
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 117
-.byte 122
-.byte 122
-.byte 121
-.byte 46
-.byte 0
-.align 1
-.LC992:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 84
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.LC991:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 87
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 32
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 66
-.byte 105
-.byte 116
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 46
-.byte 0
-.align 1
-.LC990:
-.byte 9
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 46
-.byte 44
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 46
-.byte 44
-.byte 32
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 46
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 83
-.byte 113
-.byte 114
-.byte 116
-.byte 46
-.byte 0
-.align 1
-.LC989:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 87
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 116
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 1
-.LC988:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 65
-.byte 100
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 46
-.byte 44
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 46
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 46
-.byte 0
-.align 1
-.LC987:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 47
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 79
-.byte 110
-.byte 101
-.byte 32
-.byte 85
-.byte 108
-.byte 112
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 108
-.byte 105
-.byte 116
-.byte 116
-.byte 108
-.byte 101
-.byte 32
-.byte 108
-.byte 101
-.byte 115
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 32
-.byte 46
-.byte 0
-.align 1
-.LC986:
-.byte 9
-.byte 40
-.byte 79
-.byte 110
-.byte 101
-.byte 85
-.byte 108
-.byte 112
-.byte 110
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 76
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 80
-.byte 108
-.byte 97
-.byte 99
-.byte 101
-.byte 41
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 48
-.byte 48
-.byte 120
-.byte 120
-.byte 120
-.byte 32
-.byte 46
-.byte 0
-.align 1
-.LC985:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 47
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 79
-.byte 110
-.byte 101
-.byte 32
-.byte 85
-.byte 108
-.byte 112
-.byte 0
-.align 1
-.LC984:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 114
-.byte 105
-.byte 101
-.byte 100
-.byte 46
-.byte 0
-.align 1
-.LC983:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 44
-.byte 32
-.byte 52
-.byte 44
-.byte 32
-.byte 56
-.byte 44
-.byte 32
-.byte 49
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 54
-.byte 44
-.byte 32
-.byte 49
-.byte 48
-.byte 48
-.byte 44
-.byte 32
-.byte 50
-.byte 53
-.byte 54
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 1
-.LC982:
-.byte 82
-.byte 117
-.byte 110
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 114
-.byte 101
-.byte 118
-.byte 101
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 115
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 115
-.byte 58
-.byte 0
-.align 1
-.LC978:
-.byte 9
-.byte 79
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 101
-.byte 118
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 105
-.byte 108
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 112
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 58
-.byte 0
-.align 1
-.LC977:
-.byte 9
-.byte 79
-.byte 112
-.byte 116
-.byte 105
-.byte 109
-.byte 105
-.byte 122
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 101
-.byte 118
-.byte 101
-.byte 108
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.LC976:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 105
-.byte 108
-.byte 101
-.byte 114
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.LC975:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.LC974:
-.byte 9
-.byte 86
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 9
-.byte 49
-.byte 48
-.byte 32
-.byte 70
-.byte 101
-.byte 98
-.byte 114
-.byte 117
-.byte 97
-.byte 114
-.byte 121
-.byte 32
-.byte 49
-.byte 57
-.byte 56
-.byte 57
-.byte 59
-.byte 0
-.align 1
-.LC973:
-.byte 9
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 9
-.byte 100
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 59
-.byte 0
-.align 1
-.LC972:
-.byte 73
-.byte 110
-.byte 32
-.byte 100
-.byte 111
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 115
-.byte 111
-.byte 44
-.byte 32
-.byte 112
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 108
-.byte 117
-.byte 100
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 108
-.byte 108
-.byte 111
-.byte 119
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 110
-.byte 102
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 58
-.byte 0
-.align 1
-.LC971:
-.byte 9
-.byte 83
-.byte 97
-.byte 110
-.byte 32
-.byte 70
-.byte 114
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 44
-.byte 32
-.byte 67
-.byte 65
-.byte 32
-.byte 57
-.byte 52
-.byte 49
-.byte 52
-.byte 51
-.byte 45
-.byte 48
-.byte 55
-.byte 48
-.byte 52
-.byte 44
-.byte 32
-.byte 85
-.byte 83
-.byte 65
-.byte 10
-.byte 0
-.align 1
-.LC970:
-.byte 9
-.byte 85
-.byte 110
-.byte 105
-.byte 118
-.byte 101
-.byte 114
-.byte 115
-.byte 105
-.byte 116
-.byte 121
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 67
-.byte 97
-.byte 108
-.byte 105
-.byte 102
-.byte 111
-.byte 114
-.byte 110
-.byte 105
-.byte 97
-.byte 0
-.align 1
-.LC969:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 67
-.byte 101
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 85
-.byte 45
-.byte 55
-.byte 54
-.byte 0
-.align 1
-.LC968:
-.byte 9
-.byte 82
-.byte 105
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 75
-.byte 97
-.byte 114
-.byte 112
-.byte 105
-.byte 110
-.byte 115
-.byte 107
-.byte 105
-.byte 0
-.align 1
-.LC967:
-.byte 80
-.byte 108
-.byte 101
-.byte 97
-.byte 115
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 115
-.byte 117
-.byte 103
-.byte 103
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 0
-.align 1
-.LC966:
-.byte 99
-.byte 111
-.byte 112
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 117
-.byte 110
-.byte 97
-.byte 110
-.byte 116
-.byte 105
-.byte 99
-.byte 105
-.byte 112
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 110
-.byte 101
-.byte 119
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 110
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 112
-.byte 97
-.byte 116
-.byte 104
-.byte 111
-.byte 108
-.byte 111
-.byte 103
-.byte 105
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC965:
-.byte 85
-.byte 115
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 105
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 104
-.byte 101
-.byte 108
-.byte 112
-.byte 32
-.byte 100
-.byte 101
-.byte 98
-.byte 117
-.byte 103
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 117
-.byte 103
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 119
-.byte 105
-.byte 108
-.byte 108
-.byte 0
-.align 1
-.LC961:
-.byte 65
-.byte 110
-.byte 115
-.byte 119
-.byte 101
-.byte 114
-.byte 32
-.byte 113
-.byte 117
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 89
-.byte 44
-.byte 32
-.byte 121
-.byte 44
-.byte 32
-.byte 78
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 110
-.byte 32
-.byte 40
-.byte 117
-.byte 110
-.byte 108
-.byte 101
-.byte 115
-.byte 115
-.byte 32
-.byte 111
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 119
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 100
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC960:
-.byte 97
-.byte 109
-.byte 101
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 107
-.byte 101
-.byte 32
-.byte 102
-.byte 117
-.byte 114
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC959:
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 97
-.byte 110
-.byte 121
-.byte 119
-.byte 97
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 32
-.byte 104
-.byte 111
-.byte 119
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 109
-.byte 105
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 111
-.byte 110
-.byte 101
-.byte 115
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 115
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 110
-.byte 0
-.align 1
-.LC958:
-.byte 119
-.byte 97
-.byte 114
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 46
-.byte 32
-.byte 32
-.byte 73
-.byte 102
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 117
-.byte 97
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 118
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 32
-.byte 110
-.byte 97
-.byte 117
-.byte 103
-.byte 104
-.byte 116
-.byte 44
-.byte 32
-.byte 100
-.byte 111
-.byte 110
-.byte 39
-.byte 116
-.byte 32
-.byte 100
-.byte 101
-.byte 115
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 114
-.byte 117
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 1
-.LC957:
-.byte 116
-.byte 111
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 101
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 115
-.byte 117
-.byte 114
-.byte 114
-.byte 111
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 97
-.byte 102
-.byte 116
-.byte 101
-.byte 114
-.byte 44
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 104
-.byte 97
-.byte 112
-.byte 115
-.byte 44
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 112
-.byte 108
-.byte 97
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 0
-.align 1
-.LC956:
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 44
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.LC955:
-.byte 116
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 112
-.byte 101
-.byte 114
-.byte 115
-.byte 117
-.byte 97
-.byte 100
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 116
-.byte 101
-.byte 114
-.byte 109
-.byte 105
-.byte 110
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 101
-.byte 99
-.byte 117
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 97
-.byte 110
-.byte 0
-.align 1
-.LC954:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 96
-.byte 69
-.byte 78
-.byte 68
-.byte 32
-.byte 79
-.byte 70
-.byte 32
-.byte 84
-.byte 69
-.byte 83
-.byte 84
-.byte 39
-.byte 44
-.byte 10
-.byte 0
-.align 1
-.LC953:
-.byte 76
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 112
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 109
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 101
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 105
-.byte 46
-.byte 101
-.byte 46
-.byte 32
-.byte 98
-.byte 101
-.byte 102
-.byte 111
-.byte 114
-.byte 101
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 112
-.byte 108
-.byte 97
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.LC949:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC943:
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 76
-.byte 69
-.byte 65
-.byte 83
-.byte 69
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 73
-.byte 70
-.byte 89
-.byte 32
-.byte 75
-.byte 65
-.byte 82
-.byte 80
-.byte 73
-.byte 78
-.byte 75
-.byte 83
-.byte 73
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC942:
-.byte 37
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 116
-.byte 46
-.byte 46
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC939:
-.byte 9
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 90
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC938:
-.byte 9
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 49
-.byte 32
-.byte 42
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC937:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 100
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 117
-.byte 116
-.byte 101
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC932:
-.byte 90
-.byte 32
-.byte 47
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC929:
-.byte 49
-.byte 32
-.byte 42
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.LC926:
-.byte 90
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 1
-.LC923:
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.LC922:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 0
-.align 1
-.LC917:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC914:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 86
-.byte 69
-.byte 82
-.byte 89
-.byte 32
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC908:
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 106
-.byte 117
-.byte 115
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC907:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 44
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 47
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 1
-.LC904:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 109
-.byte 97
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 101
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 40
-.byte 90
-.byte 32
-.byte 43
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC900:
-.byte 40
-.byte 90
-.byte 32
-.byte 43
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 115
-.byte 97
-.byte 102
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC899:
-.byte 83
-.byte 105
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 100
-.byte 101
-.byte 110
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 101
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 0
-.align 1
-.LC894:
-.byte 83
-.byte 105
-.byte 109
-.byte 105
-.byte 108
-.byte 97
-.byte 114
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 116
-.byte 105
-.byte 109
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC882:
-.byte 9
-.byte 9
-.byte 116
-.byte 104
-.byte 101
-.byte 121
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC881:
-.byte 9
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 117
-.byte 110
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 59
-.byte 10
-.byte 0
-.align 1
-.LC880:
-.byte 9
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 59
-.byte 10
-.byte 0
-.align 1
-.LC879:
-.byte 9
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 10
-.byte 0
-.align 1
-.LC878:
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.LC877:
-.byte 87
-.byte 65
-.byte 82
-.byte 78
-.byte 73
-.byte 78
-.byte 71
-.byte 58
-.byte 32
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.LC856:
-.byte 9
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 101
-.byte 97
-.byte 100
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 48
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC855:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 4
-.LC846:
-.long -1998362383
-.long 1054144693
-.align 1
-.LC843:
-.byte 37
-.byte 115
-.byte 58
-.byte 32
-.byte 32
-.byte 37
-.byte 115
-.byte 0
-.align 1
-.LC842:
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 0
-.align 1
-.LC841:
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 0
-.align 1
-.LC840:
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 0
-.align 1
-.LC839:
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 0
-.align 1
-.LC831:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 80
-.byte 97
-.byte 103
-.byte 101
-.byte 58
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 10
-.byte 0
-.align 1
-.LC830:
-.byte 10
-.byte 68
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 109
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 102
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 109
-.byte 105
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 111
-.byte 110
-.byte 101
-.byte 32
-.byte 78
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 0
-.align 4
-.LC827:
-.long 0
-.long -1074790400
-.align 1
-.LC821:
-.byte 69
-.byte 78
-.byte 68
-.byte 32
-.byte 79
-.byte 70
-.byte 32
-.byte 84
-.byte 69
-.byte 83
-.byte 84
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC820:
-.byte 10
-.byte 65
-.byte 32
-.byte 116
-.byte 111
-.byte 116
-.byte 97
-.byte 108
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 102
-.byte 108
-.byte 111
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 119
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 101
-.byte 103
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC817:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 69
-.byte 120
-.byte 99
-.byte 101
-.byte 108
-.byte 108
-.byte 101
-.byte 110
-.byte 116
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC816:
-.byte 32
-.byte 100
-.byte 117
-.byte 114
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 71
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC815:
-.byte 44
-.byte 10
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 115
-.byte 105
-.byte 98
-.byte 108
-.byte 121
-.byte 32
-.byte 68
-.byte 111
-.byte 117
-.byte 98
-.byte 108
-.byte 101
-.byte 32
-.byte 82
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.LC814:
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC811:
-.byte 56
-.byte 53
-.byte 52
-.byte 0
-.align 1
-.LC810:
-.byte 55
-.byte 53
-.byte 52
-.byte 0
-.align 1
-.LC807:
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 112
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 73
-.byte 69
-.byte 69
-.byte 69
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 110
-.byte 100
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 80
-.byte 0
-.align 1
-.LC806:
-.byte 82
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 111
-.byte 114
-.byte 109
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 0
-.align 1
-.LC803:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 83
-.byte 97
-.byte 116
-.byte 105
-.byte 115
-.byte 102
-.byte 97
-.byte 99
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC797:
-.byte 78
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 44
-.byte 32
-.byte 100
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 115
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 98
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC796:
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 39
-.byte 115
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 115
-.byte 101
-.byte 113
-.byte 117
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC795:
-.byte 80
-.byte 111
-.byte 116
-.byte 101
-.byte 110
-.byte 116
-.byte 105
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 102
-.byte 97
-.byte 116
-.byte 97
-.byte 108
-.byte 32
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 112
-.byte 111
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 1
-.LC792:
-.byte 117
-.byte 110
-.byte 97
-.byte 99
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 32
-.byte 83
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 68
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC791:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 0
-.align 1
-.LC787:
-.byte 100
-.byte 101
-.byte 115
-.byte 112
-.byte 105
-.byte 116
-.byte 101
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 118
-.byte 101
-.byte 110
-.byte 105
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 68
-.byte 101
-.byte 102
-.byte 101
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC786:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 65
-.byte 99
-.byte 99
-.byte 101
-.byte 112
-.byte 116
-.byte 97
-.byte 98
-.byte 108
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC781:
-.byte 83
-.byte 97
-.byte 116
-.byte 105
-.byte 115
-.byte 102
-.byte 97
-.byte 99
-.byte 116
-.byte 111
-.byte 114
-.byte 121
-.byte 32
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC780:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 100
-.byte 105
-.byte 97
-.byte 103
-.byte 110
-.byte 111
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 0
-.align 1
-.LC769:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 32
-.byte 37
-.byte 45
-.byte 50
-.byte 57
-.byte 115
-.byte 32
-.byte 37
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC762:
-.byte 70
-.byte 76
-.byte 65
-.byte 87
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 1
-.LC761:
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 1
-.LC760:
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 115
-.byte 32
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 1
-.LC759:
-.byte 70
-.byte 65
-.byte 73
-.byte 76
-.byte 85
-.byte 82
-.byte 69
-.byte 115
-.byte 32
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 100
-.byte 32
-.byte 61
-.byte 0
-.align 1
-.LC755:
-.byte 10
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 48
-.byte 32
-.byte 47
-.byte 32
-.byte 48
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 115
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 1
-.LC754:
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC751:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 49
-.byte 32
-.byte 47
-.byte 32
-.byte 48
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 115
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 0
-.align 1
-.LC750:
-.byte 87
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 109
-.byte 101
-.byte 115
-.byte 115
-.byte 97
-.byte 103
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 47
-.byte 111
-.byte 114
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 32
-.byte 100
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 63
-.byte 10
-.byte 0
-.align 1
-.LC749:
-.byte 32
-.byte 32
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 101
-.byte 97
-.byte 100
-.byte 44
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC748:
-.byte 32
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC743:
-.byte 32
-.byte 32
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 88
-.byte 32
-.byte 32
-.byte 116
-.byte 114
-.byte 97
-.byte 112
-.byte 115
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.LC728:
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC727:
-.byte 32
-.byte 117
-.byte 110
-.byte 98
-.byte 97
-.byte 108
-.byte 97
-.byte 110
-.byte 99
-.byte 101
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 59
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 42
-.byte 32
-.byte 86
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC726:
-.byte 66
-.byte 97
-.byte 100
-.byte 108
-.byte 121
-.byte 0
-.align 1
-.LC719:
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 90
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 50
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC718:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC706:
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 114
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 90
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC705:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 119
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC688:
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 44
-.byte 32
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 10
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 43
-.byte 45
-.byte 37
-.byte 103
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 0
-.align 1
-.LC687:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 0
-.align 1
-.LC681:
-.byte 97
-.byte 98
-.byte 111
-.byte 118
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC680:
-.byte 65
-.byte 110
-.byte 121
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 42
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 111
-.byte 110
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC679:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 86
-.byte 32
-.byte 47
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC678:
-.byte 78
-.byte 111
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 86
-.byte 32
-.byte 42
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC677:
-.byte 84
-.byte 104
-.byte 101
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 115
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 98
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 115
-.byte 121
-.byte 115
-.byte 116
-.byte 101
-.byte 109
-.byte 32
-.byte 116
-.byte 114
-.byte 97
-.byte 112
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC676:
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 115
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 86
-.byte 48
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC673:
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 86
-.byte 32
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC664:
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 115
-.byte 104
-.byte 114
-.byte 105
-.byte 110
-.byte 107
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC661:
-.byte 45
-.byte 40
-.byte 45
-.byte 89
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 89
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC660:
-.byte 102
-.byte 105
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 0
-.align 1
-.LC659:
-.byte 83
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC656:
-.byte 84
-.byte 114
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC655:
-.byte 67
-.byte 97
-.byte 110
-.byte 32
-.byte 96
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 45
-.byte 89
-.byte 39
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 63
-.byte 10
-.byte 0
-.align 1
-.LC648:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 103
-.byte 101
-.byte 110
-.byte 101
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC647:
-.byte 83
-.byte 101
-.byte 97
-.byte 114
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 79
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.LC646:
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC638:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 119
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 94
-.byte 81
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 114
-.byte 32
-.byte 110
-.byte 101
-.byte 97
-.byte 114
-.byte 108
-.byte 121
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 101
-.byte 109
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC637:
-.byte 65
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 115
-.byte 101
-.byte 101
-.byte 109
-.byte 115
-.byte 32
-.byte 97
-.byte 100
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 116
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC630:
-.byte 9
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 105
-.byte 110
-.byte 121
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC629:
-.byte 9
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 117
-.byte 99
-.byte 104
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 115
-.byte 112
-.byte 111
-.byte 105
-.byte 108
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 10
-.byte 0
-.align 1
-.LC628:
-.byte 9
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC627:
-.byte 9
-.byte 40
-.byte 49
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 59
-.byte 10
-.byte 0
-.align 1
-.LC626:
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 10
-.byte 0
-.align 1
-.LC625:
-.byte 67
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 0
-.align 1
-.LC618:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 88
-.byte 94
-.byte 40
-.byte 40
-.byte 88
-.byte 32
-.byte 43
-.byte 32
-.byte 49
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 41
-.byte 41
-.byte 32
-.byte 118
-.byte 115
-.byte 46
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 40
-.byte 50
-.byte 41
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 62
-.byte 32
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC614:
-.byte 84
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC611:
-.byte 32
-.byte 32
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC610:
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 116
-.byte 119
-.byte 101
-.byte 101
-.byte 110
-.byte 32
-.byte 48
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 10
-.byte 0
-.align 1
-.LC606:
-.byte 97
-.byte 99
-.byte 116
-.byte 117
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 58
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC605:
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 97
-.byte 102
-.byte 102
-.byte 108
-.byte 105
-.byte 99
-.byte 116
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 10
-.byte 9
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 59
-.byte 10
-.byte 0
-.align 1
-.LC604:
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 32
-.byte 94
-.byte 32
-.byte 40
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 41
-.byte 10
-.byte 111
-.byte 110
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 0
-.align 1
-.LC603:
-.byte 83
-.byte 105
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 111
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC602:
-.byte 82
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 110
-.byte 97
-.byte 114
-.byte 114
-.byte 111
-.byte 119
-.byte 59
-.byte 32
-.byte 85
-.byte 49
-.byte 94
-.byte 37
-.byte 100
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC597:
-.byte 109
-.byte 101
-.byte 114
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC596:
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 115
-.byte 117
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 32
-.byte 108
-.byte 97
-.byte 114
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 82
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 0
-.align 1
-.LC595:
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 0
-.align 1
-.LC594:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC593:
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 49
-.byte 32
-.byte 43
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC592:
-.byte 88
-.byte 32
-.byte 47
-.byte 32
-.byte 90
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC589:
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 97
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 32
-.byte 97
-.byte 99
-.byte 116
-.byte 117
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 10
-.byte 0
-.align 1
-.LC588:
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 40
-.byte 102
-.byte 40
-.byte 88
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 102
-.byte 40
-.byte 90
-.byte 41
-.byte 41
-.byte 32
-.byte 47
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC587:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 90
-.byte 41
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 0
-.align 1
-.LC586:
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 110
-.byte 111
-.byte 99
-.byte 101
-.byte 110
-.byte 116
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 116
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC585:
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 83
-.byte 69
-.byte 82
-.byte 73
-.byte 79
-.byte 85
-.byte 83
-.byte 32
-.byte 68
-.byte 69
-.byte 70
-.byte 69
-.byte 67
-.byte 84
-.byte 10
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 115
-.byte 32
-.byte 0
-.align 1
-.LC584:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 83
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 79
-.byte 84
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 44
-.byte 32
-.byte 0
-.align 1
-.LC583:
-.byte 121
-.byte 101
-.byte 116
-.byte 32
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 90
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC582:
-.byte 88
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 9
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 101
-.byte 113
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 90
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC577:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 47
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 101
-.byte 100
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC567:
-.byte 40
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 41
-.byte 32
-.byte 60
-.byte 32
-.byte 69
-.byte 48
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC566:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 103
-.byte 114
-.byte 97
-.byte 100
-.byte 117
-.byte 97
-.byte 108
-.byte 59
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 117
-.byte 114
-.byte 115
-.byte 32
-.byte 65
-.byte 98
-.byte 115
-.byte 111
-.byte 108
-.byte 117
-.byte 116
-.byte 101
-.byte 32
-.byte 69
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 61
-.byte 10
-.byte 0
-.align 1
-.LC561:
-.byte 124
-.byte 81
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 124
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC560:
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 81
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC559:
-.byte 81
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 89
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 108
-.byte 101
-.byte 32
-.byte 100
-.byte 101
-.byte 110
-.byte 121
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 124
-.byte 81
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 124
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 48
-.byte 59
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 115
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC558:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 117
-.byte 115
-.byte 101
-.byte 115
-.byte 32
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 10
-.byte 0
-.align 1
-.LC556:
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 32
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC555:
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 100
-.byte 111
-.byte 119
-.byte 110
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC554:
-.byte 97
-.byte 112
-.byte 112
-.byte 114
-.byte 111
-.byte 97
-.byte 99
-.byte 104
-.byte 32
-.byte 97
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 49
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC553:
-.byte 69
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 97
-.byte 99
-.byte 99
-.byte 117
-.byte 114
-.byte 97
-.byte 99
-.byte 121
-.byte 32
-.byte 100
-.byte 101
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 111
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC541:
-.byte 83
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 115
-.byte 116
-.byte 114
-.byte 105
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 69
-.byte 48
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC540:
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 116
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC539:
-.byte 68
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 99
-.byte 101
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 115
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 32
-.byte 104
-.byte 105
-.byte 103
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.LC536:
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 101
-.byte 110
-.byte 99
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC535:
-.byte 80
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 116
-.byte 115
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 32
-.byte 104
-.byte 105
-.byte 103
-.byte 104
-.byte 101
-.byte 114
-.byte 0
-.align 1
-.LC528:
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC527:
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 100
-.byte 108
-.byte 121
-.byte 32
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC526:
-.byte 112
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 44
-.byte 32
-.byte 105
-.byte 115
-.byte 110
-.byte 39
-.byte 116
-.byte 59
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC525:
-.byte 66
-.byte 117
-.byte 116
-.byte 32
-.byte 45
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 44
-.byte 32
-.byte 119
-.byte 104
-.byte 105
-.byte 99
-.byte 104
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC522:
-.byte 80
-.byte 115
-.byte 101
-.byte 117
-.byte 100
-.byte 111
-.byte 90
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 112
-.byte 114
-.byte 105
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 58
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC521:
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 100
-.byte 108
-.byte 121
-.byte 32
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC520:
-.byte 80
-.byte 111
-.byte 115
-.byte 105
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 97
-.byte 110
-.byte 10
-.byte 0
-.align 1
-.LC507:
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC483:
-.byte 83
-.byte 101
-.byte 101
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 85
-.byte 110
-.byte 100
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 32
-.byte 116
-.byte 104
-.byte 114
-.byte 101
-.byte 115
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 85
-.byte 102
-.byte 84
-.byte 104
-.byte 111
-.byte 108
-.byte 100
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 69
-.byte 48
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC480:
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 110
-.byte 111
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 99
-.byte 114
-.byte 101
-.byte 112
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC477:
-.byte 9
-.byte 105
-.byte 110
-.byte 118
-.byte 111
-.byte 108
-.byte 118
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 114
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 101
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC476:
-.byte 69
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 108
-.byte 105
-.byte 107
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 105
-.byte 110
-.byte 118
-.byte 97
-.byte 108
-.byte 105
-.byte 100
-.byte 97
-.byte 116
-.byte 101
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 110
-.byte 99
-.byte 105
-.byte 97
-.byte 108
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC455:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 112
-.byte 111
-.byte 119
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 94
-.byte 105
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 90
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC452:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.LC450:
-.byte 116
-.byte 111
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 117
-.byte 108
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC449:
-.byte 79
-.byte 98
-.byte 115
-.byte 101
-.byte 114
-.byte 118
-.byte 101
-.byte 100
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 115
-.byte 32
-.byte 114
-.byte 117
-.byte 110
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 1
-.LC448:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC445:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC440:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC435:
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC434:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 94
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC433:
-.byte 65
-.byte 110
-.byte 111
-.byte 109
-.byte 97
-.byte 108
-.byte 111
-.byte 117
-.byte 115
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 60
-.byte 32
-.byte 0
-.align 1
-.LC393:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 119
-.byte 104
-.byte 101
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC371:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 88
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 110
-.byte 45
-.byte 109
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 88
-.byte 32
-.byte 110
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC370:
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 112
-.byte 97
-.byte 115
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 77
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 105
-.byte 116
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC353:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 32
-.byte 109
-.byte 111
-.byte 110
-.byte 111
-.byte 116
-.byte 111
-.byte 110
-.byte 105
-.byte 99
-.byte 105
-.byte 116
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC342:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 115
-.byte 113
-.byte 114
-.byte 116
-.byte 40
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 88
-.byte 41
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 88
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 88
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC337:
-.byte 83
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 48
-.byte 46
-.byte 48
-.byte 44
-.byte 32
-.byte 45
-.byte 48
-.byte 46
-.byte 48
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.LC335:
-.byte 10
-.byte 82
-.byte 117
-.byte 110
-.byte 110
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 113
-.byte 117
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 114
-.byte 111
-.byte 111
-.byte 116
-.byte 40
-.byte 120
-.byte 41
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC334:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 78
-.byte 111
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC333:
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 89
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 89
-.byte 32
-.byte 42
-.byte 32
-.byte 88
-.byte 32
-.byte 116
-.byte 114
-.byte 105
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 4
-.LC324:
-.long 0
-.long 1074266112
-.align 1
-.LC323:
-.byte 84
-.byte 101
-.byte 115
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 114
-.byte 97
-.byte 110
-.byte 100
-.byte 111
-.byte 109
-.byte 32
-.byte 112
-.byte 97
-.byte 105
-.byte 114
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC322:
-.byte 68
-.byte 111
-.byte 101
-.byte 115
-.byte 32
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 111
-.byte 109
-.byte 109
-.byte 117
-.byte 116
-.byte 101
-.byte 63
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.LC319:
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 40
-.byte 115
-.byte 41
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 117
-.byte 114
-.byte 101
-.byte 40
-.byte 115
-.byte 41
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 10
-.byte 40
-.byte 110
-.byte 111
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 97
-.byte 98
-.byte 111
-.byte 118
-.byte 101
-.byte 41
-.byte 32
-.byte 99
-.byte 111
-.byte 117
-.byte 110
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 101
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 116
-.byte 97
-.byte 108
-.byte 108
-.byte 121
-.byte 32
-.byte 98
-.byte 101
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 1
-.LC317:
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 116
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC316:
-.byte 83
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 97
-.byte 114
-.byte 101
-.byte 110
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 117
-.byte 115
-.byte 101
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC299:
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 115
-.byte 116
-.byte 105
-.byte 99
-.byte 107
-.byte 121
-.byte 32
-.byte 98
-.byte 105
-.byte 116
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC296:
-.byte 40
-.byte 88
-.byte 32
-.byte 45
-.byte 32
-.byte 89
-.byte 41
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 89
-.byte 32
-.byte 45
-.byte 32
-.byte 88
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 110
-.byte 32
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC293:
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC292:
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 0
-.align 1
-.LC289:
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC282:
-.byte 65
-.byte 100
-.byte 100
-.byte 47
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC277:
-.byte 73
-.byte 110
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 108
-.byte 101
-.byte 116
-.byte 101
-.byte 32
-.byte 99
-.byte 97
-.byte 114
-.byte 114
-.byte 121
-.byte 45
-.byte 112
-.byte 114
-.byte 111
-.byte 112
-.byte 97
-.byte 103
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 65
-.byte 100
-.byte 100
-.byte 105
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.LC273:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 42
-.byte 32
-.byte 40
-.byte 32
-.byte 49
-.byte 32
-.byte 47
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 0
-.align 1
-.LC271:
-.byte 47
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC268:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC265:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.LC262:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC257:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.LC254:
-.byte 42
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 101
-.byte 105
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 112
-.byte 101
-.byte 100
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC253:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 99
-.byte 104
-.byte 111
-.byte 112
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC250:
-.byte 77
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 105
-.byte 99
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 99
-.byte 111
-.byte 114
-.byte 114
-.byte 101
-.byte 99
-.byte 116
-.byte 108
-.byte 121
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC240:
-.byte 88
-.byte 32
-.byte 42
-.byte 32
-.byte 40
-.byte 49
-.byte 47
-.byte 88
-.byte 41
-.byte 32
-.byte 100
-.byte 105
-.byte 102
-.byte 102
-.byte 101
-.byte 114
-.byte 115
-.byte 32
-.byte 102
-.byte 114
-.byte 111
-.byte 109
-.byte 32
-.byte 49
-.byte 0
-.align 1
-.LC221:
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 121
-.byte 44
-.byte 32
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 97
-.byte 100
-.byte 100
-.byte 47
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC220:
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 32
-.byte 42
-.byte 44
-.byte 32
-.byte 47
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 45
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 104
-.byte 97
-.byte 118
-.byte 101
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 44
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 121
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC217:
-.byte 32
-.byte 32
-.byte 46
-.byte 46
-.byte 46
-.byte 32
-.byte 32
-.byte 105
-.byte 102
-.byte 32
-.byte 40
-.byte 88
-.byte 32
-.byte 61
-.byte 61
-.byte 32
-.byte 49
-.byte 46
-.byte 48
-.byte 41
-.byte 32
-.byte 123
-.byte 46
-.byte 46
-.byte 46
-.byte 46
-.byte 46
-.byte 125
-.byte 32
-.byte 101
-.byte 108
-.byte 115
-.byte 101
-.byte 32
-.byte 123
-.byte 46
-.byte 46
-.byte 46
-.byte 47
-.byte 40
-.byte 88
-.byte 45
-.byte 49
-.byte 46
-.byte 48
-.byte 41
-.byte 46
-.byte 46
-.byte 46
-.byte 125
-.byte 10
-.byte 0
-.align 1
-.LC216:
-.byte 32
-.byte 32
-.byte 115
-.byte 117
-.byte 99
-.byte 104
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 103
-.byte 97
-.byte 105
-.byte 110
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 32
-.byte 97
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC215:
-.byte 32
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 121
-.byte 105
-.byte 101
-.byte 108
-.byte 100
-.byte 115
-.byte 32
-.byte 32
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 32
-.byte 45
-.byte 32
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 32
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 101
-.byte 98
-.byte 121
-.byte 32
-.byte 118
-.byte 105
-.byte 116
-.byte 105
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 10
-.byte 0
-.align 1
-.LC214:
-.byte 99
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 32
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 32
-.byte 60
-.byte 32
-.byte 49
-.byte 32
-.byte 32
-.byte 97
-.byte 108
-.byte 116
-.byte 104
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 10
-.byte 0
-.align 1
-.LC211:
-.byte 45
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 99
-.byte 101
-.byte 108
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 111
-.byte 98
-.byte 115
-.byte 99
-.byte 117
-.byte 114
-.byte 101
-.byte 100
-.byte 0
-.align 1
-.LC206:
-.byte 42
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 47
-.byte 111
-.byte 114
-.byte 32
-.byte 47
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 108
-.byte 97
-.byte 115
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 0
-.align 1
-.LC202:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 117
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 49
-.byte 47
-.byte 49
-.byte 46
-.byte 48
-.byte 48
-.byte 48
-.byte 46
-.byte 46
-.byte 49
-.byte 32
-.byte 62
-.byte 61
-.byte 32
-.byte 49
-.byte 0
-.align 1
-.LC200:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 88
-.byte 47
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 88
-.byte 0
-.align 1
-.LC195:
-.byte 68
-.byte 105
-.byte 118
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 32
-.byte 101
-.byte 120
-.byte 99
-.byte 101
-.byte 101
-.byte 100
-.byte 32
-.byte 49
-.byte 32
-.byte 117
-.byte 108
-.byte 112
-.byte 10
-.byte 111
-.byte 114
-.byte 32
-.byte 32
-.byte 49
-.byte 47
-.byte 51
-.byte 32
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 32
-.byte 51
-.byte 47
-.byte 57
-.byte 32
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 32
-.byte 57
-.byte 47
-.byte 50
-.byte 55
-.byte 32
-.byte 109
-.byte 97
-.byte 121
-.byte 32
-.byte 100
-.byte 105
-.byte 115
-.byte 97
-.byte 103
-.byte 114
-.byte 101
-.byte 101
-.byte 0
-.align 1
-.LC191:
-.byte 42
-.byte 32
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 109
-.byte 97
-.byte 110
-.byte 121
-.byte 32
-.byte 102
-.byte 105
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 119
-.byte 114
-.byte 111
-.byte 110
-.byte 103
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC189:
-.byte 42
-.byte 32
-.byte 108
-.byte 97
-.byte 99
-.byte 107
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 71
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 68
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 44
-.byte 32
-.byte 115
-.byte 111
-.byte 32
-.byte 49
-.byte 42
-.byte 88
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 88
-.byte 0
-.align 1
-.LC186:
-.byte 10
-.byte 67
-.byte 104
-.byte 101
-.byte 99
-.byte 107
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 103
-.byte 117
-.byte 97
-.byte 114
-.byte 100
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 32
-.byte 105
-.byte 110
-.byte 32
-.byte 42
-.byte 44
-.byte 32
-.byte 47
-.byte 44
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 45
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC185:
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 108
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 44
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 105
-.byte 116
-.byte 32
-.byte 115
-.byte 104
-.byte 111
-.byte 117
-.byte 108
-.byte 100
-.byte 32
-.byte 98
-.byte 101
-.byte 46
-.byte 0
-.align 1
-.LC180:
-.byte 83
-.byte 117
-.byte 98
-.byte 116
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 110
-.byte 111
-.byte 114
-.byte 109
-.byte 97
-.byte 108
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 88
-.byte 61
-.byte 89
-.byte 44
-.byte 88
-.byte 43
-.byte 90
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 89
-.byte 43
-.byte 90
-.byte 33
-.byte 0
-.align 1
-.LC176:
-.byte 114
-.byte 111
-.byte 117
-.byte 103
-.byte 104
-.byte 108
-.byte 121
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC175:
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 32
-.byte 97
-.byte 98
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 37
-.byte 103
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 32
-.byte 66
-.byte 45
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 44
-.byte 32
-.byte 105
-.byte 46
-.byte 101
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC174:
-.byte 83
-.byte 111
-.byte 109
-.byte 101
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 32
-.byte 97
-.byte 112
-.byte 112
-.byte 101
-.byte 97
-.byte 114
-.byte 32
-.byte 116
-.byte 111
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 10
-.byte 0
-.align 1
-.LC168:
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 110
-.byte 10
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.LC167:
-.byte 90
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 90
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 0
-.align 1
-.LC166:
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 101
-.byte 120
-.byte 97
-.byte 99
-.byte 116
-.byte 32
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 97
-.byte 108
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 97
-.byte 32
-.byte 114
-.byte 101
-.byte 115
-.byte 117
-.byte 108
-.byte 116
-.byte 10
-.byte 0
-.align 1
-.LC165:
-.byte 66
-.byte 101
-.byte 99
-.byte 97
-.byte 117
-.byte 115
-.byte 101
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 117
-.byte 110
-.byte 117
-.byte 115
-.byte 117
-.byte 97
-.byte 108
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 102
-.byte 0
-.align 1
-.LC161:
-.byte 9
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 90
-.byte 50
-.byte 32
-.byte 45
-.byte 32
-.byte 85
-.byte 50
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC160:
-.byte 9
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 90
-.byte 49
-.byte 32
-.byte 45
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC159:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 0
-.align 1
-.LC158:
-.byte 0
-.align 1
-.LC151:
-.byte 84
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 102
-.byte 101
-.byte 97
-.byte 116
-.byte 117
-.byte 114
-.byte 101
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 102
-.byte 117
-.byte 114
-.byte 116
-.byte 104
-.byte 101
-.byte 114
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC146:
-.byte 80
-.byte 111
-.byte 115
-.byte 115
-.byte 105
-.byte 98
-.byte 108
-.byte 121
-.byte 32
-.byte 115
-.byte 111
-.byte 109
-.byte 101
-.byte 32
-.byte 112
-.byte 97
-.byte 114
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 0
-.align 1
-.LC145:
-.byte 98
-.byte 121
-.byte 32
-.byte 101
-.byte 120
-.byte 116
-.byte 114
-.byte 97
-.byte 45
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 101
-.byte 32
-.byte 101
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 101
-.byte 116
-.byte 105
-.byte 99
-.byte 32
-.byte 115
-.byte 117
-.byte 98
-.byte 101
-.byte 120
-.byte 112
-.byte 114
-.byte 101
-.byte 115
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 115
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC144:
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 115
-.byte 121
-.byte 109
-.byte 112
-.byte 116
-.byte 111
-.byte 109
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 105
-.byte 110
-.byte 99
-.byte 111
-.byte 110
-.byte 115
-.byte 105
-.byte 115
-.byte 116
-.byte 101
-.byte 110
-.byte 99
-.byte 105
-.byte 101
-.byte 115
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 114
-.byte 111
-.byte 100
-.byte 117
-.byte 99
-.byte 101
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC143:
-.byte 114
-.byte 101
-.byte 115
-.byte 112
-.byte 101
-.byte 99
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 32
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 44
-.byte 10
-.byte 0
-.align 1
-.LC142:
-.byte 68
-.byte 105
-.byte 115
-.byte 97
-.byte 103
-.byte 114
-.byte 101
-.byte 101
-.byte 109
-.byte 101
-.byte 110
-.byte 116
-.byte 115
-.byte 32
-.byte 97
-.byte 109
-.byte 111
-.byte 110
-.byte 103
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 118
-.byte 97
-.byte 108
-.byte 117
-.byte 101
-.byte 115
-.byte 32
-.byte 88
-.byte 49
-.byte 44
-.byte 32
-.byte 89
-.byte 49
-.byte 44
-.byte 32
-.byte 90
-.byte 49
-.byte 44
-.byte 10
-.byte 0
-.align 1
-.LC120:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 119
-.byte 111
-.byte 114
-.byte 115
-.byte 101
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 110
-.byte 32
-.byte 53
-.byte 32
-.byte 100
-.byte 101
-.byte 99
-.byte 105
-.byte 109
-.byte 97
-.byte 108
-.byte 32
-.byte 102
-.byte 105
-.byte 103
-.byte 117
-.byte 114
-.byte 101
-.byte 115
-.byte 32
-.byte 32
-.byte 0
-.align 1
-.LC118:
-.byte 84
-.byte 104
-.byte 101
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 116
-.byte 104
-.byte 101
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC117:
-.byte 108
-.byte 111
-.byte 103
-.byte 97
-.byte 114
-.byte 105
-.byte 116
-.byte 104
-.byte 109
-.byte 105
-.byte 99
-.byte 32
-.byte 101
-.byte 110
-.byte 99
-.byte 111
-.byte 100
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 104
-.byte 97
-.byte 115
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 115
-.byte 111
-.byte 108
-.byte 101
-.byte 108
-.byte 121
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 85
-.byte 49
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC114:
-.byte 111
-.byte 102
-.byte 32
-.byte 115
-.byte 105
-.byte 103
-.byte 110
-.byte 105
-.byte 102
-.byte 105
-.byte 99
-.byte 97
-.byte 110
-.byte 116
-.byte 32
-.byte 100
-.byte 105
-.byte 103
-.byte 105
-.byte 116
-.byte 115
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 44
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 105
-.byte 116
-.byte 115
-.byte 101
-.byte 108
-.byte 102
-.byte 44
-.byte 32
-.byte 116
-.byte 104
-.byte 105
-.byte 115
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 97
-.byte 32
-.byte 109
-.byte 105
-.byte 110
-.byte 111
-.byte 114
-.byte 32
-.byte 102
-.byte 108
-.byte 97
-.byte 119
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC113:
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 99
-.byte 97
-.byte 110
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 98
-.byte 101
-.byte 32
-.byte 99
-.byte 104
-.byte 97
-.byte 114
-.byte 97
-.byte 99
-.byte 116
-.byte 101
-.byte 114
-.byte 105
-.byte 122
-.byte 101
-.byte 100
-.byte 32
-.byte 98
-.byte 121
-.byte 32
-.byte 97
-.byte 110
-.byte 32
-.byte 73
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 32
-.byte 110
-.byte 117
-.byte 109
-.byte 98
-.byte 101
-.byte 114
-.byte 10
-.byte 0
-.align 1
-.LC100:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 102
-.byte 117
-.byte 122
-.byte 122
-.byte 121
-.byte 44
-.byte 88
-.byte 61
-.byte 49
-.byte 32
-.byte 98
-.byte 117
-.byte 116
-.byte 32
-.byte 88
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 1
-.LC96:
-.byte 40
-.byte 49
-.byte 45
-.byte 85
-.byte 49
-.byte 41
-.byte 45
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 60
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 70
-.byte 65
-.byte 76
-.byte 83
-.byte 69
-.byte 44
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 103
-.byte 46
-.byte 32
-.byte 102
-.byte 97
-.byte 105
-.byte 108
-.byte 115
-.byte 63
-.byte 0
-.align 4
-.LC94:
-.long 0
-.long 1076101120
-.align 1
-.LC89:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 103
-.byte 111
-.byte 111
-.byte 100
-.byte 32
-.byte 97
-.byte 115
-.byte 32
-.byte 50
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 48
-.byte 0
-.align 1
-.LC85:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 116
-.byte 111
-.byte 111
-.byte 32
-.byte 98
-.byte 105
-.byte 103
-.byte 58
-.byte 32
-.byte 114
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 111
-.byte 102
-.byte 102
-.byte 32
-.byte 112
-.byte 114
-.byte 111
-.byte 98
-.byte 108
-.byte 101
-.byte 109
-.byte 115
-.byte 0
-.align 1
-.LC83:
-.byte 77
-.byte 89
-.byte 83
-.byte 84
-.byte 69
-.byte 82
-.byte 89
-.byte 58
-.byte 32
-.byte 114
-.byte 101
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 101
-.byte 100
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC82:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 105
-.byte 114
-.byte 109
-.byte 101
-.byte 100
-.byte 46
-.byte 10
-.byte 0
-.align 4
-.LC79:
-.long 1202590843
-.long 1065646817
-.align 1
-.LC78:
-.byte 103
-.byte 101
-.byte 116
-.byte 115
-.byte 32
-.byte 98
-.byte 101
-.byte 116
-.byte 116
-.byte 101
-.byte 114
-.byte 32
-.byte 99
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC77:
-.byte 99
-.byte 111
-.byte 110
-.byte 102
-.byte 105
-.byte 114
-.byte 109
-.byte 115
-.byte 32
-.byte 99
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC62:
-.byte 82
-.byte 101
-.byte 99
-.byte 97
-.byte 108
-.byte 99
-.byte 117
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 114
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 112
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 10
-.byte 32
-.byte 0
-.align 1
-.LC61:
-.byte 67
-.byte 108
-.byte 111
-.byte 115
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 114
-.byte 101
-.byte 108
-.byte 97
-.byte 116
-.byte 105
-.byte 118
-.byte 101
-.byte 32
-.byte 115
-.byte 101
-.byte 112
-.byte 97
-.byte 114
-.byte 97
-.byte 116
-.byte 105
-.byte 111
-.byte 110
-.byte 32
-.byte 102
-.byte 111
-.byte 117
-.byte 110
-.byte 100
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 85
-.byte 49
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 46
-.byte 55
-.byte 101
-.byte 32
-.byte 46
-.byte 10
-.byte 10
-.byte 0
-.align 1
-.LC55:
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 102
-.byte 32
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC46:
-.byte 83
-.byte 101
-.byte 97
-.byte 114
-.byte 99
-.byte 104
-.byte 105
-.byte 110
-.byte 103
-.byte 32
-.byte 102
-.byte 111
-.byte 114
-.byte 32
-.byte 82
-.byte 97
-.byte 100
-.byte 105
-.byte 120
-.byte 32
-.byte 97
-.byte 110
-.byte 100
-.byte 32
-.byte 80
-.byte 114
-.byte 101
-.byte 99
-.byte 105
-.byte 115
-.byte 105
-.byte 111
-.byte 110
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC45:
-.byte 10
-.byte 0
-.align 1
-.LC44:
-.byte 45
-.byte 49
-.byte 44
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 44
-.byte 32
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 44
-.byte 32
-.byte 51
-.byte 44
-.byte 32
-.byte 52
-.byte 44
-.byte 32
-.byte 53
-.byte 44
-.byte 32
-.byte 57
-.byte 44
-.byte 32
-.byte 50
-.byte 55
-.byte 44
-.byte 32
-.byte 51
-.byte 50
-.byte 32
-.byte 38
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 32
-.byte 97
-.byte 114
-.byte 101
-.byte 32
-.byte 79
-.byte 46
-.byte 75
-.byte 46
-.byte 10
-.byte 0
-.align 1
-.LC39:
-.byte 53
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 52
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 51
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 56
-.byte 48
-.byte 44
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 52
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 54
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 50
-.byte 52
-.byte 48
-.byte 47
-.byte 53
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 52
-.byte 56
-.byte 0
-.align 1
-.LC35:
-.byte 57
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 51
-.byte 42
-.byte 51
-.byte 44
-.byte 32
-.byte 50
-.byte 55
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 57
-.byte 42
-.byte 51
-.byte 44
-.byte 32
-.byte 51
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 56
-.byte 42
-.byte 52
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 51
-.byte 50
-.byte 45
-.byte 50
-.byte 55
-.byte 45
-.byte 52
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 1
-.LC31:
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 43
-.byte 32
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 32
-.byte 43
-.byte 32
-.byte 49
-.byte 47
-.byte 50
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 1
-.LC27:
-.byte 45
-.byte 49
-.byte 43
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 43
-.byte 97
-.byte 98
-.byte 115
-.byte 40
-.byte 49
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 45
-.byte 49
-.byte 43
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 42
-.byte 40
-.byte 45
-.byte 49
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 1
-.LC23:
-.byte 51
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 50
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 52
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 51
-.byte 43
-.byte 49
-.byte 44
-.byte 32
-.byte 52
-.byte 43
-.byte 50
-.byte 42
-.byte 40
-.byte 45
-.byte 50
-.byte 41
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 52
-.byte 45
-.byte 51
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 0
-.align 4
-.LC21:
-.long -755914244
-.long 1062232653
-.align 1
-.LC20:
-.byte 67
-.byte 111
-.byte 109
-.byte 112
-.byte 97
-.byte 114
-.byte 105
-.byte 115
-.byte 111
-.byte 110
-.byte 32
-.byte 97
-.byte 108
-.byte 108
-.byte 101
-.byte 103
-.byte 101
-.byte 115
-.byte 32
-.byte 116
-.byte 104
-.byte 97
-.byte 116
-.byte 32
-.byte 45
-.byte 48
-.byte 46
-.byte 48
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 78
-.byte 111
-.byte 110
-.byte 45
-.byte 122
-.byte 101
-.byte 114
-.byte 111
-.byte 33
-.byte 10
-.byte 0
-.align 1
-.LC15:
-.byte 48
-.byte 43
-.byte 48
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 45
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 49
-.byte 32
-.byte 60
-.byte 61
-.byte 32
-.byte 48
-.byte 44
-.byte 32
-.byte 111
-.byte 114
-.byte 32
-.byte 49
-.byte 43
-.byte 49
-.byte 32
-.byte 33
-.byte 61
-.byte 32
-.byte 50
-.byte 0
-.align 1
-.LC13:
-.byte 80
-.byte 114
-.byte 111
-.byte 103
-.byte 114
-.byte 97
-.byte 109
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 110
-.byte 111
-.byte 119
-.byte 32
-.byte 82
-.byte 85
-.byte 78
-.byte 78
-.byte 73
-.byte 78
-.byte 71
-.byte 32
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 115
-.byte 32
-.byte 111
-.byte 110
-.byte 32
-.byte 115
-.byte 109
-.byte 97
-.byte 108
-.byte 108
-.byte 32
-.byte 105
-.byte 110
-.byte 116
-.byte 101
-.byte 103
-.byte 101
-.byte 114
-.byte 115
-.byte 58
-.byte 10
-.byte 0
-.align 4
-.LC9:
-.long 0
-.long 1072693248
-.align 4
-.LC8:
-.long 0
-.long 0
-.align 1
-.LC3:
-.byte 10
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 70
-.byte 76
-.byte 79
-.byte 65
-.byte 84
-.byte 73
-.byte 78
-.byte 71
-.byte 45
-.byte 80
-.byte 79
-.byte 73
-.byte 78
-.byte 84
-.byte 32
-.byte 69
-.byte 82
-.byte 82
-.byte 79
-.byte 82
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 32
-.byte 42
-.byte 10
-.byte 0
-.text
-.ident "LCC: 4.1"
+.data
+.globl Zero
+.align 4
+.type Zero,@object
+.size Zero,8
+Zero:
+.long 0
+.long 0
+.globl Half
+.align 4
+.type Half,@object
+.size Half,8
+Half:
+.long 0
+.long 1071644672
+.globl One
+.align 4
+.type One,@object
+.size One,8
+One:
+.long 0
+.long 1072693248
+.globl Two
+.align 4
+.type Two,@object
+.size Two,8
+Two:
+.long 0
+.long 1073741824
+.globl Three
+.align 4
+.type Three,@object
+.size Three,8
+Three:
+.long 0
+.long 1074266112
+.globl Four
+.align 4
+.type Four,@object
+.size Four,8
+Four:
+.long 0
+.long 1074790400
+.globl Five
+.align 4
+.type Five,@object
+.size Five,8
+Five:
+.long 0
+.long 1075052544
+.globl Eight
+.align 4
+.type Eight,@object
+.size Eight,8
+Eight:
+.long 0
+.long 1075838976
+.globl Nine
+.align 4
+.type Nine,@object
+.size Nine,8
+Nine:
+.long 0
+.long 1075970048
+.globl TwentySeven
+.align 4
+.type TwentySeven,@object
+.size TwentySeven,8
+TwentySeven:
+.long 0
+.long 1077608448
+.globl ThirtyTwo
+.align 4
+.type ThirtyTwo,@object
+.size ThirtyTwo,8
+ThirtyTwo:
+.long 0
+.long 1077936128
+.globl TwoForty
+.align 4
+.type TwoForty,@object
+.size TwoForty,8
+TwoForty:
+.long 0
+.long 1080950784
+.globl MinusOne
+.align 4
+.type MinusOne,@object
+.size MinusOne,8
+MinusOne:
+.long 0
+.long -1074790400
+.globl OneAndHalf
+.align 4
+.type OneAndHalf,@object
+.size OneAndHalf,8
+OneAndHalf:
+.long 0
+.long 1073217536
+.globl NoTrials
+.align 4
+.type NoTrials,@object
+.size NoTrials,4
+NoTrials:
+.long 20
+.globl sigfpe
+.text
+.align 16
+.type sigfpe,@function
+sigfpe:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+incl fpecount
+pushl $.LC3
+call printf
+addl $4,%esp
+pushl $_IO_stdout_
+call fflush
+addl $4,%esp
+movl sigsave,%edi
+cmpl $0,%edi
+je .LC4
+pushl sigsave
+pushl $8
+call signal
+addl $8,%esp
+movl $0,sigsave
+pushl $1
+pushl $ovfl_buf
+call longjmp
+addl $8,%esp
+.LC4:
+call abort
+.LC2:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf6:
+.size sigfpe,.Lf6-sigfpe
+.data
+.align 4
+.type msg.758,@object
+msg.758:
+.long .LC759
+.long .LC760
+.long .LC761
+.long .LC762
+.size msg.758,16
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $1684,%esp
+fldl .LC8
+fstpl Zero
+fldl .LC9
+fstpl One
+fldl One
+fstpl -8(%ebp)
+fldl -8(%ebp)
+faddl -8(%ebp)
+fstpl Two
+fldl Two
+fstpl -16(%ebp)
+fldl -16(%ebp)
+faddl -8(%ebp)
+fstpl Three
+fldl Three
+fstpl -24(%ebp)
+fldl -24(%ebp)
+faddl -8(%ebp)
+fstpl Four
+fldl Four
+fstpl -32(%ebp)
+fldl -32(%ebp)
+faddl -8(%ebp)
+fstpl Five
+fldl -32(%ebp)
+faddl -32(%ebp)
+fstpl Eight
+fldl -24(%ebp)
+fmull -24(%ebp)
+fstpl Nine
+fldl Nine
+fmull -24(%ebp)
+fstpl TwentySeven
+fldl -32(%ebp)
+fmull Eight
+fstpl ThirtyTwo
+fldl -32(%ebp)
+fmull Five
+fmull -24(%ebp)
+fmull -32(%ebp)
+fstpl TwoForty
+fldl -8(%ebp)
+fchs
+fstpl MinusOne
+fldl -8(%ebp)
+fdivl -16(%ebp)
+fstpl Half
+fldl -8(%ebp)
+faddl Half
+fstpl OneAndHalf
+movl $0,ErrCnt
+movl $0,ErrCnt+4
+movl $0,ErrCnt+8
+movl $0,ErrCnt+12
+movl $1,PageNo
+movl $0,Milestone
+pushl $sigfpe
+pushl $8
+call signal
+addl $8,%esp
+call Instructions
+call Pause
+call Heading
+call Pause
+call Characteristics
+call Pause
+call History
+call Pause
+movl $7,Milestone
+pushl $.LC13
+call printf
+addl $4,%esp
+pushl $.LC15
+fldl Zero
+faddl Zero
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC16
+fldl One
+fsubl One
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC16
+fldl Zero
+fcompl One
+fstsw %ax
+sahf
+jae .LC16
+fldl One
+faddl One
+fldl Two
+fcompp
+fstsw %ax
+sahf
+jne .LC16
+movl $1,-36(%ebp)
+jmp .LC17
+.LC16:
+movl $0,-36(%ebp)
+.LC17:
+pushl -36(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl Zero
+fchs
+fstpl Z
+fldl .LC8
+fcompl Z
+fstsw %ax
+sahf
+je .LC18
+incl ErrCnt
+pushl $.LC20
+call printf
+addl $4,%esp
+fldl .LC21
+fstpl U1
+fldl .LC9
+fstpl Radix
+call TstPtUf
+.LC18:
+pushl $.LC23
+fldl Two
+faddl One
+fcompl Three
+fstsw %ax
+sahf
+jne .LC24
+fldl Three
+faddl One
+fcompl Four
+fstsw %ax
+sahf
+jne .LC24
+fldl Four
+fldl Two
+fldl Two
+fchs
+fmulp %st(1),%st
+faddp %st(1),%st
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC24
+fldl Four
+fsubl Three
+fsubl One
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC24
+movl $1,-56(%ebp)
+jmp .LC25
+.LC24:
+movl $0,-56(%ebp)
+.LC25:
+pushl -56(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl .LC8
+fsubl One
+fcompl MinusOne
+fstsw %ax
+sahf
+jne .LC28
+fldl MinusOne
+faddl One
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC28
+fldl One
+faddl MinusOne
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC28
+fldl One
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -132(%ebp)
+fldl MinusOne
+faddl -132(%ebp)
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC28
+fldl MinusOne
+fldl MinusOne
+fmull MinusOne
+faddp %st(1),%st
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC28
+movl $1,-100(%ebp)
+jmp .LC29
+.LC28:
+movl $0,-100(%ebp)
+.LC29:
+pushl $.LC27
+pushl -100(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+pushl $.LC31
+fldl Half
+faddl MinusOne
+faddl Half
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC32
+movl $1,-152(%ebp)
+jmp .LC33
+.LC32:
+movl $0,-152(%ebp)
+.LC33:
+pushl -152(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+movl $10,Milestone
+pushl $.LC35
+fldl Three
+fmull Three
+fcompl Nine
+fstsw %ax
+sahf
+jne .LC36
+fldl Nine
+fmull Three
+fcompl TwentySeven
+fstsw %ax
+sahf
+jne .LC36
+fldl Four
+faddl Four
+fcompl Eight
+fstsw %ax
+sahf
+jne .LC36
+fldl Eight
+fmull Four
+fcompl ThirtyTwo
+fstsw %ax
+sahf
+jne .LC36
+fldl ThirtyTwo
+fsubl TwentySeven
+fsubl Four
+fsubl One
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC36
+movl $1,-164(%ebp)
+jmp .LC37
+.LC36:
+movl $0,-164(%ebp)
+.LC37:
+pushl -164(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+pushl $.LC39
+fldl Four
+faddl One
+fcompl Five
+fstsw %ax
+sahf
+jne .LC40
+fldl Four
+fmull Five
+fmull Three
+fmull Four
+fcompl TwoForty
+fstsw %ax
+sahf
+jne .LC40
+fldl TwoForty
+fdivl Three
+fldl Four
+fmull Four
+fmull Five
+fsubp %st(1),%st
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC40
+fldl TwoForty
+fdivl Four
+fldl Five
+fmull Three
+fmull Four
+fsubp %st(1),%st
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC40
+fldl TwoForty
+fdivl Five
+fldl Four
+fmull Three
+fmull Four
+fsubp %st(1),%st
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC40
+movl $1,-216(%ebp)
+jmp .LC41
+.LC40:
+movl $0,-216(%ebp)
+.LC41:
+pushl -216(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+cmpl $0,ErrCnt
+jne .LC42
+pushl $.LC44
+call printf
+addl $4,%esp
+pushl $.LC45
+call printf
+addl $4,%esp
+.LC42:
+pushl $.LC46
+call printf
+addl $4,%esp
+fldl One
+fstpl W
+.LC47:
+fldl W
+fstpl -264(%ebp)
+fldl -264(%ebp)
+faddl -264(%ebp)
+fstpl W
+fldl W
+fstpl -272(%ebp)
+fldl -272(%ebp)
+faddl One
+fstpl Y
+fldl Y
+fsubl -272(%ebp)
+fstpl Z
+fldl Z
+fsubl One
+fstpl Y
+.LC48:
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -264(%ebp)
+fldl MinusOne
+faddl -264(%ebp)
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+ja .LC47
+fldl Zero
+fstpl Precision
+fldl One
+fstpl Y
+.LC50:
+fldl Y
+fstpl -280(%ebp)
+fldl W
+faddl -280(%ebp)
+fstpl Radix
+fldl -280(%ebp)
+faddl -280(%ebp)
+fstpl Y
+fldl Radix
+fsubl W
+fstpl Radix
+.LC51:
+fldl Zero
+fcompl Radix
+fstsw %ax
+sahf
+je .LC50
+fldl Two
+fcompl Radix
+fstsw %ax
+sahf
+jbe .LC53
+fldl One
+fstpl Radix
+.LC53:
+fldl Radix
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC55
+call printf
+addl $12,%esp
+fldl .LC9
+fcompl Radix
+fstsw %ax
+sahf
+je .LC56
+fldl One
+fstpl W
+.LC58:
+fldl Precision
+faddl One
+fstpl Precision
+fldl W
+fmull Radix
+fstpl W
+fldl W
+faddl One
+fstpl Y
+.LC59:
+fldl Y
+fsubl W
+fldl One
+fcompp
+fstsw %ax
+sahf
+je .LC58
+.LC56:
+fldl One
+fdivl W
+fstpl U1
+fldl U1
+fstpl -272(%ebp)
+fldl Radix
+fmull -272(%ebp)
+fstpl U2
+fldl -272(%ebp)
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC61
+call printf
+addl $12,%esp
+pushl $.LC62
+call printf
+addl $4,%esp
+fldl Radix
+fstpl E0
+fldl U1
+fstpl E1
+fldl U2
+fstpl E9
+fldl Precision
+fstpl E3
+fldl Four
+fdivl Three
+fstpl X
+fldl X
+fsubl One
+fstpl Third
+fldl Third
+fstpl -280(%ebp)
+fldl Half
+fsubl -280(%ebp)
+fstpl F6
+fldl F6
+fstpl -288(%ebp)
+fldl -288(%ebp)
+faddl -288(%ebp)
+fstpl X
+fldl X
+fsubl -280(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -296(%ebp)
+fldl -296(%ebp)
+fstpl X
+fldl U2
+fcompl X
+fstsw %ax
+sahf
+jbe .LC63
+fldl U2
+fstpl X
+.LC63:
+.LC65:
+fldl X
+fstpl U2
+fldl U2
+fstpl -304(%ebp)
+fldl Half
+fmull -304(%ebp)
+fldl ThirtyTwo
+fmull -304(%ebp)
+fmull -304(%ebp)
+faddp %st(1),%st
+fstpl Y
+fldl One
+faddl Y
+fstpl Y
+fldl Y
+fsubl One
+fstpl X
+.LC66:
+fldl X
+fcompl U2
+fstsw %ax
+sahf
+jae .LC68
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jb .LC65
+.LC68:
+fldl Two
+fdivl Three
+fstpl X
+fldl X
+fsubl Half
+fstpl F6
+fldl F6
+fstpl -320(%ebp)
+fldl -320(%ebp)
+faddl -320(%ebp)
+fstpl Third
+fldl Third
+fsubl Half
+fstpl X
+fldl X
+faddl -320(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -328(%ebp)
+fldl -328(%ebp)
+fstpl X
+fldl U1
+fcompl X
+fstsw %ax
+sahf
+jbe .LC69
+fldl U1
+fstpl X
+.LC69:
+.LC71:
+fldl X
+fstpl U1
+fldl U1
+fstpl -344(%ebp)
+fldl Half
+fmull -344(%ebp)
+fldl ThirtyTwo
+fmull -344(%ebp)
+fmull -344(%ebp)
+faddp %st(1),%st
+fstpl Y
+fldl Half
+fsubl Y
+fstpl Y
+fldl Half
+faddl Y
+fstpl X
+fldl Half
+fsubl X
+fstpl Y
+fldl Half
+faddl Y
+fstpl X
+.LC72:
+fldl X
+fcompl U1
+fstsw %ax
+sahf
+jae .LC74
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jb .LC71
+.LC74:
+fldl E1
+fcompl U1
+fstsw %ax
+sahf
+jne .LC75
+pushl $.LC77
+call printf
+addl $4,%esp
+jmp .LC76
+.LC75:
+fldl U1
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC78
+call printf
+addl $12,%esp
+.LC76:
+fldl One
+fdivl U1
+fstpl W
+fldl Half
+fsubl U1
+faddl Half
+fstpl F9
+fldl U2
+fdivl U1
+faddl .LC79
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -360(%ebp)
+fldl -360(%ebp)
+fstpl Radix
+fldl E0
+fcompl Radix
+fstsw %ax
+sahf
+jne .LC80
+pushl $.LC82
+call printf
+addl $4,%esp
+jmp .LC81
+.LC80:
+fldl Radix
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC83
+call printf
+addl $12,%esp
+.LC81:
+pushl $.LC85
+fldl Eight
+faddl Eight
+fcompl Radix
+fstsw %ax
+sahf
+jb .LC86
+movl $1,-364(%ebp)
+jmp .LC87
+.LC86:
+movl $0,-364(%ebp)
+.LC87:
+pushl -364(%ebp)
+pushl $2
+call TstCond
+addl $12,%esp
+pushl $.LC89
+fldl Two
+fcompl Radix
+fstsw %ax
+sahf
+je .LC93
+fldl .LC94
+fcompl Radix
+fstsw %ax
+sahf
+je .LC93
+fldl One
+fcompl Radix
+fstsw %ax
+sahf
+jne .LC90
+.LC93:
+movl $1,-376(%ebp)
+jmp .LC91
+.LC90:
+movl $0,-376(%ebp)
+.LC91:
+pushl -376(%ebp)
+pushl $3
+call TstCond
+addl $12,%esp
+movl $20,Milestone
+pushl $.LC96
+fldl F9
+fsubl Half
+fldl Half
+fcompp
+fstsw %ax
+sahf
+jbe .LC97
+movl $1,-388(%ebp)
+jmp .LC98
+.LC97:
+movl $0,-388(%ebp)
+.LC98:
+pushl -388(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl F9
+fstpl X
+movl $1,I
+fldl X
+fsubl Half
+fstpl Y
+fldl Y
+fsubl Half
+fstpl Z
+pushl $.LC100
+fldl One
+fcompl X
+fstsw %ax
+sahf
+jne .LC103
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jne .LC101
+.LC103:
+movl $1,-400(%ebp)
+jmp .LC102
+.LC101:
+movl $0,-400(%ebp)
+.LC102:
+pushl -400(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl One
+faddl U2
+fstpl X
+movl $0,I
+movl $25,Milestone
+fldl Radix
+fsubl One
+fstpl BMinusU2
+fldl BMinusU2
+fsubl U2
+faddl One
+fstpl BMinusU2
+fldl One
+fcompl Radix
+fstsw %ax
+sahf
+je .LC104
+fldl U1
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -440(%ebp)
+fldl Radix
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -448(%ebp)
+fldl TwoForty
+fchs
+fmull -440(%ebp)
+fdivl -448(%ebp)
+fstpl X
+fldl Half
+faddl X
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -456(%ebp)
+fldl -456(%ebp)
+fstpl Y
+fldl X
+fsubl Y
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -464(%ebp)
+fldl -464(%ebp)
+fmull Four
+fldl One
+fcompp
+fstsw %ax
+sahf
+jbe .LC106
+fldl Y
+fstpl X
+.LC106:
+fldl X
+fdivl TwoForty
+fstpl Precision
+fldl Half
+faddl Precision
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -472(%ebp)
+fldl -472(%ebp)
+fstpl Y
+fldl Precision
+fsubl Y
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -480(%ebp)
+fldl -480(%ebp)
+fmull TwoForty
+fldl Half
+fcompp
+fstsw %ax
+sahf
+jbe .LC108
+fldl Y
+fstpl Precision
+.LC108:
+.LC104:
+fldl Precision
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -448(%ebp)
+fldl -448(%ebp)
+fcompl Precision
+fstsw %ax
+sahf
+jne .LC112
+fldl One
+fcompl Radix
+fstsw %ax
+sahf
+jne .LC110
+.LC112:
+pushl $.LC113
+call printf
+addl $4,%esp
+pushl $.LC114
+call printf
+addl $4,%esp
+.LC110:
+fldl One
+fcompl Radix
+fstsw %ax
+sahf
+jne .LC115
+pushl $.LC117
+call printf
+addl $4,%esp
+jmp .LC116
+.LC115:
+fldl Precision
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC118
+call printf
+addl $12,%esp
+.LC116:
+pushl $.LC120
+fldl U2
+fmull Nine
+fmull Nine
+fmull TwoForty
+fldl One
+fcompp
+fstsw %ax
+sahf
+jbe .LC121
+movl $1,-452(%ebp)
+jmp .LC122
+.LC121:
+movl $0,-452(%ebp)
+.LC122:
+pushl -452(%ebp)
+pushl $1
+call TstCond
+addl $12,%esp
+movl $30,Milestone
+fldl One
+fdivl Four
+fstpl -492(%ebp)
+fldl Four
+fdivl Three
+fsubl One
+fsubl -492(%ebp)
+fmull Three
+fsubl -492(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -500(%ebp)
+fldl -500(%ebp)
+fstpl X
+.LC123:
+fldl X
+fstpl Z2
+fldl Z2
+fstpl -516(%ebp)
+fldl One
+fldl Half
+fmull -516(%ebp)
+fldl ThirtyTwo
+fmull -516(%ebp)
+fmull -516(%ebp)
+faddp %st(1),%st
+faddp %st(1),%st
+fsubl One
+fstpl X
+.LC124:
+fldl X
+fcompl Z2
+fstsw %ax
+sahf
+jae .LC126
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jb .LC123
+.LC126:
+fldl Three
+fdivl Four
+fldl Two
+fdivl Three
+fsubp %st(1),%st
+fmull Three
+fldl One
+fdivl Four
+fsubp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -532(%ebp)
+fldl -532(%ebp)
+fstpl Z
+fldl -532(%ebp)
+fstpl Y
+fldl -532(%ebp)
+fstpl X
+.LC127:
+fldl Z
+fstpl Z1
+fldl One
+fdivl Two
+fstpl -540(%ebp)
+fldl Z1
+fstpl -548(%ebp)
+fldl -540(%ebp)
+fldl -540(%ebp)
+fldl Half
+fmull -548(%ebp)
+fldl ThirtyTwo
+fmull -548(%ebp)
+fmull -548(%ebp)
+faddp %st(1),%st
+fsubp %st(1),%st
+faddl -540(%ebp)
+fsubp %st(1),%st
+faddl -540(%ebp)
+fstpl Z
+.LC128:
+fldl Z
+fcompl Z1
+fstsw %ax
+sahf
+jae .LC130
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jb .LC127
+.LC130:
+.LC131:
+.LC134:
+fldl Y
+fstpl Y1
+fldl Y1
+fstpl -556(%ebp)
+fldl Half
+fldl Half
+fldl Half
+fmull -556(%ebp)
+fldl ThirtyTwo
+fmull -556(%ebp)
+fmull -556(%ebp)
+faddp %st(1),%st
+fsubp %st(1),%st
+faddl Half
+fsubp %st(1),%st
+faddl Half
+fstpl Y
+.LC135:
+fldl Y
+fcompl Y1
+fstsw %ax
+sahf
+jae .LC137
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jb .LC134
+.LC137:
+fldl X
+fstpl X1
+fldl X1
+fstpl -556(%ebp)
+fldl Half
+fmull -556(%ebp)
+fldl ThirtyTwo
+fmull -556(%ebp)
+fmull -556(%ebp)
+faddp %st(1),%st
+fsubl F9
+faddl F9
+fstpl X
+.LC132:
+fldl X
+fcompl X1
+fstsw %ax
+sahf
+jae .LC138
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jb .LC131
+.LC138:
+fldl Y1
+fcompl X1
+fstsw %ax
+sahf
+jne .LC141
+fldl Z1
+fcompl X1
+fstsw %ax
+sahf
+je .LC139
+.LC141:
+pushl $.LC142
+pushl $1
+call BadCond
+addl $8,%esp
+fldl Z1
+subl $8,%esp
+fstpl (%esp)
+fldl Y1
+subl $8,%esp
+fstpl (%esp)
+fldl X1
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC143
+call printf
+addl $28,%esp
+pushl $.LC144
+call printf
+addl $4,%esp
+pushl $.LC145
+call printf
+addl $4,%esp
+pushl $.LC146
+call notify
+addl $4,%esp
+fldl U1
+fcompl X1
+fstsw %ax
+sahf
+je .LC150
+fldl U1
+fcompl Y1
+fstsw %ax
+sahf
+je .LC150
+fldl U1
+fcompl Z1
+fstsw %ax
+sahf
+jne .LC140
+.LC150:
+pushl $.LC151
+call printf
+addl $4,%esp
+jmp .LC140
+.LC139:
+fldl U1
+fcompl Z1
+fstsw %ax
+sahf
+jne .LC154
+fldl U2
+fcompl Z2
+fstsw %ax
+sahf
+je .LC152
+.LC154:
+fldl U1
+fcompl Z1
+fstsw %ax
+sahf
+jbe .LC157
+fldl U2
+fcompl Z2
+fstsw %ax
+sahf
+ja .LC155
+.LC157:
+pushl $.LC158
+pushl $0
+call BadCond
+addl $8,%esp
+pushl $.LC159
+call notify
+addl $4,%esp
+fldl Z1
+fsubl U1
+subl $8,%esp
+fstpl (%esp)
+fldl U1
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC160
+call printf
+addl $20,%esp
+fldl Z2
+fsubl U2
+subl $8,%esp
+fstpl (%esp)
+fldl U2
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC161
+call printf
+addl $20,%esp
+jmp .LC156
+.LC155:
+fldl Zero
+fcompl Z1
+fstsw %ax
+sahf
+jae .LC164
+fldl Zero
+fcompl Z2
+fstsw %ax
+sahf
+jb .LC162
+.LC164:
+fldl Radix
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC165
+call printf
+addl $12,%esp
+pushl $.LC166
+call printf
+addl $4,%esp
+fldl Z2
+subl $8,%esp
+fstpl (%esp)
+fldl Z1
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC167
+call printf
+addl $20,%esp
+pushl $.LC168
+call notify
+addl $4,%esp
+.LC162:
+fldl Z2
+fcompl Z1
+fstsw %ax
+sahf
+jne .LC171
+fldl Zero
+fcompl Z1
+fstsw %ax
+sahf
+jae .LC169
+.LC171:
+fldl Z1
+fdivl U1
+fstpl X
+fldl Z2
+fdivl U2
+fstpl Y
+fldl X
+fcompl Y
+fstsw %ax
+sahf
+jae .LC172
+fldl Y
+fstpl X
+.LC172:
+fldl X
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -580(%ebp)
+fldl -580(%ebp)
+fchs
+fstpl Q
+pushl $.LC174
+call printf
+addl $4,%esp
+fldl Radix
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -588(%ebp)
+fldl Q
+fdivl -588(%ebp)
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC175
+call printf
+addl $12,%esp
+fldl .LC94
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -596(%ebp)
+fldl Q
+fdivl -596(%ebp)
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC176
+call printf
+addl $12,%esp
+.LC169:
+pushl $.LC151
+call printf
+addl $4,%esp
+.LC156:
+.LC152:
+.LC140:
+call Pause
+movl $35,Milestone
+fldl Two
+fcompl Radix
+fstsw %ax
+sahf
+ja .LC177
+fldl W
+fldl Radix
+fmull Radix
+fdivp %st(1),%st
+fstpl X
+fldl X
+fstpl -576(%ebp)
+fldl -576(%ebp)
+faddl One
+fstpl Y
+fldl Y
+fsubl -576(%ebp)
+fstpl Z
+fldl Z
+fstpl -584(%ebp)
+fldl -584(%ebp)
+faddl U2
+fstpl T
+fldl T
+fsubl -584(%ebp)
+fstpl X
+pushl $.LC180
+fldl U2
+fcompl X
+fstsw %ax
+sahf
+jne .LC181
+movl $1,-560(%ebp)
+jmp .LC182
+.LC181:
+movl $0,-560(%ebp)
+.LC182:
+pushl -560(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl U2
+fcompl X
+fstsw %ax
+sahf
+jne .LC183
+pushl $.LC185
+call printf
+addl $4,%esp
+.LC183:
+.LC177:
+pushl $.LC186
+call printf
+addl $4,%esp
+fldl F9
+fmull One
+fstpl Y
+fldl One
+fmull F9
+fstpl Z
+fldl F9
+fsubl Half
+fstpl X
+fldl X
+fstpl -588(%ebp)
+fldl Y
+fsubl Half
+fsubl -588(%ebp)
+fstpl Y
+fldl Z
+fsubl Half
+fsubl -588(%ebp)
+fstpl Z
+fldl One
+faddl U2
+fstpl X
+fldl X
+fstpl -604(%ebp)
+fldl -604(%ebp)
+fmull Radix
+fstpl T
+fldl Radix
+fmull -604(%ebp)
+fstpl R
+fldl T
+fsubl Radix
+fstpl X
+fldl Radix
+fmull U2
+fstpl -620(%ebp)
+fldl X
+fsubl -620(%ebp)
+fstpl X
+fldl R
+fsubl Radix
+fstpl T
+fldl T
+fsubl -620(%ebp)
+fstpl T
+fldl Radix
+fsubl One
+fstpl -628(%ebp)
+fldl X
+fmull -628(%ebp)
+fstpl X
+fldl T
+fmull -628(%ebp)
+fstpl T
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC187
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC187
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jne .LC187
+fldl Zero
+fcompl T
+fstsw %ax
+sahf
+jne .LC187
+movl $1,GMult
+jmp .LC188
+.LC187:
+movl $0,GMult
+pushl $.LC189
+pushl $0
+pushl $1
+call TstCond
+addl $12,%esp
+.LC188:
+fldl Radix
+fmull U2
+fstpl Z
+fldl Z
+fstpl -648(%ebp)
+fldl One
+faddl -648(%ebp)
+fstpl X
+fldl X
+fstpl -656(%ebp)
+fldl -656(%ebp)
+faddl -648(%ebp)
+fldl -656(%ebp)
+fmull -656(%ebp)
+fsubp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -664(%ebp)
+fldl -664(%ebp)
+fsubl U2
+fstpl Y
+fldl One
+fsubl U2
+fstpl X
+fldl X
+fstpl -680(%ebp)
+fldl -680(%ebp)
+fsubl U2
+fldl -680(%ebp)
+fmull -680(%ebp)
+fsubp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -688(%ebp)
+fldl -688(%ebp)
+fsubl U1
+fstpl Z
+pushl $.LC191
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jb .LC192
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jb .LC192
+movl $1,-640(%ebp)
+jmp .LC193
+.LC192:
+movl $0,-640(%ebp)
+.LC193:
+pushl -640(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl One
+fsubl U2
+fstpl Y
+fldl One
+faddl U2
+fstpl X
+fldl One
+fdivl Y
+fstpl Z
+fldl Z
+fsubl X
+fstpl Y
+fldl One
+fdivl Three
+fstpl X
+fldl Three
+fdivl Nine
+fstpl Z
+fldl Z
+fstpl -740(%ebp)
+fldl X
+fsubl -740(%ebp)
+fstpl X
+fldl Nine
+fdivl TwentySeven
+fstpl T
+fldl -740(%ebp)
+fsubl T
+fstpl Z
+pushl $.LC195
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC196
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC196
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jne .LC196
+movl $1,-700(%ebp)
+jmp .LC197
+.LC196:
+movl $0,-700(%ebp)
+.LC197:
+pushl -700(%ebp)
+pushl $2
+call TstCond
+addl $12,%esp
+fldl F9
+fdivl One
+fstpl Y
+fldl F9
+fsubl Half
+fstpl X
+fldl Y
+fsubl Half
+fsubl X
+fstpl Y
+fldl One
+faddl U2
+fstpl X
+fldl X
+fstpl -780(%ebp)
+fldl -780(%ebp)
+fdivl One
+fstpl T
+fldl T
+fsubl -780(%ebp)
+fstpl X
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC198
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC198
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jne .LC198
+movl $1,GDiv
+jmp .LC199
+.LC198:
+movl $0,GDiv
+pushl $.LC200
+pushl $0
+pushl $1
+call TstCond
+addl $12,%esp
+.LC199:
+fldl One
+fldl One
+faddl U2
+fdivp %st(1),%st
+fstpl X
+fldl X
+fsubl Half
+fsubl Half
+fstpl Y
+pushl $.LC202
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jbe .LC203
+movl $1,-792(%ebp)
+jmp .LC204
+.LC203:
+movl $0,-792(%ebp)
+.LC204:
+pushl -792(%ebp)
+pushl $1
+call TstCond
+addl $12,%esp
+fldl One
+fsubl U2
+fstpl X
+fldl One
+fldl Radix
+fmull U2
+faddp %st(1),%st
+fstpl Y
+fldl X
+fstpl -844(%ebp)
+fldl -844(%ebp)
+fmull Radix
+fstpl Z
+fldl Y
+fstpl -852(%ebp)
+fldl -852(%ebp)
+fmull Radix
+fstpl T
+fldl Z
+fdivl Radix
+fstpl R
+fldl T
+fdivl Radix
+fstpl StickyBit
+fldl R
+fsubl -844(%ebp)
+fstpl X
+fldl StickyBit
+fsubl -852(%ebp)
+fstpl Y
+pushl $.LC206
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC207
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC207
+movl $1,-812(%ebp)
+jmp .LC208
+.LC207:
+movl $0,-812(%ebp)
+.LC208:
+pushl -812(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl One
+fsubl U1
+fstpl Y
+fldl One
+fsubl F9
+fstpl X
+fldl One
+fsubl Y
+fstpl Y
+fldl Radix
+fsubl U2
+fstpl T
+fldl Radix
+fsubl BMinusU2
+fstpl Z
+fldl Radix
+fsubl T
+fstpl T
+fldl U1
+fcompl X
+fstsw %ax
+sahf
+jne .LC209
+fldl U1
+fcompl Y
+fstsw %ax
+sahf
+jne .LC209
+fldl U2
+fcompl Z
+fstsw %ax
+sahf
+jne .LC209
+fldl U2
+fcompl T
+fstsw %ax
+sahf
+jne .LC209
+movl $1,GAddSub
+jmp .LC210
+.LC209:
+movl $0,GAddSub
+pushl $.LC211
+pushl $0
+pushl $1
+call TstCond
+addl $12,%esp
+.LC210:
+fldl One
+fcompl F9
+fstsw %ax
+sahf
+je .LC212
+fldl F9
+fsubl One
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+ja .LC212
+pushl $.LC214
+pushl $1
+call BadCond
+addl $8,%esp
+pushl $.LC215
+call printf
+addl $4,%esp
+pushl $.LC216
+call printf
+addl $4,%esp
+pushl $.LC217
+call printf
+addl $4,%esp
+.LC212:
+cmpl $1,GMult
+jne .LC218
+cmpl $1,GDiv
+jne .LC218
+cmpl $1,GAddSub
+jne .LC218
+pushl $.LC220
+call printf
+addl $4,%esp
+.LC218:
+movl $40,Milestone
+call Pause
+pushl $.LC221
+call printf
+addl $4,%esp
+movl $0,RMult
+movl $0,RDiv
+movl $0,RAddSub
+fldl Radix
+fdivl Two
+fstpl RadixD2
+fldl Two
+fstpl A1
+movl $0,Done
+.LC222:
+fldl Radix
+fstpl AInvrse
+.LC225:
+fldl AInvrse
+fstpl -924(%ebp)
+fldl -924(%ebp)
+fstpl X
+fldl -924(%ebp)
+fdivl A1
+fstpl AInvrse
+.LC226:
+fldl AInvrse
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -924(%ebp)
+fldl AInvrse
+fcompl -924(%ebp)
+fstsw %ax
+sahf
+je .LC225
+fldl One
+fcompl X
+fstsw %ax
+sahf
+je .LC231
+fldl Three
+fcompl A1
+fstsw %ax
+sahf
+jae .LC229
+.LC231:
+movl $1,-928(%ebp)
+jmp .LC230
+.LC229:
+movl $0,-928(%ebp)
+.LC230:
+movl -928(%ebp),%edi
+movl %edi,Done
+cmpl $0,Done
+jne .LC232
+fldl Nine
+faddl One
+fstpl A1
+.LC232:
+.LC223:
+cmpl $0,Done
+je .LC222
+fldl One
+fcompl X
+fstsw %ax
+sahf
+jne .LC234
+fldl Radix
+fstpl A1
+.LC234:
+fldl One
+fdivl A1
+fstpl AInvrse
+fldl A1
+fstpl X
+fldl AInvrse
+fstpl Y
+movl $0,Done
+.LC236:
+fldl X
+fmull Y
+fsubl Half
+fstpl Z
+pushl $.LC240
+fldl Half
+fcompl Z
+fstsw %ax
+sahf
+jne .LC241
+movl $1,-928(%ebp)
+jmp .LC242
+.LC241:
+movl $0,-928(%ebp)
+.LC242:
+pushl -928(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl Radix
+fcompl X
+fstsw %ax
+sahf
+jne .LC244
+movl $1,-940(%ebp)
+jmp .LC245
+.LC244:
+movl $0,-940(%ebp)
+.LC245:
+movl -940(%ebp),%edi
+movl %edi,Done
+fldl Radix
+fstpl X
+fldl One
+fdivl X
+fstpl Y
+.LC237:
+cmpl $0,Done
+je .LC236
+fldl One
+faddl U2
+fstpl Y2
+fldl One
+fsubl U2
+fstpl Y1
+fldl OneAndHalf
+fsubl U2
+fstpl X
+fldl OneAndHalf
+faddl U2
+fstpl Y
+fldl X
+fstpl -956(%ebp)
+fldl Y2
+fstpl -964(%ebp)
+fldl -956(%ebp)
+fsubl U2
+fmull -964(%ebp)
+fstpl Z
+fldl Y
+fstpl -972(%ebp)
+fldl Y1
+fstpl -980(%ebp)
+fldl -972(%ebp)
+fmull -980(%ebp)
+fstpl T
+fldl Z
+fsubl -956(%ebp)
+fstpl Z
+fldl T
+fsubl -956(%ebp)
+fstpl T
+fldl -956(%ebp)
+fmull -964(%ebp)
+fstpl X
+fldl -972(%ebp)
+faddl U2
+fmull -980(%ebp)
+fstpl Y
+fldl X
+fsubl OneAndHalf
+fstpl X
+fldl Y
+fsubl OneAndHalf
+fstpl Y
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC246
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC246
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jne .LC246
+fldl Zero
+fcompl T
+fstsw %ax
+sahf
+jb .LC246
+fldl OneAndHalf
+faddl U2
+fstpl -1012(%ebp)
+fldl -1012(%ebp)
+fmull Y2
+fstpl X
+fldl OneAndHalf
+fsubl U2
+fstpl -1028(%ebp)
+fldl -1028(%ebp)
+fsubl U2
+fstpl Y
+fldl -1012(%ebp)
+faddl U2
+fstpl Z
+fldl Y1
+fstpl -1036(%ebp)
+fldl -1028(%ebp)
+fmull -1036(%ebp)
+fstpl T
+fldl Z
+fstpl -1044(%ebp)
+fldl -1044(%ebp)
+faddl U2
+fstpl -1052(%ebp)
+fldl X
+fsubl -1052(%ebp)
+fstpl X
+fldl Y
+fstpl -1060(%ebp)
+fldl -1060(%ebp)
+fmull -1036(%ebp)
+fstpl StickyBit
+fldl -1044(%ebp)
+fmull Y2
+fstpl S
+fldl T
+fsubl -1060(%ebp)
+fstpl T
+fldl U2
+fsubl -1060(%ebp)
+faddl StickyBit
+fstpl Y
+fldl S
+fldl -1052(%ebp)
+faddl U2
+fsubp %st(1),%st
+fstpl Z
+fldl Y2
+faddl U2
+fmull -1036(%ebp)
+fstpl StickyBit
+fldl Y2
+fmull -1036(%ebp)
+fstpl Y1
+fldl StickyBit
+fsubl Y2
+fstpl StickyBit
+fldl Y1
+fsubl Half
+fstpl Y1
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC248
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC248
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jne .LC248
+fldl Zero
+fcompl T
+fstsw %ax
+sahf
+jne .LC248
+fldl Zero
+fcompl StickyBit
+fstsw %ax
+sahf
+jne .LC248
+fldl Half
+fcompl Y1
+fstsw %ax
+sahf
+jne .LC248
+movl $1,RMult
+pushl $.LC250
+call printf
+addl $4,%esp
+jmp .LC249
+.LC248:
+fldl X
+faddl U2
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC251
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jbe .LC251
+fldl Z
+faddl U2
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC251
+fldl Zero
+fcompl T
+fstsw %ax
+sahf
+jbe .LC251
+fldl StickyBit
+faddl U2
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC251
+fldl Half
+fcompl Y1
+fstsw %ax
+sahf
+jbe .LC251
+movl $2,RMult
+pushl $.LC253
+call printf
+addl $4,%esp
+jmp .LC252
+.LC251:
+pushl $.LC254
+call printf
+addl $4,%esp
+.LC252:
+.LC249:
+cmpl $1,RMult
+jne .LC247
+cmpl $0,GMult
+jne .LC247
+pushl $.LC257
+call notify
+addl $4,%esp
+jmp .LC247
+.LC246:
+pushl $.LC254
+call printf
+addl $4,%esp
+.LC247:
+movl $45,Milestone
+fldl One
+faddl U2
+fstpl Y2
+fldl One
+fsubl U2
+fstpl Y1
+fldl OneAndHalf
+faddl U2
+fstpl -1020(%ebp)
+fldl -1020(%ebp)
+faddl U2
+fstpl Z
+fldl Z
+fstpl -1028(%ebp)
+fldl Y2
+fstpl -1036(%ebp)
+fldl -1028(%ebp)
+fdivl -1036(%ebp)
+fstpl X
+fldl OneAndHalf
+fsubl U2
+fsubl U2
+fstpl T
+fldl T
+fstpl -1044(%ebp)
+fldl Y1
+fstpl -1052(%ebp)
+fldl -1044(%ebp)
+fsubl U2
+fdivl -1052(%ebp)
+fstpl Y
+fldl -1028(%ebp)
+faddl U2
+fdivl -1036(%ebp)
+fstpl Z
+fldl X
+fsubl OneAndHalf
+fstpl X
+fldl Y
+fsubl -1044(%ebp)
+fstpl Y
+fldl -1044(%ebp)
+fdivl -1052(%ebp)
+fstpl T
+fldl Z
+fsubl -1020(%ebp)
+fstpl Z
+fldl U2
+fsubl OneAndHalf
+faddl T
+fstpl T
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jb .LC258
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jb .LC258
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jb .LC258
+fldl Zero
+fcompl T
+fstsw %ax
+sahf
+jb .LC258
+fldl Y2
+fstpl -1076(%ebp)
+fldl OneAndHalf
+fdivl -1076(%ebp)
+fstpl X
+fldl OneAndHalf
+fsubl U2
+fstpl Y
+fldl OneAndHalf
+faddl U2
+fstpl Z
+fldl Y
+fstpl -1092(%ebp)
+fldl X
+fsubl -1092(%ebp)
+fstpl X
+fldl Y1
+fstpl -1100(%ebp)
+fldl OneAndHalf
+fdivl -1100(%ebp)
+fstpl T
+fldl -1092(%ebp)
+fdivl -1100(%ebp)
+fstpl Y
+fldl Z
+fstpl -1108(%ebp)
+fldl T
+fldl -1108(%ebp)
+faddl U2
+fsubp %st(1),%st
+fstpl T
+fldl Y
+fsubl -1108(%ebp)
+fstpl Y
+fldl -1108(%ebp)
+fdivl -1076(%ebp)
+fstpl Z
+fldl -1076(%ebp)
+faddl U2
+fdivl -1076(%ebp)
+fstpl Y1
+fldl Z
+fsubl OneAndHalf
+fstpl Z
+fldl Y1
+fsubl -1076(%ebp)
+fstpl Y2
+fldl F9
+fsubl U1
+fdivl F9
+fstpl Y1
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC260
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC260
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jne .LC260
+fldl Zero
+fcompl T
+fstsw %ax
+sahf
+jne .LC260
+fldl Zero
+fcompl Y2
+fstsw %ax
+sahf
+jne .LC260
+fldl Zero
+fcompl Y2
+fstsw %ax
+sahf
+jne .LC260
+fldl Y1
+fsubl Half
+fldl F9
+fsubl Half
+fcompp
+fstsw %ax
+sahf
+jne .LC260
+movl $1,RDiv
+pushl $.LC262
+call printf
+addl $4,%esp
+cmpl $0,GDiv
+jne .LC261
+pushl $.LC265
+call notify
+addl $4,%esp
+jmp .LC261
+.LC260:
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jbe .LC266
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jbe .LC266
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jbe .LC266
+fldl Zero
+fcompl T
+fstsw %ax
+sahf
+jbe .LC266
+fldl Zero
+fcompl Y2
+fstsw %ax
+sahf
+jbe .LC266
+fldl Y1
+fsubl Half
+fldl F9
+fsubl Half
+fcompp
+fstsw %ax
+sahf
+jbe .LC266
+movl $2,RDiv
+pushl $.LC268
+call printf
+addl $4,%esp
+.LC266:
+.LC261:
+.LC258:
+cmpl $0,RDiv
+jne .LC269
+pushl $.LC271
+call printf
+addl $4,%esp
+.LC269:
+fldl One
+fdivl Radix
+fstpl BInvrse
+pushl $.LC273
+fldl BInvrse
+fmull Radix
+fsubl Half
+fldl Half
+fcompp
+fstsw %ax
+sahf
+jne .LC274
+movl $1,-1064(%ebp)
+jmp .LC275
+.LC274:
+movl $0,-1064(%ebp)
+.LC275:
+pushl -1064(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+movl $50,Milestone
+pushl $.LC277
+fldl F9
+faddl U1
+fsubl Half
+fldl Half
+fcompp
+fstsw %ax
+sahf
+jne .LC278
+fldl BMinusU2
+faddl U2
+fsubl One
+fldl Radix
+fsubl One
+fcompp
+fstsw %ax
+sahf
+jne .LC278
+movl $1,-1084(%ebp)
+jmp .LC279
+.LC278:
+movl $0,-1084(%ebp)
+.LC279:
+pushl -1084(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl One
+fldl U1
+fmull U1
+fsubp %st(1),%st
+fstpl X
+fldl One
+fldl U2
+fldl One
+fsubl U2
+fmulp %st(1),%st
+faddp %st(1),%st
+fstpl Y
+fldl F9
+fsubl Half
+fstpl Z
+fldl X
+fsubl Half
+fsubl Z
+fstpl X
+fldl Y
+fsubl One
+fstpl Y
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC280
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC280
+movl $2,RAddSub
+pushl $.LC282
+call printf
+addl $4,%esp
+.LC280:
+cmpl $1,GAddSub
+jne .LC283
+fldl Half
+faddl U2
+fmull U2
+fstpl X
+fldl Half
+fsubl U2
+fmull U2
+fstpl Y
+fldl One
+faddl X
+fstpl X
+fldl One
+faddl Y
+fstpl Y
+fldl One
+faddl U2
+fsubl X
+fstpl X
+fldl One
+fsubl Y
+fstpl Y
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC285
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC285
+fldl Half
+faddl U2
+fmull U1
+fstpl X
+fldl Half
+fsubl U2
+fmull U1
+fstpl Y
+fldl One
+fsubl X
+fstpl X
+fldl One
+fsubl Y
+fstpl Y
+fldl F9
+fsubl X
+fstpl X
+fldl One
+fsubl Y
+fstpl Y
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jne .LC287
+fldl Zero
+fcompl Y
+fstsw %ax
+sahf
+jne .LC287
+movl $1,RAddSub
+pushl $.LC289
+call printf
+addl $4,%esp
+cmpl $0,GAddSub
+jne .LC284
+pushl $.LC292
+call notify
+addl $4,%esp
+jmp .LC284
+.LC287:
+pushl $.LC293
+call printf
+addl $4,%esp
+jmp .LC284
+.LC285:
+pushl $.LC293
+call printf
+addl $4,%esp
+jmp .LC284
+.LC283:
+pushl $.LC293
+call printf
+addl $4,%esp
+.LC284:
+fldl One
+fstpl S
+fldl One
+fldl Half
+fldl One
+faddl Half
+fmulp %st(1),%st
+faddp %st(1),%st
+fstpl X
+fldl One
+faddl U2
+fmull Half
+fstpl Y
+fldl X
+fstpl -1164(%ebp)
+fldl Y
+fstpl -1172(%ebp)
+fldl -1164(%ebp)
+fsubl -1172(%ebp)
+fstpl Z
+fldl -1172(%ebp)
+fsubl -1164(%ebp)
+fstpl T
+fldl Z
+faddl T
+fstpl StickyBit
+fldl Zero
+fcompl StickyBit
+fstsw %ax
+sahf
+je .LC294
+fldl Zero
+fstpl S
+pushl $.LC296
+pushl $3
+call BadCond
+addl $8,%esp
+.LC294:
+fldl Zero
+fstpl StickyBit
+cmpl $1,GMult
+jne .LC297
+cmpl $1,GDiv
+jne .LC297
+cmpl $1,GAddSub
+jne .LC297
+cmpl $1,RMult
+jne .LC297
+cmpl $1,RDiv
+jne .LC297
+cmpl $1,RAddSub
+jne .LC297
+fldl RadixD2
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1180(%ebp)
+fldl RadixD2
+fcompl -1180(%ebp)
+fstsw %ax
+sahf
+jne .LC297
+pushl $.LC299
+call printf
+addl $4,%esp
+fldl Half
+faddl U1
+fmull U2
+fstpl X
+fldl Half
+fmull U2
+fstpl Y
+fldl One
+faddl Y
+fstpl Z
+fldl One
+faddl X
+fstpl T
+fldl Z
+fsubl One
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jb .LC300
+fldl T
+fsubl One
+fldl U2
+fcompp
+fstsw %ax
+sahf
+ja .LC300
+fldl T
+faddl Y
+fstpl Z
+fldl Z
+fsubl X
+fstpl Y
+fldl Z
+fsubl T
+fldl U2
+fcompp
+fstsw %ax
+sahf
+ja .LC302
+fldl Y
+fsubl T
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC302
+fldl Half
+faddl U1
+fmull U1
+fstpl X
+fldl Half
+fmull U1
+fstpl Y
+fldl One
+fsubl Y
+fstpl Z
+fldl One
+fsubl X
+fstpl T
+fldl Z
+fsubl One
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC304
+fldl T
+fsubl F9
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC304
+fldl Half
+fsubl U1
+fmull U1
+fstpl Z
+fldl F9
+fsubl Z
+fstpl T
+fldl F9
+fsubl Y
+fstpl Q
+fldl T
+fsubl F9
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC306
+fldl F9
+fsubl U1
+fsubl Q
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC306
+fldl One
+faddl U2
+fmull OneAndHalf
+fstpl Z
+fldl OneAndHalf
+faddl U2
+fsubl Z
+faddl U2
+fstpl T
+fldl One
+fldl Half
+fdivl Radix
+faddp %st(1),%st
+fstpl X
+fldl One
+fldl Radix
+fmull U2
+faddp %st(1),%st
+fstpl Y
+fldl X
+fmull Y
+fstpl Z
+fldl Zero
+fcompl T
+fstsw %ax
+sahf
+jne .LC308
+fldl X
+fldl Radix
+fmull U2
+faddp %st(1),%st
+fsubl Z
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC308
+fldl Two
+fcompl Radix
+fstsw %ax
+sahf
+je .LC310
+fldl Two
+faddl U2
+fstpl X
+fldl X
+fdivl Two
+fstpl Y
+fldl Y
+fsubl One
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC311
+fldl S
+fstpl StickyBit
+jmp .LC311
+.LC310:
+fldl S
+fstpl StickyBit
+.LC311:
+.LC308:
+.LC306:
+.LC304:
+.LC302:
+.LC300:
+.LC297:
+fldl One
+fcompl StickyBit
+fstsw %ax
+sahf
+jne .LC314
+pushl $.LC316
+call printf
+addl $4,%esp
+jmp .LC315
+.LC314:
+pushl $.LC317
+call printf
+addl $4,%esp
+.LC315:
+pushl $.LC319
+cmpl $0,GMult
+je .LC320
+cmpl $0,GDiv
+je .LC320
+cmpl $0,GAddSub
+je .LC320
+cmpl $0,RMult
+je .LC320
+cmpl $0,RDiv
+je .LC320
+cmpl $0,RAddSub
+je .LC320
+movl $1,-1184(%ebp)
+jmp .LC321
+.LC320:
+movl $0,-1184(%ebp)
+.LC321:
+pushl -1184(%ebp)
+pushl $3
+call TstCond
+addl $12,%esp
+movl $60,Milestone
+pushl $.LC45
+call printf
+addl $4,%esp
+pushl $.LC322
+call printf
+addl $4,%esp
+pushl NoTrials
+pushl $.LC323
+call printf
+addl $8,%esp
+fldl .LC324
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1192(%ebp)
+fldl -1192(%ebp)
+fstpl Random9
+fldl Third
+fstpl Random1
+movl $1,I
+.LC325:
+call Random
+fstpl -1200(%ebp)
+fldl -1200(%ebp)
+fstpl X
+call Random
+fstpl -1208(%ebp)
+fldl -1208(%ebp)
+fstpl Y
+fldl Y
+fmull X
+fstpl Z9
+fldl X
+fmull Y
+fstpl Z
+fldl Z
+fsubl Z9
+fstpl Z9
+incl I
+.LC326:
+movl NoTrials,%edi
+cmpl %edi,I
+jg .LC328
+fldl Zero
+fcompl Z9
+fstsw %ax
+sahf
+je .LC325
+.LC328:
+movl NoTrials,%edi
+cmpl %edi,I
+jne .LC329
+fldl One
+fldl Half
+fdivl Three
+faddp %st(1),%st
+fstpl -1208(%ebp)
+fldl -1208(%ebp)
+fstpl Random1
+fldl U2
+faddl U1
+faddl One
+fstpl -1216(%ebp)
+fldl -1216(%ebp)
+fstpl Random2
+fldl Random1
+fstpl -1224(%ebp)
+fldl Random2
+fstpl -1232(%ebp)
+fldl -1224(%ebp)
+fmull -1232(%ebp)
+fstpl Z
+fldl -1232(%ebp)
+fmull -1224(%ebp)
+fstpl Y
+fldl -1208(%ebp)
+fmull -1216(%ebp)
+fstpl -1240(%ebp)
+fldl -1240(%ebp)
+fsubl -1240(%ebp)
+fstpl Z9
+.LC329:
+movl NoTrials,%edi
+cmpl %edi,I
+je .LC331
+fldl Zero
+fcompl Z9
+fstsw %ax
+sahf
+je .LC331
+pushl $.LC333
+pushl $2
+call BadCond
+addl $8,%esp
+jmp .LC332
+.LC331:
+pushl NoTrials
+pushl $.LC334
+call printf
+addl $8,%esp
+.LC332:
+movl $70,Milestone
+pushl $.LC335
+call printf
+addl $4,%esp
+fldl Zero
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1212(%ebp)
+fldl -1212(%ebp)
+fcompl Zero
+fstsw %ax
+sahf
+jne .LC338
+fldl Zero
+fchs
+fstpl -1220(%ebp)
+fldl -1220(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1228(%ebp)
+fldl -1228(%ebp)
+fcompl -1220(%ebp)
+fstsw %ax
+sahf
+jne .LC338
+fldl One
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1244(%ebp)
+fldl -1244(%ebp)
+fcompl One
+fstsw %ax
+sahf
+jne .LC338
+movl $1,-1196(%ebp)
+jmp .LC339
+.LC338:
+movl $0,-1196(%ebp)
+.LC339:
+pushl $.LC337
+pushl -1196(%ebp)
+pushl $0
+call TstCond
+addl $12,%esp
+fldl Zero
+fstpl MinSqEr
+fldl Zero
+fstpl MaxSqEr
+fldl Zero
+fstpl J
+fldl Radix
+fstpl X
+fldl U2
+fstpl OneUlp
+pushl $1
+call SqXMinX
+addl $4,%esp
+fldl BInvrse
+fstpl X
+fldl BInvrse
+fmull U1
+fstpl OneUlp
+pushl $1
+call SqXMinX
+addl $4,%esp
+fldl U1
+fstpl X
+fldl U1
+fmull U1
+fstpl OneUlp
+pushl $1
+call SqXMinX
+addl $4,%esp
+fldl Zero
+fcompl J
+fstsw %ax
+sahf
+je .LC340
+call Pause
+.LC340:
+pushl NoTrials
+pushl $.LC342
+call printf
+addl $8,%esp
+fldl Zero
+fstpl J
+fldl Two
+fstpl X
+fldl Radix
+fstpl Y
+fldl One
+fcompl Radix
+fstsw %ax
+sahf
+je .LC343
+.LC345:
+fldl Y
+fstpl -1284(%ebp)
+fldl -1284(%ebp)
+fstpl X
+fldl Radix
+fmull -1284(%ebp)
+fstpl Y
+.LC346:
+fldl Y
+fsubl X
+fildl NoTrials
+fcompp
+fstsw %ax
+sahf
+ja .LC345
+.LC343:
+fldl X
+fmull U2
+fstpl OneUlp
+movl $1,I
+jmp .LC349
+.LC348:
+fldl X
+faddl One
+fstpl X
+pushl $2
+call SqXMinX
+addl $4,%esp
+fldl Zero
+fcompl J
+fstsw %ax
+sahf
+jae .LC351
+jmp .LC350
+.LC351:
+incl I
+.LC349:
+movl NoTrials,%edi
+cmpl %edi,I
+jle .LC348
+.LC350:
+pushl $.LC353
+call printf
+addl $4,%esp
+movl $-1,I
+fldl BMinusU2
+fstpl X
+fldl Radix
+fstpl Y
+fldl Radix
+fldl Radix
+fmull U2
+faddp %st(1),%st
+fstpl Z
+movl $0,NotMonot
+movl $0,Monot
+jmp .LC355
+.LC354:
+incl I
+fldl X
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1292(%ebp)
+fldl -1292(%ebp)
+fstpl X
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1300(%ebp)
+fldl -1300(%ebp)
+fstpl Q
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1308(%ebp)
+fldl -1308(%ebp)
+fstpl Z
+fldl Q
+fcompl X
+fstsw %ax
+sahf
+jb .LC359
+fldl Z
+fcompl Q
+fstsw %ax
+sahf
+jae .LC357
+.LC359:
+movl $1,NotMonot
+jmp .LC358
+.LC357:
+fldl Q
+faddl Half
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1324(%ebp)
+fldl -1324(%ebp)
+fstpl Q
+cmpl $0,I
+jg .LC362
+fldl Q
+fmull Q
+fcompl Radix
+fstsw %ax
+sahf
+jne .LC360
+.LC362:
+movl $1,Monot
+jmp .LC361
+.LC360:
+cmpl $0,I
+jle .LC363
+cmpl $1,I
+jle .LC365
+movl $1,Monot
+jmp .LC364
+.LC365:
+fldl Y
+fmull BInvrse
+fstpl Y
+fldl Y
+fstpl -1340(%ebp)
+fldl -1340(%ebp)
+fsubl U1
+fstpl X
+fldl -1340(%ebp)
+faddl U1
+fstpl Z
+jmp .LC364
+.LC363:
+fldl Q
+fstpl Y
+fldl Y
+fstpl -1340(%ebp)
+fldl -1340(%ebp)
+fsubl U2
+fstpl X
+fldl -1340(%ebp)
+faddl U2
+fstpl Z
+.LC364:
+.LC361:
+.LC358:
+.LC355:
+cmpl $0,NotMonot
+jne .LC367
+cmpl $0,Monot
+je .LC354
+.LC367:
+cmpl $0,Monot
+je .LC368
+pushl $.LC370
+call printf
+addl $4,%esp
+jmp .LC369
+.LC368:
+pushl $.LC158
+pushl $2
+call BadCond
+addl $8,%esp
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC371
+call printf
+addl $12,%esp
+.LC369:
+movl $80,Milestone
+fldl MinSqEr
+faddl Half
+fstpl MinSqEr
+fldl MaxSqEr
+fsubl Half
+fstpl MaxSqEr
+fldl One
+faddl U2
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1300(%ebp)
+fldl -1300(%ebp)
+fsubl One
+fdivl U2
+fstpl Y
+fldl Y
+fsubl One
+fldl U2
+fdivl Eight
+faddp %st(1),%st
+fstpl SqEr
+fldl MaxSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jae .LC372
+fldl SqEr
+fstpl MaxSqEr
+.LC372:
+fldl Y
+fldl U2
+fdivl Eight
+faddp %st(1),%st
+fstpl SqEr
+fldl MinSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jbe .LC374
+fldl SqEr
+fstpl MinSqEr
+.LC374:
+fldl F9
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1324(%ebp)
+fldl -1324(%ebp)
+fsubl U2
+fldl One
+fsubl U2
+fsubp %st(1),%st
+fdivl U1
+fstpl Y
+fldl Y
+fldl U1
+fdivl Eight
+faddp %st(1),%st
+fstpl SqEr
+fldl MaxSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jae .LC376
+fldl SqEr
+fstpl MaxSqEr
+.LC376:
+fldl Y
+faddl One
+fldl U1
+fdivl Eight
+faddp %st(1),%st
+fstpl SqEr
+fldl MinSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jbe .LC378
+fldl SqEr
+fstpl MinSqEr
+.LC378:
+fldl U2
+fstpl OneUlp
+fldl OneUlp
+fstpl X
+movl $1,Indx
+.LC380:
+fldl X
+faddl U1
+faddl X
+faddl F9
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1356(%ebp)
+fldl -1356(%ebp)
+fstpl Y
+fldl Y
+fsubl U2
+fldl One
+fsubl U2
+faddl X
+fsubp %st(1),%st
+fdivl OneUlp
+fstpl Y
+fldl U1
+fsubl X
+faddl F9
+fmull Half
+fmull X
+fmull X
+fdivl OneUlp
+fstpl Z
+fldl Y
+faddl Half
+faddl Z
+fstpl SqEr
+fldl MinSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jbe .LC384
+fldl SqEr
+fstpl MinSqEr
+.LC384:
+fldl Y
+fsubl Half
+faddl Z
+fstpl SqEr
+fldl MaxSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jae .LC386
+fldl SqEr
+fstpl MaxSqEr
+.LC386:
+movl Indx,%edi
+cmpl $1,%edi
+je .LC390
+cmpl $3,%edi
+jne .LC388
+.LC390:
+fldl X
+subl $8,%esp
+fstpl (%esp)
+call Sign
+addl $8,%esp
+fstpl -1396(%ebp)
+fldl OneUlp
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1404(%ebp)
+fldl Eight
+fldl Nine
+fmull -1404(%ebp)
+fdivp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1412(%ebp)
+fldl OneUlp
+fmull -1396(%ebp)
+fmull -1412(%ebp)
+fstpl X
+jmp .LC389
+.LC388:
+fldl U1
+fstpl OneUlp
+fldl OneUlp
+fchs
+fstpl X
+.LC389:
+.LC381:
+incl Indx
+cmpl $3,Indx
+jle .LC380
+movl $85,Milestone
+movl $0,SqRWrng
+movl $0,Anomaly
+movl $0,RSqrt
+fldl One
+fcompl Radix
+fstsw %ax
+sahf
+je .LC391
+pushl $.LC393
+call printf
+addl $4,%esp
+fldl Precision
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1356(%ebp)
+fldl One
+faddl Precision
+fsubl -1356(%ebp)
+subl $8,%esp
+fstpl (%esp)
+fldl Radix
+subl $8,%esp
+fstpl (%esp)
+call pow
+addl $16,%esp
+fstpl -1364(%ebp)
+fldl Half
+faddl -1364(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1372(%ebp)
+fldl -1372(%ebp)
+fstpl D
+fldl D
+fdivl Radix
+fstpl X
+fldl D
+fdivl A1
+fstpl Y
+fldl X
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1396(%ebp)
+fldl -1396(%ebp)
+fcompl X
+fstsw %ax
+sahf
+jne .LC396
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1412(%ebp)
+fldl -1412(%ebp)
+fcompl Y
+fstsw %ax
+sahf
+je .LC394
+.LC396:
+movl $1,Anomaly
+jmp .LC395
+.LC394:
+fldl Zero
+fstpl X
+fldl X
+fstpl Z2
+fldl One
+fstpl Y
+fldl Y
+fstpl Y2
+fldl Radix
+fsubl One
+fstpl Z1
+fldl Four
+fmull D
+fstpl FourD
+.LC397:
+fldl Z2
+fcompl Y2
+fstsw %ax
+sahf
+jae .LC400
+fldl Radix
+fstpl Q
+fldl Y
+fstpl Y1
+.LC402:
+fldl Half
+fldl Q
+fdivl Y1
+fsubp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1436(%ebp)
+fldl Q
+fldl -1436(%ebp)
+fmull Y1
+faddp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -1444(%ebp)
+fldl -1444(%ebp)
+fstpl X1
+fldl Y1
+fstpl Q
+fldl X1
+fstpl Y1
+.LC403:
+fldl Zero
+fcompl X1
+fstsw %ax
+sahf
+jb .LC402
+fldl One
+fcompl Q
+fstsw %ax
+sahf
+jb .LC405
+fldl Y2
+fstpl Z2
+fldl Y
+fstpl Z
+.LC405:
+.LC400:
+fldl Y
+faddl Two
+fstpl Y
+fldl X
+faddl Eight
+fstpl X
+fldl Y2
+faddl X
+fstpl Y2
+fldl FourD
+fcompl Y2
+fstsw %ax
+sahf
+ja .LC407
+fldl Y2
+fsubl FourD
+fstpl Y2
+.LC407:
+.LC398:
+fldl D
+fcompl Y
+fstsw %ax
+sahf
+ja .LC397
+fldl FourD
+fsubl Z2
+fstpl X8
+fldl X8
+fstpl -1436(%ebp)
+fldl -1436(%ebp)
+fldl Z
+fmull Z
+faddp %st(1),%st
+fdivl FourD
+fstpl Q
+fldl -1436(%ebp)
+fdivl Eight
+fstpl X8
+fldl Q
+fstpl -1452(%ebp)
+fldl -1452(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1460(%ebp)
+fldl -1460(%ebp)
+fcompl -1452(%ebp)
+fstsw %ax
+sahf
+je .LC409
+movl $1,Anomaly
+jmp .LC410
+.LC409:
+movl $0,Break
+.LC411:
+fldl Z1
+fmull Z
+fstpl X
+fldl X
+fstpl -1468(%ebp)
+fldl -1468(%ebp)
+fdivl Radix
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1476(%ebp)
+fldl -1468(%ebp)
+fldl -1476(%ebp)
+fmull Radix
+fsubp %st(1),%st
+fstpl X
+fldl One
+fcompl X
+fstsw %ax
+sahf
+jne .LC414
+movl $1,Break
+jmp .LC415
+.LC414:
+fldl Z1
+fsubl One
+fstpl Z1
+.LC415:
+.LC412:
+cmpl $0,Break
+jne .LC416
+fldl Zero
+fcompl Z1
+fstsw %ax
+sahf
+jb .LC411
+.LC416:
+fldl Zero
+fcompl Z1
+fstsw %ax
+sahf
+jb .LC417
+cmpl $0,Break
+jne .LC417
+movl $1,Anomaly
+jmp .LC418
+.LC417:
+fldl RadixD2
+fcompl Z1
+fstsw %ax
+sahf
+jae .LC419
+fldl Z1
+fsubl Radix
+fstpl Z1
+.LC419:
+.LC421:
+call NewD
+.LC422:
+fldl U2
+fmull D
+fldl F9
+fcompp
+fstsw %ax
+sahf
+ja .LC421
+fldl D
+fmull Radix
+fsubl D
+fldl W
+fsubl D
+fcompp
+fstsw %ax
+sahf
+je .LC424
+movl $1,Anomaly
+jmp .LC425
+.LC424:
+fldl D
+fstpl Z2
+movl $0,I
+fldl D
+fldl One
+faddl Z
+fmull Half
+faddp %st(1),%st
+fstpl Y
+fldl D
+faddl Z
+faddl Q
+fstpl X
+call SR3750
+fldl D
+fldl One
+fsubl Z
+fmull Half
+faddp %st(1),%st
+faddl D
+fstpl Y
+fldl D
+fsubl Z
+faddl D
+fstpl X
+fldl X
+fstpl -1508(%ebp)
+fldl -1508(%ebp)
+faddl Q
+faddl -1508(%ebp)
+fstpl X
+call SR3750
+call NewD
+fldl D
+fsubl Z2
+fldl W
+fsubl Z2
+fcompp
+fstsw %ax
+sahf
+je .LC426
+movl $1,Anomaly
+jmp .LC427
+.LC426:
+fldl D
+fsubl Z2
+fstpl -1532(%ebp)
+fldl -1532(%ebp)
+fldl Z2
+fldl One
+fsubl Z
+fmull Half
+faddp %st(1),%st
+faddp %st(1),%st
+fstpl Y
+fldl -1532(%ebp)
+fldl Z2
+fsubl Z
+faddl Q
+faddp %st(1),%st
+fstpl X
+call SR3750
+fldl One
+faddl Z
+fmull Half
+fstpl Y
+fldl Q
+fstpl X
+call SR3750
+cmpl $0,I
+jne .LC428
+movl $1,Anomaly
+.LC428:
+.LC427:
+.LC425:
+.LC418:
+.LC410:
+.LC395:
+cmpl $0,I
+je .LC432
+cmpl $0,Anomaly
+je .LC430
+.LC432:
+pushl $.LC433
+pushl $0
+call BadCond
+addl $8,%esp
+fldl W
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC434
+call printf
+addl $12,%esp
+pushl $.LC435
+call printf
+addl $4,%esp
+movl $1,SqRWrng
+.LC430:
+.LC391:
+cmpl $0,Anomaly
+jne .LC436
+fldl Zero
+fcompl MinSqEr
+fstsw %ax
+sahf
+ja .LC438
+fldl Zero
+fcompl MaxSqEr
+fstsw %ax
+sahf
+jb .LC438
+movl $1,RSqrt
+pushl $.LC440
+call printf
+addl $4,%esp
+jmp .LC439
+.LC438:
+fldl MaxSqEr
+faddl U2
+fldl U2
+fsubl Half
+fcompp
+fstsw %ax
+sahf
+jb .LC444
+fldl Half
+fcompl MinSqEr
+fstsw %ax
+sahf
+jb .LC444
+fldl MinSqEr
+faddl Radix
+fldl Half
+fcompp
+fstsw %ax
+sahf
+jbe .LC441
+.LC444:
+movl $1,SqRWrng
+jmp .LC442
+.LC441:
+movl $2,RSqrt
+pushl $.LC445
+call printf
+addl $4,%esp
+.LC442:
+.LC439:
+.LC436:
+cmpl $0,SqRWrng
+je .LC446
+pushl $.LC448
+call printf
+addl $4,%esp
+fldl MinSqEr
+fsubl Half
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC449
+call printf
+addl $12,%esp
+fldl Half
+faddl MaxSqEr
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC450
+call printf
+addl $12,%esp
+pushl $.LC452
+fldl MaxSqEr
+fsubl MinSqEr
+fldl Radix
+fmull Radix
+fcompp
+fstsw %ax
+sahf
+jbe .LC453
+movl $1,-1344(%ebp)
+jmp .LC454
+.LC453:
+movl $0,-1344(%ebp)
+.LC454:
+pushl -1344(%ebp)
+pushl $1
+call TstCond
+addl $12,%esp
+.LC446:
+movl $90,Milestone
+call Pause
+pushl $.LC455
+call printf
+addl $4,%esp
+movl $0,N
+movl $0,I
+fldl Zero
+fchs
+fstpl Z
+movl $3,M
+movl $0,Break
+.LC456:
+fldl One
+fstpl X
+call SR3980
+cmpl $10,I
+jg .LC459
+movl $1023,I
+call SR3980
+.LC459:
+fldl MinusOne
+fcompl Z
+fstsw %ax
+sahf
+jne .LC461
+movl $1,Break
+jmp .LC462
+.LC461:
+fldl MinusOne
+fstpl Z
+call PrintIfNPositive
+movl $0,N
+movl $-4,I
+.LC462:
+.LC457:
+cmpl $0,Break
+je .LC456
+call PrintIfNPositive
+movl N,%edi
+movl %edi,N1
+movl $0,N
+fldl A1
+fstpl Z
+fldl W
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -1348(%ebp)
+fldl A1
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -1356(%ebp)
+fldl Two
+fmull -1348(%ebp)
+fdivl -1356(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1364(%ebp)
+fldl -1364(%ebp)
+fistpl M
+movl $0,Break
+.LC463:
+fldl Z
+fstpl X
+movl $1,I
+call SR3980
+fldl AInvrse
+fcompl Z
+fstsw %ax
+sahf
+jne .LC466
+movl $1,Break
+jmp .LC467
+.LC466:
+fldl AInvrse
+fstpl Z
+.LC467:
+.LC464:
+cmpl $0,Break
+je .LC463
+movl $100,Milestone
+movl NoTrials,%edi
+movl %edi,M
+fldl Three
+fstpl Z
+.LC468:
+fldl Z
+fstpl X
+movl $1,I
+call SR3980
+.LC471:
+fldl Z
+faddl Two
+fstpl Z
+.LC472:
+fldl Z
+fdivl Three
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1380(%ebp)
+fldl Three
+fmull -1380(%ebp)
+fldl Z
+fcompp
+fstsw %ax
+sahf
+je .LC471
+.LC469:
+fldl Eight
+fmull Three
+fcompl Z
+fstsw %ax
+sahf
+ja .LC468
+cmpl $0,N
+jle .LC474
+pushl $.LC476
+call printf
+addl $4,%esp
+pushl $.LC477
+call printf
+addl $4,%esp
+.LC474:
+call PrintIfNPositive
+movl N1,%edi
+addl %edi,N
+cmpl $0,N
+jne .LC478
+pushl $.LC480
+call printf
+addl $4,%esp
+.LC478:
+cmpl $0,N
+jle .LC481
+call Pause
+jmp .LC482
+.LC481:
+pushl $.LC45
+call printf
+addl $4,%esp
+.LC482:
+movl $110,Milestone
+pushl $.LC483
+call printf
+addl $4,%esp
+fldl U1
+fstpl D
+fldl Precision
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1380(%ebp)
+fldl -1380(%ebp)
+fcompl Precision
+fstsw %ax
+sahf
+je .LC484
+fldl BInvrse
+fstpl D
+fldl Precision
+fstpl X
+.LC486:
+fldl D
+fmull BInvrse
+fstpl D
+fldl X
+fsubl One
+fstpl X
+.LC487:
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jb .LC486
+.LC484:
+fldl One
+fstpl Y
+fldl D
+fstpl Z
+.LC489:
+fldl Y
+fstpl C
+fldl Z
+fstpl Y
+fldl Y
+fstpl -1388(%ebp)
+fldl -1388(%ebp)
+fmull -1388(%ebp)
+fstpl Z
+.LC490:
+fldl Z
+fcompl Y
+fstsw %ax
+sahf
+jae .LC492
+fldl Z
+faddl Z
+fldl Z
+fcompp
+fstsw %ax
+sahf
+jb .LC489
+.LC492:
+fldl C
+fstpl Y
+fldl Y
+fmull D
+fstpl Z
+.LC493:
+fldl Y
+fstpl C
+fldl Z
+fstpl Y
+fldl Y
+fmull D
+fstpl Z
+.LC494:
+fldl Z
+fcompl Y
+fstsw %ax
+sahf
+jae .LC496
+fldl Z
+faddl Z
+fldl Z
+fcompp
+fstsw %ax
+sahf
+jb .LC493
+.LC496:
+fldl Two
+fcompl Radix
+fstsw %ax
+sahf
+jbe .LC497
+fldl Two
+fstpl HInvrse
+jmp .LC498
+.LC497:
+fldl Radix
+fstpl HInvrse
+.LC498:
+fldl One
+fdivl HInvrse
+fstpl H
+fldl One
+fdivl C
+fstpl CInvrse
+fldl C
+fstpl E0
+fldl E0
+fmull H
+fstpl Z
+.LC499:
+fldl E0
+fstpl Y
+fldl Z
+fstpl E0
+fldl E0
+fmull H
+fstpl Z
+.LC500:
+fldl Z
+fcompl E0
+fstsw %ax
+sahf
+jae .LC502
+fldl Z
+faddl Z
+fldl Z
+fcompp
+fstsw %ax
+sahf
+jb .LC499
+.LC502:
+fldl E0
+fstpl UfThold
+fldl Zero
+fstpl E1
+fldl Zero
+fstpl Q
+fldl U2
+fstpl E9
+fldl One
+faddl E9
+fstpl S
+fldl C
+fmull S
+fstpl D
+fldl C
+fcompl D
+fstsw %ax
+sahf
+jb .LC503
+fldl Radix
+fmull U2
+fstpl E9
+fldl One
+faddl E9
+fstpl S
+fldl C
+fmull S
+fstpl D
+fldl C
+fcompl D
+fstsw %ax
+sahf
+jb .LC504
+pushl $.LC507
+pushl $0
+call BadCond
+addl $8,%esp
+fldl E0
+fstpl Underflow
+fldl Zero
+fstpl Y1
+fldl Z
+fstpl PseudoZero
+call Pause
+jmp .LC504
+.LC503:
+fldl D
+fstpl Underflow
+fldl Underflow
+fmull H
+fstpl PseudoZero
+fldl Zero
+fstpl UfThold
+.LC508:
+fldl Underflow
+fstpl Y1
+fldl PseudoZero
+fstpl Underflow
+fldl E1
+faddl E1
+fldl E1
+fcompp
+fstsw %ax
+sahf
+jb .LC511
+fldl Underflow
+fmull HInvrse
+fstpl Y2
+fldl Y1
+fsubl Y2
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -1452(%ebp)
+fldl -1452(%ebp)
+fstpl E1
+fldl Y1
+fstpl Q
+fldl Zero
+fcompl UfThold
+fstsw %ax
+sahf
+jne .LC513
+fldl Y2
+fcompl Y1
+fstsw %ax
+sahf
+je .LC513
+fldl Y1
+fstpl UfThold
+.LC513:
+.LC511:
+fldl PseudoZero
+fmull H
+fstpl PseudoZero
+.LC509:
+fldl PseudoZero
+fcompl Underflow
+fstsw %ax
+sahf
+jae .LC515
+fldl PseudoZero
+faddl PseudoZero
+fldl PseudoZero
+fcompp
+fstsw %ax
+sahf
+jb .LC508
+.LC515:
+.LC504:
+fldl Zero
+fcompl PseudoZero
+fstsw %ax
+sahf
+je .LC516
+pushl $.LC45
+call printf
+addl $4,%esp
+fldl PseudoZero
+fstpl Z
+fldl Zero
+fcompl PseudoZero
+fstsw %ax
+sahf
+jb .LC518
+pushl $.LC520
+pushl $0
+call BadCond
+addl $8,%esp
+pushl $.LC521
+call printf
+addl $4,%esp
+fldl PseudoZero
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC522
+call printf
+addl $12,%esp
+fldl PseudoZero
+fchs
+fstpl X
+fldl Zero
+fcompl X
+fstsw %ax
+sahf
+jb .LC519
+pushl $.LC525
+call printf
+addl $4,%esp
+fldl X
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC526
+call printf
+addl $12,%esp
+jmp .LC519
+.LC518:
+pushl $.LC527
+pushl $3
+call BadCond
+addl $8,%esp
+fldl PseudoZero
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC528
+call printf
+addl $12,%esp
+.LC519:
+call TstPtUf
+.LC516:
+movl $120,Milestone
+fldl CInvrse
+fmull Y
+fldl CInvrse
+fmull Y1
+fcompp
+fstsw %ax
+sahf
+jae .LC529
+fldl H
+fmull S
+fstpl S
+fldl Underflow
+fstpl E0
+.LC529:
+fldl Zero
+fcompl E1
+fstsw %ax
+sahf
+je .LC531
+fldl E0
+fcompl E1
+fstsw %ax
+sahf
+je .LC531
+pushl $.LC158
+pushl $2
+call BadCond
+addl $8,%esp
+fldl E0
+fcompl E1
+fstsw %ax
+sahf
+jbe .LC533
+pushl $.LC535
+call printf
+addl $4,%esp
+pushl $.LC536
+call printf
+addl $4,%esp
+fldl Zero
+fcompl PseudoZero
+fstsw %ax
+sahf
+jne .LC534
+fldl E1
+fstpl E0
+jmp .LC534
+.LC533:
+pushl $.LC539
+call printf
+addl $4,%esp
+pushl $.LC540
+call printf
+addl $4,%esp
+.LC534:
+.LC531:
+fldl E0
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC541
+call printf
+addl $12,%esp
+fldl E0
+fstpl Z
+call TstPtUf
+fldl E0
+fstpl Underflow
+cmpl $1,N
+jne .LC542
+fldl Y
+fstpl Underflow
+.LC542:
+movl $4,I
+fldl Zero
+fcompl E1
+fstsw %ax
+sahf
+jne .LC544
+movl $3,I
+.LC544:
+fldl Zero
+fcompl UfThold
+fstsw %ax
+sahf
+jne .LC546
+sub $2,I
+.LC546:
+movl $1,UfNGrad
+movl I,%edi
+cmpl $1,%edi
+jl .LC548
+cmpl $4,%edi
+jg .LC548
+jmp *.LC571-4(,%edi,4)
+.data
+.align 4
+.LC571:
+.long .LC550
+.long .LC557
+.long .LC562
+.long .LC563
+.text
+.LC550:
+fldl Underflow
+fstpl UfThold
+fldl CInvrse
+fmull Q
+fldl CInvrse
+fmull Y
+fmull S
+fcompp
+fstsw %ax
+sahf
+je .LC551
+fldl Y
+fstpl UfThold
+pushl $.LC553
+pushl $0
+call BadCond
+addl $8,%esp
+fldl UfThold
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC554
+call printf
+addl $12,%esp
+fldl C
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC555
+call printf
+addl $12,%esp
+pushl $.LC556
+call printf
+addl $4,%esp
+.LC551:
+call Pause
+jmp .LC549
+.LC557:
+pushl $.LC558
+pushl $0
+call BadCond
+addl $8,%esp
+pushl $.LC559
+call printf
+addl $4,%esp
+fldl Y2
+subl $8,%esp
+fstpl (%esp)
+fldl Q
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC560
+call printf
+addl $20,%esp
+fldl Q
+fsubl Y2
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -1468(%ebp)
+fldl -1468(%ebp)
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC561
+call printf
+addl $12,%esp
+fldl Q
+fstpl UfThold
+jmp .LC549
+.LC562:
+fldl X
+fstpl X
+jmp .LC549
+.LC563:
+fldl UfThold
+fcompl Q
+fstsw %ax
+sahf
+jne .LC564
+fldl E0
+fcompl E1
+fstsw %ax
+sahf
+jne .LC564
+fldl UfThold
+fldl E1
+fdivl E9
+fsubp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -1492(%ebp)
+fldl E1
+fcompl -1492(%ebp)
+fstsw %ax
+sahf
+jb .LC564
+movl $0,UfNGrad
+pushl $.LC566
+call printf
+addl $4,%esp
+pushl $.LC567
+call printf
+addl $4,%esp
+fldl E0
+fmull CInvrse
+fstpl Y
+fldl Y
+fldl OneAndHalf
+faddl U2
+fmulp %st(1),%st
+fstpl Y
+fldl CInvrse
+fldl One
+faddl U2
+fmulp %st(1),%st
+fstpl X
+fldl Y
+fdivl X
+fstpl Y
+fldl E0
+fcompl Y
+fstsw %ax
+sahf
+jne .LC569
+movl $1,-1496(%ebp)
+jmp .LC570
+.LC569:
+movl $0,-1496(%ebp)
+.LC570:
+movl -1496(%ebp),%edi
+movl %edi,IEEE
+.LC564:
+.LC548:
+.LC549:
+cmpl $0,UfNGrad
+je .LC573
+pushl $.LC45
+call printf
+addl $4,%esp
+leal sigfpe,%edi
+movl %edi,sigsave
+pushl $ovfl_buf
+call __setjmp
+addl $4,%esp
+cmpl $0,%eax
+je .LC575
+pushl $.LC577
+call printf
+addl $4,%esp
+fldl H
+faddl H
+fstpl R
+jmp .LC576
+.LC575:
+fldl Underflow
+fdivl UfThold
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1460(%ebp)
+fldl -1460(%ebp)
+fstpl R
+.LC576:
+movl $0,sigsave
+fldl H
+fcompl R
+fstsw %ax
+sahf
+jb .LC578
+fldl R
+fmull UfThold
+fstpl Z
+fldl Z
+fldl One
+fldl R
+fmull H
+fldl One
+faddl H
+fmulp %st(1),%st
+faddp %st(1),%st
+fmulp %st(1),%st
+fstpl X
+jmp .LC579
+.LC578:
+fldl UfThold
+fstpl Z
+fldl Z
+fldl One
+fldl H
+fmull H
+fldl One
+faddl H
+fmulp %st(1),%st
+faddp %st(1),%st
+fmulp %st(1),%st
+fstpl X
+.LC579:
+fldl Z
+fcompl X
+fstsw %ax
+sahf
+je .LC580
+fldl X
+fsubl Z
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC580
+pushl $.LC158
+pushl $3
+call BadCond
+addl $8,%esp
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+fldl X
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC582
+call printf
+addl $20,%esp
+fldl X
+fsubl Z
+fstpl Z9
+fldl Z9
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC583
+call printf
+addl $12,%esp
+pushl $.LC584
+call printf
+addl $4,%esp
+pushl $.LC585
+call printf
+addl $4,%esp
+pushl $.LC586
+call printf
+addl $4,%esp
+pushl $.LC587
+call printf
+addl $4,%esp
+pushl $.LC588
+call printf
+addl $4,%esp
+pushl $.LC589
+call printf
+addl $4,%esp
+leal sigfpe,%edi
+movl %edi,sigsave
+pushl $ovfl_buf
+call __setjmp
+addl $4,%esp
+cmpl $0,%eax
+je .LC590
+pushl $.LC592
+call printf
+addl $4,%esp
+jmp .LC591
+.LC590:
+fldl X
+fdivl Z
+fsubl Half
+fsubl Half
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC593
+call printf
+addl $12,%esp
+.LC591:
+movl $0,sigsave
+.LC580:
+.LC573:
+pushl $.LC595
+fldl UfThold
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC594
+call printf
+addl $16,%esp
+pushl $.LC596
+call printf
+addl $4,%esp
+pushl $.LC597
+call printf
+addl $4,%esp
+fldl U1
+fmull U1
+fstpl Y2
+fldl Y2
+fstpl -1468(%ebp)
+fldl -1468(%ebp)
+fmull -1468(%ebp)
+fstpl Y
+fldl Y
+fmull U1
+fstpl Y2
+fldl UfThold
+fcompl Y2
+fstsw %ax
+sahf
+jb .LC598
+fldl E0
+fcompl Y
+fstsw %ax
+sahf
+jae .LC600
+pushl $.LC158
+pushl $2
+call BadCond
+addl $8,%esp
+movl $5,I
+jmp .LC601
+.LC600:
+pushl $.LC158
+pushl $1
+call BadCond
+addl $8,%esp
+movl $4,I
+.LC601:
+pushl I
+pushl $.LC602
+call printf
+addl $8,%esp
+.LC598:
+movl $130,Milestone
+fldl UfThold
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -1476(%ebp)
+fldl HInvrse
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -1484(%ebp)
+fldl Half
+fldl TwoForty
+fmull -1476(%ebp)
+fdivl -1484(%ebp)
+fsubp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1492(%ebp)
+fldl -1492(%ebp)
+fchs
+fdivl TwoForty
+fstpl Y
+fldl Y
+faddl Y
+fstpl Y2
+pushl $.LC603
+call printf
+addl $4,%esp
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+fldl HInvrse
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC604
+call printf
+addl $20,%esp
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+fldl HInvrse
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC605
+call printf
+addl $20,%esp
+fldl Y2
+subl $8,%esp
+fstpl (%esp)
+fldl HInvrse
+subl $8,%esp
+fstpl (%esp)
+call pow
+addl $16,%esp
+fstpl -1508(%ebp)
+fldl -1508(%ebp)
+fstpl V9
+fldl V9
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC606
+call printf
+addl $12,%esp
+fldl Zero
+fcompl V9
+fstsw %ax
+sahf
+ja .LC609
+fldl Radix
+faddl Radix
+faddl E9
+fmull UfThold
+fcompl V9
+fstsw %ax
+sahf
+jae .LC607
+.LC609:
+pushl $.LC610
+pushl $1
+call BadCond
+addl $8,%esp
+fldl UfThold
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC611
+call printf
+addl $12,%esp
+jmp .LC608
+.LC607:
+fldl UfThold
+fldl One
+faddl E9
+fmulp %st(1),%st
+fcompl V9
+fstsw %ax
+sahf
+jb .LC612
+pushl $.LC614
+call printf
+addl $4,%esp
+jmp .LC613
+.LC612:
+pushl $.LC610
+pushl $2
+call BadCond
+addl $8,%esp
+fldl UfThold
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC611
+call printf
+addl $12,%esp
+.LC613:
+.LC608:
+movl $140,Milestone
+pushl $.LC45
+call printf
+addl $4,%esp
+fldl Zero
+fstpl X
+movl $2,I
+fldl Two
+fmull Three
+fstpl Y
+fldl Zero
+fstpl Q
+movl $0,N
+.LC615:
+fldl X
+fstpl Z
+incl I
+movl I,%edi
+fldl Y
+leal (%edi,%edi),%edi
+pushl %edi
+fildl (%esp)
+addl $4,%esp
+fdivp %st(1),%st
+fstpl Y
+fldl Y
+faddl Q
+fstpl R
+fldl Z
+fstpl -1540(%ebp)
+fldl R
+fstpl -1548(%ebp)
+fldl -1540(%ebp)
+faddl -1548(%ebp)
+fstpl X
+fldl -1540(%ebp)
+fsubl X
+faddl -1548(%ebp)
+fstpl Q
+.LC616:
+fldl Z
+fcompl X
+fstsw %ax
+sahf
+jb .LC615
+fldl OneAndHalf
+fldl One
+fdivl Eight
+faddp %st(1),%st
+fldl X
+fldl OneAndHalf
+fmull ThirtyTwo
+fdivp %st(1),%st
+faddp %st(1),%st
+fstpl Z
+fldl Z
+fstpl -1548(%ebp)
+fldl -1548(%ebp)
+fmull -1548(%ebp)
+fstpl X
+fldl X
+fstpl -1556(%ebp)
+fldl -1556(%ebp)
+fmull -1556(%ebp)
+fstpl Exp2
+fldl F9
+fstpl X
+fldl X
+fsubl U1
+fstpl Y
+fldl Exp2
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC618
+call printf
+addl $12,%esp
+movl $1,I
+.LC619:
+fldl X
+fsubl BInvrse
+fstpl Z
+fldl X
+faddl One
+fldl Z
+fldl One
+fsubl BInvrse
+fsubp %st(1),%st
+fdivp %st(1),%st
+fstpl Z
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+fldl X
+subl $8,%esp
+fstpl (%esp)
+call pow
+addl $16,%esp
+fstpl -1588(%ebp)
+fldl -1588(%ebp)
+fsubl Exp2
+fstpl Q
+fldl Q
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -1596(%ebp)
+fldl TwoForty
+fmull U2
+fcompl -1596(%ebp)
+fstsw %ax
+sahf
+jae .LC623
+movl $1,N
+fldl X
+fsubl BInvrse
+fldl One
+fsubl BInvrse
+fsubp %st(1),%st
+fstpl V9
+pushl $.LC625
+pushl $2
+call BadCond
+addl $8,%esp
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+fldl X
+subl $8,%esp
+fstpl (%esp)
+call pow
+addl $16,%esp
+fstpl -1612(%ebp)
+fldl -1612(%ebp)
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC626
+call printf
+addl $12,%esp
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+fldl V9
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC627
+call printf
+addl $20,%esp
+fldl Q
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC628
+call printf
+addl $12,%esp
+pushl $.LC629
+call printf
+addl $4,%esp
+pushl $.LC630
+call printf
+addl $4,%esp
+jmp .LC621
+.LC623:
+fldl Y
+fstpl -1604(%ebp)
+fldl -1604(%ebp)
+fsubl X
+fmull Two
+faddl -1604(%ebp)
+fstpl Z
+fldl -1604(%ebp)
+fstpl X
+fldl Z
+fstpl Y
+fldl X
+fsubl F9
+fstpl -1612(%ebp)
+fldl One
+fldl -1612(%ebp)
+fmull -1612(%ebp)
+faddp %st(1),%st
+fstpl Z
+fldl One
+fcompl Z
+fstsw %ax
+sahf
+jae .LC631
+movl NoTrials,%edi
+cmpl %edi,I
+jge .LC631
+incl I
+jmp .LC619
+.LC631:
+fldl One
+fcompl X
+fstsw %ax
+sahf
+jae .LC633
+cmpl $0,N
+jne .LC621
+pushl $.LC637
+call printf
+addl $4,%esp
+jmp .LC621
+.LC633:
+fldl One
+faddl U2
+fstpl X
+fldl U2
+faddl U2
+fstpl Y
+fldl Y
+faddl X
+fstpl Y
+movl $1,I
+jmp .LC619
+.LC621:
+movl $150,Milestone
+pushl $.LC638
+call printf
+addl $4,%esp
+movl $0,N
+fldl A1
+fstpl Z
+fldl C
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -1564(%ebp)
+fldl A1
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -1572(%ebp)
+fldl Half
+fldl -1564(%ebp)
+fdivl -1572(%ebp)
+fsubp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -1580(%ebp)
+fldl -1580(%ebp)
+fstpl Q
+movl $0,Break
+.LC639:
+fldl CInvrse
+fstpl X
+fldl Q
+subl $8,%esp
+fstpl (%esp)
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+call pow
+addl $16,%esp
+fstpl -1588(%ebp)
+fldl -1588(%ebp)
+fstpl Y
+call IsYeqX
+fldl Q
+fchs
+fstpl Q
+fldl C
+fstpl X
+fldl Q
+subl $8,%esp
+fstpl (%esp)
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+call pow
+addl $16,%esp
+fstpl -1596(%ebp)
+fldl -1596(%ebp)
+fstpl Y
+call IsYeqX
+fldl One
+fcompl Z
+fstsw %ax
+sahf
+jbe .LC642
+movl $1,Break
+jmp .LC643
+.LC642:
+fldl AInvrse
+fstpl Z
+.LC643:
+.LC640:
+cmpl $0,Break
+je .LC639
+call PrintIfNPositive
+cmpl $0,N
+jne .LC644
+pushl $.LC646
+call printf
+addl $4,%esp
+.LC644:
+pushl $.LC45
+call printf
+addl $4,%esp
+movl $160,Milestone
+call Pause
+pushl $.LC647
+call printf
+addl $4,%esp
+pushl $.LC648
+call printf
+addl $4,%esp
+fldl CInvrse
+fchs
+fstpl Y
+fldl HInvrse
+fmull Y
+fstpl V9
+leal sigfpe,%edi
+movl %edi,sigsave
+pushl $ovfl_buf
+call __setjmp
+addl $4,%esp
+cmpl $0,%eax
+je .LC649
+movl $0,I
+fldl Y
+fstpl V9
+jmp .LC651
+.LC649:
+.LC652:
+fldl Y
+fstpl V
+fldl V9
+fstpl Y
+fldl HInvrse
+fmull Y
+fstpl V9
+.LC653:
+fldl Y
+fcompl V9
+fstsw %ax
+sahf
+ja .LC652
+movl $1,I
+.LC651:
+movl $0,sigsave
+fldl V9
+fstpl Z
+pushl $.LC655
+call printf
+addl $4,%esp
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC656
+call printf
+addl $12,%esp
+fldl Y
+fchs
+fstpl V9
+fldl V9
+fstpl V0
+fldl V
+fsubl Y
+fldl V
+faddl V0
+fcompp
+fstsw %ax
+sahf
+jne .LC657
+pushl $.LC659
+call printf
+addl $4,%esp
+jmp .LC658
+.LC657:
+pushl $.LC660
+call printf
+addl $4,%esp
+pushl $.LC661
+pushl $3
+call BadCond
+addl $8,%esp
+.LC658:
+fldl Y
+fcompl Z
+fstsw %ax
+sahf
+je .LC662
+pushl $.LC158
+pushl $1
+call BadCond
+addl $8,%esp
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC664
+call printf
+addl $20,%esp
+.LC662:
+cmpl $0,I
+je .LC665
+fldl V
+fldl HInvrse
+fmull U2
+fsubl HInvrse
+fmulp %st(1),%st
+fstpl Y
+fldl Y
+fldl One
+fsubl HInvrse
+fmull U2
+fmull V
+faddp %st(1),%st
+fstpl Z
+fldl V0
+fcompl Z
+fstsw %ax
+sahf
+jbe .LC667
+fldl Z
+fstpl Y
+.LC667:
+fldl V0
+fcompl Y
+fstsw %ax
+sahf
+jbe .LC669
+fldl Y
+fstpl V
+.LC669:
+fldl V0
+fsubl V
+fldl V0
+fcompp
+fstsw %ax
+sahf
+jbe .LC666
+fldl V0
+fstpl V
+jmp .LC666
+.LC665:
+fldl Y
+fldl HInvrse
+fmull U2
+fsubl HInvrse
+fmulp %st(1),%st
+fstpl V
+fldl V
+fldl One
+fsubl HInvrse
+fmull U2
+fmull Y
+faddp %st(1),%st
+fstpl V
+.LC666:
+fldl V
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC673
+call printf
+addl $12,%esp
+cmpl $0,I
+je .LC674
+fldl V0
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC676
+call printf
+addl $12,%esp
+jmp .LC675
+.LC674:
+pushl $.LC677
+call printf
+addl $4,%esp
+.LC675:
+fldl V
+fmull One
+fstpl V9
+fldl V9
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC678
+call printf
+addl $12,%esp
+fldl V
+fdivl One
+fstpl V9
+fldl V9
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC679
+call printf
+addl $12,%esp
+pushl $.LC680
+call printf
+addl $4,%esp
+pushl $.LC681
+call printf
+addl $4,%esp
+movl $170,Milestone
+fldl V
+fchs
+fldl V
+fcompp
+fstsw %ax
+sahf
+jbe .LC686
+fldl V0
+fchs
+fldl V0
+fcompp
+fstsw %ax
+sahf
+jbe .LC686
+fldl UfThold
+fchs
+fldl V
+fcompp
+fstsw %ax
+sahf
+jbe .LC686
+fldl V
+fcompl UfThold
+fstsw %ax
+sahf
+ja .LC682
+.LC686:
+pushl $.LC687
+pushl $0
+call BadCond
+addl $8,%esp
+fldl UfThold
+subl $8,%esp
+fstpl (%esp)
+fldl V0
+subl $8,%esp
+fstpl (%esp)
+fldl V
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC688
+call printf
+addl $28,%esp
+.LC682:
+movl $175,Milestone
+pushl $.LC45
+call printf
+addl $4,%esp
+movl $1,Indx
+.LC689:
+movl Indx,%edi
+cmpl $1,%edi
+je .LC695
+cmpl $2,%edi
+je .LC696
+cmpl $3,%edi
+je .LC697
+jmp .LC693
+.LC695:
+fldl UfThold
+fstpl Z
+jmp .LC694
+.LC696:
+fldl E0
+fstpl Z
+jmp .LC694
+.LC697:
+fldl PseudoZero
+fstpl Z
+.LC693:
+.LC694:
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+je .LC698
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1628(%ebp)
+fldl -1628(%ebp)
+fstpl V9
+fldl V9
+fmull V9
+fstpl Y
+fldl Radix
+fmull E9
+fstpl -1660(%ebp)
+fldl Y
+fldl One
+fsubl -1660(%ebp)
+fdivp %st(1),%st
+fldl Z
+fcompp
+fstsw %ax
+sahf
+ja .LC702
+fldl One
+faddl -1660(%ebp)
+fmull Z
+fcompl Y
+fstsw %ax
+sahf
+jae .LC700
+.LC702:
+fldl U1
+fcompl V9
+fstsw %ax
+sahf
+jae .LC703
+pushl $.LC158
+pushl $1
+call BadCond
+addl $8,%esp
+jmp .LC704
+.LC703:
+pushl $.LC158
+pushl $2
+call BadCond
+addl $8,%esp
+.LC704:
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC705
+call printf
+addl $12,%esp
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC706
+call printf
+addl $12,%esp
+.LC700:
+.LC698:
+.LC690:
+incl Indx
+cmpl $3,Indx
+jle .LC689
+movl $180,Milestone
+movl $1,Indx
+.LC707:
+cmpl $1,Indx
+jne .LC711
+fldl V
+fstpl Z
+jmp .LC712
+.LC711:
+fldl V0
+fstpl Z
+.LC712:
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -1628(%ebp)
+fldl -1628(%ebp)
+fstpl V9
+fldl V9
+fstpl -1636(%ebp)
+fldl One
+fldl Radix
+fmull E9
+fsubp %st(1),%st
+fmull -1636(%ebp)
+fstpl X
+fldl -1636(%ebp)
+fmull X
+fstpl V9
+fldl One
+fldl Two
+fmull Radix
+fmull E9
+fsubp %st(1),%st
+fmull Z
+fcompl V9
+fstsw %ax
+sahf
+ja .LC715
+fldl Z
+fcompl V9
+fstsw %ax
+sahf
+jae .LC713
+.LC715:
+fldl V9
+fstpl Y
+fldl W
+fcompl X
+fstsw %ax
+sahf
+jbe .LC716
+pushl $.LC158
+pushl $1
+call BadCond
+addl $8,%esp
+jmp .LC717
+.LC716:
+pushl $.LC158
+pushl $2
+call BadCond
+addl $8,%esp
+.LC717:
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC718
+call printf
+addl $12,%esp
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC719
+call printf
+addl $12,%esp
+.LC713:
+.LC708:
+incl Indx
+cmpl $2,Indx
+jle .LC707
+movl $190,Milestone
+call Pause
+fldl UfThold
+fmull V
+fstpl X
+fldl Radix
+fmull Radix
+fstpl Y
+fldl X
+fmull Y
+fldl One
+fcompp
+fstsw %ax
+sahf
+ja .LC722
+fldl Y
+fcompl X
+fstsw %ax
+sahf
+jae .LC720
+.LC722:
+fldl X
+fmull Y
+fldl U1
+fcompp
+fstsw %ax
+sahf
+ja .LC725
+fldl Y
+fdivl U1
+fcompl X
+fstsw %ax
+sahf
+jae .LC723
+.LC725:
+pushl $.LC726
+pushl $2
+call BadCond
+addl $8,%esp
+jmp .LC724
+.LC723:
+pushl $.LC158
+pushl $3
+call BadCond
+addl $8,%esp
+.LC724:
+pushl $.LC728
+fldl X
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC727
+call printf
+addl $16,%esp
+.LC720:
+movl $200,Milestone
+movl $1,Indx
+.LC729:
+fldl F9
+fstpl X
+movl Indx,%edi
+cmpl $2,%edi
+jl .LC733
+cmpl $5,%edi
+jg .LC733
+jmp *.LC739-8(,%edi,4)
+.data
+.align 4
+.LC739:
+.long .LC735
+.long .LC736
+.long .LC737
+.long .LC738
+.text
+.LC735:
+fldl One
+faddl U2
+fstpl X
+jmp .LC734
+.LC736:
+fldl V
+fstpl X
+jmp .LC734
+.LC737:
+fldl UfThold
+fstpl X
+jmp .LC734
+.LC738:
+fldl Radix
+fstpl X
+.LC733:
+.LC734:
+fldl X
+fstpl Y
+leal sigfpe,%edi
+movl %edi,sigsave
+pushl $ovfl_buf
+call __setjmp
+addl $4,%esp
+cmpl $0,%eax
+je .LC741
+fldl X
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC743
+call printf
+addl $12,%esp
+jmp .LC742
+.LC741:
+fldl Y
+fdivl X
+fsubl Half
+fsubl Half
+fstpl V9
+fldl Zero
+fcompl V9
+fstsw %ax
+sahf
+jne .LC744
+jmp .LC730
+.LC744:
+fldl U1
+fchs
+fcompl V9
+fstsw %ax
+sahf
+jne .LC746
+cmpl $5,Indx
+jge .LC746
+pushl $.LC158
+pushl $3
+call BadCond
+addl $8,%esp
+jmp .LC747
+.LC746:
+pushl $.LC158
+pushl $1
+call BadCond
+addl $8,%esp
+.LC747:
+fldl X
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC748
+call printf
+addl $12,%esp
+fldl V9
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC749
+call printf
+addl $12,%esp
+.LC742:
+movl $0,sigsave
+.LC730:
+incl Indx
+cmpl $5,Indx
+jle .LC729
+movl $210,Milestone
+fldl Zero
+fstpl MyZero
+pushl $.LC45
+call printf
+addl $4,%esp
+pushl $.LC750
+call printf
+addl $4,%esp
+leal sigfpe,%edi
+movl %edi,sigsave
+pushl $.LC751
+call printf
+addl $4,%esp
+pushl $ovfl_buf
+call __setjmp
+addl $4,%esp
+cmpl $0,%eax
+jne .LC752
+fldl One
+fdivl MyZero
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC754
+call printf
+addl $12,%esp
+.LC752:
+movl $0,sigsave
+leal sigfpe,%edi
+movl %edi,sigsave
+pushl $.LC755
+call printf
+addl $4,%esp
+pushl $ovfl_buf
+call __setjmp
+addl $4,%esp
+cmpl $0,%eax
+jne .LC756
+fldl Zero
+fdivl MyZero
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC754
+call printf
+addl $12,%esp
+.LC756:
+movl $0,sigsave
+movl $220,Milestone
+call Pause
+pushl $.LC45
+call printf
+addl $4,%esp
+movl $0,-1648(%ebp)
+.LC763:
+movl -1648(%ebp),%edi
+cmpl $0,ErrCnt(,%edi,4)
+je .LC767
+movl -1648(%ebp),%edi
+leal (,%edi,4),%edi
+pushl ErrCnt(%edi)
+pushl msg.758(%edi)
+pushl $.LC769
+call printf
+addl $12,%esp
+.LC767:
+.LC764:
+incl -1648(%ebp)
+cmpl $4,-1648(%ebp)
+jl .LC763
+pushl $.LC45
+call printf
+addl $4,%esp
+movl ErrCnt,%edi
+movl ErrCnt+4,%esi
+leal (%esi,%edi),%edi
+movl ErrCnt+8,%esi
+leal (%esi,%edi),%edi
+movl ErrCnt+12,%esi
+leal (%esi,%edi),%edi
+cmpl $0,%edi
+jle .LC770
+movl ErrCnt,%edi
+movl ErrCnt+4,%esi
+leal (%esi,%edi),%edi
+movl ErrCnt+8,%esi
+leal (%esi,%edi),%edi
+cmpl $0,%edi
+jne .LC775
+cmpl $0,ErrCnt+12
+jle .LC775
+pushl $.LC780
+call printf
+addl $4,%esp
+pushl $.LC781
+call printf
+addl $4,%esp
+.LC775:
+movl ErrCnt,%edi
+movl ErrCnt+4,%esi
+leal (%esi,%edi),%edi
+cmpl $0,%edi
+jne .LC782
+cmpl $0,ErrCnt+8
+jle .LC782
+pushl $.LC786
+call printf
+addl $4,%esp
+pushl $.LC787
+call printf
+addl $4,%esp
+.LC782:
+movl ErrCnt,%edi
+movl ErrCnt+4,%esi
+leal (%esi,%edi),%edi
+cmpl $0,%edi
+jle .LC788
+pushl $.LC791
+call printf
+addl $4,%esp
+pushl $.LC792
+call printf
+addl $4,%esp
+.LC788:
+cmpl $0,ErrCnt
+jle .LC771
+pushl $.LC795
+call printf
+addl $4,%esp
+pushl $.LC796
+call printf
+addl $4,%esp
+jmp .LC771
+.LC770:
+pushl $.LC797
+call printf
+addl $4,%esp
+cmpl $1,RMult
+jne .LC802
+cmpl $1,RDiv
+jne .LC802
+cmpl $1,RAddSub
+jne .LC802
+cmpl $1,RSqrt
+je .LC798
+.LC802:
+pushl $.LC803
+call printf
+addl $4,%esp
+jmp .LC799
+.LC798:
+fldl One
+fcompl StickyBit
+fstsw %ax
+sahf
+ja .LC804
+fldl Radix
+fsubl Two
+fldl Radix
+fsubl Nine
+fsubl One
+fmulp %st(1),%st
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC804
+pushl $.LC806
+call printf
+addl $4,%esp
+pushl $.LC807
+call printf
+addl $4,%esp
+fldl Two
+fcompl Radix
+fstsw %ax
+sahf
+jne .LC808
+fldl Precision
+fldl Four
+fmull Three
+fmull Two
+fsubp %st(1),%st
+fldl Precision
+fsubl TwentySeven
+fsubl TwentySeven
+faddl One
+fmulp %st(1),%st
+fldl Zero
+fcompp
+fstsw %ax
+sahf
+jne .LC808
+pushl $.LC810
+call printf
+addl $4,%esp
+jmp .LC809
+.LC808:
+pushl $.LC811
+call printf
+addl $4,%esp
+.LC809:
+cmpl $0,IEEE
+je .LC812
+pushl $.LC814
+call printf
+addl $4,%esp
+jmp .LC813
+.LC812:
+pushl $.LC815
+call printf
+addl $4,%esp
+pushl $.LC816
+call printf
+addl $4,%esp
+.LC813:
+.LC804:
+pushl $.LC817
+call printf
+addl $4,%esp
+.LC799:
+.LC771:
+cmpl $0,fpecount
+je .LC818
+pushl fpecount
+pushl $.LC820
+call printf
+addl $8,%esp
+.LC818:
+pushl $.LC821
+call printf
+addl $4,%esp
+movl $0,%eax
+.LC7:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf822:
+.size main,.Lf822-main
+.globl Sign
+.align 16
+.type Sign,@function
+Sign:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+fldl .LC8
+fcompl 20(%ebp)
+fstsw %ax
+sahf
+ja .LC825
+fldl .LC9
+fstpl -8(%ebp)
+jmp .LC826
+.LC825:
+fldl .LC827
+fstpl -8(%ebp)
+.LC826:
+fldl -8(%ebp)
+.LC823:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf828:
+.size Sign,.Lf828-Sign
+.globl Pause
+.align 16
+.type Pause,@function
+Pause:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl Milestone
+pushl $.LC830
+call printf
+addl $8,%esp
+pushl PageNo
+pushl $.LC831
+call printf
+addl $8,%esp
+incl Milestone
+incl PageNo
+movl $0,%eax
+.LC829:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf832:
+.size Pause,.Lf832-Pause
+.globl TstCond
+.align 16
+.type TstCond,@function
+TstCond:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+cmpl $0,24(%ebp)
+jne .LC834
+pushl 28(%ebp)
+pushl 20(%ebp)
+call BadCond
+addl $8,%esp
+pushl $.LC814
+call printf
+addl $4,%esp
+.LC834:
+movl $0,%eax
+.LC833:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf836:
+.size TstCond,.Lf836-TstCond
+.data
+.align 4
+.type msg.838,@object
+msg.838:
+.long .LC839
+.long .LC840
+.long .LC841
+.long .LC842
+.size msg.838,16
+.globl BadCond
+.text
+.align 16
+.type BadCond,@function
+BadCond:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 20(%ebp),%edi
+leal ErrCnt(,%edi,4),%edi
+incl (,%edi)
+pushl 24(%ebp)
+movl 20(%ebp),%edi
+pushl msg.838(,%edi,4)
+pushl $.LC843
+call printf
+addl $12,%esp
+movl $0,%eax
+.LC837:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf844:
+.size BadCond,.Lf844-BadCond
+.globl Random
+.align 16
+.type Random,@function
+Random:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $48,%esp
+fldl Random1
+faddl Random9
+fstpl -8(%ebp)
+fldl -8(%ebp)
+fmull -8(%ebp)
+fstpl -16(%ebp)
+fldl -16(%ebp)
+fmull -16(%ebp)
+fstpl -16(%ebp)
+fldl -8(%ebp)
+fmull -16(%ebp)
+fstpl -8(%ebp)
+fldl -8(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -48(%ebp)
+fldl -8(%ebp)
+fsubl -48(%ebp)
+fstpl -16(%ebp)
+fldl -16(%ebp)
+fldl .LC846
+fmull -8(%ebp)
+faddp %st(1),%st
+fstpl Random1
+fldl Random1
+.LC845:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf847:
+.size Random,.Lf847-Random
+.globl SqXMinX
+.align 16
+.type SqXMinX,@function
+SqXMinX:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $40,%esp
+fldl X
+fmull BInvrse
+fstpl -8(%ebp)
+fldl X
+fsubl -8(%ebp)
+fstpl -16(%ebp)
+fldl X
+fmull X
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -32(%ebp)
+fldl -32(%ebp)
+fsubl -8(%ebp)
+fsubl -16(%ebp)
+fdivl OneUlp
+fstpl SqEr
+fldl Zero
+fcompl SqEr
+fstsw %ax
+sahf
+je .LC849
+fldl MinSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jbe .LC851
+fldl SqEr
+fstpl MinSqEr
+.LC851:
+fldl MaxSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jae .LC853
+fldl SqEr
+fstpl MaxSqEr
+.LC853:
+fldl J
+faddl .LC9
+fstpl J
+pushl $.LC45
+pushl 20(%ebp)
+call BadCond
+addl $8,%esp
+fldl OneUlp
+fmull SqEr
+subl $8,%esp
+fstpl (%esp)
+fldl X
+subl $8,%esp
+fstpl (%esp)
+fldl X
+fmull X
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC855
+call printf
+addl $28,%esp
+pushl $.LC856
+call printf
+addl $4,%esp
+.LC849:
+movl $0,%eax
+.LC848:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf857:
+.size SqXMinX,.Lf857-SqXMinX
+.globl NewD
+.align 16
+.type NewD,@function
+NewD:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $40,%esp
+fldl Z1
+fmull Q
+fstpl X
+fldl Half
+fldl X
+fdivl Radix
+fsubp %st(1),%st
+subl $8,%esp
+fstpl (%esp)
+call floor
+addl $8,%esp
+fstpl -8(%ebp)
+fldl -8(%ebp)
+fmull Radix
+faddl X
+fstpl X
+fldl X
+fstpl -24(%ebp)
+fldl Z
+fstpl -32(%ebp)
+fldl Q
+fldl -24(%ebp)
+fmull -32(%ebp)
+fsubp %st(1),%st
+fdivl Radix
+fldl -24(%ebp)
+fmull -24(%ebp)
+fldl D
+fdivl Radix
+fmulp %st(1),%st
+faddp %st(1),%st
+fstpl Q
+fldl -32(%ebp)
+fldl Two
+fmull -24(%ebp)
+fmull D
+fsubp %st(1),%st
+fstpl Z
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jb .LC859
+fldl Z
+fchs
+fstpl Z
+fldl Z1
+fchs
+fstpl Z1
+.LC859:
+fldl Radix
+fmull D
+fstpl D
+movl $0,%eax
+.LC858:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf861:
+.size NewD,.Lf861-NewD
+.globl SR3750
+.align 16
+.type SR3750,@function
+SR3750:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $64,%esp
+fldl X
+fsubl Radix
+fldl Z2
+fsubl Radix
+fcompp
+fstsw %ax
+sahf
+ja .LC863
+fldl X
+fsubl Z2
+fldl W
+fsubl Z2
+fcompp
+fstsw %ax
+sahf
+jb .LC863
+incl I
+fldl X
+fmull D
+subl $8,%esp
+fstpl (%esp)
+call sqrt
+addl $8,%esp
+fstpl -32(%ebp)
+fldl -32(%ebp)
+fstpl X2
+fldl X2
+fsubl Z2
+fldl Y
+fsubl Z2
+fsubp %st(1),%st
+fstpl Y2
+fldl X8
+fldl Y
+fsubl Half
+fdivp %st(1),%st
+fstpl X2
+fldl X2
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fldl Half
+fmull -64(%ebp)
+fmull -64(%ebp)
+fsubp %st(1),%st
+fstpl X2
+fldl Y2
+faddl Half
+fldl Half
+fsubl X2
+faddp %st(1),%st
+fstpl SqEr
+fldl MinSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jbe .LC865
+fldl SqEr
+fstpl MinSqEr
+.LC865:
+fldl Y2
+fsubl X2
+fstpl SqEr
+fldl MaxSqEr
+fcompl SqEr
+fstsw %ax
+sahf
+jae .LC867
+fldl SqEr
+fstpl MaxSqEr
+.LC867:
+.LC863:
+movl $0,%eax
+.LC862:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf869:
+.size SR3750,.Lf869-SR3750
+.globl IsYeqX
+.align 16
+.type IsYeqX,@function
+IsYeqX:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+fldl X
+fcompl Y
+fstsw %ax
+sahf
+je .LC871
+cmpl $0,N
+jg .LC873
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+jne .LC875
+fldl Zero
+fcompl Q
+fstsw %ax
+sahf
+jb .LC875
+pushl $.LC877
+call printf
+addl $4,%esp
+jmp .LC876
+.LC875:
+pushl $.LC878
+pushl $2
+call BadCond
+addl $8,%esp
+.LC876:
+fldl Q
+subl $8,%esp
+fstpl (%esp)
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC879
+call printf
+addl $20,%esp
+fldl Y
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC880
+call printf
+addl $12,%esp
+fldl X
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC881
+call printf
+addl $12,%esp
+fldl Y
+fsubl X
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC882
+call printf
+addl $12,%esp
+.LC873:
+incl N
+.LC871:
+movl $0,%eax
+.LC870:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf883:
+.size IsYeqX,.Lf883-IsYeqX
+.globl SR3980
+.align 16
+.type SR3980,@function
+SR3980:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+.LC885:
+fildl I
+fstpl Q
+fldl Q
+subl $8,%esp
+fstpl (%esp)
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+call pow
+addl $16,%esp
+fstpl -8(%ebp)
+fldl -8(%ebp)
+fstpl Y
+call IsYeqX
+movl I,%edi
+leal 1(%edi),%edi
+movl %edi,I
+cmpl M,%edi
+jle .LC888
+jmp .LC887
+.LC888:
+fldl Z
+fmull X
+fstpl X
+.LC886:
+fldl W
+fcompl X
+fstsw %ax
+sahf
+ja .LC885
+.LC887:
+movl $0,%eax
+.LC884:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf890:
+.size SR3980,.Lf890-SR3980
+.globl PrintIfNPositive
+.align 16
+.type PrintIfNPositive,@function
+PrintIfNPositive:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+cmpl $0,N
+jle .LC892
+pushl N
+pushl $.LC894
+call printf
+addl $8,%esp
+.LC892:
+movl $0,%eax
+.LC891:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf895:
+.size PrintIfNPositive,.Lf895-PrintIfNPositive
+.globl TstPtUf
+.align 16
+.type TstPtUf,@function
+TstPtUf:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $48,%esp
+movl $0,N
+fldl Zero
+fcompl Z
+fstsw %ax
+sahf
+je .LC897
+pushl $.LC899
+call printf
+addl $4,%esp
+pushl $.LC900
+call printf
+addl $4,%esp
+leal sigfpe,%edi
+movl %edi,sigsave
+pushl $ovfl_buf
+call __setjmp
+addl $4,%esp
+cmpl $0,%eax
+je .LC901
+jmp .LC903
+.LC901:
+fldl Z
+faddl Z
+fdivl Z
+fstpl Q9
+fldl Q9
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC904
+call printf
+addl $12,%esp
+fldl Q9
+fsubl Two
+subl $8,%esp
+fstpl (%esp)
+call fabs
+addl $8,%esp
+fstpl -16(%ebp)
+fldl Radix
+fmull U2
+fcompl -16(%ebp)
+fstsw %ax
+sahf
+jbe .LC905
+pushl $.LC907
+call printf
+addl $4,%esp
+pushl $.LC908
+call printf
+addl $4,%esp
+jmp .LC906
+.LC905:
+fldl One
+fcompl Q9
+fstsw %ax
+sahf
+ja .LC911
+fldl Two
+fcompl Q9
+fstsw %ax
+sahf
+jae .LC909
+.LC911:
+.LC903:
+movl $1,N
+movl ErrCnt+4,%edi
+leal 1(%edi),%edi
+movl %edi,ErrCnt+4
+pushl $.LC914
+call printf
+addl $4,%esp
+jmp .LC910
+.LC909:
+movl $1,N
+movl ErrCnt+8,%edi
+leal 1(%edi),%edi
+movl %edi,ErrCnt+8
+pushl $.LC917
+call printf
+addl $4,%esp
+.LC910:
+.LC906:
+movl $0,sigsave
+fldl Z
+fmull One
+fstpl V9
+fldl V9
+fstpl Random1
+fldl One
+fmull Z
+fstpl V9
+fldl V9
+fstpl Random2
+fldl Z
+fdivl One
+fstpl V9
+fldl Random1
+fcompl Z
+fstsw %ax
+sahf
+jne .LC918
+fldl Random2
+fcompl Z
+fstsw %ax
+sahf
+jne .LC918
+fldl V9
+fcompl Z
+fstsw %ax
+sahf
+jne .LC918
+cmpl $0,N
+jle .LC919
+call Pause
+jmp .LC919
+.LC918:
+movl $1,N
+pushl $.LC922
+pushl $2
+call BadCond
+addl $8,%esp
+fldl Z
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC923
+call printf
+addl $12,%esp
+fldl Random1
+fcompl Z
+fstsw %ax
+sahf
+je .LC924
+fldl Random1
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC926
+call printf
+addl $12,%esp
+.LC924:
+fldl Random2
+fcompl Z
+fstsw %ax
+sahf
+je .LC927
+fldl Random1
+fcompl Random2
+fstsw %ax
+sahf
+je .LC927
+fldl Random2
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC929
+call printf
+addl $12,%esp
+.LC927:
+fldl V9
+fcompl Z
+fstsw %ax
+sahf
+je .LC930
+fldl V9
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC932
+call printf
+addl $12,%esp
+.LC930:
+fldl Random1
+fcompl Random2
+fstsw %ax
+sahf
+je .LC933
+movl ErrCnt+8,%edi
+leal 1(%edi),%edi
+movl %edi,ErrCnt+8
+pushl $.LC937
+pushl $2
+call BadCond
+addl $8,%esp
+fldl Random2
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC938
+call printf
+addl $12,%esp
+fldl Random1
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC939
+call printf
+addl $12,%esp
+.LC933:
+call Pause
+.LC919:
+.LC897:
+movl $0,%eax
+.LC896:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf940:
+.size TstPtUf,.Lf940-TstPtUf
+.globl notify
+.align 16
+.type notify,@function
+notify:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl 20(%ebp)
+pushl $.LC942
+call printf
+addl $8,%esp
+pushl $.LC943
+call printf
+addl $4,%esp
+movl $0,%eax
+.LC941:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf944:
+.size notify,.Lf944-notify
+.globl msglist
+.align 16
+.type msglist,@function
+msglist:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+jmp .LC947
+.LC946:
+movl 20(%ebp),%edi
+leal 4(%edi),%esi
+movl %esi,20(%ebp)
+pushl (,%edi)
+pushl $.LC949
+call printf
+addl $8,%esp
+.LC947:
+movl 20(%ebp),%edi
+movl (,%edi),%edi
+cmpl $0,%edi
+jne .LC946
+movl $0,%eax
+.LC945:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf950:
+.size msglist,.Lf950-msglist
+.data
+.align 4
+.type instr.952,@object
+instr.952:
+.long .LC953
+.long .LC954
+.long .LC955
+.long .LC956
+.long .LC957
+.long .LC958
+.long .LC959
+.long .LC960
+.long .LC961
+.long 0
+.size instr.952,40
+.globl Instructions
+.text
+.align 16
+.type Instructions,@function
+Instructions:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl $instr.952
+call msglist
+addl $4,%esp
+movl $0,%eax
+.LC951:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf962:
+.size Instructions,.Lf962-Instructions
+.data
+.align 4
+.type head.964,@object
+head.964:
+.long .LC965
+.long .LC966
+.long .LC967
+.long .LC968
+.long .LC969
+.long .LC970
+.long .LC971
+.long .LC972
+.long .LC973
+.long .LC974
+.long .LC975
+.long .LC976
+.long .LC977
+.long .LC978
+.long 0
+.size head.964,60
+.globl Heading
+.text
+.align 16
+.type Heading,@function
+Heading:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl $head.964
+call msglist
+addl $4,%esp
+movl $0,%eax
+.LC963:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf979:
+.size Heading,.Lf979-Heading
+.data
+.align 4
+.type chars.981,@object
+chars.981:
+.long .LC982
+.long .LC983
+.long .LC984
+.long .LC985
+.long .LC986
+.long .LC987
+.long .LC988
+.long .LC989
+.long .LC990
+.long .LC991
+.long .LC992
+.long .LC993
+.long .LC994
+.long .LC995
+.long .LC996
+.long .LC997
+.long .LC998
+.long .LC999
+.long .LC1000
+.long 0
+.size chars.981,80
+.globl Characteristics
+.text
+.align 16
+.type Characteristics,@function
+Characteristics:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl $chars.981
+call msglist
+addl $4,%esp
+movl $0,%eax
+.LC980:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf1001:
+.size Characteristics,.Lf1001-Characteristics
+.data
+.align 4
+.type hist.1003,@object
+hist.1003:
+.long .LC1004
+.long .LC1005
+.long .LC1006
+.long .LC1007
+.long .LC1008
+.long .LC1009
+.long .LC1010
+.long .LC1011
+.long .LC1012
+.long .LC1013
+.long .LC1014
+.long .LC1015
+.long .LC1016
+.long .LC1017
+.long .LC1018
+.long .LC1019
+.long .LC1020
+.long 0
+.size hist.1003,72
+.globl History
+.text
+.align 16
+.type History,@function
+History:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl $hist.1003
+call msglist
+addl $4,%esp
+movl $0,%eax
+.LC1002:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf1021:
+.size History,.Lf1021-History
+.globl pow
+.align 16
+.type pow,@function
+pow:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $96,%esp
+movl $0,-20(%ebp)
+movl $0,-24(%ebp)
+fldl .LC8
+fcompl 28(%ebp)
+fstsw %ax
+sahf
+jne .LC1023
+fldl .LC9
+jmp .LC1022
+.LC1023:
+fldl .LC1028
+fcompl 28(%ebp)
+fstsw %ax
+sahf
+ja .LC1027
+fldl .LC1029
+fcompl 28(%ebp)
+fstsw %ax
+sahf
+jae .LC1025
+.LC1027:
+fldl .LC827
+fcompl 20(%ebp)
+fstsw %ax
+sahf
+je .LC1025
+fldl 20(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -48(%ebp)
+fldl 28(%ebp)
+fmull -48(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call exp
+addl $8,%esp
+fstpl -56(%ebp)
+fldl -56(%ebp)
+jmp .LC1022
+.LC1025:
+fldl .LC8
+fcompl 28(%ebp)
+fstsw %ax
+sahf
+jbe .LC1030
+fldl 28(%ebp)
+fchs
+fstpl 28(%ebp)
+movl $1,-24(%ebp)
+.LC1030:
+leal -32(%ebp),%edi
+pushl %edi
+fldl 28(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call modf
+addl $12,%esp
+fstpl -64(%ebp)
+fldl -64(%ebp)
+fstpl 28(%ebp)
+fldl .LC8
+fcompl 28(%ebp)
+fstsw %ax
+sahf
+je .LC1032
+fldl 20(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call log
+addl $8,%esp
+fstpl -72(%ebp)
+fldl 28(%ebp)
+fmull -72(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call exp
+addl $8,%esp
+fstpl -80(%ebp)
+fldl -80(%ebp)
+fstpl -16(%ebp)
+jmp .LC1033
+.LC1032:
+fldl .LC9
+fstpl -16(%ebp)
+.LC1033:
+leal -8(%ebp),%edi
+pushl %edi
+fldl 20(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call frexp
+addl $12,%esp
+fstpl -88(%ebp)
+fldl -88(%ebp)
+fstpl 20(%ebp)
+fldl -32(%ebp)
+subl $4,%esp
+fistpl 0(%esp)
+popl %eax
+movl %eax,-4(%ebp)
+cmpl $0,%eax
+je .LC1034
+.LC1036:
+movl -4(%ebp),%edi
+andl $1,%edi
+cmpl $0,%edi
+je .LC1040
+fldl -16(%ebp)
+fmull 20(%ebp)
+fstpl -16(%ebp)
+movl -8(%ebp),%edi
+addl %edi,-20(%ebp)
+.LC1040:
+movl -4(%ebp),%edi
+sarl $1,%edi
+movl %edi,-4(%ebp)
+cmpl $0,%edi
+jne .LC1042
+jmp .LC1038
+.LC1042:
+fldl 20(%ebp)
+fmull 20(%ebp)
+fstpl 20(%ebp)
+sall $1,-8(%ebp)
+fldl .LC1046
+fcompl 20(%ebp)
+fstsw %ax
+sahf
+jbe .LC1036
+fldl .LC1047
+fmull 20(%ebp)
+fstpl 20(%ebp)
+decl -8(%ebp)
+jmp .LC1036
+.LC1038:
+.LC1034:
+cmpl $0,-24(%ebp)
+je .LC1048
+fldl .LC9
+fdivl -16(%ebp)
+fstpl -16(%ebp)
+negl -20(%ebp)
+.LC1048:
+pushl -20(%ebp)
+fldl -16(%ebp)
+subl $8,%esp
+fstpl (%esp)
+call ldexp
+addl $12,%esp
+fstpl -96(%ebp)
+fldl -96(%ebp)
+.LC1022:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf1050:
+.size pow,.Lf1050-pow
+.bss
+.globl UfNGrad
+.align 4
+.type UfNGrad,@object
+.size UfNGrad,4
+.comm UfNGrad,4
+.globl SqRWrng
+.align 4
+.type SqRWrng,@object
+.size SqRWrng,4
+.comm SqRWrng,4
+.globl IEEE
+.align 4
+.type IEEE,@object
+.size IEEE,4
+.comm IEEE,4
+.globl Anomaly
+.align 4
+.type Anomaly,@object
+.size Anomaly,4
+.comm Anomaly,4
+.globl Monot
+.align 4
+.type Monot,@object
+.size Monot,4
+.comm Monot,4
+.globl NotMonot
+.align 4
+.type NotMonot,@object
+.size NotMonot,4
+.comm NotMonot,4
+.globl Done
+.align 4
+.type Done,@object
+.size Done,4
+.comm Done,4
+.globl Break
+.align 4
+.type Break,@object
+.size Break,4
+.comm Break,4
+.globl RSqrt
+.align 4
+.type RSqrt,@object
+.size RSqrt,4
+.comm RSqrt,4
+.globl RAddSub
+.align 4
+.type RAddSub,@object
+.size RAddSub,4
+.comm RAddSub,4
+.globl RDiv
+.align 4
+.type RDiv,@object
+.size RDiv,4
+.comm RDiv,4
+.globl RMult
+.align 4
+.type RMult,@object
+.size RMult,4
+.comm RMult,4
+.globl GAddSub
+.align 4
+.type GAddSub,@object
+.size GAddSub,4
+.comm GAddSub,4
+.globl GDiv
+.align 4
+.type GDiv,@object
+.size GDiv,4
+.comm GDiv,4
+.globl GMult
+.align 4
+.type GMult,@object
+.size GMult,4
+.comm GMult,4
+.globl N1
+.align 4
+.type N1,@object
+.size N1,4
+.comm N1,4
+.globl N
+.align 4
+.type N,@object
+.size N,4
+.comm N,4
+.globl M
+.align 4
+.type M,@object
+.size M,4
+.comm M,4
+.globl PageNo
+.align 4
+.type PageNo,@object
+.size PageNo,4
+.comm PageNo,4
+.globl Milestone
+.align 4
+.type Milestone,@object
+.size Milestone,4
+.comm Milestone,4
+.globl fpecount
+.align 4
+.type fpecount,@object
+.size fpecount,4
+.comm fpecount,4
+.globl ErrCnt
+.align 4
+.type ErrCnt,@object
+.size ErrCnt,16
+.comm ErrCnt,16
+.globl Z9
+.align 4
+.type Z9,@object
+.size Z9,8
+.comm Z9,8
+.globl Z2
+.align 4
+.type Z2,@object
+.size Z2,8
+.comm Z2,8
+.globl Z1
+.align 4
+.type Z1,@object
+.size Z1,8
+.comm Z1,8
+.globl PseudoZero
+.align 4
+.type PseudoZero,@object
+.size PseudoZero,8
+.comm PseudoZero,8
+.globl Z
+.align 4
+.type Z,@object
+.size Z,8
+.comm Z,8
+.globl Random2
+.align 4
+.type Random2,@object
+.size Random2,8
+.comm Random2,8
+.globl Y2
+.align 4
+.type Y2,@object
+.size Y2,8
+.comm Y2,8
+.globl Y1
+.align 4
+.type Y1,@object
+.size Y1,8
+.comm Y1,8
+.globl Y
+.align 4
+.type Y,@object
+.size Y,8
+.comm Y,8
+.globl Random1
+.align 4
+.type Random1,@object
+.size Random1,8
+.comm Random1,8
+.globl X8
+.align 4
+.type X8,@object
+.size X8,8
+.comm X8,8
+.globl X2
+.align 4
+.type X2,@object
+.size X2,8
+.comm X2,8
+.globl X1
+.align 4
+.type X1,@object
+.size X1,8
+.comm X1,8
+.globl X
+.align 4
+.type X,@object
+.size X,8
+.comm X,8
+.globl W
+.align 4
+.type W,@object
+.size W,8
+.comm W,8
+.globl V9
+.align 4
+.type V9,@object
+.size V9,8
+.comm V9,8
+.globl V0
+.align 4
+.type V0,@object
+.size V0,8
+.comm V0,8
+.globl V
+.align 4
+.type V,@object
+.size V,8
+.comm V,8
+.globl U2
+.align 4
+.type U2,@object
+.size U2,8
+.comm U2,8
+.globl U1
+.align 4
+.type U1,@object
+.size U1,8
+.comm U1,8
+.globl UfThold
+.align 4
+.type UfThold,@object
+.size UfThold,8
+.comm UfThold,8
+.globl OneUlp
+.align 4
+.type OneUlp,@object
+.size OneUlp,8
+.comm OneUlp,8
+.globl S
+.align 4
+.type S,@object
+.size S,8
+.comm S,8
+.globl Underflow
+.align 4
+.type Underflow,@object
+.size Underflow,8
+.comm Underflow,8
+.globl T
+.align 4
+.type T,@object
+.size T,8
+.comm T,8
+.globl Random9
+.align 4
+.type Random9,@object
+.size Random9,8
+.comm Random9,8
+.globl R
+.align 4
+.type R,@object
+.size R,8
+.comm R,8
+.globl Q9
+.align 4
+.type Q9,@object
+.size Q9,8
+.comm Q9,8
+.globl Q
+.align 4
+.type Q,@object
+.size Q,8
+.comm Q,8
+.globl Precision
+.align 4
+.type Precision,@object
+.size Precision,8
+.comm Precision,8
+.globl MyZero
+.align 4
+.type MyZero,@object
+.size MyZero,8
+.comm MyZero,8
+.globl J
+.align 4
+.type J,@object
+.size J,8
+.comm J,8
+.globl StickyBit
+.align 4
+.type StickyBit,@object
+.size StickyBit,8
+.comm StickyBit,8
+.globl I
+.align 4
+.type I,@object
+.size I,4
+.comm I,4
+.globl HInvrse
+.align 4
+.type HInvrse,@object
+.size HInvrse,8
+.comm HInvrse,8
+.globl H
+.align 4
+.type H,@object
+.size H,8
+.comm H,8
+.globl F9
+.align 4
+.type F9,@object
+.size F9,8
+.comm F9,8
+.globl F6
+.align 4
+.type F6,@object
+.size F6,8
+.comm F6,8
+.globl Third
+.align 4
+.type Third,@object
+.size Third,8
+.comm Third,8
+.globl E9
+.align 4
+.type E9,@object
+.size E9,8
+.comm E9,8
+.globl MaxSqEr
+.align 4
+.type MaxSqEr,@object
+.size MaxSqEr,8
+.comm MaxSqEr,8
+.globl SqEr
+.align 4
+.type SqEr,@object
+.size SqEr,8
+.comm SqEr,8
+.globl MinSqEr
+.align 4
+.type MinSqEr,@object
+.size MinSqEr,8
+.comm MinSqEr,8
+.globl E3
+.align 4
+.type E3,@object
+.size E3,8
+.comm E3,8
+.globl Exp2
+.align 4
+.type Exp2,@object
+.size Exp2,8
+.comm Exp2,8
+.globl E1
+.align 4
+.type E1,@object
+.size E1,8
+.comm E1,8
+.globl E0
+.align 4
+.type E0,@object
+.size E0,8
+.comm E0,8
+.globl FourD
+.align 4
+.type FourD,@object
+.size FourD,8
+.comm FourD,8
+.globl D
+.align 4
+.type D,@object
+.size D,8
+.comm D,8
+.globl CInvrse
+.align 4
+.type CInvrse,@object
+.size CInvrse,8
+.comm CInvrse,8
+.globl C
+.align 4
+.type C,@object
+.size C,8
+.comm C,8
+.globl A1
+.align 4
+.type A1,@object
+.size A1,8
+.comm A1,8
+.globl AInvrse
+.align 4
+.type AInvrse,@object
+.size AInvrse,8
+.comm AInvrse,8
+.globl ch
+.align 1
+.type ch,@object
+.size ch,8
+.comm ch,8
+.globl Indx
+.align 4
+.type Indx,@object
+.size Indx,4
+.comm Indx,4
+.globl BMinusU2
+.align 4
+.type BMinusU2,@object
+.size BMinusU2,8
+.comm BMinusU2,8
+.globl RadixD2
+.align 4
+.type RadixD2,@object
+.size RadixD2,8
+.comm RadixD2,8
+.globl BInvrse
+.align 4
+.type BInvrse,@object
+.size BInvrse,8
+.comm BInvrse,8
+.globl Radix
+.align 4
+.type Radix,@object
+.size Radix,8
+.comm Radix,8
+.globl sigsave
+.align 4
+.type sigsave,@object
+.size sigsave,4
+.comm sigsave,4
+.globl ovfl_buf
+.align 4
+.type ovfl_buf,@object
+.size ovfl_buf,24
+.comm ovfl_buf,24
+.data
+.align 4
+.LC1047:
+.long 0
+.long 1073741824
+.align 4
+.LC1046:
+.long 0
+.long 1071644672
+.align 4
+.LC1029:
+.long 0
+.long 1083256832
+.align 4
+.LC1028:
+.long 0
+.long -1064226816
+.align 1
+.LC1020:
+.byte 115
+.byte 101
+.byte 101
+.byte 32
+.byte 115
+.byte 111
+.byte 117
+.byte 114
+.byte 99
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 109
+.byte 111
+.byte 114
+.byte 101
+.byte 32
+.byte 104
+.byte 105
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 46
+.byte 0
+.align 1
+.LC1019:
+.byte 66
+.byte 65
+.byte 83
+.byte 73
+.byte 67
+.byte 32
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 40
+.byte 67
+.byte 41
+.byte 32
+.byte 49
+.byte 57
+.byte 56
+.byte 51
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 80
+.byte 114
+.byte 111
+.byte 102
+.byte 46
+.byte 32
+.byte 87
+.byte 46
+.byte 32
+.byte 77
+.byte 46
+.byte 32
+.byte 75
+.byte 97
+.byte 104
+.byte 97
+.byte 110
+.byte 59
+.byte 0
+.align 1
+.LC1018:
+.byte 97
+.byte 115
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 99
+.byte 101
+.byte 114
+.byte 116
+.byte 97
+.byte 105
+.byte 110
+.byte 32
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 121
+.byte 32
+.byte 87
+.byte 65
+.byte 78
+.byte 71
+.byte 32
+.byte 109
+.byte 97
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC1017:
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 45
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 44
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 108
+.byte 115
+.byte 111
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 32
+.byte 108
+.byte 111
+.byte 103
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 105
+.byte 99
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.LC1016:
+.byte 10
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 98
+.byte 97
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 117
+.byte 112
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 110
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 114
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 114
+.byte 101
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 101
+.byte 110
+.byte 116
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 0
+.align 1
+.LC1015:
+.byte 111
+.byte 102
+.byte 32
+.byte 112
+.byte 97
+.byte 116
+.byte 104
+.byte 111
+.byte 108
+.byte 111
+.byte 103
+.byte 105
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 115
+.byte 97
+.byte 121
+.byte 32
+.byte 104
+.byte 111
+.byte 119
+.byte 32
+.byte 119
+.byte 101
+.byte 108
+.byte 108
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 109
+.byte 112
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.LC1014:
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 116
+.byte 114
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 112
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 119
+.byte 105
+.byte 100
+.byte 101
+.byte 114
+.byte 32
+.byte 118
+.byte 97
+.byte 114
+.byte 105
+.byte 101
+.byte 116
+.byte 121
+.byte 0
+.align 1
+.LC1013:
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 44
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 32
+.byte 40
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 115
+.byte 41
+.byte 0
+.align 1
+.LC1012:
+.byte 87
+.byte 46
+.byte 32
+.byte 74
+.byte 46
+.byte 32
+.byte 67
+.byte 111
+.byte 100
+.byte 121
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 87
+.byte 46
+.byte 32
+.byte 87
+.byte 97
+.byte 105
+.byte 116
+.byte 101
+.byte 46
+.byte 32
+.byte 65
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 98
+.byte 111
+.byte 116
+.byte 104
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 115
+.byte 32
+.byte 116
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.LC1011:
+.byte 98
+.byte 111
+.byte 111
+.byte 107
+.byte 32
+.byte 32
+.byte 96
+.byte 83
+.byte 111
+.byte 102
+.byte 116
+.byte 119
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 77
+.byte 97
+.byte 110
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 69
+.byte 108
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 70
+.byte 117
+.byte 110
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 39
+.byte 32
+.byte 40
+.byte 49
+.byte 57
+.byte 56
+.byte 48
+.byte 41
+.byte 32
+.byte 98
+.byte 121
+.byte 0
+.align 1
+.LC1010:
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 96
+.byte 77
+.byte 65
+.byte 67
+.byte 72
+.byte 65
+.byte 82
+.byte 39
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 0
+.align 1
+.LC1009:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 99
+.byte 97
+.byte 112
+.byte 97
+.byte 98
+.byte 105
+.byte 108
+.byte 105
+.byte 116
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 103
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 121
+.byte 111
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 105
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.LC1008:
+.byte 70
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 115
+.byte 101
+.byte 113
+.byte 117
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC1007:
+.byte 32
+.byte 32
+.byte 32
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 50
+.byte 43
+.byte 50
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 53
+.byte 32
+.byte 46
+.byte 0
+.align 1
+.LC1006:
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 0
+.align 1
+.LC1005:
+.byte 32
+.byte 32
+.byte 32
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 115
+.byte 44
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 44
+.byte 0
+.align 1
+.LC1004:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 97
+.byte 116
+.byte 116
+.byte 101
+.byte 109
+.byte 112
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 105
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 97
+.byte 109
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.LC1000:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 68
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 45
+.byte 66
+.byte 105
+.byte 110
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 89
+.byte 69
+.byte 84
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 97
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 46
+.byte 0
+.align 1
+.LC999:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 69
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 101
+.byte 118
+.byte 101
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 89
+.byte 69
+.byte 84
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.LC998:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 32
+.byte 32
+.byte 89
+.byte 94
+.byte 88
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.LC997:
+.byte 9
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 116
+.byte 97
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 112
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 45
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 115
+.byte 46
+.byte 0
+.align 1
+.LC996:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 99
+.byte 121
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.LC995:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 86
+.byte 48
+.byte 32
+.byte 32
+.byte 116
+.byte 101
+.byte 108
+.byte 108
+.byte 115
+.byte 44
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 32
+.byte 73
+.byte 110
+.byte 102
+.byte 105
+.byte 110
+.byte 105
+.byte 116
+.byte 121
+.byte 32
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.LC994:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 86
+.byte 32
+.byte 61
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 44
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 46
+.byte 0
+.align 1
+.LC993:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 69
+.byte 48
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 101
+.byte 108
+.byte 108
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 98
+.byte 114
+.byte 117
+.byte 112
+.byte 116
+.byte 44
+.byte 32
+.byte 103
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 117
+.byte 122
+.byte 122
+.byte 121
+.byte 46
+.byte 0
+.align 1
+.LC992:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 84
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.LC991:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 87
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 32
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 66
+.byte 105
+.byte 116
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 46
+.byte 0
+.align 1
+.LC990:
+.byte 9
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 46
+.byte 44
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 46
+.byte 44
+.byte 32
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 46
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 83
+.byte 113
+.byte 114
+.byte 116
+.byte 46
+.byte 0
+.align 1
+.LC989:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 87
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 116
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 1
+.LC988:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 65
+.byte 100
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 46
+.byte 44
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 46
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 46
+.byte 0
+.align 1
+.LC987:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 47
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 79
+.byte 110
+.byte 101
+.byte 32
+.byte 85
+.byte 108
+.byte 112
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 108
+.byte 105
+.byte 116
+.byte 116
+.byte 108
+.byte 101
+.byte 32
+.byte 108
+.byte 101
+.byte 115
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 32
+.byte 46
+.byte 0
+.align 1
+.LC986:
+.byte 9
+.byte 40
+.byte 79
+.byte 110
+.byte 101
+.byte 85
+.byte 108
+.byte 112
+.byte 110
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 76
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 80
+.byte 108
+.byte 97
+.byte 99
+.byte 101
+.byte 41
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 48
+.byte 48
+.byte 120
+.byte 120
+.byte 120
+.byte 32
+.byte 46
+.byte 0
+.align 1
+.LC985:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 47
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 79
+.byte 110
+.byte 101
+.byte 32
+.byte 85
+.byte 108
+.byte 112
+.byte 0
+.align 1
+.LC984:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 114
+.byte 105
+.byte 101
+.byte 100
+.byte 46
+.byte 0
+.align 1
+.LC983:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 44
+.byte 32
+.byte 52
+.byte 44
+.byte 32
+.byte 56
+.byte 44
+.byte 32
+.byte 49
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 54
+.byte 44
+.byte 32
+.byte 49
+.byte 48
+.byte 48
+.byte 44
+.byte 32
+.byte 50
+.byte 53
+.byte 54
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 1
+.LC982:
+.byte 82
+.byte 117
+.byte 110
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 114
+.byte 101
+.byte 118
+.byte 101
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 115
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 115
+.byte 58
+.byte 0
+.align 1
+.LC978:
+.byte 9
+.byte 79
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 101
+.byte 118
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 105
+.byte 108
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 112
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 58
+.byte 0
+.align 1
+.LC977:
+.byte 9
+.byte 79
+.byte 112
+.byte 116
+.byte 105
+.byte 109
+.byte 105
+.byte 122
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 101
+.byte 118
+.byte 101
+.byte 108
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.LC976:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 105
+.byte 108
+.byte 101
+.byte 114
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.LC975:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.LC974:
+.byte 9
+.byte 86
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 9
+.byte 49
+.byte 48
+.byte 32
+.byte 70
+.byte 101
+.byte 98
+.byte 114
+.byte 117
+.byte 97
+.byte 114
+.byte 121
+.byte 32
+.byte 49
+.byte 57
+.byte 56
+.byte 57
+.byte 59
+.byte 0
+.align 1
+.LC973:
+.byte 9
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 9
+.byte 100
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 59
+.byte 0
+.align 1
+.LC972:
+.byte 73
+.byte 110
+.byte 32
+.byte 100
+.byte 111
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 115
+.byte 111
+.byte 44
+.byte 32
+.byte 112
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 108
+.byte 117
+.byte 100
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 108
+.byte 108
+.byte 111
+.byte 119
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 110
+.byte 102
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 58
+.byte 0
+.align 1
+.LC971:
+.byte 9
+.byte 83
+.byte 97
+.byte 110
+.byte 32
+.byte 70
+.byte 114
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 44
+.byte 32
+.byte 67
+.byte 65
+.byte 32
+.byte 57
+.byte 52
+.byte 49
+.byte 52
+.byte 51
+.byte 45
+.byte 48
+.byte 55
+.byte 48
+.byte 52
+.byte 44
+.byte 32
+.byte 85
+.byte 83
+.byte 65
+.byte 10
+.byte 0
+.align 1
+.LC970:
+.byte 9
+.byte 85
+.byte 110
+.byte 105
+.byte 118
+.byte 101
+.byte 114
+.byte 115
+.byte 105
+.byte 116
+.byte 121
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 67
+.byte 97
+.byte 108
+.byte 105
+.byte 102
+.byte 111
+.byte 114
+.byte 110
+.byte 105
+.byte 97
+.byte 0
+.align 1
+.LC969:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 67
+.byte 101
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 85
+.byte 45
+.byte 55
+.byte 54
+.byte 0
+.align 1
+.LC968:
+.byte 9
+.byte 82
+.byte 105
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 75
+.byte 97
+.byte 114
+.byte 112
+.byte 105
+.byte 110
+.byte 115
+.byte 107
+.byte 105
+.byte 0
+.align 1
+.LC967:
+.byte 80
+.byte 108
+.byte 101
+.byte 97
+.byte 115
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 115
+.byte 117
+.byte 103
+.byte 103
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 0
+.align 1
+.LC966:
+.byte 99
+.byte 111
+.byte 112
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 117
+.byte 110
+.byte 97
+.byte 110
+.byte 116
+.byte 105
+.byte 99
+.byte 105
+.byte 112
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 110
+.byte 101
+.byte 119
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 110
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 112
+.byte 97
+.byte 116
+.byte 104
+.byte 111
+.byte 108
+.byte 111
+.byte 103
+.byte 105
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC965:
+.byte 85
+.byte 115
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 105
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 104
+.byte 101
+.byte 108
+.byte 112
+.byte 32
+.byte 100
+.byte 101
+.byte 98
+.byte 117
+.byte 103
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 117
+.byte 103
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 119
+.byte 105
+.byte 108
+.byte 108
+.byte 0
+.align 1
+.LC961:
+.byte 65
+.byte 110
+.byte 115
+.byte 119
+.byte 101
+.byte 114
+.byte 32
+.byte 113
+.byte 117
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 89
+.byte 44
+.byte 32
+.byte 121
+.byte 44
+.byte 32
+.byte 78
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 110
+.byte 32
+.byte 40
+.byte 117
+.byte 110
+.byte 108
+.byte 101
+.byte 115
+.byte 115
+.byte 32
+.byte 111
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 119
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 100
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC960:
+.byte 97
+.byte 109
+.byte 101
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 107
+.byte 101
+.byte 32
+.byte 102
+.byte 117
+.byte 114
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC959:
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 97
+.byte 110
+.byte 121
+.byte 119
+.byte 97
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 32
+.byte 104
+.byte 111
+.byte 119
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 109
+.byte 105
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 111
+.byte 110
+.byte 101
+.byte 115
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 115
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 110
+.byte 0
+.align 1
+.LC958:
+.byte 119
+.byte 97
+.byte 114
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 46
+.byte 32
+.byte 32
+.byte 73
+.byte 102
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 117
+.byte 97
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 118
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 32
+.byte 110
+.byte 97
+.byte 117
+.byte 103
+.byte 104
+.byte 116
+.byte 44
+.byte 32
+.byte 100
+.byte 111
+.byte 110
+.byte 39
+.byte 116
+.byte 32
+.byte 100
+.byte 101
+.byte 115
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 114
+.byte 117
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 1
+.LC957:
+.byte 116
+.byte 111
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 101
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 115
+.byte 117
+.byte 114
+.byte 114
+.byte 111
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 97
+.byte 102
+.byte 116
+.byte 101
+.byte 114
+.byte 44
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 104
+.byte 97
+.byte 112
+.byte 115
+.byte 44
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 112
+.byte 108
+.byte 97
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 0
+.align 1
+.LC956:
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 44
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.LC955:
+.byte 116
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 112
+.byte 101
+.byte 114
+.byte 115
+.byte 117
+.byte 97
+.byte 100
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 116
+.byte 101
+.byte 114
+.byte 109
+.byte 105
+.byte 110
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 101
+.byte 99
+.byte 117
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 97
+.byte 110
+.byte 0
+.align 1
+.LC954:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 96
+.byte 69
+.byte 78
+.byte 68
+.byte 32
+.byte 79
+.byte 70
+.byte 32
+.byte 84
+.byte 69
+.byte 83
+.byte 84
+.byte 39
+.byte 44
+.byte 10
+.byte 0
+.align 1
+.LC953:
+.byte 76
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 112
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 109
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 101
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 105
+.byte 46
+.byte 101
+.byte 46
+.byte 32
+.byte 98
+.byte 101
+.byte 102
+.byte 111
+.byte 114
+.byte 101
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 112
+.byte 108
+.byte 97
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.LC949:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC943:
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 76
+.byte 69
+.byte 65
+.byte 83
+.byte 69
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 73
+.byte 70
+.byte 89
+.byte 32
+.byte 75
+.byte 65
+.byte 82
+.byte 80
+.byte 73
+.byte 78
+.byte 75
+.byte 83
+.byte 73
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC942:
+.byte 37
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 116
+.byte 46
+.byte 46
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC939:
+.byte 9
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 90
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC938:
+.byte 9
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 49
+.byte 32
+.byte 42
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC937:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 100
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 117
+.byte 116
+.byte 101
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC932:
+.byte 90
+.byte 32
+.byte 47
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC929:
+.byte 49
+.byte 32
+.byte 42
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.LC926:
+.byte 90
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 1
+.LC923:
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.LC922:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 0
+.align 1
+.LC917:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC914:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 86
+.byte 69
+.byte 82
+.byte 89
+.byte 32
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC908:
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 106
+.byte 117
+.byte 115
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC907:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 44
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 47
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 1
+.LC904:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 109
+.byte 97
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 101
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 40
+.byte 90
+.byte 32
+.byte 43
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC900:
+.byte 40
+.byte 90
+.byte 32
+.byte 43
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 115
+.byte 97
+.byte 102
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC899:
+.byte 83
+.byte 105
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 100
+.byte 101
+.byte 110
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 101
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 0
+.align 1
+.LC894:
+.byte 83
+.byte 105
+.byte 109
+.byte 105
+.byte 108
+.byte 97
+.byte 114
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 116
+.byte 105
+.byte 109
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC882:
+.byte 9
+.byte 9
+.byte 116
+.byte 104
+.byte 101
+.byte 121
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC881:
+.byte 9
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 117
+.byte 110
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 59
+.byte 10
+.byte 0
+.align 1
+.LC880:
+.byte 9
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 59
+.byte 10
+.byte 0
+.align 1
+.LC879:
+.byte 9
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 10
+.byte 0
+.align 1
+.LC878:
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.LC877:
+.byte 87
+.byte 65
+.byte 82
+.byte 78
+.byte 73
+.byte 78
+.byte 71
+.byte 58
+.byte 32
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.LC856:
+.byte 9
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 101
+.byte 97
+.byte 100
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 48
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC855:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 4
+.LC846:
+.long -1998362383
+.long 1054144693
+.align 1
+.LC843:
+.byte 37
+.byte 115
+.byte 58
+.byte 32
+.byte 32
+.byte 37
+.byte 115
+.byte 0
+.align 1
+.LC842:
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 0
+.align 1
+.LC841:
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 0
+.align 1
+.LC840:
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 0
+.align 1
+.LC839:
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 0
+.align 1
+.LC831:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 80
+.byte 97
+.byte 103
+.byte 101
+.byte 58
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 10
+.byte 0
+.align 1
+.LC830:
+.byte 10
+.byte 68
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 109
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 102
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 109
+.byte 105
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 111
+.byte 110
+.byte 101
+.byte 32
+.byte 78
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 0
+.align 4
+.LC827:
+.long 0
+.long -1074790400
+.align 1
+.LC821:
+.byte 69
+.byte 78
+.byte 68
+.byte 32
+.byte 79
+.byte 70
+.byte 32
+.byte 84
+.byte 69
+.byte 83
+.byte 84
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC820:
+.byte 10
+.byte 65
+.byte 32
+.byte 116
+.byte 111
+.byte 116
+.byte 97
+.byte 108
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 102
+.byte 108
+.byte 111
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 119
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 101
+.byte 103
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC817:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 69
+.byte 120
+.byte 99
+.byte 101
+.byte 108
+.byte 108
+.byte 101
+.byte 110
+.byte 116
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC816:
+.byte 32
+.byte 100
+.byte 117
+.byte 114
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 71
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC815:
+.byte 44
+.byte 10
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 115
+.byte 105
+.byte 98
+.byte 108
+.byte 121
+.byte 32
+.byte 68
+.byte 111
+.byte 117
+.byte 98
+.byte 108
+.byte 101
+.byte 32
+.byte 82
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.LC814:
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC811:
+.byte 56
+.byte 53
+.byte 52
+.byte 0
+.align 1
+.LC810:
+.byte 55
+.byte 53
+.byte 52
+.byte 0
+.align 1
+.LC807:
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 112
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 73
+.byte 69
+.byte 69
+.byte 69
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 110
+.byte 100
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 80
+.byte 0
+.align 1
+.LC806:
+.byte 82
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 111
+.byte 114
+.byte 109
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 0
+.align 1
+.LC803:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 83
+.byte 97
+.byte 116
+.byte 105
+.byte 115
+.byte 102
+.byte 97
+.byte 99
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC797:
+.byte 78
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 44
+.byte 32
+.byte 100
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 115
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 98
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC796:
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 39
+.byte 115
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 115
+.byte 101
+.byte 113
+.byte 117
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC795:
+.byte 80
+.byte 111
+.byte 116
+.byte 101
+.byte 110
+.byte 116
+.byte 105
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 102
+.byte 97
+.byte 116
+.byte 97
+.byte 108
+.byte 32
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 112
+.byte 111
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 1
+.LC792:
+.byte 117
+.byte 110
+.byte 97
+.byte 99
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 32
+.byte 83
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 68
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC791:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 0
+.align 1
+.LC787:
+.byte 100
+.byte 101
+.byte 115
+.byte 112
+.byte 105
+.byte 116
+.byte 101
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 118
+.byte 101
+.byte 110
+.byte 105
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 68
+.byte 101
+.byte 102
+.byte 101
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC786:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 65
+.byte 99
+.byte 99
+.byte 101
+.byte 112
+.byte 116
+.byte 97
+.byte 98
+.byte 108
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC781:
+.byte 83
+.byte 97
+.byte 116
+.byte 105
+.byte 115
+.byte 102
+.byte 97
+.byte 99
+.byte 116
+.byte 111
+.byte 114
+.byte 121
+.byte 32
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC780:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 100
+.byte 105
+.byte 97
+.byte 103
+.byte 110
+.byte 111
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 0
+.align 1
+.LC769:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 32
+.byte 37
+.byte 45
+.byte 50
+.byte 57
+.byte 115
+.byte 32
+.byte 37
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC762:
+.byte 70
+.byte 76
+.byte 65
+.byte 87
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 1
+.LC761:
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 1
+.LC760:
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 115
+.byte 32
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 1
+.LC759:
+.byte 70
+.byte 65
+.byte 73
+.byte 76
+.byte 85
+.byte 82
+.byte 69
+.byte 115
+.byte 32
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 100
+.byte 32
+.byte 61
+.byte 0
+.align 1
+.LC755:
+.byte 10
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 48
+.byte 32
+.byte 47
+.byte 32
+.byte 48
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 115
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 1
+.LC754:
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC751:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 49
+.byte 32
+.byte 47
+.byte 32
+.byte 48
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 115
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 0
+.align 1
+.LC750:
+.byte 87
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 109
+.byte 101
+.byte 115
+.byte 115
+.byte 97
+.byte 103
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 47
+.byte 111
+.byte 114
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 32
+.byte 100
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 63
+.byte 10
+.byte 0
+.align 1
+.LC749:
+.byte 32
+.byte 32
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 101
+.byte 97
+.byte 100
+.byte 44
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC748:
+.byte 32
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC743:
+.byte 32
+.byte 32
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 88
+.byte 32
+.byte 32
+.byte 116
+.byte 114
+.byte 97
+.byte 112
+.byte 115
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.LC728:
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC727:
+.byte 32
+.byte 117
+.byte 110
+.byte 98
+.byte 97
+.byte 108
+.byte 97
+.byte 110
+.byte 99
+.byte 101
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 59
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 42
+.byte 32
+.byte 86
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC726:
+.byte 66
+.byte 97
+.byte 100
+.byte 108
+.byte 121
+.byte 0
+.align 1
+.LC719:
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 90
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 50
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC718:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC706:
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 114
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 90
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC705:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 119
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC688:
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 44
+.byte 32
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 10
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 43
+.byte 45
+.byte 37
+.byte 103
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 0
+.align 1
+.LC687:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 0
+.align 1
+.LC681:
+.byte 97
+.byte 98
+.byte 111
+.byte 118
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC680:
+.byte 65
+.byte 110
+.byte 121
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 42
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 111
+.byte 110
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC679:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 86
+.byte 32
+.byte 47
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC678:
+.byte 78
+.byte 111
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 86
+.byte 32
+.byte 42
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC677:
+.byte 84
+.byte 104
+.byte 101
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 115
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 98
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 115
+.byte 121
+.byte 115
+.byte 116
+.byte 101
+.byte 109
+.byte 32
+.byte 116
+.byte 114
+.byte 97
+.byte 112
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC676:
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 115
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 86
+.byte 48
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC673:
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 86
+.byte 32
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC664:
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 115
+.byte 104
+.byte 114
+.byte 105
+.byte 110
+.byte 107
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC661:
+.byte 45
+.byte 40
+.byte 45
+.byte 89
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 89
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC660:
+.byte 102
+.byte 105
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 0
+.align 1
+.LC659:
+.byte 83
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC656:
+.byte 84
+.byte 114
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC655:
+.byte 67
+.byte 97
+.byte 110
+.byte 32
+.byte 96
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 45
+.byte 89
+.byte 39
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 63
+.byte 10
+.byte 0
+.align 1
+.LC648:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 103
+.byte 101
+.byte 110
+.byte 101
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC647:
+.byte 83
+.byte 101
+.byte 97
+.byte 114
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 79
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.LC646:
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC638:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 119
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 94
+.byte 81
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 114
+.byte 32
+.byte 110
+.byte 101
+.byte 97
+.byte 114
+.byte 108
+.byte 121
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 101
+.byte 109
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC637:
+.byte 65
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 115
+.byte 101
+.byte 101
+.byte 109
+.byte 115
+.byte 32
+.byte 97
+.byte 100
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 116
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC630:
+.byte 9
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 105
+.byte 110
+.byte 121
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC629:
+.byte 9
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 117
+.byte 99
+.byte 104
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 115
+.byte 112
+.byte 111
+.byte 105
+.byte 108
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 10
+.byte 0
+.align 1
+.LC628:
+.byte 9
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC627:
+.byte 9
+.byte 40
+.byte 49
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 59
+.byte 10
+.byte 0
+.align 1
+.LC626:
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 10
+.byte 0
+.align 1
+.LC625:
+.byte 67
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 0
+.align 1
+.LC618:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 88
+.byte 94
+.byte 40
+.byte 40
+.byte 88
+.byte 32
+.byte 43
+.byte 32
+.byte 49
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 41
+.byte 41
+.byte 32
+.byte 118
+.byte 115
+.byte 46
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 40
+.byte 50
+.byte 41
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 62
+.byte 32
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC614:
+.byte 84
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC611:
+.byte 32
+.byte 32
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC610:
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 116
+.byte 119
+.byte 101
+.byte 101
+.byte 110
+.byte 32
+.byte 48
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 10
+.byte 0
+.align 1
+.LC606:
+.byte 97
+.byte 99
+.byte 116
+.byte 117
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 58
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC605:
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 97
+.byte 102
+.byte 102
+.byte 108
+.byte 105
+.byte 99
+.byte 116
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 10
+.byte 9
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 59
+.byte 10
+.byte 0
+.align 1
+.LC604:
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 32
+.byte 94
+.byte 32
+.byte 40
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 41
+.byte 10
+.byte 111
+.byte 110
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 0
+.align 1
+.LC603:
+.byte 83
+.byte 105
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 111
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC602:
+.byte 82
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 110
+.byte 97
+.byte 114
+.byte 114
+.byte 111
+.byte 119
+.byte 59
+.byte 32
+.byte 85
+.byte 49
+.byte 94
+.byte 37
+.byte 100
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC597:
+.byte 109
+.byte 101
+.byte 114
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC596:
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 115
+.byte 117
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 32
+.byte 108
+.byte 97
+.byte 114
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 82
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 0
+.align 1
+.LC595:
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 0
+.align 1
+.LC594:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC593:
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 49
+.byte 32
+.byte 43
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC592:
+.byte 88
+.byte 32
+.byte 47
+.byte 32
+.byte 90
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC589:
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 97
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 32
+.byte 97
+.byte 99
+.byte 116
+.byte 117
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 10
+.byte 0
+.align 1
+.LC588:
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 40
+.byte 102
+.byte 40
+.byte 88
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 102
+.byte 40
+.byte 90
+.byte 41
+.byte 41
+.byte 32
+.byte 47
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC587:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 90
+.byte 41
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 0
+.align 1
+.LC586:
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 110
+.byte 111
+.byte 99
+.byte 101
+.byte 110
+.byte 116
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 116
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC585:
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 83
+.byte 69
+.byte 82
+.byte 73
+.byte 79
+.byte 85
+.byte 83
+.byte 32
+.byte 68
+.byte 69
+.byte 70
+.byte 69
+.byte 67
+.byte 84
+.byte 10
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 115
+.byte 32
+.byte 0
+.align 1
+.LC584:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 83
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 79
+.byte 84
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 44
+.byte 32
+.byte 0
+.align 1
+.LC583:
+.byte 121
+.byte 101
+.byte 116
+.byte 32
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 90
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC582:
+.byte 88
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 9
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 101
+.byte 113
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 90
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC577:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 47
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 101
+.byte 100
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC567:
+.byte 40
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 41
+.byte 32
+.byte 60
+.byte 32
+.byte 69
+.byte 48
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC566:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 103
+.byte 114
+.byte 97
+.byte 100
+.byte 117
+.byte 97
+.byte 108
+.byte 59
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 117
+.byte 114
+.byte 115
+.byte 32
+.byte 65
+.byte 98
+.byte 115
+.byte 111
+.byte 108
+.byte 117
+.byte 116
+.byte 101
+.byte 32
+.byte 69
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 61
+.byte 10
+.byte 0
+.align 1
+.LC561:
+.byte 124
+.byte 81
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 124
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC560:
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 81
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC559:
+.byte 81
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 89
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 108
+.byte 101
+.byte 32
+.byte 100
+.byte 101
+.byte 110
+.byte 121
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 124
+.byte 81
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 124
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 48
+.byte 59
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 115
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC558:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 117
+.byte 115
+.byte 101
+.byte 115
+.byte 32
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 10
+.byte 0
+.align 1
+.LC556:
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 32
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC555:
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 100
+.byte 111
+.byte 119
+.byte 110
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC554:
+.byte 97
+.byte 112
+.byte 112
+.byte 114
+.byte 111
+.byte 97
+.byte 99
+.byte 104
+.byte 32
+.byte 97
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 49
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC553:
+.byte 69
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 97
+.byte 99
+.byte 99
+.byte 117
+.byte 114
+.byte 97
+.byte 99
+.byte 121
+.byte 32
+.byte 100
+.byte 101
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 111
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC541:
+.byte 83
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 115
+.byte 116
+.byte 114
+.byte 105
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 69
+.byte 48
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC540:
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 116
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC539:
+.byte 68
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 99
+.byte 101
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 115
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 32
+.byte 104
+.byte 105
+.byte 103
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.LC536:
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 101
+.byte 110
+.byte 99
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC535:
+.byte 80
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 116
+.byte 115
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 32
+.byte 104
+.byte 105
+.byte 103
+.byte 104
+.byte 101
+.byte 114
+.byte 0
+.align 1
+.LC528:
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC527:
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 100
+.byte 108
+.byte 121
+.byte 32
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC526:
+.byte 112
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 44
+.byte 32
+.byte 105
+.byte 115
+.byte 110
+.byte 39
+.byte 116
+.byte 59
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC525:
+.byte 66
+.byte 117
+.byte 116
+.byte 32
+.byte 45
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 44
+.byte 32
+.byte 119
+.byte 104
+.byte 105
+.byte 99
+.byte 104
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC522:
+.byte 80
+.byte 115
+.byte 101
+.byte 117
+.byte 100
+.byte 111
+.byte 90
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 112
+.byte 114
+.byte 105
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 58
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC521:
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 100
+.byte 108
+.byte 121
+.byte 32
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC520:
+.byte 80
+.byte 111
+.byte 115
+.byte 105
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 97
+.byte 110
+.byte 10
+.byte 0
+.align 1
+.LC507:
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC483:
+.byte 83
+.byte 101
+.byte 101
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 85
+.byte 110
+.byte 100
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 32
+.byte 116
+.byte 104
+.byte 114
+.byte 101
+.byte 115
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 85
+.byte 102
+.byte 84
+.byte 104
+.byte 111
+.byte 108
+.byte 100
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 69
+.byte 48
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC480:
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 110
+.byte 111
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 99
+.byte 114
+.byte 101
+.byte 112
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC477:
+.byte 9
+.byte 105
+.byte 110
+.byte 118
+.byte 111
+.byte 108
+.byte 118
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 114
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 101
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC476:
+.byte 69
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 108
+.byte 105
+.byte 107
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 105
+.byte 110
+.byte 118
+.byte 97
+.byte 108
+.byte 105
+.byte 100
+.byte 97
+.byte 116
+.byte 101
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 110
+.byte 99
+.byte 105
+.byte 97
+.byte 108
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC455:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 112
+.byte 111
+.byte 119
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 94
+.byte 105
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 90
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC452:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.LC450:
+.byte 116
+.byte 111
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 117
+.byte 108
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC449:
+.byte 79
+.byte 98
+.byte 115
+.byte 101
+.byte 114
+.byte 118
+.byte 101
+.byte 100
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 115
+.byte 32
+.byte 114
+.byte 117
+.byte 110
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 1
+.LC448:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC445:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC440:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC435:
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC434:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 94
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC433:
+.byte 65
+.byte 110
+.byte 111
+.byte 109
+.byte 97
+.byte 108
+.byte 111
+.byte 117
+.byte 115
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 60
+.byte 32
+.byte 0
+.align 1
+.LC393:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 119
+.byte 104
+.byte 101
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC371:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 88
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 110
+.byte 45
+.byte 109
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 88
+.byte 32
+.byte 110
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC370:
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 112
+.byte 97
+.byte 115
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 77
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 105
+.byte 116
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC353:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 32
+.byte 109
+.byte 111
+.byte 110
+.byte 111
+.byte 116
+.byte 111
+.byte 110
+.byte 105
+.byte 99
+.byte 105
+.byte 116
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC342:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 115
+.byte 113
+.byte 114
+.byte 116
+.byte 40
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 88
+.byte 41
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 88
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 88
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC337:
+.byte 83
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 48
+.byte 46
+.byte 48
+.byte 44
+.byte 32
+.byte 45
+.byte 48
+.byte 46
+.byte 48
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.LC335:
+.byte 10
+.byte 82
+.byte 117
+.byte 110
+.byte 110
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 113
+.byte 117
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 114
+.byte 111
+.byte 111
+.byte 116
+.byte 40
+.byte 120
+.byte 41
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC334:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 78
+.byte 111
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC333:
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 89
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 89
+.byte 32
+.byte 42
+.byte 32
+.byte 88
+.byte 32
+.byte 116
+.byte 114
+.byte 105
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 4
+.LC324:
+.long 0
+.long 1074266112
+.align 1
+.LC323:
+.byte 84
+.byte 101
+.byte 115
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 114
+.byte 97
+.byte 110
+.byte 100
+.byte 111
+.byte 109
+.byte 32
+.byte 112
+.byte 97
+.byte 105
+.byte 114
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC322:
+.byte 68
+.byte 111
+.byte 101
+.byte 115
+.byte 32
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 111
+.byte 109
+.byte 109
+.byte 117
+.byte 116
+.byte 101
+.byte 63
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.LC319:
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 40
+.byte 115
+.byte 41
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 117
+.byte 114
+.byte 101
+.byte 40
+.byte 115
+.byte 41
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 10
+.byte 40
+.byte 110
+.byte 111
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 97
+.byte 98
+.byte 111
+.byte 118
+.byte 101
+.byte 41
+.byte 32
+.byte 99
+.byte 111
+.byte 117
+.byte 110
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 101
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 116
+.byte 97
+.byte 108
+.byte 108
+.byte 121
+.byte 32
+.byte 98
+.byte 101
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 1
+.LC317:
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 116
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC316:
+.byte 83
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 97
+.byte 114
+.byte 101
+.byte 110
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 117
+.byte 115
+.byte 101
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC299:
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 115
+.byte 116
+.byte 105
+.byte 99
+.byte 107
+.byte 121
+.byte 32
+.byte 98
+.byte 105
+.byte 116
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC296:
+.byte 40
+.byte 88
+.byte 32
+.byte 45
+.byte 32
+.byte 89
+.byte 41
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 89
+.byte 32
+.byte 45
+.byte 32
+.byte 88
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 110
+.byte 32
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC293:
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC292:
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 0
+.align 1
+.LC289:
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC282:
+.byte 65
+.byte 100
+.byte 100
+.byte 47
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC277:
+.byte 73
+.byte 110
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 108
+.byte 101
+.byte 116
+.byte 101
+.byte 32
+.byte 99
+.byte 97
+.byte 114
+.byte 114
+.byte 121
+.byte 45
+.byte 112
+.byte 114
+.byte 111
+.byte 112
+.byte 97
+.byte 103
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 65
+.byte 100
+.byte 100
+.byte 105
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.LC273:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 42
+.byte 32
+.byte 40
+.byte 32
+.byte 49
+.byte 32
+.byte 47
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 0
+.align 1
+.LC271:
+.byte 47
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC268:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC265:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.LC262:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC257:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.LC254:
+.byte 42
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 101
+.byte 105
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 112
+.byte 101
+.byte 100
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC253:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 99
+.byte 104
+.byte 111
+.byte 112
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC250:
+.byte 77
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 105
+.byte 99
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 99
+.byte 111
+.byte 114
+.byte 114
+.byte 101
+.byte 99
+.byte 116
+.byte 108
+.byte 121
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC240:
+.byte 88
+.byte 32
+.byte 42
+.byte 32
+.byte 40
+.byte 49
+.byte 47
+.byte 88
+.byte 41
+.byte 32
+.byte 100
+.byte 105
+.byte 102
+.byte 102
+.byte 101
+.byte 114
+.byte 115
+.byte 32
+.byte 102
+.byte 114
+.byte 111
+.byte 109
+.byte 32
+.byte 49
+.byte 0
+.align 1
+.LC221:
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 121
+.byte 44
+.byte 32
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 97
+.byte 100
+.byte 100
+.byte 47
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC220:
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 32
+.byte 42
+.byte 44
+.byte 32
+.byte 47
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 45
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 104
+.byte 97
+.byte 118
+.byte 101
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 44
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 121
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC217:
+.byte 32
+.byte 32
+.byte 46
+.byte 46
+.byte 46
+.byte 32
+.byte 32
+.byte 105
+.byte 102
+.byte 32
+.byte 40
+.byte 88
+.byte 32
+.byte 61
+.byte 61
+.byte 32
+.byte 49
+.byte 46
+.byte 48
+.byte 41
+.byte 32
+.byte 123
+.byte 46
+.byte 46
+.byte 46
+.byte 46
+.byte 46
+.byte 125
+.byte 32
+.byte 101
+.byte 108
+.byte 115
+.byte 101
+.byte 32
+.byte 123
+.byte 46
+.byte 46
+.byte 46
+.byte 47
+.byte 40
+.byte 88
+.byte 45
+.byte 49
+.byte 46
+.byte 48
+.byte 41
+.byte 46
+.byte 46
+.byte 46
+.byte 125
+.byte 10
+.byte 0
+.align 1
+.LC216:
+.byte 32
+.byte 32
+.byte 115
+.byte 117
+.byte 99
+.byte 104
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 103
+.byte 97
+.byte 105
+.byte 110
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 32
+.byte 97
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC215:
+.byte 32
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 121
+.byte 105
+.byte 101
+.byte 108
+.byte 100
+.byte 115
+.byte 32
+.byte 32
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 32
+.byte 45
+.byte 32
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 32
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 101
+.byte 98
+.byte 121
+.byte 32
+.byte 118
+.byte 105
+.byte 116
+.byte 105
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 10
+.byte 0
+.align 1
+.LC214:
+.byte 99
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 32
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 32
+.byte 60
+.byte 32
+.byte 49
+.byte 32
+.byte 32
+.byte 97
+.byte 108
+.byte 116
+.byte 104
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 10
+.byte 0
+.align 1
+.LC211:
+.byte 45
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 99
+.byte 101
+.byte 108
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 111
+.byte 98
+.byte 115
+.byte 99
+.byte 117
+.byte 114
+.byte 101
+.byte 100
+.byte 0
+.align 1
+.LC206:
+.byte 42
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 47
+.byte 111
+.byte 114
+.byte 32
+.byte 47
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 108
+.byte 97
+.byte 115
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 0
+.align 1
+.LC202:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 117
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 49
+.byte 47
+.byte 49
+.byte 46
+.byte 48
+.byte 48
+.byte 48
+.byte 46
+.byte 46
+.byte 49
+.byte 32
+.byte 62
+.byte 61
+.byte 32
+.byte 49
+.byte 0
+.align 1
+.LC200:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 88
+.byte 47
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 88
+.byte 0
+.align 1
+.LC195:
+.byte 68
+.byte 105
+.byte 118
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 32
+.byte 101
+.byte 120
+.byte 99
+.byte 101
+.byte 101
+.byte 100
+.byte 32
+.byte 49
+.byte 32
+.byte 117
+.byte 108
+.byte 112
+.byte 10
+.byte 111
+.byte 114
+.byte 32
+.byte 32
+.byte 49
+.byte 47
+.byte 51
+.byte 32
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 32
+.byte 51
+.byte 47
+.byte 57
+.byte 32
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 32
+.byte 57
+.byte 47
+.byte 50
+.byte 55
+.byte 32
+.byte 109
+.byte 97
+.byte 121
+.byte 32
+.byte 100
+.byte 105
+.byte 115
+.byte 97
+.byte 103
+.byte 114
+.byte 101
+.byte 101
+.byte 0
+.align 1
+.LC191:
+.byte 42
+.byte 32
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 109
+.byte 97
+.byte 110
+.byte 121
+.byte 32
+.byte 102
+.byte 105
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 119
+.byte 114
+.byte 111
+.byte 110
+.byte 103
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC189:
+.byte 42
+.byte 32
+.byte 108
+.byte 97
+.byte 99
+.byte 107
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 71
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 68
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 44
+.byte 32
+.byte 115
+.byte 111
+.byte 32
+.byte 49
+.byte 42
+.byte 88
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 88
+.byte 0
+.align 1
+.LC186:
+.byte 10
+.byte 67
+.byte 104
+.byte 101
+.byte 99
+.byte 107
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 103
+.byte 117
+.byte 97
+.byte 114
+.byte 100
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 32
+.byte 105
+.byte 110
+.byte 32
+.byte 42
+.byte 44
+.byte 32
+.byte 47
+.byte 44
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 45
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC185:
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 108
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 44
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 105
+.byte 116
+.byte 32
+.byte 115
+.byte 104
+.byte 111
+.byte 117
+.byte 108
+.byte 100
+.byte 32
+.byte 98
+.byte 101
+.byte 46
+.byte 0
+.align 1
+.LC180:
+.byte 83
+.byte 117
+.byte 98
+.byte 116
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 110
+.byte 111
+.byte 114
+.byte 109
+.byte 97
+.byte 108
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 88
+.byte 61
+.byte 89
+.byte 44
+.byte 88
+.byte 43
+.byte 90
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 89
+.byte 43
+.byte 90
+.byte 33
+.byte 0
+.align 1
+.LC176:
+.byte 114
+.byte 111
+.byte 117
+.byte 103
+.byte 104
+.byte 108
+.byte 121
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC175:
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 32
+.byte 97
+.byte 98
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 37
+.byte 103
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 32
+.byte 66
+.byte 45
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 44
+.byte 32
+.byte 105
+.byte 46
+.byte 101
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC174:
+.byte 83
+.byte 111
+.byte 109
+.byte 101
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 32
+.byte 97
+.byte 112
+.byte 112
+.byte 101
+.byte 97
+.byte 114
+.byte 32
+.byte 116
+.byte 111
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 10
+.byte 0
+.align 1
+.LC168:
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 110
+.byte 10
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.LC167:
+.byte 90
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 90
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 0
+.align 1
+.LC166:
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 101
+.byte 120
+.byte 97
+.byte 99
+.byte 116
+.byte 32
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 97
+.byte 108
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 97
+.byte 32
+.byte 114
+.byte 101
+.byte 115
+.byte 117
+.byte 108
+.byte 116
+.byte 10
+.byte 0
+.align 1
+.LC165:
+.byte 66
+.byte 101
+.byte 99
+.byte 97
+.byte 117
+.byte 115
+.byte 101
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 117
+.byte 110
+.byte 117
+.byte 115
+.byte 117
+.byte 97
+.byte 108
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 102
+.byte 0
+.align 1
+.LC161:
+.byte 9
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 90
+.byte 50
+.byte 32
+.byte 45
+.byte 32
+.byte 85
+.byte 50
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC160:
+.byte 9
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 90
+.byte 49
+.byte 32
+.byte 45
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC159:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 0
+.align 1
+.LC158:
+.byte 0
+.align 1
+.LC151:
+.byte 84
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 102
+.byte 101
+.byte 97
+.byte 116
+.byte 117
+.byte 114
+.byte 101
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 102
+.byte 117
+.byte 114
+.byte 116
+.byte 104
+.byte 101
+.byte 114
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC146:
+.byte 80
+.byte 111
+.byte 115
+.byte 115
+.byte 105
+.byte 98
+.byte 108
+.byte 121
+.byte 32
+.byte 115
+.byte 111
+.byte 109
+.byte 101
+.byte 32
+.byte 112
+.byte 97
+.byte 114
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 0
+.align 1
+.LC145:
+.byte 98
+.byte 121
+.byte 32
+.byte 101
+.byte 120
+.byte 116
+.byte 114
+.byte 97
+.byte 45
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 101
+.byte 32
+.byte 101
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 101
+.byte 116
+.byte 105
+.byte 99
+.byte 32
+.byte 115
+.byte 117
+.byte 98
+.byte 101
+.byte 120
+.byte 112
+.byte 114
+.byte 101
+.byte 115
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 115
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC144:
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 115
+.byte 121
+.byte 109
+.byte 112
+.byte 116
+.byte 111
+.byte 109
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 105
+.byte 110
+.byte 99
+.byte 111
+.byte 110
+.byte 115
+.byte 105
+.byte 115
+.byte 116
+.byte 101
+.byte 110
+.byte 99
+.byte 105
+.byte 101
+.byte 115
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 114
+.byte 111
+.byte 100
+.byte 117
+.byte 99
+.byte 101
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC143:
+.byte 114
+.byte 101
+.byte 115
+.byte 112
+.byte 101
+.byte 99
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 32
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 44
+.byte 10
+.byte 0
+.align 1
+.LC142:
+.byte 68
+.byte 105
+.byte 115
+.byte 97
+.byte 103
+.byte 114
+.byte 101
+.byte 101
+.byte 109
+.byte 101
+.byte 110
+.byte 116
+.byte 115
+.byte 32
+.byte 97
+.byte 109
+.byte 111
+.byte 110
+.byte 103
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 118
+.byte 97
+.byte 108
+.byte 117
+.byte 101
+.byte 115
+.byte 32
+.byte 88
+.byte 49
+.byte 44
+.byte 32
+.byte 89
+.byte 49
+.byte 44
+.byte 32
+.byte 90
+.byte 49
+.byte 44
+.byte 10
+.byte 0
+.align 1
+.LC120:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 119
+.byte 111
+.byte 114
+.byte 115
+.byte 101
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 110
+.byte 32
+.byte 53
+.byte 32
+.byte 100
+.byte 101
+.byte 99
+.byte 105
+.byte 109
+.byte 97
+.byte 108
+.byte 32
+.byte 102
+.byte 105
+.byte 103
+.byte 117
+.byte 114
+.byte 101
+.byte 115
+.byte 32
+.byte 32
+.byte 0
+.align 1
+.LC118:
+.byte 84
+.byte 104
+.byte 101
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 116
+.byte 104
+.byte 101
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC117:
+.byte 108
+.byte 111
+.byte 103
+.byte 97
+.byte 114
+.byte 105
+.byte 116
+.byte 104
+.byte 109
+.byte 105
+.byte 99
+.byte 32
+.byte 101
+.byte 110
+.byte 99
+.byte 111
+.byte 100
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 104
+.byte 97
+.byte 115
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 115
+.byte 111
+.byte 108
+.byte 101
+.byte 108
+.byte 121
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 85
+.byte 49
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC114:
+.byte 111
+.byte 102
+.byte 32
+.byte 115
+.byte 105
+.byte 103
+.byte 110
+.byte 105
+.byte 102
+.byte 105
+.byte 99
+.byte 97
+.byte 110
+.byte 116
+.byte 32
+.byte 100
+.byte 105
+.byte 103
+.byte 105
+.byte 116
+.byte 115
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 44
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 105
+.byte 116
+.byte 115
+.byte 101
+.byte 108
+.byte 102
+.byte 44
+.byte 32
+.byte 116
+.byte 104
+.byte 105
+.byte 115
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 97
+.byte 32
+.byte 109
+.byte 105
+.byte 110
+.byte 111
+.byte 114
+.byte 32
+.byte 102
+.byte 108
+.byte 97
+.byte 119
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC113:
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 99
+.byte 97
+.byte 110
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 98
+.byte 101
+.byte 32
+.byte 99
+.byte 104
+.byte 97
+.byte 114
+.byte 97
+.byte 99
+.byte 116
+.byte 101
+.byte 114
+.byte 105
+.byte 122
+.byte 101
+.byte 100
+.byte 32
+.byte 98
+.byte 121
+.byte 32
+.byte 97
+.byte 110
+.byte 32
+.byte 73
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 32
+.byte 110
+.byte 117
+.byte 109
+.byte 98
+.byte 101
+.byte 114
+.byte 10
+.byte 0
+.align 1
+.LC100:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 102
+.byte 117
+.byte 122
+.byte 122
+.byte 121
+.byte 44
+.byte 88
+.byte 61
+.byte 49
+.byte 32
+.byte 98
+.byte 117
+.byte 116
+.byte 32
+.byte 88
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 1
+.LC96:
+.byte 40
+.byte 49
+.byte 45
+.byte 85
+.byte 49
+.byte 41
+.byte 45
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 60
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 70
+.byte 65
+.byte 76
+.byte 83
+.byte 69
+.byte 44
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 103
+.byte 46
+.byte 32
+.byte 102
+.byte 97
+.byte 105
+.byte 108
+.byte 115
+.byte 63
+.byte 0
+.align 4
+.LC94:
+.long 0
+.long 1076101120
+.align 1
+.LC89:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 103
+.byte 111
+.byte 111
+.byte 100
+.byte 32
+.byte 97
+.byte 115
+.byte 32
+.byte 50
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 48
+.byte 0
+.align 1
+.LC85:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 116
+.byte 111
+.byte 111
+.byte 32
+.byte 98
+.byte 105
+.byte 103
+.byte 58
+.byte 32
+.byte 114
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 111
+.byte 102
+.byte 102
+.byte 32
+.byte 112
+.byte 114
+.byte 111
+.byte 98
+.byte 108
+.byte 101
+.byte 109
+.byte 115
+.byte 0
+.align 1
+.LC83:
+.byte 77
+.byte 89
+.byte 83
+.byte 84
+.byte 69
+.byte 82
+.byte 89
+.byte 58
+.byte 32
+.byte 114
+.byte 101
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 101
+.byte 100
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC82:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 105
+.byte 114
+.byte 109
+.byte 101
+.byte 100
+.byte 46
+.byte 10
+.byte 0
+.align 4
+.LC79:
+.long 1202590843
+.long 1065646817
+.align 1
+.LC78:
+.byte 103
+.byte 101
+.byte 116
+.byte 115
+.byte 32
+.byte 98
+.byte 101
+.byte 116
+.byte 116
+.byte 101
+.byte 114
+.byte 32
+.byte 99
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC77:
+.byte 99
+.byte 111
+.byte 110
+.byte 102
+.byte 105
+.byte 114
+.byte 109
+.byte 115
+.byte 32
+.byte 99
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC62:
+.byte 82
+.byte 101
+.byte 99
+.byte 97
+.byte 108
+.byte 99
+.byte 117
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 114
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 112
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 10
+.byte 32
+.byte 0
+.align 1
+.LC61:
+.byte 67
+.byte 108
+.byte 111
+.byte 115
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 114
+.byte 101
+.byte 108
+.byte 97
+.byte 116
+.byte 105
+.byte 118
+.byte 101
+.byte 32
+.byte 115
+.byte 101
+.byte 112
+.byte 97
+.byte 114
+.byte 97
+.byte 116
+.byte 105
+.byte 111
+.byte 110
+.byte 32
+.byte 102
+.byte 111
+.byte 117
+.byte 110
+.byte 100
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 85
+.byte 49
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 46
+.byte 55
+.byte 101
+.byte 32
+.byte 46
+.byte 10
+.byte 10
+.byte 0
+.align 1
+.LC55:
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 102
+.byte 32
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC46:
+.byte 83
+.byte 101
+.byte 97
+.byte 114
+.byte 99
+.byte 104
+.byte 105
+.byte 110
+.byte 103
+.byte 32
+.byte 102
+.byte 111
+.byte 114
+.byte 32
+.byte 82
+.byte 97
+.byte 100
+.byte 105
+.byte 120
+.byte 32
+.byte 97
+.byte 110
+.byte 100
+.byte 32
+.byte 80
+.byte 114
+.byte 101
+.byte 99
+.byte 105
+.byte 115
+.byte 105
+.byte 111
+.byte 110
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC45:
+.byte 10
+.byte 0
+.align 1
+.LC44:
+.byte 45
+.byte 49
+.byte 44
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 44
+.byte 32
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 44
+.byte 32
+.byte 51
+.byte 44
+.byte 32
+.byte 52
+.byte 44
+.byte 32
+.byte 53
+.byte 44
+.byte 32
+.byte 57
+.byte 44
+.byte 32
+.byte 50
+.byte 55
+.byte 44
+.byte 32
+.byte 51
+.byte 50
+.byte 32
+.byte 38
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 32
+.byte 97
+.byte 114
+.byte 101
+.byte 32
+.byte 79
+.byte 46
+.byte 75
+.byte 46
+.byte 10
+.byte 0
+.align 1
+.LC39:
+.byte 53
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 52
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 51
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 56
+.byte 48
+.byte 44
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 52
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 54
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 50
+.byte 52
+.byte 48
+.byte 47
+.byte 53
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 52
+.byte 56
+.byte 0
+.align 1
+.LC35:
+.byte 57
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 51
+.byte 42
+.byte 51
+.byte 44
+.byte 32
+.byte 50
+.byte 55
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 57
+.byte 42
+.byte 51
+.byte 44
+.byte 32
+.byte 51
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 56
+.byte 42
+.byte 52
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 51
+.byte 50
+.byte 45
+.byte 50
+.byte 55
+.byte 45
+.byte 52
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 1
+.LC31:
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 43
+.byte 32
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 32
+.byte 43
+.byte 32
+.byte 49
+.byte 47
+.byte 50
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 1
+.LC27:
+.byte 45
+.byte 49
+.byte 43
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 43
+.byte 97
+.byte 98
+.byte 115
+.byte 40
+.byte 49
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 45
+.byte 49
+.byte 43
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 42
+.byte 40
+.byte 45
+.byte 49
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 1
+.LC23:
+.byte 51
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 50
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 52
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 51
+.byte 43
+.byte 49
+.byte 44
+.byte 32
+.byte 52
+.byte 43
+.byte 50
+.byte 42
+.byte 40
+.byte 45
+.byte 50
+.byte 41
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 52
+.byte 45
+.byte 51
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 0
+.align 4
+.LC21:
+.long -755914244
+.long 1062232653
+.align 1
+.LC20:
+.byte 67
+.byte 111
+.byte 109
+.byte 112
+.byte 97
+.byte 114
+.byte 105
+.byte 115
+.byte 111
+.byte 110
+.byte 32
+.byte 97
+.byte 108
+.byte 108
+.byte 101
+.byte 103
+.byte 101
+.byte 115
+.byte 32
+.byte 116
+.byte 104
+.byte 97
+.byte 116
+.byte 32
+.byte 45
+.byte 48
+.byte 46
+.byte 48
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 78
+.byte 111
+.byte 110
+.byte 45
+.byte 122
+.byte 101
+.byte 114
+.byte 111
+.byte 33
+.byte 10
+.byte 0
+.align 1
+.LC15:
+.byte 48
+.byte 43
+.byte 48
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 45
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 49
+.byte 32
+.byte 60
+.byte 61
+.byte 32
+.byte 48
+.byte 44
+.byte 32
+.byte 111
+.byte 114
+.byte 32
+.byte 49
+.byte 43
+.byte 49
+.byte 32
+.byte 33
+.byte 61
+.byte 32
+.byte 50
+.byte 0
+.align 1
+.LC13:
+.byte 80
+.byte 114
+.byte 111
+.byte 103
+.byte 114
+.byte 97
+.byte 109
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 110
+.byte 111
+.byte 119
+.byte 32
+.byte 82
+.byte 85
+.byte 78
+.byte 78
+.byte 73
+.byte 78
+.byte 71
+.byte 32
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 115
+.byte 32
+.byte 111
+.byte 110
+.byte 32
+.byte 115
+.byte 109
+.byte 97
+.byte 108
+.byte 108
+.byte 32
+.byte 105
+.byte 110
+.byte 116
+.byte 101
+.byte 103
+.byte 101
+.byte 114
+.byte 115
+.byte 58
+.byte 10
+.byte 0
+.align 4
+.LC9:
+.long 0
+.long 1072693248
+.align 4
+.LC8:
+.long 0
+.long 0
+.align 1
+.LC3:
+.byte 10
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 70
+.byte 76
+.byte 79
+.byte 65
+.byte 84
+.byte 73
+.byte 78
+.byte 71
+.byte 45
+.byte 80
+.byte 79
+.byte 73
+.byte 78
+.byte 84
+.byte 32
+.byte 69
+.byte 82
+.byte 82
+.byte 79
+.byte 82
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 32
+.byte 42
+.byte 10
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/sort.1bk b/lcc/x86/linux/tst/sort.1bk
index 380d529..75e1f0d 100755
--- a/lcc/x86/linux/tst/sort.1bk
+++ b/lcc/x86/linux/tst/sort.1bk
@@ -1,20 +1,20 @@
-exchange(1,9)
-exchange(3,7)
-exchange(5,6)
-exchange(0,5)
-exchange(0,3)
-exchange(0,0)
-exchange(1,2)
-exchange(6,6)
-exchange(8,9)
-exchange(7,8)
--51
--1
-0
-1
-3
-10
-18
-32
-567
-789
+exchange(1,9)
+exchange(3,7)
+exchange(5,6)
+exchange(0,5)
+exchange(0,3)
+exchange(0,0)
+exchange(1,2)
+exchange(6,6)
+exchange(8,9)
+exchange(7,8)
+-51
+-1
+0
+1
+3
+10
+18
+32
+567
+789
diff --git a/lcc/x86/linux/tst/sort.2bk b/lcc/x86/linux/tst/sort.2bk
index 27488a1..81e6f38 100755
--- a/lcc/x86/linux/tst/sort.2bk
+++ b/lcc/x86/linux/tst/sort.2bk
@@ -1,5 +1,5 @@
-tst/sort.c:23: warning: missing return value
-tst/sort.c:30: warning: missing return value
-tst/sort.c:37: warning: missing return value
-tst/sort.c:41: warning: missing return value
-tst/sort.c:65: warning: missing return value
+tst/sort.c:23: warning: missing return value
+tst/sort.c:30: warning: missing return value
+tst/sort.c:37: warning: missing return value
+tst/sort.c:41: warning: missing return value
+tst/sort.c:65: warning: missing return value
diff --git a/lcc/x86/linux/tst/sort.sbk b/lcc/x86/linux/tst/sort.sbk
index 11dbcdd..25cc4d9 100755
--- a/lcc/x86/linux/tst/sort.sbk
+++ b/lcc/x86/linux/tst/sort.sbk
@@ -1,330 +1,330 @@
-.data
-.globl in
-.align 4
-.type in,@object
-in:
-.long 10
-.long 32
-.long -1
-.long 567
-.long 3
-.long 18
-.long 1
-.long -51
-.long 789
-.long 0
-.size in,40
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-pushl $10
-pushl $in
-call sort
-addl $8,%esp
-movl $0,-4(%ebp)
-jmp .LC5
-.LC2:
-movl -4(%ebp),%edi
-pushl in(,%edi,4)
-call putd
-addl $4,%esp
-pushl $10
-call putchar
-addl $4,%esp
-.LC3:
-incl -4(%ebp)
-.LC5:
-movl -4(%ebp),%edi
-cmpl $10,%edi
-jb .LC2
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf6:
-.size main,.Lf6-main
-.globl putd
-.align 16
-.type putd,@function
-putd:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-cmpl $0,20(%ebp)
-jge .LC8
-pushl $45
-call putchar
-addl $4,%esp
-negl 20(%ebp)
-.LC8:
-movl 20(%ebp),%eax
-movl $10,%ecx
-cdq
-idivl %ecx
-cmpl $0,%eax
-je .LC10
-movl 20(%ebp),%eax
-movl $10,%ecx
-cdq
-idivl %ecx
-pushl %eax
-call putd
-addl $4,%esp
-.LC10:
-movl 20(%ebp),%eax
-movl $10,%ecx
-cdq
-idivl %ecx
-leal 48(%edx),%edi
-pushl %edi
-call putchar
-addl $4,%esp
-movl $0,%eax
-.LC7:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf12:
-.size putd,.Lf12-putd
-.globl sort
-.align 16
-.type sort,@function
-sort:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 24(%ebp),%edi
-subl $1,%edi
-movl %edi,24(%ebp)
-pushl %edi
-pushl $0
-movl 20(%ebp),%edi
-movl %edi,xx
-pushl %edi
-call quick
-addl $12,%esp
-movl $0,%eax
-.LC13:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf14:
-.size sort,.Lf14-sort
-.globl quick
-.align 16
-.type quick,@function
-quick:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl 28(%ebp),%edi
-cmpl %edi,24(%ebp)
-jl .LC16
-jmp .LC15
-.LC16:
-pushl 28(%ebp)
-pushl 24(%ebp)
-pushl 20(%ebp)
-call partition
-addl $12,%esp
-movl %eax,-4(%ebp)
-movl -4(%ebp),%edi
-subl $1,%edi
-pushl %edi
-pushl 24(%ebp)
-pushl 20(%ebp)
-call quick
-addl $12,%esp
-pushl 28(%ebp)
-movl -4(%ebp),%edi
-leal 1(%edi),%edi
-pushl %edi
-pushl 20(%ebp)
-call quick
-addl $12,%esp
-movl $0,%eax
-.LC15:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf18:
-.size quick,.Lf18-quick
-.globl partition
-.align 16
-.type partition,@function
-partition:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-incl 28(%ebp)
-movl 24(%ebp),%edi
-movl %edi,-8(%ebp)
-movl -8(%ebp),%edi
-movl 20(%ebp),%esi
-movl (%esi,%edi,4),%edi
-movl %edi,-4(%ebp)
-jmp .LC21
-.LC20:
-incl 24(%ebp)
-jmp .LC24
-.LC23:
-incl 24(%ebp)
-.LC24:
-movl 24(%ebp),%edi
-movl 20(%ebp),%esi
-movl -4(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-jl .LC23
-decl 28(%ebp)
-jmp .LC27
-.LC26:
-decl 28(%ebp)
-.LC27:
-movl 28(%ebp),%edi
-movl 20(%ebp),%esi
-movl -4(%ebp),%ebx
-cmpl %ebx,(%esi,%edi,4)
-jg .LC26
-movl 28(%ebp),%edi
-cmpl %edi,24(%ebp)
-jge .LC29
-movl 20(%ebp),%edi
-movl 28(%ebp),%esi
-leal (%edi,%esi,4),%esi
-pushl %esi
-movl 24(%ebp),%esi
-leal (%edi,%esi,4),%edi
-pushl %edi
-call exchange
-addl $8,%esp
-.LC29:
-.LC21:
-movl 28(%ebp),%edi
-cmpl %edi,24(%ebp)
-jl .LC20
-movl 20(%ebp),%edi
-movl 28(%ebp),%esi
-leal (%edi,%esi,4),%esi
-pushl %esi
-movl -8(%ebp),%esi
-leal (%edi,%esi,4),%edi
-pushl %edi
-call exchange
-addl $8,%esp
-movl 28(%ebp),%eax
-.LC19:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf31:
-.size partition,.Lf31-partition
-.globl exchange
-.align 16
-.type exchange,@function
-exchange:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl xx,%edi
-movl $4,%esi
-movl 24(%ebp),%ebx
-subl %edi,%ebx
-movl %ebx,%eax
-movl %esi,%ecx
-cdq
-idivl %ecx
-pushl %eax
-movl 20(%ebp),%ebx
-subl %edi,%ebx
-movl %ebx,%eax
-movl %esi,%ecx
-cdq
-idivl %ecx
-pushl %eax
-pushl $.LC33
-call printf
-addl $12,%esp
-movl 20(%ebp),%edi
-movl (,%edi),%esi
-movl %esi,-4(%ebp)
-movl 24(%ebp),%esi
-movl (,%esi),%esi
-movl %esi,(,%edi)
-movl 24(%ebp),%edi
-movl -4(%ebp),%esi
-movl %esi,(,%edi)
-movl $0,%eax
-.LC32:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf34:
-.size exchange,.Lf34-exchange
-.bss
-.globl xx
-.align 4
-.type xx,@object
-.size xx,4
-.comm xx,4
-.data
-.align 1
-.LC33:
-.byte 101
-.byte 120
-.byte 99
-.byte 104
-.byte 97
-.byte 110
-.byte 103
-.byte 101
-.byte 40
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 41
-.byte 10
-.byte 0
-.text
-.ident "LCC: 4.1"
+.data
+.globl in
+.align 4
+.type in,@object
+in:
+.long 10
+.long 32
+.long -1
+.long 567
+.long 3
+.long 18
+.long 1
+.long -51
+.long 789
+.long 0
+.size in,40
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+pushl $10
+pushl $in
+call sort
+addl $8,%esp
+movl $0,-4(%ebp)
+jmp .LC5
+.LC2:
+movl -4(%ebp),%edi
+pushl in(,%edi,4)
+call putd
+addl $4,%esp
+pushl $10
+call putchar
+addl $4,%esp
+.LC3:
+incl -4(%ebp)
+.LC5:
+movl -4(%ebp),%edi
+cmpl $10,%edi
+jb .LC2
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf6:
+.size main,.Lf6-main
+.globl putd
+.align 16
+.type putd,@function
+putd:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+cmpl $0,20(%ebp)
+jge .LC8
+pushl $45
+call putchar
+addl $4,%esp
+negl 20(%ebp)
+.LC8:
+movl 20(%ebp),%eax
+movl $10,%ecx
+cdq
+idivl %ecx
+cmpl $0,%eax
+je .LC10
+movl 20(%ebp),%eax
+movl $10,%ecx
+cdq
+idivl %ecx
+pushl %eax
+call putd
+addl $4,%esp
+.LC10:
+movl 20(%ebp),%eax
+movl $10,%ecx
+cdq
+idivl %ecx
+leal 48(%edx),%edi
+pushl %edi
+call putchar
+addl $4,%esp
+movl $0,%eax
+.LC7:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf12:
+.size putd,.Lf12-putd
+.globl sort
+.align 16
+.type sort,@function
+sort:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 24(%ebp),%edi
+subl $1,%edi
+movl %edi,24(%ebp)
+pushl %edi
+pushl $0
+movl 20(%ebp),%edi
+movl %edi,xx
+pushl %edi
+call quick
+addl $12,%esp
+movl $0,%eax
+.LC13:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf14:
+.size sort,.Lf14-sort
+.globl quick
+.align 16
+.type quick,@function
+quick:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl 28(%ebp),%edi
+cmpl %edi,24(%ebp)
+jl .LC16
+jmp .LC15
+.LC16:
+pushl 28(%ebp)
+pushl 24(%ebp)
+pushl 20(%ebp)
+call partition
+addl $12,%esp
+movl %eax,-4(%ebp)
+movl -4(%ebp),%edi
+subl $1,%edi
+pushl %edi
+pushl 24(%ebp)
+pushl 20(%ebp)
+call quick
+addl $12,%esp
+pushl 28(%ebp)
+movl -4(%ebp),%edi
+leal 1(%edi),%edi
+pushl %edi
+pushl 20(%ebp)
+call quick
+addl $12,%esp
+movl $0,%eax
+.LC15:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf18:
+.size quick,.Lf18-quick
+.globl partition
+.align 16
+.type partition,@function
+partition:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+incl 28(%ebp)
+movl 24(%ebp),%edi
+movl %edi,-8(%ebp)
+movl -8(%ebp),%edi
+movl 20(%ebp),%esi
+movl (%esi,%edi,4),%edi
+movl %edi,-4(%ebp)
+jmp .LC21
+.LC20:
+incl 24(%ebp)
+jmp .LC24
+.LC23:
+incl 24(%ebp)
+.LC24:
+movl 24(%ebp),%edi
+movl 20(%ebp),%esi
+movl -4(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+jl .LC23
+decl 28(%ebp)
+jmp .LC27
+.LC26:
+decl 28(%ebp)
+.LC27:
+movl 28(%ebp),%edi
+movl 20(%ebp),%esi
+movl -4(%ebp),%ebx
+cmpl %ebx,(%esi,%edi,4)
+jg .LC26
+movl 28(%ebp),%edi
+cmpl %edi,24(%ebp)
+jge .LC29
+movl 20(%ebp),%edi
+movl 28(%ebp),%esi
+leal (%edi,%esi,4),%esi
+pushl %esi
+movl 24(%ebp),%esi
+leal (%edi,%esi,4),%edi
+pushl %edi
+call exchange
+addl $8,%esp
+.LC29:
+.LC21:
+movl 28(%ebp),%edi
+cmpl %edi,24(%ebp)
+jl .LC20
+movl 20(%ebp),%edi
+movl 28(%ebp),%esi
+leal (%edi,%esi,4),%esi
+pushl %esi
+movl -8(%ebp),%esi
+leal (%edi,%esi,4),%edi
+pushl %edi
+call exchange
+addl $8,%esp
+movl 28(%ebp),%eax
+.LC19:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf31:
+.size partition,.Lf31-partition
+.globl exchange
+.align 16
+.type exchange,@function
+exchange:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl xx,%edi
+movl $4,%esi
+movl 24(%ebp),%ebx
+subl %edi,%ebx
+movl %ebx,%eax
+movl %esi,%ecx
+cdq
+idivl %ecx
+pushl %eax
+movl 20(%ebp),%ebx
+subl %edi,%ebx
+movl %ebx,%eax
+movl %esi,%ecx
+cdq
+idivl %ecx
+pushl %eax
+pushl $.LC33
+call printf
+addl $12,%esp
+movl 20(%ebp),%edi
+movl (,%edi),%esi
+movl %esi,-4(%ebp)
+movl 24(%ebp),%esi
+movl (,%esi),%esi
+movl %esi,(,%edi)
+movl 24(%ebp),%edi
+movl -4(%ebp),%esi
+movl %esi,(,%edi)
+movl $0,%eax
+.LC32:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf34:
+.size exchange,.Lf34-exchange
+.bss
+.globl xx
+.align 4
+.type xx,@object
+.size xx,4
+.comm xx,4
+.data
+.align 1
+.LC33:
+.byte 101
+.byte 120
+.byte 99
+.byte 104
+.byte 97
+.byte 110
+.byte 103
+.byte 101
+.byte 40
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 41
+.byte 10
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/spill.2bk b/lcc/x86/linux/tst/spill.2bk
index f7e3521..afd73e2 100755
--- a/lcc/x86/linux/tst/spill.2bk
+++ b/lcc/x86/linux/tst/spill.2bk
@@ -1,6 +1,6 @@
-tst/spill.c:1: warning: missing return value
-tst/spill.c:3: warning: missing return value
-tst/spill.c:5: warning: missing return value
-tst/spill.c:7: warning: missing return value
-tst/spill.c:9: warning: missing return value
-tst/spill.c:17: warning: missing return value
+tst/spill.c:1: warning: missing return value
+tst/spill.c:3: warning: missing return value
+tst/spill.c:5: warning: missing return value
+tst/spill.c:7: warning: missing return value
+tst/spill.c:9: warning: missing return value
+tst/spill.c:17: warning: missing return value
diff --git a/lcc/x86/linux/tst/spill.sbk b/lcc/x86/linux/tst/spill.sbk
index 13799ab..567d002 100755
--- a/lcc/x86/linux/tst/spill.sbk
+++ b/lcc/x86/linux/tst/spill.sbk
@@ -1,282 +1,282 @@
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf2:
-.size main,.Lf2-main
-.globl f
-.align 16
-.type f,@function
-f:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-call f
-movl %eax,%edi
-call f
-leal (%eax,%edi),%edi
-movl %edi,20(%ebp)
-movl $0,%eax
-.LC3:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf4:
-.size f,.Lf4-f
-.globl f2
-.align 16
-.type f2,@function
-f2:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-call f
-movl %eax,%edi
-cmpl $0,20(%ebp)
-je .LC7
-call f
-movl %eax,%esi
-movl %esi,-4(%ebp)
-jmp .LC8
-.LC7:
-movl $1,-4(%ebp)
-.LC8:
-movl -4(%ebp),%esi
-leal (%esi,%edi),%edi
-movl %edi,20(%ebp)
-movl $0,%eax
-.LC5:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf9:
-.size f2,.Lf9-f2
-.globl f3
-.align 16
-.type f3,@function
-f3:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $44,%esp
-movl $0,-4(%ebp)
-movl $0,-8(%ebp)
-movl $0,-12(%ebp)
-movl $0,-16(%ebp)
-movl $0,-20(%ebp)
-movl $0,-24(%ebp)
-movl $0,-28(%ebp)
-movl $0,-32(%ebp)
-movl $0,-36(%ebp)
-movl $0,-40(%ebp)
-movl 24(%ebp),%edi
-leal 4(%edi),%esi
-movl %esi,24(%ebp)
-cmpl $0,20(%ebp)
-je .LC12
-call f
-movl %eax,%esi
-movl %esi,-44(%ebp)
-jmp .LC13
-.LC12:
-movl $0,-44(%ebp)
-.LC13:
-movl -44(%ebp),%esi
-movl %esi,(,%edi)
-movl $0,%eax
-.LC10:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf14:
-.size f3,.Lf14-f3
-.globl f4
-.align 16
-.type f4,@function
-f4:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $52,%esp
-movl $0,-4(%ebp)
-movl $0,-8(%ebp)
-movl $0,-12(%ebp)
-movl $0,-16(%ebp)
-movl $0,-20(%ebp)
-movl $0,-24(%ebp)
-movl i,%edi
-leal (,%edi,8),%esi
-fldl a(%esi)
-fstpl -36(%ebp)
-fldl b(%esi)
-fstpl -44(%ebp)
-fldl -36(%ebp)
-faddl -44(%ebp)
-fldl .LC19
-fcompp
-fstsw %ax
-sahf
-je .LC17
-cmpl $0,%edi
-je .LC17
-fldl -36(%ebp)
-fsubl -44(%ebp)
-fldl .LC19
-fcompp
-fstsw %ax
-sahf
-je .LC17
-movl $1,-28(%ebp)
-jmp .LC18
-.LC17:
-movl $0,-28(%ebp)
-.LC18:
-movl -28(%ebp),%edi
-movl %edi,i
-movl $0,%eax
-.LC15:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf20:
-.size f4,.Lf20-f4
-.globl f5
-.align 16
-.type f5,@function
-f5:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl k,%edi
-movl m,%esi
-movl A,%ebx
-movl %edi,%edx
-imull %esi,%edx
-leal (%ebx,%edx,8),%edx
-movl j,%ecx
-movl %ecx,%eax
-imull %esi,%eax
-leal (%ebx,%eax,8),%esi
-movl n,%ebx
-movl B,%eax
-imull %ebx,%edi
-leal (%eax,%edi,8),%edi
-imull %ebx,%ecx
-leal (%eax,%ecx,8),%ebx
-fldl (,%edx)
-fmull (,%esi)
-fldl (,%edi)
-fmull (,%ebx)
-faddp %st(1),%st
-fstpl x
-fldl (,%edx)
-fmull (,%ebx)
-fldl (,%edi)
-fmull (,%esi)
-fsubp %st(1),%st
-fstpl x
-movl $0,%eax
-.LC21:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf22:
-.size f5,.Lf22-f5
-.bss
-.globl x
-.align 4
-.type x,@object
-.size x,8
-.comm x,8
-.globl B
-.align 4
-.type B,@object
-.size B,4
-.comm B,4
-.globl A
-.align 4
-.type A,@object
-.size A,4
-.comm A,4
-.globl n
-.align 4
-.type n,@object
-.size n,4
-.comm n,4
-.globl m
-.align 4
-.type m,@object
-.size m,4
-.comm m,4
-.globl k
-.align 4
-.type k,@object
-.size k,4
-.comm k,4
-.globl j
-.align 4
-.type j,@object
-.size j,4
-.comm j,4
-.globl i
-.align 4
-.type i,@object
-.size i,4
-.comm i,4
-.globl b
-.align 4
-.type b,@object
-.size b,80
-.comm b,80
-.globl a
-.align 4
-.type a,@object
-.size a,80
-.comm a,80
-.data
-.align 4
-.LC19:
-.long 0
-.long 0
-.text
-.ident "LCC: 4.1"
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf2:
+.size main,.Lf2-main
+.globl f
+.align 16
+.type f,@function
+f:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+call f
+movl %eax,%edi
+call f
+leal (%eax,%edi),%edi
+movl %edi,20(%ebp)
+movl $0,%eax
+.LC3:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf4:
+.size f,.Lf4-f
+.globl f2
+.align 16
+.type f2,@function
+f2:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+call f
+movl %eax,%edi
+cmpl $0,20(%ebp)
+je .LC7
+call f
+movl %eax,%esi
+movl %esi,-4(%ebp)
+jmp .LC8
+.LC7:
+movl $1,-4(%ebp)
+.LC8:
+movl -4(%ebp),%esi
+leal (%esi,%edi),%edi
+movl %edi,20(%ebp)
+movl $0,%eax
+.LC5:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf9:
+.size f2,.Lf9-f2
+.globl f3
+.align 16
+.type f3,@function
+f3:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $44,%esp
+movl $0,-4(%ebp)
+movl $0,-8(%ebp)
+movl $0,-12(%ebp)
+movl $0,-16(%ebp)
+movl $0,-20(%ebp)
+movl $0,-24(%ebp)
+movl $0,-28(%ebp)
+movl $0,-32(%ebp)
+movl $0,-36(%ebp)
+movl $0,-40(%ebp)
+movl 24(%ebp),%edi
+leal 4(%edi),%esi
+movl %esi,24(%ebp)
+cmpl $0,20(%ebp)
+je .LC12
+call f
+movl %eax,%esi
+movl %esi,-44(%ebp)
+jmp .LC13
+.LC12:
+movl $0,-44(%ebp)
+.LC13:
+movl -44(%ebp),%esi
+movl %esi,(,%edi)
+movl $0,%eax
+.LC10:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf14:
+.size f3,.Lf14-f3
+.globl f4
+.align 16
+.type f4,@function
+f4:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $52,%esp
+movl $0,-4(%ebp)
+movl $0,-8(%ebp)
+movl $0,-12(%ebp)
+movl $0,-16(%ebp)
+movl $0,-20(%ebp)
+movl $0,-24(%ebp)
+movl i,%edi
+leal (,%edi,8),%esi
+fldl a(%esi)
+fstpl -36(%ebp)
+fldl b(%esi)
+fstpl -44(%ebp)
+fldl -36(%ebp)
+faddl -44(%ebp)
+fldl .LC19
+fcompp
+fstsw %ax
+sahf
+je .LC17
+cmpl $0,%edi
+je .LC17
+fldl -36(%ebp)
+fsubl -44(%ebp)
+fldl .LC19
+fcompp
+fstsw %ax
+sahf
+je .LC17
+movl $1,-28(%ebp)
+jmp .LC18
+.LC17:
+movl $0,-28(%ebp)
+.LC18:
+movl -28(%ebp),%edi
+movl %edi,i
+movl $0,%eax
+.LC15:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf20:
+.size f4,.Lf20-f4
+.globl f5
+.align 16
+.type f5,@function
+f5:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl k,%edi
+movl m,%esi
+movl A,%ebx
+movl %edi,%edx
+imull %esi,%edx
+leal (%ebx,%edx,8),%edx
+movl j,%ecx
+movl %ecx,%eax
+imull %esi,%eax
+leal (%ebx,%eax,8),%esi
+movl n,%ebx
+movl B,%eax
+imull %ebx,%edi
+leal (%eax,%edi,8),%edi
+imull %ebx,%ecx
+leal (%eax,%ecx,8),%ebx
+fldl (,%edx)
+fmull (,%esi)
+fldl (,%edi)
+fmull (,%ebx)
+faddp %st(1),%st
+fstpl x
+fldl (,%edx)
+fmull (,%ebx)
+fldl (,%edi)
+fmull (,%esi)
+fsubp %st(1),%st
+fstpl x
+movl $0,%eax
+.LC21:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf22:
+.size f5,.Lf22-f5
+.bss
+.globl x
+.align 4
+.type x,@object
+.size x,8
+.comm x,8
+.globl B
+.align 4
+.type B,@object
+.size B,4
+.comm B,4
+.globl A
+.align 4
+.type A,@object
+.size A,4
+.comm A,4
+.globl n
+.align 4
+.type n,@object
+.size n,4
+.comm n,4
+.globl m
+.align 4
+.type m,@object
+.size m,4
+.comm m,4
+.globl k
+.align 4
+.type k,@object
+.size k,4
+.comm k,4
+.globl j
+.align 4
+.type j,@object
+.size j,4
+.comm j,4
+.globl i
+.align 4
+.type i,@object
+.size i,4
+.comm i,4
+.globl b
+.align 4
+.type b,@object
+.size b,80
+.comm b,80
+.globl a
+.align 4
+.type a,@object
+.size a,80
+.comm a,80
+.data
+.align 4
+.LC19:
+.long 0
+.long 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/stdarg.1bk b/lcc/x86/linux/tst/stdarg.1bk
index 097aef7..e973176 100755
--- a/lcc/x86/linux/tst/stdarg.1bk
+++ b/lcc/x86/linux/tst/stdarg.1bk
@@ -1,6 +1,6 @@
-test 1
-test 2
-test 3
-test 4
-test 5.000000
-{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
+test 1
+test 2
+test 3
+test 4
+test 5.000000
+{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
diff --git a/lcc/x86/linux/tst/stdarg.2bk b/lcc/x86/linux/tst/stdarg.2bk
index a832cf9..2b3f417 100755
--- a/lcc/x86/linux/tst/stdarg.2bk
+++ b/lcc/x86/linux/tst/stdarg.2bk
@@ -1 +1 @@
-tst/stdarg.c:51: warning: missing return value
+tst/stdarg.c:51: warning: missing return value
diff --git a/lcc/x86/linux/tst/stdarg.sbk b/lcc/x86/linux/tst/stdarg.sbk
index f1001e6..349bf97 100755
--- a/lcc/x86/linux/tst/stdarg.sbk
+++ b/lcc/x86/linux/tst/stdarg.sbk
@@ -1,395 +1,395 @@
-.data
-.globl x
-.align 4
-.type x,@object
-.size x,16
-x:
-.long 1
-.long 2
-.long 3
-.long 4
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-pushl $.LC2
-call print
-addl $4,%esp
-pushl $.LC4
-pushl $.LC3
-call print
-addl $8,%esp
-pushl $10
-pushl $3
-pushl $.LC5
-call print
-addl $12,%esp
-pushl $10
-pushl $4
-pushl $.LC8
-pushl $.LC7
-pushl $.LC6
-call print
-addl $20,%esp
-pushl $10
-fldl .LC10
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC8
-pushl $.LC7
-pushl $.LC9
-call print
-addl $24,%esp
-leal x,%edi
-movl %edi,-8(%ebp)
-movl %edi,%esi
-movl %esi,-4(%ebp)
-subl $16,%esp
-movl %esp,%edi
-movl $16,%ecx
-rep
-movsb
-movl -8(%ebp),%edi
-movl %edi,%esi
-subl $16,%esp
-movl %esp,%edi
-movl $16,%ecx
-rep
-movsb
-movl -8(%ebp),%edi
-movl %edi,%esi
-subl $16,%esp
-movl %esp,%edi
-movl $16,%ecx
-rep
-movsb
-movl -8(%ebp),%edi
-movl %edi,%esi
-subl $16,%esp
-movl %esp,%edi
-movl $16,%ecx
-rep
-movsb
-movl -8(%ebp),%edi
-movl %edi,%esi
-subl $16,%esp
-movl %esp,%edi
-movl $16,%ecx
-rep
-movsb
-movl -8(%ebp),%edi
-movl %edi,%esi
-subl $16,%esp
-movl %esp,%edi
-movl $16,%ecx
-rep
-movsb
-pushl $.LC11
-call print
-addl $100,%esp
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf12:
-.size main,.Lf12-main
-.globl print
-.align 16
-.type print,@function
-print:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $28,%esp
-leal 24(%ebp),%edi
-movl %edi,-4(%ebp)
-jmp .LC19
-.LC16:
-movl 20(%ebp),%edi
-movsbl (,%edi),%edi
-cmpl $37,%edi
-jne .LC20
-movl 20(%ebp),%edi
-leal 1(%edi),%edi
-movl %edi,20(%ebp)
-movsbl (,%edi),%edi
-movl %edi,-8(%ebp)
-movl -8(%ebp),%edi
-cmpl $115,%edi
-je .LC36
-cmpl $115,%edi
-jg .LC41
-.LC40:
-movl -8(%ebp),%edi
-cmpl $98,%edi
-jl .LC22
-cmpl $102,%edi
-jg .LC22
-jmp *.LC42-392(,%edi,4)
-.data
-.align 4
-.LC42:
-.long .LC25
-.long .LC30
-.long .LC32
-.long .LC22
-.long .LC38
-.text
-.LC41:
-cmpl $119,-8(%ebp)
-je .LC34
-jmp .LC22
-.LC25:
-movl -4(%ebp),%edi
-leal 16(%edi),%edi
-movl %edi,-28(%ebp)
-movl %edi,-4(%ebp)
-leal -24(%ebp),%edi
-movl -28(%ebp),%esi
-leal -16(%esi),%esi
-movl $16,%ecx
-rep
-movsb
-pushl -12(%ebp)
-pushl -16(%ebp)
-pushl -20(%ebp)
-pushl -24(%ebp)
-pushl $.LC26
-call printf
-addl $20,%esp
-jmp .LC21
-.LC30:
-movl -4(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-4(%ebp)
-movsbl -4(%edi),%edi
-pushl %edi
-pushl $.LC31
-call printf
-addl $8,%esp
-jmp .LC21
-.LC32:
-movl -4(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-4(%ebp)
-pushl -4(%edi)
-pushl $.LC33
-call printf
-addl $8,%esp
-jmp .LC21
-.LC34:
-movl -4(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-4(%ebp)
-movswl -4(%edi),%edi
-pushl %edi
-pushl $.LC35
-call printf
-addl $8,%esp
-jmp .LC21
-.LC36:
-movl -4(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-4(%ebp)
-pushl -4(%edi)
-pushl $.LC37
-call printf
-addl $8,%esp
-jmp .LC21
-.LC38:
-movl -4(%ebp),%edi
-leal 8(%edi),%edi
-movl %edi,-4(%ebp)
-fldl -8(%edi)
-subl $8,%esp
-fstpl (%esp)
-pushl $.LC39
-call printf
-addl $12,%esp
-jmp .LC21
-.LC22:
-movl 20(%ebp),%edi
-movsbl (,%edi),%edi
-pushl %edi
-pushl $.LC31
-call printf
-addl $8,%esp
-jmp .LC21
-.LC20:
-movl 20(%ebp),%edi
-movsbl (,%edi),%edi
-pushl %edi
-pushl $.LC31
-call printf
-addl $8,%esp
-.LC21:
-.LC17:
-incl 20(%ebp)
-.LC19:
-movl 20(%ebp),%edi
-movsbl (,%edi),%edi
-cmpl $0,%edi
-jne .LC16
-movl $0,%eax
-.LC13:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf44:
-.size print,.Lf44-print
-.data
-.align 1
-.LC39:
-.byte 37
-.byte 102
-.byte 0
-.align 1
-.LC37:
-.byte 37
-.byte 115
-.byte 0
-.align 1
-.LC35:
-.byte 37
-.byte 120
-.byte 0
-.align 1
-.LC33:
-.byte 37
-.byte 100
-.byte 0
-.align 1
-.LC31:
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.LC26:
-.byte 123
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 125
-.byte 0
-.align 1
-.LC11:
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 32
-.byte 37
-.byte 98
-.byte 10
-.byte 0
-.align 4
-.LC10:
-.long 0
-.long 1075052544
-.align 1
-.LC9:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 32
-.byte 37
-.byte 102
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.LC8:
-.byte 115
-.byte 116
-.byte 0
-.align 1
-.LC7:
-.byte 116
-.byte 101
-.byte 0
-.align 1
-.LC6:
-.byte 37
-.byte 115
-.byte 37
-.byte 115
-.byte 32
-.byte 37
-.byte 119
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.LC5:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 100
-.byte 37
-.byte 99
-.byte 0
-.align 1
-.LC4:
-.byte 50
-.byte 0
-.align 1
-.LC3:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC2:
-.byte 116
-.byte 101
-.byte 115
-.byte 116
-.byte 32
-.byte 49
-.byte 10
-.byte 0
-.text
-.ident "LCC: 4.1"
+.data
+.globl x
+.align 4
+.type x,@object
+.size x,16
+x:
+.long 1
+.long 2
+.long 3
+.long 4
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+pushl $.LC2
+call print
+addl $4,%esp
+pushl $.LC4
+pushl $.LC3
+call print
+addl $8,%esp
+pushl $10
+pushl $3
+pushl $.LC5
+call print
+addl $12,%esp
+pushl $10
+pushl $4
+pushl $.LC8
+pushl $.LC7
+pushl $.LC6
+call print
+addl $20,%esp
+pushl $10
+fldl .LC10
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC8
+pushl $.LC7
+pushl $.LC9
+call print
+addl $24,%esp
+leal x,%edi
+movl %edi,-8(%ebp)
+movl %edi,%esi
+movl %esi,-4(%ebp)
+subl $16,%esp
+movl %esp,%edi
+movl $16,%ecx
+rep
+movsb
+movl -8(%ebp),%edi
+movl %edi,%esi
+subl $16,%esp
+movl %esp,%edi
+movl $16,%ecx
+rep
+movsb
+movl -8(%ebp),%edi
+movl %edi,%esi
+subl $16,%esp
+movl %esp,%edi
+movl $16,%ecx
+rep
+movsb
+movl -8(%ebp),%edi
+movl %edi,%esi
+subl $16,%esp
+movl %esp,%edi
+movl $16,%ecx
+rep
+movsb
+movl -8(%ebp),%edi
+movl %edi,%esi
+subl $16,%esp
+movl %esp,%edi
+movl $16,%ecx
+rep
+movsb
+movl -8(%ebp),%edi
+movl %edi,%esi
+subl $16,%esp
+movl %esp,%edi
+movl $16,%ecx
+rep
+movsb
+pushl $.LC11
+call print
+addl $100,%esp
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf12:
+.size main,.Lf12-main
+.globl print
+.align 16
+.type print,@function
+print:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $28,%esp
+leal 24(%ebp),%edi
+movl %edi,-4(%ebp)
+jmp .LC19
+.LC16:
+movl 20(%ebp),%edi
+movsbl (,%edi),%edi
+cmpl $37,%edi
+jne .LC20
+movl 20(%ebp),%edi
+leal 1(%edi),%edi
+movl %edi,20(%ebp)
+movsbl (,%edi),%edi
+movl %edi,-8(%ebp)
+movl -8(%ebp),%edi
+cmpl $115,%edi
+je .LC36
+cmpl $115,%edi
+jg .LC41
+.LC40:
+movl -8(%ebp),%edi
+cmpl $98,%edi
+jl .LC22
+cmpl $102,%edi
+jg .LC22
+jmp *.LC42-392(,%edi,4)
+.data
+.align 4
+.LC42:
+.long .LC25
+.long .LC30
+.long .LC32
+.long .LC22
+.long .LC38
+.text
+.LC41:
+cmpl $119,-8(%ebp)
+je .LC34
+jmp .LC22
+.LC25:
+movl -4(%ebp),%edi
+leal 16(%edi),%edi
+movl %edi,-28(%ebp)
+movl %edi,-4(%ebp)
+leal -24(%ebp),%edi
+movl -28(%ebp),%esi
+leal -16(%esi),%esi
+movl $16,%ecx
+rep
+movsb
+pushl -12(%ebp)
+pushl -16(%ebp)
+pushl -20(%ebp)
+pushl -24(%ebp)
+pushl $.LC26
+call printf
+addl $20,%esp
+jmp .LC21
+.LC30:
+movl -4(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-4(%ebp)
+movsbl -4(%edi),%edi
+pushl %edi
+pushl $.LC31
+call printf
+addl $8,%esp
+jmp .LC21
+.LC32:
+movl -4(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-4(%ebp)
+pushl -4(%edi)
+pushl $.LC33
+call printf
+addl $8,%esp
+jmp .LC21
+.LC34:
+movl -4(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-4(%ebp)
+movswl -4(%edi),%edi
+pushl %edi
+pushl $.LC35
+call printf
+addl $8,%esp
+jmp .LC21
+.LC36:
+movl -4(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-4(%ebp)
+pushl -4(%edi)
+pushl $.LC37
+call printf
+addl $8,%esp
+jmp .LC21
+.LC38:
+movl -4(%ebp),%edi
+leal 8(%edi),%edi
+movl %edi,-4(%ebp)
+fldl -8(%edi)
+subl $8,%esp
+fstpl (%esp)
+pushl $.LC39
+call printf
+addl $12,%esp
+jmp .LC21
+.LC22:
+movl 20(%ebp),%edi
+movsbl (,%edi),%edi
+pushl %edi
+pushl $.LC31
+call printf
+addl $8,%esp
+jmp .LC21
+.LC20:
+movl 20(%ebp),%edi
+movsbl (,%edi),%edi
+pushl %edi
+pushl $.LC31
+call printf
+addl $8,%esp
+.LC21:
+.LC17:
+incl 20(%ebp)
+.LC19:
+movl 20(%ebp),%edi
+movsbl (,%edi),%edi
+cmpl $0,%edi
+jne .LC16
+movl $0,%eax
+.LC13:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf44:
+.size print,.Lf44-print
+.data
+.align 1
+.LC39:
+.byte 37
+.byte 102
+.byte 0
+.align 1
+.LC37:
+.byte 37
+.byte 115
+.byte 0
+.align 1
+.LC35:
+.byte 37
+.byte 120
+.byte 0
+.align 1
+.LC33:
+.byte 37
+.byte 100
+.byte 0
+.align 1
+.LC31:
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.LC26:
+.byte 123
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 125
+.byte 0
+.align 1
+.LC11:
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 32
+.byte 37
+.byte 98
+.byte 10
+.byte 0
+.align 4
+.LC10:
+.long 0
+.long 1075052544
+.align 1
+.LC9:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 32
+.byte 37
+.byte 102
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.LC8:
+.byte 115
+.byte 116
+.byte 0
+.align 1
+.LC7:
+.byte 116
+.byte 101
+.byte 0
+.align 1
+.LC6:
+.byte 37
+.byte 115
+.byte 37
+.byte 115
+.byte 32
+.byte 37
+.byte 119
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.LC5:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 100
+.byte 37
+.byte 99
+.byte 0
+.align 1
+.LC4:
+.byte 50
+.byte 0
+.align 1
+.LC3:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC2:
+.byte 116
+.byte 101
+.byte 115
+.byte 116
+.byte 32
+.byte 49
+.byte 10
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/struct.1bk b/lcc/x86/linux/tst/struct.1bk
index 2358779..807f3da 100755
--- a/lcc/x86/linux/tst/struct.1bk
+++ b/lcc/x86/linux/tst/struct.1bk
@@ -1,5 +1,5 @@
-(-1,-1) is not within [10,10; 310,310]
-(1,1) is not within [10,10; 310,310]
-(20,300) is within [10,10; 310,310]
-(500,400) is not within [10,10; 310,310]
-ab
+(-1,-1) is not within [10,10; 310,310]
+(1,1) is not within [10,10; 310,310]
+(20,300) is within [10,10; 310,310]
+(500,400) is not within [10,10; 310,310]
+ab
diff --git a/lcc/x86/linux/tst/struct.2bk b/lcc/x86/linux/tst/struct.2bk
index 8a01bb1..cb0fbd0 100755
--- a/lcc/x86/linux/tst/struct.2bk
+++ b/lcc/x86/linux/tst/struct.2bk
@@ -1,2 +1,2 @@
-tst/struct.c:49: warning: missing return value
-tst/struct.c:68: warning: missing return value
+tst/struct.c:49: warning: missing return value
+tst/struct.c:68: warning: missing return value
diff --git a/lcc/x86/linux/tst/struct.sbk b/lcc/x86/linux/tst/struct.sbk
index 7c5b58b..d9a11d2 100755
--- a/lcc/x86/linux/tst/struct.sbk
+++ b/lcc/x86/linux/tst/struct.sbk
@@ -1,477 +1,477 @@
-.globl addpoint
-.text
-.align 16
-.type addpoint,@function
-addpoint:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 32(%ebp),%edi
-addl %edi,24(%ebp)
-movl 36(%ebp),%edi
-addl %edi,28(%ebp)
-movl 20(%ebp),%edi
-leal 24(%ebp),%esi
-movl $8,%ecx
-rep
-movsb
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf5:
-.size addpoint,.Lf5-addpoint
-.globl canonrect
-.align 16
-.type canonrect,@function
-canonrect:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $32,%esp
-movl 32(%ebp),%edi
-cmpl %edi,24(%ebp)
-jge .LC11
-movl 24(%ebp),%edi
-movl %edi,-20(%ebp)
-jmp .LC12
-.LC11:
-movl 32(%ebp),%edi
-movl %edi,-20(%ebp)
-.LC12:
-movl -20(%ebp),%edi
-movl %edi,-16(%ebp)
-movl 36(%ebp),%edi
-cmpl %edi,28(%ebp)
-jge .LC21
-movl 28(%ebp),%edi
-movl %edi,-24(%ebp)
-jmp .LC22
-.LC21:
-movl 36(%ebp),%edi
-movl %edi,-24(%ebp)
-.LC22:
-movl -24(%ebp),%edi
-movl %edi,-12(%ebp)
-movl 32(%ebp),%edi
-cmpl %edi,24(%ebp)
-jle .LC27
-movl 24(%ebp),%edi
-movl %edi,-28(%ebp)
-jmp .LC28
-.LC27:
-movl 32(%ebp),%edi
-movl %edi,-28(%ebp)
-.LC28:
-movl -28(%ebp),%edi
-movl %edi,-8(%ebp)
-movl 36(%ebp),%edi
-cmpl %edi,28(%ebp)
-jle .LC38
-movl 28(%ebp),%edi
-movl %edi,-32(%ebp)
-jmp .LC39
-.LC38:
-movl 36(%ebp),%edi
-movl %edi,-32(%ebp)
-.LC39:
-movl -32(%ebp),%edi
-movl %edi,-4(%ebp)
-movl 20(%ebp),%edi
-leal -16(%ebp),%esi
-movl $16,%ecx
-rep
-movsb
-.LC6:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf40:
-.size canonrect,.Lf40-canonrect
-.globl makepoint
-.align 16
-.type makepoint,@function
-makepoint:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-movl 24(%ebp),%edi
-movl %edi,-8(%ebp)
-movl 28(%ebp),%edi
-movl %edi,-4(%ebp)
-movl 20(%ebp),%edi
-leal -8(%ebp),%esi
-movl $8,%ecx
-rep
-movsb
-.LC41:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf44:
-.size makepoint,.Lf44-makepoint
-.globl makerect
-.align 16
-.type makerect,@function
-makerect:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $16,%esp
-leal -16(%ebp),%edi
-leal 24(%ebp),%esi
-movl $8,%ecx
-rep
-movsb
-leal -8(%ebp),%edi
-leal 32(%ebp),%esi
-movl $8,%ecx
-rep
-movsb
-leal -16(%ebp),%esi
-subl $16,%esp
-movl %esp,%edi
-movl $16,%ecx
-rep
-movsb
-pushl 20(%ebp)
-call canonrect
-addl $20,%esp
-.LC45:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf48:
-.size makerect,.Lf48-makerect
-.globl ptinrect
-.align 16
-.type ptinrect,@function
-ptinrect:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl 20(%ebp),%edi
-cmpl 28(%ebp),%edi
-jl .LC57
-cmpl 36(%ebp),%edi
-jge .LC57
-movl 32(%ebp),%edi
-cmpl %edi,24(%ebp)
-jl .LC57
-movl 40(%ebp),%edi
-cmpl %edi,24(%ebp)
-jge .LC57
-movl $1,-4(%ebp)
-jmp .LC58
-.LC57:
-movl $0,-4(%ebp)
-.LC58:
-movl -4(%ebp),%eax
-.LC49:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf59:
-.size ptinrect,.Lf59-ptinrect
-.data
-.globl y
-.align 4
-.type y,@object
-.size y,4
-y:
-.byte 97
-.byte 98
-.byte 0
-.space 1
-.globl odd
-.text
-.align 16
-.type odd,@function
-odd:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-leal -4(%ebp),%edi
-leal 20(%ebp),%esi
-movl $4,%ecx
-rep
-movsb
-leal -4(%ebp),%edi
-pushl %edi
-pushl $.LC61
-call printf
-addl $8,%esp
-movl $0,%eax
-.LC60:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf62:
-.size odd,.Lf62-odd
-.data
-.align 4
-.LC64:
-.long 0
-.long 0
-.align 4
-.LC65:
-.long 320
-.long 320
-.align 4
-.LC66:
-.long -1
-.long -1
-.long 1
-.long 1
-.long 20
-.long 300
-.long 500
-.long 400
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $108,%esp
-leal -68(%ebp),%edi
-leal .LC64,%esi
-movl $8,%ecx
-rep
-movsb
-leal -76(%ebp),%edi
-leal .LC65,%esi
-movl $8,%ecx
-rep
-movsb
-leal -36(%ebp),%edi
-leal .LC66,%esi
-movl $32,%ecx
-rep
-movsb
-pushl $-10
-pushl $-10
-leal -84(%ebp),%edi
-pushl %edi
-call makepoint
-addl $12,%esp
-leal -84(%ebp),%esi
-subl $8,%esp
-movl %esp,%edi
-movl $8,%ecx
-rep
-movsb
-leal -76(%ebp),%esi
-subl $8,%esp
-movl %esp,%edi
-movl $8,%ecx
-rep
-movsb
-leal -92(%ebp),%edi
-pushl %edi
-call addpoint
-addl $20,%esp
-pushl $10
-pushl $10
-leal -100(%ebp),%edi
-pushl %edi
-call makepoint
-addl $12,%esp
-leal -100(%ebp),%esi
-subl $8,%esp
-movl %esp,%edi
-movl $8,%ecx
-rep
-movsb
-leal -68(%ebp),%esi
-subl $8,%esp
-movl %esp,%edi
-movl $8,%ecx
-rep
-movsb
-leal -108(%ebp),%edi
-pushl %edi
-call addpoint
-addl $20,%esp
-leal -108(%ebp),%esi
-subl $8,%esp
-movl %esp,%edi
-movl $8,%ecx
-rep
-movsb
-leal -92(%ebp),%esi
-subl $8,%esp
-movl %esp,%edi
-movl $8,%ecx
-rep
-movsb
-leal -52(%ebp),%edi
-pushl %edi
-call makerect
-addl $20,%esp
-movl $0,-4(%ebp)
-jmp .LC70
-.LC67:
-movl -4(%ebp),%edi
-leal (,%edi,8),%edi
-leal -32(%ebp),%esi
-pushl (%esi,%edi)
-leal -36(%ebp),%esi
-pushl (%esi,%edi)
-leal -60(%ebp),%edi
-pushl %edi
-call makepoint
-addl $12,%esp
-pushl -56(%ebp)
-movl -4(%ebp),%edi
-leal -36(%ebp),%esi
-pushl (%esi,%edi,8)
-pushl $.LC71
-call printf
-addl $12,%esp
-leal -52(%ebp),%esi
-subl $16,%esp
-movl %esp,%edi
-movl $16,%ecx
-rep
-movsb
-leal -60(%ebp),%esi
-subl $8,%esp
-movl %esp,%edi
-movl $8,%ecx
-rep
-movsb
-call ptinrect
-addl $24,%esp
-cmpl $0,%eax
-jne .LC74
-pushl $.LC76
-call printf
-addl $4,%esp
-.LC74:
-pushl -40(%ebp)
-pushl -44(%ebp)
-pushl -48(%ebp)
-pushl -52(%ebp)
-pushl $.LC77
-call printf
-addl $20,%esp
-.LC68:
-incl -4(%ebp)
-.LC70:
-movl -4(%ebp),%edi
-cmpl $4,%edi
-jb .LC67
-leal y,%esi
-subl $4,%esp
-movl %esp,%edi
-movl $4,%ecx
-rep
-movsb
-call odd
-addl $4,%esp
-pushl $0
-call exit
-addl $4,%esp
-movl $0,%eax
-.LC63:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf82:
-.size main,.Lf82-main
-.data
-.align 1
-.LC77:
-.byte 119
-.byte 105
-.byte 116
-.byte 104
-.byte 105
-.byte 110
-.byte 32
-.byte 91
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 59
-.byte 32
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 93
-.byte 10
-.byte 0
-.align 1
-.LC76:
-.byte 110
-.byte 111
-.byte 116
-.byte 32
-.byte 0
-.align 1
-.LC71:
-.byte 40
-.byte 37
-.byte 100
-.byte 44
-.byte 37
-.byte 100
-.byte 41
-.byte 32
-.byte 105
-.byte 115
-.byte 32
-.byte 0
-.align 1
-.LC61:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.text
-.ident "LCC: 4.1"
+.globl addpoint
+.text
+.align 16
+.type addpoint,@function
+addpoint:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 32(%ebp),%edi
+addl %edi,24(%ebp)
+movl 36(%ebp),%edi
+addl %edi,28(%ebp)
+movl 20(%ebp),%edi
+leal 24(%ebp),%esi
+movl $8,%ecx
+rep
+movsb
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf5:
+.size addpoint,.Lf5-addpoint
+.globl canonrect
+.align 16
+.type canonrect,@function
+canonrect:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $32,%esp
+movl 32(%ebp),%edi
+cmpl %edi,24(%ebp)
+jge .LC11
+movl 24(%ebp),%edi
+movl %edi,-20(%ebp)
+jmp .LC12
+.LC11:
+movl 32(%ebp),%edi
+movl %edi,-20(%ebp)
+.LC12:
+movl -20(%ebp),%edi
+movl %edi,-16(%ebp)
+movl 36(%ebp),%edi
+cmpl %edi,28(%ebp)
+jge .LC21
+movl 28(%ebp),%edi
+movl %edi,-24(%ebp)
+jmp .LC22
+.LC21:
+movl 36(%ebp),%edi
+movl %edi,-24(%ebp)
+.LC22:
+movl -24(%ebp),%edi
+movl %edi,-12(%ebp)
+movl 32(%ebp),%edi
+cmpl %edi,24(%ebp)
+jle .LC27
+movl 24(%ebp),%edi
+movl %edi,-28(%ebp)
+jmp .LC28
+.LC27:
+movl 32(%ebp),%edi
+movl %edi,-28(%ebp)
+.LC28:
+movl -28(%ebp),%edi
+movl %edi,-8(%ebp)
+movl 36(%ebp),%edi
+cmpl %edi,28(%ebp)
+jle .LC38
+movl 28(%ebp),%edi
+movl %edi,-32(%ebp)
+jmp .LC39
+.LC38:
+movl 36(%ebp),%edi
+movl %edi,-32(%ebp)
+.LC39:
+movl -32(%ebp),%edi
+movl %edi,-4(%ebp)
+movl 20(%ebp),%edi
+leal -16(%ebp),%esi
+movl $16,%ecx
+rep
+movsb
+.LC6:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf40:
+.size canonrect,.Lf40-canonrect
+.globl makepoint
+.align 16
+.type makepoint,@function
+makepoint:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+movl 24(%ebp),%edi
+movl %edi,-8(%ebp)
+movl 28(%ebp),%edi
+movl %edi,-4(%ebp)
+movl 20(%ebp),%edi
+leal -8(%ebp),%esi
+movl $8,%ecx
+rep
+movsb
+.LC41:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf44:
+.size makepoint,.Lf44-makepoint
+.globl makerect
+.align 16
+.type makerect,@function
+makerect:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $16,%esp
+leal -16(%ebp),%edi
+leal 24(%ebp),%esi
+movl $8,%ecx
+rep
+movsb
+leal -8(%ebp),%edi
+leal 32(%ebp),%esi
+movl $8,%ecx
+rep
+movsb
+leal -16(%ebp),%esi
+subl $16,%esp
+movl %esp,%edi
+movl $16,%ecx
+rep
+movsb
+pushl 20(%ebp)
+call canonrect
+addl $20,%esp
+.LC45:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf48:
+.size makerect,.Lf48-makerect
+.globl ptinrect
+.align 16
+.type ptinrect,@function
+ptinrect:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl 20(%ebp),%edi
+cmpl 28(%ebp),%edi
+jl .LC57
+cmpl 36(%ebp),%edi
+jge .LC57
+movl 32(%ebp),%edi
+cmpl %edi,24(%ebp)
+jl .LC57
+movl 40(%ebp),%edi
+cmpl %edi,24(%ebp)
+jge .LC57
+movl $1,-4(%ebp)
+jmp .LC58
+.LC57:
+movl $0,-4(%ebp)
+.LC58:
+movl -4(%ebp),%eax
+.LC49:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf59:
+.size ptinrect,.Lf59-ptinrect
+.data
+.globl y
+.align 4
+.type y,@object
+.size y,4
+y:
+.byte 97
+.byte 98
+.byte 0
+.space 1
+.globl odd
+.text
+.align 16
+.type odd,@function
+odd:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+leal -4(%ebp),%edi
+leal 20(%ebp),%esi
+movl $4,%ecx
+rep
+movsb
+leal -4(%ebp),%edi
+pushl %edi
+pushl $.LC61
+call printf
+addl $8,%esp
+movl $0,%eax
+.LC60:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf62:
+.size odd,.Lf62-odd
+.data
+.align 4
+.LC64:
+.long 0
+.long 0
+.align 4
+.LC65:
+.long 320
+.long 320
+.align 4
+.LC66:
+.long -1
+.long -1
+.long 1
+.long 1
+.long 20
+.long 300
+.long 500
+.long 400
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $108,%esp
+leal -68(%ebp),%edi
+leal .LC64,%esi
+movl $8,%ecx
+rep
+movsb
+leal -76(%ebp),%edi
+leal .LC65,%esi
+movl $8,%ecx
+rep
+movsb
+leal -36(%ebp),%edi
+leal .LC66,%esi
+movl $32,%ecx
+rep
+movsb
+pushl $-10
+pushl $-10
+leal -84(%ebp),%edi
+pushl %edi
+call makepoint
+addl $12,%esp
+leal -84(%ebp),%esi
+subl $8,%esp
+movl %esp,%edi
+movl $8,%ecx
+rep
+movsb
+leal -76(%ebp),%esi
+subl $8,%esp
+movl %esp,%edi
+movl $8,%ecx
+rep
+movsb
+leal -92(%ebp),%edi
+pushl %edi
+call addpoint
+addl $20,%esp
+pushl $10
+pushl $10
+leal -100(%ebp),%edi
+pushl %edi
+call makepoint
+addl $12,%esp
+leal -100(%ebp),%esi
+subl $8,%esp
+movl %esp,%edi
+movl $8,%ecx
+rep
+movsb
+leal -68(%ebp),%esi
+subl $8,%esp
+movl %esp,%edi
+movl $8,%ecx
+rep
+movsb
+leal -108(%ebp),%edi
+pushl %edi
+call addpoint
+addl $20,%esp
+leal -108(%ebp),%esi
+subl $8,%esp
+movl %esp,%edi
+movl $8,%ecx
+rep
+movsb
+leal -92(%ebp),%esi
+subl $8,%esp
+movl %esp,%edi
+movl $8,%ecx
+rep
+movsb
+leal -52(%ebp),%edi
+pushl %edi
+call makerect
+addl $20,%esp
+movl $0,-4(%ebp)
+jmp .LC70
+.LC67:
+movl -4(%ebp),%edi
+leal (,%edi,8),%edi
+leal -32(%ebp),%esi
+pushl (%esi,%edi)
+leal -36(%ebp),%esi
+pushl (%esi,%edi)
+leal -60(%ebp),%edi
+pushl %edi
+call makepoint
+addl $12,%esp
+pushl -56(%ebp)
+movl -4(%ebp),%edi
+leal -36(%ebp),%esi
+pushl (%esi,%edi,8)
+pushl $.LC71
+call printf
+addl $12,%esp
+leal -52(%ebp),%esi
+subl $16,%esp
+movl %esp,%edi
+movl $16,%ecx
+rep
+movsb
+leal -60(%ebp),%esi
+subl $8,%esp
+movl %esp,%edi
+movl $8,%ecx
+rep
+movsb
+call ptinrect
+addl $24,%esp
+cmpl $0,%eax
+jne .LC74
+pushl $.LC76
+call printf
+addl $4,%esp
+.LC74:
+pushl -40(%ebp)
+pushl -44(%ebp)
+pushl -48(%ebp)
+pushl -52(%ebp)
+pushl $.LC77
+call printf
+addl $20,%esp
+.LC68:
+incl -4(%ebp)
+.LC70:
+movl -4(%ebp),%edi
+cmpl $4,%edi
+jb .LC67
+leal y,%esi
+subl $4,%esp
+movl %esp,%edi
+movl $4,%ecx
+rep
+movsb
+call odd
+addl $4,%esp
+pushl $0
+call exit
+addl $4,%esp
+movl $0,%eax
+.LC63:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf82:
+.size main,.Lf82-main
+.data
+.align 1
+.LC77:
+.byte 119
+.byte 105
+.byte 116
+.byte 104
+.byte 105
+.byte 110
+.byte 32
+.byte 91
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 59
+.byte 32
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 93
+.byte 10
+.byte 0
+.align 1
+.LC76:
+.byte 110
+.byte 111
+.byte 116
+.byte 32
+.byte 0
+.align 1
+.LC71:
+.byte 40
+.byte 37
+.byte 100
+.byte 44
+.byte 37
+.byte 100
+.byte 41
+.byte 32
+.byte 105
+.byte 115
+.byte 32
+.byte 0
+.align 1
+.LC61:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/switch.1bk b/lcc/x86/linux/tst/switch.1bk
index 559e8e3..de46a73 100755
--- a/lcc/x86/linux/tst/switch.1bk
+++ b/lcc/x86/linux/tst/switch.1bk
@@ -1,76 +1,76 @@
-b = 0x8
-f = 0xc
-n = 0xa
-r = 0xd
-t = 0x9
-v = 0xb
-x = 0x78
-f:
-x = 0
-x = 1
-x = 2
-x = 2
-x = 2
-x = 2
-x = 2
-x = 7
-x = 8
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 16
-x = 17
-x = 18
-x = 19
-x = 20
-g:
-1 1
-1 2
-2 3
-2 4
-2 5
-3 6
-d 6
-3 7
-d 7
-3 8
-d 8
-d 9
-d 10
-h:
-i = 8
-i = 16
-i = 120
-i = 128
-i = 248
-i = 264
-i = 272
-i = 280
-i = 288
-i = 296
-i = 304
-i = 312
-488 defaults
-x = 0x1000000
-x = 0x2000000
-x = 0x3000000
-x = 0x4000000
-x = 0x5000000
-x = 0x6000000 (default)
-x = 0x7000000 (default)
-0
-1
-2
-3
-4
-5
-0
-1
-2
-3
-4
-5
+b = 0x8
+f = 0xc
+n = 0xa
+r = 0xd
+t = 0x9
+v = 0xb
+x = 0x78
+f:
+x = 0
+x = 1
+x = 2
+x = 2
+x = 2
+x = 2
+x = 2
+x = 7
+x = 8
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 16
+x = 17
+x = 18
+x = 19
+x = 20
+g:
+1 1
+1 2
+2 3
+2 4
+2 5
+3 6
+d 6
+3 7
+d 7
+3 8
+d 8
+d 9
+d 10
+h:
+i = 8
+i = 16
+i = 120
+i = 128
+i = 248
+i = 264
+i = 272
+i = 280
+i = 288
+i = 296
+i = 304
+i = 312
+488 defaults
+x = 0x1000000
+x = 0x2000000
+x = 0x3000000
+x = 0x4000000
+x = 0x5000000
+x = 0x6000000 (default)
+x = 0x7000000 (default)
+0
+1
+2
+3
+4
+5
+0
+1
+2
+3
+4
+5
diff --git a/lcc/x86/linux/tst/switch.2bk b/lcc/x86/linux/tst/switch.2bk
index 76387b3..709b419 100755
--- a/lcc/x86/linux/tst/switch.2bk
+++ b/lcc/x86/linux/tst/switch.2bk
@@ -1,5 +1,5 @@
-tst/switch.c:55: warning: missing return value
-tst/switch.c:73: warning: missing return value
-tst/switch.c:97: warning: missing return value
-tst/switch.c:112: warning: missing return value
-tst/switch.c:137: warning: missing return value
+tst/switch.c:55: warning: missing return value
+tst/switch.c:73: warning: missing return value
+tst/switch.c:97: warning: missing return value
+tst/switch.c:112: warning: missing return value
+tst/switch.c:137: warning: missing return value
diff --git a/lcc/x86/linux/tst/switch.sbk b/lcc/x86/linux/tst/switch.sbk
index c77e6a6..2825130 100755
--- a/lcc/x86/linux/tst/switch.sbk
+++ b/lcc/x86/linux/tst/switch.sbk
@@ -1,899 +1,899 @@
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-leal .LC6,%edi
-movl %edi,-4(%ebp)
-jmp .LC5
-.LC2:
-movl -4(%ebp),%edi
-movsbl (,%edi),%edi
-pushl %edi
-call backslash
-addl $4,%esp
-pushl %eax
-movl -4(%ebp),%edi
-movsbl (,%edi),%edi
-pushl %edi
-pushl $.LC7
-call printf
-addl $12,%esp
-.LC3:
-incl -4(%ebp)
-.LC5:
-movl -4(%ebp),%edi
-movsbl (,%edi),%edi
-cmpl $0,%edi
-jne .LC2
-call f
-call g
-call h
-movl $16777216,-8(%ebp)
-jmp .LC11
-.LC8:
-pushl -8(%ebp)
-call big
-addl $4,%esp
-.LC9:
-addl $16777216,-8(%ebp)
-.LC11:
-movl -8(%ebp),%edi
-andl $117440512,%edi
-cmpl $0,%edi
-jne .LC8
-call limit
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf12:
-.size main,.Lf12-main
-.globl backslash
-.align 16
-.type backslash,@function
-backslash:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 20(%ebp),%edi
-cmpl $102,%edi
-je .LC17
-cmpl $102,%edi
-jg .LC23
-.LC22:
-cmpl $98,20(%ebp)
-je .LC16
-jmp .LC14
-.LC23:
-movl 20(%ebp),%edi
-cmpl $110,%edi
-je .LC18
-cmpl $110,%edi
-jl .LC14
-.LC24:
-movl 20(%ebp),%edi
-cmpl $114,%edi
-je .LC19
-cmpl $116,%edi
-je .LC20
-cmpl $118,%edi
-je .LC21
-jmp .LC14
-.LC16:
-movl $8,%eax
-jmp .LC13
-.LC17:
-movl $12,%eax
-jmp .LC13
-.LC18:
-movl $10,%eax
-jmp .LC13
-.LC19:
-movl $13,%eax
-jmp .LC13
-.LC20:
-movl $9,%eax
-jmp .LC13
-.LC21:
-movl $11,%eax
-jmp .LC13
-.LC14:
-movl 20(%ebp),%eax
-.LC13:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf25:
-.size backslash,.Lf25-backslash
-.globl f
-.align 16
-.type f,@function
-f:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $12,%esp
-movl $0,-8(%ebp)
-pushl $.LC27
-call printf
-addl $4,%esp
-movl $0,-4(%ebp)
-.LC28:
-movl -4(%ebp),%edi
-movl %edi,-12(%ebp)
-movl -4(%ebp),%edi
-cmpl $1,%edi
-jl .LC32
-cmpl $20,%edi
-jg .LC32
-jmp *.LC44-4(,%edi,4)
-.data
-.align 4
-.LC44:
-.long .LC34
-.long .LC35
-.long .LC32
-.long .LC32
-.long .LC32
-.long .LC32
-.long .LC36
-.long .LC37
-.long .LC38
-.long .LC32
-.long .LC32
-.long .LC32
-.long .LC32
-.long .LC32
-.long .LC32
-.long .LC39
-.long .LC40
-.long .LC41
-.long .LC42
-.long .LC43
-.text
-.LC34:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC33
-.LC35:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC33
-.LC36:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC33
-.LC37:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC33
-.LC38:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC33
-.LC39:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC33
-.LC40:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC33
-.LC41:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC33
-.LC42:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC33
-.LC43:
-movl -4(%ebp),%edi
-movl %edi,-8(%ebp)
-.LC32:
-.LC33:
-pushl -8(%ebp)
-pushl $.LC46
-call printf
-addl $8,%esp
-.LC29:
-incl -4(%ebp)
-cmpl $20,-4(%ebp)
-jle .LC28
-movl $0,%eax
-.LC26:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf47:
-.size f,.Lf47-f
-.globl g
-.align 16
-.type g,@function
-g:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-pushl $.LC49
-call printf
-addl $4,%esp
-movl $1,-4(%ebp)
-.LC50:
-movl -4(%ebp),%edi
-cmpl $1001,%edi
-jl .LC67
-cmpl $1004,%edi
-jg .LC68
-jmp *.LC69-4004(,%edi,4)
-.data
-.align 4
-.LC69:
-.long .LC63
-.long .LC63
-.long .LC63
-.long .LC63
-.text
-.LC67:
-movl -4(%ebp),%edi
-cmpl $1,%edi
-jl .LC54
-cmpl $8,%edi
-jg .LC54
-jmp *.LC71-4(,%edi,4)
-.data
-.align 4
-.LC71:
-.long .LC56
-.long .LC56
-.long .LC58
-.long .LC58
-.long .LC58
-.long .LC60
-.long .LC60
-.long .LC60
-.text
-.LC68:
-movl -4(%ebp),%edi
-cmpl $3001,%edi
-jl .LC54
-cmpl $3004,%edi
-jg .LC54
-jmp *.LC73-12004(,%edi,4)
-.data
-.align 4
-.LC73:
-.long .LC65
-.long .LC65
-.long .LC65
-.long .LC65
-.text
-.LC56:
-pushl -4(%ebp)
-pushl $.LC57
-call printf
-addl $8,%esp
-jmp .LC55
-.LC58:
-pushl -4(%ebp)
-pushl $.LC59
-call printf
-addl $8,%esp
-jmp .LC55
-.LC60:
-pushl -4(%ebp)
-pushl $.LC61
-call printf
-addl $8,%esp
-.LC54:
-pushl -4(%ebp)
-pushl $.LC62
-call printf
-addl $8,%esp
-jmp .LC55
-.LC63:
-pushl -4(%ebp)
-pushl $.LC64
-call printf
-addl $8,%esp
-jmp .LC55
-.LC65:
-pushl -4(%ebp)
-pushl $.LC66
-call printf
-addl $8,%esp
-.LC55:
-.LC51:
-incl -4(%ebp)
-cmpl $10,-4(%ebp)
-jle .LC50
-movl $0,%eax
-.LC48:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf75:
-.size g,.Lf75-g
-.globl h
-.align 16
-.type h,@function
-h:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-movl $0,-8(%ebp)
-pushl $.LC77
-call printf
-addl $4,%esp
-movl $1,-4(%ebp)
-.LC78:
-movl -4(%ebp),%edi
-cmpl $264,%edi
-je .LC90
-cmpl $264,%edi
-jg .LC98
-.LC97:
-movl -4(%ebp),%edi
-cmpl $120,%edi
-je .LC88
-cmpl $120,%edi
-jg .LC100
-.LC99:
-movl -4(%ebp),%edi
-cmpl $8,%edi
-je .LC87
-cmpl $8,%edi
-jl .LC82
-.LC101:
-cmpl $16,-4(%ebp)
-je .LC86
-jmp .LC82
-.LC100:
-movl -4(%ebp),%edi
-cmpl $128,%edi
-je .LC84
-cmpl $128,%edi
-jl .LC82
-.LC102:
-cmpl $248,-4(%ebp)
-je .LC91
-jmp .LC82
-.LC98:
-movl -4(%ebp),%edi
-cmpl $288,%edi
-je .LC95
-cmpl $288,%edi
-jg .LC104
-.LC103:
-movl -4(%ebp),%edi
-cmpl $272,%edi
-je .LC92
-cmpl $272,%edi
-jl .LC82
-.LC105:
-cmpl $280,-4(%ebp)
-je .LC89
-jmp .LC82
-.LC104:
-movl -4(%ebp),%edi
-cmpl $304,%edi
-je .LC93
-cmpl $304,%edi
-jg .LC107
-.LC106:
-cmpl $296,-4(%ebp)
-je .LC94
-jmp .LC82
-.LC107:
-cmpl $312,-4(%ebp)
-je .LC96
-jmp .LC82
-.LC82:
-incl -8(%ebp)
-jmp .LC79
-.LC84:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC86:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC87:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC88:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC89:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC90:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC91:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC92:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC93:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC94:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC95:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-jmp .LC83
-.LC96:
-pushl -4(%ebp)
-pushl $.LC85
-call printf
-addl $8,%esp
-.LC83:
-.LC79:
-incl -4(%ebp)
-cmpl $500,-4(%ebp)
-jle .LC78
-pushl -8(%ebp)
-pushl $.LC108
-call printf
-addl $8,%esp
-movl $0,%eax
-.LC76:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf109:
-.size h,.Lf109-h
-.globl big
-.align 16
-.type big,@function
-big:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl 20(%ebp),%edi
-andl $0x6000000,%edi
-movl %edi,-4(%ebp)
-movl -4(%ebp),%edi
-cmpl $33554432,%edi
-je .LC116
-cmpl $33554432,%edi
-jg .LC120
-.LC119:
-movl -4(%ebp),%edi
-cmpl $-2,%edi
-je .LC114
-cmpl $-1,%edi
-je .LC114
-cmpl $0,%edi
-je .LC114
-jmp .LC111
-.LC120:
-movl -4(%ebp),%edi
-cmpl $67108864,%edi
-je .LC117
-jmp .LC111
-.LC114:
-pushl 20(%ebp)
-pushl $.LC115
-call printf
-addl $8,%esp
-jmp .LC112
-.LC116:
-pushl 20(%ebp)
-pushl $.LC115
-call printf
-addl $8,%esp
-jmp .LC112
-.LC117:
-pushl 20(%ebp)
-pushl $.LC115
-call printf
-addl $8,%esp
-jmp .LC112
-.LC111:
-pushl 20(%ebp)
-pushl $.LC118
-call printf
-addl $8,%esp
-.LC112:
-movl $0,%eax
-.LC110:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf121:
-.size big,.Lf121-big
-.globl limit
-.align 16
-.type limit,@function
-limit:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl $-2147483648,-4(%ebp)
-.LC123:
-movl -4(%ebp),%edi
-movl $-2147483648,%esi
-cmpl $-2147483648,%edi
-jl .LC127
-cmpl $-2147483644,%edi
-jg .LC127
-leal (,%edi,4),%edi
-leal (,%esi,4),%esi
-subl %esi,%edi
-jmp *.LC140(%edi)
-.data
-.align 4
-.LC140:
-.long .LC129
-.long .LC131
-.long .LC133
-.long .LC135
-.long .LC137
-.text
-.LC129:
-pushl $.LC130
-call printf
-addl $4,%esp
-jmp .LC128
-.LC131:
-pushl $.LC132
-call printf
-addl $4,%esp
-jmp .LC128
-.LC133:
-pushl $.LC134
-call printf
-addl $4,%esp
-jmp .LC128
-.LC135:
-pushl $.LC136
-call printf
-addl $4,%esp
-jmp .LC128
-.LC137:
-pushl $.LC138
-call printf
-addl $4,%esp
-jmp .LC128
-.LC127:
-pushl $.LC139
-call printf
-addl $4,%esp
-.LC128:
-.LC124:
-incl -4(%ebp)
-cmpl $-2147483643,-4(%ebp)
-jle .LC123
-movl $2147483647,-4(%ebp)
-.LC141:
-movl -4(%ebp),%edi
-movl $2147483643,%esi
-cmpl $2147483643,%edi
-jl .LC145
-cmpl $2147483647,%edi
-jg .LC145
-leal (,%edi,4),%edi
-leal (,%esi,4),%esi
-subl %esi,%edi
-jmp *.LC152(%edi)
-.data
-.align 4
-.LC152:
-.long .LC151
-.long .LC150
-.long .LC149
-.long .LC148
-.long .LC147
-.text
-.LC147:
-pushl $.LC130
-call printf
-addl $4,%esp
-jmp .LC146
-.LC148:
-pushl $.LC132
-call printf
-addl $4,%esp
-jmp .LC146
-.LC149:
-pushl $.LC134
-call printf
-addl $4,%esp
-jmp .LC146
-.LC150:
-pushl $.LC136
-call printf
-addl $4,%esp
-jmp .LC146
-.LC151:
-pushl $.LC138
-call printf
-addl $4,%esp
-jmp .LC146
-.LC145:
-pushl $.LC139
-call printf
-addl $4,%esp
-.LC146:
-.LC142:
-decl -4(%ebp)
-cmpl $2147483642,-4(%ebp)
-jge .LC141
-movl $0,%eax
-.LC122:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf153:
-.size limit,.Lf153-limit
-.data
-.align 1
-.LC139:
-.byte 53
-.byte 10
-.byte 0
-.align 1
-.LC138:
-.byte 52
-.byte 10
-.byte 0
-.align 1
-.LC136:
-.byte 51
-.byte 10
-.byte 0
-.align 1
-.LC134:
-.byte 50
-.byte 10
-.byte 0
-.align 1
-.LC132:
-.byte 49
-.byte 10
-.byte 0
-.align 1
-.LC130:
-.byte 48
-.byte 10
-.byte 0
-.align 1
-.LC118:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 32
-.byte 40
-.byte 100
-.byte 101
-.byte 102
-.byte 97
-.byte 117
-.byte 108
-.byte 116
-.byte 41
-.byte 10
-.byte 0
-.align 1
-.LC115:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 1
-.LC108:
-.byte 37
-.byte 100
-.byte 32
-.byte 100
-.byte 101
-.byte 102
-.byte 97
-.byte 117
-.byte 108
-.byte 116
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC85:
-.byte 105
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC77:
-.byte 104
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.LC66:
-.byte 54
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC64:
-.byte 53
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC62:
-.byte 100
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC61:
-.byte 51
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC59:
-.byte 50
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC57:
-.byte 49
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC49:
-.byte 103
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.LC46:
-.byte 120
-.byte 32
-.byte 61
-.byte 32
-.byte 37
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC27:
-.byte 102
-.byte 58
-.byte 10
-.byte 0
-.align 1
-.LC7:
-.byte 37
-.byte 99
-.byte 32
-.byte 61
-.byte 32
-.byte 48
-.byte 120
-.byte 37
-.byte 120
-.byte 10
-.byte 0
-.align 1
-.LC6:
-.byte 98
-.byte 102
-.byte 110
-.byte 114
-.byte 116
-.byte 118
-.byte 120
-.byte 0
-.text
-.ident "LCC: 4.1"
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+leal .LC6,%edi
+movl %edi,-4(%ebp)
+jmp .LC5
+.LC2:
+movl -4(%ebp),%edi
+movsbl (,%edi),%edi
+pushl %edi
+call backslash
+addl $4,%esp
+pushl %eax
+movl -4(%ebp),%edi
+movsbl (,%edi),%edi
+pushl %edi
+pushl $.LC7
+call printf
+addl $12,%esp
+.LC3:
+incl -4(%ebp)
+.LC5:
+movl -4(%ebp),%edi
+movsbl (,%edi),%edi
+cmpl $0,%edi
+jne .LC2
+call f
+call g
+call h
+movl $16777216,-8(%ebp)
+jmp .LC11
+.LC8:
+pushl -8(%ebp)
+call big
+addl $4,%esp
+.LC9:
+addl $16777216,-8(%ebp)
+.LC11:
+movl -8(%ebp),%edi
+andl $117440512,%edi
+cmpl $0,%edi
+jne .LC8
+call limit
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf12:
+.size main,.Lf12-main
+.globl backslash
+.align 16
+.type backslash,@function
+backslash:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 20(%ebp),%edi
+cmpl $102,%edi
+je .LC17
+cmpl $102,%edi
+jg .LC23
+.LC22:
+cmpl $98,20(%ebp)
+je .LC16
+jmp .LC14
+.LC23:
+movl 20(%ebp),%edi
+cmpl $110,%edi
+je .LC18
+cmpl $110,%edi
+jl .LC14
+.LC24:
+movl 20(%ebp),%edi
+cmpl $114,%edi
+je .LC19
+cmpl $116,%edi
+je .LC20
+cmpl $118,%edi
+je .LC21
+jmp .LC14
+.LC16:
+movl $8,%eax
+jmp .LC13
+.LC17:
+movl $12,%eax
+jmp .LC13
+.LC18:
+movl $10,%eax
+jmp .LC13
+.LC19:
+movl $13,%eax
+jmp .LC13
+.LC20:
+movl $9,%eax
+jmp .LC13
+.LC21:
+movl $11,%eax
+jmp .LC13
+.LC14:
+movl 20(%ebp),%eax
+.LC13:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf25:
+.size backslash,.Lf25-backslash
+.globl f
+.align 16
+.type f,@function
+f:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $12,%esp
+movl $0,-8(%ebp)
+pushl $.LC27
+call printf
+addl $4,%esp
+movl $0,-4(%ebp)
+.LC28:
+movl -4(%ebp),%edi
+movl %edi,-12(%ebp)
+movl -4(%ebp),%edi
+cmpl $1,%edi
+jl .LC32
+cmpl $20,%edi
+jg .LC32
+jmp *.LC44-4(,%edi,4)
+.data
+.align 4
+.LC44:
+.long .LC34
+.long .LC35
+.long .LC32
+.long .LC32
+.long .LC32
+.long .LC32
+.long .LC36
+.long .LC37
+.long .LC38
+.long .LC32
+.long .LC32
+.long .LC32
+.long .LC32
+.long .LC32
+.long .LC32
+.long .LC39
+.long .LC40
+.long .LC41
+.long .LC42
+.long .LC43
+.text
+.LC34:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC33
+.LC35:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC33
+.LC36:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC33
+.LC37:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC33
+.LC38:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC33
+.LC39:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC33
+.LC40:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC33
+.LC41:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC33
+.LC42:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC33
+.LC43:
+movl -4(%ebp),%edi
+movl %edi,-8(%ebp)
+.LC32:
+.LC33:
+pushl -8(%ebp)
+pushl $.LC46
+call printf
+addl $8,%esp
+.LC29:
+incl -4(%ebp)
+cmpl $20,-4(%ebp)
+jle .LC28
+movl $0,%eax
+.LC26:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf47:
+.size f,.Lf47-f
+.globl g
+.align 16
+.type g,@function
+g:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+pushl $.LC49
+call printf
+addl $4,%esp
+movl $1,-4(%ebp)
+.LC50:
+movl -4(%ebp),%edi
+cmpl $1001,%edi
+jl .LC67
+cmpl $1004,%edi
+jg .LC68
+jmp *.LC69-4004(,%edi,4)
+.data
+.align 4
+.LC69:
+.long .LC63
+.long .LC63
+.long .LC63
+.long .LC63
+.text
+.LC67:
+movl -4(%ebp),%edi
+cmpl $1,%edi
+jl .LC54
+cmpl $8,%edi
+jg .LC54
+jmp *.LC71-4(,%edi,4)
+.data
+.align 4
+.LC71:
+.long .LC56
+.long .LC56
+.long .LC58
+.long .LC58
+.long .LC58
+.long .LC60
+.long .LC60
+.long .LC60
+.text
+.LC68:
+movl -4(%ebp),%edi
+cmpl $3001,%edi
+jl .LC54
+cmpl $3004,%edi
+jg .LC54
+jmp *.LC73-12004(,%edi,4)
+.data
+.align 4
+.LC73:
+.long .LC65
+.long .LC65
+.long .LC65
+.long .LC65
+.text
+.LC56:
+pushl -4(%ebp)
+pushl $.LC57
+call printf
+addl $8,%esp
+jmp .LC55
+.LC58:
+pushl -4(%ebp)
+pushl $.LC59
+call printf
+addl $8,%esp
+jmp .LC55
+.LC60:
+pushl -4(%ebp)
+pushl $.LC61
+call printf
+addl $8,%esp
+.LC54:
+pushl -4(%ebp)
+pushl $.LC62
+call printf
+addl $8,%esp
+jmp .LC55
+.LC63:
+pushl -4(%ebp)
+pushl $.LC64
+call printf
+addl $8,%esp
+jmp .LC55
+.LC65:
+pushl -4(%ebp)
+pushl $.LC66
+call printf
+addl $8,%esp
+.LC55:
+.LC51:
+incl -4(%ebp)
+cmpl $10,-4(%ebp)
+jle .LC50
+movl $0,%eax
+.LC48:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf75:
+.size g,.Lf75-g
+.globl h
+.align 16
+.type h,@function
+h:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+movl $0,-8(%ebp)
+pushl $.LC77
+call printf
+addl $4,%esp
+movl $1,-4(%ebp)
+.LC78:
+movl -4(%ebp),%edi
+cmpl $264,%edi
+je .LC90
+cmpl $264,%edi
+jg .LC98
+.LC97:
+movl -4(%ebp),%edi
+cmpl $120,%edi
+je .LC88
+cmpl $120,%edi
+jg .LC100
+.LC99:
+movl -4(%ebp),%edi
+cmpl $8,%edi
+je .LC87
+cmpl $8,%edi
+jl .LC82
+.LC101:
+cmpl $16,-4(%ebp)
+je .LC86
+jmp .LC82
+.LC100:
+movl -4(%ebp),%edi
+cmpl $128,%edi
+je .LC84
+cmpl $128,%edi
+jl .LC82
+.LC102:
+cmpl $248,-4(%ebp)
+je .LC91
+jmp .LC82
+.LC98:
+movl -4(%ebp),%edi
+cmpl $288,%edi
+je .LC95
+cmpl $288,%edi
+jg .LC104
+.LC103:
+movl -4(%ebp),%edi
+cmpl $272,%edi
+je .LC92
+cmpl $272,%edi
+jl .LC82
+.LC105:
+cmpl $280,-4(%ebp)
+je .LC89
+jmp .LC82
+.LC104:
+movl -4(%ebp),%edi
+cmpl $304,%edi
+je .LC93
+cmpl $304,%edi
+jg .LC107
+.LC106:
+cmpl $296,-4(%ebp)
+je .LC94
+jmp .LC82
+.LC107:
+cmpl $312,-4(%ebp)
+je .LC96
+jmp .LC82
+.LC82:
+incl -8(%ebp)
+jmp .LC79
+.LC84:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC86:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC87:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC88:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC89:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC90:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC91:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC92:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC93:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC94:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC95:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+jmp .LC83
+.LC96:
+pushl -4(%ebp)
+pushl $.LC85
+call printf
+addl $8,%esp
+.LC83:
+.LC79:
+incl -4(%ebp)
+cmpl $500,-4(%ebp)
+jle .LC78
+pushl -8(%ebp)
+pushl $.LC108
+call printf
+addl $8,%esp
+movl $0,%eax
+.LC76:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf109:
+.size h,.Lf109-h
+.globl big
+.align 16
+.type big,@function
+big:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl 20(%ebp),%edi
+andl $0x6000000,%edi
+movl %edi,-4(%ebp)
+movl -4(%ebp),%edi
+cmpl $33554432,%edi
+je .LC116
+cmpl $33554432,%edi
+jg .LC120
+.LC119:
+movl -4(%ebp),%edi
+cmpl $-2,%edi
+je .LC114
+cmpl $-1,%edi
+je .LC114
+cmpl $0,%edi
+je .LC114
+jmp .LC111
+.LC120:
+movl -4(%ebp),%edi
+cmpl $67108864,%edi
+je .LC117
+jmp .LC111
+.LC114:
+pushl 20(%ebp)
+pushl $.LC115
+call printf
+addl $8,%esp
+jmp .LC112
+.LC116:
+pushl 20(%ebp)
+pushl $.LC115
+call printf
+addl $8,%esp
+jmp .LC112
+.LC117:
+pushl 20(%ebp)
+pushl $.LC115
+call printf
+addl $8,%esp
+jmp .LC112
+.LC111:
+pushl 20(%ebp)
+pushl $.LC118
+call printf
+addl $8,%esp
+.LC112:
+movl $0,%eax
+.LC110:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf121:
+.size big,.Lf121-big
+.globl limit
+.align 16
+.type limit,@function
+limit:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl $-2147483648,-4(%ebp)
+.LC123:
+movl -4(%ebp),%edi
+movl $-2147483648,%esi
+cmpl $-2147483648,%edi
+jl .LC127
+cmpl $-2147483644,%edi
+jg .LC127
+leal (,%edi,4),%edi
+leal (,%esi,4),%esi
+subl %esi,%edi
+jmp *.LC140(%edi)
+.data
+.align 4
+.LC140:
+.long .LC129
+.long .LC131
+.long .LC133
+.long .LC135
+.long .LC137
+.text
+.LC129:
+pushl $.LC130
+call printf
+addl $4,%esp
+jmp .LC128
+.LC131:
+pushl $.LC132
+call printf
+addl $4,%esp
+jmp .LC128
+.LC133:
+pushl $.LC134
+call printf
+addl $4,%esp
+jmp .LC128
+.LC135:
+pushl $.LC136
+call printf
+addl $4,%esp
+jmp .LC128
+.LC137:
+pushl $.LC138
+call printf
+addl $4,%esp
+jmp .LC128
+.LC127:
+pushl $.LC139
+call printf
+addl $4,%esp
+.LC128:
+.LC124:
+incl -4(%ebp)
+cmpl $-2147483643,-4(%ebp)
+jle .LC123
+movl $2147483647,-4(%ebp)
+.LC141:
+movl -4(%ebp),%edi
+movl $2147483643,%esi
+cmpl $2147483643,%edi
+jl .LC145
+cmpl $2147483647,%edi
+jg .LC145
+leal (,%edi,4),%edi
+leal (,%esi,4),%esi
+subl %esi,%edi
+jmp *.LC152(%edi)
+.data
+.align 4
+.LC152:
+.long .LC151
+.long .LC150
+.long .LC149
+.long .LC148
+.long .LC147
+.text
+.LC147:
+pushl $.LC130
+call printf
+addl $4,%esp
+jmp .LC146
+.LC148:
+pushl $.LC132
+call printf
+addl $4,%esp
+jmp .LC146
+.LC149:
+pushl $.LC134
+call printf
+addl $4,%esp
+jmp .LC146
+.LC150:
+pushl $.LC136
+call printf
+addl $4,%esp
+jmp .LC146
+.LC151:
+pushl $.LC138
+call printf
+addl $4,%esp
+jmp .LC146
+.LC145:
+pushl $.LC139
+call printf
+addl $4,%esp
+.LC146:
+.LC142:
+decl -4(%ebp)
+cmpl $2147483642,-4(%ebp)
+jge .LC141
+movl $0,%eax
+.LC122:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf153:
+.size limit,.Lf153-limit
+.data
+.align 1
+.LC139:
+.byte 53
+.byte 10
+.byte 0
+.align 1
+.LC138:
+.byte 52
+.byte 10
+.byte 0
+.align 1
+.LC136:
+.byte 51
+.byte 10
+.byte 0
+.align 1
+.LC134:
+.byte 50
+.byte 10
+.byte 0
+.align 1
+.LC132:
+.byte 49
+.byte 10
+.byte 0
+.align 1
+.LC130:
+.byte 48
+.byte 10
+.byte 0
+.align 1
+.LC118:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 32
+.byte 40
+.byte 100
+.byte 101
+.byte 102
+.byte 97
+.byte 117
+.byte 108
+.byte 116
+.byte 41
+.byte 10
+.byte 0
+.align 1
+.LC115:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 1
+.LC108:
+.byte 37
+.byte 100
+.byte 32
+.byte 100
+.byte 101
+.byte 102
+.byte 97
+.byte 117
+.byte 108
+.byte 116
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC85:
+.byte 105
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC77:
+.byte 104
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.LC66:
+.byte 54
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC64:
+.byte 53
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC62:
+.byte 100
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC61:
+.byte 51
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC59:
+.byte 50
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC57:
+.byte 49
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC49:
+.byte 103
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.LC46:
+.byte 120
+.byte 32
+.byte 61
+.byte 32
+.byte 37
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC27:
+.byte 102
+.byte 58
+.byte 10
+.byte 0
+.align 1
+.LC7:
+.byte 37
+.byte 99
+.byte 32
+.byte 61
+.byte 32
+.byte 48
+.byte 120
+.byte 37
+.byte 120
+.byte 10
+.byte 0
+.align 1
+.LC6:
+.byte 98
+.byte 102
+.byte 110
+.byte 114
+.byte 116
+.byte 118
+.byte 120
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/wf1.1bk b/lcc/x86/linux/tst/wf1.1bk
index 095e087..a846267 100755
--- a/lcc/x86/linux/tst/wf1.1bk
+++ b/lcc/x86/linux/tst/wf1.1bk
@@ -1,74 +1,74 @@
-5 a
-2 and
-5 buf
-16 c
-8 char
-1 compare
-4 cond
-5 count
-1 d
-1 die
-3 else
-1 entry
-1 eof
-4 err
-1 error
-1 exit
-1 folded
-1 for
-1 free
-1 frequencies
-1 frequency
-1 get
-2 getchar
-3 getword
-14 if
-2 in
-1 index
-1 input
-1 install
-8 int
-1 into
-1 is
-4 isletter
-1 it
-1 itself
-5 left
-1 letter
-7 lookup
-1 main
-2 malloc
-1 message
-2 n
-1 necessary
-12 next
-9 node
-4 of
-1 on
-1 or
-1 otherwise
-2 out
-8 p
-3 print
-2 printf
-16 return
-5 right
-4 root
-25 s
-2 storage
-3 strcmp
-1 strcpy
-1 strlen
-8 struct
-1 structures
-2 subtree
-1 t
-5 tprint
-9 tree
-1 uses
-1 version
-1 wf
-3 while
-21 word
-9 words
-2 z
+5 a
+2 and
+5 buf
+16 c
+8 char
+1 compare
+4 cond
+5 count
+1 d
+1 die
+3 else
+1 entry
+1 eof
+4 err
+1 error
+1 exit
+1 folded
+1 for
+1 free
+1 frequencies
+1 frequency
+1 get
+2 getchar
+3 getword
+14 if
+2 in
+1 index
+1 input
+1 install
+8 int
+1 into
+1 is
+4 isletter
+1 it
+1 itself
+5 left
+1 letter
+7 lookup
+1 main
+2 malloc
+1 message
+2 n
+1 necessary
+12 next
+9 node
+4 of
+1 on
+1 or
+1 otherwise
+2 out
+8 p
+3 print
+2 printf
+16 return
+5 right
+4 root
+25 s
+2 storage
+3 strcmp
+1 strcpy
+1 strlen
+8 struct
+1 structures
+2 subtree
+1 t
+5 tprint
+9 tree
+1 uses
+1 version
+1 wf
+3 while
+21 word
+9 words
+2 z
diff --git a/lcc/x86/linux/tst/wf1.2bk b/lcc/x86/linux/tst/wf1.2bk
index 0e7a8a6..190e4a1 100755
--- a/lcc/x86/linux/tst/wf1.2bk
+++ b/lcc/x86/linux/tst/wf1.2bk
@@ -1,2 +1,2 @@
-tst/wf1.c:29: warning: missing return value
-tst/wf1.c:87: warning: missing return value
+tst/wf1.c:29: warning: missing return value
+tst/wf1.c:87: warning: missing return value
diff --git a/lcc/x86/linux/tst/wf1.sbk b/lcc/x86/linux/tst/wf1.sbk
index fb237a3..1c3ff04 100755
--- a/lcc/x86/linux/tst/wf1.sbk
+++ b/lcc/x86/linux/tst/wf1.sbk
@@ -1,437 +1,437 @@
-.globl main
-.text
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $24,%esp
-movl $0,-24(%ebp)
-movl $0,next
-jmp .LC3
-.LC2:
-leal -24(%ebp),%edi
-pushl %edi
-leal -20(%ebp),%edi
-pushl %edi
-call lookup
-addl $8,%esp
-incl (,%eax)
-.LC3:
-leal -20(%ebp),%edi
-pushl %edi
-call getword
-addl $4,%esp
-cmpl $0,%eax
-jne .LC2
-pushl -24(%ebp)
-call tprint
-addl $4,%esp
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf5:
-.size main,.Lf5-main
-.globl err
-.align 16
-.type err,@function
-err:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl 20(%ebp)
-pushl $.LC7
-call printf
-addl $8,%esp
-pushl $1
-call exit
-addl $4,%esp
-movl $0,%eax
-.LC6:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf8:
-.size err,.Lf8-err
-.globl getword
-.align 16
-.type getword,@function
-getword:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $8,%esp
-.LC10:
-.LC11:
-call getchar
-movl %eax,%edi
-movl %edi,-4(%ebp)
-cmpl $-1,%edi
-je .LC13
-pushl -4(%ebp)
-call isletter
-addl $4,%esp
-cmpl $0,%eax
-je .LC10
-.LC13:
-movl 20(%ebp),%edi
-movl %edi,-8(%ebp)
-jmp .LC17
-.LC14:
-movl -8(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-8(%ebp)
-movl -4(%ebp),%esi
-movl %esi,%ebx
-movb %bl,(,%edi)
-.LC15:
-call getchar
-movl %eax,-4(%ebp)
-.LC17:
-pushl -4(%ebp)
-call isletter
-addl $4,%esp
-movl %eax,-4(%ebp)
-cmpl $0,%eax
-jne .LC14
-movl -8(%ebp),%edi
-movb $0,(,%edi)
-movl -8(%ebp),%edi
-movl 20(%ebp),%esi
-cmpl %esi,%edi
-jbe .LC18
-movl $1,%eax
-jmp .LC9
-.LC18:
-movl $0,%eax
-.LC9:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf20:
-.size getword,.Lf20-getword
-.globl isletter
-.align 16
-.type isletter,@function
-isletter:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 20(%ebp),%edi
-cmpl $65,%edi
-jl .LC22
-cmpl $90,%edi
-jg .LC22
-addl $32,20(%ebp)
-.LC22:
-movl 20(%ebp),%edi
-cmpl $97,%edi
-jl .LC24
-cmpl $122,%edi
-jg .LC24
-movl 20(%ebp),%eax
-jmp .LC21
-.LC24:
-movl $0,%eax
-.LC21:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf26:
-.size isletter,.Lf26-isletter
-.globl lookup
-.align 16
-.type lookup,@function
-lookup:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-movl 24(%ebp),%edi
-movl (,%edi),%edi
-cmpl $0,%edi
-je .LC28
-movl 24(%ebp),%edi
-movl (,%edi),%edi
-pushl 12(%edi)
-pushl 20(%ebp)
-call strcmp
-addl $8,%esp
-movl %eax,-4(%ebp)
-cmpl $0,-4(%ebp)
-jge .LC30
-movl 24(%ebp),%edi
-movl (,%edi),%edi
-leal 4(%edi),%edi
-pushl %edi
-pushl 20(%ebp)
-call lookup
-addl $8,%esp
-movl %eax,%edi
-jmp .LC27
-.LC30:
-cmpl $0,-4(%ebp)
-jle .LC32
-movl 24(%ebp),%edi
-movl (,%edi),%edi
-leal 8(%edi),%edi
-pushl %edi
-pushl 20(%ebp)
-call lookup
-addl $8,%esp
-movl %eax,%edi
-jmp .LC27
-.LC32:
-movl 24(%ebp),%edi
-movl (,%edi),%eax
-jmp .LC27
-.LC28:
-cmpl $2000,next
-jl .LC34
-pushl $.LC36
-call err
-addl $4,%esp
-.LC34:
-movl next,%edi
-sall $4,%edi
-movl $0,words(%edi)
-movl next,%edi
-sall $4,%edi
-movl $0,words+8(%edi)
-movl $0,words+4(%edi)
-pushl 20(%ebp)
-call strlen
-addl $4,%esp
-leal 1(%eax),%edi
-pushl %edi
-call malloc
-addl $4,%esp
-movl next,%esi
-sall $4,%esi
-movl %eax,words+12(%esi)
-movl next,%edi
-sall $4,%edi
-movl words+12(%edi),%edi
-cmpl $0,%edi
-jne .LC40
-pushl $.LC43
-call err
-addl $4,%esp
-.LC40:
-pushl 20(%ebp)
-movl next,%edi
-sall $4,%edi
-pushl words+12(%edi)
-call strcpy
-addl $8,%esp
-movl next,%edi
-leal 1(%edi),%esi
-movl %esi,next
-sall $4,%edi
-leal words(%edi),%edi
-movl 24(%ebp),%esi
-movl %edi,(,%esi)
-movl %edi,%eax
-.LC27:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf45:
-.size lookup,.Lf45-lookup
-.globl tprint
-.align 16
-.type tprint,@function
-tprint:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 20(%ebp),%edi
-cmpl $0,%edi
-je .LC47
-movl 20(%ebp),%edi
-pushl 4(%edi)
-call tprint
-addl $4,%esp
-movl 20(%ebp),%edi
-pushl 12(%edi)
-pushl (,%edi)
-pushl $.LC49
-call printf
-addl $12,%esp
-movl 20(%ebp),%edi
-pushl 8(%edi)
-call tprint
-addl $4,%esp
-.LC47:
-movl $0,%eax
-.LC46:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf50:
-.size tprint,.Lf50-tprint
-.globl strcmp
-.align 16
-.type strcmp,@function
-strcmp:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-jmp .LC53
-.LC52:
-movl 20(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,20(%ebp)
-movsbl (,%edi),%edi
-cmpl $0,%edi
-jne .LC55
-movl $0,%eax
-jmp .LC51
-.LC55:
-incl 24(%ebp)
-.LC53:
-movl 20(%ebp),%edi
-movsbl (,%edi),%edi
-movl 24(%ebp),%esi
-movsbl (,%esi),%esi
-cmpl %esi,%edi
-je .LC52
-movl 20(%ebp),%edi
-movsbl (,%edi),%edi
-cmpl $0,%edi
-jne .LC57
-movl $-1,%eax
-jmp .LC51
-.LC57:
-movl 24(%ebp),%edi
-movsbl (,%edi),%edi
-cmpl $0,%edi
-jne .LC59
-movl $1,%eax
-jmp .LC51
-.LC59:
-movl 20(%ebp),%edi
-movsbl (,%edi),%edi
-movl 24(%ebp),%esi
-movsbl (,%esi),%esi
-movl %edi,%eax
-subl %esi,%eax
-.LC51:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf61:
-.size strcmp,.Lf61-strcmp
-.bss
-.globl next
-.align 4
-.type next,@object
-.size next,4
-.comm next,4
-.globl words
-.align 4
-.type words,@object
-.size words,32000
-.comm words,32000
-.data
-.align 1
-.LC49:
-.byte 37
-.byte 100
-.byte 9
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC43:
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 119
-.byte 111
-.byte 114
-.byte 100
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 97
-.byte 103
-.byte 101
-.byte 0
-.align 1
-.LC36:
-.byte 111
-.byte 117
-.byte 116
-.byte 32
-.byte 111
-.byte 102
-.byte 32
-.byte 110
-.byte 111
-.byte 100
-.byte 101
-.byte 32
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 97
-.byte 103
-.byte 101
-.byte 0
-.align 1
-.LC7:
-.byte 63
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.text
-.ident "LCC: 4.1"
+.globl main
+.text
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $24,%esp
+movl $0,-24(%ebp)
+movl $0,next
+jmp .LC3
+.LC2:
+leal -24(%ebp),%edi
+pushl %edi
+leal -20(%ebp),%edi
+pushl %edi
+call lookup
+addl $8,%esp
+incl (,%eax)
+.LC3:
+leal -20(%ebp),%edi
+pushl %edi
+call getword
+addl $4,%esp
+cmpl $0,%eax
+jne .LC2
+pushl -24(%ebp)
+call tprint
+addl $4,%esp
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf5:
+.size main,.Lf5-main
+.globl err
+.align 16
+.type err,@function
+err:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl 20(%ebp)
+pushl $.LC7
+call printf
+addl $8,%esp
+pushl $1
+call exit
+addl $4,%esp
+movl $0,%eax
+.LC6:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf8:
+.size err,.Lf8-err
+.globl getword
+.align 16
+.type getword,@function
+getword:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $8,%esp
+.LC10:
+.LC11:
+call getchar
+movl %eax,%edi
+movl %edi,-4(%ebp)
+cmpl $-1,%edi
+je .LC13
+pushl -4(%ebp)
+call isletter
+addl $4,%esp
+cmpl $0,%eax
+je .LC10
+.LC13:
+movl 20(%ebp),%edi
+movl %edi,-8(%ebp)
+jmp .LC17
+.LC14:
+movl -8(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-8(%ebp)
+movl -4(%ebp),%esi
+movl %esi,%ebx
+movb %bl,(,%edi)
+.LC15:
+call getchar
+movl %eax,-4(%ebp)
+.LC17:
+pushl -4(%ebp)
+call isletter
+addl $4,%esp
+movl %eax,-4(%ebp)
+cmpl $0,%eax
+jne .LC14
+movl -8(%ebp),%edi
+movb $0,(,%edi)
+movl -8(%ebp),%edi
+movl 20(%ebp),%esi
+cmpl %esi,%edi
+jbe .LC18
+movl $1,%eax
+jmp .LC9
+.LC18:
+movl $0,%eax
+.LC9:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf20:
+.size getword,.Lf20-getword
+.globl isletter
+.align 16
+.type isletter,@function
+isletter:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 20(%ebp),%edi
+cmpl $65,%edi
+jl .LC22
+cmpl $90,%edi
+jg .LC22
+addl $32,20(%ebp)
+.LC22:
+movl 20(%ebp),%edi
+cmpl $97,%edi
+jl .LC24
+cmpl $122,%edi
+jg .LC24
+movl 20(%ebp),%eax
+jmp .LC21
+.LC24:
+movl $0,%eax
+.LC21:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf26:
+.size isletter,.Lf26-isletter
+.globl lookup
+.align 16
+.type lookup,@function
+lookup:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+movl 24(%ebp),%edi
+movl (,%edi),%edi
+cmpl $0,%edi
+je .LC28
+movl 24(%ebp),%edi
+movl (,%edi),%edi
+pushl 12(%edi)
+pushl 20(%ebp)
+call strcmp
+addl $8,%esp
+movl %eax,-4(%ebp)
+cmpl $0,-4(%ebp)
+jge .LC30
+movl 24(%ebp),%edi
+movl (,%edi),%edi
+leal 4(%edi),%edi
+pushl %edi
+pushl 20(%ebp)
+call lookup
+addl $8,%esp
+movl %eax,%edi
+jmp .LC27
+.LC30:
+cmpl $0,-4(%ebp)
+jle .LC32
+movl 24(%ebp),%edi
+movl (,%edi),%edi
+leal 8(%edi),%edi
+pushl %edi
+pushl 20(%ebp)
+call lookup
+addl $8,%esp
+movl %eax,%edi
+jmp .LC27
+.LC32:
+movl 24(%ebp),%edi
+movl (,%edi),%eax
+jmp .LC27
+.LC28:
+cmpl $2000,next
+jl .LC34
+pushl $.LC36
+call err
+addl $4,%esp
+.LC34:
+movl next,%edi
+sall $4,%edi
+movl $0,words(%edi)
+movl next,%edi
+sall $4,%edi
+movl $0,words+8(%edi)
+movl $0,words+4(%edi)
+pushl 20(%ebp)
+call strlen
+addl $4,%esp
+leal 1(%eax),%edi
+pushl %edi
+call malloc
+addl $4,%esp
+movl next,%esi
+sall $4,%esi
+movl %eax,words+12(%esi)
+movl next,%edi
+sall $4,%edi
+movl words+12(%edi),%edi
+cmpl $0,%edi
+jne .LC40
+pushl $.LC43
+call err
+addl $4,%esp
+.LC40:
+pushl 20(%ebp)
+movl next,%edi
+sall $4,%edi
+pushl words+12(%edi)
+call strcpy
+addl $8,%esp
+movl next,%edi
+leal 1(%edi),%esi
+movl %esi,next
+sall $4,%edi
+leal words(%edi),%edi
+movl 24(%ebp),%esi
+movl %edi,(,%esi)
+movl %edi,%eax
+.LC27:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf45:
+.size lookup,.Lf45-lookup
+.globl tprint
+.align 16
+.type tprint,@function
+tprint:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 20(%ebp),%edi
+cmpl $0,%edi
+je .LC47
+movl 20(%ebp),%edi
+pushl 4(%edi)
+call tprint
+addl $4,%esp
+movl 20(%ebp),%edi
+pushl 12(%edi)
+pushl (,%edi)
+pushl $.LC49
+call printf
+addl $12,%esp
+movl 20(%ebp),%edi
+pushl 8(%edi)
+call tprint
+addl $4,%esp
+.LC47:
+movl $0,%eax
+.LC46:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf50:
+.size tprint,.Lf50-tprint
+.globl strcmp
+.align 16
+.type strcmp,@function
+strcmp:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+jmp .LC53
+.LC52:
+movl 20(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,20(%ebp)
+movsbl (,%edi),%edi
+cmpl $0,%edi
+jne .LC55
+movl $0,%eax
+jmp .LC51
+.LC55:
+incl 24(%ebp)
+.LC53:
+movl 20(%ebp),%edi
+movsbl (,%edi),%edi
+movl 24(%ebp),%esi
+movsbl (,%esi),%esi
+cmpl %esi,%edi
+je .LC52
+movl 20(%ebp),%edi
+movsbl (,%edi),%edi
+cmpl $0,%edi
+jne .LC57
+movl $-1,%eax
+jmp .LC51
+.LC57:
+movl 24(%ebp),%edi
+movsbl (,%edi),%edi
+cmpl $0,%edi
+jne .LC59
+movl $1,%eax
+jmp .LC51
+.LC59:
+movl 20(%ebp),%edi
+movsbl (,%edi),%edi
+movl 24(%ebp),%esi
+movsbl (,%esi),%esi
+movl %edi,%eax
+subl %esi,%eax
+.LC51:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf61:
+.size strcmp,.Lf61-strcmp
+.bss
+.globl next
+.align 4
+.type next,@object
+.size next,4
+.comm next,4
+.globl words
+.align 4
+.type words,@object
+.size words,32000
+.comm words,32000
+.data
+.align 1
+.LC49:
+.byte 37
+.byte 100
+.byte 9
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC43:
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 119
+.byte 111
+.byte 114
+.byte 100
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 97
+.byte 103
+.byte 101
+.byte 0
+.align 1
+.LC36:
+.byte 111
+.byte 117
+.byte 116
+.byte 32
+.byte 111
+.byte 102
+.byte 32
+.byte 110
+.byte 111
+.byte 100
+.byte 101
+.byte 32
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 97
+.byte 103
+.byte 101
+.byte 0
+.align 1
+.LC7:
+.byte 63
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/linux/tst/yacc.1bk b/lcc/x86/linux/tst/yacc.1bk
index b08a02f..60de9b5 100755
--- a/lcc/x86/linux/tst/yacc.1bk
+++ b/lcc/x86/linux/tst/yacc.1bk
@@ -1,10 +1,10 @@
-a
-b
-load
-negate
-push 5
-c
-load
-multiply
-add
-store
+a
+b
+load
+negate
+push 5
+c
+load
+multiply
+add
+store
diff --git a/lcc/x86/linux/tst/yacc.2bk b/lcc/x86/linux/tst/yacc.2bk
index a84aa5b..9a4fd61 100755
--- a/lcc/x86/linux/tst/yacc.2bk
+++ b/lcc/x86/linux/tst/yacc.2bk
@@ -1,3 +1,3 @@
-tst/yacc.c:345: warning: missing return value
-tst/yacc.c:349: warning: missing return value
-tst/yacc.c:359: warning: missing return value
+tst/yacc.c:345: warning: missing return value
+tst/yacc.c:349: warning: missing return value
+tst/yacc.c:359: warning: missing return value
diff --git a/lcc/x86/linux/tst/yacc.sbk b/lcc/x86/linux/tst/yacc.sbk
index a4370b7..ca588d3 100755
--- a/lcc/x86/linux/tst/yacc.sbk
+++ b/lcc/x86/linux/tst/yacc.sbk
@@ -1,2526 +1,2526 @@
-.data
-.globl yyin
-.align 4
-.type yyin,@object
-.size yyin,4
-yyin:
-.long _IO_stdin_
-.globl yyout
-.align 4
-.type yyout,@object
-.size yyout,4
-yyout:
-.long _IO_stdout_
-.globl yylex
-.text
-.align 16
-.type yylex,@function
-yylex:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $4,%esp
-jmp .LC3
-.LC2:
-.LC5:
-movl -4(%ebp),%edi
-cmpl $-1,%edi
-jl .LC6
-cmpl $4,%edi
-jg .LC6
-jmp *.LC17+4(,%edi,4)
-.data
-.align 4
-.LC17:
-.long .LC7
-.long .LC8
-.long .LC11
-.long .LC12
-.long .LC7
-.long .LC14
-.text
-.LC8:
-call yywrap
-cmpl $0,%eax
-je .LC7
-movl $0,%eax
-jmp .LC1
-.LC11:
-movl $257,%eax
-jmp .LC1
-.LC12:
-movl $258,%eax
-jmp .LC1
-.LC14:
-movsbl yytext,%eax
-jmp .LC1
-.LC6:
-pushl -4(%ebp)
-pushl $.LC16
-pushl yyout
-call fprintf
-addl $12,%esp
-.LC7:
-.LC3:
-call yylook
-movl %eax,-4(%ebp)
-cmpl $0,%eax
-jge .LC2
-movl $0,%eax
-.LC1:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf19:
-.size yylex,.Lf19-yylex
-.data
-.globl yyvstop
-.align 4
-.type yyvstop,@object
-yyvstop:
-.long 0
-.long 4
-.long 0
-.long 3
-.long 4
-.long 0
-.long 2
-.long 4
-.long 0
-.long 1
-.long 4
-.long 0
-.long 2
-.long 0
-.long 1
-.long 0
-.long 0
-.size yyvstop,68
-.globl yycrank
-.align 4
-.type yycrank,@object
-yycrank:
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 1
-.byte 3
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 1
-.byte 4
-.space 2
-.byte 1
-.byte 3
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 1
-.byte 5
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 5
-.byte 7
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 1
-.byte 6
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 6
-.byte 8
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.byte 0
-.byte 0
-.space 2
-.size yycrank,580
-.globl yysvec
-.align 4
-.type yysvec,@object
-yysvec:
-.long 0
-.long 0
-.long 0
-.long yycrank-4
-.long 0
-.long 0
-.long yycrank
-.long yysvec+12
-.long 0
-.long yycrank
-.long 0
-.long yyvstop+4
-.long yycrank
-.long 0
-.long yyvstop+12
-.long yycrank+8
-.long 0
-.long yyvstop+24
-.long yycrank+76
-.long 0
-.long yyvstop+36
-.long yycrank
-.long yysvec+60
-.long yyvstop+48
-.long yycrank
-.long yysvec+72
-.long yyvstop+56
-.long 0
-.long 0
-.long 0
-.size yysvec,120
-.globl yytop
-.align 4
-.type yytop,@object
-.size yytop,4
-yytop:
-.long yycrank+564
-.globl yybgin
-.align 4
-.type yybgin,@object
-.size yybgin,4
-yybgin:
-.long yysvec+12
-.globl yymatch
-.align 1
-.type yymatch,@object
-yymatch:
-.byte 0
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 9
-.byte 10
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 9
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 48
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 65
-.byte 1
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 65
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 1
-.byte 0
-.size yymatch,129
-.globl yyextra
-.align 1
-.type yyextra,@object
-yyextra:
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.byte 0
-.size yyextra,9
-.globl yylineno
-.align 4
-.type yylineno,@object
-.size yylineno,4
-yylineno:
-.long 1
-.globl yysptr
-.align 4
-.type yysptr,@object
-.size yysptr,4
-yysptr:
-.long yysbuf
-.globl yyprevious
-.align 4
-.type yyprevious,@object
-.size yyprevious,4
-yyprevious:
-.long 10
-.globl yylook
-.text
-.align 16
-.type yylook,@function
-yylook:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $44,%esp
-cmpl $0,yymorfg
-jne .LC35
-leal yytext,%edi
-movl %edi,-16(%ebp)
-jmp .LC36
-.LC35:
-movl $0,yymorfg
-movl yyleng,%edi
-leal yytext(%edi),%edi
-movl %edi,-16(%ebp)
-.LC36:
-.LC37:
-leal yylstate,%edi
-movl %edi,-8(%ebp)
-movl yybgin,%edi
-movl %edi,-4(%ebp)
-movl %edi,yyestate
-cmpl $10,yyprevious
-jne .LC41
-movl -4(%ebp),%edi
-leal 12(%edi),%edi
-movl %edi,-4(%ebp)
-.LC41:
-.LC43:
-movl -4(%ebp),%edi
-movl (,%edi),%edi
-movl %edi,-12(%ebp)
-movl -12(%ebp),%edi
-leal yycrank,%esi
-cmpl %esi,%edi
-jne .LC47
-movl -4(%ebp),%edi
-movl 4(%edi),%edi
-movl %edi,-28(%ebp)
-movl -28(%ebp),%edi
-cmpl $0,%edi
-jne .LC49
-jmp .LC94
-.LC49:
-movl -28(%ebp),%edi
-movl (,%edi),%edi
-leal yycrank,%esi
-cmpl %esi,%edi
-jne .LC51
-jmp .LC94
-.LC51:
-.LC47:
-movl -16(%ebp),%edi
-leal 1(%edi),%esi
-movl %esi,-16(%ebp)
-movl yysptr,%esi
-leal yysbuf,%ebx
-cmpl %ebx,%esi
-jbe .LC61
-movl yysptr,%esi
-leal -1(%esi),%esi
-movl %esi,yysptr
-movsbl (,%esi),%esi
-movl %esi,-40(%ebp)
-jmp .LC62
-.LC61:
-movl yyin,%esi
-movl 4(%esi),%ebx
-movl 8(%esi),%esi
-cmpl %esi,%ebx
-jb .LC63
-pushl yyin
-call __uflow
-addl $4,%esp
-movl %eax,%esi
-movl %esi,-44(%ebp)
-jmp .LC64
-.LC63:
-movl yyin,%esi
-leal 4(%esi),%esi
-movl (,%esi),%ebx
-leal 1(%ebx),%edx
-movl %edx,(,%esi)
-movb (,%ebx),%bl
-movzbl %bl,%esi
-movl %esi,-44(%ebp)
-.LC64:
-movl -44(%ebp),%esi
-movl %esi,-40(%ebp)
-.LC62:
-movl -40(%ebp),%esi
-movl %esi,yytchar
-cmpl $10,%esi
-jne .LC59
-incl yylineno
-movl yytchar,%esi
-movl %esi,-36(%ebp)
-jmp .LC60
-.LC59:
-movl yytchar,%esi
-movl %esi,-36(%ebp)
-.LC60:
-cmpl $-1,-36(%ebp)
-jne .LC57
-movl $0,-32(%ebp)
-jmp .LC58
-.LC57:
-movl yytchar,%esi
-movl %esi,-32(%ebp)
-.LC58:
-movl -32(%ebp),%esi
-movl %esi,-20(%ebp)
-movl %esi,%ebx
-movb %bl,(,%edi)
-.LC65:
-movl -12(%ebp),%edi
-movl %edi,-24(%ebp)
-leal yycrank,%esi
-cmpl %esi,%edi
-jbe .LC66
-movl -20(%ebp),%edi
-movl -24(%ebp),%esi
-leal (%esi,%edi,4),%edi
-movl %edi,-12(%ebp)
-movl -12(%ebp),%edi
-movl %edi,%esi
-movl yytop,%ebx
-cmpl %ebx,%esi
-ja .LC67
-movsbl (,%edi),%edi
-imul $12,%edi,%edi
-leal yysvec(%edi),%edi
-movl -4(%ebp),%esi
-cmpl %esi,%edi
-jne .LC67
-leal yysvec,%edi
-movl -12(%ebp),%esi
-movsbl 1(%esi),%esi
-imul $12,%esi,%esi
-leal yysvec(%esi),%esi
-cmpl %edi,%esi
-jne .LC70
-movl -16(%ebp),%edi
-leal -1(%edi),%edi
-movl %edi,-16(%ebp)
-movsbl (,%edi),%edi
-movl %edi,yytchar
-cmpl $10,yytchar
-jne .LC72
-decl yylineno
-.LC72:
-movl yysptr,%edi
-leal 1(%edi),%esi
-movl %esi,yysptr
-movl yytchar,%esi
-movl %esi,%ebx
-movb %bl,(,%edi)
-jmp .LC94
-.LC70:
-movl -8(%ebp),%edi
-leal 4(%edi),%esi
-movl %esi,-8(%ebp)
-movl -12(%ebp),%esi
-movsbl 1(%esi),%esi
-imul $12,%esi,%esi
-leal yysvec(%esi),%esi
-movl %esi,-4(%ebp)
-movl %esi,(,%edi)
-jmp .LC43
-.LC66:
-movl -12(%ebp),%edi
-leal yycrank,%esi
-cmpl %esi,%edi
-jae .LC75
-leal yycrank,%edi
-movl -12(%ebp),%esi
-subl %esi,%edi
-movl %edi,%eax
-movl $4,%ecx
-cdq
-idivl %ecx
-leal yycrank(,%eax,4),%edi
-movl %edi,-24(%ebp)
-movl %edi,-12(%ebp)
-movl -20(%ebp),%edi
-movl -12(%ebp),%esi
-leal (%esi,%edi,4),%edi
-movl %edi,-12(%ebp)
-movl -12(%ebp),%edi
-movl %edi,%esi
-movl yytop,%ebx
-cmpl %ebx,%esi
-ja .LC77
-movsbl (,%edi),%edi
-imul $12,%edi,%edi
-leal yysvec(%edi),%edi
-movl -4(%ebp),%esi
-cmpl %esi,%edi
-jne .LC77
-leal yysvec,%edi
-movl -12(%ebp),%esi
-movsbl 1(%esi),%esi
-imul $12,%esi,%esi
-leal yysvec(%esi),%esi
-cmpl %edi,%esi
-jne .LC79
-movl -16(%ebp),%edi
-leal -1(%edi),%edi
-movl %edi,-16(%ebp)
-movsbl (,%edi),%edi
-movl %edi,yytchar
-cmpl $10,yytchar
-jne .LC81
-decl yylineno
-.LC81:
-movl yysptr,%edi
-leal 1(%edi),%esi
-movl %esi,yysptr
-movl yytchar,%esi
-movl %esi,%ebx
-movb %bl,(,%edi)
-jmp .LC94
-.LC79:
-movl -8(%ebp),%edi
-leal 4(%edi),%esi
-movl %esi,-8(%ebp)
-movl -12(%ebp),%esi
-movsbl 1(%esi),%esi
-imul $12,%esi,%esi
-leal yysvec(%esi),%esi
-movl %esi,-4(%ebp)
-movl %esi,(,%edi)
-jmp .LC43
-.LC77:
-movl -20(%ebp),%edi
-movsbl yymatch(%edi),%edi
-movl -24(%ebp),%esi
-leal (%esi,%edi,4),%edi
-movl %edi,-12(%ebp)
-movl -12(%ebp),%edi
-movl %edi,%esi
-movl yytop,%ebx
-cmpl %ebx,%esi
-ja .LC83
-movsbl (,%edi),%edi
-imul $12,%edi,%edi
-leal yysvec(%edi),%edi
-movl -4(%ebp),%esi
-cmpl %esi,%edi
-jne .LC83
-leal yysvec,%edi
-movl -12(%ebp),%esi
-movsbl 1(%esi),%esi
-imul $12,%esi,%esi
-leal yysvec(%esi),%esi
-cmpl %edi,%esi
-jne .LC85
-movl -16(%ebp),%edi
-leal -1(%edi),%edi
-movl %edi,-16(%ebp)
-movsbl (,%edi),%edi
-movl %edi,yytchar
-cmpl $10,yytchar
-jne .LC87
-decl yylineno
-.LC87:
-movl yysptr,%edi
-leal 1(%edi),%esi
-movl %esi,yysptr
-movl yytchar,%esi
-movl %esi,%ebx
-movb %bl,(,%edi)
-jmp .LC94
-.LC85:
-movl -8(%ebp),%edi
-leal 4(%edi),%esi
-movl %esi,-8(%ebp)
-movl -12(%ebp),%esi
-movsbl 1(%esi),%esi
-imul $12,%esi,%esi
-leal yysvec(%esi),%esi
-movl %esi,-4(%ebp)
-movl %esi,(,%edi)
-jmp .LC43
-.LC83:
-.LC75:
-.LC67:
-movl -4(%ebp),%edi
-movl 4(%edi),%edi
-movl %edi,-4(%ebp)
-cmpl $0,%edi
-je .LC89
-movl -4(%ebp),%edi
-movl (,%edi),%edi
-movl %edi,-12(%ebp)
-leal yycrank,%esi
-cmpl %esi,%edi
-je .LC89
-jmp .LC65
-.LC89:
-movl -16(%ebp),%edi
-leal -1(%edi),%edi
-movl %edi,-16(%ebp)
-movsbl (,%edi),%edi
-movl %edi,yytchar
-cmpl $10,yytchar
-jne .LC91
-decl yylineno
-.LC91:
-movl yysptr,%edi
-leal 1(%edi),%esi
-movl %esi,yysptr
-movl yytchar,%esi
-movl %esi,%ebx
-movb %bl,(,%edi)
-jmp .LC94
-.LC93:
-movl -16(%ebp),%edi
-leal -1(%edi),%esi
-movl %esi,-16(%ebp)
-movb $0,(,%edi)
-movl -8(%ebp),%edi
-movl (,%edi),%edi
-movl %edi,%esi
-cmpl $0,%esi
-je .LC96
-movl 8(%edi),%edi
-movl %edi,yyfnd
-cmpl $0,%edi
-je .LC96
-movl yyfnd,%edi
-cmpl $0,(,%edi)
-jle .LC96
-movl -8(%ebp),%edi
-movl %edi,yyolsp
-movl yyfnd,%edi
-movl (,%edi),%edi
-movsbl yyextra(%edi),%edi
-cmpl $0,%edi
-je .LC98
-jmp .LC101
-.LC100:
-movl -8(%ebp),%edi
-leal -4(%edi),%edi
-movl %edi,-8(%ebp)
-movl -16(%ebp),%edi
-leal -1(%edi),%esi
-movl %esi,-16(%ebp)
-movsbl (,%edi),%edi
-movl %edi,yytchar
-cmpl $10,yytchar
-jne .LC103
-decl yylineno
-.LC103:
-movl yysptr,%edi
-leal 1(%edi),%esi
-movl %esi,yysptr
-movl yytchar,%esi
-movl %esi,%ebx
-movb %bl,(,%edi)
-.LC101:
-movl yyfnd,%edi
-movl (,%edi),%edi
-negl %edi
-pushl %edi
-movl -8(%ebp),%edi
-movl (,%edi),%edi
-pushl 8(%edi)
-call yyback
-addl $8,%esp
-cmpl $1,%eax
-je .LC105
-movl -8(%ebp),%edi
-leal yylstate,%esi
-cmpl %esi,%edi
-ja .LC100
-.LC105:
-.LC98:
-movl -16(%ebp),%edi
-movsbl (,%edi),%esi
-movl %esi,yyprevious
-movl -8(%ebp),%esi
-movl %esi,yylsp
-leal yytext,%esi
-subl %esi,%edi
-leal 1(%edi),%edi
-movl %edi,yyleng
-movl yyleng,%edi
-movb $0,yytext(%edi)
-movl yyfnd,%edi
-leal 4(%edi),%esi
-movl %esi,yyfnd
-movl (,%edi),%eax
-jmp .LC34
-.LC96:
-movl -16(%ebp),%edi
-movsbl (,%edi),%edi
-movl %edi,yytchar
-cmpl $10,yytchar
-jne .LC106
-decl yylineno
-.LC106:
-movl yysptr,%edi
-leal 1(%edi),%esi
-movl %esi,yysptr
-movl yytchar,%esi
-movl %esi,%ebx
-movb %bl,(,%edi)
-.LC94:
-movl -8(%ebp),%edi
-leal -4(%edi),%esi
-movl %esi,-8(%ebp)
-leal yylstate,%esi
-cmpl %esi,%edi
-ja .LC93
-movsbl yytext,%edi
-cmpl $0,%edi
-jne .LC108
-leal yysbuf,%edi
-movl %edi,yysptr
-movl $0,%eax
-jmp .LC34
-.LC108:
-movl yysptr,%edi
-leal yysbuf,%esi
-cmpl %esi,%edi
-jbe .LC118
-movl yysptr,%edi
-leal -1(%edi),%edi
-movl %edi,yysptr
-movsbl (,%edi),%edi
-movl %edi,-40(%ebp)
-jmp .LC119
-.LC118:
-movl yyin,%edi
-movl 4(%edi),%esi
-movl 8(%edi),%edi
-cmpl %edi,%esi
-jb .LC120
-pushl yyin
-call __uflow
-addl $4,%esp
-movl %eax,%edi
-movl %edi,-44(%ebp)
-jmp .LC121
-.LC120:
-movl yyin,%edi
-leal 4(%edi),%edi
-movl (,%edi),%esi
-leal 1(%esi),%ebx
-movl %ebx,(,%edi)
-movb (,%esi),%bl
-movzbl %bl,%edi
-movl %edi,-44(%ebp)
-.LC121:
-movl -44(%ebp),%edi
-movl %edi,-40(%ebp)
-.LC119:
-movl -40(%ebp),%edi
-movl %edi,yytchar
-cmpl $10,%edi
-jne .LC116
-incl yylineno
-movl yytchar,%edi
-movl %edi,-36(%ebp)
-jmp .LC117
-.LC116:
-movl yytchar,%edi
-movl %edi,-36(%ebp)
-.LC117:
-cmpl $-1,-36(%ebp)
-jne .LC114
-movl $0,-32(%ebp)
-jmp .LC115
-.LC114:
-movl yytchar,%edi
-movl %edi,-32(%ebp)
-.LC115:
-movl -32(%ebp),%edi
-movl %edi,%ebx
-movb %bl,yytext
-movsbl %bl,%edi
-movl %edi,yyprevious
-cmpl $0,yyprevious
-jle .LC122
-movl yyout,%edi
-movl 20(%edi),%esi
-movl 24(%edi),%edi
-cmpl %edi,%esi
-jb .LC125
-movl yyprevious,%edi
-movl %edi,%ebx
-movzbl %bl,%edi
-pushl %edi
-pushl yyout
-call __overflow
-addl $8,%esp
-jmp .LC126
-.LC125:
-movl yyout,%edi
-leal 20(%edi),%edi
-movl (,%edi),%esi
-leal 1(%esi),%ebx
-movl %ebx,(,%edi)
-movl yyprevious,%edi
-movl %edi,%ebx
-movb %bl,(,%esi)
-.LC126:
-.LC122:
-leal yytext,%edi
-movl %edi,-16(%ebp)
-jmp .LC37
-.LC34:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf127:
-.size yylook,.Lf127-yylook
-.globl yyback
-.align 16
-.type yyback,@function
-yyback:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 20(%ebp),%edi
-cmpl $0,%edi
-jne .LC132
-movl $0,%eax
-jmp .LC128
-.LC131:
-movl 20(%ebp),%edi
-leal 4(%edi),%esi
-movl %esi,20(%ebp)
-movl 24(%ebp),%esi
-cmpl %esi,(,%edi)
-jne .LC134
-movl $1,%eax
-jmp .LC128
-.LC134:
-.LC132:
-movl 20(%ebp),%edi
-cmpl $0,(,%edi)
-jne .LC131
-movl $0,%eax
-.LC128:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf136:
-.size yyback,.Lf136-yyback
-.globl yyinput
-.align 16
-.type yyinput,@function
-yyinput:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $16,%esp
-movl yysptr,%edi
-leal yysbuf,%esi
-cmpl %esi,%edi
-jbe .LC146
-movl yysptr,%edi
-leal -1(%edi),%edi
-movl %edi,yysptr
-movsbl (,%edi),%edi
-movl %edi,-12(%ebp)
-jmp .LC147
-.LC146:
-movl yyin,%edi
-movl 4(%edi),%esi
-movl 8(%edi),%edi
-cmpl %edi,%esi
-jb .LC148
-pushl yyin
-call __uflow
-addl $4,%esp
-movl %eax,%edi
-movl %edi,-16(%ebp)
-jmp .LC149
-.LC148:
-movl yyin,%edi
-leal 4(%edi),%edi
-movl (,%edi),%esi
-leal 1(%esi),%ebx
-movl %ebx,(,%edi)
-movb (,%esi),%bl
-movzbl %bl,%edi
-movl %edi,-16(%ebp)
-.LC149:
-movl -16(%ebp),%edi
-movl %edi,-12(%ebp)
-.LC147:
-movl -12(%ebp),%edi
-movl %edi,yytchar
-cmpl $10,%edi
-jne .LC144
-incl yylineno
-movl yytchar,%edi
-movl %edi,-8(%ebp)
-jmp .LC145
-.LC144:
-movl yytchar,%edi
-movl %edi,-8(%ebp)
-.LC145:
-cmpl $-1,-8(%ebp)
-jne .LC142
-movl $0,-4(%ebp)
-jmp .LC143
-.LC142:
-movl yytchar,%edi
-movl %edi,-4(%ebp)
-.LC143:
-movl -4(%ebp),%eax
-.LC137:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf150:
-.size yyinput,.Lf150-yyinput
-.globl yyoutput
-.align 16
-.type yyoutput,@function
-yyoutput:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl yyout,%edi
-movl 20(%edi),%esi
-movl 24(%edi),%edi
-cmpl %edi,%esi
-jb .LC153
-movl 20(%ebp),%edi
-movl %edi,%ebx
-movzbl %bl,%edi
-pushl %edi
-pushl yyout
-call __overflow
-addl $8,%esp
-jmp .LC154
-.LC153:
-movl yyout,%edi
-leal 20(%edi),%edi
-movl (,%edi),%esi
-leal 1(%esi),%ebx
-movl %ebx,(,%edi)
-movl 20(%ebp),%edi
-movl %edi,%ebx
-movb %bl,(,%esi)
-.LC154:
-movl $0,%eax
-.LC151:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf155:
-.size yyoutput,.Lf155-yyoutput
-.globl yyunput
-.align 16
-.type yyunput,@function
-yyunput:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl 20(%ebp),%edi
-movl %edi,yytchar
-cmpl $10,yytchar
-jne .LC157
-decl yylineno
-.LC157:
-movl yysptr,%edi
-leal 1(%edi),%esi
-movl %esi,yysptr
-movl yytchar,%esi
-movl %esi,%ebx
-movb %bl,(,%edi)
-movl $0,%eax
-.LC156:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf159:
-.size yyunput,.Lf159-yyunput
-.globl main
-.align 16
-.type main,@function
-main:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-call yyparse
-movl $0,%eax
-.LC160:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf161:
-.size main,.Lf161-main
-.globl yyerror
-.align 16
-.type yyerror,@function
-yyerror:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-pushl 20(%ebp)
-pushl $.LC163
-call printf
-addl $8,%esp
-movl $0,%eax
-.LC162:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf164:
-.size yyerror,.Lf164-yyerror
-.data
-.globl yyexca
-.align 2
-.type yyexca,@object
-yyexca:
-.word -1
-.word 1
-.word 0
-.word -1
-.word -2
-.word 0
-.size yyexca,12
-.globl yyact
-.align 2
-.type yyact,@object
-yyact:
-.word 12
-.word 2
-.word 9
-.word 8
-.word 17
-.word 11
-.word 25
-.word 17
-.word 15
-.word 18
-.word 16
-.word 10
-.word 18
-.word 17
-.word 15
-.word 7
-.word 16
-.word 13
-.word 18
-.word 5
-.word 3
-.word 1
-.word 0
-.word 19
-.word 20
-.word 0
-.word 0
-.word 21
-.word 22
-.word 23
-.word 24
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 6
-.word 14
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 0
-.word 4
-.word 6
-.size yyact,498
-.globl yypact
-.align 2
-.type yypact,@object
-yypact:
-.word -1000
-.word -9
-.word -1000
-.word 5
-.word -7
-.word -59
-.word -1000
-.word -1000
-.word -1000
-.word -40
-.word -29
-.word -40
-.word -40
-.word -1000
-.word -1000
-.word -40
-.word -40
-.word -40
-.word -40
-.word -38
-.word -35
-.word -38
-.word -38
-.word -1000
-.word -1000
-.word -1000
-.size yypact,52
-.globl yypgo
-.align 2
-.type yypgo,@object
-yypgo:
-.word 0
-.word 21
-.word 20
-.word 17
-.word 11
-.size yypgo,10
-.globl yyr1
-.align 2
-.type yyr1,@object
-yyr1:
-.word 0
-.word 1
-.word 1
-.word 1
-.word 1
-.word 2
-.word 4
-.word 4
-.word 4
-.word 4
-.word 4
-.word 4
-.word 4
-.word 4
-.word 3
-.size yyr1,30
-.globl yyr2
-.align 2
-.type yyr2,@object
-yyr2:
-.word 0
-.word 0
-.word 2
-.word 3
-.word 3
-.word 3
-.word 3
-.word 3
-.word 3
-.word 3
-.word 2
-.word 3
-.word 1
-.word 1
-.word 1
-.size yyr2,30
-.globl yychk
-.align 2
-.type yychk,@object
-yychk:
-.word -1000
-.word -1
-.word 10
-.word -2
-.word 256
-.word -3
-.word 257
-.word 10
-.word 10
-.word 61
-.word -4
-.word 45
-.word 40
-.word -3
-.word 258
-.word 43
-.word 45
-.word 42
-.word 47
-.word -4
-.word -4
-.word -4
-.word -4
-.word -4
-.word -4
-.word 41
-.size yychk,52
-.globl yydef
-.align 2
-.type yydef,@object
-yydef:
-.word 1
-.word -2
-.word 2
-.word 0
-.word 0
-.word 0
-.word 14
-.word 3
-.word 4
-.word 0
-.word 5
-.word 0
-.word 0
-.word 12
-.word 13
-.word 0
-.word 0
-.word 0
-.word 0
-.word 10
-.word 0
-.word 6
-.word 7
-.word 8
-.word 9
-.word 11
-.size yydef,52
-.globl yychar
-.align 4
-.type yychar,@object
-.size yychar,4
-yychar:
-.long -1
-.globl yynerrs
-.align 4
-.type yynerrs,@object
-.size yynerrs,4
-yynerrs:
-.long 0
-.globl yyerrflag
-.align 2
-.type yyerrflag,@object
-.size yyerrflag,2
-yyerrflag:
-.word 0
-.globl yyparse
-.text
-.align 16
-.type yyparse,@function
-yyparse:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-subl $332,%esp
-movw $0,-6(%ebp)
-movl $-1,yychar
-movl $0,yynerrs
-movw $0,yyerrflag
-leal -328(%ebp),%edi
-movl %edi,-12(%ebp)
-leal yyv-4,%edi
-movl %edi,-20(%ebp)
-.LC168:
-movl -12(%ebp),%edi
-leal 2(%edi),%edi
-movl %edi,-12(%ebp)
-leal -26(%ebp),%esi
-cmpl %esi,%edi
-jbe .LC169
-pushl $.LC172
-call yyerror
-addl $4,%esp
-movl $1,%eax
-jmp .LC165
-.LC169:
-movl -12(%ebp),%edi
-movw -6(%ebp),%si
-movw %si,(,%edi)
-movl -20(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-20(%ebp)
-movl -20(%ebp),%edi
-movl yyval,%esi
-movl %esi,(,%edi)
-.LC173:
-movswl -6(%ebp),%edi
-movw yypact(,%edi,2),%di
-movw %di,-14(%ebp)
-movswl -14(%ebp),%edi
-cmpl $-1000,%edi
-jg .LC174
-jmp .LC176
-.LC174:
-cmpl $0,yychar
-jge .LC177
-call yylex
-movl %eax,yychar
-cmpl $0,%eax
-jge .LC179
-movl $0,yychar
-.LC179:
-.LC177:
-movswl -14(%ebp),%edi
-movl yychar,%esi
-leal (%esi,%edi),%edi
-movw %di,-14(%ebp)
-movswl %di,%edi
-cmpl $0,%edi
-jl .LC183
-movswl -14(%ebp),%edi
-cmpl $249,%edi
-jl .LC181
-.LC183:
-jmp .LC176
-.LC181:
-movswl -14(%ebp),%edi
-movw yyact(,%edi,2),%di
-movw %di,-14(%ebp)
-movswl %di,%edi
-movswl yychk(,%edi,2),%edi
-cmpl yychar,%edi
-jne .LC184
-movl $-1,yychar
-movl yylval,%edi
-movl %edi,yyval
-movw -14(%ebp),%di
-movw %di,-6(%ebp)
-movswl yyerrflag,%edi
-cmpl $0,%edi
-jle .LC168
-movswl yyerrflag,%edi
-subl $1,%edi
-movw %di,yyerrflag
-jmp .LC168
-.LC184:
-.LC176:
-movswl -6(%ebp),%edi
-movw yydef(,%edi,2),%di
-movw %di,-14(%ebp)
-movswl %di,%edi
-cmpl $-2,%edi
-jne .LC188
-cmpl $0,yychar
-jge .LC190
-call yylex
-movl %eax,yychar
-cmpl $0,%eax
-jge .LC192
-movl $0,yychar
-.LC192:
-.LC190:
-leal yyexca,%edi
-movl %edi,-24(%ebp)
-jmp .LC197
-.LC194:
-.LC195:
-movl -24(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-24(%ebp)
-.LC197:
-movl -24(%ebp),%edi
-movswl (,%edi),%esi
-cmpl $-1,%esi
-jne .LC194
-movswl 2(%edi),%edi
-movswl -6(%ebp),%esi
-cmpl %esi,%edi
-jne .LC194
-jmp .LC199
-.LC198:
-movl -24(%ebp),%edi
-movswl (,%edi),%edi
-cmpl yychar,%edi
-jne .LC201
-jmp .LC200
-.LC201:
-.LC199:
-movl -24(%ebp),%edi
-leal 4(%edi),%edi
-movl %edi,-24(%ebp)
-movswl (,%edi),%edi
-cmpl $0,%edi
-jge .LC198
-.LC200:
-movl -24(%ebp),%edi
-movw 2(%edi),%di
-movw %di,-14(%ebp)
-movswl %di,%edi
-cmpl $0,%edi
-jge .LC203
-movl $0,%eax
-jmp .LC165
-.LC203:
-.LC188:
-movswl -14(%ebp),%edi
-cmpl $0,%edi
-jne .LC205
-movswl yyerrflag,%edi
-movl %edi,-332(%ebp)
-movl -332(%ebp),%edi
-cmpl $0,%edi
-jl .LC207
-cmpl $3,%edi
-jg .LC207
-jmp *.LC223(,%edi,4)
-.data
-.align 4
-.LC223:
-.long .LC210
-.long .LC213
-.long .LC213
-.long .LC220
-.text
-.LC210:
-pushl $.LC211
-call yyerror
-addl $4,%esp
-.LC212:
-incl yynerrs
-.LC213:
-movw $3,yyerrflag
-jmp .LC215
-.LC214:
-movl -12(%ebp),%edi
-movswl (,%edi),%edi
-movswl yypact(,%edi,2),%edi
-leal 256(%edi),%edi
-movw %di,-14(%ebp)
-movswl -14(%ebp),%edi
-cmpl $0,%edi
-jl .LC217
-cmpl $249,%edi
-jge .LC217
-movswl yyact(,%edi,2),%edi
-movswl yychk(,%edi,2),%edi
-cmpl $256,%edi
-jne .LC217
-movswl -14(%ebp),%edi
-movw yyact(,%edi,2),%di
-movw %di,-6(%ebp)
-jmp .LC168
-.LC217:
-movl -12(%ebp),%edi
-movswl (,%edi),%esi
-movw yypact(,%esi,2),%si
-movw %si,-14(%ebp)
-leal -2(%edi),%edi
-movl %edi,-12(%ebp)
-movl -20(%ebp),%edi
-leal -4(%edi),%edi
-movl %edi,-20(%ebp)
-.LC215:
-movl -12(%ebp),%edi
-leal -326(%ebp),%esi
-cmpl %esi,%edi
-jae .LC214
-.LC219:
-movl $1,%eax
-jmp .LC165
-.LC220:
-cmpl $0,yychar
-jne .LC221
-jmp .LC219
-.LC221:
-movl $-1,yychar
-jmp .LC173
-.LC207:
-.LC205:
-movw -14(%ebp),%di
-movswl %di,%esi
-leal (,%esi,2),%esi
-leal yyr2(%esi),%ebx
-movl -12(%ebp),%edx
-movswl (,%ebx),%ecx
-leal (,%ecx,2),%ecx
-subl %ecx,%edx
-movl %edx,-12(%ebp)
-movl -20(%ebp),%edx
-movl %edx,-4(%ebp)
-movswl (,%ebx),%ebx
-leal (,%ebx,4),%ebx
-subl %ebx,%edx
-movl %edx,-20(%ebp)
-movl -20(%ebp),%ebx
-movl 4(%ebx),%ebx
-movl %ebx,yyval
-movw %di,-328(%ebp)
-movw yyr1(%esi),%di
-movw %di,-14(%ebp)
-movswl -14(%ebp),%edi
-movswl yypgo(,%edi,2),%edi
-movl -12(%ebp),%esi
-movswl (,%esi),%esi
-leal (%esi,%edi),%edi
-leal 1(%edi),%edi
-movw %di,-26(%ebp)
-movswl -26(%ebp),%edi
-cmpl $249,%edi
-jge .LC226
-movw yyact(,%edi,2),%di
-movw %di,-6(%ebp)
-movswl %di,%edi
-movswl yychk(,%edi,2),%edi
-movswl -14(%ebp),%esi
-negl %esi
-cmpl %esi,%edi
-je .LC224
-.LC226:
-movswl -14(%ebp),%edi
-movswl yypgo(,%edi,2),%edi
-movw yyact(,%edi,2),%di
-movw %di,-6(%ebp)
-.LC224:
-movswl -328(%ebp),%edi
-movl %edi,-332(%ebp)
-movl -332(%ebp),%edi
-cmpl $4,%edi
-jl .LC168
-cmpl $14,%edi
-jg .LC168
-jmp *.LC248-16(,%edi,4)
-.data
-.align 4
-.LC248:
-.long .LC230
-.long .LC231
-.long .LC233
-.long .LC235
-.long .LC237
-.long .LC239
-.long .LC241
-.long .LC168
-.long .LC243
-.long .LC245
-.long .LC247
-.text
-.LC230:
-movw $0,yyerrflag
-jmp .LC168
-.LC231:
-pushl $.LC232
-call printf
-addl $4,%esp
-jmp .LC168
-.LC233:
-pushl $.LC234
-call printf
-addl $4,%esp
-jmp .LC168
-.LC235:
-pushl $.LC236
-call printf
-addl $4,%esp
-jmp .LC168
-.LC237:
-pushl $.LC238
-call printf
-addl $4,%esp
-jmp .LC168
-.LC239:
-pushl $.LC240
-call printf
-addl $4,%esp
-jmp .LC168
-.LC241:
-pushl $.LC242
-call printf
-addl $4,%esp
-jmp .LC168
-.LC243:
-pushl $.LC244
-call printf
-addl $4,%esp
-jmp .LC168
-.LC245:
-pushl $yytext
-pushl $.LC246
-call printf
-addl $8,%esp
-jmp .LC168
-.LC247:
-pushl $yytext
-pushl $.LC163
-call printf
-addl $8,%esp
-jmp .LC168
-.LC165:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf250:
-.size yyparse,.Lf250-yyparse
-.globl yywrap
-.align 16
-.type yywrap,@function
-yywrap:
-pushl %ebp
-pushl %ebx
-pushl %esi
-pushl %edi
-movl %esp,%ebp
-movl $1,%eax
-.LC251:
-movl %ebp,%esp
-popl %edi
-popl %esi
-popl %ebx
-popl %ebp
-ret
-.Lf252:
-.size yywrap,.Lf252-yywrap
-.bss
-.globl yyv
-.align 4
-.type yyv,@object
-.size yyv,600
-.comm yyv,600
-.globl yyfnd
-.align 4
-.type yyfnd,@object
-.size yyfnd,4
-.comm yyfnd,4
-.globl yyolsp
-.align 4
-.type yyolsp,@object
-.size yyolsp,4
-.comm yyolsp,4
-.globl yylsp
-.align 4
-.type yylsp,@object
-.size yylsp,4
-.comm yylsp,4
-.globl yylstate
-.align 4
-.type yylstate,@object
-.size yylstate,800
-.comm yylstate,800
-.globl yyestate
-.align 4
-.type yyestate,@object
-.size yyestate,4
-.comm yyestate,4
-.globl yytchar
-.align 4
-.type yytchar,@object
-.size yytchar,4
-.comm yytchar,4
-.globl yysbuf
-.align 1
-.type yysbuf,@object
-.size yysbuf,200
-.comm yysbuf,200
-.globl yymorfg
-.align 4
-.type yymorfg,@object
-.size yymorfg,4
-.comm yymorfg,4
-.globl yytext
-.align 1
-.type yytext,@object
-.size yytext,200
-.comm yytext,200
-.globl yyleng
-.align 4
-.type yyleng,@object
-.size yyleng,4
-.comm yyleng,4
-.globl yyval
-.align 4
-.type yyval,@object
-.size yyval,4
-.comm yyval,4
-.globl yylval
-.align 4
-.type yylval,@object
-.size yylval,4
-.comm yylval,4
-.data
-.align 1
-.LC246:
-.byte 112
-.byte 117
-.byte 115
-.byte 104
-.byte 32
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC244:
-.byte 108
-.byte 111
-.byte 97
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC242:
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC240:
-.byte 100
-.byte 105
-.byte 118
-.byte 105
-.byte 100
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC238:
-.byte 109
-.byte 117
-.byte 108
-.byte 116
-.byte 105
-.byte 112
-.byte 108
-.byte 121
-.byte 10
-.byte 0
-.align 1
-.LC236:
-.byte 110
-.byte 101
-.byte 103
-.byte 97
-.byte 116
-.byte 101
-.byte 10
-.byte 97
-.byte 100
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC234:
-.byte 97
-.byte 100
-.byte 100
-.byte 10
-.byte 0
-.align 1
-.LC232:
-.byte 115
-.byte 116
-.byte 111
-.byte 114
-.byte 101
-.byte 10
-.byte 0
-.align 1
-.LC211:
-.byte 115
-.byte 121
-.byte 110
-.byte 116
-.byte 97
-.byte 120
-.byte 32
-.byte 101
-.byte 114
-.byte 114
-.byte 111
-.byte 114
-.byte 0
-.align 1
-.LC172:
-.byte 121
-.byte 97
-.byte 99
-.byte 99
-.byte 32
-.byte 115
-.byte 116
-.byte 97
-.byte 99
-.byte 107
-.byte 32
-.byte 111
-.byte 118
-.byte 101
-.byte 114
-.byte 102
-.byte 108
-.byte 111
-.byte 119
-.byte 0
-.align 1
-.LC163:
-.byte 37
-.byte 115
-.byte 10
-.byte 0
-.align 1
-.LC16:
-.byte 98
-.byte 97
-.byte 100
-.byte 32
-.byte 115
-.byte 119
-.byte 105
-.byte 116
-.byte 99
-.byte 104
-.byte 32
-.byte 121
-.byte 121
-.byte 108
-.byte 111
-.byte 111
-.byte 107
-.byte 32
-.byte 37
-.byte 100
-.byte 0
-.text
-.ident "LCC: 4.1"
+.data
+.globl yyin
+.align 4
+.type yyin,@object
+.size yyin,4
+yyin:
+.long _IO_stdin_
+.globl yyout
+.align 4
+.type yyout,@object
+.size yyout,4
+yyout:
+.long _IO_stdout_
+.globl yylex
+.text
+.align 16
+.type yylex,@function
+yylex:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $4,%esp
+jmp .LC3
+.LC2:
+.LC5:
+movl -4(%ebp),%edi
+cmpl $-1,%edi
+jl .LC6
+cmpl $4,%edi
+jg .LC6
+jmp *.LC17+4(,%edi,4)
+.data
+.align 4
+.LC17:
+.long .LC7
+.long .LC8
+.long .LC11
+.long .LC12
+.long .LC7
+.long .LC14
+.text
+.LC8:
+call yywrap
+cmpl $0,%eax
+je .LC7
+movl $0,%eax
+jmp .LC1
+.LC11:
+movl $257,%eax
+jmp .LC1
+.LC12:
+movl $258,%eax
+jmp .LC1
+.LC14:
+movsbl yytext,%eax
+jmp .LC1
+.LC6:
+pushl -4(%ebp)
+pushl $.LC16
+pushl yyout
+call fprintf
+addl $12,%esp
+.LC7:
+.LC3:
+call yylook
+movl %eax,-4(%ebp)
+cmpl $0,%eax
+jge .LC2
+movl $0,%eax
+.LC1:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf19:
+.size yylex,.Lf19-yylex
+.data
+.globl yyvstop
+.align 4
+.type yyvstop,@object
+yyvstop:
+.long 0
+.long 4
+.long 0
+.long 3
+.long 4
+.long 0
+.long 2
+.long 4
+.long 0
+.long 1
+.long 4
+.long 0
+.long 2
+.long 0
+.long 1
+.long 0
+.long 0
+.size yyvstop,68
+.globl yycrank
+.align 4
+.type yycrank,@object
+yycrank:
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 1
+.byte 3
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 1
+.byte 4
+.space 2
+.byte 1
+.byte 3
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 1
+.byte 5
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 5
+.byte 7
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 1
+.byte 6
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 6
+.byte 8
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.byte 0
+.byte 0
+.space 2
+.size yycrank,580
+.globl yysvec
+.align 4
+.type yysvec,@object
+yysvec:
+.long 0
+.long 0
+.long 0
+.long yycrank-4
+.long 0
+.long 0
+.long yycrank
+.long yysvec+12
+.long 0
+.long yycrank
+.long 0
+.long yyvstop+4
+.long yycrank
+.long 0
+.long yyvstop+12
+.long yycrank+8
+.long 0
+.long yyvstop+24
+.long yycrank+76
+.long 0
+.long yyvstop+36
+.long yycrank
+.long yysvec+60
+.long yyvstop+48
+.long yycrank
+.long yysvec+72
+.long yyvstop+56
+.long 0
+.long 0
+.long 0
+.size yysvec,120
+.globl yytop
+.align 4
+.type yytop,@object
+.size yytop,4
+yytop:
+.long yycrank+564
+.globl yybgin
+.align 4
+.type yybgin,@object
+.size yybgin,4
+yybgin:
+.long yysvec+12
+.globl yymatch
+.align 1
+.type yymatch,@object
+yymatch:
+.byte 0
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 9
+.byte 10
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 9
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 48
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 65
+.byte 1
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 65
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 1
+.byte 0
+.size yymatch,129
+.globl yyextra
+.align 1
+.type yyextra,@object
+yyextra:
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.byte 0
+.size yyextra,9
+.globl yylineno
+.align 4
+.type yylineno,@object
+.size yylineno,4
+yylineno:
+.long 1
+.globl yysptr
+.align 4
+.type yysptr,@object
+.size yysptr,4
+yysptr:
+.long yysbuf
+.globl yyprevious
+.align 4
+.type yyprevious,@object
+.size yyprevious,4
+yyprevious:
+.long 10
+.globl yylook
+.text
+.align 16
+.type yylook,@function
+yylook:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $44,%esp
+cmpl $0,yymorfg
+jne .LC35
+leal yytext,%edi
+movl %edi,-16(%ebp)
+jmp .LC36
+.LC35:
+movl $0,yymorfg
+movl yyleng,%edi
+leal yytext(%edi),%edi
+movl %edi,-16(%ebp)
+.LC36:
+.LC37:
+leal yylstate,%edi
+movl %edi,-8(%ebp)
+movl yybgin,%edi
+movl %edi,-4(%ebp)
+movl %edi,yyestate
+cmpl $10,yyprevious
+jne .LC41
+movl -4(%ebp),%edi
+leal 12(%edi),%edi
+movl %edi,-4(%ebp)
+.LC41:
+.LC43:
+movl -4(%ebp),%edi
+movl (,%edi),%edi
+movl %edi,-12(%ebp)
+movl -12(%ebp),%edi
+leal yycrank,%esi
+cmpl %esi,%edi
+jne .LC47
+movl -4(%ebp),%edi
+movl 4(%edi),%edi
+movl %edi,-28(%ebp)
+movl -28(%ebp),%edi
+cmpl $0,%edi
+jne .LC49
+jmp .LC94
+.LC49:
+movl -28(%ebp),%edi
+movl (,%edi),%edi
+leal yycrank,%esi
+cmpl %esi,%edi
+jne .LC51
+jmp .LC94
+.LC51:
+.LC47:
+movl -16(%ebp),%edi
+leal 1(%edi),%esi
+movl %esi,-16(%ebp)
+movl yysptr,%esi
+leal yysbuf,%ebx
+cmpl %ebx,%esi
+jbe .LC61
+movl yysptr,%esi
+leal -1(%esi),%esi
+movl %esi,yysptr
+movsbl (,%esi),%esi
+movl %esi,-40(%ebp)
+jmp .LC62
+.LC61:
+movl yyin,%esi
+movl 4(%esi),%ebx
+movl 8(%esi),%esi
+cmpl %esi,%ebx
+jb .LC63
+pushl yyin
+call __uflow
+addl $4,%esp
+movl %eax,%esi
+movl %esi,-44(%ebp)
+jmp .LC64
+.LC63:
+movl yyin,%esi
+leal 4(%esi),%esi
+movl (,%esi),%ebx
+leal 1(%ebx),%edx
+movl %edx,(,%esi)
+movb (,%ebx),%bl
+movzbl %bl,%esi
+movl %esi,-44(%ebp)
+.LC64:
+movl -44(%ebp),%esi
+movl %esi,-40(%ebp)
+.LC62:
+movl -40(%ebp),%esi
+movl %esi,yytchar
+cmpl $10,%esi
+jne .LC59
+incl yylineno
+movl yytchar,%esi
+movl %esi,-36(%ebp)
+jmp .LC60
+.LC59:
+movl yytchar,%esi
+movl %esi,-36(%ebp)
+.LC60:
+cmpl $-1,-36(%ebp)
+jne .LC57
+movl $0,-32(%ebp)
+jmp .LC58
+.LC57:
+movl yytchar,%esi
+movl %esi,-32(%ebp)
+.LC58:
+movl -32(%ebp),%esi
+movl %esi,-20(%ebp)
+movl %esi,%ebx
+movb %bl,(,%edi)
+.LC65:
+movl -12(%ebp),%edi
+movl %edi,-24(%ebp)
+leal yycrank,%esi
+cmpl %esi,%edi
+jbe .LC66
+movl -20(%ebp),%edi
+movl -24(%ebp),%esi
+leal (%esi,%edi,4),%edi
+movl %edi,-12(%ebp)
+movl -12(%ebp),%edi
+movl %edi,%esi
+movl yytop,%ebx
+cmpl %ebx,%esi
+ja .LC67
+movsbl (,%edi),%edi
+imul $12,%edi,%edi
+leal yysvec(%edi),%edi
+movl -4(%ebp),%esi
+cmpl %esi,%edi
+jne .LC67
+leal yysvec,%edi
+movl -12(%ebp),%esi
+movsbl 1(%esi),%esi
+imul $12,%esi,%esi
+leal yysvec(%esi),%esi
+cmpl %edi,%esi
+jne .LC70
+movl -16(%ebp),%edi
+leal -1(%edi),%edi
+movl %edi,-16(%ebp)
+movsbl (,%edi),%edi
+movl %edi,yytchar
+cmpl $10,yytchar
+jne .LC72
+decl yylineno
+.LC72:
+movl yysptr,%edi
+leal 1(%edi),%esi
+movl %esi,yysptr
+movl yytchar,%esi
+movl %esi,%ebx
+movb %bl,(,%edi)
+jmp .LC94
+.LC70:
+movl -8(%ebp),%edi
+leal 4(%edi),%esi
+movl %esi,-8(%ebp)
+movl -12(%ebp),%esi
+movsbl 1(%esi),%esi
+imul $12,%esi,%esi
+leal yysvec(%esi),%esi
+movl %esi,-4(%ebp)
+movl %esi,(,%edi)
+jmp .LC43
+.LC66:
+movl -12(%ebp),%edi
+leal yycrank,%esi
+cmpl %esi,%edi
+jae .LC75
+leal yycrank,%edi
+movl -12(%ebp),%esi
+subl %esi,%edi
+movl %edi,%eax
+movl $4,%ecx
+cdq
+idivl %ecx
+leal yycrank(,%eax,4),%edi
+movl %edi,-24(%ebp)
+movl %edi,-12(%ebp)
+movl -20(%ebp),%edi
+movl -12(%ebp),%esi
+leal (%esi,%edi,4),%edi
+movl %edi,-12(%ebp)
+movl -12(%ebp),%edi
+movl %edi,%esi
+movl yytop,%ebx
+cmpl %ebx,%esi
+ja .LC77
+movsbl (,%edi),%edi
+imul $12,%edi,%edi
+leal yysvec(%edi),%edi
+movl -4(%ebp),%esi
+cmpl %esi,%edi
+jne .LC77
+leal yysvec,%edi
+movl -12(%ebp),%esi
+movsbl 1(%esi),%esi
+imul $12,%esi,%esi
+leal yysvec(%esi),%esi
+cmpl %edi,%esi
+jne .LC79
+movl -16(%ebp),%edi
+leal -1(%edi),%edi
+movl %edi,-16(%ebp)
+movsbl (,%edi),%edi
+movl %edi,yytchar
+cmpl $10,yytchar
+jne .LC81
+decl yylineno
+.LC81:
+movl yysptr,%edi
+leal 1(%edi),%esi
+movl %esi,yysptr
+movl yytchar,%esi
+movl %esi,%ebx
+movb %bl,(,%edi)
+jmp .LC94
+.LC79:
+movl -8(%ebp),%edi
+leal 4(%edi),%esi
+movl %esi,-8(%ebp)
+movl -12(%ebp),%esi
+movsbl 1(%esi),%esi
+imul $12,%esi,%esi
+leal yysvec(%esi),%esi
+movl %esi,-4(%ebp)
+movl %esi,(,%edi)
+jmp .LC43
+.LC77:
+movl -20(%ebp),%edi
+movsbl yymatch(%edi),%edi
+movl -24(%ebp),%esi
+leal (%esi,%edi,4),%edi
+movl %edi,-12(%ebp)
+movl -12(%ebp),%edi
+movl %edi,%esi
+movl yytop,%ebx
+cmpl %ebx,%esi
+ja .LC83
+movsbl (,%edi),%edi
+imul $12,%edi,%edi
+leal yysvec(%edi),%edi
+movl -4(%ebp),%esi
+cmpl %esi,%edi
+jne .LC83
+leal yysvec,%edi
+movl -12(%ebp),%esi
+movsbl 1(%esi),%esi
+imul $12,%esi,%esi
+leal yysvec(%esi),%esi
+cmpl %edi,%esi
+jne .LC85
+movl -16(%ebp),%edi
+leal -1(%edi),%edi
+movl %edi,-16(%ebp)
+movsbl (,%edi),%edi
+movl %edi,yytchar
+cmpl $10,yytchar
+jne .LC87
+decl yylineno
+.LC87:
+movl yysptr,%edi
+leal 1(%edi),%esi
+movl %esi,yysptr
+movl yytchar,%esi
+movl %esi,%ebx
+movb %bl,(,%edi)
+jmp .LC94
+.LC85:
+movl -8(%ebp),%edi
+leal 4(%edi),%esi
+movl %esi,-8(%ebp)
+movl -12(%ebp),%esi
+movsbl 1(%esi),%esi
+imul $12,%esi,%esi
+leal yysvec(%esi),%esi
+movl %esi,-4(%ebp)
+movl %esi,(,%edi)
+jmp .LC43
+.LC83:
+.LC75:
+.LC67:
+movl -4(%ebp),%edi
+movl 4(%edi),%edi
+movl %edi,-4(%ebp)
+cmpl $0,%edi
+je .LC89
+movl -4(%ebp),%edi
+movl (,%edi),%edi
+movl %edi,-12(%ebp)
+leal yycrank,%esi
+cmpl %esi,%edi
+je .LC89
+jmp .LC65
+.LC89:
+movl -16(%ebp),%edi
+leal -1(%edi),%edi
+movl %edi,-16(%ebp)
+movsbl (,%edi),%edi
+movl %edi,yytchar
+cmpl $10,yytchar
+jne .LC91
+decl yylineno
+.LC91:
+movl yysptr,%edi
+leal 1(%edi),%esi
+movl %esi,yysptr
+movl yytchar,%esi
+movl %esi,%ebx
+movb %bl,(,%edi)
+jmp .LC94
+.LC93:
+movl -16(%ebp),%edi
+leal -1(%edi),%esi
+movl %esi,-16(%ebp)
+movb $0,(,%edi)
+movl -8(%ebp),%edi
+movl (,%edi),%edi
+movl %edi,%esi
+cmpl $0,%esi
+je .LC96
+movl 8(%edi),%edi
+movl %edi,yyfnd
+cmpl $0,%edi
+je .LC96
+movl yyfnd,%edi
+cmpl $0,(,%edi)
+jle .LC96
+movl -8(%ebp),%edi
+movl %edi,yyolsp
+movl yyfnd,%edi
+movl (,%edi),%edi
+movsbl yyextra(%edi),%edi
+cmpl $0,%edi
+je .LC98
+jmp .LC101
+.LC100:
+movl -8(%ebp),%edi
+leal -4(%edi),%edi
+movl %edi,-8(%ebp)
+movl -16(%ebp),%edi
+leal -1(%edi),%esi
+movl %esi,-16(%ebp)
+movsbl (,%edi),%edi
+movl %edi,yytchar
+cmpl $10,yytchar
+jne .LC103
+decl yylineno
+.LC103:
+movl yysptr,%edi
+leal 1(%edi),%esi
+movl %esi,yysptr
+movl yytchar,%esi
+movl %esi,%ebx
+movb %bl,(,%edi)
+.LC101:
+movl yyfnd,%edi
+movl (,%edi),%edi
+negl %edi
+pushl %edi
+movl -8(%ebp),%edi
+movl (,%edi),%edi
+pushl 8(%edi)
+call yyback
+addl $8,%esp
+cmpl $1,%eax
+je .LC105
+movl -8(%ebp),%edi
+leal yylstate,%esi
+cmpl %esi,%edi
+ja .LC100
+.LC105:
+.LC98:
+movl -16(%ebp),%edi
+movsbl (,%edi),%esi
+movl %esi,yyprevious
+movl -8(%ebp),%esi
+movl %esi,yylsp
+leal yytext,%esi
+subl %esi,%edi
+leal 1(%edi),%edi
+movl %edi,yyleng
+movl yyleng,%edi
+movb $0,yytext(%edi)
+movl yyfnd,%edi
+leal 4(%edi),%esi
+movl %esi,yyfnd
+movl (,%edi),%eax
+jmp .LC34
+.LC96:
+movl -16(%ebp),%edi
+movsbl (,%edi),%edi
+movl %edi,yytchar
+cmpl $10,yytchar
+jne .LC106
+decl yylineno
+.LC106:
+movl yysptr,%edi
+leal 1(%edi),%esi
+movl %esi,yysptr
+movl yytchar,%esi
+movl %esi,%ebx
+movb %bl,(,%edi)
+.LC94:
+movl -8(%ebp),%edi
+leal -4(%edi),%esi
+movl %esi,-8(%ebp)
+leal yylstate,%esi
+cmpl %esi,%edi
+ja .LC93
+movsbl yytext,%edi
+cmpl $0,%edi
+jne .LC108
+leal yysbuf,%edi
+movl %edi,yysptr
+movl $0,%eax
+jmp .LC34
+.LC108:
+movl yysptr,%edi
+leal yysbuf,%esi
+cmpl %esi,%edi
+jbe .LC118
+movl yysptr,%edi
+leal -1(%edi),%edi
+movl %edi,yysptr
+movsbl (,%edi),%edi
+movl %edi,-40(%ebp)
+jmp .LC119
+.LC118:
+movl yyin,%edi
+movl 4(%edi),%esi
+movl 8(%edi),%edi
+cmpl %edi,%esi
+jb .LC120
+pushl yyin
+call __uflow
+addl $4,%esp
+movl %eax,%edi
+movl %edi,-44(%ebp)
+jmp .LC121
+.LC120:
+movl yyin,%edi
+leal 4(%edi),%edi
+movl (,%edi),%esi
+leal 1(%esi),%ebx
+movl %ebx,(,%edi)
+movb (,%esi),%bl
+movzbl %bl,%edi
+movl %edi,-44(%ebp)
+.LC121:
+movl -44(%ebp),%edi
+movl %edi,-40(%ebp)
+.LC119:
+movl -40(%ebp),%edi
+movl %edi,yytchar
+cmpl $10,%edi
+jne .LC116
+incl yylineno
+movl yytchar,%edi
+movl %edi,-36(%ebp)
+jmp .LC117
+.LC116:
+movl yytchar,%edi
+movl %edi,-36(%ebp)
+.LC117:
+cmpl $-1,-36(%ebp)
+jne .LC114
+movl $0,-32(%ebp)
+jmp .LC115
+.LC114:
+movl yytchar,%edi
+movl %edi,-32(%ebp)
+.LC115:
+movl -32(%ebp),%edi
+movl %edi,%ebx
+movb %bl,yytext
+movsbl %bl,%edi
+movl %edi,yyprevious
+cmpl $0,yyprevious
+jle .LC122
+movl yyout,%edi
+movl 20(%edi),%esi
+movl 24(%edi),%edi
+cmpl %edi,%esi
+jb .LC125
+movl yyprevious,%edi
+movl %edi,%ebx
+movzbl %bl,%edi
+pushl %edi
+pushl yyout
+call __overflow
+addl $8,%esp
+jmp .LC126
+.LC125:
+movl yyout,%edi
+leal 20(%edi),%edi
+movl (,%edi),%esi
+leal 1(%esi),%ebx
+movl %ebx,(,%edi)
+movl yyprevious,%edi
+movl %edi,%ebx
+movb %bl,(,%esi)
+.LC126:
+.LC122:
+leal yytext,%edi
+movl %edi,-16(%ebp)
+jmp .LC37
+.LC34:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf127:
+.size yylook,.Lf127-yylook
+.globl yyback
+.align 16
+.type yyback,@function
+yyback:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 20(%ebp),%edi
+cmpl $0,%edi
+jne .LC132
+movl $0,%eax
+jmp .LC128
+.LC131:
+movl 20(%ebp),%edi
+leal 4(%edi),%esi
+movl %esi,20(%ebp)
+movl 24(%ebp),%esi
+cmpl %esi,(,%edi)
+jne .LC134
+movl $1,%eax
+jmp .LC128
+.LC134:
+.LC132:
+movl 20(%ebp),%edi
+cmpl $0,(,%edi)
+jne .LC131
+movl $0,%eax
+.LC128:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf136:
+.size yyback,.Lf136-yyback
+.globl yyinput
+.align 16
+.type yyinput,@function
+yyinput:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $16,%esp
+movl yysptr,%edi
+leal yysbuf,%esi
+cmpl %esi,%edi
+jbe .LC146
+movl yysptr,%edi
+leal -1(%edi),%edi
+movl %edi,yysptr
+movsbl (,%edi),%edi
+movl %edi,-12(%ebp)
+jmp .LC147
+.LC146:
+movl yyin,%edi
+movl 4(%edi),%esi
+movl 8(%edi),%edi
+cmpl %edi,%esi
+jb .LC148
+pushl yyin
+call __uflow
+addl $4,%esp
+movl %eax,%edi
+movl %edi,-16(%ebp)
+jmp .LC149
+.LC148:
+movl yyin,%edi
+leal 4(%edi),%edi
+movl (,%edi),%esi
+leal 1(%esi),%ebx
+movl %ebx,(,%edi)
+movb (,%esi),%bl
+movzbl %bl,%edi
+movl %edi,-16(%ebp)
+.LC149:
+movl -16(%ebp),%edi
+movl %edi,-12(%ebp)
+.LC147:
+movl -12(%ebp),%edi
+movl %edi,yytchar
+cmpl $10,%edi
+jne .LC144
+incl yylineno
+movl yytchar,%edi
+movl %edi,-8(%ebp)
+jmp .LC145
+.LC144:
+movl yytchar,%edi
+movl %edi,-8(%ebp)
+.LC145:
+cmpl $-1,-8(%ebp)
+jne .LC142
+movl $0,-4(%ebp)
+jmp .LC143
+.LC142:
+movl yytchar,%edi
+movl %edi,-4(%ebp)
+.LC143:
+movl -4(%ebp),%eax
+.LC137:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf150:
+.size yyinput,.Lf150-yyinput
+.globl yyoutput
+.align 16
+.type yyoutput,@function
+yyoutput:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl yyout,%edi
+movl 20(%edi),%esi
+movl 24(%edi),%edi
+cmpl %edi,%esi
+jb .LC153
+movl 20(%ebp),%edi
+movl %edi,%ebx
+movzbl %bl,%edi
+pushl %edi
+pushl yyout
+call __overflow
+addl $8,%esp
+jmp .LC154
+.LC153:
+movl yyout,%edi
+leal 20(%edi),%edi
+movl (,%edi),%esi
+leal 1(%esi),%ebx
+movl %ebx,(,%edi)
+movl 20(%ebp),%edi
+movl %edi,%ebx
+movb %bl,(,%esi)
+.LC154:
+movl $0,%eax
+.LC151:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf155:
+.size yyoutput,.Lf155-yyoutput
+.globl yyunput
+.align 16
+.type yyunput,@function
+yyunput:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl 20(%ebp),%edi
+movl %edi,yytchar
+cmpl $10,yytchar
+jne .LC157
+decl yylineno
+.LC157:
+movl yysptr,%edi
+leal 1(%edi),%esi
+movl %esi,yysptr
+movl yytchar,%esi
+movl %esi,%ebx
+movb %bl,(,%edi)
+movl $0,%eax
+.LC156:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf159:
+.size yyunput,.Lf159-yyunput
+.globl main
+.align 16
+.type main,@function
+main:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+call yyparse
+movl $0,%eax
+.LC160:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf161:
+.size main,.Lf161-main
+.globl yyerror
+.align 16
+.type yyerror,@function
+yyerror:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+pushl 20(%ebp)
+pushl $.LC163
+call printf
+addl $8,%esp
+movl $0,%eax
+.LC162:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf164:
+.size yyerror,.Lf164-yyerror
+.data
+.globl yyexca
+.align 2
+.type yyexca,@object
+yyexca:
+.word -1
+.word 1
+.word 0
+.word -1
+.word -2
+.word 0
+.size yyexca,12
+.globl yyact
+.align 2
+.type yyact,@object
+yyact:
+.word 12
+.word 2
+.word 9
+.word 8
+.word 17
+.word 11
+.word 25
+.word 17
+.word 15
+.word 18
+.word 16
+.word 10
+.word 18
+.word 17
+.word 15
+.word 7
+.word 16
+.word 13
+.word 18
+.word 5
+.word 3
+.word 1
+.word 0
+.word 19
+.word 20
+.word 0
+.word 0
+.word 21
+.word 22
+.word 23
+.word 24
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 6
+.word 14
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 0
+.word 4
+.word 6
+.size yyact,498
+.globl yypact
+.align 2
+.type yypact,@object
+yypact:
+.word -1000
+.word -9
+.word -1000
+.word 5
+.word -7
+.word -59
+.word -1000
+.word -1000
+.word -1000
+.word -40
+.word -29
+.word -40
+.word -40
+.word -1000
+.word -1000
+.word -40
+.word -40
+.word -40
+.word -40
+.word -38
+.word -35
+.word -38
+.word -38
+.word -1000
+.word -1000
+.word -1000
+.size yypact,52
+.globl yypgo
+.align 2
+.type yypgo,@object
+yypgo:
+.word 0
+.word 21
+.word 20
+.word 17
+.word 11
+.size yypgo,10
+.globl yyr1
+.align 2
+.type yyr1,@object
+yyr1:
+.word 0
+.word 1
+.word 1
+.word 1
+.word 1
+.word 2
+.word 4
+.word 4
+.word 4
+.word 4
+.word 4
+.word 4
+.word 4
+.word 4
+.word 3
+.size yyr1,30
+.globl yyr2
+.align 2
+.type yyr2,@object
+yyr2:
+.word 0
+.word 0
+.word 2
+.word 3
+.word 3
+.word 3
+.word 3
+.word 3
+.word 3
+.word 3
+.word 2
+.word 3
+.word 1
+.word 1
+.word 1
+.size yyr2,30
+.globl yychk
+.align 2
+.type yychk,@object
+yychk:
+.word -1000
+.word -1
+.word 10
+.word -2
+.word 256
+.word -3
+.word 257
+.word 10
+.word 10
+.word 61
+.word -4
+.word 45
+.word 40
+.word -3
+.word 258
+.word 43
+.word 45
+.word 42
+.word 47
+.word -4
+.word -4
+.word -4
+.word -4
+.word -4
+.word -4
+.word 41
+.size yychk,52
+.globl yydef
+.align 2
+.type yydef,@object
+yydef:
+.word 1
+.word -2
+.word 2
+.word 0
+.word 0
+.word 0
+.word 14
+.word 3
+.word 4
+.word 0
+.word 5
+.word 0
+.word 0
+.word 12
+.word 13
+.word 0
+.word 0
+.word 0
+.word 0
+.word 10
+.word 0
+.word 6
+.word 7
+.word 8
+.word 9
+.word 11
+.size yydef,52
+.globl yychar
+.align 4
+.type yychar,@object
+.size yychar,4
+yychar:
+.long -1
+.globl yynerrs
+.align 4
+.type yynerrs,@object
+.size yynerrs,4
+yynerrs:
+.long 0
+.globl yyerrflag
+.align 2
+.type yyerrflag,@object
+.size yyerrflag,2
+yyerrflag:
+.word 0
+.globl yyparse
+.text
+.align 16
+.type yyparse,@function
+yyparse:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+subl $332,%esp
+movw $0,-6(%ebp)
+movl $-1,yychar
+movl $0,yynerrs
+movw $0,yyerrflag
+leal -328(%ebp),%edi
+movl %edi,-12(%ebp)
+leal yyv-4,%edi
+movl %edi,-20(%ebp)
+.LC168:
+movl -12(%ebp),%edi
+leal 2(%edi),%edi
+movl %edi,-12(%ebp)
+leal -26(%ebp),%esi
+cmpl %esi,%edi
+jbe .LC169
+pushl $.LC172
+call yyerror
+addl $4,%esp
+movl $1,%eax
+jmp .LC165
+.LC169:
+movl -12(%ebp),%edi
+movw -6(%ebp),%si
+movw %si,(,%edi)
+movl -20(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-20(%ebp)
+movl -20(%ebp),%edi
+movl yyval,%esi
+movl %esi,(,%edi)
+.LC173:
+movswl -6(%ebp),%edi
+movw yypact(,%edi,2),%di
+movw %di,-14(%ebp)
+movswl -14(%ebp),%edi
+cmpl $-1000,%edi
+jg .LC174
+jmp .LC176
+.LC174:
+cmpl $0,yychar
+jge .LC177
+call yylex
+movl %eax,yychar
+cmpl $0,%eax
+jge .LC179
+movl $0,yychar
+.LC179:
+.LC177:
+movswl -14(%ebp),%edi
+movl yychar,%esi
+leal (%esi,%edi),%edi
+movw %di,-14(%ebp)
+movswl %di,%edi
+cmpl $0,%edi
+jl .LC183
+movswl -14(%ebp),%edi
+cmpl $249,%edi
+jl .LC181
+.LC183:
+jmp .LC176
+.LC181:
+movswl -14(%ebp),%edi
+movw yyact(,%edi,2),%di
+movw %di,-14(%ebp)
+movswl %di,%edi
+movswl yychk(,%edi,2),%edi
+cmpl yychar,%edi
+jne .LC184
+movl $-1,yychar
+movl yylval,%edi
+movl %edi,yyval
+movw -14(%ebp),%di
+movw %di,-6(%ebp)
+movswl yyerrflag,%edi
+cmpl $0,%edi
+jle .LC168
+movswl yyerrflag,%edi
+subl $1,%edi
+movw %di,yyerrflag
+jmp .LC168
+.LC184:
+.LC176:
+movswl -6(%ebp),%edi
+movw yydef(,%edi,2),%di
+movw %di,-14(%ebp)
+movswl %di,%edi
+cmpl $-2,%edi
+jne .LC188
+cmpl $0,yychar
+jge .LC190
+call yylex
+movl %eax,yychar
+cmpl $0,%eax
+jge .LC192
+movl $0,yychar
+.LC192:
+.LC190:
+leal yyexca,%edi
+movl %edi,-24(%ebp)
+jmp .LC197
+.LC194:
+.LC195:
+movl -24(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-24(%ebp)
+.LC197:
+movl -24(%ebp),%edi
+movswl (,%edi),%esi
+cmpl $-1,%esi
+jne .LC194
+movswl 2(%edi),%edi
+movswl -6(%ebp),%esi
+cmpl %esi,%edi
+jne .LC194
+jmp .LC199
+.LC198:
+movl -24(%ebp),%edi
+movswl (,%edi),%edi
+cmpl yychar,%edi
+jne .LC201
+jmp .LC200
+.LC201:
+.LC199:
+movl -24(%ebp),%edi
+leal 4(%edi),%edi
+movl %edi,-24(%ebp)
+movswl (,%edi),%edi
+cmpl $0,%edi
+jge .LC198
+.LC200:
+movl -24(%ebp),%edi
+movw 2(%edi),%di
+movw %di,-14(%ebp)
+movswl %di,%edi
+cmpl $0,%edi
+jge .LC203
+movl $0,%eax
+jmp .LC165
+.LC203:
+.LC188:
+movswl -14(%ebp),%edi
+cmpl $0,%edi
+jne .LC205
+movswl yyerrflag,%edi
+movl %edi,-332(%ebp)
+movl -332(%ebp),%edi
+cmpl $0,%edi
+jl .LC207
+cmpl $3,%edi
+jg .LC207
+jmp *.LC223(,%edi,4)
+.data
+.align 4
+.LC223:
+.long .LC210
+.long .LC213
+.long .LC213
+.long .LC220
+.text
+.LC210:
+pushl $.LC211
+call yyerror
+addl $4,%esp
+.LC212:
+incl yynerrs
+.LC213:
+movw $3,yyerrflag
+jmp .LC215
+.LC214:
+movl -12(%ebp),%edi
+movswl (,%edi),%edi
+movswl yypact(,%edi,2),%edi
+leal 256(%edi),%edi
+movw %di,-14(%ebp)
+movswl -14(%ebp),%edi
+cmpl $0,%edi
+jl .LC217
+cmpl $249,%edi
+jge .LC217
+movswl yyact(,%edi,2),%edi
+movswl yychk(,%edi,2),%edi
+cmpl $256,%edi
+jne .LC217
+movswl -14(%ebp),%edi
+movw yyact(,%edi,2),%di
+movw %di,-6(%ebp)
+jmp .LC168
+.LC217:
+movl -12(%ebp),%edi
+movswl (,%edi),%esi
+movw yypact(,%esi,2),%si
+movw %si,-14(%ebp)
+leal -2(%edi),%edi
+movl %edi,-12(%ebp)
+movl -20(%ebp),%edi
+leal -4(%edi),%edi
+movl %edi,-20(%ebp)
+.LC215:
+movl -12(%ebp),%edi
+leal -326(%ebp),%esi
+cmpl %esi,%edi
+jae .LC214
+.LC219:
+movl $1,%eax
+jmp .LC165
+.LC220:
+cmpl $0,yychar
+jne .LC221
+jmp .LC219
+.LC221:
+movl $-1,yychar
+jmp .LC173
+.LC207:
+.LC205:
+movw -14(%ebp),%di
+movswl %di,%esi
+leal (,%esi,2),%esi
+leal yyr2(%esi),%ebx
+movl -12(%ebp),%edx
+movswl (,%ebx),%ecx
+leal (,%ecx,2),%ecx
+subl %ecx,%edx
+movl %edx,-12(%ebp)
+movl -20(%ebp),%edx
+movl %edx,-4(%ebp)
+movswl (,%ebx),%ebx
+leal (,%ebx,4),%ebx
+subl %ebx,%edx
+movl %edx,-20(%ebp)
+movl -20(%ebp),%ebx
+movl 4(%ebx),%ebx
+movl %ebx,yyval
+movw %di,-328(%ebp)
+movw yyr1(%esi),%di
+movw %di,-14(%ebp)
+movswl -14(%ebp),%edi
+movswl yypgo(,%edi,2),%edi
+movl -12(%ebp),%esi
+movswl (,%esi),%esi
+leal (%esi,%edi),%edi
+leal 1(%edi),%edi
+movw %di,-26(%ebp)
+movswl -26(%ebp),%edi
+cmpl $249,%edi
+jge .LC226
+movw yyact(,%edi,2),%di
+movw %di,-6(%ebp)
+movswl %di,%edi
+movswl yychk(,%edi,2),%edi
+movswl -14(%ebp),%esi
+negl %esi
+cmpl %esi,%edi
+je .LC224
+.LC226:
+movswl -14(%ebp),%edi
+movswl yypgo(,%edi,2),%edi
+movw yyact(,%edi,2),%di
+movw %di,-6(%ebp)
+.LC224:
+movswl -328(%ebp),%edi
+movl %edi,-332(%ebp)
+movl -332(%ebp),%edi
+cmpl $4,%edi
+jl .LC168
+cmpl $14,%edi
+jg .LC168
+jmp *.LC248-16(,%edi,4)
+.data
+.align 4
+.LC248:
+.long .LC230
+.long .LC231
+.long .LC233
+.long .LC235
+.long .LC237
+.long .LC239
+.long .LC241
+.long .LC168
+.long .LC243
+.long .LC245
+.long .LC247
+.text
+.LC230:
+movw $0,yyerrflag
+jmp .LC168
+.LC231:
+pushl $.LC232
+call printf
+addl $4,%esp
+jmp .LC168
+.LC233:
+pushl $.LC234
+call printf
+addl $4,%esp
+jmp .LC168
+.LC235:
+pushl $.LC236
+call printf
+addl $4,%esp
+jmp .LC168
+.LC237:
+pushl $.LC238
+call printf
+addl $4,%esp
+jmp .LC168
+.LC239:
+pushl $.LC240
+call printf
+addl $4,%esp
+jmp .LC168
+.LC241:
+pushl $.LC242
+call printf
+addl $4,%esp
+jmp .LC168
+.LC243:
+pushl $.LC244
+call printf
+addl $4,%esp
+jmp .LC168
+.LC245:
+pushl $yytext
+pushl $.LC246
+call printf
+addl $8,%esp
+jmp .LC168
+.LC247:
+pushl $yytext
+pushl $.LC163
+call printf
+addl $8,%esp
+jmp .LC168
+.LC165:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf250:
+.size yyparse,.Lf250-yyparse
+.globl yywrap
+.align 16
+.type yywrap,@function
+yywrap:
+pushl %ebp
+pushl %ebx
+pushl %esi
+pushl %edi
+movl %esp,%ebp
+movl $1,%eax
+.LC251:
+movl %ebp,%esp
+popl %edi
+popl %esi
+popl %ebx
+popl %ebp
+ret
+.Lf252:
+.size yywrap,.Lf252-yywrap
+.bss
+.globl yyv
+.align 4
+.type yyv,@object
+.size yyv,600
+.comm yyv,600
+.globl yyfnd
+.align 4
+.type yyfnd,@object
+.size yyfnd,4
+.comm yyfnd,4
+.globl yyolsp
+.align 4
+.type yyolsp,@object
+.size yyolsp,4
+.comm yyolsp,4
+.globl yylsp
+.align 4
+.type yylsp,@object
+.size yylsp,4
+.comm yylsp,4
+.globl yylstate
+.align 4
+.type yylstate,@object
+.size yylstate,800
+.comm yylstate,800
+.globl yyestate
+.align 4
+.type yyestate,@object
+.size yyestate,4
+.comm yyestate,4
+.globl yytchar
+.align 4
+.type yytchar,@object
+.size yytchar,4
+.comm yytchar,4
+.globl yysbuf
+.align 1
+.type yysbuf,@object
+.size yysbuf,200
+.comm yysbuf,200
+.globl yymorfg
+.align 4
+.type yymorfg,@object
+.size yymorfg,4
+.comm yymorfg,4
+.globl yytext
+.align 1
+.type yytext,@object
+.size yytext,200
+.comm yytext,200
+.globl yyleng
+.align 4
+.type yyleng,@object
+.size yyleng,4
+.comm yyleng,4
+.globl yyval
+.align 4
+.type yyval,@object
+.size yyval,4
+.comm yyval,4
+.globl yylval
+.align 4
+.type yylval,@object
+.size yylval,4
+.comm yylval,4
+.data
+.align 1
+.LC246:
+.byte 112
+.byte 117
+.byte 115
+.byte 104
+.byte 32
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC244:
+.byte 108
+.byte 111
+.byte 97
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC242:
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC240:
+.byte 100
+.byte 105
+.byte 118
+.byte 105
+.byte 100
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC238:
+.byte 109
+.byte 117
+.byte 108
+.byte 116
+.byte 105
+.byte 112
+.byte 108
+.byte 121
+.byte 10
+.byte 0
+.align 1
+.LC236:
+.byte 110
+.byte 101
+.byte 103
+.byte 97
+.byte 116
+.byte 101
+.byte 10
+.byte 97
+.byte 100
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC234:
+.byte 97
+.byte 100
+.byte 100
+.byte 10
+.byte 0
+.align 1
+.LC232:
+.byte 115
+.byte 116
+.byte 111
+.byte 114
+.byte 101
+.byte 10
+.byte 0
+.align 1
+.LC211:
+.byte 115
+.byte 121
+.byte 110
+.byte 116
+.byte 97
+.byte 120
+.byte 32
+.byte 101
+.byte 114
+.byte 114
+.byte 111
+.byte 114
+.byte 0
+.align 1
+.LC172:
+.byte 121
+.byte 97
+.byte 99
+.byte 99
+.byte 32
+.byte 115
+.byte 116
+.byte 97
+.byte 99
+.byte 107
+.byte 32
+.byte 111
+.byte 118
+.byte 101
+.byte 114
+.byte 102
+.byte 108
+.byte 111
+.byte 119
+.byte 0
+.align 1
+.LC163:
+.byte 37
+.byte 115
+.byte 10
+.byte 0
+.align 1
+.LC16:
+.byte 98
+.byte 97
+.byte 100
+.byte 32
+.byte 115
+.byte 119
+.byte 105
+.byte 116
+.byte 99
+.byte 104
+.byte 32
+.byte 121
+.byte 121
+.byte 108
+.byte 111
+.byte 111
+.byte 107
+.byte 32
+.byte 37
+.byte 100
+.byte 0
+.text
+.ident "LCC: 4.1"
diff --git a/lcc/x86/win32/tst/8q.1bk b/lcc/x86/win32/tst/8q.1bk
index c66df8e..7ed6437 100755
--- a/lcc/x86/win32/tst/8q.1bk
+++ b/lcc/x86/win32/tst/8q.1bk
@@ -1,92 +1,92 @@
-1 5 8 6 3 7 2 4
-1 6 8 3 7 4 2 5
-1 7 4 6 8 2 5 3
-1 7 5 8 2 4 6 3
-2 4 6 8 3 1 7 5
-2 5 7 1 3 8 6 4
-2 5 7 4 1 8 6 3
-2 6 1 7 4 8 3 5
-2 6 8 3 1 4 7 5
-2 7 3 6 8 5 1 4
-2 7 5 8 1 4 6 3
-2 8 6 1 3 5 7 4
-3 1 7 5 8 2 4 6
-3 5 2 8 1 7 4 6
-3 5 2 8 6 4 7 1
-3 5 7 1 4 2 8 6
-3 5 8 4 1 7 2 6
-3 6 2 5 8 1 7 4
-3 6 2 7 1 4 8 5
-3 6 2 7 5 1 8 4
-3 6 4 1 8 5 7 2
-3 6 4 2 8 5 7 1
-3 6 8 1 4 7 5 2
-3 6 8 1 5 7 2 4
-3 6 8 2 4 1 7 5
-3 7 2 8 5 1 4 6
-3 7 2 8 6 4 1 5
-3 8 4 7 1 6 2 5
-4 1 5 8 2 7 3 6
-4 1 5 8 6 3 7 2
-4 2 5 8 6 1 3 7
-4 2 7 3 6 8 1 5
-4 2 7 3 6 8 5 1
-4 2 7 5 1 8 6 3
-4 2 8 5 7 1 3 6
-4 2 8 6 1 3 5 7
-4 6 1 5 2 8 3 7
-4 6 8 2 7 1 3 5
-4 6 8 3 1 7 5 2
-4 7 1 8 5 2 6 3
-4 7 3 8 2 5 1 6
-4 7 5 2 6 1 3 8
-4 7 5 3 1 6 8 2
-4 8 1 3 6 2 7 5
-4 8 1 5 7 2 6 3
-4 8 5 3 1 7 2 6
-5 1 4 6 8 2 7 3
-5 1 8 4 2 7 3 6
-5 1 8 6 3 7 2 4
-5 2 4 6 8 3 1 7
-5 2 4 7 3 8 6 1
-5 2 6 1 7 4 8 3
-5 2 8 1 4 7 3 6
-5 3 1 6 8 2 4 7
-5 3 1 7 2 8 6 4
-5 3 8 4 7 1 6 2
-5 7 1 3 8 6 4 2
-5 7 1 4 2 8 6 3
-5 7 2 4 8 1 3 6
-5 7 2 6 3 1 4 8
-5 7 2 6 3 1 8 4
-5 7 4 1 3 8 6 2
-5 8 4 1 3 6 2 7
-5 8 4 1 7 2 6 3
-6 1 5 2 8 3 7 4
-6 2 7 1 3 5 8 4
-6 2 7 1 4 8 5 3
-6 3 1 7 5 8 2 4
-6 3 1 8 4 2 7 5
-6 3 1 8 5 2 4 7
-6 3 5 7 1 4 2 8
-6 3 5 8 1 4 2 7
-6 3 7 2 4 8 1 5
-6 3 7 2 8 5 1 4
-6 3 7 4 1 8 2 5
-6 4 1 5 8 2 7 3
-6 4 2 8 5 7 1 3
-6 4 7 1 3 5 2 8
-6 4 7 1 8 2 5 3
-6 8 2 4 1 7 5 3
-7 1 3 8 6 4 2 5
-7 2 4 1 8 5 3 6
-7 2 6 3 1 4 8 5
-7 3 1 6 8 5 2 4
-7 3 8 2 5 1 6 4
-7 4 2 5 8 1 3 6
-7 4 2 8 6 1 3 5
-7 5 3 1 6 8 2 4
-8 2 4 1 7 5 3 6
-8 2 5 3 1 7 4 6
-8 3 1 6 2 5 7 4
-8 4 1 3 6 2 7 5
+1 5 8 6 3 7 2 4
+1 6 8 3 7 4 2 5
+1 7 4 6 8 2 5 3
+1 7 5 8 2 4 6 3
+2 4 6 8 3 1 7 5
+2 5 7 1 3 8 6 4
+2 5 7 4 1 8 6 3
+2 6 1 7 4 8 3 5
+2 6 8 3 1 4 7 5
+2 7 3 6 8 5 1 4
+2 7 5 8 1 4 6 3
+2 8 6 1 3 5 7 4
+3 1 7 5 8 2 4 6
+3 5 2 8 1 7 4 6
+3 5 2 8 6 4 7 1
+3 5 7 1 4 2 8 6
+3 5 8 4 1 7 2 6
+3 6 2 5 8 1 7 4
+3 6 2 7 1 4 8 5
+3 6 2 7 5 1 8 4
+3 6 4 1 8 5 7 2
+3 6 4 2 8 5 7 1
+3 6 8 1 4 7 5 2
+3 6 8 1 5 7 2 4
+3 6 8 2 4 1 7 5
+3 7 2 8 5 1 4 6
+3 7 2 8 6 4 1 5
+3 8 4 7 1 6 2 5
+4 1 5 8 2 7 3 6
+4 1 5 8 6 3 7 2
+4 2 5 8 6 1 3 7
+4 2 7 3 6 8 1 5
+4 2 7 3 6 8 5 1
+4 2 7 5 1 8 6 3
+4 2 8 5 7 1 3 6
+4 2 8 6 1 3 5 7
+4 6 1 5 2 8 3 7
+4 6 8 2 7 1 3 5
+4 6 8 3 1 7 5 2
+4 7 1 8 5 2 6 3
+4 7 3 8 2 5 1 6
+4 7 5 2 6 1 3 8
+4 7 5 3 1 6 8 2
+4 8 1 3 6 2 7 5
+4 8 1 5 7 2 6 3
+4 8 5 3 1 7 2 6
+5 1 4 6 8 2 7 3
+5 1 8 4 2 7 3 6
+5 1 8 6 3 7 2 4
+5 2 4 6 8 3 1 7
+5 2 4 7 3 8 6 1
+5 2 6 1 7 4 8 3
+5 2 8 1 4 7 3 6
+5 3 1 6 8 2 4 7
+5 3 1 7 2 8 6 4
+5 3 8 4 7 1 6 2
+5 7 1 3 8 6 4 2
+5 7 1 4 2 8 6 3
+5 7 2 4 8 1 3 6
+5 7 2 6 3 1 4 8
+5 7 2 6 3 1 8 4
+5 7 4 1 3 8 6 2
+5 8 4 1 3 6 2 7
+5 8 4 1 7 2 6 3
+6 1 5 2 8 3 7 4
+6 2 7 1 3 5 8 4
+6 2 7 1 4 8 5 3
+6 3 1 7 5 8 2 4
+6 3 1 8 4 2 7 5
+6 3 1 8 5 2 4 7
+6 3 5 7 1 4 2 8
+6 3 5 8 1 4 2 7
+6 3 7 2 4 8 1 5
+6 3 7 2 8 5 1 4
+6 3 7 4 1 8 2 5
+6 4 1 5 8 2 7 3
+6 4 2 8 5 7 1 3
+6 4 7 1 3 5 2 8
+6 4 7 1 8 2 5 3
+6 8 2 4 1 7 5 3
+7 1 3 8 6 4 2 5
+7 2 4 1 8 5 3 6
+7 2 6 3 1 4 8 5
+7 3 1 6 8 5 2 4
+7 3 8 2 5 1 6 4
+7 4 2 5 8 1 3 6
+7 4 2 8 6 1 3 5
+7 5 3 1 6 8 2 4
+8 2 4 1 7 5 3 6
+8 2 5 3 1 7 4 6
+8 3 1 6 2 5 7 4
+8 4 1 3 6 2 7 5
diff --git a/lcc/x86/win32/tst/8q.2bk b/lcc/x86/win32/tst/8q.2bk
index fb28350..d4dc0ed 100755
--- a/lcc/x86/win32/tst/8q.2bk
+++ b/lcc/x86/win32/tst/8q.2bk
@@ -1,2 +1,2 @@
-tst/8q.c:30: warning: missing return value
-tst/8q.c:39: warning: missing return value
+tst/8q.c:30: warning: missing return value
+tst/8q.c:39: warning: missing return value
diff --git a/lcc/x86/win32/tst/8q.sbk b/lcc/x86/win32/tst/8q.sbk
index 85cce1a..2ffd76c 100755
--- a/lcc/x86/win32/tst/8q.sbk
+++ b/lcc/x86/win32/tst/8q.sbk
@@ -1,176 +1,176 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _main
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (-4)[ebp],0
-L2:
-mov edi,dword ptr (-4)[ebp]
-lea edi,[edi*4]
-mov dword ptr (_down)[edi],1
-mov dword ptr (_up)[edi],1
-L3:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],15
-jl L2
-mov dword ptr (-4)[ebp],0
-L6:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (_rows)[edi*4],1
-L7:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],8
-jl L6
-push 0
-call _queens
-add esp,4
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _queens
-_queens:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (-4)[ebp],0
-L11:
-mov edi,dword ptr (-4)[ebp]
-cmp dword ptr (_rows)[edi*4],0
-je L15
-mov esi,dword ptr (20)[ebp]
-mov ebx,edi
-sub ebx,esi
-cmp dword ptr (_up+28)[ebx*4],0
-je L15
-lea edi,[esi][edi]
-cmp dword ptr (_down)[edi*4],0
-je L15
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (20)[ebp]
-lea ebx,[esi][edi]
-mov dword ptr (_down)[ebx*4],0
-mov ebx,edi
-sub ebx,esi
-mov dword ptr (_up+28)[ebx*4],0
-mov dword ptr (_rows)[edi*4],0
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr (-4)[ebp]
-mov dword ptr (_x)[edi*4],esi
-cmp dword ptr (20)[ebp],7
-jne L19
-call _print
-add esp,0
-jmp L20
-L19:
-mov edi,dword ptr (20)[ebp]
-lea edi,(1)[edi]
-push edi
-call _queens
-add esp,4
-L20:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (20)[ebp]
-lea ebx,[esi][edi]
-mov dword ptr (_down)[ebx*4],1
-mov ebx,edi
-sub ebx,esi
-mov dword ptr (_up+28)[ebx*4],1
-mov dword ptr (_rows)[edi*4],1
-L15:
-L12:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],8
-jl L11
-mov eax,0
-L10:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _print
-_print:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (-4)[ebp],0
-L23:
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr (_x)[edi*4]
-lea edi,(49)[edi]
-push edi
-lea edi,(L27)
-push edi
-call _printf
-add esp,8
-L24:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],8
-jl L23
-lea edi,(L28)
-push edi
-call _printf
-add esp,4
-mov eax,0
-L22:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_DATA segment
-public _x
-align 4
-_x label byte
-db 32 dup (0)
-public _rows
-align 4
-_rows label byte
-db 32 dup (0)
-public _down
-align 4
-_down label byte
-db 60 dup (0)
-public _up
-align 4
-_up label byte
-db 60 dup (0)
-_DATA ends
-_TEXT segment
-align 1
-L28 label byte
-db 10
-db 0
-align 1
-L27 label byte
-db 37
-db 99
-db 32
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _main
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (-4)[ebp],0
+L2:
+mov edi,dword ptr (-4)[ebp]
+lea edi,[edi*4]
+mov dword ptr (_down)[edi],1
+mov dword ptr (_up)[edi],1
+L3:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],15
+jl L2
+mov dword ptr (-4)[ebp],0
+L6:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (_rows)[edi*4],1
+L7:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],8
+jl L6
+push 0
+call _queens
+add esp,4
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _queens
+_queens:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (-4)[ebp],0
+L11:
+mov edi,dword ptr (-4)[ebp]
+cmp dword ptr (_rows)[edi*4],0
+je L15
+mov esi,dword ptr (20)[ebp]
+mov ebx,edi
+sub ebx,esi
+cmp dword ptr (_up+28)[ebx*4],0
+je L15
+lea edi,[esi][edi]
+cmp dword ptr (_down)[edi*4],0
+je L15
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (20)[ebp]
+lea ebx,[esi][edi]
+mov dword ptr (_down)[ebx*4],0
+mov ebx,edi
+sub ebx,esi
+mov dword ptr (_up+28)[ebx*4],0
+mov dword ptr (_rows)[edi*4],0
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr (-4)[ebp]
+mov dword ptr (_x)[edi*4],esi
+cmp dword ptr (20)[ebp],7
+jne L19
+call _print
+add esp,0
+jmp L20
+L19:
+mov edi,dword ptr (20)[ebp]
+lea edi,(1)[edi]
+push edi
+call _queens
+add esp,4
+L20:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (20)[ebp]
+lea ebx,[esi][edi]
+mov dword ptr (_down)[ebx*4],1
+mov ebx,edi
+sub ebx,esi
+mov dword ptr (_up+28)[ebx*4],1
+mov dword ptr (_rows)[edi*4],1
+L15:
+L12:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],8
+jl L11
+mov eax,0
+L10:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _print
+_print:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (-4)[ebp],0
+L23:
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr (_x)[edi*4]
+lea edi,(49)[edi]
+push edi
+lea edi,(L27)
+push edi
+call _printf
+add esp,8
+L24:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],8
+jl L23
+lea edi,(L28)
+push edi
+call _printf
+add esp,4
+mov eax,0
+L22:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_DATA segment
+public _x
+align 4
+_x label byte
+db 32 dup (0)
+public _rows
+align 4
+_rows label byte
+db 32 dup (0)
+public _down
+align 4
+_down label byte
+db 60 dup (0)
+public _up
+align 4
+_up label byte
+db 60 dup (0)
+_DATA ends
+_TEXT segment
+align 1
+L28 label byte
+db 10
+db 0
+align 1
+L27 label byte
+db 37
+db 99
+db 32
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/array.1bk b/lcc/x86/win32/tst/array.1bk
index e188568..4d3817c 100755
--- a/lcc/x86/win32/tst/array.1bk
+++ b/lcc/x86/win32/tst/array.1bk
@@ -1,4 +1,4 @@
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
- 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
+ 0 1 2 3 1000 1001 1002 1003 2000 2001 2002 2003
diff --git a/lcc/x86/win32/tst/array.2bk b/lcc/x86/win32/tst/array.2bk
index 0a9b206..c8cf31e 100755
--- a/lcc/x86/win32/tst/array.2bk
+++ b/lcc/x86/win32/tst/array.2bk
@@ -1,2 +1,2 @@
-tst/array.c:33: warning: missing return value
-tst/array.c:48: warning: missing return value
+tst/array.c:33: warning: missing return value
+tst/array.c:48: warning: missing return value
diff --git a/lcc/x86/win32/tst/array.sbk b/lcc/x86/win32/tst/array.sbk
index a89f3c7..d3f9f8f 100755
--- a/lcc/x86/win32/tst/array.sbk
+++ b/lcc/x86/win32/tst/array.sbk
@@ -1,240 +1,240 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _main
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,60
-mov dword ptr (-8)[ebp],0
-L2:
-mov dword ptr (-4)[ebp],0
-L6:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (-8)[ebp]
-mov ebx,esi
-sal ebx,4
-imul esi,esi,1000
-lea esi,[edi][esi]
-mov dword ptr (_x)[ebx][edi*4],esi
-L7:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],4
-jl L6
-mov edi,dword ptr (-8)[ebp]
-mov esi,edi
-sal esi,4
-lea esi,(_x)[esi]
-mov dword ptr (_y)[edi*4],esi
-L3:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],3
-jl L2
-call _f
-add esp,0
-mov dword ptr (-8)[ebp],0
-L10:
-mov edi,dword ptr (-8)[ebp]
-mov esi,edi
-sal esi,4
-lea esi,(-60)[ebp][esi]
-mov dword ptr (-12)[ebp],esi
-mov dword ptr (_y)[edi*4],esi
-mov dword ptr (-4)[ebp],0
-L14:
-mov edi,dword ptr (-4)[ebp]
-lea edi,[edi*4]
-mov esi,dword ptr (-12)[ebp]
-mov ebx,dword ptr (-8)[ebp]
-sal ebx,4
-mov ebx,dword ptr (_x)[ebx][edi]
-mov dword ptr [esi][edi],ebx
-L15:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],4
-jl L14
-L11:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],3
-jl L10
-lea edi,(_y)
-push edi
-lea edi,(-60)[ebp]
-push edi
-call _g
-add esp,8
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f
-_f:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-mov dword ptr (-8)[ebp],0
-L19:
-mov dword ptr (-4)[ebp],0
-L23:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (-8)[ebp]
-sal esi,4
-mov edi,dword ptr (_x)[esi][edi*4]
-push edi
-lea edi,(L27)
-push edi
-call _printf
-add esp,8
-L24:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],4
-jl L23
-L20:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],3
-jl L19
-lea edi,(L28)
-push edi
-call _printf
-add esp,4
-mov dword ptr (-8)[ebp],0
-L29:
-mov dword ptr (-4)[ebp],0
-L33:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (-8)[ebp]
-mov esi,dword ptr (_y)[esi*4]
-mov edi,dword ptr [esi][edi*4]
-push edi
-lea edi,(L27)
-push edi
-call _printf
-add esp,8
-L34:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],4
-jl L33
-L30:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],3
-jl L29
-lea edi,(L28)
-push edi
-call _printf
-add esp,4
-mov eax,0
-L18:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _g
-_g:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-mov dword ptr (-8)[ebp],0
-L38:
-mov dword ptr (-4)[ebp],0
-L42:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (-8)[ebp]
-sal esi,4
-mov ebx,dword ptr (20)[ebp]
-lea esi,[ebx][esi]
-mov edi,dword ptr [esi][edi*4]
-push edi
-lea edi,(L27)
-push edi
-call _printf
-add esp,8
-L43:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],4
-jl L42
-L39:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],3
-jl L38
-lea edi,(L28)
-push edi
-call _printf
-add esp,4
-mov dword ptr (-8)[ebp],0
-L46:
-mov dword ptr (-4)[ebp],0
-L50:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (-8)[ebp]
-mov ebx,dword ptr (24)[ebp]
-mov esi,dword ptr [ebx][esi*4]
-mov edi,dword ptr [esi][edi*4]
-push edi
-lea edi,(L27)
-push edi
-call _printf
-add esp,8
-L51:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],4
-jl L50
-L47:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],3
-jl L46
-lea edi,(L28)
-push edi
-call _printf
-add esp,4
-mov eax,0
-L37:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_DATA segment
-public _y
-align 4
-_y label byte
-db 12 dup (0)
-public _x
-align 4
-_x label byte
-db 48 dup (0)
-_DATA ends
-_TEXT segment
-align 1
-L28 label byte
-db 10
-db 0
-align 1
-L27 label byte
-db 32
-db 37
-db 100
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _main
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,60
+mov dword ptr (-8)[ebp],0
+L2:
+mov dword ptr (-4)[ebp],0
+L6:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (-8)[ebp]
+mov ebx,esi
+sal ebx,4
+imul esi,esi,1000
+lea esi,[edi][esi]
+mov dword ptr (_x)[ebx][edi*4],esi
+L7:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],4
+jl L6
+mov edi,dword ptr (-8)[ebp]
+mov esi,edi
+sal esi,4
+lea esi,(_x)[esi]
+mov dword ptr (_y)[edi*4],esi
+L3:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],3
+jl L2
+call _f
+add esp,0
+mov dword ptr (-8)[ebp],0
+L10:
+mov edi,dword ptr (-8)[ebp]
+mov esi,edi
+sal esi,4
+lea esi,(-60)[ebp][esi]
+mov dword ptr (-12)[ebp],esi
+mov dword ptr (_y)[edi*4],esi
+mov dword ptr (-4)[ebp],0
+L14:
+mov edi,dword ptr (-4)[ebp]
+lea edi,[edi*4]
+mov esi,dword ptr (-12)[ebp]
+mov ebx,dword ptr (-8)[ebp]
+sal ebx,4
+mov ebx,dword ptr (_x)[ebx][edi]
+mov dword ptr [esi][edi],ebx
+L15:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],4
+jl L14
+L11:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],3
+jl L10
+lea edi,(_y)
+push edi
+lea edi,(-60)[ebp]
+push edi
+call _g
+add esp,8
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f
+_f:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+mov dword ptr (-8)[ebp],0
+L19:
+mov dword ptr (-4)[ebp],0
+L23:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (-8)[ebp]
+sal esi,4
+mov edi,dword ptr (_x)[esi][edi*4]
+push edi
+lea edi,(L27)
+push edi
+call _printf
+add esp,8
+L24:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],4
+jl L23
+L20:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],3
+jl L19
+lea edi,(L28)
+push edi
+call _printf
+add esp,4
+mov dword ptr (-8)[ebp],0
+L29:
+mov dword ptr (-4)[ebp],0
+L33:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (-8)[ebp]
+mov esi,dword ptr (_y)[esi*4]
+mov edi,dword ptr [esi][edi*4]
+push edi
+lea edi,(L27)
+push edi
+call _printf
+add esp,8
+L34:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],4
+jl L33
+L30:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],3
+jl L29
+lea edi,(L28)
+push edi
+call _printf
+add esp,4
+mov eax,0
+L18:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _g
+_g:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+mov dword ptr (-8)[ebp],0
+L38:
+mov dword ptr (-4)[ebp],0
+L42:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (-8)[ebp]
+sal esi,4
+mov ebx,dword ptr (20)[ebp]
+lea esi,[ebx][esi]
+mov edi,dword ptr [esi][edi*4]
+push edi
+lea edi,(L27)
+push edi
+call _printf
+add esp,8
+L43:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],4
+jl L42
+L39:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],3
+jl L38
+lea edi,(L28)
+push edi
+call _printf
+add esp,4
+mov dword ptr (-8)[ebp],0
+L46:
+mov dword ptr (-4)[ebp],0
+L50:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (-8)[ebp]
+mov ebx,dword ptr (24)[ebp]
+mov esi,dword ptr [ebx][esi*4]
+mov edi,dword ptr [esi][edi*4]
+push edi
+lea edi,(L27)
+push edi
+call _printf
+add esp,8
+L51:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],4
+jl L50
+L47:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],3
+jl L46
+lea edi,(L28)
+push edi
+call _printf
+add esp,4
+mov eax,0
+L37:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_DATA segment
+public _y
+align 4
+_y label byte
+db 12 dup (0)
+public _x
+align 4
+_x label byte
+db 48 dup (0)
+_DATA ends
+_TEXT segment
+align 1
+L28 label byte
+db 10
+db 0
+align 1
+L27 label byte
+db 32
+db 37
+db 100
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/cf.1bk b/lcc/x86/win32/tst/cf.1bk
index 24e21ba..9e331c5 100755
--- a/lcc/x86/win32/tst/cf.1bk
+++ b/lcc/x86/win32/tst/cf.1bk
@@ -1,51 +1,51 @@
-char freq
-011 8.1
-012 6.1
-040 11.9
-! 0.2
-" 1.5
-% 0.6
-& 0.4
-' 0.4
-( 2.9
-) 2.9
-* 0.8
-+ 1.3
-, 1.3
-- 0.4
-. 0.6
-/ 1.0
-0 2.5
-1 1.9
-2 0.6
-3 0.2
-7 0.4
-8 0.2
-; 3.8
-< 0.8
-= 2.7
-> 0.2
-[ 1.5
-\ 0.8
-] 1.5
-a 3.1
-c 4.4
-e 2.3
-f 6.0
-g 1.3
-h 1.0
-i 5.0
-l 1.0
-m 0.2
-n 3.3
-o 2.1
-p 1.0
-q 0.4
-r 4.2
-s 0.6
-t 3.8
-u 1.2
-v 0.6
-w 0.2
-{ 0.6
-} 0.6
+char freq
+011 8.1
+012 6.1
+040 11.9
+! 0.2
+" 1.5
+% 0.6
+& 0.4
+' 0.4
+( 2.9
+) 2.9
+* 0.8
++ 1.3
+, 1.3
+- 0.4
+. 0.6
+/ 1.0
+0 2.5
+1 1.9
+2 0.6
+3 0.2
+7 0.4
+8 0.2
+; 3.8
+< 0.8
+= 2.7
+> 0.2
+[ 1.5
+\ 0.8
+] 1.5
+a 3.1
+c 4.4
+e 2.3
+f 6.0
+g 1.3
+h 1.0
+i 5.0
+l 1.0
+m 0.2
+n 3.3
+o 2.1
+p 1.0
+q 0.4
+r 4.2
+s 0.6
+t 3.8
+u 1.2
+v 0.6
+w 0.2
+{ 0.6
+} 0.6
diff --git a/lcc/x86/win32/tst/cf.sbk b/lcc/x86/win32/tst/cf.sbk
index 6fd654d..9ab4cfc 100755
--- a/lcc/x86/win32/tst/cf.sbk
+++ b/lcc/x86/win32/tst/cf.sbk
@@ -1,185 +1,185 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _main
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,24
-cmp dword ptr (20)[ebp],1
-jg L2
-fld dword ptr (L4)
-fstp dword ptr (-16)[ebp]
-jmp L3
-L2:
-mov edi,dword ptr (24)[ebp]
-mov edi,dword ptr (4)[edi]
-push edi
-call _atof
-add esp,4
-fstp dword ptr (-20)[ebp]
-fld dword ptr (-20)[ebp]
-fdiv dword ptr (L5)
-fstp dword ptr (-16)[ebp]
-L3:
-mov dword ptr (-4)[ebp],0
-L6:
-mov edi,dword ptr (-4)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-4)[ebp],esi
-fld dword ptr (L4)
-fstp dword ptr (_f)[edi*4]
-L7:
-cmp dword ptr (-4)[ebp],127
-jle L6
-mov dword ptr (-8)[ebp],0
-jmp L11
-L10:
-mov edi,dword ptr (-12)[ebp]
-lea edi,(_f)[edi*4]
-fld dword ptr [edi]
-fadd dword ptr (L13)
-fstp dword ptr [edi]
-inc dword ptr (-8)[ebp]
-L11:
-call _getchar
-add esp,0
-mov dword ptr (-12)[ebp],eax
-cmp eax,-1
-jne L10
-lea edi,(L14)
-push edi
-call _printf
-add esp,4
-mov dword ptr (-4)[ebp],0
-L15:
-mov edi,dword ptr (-4)[ebp]
-fld dword ptr (_f)[edi*4]
-fstp dword ptr (-24)[ebp]
-fld dword ptr (L4)
-fcomp dword ptr (-24)[ebp]
-fstsw ax
-sahf
-je L19
-fld dword ptr (-24)[ebp]
-mov edi,dword ptr (-8)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-fld dword ptr (-16)[ebp]
-fcompp
-fstsw ax
-sahf
-ja L19
-cmp dword ptr (-4)[ebp],32
-jg L21
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L23)
-push edi
-call _printf
-add esp,8
-jmp L22
-L21:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L24)
-push edi
-call _printf
-add esp,8
-L22:
-fld dword ptr (L5)
-mov edi,dword ptr (-4)[ebp]
-fmul dword ptr (_f)[edi*4]
-mov edi,dword ptr (-8)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L25)
-push edi
-call _printf
-add esp,12
-L19:
-L16:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],127
-jle L15
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-extrn _getchar:near
-_TEXT segment
-_TEXT ends
-extrn _atof:near
-_TEXT segment
-_TEXT ends
-_DATA segment
-public _f
-align 4
-_f label byte
-db 512 dup (0)
-_DATA ends
-_TEXT segment
-align 1
-L25 label byte
-db 9
-db 37
-db 46
-db 49
-db 102
-db 10
-db 0
-align 1
-L24 label byte
-db 37
-db 99
-db 0
-align 1
-L23 label byte
-db 37
-db 48
-db 51
-db 111
-db 0
-align 1
-L14 label byte
-db 99
-db 104
-db 97
-db 114
-db 9
-db 102
-db 114
-db 101
-db 113
-db 10
-db 0
-align 4
-L13 label byte
-dd 03f800000H
-align 4
-L5 label byte
-dd 042c80000H
-align 4
-L4 label byte
-dd 00H
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _main
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,24
+cmp dword ptr (20)[ebp],1
+jg L2
+fld dword ptr (L4)
+fstp dword ptr (-16)[ebp]
+jmp L3
+L2:
+mov edi,dword ptr (24)[ebp]
+mov edi,dword ptr (4)[edi]
+push edi
+call _atof
+add esp,4
+fstp dword ptr (-20)[ebp]
+fld dword ptr (-20)[ebp]
+fdiv dword ptr (L5)
+fstp dword ptr (-16)[ebp]
+L3:
+mov dword ptr (-4)[ebp],0
+L6:
+mov edi,dword ptr (-4)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-4)[ebp],esi
+fld dword ptr (L4)
+fstp dword ptr (_f)[edi*4]
+L7:
+cmp dword ptr (-4)[ebp],127
+jle L6
+mov dword ptr (-8)[ebp],0
+jmp L11
+L10:
+mov edi,dword ptr (-12)[ebp]
+lea edi,(_f)[edi*4]
+fld dword ptr [edi]
+fadd dword ptr (L13)
+fstp dword ptr [edi]
+inc dword ptr (-8)[ebp]
+L11:
+call _getchar
+add esp,0
+mov dword ptr (-12)[ebp],eax
+cmp eax,-1
+jne L10
+lea edi,(L14)
+push edi
+call _printf
+add esp,4
+mov dword ptr (-4)[ebp],0
+L15:
+mov edi,dword ptr (-4)[ebp]
+fld dword ptr (_f)[edi*4]
+fstp dword ptr (-24)[ebp]
+fld dword ptr (L4)
+fcomp dword ptr (-24)[ebp]
+fstsw ax
+sahf
+je L19
+fld dword ptr (-24)[ebp]
+mov edi,dword ptr (-8)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+fld dword ptr (-16)[ebp]
+fcompp
+fstsw ax
+sahf
+ja L19
+cmp dword ptr (-4)[ebp],32
+jg L21
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L23)
+push edi
+call _printf
+add esp,8
+jmp L22
+L21:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L24)
+push edi
+call _printf
+add esp,8
+L22:
+fld dword ptr (L5)
+mov edi,dword ptr (-4)[ebp]
+fmul dword ptr (_f)[edi*4]
+mov edi,dword ptr (-8)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L25)
+push edi
+call _printf
+add esp,12
+L19:
+L16:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],127
+jle L15
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+extrn _getchar:near
+_TEXT segment
+_TEXT ends
+extrn _atof:near
+_TEXT segment
+_TEXT ends
+_DATA segment
+public _f
+align 4
+_f label byte
+db 512 dup (0)
+_DATA ends
+_TEXT segment
+align 1
+L25 label byte
+db 9
+db 37
+db 46
+db 49
+db 102
+db 10
+db 0
+align 1
+L24 label byte
+db 37
+db 99
+db 0
+align 1
+L23 label byte
+db 37
+db 48
+db 51
+db 111
+db 0
+align 1
+L14 label byte
+db 99
+db 104
+db 97
+db 114
+db 9
+db 102
+db 114
+db 101
+db 113
+db 10
+db 0
+align 4
+L13 label byte
+dd 03f800000H
+align 4
+L5 label byte
+dd 042c80000H
+align 4
+L4 label byte
+dd 00H
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/cq.1bk b/lcc/x86/win32/tst/cq.1bk
index 9ea7979..3a86d23 100755
--- a/lcc/x86/win32/tst/cq.1bk
+++ b/lcc/x86/win32/tst/cq.1bk
@@ -1,48 +1,48 @@
-Section s22 returned 0.
-Decimal and octal/hex constants sometimes give
- different results when assigned to longs.
-Decimal and octal/hex constants sometimes give
- different results when assigned to longs.
-Section s241 returned 0.
-Section s243 returned 0.
-Section s244 returned 0.
-Section s25 returned 0.
- 8 bits in chars.
- 32 bits in ints.
- 16 bits in shorts.
- 32 bits in longs.
- 32 bits in unsigneds.
- 32 bits in floats.
- 64 bits in doubles.
-1.192093e-007 is the least number that can be added to 1. (float).
-2.220446e-016 is the least number that can be added to 1. (double).
-Section s26 returned 0.
-Section s4 returned 0.
-Section s61 returned 0.
-Section s626 returned 0.
-Section s71 returned 0.
-Section s72 returned 0.
-Section s757 returned 0.
-Section s7813 returned 0.
-Section s714 returned 0.
-Section s715 returned 0.
-Register count for char is unreliable.
-Register count for pointer is unreliable.
-Register count for int is unreliable.
-Section s81 returned 0.
-Section s84 returned 0.
-char alignment: 1
-short alignment: 2
-int alignment: 4
-long alignment: 4
-unsigned alignment: 4
-float alignment: 4
-double alignment: 4
-Sign extension in fields
-Be especially careful with 1-bit fields!
-Section s85 returned 0.
-Section s86 returned 0.
-Section s88 returned 0.
-Section s9 returned 0.
-
-No errors detected.
+Section s22 returned 0.
+Decimal and octal/hex constants sometimes give
+ different results when assigned to longs.
+Decimal and octal/hex constants sometimes give
+ different results when assigned to longs.
+Section s241 returned 0.
+Section s243 returned 0.
+Section s244 returned 0.
+Section s25 returned 0.
+ 8 bits in chars.
+ 32 bits in ints.
+ 16 bits in shorts.
+ 32 bits in longs.
+ 32 bits in unsigneds.
+ 32 bits in floats.
+ 64 bits in doubles.
+1.192093e-007 is the least number that can be added to 1. (float).
+2.220446e-016 is the least number that can be added to 1. (double).
+Section s26 returned 0.
+Section s4 returned 0.
+Section s61 returned 0.
+Section s626 returned 0.
+Section s71 returned 0.
+Section s72 returned 0.
+Section s757 returned 0.
+Section s7813 returned 0.
+Section s714 returned 0.
+Section s715 returned 0.
+Register count for char is unreliable.
+Register count for pointer is unreliable.
+Register count for int is unreliable.
+Section s81 returned 0.
+Section s84 returned 0.
+char alignment: 1
+short alignment: 2
+int alignment: 4
+long alignment: 4
+unsigned alignment: 4
+float alignment: 4
+double alignment: 4
+Sign extension in fields
+Be especially careful with 1-bit fields!
+Section s85 returned 0.
+Section s86 returned 0.
+Section s88 returned 0.
+Section s9 returned 0.
+
+No errors detected.
diff --git a/lcc/x86/win32/tst/cq.2bk b/lcc/x86/win32/tst/cq.2bk
index 295f5b6..7c6ba5e 100755
--- a/lcc/x86/win32/tst/cq.2bk
+++ b/lcc/x86/win32/tst/cq.2bk
@@ -1,25 +1,25 @@
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `4294967296'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `040000000000'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:395: warning: overflow in constant `0x100000000'
-tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `68719476735'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `0777777777777'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:396: warning: overflow in constant `0xfffffffff'
-tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `68719476736'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `01000000000000'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:397: warning: overflow in constant `0x1000000000'
-tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
-tst/cq.c:533: warning: missing return value
-tst/cq.c:1169: warning: missing return value
-tst/cq.c:5294: warning: unreachable code
-tst/cq.c:5303: warning: missing return value
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:394: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `4294967296'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `040000000000'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:395: warning: overflow in constant `0x100000000'
+tst/cq.c:395: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `68719476735'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `0777777777777'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:396: warning: overflow in constant `0xfffffffff'
+tst/cq.c:396: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `68719476736'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `01000000000000'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:397: warning: overflow in constant `0x1000000000'
+tst/cq.c:397: warning: overflow in converting constant expression from `unsigned long' to `long int'
+tst/cq.c:533: warning: missing return value
+tst/cq.c:1169: warning: missing return value
+tst/cq.c:5294: warning: unreachable code
+tst/cq.c:5303: warning: missing return value
diff --git a/lcc/x86/win32/tst/cq.sbk b/lcc/x86/win32/tst/cq.sbk
index a9726b9..affe8e3 100755
--- a/lcc/x86/win32/tst/cq.sbk
+++ b/lcc/x86/win32/tst/cq.sbk
@@ -1,16642 +1,16642 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-_DATA segment
-align 4
-L2 label byte
-dd _s22
-dd _s241
-dd _s243
-dd _s244
-dd _s25
-dd _s26
-dd _s4
-dd _s61
-dd _s626
-dd _s71
-dd _s72
-dd _s757
-dd _s7813
-dd _s714
-dd _s715
-dd _s81
-dd _s84
-dd _s85
-dd _s86
-dd _s88
-dd _s9
-_DATA ends
-_DATA segment
-align 4
-L3 label byte
-db 68 dup (0)
-align 4
-L4 label byte
-db 4 dup (0)
-public _main
-_DATA ends
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (L3+36),1
-mov dword ptr (L3+40),1
-mov dword ptr (L3+44),1
-mov dword ptr (L3+48),1
-lea edi,(L3)
-mov dword ptr (L4),edi
-mov dword ptr (-4)[ebp],0
-jmp L12
-L9:
-mov edi,dword ptr (L4)
-push edi
-mov edi,dword ptr (-4)[ebp]
-call dword ptr (L2)[edi*4]
-add esp,4
-mov dword ptr (L3+52),eax
-mov edi,dword ptr (L3+56)
-mov esi,dword ptr (L3+52)
-lea edi,[esi][edi]
-mov dword ptr (L3+56),edi
-cmp dword ptr (L3+36),0
-je L17
-mov edi,dword ptr (L3+52)
-push edi
-lea edi,(L3+60)
-push edi
-lea edi,(L20)
-push edi
-call _printf
-add esp,12
-L17:
-L10:
-inc dword ptr (-4)[ebp]
-L12:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,21
-jb L9
-cmp dword ptr (L3+56),0
-jne L23
-lea edi,(L26)
-push edi
-call _printf
-add esp,4
-jmp L24
-L23:
-lea edi,(L27)
-push edi
-call _printf
-add esp,4
-L24:
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L29 label byte
-db 115
-db 50
-db 50
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L30 label byte
-db 115
-db 50
-db 50
-db 32
-db 32
-db 32
-db 32
-db 0
-public _s22
-_DATA ends
-_TEXT segment
-_s22:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,32
-mov dword ptr (-12)[ebp],0
-lea edi,(L30)
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-8)[ebp],edi
-L31:
-L32:
-mov edi,dword ptr (-8)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-8)[ebp],esi
-mov esi,dword ptr (-4)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-4)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L31
-mov dword ptr (-16)[ebp],1
-mov dword ptr (-24)[ebp],2
-mov dword ptr (-28)[ebp],3
-mov dword ptr (-20)[ebp],4
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-24)[ebp]
-lea edi,[esi][edi]
-mov esi,dword ptr (-28)[ebp]
-lea edi,[esi][edi]
-mov esi,dword ptr (-20)[ebp]
-lea edi,[esi][edi]
-cmp edi,10
-je L34
-inc dword ptr (-12)[ebp]
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L36
-push 1
-lea edi,(L29)
-push edi
-call _printf
-add esp,8
-L36:
-L34:
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-cmp dword ptr (-32)[ebp],edi
-jne L38
-add dword ptr (-12)[ebp],4
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L40
-push 4
-lea edi,(L29)
-push edi
-call _printf
-add esp,8
-L40:
-L38:
-mov eax,dword ptr (-12)[ebp]
-L28:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L43 label byte
-db 115
-db 50
-db 52
-db 49
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L44 label byte
-db 115
-db 50
-db 52
-db 49
-db 32
-db 32
-db 32
-db 0
-align 4
-L45 label byte
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 0
-dd 6
-dd 0
-dd 8
-dd 0
-dd 12
-dd 0
-dd 16
-dd 0
-dd 18
-dd 0
-dd 20
-dd 0
-dd 24
-dd 0
-dd 28
-dd 0
-dd 30
-dd 0
-dd 32
-dd 0
-dd 36
-public _s241
-_DATA ends
-_TEXT segment
-_s241:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,488
-mov dword ptr (-484)[ebp],0
-mov dword ptr (-488)[ebp],0
-lea edi,(L44)
-mov dword ptr (-476)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-480)[ebp],edi
-L46:
-L47:
-mov edi,dword ptr (-480)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-480)[ebp],esi
-mov esi,dword ptr (-476)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-476)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L46
-jmp L49
-inc dword ptr (-484)[ebp]
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L51
-push 1
-lea edi,(L43)
-push edi
-call _printf
-add esp,8
-L51:
-L49:
-jmp L53
-add dword ptr (-484)[ebp],2
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L55
-push 2
-lea edi,(L43)
-push edi
-call _printf
-add esp,8
-L55:
-L53:
-jmp L57
-add dword ptr (-484)[ebp],4
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L59
-push 4
-lea edi,(L43)
-push edi
-call _printf
-add esp,8
-L59:
-L57:
-jmp L61
-add dword ptr (-484)[ebp],8
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L63
-push 8
-lea edi,(L43)
-push edi
-call _printf
-add esp,8
-L63:
-L61:
-mov dword ptr (-4)[ebp],0
-L65:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (L45)[edi*4],edi
-L66:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],17
-jl L65
-mov dword ptr (-4)[ebp],18
-L69:
-mov edi,dword ptr (-4)[ebp]
-lea edi,(L45)[edi*4]
-mov esi,dword ptr [edi]
-push esi
-call _pow2
-add esp,4
-mov dword ptr [edi],eax
-mov edi,dword ptr (-4)[ebp]
-lea edi,[edi*4]
-mov esi,dword ptr (L45)[edi]
-sub esi,1
-mov dword ptr (L45-4)[edi],esi
-add dword ptr (-4)[ebp],2
-L70:
-cmp dword ptr (-4)[ebp],39
-jl L69
-mov dword ptr (-160)[ebp],0
-mov dword ptr (-316)[ebp],0
-mov dword ptr (-472)[ebp],0
-mov dword ptr (-156)[ebp],1
-mov dword ptr (-312)[ebp],1
-mov dword ptr (-468)[ebp],1
-mov dword ptr (-152)[ebp],2
-mov dword ptr (-308)[ebp],2
-mov dword ptr (-464)[ebp],2
-mov dword ptr (-148)[ebp],3
-mov dword ptr (-304)[ebp],3
-mov dword ptr (-460)[ebp],3
-mov dword ptr (-144)[ebp],4
-mov dword ptr (-300)[ebp],4
-mov dword ptr (-456)[ebp],4
-mov dword ptr (-140)[ebp],5
-mov dword ptr (-296)[ebp],5
-mov dword ptr (-452)[ebp],5
-mov dword ptr (-136)[ebp],6
-mov dword ptr (-292)[ebp],6
-mov dword ptr (-448)[ebp],6
-mov dword ptr (-132)[ebp],7
-mov dword ptr (-288)[ebp],7
-mov dword ptr (-444)[ebp],7
-mov dword ptr (-128)[ebp],8
-mov dword ptr (-284)[ebp],8
-mov dword ptr (-440)[ebp],8
-mov dword ptr (-124)[ebp],9
-mov dword ptr (-280)[ebp],9
-mov dword ptr (-436)[ebp],9
-mov dword ptr (-120)[ebp],10
-mov dword ptr (-276)[ebp],10
-mov dword ptr (-432)[ebp],10
-mov dword ptr (-116)[ebp],11
-mov dword ptr (-272)[ebp],11
-mov dword ptr (-428)[ebp],11
-mov dword ptr (-112)[ebp],12
-mov dword ptr (-268)[ebp],12
-mov dword ptr (-424)[ebp],12
-mov dword ptr (-108)[ebp],13
-mov dword ptr (-264)[ebp],13
-mov dword ptr (-420)[ebp],13
-mov dword ptr (-104)[ebp],14
-mov dword ptr (-260)[ebp],14
-mov dword ptr (-416)[ebp],14
-mov dword ptr (-100)[ebp],15
-mov dword ptr (-256)[ebp],15
-mov dword ptr (-412)[ebp],15
-mov dword ptr (-96)[ebp],16
-mov dword ptr (-252)[ebp],16
-mov dword ptr (-408)[ebp],16
-mov dword ptr (-92)[ebp],63
-mov dword ptr (-248)[ebp],63
-mov dword ptr (-404)[ebp],63
-mov dword ptr (-88)[ebp],64
-mov dword ptr (-244)[ebp],64
-mov dword ptr (-400)[ebp],64
-mov dword ptr (-84)[ebp],255
-mov dword ptr (-240)[ebp],255
-mov dword ptr (-396)[ebp],255
-mov dword ptr (-80)[ebp],256
-mov dword ptr (-236)[ebp],256
-mov dword ptr (-392)[ebp],256
-mov dword ptr (-76)[ebp],4095
-mov dword ptr (-232)[ebp],4095
-mov dword ptr (-388)[ebp],4095
-mov dword ptr (-72)[ebp],4096
-mov dword ptr (-228)[ebp],4096
-mov dword ptr (-384)[ebp],4096
-mov dword ptr (-68)[ebp],65535
-mov dword ptr (-224)[ebp],65535
-mov dword ptr (-380)[ebp],65535
-mov dword ptr (-64)[ebp],65536
-mov dword ptr (-220)[ebp],65536
-mov dword ptr (-376)[ebp],65536
-mov dword ptr (-60)[ebp],262143
-mov dword ptr (-216)[ebp],262143
-mov dword ptr (-372)[ebp],262143
-mov dword ptr (-56)[ebp],262144
-mov dword ptr (-212)[ebp],262144
-mov dword ptr (-368)[ebp],262144
-mov dword ptr (-52)[ebp],1048575
-mov dword ptr (-208)[ebp],1048575
-mov dword ptr (-364)[ebp],1048575
-mov dword ptr (-48)[ebp],1048576
-mov dword ptr (-204)[ebp],1048576
-mov dword ptr (-360)[ebp],1048576
-mov dword ptr (-44)[ebp],16777215
-mov dword ptr (-200)[ebp],16777215
-mov dword ptr (-356)[ebp],16777215
-mov dword ptr (-40)[ebp],16777216
-mov dword ptr (-196)[ebp],16777216
-mov dword ptr (-352)[ebp],16777216
-mov dword ptr (-36)[ebp],268435455
-mov dword ptr (-192)[ebp],268435455
-mov dword ptr (-348)[ebp],268435455
-mov dword ptr (-32)[ebp],268435456
-mov dword ptr (-188)[ebp],268435456
-mov dword ptr (-344)[ebp],268435456
-mov dword ptr (-28)[ebp],1073741823
-mov dword ptr (-184)[ebp],1073741823
-mov dword ptr (-340)[ebp],1073741823
-mov dword ptr (-24)[ebp],1073741824
-mov dword ptr (-180)[ebp],1073741824
-mov dword ptr (-336)[ebp],1073741824
-mov edi,0ffffffffH
-mov dword ptr (-20)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-176)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-332)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-16)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-172)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-328)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-12)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-168)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-324)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-8)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-164)[ebp],edi
-mov edi,0ffffffffH
-mov dword ptr (-320)[ebp],edi
-mov dword ptr (-4)[ebp],0
-L188:
-mov edi,dword ptr (-4)[ebp]
-lea edi,[edi*4]
-mov esi,dword ptr (-160)[ebp][edi]
-cmp dword ptr (L45)[edi],esi
-jne L195
-mov ebx,dword ptr (-316)[ebp][edi]
-cmp esi,ebx
-jne L195
-cmp ebx,dword ptr (-472)[ebp][edi]
-je L192
-L195:
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (40)[edi],0
-je L196
-lea edi,(L198)
-push edi
-call _printf
-add esp,4
-lea edi,(L199)
-push edi
-call _printf
-add esp,4
-L196:
-L192:
-L189:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],39
-jl L188
-cmp dword ptr (-488)[ebp],0
-je L200
-mov dword ptr (-484)[ebp],16
-L200:
-mov eax,dword ptr (-484)[ebp]
-L42:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _pow2
-_pow2:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (-4)[ebp],1
-jmp L204
-L203:
-sal dword ptr (-4)[ebp],1
-L204:
-mov edi,dword ptr (20)[ebp]
-mov esi,edi
-sub esi,1
-mov dword ptr (20)[ebp],esi
-cmp edi,0
-jne L203
-mov eax,dword ptr (-4)[ebp]
-L202:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L207 label byte
-db 115
-db 50
-db 52
-db 51
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L208 label byte
-db 115
-db 50
-db 52
-db 51
-db 32
-db 32
-db 32
-db 0
-public _s243
-_DATA ends
-_TEXT segment
-_s243:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,268
-mov dword ptr (-268)[ebp],0
-lea edi,(L208)
-mov dword ptr (-260)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-264)[ebp],edi
-L209:
-L210:
-mov edi,dword ptr (-264)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-264)[ebp],esi
-mov esi,dword ptr (-260)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-260)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L209
-lea edi,(-256)[ebp]
-push edi
-call _zerofill
-add esp,4
-mov byte ptr (-159)[ebp],1
-mov byte ptr (-191)[ebp],1
-mov byte ptr (-130)[ebp],1
-mov byte ptr (-208)[ebp],1
-mov byte ptr (-158)[ebp],1
-mov byte ptr (-190)[ebp],1
-mov byte ptr (-223)[ebp],1
-mov byte ptr (-207)[ebp],1
-mov byte ptr (-157)[ebp],1
-mov byte ptr (-189)[ebp],1
-mov byte ptr (-222)[ebp],1
-mov byte ptr (-206)[ebp],1
-mov byte ptr (-156)[ebp],1
-mov byte ptr (-188)[ebp],1
-mov byte ptr (-221)[ebp],1
-mov byte ptr (-205)[ebp],1
-mov byte ptr (-155)[ebp],1
-mov byte ptr (-187)[ebp],1
-mov byte ptr (-219)[ebp],1
-mov byte ptr (-204)[ebp],1
-mov byte ptr (-154)[ebp],1
-mov byte ptr (-186)[ebp],1
-mov byte ptr (-218)[ebp],1
-mov byte ptr (-203)[ebp],1
-mov byte ptr (-153)[ebp],1
-mov byte ptr (-185)[ebp],1
-mov byte ptr (-216)[ebp],1
-mov byte ptr (-202)[ebp],1
-mov byte ptr (-152)[ebp],1
-mov byte ptr (-184)[ebp],1
-mov byte ptr (-215)[ebp],1
-mov byte ptr (-201)[ebp],1
-mov byte ptr (-151)[ebp],1
-mov byte ptr (-183)[ebp],1
-mov byte ptr (-161)[ebp],1
-mov byte ptr (-200)[ebp],1
-mov byte ptr (-150)[ebp],1
-mov byte ptr (-182)[ebp],1
-mov byte ptr (-195)[ebp],1
-mov byte ptr (-199)[ebp],1
-mov byte ptr (-149)[ebp],1
-mov byte ptr (-181)[ebp],1
-mov byte ptr (-211)[ebp],1
-mov byte ptr (-148)[ebp],1
-mov byte ptr (-180)[ebp],1
-mov byte ptr (-162)[ebp],1
-mov byte ptr (-147)[ebp],1
-mov byte ptr (-179)[ebp],1
-mov byte ptr (-132)[ebp],1
-mov byte ptr (-246)[ebp],1
-mov byte ptr (-146)[ebp],1
-mov byte ptr (-178)[ebp],1
-mov byte ptr (-247)[ebp],1
-mov byte ptr (-145)[ebp],1
-mov byte ptr (-177)[ebp],1
-mov byte ptr (-133)[ebp],1
-mov byte ptr (-248)[ebp],1
-mov byte ptr (-144)[ebp],1
-mov byte ptr (-176)[ebp],1
-mov byte ptr (-131)[ebp],1
-mov byte ptr (-243)[ebp],1
-mov byte ptr (-143)[ebp],1
-mov byte ptr (-175)[ebp],1
-mov byte ptr (-165)[ebp],1
-mov byte ptr (-244)[ebp],1
-mov byte ptr (-142)[ebp],1
-mov byte ptr (-174)[ebp],1
-mov byte ptr (-163)[ebp],1
-mov byte ptr (-141)[ebp],1
-mov byte ptr (-173)[ebp],1
-mov byte ptr (-213)[ebp],1
-mov byte ptr (-164)[ebp],1
-mov byte ptr (-140)[ebp],1
-mov byte ptr (-172)[ebp],1
-mov byte ptr (-197)[ebp],1
-mov byte ptr (-217)[ebp],1
-mov byte ptr (-139)[ebp],1
-mov byte ptr (-171)[ebp],1
-mov byte ptr (-214)[ebp],1
-mov byte ptr (-138)[ebp],1
-mov byte ptr (-170)[ebp],1
-mov byte ptr (-198)[ebp],1
-mov byte ptr (-256)[ebp],1
-mov byte ptr (-137)[ebp],1
-mov byte ptr (-169)[ebp],1
-mov byte ptr (-196)[ebp],1
-mov byte ptr (-224)[ebp],1
-mov byte ptr (-136)[ebp],1
-mov byte ptr (-168)[ebp],1
-mov byte ptr (-194)[ebp],1
-mov byte ptr (-135)[ebp],1
-mov byte ptr (-167)[ebp],1
-mov byte ptr (-212)[ebp],1
-mov byte ptr (-134)[ebp],1
-mov byte ptr (-166)[ebp],1
-mov byte ptr (-210)[ebp],1
-mov byte ptr (-193)[ebp],1
-mov byte ptr (-209)[ebp],1
-lea edi,(-256)[ebp]
-push edi
-call _sumof
-add esp,4
-cmp eax,98
-je L309
-inc dword ptr (-268)[ebp]
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L311
-push 1
-lea edi,(L207)
-push edi
-call _printf
-add esp,8
-L311:
-L309:
-jmp L313
-add dword ptr (-268)[ebp],8
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L315
-push 8
-lea edi,(L207)
-push edi
-call _printf
-add esp,8
-L315:
-L313:
-mov eax,dword ptr (-268)[ebp]
-L206:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _zerofill
-_zerofill:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (-4)[ebp],0
-L318:
-mov edi,dword ptr (20)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (20)[ebp],esi
-mov byte ptr [edi],0
-L319:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],256
-jl L318
-mov eax,0
-L317:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _sumof
-_sumof:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,12
-mov edi,dword ptr (20)[ebp]
-mov dword ptr (-12)[ebp],edi
-mov dword ptr (-4)[ebp],0
-mov dword ptr (-8)[ebp],0
-L323:
-mov edi,dword ptr (-12)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-12)[ebp],esi
-movsx edi,byte ptr [edi]
-add dword ptr (-4)[ebp],edi
-L324:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],256
-jl L323
-mov eax,dword ptr (-4)[ebp]
-L322:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L328 label byte
-db 115
-db 50
-db 52
-db 52
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L329 label byte
-db 115
-db 50
-db 52
-db 52
-db 32
-db 32
-db 32
-db 0
-public _s244
-_DATA ends
-_TEXT segment
-_s244:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,92
-lea edi,(L329)
-mov dword ptr (-72)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-76)[ebp],edi
-L330:
-L331:
-mov edi,dword ptr (-76)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-76)[ebp],esi
-mov esi,dword ptr (-72)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-72)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L330
-mov dword ptr (-84)[ebp],0
-mov dword ptr (-80)[ebp],0
-fld qword ptr (L333)
-fstp qword ptr (-68)[ebp]
-fld qword ptr (L333)
-fstp qword ptr (-60)[ebp]
-fld qword ptr (L333)
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L333)
-fstp qword ptr (-44)[ebp]
-fld qword ptr (L333)
-fstp qword ptr (-36)[ebp]
-fld qword ptr (L333)
-fstp qword ptr (-28)[ebp]
-fld qword ptr (L333)
-fstp qword ptr (-20)[ebp]
-fld qword ptr (L333)
-fstp qword ptr (-12)[ebp]
-mov dword ptr (-80)[ebp],0
-mov dword ptr (-4)[ebp],0
-L341:
-mov edi,dword ptr (-4)[ebp]
-lea edi,[edi*8]
-fld qword ptr (-60)[ebp][edi]
-fcomp qword ptr (-68)[ebp][edi]
-fstsw ax
-sahf
-je L345
-mov dword ptr (-80)[ebp],1
-L345:
-L342:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],7
-jl L341
-cmp dword ptr (-80)[ebp],0
-je L348
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L350
-push 1
-lea edi,(L328)
-push edi
-call _printf
-add esp,8
-L350:
-inc dword ptr (-84)[ebp]
-L348:
-jmp L352
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L354
-push 2
-lea edi,(L328)
-push edi
-call _printf
-add esp,8
-L354:
-add dword ptr (-84)[ebp],2
-L352:
-mov eax,dword ptr (-84)[ebp]
-L327:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L357 label byte
-db 115
-db 50
-db 53
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L358 label byte
-db 115
-db 50
-db 53
-db 32
-db 32
-db 32
-db 32
-db 0
-public _s25
-_DATA ends
-_TEXT segment
-_s25:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,28
-lea edi,(L358)
-mov dword ptr (-16)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-20)[ebp],edi
-L359:
-L360:
-mov edi,dword ptr (-20)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-20)[ebp],esi
-mov esi,dword ptr (-16)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-16)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L359
-mov dword ptr (-24)[ebp],0
-lea edi,(L362)
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-movsx esi,byte ptr (1)[edi]
-movsx ebx,byte ptr [edi]
-cmp ebx,esi
-jne L366
-movsx edi,byte ptr (2)[edi]
-cmp esi,edi
-jne L366
-cmp edi,46
-je L363
-L366:
-inc dword ptr (-24)[ebp]
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L367
-push 1
-lea edi,(L357)
-push edi
-call _printf
-add esp,8
-L367:
-L363:
-mov edi,dword ptr (-8)[ebp]
-movsx edi,byte ptr (3)[edi]
-cmp edi,0
-je L369
-add dword ptr (-24)[ebp],4
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L371
-push 4
-lea edi,(L357)
-push edi
-call _printf
-add esp,8
-L371:
-L369:
-movsx edi,byte ptr (L375+1)
-cmp edi,34
-je L373
-add dword ptr (-24)[ebp],8
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L377
-push 8
-lea edi,(L357)
-push edi
-call _printf
-add esp,8
-L377:
-L373:
-lea edi,(L379)
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-movsx esi,byte ptr [edi]
-cmp esi,10
-jne L387
-movsx esi,byte ptr (1)[edi]
-cmp esi,9
-jne L387
-movsx esi,byte ptr (2)[edi]
-cmp esi,8
-jne L387
-movsx esi,byte ptr (3)[edi]
-cmp esi,13
-jne L387
-movsx esi,byte ptr (4)[edi]
-cmp esi,12
-jne L387
-movsx esi,byte ptr (5)[edi]
-cmp esi,92
-jne L387
-movsx edi,byte ptr (6)[edi]
-cmp edi,39
-je L380
-L387:
-add dword ptr (-24)[ebp],16
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L388
-push 16
-lea edi,(L357)
-push edi
-call _printf
-add esp,8
-L388:
-L380:
-lea edi,(L390)
-mov dword ptr (-12)[ebp],edi
-mov dword ptr (-8)[ebp],edi
-mov dword ptr (-28)[ebp],0
-mov dword ptr (-4)[ebp],0
-jmp L394
-L391:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (-8)[ebp]
-movsx esi,byte ptr [esi][edi]
-mov ebx,dword ptr (-12)[ebp]
-movsx edi,byte ptr [ebx][edi]
-cmp esi,edi
-je L395
-mov dword ptr (-28)[ebp],1
-L395:
-L392:
-inc dword ptr (-4)[ebp]
-L394:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,7
-jb L391
-cmp dword ptr (-28)[ebp],0
-je L397
-add dword ptr (-24)[ebp],32
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L399
-push 32
-lea edi,(L357)
-push edi
-call _printf
-add esp,8
-L399:
-L397:
-mov eax,dword ptr (-24)[ebp]
-L356:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L402 label byte
-db 115
-db 50
-db 54
-db 32
-db 32
-db 32
-db 32
-db 0
-align 1
-L403 label byte
-db 37
-db 51
-db 100
-db 32
-db 98
-db 105
-db 116
-db 115
-db 32
-db 105
-db 110
-db 32
-db 37
-db 115
-db 115
-db 46
-db 10
-db 0
-align 1
-L404 label byte
-db 37
-db 101
-db 32
-db 105
-db 115
-db 32
-db 116
-db 104
-db 101
-db 32
-db 108
-db 101
-db 97
-db 115
-db 116
-db 32
-db 110
-db 117
-db 109
-db 98
-db 101
-db 114
-db 32
-db 116
-db 104
-db 97
-db 116
-db 32
-db 99
-db 97
-db 110
-db 32
-db 98
-db 101
-db 32
-db 97
-db 100
-db 100
-db 101
-db 100
-db 32
-db 116
-db 111
-db 32
-db 49
-db 46
-db 32
-db 40
-db 37
-db 115
-db 41
-db 46
-db 10
-db 0
-public _s26
-_DATA ends
-_TEXT segment
-_s26:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,56
-lea edi,(L402)
-mov dword ptr (-36)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-40)[ebp],edi
-L405:
-L406:
-mov edi,dword ptr (-40)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-40)[ebp],esi
-mov esi,dword ptr (-36)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-36)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L405
-mov edi,dword ptr (20)[ebp]
-mov dword ptr [edi],0
-mov byte ptr (-41)[ebp],0
-mov byte ptr (-5)[ebp],1
-jmp L409
-L408:
-movsx edi,byte ptr (-5)[ebp]
-lea edi,[edi*2]
-mov ebx,edi
-mov byte ptr (-5)[ebp],bl
-mov edi,dword ptr (20)[ebp]
-inc dword ptr [edi]
-L409:
-movsx edi,byte ptr (-41)[ebp]
-movsx esi,byte ptr (-5)[ebp]
-cmp edi,esi
-jne L408
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr [edi]
-lea esi,[esi*4]
-mov dword ptr (4)[edi],esi
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr [edi]
-lea esi,[esi*2]
-mov dword ptr (8)[edi],esi
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr [edi]
-lea esi,[esi*4]
-mov dword ptr (12)[edi],esi
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr [edi]
-lea esi,[esi*4]
-mov dword ptr (16)[edi],esi
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr [edi]
-lea esi,[esi*4]
-mov dword ptr (20)[edi],esi
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr [edi]
-lea esi,[esi*8]
-mov dword ptr (24)[edi],esi
-fld dword ptr (L411)
-fstp dword ptr (-16)[ebp]
-fld dword ptr (L411)
-fstp dword ptr (-4)[ebp]
-fld dword ptr (L412)
-fstp dword ptr (-12)[ebp]
-jmp L414
-L413:
-fld dword ptr (-16)[ebp]
-fadd dword ptr (-4)[ebp]
-fstp dword ptr (-12)[ebp]
-fld dword ptr (-4)[ebp]
-fdiv qword ptr (L416)
-fstp dword ptr (-4)[ebp]
-L414:
-fld dword ptr (-16)[ebp]
-fcomp dword ptr (-12)[ebp]
-fstsw ax
-sahf
-jne L413
-mov edi,dword ptr (20)[ebp]
-fld qword ptr (L417)
-fmul dword ptr (-4)[ebp]
-fstp dword ptr (28)[edi]
-fld qword ptr (L418)
-fstp qword ptr (-32)[ebp]
-fld dword ptr (L411)
-fstp dword ptr (-4)[ebp]
-fld qword ptr (L419)
-fstp qword ptr (-24)[ebp]
-jmp L421
-L420:
-fld dword ptr (-4)[ebp]
-fstp qword ptr (-56)[ebp]
-fld qword ptr (-32)[ebp]
-fadd qword ptr (-56)[ebp]
-fstp qword ptr (-24)[ebp]
-fld qword ptr (-56)[ebp]
-fdiv qword ptr (L416)
-fstp dword ptr (-4)[ebp]
-L421:
-fld qword ptr (-32)[ebp]
-fcomp qword ptr (-24)[ebp]
-fstsw ax
-sahf
-jne L420
-mov edi,dword ptr (20)[ebp]
-fld qword ptr (L417)
-fmul dword ptr (-4)[ebp]
-fstp dword ptr (32)[edi]
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (40)[edi],0
-je L423
-lea edi,(L425)
-push edi
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr [edi]
-push edi
-lea edi,(L403)
-push edi
-call _printf
-add esp,12
-lea edi,(L426)
-push edi
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (4)[edi]
-push edi
-lea edi,(L403)
-push edi
-call _printf
-add esp,12
-lea edi,(L427)
-push edi
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (8)[edi]
-push edi
-lea edi,(L403)
-push edi
-call _printf
-add esp,12
-lea edi,(L428)
-push edi
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (12)[edi]
-push edi
-lea edi,(L403)
-push edi
-call _printf
-add esp,12
-lea edi,(L429)
-push edi
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (16)[edi]
-push edi
-lea edi,(L403)
-push edi
-call _printf
-add esp,12
-lea edi,(L430)
-push edi
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (20)[edi]
-push edi
-lea edi,(L403)
-push edi
-call _printf
-add esp,12
-lea edi,(L431)
-push edi
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (24)[edi]
-push edi
-lea edi,(L403)
-push edi
-call _printf
-add esp,12
-lea edi,(L430)
-push edi
-mov edi,dword ptr (20)[ebp]
-fld dword ptr (28)[edi]
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L404)
-push edi
-call _printf
-add esp,16
-lea edi,(L431)
-push edi
-mov edi,dword ptr (20)[ebp]
-fld dword ptr (32)[edi]
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L404)
-push edi
-call _printf
-add esp,16
-L423:
-mov eax,0
-L401:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L433 label byte
-db 115
-db 52
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L434 label byte
-db 115
-db 52
-db 32
-db 32
-db 32
-db 32
-db 32
-db 0
-public _s4
-_DATA ends
-_TEXT segment
-_s4:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,36
-mov dword ptr (-24)[ebp],0
-lea edi,(L434)
-mov dword ptr (-16)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-20)[ebp],edi
-L435:
-L436:
-mov edi,dword ptr (-20)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-20)[ebp],esi
-mov esi,dword ptr (-16)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-16)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L435
-mov dword ptr (-4)[ebp],0
-L438:
-mov edi,dword ptr (-4)[ebp]
-push edi
-call _svtest
-add esp,4
-mov edi,eax
-call _zero
-add esp,0
-cmp edi,eax
-je L442
-mov dword ptr (-24)[ebp],1
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L444
-push 1
-lea edi,(L433)
-push edi
-call _printf
-add esp,8
-L444:
-L442:
-L439:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],3
-jl L438
-call _setev
-add esp,0
-call _testev
-add esp,0
-cmp eax,0
-je L446
-add dword ptr (-24)[ebp],2
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L448
-push 2
-lea edi,(L433)
-push edi
-call _printf
-add esp,8
-L448:
-L446:
-jmp L450
-add dword ptr (-24)[ebp],4
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L452
-push 4
-lea edi,(L433)
-push edi
-call _printf
-add esp,8
-L452:
-L450:
-mov dword ptr (-8)[ebp],0ffffffffH
-mov dword ptr (-12)[ebp],1
-mov dword ptr (-4)[ebp],0
-jmp L457
-L454:
-mov edi,dword ptr (-8)[ebp]
-and dword ptr (-12)[ebp],edi
-shr edi,1
-mov dword ptr (-8)[ebp],edi
-L455:
-inc dword ptr (-4)[ebp]
-L457:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (20)[ebp]
-mov esi,dword ptr [esi]
-lea esi,[esi*4]
-cmp edi,esi
-jb L454
-mov edi,dword ptr (-12)[ebp]
-cmp edi,1
-jne L460
-mov edi,dword ptr (-8)[ebp]
-cmp edi,0
-je L458
-L460:
-add dword ptr (-24)[ebp],8
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L461
-push 8
-lea edi,(L433)
-push edi
-call _printf
-add esp,8
-L461:
-L458:
-mov eax,dword ptr (-24)[ebp]
-L432:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L464 label byte
-db 4 dup (0)
-public _svtest
-_DATA ends
-_TEXT segment
-_svtest:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov edi,dword ptr (20)[ebp]
-cmp edi,0
-je L467
-cmp edi,1
-je L468
-cmp edi,2
-je L471
-jmp L465
-L467:
-mov dword ptr (L464),1978
-mov dword ptr (-4)[ebp],0
-jmp L466
-L468:
-cmp dword ptr (L464),1978
-je L469
-mov dword ptr (-4)[ebp],1
-jmp L466
-L469:
-mov dword ptr (L464),1929
-mov dword ptr (-4)[ebp],0
-jmp L466
-L471:
-cmp dword ptr (L464),1929
-je L472
-mov dword ptr (-4)[ebp],1
-jmp L466
-L472:
-mov dword ptr (-4)[ebp],0
-L465:
-L466:
-mov eax,dword ptr (-4)[ebp]
-L463:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L475 label byte
-db 4 dup (0)
-public _zero
-_DATA ends
-_TEXT segment
-_zero:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (L475),2
-mov dword ptr (-4)[ebp],0
-mov eax,dword ptr (-4)[ebp]
-L474:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _testev
-_testev:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-cmp dword ptr (_extvar),1066
-je L477
-mov eax,1
-jmp L476
-L477:
-mov eax,0
-L476:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L480 label byte
-db 115
-db 54
-db 49
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L481 label byte
-db 115
-db 54
-db 49
-db 32
-db 32
-db 32
-db 32
-db 0
-align 1
-L482 label byte
-db 65
-db 66
-db 67
-db 68
-db 69
-db 70
-db 71
-db 72
-db 73
-db 74
-db 75
-db 76
-db 77
-db 78
-db 79
-db 80
-db 81
-db 82
-db 83
-db 84
-db 85
-db 86
-db 87
-db 88
-db 89
-db 90
-db 0
-align 1
-L483 label byte
-db 97
-db 98
-db 99
-db 100
-db 101
-db 102
-db 103
-db 104
-db 105
-db 106
-db 107
-db 108
-db 109
-db 110
-db 111
-db 112
-db 113
-db 114
-db 115
-db 116
-db 117
-db 118
-db 119
-db 120
-db 121
-db 122
-db 0
-align 1
-L484 label byte
-db 48
-db 49
-db 50
-db 51
-db 52
-db 53
-db 54
-db 55
-db 56
-db 57
-db 0
-align 1
-L485 label byte
-db 126
-db 33
-db 34
-db 35
-db 37
-db 38
-db 40
-db 41
-db 95
-db 61
-db 45
-db 94
-db 124
-db 123
-db 125
-db 91
-db 93
-db 43
-db 59
-db 42
-db 58
-db 60
-db 62
-db 44
-db 46
-db 63
-db 47
-db 0
-align 1
-L486 label byte
-db 10
-db 9
-db 8
-db 13
-db 12
-db 92
-db 39
-db 0
-align 1
-L487 label byte
-db 32
-db 0
-db 0
-public _s61
-_DATA ends
-_TEXT segment
-_s61:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,60
-lea edi,(L481)
-mov dword ptr (-36)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-40)[ebp],edi
-mov dword ptr (-48)[ebp],0
-L488:
-L489:
-mov edi,dword ptr (-40)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-40)[ebp],esi
-mov esi,dword ptr (-36)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-36)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L488
-mov word ptr (-54)[ebp],-19
-movsx edi,word ptr (-54)[ebp]
-mov dword ptr (-60)[ebp],edi
-cmp dword ptr (-60)[ebp],-19
-je L491
-inc dword ptr (-48)[ebp]
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L493
-push 1
-lea edi,(L480)
-push edi
-call _printf
-add esp,8
-L493:
-L491:
-lea edi,(L482)
-mov dword ptr (-28)[ebp],edi
-lea edi,(L483)
-mov dword ptr (-24)[ebp],edi
-lea edi,(L484)
-mov dword ptr (-20)[ebp],edi
-lea edi,(L485)
-mov dword ptr (-16)[ebp],edi
-lea edi,(L486)
-mov dword ptr (-12)[ebp],edi
-lea edi,(L487)
-mov dword ptr (-8)[ebp],edi
-mov dword ptr (-32)[ebp],0
-mov dword ptr (-4)[ebp],0
-jmp L505
-L504:
-mov edi,dword ptr (-4)[ebp]
-lea edi,(-28)[ebp][edi*4]
-mov esi,dword ptr [edi]
-lea ebx,(1)[esi]
-mov dword ptr [edi],ebx
-movsx edi,byte ptr [esi]
-cmp edi,0
-jge L507
-mov dword ptr (-32)[ebp],1
-L507:
-L505:
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr (-28)[ebp][edi*4]
-movsx edi,byte ptr [edi]
-cmp edi,0
-jne L504
-L501:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],6
-jl L505
-cmp dword ptr (-32)[ebp],0
-je L509
-add dword ptr (-48)[ebp],2
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L511
-push 2
-lea edi,(L480)
-push edi
-call _printf
-add esp,8
-L511:
-L509:
-mov dword ptr (-44)[ebp],1048579
-mov edi,dword ptr (-44)[ebp]
-mov esi,edi
-mov word ptr (-50)[ebp],si
-mov ebx,edi
-mov byte ptr (-51)[ebp],bl
-movsx edi,word ptr (-50)[ebp]
-cmp edi,dword ptr (-44)[ebp]
-je L516
-cmp edi,3
-jne L515
-L516:
-movsx edi,byte ptr (-51)[ebp]
-cmp edi,dword ptr (-44)[ebp]
-je L513
-cmp edi,3
-je L513
-L515:
-add dword ptr (-48)[ebp],8
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L517
-push 8
-lea edi,(L480)
-push edi
-call _printf
-add esp,8
-L517:
-L513:
-mov eax,dword ptr (-48)[ebp]
-L479:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L520 label byte
-db 115
-db 54
-db 50
-db 54
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L521 label byte
-db 115
-db 54
-db 50
-db 54
-db 32
-db 32
-db 32
-db 0
-public _s626
-_DATA ends
-_TEXT segment
-_s626:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,128
-lea edi,(L521)
-mov dword ptr (-56)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-60)[ebp],edi
-mov dword ptr (-104)[ebp],0
-L522:
-L523:
-mov edi,dword ptr (-60)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-60)[ebp],esi
-mov esi,dword ptr (-56)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-56)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L522
-fld dword ptr (L411)
-fstp dword ptr (-36)[ebp]
-mov dword ptr (-64)[ebp],1
-mov dword ptr (-40)[ebp],1
-mov dword ptr (-4)[ebp],0
-jmp L528
-L525:
-fld dword ptr (L529)
-fmul dword ptr (-36)[ebp]
-fstp dword ptr (-36)[ebp]
-mov edi,dword ptr (-40)[ebp]
-lea edi,[edi*2]
-or edi,dword ptr (-64)[ebp]
-mov dword ptr (-40)[ebp],edi
-L526:
-inc dword ptr (-4)[ebp]
-L528:
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (12)[edi]
-sub edi,2
-cmp dword ptr (-4)[ebp],edi
-jl L525
-mov edi,dword ptr (-40)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (-112)[ebp]
-fld dword ptr (-36)[ebp]
-fsub dword ptr (-112)[ebp]
-fdiv dword ptr (-36)[ebp]
-fstp dword ptr (-36)[ebp]
-fld qword ptr (L416)
-mov edi,dword ptr (20)[ebp]
-fmul dword ptr (28)[edi]
-fcomp dword ptr (-36)[ebp]
-fstsw ax
-sahf
-jae L530
-add dword ptr (-104)[ebp],2
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L532
-push 2
-lea edi,(L520)
-push edi
-call _printf
-add esp,8
-L532:
-L530:
-mov byte ptr (-73)[ebp],125
-mov word ptr (-76)[ebp],125
-mov dword ptr (-80)[ebp],125
-mov dword ptr (-96)[ebp],15625
-mov dword ptr (-84)[ebp],125
-mov dword ptr (-100)[ebp],15625
-mov dword ptr (-68)[ebp],125
-mov dword ptr (-108)[ebp],15625
-fld dword ptr (L534)
-fstp dword ptr (-72)[ebp]
-fld qword ptr (L535)
-fstp qword ptr (-92)[ebp]
-fld qword ptr (L536)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-4)[ebp],0
-L537:
-mov edi,dword ptr (-4)[ebp]
-mov byte ptr (-32)[ebp][edi],0
-L538:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],28
-jl L537
-movsx edi,byte ptr (-73)[ebp]
-mov esi,edi
-imul esi,edi
-cmp esi,dword ptr (-96)[ebp]
-je L541
-mov byte ptr (-32)[ebp],1
-L541:
-movsx edi,word ptr (-76)[ebp]
-movsx esi,byte ptr (-73)[ebp]
-imul edi,esi
-cmp edi,dword ptr (-96)[ebp]
-je L543
-mov byte ptr (-31)[ebp],1
-L543:
-movsx edi,word ptr (-76)[ebp]
-mov esi,edi
-imul esi,edi
-cmp esi,dword ptr (-96)[ebp]
-je L546
-mov byte ptr (-30)[ebp],1
-L546:
-mov edi,dword ptr (-80)[ebp]
-movsx esi,byte ptr (-73)[ebp]
-imul edi,esi
-cmp edi,dword ptr (-96)[ebp]
-je L549
-mov byte ptr (-29)[ebp],1
-L549:
-mov edi,dword ptr (-80)[ebp]
-movsx esi,word ptr (-76)[ebp]
-imul edi,esi
-cmp edi,dword ptr (-96)[ebp]
-je L552
-mov byte ptr (-28)[ebp],1
-L552:
-mov edi,dword ptr (-80)[ebp]
-mov esi,edi
-imul esi,edi
-cmp esi,dword ptr (-96)[ebp]
-je L555
-mov byte ptr (-27)[ebp],1
-L555:
-mov eax,dword ptr (-84)[ebp]
-movsx edi,byte ptr (-73)[ebp]
-mul edi
-cmp eax,dword ptr (-100)[ebp]
-je L558
-mov byte ptr (-26)[ebp],1
-L558:
-mov eax,dword ptr (-84)[ebp]
-movsx edi,word ptr (-76)[ebp]
-mul edi
-cmp eax,dword ptr (-100)[ebp]
-je L561
-mov byte ptr (-25)[ebp],1
-L561:
-mov eax,dword ptr (-84)[ebp]
-mov edi,dword ptr (-80)[ebp]
-mul edi
-cmp eax,dword ptr (-100)[ebp]
-je L564
-mov byte ptr (-24)[ebp],1
-L564:
-mov edi,dword ptr (-84)[ebp]
-mov eax,edi
-mul edi
-cmp eax,dword ptr (-100)[ebp]
-je L567
-mov byte ptr (-23)[ebp],1
-L567:
-mov edi,dword ptr (-68)[ebp]
-movsx esi,byte ptr (-73)[ebp]
-imul edi,esi
-cmp edi,dword ptr (-108)[ebp]
-je L570
-mov byte ptr (-22)[ebp],1
-L570:
-mov edi,dword ptr (-68)[ebp]
-movsx esi,word ptr (-76)[ebp]
-imul edi,esi
-cmp edi,dword ptr (-108)[ebp]
-je L573
-mov byte ptr (-21)[ebp],1
-L573:
-mov edi,dword ptr (-68)[ebp]
-mov esi,dword ptr (-80)[ebp]
-imul edi,esi
-cmp edi,dword ptr (-108)[ebp]
-je L576
-mov byte ptr (-20)[ebp],1
-L576:
-mov edi,dword ptr (-68)[ebp]
-mov eax,edi
-mul dword ptr (-84)[ebp]
-cmp eax,dword ptr (-100)[ebp]
-je L579
-mov byte ptr (-19)[ebp],1
-L579:
-mov edi,dword ptr (-68)[ebp]
-mov esi,edi
-imul esi,edi
-cmp esi,dword ptr (-108)[ebp]
-je L582
-mov byte ptr (-18)[ebp],1
-L582:
-fld dword ptr (-72)[ebp]
-movsx edi,byte ptr (-73)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L585
-mov byte ptr (-17)[ebp],1
-L585:
-fld dword ptr (-72)[ebp]
-movsx edi,word ptr (-76)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L588
-mov byte ptr (-16)[ebp],1
-L588:
-fld dword ptr (-72)[ebp]
-mov edi,dword ptr (-80)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L591
-mov byte ptr (-15)[ebp],1
-L591:
-mov edi,dword ptr (-84)[ebp]
-fld dword ptr (-72)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L594
-mov byte ptr (-14)[ebp],1
-L594:
-fld dword ptr (-72)[ebp]
-mov edi,dword ptr (-68)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L598
-mov byte ptr (-13)[ebp],1
-L598:
-fld dword ptr (-72)[ebp]
-fmul dword ptr (-72)[ebp]
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L601
-mov byte ptr (-12)[ebp],1
-L601:
-fld qword ptr (-92)[ebp]
-movsx edi,byte ptr (-73)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L604
-mov byte ptr (-11)[ebp],1
-L604:
-fld qword ptr (-92)[ebp]
-movsx edi,word ptr (-76)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L607
-mov byte ptr (-10)[ebp],1
-L607:
-fld qword ptr (-92)[ebp]
-fild dword ptr (-80)[ebp]
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L610
-mov byte ptr (-9)[ebp],1
-L610:
-mov edi,dword ptr (-84)[ebp]
-fld qword ptr (-92)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L613
-mov byte ptr (-8)[ebp],1
-L613:
-fld qword ptr (-92)[ebp]
-fild dword ptr (-68)[ebp]
-fmulp st(1),st
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L616
-mov byte ptr (-7)[ebp],1
-L616:
-fld qword ptr (-92)[ebp]
-fmul dword ptr (-72)[ebp]
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L619
-mov byte ptr (-6)[ebp],1
-L619:
-fld qword ptr (-92)[ebp]
-fmul qword ptr (-92)[ebp]
-fld qword ptr (-52)[ebp]
-fcompp
-fstsw ax
-sahf
-je L622
-mov byte ptr (-5)[ebp],1
-L622:
-mov byte ptr (-41)[ebp],0
-mov dword ptr (-4)[ebp],0
-L625:
-movsx edi,byte ptr (-41)[ebp]
-mov esi,dword ptr (-4)[ebp]
-movsx esi,byte ptr (-32)[ebp][esi]
-lea edi,[esi][edi]
-mov ebx,edi
-mov byte ptr (-41)[ebp],bl
-L626:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],28
-jl L625
-movsx edi,byte ptr (-41)[ebp]
-cmp edi,0
-je L629
-add dword ptr (-104)[ebp],4
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L631
-push 4
-lea edi,(L520)
-push edi
-call _printf
-add esp,8
-lea edi,(L633)
-push edi
-call _printf
-add esp,4
-mov dword ptr (-4)[ebp],0
-L634:
-mov edi,dword ptr (-4)[ebp]
-movsx edi,byte ptr (-32)[ebp][edi]
-push edi
-lea edi,(L638)
-push edi
-call _printf
-add esp,8
-L635:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],28
-jl L634
-lea edi,(L639)
-push edi
-call _printf
-add esp,4
-L631:
-L629:
-mov dword ptr (-68)[ebp],32768
-mov edi,dword ptr (-68)[ebp]
-cmp edi,08000H
-jbe L640
-add dword ptr (-104)[ebp],8
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L642
-push 8
-lea edi,(L520)
-push edi
-call _printf
-add esp,8
-L642:
-L640:
-mov eax,dword ptr (-104)[ebp]
-L519:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L645 label byte
-db 115
-db 55
-db 49
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L646 label byte
-db 115
-db 55
-db 49
-db 32
-db 32
-db 32
-db 32
-db 0
-align 1
-L647 label byte
-db 113
-public _s71
-_DATA ends
-_TEXT segment
-_s71:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,68
-lea edi,(L646)
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-8)[ebp],edi
-mov dword ptr (-12)[ebp],0
-L648:
-L649:
-mov edi,dword ptr (-8)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-8)[ebp],esi
-mov esi,dword ptr (-4)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-4)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L648
-movsx edi,byte ptr (L653)
-movsx esi,byte ptr (L647)
-cmp edi,esi
-je L651
-inc dword ptr (-12)[ebp]
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L654
-push 1
-lea edi,(L645)
-push edi
-call _printf
-add esp,8
-L654:
-L651:
-jmp L656
-add dword ptr (-12)[ebp],2
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L658
-push 2
-lea edi,(L645)
-push edi
-call _printf
-add esp,8
-L658:
-L656:
-mov dword ptr (-32)[ebp],1942
-cmp dword ptr (-32)[ebp],1942
-jne L666
-mov edi,dword ptr (-32)[ebp]
-cmp dword ptr (-32)[ebp],edi
-je L661
-L666:
-add dword ptr (-12)[ebp],4
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L667
-push 4
-lea edi,(L645)
-push edi
-call _printf
-add esp,8
-L667:
-L661:
-push -5
-call _McCarthy
-add esp,4
-cmp eax,91
-je L669
-add dword ptr (-12)[ebp],8
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L671
-push 8
-lea edi,(L645)
-push edi
-call _printf
-add esp,8
-L671:
-L669:
-mov dword ptr (-56)[ebp],2
-mov dword ptr (-60)[ebp],3
-lea edi,(-60)[ebp]
-mov dword ptr (-64)[ebp],edi
-mov edi,dword ptr (-64)[ebp]
-push edi
-mov edi,dword ptr (-56)[ebp]
-push edi
-call _clobber
-add esp,8
-cmp dword ptr (-56)[ebp],2
-jne L675
-cmp dword ptr (-60)[ebp],2
-je L673
-L675:
-add dword ptr (-12)[ebp],16
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L676
-push 16
-lea edi,(L645)
-push edi
-call _printf
-add esp,8
-L676:
-L673:
-mov edi,dword ptr (20)[ebp]
-fld dword ptr (32)[edi]
-fstp dword ptr (-68)[ebp]
-fld dword ptr (-68)[ebp]
-fcomp dword ptr (-68)[ebp]
-fstsw ax
-sahf
-je L678
-add dword ptr (-12)[ebp],32
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L680
-push 32
-lea edi,(L645)
-push edi
-call _printf
-add esp,8
-L680:
-L678:
-mov eax,dword ptr (-12)[ebp]
-L644:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _McCarthy
-_McCarthy:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-cmp dword ptr (20)[ebp],100
-jle L683
-mov edi,dword ptr (20)[ebp]
-mov eax,edi
-sub eax,10
-jmp L682
-L683:
-mov edi,dword ptr (20)[ebp]
-lea edi,(11)[edi]
-push edi
-call _McCarthy
-add esp,4
-mov edi,eax
-push edi
-call _McCarthy
-add esp,4
-mov edi,eax
-L682:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _clobber
-_clobber:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov dword ptr (20)[ebp],3
-mov edi,dword ptr (24)[ebp]
-mov dword ptr [edi],2
-mov eax,0
-L685:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L687 label byte
-db 76
-db 111
-db 99
-db 97
-db 108
-db 32
-db 101
-db 114
-db 114
-db 111
-db 114
-db 32
-db 37
-db 100
-db 46
-db 10
-db 0
-align 1
-L688 label byte
-db 115
-db 55
-db 49
-db 52
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L689 label byte
-db 115
-db 55
-db 49
-db 52
-db 32
-db 32
-db 32
-db 0
-public _s714
-_DATA ends
-_TEXT segment
-_s714:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,248
-lea edi,(L689)
-mov dword ptr (-68)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea esi,(60)[edi]
-mov dword ptr (-72)[ebp],esi
-mov dword ptr (-76)[ebp],0
-mov dword ptr (-8)[ebp],0
-mov edi,dword ptr (48)[edi]
-mov dword ptr (-4)[ebp],edi
-L690:
-L691:
-mov edi,dword ptr (-72)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-72)[ebp],esi
-mov esi,dword ptr (-68)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-68)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L690
-mov byte ptr (-9)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov bl,byte ptr (-25)[ebp]
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L693
-mov dword ptr (-8)[ebp],1
-cmp dword ptr (-4)[ebp],0
-je L695
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L695:
-L693:
-mov byte ptr (-9)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L697
-mov dword ptr (-8)[ebp],2
-cmp dword ptr (-4)[ebp],0
-je L699
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L699:
-L697:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L701
-mov dword ptr (-8)[ebp],3
-cmp dword ptr (-4)[ebp],0
-je L703
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L703:
-L701:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L705
-mov dword ptr (-8)[ebp],4
-cmp dword ptr (-4)[ebp],0
-je L707
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L707:
-L705:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L709
-mov dword ptr (-8)[ebp],5
-cmp dword ptr (-4)[ebp],0
-je L711
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L711:
-L709:
-mov byte ptr (-9)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-56)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L713
-mov dword ptr (-8)[ebp],6
-cmp dword ptr (-4)[ebp],0
-je L715
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L715:
-L713:
-mov byte ptr (-9)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-64)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L717
-mov dword ptr (-8)[ebp],7
-cmp dword ptr (-4)[ebp],0
-je L719
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L719:
-L717:
-mov word ptr (-12)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L721
-mov dword ptr (-8)[ebp],8
-cmp dword ptr (-4)[ebp],0
-je L723
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L723:
-L721:
-mov word ptr (-12)[ebp],5
-mov word ptr (-28)[ebp],2
-mov di,word ptr (-28)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L725
-mov dword ptr (-8)[ebp],9
-cmp dword ptr (-4)[ebp],0
-je L727
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L727:
-L725:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L729
-mov dword ptr (-8)[ebp],10
-cmp dword ptr (-4)[ebp],0
-je L731
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L731:
-L729:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L733
-mov dword ptr (-8)[ebp],11
-cmp dword ptr (-4)[ebp],0
-je L735
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L735:
-L733:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L737
-mov dword ptr (-8)[ebp],12
-cmp dword ptr (-4)[ebp],0
-je L739
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L739:
-L737:
-mov word ptr (-12)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-56)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L741
-mov dword ptr (-8)[ebp],13
-cmp dword ptr (-4)[ebp],0
-je L743
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L743:
-L741:
-mov word ptr (-12)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-64)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L745
-mov dword ptr (-8)[ebp],14
-cmp dword ptr (-4)[ebp],0
-je L747
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L747:
-L745:
-mov dword ptr (-16)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],2
-je L749
-mov dword ptr (-8)[ebp],15
-cmp dword ptr (-4)[ebp],0
-je L751
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L751:
-L749:
-mov dword ptr (-16)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],2
-je L753
-mov dword ptr (-8)[ebp],16
-cmp dword ptr (-4)[ebp],0
-je L755
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L755:
-L753:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],2
-je L757
-mov dword ptr (-8)[ebp],17
-cmp dword ptr (-4)[ebp],0
-je L759
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L759:
-L757:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],2
-je L761
-mov dword ptr (-8)[ebp],18
-cmp dword ptr (-4)[ebp],0
-je L763
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L763:
-L761:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],2
-je L765
-mov dword ptr (-8)[ebp],19
-cmp dword ptr (-4)[ebp],0
-je L767
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L767:
-L765:
-mov dword ptr (-16)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],2
-je L769
-mov dword ptr (-8)[ebp],20
-cmp dword ptr (-4)[ebp],0
-je L771
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L771:
-L769:
-mov dword ptr (-16)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],2
-je L773
-mov dword ptr (-8)[ebp],21
-cmp dword ptr (-4)[ebp],0
-je L775
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L775:
-L773:
-mov dword ptr (-20)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],2
-je L777
-mov dword ptr (-8)[ebp],22
-cmp dword ptr (-4)[ebp],0
-je L779
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L779:
-L777:
-mov dword ptr (-20)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],2
-je L781
-mov dword ptr (-8)[ebp],23
-cmp dword ptr (-4)[ebp],0
-je L783
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L783:
-L781:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],2
-je L785
-mov dword ptr (-8)[ebp],24
-cmp dword ptr (-4)[ebp],0
-je L787
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L787:
-L785:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],2
-je L789
-mov dword ptr (-8)[ebp],25
-cmp dword ptr (-4)[ebp],0
-je L791
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L791:
-L789:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],2
-je L793
-mov dword ptr (-8)[ebp],26
-cmp dword ptr (-4)[ebp],0
-je L795
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L795:
-L793:
-mov dword ptr (-20)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],2
-je L797
-mov dword ptr (-8)[ebp],27
-cmp dword ptr (-4)[ebp],0
-je L799
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L799:
-L797:
-mov dword ptr (-20)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],2
-je L801
-mov dword ptr (-8)[ebp],28
-cmp dword ptr (-4)[ebp],0
-je L803
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L803:
-L801:
-mov dword ptr (-24)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L805
-mov dword ptr (-8)[ebp],29
-cmp dword ptr (-4)[ebp],0
-je L807
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L807:
-L805:
-mov dword ptr (-24)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L809
-mov dword ptr (-8)[ebp],30
-cmp dword ptr (-4)[ebp],0
-je L811
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L811:
-L809:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L813
-mov dword ptr (-8)[ebp],31
-cmp dword ptr (-4)[ebp],0
-je L815
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L815:
-L813:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L817
-mov dword ptr (-8)[ebp],32
-cmp dword ptr (-4)[ebp],0
-je L819
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L819:
-L817:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L821
-mov dword ptr (-8)[ebp],33
-cmp dword ptr (-4)[ebp],0
-je L823
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L823:
-L821:
-mov dword ptr (-24)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (L828)
-fcomp dword ptr (-56)[ebp]
-fstsw ax
-sahf
-ja L826
-fld dword ptr (-56)[ebp]
-fsub dword ptr (L828)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-80)[ebp],edi
-jmp L827
-L826:
-fld dword ptr (-56)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-80)[ebp],edi
-L827:
-mov edi,dword ptr (-80)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L829
-mov dword ptr (-8)[ebp],34
-cmp dword ptr (-4)[ebp],0
-je L831
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L831:
-L829:
-mov dword ptr (-24)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (L836)
-fcomp qword ptr (-64)[ebp]
-fstsw ax
-sahf
-ja L834
-fld qword ptr (-64)[ebp]
-fsub qword ptr (L836)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-92)[ebp],edi
-jmp L835
-L834:
-fld qword ptr (-64)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-92)[ebp],edi
-L835:
-mov edi,dword ptr (-92)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L837
-mov dword ptr (-8)[ebp],35
-cmp dword ptr (-4)[ebp],0
-je L839
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L839:
-L837:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L842
-mov dword ptr (-8)[ebp],36
-cmp dword ptr (-4)[ebp],0
-je L844
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L844:
-L842:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L846
-mov dword ptr (-8)[ebp],37
-cmp dword ptr (-4)[ebp],0
-je L848
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L848:
-L846:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L850
-mov dword ptr (-8)[ebp],38
-cmp dword ptr (-4)[ebp],0
-je L852
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L852:
-L850:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L854
-mov dword ptr (-8)[ebp],39
-cmp dword ptr (-4)[ebp],0
-je L856
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L856:
-L854:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L858
-mov dword ptr (-8)[ebp],40
-cmp dword ptr (-4)[ebp],0
-je L860
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L860:
-L858:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-56)[ebp]
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L862
-mov dword ptr (-8)[ebp],41
-cmp dword ptr (-4)[ebp],0
-je L864
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L864:
-L862:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-64)[ebp]
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L866
-mov dword ptr (-8)[ebp],42
-cmp dword ptr (-4)[ebp],0
-je L868
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L868:
-L866:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L871
-mov dword ptr (-8)[ebp],43
-cmp dword ptr (-4)[ebp],0
-je L873
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L873:
-L871:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L875
-mov dword ptr (-8)[ebp],44
-cmp dword ptr (-4)[ebp],0
-je L877
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L877:
-L875:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-32)[ebp],2
-fild dword ptr (-32)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L879
-mov dword ptr (-8)[ebp],45
-cmp dword ptr (-4)[ebp],0
-je L881
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L881:
-L879:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-36)[ebp],2
-fild dword ptr (-36)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L883
-mov dword ptr (-8)[ebp],46
-cmp dword ptr (-4)[ebp],0
-je L885
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L885:
-L883:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L887
-mov dword ptr (-8)[ebp],47
-cmp dword ptr (-4)[ebp],0
-je L889
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L889:
-L887:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-56)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L891
-mov dword ptr (-8)[ebp],48
-cmp dword ptr (-4)[ebp],0
-je L893
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L893:
-L891:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-64)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L895
-mov dword ptr (-8)[ebp],49
-cmp dword ptr (-4)[ebp],0
-je L897
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L897:
-L895:
-mov byte ptr (-9)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-lea edi,[esi][edi]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,7
-je L899
-mov dword ptr (-8)[ebp],50
-cmp dword ptr (-4)[ebp],0
-je L901
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L901:
-L899:
-mov byte ptr (-9)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,word ptr (-28)[ebp]
-lea edi,[esi][edi]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,7
-je L903
-mov dword ptr (-8)[ebp],51
-cmp dword ptr (-4)[ebp],0
-je L905
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L905:
-L903:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-32)[ebp]
-lea edi,[esi][edi]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,7
-je L907
-mov dword ptr (-8)[ebp],52
-cmp dword ptr (-4)[ebp],0
-je L909
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L909:
-L907:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-36)[ebp]
-lea edi,[esi][edi]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,7
-je L911
-mov dword ptr (-8)[ebp],53
-cmp dword ptr (-4)[ebp],0
-je L913
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L913:
-L911:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-40)[ebp]
-lea edi,[esi][edi]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,7
-je L915
-mov dword ptr (-8)[ebp],54
-cmp dword ptr (-4)[ebp],0
-je L917
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L917:
-L915:
-mov byte ptr (-9)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-movsx edi,byte ptr (-9)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fadd dword ptr (-56)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,7
-je L919
-mov dword ptr (-8)[ebp],55
-cmp dword ptr (-4)[ebp],0
-je L921
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L921:
-L919:
-mov byte ptr (-9)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-movsx edi,byte ptr (-9)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fadd qword ptr (-64)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,7
-je L923
-mov dword ptr (-8)[ebp],56
-cmp dword ptr (-4)[ebp],0
-je L925
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L925:
-L923:
-mov word ptr (-12)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-lea edi,[esi][edi]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,7
-je L927
-mov dword ptr (-8)[ebp],57
-cmp dword ptr (-4)[ebp],0
-je L929
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L929:
-L927:
-mov word ptr (-12)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,word ptr (-28)[ebp]
-lea edi,[esi][edi]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,7
-je L931
-mov dword ptr (-8)[ebp],58
-cmp dword ptr (-4)[ebp],0
-je L933
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L933:
-L931:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-32)[ebp]
-lea edi,[esi][edi]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,7
-je L935
-mov dword ptr (-8)[ebp],59
-cmp dword ptr (-4)[ebp],0
-je L937
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L937:
-L935:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-36)[ebp]
-lea edi,[esi][edi]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,7
-je L939
-mov dword ptr (-8)[ebp],60
-cmp dword ptr (-4)[ebp],0
-je L941
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L941:
-L939:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-40)[ebp]
-lea edi,[esi][edi]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,7
-je L943
-mov dword ptr (-8)[ebp],61
-cmp dword ptr (-4)[ebp],0
-je L945
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L945:
-L943:
-mov word ptr (-12)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-movsx edi,word ptr (-12)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fadd dword ptr (-56)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,7
-je L947
-mov dword ptr (-8)[ebp],62
-cmp dword ptr (-4)[ebp],0
-je L949
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L949:
-L947:
-mov word ptr (-12)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-movsx edi,word ptr (-12)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fadd qword ptr (-64)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,7
-je L951
-mov dword ptr (-8)[ebp],63
-cmp dword ptr (-4)[ebp],0
-je L953
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L953:
-L951:
-mov dword ptr (-16)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-add dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],7
-je L955
-mov dword ptr (-8)[ebp],64
-cmp dword ptr (-4)[ebp],0
-je L957
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L957:
-L955:
-mov dword ptr (-16)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-add dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],7
-je L959
-mov dword ptr (-8)[ebp],65
-cmp dword ptr (-4)[ebp],0
-je L961
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L961:
-L959:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-add dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],7
-je L963
-mov dword ptr (-8)[ebp],66
-cmp dword ptr (-4)[ebp],0
-je L965
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L965:
-L963:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-add dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],7
-je L967
-mov dword ptr (-8)[ebp],67
-cmp dword ptr (-4)[ebp],0
-je L969
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L969:
-L967:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-40)[ebp]
-lea edi,[esi][edi]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],7
-je L971
-mov dword ptr (-8)[ebp],68
-cmp dword ptr (-4)[ebp],0
-je L973
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L973:
-L971:
-mov dword ptr (-16)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-16)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fadd dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],7
-je L975
-mov dword ptr (-8)[ebp],69
-cmp dword ptr (-4)[ebp],0
-je L977
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L977:
-L975:
-mov dword ptr (-16)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fild dword ptr (-16)[ebp]
-fadd qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],7
-je L979
-mov dword ptr (-8)[ebp],70
-cmp dword ptr (-4)[ebp],0
-je L981
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L981:
-L979:
-mov dword ptr (-20)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-add dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],7
-je L983
-mov dword ptr (-8)[ebp],71
-cmp dword ptr (-4)[ebp],0
-je L985
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L985:
-L983:
-mov dword ptr (-20)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-add dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],7
-je L987
-mov dword ptr (-8)[ebp],72
-cmp dword ptr (-4)[ebp],0
-je L989
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L989:
-L987:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-add dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],7
-je L991
-mov dword ptr (-8)[ebp],73
-cmp dword ptr (-4)[ebp],0
-je L993
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L993:
-L991:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-add dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],7
-je L995
-mov dword ptr (-8)[ebp],74
-cmp dword ptr (-4)[ebp],0
-je L997
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L997:
-L995:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-40)[ebp]
-lea edi,[esi][edi]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],7
-je L999
-mov dword ptr (-8)[ebp],75
-cmp dword ptr (-4)[ebp],0
-je L1001
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1001:
-L999:
-mov dword ptr (-20)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-20)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fadd dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],7
-je L1003
-mov dword ptr (-8)[ebp],76
-cmp dword ptr (-4)[ebp],0
-je L1005
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1005:
-L1003:
-mov dword ptr (-20)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fild dword ptr (-20)[ebp]
-fadd qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],7
-je L1007
-mov dword ptr (-8)[ebp],77
-cmp dword ptr (-4)[ebp],0
-je L1009
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1009:
-L1007:
-mov dword ptr (-24)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-add dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,7
-je L1011
-mov dword ptr (-8)[ebp],78
-cmp dword ptr (-4)[ebp],0
-je L1013
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1013:
-L1011:
-mov dword ptr (-24)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-add dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,7
-je L1015
-mov dword ptr (-8)[ebp],79
-cmp dword ptr (-4)[ebp],0
-je L1017
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1017:
-L1015:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-add dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,7
-je L1019
-mov dword ptr (-8)[ebp],80
-cmp dword ptr (-4)[ebp],0
-je L1021
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1021:
-L1019:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-add dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,7
-je L1023
-mov dword ptr (-8)[ebp],81
-cmp dword ptr (-4)[ebp],0
-je L1025
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1025:
-L1023:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-add dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,7
-je L1027
-mov dword ptr (-8)[ebp],82
-cmp dword ptr (-4)[ebp],0
-je L1029
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1029:
-L1027:
-mov dword ptr (-24)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-24)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fadd dword ptr (-56)[ebp]
-fstp dword ptr (-128)[ebp]
-fld dword ptr (L828)
-fcomp dword ptr (-128)[ebp]
-fstsw ax
-sahf
-ja L1032
-fld dword ptr (-128)[ebp]
-fsub dword ptr (L828)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-124)[ebp],edi
-jmp L1033
-L1032:
-fld dword ptr (-128)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-124)[ebp],edi
-L1033:
-mov edi,dword ptr (-124)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,7
-je L1034
-mov dword ptr (-8)[ebp],83
-cmp dword ptr (-4)[ebp],0
-je L1036
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1036:
-L1034:
-mov dword ptr (-24)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-mov edi,dword ptr (-24)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fadd qword ptr (-64)[ebp]
-fstp qword ptr (-144)[ebp]
-fld qword ptr (L836)
-fcomp qword ptr (-144)[ebp]
-fstsw ax
-sahf
-ja L1039
-fld qword ptr (-144)[ebp]
-fsub qword ptr (L836)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-136)[ebp],edi
-jmp L1040
-L1039:
-fld qword ptr (-144)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-136)[ebp],edi
-L1040:
-mov edi,dword ptr (-136)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,7
-je L1041
-mov dword ptr (-8)[ebp],84
-cmp dword ptr (-4)[ebp],0
-je L1043
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1043:
-L1041:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov byte ptr (-25)[ebp],2
-fld dword ptr (-44)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1047)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1045
-mov dword ptr (-8)[ebp],85
-cmp dword ptr (-4)[ebp],0
-je L1048
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1048:
-L1045:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov word ptr (-28)[ebp],2
-fld dword ptr (-44)[ebp]
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1047)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1050
-mov dword ptr (-8)[ebp],86
-cmp dword ptr (-4)[ebp],0
-je L1052
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1052:
-L1050:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-32)[ebp],2
-fld dword ptr (-44)[ebp]
-mov edi,dword ptr (-32)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1047)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1054
-mov dword ptr (-8)[ebp],87
-cmp dword ptr (-4)[ebp],0
-je L1056
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1056:
-L1054:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-36)[ebp],2
-fld dword ptr (-44)[ebp]
-mov edi,dword ptr (-36)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1047)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1058
-mov dword ptr (-8)[ebp],88
-cmp dword ptr (-4)[ebp],0
-je L1060
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1060:
-L1058:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld dword ptr (-44)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1047)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1062
-mov dword ptr (-8)[ebp],89
-cmp dword ptr (-4)[ebp],0
-je L1064
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1064:
-L1062:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-44)[ebp]
-fadd dword ptr (-56)[ebp]
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1047)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1066
-mov dword ptr (-8)[ebp],90
-cmp dword ptr (-4)[ebp],0
-je L1068
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1068:
-L1066:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld dword ptr (-44)[ebp]
-fadd qword ptr (-64)[ebp]
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1047)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1070
-mov dword ptr (-8)[ebp],91
-cmp dword ptr (-4)[ebp],0
-je L1072
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1072:
-L1070:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov byte ptr (-25)[ebp],2
-fld qword ptr (-52)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1076)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1074
-mov dword ptr (-8)[ebp],92
-cmp dword ptr (-4)[ebp],0
-je L1077
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1077:
-L1074:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov word ptr (-28)[ebp],2
-fld qword ptr (-52)[ebp]
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1076)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1079
-mov dword ptr (-8)[ebp],93
-cmp dword ptr (-4)[ebp],0
-je L1081
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1081:
-L1079:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-32)[ebp],2
-fld qword ptr (-52)[ebp]
-fild dword ptr (-32)[ebp]
-faddp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1076)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1083
-mov dword ptr (-8)[ebp],94
-cmp dword ptr (-4)[ebp],0
-je L1085
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1085:
-L1083:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-36)[ebp],2
-fld qword ptr (-52)[ebp]
-fild dword ptr (-36)[ebp]
-faddp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1076)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1087
-mov dword ptr (-8)[ebp],95
-cmp dword ptr (-4)[ebp],0
-je L1089
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1089:
-L1087:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld qword ptr (-52)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-faddp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1076)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1091
-mov dword ptr (-8)[ebp],96
-cmp dword ptr (-4)[ebp],0
-je L1093
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1093:
-L1091:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld qword ptr (-52)[ebp]
-fadd dword ptr (-56)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1076)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1095
-mov dword ptr (-8)[ebp],97
-cmp dword ptr (-4)[ebp],0
-je L1097
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1097:
-L1095:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-52)[ebp]
-fadd qword ptr (-64)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1076)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1099
-mov dword ptr (-8)[ebp],98
-cmp dword ptr (-4)[ebp],0
-je L1101
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1101:
-L1099:
-mov byte ptr (-9)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-sub edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,3
-je L1103
-mov dword ptr (-8)[ebp],99
-cmp dword ptr (-4)[ebp],0
-je L1105
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1105:
-L1103:
-mov byte ptr (-9)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,word ptr (-28)[ebp]
-sub edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,3
-je L1107
-mov dword ptr (-8)[ebp],100
-cmp dword ptr (-4)[ebp],0
-je L1109
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1109:
-L1107:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-sub edi,dword ptr (-32)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,3
-je L1111
-mov dword ptr (-8)[ebp],101
-cmp dword ptr (-4)[ebp],0
-je L1113
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1113:
-L1111:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-sub edi,dword ptr (-36)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,3
-je L1115
-mov dword ptr (-8)[ebp],102
-cmp dword ptr (-4)[ebp],0
-je L1117
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1117:
-L1115:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-sub edi,dword ptr (-40)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,3
-je L1119
-mov dword ptr (-8)[ebp],103
-cmp dword ptr (-4)[ebp],0
-je L1121
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1121:
-L1119:
-mov byte ptr (-9)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-movsx edi,byte ptr (-9)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsub dword ptr (-56)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,3
-je L1123
-mov dword ptr (-8)[ebp],104
-cmp dword ptr (-4)[ebp],0
-je L1125
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1125:
-L1123:
-mov byte ptr (-9)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-movsx edi,byte ptr (-9)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsub qword ptr (-64)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,3
-je L1127
-mov dword ptr (-8)[ebp],105
-cmp dword ptr (-4)[ebp],0
-je L1129
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1129:
-L1127:
-mov word ptr (-12)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-sub edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,3
-je L1131
-mov dword ptr (-8)[ebp],106
-cmp dword ptr (-4)[ebp],0
-je L1133
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1133:
-L1131:
-mov word ptr (-12)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,word ptr (-28)[ebp]
-sub edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,3
-je L1135
-mov dword ptr (-8)[ebp],107
-cmp dword ptr (-4)[ebp],0
-je L1137
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1137:
-L1135:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-sub edi,dword ptr (-32)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,3
-je L1139
-mov dword ptr (-8)[ebp],108
-cmp dword ptr (-4)[ebp],0
-je L1141
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1141:
-L1139:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-sub edi,dword ptr (-36)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,3
-je L1143
-mov dword ptr (-8)[ebp],109
-cmp dword ptr (-4)[ebp],0
-je L1145
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1145:
-L1143:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-sub edi,dword ptr (-40)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,3
-je L1147
-mov dword ptr (-8)[ebp],110
-cmp dword ptr (-4)[ebp],0
-je L1149
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1149:
-L1147:
-mov word ptr (-12)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-movsx edi,word ptr (-12)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsub dword ptr (-56)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,3
-je L1151
-mov dword ptr (-8)[ebp],111
-cmp dword ptr (-4)[ebp],0
-je L1153
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1153:
-L1151:
-mov word ptr (-12)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-movsx edi,word ptr (-12)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsub qword ptr (-64)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,3
-je L1155
-mov dword ptr (-8)[ebp],112
-cmp dword ptr (-4)[ebp],0
-je L1157
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1157:
-L1155:
-mov dword ptr (-16)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-sub dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],3
-je L1159
-mov dword ptr (-8)[ebp],113
-cmp dword ptr (-4)[ebp],0
-je L1161
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1161:
-L1159:
-mov dword ptr (-16)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-sub dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],3
-je L1163
-mov dword ptr (-8)[ebp],114
-cmp dword ptr (-4)[ebp],0
-je L1165
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1165:
-L1163:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-sub dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],3
-je L1167
-mov dword ptr (-8)[ebp],115
-cmp dword ptr (-4)[ebp],0
-je L1169
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1169:
-L1167:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-sub dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],3
-je L1171
-mov dword ptr (-8)[ebp],116
-cmp dword ptr (-4)[ebp],0
-je L1173
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1173:
-L1171:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-sub edi,dword ptr (-40)[ebp]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],3
-je L1175
-mov dword ptr (-8)[ebp],117
-cmp dword ptr (-4)[ebp],0
-je L1177
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1177:
-L1175:
-mov dword ptr (-16)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-16)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsub dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],3
-je L1179
-mov dword ptr (-8)[ebp],118
-cmp dword ptr (-4)[ebp],0
-je L1181
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1181:
-L1179:
-mov dword ptr (-16)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fild dword ptr (-16)[ebp]
-fsub qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],3
-je L1183
-mov dword ptr (-8)[ebp],119
-cmp dword ptr (-4)[ebp],0
-je L1185
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1185:
-L1183:
-mov dword ptr (-20)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-sub dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],3
-je L1187
-mov dword ptr (-8)[ebp],120
-cmp dword ptr (-4)[ebp],0
-je L1189
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1189:
-L1187:
-mov dword ptr (-20)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-sub dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],3
-je L1191
-mov dword ptr (-8)[ebp],121
-cmp dword ptr (-4)[ebp],0
-je L1193
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1193:
-L1191:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-sub dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],3
-je L1195
-mov dword ptr (-8)[ebp],122
-cmp dword ptr (-4)[ebp],0
-je L1197
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1197:
-L1195:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-sub dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],3
-je L1199
-mov dword ptr (-8)[ebp],123
-cmp dword ptr (-4)[ebp],0
-je L1201
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1201:
-L1199:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-sub edi,dword ptr (-40)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],3
-je L1203
-mov dword ptr (-8)[ebp],124
-cmp dword ptr (-4)[ebp],0
-je L1205
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1205:
-L1203:
-mov dword ptr (-20)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-20)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsub dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],3
-je L1207
-mov dword ptr (-8)[ebp],125
-cmp dword ptr (-4)[ebp],0
-je L1209
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1209:
-L1207:
-mov dword ptr (-20)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fild dword ptr (-20)[ebp]
-fsub qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],3
-je L1211
-mov dword ptr (-8)[ebp],126
-cmp dword ptr (-4)[ebp],0
-je L1213
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1213:
-L1211:
-mov dword ptr (-24)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-25)[ebp]
-sub dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,3
-je L1215
-mov dword ptr (-8)[ebp],127
-cmp dword ptr (-4)[ebp],0
-je L1217
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1217:
-L1215:
-mov dword ptr (-24)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-28)[ebp]
-sub dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,3
-je L1219
-mov dword ptr (-8)[ebp],128
-cmp dword ptr (-4)[ebp],0
-je L1221
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1221:
-L1219:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-32)[ebp]
-sub dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,3
-je L1223
-mov dword ptr (-8)[ebp],129
-cmp dword ptr (-4)[ebp],0
-je L1225
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1225:
-L1223:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-36)[ebp]
-sub dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,3
-je L1227
-mov dword ptr (-8)[ebp],130
-cmp dword ptr (-4)[ebp],0
-je L1229
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1229:
-L1227:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-sub dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,3
-je L1231
-mov dword ptr (-8)[ebp],131
-cmp dword ptr (-4)[ebp],0
-je L1233
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1233:
-L1231:
-mov dword ptr (-24)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-24)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fsub dword ptr (-56)[ebp]
-fstp dword ptr (-160)[ebp]
-fld dword ptr (L828)
-fcomp dword ptr (-160)[ebp]
-fstsw ax
-sahf
-ja L1236
-fld dword ptr (-160)[ebp]
-fsub dword ptr (L828)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-156)[ebp],edi
-jmp L1237
-L1236:
-fld dword ptr (-160)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-156)[ebp],edi
-L1237:
-mov edi,dword ptr (-156)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,3
-je L1238
-mov dword ptr (-8)[ebp],132
-cmp dword ptr (-4)[ebp],0
-je L1240
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1240:
-L1238:
-mov dword ptr (-24)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-mov edi,dword ptr (-24)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fsub qword ptr (-64)[ebp]
-fstp qword ptr (-176)[ebp]
-fld qword ptr (L836)
-fcomp qword ptr (-176)[ebp]
-fstsw ax
-sahf
-ja L1243
-fld qword ptr (-176)[ebp]
-fsub qword ptr (L836)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-168)[ebp],edi
-jmp L1244
-L1243:
-fld qword ptr (-176)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-168)[ebp],edi
-L1244:
-mov edi,dword ptr (-168)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,3
-je L1245
-mov dword ptr (-8)[ebp],133
-cmp dword ptr (-4)[ebp],0
-je L1247
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1247:
-L1245:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov byte ptr (-25)[ebp],2
-fld dword ptr (-44)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsubp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1251)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1249
-mov dword ptr (-8)[ebp],134
-cmp dword ptr (-4)[ebp],0
-je L1252
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1252:
-L1249:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov word ptr (-28)[ebp],2
-fld dword ptr (-44)[ebp]
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsubp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1251)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1254
-mov dword ptr (-8)[ebp],135
-cmp dword ptr (-4)[ebp],0
-je L1256
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1256:
-L1254:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-32)[ebp],2
-fld dword ptr (-44)[ebp]
-mov edi,dword ptr (-32)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsubp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1251)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1258
-mov dword ptr (-8)[ebp],136
-cmp dword ptr (-4)[ebp],0
-je L1260
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1260:
-L1258:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-36)[ebp],2
-fld dword ptr (-44)[ebp]
-mov edi,dword ptr (-36)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsubp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1251)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1262
-mov dword ptr (-8)[ebp],137
-cmp dword ptr (-4)[ebp],0
-je L1264
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1264:
-L1262:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld dword ptr (-44)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fsubp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1251)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1266
-mov dword ptr (-8)[ebp],138
-cmp dword ptr (-4)[ebp],0
-je L1268
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1268:
-L1266:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-44)[ebp]
-fsub dword ptr (-56)[ebp]
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1251)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1270
-mov dword ptr (-8)[ebp],139
-cmp dword ptr (-4)[ebp],0
-je L1272
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1272:
-L1270:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld dword ptr (-44)[ebp]
-fsub qword ptr (-64)[ebp]
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1251)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1274
-mov dword ptr (-8)[ebp],140
-cmp dword ptr (-4)[ebp],0
-je L1276
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1276:
-L1274:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov byte ptr (-25)[ebp],2
-fld qword ptr (-52)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsubp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1280)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1278
-mov dword ptr (-8)[ebp],141
-cmp dword ptr (-4)[ebp],0
-je L1281
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1281:
-L1278:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov word ptr (-28)[ebp],2
-fld qword ptr (-52)[ebp]
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fsubp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1280)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1283
-mov dword ptr (-8)[ebp],142
-cmp dword ptr (-4)[ebp],0
-je L1285
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1285:
-L1283:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-32)[ebp],2
-fld qword ptr (-52)[ebp]
-fild dword ptr (-32)[ebp]
-fsubp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1280)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1287
-mov dword ptr (-8)[ebp],143
-cmp dword ptr (-4)[ebp],0
-je L1289
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1289:
-L1287:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-36)[ebp],2
-fld qword ptr (-52)[ebp]
-fild dword ptr (-36)[ebp]
-fsubp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1280)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1291
-mov dword ptr (-8)[ebp],144
-cmp dword ptr (-4)[ebp],0
-je L1293
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1293:
-L1291:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld qword ptr (-52)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fsubp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1280)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1295
-mov dword ptr (-8)[ebp],145
-cmp dword ptr (-4)[ebp],0
-je L1297
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1297:
-L1295:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld qword ptr (-52)[ebp]
-fsub dword ptr (-56)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1280)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1299
-mov dword ptr (-8)[ebp],146
-cmp dword ptr (-4)[ebp],0
-je L1301
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1301:
-L1299:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-52)[ebp]
-fsub qword ptr (-64)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1280)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1303
-mov dword ptr (-8)[ebp],147
-cmp dword ptr (-4)[ebp],0
-je L1305
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1305:
-L1303:
-mov byte ptr (-9)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-imul edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,10
-je L1307
-mov dword ptr (-8)[ebp],148
-cmp dword ptr (-4)[ebp],0
-je L1309
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1309:
-L1307:
-mov byte ptr (-9)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,word ptr (-28)[ebp]
-imul edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,10
-je L1311
-mov dword ptr (-8)[ebp],149
-cmp dword ptr (-4)[ebp],0
-je L1313
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1313:
-L1311:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-32)[ebp]
-imul edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,10
-je L1315
-mov dword ptr (-8)[ebp],150
-cmp dword ptr (-4)[ebp],0
-je L1317
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1317:
-L1315:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-36)[ebp]
-imul edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,10
-je L1319
-mov dword ptr (-8)[ebp],151
-cmp dword ptr (-4)[ebp],0
-je L1321
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1321:
-L1319:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov eax,edi
-mul dword ptr (-40)[ebp]
-mov edi,eax
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,10
-je L1323
-mov dword ptr (-8)[ebp],152
-cmp dword ptr (-4)[ebp],0
-je L1325
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1325:
-L1323:
-mov byte ptr (-9)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-movsx edi,byte ptr (-9)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmul dword ptr (-56)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,10
-je L1327
-mov dword ptr (-8)[ebp],153
-cmp dword ptr (-4)[ebp],0
-je L1329
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1329:
-L1327:
-mov byte ptr (-9)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-movsx edi,byte ptr (-9)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmul qword ptr (-64)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,10
-je L1331
-mov dword ptr (-8)[ebp],154
-cmp dword ptr (-4)[ebp],0
-je L1333
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1333:
-L1331:
-mov word ptr (-12)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-imul edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,10
-je L1335
-mov dword ptr (-8)[ebp],155
-cmp dword ptr (-4)[ebp],0
-je L1337
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1337:
-L1335:
-mov word ptr (-12)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,word ptr (-28)[ebp]
-imul edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,10
-je L1339
-mov dword ptr (-8)[ebp],156
-cmp dword ptr (-4)[ebp],0
-je L1341
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1341:
-L1339:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-32)[ebp]
-imul edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,10
-je L1343
-mov dword ptr (-8)[ebp],157
-cmp dword ptr (-4)[ebp],0
-je L1345
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1345:
-L1343:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-36)[ebp]
-imul edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,10
-je L1347
-mov dword ptr (-8)[ebp],158
-cmp dword ptr (-4)[ebp],0
-je L1349
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1349:
-L1347:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov eax,edi
-mul dword ptr (-40)[ebp]
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,10
-je L1351
-mov dword ptr (-8)[ebp],159
-cmp dword ptr (-4)[ebp],0
-je L1353
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1353:
-L1351:
-mov word ptr (-12)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-movsx edi,word ptr (-12)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmul dword ptr (-56)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,10
-je L1355
-mov dword ptr (-8)[ebp],160
-cmp dword ptr (-4)[ebp],0
-je L1357
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1357:
-L1355:
-mov word ptr (-12)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-movsx edi,word ptr (-12)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmul qword ptr (-64)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,10
-je L1359
-mov dword ptr (-8)[ebp],161
-cmp dword ptr (-4)[ebp],0
-je L1361
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1361:
-L1359:
-mov dword ptr (-16)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-imul edi,esi
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],10
-je L1363
-mov dword ptr (-8)[ebp],162
-cmp dword ptr (-4)[ebp],0
-je L1365
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1365:
-L1363:
-mov dword ptr (-16)[ebp],5
-mov word ptr (-28)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-movsx esi,word ptr (-28)[ebp]
-imul edi,esi
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],10
-je L1367
-mov dword ptr (-8)[ebp],163
-cmp dword ptr (-4)[ebp],0
-je L1369
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1369:
-L1367:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-32)[ebp]
-imul edi,esi
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],10
-je L1371
-mov dword ptr (-8)[ebp],164
-cmp dword ptr (-4)[ebp],0
-je L1373
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1373:
-L1371:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-36)[ebp]
-imul edi,esi
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],10
-je L1375
-mov dword ptr (-8)[ebp],165
-cmp dword ptr (-4)[ebp],0
-je L1377
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1377:
-L1375:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov eax,edi
-mul dword ptr (-40)[ebp]
-mov edi,eax
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],10
-je L1379
-mov dword ptr (-8)[ebp],166
-cmp dword ptr (-4)[ebp],0
-je L1381
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1381:
-L1379:
-mov dword ptr (-16)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-16)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmul dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],10
-je L1383
-mov dword ptr (-8)[ebp],167
-cmp dword ptr (-4)[ebp],0
-je L1385
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1385:
-L1383:
-mov dword ptr (-16)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fild dword ptr (-16)[ebp]
-fmul qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],10
-je L1387
-mov dword ptr (-8)[ebp],168
-cmp dword ptr (-4)[ebp],0
-je L1389
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1389:
-L1387:
-mov dword ptr (-20)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-imul edi,esi
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],10
-je L1391
-mov dword ptr (-8)[ebp],169
-cmp dword ptr (-4)[ebp],0
-je L1393
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1393:
-L1391:
-mov dword ptr (-20)[ebp],5
-mov word ptr (-28)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-movsx esi,word ptr (-28)[ebp]
-imul edi,esi
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],10
-je L1395
-mov dword ptr (-8)[ebp],170
-cmp dword ptr (-4)[ebp],0
-je L1397
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1397:
-L1395:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-32)[ebp]
-imul edi,esi
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],10
-je L1399
-mov dword ptr (-8)[ebp],171
-cmp dword ptr (-4)[ebp],0
-je L1401
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1401:
-L1399:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-36)[ebp]
-imul edi,esi
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],10
-je L1403
-mov dword ptr (-8)[ebp],172
-cmp dword ptr (-4)[ebp],0
-je L1405
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1405:
-L1403:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov eax,edi
-mul dword ptr (-40)[ebp]
-mov edi,eax
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],10
-je L1407
-mov dword ptr (-8)[ebp],173
-cmp dword ptr (-4)[ebp],0
-je L1409
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1409:
-L1407:
-mov dword ptr (-20)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-20)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmul dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],10
-je L1411
-mov dword ptr (-8)[ebp],174
-cmp dword ptr (-4)[ebp],0
-je L1413
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1413:
-L1411:
-mov dword ptr (-20)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fild dword ptr (-20)[ebp]
-fmul qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],10
-je L1415
-mov dword ptr (-8)[ebp],175
-cmp dword ptr (-4)[ebp],0
-je L1417
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1417:
-L1415:
-mov dword ptr (-24)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-mul edi
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,10
-je L1419
-mov dword ptr (-8)[ebp],176
-cmp dword ptr (-4)[ebp],0
-je L1421
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1421:
-L1419:
-mov dword ptr (-24)[ebp],5
-mov word ptr (-28)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-movsx edi,word ptr (-28)[ebp]
-mul edi
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,10
-je L1423
-mov dword ptr (-8)[ebp],177
-cmp dword ptr (-4)[ebp],0
-je L1425
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1425:
-L1423:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-mov edi,dword ptr (-32)[ebp]
-mul edi
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,10
-je L1427
-mov dword ptr (-8)[ebp],178
-cmp dword ptr (-4)[ebp],0
-je L1429
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1429:
-L1427:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-mov edi,dword ptr (-36)[ebp]
-mul edi
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,10
-je L1431
-mov dword ptr (-8)[ebp],179
-cmp dword ptr (-4)[ebp],0
-je L1433
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1433:
-L1431:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-mul dword ptr (-40)[ebp]
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,10
-je L1435
-mov dword ptr (-8)[ebp],180
-cmp dword ptr (-4)[ebp],0
-je L1437
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1437:
-L1435:
-mov dword ptr (-24)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-24)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fmul dword ptr (-56)[ebp]
-fstp dword ptr (-192)[ebp]
-fld dword ptr (L828)
-fcomp dword ptr (-192)[ebp]
-fstsw ax
-sahf
-ja L1440
-fld dword ptr (-192)[ebp]
-fsub dword ptr (L828)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-188)[ebp],edi
-jmp L1441
-L1440:
-fld dword ptr (-192)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-188)[ebp],edi
-L1441:
-mov edi,dword ptr (-188)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,10
-je L1442
-mov dword ptr (-8)[ebp],181
-cmp dword ptr (-4)[ebp],0
-je L1444
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1444:
-L1442:
-mov dword ptr (-24)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-mov edi,dword ptr (-24)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fmul qword ptr (-64)[ebp]
-fstp qword ptr (-208)[ebp]
-fld qword ptr (L836)
-fcomp qword ptr (-208)[ebp]
-fstsw ax
-sahf
-ja L1447
-fld qword ptr (-208)[ebp]
-fsub qword ptr (L836)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-200)[ebp],edi
-jmp L1448
-L1447:
-fld qword ptr (-208)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-200)[ebp],edi
-L1448:
-mov edi,dword ptr (-200)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,10
-je L1449
-mov dword ptr (-8)[ebp],182
-cmp dword ptr (-4)[ebp],0
-je L1451
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1451:
-L1449:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov byte ptr (-25)[ebp],2
-fld dword ptr (-44)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1455)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1453
-mov dword ptr (-8)[ebp],183
-cmp dword ptr (-4)[ebp],0
-je L1456
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1456:
-L1453:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov word ptr (-28)[ebp],2
-fld dword ptr (-44)[ebp]
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1455)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1458
-mov dword ptr (-8)[ebp],184
-cmp dword ptr (-4)[ebp],0
-je L1460
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1460:
-L1458:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-32)[ebp],2
-fld dword ptr (-44)[ebp]
-mov edi,dword ptr (-32)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1455)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1462
-mov dword ptr (-8)[ebp],185
-cmp dword ptr (-4)[ebp],0
-je L1464
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1464:
-L1462:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-36)[ebp],2
-fld dword ptr (-44)[ebp]
-mov edi,dword ptr (-36)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1455)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1466
-mov dword ptr (-8)[ebp],186
-cmp dword ptr (-4)[ebp],0
-je L1468
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1468:
-L1466:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld dword ptr (-44)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1455)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1470
-mov dword ptr (-8)[ebp],187
-cmp dword ptr (-4)[ebp],0
-je L1472
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1472:
-L1470:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-44)[ebp]
-fmul dword ptr (-56)[ebp]
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1455)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1474
-mov dword ptr (-8)[ebp],188
-cmp dword ptr (-4)[ebp],0
-je L1476
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1476:
-L1474:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld dword ptr (-44)[ebp]
-fmul qword ptr (-64)[ebp]
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L1455)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1478
-mov dword ptr (-8)[ebp],189
-cmp dword ptr (-4)[ebp],0
-je L1480
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1480:
-L1478:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov byte ptr (-25)[ebp],2
-fld qword ptr (-52)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1484)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1482
-mov dword ptr (-8)[ebp],190
-cmp dword ptr (-4)[ebp],0
-je L1485
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1485:
-L1482:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov word ptr (-28)[ebp],2
-fld qword ptr (-52)[ebp]
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1484)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1487
-mov dword ptr (-8)[ebp],191
-cmp dword ptr (-4)[ebp],0
-je L1489
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1489:
-L1487:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-32)[ebp],2
-fld qword ptr (-52)[ebp]
-fild dword ptr (-32)[ebp]
-fmulp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1484)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1491
-mov dword ptr (-8)[ebp],192
-cmp dword ptr (-4)[ebp],0
-je L1493
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1493:
-L1491:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-36)[ebp],2
-fld qword ptr (-52)[ebp]
-fild dword ptr (-36)[ebp]
-fmulp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1484)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1495
-mov dword ptr (-8)[ebp],193
-cmp dword ptr (-4)[ebp],0
-je L1497
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1497:
-L1495:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld qword ptr (-52)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fmulp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1484)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1499
-mov dword ptr (-8)[ebp],194
-cmp dword ptr (-4)[ebp],0
-je L1501
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1501:
-L1499:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld qword ptr (-52)[ebp]
-fmul dword ptr (-56)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1484)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1503
-mov dword ptr (-8)[ebp],195
-cmp dword ptr (-4)[ebp],0
-je L1505
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1505:
-L1503:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-52)[ebp]
-fmul qword ptr (-64)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1484)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1507
-mov dword ptr (-8)[ebp],196
-cmp dword ptr (-4)[ebp],0
-je L1509
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1509:
-L1507:
-mov byte ptr (-9)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx eax,byte ptr (-9)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-cdq
-idiv edi
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L1511
-mov dword ptr (-8)[ebp],197
-cmp dword ptr (-4)[ebp],0
-je L1513
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1513:
-L1511:
-mov byte ptr (-9)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx eax,byte ptr (-9)[ebp]
-movsx edi,word ptr (-28)[ebp]
-cdq
-idiv edi
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L1515
-mov dword ptr (-8)[ebp],198
-cmp dword ptr (-4)[ebp],0
-je L1517
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1517:
-L1515:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx eax,byte ptr (-9)[ebp]
-mov edi,dword ptr (-32)[ebp]
-cdq
-idiv edi
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L1519
-mov dword ptr (-8)[ebp],199
-cmp dword ptr (-4)[ebp],0
-je L1521
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1521:
-L1519:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx eax,byte ptr (-9)[ebp]
-mov edi,dword ptr (-36)[ebp]
-cdq
-idiv edi
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L1523
-mov dword ptr (-8)[ebp],200
-cmp dword ptr (-4)[ebp],0
-je L1525
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1525:
-L1523:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov eax,edi
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov edi,eax
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L1527
-mov dword ptr (-8)[ebp],201
-cmp dword ptr (-4)[ebp],0
-je L1529
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1529:
-L1527:
-mov byte ptr (-9)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-movsx edi,byte ptr (-9)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdiv dword ptr (-56)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L1531
-mov dword ptr (-8)[ebp],202
-cmp dword ptr (-4)[ebp],0
-je L1533
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1533:
-L1531:
-mov byte ptr (-9)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-movsx edi,byte ptr (-9)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdiv qword ptr (-64)[ebp]
-call __ftol
-mov ebx,eax
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,2
-je L1535
-mov dword ptr (-8)[ebp],203
-cmp dword ptr (-4)[ebp],0
-je L1537
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1537:
-L1535:
-mov word ptr (-12)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx eax,word ptr (-12)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-cdq
-idiv edi
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L1539
-mov dword ptr (-8)[ebp],204
-cmp dword ptr (-4)[ebp],0
-je L1541
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1541:
-L1539:
-mov word ptr (-12)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx eax,word ptr (-12)[ebp]
-movsx edi,word ptr (-28)[ebp]
-cdq
-idiv edi
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L1543
-mov dword ptr (-8)[ebp],205
-cmp dword ptr (-4)[ebp],0
-je L1545
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1545:
-L1543:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx eax,word ptr (-12)[ebp]
-mov edi,dword ptr (-32)[ebp]
-cdq
-idiv edi
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L1547
-mov dword ptr (-8)[ebp],206
-cmp dword ptr (-4)[ebp],0
-je L1549
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1549:
-L1547:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx eax,word ptr (-12)[ebp]
-mov edi,dword ptr (-36)[ebp]
-cdq
-idiv edi
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L1551
-mov dword ptr (-8)[ebp],207
-cmp dword ptr (-4)[ebp],0
-je L1553
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1553:
-L1551:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov eax,edi
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L1555
-mov dword ptr (-8)[ebp],208
-cmp dword ptr (-4)[ebp],0
-je L1557
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1557:
-L1555:
-mov word ptr (-12)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-movsx edi,word ptr (-12)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdiv dword ptr (-56)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L1559
-mov dword ptr (-8)[ebp],209
-cmp dword ptr (-4)[ebp],0
-je L1561
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1561:
-L1559:
-mov word ptr (-12)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-movsx edi,word ptr (-12)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdiv qword ptr (-64)[ebp]
-call __ftol
-mov edi,eax
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,2
-je L1563
-mov dword ptr (-8)[ebp],210
-cmp dword ptr (-4)[ebp],0
-je L1565
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1565:
-L1563:
-mov dword ptr (-16)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov eax,dword ptr (-16)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-cdq
-idiv edi
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],2
-je L1567
-mov dword ptr (-8)[ebp],211
-cmp dword ptr (-4)[ebp],0
-je L1569
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1569:
-L1567:
-mov dword ptr (-16)[ebp],5
-mov word ptr (-28)[ebp],2
-mov eax,dword ptr (-16)[ebp]
-movsx edi,word ptr (-28)[ebp]
-cdq
-idiv edi
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],2
-je L1571
-mov dword ptr (-8)[ebp],212
-cmp dword ptr (-4)[ebp],0
-je L1573
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1573:
-L1571:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov eax,dword ptr (-16)[ebp]
-mov edi,dword ptr (-32)[ebp]
-cdq
-idiv edi
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],2
-je L1575
-mov dword ptr (-8)[ebp],213
-cmp dword ptr (-4)[ebp],0
-je L1577
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1577:
-L1575:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov eax,dword ptr (-16)[ebp]
-mov edi,dword ptr (-36)[ebp]
-cdq
-idiv edi
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],2
-je L1579
-mov dword ptr (-8)[ebp],214
-cmp dword ptr (-4)[ebp],0
-je L1581
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1581:
-L1579:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov eax,edi
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov edi,eax
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],2
-je L1583
-mov dword ptr (-8)[ebp],215
-cmp dword ptr (-4)[ebp],0
-je L1585
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1585:
-L1583:
-mov dword ptr (-16)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-16)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdiv dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],2
-je L1587
-mov dword ptr (-8)[ebp],216
-cmp dword ptr (-4)[ebp],0
-je L1589
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1589:
-L1587:
-mov dword ptr (-16)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fild dword ptr (-16)[ebp]
-fdiv qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-16)[ebp],eax
-cmp dword ptr (-16)[ebp],2
-je L1591
-mov dword ptr (-8)[ebp],217
-cmp dword ptr (-4)[ebp],0
-je L1593
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1593:
-L1591:
-mov dword ptr (-20)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov eax,dword ptr (-20)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-cdq
-idiv edi
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],2
-je L1595
-mov dword ptr (-8)[ebp],218
-cmp dword ptr (-4)[ebp],0
-je L1597
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1597:
-L1595:
-mov dword ptr (-20)[ebp],5
-mov word ptr (-28)[ebp],2
-mov eax,dword ptr (-20)[ebp]
-movsx edi,word ptr (-28)[ebp]
-cdq
-idiv edi
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],2
-je L1599
-mov dword ptr (-8)[ebp],219
-cmp dword ptr (-4)[ebp],0
-je L1601
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1601:
-L1599:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov eax,dword ptr (-20)[ebp]
-mov edi,dword ptr (-32)[ebp]
-cdq
-idiv edi
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],2
-je L1603
-mov dword ptr (-8)[ebp],220
-cmp dword ptr (-4)[ebp],0
-je L1605
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1605:
-L1603:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov eax,dword ptr (-20)[ebp]
-mov edi,dword ptr (-36)[ebp]
-cdq
-idiv edi
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],2
-je L1607
-mov dword ptr (-8)[ebp],221
-cmp dword ptr (-4)[ebp],0
-je L1609
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1609:
-L1607:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov eax,edi
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov edi,eax
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],2
-je L1611
-mov dword ptr (-8)[ebp],222
-cmp dword ptr (-4)[ebp],0
-je L1613
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1613:
-L1611:
-mov dword ptr (-20)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-20)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdiv dword ptr (-56)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],2
-je L1615
-mov dword ptr (-8)[ebp],223
-cmp dword ptr (-4)[ebp],0
-je L1617
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1617:
-L1615:
-mov dword ptr (-20)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fild dword ptr (-20)[ebp]
-fdiv qword ptr (-64)[ebp]
-call __ftol
-mov dword ptr (-20)[ebp],eax
-cmp dword ptr (-20)[ebp],2
-je L1619
-mov dword ptr (-8)[ebp],224
-cmp dword ptr (-4)[ebp],0
-je L1621
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1621:
-L1619:
-mov dword ptr (-24)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L1623
-mov dword ptr (-8)[ebp],225
-cmp dword ptr (-4)[ebp],0
-je L1625
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1625:
-L1623:
-mov dword ptr (-24)[ebp],5
-mov word ptr (-28)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-movsx edi,word ptr (-28)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L1627
-mov dword ptr (-8)[ebp],226
-cmp dword ptr (-4)[ebp],0
-je L1629
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1629:
-L1627:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-mov edi,dword ptr (-32)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L1631
-mov dword ptr (-8)[ebp],227
-cmp dword ptr (-4)[ebp],0
-je L1633
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1633:
-L1631:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-mov edi,dword ptr (-36)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L1635
-mov dword ptr (-8)[ebp],228
-cmp dword ptr (-4)[ebp],0
-je L1637
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1637:
-L1635:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],eax
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L1639
-mov dword ptr (-8)[ebp],229
-cmp dword ptr (-4)[ebp],0
-je L1641
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1641:
-L1639:
-mov dword ptr (-24)[ebp],5
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-mov edi,dword ptr (-24)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fdiv dword ptr (-56)[ebp]
-fstp dword ptr (-224)[ebp]
-fld dword ptr (L828)
-fcomp dword ptr (-224)[ebp]
-fstsw ax
-sahf
-ja L1644
-fld dword ptr (-224)[ebp]
-fsub dword ptr (L828)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-220)[ebp],edi
-jmp L1645
-L1644:
-fld dword ptr (-224)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-220)[ebp],edi
-L1645:
-mov edi,dword ptr (-220)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L1646
-mov dword ptr (-8)[ebp],230
-cmp dword ptr (-4)[ebp],0
-je L1648
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1648:
-L1646:
-mov dword ptr (-24)[ebp],5
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-mov edi,dword ptr (-24)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fdiv qword ptr (-64)[ebp]
-fstp qword ptr (-240)[ebp]
-fld qword ptr (L836)
-fcomp qword ptr (-240)[ebp]
-fstsw ax
-sahf
-ja L1651
-fld qword ptr (-240)[ebp]
-fsub qword ptr (L836)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-232)[ebp],edi
-jmp L1652
-L1651:
-fld qword ptr (-240)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-232)[ebp],edi
-L1652:
-mov edi,dword ptr (-232)[ebp]
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,2
-je L1653
-mov dword ptr (-8)[ebp],231
-cmp dword ptr (-4)[ebp],0
-je L1655
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1655:
-L1653:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov byte ptr (-25)[ebp],2
-fld dword ptr (-44)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L1659)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1657
-mov dword ptr (-8)[ebp],232
-cmp dword ptr (-4)[ebp],0
-je L1660
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1660:
-L1657:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov word ptr (-28)[ebp],2
-fld dword ptr (-44)[ebp]
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L1659)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1662
-mov dword ptr (-8)[ebp],233
-cmp dword ptr (-4)[ebp],0
-je L1664
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1664:
-L1662:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-32)[ebp],2
-fld dword ptr (-44)[ebp]
-mov edi,dword ptr (-32)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L1659)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1666
-mov dword ptr (-8)[ebp],234
-cmp dword ptr (-4)[ebp],0
-je L1668
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1668:
-L1666:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-36)[ebp],2
-fld dword ptr (-44)[ebp]
-mov edi,dword ptr (-36)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L1659)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1670
-mov dword ptr (-8)[ebp],235
-cmp dword ptr (-4)[ebp],0
-je L1672
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1672:
-L1670:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld dword ptr (-44)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L1659)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1674
-mov dword ptr (-8)[ebp],236
-cmp dword ptr (-4)[ebp],0
-je L1676
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1676:
-L1674:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld dword ptr (-44)[ebp]
-fdiv dword ptr (-56)[ebp]
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L1659)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1678
-mov dword ptr (-8)[ebp],237
-cmp dword ptr (-4)[ebp],0
-je L1680
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1680:
-L1678:
-fld dword ptr (L841)
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld dword ptr (-44)[ebp]
-fdiv qword ptr (-64)[ebp]
-fstp dword ptr (-44)[ebp]
-fld qword ptr (L1659)
-fcomp dword ptr (-44)[ebp]
-fstsw ax
-sahf
-je L1682
-mov dword ptr (-8)[ebp],238
-cmp dword ptr (-4)[ebp],0
-je L1684
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1684:
-L1682:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov byte ptr (-25)[ebp],2
-fld qword ptr (-52)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1659)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1686
-mov dword ptr (-8)[ebp],239
-cmp dword ptr (-4)[ebp],0
-je L1688
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1688:
-L1686:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov word ptr (-28)[ebp],2
-fld qword ptr (-52)[ebp]
-movsx edi,word ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1659)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1690
-mov dword ptr (-8)[ebp],240
-cmp dword ptr (-4)[ebp],0
-je L1692
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1692:
-L1690:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-32)[ebp],2
-fld qword ptr (-52)[ebp]
-fild dword ptr (-32)[ebp]
-fdivp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1659)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1694
-mov dword ptr (-8)[ebp],241
-cmp dword ptr (-4)[ebp],0
-je L1696
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1696:
-L1694:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-36)[ebp],2
-fld qword ptr (-52)[ebp]
-fild dword ptr (-36)[ebp]
-fdivp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1659)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1698
-mov dword ptr (-8)[ebp],242
-cmp dword ptr (-4)[ebp],0
-je L1700
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1700:
-L1698:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-40)[ebp]
-fld qword ptr (-52)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fdivp st(1),st
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1659)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1702
-mov dword ptr (-8)[ebp],243
-cmp dword ptr (-4)[ebp],0
-je L1704
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1704:
-L1702:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld dword ptr (L529)
-fstp dword ptr (-56)[ebp]
-fld qword ptr (-52)[ebp]
-fdiv dword ptr (-56)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1659)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1706
-mov dword ptr (-8)[ebp],244
-cmp dword ptr (-4)[ebp],0
-je L1708
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1708:
-L1706:
-fld qword ptr (L870)
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L416)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-52)[ebp]
-fdiv qword ptr (-64)[ebp]
-fstp qword ptr (-52)[ebp]
-fld qword ptr (L1659)
-fcomp qword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L1710
-mov dword ptr (-8)[ebp],245
-cmp dword ptr (-4)[ebp],0
-je L1712
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1712:
-L1710:
-mov byte ptr (-9)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx eax,byte ptr (-9)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-cdq
-idiv edi
-mov ebx,edx
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1714
-mov dword ptr (-8)[ebp],246
-cmp dword ptr (-4)[ebp],0
-je L1716
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1716:
-L1714:
-mov byte ptr (-9)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx eax,byte ptr (-9)[ebp]
-movsx edi,word ptr (-28)[ebp]
-cdq
-idiv edi
-mov ebx,edx
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1718
-mov dword ptr (-8)[ebp],247
-cmp dword ptr (-4)[ebp],0
-je L1720
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1720:
-L1718:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx eax,byte ptr (-9)[ebp]
-mov edi,dword ptr (-32)[ebp]
-cdq
-idiv edi
-mov ebx,edx
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1722
-mov dword ptr (-8)[ebp],248
-cmp dword ptr (-4)[ebp],0
-je L1724
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1724:
-L1722:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx eax,byte ptr (-9)[ebp]
-mov edi,dword ptr (-36)[ebp]
-cdq
-idiv edi
-mov ebx,edx
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1726
-mov dword ptr (-8)[ebp],249
-cmp dword ptr (-4)[ebp],0
-je L1728
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1728:
-L1726:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov eax,edi
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov edi,edx
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1730
-mov dword ptr (-8)[ebp],250
-cmp dword ptr (-4)[ebp],0
-je L1732
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1732:
-L1730:
-mov word ptr (-12)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx eax,word ptr (-12)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-cdq
-idiv edi
-mov edi,edx
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1734
-mov dword ptr (-8)[ebp],251
-cmp dword ptr (-4)[ebp],0
-je L1736
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1736:
-L1734:
-mov word ptr (-12)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx eax,word ptr (-12)[ebp]
-movsx edi,word ptr (-28)[ebp]
-cdq
-idiv edi
-mov edi,edx
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1738
-mov dword ptr (-8)[ebp],252
-cmp dword ptr (-4)[ebp],0
-je L1740
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1740:
-L1738:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx eax,word ptr (-12)[ebp]
-mov edi,dword ptr (-32)[ebp]
-cdq
-idiv edi
-mov edi,edx
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1742
-mov dword ptr (-8)[ebp],253
-cmp dword ptr (-4)[ebp],0
-je L1744
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1744:
-L1742:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx eax,word ptr (-12)[ebp]
-mov edi,dword ptr (-36)[ebp]
-cdq
-idiv edi
-mov edi,edx
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1746
-mov dword ptr (-8)[ebp],254
-cmp dword ptr (-4)[ebp],0
-je L1748
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1748:
-L1746:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov eax,edi
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov edi,edx
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1750
-mov dword ptr (-8)[ebp],255
-cmp dword ptr (-4)[ebp],0
-je L1752
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1752:
-L1750:
-mov dword ptr (-16)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov eax,dword ptr (-16)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-cdq
-idiv edi
-mov dword ptr (-16)[ebp],edx
-cmp dword ptr (-16)[ebp],1
-je L1754
-mov dword ptr (-8)[ebp],256
-cmp dword ptr (-4)[ebp],0
-je L1756
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1756:
-L1754:
-mov dword ptr (-16)[ebp],5
-mov word ptr (-28)[ebp],2
-mov eax,dword ptr (-16)[ebp]
-movsx edi,word ptr (-28)[ebp]
-cdq
-idiv edi
-mov dword ptr (-16)[ebp],edx
-cmp dword ptr (-16)[ebp],1
-je L1758
-mov dword ptr (-8)[ebp],257
-cmp dword ptr (-4)[ebp],0
-je L1760
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1760:
-L1758:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov eax,dword ptr (-16)[ebp]
-mov edi,dword ptr (-32)[ebp]
-cdq
-idiv edi
-mov dword ptr (-16)[ebp],edx
-cmp dword ptr (-16)[ebp],1
-je L1762
-mov dword ptr (-8)[ebp],258
-cmp dword ptr (-4)[ebp],0
-je L1764
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1764:
-L1762:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov eax,dword ptr (-16)[ebp]
-mov edi,dword ptr (-36)[ebp]
-cdq
-idiv edi
-mov dword ptr (-16)[ebp],edx
-cmp dword ptr (-16)[ebp],1
-je L1766
-mov dword ptr (-8)[ebp],259
-cmp dword ptr (-4)[ebp],0
-je L1768
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1768:
-L1766:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov eax,edi
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov edi,edx
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],1
-je L1770
-mov dword ptr (-8)[ebp],260
-cmp dword ptr (-4)[ebp],0
-je L1772
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1772:
-L1770:
-mov dword ptr (-20)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov eax,dword ptr (-20)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-cdq
-idiv edi
-mov dword ptr (-20)[ebp],edx
-cmp dword ptr (-20)[ebp],1
-je L1774
-mov dword ptr (-8)[ebp],261
-cmp dword ptr (-4)[ebp],0
-je L1776
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1776:
-L1774:
-mov dword ptr (-20)[ebp],5
-mov word ptr (-28)[ebp],2
-mov eax,dword ptr (-20)[ebp]
-movsx edi,word ptr (-28)[ebp]
-cdq
-idiv edi
-mov dword ptr (-20)[ebp],edx
-cmp dword ptr (-20)[ebp],1
-je L1778
-mov dword ptr (-8)[ebp],262
-cmp dword ptr (-4)[ebp],0
-je L1780
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1780:
-L1778:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov eax,dword ptr (-20)[ebp]
-mov edi,dword ptr (-32)[ebp]
-cdq
-idiv edi
-mov dword ptr (-20)[ebp],edx
-cmp dword ptr (-20)[ebp],1
-je L1782
-mov dword ptr (-8)[ebp],263
-cmp dword ptr (-4)[ebp],0
-je L1784
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1784:
-L1782:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov eax,dword ptr (-20)[ebp]
-mov edi,dword ptr (-36)[ebp]
-cdq
-idiv edi
-mov dword ptr (-20)[ebp],edx
-cmp dword ptr (-20)[ebp],1
-je L1786
-mov dword ptr (-8)[ebp],264
-cmp dword ptr (-4)[ebp],0
-je L1788
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1788:
-L1786:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov eax,edi
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov edi,edx
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],1
-je L1790
-mov dword ptr (-8)[ebp],265
-cmp dword ptr (-4)[ebp],0
-je L1792
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1792:
-L1790:
-mov dword ptr (-24)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-movsx edi,byte ptr (-25)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],edx
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1794
-mov dword ptr (-8)[ebp],266
-cmp dword ptr (-4)[ebp],0
-je L1796
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1796:
-L1794:
-mov dword ptr (-24)[ebp],5
-mov word ptr (-28)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-movsx edi,word ptr (-28)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],edx
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1798
-mov dword ptr (-8)[ebp],267
-cmp dword ptr (-4)[ebp],0
-je L1800
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1800:
-L1798:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-mov edi,dword ptr (-32)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],edx
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1802
-mov dword ptr (-8)[ebp],268
-cmp dword ptr (-4)[ebp],0
-je L1804
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1804:
-L1802:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-mov edi,dword ptr (-36)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],edx
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1806
-mov dword ptr (-8)[ebp],269
-cmp dword ptr (-4)[ebp],0
-je L1808
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1808:
-L1806:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov eax,dword ptr (-24)[ebp]
-mov edi,dword ptr (-40)[ebp]
-xor edx,edx
-div edi
-mov dword ptr (-24)[ebp],edx
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1810
-mov dword ptr (-8)[ebp],270
-cmp dword ptr (-4)[ebp],0
-je L1812
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1812:
-L1810:
-mov byte ptr (-9)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-sar edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1814
-mov dword ptr (-8)[ebp],271
-cmp dword ptr (-4)[ebp],0
-je L1816
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1816:
-L1814:
-mov byte ptr (-9)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-sar edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1818
-mov dword ptr (-8)[ebp],272
-cmp dword ptr (-4)[ebp],0
-je L1820
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1820:
-L1818:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-sar edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1822
-mov dword ptr (-8)[ebp],273
-cmp dword ptr (-4)[ebp],0
-je L1824
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1824:
-L1822:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-sar edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1826
-mov dword ptr (-8)[ebp],274
-cmp dword ptr (-4)[ebp],0
-je L1828
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1828:
-L1826:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-sar edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,1
-je L1830
-mov dword ptr (-8)[ebp],275
-cmp dword ptr (-4)[ebp],0
-je L1832
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1832:
-L1830:
-mov word ptr (-12)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-sar edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1834
-mov dword ptr (-8)[ebp],276
-cmp dword ptr (-4)[ebp],0
-je L1836
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1836:
-L1834:
-mov word ptr (-12)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-sar edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1838
-mov dword ptr (-8)[ebp],277
-cmp dword ptr (-4)[ebp],0
-je L1840
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1840:
-L1838:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-sar edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1842
-mov dword ptr (-8)[ebp],278
-cmp dword ptr (-4)[ebp],0
-je L1844
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1844:
-L1842:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-sar edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1846
-mov dword ptr (-8)[ebp],279
-cmp dword ptr (-4)[ebp],0
-je L1848
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1848:
-L1846:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-sar edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,1
-je L1850
-mov dword ptr (-8)[ebp],280
-cmp dword ptr (-4)[ebp],0
-je L1852
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1852:
-L1850:
-mov dword ptr (-16)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],1
-je L1854
-mov dword ptr (-8)[ebp],281
-cmp dword ptr (-4)[ebp],0
-je L1856
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1856:
-L1854:
-mov dword ptr (-16)[ebp],5
-mov word ptr (-28)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],1
-je L1858
-mov dword ptr (-8)[ebp],282
-cmp dword ptr (-4)[ebp],0
-je L1860
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1860:
-L1858:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],1
-je L1862
-mov dword ptr (-8)[ebp],283
-cmp dword ptr (-4)[ebp],0
-je L1864
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1864:
-L1862:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],1
-je L1866
-mov dword ptr (-8)[ebp],284
-cmp dword ptr (-4)[ebp],0
-je L1868
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1868:
-L1866:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],1
-je L1870
-mov dword ptr (-8)[ebp],285
-cmp dword ptr (-4)[ebp],0
-je L1872
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1872:
-L1870:
-mov dword ptr (-20)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],1
-je L1874
-mov dword ptr (-8)[ebp],286
-cmp dword ptr (-4)[ebp],0
-je L1876
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1876:
-L1874:
-mov dword ptr (-20)[ebp],5
-mov word ptr (-28)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],1
-je L1878
-mov dword ptr (-8)[ebp],287
-cmp dword ptr (-4)[ebp],0
-je L1880
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1880:
-L1878:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],1
-je L1882
-mov dword ptr (-8)[ebp],288
-cmp dword ptr (-4)[ebp],0
-je L1884
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1884:
-L1882:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],1
-je L1886
-mov dword ptr (-8)[ebp],289
-cmp dword ptr (-4)[ebp],0
-je L1888
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1888:
-L1886:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-sar edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],1
-je L1890
-mov dword ptr (-8)[ebp],290
-cmp dword ptr (-4)[ebp],0
-je L1892
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1892:
-L1890:
-mov dword ptr (-24)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-shr edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1894
-mov dword ptr (-8)[ebp],291
-cmp dword ptr (-4)[ebp],0
-je L1896
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1896:
-L1894:
-mov dword ptr (-24)[ebp],5
-mov word ptr (-28)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-shr edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1898
-mov dword ptr (-8)[ebp],292
-cmp dword ptr (-4)[ebp],0
-je L1900
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1900:
-L1898:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-shr edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1902
-mov dword ptr (-8)[ebp],293
-cmp dword ptr (-4)[ebp],0
-je L1904
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1904:
-L1902:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-shr edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1906
-mov dword ptr (-8)[ebp],294
-cmp dword ptr (-4)[ebp],0
-je L1908
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1908:
-L1906:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-shr edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,1
-je L1910
-mov dword ptr (-8)[ebp],295
-cmp dword ptr (-4)[ebp],0
-je L1912
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1912:
-L1910:
-mov byte ptr (-9)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-sal edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,20
-je L1914
-mov dword ptr (-8)[ebp],296
-cmp dword ptr (-4)[ebp],0
-je L1916
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1916:
-L1914:
-mov byte ptr (-9)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-sal edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,20
-je L1918
-mov dword ptr (-8)[ebp],297
-cmp dword ptr (-4)[ebp],0
-je L1920
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1920:
-L1918:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-sal edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,20
-je L1922
-mov dword ptr (-8)[ebp],298
-cmp dword ptr (-4)[ebp],0
-je L1924
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1924:
-L1922:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-sal edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,20
-je L1926
-mov dword ptr (-8)[ebp],299
-cmp dword ptr (-4)[ebp],0
-je L1928
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1928:
-L1926:
-mov byte ptr (-9)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,byte ptr (-9)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-sal edi,cl
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,20
-je L1930
-mov dword ptr (-8)[ebp],300
-cmp dword ptr (-4)[ebp],0
-je L1932
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1932:
-L1930:
-mov word ptr (-12)[ebp],5
-mov byte ptr (-25)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-sal edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,20
-je L1934
-mov dword ptr (-8)[ebp],301
-cmp dword ptr (-4)[ebp],0
-je L1936
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1936:
-L1934:
-mov word ptr (-12)[ebp],5
-mov word ptr (-28)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-sal edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,20
-je L1938
-mov dword ptr (-8)[ebp],302
-cmp dword ptr (-4)[ebp],0
-je L1940
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1940:
-L1938:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-32)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-sal edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,20
-je L1942
-mov dword ptr (-8)[ebp],303
-cmp dword ptr (-4)[ebp],0
-je L1944
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1944:
-L1942:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-36)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-sal edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,20
-je L1946
-mov dword ptr (-8)[ebp],304
-cmp dword ptr (-4)[ebp],0
-je L1948
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1948:
-L1946:
-mov word ptr (-12)[ebp],5
-mov dword ptr (-40)[ebp],2
-movsx edi,word ptr (-12)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-sal edi,cl
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,20
-je L1950
-mov dword ptr (-8)[ebp],305
-cmp dword ptr (-4)[ebp],0
-je L1952
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1952:
-L1950:
-mov dword ptr (-16)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],20
-je L1954
-mov dword ptr (-8)[ebp],306
-cmp dword ptr (-4)[ebp],0
-je L1956
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1956:
-L1954:
-mov dword ptr (-16)[ebp],5
-mov word ptr (-28)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],20
-je L1958
-mov dword ptr (-8)[ebp],307
-cmp dword ptr (-4)[ebp],0
-je L1960
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1960:
-L1958:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],20
-je L1962
-mov dword ptr (-8)[ebp],308
-cmp dword ptr (-4)[ebp],0
-je L1964
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1964:
-L1962:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],20
-je L1966
-mov dword ptr (-8)[ebp],309
-cmp dword ptr (-4)[ebp],0
-je L1968
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1968:
-L1966:
-mov dword ptr (-16)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],20
-je L1970
-mov dword ptr (-8)[ebp],310
-cmp dword ptr (-4)[ebp],0
-je L1972
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1972:
-L1970:
-mov dword ptr (-20)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],20
-je L1974
-mov dword ptr (-8)[ebp],311
-cmp dword ptr (-4)[ebp],0
-je L1976
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1976:
-L1974:
-mov dword ptr (-20)[ebp],5
-mov word ptr (-28)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],20
-je L1978
-mov dword ptr (-8)[ebp],312
-cmp dword ptr (-4)[ebp],0
-je L1980
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1980:
-L1978:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],20
-je L1982
-mov dword ptr (-8)[ebp],313
-cmp dword ptr (-4)[ebp],0
-je L1984
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1984:
-L1982:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],20
-je L1986
-mov dword ptr (-8)[ebp],314
-cmp dword ptr (-4)[ebp],0
-je L1988
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1988:
-L1986:
-mov dword ptr (-20)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-sal edi,cl
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],20
-je L1990
-mov dword ptr (-8)[ebp],315
-cmp dword ptr (-4)[ebp],0
-je L1992
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1992:
-L1990:
-mov dword ptr (-24)[ebp],5
-mov byte ptr (-25)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-mov ecx,esi
-shl edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,20
-je L1994
-mov dword ptr (-8)[ebp],316
-cmp dword ptr (-4)[ebp],0
-je L1996
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L1996:
-L1994:
-mov dword ptr (-24)[ebp],5
-mov word ptr (-28)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-movsx esi,word ptr (-28)[ebp]
-mov ecx,esi
-shl edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,20
-je L1998
-mov dword ptr (-8)[ebp],317
-cmp dword ptr (-4)[ebp],0
-je L2000
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2000:
-L1998:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-mov esi,dword ptr (-32)[ebp]
-mov ecx,esi
-shl edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,20
-je L2002
-mov dword ptr (-8)[ebp],318
-cmp dword ptr (-4)[ebp],0
-je L2004
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2004:
-L2002:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-36)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-mov esi,dword ptr (-36)[ebp]
-mov ecx,esi
-shl edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,20
-je L2006
-mov dword ptr (-8)[ebp],319
-cmp dword ptr (-4)[ebp],0
-je L2008
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2008:
-L2006:
-mov dword ptr (-24)[ebp],5
-mov dword ptr (-40)[ebp],2
-mov edi,dword ptr (-24)[ebp]
-mov esi,dword ptr (-40)[ebp]
-mov ecx,esi
-shl edi,cl
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,20
-je L2010
-mov dword ptr (-8)[ebp],320
-cmp dword ptr (-4)[ebp],0
-je L2012
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2012:
-L2010:
-mov byte ptr (-9)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-and edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,8
-je L2014
-mov dword ptr (-8)[ebp],321
-cmp dword ptr (-4)[ebp],0
-je L2016
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2016:
-L2014:
-mov byte ptr (-9)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,word ptr (-28)[ebp]
-and edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,8
-je L2018
-mov dword ptr (-8)[ebp],322
-cmp dword ptr (-4)[ebp],0
-je L2020
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2020:
-L2018:
-mov byte ptr (-9)[ebp],12
-mov dword ptr (-32)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-and edi,dword ptr (-32)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,8
-je L2022
-mov dword ptr (-8)[ebp],323
-cmp dword ptr (-4)[ebp],0
-je L2024
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2024:
-L2022:
-mov byte ptr (-9)[ebp],12
-mov dword ptr (-36)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-and edi,dword ptr (-36)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,8
-je L2026
-mov dword ptr (-8)[ebp],324
-cmp dword ptr (-4)[ebp],0
-je L2028
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2028:
-L2026:
-mov byte ptr (-9)[ebp],12
-mov dword ptr (-40)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-and edi,dword ptr (-40)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,8
-je L2030
-mov dword ptr (-8)[ebp],325
-cmp dword ptr (-4)[ebp],0
-je L2032
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2032:
-L2030:
-mov word ptr (-12)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-and edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,8
-je L2034
-mov dword ptr (-8)[ebp],326
-cmp dword ptr (-4)[ebp],0
-je L2036
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2036:
-L2034:
-mov word ptr (-12)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-movsx esi,word ptr (-28)[ebp]
-and edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,8
-je L2038
-mov dword ptr (-8)[ebp],327
-cmp dword ptr (-4)[ebp],0
-je L2040
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2040:
-L2038:
-mov word ptr (-12)[ebp],12
-mov dword ptr (-32)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-and edi,dword ptr (-32)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,8
-je L2042
-mov dword ptr (-8)[ebp],328
-cmp dword ptr (-4)[ebp],0
-je L2044
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2044:
-L2042:
-mov word ptr (-12)[ebp],12
-mov dword ptr (-36)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-and edi,dword ptr (-36)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,8
-je L2046
-mov dword ptr (-8)[ebp],329
-cmp dword ptr (-4)[ebp],0
-je L2048
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2048:
-L2046:
-mov word ptr (-12)[ebp],12
-mov dword ptr (-40)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-and edi,dword ptr (-40)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,8
-je L2050
-mov dword ptr (-8)[ebp],330
-cmp dword ptr (-4)[ebp],0
-je L2052
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2052:
-L2050:
-mov dword ptr (-16)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-25)[ebp]
-and dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],8
-je L2054
-mov dword ptr (-8)[ebp],331
-cmp dword ptr (-4)[ebp],0
-je L2056
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2056:
-L2054:
-mov dword ptr (-16)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-28)[ebp]
-and dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],8
-je L2058
-mov dword ptr (-8)[ebp],332
-cmp dword ptr (-4)[ebp],0
-je L2060
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2060:
-L2058:
-mov dword ptr (-16)[ebp],12
-mov dword ptr (-32)[ebp],10
-mov edi,dword ptr (-32)[ebp]
-and dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],8
-je L2062
-mov dword ptr (-8)[ebp],333
-cmp dword ptr (-4)[ebp],0
-je L2064
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2064:
-L2062:
-mov dword ptr (-16)[ebp],12
-mov dword ptr (-36)[ebp],10
-mov edi,dword ptr (-36)[ebp]
-and dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],8
-je L2066
-mov dword ptr (-8)[ebp],334
-cmp dword ptr (-4)[ebp],0
-je L2068
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2068:
-L2066:
-mov dword ptr (-16)[ebp],12
-mov dword ptr (-40)[ebp],10
-mov edi,dword ptr (-16)[ebp]
-and edi,dword ptr (-40)[ebp]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],8
-je L2070
-mov dword ptr (-8)[ebp],335
-cmp dword ptr (-4)[ebp],0
-je L2072
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2072:
-L2070:
-mov dword ptr (-20)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-25)[ebp]
-and dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],8
-je L2074
-mov dword ptr (-8)[ebp],336
-cmp dword ptr (-4)[ebp],0
-je L2076
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2076:
-L2074:
-mov dword ptr (-20)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-28)[ebp]
-and dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],8
-je L2078
-mov dword ptr (-8)[ebp],337
-cmp dword ptr (-4)[ebp],0
-je L2080
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2080:
-L2078:
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-32)[ebp],10
-mov edi,dword ptr (-32)[ebp]
-and dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],8
-je L2082
-mov dword ptr (-8)[ebp],338
-cmp dword ptr (-4)[ebp],0
-je L2084
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2084:
-L2082:
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-36)[ebp],10
-mov edi,dword ptr (-36)[ebp]
-and dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],8
-je L2086
-mov dword ptr (-8)[ebp],339
-cmp dword ptr (-4)[ebp],0
-je L2088
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2088:
-L2086:
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-40)[ebp],10
-mov edi,dword ptr (-20)[ebp]
-and edi,dword ptr (-40)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],8
-je L2090
-mov dword ptr (-8)[ebp],340
-cmp dword ptr (-4)[ebp],0
-je L2092
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2092:
-L2090:
-mov dword ptr (-24)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-25)[ebp]
-and dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,8
-je L2094
-mov dword ptr (-8)[ebp],341
-cmp dword ptr (-4)[ebp],0
-je L2096
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2096:
-L2094:
-mov dword ptr (-24)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-28)[ebp]
-and dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,8
-je L2098
-mov dword ptr (-8)[ebp],342
-cmp dword ptr (-4)[ebp],0
-je L2100
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2100:
-L2098:
-mov dword ptr (-24)[ebp],12
-mov dword ptr (-32)[ebp],10
-mov edi,dword ptr (-32)[ebp]
-and dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,8
-je L2102
-mov dword ptr (-8)[ebp],343
-cmp dword ptr (-4)[ebp],0
-je L2104
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2104:
-L2102:
-mov dword ptr (-24)[ebp],12
-mov dword ptr (-36)[ebp],10
-mov edi,dword ptr (-36)[ebp]
-and dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,8
-je L2106
-mov dword ptr (-8)[ebp],344
-cmp dword ptr (-4)[ebp],0
-je L2108
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2108:
-L2106:
-mov dword ptr (-24)[ebp],12
-mov dword ptr (-40)[ebp],10
-mov edi,dword ptr (-40)[ebp]
-and dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,8
-je L2110
-mov dword ptr (-8)[ebp],345
-cmp dword ptr (-4)[ebp],0
-je L2112
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2112:
-L2110:
-mov byte ptr (-9)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-xor edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,6
-je L2114
-mov dword ptr (-8)[ebp],346
-cmp dword ptr (-4)[ebp],0
-je L2116
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2116:
-L2114:
-mov byte ptr (-9)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,word ptr (-28)[ebp]
-xor edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,6
-je L2118
-mov dword ptr (-8)[ebp],347
-cmp dword ptr (-4)[ebp],0
-je L2120
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2120:
-L2118:
-mov byte ptr (-9)[ebp],12
-mov dword ptr (-32)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-xor edi,dword ptr (-32)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,6
-je L2122
-mov dword ptr (-8)[ebp],348
-cmp dword ptr (-4)[ebp],0
-je L2124
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2124:
-L2122:
-mov byte ptr (-9)[ebp],12
-mov dword ptr (-36)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-xor edi,dword ptr (-36)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,6
-je L2126
-mov dword ptr (-8)[ebp],349
-cmp dword ptr (-4)[ebp],0
-je L2128
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2128:
-L2126:
-mov byte ptr (-9)[ebp],12
-mov dword ptr (-40)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-xor edi,dword ptr (-40)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,6
-je L2130
-mov dword ptr (-8)[ebp],350
-cmp dword ptr (-4)[ebp],0
-je L2132
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2132:
-L2130:
-mov word ptr (-12)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-xor edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,6
-je L2134
-mov dword ptr (-8)[ebp],351
-cmp dword ptr (-4)[ebp],0
-je L2136
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2136:
-L2134:
-mov word ptr (-12)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-movsx esi,word ptr (-28)[ebp]
-xor edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,6
-je L2138
-mov dword ptr (-8)[ebp],352
-cmp dword ptr (-4)[ebp],0
-je L2140
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2140:
-L2138:
-mov word ptr (-12)[ebp],12
-mov dword ptr (-32)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-xor edi,dword ptr (-32)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,6
-je L2142
-mov dword ptr (-8)[ebp],353
-cmp dword ptr (-4)[ebp],0
-je L2144
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2144:
-L2142:
-mov word ptr (-12)[ebp],12
-mov dword ptr (-36)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-xor edi,dword ptr (-36)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,6
-je L2146
-mov dword ptr (-8)[ebp],354
-cmp dword ptr (-4)[ebp],0
-je L2148
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2148:
-L2146:
-mov word ptr (-12)[ebp],12
-mov dword ptr (-40)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-xor edi,dword ptr (-40)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,6
-je L2150
-mov dword ptr (-8)[ebp],355
-cmp dword ptr (-4)[ebp],0
-je L2152
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2152:
-L2150:
-mov dword ptr (-16)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-25)[ebp]
-xor dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],6
-je L2154
-mov dword ptr (-8)[ebp],356
-cmp dword ptr (-4)[ebp],0
-je L2156
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2156:
-L2154:
-mov dword ptr (-16)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-28)[ebp]
-xor dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],6
-je L2158
-mov dword ptr (-8)[ebp],357
-cmp dword ptr (-4)[ebp],0
-je L2160
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2160:
-L2158:
-mov dword ptr (-16)[ebp],12
-mov dword ptr (-32)[ebp],10
-mov edi,dword ptr (-32)[ebp]
-xor dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],6
-je L2162
-mov dword ptr (-8)[ebp],358
-cmp dword ptr (-4)[ebp],0
-je L2164
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2164:
-L2162:
-mov dword ptr (-16)[ebp],12
-mov dword ptr (-36)[ebp],10
-mov edi,dword ptr (-36)[ebp]
-xor dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],6
-je L2166
-mov dword ptr (-8)[ebp],359
-cmp dword ptr (-4)[ebp],0
-je L2168
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2168:
-L2166:
-mov dword ptr (-16)[ebp],12
-mov dword ptr (-40)[ebp],10
-mov edi,dword ptr (-16)[ebp]
-xor edi,dword ptr (-40)[ebp]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],6
-je L2170
-mov dword ptr (-8)[ebp],360
-cmp dword ptr (-4)[ebp],0
-je L2172
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2172:
-L2170:
-mov dword ptr (-20)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-25)[ebp]
-xor dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],6
-je L2174
-mov dword ptr (-8)[ebp],361
-cmp dword ptr (-4)[ebp],0
-je L2176
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2176:
-L2174:
-mov dword ptr (-20)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-28)[ebp]
-xor dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],6
-je L2178
-mov dword ptr (-8)[ebp],362
-cmp dword ptr (-4)[ebp],0
-je L2180
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2180:
-L2178:
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-32)[ebp],10
-mov edi,dword ptr (-32)[ebp]
-xor dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],6
-je L2182
-mov dword ptr (-8)[ebp],363
-cmp dword ptr (-4)[ebp],0
-je L2184
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2184:
-L2182:
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-36)[ebp],10
-mov edi,dword ptr (-36)[ebp]
-xor dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],6
-je L2186
-mov dword ptr (-8)[ebp],364
-cmp dword ptr (-4)[ebp],0
-je L2188
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2188:
-L2186:
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-40)[ebp],10
-mov edi,dword ptr (-20)[ebp]
-xor edi,dword ptr (-40)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],6
-je L2190
-mov dword ptr (-8)[ebp],365
-cmp dword ptr (-4)[ebp],0
-je L2192
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2192:
-L2190:
-mov dword ptr (-24)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-25)[ebp]
-xor dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,6
-je L2194
-mov dword ptr (-8)[ebp],366
-cmp dword ptr (-4)[ebp],0
-je L2196
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2196:
-L2194:
-mov dword ptr (-24)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-28)[ebp]
-xor dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,6
-je L2198
-mov dword ptr (-8)[ebp],367
-cmp dword ptr (-4)[ebp],0
-je L2200
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2200:
-L2198:
-mov dword ptr (-24)[ebp],12
-mov dword ptr (-32)[ebp],10
-mov edi,dword ptr (-32)[ebp]
-xor dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,6
-je L2202
-mov dword ptr (-8)[ebp],368
-cmp dword ptr (-4)[ebp],0
-je L2204
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2204:
-L2202:
-mov dword ptr (-24)[ebp],12
-mov dword ptr (-36)[ebp],10
-mov edi,dword ptr (-36)[ebp]
-xor dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,6
-je L2206
-mov dword ptr (-8)[ebp],369
-cmp dword ptr (-4)[ebp],0
-je L2208
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2208:
-L2206:
-mov dword ptr (-24)[ebp],12
-mov dword ptr (-40)[ebp],10
-mov edi,dword ptr (-40)[ebp]
-xor dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,6
-je L2210
-mov dword ptr (-8)[ebp],370
-cmp dword ptr (-4)[ebp],0
-je L2212
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2212:
-L2210:
-mov byte ptr (-9)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-or edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,14
-je L2214
-mov dword ptr (-8)[ebp],371
-cmp dword ptr (-4)[ebp],0
-je L2216
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2216:
-L2214:
-mov byte ptr (-9)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-movsx esi,word ptr (-28)[ebp]
-or edi,esi
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,14
-je L2218
-mov dword ptr (-8)[ebp],372
-cmp dword ptr (-4)[ebp],0
-je L2220
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2220:
-L2218:
-mov byte ptr (-9)[ebp],12
-mov dword ptr (-32)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-or edi,dword ptr (-32)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,14
-je L2222
-mov dword ptr (-8)[ebp],373
-cmp dword ptr (-4)[ebp],0
-je L2224
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2224:
-L2222:
-mov byte ptr (-9)[ebp],12
-mov dword ptr (-36)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-or edi,dword ptr (-36)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,14
-je L2226
-mov dword ptr (-8)[ebp],374
-cmp dword ptr (-4)[ebp],0
-je L2228
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2228:
-L2226:
-mov byte ptr (-9)[ebp],12
-mov dword ptr (-40)[ebp],10
-movsx edi,byte ptr (-9)[ebp]
-or edi,dword ptr (-40)[ebp]
-mov ebx,edi
-mov byte ptr (-9)[ebp],bl
-movsx edi,byte ptr (-9)[ebp]
-cmp edi,14
-je L2230
-mov dword ptr (-8)[ebp],375
-cmp dword ptr (-4)[ebp],0
-je L2232
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2232:
-L2230:
-mov word ptr (-12)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-movsx esi,byte ptr (-25)[ebp]
-or edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,14
-je L2234
-mov dword ptr (-8)[ebp],376
-cmp dword ptr (-4)[ebp],0
-je L2236
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2236:
-L2234:
-mov word ptr (-12)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-movsx esi,word ptr (-28)[ebp]
-or edi,esi
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,14
-je L2238
-mov dword ptr (-8)[ebp],377
-cmp dword ptr (-4)[ebp],0
-je L2240
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2240:
-L2238:
-mov word ptr (-12)[ebp],12
-mov dword ptr (-32)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-or edi,dword ptr (-32)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,14
-je L2242
-mov dword ptr (-8)[ebp],378
-cmp dword ptr (-4)[ebp],0
-je L2244
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2244:
-L2242:
-mov word ptr (-12)[ebp],12
-mov dword ptr (-36)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-or edi,dword ptr (-36)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,14
-je L2246
-mov dword ptr (-8)[ebp],379
-cmp dword ptr (-4)[ebp],0
-je L2248
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2248:
-L2246:
-mov word ptr (-12)[ebp],12
-mov dword ptr (-40)[ebp],10
-movsx edi,word ptr (-12)[ebp]
-or edi,dword ptr (-40)[ebp]
-mov word ptr (-12)[ebp],di
-movsx edi,word ptr (-12)[ebp]
-cmp edi,14
-je L2250
-mov dword ptr (-8)[ebp],380
-cmp dword ptr (-4)[ebp],0
-je L2252
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2252:
-L2250:
-mov dword ptr (-16)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-25)[ebp]
-or dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],14
-je L2254
-mov dword ptr (-8)[ebp],381
-cmp dword ptr (-4)[ebp],0
-je L2256
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2256:
-L2254:
-mov dword ptr (-16)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-28)[ebp]
-or dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],14
-je L2258
-mov dword ptr (-8)[ebp],382
-cmp dword ptr (-4)[ebp],0
-je L2260
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2260:
-L2258:
-mov dword ptr (-16)[ebp],12
-mov dword ptr (-32)[ebp],10
-mov edi,dword ptr (-32)[ebp]
-or dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],14
-je L2262
-mov dword ptr (-8)[ebp],383
-cmp dword ptr (-4)[ebp],0
-je L2264
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2264:
-L2262:
-mov dword ptr (-16)[ebp],12
-mov dword ptr (-36)[ebp],10
-mov edi,dword ptr (-36)[ebp]
-or dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],14
-je L2266
-mov dword ptr (-8)[ebp],384
-cmp dword ptr (-4)[ebp],0
-je L2268
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2268:
-L2266:
-mov dword ptr (-16)[ebp],12
-mov dword ptr (-40)[ebp],10
-mov edi,dword ptr (-16)[ebp]
-or edi,dword ptr (-40)[ebp]
-mov dword ptr (-16)[ebp],edi
-cmp dword ptr (-16)[ebp],14
-je L2270
-mov dword ptr (-8)[ebp],385
-cmp dword ptr (-4)[ebp],0
-je L2272
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2272:
-L2270:
-mov dword ptr (-20)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-25)[ebp]
-or dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],14
-je L2274
-mov dword ptr (-8)[ebp],386
-cmp dword ptr (-4)[ebp],0
-je L2276
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2276:
-L2274:
-mov dword ptr (-20)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-28)[ebp]
-or dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],14
-je L2278
-mov dword ptr (-8)[ebp],387
-cmp dword ptr (-4)[ebp],0
-je L2280
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2280:
-L2278:
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-32)[ebp],10
-mov edi,dword ptr (-32)[ebp]
-or dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],14
-je L2282
-mov dword ptr (-8)[ebp],388
-cmp dword ptr (-4)[ebp],0
-je L2284
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2284:
-L2282:
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-36)[ebp],10
-mov edi,dword ptr (-36)[ebp]
-or dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],14
-je L2286
-mov dword ptr (-8)[ebp],389
-cmp dword ptr (-4)[ebp],0
-je L2288
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2288:
-L2286:
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-40)[ebp],10
-mov edi,dword ptr (-20)[ebp]
-or edi,dword ptr (-40)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],14
-je L2290
-mov dword ptr (-8)[ebp],390
-cmp dword ptr (-4)[ebp],0
-je L2292
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2292:
-L2290:
-mov dword ptr (-24)[ebp],12
-mov byte ptr (-25)[ebp],10
-movsx edi,byte ptr (-25)[ebp]
-or dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,14
-je L2294
-mov dword ptr (-8)[ebp],391
-cmp dword ptr (-4)[ebp],0
-je L2296
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2296:
-L2294:
-mov dword ptr (-24)[ebp],12
-mov word ptr (-28)[ebp],10
-movsx edi,word ptr (-28)[ebp]
-or dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,14
-je L2298
-mov dword ptr (-8)[ebp],392
-cmp dword ptr (-4)[ebp],0
-je L2300
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2300:
-L2298:
-mov dword ptr (-24)[ebp],12
-mov dword ptr (-32)[ebp],10
-mov edi,dword ptr (-32)[ebp]
-or dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,14
-je L2302
-mov dword ptr (-8)[ebp],393
-cmp dword ptr (-4)[ebp],0
-je L2304
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2304:
-L2302:
-mov dword ptr (-24)[ebp],12
-mov dword ptr (-36)[ebp],10
-mov edi,dword ptr (-36)[ebp]
-or dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,14
-je L2306
-mov dword ptr (-8)[ebp],394
-cmp dword ptr (-4)[ebp],0
-je L2308
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2308:
-L2306:
-mov dword ptr (-24)[ebp],12
-mov dword ptr (-40)[ebp],10
-mov edi,dword ptr (-40)[ebp]
-or dword ptr (-24)[ebp],edi
-mov edi,dword ptr (-24)[ebp]
-cmp edi,14
-je L2310
-mov dword ptr (-8)[ebp],395
-cmp dword ptr (-4)[ebp],0
-je L2312
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L687)
-push edi
-call _printf
-add esp,8
-L2312:
-L2310:
-cmp dword ptr (-8)[ebp],0
-je L2314
-mov dword ptr (-76)[ebp],1
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2316
-push 1
-lea edi,(L688)
-push edi
-call _printf
-add esp,8
-L2316:
-L2314:
-mov eax,dword ptr (-76)[ebp]
-L686:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L2319 label byte
-db 115
-db 55
-db 49
-db 53
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L2320 label byte
-db 115
-db 55
-db 49
-db 53
-db 32
-db 32
-db 32
-db 0
-public _s715
-_DATA ends
-_TEXT segment
-_s715:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,28
-mov dword ptr (-28)[ebp],0
-mov dword ptr (-20)[ebp],0
-lea edi,(L2320)
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-8)[ebp],edi
-mov dword ptr (-16)[ebp],0
-L2321:
-L2322:
-mov edi,dword ptr (-8)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-8)[ebp],esi
-mov esi,dword ptr (-4)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-4)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L2321
-mov dword ptr (-12)[ebp],1
-inc dword ptr (-12)[ebp]
-inc dword ptr (-12)[ebp]
-inc dword ptr (-12)[ebp]
-inc dword ptr (-12)[ebp]
-mov edi,dword ptr (-12)[ebp]
-lea edi,(1)[edi]
-mov dword ptr (-12)[ebp],edi
-cmp edi,6
-je L2324
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2326
-push 1
-lea edi,(L2319)
-push edi
-call _printf
-add esp,8
-L2326:
-inc dword ptr (-16)[ebp]
-L2324:
-mov edi,dword ptr (-28)[ebp]
-push edi
-mov dword ptr (-24)[ebp],3
-mov edi,dword ptr (-24)[ebp]
-lea edi,(2)[edi]
-push edi
-mov edi,dword ptr (-20)[ebp]
-push edi
-call _s715f
-add esp,12
-cmp eax,5
-je L2328
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2330
-push 2
-lea edi,(L2319)
-push edi
-call _printf
-add esp,8
-L2330:
-add dword ptr (-16)[ebp],2
-L2328:
-mov eax,dword ptr (-16)[ebp]
-L2318:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _s715f
-_s715f:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov eax,dword ptr (24)[ebp]
-L2332:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L2334 label byte
-db 115
-db 55
-db 50
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L2335 label byte
-db 115
-db 55
-db 50
-db 32
-db 32
-db 32
-db 32
-db 0
-public _s72
-_DATA ends
-_TEXT segment
-_s72:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,100
-lea edi,(L2335)
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-16)[ebp],edi
-mov dword ptr (-24)[ebp],0
-L2336:
-L2337:
-mov edi,dword ptr (-16)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-16)[ebp],esi
-mov esi,dword ptr (-12)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-12)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L2336
-mov dword ptr (-4)[ebp],2
-cmp dword ptr (-4)[ebp],2
-je L2339
-inc dword ptr (-24)[ebp]
-push 1
-lea edi,(L2334)
-push edi
-call _printf
-add esp,8
-L2339:
-mov edi,dword ptr (-4)[ebp]
-mov esi,edi
-neg esi
-lea edi,[esi][edi]
-cmp edi,0
-je L2341
-add dword ptr (-24)[ebp],2
-push 2
-lea edi,(L2334)
-push edi
-call _printf
-add esp,8
-L2341:
-mov dword ptr (-4)[ebp],0
-mov dword ptr (-8)[ebp],0
-jmp L2346
-L2343:
-mov edi,dword ptr (-4)[ebp]
-lea edi,[edi*2]
-or edi,1
-mov dword ptr (-4)[ebp],edi
-L2344:
-inc dword ptr (-8)[ebp]
-L2346:
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (4)[edi]
-cmp dword ptr (-8)[ebp],edi
-jl L2343
-mov edi,dword ptr (-4)[ebp]
-not edi
-cmp edi,0
-je L2347
-add dword ptr (-24)[ebp],4
-push 4
-lea edi,(L2334)
-push edi
-call _printf
-add esp,8
-L2347:
-mov dword ptr (-4)[ebp],5
-mov edi,dword ptr (-4)[ebp]
-lea edi,(1)[edi]
-mov dword ptr (-4)[ebp],edi
-cmp edi,6
-jne L2354
-mov edi,dword ptr (-4)[ebp]
-sub edi,1
-mov dword ptr (-4)[ebp],edi
-cmp edi,5
-jne L2354
-mov edi,dword ptr (-4)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-4)[ebp],esi
-cmp edi,5
-jne L2354
-mov edi,dword ptr (-4)[ebp]
-mov esi,edi
-sub esi,1
-mov dword ptr (-4)[ebp],esi
-cmp edi,6
-jne L2354
-cmp dword ptr (-4)[ebp],5
-je L2349
-L2354:
-add dword ptr (-24)[ebp],8
-push 8
-lea edi,(L2334)
-push edi
-call _printf
-add esp,8
-L2349:
-mov byte ptr (-29)[ebp],26
-mov dword ptr (-36)[ebp],26
-fld qword ptr (L2355)
-fstp qword ptr (-48)[ebp]
-mov word ptr (-32)[ebp],26
-mov dword ptr (-40)[ebp],26
-mov dword ptr (-28)[ebp],26
-fld dword ptr (L2356)
-fstp dword ptr (-52)[ebp]
-mov dword ptr (-20)[ebp],0
-movsx edi,word ptr (-32)[ebp]
-mov ebx,edi
-movsx edi,bl
-cmp edi,26
-jne L2363
-mov edi,dword ptr (-28)[ebp]
-mov ebx,edi
-movsx edi,bl
-cmp edi,26
-jne L2363
-mov edi,dword ptr (-36)[ebp]
-mov ebx,edi
-movsx edi,bl
-cmp edi,26
-jne L2363
-mov edi,dword ptr (-40)[ebp]
-mov ebx,edi
-movsx edi,bl
-cmp edi,26
-jne L2363
-fld dword ptr (-52)[ebp]
-call __ftol
-mov ebx,eax
-movsx edi,bl
-cmp edi,26
-jne L2363
-fld qword ptr (-48)[ebp]
-call __ftol
-mov ebx,eax
-movsx edi,bl
-cmp edi,26
-je L2357
-L2363:
-inc dword ptr (-20)[ebp]
-L2357:
-movsx edi,byte ptr (-29)[ebp]
-movsx edi,di
-cmp edi,26
-jne L2370
-mov edi,dword ptr (-28)[ebp]
-movsx edi,di
-cmp edi,26
-jne L2370
-mov edi,dword ptr (-36)[ebp]
-movsx edi,di
-cmp edi,26
-jne L2370
-mov edi,dword ptr (-40)[ebp]
-movsx edi,di
-cmp edi,26
-jne L2370
-fld dword ptr (-52)[ebp]
-call __ftol
-mov edi,eax
-movsx edi,di
-cmp edi,26
-jne L2370
-fld qword ptr (-48)[ebp]
-call __ftol
-mov edi,eax
-movsx edi,di
-cmp edi,26
-je L2364
-L2370:
-add dword ptr (-20)[ebp],2
-L2364:
-movsx edi,byte ptr (-29)[ebp]
-cmp edi,26
-jne L2377
-movsx edi,word ptr (-32)[ebp]
-cmp edi,26
-jne L2377
-cmp dword ptr (-36)[ebp],26
-jne L2377
-mov edi,dword ptr (-40)[ebp]
-cmp edi,26
-jne L2377
-fld dword ptr (-52)[ebp]
-call __ftol
-cmp eax,26
-jne L2377
-fld qword ptr (-48)[ebp]
-call __ftol
-cmp eax,26
-je L2371
-L2377:
-add dword ptr (-20)[ebp],4
-L2371:
-movsx edi,byte ptr (-29)[ebp]
-cmp edi,26
-jne L2384
-movsx edi,word ptr (-32)[ebp]
-cmp edi,26
-jne L2384
-cmp dword ptr (-28)[ebp],26
-jne L2384
-mov edi,dword ptr (-40)[ebp]
-cmp edi,26
-jne L2384
-fld dword ptr (-52)[ebp]
-call __ftol
-cmp eax,26
-jne L2384
-fld qword ptr (-48)[ebp]
-call __ftol
-cmp eax,26
-je L2378
-L2384:
-add dword ptr (-20)[ebp],8
-L2378:
-movsx edi,byte ptr (-29)[ebp]
-cmp edi,26
-jne L2393
-movsx edi,word ptr (-32)[ebp]
-cmp edi,26
-jne L2393
-mov edi,dword ptr (-28)[ebp]
-cmp edi,26
-jne L2393
-mov edi,dword ptr (-36)[ebp]
-cmp edi,26
-jne L2393
-fld dword ptr (L828)
-fcomp dword ptr (-52)[ebp]
-fstsw ax
-sahf
-ja L2394
-fld dword ptr (-52)[ebp]
-fsub dword ptr (L828)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-56)[ebp],edi
-jmp L2395
-L2394:
-fld dword ptr (-52)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-56)[ebp],edi
-L2395:
-mov edi,dword ptr (-56)[ebp]
-cmp edi,26
-jne L2393
-fld qword ptr (L836)
-fcomp qword ptr (-48)[ebp]
-fstsw ax
-sahf
-ja L2396
-fld qword ptr (-48)[ebp]
-fsub qword ptr (L836)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-60)[ebp],edi
-jmp L2397
-L2396:
-fld qword ptr (-48)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-60)[ebp],edi
-L2397:
-mov edi,dword ptr (-60)[ebp]
-cmp edi,26
-je L2385
-L2393:
-add dword ptr (-20)[ebp],16
-L2385:
-movsx edi,byte ptr (-29)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2404
-movsx edi,word ptr (-32)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2404
-mov edi,dword ptr (-28)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2404
-mov edi,dword ptr (-36)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2404
-mov edi,dword ptr (-40)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2404
-fld qword ptr (-48)[ebp]
-sub esp,4
-fstp dword ptr 0[esp]
-fld dword ptr 0[esp]
-add esp,4
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-je L2398
-L2404:
-add dword ptr (-20)[ebp],32
-L2398:
-movsx edi,byte ptr (-29)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2411
-movsx edi,word ptr (-32)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2411
-fild dword ptr (-28)[ebp]
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2411
-fild dword ptr (-36)[ebp]
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2411
-mov edi,dword ptr (-40)[ebp]
-fld qword ptr (L596)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fld qword ptr (L2355)
-fcompp
-fstsw ax
-sahf
-jne L2411
-fld qword ptr (L2355)
-fcomp dword ptr (-52)[ebp]
-fstsw ax
-sahf
-je L2405
-L2411:
-add dword ptr (-20)[ebp],64
-L2405:
-cmp dword ptr (-20)[ebp],0
-je L2412
-add dword ptr (-24)[ebp],16
-push 16
-lea edi,(L2334)
-push edi
-call _printf
-add esp,8
-L2412:
-mov eax,dword ptr (-24)[ebp]
-L2333:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L2415 label byte
-db 115
-db 55
-db 53
-db 55
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L2416 label byte
-db 115
-db 55
-db 53
-db 55
-db 32
-db 32
-db 32
-db 0
-public _s757
-_DATA ends
-_TEXT segment
-_s757:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,148
-lea edi,(L2416)
-mov dword ptr (-112)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-116)[ebp],edi
-mov dword ptr (-120)[ebp],0
-L2417:
-L2418:
-mov edi,dword ptr (-116)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-116)[ebp],esi
-mov esi,dword ptr (-112)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-112)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L2417
-mov dword ptr (-124)[ebp],40
-mov edi,dword ptr (-124)[ebp]
-lea esi,[edi*8]
-lea esi,[esi*4]
-cmp esi,1280
-jne L2422
-sar edi,3
-sar edi,2
-cmp edi,1
-je L2420
-L2422:
-inc dword ptr (-120)[ebp]
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2423
-push 1
-lea edi,(L2415)
-push edi
-call _printf
-add esp,8
-L2423:
-L2420:
-mov dword ptr (-84)[ebp],0
-mov dword ptr (-100)[ebp],0
-jmp L2428
-L2425:
-mov dword ptr (-92)[ebp],1
-mov edi,dword ptr (-92)[ebp]
-mov esi,dword ptr (20)[ebp]
-mov esi,dword ptr (16)[esi]
-sub esi,1
-mov ecx,esi
-shl edi,cl
-mov dword ptr (-96)[ebp],edi
-mov dword ptr (-104)[ebp],0
-mov edi,dword ptr (-104)[ebp]
-not edi
-mov esi,dword ptr (-100)[ebp]
-mov ebx,edi
-mov ecx,esi
-shr ebx,cl
-mov dword ptr (-108)[ebp],ebx
-mov ecx,esi
-shl edi,cl
-mov dword ptr (-104)[ebp],edi
-mov dword ptr (-88)[ebp],0
-jmp L2432
-L2429:
-mov edi,dword ptr (-100)[ebp]
-cmp dword ptr (-88)[ebp],edi
-jge L2440
-mov dword ptr (-132)[ebp],1
-jmp L2441
-L2440:
-mov dword ptr (-132)[ebp],0
-L2441:
-mov edi,dword ptr (-92)[ebp]
-and edi,dword ptr (-104)[ebp]
-cmp edi,0
-jne L2442
-mov dword ptr (-136)[ebp],1
-jmp L2443
-L2442:
-mov dword ptr (-136)[ebp],0
-L2443:
-mov edi,dword ptr (-136)[ebp]
-cmp dword ptr (-132)[ebp],edi
-jne L2439
-mov edi,dword ptr (-100)[ebp]
-cmp dword ptr (-88)[ebp],edi
-jge L2444
-mov dword ptr (-140)[ebp],1
-jmp L2445
-L2444:
-mov dword ptr (-140)[ebp],0
-L2445:
-mov edi,dword ptr (-96)[ebp]
-and edi,dword ptr (-108)[ebp]
-cmp edi,0
-jne L2446
-mov dword ptr (-144)[ebp],1
-jmp L2447
-L2446:
-mov dword ptr (-144)[ebp],0
-L2447:
-mov edi,dword ptr (-144)[ebp]
-cmp dword ptr (-140)[ebp],edi
-je L2433
-L2439:
-mov dword ptr (-84)[ebp],1
-L2433:
-mov edi,dword ptr (-92)[ebp]
-lea edi,[edi*2]
-mov dword ptr (-92)[ebp],edi
-mov edi,dword ptr (-96)[ebp]
-shr edi,1
-mov dword ptr (-96)[ebp],edi
-L2430:
-inc dword ptr (-88)[ebp]
-L2432:
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (16)[edi]
-cmp dword ptr (-88)[ebp],edi
-jl L2429
-L2426:
-inc dword ptr (-100)[ebp]
-L2428:
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (16)[edi]
-cmp dword ptr (-100)[ebp],edi
-jl L2425
-cmp dword ptr (-84)[ebp],0
-je L2448
-add dword ptr (-120)[ebp],2
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2450
-push 2
-lea edi,(L2415)
-push edi
-call _printf
-add esp,8
-L2450:
-L2448:
-mov dword ptr (-16)[ebp],3
-mov dword ptr (-12)[ebp],2
-mov dword ptr (-8)[ebp],1
-mov edi,dword ptr (-12)[ebp]
-cmp dword ptr (-16)[ebp],edi
-jge L2458
-mov dword ptr (-136)[ebp],1
-jmp L2459
-L2458:
-mov dword ptr (-136)[ebp],0
-L2459:
-mov edi,dword ptr (-8)[ebp]
-cmp dword ptr (-136)[ebp],edi
-jge L2456
-mov dword ptr (-132)[ebp],1
-jmp L2457
-L2456:
-mov dword ptr (-132)[ebp],0
-L2457:
-cmp dword ptr (-132)[ebp],1
-je L2452
-add dword ptr (-120)[ebp],4
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2460
-push 4
-lea edi,(L2415)
-push edi
-call _printf
-add esp,8
-L2460:
-L2452:
-lea edi,(-76)[ebp]
-lea esi,(-80)[ebp]
-cmp edi,esi
-jne L2462
-add dword ptr (-120)[ebp],8
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2465
-push 8
-lea edi,(L2415)
-push edi
-call _printf
-add esp,8
-L2465:
-L2462:
-lea edi,(-76)[ebp]
-lea esi,(-80)[ebp]
-cmp edi,esi
-jae L2467
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (40)[edi],0
-je L2470
-lea edi,(L2472)
-push edi
-call _printf
-add esp,4
-L2470:
-L2467:
-mov dword ptr (-84)[ebp],0
-mov dword ptr (-88)[ebp],0
-L2473:
-mov edi,dword ptr (-88)[ebp]
-mov dword ptr (-80)[ebp][edi*4],1
-L2474:
-inc dword ptr (-88)[ebp]
-cmp dword ptr (-88)[ebp],16
-jl L2473
-mov dword ptr (-76)[ebp],0
-mov dword ptr (-64)[ebp],0
-mov dword ptr (-56)[ebp],0
-mov dword ptr (-52)[ebp],0
-mov dword ptr (-44)[ebp],0
-mov dword ptr (-28)[ebp],0
-mov dword ptr (-16)[ebp],0
-L2483:
-mov dword ptr (-12)[ebp],0
-L2487:
-mov dword ptr (-8)[ebp],0
-L2491:
-mov dword ptr (-4)[ebp],0
-L2495:
-mov edi,dword ptr (-12)[ebp]
-cmp dword ptr (-16)[ebp],edi
-jge L2506
-mov dword ptr (-144)[ebp],1
-jmp L2507
-L2506:
-mov dword ptr (-144)[ebp],0
-L2507:
-mov edi,dword ptr (-4)[ebp]
-cmp dword ptr (-8)[ebp],edi
-jge L2508
-mov dword ptr (-148)[ebp],1
-jmp L2509
-L2508:
-mov dword ptr (-148)[ebp],0
-L2509:
-mov edi,dword ptr (-148)[ebp]
-cmp dword ptr (-144)[ebp],edi
-jne L2504
-mov dword ptr (-140)[ebp],1
-jmp L2505
-L2504:
-mov dword ptr (-140)[ebp],0
-L2505:
-mov edi,dword ptr (-16)[ebp]
-mov esi,dword ptr (-12)[ebp]
-lea esi,[esi*4]
-lea edi,[esi][edi*8]
-mov esi,dword ptr (-8)[ebp]
-lea esi,[esi*2]
-lea edi,[esi][edi]
-mov esi,dword ptr (-4)[ebp]
-lea edi,[esi][edi]
-mov edi,dword ptr (-80)[ebp][edi*4]
-cmp dword ptr (-140)[ebp],edi
-je L2499
-mov dword ptr (-84)[ebp],1
-L2499:
-L2496:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],2
-jl L2495
-L2492:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],2
-jl L2491
-L2488:
-inc dword ptr (-12)[ebp]
-cmp dword ptr (-12)[ebp],2
-jl L2487
-L2484:
-inc dword ptr (-16)[ebp]
-cmp dword ptr (-16)[ebp],2
-jl L2483
-cmp dword ptr (-84)[ebp],0
-je L2510
-add dword ptr (-120)[ebp],16
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2512
-push 16
-lea edi,(L2415)
-push edi
-call _printf
-add esp,8
-L2512:
-L2510:
-mov dword ptr (-128)[ebp],0
-mov edi,dword ptr (-128)[ebp]
-cmp edi,0
-je L2514
-add dword ptr (-120)[ebp],32
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2516
-push 32
-lea edi,(L2415)
-push edi
-call _printf
-add esp,8
-L2516:
-L2514:
-mov eax,dword ptr (-120)[ebp]
-L2414:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L2519 label byte
-db 76
-db 111
-db 99
-db 97
-db 108
-db 32
-db 101
-db 114
-db 114
-db 111
-db 114
-db 32
-db 37
-db 100
-db 46
-db 10
-db 0
-align 1
-L2520 label byte
-db 115
-db 55
-db 56
-db 49
-db 51
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L2521 label byte
-db 115
-db 55
-db 56
-db 49
-db 51
-db 32
-db 32
-db 0
-public _s7813
-_DATA ends
-_TEXT segment
-_s7813:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,88
-lea edi,(L2521)
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea esi,(60)[edi]
-mov dword ptr (-28)[ebp],esi
-mov dword ptr (-8)[ebp],0
-mov dword ptr (-32)[ebp],0
-mov edi,dword ptr (48)[edi]
-mov dword ptr (-4)[ebp],edi
-L2522:
-L2523:
-mov edi,dword ptr (-28)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-28)[ebp],esi
-mov esi,dword ptr (-24)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-24)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L2522
-jmp L2525
-mov dword ptr (-8)[ebp],1
-cmp dword ptr (-4)[ebp],0
-je L2527
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2527:
-L2525:
-jmp L2529
-mov dword ptr (-8)[ebp],2
-cmp dword ptr (-4)[ebp],0
-je L2531
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2531:
-L2529:
-jmp L2533
-mov dword ptr (-8)[ebp],3
-cmp dword ptr (-4)[ebp],0
-je L2535
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2535:
-L2533:
-jmp L2537
-mov dword ptr (-8)[ebp],4
-cmp dword ptr (-4)[ebp],0
-je L2539
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2539:
-L2537:
-jmp L2541
-mov dword ptr (-8)[ebp],5
-cmp dword ptr (-4)[ebp],0
-je L2543
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2543:
-L2541:
-jmp L2545
-mov dword ptr (-8)[ebp],6
-cmp dword ptr (-4)[ebp],0
-je L2547
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2547:
-L2545:
-jmp L2549
-mov dword ptr (-8)[ebp],7
-cmp dword ptr (-4)[ebp],0
-je L2551
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2551:
-L2549:
-jmp L2553
-mov dword ptr (-8)[ebp],8
-cmp dword ptr (-4)[ebp],0
-je L2555
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2555:
-L2553:
-jmp L2557
-mov dword ptr (-8)[ebp],9
-cmp dword ptr (-4)[ebp],0
-je L2559
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2559:
-L2557:
-jmp L2561
-mov dword ptr (-8)[ebp],10
-cmp dword ptr (-4)[ebp],0
-je L2563
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2563:
-L2561:
-jmp L2565
-mov dword ptr (-8)[ebp],11
-cmp dword ptr (-4)[ebp],0
-je L2567
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2567:
-L2565:
-jmp L2569
-mov dword ptr (-8)[ebp],12
-cmp dword ptr (-4)[ebp],0
-je L2571
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2571:
-L2569:
-jmp L2573
-mov dword ptr (-8)[ebp],13
-cmp dword ptr (-4)[ebp],0
-je L2575
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2575:
-L2573:
-jmp L2577
-mov dword ptr (-8)[ebp],14
-cmp dword ptr (-4)[ebp],0
-je L2579
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2579:
-L2577:
-jmp L2581
-mov dword ptr (-8)[ebp],15
-cmp dword ptr (-4)[ebp],0
-je L2583
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2583:
-L2581:
-jmp L2585
-mov dword ptr (-8)[ebp],16
-cmp dword ptr (-4)[ebp],0
-je L2587
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2587:
-L2585:
-jmp L2589
-mov dword ptr (-8)[ebp],17
-cmp dword ptr (-4)[ebp],0
-je L2591
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2591:
-L2589:
-jmp L2593
-mov dword ptr (-8)[ebp],18
-cmp dword ptr (-4)[ebp],0
-je L2595
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2595:
-L2593:
-jmp L2597
-mov dword ptr (-8)[ebp],16
-cmp dword ptr (-4)[ebp],0
-je L2599
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2599:
-L2597:
-jmp L2601
-mov dword ptr (-8)[ebp],20
-cmp dword ptr (-4)[ebp],0
-je L2603
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2603:
-L2601:
-jmp L2605
-mov dword ptr (-8)[ebp],21
-cmp dword ptr (-4)[ebp],0
-je L2607
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2607:
-L2605:
-jmp L2609
-mov dword ptr (-8)[ebp],22
-cmp dword ptr (-4)[ebp],0
-je L2611
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2611:
-L2609:
-jmp L2613
-mov dword ptr (-8)[ebp],23
-cmp dword ptr (-4)[ebp],0
-je L2615
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2615:
-L2613:
-jmp L2617
-mov dword ptr (-8)[ebp],24
-cmp dword ptr (-4)[ebp],0
-je L2619
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2619:
-L2617:
-jmp L2621
-mov dword ptr (-8)[ebp],25
-cmp dword ptr (-4)[ebp],0
-je L2623
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2623:
-L2621:
-jmp L2625
-mov dword ptr (-8)[ebp],26
-cmp dword ptr (-4)[ebp],0
-je L2627
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2627:
-L2625:
-jmp L2629
-mov dword ptr (-8)[ebp],27
-cmp dword ptr (-4)[ebp],0
-je L2631
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2631:
-L2629:
-jmp L2633
-mov dword ptr (-8)[ebp],28
-cmp dword ptr (-4)[ebp],0
-je L2635
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2635:
-L2633:
-jmp L2637
-mov dword ptr (-8)[ebp],26
-cmp dword ptr (-4)[ebp],0
-je L2639
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2639:
-L2637:
-jmp L2641
-mov dword ptr (-8)[ebp],30
-cmp dword ptr (-4)[ebp],0
-je L2643
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2643:
-L2641:
-jmp L2645
-mov dword ptr (-8)[ebp],31
-cmp dword ptr (-4)[ebp],0
-je L2647
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2647:
-L2645:
-jmp L2649
-mov dword ptr (-8)[ebp],32
-cmp dword ptr (-4)[ebp],0
-je L2651
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2651:
-L2649:
-jmp L2653
-mov dword ptr (-8)[ebp],33
-cmp dword ptr (-4)[ebp],0
-je L2655
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2655:
-L2653:
-jmp L2657
-mov dword ptr (-8)[ebp],34
-cmp dword ptr (-4)[ebp],0
-je L2659
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2659:
-L2657:
-jmp L2661
-mov dword ptr (-8)[ebp],35
-cmp dword ptr (-4)[ebp],0
-je L2663
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2663:
-L2661:
-jmp L2665
-mov dword ptr (-8)[ebp],36
-cmp dword ptr (-4)[ebp],0
-je L2667
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2667:
-L2665:
-jmp L2669
-mov dword ptr (-8)[ebp],37
-cmp dword ptr (-4)[ebp],0
-je L2671
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2671:
-L2669:
-jmp L2673
-mov dword ptr (-8)[ebp],38
-cmp dword ptr (-4)[ebp],0
-je L2675
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2675:
-L2673:
-jmp L2677
-mov dword ptr (-8)[ebp],39
-cmp dword ptr (-4)[ebp],0
-je L2679
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2679:
-L2677:
-jmp L2681
-mov dword ptr (-8)[ebp],40
-cmp dword ptr (-4)[ebp],0
-je L2683
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2683:
-L2681:
-jmp L2685
-mov dword ptr (-8)[ebp],41
-cmp dword ptr (-4)[ebp],0
-je L2687
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2687:
-L2685:
-jmp L2689
-mov dword ptr (-8)[ebp],42
-cmp dword ptr (-4)[ebp],0
-je L2691
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2691:
-L2689:
-jmp L2693
-mov dword ptr (-8)[ebp],43
-cmp dword ptr (-4)[ebp],0
-je L2695
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2695:
-L2693:
-jmp L2697
-mov dword ptr (-8)[ebp],44
-cmp dword ptr (-4)[ebp],0
-je L2699
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2699:
-L2697:
-jmp L2701
-mov dword ptr (-8)[ebp],45
-cmp dword ptr (-4)[ebp],0
-je L2703
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2703:
-L2701:
-jmp L2705
-mov dword ptr (-8)[ebp],46
-cmp dword ptr (-4)[ebp],0
-je L2707
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2707:
-L2705:
-jmp L2709
-mov dword ptr (-8)[ebp],47
-cmp dword ptr (-4)[ebp],0
-je L2711
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2711:
-L2709:
-jmp L2713
-mov dword ptr (-8)[ebp],48
-cmp dword ptr (-4)[ebp],0
-je L2715
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2715:
-L2713:
-jmp L2717
-mov dword ptr (-8)[ebp],49
-cmp dword ptr (-4)[ebp],0
-je L2719
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2719:
-L2717:
-jmp L2721
-mov dword ptr (-8)[ebp],50
-cmp dword ptr (-4)[ebp],0
-je L2723
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2723:
-L2721:
-jmp L2725
-mov dword ptr (-8)[ebp],51
-cmp dword ptr (-4)[ebp],0
-je L2727
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2727:
-L2725:
-jmp L2729
-mov dword ptr (-8)[ebp],52
-cmp dword ptr (-4)[ebp],0
-je L2731
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2731:
-L2729:
-jmp L2733
-mov dword ptr (-8)[ebp],53
-cmp dword ptr (-4)[ebp],0
-je L2735
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2735:
-L2733:
-jmp L2737
-mov dword ptr (-8)[ebp],54
-cmp dword ptr (-4)[ebp],0
-je L2739
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2739:
-L2737:
-jmp L2741
-mov dword ptr (-8)[ebp],55
-cmp dword ptr (-4)[ebp],0
-je L2743
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2743:
-L2741:
-jmp L2745
-mov dword ptr (-8)[ebp],56
-cmp dword ptr (-4)[ebp],0
-je L2747
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2747:
-L2745:
-jmp L2749
-mov dword ptr (-8)[ebp],57
-cmp dword ptr (-4)[ebp],0
-je L2751
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2751:
-L2749:
-jmp L2753
-mov dword ptr (-8)[ebp],58
-cmp dword ptr (-4)[ebp],0
-je L2755
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2755:
-L2753:
-jmp L2757
-mov dword ptr (-8)[ebp],56
-cmp dword ptr (-4)[ebp],0
-je L2759
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2759:
-L2757:
-jmp L2761
-mov dword ptr (-8)[ebp],60
-cmp dword ptr (-4)[ebp],0
-je L2763
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2763:
-L2761:
-jmp L2765
-mov dword ptr (-8)[ebp],61
-cmp dword ptr (-4)[ebp],0
-je L2767
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2767:
-L2765:
-jmp L2769
-mov dword ptr (-8)[ebp],62
-cmp dword ptr (-4)[ebp],0
-je L2771
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2771:
-L2769:
-jmp L2773
-mov dword ptr (-8)[ebp],63
-cmp dword ptr (-4)[ebp],0
-je L2775
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2775:
-L2773:
-jmp L2777
-mov dword ptr (-8)[ebp],64
-cmp dword ptr (-4)[ebp],0
-je L2779
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2779:
-L2777:
-jmp L2781
-mov dword ptr (-8)[ebp],65
-cmp dword ptr (-4)[ebp],0
-je L2783
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2783:
-L2781:
-jmp L2785
-mov dword ptr (-8)[ebp],66
-cmp dword ptr (-4)[ebp],0
-je L2787
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2787:
-L2785:
-jmp L2789
-mov dword ptr (-8)[ebp],67
-cmp dword ptr (-4)[ebp],0
-je L2791
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2791:
-L2789:
-jmp L2793
-mov dword ptr (-8)[ebp],68
-cmp dword ptr (-4)[ebp],0
-je L2795
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2795:
-L2793:
-jmp L2797
-mov dword ptr (-8)[ebp],69
-cmp dword ptr (-4)[ebp],0
-je L2799
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2799:
-L2797:
-jmp L2801
-mov dword ptr (-8)[ebp],70
-cmp dword ptr (-4)[ebp],0
-je L2803
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2803:
-L2801:
-jmp L2805
-mov dword ptr (-8)[ebp],71
-cmp dword ptr (-4)[ebp],0
-je L2807
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2807:
-L2805:
-jmp L2809
-mov dword ptr (-8)[ebp],72
-cmp dword ptr (-4)[ebp],0
-je L2811
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2811:
-L2809:
-jmp L2813
-mov dword ptr (-8)[ebp],73
-cmp dword ptr (-4)[ebp],0
-je L2815
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2815:
-L2813:
-jmp L2817
-mov dword ptr (-8)[ebp],74
-cmp dword ptr (-4)[ebp],0
-je L2819
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2819:
-L2817:
-jmp L2821
-mov dword ptr (-8)[ebp],75
-cmp dword ptr (-4)[ebp],0
-je L2823
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2823:
-L2821:
-cmp dword ptr (-8)[ebp],0
-je L2825
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2827
-push 1
-lea edi,(L2520)
-push edi
-call _printf
-add esp,8
-L2827:
-inc dword ptr (-32)[ebp]
-L2825:
-mov dword ptr (-8)[ebp],0
-mov dword ptr (-16)[ebp],0
-mov dword ptr (-12)[ebp],0
-mov edi,dword ptr (-12)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-12)[ebp],esi
-cmp edi,0
-je L2830
-mov edi,dword ptr (-16)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-16)[ebp],esi
-cmp edi,0
-je L2830
-mov dword ptr (-44)[ebp],1
-jmp L2831
-L2830:
-mov dword ptr (-44)[ebp],0
-L2831:
-mov edi,dword ptr (-44)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-12)[ebp],1
-je L2832
-mov dword ptr (-8)[ebp],1
-cmp dword ptr (-4)[ebp],0
-je L2834
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2834:
-L2832:
-cmp dword ptr (-16)[ebp],0
-je L2836
-mov dword ptr (-8)[ebp],2
-cmp dword ptr (-4)[ebp],0
-je L2838
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2838:
-L2836:
-cmp dword ptr (-20)[ebp],0
-je L2840
-mov dword ptr (-8)[ebp],3
-cmp dword ptr (-4)[ebp],0
-je L2842
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2842:
-L2840:
-cmp dword ptr (-12)[ebp],0
-je L2845
-mov edi,dword ptr (-16)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-16)[ebp],esi
-cmp edi,0
-je L2845
-mov dword ptr (-48)[ebp],1
-jmp L2846
-L2845:
-mov dword ptr (-48)[ebp],0
-L2846:
-mov edi,dword ptr (-48)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-12)[ebp],1
-je L2847
-mov dword ptr (-8)[ebp],4
-cmp dword ptr (-4)[ebp],0
-je L2849
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2849:
-L2847:
-cmp dword ptr (-16)[ebp],1
-je L2851
-mov dword ptr (-8)[ebp],5
-cmp dword ptr (-4)[ebp],0
-je L2853
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2853:
-L2851:
-cmp dword ptr (-20)[ebp],0
-je L2855
-mov dword ptr (-8)[ebp],6
-cmp dword ptr (-4)[ebp],0
-je L2857
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2857:
-L2855:
-mov edi,dword ptr (-12)[ebp]
-mov esi,edi
-sub esi,1
-mov dword ptr (-12)[ebp],esi
-cmp edi,0
-je L2860
-cmp dword ptr (-16)[ebp],0
-je L2860
-mov dword ptr (-52)[ebp],1
-jmp L2861
-L2860:
-mov dword ptr (-52)[ebp],0
-L2861:
-mov edi,dword ptr (-52)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-12)[ebp],0
-je L2862
-mov dword ptr (-8)[ebp],7
-cmp dword ptr (-4)[ebp],0
-je L2864
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2864:
-L2862:
-cmp dword ptr (-16)[ebp],1
-je L2866
-mov dword ptr (-8)[ebp],8
-cmp dword ptr (-4)[ebp],0
-je L2868
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2868:
-L2866:
-cmp dword ptr (-20)[ebp],1
-je L2870
-mov dword ptr (-8)[ebp],9
-cmp dword ptr (-4)[ebp],0
-je L2872
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2872:
-L2870:
-cmp dword ptr (-12)[ebp],0
-je L2875
-mov edi,dword ptr (-16)[ebp]
-mov esi,edi
-sub esi,1
-mov dword ptr (-16)[ebp],esi
-cmp edi,0
-je L2875
-mov dword ptr (-56)[ebp],1
-jmp L2876
-L2875:
-mov dword ptr (-56)[ebp],0
-L2876:
-mov edi,dword ptr (-56)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-12)[ebp],0
-je L2877
-mov dword ptr (-8)[ebp],10
-cmp dword ptr (-4)[ebp],0
-je L2879
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2879:
-L2877:
-cmp dword ptr (-16)[ebp],1
-je L2881
-mov dword ptr (-8)[ebp],11
-cmp dword ptr (-4)[ebp],0
-je L2883
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2883:
-L2881:
-cmp dword ptr (-20)[ebp],0
-je L2885
-mov dword ptr (-8)[ebp],12
-cmp dword ptr (-4)[ebp],0
-je L2887
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2887:
-L2885:
-cmp dword ptr (-8)[ebp],0
-je L2889
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2891
-push 2
-lea edi,(L2520)
-push edi
-call _printf
-add esp,8
-L2891:
-add dword ptr (-32)[ebp],2
-L2889:
-mov dword ptr (-8)[ebp],0
-mov dword ptr (-16)[ebp],0
-mov dword ptr (-12)[ebp],0
-mov edi,dword ptr (-12)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-12)[ebp],esi
-cmp edi,0
-jne L2896
-cmp dword ptr (-16)[ebp],0
-je L2894
-L2896:
-mov dword ptr (-60)[ebp],1
-jmp L2895
-L2894:
-mov dword ptr (-60)[ebp],0
-L2895:
-mov edi,dword ptr (-60)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-12)[ebp],1
-je L2897
-mov dword ptr (-8)[ebp],1
-cmp dword ptr (-4)[ebp],0
-je L2899
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2899:
-L2897:
-cmp dword ptr (-16)[ebp],0
-je L2901
-mov dword ptr (-8)[ebp],2
-cmp dword ptr (-4)[ebp],0
-je L2903
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2903:
-L2901:
-cmp dword ptr (-20)[ebp],0
-je L2905
-mov dword ptr (-8)[ebp],3
-cmp dword ptr (-4)[ebp],0
-je L2907
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2907:
-L2905:
-mov edi,dword ptr (-16)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-16)[ebp],esi
-cmp edi,0
-jne L2912
-cmp dword ptr (-12)[ebp],0
-je L2910
-L2912:
-mov dword ptr (-64)[ebp],1
-jmp L2911
-L2910:
-mov dword ptr (-64)[ebp],0
-L2911:
-mov edi,dword ptr (-64)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-12)[ebp],1
-je L2913
-mov dword ptr (-8)[ebp],4
-cmp dword ptr (-4)[ebp],0
-je L2915
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2915:
-L2913:
-cmp dword ptr (-16)[ebp],1
-je L2917
-mov dword ptr (-8)[ebp],5
-cmp dword ptr (-4)[ebp],0
-je L2919
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2919:
-L2917:
-cmp dword ptr (-20)[ebp],1
-je L2921
-mov dword ptr (-8)[ebp],6
-cmp dword ptr (-4)[ebp],0
-je L2923
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2923:
-L2921:
-mov edi,dword ptr (-12)[ebp]
-mov esi,edi
-sub esi,1
-mov dword ptr (-12)[ebp],esi
-cmp edi,0
-jne L2928
-mov edi,dword ptr (-16)[ebp]
-mov esi,edi
-sub esi,1
-mov dword ptr (-16)[ebp],esi
-cmp edi,0
-je L2926
-L2928:
-mov dword ptr (-68)[ebp],1
-jmp L2927
-L2926:
-mov dword ptr (-68)[ebp],0
-L2927:
-mov edi,dword ptr (-68)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-12)[ebp],0
-je L2929
-mov dword ptr (-8)[ebp],7
-cmp dword ptr (-4)[ebp],0
-je L2931
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2931:
-L2929:
-cmp dword ptr (-16)[ebp],1
-je L2933
-mov dword ptr (-8)[ebp],8
-cmp dword ptr (-4)[ebp],0
-je L2935
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2935:
-L2933:
-cmp dword ptr (-20)[ebp],1
-je L2937
-mov dword ptr (-8)[ebp],9
-cmp dword ptr (-4)[ebp],0
-je L2939
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2939:
-L2937:
-cmp dword ptr (-12)[ebp],0
-jne L2944
-mov edi,dword ptr (-16)[ebp]
-mov esi,edi
-sub esi,1
-mov dword ptr (-16)[ebp],esi
-cmp edi,0
-je L2942
-L2944:
-mov dword ptr (-72)[ebp],1
-jmp L2943
-L2942:
-mov dword ptr (-72)[ebp],0
-L2943:
-mov edi,dword ptr (-72)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-12)[ebp],0
-je L2945
-mov dword ptr (-8)[ebp],10
-cmp dword ptr (-4)[ebp],0
-je L2947
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2947:
-L2945:
-cmp dword ptr (-16)[ebp],0
-je L2949
-mov dword ptr (-8)[ebp],11
-cmp dword ptr (-4)[ebp],0
-je L2951
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2951:
-L2949:
-cmp dword ptr (-20)[ebp],1
-je L2953
-mov dword ptr (-8)[ebp],12
-cmp dword ptr (-4)[ebp],0
-je L2955
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L2519)
-push edi
-call _printf
-add esp,8
-L2955:
-L2953:
-cmp dword ptr (-8)[ebp],0
-je L2957
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2959
-push 4
-lea edi,(L2520)
-push edi
-call _printf
-add esp,8
-L2959:
-add dword ptr (-32)[ebp],4
-L2957:
-mov dword ptr (-16)[ebp],0
-mov dword ptr (-12)[ebp],0
-mov dword ptr (-36)[ebp],0
-mov dword ptr (-40)[ebp],1
-cmp dword ptr (-40)[ebp],0
-je L2963
-mov edi,dword ptr (-36)[ebp]
-mov dword ptr (-76)[ebp],edi
-jmp L2964
-L2963:
-cmp dword ptr (-40)[ebp],0
-je L2965
-mov edi,dword ptr (-12)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-12)[ebp],esi
-mov dword ptr (-80)[ebp],edi
-jmp L2966
-L2965:
-mov edi,dword ptr (-16)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-16)[ebp],esi
-mov dword ptr (-80)[ebp],edi
-L2966:
-mov edi,dword ptr (-80)[ebp]
-mov dword ptr (-76)[ebp],edi
-L2964:
-mov edi,dword ptr (-76)[ebp]
-mov dword ptr (-20)[ebp],edi
-cmp dword ptr (-20)[ebp],0
-jne L2970
-cmp dword ptr (-12)[ebp],0
-jne L2970
-cmp dword ptr (-16)[ebp],0
-je L2967
-L2970:
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2971
-push 8
-lea edi,(L2520)
-push edi
-call _printf
-add esp,8
-L2971:
-add dword ptr (-32)[ebp],8
-L2967:
-cmp dword ptr (-40)[ebp],0
-je L2978
-mov edi,dword ptr (-36)[ebp]
-mov dword ptr (-84)[ebp],edi
-jmp L2979
-L2978:
-mov dword ptr (-84)[ebp],1
-L2979:
-cmp dword ptr (-84)[ebp],0
-jne L2977
-cmp dword ptr (-36)[ebp],0
-je L2980
-mov dword ptr (-88)[ebp],1
-jmp L2981
-L2980:
-mov edi,dword ptr (-36)[ebp]
-mov dword ptr (-88)[ebp],edi
-L2981:
-cmp dword ptr (-88)[ebp],0
-je L2973
-L2977:
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L2982
-push 16
-lea edi,(L2520)
-push edi
-call _printf
-add esp,8
-L2982:
-add dword ptr (-32)[ebp],16
-L2973:
-mov eax,dword ptr (-32)[ebp]
-L2518:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L2985 label byte
-db 115
-db 56
-db 49
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L2986 label byte
-db 115
-db 56
-db 49
-db 32
-db 32
-db 32
-db 32
-db 0
-align 1
-L2987 label byte
-db 82
-db 101
-db 103
-db 105
-db 115
-db 116
-db 101
-db 114
-db 32
-db 99
-db 111
-db 117
-db 110
-db 116
-db 32
-db 102
-db 111
-db 114
-db 32
-db 37
-db 115
-db 32
-db 105
-db 115
-db 32
-db 117
-db 110
-db 114
-db 101
-db 108
-db 105
-db 97
-db 98
-db 108
-db 101
-db 46
-db 10
-db 0
-align 1
-L2988 label byte
-db 37
-db 100
-db 32
-db 114
-db 101
-db 103
-db 105
-db 115
-db 116
-db 101
-db 114
-db 115
-db 32
-db 97
-db 115
-db 115
-db 105
-db 103
-db 110
-db 101
-db 100
-db 32
-db 116
-db 111
-db 32
-db 37
-db 115
-db 32
-db 118
-db 97
-db 114
-db 105
-db 97
-db 98
-db 108
-db 101
-db 115
-db 46
-db 10
-db 0
-public _s81
-_DATA ends
-_TEXT segment
-_s81:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,56
-mov dword ptr (-56)[ebp],0
-mov dword ptr (-44)[ebp],0
-mov dword ptr (-48)[ebp],0
-mov dword ptr (-52)[ebp],0
-lea edi,(L2986)
-mov dword ptr (-36)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-40)[ebp],edi
-L2989:
-L2990:
-mov edi,dword ptr (-40)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-40)[ebp],esi
-mov esi,dword ptr (-36)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-36)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L2989
-mov dword ptr (-16)[ebp],1
-mov dword ptr (-20)[ebp],0
-L2992:
-mov edi,dword ptr (-16)[ebp]
-mov ebx,edi
-mov byte ptr (-1)[ebp],bl
-mov byte ptr (-21)[ebp],bl
-lea esi,(-16)[ebp]
-mov dword ptr (-8)[ebp],esi
-lea esi,(-16)[ebp]
-mov dword ptr (-28)[ebp],esi
-mov dword ptr (-12)[ebp],edi
-mov dword ptr (-32)[ebp],edi
-movsx edi,byte ptr (-1)[ebp]
-movsx esi,byte ptr (-21)[ebp]
-cmp edi,esi
-je L2996
-mov dword ptr (-44)[ebp],1
-L2996:
-mov edi,dword ptr (-8)[ebp]
-mov esi,dword ptr (-28)[ebp]
-cmp edi,esi
-je L2998
-mov dword ptr (-48)[ebp],1
-L2998:
-mov edi,dword ptr (-32)[ebp]
-cmp dword ptr (-12)[ebp],edi
-je L3000
-mov dword ptr (-52)[ebp],1
-L3000:
-sal dword ptr (-16)[ebp],1
-L2993:
-inc dword ptr (-20)[ebp]
-cmp dword ptr (-20)[ebp],50
-jl L2992
-cmp dword ptr (-44)[ebp],0
-je L3002
-inc dword ptr (-56)[ebp]
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3004
-push 1
-lea edi,(L2985)
-push edi
-call _printf
-add esp,8
-L3004:
-L3002:
-cmp dword ptr (-48)[ebp],0
-je L3006
-add dword ptr (-56)[ebp],2
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3008
-push 2
-lea edi,(L2985)
-push edi
-call _printf
-add esp,8
-L3008:
-L3006:
-cmp dword ptr (-52)[ebp],0
-je L3010
-add dword ptr (-56)[ebp],4
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3012
-push 4
-lea edi,(L2985)
-push edi
-call _printf
-add esp,8
-L3012:
-L3010:
-call _regc
-add esp,0
-mov dword ptr (-16)[ebp],eax
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (40)[edi],0
-je L3014
-cmp dword ptr (-16)[ebp],0
-jge L3016
-lea edi,(L425)
-push edi
-lea edi,(L2987)
-push edi
-call _printf
-add esp,8
-jmp L3017
-L3016:
-lea edi,(L425)
-push edi
-mov edi,dword ptr (-16)[ebp]
-push edi
-lea edi,(L2988)
-push edi
-call _printf
-add esp,12
-L3017:
-L3014:
-call _regp
-add esp,0
-mov dword ptr (-16)[ebp],eax
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (40)[edi],0
-je L3018
-cmp dword ptr (-16)[ebp],0
-jge L3020
-lea edi,(L3022)
-push edi
-lea edi,(L2987)
-push edi
-call _printf
-add esp,8
-jmp L3021
-L3020:
-lea edi,(L3022)
-push edi
-mov edi,dword ptr (-16)[ebp]
-push edi
-lea edi,(L2988)
-push edi
-call _printf
-add esp,12
-L3021:
-L3018:
-call _regi
-add esp,0
-mov dword ptr (-16)[ebp],eax
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (40)[edi],0
-je L3023
-cmp dword ptr (-16)[ebp],0
-jge L3025
-lea edi,(L426)
-push edi
-lea edi,(L2987)
-push edi
-call _printf
-add esp,8
-jmp L3026
-L3025:
-lea edi,(L426)
-push edi
-mov edi,dword ptr (-16)[ebp]
-push edi
-lea edi,(L2988)
-push edi
-call _printf
-add esp,12
-L3026:
-L3023:
-mov eax,dword ptr (-56)[ebp]
-L2984:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _regc
-_regc:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,148
-mov byte ptr (-138)[ebp],0
-mov byte ptr (-117)[ebp],1
-mov byte ptr (-118)[ebp],2
-mov byte ptr (-119)[ebp],3
-mov byte ptr (-1)[ebp],4
-mov byte ptr (-120)[ebp],5
-mov byte ptr (-2)[ebp],6
-mov byte ptr (-121)[ebp],7
-mov byte ptr (-3)[ebp],8
-mov byte ptr (-122)[ebp],9
-mov byte ptr (-4)[ebp],10
-mov byte ptr (-123)[ebp],11
-mov byte ptr (-5)[ebp],12
-mov byte ptr (-124)[ebp],13
-mov byte ptr (-6)[ebp],14
-mov byte ptr (-125)[ebp],15
-mov byte ptr (-7)[ebp],16
-mov byte ptr (-126)[ebp],17
-mov byte ptr (-8)[ebp],18
-mov byte ptr (-127)[ebp],19
-mov byte ptr (-9)[ebp],20
-mov byte ptr (-128)[ebp],21
-mov byte ptr (-10)[ebp],22
-mov byte ptr (-129)[ebp],23
-mov byte ptr (-11)[ebp],24
-mov byte ptr (-130)[ebp],25
-mov byte ptr (-12)[ebp],26
-mov byte ptr (-131)[ebp],27
-mov byte ptr (-13)[ebp],28
-mov byte ptr (-132)[ebp],29
-mov byte ptr (-14)[ebp],30
-mov byte ptr (-133)[ebp],31
-mov byte ptr (-15)[ebp],32
-mov byte ptr (-134)[ebp],33
-mov byte ptr (-16)[ebp],34
-mov byte ptr (-135)[ebp],35
-mov byte ptr (-136)[ebp],36
-mov byte ptr (-137)[ebp],37
-mov byte ptr (-139)[ebp],38
-lea edi,(-117)[ebp]
-lea esi,(-138)[ebp]
-mov ebx,edi
-sub ebx,esi
-mov esi,ebx
-mov dword ptr (-104)[ebp],esi
-lea esi,(-118)[ebp]
-sub esi,edi
-mov edi,esi
-mov dword ptr (-100)[ebp],edi
-lea edi,(-119)[ebp]
-lea esi,(-118)[ebp]
-sub edi,esi
-mov dword ptr (-96)[ebp],edi
-lea edi,(-120)[ebp]
-lea esi,(-119)[ebp]
-sub edi,esi
-mov dword ptr (-92)[ebp],edi
-lea edi,(-121)[ebp]
-lea esi,(-120)[ebp]
-sub edi,esi
-mov dword ptr (-88)[ebp],edi
-lea edi,(-122)[ebp]
-lea esi,(-121)[ebp]
-sub edi,esi
-mov dword ptr (-84)[ebp],edi
-lea edi,(-123)[ebp]
-lea esi,(-122)[ebp]
-sub edi,esi
-mov dword ptr (-80)[ebp],edi
-lea edi,(-124)[ebp]
-lea esi,(-123)[ebp]
-sub edi,esi
-mov dword ptr (-76)[ebp],edi
-lea edi,(-125)[ebp]
-lea esi,(-124)[ebp]
-sub edi,esi
-mov dword ptr (-72)[ebp],edi
-lea edi,(-126)[ebp]
-lea esi,(-125)[ebp]
-sub edi,esi
-mov dword ptr (-68)[ebp],edi
-lea edi,(-127)[ebp]
-lea esi,(-126)[ebp]
-sub edi,esi
-mov dword ptr (-64)[ebp],edi
-lea edi,(-128)[ebp]
-lea esi,(-127)[ebp]
-sub edi,esi
-mov dword ptr (-60)[ebp],edi
-lea edi,(-129)[ebp]
-lea esi,(-128)[ebp]
-sub edi,esi
-mov dword ptr (-56)[ebp],edi
-lea edi,(-130)[ebp]
-lea esi,(-129)[ebp]
-sub edi,esi
-mov dword ptr (-52)[ebp],edi
-lea edi,(-131)[ebp]
-lea esi,(-130)[ebp]
-sub edi,esi
-mov dword ptr (-48)[ebp],edi
-lea edi,(-132)[ebp]
-lea esi,(-131)[ebp]
-sub edi,esi
-mov dword ptr (-44)[ebp],edi
-lea edi,(-133)[ebp]
-lea esi,(-132)[ebp]
-sub edi,esi
-mov dword ptr (-40)[ebp],edi
-lea edi,(-134)[ebp]
-lea esi,(-133)[ebp]
-sub edi,esi
-mov dword ptr (-36)[ebp],edi
-lea edi,(-135)[ebp]
-lea esi,(-134)[ebp]
-sub edi,esi
-mov dword ptr (-32)[ebp],edi
-lea edi,(-136)[ebp]
-lea esi,(-135)[ebp]
-sub edi,esi
-mov dword ptr (-28)[ebp],edi
-lea edi,(-137)[ebp]
-lea esi,(-136)[ebp]
-sub edi,esi
-mov dword ptr (-24)[ebp],edi
-lea edi,(-139)[ebp]
-lea esi,(-137)[ebp]
-sub edi,esi
-mov dword ptr (-20)[ebp],edi
-mov edi,dword ptr (-104)[ebp]
-mov dword ptr (-116)[ebp],edi
-mov dword ptr (-112)[ebp],1
-mov dword ptr (-108)[ebp],0
-L3049:
-mov edi,dword ptr (-112)[ebp]
-cmp edi,1
-je L3055
-cmp edi,2
-je L3058
-cmp edi,3
-je L3063
-jmp L3053
-L3055:
-mov edi,dword ptr (-108)[ebp]
-mov esi,dword ptr (-116)[ebp]
-cmp dword ptr (-104)[ebp][edi*4],esi
-je L3054
-mov edi,dword ptr (-108)[ebp]
-mov edi,dword ptr (-104)[ebp][edi*4]
-mov dword ptr (-148)[ebp],edi
-mov dword ptr (-112)[ebp],2
-mov dword ptr (-144)[ebp],1
-jmp L3054
-L3058:
-mov edi,dword ptr (-108)[ebp]
-mov esi,dword ptr (-116)[ebp]
-cmp dword ptr (-104)[ebp][edi*4],esi
-jne L3059
-mov dword ptr (-112)[ebp],3
-jmp L3054
-L3059:
-mov edi,dword ptr (-108)[ebp]
-mov esi,dword ptr (-148)[ebp]
-cmp dword ptr (-104)[ebp][edi*4],esi
-jne L3061
-inc dword ptr (-144)[ebp]
-jmp L3054
-L3061:
-mov dword ptr (-112)[ebp],4
-jmp L3054
-L3063:
-mov edi,dword ptr (-108)[ebp]
-mov esi,dword ptr (-116)[ebp]
-cmp dword ptr (-104)[ebp][edi*4],esi
-je L3054
-mov dword ptr (-112)[ebp],4
-L3053:
-L3054:
-L3050:
-inc dword ptr (-108)[ebp]
-cmp dword ptr (-108)[ebp],22
-jl L3049
-cmp dword ptr (-112)[ebp],3
-jne L3066
-mov edi,16
-mov eax,edi
-sub eax,dword ptr (-144)[ebp]
-jmp L3027
-L3066:
-mov eax,-1
-L3027:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _regi
-_regi:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,264
-mov dword ptr (-252)[ebp],0
-mov dword ptr (-168)[ebp],1
-mov dword ptr (-172)[ebp],2
-mov dword ptr (-176)[ebp],3
-mov dword ptr (-4)[ebp],4
-mov dword ptr (-180)[ebp],5
-mov dword ptr (-8)[ebp],6
-mov dword ptr (-184)[ebp],7
-mov dword ptr (-12)[ebp],8
-mov dword ptr (-188)[ebp],9
-mov dword ptr (-16)[ebp],10
-mov dword ptr (-192)[ebp],11
-mov dword ptr (-20)[ebp],12
-mov dword ptr (-196)[ebp],13
-mov dword ptr (-24)[ebp],14
-mov dword ptr (-200)[ebp],15
-mov dword ptr (-28)[ebp],16
-mov dword ptr (-204)[ebp],17
-mov dword ptr (-32)[ebp],18
-mov dword ptr (-208)[ebp],19
-mov dword ptr (-36)[ebp],20
-mov dword ptr (-212)[ebp],21
-mov dword ptr (-40)[ebp],22
-mov dword ptr (-216)[ebp],23
-mov dword ptr (-44)[ebp],24
-mov dword ptr (-220)[ebp],25
-mov dword ptr (-48)[ebp],26
-mov dword ptr (-224)[ebp],27
-mov dword ptr (-52)[ebp],28
-mov dword ptr (-228)[ebp],29
-mov dword ptr (-56)[ebp],30
-mov dword ptr (-232)[ebp],31
-mov dword ptr (-60)[ebp],32
-mov dword ptr (-236)[ebp],33
-mov dword ptr (-64)[ebp],34
-mov dword ptr (-240)[ebp],35
-mov dword ptr (-244)[ebp],36
-mov dword ptr (-248)[ebp],37
-mov dword ptr (-256)[ebp],38
-lea edi,(-168)[ebp]
-mov esi,4
-lea ebx,(-252)[ebp]
-mov edx,edi
-sub edx,ebx
-mov eax,edx
-cdq
-idiv esi
-mov dword ptr (-152)[ebp],eax
-lea ebx,(-172)[ebp]
-sub ebx,edi
-mov eax,ebx
-cdq
-idiv esi
-mov dword ptr (-148)[ebp],eax
-lea edi,(-176)[ebp]
-lea esi,(-172)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-144)[ebp],eax
-lea edi,(-180)[ebp]
-lea esi,(-176)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-140)[ebp],eax
-lea edi,(-184)[ebp]
-lea esi,(-180)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-136)[ebp],eax
-lea edi,(-188)[ebp]
-lea esi,(-184)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-132)[ebp],eax
-lea edi,(-192)[ebp]
-lea esi,(-188)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-128)[ebp],eax
-lea edi,(-196)[ebp]
-lea esi,(-192)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-124)[ebp],eax
-lea edi,(-200)[ebp]
-lea esi,(-196)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-120)[ebp],eax
-lea edi,(-204)[ebp]
-lea esi,(-200)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-116)[ebp],eax
-lea edi,(-208)[ebp]
-lea esi,(-204)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-112)[ebp],eax
-lea edi,(-212)[ebp]
-lea esi,(-208)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-108)[ebp],eax
-lea edi,(-216)[ebp]
-lea esi,(-212)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-104)[ebp],eax
-lea edi,(-220)[ebp]
-lea esi,(-216)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-100)[ebp],eax
-lea edi,(-224)[ebp]
-lea esi,(-220)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-96)[ebp],eax
-lea edi,(-228)[ebp]
-lea esi,(-224)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-92)[ebp],eax
-lea edi,(-232)[ebp]
-lea esi,(-228)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-88)[ebp],eax
-lea edi,(-236)[ebp]
-lea esi,(-232)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-84)[ebp],eax
-lea edi,(-240)[ebp]
-lea esi,(-236)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-80)[ebp],eax
-lea edi,(-244)[ebp]
-lea esi,(-240)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-76)[ebp],eax
-lea edi,(-248)[ebp]
-lea esi,(-244)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-72)[ebp],eax
-lea edi,(-256)[ebp]
-lea esi,(-248)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-68)[ebp],eax
-mov edi,dword ptr (-152)[ebp]
-mov dword ptr (-164)[ebp],edi
-mov dword ptr (-160)[ebp],1
-mov dword ptr (-156)[ebp],0
-L3090:
-mov edi,dword ptr (-160)[ebp]
-cmp edi,1
-je L3096
-cmp edi,2
-je L3099
-cmp edi,3
-je L3104
-jmp L3094
-L3096:
-mov edi,dword ptr (-156)[ebp]
-mov esi,dword ptr (-164)[ebp]
-cmp dword ptr (-152)[ebp][edi*4],esi
-je L3095
-mov edi,dword ptr (-156)[ebp]
-mov edi,dword ptr (-152)[ebp][edi*4]
-mov dword ptr (-264)[ebp],edi
-mov dword ptr (-160)[ebp],2
-mov dword ptr (-260)[ebp],1
-jmp L3095
-L3099:
-mov edi,dword ptr (-156)[ebp]
-mov esi,dword ptr (-164)[ebp]
-cmp dword ptr (-152)[ebp][edi*4],esi
-jne L3100
-mov dword ptr (-160)[ebp],3
-jmp L3095
-L3100:
-mov edi,dword ptr (-156)[ebp]
-mov esi,dword ptr (-264)[ebp]
-cmp dword ptr (-152)[ebp][edi*4],esi
-jne L3102
-inc dword ptr (-260)[ebp]
-jmp L3095
-L3102:
-mov dword ptr (-160)[ebp],4
-jmp L3095
-L3104:
-mov edi,dword ptr (-156)[ebp]
-mov esi,dword ptr (-164)[ebp]
-cmp dword ptr (-152)[ebp][edi*4],esi
-je L3095
-mov dword ptr (-160)[ebp],4
-L3094:
-L3095:
-L3091:
-inc dword ptr (-156)[ebp]
-cmp dword ptr (-156)[ebp],22
-jl L3090
-cmp dword ptr (-160)[ebp],3
-jne L3107
-mov edi,16
-mov eax,edi
-sub eax,dword ptr (-260)[ebp]
-jmp L3068
-L3107:
-mov eax,-1
-L3068:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _regp
-_regp:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,264
-lea edi,(-252)[ebp]
-mov dword ptr (-252)[ebp],edi
-lea edi,(-228)[ebp]
-mov dword ptr (-228)[ebp],edi
-lea edi,(-232)[ebp]
-mov dword ptr (-232)[ebp],edi
-lea edi,(-236)[ebp]
-mov dword ptr (-236)[ebp],edi
-lea edi,(-164)[ebp]
-mov dword ptr (-4)[ebp],edi
-lea edi,(-164)[ebp]
-mov dword ptr (-164)[ebp],edi
-lea edi,(-168)[ebp]
-mov dword ptr (-8)[ebp],edi
-lea edi,(-168)[ebp]
-mov dword ptr (-168)[ebp],edi
-lea edi,(-172)[ebp]
-mov dword ptr (-12)[ebp],edi
-lea edi,(-172)[ebp]
-mov dword ptr (-172)[ebp],edi
-lea edi,(-176)[ebp]
-mov dword ptr (-16)[ebp],edi
-lea edi,(-176)[ebp]
-mov dword ptr (-176)[ebp],edi
-lea edi,(-180)[ebp]
-mov dword ptr (-20)[ebp],edi
-lea edi,(-180)[ebp]
-mov dword ptr (-180)[ebp],edi
-lea edi,(-184)[ebp]
-mov dword ptr (-24)[ebp],edi
-lea edi,(-184)[ebp]
-mov dword ptr (-184)[ebp],edi
-lea edi,(-188)[ebp]
-mov dword ptr (-28)[ebp],edi
-lea edi,(-188)[ebp]
-mov dword ptr (-188)[ebp],edi
-lea edi,(-192)[ebp]
-mov dword ptr (-32)[ebp],edi
-lea edi,(-192)[ebp]
-mov dword ptr (-192)[ebp],edi
-lea edi,(-196)[ebp]
-mov dword ptr (-36)[ebp],edi
-lea edi,(-196)[ebp]
-mov dword ptr (-196)[ebp],edi
-lea edi,(-200)[ebp]
-mov dword ptr (-40)[ebp],edi
-lea edi,(-200)[ebp]
-mov dword ptr (-200)[ebp],edi
-lea edi,(-204)[ebp]
-mov dword ptr (-44)[ebp],edi
-lea edi,(-204)[ebp]
-mov dword ptr (-204)[ebp],edi
-lea edi,(-208)[ebp]
-mov dword ptr (-48)[ebp],edi
-lea edi,(-208)[ebp]
-mov dword ptr (-208)[ebp],edi
-lea edi,(-212)[ebp]
-mov dword ptr (-52)[ebp],edi
-lea edi,(-212)[ebp]
-mov dword ptr (-212)[ebp],edi
-lea edi,(-216)[ebp]
-mov dword ptr (-56)[ebp],edi
-lea edi,(-216)[ebp]
-mov dword ptr (-216)[ebp],edi
-lea edi,(-220)[ebp]
-mov dword ptr (-60)[ebp],edi
-lea edi,(-220)[ebp]
-mov dword ptr (-220)[ebp],edi
-lea edi,(-224)[ebp]
-mov dword ptr (-64)[ebp],edi
-lea edi,(-224)[ebp]
-mov dword ptr (-224)[ebp],edi
-lea edi,(-240)[ebp]
-mov dword ptr (-240)[ebp],edi
-lea edi,(-244)[ebp]
-mov dword ptr (-244)[ebp],edi
-lea edi,(-256)[ebp]
-mov dword ptr (-256)[ebp],edi
-lea edi,(-228)[ebp]
-mov esi,4
-lea ebx,(-252)[ebp]
-mov edx,edi
-sub edx,ebx
-mov eax,edx
-cdq
-idiv esi
-mov dword ptr (-152)[ebp],eax
-lea ebx,(-232)[ebp]
-sub ebx,edi
-mov eax,ebx
-cdq
-idiv esi
-mov dword ptr (-148)[ebp],eax
-lea edi,(-236)[ebp]
-lea esi,(-232)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-144)[ebp],eax
-lea edi,(-164)[ebp]
-lea esi,(-236)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-140)[ebp],eax
-lea edi,(-168)[ebp]
-lea esi,(-164)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-136)[ebp],eax
-lea edi,(-172)[ebp]
-lea esi,(-168)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-132)[ebp],eax
-lea edi,(-176)[ebp]
-lea esi,(-172)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-128)[ebp],eax
-lea edi,(-180)[ebp]
-lea esi,(-176)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-124)[ebp],eax
-lea edi,(-184)[ebp]
-lea esi,(-180)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-120)[ebp],eax
-lea edi,(-188)[ebp]
-lea esi,(-184)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-116)[ebp],eax
-lea edi,(-192)[ebp]
-lea esi,(-188)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-112)[ebp],eax
-lea edi,(-196)[ebp]
-lea esi,(-192)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-108)[ebp],eax
-lea edi,(-200)[ebp]
-lea esi,(-196)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-104)[ebp],eax
-lea edi,(-204)[ebp]
-lea esi,(-200)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-100)[ebp],eax
-lea edi,(-208)[ebp]
-lea esi,(-204)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-96)[ebp],eax
-lea edi,(-212)[ebp]
-lea esi,(-208)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-92)[ebp],eax
-lea edi,(-216)[ebp]
-lea esi,(-212)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-88)[ebp],eax
-lea edi,(-220)[ebp]
-lea esi,(-216)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-84)[ebp],eax
-lea edi,(-224)[ebp]
-lea esi,(-220)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-80)[ebp],eax
-lea edi,(-240)[ebp]
-lea esi,(-224)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-76)[ebp],eax
-lea edi,(-244)[ebp]
-lea esi,(-240)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-72)[ebp],eax
-lea edi,(-256)[ebp]
-lea esi,(-244)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-mov dword ptr (-68)[ebp],eax
-mov edi,dword ptr (-152)[ebp]
-mov dword ptr (-248)[ebp],edi
-mov dword ptr (-160)[ebp],1
-mov dword ptr (-156)[ebp],0
-L3131:
-mov edi,dword ptr (-160)[ebp]
-cmp edi,1
-je L3137
-cmp edi,2
-je L3140
-cmp edi,3
-je L3145
-jmp L3135
-L3137:
-mov edi,dword ptr (-156)[ebp]
-mov esi,dword ptr (-248)[ebp]
-cmp dword ptr (-152)[ebp][edi*4],esi
-je L3136
-mov edi,dword ptr (-156)[ebp]
-mov edi,dword ptr (-152)[ebp][edi*4]
-mov dword ptr (-264)[ebp],edi
-mov dword ptr (-160)[ebp],2
-mov dword ptr (-260)[ebp],1
-jmp L3136
-L3140:
-mov edi,dword ptr (-156)[ebp]
-mov esi,dword ptr (-248)[ebp]
-cmp dword ptr (-152)[ebp][edi*4],esi
-jne L3141
-mov dword ptr (-160)[ebp],3
-jmp L3136
-L3141:
-mov edi,dword ptr (-156)[ebp]
-mov esi,dword ptr (-264)[ebp]
-cmp dword ptr (-152)[ebp][edi*4],esi
-jne L3143
-inc dword ptr (-260)[ebp]
-jmp L3136
-L3143:
-mov dword ptr (-160)[ebp],4
-jmp L3136
-L3145:
-mov edi,dword ptr (-156)[ebp]
-mov esi,dword ptr (-248)[ebp]
-cmp dword ptr (-152)[ebp][edi*4],esi
-je L3136
-mov dword ptr (-160)[ebp],4
-L3135:
-L3136:
-L3132:
-inc dword ptr (-156)[ebp]
-cmp dword ptr (-156)[ebp],22
-jl L3131
-cmp dword ptr (-160)[ebp],3
-jne L3148
-mov edi,16
-mov eax,edi
-sub eax,dword ptr (-260)[ebp]
-jmp L3109
-L3148:
-mov eax,-1
-L3109:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L3151 label byte
-db 420 dup (0)
-_DATA ends
-_DATA segment
-align 1
-L3152 label byte
-db 115
-db 56
-db 52
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L3153 label byte
-db 115
-db 56
-db 52
-db 32
-db 32
-db 32
-db 32
-db 0
-public _s84
-_DATA ends
-_TEXT segment
-_s84:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,172
-lea edi,(L3153)
-mov dword ptr (-156)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-160)[ebp],edi
-mov dword ptr (-164)[ebp],0
-L3154:
-L3155:
-mov edi,dword ptr (-160)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-160)[ebp],esi
-mov esi,dword ptr (-156)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-156)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L3154
-push 3
-call _fip
-add esp,4
-mov dword ptr (-168)[ebp],eax
-mov edi,dword ptr (-168)[ebp]
-cmp dword ptr [edi],3
-je L3157
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3159
-push 1
-lea edi,(L3152)
-push edi
-call _printf
-add esp,8
-L3159:
-inc dword ptr (-164)[ebp]
-L3157:
-lea edi,(_glork)
-mov dword ptr (-172)[ebp],edi
-push 4
-call dword ptr (-172)[ebp]
-add esp,4
-cmp eax,4
-je L3161
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3163
-push 2
-lea edi,(L3152)
-push edi
-call _printf
-add esp,8
-L3163:
-add dword ptr (-164)[ebp],2
-L3161:
-mov dword ptr (-8)[ebp],0
-L3165:
-mov edi,dword ptr (-8)[ebp]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (-80)[ebp][edi*4]
-mov edi,dword ptr (-8)[ebp]
-lea edi,[edi*4]
-lea esi,(-80)[ebp][edi]
-mov dword ptr (-148)[ebp][edi],esi
-L3166:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],17
-jl L3165
-fld dword ptr (L412)
-fstp dword ptr (-152)[ebp]
-mov dword ptr (-8)[ebp],0
-L3169:
-fld dword ptr (-152)[ebp]
-mov edi,dword ptr (-8)[ebp]
-mov edi,dword ptr (-148)[ebp][edi*4]
-fadd dword ptr [edi]
-fstp dword ptr (-152)[ebp]
-L3170:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],17
-jl L3169
-fld dword ptr (L3175)
-fcomp dword ptr (-152)[ebp]
-fstsw ax
-sahf
-je L3173
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3176
-push 4
-lea edi,(L3152)
-push edi
-call _printf
-add esp,8
-L3176:
-add dword ptr (-164)[ebp],4
-L3173:
-mov dword ptr (-12)[ebp],0
-L3178:
-mov dword ptr (-8)[ebp],0
-L3182:
-mov dword ptr (-4)[ebp],0
-L3186:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (-8)[ebp]
-mov ebx,dword ptr (-12)[ebp]
-imul edx,esi,28
-imul ecx,ebx,140
-lea edx,(L3151)[ecx][edx]
-imul ebx,ebx,35
-imul esi,esi,7
-lea esi,[esi][ebx]
-lea esi,[edi][esi]
-mov dword ptr [edx][edi*4],esi
-L3187:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],7
-jl L3186
-L3183:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],5
-jl L3182
-L3179:
-inc dword ptr (-12)[ebp]
-cmp dword ptr (-12)[ebp],3
-jl L3178
-mov dword ptr (-12)[ebp],1
-mov dword ptr (-8)[ebp],2
-mov dword ptr (-4)[ebp],3
-push 0
-push 105
-lea edi,(L3151)
-push edi
-call _array
-add esp,12
-mov edi,eax
-push 35
-push 35
-imul esi,dword ptr (-12)[ebp],140
-lea esi,(L3151)[esi]
-push esi
-call _array
-add esp,12
-mov esi,eax
-push 49
-push 7
-imul ebx,dword ptr (-8)[ebp],28
-imul edx,dword ptr (-12)[ebp],140
-lea ebx,(L3151)[edx][ebx]
-push ebx
-call _array
-add esp,12
-lea edi,[esi][edi]
-lea edi,[eax][edi]
-mov esi,dword ptr (-4)[ebp]
-imul ebx,dword ptr (-8)[ebp],28
-imul edx,dword ptr (-12)[ebp],140
-lea ebx,(L3151)[edx][ebx]
-mov esi,dword ptr [ebx][esi*4]
-lea edi,[esi][edi]
-sub edi,52
-cmp edi,0
-je L3190
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3192
-push 8
-lea edi,(L3152)
-push edi
-call _printf
-add esp,8
-L3192:
-add dword ptr (-164)[ebp],8
-L3190:
-mov eax,dword ptr (-164)[ebp]
-L3150:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _array
-_array:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (-4)[ebp],0
-jmp L3198
-L3195:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (20)[ebp]
-mov ebx,dword ptr (28)[ebp]
-lea ebx,[ebx][edi]
-cmp dword ptr [esi][edi*4],ebx
-je L3199
-mov eax,1
-jmp L3194
-L3199:
-L3196:
-inc dword ptr (-4)[ebp]
-L3198:
-mov edi,dword ptr (24)[ebp]
-cmp dword ptr (-4)[ebp],edi
-jl L3195
-mov eax,0
-L3194:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L3202 label byte
-db 4 dup (0)
-public _fip
-_DATA ends
-_TEXT segment
-_fip:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-lea edi,(L3202)
-mov esi,dword ptr (20)[ebp]
-mov dword ptr (L3202),esi
-mov eax,edi
-L3201:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _glork
-_glork:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov eax,dword ptr (20)[ebp]
-L3203:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L3205 label byte
-db 115
-db 56
-db 53
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L3206 label byte
-db 115
-db 56
-db 53
-db 32
-db 32
-db 32
-db 32
-db 0
-align 4
-L3214 label byte
-dd L425
-dd L427
-dd L426
-dd L428
-dd L429
-dd L430
-dd L431
-align 1
-L3215 label byte
-db 32
-db 97
-db 108
-db 105
-db 103
-db 110
-db 109
-db 101
-db 110
-db 116
-db 58
-db 32
-db 0
-public _s85
-_DATA ends
-_TEXT segment
-_s85:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,404
-lea edi,(L3206)
-mov dword ptr (-276)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-280)[ebp],edi
-mov dword ptr (-320)[ebp],0
-L3219:
-L3220:
-mov edi,dword ptr (-280)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-280)[ebp],esi
-mov esi,dword ptr (-276)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-276)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L3219
-lea edi,(-296)[ebp]
-lea esi,(-316)[ebp]
-sub edi,esi
-cmp edi,0
-jle L3230
-lea edi,(-292)[ebp]
-lea esi,(-296)[ebp]
-sub edi,esi
-cmp edi,0
-jle L3230
-lea edi,(-288)[ebp]
-lea esi,(-292)[ebp]
-sub edi,esi
-cmp edi,0
-jg L3222
-L3230:
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3231
-push 1
-lea edi,(L3205)
-push edi
-call _printf
-add esp,8
-L3231:
-inc dword ptr (-320)[ebp]
-L3222:
-lea edi,(-355)[ebp]
-lea esi,(-356)[ebp]
-sub edi,esi
-mov dword ptr (-272)[ebp],edi
-lea edi,(-358)[ebp]
-lea esi,(-360)[ebp]
-sub edi,esi
-mov dword ptr (-268)[ebp],edi
-lea edi,(-364)[ebp]
-lea esi,(-368)[ebp]
-sub edi,esi
-mov dword ptr (-264)[ebp],edi
-lea edi,(-372)[ebp]
-lea esi,(-376)[ebp]
-sub edi,esi
-mov dword ptr (-260)[ebp],edi
-lea edi,(-380)[ebp]
-lea esi,(-384)[ebp]
-sub edi,esi
-mov dword ptr (-256)[ebp],edi
-lea edi,(-388)[ebp]
-lea esi,(-392)[ebp]
-sub edi,esi
-mov dword ptr (-252)[ebp],edi
-lea edi,(-400)[ebp]
-lea esi,(-404)[ebp]
-sub edi,esi
-mov dword ptr (-248)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (40)[edi],0
-je L3246
-mov dword ptr (-244)[ebp],0
-L3248:
-mov edi,dword ptr (-244)[ebp]
-lea edi,[edi*4]
-mov esi,dword ptr (-272)[ebp][edi]
-push esi
-lea esi,(L3215)
-push esi
-mov edi,dword ptr (L3214)[edi]
-push edi
-lea edi,(L3252)
-push edi
-call _printf
-add esp,16
-L3249:
-inc dword ptr (-244)[ebp]
-cmp dword ptr (-244)[ebp],7
-jl L3248
-L3246:
-mov edi,dword ptr (-284)[ebp]
-or edi,56
-mov dword ptr (-284)[ebp],edi
-mov edi,dword ptr (-284)[ebp]
-mov esi,edi
-and esi,0fffffffcH
-sal edi,26
-sar edi,29
-sal edi,30
-sar edi,30
-and edi,3
-or esi,edi
-mov dword ptr (-284)[ebp],esi
-mov edi,dword ptr (-284)[ebp]
-mov esi,edi
-and esi,0ffffffc7H
-sal edi,30
-sar edi,30
-sal edi,29
-sar edi,29
-lea edi,[edi*8]
-and edi,56
-or esi,edi
-mov dword ptr (-284)[ebp],esi
-mov edi,dword ptr (-284)[ebp]
-sal edi,26
-sar edi,29
-cmp edi,3
-je L3253
-mov edi,dword ptr (-284)[ebp]
-sal edi,26
-sar edi,29
-cmp edi,-1
-jne L3255
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (40)[edi],0
-je L3256
-lea edi,(L3259)
-push edi
-call _printf
-add esp,4
-jmp L3256
-L3255:
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3260
-push 2
-lea edi,(L3205)
-push edi
-call _printf
-add esp,8
-L3260:
-add dword ptr (-320)[ebp],2
-L3256:
-L3253:
-mov edi,dword ptr (-284)[ebp]
-or edi,64
-mov dword ptr (-284)[ebp],edi
-mov edi,dword ptr (-284)[ebp]
-sal edi,25
-sar edi,31
-cmp edi,1
-je L3262
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (40)[edi],0
-je L3264
-lea edi,(L3266)
-push edi
-call _printf
-add esp,4
-L3264:
-L3262:
-lea edi,(-240)[ebp]
-mov esi,edi
-sub esi,edi
-cmp esi,0
-jne L3274
-cmp esi,0
-jne L3274
-cmp esi,0
-jne L3274
-cmp esi,0
-jne L3274
-cmp esi,0
-jne L3274
-cmp esi,0
-jne L3274
-cmp esi,0
-je L3267
-L3274:
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3275
-push 4
-lea edi,(L3205)
-push edi
-call _printf
-add esp,8
-L3275:
-add dword ptr (-320)[ebp],4
-L3267:
-jmp L3277
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3279
-push 8
-lea edi,(L3205)
-push edi
-call _printf
-add esp,8
-L3279:
-add dword ptr (-320)[ebp],8
-L3277:
-lea edi,(-352)[ebp]
-mov dword ptr (-288)[ebp],edi
-mov byte ptr (-352)[ebp],2
-mov edi,dword ptr (-288)[ebp]
-movsx esi,byte ptr [edi]
-lea esi,(1)[esi]
-mov ebx,esi
-mov byte ptr [edi],bl
-movsx edi,byte ptr (-352)[ebp]
-cmp edi,3
-je L3283
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3285
-push 16
-lea edi,(L3205)
-push edi
-call _printf
-add esp,8
-L3285:
-add dword ptr (-320)[ebp],16
-L3283:
-mov eax,dword ptr (-320)[ebp]
-L3204:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L3288 label byte
-db 115
-db 56
-db 54
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L3289 label byte
-db 115
-db 56
-db 54
-db 32
-db 32
-db 32
-db 32
-db 0
-align 4
-L3290 label byte
-dd 1
-dd 3
-dd 5
-align 4
-L3291 label byte
-dd L3290+8
-_DATA ends
-_DATA segment
-align 4
-L3293 label byte
-db 40 dup (0)
-_DATA ends
-_DATA segment
-align 4
-L3294 label byte
-dd 03f800000H
-dd 040400000H
-dd 040a00000H
-dd 040000000H
-dd 040800000H
-dd 040c00000H
-dd 040400000H
-dd 040a00000H
-dd 040e00000H
-dd 00H
-dd 00H
-dd 00H
-align 4
-L3295 label byte
-dd 03f800000H
-dd 040400000H
-dd 040a00000H
-dd 040000000H
-dd 040800000H
-dd 040c00000H
-dd 040400000H
-dd 040a00000H
-dd 040e00000H
-db 12 dup (0)
-align 4
-L3296 label byte
-dd 03f800000H
-dd 040400000H
-dd 040a00000H
-dd 040000000H
-dd 040800000H
-dd 040c00000H
-dd 040400000H
-dd 040a00000H
-dd 040e00000H
-db 12 dup (0)
-align 4
-L3297 label byte
-dd 03f800000H
-db 8 dup (0)
-dd 040000000H
-db 8 dup (0)
-dd 040400000H
-db 8 dup (0)
-dd 040800000H
-db 8 dup (0)
-public _s86
-_DATA ends
-_TEXT segment
-_s86:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,40
-mov edi,dword ptr (L3291)
-lea edi,(-4)[edi]
-mov dword ptr (-36)[ebp],edi
-call _one
-add esp,0
-mov esi,dword ptr (-36)[ebp]
-lea edi,[esi][eax*4]
-mov dword ptr (-4)[ebp],edi
-lea edi,(L3289)
-mov dword ptr (-24)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-28)[ebp],edi
-mov dword ptr (-32)[ebp],0
-L3298:
-L3299:
-mov edi,dword ptr (-28)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-28)[ebp],esi
-mov esi,dword ptr (-24)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-24)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L3298
-mov edi,dword ptr (L3291)
-cmp dword ptr [edi],5
-je L3301
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3303
-push 1
-lea edi,(L3288)
-push edi
-call _printf
-add esp,8
-L3303:
-inc dword ptr (-32)[ebp]
-L3301:
-mov edi,dword ptr (-36)[ebp]
-cmp dword ptr [edi],3
-je L3305
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3307
-push 2
-lea edi,(L3288)
-push edi
-call _printf
-add esp,8
-L3307:
-add dword ptr (-32)[ebp],2
-L3305:
-mov edi,dword ptr (-4)[ebp]
-cmp dword ptr [edi],5
-je L3309
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3311
-push 4
-lea edi,(L3288)
-push edi
-call _printf
-add esp,8
-L3311:
-add dword ptr (-32)[ebp],4
-L3309:
-mov dword ptr (-20)[ebp],0
-mov dword ptr (-8)[ebp],0
-L3313:
-mov edi,dword ptr (-8)[ebp]
-cmp dword ptr (L3293)[edi*4],0
-je L3317
-mov dword ptr (-20)[ebp],1
-L3317:
-L3314:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],10
-jl L3313
-cmp dword ptr (-20)[ebp],0
-je L3319
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3321
-push 8
-lea edi,(L3288)
-push edi
-call _printf
-add esp,8
-L3321:
-add dword ptr (-32)[ebp],8
-L3319:
-mov dword ptr (-20)[ebp],0
-mov dword ptr (-12)[ebp],0
-L3323:
-mov dword ptr (-8)[ebp],0
-L3327:
-imul edi,dword ptr (-12)[ebp],3
-mov esi,dword ptr (-8)[ebp]
-lea edi,[esi][edi]
-mov dword ptr (-16)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-lea edi,[edi*4]
-imul esi,dword ptr (-12)[ebp],12
-fld dword ptr (L3295)[esi][edi]
-fstp dword ptr (-40)[ebp]
-fld dword ptr (L3296)[esi][edi]
-fcomp dword ptr (-40)[ebp]
-fstsw ax
-sahf
-jne L3333
-mov edi,dword ptr (-16)[ebp]
-fld dword ptr (L3294)[edi*4]
-fcomp dword ptr (-40)[ebp]
-fstsw ax
-sahf
-je L3331
-L3333:
-mov dword ptr (-20)[ebp],1
-L3331:
-L3328:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],3
-jl L3327
-L3324:
-inc dword ptr (-12)[ebp]
-cmp dword ptr (-12)[ebp],4
-jl L3323
-cmp dword ptr (-20)[ebp],0
-je L3334
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3336
-push 16
-lea edi,(L3288)
-push edi
-call _printf
-add esp,8
-L3336:
-add dword ptr (-32)[ebp],16
-L3334:
-mov dword ptr (-20)[ebp],0
-mov dword ptr (-8)[ebp],0
-L3338:
-mov edi,dword ptr (-8)[ebp]
-imul esi,edi,12
-lea edi,(1)[edi]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fcomp dword ptr (L3297)[esi]
-fstsw ax
-sahf
-je L3342
-mov dword ptr (-20)[ebp],1
-L3342:
-L3339:
-inc dword ptr (-8)[ebp]
-cmp dword ptr (-8)[ebp],4
-jl L3338
-cmp dword ptr (-20)[ebp],0
-je L3344
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3346
-push 32
-lea edi,(L3288)
-push edi
-call _printf
-add esp,8
-L3346:
-add dword ptr (-32)[ebp],32
-L3344:
-mov eax,dword ptr (-32)[ebp]
-L3287:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _one
-_one:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov eax,1
-L3348:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L3350 label byte
-db 115
-db 56
-db 56
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L3351 label byte
-db 115
-db 56
-db 56
-db 32
-db 32
-db 32
-db 32
-db 0
-public _s88
-_DATA ends
-_TEXT segment
-_s88:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,44
-lea edi,(L3351)
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-8)[ebp],edi
-mov dword ptr (-12)[ebp],0
-L3353:
-L3354:
-mov edi,dword ptr (-8)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-8)[ebp],esi
-mov esi,dword ptr (-4)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-4)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L3353
-jmp L3356
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3358
-push 1
-lea edi,(L3350)
-push edi
-call _printf
-add esp,8
-L3358:
-inc dword ptr (-12)[ebp]
-L3356:
-lea edi,(-32)[ebp]
-mov dword ptr (_metricp),edi
-mov dword ptr (-32)[ebp],2
-mov edi,dword ptr (_metricp)
-mov dword ptr [edi],3
-cmp dword ptr (-32)[ebp],3
-je L3360
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3362
-push 2
-lea edi,(L3350)
-push edi
-call _printf
-add esp,8
-L3362:
-add dword ptr (-12)[ebp],2
-L3360:
-fld qword ptr (L419)
-fstp qword ptr (-28)[ebp]
-fld qword ptr (L419)
-fstp qword ptr (-20)[ebp]
-lea edi,(-28)[ebp]
-mov dword ptr (-36)[ebp],edi
-mov edi,dword ptr (-36)[ebp]
-fld qword ptr (L418)
-fstp qword ptr [edi]
-mov edi,dword ptr (-36)[ebp]
-fld qword ptr (L418)
-fstp qword ptr (8)[edi]
-fld qword ptr (-28)[ebp]
-fadd qword ptr (-20)[ebp]
-fld qword ptr (L416)
-fcompp
-fstsw ax
-sahf
-je L3365
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3368
-push 4
-lea edi,(L3350)
-push edi
-call _printf
-add esp,8
-L3368:
-add dword ptr (-12)[ebp],4
-L3365:
-mov eax,dword ptr (-12)[ebp]
-L3349:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 1
-L3371 label byte
-db 115
-db 57
-db 44
-db 101
-db 114
-db 37
-db 100
-db 10
-db 0
-align 1
-L3372 label byte
-db 115
-db 57
-db 32
-db 32
-db 32
-db 32
-db 32
-db 0
-public _s9
-_DATA ends
-_TEXT segment
-_s9:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,36
-lea edi,(L3372)
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea edi,(60)[edi]
-mov dword ptr (-16)[ebp],edi
-mov dword ptr (-20)[ebp],0
-L3373:
-L3374:
-mov edi,dword ptr (-16)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-16)[ebp],esi
-mov esi,dword ptr (-12)[ebp]
-lea ebx,(1)[esi]
-mov dword ptr (-12)[ebp],ebx
-mov bl,byte ptr [esi]
-mov byte ptr [edi],bl
-movsx edi,bl
-cmp edi,0
-jne L3373
-mov dword ptr (-8)[ebp],0
-mov dword ptr (-4)[ebp],0
-L3376:
-mov dword ptr (-24)[ebp],2
-mov dword ptr (-28)[ebp],2
-mov dword ptr (-32)[ebp],3
-mov dword ptr (-36)[ebp],3
-cmp dword ptr (-36)[ebp],3
-jne L3382
-cmp dword ptr (-32)[ebp],3
-je L3380
-L3382:
-mov dword ptr (-8)[ebp],1
-L3380:
-cmp dword ptr (-28)[ebp],2
-jne L3385
-cmp dword ptr (-24)[ebp],2
-je L3383
-L3385:
-mov dword ptr (-8)[ebp],1
-L3383:
-L3377:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],2
-jl L3376
-cmp dword ptr (-8)[ebp],0
-je L3390
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3388
-push 1
-lea edi,(L3371)
-push edi
-call _printf
-add esp,8
-L3388:
-inc dword ptr (-20)[ebp]
-jmp L3390
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr (44)[edi],0
-je L3391
-push 2
-lea edi,(L3371)
-push edi
-call _printf
-add esp,8
-L3391:
-add dword ptr (-20)[ebp],2
-L3390:
-mov eax,dword ptr (-20)[ebp]
-L3370:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _setev
-_setev:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov dword ptr (_extvar),1066
-mov eax,0
-L3393:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_DATA segment
-public _rfs
-align 1
-_rfs label byte
-db 8 dup (0)
-public _crc
-align 4
-_crc label byte
-db 4 dup (0)
-public _rrc
-align 4
-_rrc label byte
-db 4 dup (0)
-public _flgl
-align 4
-_flgl label byte
-db 4 dup (0)
-public _flgd
-align 4
-_flgd label byte
-db 4 dup (0)
-public _flgm
-align 4
-_flgm label byte
-db 4 dup (0)
-public _flgs
-align 4
-_flgs label byte
-db 4 dup (0)
-public _dprec
-align 4
-_dprec label byte
-db 4 dup (0)
-public _fprec
-align 4
-_fprec label byte
-db 4 dup (0)
-public _dbits
-align 4
-_dbits label byte
-db 4 dup (0)
-public _fbits
-align 4
-_fbits label byte
-db 4 dup (0)
-public _ubits
-align 4
-_ubits label byte
-db 4 dup (0)
-public _lbits
-align 4
-_lbits label byte
-db 4 dup (0)
-public _metricp
-align 4
-_metricp label byte
-db 4 dup (0)
-public _extvar
-align 4
-_extvar label byte
-db 4 dup (0)
-_DATA ends
-_TEXT segment
-align 1
-L3266 label byte
-db 66
-db 101
-db 32
-db 101
-db 115
-db 112
-db 101
-db 99
-db 105
-db 97
-db 108
-db 108
-db 121
-db 32
-db 99
-db 97
-db 114
-db 101
-db 102
-db 117
-db 108
-db 32
-db 119
-db 105
-db 116
-db 104
-db 32
-db 49
-db 45
-db 98
-db 105
-db 116
-db 32
-db 102
-db 105
-db 101
-db 108
-db 100
-db 115
-db 33
-db 10
-db 0
-align 1
-L3259 label byte
-db 83
-db 105
-db 103
-db 110
-db 32
-db 101
-db 120
-db 116
-db 101
-db 110
-db 115
-db 105
-db 111
-db 110
-db 32
-db 105
-db 110
-db 32
-db 102
-db 105
-db 101
-db 108
-db 100
-db 115
-db 10
-db 0
-align 1
-L3252 label byte
-db 37
-db 115
-db 37
-db 115
-db 37
-db 100
-db 10
-db 0
-align 4
-L3175 label byte
-dd 043080000H
-align 1
-L3022 label byte
-db 112
-db 111
-db 105
-db 110
-db 116
-db 101
-db 114
-db 0
-align 1
-L2472 label byte
-db 73
-db 110
-db 99
-db 114
-db 101
-db 97
-db 115
-db 105
-db 110
-db 103
-db 32
-db 97
-db 114
-db 114
-db 97
-db 121
-db 32
-db 101
-db 108
-db 101
-db 109
-db 101
-db 110
-db 116
-db 115
-db 32
-db 97
-db 115
-db 115
-db 105
-db 103
-db 110
-db 101
-db 100
-db 32
-db 116
-db 111
-db 32
-db 100
-db 101
-db 99
-db 114
-db 101
-db 97
-db 115
-db 105
-db 110
-db 103
-db 32
-db 108
-db 111
-db 99
-db 97
-db 116
-db 105
-db 111
-db 110
-db 115
-db 10
-db 0
-align 4
-L2356 label byte
-dd 041d00000H
-align 4
-L2355 label byte
-dd 00H
-dd 0403a0000H
-align 4
-L1659 label byte
-dd 00H
-dd 040040000H
-align 4
-L1484 label byte
-dd 00H
-dd 040240000H
-align 4
-L1455 label byte
-dd 041200000H
-align 4
-L1280 label byte
-dd 00H
-dd 040080000H
-align 4
-L1251 label byte
-dd 040400000H
-align 4
-L1076 label byte
-dd 00H
-dd 0401c0000H
-align 4
-L1047 label byte
-dd 040e00000H
-align 4
-L870 label byte
-dd 00H
-dd 040140000H
-align 4
-L841 label byte
-dd 040a00000H
-align 4
-L836 label byte
-dd 00H
-dd 041e00000H
-align 4
-L828 label byte
-dd 04f000000H
-align 1
-L653 label byte
-db 113
-db 117
-db 101
-db 101
-db 112
-db 0
-align 1
-L639 label byte
-db 10
-db 0
-align 1
-L638 label byte
-db 37
-db 100
-db 0
-align 1
-L633 label byte
-db 32
-db 32
-db 32
-db 107
-db 101
-db 121
-db 61
-db 0
-align 4
-L596 label byte
-dd 00H
-dd 040000000H
-align 4
-L536 label byte
-dd 00H
-dd 040ce8480H
-align 4
-L535 label byte
-dd 00H
-dd 0405f4000H
-align 4
-L534 label byte
-dd 042fa0000H
-align 4
-L529 label byte
-dd 040000000H
-align 1
-L431 label byte
-db 100
-db 111
-db 117
-db 98
-db 108
-db 101
-db 0
-align 1
-L430 label byte
-db 102
-db 108
-db 111
-db 97
-db 116
-db 0
-align 1
-L429 label byte
-db 117
-db 110
-db 115
-db 105
-db 103
-db 110
-db 101
-db 100
-db 0
-align 1
-L428 label byte
-db 108
-db 111
-db 110
-db 103
-db 0
-align 1
-L427 label byte
-db 115
-db 104
-db 111
-db 114
-db 116
-db 0
-align 1
-L426 label byte
-db 105
-db 110
-db 116
-db 0
-align 1
-L425 label byte
-db 99
-db 104
-db 97
-db 114
-db 0
-align 4
-L419 label byte
-dd 00H
-dd 00H
-align 4
-L418 label byte
-dd 00H
-dd 03ff00000H
-align 4
-L417 label byte
-dd 00H
-dd 040100000H
-align 4
-L416 label byte
-dd 00H
-dd 040000000H
-align 4
-L412 label byte
-dd 00H
-align 4
-L411 label byte
-dd 03f800000H
-align 1
-L390 label byte
-db 113
-db 117
-db 101
-db 101
-db 112
-db 33
-db 0
-align 1
-L379 label byte
-db 10
-db 9
-db 8
-db 13
-db 12
-db 92
-db 39
-db 0
-align 1
-L375 label byte
-db 46
-db 34
-db 46
-db 0
-align 1
-L362 label byte
-db 46
-db 46
-db 46
-db 0
-align 4
-L333 label byte
-dd 00H
-dd 040938800H
-align 1
-L199 label byte
-db 32
-db 32
-db 32
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 101
-db 110
-db 116
-db 32
-db 114
-db 101
-db 115
-db 117
-db 108
-db 116
-db 115
-db 32
-db 119
-db 104
-db 101
-db 110
-db 32
-db 97
-db 115
-db 115
-db 105
-db 103
-db 110
-db 101
-db 100
-db 32
-db 116
-db 111
-db 32
-db 108
-db 111
-db 110
-db 103
-db 115
-db 46
-db 10
-db 0
-align 1
-L198 label byte
-db 68
-db 101
-db 99
-db 105
-db 109
-db 97
-db 108
-db 32
-db 97
-db 110
-db 100
-db 32
-db 111
-db 99
-db 116
-db 97
-db 108
-db 47
-db 104
-db 101
-db 120
-db 32
-db 99
-db 111
-db 110
-db 115
-db 116
-db 97
-db 110
-db 116
-db 115
-db 32
-db 115
-db 111
-db 109
-db 101
-db 116
-db 105
-db 109
-db 101
-db 115
-db 32
-db 103
-db 105
-db 118
-db 101
-db 10
-db 0
-align 1
-L27 label byte
-db 10
-db 70
-db 97
-db 105
-db 108
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L26 label byte
-db 10
-db 78
-db 111
-db 32
-db 101
-db 114
-db 114
-db 111
-db 114
-db 115
-db 32
-db 100
-db 101
-db 116
-db 101
-db 99
-db 116
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L20 label byte
-db 83
-db 101
-db 99
-db 116
-db 105
-db 111
-db 110
-db 32
-db 37
-db 115
-db 32
-db 114
-db 101
-db 116
-db 117
-db 114
-db 110
-db 101
-db 100
-db 32
-db 37
-db 100
-db 46
-db 10
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+_DATA segment
+align 4
+L2 label byte
+dd _s22
+dd _s241
+dd _s243
+dd _s244
+dd _s25
+dd _s26
+dd _s4
+dd _s61
+dd _s626
+dd _s71
+dd _s72
+dd _s757
+dd _s7813
+dd _s714
+dd _s715
+dd _s81
+dd _s84
+dd _s85
+dd _s86
+dd _s88
+dd _s9
+_DATA ends
+_DATA segment
+align 4
+L3 label byte
+db 68 dup (0)
+align 4
+L4 label byte
+db 4 dup (0)
+public _main
+_DATA ends
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (L3+36),1
+mov dword ptr (L3+40),1
+mov dword ptr (L3+44),1
+mov dword ptr (L3+48),1
+lea edi,(L3)
+mov dword ptr (L4),edi
+mov dword ptr (-4)[ebp],0
+jmp L12
+L9:
+mov edi,dword ptr (L4)
+push edi
+mov edi,dword ptr (-4)[ebp]
+call dword ptr (L2)[edi*4]
+add esp,4
+mov dword ptr (L3+52),eax
+mov edi,dword ptr (L3+56)
+mov esi,dword ptr (L3+52)
+lea edi,[esi][edi]
+mov dword ptr (L3+56),edi
+cmp dword ptr (L3+36),0
+je L17
+mov edi,dword ptr (L3+52)
+push edi
+lea edi,(L3+60)
+push edi
+lea edi,(L20)
+push edi
+call _printf
+add esp,12
+L17:
+L10:
+inc dword ptr (-4)[ebp]
+L12:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,21
+jb L9
+cmp dword ptr (L3+56),0
+jne L23
+lea edi,(L26)
+push edi
+call _printf
+add esp,4
+jmp L24
+L23:
+lea edi,(L27)
+push edi
+call _printf
+add esp,4
+L24:
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L29 label byte
+db 115
+db 50
+db 50
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L30 label byte
+db 115
+db 50
+db 50
+db 32
+db 32
+db 32
+db 32
+db 0
+public _s22
+_DATA ends
+_TEXT segment
+_s22:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,32
+mov dword ptr (-12)[ebp],0
+lea edi,(L30)
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-8)[ebp],edi
+L31:
+L32:
+mov edi,dword ptr (-8)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-8)[ebp],esi
+mov esi,dword ptr (-4)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-4)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L31
+mov dword ptr (-16)[ebp],1
+mov dword ptr (-24)[ebp],2
+mov dword ptr (-28)[ebp],3
+mov dword ptr (-20)[ebp],4
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-24)[ebp]
+lea edi,[esi][edi]
+mov esi,dword ptr (-28)[ebp]
+lea edi,[esi][edi]
+mov esi,dword ptr (-20)[ebp]
+lea edi,[esi][edi]
+cmp edi,10
+je L34
+inc dword ptr (-12)[ebp]
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L36
+push 1
+lea edi,(L29)
+push edi
+call _printf
+add esp,8
+L36:
+L34:
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+cmp dword ptr (-32)[ebp],edi
+jne L38
+add dword ptr (-12)[ebp],4
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L40
+push 4
+lea edi,(L29)
+push edi
+call _printf
+add esp,8
+L40:
+L38:
+mov eax,dword ptr (-12)[ebp]
+L28:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L43 label byte
+db 115
+db 50
+db 52
+db 49
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L44 label byte
+db 115
+db 50
+db 52
+db 49
+db 32
+db 32
+db 32
+db 0
+align 4
+L45 label byte
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 0
+dd 6
+dd 0
+dd 8
+dd 0
+dd 12
+dd 0
+dd 16
+dd 0
+dd 18
+dd 0
+dd 20
+dd 0
+dd 24
+dd 0
+dd 28
+dd 0
+dd 30
+dd 0
+dd 32
+dd 0
+dd 36
+public _s241
+_DATA ends
+_TEXT segment
+_s241:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,488
+mov dword ptr (-484)[ebp],0
+mov dword ptr (-488)[ebp],0
+lea edi,(L44)
+mov dword ptr (-476)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-480)[ebp],edi
+L46:
+L47:
+mov edi,dword ptr (-480)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-480)[ebp],esi
+mov esi,dword ptr (-476)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-476)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L46
+jmp L49
+inc dword ptr (-484)[ebp]
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L51
+push 1
+lea edi,(L43)
+push edi
+call _printf
+add esp,8
+L51:
+L49:
+jmp L53
+add dword ptr (-484)[ebp],2
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L55
+push 2
+lea edi,(L43)
+push edi
+call _printf
+add esp,8
+L55:
+L53:
+jmp L57
+add dword ptr (-484)[ebp],4
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L59
+push 4
+lea edi,(L43)
+push edi
+call _printf
+add esp,8
+L59:
+L57:
+jmp L61
+add dword ptr (-484)[ebp],8
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L63
+push 8
+lea edi,(L43)
+push edi
+call _printf
+add esp,8
+L63:
+L61:
+mov dword ptr (-4)[ebp],0
+L65:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (L45)[edi*4],edi
+L66:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],17
+jl L65
+mov dword ptr (-4)[ebp],18
+L69:
+mov edi,dword ptr (-4)[ebp]
+lea edi,(L45)[edi*4]
+mov esi,dword ptr [edi]
+push esi
+call _pow2
+add esp,4
+mov dword ptr [edi],eax
+mov edi,dword ptr (-4)[ebp]
+lea edi,[edi*4]
+mov esi,dword ptr (L45)[edi]
+sub esi,1
+mov dword ptr (L45-4)[edi],esi
+add dword ptr (-4)[ebp],2
+L70:
+cmp dword ptr (-4)[ebp],39
+jl L69
+mov dword ptr (-160)[ebp],0
+mov dword ptr (-316)[ebp],0
+mov dword ptr (-472)[ebp],0
+mov dword ptr (-156)[ebp],1
+mov dword ptr (-312)[ebp],1
+mov dword ptr (-468)[ebp],1
+mov dword ptr (-152)[ebp],2
+mov dword ptr (-308)[ebp],2
+mov dword ptr (-464)[ebp],2
+mov dword ptr (-148)[ebp],3
+mov dword ptr (-304)[ebp],3
+mov dword ptr (-460)[ebp],3
+mov dword ptr (-144)[ebp],4
+mov dword ptr (-300)[ebp],4
+mov dword ptr (-456)[ebp],4
+mov dword ptr (-140)[ebp],5
+mov dword ptr (-296)[ebp],5
+mov dword ptr (-452)[ebp],5
+mov dword ptr (-136)[ebp],6
+mov dword ptr (-292)[ebp],6
+mov dword ptr (-448)[ebp],6
+mov dword ptr (-132)[ebp],7
+mov dword ptr (-288)[ebp],7
+mov dword ptr (-444)[ebp],7
+mov dword ptr (-128)[ebp],8
+mov dword ptr (-284)[ebp],8
+mov dword ptr (-440)[ebp],8
+mov dword ptr (-124)[ebp],9
+mov dword ptr (-280)[ebp],9
+mov dword ptr (-436)[ebp],9
+mov dword ptr (-120)[ebp],10
+mov dword ptr (-276)[ebp],10
+mov dword ptr (-432)[ebp],10
+mov dword ptr (-116)[ebp],11
+mov dword ptr (-272)[ebp],11
+mov dword ptr (-428)[ebp],11
+mov dword ptr (-112)[ebp],12
+mov dword ptr (-268)[ebp],12
+mov dword ptr (-424)[ebp],12
+mov dword ptr (-108)[ebp],13
+mov dword ptr (-264)[ebp],13
+mov dword ptr (-420)[ebp],13
+mov dword ptr (-104)[ebp],14
+mov dword ptr (-260)[ebp],14
+mov dword ptr (-416)[ebp],14
+mov dword ptr (-100)[ebp],15
+mov dword ptr (-256)[ebp],15
+mov dword ptr (-412)[ebp],15
+mov dword ptr (-96)[ebp],16
+mov dword ptr (-252)[ebp],16
+mov dword ptr (-408)[ebp],16
+mov dword ptr (-92)[ebp],63
+mov dword ptr (-248)[ebp],63
+mov dword ptr (-404)[ebp],63
+mov dword ptr (-88)[ebp],64
+mov dword ptr (-244)[ebp],64
+mov dword ptr (-400)[ebp],64
+mov dword ptr (-84)[ebp],255
+mov dword ptr (-240)[ebp],255
+mov dword ptr (-396)[ebp],255
+mov dword ptr (-80)[ebp],256
+mov dword ptr (-236)[ebp],256
+mov dword ptr (-392)[ebp],256
+mov dword ptr (-76)[ebp],4095
+mov dword ptr (-232)[ebp],4095
+mov dword ptr (-388)[ebp],4095
+mov dword ptr (-72)[ebp],4096
+mov dword ptr (-228)[ebp],4096
+mov dword ptr (-384)[ebp],4096
+mov dword ptr (-68)[ebp],65535
+mov dword ptr (-224)[ebp],65535
+mov dword ptr (-380)[ebp],65535
+mov dword ptr (-64)[ebp],65536
+mov dword ptr (-220)[ebp],65536
+mov dword ptr (-376)[ebp],65536
+mov dword ptr (-60)[ebp],262143
+mov dword ptr (-216)[ebp],262143
+mov dword ptr (-372)[ebp],262143
+mov dword ptr (-56)[ebp],262144
+mov dword ptr (-212)[ebp],262144
+mov dword ptr (-368)[ebp],262144
+mov dword ptr (-52)[ebp],1048575
+mov dword ptr (-208)[ebp],1048575
+mov dword ptr (-364)[ebp],1048575
+mov dword ptr (-48)[ebp],1048576
+mov dword ptr (-204)[ebp],1048576
+mov dword ptr (-360)[ebp],1048576
+mov dword ptr (-44)[ebp],16777215
+mov dword ptr (-200)[ebp],16777215
+mov dword ptr (-356)[ebp],16777215
+mov dword ptr (-40)[ebp],16777216
+mov dword ptr (-196)[ebp],16777216
+mov dword ptr (-352)[ebp],16777216
+mov dword ptr (-36)[ebp],268435455
+mov dword ptr (-192)[ebp],268435455
+mov dword ptr (-348)[ebp],268435455
+mov dword ptr (-32)[ebp],268435456
+mov dword ptr (-188)[ebp],268435456
+mov dword ptr (-344)[ebp],268435456
+mov dword ptr (-28)[ebp],1073741823
+mov dword ptr (-184)[ebp],1073741823
+mov dword ptr (-340)[ebp],1073741823
+mov dword ptr (-24)[ebp],1073741824
+mov dword ptr (-180)[ebp],1073741824
+mov dword ptr (-336)[ebp],1073741824
+mov edi,0ffffffffH
+mov dword ptr (-20)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-176)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-332)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-16)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-172)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-328)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-12)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-168)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-324)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-8)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-164)[ebp],edi
+mov edi,0ffffffffH
+mov dword ptr (-320)[ebp],edi
+mov dword ptr (-4)[ebp],0
+L188:
+mov edi,dword ptr (-4)[ebp]
+lea edi,[edi*4]
+mov esi,dword ptr (-160)[ebp][edi]
+cmp dword ptr (L45)[edi],esi
+jne L195
+mov ebx,dword ptr (-316)[ebp][edi]
+cmp esi,ebx
+jne L195
+cmp ebx,dword ptr (-472)[ebp][edi]
+je L192
+L195:
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (40)[edi],0
+je L196
+lea edi,(L198)
+push edi
+call _printf
+add esp,4
+lea edi,(L199)
+push edi
+call _printf
+add esp,4
+L196:
+L192:
+L189:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],39
+jl L188
+cmp dword ptr (-488)[ebp],0
+je L200
+mov dword ptr (-484)[ebp],16
+L200:
+mov eax,dword ptr (-484)[ebp]
+L42:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _pow2
+_pow2:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (-4)[ebp],1
+jmp L204
+L203:
+sal dword ptr (-4)[ebp],1
+L204:
+mov edi,dword ptr (20)[ebp]
+mov esi,edi
+sub esi,1
+mov dword ptr (20)[ebp],esi
+cmp edi,0
+jne L203
+mov eax,dword ptr (-4)[ebp]
+L202:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L207 label byte
+db 115
+db 50
+db 52
+db 51
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L208 label byte
+db 115
+db 50
+db 52
+db 51
+db 32
+db 32
+db 32
+db 0
+public _s243
+_DATA ends
+_TEXT segment
+_s243:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,268
+mov dword ptr (-268)[ebp],0
+lea edi,(L208)
+mov dword ptr (-260)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-264)[ebp],edi
+L209:
+L210:
+mov edi,dword ptr (-264)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-264)[ebp],esi
+mov esi,dword ptr (-260)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-260)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L209
+lea edi,(-256)[ebp]
+push edi
+call _zerofill
+add esp,4
+mov byte ptr (-159)[ebp],1
+mov byte ptr (-191)[ebp],1
+mov byte ptr (-130)[ebp],1
+mov byte ptr (-208)[ebp],1
+mov byte ptr (-158)[ebp],1
+mov byte ptr (-190)[ebp],1
+mov byte ptr (-223)[ebp],1
+mov byte ptr (-207)[ebp],1
+mov byte ptr (-157)[ebp],1
+mov byte ptr (-189)[ebp],1
+mov byte ptr (-222)[ebp],1
+mov byte ptr (-206)[ebp],1
+mov byte ptr (-156)[ebp],1
+mov byte ptr (-188)[ebp],1
+mov byte ptr (-221)[ebp],1
+mov byte ptr (-205)[ebp],1
+mov byte ptr (-155)[ebp],1
+mov byte ptr (-187)[ebp],1
+mov byte ptr (-219)[ebp],1
+mov byte ptr (-204)[ebp],1
+mov byte ptr (-154)[ebp],1
+mov byte ptr (-186)[ebp],1
+mov byte ptr (-218)[ebp],1
+mov byte ptr (-203)[ebp],1
+mov byte ptr (-153)[ebp],1
+mov byte ptr (-185)[ebp],1
+mov byte ptr (-216)[ebp],1
+mov byte ptr (-202)[ebp],1
+mov byte ptr (-152)[ebp],1
+mov byte ptr (-184)[ebp],1
+mov byte ptr (-215)[ebp],1
+mov byte ptr (-201)[ebp],1
+mov byte ptr (-151)[ebp],1
+mov byte ptr (-183)[ebp],1
+mov byte ptr (-161)[ebp],1
+mov byte ptr (-200)[ebp],1
+mov byte ptr (-150)[ebp],1
+mov byte ptr (-182)[ebp],1
+mov byte ptr (-195)[ebp],1
+mov byte ptr (-199)[ebp],1
+mov byte ptr (-149)[ebp],1
+mov byte ptr (-181)[ebp],1
+mov byte ptr (-211)[ebp],1
+mov byte ptr (-148)[ebp],1
+mov byte ptr (-180)[ebp],1
+mov byte ptr (-162)[ebp],1
+mov byte ptr (-147)[ebp],1
+mov byte ptr (-179)[ebp],1
+mov byte ptr (-132)[ebp],1
+mov byte ptr (-246)[ebp],1
+mov byte ptr (-146)[ebp],1
+mov byte ptr (-178)[ebp],1
+mov byte ptr (-247)[ebp],1
+mov byte ptr (-145)[ebp],1
+mov byte ptr (-177)[ebp],1
+mov byte ptr (-133)[ebp],1
+mov byte ptr (-248)[ebp],1
+mov byte ptr (-144)[ebp],1
+mov byte ptr (-176)[ebp],1
+mov byte ptr (-131)[ebp],1
+mov byte ptr (-243)[ebp],1
+mov byte ptr (-143)[ebp],1
+mov byte ptr (-175)[ebp],1
+mov byte ptr (-165)[ebp],1
+mov byte ptr (-244)[ebp],1
+mov byte ptr (-142)[ebp],1
+mov byte ptr (-174)[ebp],1
+mov byte ptr (-163)[ebp],1
+mov byte ptr (-141)[ebp],1
+mov byte ptr (-173)[ebp],1
+mov byte ptr (-213)[ebp],1
+mov byte ptr (-164)[ebp],1
+mov byte ptr (-140)[ebp],1
+mov byte ptr (-172)[ebp],1
+mov byte ptr (-197)[ebp],1
+mov byte ptr (-217)[ebp],1
+mov byte ptr (-139)[ebp],1
+mov byte ptr (-171)[ebp],1
+mov byte ptr (-214)[ebp],1
+mov byte ptr (-138)[ebp],1
+mov byte ptr (-170)[ebp],1
+mov byte ptr (-198)[ebp],1
+mov byte ptr (-256)[ebp],1
+mov byte ptr (-137)[ebp],1
+mov byte ptr (-169)[ebp],1
+mov byte ptr (-196)[ebp],1
+mov byte ptr (-224)[ebp],1
+mov byte ptr (-136)[ebp],1
+mov byte ptr (-168)[ebp],1
+mov byte ptr (-194)[ebp],1
+mov byte ptr (-135)[ebp],1
+mov byte ptr (-167)[ebp],1
+mov byte ptr (-212)[ebp],1
+mov byte ptr (-134)[ebp],1
+mov byte ptr (-166)[ebp],1
+mov byte ptr (-210)[ebp],1
+mov byte ptr (-193)[ebp],1
+mov byte ptr (-209)[ebp],1
+lea edi,(-256)[ebp]
+push edi
+call _sumof
+add esp,4
+cmp eax,98
+je L309
+inc dword ptr (-268)[ebp]
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L311
+push 1
+lea edi,(L207)
+push edi
+call _printf
+add esp,8
+L311:
+L309:
+jmp L313
+add dword ptr (-268)[ebp],8
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L315
+push 8
+lea edi,(L207)
+push edi
+call _printf
+add esp,8
+L315:
+L313:
+mov eax,dword ptr (-268)[ebp]
+L206:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _zerofill
+_zerofill:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (-4)[ebp],0
+L318:
+mov edi,dword ptr (20)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (20)[ebp],esi
+mov byte ptr [edi],0
+L319:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],256
+jl L318
+mov eax,0
+L317:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _sumof
+_sumof:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,12
+mov edi,dword ptr (20)[ebp]
+mov dword ptr (-12)[ebp],edi
+mov dword ptr (-4)[ebp],0
+mov dword ptr (-8)[ebp],0
+L323:
+mov edi,dword ptr (-12)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-12)[ebp],esi
+movsx edi,byte ptr [edi]
+add dword ptr (-4)[ebp],edi
+L324:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],256
+jl L323
+mov eax,dword ptr (-4)[ebp]
+L322:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L328 label byte
+db 115
+db 50
+db 52
+db 52
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L329 label byte
+db 115
+db 50
+db 52
+db 52
+db 32
+db 32
+db 32
+db 0
+public _s244
+_DATA ends
+_TEXT segment
+_s244:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,92
+lea edi,(L329)
+mov dword ptr (-72)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-76)[ebp],edi
+L330:
+L331:
+mov edi,dword ptr (-76)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-76)[ebp],esi
+mov esi,dword ptr (-72)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-72)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L330
+mov dword ptr (-84)[ebp],0
+mov dword ptr (-80)[ebp],0
+fld qword ptr (L333)
+fstp qword ptr (-68)[ebp]
+fld qword ptr (L333)
+fstp qword ptr (-60)[ebp]
+fld qword ptr (L333)
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L333)
+fstp qword ptr (-44)[ebp]
+fld qword ptr (L333)
+fstp qword ptr (-36)[ebp]
+fld qword ptr (L333)
+fstp qword ptr (-28)[ebp]
+fld qword ptr (L333)
+fstp qword ptr (-20)[ebp]
+fld qword ptr (L333)
+fstp qword ptr (-12)[ebp]
+mov dword ptr (-80)[ebp],0
+mov dword ptr (-4)[ebp],0
+L341:
+mov edi,dword ptr (-4)[ebp]
+lea edi,[edi*8]
+fld qword ptr (-60)[ebp][edi]
+fcomp qword ptr (-68)[ebp][edi]
+fstsw ax
+sahf
+je L345
+mov dword ptr (-80)[ebp],1
+L345:
+L342:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],7
+jl L341
+cmp dword ptr (-80)[ebp],0
+je L348
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L350
+push 1
+lea edi,(L328)
+push edi
+call _printf
+add esp,8
+L350:
+inc dword ptr (-84)[ebp]
+L348:
+jmp L352
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L354
+push 2
+lea edi,(L328)
+push edi
+call _printf
+add esp,8
+L354:
+add dword ptr (-84)[ebp],2
+L352:
+mov eax,dword ptr (-84)[ebp]
+L327:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L357 label byte
+db 115
+db 50
+db 53
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L358 label byte
+db 115
+db 50
+db 53
+db 32
+db 32
+db 32
+db 32
+db 0
+public _s25
+_DATA ends
+_TEXT segment
+_s25:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,28
+lea edi,(L358)
+mov dword ptr (-16)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-20)[ebp],edi
+L359:
+L360:
+mov edi,dword ptr (-20)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-20)[ebp],esi
+mov esi,dword ptr (-16)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-16)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L359
+mov dword ptr (-24)[ebp],0
+lea edi,(L362)
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+movsx esi,byte ptr (1)[edi]
+movsx ebx,byte ptr [edi]
+cmp ebx,esi
+jne L366
+movsx edi,byte ptr (2)[edi]
+cmp esi,edi
+jne L366
+cmp edi,46
+je L363
+L366:
+inc dword ptr (-24)[ebp]
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L367
+push 1
+lea edi,(L357)
+push edi
+call _printf
+add esp,8
+L367:
+L363:
+mov edi,dword ptr (-8)[ebp]
+movsx edi,byte ptr (3)[edi]
+cmp edi,0
+je L369
+add dword ptr (-24)[ebp],4
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L371
+push 4
+lea edi,(L357)
+push edi
+call _printf
+add esp,8
+L371:
+L369:
+movsx edi,byte ptr (L375+1)
+cmp edi,34
+je L373
+add dword ptr (-24)[ebp],8
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L377
+push 8
+lea edi,(L357)
+push edi
+call _printf
+add esp,8
+L377:
+L373:
+lea edi,(L379)
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+movsx esi,byte ptr [edi]
+cmp esi,10
+jne L387
+movsx esi,byte ptr (1)[edi]
+cmp esi,9
+jne L387
+movsx esi,byte ptr (2)[edi]
+cmp esi,8
+jne L387
+movsx esi,byte ptr (3)[edi]
+cmp esi,13
+jne L387
+movsx esi,byte ptr (4)[edi]
+cmp esi,12
+jne L387
+movsx esi,byte ptr (5)[edi]
+cmp esi,92
+jne L387
+movsx edi,byte ptr (6)[edi]
+cmp edi,39
+je L380
+L387:
+add dword ptr (-24)[ebp],16
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L388
+push 16
+lea edi,(L357)
+push edi
+call _printf
+add esp,8
+L388:
+L380:
+lea edi,(L390)
+mov dword ptr (-12)[ebp],edi
+mov dword ptr (-8)[ebp],edi
+mov dword ptr (-28)[ebp],0
+mov dword ptr (-4)[ebp],0
+jmp L394
+L391:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (-8)[ebp]
+movsx esi,byte ptr [esi][edi]
+mov ebx,dword ptr (-12)[ebp]
+movsx edi,byte ptr [ebx][edi]
+cmp esi,edi
+je L395
+mov dword ptr (-28)[ebp],1
+L395:
+L392:
+inc dword ptr (-4)[ebp]
+L394:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,7
+jb L391
+cmp dword ptr (-28)[ebp],0
+je L397
+add dword ptr (-24)[ebp],32
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L399
+push 32
+lea edi,(L357)
+push edi
+call _printf
+add esp,8
+L399:
+L397:
+mov eax,dword ptr (-24)[ebp]
+L356:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L402 label byte
+db 115
+db 50
+db 54
+db 32
+db 32
+db 32
+db 32
+db 0
+align 1
+L403 label byte
+db 37
+db 51
+db 100
+db 32
+db 98
+db 105
+db 116
+db 115
+db 32
+db 105
+db 110
+db 32
+db 37
+db 115
+db 115
+db 46
+db 10
+db 0
+align 1
+L404 label byte
+db 37
+db 101
+db 32
+db 105
+db 115
+db 32
+db 116
+db 104
+db 101
+db 32
+db 108
+db 101
+db 97
+db 115
+db 116
+db 32
+db 110
+db 117
+db 109
+db 98
+db 101
+db 114
+db 32
+db 116
+db 104
+db 97
+db 116
+db 32
+db 99
+db 97
+db 110
+db 32
+db 98
+db 101
+db 32
+db 97
+db 100
+db 100
+db 101
+db 100
+db 32
+db 116
+db 111
+db 32
+db 49
+db 46
+db 32
+db 40
+db 37
+db 115
+db 41
+db 46
+db 10
+db 0
+public _s26
+_DATA ends
+_TEXT segment
+_s26:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,56
+lea edi,(L402)
+mov dword ptr (-36)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-40)[ebp],edi
+L405:
+L406:
+mov edi,dword ptr (-40)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-40)[ebp],esi
+mov esi,dword ptr (-36)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-36)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L405
+mov edi,dword ptr (20)[ebp]
+mov dword ptr [edi],0
+mov byte ptr (-41)[ebp],0
+mov byte ptr (-5)[ebp],1
+jmp L409
+L408:
+movsx edi,byte ptr (-5)[ebp]
+lea edi,[edi*2]
+mov ebx,edi
+mov byte ptr (-5)[ebp],bl
+mov edi,dword ptr (20)[ebp]
+inc dword ptr [edi]
+L409:
+movsx edi,byte ptr (-41)[ebp]
+movsx esi,byte ptr (-5)[ebp]
+cmp edi,esi
+jne L408
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr [edi]
+lea esi,[esi*4]
+mov dword ptr (4)[edi],esi
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr [edi]
+lea esi,[esi*2]
+mov dword ptr (8)[edi],esi
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr [edi]
+lea esi,[esi*4]
+mov dword ptr (12)[edi],esi
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr [edi]
+lea esi,[esi*4]
+mov dword ptr (16)[edi],esi
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr [edi]
+lea esi,[esi*4]
+mov dword ptr (20)[edi],esi
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr [edi]
+lea esi,[esi*8]
+mov dword ptr (24)[edi],esi
+fld dword ptr (L411)
+fstp dword ptr (-16)[ebp]
+fld dword ptr (L411)
+fstp dword ptr (-4)[ebp]
+fld dword ptr (L412)
+fstp dword ptr (-12)[ebp]
+jmp L414
+L413:
+fld dword ptr (-16)[ebp]
+fadd dword ptr (-4)[ebp]
+fstp dword ptr (-12)[ebp]
+fld dword ptr (-4)[ebp]
+fdiv qword ptr (L416)
+fstp dword ptr (-4)[ebp]
+L414:
+fld dword ptr (-16)[ebp]
+fcomp dword ptr (-12)[ebp]
+fstsw ax
+sahf
+jne L413
+mov edi,dword ptr (20)[ebp]
+fld qword ptr (L417)
+fmul dword ptr (-4)[ebp]
+fstp dword ptr (28)[edi]
+fld qword ptr (L418)
+fstp qword ptr (-32)[ebp]
+fld dword ptr (L411)
+fstp dword ptr (-4)[ebp]
+fld qword ptr (L419)
+fstp qword ptr (-24)[ebp]
+jmp L421
+L420:
+fld dword ptr (-4)[ebp]
+fstp qword ptr (-56)[ebp]
+fld qword ptr (-32)[ebp]
+fadd qword ptr (-56)[ebp]
+fstp qword ptr (-24)[ebp]
+fld qword ptr (-56)[ebp]
+fdiv qword ptr (L416)
+fstp dword ptr (-4)[ebp]
+L421:
+fld qword ptr (-32)[ebp]
+fcomp qword ptr (-24)[ebp]
+fstsw ax
+sahf
+jne L420
+mov edi,dword ptr (20)[ebp]
+fld qword ptr (L417)
+fmul dword ptr (-4)[ebp]
+fstp dword ptr (32)[edi]
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (40)[edi],0
+je L423
+lea edi,(L425)
+push edi
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr [edi]
+push edi
+lea edi,(L403)
+push edi
+call _printf
+add esp,12
+lea edi,(L426)
+push edi
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (4)[edi]
+push edi
+lea edi,(L403)
+push edi
+call _printf
+add esp,12
+lea edi,(L427)
+push edi
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (8)[edi]
+push edi
+lea edi,(L403)
+push edi
+call _printf
+add esp,12
+lea edi,(L428)
+push edi
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (12)[edi]
+push edi
+lea edi,(L403)
+push edi
+call _printf
+add esp,12
+lea edi,(L429)
+push edi
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (16)[edi]
+push edi
+lea edi,(L403)
+push edi
+call _printf
+add esp,12
+lea edi,(L430)
+push edi
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (20)[edi]
+push edi
+lea edi,(L403)
+push edi
+call _printf
+add esp,12
+lea edi,(L431)
+push edi
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (24)[edi]
+push edi
+lea edi,(L403)
+push edi
+call _printf
+add esp,12
+lea edi,(L430)
+push edi
+mov edi,dword ptr (20)[ebp]
+fld dword ptr (28)[edi]
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L404)
+push edi
+call _printf
+add esp,16
+lea edi,(L431)
+push edi
+mov edi,dword ptr (20)[ebp]
+fld dword ptr (32)[edi]
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L404)
+push edi
+call _printf
+add esp,16
+L423:
+mov eax,0
+L401:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L433 label byte
+db 115
+db 52
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L434 label byte
+db 115
+db 52
+db 32
+db 32
+db 32
+db 32
+db 32
+db 0
+public _s4
+_DATA ends
+_TEXT segment
+_s4:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,36
+mov dword ptr (-24)[ebp],0
+lea edi,(L434)
+mov dword ptr (-16)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-20)[ebp],edi
+L435:
+L436:
+mov edi,dword ptr (-20)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-20)[ebp],esi
+mov esi,dword ptr (-16)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-16)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L435
+mov dword ptr (-4)[ebp],0
+L438:
+mov edi,dword ptr (-4)[ebp]
+push edi
+call _svtest
+add esp,4
+mov edi,eax
+call _zero
+add esp,0
+cmp edi,eax
+je L442
+mov dword ptr (-24)[ebp],1
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L444
+push 1
+lea edi,(L433)
+push edi
+call _printf
+add esp,8
+L444:
+L442:
+L439:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],3
+jl L438
+call _setev
+add esp,0
+call _testev
+add esp,0
+cmp eax,0
+je L446
+add dword ptr (-24)[ebp],2
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L448
+push 2
+lea edi,(L433)
+push edi
+call _printf
+add esp,8
+L448:
+L446:
+jmp L450
+add dword ptr (-24)[ebp],4
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L452
+push 4
+lea edi,(L433)
+push edi
+call _printf
+add esp,8
+L452:
+L450:
+mov dword ptr (-8)[ebp],0ffffffffH
+mov dword ptr (-12)[ebp],1
+mov dword ptr (-4)[ebp],0
+jmp L457
+L454:
+mov edi,dword ptr (-8)[ebp]
+and dword ptr (-12)[ebp],edi
+shr edi,1
+mov dword ptr (-8)[ebp],edi
+L455:
+inc dword ptr (-4)[ebp]
+L457:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (20)[ebp]
+mov esi,dword ptr [esi]
+lea esi,[esi*4]
+cmp edi,esi
+jb L454
+mov edi,dword ptr (-12)[ebp]
+cmp edi,1
+jne L460
+mov edi,dword ptr (-8)[ebp]
+cmp edi,0
+je L458
+L460:
+add dword ptr (-24)[ebp],8
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L461
+push 8
+lea edi,(L433)
+push edi
+call _printf
+add esp,8
+L461:
+L458:
+mov eax,dword ptr (-24)[ebp]
+L432:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L464 label byte
+db 4 dup (0)
+public _svtest
+_DATA ends
+_TEXT segment
+_svtest:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov edi,dword ptr (20)[ebp]
+cmp edi,0
+je L467
+cmp edi,1
+je L468
+cmp edi,2
+je L471
+jmp L465
+L467:
+mov dword ptr (L464),1978
+mov dword ptr (-4)[ebp],0
+jmp L466
+L468:
+cmp dword ptr (L464),1978
+je L469
+mov dword ptr (-4)[ebp],1
+jmp L466
+L469:
+mov dword ptr (L464),1929
+mov dword ptr (-4)[ebp],0
+jmp L466
+L471:
+cmp dword ptr (L464),1929
+je L472
+mov dword ptr (-4)[ebp],1
+jmp L466
+L472:
+mov dword ptr (-4)[ebp],0
+L465:
+L466:
+mov eax,dword ptr (-4)[ebp]
+L463:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L475 label byte
+db 4 dup (0)
+public _zero
+_DATA ends
+_TEXT segment
+_zero:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (L475),2
+mov dword ptr (-4)[ebp],0
+mov eax,dword ptr (-4)[ebp]
+L474:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _testev
+_testev:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+cmp dword ptr (_extvar),1066
+je L477
+mov eax,1
+jmp L476
+L477:
+mov eax,0
+L476:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L480 label byte
+db 115
+db 54
+db 49
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L481 label byte
+db 115
+db 54
+db 49
+db 32
+db 32
+db 32
+db 32
+db 0
+align 1
+L482 label byte
+db 65
+db 66
+db 67
+db 68
+db 69
+db 70
+db 71
+db 72
+db 73
+db 74
+db 75
+db 76
+db 77
+db 78
+db 79
+db 80
+db 81
+db 82
+db 83
+db 84
+db 85
+db 86
+db 87
+db 88
+db 89
+db 90
+db 0
+align 1
+L483 label byte
+db 97
+db 98
+db 99
+db 100
+db 101
+db 102
+db 103
+db 104
+db 105
+db 106
+db 107
+db 108
+db 109
+db 110
+db 111
+db 112
+db 113
+db 114
+db 115
+db 116
+db 117
+db 118
+db 119
+db 120
+db 121
+db 122
+db 0
+align 1
+L484 label byte
+db 48
+db 49
+db 50
+db 51
+db 52
+db 53
+db 54
+db 55
+db 56
+db 57
+db 0
+align 1
+L485 label byte
+db 126
+db 33
+db 34
+db 35
+db 37
+db 38
+db 40
+db 41
+db 95
+db 61
+db 45
+db 94
+db 124
+db 123
+db 125
+db 91
+db 93
+db 43
+db 59
+db 42
+db 58
+db 60
+db 62
+db 44
+db 46
+db 63
+db 47
+db 0
+align 1
+L486 label byte
+db 10
+db 9
+db 8
+db 13
+db 12
+db 92
+db 39
+db 0
+align 1
+L487 label byte
+db 32
+db 0
+db 0
+public _s61
+_DATA ends
+_TEXT segment
+_s61:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,60
+lea edi,(L481)
+mov dword ptr (-36)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-40)[ebp],edi
+mov dword ptr (-48)[ebp],0
+L488:
+L489:
+mov edi,dword ptr (-40)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-40)[ebp],esi
+mov esi,dword ptr (-36)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-36)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L488
+mov word ptr (-54)[ebp],-19
+movsx edi,word ptr (-54)[ebp]
+mov dword ptr (-60)[ebp],edi
+cmp dword ptr (-60)[ebp],-19
+je L491
+inc dword ptr (-48)[ebp]
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L493
+push 1
+lea edi,(L480)
+push edi
+call _printf
+add esp,8
+L493:
+L491:
+lea edi,(L482)
+mov dword ptr (-28)[ebp],edi
+lea edi,(L483)
+mov dword ptr (-24)[ebp],edi
+lea edi,(L484)
+mov dword ptr (-20)[ebp],edi
+lea edi,(L485)
+mov dword ptr (-16)[ebp],edi
+lea edi,(L486)
+mov dword ptr (-12)[ebp],edi
+lea edi,(L487)
+mov dword ptr (-8)[ebp],edi
+mov dword ptr (-32)[ebp],0
+mov dword ptr (-4)[ebp],0
+jmp L505
+L504:
+mov edi,dword ptr (-4)[ebp]
+lea edi,(-28)[ebp][edi*4]
+mov esi,dword ptr [edi]
+lea ebx,(1)[esi]
+mov dword ptr [edi],ebx
+movsx edi,byte ptr [esi]
+cmp edi,0
+jge L507
+mov dword ptr (-32)[ebp],1
+L507:
+L505:
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr (-28)[ebp][edi*4]
+movsx edi,byte ptr [edi]
+cmp edi,0
+jne L504
+L501:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],6
+jl L505
+cmp dword ptr (-32)[ebp],0
+je L509
+add dword ptr (-48)[ebp],2
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L511
+push 2
+lea edi,(L480)
+push edi
+call _printf
+add esp,8
+L511:
+L509:
+mov dword ptr (-44)[ebp],1048579
+mov edi,dword ptr (-44)[ebp]
+mov esi,edi
+mov word ptr (-50)[ebp],si
+mov ebx,edi
+mov byte ptr (-51)[ebp],bl
+movsx edi,word ptr (-50)[ebp]
+cmp edi,dword ptr (-44)[ebp]
+je L516
+cmp edi,3
+jne L515
+L516:
+movsx edi,byte ptr (-51)[ebp]
+cmp edi,dword ptr (-44)[ebp]
+je L513
+cmp edi,3
+je L513
+L515:
+add dword ptr (-48)[ebp],8
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L517
+push 8
+lea edi,(L480)
+push edi
+call _printf
+add esp,8
+L517:
+L513:
+mov eax,dword ptr (-48)[ebp]
+L479:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L520 label byte
+db 115
+db 54
+db 50
+db 54
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L521 label byte
+db 115
+db 54
+db 50
+db 54
+db 32
+db 32
+db 32
+db 0
+public _s626
+_DATA ends
+_TEXT segment
+_s626:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,128
+lea edi,(L521)
+mov dword ptr (-56)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-60)[ebp],edi
+mov dword ptr (-104)[ebp],0
+L522:
+L523:
+mov edi,dword ptr (-60)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-60)[ebp],esi
+mov esi,dword ptr (-56)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-56)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L522
+fld dword ptr (L411)
+fstp dword ptr (-36)[ebp]
+mov dword ptr (-64)[ebp],1
+mov dword ptr (-40)[ebp],1
+mov dword ptr (-4)[ebp],0
+jmp L528
+L525:
+fld dword ptr (L529)
+fmul dword ptr (-36)[ebp]
+fstp dword ptr (-36)[ebp]
+mov edi,dword ptr (-40)[ebp]
+lea edi,[edi*2]
+or edi,dword ptr (-64)[ebp]
+mov dword ptr (-40)[ebp],edi
+L526:
+inc dword ptr (-4)[ebp]
+L528:
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (12)[edi]
+sub edi,2
+cmp dword ptr (-4)[ebp],edi
+jl L525
+mov edi,dword ptr (-40)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (-112)[ebp]
+fld dword ptr (-36)[ebp]
+fsub dword ptr (-112)[ebp]
+fdiv dword ptr (-36)[ebp]
+fstp dword ptr (-36)[ebp]
+fld qword ptr (L416)
+mov edi,dword ptr (20)[ebp]
+fmul dword ptr (28)[edi]
+fcomp dword ptr (-36)[ebp]
+fstsw ax
+sahf
+jae L530
+add dword ptr (-104)[ebp],2
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L532
+push 2
+lea edi,(L520)
+push edi
+call _printf
+add esp,8
+L532:
+L530:
+mov byte ptr (-73)[ebp],125
+mov word ptr (-76)[ebp],125
+mov dword ptr (-80)[ebp],125
+mov dword ptr (-96)[ebp],15625
+mov dword ptr (-84)[ebp],125
+mov dword ptr (-100)[ebp],15625
+mov dword ptr (-68)[ebp],125
+mov dword ptr (-108)[ebp],15625
+fld dword ptr (L534)
+fstp dword ptr (-72)[ebp]
+fld qword ptr (L535)
+fstp qword ptr (-92)[ebp]
+fld qword ptr (L536)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-4)[ebp],0
+L537:
+mov edi,dword ptr (-4)[ebp]
+mov byte ptr (-32)[ebp][edi],0
+L538:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],28
+jl L537
+movsx edi,byte ptr (-73)[ebp]
+mov esi,edi
+imul esi,edi
+cmp esi,dword ptr (-96)[ebp]
+je L541
+mov byte ptr (-32)[ebp],1
+L541:
+movsx edi,word ptr (-76)[ebp]
+movsx esi,byte ptr (-73)[ebp]
+imul edi,esi
+cmp edi,dword ptr (-96)[ebp]
+je L543
+mov byte ptr (-31)[ebp],1
+L543:
+movsx edi,word ptr (-76)[ebp]
+mov esi,edi
+imul esi,edi
+cmp esi,dword ptr (-96)[ebp]
+je L546
+mov byte ptr (-30)[ebp],1
+L546:
+mov edi,dword ptr (-80)[ebp]
+movsx esi,byte ptr (-73)[ebp]
+imul edi,esi
+cmp edi,dword ptr (-96)[ebp]
+je L549
+mov byte ptr (-29)[ebp],1
+L549:
+mov edi,dword ptr (-80)[ebp]
+movsx esi,word ptr (-76)[ebp]
+imul edi,esi
+cmp edi,dword ptr (-96)[ebp]
+je L552
+mov byte ptr (-28)[ebp],1
+L552:
+mov edi,dword ptr (-80)[ebp]
+mov esi,edi
+imul esi,edi
+cmp esi,dword ptr (-96)[ebp]
+je L555
+mov byte ptr (-27)[ebp],1
+L555:
+mov eax,dword ptr (-84)[ebp]
+movsx edi,byte ptr (-73)[ebp]
+mul edi
+cmp eax,dword ptr (-100)[ebp]
+je L558
+mov byte ptr (-26)[ebp],1
+L558:
+mov eax,dword ptr (-84)[ebp]
+movsx edi,word ptr (-76)[ebp]
+mul edi
+cmp eax,dword ptr (-100)[ebp]
+je L561
+mov byte ptr (-25)[ebp],1
+L561:
+mov eax,dword ptr (-84)[ebp]
+mov edi,dword ptr (-80)[ebp]
+mul edi
+cmp eax,dword ptr (-100)[ebp]
+je L564
+mov byte ptr (-24)[ebp],1
+L564:
+mov edi,dword ptr (-84)[ebp]
+mov eax,edi
+mul edi
+cmp eax,dword ptr (-100)[ebp]
+je L567
+mov byte ptr (-23)[ebp],1
+L567:
+mov edi,dword ptr (-68)[ebp]
+movsx esi,byte ptr (-73)[ebp]
+imul edi,esi
+cmp edi,dword ptr (-108)[ebp]
+je L570
+mov byte ptr (-22)[ebp],1
+L570:
+mov edi,dword ptr (-68)[ebp]
+movsx esi,word ptr (-76)[ebp]
+imul edi,esi
+cmp edi,dword ptr (-108)[ebp]
+je L573
+mov byte ptr (-21)[ebp],1
+L573:
+mov edi,dword ptr (-68)[ebp]
+mov esi,dword ptr (-80)[ebp]
+imul edi,esi
+cmp edi,dword ptr (-108)[ebp]
+je L576
+mov byte ptr (-20)[ebp],1
+L576:
+mov edi,dword ptr (-68)[ebp]
+mov eax,edi
+mul dword ptr (-84)[ebp]
+cmp eax,dword ptr (-100)[ebp]
+je L579
+mov byte ptr (-19)[ebp],1
+L579:
+mov edi,dword ptr (-68)[ebp]
+mov esi,edi
+imul esi,edi
+cmp esi,dword ptr (-108)[ebp]
+je L582
+mov byte ptr (-18)[ebp],1
+L582:
+fld dword ptr (-72)[ebp]
+movsx edi,byte ptr (-73)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L585
+mov byte ptr (-17)[ebp],1
+L585:
+fld dword ptr (-72)[ebp]
+movsx edi,word ptr (-76)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L588
+mov byte ptr (-16)[ebp],1
+L588:
+fld dword ptr (-72)[ebp]
+mov edi,dword ptr (-80)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L591
+mov byte ptr (-15)[ebp],1
+L591:
+mov edi,dword ptr (-84)[ebp]
+fld dword ptr (-72)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L594
+mov byte ptr (-14)[ebp],1
+L594:
+fld dword ptr (-72)[ebp]
+mov edi,dword ptr (-68)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L598
+mov byte ptr (-13)[ebp],1
+L598:
+fld dword ptr (-72)[ebp]
+fmul dword ptr (-72)[ebp]
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L601
+mov byte ptr (-12)[ebp],1
+L601:
+fld qword ptr (-92)[ebp]
+movsx edi,byte ptr (-73)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L604
+mov byte ptr (-11)[ebp],1
+L604:
+fld qword ptr (-92)[ebp]
+movsx edi,word ptr (-76)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L607
+mov byte ptr (-10)[ebp],1
+L607:
+fld qword ptr (-92)[ebp]
+fild dword ptr (-80)[ebp]
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L610
+mov byte ptr (-9)[ebp],1
+L610:
+mov edi,dword ptr (-84)[ebp]
+fld qword ptr (-92)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L613
+mov byte ptr (-8)[ebp],1
+L613:
+fld qword ptr (-92)[ebp]
+fild dword ptr (-68)[ebp]
+fmulp st(1),st
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L616
+mov byte ptr (-7)[ebp],1
+L616:
+fld qword ptr (-92)[ebp]
+fmul dword ptr (-72)[ebp]
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L619
+mov byte ptr (-6)[ebp],1
+L619:
+fld qword ptr (-92)[ebp]
+fmul qword ptr (-92)[ebp]
+fld qword ptr (-52)[ebp]
+fcompp
+fstsw ax
+sahf
+je L622
+mov byte ptr (-5)[ebp],1
+L622:
+mov byte ptr (-41)[ebp],0
+mov dword ptr (-4)[ebp],0
+L625:
+movsx edi,byte ptr (-41)[ebp]
+mov esi,dword ptr (-4)[ebp]
+movsx esi,byte ptr (-32)[ebp][esi]
+lea edi,[esi][edi]
+mov ebx,edi
+mov byte ptr (-41)[ebp],bl
+L626:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],28
+jl L625
+movsx edi,byte ptr (-41)[ebp]
+cmp edi,0
+je L629
+add dword ptr (-104)[ebp],4
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L631
+push 4
+lea edi,(L520)
+push edi
+call _printf
+add esp,8
+lea edi,(L633)
+push edi
+call _printf
+add esp,4
+mov dword ptr (-4)[ebp],0
+L634:
+mov edi,dword ptr (-4)[ebp]
+movsx edi,byte ptr (-32)[ebp][edi]
+push edi
+lea edi,(L638)
+push edi
+call _printf
+add esp,8
+L635:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],28
+jl L634
+lea edi,(L639)
+push edi
+call _printf
+add esp,4
+L631:
+L629:
+mov dword ptr (-68)[ebp],32768
+mov edi,dword ptr (-68)[ebp]
+cmp edi,08000H
+jbe L640
+add dword ptr (-104)[ebp],8
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L642
+push 8
+lea edi,(L520)
+push edi
+call _printf
+add esp,8
+L642:
+L640:
+mov eax,dword ptr (-104)[ebp]
+L519:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L645 label byte
+db 115
+db 55
+db 49
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L646 label byte
+db 115
+db 55
+db 49
+db 32
+db 32
+db 32
+db 32
+db 0
+align 1
+L647 label byte
+db 113
+public _s71
+_DATA ends
+_TEXT segment
+_s71:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,68
+lea edi,(L646)
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-8)[ebp],edi
+mov dword ptr (-12)[ebp],0
+L648:
+L649:
+mov edi,dword ptr (-8)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-8)[ebp],esi
+mov esi,dword ptr (-4)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-4)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L648
+movsx edi,byte ptr (L653)
+movsx esi,byte ptr (L647)
+cmp edi,esi
+je L651
+inc dword ptr (-12)[ebp]
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L654
+push 1
+lea edi,(L645)
+push edi
+call _printf
+add esp,8
+L654:
+L651:
+jmp L656
+add dword ptr (-12)[ebp],2
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L658
+push 2
+lea edi,(L645)
+push edi
+call _printf
+add esp,8
+L658:
+L656:
+mov dword ptr (-32)[ebp],1942
+cmp dword ptr (-32)[ebp],1942
+jne L666
+mov edi,dword ptr (-32)[ebp]
+cmp dword ptr (-32)[ebp],edi
+je L661
+L666:
+add dword ptr (-12)[ebp],4
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L667
+push 4
+lea edi,(L645)
+push edi
+call _printf
+add esp,8
+L667:
+L661:
+push -5
+call _McCarthy
+add esp,4
+cmp eax,91
+je L669
+add dword ptr (-12)[ebp],8
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L671
+push 8
+lea edi,(L645)
+push edi
+call _printf
+add esp,8
+L671:
+L669:
+mov dword ptr (-56)[ebp],2
+mov dword ptr (-60)[ebp],3
+lea edi,(-60)[ebp]
+mov dword ptr (-64)[ebp],edi
+mov edi,dword ptr (-64)[ebp]
+push edi
+mov edi,dword ptr (-56)[ebp]
+push edi
+call _clobber
+add esp,8
+cmp dword ptr (-56)[ebp],2
+jne L675
+cmp dword ptr (-60)[ebp],2
+je L673
+L675:
+add dword ptr (-12)[ebp],16
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L676
+push 16
+lea edi,(L645)
+push edi
+call _printf
+add esp,8
+L676:
+L673:
+mov edi,dword ptr (20)[ebp]
+fld dword ptr (32)[edi]
+fstp dword ptr (-68)[ebp]
+fld dword ptr (-68)[ebp]
+fcomp dword ptr (-68)[ebp]
+fstsw ax
+sahf
+je L678
+add dword ptr (-12)[ebp],32
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L680
+push 32
+lea edi,(L645)
+push edi
+call _printf
+add esp,8
+L680:
+L678:
+mov eax,dword ptr (-12)[ebp]
+L644:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _McCarthy
+_McCarthy:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+cmp dword ptr (20)[ebp],100
+jle L683
+mov edi,dword ptr (20)[ebp]
+mov eax,edi
+sub eax,10
+jmp L682
+L683:
+mov edi,dword ptr (20)[ebp]
+lea edi,(11)[edi]
+push edi
+call _McCarthy
+add esp,4
+mov edi,eax
+push edi
+call _McCarthy
+add esp,4
+mov edi,eax
+L682:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _clobber
+_clobber:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov dword ptr (20)[ebp],3
+mov edi,dword ptr (24)[ebp]
+mov dword ptr [edi],2
+mov eax,0
+L685:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L687 label byte
+db 76
+db 111
+db 99
+db 97
+db 108
+db 32
+db 101
+db 114
+db 114
+db 111
+db 114
+db 32
+db 37
+db 100
+db 46
+db 10
+db 0
+align 1
+L688 label byte
+db 115
+db 55
+db 49
+db 52
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L689 label byte
+db 115
+db 55
+db 49
+db 52
+db 32
+db 32
+db 32
+db 0
+public _s714
+_DATA ends
+_TEXT segment
+_s714:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,248
+lea edi,(L689)
+mov dword ptr (-68)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea esi,(60)[edi]
+mov dword ptr (-72)[ebp],esi
+mov dword ptr (-76)[ebp],0
+mov dword ptr (-8)[ebp],0
+mov edi,dword ptr (48)[edi]
+mov dword ptr (-4)[ebp],edi
+L690:
+L691:
+mov edi,dword ptr (-72)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-72)[ebp],esi
+mov esi,dword ptr (-68)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-68)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L690
+mov byte ptr (-9)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov bl,byte ptr (-25)[ebp]
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L693
+mov dword ptr (-8)[ebp],1
+cmp dword ptr (-4)[ebp],0
+je L695
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L695:
+L693:
+mov byte ptr (-9)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L697
+mov dword ptr (-8)[ebp],2
+cmp dword ptr (-4)[ebp],0
+je L699
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L699:
+L697:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L701
+mov dword ptr (-8)[ebp],3
+cmp dword ptr (-4)[ebp],0
+je L703
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L703:
+L701:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L705
+mov dword ptr (-8)[ebp],4
+cmp dword ptr (-4)[ebp],0
+je L707
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L707:
+L705:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L709
+mov dword ptr (-8)[ebp],5
+cmp dword ptr (-4)[ebp],0
+je L711
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L711:
+L709:
+mov byte ptr (-9)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-56)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L713
+mov dword ptr (-8)[ebp],6
+cmp dword ptr (-4)[ebp],0
+je L715
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L715:
+L713:
+mov byte ptr (-9)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-64)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L717
+mov dword ptr (-8)[ebp],7
+cmp dword ptr (-4)[ebp],0
+je L719
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L719:
+L717:
+mov word ptr (-12)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L721
+mov dword ptr (-8)[ebp],8
+cmp dword ptr (-4)[ebp],0
+je L723
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L723:
+L721:
+mov word ptr (-12)[ebp],5
+mov word ptr (-28)[ebp],2
+mov di,word ptr (-28)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L725
+mov dword ptr (-8)[ebp],9
+cmp dword ptr (-4)[ebp],0
+je L727
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L727:
+L725:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L729
+mov dword ptr (-8)[ebp],10
+cmp dword ptr (-4)[ebp],0
+je L731
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L731:
+L729:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L733
+mov dword ptr (-8)[ebp],11
+cmp dword ptr (-4)[ebp],0
+je L735
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L735:
+L733:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L737
+mov dword ptr (-8)[ebp],12
+cmp dword ptr (-4)[ebp],0
+je L739
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L739:
+L737:
+mov word ptr (-12)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-56)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L741
+mov dword ptr (-8)[ebp],13
+cmp dword ptr (-4)[ebp],0
+je L743
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L743:
+L741:
+mov word ptr (-12)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-64)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L745
+mov dword ptr (-8)[ebp],14
+cmp dword ptr (-4)[ebp],0
+je L747
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L747:
+L745:
+mov dword ptr (-16)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],2
+je L749
+mov dword ptr (-8)[ebp],15
+cmp dword ptr (-4)[ebp],0
+je L751
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L751:
+L749:
+mov dword ptr (-16)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],2
+je L753
+mov dword ptr (-8)[ebp],16
+cmp dword ptr (-4)[ebp],0
+je L755
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L755:
+L753:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],2
+je L757
+mov dword ptr (-8)[ebp],17
+cmp dword ptr (-4)[ebp],0
+je L759
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L759:
+L757:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],2
+je L761
+mov dword ptr (-8)[ebp],18
+cmp dword ptr (-4)[ebp],0
+je L763
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L763:
+L761:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],2
+je L765
+mov dword ptr (-8)[ebp],19
+cmp dword ptr (-4)[ebp],0
+je L767
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L767:
+L765:
+mov dword ptr (-16)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],2
+je L769
+mov dword ptr (-8)[ebp],20
+cmp dword ptr (-4)[ebp],0
+je L771
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L771:
+L769:
+mov dword ptr (-16)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],2
+je L773
+mov dword ptr (-8)[ebp],21
+cmp dword ptr (-4)[ebp],0
+je L775
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L775:
+L773:
+mov dword ptr (-20)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],2
+je L777
+mov dword ptr (-8)[ebp],22
+cmp dword ptr (-4)[ebp],0
+je L779
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L779:
+L777:
+mov dword ptr (-20)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],2
+je L781
+mov dword ptr (-8)[ebp],23
+cmp dword ptr (-4)[ebp],0
+je L783
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L783:
+L781:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],2
+je L785
+mov dword ptr (-8)[ebp],24
+cmp dword ptr (-4)[ebp],0
+je L787
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L787:
+L785:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],2
+je L789
+mov dword ptr (-8)[ebp],25
+cmp dword ptr (-4)[ebp],0
+je L791
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L791:
+L789:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],2
+je L793
+mov dword ptr (-8)[ebp],26
+cmp dword ptr (-4)[ebp],0
+je L795
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L795:
+L793:
+mov dword ptr (-20)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],2
+je L797
+mov dword ptr (-8)[ebp],27
+cmp dword ptr (-4)[ebp],0
+je L799
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L799:
+L797:
+mov dword ptr (-20)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],2
+je L801
+mov dword ptr (-8)[ebp],28
+cmp dword ptr (-4)[ebp],0
+je L803
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L803:
+L801:
+mov dword ptr (-24)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L805
+mov dword ptr (-8)[ebp],29
+cmp dword ptr (-4)[ebp],0
+je L807
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L807:
+L805:
+mov dword ptr (-24)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L809
+mov dword ptr (-8)[ebp],30
+cmp dword ptr (-4)[ebp],0
+je L811
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L811:
+L809:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L813
+mov dword ptr (-8)[ebp],31
+cmp dword ptr (-4)[ebp],0
+je L815
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L815:
+L813:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L817
+mov dword ptr (-8)[ebp],32
+cmp dword ptr (-4)[ebp],0
+je L819
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L819:
+L817:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L821
+mov dword ptr (-8)[ebp],33
+cmp dword ptr (-4)[ebp],0
+je L823
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L823:
+L821:
+mov dword ptr (-24)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (L828)
+fcomp dword ptr (-56)[ebp]
+fstsw ax
+sahf
+ja L826
+fld dword ptr (-56)[ebp]
+fsub dword ptr (L828)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-80)[ebp],edi
+jmp L827
+L826:
+fld dword ptr (-56)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-80)[ebp],edi
+L827:
+mov edi,dword ptr (-80)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L829
+mov dword ptr (-8)[ebp],34
+cmp dword ptr (-4)[ebp],0
+je L831
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L831:
+L829:
+mov dword ptr (-24)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (L836)
+fcomp qword ptr (-64)[ebp]
+fstsw ax
+sahf
+ja L834
+fld qword ptr (-64)[ebp]
+fsub qword ptr (L836)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-92)[ebp],edi
+jmp L835
+L834:
+fld qword ptr (-64)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-92)[ebp],edi
+L835:
+mov edi,dword ptr (-92)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L837
+mov dword ptr (-8)[ebp],35
+cmp dword ptr (-4)[ebp],0
+je L839
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L839:
+L837:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L842
+mov dword ptr (-8)[ebp],36
+cmp dword ptr (-4)[ebp],0
+je L844
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L844:
+L842:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L846
+mov dword ptr (-8)[ebp],37
+cmp dword ptr (-4)[ebp],0
+je L848
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L848:
+L846:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L850
+mov dword ptr (-8)[ebp],38
+cmp dword ptr (-4)[ebp],0
+je L852
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L852:
+L850:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L854
+mov dword ptr (-8)[ebp],39
+cmp dword ptr (-4)[ebp],0
+je L856
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L856:
+L854:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L858
+mov dword ptr (-8)[ebp],40
+cmp dword ptr (-4)[ebp],0
+je L860
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L860:
+L858:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-56)[ebp]
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L862
+mov dword ptr (-8)[ebp],41
+cmp dword ptr (-4)[ebp],0
+je L864
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L864:
+L862:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-64)[ebp]
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L866
+mov dword ptr (-8)[ebp],42
+cmp dword ptr (-4)[ebp],0
+je L868
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L868:
+L866:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L871
+mov dword ptr (-8)[ebp],43
+cmp dword ptr (-4)[ebp],0
+je L873
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L873:
+L871:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L875
+mov dword ptr (-8)[ebp],44
+cmp dword ptr (-4)[ebp],0
+je L877
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L877:
+L875:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-32)[ebp],2
+fild dword ptr (-32)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L879
+mov dword ptr (-8)[ebp],45
+cmp dword ptr (-4)[ebp],0
+je L881
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L881:
+L879:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-36)[ebp],2
+fild dword ptr (-36)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L883
+mov dword ptr (-8)[ebp],46
+cmp dword ptr (-4)[ebp],0
+je L885
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L885:
+L883:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L887
+mov dword ptr (-8)[ebp],47
+cmp dword ptr (-4)[ebp],0
+je L889
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L889:
+L887:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-56)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L891
+mov dword ptr (-8)[ebp],48
+cmp dword ptr (-4)[ebp],0
+je L893
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L893:
+L891:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-64)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L895
+mov dword ptr (-8)[ebp],49
+cmp dword ptr (-4)[ebp],0
+je L897
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L897:
+L895:
+mov byte ptr (-9)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+lea edi,[esi][edi]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,7
+je L899
+mov dword ptr (-8)[ebp],50
+cmp dword ptr (-4)[ebp],0
+je L901
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L901:
+L899:
+mov byte ptr (-9)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,word ptr (-28)[ebp]
+lea edi,[esi][edi]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,7
+je L903
+mov dword ptr (-8)[ebp],51
+cmp dword ptr (-4)[ebp],0
+je L905
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L905:
+L903:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-32)[ebp]
+lea edi,[esi][edi]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,7
+je L907
+mov dword ptr (-8)[ebp],52
+cmp dword ptr (-4)[ebp],0
+je L909
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L909:
+L907:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-36)[ebp]
+lea edi,[esi][edi]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,7
+je L911
+mov dword ptr (-8)[ebp],53
+cmp dword ptr (-4)[ebp],0
+je L913
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L913:
+L911:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-40)[ebp]
+lea edi,[esi][edi]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,7
+je L915
+mov dword ptr (-8)[ebp],54
+cmp dword ptr (-4)[ebp],0
+je L917
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L917:
+L915:
+mov byte ptr (-9)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+movsx edi,byte ptr (-9)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fadd dword ptr (-56)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,7
+je L919
+mov dword ptr (-8)[ebp],55
+cmp dword ptr (-4)[ebp],0
+je L921
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L921:
+L919:
+mov byte ptr (-9)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+movsx edi,byte ptr (-9)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fadd qword ptr (-64)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,7
+je L923
+mov dword ptr (-8)[ebp],56
+cmp dword ptr (-4)[ebp],0
+je L925
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L925:
+L923:
+mov word ptr (-12)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+lea edi,[esi][edi]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,7
+je L927
+mov dword ptr (-8)[ebp],57
+cmp dword ptr (-4)[ebp],0
+je L929
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L929:
+L927:
+mov word ptr (-12)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,word ptr (-28)[ebp]
+lea edi,[esi][edi]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,7
+je L931
+mov dword ptr (-8)[ebp],58
+cmp dword ptr (-4)[ebp],0
+je L933
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L933:
+L931:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-32)[ebp]
+lea edi,[esi][edi]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,7
+je L935
+mov dword ptr (-8)[ebp],59
+cmp dword ptr (-4)[ebp],0
+je L937
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L937:
+L935:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-36)[ebp]
+lea edi,[esi][edi]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,7
+je L939
+mov dword ptr (-8)[ebp],60
+cmp dword ptr (-4)[ebp],0
+je L941
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L941:
+L939:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-40)[ebp]
+lea edi,[esi][edi]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,7
+je L943
+mov dword ptr (-8)[ebp],61
+cmp dword ptr (-4)[ebp],0
+je L945
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L945:
+L943:
+mov word ptr (-12)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+movsx edi,word ptr (-12)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fadd dword ptr (-56)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,7
+je L947
+mov dword ptr (-8)[ebp],62
+cmp dword ptr (-4)[ebp],0
+je L949
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L949:
+L947:
+mov word ptr (-12)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+movsx edi,word ptr (-12)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fadd qword ptr (-64)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,7
+je L951
+mov dword ptr (-8)[ebp],63
+cmp dword ptr (-4)[ebp],0
+je L953
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L953:
+L951:
+mov dword ptr (-16)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+add dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],7
+je L955
+mov dword ptr (-8)[ebp],64
+cmp dword ptr (-4)[ebp],0
+je L957
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L957:
+L955:
+mov dword ptr (-16)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+add dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],7
+je L959
+mov dword ptr (-8)[ebp],65
+cmp dword ptr (-4)[ebp],0
+je L961
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L961:
+L959:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+add dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],7
+je L963
+mov dword ptr (-8)[ebp],66
+cmp dword ptr (-4)[ebp],0
+je L965
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L965:
+L963:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+add dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],7
+je L967
+mov dword ptr (-8)[ebp],67
+cmp dword ptr (-4)[ebp],0
+je L969
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L969:
+L967:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-40)[ebp]
+lea edi,[esi][edi]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],7
+je L971
+mov dword ptr (-8)[ebp],68
+cmp dword ptr (-4)[ebp],0
+je L973
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L973:
+L971:
+mov dword ptr (-16)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-16)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fadd dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],7
+je L975
+mov dword ptr (-8)[ebp],69
+cmp dword ptr (-4)[ebp],0
+je L977
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L977:
+L975:
+mov dword ptr (-16)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fild dword ptr (-16)[ebp]
+fadd qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],7
+je L979
+mov dword ptr (-8)[ebp],70
+cmp dword ptr (-4)[ebp],0
+je L981
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L981:
+L979:
+mov dword ptr (-20)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+add dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],7
+je L983
+mov dword ptr (-8)[ebp],71
+cmp dword ptr (-4)[ebp],0
+je L985
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L985:
+L983:
+mov dword ptr (-20)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+add dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],7
+je L987
+mov dword ptr (-8)[ebp],72
+cmp dword ptr (-4)[ebp],0
+je L989
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L989:
+L987:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+add dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],7
+je L991
+mov dword ptr (-8)[ebp],73
+cmp dword ptr (-4)[ebp],0
+je L993
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L993:
+L991:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+add dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],7
+je L995
+mov dword ptr (-8)[ebp],74
+cmp dword ptr (-4)[ebp],0
+je L997
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L997:
+L995:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-40)[ebp]
+lea edi,[esi][edi]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],7
+je L999
+mov dword ptr (-8)[ebp],75
+cmp dword ptr (-4)[ebp],0
+je L1001
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1001:
+L999:
+mov dword ptr (-20)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-20)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fadd dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],7
+je L1003
+mov dword ptr (-8)[ebp],76
+cmp dword ptr (-4)[ebp],0
+je L1005
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1005:
+L1003:
+mov dword ptr (-20)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fild dword ptr (-20)[ebp]
+fadd qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],7
+je L1007
+mov dword ptr (-8)[ebp],77
+cmp dword ptr (-4)[ebp],0
+je L1009
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1009:
+L1007:
+mov dword ptr (-24)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+add dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,7
+je L1011
+mov dword ptr (-8)[ebp],78
+cmp dword ptr (-4)[ebp],0
+je L1013
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1013:
+L1011:
+mov dword ptr (-24)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+add dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,7
+je L1015
+mov dword ptr (-8)[ebp],79
+cmp dword ptr (-4)[ebp],0
+je L1017
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1017:
+L1015:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+add dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,7
+je L1019
+mov dword ptr (-8)[ebp],80
+cmp dword ptr (-4)[ebp],0
+je L1021
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1021:
+L1019:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+add dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,7
+je L1023
+mov dword ptr (-8)[ebp],81
+cmp dword ptr (-4)[ebp],0
+je L1025
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1025:
+L1023:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+add dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,7
+je L1027
+mov dword ptr (-8)[ebp],82
+cmp dword ptr (-4)[ebp],0
+je L1029
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1029:
+L1027:
+mov dword ptr (-24)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-24)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fadd dword ptr (-56)[ebp]
+fstp dword ptr (-128)[ebp]
+fld dword ptr (L828)
+fcomp dword ptr (-128)[ebp]
+fstsw ax
+sahf
+ja L1032
+fld dword ptr (-128)[ebp]
+fsub dword ptr (L828)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-124)[ebp],edi
+jmp L1033
+L1032:
+fld dword ptr (-128)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-124)[ebp],edi
+L1033:
+mov edi,dword ptr (-124)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,7
+je L1034
+mov dword ptr (-8)[ebp],83
+cmp dword ptr (-4)[ebp],0
+je L1036
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1036:
+L1034:
+mov dword ptr (-24)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+mov edi,dword ptr (-24)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fadd qword ptr (-64)[ebp]
+fstp qword ptr (-144)[ebp]
+fld qword ptr (L836)
+fcomp qword ptr (-144)[ebp]
+fstsw ax
+sahf
+ja L1039
+fld qword ptr (-144)[ebp]
+fsub qword ptr (L836)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-136)[ebp],edi
+jmp L1040
+L1039:
+fld qword ptr (-144)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-136)[ebp],edi
+L1040:
+mov edi,dword ptr (-136)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,7
+je L1041
+mov dword ptr (-8)[ebp],84
+cmp dword ptr (-4)[ebp],0
+je L1043
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1043:
+L1041:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov byte ptr (-25)[ebp],2
+fld dword ptr (-44)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1047)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1045
+mov dword ptr (-8)[ebp],85
+cmp dword ptr (-4)[ebp],0
+je L1048
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1048:
+L1045:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov word ptr (-28)[ebp],2
+fld dword ptr (-44)[ebp]
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1047)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1050
+mov dword ptr (-8)[ebp],86
+cmp dword ptr (-4)[ebp],0
+je L1052
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1052:
+L1050:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-32)[ebp],2
+fld dword ptr (-44)[ebp]
+mov edi,dword ptr (-32)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1047)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1054
+mov dword ptr (-8)[ebp],87
+cmp dword ptr (-4)[ebp],0
+je L1056
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1056:
+L1054:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-36)[ebp],2
+fld dword ptr (-44)[ebp]
+mov edi,dword ptr (-36)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1047)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1058
+mov dword ptr (-8)[ebp],88
+cmp dword ptr (-4)[ebp],0
+je L1060
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1060:
+L1058:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld dword ptr (-44)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1047)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1062
+mov dword ptr (-8)[ebp],89
+cmp dword ptr (-4)[ebp],0
+je L1064
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1064:
+L1062:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-44)[ebp]
+fadd dword ptr (-56)[ebp]
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1047)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1066
+mov dword ptr (-8)[ebp],90
+cmp dword ptr (-4)[ebp],0
+je L1068
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1068:
+L1066:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld dword ptr (-44)[ebp]
+fadd qword ptr (-64)[ebp]
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1047)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1070
+mov dword ptr (-8)[ebp],91
+cmp dword ptr (-4)[ebp],0
+je L1072
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1072:
+L1070:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov byte ptr (-25)[ebp],2
+fld qword ptr (-52)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1076)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1074
+mov dword ptr (-8)[ebp],92
+cmp dword ptr (-4)[ebp],0
+je L1077
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1077:
+L1074:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov word ptr (-28)[ebp],2
+fld qword ptr (-52)[ebp]
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1076)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1079
+mov dword ptr (-8)[ebp],93
+cmp dword ptr (-4)[ebp],0
+je L1081
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1081:
+L1079:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-32)[ebp],2
+fld qword ptr (-52)[ebp]
+fild dword ptr (-32)[ebp]
+faddp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1076)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1083
+mov dword ptr (-8)[ebp],94
+cmp dword ptr (-4)[ebp],0
+je L1085
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1085:
+L1083:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-36)[ebp],2
+fld qword ptr (-52)[ebp]
+fild dword ptr (-36)[ebp]
+faddp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1076)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1087
+mov dword ptr (-8)[ebp],95
+cmp dword ptr (-4)[ebp],0
+je L1089
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1089:
+L1087:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld qword ptr (-52)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+faddp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1076)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1091
+mov dword ptr (-8)[ebp],96
+cmp dword ptr (-4)[ebp],0
+je L1093
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1093:
+L1091:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld qword ptr (-52)[ebp]
+fadd dword ptr (-56)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1076)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1095
+mov dword ptr (-8)[ebp],97
+cmp dword ptr (-4)[ebp],0
+je L1097
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1097:
+L1095:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-52)[ebp]
+fadd qword ptr (-64)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1076)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1099
+mov dword ptr (-8)[ebp],98
+cmp dword ptr (-4)[ebp],0
+je L1101
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1101:
+L1099:
+mov byte ptr (-9)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+sub edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,3
+je L1103
+mov dword ptr (-8)[ebp],99
+cmp dword ptr (-4)[ebp],0
+je L1105
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1105:
+L1103:
+mov byte ptr (-9)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,word ptr (-28)[ebp]
+sub edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,3
+je L1107
+mov dword ptr (-8)[ebp],100
+cmp dword ptr (-4)[ebp],0
+je L1109
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1109:
+L1107:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+sub edi,dword ptr (-32)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,3
+je L1111
+mov dword ptr (-8)[ebp],101
+cmp dword ptr (-4)[ebp],0
+je L1113
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1113:
+L1111:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+sub edi,dword ptr (-36)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,3
+je L1115
+mov dword ptr (-8)[ebp],102
+cmp dword ptr (-4)[ebp],0
+je L1117
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1117:
+L1115:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+sub edi,dword ptr (-40)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,3
+je L1119
+mov dword ptr (-8)[ebp],103
+cmp dword ptr (-4)[ebp],0
+je L1121
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1121:
+L1119:
+mov byte ptr (-9)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+movsx edi,byte ptr (-9)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsub dword ptr (-56)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,3
+je L1123
+mov dword ptr (-8)[ebp],104
+cmp dword ptr (-4)[ebp],0
+je L1125
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1125:
+L1123:
+mov byte ptr (-9)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+movsx edi,byte ptr (-9)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsub qword ptr (-64)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,3
+je L1127
+mov dword ptr (-8)[ebp],105
+cmp dword ptr (-4)[ebp],0
+je L1129
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1129:
+L1127:
+mov word ptr (-12)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+sub edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,3
+je L1131
+mov dword ptr (-8)[ebp],106
+cmp dword ptr (-4)[ebp],0
+je L1133
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1133:
+L1131:
+mov word ptr (-12)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,word ptr (-28)[ebp]
+sub edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,3
+je L1135
+mov dword ptr (-8)[ebp],107
+cmp dword ptr (-4)[ebp],0
+je L1137
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1137:
+L1135:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+sub edi,dword ptr (-32)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,3
+je L1139
+mov dword ptr (-8)[ebp],108
+cmp dword ptr (-4)[ebp],0
+je L1141
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1141:
+L1139:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+sub edi,dword ptr (-36)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,3
+je L1143
+mov dword ptr (-8)[ebp],109
+cmp dword ptr (-4)[ebp],0
+je L1145
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1145:
+L1143:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+sub edi,dword ptr (-40)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,3
+je L1147
+mov dword ptr (-8)[ebp],110
+cmp dword ptr (-4)[ebp],0
+je L1149
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1149:
+L1147:
+mov word ptr (-12)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+movsx edi,word ptr (-12)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsub dword ptr (-56)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,3
+je L1151
+mov dword ptr (-8)[ebp],111
+cmp dword ptr (-4)[ebp],0
+je L1153
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1153:
+L1151:
+mov word ptr (-12)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+movsx edi,word ptr (-12)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsub qword ptr (-64)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,3
+je L1155
+mov dword ptr (-8)[ebp],112
+cmp dword ptr (-4)[ebp],0
+je L1157
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1157:
+L1155:
+mov dword ptr (-16)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+sub dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],3
+je L1159
+mov dword ptr (-8)[ebp],113
+cmp dword ptr (-4)[ebp],0
+je L1161
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1161:
+L1159:
+mov dword ptr (-16)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+sub dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],3
+je L1163
+mov dword ptr (-8)[ebp],114
+cmp dword ptr (-4)[ebp],0
+je L1165
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1165:
+L1163:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+sub dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],3
+je L1167
+mov dword ptr (-8)[ebp],115
+cmp dword ptr (-4)[ebp],0
+je L1169
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1169:
+L1167:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+sub dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],3
+je L1171
+mov dword ptr (-8)[ebp],116
+cmp dword ptr (-4)[ebp],0
+je L1173
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1173:
+L1171:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+sub edi,dword ptr (-40)[ebp]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],3
+je L1175
+mov dword ptr (-8)[ebp],117
+cmp dword ptr (-4)[ebp],0
+je L1177
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1177:
+L1175:
+mov dword ptr (-16)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-16)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsub dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],3
+je L1179
+mov dword ptr (-8)[ebp],118
+cmp dword ptr (-4)[ebp],0
+je L1181
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1181:
+L1179:
+mov dword ptr (-16)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fild dword ptr (-16)[ebp]
+fsub qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],3
+je L1183
+mov dword ptr (-8)[ebp],119
+cmp dword ptr (-4)[ebp],0
+je L1185
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1185:
+L1183:
+mov dword ptr (-20)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+sub dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],3
+je L1187
+mov dword ptr (-8)[ebp],120
+cmp dword ptr (-4)[ebp],0
+je L1189
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1189:
+L1187:
+mov dword ptr (-20)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+sub dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],3
+je L1191
+mov dword ptr (-8)[ebp],121
+cmp dword ptr (-4)[ebp],0
+je L1193
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1193:
+L1191:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+sub dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],3
+je L1195
+mov dword ptr (-8)[ebp],122
+cmp dword ptr (-4)[ebp],0
+je L1197
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1197:
+L1195:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+sub dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],3
+je L1199
+mov dword ptr (-8)[ebp],123
+cmp dword ptr (-4)[ebp],0
+je L1201
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1201:
+L1199:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+sub edi,dword ptr (-40)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],3
+je L1203
+mov dword ptr (-8)[ebp],124
+cmp dword ptr (-4)[ebp],0
+je L1205
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1205:
+L1203:
+mov dword ptr (-20)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-20)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsub dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],3
+je L1207
+mov dword ptr (-8)[ebp],125
+cmp dword ptr (-4)[ebp],0
+je L1209
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1209:
+L1207:
+mov dword ptr (-20)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fild dword ptr (-20)[ebp]
+fsub qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],3
+je L1211
+mov dword ptr (-8)[ebp],126
+cmp dword ptr (-4)[ebp],0
+je L1213
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1213:
+L1211:
+mov dword ptr (-24)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-25)[ebp]
+sub dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,3
+je L1215
+mov dword ptr (-8)[ebp],127
+cmp dword ptr (-4)[ebp],0
+je L1217
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1217:
+L1215:
+mov dword ptr (-24)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-28)[ebp]
+sub dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,3
+je L1219
+mov dword ptr (-8)[ebp],128
+cmp dword ptr (-4)[ebp],0
+je L1221
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1221:
+L1219:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-32)[ebp]
+sub dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,3
+je L1223
+mov dword ptr (-8)[ebp],129
+cmp dword ptr (-4)[ebp],0
+je L1225
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1225:
+L1223:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-36)[ebp]
+sub dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,3
+je L1227
+mov dword ptr (-8)[ebp],130
+cmp dword ptr (-4)[ebp],0
+je L1229
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1229:
+L1227:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+sub dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,3
+je L1231
+mov dword ptr (-8)[ebp],131
+cmp dword ptr (-4)[ebp],0
+je L1233
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1233:
+L1231:
+mov dword ptr (-24)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-24)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fsub dword ptr (-56)[ebp]
+fstp dword ptr (-160)[ebp]
+fld dword ptr (L828)
+fcomp dword ptr (-160)[ebp]
+fstsw ax
+sahf
+ja L1236
+fld dword ptr (-160)[ebp]
+fsub dword ptr (L828)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-156)[ebp],edi
+jmp L1237
+L1236:
+fld dword ptr (-160)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-156)[ebp],edi
+L1237:
+mov edi,dword ptr (-156)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,3
+je L1238
+mov dword ptr (-8)[ebp],132
+cmp dword ptr (-4)[ebp],0
+je L1240
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1240:
+L1238:
+mov dword ptr (-24)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+mov edi,dword ptr (-24)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fsub qword ptr (-64)[ebp]
+fstp qword ptr (-176)[ebp]
+fld qword ptr (L836)
+fcomp qword ptr (-176)[ebp]
+fstsw ax
+sahf
+ja L1243
+fld qword ptr (-176)[ebp]
+fsub qword ptr (L836)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-168)[ebp],edi
+jmp L1244
+L1243:
+fld qword ptr (-176)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-168)[ebp],edi
+L1244:
+mov edi,dword ptr (-168)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,3
+je L1245
+mov dword ptr (-8)[ebp],133
+cmp dword ptr (-4)[ebp],0
+je L1247
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1247:
+L1245:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov byte ptr (-25)[ebp],2
+fld dword ptr (-44)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsubp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1251)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1249
+mov dword ptr (-8)[ebp],134
+cmp dword ptr (-4)[ebp],0
+je L1252
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1252:
+L1249:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov word ptr (-28)[ebp],2
+fld dword ptr (-44)[ebp]
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsubp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1251)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1254
+mov dword ptr (-8)[ebp],135
+cmp dword ptr (-4)[ebp],0
+je L1256
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1256:
+L1254:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-32)[ebp],2
+fld dword ptr (-44)[ebp]
+mov edi,dword ptr (-32)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsubp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1251)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1258
+mov dword ptr (-8)[ebp],136
+cmp dword ptr (-4)[ebp],0
+je L1260
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1260:
+L1258:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-36)[ebp],2
+fld dword ptr (-44)[ebp]
+mov edi,dword ptr (-36)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsubp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1251)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1262
+mov dword ptr (-8)[ebp],137
+cmp dword ptr (-4)[ebp],0
+je L1264
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1264:
+L1262:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld dword ptr (-44)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fsubp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1251)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1266
+mov dword ptr (-8)[ebp],138
+cmp dword ptr (-4)[ebp],0
+je L1268
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1268:
+L1266:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-44)[ebp]
+fsub dword ptr (-56)[ebp]
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1251)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1270
+mov dword ptr (-8)[ebp],139
+cmp dword ptr (-4)[ebp],0
+je L1272
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1272:
+L1270:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld dword ptr (-44)[ebp]
+fsub qword ptr (-64)[ebp]
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1251)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1274
+mov dword ptr (-8)[ebp],140
+cmp dword ptr (-4)[ebp],0
+je L1276
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1276:
+L1274:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov byte ptr (-25)[ebp],2
+fld qword ptr (-52)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsubp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1280)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1278
+mov dword ptr (-8)[ebp],141
+cmp dword ptr (-4)[ebp],0
+je L1281
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1281:
+L1278:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov word ptr (-28)[ebp],2
+fld qword ptr (-52)[ebp]
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fsubp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1280)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1283
+mov dword ptr (-8)[ebp],142
+cmp dword ptr (-4)[ebp],0
+je L1285
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1285:
+L1283:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-32)[ebp],2
+fld qword ptr (-52)[ebp]
+fild dword ptr (-32)[ebp]
+fsubp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1280)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1287
+mov dword ptr (-8)[ebp],143
+cmp dword ptr (-4)[ebp],0
+je L1289
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1289:
+L1287:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-36)[ebp],2
+fld qword ptr (-52)[ebp]
+fild dword ptr (-36)[ebp]
+fsubp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1280)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1291
+mov dword ptr (-8)[ebp],144
+cmp dword ptr (-4)[ebp],0
+je L1293
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1293:
+L1291:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld qword ptr (-52)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fsubp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1280)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1295
+mov dword ptr (-8)[ebp],145
+cmp dword ptr (-4)[ebp],0
+je L1297
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1297:
+L1295:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld qword ptr (-52)[ebp]
+fsub dword ptr (-56)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1280)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1299
+mov dword ptr (-8)[ebp],146
+cmp dword ptr (-4)[ebp],0
+je L1301
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1301:
+L1299:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-52)[ebp]
+fsub qword ptr (-64)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1280)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1303
+mov dword ptr (-8)[ebp],147
+cmp dword ptr (-4)[ebp],0
+je L1305
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1305:
+L1303:
+mov byte ptr (-9)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+imul edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,10
+je L1307
+mov dword ptr (-8)[ebp],148
+cmp dword ptr (-4)[ebp],0
+je L1309
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1309:
+L1307:
+mov byte ptr (-9)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,word ptr (-28)[ebp]
+imul edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,10
+je L1311
+mov dword ptr (-8)[ebp],149
+cmp dword ptr (-4)[ebp],0
+je L1313
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1313:
+L1311:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-32)[ebp]
+imul edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,10
+je L1315
+mov dword ptr (-8)[ebp],150
+cmp dword ptr (-4)[ebp],0
+je L1317
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1317:
+L1315:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-36)[ebp]
+imul edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,10
+je L1319
+mov dword ptr (-8)[ebp],151
+cmp dword ptr (-4)[ebp],0
+je L1321
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1321:
+L1319:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov eax,edi
+mul dword ptr (-40)[ebp]
+mov edi,eax
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,10
+je L1323
+mov dword ptr (-8)[ebp],152
+cmp dword ptr (-4)[ebp],0
+je L1325
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1325:
+L1323:
+mov byte ptr (-9)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+movsx edi,byte ptr (-9)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmul dword ptr (-56)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,10
+je L1327
+mov dword ptr (-8)[ebp],153
+cmp dword ptr (-4)[ebp],0
+je L1329
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1329:
+L1327:
+mov byte ptr (-9)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+movsx edi,byte ptr (-9)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmul qword ptr (-64)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,10
+je L1331
+mov dword ptr (-8)[ebp],154
+cmp dword ptr (-4)[ebp],0
+je L1333
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1333:
+L1331:
+mov word ptr (-12)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+imul edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,10
+je L1335
+mov dword ptr (-8)[ebp],155
+cmp dword ptr (-4)[ebp],0
+je L1337
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1337:
+L1335:
+mov word ptr (-12)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,word ptr (-28)[ebp]
+imul edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,10
+je L1339
+mov dword ptr (-8)[ebp],156
+cmp dword ptr (-4)[ebp],0
+je L1341
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1341:
+L1339:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-32)[ebp]
+imul edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,10
+je L1343
+mov dword ptr (-8)[ebp],157
+cmp dword ptr (-4)[ebp],0
+je L1345
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1345:
+L1343:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-36)[ebp]
+imul edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,10
+je L1347
+mov dword ptr (-8)[ebp],158
+cmp dword ptr (-4)[ebp],0
+je L1349
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1349:
+L1347:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov eax,edi
+mul dword ptr (-40)[ebp]
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,10
+je L1351
+mov dword ptr (-8)[ebp],159
+cmp dword ptr (-4)[ebp],0
+je L1353
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1353:
+L1351:
+mov word ptr (-12)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+movsx edi,word ptr (-12)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmul dword ptr (-56)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,10
+je L1355
+mov dword ptr (-8)[ebp],160
+cmp dword ptr (-4)[ebp],0
+je L1357
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1357:
+L1355:
+mov word ptr (-12)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+movsx edi,word ptr (-12)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmul qword ptr (-64)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,10
+je L1359
+mov dword ptr (-8)[ebp],161
+cmp dword ptr (-4)[ebp],0
+je L1361
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1361:
+L1359:
+mov dword ptr (-16)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+imul edi,esi
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],10
+je L1363
+mov dword ptr (-8)[ebp],162
+cmp dword ptr (-4)[ebp],0
+je L1365
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1365:
+L1363:
+mov dword ptr (-16)[ebp],5
+mov word ptr (-28)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+movsx esi,word ptr (-28)[ebp]
+imul edi,esi
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],10
+je L1367
+mov dword ptr (-8)[ebp],163
+cmp dword ptr (-4)[ebp],0
+je L1369
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1369:
+L1367:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-32)[ebp]
+imul edi,esi
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],10
+je L1371
+mov dword ptr (-8)[ebp],164
+cmp dword ptr (-4)[ebp],0
+je L1373
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1373:
+L1371:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-36)[ebp]
+imul edi,esi
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],10
+je L1375
+mov dword ptr (-8)[ebp],165
+cmp dword ptr (-4)[ebp],0
+je L1377
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1377:
+L1375:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov eax,edi
+mul dword ptr (-40)[ebp]
+mov edi,eax
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],10
+je L1379
+mov dword ptr (-8)[ebp],166
+cmp dword ptr (-4)[ebp],0
+je L1381
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1381:
+L1379:
+mov dword ptr (-16)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-16)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmul dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],10
+je L1383
+mov dword ptr (-8)[ebp],167
+cmp dword ptr (-4)[ebp],0
+je L1385
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1385:
+L1383:
+mov dword ptr (-16)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fild dword ptr (-16)[ebp]
+fmul qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],10
+je L1387
+mov dword ptr (-8)[ebp],168
+cmp dword ptr (-4)[ebp],0
+je L1389
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1389:
+L1387:
+mov dword ptr (-20)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+imul edi,esi
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],10
+je L1391
+mov dword ptr (-8)[ebp],169
+cmp dword ptr (-4)[ebp],0
+je L1393
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1393:
+L1391:
+mov dword ptr (-20)[ebp],5
+mov word ptr (-28)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+movsx esi,word ptr (-28)[ebp]
+imul edi,esi
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],10
+je L1395
+mov dword ptr (-8)[ebp],170
+cmp dword ptr (-4)[ebp],0
+je L1397
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1397:
+L1395:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-32)[ebp]
+imul edi,esi
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],10
+je L1399
+mov dword ptr (-8)[ebp],171
+cmp dword ptr (-4)[ebp],0
+je L1401
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1401:
+L1399:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-36)[ebp]
+imul edi,esi
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],10
+je L1403
+mov dword ptr (-8)[ebp],172
+cmp dword ptr (-4)[ebp],0
+je L1405
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1405:
+L1403:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov eax,edi
+mul dword ptr (-40)[ebp]
+mov edi,eax
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],10
+je L1407
+mov dword ptr (-8)[ebp],173
+cmp dword ptr (-4)[ebp],0
+je L1409
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1409:
+L1407:
+mov dword ptr (-20)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-20)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmul dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],10
+je L1411
+mov dword ptr (-8)[ebp],174
+cmp dword ptr (-4)[ebp],0
+je L1413
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1413:
+L1411:
+mov dword ptr (-20)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fild dword ptr (-20)[ebp]
+fmul qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],10
+je L1415
+mov dword ptr (-8)[ebp],175
+cmp dword ptr (-4)[ebp],0
+je L1417
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1417:
+L1415:
+mov dword ptr (-24)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+mul edi
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,10
+je L1419
+mov dword ptr (-8)[ebp],176
+cmp dword ptr (-4)[ebp],0
+je L1421
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1421:
+L1419:
+mov dword ptr (-24)[ebp],5
+mov word ptr (-28)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+movsx edi,word ptr (-28)[ebp]
+mul edi
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,10
+je L1423
+mov dword ptr (-8)[ebp],177
+cmp dword ptr (-4)[ebp],0
+je L1425
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1425:
+L1423:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+mov edi,dword ptr (-32)[ebp]
+mul edi
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,10
+je L1427
+mov dword ptr (-8)[ebp],178
+cmp dword ptr (-4)[ebp],0
+je L1429
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1429:
+L1427:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+mov edi,dword ptr (-36)[ebp]
+mul edi
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,10
+je L1431
+mov dword ptr (-8)[ebp],179
+cmp dword ptr (-4)[ebp],0
+je L1433
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1433:
+L1431:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+mul dword ptr (-40)[ebp]
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,10
+je L1435
+mov dword ptr (-8)[ebp],180
+cmp dword ptr (-4)[ebp],0
+je L1437
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1437:
+L1435:
+mov dword ptr (-24)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-24)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fmul dword ptr (-56)[ebp]
+fstp dword ptr (-192)[ebp]
+fld dword ptr (L828)
+fcomp dword ptr (-192)[ebp]
+fstsw ax
+sahf
+ja L1440
+fld dword ptr (-192)[ebp]
+fsub dword ptr (L828)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-188)[ebp],edi
+jmp L1441
+L1440:
+fld dword ptr (-192)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-188)[ebp],edi
+L1441:
+mov edi,dword ptr (-188)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,10
+je L1442
+mov dword ptr (-8)[ebp],181
+cmp dword ptr (-4)[ebp],0
+je L1444
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1444:
+L1442:
+mov dword ptr (-24)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+mov edi,dword ptr (-24)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fmul qword ptr (-64)[ebp]
+fstp qword ptr (-208)[ebp]
+fld qword ptr (L836)
+fcomp qword ptr (-208)[ebp]
+fstsw ax
+sahf
+ja L1447
+fld qword ptr (-208)[ebp]
+fsub qword ptr (L836)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-200)[ebp],edi
+jmp L1448
+L1447:
+fld qword ptr (-208)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-200)[ebp],edi
+L1448:
+mov edi,dword ptr (-200)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,10
+je L1449
+mov dword ptr (-8)[ebp],182
+cmp dword ptr (-4)[ebp],0
+je L1451
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1451:
+L1449:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov byte ptr (-25)[ebp],2
+fld dword ptr (-44)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1455)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1453
+mov dword ptr (-8)[ebp],183
+cmp dword ptr (-4)[ebp],0
+je L1456
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1456:
+L1453:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov word ptr (-28)[ebp],2
+fld dword ptr (-44)[ebp]
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1455)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1458
+mov dword ptr (-8)[ebp],184
+cmp dword ptr (-4)[ebp],0
+je L1460
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1460:
+L1458:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-32)[ebp],2
+fld dword ptr (-44)[ebp]
+mov edi,dword ptr (-32)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1455)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1462
+mov dword ptr (-8)[ebp],185
+cmp dword ptr (-4)[ebp],0
+je L1464
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1464:
+L1462:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-36)[ebp],2
+fld dword ptr (-44)[ebp]
+mov edi,dword ptr (-36)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1455)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1466
+mov dword ptr (-8)[ebp],186
+cmp dword ptr (-4)[ebp],0
+je L1468
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1468:
+L1466:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld dword ptr (-44)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1455)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1470
+mov dword ptr (-8)[ebp],187
+cmp dword ptr (-4)[ebp],0
+je L1472
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1472:
+L1470:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-44)[ebp]
+fmul dword ptr (-56)[ebp]
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1455)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1474
+mov dword ptr (-8)[ebp],188
+cmp dword ptr (-4)[ebp],0
+je L1476
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1476:
+L1474:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld dword ptr (-44)[ebp]
+fmul qword ptr (-64)[ebp]
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L1455)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1478
+mov dword ptr (-8)[ebp],189
+cmp dword ptr (-4)[ebp],0
+je L1480
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1480:
+L1478:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov byte ptr (-25)[ebp],2
+fld qword ptr (-52)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1484)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1482
+mov dword ptr (-8)[ebp],190
+cmp dword ptr (-4)[ebp],0
+je L1485
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1485:
+L1482:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov word ptr (-28)[ebp],2
+fld qword ptr (-52)[ebp]
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1484)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1487
+mov dword ptr (-8)[ebp],191
+cmp dword ptr (-4)[ebp],0
+je L1489
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1489:
+L1487:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-32)[ebp],2
+fld qword ptr (-52)[ebp]
+fild dword ptr (-32)[ebp]
+fmulp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1484)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1491
+mov dword ptr (-8)[ebp],192
+cmp dword ptr (-4)[ebp],0
+je L1493
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1493:
+L1491:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-36)[ebp],2
+fld qword ptr (-52)[ebp]
+fild dword ptr (-36)[ebp]
+fmulp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1484)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1495
+mov dword ptr (-8)[ebp],193
+cmp dword ptr (-4)[ebp],0
+je L1497
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1497:
+L1495:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld qword ptr (-52)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fmulp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1484)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1499
+mov dword ptr (-8)[ebp],194
+cmp dword ptr (-4)[ebp],0
+je L1501
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1501:
+L1499:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld qword ptr (-52)[ebp]
+fmul dword ptr (-56)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1484)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1503
+mov dword ptr (-8)[ebp],195
+cmp dword ptr (-4)[ebp],0
+je L1505
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1505:
+L1503:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-52)[ebp]
+fmul qword ptr (-64)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1484)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1507
+mov dword ptr (-8)[ebp],196
+cmp dword ptr (-4)[ebp],0
+je L1509
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1509:
+L1507:
+mov byte ptr (-9)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx eax,byte ptr (-9)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+cdq
+idiv edi
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L1511
+mov dword ptr (-8)[ebp],197
+cmp dword ptr (-4)[ebp],0
+je L1513
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1513:
+L1511:
+mov byte ptr (-9)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx eax,byte ptr (-9)[ebp]
+movsx edi,word ptr (-28)[ebp]
+cdq
+idiv edi
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L1515
+mov dword ptr (-8)[ebp],198
+cmp dword ptr (-4)[ebp],0
+je L1517
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1517:
+L1515:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx eax,byte ptr (-9)[ebp]
+mov edi,dword ptr (-32)[ebp]
+cdq
+idiv edi
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L1519
+mov dword ptr (-8)[ebp],199
+cmp dword ptr (-4)[ebp],0
+je L1521
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1521:
+L1519:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx eax,byte ptr (-9)[ebp]
+mov edi,dword ptr (-36)[ebp]
+cdq
+idiv edi
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L1523
+mov dword ptr (-8)[ebp],200
+cmp dword ptr (-4)[ebp],0
+je L1525
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1525:
+L1523:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov eax,edi
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov edi,eax
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L1527
+mov dword ptr (-8)[ebp],201
+cmp dword ptr (-4)[ebp],0
+je L1529
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1529:
+L1527:
+mov byte ptr (-9)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+movsx edi,byte ptr (-9)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdiv dword ptr (-56)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L1531
+mov dword ptr (-8)[ebp],202
+cmp dword ptr (-4)[ebp],0
+je L1533
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1533:
+L1531:
+mov byte ptr (-9)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+movsx edi,byte ptr (-9)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdiv qword ptr (-64)[ebp]
+call __ftol
+mov ebx,eax
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,2
+je L1535
+mov dword ptr (-8)[ebp],203
+cmp dword ptr (-4)[ebp],0
+je L1537
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1537:
+L1535:
+mov word ptr (-12)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx eax,word ptr (-12)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+cdq
+idiv edi
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L1539
+mov dword ptr (-8)[ebp],204
+cmp dword ptr (-4)[ebp],0
+je L1541
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1541:
+L1539:
+mov word ptr (-12)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx eax,word ptr (-12)[ebp]
+movsx edi,word ptr (-28)[ebp]
+cdq
+idiv edi
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L1543
+mov dword ptr (-8)[ebp],205
+cmp dword ptr (-4)[ebp],0
+je L1545
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1545:
+L1543:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx eax,word ptr (-12)[ebp]
+mov edi,dword ptr (-32)[ebp]
+cdq
+idiv edi
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L1547
+mov dword ptr (-8)[ebp],206
+cmp dword ptr (-4)[ebp],0
+je L1549
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1549:
+L1547:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx eax,word ptr (-12)[ebp]
+mov edi,dword ptr (-36)[ebp]
+cdq
+idiv edi
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L1551
+mov dword ptr (-8)[ebp],207
+cmp dword ptr (-4)[ebp],0
+je L1553
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1553:
+L1551:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov eax,edi
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L1555
+mov dword ptr (-8)[ebp],208
+cmp dword ptr (-4)[ebp],0
+je L1557
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1557:
+L1555:
+mov word ptr (-12)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+movsx edi,word ptr (-12)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdiv dword ptr (-56)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L1559
+mov dword ptr (-8)[ebp],209
+cmp dword ptr (-4)[ebp],0
+je L1561
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1561:
+L1559:
+mov word ptr (-12)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+movsx edi,word ptr (-12)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdiv qword ptr (-64)[ebp]
+call __ftol
+mov edi,eax
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,2
+je L1563
+mov dword ptr (-8)[ebp],210
+cmp dword ptr (-4)[ebp],0
+je L1565
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1565:
+L1563:
+mov dword ptr (-16)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov eax,dword ptr (-16)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+cdq
+idiv edi
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],2
+je L1567
+mov dword ptr (-8)[ebp],211
+cmp dword ptr (-4)[ebp],0
+je L1569
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1569:
+L1567:
+mov dword ptr (-16)[ebp],5
+mov word ptr (-28)[ebp],2
+mov eax,dword ptr (-16)[ebp]
+movsx edi,word ptr (-28)[ebp]
+cdq
+idiv edi
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],2
+je L1571
+mov dword ptr (-8)[ebp],212
+cmp dword ptr (-4)[ebp],0
+je L1573
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1573:
+L1571:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov eax,dword ptr (-16)[ebp]
+mov edi,dword ptr (-32)[ebp]
+cdq
+idiv edi
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],2
+je L1575
+mov dword ptr (-8)[ebp],213
+cmp dword ptr (-4)[ebp],0
+je L1577
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1577:
+L1575:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov eax,dword ptr (-16)[ebp]
+mov edi,dword ptr (-36)[ebp]
+cdq
+idiv edi
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],2
+je L1579
+mov dword ptr (-8)[ebp],214
+cmp dword ptr (-4)[ebp],0
+je L1581
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1581:
+L1579:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov eax,edi
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov edi,eax
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],2
+je L1583
+mov dword ptr (-8)[ebp],215
+cmp dword ptr (-4)[ebp],0
+je L1585
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1585:
+L1583:
+mov dword ptr (-16)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-16)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdiv dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],2
+je L1587
+mov dword ptr (-8)[ebp],216
+cmp dword ptr (-4)[ebp],0
+je L1589
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1589:
+L1587:
+mov dword ptr (-16)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fild dword ptr (-16)[ebp]
+fdiv qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-16)[ebp],eax
+cmp dword ptr (-16)[ebp],2
+je L1591
+mov dword ptr (-8)[ebp],217
+cmp dword ptr (-4)[ebp],0
+je L1593
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1593:
+L1591:
+mov dword ptr (-20)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov eax,dword ptr (-20)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+cdq
+idiv edi
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],2
+je L1595
+mov dword ptr (-8)[ebp],218
+cmp dword ptr (-4)[ebp],0
+je L1597
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1597:
+L1595:
+mov dword ptr (-20)[ebp],5
+mov word ptr (-28)[ebp],2
+mov eax,dword ptr (-20)[ebp]
+movsx edi,word ptr (-28)[ebp]
+cdq
+idiv edi
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],2
+je L1599
+mov dword ptr (-8)[ebp],219
+cmp dword ptr (-4)[ebp],0
+je L1601
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1601:
+L1599:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov eax,dword ptr (-20)[ebp]
+mov edi,dword ptr (-32)[ebp]
+cdq
+idiv edi
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],2
+je L1603
+mov dword ptr (-8)[ebp],220
+cmp dword ptr (-4)[ebp],0
+je L1605
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1605:
+L1603:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov eax,dword ptr (-20)[ebp]
+mov edi,dword ptr (-36)[ebp]
+cdq
+idiv edi
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],2
+je L1607
+mov dword ptr (-8)[ebp],221
+cmp dword ptr (-4)[ebp],0
+je L1609
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1609:
+L1607:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov eax,edi
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov edi,eax
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],2
+je L1611
+mov dword ptr (-8)[ebp],222
+cmp dword ptr (-4)[ebp],0
+je L1613
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1613:
+L1611:
+mov dword ptr (-20)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-20)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdiv dword ptr (-56)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],2
+je L1615
+mov dword ptr (-8)[ebp],223
+cmp dword ptr (-4)[ebp],0
+je L1617
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1617:
+L1615:
+mov dword ptr (-20)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fild dword ptr (-20)[ebp]
+fdiv qword ptr (-64)[ebp]
+call __ftol
+mov dword ptr (-20)[ebp],eax
+cmp dword ptr (-20)[ebp],2
+je L1619
+mov dword ptr (-8)[ebp],224
+cmp dword ptr (-4)[ebp],0
+je L1621
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1621:
+L1619:
+mov dword ptr (-24)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L1623
+mov dword ptr (-8)[ebp],225
+cmp dword ptr (-4)[ebp],0
+je L1625
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1625:
+L1623:
+mov dword ptr (-24)[ebp],5
+mov word ptr (-28)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+movsx edi,word ptr (-28)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L1627
+mov dword ptr (-8)[ebp],226
+cmp dword ptr (-4)[ebp],0
+je L1629
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1629:
+L1627:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+mov edi,dword ptr (-32)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L1631
+mov dword ptr (-8)[ebp],227
+cmp dword ptr (-4)[ebp],0
+je L1633
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1633:
+L1631:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+mov edi,dword ptr (-36)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L1635
+mov dword ptr (-8)[ebp],228
+cmp dword ptr (-4)[ebp],0
+je L1637
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1637:
+L1635:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],eax
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L1639
+mov dword ptr (-8)[ebp],229
+cmp dword ptr (-4)[ebp],0
+je L1641
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1641:
+L1639:
+mov dword ptr (-24)[ebp],5
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+mov edi,dword ptr (-24)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fdiv dword ptr (-56)[ebp]
+fstp dword ptr (-224)[ebp]
+fld dword ptr (L828)
+fcomp dword ptr (-224)[ebp]
+fstsw ax
+sahf
+ja L1644
+fld dword ptr (-224)[ebp]
+fsub dword ptr (L828)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-220)[ebp],edi
+jmp L1645
+L1644:
+fld dword ptr (-224)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-220)[ebp],edi
+L1645:
+mov edi,dword ptr (-220)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L1646
+mov dword ptr (-8)[ebp],230
+cmp dword ptr (-4)[ebp],0
+je L1648
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1648:
+L1646:
+mov dword ptr (-24)[ebp],5
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+mov edi,dword ptr (-24)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fdiv qword ptr (-64)[ebp]
+fstp qword ptr (-240)[ebp]
+fld qword ptr (L836)
+fcomp qword ptr (-240)[ebp]
+fstsw ax
+sahf
+ja L1651
+fld qword ptr (-240)[ebp]
+fsub qword ptr (L836)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-232)[ebp],edi
+jmp L1652
+L1651:
+fld qword ptr (-240)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-232)[ebp],edi
+L1652:
+mov edi,dword ptr (-232)[ebp]
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,2
+je L1653
+mov dword ptr (-8)[ebp],231
+cmp dword ptr (-4)[ebp],0
+je L1655
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1655:
+L1653:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov byte ptr (-25)[ebp],2
+fld dword ptr (-44)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L1659)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1657
+mov dword ptr (-8)[ebp],232
+cmp dword ptr (-4)[ebp],0
+je L1660
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1660:
+L1657:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov word ptr (-28)[ebp],2
+fld dword ptr (-44)[ebp]
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L1659)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1662
+mov dword ptr (-8)[ebp],233
+cmp dword ptr (-4)[ebp],0
+je L1664
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1664:
+L1662:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-32)[ebp],2
+fld dword ptr (-44)[ebp]
+mov edi,dword ptr (-32)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L1659)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1666
+mov dword ptr (-8)[ebp],234
+cmp dword ptr (-4)[ebp],0
+je L1668
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1668:
+L1666:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-36)[ebp],2
+fld dword ptr (-44)[ebp]
+mov edi,dword ptr (-36)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L1659)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1670
+mov dword ptr (-8)[ebp],235
+cmp dword ptr (-4)[ebp],0
+je L1672
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1672:
+L1670:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld dword ptr (-44)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L1659)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1674
+mov dword ptr (-8)[ebp],236
+cmp dword ptr (-4)[ebp],0
+je L1676
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1676:
+L1674:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld dword ptr (-44)[ebp]
+fdiv dword ptr (-56)[ebp]
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L1659)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1678
+mov dword ptr (-8)[ebp],237
+cmp dword ptr (-4)[ebp],0
+je L1680
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1680:
+L1678:
+fld dword ptr (L841)
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld dword ptr (-44)[ebp]
+fdiv qword ptr (-64)[ebp]
+fstp dword ptr (-44)[ebp]
+fld qword ptr (L1659)
+fcomp dword ptr (-44)[ebp]
+fstsw ax
+sahf
+je L1682
+mov dword ptr (-8)[ebp],238
+cmp dword ptr (-4)[ebp],0
+je L1684
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1684:
+L1682:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov byte ptr (-25)[ebp],2
+fld qword ptr (-52)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1659)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1686
+mov dword ptr (-8)[ebp],239
+cmp dword ptr (-4)[ebp],0
+je L1688
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1688:
+L1686:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov word ptr (-28)[ebp],2
+fld qword ptr (-52)[ebp]
+movsx edi,word ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1659)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1690
+mov dword ptr (-8)[ebp],240
+cmp dword ptr (-4)[ebp],0
+je L1692
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1692:
+L1690:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-32)[ebp],2
+fld qword ptr (-52)[ebp]
+fild dword ptr (-32)[ebp]
+fdivp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1659)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1694
+mov dword ptr (-8)[ebp],241
+cmp dword ptr (-4)[ebp],0
+je L1696
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1696:
+L1694:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-36)[ebp],2
+fld qword ptr (-52)[ebp]
+fild dword ptr (-36)[ebp]
+fdivp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1659)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1698
+mov dword ptr (-8)[ebp],242
+cmp dword ptr (-4)[ebp],0
+je L1700
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1700:
+L1698:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-40)[ebp]
+fld qword ptr (-52)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fdivp st(1),st
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1659)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1702
+mov dword ptr (-8)[ebp],243
+cmp dword ptr (-4)[ebp],0
+je L1704
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1704:
+L1702:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld dword ptr (L529)
+fstp dword ptr (-56)[ebp]
+fld qword ptr (-52)[ebp]
+fdiv dword ptr (-56)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1659)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1706
+mov dword ptr (-8)[ebp],244
+cmp dword ptr (-4)[ebp],0
+je L1708
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1708:
+L1706:
+fld qword ptr (L870)
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L416)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-52)[ebp]
+fdiv qword ptr (-64)[ebp]
+fstp qword ptr (-52)[ebp]
+fld qword ptr (L1659)
+fcomp qword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L1710
+mov dword ptr (-8)[ebp],245
+cmp dword ptr (-4)[ebp],0
+je L1712
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1712:
+L1710:
+mov byte ptr (-9)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx eax,byte ptr (-9)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+cdq
+idiv edi
+mov ebx,edx
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1714
+mov dword ptr (-8)[ebp],246
+cmp dword ptr (-4)[ebp],0
+je L1716
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1716:
+L1714:
+mov byte ptr (-9)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx eax,byte ptr (-9)[ebp]
+movsx edi,word ptr (-28)[ebp]
+cdq
+idiv edi
+mov ebx,edx
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1718
+mov dword ptr (-8)[ebp],247
+cmp dword ptr (-4)[ebp],0
+je L1720
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1720:
+L1718:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx eax,byte ptr (-9)[ebp]
+mov edi,dword ptr (-32)[ebp]
+cdq
+idiv edi
+mov ebx,edx
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1722
+mov dword ptr (-8)[ebp],248
+cmp dword ptr (-4)[ebp],0
+je L1724
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1724:
+L1722:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx eax,byte ptr (-9)[ebp]
+mov edi,dword ptr (-36)[ebp]
+cdq
+idiv edi
+mov ebx,edx
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1726
+mov dword ptr (-8)[ebp],249
+cmp dword ptr (-4)[ebp],0
+je L1728
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1728:
+L1726:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov eax,edi
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov edi,edx
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1730
+mov dword ptr (-8)[ebp],250
+cmp dword ptr (-4)[ebp],0
+je L1732
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1732:
+L1730:
+mov word ptr (-12)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx eax,word ptr (-12)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+cdq
+idiv edi
+mov edi,edx
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1734
+mov dword ptr (-8)[ebp],251
+cmp dword ptr (-4)[ebp],0
+je L1736
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1736:
+L1734:
+mov word ptr (-12)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx eax,word ptr (-12)[ebp]
+movsx edi,word ptr (-28)[ebp]
+cdq
+idiv edi
+mov edi,edx
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1738
+mov dword ptr (-8)[ebp],252
+cmp dword ptr (-4)[ebp],0
+je L1740
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1740:
+L1738:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx eax,word ptr (-12)[ebp]
+mov edi,dword ptr (-32)[ebp]
+cdq
+idiv edi
+mov edi,edx
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1742
+mov dword ptr (-8)[ebp],253
+cmp dword ptr (-4)[ebp],0
+je L1744
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1744:
+L1742:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx eax,word ptr (-12)[ebp]
+mov edi,dword ptr (-36)[ebp]
+cdq
+idiv edi
+mov edi,edx
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1746
+mov dword ptr (-8)[ebp],254
+cmp dword ptr (-4)[ebp],0
+je L1748
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1748:
+L1746:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov eax,edi
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov edi,edx
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1750
+mov dword ptr (-8)[ebp],255
+cmp dword ptr (-4)[ebp],0
+je L1752
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1752:
+L1750:
+mov dword ptr (-16)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov eax,dword ptr (-16)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+cdq
+idiv edi
+mov dword ptr (-16)[ebp],edx
+cmp dword ptr (-16)[ebp],1
+je L1754
+mov dword ptr (-8)[ebp],256
+cmp dword ptr (-4)[ebp],0
+je L1756
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1756:
+L1754:
+mov dword ptr (-16)[ebp],5
+mov word ptr (-28)[ebp],2
+mov eax,dword ptr (-16)[ebp]
+movsx edi,word ptr (-28)[ebp]
+cdq
+idiv edi
+mov dword ptr (-16)[ebp],edx
+cmp dword ptr (-16)[ebp],1
+je L1758
+mov dword ptr (-8)[ebp],257
+cmp dword ptr (-4)[ebp],0
+je L1760
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1760:
+L1758:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov eax,dword ptr (-16)[ebp]
+mov edi,dword ptr (-32)[ebp]
+cdq
+idiv edi
+mov dword ptr (-16)[ebp],edx
+cmp dword ptr (-16)[ebp],1
+je L1762
+mov dword ptr (-8)[ebp],258
+cmp dword ptr (-4)[ebp],0
+je L1764
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1764:
+L1762:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov eax,dword ptr (-16)[ebp]
+mov edi,dword ptr (-36)[ebp]
+cdq
+idiv edi
+mov dword ptr (-16)[ebp],edx
+cmp dword ptr (-16)[ebp],1
+je L1766
+mov dword ptr (-8)[ebp],259
+cmp dword ptr (-4)[ebp],0
+je L1768
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1768:
+L1766:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov eax,edi
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov edi,edx
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],1
+je L1770
+mov dword ptr (-8)[ebp],260
+cmp dword ptr (-4)[ebp],0
+je L1772
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1772:
+L1770:
+mov dword ptr (-20)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov eax,dword ptr (-20)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+cdq
+idiv edi
+mov dword ptr (-20)[ebp],edx
+cmp dword ptr (-20)[ebp],1
+je L1774
+mov dword ptr (-8)[ebp],261
+cmp dword ptr (-4)[ebp],0
+je L1776
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1776:
+L1774:
+mov dword ptr (-20)[ebp],5
+mov word ptr (-28)[ebp],2
+mov eax,dword ptr (-20)[ebp]
+movsx edi,word ptr (-28)[ebp]
+cdq
+idiv edi
+mov dword ptr (-20)[ebp],edx
+cmp dword ptr (-20)[ebp],1
+je L1778
+mov dword ptr (-8)[ebp],262
+cmp dword ptr (-4)[ebp],0
+je L1780
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1780:
+L1778:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov eax,dword ptr (-20)[ebp]
+mov edi,dword ptr (-32)[ebp]
+cdq
+idiv edi
+mov dword ptr (-20)[ebp],edx
+cmp dword ptr (-20)[ebp],1
+je L1782
+mov dword ptr (-8)[ebp],263
+cmp dword ptr (-4)[ebp],0
+je L1784
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1784:
+L1782:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov eax,dword ptr (-20)[ebp]
+mov edi,dword ptr (-36)[ebp]
+cdq
+idiv edi
+mov dword ptr (-20)[ebp],edx
+cmp dword ptr (-20)[ebp],1
+je L1786
+mov dword ptr (-8)[ebp],264
+cmp dword ptr (-4)[ebp],0
+je L1788
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1788:
+L1786:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov eax,edi
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov edi,edx
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],1
+je L1790
+mov dword ptr (-8)[ebp],265
+cmp dword ptr (-4)[ebp],0
+je L1792
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1792:
+L1790:
+mov dword ptr (-24)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+movsx edi,byte ptr (-25)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],edx
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1794
+mov dword ptr (-8)[ebp],266
+cmp dword ptr (-4)[ebp],0
+je L1796
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1796:
+L1794:
+mov dword ptr (-24)[ebp],5
+mov word ptr (-28)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+movsx edi,word ptr (-28)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],edx
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1798
+mov dword ptr (-8)[ebp],267
+cmp dword ptr (-4)[ebp],0
+je L1800
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1800:
+L1798:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+mov edi,dword ptr (-32)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],edx
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1802
+mov dword ptr (-8)[ebp],268
+cmp dword ptr (-4)[ebp],0
+je L1804
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1804:
+L1802:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+mov edi,dword ptr (-36)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],edx
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1806
+mov dword ptr (-8)[ebp],269
+cmp dword ptr (-4)[ebp],0
+je L1808
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1808:
+L1806:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov eax,dword ptr (-24)[ebp]
+mov edi,dword ptr (-40)[ebp]
+xor edx,edx
+div edi
+mov dword ptr (-24)[ebp],edx
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1810
+mov dword ptr (-8)[ebp],270
+cmp dword ptr (-4)[ebp],0
+je L1812
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1812:
+L1810:
+mov byte ptr (-9)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+sar edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1814
+mov dword ptr (-8)[ebp],271
+cmp dword ptr (-4)[ebp],0
+je L1816
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1816:
+L1814:
+mov byte ptr (-9)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+sar edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1818
+mov dword ptr (-8)[ebp],272
+cmp dword ptr (-4)[ebp],0
+je L1820
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1820:
+L1818:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+sar edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1822
+mov dword ptr (-8)[ebp],273
+cmp dword ptr (-4)[ebp],0
+je L1824
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1824:
+L1822:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+sar edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1826
+mov dword ptr (-8)[ebp],274
+cmp dword ptr (-4)[ebp],0
+je L1828
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1828:
+L1826:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+sar edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,1
+je L1830
+mov dword ptr (-8)[ebp],275
+cmp dword ptr (-4)[ebp],0
+je L1832
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1832:
+L1830:
+mov word ptr (-12)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+sar edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1834
+mov dword ptr (-8)[ebp],276
+cmp dword ptr (-4)[ebp],0
+je L1836
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1836:
+L1834:
+mov word ptr (-12)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+sar edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1838
+mov dword ptr (-8)[ebp],277
+cmp dword ptr (-4)[ebp],0
+je L1840
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1840:
+L1838:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+sar edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1842
+mov dword ptr (-8)[ebp],278
+cmp dword ptr (-4)[ebp],0
+je L1844
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1844:
+L1842:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+sar edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1846
+mov dword ptr (-8)[ebp],279
+cmp dword ptr (-4)[ebp],0
+je L1848
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1848:
+L1846:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+sar edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,1
+je L1850
+mov dword ptr (-8)[ebp],280
+cmp dword ptr (-4)[ebp],0
+je L1852
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1852:
+L1850:
+mov dword ptr (-16)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],1
+je L1854
+mov dword ptr (-8)[ebp],281
+cmp dword ptr (-4)[ebp],0
+je L1856
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1856:
+L1854:
+mov dword ptr (-16)[ebp],5
+mov word ptr (-28)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],1
+je L1858
+mov dword ptr (-8)[ebp],282
+cmp dword ptr (-4)[ebp],0
+je L1860
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1860:
+L1858:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],1
+je L1862
+mov dword ptr (-8)[ebp],283
+cmp dword ptr (-4)[ebp],0
+je L1864
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1864:
+L1862:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],1
+je L1866
+mov dword ptr (-8)[ebp],284
+cmp dword ptr (-4)[ebp],0
+je L1868
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1868:
+L1866:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],1
+je L1870
+mov dword ptr (-8)[ebp],285
+cmp dword ptr (-4)[ebp],0
+je L1872
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1872:
+L1870:
+mov dword ptr (-20)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],1
+je L1874
+mov dword ptr (-8)[ebp],286
+cmp dword ptr (-4)[ebp],0
+je L1876
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1876:
+L1874:
+mov dword ptr (-20)[ebp],5
+mov word ptr (-28)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],1
+je L1878
+mov dword ptr (-8)[ebp],287
+cmp dword ptr (-4)[ebp],0
+je L1880
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1880:
+L1878:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],1
+je L1882
+mov dword ptr (-8)[ebp],288
+cmp dword ptr (-4)[ebp],0
+je L1884
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1884:
+L1882:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],1
+je L1886
+mov dword ptr (-8)[ebp],289
+cmp dword ptr (-4)[ebp],0
+je L1888
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1888:
+L1886:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+sar edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],1
+je L1890
+mov dword ptr (-8)[ebp],290
+cmp dword ptr (-4)[ebp],0
+je L1892
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1892:
+L1890:
+mov dword ptr (-24)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+shr edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1894
+mov dword ptr (-8)[ebp],291
+cmp dword ptr (-4)[ebp],0
+je L1896
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1896:
+L1894:
+mov dword ptr (-24)[ebp],5
+mov word ptr (-28)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+shr edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1898
+mov dword ptr (-8)[ebp],292
+cmp dword ptr (-4)[ebp],0
+je L1900
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1900:
+L1898:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+shr edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1902
+mov dword ptr (-8)[ebp],293
+cmp dword ptr (-4)[ebp],0
+je L1904
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1904:
+L1902:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+shr edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1906
+mov dword ptr (-8)[ebp],294
+cmp dword ptr (-4)[ebp],0
+je L1908
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1908:
+L1906:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+shr edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,1
+je L1910
+mov dword ptr (-8)[ebp],295
+cmp dword ptr (-4)[ebp],0
+je L1912
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1912:
+L1910:
+mov byte ptr (-9)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+sal edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,20
+je L1914
+mov dword ptr (-8)[ebp],296
+cmp dword ptr (-4)[ebp],0
+je L1916
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1916:
+L1914:
+mov byte ptr (-9)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+sal edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,20
+je L1918
+mov dword ptr (-8)[ebp],297
+cmp dword ptr (-4)[ebp],0
+je L1920
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1920:
+L1918:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+sal edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,20
+je L1922
+mov dword ptr (-8)[ebp],298
+cmp dword ptr (-4)[ebp],0
+je L1924
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1924:
+L1922:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+sal edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,20
+je L1926
+mov dword ptr (-8)[ebp],299
+cmp dword ptr (-4)[ebp],0
+je L1928
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1928:
+L1926:
+mov byte ptr (-9)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,byte ptr (-9)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+sal edi,cl
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,20
+je L1930
+mov dword ptr (-8)[ebp],300
+cmp dword ptr (-4)[ebp],0
+je L1932
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1932:
+L1930:
+mov word ptr (-12)[ebp],5
+mov byte ptr (-25)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+sal edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,20
+je L1934
+mov dword ptr (-8)[ebp],301
+cmp dword ptr (-4)[ebp],0
+je L1936
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1936:
+L1934:
+mov word ptr (-12)[ebp],5
+mov word ptr (-28)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+sal edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,20
+je L1938
+mov dword ptr (-8)[ebp],302
+cmp dword ptr (-4)[ebp],0
+je L1940
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1940:
+L1938:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-32)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+sal edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,20
+je L1942
+mov dword ptr (-8)[ebp],303
+cmp dword ptr (-4)[ebp],0
+je L1944
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1944:
+L1942:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-36)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+sal edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,20
+je L1946
+mov dword ptr (-8)[ebp],304
+cmp dword ptr (-4)[ebp],0
+je L1948
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1948:
+L1946:
+mov word ptr (-12)[ebp],5
+mov dword ptr (-40)[ebp],2
+movsx edi,word ptr (-12)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+sal edi,cl
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,20
+je L1950
+mov dword ptr (-8)[ebp],305
+cmp dword ptr (-4)[ebp],0
+je L1952
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1952:
+L1950:
+mov dword ptr (-16)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],20
+je L1954
+mov dword ptr (-8)[ebp],306
+cmp dword ptr (-4)[ebp],0
+je L1956
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1956:
+L1954:
+mov dword ptr (-16)[ebp],5
+mov word ptr (-28)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],20
+je L1958
+mov dword ptr (-8)[ebp],307
+cmp dword ptr (-4)[ebp],0
+je L1960
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1960:
+L1958:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],20
+je L1962
+mov dword ptr (-8)[ebp],308
+cmp dword ptr (-4)[ebp],0
+je L1964
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1964:
+L1962:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],20
+je L1966
+mov dword ptr (-8)[ebp],309
+cmp dword ptr (-4)[ebp],0
+je L1968
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1968:
+L1966:
+mov dword ptr (-16)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],20
+je L1970
+mov dword ptr (-8)[ebp],310
+cmp dword ptr (-4)[ebp],0
+je L1972
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1972:
+L1970:
+mov dword ptr (-20)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],20
+je L1974
+mov dword ptr (-8)[ebp],311
+cmp dword ptr (-4)[ebp],0
+je L1976
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1976:
+L1974:
+mov dword ptr (-20)[ebp],5
+mov word ptr (-28)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],20
+je L1978
+mov dword ptr (-8)[ebp],312
+cmp dword ptr (-4)[ebp],0
+je L1980
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1980:
+L1978:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],20
+je L1982
+mov dword ptr (-8)[ebp],313
+cmp dword ptr (-4)[ebp],0
+je L1984
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1984:
+L1982:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],20
+je L1986
+mov dword ptr (-8)[ebp],314
+cmp dword ptr (-4)[ebp],0
+je L1988
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1988:
+L1986:
+mov dword ptr (-20)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+sal edi,cl
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],20
+je L1990
+mov dword ptr (-8)[ebp],315
+cmp dword ptr (-4)[ebp],0
+je L1992
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1992:
+L1990:
+mov dword ptr (-24)[ebp],5
+mov byte ptr (-25)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+mov ecx,esi
+shl edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,20
+je L1994
+mov dword ptr (-8)[ebp],316
+cmp dword ptr (-4)[ebp],0
+je L1996
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L1996:
+L1994:
+mov dword ptr (-24)[ebp],5
+mov word ptr (-28)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+movsx esi,word ptr (-28)[ebp]
+mov ecx,esi
+shl edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,20
+je L1998
+mov dword ptr (-8)[ebp],317
+cmp dword ptr (-4)[ebp],0
+je L2000
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2000:
+L1998:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+mov esi,dword ptr (-32)[ebp]
+mov ecx,esi
+shl edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,20
+je L2002
+mov dword ptr (-8)[ebp],318
+cmp dword ptr (-4)[ebp],0
+je L2004
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2004:
+L2002:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-36)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+mov esi,dword ptr (-36)[ebp]
+mov ecx,esi
+shl edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,20
+je L2006
+mov dword ptr (-8)[ebp],319
+cmp dword ptr (-4)[ebp],0
+je L2008
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2008:
+L2006:
+mov dword ptr (-24)[ebp],5
+mov dword ptr (-40)[ebp],2
+mov edi,dword ptr (-24)[ebp]
+mov esi,dword ptr (-40)[ebp]
+mov ecx,esi
+shl edi,cl
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,20
+je L2010
+mov dword ptr (-8)[ebp],320
+cmp dword ptr (-4)[ebp],0
+je L2012
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2012:
+L2010:
+mov byte ptr (-9)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+and edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,8
+je L2014
+mov dword ptr (-8)[ebp],321
+cmp dword ptr (-4)[ebp],0
+je L2016
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2016:
+L2014:
+mov byte ptr (-9)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,word ptr (-28)[ebp]
+and edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,8
+je L2018
+mov dword ptr (-8)[ebp],322
+cmp dword ptr (-4)[ebp],0
+je L2020
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2020:
+L2018:
+mov byte ptr (-9)[ebp],12
+mov dword ptr (-32)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+and edi,dword ptr (-32)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,8
+je L2022
+mov dword ptr (-8)[ebp],323
+cmp dword ptr (-4)[ebp],0
+je L2024
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2024:
+L2022:
+mov byte ptr (-9)[ebp],12
+mov dword ptr (-36)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+and edi,dword ptr (-36)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,8
+je L2026
+mov dword ptr (-8)[ebp],324
+cmp dword ptr (-4)[ebp],0
+je L2028
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2028:
+L2026:
+mov byte ptr (-9)[ebp],12
+mov dword ptr (-40)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+and edi,dword ptr (-40)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,8
+je L2030
+mov dword ptr (-8)[ebp],325
+cmp dword ptr (-4)[ebp],0
+je L2032
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2032:
+L2030:
+mov word ptr (-12)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+and edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,8
+je L2034
+mov dword ptr (-8)[ebp],326
+cmp dword ptr (-4)[ebp],0
+je L2036
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2036:
+L2034:
+mov word ptr (-12)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+movsx esi,word ptr (-28)[ebp]
+and edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,8
+je L2038
+mov dword ptr (-8)[ebp],327
+cmp dword ptr (-4)[ebp],0
+je L2040
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2040:
+L2038:
+mov word ptr (-12)[ebp],12
+mov dword ptr (-32)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+and edi,dword ptr (-32)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,8
+je L2042
+mov dword ptr (-8)[ebp],328
+cmp dword ptr (-4)[ebp],0
+je L2044
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2044:
+L2042:
+mov word ptr (-12)[ebp],12
+mov dword ptr (-36)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+and edi,dword ptr (-36)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,8
+je L2046
+mov dword ptr (-8)[ebp],329
+cmp dword ptr (-4)[ebp],0
+je L2048
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2048:
+L2046:
+mov word ptr (-12)[ebp],12
+mov dword ptr (-40)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+and edi,dword ptr (-40)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,8
+je L2050
+mov dword ptr (-8)[ebp],330
+cmp dword ptr (-4)[ebp],0
+je L2052
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2052:
+L2050:
+mov dword ptr (-16)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-25)[ebp]
+and dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],8
+je L2054
+mov dword ptr (-8)[ebp],331
+cmp dword ptr (-4)[ebp],0
+je L2056
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2056:
+L2054:
+mov dword ptr (-16)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-28)[ebp]
+and dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],8
+je L2058
+mov dword ptr (-8)[ebp],332
+cmp dword ptr (-4)[ebp],0
+je L2060
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2060:
+L2058:
+mov dword ptr (-16)[ebp],12
+mov dword ptr (-32)[ebp],10
+mov edi,dword ptr (-32)[ebp]
+and dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],8
+je L2062
+mov dword ptr (-8)[ebp],333
+cmp dword ptr (-4)[ebp],0
+je L2064
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2064:
+L2062:
+mov dword ptr (-16)[ebp],12
+mov dword ptr (-36)[ebp],10
+mov edi,dword ptr (-36)[ebp]
+and dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],8
+je L2066
+mov dword ptr (-8)[ebp],334
+cmp dword ptr (-4)[ebp],0
+je L2068
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2068:
+L2066:
+mov dword ptr (-16)[ebp],12
+mov dword ptr (-40)[ebp],10
+mov edi,dword ptr (-16)[ebp]
+and edi,dword ptr (-40)[ebp]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],8
+je L2070
+mov dword ptr (-8)[ebp],335
+cmp dword ptr (-4)[ebp],0
+je L2072
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2072:
+L2070:
+mov dword ptr (-20)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-25)[ebp]
+and dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],8
+je L2074
+mov dword ptr (-8)[ebp],336
+cmp dword ptr (-4)[ebp],0
+je L2076
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2076:
+L2074:
+mov dword ptr (-20)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-28)[ebp]
+and dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],8
+je L2078
+mov dword ptr (-8)[ebp],337
+cmp dword ptr (-4)[ebp],0
+je L2080
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2080:
+L2078:
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-32)[ebp],10
+mov edi,dword ptr (-32)[ebp]
+and dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],8
+je L2082
+mov dword ptr (-8)[ebp],338
+cmp dword ptr (-4)[ebp],0
+je L2084
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2084:
+L2082:
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-36)[ebp],10
+mov edi,dword ptr (-36)[ebp]
+and dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],8
+je L2086
+mov dword ptr (-8)[ebp],339
+cmp dword ptr (-4)[ebp],0
+je L2088
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2088:
+L2086:
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-40)[ebp],10
+mov edi,dword ptr (-20)[ebp]
+and edi,dword ptr (-40)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],8
+je L2090
+mov dword ptr (-8)[ebp],340
+cmp dword ptr (-4)[ebp],0
+je L2092
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2092:
+L2090:
+mov dword ptr (-24)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-25)[ebp]
+and dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,8
+je L2094
+mov dword ptr (-8)[ebp],341
+cmp dword ptr (-4)[ebp],0
+je L2096
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2096:
+L2094:
+mov dword ptr (-24)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-28)[ebp]
+and dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,8
+je L2098
+mov dword ptr (-8)[ebp],342
+cmp dword ptr (-4)[ebp],0
+je L2100
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2100:
+L2098:
+mov dword ptr (-24)[ebp],12
+mov dword ptr (-32)[ebp],10
+mov edi,dword ptr (-32)[ebp]
+and dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,8
+je L2102
+mov dword ptr (-8)[ebp],343
+cmp dword ptr (-4)[ebp],0
+je L2104
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2104:
+L2102:
+mov dword ptr (-24)[ebp],12
+mov dword ptr (-36)[ebp],10
+mov edi,dword ptr (-36)[ebp]
+and dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,8
+je L2106
+mov dword ptr (-8)[ebp],344
+cmp dword ptr (-4)[ebp],0
+je L2108
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2108:
+L2106:
+mov dword ptr (-24)[ebp],12
+mov dword ptr (-40)[ebp],10
+mov edi,dword ptr (-40)[ebp]
+and dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,8
+je L2110
+mov dword ptr (-8)[ebp],345
+cmp dword ptr (-4)[ebp],0
+je L2112
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2112:
+L2110:
+mov byte ptr (-9)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+xor edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,6
+je L2114
+mov dword ptr (-8)[ebp],346
+cmp dword ptr (-4)[ebp],0
+je L2116
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2116:
+L2114:
+mov byte ptr (-9)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,word ptr (-28)[ebp]
+xor edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,6
+je L2118
+mov dword ptr (-8)[ebp],347
+cmp dword ptr (-4)[ebp],0
+je L2120
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2120:
+L2118:
+mov byte ptr (-9)[ebp],12
+mov dword ptr (-32)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+xor edi,dword ptr (-32)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,6
+je L2122
+mov dword ptr (-8)[ebp],348
+cmp dword ptr (-4)[ebp],0
+je L2124
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2124:
+L2122:
+mov byte ptr (-9)[ebp],12
+mov dword ptr (-36)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+xor edi,dword ptr (-36)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,6
+je L2126
+mov dword ptr (-8)[ebp],349
+cmp dword ptr (-4)[ebp],0
+je L2128
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2128:
+L2126:
+mov byte ptr (-9)[ebp],12
+mov dword ptr (-40)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+xor edi,dword ptr (-40)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,6
+je L2130
+mov dword ptr (-8)[ebp],350
+cmp dword ptr (-4)[ebp],0
+je L2132
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2132:
+L2130:
+mov word ptr (-12)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+xor edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,6
+je L2134
+mov dword ptr (-8)[ebp],351
+cmp dword ptr (-4)[ebp],0
+je L2136
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2136:
+L2134:
+mov word ptr (-12)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+movsx esi,word ptr (-28)[ebp]
+xor edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,6
+je L2138
+mov dword ptr (-8)[ebp],352
+cmp dword ptr (-4)[ebp],0
+je L2140
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2140:
+L2138:
+mov word ptr (-12)[ebp],12
+mov dword ptr (-32)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+xor edi,dword ptr (-32)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,6
+je L2142
+mov dword ptr (-8)[ebp],353
+cmp dword ptr (-4)[ebp],0
+je L2144
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2144:
+L2142:
+mov word ptr (-12)[ebp],12
+mov dword ptr (-36)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+xor edi,dword ptr (-36)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,6
+je L2146
+mov dword ptr (-8)[ebp],354
+cmp dword ptr (-4)[ebp],0
+je L2148
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2148:
+L2146:
+mov word ptr (-12)[ebp],12
+mov dword ptr (-40)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+xor edi,dword ptr (-40)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,6
+je L2150
+mov dword ptr (-8)[ebp],355
+cmp dword ptr (-4)[ebp],0
+je L2152
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2152:
+L2150:
+mov dword ptr (-16)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-25)[ebp]
+xor dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],6
+je L2154
+mov dword ptr (-8)[ebp],356
+cmp dword ptr (-4)[ebp],0
+je L2156
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2156:
+L2154:
+mov dword ptr (-16)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-28)[ebp]
+xor dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],6
+je L2158
+mov dword ptr (-8)[ebp],357
+cmp dword ptr (-4)[ebp],0
+je L2160
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2160:
+L2158:
+mov dword ptr (-16)[ebp],12
+mov dword ptr (-32)[ebp],10
+mov edi,dword ptr (-32)[ebp]
+xor dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],6
+je L2162
+mov dword ptr (-8)[ebp],358
+cmp dword ptr (-4)[ebp],0
+je L2164
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2164:
+L2162:
+mov dword ptr (-16)[ebp],12
+mov dword ptr (-36)[ebp],10
+mov edi,dword ptr (-36)[ebp]
+xor dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],6
+je L2166
+mov dword ptr (-8)[ebp],359
+cmp dword ptr (-4)[ebp],0
+je L2168
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2168:
+L2166:
+mov dword ptr (-16)[ebp],12
+mov dword ptr (-40)[ebp],10
+mov edi,dword ptr (-16)[ebp]
+xor edi,dword ptr (-40)[ebp]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],6
+je L2170
+mov dword ptr (-8)[ebp],360
+cmp dword ptr (-4)[ebp],0
+je L2172
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2172:
+L2170:
+mov dword ptr (-20)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-25)[ebp]
+xor dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],6
+je L2174
+mov dword ptr (-8)[ebp],361
+cmp dword ptr (-4)[ebp],0
+je L2176
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2176:
+L2174:
+mov dword ptr (-20)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-28)[ebp]
+xor dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],6
+je L2178
+mov dword ptr (-8)[ebp],362
+cmp dword ptr (-4)[ebp],0
+je L2180
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2180:
+L2178:
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-32)[ebp],10
+mov edi,dword ptr (-32)[ebp]
+xor dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],6
+je L2182
+mov dword ptr (-8)[ebp],363
+cmp dword ptr (-4)[ebp],0
+je L2184
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2184:
+L2182:
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-36)[ebp],10
+mov edi,dword ptr (-36)[ebp]
+xor dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],6
+je L2186
+mov dword ptr (-8)[ebp],364
+cmp dword ptr (-4)[ebp],0
+je L2188
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2188:
+L2186:
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-40)[ebp],10
+mov edi,dword ptr (-20)[ebp]
+xor edi,dword ptr (-40)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],6
+je L2190
+mov dword ptr (-8)[ebp],365
+cmp dword ptr (-4)[ebp],0
+je L2192
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2192:
+L2190:
+mov dword ptr (-24)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-25)[ebp]
+xor dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,6
+je L2194
+mov dword ptr (-8)[ebp],366
+cmp dword ptr (-4)[ebp],0
+je L2196
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2196:
+L2194:
+mov dword ptr (-24)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-28)[ebp]
+xor dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,6
+je L2198
+mov dword ptr (-8)[ebp],367
+cmp dword ptr (-4)[ebp],0
+je L2200
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2200:
+L2198:
+mov dword ptr (-24)[ebp],12
+mov dword ptr (-32)[ebp],10
+mov edi,dword ptr (-32)[ebp]
+xor dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,6
+je L2202
+mov dword ptr (-8)[ebp],368
+cmp dword ptr (-4)[ebp],0
+je L2204
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2204:
+L2202:
+mov dword ptr (-24)[ebp],12
+mov dword ptr (-36)[ebp],10
+mov edi,dword ptr (-36)[ebp]
+xor dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,6
+je L2206
+mov dword ptr (-8)[ebp],369
+cmp dword ptr (-4)[ebp],0
+je L2208
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2208:
+L2206:
+mov dword ptr (-24)[ebp],12
+mov dword ptr (-40)[ebp],10
+mov edi,dword ptr (-40)[ebp]
+xor dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,6
+je L2210
+mov dword ptr (-8)[ebp],370
+cmp dword ptr (-4)[ebp],0
+je L2212
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2212:
+L2210:
+mov byte ptr (-9)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+or edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,14
+je L2214
+mov dword ptr (-8)[ebp],371
+cmp dword ptr (-4)[ebp],0
+je L2216
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2216:
+L2214:
+mov byte ptr (-9)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+movsx esi,word ptr (-28)[ebp]
+or edi,esi
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,14
+je L2218
+mov dword ptr (-8)[ebp],372
+cmp dword ptr (-4)[ebp],0
+je L2220
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2220:
+L2218:
+mov byte ptr (-9)[ebp],12
+mov dword ptr (-32)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+or edi,dword ptr (-32)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,14
+je L2222
+mov dword ptr (-8)[ebp],373
+cmp dword ptr (-4)[ebp],0
+je L2224
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2224:
+L2222:
+mov byte ptr (-9)[ebp],12
+mov dword ptr (-36)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+or edi,dword ptr (-36)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,14
+je L2226
+mov dword ptr (-8)[ebp],374
+cmp dword ptr (-4)[ebp],0
+je L2228
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2228:
+L2226:
+mov byte ptr (-9)[ebp],12
+mov dword ptr (-40)[ebp],10
+movsx edi,byte ptr (-9)[ebp]
+or edi,dword ptr (-40)[ebp]
+mov ebx,edi
+mov byte ptr (-9)[ebp],bl
+movsx edi,byte ptr (-9)[ebp]
+cmp edi,14
+je L2230
+mov dword ptr (-8)[ebp],375
+cmp dword ptr (-4)[ebp],0
+je L2232
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2232:
+L2230:
+mov word ptr (-12)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+movsx esi,byte ptr (-25)[ebp]
+or edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,14
+je L2234
+mov dword ptr (-8)[ebp],376
+cmp dword ptr (-4)[ebp],0
+je L2236
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2236:
+L2234:
+mov word ptr (-12)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+movsx esi,word ptr (-28)[ebp]
+or edi,esi
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,14
+je L2238
+mov dword ptr (-8)[ebp],377
+cmp dword ptr (-4)[ebp],0
+je L2240
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2240:
+L2238:
+mov word ptr (-12)[ebp],12
+mov dword ptr (-32)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+or edi,dword ptr (-32)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,14
+je L2242
+mov dword ptr (-8)[ebp],378
+cmp dword ptr (-4)[ebp],0
+je L2244
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2244:
+L2242:
+mov word ptr (-12)[ebp],12
+mov dword ptr (-36)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+or edi,dword ptr (-36)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,14
+je L2246
+mov dword ptr (-8)[ebp],379
+cmp dword ptr (-4)[ebp],0
+je L2248
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2248:
+L2246:
+mov word ptr (-12)[ebp],12
+mov dword ptr (-40)[ebp],10
+movsx edi,word ptr (-12)[ebp]
+or edi,dword ptr (-40)[ebp]
+mov word ptr (-12)[ebp],di
+movsx edi,word ptr (-12)[ebp]
+cmp edi,14
+je L2250
+mov dword ptr (-8)[ebp],380
+cmp dword ptr (-4)[ebp],0
+je L2252
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2252:
+L2250:
+mov dword ptr (-16)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-25)[ebp]
+or dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],14
+je L2254
+mov dword ptr (-8)[ebp],381
+cmp dword ptr (-4)[ebp],0
+je L2256
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2256:
+L2254:
+mov dword ptr (-16)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-28)[ebp]
+or dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],14
+je L2258
+mov dword ptr (-8)[ebp],382
+cmp dword ptr (-4)[ebp],0
+je L2260
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2260:
+L2258:
+mov dword ptr (-16)[ebp],12
+mov dword ptr (-32)[ebp],10
+mov edi,dword ptr (-32)[ebp]
+or dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],14
+je L2262
+mov dword ptr (-8)[ebp],383
+cmp dword ptr (-4)[ebp],0
+je L2264
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2264:
+L2262:
+mov dword ptr (-16)[ebp],12
+mov dword ptr (-36)[ebp],10
+mov edi,dword ptr (-36)[ebp]
+or dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],14
+je L2266
+mov dword ptr (-8)[ebp],384
+cmp dword ptr (-4)[ebp],0
+je L2268
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2268:
+L2266:
+mov dword ptr (-16)[ebp],12
+mov dword ptr (-40)[ebp],10
+mov edi,dword ptr (-16)[ebp]
+or edi,dword ptr (-40)[ebp]
+mov dword ptr (-16)[ebp],edi
+cmp dword ptr (-16)[ebp],14
+je L2270
+mov dword ptr (-8)[ebp],385
+cmp dword ptr (-4)[ebp],0
+je L2272
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2272:
+L2270:
+mov dword ptr (-20)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-25)[ebp]
+or dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],14
+je L2274
+mov dword ptr (-8)[ebp],386
+cmp dword ptr (-4)[ebp],0
+je L2276
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2276:
+L2274:
+mov dword ptr (-20)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-28)[ebp]
+or dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],14
+je L2278
+mov dword ptr (-8)[ebp],387
+cmp dword ptr (-4)[ebp],0
+je L2280
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2280:
+L2278:
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-32)[ebp],10
+mov edi,dword ptr (-32)[ebp]
+or dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],14
+je L2282
+mov dword ptr (-8)[ebp],388
+cmp dword ptr (-4)[ebp],0
+je L2284
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2284:
+L2282:
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-36)[ebp],10
+mov edi,dword ptr (-36)[ebp]
+or dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],14
+je L2286
+mov dword ptr (-8)[ebp],389
+cmp dword ptr (-4)[ebp],0
+je L2288
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2288:
+L2286:
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-40)[ebp],10
+mov edi,dword ptr (-20)[ebp]
+or edi,dword ptr (-40)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],14
+je L2290
+mov dword ptr (-8)[ebp],390
+cmp dword ptr (-4)[ebp],0
+je L2292
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2292:
+L2290:
+mov dword ptr (-24)[ebp],12
+mov byte ptr (-25)[ebp],10
+movsx edi,byte ptr (-25)[ebp]
+or dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,14
+je L2294
+mov dword ptr (-8)[ebp],391
+cmp dword ptr (-4)[ebp],0
+je L2296
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2296:
+L2294:
+mov dword ptr (-24)[ebp],12
+mov word ptr (-28)[ebp],10
+movsx edi,word ptr (-28)[ebp]
+or dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,14
+je L2298
+mov dword ptr (-8)[ebp],392
+cmp dword ptr (-4)[ebp],0
+je L2300
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2300:
+L2298:
+mov dword ptr (-24)[ebp],12
+mov dword ptr (-32)[ebp],10
+mov edi,dword ptr (-32)[ebp]
+or dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,14
+je L2302
+mov dword ptr (-8)[ebp],393
+cmp dword ptr (-4)[ebp],0
+je L2304
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2304:
+L2302:
+mov dword ptr (-24)[ebp],12
+mov dword ptr (-36)[ebp],10
+mov edi,dword ptr (-36)[ebp]
+or dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,14
+je L2306
+mov dword ptr (-8)[ebp],394
+cmp dword ptr (-4)[ebp],0
+je L2308
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2308:
+L2306:
+mov dword ptr (-24)[ebp],12
+mov dword ptr (-40)[ebp],10
+mov edi,dword ptr (-40)[ebp]
+or dword ptr (-24)[ebp],edi
+mov edi,dword ptr (-24)[ebp]
+cmp edi,14
+je L2310
+mov dword ptr (-8)[ebp],395
+cmp dword ptr (-4)[ebp],0
+je L2312
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L687)
+push edi
+call _printf
+add esp,8
+L2312:
+L2310:
+cmp dword ptr (-8)[ebp],0
+je L2314
+mov dword ptr (-76)[ebp],1
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2316
+push 1
+lea edi,(L688)
+push edi
+call _printf
+add esp,8
+L2316:
+L2314:
+mov eax,dword ptr (-76)[ebp]
+L686:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L2319 label byte
+db 115
+db 55
+db 49
+db 53
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L2320 label byte
+db 115
+db 55
+db 49
+db 53
+db 32
+db 32
+db 32
+db 0
+public _s715
+_DATA ends
+_TEXT segment
+_s715:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,28
+mov dword ptr (-28)[ebp],0
+mov dword ptr (-20)[ebp],0
+lea edi,(L2320)
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-8)[ebp],edi
+mov dword ptr (-16)[ebp],0
+L2321:
+L2322:
+mov edi,dword ptr (-8)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-8)[ebp],esi
+mov esi,dword ptr (-4)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-4)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L2321
+mov dword ptr (-12)[ebp],1
+inc dword ptr (-12)[ebp]
+inc dword ptr (-12)[ebp]
+inc dword ptr (-12)[ebp]
+inc dword ptr (-12)[ebp]
+mov edi,dword ptr (-12)[ebp]
+lea edi,(1)[edi]
+mov dword ptr (-12)[ebp],edi
+cmp edi,6
+je L2324
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2326
+push 1
+lea edi,(L2319)
+push edi
+call _printf
+add esp,8
+L2326:
+inc dword ptr (-16)[ebp]
+L2324:
+mov edi,dword ptr (-28)[ebp]
+push edi
+mov dword ptr (-24)[ebp],3
+mov edi,dword ptr (-24)[ebp]
+lea edi,(2)[edi]
+push edi
+mov edi,dword ptr (-20)[ebp]
+push edi
+call _s715f
+add esp,12
+cmp eax,5
+je L2328
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2330
+push 2
+lea edi,(L2319)
+push edi
+call _printf
+add esp,8
+L2330:
+add dword ptr (-16)[ebp],2
+L2328:
+mov eax,dword ptr (-16)[ebp]
+L2318:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _s715f
+_s715f:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov eax,dword ptr (24)[ebp]
+L2332:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L2334 label byte
+db 115
+db 55
+db 50
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L2335 label byte
+db 115
+db 55
+db 50
+db 32
+db 32
+db 32
+db 32
+db 0
+public _s72
+_DATA ends
+_TEXT segment
+_s72:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,100
+lea edi,(L2335)
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-16)[ebp],edi
+mov dword ptr (-24)[ebp],0
+L2336:
+L2337:
+mov edi,dword ptr (-16)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-16)[ebp],esi
+mov esi,dword ptr (-12)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-12)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L2336
+mov dword ptr (-4)[ebp],2
+cmp dword ptr (-4)[ebp],2
+je L2339
+inc dword ptr (-24)[ebp]
+push 1
+lea edi,(L2334)
+push edi
+call _printf
+add esp,8
+L2339:
+mov edi,dword ptr (-4)[ebp]
+mov esi,edi
+neg esi
+lea edi,[esi][edi]
+cmp edi,0
+je L2341
+add dword ptr (-24)[ebp],2
+push 2
+lea edi,(L2334)
+push edi
+call _printf
+add esp,8
+L2341:
+mov dword ptr (-4)[ebp],0
+mov dword ptr (-8)[ebp],0
+jmp L2346
+L2343:
+mov edi,dword ptr (-4)[ebp]
+lea edi,[edi*2]
+or edi,1
+mov dword ptr (-4)[ebp],edi
+L2344:
+inc dword ptr (-8)[ebp]
+L2346:
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (4)[edi]
+cmp dword ptr (-8)[ebp],edi
+jl L2343
+mov edi,dword ptr (-4)[ebp]
+not edi
+cmp edi,0
+je L2347
+add dword ptr (-24)[ebp],4
+push 4
+lea edi,(L2334)
+push edi
+call _printf
+add esp,8
+L2347:
+mov dword ptr (-4)[ebp],5
+mov edi,dword ptr (-4)[ebp]
+lea edi,(1)[edi]
+mov dword ptr (-4)[ebp],edi
+cmp edi,6
+jne L2354
+mov edi,dword ptr (-4)[ebp]
+sub edi,1
+mov dword ptr (-4)[ebp],edi
+cmp edi,5
+jne L2354
+mov edi,dword ptr (-4)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-4)[ebp],esi
+cmp edi,5
+jne L2354
+mov edi,dword ptr (-4)[ebp]
+mov esi,edi
+sub esi,1
+mov dword ptr (-4)[ebp],esi
+cmp edi,6
+jne L2354
+cmp dword ptr (-4)[ebp],5
+je L2349
+L2354:
+add dword ptr (-24)[ebp],8
+push 8
+lea edi,(L2334)
+push edi
+call _printf
+add esp,8
+L2349:
+mov byte ptr (-29)[ebp],26
+mov dword ptr (-36)[ebp],26
+fld qword ptr (L2355)
+fstp qword ptr (-48)[ebp]
+mov word ptr (-32)[ebp],26
+mov dword ptr (-40)[ebp],26
+mov dword ptr (-28)[ebp],26
+fld dword ptr (L2356)
+fstp dword ptr (-52)[ebp]
+mov dword ptr (-20)[ebp],0
+movsx edi,word ptr (-32)[ebp]
+mov ebx,edi
+movsx edi,bl
+cmp edi,26
+jne L2363
+mov edi,dword ptr (-28)[ebp]
+mov ebx,edi
+movsx edi,bl
+cmp edi,26
+jne L2363
+mov edi,dword ptr (-36)[ebp]
+mov ebx,edi
+movsx edi,bl
+cmp edi,26
+jne L2363
+mov edi,dword ptr (-40)[ebp]
+mov ebx,edi
+movsx edi,bl
+cmp edi,26
+jne L2363
+fld dword ptr (-52)[ebp]
+call __ftol
+mov ebx,eax
+movsx edi,bl
+cmp edi,26
+jne L2363
+fld qword ptr (-48)[ebp]
+call __ftol
+mov ebx,eax
+movsx edi,bl
+cmp edi,26
+je L2357
+L2363:
+inc dword ptr (-20)[ebp]
+L2357:
+movsx edi,byte ptr (-29)[ebp]
+movsx edi,di
+cmp edi,26
+jne L2370
+mov edi,dword ptr (-28)[ebp]
+movsx edi,di
+cmp edi,26
+jne L2370
+mov edi,dword ptr (-36)[ebp]
+movsx edi,di
+cmp edi,26
+jne L2370
+mov edi,dword ptr (-40)[ebp]
+movsx edi,di
+cmp edi,26
+jne L2370
+fld dword ptr (-52)[ebp]
+call __ftol
+mov edi,eax
+movsx edi,di
+cmp edi,26
+jne L2370
+fld qword ptr (-48)[ebp]
+call __ftol
+mov edi,eax
+movsx edi,di
+cmp edi,26
+je L2364
+L2370:
+add dword ptr (-20)[ebp],2
+L2364:
+movsx edi,byte ptr (-29)[ebp]
+cmp edi,26
+jne L2377
+movsx edi,word ptr (-32)[ebp]
+cmp edi,26
+jne L2377
+cmp dword ptr (-36)[ebp],26
+jne L2377
+mov edi,dword ptr (-40)[ebp]
+cmp edi,26
+jne L2377
+fld dword ptr (-52)[ebp]
+call __ftol
+cmp eax,26
+jne L2377
+fld qword ptr (-48)[ebp]
+call __ftol
+cmp eax,26
+je L2371
+L2377:
+add dword ptr (-20)[ebp],4
+L2371:
+movsx edi,byte ptr (-29)[ebp]
+cmp edi,26
+jne L2384
+movsx edi,word ptr (-32)[ebp]
+cmp edi,26
+jne L2384
+cmp dword ptr (-28)[ebp],26
+jne L2384
+mov edi,dword ptr (-40)[ebp]
+cmp edi,26
+jne L2384
+fld dword ptr (-52)[ebp]
+call __ftol
+cmp eax,26
+jne L2384
+fld qword ptr (-48)[ebp]
+call __ftol
+cmp eax,26
+je L2378
+L2384:
+add dword ptr (-20)[ebp],8
+L2378:
+movsx edi,byte ptr (-29)[ebp]
+cmp edi,26
+jne L2393
+movsx edi,word ptr (-32)[ebp]
+cmp edi,26
+jne L2393
+mov edi,dword ptr (-28)[ebp]
+cmp edi,26
+jne L2393
+mov edi,dword ptr (-36)[ebp]
+cmp edi,26
+jne L2393
+fld dword ptr (L828)
+fcomp dword ptr (-52)[ebp]
+fstsw ax
+sahf
+ja L2394
+fld dword ptr (-52)[ebp]
+fsub dword ptr (L828)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-56)[ebp],edi
+jmp L2395
+L2394:
+fld dword ptr (-52)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-56)[ebp],edi
+L2395:
+mov edi,dword ptr (-56)[ebp]
+cmp edi,26
+jne L2393
+fld qword ptr (L836)
+fcomp qword ptr (-48)[ebp]
+fstsw ax
+sahf
+ja L2396
+fld qword ptr (-48)[ebp]
+fsub qword ptr (L836)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-60)[ebp],edi
+jmp L2397
+L2396:
+fld qword ptr (-48)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-60)[ebp],edi
+L2397:
+mov edi,dword ptr (-60)[ebp]
+cmp edi,26
+je L2385
+L2393:
+add dword ptr (-20)[ebp],16
+L2385:
+movsx edi,byte ptr (-29)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2404
+movsx edi,word ptr (-32)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2404
+mov edi,dword ptr (-28)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2404
+mov edi,dword ptr (-36)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2404
+mov edi,dword ptr (-40)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2404
+fld qword ptr (-48)[ebp]
+sub esp,4
+fstp dword ptr 0[esp]
+fld dword ptr 0[esp]
+add esp,4
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+je L2398
+L2404:
+add dword ptr (-20)[ebp],32
+L2398:
+movsx edi,byte ptr (-29)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2411
+movsx edi,word ptr (-32)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2411
+fild dword ptr (-28)[ebp]
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2411
+fild dword ptr (-36)[ebp]
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2411
+mov edi,dword ptr (-40)[ebp]
+fld qword ptr (L596)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fld qword ptr (L2355)
+fcompp
+fstsw ax
+sahf
+jne L2411
+fld qword ptr (L2355)
+fcomp dword ptr (-52)[ebp]
+fstsw ax
+sahf
+je L2405
+L2411:
+add dword ptr (-20)[ebp],64
+L2405:
+cmp dword ptr (-20)[ebp],0
+je L2412
+add dword ptr (-24)[ebp],16
+push 16
+lea edi,(L2334)
+push edi
+call _printf
+add esp,8
+L2412:
+mov eax,dword ptr (-24)[ebp]
+L2333:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L2415 label byte
+db 115
+db 55
+db 53
+db 55
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L2416 label byte
+db 115
+db 55
+db 53
+db 55
+db 32
+db 32
+db 32
+db 0
+public _s757
+_DATA ends
+_TEXT segment
+_s757:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,148
+lea edi,(L2416)
+mov dword ptr (-112)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-116)[ebp],edi
+mov dword ptr (-120)[ebp],0
+L2417:
+L2418:
+mov edi,dword ptr (-116)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-116)[ebp],esi
+mov esi,dword ptr (-112)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-112)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L2417
+mov dword ptr (-124)[ebp],40
+mov edi,dword ptr (-124)[ebp]
+lea esi,[edi*8]
+lea esi,[esi*4]
+cmp esi,1280
+jne L2422
+sar edi,3
+sar edi,2
+cmp edi,1
+je L2420
+L2422:
+inc dword ptr (-120)[ebp]
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2423
+push 1
+lea edi,(L2415)
+push edi
+call _printf
+add esp,8
+L2423:
+L2420:
+mov dword ptr (-84)[ebp],0
+mov dword ptr (-100)[ebp],0
+jmp L2428
+L2425:
+mov dword ptr (-92)[ebp],1
+mov edi,dword ptr (-92)[ebp]
+mov esi,dword ptr (20)[ebp]
+mov esi,dword ptr (16)[esi]
+sub esi,1
+mov ecx,esi
+shl edi,cl
+mov dword ptr (-96)[ebp],edi
+mov dword ptr (-104)[ebp],0
+mov edi,dword ptr (-104)[ebp]
+not edi
+mov esi,dword ptr (-100)[ebp]
+mov ebx,edi
+mov ecx,esi
+shr ebx,cl
+mov dword ptr (-108)[ebp],ebx
+mov ecx,esi
+shl edi,cl
+mov dword ptr (-104)[ebp],edi
+mov dword ptr (-88)[ebp],0
+jmp L2432
+L2429:
+mov edi,dword ptr (-100)[ebp]
+cmp dword ptr (-88)[ebp],edi
+jge L2440
+mov dword ptr (-132)[ebp],1
+jmp L2441
+L2440:
+mov dword ptr (-132)[ebp],0
+L2441:
+mov edi,dword ptr (-92)[ebp]
+and edi,dword ptr (-104)[ebp]
+cmp edi,0
+jne L2442
+mov dword ptr (-136)[ebp],1
+jmp L2443
+L2442:
+mov dword ptr (-136)[ebp],0
+L2443:
+mov edi,dword ptr (-136)[ebp]
+cmp dword ptr (-132)[ebp],edi
+jne L2439
+mov edi,dword ptr (-100)[ebp]
+cmp dword ptr (-88)[ebp],edi
+jge L2444
+mov dword ptr (-140)[ebp],1
+jmp L2445
+L2444:
+mov dword ptr (-140)[ebp],0
+L2445:
+mov edi,dword ptr (-96)[ebp]
+and edi,dword ptr (-108)[ebp]
+cmp edi,0
+jne L2446
+mov dword ptr (-144)[ebp],1
+jmp L2447
+L2446:
+mov dword ptr (-144)[ebp],0
+L2447:
+mov edi,dword ptr (-144)[ebp]
+cmp dword ptr (-140)[ebp],edi
+je L2433
+L2439:
+mov dword ptr (-84)[ebp],1
+L2433:
+mov edi,dword ptr (-92)[ebp]
+lea edi,[edi*2]
+mov dword ptr (-92)[ebp],edi
+mov edi,dword ptr (-96)[ebp]
+shr edi,1
+mov dword ptr (-96)[ebp],edi
+L2430:
+inc dword ptr (-88)[ebp]
+L2432:
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (16)[edi]
+cmp dword ptr (-88)[ebp],edi
+jl L2429
+L2426:
+inc dword ptr (-100)[ebp]
+L2428:
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (16)[edi]
+cmp dword ptr (-100)[ebp],edi
+jl L2425
+cmp dword ptr (-84)[ebp],0
+je L2448
+add dword ptr (-120)[ebp],2
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2450
+push 2
+lea edi,(L2415)
+push edi
+call _printf
+add esp,8
+L2450:
+L2448:
+mov dword ptr (-16)[ebp],3
+mov dword ptr (-12)[ebp],2
+mov dword ptr (-8)[ebp],1
+mov edi,dword ptr (-12)[ebp]
+cmp dword ptr (-16)[ebp],edi
+jge L2458
+mov dword ptr (-136)[ebp],1
+jmp L2459
+L2458:
+mov dword ptr (-136)[ebp],0
+L2459:
+mov edi,dword ptr (-8)[ebp]
+cmp dword ptr (-136)[ebp],edi
+jge L2456
+mov dword ptr (-132)[ebp],1
+jmp L2457
+L2456:
+mov dword ptr (-132)[ebp],0
+L2457:
+cmp dword ptr (-132)[ebp],1
+je L2452
+add dword ptr (-120)[ebp],4
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2460
+push 4
+lea edi,(L2415)
+push edi
+call _printf
+add esp,8
+L2460:
+L2452:
+lea edi,(-76)[ebp]
+lea esi,(-80)[ebp]
+cmp edi,esi
+jne L2462
+add dword ptr (-120)[ebp],8
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2465
+push 8
+lea edi,(L2415)
+push edi
+call _printf
+add esp,8
+L2465:
+L2462:
+lea edi,(-76)[ebp]
+lea esi,(-80)[ebp]
+cmp edi,esi
+jae L2467
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (40)[edi],0
+je L2470
+lea edi,(L2472)
+push edi
+call _printf
+add esp,4
+L2470:
+L2467:
+mov dword ptr (-84)[ebp],0
+mov dword ptr (-88)[ebp],0
+L2473:
+mov edi,dword ptr (-88)[ebp]
+mov dword ptr (-80)[ebp][edi*4],1
+L2474:
+inc dword ptr (-88)[ebp]
+cmp dword ptr (-88)[ebp],16
+jl L2473
+mov dword ptr (-76)[ebp],0
+mov dword ptr (-64)[ebp],0
+mov dword ptr (-56)[ebp],0
+mov dword ptr (-52)[ebp],0
+mov dword ptr (-44)[ebp],0
+mov dword ptr (-28)[ebp],0
+mov dword ptr (-16)[ebp],0
+L2483:
+mov dword ptr (-12)[ebp],0
+L2487:
+mov dword ptr (-8)[ebp],0
+L2491:
+mov dword ptr (-4)[ebp],0
+L2495:
+mov edi,dword ptr (-12)[ebp]
+cmp dword ptr (-16)[ebp],edi
+jge L2506
+mov dword ptr (-144)[ebp],1
+jmp L2507
+L2506:
+mov dword ptr (-144)[ebp],0
+L2507:
+mov edi,dword ptr (-4)[ebp]
+cmp dword ptr (-8)[ebp],edi
+jge L2508
+mov dword ptr (-148)[ebp],1
+jmp L2509
+L2508:
+mov dword ptr (-148)[ebp],0
+L2509:
+mov edi,dword ptr (-148)[ebp]
+cmp dword ptr (-144)[ebp],edi
+jne L2504
+mov dword ptr (-140)[ebp],1
+jmp L2505
+L2504:
+mov dword ptr (-140)[ebp],0
+L2505:
+mov edi,dword ptr (-16)[ebp]
+mov esi,dword ptr (-12)[ebp]
+lea esi,[esi*4]
+lea edi,[esi][edi*8]
+mov esi,dword ptr (-8)[ebp]
+lea esi,[esi*2]
+lea edi,[esi][edi]
+mov esi,dword ptr (-4)[ebp]
+lea edi,[esi][edi]
+mov edi,dword ptr (-80)[ebp][edi*4]
+cmp dword ptr (-140)[ebp],edi
+je L2499
+mov dword ptr (-84)[ebp],1
+L2499:
+L2496:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],2
+jl L2495
+L2492:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],2
+jl L2491
+L2488:
+inc dword ptr (-12)[ebp]
+cmp dword ptr (-12)[ebp],2
+jl L2487
+L2484:
+inc dword ptr (-16)[ebp]
+cmp dword ptr (-16)[ebp],2
+jl L2483
+cmp dword ptr (-84)[ebp],0
+je L2510
+add dword ptr (-120)[ebp],16
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2512
+push 16
+lea edi,(L2415)
+push edi
+call _printf
+add esp,8
+L2512:
+L2510:
+mov dword ptr (-128)[ebp],0
+mov edi,dword ptr (-128)[ebp]
+cmp edi,0
+je L2514
+add dword ptr (-120)[ebp],32
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2516
+push 32
+lea edi,(L2415)
+push edi
+call _printf
+add esp,8
+L2516:
+L2514:
+mov eax,dword ptr (-120)[ebp]
+L2414:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L2519 label byte
+db 76
+db 111
+db 99
+db 97
+db 108
+db 32
+db 101
+db 114
+db 114
+db 111
+db 114
+db 32
+db 37
+db 100
+db 46
+db 10
+db 0
+align 1
+L2520 label byte
+db 115
+db 55
+db 56
+db 49
+db 51
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L2521 label byte
+db 115
+db 55
+db 56
+db 49
+db 51
+db 32
+db 32
+db 0
+public _s7813
+_DATA ends
+_TEXT segment
+_s7813:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,88
+lea edi,(L2521)
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea esi,(60)[edi]
+mov dword ptr (-28)[ebp],esi
+mov dword ptr (-8)[ebp],0
+mov dword ptr (-32)[ebp],0
+mov edi,dword ptr (48)[edi]
+mov dword ptr (-4)[ebp],edi
+L2522:
+L2523:
+mov edi,dword ptr (-28)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-28)[ebp],esi
+mov esi,dword ptr (-24)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-24)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L2522
+jmp L2525
+mov dword ptr (-8)[ebp],1
+cmp dword ptr (-4)[ebp],0
+je L2527
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2527:
+L2525:
+jmp L2529
+mov dword ptr (-8)[ebp],2
+cmp dword ptr (-4)[ebp],0
+je L2531
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2531:
+L2529:
+jmp L2533
+mov dword ptr (-8)[ebp],3
+cmp dword ptr (-4)[ebp],0
+je L2535
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2535:
+L2533:
+jmp L2537
+mov dword ptr (-8)[ebp],4
+cmp dword ptr (-4)[ebp],0
+je L2539
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2539:
+L2537:
+jmp L2541
+mov dword ptr (-8)[ebp],5
+cmp dword ptr (-4)[ebp],0
+je L2543
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2543:
+L2541:
+jmp L2545
+mov dword ptr (-8)[ebp],6
+cmp dword ptr (-4)[ebp],0
+je L2547
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2547:
+L2545:
+jmp L2549
+mov dword ptr (-8)[ebp],7
+cmp dword ptr (-4)[ebp],0
+je L2551
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2551:
+L2549:
+jmp L2553
+mov dword ptr (-8)[ebp],8
+cmp dword ptr (-4)[ebp],0
+je L2555
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2555:
+L2553:
+jmp L2557
+mov dword ptr (-8)[ebp],9
+cmp dword ptr (-4)[ebp],0
+je L2559
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2559:
+L2557:
+jmp L2561
+mov dword ptr (-8)[ebp],10
+cmp dword ptr (-4)[ebp],0
+je L2563
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2563:
+L2561:
+jmp L2565
+mov dword ptr (-8)[ebp],11
+cmp dword ptr (-4)[ebp],0
+je L2567
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2567:
+L2565:
+jmp L2569
+mov dword ptr (-8)[ebp],12
+cmp dword ptr (-4)[ebp],0
+je L2571
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2571:
+L2569:
+jmp L2573
+mov dword ptr (-8)[ebp],13
+cmp dword ptr (-4)[ebp],0
+je L2575
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2575:
+L2573:
+jmp L2577
+mov dword ptr (-8)[ebp],14
+cmp dword ptr (-4)[ebp],0
+je L2579
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2579:
+L2577:
+jmp L2581
+mov dword ptr (-8)[ebp],15
+cmp dword ptr (-4)[ebp],0
+je L2583
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2583:
+L2581:
+jmp L2585
+mov dword ptr (-8)[ebp],16
+cmp dword ptr (-4)[ebp],0
+je L2587
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2587:
+L2585:
+jmp L2589
+mov dword ptr (-8)[ebp],17
+cmp dword ptr (-4)[ebp],0
+je L2591
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2591:
+L2589:
+jmp L2593
+mov dword ptr (-8)[ebp],18
+cmp dword ptr (-4)[ebp],0
+je L2595
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2595:
+L2593:
+jmp L2597
+mov dword ptr (-8)[ebp],16
+cmp dword ptr (-4)[ebp],0
+je L2599
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2599:
+L2597:
+jmp L2601
+mov dword ptr (-8)[ebp],20
+cmp dword ptr (-4)[ebp],0
+je L2603
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2603:
+L2601:
+jmp L2605
+mov dword ptr (-8)[ebp],21
+cmp dword ptr (-4)[ebp],0
+je L2607
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2607:
+L2605:
+jmp L2609
+mov dword ptr (-8)[ebp],22
+cmp dword ptr (-4)[ebp],0
+je L2611
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2611:
+L2609:
+jmp L2613
+mov dword ptr (-8)[ebp],23
+cmp dword ptr (-4)[ebp],0
+je L2615
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2615:
+L2613:
+jmp L2617
+mov dword ptr (-8)[ebp],24
+cmp dword ptr (-4)[ebp],0
+je L2619
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2619:
+L2617:
+jmp L2621
+mov dword ptr (-8)[ebp],25
+cmp dword ptr (-4)[ebp],0
+je L2623
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2623:
+L2621:
+jmp L2625
+mov dword ptr (-8)[ebp],26
+cmp dword ptr (-4)[ebp],0
+je L2627
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2627:
+L2625:
+jmp L2629
+mov dword ptr (-8)[ebp],27
+cmp dword ptr (-4)[ebp],0
+je L2631
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2631:
+L2629:
+jmp L2633
+mov dword ptr (-8)[ebp],28
+cmp dword ptr (-4)[ebp],0
+je L2635
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2635:
+L2633:
+jmp L2637
+mov dword ptr (-8)[ebp],26
+cmp dword ptr (-4)[ebp],0
+je L2639
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2639:
+L2637:
+jmp L2641
+mov dword ptr (-8)[ebp],30
+cmp dword ptr (-4)[ebp],0
+je L2643
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2643:
+L2641:
+jmp L2645
+mov dword ptr (-8)[ebp],31
+cmp dword ptr (-4)[ebp],0
+je L2647
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2647:
+L2645:
+jmp L2649
+mov dword ptr (-8)[ebp],32
+cmp dword ptr (-4)[ebp],0
+je L2651
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2651:
+L2649:
+jmp L2653
+mov dword ptr (-8)[ebp],33
+cmp dword ptr (-4)[ebp],0
+je L2655
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2655:
+L2653:
+jmp L2657
+mov dword ptr (-8)[ebp],34
+cmp dword ptr (-4)[ebp],0
+je L2659
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2659:
+L2657:
+jmp L2661
+mov dword ptr (-8)[ebp],35
+cmp dword ptr (-4)[ebp],0
+je L2663
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2663:
+L2661:
+jmp L2665
+mov dword ptr (-8)[ebp],36
+cmp dword ptr (-4)[ebp],0
+je L2667
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2667:
+L2665:
+jmp L2669
+mov dword ptr (-8)[ebp],37
+cmp dword ptr (-4)[ebp],0
+je L2671
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2671:
+L2669:
+jmp L2673
+mov dword ptr (-8)[ebp],38
+cmp dword ptr (-4)[ebp],0
+je L2675
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2675:
+L2673:
+jmp L2677
+mov dword ptr (-8)[ebp],39
+cmp dword ptr (-4)[ebp],0
+je L2679
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2679:
+L2677:
+jmp L2681
+mov dword ptr (-8)[ebp],40
+cmp dword ptr (-4)[ebp],0
+je L2683
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2683:
+L2681:
+jmp L2685
+mov dword ptr (-8)[ebp],41
+cmp dword ptr (-4)[ebp],0
+je L2687
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2687:
+L2685:
+jmp L2689
+mov dword ptr (-8)[ebp],42
+cmp dword ptr (-4)[ebp],0
+je L2691
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2691:
+L2689:
+jmp L2693
+mov dword ptr (-8)[ebp],43
+cmp dword ptr (-4)[ebp],0
+je L2695
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2695:
+L2693:
+jmp L2697
+mov dword ptr (-8)[ebp],44
+cmp dword ptr (-4)[ebp],0
+je L2699
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2699:
+L2697:
+jmp L2701
+mov dword ptr (-8)[ebp],45
+cmp dword ptr (-4)[ebp],0
+je L2703
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2703:
+L2701:
+jmp L2705
+mov dword ptr (-8)[ebp],46
+cmp dword ptr (-4)[ebp],0
+je L2707
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2707:
+L2705:
+jmp L2709
+mov dword ptr (-8)[ebp],47
+cmp dword ptr (-4)[ebp],0
+je L2711
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2711:
+L2709:
+jmp L2713
+mov dword ptr (-8)[ebp],48
+cmp dword ptr (-4)[ebp],0
+je L2715
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2715:
+L2713:
+jmp L2717
+mov dword ptr (-8)[ebp],49
+cmp dword ptr (-4)[ebp],0
+je L2719
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2719:
+L2717:
+jmp L2721
+mov dword ptr (-8)[ebp],50
+cmp dword ptr (-4)[ebp],0
+je L2723
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2723:
+L2721:
+jmp L2725
+mov dword ptr (-8)[ebp],51
+cmp dword ptr (-4)[ebp],0
+je L2727
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2727:
+L2725:
+jmp L2729
+mov dword ptr (-8)[ebp],52
+cmp dword ptr (-4)[ebp],0
+je L2731
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2731:
+L2729:
+jmp L2733
+mov dword ptr (-8)[ebp],53
+cmp dword ptr (-4)[ebp],0
+je L2735
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2735:
+L2733:
+jmp L2737
+mov dword ptr (-8)[ebp],54
+cmp dword ptr (-4)[ebp],0
+je L2739
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2739:
+L2737:
+jmp L2741
+mov dword ptr (-8)[ebp],55
+cmp dword ptr (-4)[ebp],0
+je L2743
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2743:
+L2741:
+jmp L2745
+mov dword ptr (-8)[ebp],56
+cmp dword ptr (-4)[ebp],0
+je L2747
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2747:
+L2745:
+jmp L2749
+mov dword ptr (-8)[ebp],57
+cmp dword ptr (-4)[ebp],0
+je L2751
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2751:
+L2749:
+jmp L2753
+mov dword ptr (-8)[ebp],58
+cmp dword ptr (-4)[ebp],0
+je L2755
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2755:
+L2753:
+jmp L2757
+mov dword ptr (-8)[ebp],56
+cmp dword ptr (-4)[ebp],0
+je L2759
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2759:
+L2757:
+jmp L2761
+mov dword ptr (-8)[ebp],60
+cmp dword ptr (-4)[ebp],0
+je L2763
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2763:
+L2761:
+jmp L2765
+mov dword ptr (-8)[ebp],61
+cmp dword ptr (-4)[ebp],0
+je L2767
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2767:
+L2765:
+jmp L2769
+mov dword ptr (-8)[ebp],62
+cmp dword ptr (-4)[ebp],0
+je L2771
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2771:
+L2769:
+jmp L2773
+mov dword ptr (-8)[ebp],63
+cmp dword ptr (-4)[ebp],0
+je L2775
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2775:
+L2773:
+jmp L2777
+mov dword ptr (-8)[ebp],64
+cmp dword ptr (-4)[ebp],0
+je L2779
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2779:
+L2777:
+jmp L2781
+mov dword ptr (-8)[ebp],65
+cmp dword ptr (-4)[ebp],0
+je L2783
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2783:
+L2781:
+jmp L2785
+mov dword ptr (-8)[ebp],66
+cmp dword ptr (-4)[ebp],0
+je L2787
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2787:
+L2785:
+jmp L2789
+mov dword ptr (-8)[ebp],67
+cmp dword ptr (-4)[ebp],0
+je L2791
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2791:
+L2789:
+jmp L2793
+mov dword ptr (-8)[ebp],68
+cmp dword ptr (-4)[ebp],0
+je L2795
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2795:
+L2793:
+jmp L2797
+mov dword ptr (-8)[ebp],69
+cmp dword ptr (-4)[ebp],0
+je L2799
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2799:
+L2797:
+jmp L2801
+mov dword ptr (-8)[ebp],70
+cmp dword ptr (-4)[ebp],0
+je L2803
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2803:
+L2801:
+jmp L2805
+mov dword ptr (-8)[ebp],71
+cmp dword ptr (-4)[ebp],0
+je L2807
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2807:
+L2805:
+jmp L2809
+mov dword ptr (-8)[ebp],72
+cmp dword ptr (-4)[ebp],0
+je L2811
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2811:
+L2809:
+jmp L2813
+mov dword ptr (-8)[ebp],73
+cmp dword ptr (-4)[ebp],0
+je L2815
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2815:
+L2813:
+jmp L2817
+mov dword ptr (-8)[ebp],74
+cmp dword ptr (-4)[ebp],0
+je L2819
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2819:
+L2817:
+jmp L2821
+mov dword ptr (-8)[ebp],75
+cmp dword ptr (-4)[ebp],0
+je L2823
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2823:
+L2821:
+cmp dword ptr (-8)[ebp],0
+je L2825
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2827
+push 1
+lea edi,(L2520)
+push edi
+call _printf
+add esp,8
+L2827:
+inc dword ptr (-32)[ebp]
+L2825:
+mov dword ptr (-8)[ebp],0
+mov dword ptr (-16)[ebp],0
+mov dword ptr (-12)[ebp],0
+mov edi,dword ptr (-12)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-12)[ebp],esi
+cmp edi,0
+je L2830
+mov edi,dword ptr (-16)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-16)[ebp],esi
+cmp edi,0
+je L2830
+mov dword ptr (-44)[ebp],1
+jmp L2831
+L2830:
+mov dword ptr (-44)[ebp],0
+L2831:
+mov edi,dword ptr (-44)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-12)[ebp],1
+je L2832
+mov dword ptr (-8)[ebp],1
+cmp dword ptr (-4)[ebp],0
+je L2834
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2834:
+L2832:
+cmp dword ptr (-16)[ebp],0
+je L2836
+mov dword ptr (-8)[ebp],2
+cmp dword ptr (-4)[ebp],0
+je L2838
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2838:
+L2836:
+cmp dword ptr (-20)[ebp],0
+je L2840
+mov dword ptr (-8)[ebp],3
+cmp dword ptr (-4)[ebp],0
+je L2842
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2842:
+L2840:
+cmp dword ptr (-12)[ebp],0
+je L2845
+mov edi,dword ptr (-16)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-16)[ebp],esi
+cmp edi,0
+je L2845
+mov dword ptr (-48)[ebp],1
+jmp L2846
+L2845:
+mov dword ptr (-48)[ebp],0
+L2846:
+mov edi,dword ptr (-48)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-12)[ebp],1
+je L2847
+mov dword ptr (-8)[ebp],4
+cmp dword ptr (-4)[ebp],0
+je L2849
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2849:
+L2847:
+cmp dword ptr (-16)[ebp],1
+je L2851
+mov dword ptr (-8)[ebp],5
+cmp dword ptr (-4)[ebp],0
+je L2853
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2853:
+L2851:
+cmp dword ptr (-20)[ebp],0
+je L2855
+mov dword ptr (-8)[ebp],6
+cmp dword ptr (-4)[ebp],0
+je L2857
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2857:
+L2855:
+mov edi,dword ptr (-12)[ebp]
+mov esi,edi
+sub esi,1
+mov dword ptr (-12)[ebp],esi
+cmp edi,0
+je L2860
+cmp dword ptr (-16)[ebp],0
+je L2860
+mov dword ptr (-52)[ebp],1
+jmp L2861
+L2860:
+mov dword ptr (-52)[ebp],0
+L2861:
+mov edi,dword ptr (-52)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-12)[ebp],0
+je L2862
+mov dword ptr (-8)[ebp],7
+cmp dword ptr (-4)[ebp],0
+je L2864
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2864:
+L2862:
+cmp dword ptr (-16)[ebp],1
+je L2866
+mov dword ptr (-8)[ebp],8
+cmp dword ptr (-4)[ebp],0
+je L2868
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2868:
+L2866:
+cmp dword ptr (-20)[ebp],1
+je L2870
+mov dword ptr (-8)[ebp],9
+cmp dword ptr (-4)[ebp],0
+je L2872
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2872:
+L2870:
+cmp dword ptr (-12)[ebp],0
+je L2875
+mov edi,dword ptr (-16)[ebp]
+mov esi,edi
+sub esi,1
+mov dword ptr (-16)[ebp],esi
+cmp edi,0
+je L2875
+mov dword ptr (-56)[ebp],1
+jmp L2876
+L2875:
+mov dword ptr (-56)[ebp],0
+L2876:
+mov edi,dword ptr (-56)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-12)[ebp],0
+je L2877
+mov dword ptr (-8)[ebp],10
+cmp dword ptr (-4)[ebp],0
+je L2879
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2879:
+L2877:
+cmp dword ptr (-16)[ebp],1
+je L2881
+mov dword ptr (-8)[ebp],11
+cmp dword ptr (-4)[ebp],0
+je L2883
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2883:
+L2881:
+cmp dword ptr (-20)[ebp],0
+je L2885
+mov dword ptr (-8)[ebp],12
+cmp dword ptr (-4)[ebp],0
+je L2887
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2887:
+L2885:
+cmp dword ptr (-8)[ebp],0
+je L2889
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2891
+push 2
+lea edi,(L2520)
+push edi
+call _printf
+add esp,8
+L2891:
+add dword ptr (-32)[ebp],2
+L2889:
+mov dword ptr (-8)[ebp],0
+mov dword ptr (-16)[ebp],0
+mov dword ptr (-12)[ebp],0
+mov edi,dword ptr (-12)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-12)[ebp],esi
+cmp edi,0
+jne L2896
+cmp dword ptr (-16)[ebp],0
+je L2894
+L2896:
+mov dword ptr (-60)[ebp],1
+jmp L2895
+L2894:
+mov dword ptr (-60)[ebp],0
+L2895:
+mov edi,dword ptr (-60)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-12)[ebp],1
+je L2897
+mov dword ptr (-8)[ebp],1
+cmp dword ptr (-4)[ebp],0
+je L2899
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2899:
+L2897:
+cmp dword ptr (-16)[ebp],0
+je L2901
+mov dword ptr (-8)[ebp],2
+cmp dword ptr (-4)[ebp],0
+je L2903
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2903:
+L2901:
+cmp dword ptr (-20)[ebp],0
+je L2905
+mov dword ptr (-8)[ebp],3
+cmp dword ptr (-4)[ebp],0
+je L2907
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2907:
+L2905:
+mov edi,dword ptr (-16)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-16)[ebp],esi
+cmp edi,0
+jne L2912
+cmp dword ptr (-12)[ebp],0
+je L2910
+L2912:
+mov dword ptr (-64)[ebp],1
+jmp L2911
+L2910:
+mov dword ptr (-64)[ebp],0
+L2911:
+mov edi,dword ptr (-64)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-12)[ebp],1
+je L2913
+mov dword ptr (-8)[ebp],4
+cmp dword ptr (-4)[ebp],0
+je L2915
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2915:
+L2913:
+cmp dword ptr (-16)[ebp],1
+je L2917
+mov dword ptr (-8)[ebp],5
+cmp dword ptr (-4)[ebp],0
+je L2919
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2919:
+L2917:
+cmp dword ptr (-20)[ebp],1
+je L2921
+mov dword ptr (-8)[ebp],6
+cmp dword ptr (-4)[ebp],0
+je L2923
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2923:
+L2921:
+mov edi,dword ptr (-12)[ebp]
+mov esi,edi
+sub esi,1
+mov dword ptr (-12)[ebp],esi
+cmp edi,0
+jne L2928
+mov edi,dword ptr (-16)[ebp]
+mov esi,edi
+sub esi,1
+mov dword ptr (-16)[ebp],esi
+cmp edi,0
+je L2926
+L2928:
+mov dword ptr (-68)[ebp],1
+jmp L2927
+L2926:
+mov dword ptr (-68)[ebp],0
+L2927:
+mov edi,dword ptr (-68)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-12)[ebp],0
+je L2929
+mov dword ptr (-8)[ebp],7
+cmp dword ptr (-4)[ebp],0
+je L2931
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2931:
+L2929:
+cmp dword ptr (-16)[ebp],1
+je L2933
+mov dword ptr (-8)[ebp],8
+cmp dword ptr (-4)[ebp],0
+je L2935
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2935:
+L2933:
+cmp dword ptr (-20)[ebp],1
+je L2937
+mov dword ptr (-8)[ebp],9
+cmp dword ptr (-4)[ebp],0
+je L2939
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2939:
+L2937:
+cmp dword ptr (-12)[ebp],0
+jne L2944
+mov edi,dword ptr (-16)[ebp]
+mov esi,edi
+sub esi,1
+mov dword ptr (-16)[ebp],esi
+cmp edi,0
+je L2942
+L2944:
+mov dword ptr (-72)[ebp],1
+jmp L2943
+L2942:
+mov dword ptr (-72)[ebp],0
+L2943:
+mov edi,dword ptr (-72)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-12)[ebp],0
+je L2945
+mov dword ptr (-8)[ebp],10
+cmp dword ptr (-4)[ebp],0
+je L2947
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2947:
+L2945:
+cmp dword ptr (-16)[ebp],0
+je L2949
+mov dword ptr (-8)[ebp],11
+cmp dword ptr (-4)[ebp],0
+je L2951
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2951:
+L2949:
+cmp dword ptr (-20)[ebp],1
+je L2953
+mov dword ptr (-8)[ebp],12
+cmp dword ptr (-4)[ebp],0
+je L2955
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L2519)
+push edi
+call _printf
+add esp,8
+L2955:
+L2953:
+cmp dword ptr (-8)[ebp],0
+je L2957
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2959
+push 4
+lea edi,(L2520)
+push edi
+call _printf
+add esp,8
+L2959:
+add dword ptr (-32)[ebp],4
+L2957:
+mov dword ptr (-16)[ebp],0
+mov dword ptr (-12)[ebp],0
+mov dword ptr (-36)[ebp],0
+mov dword ptr (-40)[ebp],1
+cmp dword ptr (-40)[ebp],0
+je L2963
+mov edi,dword ptr (-36)[ebp]
+mov dword ptr (-76)[ebp],edi
+jmp L2964
+L2963:
+cmp dword ptr (-40)[ebp],0
+je L2965
+mov edi,dword ptr (-12)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-12)[ebp],esi
+mov dword ptr (-80)[ebp],edi
+jmp L2966
+L2965:
+mov edi,dword ptr (-16)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-16)[ebp],esi
+mov dword ptr (-80)[ebp],edi
+L2966:
+mov edi,dword ptr (-80)[ebp]
+mov dword ptr (-76)[ebp],edi
+L2964:
+mov edi,dword ptr (-76)[ebp]
+mov dword ptr (-20)[ebp],edi
+cmp dword ptr (-20)[ebp],0
+jne L2970
+cmp dword ptr (-12)[ebp],0
+jne L2970
+cmp dword ptr (-16)[ebp],0
+je L2967
+L2970:
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2971
+push 8
+lea edi,(L2520)
+push edi
+call _printf
+add esp,8
+L2971:
+add dword ptr (-32)[ebp],8
+L2967:
+cmp dword ptr (-40)[ebp],0
+je L2978
+mov edi,dword ptr (-36)[ebp]
+mov dword ptr (-84)[ebp],edi
+jmp L2979
+L2978:
+mov dword ptr (-84)[ebp],1
+L2979:
+cmp dword ptr (-84)[ebp],0
+jne L2977
+cmp dword ptr (-36)[ebp],0
+je L2980
+mov dword ptr (-88)[ebp],1
+jmp L2981
+L2980:
+mov edi,dword ptr (-36)[ebp]
+mov dword ptr (-88)[ebp],edi
+L2981:
+cmp dword ptr (-88)[ebp],0
+je L2973
+L2977:
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L2982
+push 16
+lea edi,(L2520)
+push edi
+call _printf
+add esp,8
+L2982:
+add dword ptr (-32)[ebp],16
+L2973:
+mov eax,dword ptr (-32)[ebp]
+L2518:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L2985 label byte
+db 115
+db 56
+db 49
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L2986 label byte
+db 115
+db 56
+db 49
+db 32
+db 32
+db 32
+db 32
+db 0
+align 1
+L2987 label byte
+db 82
+db 101
+db 103
+db 105
+db 115
+db 116
+db 101
+db 114
+db 32
+db 99
+db 111
+db 117
+db 110
+db 116
+db 32
+db 102
+db 111
+db 114
+db 32
+db 37
+db 115
+db 32
+db 105
+db 115
+db 32
+db 117
+db 110
+db 114
+db 101
+db 108
+db 105
+db 97
+db 98
+db 108
+db 101
+db 46
+db 10
+db 0
+align 1
+L2988 label byte
+db 37
+db 100
+db 32
+db 114
+db 101
+db 103
+db 105
+db 115
+db 116
+db 101
+db 114
+db 115
+db 32
+db 97
+db 115
+db 115
+db 105
+db 103
+db 110
+db 101
+db 100
+db 32
+db 116
+db 111
+db 32
+db 37
+db 115
+db 32
+db 118
+db 97
+db 114
+db 105
+db 97
+db 98
+db 108
+db 101
+db 115
+db 46
+db 10
+db 0
+public _s81
+_DATA ends
+_TEXT segment
+_s81:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,56
+mov dword ptr (-56)[ebp],0
+mov dword ptr (-44)[ebp],0
+mov dword ptr (-48)[ebp],0
+mov dword ptr (-52)[ebp],0
+lea edi,(L2986)
+mov dword ptr (-36)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-40)[ebp],edi
+L2989:
+L2990:
+mov edi,dword ptr (-40)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-40)[ebp],esi
+mov esi,dword ptr (-36)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-36)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L2989
+mov dword ptr (-16)[ebp],1
+mov dword ptr (-20)[ebp],0
+L2992:
+mov edi,dword ptr (-16)[ebp]
+mov ebx,edi
+mov byte ptr (-1)[ebp],bl
+mov byte ptr (-21)[ebp],bl
+lea esi,(-16)[ebp]
+mov dword ptr (-8)[ebp],esi
+lea esi,(-16)[ebp]
+mov dword ptr (-28)[ebp],esi
+mov dword ptr (-12)[ebp],edi
+mov dword ptr (-32)[ebp],edi
+movsx edi,byte ptr (-1)[ebp]
+movsx esi,byte ptr (-21)[ebp]
+cmp edi,esi
+je L2996
+mov dword ptr (-44)[ebp],1
+L2996:
+mov edi,dword ptr (-8)[ebp]
+mov esi,dword ptr (-28)[ebp]
+cmp edi,esi
+je L2998
+mov dword ptr (-48)[ebp],1
+L2998:
+mov edi,dword ptr (-32)[ebp]
+cmp dword ptr (-12)[ebp],edi
+je L3000
+mov dword ptr (-52)[ebp],1
+L3000:
+sal dword ptr (-16)[ebp],1
+L2993:
+inc dword ptr (-20)[ebp]
+cmp dword ptr (-20)[ebp],50
+jl L2992
+cmp dword ptr (-44)[ebp],0
+je L3002
+inc dword ptr (-56)[ebp]
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3004
+push 1
+lea edi,(L2985)
+push edi
+call _printf
+add esp,8
+L3004:
+L3002:
+cmp dword ptr (-48)[ebp],0
+je L3006
+add dword ptr (-56)[ebp],2
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3008
+push 2
+lea edi,(L2985)
+push edi
+call _printf
+add esp,8
+L3008:
+L3006:
+cmp dword ptr (-52)[ebp],0
+je L3010
+add dword ptr (-56)[ebp],4
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3012
+push 4
+lea edi,(L2985)
+push edi
+call _printf
+add esp,8
+L3012:
+L3010:
+call _regc
+add esp,0
+mov dword ptr (-16)[ebp],eax
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (40)[edi],0
+je L3014
+cmp dword ptr (-16)[ebp],0
+jge L3016
+lea edi,(L425)
+push edi
+lea edi,(L2987)
+push edi
+call _printf
+add esp,8
+jmp L3017
+L3016:
+lea edi,(L425)
+push edi
+mov edi,dword ptr (-16)[ebp]
+push edi
+lea edi,(L2988)
+push edi
+call _printf
+add esp,12
+L3017:
+L3014:
+call _regp
+add esp,0
+mov dword ptr (-16)[ebp],eax
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (40)[edi],0
+je L3018
+cmp dword ptr (-16)[ebp],0
+jge L3020
+lea edi,(L3022)
+push edi
+lea edi,(L2987)
+push edi
+call _printf
+add esp,8
+jmp L3021
+L3020:
+lea edi,(L3022)
+push edi
+mov edi,dword ptr (-16)[ebp]
+push edi
+lea edi,(L2988)
+push edi
+call _printf
+add esp,12
+L3021:
+L3018:
+call _regi
+add esp,0
+mov dword ptr (-16)[ebp],eax
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (40)[edi],0
+je L3023
+cmp dword ptr (-16)[ebp],0
+jge L3025
+lea edi,(L426)
+push edi
+lea edi,(L2987)
+push edi
+call _printf
+add esp,8
+jmp L3026
+L3025:
+lea edi,(L426)
+push edi
+mov edi,dword ptr (-16)[ebp]
+push edi
+lea edi,(L2988)
+push edi
+call _printf
+add esp,12
+L3026:
+L3023:
+mov eax,dword ptr (-56)[ebp]
+L2984:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _regc
+_regc:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,148
+mov byte ptr (-138)[ebp],0
+mov byte ptr (-117)[ebp],1
+mov byte ptr (-118)[ebp],2
+mov byte ptr (-119)[ebp],3
+mov byte ptr (-1)[ebp],4
+mov byte ptr (-120)[ebp],5
+mov byte ptr (-2)[ebp],6
+mov byte ptr (-121)[ebp],7
+mov byte ptr (-3)[ebp],8
+mov byte ptr (-122)[ebp],9
+mov byte ptr (-4)[ebp],10
+mov byte ptr (-123)[ebp],11
+mov byte ptr (-5)[ebp],12
+mov byte ptr (-124)[ebp],13
+mov byte ptr (-6)[ebp],14
+mov byte ptr (-125)[ebp],15
+mov byte ptr (-7)[ebp],16
+mov byte ptr (-126)[ebp],17
+mov byte ptr (-8)[ebp],18
+mov byte ptr (-127)[ebp],19
+mov byte ptr (-9)[ebp],20
+mov byte ptr (-128)[ebp],21
+mov byte ptr (-10)[ebp],22
+mov byte ptr (-129)[ebp],23
+mov byte ptr (-11)[ebp],24
+mov byte ptr (-130)[ebp],25
+mov byte ptr (-12)[ebp],26
+mov byte ptr (-131)[ebp],27
+mov byte ptr (-13)[ebp],28
+mov byte ptr (-132)[ebp],29
+mov byte ptr (-14)[ebp],30
+mov byte ptr (-133)[ebp],31
+mov byte ptr (-15)[ebp],32
+mov byte ptr (-134)[ebp],33
+mov byte ptr (-16)[ebp],34
+mov byte ptr (-135)[ebp],35
+mov byte ptr (-136)[ebp],36
+mov byte ptr (-137)[ebp],37
+mov byte ptr (-139)[ebp],38
+lea edi,(-117)[ebp]
+lea esi,(-138)[ebp]
+mov ebx,edi
+sub ebx,esi
+mov esi,ebx
+mov dword ptr (-104)[ebp],esi
+lea esi,(-118)[ebp]
+sub esi,edi
+mov edi,esi
+mov dword ptr (-100)[ebp],edi
+lea edi,(-119)[ebp]
+lea esi,(-118)[ebp]
+sub edi,esi
+mov dword ptr (-96)[ebp],edi
+lea edi,(-120)[ebp]
+lea esi,(-119)[ebp]
+sub edi,esi
+mov dword ptr (-92)[ebp],edi
+lea edi,(-121)[ebp]
+lea esi,(-120)[ebp]
+sub edi,esi
+mov dword ptr (-88)[ebp],edi
+lea edi,(-122)[ebp]
+lea esi,(-121)[ebp]
+sub edi,esi
+mov dword ptr (-84)[ebp],edi
+lea edi,(-123)[ebp]
+lea esi,(-122)[ebp]
+sub edi,esi
+mov dword ptr (-80)[ebp],edi
+lea edi,(-124)[ebp]
+lea esi,(-123)[ebp]
+sub edi,esi
+mov dword ptr (-76)[ebp],edi
+lea edi,(-125)[ebp]
+lea esi,(-124)[ebp]
+sub edi,esi
+mov dword ptr (-72)[ebp],edi
+lea edi,(-126)[ebp]
+lea esi,(-125)[ebp]
+sub edi,esi
+mov dword ptr (-68)[ebp],edi
+lea edi,(-127)[ebp]
+lea esi,(-126)[ebp]
+sub edi,esi
+mov dword ptr (-64)[ebp],edi
+lea edi,(-128)[ebp]
+lea esi,(-127)[ebp]
+sub edi,esi
+mov dword ptr (-60)[ebp],edi
+lea edi,(-129)[ebp]
+lea esi,(-128)[ebp]
+sub edi,esi
+mov dword ptr (-56)[ebp],edi
+lea edi,(-130)[ebp]
+lea esi,(-129)[ebp]
+sub edi,esi
+mov dword ptr (-52)[ebp],edi
+lea edi,(-131)[ebp]
+lea esi,(-130)[ebp]
+sub edi,esi
+mov dword ptr (-48)[ebp],edi
+lea edi,(-132)[ebp]
+lea esi,(-131)[ebp]
+sub edi,esi
+mov dword ptr (-44)[ebp],edi
+lea edi,(-133)[ebp]
+lea esi,(-132)[ebp]
+sub edi,esi
+mov dword ptr (-40)[ebp],edi
+lea edi,(-134)[ebp]
+lea esi,(-133)[ebp]
+sub edi,esi
+mov dword ptr (-36)[ebp],edi
+lea edi,(-135)[ebp]
+lea esi,(-134)[ebp]
+sub edi,esi
+mov dword ptr (-32)[ebp],edi
+lea edi,(-136)[ebp]
+lea esi,(-135)[ebp]
+sub edi,esi
+mov dword ptr (-28)[ebp],edi
+lea edi,(-137)[ebp]
+lea esi,(-136)[ebp]
+sub edi,esi
+mov dword ptr (-24)[ebp],edi
+lea edi,(-139)[ebp]
+lea esi,(-137)[ebp]
+sub edi,esi
+mov dword ptr (-20)[ebp],edi
+mov edi,dword ptr (-104)[ebp]
+mov dword ptr (-116)[ebp],edi
+mov dword ptr (-112)[ebp],1
+mov dword ptr (-108)[ebp],0
+L3049:
+mov edi,dword ptr (-112)[ebp]
+cmp edi,1
+je L3055
+cmp edi,2
+je L3058
+cmp edi,3
+je L3063
+jmp L3053
+L3055:
+mov edi,dword ptr (-108)[ebp]
+mov esi,dword ptr (-116)[ebp]
+cmp dword ptr (-104)[ebp][edi*4],esi
+je L3054
+mov edi,dword ptr (-108)[ebp]
+mov edi,dword ptr (-104)[ebp][edi*4]
+mov dword ptr (-148)[ebp],edi
+mov dword ptr (-112)[ebp],2
+mov dword ptr (-144)[ebp],1
+jmp L3054
+L3058:
+mov edi,dword ptr (-108)[ebp]
+mov esi,dword ptr (-116)[ebp]
+cmp dword ptr (-104)[ebp][edi*4],esi
+jne L3059
+mov dword ptr (-112)[ebp],3
+jmp L3054
+L3059:
+mov edi,dword ptr (-108)[ebp]
+mov esi,dword ptr (-148)[ebp]
+cmp dword ptr (-104)[ebp][edi*4],esi
+jne L3061
+inc dword ptr (-144)[ebp]
+jmp L3054
+L3061:
+mov dword ptr (-112)[ebp],4
+jmp L3054
+L3063:
+mov edi,dword ptr (-108)[ebp]
+mov esi,dword ptr (-116)[ebp]
+cmp dword ptr (-104)[ebp][edi*4],esi
+je L3054
+mov dword ptr (-112)[ebp],4
+L3053:
+L3054:
+L3050:
+inc dword ptr (-108)[ebp]
+cmp dword ptr (-108)[ebp],22
+jl L3049
+cmp dword ptr (-112)[ebp],3
+jne L3066
+mov edi,16
+mov eax,edi
+sub eax,dword ptr (-144)[ebp]
+jmp L3027
+L3066:
+mov eax,-1
+L3027:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _regi
+_regi:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,264
+mov dword ptr (-252)[ebp],0
+mov dword ptr (-168)[ebp],1
+mov dword ptr (-172)[ebp],2
+mov dword ptr (-176)[ebp],3
+mov dword ptr (-4)[ebp],4
+mov dword ptr (-180)[ebp],5
+mov dword ptr (-8)[ebp],6
+mov dword ptr (-184)[ebp],7
+mov dword ptr (-12)[ebp],8
+mov dword ptr (-188)[ebp],9
+mov dword ptr (-16)[ebp],10
+mov dword ptr (-192)[ebp],11
+mov dword ptr (-20)[ebp],12
+mov dword ptr (-196)[ebp],13
+mov dword ptr (-24)[ebp],14
+mov dword ptr (-200)[ebp],15
+mov dword ptr (-28)[ebp],16
+mov dword ptr (-204)[ebp],17
+mov dword ptr (-32)[ebp],18
+mov dword ptr (-208)[ebp],19
+mov dword ptr (-36)[ebp],20
+mov dword ptr (-212)[ebp],21
+mov dword ptr (-40)[ebp],22
+mov dword ptr (-216)[ebp],23
+mov dword ptr (-44)[ebp],24
+mov dword ptr (-220)[ebp],25
+mov dword ptr (-48)[ebp],26
+mov dword ptr (-224)[ebp],27
+mov dword ptr (-52)[ebp],28
+mov dword ptr (-228)[ebp],29
+mov dword ptr (-56)[ebp],30
+mov dword ptr (-232)[ebp],31
+mov dword ptr (-60)[ebp],32
+mov dword ptr (-236)[ebp],33
+mov dword ptr (-64)[ebp],34
+mov dword ptr (-240)[ebp],35
+mov dword ptr (-244)[ebp],36
+mov dword ptr (-248)[ebp],37
+mov dword ptr (-256)[ebp],38
+lea edi,(-168)[ebp]
+mov esi,4
+lea ebx,(-252)[ebp]
+mov edx,edi
+sub edx,ebx
+mov eax,edx
+cdq
+idiv esi
+mov dword ptr (-152)[ebp],eax
+lea ebx,(-172)[ebp]
+sub ebx,edi
+mov eax,ebx
+cdq
+idiv esi
+mov dword ptr (-148)[ebp],eax
+lea edi,(-176)[ebp]
+lea esi,(-172)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-144)[ebp],eax
+lea edi,(-180)[ebp]
+lea esi,(-176)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-140)[ebp],eax
+lea edi,(-184)[ebp]
+lea esi,(-180)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-136)[ebp],eax
+lea edi,(-188)[ebp]
+lea esi,(-184)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-132)[ebp],eax
+lea edi,(-192)[ebp]
+lea esi,(-188)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-128)[ebp],eax
+lea edi,(-196)[ebp]
+lea esi,(-192)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-124)[ebp],eax
+lea edi,(-200)[ebp]
+lea esi,(-196)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-120)[ebp],eax
+lea edi,(-204)[ebp]
+lea esi,(-200)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-116)[ebp],eax
+lea edi,(-208)[ebp]
+lea esi,(-204)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-112)[ebp],eax
+lea edi,(-212)[ebp]
+lea esi,(-208)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-108)[ebp],eax
+lea edi,(-216)[ebp]
+lea esi,(-212)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-104)[ebp],eax
+lea edi,(-220)[ebp]
+lea esi,(-216)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-100)[ebp],eax
+lea edi,(-224)[ebp]
+lea esi,(-220)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-96)[ebp],eax
+lea edi,(-228)[ebp]
+lea esi,(-224)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-92)[ebp],eax
+lea edi,(-232)[ebp]
+lea esi,(-228)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-88)[ebp],eax
+lea edi,(-236)[ebp]
+lea esi,(-232)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-84)[ebp],eax
+lea edi,(-240)[ebp]
+lea esi,(-236)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-80)[ebp],eax
+lea edi,(-244)[ebp]
+lea esi,(-240)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-76)[ebp],eax
+lea edi,(-248)[ebp]
+lea esi,(-244)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-72)[ebp],eax
+lea edi,(-256)[ebp]
+lea esi,(-248)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-68)[ebp],eax
+mov edi,dword ptr (-152)[ebp]
+mov dword ptr (-164)[ebp],edi
+mov dword ptr (-160)[ebp],1
+mov dword ptr (-156)[ebp],0
+L3090:
+mov edi,dword ptr (-160)[ebp]
+cmp edi,1
+je L3096
+cmp edi,2
+je L3099
+cmp edi,3
+je L3104
+jmp L3094
+L3096:
+mov edi,dword ptr (-156)[ebp]
+mov esi,dword ptr (-164)[ebp]
+cmp dword ptr (-152)[ebp][edi*4],esi
+je L3095
+mov edi,dword ptr (-156)[ebp]
+mov edi,dword ptr (-152)[ebp][edi*4]
+mov dword ptr (-264)[ebp],edi
+mov dword ptr (-160)[ebp],2
+mov dword ptr (-260)[ebp],1
+jmp L3095
+L3099:
+mov edi,dword ptr (-156)[ebp]
+mov esi,dword ptr (-164)[ebp]
+cmp dword ptr (-152)[ebp][edi*4],esi
+jne L3100
+mov dword ptr (-160)[ebp],3
+jmp L3095
+L3100:
+mov edi,dword ptr (-156)[ebp]
+mov esi,dword ptr (-264)[ebp]
+cmp dword ptr (-152)[ebp][edi*4],esi
+jne L3102
+inc dword ptr (-260)[ebp]
+jmp L3095
+L3102:
+mov dword ptr (-160)[ebp],4
+jmp L3095
+L3104:
+mov edi,dword ptr (-156)[ebp]
+mov esi,dword ptr (-164)[ebp]
+cmp dword ptr (-152)[ebp][edi*4],esi
+je L3095
+mov dword ptr (-160)[ebp],4
+L3094:
+L3095:
+L3091:
+inc dword ptr (-156)[ebp]
+cmp dword ptr (-156)[ebp],22
+jl L3090
+cmp dword ptr (-160)[ebp],3
+jne L3107
+mov edi,16
+mov eax,edi
+sub eax,dword ptr (-260)[ebp]
+jmp L3068
+L3107:
+mov eax,-1
+L3068:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _regp
+_regp:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,264
+lea edi,(-252)[ebp]
+mov dword ptr (-252)[ebp],edi
+lea edi,(-228)[ebp]
+mov dword ptr (-228)[ebp],edi
+lea edi,(-232)[ebp]
+mov dword ptr (-232)[ebp],edi
+lea edi,(-236)[ebp]
+mov dword ptr (-236)[ebp],edi
+lea edi,(-164)[ebp]
+mov dword ptr (-4)[ebp],edi
+lea edi,(-164)[ebp]
+mov dword ptr (-164)[ebp],edi
+lea edi,(-168)[ebp]
+mov dword ptr (-8)[ebp],edi
+lea edi,(-168)[ebp]
+mov dword ptr (-168)[ebp],edi
+lea edi,(-172)[ebp]
+mov dword ptr (-12)[ebp],edi
+lea edi,(-172)[ebp]
+mov dword ptr (-172)[ebp],edi
+lea edi,(-176)[ebp]
+mov dword ptr (-16)[ebp],edi
+lea edi,(-176)[ebp]
+mov dword ptr (-176)[ebp],edi
+lea edi,(-180)[ebp]
+mov dword ptr (-20)[ebp],edi
+lea edi,(-180)[ebp]
+mov dword ptr (-180)[ebp],edi
+lea edi,(-184)[ebp]
+mov dword ptr (-24)[ebp],edi
+lea edi,(-184)[ebp]
+mov dword ptr (-184)[ebp],edi
+lea edi,(-188)[ebp]
+mov dword ptr (-28)[ebp],edi
+lea edi,(-188)[ebp]
+mov dword ptr (-188)[ebp],edi
+lea edi,(-192)[ebp]
+mov dword ptr (-32)[ebp],edi
+lea edi,(-192)[ebp]
+mov dword ptr (-192)[ebp],edi
+lea edi,(-196)[ebp]
+mov dword ptr (-36)[ebp],edi
+lea edi,(-196)[ebp]
+mov dword ptr (-196)[ebp],edi
+lea edi,(-200)[ebp]
+mov dword ptr (-40)[ebp],edi
+lea edi,(-200)[ebp]
+mov dword ptr (-200)[ebp],edi
+lea edi,(-204)[ebp]
+mov dword ptr (-44)[ebp],edi
+lea edi,(-204)[ebp]
+mov dword ptr (-204)[ebp],edi
+lea edi,(-208)[ebp]
+mov dword ptr (-48)[ebp],edi
+lea edi,(-208)[ebp]
+mov dword ptr (-208)[ebp],edi
+lea edi,(-212)[ebp]
+mov dword ptr (-52)[ebp],edi
+lea edi,(-212)[ebp]
+mov dword ptr (-212)[ebp],edi
+lea edi,(-216)[ebp]
+mov dword ptr (-56)[ebp],edi
+lea edi,(-216)[ebp]
+mov dword ptr (-216)[ebp],edi
+lea edi,(-220)[ebp]
+mov dword ptr (-60)[ebp],edi
+lea edi,(-220)[ebp]
+mov dword ptr (-220)[ebp],edi
+lea edi,(-224)[ebp]
+mov dword ptr (-64)[ebp],edi
+lea edi,(-224)[ebp]
+mov dword ptr (-224)[ebp],edi
+lea edi,(-240)[ebp]
+mov dword ptr (-240)[ebp],edi
+lea edi,(-244)[ebp]
+mov dword ptr (-244)[ebp],edi
+lea edi,(-256)[ebp]
+mov dword ptr (-256)[ebp],edi
+lea edi,(-228)[ebp]
+mov esi,4
+lea ebx,(-252)[ebp]
+mov edx,edi
+sub edx,ebx
+mov eax,edx
+cdq
+idiv esi
+mov dword ptr (-152)[ebp],eax
+lea ebx,(-232)[ebp]
+sub ebx,edi
+mov eax,ebx
+cdq
+idiv esi
+mov dword ptr (-148)[ebp],eax
+lea edi,(-236)[ebp]
+lea esi,(-232)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-144)[ebp],eax
+lea edi,(-164)[ebp]
+lea esi,(-236)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-140)[ebp],eax
+lea edi,(-168)[ebp]
+lea esi,(-164)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-136)[ebp],eax
+lea edi,(-172)[ebp]
+lea esi,(-168)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-132)[ebp],eax
+lea edi,(-176)[ebp]
+lea esi,(-172)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-128)[ebp],eax
+lea edi,(-180)[ebp]
+lea esi,(-176)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-124)[ebp],eax
+lea edi,(-184)[ebp]
+lea esi,(-180)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-120)[ebp],eax
+lea edi,(-188)[ebp]
+lea esi,(-184)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-116)[ebp],eax
+lea edi,(-192)[ebp]
+lea esi,(-188)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-112)[ebp],eax
+lea edi,(-196)[ebp]
+lea esi,(-192)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-108)[ebp],eax
+lea edi,(-200)[ebp]
+lea esi,(-196)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-104)[ebp],eax
+lea edi,(-204)[ebp]
+lea esi,(-200)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-100)[ebp],eax
+lea edi,(-208)[ebp]
+lea esi,(-204)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-96)[ebp],eax
+lea edi,(-212)[ebp]
+lea esi,(-208)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-92)[ebp],eax
+lea edi,(-216)[ebp]
+lea esi,(-212)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-88)[ebp],eax
+lea edi,(-220)[ebp]
+lea esi,(-216)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-84)[ebp],eax
+lea edi,(-224)[ebp]
+lea esi,(-220)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-80)[ebp],eax
+lea edi,(-240)[ebp]
+lea esi,(-224)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-76)[ebp],eax
+lea edi,(-244)[ebp]
+lea esi,(-240)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-72)[ebp],eax
+lea edi,(-256)[ebp]
+lea esi,(-244)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+mov dword ptr (-68)[ebp],eax
+mov edi,dword ptr (-152)[ebp]
+mov dword ptr (-248)[ebp],edi
+mov dword ptr (-160)[ebp],1
+mov dword ptr (-156)[ebp],0
+L3131:
+mov edi,dword ptr (-160)[ebp]
+cmp edi,1
+je L3137
+cmp edi,2
+je L3140
+cmp edi,3
+je L3145
+jmp L3135
+L3137:
+mov edi,dword ptr (-156)[ebp]
+mov esi,dword ptr (-248)[ebp]
+cmp dword ptr (-152)[ebp][edi*4],esi
+je L3136
+mov edi,dword ptr (-156)[ebp]
+mov edi,dword ptr (-152)[ebp][edi*4]
+mov dword ptr (-264)[ebp],edi
+mov dword ptr (-160)[ebp],2
+mov dword ptr (-260)[ebp],1
+jmp L3136
+L3140:
+mov edi,dword ptr (-156)[ebp]
+mov esi,dword ptr (-248)[ebp]
+cmp dword ptr (-152)[ebp][edi*4],esi
+jne L3141
+mov dword ptr (-160)[ebp],3
+jmp L3136
+L3141:
+mov edi,dword ptr (-156)[ebp]
+mov esi,dword ptr (-264)[ebp]
+cmp dword ptr (-152)[ebp][edi*4],esi
+jne L3143
+inc dword ptr (-260)[ebp]
+jmp L3136
+L3143:
+mov dword ptr (-160)[ebp],4
+jmp L3136
+L3145:
+mov edi,dword ptr (-156)[ebp]
+mov esi,dword ptr (-248)[ebp]
+cmp dword ptr (-152)[ebp][edi*4],esi
+je L3136
+mov dword ptr (-160)[ebp],4
+L3135:
+L3136:
+L3132:
+inc dword ptr (-156)[ebp]
+cmp dword ptr (-156)[ebp],22
+jl L3131
+cmp dword ptr (-160)[ebp],3
+jne L3148
+mov edi,16
+mov eax,edi
+sub eax,dword ptr (-260)[ebp]
+jmp L3109
+L3148:
+mov eax,-1
+L3109:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L3151 label byte
+db 420 dup (0)
+_DATA ends
+_DATA segment
+align 1
+L3152 label byte
+db 115
+db 56
+db 52
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L3153 label byte
+db 115
+db 56
+db 52
+db 32
+db 32
+db 32
+db 32
+db 0
+public _s84
+_DATA ends
+_TEXT segment
+_s84:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,172
+lea edi,(L3153)
+mov dword ptr (-156)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-160)[ebp],edi
+mov dword ptr (-164)[ebp],0
+L3154:
+L3155:
+mov edi,dword ptr (-160)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-160)[ebp],esi
+mov esi,dword ptr (-156)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-156)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L3154
+push 3
+call _fip
+add esp,4
+mov dword ptr (-168)[ebp],eax
+mov edi,dword ptr (-168)[ebp]
+cmp dword ptr [edi],3
+je L3157
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3159
+push 1
+lea edi,(L3152)
+push edi
+call _printf
+add esp,8
+L3159:
+inc dword ptr (-164)[ebp]
+L3157:
+lea edi,(_glork)
+mov dword ptr (-172)[ebp],edi
+push 4
+call dword ptr (-172)[ebp]
+add esp,4
+cmp eax,4
+je L3161
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3163
+push 2
+lea edi,(L3152)
+push edi
+call _printf
+add esp,8
+L3163:
+add dword ptr (-164)[ebp],2
+L3161:
+mov dword ptr (-8)[ebp],0
+L3165:
+mov edi,dword ptr (-8)[ebp]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (-80)[ebp][edi*4]
+mov edi,dword ptr (-8)[ebp]
+lea edi,[edi*4]
+lea esi,(-80)[ebp][edi]
+mov dword ptr (-148)[ebp][edi],esi
+L3166:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],17
+jl L3165
+fld dword ptr (L412)
+fstp dword ptr (-152)[ebp]
+mov dword ptr (-8)[ebp],0
+L3169:
+fld dword ptr (-152)[ebp]
+mov edi,dword ptr (-8)[ebp]
+mov edi,dword ptr (-148)[ebp][edi*4]
+fadd dword ptr [edi]
+fstp dword ptr (-152)[ebp]
+L3170:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],17
+jl L3169
+fld dword ptr (L3175)
+fcomp dword ptr (-152)[ebp]
+fstsw ax
+sahf
+je L3173
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3176
+push 4
+lea edi,(L3152)
+push edi
+call _printf
+add esp,8
+L3176:
+add dword ptr (-164)[ebp],4
+L3173:
+mov dword ptr (-12)[ebp],0
+L3178:
+mov dword ptr (-8)[ebp],0
+L3182:
+mov dword ptr (-4)[ebp],0
+L3186:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (-8)[ebp]
+mov ebx,dword ptr (-12)[ebp]
+imul edx,esi,28
+imul ecx,ebx,140
+lea edx,(L3151)[ecx][edx]
+imul ebx,ebx,35
+imul esi,esi,7
+lea esi,[esi][ebx]
+lea esi,[edi][esi]
+mov dword ptr [edx][edi*4],esi
+L3187:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],7
+jl L3186
+L3183:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],5
+jl L3182
+L3179:
+inc dword ptr (-12)[ebp]
+cmp dword ptr (-12)[ebp],3
+jl L3178
+mov dword ptr (-12)[ebp],1
+mov dword ptr (-8)[ebp],2
+mov dword ptr (-4)[ebp],3
+push 0
+push 105
+lea edi,(L3151)
+push edi
+call _array
+add esp,12
+mov edi,eax
+push 35
+push 35
+imul esi,dword ptr (-12)[ebp],140
+lea esi,(L3151)[esi]
+push esi
+call _array
+add esp,12
+mov esi,eax
+push 49
+push 7
+imul ebx,dword ptr (-8)[ebp],28
+imul edx,dword ptr (-12)[ebp],140
+lea ebx,(L3151)[edx][ebx]
+push ebx
+call _array
+add esp,12
+lea edi,[esi][edi]
+lea edi,[eax][edi]
+mov esi,dword ptr (-4)[ebp]
+imul ebx,dword ptr (-8)[ebp],28
+imul edx,dword ptr (-12)[ebp],140
+lea ebx,(L3151)[edx][ebx]
+mov esi,dword ptr [ebx][esi*4]
+lea edi,[esi][edi]
+sub edi,52
+cmp edi,0
+je L3190
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3192
+push 8
+lea edi,(L3152)
+push edi
+call _printf
+add esp,8
+L3192:
+add dword ptr (-164)[ebp],8
+L3190:
+mov eax,dword ptr (-164)[ebp]
+L3150:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _array
+_array:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (-4)[ebp],0
+jmp L3198
+L3195:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (20)[ebp]
+mov ebx,dword ptr (28)[ebp]
+lea ebx,[ebx][edi]
+cmp dword ptr [esi][edi*4],ebx
+je L3199
+mov eax,1
+jmp L3194
+L3199:
+L3196:
+inc dword ptr (-4)[ebp]
+L3198:
+mov edi,dword ptr (24)[ebp]
+cmp dword ptr (-4)[ebp],edi
+jl L3195
+mov eax,0
+L3194:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L3202 label byte
+db 4 dup (0)
+public _fip
+_DATA ends
+_TEXT segment
+_fip:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+lea edi,(L3202)
+mov esi,dword ptr (20)[ebp]
+mov dword ptr (L3202),esi
+mov eax,edi
+L3201:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _glork
+_glork:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov eax,dword ptr (20)[ebp]
+L3203:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L3205 label byte
+db 115
+db 56
+db 53
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L3206 label byte
+db 115
+db 56
+db 53
+db 32
+db 32
+db 32
+db 32
+db 0
+align 4
+L3214 label byte
+dd L425
+dd L427
+dd L426
+dd L428
+dd L429
+dd L430
+dd L431
+align 1
+L3215 label byte
+db 32
+db 97
+db 108
+db 105
+db 103
+db 110
+db 109
+db 101
+db 110
+db 116
+db 58
+db 32
+db 0
+public _s85
+_DATA ends
+_TEXT segment
+_s85:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,404
+lea edi,(L3206)
+mov dword ptr (-276)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-280)[ebp],edi
+mov dword ptr (-320)[ebp],0
+L3219:
+L3220:
+mov edi,dword ptr (-280)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-280)[ebp],esi
+mov esi,dword ptr (-276)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-276)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L3219
+lea edi,(-296)[ebp]
+lea esi,(-316)[ebp]
+sub edi,esi
+cmp edi,0
+jle L3230
+lea edi,(-292)[ebp]
+lea esi,(-296)[ebp]
+sub edi,esi
+cmp edi,0
+jle L3230
+lea edi,(-288)[ebp]
+lea esi,(-292)[ebp]
+sub edi,esi
+cmp edi,0
+jg L3222
+L3230:
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3231
+push 1
+lea edi,(L3205)
+push edi
+call _printf
+add esp,8
+L3231:
+inc dword ptr (-320)[ebp]
+L3222:
+lea edi,(-355)[ebp]
+lea esi,(-356)[ebp]
+sub edi,esi
+mov dword ptr (-272)[ebp],edi
+lea edi,(-358)[ebp]
+lea esi,(-360)[ebp]
+sub edi,esi
+mov dword ptr (-268)[ebp],edi
+lea edi,(-364)[ebp]
+lea esi,(-368)[ebp]
+sub edi,esi
+mov dword ptr (-264)[ebp],edi
+lea edi,(-372)[ebp]
+lea esi,(-376)[ebp]
+sub edi,esi
+mov dword ptr (-260)[ebp],edi
+lea edi,(-380)[ebp]
+lea esi,(-384)[ebp]
+sub edi,esi
+mov dword ptr (-256)[ebp],edi
+lea edi,(-388)[ebp]
+lea esi,(-392)[ebp]
+sub edi,esi
+mov dword ptr (-252)[ebp],edi
+lea edi,(-400)[ebp]
+lea esi,(-404)[ebp]
+sub edi,esi
+mov dword ptr (-248)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (40)[edi],0
+je L3246
+mov dword ptr (-244)[ebp],0
+L3248:
+mov edi,dword ptr (-244)[ebp]
+lea edi,[edi*4]
+mov esi,dword ptr (-272)[ebp][edi]
+push esi
+lea esi,(L3215)
+push esi
+mov edi,dword ptr (L3214)[edi]
+push edi
+lea edi,(L3252)
+push edi
+call _printf
+add esp,16
+L3249:
+inc dword ptr (-244)[ebp]
+cmp dword ptr (-244)[ebp],7
+jl L3248
+L3246:
+mov edi,dword ptr (-284)[ebp]
+or edi,56
+mov dword ptr (-284)[ebp],edi
+mov edi,dword ptr (-284)[ebp]
+mov esi,edi
+and esi,0fffffffcH
+sal edi,26
+sar edi,29
+sal edi,30
+sar edi,30
+and edi,3
+or esi,edi
+mov dword ptr (-284)[ebp],esi
+mov edi,dword ptr (-284)[ebp]
+mov esi,edi
+and esi,0ffffffc7H
+sal edi,30
+sar edi,30
+sal edi,29
+sar edi,29
+lea edi,[edi*8]
+and edi,56
+or esi,edi
+mov dword ptr (-284)[ebp],esi
+mov edi,dword ptr (-284)[ebp]
+sal edi,26
+sar edi,29
+cmp edi,3
+je L3253
+mov edi,dword ptr (-284)[ebp]
+sal edi,26
+sar edi,29
+cmp edi,-1
+jne L3255
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (40)[edi],0
+je L3256
+lea edi,(L3259)
+push edi
+call _printf
+add esp,4
+jmp L3256
+L3255:
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3260
+push 2
+lea edi,(L3205)
+push edi
+call _printf
+add esp,8
+L3260:
+add dword ptr (-320)[ebp],2
+L3256:
+L3253:
+mov edi,dword ptr (-284)[ebp]
+or edi,64
+mov dword ptr (-284)[ebp],edi
+mov edi,dword ptr (-284)[ebp]
+sal edi,25
+sar edi,31
+cmp edi,1
+je L3262
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (40)[edi],0
+je L3264
+lea edi,(L3266)
+push edi
+call _printf
+add esp,4
+L3264:
+L3262:
+lea edi,(-240)[ebp]
+mov esi,edi
+sub esi,edi
+cmp esi,0
+jne L3274
+cmp esi,0
+jne L3274
+cmp esi,0
+jne L3274
+cmp esi,0
+jne L3274
+cmp esi,0
+jne L3274
+cmp esi,0
+jne L3274
+cmp esi,0
+je L3267
+L3274:
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3275
+push 4
+lea edi,(L3205)
+push edi
+call _printf
+add esp,8
+L3275:
+add dword ptr (-320)[ebp],4
+L3267:
+jmp L3277
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3279
+push 8
+lea edi,(L3205)
+push edi
+call _printf
+add esp,8
+L3279:
+add dword ptr (-320)[ebp],8
+L3277:
+lea edi,(-352)[ebp]
+mov dword ptr (-288)[ebp],edi
+mov byte ptr (-352)[ebp],2
+mov edi,dword ptr (-288)[ebp]
+movsx esi,byte ptr [edi]
+lea esi,(1)[esi]
+mov ebx,esi
+mov byte ptr [edi],bl
+movsx edi,byte ptr (-352)[ebp]
+cmp edi,3
+je L3283
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3285
+push 16
+lea edi,(L3205)
+push edi
+call _printf
+add esp,8
+L3285:
+add dword ptr (-320)[ebp],16
+L3283:
+mov eax,dword ptr (-320)[ebp]
+L3204:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L3288 label byte
+db 115
+db 56
+db 54
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L3289 label byte
+db 115
+db 56
+db 54
+db 32
+db 32
+db 32
+db 32
+db 0
+align 4
+L3290 label byte
+dd 1
+dd 3
+dd 5
+align 4
+L3291 label byte
+dd L3290+8
+_DATA ends
+_DATA segment
+align 4
+L3293 label byte
+db 40 dup (0)
+_DATA ends
+_DATA segment
+align 4
+L3294 label byte
+dd 03f800000H
+dd 040400000H
+dd 040a00000H
+dd 040000000H
+dd 040800000H
+dd 040c00000H
+dd 040400000H
+dd 040a00000H
+dd 040e00000H
+dd 00H
+dd 00H
+dd 00H
+align 4
+L3295 label byte
+dd 03f800000H
+dd 040400000H
+dd 040a00000H
+dd 040000000H
+dd 040800000H
+dd 040c00000H
+dd 040400000H
+dd 040a00000H
+dd 040e00000H
+db 12 dup (0)
+align 4
+L3296 label byte
+dd 03f800000H
+dd 040400000H
+dd 040a00000H
+dd 040000000H
+dd 040800000H
+dd 040c00000H
+dd 040400000H
+dd 040a00000H
+dd 040e00000H
+db 12 dup (0)
+align 4
+L3297 label byte
+dd 03f800000H
+db 8 dup (0)
+dd 040000000H
+db 8 dup (0)
+dd 040400000H
+db 8 dup (0)
+dd 040800000H
+db 8 dup (0)
+public _s86
+_DATA ends
+_TEXT segment
+_s86:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,40
+mov edi,dword ptr (L3291)
+lea edi,(-4)[edi]
+mov dword ptr (-36)[ebp],edi
+call _one
+add esp,0
+mov esi,dword ptr (-36)[ebp]
+lea edi,[esi][eax*4]
+mov dword ptr (-4)[ebp],edi
+lea edi,(L3289)
+mov dword ptr (-24)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-28)[ebp],edi
+mov dword ptr (-32)[ebp],0
+L3298:
+L3299:
+mov edi,dword ptr (-28)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-28)[ebp],esi
+mov esi,dword ptr (-24)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-24)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L3298
+mov edi,dword ptr (L3291)
+cmp dword ptr [edi],5
+je L3301
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3303
+push 1
+lea edi,(L3288)
+push edi
+call _printf
+add esp,8
+L3303:
+inc dword ptr (-32)[ebp]
+L3301:
+mov edi,dword ptr (-36)[ebp]
+cmp dword ptr [edi],3
+je L3305
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3307
+push 2
+lea edi,(L3288)
+push edi
+call _printf
+add esp,8
+L3307:
+add dword ptr (-32)[ebp],2
+L3305:
+mov edi,dword ptr (-4)[ebp]
+cmp dword ptr [edi],5
+je L3309
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3311
+push 4
+lea edi,(L3288)
+push edi
+call _printf
+add esp,8
+L3311:
+add dword ptr (-32)[ebp],4
+L3309:
+mov dword ptr (-20)[ebp],0
+mov dword ptr (-8)[ebp],0
+L3313:
+mov edi,dword ptr (-8)[ebp]
+cmp dword ptr (L3293)[edi*4],0
+je L3317
+mov dword ptr (-20)[ebp],1
+L3317:
+L3314:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],10
+jl L3313
+cmp dword ptr (-20)[ebp],0
+je L3319
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3321
+push 8
+lea edi,(L3288)
+push edi
+call _printf
+add esp,8
+L3321:
+add dword ptr (-32)[ebp],8
+L3319:
+mov dword ptr (-20)[ebp],0
+mov dword ptr (-12)[ebp],0
+L3323:
+mov dword ptr (-8)[ebp],0
+L3327:
+imul edi,dword ptr (-12)[ebp],3
+mov esi,dword ptr (-8)[ebp]
+lea edi,[esi][edi]
+mov dword ptr (-16)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+lea edi,[edi*4]
+imul esi,dword ptr (-12)[ebp],12
+fld dword ptr (L3295)[esi][edi]
+fstp dword ptr (-40)[ebp]
+fld dword ptr (L3296)[esi][edi]
+fcomp dword ptr (-40)[ebp]
+fstsw ax
+sahf
+jne L3333
+mov edi,dword ptr (-16)[ebp]
+fld dword ptr (L3294)[edi*4]
+fcomp dword ptr (-40)[ebp]
+fstsw ax
+sahf
+je L3331
+L3333:
+mov dword ptr (-20)[ebp],1
+L3331:
+L3328:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],3
+jl L3327
+L3324:
+inc dword ptr (-12)[ebp]
+cmp dword ptr (-12)[ebp],4
+jl L3323
+cmp dword ptr (-20)[ebp],0
+je L3334
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3336
+push 16
+lea edi,(L3288)
+push edi
+call _printf
+add esp,8
+L3336:
+add dword ptr (-32)[ebp],16
+L3334:
+mov dword ptr (-20)[ebp],0
+mov dword ptr (-8)[ebp],0
+L3338:
+mov edi,dword ptr (-8)[ebp]
+imul esi,edi,12
+lea edi,(1)[edi]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fcomp dword ptr (L3297)[esi]
+fstsw ax
+sahf
+je L3342
+mov dword ptr (-20)[ebp],1
+L3342:
+L3339:
+inc dword ptr (-8)[ebp]
+cmp dword ptr (-8)[ebp],4
+jl L3338
+cmp dword ptr (-20)[ebp],0
+je L3344
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3346
+push 32
+lea edi,(L3288)
+push edi
+call _printf
+add esp,8
+L3346:
+add dword ptr (-32)[ebp],32
+L3344:
+mov eax,dword ptr (-32)[ebp]
+L3287:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _one
+_one:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov eax,1
+L3348:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L3350 label byte
+db 115
+db 56
+db 56
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L3351 label byte
+db 115
+db 56
+db 56
+db 32
+db 32
+db 32
+db 32
+db 0
+public _s88
+_DATA ends
+_TEXT segment
+_s88:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,44
+lea edi,(L3351)
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-8)[ebp],edi
+mov dword ptr (-12)[ebp],0
+L3353:
+L3354:
+mov edi,dword ptr (-8)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-8)[ebp],esi
+mov esi,dword ptr (-4)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-4)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L3353
+jmp L3356
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3358
+push 1
+lea edi,(L3350)
+push edi
+call _printf
+add esp,8
+L3358:
+inc dword ptr (-12)[ebp]
+L3356:
+lea edi,(-32)[ebp]
+mov dword ptr (_metricp),edi
+mov dword ptr (-32)[ebp],2
+mov edi,dword ptr (_metricp)
+mov dword ptr [edi],3
+cmp dword ptr (-32)[ebp],3
+je L3360
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3362
+push 2
+lea edi,(L3350)
+push edi
+call _printf
+add esp,8
+L3362:
+add dword ptr (-12)[ebp],2
+L3360:
+fld qword ptr (L419)
+fstp qword ptr (-28)[ebp]
+fld qword ptr (L419)
+fstp qword ptr (-20)[ebp]
+lea edi,(-28)[ebp]
+mov dword ptr (-36)[ebp],edi
+mov edi,dword ptr (-36)[ebp]
+fld qword ptr (L418)
+fstp qword ptr [edi]
+mov edi,dword ptr (-36)[ebp]
+fld qword ptr (L418)
+fstp qword ptr (8)[edi]
+fld qword ptr (-28)[ebp]
+fadd qword ptr (-20)[ebp]
+fld qword ptr (L416)
+fcompp
+fstsw ax
+sahf
+je L3365
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3368
+push 4
+lea edi,(L3350)
+push edi
+call _printf
+add esp,8
+L3368:
+add dword ptr (-12)[ebp],4
+L3365:
+mov eax,dword ptr (-12)[ebp]
+L3349:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 1
+L3371 label byte
+db 115
+db 57
+db 44
+db 101
+db 114
+db 37
+db 100
+db 10
+db 0
+align 1
+L3372 label byte
+db 115
+db 57
+db 32
+db 32
+db 32
+db 32
+db 32
+db 0
+public _s9
+_DATA ends
+_TEXT segment
+_s9:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,36
+lea edi,(L3372)
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea edi,(60)[edi]
+mov dword ptr (-16)[ebp],edi
+mov dword ptr (-20)[ebp],0
+L3373:
+L3374:
+mov edi,dword ptr (-16)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-16)[ebp],esi
+mov esi,dword ptr (-12)[ebp]
+lea ebx,(1)[esi]
+mov dword ptr (-12)[ebp],ebx
+mov bl,byte ptr [esi]
+mov byte ptr [edi],bl
+movsx edi,bl
+cmp edi,0
+jne L3373
+mov dword ptr (-8)[ebp],0
+mov dword ptr (-4)[ebp],0
+L3376:
+mov dword ptr (-24)[ebp],2
+mov dword ptr (-28)[ebp],2
+mov dword ptr (-32)[ebp],3
+mov dword ptr (-36)[ebp],3
+cmp dword ptr (-36)[ebp],3
+jne L3382
+cmp dword ptr (-32)[ebp],3
+je L3380
+L3382:
+mov dword ptr (-8)[ebp],1
+L3380:
+cmp dword ptr (-28)[ebp],2
+jne L3385
+cmp dword ptr (-24)[ebp],2
+je L3383
+L3385:
+mov dword ptr (-8)[ebp],1
+L3383:
+L3377:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],2
+jl L3376
+cmp dword ptr (-8)[ebp],0
+je L3390
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3388
+push 1
+lea edi,(L3371)
+push edi
+call _printf
+add esp,8
+L3388:
+inc dword ptr (-20)[ebp]
+jmp L3390
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr (44)[edi],0
+je L3391
+push 2
+lea edi,(L3371)
+push edi
+call _printf
+add esp,8
+L3391:
+add dword ptr (-20)[ebp],2
+L3390:
+mov eax,dword ptr (-20)[ebp]
+L3370:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _setev
+_setev:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov dword ptr (_extvar),1066
+mov eax,0
+L3393:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_DATA segment
+public _rfs
+align 1
+_rfs label byte
+db 8 dup (0)
+public _crc
+align 4
+_crc label byte
+db 4 dup (0)
+public _rrc
+align 4
+_rrc label byte
+db 4 dup (0)
+public _flgl
+align 4
+_flgl label byte
+db 4 dup (0)
+public _flgd
+align 4
+_flgd label byte
+db 4 dup (0)
+public _flgm
+align 4
+_flgm label byte
+db 4 dup (0)
+public _flgs
+align 4
+_flgs label byte
+db 4 dup (0)
+public _dprec
+align 4
+_dprec label byte
+db 4 dup (0)
+public _fprec
+align 4
+_fprec label byte
+db 4 dup (0)
+public _dbits
+align 4
+_dbits label byte
+db 4 dup (0)
+public _fbits
+align 4
+_fbits label byte
+db 4 dup (0)
+public _ubits
+align 4
+_ubits label byte
+db 4 dup (0)
+public _lbits
+align 4
+_lbits label byte
+db 4 dup (0)
+public _metricp
+align 4
+_metricp label byte
+db 4 dup (0)
+public _extvar
+align 4
+_extvar label byte
+db 4 dup (0)
+_DATA ends
+_TEXT segment
+align 1
+L3266 label byte
+db 66
+db 101
+db 32
+db 101
+db 115
+db 112
+db 101
+db 99
+db 105
+db 97
+db 108
+db 108
+db 121
+db 32
+db 99
+db 97
+db 114
+db 101
+db 102
+db 117
+db 108
+db 32
+db 119
+db 105
+db 116
+db 104
+db 32
+db 49
+db 45
+db 98
+db 105
+db 116
+db 32
+db 102
+db 105
+db 101
+db 108
+db 100
+db 115
+db 33
+db 10
+db 0
+align 1
+L3259 label byte
+db 83
+db 105
+db 103
+db 110
+db 32
+db 101
+db 120
+db 116
+db 101
+db 110
+db 115
+db 105
+db 111
+db 110
+db 32
+db 105
+db 110
+db 32
+db 102
+db 105
+db 101
+db 108
+db 100
+db 115
+db 10
+db 0
+align 1
+L3252 label byte
+db 37
+db 115
+db 37
+db 115
+db 37
+db 100
+db 10
+db 0
+align 4
+L3175 label byte
+dd 043080000H
+align 1
+L3022 label byte
+db 112
+db 111
+db 105
+db 110
+db 116
+db 101
+db 114
+db 0
+align 1
+L2472 label byte
+db 73
+db 110
+db 99
+db 114
+db 101
+db 97
+db 115
+db 105
+db 110
+db 103
+db 32
+db 97
+db 114
+db 114
+db 97
+db 121
+db 32
+db 101
+db 108
+db 101
+db 109
+db 101
+db 110
+db 116
+db 115
+db 32
+db 97
+db 115
+db 115
+db 105
+db 103
+db 110
+db 101
+db 100
+db 32
+db 116
+db 111
+db 32
+db 100
+db 101
+db 99
+db 114
+db 101
+db 97
+db 115
+db 105
+db 110
+db 103
+db 32
+db 108
+db 111
+db 99
+db 97
+db 116
+db 105
+db 111
+db 110
+db 115
+db 10
+db 0
+align 4
+L2356 label byte
+dd 041d00000H
+align 4
+L2355 label byte
+dd 00H
+dd 0403a0000H
+align 4
+L1659 label byte
+dd 00H
+dd 040040000H
+align 4
+L1484 label byte
+dd 00H
+dd 040240000H
+align 4
+L1455 label byte
+dd 041200000H
+align 4
+L1280 label byte
+dd 00H
+dd 040080000H
+align 4
+L1251 label byte
+dd 040400000H
+align 4
+L1076 label byte
+dd 00H
+dd 0401c0000H
+align 4
+L1047 label byte
+dd 040e00000H
+align 4
+L870 label byte
+dd 00H
+dd 040140000H
+align 4
+L841 label byte
+dd 040a00000H
+align 4
+L836 label byte
+dd 00H
+dd 041e00000H
+align 4
+L828 label byte
+dd 04f000000H
+align 1
+L653 label byte
+db 113
+db 117
+db 101
+db 101
+db 112
+db 0
+align 1
+L639 label byte
+db 10
+db 0
+align 1
+L638 label byte
+db 37
+db 100
+db 0
+align 1
+L633 label byte
+db 32
+db 32
+db 32
+db 107
+db 101
+db 121
+db 61
+db 0
+align 4
+L596 label byte
+dd 00H
+dd 040000000H
+align 4
+L536 label byte
+dd 00H
+dd 040ce8480H
+align 4
+L535 label byte
+dd 00H
+dd 0405f4000H
+align 4
+L534 label byte
+dd 042fa0000H
+align 4
+L529 label byte
+dd 040000000H
+align 1
+L431 label byte
+db 100
+db 111
+db 117
+db 98
+db 108
+db 101
+db 0
+align 1
+L430 label byte
+db 102
+db 108
+db 111
+db 97
+db 116
+db 0
+align 1
+L429 label byte
+db 117
+db 110
+db 115
+db 105
+db 103
+db 110
+db 101
+db 100
+db 0
+align 1
+L428 label byte
+db 108
+db 111
+db 110
+db 103
+db 0
+align 1
+L427 label byte
+db 115
+db 104
+db 111
+db 114
+db 116
+db 0
+align 1
+L426 label byte
+db 105
+db 110
+db 116
+db 0
+align 1
+L425 label byte
+db 99
+db 104
+db 97
+db 114
+db 0
+align 4
+L419 label byte
+dd 00H
+dd 00H
+align 4
+L418 label byte
+dd 00H
+dd 03ff00000H
+align 4
+L417 label byte
+dd 00H
+dd 040100000H
+align 4
+L416 label byte
+dd 00H
+dd 040000000H
+align 4
+L412 label byte
+dd 00H
+align 4
+L411 label byte
+dd 03f800000H
+align 1
+L390 label byte
+db 113
+db 117
+db 101
+db 101
+db 112
+db 33
+db 0
+align 1
+L379 label byte
+db 10
+db 9
+db 8
+db 13
+db 12
+db 92
+db 39
+db 0
+align 1
+L375 label byte
+db 46
+db 34
+db 46
+db 0
+align 1
+L362 label byte
+db 46
+db 46
+db 46
+db 0
+align 4
+L333 label byte
+dd 00H
+dd 040938800H
+align 1
+L199 label byte
+db 32
+db 32
+db 32
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 101
+db 110
+db 116
+db 32
+db 114
+db 101
+db 115
+db 117
+db 108
+db 116
+db 115
+db 32
+db 119
+db 104
+db 101
+db 110
+db 32
+db 97
+db 115
+db 115
+db 105
+db 103
+db 110
+db 101
+db 100
+db 32
+db 116
+db 111
+db 32
+db 108
+db 111
+db 110
+db 103
+db 115
+db 46
+db 10
+db 0
+align 1
+L198 label byte
+db 68
+db 101
+db 99
+db 105
+db 109
+db 97
+db 108
+db 32
+db 97
+db 110
+db 100
+db 32
+db 111
+db 99
+db 116
+db 97
+db 108
+db 47
+db 104
+db 101
+db 120
+db 32
+db 99
+db 111
+db 110
+db 115
+db 116
+db 97
+db 110
+db 116
+db 115
+db 32
+db 115
+db 111
+db 109
+db 101
+db 116
+db 105
+db 109
+db 101
+db 115
+db 32
+db 103
+db 105
+db 118
+db 101
+db 10
+db 0
+align 1
+L27 label byte
+db 10
+db 70
+db 97
+db 105
+db 108
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L26 label byte
+db 10
+db 78
+db 111
+db 32
+db 101
+db 114
+db 114
+db 111
+db 114
+db 115
+db 32
+db 100
+db 101
+db 116
+db 101
+db 99
+db 116
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L20 label byte
+db 83
+db 101
+db 99
+db 116
+db 105
+db 111
+db 110
+db 32
+db 37
+db 115
+db 32
+db 114
+db 101
+db 116
+db 117
+db 114
+db 110
+db 101
+db 100
+db 32
+db 37
+db 100
+db 46
+db 10
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/cvt.1bk b/lcc/x86/win32/tst/cvt.1bk
index 74c79f1..b28b302 100755
--- a/lcc/x86/win32/tst/cvt.1bk
+++ b/lcc/x86/win32/tst/cvt.1bk
@@ -1,11 +1,11 @@
-1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
-2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
-3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
-4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
-5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
-6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
-7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
-8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
-9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
-10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
-11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
+1 1 1 1 1 1 1 1 1.000000 1.000000 1.000000
+2 2 2 2 2 2 2 2 2.000000 2.000000 2.000000
+3 3 3 3 3 3 3 3 3.000000 3.000000 3.000000
+4 4 4 4 4 4 4 4 4.000000 4.000000 4.000000
+5 5 5 5 5 5 5 5 5.000000 5.000000 5.000000
+6 6 6 6 6 6 6 6 6.000000 6.000000 6.000000
+7 7 7 7 7 7 7 7 7.000000 7.000000 7.000000
+8 8 8 8 8 8 8 8 8.000000 8.000000 8.000000
+9 9 9 9 9 9 9 9 9.000000 9.000000 9.000000
+10 10 10 10 10 10 10 10 10.000000 10.000000 10.000000
+11 11 11 11 11 11 11 11 11.000000 11.000000 11.000000
diff --git a/lcc/x86/win32/tst/cvt.2bk b/lcc/x86/win32/tst/cvt.2bk
index b3ab360..241527d 100755
--- a/lcc/x86/win32/tst/cvt.2bk
+++ b/lcc/x86/win32/tst/cvt.2bk
@@ -1,2 +1,2 @@
-tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
-tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
+tst/cvt.c:32: warning: conversion from `pointer to void function(void)' to `pointer to void' is compiler dependent
+tst/cvt.c:33: warning: conversion from `pointer to void' to `pointer to void function(void)' is compiler dependent
diff --git a/lcc/x86/win32/tst/cvt.sbk b/lcc/x86/win32/tst/cvt.sbk
index 341cfaf..aea81dd 100755
--- a/lcc/x86/win32/tst/cvt.sbk
+++ b/lcc/x86/win32/tst/cvt.sbk
@@ -1,742 +1,742 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _print
-_TEXT segment
-_print:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-fld qword ptr (_D)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_d)
-sub esp,8
-fstp qword ptr [esp]
-fld dword ptr (_f)
-sub esp,8
-fstp qword ptr [esp]
-mov edi,dword ptr (_L)
-push edi
-mov edi,dword ptr (_I)
-push edi
-mov di,word ptr (_S)
-movzx edi,di
-push edi
-mov bl,byte ptr (_C)
-movzx edi,bl
-push edi
-mov edi,dword ptr (_l)
-push edi
-mov edi,dword ptr (_i)
-push edi
-movsx edi,word ptr (_s)
-push edi
-movsx edi,byte ptr (_c)
-push edi
-lea edi,(L2)
-push edi
-call _printf
-add esp,60
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _main
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,296
-mov byte ptr (_c),1
-movsx edi,byte ptr (_c)
-mov esi,edi
-mov word ptr (_s),si
-mov dword ptr (_i),edi
-mov dword ptr (_l),edi
-mov esi,edi
-mov ebx,esi
-mov byte ptr (_C),bl
-mov ebx,esi
-mov word ptr (_S),bx
-mov dword ptr (_I),esi
-mov dword ptr (_L),esi
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (_f)
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp qword ptr (-8)[ebp]
-fld qword ptr (-8)[ebp]
-fstp qword ptr (_d)
-fld qword ptr (-8)[ebp]
-fstp qword ptr (_D)
-call _print
-add esp,0
-mov word ptr (_s),2
-movsx edi,word ptr (_s)
-mov ebx,edi
-mov byte ptr (_c),bl
-mov dword ptr (_i),edi
-mov dword ptr (_l),edi
-mov esi,edi
-mov ebx,esi
-mov byte ptr (_C),bl
-mov ebx,esi
-mov word ptr (_S),bx
-mov dword ptr (_I),esi
-mov dword ptr (_L),esi
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (_f)
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp qword ptr (-16)[ebp]
-fld qword ptr (-16)[ebp]
-fstp qword ptr (_d)
-fld qword ptr (-16)[ebp]
-fstp qword ptr (_D)
-call _print
-add esp,0
-mov dword ptr (_i),3
-mov edi,dword ptr (_i)
-mov ebx,edi
-mov byte ptr (_c),bl
-mov esi,edi
-mov word ptr (_s),si
-mov dword ptr (_l),edi
-mov esi,edi
-mov ebx,esi
-mov byte ptr (_C),bl
-mov ebx,esi
-mov word ptr (_S),bx
-mov dword ptr (_I),esi
-mov dword ptr (_L),esi
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (_f)
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp qword ptr (-24)[ebp]
-fld qword ptr (-24)[ebp]
-fstp qword ptr (_d)
-fld qword ptr (-24)[ebp]
-fstp qword ptr (_D)
-call _print
-add esp,0
-mov dword ptr (_l),4
-mov edi,dword ptr (_l)
-mov ebx,edi
-mov byte ptr (_c),bl
-mov esi,edi
-mov word ptr (_s),si
-mov dword ptr (_i),edi
-mov esi,edi
-mov ebx,esi
-mov byte ptr (_C),bl
-mov ebx,esi
-mov word ptr (_S),bx
-mov dword ptr (_I),esi
-mov dword ptr (_L),esi
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (_f)
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp qword ptr (-32)[ebp]
-fld qword ptr (-32)[ebp]
-fstp qword ptr (_d)
-fld qword ptr (-32)[ebp]
-fstp qword ptr (_D)
-call _print
-add esp,0
-mov byte ptr (_C),5
-mov bl,byte ptr (_C)
-movzx edi,bl
-mov ebx,edi
-mov byte ptr (_c),bl
-mov esi,edi
-mov word ptr (_s),si
-mov dword ptr (_i),edi
-mov dword ptr (_l),edi
-mov esi,edi
-mov ebx,esi
-mov word ptr (_S),bx
-mov dword ptr (_I),esi
-mov dword ptr (_L),esi
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (_f)
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp qword ptr (-40)[ebp]
-fld qword ptr (-40)[ebp]
-fstp qword ptr (_d)
-fld qword ptr (-40)[ebp]
-fstp qword ptr (_D)
-call _print
-add esp,0
-mov word ptr (_S),6
-mov di,word ptr (_S)
-movzx edi,di
-mov ebx,edi
-mov byte ptr (_c),bl
-mov esi,edi
-mov word ptr (_s),si
-mov dword ptr (_i),edi
-mov dword ptr (_l),edi
-mov esi,edi
-mov ebx,esi
-mov byte ptr (_C),bl
-mov dword ptr (_I),esi
-mov dword ptr (_L),esi
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp dword ptr (_f)
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fstp qword ptr (-48)[ebp]
-fld qword ptr (-48)[ebp]
-fstp qword ptr (_d)
-fld qword ptr (-48)[ebp]
-fstp qword ptr (_D)
-call _print
-add esp,0
-mov dword ptr (_I),7
-mov edi,dword ptr (_I)
-mov ebx,edi
-mov byte ptr (_c),bl
-mov ebx,edi
-mov word ptr (_s),bx
-mov dword ptr (_i),edi
-mov dword ptr (_l),edi
-mov ebx,edi
-mov byte ptr (_C),bl
-mov esi,edi
-mov word ptr (_S),si
-mov dword ptr (_L),edi
-fld qword ptr (L4)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp qword ptr (-56)[ebp]
-fld qword ptr (-56)[ebp]
-fstp dword ptr (_f)
-fld qword ptr (-56)[ebp]
-fstp qword ptr (_d)
-fld qword ptr (-56)[ebp]
-fstp qword ptr (_D)
-call _print
-add esp,0
-mov dword ptr (_L),8
-mov edi,dword ptr (_L)
-mov ebx,edi
-mov byte ptr (_c),bl
-mov ebx,edi
-mov word ptr (_s),bx
-mov dword ptr (_i),edi
-mov dword ptr (_l),edi
-mov ebx,edi
-mov byte ptr (_C),bl
-mov esi,edi
-mov word ptr (_S),si
-mov si,word ptr (_S)
-movzx esi,si
-mov dword ptr (_I),esi
-fld qword ptr (L4)
-mov esi,edi
-shr esi,1
-push esi
-fild dword ptr 0[esp]
-add esp,4
-fmulp st(1),st
-and edi,1
-push edi
-fild dword ptr 0[esp]
-add esp,4
-faddp st(1),st
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-64)[ebp]
-fstp dword ptr (_f)
-fld qword ptr (-64)[ebp]
-fstp qword ptr (_d)
-fld qword ptr (-64)[ebp]
-fstp qword ptr (_D)
-call _print
-add esp,0
-fld dword ptr (L5)
-fstp dword ptr (_f)
-fld dword ptr (_f)
-fstp dword ptr (-84)[ebp]
-fld dword ptr (-84)[ebp]
-call __ftol
-mov edi,eax
-mov ebx,edi
-mov byte ptr (_c),bl
-mov esi,edi
-mov word ptr (_s),si
-mov dword ptr (_i),edi
-mov dword ptr (_l),edi
-fld dword ptr (L9)
-fcomp dword ptr (-84)[ebp]
-fstsw ax
-sahf
-ja L7
-fld dword ptr (-84)[ebp]
-fsub dword ptr (L9)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-68)[ebp],edi
-jmp L8
-L7:
-fld dword ptr (-84)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-68)[ebp],edi
-L8:
-mov edi,dword ptr (-68)[ebp]
-mov ebx,edi
-mov byte ptr (_C),bl
-fld dword ptr (L9)
-fcomp dword ptr (_f)
-fstsw ax
-sahf
-ja L11
-fld dword ptr (_f)
-fsub dword ptr (L9)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-72)[ebp],edi
-jmp L12
-L11:
-fld dword ptr (_f)
-call __ftol
-mov edi,eax
-mov dword ptr (-72)[ebp],edi
-L12:
-mov edi,dword ptr (-72)[ebp]
-mov word ptr (_S),di
-fld dword ptr (L9)
-fcomp dword ptr (_f)
-fstsw ax
-sahf
-ja L14
-fld dword ptr (_f)
-fsub dword ptr (L9)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-76)[ebp],edi
-jmp L15
-L14:
-fld dword ptr (_f)
-call __ftol
-mov edi,eax
-mov dword ptr (-76)[ebp],edi
-L15:
-mov edi,dword ptr (-76)[ebp]
-mov dword ptr (_I),edi
-fld dword ptr (L9)
-fcomp dword ptr (_f)
-fstsw ax
-sahf
-ja L17
-fld dword ptr (_f)
-fsub dword ptr (L9)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-80)[ebp],edi
-jmp L18
-L17:
-fld dword ptr (_f)
-call __ftol
-mov edi,eax
-mov dword ptr (-80)[ebp],edi
-L18:
-mov edi,dword ptr (-80)[ebp]
-mov dword ptr (_L),edi
-fld dword ptr (_f)
-fstp qword ptr (-120)[ebp]
-fld qword ptr (-120)[ebp]
-fstp qword ptr (_d)
-fld qword ptr (-120)[ebp]
-fstp qword ptr (_D)
-call _print
-add esp,0
-fld qword ptr (L19)
-fstp qword ptr (_d)
-fld qword ptr (_d)
-fstp qword ptr (-144)[ebp]
-fld qword ptr (-144)[ebp]
-call __ftol
-mov edi,eax
-mov ebx,edi
-mov byte ptr (_c),bl
-mov esi,edi
-mov word ptr (_s),si
-mov dword ptr (_i),edi
-mov dword ptr (_l),edi
-fld qword ptr (L23)
-fcomp qword ptr (-144)[ebp]
-fstsw ax
-sahf
-ja L21
-fld qword ptr (-144)[ebp]
-fsub qword ptr (L23)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-124)[ebp],edi
-jmp L22
-L21:
-fld qword ptr (-144)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-124)[ebp],edi
-L22:
-mov edi,dword ptr (-124)[ebp]
-mov ebx,edi
-mov byte ptr (_C),bl
-fld qword ptr (L23)
-fcomp qword ptr (_d)
-fstsw ax
-sahf
-ja L25
-fld qword ptr (_d)
-fsub qword ptr (L23)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-128)[ebp],edi
-jmp L26
-L25:
-fld qword ptr (_d)
-call __ftol
-mov edi,eax
-mov dword ptr (-128)[ebp],edi
-L26:
-mov edi,dword ptr (-128)[ebp]
-mov word ptr (_S),di
-fld qword ptr (L23)
-fcomp qword ptr (_d)
-fstsw ax
-sahf
-ja L28
-fld qword ptr (_d)
-fsub qword ptr (L23)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-132)[ebp],edi
-jmp L29
-L28:
-fld qword ptr (_d)
-call __ftol
-mov edi,eax
-mov dword ptr (-132)[ebp],edi
-L29:
-mov edi,dword ptr (-132)[ebp]
-mov dword ptr (_I),edi
-fld qword ptr (L23)
-fcomp qword ptr (_d)
-fstsw ax
-sahf
-ja L31
-fld qword ptr (_d)
-fsub qword ptr (L23)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-136)[ebp],edi
-jmp L32
-L31:
-fld qword ptr (_d)
-call __ftol
-mov edi,eax
-mov dword ptr (-136)[ebp],edi
-L32:
-mov edi,dword ptr (-136)[ebp]
-mov dword ptr (_L),edi
-fld qword ptr (_d)
-fstp dword ptr (_f)
-fld qword ptr (_d)
-fstp qword ptr (_D)
-call _print
-add esp,0
-fld qword ptr (L33)
-fstp qword ptr (_D)
-fld qword ptr (_D)
-fstp qword ptr (-232)[ebp]
-fld qword ptr (-232)[ebp]
-call __ftol
-mov edi,eax
-mov ebx,edi
-mov byte ptr (_c),bl
-mov esi,edi
-mov word ptr (_s),si
-mov dword ptr (_i),edi
-mov dword ptr (_l),edi
-fld qword ptr (L37)
-fcomp qword ptr (-232)[ebp]
-fstsw ax
-sahf
-ja L35
-fld qword ptr (-232)[ebp]
-fsub qword ptr (L37)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-212)[ebp],edi
-jmp L36
-L35:
-fld qword ptr (-232)[ebp]
-call __ftol
-mov edi,eax
-mov dword ptr (-212)[ebp],edi
-L36:
-mov edi,dword ptr (-212)[ebp]
-mov ebx,edi
-mov byte ptr (_C),bl
-fld qword ptr (L37)
-fcomp qword ptr (_D)
-fstsw ax
-sahf
-ja L39
-fld qword ptr (_D)
-fsub qword ptr (L37)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-216)[ebp],edi
-jmp L40
-L39:
-fld qword ptr (_D)
-call __ftol
-mov edi,eax
-mov dword ptr (-216)[ebp],edi
-L40:
-mov edi,dword ptr (-216)[ebp]
-mov word ptr (_S),di
-fld qword ptr (L37)
-fcomp qword ptr (_D)
-fstsw ax
-sahf
-ja L42
-fld qword ptr (_D)
-fsub qword ptr (L37)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-220)[ebp],edi
-jmp L43
-L42:
-fld qword ptr (_D)
-call __ftol
-mov edi,eax
-mov dword ptr (-220)[ebp],edi
-L43:
-mov edi,dword ptr (-220)[ebp]
-mov dword ptr (_I),edi
-fld qword ptr (L37)
-fcomp qword ptr (_D)
-fstsw ax
-sahf
-ja L45
-fld qword ptr (_D)
-fsub qword ptr (L37)
-call __ftol
-mov edi,eax
-lea edi,(080000000H)[edi]
-mov dword ptr (-224)[ebp],edi
-jmp L46
-L45:
-fld qword ptr (_D)
-call __ftol
-mov edi,eax
-mov dword ptr (-224)[ebp],edi
-L46:
-mov edi,dword ptr (-224)[ebp]
-mov dword ptr (_L),edi
-fld qword ptr (_D)
-fstp dword ptr (_f)
-fld qword ptr (_D)
-fstp qword ptr (_d)
-call _print
-add esp,0
-mov dword ptr (_p),0
-mov dword ptr (_p),0
-mov dword ptr (_p),0
-mov dword ptr (_p),0
-mov edi,dword ptr (_P)
-mov dword ptr (_p),edi
-mov dword ptr (_P),0
-mov dword ptr (_P),0
-mov dword ptr (_P),0
-mov dword ptr (_P),0
-mov edi,dword ptr (_p)
-mov dword ptr (_P),edi
-mov eax,0
-L3:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_DATA segment
-public _P
-align 4
-_P label byte
-db 4 dup (0)
-public _p
-align 4
-_p label byte
-db 4 dup (0)
-public _D
-align 4
-_D label byte
-db 8 dup (0)
-public _d
-align 4
-_d label byte
-db 8 dup (0)
-public _f
-align 4
-_f label byte
-db 4 dup (0)
-public _L
-align 4
-_L label byte
-db 4 dup (0)
-public _I
-align 4
-_I label byte
-db 4 dup (0)
-public _S
-align 2
-_S label byte
-db 2 dup (0)
-public _C
-align 1
-_C label byte
-db 1 dup (0)
-public _l
-align 4
-_l label byte
-db 4 dup (0)
-public _i
-align 4
-_i label byte
-db 4 dup (0)
-public _s
-align 2
-_s label byte
-db 2 dup (0)
-public _c
-align 1
-_c label byte
-db 1 dup (0)
-_DATA ends
-_TEXT segment
-align 4
-L37 label byte
-dd 00H
-dd 041e00000H
-align 4
-L33 label byte
-dd 00H
-dd 040260000H
-align 4
-L23 label byte
-dd 00H
-dd 041e00000H
-align 4
-L19 label byte
-dd 00H
-dd 040240000H
-align 4
-L9 label byte
-dd 04f000000H
-align 4
-L5 label byte
-dd 041100000H
-align 4
-L4 label byte
-dd 00H
-dd 040000000H
-align 1
-L2 label byte
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 108
-db 100
-db 32
-db 37
-db 117
-db 32
-db 37
-db 117
-db 32
-db 37
-db 117
-db 32
-db 37
-db 108
-db 117
-db 32
-db 37
-db 102
-db 32
-db 37
-db 102
-db 32
-db 37
-db 108
-db 102
-db 10
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _print
+_TEXT segment
+_print:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+fld qword ptr (_D)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_d)
+sub esp,8
+fstp qword ptr [esp]
+fld dword ptr (_f)
+sub esp,8
+fstp qword ptr [esp]
+mov edi,dword ptr (_L)
+push edi
+mov edi,dword ptr (_I)
+push edi
+mov di,word ptr (_S)
+movzx edi,di
+push edi
+mov bl,byte ptr (_C)
+movzx edi,bl
+push edi
+mov edi,dword ptr (_l)
+push edi
+mov edi,dword ptr (_i)
+push edi
+movsx edi,word ptr (_s)
+push edi
+movsx edi,byte ptr (_c)
+push edi
+lea edi,(L2)
+push edi
+call _printf
+add esp,60
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _main
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,296
+mov byte ptr (_c),1
+movsx edi,byte ptr (_c)
+mov esi,edi
+mov word ptr (_s),si
+mov dword ptr (_i),edi
+mov dword ptr (_l),edi
+mov esi,edi
+mov ebx,esi
+mov byte ptr (_C),bl
+mov ebx,esi
+mov word ptr (_S),bx
+mov dword ptr (_I),esi
+mov dword ptr (_L),esi
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (_f)
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp qword ptr (-8)[ebp]
+fld qword ptr (-8)[ebp]
+fstp qword ptr (_d)
+fld qword ptr (-8)[ebp]
+fstp qword ptr (_D)
+call _print
+add esp,0
+mov word ptr (_s),2
+movsx edi,word ptr (_s)
+mov ebx,edi
+mov byte ptr (_c),bl
+mov dword ptr (_i),edi
+mov dword ptr (_l),edi
+mov esi,edi
+mov ebx,esi
+mov byte ptr (_C),bl
+mov ebx,esi
+mov word ptr (_S),bx
+mov dword ptr (_I),esi
+mov dword ptr (_L),esi
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (_f)
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp qword ptr (-16)[ebp]
+fld qword ptr (-16)[ebp]
+fstp qword ptr (_d)
+fld qword ptr (-16)[ebp]
+fstp qword ptr (_D)
+call _print
+add esp,0
+mov dword ptr (_i),3
+mov edi,dword ptr (_i)
+mov ebx,edi
+mov byte ptr (_c),bl
+mov esi,edi
+mov word ptr (_s),si
+mov dword ptr (_l),edi
+mov esi,edi
+mov ebx,esi
+mov byte ptr (_C),bl
+mov ebx,esi
+mov word ptr (_S),bx
+mov dword ptr (_I),esi
+mov dword ptr (_L),esi
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (_f)
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp qword ptr (-24)[ebp]
+fld qword ptr (-24)[ebp]
+fstp qword ptr (_d)
+fld qword ptr (-24)[ebp]
+fstp qword ptr (_D)
+call _print
+add esp,0
+mov dword ptr (_l),4
+mov edi,dword ptr (_l)
+mov ebx,edi
+mov byte ptr (_c),bl
+mov esi,edi
+mov word ptr (_s),si
+mov dword ptr (_i),edi
+mov esi,edi
+mov ebx,esi
+mov byte ptr (_C),bl
+mov ebx,esi
+mov word ptr (_S),bx
+mov dword ptr (_I),esi
+mov dword ptr (_L),esi
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (_f)
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp qword ptr (-32)[ebp]
+fld qword ptr (-32)[ebp]
+fstp qword ptr (_d)
+fld qword ptr (-32)[ebp]
+fstp qword ptr (_D)
+call _print
+add esp,0
+mov byte ptr (_C),5
+mov bl,byte ptr (_C)
+movzx edi,bl
+mov ebx,edi
+mov byte ptr (_c),bl
+mov esi,edi
+mov word ptr (_s),si
+mov dword ptr (_i),edi
+mov dword ptr (_l),edi
+mov esi,edi
+mov ebx,esi
+mov word ptr (_S),bx
+mov dword ptr (_I),esi
+mov dword ptr (_L),esi
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (_f)
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp qword ptr (-40)[ebp]
+fld qword ptr (-40)[ebp]
+fstp qword ptr (_d)
+fld qword ptr (-40)[ebp]
+fstp qword ptr (_D)
+call _print
+add esp,0
+mov word ptr (_S),6
+mov di,word ptr (_S)
+movzx edi,di
+mov ebx,edi
+mov byte ptr (_c),bl
+mov esi,edi
+mov word ptr (_s),si
+mov dword ptr (_i),edi
+mov dword ptr (_l),edi
+mov esi,edi
+mov ebx,esi
+mov byte ptr (_C),bl
+mov dword ptr (_I),esi
+mov dword ptr (_L),esi
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp dword ptr (_f)
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fstp qword ptr (-48)[ebp]
+fld qword ptr (-48)[ebp]
+fstp qword ptr (_d)
+fld qword ptr (-48)[ebp]
+fstp qword ptr (_D)
+call _print
+add esp,0
+mov dword ptr (_I),7
+mov edi,dword ptr (_I)
+mov ebx,edi
+mov byte ptr (_c),bl
+mov ebx,edi
+mov word ptr (_s),bx
+mov dword ptr (_i),edi
+mov dword ptr (_l),edi
+mov ebx,edi
+mov byte ptr (_C),bl
+mov esi,edi
+mov word ptr (_S),si
+mov dword ptr (_L),edi
+fld qword ptr (L4)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp qword ptr (-56)[ebp]
+fld qword ptr (-56)[ebp]
+fstp dword ptr (_f)
+fld qword ptr (-56)[ebp]
+fstp qword ptr (_d)
+fld qword ptr (-56)[ebp]
+fstp qword ptr (_D)
+call _print
+add esp,0
+mov dword ptr (_L),8
+mov edi,dword ptr (_L)
+mov ebx,edi
+mov byte ptr (_c),bl
+mov ebx,edi
+mov word ptr (_s),bx
+mov dword ptr (_i),edi
+mov dword ptr (_l),edi
+mov ebx,edi
+mov byte ptr (_C),bl
+mov esi,edi
+mov word ptr (_S),si
+mov si,word ptr (_S)
+movzx esi,si
+mov dword ptr (_I),esi
+fld qword ptr (L4)
+mov esi,edi
+shr esi,1
+push esi
+fild dword ptr 0[esp]
+add esp,4
+fmulp st(1),st
+and edi,1
+push edi
+fild dword ptr 0[esp]
+add esp,4
+faddp st(1),st
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-64)[ebp]
+fstp dword ptr (_f)
+fld qword ptr (-64)[ebp]
+fstp qword ptr (_d)
+fld qword ptr (-64)[ebp]
+fstp qword ptr (_D)
+call _print
+add esp,0
+fld dword ptr (L5)
+fstp dword ptr (_f)
+fld dword ptr (_f)
+fstp dword ptr (-84)[ebp]
+fld dword ptr (-84)[ebp]
+call __ftol
+mov edi,eax
+mov ebx,edi
+mov byte ptr (_c),bl
+mov esi,edi
+mov word ptr (_s),si
+mov dword ptr (_i),edi
+mov dword ptr (_l),edi
+fld dword ptr (L9)
+fcomp dword ptr (-84)[ebp]
+fstsw ax
+sahf
+ja L7
+fld dword ptr (-84)[ebp]
+fsub dword ptr (L9)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-68)[ebp],edi
+jmp L8
+L7:
+fld dword ptr (-84)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-68)[ebp],edi
+L8:
+mov edi,dword ptr (-68)[ebp]
+mov ebx,edi
+mov byte ptr (_C),bl
+fld dword ptr (L9)
+fcomp dword ptr (_f)
+fstsw ax
+sahf
+ja L11
+fld dword ptr (_f)
+fsub dword ptr (L9)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-72)[ebp],edi
+jmp L12
+L11:
+fld dword ptr (_f)
+call __ftol
+mov edi,eax
+mov dword ptr (-72)[ebp],edi
+L12:
+mov edi,dword ptr (-72)[ebp]
+mov word ptr (_S),di
+fld dword ptr (L9)
+fcomp dword ptr (_f)
+fstsw ax
+sahf
+ja L14
+fld dword ptr (_f)
+fsub dword ptr (L9)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-76)[ebp],edi
+jmp L15
+L14:
+fld dword ptr (_f)
+call __ftol
+mov edi,eax
+mov dword ptr (-76)[ebp],edi
+L15:
+mov edi,dword ptr (-76)[ebp]
+mov dword ptr (_I),edi
+fld dword ptr (L9)
+fcomp dword ptr (_f)
+fstsw ax
+sahf
+ja L17
+fld dword ptr (_f)
+fsub dword ptr (L9)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-80)[ebp],edi
+jmp L18
+L17:
+fld dword ptr (_f)
+call __ftol
+mov edi,eax
+mov dword ptr (-80)[ebp],edi
+L18:
+mov edi,dword ptr (-80)[ebp]
+mov dword ptr (_L),edi
+fld dword ptr (_f)
+fstp qword ptr (-120)[ebp]
+fld qword ptr (-120)[ebp]
+fstp qword ptr (_d)
+fld qword ptr (-120)[ebp]
+fstp qword ptr (_D)
+call _print
+add esp,0
+fld qword ptr (L19)
+fstp qword ptr (_d)
+fld qword ptr (_d)
+fstp qword ptr (-144)[ebp]
+fld qword ptr (-144)[ebp]
+call __ftol
+mov edi,eax
+mov ebx,edi
+mov byte ptr (_c),bl
+mov esi,edi
+mov word ptr (_s),si
+mov dword ptr (_i),edi
+mov dword ptr (_l),edi
+fld qword ptr (L23)
+fcomp qword ptr (-144)[ebp]
+fstsw ax
+sahf
+ja L21
+fld qword ptr (-144)[ebp]
+fsub qword ptr (L23)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-124)[ebp],edi
+jmp L22
+L21:
+fld qword ptr (-144)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-124)[ebp],edi
+L22:
+mov edi,dword ptr (-124)[ebp]
+mov ebx,edi
+mov byte ptr (_C),bl
+fld qword ptr (L23)
+fcomp qword ptr (_d)
+fstsw ax
+sahf
+ja L25
+fld qword ptr (_d)
+fsub qword ptr (L23)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-128)[ebp],edi
+jmp L26
+L25:
+fld qword ptr (_d)
+call __ftol
+mov edi,eax
+mov dword ptr (-128)[ebp],edi
+L26:
+mov edi,dword ptr (-128)[ebp]
+mov word ptr (_S),di
+fld qword ptr (L23)
+fcomp qword ptr (_d)
+fstsw ax
+sahf
+ja L28
+fld qword ptr (_d)
+fsub qword ptr (L23)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-132)[ebp],edi
+jmp L29
+L28:
+fld qword ptr (_d)
+call __ftol
+mov edi,eax
+mov dword ptr (-132)[ebp],edi
+L29:
+mov edi,dword ptr (-132)[ebp]
+mov dword ptr (_I),edi
+fld qword ptr (L23)
+fcomp qword ptr (_d)
+fstsw ax
+sahf
+ja L31
+fld qword ptr (_d)
+fsub qword ptr (L23)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-136)[ebp],edi
+jmp L32
+L31:
+fld qword ptr (_d)
+call __ftol
+mov edi,eax
+mov dword ptr (-136)[ebp],edi
+L32:
+mov edi,dword ptr (-136)[ebp]
+mov dword ptr (_L),edi
+fld qword ptr (_d)
+fstp dword ptr (_f)
+fld qword ptr (_d)
+fstp qword ptr (_D)
+call _print
+add esp,0
+fld qword ptr (L33)
+fstp qword ptr (_D)
+fld qword ptr (_D)
+fstp qword ptr (-232)[ebp]
+fld qword ptr (-232)[ebp]
+call __ftol
+mov edi,eax
+mov ebx,edi
+mov byte ptr (_c),bl
+mov esi,edi
+mov word ptr (_s),si
+mov dword ptr (_i),edi
+mov dword ptr (_l),edi
+fld qword ptr (L37)
+fcomp qword ptr (-232)[ebp]
+fstsw ax
+sahf
+ja L35
+fld qword ptr (-232)[ebp]
+fsub qword ptr (L37)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-212)[ebp],edi
+jmp L36
+L35:
+fld qword ptr (-232)[ebp]
+call __ftol
+mov edi,eax
+mov dword ptr (-212)[ebp],edi
+L36:
+mov edi,dword ptr (-212)[ebp]
+mov ebx,edi
+mov byte ptr (_C),bl
+fld qword ptr (L37)
+fcomp qword ptr (_D)
+fstsw ax
+sahf
+ja L39
+fld qword ptr (_D)
+fsub qword ptr (L37)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-216)[ebp],edi
+jmp L40
+L39:
+fld qword ptr (_D)
+call __ftol
+mov edi,eax
+mov dword ptr (-216)[ebp],edi
+L40:
+mov edi,dword ptr (-216)[ebp]
+mov word ptr (_S),di
+fld qword ptr (L37)
+fcomp qword ptr (_D)
+fstsw ax
+sahf
+ja L42
+fld qword ptr (_D)
+fsub qword ptr (L37)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-220)[ebp],edi
+jmp L43
+L42:
+fld qword ptr (_D)
+call __ftol
+mov edi,eax
+mov dword ptr (-220)[ebp],edi
+L43:
+mov edi,dword ptr (-220)[ebp]
+mov dword ptr (_I),edi
+fld qword ptr (L37)
+fcomp qword ptr (_D)
+fstsw ax
+sahf
+ja L45
+fld qword ptr (_D)
+fsub qword ptr (L37)
+call __ftol
+mov edi,eax
+lea edi,(080000000H)[edi]
+mov dword ptr (-224)[ebp],edi
+jmp L46
+L45:
+fld qword ptr (_D)
+call __ftol
+mov edi,eax
+mov dword ptr (-224)[ebp],edi
+L46:
+mov edi,dword ptr (-224)[ebp]
+mov dword ptr (_L),edi
+fld qword ptr (_D)
+fstp dword ptr (_f)
+fld qword ptr (_D)
+fstp qword ptr (_d)
+call _print
+add esp,0
+mov dword ptr (_p),0
+mov dword ptr (_p),0
+mov dword ptr (_p),0
+mov dword ptr (_p),0
+mov edi,dword ptr (_P)
+mov dword ptr (_p),edi
+mov dword ptr (_P),0
+mov dword ptr (_P),0
+mov dword ptr (_P),0
+mov dword ptr (_P),0
+mov edi,dword ptr (_p)
+mov dword ptr (_P),edi
+mov eax,0
+L3:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_DATA segment
+public _P
+align 4
+_P label byte
+db 4 dup (0)
+public _p
+align 4
+_p label byte
+db 4 dup (0)
+public _D
+align 4
+_D label byte
+db 8 dup (0)
+public _d
+align 4
+_d label byte
+db 8 dup (0)
+public _f
+align 4
+_f label byte
+db 4 dup (0)
+public _L
+align 4
+_L label byte
+db 4 dup (0)
+public _I
+align 4
+_I label byte
+db 4 dup (0)
+public _S
+align 2
+_S label byte
+db 2 dup (0)
+public _C
+align 1
+_C label byte
+db 1 dup (0)
+public _l
+align 4
+_l label byte
+db 4 dup (0)
+public _i
+align 4
+_i label byte
+db 4 dup (0)
+public _s
+align 2
+_s label byte
+db 2 dup (0)
+public _c
+align 1
+_c label byte
+db 1 dup (0)
+_DATA ends
+_TEXT segment
+align 4
+L37 label byte
+dd 00H
+dd 041e00000H
+align 4
+L33 label byte
+dd 00H
+dd 040260000H
+align 4
+L23 label byte
+dd 00H
+dd 041e00000H
+align 4
+L19 label byte
+dd 00H
+dd 040240000H
+align 4
+L9 label byte
+dd 04f000000H
+align 4
+L5 label byte
+dd 041100000H
+align 4
+L4 label byte
+dd 00H
+dd 040000000H
+align 1
+L2 label byte
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 108
+db 100
+db 32
+db 37
+db 117
+db 32
+db 37
+db 117
+db 32
+db 37
+db 117
+db 32
+db 37
+db 108
+db 117
+db 32
+db 37
+db 102
+db 32
+db 37
+db 102
+db 32
+db 37
+db 108
+db 102
+db 10
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/fields.1bk b/lcc/x86/win32/tst/fields.1bk
index f30b13f..56fdeb9 100755
--- a/lcc/x86/win32/tst/fields.1bk
+++ b/lcc/x86/win32/tst/fields.1bk
@@ -1,5 +1,5 @@
-x = 1 2 3 4 -3 6
-y = 3 8 9
-x = 1 2 3 0 0 6
-y = 2 8 16
-p->a = 0x3, p->b = 0xf
+x = 1 2 3 4 -3 6
+y = 3 8 9
+x = 1 2 3 0 0 6
+y = 2 8 16
+p->a = 0x3, p->b = 0xf
diff --git a/lcc/x86/win32/tst/fields.2bk b/lcc/x86/win32/tst/fields.2bk
index e689d78..51e1736 100755
--- a/lcc/x86/win32/tst/fields.2bk
+++ b/lcc/x86/win32/tst/fields.2bk
@@ -1,4 +1,4 @@
-tst/fields.c:6: warning: initializer exceeds bit-field width
-tst/fields.c:8: warning: initializer exceeds bit-field width
-tst/fields.c:30: warning: missing return value
-tst/fields.c:34: warning: missing return value
+tst/fields.c:6: warning: initializer exceeds bit-field width
+tst/fields.c:8: warning: initializer exceeds bit-field width
+tst/fields.c:30: warning: missing return value
+tst/fields.c:34: warning: missing return value
diff --git a/lcc/x86/win32/tst/fields.sbk b/lcc/x86/win32/tst/fields.sbk
index 0e5e059..8cf7784 100755
--- a/lcc/x86/win32/tst/fields.sbk
+++ b/lcc/x86/win32/tst/fields.sbk
@@ -1,323 +1,323 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-_DATA segment
-public _x
-align 4
-_x label byte
-dd 1
-db 2
-db 3 dup (0)
-db 03H
-db 040H
-db 2 dup (0)
-db 050H
-db 6
-db 2 dup (0)
-public _i
-align 4
-_i label byte
-dd 16
-public _y
-align 4
-_y label byte
-db 023H
-db 3 dup (0)
-db 09H
-db 00H
-db 00H
-db 00H
-public _main
-_DATA ends
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-movsx edi,byte ptr (_x+13)
-push edi
-mov edi,dword ptr (_x+12)
-sal edi,25
-sar edi,29
-push edi
-mov edi,dword ptr (_x+8)
-sal edi,16
-sar edi,28
-push edi
-mov edi,dword ptr (_x+8)
-sal edi,20
-sar edi,20
-push edi
-movsx edi,byte ptr (_x+4)
-push edi
-mov edi,dword ptr (_x)
-push edi
-lea edi,(L4)
-push edi
-call _printf
-add esp,28
-mov edi,dword ptr (_y+4)
-push edi
-mov edi,dword ptr (_y)
-mov esi,edi
-shr esi,2
-and esi,15
-push esi
-and edi,3
-push edi
-lea edi,(L10)
-push edi
-call _printf
-add esp,16
-mov edi,dword ptr (_x+8)
-and edi,0ffff0fffH
-mov esi,dword ptr (_i)
-sal esi,28
-sar esi,28
-shl esi,12
-and esi,0f000H
-or edi,esi
-mov dword ptr (_x+8),edi
-mov edi,dword ptr (_x+12)
-and edi,0ffffff8fH
-mov dword ptr (_x+12),edi
-movsx edi,byte ptr (_x+13)
-push edi
-mov edi,dword ptr (_x+12)
-sal edi,25
-sar edi,29
-push edi
-mov edi,dword ptr (_x+8)
-sal edi,16
-sar edi,28
-push edi
-mov edi,dword ptr (_x+8)
-sal edi,20
-sar edi,20
-push edi
-movsx edi,byte ptr (_x+4)
-push edi
-mov edi,dword ptr (_x)
-push edi
-lea edi,(L4)
-push edi
-call _printf
-add esp,28
-mov edi,dword ptr (_y)
-and edi,0fffffffcH
-or edi,2
-mov dword ptr (_y),edi
-mov edi,dword ptr (_i)
-mov dword ptr (_y+4),edi
-mov edi,dword ptr (_y+4)
-push edi
-mov edi,dword ptr (_y)
-mov esi,edi
-shr esi,2
-and esi,15
-push esi
-and edi,3
-push edi
-lea edi,(L10)
-push edi
-call _printf
-add esp,16
-lea edi,(_x)
-push edi
-call _f2
-add esp,4
-mov eax,0
-L3:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f1
-_f1:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-and dword ptr [edi],0ffffffc3H
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr [edi]
-and esi,0fffffffcH
-mov ebx,0
-and ebx,3
-and ebx,3
-or esi,ebx
-mov dword ptr [edi],esi
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr [edi]
-and edi,60
-cmp edi,0
-je L22
-lea edi,(L24)
-push edi
-call _printf
-add esp,4
-L22:
-mov edi,dword ptr (20)[ebp]
-or dword ptr [edi],3
-mov edi,dword ptr (20)[ebp]
-or dword ptr [edi],60
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr [edi]
-mov esi,edi
-shr esi,2
-and esi,15
-push esi
-and edi,3
-push edi
-lea edi,(L25)
-push edi
-call _printf
-add esp,12
-mov eax,0
-L21:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f2
-_f2:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-cmp dword ptr (_i),0
-jne L28
-mov dword ptr (-4)[ebp],1
-jmp L29
-L28:
-mov dword ptr (-4)[ebp],0
-L29:
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr [edi]
-and esi,0fffffffcH
-mov ebx,dword ptr (-4)[ebp]
-and ebx,3
-and ebx,3
-or esi,ebx
-mov dword ptr [edi],esi
-mov edi,dword ptr (20)[ebp]
-push edi
-call _f1
-add esp,4
-mov esi,dword ptr [edi]
-and esi,0ffffffc3H
-mov ebx,0
-and ebx,15
-lea ebx,[ebx*4]
-and ebx,60
-or esi,ebx
-mov dword ptr [edi],esi
-mov eax,0
-L26:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_TEXT segment
-align 1
-L25 label byte
-db 112
-db 45
-db 62
-db 97
-db 32
-db 61
-db 32
-db 48
-db 120
-db 37
-db 120
-db 44
-db 32
-db 112
-db 45
-db 62
-db 98
-db 32
-db 61
-db 32
-db 48
-db 120
-db 37
-db 120
-db 10
-db 0
-align 1
-L24 label byte
-db 112
-db 45
-db 62
-db 98
-db 32
-db 33
-db 61
-db 32
-db 48
-db 33
-db 10
-db 0
-align 1
-L10 label byte
-db 121
-db 32
-db 61
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 10
-db 0
-align 1
-L4 label byte
-db 120
-db 32
-db 61
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 10
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+_DATA segment
+public _x
+align 4
+_x label byte
+dd 1
+db 2
+db 3 dup (0)
+db 03H
+db 040H
+db 2 dup (0)
+db 050H
+db 6
+db 2 dup (0)
+public _i
+align 4
+_i label byte
+dd 16
+public _y
+align 4
+_y label byte
+db 023H
+db 3 dup (0)
+db 09H
+db 00H
+db 00H
+db 00H
+public _main
+_DATA ends
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+movsx edi,byte ptr (_x+13)
+push edi
+mov edi,dword ptr (_x+12)
+sal edi,25
+sar edi,29
+push edi
+mov edi,dword ptr (_x+8)
+sal edi,16
+sar edi,28
+push edi
+mov edi,dword ptr (_x+8)
+sal edi,20
+sar edi,20
+push edi
+movsx edi,byte ptr (_x+4)
+push edi
+mov edi,dword ptr (_x)
+push edi
+lea edi,(L4)
+push edi
+call _printf
+add esp,28
+mov edi,dword ptr (_y+4)
+push edi
+mov edi,dword ptr (_y)
+mov esi,edi
+shr esi,2
+and esi,15
+push esi
+and edi,3
+push edi
+lea edi,(L10)
+push edi
+call _printf
+add esp,16
+mov edi,dword ptr (_x+8)
+and edi,0ffff0fffH
+mov esi,dword ptr (_i)
+sal esi,28
+sar esi,28
+shl esi,12
+and esi,0f000H
+or edi,esi
+mov dword ptr (_x+8),edi
+mov edi,dword ptr (_x+12)
+and edi,0ffffff8fH
+mov dword ptr (_x+12),edi
+movsx edi,byte ptr (_x+13)
+push edi
+mov edi,dword ptr (_x+12)
+sal edi,25
+sar edi,29
+push edi
+mov edi,dword ptr (_x+8)
+sal edi,16
+sar edi,28
+push edi
+mov edi,dword ptr (_x+8)
+sal edi,20
+sar edi,20
+push edi
+movsx edi,byte ptr (_x+4)
+push edi
+mov edi,dword ptr (_x)
+push edi
+lea edi,(L4)
+push edi
+call _printf
+add esp,28
+mov edi,dword ptr (_y)
+and edi,0fffffffcH
+or edi,2
+mov dword ptr (_y),edi
+mov edi,dword ptr (_i)
+mov dword ptr (_y+4),edi
+mov edi,dword ptr (_y+4)
+push edi
+mov edi,dword ptr (_y)
+mov esi,edi
+shr esi,2
+and esi,15
+push esi
+and edi,3
+push edi
+lea edi,(L10)
+push edi
+call _printf
+add esp,16
+lea edi,(_x)
+push edi
+call _f2
+add esp,4
+mov eax,0
+L3:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f1
+_f1:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+and dword ptr [edi],0ffffffc3H
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr [edi]
+and esi,0fffffffcH
+mov ebx,0
+and ebx,3
+and ebx,3
+or esi,ebx
+mov dword ptr [edi],esi
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr [edi]
+and edi,60
+cmp edi,0
+je L22
+lea edi,(L24)
+push edi
+call _printf
+add esp,4
+L22:
+mov edi,dword ptr (20)[ebp]
+or dword ptr [edi],3
+mov edi,dword ptr (20)[ebp]
+or dword ptr [edi],60
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr [edi]
+mov esi,edi
+shr esi,2
+and esi,15
+push esi
+and edi,3
+push edi
+lea edi,(L25)
+push edi
+call _printf
+add esp,12
+mov eax,0
+L21:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f2
+_f2:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+cmp dword ptr (_i),0
+jne L28
+mov dword ptr (-4)[ebp],1
+jmp L29
+L28:
+mov dword ptr (-4)[ebp],0
+L29:
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr [edi]
+and esi,0fffffffcH
+mov ebx,dword ptr (-4)[ebp]
+and ebx,3
+and ebx,3
+or esi,ebx
+mov dword ptr [edi],esi
+mov edi,dword ptr (20)[ebp]
+push edi
+call _f1
+add esp,4
+mov esi,dword ptr [edi]
+and esi,0ffffffc3H
+mov ebx,0
+and ebx,15
+lea ebx,[ebx*4]
+and ebx,60
+or esi,ebx
+mov dword ptr [edi],esi
+mov eax,0
+L26:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_TEXT segment
+align 1
+L25 label byte
+db 112
+db 45
+db 62
+db 97
+db 32
+db 61
+db 32
+db 48
+db 120
+db 37
+db 120
+db 44
+db 32
+db 112
+db 45
+db 62
+db 98
+db 32
+db 61
+db 32
+db 48
+db 120
+db 37
+db 120
+db 10
+db 0
+align 1
+L24 label byte
+db 112
+db 45
+db 62
+db 98
+db 32
+db 33
+db 61
+db 32
+db 48
+db 33
+db 10
+db 0
+align 1
+L10 label byte
+db 121
+db 32
+db 61
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 10
+db 0
+align 1
+L4 label byte
+db 120
+db 32
+db 61
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 10
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/front.2bk b/lcc/x86/win32/tst/front.2bk
index 841e6a5..bbd390a 100755
--- a/lcc/x86/win32/tst/front.2bk
+++ b/lcc/x86/win32/tst/front.2bk
@@ -1,29 +1,29 @@
-tst/front.c:3: warning: missing return value
-tst/front.c:10: warning: missing return value
-tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
-tst/front.c:21: warning: missing return value
-tst/front.c:32: warning: missing return value
-tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
-tst/front.c:38: warning: missing return value
-tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
-tst/front.c:63: warning: missing return value
-tst/front.c:68: warning: missing return value
-tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
-tst/front.c:69: warning: missing return value
-tst/front.c:71: invalid storage class `static' for `int function goo'
-tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
-tst/front.c:71: warning: missing return value
-tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
-tst/front.c:74: warning: missing return value
-tst/front.c:81: warning: missing return value
-tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
-tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
-tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
-tst/front.c:92: warning: missing return value
-tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
-tst/front.c:98: warning: missing return value
-tst/front.c:101: conflicting argument declarations for function `gg1'
-tst/front.c:101: warning: missing return value
-tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
-tst/front.c:113: warning: missing return value
-tst/front.c:120: warning: missing return value
+tst/front.c:3: warning: missing return value
+tst/front.c:10: warning: missing return value
+tst/front.c:20: type error in argument 1 to `s'; found `pointer to struct D' expected `pointer to incomplete struct D defined at tst/front.c:14'
+tst/front.c:21: warning: missing return value
+tst/front.c:32: warning: missing return value
+tst/front.c:36: operands of = have illegal types `pointer to int' and `pointer to const int'
+tst/front.c:38: warning: missing return value
+tst/front.c:62: operands of = have illegal types `pointer to char' and `pointer to const void'
+tst/front.c:63: warning: missing return value
+tst/front.c:68: warning: missing return value
+tst/front.c:69: warning: inconsistent linkage for `yy' previously declared at tst/front.c:68
+tst/front.c:69: warning: missing return value
+tst/front.c:71: invalid storage class `static' for `int function goo'
+tst/front.c:71: warning: declaration of `goo' does not match previous declaration at tst/front.c:70
+tst/front.c:71: warning: missing return value
+tst/front.c:74: warning: declaration of `xr' does not match previous declaration at tst/front.c:72
+tst/front.c:74: warning: missing return value
+tst/front.c:81: warning: missing return value
+tst/front.c:82: warning: declaration of `ss2' does not match previous declaration at tst/front.c:81
+tst/front.c:84: warning: inconsistent linkage for `ss5' previously declared at tst/front.c:80
+tst/front.c:92: type error in argument 1 to `gx1'; found `pointer to double' expected `double'
+tst/front.c:92: warning: missing return value
+tst/front.c:95: redeclaration of `hx1' previously declared at tst/front.c:94
+tst/front.c:98: warning: missing return value
+tst/front.c:101: conflicting argument declarations for function `gg1'
+tst/front.c:101: warning: missing return value
+tst/front.c:112: type error in argument 4 to `qsort'; found `pointer to int function(pointer to pointer to char,pointer to pointer to char)' expected `pointer to int function(pointer to const void,pointer to const void)'
+tst/front.c:113: warning: missing return value
+tst/front.c:120: warning: missing return value
diff --git a/lcc/x86/win32/tst/front.sbk b/lcc/x86/win32/tst/front.sbk
index b3a6945..cc91f3a 100755
--- a/lcc/x86/win32/tst/front.sbk
+++ b/lcc/x86/win32/tst/front.sbk
@@ -1,436 +1,436 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _main
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-push 0
-call _exit
-add esp,4
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _nested
-_nested:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-cmp dword ptr (20)[ebp],4
-jge L6
-cmp dword ptr (24)[ebp],114
-je L9
-L6:
-cmp dword ptr (20)[ebp],1
-jne L8
-mov edi,dword ptr (24)[ebp]
-cmp edi,104
-je L9
-cmp edi,105
-je L9
-L8:
-cmp dword ptr (20)[ebp],2
-jne L3
-mov edi,dword ptr (24)[ebp]
-cmp edi,111
-je L9
-cmp edi,121
-jne L3
-L9:
-mov edi,dword ptr (24)[ebp]
-mov dword ptr (20)[ebp],edi
-L3:
-mov eax,0
-L2:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _s
-_s:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-L10:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-public _Dy
-align 4
-_Dy label byte
-dd 0
-db 4 dup (0)
-public _Dz
-align 4
-_Dz label byte
-dd 1
-db 4 dup (0)
-public _Dfunc
-_DATA ends
-_TEXT segment
-_Dfunc:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f
-_f:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f1
-_f1:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f2
-_f2:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _g
-_g:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _h
-_h:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _h1
-_h1:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _h2
-_h2:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L21 label byte
-dd 1
-public _set1
-_DATA ends
-_TEXT segment
-_set1:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L23 label byte
-dd 2
-public _set2
-_DATA ends
-_TEXT segment
-_set2:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_goo:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _sss
-_sss:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L27 label byte
-db 4 dup (0)
-public _rrr
-_DATA ends
-_TEXT segment
-_rrr:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _setstatic
-_setstatic:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _gx1
-_gx1:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _ff1
-_ff1:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _gg1
-_gg1:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _hh1
-_hh1:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _cmp
-_cmp:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _sort
-_sort:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _onearg
-_onearg:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _exit:near
-_TEXT segment
-_TEXT ends
-extrn _qsort:near
-_TEXT segment
-_TEXT ends
-extrn _strcmp:near
-_TEXT segment
-_TEXT ends
-_DATA segment
-public _ss4
-align 4
-_ss4 label byte
-db 4 dup (0)
-align 4
-_ss2 label byte
-db 4 dup (0)
-align 4
-_ss5 label byte
-db 4 dup (0)
-public _ss3
-align 4
-_ss3 label byte
-db 4 dup (0)
-align 4
-_ss1 label byte
-db 4 dup (0)
-align 4
-_yy label byte
-db 4 dup (0)
-public _z
-align 4
-_z label byte
-db 4 dup (0)
-public _y
-align 4
-_y label byte
-db 4 dup (0)
-public _x
-align 4
-_x label byte
-db 4 dup (0)
-public _b
-align 4
-_b label byte
-db 4 dup (0)
-public _a
-align 4
-_a label byte
-db 4 dup (0)
-_DATA ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _main
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+push 0
+call _exit
+add esp,4
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _nested
+_nested:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+cmp dword ptr (20)[ebp],4
+jge L6
+cmp dword ptr (24)[ebp],114
+je L9
+L6:
+cmp dword ptr (20)[ebp],1
+jne L8
+mov edi,dword ptr (24)[ebp]
+cmp edi,104
+je L9
+cmp edi,105
+je L9
+L8:
+cmp dword ptr (20)[ebp],2
+jne L3
+mov edi,dword ptr (24)[ebp]
+cmp edi,111
+je L9
+cmp edi,121
+jne L3
+L9:
+mov edi,dword ptr (24)[ebp]
+mov dword ptr (20)[ebp],edi
+L3:
+mov eax,0
+L2:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _s
+_s:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+L10:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+public _Dy
+align 4
+_Dy label byte
+dd 0
+db 4 dup (0)
+public _Dz
+align 4
+_Dz label byte
+dd 1
+db 4 dup (0)
+public _Dfunc
+_DATA ends
+_TEXT segment
+_Dfunc:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f
+_f:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f1
+_f1:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f2
+_f2:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _g
+_g:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _h
+_h:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _h1
+_h1:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _h2
+_h2:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L21 label byte
+dd 1
+public _set1
+_DATA ends
+_TEXT segment
+_set1:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L23 label byte
+dd 2
+public _set2
+_DATA ends
+_TEXT segment
+_set2:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_goo:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _sss
+_sss:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L27 label byte
+db 4 dup (0)
+public _rrr
+_DATA ends
+_TEXT segment
+_rrr:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _setstatic
+_setstatic:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _gx1
+_gx1:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _ff1
+_ff1:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _gg1
+_gg1:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _hh1
+_hh1:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _cmp
+_cmp:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _sort
+_sort:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _onearg
+_onearg:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _exit:near
+_TEXT segment
+_TEXT ends
+extrn _qsort:near
+_TEXT segment
+_TEXT ends
+extrn _strcmp:near
+_TEXT segment
+_TEXT ends
+_DATA segment
+public _ss4
+align 4
+_ss4 label byte
+db 4 dup (0)
+align 4
+_ss2 label byte
+db 4 dup (0)
+align 4
+_ss5 label byte
+db 4 dup (0)
+public _ss3
+align 4
+_ss3 label byte
+db 4 dup (0)
+align 4
+_ss1 label byte
+db 4 dup (0)
+align 4
+_yy label byte
+db 4 dup (0)
+public _z
+align 4
+_z label byte
+db 4 dup (0)
+public _y
+align 4
+_y label byte
+db 4 dup (0)
+public _x
+align 4
+_x label byte
+db 4 dup (0)
+public _b
+align 4
+_b label byte
+db 4 dup (0)
+public _a
+align 4
+_a label byte
+db 4 dup (0)
+_DATA ends
+end
diff --git a/lcc/x86/win32/tst/incr.2bk b/lcc/x86/win32/tst/incr.2bk
index b86c400..d9ef13c 100755
--- a/lcc/x86/win32/tst/incr.2bk
+++ b/lcc/x86/win32/tst/incr.2bk
@@ -1,9 +1,9 @@
-tst/incr.c:1: warning: missing return value
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:6: warning: expression with no effect elided
-tst/incr.c:11: warning: missing return value
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:16: warning: expression with no effect elided
-tst/incr.c:21: warning: missing return value
-tst/incr.c:30: warning: missing return value
-tst/incr.c:39: warning: missing return value
+tst/incr.c:1: warning: missing return value
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:6: warning: expression with no effect elided
+tst/incr.c:11: warning: missing return value
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:16: warning: expression with no effect elided
+tst/incr.c:21: warning: missing return value
+tst/incr.c:30: warning: missing return value
+tst/incr.c:39: warning: missing return value
diff --git a/lcc/x86/win32/tst/incr.sbk b/lcc/x86/win32/tst/incr.sbk
index 222ce32..96a39e0 100755
--- a/lcc/x86/win32/tst/incr.sbk
+++ b/lcc/x86/win32/tst/incr.sbk
@@ -1,166 +1,166 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _main
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _memchar
-_memchar:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-mov edi,dword ptr (-8)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-8)[ebp],esi
-mov bl,byte ptr [edi]
-mov byte ptr (-1)[ebp],bl
-mov edi,dword ptr (-8)[ebp]
-lea edi,(1)[edi]
-mov dword ptr (-8)[ebp],edi
-mov bl,byte ptr [edi]
-mov byte ptr (-1)[ebp],bl
-mov edi,dword ptr (-8)[ebp]
-lea esi,(-1)[edi]
-mov dword ptr (-8)[ebp],esi
-mov bl,byte ptr [edi]
-mov byte ptr (-1)[ebp],bl
-mov edi,dword ptr (-8)[ebp]
-lea edi,(-1)[edi]
-mov dword ptr (-8)[ebp],edi
-mov bl,byte ptr [edi]
-mov byte ptr (-1)[ebp],bl
-mov eax,0
-L2:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _memint
-_memint:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-mov edi,dword ptr (-8)[ebp]
-lea esi,(4)[edi]
-mov dword ptr (-8)[ebp],esi
-mov edi,dword ptr [edi]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr [edi]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-lea esi,(-4)[edi]
-mov dword ptr (-8)[ebp],esi
-mov edi,dword ptr [edi]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-lea edi,(-4)[edi]
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr [edi]
-mov dword ptr (-4)[ebp],edi
-mov eax,0
-L3:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _regchar
-_regchar:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-mov edi,dword ptr (-8)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-8)[ebp],esi
-mov bl,byte ptr [edi]
-mov byte ptr (-1)[ebp],bl
-mov edi,dword ptr (-8)[ebp]
-lea edi,(1)[edi]
-mov dword ptr (-8)[ebp],edi
-mov bl,byte ptr [edi]
-mov byte ptr (-1)[ebp],bl
-mov edi,dword ptr (-8)[ebp]
-lea esi,(-1)[edi]
-mov dword ptr (-8)[ebp],esi
-mov bl,byte ptr [edi]
-mov byte ptr (-1)[ebp],bl
-mov edi,dword ptr (-8)[ebp]
-lea edi,(-1)[edi]
-mov dword ptr (-8)[ebp],edi
-mov bl,byte ptr [edi]
-mov byte ptr (-1)[ebp],bl
-mov eax,0
-L4:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _regint
-_regint:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-mov edi,dword ptr (-8)[ebp]
-lea esi,(4)[edi]
-mov dword ptr (-8)[ebp],esi
-mov edi,dword ptr [edi]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr [edi]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-lea esi,(-4)[edi]
-mov dword ptr (-8)[ebp],esi
-mov edi,dword ptr [edi]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-lea edi,(-4)[edi]
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr [edi]
-mov dword ptr (-4)[ebp],edi
-mov eax,0
-L5:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _main
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _memchar
+_memchar:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+mov edi,dword ptr (-8)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-8)[ebp],esi
+mov bl,byte ptr [edi]
+mov byte ptr (-1)[ebp],bl
+mov edi,dword ptr (-8)[ebp]
+lea edi,(1)[edi]
+mov dword ptr (-8)[ebp],edi
+mov bl,byte ptr [edi]
+mov byte ptr (-1)[ebp],bl
+mov edi,dword ptr (-8)[ebp]
+lea esi,(-1)[edi]
+mov dword ptr (-8)[ebp],esi
+mov bl,byte ptr [edi]
+mov byte ptr (-1)[ebp],bl
+mov edi,dword ptr (-8)[ebp]
+lea edi,(-1)[edi]
+mov dword ptr (-8)[ebp],edi
+mov bl,byte ptr [edi]
+mov byte ptr (-1)[ebp],bl
+mov eax,0
+L2:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _memint
+_memint:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+mov edi,dword ptr (-8)[ebp]
+lea esi,(4)[edi]
+mov dword ptr (-8)[ebp],esi
+mov edi,dword ptr [edi]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr [edi]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+lea esi,(-4)[edi]
+mov dword ptr (-8)[ebp],esi
+mov edi,dword ptr [edi]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+lea edi,(-4)[edi]
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr [edi]
+mov dword ptr (-4)[ebp],edi
+mov eax,0
+L3:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _regchar
+_regchar:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+mov edi,dword ptr (-8)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-8)[ebp],esi
+mov bl,byte ptr [edi]
+mov byte ptr (-1)[ebp],bl
+mov edi,dword ptr (-8)[ebp]
+lea edi,(1)[edi]
+mov dword ptr (-8)[ebp],edi
+mov bl,byte ptr [edi]
+mov byte ptr (-1)[ebp],bl
+mov edi,dword ptr (-8)[ebp]
+lea esi,(-1)[edi]
+mov dword ptr (-8)[ebp],esi
+mov bl,byte ptr [edi]
+mov byte ptr (-1)[ebp],bl
+mov edi,dword ptr (-8)[ebp]
+lea edi,(-1)[edi]
+mov dword ptr (-8)[ebp],edi
+mov bl,byte ptr [edi]
+mov byte ptr (-1)[ebp],bl
+mov eax,0
+L4:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _regint
+_regint:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+mov edi,dword ptr (-8)[ebp]
+lea esi,(4)[edi]
+mov dword ptr (-8)[ebp],esi
+mov edi,dword ptr [edi]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr [edi]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+lea esi,(-4)[edi]
+mov dword ptr (-8)[ebp],esi
+mov edi,dword ptr [edi]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+lea edi,(-4)[edi]
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr [edi]
+mov dword ptr (-4)[ebp],edi
+mov eax,0
+L5:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/init.1bk b/lcc/x86/win32/tst/init.1bk
index 042f3bb..77aff09 100755
--- a/lcc/x86/win32/tst/init.1bk
+++ b/lcc/x86/win32/tst/init.1bk
@@ -1,16 +1,16 @@
- 1 2 3 4
- 5 6
- 7
-if
-for
-else
-while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-1 2 3 if
-4 5 0 for
-6 7 8 else
-9 10 11 while
-0 0 0
+ 1 2 3 4
+ 5 6
+ 7
+if
+for
+else
+while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+1 2 3 if
+4 5 0 for
+6 7 8 else
+9 10 11 while
+0 0 0
diff --git a/lcc/x86/win32/tst/init.2bk b/lcc/x86/win32/tst/init.2bk
index da08062..aafe415 100755
--- a/lcc/x86/win32/tst/init.2bk
+++ b/lcc/x86/win32/tst/init.2bk
@@ -1,3 +1,3 @@
-tst/init.c:36: warning: missing return value
-tst/init.c:49: warning: missing return value
-tst/init.c:59: warning: missing return value
+tst/init.c:36: warning: missing return value
+tst/init.c:49: warning: missing return value
+tst/init.c:59: warning: missing return value
diff --git a/lcc/x86/win32/tst/init.sbk b/lcc/x86/win32/tst/init.sbk
index be83cbd..2c1cc67 100755
--- a/lcc/x86/win32/tst/init.sbk
+++ b/lcc/x86/win32/tst/init.sbk
@@ -1,336 +1,336 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-_DATA segment
-public _words
-align 4
-_words label byte
-dd 1
-dd 2
-dd 3
-db 105
-db 102
-db 0
-db 3 dup (0)
-db 2 dup (0)
-dd 4
-dd 5
-db 4 dup (0)
-db 102
-db 111
-db 114
-db 3 dup (0)
-db 2 dup (0)
-dd 6
-dd 7
-dd 8
-db 101
-db 108
-db 115
-db 101
-db 0
-db 1 dup (0)
-db 2 dup (0)
-dd 9
-dd 10
-dd 11
-db 119
-db 104
-db 105
-db 108
-db 101
-db 1 dup (0)
-db 2 dup (0)
-dd 0
-db 8 dup (0)
-db 8 dup (0)
-public _wordlist
-align 4
-_wordlist label byte
-dd _words
-public _x
-align 4
-_x label byte
-dd 1
-dd 2
-dd 3
-dd 4
-dd 0
-dd 5
-dd 6
-db 12 dup (0)
-dd 7
-db 16 dup (0)
-public _y
-align 4
-_y label byte
-dd _x
-dd _x+20
-dd _x+40
-dd 00H
-public _main
-_DATA ends
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-mov dword ptr (-8)[ebp],0
-jmp L8
-L5:
-mov dword ptr (-4)[ebp],0
-jmp L12
-L9:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (-8)[ebp]
-mov esi,dword ptr (_y)[esi*4]
-mov edi,dword ptr [esi][edi*4]
-push edi
-lea edi,(L13)
-push edi
-call _printf
-add esp,8
-L10:
-inc dword ptr (-4)[ebp]
-L12:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (-8)[ebp]
-mov esi,dword ptr (_y)[esi*4]
-cmp dword ptr [esi][edi*4],0
-jne L9
-lea edi,(L14)
-push edi
-call _printf
-add esp,4
-L6:
-inc dword ptr (-8)[ebp]
-L8:
-mov edi,dword ptr (-8)[ebp]
-mov edi,dword ptr (_y)[edi*4]
-cmp edi,0
-jne L5
-call _f
-add esp,0
-mov edi,dword ptr (_wordlist)
-push edi
-call _g
-add esp,4
-mov eax,0
-L4:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L16 label byte
-dd L17
-dd L18
-dd L19
-dd L20
-dd 00H
-public _f
-_DATA ends
-_TEXT segment
-_f:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-lea edi,(L16)
-mov dword ptr (-4)[ebp],edi
-jmp L24
-L21:
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr [edi]
-push edi
-lea edi,(L25)
-push edi
-call _printf
-add esp,8
-L22:
-mov edi,dword ptr (-4)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-4)[ebp],edi
-L24:
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr [edi]
-cmp edi,0
-jne L21
-mov eax,0
-L15:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _g
-_g:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-jmp L30
-L27:
-mov dword ptr (-4)[ebp],0
-jmp L34
-L31:
-mov edi,dword ptr (-4)[ebp]
-mov esi,dword ptr (20)[ebp]
-mov edi,dword ptr [esi][edi*4]
-push edi
-lea edi,(L35)
-push edi
-call _printf
-add esp,8
-L32:
-inc dword ptr (-4)[ebp]
-L34:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,3
-jb L31
-mov edi,dword ptr (20)[ebp]
-lea edi,(12)[edi]
-push edi
-lea edi,(L25)
-push edi
-call _printf
-add esp,8
-L28:
-mov edi,dword ptr (20)[ebp]
-lea edi,(20)[edi]
-mov dword ptr (20)[ebp],edi
-L30:
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr [edi],0
-jne L27
-call _h
-add esp,0
-mov eax,0
-L26:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _h
-_h:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (-4)[ebp],0
-jmp L40
-L37:
-imul edi,dword ptr (-4)[ebp],20
-lea esi,(_words+12)[edi]
-push esi
-mov esi,dword ptr (_words+8)[edi]
-push esi
-mov esi,dword ptr (_words+4)[edi]
-push esi
-mov edi,dword ptr (_words)[edi]
-push edi
-lea edi,(L41)
-push edi
-call _printf
-add esp,20
-L38:
-inc dword ptr (-4)[ebp]
-L40:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,5
-jb L37
-mov eax,0
-L36:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_TEXT segment
-align 1
-L41 label byte
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 115
-db 10
-db 0
-align 1
-L35 label byte
-db 37
-db 100
-db 32
-db 0
-align 1
-L25 label byte
-db 37
-db 115
-db 10
-db 0
-align 1
-L20 label byte
-db 119
-db 104
-db 105
-db 108
-db 101
-db 0
-align 1
-L19 label byte
-db 101
-db 108
-db 115
-db 101
-db 0
-align 1
-L18 label byte
-db 102
-db 111
-db 114
-db 0
-align 1
-L17 label byte
-db 105
-db 102
-db 0
-align 1
-L14 label byte
-db 10
-db 0
-align 1
-L13 label byte
-db 32
-db 37
-db 100
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+_DATA segment
+public _words
+align 4
+_words label byte
+dd 1
+dd 2
+dd 3
+db 105
+db 102
+db 0
+db 3 dup (0)
+db 2 dup (0)
+dd 4
+dd 5
+db 4 dup (0)
+db 102
+db 111
+db 114
+db 3 dup (0)
+db 2 dup (0)
+dd 6
+dd 7
+dd 8
+db 101
+db 108
+db 115
+db 101
+db 0
+db 1 dup (0)
+db 2 dup (0)
+dd 9
+dd 10
+dd 11
+db 119
+db 104
+db 105
+db 108
+db 101
+db 1 dup (0)
+db 2 dup (0)
+dd 0
+db 8 dup (0)
+db 8 dup (0)
+public _wordlist
+align 4
+_wordlist label byte
+dd _words
+public _x
+align 4
+_x label byte
+dd 1
+dd 2
+dd 3
+dd 4
+dd 0
+dd 5
+dd 6
+db 12 dup (0)
+dd 7
+db 16 dup (0)
+public _y
+align 4
+_y label byte
+dd _x
+dd _x+20
+dd _x+40
+dd 00H
+public _main
+_DATA ends
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+mov dword ptr (-8)[ebp],0
+jmp L8
+L5:
+mov dword ptr (-4)[ebp],0
+jmp L12
+L9:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (-8)[ebp]
+mov esi,dword ptr (_y)[esi*4]
+mov edi,dword ptr [esi][edi*4]
+push edi
+lea edi,(L13)
+push edi
+call _printf
+add esp,8
+L10:
+inc dword ptr (-4)[ebp]
+L12:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (-8)[ebp]
+mov esi,dword ptr (_y)[esi*4]
+cmp dword ptr [esi][edi*4],0
+jne L9
+lea edi,(L14)
+push edi
+call _printf
+add esp,4
+L6:
+inc dword ptr (-8)[ebp]
+L8:
+mov edi,dword ptr (-8)[ebp]
+mov edi,dword ptr (_y)[edi*4]
+cmp edi,0
+jne L5
+call _f
+add esp,0
+mov edi,dword ptr (_wordlist)
+push edi
+call _g
+add esp,4
+mov eax,0
+L4:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L16 label byte
+dd L17
+dd L18
+dd L19
+dd L20
+dd 00H
+public _f
+_DATA ends
+_TEXT segment
+_f:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+lea edi,(L16)
+mov dword ptr (-4)[ebp],edi
+jmp L24
+L21:
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr [edi]
+push edi
+lea edi,(L25)
+push edi
+call _printf
+add esp,8
+L22:
+mov edi,dword ptr (-4)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-4)[ebp],edi
+L24:
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr [edi]
+cmp edi,0
+jne L21
+mov eax,0
+L15:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _g
+_g:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+jmp L30
+L27:
+mov dword ptr (-4)[ebp],0
+jmp L34
+L31:
+mov edi,dword ptr (-4)[ebp]
+mov esi,dword ptr (20)[ebp]
+mov edi,dword ptr [esi][edi*4]
+push edi
+lea edi,(L35)
+push edi
+call _printf
+add esp,8
+L32:
+inc dword ptr (-4)[ebp]
+L34:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,3
+jb L31
+mov edi,dword ptr (20)[ebp]
+lea edi,(12)[edi]
+push edi
+lea edi,(L25)
+push edi
+call _printf
+add esp,8
+L28:
+mov edi,dword ptr (20)[ebp]
+lea edi,(20)[edi]
+mov dword ptr (20)[ebp],edi
+L30:
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr [edi],0
+jne L27
+call _h
+add esp,0
+mov eax,0
+L26:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _h
+_h:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (-4)[ebp],0
+jmp L40
+L37:
+imul edi,dword ptr (-4)[ebp],20
+lea esi,(_words+12)[edi]
+push esi
+mov esi,dword ptr (_words+8)[edi]
+push esi
+mov esi,dword ptr (_words+4)[edi]
+push esi
+mov edi,dword ptr (_words)[edi]
+push edi
+lea edi,(L41)
+push edi
+call _printf
+add esp,20
+L38:
+inc dword ptr (-4)[ebp]
+L40:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,5
+jb L37
+mov eax,0
+L36:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_TEXT segment
+align 1
+L41 label byte
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 115
+db 10
+db 0
+align 1
+L35 label byte
+db 37
+db 100
+db 32
+db 0
+align 1
+L25 label byte
+db 37
+db 115
+db 10
+db 0
+align 1
+L20 label byte
+db 119
+db 104
+db 105
+db 108
+db 101
+db 0
+align 1
+L19 label byte
+db 101
+db 108
+db 115
+db 101
+db 0
+align 1
+L18 label byte
+db 102
+db 111
+db 114
+db 0
+align 1
+L17 label byte
+db 105
+db 102
+db 0
+align 1
+L14 label byte
+db 10
+db 0
+align 1
+L13 label byte
+db 32
+db 37
+db 100
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/limits.1bk b/lcc/x86/win32/tst/limits.1bk
index f0c1dc8..9beee8c 100755
--- a/lcc/x86/win32/tst/limits.1bk
+++ b/lcc/x86/win32/tst/limits.1bk
@@ -1,14 +1,14 @@
-UCHAR_MAX: 000000ff=255
-USHRT_MAX: 0000ffff=65535
-UINT_MAX: ffffffff=-1
-ULONG_MAX: ffffffff=-1
-CHAR_MAX: 0000007f=127
-SCHAR_MAX: 0000007f=127
-SHRT_MAX: 00007fff=32767
-INT_MAX: 7fffffff=2147483647
-LONG_MAX: 7fffffff=2147483647
-CHAR_MIN: ffffff80=-128
-SCHAR_MIN: ffffff80=-128
-SHRT_MIN: ffff8000=-32768
-INT_MIN: 80000000=-2147483648
-LONG_MIN: 80000000=-2147483648
+UCHAR_MAX: 000000ff=255
+USHRT_MAX: 0000ffff=65535
+UINT_MAX: ffffffff=-1
+ULONG_MAX: ffffffff=-1
+CHAR_MAX: 0000007f=127
+SCHAR_MAX: 0000007f=127
+SHRT_MAX: 00007fff=32767
+INT_MAX: 7fffffff=2147483647
+LONG_MAX: 7fffffff=2147483647
+CHAR_MIN: ffffff80=-128
+SCHAR_MIN: ffffff80=-128
+SHRT_MIN: ffff8000=-32768
+INT_MIN: 80000000=-2147483648
+LONG_MIN: 80000000=-2147483648
diff --git a/lcc/x86/win32/tst/limits.sbk b/lcc/x86/win32/tst/limits.sbk
index f041121..5ed0147 100755
--- a/lcc/x86/win32/tst/limits.sbk
+++ b/lcc/x86/win32/tst/limits.sbk
@@ -1,414 +1,414 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _main
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-push 255
-push 255
-lea edi,(L2)
-push edi
-call _printf
-add esp,12
-push 65535
-push 65535
-lea edi,(L3)
-push edi
-call _printf
-add esp,12
-push 0ffffffffH
-push 0ffffffffH
-lea edi,(L4)
-push edi
-call _printf
-add esp,12
-push 0ffffffffH
-push 0ffffffffH
-lea edi,(L5)
-push edi
-call _printf
-add esp,12
-push 127
-push 127
-lea edi,(L6)
-push edi
-call _printf
-add esp,12
-push 127
-push 127
-lea edi,(L7)
-push edi
-call _printf
-add esp,12
-push 32767
-push 32767
-lea edi,(L8)
-push edi
-call _printf
-add esp,12
-push 2147483647
-push 2147483647
-lea edi,(L9)
-push edi
-call _printf
-add esp,12
-push 2147483647
-push 2147483647
-lea edi,(L10)
-push edi
-call _printf
-add esp,12
-push -128
-push -128
-lea edi,(L11)
-push edi
-call _printf
-add esp,12
-push -128
-push -128
-lea edi,(L12)
-push edi
-call _printf
-add esp,12
-push -32768
-push -32768
-lea edi,(L13)
-push edi
-call _printf
-add esp,12
-push -2147483648
-push -2147483648
-lea edi,(L14)
-push edi
-call _printf
-add esp,12
-push -2147483648
-push -2147483648
-lea edi,(L15)
-push edi
-call _printf
-add esp,12
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_TEXT segment
-align 1
-L15 label byte
-db 76
-db 79
-db 78
-db 71
-db 95
-db 77
-db 73
-db 78
-db 58
-db 9
-db 37
-db 48
-db 56
-db 108
-db 120
-db 61
-db 37
-db 108
-db 100
-db 10
-db 0
-align 1
-L14 label byte
-db 73
-db 78
-db 84
-db 95
-db 77
-db 73
-db 78
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L13 label byte
-db 83
-db 72
-db 82
-db 84
-db 95
-db 77
-db 73
-db 78
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L12 label byte
-db 83
-db 67
-db 72
-db 65
-db 82
-db 95
-db 77
-db 73
-db 78
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L11 label byte
-db 67
-db 72
-db 65
-db 82
-db 95
-db 77
-db 73
-db 78
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L10 label byte
-db 76
-db 79
-db 78
-db 71
-db 95
-db 77
-db 65
-db 88
-db 58
-db 9
-db 37
-db 48
-db 56
-db 108
-db 120
-db 61
-db 37
-db 108
-db 100
-db 10
-db 0
-align 1
-L9 label byte
-db 73
-db 78
-db 84
-db 95
-db 77
-db 65
-db 88
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L8 label byte
-db 83
-db 72
-db 82
-db 84
-db 95
-db 77
-db 65
-db 88
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L7 label byte
-db 83
-db 67
-db 72
-db 65
-db 82
-db 95
-db 77
-db 65
-db 88
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L6 label byte
-db 67
-db 72
-db 65
-db 82
-db 95
-db 77
-db 65
-db 88
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L5 label byte
-db 85
-db 76
-db 79
-db 78
-db 71
-db 95
-db 77
-db 65
-db 88
-db 58
-db 9
-db 37
-db 48
-db 56
-db 108
-db 120
-db 61
-db 37
-db 108
-db 100
-db 10
-db 0
-align 1
-L4 label byte
-db 85
-db 73
-db 78
-db 84
-db 95
-db 77
-db 65
-db 88
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L3 label byte
-db 85
-db 83
-db 72
-db 82
-db 84
-db 95
-db 77
-db 65
-db 88
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-align 1
-L2 label byte
-db 85
-db 67
-db 72
-db 65
-db 82
-db 95
-db 77
-db 65
-db 88
-db 58
-db 9
-db 37
-db 48
-db 56
-db 120
-db 61
-db 37
-db 100
-db 10
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _main
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+push 255
+push 255
+lea edi,(L2)
+push edi
+call _printf
+add esp,12
+push 65535
+push 65535
+lea edi,(L3)
+push edi
+call _printf
+add esp,12
+push 0ffffffffH
+push 0ffffffffH
+lea edi,(L4)
+push edi
+call _printf
+add esp,12
+push 0ffffffffH
+push 0ffffffffH
+lea edi,(L5)
+push edi
+call _printf
+add esp,12
+push 127
+push 127
+lea edi,(L6)
+push edi
+call _printf
+add esp,12
+push 127
+push 127
+lea edi,(L7)
+push edi
+call _printf
+add esp,12
+push 32767
+push 32767
+lea edi,(L8)
+push edi
+call _printf
+add esp,12
+push 2147483647
+push 2147483647
+lea edi,(L9)
+push edi
+call _printf
+add esp,12
+push 2147483647
+push 2147483647
+lea edi,(L10)
+push edi
+call _printf
+add esp,12
+push -128
+push -128
+lea edi,(L11)
+push edi
+call _printf
+add esp,12
+push -128
+push -128
+lea edi,(L12)
+push edi
+call _printf
+add esp,12
+push -32768
+push -32768
+lea edi,(L13)
+push edi
+call _printf
+add esp,12
+push -2147483648
+push -2147483648
+lea edi,(L14)
+push edi
+call _printf
+add esp,12
+push -2147483648
+push -2147483648
+lea edi,(L15)
+push edi
+call _printf
+add esp,12
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_TEXT segment
+align 1
+L15 label byte
+db 76
+db 79
+db 78
+db 71
+db 95
+db 77
+db 73
+db 78
+db 58
+db 9
+db 37
+db 48
+db 56
+db 108
+db 120
+db 61
+db 37
+db 108
+db 100
+db 10
+db 0
+align 1
+L14 label byte
+db 73
+db 78
+db 84
+db 95
+db 77
+db 73
+db 78
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L13 label byte
+db 83
+db 72
+db 82
+db 84
+db 95
+db 77
+db 73
+db 78
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L12 label byte
+db 83
+db 67
+db 72
+db 65
+db 82
+db 95
+db 77
+db 73
+db 78
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L11 label byte
+db 67
+db 72
+db 65
+db 82
+db 95
+db 77
+db 73
+db 78
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L10 label byte
+db 76
+db 79
+db 78
+db 71
+db 95
+db 77
+db 65
+db 88
+db 58
+db 9
+db 37
+db 48
+db 56
+db 108
+db 120
+db 61
+db 37
+db 108
+db 100
+db 10
+db 0
+align 1
+L9 label byte
+db 73
+db 78
+db 84
+db 95
+db 77
+db 65
+db 88
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L8 label byte
+db 83
+db 72
+db 82
+db 84
+db 95
+db 77
+db 65
+db 88
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L7 label byte
+db 83
+db 67
+db 72
+db 65
+db 82
+db 95
+db 77
+db 65
+db 88
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L6 label byte
+db 67
+db 72
+db 65
+db 82
+db 95
+db 77
+db 65
+db 88
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L5 label byte
+db 85
+db 76
+db 79
+db 78
+db 71
+db 95
+db 77
+db 65
+db 88
+db 58
+db 9
+db 37
+db 48
+db 56
+db 108
+db 120
+db 61
+db 37
+db 108
+db 100
+db 10
+db 0
+align 1
+L4 label byte
+db 85
+db 73
+db 78
+db 84
+db 95
+db 77
+db 65
+db 88
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L3 label byte
+db 85
+db 83
+db 72
+db 82
+db 84
+db 95
+db 77
+db 65
+db 88
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+align 1
+L2 label byte
+db 85
+db 67
+db 72
+db 65
+db 82
+db 95
+db 77
+db 65
+db 88
+db 58
+db 9
+db 37
+db 48
+db 56
+db 120
+db 61
+db 37
+db 100
+db 10
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/paranoia.1bk b/lcc/x86/win32/tst/paranoia.1bk
index e25ef14..5d8432b 100755
--- a/lcc/x86/win32/tst/paranoia.1bk
+++ b/lcc/x86/win32/tst/paranoia.1bk
@@ -1,179 +1,179 @@
-Lest this program stop prematurely, i.e. before displaying
-
- `END OF TEST',
-
-try to persuade the computer NOT to terminate execution when an
-error like Over/Underflow or Division by Zero occurs, but rather
-to persevere with a surrogate value after, perhaps, displaying some
-warning. If persuasion avails naught, don't despair but run this
-program anyway to see how many milestones it passes, and then
-amend it to make further progress.
-
-Answer questions with Y, y, N or n (unless otherwise indicated).
-
-
-Diagnosis resumes after milestone Number 0 Page: 1
-
-Users are invited to help debug and augment this program so it will
-cope with unanticipated and newly uncovered arithmetic pathologies.
-
-Please send suggestions and interesting results to
- Richard Karpinski
- Computer Center U-76
- University of California
- San Francisco, CA 94143-0704, USA
-
-In doing so, please include the following information:
- Precision: double;
- Version: 10 February 1989;
- Computer:
-
- Compiler:
-
- Optimization level:
-
- Other relevant compiler options:
-
-Diagnosis resumes after milestone Number 1 Page: 2
-
-Running this program should reveal these characteristics:
- Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
- Precision = number of significant digits carried.
- U2 = Radix/Radix^Precision = One Ulp
- (OneUlpnit in the Last Place) of 1.000xxx .
- U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
- Adequacy of guard digits for Mult., Div. and Subt.
- Whether arithmetic is chopped, correctly rounded, or something else
- for Mult., Div., Add/Subt. and Sqrt.
- Whether a Sticky Bit used correctly for rounding.
- UnderflowThreshold = an underflow threshold.
- E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
- V = an overflow threshold, roughly.
- V0 tells, roughly, whether Infinity is represented.
- Comparisions are checked for consistency with subtraction
- and for contamination with pseudo-zeros.
- Sqrt is tested. Y^X is not tested.
- Extra-precise subexpressions are revealed but NOT YET tested.
- Decimal-Binary conversion is NOT YET tested for accuracy.
-
-Diagnosis resumes after milestone Number 2 Page: 3
-
-The program attempts to discriminate among
- FLAWs, like lack of a sticky bit,
- Serious DEFECTs, like lack of a guard digit, and
- FAILUREs, like 2+2 == 5 .
-Failures may confound subsequent diagnoses.
-
-The diagnostic capabilities of this program go beyond an earlier
-program called `MACHAR', which can be found at the end of the
-book `Software Manual for the Elementary Functions' (1980) by
-W. J. Cody and W. Waite. Although both programs try to discover
-the Radix, Precision and range (over/underflow thresholds)
-of the arithmetic, this program tries to cope with a wider variety
-of pathologies, and to say how well the arithmetic is implemented.
-
-The program is based upon a conventional radix representation for
-floating-point numbers, but also allows logarithmic encoding
-as used by certain early WANG machines.
-
-BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
-see source comments for more history.
-
-Diagnosis resumes after milestone Number 3 Page: 4
-
-Program is now RUNNING tests on small integers:
--1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
-
-Searching for Radix and Precision.
-Radix = 2.000000 .
-Closest relative separation found is U1 = 1.1102230e-016 .
-
-Recalculating radix and precision
- confirms closest relative separation U1 .
-Radix confirmed.
-The number of significant digits of the Radix is 53.000000 .
-
-Diagnosis resumes after milestone Number 30 Page: 5
-
-Subtraction appears to be normalized, as it should be.
-Checking for guard digit in *, /, and -.
- *, /, and - appear to have guard digits, as they should.
-
-Diagnosis resumes after milestone Number 40 Page: 6
-
-Checking rounding on multiply, divide and add/subtract.
-Multiplication appears to round correctly.
-Division appears to round correctly.
-Addition/Subtraction appears to round correctly.
-Checking for sticky bit.
-Sticky bit apparently used correctly.
-
-Does Multiplication commute? Testing on 20 random pairs.
- No failures found in 20 integer pairs.
-
-Running test of square root(x).
-Testing if sqrt(X * X) == X for 20 Integers X.
-Test for sqrt monotonicity.
-sqrt has passed a test for Monotonicity.
-Testing whether sqrt is rounded or chopped.
-Square root appears to be correctly rounded.
-
-Diagnosis resumes after milestone Number 90 Page: 7
-
-Testing powers Z^i for small Integers Z and i.
-... no discrepancis found.
-
-Seeking Underflow thresholds UfThold and E0.
-Smallest strictly positive number found is E0 = 4.94066e-324 .
-Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
-What the machine gets for (Z + Z) / Z is 2.00000000000000000e+000 .
-This is O.K., provided Over/Underflow has NOT just been signaled.
-Underflow is gradual; it incurs Absolute Error =
-(roundoff in UfThold) < E0.
-The Underflow threshold is 2.22507385850720190e-308, below which
-calculation may suffer larger Relative error than merely roundoff.
-Since underflow occurs below the threshold
-UfThold = (2.00000000000000000e+000) ^ (-1.02200000000000000e+003)
-only underflow should afflict the expression
- (2.00000000000000000e+000) ^ (-1.02200000000000000e+003);
-actually calculating yields: 0.00000000000000000e+000 .
-This computed value is O.K.
-
-Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065220e+000 as X -> 1.
-Accuracy seems adequate.
-Testing powers Z^Q at four nearly extreme values.
- ... no discrepancies found.
-
-
-Diagnosis resumes after milestone Number 160 Page: 8
-
-Searching for Overflow threshold:
-This may generate an error.
-Can `Z = -Y' overflow?
-Trying it on Y = -1.#INF0000000000000e+000 .
-Seems O.K.
-Overflow threshold is V = 1.79769313486231570e+308 .
-Overflow saturates at V0 = 1.#INF0000000000000e+000 .
-No Overflow should be signaled for V * 1 = 1.79769313486231570e+308
- nor for V / 1 = 1.79769313486231570e+308 .
-Any overflow signal separating this * from the one
-above is a DEFECT.
-
-
-Diagnosis resumes after milestone Number 190 Page: 9
-
-
-What message and/or values does Division by Zero produce?
- Trying to compute 1 / 0 produces ... 1.#INF000e+000 .
-
- Trying to compute 0 / 0 produces ... -1.#IND000e+000 .
-
-Diagnosis resumes after milestone Number 220 Page: 10
-
-
-
-No failures, defects nor flaws have been discovered.
-Rounding appears to conform to the proposed IEEE standard P754,
-except for possibly Double Rounding during Gradual Underflow.
-The arithmetic diagnosed appears to be Excellent!
-END OF TEST.
+Lest this program stop prematurely, i.e. before displaying
+
+ `END OF TEST',
+
+try to persuade the computer NOT to terminate execution when an
+error like Over/Underflow or Division by Zero occurs, but rather
+to persevere with a surrogate value after, perhaps, displaying some
+warning. If persuasion avails naught, don't despair but run this
+program anyway to see how many milestones it passes, and then
+amend it to make further progress.
+
+Answer questions with Y, y, N or n (unless otherwise indicated).
+
+
+Diagnosis resumes after milestone Number 0 Page: 1
+
+Users are invited to help debug and augment this program so it will
+cope with unanticipated and newly uncovered arithmetic pathologies.
+
+Please send suggestions and interesting results to
+ Richard Karpinski
+ Computer Center U-76
+ University of California
+ San Francisco, CA 94143-0704, USA
+
+In doing so, please include the following information:
+ Precision: double;
+ Version: 10 February 1989;
+ Computer:
+
+ Compiler:
+
+ Optimization level:
+
+ Other relevant compiler options:
+
+Diagnosis resumes after milestone Number 1 Page: 2
+
+Running this program should reveal these characteristics:
+ Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
+ Precision = number of significant digits carried.
+ U2 = Radix/Radix^Precision = One Ulp
+ (OneUlpnit in the Last Place) of 1.000xxx .
+ U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
+ Adequacy of guard digits for Mult., Div. and Subt.
+ Whether arithmetic is chopped, correctly rounded, or something else
+ for Mult., Div., Add/Subt. and Sqrt.
+ Whether a Sticky Bit used correctly for rounding.
+ UnderflowThreshold = an underflow threshold.
+ E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
+ V = an overflow threshold, roughly.
+ V0 tells, roughly, whether Infinity is represented.
+ Comparisions are checked for consistency with subtraction
+ and for contamination with pseudo-zeros.
+ Sqrt is tested. Y^X is not tested.
+ Extra-precise subexpressions are revealed but NOT YET tested.
+ Decimal-Binary conversion is NOT YET tested for accuracy.
+
+Diagnosis resumes after milestone Number 2 Page: 3
+
+The program attempts to discriminate among
+ FLAWs, like lack of a sticky bit,
+ Serious DEFECTs, like lack of a guard digit, and
+ FAILUREs, like 2+2 == 5 .
+Failures may confound subsequent diagnoses.
+
+The diagnostic capabilities of this program go beyond an earlier
+program called `MACHAR', which can be found at the end of the
+book `Software Manual for the Elementary Functions' (1980) by
+W. J. Cody and W. Waite. Although both programs try to discover
+the Radix, Precision and range (over/underflow thresholds)
+of the arithmetic, this program tries to cope with a wider variety
+of pathologies, and to say how well the arithmetic is implemented.
+
+The program is based upon a conventional radix representation for
+floating-point numbers, but also allows logarithmic encoding
+as used by certain early WANG machines.
+
+BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
+see source comments for more history.
+
+Diagnosis resumes after milestone Number 3 Page: 4
+
+Program is now RUNNING tests on small integers:
+-1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
+
+Searching for Radix and Precision.
+Radix = 2.000000 .
+Closest relative separation found is U1 = 1.1102230e-016 .
+
+Recalculating radix and precision
+ confirms closest relative separation U1 .
+Radix confirmed.
+The number of significant digits of the Radix is 53.000000 .
+
+Diagnosis resumes after milestone Number 30 Page: 5
+
+Subtraction appears to be normalized, as it should be.
+Checking for guard digit in *, /, and -.
+ *, /, and - appear to have guard digits, as they should.
+
+Diagnosis resumes after milestone Number 40 Page: 6
+
+Checking rounding on multiply, divide and add/subtract.
+Multiplication appears to round correctly.
+Division appears to round correctly.
+Addition/Subtraction appears to round correctly.
+Checking for sticky bit.
+Sticky bit apparently used correctly.
+
+Does Multiplication commute? Testing on 20 random pairs.
+ No failures found in 20 integer pairs.
+
+Running test of square root(x).
+Testing if sqrt(X * X) == X for 20 Integers X.
+Test for sqrt monotonicity.
+sqrt has passed a test for Monotonicity.
+Testing whether sqrt is rounded or chopped.
+Square root appears to be correctly rounded.
+
+Diagnosis resumes after milestone Number 90 Page: 7
+
+Testing powers Z^i for small Integers Z and i.
+... no discrepancis found.
+
+Seeking Underflow thresholds UfThold and E0.
+Smallest strictly positive number found is E0 = 4.94066e-324 .
+Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
+What the machine gets for (Z + Z) / Z is 2.00000000000000000e+000 .
+This is O.K., provided Over/Underflow has NOT just been signaled.
+Underflow is gradual; it incurs Absolute Error =
+(roundoff in UfThold) < E0.
+The Underflow threshold is 2.22507385850720190e-308, below which
+calculation may suffer larger Relative error than merely roundoff.
+Since underflow occurs below the threshold
+UfThold = (2.00000000000000000e+000) ^ (-1.02200000000000000e+003)
+only underflow should afflict the expression
+ (2.00000000000000000e+000) ^ (-1.02200000000000000e+003);
+actually calculating yields: 0.00000000000000000e+000 .
+This computed value is O.K.
+
+Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065220e+000 as X -> 1.
+Accuracy seems adequate.
+Testing powers Z^Q at four nearly extreme values.
+ ... no discrepancies found.
+
+
+Diagnosis resumes after milestone Number 160 Page: 8
+
+Searching for Overflow threshold:
+This may generate an error.
+Can `Z = -Y' overflow?
+Trying it on Y = -1.#INF0000000000000e+000 .
+Seems O.K.
+Overflow threshold is V = 1.79769313486231570e+308 .
+Overflow saturates at V0 = 1.#INF0000000000000e+000 .
+No Overflow should be signaled for V * 1 = 1.79769313486231570e+308
+ nor for V / 1 = 1.79769313486231570e+308 .
+Any overflow signal separating this * from the one
+above is a DEFECT.
+
+
+Diagnosis resumes after milestone Number 190 Page: 9
+
+
+What message and/or values does Division by Zero produce?
+ Trying to compute 1 / 0 produces ... 1.#INF000e+000 .
+
+ Trying to compute 0 / 0 produces ... -1.#IND000e+000 .
+
+Diagnosis resumes after milestone Number 220 Page: 10
+
+
+
+No failures, defects nor flaws have been discovered.
+Rounding appears to conform to the proposed IEEE standard P754,
+except for possibly Double Rounding during Gradual Underflow.
+The arithmetic diagnosed appears to be Excellent!
+END OF TEST.
diff --git a/lcc/x86/win32/tst/paranoia.2bk b/lcc/x86/win32/tst/paranoia.2bk
index f6ddf16..2718174 100755
--- a/lcc/x86/win32/tst/paranoia.2bk
+++ b/lcc/x86/win32/tst/paranoia.2bk
@@ -1,16 +1,16 @@
-tst/paranoia.c:1867: warning: missing return value
-tst/paranoia.c:1874: warning: missing return value
-tst/paranoia.c:1884: warning: missing return value
-tst/paranoia.c:1924: warning: missing return value
-tst/paranoia.c:1939: warning: missing return value
-tst/paranoia.c:1956: warning: missing return value
-tst/paranoia.c:1975: warning: missing return value
-tst/paranoia.c:1988: warning: missing return value
-tst/paranoia.c:1995: warning: missing return value
-tst/paranoia.c:2055: warning: missing return value
-tst/paranoia.c:2062: warning: missing return value
-tst/paranoia.c:2070: warning: missing return value
-tst/paranoia.c:2087: warning: missing return value
-tst/paranoia.c:2115: warning: missing return value
-tst/paranoia.c:2144: warning: missing return value
-tst/paranoia.c:2173: warning: missing return value
+tst/paranoia.c:1867: warning: missing return value
+tst/paranoia.c:1874: warning: missing return value
+tst/paranoia.c:1884: warning: missing return value
+tst/paranoia.c:1924: warning: missing return value
+tst/paranoia.c:1939: warning: missing return value
+tst/paranoia.c:1956: warning: missing return value
+tst/paranoia.c:1975: warning: missing return value
+tst/paranoia.c:1988: warning: missing return value
+tst/paranoia.c:1995: warning: missing return value
+tst/paranoia.c:2055: warning: missing return value
+tst/paranoia.c:2062: warning: missing return value
+tst/paranoia.c:2070: warning: missing return value
+tst/paranoia.c:2087: warning: missing return value
+tst/paranoia.c:2115: warning: missing return value
+tst/paranoia.c:2144: warning: missing return value
+tst/paranoia.c:2173: warning: missing return value
diff --git a/lcc/x86/win32/tst/paranoia.sbk b/lcc/x86/win32/tst/paranoia.sbk
index bcce8d3..96fbf11 100755
--- a/lcc/x86/win32/tst/paranoia.sbk
+++ b/lcc/x86/win32/tst/paranoia.sbk
@@ -1,20480 +1,20480 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-_DATA segment
-public _Zero
-align 4
-_Zero label byte
-dd 00H
-dd 00H
-public _Half
-align 4
-_Half label byte
-dd 00H
-dd 03fe00000H
-public _One
-align 4
-_One label byte
-dd 00H
-dd 03ff00000H
-public _Two
-align 4
-_Two label byte
-dd 00H
-dd 040000000H
-public _Three
-align 4
-_Three label byte
-dd 00H
-dd 040080000H
-public _Four
-align 4
-_Four label byte
-dd 00H
-dd 040100000H
-public _Five
-align 4
-_Five label byte
-dd 00H
-dd 040140000H
-public _Eight
-align 4
-_Eight label byte
-dd 00H
-dd 040200000H
-public _Nine
-align 4
-_Nine label byte
-dd 00H
-dd 040220000H
-public _TwentySeven
-align 4
-_TwentySeven label byte
-dd 00H
-dd 0403b0000H
-public _ThirtyTwo
-align 4
-_ThirtyTwo label byte
-dd 00H
-dd 040400000H
-public _TwoForty
-align 4
-_TwoForty label byte
-dd 00H
-dd 0406e0000H
-public _MinusOne
-align 4
-_MinusOne label byte
-dd 00H
-dd 0bff00000H
-public _OneAndHalf
-align 4
-_OneAndHalf label byte
-dd 00H
-dd 03ff80000H
-public _NoTrials
-align 4
-_NoTrials label byte
-dd 20
-public _sigfpe
-_DATA ends
-_TEXT segment
-_sigfpe:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-inc dword ptr (_fpecount)
-lea edi,(L2)
-push edi
-call _printf
-add esp,4
-lea edi,(__iob+32)
-push edi
-call _fflush
-add esp,4
-mov edi,dword ptr (_sigsave)
-cmp edi,0
-je L4
-mov edi,dword ptr (_sigsave)
-push edi
-push 8
-call _signal
-add esp,8
-mov dword ptr (_sigsave),0
-push 1
-lea edi,(_ovfl_buf)
-push edi
-call _longjmp
-add esp,8
-L4:
-call _abort
-add esp,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L757 label byte
-dd L758
-dd L759
-dd L760
-dd L761
-public _main
-_DATA ends
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,1684
-fld qword ptr (L7)
-fstp qword ptr (_Zero)
-fld qword ptr (L8)
-fstp qword ptr (_One)
-fld qword ptr (_One)
-fstp qword ptr (-8)[ebp]
-fld qword ptr (-8)[ebp]
-fadd qword ptr (-8)[ebp]
-fstp qword ptr (_Two)
-fld qword ptr (_Two)
-fstp qword ptr (-16)[ebp]
-fld qword ptr (-16)[ebp]
-fadd qword ptr (-8)[ebp]
-fstp qword ptr (_Three)
-fld qword ptr (_Three)
-fstp qword ptr (-24)[ebp]
-fld qword ptr (-24)[ebp]
-fadd qword ptr (-8)[ebp]
-fstp qword ptr (_Four)
-fld qword ptr (_Four)
-fstp qword ptr (-32)[ebp]
-fld qword ptr (-32)[ebp]
-fadd qword ptr (-8)[ebp]
-fstp qword ptr (_Five)
-fld qword ptr (-32)[ebp]
-fadd qword ptr (-32)[ebp]
-fstp qword ptr (_Eight)
-fld qword ptr (-24)[ebp]
-fmul qword ptr (-24)[ebp]
-fstp qword ptr (_Nine)
-fld qword ptr (_Nine)
-fmul qword ptr (-24)[ebp]
-fstp qword ptr (_TwentySeven)
-fld qword ptr (-32)[ebp]
-fmul qword ptr (_Eight)
-fstp qword ptr (_ThirtyTwo)
-fld qword ptr (-32)[ebp]
-fmul qword ptr (_Five)
-fmul qword ptr (-24)[ebp]
-fmul qword ptr (-32)[ebp]
-fstp qword ptr (_TwoForty)
-fld qword ptr (-8)[ebp]
-fchs
-fstp qword ptr (_MinusOne)
-fld qword ptr (-8)[ebp]
-fdiv qword ptr (-16)[ebp]
-fstp qword ptr (_Half)
-fld qword ptr (-8)[ebp]
-fadd qword ptr (_Half)
-fstp qword ptr (_OneAndHalf)
-mov dword ptr (_ErrCnt),0
-mov dword ptr (_ErrCnt+4),0
-mov dword ptr (_ErrCnt+8),0
-mov dword ptr (_ErrCnt+12),0
-mov dword ptr (_PageNo),1
-mov dword ptr (_Milestone),0
-lea edi,(_sigfpe)
-push edi
-push 8
-call _signal
-add esp,8
-call _Instructions
-add esp,0
-call _Pause
-add esp,0
-call _Heading
-add esp,0
-call _Pause
-add esp,0
-call _Characteristics
-add esp,0
-call _Pause
-add esp,0
-call _History
-add esp,0
-call _Pause
-add esp,0
-mov dword ptr (_Milestone),7
-lea edi,(L12)
-push edi
-call _printf
-add esp,4
-lea edi,(L14)
-push edi
-fld qword ptr (_Zero)
-fadd qword ptr (_Zero)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L15
-fld qword ptr (_One)
-fsub qword ptr (_One)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L15
-fld qword ptr (_Zero)
-fcomp qword ptr (_One)
-fstsw ax
-sahf
-jae L15
-fld qword ptr (_One)
-fadd qword ptr (_One)
-fld qword ptr (_Two)
-fcompp
-fstsw ax
-sahf
-jne L15
-mov dword ptr (-36)[ebp],1
-jmp L16
-L15:
-mov dword ptr (-36)[ebp],0
-L16:
-mov edi,dword ptr (-36)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (_Zero)
-fchs
-fstp qword ptr (_Z)
-fld qword ptr (L7)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-je L17
-inc dword ptr (_ErrCnt)
-lea edi,(L19)
-push edi
-call _printf
-add esp,4
-fld qword ptr (L20)
-fstp qword ptr (_U1)
-fld qword ptr (L8)
-fstp qword ptr (_Radix)
-call _TstPtUf
-add esp,0
-L17:
-lea edi,(L22)
-push edi
-fld qword ptr (_Two)
-fadd qword ptr (_One)
-fcomp qword ptr (_Three)
-fstsw ax
-sahf
-jne L23
-fld qword ptr (_Three)
-fadd qword ptr (_One)
-fcomp qword ptr (_Four)
-fstsw ax
-sahf
-jne L23
-fld qword ptr (_Four)
-fld qword ptr (_Two)
-fld qword ptr (_Two)
-fchs
-fmulp st(1),st
-faddp st(1),st
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L23
-fld qword ptr (_Four)
-fsub qword ptr (_Three)
-fsub qword ptr (_One)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L23
-mov dword ptr (-56)[ebp],1
-jmp L24
-L23:
-mov dword ptr (-56)[ebp],0
-L24:
-mov edi,dword ptr (-56)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (L7)
-fsub qword ptr (_One)
-fcomp qword ptr (_MinusOne)
-fstsw ax
-sahf
-jne L27
-fld qword ptr (_MinusOne)
-fadd qword ptr (_One)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L27
-fld qword ptr (_One)
-fadd qword ptr (_MinusOne)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L27
-fld qword ptr (_One)
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-132)[ebp]
-fld qword ptr (_MinusOne)
-fadd qword ptr (-132)[ebp]
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L27
-fld qword ptr (_MinusOne)
-fld qword ptr (_MinusOne)
-fmul qword ptr (_MinusOne)
-faddp st(1),st
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L27
-mov dword ptr (-100)[ebp],1
-jmp L28
-L27:
-mov dword ptr (-100)[ebp],0
-L28:
-lea edi,(L26)
-push edi
-mov edi,dword ptr (-100)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-lea edi,(L30)
-push edi
-fld qword ptr (_Half)
-fadd qword ptr (_MinusOne)
-fadd qword ptr (_Half)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L31
-mov dword ptr (-152)[ebp],1
-jmp L32
-L31:
-mov dword ptr (-152)[ebp],0
-L32:
-mov edi,dword ptr (-152)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-mov dword ptr (_Milestone),10
-lea edi,(L34)
-push edi
-fld qword ptr (_Three)
-fmul qword ptr (_Three)
-fcomp qword ptr (_Nine)
-fstsw ax
-sahf
-jne L35
-fld qword ptr (_Nine)
-fmul qword ptr (_Three)
-fcomp qword ptr (_TwentySeven)
-fstsw ax
-sahf
-jne L35
-fld qword ptr (_Four)
-fadd qword ptr (_Four)
-fcomp qword ptr (_Eight)
-fstsw ax
-sahf
-jne L35
-fld qword ptr (_Eight)
-fmul qword ptr (_Four)
-fcomp qword ptr (_ThirtyTwo)
-fstsw ax
-sahf
-jne L35
-fld qword ptr (_ThirtyTwo)
-fsub qword ptr (_TwentySeven)
-fsub qword ptr (_Four)
-fsub qword ptr (_One)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L35
-mov dword ptr (-164)[ebp],1
-jmp L36
-L35:
-mov dword ptr (-164)[ebp],0
-L36:
-mov edi,dword ptr (-164)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-lea edi,(L38)
-push edi
-fld qword ptr (_Four)
-fadd qword ptr (_One)
-fcomp qword ptr (_Five)
-fstsw ax
-sahf
-jne L39
-fld qword ptr (_Four)
-fmul qword ptr (_Five)
-fmul qword ptr (_Three)
-fmul qword ptr (_Four)
-fcomp qword ptr (_TwoForty)
-fstsw ax
-sahf
-jne L39
-fld qword ptr (_TwoForty)
-fdiv qword ptr (_Three)
-fld qword ptr (_Four)
-fmul qword ptr (_Four)
-fmul qword ptr (_Five)
-fsubp st(1),st
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L39
-fld qword ptr (_TwoForty)
-fdiv qword ptr (_Four)
-fld qword ptr (_Five)
-fmul qword ptr (_Three)
-fmul qword ptr (_Four)
-fsubp st(1),st
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L39
-fld qword ptr (_TwoForty)
-fdiv qword ptr (_Five)
-fld qword ptr (_Four)
-fmul qword ptr (_Three)
-fmul qword ptr (_Four)
-fsubp st(1),st
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L39
-mov dword ptr (-216)[ebp],1
-jmp L40
-L39:
-mov dword ptr (-216)[ebp],0
-L40:
-mov edi,dword ptr (-216)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-cmp dword ptr (_ErrCnt),0
-jne L41
-lea edi,(L43)
-push edi
-call _printf
-add esp,4
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-L41:
-lea edi,(L45)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_One)
-fstp qword ptr (_W)
-L46:
-fld qword ptr (_W)
-fstp qword ptr (-264)[ebp]
-fld qword ptr (-264)[ebp]
-fadd qword ptr (-264)[ebp]
-fstp qword ptr (_W)
-fld qword ptr (_W)
-fstp qword ptr (-272)[ebp]
-fld qword ptr (-272)[ebp]
-fadd qword ptr (_One)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fsub qword ptr (-272)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fsub qword ptr (_One)
-fstp qword ptr (_Y)
-L47:
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-264)[ebp]
-fld qword ptr (_MinusOne)
-fadd qword ptr (-264)[ebp]
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-ja L46
-fld qword ptr (_Zero)
-fstp qword ptr (_Precision)
-fld qword ptr (_One)
-fstp qword ptr (_Y)
-L49:
-fld qword ptr (_Y)
-fstp qword ptr (-280)[ebp]
-fld qword ptr (_W)
-fadd qword ptr (-280)[ebp]
-fstp qword ptr (_Radix)
-fld qword ptr (-280)[ebp]
-fadd qword ptr (-280)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (_Radix)
-fsub qword ptr (_W)
-fstp qword ptr (_Radix)
-L50:
-fld qword ptr (_Zero)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-je L49
-fld qword ptr (_Two)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-jbe L52
-fld qword ptr (_One)
-fstp qword ptr (_Radix)
-L52:
-fld qword ptr (_Radix)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L54)
-push edi
-call _printf
-add esp,12
-fld qword ptr (L8)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-je L55
-fld qword ptr (_One)
-fstp qword ptr (_W)
-L57:
-fld qword ptr (_Precision)
-fadd qword ptr (_One)
-fstp qword ptr (_Precision)
-fld qword ptr (_W)
-fmul qword ptr (_Radix)
-fstp qword ptr (_W)
-fld qword ptr (_W)
-fadd qword ptr (_One)
-fstp qword ptr (_Y)
-L58:
-fld qword ptr (_Y)
-fsub qword ptr (_W)
-fld qword ptr (_One)
-fcompp
-fstsw ax
-sahf
-je L57
-L55:
-fld qword ptr (_One)
-fdiv qword ptr (_W)
-fstp qword ptr (_U1)
-fld qword ptr (_U1)
-fstp qword ptr (-272)[ebp]
-fld qword ptr (_Radix)
-fmul qword ptr (-272)[ebp]
-fstp qword ptr (_U2)
-fld qword ptr (-272)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L60)
-push edi
-call _printf
-add esp,12
-lea edi,(L61)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Radix)
-fstp qword ptr (_E0)
-fld qword ptr (_U1)
-fstp qword ptr (_E1)
-fld qword ptr (_U2)
-fstp qword ptr (_E9)
-fld qword ptr (_Precision)
-fstp qword ptr (_E3)
-fld qword ptr (_Four)
-fdiv qword ptr (_Three)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fsub qword ptr (_One)
-fstp qword ptr (_Third)
-fld qword ptr (_Third)
-fstp qword ptr (-280)[ebp]
-fld qword ptr (_Half)
-fsub qword ptr (-280)[ebp]
-fstp qword ptr (_F6)
-fld qword ptr (_F6)
-fstp qword ptr (-288)[ebp]
-fld qword ptr (-288)[ebp]
-fadd qword ptr (-288)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fsub qword ptr (-280)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-296)[ebp]
-fld qword ptr (-296)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_U2)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jbe L62
-fld qword ptr (_U2)
-fstp qword ptr (_X)
-L62:
-L64:
-fld qword ptr (_X)
-fstp qword ptr (_U2)
-fld qword ptr (_U2)
-fstp qword ptr (-304)[ebp]
-fld qword ptr (_Half)
-fmul qword ptr (-304)[ebp]
-fld qword ptr (_ThirtyTwo)
-fmul qword ptr (-304)[ebp]
-fmul qword ptr (-304)[ebp]
-faddp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fadd qword ptr (_Y)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fsub qword ptr (_One)
-fstp qword ptr (_X)
-L65:
-fld qword ptr (_X)
-fcomp qword ptr (_U2)
-fstsw ax
-sahf
-jae L67
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jb L64
-L67:
-fld qword ptr (_Two)
-fdiv qword ptr (_Three)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fsub qword ptr (_Half)
-fstp qword ptr (_F6)
-fld qword ptr (_F6)
-fstp qword ptr (-320)[ebp]
-fld qword ptr (-320)[ebp]
-fadd qword ptr (-320)[ebp]
-fstp qword ptr (_Third)
-fld qword ptr (_Third)
-fsub qword ptr (_Half)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fadd qword ptr (-320)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-328)[ebp]
-fld qword ptr (-328)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_U1)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jbe L68
-fld qword ptr (_U1)
-fstp qword ptr (_X)
-L68:
-L70:
-fld qword ptr (_X)
-fstp qword ptr (_U1)
-fld qword ptr (_U1)
-fstp qword ptr (-344)[ebp]
-fld qword ptr (_Half)
-fmul qword ptr (-344)[ebp]
-fld qword ptr (_ThirtyTwo)
-fmul qword ptr (-344)[ebp]
-fmul qword ptr (-344)[ebp]
-faddp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (_Half)
-fsub qword ptr (_Y)
-fstp qword ptr (_Y)
-fld qword ptr (_Half)
-fadd qword ptr (_Y)
-fstp qword ptr (_X)
-fld qword ptr (_Half)
-fsub qword ptr (_X)
-fstp qword ptr (_Y)
-fld qword ptr (_Half)
-fadd qword ptr (_Y)
-fstp qword ptr (_X)
-L71:
-fld qword ptr (_X)
-fcomp qword ptr (_U1)
-fstsw ax
-sahf
-jae L73
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jb L70
-L73:
-fld qword ptr (_E1)
-fcomp qword ptr (_U1)
-fstsw ax
-sahf
-jne L74
-lea edi,(L76)
-push edi
-call _printf
-add esp,4
-jmp L75
-L74:
-fld qword ptr (_U1)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L77)
-push edi
-call _printf
-add esp,12
-L75:
-fld qword ptr (_One)
-fdiv qword ptr (_U1)
-fstp qword ptr (_W)
-fld qword ptr (_Half)
-fsub qword ptr (_U1)
-fadd qword ptr (_Half)
-fstp qword ptr (_F9)
-fld qword ptr (_U2)
-fdiv qword ptr (_U1)
-fadd qword ptr (L78)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-360)[ebp]
-fld qword ptr (-360)[ebp]
-fstp qword ptr (_Radix)
-fld qword ptr (_E0)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-jne L79
-lea edi,(L81)
-push edi
-call _printf
-add esp,4
-jmp L80
-L79:
-fld qword ptr (_Radix)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L82)
-push edi
-call _printf
-add esp,12
-L80:
-lea edi,(L84)
-push edi
-fld qword ptr (_Eight)
-fadd qword ptr (_Eight)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-jb L85
-mov dword ptr (-364)[ebp],1
-jmp L86
-L85:
-mov dword ptr (-364)[ebp],0
-L86:
-mov edi,dword ptr (-364)[ebp]
-push edi
-push 2
-call _TstCond
-add esp,12
-lea edi,(L88)
-push edi
-fld qword ptr (_Two)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-je L92
-fld qword ptr (L93)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-je L92
-fld qword ptr (_One)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-jne L89
-L92:
-mov dword ptr (-376)[ebp],1
-jmp L90
-L89:
-mov dword ptr (-376)[ebp],0
-L90:
-mov edi,dword ptr (-376)[ebp]
-push edi
-push 3
-call _TstCond
-add esp,12
-mov dword ptr (_Milestone),20
-lea edi,(L95)
-push edi
-fld qword ptr (_F9)
-fsub qword ptr (_Half)
-fld qword ptr (_Half)
-fcompp
-fstsw ax
-sahf
-jbe L96
-mov dword ptr (-388)[ebp],1
-jmp L97
-L96:
-mov dword ptr (-388)[ebp],0
-L97:
-mov edi,dword ptr (-388)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (_F9)
-fstp qword ptr (_X)
-mov dword ptr (_I),1
-fld qword ptr (_X)
-fsub qword ptr (_Half)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fsub qword ptr (_Half)
-fstp qword ptr (_Z)
-lea edi,(L99)
-push edi
-fld qword ptr (_One)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L102
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L100
-L102:
-mov dword ptr (-400)[ebp],1
-jmp L101
-L100:
-mov dword ptr (-400)[ebp],0
-L101:
-mov edi,dword ptr (-400)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fstp qword ptr (_X)
-mov dword ptr (_I),0
-mov dword ptr (_Milestone),25
-fld qword ptr (_Radix)
-fsub qword ptr (_One)
-fstp qword ptr (_BMinusU2)
-fld qword ptr (_BMinusU2)
-fsub qword ptr (_U2)
-fadd qword ptr (_One)
-fstp qword ptr (_BMinusU2)
-fld qword ptr (_One)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-je L103
-fld qword ptr (_U1)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-440)[ebp]
-fld qword ptr (_Radix)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-448)[ebp]
-fld qword ptr (_TwoForty)
-fchs
-fmul qword ptr (-440)[ebp]
-fdiv qword ptr (-448)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_Half)
-fadd qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-456)[ebp]
-fld qword ptr (-456)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fsub qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-464)[ebp]
-fld qword ptr (-464)[ebp]
-fmul qword ptr (_Four)
-fld qword ptr (_One)
-fcompp
-fstsw ax
-sahf
-jbe L105
-fld qword ptr (_Y)
-fstp qword ptr (_X)
-L105:
-fld qword ptr (_X)
-fdiv qword ptr (_TwoForty)
-fstp qword ptr (_Precision)
-fld qword ptr (_Half)
-fadd qword ptr (_Precision)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-472)[ebp]
-fld qword ptr (-472)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (_Precision)
-fsub qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-480)[ebp]
-fld qword ptr (-480)[ebp]
-fmul qword ptr (_TwoForty)
-fld qword ptr (_Half)
-fcompp
-fstsw ax
-sahf
-jbe L107
-fld qword ptr (_Y)
-fstp qword ptr (_Precision)
-L107:
-L103:
-fld qword ptr (_Precision)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-448)[ebp]
-fld qword ptr (-448)[ebp]
-fcomp qword ptr (_Precision)
-fstsw ax
-sahf
-jne L111
-fld qword ptr (_One)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-jne L109
-L111:
-lea edi,(L112)
-push edi
-call _printf
-add esp,4
-lea edi,(L113)
-push edi
-call _printf
-add esp,4
-L109:
-fld qword ptr (_One)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-jne L114
-lea edi,(L116)
-push edi
-call _printf
-add esp,4
-jmp L115
-L114:
-fld qword ptr (_Precision)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L117)
-push edi
-call _printf
-add esp,12
-L115:
-lea edi,(L119)
-push edi
-fld qword ptr (_U2)
-fmul qword ptr (_Nine)
-fmul qword ptr (_Nine)
-fmul qword ptr (_TwoForty)
-fld qword ptr (_One)
-fcompp
-fstsw ax
-sahf
-jbe L120
-mov dword ptr (-452)[ebp],1
-jmp L121
-L120:
-mov dword ptr (-452)[ebp],0
-L121:
-mov edi,dword ptr (-452)[ebp]
-push edi
-push 1
-call _TstCond
-add esp,12
-mov dword ptr (_Milestone),30
-fld qword ptr (_One)
-fdiv qword ptr (_Four)
-fstp qword ptr (-492)[ebp]
-fld qword ptr (_Four)
-fdiv qword ptr (_Three)
-fsub qword ptr (_One)
-fsub qword ptr (-492)[ebp]
-fmul qword ptr (_Three)
-fsub qword ptr (-492)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-500)[ebp]
-fld qword ptr (-500)[ebp]
-fstp qword ptr (_X)
-L122:
-fld qword ptr (_X)
-fstp qword ptr (_Z2)
-fld qword ptr (_Z2)
-fstp qword ptr (-516)[ebp]
-fld qword ptr (_One)
-fld qword ptr (_Half)
-fmul qword ptr (-516)[ebp]
-fld qword ptr (_ThirtyTwo)
-fmul qword ptr (-516)[ebp]
-fmul qword ptr (-516)[ebp]
-faddp st(1),st
-faddp st(1),st
-fsub qword ptr (_One)
-fstp qword ptr (_X)
-L123:
-fld qword ptr (_X)
-fcomp qword ptr (_Z2)
-fstsw ax
-sahf
-jae L125
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jb L122
-L125:
-fld qword ptr (_Three)
-fdiv qword ptr (_Four)
-fld qword ptr (_Two)
-fdiv qword ptr (_Three)
-fsubp st(1),st
-fmul qword ptr (_Three)
-fld qword ptr (_One)
-fdiv qword ptr (_Four)
-fsubp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-532)[ebp]
-fld qword ptr (-532)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (-532)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (-532)[ebp]
-fstp qword ptr (_X)
-L126:
-fld qword ptr (_Z)
-fstp qword ptr (_Z1)
-fld qword ptr (_One)
-fdiv qword ptr (_Two)
-fstp qword ptr (-540)[ebp]
-fld qword ptr (_Z1)
-fstp qword ptr (-548)[ebp]
-fld qword ptr (-540)[ebp]
-fld qword ptr (-540)[ebp]
-fld qword ptr (_Half)
-fmul qword ptr (-548)[ebp]
-fld qword ptr (_ThirtyTwo)
-fmul qword ptr (-548)[ebp]
-fmul qword ptr (-548)[ebp]
-faddp st(1),st
-fsubp st(1),st
-fadd qword ptr (-540)[ebp]
-fsubp st(1),st
-fadd qword ptr (-540)[ebp]
-fstp qword ptr (_Z)
-L127:
-fld qword ptr (_Z)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jae L129
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jb L126
-L129:
-L130:
-L133:
-fld qword ptr (_Y)
-fstp qword ptr (_Y1)
-fld qword ptr (_Y1)
-fstp qword ptr (-556)[ebp]
-fld qword ptr (_Half)
-fld qword ptr (_Half)
-fld qword ptr (_Half)
-fmul qword ptr (-556)[ebp]
-fld qword ptr (_ThirtyTwo)
-fmul qword ptr (-556)[ebp]
-fmul qword ptr (-556)[ebp]
-faddp st(1),st
-fsubp st(1),st
-fadd qword ptr (_Half)
-fsubp st(1),st
-fadd qword ptr (_Half)
-fstp qword ptr (_Y)
-L134:
-fld qword ptr (_Y)
-fcomp qword ptr (_Y1)
-fstsw ax
-sahf
-jae L136
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jb L133
-L136:
-fld qword ptr (_X)
-fstp qword ptr (_X1)
-fld qword ptr (_X1)
-fstp qword ptr (-556)[ebp]
-fld qword ptr (_Half)
-fmul qword ptr (-556)[ebp]
-fld qword ptr (_ThirtyTwo)
-fmul qword ptr (-556)[ebp]
-fmul qword ptr (-556)[ebp]
-faddp st(1),st
-fsub qword ptr (_F9)
-fadd qword ptr (_F9)
-fstp qword ptr (_X)
-L131:
-fld qword ptr (_X)
-fcomp qword ptr (_X1)
-fstsw ax
-sahf
-jae L137
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jb L130
-L137:
-fld qword ptr (_Y1)
-fcomp qword ptr (_X1)
-fstsw ax
-sahf
-jne L140
-fld qword ptr (_Z1)
-fcomp qword ptr (_X1)
-fstsw ax
-sahf
-je L138
-L140:
-lea edi,(L141)
-push edi
-push 1
-call _BadCond
-add esp,8
-fld qword ptr (_Z1)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_Y1)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_X1)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L142)
-push edi
-call _printf
-add esp,28
-lea edi,(L143)
-push edi
-call _printf
-add esp,4
-lea edi,(L144)
-push edi
-call _printf
-add esp,4
-lea edi,(L145)
-push edi
-call _notify
-add esp,4
-fld qword ptr (_U1)
-fcomp qword ptr (_X1)
-fstsw ax
-sahf
-je L149
-fld qword ptr (_U1)
-fcomp qword ptr (_Y1)
-fstsw ax
-sahf
-je L149
-fld qword ptr (_U1)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jne L139
-L149:
-lea edi,(L150)
-push edi
-call _printf
-add esp,4
-jmp L139
-L138:
-fld qword ptr (_U1)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jne L153
-fld qword ptr (_U2)
-fcomp qword ptr (_Z2)
-fstsw ax
-sahf
-je L151
-L153:
-fld qword ptr (_U1)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jbe L156
-fld qword ptr (_U2)
-fcomp qword ptr (_Z2)
-fstsw ax
-sahf
-ja L154
-L156:
-lea edi,(L157)
-push edi
-push 0
-call _BadCond
-add esp,8
-lea edi,(L158)
-push edi
-call _notify
-add esp,4
-fld qword ptr (_Z1)
-fsub qword ptr (_U1)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_U1)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L159)
-push edi
-call _printf
-add esp,20
-fld qword ptr (_Z2)
-fsub qword ptr (_U2)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_U2)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L160)
-push edi
-call _printf
-add esp,20
-jmp L155
-L154:
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jae L163
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z2)
-fstsw ax
-sahf
-jb L161
-L163:
-fld qword ptr (_Radix)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L164)
-push edi
-call _printf
-add esp,12
-lea edi,(L165)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Z2)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_Z1)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L166)
-push edi
-call _printf
-add esp,20
-lea edi,(L167)
-push edi
-call _notify
-add esp,4
-L161:
-fld qword ptr (_Z2)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jne L170
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jae L168
-L170:
-fld qword ptr (_Z1)
-fdiv qword ptr (_U1)
-fstp qword ptr (_X)
-fld qword ptr (_Z2)
-fdiv qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jae L171
-fld qword ptr (_Y)
-fstp qword ptr (_X)
-L171:
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-580)[ebp]
-fld qword ptr (-580)[ebp]
-fchs
-fstp qword ptr (_Q)
-lea edi,(L173)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Radix)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-588)[ebp]
-fld qword ptr (_Q)
-fdiv qword ptr (-588)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L174)
-push edi
-call _printf
-add esp,12
-fld qword ptr (L93)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-596)[ebp]
-fld qword ptr (_Q)
-fdiv qword ptr (-596)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L175)
-push edi
-call _printf
-add esp,12
-L168:
-lea edi,(L150)
-push edi
-call _printf
-add esp,4
-L155:
-L151:
-L139:
-call _Pause
-add esp,0
-mov dword ptr (_Milestone),35
-fld qword ptr (_Two)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-ja L176
-fld qword ptr (_W)
-fld qword ptr (_Radix)
-fmul qword ptr (_Radix)
-fdivp st(1),st
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-576)[ebp]
-fld qword ptr (-576)[ebp]
-fadd qword ptr (_One)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fsub qword ptr (-576)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fstp qword ptr (-584)[ebp]
-fld qword ptr (-584)[ebp]
-fadd qword ptr (_U2)
-fstp qword ptr (_T)
-fld qword ptr (_T)
-fsub qword ptr (-584)[ebp]
-fstp qword ptr (_X)
-lea edi,(L179)
-push edi
-fld qword ptr (_U2)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L180
-mov dword ptr (-560)[ebp],1
-jmp L181
-L180:
-mov dword ptr (-560)[ebp],0
-L181:
-mov edi,dword ptr (-560)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (_U2)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L182
-lea edi,(L184)
-push edi
-call _printf
-add esp,4
-L182:
-L176:
-lea edi,(L185)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_F9)
-fmul qword ptr (_One)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fmul qword ptr (_F9)
-fstp qword ptr (_Z)
-fld qword ptr (_F9)
-fsub qword ptr (_Half)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-588)[ebp]
-fld qword ptr (_Y)
-fsub qword ptr (_Half)
-fsub qword ptr (-588)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (_Z)
-fsub qword ptr (_Half)
-fsub qword ptr (-588)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-604)[ebp]
-fld qword ptr (-604)[ebp]
-fmul qword ptr (_Radix)
-fstp qword ptr (_T)
-fld qword ptr (_Radix)
-fmul qword ptr (-604)[ebp]
-fstp qword ptr (_R)
-fld qword ptr (_T)
-fsub qword ptr (_Radix)
-fstp qword ptr (_X)
-fld qword ptr (_Radix)
-fmul qword ptr (_U2)
-fstp qword ptr (-620)[ebp]
-fld qword ptr (_X)
-fsub qword ptr (-620)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_R)
-fsub qword ptr (_Radix)
-fstp qword ptr (_T)
-fld qword ptr (_T)
-fsub qword ptr (-620)[ebp]
-fstp qword ptr (_T)
-fld qword ptr (_Radix)
-fsub qword ptr (_One)
-fstp qword ptr (-628)[ebp]
-fld qword ptr (_X)
-fmul qword ptr (-628)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_T)
-fmul qword ptr (-628)[ebp]
-fstp qword ptr (_T)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L186
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L186
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L186
-fld qword ptr (_Zero)
-fcomp qword ptr (_T)
-fstsw ax
-sahf
-jne L186
-mov dword ptr (_GMult),1
-jmp L187
-L186:
-mov dword ptr (_GMult),0
-lea edi,(L188)
-push edi
-push 0
-push 1
-call _TstCond
-add esp,12
-L187:
-fld qword ptr (_Radix)
-fmul qword ptr (_U2)
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fstp qword ptr (-648)[ebp]
-fld qword ptr (_One)
-fadd qword ptr (-648)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-656)[ebp]
-fld qword ptr (-656)[ebp]
-fadd qword ptr (-648)[ebp]
-fld qword ptr (-656)[ebp]
-fmul qword ptr (-656)[ebp]
-fsubp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-664)[ebp]
-fld qword ptr (-664)[ebp]
-fsub qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fsub qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-680)[ebp]
-fld qword ptr (-680)[ebp]
-fsub qword ptr (_U2)
-fld qword ptr (-680)[ebp]
-fmul qword ptr (-680)[ebp]
-fsubp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-688)[ebp]
-fld qword ptr (-688)[ebp]
-fsub qword ptr (_U1)
-fstp qword ptr (_Z)
-lea edi,(L190)
-push edi
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jb L191
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jb L191
-mov dword ptr (-640)[ebp],1
-jmp L192
-L191:
-mov dword ptr (-640)[ebp],0
-L192:
-mov edi,dword ptr (-640)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (_One)
-fsub qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fdiv qword ptr (_Y)
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fsub qword ptr (_X)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fdiv qword ptr (_Three)
-fstp qword ptr (_X)
-fld qword ptr (_Three)
-fdiv qword ptr (_Nine)
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fstp qword ptr (-740)[ebp]
-fld qword ptr (_X)
-fsub qword ptr (-740)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_Nine)
-fdiv qword ptr (_TwentySeven)
-fstp qword ptr (_T)
-fld qword ptr (-740)[ebp]
-fsub qword ptr (_T)
-fstp qword ptr (_Z)
-lea edi,(L194)
-push edi
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L195
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L195
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L195
-mov dword ptr (-700)[ebp],1
-jmp L196
-L195:
-mov dword ptr (-700)[ebp],0
-L196:
-mov edi,dword ptr (-700)[ebp]
-push edi
-push 2
-call _TstCond
-add esp,12
-fld qword ptr (_F9)
-fdiv qword ptr (_One)
-fstp qword ptr (_Y)
-fld qword ptr (_F9)
-fsub qword ptr (_Half)
-fstp qword ptr (_X)
-fld qword ptr (_Y)
-fsub qword ptr (_Half)
-fsub qword ptr (_X)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-780)[ebp]
-fld qword ptr (-780)[ebp]
-fdiv qword ptr (_One)
-fstp qword ptr (_T)
-fld qword ptr (_T)
-fsub qword ptr (-780)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L197
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L197
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L197
-mov dword ptr (_GDiv),1
-jmp L198
-L197:
-mov dword ptr (_GDiv),0
-lea edi,(L199)
-push edi
-push 0
-push 1
-call _TstCond
-add esp,12
-L198:
-fld qword ptr (_One)
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fdivp st(1),st
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fsub qword ptr (_Half)
-fsub qword ptr (_Half)
-fstp qword ptr (_Y)
-lea edi,(L201)
-push edi
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jbe L202
-mov dword ptr (-792)[ebp],1
-jmp L203
-L202:
-mov dword ptr (-792)[ebp],0
-L203:
-mov edi,dword ptr (-792)[ebp]
-push edi
-push 1
-call _TstCond
-add esp,12
-fld qword ptr (_One)
-fsub qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fld qword ptr (_Radix)
-fmul qword ptr (_U2)
-faddp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fstp qword ptr (-844)[ebp]
-fld qword ptr (-844)[ebp]
-fmul qword ptr (_Radix)
-fstp qword ptr (_Z)
-fld qword ptr (_Y)
-fstp qword ptr (-852)[ebp]
-fld qword ptr (-852)[ebp]
-fmul qword ptr (_Radix)
-fstp qword ptr (_T)
-fld qword ptr (_Z)
-fdiv qword ptr (_Radix)
-fstp qword ptr (_R)
-fld qword ptr (_T)
-fdiv qword ptr (_Radix)
-fstp qword ptr (_StickyBit)
-fld qword ptr (_R)
-fsub qword ptr (-844)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_StickyBit)
-fsub qword ptr (-852)[ebp]
-fstp qword ptr (_Y)
-lea edi,(L205)
-push edi
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L206
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L206
-mov dword ptr (-812)[ebp],1
-jmp L207
-L206:
-mov dword ptr (-812)[ebp],0
-L207:
-mov edi,dword ptr (-812)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (_One)
-fsub qword ptr (_U1)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fsub qword ptr (_F9)
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fsub qword ptr (_Y)
-fstp qword ptr (_Y)
-fld qword ptr (_Radix)
-fsub qword ptr (_U2)
-fstp qword ptr (_T)
-fld qword ptr (_Radix)
-fsub qword ptr (_BMinusU2)
-fstp qword ptr (_Z)
-fld qword ptr (_Radix)
-fsub qword ptr (_T)
-fstp qword ptr (_T)
-fld qword ptr (_U1)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L208
-fld qword ptr (_U1)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L208
-fld qword ptr (_U2)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L208
-fld qword ptr (_U2)
-fcomp qword ptr (_T)
-fstsw ax
-sahf
-jne L208
-mov dword ptr (_GAddSub),1
-jmp L209
-L208:
-mov dword ptr (_GAddSub),0
-lea edi,(L210)
-push edi
-push 0
-push 1
-call _TstCond
-add esp,12
-L209:
-fld qword ptr (_One)
-fcomp qword ptr (_F9)
-fstsw ax
-sahf
-je L211
-fld qword ptr (_F9)
-fsub qword ptr (_One)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-ja L211
-lea edi,(L213)
-push edi
-push 1
-call _BadCond
-add esp,8
-lea edi,(L214)
-push edi
-call _printf
-add esp,4
-lea edi,(L215)
-push edi
-call _printf
-add esp,4
-lea edi,(L216)
-push edi
-call _printf
-add esp,4
-L211:
-cmp dword ptr (_GMult),1
-jne L217
-cmp dword ptr (_GDiv),1
-jne L217
-cmp dword ptr (_GAddSub),1
-jne L217
-lea edi,(L219)
-push edi
-call _printf
-add esp,4
-L217:
-mov dword ptr (_Milestone),40
-call _Pause
-add esp,0
-lea edi,(L220)
-push edi
-call _printf
-add esp,4
-mov dword ptr (_RMult),0
-mov dword ptr (_RDiv),0
-mov dword ptr (_RAddSub),0
-fld qword ptr (_Radix)
-fdiv qword ptr (_Two)
-fstp qword ptr (_RadixD2)
-fld qword ptr (_Two)
-fstp qword ptr (_A1)
-mov dword ptr (_Done),0
-L221:
-fld qword ptr (_Radix)
-fstp qword ptr (_AInvrse)
-L224:
-fld qword ptr (_AInvrse)
-fstp qword ptr (-924)[ebp]
-fld qword ptr (-924)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (-924)[ebp]
-fdiv qword ptr (_A1)
-fstp qword ptr (_AInvrse)
-L225:
-fld qword ptr (_AInvrse)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-924)[ebp]
-fld qword ptr (_AInvrse)
-fcomp qword ptr (-924)[ebp]
-fstsw ax
-sahf
-je L224
-fld qword ptr (_One)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-je L230
-fld qword ptr (_Three)
-fcomp qword ptr (_A1)
-fstsw ax
-sahf
-jae L228
-L230:
-mov dword ptr (-928)[ebp],1
-jmp L229
-L228:
-mov dword ptr (-928)[ebp],0
-L229:
-mov edi,dword ptr (-928)[ebp]
-mov dword ptr (_Done),edi
-cmp dword ptr (_Done),0
-jne L231
-fld qword ptr (_Nine)
-fadd qword ptr (_One)
-fstp qword ptr (_A1)
-L231:
-L222:
-cmp dword ptr (_Done),0
-je L221
-fld qword ptr (_One)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L233
-fld qword ptr (_Radix)
-fstp qword ptr (_A1)
-L233:
-fld qword ptr (_One)
-fdiv qword ptr (_A1)
-fstp qword ptr (_AInvrse)
-fld qword ptr (_A1)
-fstp qword ptr (_X)
-fld qword ptr (_AInvrse)
-fstp qword ptr (_Y)
-mov dword ptr (_Done),0
-L235:
-fld qword ptr (_X)
-fmul qword ptr (_Y)
-fsub qword ptr (_Half)
-fstp qword ptr (_Z)
-lea edi,(L239)
-push edi
-fld qword ptr (_Half)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L240
-mov dword ptr (-928)[ebp],1
-jmp L241
-L240:
-mov dword ptr (-928)[ebp],0
-L241:
-mov edi,dword ptr (-928)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (_Radix)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L243
-mov dword ptr (-940)[ebp],1
-jmp L244
-L243:
-mov dword ptr (-940)[ebp],0
-L244:
-mov edi,dword ptr (-940)[ebp]
-mov dword ptr (_Done),edi
-fld qword ptr (_Radix)
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fdiv qword ptr (_X)
-fstp qword ptr (_Y)
-L236:
-cmp dword ptr (_Done),0
-je L235
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fstp qword ptr (_Y2)
-fld qword ptr (_One)
-fsub qword ptr (_U2)
-fstp qword ptr (_Y1)
-fld qword ptr (_OneAndHalf)
-fsub qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_OneAndHalf)
-fadd qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fstp qword ptr (-956)[ebp]
-fld qword ptr (_Y2)
-fstp qword ptr (-964)[ebp]
-fld qword ptr (-956)[ebp]
-fsub qword ptr (_U2)
-fmul qword ptr (-964)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (_Y)
-fstp qword ptr (-972)[ebp]
-fld qword ptr (_Y1)
-fstp qword ptr (-980)[ebp]
-fld qword ptr (-972)[ebp]
-fmul qword ptr (-980)[ebp]
-fstp qword ptr (_T)
-fld qword ptr (_Z)
-fsub qword ptr (-956)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (_T)
-fsub qword ptr (-956)[ebp]
-fstp qword ptr (_T)
-fld qword ptr (-956)[ebp]
-fmul qword ptr (-964)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (-972)[ebp]
-fadd qword ptr (_U2)
-fmul qword ptr (-980)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fsub qword ptr (_OneAndHalf)
-fstp qword ptr (_X)
-fld qword ptr (_Y)
-fsub qword ptr (_OneAndHalf)
-fstp qword ptr (_Y)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L245
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L245
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L245
-fld qword ptr (_Zero)
-fcomp qword ptr (_T)
-fstsw ax
-sahf
-jb L245
-fld qword ptr (_OneAndHalf)
-fadd qword ptr (_U2)
-fstp qword ptr (-1012)[ebp]
-fld qword ptr (-1012)[ebp]
-fmul qword ptr (_Y2)
-fstp qword ptr (_X)
-fld qword ptr (_OneAndHalf)
-fsub qword ptr (_U2)
-fstp qword ptr (-1028)[ebp]
-fld qword ptr (-1028)[ebp]
-fsub qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (-1012)[ebp]
-fadd qword ptr (_U2)
-fstp qword ptr (_Z)
-fld qword ptr (_Y1)
-fstp qword ptr (-1036)[ebp]
-fld qword ptr (-1028)[ebp]
-fmul qword ptr (-1036)[ebp]
-fstp qword ptr (_T)
-fld qword ptr (_Z)
-fstp qword ptr (-1044)[ebp]
-fld qword ptr (-1044)[ebp]
-fadd qword ptr (_U2)
-fstp qword ptr (-1052)[ebp]
-fld qword ptr (_X)
-fsub qword ptr (-1052)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_Y)
-fstp qword ptr (-1060)[ebp]
-fld qword ptr (-1060)[ebp]
-fmul qword ptr (-1036)[ebp]
-fstp qword ptr (_StickyBit)
-fld qword ptr (-1044)[ebp]
-fmul qword ptr (_Y2)
-fstp qword ptr (_S)
-fld qword ptr (_T)
-fsub qword ptr (-1060)[ebp]
-fstp qword ptr (_T)
-fld qword ptr (_U2)
-fsub qword ptr (-1060)[ebp]
-fadd qword ptr (_StickyBit)
-fstp qword ptr (_Y)
-fld qword ptr (_S)
-fld qword ptr (-1052)[ebp]
-fadd qword ptr (_U2)
-fsubp st(1),st
-fstp qword ptr (_Z)
-fld qword ptr (_Y2)
-fadd qword ptr (_U2)
-fmul qword ptr (-1036)[ebp]
-fstp qword ptr (_StickyBit)
-fld qword ptr (_Y2)
-fmul qword ptr (-1036)[ebp]
-fstp qword ptr (_Y1)
-fld qword ptr (_StickyBit)
-fsub qword ptr (_Y2)
-fstp qword ptr (_StickyBit)
-fld qword ptr (_Y1)
-fsub qword ptr (_Half)
-fstp qword ptr (_Y1)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L247
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L247
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L247
-fld qword ptr (_Zero)
-fcomp qword ptr (_T)
-fstsw ax
-sahf
-jne L247
-fld qword ptr (_Zero)
-fcomp qword ptr (_StickyBit)
-fstsw ax
-sahf
-jne L247
-fld qword ptr (_Half)
-fcomp qword ptr (_Y1)
-fstsw ax
-sahf
-jne L247
-mov dword ptr (_RMult),1
-lea edi,(L249)
-push edi
-call _printf
-add esp,4
-jmp L248
-L247:
-fld qword ptr (_X)
-fadd qword ptr (_U2)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L250
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jbe L250
-fld qword ptr (_Z)
-fadd qword ptr (_U2)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L250
-fld qword ptr (_Zero)
-fcomp qword ptr (_T)
-fstsw ax
-sahf
-jbe L250
-fld qword ptr (_StickyBit)
-fadd qword ptr (_U2)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L250
-fld qword ptr (_Half)
-fcomp qword ptr (_Y1)
-fstsw ax
-sahf
-jbe L250
-mov dword ptr (_RMult),2
-lea edi,(L252)
-push edi
-call _printf
-add esp,4
-jmp L251
-L250:
-lea edi,(L253)
-push edi
-call _printf
-add esp,4
-L251:
-L248:
-cmp dword ptr (_RMult),1
-jne L246
-cmp dword ptr (_GMult),0
-jne L246
-lea edi,(L256)
-push edi
-call _notify
-add esp,4
-jmp L246
-L245:
-lea edi,(L253)
-push edi
-call _printf
-add esp,4
-L246:
-mov dword ptr (_Milestone),45
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fstp qword ptr (_Y2)
-fld qword ptr (_One)
-fsub qword ptr (_U2)
-fstp qword ptr (_Y1)
-fld qword ptr (_OneAndHalf)
-fadd qword ptr (_U2)
-fstp qword ptr (-1020)[ebp]
-fld qword ptr (-1020)[ebp]
-fadd qword ptr (_U2)
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fstp qword ptr (-1028)[ebp]
-fld qword ptr (_Y2)
-fstp qword ptr (-1036)[ebp]
-fld qword ptr (-1028)[ebp]
-fdiv qword ptr (-1036)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_OneAndHalf)
-fsub qword ptr (_U2)
-fsub qword ptr (_U2)
-fstp qword ptr (_T)
-fld qword ptr (_T)
-fstp qword ptr (-1044)[ebp]
-fld qword ptr (_Y1)
-fstp qword ptr (-1052)[ebp]
-fld qword ptr (-1044)[ebp]
-fsub qword ptr (_U2)
-fdiv qword ptr (-1052)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (-1028)[ebp]
-fadd qword ptr (_U2)
-fdiv qword ptr (-1036)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (_X)
-fsub qword ptr (_OneAndHalf)
-fstp qword ptr (_X)
-fld qword ptr (_Y)
-fsub qword ptr (-1044)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (-1044)[ebp]
-fdiv qword ptr (-1052)[ebp]
-fstp qword ptr (_T)
-fld qword ptr (_Z)
-fsub qword ptr (-1020)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (_U2)
-fsub qword ptr (_OneAndHalf)
-fadd qword ptr (_T)
-fstp qword ptr (_T)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jb L257
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jb L257
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jb L257
-fld qword ptr (_Zero)
-fcomp qword ptr (_T)
-fstsw ax
-sahf
-jb L257
-fld qword ptr (_Y2)
-fstp qword ptr (-1076)[ebp]
-fld qword ptr (_OneAndHalf)
-fdiv qword ptr (-1076)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_OneAndHalf)
-fsub qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (_OneAndHalf)
-fadd qword ptr (_U2)
-fstp qword ptr (_Z)
-fld qword ptr (_Y)
-fstp qword ptr (-1092)[ebp]
-fld qword ptr (_X)
-fsub qword ptr (-1092)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_Y1)
-fstp qword ptr (-1100)[ebp]
-fld qword ptr (_OneAndHalf)
-fdiv qword ptr (-1100)[ebp]
-fstp qword ptr (_T)
-fld qword ptr (-1092)[ebp]
-fdiv qword ptr (-1100)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (_Z)
-fstp qword ptr (-1108)[ebp]
-fld qword ptr (_T)
-fld qword ptr (-1108)[ebp]
-fadd qword ptr (_U2)
-fsubp st(1),st
-fstp qword ptr (_T)
-fld qword ptr (_Y)
-fsub qword ptr (-1108)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (-1108)[ebp]
-fdiv qword ptr (-1076)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (-1076)[ebp]
-fadd qword ptr (_U2)
-fdiv qword ptr (-1076)[ebp]
-fstp qword ptr (_Y1)
-fld qword ptr (_Z)
-fsub qword ptr (_OneAndHalf)
-fstp qword ptr (_Z)
-fld qword ptr (_Y1)
-fsub qword ptr (-1076)[ebp]
-fstp qword ptr (_Y2)
-fld qword ptr (_F9)
-fsub qword ptr (_U1)
-fdiv qword ptr (_F9)
-fstp qword ptr (_Y1)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L259
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L259
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L259
-fld qword ptr (_Zero)
-fcomp qword ptr (_T)
-fstsw ax
-sahf
-jne L259
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y2)
-fstsw ax
-sahf
-jne L259
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y2)
-fstsw ax
-sahf
-jne L259
-fld qword ptr (_Y1)
-fsub qword ptr (_Half)
-fld qword ptr (_F9)
-fsub qword ptr (_Half)
-fcompp
-fstsw ax
-sahf
-jne L259
-mov dword ptr (_RDiv),1
-lea edi,(L261)
-push edi
-call _printf
-add esp,4
-cmp dword ptr (_GDiv),0
-jne L260
-lea edi,(L264)
-push edi
-call _notify
-add esp,4
-jmp L260
-L259:
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jbe L265
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jbe L265
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jbe L265
-fld qword ptr (_Zero)
-fcomp qword ptr (_T)
-fstsw ax
-sahf
-jbe L265
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y2)
-fstsw ax
-sahf
-jbe L265
-fld qword ptr (_Y1)
-fsub qword ptr (_Half)
-fld qword ptr (_F9)
-fsub qword ptr (_Half)
-fcompp
-fstsw ax
-sahf
-jbe L265
-mov dword ptr (_RDiv),2
-lea edi,(L267)
-push edi
-call _printf
-add esp,4
-L265:
-L260:
-L257:
-cmp dword ptr (_RDiv),0
-jne L268
-lea edi,(L270)
-push edi
-call _printf
-add esp,4
-L268:
-fld qword ptr (_One)
-fdiv qword ptr (_Radix)
-fstp qword ptr (_BInvrse)
-lea edi,(L272)
-push edi
-fld qword ptr (_BInvrse)
-fmul qword ptr (_Radix)
-fsub qword ptr (_Half)
-fld qword ptr (_Half)
-fcompp
-fstsw ax
-sahf
-jne L273
-mov dword ptr (-1064)[ebp],1
-jmp L274
-L273:
-mov dword ptr (-1064)[ebp],0
-L274:
-mov edi,dword ptr (-1064)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-mov dword ptr (_Milestone),50
-lea edi,(L276)
-push edi
-fld qword ptr (_F9)
-fadd qword ptr (_U1)
-fsub qword ptr (_Half)
-fld qword ptr (_Half)
-fcompp
-fstsw ax
-sahf
-jne L277
-fld qword ptr (_BMinusU2)
-fadd qword ptr (_U2)
-fsub qword ptr (_One)
-fld qword ptr (_Radix)
-fsub qword ptr (_One)
-fcompp
-fstsw ax
-sahf
-jne L277
-mov dword ptr (-1084)[ebp],1
-jmp L278
-L277:
-mov dword ptr (-1084)[ebp],0
-L278:
-mov edi,dword ptr (-1084)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (_One)
-fld qword ptr (_U1)
-fmul qword ptr (_U1)
-fsubp st(1),st
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fld qword ptr (_U2)
-fld qword ptr (_One)
-fsub qword ptr (_U2)
-fmulp st(1),st
-faddp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (_F9)
-fsub qword ptr (_Half)
-fstp qword ptr (_Z)
-fld qword ptr (_X)
-fsub qword ptr (_Half)
-fsub qword ptr (_Z)
-fstp qword ptr (_X)
-fld qword ptr (_Y)
-fsub qword ptr (_One)
-fstp qword ptr (_Y)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L279
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L279
-mov dword ptr (_RAddSub),2
-lea edi,(L281)
-push edi
-call _printf
-add esp,4
-L279:
-cmp dword ptr (_GAddSub),1
-jne L282
-fld qword ptr (_Half)
-fadd qword ptr (_U2)
-fmul qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_Half)
-fsub qword ptr (_U2)
-fmul qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fadd qword ptr (_X)
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fadd qword ptr (_Y)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fsub qword ptr (_X)
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fsub qword ptr (_Y)
-fstp qword ptr (_Y)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L284
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L284
-fld qword ptr (_Half)
-fadd qword ptr (_U2)
-fmul qword ptr (_U1)
-fstp qword ptr (_X)
-fld qword ptr (_Half)
-fsub qword ptr (_U2)
-fmul qword ptr (_U1)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fsub qword ptr (_X)
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fsub qword ptr (_Y)
-fstp qword ptr (_Y)
-fld qword ptr (_F9)
-fsub qword ptr (_X)
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fsub qword ptr (_Y)
-fstp qword ptr (_Y)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L286
-fld qword ptr (_Zero)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L286
-mov dword ptr (_RAddSub),1
-lea edi,(L288)
-push edi
-call _printf
-add esp,4
-cmp dword ptr (_GAddSub),0
-jne L283
-lea edi,(L291)
-push edi
-call _notify
-add esp,4
-jmp L283
-L286:
-lea edi,(L292)
-push edi
-call _printf
-add esp,4
-jmp L283
-L284:
-lea edi,(L292)
-push edi
-call _printf
-add esp,4
-jmp L283
-L282:
-lea edi,(L292)
-push edi
-call _printf
-add esp,4
-L283:
-fld qword ptr (_One)
-fstp qword ptr (_S)
-fld qword ptr (_One)
-fld qword ptr (_Half)
-fld qword ptr (_One)
-fadd qword ptr (_Half)
-fmulp st(1),st
-faddp st(1),st
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fmul qword ptr (_Half)
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fstp qword ptr (-1164)[ebp]
-fld qword ptr (_Y)
-fstp qword ptr (-1172)[ebp]
-fld qword ptr (-1164)[ebp]
-fsub qword ptr (-1172)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (-1172)[ebp]
-fsub qword ptr (-1164)[ebp]
-fstp qword ptr (_T)
-fld qword ptr (_Z)
-fadd qword ptr (_T)
-fstp qword ptr (_StickyBit)
-fld qword ptr (_Zero)
-fcomp qword ptr (_StickyBit)
-fstsw ax
-sahf
-je L293
-fld qword ptr (_Zero)
-fstp qword ptr (_S)
-lea edi,(L295)
-push edi
-push 3
-call _BadCond
-add esp,8
-L293:
-fld qword ptr (_Zero)
-fstp qword ptr (_StickyBit)
-cmp dword ptr (_GMult),1
-jne L296
-cmp dword ptr (_GDiv),1
-jne L296
-cmp dword ptr (_GAddSub),1
-jne L296
-cmp dword ptr (_RMult),1
-jne L296
-cmp dword ptr (_RDiv),1
-jne L296
-cmp dword ptr (_RAddSub),1
-jne L296
-fld qword ptr (_RadixD2)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1180)[ebp]
-fld qword ptr (_RadixD2)
-fcomp qword ptr (-1180)[ebp]
-fstsw ax
-sahf
-jne L296
-lea edi,(L298)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Half)
-fadd qword ptr (_U1)
-fmul qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_Half)
-fmul qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fadd qword ptr (_Y)
-fstp qword ptr (_Z)
-fld qword ptr (_One)
-fadd qword ptr (_X)
-fstp qword ptr (_T)
-fld qword ptr (_Z)
-fsub qword ptr (_One)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jb L299
-fld qword ptr (_T)
-fsub qword ptr (_One)
-fld qword ptr (_U2)
-fcompp
-fstsw ax
-sahf
-ja L299
-fld qword ptr (_T)
-fadd qword ptr (_Y)
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fsub qword ptr (_X)
-fstp qword ptr (_Y)
-fld qword ptr (_Z)
-fsub qword ptr (_T)
-fld qword ptr (_U2)
-fcompp
-fstsw ax
-sahf
-ja L301
-fld qword ptr (_Y)
-fsub qword ptr (_T)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L301
-fld qword ptr (_Half)
-fadd qword ptr (_U1)
-fmul qword ptr (_U1)
-fstp qword ptr (_X)
-fld qword ptr (_Half)
-fmul qword ptr (_U1)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fsub qword ptr (_Y)
-fstp qword ptr (_Z)
-fld qword ptr (_One)
-fsub qword ptr (_X)
-fstp qword ptr (_T)
-fld qword ptr (_Z)
-fsub qword ptr (_One)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L303
-fld qword ptr (_T)
-fsub qword ptr (_F9)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L303
-fld qword ptr (_Half)
-fsub qword ptr (_U1)
-fmul qword ptr (_U1)
-fstp qword ptr (_Z)
-fld qword ptr (_F9)
-fsub qword ptr (_Z)
-fstp qword ptr (_T)
-fld qword ptr (_F9)
-fsub qword ptr (_Y)
-fstp qword ptr (_Q)
-fld qword ptr (_T)
-fsub qword ptr (_F9)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L305
-fld qword ptr (_F9)
-fsub qword ptr (_U1)
-fsub qword ptr (_Q)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L305
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fmul qword ptr (_OneAndHalf)
-fstp qword ptr (_Z)
-fld qword ptr (_OneAndHalf)
-fadd qword ptr (_U2)
-fsub qword ptr (_Z)
-fadd qword ptr (_U2)
-fstp qword ptr (_T)
-fld qword ptr (_One)
-fld qword ptr (_Half)
-fdiv qword ptr (_Radix)
-faddp st(1),st
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fld qword ptr (_Radix)
-fmul qword ptr (_U2)
-faddp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fmul qword ptr (_Y)
-fstp qword ptr (_Z)
-fld qword ptr (_Zero)
-fcomp qword ptr (_T)
-fstsw ax
-sahf
-jne L307
-fld qword ptr (_X)
-fld qword ptr (_Radix)
-fmul qword ptr (_U2)
-faddp st(1),st
-fsub qword ptr (_Z)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L307
-fld qword ptr (_Two)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-je L309
-fld qword ptr (_Two)
-fadd qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fdiv qword ptr (_Two)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fsub qword ptr (_One)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L310
-fld qword ptr (_S)
-fstp qword ptr (_StickyBit)
-jmp L310
-L309:
-fld qword ptr (_S)
-fstp qword ptr (_StickyBit)
-L310:
-L307:
-L305:
-L303:
-L301:
-L299:
-L296:
-fld qword ptr (_One)
-fcomp qword ptr (_StickyBit)
-fstsw ax
-sahf
-jne L313
-lea edi,(L315)
-push edi
-call _printf
-add esp,4
-jmp L314
-L313:
-lea edi,(L316)
-push edi
-call _printf
-add esp,4
-L314:
-lea edi,(L318)
-push edi
-cmp dword ptr (_GMult),0
-je L319
-cmp dword ptr (_GDiv),0
-je L319
-cmp dword ptr (_GAddSub),0
-je L319
-cmp dword ptr (_RMult),0
-je L319
-cmp dword ptr (_RDiv),0
-je L319
-cmp dword ptr (_RAddSub),0
-je L319
-mov dword ptr (-1184)[ebp],1
-jmp L320
-L319:
-mov dword ptr (-1184)[ebp],0
-L320:
-mov edi,dword ptr (-1184)[ebp]
-push edi
-push 3
-call _TstCond
-add esp,12
-mov dword ptr (_Milestone),60
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-lea edi,(L321)
-push edi
-call _printf
-add esp,4
-mov edi,dword ptr (_NoTrials)
-push edi
-lea edi,(L322)
-push edi
-call _printf
-add esp,8
-fld qword ptr (L323)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1192)[ebp]
-fld qword ptr (-1192)[ebp]
-fstp qword ptr (_Random9)
-fld qword ptr (_Third)
-fstp qword ptr (_Random1)
-mov dword ptr (_I),1
-L324:
-call _Random
-add esp,0
-fstp qword ptr (-1200)[ebp]
-fld qword ptr (-1200)[ebp]
-fstp qword ptr (_X)
-call _Random
-add esp,0
-fstp qword ptr (-1208)[ebp]
-fld qword ptr (-1208)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fmul qword ptr (_X)
-fstp qword ptr (_Z9)
-fld qword ptr (_X)
-fmul qword ptr (_Y)
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fsub qword ptr (_Z9)
-fstp qword ptr (_Z9)
-inc dword ptr (_I)
-L325:
-mov edi,dword ptr (_NoTrials)
-cmp dword ptr (_I),edi
-jg L327
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z9)
-fstsw ax
-sahf
-je L324
-L327:
-mov edi,dword ptr (_NoTrials)
-cmp dword ptr (_I),edi
-jne L328
-fld qword ptr (_One)
-fld qword ptr (_Half)
-fdiv qword ptr (_Three)
-faddp st(1),st
-fstp qword ptr (-1208)[ebp]
-fld qword ptr (-1208)[ebp]
-fstp qword ptr (_Random1)
-fld qword ptr (_U2)
-fadd qword ptr (_U1)
-fadd qword ptr (_One)
-fstp qword ptr (-1216)[ebp]
-fld qword ptr (-1216)[ebp]
-fstp qword ptr (_Random2)
-fld qword ptr (_Random1)
-fstp qword ptr (-1224)[ebp]
-fld qword ptr (_Random2)
-fstp qword ptr (-1232)[ebp]
-fld qword ptr (-1224)[ebp]
-fmul qword ptr (-1232)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (-1232)[ebp]
-fmul qword ptr (-1224)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (-1208)[ebp]
-fmul qword ptr (-1216)[ebp]
-fstp qword ptr (-1240)[ebp]
-fld qword ptr (-1240)[ebp]
-fsub qword ptr (-1240)[ebp]
-fstp qword ptr (_Z9)
-L328:
-mov edi,dword ptr (_NoTrials)
-cmp dword ptr (_I),edi
-je L330
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z9)
-fstsw ax
-sahf
-je L330
-lea edi,(L332)
-push edi
-push 2
-call _BadCond
-add esp,8
-jmp L331
-L330:
-mov edi,dword ptr (_NoTrials)
-push edi
-lea edi,(L333)
-push edi
-call _printf
-add esp,8
-L331:
-mov dword ptr (_Milestone),70
-lea edi,(L334)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Zero)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1212)[ebp]
-fld qword ptr (-1212)[ebp]
-fcomp qword ptr (_Zero)
-fstsw ax
-sahf
-jne L337
-fld qword ptr (_Zero)
-fchs
-fstp qword ptr (-1220)[ebp]
-fld qword ptr (-1220)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1228)[ebp]
-fld qword ptr (-1228)[ebp]
-fcomp qword ptr (-1220)[ebp]
-fstsw ax
-sahf
-jne L337
-fld qword ptr (_One)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1244)[ebp]
-fld qword ptr (-1244)[ebp]
-fcomp qword ptr (_One)
-fstsw ax
-sahf
-jne L337
-mov dword ptr (-1196)[ebp],1
-jmp L338
-L337:
-mov dword ptr (-1196)[ebp],0
-L338:
-lea edi,(L336)
-push edi
-mov edi,dword ptr (-1196)[ebp]
-push edi
-push 0
-call _TstCond
-add esp,12
-fld qword ptr (_Zero)
-fstp qword ptr (_MinSqEr)
-fld qword ptr (_Zero)
-fstp qword ptr (_MaxSqEr)
-fld qword ptr (_Zero)
-fstp qword ptr (_J)
-fld qword ptr (_Radix)
-fstp qword ptr (_X)
-fld qword ptr (_U2)
-fstp qword ptr (_OneUlp)
-push 1
-call _SqXMinX
-add esp,4
-fld qword ptr (_BInvrse)
-fstp qword ptr (_X)
-fld qword ptr (_BInvrse)
-fmul qword ptr (_U1)
-fstp qword ptr (_OneUlp)
-push 1
-call _SqXMinX
-add esp,4
-fld qword ptr (_U1)
-fstp qword ptr (_X)
-fld qword ptr (_U1)
-fmul qword ptr (_U1)
-fstp qword ptr (_OneUlp)
-push 1
-call _SqXMinX
-add esp,4
-fld qword ptr (_Zero)
-fcomp qword ptr (_J)
-fstsw ax
-sahf
-je L339
-call _Pause
-add esp,0
-L339:
-mov edi,dword ptr (_NoTrials)
-push edi
-lea edi,(L341)
-push edi
-call _printf
-add esp,8
-fld qword ptr (_Zero)
-fstp qword ptr (_J)
-fld qword ptr (_Two)
-fstp qword ptr (_X)
-fld qword ptr (_Radix)
-fstp qword ptr (_Y)
-fld qword ptr (_One)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-je L342
-L344:
-fld qword ptr (_Y)
-fstp qword ptr (-1284)[ebp]
-fld qword ptr (-1284)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_Radix)
-fmul qword ptr (-1284)[ebp]
-fstp qword ptr (_Y)
-L345:
-fld qword ptr (_Y)
-fsub qword ptr (_X)
-fild dword ptr (_NoTrials)
-fcompp
-fstsw ax
-sahf
-ja L344
-L342:
-fld qword ptr (_X)
-fmul qword ptr (_U2)
-fstp qword ptr (_OneUlp)
-mov dword ptr (_I),1
-jmp L348
-L347:
-fld qword ptr (_X)
-fadd qword ptr (_One)
-fstp qword ptr (_X)
-push 2
-call _SqXMinX
-add esp,4
-fld qword ptr (_Zero)
-fcomp qword ptr (_J)
-fstsw ax
-sahf
-jae L350
-jmp L349
-L350:
-inc dword ptr (_I)
-L348:
-mov edi,dword ptr (_NoTrials)
-cmp dword ptr (_I),edi
-jle L347
-L349:
-lea edi,(L352)
-push edi
-call _printf
-add esp,4
-mov dword ptr (_I),-1
-fld qword ptr (_BMinusU2)
-fstp qword ptr (_X)
-fld qword ptr (_Radix)
-fstp qword ptr (_Y)
-fld qword ptr (_Radix)
-fld qword ptr (_Radix)
-fmul qword ptr (_U2)
-faddp st(1),st
-fstp qword ptr (_Z)
-mov dword ptr (_NotMonot),0
-mov dword ptr (_Monot),0
-jmp L354
-L353:
-inc dword ptr (_I)
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1292)[ebp]
-fld qword ptr (-1292)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1300)[ebp]
-fld qword ptr (-1300)[ebp]
-fstp qword ptr (_Q)
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1308)[ebp]
-fld qword ptr (-1308)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (_Q)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jb L358
-fld qword ptr (_Z)
-fcomp qword ptr (_Q)
-fstsw ax
-sahf
-jae L356
-L358:
-mov dword ptr (_NotMonot),1
-jmp L357
-L356:
-fld qword ptr (_Q)
-fadd qword ptr (_Half)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1324)[ebp]
-fld qword ptr (-1324)[ebp]
-fstp qword ptr (_Q)
-cmp dword ptr (_I),0
-jg L361
-fld qword ptr (_Q)
-fmul qword ptr (_Q)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-jne L359
-L361:
-mov dword ptr (_Monot),1
-jmp L360
-L359:
-cmp dword ptr (_I),0
-jle L362
-cmp dword ptr (_I),1
-jle L364
-mov dword ptr (_Monot),1
-jmp L363
-L364:
-fld qword ptr (_Y)
-fmul qword ptr (_BInvrse)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fstp qword ptr (-1340)[ebp]
-fld qword ptr (-1340)[ebp]
-fsub qword ptr (_U1)
-fstp qword ptr (_X)
-fld qword ptr (-1340)[ebp]
-fadd qword ptr (_U1)
-fstp qword ptr (_Z)
-jmp L363
-L362:
-fld qword ptr (_Q)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fstp qword ptr (-1340)[ebp]
-fld qword ptr (-1340)[ebp]
-fsub qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (-1340)[ebp]
-fadd qword ptr (_U2)
-fstp qword ptr (_Z)
-L363:
-L360:
-L357:
-L354:
-cmp dword ptr (_NotMonot),0
-jne L366
-cmp dword ptr (_Monot),0
-je L353
-L366:
-cmp dword ptr (_Monot),0
-je L367
-lea edi,(L369)
-push edi
-call _printf
-add esp,4
-jmp L368
-L367:
-lea edi,(L157)
-push edi
-push 2
-call _BadCond
-add esp,8
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L370)
-push edi
-call _printf
-add esp,12
-L368:
-mov dword ptr (_Milestone),80
-fld qword ptr (_MinSqEr)
-fadd qword ptr (_Half)
-fstp qword ptr (_MinSqEr)
-fld qword ptr (_MaxSqEr)
-fsub qword ptr (_Half)
-fstp qword ptr (_MaxSqEr)
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1300)[ebp]
-fld qword ptr (-1300)[ebp]
-fsub qword ptr (_One)
-fdiv qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fsub qword ptr (_One)
-fld qword ptr (_U2)
-fdiv qword ptr (_Eight)
-faddp st(1),st
-fstp qword ptr (_SqEr)
-fld qword ptr (_MaxSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jae L371
-fld qword ptr (_SqEr)
-fstp qword ptr (_MaxSqEr)
-L371:
-fld qword ptr (_Y)
-fld qword ptr (_U2)
-fdiv qword ptr (_Eight)
-faddp st(1),st
-fstp qword ptr (_SqEr)
-fld qword ptr (_MinSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jbe L373
-fld qword ptr (_SqEr)
-fstp qword ptr (_MinSqEr)
-L373:
-fld qword ptr (_F9)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1324)[ebp]
-fld qword ptr (-1324)[ebp]
-fsub qword ptr (_U2)
-fld qword ptr (_One)
-fsub qword ptr (_U2)
-fsubp st(1),st
-fdiv qword ptr (_U1)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fld qword ptr (_U1)
-fdiv qword ptr (_Eight)
-faddp st(1),st
-fstp qword ptr (_SqEr)
-fld qword ptr (_MaxSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jae L375
-fld qword ptr (_SqEr)
-fstp qword ptr (_MaxSqEr)
-L375:
-fld qword ptr (_Y)
-fadd qword ptr (_One)
-fld qword ptr (_U1)
-fdiv qword ptr (_Eight)
-faddp st(1),st
-fstp qword ptr (_SqEr)
-fld qword ptr (_MinSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jbe L377
-fld qword ptr (_SqEr)
-fstp qword ptr (_MinSqEr)
-L377:
-fld qword ptr (_U2)
-fstp qword ptr (_OneUlp)
-fld qword ptr (_OneUlp)
-fstp qword ptr (_X)
-mov dword ptr (_Indx),1
-L379:
-fld qword ptr (_X)
-fadd qword ptr (_U1)
-fadd qword ptr (_X)
-fadd qword ptr (_F9)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1356)[ebp]
-fld qword ptr (-1356)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fsub qword ptr (_U2)
-fld qword ptr (_One)
-fsub qword ptr (_U2)
-fadd qword ptr (_X)
-fsubp st(1),st
-fdiv qword ptr (_OneUlp)
-fstp qword ptr (_Y)
-fld qword ptr (_U1)
-fsub qword ptr (_X)
-fadd qword ptr (_F9)
-fmul qword ptr (_Half)
-fmul qword ptr (_X)
-fmul qword ptr (_X)
-fdiv qword ptr (_OneUlp)
-fstp qword ptr (_Z)
-fld qword ptr (_Y)
-fadd qword ptr (_Half)
-fadd qword ptr (_Z)
-fstp qword ptr (_SqEr)
-fld qword ptr (_MinSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jbe L383
-fld qword ptr (_SqEr)
-fstp qword ptr (_MinSqEr)
-L383:
-fld qword ptr (_Y)
-fsub qword ptr (_Half)
-fadd qword ptr (_Z)
-fstp qword ptr (_SqEr)
-fld qword ptr (_MaxSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jae L385
-fld qword ptr (_SqEr)
-fstp qword ptr (_MaxSqEr)
-L385:
-mov edi,dword ptr (_Indx)
-cmp edi,1
-je L389
-cmp edi,3
-jne L387
-L389:
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-call _Sign
-add esp,8
-fstp qword ptr (-1396)[ebp]
-fld qword ptr (_OneUlp)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1404)[ebp]
-fld qword ptr (_Eight)
-fld qword ptr (_Nine)
-fmul qword ptr (-1404)[ebp]
-fdivp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1412)[ebp]
-fld qword ptr (_OneUlp)
-fmul qword ptr (-1396)[ebp]
-fmul qword ptr (-1412)[ebp]
-fstp qword ptr (_X)
-jmp L388
-L387:
-fld qword ptr (_U1)
-fstp qword ptr (_OneUlp)
-fld qword ptr (_OneUlp)
-fchs
-fstp qword ptr (_X)
-L388:
-L380:
-inc dword ptr (_Indx)
-cmp dword ptr (_Indx),3
-jle L379
-mov dword ptr (_Milestone),85
-mov dword ptr (_SqRWrng),0
-mov dword ptr (_Anomaly),0
-mov dword ptr (_RSqrt),0
-fld qword ptr (_One)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-je L390
-lea edi,(L392)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Precision)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1356)[ebp]
-fld qword ptr (_One)
-fadd qword ptr (_Precision)
-fsub qword ptr (-1356)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_Radix)
-sub esp,8
-fstp qword ptr [esp]
-call _pow
-add esp,16
-fstp qword ptr (-1364)[ebp]
-fld qword ptr (_Half)
-fadd qword ptr (-1364)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1372)[ebp]
-fld qword ptr (-1372)[ebp]
-fstp qword ptr (_D)
-fld qword ptr (_D)
-fdiv qword ptr (_Radix)
-fstp qword ptr (_X)
-fld qword ptr (_D)
-fdiv qword ptr (_A1)
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1396)[ebp]
-fld qword ptr (-1396)[ebp]
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L395
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1412)[ebp]
-fld qword ptr (-1412)[ebp]
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-je L393
-L395:
-mov dword ptr (_Anomaly),1
-jmp L394
-L393:
-fld qword ptr (_Zero)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (_Z2)
-fld qword ptr (_One)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fstp qword ptr (_Y2)
-fld qword ptr (_Radix)
-fsub qword ptr (_One)
-fstp qword ptr (_Z1)
-fld qword ptr (_Four)
-fmul qword ptr (_D)
-fstp qword ptr (_FourD)
-L396:
-fld qword ptr (_Z2)
-fcomp qword ptr (_Y2)
-fstsw ax
-sahf
-jae L399
-fld qword ptr (_Radix)
-fstp qword ptr (_Q)
-fld qword ptr (_Y)
-fstp qword ptr (_Y1)
-L401:
-fld qword ptr (_Half)
-fld qword ptr (_Q)
-fdiv qword ptr (_Y1)
-fsubp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1436)[ebp]
-fld qword ptr (_Q)
-fld qword ptr (-1436)[ebp]
-fmul qword ptr (_Y1)
-faddp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-1444)[ebp]
-fld qword ptr (-1444)[ebp]
-fstp qword ptr (_X1)
-fld qword ptr (_Y1)
-fstp qword ptr (_Q)
-fld qword ptr (_X1)
-fstp qword ptr (_Y1)
-L402:
-fld qword ptr (_Zero)
-fcomp qword ptr (_X1)
-fstsw ax
-sahf
-jb L401
-fld qword ptr (_One)
-fcomp qword ptr (_Q)
-fstsw ax
-sahf
-jb L404
-fld qword ptr (_Y2)
-fstp qword ptr (_Z2)
-fld qword ptr (_Y)
-fstp qword ptr (_Z)
-L404:
-L399:
-fld qword ptr (_Y)
-fadd qword ptr (_Two)
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fadd qword ptr (_Eight)
-fstp qword ptr (_X)
-fld qword ptr (_Y2)
-fadd qword ptr (_X)
-fstp qword ptr (_Y2)
-fld qword ptr (_FourD)
-fcomp qword ptr (_Y2)
-fstsw ax
-sahf
-ja L406
-fld qword ptr (_Y2)
-fsub qword ptr (_FourD)
-fstp qword ptr (_Y2)
-L406:
-L397:
-fld qword ptr (_D)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-ja L396
-fld qword ptr (_FourD)
-fsub qword ptr (_Z2)
-fstp qword ptr (_X8)
-fld qword ptr (_X8)
-fstp qword ptr (-1436)[ebp]
-fld qword ptr (-1436)[ebp]
-fld qword ptr (_Z)
-fmul qword ptr (_Z)
-faddp st(1),st
-fdiv qword ptr (_FourD)
-fstp qword ptr (_Q)
-fld qword ptr (-1436)[ebp]
-fdiv qword ptr (_Eight)
-fstp qword ptr (_X8)
-fld qword ptr (_Q)
-fstp qword ptr (-1452)[ebp]
-fld qword ptr (-1452)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1460)[ebp]
-fld qword ptr (-1460)[ebp]
-fcomp qword ptr (-1452)[ebp]
-fstsw ax
-sahf
-je L408
-mov dword ptr (_Anomaly),1
-jmp L409
-L408:
-mov dword ptr (_Break),0
-L410:
-fld qword ptr (_Z1)
-fmul qword ptr (_Z)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-1468)[ebp]
-fld qword ptr (-1468)[ebp]
-fdiv qword ptr (_Radix)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1476)[ebp]
-fld qword ptr (-1468)[ebp]
-fld qword ptr (-1476)[ebp]
-fmul qword ptr (_Radix)
-fsubp st(1),st
-fstp qword ptr (_X)
-fld qword ptr (_One)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jne L413
-mov dword ptr (_Break),1
-jmp L414
-L413:
-fld qword ptr (_Z1)
-fsub qword ptr (_One)
-fstp qword ptr (_Z1)
-L414:
-L411:
-cmp dword ptr (_Break),0
-jne L415
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jb L410
-L415:
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jb L416
-cmp dword ptr (_Break),0
-jne L416
-mov dword ptr (_Anomaly),1
-jmp L417
-L416:
-fld qword ptr (_RadixD2)
-fcomp qword ptr (_Z1)
-fstsw ax
-sahf
-jae L418
-fld qword ptr (_Z1)
-fsub qword ptr (_Radix)
-fstp qword ptr (_Z1)
-L418:
-L420:
-call _NewD
-add esp,0
-L421:
-fld qword ptr (_U2)
-fmul qword ptr (_D)
-fld qword ptr (_F9)
-fcompp
-fstsw ax
-sahf
-ja L420
-fld qword ptr (_D)
-fmul qword ptr (_Radix)
-fsub qword ptr (_D)
-fld qword ptr (_W)
-fsub qword ptr (_D)
-fcompp
-fstsw ax
-sahf
-je L423
-mov dword ptr (_Anomaly),1
-jmp L424
-L423:
-fld qword ptr (_D)
-fstp qword ptr (_Z2)
-mov dword ptr (_I),0
-fld qword ptr (_D)
-fld qword ptr (_One)
-fadd qword ptr (_Z)
-fmul qword ptr (_Half)
-faddp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (_D)
-fadd qword ptr (_Z)
-fadd qword ptr (_Q)
-fstp qword ptr (_X)
-call _SR3750
-add esp,0
-fld qword ptr (_D)
-fld qword ptr (_One)
-fsub qword ptr (_Z)
-fmul qword ptr (_Half)
-faddp st(1),st
-fadd qword ptr (_D)
-fstp qword ptr (_Y)
-fld qword ptr (_D)
-fsub qword ptr (_Z)
-fadd qword ptr (_D)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-1508)[ebp]
-fld qword ptr (-1508)[ebp]
-fadd qword ptr (_Q)
-fadd qword ptr (-1508)[ebp]
-fstp qword ptr (_X)
-call _SR3750
-add esp,0
-call _NewD
-add esp,0
-fld qword ptr (_D)
-fsub qword ptr (_Z2)
-fld qword ptr (_W)
-fsub qword ptr (_Z2)
-fcompp
-fstsw ax
-sahf
-je L425
-mov dword ptr (_Anomaly),1
-jmp L426
-L425:
-fld qword ptr (_D)
-fsub qword ptr (_Z2)
-fstp qword ptr (-1532)[ebp]
-fld qword ptr (-1532)[ebp]
-fld qword ptr (_Z2)
-fld qword ptr (_One)
-fsub qword ptr (_Z)
-fmul qword ptr (_Half)
-faddp st(1),st
-faddp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (-1532)[ebp]
-fld qword ptr (_Z2)
-fsub qword ptr (_Z)
-fadd qword ptr (_Q)
-faddp st(1),st
-fstp qword ptr (_X)
-call _SR3750
-add esp,0
-fld qword ptr (_One)
-fadd qword ptr (_Z)
-fmul qword ptr (_Half)
-fstp qword ptr (_Y)
-fld qword ptr (_Q)
-fstp qword ptr (_X)
-call _SR3750
-add esp,0
-cmp dword ptr (_I),0
-jne L427
-mov dword ptr (_Anomaly),1
-L427:
-L426:
-L424:
-L417:
-L409:
-L394:
-cmp dword ptr (_I),0
-je L431
-cmp dword ptr (_Anomaly),0
-je L429
-L431:
-lea edi,(L432)
-push edi
-push 0
-call _BadCond
-add esp,8
-fld qword ptr (_W)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L433)
-push edi
-call _printf
-add esp,12
-lea edi,(L434)
-push edi
-call _printf
-add esp,4
-mov dword ptr (_SqRWrng),1
-L429:
-L390:
-cmp dword ptr (_Anomaly),0
-jne L435
-fld qword ptr (_Zero)
-fcomp qword ptr (_MinSqEr)
-fstsw ax
-sahf
-ja L437
-fld qword ptr (_Zero)
-fcomp qword ptr (_MaxSqEr)
-fstsw ax
-sahf
-jb L437
-mov dword ptr (_RSqrt),1
-lea edi,(L439)
-push edi
-call _printf
-add esp,4
-jmp L438
-L437:
-fld qword ptr (_MaxSqEr)
-fadd qword ptr (_U2)
-fld qword ptr (_U2)
-fsub qword ptr (_Half)
-fcompp
-fstsw ax
-sahf
-jb L443
-fld qword ptr (_Half)
-fcomp qword ptr (_MinSqEr)
-fstsw ax
-sahf
-jb L443
-fld qword ptr (_MinSqEr)
-fadd qword ptr (_Radix)
-fld qword ptr (_Half)
-fcompp
-fstsw ax
-sahf
-jbe L440
-L443:
-mov dword ptr (_SqRWrng),1
-jmp L441
-L440:
-mov dword ptr (_RSqrt),2
-lea edi,(L444)
-push edi
-call _printf
-add esp,4
-L441:
-L438:
-L435:
-cmp dword ptr (_SqRWrng),0
-je L445
-lea edi,(L447)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_MinSqEr)
-fsub qword ptr (_Half)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L448)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Half)
-fadd qword ptr (_MaxSqEr)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L449)
-push edi
-call _printf
-add esp,12
-lea edi,(L451)
-push edi
-fld qword ptr (_MaxSqEr)
-fsub qword ptr (_MinSqEr)
-fld qword ptr (_Radix)
-fmul qword ptr (_Radix)
-fcompp
-fstsw ax
-sahf
-jbe L452
-mov dword ptr (-1344)[ebp],1
-jmp L453
-L452:
-mov dword ptr (-1344)[ebp],0
-L453:
-mov edi,dword ptr (-1344)[ebp]
-push edi
-push 1
-call _TstCond
-add esp,12
-L445:
-mov dword ptr (_Milestone),90
-call _Pause
-add esp,0
-lea edi,(L454)
-push edi
-call _printf
-add esp,4
-mov dword ptr (_N),0
-mov dword ptr (_I),0
-fld qword ptr (_Zero)
-fchs
-fstp qword ptr (_Z)
-mov dword ptr (_M),3
-mov dword ptr (_Break),0
-L455:
-fld qword ptr (_One)
-fstp qword ptr (_X)
-call _SR3980
-add esp,0
-cmp dword ptr (_I),10
-jg L458
-mov dword ptr (_I),1023
-call _SR3980
-add esp,0
-L458:
-fld qword ptr (_MinusOne)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L460
-mov dword ptr (_Break),1
-jmp L461
-L460:
-fld qword ptr (_MinusOne)
-fstp qword ptr (_Z)
-call _PrintIfNPositive
-add esp,0
-mov dword ptr (_N),0
-mov dword ptr (_I),-4
-L461:
-L456:
-cmp dword ptr (_Break),0
-je L455
-call _PrintIfNPositive
-add esp,0
-mov edi,dword ptr (_N)
-mov dword ptr (_N1),edi
-mov dword ptr (_N),0
-fld qword ptr (_A1)
-fstp qword ptr (_Z)
-fld qword ptr (_W)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-1348)[ebp]
-fld qword ptr (_A1)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-1356)[ebp]
-fld qword ptr (_Two)
-fmul qword ptr (-1348)[ebp]
-fdiv qword ptr (-1356)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1364)[ebp]
-fld qword ptr (-1364)[ebp]
-call __ftol
-mov dword ptr (_M),eax
-mov dword ptr (_Break),0
-L462:
-fld qword ptr (_Z)
-fstp qword ptr (_X)
-mov dword ptr (_I),1
-call _SR3980
-add esp,0
-fld qword ptr (_AInvrse)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L465
-mov dword ptr (_Break),1
-jmp L466
-L465:
-fld qword ptr (_AInvrse)
-fstp qword ptr (_Z)
-L466:
-L463:
-cmp dword ptr (_Break),0
-je L462
-mov dword ptr (_Milestone),100
-mov edi,dword ptr (_NoTrials)
-mov dword ptr (_M),edi
-fld qword ptr (_Three)
-fstp qword ptr (_Z)
-L467:
-fld qword ptr (_Z)
-fstp qword ptr (_X)
-mov dword ptr (_I),1
-call _SR3980
-add esp,0
-L470:
-fld qword ptr (_Z)
-fadd qword ptr (_Two)
-fstp qword ptr (_Z)
-L471:
-fld qword ptr (_Z)
-fdiv qword ptr (_Three)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1380)[ebp]
-fld qword ptr (_Three)
-fmul qword ptr (-1380)[ebp]
-fld qword ptr (_Z)
-fcompp
-fstsw ax
-sahf
-je L470
-L468:
-fld qword ptr (_Eight)
-fmul qword ptr (_Three)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-ja L467
-cmp dword ptr (_N),0
-jle L473
-lea edi,(L475)
-push edi
-call _printf
-add esp,4
-lea edi,(L476)
-push edi
-call _printf
-add esp,4
-L473:
-call _PrintIfNPositive
-add esp,0
-mov edi,dword ptr (_N1)
-add dword ptr (_N),edi
-cmp dword ptr (_N),0
-jne L477
-lea edi,(L479)
-push edi
-call _printf
-add esp,4
-L477:
-cmp dword ptr (_N),0
-jle L480
-call _Pause
-add esp,0
-jmp L481
-L480:
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-L481:
-mov dword ptr (_Milestone),110
-lea edi,(L482)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_U1)
-fstp qword ptr (_D)
-fld qword ptr (_Precision)
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1380)[ebp]
-fld qword ptr (-1380)[ebp]
-fcomp qword ptr (_Precision)
-fstsw ax
-sahf
-je L483
-fld qword ptr (_BInvrse)
-fstp qword ptr (_D)
-fld qword ptr (_Precision)
-fstp qword ptr (_X)
-L485:
-fld qword ptr (_D)
-fmul qword ptr (_BInvrse)
-fstp qword ptr (_D)
-fld qword ptr (_X)
-fsub qword ptr (_One)
-fstp qword ptr (_X)
-L486:
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jb L485
-L483:
-fld qword ptr (_One)
-fstp qword ptr (_Y)
-fld qword ptr (_D)
-fstp qword ptr (_Z)
-L488:
-fld qword ptr (_Y)
-fstp qword ptr (_C)
-fld qword ptr (_Z)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fstp qword ptr (-1388)[ebp]
-fld qword ptr (-1388)[ebp]
-fmul qword ptr (-1388)[ebp]
-fstp qword ptr (_Z)
-L489:
-fld qword ptr (_Z)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jae L491
-fld qword ptr (_Z)
-fadd qword ptr (_Z)
-fld qword ptr (_Z)
-fcompp
-fstsw ax
-sahf
-jb L488
-L491:
-fld qword ptr (_C)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fmul qword ptr (_D)
-fstp qword ptr (_Z)
-L492:
-fld qword ptr (_Y)
-fstp qword ptr (_C)
-fld qword ptr (_Z)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fmul qword ptr (_D)
-fstp qword ptr (_Z)
-L493:
-fld qword ptr (_Z)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jae L495
-fld qword ptr (_Z)
-fadd qword ptr (_Z)
-fld qword ptr (_Z)
-fcompp
-fstsw ax
-sahf
-jb L492
-L495:
-fld qword ptr (_Two)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-jbe L496
-fld qword ptr (_Two)
-fstp qword ptr (_HInvrse)
-jmp L497
-L496:
-fld qword ptr (_Radix)
-fstp qword ptr (_HInvrse)
-L497:
-fld qword ptr (_One)
-fdiv qword ptr (_HInvrse)
-fstp qword ptr (_H)
-fld qword ptr (_One)
-fdiv qword ptr (_C)
-fstp qword ptr (_CInvrse)
-fld qword ptr (_C)
-fstp qword ptr (_E0)
-fld qword ptr (_E0)
-fmul qword ptr (_H)
-fstp qword ptr (_Z)
-L498:
-fld qword ptr (_E0)
-fstp qword ptr (_Y)
-fld qword ptr (_Z)
-fstp qword ptr (_E0)
-fld qword ptr (_E0)
-fmul qword ptr (_H)
-fstp qword ptr (_Z)
-L499:
-fld qword ptr (_Z)
-fcomp qword ptr (_E0)
-fstsw ax
-sahf
-jae L501
-fld qword ptr (_Z)
-fadd qword ptr (_Z)
-fld qword ptr (_Z)
-fcompp
-fstsw ax
-sahf
-jb L498
-L501:
-fld qword ptr (_E0)
-fstp qword ptr (_UfThold)
-fld qword ptr (_Zero)
-fstp qword ptr (_E1)
-fld qword ptr (_Zero)
-fstp qword ptr (_Q)
-fld qword ptr (_U2)
-fstp qword ptr (_E9)
-fld qword ptr (_One)
-fadd qword ptr (_E9)
-fstp qword ptr (_S)
-fld qword ptr (_C)
-fmul qword ptr (_S)
-fstp qword ptr (_D)
-fld qword ptr (_C)
-fcomp qword ptr (_D)
-fstsw ax
-sahf
-jb L502
-fld qword ptr (_Radix)
-fmul qword ptr (_U2)
-fstp qword ptr (_E9)
-fld qword ptr (_One)
-fadd qword ptr (_E9)
-fstp qword ptr (_S)
-fld qword ptr (_C)
-fmul qword ptr (_S)
-fstp qword ptr (_D)
-fld qword ptr (_C)
-fcomp qword ptr (_D)
-fstsw ax
-sahf
-jb L503
-lea edi,(L506)
-push edi
-push 0
-call _BadCond
-add esp,8
-fld qword ptr (_E0)
-fstp qword ptr (_Underflow)
-fld qword ptr (_Zero)
-fstp qword ptr (_Y1)
-fld qword ptr (_Z)
-fstp qword ptr (_PseudoZero)
-call _Pause
-add esp,0
-jmp L503
-L502:
-fld qword ptr (_D)
-fstp qword ptr (_Underflow)
-fld qword ptr (_Underflow)
-fmul qword ptr (_H)
-fstp qword ptr (_PseudoZero)
-fld qword ptr (_Zero)
-fstp qword ptr (_UfThold)
-L507:
-fld qword ptr (_Underflow)
-fstp qword ptr (_Y1)
-fld qword ptr (_PseudoZero)
-fstp qword ptr (_Underflow)
-fld qword ptr (_E1)
-fadd qword ptr (_E1)
-fld qword ptr (_E1)
-fcompp
-fstsw ax
-sahf
-jb L510
-fld qword ptr (_Underflow)
-fmul qword ptr (_HInvrse)
-fstp qword ptr (_Y2)
-fld qword ptr (_Y1)
-fsub qword ptr (_Y2)
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-1452)[ebp]
-fld qword ptr (-1452)[ebp]
-fstp qword ptr (_E1)
-fld qword ptr (_Y1)
-fstp qword ptr (_Q)
-fld qword ptr (_Zero)
-fcomp qword ptr (_UfThold)
-fstsw ax
-sahf
-jne L512
-fld qword ptr (_Y2)
-fcomp qword ptr (_Y1)
-fstsw ax
-sahf
-je L512
-fld qword ptr (_Y1)
-fstp qword ptr (_UfThold)
-L512:
-L510:
-fld qword ptr (_PseudoZero)
-fmul qword ptr (_H)
-fstp qword ptr (_PseudoZero)
-L508:
-fld qword ptr (_PseudoZero)
-fcomp qword ptr (_Underflow)
-fstsw ax
-sahf
-jae L514
-fld qword ptr (_PseudoZero)
-fadd qword ptr (_PseudoZero)
-fld qword ptr (_PseudoZero)
-fcompp
-fstsw ax
-sahf
-jb L507
-L514:
-L503:
-fld qword ptr (_Zero)
-fcomp qword ptr (_PseudoZero)
-fstsw ax
-sahf
-je L515
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_PseudoZero)
-fstp qword ptr (_Z)
-fld qword ptr (_Zero)
-fcomp qword ptr (_PseudoZero)
-fstsw ax
-sahf
-jb L517
-lea edi,(L519)
-push edi
-push 0
-call _BadCond
-add esp,8
-lea edi,(L520)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_PseudoZero)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L521)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_PseudoZero)
-fchs
-fstp qword ptr (_X)
-fld qword ptr (_Zero)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jb L518
-lea edi,(L524)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L525)
-push edi
-call _printf
-add esp,12
-jmp L518
-L517:
-lea edi,(L526)
-push edi
-push 3
-call _BadCond
-add esp,8
-fld qword ptr (_PseudoZero)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L527)
-push edi
-call _printf
-add esp,12
-L518:
-call _TstPtUf
-add esp,0
-L515:
-mov dword ptr (_Milestone),120
-fld qword ptr (_CInvrse)
-fmul qword ptr (_Y)
-fld qword ptr (_CInvrse)
-fmul qword ptr (_Y1)
-fcompp
-fstsw ax
-sahf
-jae L528
-fld qword ptr (_H)
-fmul qword ptr (_S)
-fstp qword ptr (_S)
-fld qword ptr (_Underflow)
-fstp qword ptr (_E0)
-L528:
-fld qword ptr (_Zero)
-fcomp qword ptr (_E1)
-fstsw ax
-sahf
-je L530
-fld qword ptr (_E0)
-fcomp qword ptr (_E1)
-fstsw ax
-sahf
-je L530
-lea edi,(L157)
-push edi
-push 2
-call _BadCond
-add esp,8
-fld qword ptr (_E0)
-fcomp qword ptr (_E1)
-fstsw ax
-sahf
-jbe L532
-lea edi,(L534)
-push edi
-call _printf
-add esp,4
-lea edi,(L535)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Zero)
-fcomp qword ptr (_PseudoZero)
-fstsw ax
-sahf
-jne L533
-fld qword ptr (_E1)
-fstp qword ptr (_E0)
-jmp L533
-L532:
-lea edi,(L538)
-push edi
-call _printf
-add esp,4
-lea edi,(L539)
-push edi
-call _printf
-add esp,4
-L533:
-L530:
-fld qword ptr (_E0)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L540)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_E0)
-fstp qword ptr (_Z)
-call _TstPtUf
-add esp,0
-fld qword ptr (_E0)
-fstp qword ptr (_Underflow)
-cmp dword ptr (_N),1
-jne L541
-fld qword ptr (_Y)
-fstp qword ptr (_Underflow)
-L541:
-mov dword ptr (_I),4
-fld qword ptr (_Zero)
-fcomp qword ptr (_E1)
-fstsw ax
-sahf
-jne L543
-mov dword ptr (_I),3
-L543:
-fld qword ptr (_Zero)
-fcomp qword ptr (_UfThold)
-fstsw ax
-sahf
-jne L545
-sub dword ptr (_I),2
-L545:
-mov dword ptr (_UfNGrad),1
-mov edi,dword ptr (_I)
-cmp edi,1
-jl L547
-cmp edi,4
-jg L547
-jmp dword ptr (L570-4)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L570 label byte
-dd L549
-dd L556
-dd L561
-dd L562
-_TEXT ends
-_TEXT segment
-L549:
-fld qword ptr (_Underflow)
-fstp qword ptr (_UfThold)
-fld qword ptr (_CInvrse)
-fmul qword ptr (_Q)
-fld qword ptr (_CInvrse)
-fmul qword ptr (_Y)
-fmul qword ptr (_S)
-fcompp
-fstsw ax
-sahf
-je L550
-fld qword ptr (_Y)
-fstp qword ptr (_UfThold)
-lea edi,(L552)
-push edi
-push 0
-call _BadCond
-add esp,8
-fld qword ptr (_UfThold)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L553)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_C)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L554)
-push edi
-call _printf
-add esp,12
-lea edi,(L555)
-push edi
-call _printf
-add esp,4
-L550:
-call _Pause
-add esp,0
-jmp L548
-L556:
-lea edi,(L557)
-push edi
-push 0
-call _BadCond
-add esp,8
-lea edi,(L558)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Y2)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_Q)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L559)
-push edi
-call _printf
-add esp,20
-fld qword ptr (_Q)
-fsub qword ptr (_Y2)
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-1468)[ebp]
-fld qword ptr (-1468)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L560)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Q)
-fstp qword ptr (_UfThold)
-jmp L548
-L561:
-fld qword ptr (_X)
-fstp qword ptr (_X)
-jmp L548
-L562:
-fld qword ptr (_UfThold)
-fcomp qword ptr (_Q)
-fstsw ax
-sahf
-jne L563
-fld qword ptr (_E0)
-fcomp qword ptr (_E1)
-fstsw ax
-sahf
-jne L563
-fld qword ptr (_UfThold)
-fld qword ptr (_E1)
-fdiv qword ptr (_E9)
-fsubp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-1492)[ebp]
-fld qword ptr (_E1)
-fcomp qword ptr (-1492)[ebp]
-fstsw ax
-sahf
-jb L563
-mov dword ptr (_UfNGrad),0
-lea edi,(L565)
-push edi
-call _printf
-add esp,4
-lea edi,(L566)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_E0)
-fmul qword ptr (_CInvrse)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fld qword ptr (_OneAndHalf)
-fadd qword ptr (_U2)
-fmulp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (_CInvrse)
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fmulp st(1),st
-fstp qword ptr (_X)
-fld qword ptr (_Y)
-fdiv qword ptr (_X)
-fstp qword ptr (_Y)
-fld qword ptr (_E0)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jne L568
-mov dword ptr (-1496)[ebp],1
-jmp L569
-L568:
-mov dword ptr (-1496)[ebp],0
-L569:
-mov edi,dword ptr (-1496)[ebp]
-mov dword ptr (_IEEE),edi
-L563:
-L547:
-L548:
-cmp dword ptr (_UfNGrad),0
-je L572
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-lea edi,(_sigfpe)
-mov dword ptr (_sigsave),edi
-lea edi,(_ovfl_buf)
-push edi
-call __setjmp
-add esp,4
-cmp eax,0
-je L574
-lea edi,(L576)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_H)
-fadd qword ptr (_H)
-fstp qword ptr (_R)
-jmp L575
-L574:
-fld qword ptr (_Underflow)
-fdiv qword ptr (_UfThold)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1460)[ebp]
-fld qword ptr (-1460)[ebp]
-fstp qword ptr (_R)
-L575:
-mov dword ptr (_sigsave),0
-fld qword ptr (_H)
-fcomp qword ptr (_R)
-fstsw ax
-sahf
-jb L577
-fld qword ptr (_R)
-fmul qword ptr (_UfThold)
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fld qword ptr (_One)
-fld qword ptr (_R)
-fmul qword ptr (_H)
-fld qword ptr (_One)
-fadd qword ptr (_H)
-fmulp st(1),st
-faddp st(1),st
-fmulp st(1),st
-fstp qword ptr (_X)
-jmp L578
-L577:
-fld qword ptr (_UfThold)
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fld qword ptr (_One)
-fld qword ptr (_H)
-fmul qword ptr (_H)
-fld qword ptr (_One)
-fadd qword ptr (_H)
-fmulp st(1),st
-faddp st(1),st
-fmulp st(1),st
-fstp qword ptr (_X)
-L578:
-fld qword ptr (_Z)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-je L579
-fld qword ptr (_X)
-fsub qword ptr (_Z)
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L579
-lea edi,(L157)
-push edi
-push 3
-call _BadCond
-add esp,8
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L581)
-push edi
-call _printf
-add esp,20
-fld qword ptr (_X)
-fsub qword ptr (_Z)
-fstp qword ptr (_Z9)
-fld qword ptr (_Z9)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L582)
-push edi
-call _printf
-add esp,12
-lea edi,(L583)
-push edi
-call _printf
-add esp,4
-lea edi,(L584)
-push edi
-call _printf
-add esp,4
-lea edi,(L585)
-push edi
-call _printf
-add esp,4
-lea edi,(L586)
-push edi
-call _printf
-add esp,4
-lea edi,(L587)
-push edi
-call _printf
-add esp,4
-lea edi,(L588)
-push edi
-call _printf
-add esp,4
-lea edi,(_sigfpe)
-mov dword ptr (_sigsave),edi
-lea edi,(_ovfl_buf)
-push edi
-call __setjmp
-add esp,4
-cmp eax,0
-je L589
-lea edi,(L591)
-push edi
-call _printf
-add esp,4
-jmp L590
-L589:
-fld qword ptr (_X)
-fdiv qword ptr (_Z)
-fsub qword ptr (_Half)
-fsub qword ptr (_Half)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L592)
-push edi
-call _printf
-add esp,12
-L590:
-mov dword ptr (_sigsave),0
-L579:
-L572:
-lea edi,(L594)
-push edi
-fld qword ptr (_UfThold)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L593)
-push edi
-call _printf
-add esp,16
-lea edi,(L595)
-push edi
-call _printf
-add esp,4
-lea edi,(L596)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_U1)
-fmul qword ptr (_U1)
-fstp qword ptr (_Y2)
-fld qword ptr (_Y2)
-fstp qword ptr (-1468)[ebp]
-fld qword ptr (-1468)[ebp]
-fmul qword ptr (-1468)[ebp]
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fmul qword ptr (_U1)
-fstp qword ptr (_Y2)
-fld qword ptr (_UfThold)
-fcomp qword ptr (_Y2)
-fstsw ax
-sahf
-jb L597
-fld qword ptr (_E0)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jae L599
-lea edi,(L157)
-push edi
-push 2
-call _BadCond
-add esp,8
-mov dword ptr (_I),5
-jmp L600
-L599:
-lea edi,(L157)
-push edi
-push 1
-call _BadCond
-add esp,8
-mov dword ptr (_I),4
-L600:
-mov edi,dword ptr (_I)
-push edi
-lea edi,(L601)
-push edi
-call _printf
-add esp,8
-L597:
-mov dword ptr (_Milestone),130
-fld qword ptr (_UfThold)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-1476)[ebp]
-fld qword ptr (_HInvrse)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-1484)[ebp]
-fld qword ptr (_Half)
-fld qword ptr (_TwoForty)
-fmul qword ptr (-1476)[ebp]
-fdiv qword ptr (-1484)[ebp]
-fsubp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1492)[ebp]
-fld qword ptr (-1492)[ebp]
-fchs
-fdiv qword ptr (_TwoForty)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fadd qword ptr (_Y)
-fstp qword ptr (_Y2)
-lea edi,(L602)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_HInvrse)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L603)
-push edi
-call _printf
-add esp,20
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_HInvrse)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L604)
-push edi
-call _printf
-add esp,20
-fld qword ptr (_Y2)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_HInvrse)
-sub esp,8
-fstp qword ptr [esp]
-call _pow
-add esp,16
-fstp qword ptr (-1508)[ebp]
-fld qword ptr (-1508)[ebp]
-fstp qword ptr (_V9)
-fld qword ptr (_V9)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L605)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Zero)
-fcomp qword ptr (_V9)
-fstsw ax
-sahf
-ja L608
-fld qword ptr (_Radix)
-fadd qword ptr (_Radix)
-fadd qword ptr (_E9)
-fmul qword ptr (_UfThold)
-fcomp qword ptr (_V9)
-fstsw ax
-sahf
-jae L606
-L608:
-lea edi,(L609)
-push edi
-push 1
-call _BadCond
-add esp,8
-fld qword ptr (_UfThold)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L610)
-push edi
-call _printf
-add esp,12
-jmp L607
-L606:
-fld qword ptr (_UfThold)
-fld qword ptr (_One)
-fadd qword ptr (_E9)
-fmulp st(1),st
-fcomp qword ptr (_V9)
-fstsw ax
-sahf
-jb L611
-lea edi,(L613)
-push edi
-call _printf
-add esp,4
-jmp L612
-L611:
-lea edi,(L609)
-push edi
-push 2
-call _BadCond
-add esp,8
-fld qword ptr (_UfThold)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L610)
-push edi
-call _printf
-add esp,12
-L612:
-L607:
-mov dword ptr (_Milestone),140
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Zero)
-fstp qword ptr (_X)
-mov dword ptr (_I),2
-fld qword ptr (_Two)
-fmul qword ptr (_Three)
-fstp qword ptr (_Y)
-fld qword ptr (_Zero)
-fstp qword ptr (_Q)
-mov dword ptr (_N),0
-L614:
-fld qword ptr (_X)
-fstp qword ptr (_Z)
-inc dword ptr (_I)
-mov edi,dword ptr (_I)
-fld qword ptr (_Y)
-lea edi,[edi][edi]
-push edi
-fild dword ptr 0[esp]
-add esp,4
-fdivp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fadd qword ptr (_Q)
-fstp qword ptr (_R)
-fld qword ptr (_Z)
-fstp qword ptr (-1540)[ebp]
-fld qword ptr (_R)
-fstp qword ptr (-1548)[ebp]
-fld qword ptr (-1540)[ebp]
-fadd qword ptr (-1548)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (-1540)[ebp]
-fsub qword ptr (_X)
-fadd qword ptr (-1548)[ebp]
-fstp qword ptr (_Q)
-L615:
-fld qword ptr (_Z)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jb L614
-fld qword ptr (_OneAndHalf)
-fld qword ptr (_One)
-fdiv qword ptr (_Eight)
-faddp st(1),st
-fld qword ptr (_X)
-fld qword ptr (_OneAndHalf)
-fmul qword ptr (_ThirtyTwo)
-fdivp st(1),st
-faddp st(1),st
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-fstp qword ptr (-1548)[ebp]
-fld qword ptr (-1548)[ebp]
-fmul qword ptr (-1548)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-1556)[ebp]
-fld qword ptr (-1556)[ebp]
-fmul qword ptr (-1556)[ebp]
-fstp qword ptr (_Exp2)
-fld qword ptr (_F9)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fsub qword ptr (_U1)
-fstp qword ptr (_Y)
-fld qword ptr (_Exp2)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L617)
-push edi
-call _printf
-add esp,12
-mov dword ptr (_I),1
-L618:
-fld qword ptr (_X)
-fsub qword ptr (_BInvrse)
-fstp qword ptr (_Z)
-fld qword ptr (_X)
-fadd qword ptr (_One)
-fld qword ptr (_Z)
-fld qword ptr (_One)
-fsub qword ptr (_BInvrse)
-fsubp st(1),st
-fdivp st(1),st
-fstp qword ptr (_Z)
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-call _pow
-add esp,16
-fstp qword ptr (-1588)[ebp]
-fld qword ptr (-1588)[ebp]
-fsub qword ptr (_Exp2)
-fstp qword ptr (_Q)
-fld qword ptr (_Q)
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-1596)[ebp]
-fld qword ptr (_TwoForty)
-fmul qword ptr (_U2)
-fcomp qword ptr (-1596)[ebp]
-fstsw ax
-sahf
-jae L622
-mov dword ptr (_N),1
-fld qword ptr (_X)
-fsub qword ptr (_BInvrse)
-fld qword ptr (_One)
-fsub qword ptr (_BInvrse)
-fsubp st(1),st
-fstp qword ptr (_V9)
-lea edi,(L624)
-push edi
-push 2
-call _BadCond
-add esp,8
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-call _pow
-add esp,16
-fstp qword ptr (-1612)[ebp]
-fld qword ptr (-1612)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L625)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_V9)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L626)
-push edi
-call _printf
-add esp,20
-fld qword ptr (_Q)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L627)
-push edi
-call _printf
-add esp,12
-lea edi,(L628)
-push edi
-call _printf
-add esp,4
-lea edi,(L629)
-push edi
-call _printf
-add esp,4
-jmp L620
-L622:
-fld qword ptr (_Y)
-fstp qword ptr (-1604)[ebp]
-fld qword ptr (-1604)[ebp]
-fsub qword ptr (_X)
-fmul qword ptr (_Two)
-fadd qword ptr (-1604)[ebp]
-fstp qword ptr (_Z)
-fld qword ptr (-1604)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (_Z)
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fsub qword ptr (_F9)
-fstp qword ptr (-1612)[ebp]
-fld qword ptr (_One)
-fld qword ptr (-1612)[ebp]
-fmul qword ptr (-1612)[ebp]
-faddp st(1),st
-fstp qword ptr (_Z)
-fld qword ptr (_One)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jae L630
-mov edi,dword ptr (_NoTrials)
-cmp dword ptr (_I),edi
-jge L630
-inc dword ptr (_I)
-jmp L618
-L630:
-fld qword ptr (_One)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jae L632
-cmp dword ptr (_N),0
-jne L620
-lea edi,(L636)
-push edi
-call _printf
-add esp,4
-jmp L620
-L632:
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fstp qword ptr (_X)
-fld qword ptr (_U2)
-fadd qword ptr (_U2)
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fadd qword ptr (_X)
-fstp qword ptr (_Y)
-mov dword ptr (_I),1
-jmp L618
-L620:
-mov dword ptr (_Milestone),150
-lea edi,(L637)
-push edi
-call _printf
-add esp,4
-mov dword ptr (_N),0
-fld qword ptr (_A1)
-fstp qword ptr (_Z)
-fld qword ptr (_C)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-1564)[ebp]
-fld qword ptr (_A1)
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-1572)[ebp]
-fld qword ptr (_Half)
-fld qword ptr (-1564)[ebp]
-fdiv qword ptr (-1572)[ebp]
-fsubp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-1580)[ebp]
-fld qword ptr (-1580)[ebp]
-fstp qword ptr (_Q)
-mov dword ptr (_Break),0
-L638:
-fld qword ptr (_CInvrse)
-fstp qword ptr (_X)
-fld qword ptr (_Q)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-call _pow
-add esp,16
-fstp qword ptr (-1588)[ebp]
-fld qword ptr (-1588)[ebp]
-fstp qword ptr (_Y)
-call _IsYeqX
-add esp,0
-fld qword ptr (_Q)
-fchs
-fstp qword ptr (_Q)
-fld qword ptr (_C)
-fstp qword ptr (_X)
-fld qword ptr (_Q)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-call _pow
-add esp,16
-fstp qword ptr (-1596)[ebp]
-fld qword ptr (-1596)[ebp]
-fstp qword ptr (_Y)
-call _IsYeqX
-add esp,0
-fld qword ptr (_One)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jbe L641
-mov dword ptr (_Break),1
-jmp L642
-L641:
-fld qword ptr (_AInvrse)
-fstp qword ptr (_Z)
-L642:
-L639:
-cmp dword ptr (_Break),0
-je L638
-call _PrintIfNPositive
-add esp,0
-cmp dword ptr (_N),0
-jne L643
-lea edi,(L645)
-push edi
-call _printf
-add esp,4
-L643:
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-mov dword ptr (_Milestone),160
-call _Pause
-add esp,0
-lea edi,(L646)
-push edi
-call _printf
-add esp,4
-lea edi,(L647)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_CInvrse)
-fchs
-fstp qword ptr (_Y)
-fld qword ptr (_HInvrse)
-fmul qword ptr (_Y)
-fstp qword ptr (_V9)
-lea edi,(_sigfpe)
-mov dword ptr (_sigsave),edi
-lea edi,(_ovfl_buf)
-push edi
-call __setjmp
-add esp,4
-cmp eax,0
-je L648
-mov dword ptr (_I),0
-fld qword ptr (_Y)
-fstp qword ptr (_V9)
-jmp L650
-L648:
-L651:
-fld qword ptr (_Y)
-fstp qword ptr (_V)
-fld qword ptr (_V9)
-fstp qword ptr (_Y)
-fld qword ptr (_HInvrse)
-fmul qword ptr (_Y)
-fstp qword ptr (_V9)
-L652:
-fld qword ptr (_Y)
-fcomp qword ptr (_V9)
-fstsw ax
-sahf
-ja L651
-mov dword ptr (_I),1
-L650:
-mov dword ptr (_sigsave),0
-fld qword ptr (_V9)
-fstp qword ptr (_Z)
-lea edi,(L654)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L655)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Y)
-fchs
-fstp qword ptr (_V9)
-fld qword ptr (_V9)
-fstp qword ptr (_V0)
-fld qword ptr (_V)
-fsub qword ptr (_Y)
-fld qword ptr (_V)
-fadd qword ptr (_V0)
-fcompp
-fstsw ax
-sahf
-jne L656
-lea edi,(L658)
-push edi
-call _printf
-add esp,4
-jmp L657
-L656:
-lea edi,(L659)
-push edi
-call _printf
-add esp,4
-lea edi,(L660)
-push edi
-push 3
-call _BadCond
-add esp,8
-L657:
-fld qword ptr (_Y)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-je L661
-lea edi,(L157)
-push edi
-push 1
-call _BadCond
-add esp,8
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L663)
-push edi
-call _printf
-add esp,20
-L661:
-cmp dword ptr (_I),0
-je L664
-fld qword ptr (_V)
-fld qword ptr (_HInvrse)
-fmul qword ptr (_U2)
-fsub qword ptr (_HInvrse)
-fmulp st(1),st
-fstp qword ptr (_Y)
-fld qword ptr (_Y)
-fld qword ptr (_One)
-fsub qword ptr (_HInvrse)
-fmul qword ptr (_U2)
-fmul qword ptr (_V)
-faddp st(1),st
-fstp qword ptr (_Z)
-fld qword ptr (_V0)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jbe L666
-fld qword ptr (_Z)
-fstp qword ptr (_Y)
-L666:
-fld qword ptr (_V0)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jbe L668
-fld qword ptr (_Y)
-fstp qword ptr (_V)
-L668:
-fld qword ptr (_V0)
-fsub qword ptr (_V)
-fld qword ptr (_V0)
-fcompp
-fstsw ax
-sahf
-jbe L665
-fld qword ptr (_V0)
-fstp qword ptr (_V)
-jmp L665
-L664:
-fld qword ptr (_Y)
-fld qword ptr (_HInvrse)
-fmul qword ptr (_U2)
-fsub qword ptr (_HInvrse)
-fmulp st(1),st
-fstp qword ptr (_V)
-fld qword ptr (_V)
-fld qword ptr (_One)
-fsub qword ptr (_HInvrse)
-fmul qword ptr (_U2)
-fmul qword ptr (_Y)
-faddp st(1),st
-fstp qword ptr (_V)
-L665:
-fld qword ptr (_V)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L672)
-push edi
-call _printf
-add esp,12
-cmp dword ptr (_I),0
-je L673
-fld qword ptr (_V0)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L675)
-push edi
-call _printf
-add esp,12
-jmp L674
-L673:
-lea edi,(L676)
-push edi
-call _printf
-add esp,4
-L674:
-fld qword ptr (_V)
-fmul qword ptr (_One)
-fstp qword ptr (_V9)
-fld qword ptr (_V9)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L677)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_V)
-fdiv qword ptr (_One)
-fstp qword ptr (_V9)
-fld qword ptr (_V9)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L678)
-push edi
-call _printf
-add esp,12
-lea edi,(L679)
-push edi
-call _printf
-add esp,4
-lea edi,(L680)
-push edi
-call _printf
-add esp,4
-mov dword ptr (_Milestone),170
-fld qword ptr (_V)
-fchs
-fld qword ptr (_V)
-fcompp
-fstsw ax
-sahf
-jbe L685
-fld qword ptr (_V0)
-fchs
-fld qword ptr (_V0)
-fcompp
-fstsw ax
-sahf
-jbe L685
-fld qword ptr (_UfThold)
-fchs
-fld qword ptr (_V)
-fcompp
-fstsw ax
-sahf
-jbe L685
-fld qword ptr (_V)
-fcomp qword ptr (_UfThold)
-fstsw ax
-sahf
-ja L681
-L685:
-lea edi,(L686)
-push edi
-push 0
-call _BadCond
-add esp,8
-fld qword ptr (_UfThold)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_V0)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_V)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L687)
-push edi
-call _printf
-add esp,28
-L681:
-mov dword ptr (_Milestone),175
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-mov dword ptr (_Indx),1
-L688:
-mov edi,dword ptr (_Indx)
-cmp edi,1
-je L694
-cmp edi,2
-je L695
-cmp edi,3
-je L696
-jmp L692
-L694:
-fld qword ptr (_UfThold)
-fstp qword ptr (_Z)
-jmp L693
-L695:
-fld qword ptr (_E0)
-fstp qword ptr (_Z)
-jmp L693
-L696:
-fld qword ptr (_PseudoZero)
-fstp qword ptr (_Z)
-L692:
-L693:
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-je L697
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1628)[ebp]
-fld qword ptr (-1628)[ebp]
-fstp qword ptr (_V9)
-fld qword ptr (_V9)
-fmul qword ptr (_V9)
-fstp qword ptr (_Y)
-fld qword ptr (_Radix)
-fmul qword ptr (_E9)
-fstp qword ptr (-1660)[ebp]
-fld qword ptr (_Y)
-fld qword ptr (_One)
-fsub qword ptr (-1660)[ebp]
-fdivp st(1),st
-fld qword ptr (_Z)
-fcompp
-fstsw ax
-sahf
-ja L701
-fld qword ptr (_One)
-fadd qword ptr (-1660)[ebp]
-fmul qword ptr (_Z)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-jae L699
-L701:
-fld qword ptr (_U1)
-fcomp qword ptr (_V9)
-fstsw ax
-sahf
-jae L702
-lea edi,(L157)
-push edi
-push 1
-call _BadCond
-add esp,8
-jmp L703
-L702:
-lea edi,(L157)
-push edi
-push 2
-call _BadCond
-add esp,8
-L703:
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L704)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L705)
-push edi
-call _printf
-add esp,12
-L699:
-L697:
-L689:
-inc dword ptr (_Indx)
-cmp dword ptr (_Indx),3
-jle L688
-mov dword ptr (_Milestone),180
-mov dword ptr (_Indx),1
-L706:
-cmp dword ptr (_Indx),1
-jne L710
-fld qword ptr (_V)
-fstp qword ptr (_Z)
-jmp L711
-L710:
-fld qword ptr (_V0)
-fstp qword ptr (_Z)
-L711:
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-1628)[ebp]
-fld qword ptr (-1628)[ebp]
-fstp qword ptr (_V9)
-fld qword ptr (_V9)
-fstp qword ptr (-1636)[ebp]
-fld qword ptr (_One)
-fld qword ptr (_Radix)
-fmul qword ptr (_E9)
-fsubp st(1),st
-fmul qword ptr (-1636)[ebp]
-fstp qword ptr (_X)
-fld qword ptr (-1636)[ebp]
-fmul qword ptr (_X)
-fstp qword ptr (_V9)
-fld qword ptr (_One)
-fld qword ptr (_Two)
-fmul qword ptr (_Radix)
-fmul qword ptr (_E9)
-fsubp st(1),st
-fmul qword ptr (_Z)
-fcomp qword ptr (_V9)
-fstsw ax
-sahf
-ja L714
-fld qword ptr (_Z)
-fcomp qword ptr (_V9)
-fstsw ax
-sahf
-jae L712
-L714:
-fld qword ptr (_V9)
-fstp qword ptr (_Y)
-fld qword ptr (_W)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jbe L715
-lea edi,(L157)
-push edi
-push 1
-call _BadCond
-add esp,8
-jmp L716
-L715:
-lea edi,(L157)
-push edi
-push 2
-call _BadCond
-add esp,8
-L716:
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L717)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L718)
-push edi
-call _printf
-add esp,12
-L712:
-L707:
-inc dword ptr (_Indx)
-cmp dword ptr (_Indx),2
-jle L706
-mov dword ptr (_Milestone),190
-call _Pause
-add esp,0
-fld qword ptr (_UfThold)
-fmul qword ptr (_V)
-fstp qword ptr (_X)
-fld qword ptr (_Radix)
-fmul qword ptr (_Radix)
-fstp qword ptr (_Y)
-fld qword ptr (_X)
-fmul qword ptr (_Y)
-fld qword ptr (_One)
-fcompp
-fstsw ax
-sahf
-ja L721
-fld qword ptr (_Y)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jae L719
-L721:
-fld qword ptr (_X)
-fmul qword ptr (_Y)
-fld qword ptr (_U1)
-fcompp
-fstsw ax
-sahf
-ja L724
-fld qword ptr (_Y)
-fdiv qword ptr (_U1)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-jae L722
-L724:
-lea edi,(L725)
-push edi
-push 2
-call _BadCond
-add esp,8
-jmp L723
-L722:
-lea edi,(L157)
-push edi
-push 3
-call _BadCond
-add esp,8
-L723:
-lea edi,(L727)
-push edi
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L726)
-push edi
-call _printf
-add esp,16
-L719:
-mov dword ptr (_Milestone),200
-mov dword ptr (_Indx),1
-L728:
-fld qword ptr (_F9)
-fstp qword ptr (_X)
-mov edi,dword ptr (_Indx)
-cmp edi,2
-jl L732
-cmp edi,5
-jg L732
-jmp dword ptr (L738-8)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L738 label byte
-dd L734
-dd L735
-dd L736
-dd L737
-_TEXT ends
-_TEXT segment
-L734:
-fld qword ptr (_One)
-fadd qword ptr (_U2)
-fstp qword ptr (_X)
-jmp L733
-L735:
-fld qword ptr (_V)
-fstp qword ptr (_X)
-jmp L733
-L736:
-fld qword ptr (_UfThold)
-fstp qword ptr (_X)
-jmp L733
-L737:
-fld qword ptr (_Radix)
-fstp qword ptr (_X)
-L732:
-L733:
-fld qword ptr (_X)
-fstp qword ptr (_Y)
-lea edi,(_sigfpe)
-mov dword ptr (_sigsave),edi
-lea edi,(_ovfl_buf)
-push edi
-call __setjmp
-add esp,4
-cmp eax,0
-je L740
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L742)
-push edi
-call _printf
-add esp,12
-jmp L741
-L740:
-fld qword ptr (_Y)
-fdiv qword ptr (_X)
-fsub qword ptr (_Half)
-fsub qword ptr (_Half)
-fstp qword ptr (_V9)
-fld qword ptr (_Zero)
-fcomp qword ptr (_V9)
-fstsw ax
-sahf
-jne L743
-jmp L729
-L743:
-fld qword ptr (_U1)
-fchs
-fcomp qword ptr (_V9)
-fstsw ax
-sahf
-jne L745
-cmp dword ptr (_Indx),5
-jge L745
-lea edi,(L157)
-push edi
-push 3
-call _BadCond
-add esp,8
-jmp L746
-L745:
-lea edi,(L157)
-push edi
-push 1
-call _BadCond
-add esp,8
-L746:
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L747)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_V9)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L748)
-push edi
-call _printf
-add esp,12
-L741:
-mov dword ptr (_sigsave),0
-L729:
-inc dword ptr (_Indx)
-cmp dword ptr (_Indx),5
-jle L728
-mov dword ptr (_Milestone),210
-fld qword ptr (_Zero)
-fstp qword ptr (_MyZero)
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-lea edi,(L749)
-push edi
-call _printf
-add esp,4
-lea edi,(_sigfpe)
-mov dword ptr (_sigsave),edi
-lea edi,(L750)
-push edi
-call _printf
-add esp,4
-lea edi,(_ovfl_buf)
-push edi
-call __setjmp
-add esp,4
-cmp eax,0
-jne L751
-fld qword ptr (_One)
-fdiv qword ptr (_MyZero)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L753)
-push edi
-call _printf
-add esp,12
-L751:
-mov dword ptr (_sigsave),0
-lea edi,(_sigfpe)
-mov dword ptr (_sigsave),edi
-lea edi,(L754)
-push edi
-call _printf
-add esp,4
-lea edi,(_ovfl_buf)
-push edi
-call __setjmp
-add esp,4
-cmp eax,0
-jne L755
-fld qword ptr (_Zero)
-fdiv qword ptr (_MyZero)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L753)
-push edi
-call _printf
-add esp,12
-L755:
-mov dword ptr (_sigsave),0
-mov dword ptr (_Milestone),220
-call _Pause
-add esp,0
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-mov dword ptr (-1648)[ebp],0
-L762:
-mov edi,dword ptr (-1648)[ebp]
-cmp dword ptr (_ErrCnt)[edi*4],0
-je L766
-mov edi,dword ptr (-1648)[ebp]
-lea edi,[edi*4]
-mov esi,dword ptr (_ErrCnt)[edi]
-push esi
-mov edi,dword ptr (L757)[edi]
-push edi
-lea edi,(L768)
-push edi
-call _printf
-add esp,12
-L766:
-L763:
-inc dword ptr (-1648)[ebp]
-cmp dword ptr (-1648)[ebp],4
-jl L762
-lea edi,(L44)
-push edi
-call _printf
-add esp,4
-mov edi,dword ptr (_ErrCnt)
-mov esi,dword ptr (_ErrCnt+4)
-lea edi,[esi][edi]
-mov esi,dword ptr (_ErrCnt+8)
-lea edi,[esi][edi]
-mov esi,dword ptr (_ErrCnt+12)
-lea edi,[esi][edi]
-cmp edi,0
-jle L769
-mov edi,dword ptr (_ErrCnt)
-mov esi,dword ptr (_ErrCnt+4)
-lea edi,[esi][edi]
-mov esi,dword ptr (_ErrCnt+8)
-lea edi,[esi][edi]
-cmp edi,0
-jne L774
-cmp dword ptr (_ErrCnt+12),0
-jle L774
-lea edi,(L779)
-push edi
-call _printf
-add esp,4
-lea edi,(L780)
-push edi
-call _printf
-add esp,4
-L774:
-mov edi,dword ptr (_ErrCnt)
-mov esi,dword ptr (_ErrCnt+4)
-lea edi,[esi][edi]
-cmp edi,0
-jne L781
-cmp dword ptr (_ErrCnt+8),0
-jle L781
-lea edi,(L785)
-push edi
-call _printf
-add esp,4
-lea edi,(L786)
-push edi
-call _printf
-add esp,4
-L781:
-mov edi,dword ptr (_ErrCnt)
-mov esi,dword ptr (_ErrCnt+4)
-lea edi,[esi][edi]
-cmp edi,0
-jle L787
-lea edi,(L790)
-push edi
-call _printf
-add esp,4
-lea edi,(L791)
-push edi
-call _printf
-add esp,4
-L787:
-cmp dword ptr (_ErrCnt),0
-jle L770
-lea edi,(L794)
-push edi
-call _printf
-add esp,4
-lea edi,(L795)
-push edi
-call _printf
-add esp,4
-jmp L770
-L769:
-lea edi,(L796)
-push edi
-call _printf
-add esp,4
-cmp dword ptr (_RMult),1
-jne L801
-cmp dword ptr (_RDiv),1
-jne L801
-cmp dword ptr (_RAddSub),1
-jne L801
-cmp dword ptr (_RSqrt),1
-je L797
-L801:
-lea edi,(L802)
-push edi
-call _printf
-add esp,4
-jmp L798
-L797:
-fld qword ptr (_One)
-fcomp qword ptr (_StickyBit)
-fstsw ax
-sahf
-ja L803
-fld qword ptr (_Radix)
-fsub qword ptr (_Two)
-fld qword ptr (_Radix)
-fsub qword ptr (_Nine)
-fsub qword ptr (_One)
-fmulp st(1),st
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L803
-lea edi,(L805)
-push edi
-call _printf
-add esp,4
-lea edi,(L806)
-push edi
-call _printf
-add esp,4
-fld qword ptr (_Two)
-fcomp qword ptr (_Radix)
-fstsw ax
-sahf
-jne L807
-fld qword ptr (_Precision)
-fld qword ptr (_Four)
-fmul qword ptr (_Three)
-fmul qword ptr (_Two)
-fsubp st(1),st
-fld qword ptr (_Precision)
-fsub qword ptr (_TwentySeven)
-fsub qword ptr (_TwentySeven)
-fadd qword ptr (_One)
-fmulp st(1),st
-fld qword ptr (_Zero)
-fcompp
-fstsw ax
-sahf
-jne L807
-lea edi,(L809)
-push edi
-call _printf
-add esp,4
-jmp L808
-L807:
-lea edi,(L810)
-push edi
-call _printf
-add esp,4
-L808:
-cmp dword ptr (_IEEE),0
-je L811
-lea edi,(L813)
-push edi
-call _printf
-add esp,4
-jmp L812
-L811:
-lea edi,(L814)
-push edi
-call _printf
-add esp,4
-lea edi,(L815)
-push edi
-call _printf
-add esp,4
-L812:
-L803:
-lea edi,(L816)
-push edi
-call _printf
-add esp,4
-L798:
-L770:
-cmp dword ptr (_fpecount),0
-je L817
-mov edi,dword ptr (_fpecount)
-push edi
-lea edi,(L819)
-push edi
-call _printf
-add esp,8
-L817:
-lea edi,(L820)
-push edi
-call _printf
-add esp,4
-mov eax,0
-L6:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _Sign
-_Sign:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-fld qword ptr (L7)
-fcomp qword ptr (20)[ebp]
-fstsw ax
-sahf
-ja L823
-fld qword ptr (L8)
-fstp qword ptr (-8)[ebp]
-jmp L824
-L823:
-fld qword ptr (L825)
-fstp qword ptr (-8)[ebp]
-L824:
-fld qword ptr (-8)[ebp]
-L821:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _Pause
-_Pause:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (_Milestone)
-push edi
-lea edi,(L827)
-push edi
-call _printf
-add esp,8
-mov edi,dword ptr (_PageNo)
-push edi
-lea edi,(L828)
-push edi
-call _printf
-add esp,8
-inc dword ptr (_Milestone)
-inc dword ptr (_PageNo)
-mov eax,0
-L826:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _TstCond
-_TstCond:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-cmp dword ptr (24)[ebp],0
-jne L830
-mov edi,dword ptr (28)[ebp]
-push edi
-mov edi,dword ptr (20)[ebp]
-push edi
-call _BadCond
-add esp,8
-lea edi,(L813)
-push edi
-call _printf
-add esp,4
-L830:
-mov eax,0
-L829:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L833 label byte
-dd L834
-dd L835
-dd L836
-dd L837
-public _BadCond
-_DATA ends
-_TEXT segment
-_BadCond:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-lea edi,(_ErrCnt)[edi*4]
-inc dword ptr [edi]
-mov edi,dword ptr (24)[ebp]
-push edi
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (L833)[edi*4]
-push edi
-lea edi,(L838)
-push edi
-call _printf
-add esp,12
-mov eax,0
-L832:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _Random
-_Random:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,48
-fld qword ptr (_Random1)
-fadd qword ptr (_Random9)
-fstp qword ptr (-8)[ebp]
-fld qword ptr (-8)[ebp]
-fmul qword ptr (-8)[ebp]
-fstp qword ptr (-16)[ebp]
-fld qword ptr (-16)[ebp]
-fmul qword ptr (-16)[ebp]
-fstp qword ptr (-16)[ebp]
-fld qword ptr (-8)[ebp]
-fmul qword ptr (-16)[ebp]
-fstp qword ptr (-8)[ebp]
-fld qword ptr (-8)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-48)[ebp]
-fld qword ptr (-8)[ebp]
-fsub qword ptr (-48)[ebp]
-fstp qword ptr (-16)[ebp]
-fld qword ptr (-16)[ebp]
-fld qword ptr (L840)
-fmul qword ptr (-8)[ebp]
-faddp st(1),st
-fstp qword ptr (_Random1)
-fld qword ptr (_Random1)
-L839:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _SqXMinX
-_SqXMinX:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,40
-fld qword ptr (_X)
-fmul qword ptr (_BInvrse)
-fstp qword ptr (-8)[ebp]
-fld qword ptr (_X)
-fsub qword ptr (-8)[ebp]
-fstp qword ptr (-16)[ebp]
-fld qword ptr (_X)
-fmul qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-32)[ebp]
-fld qword ptr (-32)[ebp]
-fsub qword ptr (-8)[ebp]
-fsub qword ptr (-16)[ebp]
-fdiv qword ptr (_OneUlp)
-fstp qword ptr (_SqEr)
-fld qword ptr (_Zero)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-je L842
-fld qword ptr (_MinSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jbe L844
-fld qword ptr (_SqEr)
-fstp qword ptr (_MinSqEr)
-L844:
-fld qword ptr (_MaxSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jae L846
-fld qword ptr (_SqEr)
-fstp qword ptr (_MaxSqEr)
-L846:
-fld qword ptr (_J)
-fadd qword ptr (L8)
-fstp qword ptr (_J)
-lea edi,(L44)
-push edi
-mov edi,dword ptr (20)[ebp]
-push edi
-call _BadCond
-add esp,8
-fld qword ptr (_OneUlp)
-fmul qword ptr (_SqEr)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_X)
-fmul qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L848)
-push edi
-call _printf
-add esp,28
-lea edi,(L849)
-push edi
-call _printf
-add esp,4
-L842:
-mov eax,0
-L841:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _NewD
-_NewD:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,40
-fld qword ptr (_Z1)
-fmul qword ptr (_Q)
-fstp qword ptr (_X)
-fld qword ptr (_Half)
-fld qword ptr (_X)
-fdiv qword ptr (_Radix)
-fsubp st(1),st
-sub esp,8
-fstp qword ptr [esp]
-call _floor
-add esp,8
-fstp qword ptr (-8)[ebp]
-fld qword ptr (-8)[ebp]
-fmul qword ptr (_Radix)
-fadd qword ptr (_X)
-fstp qword ptr (_X)
-fld qword ptr (_X)
-fstp qword ptr (-24)[ebp]
-fld qword ptr (_Z)
-fstp qword ptr (-32)[ebp]
-fld qword ptr (_Q)
-fld qword ptr (-24)[ebp]
-fmul qword ptr (-32)[ebp]
-fsubp st(1),st
-fdiv qword ptr (_Radix)
-fld qword ptr (-24)[ebp]
-fmul qword ptr (-24)[ebp]
-fld qword ptr (_D)
-fdiv qword ptr (_Radix)
-fmulp st(1),st
-faddp st(1),st
-fstp qword ptr (_Q)
-fld qword ptr (-32)[ebp]
-fld qword ptr (_Two)
-fmul qword ptr (-24)[ebp]
-fmul qword ptr (_D)
-fsubp st(1),st
-fstp qword ptr (_Z)
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jb L851
-fld qword ptr (_Z)
-fchs
-fstp qword ptr (_Z)
-fld qword ptr (_Z1)
-fchs
-fstp qword ptr (_Z1)
-L851:
-fld qword ptr (_Radix)
-fmul qword ptr (_D)
-fstp qword ptr (_D)
-mov eax,0
-L850:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _SR3750
-_SR3750:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,64
-fld qword ptr (_X)
-fsub qword ptr (_Radix)
-fld qword ptr (_Z2)
-fsub qword ptr (_Radix)
-fcompp
-fstsw ax
-sahf
-ja L854
-fld qword ptr (_X)
-fsub qword ptr (_Z2)
-fld qword ptr (_W)
-fsub qword ptr (_Z2)
-fcompp
-fstsw ax
-sahf
-jb L854
-inc dword ptr (_I)
-fld qword ptr (_X)
-fmul qword ptr (_D)
-sub esp,8
-fstp qword ptr [esp]
-call _sqrt
-add esp,8
-fstp qword ptr (-32)[ebp]
-fld qword ptr (-32)[ebp]
-fstp qword ptr (_X2)
-fld qword ptr (_X2)
-fsub qword ptr (_Z2)
-fld qword ptr (_Y)
-fsub qword ptr (_Z2)
-fsubp st(1),st
-fstp qword ptr (_Y2)
-fld qword ptr (_X8)
-fld qword ptr (_Y)
-fsub qword ptr (_Half)
-fdivp st(1),st
-fstp qword ptr (_X2)
-fld qword ptr (_X2)
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-64)[ebp]
-fld qword ptr (_Half)
-fmul qword ptr (-64)[ebp]
-fmul qword ptr (-64)[ebp]
-fsubp st(1),st
-fstp qword ptr (_X2)
-fld qword ptr (_Y2)
-fadd qword ptr (_Half)
-fld qword ptr (_Half)
-fsub qword ptr (_X2)
-faddp st(1),st
-fstp qword ptr (_SqEr)
-fld qword ptr (_MinSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jbe L856
-fld qword ptr (_SqEr)
-fstp qword ptr (_MinSqEr)
-L856:
-fld qword ptr (_Y2)
-fsub qword ptr (_X2)
-fstp qword ptr (_SqEr)
-fld qword ptr (_MaxSqEr)
-fcomp qword ptr (_SqEr)
-fstsw ax
-sahf
-jae L858
-fld qword ptr (_SqEr)
-fstp qword ptr (_MaxSqEr)
-L858:
-L854:
-mov eax,0
-L853:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _IsYeqX
-_IsYeqX:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-fld qword ptr (_X)
-fcomp qword ptr (_Y)
-fstsw ax
-sahf
-je L861
-cmp dword ptr (_N),0
-jg L863
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L865
-fld qword ptr (_Zero)
-fcomp qword ptr (_Q)
-fstsw ax
-sahf
-jb L865
-lea edi,(L867)
-push edi
-call _printf
-add esp,4
-jmp L866
-L865:
-lea edi,(L868)
-push edi
-push 2
-call _BadCond
-add esp,8
-L866:
-fld qword ptr (_Q)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L869)
-push edi
-call _printf
-add esp,20
-fld qword ptr (_Y)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L870)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L871)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Y)
-fsub qword ptr (_X)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L872)
-push edi
-call _printf
-add esp,12
-L863:
-inc dword ptr (_N)
-L861:
-mov eax,0
-L860:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _SR3980
-_SR3980:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-L874:
-fild dword ptr (_I)
-fstp qword ptr (_Q)
-fld qword ptr (_Q)
-sub esp,8
-fstp qword ptr [esp]
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-call _pow
-add esp,16
-fstp qword ptr (-8)[ebp]
-fld qword ptr (-8)[ebp]
-fstp qword ptr (_Y)
-call _IsYeqX
-add esp,0
-mov edi,dword ptr (_I)
-lea edi,(1)[edi]
-mov dword ptr (_I),edi
-cmp edi,dword ptr (_M)
-jle L877
-jmp L876
-L877:
-fld qword ptr (_Z)
-fmul qword ptr (_X)
-fstp qword ptr (_X)
-L875:
-fld qword ptr (_W)
-fcomp qword ptr (_X)
-fstsw ax
-sahf
-ja L874
-L876:
-mov eax,0
-L873:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _PrintIfNPositive
-_PrintIfNPositive:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-cmp dword ptr (_N),0
-jle L880
-mov edi,dword ptr (_N)
-push edi
-lea edi,(L882)
-push edi
-call _printf
-add esp,8
-L880:
-mov eax,0
-L879:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _TstPtUf
-_TstPtUf:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,48
-mov dword ptr (_N),0
-fld qword ptr (_Zero)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-je L884
-lea edi,(L886)
-push edi
-call _printf
-add esp,4
-lea edi,(L887)
-push edi
-call _printf
-add esp,4
-lea edi,(_sigfpe)
-mov dword ptr (_sigsave),edi
-lea edi,(_ovfl_buf)
-push edi
-call __setjmp
-add esp,4
-cmp eax,0
-je L888
-jmp L890
-L888:
-fld qword ptr (_Z)
-fadd qword ptr (_Z)
-fdiv qword ptr (_Z)
-fstp qword ptr (_Q9)
-fld qword ptr (_Q9)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L891)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Q9)
-fsub qword ptr (_Two)
-sub esp,8
-fstp qword ptr [esp]
-call _fabs
-add esp,8
-fstp qword ptr (-16)[ebp]
-fld qword ptr (_Radix)
-fmul qword ptr (_U2)
-fcomp qword ptr (-16)[ebp]
-fstsw ax
-sahf
-jbe L892
-lea edi,(L894)
-push edi
-call _printf
-add esp,4
-lea edi,(L895)
-push edi
-call _printf
-add esp,4
-jmp L893
-L892:
-fld qword ptr (_One)
-fcomp qword ptr (_Q9)
-fstsw ax
-sahf
-ja L898
-fld qword ptr (_Two)
-fcomp qword ptr (_Q9)
-fstsw ax
-sahf
-jae L896
-L898:
-L890:
-mov dword ptr (_N),1
-mov edi,dword ptr (_ErrCnt+4)
-lea edi,(1)[edi]
-mov dword ptr (_ErrCnt+4),edi
-lea edi,(L901)
-push edi
-call _printf
-add esp,4
-jmp L897
-L896:
-mov dword ptr (_N),1
-mov edi,dword ptr (_ErrCnt+8)
-lea edi,(1)[edi]
-mov dword ptr (_ErrCnt+8),edi
-lea edi,(L904)
-push edi
-call _printf
-add esp,4
-L897:
-L893:
-mov dword ptr (_sigsave),0
-fld qword ptr (_Z)
-fmul qword ptr (_One)
-fstp qword ptr (_V9)
-fld qword ptr (_V9)
-fstp qword ptr (_Random1)
-fld qword ptr (_One)
-fmul qword ptr (_Z)
-fstp qword ptr (_V9)
-fld qword ptr (_V9)
-fstp qword ptr (_Random2)
-fld qword ptr (_Z)
-fdiv qword ptr (_One)
-fstp qword ptr (_V9)
-fld qword ptr (_Random1)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L905
-fld qword ptr (_Random2)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L905
-fld qword ptr (_V9)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-jne L905
-cmp dword ptr (_N),0
-jle L906
-call _Pause
-add esp,0
-jmp L906
-L905:
-mov dword ptr (_N),1
-lea edi,(L909)
-push edi
-push 2
-call _BadCond
-add esp,8
-fld qword ptr (_Z)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L910)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Random1)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-je L911
-fld qword ptr (_Random1)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L913)
-push edi
-call _printf
-add esp,12
-L911:
-fld qword ptr (_Random2)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-je L914
-fld qword ptr (_Random1)
-fcomp qword ptr (_Random2)
-fstsw ax
-sahf
-je L914
-fld qword ptr (_Random2)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L916)
-push edi
-call _printf
-add esp,12
-L914:
-fld qword ptr (_V9)
-fcomp qword ptr (_Z)
-fstsw ax
-sahf
-je L917
-fld qword ptr (_V9)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L919)
-push edi
-call _printf
-add esp,12
-L917:
-fld qword ptr (_Random1)
-fcomp qword ptr (_Random2)
-fstsw ax
-sahf
-je L920
-mov edi,dword ptr (_ErrCnt+8)
-lea edi,(1)[edi]
-mov dword ptr (_ErrCnt+8),edi
-lea edi,(L924)
-push edi
-push 2
-call _BadCond
-add esp,8
-fld qword ptr (_Random2)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L925)
-push edi
-call _printf
-add esp,12
-fld qword ptr (_Random1)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L926)
-push edi
-call _printf
-add esp,12
-L920:
-call _Pause
-add esp,0
-L906:
-L884:
-mov eax,0
-L883:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _notify
-_notify:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-push edi
-lea edi,(L928)
-push edi
-call _printf
-add esp,8
-lea edi,(L929)
-push edi
-call _printf
-add esp,4
-mov eax,0
-L927:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _msglist
-_msglist:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-jmp L932
-L931:
-mov edi,dword ptr (20)[ebp]
-lea esi,(4)[edi]
-mov dword ptr (20)[ebp],esi
-mov edi,dword ptr [edi]
-push edi
-lea edi,(L934)
-push edi
-call _printf
-add esp,8
-L932:
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr [edi]
-cmp edi,0
-jne L931
-mov eax,0
-L930:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L936 label byte
-dd L937
-dd L938
-dd L939
-dd L940
-dd L941
-dd L942
-dd L943
-dd L944
-dd L945
-dd 00H
-public _Instructions
-_DATA ends
-_TEXT segment
-_Instructions:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-lea edi,(L936)
-push edi
-call _msglist
-add esp,4
-mov eax,0
-L935:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L947 label byte
-dd L948
-dd L949
-dd L950
-dd L951
-dd L952
-dd L953
-dd L954
-dd L955
-dd L956
-dd L957
-dd L958
-dd L959
-dd L960
-dd L961
-dd 00H
-public _Heading
-_DATA ends
-_TEXT segment
-_Heading:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-lea edi,(L947)
-push edi
-call _msglist
-add esp,4
-mov eax,0
-L946:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L963 label byte
-dd L964
-dd L965
-dd L966
-dd L967
-dd L968
-dd L969
-dd L970
-dd L971
-dd L972
-dd L973
-dd L974
-dd L975
-dd L976
-dd L977
-dd L978
-dd L979
-dd L980
-dd L981
-dd L982
-dd 00H
-public _Characteristics
-_DATA ends
-_TEXT segment
-_Characteristics:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-lea edi,(L963)
-push edi
-call _msglist
-add esp,4
-mov eax,0
-L962:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-align 4
-L984 label byte
-dd L985
-dd L986
-dd L987
-dd L988
-dd L989
-dd L990
-dd L991
-dd L992
-dd L993
-dd L994
-dd L995
-dd L996
-dd L997
-dd L998
-dd L999
-dd L1000
-dd L1001
-dd 00H
-public _History
-_DATA ends
-_TEXT segment
-_History:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-lea edi,(L984)
-push edi
-call _msglist
-add esp,4
-mov eax,0
-L983:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _pow
-_pow:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,96
-mov dword ptr (-20)[ebp],0
-mov dword ptr (-24)[ebp],0
-fld qword ptr (L7)
-fcomp qword ptr (28)[ebp]
-fstsw ax
-sahf
-jne L1003
-fld qword ptr (L8)
-jmp L1002
-L1003:
-fld qword ptr (L1008)
-fcomp qword ptr (28)[ebp]
-fstsw ax
-sahf
-ja L1007
-fld qword ptr (L1009)
-fcomp qword ptr (28)[ebp]
-fstsw ax
-sahf
-jae L1005
-L1007:
-fld qword ptr (L825)
-fcomp qword ptr (20)[ebp]
-fstsw ax
-sahf
-je L1005
-fld qword ptr (20)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-48)[ebp]
-fld qword ptr (28)[ebp]
-fmul qword ptr (-48)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _exp
-add esp,8
-fstp qword ptr (-56)[ebp]
-fld qword ptr (-56)[ebp]
-jmp L1002
-L1005:
-fld qword ptr (L7)
-fcomp qword ptr (28)[ebp]
-fstsw ax
-sahf
-jbe L1010
-fld qword ptr (28)[ebp]
-fchs
-fstp qword ptr (28)[ebp]
-mov dword ptr (-24)[ebp],1
-L1010:
-lea edi,(-32)[ebp]
-push edi
-fld qword ptr (28)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _modf
-add esp,12
-fstp qword ptr (-64)[ebp]
-fld qword ptr (-64)[ebp]
-fstp qword ptr (28)[ebp]
-fld qword ptr (L7)
-fcomp qword ptr (28)[ebp]
-fstsw ax
-sahf
-je L1012
-fld qword ptr (20)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _log
-add esp,8
-fstp qword ptr (-72)[ebp]
-fld qword ptr (28)[ebp]
-fmul qword ptr (-72)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _exp
-add esp,8
-fstp qword ptr (-80)[ebp]
-fld qword ptr (-80)[ebp]
-fstp qword ptr (-16)[ebp]
-jmp L1013
-L1012:
-fld qword ptr (L8)
-fstp qword ptr (-16)[ebp]
-L1013:
-lea edi,(-8)[ebp]
-push edi
-fld qword ptr (20)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _frexp
-add esp,12
-fstp qword ptr (-88)[ebp]
-fld qword ptr (-88)[ebp]
-fstp qword ptr (20)[ebp]
-fld qword ptr (-32)[ebp]
-call __ftol
-mov dword ptr (-4)[ebp],eax
-cmp eax,0
-je L1014
-L1016:
-mov edi,dword ptr (-4)[ebp]
-and edi,1
-cmp edi,0
-je L1020
-fld qword ptr (-16)[ebp]
-fmul qword ptr (20)[ebp]
-fstp qword ptr (-16)[ebp]
-mov edi,dword ptr (-8)[ebp]
-add dword ptr (-20)[ebp],edi
-L1020:
-mov edi,dword ptr (-4)[ebp]
-sar edi,1
-mov dword ptr (-4)[ebp],edi
-cmp edi,0
-jne L1022
-jmp L1018
-L1022:
-fld qword ptr (20)[ebp]
-fmul qword ptr (20)[ebp]
-fstp qword ptr (20)[ebp]
-sal dword ptr (-8)[ebp],1
-fld qword ptr (L1026)
-fcomp qword ptr (20)[ebp]
-fstsw ax
-sahf
-jbe L1016
-fld qword ptr (L1027)
-fmul qword ptr (20)[ebp]
-fstp qword ptr (20)[ebp]
-dec dword ptr (-8)[ebp]
-jmp L1016
-L1018:
-L1014:
-cmp dword ptr (-24)[ebp],0
-je L1028
-fld qword ptr (L8)
-fdiv qword ptr (-16)[ebp]
-fstp qword ptr (-16)[ebp]
-neg dword ptr (-20)[ebp]
-L1028:
-mov edi,dword ptr (-20)[ebp]
-push edi
-fld qword ptr (-16)[ebp]
-sub esp,8
-fstp qword ptr [esp]
-call _ldexp
-add esp,12
-fstp qword ptr (-96)[ebp]
-fld qword ptr (-96)[ebp]
-L1002:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _modf:near
-_TEXT segment
-_TEXT ends
-extrn _ldexp:near
-_TEXT segment
-_TEXT ends
-extrn _frexp:near
-_TEXT segment
-_TEXT ends
-extrn _exp:near
-_TEXT segment
-_TEXT ends
-extrn _abort:near
-_TEXT segment
-_TEXT ends
-_DATA segment
-public _UfNGrad
-align 4
-_UfNGrad label byte
-db 4 dup (0)
-public _SqRWrng
-align 4
-_SqRWrng label byte
-db 4 dup (0)
-public _IEEE
-align 4
-_IEEE label byte
-db 4 dup (0)
-public _Anomaly
-align 4
-_Anomaly label byte
-db 4 dup (0)
-public _Monot
-align 4
-_Monot label byte
-db 4 dup (0)
-public _NotMonot
-align 4
-_NotMonot label byte
-db 4 dup (0)
-public _Done
-align 4
-_Done label byte
-db 4 dup (0)
-public _Break
-align 4
-_Break label byte
-db 4 dup (0)
-public _RSqrt
-align 4
-_RSqrt label byte
-db 4 dup (0)
-public _RAddSub
-align 4
-_RAddSub label byte
-db 4 dup (0)
-public _RDiv
-align 4
-_RDiv label byte
-db 4 dup (0)
-public _RMult
-align 4
-_RMult label byte
-db 4 dup (0)
-public _GAddSub
-align 4
-_GAddSub label byte
-db 4 dup (0)
-public _GDiv
-align 4
-_GDiv label byte
-db 4 dup (0)
-public _GMult
-align 4
-_GMult label byte
-db 4 dup (0)
-public _N1
-align 4
-_N1 label byte
-db 4 dup (0)
-public _N
-align 4
-_N label byte
-db 4 dup (0)
-public _M
-align 4
-_M label byte
-db 4 dup (0)
-public _PageNo
-align 4
-_PageNo label byte
-db 4 dup (0)
-public _Milestone
-align 4
-_Milestone label byte
-db 4 dup (0)
-public _fpecount
-align 4
-_fpecount label byte
-db 4 dup (0)
-public _ErrCnt
-align 4
-_ErrCnt label byte
-db 16 dup (0)
-public _Z9
-align 4
-_Z9 label byte
-db 8 dup (0)
-public _Z2
-align 4
-_Z2 label byte
-db 8 dup (0)
-public _Z1
-align 4
-_Z1 label byte
-db 8 dup (0)
-public _PseudoZero
-align 4
-_PseudoZero label byte
-db 8 dup (0)
-public _Z
-align 4
-_Z label byte
-db 8 dup (0)
-public _Random2
-align 4
-_Random2 label byte
-db 8 dup (0)
-public _Y2
-align 4
-_Y2 label byte
-db 8 dup (0)
-public _Y1
-align 4
-_Y1 label byte
-db 8 dup (0)
-public _Y
-align 4
-_Y label byte
-db 8 dup (0)
-public _Random1
-align 4
-_Random1 label byte
-db 8 dup (0)
-public _X8
-align 4
-_X8 label byte
-db 8 dup (0)
-public _X2
-align 4
-_X2 label byte
-db 8 dup (0)
-public _X1
-align 4
-_X1 label byte
-db 8 dup (0)
-public _X
-align 4
-_X label byte
-db 8 dup (0)
-public _W
-align 4
-_W label byte
-db 8 dup (0)
-public _V9
-align 4
-_V9 label byte
-db 8 dup (0)
-public _V0
-align 4
-_V0 label byte
-db 8 dup (0)
-public _V
-align 4
-_V label byte
-db 8 dup (0)
-public _U2
-align 4
-_U2 label byte
-db 8 dup (0)
-public _U1
-align 4
-_U1 label byte
-db 8 dup (0)
-public _UfThold
-align 4
-_UfThold label byte
-db 8 dup (0)
-public _OneUlp
-align 4
-_OneUlp label byte
-db 8 dup (0)
-public _S
-align 4
-_S label byte
-db 8 dup (0)
-public _Underflow
-align 4
-_Underflow label byte
-db 8 dup (0)
-public _T
-align 4
-_T label byte
-db 8 dup (0)
-public _Random9
-align 4
-_Random9 label byte
-db 8 dup (0)
-public _R
-align 4
-_R label byte
-db 8 dup (0)
-public _Q9
-align 4
-_Q9 label byte
-db 8 dup (0)
-public _Q
-align 4
-_Q label byte
-db 8 dup (0)
-public _Precision
-align 4
-_Precision label byte
-db 8 dup (0)
-public _MyZero
-align 4
-_MyZero label byte
-db 8 dup (0)
-public _J
-align 4
-_J label byte
-db 8 dup (0)
-public _StickyBit
-align 4
-_StickyBit label byte
-db 8 dup (0)
-public _I
-align 4
-_I label byte
-db 4 dup (0)
-public _HInvrse
-align 4
-_HInvrse label byte
-db 8 dup (0)
-public _H
-align 4
-_H label byte
-db 8 dup (0)
-public _F9
-align 4
-_F9 label byte
-db 8 dup (0)
-public _F6
-align 4
-_F6 label byte
-db 8 dup (0)
-public _Third
-align 4
-_Third label byte
-db 8 dup (0)
-public _E9
-align 4
-_E9 label byte
-db 8 dup (0)
-public _MaxSqEr
-align 4
-_MaxSqEr label byte
-db 8 dup (0)
-public _SqEr
-align 4
-_SqEr label byte
-db 8 dup (0)
-public _MinSqEr
-align 4
-_MinSqEr label byte
-db 8 dup (0)
-public _E3
-align 4
-_E3 label byte
-db 8 dup (0)
-public _Exp2
-align 4
-_Exp2 label byte
-db 8 dup (0)
-public _E1
-align 4
-_E1 label byte
-db 8 dup (0)
-public _E0
-align 4
-_E0 label byte
-db 8 dup (0)
-public _FourD
-align 4
-_FourD label byte
-db 8 dup (0)
-public _D
-align 4
-_D label byte
-db 8 dup (0)
-public _CInvrse
-align 4
-_CInvrse label byte
-db 8 dup (0)
-public _C
-align 4
-_C label byte
-db 8 dup (0)
-public _A1
-align 4
-_A1 label byte
-db 8 dup (0)
-public _AInvrse
-align 4
-_AInvrse label byte
-db 8 dup (0)
-public _ch
-align 1
-_ch label byte
-db 8 dup (0)
-public _Indx
-align 4
-_Indx label byte
-db 4 dup (0)
-public _BMinusU2
-align 4
-_BMinusU2 label byte
-db 8 dup (0)
-public _RadixD2
-align 4
-_RadixD2 label byte
-db 8 dup (0)
-public _BInvrse
-align 4
-_BInvrse label byte
-db 8 dup (0)
-public _Radix
-align 4
-_Radix label byte
-db 8 dup (0)
-public _sigsave
-align 4
-_sigsave label byte
-db 4 dup (0)
-public _ovfl_buf
-align 4
-_ovfl_buf label byte
-db 64 dup (0)
-_DATA ends
-extrn _sqrt:near
-_DATA segment
-_DATA ends
-extrn _log:near
-_DATA segment
-_DATA ends
-extrn _floor:near
-_DATA segment
-_DATA ends
-extrn _fabs:near
-_DATA segment
-_DATA ends
-extrn _longjmp:near
-_DATA segment
-_DATA ends
-extrn __setjmp:near
-_DATA segment
-_DATA ends
-extrn _signal:near
-_DATA segment
-_DATA ends
-extrn _printf:near
-_DATA segment
-_DATA ends
-extrn _fflush:near
-_DATA segment
-_DATA ends
-extrn __iob:near
-_DATA segment
-_DATA ends
-_TEXT segment
-align 4
-L1027 label byte
-dd 00H
-dd 040000000H
-align 4
-L1026 label byte
-dd 00H
-dd 03fe00000H
-align 4
-L1009 label byte
-dd 00H
-dd 040913000H
-align 4
-L1008 label byte
-dd 00H
-dd 0c0913000H
-align 1
-L1001 label byte
-db 115
-db 101
-db 101
-db 32
-db 115
-db 111
-db 117
-db 114
-db 99
-db 101
-db 32
-db 99
-db 111
-db 109
-db 109
-db 101
-db 110
-db 116
-db 115
-db 32
-db 102
-db 111
-db 114
-db 32
-db 109
-db 111
-db 114
-db 101
-db 32
-db 104
-db 105
-db 115
-db 116
-db 111
-db 114
-db 121
-db 46
-db 0
-align 1
-L1000 label byte
-db 66
-db 65
-db 83
-db 73
-db 67
-db 32
-db 118
-db 101
-db 114
-db 115
-db 105
-db 111
-db 110
-db 32
-db 111
-db 102
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 40
-db 67
-db 41
-db 32
-db 49
-db 57
-db 56
-db 51
-db 32
-db 98
-db 121
-db 32
-db 80
-db 114
-db 111
-db 102
-db 46
-db 32
-db 87
-db 46
-db 32
-db 77
-db 46
-db 32
-db 75
-db 97
-db 104
-db 97
-db 110
-db 59
-db 0
-align 1
-L999 label byte
-db 97
-db 115
-db 32
-db 117
-db 115
-db 101
-db 100
-db 32
-db 98
-db 121
-db 32
-db 99
-db 101
-db 114
-db 116
-db 97
-db 105
-db 110
-db 32
-db 101
-db 97
-db 114
-db 108
-db 121
-db 32
-db 87
-db 65
-db 78
-db 71
-db 32
-db 109
-db 97
-db 99
-db 104
-db 105
-db 110
-db 101
-db 115
-db 46
-db 10
-db 0
-align 1
-L998 label byte
-db 102
-db 108
-db 111
-db 97
-db 116
-db 105
-db 110
-db 103
-db 45
-db 112
-db 111
-db 105
-db 110
-db 116
-db 32
-db 110
-db 117
-db 109
-db 98
-db 101
-db 114
-db 115
-db 44
-db 32
-db 98
-db 117
-db 116
-db 32
-db 97
-db 108
-db 115
-db 111
-db 32
-db 97
-db 108
-db 108
-db 111
-db 119
-db 115
-db 32
-db 108
-db 111
-db 103
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 105
-db 99
-db 32
-db 101
-db 110
-db 99
-db 111
-db 100
-db 105
-db 110
-db 103
-db 0
-align 1
-L997 label byte
-db 10
-db 84
-db 104
-db 101
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 105
-db 115
-db 32
-db 98
-db 97
-db 115
-db 101
-db 100
-db 32
-db 117
-db 112
-db 111
-db 110
-db 32
-db 97
-db 32
-db 99
-db 111
-db 110
-db 118
-db 101
-db 110
-db 116
-db 105
-db 111
-db 110
-db 97
-db 108
-db 32
-db 114
-db 97
-db 100
-db 105
-db 120
-db 32
-db 114
-db 101
-db 112
-db 114
-db 101
-db 115
-db 101
-db 110
-db 116
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 102
-db 111
-db 114
-db 0
-align 1
-L996 label byte
-db 111
-db 102
-db 32
-db 112
-db 97
-db 116
-db 104
-db 111
-db 108
-db 111
-db 103
-db 105
-db 101
-db 115
-db 44
-db 32
-db 97
-db 110
-db 100
-db 32
-db 116
-db 111
-db 32
-db 115
-db 97
-db 121
-db 32
-db 104
-db 111
-db 119
-db 32
-db 119
-db 101
-db 108
-db 108
-db 32
-db 116
-db 104
-db 101
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 105
-db 115
-db 32
-db 105
-db 109
-db 112
-db 108
-db 101
-db 109
-db 101
-db 110
-db 116
-db 101
-db 100
-db 46
-db 0
-align 1
-L995 label byte
-db 111
-db 102
-db 32
-db 116
-db 104
-db 101
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 44
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 116
-db 114
-db 105
-db 101
-db 115
-db 32
-db 116
-db 111
-db 32
-db 99
-db 111
-db 112
-db 101
-db 32
-db 119
-db 105
-db 116
-db 104
-db 32
-db 97
-db 32
-db 119
-db 105
-db 100
-db 101
-db 114
-db 32
-db 118
-db 97
-db 114
-db 105
-db 101
-db 116
-db 121
-db 0
-align 1
-L994 label byte
-db 116
-db 104
-db 101
-db 32
-db 82
-db 97
-db 100
-db 105
-db 120
-db 44
-db 32
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 97
-db 110
-db 100
-db 32
-db 114
-db 97
-db 110
-db 103
-db 101
-db 32
-db 40
-db 111
-db 118
-db 101
-db 114
-db 47
-db 117
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 115
-db 41
-db 0
-align 1
-L993 label byte
-db 87
-db 46
-db 32
-db 74
-db 46
-db 32
-db 67
-db 111
-db 100
-db 121
-db 32
-db 97
-db 110
-db 100
-db 32
-db 87
-db 46
-db 32
-db 87
-db 97
-db 105
-db 116
-db 101
-db 46
-db 32
-db 65
-db 108
-db 116
-db 104
-db 111
-db 117
-db 103
-db 104
-db 32
-db 98
-db 111
-db 116
-db 104
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 115
-db 32
-db 116
-db 114
-db 121
-db 32
-db 116
-db 111
-db 32
-db 100
-db 105
-db 115
-db 99
-db 111
-db 118
-db 101
-db 114
-db 0
-align 1
-L992 label byte
-db 98
-db 111
-db 111
-db 107
-db 32
-db 32
-db 96
-db 83
-db 111
-db 102
-db 116
-db 119
-db 97
-db 114
-db 101
-db 32
-db 77
-db 97
-db 110
-db 117
-db 97
-db 108
-db 32
-db 102
-db 111
-db 114
-db 32
-db 116
-db 104
-db 101
-db 32
-db 69
-db 108
-db 101
-db 109
-db 101
-db 110
-db 116
-db 97
-db 114
-db 121
-db 32
-db 70
-db 117
-db 110
-db 99
-db 116
-db 105
-db 111
-db 110
-db 115
-db 39
-db 32
-db 40
-db 49
-db 57
-db 56
-db 48
-db 41
-db 32
-db 98
-db 121
-db 0
-align 1
-L991 label byte
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 99
-db 97
-db 108
-db 108
-db 101
-db 100
-db 32
-db 96
-db 77
-db 65
-db 67
-db 72
-db 65
-db 82
-db 39
-db 44
-db 32
-db 119
-db 104
-db 105
-db 99
-db 104
-db 32
-db 99
-db 97
-db 110
-db 32
-db 98
-db 101
-db 32
-db 102
-db 111
-db 117
-db 110
-db 100
-db 32
-db 97
-db 116
-db 32
-db 116
-db 104
-db 101
-db 32
-db 101
-db 110
-db 100
-db 32
-db 111
-db 102
-db 32
-db 116
-db 104
-db 101
-db 0
-align 1
-L990 label byte
-db 84
-db 104
-db 101
-db 32
-db 100
-db 105
-db 97
-db 103
-db 110
-db 111
-db 115
-db 116
-db 105
-db 99
-db 32
-db 99
-db 97
-db 112
-db 97
-db 98
-db 105
-db 108
-db 105
-db 116
-db 105
-db 101
-db 115
-db 32
-db 111
-db 102
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 103
-db 111
-db 32
-db 98
-db 101
-db 121
-db 111
-db 110
-db 100
-db 32
-db 97
-db 110
-db 32
-db 101
-db 97
-db 114
-db 108
-db 105
-db 101
-db 114
-db 0
-align 1
-L989 label byte
-db 70
-db 97
-db 105
-db 108
-db 117
-db 114
-db 101
-db 115
-db 32
-db 109
-db 97
-db 121
-db 32
-db 99
-db 111
-db 110
-db 102
-db 111
-db 117
-db 110
-db 100
-db 32
-db 115
-db 117
-db 98
-db 115
-db 101
-db 113
-db 117
-db 101
-db 110
-db 116
-db 32
-db 100
-db 105
-db 97
-db 103
-db 110
-db 111
-db 115
-db 101
-db 115
-db 46
-db 10
-db 0
-align 1
-L988 label byte
-db 32
-db 32
-db 32
-db 70
-db 65
-db 73
-db 76
-db 85
-db 82
-db 69
-db 115
-db 44
-db 32
-db 108
-db 105
-db 107
-db 101
-db 32
-db 50
-db 43
-db 50
-db 32
-db 61
-db 61
-db 32
-db 53
-db 32
-db 46
-db 0
-align 1
-L987 label byte
-db 32
-db 32
-db 32
-db 83
-db 101
-db 114
-db 105
-db 111
-db 117
-db 115
-db 32
-db 68
-db 69
-db 70
-db 69
-db 67
-db 84
-db 115
-db 44
-db 32
-db 108
-db 105
-db 107
-db 101
-db 32
-db 108
-db 97
-db 99
-db 107
-db 32
-db 111
-db 102
-db 32
-db 97
-db 32
-db 103
-db 117
-db 97
-db 114
-db 100
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 44
-db 32
-db 97
-db 110
-db 100
-db 0
-align 1
-L986 label byte
-db 32
-db 32
-db 32
-db 70
-db 76
-db 65
-db 87
-db 115
-db 44
-db 32
-db 108
-db 105
-db 107
-db 101
-db 32
-db 108
-db 97
-db 99
-db 107
-db 32
-db 111
-db 102
-db 32
-db 97
-db 32
-db 115
-db 116
-db 105
-db 99
-db 107
-db 121
-db 32
-db 98
-db 105
-db 116
-db 44
-db 0
-align 1
-L985 label byte
-db 84
-db 104
-db 101
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 97
-db 116
-db 116
-db 101
-db 109
-db 112
-db 116
-db 115
-db 32
-db 116
-db 111
-db 32
-db 100
-db 105
-db 115
-db 99
-db 114
-db 105
-db 109
-db 105
-db 110
-db 97
-db 116
-db 101
-db 32
-db 97
-db 109
-db 111
-db 110
-db 103
-db 0
-align 1
-L982 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 68
-db 101
-db 99
-db 105
-db 109
-db 97
-db 108
-db 45
-db 66
-db 105
-db 110
-db 97
-db 114
-db 121
-db 32
-db 99
-db 111
-db 110
-db 118
-db 101
-db 114
-db 115
-db 105
-db 111
-db 110
-db 32
-db 105
-db 115
-db 32
-db 78
-db 79
-db 84
-db 32
-db 89
-db 69
-db 84
-db 32
-db 116
-db 101
-db 115
-db 116
-db 101
-db 100
-db 32
-db 102
-db 111
-db 114
-db 32
-db 97
-db 99
-db 99
-db 117
-db 114
-db 97
-db 99
-db 121
-db 46
-db 0
-align 1
-L981 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 69
-db 120
-db 116
-db 114
-db 97
-db 45
-db 112
-db 114
-db 101
-db 99
-db 105
-db 115
-db 101
-db 32
-db 115
-db 117
-db 98
-db 101
-db 120
-db 112
-db 114
-db 101
-db 115
-db 115
-db 105
-db 111
-db 110
-db 115
-db 32
-db 97
-db 114
-db 101
-db 32
-db 114
-db 101
-db 118
-db 101
-db 97
-db 108
-db 101
-db 100
-db 32
-db 98
-db 117
-db 116
-db 32
-db 78
-db 79
-db 84
-db 32
-db 89
-db 69
-db 84
-db 32
-db 116
-db 101
-db 115
-db 116
-db 101
-db 100
-db 46
-db 0
-align 1
-L980 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 83
-db 113
-db 114
-db 116
-db 32
-db 105
-db 115
-db 32
-db 116
-db 101
-db 115
-db 116
-db 101
-db 100
-db 46
-db 32
-db 32
-db 89
-db 94
-db 88
-db 32
-db 105
-db 115
-db 32
-db 110
-db 111
-db 116
-db 32
-db 116
-db 101
-db 115
-db 116
-db 101
-db 100
-db 46
-db 0
-align 1
-L979 label byte
-db 9
-db 97
-db 110
-db 100
-db 32
-db 102
-db 111
-db 114
-db 32
-db 99
-db 111
-db 110
-db 116
-db 97
-db 109
-db 105
-db 110
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 119
-db 105
-db 116
-db 104
-db 32
-db 112
-db 115
-db 101
-db 117
-db 100
-db 111
-db 45
-db 122
-db 101
-db 114
-db 111
-db 115
-db 46
-db 0
-align 1
-L978 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 67
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 105
-db 111
-db 110
-db 115
-db 32
-db 97
-db 114
-db 101
-db 32
-db 99
-db 104
-db 101
-db 99
-db 107
-db 101
-db 100
-db 32
-db 102
-db 111
-db 114
-db 32
-db 99
-db 111
-db 110
-db 115
-db 105
-db 115
-db 116
-db 101
-db 110
-db 99
-db 121
-db 32
-db 119
-db 105
-db 116
-db 104
-db 32
-db 115
-db 117
-db 98
-db 116
-db 114
-db 97
-db 99
-db 116
-db 105
-db 111
-db 110
-db 0
-align 1
-L977 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 86
-db 48
-db 32
-db 32
-db 116
-db 101
-db 108
-db 108
-db 115
-db 44
-db 32
-db 114
-db 111
-db 117
-db 103
-db 104
-db 108
-db 121
-db 44
-db 32
-db 119
-db 104
-db 101
-db 116
-db 104
-db 101
-db 114
-db 32
-db 32
-db 73
-db 110
-db 102
-db 105
-db 110
-db 105
-db 116
-db 121
-db 32
-db 32
-db 105
-db 115
-db 32
-db 114
-db 101
-db 112
-db 114
-db 101
-db 115
-db 101
-db 110
-db 116
-db 101
-db 100
-db 46
-db 0
-align 1
-L976 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 86
-db 32
-db 61
-db 32
-db 97
-db 110
-db 32
-db 111
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 44
-db 32
-db 114
-db 111
-db 117
-db 103
-db 104
-db 108
-db 121
-db 46
-db 0
-align 1
-L975 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 69
-db 48
-db 32
-db 97
-db 110
-db 100
-db 32
-db 80
-db 115
-db 101
-db 117
-db 100
-db 111
-db 90
-db 101
-db 114
-db 111
-db 32
-db 116
-db 101
-db 108
-db 108
-db 32
-db 119
-db 104
-db 101
-db 116
-db 104
-db 101
-db 114
-db 32
-db 117
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 105
-db 115
-db 32
-db 97
-db 98
-db 114
-db 117
-db 112
-db 116
-db 44
-db 32
-db 103
-db 114
-db 97
-db 100
-db 117
-db 97
-db 108
-db 44
-db 32
-db 111
-db 114
-db 32
-db 102
-db 117
-db 122
-db 122
-db 121
-db 46
-db 0
-align 1
-L974 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 84
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 32
-db 61
-db 32
-db 97
-db 110
-db 32
-db 117
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 46
-db 0
-align 1
-L973 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 87
-db 104
-db 101
-db 116
-db 104
-db 101
-db 114
-db 32
-db 97
-db 32
-db 83
-db 116
-db 105
-db 99
-db 107
-db 121
-db 32
-db 66
-db 105
-db 116
-db 32
-db 117
-db 115
-db 101
-db 100
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 32
-db 102
-db 111
-db 114
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 105
-db 110
-db 103
-db 46
-db 0
-align 1
-L972 label byte
-db 9
-db 102
-db 111
-db 114
-db 32
-db 77
-db 117
-db 108
-db 116
-db 46
-db 44
-db 32
-db 68
-db 105
-db 118
-db 46
-db 44
-db 32
-db 65
-db 100
-db 100
-db 47
-db 83
-db 117
-db 98
-db 116
-db 46
-db 32
-db 97
-db 110
-db 100
-db 32
-db 83
-db 113
-db 114
-db 116
-db 46
-db 0
-align 1
-L971 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 87
-db 104
-db 101
-db 116
-db 104
-db 101
-db 114
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 105
-db 115
-db 32
-db 99
-db 104
-db 111
-db 112
-db 112
-db 101
-db 100
-db 44
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 101
-db 100
-db 44
-db 32
-db 111
-db 114
-db 32
-db 115
-db 111
-db 109
-db 101
-db 116
-db 104
-db 105
-db 110
-db 103
-db 32
-db 101
-db 108
-db 115
-db 101
-db 0
-align 1
-L970 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 65
-db 100
-db 101
-db 113
-db 117
-db 97
-db 99
-db 121
-db 32
-db 111
-db 102
-db 32
-db 103
-db 117
-db 97
-db 114
-db 100
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 102
-db 111
-db 114
-db 32
-db 77
-db 117
-db 108
-db 116
-db 46
-db 44
-db 32
-db 68
-db 105
-db 118
-db 46
-db 32
-db 97
-db 110
-db 100
-db 32
-db 83
-db 117
-db 98
-db 116
-db 46
-db 0
-align 1
-L969 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 85
-db 49
-db 32
-db 61
-db 32
-db 49
-db 47
-db 82
-db 97
-db 100
-db 105
-db 120
-db 94
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 61
-db 32
-db 79
-db 110
-db 101
-db 32
-db 85
-db 108
-db 112
-db 32
-db 111
-db 102
-db 32
-db 110
-db 117
-db 109
-db 98
-db 101
-db 114
-db 115
-db 32
-db 97
-db 32
-db 108
-db 105
-db 116
-db 116
-db 108
-db 101
-db 32
-db 108
-db 101
-db 115
-db 115
-db 32
-db 116
-db 104
-db 97
-db 110
-db 32
-db 49
-db 46
-db 48
-db 32
-db 46
-db 0
-align 1
-L968 label byte
-db 9
-db 40
-db 79
-db 110
-db 101
-db 85
-db 108
-db 112
-db 110
-db 105
-db 116
-db 32
-db 105
-db 110
-db 32
-db 116
-db 104
-db 101
-db 32
-db 76
-db 97
-db 115
-db 116
-db 32
-db 80
-db 108
-db 97
-db 99
-db 101
-db 41
-db 32
-db 111
-db 102
-db 32
-db 49
-db 46
-db 48
-db 48
-db 48
-db 120
-db 120
-db 120
-db 32
-db 46
-db 0
-align 1
-L967 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 85
-db 50
-db 32
-db 61
-db 32
-db 82
-db 97
-db 100
-db 105
-db 120
-db 47
-db 82
-db 97
-db 100
-db 105
-db 120
-db 94
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 61
-db 32
-db 79
-db 110
-db 101
-db 32
-db 85
-db 108
-db 112
-db 0
-align 1
-L966 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 61
-db 32
-db 110
-db 117
-db 109
-db 98
-db 101
-db 114
-db 32
-db 111
-db 102
-db 32
-db 115
-db 105
-db 103
-db 110
-db 105
-db 102
-db 105
-db 99
-db 97
-db 110
-db 116
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 99
-db 97
-db 114
-db 114
-db 105
-db 101
-db 100
-db 46
-db 0
-align 1
-L965 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 61
-db 32
-db 49
-db 44
-db 32
-db 50
-db 44
-db 32
-db 52
-db 44
-db 32
-db 56
-db 44
-db 32
-db 49
-db 48
-db 44
-db 32
-db 49
-db 54
-db 44
-db 32
-db 49
-db 48
-db 48
-db 44
-db 32
-db 50
-db 53
-db 54
-db 32
-db 46
-db 46
-db 46
-db 0
-align 1
-L964 label byte
-db 82
-db 117
-db 110
-db 110
-db 105
-db 110
-db 103
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 115
-db 104
-db 111
-db 117
-db 108
-db 100
-db 32
-db 114
-db 101
-db 118
-db 101
-db 97
-db 108
-db 32
-db 116
-db 104
-db 101
-db 115
-db 101
-db 32
-db 99
-db 104
-db 97
-db 114
-db 97
-db 99
-db 116
-db 101
-db 114
-db 105
-db 115
-db 116
-db 105
-db 99
-db 115
-db 58
-db 0
-align 1
-L961 label byte
-db 9
-db 79
-db 116
-db 104
-db 101
-db 114
-db 32
-db 114
-db 101
-db 108
-db 101
-db 118
-db 97
-db 110
-db 116
-db 32
-db 99
-db 111
-db 109
-db 112
-db 105
-db 108
-db 101
-db 114
-db 32
-db 111
-db 112
-db 116
-db 105
-db 111
-db 110
-db 115
-db 58
-db 0
-align 1
-L960 label byte
-db 9
-db 79
-db 112
-db 116
-db 105
-db 109
-db 105
-db 122
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 108
-db 101
-db 118
-db 101
-db 108
-db 58
-db 10
-db 0
-align 1
-L959 label byte
-db 9
-db 67
-db 111
-db 109
-db 112
-db 105
-db 108
-db 101
-db 114
-db 58
-db 10
-db 0
-align 1
-L958 label byte
-db 9
-db 67
-db 111
-db 109
-db 112
-db 117
-db 116
-db 101
-db 114
-db 58
-db 10
-db 0
-align 1
-L957 label byte
-db 9
-db 86
-db 101
-db 114
-db 115
-db 105
-db 111
-db 110
-db 58
-db 9
-db 49
-db 48
-db 32
-db 70
-db 101
-db 98
-db 114
-db 117
-db 97
-db 114
-db 121
-db 32
-db 49
-db 57
-db 56
-db 57
-db 59
-db 0
-align 1
-L956 label byte
-db 9
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 58
-db 9
-db 100
-db 111
-db 117
-db 98
-db 108
-db 101
-db 59
-db 0
-align 1
-L955 label byte
-db 73
-db 110
-db 32
-db 100
-db 111
-db 105
-db 110
-db 103
-db 32
-db 115
-db 111
-db 44
-db 32
-db 112
-db 108
-db 101
-db 97
-db 115
-db 101
-db 32
-db 105
-db 110
-db 99
-db 108
-db 117
-db 100
-db 101
-db 32
-db 116
-db 104
-db 101
-db 32
-db 102
-db 111
-db 108
-db 108
-db 111
-db 119
-db 105
-db 110
-db 103
-db 32
-db 105
-db 110
-db 102
-db 111
-db 114
-db 109
-db 97
-db 116
-db 105
-db 111
-db 110
-db 58
-db 0
-align 1
-L954 label byte
-db 9
-db 83
-db 97
-db 110
-db 32
-db 70
-db 114
-db 97
-db 110
-db 99
-db 105
-db 115
-db 99
-db 111
-db 44
-db 32
-db 67
-db 65
-db 32
-db 57
-db 52
-db 49
-db 52
-db 51
-db 45
-db 48
-db 55
-db 48
-db 52
-db 44
-db 32
-db 85
-db 83
-db 65
-db 10
-db 0
-align 1
-L953 label byte
-db 9
-db 85
-db 110
-db 105
-db 118
-db 101
-db 114
-db 115
-db 105
-db 116
-db 121
-db 32
-db 111
-db 102
-db 32
-db 67
-db 97
-db 108
-db 105
-db 102
-db 111
-db 114
-db 110
-db 105
-db 97
-db 0
-align 1
-L952 label byte
-db 9
-db 67
-db 111
-db 109
-db 112
-db 117
-db 116
-db 101
-db 114
-db 32
-db 67
-db 101
-db 110
-db 116
-db 101
-db 114
-db 32
-db 85
-db 45
-db 55
-db 54
-db 0
-align 1
-L951 label byte
-db 9
-db 82
-db 105
-db 99
-db 104
-db 97
-db 114
-db 100
-db 32
-db 75
-db 97
-db 114
-db 112
-db 105
-db 110
-db 115
-db 107
-db 105
-db 0
-align 1
-L950 label byte
-db 80
-db 108
-db 101
-db 97
-db 115
-db 101
-db 32
-db 115
-db 101
-db 110
-db 100
-db 32
-db 115
-db 117
-db 103
-db 103
-db 101
-db 115
-db 116
-db 105
-db 111
-db 110
-db 115
-db 32
-db 97
-db 110
-db 100
-db 32
-db 105
-db 110
-db 116
-db 101
-db 114
-db 101
-db 115
-db 116
-db 105
-db 110
-db 103
-db 32
-db 114
-db 101
-db 115
-db 117
-db 108
-db 116
-db 115
-db 32
-db 116
-db 111
-db 0
-align 1
-L949 label byte
-db 99
-db 111
-db 112
-db 101
-db 32
-db 119
-db 105
-db 116
-db 104
-db 32
-db 117
-db 110
-db 97
-db 110
-db 116
-db 105
-db 99
-db 105
-db 112
-db 97
-db 116
-db 101
-db 100
-db 32
-db 97
-db 110
-db 100
-db 32
-db 110
-db 101
-db 119
-db 108
-db 121
-db 32
-db 117
-db 110
-db 99
-db 111
-db 118
-db 101
-db 114
-db 101
-db 100
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 112
-db 97
-db 116
-db 104
-db 111
-db 108
-db 111
-db 103
-db 105
-db 101
-db 115
-db 46
-db 10
-db 0
-align 1
-L948 label byte
-db 85
-db 115
-db 101
-db 114
-db 115
-db 32
-db 97
-db 114
-db 101
-db 32
-db 105
-db 110
-db 118
-db 105
-db 116
-db 101
-db 100
-db 32
-db 116
-db 111
-db 32
-db 104
-db 101
-db 108
-db 112
-db 32
-db 100
-db 101
-db 98
-db 117
-db 103
-db 32
-db 97
-db 110
-db 100
-db 32
-db 97
-db 117
-db 103
-db 109
-db 101
-db 110
-db 116
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 115
-db 111
-db 32
-db 105
-db 116
-db 32
-db 119
-db 105
-db 108
-db 108
-db 0
-align 1
-L945 label byte
-db 65
-db 110
-db 115
-db 119
-db 101
-db 114
-db 32
-db 113
-db 117
-db 101
-db 115
-db 116
-db 105
-db 111
-db 110
-db 115
-db 32
-db 119
-db 105
-db 116
-db 104
-db 32
-db 89
-db 44
-db 32
-db 121
-db 44
-db 32
-db 78
-db 32
-db 111
-db 114
-db 32
-db 110
-db 32
-db 40
-db 117
-db 110
-db 108
-db 101
-db 115
-db 115
-db 32
-db 111
-db 116
-db 104
-db 101
-db 114
-db 119
-db 105
-db 115
-db 101
-db 32
-db 105
-db 110
-db 100
-db 105
-db 99
-db 97
-db 116
-db 101
-db 100
-db 41
-db 46
-db 10
-db 0
-align 1
-L944 label byte
-db 97
-db 109
-db 101
-db 110
-db 100
-db 32
-db 105
-db 116
-db 32
-db 116
-db 111
-db 32
-db 109
-db 97
-db 107
-db 101
-db 32
-db 102
-db 117
-db 114
-db 116
-db 104
-db 101
-db 114
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 101
-db 115
-db 115
-db 46
-db 10
-db 0
-align 1
-L943 label byte
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 97
-db 110
-db 121
-db 119
-db 97
-db 121
-db 32
-db 116
-db 111
-db 32
-db 115
-db 101
-db 101
-db 32
-db 104
-db 111
-db 119
-db 32
-db 109
-db 97
-db 110
-db 121
-db 32
-db 109
-db 105
-db 108
-db 101
-db 115
-db 116
-db 111
-db 110
-db 101
-db 115
-db 32
-db 105
-db 116
-db 32
-db 112
-db 97
-db 115
-db 115
-db 101
-db 115
-db 44
-db 32
-db 97
-db 110
-db 100
-db 32
-db 116
-db 104
-db 101
-db 110
-db 0
-align 1
-L942 label byte
-db 119
-db 97
-db 114
-db 110
-db 105
-db 110
-db 103
-db 46
-db 32
-db 32
-db 73
-db 102
-db 32
-db 112
-db 101
-db 114
-db 115
-db 117
-db 97
-db 115
-db 105
-db 111
-db 110
-db 32
-db 97
-db 118
-db 97
-db 105
-db 108
-db 115
-db 32
-db 110
-db 97
-db 117
-db 103
-db 104
-db 116
-db 44
-db 32
-db 100
-db 111
-db 110
-db 39
-db 116
-db 32
-db 100
-db 101
-db 115
-db 112
-db 97
-db 105
-db 114
-db 32
-db 98
-db 117
-db 116
-db 32
-db 114
-db 117
-db 110
-db 32
-db 116
-db 104
-db 105
-db 115
-db 0
-align 1
-L941 label byte
-db 116
-db 111
-db 32
-db 112
-db 101
-db 114
-db 115
-db 101
-db 118
-db 101
-db 114
-db 101
-db 32
-db 119
-db 105
-db 116
-db 104
-db 32
-db 97
-db 32
-db 115
-db 117
-db 114
-db 114
-db 111
-db 103
-db 97
-db 116
-db 101
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 32
-db 97
-db 102
-db 116
-db 101
-db 114
-db 44
-db 32
-db 112
-db 101
-db 114
-db 104
-db 97
-db 112
-db 115
-db 44
-db 32
-db 100
-db 105
-db 115
-db 112
-db 108
-db 97
-db 121
-db 105
-db 110
-db 103
-db 32
-db 115
-db 111
-db 109
-db 101
-db 0
-align 1
-L940 label byte
-db 101
-db 114
-db 114
-db 111
-db 114
-db 32
-db 108
-db 105
-db 107
-db 101
-db 32
-db 79
-db 118
-db 101
-db 114
-db 47
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 111
-db 114
-db 32
-db 68
-db 105
-db 118
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 98
-db 121
-db 32
-db 90
-db 101
-db 114
-db 111
-db 32
-db 111
-db 99
-db 99
-db 117
-db 114
-db 115
-db 44
-db 32
-db 98
-db 117
-db 116
-db 32
-db 114
-db 97
-db 116
-db 104
-db 101
-db 114
-db 0
-align 1
-L939 label byte
-db 116
-db 114
-db 121
-db 32
-db 116
-db 111
-db 32
-db 112
-db 101
-db 114
-db 115
-db 117
-db 97
-db 100
-db 101
-db 32
-db 116
-db 104
-db 101
-db 32
-db 99
-db 111
-db 109
-db 112
-db 117
-db 116
-db 101
-db 114
-db 32
-db 78
-db 79
-db 84
-db 32
-db 116
-db 111
-db 32
-db 116
-db 101
-db 114
-db 109
-db 105
-db 110
-db 97
-db 116
-db 101
-db 32
-db 101
-db 120
-db 101
-db 99
-db 117
-db 116
-db 105
-db 111
-db 110
-db 32
-db 119
-db 104
-db 101
-db 110
-db 32
-db 97
-db 110
-db 0
-align 1
-L938 label byte
-db 32
-db 32
-db 32
-db 32
-db 96
-db 69
-db 78
-db 68
-db 32
-db 79
-db 70
-db 32
-db 84
-db 69
-db 83
-db 84
-db 39
-db 44
-db 10
-db 0
-align 1
-L937 label byte
-db 76
-db 101
-db 115
-db 116
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 115
-db 116
-db 111
-db 112
-db 32
-db 112
-db 114
-db 101
-db 109
-db 97
-db 116
-db 117
-db 114
-db 101
-db 108
-db 121
-db 44
-db 32
-db 105
-db 46
-db 101
-db 46
-db 32
-db 98
-db 101
-db 102
-db 111
-db 114
-db 101
-db 32
-db 100
-db 105
-db 115
-db 112
-db 108
-db 97
-db 121
-db 105
-db 110
-db 103
-db 10
-db 0
-align 1
-L934 label byte
-db 37
-db 115
-db 10
-db 0
-align 1
-L929 label byte
-db 32
-db 32
-db 32
-db 80
-db 76
-db 69
-db 65
-db 83
-db 69
-db 32
-db 78
-db 79
-db 84
-db 73
-db 70
-db 89
-db 32
-db 75
-db 65
-db 82
-db 80
-db 73
-db 78
-db 75
-db 83
-db 73
-db 33
-db 10
-db 0
-align 1
-L928 label byte
-db 37
-db 115
-db 32
-db 116
-db 101
-db 115
-db 116
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 98
-db 101
-db 32
-db 105
-db 110
-db 99
-db 111
-db 110
-db 115
-db 105
-db 115
-db 116
-db 101
-db 110
-db 116
-db 46
-db 46
-db 46
-db 10
-db 0
-align 1
-L926 label byte
-db 9
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 115
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 90
-db 32
-db 42
-db 32
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 0
-align 1
-L925 label byte
-db 9
-db 67
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 111
-db 110
-db 32
-db 97
-db 108
-db 108
-db 101
-db 103
-db 101
-db 115
-db 32
-db 116
-db 104
-db 97
-db 116
-db 32
-db 49
-db 32
-db 42
-db 32
-db 90
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 0
-align 1
-L924 label byte
-db 77
-db 117
-db 108
-db 116
-db 105
-db 112
-db 108
-db 105
-db 99
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 100
-db 111
-db 101
-db 115
-db 32
-db 110
-db 111
-db 116
-db 32
-db 99
-db 111
-db 109
-db 109
-db 117
-db 116
-db 101
-db 33
-db 10
-db 0
-align 1
-L919 label byte
-db 90
-db 32
-db 47
-db 32
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 0
-align 1
-L916 label byte
-db 49
-db 32
-db 42
-db 32
-db 90
-db 32
-db 61
-db 61
-db 32
-db 37
-db 103
-db 10
-db 0
-align 1
-L913 label byte
-db 90
-db 32
-db 42
-db 32
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 0
-align 1
-L910 label byte
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 9
-db 99
-db 111
-db 109
-db 112
-db 97
-db 114
-db 101
-db 115
-db 32
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 101
-db 110
-db 116
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 32
-db 0
-align 1
-L909 label byte
-db 87
-db 104
-db 97
-db 116
-db 32
-db 112
-db 114
-db 105
-db 110
-db 116
-db 115
-db 32
-db 97
-db 115
-db 32
-db 90
-db 32
-db 61
-db 32
-db 0
-align 1
-L904 label byte
-db 84
-db 104
-db 105
-db 115
-db 32
-db 105
-db 115
-db 32
-db 97
-db 32
-db 68
-db 69
-db 70
-db 69
-db 67
-db 84
-db 33
-db 10
-db 0
-align 1
-L901 label byte
-db 84
-db 104
-db 105
-db 115
-db 32
-db 105
-db 115
-db 32
-db 97
-db 32
-db 86
-db 69
-db 82
-db 89
-db 32
-db 83
-db 69
-db 82
-db 73
-db 79
-db 85
-db 83
-db 32
-db 68
-db 69
-db 70
-db 69
-db 67
-db 84
-db 33
-db 10
-db 0
-align 1
-L895 label byte
-db 32
-db 104
-db 97
-db 115
-db 32
-db 78
-db 79
-db 84
-db 32
-db 106
-db 117
-db 115
-db 116
-db 32
-db 98
-db 101
-db 101
-db 110
-db 32
-db 115
-db 105
-db 103
-db 110
-db 97
-db 108
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L894 label byte
-db 84
-db 104
-db 105
-db 115
-db 32
-db 105
-db 115
-db 32
-db 79
-db 46
-db 75
-db 46
-db 44
-db 32
-db 112
-db 114
-db 111
-db 118
-db 105
-db 100
-db 101
-db 100
-db 32
-db 79
-db 118
-db 101
-db 114
-db 47
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 0
-align 1
-L891 label byte
-db 87
-db 104
-db 97
-db 116
-db 32
-db 116
-db 104
-db 101
-db 32
-db 109
-db 97
-db 99
-db 104
-db 105
-db 110
-db 101
-db 32
-db 103
-db 101
-db 116
-db 115
-db 32
-db 102
-db 111
-db 114
-db 32
-db 40
-db 90
-db 32
-db 43
-db 32
-db 90
-db 41
-db 32
-db 47
-db 32
-db 90
-db 32
-db 105
-db 115
-db 32
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L887 label byte
-db 40
-db 90
-db 32
-db 43
-db 32
-db 90
-db 41
-db 32
-db 47
-db 32
-db 90
-db 32
-db 115
-db 104
-db 111
-db 117
-db 108
-db 100
-db 32
-db 98
-db 101
-db 32
-db 115
-db 97
-db 102
-db 101
-db 46
-db 10
-db 0
-align 1
-L886 label byte
-db 83
-db 105
-db 110
-db 99
-db 101
-db 32
-db 99
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 111
-db 110
-db 32
-db 100
-db 101
-db 110
-db 105
-db 101
-db 115
-db 32
-db 90
-db 32
-db 61
-db 32
-db 48
-db 44
-db 32
-db 101
-db 118
-db 97
-db 108
-db 117
-db 97
-db 116
-db 105
-db 110
-db 103
-db 32
-db 0
-align 1
-L882 label byte
-db 83
-db 105
-db 109
-db 105
-db 108
-db 97
-db 114
-db 32
-db 100
-db 105
-db 115
-db 99
-db 114
-db 101
-db 112
-db 97
-db 110
-db 99
-db 105
-db 101
-db 115
-db 32
-db 104
-db 97
-db 118
-db 101
-db 32
-db 111
-db 99
-db 99
-db 117
-db 114
-db 114
-db 101
-db 100
-db 32
-db 37
-db 100
-db 32
-db 116
-db 105
-db 109
-db 101
-db 115
-db 46
-db 10
-db 0
-align 1
-L872 label byte
-db 9
-db 9
-db 116
-db 104
-db 101
-db 121
-db 32
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 32
-db 98
-db 121
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L871 label byte
-db 9
-db 119
-db 104
-db 105
-db 99
-db 104
-db 32
-db 99
-db 111
-db 109
-db 112
-db 97
-db 114
-db 101
-db 100
-db 32
-db 117
-db 110
-db 101
-db 113
-db 117
-db 97
-db 108
-db 32
-db 116
-db 111
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 59
-db 10
-db 0
-align 1
-L870 label byte
-db 9
-db 121
-db 105
-db 101
-db 108
-db 100
-db 101
-db 100
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 59
-db 10
-db 0
-align 1
-L869 label byte
-db 9
-db 40
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 32
-db 94
-db 32
-db 40
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 10
-db 0
-align 1
-L868 label byte
-db 99
-db 111
-db 109
-db 112
-db 117
-db 116
-db 105
-db 110
-db 103
-db 10
-db 0
-align 1
-L867 label byte
-db 87
-db 65
-db 82
-db 78
-db 73
-db 78
-db 71
-db 58
-db 32
-db 32
-db 99
-db 111
-db 109
-db 112
-db 117
-db 116
-db 105
-db 110
-db 103
-db 10
-db 0
-align 1
-L849 label byte
-db 9
-db 105
-db 110
-db 115
-db 116
-db 101
-db 97
-db 100
-db 32
-db 111
-db 102
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 32
-db 48
-db 32
-db 46
-db 10
-db 0
-align 1
-L848 label byte
-db 115
-db 113
-db 114
-db 116
-db 40
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 32
-db 45
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 0
-align 4
-L840 label byte
-dd 088e368f1H
-dd 03ed4f8b5H
-align 1
-L838 label byte
-db 37
-db 115
-db 58
-db 32
-db 32
-db 37
-db 115
-db 0
-align 1
-L837 label byte
-db 70
-db 76
-db 65
-db 87
-db 0
-align 1
-L836 label byte
-db 68
-db 69
-db 70
-db 69
-db 67
-db 84
-db 0
-align 1
-L835 label byte
-db 83
-db 69
-db 82
-db 73
-db 79
-db 85
-db 83
-db 32
-db 68
-db 69
-db 70
-db 69
-db 67
-db 84
-db 0
-align 1
-L834 label byte
-db 70
-db 65
-db 73
-db 76
-db 85
-db 82
-db 69
-db 0
-align 1
-L828 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 80
-db 97
-db 103
-db 101
-db 58
-db 32
-db 37
-db 100
-db 10
-db 10
-db 0
-align 1
-L827 label byte
-db 10
-db 68
-db 105
-db 97
-db 103
-db 110
-db 111
-db 115
-db 105
-db 115
-db 32
-db 114
-db 101
-db 115
-db 117
-db 109
-db 101
-db 115
-db 32
-db 97
-db 102
-db 116
-db 101
-db 114
-db 32
-db 109
-db 105
-db 108
-db 101
-db 115
-db 116
-db 111
-db 110
-db 101
-db 32
-db 78
-db 117
-db 109
-db 98
-db 101
-db 114
-db 32
-db 37
-db 100
-db 0
-align 4
-L825 label byte
-dd 00H
-dd 0bff00000H
-align 1
-L820 label byte
-db 69
-db 78
-db 68
-db 32
-db 79
-db 70
-db 32
-db 84
-db 69
-db 83
-db 84
-db 46
-db 10
-db 0
-align 1
-L819 label byte
-db 10
-db 65
-db 32
-db 116
-db 111
-db 116
-db 97
-db 108
-db 32
-db 111
-db 102
-db 32
-db 37
-db 100
-db 32
-db 102
-db 108
-db 111
-db 97
-db 116
-db 105
-db 110
-db 103
-db 32
-db 112
-db 111
-db 105
-db 110
-db 116
-db 32
-db 101
-db 120
-db 99
-db 101
-db 112
-db 116
-db 105
-db 111
-db 110
-db 115
-db 32
-db 119
-db 101
-db 114
-db 101
-db 32
-db 114
-db 101
-db 103
-db 105
-db 115
-db 116
-db 101
-db 114
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L816 label byte
-db 84
-db 104
-db 101
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 100
-db 105
-db 97
-db 103
-db 110
-db 111
-db 115
-db 101
-db 100
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 98
-db 101
-db 32
-db 69
-db 120
-db 99
-db 101
-db 108
-db 108
-db 101
-db 110
-db 116
-db 33
-db 10
-db 0
-align 1
-L815 label byte
-db 32
-db 100
-db 117
-db 114
-db 105
-db 110
-db 103
-db 32
-db 71
-db 114
-db 97
-db 100
-db 117
-db 97
-db 108
-db 32
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 46
-db 10
-db 0
-align 1
-L814 label byte
-db 44
-db 10
-db 101
-db 120
-db 99
-db 101
-db 112
-db 116
-db 32
-db 102
-db 111
-db 114
-db 32
-db 112
-db 111
-db 115
-db 115
-db 105
-db 98
-db 108
-db 121
-db 32
-db 68
-db 111
-db 117
-db 98
-db 108
-db 101
-db 32
-db 82
-db 111
-db 117
-db 110
-db 100
-db 105
-db 110
-db 103
-db 0
-align 1
-L813 label byte
-db 46
-db 10
-db 0
-align 1
-L810 label byte
-db 56
-db 53
-db 52
-db 0
-align 1
-L809 label byte
-db 55
-db 53
-db 52
-db 0
-align 1
-L806 label byte
-db 116
-db 104
-db 101
-db 32
-db 112
-db 114
-db 111
-db 112
-db 111
-db 115
-db 101
-db 100
-db 32
-db 73
-db 69
-db 69
-db 69
-db 32
-db 115
-db 116
-db 97
-db 110
-db 100
-db 97
-db 114
-db 100
-db 32
-db 80
-db 0
-align 1
-L805 label byte
-db 82
-db 111
-db 117
-db 110
-db 100
-db 105
-db 110
-db 103
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 99
-db 111
-db 110
-db 102
-db 111
-db 114
-db 109
-db 32
-db 116
-db 111
-db 32
-db 0
-align 1
-L802 label byte
-db 84
-db 104
-db 101
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 100
-db 105
-db 97
-db 103
-db 110
-db 111
-db 115
-db 101
-db 100
-db 32
-db 115
-db 101
-db 101
-db 109
-db 115
-db 32
-db 83
-db 97
-db 116
-db 105
-db 115
-db 102
-db 97
-db 99
-db 116
-db 111
-db 114
-db 121
-db 46
-db 10
-db 0
-align 1
-L796 label byte
-db 78
-db 111
-db 32
-db 102
-db 97
-db 105
-db 108
-db 117
-db 114
-db 101
-db 115
-db 44
-db 32
-db 100
-db 101
-db 102
-db 101
-db 99
-db 116
-db 115
-db 32
-db 110
-db 111
-db 114
-db 32
-db 102
-db 108
-db 97
-db 119
-db 115
-db 32
-db 104
-db 97
-db 118
-db 101
-db 32
-db 98
-db 101
-db 101
-db 110
-db 32
-db 100
-db 105
-db 115
-db 99
-db 111
-db 118
-db 101
-db 114
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L795 label byte
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 39
-db 115
-db 32
-db 115
-db 117
-db 98
-db 115
-db 101
-db 113
-db 117
-db 101
-db 110
-db 116
-db 32
-db 100
-db 105
-db 97
-db 103
-db 110
-db 111
-db 115
-db 101
-db 115
-db 46
-db 10
-db 0
-align 1
-L794 label byte
-db 80
-db 111
-db 116
-db 101
-db 110
-db 116
-db 105
-db 97
-db 108
-db 108
-db 121
-db 32
-db 102
-db 97
-db 116
-db 97
-db 108
-db 32
-db 70
-db 65
-db 73
-db 76
-db 85
-db 82
-db 69
-db 32
-db 109
-db 97
-db 121
-db 32
-db 104
-db 97
-db 118
-db 101
-db 32
-db 115
-db 112
-db 111
-db 105
-db 108
-db 101
-db 100
-db 32
-db 116
-db 104
-db 105
-db 115
-db 0
-align 1
-L791 label byte
-db 117
-db 110
-db 97
-db 99
-db 99
-db 101
-db 112
-db 116
-db 97
-db 98
-db 108
-db 101
-db 32
-db 83
-db 101
-db 114
-db 105
-db 111
-db 117
-db 115
-db 32
-db 68
-db 101
-db 102
-db 101
-db 99
-db 116
-db 115
-db 46
-db 10
-db 0
-align 1
-L790 label byte
-db 84
-db 104
-db 101
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 100
-db 105
-db 97
-db 103
-db 110
-db 111
-db 115
-db 101
-db 100
-db 32
-db 104
-db 97
-db 115
-db 32
-db 0
-align 1
-L786 label byte
-db 100
-db 101
-db 115
-db 112
-db 105
-db 116
-db 101
-db 32
-db 105
-db 110
-db 99
-db 111
-db 110
-db 118
-db 101
-db 110
-db 105
-db 101
-db 110
-db 116
-db 32
-db 68
-db 101
-db 102
-db 101
-db 99
-db 116
-db 115
-db 46
-db 10
-db 0
-align 1
-L785 label byte
-db 84
-db 104
-db 101
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 100
-db 105
-db 97
-db 103
-db 110
-db 111
-db 115
-db 101
-db 100
-db 32
-db 109
-db 97
-db 121
-db 32
-db 98
-db 101
-db 32
-db 65
-db 99
-db 99
-db 101
-db 112
-db 116
-db 97
-db 98
-db 108
-db 101
-db 10
-db 0
-align 1
-L780 label byte
-db 83
-db 97
-db 116
-db 105
-db 115
-db 102
-db 97
-db 99
-db 116
-db 111
-db 114
-db 121
-db 32
-db 116
-db 104
-db 111
-db 117
-db 103
-db 104
-db 32
-db 102
-db 108
-db 97
-db 119
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L779 label byte
-db 84
-db 104
-db 101
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 100
-db 105
-db 97
-db 103
-db 110
-db 111
-db 115
-db 101
-db 100
-db 32
-db 115
-db 101
-db 101
-db 109
-db 115
-db 32
-db 0
-align 1
-L768 label byte
-db 84
-db 104
-db 101
-db 32
-db 110
-db 117
-db 109
-db 98
-db 101
-db 114
-db 32
-db 111
-db 102
-db 32
-db 32
-db 37
-db 45
-db 50
-db 57
-db 115
-db 32
-db 37
-db 100
-db 46
-db 10
-db 0
-align 1
-L761 label byte
-db 70
-db 76
-db 65
-db 87
-db 115
-db 32
-db 32
-db 100
-db 105
-db 115
-db 99
-db 111
-db 118
-db 101
-db 114
-db 101
-db 100
-db 32
-db 61
-db 0
-align 1
-L760 label byte
-db 68
-db 69
-db 70
-db 69
-db 67
-db 84
-db 115
-db 32
-db 32
-db 100
-db 105
-db 115
-db 99
-db 111
-db 118
-db 101
-db 114
-db 101
-db 100
-db 32
-db 61
-db 0
-align 1
-L759 label byte
-db 83
-db 69
-db 82
-db 73
-db 79
-db 85
-db 83
-db 32
-db 68
-db 69
-db 70
-db 69
-db 67
-db 84
-db 115
-db 32
-db 32
-db 100
-db 105
-db 115
-db 99
-db 111
-db 118
-db 101
-db 114
-db 101
-db 100
-db 32
-db 61
-db 0
-align 1
-L758 label byte
-db 70
-db 65
-db 73
-db 76
-db 85
-db 82
-db 69
-db 115
-db 32
-db 32
-db 101
-db 110
-db 99
-db 111
-db 117
-db 110
-db 116
-db 101
-db 114
-db 101
-db 100
-db 32
-db 61
-db 0
-align 1
-L754 label byte
-db 10
-db 32
-db 32
-db 32
-db 32
-db 84
-db 114
-db 121
-db 105
-db 110
-db 103
-db 32
-db 116
-db 111
-db 32
-db 99
-db 111
-db 109
-db 112
-db 117
-db 116
-db 101
-db 32
-db 48
-db 32
-db 47
-db 32
-db 48
-db 32
-db 112
-db 114
-db 111
-db 100
-db 117
-db 99
-db 101
-db 115
-db 32
-db 46
-db 46
-db 46
-db 0
-align 1
-L753 label byte
-db 32
-db 32
-db 37
-db 46
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L750 label byte
-db 32
-db 32
-db 32
-db 32
-db 84
-db 114
-db 121
-db 105
-db 110
-db 103
-db 32
-db 116
-db 111
-db 32
-db 99
-db 111
-db 109
-db 112
-db 117
-db 116
-db 101
-db 32
-db 49
-db 32
-db 47
-db 32
-db 48
-db 32
-db 112
-db 114
-db 111
-db 100
-db 117
-db 99
-db 101
-db 115
-db 32
-db 46
-db 46
-db 46
-db 0
-align 1
-L749 label byte
-db 87
-db 104
-db 97
-db 116
-db 32
-db 109
-db 101
-db 115
-db 115
-db 97
-db 103
-db 101
-db 32
-db 97
-db 110
-db 100
-db 47
-db 111
-db 114
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 115
-db 32
-db 100
-db 111
-db 101
-db 115
-db 32
-db 68
-db 105
-db 118
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 98
-db 121
-db 32
-db 90
-db 101
-db 114
-db 111
-db 32
-db 112
-db 114
-db 111
-db 100
-db 117
-db 99
-db 101
-db 63
-db 10
-db 0
-align 1
-L748 label byte
-db 32
-db 32
-db 105
-db 110
-db 115
-db 116
-db 101
-db 97
-db 100
-db 44
-db 32
-db 88
-db 32
-db 47
-db 32
-db 88
-db 32
-db 45
-db 32
-db 49
-db 47
-db 50
-db 32
-db 45
-db 32
-db 49
-db 47
-db 50
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L747 label byte
-db 32
-db 32
-db 88
-db 32
-db 47
-db 32
-db 88
-db 32
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 115
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 49
-db 32
-db 119
-db 104
-db 101
-db 110
-db 32
-db 88
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 0
-align 1
-L742 label byte
-db 32
-db 32
-db 88
-db 32
-db 47
-db 32
-db 88
-db 32
-db 32
-db 116
-db 114
-db 97
-db 112
-db 115
-db 32
-db 119
-db 104
-db 101
-db 110
-db 32
-db 88
-db 32
-db 61
-db 32
-db 37
-db 103
-db 10
-db 0
-align 1
-L727 label byte
-db 105
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 102
-db 97
-db 114
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 49
-db 46
-db 10
-db 0
-align 1
-L726 label byte
-db 32
-db 117
-db 110
-db 98
-db 97
-db 108
-db 97
-db 110
-db 99
-db 101
-db 100
-db 32
-db 114
-db 97
-db 110
-db 103
-db 101
-db 59
-db 32
-db 85
-db 102
-db 84
-db 104
-db 111
-db 108
-db 100
-db 32
-db 42
-db 32
-db 86
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 9
-db 37
-db 115
-db 10
-db 0
-align 1
-L725 label byte
-db 66
-db 97
-db 100
-db 108
-db 121
-db 0
-align 1
-L718 label byte
-db 32
-db 105
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 102
-db 97
-db 114
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 115
-db 113
-db 114
-db 116
-db 40
-db 90
-db 41
-db 32
-db 94
-db 32
-db 50
-db 32
-db 40
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 32
-db 46
-db 10
-db 0
-align 1
-L717 label byte
-db 67
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 111
-db 110
-db 32
-db 97
-db 108
-db 108
-db 101
-db 103
-db 101
-db 115
-db 32
-db 116
-db 104
-db 97
-db 116
-db 32
-db 90
-db 32
-db 61
-db 32
-db 37
-db 49
-db 55
-db 101
-db 10
-db 0
-align 1
-L705 label byte
-db 32
-db 105
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 102
-db 97
-db 114
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 115
-db 113
-db 114
-db 116
-db 40
-db 90
-db 41
-db 32
-db 94
-db 32
-db 50
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L704 label byte
-db 67
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 111
-db 110
-db 32
-db 97
-db 108
-db 108
-db 101
-db 103
-db 101
-db 115
-db 32
-db 116
-db 104
-db 97
-db 116
-db 32
-db 119
-db 104
-db 97
-db 116
-db 32
-db 112
-db 114
-db 105
-db 110
-db 116
-db 115
-db 32
-db 97
-db 115
-db 32
-db 90
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 0
-align 1
-L687 label byte
-db 43
-db 45
-db 37
-db 103
-db 44
-db 32
-db 43
-db 45
-db 37
-db 103
-db 10
-db 97
-db 110
-db 100
-db 32
-db 43
-db 45
-db 37
-db 103
-db 32
-db 97
-db 114
-db 101
-db 32
-db 99
-db 111
-db 110
-db 102
-db 117
-db 115
-db 101
-db 100
-db 32
-db 98
-db 121
-db 32
-db 79
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 46
-db 0
-align 1
-L686 label byte
-db 67
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 111
-db 110
-db 115
-db 32
-db 105
-db 110
-db 118
-db 111
-db 108
-db 118
-db 105
-db 110
-db 103
-db 32
-db 0
-align 1
-L680 label byte
-db 97
-db 98
-db 111
-db 118
-db 101
-db 32
-db 105
-db 115
-db 32
-db 97
-db 32
-db 68
-db 69
-db 70
-db 69
-db 67
-db 84
-db 46
-db 10
-db 0
-align 1
-L679 label byte
-db 65
-db 110
-db 121
-db 32
-db 111
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 115
-db 105
-db 103
-db 110
-db 97
-db 108
-db 32
-db 115
-db 101
-db 112
-db 97
-db 114
-db 97
-db 116
-db 105
-db 110
-db 103
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 42
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 116
-db 104
-db 101
-db 32
-db 111
-db 110
-db 101
-db 10
-db 0
-align 1
-L678 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 32
-db 110
-db 111
-db 114
-db 32
-db 102
-db 111
-db 114
-db 32
-db 86
-db 32
-db 47
-db 32
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L677 label byte
-db 78
-db 111
-db 32
-db 79
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 115
-db 104
-db 111
-db 117
-db 108
-db 100
-db 32
-db 98
-db 101
-db 32
-db 115
-db 105
-db 103
-db 110
-db 97
-db 108
-db 101
-db 100
-db 32
-db 102
-db 111
-db 114
-db 32
-db 86
-db 32
-db 42
-db 32
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 0
-align 1
-L676 label byte
-db 84
-db 104
-db 101
-db 114
-db 101
-db 32
-db 105
-db 115
-db 32
-db 110
-db 111
-db 32
-db 115
-db 97
-db 116
-db 117
-db 114
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 32
-db 98
-db 101
-db 99
-db 97
-db 117
-db 115
-db 101
-db 32
-db 116
-db 104
-db 101
-db 32
-db 115
-db 121
-db 115
-db 116
-db 101
-db 109
-db 32
-db 116
-db 114
-db 97
-db 112
-db 115
-db 32
-db 111
-db 110
-db 32
-db 111
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 46
-db 10
-db 0
-align 1
-L675 label byte
-db 79
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 115
-db 97
-db 116
-db 117
-db 114
-db 97
-db 116
-db 101
-db 115
-db 32
-db 97
-db 116
-db 32
-db 86
-db 48
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L672 label byte
-db 79
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 32
-db 105
-db 115
-db 32
-db 86
-db 32
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L663 label byte
-db 111
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 112
-db 97
-db 115
-db 116
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 9
-db 115
-db 104
-db 114
-db 105
-db 110
-db 107
-db 115
-db 32
-db 116
-db 111
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L660 label byte
-db 45
-db 40
-db 45
-db 89
-db 41
-db 32
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 115
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 89
-db 46
-db 10
-db 0
-align 1
-L659 label byte
-db 102
-db 105
-db 110
-db 100
-db 115
-db 32
-db 97
-db 32
-db 0
-align 1
-L658 label byte
-db 83
-db 101
-db 101
-db 109
-db 115
-db 32
-db 79
-db 46
-db 75
-db 46
-db 10
-db 0
-align 1
-L655 label byte
-db 84
-db 114
-db 121
-db 105
-db 110
-db 103
-db 32
-db 105
-db 116
-db 32
-db 111
-db 110
-db 32
-db 89
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L654 label byte
-db 67
-db 97
-db 110
-db 32
-db 96
-db 90
-db 32
-db 61
-db 32
-db 45
-db 89
-db 39
-db 32
-db 111
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 63
-db 10
-db 0
-align 1
-L647 label byte
-db 84
-db 104
-db 105
-db 115
-db 32
-db 109
-db 97
-db 121
-db 32
-db 103
-db 101
-db 110
-db 101
-db 114
-db 97
-db 116
-db 101
-db 32
-db 97
-db 110
-db 32
-db 101
-db 114
-db 114
-db 111
-db 114
-db 46
-db 10
-db 0
-align 1
-L646 label byte
-db 83
-db 101
-db 97
-db 114
-db 99
-db 104
-db 105
-db 110
-db 103
-db 32
-db 102
-db 111
-db 114
-db 32
-db 79
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 58
-db 10
-db 0
-align 1
-L645 label byte
-db 32
-db 46
-db 46
-db 46
-db 32
-db 110
-db 111
-db 32
-db 100
-db 105
-db 115
-db 99
-db 114
-db 101
-db 112
-db 97
-db 110
-db 99
-db 105
-db 101
-db 115
-db 32
-db 102
-db 111
-db 117
-db 110
-db 100
-db 46
-db 10
-db 0
-align 1
-L637 label byte
-db 84
-db 101
-db 115
-db 116
-db 105
-db 110
-db 103
-db 32
-db 112
-db 111
-db 119
-db 101
-db 114
-db 115
-db 32
-db 90
-db 94
-db 81
-db 32
-db 97
-db 116
-db 32
-db 102
-db 111
-db 117
-db 114
-db 32
-db 110
-db 101
-db 97
-db 114
-db 108
-db 121
-db 32
-db 101
-db 120
-db 116
-db 114
-db 101
-db 109
-db 101
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 115
-db 46
-db 10
-db 0
-align 1
-L636 label byte
-db 65
-db 99
-db 99
-db 117
-db 114
-db 97
-db 99
-db 121
-db 32
-db 115
-db 101
-db 101
-db 109
-db 115
-db 32
-db 97
-db 100
-db 101
-db 113
-db 117
-db 97
-db 116
-db 101
-db 46
-db 10
-db 0
-align 1
-L629 label byte
-db 9
-db 99
-db 97
-db 108
-db 99
-db 117
-db 108
-db 97
-db 116
-db 105
-db 111
-db 110
-db 115
-db 32
-db 105
-db 110
-db 118
-db 111
-db 108
-db 118
-db 105
-db 110
-db 103
-db 32
-db 116
-db 105
-db 110
-db 121
-db 32
-db 105
-db 110
-db 116
-db 101
-db 114
-db 101
-db 115
-db 116
-db 32
-db 114
-db 97
-db 116
-db 101
-db 115
-db 46
-db 10
-db 0
-align 1
-L628 label byte
-db 9
-db 84
-db 104
-db 105
-db 115
-db 32
-db 109
-db 117
-db 99
-db 104
-db 32
-db 101
-db 114
-db 114
-db 111
-db 114
-db 32
-db 109
-db 97
-db 121
-db 32
-db 115
-db 112
-db 111
-db 105
-db 108
-db 32
-db 102
-db 105
-db 110
-db 97
-db 110
-db 99
-db 105
-db 97
-db 108
-db 10
-db 0
-align 1
-L627 label byte
-db 9
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 115
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 32
-db 98
-db 121
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L626 label byte
-db 9
-db 40
-db 49
-db 32
-db 43
-db 32
-db 40
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 32
-db 94
-db 32
-db 40
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 59
-db 10
-db 0
-align 1
-L625 label byte
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 102
-db 111
-db 114
-db 10
-db 0
-align 1
-L624 label byte
-db 67
-db 97
-db 108
-db 99
-db 117
-db 108
-db 97
-db 116
-db 101
-db 100
-db 0
-align 1
-L617 label byte
-db 84
-db 101
-db 115
-db 116
-db 105
-db 110
-db 103
-db 32
-db 88
-db 94
-db 40
-db 40
-db 88
-db 32
-db 43
-db 32
-db 49
-db 41
-db 32
-db 47
-db 32
-db 40
-db 88
-db 32
-db 45
-db 32
-db 49
-db 41
-db 41
-db 32
-db 118
-db 115
-db 46
-db 32
-db 101
-db 120
-db 112
-db 40
-db 50
-db 41
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 97
-db 115
-db 32
-db 88
-db 32
-db 45
-db 62
-db 32
-db 49
-db 46
-db 10
-db 0
-align 1
-L613 label byte
-db 84
-db 104
-db 105
-db 115
-db 32
-db 99
-db 111
-db 109
-db 112
-db 117
-db 116
-db 101
-db 100
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 32
-db 105
-db 115
-db 32
-db 79
-db 46
-db 75
-db 46
-db 10
-db 0
-align 1
-L610 label byte
-db 32
-db 32
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L609 label byte
-db 116
-db 104
-db 105
-db 115
-db 32
-db 105
-db 115
-db 32
-db 110
-db 111
-db 116
-db 32
-db 98
-db 101
-db 116
-db 119
-db 101
-db 101
-db 110
-db 32
-db 48
-db 32
-db 97
-db 110
-db 100
-db 32
-db 117
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 10
-db 0
-align 1
-L605 label byte
-db 97
-db 99
-db 116
-db 117
-db 97
-db 108
-db 108
-db 121
-db 32
-db 99
-db 97
-db 108
-db 99
-db 117
-db 108
-db 97
-db 116
-db 105
-db 110
-db 103
-db 32
-db 121
-db 105
-db 101
-db 108
-db 100
-db 115
-db 58
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L604 label byte
-db 115
-db 104
-db 111
-db 117
-db 108
-db 100
-db 32
-db 97
-db 102
-db 102
-db 108
-db 105
-db 99
-db 116
-db 32
-db 116
-db 104
-db 101
-db 32
-db 101
-db 120
-db 112
-db 114
-db 101
-db 115
-db 115
-db 105
-db 111
-db 110
-db 10
-db 9
-db 40
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 32
-db 94
-db 32
-db 40
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 59
-db 10
-db 0
-align 1
-L603 label byte
-db 85
-db 102
-db 84
-db 104
-db 111
-db 108
-db 100
-db 32
-db 61
-db 32
-db 40
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 32
-db 94
-db 32
-db 40
-db 37
-db 46
-db 49
-db 55
-db 101
-db 41
-db 10
-db 111
-db 110
-db 108
-db 121
-db 32
-db 117
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 0
-align 1
-L602 label byte
-db 83
-db 105
-db 110
-db 99
-db 101
-db 32
-db 117
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 111
-db 99
-db 99
-db 117
-db 114
-db 115
-db 32
-db 98
-db 101
-db 108
-db 111
-db 119
-db 32
-db 116
-db 104
-db 101
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 10
-db 0
-align 1
-L601 label byte
-db 82
-db 97
-db 110
-db 103
-db 101
-db 32
-db 105
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 110
-db 97
-db 114
-db 114
-db 111
-db 119
-db 59
-db 32
-db 85
-db 49
-db 94
-db 37
-db 100
-db 32
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 115
-db 46
-db 10
-db 0
-align 1
-L596 label byte
-db 109
-db 101
-db 114
-db 101
-db 108
-db 121
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 111
-db 102
-db 102
-db 46
-db 10
-db 0
-align 1
-L595 label byte
-db 99
-db 97
-db 108
-db 99
-db 117
-db 108
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 109
-db 97
-db 121
-db 32
-db 115
-db 117
-db 102
-db 102
-db 101
-db 114
-db 32
-db 108
-db 97
-db 114
-db 103
-db 101
-db 114
-db 32
-db 82
-db 101
-db 108
-db 97
-db 116
-db 105
-db 118
-db 101
-db 32
-db 101
-db 114
-db 114
-db 111
-db 114
-db 32
-db 116
-db 104
-db 97
-db 110
-db 32
-db 0
-align 1
-L594 label byte
-db 32
-db 98
-db 101
-db 108
-db 111
-db 119
-db 32
-db 119
-db 104
-db 105
-db 99
-db 104
-db 0
-align 1
-L593 label byte
-db 84
-db 104
-db 101
-db 32
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 32
-db 105
-db 115
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 44
-db 32
-db 37
-db 115
-db 10
-db 0
-align 1
-L592 label byte
-db 88
-db 32
-db 47
-db 32
-db 90
-db 32
-db 61
-db 32
-db 49
-db 32
-db 43
-db 32
-db 37
-db 103
-db 32
-db 46
-db 10
-db 0
-align 1
-L591 label byte
-db 88
-db 32
-db 47
-db 32
-db 90
-db 32
-db 102
-db 97
-db 105
-db 108
-db 115
-db 33
-db 10
-db 0
-align 1
-L588 label byte
-db 101
-db 110
-db 99
-db 111
-db 117
-db 110
-db 116
-db 101
-db 114
-db 32
-db 68
-db 105
-db 118
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 98
-db 121
-db 32
-db 90
-db 101
-db 114
-db 111
-db 32
-db 97
-db 108
-db 116
-db 104
-db 111
-db 117
-db 103
-db 104
-db 32
-db 97
-db 99
-db 116
-db 117
-db 97
-db 108
-db 108
-db 121
-db 10
-db 0
-align 1
-L587 label byte
-db 32
-db 32
-db 46
-db 46
-db 46
-db 32
-db 40
-db 102
-db 40
-db 88
-db 41
-db 32
-db 45
-db 32
-db 102
-db 40
-db 90
-db 41
-db 41
-db 32
-db 47
-db 32
-db 40
-db 88
-db 32
-db 45
-db 32
-db 90
-db 41
-db 32
-db 46
-db 46
-db 46
-db 10
-db 0
-align 1
-L586 label byte
-db 32
-db 32
-db 32
-db 32
-db 105
-db 102
-db 32
-db 40
-db 88
-db 32
-db 61
-db 61
-db 32
-db 90
-db 41
-db 32
-db 32
-db 46
-db 46
-db 46
-db 32
-db 32
-db 101
-db 108
-db 115
-db 101
-db 0
-align 1
-L585 label byte
-db 99
-db 111
-db 110
-db 102
-db 117
-db 115
-db 105
-db 111
-db 110
-db 32
-db 119
-db 104
-db 101
-db 110
-db 32
-db 105
-db 110
-db 110
-db 111
-db 99
-db 101
-db 110
-db 116
-db 32
-db 115
-db 116
-db 97
-db 116
-db 101
-db 109
-db 101
-db 110
-db 116
-db 115
-db 32
-db 108
-db 105
-db 107
-db 101
-db 10
-db 0
-align 1
-L584 label byte
-db 116
-db 104
-db 105
-db 115
-db 32
-db 105
-db 115
-db 32
-db 97
-db 32
-db 83
-db 69
-db 82
-db 73
-db 79
-db 85
-db 83
-db 32
-db 68
-db 69
-db 70
-db 69
-db 67
-db 84
-db 10
-db 116
-db 104
-db 97
-db 116
-db 32
-db 99
-db 97
-db 117
-db 115
-db 101
-db 115
-db 32
-db 0
-align 1
-L583 label byte
-db 32
-db 32
-db 32
-db 32
-db 83
-db 104
-db 111
-db 117
-db 108
-db 100
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 78
-db 79
-db 84
-db 32
-db 115
-db 105
-db 103
-db 110
-db 97
-db 108
-db 32
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 44
-db 32
-db 0
-align 1
-L582 label byte
-db 121
-db 101
-db 116
-db 32
-db 88
-db 32
-db 45
-db 32
-db 90
-db 32
-db 121
-db 105
-db 101
-db 108
-db 100
-db 115
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L581 label byte
-db 88
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 9
-db 105
-db 115
-db 32
-db 110
-db 111
-db 116
-db 32
-db 101
-db 113
-db 117
-db 97
-db 108
-db 32
-db 116
-db 111
-db 32
-db 90
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L576 label byte
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 47
-db 32
-db 85
-db 102
-db 84
-db 104
-db 111
-db 108
-db 100
-db 32
-db 102
-db 97
-db 105
-db 108
-db 101
-db 100
-db 33
-db 10
-db 0
-align 1
-L566 label byte
-db 40
-db 114
-db 111
-db 117
-db 110
-db 100
-db 111
-db 102
-db 102
-db 32
-db 105
-db 110
-db 32
-db 85
-db 102
-db 84
-db 104
-db 111
-db 108
-db 100
-db 41
-db 32
-db 60
-db 32
-db 69
-db 48
-db 46
-db 10
-db 0
-align 1
-L565 label byte
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 105
-db 115
-db 32
-db 103
-db 114
-db 97
-db 100
-db 117
-db 97
-db 108
-db 59
-db 32
-db 105
-db 116
-db 32
-db 105
-db 110
-db 99
-db 117
-db 114
-db 115
-db 32
-db 65
-db 98
-db 115
-db 111
-db 108
-db 117
-db 116
-db 101
-db 32
-db 69
-db 114
-db 114
-db 111
-db 114
-db 32
-db 61
-db 10
-db 0
-align 1
-L560 label byte
-db 124
-db 81
-db 32
-db 45
-db 32
-db 89
-db 124
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L559 label byte
-db 112
-db 114
-db 105
-db 110
-db 116
-db 32
-db 111
-db 117
-db 116
-db 32
-db 97
-db 115
-db 32
-db 81
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 44
-db 32
-db 89
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L558 label byte
-db 81
-db 32
-db 61
-db 61
-db 32
-db 89
-db 32
-db 119
-db 104
-db 105
-db 108
-db 101
-db 32
-db 100
-db 101
-db 110
-db 121
-db 105
-db 110
-db 103
-db 32
-db 116
-db 104
-db 97
-db 116
-db 32
-db 124
-db 81
-db 32
-db 45
-db 32
-db 89
-db 124
-db 32
-db 61
-db 61
-db 32
-db 48
-db 59
-db 32
-db 116
-db 104
-db 101
-db 115
-db 101
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 115
-db 10
-db 0
-align 1
-L557 label byte
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 99
-db 111
-db 110
-db 102
-db 117
-db 115
-db 101
-db 115
-db 32
-db 67
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 111
-db 110
-db 44
-db 32
-db 119
-db 104
-db 105
-db 99
-db 104
-db 32
-db 97
-db 108
-db 108
-db 101
-db 103
-db 101
-db 115
-db 32
-db 116
-db 104
-db 97
-db 116
-db 10
-db 0
-align 1
-L555 label byte
-db 32
-db 111
-db 114
-db 32
-db 101
-db 108
-db 115
-db 101
-db 32
-db 109
-db 117
-db 108
-db 116
-db 105
-db 112
-db 108
-db 105
-db 99
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 103
-db 101
-db 116
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 109
-db 97
-db 110
-db 121
-db 32
-db 108
-db 97
-db 115
-db 116
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 119
-db 114
-db 111
-db 110
-db 103
-db 46
-db 10
-db 0
-align 1
-L554 label byte
-db 32
-db 99
-db 111
-db 109
-db 105
-db 110
-db 103
-db 32
-db 100
-db 111
-db 119
-db 110
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 0
-align 1
-L553 label byte
-db 97
-db 112
-db 112
-db 114
-db 111
-db 97
-db 99
-db 104
-db 32
-db 97
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 32
-db 61
-db 32
-db 37
-db 46
-db 49
-db 55
-db 101
-db 10
-db 0
-align 1
-L552 label byte
-db 69
-db 105
-db 116
-db 104
-db 101
-db 114
-db 32
-db 97
-db 99
-db 99
-db 117
-db 114
-db 97
-db 99
-db 121
-db 32
-db 100
-db 101
-db 116
-db 101
-db 114
-db 105
-db 111
-db 114
-db 97
-db 116
-db 101
-db 115
-db 32
-db 97
-db 115
-db 32
-db 110
-db 117
-db 109
-db 98
-db 101
-db 114
-db 115
-db 10
-db 0
-align 1
-L540 label byte
-db 83
-db 109
-db 97
-db 108
-db 108
-db 101
-db 115
-db 116
-db 32
-db 115
-db 116
-db 114
-db 105
-db 99
-db 116
-db 108
-db 121
-db 32
-db 112
-db 111
-db 115
-db 105
-db 116
-db 105
-db 118
-db 101
-db 32
-db 110
-db 117
-db 109
-db 98
-db 101
-db 114
-db 32
-db 102
-db 111
-db 117
-db 110
-db 100
-db 32
-db 105
-db 115
-db 32
-db 69
-db 48
-db 32
-db 61
-db 32
-db 37
-db 103
-db 32
-db 46
-db 10
-db 0
-align 1
-L539 label byte
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 32
-db 116
-db 104
-db 97
-db 110
-db 32
-db 112
-db 114
-db 111
-db 100
-db 117
-db 99
-db 116
-db 115
-db 46
-db 10
-db 0
-align 1
-L538 label byte
-db 68
-db 105
-db 102
-db 102
-db 101
-db 114
-db 101
-db 110
-db 99
-db 101
-db 32
-db 117
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 115
-db 32
-db 97
-db 116
-db 32
-db 97
-db 32
-db 104
-db 105
-db 103
-db 104
-db 101
-db 114
-db 0
-align 1
-L535 label byte
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 32
-db 116
-db 104
-db 97
-db 110
-db 32
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 101
-db 110
-db 99
-db 101
-db 115
-db 46
-db 10
-db 0
-align 1
-L534 label byte
-db 80
-db 114
-db 111
-db 100
-db 117
-db 99
-db 116
-db 115
-db 32
-db 117
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 97
-db 116
-db 32
-db 97
-db 32
-db 104
-db 105
-db 103
-db 104
-db 101
-db 114
-db 0
-align 1
-L527 label byte
-db 118
-db 97
-db 108
-db 117
-db 101
-db 32
-db 80
-db 115
-db 101
-db 117
-db 100
-db 111
-db 90
-db 101
-db 114
-db 111
-db 32
-db 116
-db 104
-db 97
-db 116
-db 32
-db 112
-db 114
-db 105
-db 110
-db 116
-db 115
-db 32
-db 111
-db 117
-db 116
-db 32
-db 97
-db 115
-db 32
-db 37
-db 103
-db 32
-db 46
-db 10
-db 0
-align 1
-L526 label byte
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 99
-db 97
-db 110
-db 32
-db 115
-db 116
-db 105
-db 99
-db 107
-db 32
-db 97
-db 116
-db 32
-db 97
-db 110
-db 32
-db 97
-db 108
-db 108
-db 101
-db 103
-db 101
-db 100
-db 108
-db 121
-db 32
-db 112
-db 111
-db 115
-db 105
-db 116
-db 105
-db 118
-db 101
-db 10
-db 0
-align 1
-L525 label byte
-db 112
-db 111
-db 115
-db 105
-db 116
-db 105
-db 118
-db 101
-db 44
-db 32
-db 105
-db 115
-db 110
-db 39
-db 116
-db 59
-db 32
-db 105
-db 116
-db 32
-db 112
-db 114
-db 105
-db 110
-db 116
-db 115
-db 32
-db 111
-db 117
-db 116
-db 32
-db 97
-db 115
-db 32
-db 32
-db 37
-db 103
-db 32
-db 46
-db 10
-db 0
-align 1
-L524 label byte
-db 66
-db 117
-db 116
-db 32
-db 45
-db 80
-db 115
-db 101
-db 117
-db 100
-db 111
-db 90
-db 101
-db 114
-db 111
-db 44
-db 32
-db 119
-db 104
-db 105
-db 99
-db 104
-db 32
-db 115
-db 104
-db 111
-db 117
-db 108
-db 100
-db 32
-db 98
-db 101
-db 10
-db 0
-align 1
-L521 label byte
-db 80
-db 115
-db 101
-db 117
-db 100
-db 111
-db 90
-db 101
-db 114
-db 111
-db 32
-db 116
-db 104
-db 97
-db 116
-db 32
-db 112
-db 114
-db 105
-db 110
-db 116
-db 115
-db 32
-db 111
-db 117
-db 116
-db 32
-db 97
-db 115
-db 58
-db 32
-db 37
-db 103
-db 32
-db 46
-db 10
-db 0
-align 1
-L520 label byte
-db 97
-db 108
-db 108
-db 101
-db 103
-db 101
-db 100
-db 108
-db 121
-db 32
-db 110
-db 101
-db 103
-db 97
-db 116
-db 105
-db 118
-db 101
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 10
-db 0
-align 1
-L519 label byte
-db 80
-db 111
-db 115
-db 105
-db 116
-db 105
-db 118
-db 101
-db 32
-db 101
-db 120
-db 112
-db 114
-db 101
-db 115
-db 115
-db 105
-db 111
-db 110
-db 115
-db 32
-db 99
-db 97
-db 110
-db 32
-db 117
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 116
-db 111
-db 32
-db 97
-db 110
-db 10
-db 0
-align 1
-L506 label byte
-db 109
-db 117
-db 108
-db 116
-db 105
-db 112
-db 108
-db 105
-db 99
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 103
-db 101
-db 116
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 109
-db 97
-db 110
-db 121
-db 32
-db 108
-db 97
-db 115
-db 116
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 119
-db 114
-db 111
-db 110
-db 103
-db 46
-db 10
-db 0
-align 1
-L482 label byte
-db 83
-db 101
-db 101
-db 107
-db 105
-db 110
-db 103
-db 32
-db 85
-db 110
-db 100
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 32
-db 116
-db 104
-db 114
-db 101
-db 115
-db 104
-db 111
-db 108
-db 100
-db 115
-db 32
-db 85
-db 102
-db 84
-db 104
-db 111
-db 108
-db 100
-db 32
-db 97
-db 110
-db 100
-db 32
-db 69
-db 48
-db 46
-db 10
-db 0
-align 1
-L479 label byte
-db 46
-db 46
-db 46
-db 32
-db 110
-db 111
-db 32
-db 100
-db 105
-db 115
-db 99
-db 114
-db 101
-db 112
-db 97
-db 110
-db 99
-db 105
-db 115
-db 32
-db 102
-db 111
-db 117
-db 110
-db 100
-db 46
-db 10
-db 0
-align 1
-L476 label byte
-db 9
-db 105
-db 110
-db 118
-db 111
-db 108
-db 118
-db 105
-db 110
-db 103
-db 32
-db 105
-db 110
-db 116
-db 101
-db 114
-db 101
-db 115
-db 116
-db 32
-db 114
-db 97
-db 116
-db 101
-db 115
-db 46
-db 10
-db 0
-align 1
-L475 label byte
-db 69
-db 114
-db 114
-db 111
-db 114
-db 115
-db 32
-db 108
-db 105
-db 107
-db 101
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 109
-db 97
-db 121
-db 32
-db 105
-db 110
-db 118
-db 97
-db 108
-db 105
-db 100
-db 97
-db 116
-db 101
-db 32
-db 102
-db 105
-db 110
-db 97
-db 110
-db 99
-db 105
-db 97
-db 108
-db 32
-db 99
-db 97
-db 108
-db 99
-db 117
-db 108
-db 97
-db 116
-db 105
-db 111
-db 110
-db 115
-db 10
-db 0
-align 1
-L454 label byte
-db 84
-db 101
-db 115
-db 116
-db 105
-db 110
-db 103
-db 32
-db 112
-db 111
-db 119
-db 101
-db 114
-db 115
-db 32
-db 90
-db 94
-db 105
-db 32
-db 102
-db 111
-db 114
-db 32
-db 115
-db 109
-db 97
-db 108
-db 108
-db 32
-db 73
-db 110
-db 116
-db 101
-db 103
-db 101
-db 114
-db 115
-db 32
-db 90
-db 32
-db 97
-db 110
-db 100
-db 32
-db 105
-db 46
-db 10
-db 0
-align 1
-L451 label byte
-db 115
-db 113
-db 114
-db 116
-db 32
-db 103
-db 101
-db 116
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 109
-db 97
-db 110
-db 121
-db 32
-db 108
-db 97
-db 115
-db 116
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 119
-db 114
-db 111
-db 110
-db 103
-db 0
-align 1
-L449 label byte
-db 116
-db 111
-db 32
-db 37
-db 46
-db 55
-db 101
-db 32
-db 117
-db 108
-db 112
-db 115
-db 46
-db 10
-db 0
-align 1
-L448 label byte
-db 79
-db 98
-db 115
-db 101
-db 114
-db 118
-db 101
-db 100
-db 32
-db 101
-db 114
-db 114
-db 111
-db 114
-db 115
-db 32
-db 114
-db 117
-db 110
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 37
-db 46
-db 55
-db 101
-db 32
-db 0
-align 1
-L447 label byte
-db 83
-db 113
-db 117
-db 97
-db 114
-db 101
-db 32
-db 114
-db 111
-db 111
-db 116
-db 32
-db 105
-db 115
-db 32
-db 110
-db 101
-db 105
-db 116
-db 104
-db 101
-db 114
-db 32
-db 99
-db 104
-db 111
-db 112
-db 112
-db 101
-db 100
-db 32
-db 110
-db 111
-db 114
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L444 label byte
-db 83
-db 113
-db 117
-db 97
-db 114
-db 101
-db 32
-db 114
-db 111
-db 111
-db 116
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 98
-db 101
-db 32
-db 99
-db 104
-db 111
-db 112
-db 112
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L439 label byte
-db 83
-db 113
-db 117
-db 97
-db 114
-db 101
-db 32
-db 114
-db 111
-db 111
-db 116
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 98
-db 101
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L434 label byte
-db 32
-db 102
-db 97
-db 105
-db 108
-db 115
-db 32
-db 116
-db 101
-db 115
-db 116
-db 32
-db 119
-db 104
-db 101
-db 116
-db 104
-db 101
-db 114
-db 32
-db 115
-db 113
-db 114
-db 116
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 115
-db 32
-db 111
-db 114
-db 32
-db 99
-db 104
-db 111
-db 112
-db 115
-db 46
-db 10
-db 0
-align 1
-L433 label byte
-db 82
-db 97
-db 100
-db 105
-db 120
-db 94
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 10
-db 0
-align 1
-L432 label byte
-db 65
-db 110
-db 111
-db 109
-db 97
-db 108
-db 111
-db 117
-db 115
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 119
-db 105
-db 116
-db 104
-db 32
-db 73
-db 110
-db 116
-db 101
-db 103
-db 101
-db 114
-db 32
-db 60
-db 32
-db 0
-align 1
-L392 label byte
-db 84
-db 101
-db 115
-db 116
-db 105
-db 110
-db 103
-db 32
-db 119
-db 104
-db 101
-db 116
-db 104
-db 101
-db 114
-db 32
-db 115
-db 113
-db 114
-db 116
-db 32
-db 105
-db 115
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 101
-db 100
-db 32
-db 111
-db 114
-db 32
-db 99
-db 104
-db 111
-db 112
-db 112
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L370 label byte
-db 115
-db 113
-db 114
-db 116
-db 40
-db 88
-db 41
-db 32
-db 105
-db 115
-db 32
-db 110
-db 111
-db 110
-db 45
-db 109
-db 111
-db 110
-db 111
-db 116
-db 111
-db 110
-db 105
-db 99
-db 32
-db 102
-db 111
-db 114
-db 32
-db 88
-db 32
-db 110
-db 101
-db 97
-db 114
-db 32
-db 37
-db 46
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L369 label byte
-db 115
-db 113
-db 114
-db 116
-db 32
-db 104
-db 97
-db 115
-db 32
-db 112
-db 97
-db 115
-db 115
-db 101
-db 100
-db 32
-db 97
-db 32
-db 116
-db 101
-db 115
-db 116
-db 32
-db 102
-db 111
-db 114
-db 32
-db 77
-db 111
-db 110
-db 111
-db 116
-db 111
-db 110
-db 105
-db 99
-db 105
-db 116
-db 121
-db 46
-db 10
-db 0
-align 1
-L352 label byte
-db 84
-db 101
-db 115
-db 116
-db 32
-db 102
-db 111
-db 114
-db 32
-db 115
-db 113
-db 114
-db 116
-db 32
-db 109
-db 111
-db 110
-db 111
-db 116
-db 111
-db 110
-db 105
-db 99
-db 105
-db 116
-db 121
-db 46
-db 10
-db 0
-align 1
-L341 label byte
-db 84
-db 101
-db 115
-db 116
-db 105
-db 110
-db 103
-db 32
-db 105
-db 102
-db 32
-db 115
-db 113
-db 114
-db 116
-db 40
-db 88
-db 32
-db 42
-db 32
-db 88
-db 41
-db 32
-db 61
-db 61
-db 32
-db 88
-db 32
-db 102
-db 111
-db 114
-db 32
-db 37
-db 100
-db 32
-db 73
-db 110
-db 116
-db 101
-db 103
-db 101
-db 114
-db 115
-db 32
-db 88
-db 46
-db 10
-db 0
-align 1
-L336 label byte
-db 83
-db 113
-db 117
-db 97
-db 114
-db 101
-db 32
-db 114
-db 111
-db 111
-db 116
-db 32
-db 111
-db 102
-db 32
-db 48
-db 46
-db 48
-db 44
-db 32
-db 45
-db 48
-db 46
-db 48
-db 32
-db 111
-db 114
-db 32
-db 49
-db 46
-db 48
-db 32
-db 119
-db 114
-db 111
-db 110
-db 103
-db 0
-align 1
-L334 label byte
-db 10
-db 82
-db 117
-db 110
-db 110
-db 105
-db 110
-db 103
-db 32
-db 116
-db 101
-db 115
-db 116
-db 32
-db 111
-db 102
-db 32
-db 115
-db 113
-db 117
-db 97
-db 114
-db 101
-db 32
-db 114
-db 111
-db 111
-db 116
-db 40
-db 120
-db 41
-db 46
-db 10
-db 0
-align 1
-L333 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 78
-db 111
-db 32
-db 102
-db 97
-db 105
-db 108
-db 117
-db 114
-db 101
-db 115
-db 32
-db 102
-db 111
-db 117
-db 110
-db 100
-db 32
-db 105
-db 110
-db 32
-db 37
-db 100
-db 32
-db 105
-db 110
-db 116
-db 101
-db 103
-db 101
-db 114
-db 32
-db 112
-db 97
-db 105
-db 114
-db 115
-db 46
-db 10
-db 0
-align 1
-L332 label byte
-db 88
-db 32
-db 42
-db 32
-db 89
-db 32
-db 61
-db 61
-db 32
-db 89
-db 32
-db 42
-db 32
-db 88
-db 32
-db 116
-db 114
-db 105
-db 97
-db 108
-db 32
-db 102
-db 97
-db 105
-db 108
-db 115
-db 46
-db 10
-db 0
-align 4
-L323 label byte
-dd 00H
-dd 040080000H
-align 1
-L322 label byte
-db 84
-db 101
-db 115
-db 116
-db 105
-db 110
-db 103
-db 32
-db 111
-db 110
-db 32
-db 37
-db 100
-db 32
-db 114
-db 97
-db 110
-db 100
-db 111
-db 109
-db 32
-db 112
-db 97
-db 105
-db 114
-db 115
-db 46
-db 10
-db 0
-align 1
-L321 label byte
-db 68
-db 111
-db 101
-db 115
-db 32
-db 77
-db 117
-db 108
-db 116
-db 105
-db 112
-db 108
-db 105
-db 99
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 99
-db 111
-db 109
-db 109
-db 117
-db 116
-db 101
-db 63
-db 32
-db 32
-db 0
-align 1
-L318 label byte
-db 108
-db 97
-db 99
-db 107
-db 40
-db 115
-db 41
-db 32
-db 111
-db 102
-db 32
-db 103
-db 117
-db 97
-db 114
-db 100
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 111
-db 114
-db 32
-db 102
-db 97
-db 105
-db 108
-db 117
-db 114
-db 101
-db 40
-db 115
-db 41
-db 32
-db 116
-db 111
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 32
-db 111
-db 114
-db 32
-db 99
-db 104
-db 111
-db 112
-db 10
-db 40
-db 110
-db 111
-db 116
-db 101
-db 100
-db 32
-db 97
-db 98
-db 111
-db 118
-db 101
-db 41
-db 32
-db 99
-db 111
-db 117
-db 110
-db 116
-db 32
-db 97
-db 115
-db 32
-db 111
-db 110
-db 101
-db 32
-db 102
-db 108
-db 97
-db 119
-db 32
-db 105
-db 110
-db 32
-db 116
-db 104
-db 101
-db 32
-db 102
-db 105
-db 110
-db 97
-db 108
-db 32
-db 116
-db 97
-db 108
-db 108
-db 121
-db 32
-db 98
-db 101
-db 108
-db 111
-db 119
-db 0
-align 1
-L316 label byte
-db 83
-db 116
-db 105
-db 99
-db 107
-db 121
-db 32
-db 98
-db 105
-db 116
-db 32
-db 117
-db 115
-db 101
-db 100
-db 32
-db 105
-db 110
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 32
-db 111
-db 114
-db 32
-db 110
-db 111
-db 116
-db 32
-db 97
-db 116
-db 32
-db 97
-db 108
-db 108
-db 46
-db 10
-db 0
-align 1
-L315 label byte
-db 83
-db 116
-db 105
-db 99
-db 107
-db 121
-db 32
-db 98
-db 105
-db 116
-db 32
-db 97
-db 112
-db 112
-db 97
-db 114
-db 101
-db 110
-db 116
-db 108
-db 121
-db 32
-db 117
-db 115
-db 101
-db 100
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 46
-db 10
-db 0
-align 1
-L298 label byte
-db 67
-db 104
-db 101
-db 99
-db 107
-db 105
-db 110
-db 103
-db 32
-db 102
-db 111
-db 114
-db 32
-db 115
-db 116
-db 105
-db 99
-db 107
-db 121
-db 32
-db 98
-db 105
-db 116
-db 46
-db 10
-db 0
-align 1
-L295 label byte
-db 40
-db 88
-db 32
-db 45
-db 32
-db 89
-db 41
-db 32
-db 43
-db 32
-db 40
-db 89
-db 32
-db 45
-db 32
-db 88
-db 41
-db 32
-db 105
-db 115
-db 32
-db 110
-db 111
-db 110
-db 32
-db 122
-db 101
-db 114
-db 111
-db 33
-db 10
-db 0
-align 1
-L292 label byte
-db 65
-db 100
-db 100
-db 105
-db 116
-db 105
-db 111
-db 110
-db 47
-db 83
-db 117
-db 98
-db 116
-db 114
-db 97
-db 99
-db 116
-db 105
-db 111
-db 110
-db 32
-db 110
-db 101
-db 105
-db 116
-db 104
-db 101
-db 114
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 115
-db 32
-db 110
-db 111
-db 114
-db 32
-db 99
-db 104
-db 111
-db 112
-db 115
-db 46
-db 10
-db 0
-align 1
-L291 label byte
-db 65
-db 100
-db 100
-db 47
-db 83
-db 117
-db 98
-db 116
-db 114
-db 97
-db 99
-db 116
-db 0
-align 1
-L288 label byte
-db 65
-db 100
-db 100
-db 105
-db 116
-db 105
-db 111
-db 110
-db 47
-db 83
-db 117
-db 98
-db 116
-db 114
-db 97
-db 99
-db 116
-db 105
-db 111
-db 110
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 46
-db 10
-db 0
-align 1
-L281 label byte
-db 65
-db 100
-db 100
-db 47
-db 83
-db 117
-db 98
-db 116
-db 114
-db 97
-db 99
-db 116
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 98
-db 101
-db 32
-db 99
-db 104
-db 111
-db 112
-db 112
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L276 label byte
-db 73
-db 110
-db 99
-db 111
-db 109
-db 112
-db 108
-db 101
-db 116
-db 101
-db 32
-db 99
-db 97
-db 114
-db 114
-db 121
-db 45
-db 112
-db 114
-db 111
-db 112
-db 97
-db 103
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 105
-db 110
-db 32
-db 65
-db 100
-db 100
-db 105
-db 116
-db 105
-db 111
-db 110
-db 0
-align 1
-L272 label byte
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 42
-db 32
-db 40
-db 32
-db 49
-db 32
-db 47
-db 32
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 41
-db 32
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 115
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 49
-db 0
-align 1
-L270 label byte
-db 47
-db 32
-db 105
-db 115
-db 32
-db 110
-db 101
-db 105
-db 116
-db 104
-db 101
-db 114
-db 32
-db 99
-db 104
-db 111
-db 112
-db 112
-db 101
-db 100
-db 32
-db 110
-db 111
-db 114
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L267 label byte
-db 68
-db 105
-db 118
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 99
-db 104
-db 111
-db 112
-db 46
-db 10
-db 0
-align 1
-L264 label byte
-db 68
-db 105
-db 118
-db 105
-db 115
-db 105
-db 111
-db 110
-db 0
-align 1
-L261 label byte
-db 68
-db 105
-db 118
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 46
-db 10
-db 0
-align 1
-L256 label byte
-db 77
-db 117
-db 108
-db 116
-db 105
-db 112
-db 108
-db 105
-db 99
-db 97
-db 116
-db 105
-db 111
-db 110
-db 0
-align 1
-L253 label byte
-db 42
-db 32
-db 105
-db 115
-db 32
-db 110
-db 101
-db 105
-db 116
-db 104
-db 101
-db 114
-db 32
-db 99
-db 104
-db 111
-db 112
-db 112
-db 101
-db 100
-db 32
-db 110
-db 111
-db 114
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 101
-db 100
-db 46
-db 10
-db 0
-align 1
-L252 label byte
-db 77
-db 117
-db 108
-db 116
-db 105
-db 112
-db 108
-db 105
-db 99
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 99
-db 104
-db 111
-db 112
-db 46
-db 10
-db 0
-align 1
-L249 label byte
-db 77
-db 117
-db 108
-db 116
-db 105
-db 112
-db 108
-db 105
-db 99
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 32
-db 99
-db 111
-db 114
-db 114
-db 101
-db 99
-db 116
-db 108
-db 121
-db 46
-db 10
-db 0
-align 1
-L239 label byte
-db 88
-db 32
-db 42
-db 32
-db 40
-db 49
-db 47
-db 88
-db 41
-db 32
-db 100
-db 105
-db 102
-db 102
-db 101
-db 114
-db 115
-db 32
-db 102
-db 114
-db 111
-db 109
-db 32
-db 49
-db 0
-align 1
-L220 label byte
-db 67
-db 104
-db 101
-db 99
-db 107
-db 105
-db 110
-db 103
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 105
-db 110
-db 103
-db 32
-db 111
-db 110
-db 32
-db 109
-db 117
-db 108
-db 116
-db 105
-db 112
-db 108
-db 121
-db 44
-db 32
-db 100
-db 105
-db 118
-db 105
-db 100
-db 101
-db 32
-db 97
-db 110
-db 100
-db 32
-db 97
-db 100
-db 100
-db 47
-db 115
-db 117
-db 98
-db 116
-db 114
-db 97
-db 99
-db 116
-db 46
-db 10
-db 0
-align 1
-L219 label byte
-db 32
-db 32
-db 32
-db 32
-db 32
-db 42
-db 44
-db 32
-db 47
-db 44
-db 32
-db 97
-db 110
-db 100
-db 32
-db 45
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 32
-db 116
-db 111
-db 32
-db 104
-db 97
-db 118
-db 101
-db 32
-db 103
-db 117
-db 97
-db 114
-db 100
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 44
-db 32
-db 97
-db 115
-db 32
-db 116
-db 104
-db 101
-db 121
-db 32
-db 115
-db 104
-db 111
-db 117
-db 108
-db 100
-db 46
-db 10
-db 0
-align 1
-L216 label byte
-db 32
-db 32
-db 46
-db 46
-db 46
-db 32
-db 32
-db 105
-db 102
-db 32
-db 40
-db 88
-db 32
-db 61
-db 61
-db 32
-db 49
-db 46
-db 48
-db 41
-db 32
-db 123
-db 46
-db 46
-db 46
-db 46
-db 46
-db 125
-db 32
-db 101
-db 108
-db 115
-db 101
-db 32
-db 123
-db 46
-db 46
-db 46
-db 47
-db 40
-db 88
-db 45
-db 49
-db 46
-db 48
-db 41
-db 46
-db 46
-db 46
-db 125
-db 10
-db 0
-align 1
-L215 label byte
-db 32
-db 32
-db 115
-db 117
-db 99
-db 104
-db 32
-db 112
-db 114
-db 101
-db 99
-db 97
-db 117
-db 116
-db 105
-db 111
-db 110
-db 115
-db 32
-db 97
-db 103
-db 97
-db 105
-db 110
-db 115
-db 116
-db 32
-db 100
-db 105
-db 118
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 98
-db 121
-db 32
-db 122
-db 101
-db 114
-db 111
-db 32
-db 97
-db 115
-db 10
-db 0
-align 1
-L214 label byte
-db 32
-db 32
-db 115
-db 117
-db 98
-db 116
-db 114
-db 97
-db 99
-db 116
-db 105
-db 111
-db 110
-db 32
-db 121
-db 105
-db 101
-db 108
-db 100
-db 115
-db 32
-db 32
-db 40
-db 49
-db 45
-db 85
-db 49
-db 41
-db 32
-db 45
-db 32
-db 49
-db 32
-db 61
-db 32
-db 48
-db 32
-db 44
-db 32
-db 116
-db 104
-db 101
-db 114
-db 101
-db 98
-db 121
-db 32
-db 118
-db 105
-db 116
-db 105
-db 97
-db 116
-db 105
-db 110
-db 103
-db 10
-db 0
-align 1
-L213 label byte
-db 99
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 111
-db 110
-db 32
-db 97
-db 108
-db 108
-db 101
-db 103
-db 101
-db 115
-db 32
-db 32
-db 40
-db 49
-db 45
-db 85
-db 49
-db 41
-db 32
-db 60
-db 32
-db 49
-db 32
-db 32
-db 97
-db 108
-db 116
-db 104
-db 111
-db 117
-db 103
-db 104
-db 10
-db 0
-align 1
-L210 label byte
-db 45
-db 32
-db 108
-db 97
-db 99
-db 107
-db 115
-db 32
-db 71
-db 117
-db 97
-db 114
-db 100
-db 32
-db 68
-db 105
-db 103
-db 105
-db 116
-db 44
-db 32
-db 115
-db 111
-db 32
-db 99
-db 97
-db 110
-db 99
-db 101
-db 108
-db 108
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 105
-db 115
-db 32
-db 111
-db 98
-db 115
-db 99
-db 117
-db 114
-db 101
-db 100
-db 0
-align 1
-L205 label byte
-db 42
-db 32
-db 97
-db 110
-db 100
-db 47
-db 111
-db 114
-db 32
-db 47
-db 32
-db 103
-db 101
-db 116
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 109
-db 97
-db 110
-db 121
-db 32
-db 108
-db 97
-db 115
-db 116
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 119
-db 114
-db 111
-db 110
-db 103
-db 0
-align 1
-L201 label byte
-db 67
-db 111
-db 109
-db 112
-db 117
-db 116
-db 101
-db 100
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 32
-db 111
-db 102
-db 32
-db 49
-db 47
-db 49
-db 46
-db 48
-db 48
-db 48
-db 46
-db 46
-db 49
-db 32
-db 62
-db 61
-db 32
-db 49
-db 0
-align 1
-L199 label byte
-db 68
-db 105
-db 118
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 108
-db 97
-db 99
-db 107
-db 115
-db 32
-db 97
-db 32
-db 71
-db 117
-db 97
-db 114
-db 100
-db 32
-db 68
-db 105
-db 103
-db 105
-db 116
-db 44
-db 32
-db 115
-db 111
-db 32
-db 88
-db 47
-db 49
-db 32
-db 33
-db 61
-db 32
-db 88
-db 0
-align 1
-L194 label byte
-db 68
-db 105
-db 118
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 108
-db 97
-db 99
-db 107
-db 115
-db 32
-db 97
-db 32
-db 71
-db 117
-db 97
-db 114
-db 100
-db 32
-db 68
-db 105
-db 103
-db 105
-db 116
-db 44
-db 32
-db 115
-db 111
-db 32
-db 101
-db 114
-db 114
-db 111
-db 114
-db 32
-db 99
-db 97
-db 110
-db 32
-db 101
-db 120
-db 99
-db 101
-db 101
-db 100
-db 32
-db 49
-db 32
-db 117
-db 108
-db 112
-db 10
-db 111
-db 114
-db 32
-db 32
-db 49
-db 47
-db 51
-db 32
-db 32
-db 97
-db 110
-db 100
-db 32
-db 32
-db 51
-db 47
-db 57
-db 32
-db 32
-db 97
-db 110
-db 100
-db 32
-db 32
-db 57
-db 47
-db 50
-db 55
-db 32
-db 109
-db 97
-db 121
-db 32
-db 100
-db 105
-db 115
-db 97
-db 103
-db 114
-db 101
-db 101
-db 0
-align 1
-L190 label byte
-db 42
-db 32
-db 103
-db 101
-db 116
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 109
-db 97
-db 110
-db 121
-db 32
-db 102
-db 105
-db 110
-db 97
-db 108
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 119
-db 114
-db 111
-db 110
-db 103
-db 46
-db 10
-db 0
-align 1
-L188 label byte
-db 42
-db 32
-db 108
-db 97
-db 99
-db 107
-db 115
-db 32
-db 97
-db 32
-db 71
-db 117
-db 97
-db 114
-db 100
-db 32
-db 68
-db 105
-db 103
-db 105
-db 116
-db 44
-db 32
-db 115
-db 111
-db 32
-db 49
-db 42
-db 88
-db 32
-db 33
-db 61
-db 32
-db 88
-db 0
-align 1
-L185 label byte
-db 10
-db 67
-db 104
-db 101
-db 99
-db 107
-db 105
-db 110
-db 103
-db 32
-db 102
-db 111
-db 114
-db 32
-db 103
-db 117
-db 97
-db 114
-db 100
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 32
-db 105
-db 110
-db 32
-db 42
-db 44
-db 32
-db 47
-db 44
-db 32
-db 97
-db 110
-db 100
-db 32
-db 45
-db 46
-db 10
-db 0
-align 1
-L184 label byte
-db 83
-db 117
-db 98
-db 116
-db 114
-db 97
-db 99
-db 116
-db 105
-db 111
-db 110
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 115
-db 32
-db 116
-db 111
-db 32
-db 98
-db 101
-db 32
-db 110
-db 111
-db 114
-db 109
-db 97
-db 108
-db 105
-db 122
-db 101
-db 100
-db 44
-db 32
-db 97
-db 115
-db 32
-db 105
-db 116
-db 32
-db 115
-db 104
-db 111
-db 117
-db 108
-db 100
-db 32
-db 98
-db 101
-db 46
-db 0
-align 1
-L179 label byte
-db 83
-db 117
-db 98
-db 116
-db 114
-db 97
-db 99
-db 116
-db 105
-db 111
-db 110
-db 32
-db 105
-db 115
-db 32
-db 110
-db 111
-db 116
-db 32
-db 110
-db 111
-db 114
-db 109
-db 97
-db 108
-db 105
-db 122
-db 101
-db 100
-db 32
-db 88
-db 61
-db 89
-db 44
-db 88
-db 43
-db 90
-db 32
-db 33
-db 61
-db 32
-db 89
-db 43
-db 90
-db 33
-db 0
-align 1
-L175 label byte
-db 114
-db 111
-db 117
-db 103
-db 104
-db 108
-db 121
-db 32
-db 37
-db 103
-db 32
-db 101
-db 120
-db 116
-db 114
-db 97
-db 32
-db 115
-db 105
-db 103
-db 110
-db 105
-db 102
-db 105
-db 99
-db 97
-db 110
-db 116
-db 32
-db 100
-db 101
-db 99
-db 105
-db 109
-db 97
-db 108
-db 115
-db 46
-db 10
-db 0
-align 1
-L174 label byte
-db 112
-db 114
-db 101
-db 99
-db 105
-db 115
-db 101
-db 108
-db 121
-db 32
-db 119
-db 105
-db 116
-db 104
-db 32
-db 97
-db 98
-db 111
-db 117
-db 116
-db 32
-db 37
-db 103
-db 32
-db 101
-db 120
-db 116
-db 114
-db 97
-db 32
-db 66
-db 45
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 44
-db 32
-db 105
-db 46
-db 101
-db 46
-db 10
-db 0
-align 1
-L173 label byte
-db 83
-db 111
-db 109
-db 101
-db 32
-db 115
-db 117
-db 98
-db 101
-db 120
-db 112
-db 114
-db 101
-db 115
-db 115
-db 105
-db 111
-db 110
-db 115
-db 32
-db 97
-db 112
-db 112
-db 101
-db 97
-db 114
-db 32
-db 116
-db 111
-db 32
-db 98
-db 101
-db 32
-db 99
-db 97
-db 108
-db 99
-db 117
-db 108
-db 97
-db 116
-db 101
-db 100
-db 32
-db 101
-db 120
-db 116
-db 114
-db 97
-db 10
-db 0
-align 1
-L167 label byte
-db 111
-db 102
-db 32
-db 97
-db 110
-db 10
-db 101
-db 120
-db 116
-db 114
-db 97
-db 45
-db 112
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 0
-align 1
-L166 label byte
-db 90
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 44
-db 32
-db 111
-db 114
-db 32
-db 90
-db 50
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 32
-db 0
-align 1
-L165 label byte
-db 44
-db 32
-db 111
-db 114
-db 32
-db 101
-db 120
-db 97
-db 99
-db 116
-db 32
-db 114
-db 97
-db 116
-db 105
-db 111
-db 110
-db 97
-db 108
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 97
-db 32
-db 114
-db 101
-db 115
-db 117
-db 108
-db 116
-db 10
-db 0
-align 1
-L164 label byte
-db 66
-db 101
-db 99
-db 97
-db 117
-db 115
-db 101
-db 32
-db 111
-db 102
-db 32
-db 117
-db 110
-db 117
-db 115
-db 117
-db 97
-db 108
-db 32
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 61
-db 32
-db 37
-db 102
-db 0
-align 1
-L160 label byte
-db 9
-db 85
-db 50
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 44
-db 32
-db 90
-db 50
-db 32
-db 45
-db 32
-db 85
-db 50
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 10
-db 0
-align 1
-L159 label byte
-db 9
-db 85
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 44
-db 32
-db 90
-db 49
-db 32
-db 45
-db 32
-db 85
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 10
-db 0
-align 1
-L158 label byte
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 0
-align 1
-L157 label byte
-db 0
-align 1
-L150 label byte
-db 84
-db 104
-db 97
-db 116
-db 32
-db 102
-db 101
-db 97
-db 116
-db 117
-db 114
-db 101
-db 32
-db 105
-db 115
-db 32
-db 110
-db 111
-db 116
-db 32
-db 116
-db 101
-db 115
-db 116
-db 101
-db 100
-db 32
-db 102
-db 117
-db 114
-db 116
-db 104
-db 101
-db 114
-db 32
-db 98
-db 121
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 112
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 46
-db 10
-db 0
-align 1
-L145 label byte
-db 80
-db 111
-db 115
-db 115
-db 105
-db 98
-db 108
-db 121
-db 32
-db 115
-db 111
-db 109
-db 101
-db 32
-db 112
-db 97
-db 114
-db 116
-db 32
-db 111
-db 102
-db 32
-db 116
-db 104
-db 105
-db 115
-db 0
-align 1
-L144 label byte
-db 98
-db 121
-db 32
-db 101
-db 120
-db 116
-db 114
-db 97
-db 45
-db 112
-db 114
-db 101
-db 99
-db 105
-db 115
-db 101
-db 32
-db 101
-db 118
-db 97
-db 108
-db 117
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 111
-db 102
-db 32
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 101
-db 116
-db 105
-db 99
-db 32
-db 115
-db 117
-db 98
-db 101
-db 120
-db 112
-db 114
-db 101
-db 115
-db 115
-db 105
-db 111
-db 110
-db 115
-db 46
-db 10
-db 0
-align 1
-L143 label byte
-db 97
-db 114
-db 101
-db 32
-db 115
-db 121
-db 109
-db 112
-db 116
-db 111
-db 109
-db 115
-db 32
-db 111
-db 102
-db 32
-db 105
-db 110
-db 99
-db 111
-db 110
-db 115
-db 105
-db 115
-db 116
-db 101
-db 110
-db 99
-db 105
-db 101
-db 115
-db 32
-db 105
-db 110
-db 116
-db 114
-db 111
-db 100
-db 117
-db 99
-db 101
-db 100
-db 10
-db 0
-align 1
-L142 label byte
-db 114
-db 101
-db 115
-db 112
-db 101
-db 99
-db 116
-db 105
-db 118
-db 101
-db 108
-db 121
-db 32
-db 32
-db 37
-db 46
-db 55
-db 101
-db 44
-db 32
-db 32
-db 37
-db 46
-db 55
-db 101
-db 44
-db 32
-db 32
-db 37
-db 46
-db 55
-db 101
-db 44
-db 10
-db 0
-align 1
-L141 label byte
-db 68
-db 105
-db 115
-db 97
-db 103
-db 114
-db 101
-db 101
-db 109
-db 101
-db 110
-db 116
-db 115
-db 32
-db 97
-db 109
-db 111
-db 110
-db 103
-db 32
-db 116
-db 104
-db 101
-db 32
-db 118
-db 97
-db 108
-db 117
-db 101
-db 115
-db 32
-db 88
-db 49
-db 44
-db 32
-db 89
-db 49
-db 44
-db 32
-db 90
-db 49
-db 44
-db 10
-db 0
-align 1
-L119 label byte
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 119
-db 111
-db 114
-db 115
-db 101
-db 32
-db 116
-db 104
-db 97
-db 110
-db 32
-db 53
-db 32
-db 100
-db 101
-db 99
-db 105
-db 109
-db 97
-db 108
-db 32
-db 102
-db 105
-db 103
-db 117
-db 114
-db 101
-db 115
-db 32
-db 32
-db 0
-align 1
-L117 label byte
-db 84
-db 104
-db 101
-db 32
-db 110
-db 117
-db 109
-db 98
-db 101
-db 114
-db 32
-db 111
-db 102
-db 32
-db 115
-db 105
-db 103
-db 110
-db 105
-db 102
-db 105
-db 99
-db 97
-db 110
-db 116
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 111
-db 102
-db 32
-db 116
-db 104
-db 101
-db 32
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 105
-db 115
-db 32
-db 37
-db 102
-db 32
-db 46
-db 10
-db 0
-align 1
-L116 label byte
-db 108
-db 111
-db 103
-db 97
-db 114
-db 105
-db 116
-db 104
-db 109
-db 105
-db 99
-db 32
-db 101
-db 110
-db 99
-db 111
-db 100
-db 105
-db 110
-db 103
-db 32
-db 104
-db 97
-db 115
-db 32
-db 112
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 99
-db 104
-db 97
-db 114
-db 97
-db 99
-db 116
-db 101
-db 114
-db 105
-db 122
-db 101
-db 100
-db 32
-db 115
-db 111
-db 108
-db 101
-db 108
-db 121
-db 32
-db 98
-db 121
-db 32
-db 85
-db 49
-db 46
-db 10
-db 0
-align 1
-L113 label byte
-db 111
-db 102
-db 32
-db 115
-db 105
-db 103
-db 110
-db 105
-db 102
-db 105
-db 99
-db 97
-db 110
-db 116
-db 32
-db 100
-db 105
-db 103
-db 105
-db 116
-db 115
-db 32
-db 98
-db 117
-db 116
-db 44
-db 32
-db 98
-db 121
-db 32
-db 105
-db 116
-db 115
-db 101
-db 108
-db 102
-db 44
-db 32
-db 116
-db 104
-db 105
-db 115
-db 32
-db 105
-db 115
-db 32
-db 97
-db 32
-db 109
-db 105
-db 110
-db 111
-db 114
-db 32
-db 102
-db 108
-db 97
-db 119
-db 46
-db 10
-db 0
-align 1
-L112 label byte
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 32
-db 99
-db 97
-db 110
-db 110
-db 111
-db 116
-db 32
-db 98
-db 101
-db 32
-db 99
-db 104
-db 97
-db 114
-db 97
-db 99
-db 116
-db 101
-db 114
-db 105
-db 122
-db 101
-db 100
-db 32
-db 98
-db 121
-db 32
-db 97
-db 110
-db 32
-db 73
-db 110
-db 116
-db 101
-db 103
-db 101
-db 114
-db 32
-db 110
-db 117
-db 109
-db 98
-db 101
-db 114
-db 10
-db 0
-align 1
-L99 label byte
-db 67
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 111
-db 110
-db 32
-db 105
-db 115
-db 32
-db 102
-db 117
-db 122
-db 122
-db 121
-db 44
-db 88
-db 61
-db 49
-db 32
-db 98
-db 117
-db 116
-db 32
-db 88
-db 45
-db 49
-db 47
-db 50
-db 45
-db 49
-db 47
-db 50
-db 32
-db 33
-db 61
-db 32
-db 48
-db 0
-align 1
-L95 label byte
-db 40
-db 49
-db 45
-db 85
-db 49
-db 41
-db 45
-db 49
-db 47
-db 50
-db 32
-db 60
-db 32
-db 49
-db 47
-db 50
-db 32
-db 105
-db 115
-db 32
-db 70
-db 65
-db 76
-db 83
-db 69
-db 44
-db 32
-db 112
-db 114
-db 111
-db 103
-db 46
-db 32
-db 102
-db 97
-db 105
-db 108
-db 115
-db 63
-db 0
-align 4
-L93 label byte
-dd 00H
-dd 040240000H
-align 1
-L88 label byte
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 105
-db 115
-db 32
-db 110
-db 111
-db 116
-db 32
-db 97
-db 115
-db 32
-db 103
-db 111
-db 111
-db 100
-db 32
-db 97
-db 115
-db 32
-db 50
-db 32
-db 111
-db 114
-db 32
-db 49
-db 48
-db 0
-align 1
-L84 label byte
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 105
-db 115
-db 32
-db 116
-db 111
-db 111
-db 32
-db 98
-db 105
-db 103
-db 58
-db 32
-db 114
-db 111
-db 117
-db 110
-db 100
-db 111
-db 102
-db 102
-db 32
-db 112
-db 114
-db 111
-db 98
-db 108
-db 101
-db 109
-db 115
-db 0
-align 1
-L82 label byte
-db 77
-db 89
-db 83
-db 84
-db 69
-db 82
-db 89
-db 58
-db 32
-db 114
-db 101
-db 99
-db 97
-db 108
-db 99
-db 117
-db 108
-db 97
-db 116
-db 101
-db 100
-db 32
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L81 label byte
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 99
-db 111
-db 110
-db 102
-db 105
-db 114
-db 109
-db 101
-db 100
-db 46
-db 10
-db 0
-align 4
-L78 label byte
-dd 047ae147bH
-dd 03f847ae1H
-align 1
-L77 label byte
-db 103
-db 101
-db 116
-db 115
-db 32
-db 98
-db 101
-db 116
-db 116
-db 101
-db 114
-db 32
-db 99
-db 108
-db 111
-db 115
-db 101
-db 115
-db 116
-db 32
-db 114
-db 101
-db 108
-db 97
-db 116
-db 105
-db 118
-db 101
-db 32
-db 115
-db 101
-db 112
-db 97
-db 114
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 85
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 32
-db 46
-db 10
-db 0
-align 1
-L76 label byte
-db 99
-db 111
-db 110
-db 102
-db 105
-db 114
-db 109
-db 115
-db 32
-db 99
-db 108
-db 111
-db 115
-db 101
-db 115
-db 116
-db 32
-db 114
-db 101
-db 108
-db 97
-db 116
-db 105
-db 118
-db 101
-db 32
-db 115
-db 101
-db 112
-db 97
-db 114
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 85
-db 49
-db 32
-db 46
-db 10
-db 0
-align 1
-L61 label byte
-db 82
-db 101
-db 99
-db 97
-db 108
-db 99
-db 117
-db 108
-db 97
-db 116
-db 105
-db 110
-db 103
-db 32
-db 114
-db 97
-db 100
-db 105
-db 120
-db 32
-db 97
-db 110
-db 100
-db 32
-db 112
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 10
-db 32
-db 0
-align 1
-L60 label byte
-db 67
-db 108
-db 111
-db 115
-db 101
-db 115
-db 116
-db 32
-db 114
-db 101
-db 108
-db 97
-db 116
-db 105
-db 118
-db 101
-db 32
-db 115
-db 101
-db 112
-db 97
-db 114
-db 97
-db 116
-db 105
-db 111
-db 110
-db 32
-db 102
-db 111
-db 117
-db 110
-db 100
-db 32
-db 105
-db 115
-db 32
-db 85
-db 49
-db 32
-db 61
-db 32
-db 37
-db 46
-db 55
-db 101
-db 32
-db 46
-db 10
-db 10
-db 0
-align 1
-L54 label byte
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 61
-db 32
-db 37
-db 102
-db 32
-db 46
-db 10
-db 0
-align 1
-L45 label byte
-db 83
-db 101
-db 97
-db 114
-db 99
-db 104
-db 105
-db 110
-db 103
-db 32
-db 102
-db 111
-db 114
-db 32
-db 82
-db 97
-db 100
-db 105
-db 120
-db 32
-db 97
-db 110
-db 100
-db 32
-db 80
-db 114
-db 101
-db 99
-db 105
-db 115
-db 105
-db 111
-db 110
-db 46
-db 10
-db 0
-align 1
-L44 label byte
-db 10
-db 0
-align 1
-L43 label byte
-db 45
-db 49
-db 44
-db 32
-db 48
-db 44
-db 32
-db 49
-db 47
-db 50
-db 44
-db 32
-db 49
-db 44
-db 32
-db 50
-db 44
-db 32
-db 51
-db 44
-db 32
-db 52
-db 44
-db 32
-db 53
-db 44
-db 32
-db 57
-db 44
-db 32
-db 50
-db 55
-db 44
-db 32
-db 51
-db 50
-db 32
-db 38
-db 32
-db 50
-db 52
-db 48
-db 32
-db 97
-db 114
-db 101
-db 32
-db 79
-db 46
-db 75
-db 46
-db 10
-db 0
-align 1
-L38 label byte
-db 53
-db 32
-db 33
-db 61
-db 32
-db 52
-db 43
-db 49
-db 44
-db 32
-db 50
-db 52
-db 48
-db 47
-db 51
-db 32
-db 33
-db 61
-db 32
-db 56
-db 48
-db 44
-db 32
-db 50
-db 52
-db 48
-db 47
-db 52
-db 32
-db 33
-db 61
-db 32
-db 54
-db 48
-db 44
-db 32
-db 111
-db 114
-db 32
-db 50
-db 52
-db 48
-db 47
-db 53
-db 32
-db 33
-db 61
-db 32
-db 52
-db 56
-db 0
-align 1
-L34 label byte
-db 57
-db 32
-db 33
-db 61
-db 32
-db 51
-db 42
-db 51
-db 44
-db 32
-db 50
-db 55
-db 32
-db 33
-db 61
-db 32
-db 57
-db 42
-db 51
-db 44
-db 32
-db 51
-db 50
-db 32
-db 33
-db 61
-db 32
-db 56
-db 42
-db 52
-db 44
-db 32
-db 111
-db 114
-db 32
-db 51
-db 50
-db 45
-db 50
-db 55
-db 45
-db 52
-db 45
-db 49
-db 32
-db 33
-db 61
-db 32
-db 48
-db 0
-align 1
-L30 label byte
-db 49
-db 47
-db 50
-db 32
-db 43
-db 32
-db 40
-db 45
-db 49
-db 41
-db 32
-db 43
-db 32
-db 49
-db 47
-db 50
-db 32
-db 33
-db 61
-db 32
-db 48
-db 0
-align 1
-L26 label byte
-db 45
-db 49
-db 43
-db 49
-db 32
-db 33
-db 61
-db 32
-db 48
-db 44
-db 32
-db 40
-db 45
-db 49
-db 41
-db 43
-db 97
-db 98
-db 115
-db 40
-db 49
-db 41
-db 32
-db 33
-db 61
-db 32
-db 48
-db 44
-db 32
-db 111
-db 114
-db 32
-db 45
-db 49
-db 43
-db 40
-db 45
-db 49
-db 41
-db 42
-db 40
-db 45
-db 49
-db 41
-db 32
-db 33
-db 61
-db 32
-db 48
-db 0
-align 1
-L22 label byte
-db 51
-db 32
-db 33
-db 61
-db 32
-db 50
-db 43
-db 49
-db 44
-db 32
-db 52
-db 32
-db 33
-db 61
-db 32
-db 51
-db 43
-db 49
-db 44
-db 32
-db 52
-db 43
-db 50
-db 42
-db 40
-db 45
-db 50
-db 41
-db 32
-db 33
-db 61
-db 32
-db 48
-db 44
-db 32
-db 111
-db 114
-db 32
-db 52
-db 45
-db 51
-db 45
-db 49
-db 32
-db 33
-db 61
-db 32
-db 48
-db 0
-align 4
-L20 label byte
-dd 0d2f1a9fcH
-dd 03f50624dH
-align 1
-L19 label byte
-db 67
-db 111
-db 109
-db 112
-db 97
-db 114
-db 105
-db 115
-db 111
-db 110
-db 32
-db 97
-db 108
-db 108
-db 101
-db 103
-db 101
-db 115
-db 32
-db 116
-db 104
-db 97
-db 116
-db 32
-db 45
-db 48
-db 46
-db 48
-db 32
-db 105
-db 115
-db 32
-db 78
-db 111
-db 110
-db 45
-db 122
-db 101
-db 114
-db 111
-db 33
-db 10
-db 0
-align 1
-L14 label byte
-db 48
-db 43
-db 48
-db 32
-db 33
-db 61
-db 32
-db 48
-db 44
-db 32
-db 49
-db 45
-db 49
-db 32
-db 33
-db 61
-db 32
-db 48
-db 44
-db 32
-db 49
-db 32
-db 60
-db 61
-db 32
-db 48
-db 44
-db 32
-db 111
-db 114
-db 32
-db 49
-db 43
-db 49
-db 32
-db 33
-db 61
-db 32
-db 50
-db 0
-align 1
-L12 label byte
-db 80
-db 114
-db 111
-db 103
-db 114
-db 97
-db 109
-db 32
-db 105
-db 115
-db 32
-db 110
-db 111
-db 119
-db 32
-db 82
-db 85
-db 78
-db 78
-db 73
-db 78
-db 71
-db 32
-db 116
-db 101
-db 115
-db 116
-db 115
-db 32
-db 111
-db 110
-db 32
-db 115
-db 109
-db 97
-db 108
-db 108
-db 32
-db 105
-db 110
-db 116
-db 101
-db 103
-db 101
-db 114
-db 115
-db 58
-db 10
-db 0
-align 4
-L8 label byte
-dd 00H
-dd 03ff00000H
-align 4
-L7 label byte
-dd 00H
-dd 00H
-align 1
-L2 label byte
-db 10
-db 42
-db 32
-db 42
-db 32
-db 42
-db 32
-db 70
-db 76
-db 79
-db 65
-db 84
-db 73
-db 78
-db 71
-db 45
-db 80
-db 79
-db 73
-db 78
-db 84
-db 32
-db 69
-db 82
-db 82
-db 79
-db 82
-db 32
-db 42
-db 32
-db 42
-db 32
-db 42
-db 10
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+_DATA segment
+public _Zero
+align 4
+_Zero label byte
+dd 00H
+dd 00H
+public _Half
+align 4
+_Half label byte
+dd 00H
+dd 03fe00000H
+public _One
+align 4
+_One label byte
+dd 00H
+dd 03ff00000H
+public _Two
+align 4
+_Two label byte
+dd 00H
+dd 040000000H
+public _Three
+align 4
+_Three label byte
+dd 00H
+dd 040080000H
+public _Four
+align 4
+_Four label byte
+dd 00H
+dd 040100000H
+public _Five
+align 4
+_Five label byte
+dd 00H
+dd 040140000H
+public _Eight
+align 4
+_Eight label byte
+dd 00H
+dd 040200000H
+public _Nine
+align 4
+_Nine label byte
+dd 00H
+dd 040220000H
+public _TwentySeven
+align 4
+_TwentySeven label byte
+dd 00H
+dd 0403b0000H
+public _ThirtyTwo
+align 4
+_ThirtyTwo label byte
+dd 00H
+dd 040400000H
+public _TwoForty
+align 4
+_TwoForty label byte
+dd 00H
+dd 0406e0000H
+public _MinusOne
+align 4
+_MinusOne label byte
+dd 00H
+dd 0bff00000H
+public _OneAndHalf
+align 4
+_OneAndHalf label byte
+dd 00H
+dd 03ff80000H
+public _NoTrials
+align 4
+_NoTrials label byte
+dd 20
+public _sigfpe
+_DATA ends
+_TEXT segment
+_sigfpe:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+inc dword ptr (_fpecount)
+lea edi,(L2)
+push edi
+call _printf
+add esp,4
+lea edi,(__iob+32)
+push edi
+call _fflush
+add esp,4
+mov edi,dword ptr (_sigsave)
+cmp edi,0
+je L4
+mov edi,dword ptr (_sigsave)
+push edi
+push 8
+call _signal
+add esp,8
+mov dword ptr (_sigsave),0
+push 1
+lea edi,(_ovfl_buf)
+push edi
+call _longjmp
+add esp,8
+L4:
+call _abort
+add esp,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L757 label byte
+dd L758
+dd L759
+dd L760
+dd L761
+public _main
+_DATA ends
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,1684
+fld qword ptr (L7)
+fstp qword ptr (_Zero)
+fld qword ptr (L8)
+fstp qword ptr (_One)
+fld qword ptr (_One)
+fstp qword ptr (-8)[ebp]
+fld qword ptr (-8)[ebp]
+fadd qword ptr (-8)[ebp]
+fstp qword ptr (_Two)
+fld qword ptr (_Two)
+fstp qword ptr (-16)[ebp]
+fld qword ptr (-16)[ebp]
+fadd qword ptr (-8)[ebp]
+fstp qword ptr (_Three)
+fld qword ptr (_Three)
+fstp qword ptr (-24)[ebp]
+fld qword ptr (-24)[ebp]
+fadd qword ptr (-8)[ebp]
+fstp qword ptr (_Four)
+fld qword ptr (_Four)
+fstp qword ptr (-32)[ebp]
+fld qword ptr (-32)[ebp]
+fadd qword ptr (-8)[ebp]
+fstp qword ptr (_Five)
+fld qword ptr (-32)[ebp]
+fadd qword ptr (-32)[ebp]
+fstp qword ptr (_Eight)
+fld qword ptr (-24)[ebp]
+fmul qword ptr (-24)[ebp]
+fstp qword ptr (_Nine)
+fld qword ptr (_Nine)
+fmul qword ptr (-24)[ebp]
+fstp qword ptr (_TwentySeven)
+fld qword ptr (-32)[ebp]
+fmul qword ptr (_Eight)
+fstp qword ptr (_ThirtyTwo)
+fld qword ptr (-32)[ebp]
+fmul qword ptr (_Five)
+fmul qword ptr (-24)[ebp]
+fmul qword ptr (-32)[ebp]
+fstp qword ptr (_TwoForty)
+fld qword ptr (-8)[ebp]
+fchs
+fstp qword ptr (_MinusOne)
+fld qword ptr (-8)[ebp]
+fdiv qword ptr (-16)[ebp]
+fstp qword ptr (_Half)
+fld qword ptr (-8)[ebp]
+fadd qword ptr (_Half)
+fstp qword ptr (_OneAndHalf)
+mov dword ptr (_ErrCnt),0
+mov dword ptr (_ErrCnt+4),0
+mov dword ptr (_ErrCnt+8),0
+mov dword ptr (_ErrCnt+12),0
+mov dword ptr (_PageNo),1
+mov dword ptr (_Milestone),0
+lea edi,(_sigfpe)
+push edi
+push 8
+call _signal
+add esp,8
+call _Instructions
+add esp,0
+call _Pause
+add esp,0
+call _Heading
+add esp,0
+call _Pause
+add esp,0
+call _Characteristics
+add esp,0
+call _Pause
+add esp,0
+call _History
+add esp,0
+call _Pause
+add esp,0
+mov dword ptr (_Milestone),7
+lea edi,(L12)
+push edi
+call _printf
+add esp,4
+lea edi,(L14)
+push edi
+fld qword ptr (_Zero)
+fadd qword ptr (_Zero)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L15
+fld qword ptr (_One)
+fsub qword ptr (_One)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L15
+fld qword ptr (_Zero)
+fcomp qword ptr (_One)
+fstsw ax
+sahf
+jae L15
+fld qword ptr (_One)
+fadd qword ptr (_One)
+fld qword ptr (_Two)
+fcompp
+fstsw ax
+sahf
+jne L15
+mov dword ptr (-36)[ebp],1
+jmp L16
+L15:
+mov dword ptr (-36)[ebp],0
+L16:
+mov edi,dword ptr (-36)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (_Zero)
+fchs
+fstp qword ptr (_Z)
+fld qword ptr (L7)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+je L17
+inc dword ptr (_ErrCnt)
+lea edi,(L19)
+push edi
+call _printf
+add esp,4
+fld qword ptr (L20)
+fstp qword ptr (_U1)
+fld qword ptr (L8)
+fstp qword ptr (_Radix)
+call _TstPtUf
+add esp,0
+L17:
+lea edi,(L22)
+push edi
+fld qword ptr (_Two)
+fadd qword ptr (_One)
+fcomp qword ptr (_Three)
+fstsw ax
+sahf
+jne L23
+fld qword ptr (_Three)
+fadd qword ptr (_One)
+fcomp qword ptr (_Four)
+fstsw ax
+sahf
+jne L23
+fld qword ptr (_Four)
+fld qword ptr (_Two)
+fld qword ptr (_Two)
+fchs
+fmulp st(1),st
+faddp st(1),st
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L23
+fld qword ptr (_Four)
+fsub qword ptr (_Three)
+fsub qword ptr (_One)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L23
+mov dword ptr (-56)[ebp],1
+jmp L24
+L23:
+mov dword ptr (-56)[ebp],0
+L24:
+mov edi,dword ptr (-56)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (L7)
+fsub qword ptr (_One)
+fcomp qword ptr (_MinusOne)
+fstsw ax
+sahf
+jne L27
+fld qword ptr (_MinusOne)
+fadd qword ptr (_One)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L27
+fld qword ptr (_One)
+fadd qword ptr (_MinusOne)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L27
+fld qword ptr (_One)
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-132)[ebp]
+fld qword ptr (_MinusOne)
+fadd qword ptr (-132)[ebp]
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L27
+fld qword ptr (_MinusOne)
+fld qword ptr (_MinusOne)
+fmul qword ptr (_MinusOne)
+faddp st(1),st
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L27
+mov dword ptr (-100)[ebp],1
+jmp L28
+L27:
+mov dword ptr (-100)[ebp],0
+L28:
+lea edi,(L26)
+push edi
+mov edi,dword ptr (-100)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+lea edi,(L30)
+push edi
+fld qword ptr (_Half)
+fadd qword ptr (_MinusOne)
+fadd qword ptr (_Half)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L31
+mov dword ptr (-152)[ebp],1
+jmp L32
+L31:
+mov dword ptr (-152)[ebp],0
+L32:
+mov edi,dword ptr (-152)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+mov dword ptr (_Milestone),10
+lea edi,(L34)
+push edi
+fld qword ptr (_Three)
+fmul qword ptr (_Three)
+fcomp qword ptr (_Nine)
+fstsw ax
+sahf
+jne L35
+fld qword ptr (_Nine)
+fmul qword ptr (_Three)
+fcomp qword ptr (_TwentySeven)
+fstsw ax
+sahf
+jne L35
+fld qword ptr (_Four)
+fadd qword ptr (_Four)
+fcomp qword ptr (_Eight)
+fstsw ax
+sahf
+jne L35
+fld qword ptr (_Eight)
+fmul qword ptr (_Four)
+fcomp qword ptr (_ThirtyTwo)
+fstsw ax
+sahf
+jne L35
+fld qword ptr (_ThirtyTwo)
+fsub qword ptr (_TwentySeven)
+fsub qword ptr (_Four)
+fsub qword ptr (_One)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L35
+mov dword ptr (-164)[ebp],1
+jmp L36
+L35:
+mov dword ptr (-164)[ebp],0
+L36:
+mov edi,dword ptr (-164)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+lea edi,(L38)
+push edi
+fld qword ptr (_Four)
+fadd qword ptr (_One)
+fcomp qword ptr (_Five)
+fstsw ax
+sahf
+jne L39
+fld qword ptr (_Four)
+fmul qword ptr (_Five)
+fmul qword ptr (_Three)
+fmul qword ptr (_Four)
+fcomp qword ptr (_TwoForty)
+fstsw ax
+sahf
+jne L39
+fld qword ptr (_TwoForty)
+fdiv qword ptr (_Three)
+fld qword ptr (_Four)
+fmul qword ptr (_Four)
+fmul qword ptr (_Five)
+fsubp st(1),st
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L39
+fld qword ptr (_TwoForty)
+fdiv qword ptr (_Four)
+fld qword ptr (_Five)
+fmul qword ptr (_Three)
+fmul qword ptr (_Four)
+fsubp st(1),st
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L39
+fld qword ptr (_TwoForty)
+fdiv qword ptr (_Five)
+fld qword ptr (_Four)
+fmul qword ptr (_Three)
+fmul qword ptr (_Four)
+fsubp st(1),st
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L39
+mov dword ptr (-216)[ebp],1
+jmp L40
+L39:
+mov dword ptr (-216)[ebp],0
+L40:
+mov edi,dword ptr (-216)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+cmp dword ptr (_ErrCnt),0
+jne L41
+lea edi,(L43)
+push edi
+call _printf
+add esp,4
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+L41:
+lea edi,(L45)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_One)
+fstp qword ptr (_W)
+L46:
+fld qword ptr (_W)
+fstp qword ptr (-264)[ebp]
+fld qword ptr (-264)[ebp]
+fadd qword ptr (-264)[ebp]
+fstp qword ptr (_W)
+fld qword ptr (_W)
+fstp qword ptr (-272)[ebp]
+fld qword ptr (-272)[ebp]
+fadd qword ptr (_One)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fsub qword ptr (-272)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fsub qword ptr (_One)
+fstp qword ptr (_Y)
+L47:
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-264)[ebp]
+fld qword ptr (_MinusOne)
+fadd qword ptr (-264)[ebp]
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+ja L46
+fld qword ptr (_Zero)
+fstp qword ptr (_Precision)
+fld qword ptr (_One)
+fstp qword ptr (_Y)
+L49:
+fld qword ptr (_Y)
+fstp qword ptr (-280)[ebp]
+fld qword ptr (_W)
+fadd qword ptr (-280)[ebp]
+fstp qword ptr (_Radix)
+fld qword ptr (-280)[ebp]
+fadd qword ptr (-280)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (_Radix)
+fsub qword ptr (_W)
+fstp qword ptr (_Radix)
+L50:
+fld qword ptr (_Zero)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+je L49
+fld qword ptr (_Two)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+jbe L52
+fld qword ptr (_One)
+fstp qword ptr (_Radix)
+L52:
+fld qword ptr (_Radix)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L54)
+push edi
+call _printf
+add esp,12
+fld qword ptr (L8)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+je L55
+fld qword ptr (_One)
+fstp qword ptr (_W)
+L57:
+fld qword ptr (_Precision)
+fadd qword ptr (_One)
+fstp qword ptr (_Precision)
+fld qword ptr (_W)
+fmul qword ptr (_Radix)
+fstp qword ptr (_W)
+fld qword ptr (_W)
+fadd qword ptr (_One)
+fstp qword ptr (_Y)
+L58:
+fld qword ptr (_Y)
+fsub qword ptr (_W)
+fld qword ptr (_One)
+fcompp
+fstsw ax
+sahf
+je L57
+L55:
+fld qword ptr (_One)
+fdiv qword ptr (_W)
+fstp qword ptr (_U1)
+fld qword ptr (_U1)
+fstp qword ptr (-272)[ebp]
+fld qword ptr (_Radix)
+fmul qword ptr (-272)[ebp]
+fstp qword ptr (_U2)
+fld qword ptr (-272)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L60)
+push edi
+call _printf
+add esp,12
+lea edi,(L61)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Radix)
+fstp qword ptr (_E0)
+fld qword ptr (_U1)
+fstp qword ptr (_E1)
+fld qword ptr (_U2)
+fstp qword ptr (_E9)
+fld qword ptr (_Precision)
+fstp qword ptr (_E3)
+fld qword ptr (_Four)
+fdiv qword ptr (_Three)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fsub qword ptr (_One)
+fstp qword ptr (_Third)
+fld qword ptr (_Third)
+fstp qword ptr (-280)[ebp]
+fld qword ptr (_Half)
+fsub qword ptr (-280)[ebp]
+fstp qword ptr (_F6)
+fld qword ptr (_F6)
+fstp qword ptr (-288)[ebp]
+fld qword ptr (-288)[ebp]
+fadd qword ptr (-288)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fsub qword ptr (-280)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-296)[ebp]
+fld qword ptr (-296)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_U2)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jbe L62
+fld qword ptr (_U2)
+fstp qword ptr (_X)
+L62:
+L64:
+fld qword ptr (_X)
+fstp qword ptr (_U2)
+fld qword ptr (_U2)
+fstp qword ptr (-304)[ebp]
+fld qword ptr (_Half)
+fmul qword ptr (-304)[ebp]
+fld qword ptr (_ThirtyTwo)
+fmul qword ptr (-304)[ebp]
+fmul qword ptr (-304)[ebp]
+faddp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fadd qword ptr (_Y)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fsub qword ptr (_One)
+fstp qword ptr (_X)
+L65:
+fld qword ptr (_X)
+fcomp qword ptr (_U2)
+fstsw ax
+sahf
+jae L67
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jb L64
+L67:
+fld qword ptr (_Two)
+fdiv qword ptr (_Three)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fsub qword ptr (_Half)
+fstp qword ptr (_F6)
+fld qword ptr (_F6)
+fstp qword ptr (-320)[ebp]
+fld qword ptr (-320)[ebp]
+fadd qword ptr (-320)[ebp]
+fstp qword ptr (_Third)
+fld qword ptr (_Third)
+fsub qword ptr (_Half)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fadd qword ptr (-320)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-328)[ebp]
+fld qword ptr (-328)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_U1)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jbe L68
+fld qword ptr (_U1)
+fstp qword ptr (_X)
+L68:
+L70:
+fld qword ptr (_X)
+fstp qword ptr (_U1)
+fld qword ptr (_U1)
+fstp qword ptr (-344)[ebp]
+fld qword ptr (_Half)
+fmul qword ptr (-344)[ebp]
+fld qword ptr (_ThirtyTwo)
+fmul qword ptr (-344)[ebp]
+fmul qword ptr (-344)[ebp]
+faddp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (_Half)
+fsub qword ptr (_Y)
+fstp qword ptr (_Y)
+fld qword ptr (_Half)
+fadd qword ptr (_Y)
+fstp qword ptr (_X)
+fld qword ptr (_Half)
+fsub qword ptr (_X)
+fstp qword ptr (_Y)
+fld qword ptr (_Half)
+fadd qword ptr (_Y)
+fstp qword ptr (_X)
+L71:
+fld qword ptr (_X)
+fcomp qword ptr (_U1)
+fstsw ax
+sahf
+jae L73
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jb L70
+L73:
+fld qword ptr (_E1)
+fcomp qword ptr (_U1)
+fstsw ax
+sahf
+jne L74
+lea edi,(L76)
+push edi
+call _printf
+add esp,4
+jmp L75
+L74:
+fld qword ptr (_U1)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L77)
+push edi
+call _printf
+add esp,12
+L75:
+fld qword ptr (_One)
+fdiv qword ptr (_U1)
+fstp qword ptr (_W)
+fld qword ptr (_Half)
+fsub qword ptr (_U1)
+fadd qword ptr (_Half)
+fstp qword ptr (_F9)
+fld qword ptr (_U2)
+fdiv qword ptr (_U1)
+fadd qword ptr (L78)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-360)[ebp]
+fld qword ptr (-360)[ebp]
+fstp qword ptr (_Radix)
+fld qword ptr (_E0)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+jne L79
+lea edi,(L81)
+push edi
+call _printf
+add esp,4
+jmp L80
+L79:
+fld qword ptr (_Radix)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L82)
+push edi
+call _printf
+add esp,12
+L80:
+lea edi,(L84)
+push edi
+fld qword ptr (_Eight)
+fadd qword ptr (_Eight)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+jb L85
+mov dword ptr (-364)[ebp],1
+jmp L86
+L85:
+mov dword ptr (-364)[ebp],0
+L86:
+mov edi,dword ptr (-364)[ebp]
+push edi
+push 2
+call _TstCond
+add esp,12
+lea edi,(L88)
+push edi
+fld qword ptr (_Two)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+je L92
+fld qword ptr (L93)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+je L92
+fld qword ptr (_One)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+jne L89
+L92:
+mov dword ptr (-376)[ebp],1
+jmp L90
+L89:
+mov dword ptr (-376)[ebp],0
+L90:
+mov edi,dword ptr (-376)[ebp]
+push edi
+push 3
+call _TstCond
+add esp,12
+mov dword ptr (_Milestone),20
+lea edi,(L95)
+push edi
+fld qword ptr (_F9)
+fsub qword ptr (_Half)
+fld qword ptr (_Half)
+fcompp
+fstsw ax
+sahf
+jbe L96
+mov dword ptr (-388)[ebp],1
+jmp L97
+L96:
+mov dword ptr (-388)[ebp],0
+L97:
+mov edi,dword ptr (-388)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (_F9)
+fstp qword ptr (_X)
+mov dword ptr (_I),1
+fld qword ptr (_X)
+fsub qword ptr (_Half)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fsub qword ptr (_Half)
+fstp qword ptr (_Z)
+lea edi,(L99)
+push edi
+fld qword ptr (_One)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L102
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L100
+L102:
+mov dword ptr (-400)[ebp],1
+jmp L101
+L100:
+mov dword ptr (-400)[ebp],0
+L101:
+mov edi,dword ptr (-400)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fstp qword ptr (_X)
+mov dword ptr (_I),0
+mov dword ptr (_Milestone),25
+fld qword ptr (_Radix)
+fsub qword ptr (_One)
+fstp qword ptr (_BMinusU2)
+fld qword ptr (_BMinusU2)
+fsub qword ptr (_U2)
+fadd qword ptr (_One)
+fstp qword ptr (_BMinusU2)
+fld qword ptr (_One)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+je L103
+fld qword ptr (_U1)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-440)[ebp]
+fld qword ptr (_Radix)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-448)[ebp]
+fld qword ptr (_TwoForty)
+fchs
+fmul qword ptr (-440)[ebp]
+fdiv qword ptr (-448)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_Half)
+fadd qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-456)[ebp]
+fld qword ptr (-456)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fsub qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-464)[ebp]
+fld qword ptr (-464)[ebp]
+fmul qword ptr (_Four)
+fld qword ptr (_One)
+fcompp
+fstsw ax
+sahf
+jbe L105
+fld qword ptr (_Y)
+fstp qword ptr (_X)
+L105:
+fld qword ptr (_X)
+fdiv qword ptr (_TwoForty)
+fstp qword ptr (_Precision)
+fld qword ptr (_Half)
+fadd qword ptr (_Precision)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-472)[ebp]
+fld qword ptr (-472)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (_Precision)
+fsub qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-480)[ebp]
+fld qword ptr (-480)[ebp]
+fmul qword ptr (_TwoForty)
+fld qword ptr (_Half)
+fcompp
+fstsw ax
+sahf
+jbe L107
+fld qword ptr (_Y)
+fstp qword ptr (_Precision)
+L107:
+L103:
+fld qword ptr (_Precision)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-448)[ebp]
+fld qword ptr (-448)[ebp]
+fcomp qword ptr (_Precision)
+fstsw ax
+sahf
+jne L111
+fld qword ptr (_One)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+jne L109
+L111:
+lea edi,(L112)
+push edi
+call _printf
+add esp,4
+lea edi,(L113)
+push edi
+call _printf
+add esp,4
+L109:
+fld qword ptr (_One)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+jne L114
+lea edi,(L116)
+push edi
+call _printf
+add esp,4
+jmp L115
+L114:
+fld qword ptr (_Precision)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L117)
+push edi
+call _printf
+add esp,12
+L115:
+lea edi,(L119)
+push edi
+fld qword ptr (_U2)
+fmul qword ptr (_Nine)
+fmul qword ptr (_Nine)
+fmul qword ptr (_TwoForty)
+fld qword ptr (_One)
+fcompp
+fstsw ax
+sahf
+jbe L120
+mov dword ptr (-452)[ebp],1
+jmp L121
+L120:
+mov dword ptr (-452)[ebp],0
+L121:
+mov edi,dword ptr (-452)[ebp]
+push edi
+push 1
+call _TstCond
+add esp,12
+mov dword ptr (_Milestone),30
+fld qword ptr (_One)
+fdiv qword ptr (_Four)
+fstp qword ptr (-492)[ebp]
+fld qword ptr (_Four)
+fdiv qword ptr (_Three)
+fsub qword ptr (_One)
+fsub qword ptr (-492)[ebp]
+fmul qword ptr (_Three)
+fsub qword ptr (-492)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-500)[ebp]
+fld qword ptr (-500)[ebp]
+fstp qword ptr (_X)
+L122:
+fld qword ptr (_X)
+fstp qword ptr (_Z2)
+fld qword ptr (_Z2)
+fstp qword ptr (-516)[ebp]
+fld qword ptr (_One)
+fld qword ptr (_Half)
+fmul qword ptr (-516)[ebp]
+fld qword ptr (_ThirtyTwo)
+fmul qword ptr (-516)[ebp]
+fmul qword ptr (-516)[ebp]
+faddp st(1),st
+faddp st(1),st
+fsub qword ptr (_One)
+fstp qword ptr (_X)
+L123:
+fld qword ptr (_X)
+fcomp qword ptr (_Z2)
+fstsw ax
+sahf
+jae L125
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jb L122
+L125:
+fld qword ptr (_Three)
+fdiv qword ptr (_Four)
+fld qword ptr (_Two)
+fdiv qword ptr (_Three)
+fsubp st(1),st
+fmul qword ptr (_Three)
+fld qword ptr (_One)
+fdiv qword ptr (_Four)
+fsubp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-532)[ebp]
+fld qword ptr (-532)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (-532)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (-532)[ebp]
+fstp qword ptr (_X)
+L126:
+fld qword ptr (_Z)
+fstp qword ptr (_Z1)
+fld qword ptr (_One)
+fdiv qword ptr (_Two)
+fstp qword ptr (-540)[ebp]
+fld qword ptr (_Z1)
+fstp qword ptr (-548)[ebp]
+fld qword ptr (-540)[ebp]
+fld qword ptr (-540)[ebp]
+fld qword ptr (_Half)
+fmul qword ptr (-548)[ebp]
+fld qword ptr (_ThirtyTwo)
+fmul qword ptr (-548)[ebp]
+fmul qword ptr (-548)[ebp]
+faddp st(1),st
+fsubp st(1),st
+fadd qword ptr (-540)[ebp]
+fsubp st(1),st
+fadd qword ptr (-540)[ebp]
+fstp qword ptr (_Z)
+L127:
+fld qword ptr (_Z)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jae L129
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jb L126
+L129:
+L130:
+L133:
+fld qword ptr (_Y)
+fstp qword ptr (_Y1)
+fld qword ptr (_Y1)
+fstp qword ptr (-556)[ebp]
+fld qword ptr (_Half)
+fld qword ptr (_Half)
+fld qword ptr (_Half)
+fmul qword ptr (-556)[ebp]
+fld qword ptr (_ThirtyTwo)
+fmul qword ptr (-556)[ebp]
+fmul qword ptr (-556)[ebp]
+faddp st(1),st
+fsubp st(1),st
+fadd qword ptr (_Half)
+fsubp st(1),st
+fadd qword ptr (_Half)
+fstp qword ptr (_Y)
+L134:
+fld qword ptr (_Y)
+fcomp qword ptr (_Y1)
+fstsw ax
+sahf
+jae L136
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jb L133
+L136:
+fld qword ptr (_X)
+fstp qword ptr (_X1)
+fld qword ptr (_X1)
+fstp qword ptr (-556)[ebp]
+fld qword ptr (_Half)
+fmul qword ptr (-556)[ebp]
+fld qword ptr (_ThirtyTwo)
+fmul qword ptr (-556)[ebp]
+fmul qword ptr (-556)[ebp]
+faddp st(1),st
+fsub qword ptr (_F9)
+fadd qword ptr (_F9)
+fstp qword ptr (_X)
+L131:
+fld qword ptr (_X)
+fcomp qword ptr (_X1)
+fstsw ax
+sahf
+jae L137
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jb L130
+L137:
+fld qword ptr (_Y1)
+fcomp qword ptr (_X1)
+fstsw ax
+sahf
+jne L140
+fld qword ptr (_Z1)
+fcomp qword ptr (_X1)
+fstsw ax
+sahf
+je L138
+L140:
+lea edi,(L141)
+push edi
+push 1
+call _BadCond
+add esp,8
+fld qword ptr (_Z1)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_Y1)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_X1)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L142)
+push edi
+call _printf
+add esp,28
+lea edi,(L143)
+push edi
+call _printf
+add esp,4
+lea edi,(L144)
+push edi
+call _printf
+add esp,4
+lea edi,(L145)
+push edi
+call _notify
+add esp,4
+fld qword ptr (_U1)
+fcomp qword ptr (_X1)
+fstsw ax
+sahf
+je L149
+fld qword ptr (_U1)
+fcomp qword ptr (_Y1)
+fstsw ax
+sahf
+je L149
+fld qword ptr (_U1)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jne L139
+L149:
+lea edi,(L150)
+push edi
+call _printf
+add esp,4
+jmp L139
+L138:
+fld qword ptr (_U1)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jne L153
+fld qword ptr (_U2)
+fcomp qword ptr (_Z2)
+fstsw ax
+sahf
+je L151
+L153:
+fld qword ptr (_U1)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jbe L156
+fld qword ptr (_U2)
+fcomp qword ptr (_Z2)
+fstsw ax
+sahf
+ja L154
+L156:
+lea edi,(L157)
+push edi
+push 0
+call _BadCond
+add esp,8
+lea edi,(L158)
+push edi
+call _notify
+add esp,4
+fld qword ptr (_Z1)
+fsub qword ptr (_U1)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_U1)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L159)
+push edi
+call _printf
+add esp,20
+fld qword ptr (_Z2)
+fsub qword ptr (_U2)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_U2)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L160)
+push edi
+call _printf
+add esp,20
+jmp L155
+L154:
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jae L163
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z2)
+fstsw ax
+sahf
+jb L161
+L163:
+fld qword ptr (_Radix)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L164)
+push edi
+call _printf
+add esp,12
+lea edi,(L165)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Z2)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_Z1)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L166)
+push edi
+call _printf
+add esp,20
+lea edi,(L167)
+push edi
+call _notify
+add esp,4
+L161:
+fld qword ptr (_Z2)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jne L170
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jae L168
+L170:
+fld qword ptr (_Z1)
+fdiv qword ptr (_U1)
+fstp qword ptr (_X)
+fld qword ptr (_Z2)
+fdiv qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jae L171
+fld qword ptr (_Y)
+fstp qword ptr (_X)
+L171:
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-580)[ebp]
+fld qword ptr (-580)[ebp]
+fchs
+fstp qword ptr (_Q)
+lea edi,(L173)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Radix)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-588)[ebp]
+fld qword ptr (_Q)
+fdiv qword ptr (-588)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L174)
+push edi
+call _printf
+add esp,12
+fld qword ptr (L93)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-596)[ebp]
+fld qword ptr (_Q)
+fdiv qword ptr (-596)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L175)
+push edi
+call _printf
+add esp,12
+L168:
+lea edi,(L150)
+push edi
+call _printf
+add esp,4
+L155:
+L151:
+L139:
+call _Pause
+add esp,0
+mov dword ptr (_Milestone),35
+fld qword ptr (_Two)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+ja L176
+fld qword ptr (_W)
+fld qword ptr (_Radix)
+fmul qword ptr (_Radix)
+fdivp st(1),st
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-576)[ebp]
+fld qword ptr (-576)[ebp]
+fadd qword ptr (_One)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fsub qword ptr (-576)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fstp qword ptr (-584)[ebp]
+fld qword ptr (-584)[ebp]
+fadd qword ptr (_U2)
+fstp qword ptr (_T)
+fld qword ptr (_T)
+fsub qword ptr (-584)[ebp]
+fstp qword ptr (_X)
+lea edi,(L179)
+push edi
+fld qword ptr (_U2)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L180
+mov dword ptr (-560)[ebp],1
+jmp L181
+L180:
+mov dword ptr (-560)[ebp],0
+L181:
+mov edi,dword ptr (-560)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (_U2)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L182
+lea edi,(L184)
+push edi
+call _printf
+add esp,4
+L182:
+L176:
+lea edi,(L185)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_F9)
+fmul qword ptr (_One)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fmul qword ptr (_F9)
+fstp qword ptr (_Z)
+fld qword ptr (_F9)
+fsub qword ptr (_Half)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-588)[ebp]
+fld qword ptr (_Y)
+fsub qword ptr (_Half)
+fsub qword ptr (-588)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (_Z)
+fsub qword ptr (_Half)
+fsub qword ptr (-588)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-604)[ebp]
+fld qword ptr (-604)[ebp]
+fmul qword ptr (_Radix)
+fstp qword ptr (_T)
+fld qword ptr (_Radix)
+fmul qword ptr (-604)[ebp]
+fstp qword ptr (_R)
+fld qword ptr (_T)
+fsub qword ptr (_Radix)
+fstp qword ptr (_X)
+fld qword ptr (_Radix)
+fmul qword ptr (_U2)
+fstp qword ptr (-620)[ebp]
+fld qword ptr (_X)
+fsub qword ptr (-620)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_R)
+fsub qword ptr (_Radix)
+fstp qword ptr (_T)
+fld qword ptr (_T)
+fsub qword ptr (-620)[ebp]
+fstp qword ptr (_T)
+fld qword ptr (_Radix)
+fsub qword ptr (_One)
+fstp qword ptr (-628)[ebp]
+fld qword ptr (_X)
+fmul qword ptr (-628)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_T)
+fmul qword ptr (-628)[ebp]
+fstp qword ptr (_T)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L186
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L186
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L186
+fld qword ptr (_Zero)
+fcomp qword ptr (_T)
+fstsw ax
+sahf
+jne L186
+mov dword ptr (_GMult),1
+jmp L187
+L186:
+mov dword ptr (_GMult),0
+lea edi,(L188)
+push edi
+push 0
+push 1
+call _TstCond
+add esp,12
+L187:
+fld qword ptr (_Radix)
+fmul qword ptr (_U2)
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fstp qword ptr (-648)[ebp]
+fld qword ptr (_One)
+fadd qword ptr (-648)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-656)[ebp]
+fld qword ptr (-656)[ebp]
+fadd qword ptr (-648)[ebp]
+fld qword ptr (-656)[ebp]
+fmul qword ptr (-656)[ebp]
+fsubp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-664)[ebp]
+fld qword ptr (-664)[ebp]
+fsub qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fsub qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-680)[ebp]
+fld qword ptr (-680)[ebp]
+fsub qword ptr (_U2)
+fld qword ptr (-680)[ebp]
+fmul qword ptr (-680)[ebp]
+fsubp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-688)[ebp]
+fld qword ptr (-688)[ebp]
+fsub qword ptr (_U1)
+fstp qword ptr (_Z)
+lea edi,(L190)
+push edi
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jb L191
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jb L191
+mov dword ptr (-640)[ebp],1
+jmp L192
+L191:
+mov dword ptr (-640)[ebp],0
+L192:
+mov edi,dword ptr (-640)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (_One)
+fsub qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fdiv qword ptr (_Y)
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fsub qword ptr (_X)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fdiv qword ptr (_Three)
+fstp qword ptr (_X)
+fld qword ptr (_Three)
+fdiv qword ptr (_Nine)
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fstp qword ptr (-740)[ebp]
+fld qword ptr (_X)
+fsub qword ptr (-740)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_Nine)
+fdiv qword ptr (_TwentySeven)
+fstp qword ptr (_T)
+fld qword ptr (-740)[ebp]
+fsub qword ptr (_T)
+fstp qword ptr (_Z)
+lea edi,(L194)
+push edi
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L195
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L195
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L195
+mov dword ptr (-700)[ebp],1
+jmp L196
+L195:
+mov dword ptr (-700)[ebp],0
+L196:
+mov edi,dword ptr (-700)[ebp]
+push edi
+push 2
+call _TstCond
+add esp,12
+fld qword ptr (_F9)
+fdiv qword ptr (_One)
+fstp qword ptr (_Y)
+fld qword ptr (_F9)
+fsub qword ptr (_Half)
+fstp qword ptr (_X)
+fld qword ptr (_Y)
+fsub qword ptr (_Half)
+fsub qword ptr (_X)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-780)[ebp]
+fld qword ptr (-780)[ebp]
+fdiv qword ptr (_One)
+fstp qword ptr (_T)
+fld qword ptr (_T)
+fsub qword ptr (-780)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L197
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L197
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L197
+mov dword ptr (_GDiv),1
+jmp L198
+L197:
+mov dword ptr (_GDiv),0
+lea edi,(L199)
+push edi
+push 0
+push 1
+call _TstCond
+add esp,12
+L198:
+fld qword ptr (_One)
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fdivp st(1),st
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fsub qword ptr (_Half)
+fsub qword ptr (_Half)
+fstp qword ptr (_Y)
+lea edi,(L201)
+push edi
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jbe L202
+mov dword ptr (-792)[ebp],1
+jmp L203
+L202:
+mov dword ptr (-792)[ebp],0
+L203:
+mov edi,dword ptr (-792)[ebp]
+push edi
+push 1
+call _TstCond
+add esp,12
+fld qword ptr (_One)
+fsub qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fld qword ptr (_Radix)
+fmul qword ptr (_U2)
+faddp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fstp qword ptr (-844)[ebp]
+fld qword ptr (-844)[ebp]
+fmul qword ptr (_Radix)
+fstp qword ptr (_Z)
+fld qword ptr (_Y)
+fstp qword ptr (-852)[ebp]
+fld qword ptr (-852)[ebp]
+fmul qword ptr (_Radix)
+fstp qword ptr (_T)
+fld qword ptr (_Z)
+fdiv qword ptr (_Radix)
+fstp qword ptr (_R)
+fld qword ptr (_T)
+fdiv qword ptr (_Radix)
+fstp qword ptr (_StickyBit)
+fld qword ptr (_R)
+fsub qword ptr (-844)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_StickyBit)
+fsub qword ptr (-852)[ebp]
+fstp qword ptr (_Y)
+lea edi,(L205)
+push edi
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L206
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L206
+mov dword ptr (-812)[ebp],1
+jmp L207
+L206:
+mov dword ptr (-812)[ebp],0
+L207:
+mov edi,dword ptr (-812)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (_One)
+fsub qword ptr (_U1)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fsub qword ptr (_F9)
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fsub qword ptr (_Y)
+fstp qword ptr (_Y)
+fld qword ptr (_Radix)
+fsub qword ptr (_U2)
+fstp qword ptr (_T)
+fld qword ptr (_Radix)
+fsub qword ptr (_BMinusU2)
+fstp qword ptr (_Z)
+fld qword ptr (_Radix)
+fsub qword ptr (_T)
+fstp qword ptr (_T)
+fld qword ptr (_U1)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L208
+fld qword ptr (_U1)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L208
+fld qword ptr (_U2)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L208
+fld qword ptr (_U2)
+fcomp qword ptr (_T)
+fstsw ax
+sahf
+jne L208
+mov dword ptr (_GAddSub),1
+jmp L209
+L208:
+mov dword ptr (_GAddSub),0
+lea edi,(L210)
+push edi
+push 0
+push 1
+call _TstCond
+add esp,12
+L209:
+fld qword ptr (_One)
+fcomp qword ptr (_F9)
+fstsw ax
+sahf
+je L211
+fld qword ptr (_F9)
+fsub qword ptr (_One)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+ja L211
+lea edi,(L213)
+push edi
+push 1
+call _BadCond
+add esp,8
+lea edi,(L214)
+push edi
+call _printf
+add esp,4
+lea edi,(L215)
+push edi
+call _printf
+add esp,4
+lea edi,(L216)
+push edi
+call _printf
+add esp,4
+L211:
+cmp dword ptr (_GMult),1
+jne L217
+cmp dword ptr (_GDiv),1
+jne L217
+cmp dword ptr (_GAddSub),1
+jne L217
+lea edi,(L219)
+push edi
+call _printf
+add esp,4
+L217:
+mov dword ptr (_Milestone),40
+call _Pause
+add esp,0
+lea edi,(L220)
+push edi
+call _printf
+add esp,4
+mov dword ptr (_RMult),0
+mov dword ptr (_RDiv),0
+mov dword ptr (_RAddSub),0
+fld qword ptr (_Radix)
+fdiv qword ptr (_Two)
+fstp qword ptr (_RadixD2)
+fld qword ptr (_Two)
+fstp qword ptr (_A1)
+mov dword ptr (_Done),0
+L221:
+fld qword ptr (_Radix)
+fstp qword ptr (_AInvrse)
+L224:
+fld qword ptr (_AInvrse)
+fstp qword ptr (-924)[ebp]
+fld qword ptr (-924)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (-924)[ebp]
+fdiv qword ptr (_A1)
+fstp qword ptr (_AInvrse)
+L225:
+fld qword ptr (_AInvrse)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-924)[ebp]
+fld qword ptr (_AInvrse)
+fcomp qword ptr (-924)[ebp]
+fstsw ax
+sahf
+je L224
+fld qword ptr (_One)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+je L230
+fld qword ptr (_Three)
+fcomp qword ptr (_A1)
+fstsw ax
+sahf
+jae L228
+L230:
+mov dword ptr (-928)[ebp],1
+jmp L229
+L228:
+mov dword ptr (-928)[ebp],0
+L229:
+mov edi,dword ptr (-928)[ebp]
+mov dword ptr (_Done),edi
+cmp dword ptr (_Done),0
+jne L231
+fld qword ptr (_Nine)
+fadd qword ptr (_One)
+fstp qword ptr (_A1)
+L231:
+L222:
+cmp dword ptr (_Done),0
+je L221
+fld qword ptr (_One)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L233
+fld qword ptr (_Radix)
+fstp qword ptr (_A1)
+L233:
+fld qword ptr (_One)
+fdiv qword ptr (_A1)
+fstp qword ptr (_AInvrse)
+fld qword ptr (_A1)
+fstp qword ptr (_X)
+fld qword ptr (_AInvrse)
+fstp qword ptr (_Y)
+mov dword ptr (_Done),0
+L235:
+fld qword ptr (_X)
+fmul qword ptr (_Y)
+fsub qword ptr (_Half)
+fstp qword ptr (_Z)
+lea edi,(L239)
+push edi
+fld qword ptr (_Half)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L240
+mov dword ptr (-928)[ebp],1
+jmp L241
+L240:
+mov dword ptr (-928)[ebp],0
+L241:
+mov edi,dword ptr (-928)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (_Radix)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L243
+mov dword ptr (-940)[ebp],1
+jmp L244
+L243:
+mov dword ptr (-940)[ebp],0
+L244:
+mov edi,dword ptr (-940)[ebp]
+mov dword ptr (_Done),edi
+fld qword ptr (_Radix)
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fdiv qword ptr (_X)
+fstp qword ptr (_Y)
+L236:
+cmp dword ptr (_Done),0
+je L235
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fstp qword ptr (_Y2)
+fld qword ptr (_One)
+fsub qword ptr (_U2)
+fstp qword ptr (_Y1)
+fld qword ptr (_OneAndHalf)
+fsub qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_OneAndHalf)
+fadd qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fstp qword ptr (-956)[ebp]
+fld qword ptr (_Y2)
+fstp qword ptr (-964)[ebp]
+fld qword ptr (-956)[ebp]
+fsub qword ptr (_U2)
+fmul qword ptr (-964)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (_Y)
+fstp qword ptr (-972)[ebp]
+fld qword ptr (_Y1)
+fstp qword ptr (-980)[ebp]
+fld qword ptr (-972)[ebp]
+fmul qword ptr (-980)[ebp]
+fstp qword ptr (_T)
+fld qword ptr (_Z)
+fsub qword ptr (-956)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (_T)
+fsub qword ptr (-956)[ebp]
+fstp qword ptr (_T)
+fld qword ptr (-956)[ebp]
+fmul qword ptr (-964)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (-972)[ebp]
+fadd qword ptr (_U2)
+fmul qword ptr (-980)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fsub qword ptr (_OneAndHalf)
+fstp qword ptr (_X)
+fld qword ptr (_Y)
+fsub qword ptr (_OneAndHalf)
+fstp qword ptr (_Y)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L245
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L245
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L245
+fld qword ptr (_Zero)
+fcomp qword ptr (_T)
+fstsw ax
+sahf
+jb L245
+fld qword ptr (_OneAndHalf)
+fadd qword ptr (_U2)
+fstp qword ptr (-1012)[ebp]
+fld qword ptr (-1012)[ebp]
+fmul qword ptr (_Y2)
+fstp qword ptr (_X)
+fld qword ptr (_OneAndHalf)
+fsub qword ptr (_U2)
+fstp qword ptr (-1028)[ebp]
+fld qword ptr (-1028)[ebp]
+fsub qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (-1012)[ebp]
+fadd qword ptr (_U2)
+fstp qword ptr (_Z)
+fld qword ptr (_Y1)
+fstp qword ptr (-1036)[ebp]
+fld qword ptr (-1028)[ebp]
+fmul qword ptr (-1036)[ebp]
+fstp qword ptr (_T)
+fld qword ptr (_Z)
+fstp qword ptr (-1044)[ebp]
+fld qword ptr (-1044)[ebp]
+fadd qword ptr (_U2)
+fstp qword ptr (-1052)[ebp]
+fld qword ptr (_X)
+fsub qword ptr (-1052)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_Y)
+fstp qword ptr (-1060)[ebp]
+fld qword ptr (-1060)[ebp]
+fmul qword ptr (-1036)[ebp]
+fstp qword ptr (_StickyBit)
+fld qword ptr (-1044)[ebp]
+fmul qword ptr (_Y2)
+fstp qword ptr (_S)
+fld qword ptr (_T)
+fsub qword ptr (-1060)[ebp]
+fstp qword ptr (_T)
+fld qword ptr (_U2)
+fsub qword ptr (-1060)[ebp]
+fadd qword ptr (_StickyBit)
+fstp qword ptr (_Y)
+fld qword ptr (_S)
+fld qword ptr (-1052)[ebp]
+fadd qword ptr (_U2)
+fsubp st(1),st
+fstp qword ptr (_Z)
+fld qword ptr (_Y2)
+fadd qword ptr (_U2)
+fmul qword ptr (-1036)[ebp]
+fstp qword ptr (_StickyBit)
+fld qword ptr (_Y2)
+fmul qword ptr (-1036)[ebp]
+fstp qword ptr (_Y1)
+fld qword ptr (_StickyBit)
+fsub qword ptr (_Y2)
+fstp qword ptr (_StickyBit)
+fld qword ptr (_Y1)
+fsub qword ptr (_Half)
+fstp qword ptr (_Y1)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L247
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L247
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L247
+fld qword ptr (_Zero)
+fcomp qword ptr (_T)
+fstsw ax
+sahf
+jne L247
+fld qword ptr (_Zero)
+fcomp qword ptr (_StickyBit)
+fstsw ax
+sahf
+jne L247
+fld qword ptr (_Half)
+fcomp qword ptr (_Y1)
+fstsw ax
+sahf
+jne L247
+mov dword ptr (_RMult),1
+lea edi,(L249)
+push edi
+call _printf
+add esp,4
+jmp L248
+L247:
+fld qword ptr (_X)
+fadd qword ptr (_U2)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L250
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jbe L250
+fld qword ptr (_Z)
+fadd qword ptr (_U2)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L250
+fld qword ptr (_Zero)
+fcomp qword ptr (_T)
+fstsw ax
+sahf
+jbe L250
+fld qword ptr (_StickyBit)
+fadd qword ptr (_U2)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L250
+fld qword ptr (_Half)
+fcomp qword ptr (_Y1)
+fstsw ax
+sahf
+jbe L250
+mov dword ptr (_RMult),2
+lea edi,(L252)
+push edi
+call _printf
+add esp,4
+jmp L251
+L250:
+lea edi,(L253)
+push edi
+call _printf
+add esp,4
+L251:
+L248:
+cmp dword ptr (_RMult),1
+jne L246
+cmp dword ptr (_GMult),0
+jne L246
+lea edi,(L256)
+push edi
+call _notify
+add esp,4
+jmp L246
+L245:
+lea edi,(L253)
+push edi
+call _printf
+add esp,4
+L246:
+mov dword ptr (_Milestone),45
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fstp qword ptr (_Y2)
+fld qword ptr (_One)
+fsub qword ptr (_U2)
+fstp qword ptr (_Y1)
+fld qword ptr (_OneAndHalf)
+fadd qword ptr (_U2)
+fstp qword ptr (-1020)[ebp]
+fld qword ptr (-1020)[ebp]
+fadd qword ptr (_U2)
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fstp qword ptr (-1028)[ebp]
+fld qword ptr (_Y2)
+fstp qword ptr (-1036)[ebp]
+fld qword ptr (-1028)[ebp]
+fdiv qword ptr (-1036)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_OneAndHalf)
+fsub qword ptr (_U2)
+fsub qword ptr (_U2)
+fstp qword ptr (_T)
+fld qword ptr (_T)
+fstp qword ptr (-1044)[ebp]
+fld qword ptr (_Y1)
+fstp qword ptr (-1052)[ebp]
+fld qword ptr (-1044)[ebp]
+fsub qword ptr (_U2)
+fdiv qword ptr (-1052)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (-1028)[ebp]
+fadd qword ptr (_U2)
+fdiv qword ptr (-1036)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (_X)
+fsub qword ptr (_OneAndHalf)
+fstp qword ptr (_X)
+fld qword ptr (_Y)
+fsub qword ptr (-1044)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (-1044)[ebp]
+fdiv qword ptr (-1052)[ebp]
+fstp qword ptr (_T)
+fld qword ptr (_Z)
+fsub qword ptr (-1020)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (_U2)
+fsub qword ptr (_OneAndHalf)
+fadd qword ptr (_T)
+fstp qword ptr (_T)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jb L257
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jb L257
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jb L257
+fld qword ptr (_Zero)
+fcomp qword ptr (_T)
+fstsw ax
+sahf
+jb L257
+fld qword ptr (_Y2)
+fstp qword ptr (-1076)[ebp]
+fld qword ptr (_OneAndHalf)
+fdiv qword ptr (-1076)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_OneAndHalf)
+fsub qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (_OneAndHalf)
+fadd qword ptr (_U2)
+fstp qword ptr (_Z)
+fld qword ptr (_Y)
+fstp qword ptr (-1092)[ebp]
+fld qword ptr (_X)
+fsub qword ptr (-1092)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_Y1)
+fstp qword ptr (-1100)[ebp]
+fld qword ptr (_OneAndHalf)
+fdiv qword ptr (-1100)[ebp]
+fstp qword ptr (_T)
+fld qword ptr (-1092)[ebp]
+fdiv qword ptr (-1100)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (_Z)
+fstp qword ptr (-1108)[ebp]
+fld qword ptr (_T)
+fld qword ptr (-1108)[ebp]
+fadd qword ptr (_U2)
+fsubp st(1),st
+fstp qword ptr (_T)
+fld qword ptr (_Y)
+fsub qword ptr (-1108)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (-1108)[ebp]
+fdiv qword ptr (-1076)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (-1076)[ebp]
+fadd qword ptr (_U2)
+fdiv qword ptr (-1076)[ebp]
+fstp qword ptr (_Y1)
+fld qword ptr (_Z)
+fsub qword ptr (_OneAndHalf)
+fstp qword ptr (_Z)
+fld qword ptr (_Y1)
+fsub qword ptr (-1076)[ebp]
+fstp qword ptr (_Y2)
+fld qword ptr (_F9)
+fsub qword ptr (_U1)
+fdiv qword ptr (_F9)
+fstp qword ptr (_Y1)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L259
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L259
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L259
+fld qword ptr (_Zero)
+fcomp qword ptr (_T)
+fstsw ax
+sahf
+jne L259
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y2)
+fstsw ax
+sahf
+jne L259
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y2)
+fstsw ax
+sahf
+jne L259
+fld qword ptr (_Y1)
+fsub qword ptr (_Half)
+fld qword ptr (_F9)
+fsub qword ptr (_Half)
+fcompp
+fstsw ax
+sahf
+jne L259
+mov dword ptr (_RDiv),1
+lea edi,(L261)
+push edi
+call _printf
+add esp,4
+cmp dword ptr (_GDiv),0
+jne L260
+lea edi,(L264)
+push edi
+call _notify
+add esp,4
+jmp L260
+L259:
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jbe L265
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jbe L265
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jbe L265
+fld qword ptr (_Zero)
+fcomp qword ptr (_T)
+fstsw ax
+sahf
+jbe L265
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y2)
+fstsw ax
+sahf
+jbe L265
+fld qword ptr (_Y1)
+fsub qword ptr (_Half)
+fld qword ptr (_F9)
+fsub qword ptr (_Half)
+fcompp
+fstsw ax
+sahf
+jbe L265
+mov dword ptr (_RDiv),2
+lea edi,(L267)
+push edi
+call _printf
+add esp,4
+L265:
+L260:
+L257:
+cmp dword ptr (_RDiv),0
+jne L268
+lea edi,(L270)
+push edi
+call _printf
+add esp,4
+L268:
+fld qword ptr (_One)
+fdiv qword ptr (_Radix)
+fstp qword ptr (_BInvrse)
+lea edi,(L272)
+push edi
+fld qword ptr (_BInvrse)
+fmul qword ptr (_Radix)
+fsub qword ptr (_Half)
+fld qword ptr (_Half)
+fcompp
+fstsw ax
+sahf
+jne L273
+mov dword ptr (-1064)[ebp],1
+jmp L274
+L273:
+mov dword ptr (-1064)[ebp],0
+L274:
+mov edi,dword ptr (-1064)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+mov dword ptr (_Milestone),50
+lea edi,(L276)
+push edi
+fld qword ptr (_F9)
+fadd qword ptr (_U1)
+fsub qword ptr (_Half)
+fld qword ptr (_Half)
+fcompp
+fstsw ax
+sahf
+jne L277
+fld qword ptr (_BMinusU2)
+fadd qword ptr (_U2)
+fsub qword ptr (_One)
+fld qword ptr (_Radix)
+fsub qword ptr (_One)
+fcompp
+fstsw ax
+sahf
+jne L277
+mov dword ptr (-1084)[ebp],1
+jmp L278
+L277:
+mov dword ptr (-1084)[ebp],0
+L278:
+mov edi,dword ptr (-1084)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (_One)
+fld qword ptr (_U1)
+fmul qword ptr (_U1)
+fsubp st(1),st
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fld qword ptr (_U2)
+fld qword ptr (_One)
+fsub qword ptr (_U2)
+fmulp st(1),st
+faddp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (_F9)
+fsub qword ptr (_Half)
+fstp qword ptr (_Z)
+fld qword ptr (_X)
+fsub qword ptr (_Half)
+fsub qword ptr (_Z)
+fstp qword ptr (_X)
+fld qword ptr (_Y)
+fsub qword ptr (_One)
+fstp qword ptr (_Y)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L279
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L279
+mov dword ptr (_RAddSub),2
+lea edi,(L281)
+push edi
+call _printf
+add esp,4
+L279:
+cmp dword ptr (_GAddSub),1
+jne L282
+fld qword ptr (_Half)
+fadd qword ptr (_U2)
+fmul qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_Half)
+fsub qword ptr (_U2)
+fmul qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fadd qword ptr (_X)
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fadd qword ptr (_Y)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fsub qword ptr (_X)
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fsub qword ptr (_Y)
+fstp qword ptr (_Y)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L284
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L284
+fld qword ptr (_Half)
+fadd qword ptr (_U2)
+fmul qword ptr (_U1)
+fstp qword ptr (_X)
+fld qword ptr (_Half)
+fsub qword ptr (_U2)
+fmul qword ptr (_U1)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fsub qword ptr (_X)
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fsub qword ptr (_Y)
+fstp qword ptr (_Y)
+fld qword ptr (_F9)
+fsub qword ptr (_X)
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fsub qword ptr (_Y)
+fstp qword ptr (_Y)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L286
+fld qword ptr (_Zero)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L286
+mov dword ptr (_RAddSub),1
+lea edi,(L288)
+push edi
+call _printf
+add esp,4
+cmp dword ptr (_GAddSub),0
+jne L283
+lea edi,(L291)
+push edi
+call _notify
+add esp,4
+jmp L283
+L286:
+lea edi,(L292)
+push edi
+call _printf
+add esp,4
+jmp L283
+L284:
+lea edi,(L292)
+push edi
+call _printf
+add esp,4
+jmp L283
+L282:
+lea edi,(L292)
+push edi
+call _printf
+add esp,4
+L283:
+fld qword ptr (_One)
+fstp qword ptr (_S)
+fld qword ptr (_One)
+fld qword ptr (_Half)
+fld qword ptr (_One)
+fadd qword ptr (_Half)
+fmulp st(1),st
+faddp st(1),st
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fmul qword ptr (_Half)
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fstp qword ptr (-1164)[ebp]
+fld qword ptr (_Y)
+fstp qword ptr (-1172)[ebp]
+fld qword ptr (-1164)[ebp]
+fsub qword ptr (-1172)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (-1172)[ebp]
+fsub qword ptr (-1164)[ebp]
+fstp qword ptr (_T)
+fld qword ptr (_Z)
+fadd qword ptr (_T)
+fstp qword ptr (_StickyBit)
+fld qword ptr (_Zero)
+fcomp qword ptr (_StickyBit)
+fstsw ax
+sahf
+je L293
+fld qword ptr (_Zero)
+fstp qword ptr (_S)
+lea edi,(L295)
+push edi
+push 3
+call _BadCond
+add esp,8
+L293:
+fld qword ptr (_Zero)
+fstp qword ptr (_StickyBit)
+cmp dword ptr (_GMult),1
+jne L296
+cmp dword ptr (_GDiv),1
+jne L296
+cmp dword ptr (_GAddSub),1
+jne L296
+cmp dword ptr (_RMult),1
+jne L296
+cmp dword ptr (_RDiv),1
+jne L296
+cmp dword ptr (_RAddSub),1
+jne L296
+fld qword ptr (_RadixD2)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1180)[ebp]
+fld qword ptr (_RadixD2)
+fcomp qword ptr (-1180)[ebp]
+fstsw ax
+sahf
+jne L296
+lea edi,(L298)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Half)
+fadd qword ptr (_U1)
+fmul qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_Half)
+fmul qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fadd qword ptr (_Y)
+fstp qword ptr (_Z)
+fld qword ptr (_One)
+fadd qword ptr (_X)
+fstp qword ptr (_T)
+fld qword ptr (_Z)
+fsub qword ptr (_One)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jb L299
+fld qword ptr (_T)
+fsub qword ptr (_One)
+fld qword ptr (_U2)
+fcompp
+fstsw ax
+sahf
+ja L299
+fld qword ptr (_T)
+fadd qword ptr (_Y)
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fsub qword ptr (_X)
+fstp qword ptr (_Y)
+fld qword ptr (_Z)
+fsub qword ptr (_T)
+fld qword ptr (_U2)
+fcompp
+fstsw ax
+sahf
+ja L301
+fld qword ptr (_Y)
+fsub qword ptr (_T)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L301
+fld qword ptr (_Half)
+fadd qword ptr (_U1)
+fmul qword ptr (_U1)
+fstp qword ptr (_X)
+fld qword ptr (_Half)
+fmul qword ptr (_U1)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fsub qword ptr (_Y)
+fstp qword ptr (_Z)
+fld qword ptr (_One)
+fsub qword ptr (_X)
+fstp qword ptr (_T)
+fld qword ptr (_Z)
+fsub qword ptr (_One)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L303
+fld qword ptr (_T)
+fsub qword ptr (_F9)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L303
+fld qword ptr (_Half)
+fsub qword ptr (_U1)
+fmul qword ptr (_U1)
+fstp qword ptr (_Z)
+fld qword ptr (_F9)
+fsub qword ptr (_Z)
+fstp qword ptr (_T)
+fld qword ptr (_F9)
+fsub qword ptr (_Y)
+fstp qword ptr (_Q)
+fld qword ptr (_T)
+fsub qword ptr (_F9)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L305
+fld qword ptr (_F9)
+fsub qword ptr (_U1)
+fsub qword ptr (_Q)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L305
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fmul qword ptr (_OneAndHalf)
+fstp qword ptr (_Z)
+fld qword ptr (_OneAndHalf)
+fadd qword ptr (_U2)
+fsub qword ptr (_Z)
+fadd qword ptr (_U2)
+fstp qword ptr (_T)
+fld qword ptr (_One)
+fld qword ptr (_Half)
+fdiv qword ptr (_Radix)
+faddp st(1),st
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fld qword ptr (_Radix)
+fmul qword ptr (_U2)
+faddp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fmul qword ptr (_Y)
+fstp qword ptr (_Z)
+fld qword ptr (_Zero)
+fcomp qword ptr (_T)
+fstsw ax
+sahf
+jne L307
+fld qword ptr (_X)
+fld qword ptr (_Radix)
+fmul qword ptr (_U2)
+faddp st(1),st
+fsub qword ptr (_Z)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L307
+fld qword ptr (_Two)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+je L309
+fld qword ptr (_Two)
+fadd qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fdiv qword ptr (_Two)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fsub qword ptr (_One)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L310
+fld qword ptr (_S)
+fstp qword ptr (_StickyBit)
+jmp L310
+L309:
+fld qword ptr (_S)
+fstp qword ptr (_StickyBit)
+L310:
+L307:
+L305:
+L303:
+L301:
+L299:
+L296:
+fld qword ptr (_One)
+fcomp qword ptr (_StickyBit)
+fstsw ax
+sahf
+jne L313
+lea edi,(L315)
+push edi
+call _printf
+add esp,4
+jmp L314
+L313:
+lea edi,(L316)
+push edi
+call _printf
+add esp,4
+L314:
+lea edi,(L318)
+push edi
+cmp dword ptr (_GMult),0
+je L319
+cmp dword ptr (_GDiv),0
+je L319
+cmp dword ptr (_GAddSub),0
+je L319
+cmp dword ptr (_RMult),0
+je L319
+cmp dword ptr (_RDiv),0
+je L319
+cmp dword ptr (_RAddSub),0
+je L319
+mov dword ptr (-1184)[ebp],1
+jmp L320
+L319:
+mov dword ptr (-1184)[ebp],0
+L320:
+mov edi,dword ptr (-1184)[ebp]
+push edi
+push 3
+call _TstCond
+add esp,12
+mov dword ptr (_Milestone),60
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+lea edi,(L321)
+push edi
+call _printf
+add esp,4
+mov edi,dword ptr (_NoTrials)
+push edi
+lea edi,(L322)
+push edi
+call _printf
+add esp,8
+fld qword ptr (L323)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1192)[ebp]
+fld qword ptr (-1192)[ebp]
+fstp qword ptr (_Random9)
+fld qword ptr (_Third)
+fstp qword ptr (_Random1)
+mov dword ptr (_I),1
+L324:
+call _Random
+add esp,0
+fstp qword ptr (-1200)[ebp]
+fld qword ptr (-1200)[ebp]
+fstp qword ptr (_X)
+call _Random
+add esp,0
+fstp qword ptr (-1208)[ebp]
+fld qword ptr (-1208)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fmul qword ptr (_X)
+fstp qword ptr (_Z9)
+fld qword ptr (_X)
+fmul qword ptr (_Y)
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fsub qword ptr (_Z9)
+fstp qword ptr (_Z9)
+inc dword ptr (_I)
+L325:
+mov edi,dword ptr (_NoTrials)
+cmp dword ptr (_I),edi
+jg L327
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z9)
+fstsw ax
+sahf
+je L324
+L327:
+mov edi,dword ptr (_NoTrials)
+cmp dword ptr (_I),edi
+jne L328
+fld qword ptr (_One)
+fld qword ptr (_Half)
+fdiv qword ptr (_Three)
+faddp st(1),st
+fstp qword ptr (-1208)[ebp]
+fld qword ptr (-1208)[ebp]
+fstp qword ptr (_Random1)
+fld qword ptr (_U2)
+fadd qword ptr (_U1)
+fadd qword ptr (_One)
+fstp qword ptr (-1216)[ebp]
+fld qword ptr (-1216)[ebp]
+fstp qword ptr (_Random2)
+fld qword ptr (_Random1)
+fstp qword ptr (-1224)[ebp]
+fld qword ptr (_Random2)
+fstp qword ptr (-1232)[ebp]
+fld qword ptr (-1224)[ebp]
+fmul qword ptr (-1232)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (-1232)[ebp]
+fmul qword ptr (-1224)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (-1208)[ebp]
+fmul qword ptr (-1216)[ebp]
+fstp qword ptr (-1240)[ebp]
+fld qword ptr (-1240)[ebp]
+fsub qword ptr (-1240)[ebp]
+fstp qword ptr (_Z9)
+L328:
+mov edi,dword ptr (_NoTrials)
+cmp dword ptr (_I),edi
+je L330
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z9)
+fstsw ax
+sahf
+je L330
+lea edi,(L332)
+push edi
+push 2
+call _BadCond
+add esp,8
+jmp L331
+L330:
+mov edi,dword ptr (_NoTrials)
+push edi
+lea edi,(L333)
+push edi
+call _printf
+add esp,8
+L331:
+mov dword ptr (_Milestone),70
+lea edi,(L334)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Zero)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1212)[ebp]
+fld qword ptr (-1212)[ebp]
+fcomp qword ptr (_Zero)
+fstsw ax
+sahf
+jne L337
+fld qword ptr (_Zero)
+fchs
+fstp qword ptr (-1220)[ebp]
+fld qword ptr (-1220)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1228)[ebp]
+fld qword ptr (-1228)[ebp]
+fcomp qword ptr (-1220)[ebp]
+fstsw ax
+sahf
+jne L337
+fld qword ptr (_One)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1244)[ebp]
+fld qword ptr (-1244)[ebp]
+fcomp qword ptr (_One)
+fstsw ax
+sahf
+jne L337
+mov dword ptr (-1196)[ebp],1
+jmp L338
+L337:
+mov dword ptr (-1196)[ebp],0
+L338:
+lea edi,(L336)
+push edi
+mov edi,dword ptr (-1196)[ebp]
+push edi
+push 0
+call _TstCond
+add esp,12
+fld qword ptr (_Zero)
+fstp qword ptr (_MinSqEr)
+fld qword ptr (_Zero)
+fstp qword ptr (_MaxSqEr)
+fld qword ptr (_Zero)
+fstp qword ptr (_J)
+fld qword ptr (_Radix)
+fstp qword ptr (_X)
+fld qword ptr (_U2)
+fstp qword ptr (_OneUlp)
+push 1
+call _SqXMinX
+add esp,4
+fld qword ptr (_BInvrse)
+fstp qword ptr (_X)
+fld qword ptr (_BInvrse)
+fmul qword ptr (_U1)
+fstp qword ptr (_OneUlp)
+push 1
+call _SqXMinX
+add esp,4
+fld qword ptr (_U1)
+fstp qword ptr (_X)
+fld qword ptr (_U1)
+fmul qword ptr (_U1)
+fstp qword ptr (_OneUlp)
+push 1
+call _SqXMinX
+add esp,4
+fld qword ptr (_Zero)
+fcomp qword ptr (_J)
+fstsw ax
+sahf
+je L339
+call _Pause
+add esp,0
+L339:
+mov edi,dword ptr (_NoTrials)
+push edi
+lea edi,(L341)
+push edi
+call _printf
+add esp,8
+fld qword ptr (_Zero)
+fstp qword ptr (_J)
+fld qword ptr (_Two)
+fstp qword ptr (_X)
+fld qword ptr (_Radix)
+fstp qword ptr (_Y)
+fld qword ptr (_One)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+je L342
+L344:
+fld qword ptr (_Y)
+fstp qword ptr (-1284)[ebp]
+fld qword ptr (-1284)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_Radix)
+fmul qword ptr (-1284)[ebp]
+fstp qword ptr (_Y)
+L345:
+fld qword ptr (_Y)
+fsub qword ptr (_X)
+fild dword ptr (_NoTrials)
+fcompp
+fstsw ax
+sahf
+ja L344
+L342:
+fld qword ptr (_X)
+fmul qword ptr (_U2)
+fstp qword ptr (_OneUlp)
+mov dword ptr (_I),1
+jmp L348
+L347:
+fld qword ptr (_X)
+fadd qword ptr (_One)
+fstp qword ptr (_X)
+push 2
+call _SqXMinX
+add esp,4
+fld qword ptr (_Zero)
+fcomp qword ptr (_J)
+fstsw ax
+sahf
+jae L350
+jmp L349
+L350:
+inc dword ptr (_I)
+L348:
+mov edi,dword ptr (_NoTrials)
+cmp dword ptr (_I),edi
+jle L347
+L349:
+lea edi,(L352)
+push edi
+call _printf
+add esp,4
+mov dword ptr (_I),-1
+fld qword ptr (_BMinusU2)
+fstp qword ptr (_X)
+fld qword ptr (_Radix)
+fstp qword ptr (_Y)
+fld qword ptr (_Radix)
+fld qword ptr (_Radix)
+fmul qword ptr (_U2)
+faddp st(1),st
+fstp qword ptr (_Z)
+mov dword ptr (_NotMonot),0
+mov dword ptr (_Monot),0
+jmp L354
+L353:
+inc dword ptr (_I)
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1292)[ebp]
+fld qword ptr (-1292)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1300)[ebp]
+fld qword ptr (-1300)[ebp]
+fstp qword ptr (_Q)
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1308)[ebp]
+fld qword ptr (-1308)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (_Q)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jb L358
+fld qword ptr (_Z)
+fcomp qword ptr (_Q)
+fstsw ax
+sahf
+jae L356
+L358:
+mov dword ptr (_NotMonot),1
+jmp L357
+L356:
+fld qword ptr (_Q)
+fadd qword ptr (_Half)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1324)[ebp]
+fld qword ptr (-1324)[ebp]
+fstp qword ptr (_Q)
+cmp dword ptr (_I),0
+jg L361
+fld qword ptr (_Q)
+fmul qword ptr (_Q)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+jne L359
+L361:
+mov dword ptr (_Monot),1
+jmp L360
+L359:
+cmp dword ptr (_I),0
+jle L362
+cmp dword ptr (_I),1
+jle L364
+mov dword ptr (_Monot),1
+jmp L363
+L364:
+fld qword ptr (_Y)
+fmul qword ptr (_BInvrse)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fstp qword ptr (-1340)[ebp]
+fld qword ptr (-1340)[ebp]
+fsub qword ptr (_U1)
+fstp qword ptr (_X)
+fld qword ptr (-1340)[ebp]
+fadd qword ptr (_U1)
+fstp qword ptr (_Z)
+jmp L363
+L362:
+fld qword ptr (_Q)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fstp qword ptr (-1340)[ebp]
+fld qword ptr (-1340)[ebp]
+fsub qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (-1340)[ebp]
+fadd qword ptr (_U2)
+fstp qword ptr (_Z)
+L363:
+L360:
+L357:
+L354:
+cmp dword ptr (_NotMonot),0
+jne L366
+cmp dword ptr (_Monot),0
+je L353
+L366:
+cmp dword ptr (_Monot),0
+je L367
+lea edi,(L369)
+push edi
+call _printf
+add esp,4
+jmp L368
+L367:
+lea edi,(L157)
+push edi
+push 2
+call _BadCond
+add esp,8
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L370)
+push edi
+call _printf
+add esp,12
+L368:
+mov dword ptr (_Milestone),80
+fld qword ptr (_MinSqEr)
+fadd qword ptr (_Half)
+fstp qword ptr (_MinSqEr)
+fld qword ptr (_MaxSqEr)
+fsub qword ptr (_Half)
+fstp qword ptr (_MaxSqEr)
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1300)[ebp]
+fld qword ptr (-1300)[ebp]
+fsub qword ptr (_One)
+fdiv qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fsub qword ptr (_One)
+fld qword ptr (_U2)
+fdiv qword ptr (_Eight)
+faddp st(1),st
+fstp qword ptr (_SqEr)
+fld qword ptr (_MaxSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jae L371
+fld qword ptr (_SqEr)
+fstp qword ptr (_MaxSqEr)
+L371:
+fld qword ptr (_Y)
+fld qword ptr (_U2)
+fdiv qword ptr (_Eight)
+faddp st(1),st
+fstp qword ptr (_SqEr)
+fld qword ptr (_MinSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jbe L373
+fld qword ptr (_SqEr)
+fstp qword ptr (_MinSqEr)
+L373:
+fld qword ptr (_F9)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1324)[ebp]
+fld qword ptr (-1324)[ebp]
+fsub qword ptr (_U2)
+fld qword ptr (_One)
+fsub qword ptr (_U2)
+fsubp st(1),st
+fdiv qword ptr (_U1)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fld qword ptr (_U1)
+fdiv qword ptr (_Eight)
+faddp st(1),st
+fstp qword ptr (_SqEr)
+fld qword ptr (_MaxSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jae L375
+fld qword ptr (_SqEr)
+fstp qword ptr (_MaxSqEr)
+L375:
+fld qword ptr (_Y)
+fadd qword ptr (_One)
+fld qword ptr (_U1)
+fdiv qword ptr (_Eight)
+faddp st(1),st
+fstp qword ptr (_SqEr)
+fld qword ptr (_MinSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jbe L377
+fld qword ptr (_SqEr)
+fstp qword ptr (_MinSqEr)
+L377:
+fld qword ptr (_U2)
+fstp qword ptr (_OneUlp)
+fld qword ptr (_OneUlp)
+fstp qword ptr (_X)
+mov dword ptr (_Indx),1
+L379:
+fld qword ptr (_X)
+fadd qword ptr (_U1)
+fadd qword ptr (_X)
+fadd qword ptr (_F9)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1356)[ebp]
+fld qword ptr (-1356)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fsub qword ptr (_U2)
+fld qword ptr (_One)
+fsub qword ptr (_U2)
+fadd qword ptr (_X)
+fsubp st(1),st
+fdiv qword ptr (_OneUlp)
+fstp qword ptr (_Y)
+fld qword ptr (_U1)
+fsub qword ptr (_X)
+fadd qword ptr (_F9)
+fmul qword ptr (_Half)
+fmul qword ptr (_X)
+fmul qword ptr (_X)
+fdiv qword ptr (_OneUlp)
+fstp qword ptr (_Z)
+fld qword ptr (_Y)
+fadd qword ptr (_Half)
+fadd qword ptr (_Z)
+fstp qword ptr (_SqEr)
+fld qword ptr (_MinSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jbe L383
+fld qword ptr (_SqEr)
+fstp qword ptr (_MinSqEr)
+L383:
+fld qword ptr (_Y)
+fsub qword ptr (_Half)
+fadd qword ptr (_Z)
+fstp qword ptr (_SqEr)
+fld qword ptr (_MaxSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jae L385
+fld qword ptr (_SqEr)
+fstp qword ptr (_MaxSqEr)
+L385:
+mov edi,dword ptr (_Indx)
+cmp edi,1
+je L389
+cmp edi,3
+jne L387
+L389:
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+call _Sign
+add esp,8
+fstp qword ptr (-1396)[ebp]
+fld qword ptr (_OneUlp)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1404)[ebp]
+fld qword ptr (_Eight)
+fld qword ptr (_Nine)
+fmul qword ptr (-1404)[ebp]
+fdivp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1412)[ebp]
+fld qword ptr (_OneUlp)
+fmul qword ptr (-1396)[ebp]
+fmul qword ptr (-1412)[ebp]
+fstp qword ptr (_X)
+jmp L388
+L387:
+fld qword ptr (_U1)
+fstp qword ptr (_OneUlp)
+fld qword ptr (_OneUlp)
+fchs
+fstp qword ptr (_X)
+L388:
+L380:
+inc dword ptr (_Indx)
+cmp dword ptr (_Indx),3
+jle L379
+mov dword ptr (_Milestone),85
+mov dword ptr (_SqRWrng),0
+mov dword ptr (_Anomaly),0
+mov dword ptr (_RSqrt),0
+fld qword ptr (_One)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+je L390
+lea edi,(L392)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Precision)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1356)[ebp]
+fld qword ptr (_One)
+fadd qword ptr (_Precision)
+fsub qword ptr (-1356)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_Radix)
+sub esp,8
+fstp qword ptr [esp]
+call _pow
+add esp,16
+fstp qword ptr (-1364)[ebp]
+fld qword ptr (_Half)
+fadd qword ptr (-1364)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1372)[ebp]
+fld qword ptr (-1372)[ebp]
+fstp qword ptr (_D)
+fld qword ptr (_D)
+fdiv qword ptr (_Radix)
+fstp qword ptr (_X)
+fld qword ptr (_D)
+fdiv qword ptr (_A1)
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1396)[ebp]
+fld qword ptr (-1396)[ebp]
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L395
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1412)[ebp]
+fld qword ptr (-1412)[ebp]
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+je L393
+L395:
+mov dword ptr (_Anomaly),1
+jmp L394
+L393:
+fld qword ptr (_Zero)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (_Z2)
+fld qword ptr (_One)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fstp qword ptr (_Y2)
+fld qword ptr (_Radix)
+fsub qword ptr (_One)
+fstp qword ptr (_Z1)
+fld qword ptr (_Four)
+fmul qword ptr (_D)
+fstp qword ptr (_FourD)
+L396:
+fld qword ptr (_Z2)
+fcomp qword ptr (_Y2)
+fstsw ax
+sahf
+jae L399
+fld qword ptr (_Radix)
+fstp qword ptr (_Q)
+fld qword ptr (_Y)
+fstp qword ptr (_Y1)
+L401:
+fld qword ptr (_Half)
+fld qword ptr (_Q)
+fdiv qword ptr (_Y1)
+fsubp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1436)[ebp]
+fld qword ptr (_Q)
+fld qword ptr (-1436)[ebp]
+fmul qword ptr (_Y1)
+faddp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-1444)[ebp]
+fld qword ptr (-1444)[ebp]
+fstp qword ptr (_X1)
+fld qword ptr (_Y1)
+fstp qword ptr (_Q)
+fld qword ptr (_X1)
+fstp qword ptr (_Y1)
+L402:
+fld qword ptr (_Zero)
+fcomp qword ptr (_X1)
+fstsw ax
+sahf
+jb L401
+fld qword ptr (_One)
+fcomp qword ptr (_Q)
+fstsw ax
+sahf
+jb L404
+fld qword ptr (_Y2)
+fstp qword ptr (_Z2)
+fld qword ptr (_Y)
+fstp qword ptr (_Z)
+L404:
+L399:
+fld qword ptr (_Y)
+fadd qword ptr (_Two)
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fadd qword ptr (_Eight)
+fstp qword ptr (_X)
+fld qword ptr (_Y2)
+fadd qword ptr (_X)
+fstp qword ptr (_Y2)
+fld qword ptr (_FourD)
+fcomp qword ptr (_Y2)
+fstsw ax
+sahf
+ja L406
+fld qword ptr (_Y2)
+fsub qword ptr (_FourD)
+fstp qword ptr (_Y2)
+L406:
+L397:
+fld qword ptr (_D)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+ja L396
+fld qword ptr (_FourD)
+fsub qword ptr (_Z2)
+fstp qword ptr (_X8)
+fld qword ptr (_X8)
+fstp qword ptr (-1436)[ebp]
+fld qword ptr (-1436)[ebp]
+fld qword ptr (_Z)
+fmul qword ptr (_Z)
+faddp st(1),st
+fdiv qword ptr (_FourD)
+fstp qword ptr (_Q)
+fld qword ptr (-1436)[ebp]
+fdiv qword ptr (_Eight)
+fstp qword ptr (_X8)
+fld qword ptr (_Q)
+fstp qword ptr (-1452)[ebp]
+fld qword ptr (-1452)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1460)[ebp]
+fld qword ptr (-1460)[ebp]
+fcomp qword ptr (-1452)[ebp]
+fstsw ax
+sahf
+je L408
+mov dword ptr (_Anomaly),1
+jmp L409
+L408:
+mov dword ptr (_Break),0
+L410:
+fld qword ptr (_Z1)
+fmul qword ptr (_Z)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-1468)[ebp]
+fld qword ptr (-1468)[ebp]
+fdiv qword ptr (_Radix)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1476)[ebp]
+fld qword ptr (-1468)[ebp]
+fld qword ptr (-1476)[ebp]
+fmul qword ptr (_Radix)
+fsubp st(1),st
+fstp qword ptr (_X)
+fld qword ptr (_One)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jne L413
+mov dword ptr (_Break),1
+jmp L414
+L413:
+fld qword ptr (_Z1)
+fsub qword ptr (_One)
+fstp qword ptr (_Z1)
+L414:
+L411:
+cmp dword ptr (_Break),0
+jne L415
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jb L410
+L415:
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jb L416
+cmp dword ptr (_Break),0
+jne L416
+mov dword ptr (_Anomaly),1
+jmp L417
+L416:
+fld qword ptr (_RadixD2)
+fcomp qword ptr (_Z1)
+fstsw ax
+sahf
+jae L418
+fld qword ptr (_Z1)
+fsub qword ptr (_Radix)
+fstp qword ptr (_Z1)
+L418:
+L420:
+call _NewD
+add esp,0
+L421:
+fld qword ptr (_U2)
+fmul qword ptr (_D)
+fld qword ptr (_F9)
+fcompp
+fstsw ax
+sahf
+ja L420
+fld qword ptr (_D)
+fmul qword ptr (_Radix)
+fsub qword ptr (_D)
+fld qword ptr (_W)
+fsub qword ptr (_D)
+fcompp
+fstsw ax
+sahf
+je L423
+mov dword ptr (_Anomaly),1
+jmp L424
+L423:
+fld qword ptr (_D)
+fstp qword ptr (_Z2)
+mov dword ptr (_I),0
+fld qword ptr (_D)
+fld qword ptr (_One)
+fadd qword ptr (_Z)
+fmul qword ptr (_Half)
+faddp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (_D)
+fadd qword ptr (_Z)
+fadd qword ptr (_Q)
+fstp qword ptr (_X)
+call _SR3750
+add esp,0
+fld qword ptr (_D)
+fld qword ptr (_One)
+fsub qword ptr (_Z)
+fmul qword ptr (_Half)
+faddp st(1),st
+fadd qword ptr (_D)
+fstp qword ptr (_Y)
+fld qword ptr (_D)
+fsub qword ptr (_Z)
+fadd qword ptr (_D)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-1508)[ebp]
+fld qword ptr (-1508)[ebp]
+fadd qword ptr (_Q)
+fadd qword ptr (-1508)[ebp]
+fstp qword ptr (_X)
+call _SR3750
+add esp,0
+call _NewD
+add esp,0
+fld qword ptr (_D)
+fsub qword ptr (_Z2)
+fld qword ptr (_W)
+fsub qword ptr (_Z2)
+fcompp
+fstsw ax
+sahf
+je L425
+mov dword ptr (_Anomaly),1
+jmp L426
+L425:
+fld qword ptr (_D)
+fsub qword ptr (_Z2)
+fstp qword ptr (-1532)[ebp]
+fld qword ptr (-1532)[ebp]
+fld qword ptr (_Z2)
+fld qword ptr (_One)
+fsub qword ptr (_Z)
+fmul qword ptr (_Half)
+faddp st(1),st
+faddp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (-1532)[ebp]
+fld qword ptr (_Z2)
+fsub qword ptr (_Z)
+fadd qword ptr (_Q)
+faddp st(1),st
+fstp qword ptr (_X)
+call _SR3750
+add esp,0
+fld qword ptr (_One)
+fadd qword ptr (_Z)
+fmul qword ptr (_Half)
+fstp qword ptr (_Y)
+fld qword ptr (_Q)
+fstp qword ptr (_X)
+call _SR3750
+add esp,0
+cmp dword ptr (_I),0
+jne L427
+mov dword ptr (_Anomaly),1
+L427:
+L426:
+L424:
+L417:
+L409:
+L394:
+cmp dword ptr (_I),0
+je L431
+cmp dword ptr (_Anomaly),0
+je L429
+L431:
+lea edi,(L432)
+push edi
+push 0
+call _BadCond
+add esp,8
+fld qword ptr (_W)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L433)
+push edi
+call _printf
+add esp,12
+lea edi,(L434)
+push edi
+call _printf
+add esp,4
+mov dword ptr (_SqRWrng),1
+L429:
+L390:
+cmp dword ptr (_Anomaly),0
+jne L435
+fld qword ptr (_Zero)
+fcomp qword ptr (_MinSqEr)
+fstsw ax
+sahf
+ja L437
+fld qword ptr (_Zero)
+fcomp qword ptr (_MaxSqEr)
+fstsw ax
+sahf
+jb L437
+mov dword ptr (_RSqrt),1
+lea edi,(L439)
+push edi
+call _printf
+add esp,4
+jmp L438
+L437:
+fld qword ptr (_MaxSqEr)
+fadd qword ptr (_U2)
+fld qword ptr (_U2)
+fsub qword ptr (_Half)
+fcompp
+fstsw ax
+sahf
+jb L443
+fld qword ptr (_Half)
+fcomp qword ptr (_MinSqEr)
+fstsw ax
+sahf
+jb L443
+fld qword ptr (_MinSqEr)
+fadd qword ptr (_Radix)
+fld qword ptr (_Half)
+fcompp
+fstsw ax
+sahf
+jbe L440
+L443:
+mov dword ptr (_SqRWrng),1
+jmp L441
+L440:
+mov dword ptr (_RSqrt),2
+lea edi,(L444)
+push edi
+call _printf
+add esp,4
+L441:
+L438:
+L435:
+cmp dword ptr (_SqRWrng),0
+je L445
+lea edi,(L447)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_MinSqEr)
+fsub qword ptr (_Half)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L448)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Half)
+fadd qword ptr (_MaxSqEr)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L449)
+push edi
+call _printf
+add esp,12
+lea edi,(L451)
+push edi
+fld qword ptr (_MaxSqEr)
+fsub qword ptr (_MinSqEr)
+fld qword ptr (_Radix)
+fmul qword ptr (_Radix)
+fcompp
+fstsw ax
+sahf
+jbe L452
+mov dword ptr (-1344)[ebp],1
+jmp L453
+L452:
+mov dword ptr (-1344)[ebp],0
+L453:
+mov edi,dword ptr (-1344)[ebp]
+push edi
+push 1
+call _TstCond
+add esp,12
+L445:
+mov dword ptr (_Milestone),90
+call _Pause
+add esp,0
+lea edi,(L454)
+push edi
+call _printf
+add esp,4
+mov dword ptr (_N),0
+mov dword ptr (_I),0
+fld qword ptr (_Zero)
+fchs
+fstp qword ptr (_Z)
+mov dword ptr (_M),3
+mov dword ptr (_Break),0
+L455:
+fld qword ptr (_One)
+fstp qword ptr (_X)
+call _SR3980
+add esp,0
+cmp dword ptr (_I),10
+jg L458
+mov dword ptr (_I),1023
+call _SR3980
+add esp,0
+L458:
+fld qword ptr (_MinusOne)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L460
+mov dword ptr (_Break),1
+jmp L461
+L460:
+fld qword ptr (_MinusOne)
+fstp qword ptr (_Z)
+call _PrintIfNPositive
+add esp,0
+mov dword ptr (_N),0
+mov dword ptr (_I),-4
+L461:
+L456:
+cmp dword ptr (_Break),0
+je L455
+call _PrintIfNPositive
+add esp,0
+mov edi,dword ptr (_N)
+mov dword ptr (_N1),edi
+mov dword ptr (_N),0
+fld qword ptr (_A1)
+fstp qword ptr (_Z)
+fld qword ptr (_W)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-1348)[ebp]
+fld qword ptr (_A1)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-1356)[ebp]
+fld qword ptr (_Two)
+fmul qword ptr (-1348)[ebp]
+fdiv qword ptr (-1356)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1364)[ebp]
+fld qword ptr (-1364)[ebp]
+call __ftol
+mov dword ptr (_M),eax
+mov dword ptr (_Break),0
+L462:
+fld qword ptr (_Z)
+fstp qword ptr (_X)
+mov dword ptr (_I),1
+call _SR3980
+add esp,0
+fld qword ptr (_AInvrse)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L465
+mov dword ptr (_Break),1
+jmp L466
+L465:
+fld qword ptr (_AInvrse)
+fstp qword ptr (_Z)
+L466:
+L463:
+cmp dword ptr (_Break),0
+je L462
+mov dword ptr (_Milestone),100
+mov edi,dword ptr (_NoTrials)
+mov dword ptr (_M),edi
+fld qword ptr (_Three)
+fstp qword ptr (_Z)
+L467:
+fld qword ptr (_Z)
+fstp qword ptr (_X)
+mov dword ptr (_I),1
+call _SR3980
+add esp,0
+L470:
+fld qword ptr (_Z)
+fadd qword ptr (_Two)
+fstp qword ptr (_Z)
+L471:
+fld qword ptr (_Z)
+fdiv qword ptr (_Three)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1380)[ebp]
+fld qword ptr (_Three)
+fmul qword ptr (-1380)[ebp]
+fld qword ptr (_Z)
+fcompp
+fstsw ax
+sahf
+je L470
+L468:
+fld qword ptr (_Eight)
+fmul qword ptr (_Three)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+ja L467
+cmp dword ptr (_N),0
+jle L473
+lea edi,(L475)
+push edi
+call _printf
+add esp,4
+lea edi,(L476)
+push edi
+call _printf
+add esp,4
+L473:
+call _PrintIfNPositive
+add esp,0
+mov edi,dword ptr (_N1)
+add dword ptr (_N),edi
+cmp dword ptr (_N),0
+jne L477
+lea edi,(L479)
+push edi
+call _printf
+add esp,4
+L477:
+cmp dword ptr (_N),0
+jle L480
+call _Pause
+add esp,0
+jmp L481
+L480:
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+L481:
+mov dword ptr (_Milestone),110
+lea edi,(L482)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_U1)
+fstp qword ptr (_D)
+fld qword ptr (_Precision)
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1380)[ebp]
+fld qword ptr (-1380)[ebp]
+fcomp qword ptr (_Precision)
+fstsw ax
+sahf
+je L483
+fld qword ptr (_BInvrse)
+fstp qword ptr (_D)
+fld qword ptr (_Precision)
+fstp qword ptr (_X)
+L485:
+fld qword ptr (_D)
+fmul qword ptr (_BInvrse)
+fstp qword ptr (_D)
+fld qword ptr (_X)
+fsub qword ptr (_One)
+fstp qword ptr (_X)
+L486:
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jb L485
+L483:
+fld qword ptr (_One)
+fstp qword ptr (_Y)
+fld qword ptr (_D)
+fstp qword ptr (_Z)
+L488:
+fld qword ptr (_Y)
+fstp qword ptr (_C)
+fld qword ptr (_Z)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fstp qword ptr (-1388)[ebp]
+fld qword ptr (-1388)[ebp]
+fmul qword ptr (-1388)[ebp]
+fstp qword ptr (_Z)
+L489:
+fld qword ptr (_Z)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jae L491
+fld qword ptr (_Z)
+fadd qword ptr (_Z)
+fld qword ptr (_Z)
+fcompp
+fstsw ax
+sahf
+jb L488
+L491:
+fld qword ptr (_C)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fmul qword ptr (_D)
+fstp qword ptr (_Z)
+L492:
+fld qword ptr (_Y)
+fstp qword ptr (_C)
+fld qword ptr (_Z)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fmul qword ptr (_D)
+fstp qword ptr (_Z)
+L493:
+fld qword ptr (_Z)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jae L495
+fld qword ptr (_Z)
+fadd qword ptr (_Z)
+fld qword ptr (_Z)
+fcompp
+fstsw ax
+sahf
+jb L492
+L495:
+fld qword ptr (_Two)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+jbe L496
+fld qword ptr (_Two)
+fstp qword ptr (_HInvrse)
+jmp L497
+L496:
+fld qword ptr (_Radix)
+fstp qword ptr (_HInvrse)
+L497:
+fld qword ptr (_One)
+fdiv qword ptr (_HInvrse)
+fstp qword ptr (_H)
+fld qword ptr (_One)
+fdiv qword ptr (_C)
+fstp qword ptr (_CInvrse)
+fld qword ptr (_C)
+fstp qword ptr (_E0)
+fld qword ptr (_E0)
+fmul qword ptr (_H)
+fstp qword ptr (_Z)
+L498:
+fld qword ptr (_E0)
+fstp qword ptr (_Y)
+fld qword ptr (_Z)
+fstp qword ptr (_E0)
+fld qword ptr (_E0)
+fmul qword ptr (_H)
+fstp qword ptr (_Z)
+L499:
+fld qword ptr (_Z)
+fcomp qword ptr (_E0)
+fstsw ax
+sahf
+jae L501
+fld qword ptr (_Z)
+fadd qword ptr (_Z)
+fld qword ptr (_Z)
+fcompp
+fstsw ax
+sahf
+jb L498
+L501:
+fld qword ptr (_E0)
+fstp qword ptr (_UfThold)
+fld qword ptr (_Zero)
+fstp qword ptr (_E1)
+fld qword ptr (_Zero)
+fstp qword ptr (_Q)
+fld qword ptr (_U2)
+fstp qword ptr (_E9)
+fld qword ptr (_One)
+fadd qword ptr (_E9)
+fstp qword ptr (_S)
+fld qword ptr (_C)
+fmul qword ptr (_S)
+fstp qword ptr (_D)
+fld qword ptr (_C)
+fcomp qword ptr (_D)
+fstsw ax
+sahf
+jb L502
+fld qword ptr (_Radix)
+fmul qword ptr (_U2)
+fstp qword ptr (_E9)
+fld qword ptr (_One)
+fadd qword ptr (_E9)
+fstp qword ptr (_S)
+fld qword ptr (_C)
+fmul qword ptr (_S)
+fstp qword ptr (_D)
+fld qword ptr (_C)
+fcomp qword ptr (_D)
+fstsw ax
+sahf
+jb L503
+lea edi,(L506)
+push edi
+push 0
+call _BadCond
+add esp,8
+fld qword ptr (_E0)
+fstp qword ptr (_Underflow)
+fld qword ptr (_Zero)
+fstp qword ptr (_Y1)
+fld qword ptr (_Z)
+fstp qword ptr (_PseudoZero)
+call _Pause
+add esp,0
+jmp L503
+L502:
+fld qword ptr (_D)
+fstp qword ptr (_Underflow)
+fld qword ptr (_Underflow)
+fmul qword ptr (_H)
+fstp qword ptr (_PseudoZero)
+fld qword ptr (_Zero)
+fstp qword ptr (_UfThold)
+L507:
+fld qword ptr (_Underflow)
+fstp qword ptr (_Y1)
+fld qword ptr (_PseudoZero)
+fstp qword ptr (_Underflow)
+fld qword ptr (_E1)
+fadd qword ptr (_E1)
+fld qword ptr (_E1)
+fcompp
+fstsw ax
+sahf
+jb L510
+fld qword ptr (_Underflow)
+fmul qword ptr (_HInvrse)
+fstp qword ptr (_Y2)
+fld qword ptr (_Y1)
+fsub qword ptr (_Y2)
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-1452)[ebp]
+fld qword ptr (-1452)[ebp]
+fstp qword ptr (_E1)
+fld qword ptr (_Y1)
+fstp qword ptr (_Q)
+fld qword ptr (_Zero)
+fcomp qword ptr (_UfThold)
+fstsw ax
+sahf
+jne L512
+fld qword ptr (_Y2)
+fcomp qword ptr (_Y1)
+fstsw ax
+sahf
+je L512
+fld qword ptr (_Y1)
+fstp qword ptr (_UfThold)
+L512:
+L510:
+fld qword ptr (_PseudoZero)
+fmul qword ptr (_H)
+fstp qword ptr (_PseudoZero)
+L508:
+fld qword ptr (_PseudoZero)
+fcomp qword ptr (_Underflow)
+fstsw ax
+sahf
+jae L514
+fld qword ptr (_PseudoZero)
+fadd qword ptr (_PseudoZero)
+fld qword ptr (_PseudoZero)
+fcompp
+fstsw ax
+sahf
+jb L507
+L514:
+L503:
+fld qword ptr (_Zero)
+fcomp qword ptr (_PseudoZero)
+fstsw ax
+sahf
+je L515
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_PseudoZero)
+fstp qword ptr (_Z)
+fld qword ptr (_Zero)
+fcomp qword ptr (_PseudoZero)
+fstsw ax
+sahf
+jb L517
+lea edi,(L519)
+push edi
+push 0
+call _BadCond
+add esp,8
+lea edi,(L520)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_PseudoZero)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L521)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_PseudoZero)
+fchs
+fstp qword ptr (_X)
+fld qword ptr (_Zero)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jb L518
+lea edi,(L524)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L525)
+push edi
+call _printf
+add esp,12
+jmp L518
+L517:
+lea edi,(L526)
+push edi
+push 3
+call _BadCond
+add esp,8
+fld qword ptr (_PseudoZero)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L527)
+push edi
+call _printf
+add esp,12
+L518:
+call _TstPtUf
+add esp,0
+L515:
+mov dword ptr (_Milestone),120
+fld qword ptr (_CInvrse)
+fmul qword ptr (_Y)
+fld qword ptr (_CInvrse)
+fmul qword ptr (_Y1)
+fcompp
+fstsw ax
+sahf
+jae L528
+fld qword ptr (_H)
+fmul qword ptr (_S)
+fstp qword ptr (_S)
+fld qword ptr (_Underflow)
+fstp qword ptr (_E0)
+L528:
+fld qword ptr (_Zero)
+fcomp qword ptr (_E1)
+fstsw ax
+sahf
+je L530
+fld qword ptr (_E0)
+fcomp qword ptr (_E1)
+fstsw ax
+sahf
+je L530
+lea edi,(L157)
+push edi
+push 2
+call _BadCond
+add esp,8
+fld qword ptr (_E0)
+fcomp qword ptr (_E1)
+fstsw ax
+sahf
+jbe L532
+lea edi,(L534)
+push edi
+call _printf
+add esp,4
+lea edi,(L535)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Zero)
+fcomp qword ptr (_PseudoZero)
+fstsw ax
+sahf
+jne L533
+fld qword ptr (_E1)
+fstp qword ptr (_E0)
+jmp L533
+L532:
+lea edi,(L538)
+push edi
+call _printf
+add esp,4
+lea edi,(L539)
+push edi
+call _printf
+add esp,4
+L533:
+L530:
+fld qword ptr (_E0)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L540)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_E0)
+fstp qword ptr (_Z)
+call _TstPtUf
+add esp,0
+fld qword ptr (_E0)
+fstp qword ptr (_Underflow)
+cmp dword ptr (_N),1
+jne L541
+fld qword ptr (_Y)
+fstp qword ptr (_Underflow)
+L541:
+mov dword ptr (_I),4
+fld qword ptr (_Zero)
+fcomp qword ptr (_E1)
+fstsw ax
+sahf
+jne L543
+mov dword ptr (_I),3
+L543:
+fld qword ptr (_Zero)
+fcomp qword ptr (_UfThold)
+fstsw ax
+sahf
+jne L545
+sub dword ptr (_I),2
+L545:
+mov dword ptr (_UfNGrad),1
+mov edi,dword ptr (_I)
+cmp edi,1
+jl L547
+cmp edi,4
+jg L547
+jmp dword ptr (L570-4)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L570 label byte
+dd L549
+dd L556
+dd L561
+dd L562
+_TEXT ends
+_TEXT segment
+L549:
+fld qword ptr (_Underflow)
+fstp qword ptr (_UfThold)
+fld qword ptr (_CInvrse)
+fmul qword ptr (_Q)
+fld qword ptr (_CInvrse)
+fmul qword ptr (_Y)
+fmul qword ptr (_S)
+fcompp
+fstsw ax
+sahf
+je L550
+fld qword ptr (_Y)
+fstp qword ptr (_UfThold)
+lea edi,(L552)
+push edi
+push 0
+call _BadCond
+add esp,8
+fld qword ptr (_UfThold)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L553)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_C)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L554)
+push edi
+call _printf
+add esp,12
+lea edi,(L555)
+push edi
+call _printf
+add esp,4
+L550:
+call _Pause
+add esp,0
+jmp L548
+L556:
+lea edi,(L557)
+push edi
+push 0
+call _BadCond
+add esp,8
+lea edi,(L558)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Y2)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_Q)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L559)
+push edi
+call _printf
+add esp,20
+fld qword ptr (_Q)
+fsub qword ptr (_Y2)
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-1468)[ebp]
+fld qword ptr (-1468)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L560)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Q)
+fstp qword ptr (_UfThold)
+jmp L548
+L561:
+fld qword ptr (_X)
+fstp qword ptr (_X)
+jmp L548
+L562:
+fld qword ptr (_UfThold)
+fcomp qword ptr (_Q)
+fstsw ax
+sahf
+jne L563
+fld qword ptr (_E0)
+fcomp qword ptr (_E1)
+fstsw ax
+sahf
+jne L563
+fld qword ptr (_UfThold)
+fld qword ptr (_E1)
+fdiv qword ptr (_E9)
+fsubp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-1492)[ebp]
+fld qword ptr (_E1)
+fcomp qword ptr (-1492)[ebp]
+fstsw ax
+sahf
+jb L563
+mov dword ptr (_UfNGrad),0
+lea edi,(L565)
+push edi
+call _printf
+add esp,4
+lea edi,(L566)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_E0)
+fmul qword ptr (_CInvrse)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fld qword ptr (_OneAndHalf)
+fadd qword ptr (_U2)
+fmulp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (_CInvrse)
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fmulp st(1),st
+fstp qword ptr (_X)
+fld qword ptr (_Y)
+fdiv qword ptr (_X)
+fstp qword ptr (_Y)
+fld qword ptr (_E0)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jne L568
+mov dword ptr (-1496)[ebp],1
+jmp L569
+L568:
+mov dword ptr (-1496)[ebp],0
+L569:
+mov edi,dword ptr (-1496)[ebp]
+mov dword ptr (_IEEE),edi
+L563:
+L547:
+L548:
+cmp dword ptr (_UfNGrad),0
+je L572
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+lea edi,(_sigfpe)
+mov dword ptr (_sigsave),edi
+lea edi,(_ovfl_buf)
+push edi
+call __setjmp
+add esp,4
+cmp eax,0
+je L574
+lea edi,(L576)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_H)
+fadd qword ptr (_H)
+fstp qword ptr (_R)
+jmp L575
+L574:
+fld qword ptr (_Underflow)
+fdiv qword ptr (_UfThold)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1460)[ebp]
+fld qword ptr (-1460)[ebp]
+fstp qword ptr (_R)
+L575:
+mov dword ptr (_sigsave),0
+fld qword ptr (_H)
+fcomp qword ptr (_R)
+fstsw ax
+sahf
+jb L577
+fld qword ptr (_R)
+fmul qword ptr (_UfThold)
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fld qword ptr (_One)
+fld qword ptr (_R)
+fmul qword ptr (_H)
+fld qword ptr (_One)
+fadd qword ptr (_H)
+fmulp st(1),st
+faddp st(1),st
+fmulp st(1),st
+fstp qword ptr (_X)
+jmp L578
+L577:
+fld qword ptr (_UfThold)
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fld qword ptr (_One)
+fld qword ptr (_H)
+fmul qword ptr (_H)
+fld qword ptr (_One)
+fadd qword ptr (_H)
+fmulp st(1),st
+faddp st(1),st
+fmulp st(1),st
+fstp qword ptr (_X)
+L578:
+fld qword ptr (_Z)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+je L579
+fld qword ptr (_X)
+fsub qword ptr (_Z)
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L579
+lea edi,(L157)
+push edi
+push 3
+call _BadCond
+add esp,8
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L581)
+push edi
+call _printf
+add esp,20
+fld qword ptr (_X)
+fsub qword ptr (_Z)
+fstp qword ptr (_Z9)
+fld qword ptr (_Z9)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L582)
+push edi
+call _printf
+add esp,12
+lea edi,(L583)
+push edi
+call _printf
+add esp,4
+lea edi,(L584)
+push edi
+call _printf
+add esp,4
+lea edi,(L585)
+push edi
+call _printf
+add esp,4
+lea edi,(L586)
+push edi
+call _printf
+add esp,4
+lea edi,(L587)
+push edi
+call _printf
+add esp,4
+lea edi,(L588)
+push edi
+call _printf
+add esp,4
+lea edi,(_sigfpe)
+mov dword ptr (_sigsave),edi
+lea edi,(_ovfl_buf)
+push edi
+call __setjmp
+add esp,4
+cmp eax,0
+je L589
+lea edi,(L591)
+push edi
+call _printf
+add esp,4
+jmp L590
+L589:
+fld qword ptr (_X)
+fdiv qword ptr (_Z)
+fsub qword ptr (_Half)
+fsub qword ptr (_Half)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L592)
+push edi
+call _printf
+add esp,12
+L590:
+mov dword ptr (_sigsave),0
+L579:
+L572:
+lea edi,(L594)
+push edi
+fld qword ptr (_UfThold)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L593)
+push edi
+call _printf
+add esp,16
+lea edi,(L595)
+push edi
+call _printf
+add esp,4
+lea edi,(L596)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_U1)
+fmul qword ptr (_U1)
+fstp qword ptr (_Y2)
+fld qword ptr (_Y2)
+fstp qword ptr (-1468)[ebp]
+fld qword ptr (-1468)[ebp]
+fmul qword ptr (-1468)[ebp]
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fmul qword ptr (_U1)
+fstp qword ptr (_Y2)
+fld qword ptr (_UfThold)
+fcomp qword ptr (_Y2)
+fstsw ax
+sahf
+jb L597
+fld qword ptr (_E0)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jae L599
+lea edi,(L157)
+push edi
+push 2
+call _BadCond
+add esp,8
+mov dword ptr (_I),5
+jmp L600
+L599:
+lea edi,(L157)
+push edi
+push 1
+call _BadCond
+add esp,8
+mov dword ptr (_I),4
+L600:
+mov edi,dword ptr (_I)
+push edi
+lea edi,(L601)
+push edi
+call _printf
+add esp,8
+L597:
+mov dword ptr (_Milestone),130
+fld qword ptr (_UfThold)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-1476)[ebp]
+fld qword ptr (_HInvrse)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-1484)[ebp]
+fld qword ptr (_Half)
+fld qword ptr (_TwoForty)
+fmul qword ptr (-1476)[ebp]
+fdiv qword ptr (-1484)[ebp]
+fsubp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1492)[ebp]
+fld qword ptr (-1492)[ebp]
+fchs
+fdiv qword ptr (_TwoForty)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fadd qword ptr (_Y)
+fstp qword ptr (_Y2)
+lea edi,(L602)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_HInvrse)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L603)
+push edi
+call _printf
+add esp,20
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_HInvrse)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L604)
+push edi
+call _printf
+add esp,20
+fld qword ptr (_Y2)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_HInvrse)
+sub esp,8
+fstp qword ptr [esp]
+call _pow
+add esp,16
+fstp qword ptr (-1508)[ebp]
+fld qword ptr (-1508)[ebp]
+fstp qword ptr (_V9)
+fld qword ptr (_V9)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L605)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Zero)
+fcomp qword ptr (_V9)
+fstsw ax
+sahf
+ja L608
+fld qword ptr (_Radix)
+fadd qword ptr (_Radix)
+fadd qword ptr (_E9)
+fmul qword ptr (_UfThold)
+fcomp qword ptr (_V9)
+fstsw ax
+sahf
+jae L606
+L608:
+lea edi,(L609)
+push edi
+push 1
+call _BadCond
+add esp,8
+fld qword ptr (_UfThold)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L610)
+push edi
+call _printf
+add esp,12
+jmp L607
+L606:
+fld qword ptr (_UfThold)
+fld qword ptr (_One)
+fadd qword ptr (_E9)
+fmulp st(1),st
+fcomp qword ptr (_V9)
+fstsw ax
+sahf
+jb L611
+lea edi,(L613)
+push edi
+call _printf
+add esp,4
+jmp L612
+L611:
+lea edi,(L609)
+push edi
+push 2
+call _BadCond
+add esp,8
+fld qword ptr (_UfThold)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L610)
+push edi
+call _printf
+add esp,12
+L612:
+L607:
+mov dword ptr (_Milestone),140
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Zero)
+fstp qword ptr (_X)
+mov dword ptr (_I),2
+fld qword ptr (_Two)
+fmul qword ptr (_Three)
+fstp qword ptr (_Y)
+fld qword ptr (_Zero)
+fstp qword ptr (_Q)
+mov dword ptr (_N),0
+L614:
+fld qword ptr (_X)
+fstp qword ptr (_Z)
+inc dword ptr (_I)
+mov edi,dword ptr (_I)
+fld qword ptr (_Y)
+lea edi,[edi][edi]
+push edi
+fild dword ptr 0[esp]
+add esp,4
+fdivp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fadd qword ptr (_Q)
+fstp qword ptr (_R)
+fld qword ptr (_Z)
+fstp qword ptr (-1540)[ebp]
+fld qword ptr (_R)
+fstp qword ptr (-1548)[ebp]
+fld qword ptr (-1540)[ebp]
+fadd qword ptr (-1548)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (-1540)[ebp]
+fsub qword ptr (_X)
+fadd qword ptr (-1548)[ebp]
+fstp qword ptr (_Q)
+L615:
+fld qword ptr (_Z)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jb L614
+fld qword ptr (_OneAndHalf)
+fld qword ptr (_One)
+fdiv qword ptr (_Eight)
+faddp st(1),st
+fld qword ptr (_X)
+fld qword ptr (_OneAndHalf)
+fmul qword ptr (_ThirtyTwo)
+fdivp st(1),st
+faddp st(1),st
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+fstp qword ptr (-1548)[ebp]
+fld qword ptr (-1548)[ebp]
+fmul qword ptr (-1548)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-1556)[ebp]
+fld qword ptr (-1556)[ebp]
+fmul qword ptr (-1556)[ebp]
+fstp qword ptr (_Exp2)
+fld qword ptr (_F9)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fsub qword ptr (_U1)
+fstp qword ptr (_Y)
+fld qword ptr (_Exp2)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L617)
+push edi
+call _printf
+add esp,12
+mov dword ptr (_I),1
+L618:
+fld qword ptr (_X)
+fsub qword ptr (_BInvrse)
+fstp qword ptr (_Z)
+fld qword ptr (_X)
+fadd qword ptr (_One)
+fld qword ptr (_Z)
+fld qword ptr (_One)
+fsub qword ptr (_BInvrse)
+fsubp st(1),st
+fdivp st(1),st
+fstp qword ptr (_Z)
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+call _pow
+add esp,16
+fstp qword ptr (-1588)[ebp]
+fld qword ptr (-1588)[ebp]
+fsub qword ptr (_Exp2)
+fstp qword ptr (_Q)
+fld qword ptr (_Q)
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-1596)[ebp]
+fld qword ptr (_TwoForty)
+fmul qword ptr (_U2)
+fcomp qword ptr (-1596)[ebp]
+fstsw ax
+sahf
+jae L622
+mov dword ptr (_N),1
+fld qword ptr (_X)
+fsub qword ptr (_BInvrse)
+fld qword ptr (_One)
+fsub qword ptr (_BInvrse)
+fsubp st(1),st
+fstp qword ptr (_V9)
+lea edi,(L624)
+push edi
+push 2
+call _BadCond
+add esp,8
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+call _pow
+add esp,16
+fstp qword ptr (-1612)[ebp]
+fld qword ptr (-1612)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L625)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_V9)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L626)
+push edi
+call _printf
+add esp,20
+fld qword ptr (_Q)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L627)
+push edi
+call _printf
+add esp,12
+lea edi,(L628)
+push edi
+call _printf
+add esp,4
+lea edi,(L629)
+push edi
+call _printf
+add esp,4
+jmp L620
+L622:
+fld qword ptr (_Y)
+fstp qword ptr (-1604)[ebp]
+fld qword ptr (-1604)[ebp]
+fsub qword ptr (_X)
+fmul qword ptr (_Two)
+fadd qword ptr (-1604)[ebp]
+fstp qword ptr (_Z)
+fld qword ptr (-1604)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (_Z)
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fsub qword ptr (_F9)
+fstp qword ptr (-1612)[ebp]
+fld qword ptr (_One)
+fld qword ptr (-1612)[ebp]
+fmul qword ptr (-1612)[ebp]
+faddp st(1),st
+fstp qword ptr (_Z)
+fld qword ptr (_One)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jae L630
+mov edi,dword ptr (_NoTrials)
+cmp dword ptr (_I),edi
+jge L630
+inc dword ptr (_I)
+jmp L618
+L630:
+fld qword ptr (_One)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jae L632
+cmp dword ptr (_N),0
+jne L620
+lea edi,(L636)
+push edi
+call _printf
+add esp,4
+jmp L620
+L632:
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fstp qword ptr (_X)
+fld qword ptr (_U2)
+fadd qword ptr (_U2)
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fadd qword ptr (_X)
+fstp qword ptr (_Y)
+mov dword ptr (_I),1
+jmp L618
+L620:
+mov dword ptr (_Milestone),150
+lea edi,(L637)
+push edi
+call _printf
+add esp,4
+mov dword ptr (_N),0
+fld qword ptr (_A1)
+fstp qword ptr (_Z)
+fld qword ptr (_C)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-1564)[ebp]
+fld qword ptr (_A1)
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-1572)[ebp]
+fld qword ptr (_Half)
+fld qword ptr (-1564)[ebp]
+fdiv qword ptr (-1572)[ebp]
+fsubp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-1580)[ebp]
+fld qword ptr (-1580)[ebp]
+fstp qword ptr (_Q)
+mov dword ptr (_Break),0
+L638:
+fld qword ptr (_CInvrse)
+fstp qword ptr (_X)
+fld qword ptr (_Q)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+call _pow
+add esp,16
+fstp qword ptr (-1588)[ebp]
+fld qword ptr (-1588)[ebp]
+fstp qword ptr (_Y)
+call _IsYeqX
+add esp,0
+fld qword ptr (_Q)
+fchs
+fstp qword ptr (_Q)
+fld qword ptr (_C)
+fstp qword ptr (_X)
+fld qword ptr (_Q)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+call _pow
+add esp,16
+fstp qword ptr (-1596)[ebp]
+fld qword ptr (-1596)[ebp]
+fstp qword ptr (_Y)
+call _IsYeqX
+add esp,0
+fld qword ptr (_One)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jbe L641
+mov dword ptr (_Break),1
+jmp L642
+L641:
+fld qword ptr (_AInvrse)
+fstp qword ptr (_Z)
+L642:
+L639:
+cmp dword ptr (_Break),0
+je L638
+call _PrintIfNPositive
+add esp,0
+cmp dword ptr (_N),0
+jne L643
+lea edi,(L645)
+push edi
+call _printf
+add esp,4
+L643:
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+mov dword ptr (_Milestone),160
+call _Pause
+add esp,0
+lea edi,(L646)
+push edi
+call _printf
+add esp,4
+lea edi,(L647)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_CInvrse)
+fchs
+fstp qword ptr (_Y)
+fld qword ptr (_HInvrse)
+fmul qword ptr (_Y)
+fstp qword ptr (_V9)
+lea edi,(_sigfpe)
+mov dword ptr (_sigsave),edi
+lea edi,(_ovfl_buf)
+push edi
+call __setjmp
+add esp,4
+cmp eax,0
+je L648
+mov dword ptr (_I),0
+fld qword ptr (_Y)
+fstp qword ptr (_V9)
+jmp L650
+L648:
+L651:
+fld qword ptr (_Y)
+fstp qword ptr (_V)
+fld qword ptr (_V9)
+fstp qword ptr (_Y)
+fld qword ptr (_HInvrse)
+fmul qword ptr (_Y)
+fstp qword ptr (_V9)
+L652:
+fld qword ptr (_Y)
+fcomp qword ptr (_V9)
+fstsw ax
+sahf
+ja L651
+mov dword ptr (_I),1
+L650:
+mov dword ptr (_sigsave),0
+fld qword ptr (_V9)
+fstp qword ptr (_Z)
+lea edi,(L654)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L655)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Y)
+fchs
+fstp qword ptr (_V9)
+fld qword ptr (_V9)
+fstp qword ptr (_V0)
+fld qword ptr (_V)
+fsub qword ptr (_Y)
+fld qword ptr (_V)
+fadd qword ptr (_V0)
+fcompp
+fstsw ax
+sahf
+jne L656
+lea edi,(L658)
+push edi
+call _printf
+add esp,4
+jmp L657
+L656:
+lea edi,(L659)
+push edi
+call _printf
+add esp,4
+lea edi,(L660)
+push edi
+push 3
+call _BadCond
+add esp,8
+L657:
+fld qword ptr (_Y)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+je L661
+lea edi,(L157)
+push edi
+push 1
+call _BadCond
+add esp,8
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L663)
+push edi
+call _printf
+add esp,20
+L661:
+cmp dword ptr (_I),0
+je L664
+fld qword ptr (_V)
+fld qword ptr (_HInvrse)
+fmul qword ptr (_U2)
+fsub qword ptr (_HInvrse)
+fmulp st(1),st
+fstp qword ptr (_Y)
+fld qword ptr (_Y)
+fld qword ptr (_One)
+fsub qword ptr (_HInvrse)
+fmul qword ptr (_U2)
+fmul qword ptr (_V)
+faddp st(1),st
+fstp qword ptr (_Z)
+fld qword ptr (_V0)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jbe L666
+fld qword ptr (_Z)
+fstp qword ptr (_Y)
+L666:
+fld qword ptr (_V0)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jbe L668
+fld qword ptr (_Y)
+fstp qword ptr (_V)
+L668:
+fld qword ptr (_V0)
+fsub qword ptr (_V)
+fld qword ptr (_V0)
+fcompp
+fstsw ax
+sahf
+jbe L665
+fld qword ptr (_V0)
+fstp qword ptr (_V)
+jmp L665
+L664:
+fld qword ptr (_Y)
+fld qword ptr (_HInvrse)
+fmul qword ptr (_U2)
+fsub qword ptr (_HInvrse)
+fmulp st(1),st
+fstp qword ptr (_V)
+fld qword ptr (_V)
+fld qword ptr (_One)
+fsub qword ptr (_HInvrse)
+fmul qword ptr (_U2)
+fmul qword ptr (_Y)
+faddp st(1),st
+fstp qword ptr (_V)
+L665:
+fld qword ptr (_V)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L672)
+push edi
+call _printf
+add esp,12
+cmp dword ptr (_I),0
+je L673
+fld qword ptr (_V0)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L675)
+push edi
+call _printf
+add esp,12
+jmp L674
+L673:
+lea edi,(L676)
+push edi
+call _printf
+add esp,4
+L674:
+fld qword ptr (_V)
+fmul qword ptr (_One)
+fstp qword ptr (_V9)
+fld qword ptr (_V9)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L677)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_V)
+fdiv qword ptr (_One)
+fstp qword ptr (_V9)
+fld qword ptr (_V9)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L678)
+push edi
+call _printf
+add esp,12
+lea edi,(L679)
+push edi
+call _printf
+add esp,4
+lea edi,(L680)
+push edi
+call _printf
+add esp,4
+mov dword ptr (_Milestone),170
+fld qword ptr (_V)
+fchs
+fld qword ptr (_V)
+fcompp
+fstsw ax
+sahf
+jbe L685
+fld qword ptr (_V0)
+fchs
+fld qword ptr (_V0)
+fcompp
+fstsw ax
+sahf
+jbe L685
+fld qword ptr (_UfThold)
+fchs
+fld qword ptr (_V)
+fcompp
+fstsw ax
+sahf
+jbe L685
+fld qword ptr (_V)
+fcomp qword ptr (_UfThold)
+fstsw ax
+sahf
+ja L681
+L685:
+lea edi,(L686)
+push edi
+push 0
+call _BadCond
+add esp,8
+fld qword ptr (_UfThold)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_V0)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_V)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L687)
+push edi
+call _printf
+add esp,28
+L681:
+mov dword ptr (_Milestone),175
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+mov dword ptr (_Indx),1
+L688:
+mov edi,dword ptr (_Indx)
+cmp edi,1
+je L694
+cmp edi,2
+je L695
+cmp edi,3
+je L696
+jmp L692
+L694:
+fld qword ptr (_UfThold)
+fstp qword ptr (_Z)
+jmp L693
+L695:
+fld qword ptr (_E0)
+fstp qword ptr (_Z)
+jmp L693
+L696:
+fld qword ptr (_PseudoZero)
+fstp qword ptr (_Z)
+L692:
+L693:
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+je L697
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1628)[ebp]
+fld qword ptr (-1628)[ebp]
+fstp qword ptr (_V9)
+fld qword ptr (_V9)
+fmul qword ptr (_V9)
+fstp qword ptr (_Y)
+fld qword ptr (_Radix)
+fmul qword ptr (_E9)
+fstp qword ptr (-1660)[ebp]
+fld qword ptr (_Y)
+fld qword ptr (_One)
+fsub qword ptr (-1660)[ebp]
+fdivp st(1),st
+fld qword ptr (_Z)
+fcompp
+fstsw ax
+sahf
+ja L701
+fld qword ptr (_One)
+fadd qword ptr (-1660)[ebp]
+fmul qword ptr (_Z)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+jae L699
+L701:
+fld qword ptr (_U1)
+fcomp qword ptr (_V9)
+fstsw ax
+sahf
+jae L702
+lea edi,(L157)
+push edi
+push 1
+call _BadCond
+add esp,8
+jmp L703
+L702:
+lea edi,(L157)
+push edi
+push 2
+call _BadCond
+add esp,8
+L703:
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L704)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L705)
+push edi
+call _printf
+add esp,12
+L699:
+L697:
+L689:
+inc dword ptr (_Indx)
+cmp dword ptr (_Indx),3
+jle L688
+mov dword ptr (_Milestone),180
+mov dword ptr (_Indx),1
+L706:
+cmp dword ptr (_Indx),1
+jne L710
+fld qword ptr (_V)
+fstp qword ptr (_Z)
+jmp L711
+L710:
+fld qword ptr (_V0)
+fstp qword ptr (_Z)
+L711:
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-1628)[ebp]
+fld qword ptr (-1628)[ebp]
+fstp qword ptr (_V9)
+fld qword ptr (_V9)
+fstp qword ptr (-1636)[ebp]
+fld qword ptr (_One)
+fld qword ptr (_Radix)
+fmul qword ptr (_E9)
+fsubp st(1),st
+fmul qword ptr (-1636)[ebp]
+fstp qword ptr (_X)
+fld qword ptr (-1636)[ebp]
+fmul qword ptr (_X)
+fstp qword ptr (_V9)
+fld qword ptr (_One)
+fld qword ptr (_Two)
+fmul qword ptr (_Radix)
+fmul qword ptr (_E9)
+fsubp st(1),st
+fmul qword ptr (_Z)
+fcomp qword ptr (_V9)
+fstsw ax
+sahf
+ja L714
+fld qword ptr (_Z)
+fcomp qword ptr (_V9)
+fstsw ax
+sahf
+jae L712
+L714:
+fld qword ptr (_V9)
+fstp qword ptr (_Y)
+fld qword ptr (_W)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jbe L715
+lea edi,(L157)
+push edi
+push 1
+call _BadCond
+add esp,8
+jmp L716
+L715:
+lea edi,(L157)
+push edi
+push 2
+call _BadCond
+add esp,8
+L716:
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L717)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L718)
+push edi
+call _printf
+add esp,12
+L712:
+L707:
+inc dword ptr (_Indx)
+cmp dword ptr (_Indx),2
+jle L706
+mov dword ptr (_Milestone),190
+call _Pause
+add esp,0
+fld qword ptr (_UfThold)
+fmul qword ptr (_V)
+fstp qword ptr (_X)
+fld qword ptr (_Radix)
+fmul qword ptr (_Radix)
+fstp qword ptr (_Y)
+fld qword ptr (_X)
+fmul qword ptr (_Y)
+fld qword ptr (_One)
+fcompp
+fstsw ax
+sahf
+ja L721
+fld qword ptr (_Y)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jae L719
+L721:
+fld qword ptr (_X)
+fmul qword ptr (_Y)
+fld qword ptr (_U1)
+fcompp
+fstsw ax
+sahf
+ja L724
+fld qword ptr (_Y)
+fdiv qword ptr (_U1)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+jae L722
+L724:
+lea edi,(L725)
+push edi
+push 2
+call _BadCond
+add esp,8
+jmp L723
+L722:
+lea edi,(L157)
+push edi
+push 3
+call _BadCond
+add esp,8
+L723:
+lea edi,(L727)
+push edi
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L726)
+push edi
+call _printf
+add esp,16
+L719:
+mov dword ptr (_Milestone),200
+mov dword ptr (_Indx),1
+L728:
+fld qword ptr (_F9)
+fstp qword ptr (_X)
+mov edi,dword ptr (_Indx)
+cmp edi,2
+jl L732
+cmp edi,5
+jg L732
+jmp dword ptr (L738-8)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L738 label byte
+dd L734
+dd L735
+dd L736
+dd L737
+_TEXT ends
+_TEXT segment
+L734:
+fld qword ptr (_One)
+fadd qword ptr (_U2)
+fstp qword ptr (_X)
+jmp L733
+L735:
+fld qword ptr (_V)
+fstp qword ptr (_X)
+jmp L733
+L736:
+fld qword ptr (_UfThold)
+fstp qword ptr (_X)
+jmp L733
+L737:
+fld qword ptr (_Radix)
+fstp qword ptr (_X)
+L732:
+L733:
+fld qword ptr (_X)
+fstp qword ptr (_Y)
+lea edi,(_sigfpe)
+mov dword ptr (_sigsave),edi
+lea edi,(_ovfl_buf)
+push edi
+call __setjmp
+add esp,4
+cmp eax,0
+je L740
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L742)
+push edi
+call _printf
+add esp,12
+jmp L741
+L740:
+fld qword ptr (_Y)
+fdiv qword ptr (_X)
+fsub qword ptr (_Half)
+fsub qword ptr (_Half)
+fstp qword ptr (_V9)
+fld qword ptr (_Zero)
+fcomp qword ptr (_V9)
+fstsw ax
+sahf
+jne L743
+jmp L729
+L743:
+fld qword ptr (_U1)
+fchs
+fcomp qword ptr (_V9)
+fstsw ax
+sahf
+jne L745
+cmp dword ptr (_Indx),5
+jge L745
+lea edi,(L157)
+push edi
+push 3
+call _BadCond
+add esp,8
+jmp L746
+L745:
+lea edi,(L157)
+push edi
+push 1
+call _BadCond
+add esp,8
+L746:
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L747)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_V9)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L748)
+push edi
+call _printf
+add esp,12
+L741:
+mov dword ptr (_sigsave),0
+L729:
+inc dword ptr (_Indx)
+cmp dword ptr (_Indx),5
+jle L728
+mov dword ptr (_Milestone),210
+fld qword ptr (_Zero)
+fstp qword ptr (_MyZero)
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+lea edi,(L749)
+push edi
+call _printf
+add esp,4
+lea edi,(_sigfpe)
+mov dword ptr (_sigsave),edi
+lea edi,(L750)
+push edi
+call _printf
+add esp,4
+lea edi,(_ovfl_buf)
+push edi
+call __setjmp
+add esp,4
+cmp eax,0
+jne L751
+fld qword ptr (_One)
+fdiv qword ptr (_MyZero)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L753)
+push edi
+call _printf
+add esp,12
+L751:
+mov dword ptr (_sigsave),0
+lea edi,(_sigfpe)
+mov dword ptr (_sigsave),edi
+lea edi,(L754)
+push edi
+call _printf
+add esp,4
+lea edi,(_ovfl_buf)
+push edi
+call __setjmp
+add esp,4
+cmp eax,0
+jne L755
+fld qword ptr (_Zero)
+fdiv qword ptr (_MyZero)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L753)
+push edi
+call _printf
+add esp,12
+L755:
+mov dword ptr (_sigsave),0
+mov dword ptr (_Milestone),220
+call _Pause
+add esp,0
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+mov dword ptr (-1648)[ebp],0
+L762:
+mov edi,dword ptr (-1648)[ebp]
+cmp dword ptr (_ErrCnt)[edi*4],0
+je L766
+mov edi,dword ptr (-1648)[ebp]
+lea edi,[edi*4]
+mov esi,dword ptr (_ErrCnt)[edi]
+push esi
+mov edi,dword ptr (L757)[edi]
+push edi
+lea edi,(L768)
+push edi
+call _printf
+add esp,12
+L766:
+L763:
+inc dword ptr (-1648)[ebp]
+cmp dword ptr (-1648)[ebp],4
+jl L762
+lea edi,(L44)
+push edi
+call _printf
+add esp,4
+mov edi,dword ptr (_ErrCnt)
+mov esi,dword ptr (_ErrCnt+4)
+lea edi,[esi][edi]
+mov esi,dword ptr (_ErrCnt+8)
+lea edi,[esi][edi]
+mov esi,dword ptr (_ErrCnt+12)
+lea edi,[esi][edi]
+cmp edi,0
+jle L769
+mov edi,dword ptr (_ErrCnt)
+mov esi,dword ptr (_ErrCnt+4)
+lea edi,[esi][edi]
+mov esi,dword ptr (_ErrCnt+8)
+lea edi,[esi][edi]
+cmp edi,0
+jne L774
+cmp dword ptr (_ErrCnt+12),0
+jle L774
+lea edi,(L779)
+push edi
+call _printf
+add esp,4
+lea edi,(L780)
+push edi
+call _printf
+add esp,4
+L774:
+mov edi,dword ptr (_ErrCnt)
+mov esi,dword ptr (_ErrCnt+4)
+lea edi,[esi][edi]
+cmp edi,0
+jne L781
+cmp dword ptr (_ErrCnt+8),0
+jle L781
+lea edi,(L785)
+push edi
+call _printf
+add esp,4
+lea edi,(L786)
+push edi
+call _printf
+add esp,4
+L781:
+mov edi,dword ptr (_ErrCnt)
+mov esi,dword ptr (_ErrCnt+4)
+lea edi,[esi][edi]
+cmp edi,0
+jle L787
+lea edi,(L790)
+push edi
+call _printf
+add esp,4
+lea edi,(L791)
+push edi
+call _printf
+add esp,4
+L787:
+cmp dword ptr (_ErrCnt),0
+jle L770
+lea edi,(L794)
+push edi
+call _printf
+add esp,4
+lea edi,(L795)
+push edi
+call _printf
+add esp,4
+jmp L770
+L769:
+lea edi,(L796)
+push edi
+call _printf
+add esp,4
+cmp dword ptr (_RMult),1
+jne L801
+cmp dword ptr (_RDiv),1
+jne L801
+cmp dword ptr (_RAddSub),1
+jne L801
+cmp dword ptr (_RSqrt),1
+je L797
+L801:
+lea edi,(L802)
+push edi
+call _printf
+add esp,4
+jmp L798
+L797:
+fld qword ptr (_One)
+fcomp qword ptr (_StickyBit)
+fstsw ax
+sahf
+ja L803
+fld qword ptr (_Radix)
+fsub qword ptr (_Two)
+fld qword ptr (_Radix)
+fsub qword ptr (_Nine)
+fsub qword ptr (_One)
+fmulp st(1),st
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L803
+lea edi,(L805)
+push edi
+call _printf
+add esp,4
+lea edi,(L806)
+push edi
+call _printf
+add esp,4
+fld qword ptr (_Two)
+fcomp qword ptr (_Radix)
+fstsw ax
+sahf
+jne L807
+fld qword ptr (_Precision)
+fld qword ptr (_Four)
+fmul qword ptr (_Three)
+fmul qword ptr (_Two)
+fsubp st(1),st
+fld qword ptr (_Precision)
+fsub qword ptr (_TwentySeven)
+fsub qword ptr (_TwentySeven)
+fadd qword ptr (_One)
+fmulp st(1),st
+fld qword ptr (_Zero)
+fcompp
+fstsw ax
+sahf
+jne L807
+lea edi,(L809)
+push edi
+call _printf
+add esp,4
+jmp L808
+L807:
+lea edi,(L810)
+push edi
+call _printf
+add esp,4
+L808:
+cmp dword ptr (_IEEE),0
+je L811
+lea edi,(L813)
+push edi
+call _printf
+add esp,4
+jmp L812
+L811:
+lea edi,(L814)
+push edi
+call _printf
+add esp,4
+lea edi,(L815)
+push edi
+call _printf
+add esp,4
+L812:
+L803:
+lea edi,(L816)
+push edi
+call _printf
+add esp,4
+L798:
+L770:
+cmp dword ptr (_fpecount),0
+je L817
+mov edi,dword ptr (_fpecount)
+push edi
+lea edi,(L819)
+push edi
+call _printf
+add esp,8
+L817:
+lea edi,(L820)
+push edi
+call _printf
+add esp,4
+mov eax,0
+L6:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _Sign
+_Sign:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+fld qword ptr (L7)
+fcomp qword ptr (20)[ebp]
+fstsw ax
+sahf
+ja L823
+fld qword ptr (L8)
+fstp qword ptr (-8)[ebp]
+jmp L824
+L823:
+fld qword ptr (L825)
+fstp qword ptr (-8)[ebp]
+L824:
+fld qword ptr (-8)[ebp]
+L821:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _Pause
+_Pause:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (_Milestone)
+push edi
+lea edi,(L827)
+push edi
+call _printf
+add esp,8
+mov edi,dword ptr (_PageNo)
+push edi
+lea edi,(L828)
+push edi
+call _printf
+add esp,8
+inc dword ptr (_Milestone)
+inc dword ptr (_PageNo)
+mov eax,0
+L826:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _TstCond
+_TstCond:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+cmp dword ptr (24)[ebp],0
+jne L830
+mov edi,dword ptr (28)[ebp]
+push edi
+mov edi,dword ptr (20)[ebp]
+push edi
+call _BadCond
+add esp,8
+lea edi,(L813)
+push edi
+call _printf
+add esp,4
+L830:
+mov eax,0
+L829:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L833 label byte
+dd L834
+dd L835
+dd L836
+dd L837
+public _BadCond
+_DATA ends
+_TEXT segment
+_BadCond:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+lea edi,(_ErrCnt)[edi*4]
+inc dword ptr [edi]
+mov edi,dword ptr (24)[ebp]
+push edi
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (L833)[edi*4]
+push edi
+lea edi,(L838)
+push edi
+call _printf
+add esp,12
+mov eax,0
+L832:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _Random
+_Random:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,48
+fld qword ptr (_Random1)
+fadd qword ptr (_Random9)
+fstp qword ptr (-8)[ebp]
+fld qword ptr (-8)[ebp]
+fmul qword ptr (-8)[ebp]
+fstp qword ptr (-16)[ebp]
+fld qword ptr (-16)[ebp]
+fmul qword ptr (-16)[ebp]
+fstp qword ptr (-16)[ebp]
+fld qword ptr (-8)[ebp]
+fmul qword ptr (-16)[ebp]
+fstp qword ptr (-8)[ebp]
+fld qword ptr (-8)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-48)[ebp]
+fld qword ptr (-8)[ebp]
+fsub qword ptr (-48)[ebp]
+fstp qword ptr (-16)[ebp]
+fld qword ptr (-16)[ebp]
+fld qword ptr (L840)
+fmul qword ptr (-8)[ebp]
+faddp st(1),st
+fstp qword ptr (_Random1)
+fld qword ptr (_Random1)
+L839:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _SqXMinX
+_SqXMinX:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,40
+fld qword ptr (_X)
+fmul qword ptr (_BInvrse)
+fstp qword ptr (-8)[ebp]
+fld qword ptr (_X)
+fsub qword ptr (-8)[ebp]
+fstp qword ptr (-16)[ebp]
+fld qword ptr (_X)
+fmul qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-32)[ebp]
+fld qword ptr (-32)[ebp]
+fsub qword ptr (-8)[ebp]
+fsub qword ptr (-16)[ebp]
+fdiv qword ptr (_OneUlp)
+fstp qword ptr (_SqEr)
+fld qword ptr (_Zero)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+je L842
+fld qword ptr (_MinSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jbe L844
+fld qword ptr (_SqEr)
+fstp qword ptr (_MinSqEr)
+L844:
+fld qword ptr (_MaxSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jae L846
+fld qword ptr (_SqEr)
+fstp qword ptr (_MaxSqEr)
+L846:
+fld qword ptr (_J)
+fadd qword ptr (L8)
+fstp qword ptr (_J)
+lea edi,(L44)
+push edi
+mov edi,dword ptr (20)[ebp]
+push edi
+call _BadCond
+add esp,8
+fld qword ptr (_OneUlp)
+fmul qword ptr (_SqEr)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_X)
+fmul qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L848)
+push edi
+call _printf
+add esp,28
+lea edi,(L849)
+push edi
+call _printf
+add esp,4
+L842:
+mov eax,0
+L841:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _NewD
+_NewD:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,40
+fld qword ptr (_Z1)
+fmul qword ptr (_Q)
+fstp qword ptr (_X)
+fld qword ptr (_Half)
+fld qword ptr (_X)
+fdiv qword ptr (_Radix)
+fsubp st(1),st
+sub esp,8
+fstp qword ptr [esp]
+call _floor
+add esp,8
+fstp qword ptr (-8)[ebp]
+fld qword ptr (-8)[ebp]
+fmul qword ptr (_Radix)
+fadd qword ptr (_X)
+fstp qword ptr (_X)
+fld qword ptr (_X)
+fstp qword ptr (-24)[ebp]
+fld qword ptr (_Z)
+fstp qword ptr (-32)[ebp]
+fld qword ptr (_Q)
+fld qword ptr (-24)[ebp]
+fmul qword ptr (-32)[ebp]
+fsubp st(1),st
+fdiv qword ptr (_Radix)
+fld qword ptr (-24)[ebp]
+fmul qword ptr (-24)[ebp]
+fld qword ptr (_D)
+fdiv qword ptr (_Radix)
+fmulp st(1),st
+faddp st(1),st
+fstp qword ptr (_Q)
+fld qword ptr (-32)[ebp]
+fld qword ptr (_Two)
+fmul qword ptr (-24)[ebp]
+fmul qword ptr (_D)
+fsubp st(1),st
+fstp qword ptr (_Z)
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jb L851
+fld qword ptr (_Z)
+fchs
+fstp qword ptr (_Z)
+fld qword ptr (_Z1)
+fchs
+fstp qword ptr (_Z1)
+L851:
+fld qword ptr (_Radix)
+fmul qword ptr (_D)
+fstp qword ptr (_D)
+mov eax,0
+L850:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _SR3750
+_SR3750:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,64
+fld qword ptr (_X)
+fsub qword ptr (_Radix)
+fld qword ptr (_Z2)
+fsub qword ptr (_Radix)
+fcompp
+fstsw ax
+sahf
+ja L854
+fld qword ptr (_X)
+fsub qword ptr (_Z2)
+fld qword ptr (_W)
+fsub qword ptr (_Z2)
+fcompp
+fstsw ax
+sahf
+jb L854
+inc dword ptr (_I)
+fld qword ptr (_X)
+fmul qword ptr (_D)
+sub esp,8
+fstp qword ptr [esp]
+call _sqrt
+add esp,8
+fstp qword ptr (-32)[ebp]
+fld qword ptr (-32)[ebp]
+fstp qword ptr (_X2)
+fld qword ptr (_X2)
+fsub qword ptr (_Z2)
+fld qword ptr (_Y)
+fsub qword ptr (_Z2)
+fsubp st(1),st
+fstp qword ptr (_Y2)
+fld qword ptr (_X8)
+fld qword ptr (_Y)
+fsub qword ptr (_Half)
+fdivp st(1),st
+fstp qword ptr (_X2)
+fld qword ptr (_X2)
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-64)[ebp]
+fld qword ptr (_Half)
+fmul qword ptr (-64)[ebp]
+fmul qword ptr (-64)[ebp]
+fsubp st(1),st
+fstp qword ptr (_X2)
+fld qword ptr (_Y2)
+fadd qword ptr (_Half)
+fld qword ptr (_Half)
+fsub qword ptr (_X2)
+faddp st(1),st
+fstp qword ptr (_SqEr)
+fld qword ptr (_MinSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jbe L856
+fld qword ptr (_SqEr)
+fstp qword ptr (_MinSqEr)
+L856:
+fld qword ptr (_Y2)
+fsub qword ptr (_X2)
+fstp qword ptr (_SqEr)
+fld qword ptr (_MaxSqEr)
+fcomp qword ptr (_SqEr)
+fstsw ax
+sahf
+jae L858
+fld qword ptr (_SqEr)
+fstp qword ptr (_MaxSqEr)
+L858:
+L854:
+mov eax,0
+L853:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _IsYeqX
+_IsYeqX:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+fld qword ptr (_X)
+fcomp qword ptr (_Y)
+fstsw ax
+sahf
+je L861
+cmp dword ptr (_N),0
+jg L863
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L865
+fld qword ptr (_Zero)
+fcomp qword ptr (_Q)
+fstsw ax
+sahf
+jb L865
+lea edi,(L867)
+push edi
+call _printf
+add esp,4
+jmp L866
+L865:
+lea edi,(L868)
+push edi
+push 2
+call _BadCond
+add esp,8
+L866:
+fld qword ptr (_Q)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L869)
+push edi
+call _printf
+add esp,20
+fld qword ptr (_Y)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L870)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L871)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Y)
+fsub qword ptr (_X)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L872)
+push edi
+call _printf
+add esp,12
+L863:
+inc dword ptr (_N)
+L861:
+mov eax,0
+L860:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _SR3980
+_SR3980:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+L874:
+fild dword ptr (_I)
+fstp qword ptr (_Q)
+fld qword ptr (_Q)
+sub esp,8
+fstp qword ptr [esp]
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+call _pow
+add esp,16
+fstp qword ptr (-8)[ebp]
+fld qword ptr (-8)[ebp]
+fstp qword ptr (_Y)
+call _IsYeqX
+add esp,0
+mov edi,dword ptr (_I)
+lea edi,(1)[edi]
+mov dword ptr (_I),edi
+cmp edi,dword ptr (_M)
+jle L877
+jmp L876
+L877:
+fld qword ptr (_Z)
+fmul qword ptr (_X)
+fstp qword ptr (_X)
+L875:
+fld qword ptr (_W)
+fcomp qword ptr (_X)
+fstsw ax
+sahf
+ja L874
+L876:
+mov eax,0
+L873:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _PrintIfNPositive
+_PrintIfNPositive:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+cmp dword ptr (_N),0
+jle L880
+mov edi,dword ptr (_N)
+push edi
+lea edi,(L882)
+push edi
+call _printf
+add esp,8
+L880:
+mov eax,0
+L879:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _TstPtUf
+_TstPtUf:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,48
+mov dword ptr (_N),0
+fld qword ptr (_Zero)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+je L884
+lea edi,(L886)
+push edi
+call _printf
+add esp,4
+lea edi,(L887)
+push edi
+call _printf
+add esp,4
+lea edi,(_sigfpe)
+mov dword ptr (_sigsave),edi
+lea edi,(_ovfl_buf)
+push edi
+call __setjmp
+add esp,4
+cmp eax,0
+je L888
+jmp L890
+L888:
+fld qword ptr (_Z)
+fadd qword ptr (_Z)
+fdiv qword ptr (_Z)
+fstp qword ptr (_Q9)
+fld qword ptr (_Q9)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L891)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Q9)
+fsub qword ptr (_Two)
+sub esp,8
+fstp qword ptr [esp]
+call _fabs
+add esp,8
+fstp qword ptr (-16)[ebp]
+fld qword ptr (_Radix)
+fmul qword ptr (_U2)
+fcomp qword ptr (-16)[ebp]
+fstsw ax
+sahf
+jbe L892
+lea edi,(L894)
+push edi
+call _printf
+add esp,4
+lea edi,(L895)
+push edi
+call _printf
+add esp,4
+jmp L893
+L892:
+fld qword ptr (_One)
+fcomp qword ptr (_Q9)
+fstsw ax
+sahf
+ja L898
+fld qword ptr (_Two)
+fcomp qword ptr (_Q9)
+fstsw ax
+sahf
+jae L896
+L898:
+L890:
+mov dword ptr (_N),1
+mov edi,dword ptr (_ErrCnt+4)
+lea edi,(1)[edi]
+mov dword ptr (_ErrCnt+4),edi
+lea edi,(L901)
+push edi
+call _printf
+add esp,4
+jmp L897
+L896:
+mov dword ptr (_N),1
+mov edi,dword ptr (_ErrCnt+8)
+lea edi,(1)[edi]
+mov dword ptr (_ErrCnt+8),edi
+lea edi,(L904)
+push edi
+call _printf
+add esp,4
+L897:
+L893:
+mov dword ptr (_sigsave),0
+fld qword ptr (_Z)
+fmul qword ptr (_One)
+fstp qword ptr (_V9)
+fld qword ptr (_V9)
+fstp qword ptr (_Random1)
+fld qword ptr (_One)
+fmul qword ptr (_Z)
+fstp qword ptr (_V9)
+fld qword ptr (_V9)
+fstp qword ptr (_Random2)
+fld qword ptr (_Z)
+fdiv qword ptr (_One)
+fstp qword ptr (_V9)
+fld qword ptr (_Random1)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L905
+fld qword ptr (_Random2)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L905
+fld qword ptr (_V9)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+jne L905
+cmp dword ptr (_N),0
+jle L906
+call _Pause
+add esp,0
+jmp L906
+L905:
+mov dword ptr (_N),1
+lea edi,(L909)
+push edi
+push 2
+call _BadCond
+add esp,8
+fld qword ptr (_Z)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L910)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Random1)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+je L911
+fld qword ptr (_Random1)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L913)
+push edi
+call _printf
+add esp,12
+L911:
+fld qword ptr (_Random2)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+je L914
+fld qword ptr (_Random1)
+fcomp qword ptr (_Random2)
+fstsw ax
+sahf
+je L914
+fld qword ptr (_Random2)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L916)
+push edi
+call _printf
+add esp,12
+L914:
+fld qword ptr (_V9)
+fcomp qword ptr (_Z)
+fstsw ax
+sahf
+je L917
+fld qword ptr (_V9)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L919)
+push edi
+call _printf
+add esp,12
+L917:
+fld qword ptr (_Random1)
+fcomp qword ptr (_Random2)
+fstsw ax
+sahf
+je L920
+mov edi,dword ptr (_ErrCnt+8)
+lea edi,(1)[edi]
+mov dword ptr (_ErrCnt+8),edi
+lea edi,(L924)
+push edi
+push 2
+call _BadCond
+add esp,8
+fld qword ptr (_Random2)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L925)
+push edi
+call _printf
+add esp,12
+fld qword ptr (_Random1)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L926)
+push edi
+call _printf
+add esp,12
+L920:
+call _Pause
+add esp,0
+L906:
+L884:
+mov eax,0
+L883:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _notify
+_notify:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+push edi
+lea edi,(L928)
+push edi
+call _printf
+add esp,8
+lea edi,(L929)
+push edi
+call _printf
+add esp,4
+mov eax,0
+L927:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _msglist
+_msglist:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+jmp L932
+L931:
+mov edi,dword ptr (20)[ebp]
+lea esi,(4)[edi]
+mov dword ptr (20)[ebp],esi
+mov edi,dword ptr [edi]
+push edi
+lea edi,(L934)
+push edi
+call _printf
+add esp,8
+L932:
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr [edi]
+cmp edi,0
+jne L931
+mov eax,0
+L930:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L936 label byte
+dd L937
+dd L938
+dd L939
+dd L940
+dd L941
+dd L942
+dd L943
+dd L944
+dd L945
+dd 00H
+public _Instructions
+_DATA ends
+_TEXT segment
+_Instructions:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+lea edi,(L936)
+push edi
+call _msglist
+add esp,4
+mov eax,0
+L935:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L947 label byte
+dd L948
+dd L949
+dd L950
+dd L951
+dd L952
+dd L953
+dd L954
+dd L955
+dd L956
+dd L957
+dd L958
+dd L959
+dd L960
+dd L961
+dd 00H
+public _Heading
+_DATA ends
+_TEXT segment
+_Heading:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+lea edi,(L947)
+push edi
+call _msglist
+add esp,4
+mov eax,0
+L946:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L963 label byte
+dd L964
+dd L965
+dd L966
+dd L967
+dd L968
+dd L969
+dd L970
+dd L971
+dd L972
+dd L973
+dd L974
+dd L975
+dd L976
+dd L977
+dd L978
+dd L979
+dd L980
+dd L981
+dd L982
+dd 00H
+public _Characteristics
+_DATA ends
+_TEXT segment
+_Characteristics:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+lea edi,(L963)
+push edi
+call _msglist
+add esp,4
+mov eax,0
+L962:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+align 4
+L984 label byte
+dd L985
+dd L986
+dd L987
+dd L988
+dd L989
+dd L990
+dd L991
+dd L992
+dd L993
+dd L994
+dd L995
+dd L996
+dd L997
+dd L998
+dd L999
+dd L1000
+dd L1001
+dd 00H
+public _History
+_DATA ends
+_TEXT segment
+_History:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+lea edi,(L984)
+push edi
+call _msglist
+add esp,4
+mov eax,0
+L983:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _pow
+_pow:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,96
+mov dword ptr (-20)[ebp],0
+mov dword ptr (-24)[ebp],0
+fld qword ptr (L7)
+fcomp qword ptr (28)[ebp]
+fstsw ax
+sahf
+jne L1003
+fld qword ptr (L8)
+jmp L1002
+L1003:
+fld qword ptr (L1008)
+fcomp qword ptr (28)[ebp]
+fstsw ax
+sahf
+ja L1007
+fld qword ptr (L1009)
+fcomp qword ptr (28)[ebp]
+fstsw ax
+sahf
+jae L1005
+L1007:
+fld qword ptr (L825)
+fcomp qword ptr (20)[ebp]
+fstsw ax
+sahf
+je L1005
+fld qword ptr (20)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-48)[ebp]
+fld qword ptr (28)[ebp]
+fmul qword ptr (-48)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _exp
+add esp,8
+fstp qword ptr (-56)[ebp]
+fld qword ptr (-56)[ebp]
+jmp L1002
+L1005:
+fld qword ptr (L7)
+fcomp qword ptr (28)[ebp]
+fstsw ax
+sahf
+jbe L1010
+fld qword ptr (28)[ebp]
+fchs
+fstp qword ptr (28)[ebp]
+mov dword ptr (-24)[ebp],1
+L1010:
+lea edi,(-32)[ebp]
+push edi
+fld qword ptr (28)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _modf
+add esp,12
+fstp qword ptr (-64)[ebp]
+fld qword ptr (-64)[ebp]
+fstp qword ptr (28)[ebp]
+fld qword ptr (L7)
+fcomp qword ptr (28)[ebp]
+fstsw ax
+sahf
+je L1012
+fld qword ptr (20)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _log
+add esp,8
+fstp qword ptr (-72)[ebp]
+fld qword ptr (28)[ebp]
+fmul qword ptr (-72)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _exp
+add esp,8
+fstp qword ptr (-80)[ebp]
+fld qword ptr (-80)[ebp]
+fstp qword ptr (-16)[ebp]
+jmp L1013
+L1012:
+fld qword ptr (L8)
+fstp qword ptr (-16)[ebp]
+L1013:
+lea edi,(-8)[ebp]
+push edi
+fld qword ptr (20)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _frexp
+add esp,12
+fstp qword ptr (-88)[ebp]
+fld qword ptr (-88)[ebp]
+fstp qword ptr (20)[ebp]
+fld qword ptr (-32)[ebp]
+call __ftol
+mov dword ptr (-4)[ebp],eax
+cmp eax,0
+je L1014
+L1016:
+mov edi,dword ptr (-4)[ebp]
+and edi,1
+cmp edi,0
+je L1020
+fld qword ptr (-16)[ebp]
+fmul qword ptr (20)[ebp]
+fstp qword ptr (-16)[ebp]
+mov edi,dword ptr (-8)[ebp]
+add dword ptr (-20)[ebp],edi
+L1020:
+mov edi,dword ptr (-4)[ebp]
+sar edi,1
+mov dword ptr (-4)[ebp],edi
+cmp edi,0
+jne L1022
+jmp L1018
+L1022:
+fld qword ptr (20)[ebp]
+fmul qword ptr (20)[ebp]
+fstp qword ptr (20)[ebp]
+sal dword ptr (-8)[ebp],1
+fld qword ptr (L1026)
+fcomp qword ptr (20)[ebp]
+fstsw ax
+sahf
+jbe L1016
+fld qword ptr (L1027)
+fmul qword ptr (20)[ebp]
+fstp qword ptr (20)[ebp]
+dec dword ptr (-8)[ebp]
+jmp L1016
+L1018:
+L1014:
+cmp dword ptr (-24)[ebp],0
+je L1028
+fld qword ptr (L8)
+fdiv qword ptr (-16)[ebp]
+fstp qword ptr (-16)[ebp]
+neg dword ptr (-20)[ebp]
+L1028:
+mov edi,dword ptr (-20)[ebp]
+push edi
+fld qword ptr (-16)[ebp]
+sub esp,8
+fstp qword ptr [esp]
+call _ldexp
+add esp,12
+fstp qword ptr (-96)[ebp]
+fld qword ptr (-96)[ebp]
+L1002:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _modf:near
+_TEXT segment
+_TEXT ends
+extrn _ldexp:near
+_TEXT segment
+_TEXT ends
+extrn _frexp:near
+_TEXT segment
+_TEXT ends
+extrn _exp:near
+_TEXT segment
+_TEXT ends
+extrn _abort:near
+_TEXT segment
+_TEXT ends
+_DATA segment
+public _UfNGrad
+align 4
+_UfNGrad label byte
+db 4 dup (0)
+public _SqRWrng
+align 4
+_SqRWrng label byte
+db 4 dup (0)
+public _IEEE
+align 4
+_IEEE label byte
+db 4 dup (0)
+public _Anomaly
+align 4
+_Anomaly label byte
+db 4 dup (0)
+public _Monot
+align 4
+_Monot label byte
+db 4 dup (0)
+public _NotMonot
+align 4
+_NotMonot label byte
+db 4 dup (0)
+public _Done
+align 4
+_Done label byte
+db 4 dup (0)
+public _Break
+align 4
+_Break label byte
+db 4 dup (0)
+public _RSqrt
+align 4
+_RSqrt label byte
+db 4 dup (0)
+public _RAddSub
+align 4
+_RAddSub label byte
+db 4 dup (0)
+public _RDiv
+align 4
+_RDiv label byte
+db 4 dup (0)
+public _RMult
+align 4
+_RMult label byte
+db 4 dup (0)
+public _GAddSub
+align 4
+_GAddSub label byte
+db 4 dup (0)
+public _GDiv
+align 4
+_GDiv label byte
+db 4 dup (0)
+public _GMult
+align 4
+_GMult label byte
+db 4 dup (0)
+public _N1
+align 4
+_N1 label byte
+db 4 dup (0)
+public _N
+align 4
+_N label byte
+db 4 dup (0)
+public _M
+align 4
+_M label byte
+db 4 dup (0)
+public _PageNo
+align 4
+_PageNo label byte
+db 4 dup (0)
+public _Milestone
+align 4
+_Milestone label byte
+db 4 dup (0)
+public _fpecount
+align 4
+_fpecount label byte
+db 4 dup (0)
+public _ErrCnt
+align 4
+_ErrCnt label byte
+db 16 dup (0)
+public _Z9
+align 4
+_Z9 label byte
+db 8 dup (0)
+public _Z2
+align 4
+_Z2 label byte
+db 8 dup (0)
+public _Z1
+align 4
+_Z1 label byte
+db 8 dup (0)
+public _PseudoZero
+align 4
+_PseudoZero label byte
+db 8 dup (0)
+public _Z
+align 4
+_Z label byte
+db 8 dup (0)
+public _Random2
+align 4
+_Random2 label byte
+db 8 dup (0)
+public _Y2
+align 4
+_Y2 label byte
+db 8 dup (0)
+public _Y1
+align 4
+_Y1 label byte
+db 8 dup (0)
+public _Y
+align 4
+_Y label byte
+db 8 dup (0)
+public _Random1
+align 4
+_Random1 label byte
+db 8 dup (0)
+public _X8
+align 4
+_X8 label byte
+db 8 dup (0)
+public _X2
+align 4
+_X2 label byte
+db 8 dup (0)
+public _X1
+align 4
+_X1 label byte
+db 8 dup (0)
+public _X
+align 4
+_X label byte
+db 8 dup (0)
+public _W
+align 4
+_W label byte
+db 8 dup (0)
+public _V9
+align 4
+_V9 label byte
+db 8 dup (0)
+public _V0
+align 4
+_V0 label byte
+db 8 dup (0)
+public _V
+align 4
+_V label byte
+db 8 dup (0)
+public _U2
+align 4
+_U2 label byte
+db 8 dup (0)
+public _U1
+align 4
+_U1 label byte
+db 8 dup (0)
+public _UfThold
+align 4
+_UfThold label byte
+db 8 dup (0)
+public _OneUlp
+align 4
+_OneUlp label byte
+db 8 dup (0)
+public _S
+align 4
+_S label byte
+db 8 dup (0)
+public _Underflow
+align 4
+_Underflow label byte
+db 8 dup (0)
+public _T
+align 4
+_T label byte
+db 8 dup (0)
+public _Random9
+align 4
+_Random9 label byte
+db 8 dup (0)
+public _R
+align 4
+_R label byte
+db 8 dup (0)
+public _Q9
+align 4
+_Q9 label byte
+db 8 dup (0)
+public _Q
+align 4
+_Q label byte
+db 8 dup (0)
+public _Precision
+align 4
+_Precision label byte
+db 8 dup (0)
+public _MyZero
+align 4
+_MyZero label byte
+db 8 dup (0)
+public _J
+align 4
+_J label byte
+db 8 dup (0)
+public _StickyBit
+align 4
+_StickyBit label byte
+db 8 dup (0)
+public _I
+align 4
+_I label byte
+db 4 dup (0)
+public _HInvrse
+align 4
+_HInvrse label byte
+db 8 dup (0)
+public _H
+align 4
+_H label byte
+db 8 dup (0)
+public _F9
+align 4
+_F9 label byte
+db 8 dup (0)
+public _F6
+align 4
+_F6 label byte
+db 8 dup (0)
+public _Third
+align 4
+_Third label byte
+db 8 dup (0)
+public _E9
+align 4
+_E9 label byte
+db 8 dup (0)
+public _MaxSqEr
+align 4
+_MaxSqEr label byte
+db 8 dup (0)
+public _SqEr
+align 4
+_SqEr label byte
+db 8 dup (0)
+public _MinSqEr
+align 4
+_MinSqEr label byte
+db 8 dup (0)
+public _E3
+align 4
+_E3 label byte
+db 8 dup (0)
+public _Exp2
+align 4
+_Exp2 label byte
+db 8 dup (0)
+public _E1
+align 4
+_E1 label byte
+db 8 dup (0)
+public _E0
+align 4
+_E0 label byte
+db 8 dup (0)
+public _FourD
+align 4
+_FourD label byte
+db 8 dup (0)
+public _D
+align 4
+_D label byte
+db 8 dup (0)
+public _CInvrse
+align 4
+_CInvrse label byte
+db 8 dup (0)
+public _C
+align 4
+_C label byte
+db 8 dup (0)
+public _A1
+align 4
+_A1 label byte
+db 8 dup (0)
+public _AInvrse
+align 4
+_AInvrse label byte
+db 8 dup (0)
+public _ch
+align 1
+_ch label byte
+db 8 dup (0)
+public _Indx
+align 4
+_Indx label byte
+db 4 dup (0)
+public _BMinusU2
+align 4
+_BMinusU2 label byte
+db 8 dup (0)
+public _RadixD2
+align 4
+_RadixD2 label byte
+db 8 dup (0)
+public _BInvrse
+align 4
+_BInvrse label byte
+db 8 dup (0)
+public _Radix
+align 4
+_Radix label byte
+db 8 dup (0)
+public _sigsave
+align 4
+_sigsave label byte
+db 4 dup (0)
+public _ovfl_buf
+align 4
+_ovfl_buf label byte
+db 64 dup (0)
+_DATA ends
+extrn _sqrt:near
+_DATA segment
+_DATA ends
+extrn _log:near
+_DATA segment
+_DATA ends
+extrn _floor:near
+_DATA segment
+_DATA ends
+extrn _fabs:near
+_DATA segment
+_DATA ends
+extrn _longjmp:near
+_DATA segment
+_DATA ends
+extrn __setjmp:near
+_DATA segment
+_DATA ends
+extrn _signal:near
+_DATA segment
+_DATA ends
+extrn _printf:near
+_DATA segment
+_DATA ends
+extrn _fflush:near
+_DATA segment
+_DATA ends
+extrn __iob:near
+_DATA segment
+_DATA ends
+_TEXT segment
+align 4
+L1027 label byte
+dd 00H
+dd 040000000H
+align 4
+L1026 label byte
+dd 00H
+dd 03fe00000H
+align 4
+L1009 label byte
+dd 00H
+dd 040913000H
+align 4
+L1008 label byte
+dd 00H
+dd 0c0913000H
+align 1
+L1001 label byte
+db 115
+db 101
+db 101
+db 32
+db 115
+db 111
+db 117
+db 114
+db 99
+db 101
+db 32
+db 99
+db 111
+db 109
+db 109
+db 101
+db 110
+db 116
+db 115
+db 32
+db 102
+db 111
+db 114
+db 32
+db 109
+db 111
+db 114
+db 101
+db 32
+db 104
+db 105
+db 115
+db 116
+db 111
+db 114
+db 121
+db 46
+db 0
+align 1
+L1000 label byte
+db 66
+db 65
+db 83
+db 73
+db 67
+db 32
+db 118
+db 101
+db 114
+db 115
+db 105
+db 111
+db 110
+db 32
+db 111
+db 102
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 40
+db 67
+db 41
+db 32
+db 49
+db 57
+db 56
+db 51
+db 32
+db 98
+db 121
+db 32
+db 80
+db 114
+db 111
+db 102
+db 46
+db 32
+db 87
+db 46
+db 32
+db 77
+db 46
+db 32
+db 75
+db 97
+db 104
+db 97
+db 110
+db 59
+db 0
+align 1
+L999 label byte
+db 97
+db 115
+db 32
+db 117
+db 115
+db 101
+db 100
+db 32
+db 98
+db 121
+db 32
+db 99
+db 101
+db 114
+db 116
+db 97
+db 105
+db 110
+db 32
+db 101
+db 97
+db 114
+db 108
+db 121
+db 32
+db 87
+db 65
+db 78
+db 71
+db 32
+db 109
+db 97
+db 99
+db 104
+db 105
+db 110
+db 101
+db 115
+db 46
+db 10
+db 0
+align 1
+L998 label byte
+db 102
+db 108
+db 111
+db 97
+db 116
+db 105
+db 110
+db 103
+db 45
+db 112
+db 111
+db 105
+db 110
+db 116
+db 32
+db 110
+db 117
+db 109
+db 98
+db 101
+db 114
+db 115
+db 44
+db 32
+db 98
+db 117
+db 116
+db 32
+db 97
+db 108
+db 115
+db 111
+db 32
+db 97
+db 108
+db 108
+db 111
+db 119
+db 115
+db 32
+db 108
+db 111
+db 103
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 105
+db 99
+db 32
+db 101
+db 110
+db 99
+db 111
+db 100
+db 105
+db 110
+db 103
+db 0
+align 1
+L997 label byte
+db 10
+db 84
+db 104
+db 101
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 105
+db 115
+db 32
+db 98
+db 97
+db 115
+db 101
+db 100
+db 32
+db 117
+db 112
+db 111
+db 110
+db 32
+db 97
+db 32
+db 99
+db 111
+db 110
+db 118
+db 101
+db 110
+db 116
+db 105
+db 111
+db 110
+db 97
+db 108
+db 32
+db 114
+db 97
+db 100
+db 105
+db 120
+db 32
+db 114
+db 101
+db 112
+db 114
+db 101
+db 115
+db 101
+db 110
+db 116
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 102
+db 111
+db 114
+db 0
+align 1
+L996 label byte
+db 111
+db 102
+db 32
+db 112
+db 97
+db 116
+db 104
+db 111
+db 108
+db 111
+db 103
+db 105
+db 101
+db 115
+db 44
+db 32
+db 97
+db 110
+db 100
+db 32
+db 116
+db 111
+db 32
+db 115
+db 97
+db 121
+db 32
+db 104
+db 111
+db 119
+db 32
+db 119
+db 101
+db 108
+db 108
+db 32
+db 116
+db 104
+db 101
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 105
+db 115
+db 32
+db 105
+db 109
+db 112
+db 108
+db 101
+db 109
+db 101
+db 110
+db 116
+db 101
+db 100
+db 46
+db 0
+align 1
+L995 label byte
+db 111
+db 102
+db 32
+db 116
+db 104
+db 101
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 44
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 116
+db 114
+db 105
+db 101
+db 115
+db 32
+db 116
+db 111
+db 32
+db 99
+db 111
+db 112
+db 101
+db 32
+db 119
+db 105
+db 116
+db 104
+db 32
+db 97
+db 32
+db 119
+db 105
+db 100
+db 101
+db 114
+db 32
+db 118
+db 97
+db 114
+db 105
+db 101
+db 116
+db 121
+db 0
+align 1
+L994 label byte
+db 116
+db 104
+db 101
+db 32
+db 82
+db 97
+db 100
+db 105
+db 120
+db 44
+db 32
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 97
+db 110
+db 100
+db 32
+db 114
+db 97
+db 110
+db 103
+db 101
+db 32
+db 40
+db 111
+db 118
+db 101
+db 114
+db 47
+db 117
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 115
+db 41
+db 0
+align 1
+L993 label byte
+db 87
+db 46
+db 32
+db 74
+db 46
+db 32
+db 67
+db 111
+db 100
+db 121
+db 32
+db 97
+db 110
+db 100
+db 32
+db 87
+db 46
+db 32
+db 87
+db 97
+db 105
+db 116
+db 101
+db 46
+db 32
+db 65
+db 108
+db 116
+db 104
+db 111
+db 117
+db 103
+db 104
+db 32
+db 98
+db 111
+db 116
+db 104
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 115
+db 32
+db 116
+db 114
+db 121
+db 32
+db 116
+db 111
+db 32
+db 100
+db 105
+db 115
+db 99
+db 111
+db 118
+db 101
+db 114
+db 0
+align 1
+L992 label byte
+db 98
+db 111
+db 111
+db 107
+db 32
+db 32
+db 96
+db 83
+db 111
+db 102
+db 116
+db 119
+db 97
+db 114
+db 101
+db 32
+db 77
+db 97
+db 110
+db 117
+db 97
+db 108
+db 32
+db 102
+db 111
+db 114
+db 32
+db 116
+db 104
+db 101
+db 32
+db 69
+db 108
+db 101
+db 109
+db 101
+db 110
+db 116
+db 97
+db 114
+db 121
+db 32
+db 70
+db 117
+db 110
+db 99
+db 116
+db 105
+db 111
+db 110
+db 115
+db 39
+db 32
+db 40
+db 49
+db 57
+db 56
+db 48
+db 41
+db 32
+db 98
+db 121
+db 0
+align 1
+L991 label byte
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 99
+db 97
+db 108
+db 108
+db 101
+db 100
+db 32
+db 96
+db 77
+db 65
+db 67
+db 72
+db 65
+db 82
+db 39
+db 44
+db 32
+db 119
+db 104
+db 105
+db 99
+db 104
+db 32
+db 99
+db 97
+db 110
+db 32
+db 98
+db 101
+db 32
+db 102
+db 111
+db 117
+db 110
+db 100
+db 32
+db 97
+db 116
+db 32
+db 116
+db 104
+db 101
+db 32
+db 101
+db 110
+db 100
+db 32
+db 111
+db 102
+db 32
+db 116
+db 104
+db 101
+db 0
+align 1
+L990 label byte
+db 84
+db 104
+db 101
+db 32
+db 100
+db 105
+db 97
+db 103
+db 110
+db 111
+db 115
+db 116
+db 105
+db 99
+db 32
+db 99
+db 97
+db 112
+db 97
+db 98
+db 105
+db 108
+db 105
+db 116
+db 105
+db 101
+db 115
+db 32
+db 111
+db 102
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 103
+db 111
+db 32
+db 98
+db 101
+db 121
+db 111
+db 110
+db 100
+db 32
+db 97
+db 110
+db 32
+db 101
+db 97
+db 114
+db 108
+db 105
+db 101
+db 114
+db 0
+align 1
+L989 label byte
+db 70
+db 97
+db 105
+db 108
+db 117
+db 114
+db 101
+db 115
+db 32
+db 109
+db 97
+db 121
+db 32
+db 99
+db 111
+db 110
+db 102
+db 111
+db 117
+db 110
+db 100
+db 32
+db 115
+db 117
+db 98
+db 115
+db 101
+db 113
+db 117
+db 101
+db 110
+db 116
+db 32
+db 100
+db 105
+db 97
+db 103
+db 110
+db 111
+db 115
+db 101
+db 115
+db 46
+db 10
+db 0
+align 1
+L988 label byte
+db 32
+db 32
+db 32
+db 70
+db 65
+db 73
+db 76
+db 85
+db 82
+db 69
+db 115
+db 44
+db 32
+db 108
+db 105
+db 107
+db 101
+db 32
+db 50
+db 43
+db 50
+db 32
+db 61
+db 61
+db 32
+db 53
+db 32
+db 46
+db 0
+align 1
+L987 label byte
+db 32
+db 32
+db 32
+db 83
+db 101
+db 114
+db 105
+db 111
+db 117
+db 115
+db 32
+db 68
+db 69
+db 70
+db 69
+db 67
+db 84
+db 115
+db 44
+db 32
+db 108
+db 105
+db 107
+db 101
+db 32
+db 108
+db 97
+db 99
+db 107
+db 32
+db 111
+db 102
+db 32
+db 97
+db 32
+db 103
+db 117
+db 97
+db 114
+db 100
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 44
+db 32
+db 97
+db 110
+db 100
+db 0
+align 1
+L986 label byte
+db 32
+db 32
+db 32
+db 70
+db 76
+db 65
+db 87
+db 115
+db 44
+db 32
+db 108
+db 105
+db 107
+db 101
+db 32
+db 108
+db 97
+db 99
+db 107
+db 32
+db 111
+db 102
+db 32
+db 97
+db 32
+db 115
+db 116
+db 105
+db 99
+db 107
+db 121
+db 32
+db 98
+db 105
+db 116
+db 44
+db 0
+align 1
+L985 label byte
+db 84
+db 104
+db 101
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 97
+db 116
+db 116
+db 101
+db 109
+db 112
+db 116
+db 115
+db 32
+db 116
+db 111
+db 32
+db 100
+db 105
+db 115
+db 99
+db 114
+db 105
+db 109
+db 105
+db 110
+db 97
+db 116
+db 101
+db 32
+db 97
+db 109
+db 111
+db 110
+db 103
+db 0
+align 1
+L982 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 68
+db 101
+db 99
+db 105
+db 109
+db 97
+db 108
+db 45
+db 66
+db 105
+db 110
+db 97
+db 114
+db 121
+db 32
+db 99
+db 111
+db 110
+db 118
+db 101
+db 114
+db 115
+db 105
+db 111
+db 110
+db 32
+db 105
+db 115
+db 32
+db 78
+db 79
+db 84
+db 32
+db 89
+db 69
+db 84
+db 32
+db 116
+db 101
+db 115
+db 116
+db 101
+db 100
+db 32
+db 102
+db 111
+db 114
+db 32
+db 97
+db 99
+db 99
+db 117
+db 114
+db 97
+db 99
+db 121
+db 46
+db 0
+align 1
+L981 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 69
+db 120
+db 116
+db 114
+db 97
+db 45
+db 112
+db 114
+db 101
+db 99
+db 105
+db 115
+db 101
+db 32
+db 115
+db 117
+db 98
+db 101
+db 120
+db 112
+db 114
+db 101
+db 115
+db 115
+db 105
+db 111
+db 110
+db 115
+db 32
+db 97
+db 114
+db 101
+db 32
+db 114
+db 101
+db 118
+db 101
+db 97
+db 108
+db 101
+db 100
+db 32
+db 98
+db 117
+db 116
+db 32
+db 78
+db 79
+db 84
+db 32
+db 89
+db 69
+db 84
+db 32
+db 116
+db 101
+db 115
+db 116
+db 101
+db 100
+db 46
+db 0
+align 1
+L980 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 83
+db 113
+db 114
+db 116
+db 32
+db 105
+db 115
+db 32
+db 116
+db 101
+db 115
+db 116
+db 101
+db 100
+db 46
+db 32
+db 32
+db 89
+db 94
+db 88
+db 32
+db 105
+db 115
+db 32
+db 110
+db 111
+db 116
+db 32
+db 116
+db 101
+db 115
+db 116
+db 101
+db 100
+db 46
+db 0
+align 1
+L979 label byte
+db 9
+db 97
+db 110
+db 100
+db 32
+db 102
+db 111
+db 114
+db 32
+db 99
+db 111
+db 110
+db 116
+db 97
+db 109
+db 105
+db 110
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 119
+db 105
+db 116
+db 104
+db 32
+db 112
+db 115
+db 101
+db 117
+db 100
+db 111
+db 45
+db 122
+db 101
+db 114
+db 111
+db 115
+db 46
+db 0
+align 1
+L978 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 67
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 105
+db 111
+db 110
+db 115
+db 32
+db 97
+db 114
+db 101
+db 32
+db 99
+db 104
+db 101
+db 99
+db 107
+db 101
+db 100
+db 32
+db 102
+db 111
+db 114
+db 32
+db 99
+db 111
+db 110
+db 115
+db 105
+db 115
+db 116
+db 101
+db 110
+db 99
+db 121
+db 32
+db 119
+db 105
+db 116
+db 104
+db 32
+db 115
+db 117
+db 98
+db 116
+db 114
+db 97
+db 99
+db 116
+db 105
+db 111
+db 110
+db 0
+align 1
+L977 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 86
+db 48
+db 32
+db 32
+db 116
+db 101
+db 108
+db 108
+db 115
+db 44
+db 32
+db 114
+db 111
+db 117
+db 103
+db 104
+db 108
+db 121
+db 44
+db 32
+db 119
+db 104
+db 101
+db 116
+db 104
+db 101
+db 114
+db 32
+db 32
+db 73
+db 110
+db 102
+db 105
+db 110
+db 105
+db 116
+db 121
+db 32
+db 32
+db 105
+db 115
+db 32
+db 114
+db 101
+db 112
+db 114
+db 101
+db 115
+db 101
+db 110
+db 116
+db 101
+db 100
+db 46
+db 0
+align 1
+L976 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 86
+db 32
+db 61
+db 32
+db 97
+db 110
+db 32
+db 111
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 44
+db 32
+db 114
+db 111
+db 117
+db 103
+db 104
+db 108
+db 121
+db 46
+db 0
+align 1
+L975 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 69
+db 48
+db 32
+db 97
+db 110
+db 100
+db 32
+db 80
+db 115
+db 101
+db 117
+db 100
+db 111
+db 90
+db 101
+db 114
+db 111
+db 32
+db 116
+db 101
+db 108
+db 108
+db 32
+db 119
+db 104
+db 101
+db 116
+db 104
+db 101
+db 114
+db 32
+db 117
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 105
+db 115
+db 32
+db 97
+db 98
+db 114
+db 117
+db 112
+db 116
+db 44
+db 32
+db 103
+db 114
+db 97
+db 100
+db 117
+db 97
+db 108
+db 44
+db 32
+db 111
+db 114
+db 32
+db 102
+db 117
+db 122
+db 122
+db 121
+db 46
+db 0
+align 1
+L974 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 84
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 32
+db 61
+db 32
+db 97
+db 110
+db 32
+db 117
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 46
+db 0
+align 1
+L973 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 87
+db 104
+db 101
+db 116
+db 104
+db 101
+db 114
+db 32
+db 97
+db 32
+db 83
+db 116
+db 105
+db 99
+db 107
+db 121
+db 32
+db 66
+db 105
+db 116
+db 32
+db 117
+db 115
+db 101
+db 100
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 32
+db 102
+db 111
+db 114
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 105
+db 110
+db 103
+db 46
+db 0
+align 1
+L972 label byte
+db 9
+db 102
+db 111
+db 114
+db 32
+db 77
+db 117
+db 108
+db 116
+db 46
+db 44
+db 32
+db 68
+db 105
+db 118
+db 46
+db 44
+db 32
+db 65
+db 100
+db 100
+db 47
+db 83
+db 117
+db 98
+db 116
+db 46
+db 32
+db 97
+db 110
+db 100
+db 32
+db 83
+db 113
+db 114
+db 116
+db 46
+db 0
+align 1
+L971 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 87
+db 104
+db 101
+db 116
+db 104
+db 101
+db 114
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 105
+db 115
+db 32
+db 99
+db 104
+db 111
+db 112
+db 112
+db 101
+db 100
+db 44
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 101
+db 100
+db 44
+db 32
+db 111
+db 114
+db 32
+db 115
+db 111
+db 109
+db 101
+db 116
+db 104
+db 105
+db 110
+db 103
+db 32
+db 101
+db 108
+db 115
+db 101
+db 0
+align 1
+L970 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 65
+db 100
+db 101
+db 113
+db 117
+db 97
+db 99
+db 121
+db 32
+db 111
+db 102
+db 32
+db 103
+db 117
+db 97
+db 114
+db 100
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 102
+db 111
+db 114
+db 32
+db 77
+db 117
+db 108
+db 116
+db 46
+db 44
+db 32
+db 68
+db 105
+db 118
+db 46
+db 32
+db 97
+db 110
+db 100
+db 32
+db 83
+db 117
+db 98
+db 116
+db 46
+db 0
+align 1
+L969 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 85
+db 49
+db 32
+db 61
+db 32
+db 49
+db 47
+db 82
+db 97
+db 100
+db 105
+db 120
+db 94
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 61
+db 32
+db 79
+db 110
+db 101
+db 32
+db 85
+db 108
+db 112
+db 32
+db 111
+db 102
+db 32
+db 110
+db 117
+db 109
+db 98
+db 101
+db 114
+db 115
+db 32
+db 97
+db 32
+db 108
+db 105
+db 116
+db 116
+db 108
+db 101
+db 32
+db 108
+db 101
+db 115
+db 115
+db 32
+db 116
+db 104
+db 97
+db 110
+db 32
+db 49
+db 46
+db 48
+db 32
+db 46
+db 0
+align 1
+L968 label byte
+db 9
+db 40
+db 79
+db 110
+db 101
+db 85
+db 108
+db 112
+db 110
+db 105
+db 116
+db 32
+db 105
+db 110
+db 32
+db 116
+db 104
+db 101
+db 32
+db 76
+db 97
+db 115
+db 116
+db 32
+db 80
+db 108
+db 97
+db 99
+db 101
+db 41
+db 32
+db 111
+db 102
+db 32
+db 49
+db 46
+db 48
+db 48
+db 48
+db 120
+db 120
+db 120
+db 32
+db 46
+db 0
+align 1
+L967 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 85
+db 50
+db 32
+db 61
+db 32
+db 82
+db 97
+db 100
+db 105
+db 120
+db 47
+db 82
+db 97
+db 100
+db 105
+db 120
+db 94
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 61
+db 32
+db 79
+db 110
+db 101
+db 32
+db 85
+db 108
+db 112
+db 0
+align 1
+L966 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 61
+db 32
+db 110
+db 117
+db 109
+db 98
+db 101
+db 114
+db 32
+db 111
+db 102
+db 32
+db 115
+db 105
+db 103
+db 110
+db 105
+db 102
+db 105
+db 99
+db 97
+db 110
+db 116
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 99
+db 97
+db 114
+db 114
+db 105
+db 101
+db 100
+db 46
+db 0
+align 1
+L965 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 61
+db 32
+db 49
+db 44
+db 32
+db 50
+db 44
+db 32
+db 52
+db 44
+db 32
+db 56
+db 44
+db 32
+db 49
+db 48
+db 44
+db 32
+db 49
+db 54
+db 44
+db 32
+db 49
+db 48
+db 48
+db 44
+db 32
+db 50
+db 53
+db 54
+db 32
+db 46
+db 46
+db 46
+db 0
+align 1
+L964 label byte
+db 82
+db 117
+db 110
+db 110
+db 105
+db 110
+db 103
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 115
+db 104
+db 111
+db 117
+db 108
+db 100
+db 32
+db 114
+db 101
+db 118
+db 101
+db 97
+db 108
+db 32
+db 116
+db 104
+db 101
+db 115
+db 101
+db 32
+db 99
+db 104
+db 97
+db 114
+db 97
+db 99
+db 116
+db 101
+db 114
+db 105
+db 115
+db 116
+db 105
+db 99
+db 115
+db 58
+db 0
+align 1
+L961 label byte
+db 9
+db 79
+db 116
+db 104
+db 101
+db 114
+db 32
+db 114
+db 101
+db 108
+db 101
+db 118
+db 97
+db 110
+db 116
+db 32
+db 99
+db 111
+db 109
+db 112
+db 105
+db 108
+db 101
+db 114
+db 32
+db 111
+db 112
+db 116
+db 105
+db 111
+db 110
+db 115
+db 58
+db 0
+align 1
+L960 label byte
+db 9
+db 79
+db 112
+db 116
+db 105
+db 109
+db 105
+db 122
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 108
+db 101
+db 118
+db 101
+db 108
+db 58
+db 10
+db 0
+align 1
+L959 label byte
+db 9
+db 67
+db 111
+db 109
+db 112
+db 105
+db 108
+db 101
+db 114
+db 58
+db 10
+db 0
+align 1
+L958 label byte
+db 9
+db 67
+db 111
+db 109
+db 112
+db 117
+db 116
+db 101
+db 114
+db 58
+db 10
+db 0
+align 1
+L957 label byte
+db 9
+db 86
+db 101
+db 114
+db 115
+db 105
+db 111
+db 110
+db 58
+db 9
+db 49
+db 48
+db 32
+db 70
+db 101
+db 98
+db 114
+db 117
+db 97
+db 114
+db 121
+db 32
+db 49
+db 57
+db 56
+db 57
+db 59
+db 0
+align 1
+L956 label byte
+db 9
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 58
+db 9
+db 100
+db 111
+db 117
+db 98
+db 108
+db 101
+db 59
+db 0
+align 1
+L955 label byte
+db 73
+db 110
+db 32
+db 100
+db 111
+db 105
+db 110
+db 103
+db 32
+db 115
+db 111
+db 44
+db 32
+db 112
+db 108
+db 101
+db 97
+db 115
+db 101
+db 32
+db 105
+db 110
+db 99
+db 108
+db 117
+db 100
+db 101
+db 32
+db 116
+db 104
+db 101
+db 32
+db 102
+db 111
+db 108
+db 108
+db 111
+db 119
+db 105
+db 110
+db 103
+db 32
+db 105
+db 110
+db 102
+db 111
+db 114
+db 109
+db 97
+db 116
+db 105
+db 111
+db 110
+db 58
+db 0
+align 1
+L954 label byte
+db 9
+db 83
+db 97
+db 110
+db 32
+db 70
+db 114
+db 97
+db 110
+db 99
+db 105
+db 115
+db 99
+db 111
+db 44
+db 32
+db 67
+db 65
+db 32
+db 57
+db 52
+db 49
+db 52
+db 51
+db 45
+db 48
+db 55
+db 48
+db 52
+db 44
+db 32
+db 85
+db 83
+db 65
+db 10
+db 0
+align 1
+L953 label byte
+db 9
+db 85
+db 110
+db 105
+db 118
+db 101
+db 114
+db 115
+db 105
+db 116
+db 121
+db 32
+db 111
+db 102
+db 32
+db 67
+db 97
+db 108
+db 105
+db 102
+db 111
+db 114
+db 110
+db 105
+db 97
+db 0
+align 1
+L952 label byte
+db 9
+db 67
+db 111
+db 109
+db 112
+db 117
+db 116
+db 101
+db 114
+db 32
+db 67
+db 101
+db 110
+db 116
+db 101
+db 114
+db 32
+db 85
+db 45
+db 55
+db 54
+db 0
+align 1
+L951 label byte
+db 9
+db 82
+db 105
+db 99
+db 104
+db 97
+db 114
+db 100
+db 32
+db 75
+db 97
+db 114
+db 112
+db 105
+db 110
+db 115
+db 107
+db 105
+db 0
+align 1
+L950 label byte
+db 80
+db 108
+db 101
+db 97
+db 115
+db 101
+db 32
+db 115
+db 101
+db 110
+db 100
+db 32
+db 115
+db 117
+db 103
+db 103
+db 101
+db 115
+db 116
+db 105
+db 111
+db 110
+db 115
+db 32
+db 97
+db 110
+db 100
+db 32
+db 105
+db 110
+db 116
+db 101
+db 114
+db 101
+db 115
+db 116
+db 105
+db 110
+db 103
+db 32
+db 114
+db 101
+db 115
+db 117
+db 108
+db 116
+db 115
+db 32
+db 116
+db 111
+db 0
+align 1
+L949 label byte
+db 99
+db 111
+db 112
+db 101
+db 32
+db 119
+db 105
+db 116
+db 104
+db 32
+db 117
+db 110
+db 97
+db 110
+db 116
+db 105
+db 99
+db 105
+db 112
+db 97
+db 116
+db 101
+db 100
+db 32
+db 97
+db 110
+db 100
+db 32
+db 110
+db 101
+db 119
+db 108
+db 121
+db 32
+db 117
+db 110
+db 99
+db 111
+db 118
+db 101
+db 114
+db 101
+db 100
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 112
+db 97
+db 116
+db 104
+db 111
+db 108
+db 111
+db 103
+db 105
+db 101
+db 115
+db 46
+db 10
+db 0
+align 1
+L948 label byte
+db 85
+db 115
+db 101
+db 114
+db 115
+db 32
+db 97
+db 114
+db 101
+db 32
+db 105
+db 110
+db 118
+db 105
+db 116
+db 101
+db 100
+db 32
+db 116
+db 111
+db 32
+db 104
+db 101
+db 108
+db 112
+db 32
+db 100
+db 101
+db 98
+db 117
+db 103
+db 32
+db 97
+db 110
+db 100
+db 32
+db 97
+db 117
+db 103
+db 109
+db 101
+db 110
+db 116
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 115
+db 111
+db 32
+db 105
+db 116
+db 32
+db 119
+db 105
+db 108
+db 108
+db 0
+align 1
+L945 label byte
+db 65
+db 110
+db 115
+db 119
+db 101
+db 114
+db 32
+db 113
+db 117
+db 101
+db 115
+db 116
+db 105
+db 111
+db 110
+db 115
+db 32
+db 119
+db 105
+db 116
+db 104
+db 32
+db 89
+db 44
+db 32
+db 121
+db 44
+db 32
+db 78
+db 32
+db 111
+db 114
+db 32
+db 110
+db 32
+db 40
+db 117
+db 110
+db 108
+db 101
+db 115
+db 115
+db 32
+db 111
+db 116
+db 104
+db 101
+db 114
+db 119
+db 105
+db 115
+db 101
+db 32
+db 105
+db 110
+db 100
+db 105
+db 99
+db 97
+db 116
+db 101
+db 100
+db 41
+db 46
+db 10
+db 0
+align 1
+L944 label byte
+db 97
+db 109
+db 101
+db 110
+db 100
+db 32
+db 105
+db 116
+db 32
+db 116
+db 111
+db 32
+db 109
+db 97
+db 107
+db 101
+db 32
+db 102
+db 117
+db 114
+db 116
+db 104
+db 101
+db 114
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 101
+db 115
+db 115
+db 46
+db 10
+db 0
+align 1
+L943 label byte
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 97
+db 110
+db 121
+db 119
+db 97
+db 121
+db 32
+db 116
+db 111
+db 32
+db 115
+db 101
+db 101
+db 32
+db 104
+db 111
+db 119
+db 32
+db 109
+db 97
+db 110
+db 121
+db 32
+db 109
+db 105
+db 108
+db 101
+db 115
+db 116
+db 111
+db 110
+db 101
+db 115
+db 32
+db 105
+db 116
+db 32
+db 112
+db 97
+db 115
+db 115
+db 101
+db 115
+db 44
+db 32
+db 97
+db 110
+db 100
+db 32
+db 116
+db 104
+db 101
+db 110
+db 0
+align 1
+L942 label byte
+db 119
+db 97
+db 114
+db 110
+db 105
+db 110
+db 103
+db 46
+db 32
+db 32
+db 73
+db 102
+db 32
+db 112
+db 101
+db 114
+db 115
+db 117
+db 97
+db 115
+db 105
+db 111
+db 110
+db 32
+db 97
+db 118
+db 97
+db 105
+db 108
+db 115
+db 32
+db 110
+db 97
+db 117
+db 103
+db 104
+db 116
+db 44
+db 32
+db 100
+db 111
+db 110
+db 39
+db 116
+db 32
+db 100
+db 101
+db 115
+db 112
+db 97
+db 105
+db 114
+db 32
+db 98
+db 117
+db 116
+db 32
+db 114
+db 117
+db 110
+db 32
+db 116
+db 104
+db 105
+db 115
+db 0
+align 1
+L941 label byte
+db 116
+db 111
+db 32
+db 112
+db 101
+db 114
+db 115
+db 101
+db 118
+db 101
+db 114
+db 101
+db 32
+db 119
+db 105
+db 116
+db 104
+db 32
+db 97
+db 32
+db 115
+db 117
+db 114
+db 114
+db 111
+db 103
+db 97
+db 116
+db 101
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 32
+db 97
+db 102
+db 116
+db 101
+db 114
+db 44
+db 32
+db 112
+db 101
+db 114
+db 104
+db 97
+db 112
+db 115
+db 44
+db 32
+db 100
+db 105
+db 115
+db 112
+db 108
+db 97
+db 121
+db 105
+db 110
+db 103
+db 32
+db 115
+db 111
+db 109
+db 101
+db 0
+align 1
+L940 label byte
+db 101
+db 114
+db 114
+db 111
+db 114
+db 32
+db 108
+db 105
+db 107
+db 101
+db 32
+db 79
+db 118
+db 101
+db 114
+db 47
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 111
+db 114
+db 32
+db 68
+db 105
+db 118
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 98
+db 121
+db 32
+db 90
+db 101
+db 114
+db 111
+db 32
+db 111
+db 99
+db 99
+db 117
+db 114
+db 115
+db 44
+db 32
+db 98
+db 117
+db 116
+db 32
+db 114
+db 97
+db 116
+db 104
+db 101
+db 114
+db 0
+align 1
+L939 label byte
+db 116
+db 114
+db 121
+db 32
+db 116
+db 111
+db 32
+db 112
+db 101
+db 114
+db 115
+db 117
+db 97
+db 100
+db 101
+db 32
+db 116
+db 104
+db 101
+db 32
+db 99
+db 111
+db 109
+db 112
+db 117
+db 116
+db 101
+db 114
+db 32
+db 78
+db 79
+db 84
+db 32
+db 116
+db 111
+db 32
+db 116
+db 101
+db 114
+db 109
+db 105
+db 110
+db 97
+db 116
+db 101
+db 32
+db 101
+db 120
+db 101
+db 99
+db 117
+db 116
+db 105
+db 111
+db 110
+db 32
+db 119
+db 104
+db 101
+db 110
+db 32
+db 97
+db 110
+db 0
+align 1
+L938 label byte
+db 32
+db 32
+db 32
+db 32
+db 96
+db 69
+db 78
+db 68
+db 32
+db 79
+db 70
+db 32
+db 84
+db 69
+db 83
+db 84
+db 39
+db 44
+db 10
+db 0
+align 1
+L937 label byte
+db 76
+db 101
+db 115
+db 116
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 115
+db 116
+db 111
+db 112
+db 32
+db 112
+db 114
+db 101
+db 109
+db 97
+db 116
+db 117
+db 114
+db 101
+db 108
+db 121
+db 44
+db 32
+db 105
+db 46
+db 101
+db 46
+db 32
+db 98
+db 101
+db 102
+db 111
+db 114
+db 101
+db 32
+db 100
+db 105
+db 115
+db 112
+db 108
+db 97
+db 121
+db 105
+db 110
+db 103
+db 10
+db 0
+align 1
+L934 label byte
+db 37
+db 115
+db 10
+db 0
+align 1
+L929 label byte
+db 32
+db 32
+db 32
+db 80
+db 76
+db 69
+db 65
+db 83
+db 69
+db 32
+db 78
+db 79
+db 84
+db 73
+db 70
+db 89
+db 32
+db 75
+db 65
+db 82
+db 80
+db 73
+db 78
+db 75
+db 83
+db 73
+db 33
+db 10
+db 0
+align 1
+L928 label byte
+db 37
+db 115
+db 32
+db 116
+db 101
+db 115
+db 116
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 98
+db 101
+db 32
+db 105
+db 110
+db 99
+db 111
+db 110
+db 115
+db 105
+db 115
+db 116
+db 101
+db 110
+db 116
+db 46
+db 46
+db 46
+db 10
+db 0
+align 1
+L926 label byte
+db 9
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 115
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 90
+db 32
+db 42
+db 32
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 0
+align 1
+L925 label byte
+db 9
+db 67
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 111
+db 110
+db 32
+db 97
+db 108
+db 108
+db 101
+db 103
+db 101
+db 115
+db 32
+db 116
+db 104
+db 97
+db 116
+db 32
+db 49
+db 32
+db 42
+db 32
+db 90
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 0
+align 1
+L924 label byte
+db 77
+db 117
+db 108
+db 116
+db 105
+db 112
+db 108
+db 105
+db 99
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 100
+db 111
+db 101
+db 115
+db 32
+db 110
+db 111
+db 116
+db 32
+db 99
+db 111
+db 109
+db 109
+db 117
+db 116
+db 101
+db 33
+db 10
+db 0
+align 1
+L919 label byte
+db 90
+db 32
+db 47
+db 32
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 0
+align 1
+L916 label byte
+db 49
+db 32
+db 42
+db 32
+db 90
+db 32
+db 61
+db 61
+db 32
+db 37
+db 103
+db 10
+db 0
+align 1
+L913 label byte
+db 90
+db 32
+db 42
+db 32
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 0
+align 1
+L910 label byte
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 9
+db 99
+db 111
+db 109
+db 112
+db 97
+db 114
+db 101
+db 115
+db 32
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 101
+db 110
+db 116
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 32
+db 0
+align 1
+L909 label byte
+db 87
+db 104
+db 97
+db 116
+db 32
+db 112
+db 114
+db 105
+db 110
+db 116
+db 115
+db 32
+db 97
+db 115
+db 32
+db 90
+db 32
+db 61
+db 32
+db 0
+align 1
+L904 label byte
+db 84
+db 104
+db 105
+db 115
+db 32
+db 105
+db 115
+db 32
+db 97
+db 32
+db 68
+db 69
+db 70
+db 69
+db 67
+db 84
+db 33
+db 10
+db 0
+align 1
+L901 label byte
+db 84
+db 104
+db 105
+db 115
+db 32
+db 105
+db 115
+db 32
+db 97
+db 32
+db 86
+db 69
+db 82
+db 89
+db 32
+db 83
+db 69
+db 82
+db 73
+db 79
+db 85
+db 83
+db 32
+db 68
+db 69
+db 70
+db 69
+db 67
+db 84
+db 33
+db 10
+db 0
+align 1
+L895 label byte
+db 32
+db 104
+db 97
+db 115
+db 32
+db 78
+db 79
+db 84
+db 32
+db 106
+db 117
+db 115
+db 116
+db 32
+db 98
+db 101
+db 101
+db 110
+db 32
+db 115
+db 105
+db 103
+db 110
+db 97
+db 108
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L894 label byte
+db 84
+db 104
+db 105
+db 115
+db 32
+db 105
+db 115
+db 32
+db 79
+db 46
+db 75
+db 46
+db 44
+db 32
+db 112
+db 114
+db 111
+db 118
+db 105
+db 100
+db 101
+db 100
+db 32
+db 79
+db 118
+db 101
+db 114
+db 47
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 0
+align 1
+L891 label byte
+db 87
+db 104
+db 97
+db 116
+db 32
+db 116
+db 104
+db 101
+db 32
+db 109
+db 97
+db 99
+db 104
+db 105
+db 110
+db 101
+db 32
+db 103
+db 101
+db 116
+db 115
+db 32
+db 102
+db 111
+db 114
+db 32
+db 40
+db 90
+db 32
+db 43
+db 32
+db 90
+db 41
+db 32
+db 47
+db 32
+db 90
+db 32
+db 105
+db 115
+db 32
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L887 label byte
+db 40
+db 90
+db 32
+db 43
+db 32
+db 90
+db 41
+db 32
+db 47
+db 32
+db 90
+db 32
+db 115
+db 104
+db 111
+db 117
+db 108
+db 100
+db 32
+db 98
+db 101
+db 32
+db 115
+db 97
+db 102
+db 101
+db 46
+db 10
+db 0
+align 1
+L886 label byte
+db 83
+db 105
+db 110
+db 99
+db 101
+db 32
+db 99
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 111
+db 110
+db 32
+db 100
+db 101
+db 110
+db 105
+db 101
+db 115
+db 32
+db 90
+db 32
+db 61
+db 32
+db 48
+db 44
+db 32
+db 101
+db 118
+db 97
+db 108
+db 117
+db 97
+db 116
+db 105
+db 110
+db 103
+db 32
+db 0
+align 1
+L882 label byte
+db 83
+db 105
+db 109
+db 105
+db 108
+db 97
+db 114
+db 32
+db 100
+db 105
+db 115
+db 99
+db 114
+db 101
+db 112
+db 97
+db 110
+db 99
+db 105
+db 101
+db 115
+db 32
+db 104
+db 97
+db 118
+db 101
+db 32
+db 111
+db 99
+db 99
+db 117
+db 114
+db 114
+db 101
+db 100
+db 32
+db 37
+db 100
+db 32
+db 116
+db 105
+db 109
+db 101
+db 115
+db 46
+db 10
+db 0
+align 1
+L872 label byte
+db 9
+db 9
+db 116
+db 104
+db 101
+db 121
+db 32
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 32
+db 98
+db 121
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L871 label byte
+db 9
+db 119
+db 104
+db 105
+db 99
+db 104
+db 32
+db 99
+db 111
+db 109
+db 112
+db 97
+db 114
+db 101
+db 100
+db 32
+db 117
+db 110
+db 101
+db 113
+db 117
+db 97
+db 108
+db 32
+db 116
+db 111
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 59
+db 10
+db 0
+align 1
+L870 label byte
+db 9
+db 121
+db 105
+db 101
+db 108
+db 100
+db 101
+db 100
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 59
+db 10
+db 0
+align 1
+L869 label byte
+db 9
+db 40
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 32
+db 94
+db 32
+db 40
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 10
+db 0
+align 1
+L868 label byte
+db 99
+db 111
+db 109
+db 112
+db 117
+db 116
+db 105
+db 110
+db 103
+db 10
+db 0
+align 1
+L867 label byte
+db 87
+db 65
+db 82
+db 78
+db 73
+db 78
+db 71
+db 58
+db 32
+db 32
+db 99
+db 111
+db 109
+db 112
+db 117
+db 116
+db 105
+db 110
+db 103
+db 10
+db 0
+align 1
+L849 label byte
+db 9
+db 105
+db 110
+db 115
+db 116
+db 101
+db 97
+db 100
+db 32
+db 111
+db 102
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 32
+db 48
+db 32
+db 46
+db 10
+db 0
+align 1
+L848 label byte
+db 115
+db 113
+db 114
+db 116
+db 40
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 32
+db 45
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 0
+align 4
+L840 label byte
+dd 088e368f1H
+dd 03ed4f8b5H
+align 1
+L838 label byte
+db 37
+db 115
+db 58
+db 32
+db 32
+db 37
+db 115
+db 0
+align 1
+L837 label byte
+db 70
+db 76
+db 65
+db 87
+db 0
+align 1
+L836 label byte
+db 68
+db 69
+db 70
+db 69
+db 67
+db 84
+db 0
+align 1
+L835 label byte
+db 83
+db 69
+db 82
+db 73
+db 79
+db 85
+db 83
+db 32
+db 68
+db 69
+db 70
+db 69
+db 67
+db 84
+db 0
+align 1
+L834 label byte
+db 70
+db 65
+db 73
+db 76
+db 85
+db 82
+db 69
+db 0
+align 1
+L828 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 80
+db 97
+db 103
+db 101
+db 58
+db 32
+db 37
+db 100
+db 10
+db 10
+db 0
+align 1
+L827 label byte
+db 10
+db 68
+db 105
+db 97
+db 103
+db 110
+db 111
+db 115
+db 105
+db 115
+db 32
+db 114
+db 101
+db 115
+db 117
+db 109
+db 101
+db 115
+db 32
+db 97
+db 102
+db 116
+db 101
+db 114
+db 32
+db 109
+db 105
+db 108
+db 101
+db 115
+db 116
+db 111
+db 110
+db 101
+db 32
+db 78
+db 117
+db 109
+db 98
+db 101
+db 114
+db 32
+db 37
+db 100
+db 0
+align 4
+L825 label byte
+dd 00H
+dd 0bff00000H
+align 1
+L820 label byte
+db 69
+db 78
+db 68
+db 32
+db 79
+db 70
+db 32
+db 84
+db 69
+db 83
+db 84
+db 46
+db 10
+db 0
+align 1
+L819 label byte
+db 10
+db 65
+db 32
+db 116
+db 111
+db 116
+db 97
+db 108
+db 32
+db 111
+db 102
+db 32
+db 37
+db 100
+db 32
+db 102
+db 108
+db 111
+db 97
+db 116
+db 105
+db 110
+db 103
+db 32
+db 112
+db 111
+db 105
+db 110
+db 116
+db 32
+db 101
+db 120
+db 99
+db 101
+db 112
+db 116
+db 105
+db 111
+db 110
+db 115
+db 32
+db 119
+db 101
+db 114
+db 101
+db 32
+db 114
+db 101
+db 103
+db 105
+db 115
+db 116
+db 101
+db 114
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L816 label byte
+db 84
+db 104
+db 101
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 100
+db 105
+db 97
+db 103
+db 110
+db 111
+db 115
+db 101
+db 100
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 98
+db 101
+db 32
+db 69
+db 120
+db 99
+db 101
+db 108
+db 108
+db 101
+db 110
+db 116
+db 33
+db 10
+db 0
+align 1
+L815 label byte
+db 32
+db 100
+db 117
+db 114
+db 105
+db 110
+db 103
+db 32
+db 71
+db 114
+db 97
+db 100
+db 117
+db 97
+db 108
+db 32
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 46
+db 10
+db 0
+align 1
+L814 label byte
+db 44
+db 10
+db 101
+db 120
+db 99
+db 101
+db 112
+db 116
+db 32
+db 102
+db 111
+db 114
+db 32
+db 112
+db 111
+db 115
+db 115
+db 105
+db 98
+db 108
+db 121
+db 32
+db 68
+db 111
+db 117
+db 98
+db 108
+db 101
+db 32
+db 82
+db 111
+db 117
+db 110
+db 100
+db 105
+db 110
+db 103
+db 0
+align 1
+L813 label byte
+db 46
+db 10
+db 0
+align 1
+L810 label byte
+db 56
+db 53
+db 52
+db 0
+align 1
+L809 label byte
+db 55
+db 53
+db 52
+db 0
+align 1
+L806 label byte
+db 116
+db 104
+db 101
+db 32
+db 112
+db 114
+db 111
+db 112
+db 111
+db 115
+db 101
+db 100
+db 32
+db 73
+db 69
+db 69
+db 69
+db 32
+db 115
+db 116
+db 97
+db 110
+db 100
+db 97
+db 114
+db 100
+db 32
+db 80
+db 0
+align 1
+L805 label byte
+db 82
+db 111
+db 117
+db 110
+db 100
+db 105
+db 110
+db 103
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 99
+db 111
+db 110
+db 102
+db 111
+db 114
+db 109
+db 32
+db 116
+db 111
+db 32
+db 0
+align 1
+L802 label byte
+db 84
+db 104
+db 101
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 100
+db 105
+db 97
+db 103
+db 110
+db 111
+db 115
+db 101
+db 100
+db 32
+db 115
+db 101
+db 101
+db 109
+db 115
+db 32
+db 83
+db 97
+db 116
+db 105
+db 115
+db 102
+db 97
+db 99
+db 116
+db 111
+db 114
+db 121
+db 46
+db 10
+db 0
+align 1
+L796 label byte
+db 78
+db 111
+db 32
+db 102
+db 97
+db 105
+db 108
+db 117
+db 114
+db 101
+db 115
+db 44
+db 32
+db 100
+db 101
+db 102
+db 101
+db 99
+db 116
+db 115
+db 32
+db 110
+db 111
+db 114
+db 32
+db 102
+db 108
+db 97
+db 119
+db 115
+db 32
+db 104
+db 97
+db 118
+db 101
+db 32
+db 98
+db 101
+db 101
+db 110
+db 32
+db 100
+db 105
+db 115
+db 99
+db 111
+db 118
+db 101
+db 114
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L795 label byte
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 39
+db 115
+db 32
+db 115
+db 117
+db 98
+db 115
+db 101
+db 113
+db 117
+db 101
+db 110
+db 116
+db 32
+db 100
+db 105
+db 97
+db 103
+db 110
+db 111
+db 115
+db 101
+db 115
+db 46
+db 10
+db 0
+align 1
+L794 label byte
+db 80
+db 111
+db 116
+db 101
+db 110
+db 116
+db 105
+db 97
+db 108
+db 108
+db 121
+db 32
+db 102
+db 97
+db 116
+db 97
+db 108
+db 32
+db 70
+db 65
+db 73
+db 76
+db 85
+db 82
+db 69
+db 32
+db 109
+db 97
+db 121
+db 32
+db 104
+db 97
+db 118
+db 101
+db 32
+db 115
+db 112
+db 111
+db 105
+db 108
+db 101
+db 100
+db 32
+db 116
+db 104
+db 105
+db 115
+db 0
+align 1
+L791 label byte
+db 117
+db 110
+db 97
+db 99
+db 99
+db 101
+db 112
+db 116
+db 97
+db 98
+db 108
+db 101
+db 32
+db 83
+db 101
+db 114
+db 105
+db 111
+db 117
+db 115
+db 32
+db 68
+db 101
+db 102
+db 101
+db 99
+db 116
+db 115
+db 46
+db 10
+db 0
+align 1
+L790 label byte
+db 84
+db 104
+db 101
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 100
+db 105
+db 97
+db 103
+db 110
+db 111
+db 115
+db 101
+db 100
+db 32
+db 104
+db 97
+db 115
+db 32
+db 0
+align 1
+L786 label byte
+db 100
+db 101
+db 115
+db 112
+db 105
+db 116
+db 101
+db 32
+db 105
+db 110
+db 99
+db 111
+db 110
+db 118
+db 101
+db 110
+db 105
+db 101
+db 110
+db 116
+db 32
+db 68
+db 101
+db 102
+db 101
+db 99
+db 116
+db 115
+db 46
+db 10
+db 0
+align 1
+L785 label byte
+db 84
+db 104
+db 101
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 100
+db 105
+db 97
+db 103
+db 110
+db 111
+db 115
+db 101
+db 100
+db 32
+db 109
+db 97
+db 121
+db 32
+db 98
+db 101
+db 32
+db 65
+db 99
+db 99
+db 101
+db 112
+db 116
+db 97
+db 98
+db 108
+db 101
+db 10
+db 0
+align 1
+L780 label byte
+db 83
+db 97
+db 116
+db 105
+db 115
+db 102
+db 97
+db 99
+db 116
+db 111
+db 114
+db 121
+db 32
+db 116
+db 104
+db 111
+db 117
+db 103
+db 104
+db 32
+db 102
+db 108
+db 97
+db 119
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L779 label byte
+db 84
+db 104
+db 101
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 100
+db 105
+db 97
+db 103
+db 110
+db 111
+db 115
+db 101
+db 100
+db 32
+db 115
+db 101
+db 101
+db 109
+db 115
+db 32
+db 0
+align 1
+L768 label byte
+db 84
+db 104
+db 101
+db 32
+db 110
+db 117
+db 109
+db 98
+db 101
+db 114
+db 32
+db 111
+db 102
+db 32
+db 32
+db 37
+db 45
+db 50
+db 57
+db 115
+db 32
+db 37
+db 100
+db 46
+db 10
+db 0
+align 1
+L761 label byte
+db 70
+db 76
+db 65
+db 87
+db 115
+db 32
+db 32
+db 100
+db 105
+db 115
+db 99
+db 111
+db 118
+db 101
+db 114
+db 101
+db 100
+db 32
+db 61
+db 0
+align 1
+L760 label byte
+db 68
+db 69
+db 70
+db 69
+db 67
+db 84
+db 115
+db 32
+db 32
+db 100
+db 105
+db 115
+db 99
+db 111
+db 118
+db 101
+db 114
+db 101
+db 100
+db 32
+db 61
+db 0
+align 1
+L759 label byte
+db 83
+db 69
+db 82
+db 73
+db 79
+db 85
+db 83
+db 32
+db 68
+db 69
+db 70
+db 69
+db 67
+db 84
+db 115
+db 32
+db 32
+db 100
+db 105
+db 115
+db 99
+db 111
+db 118
+db 101
+db 114
+db 101
+db 100
+db 32
+db 61
+db 0
+align 1
+L758 label byte
+db 70
+db 65
+db 73
+db 76
+db 85
+db 82
+db 69
+db 115
+db 32
+db 32
+db 101
+db 110
+db 99
+db 111
+db 117
+db 110
+db 116
+db 101
+db 114
+db 101
+db 100
+db 32
+db 61
+db 0
+align 1
+L754 label byte
+db 10
+db 32
+db 32
+db 32
+db 32
+db 84
+db 114
+db 121
+db 105
+db 110
+db 103
+db 32
+db 116
+db 111
+db 32
+db 99
+db 111
+db 109
+db 112
+db 117
+db 116
+db 101
+db 32
+db 48
+db 32
+db 47
+db 32
+db 48
+db 32
+db 112
+db 114
+db 111
+db 100
+db 117
+db 99
+db 101
+db 115
+db 32
+db 46
+db 46
+db 46
+db 0
+align 1
+L753 label byte
+db 32
+db 32
+db 37
+db 46
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L750 label byte
+db 32
+db 32
+db 32
+db 32
+db 84
+db 114
+db 121
+db 105
+db 110
+db 103
+db 32
+db 116
+db 111
+db 32
+db 99
+db 111
+db 109
+db 112
+db 117
+db 116
+db 101
+db 32
+db 49
+db 32
+db 47
+db 32
+db 48
+db 32
+db 112
+db 114
+db 111
+db 100
+db 117
+db 99
+db 101
+db 115
+db 32
+db 46
+db 46
+db 46
+db 0
+align 1
+L749 label byte
+db 87
+db 104
+db 97
+db 116
+db 32
+db 109
+db 101
+db 115
+db 115
+db 97
+db 103
+db 101
+db 32
+db 97
+db 110
+db 100
+db 47
+db 111
+db 114
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 115
+db 32
+db 100
+db 111
+db 101
+db 115
+db 32
+db 68
+db 105
+db 118
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 98
+db 121
+db 32
+db 90
+db 101
+db 114
+db 111
+db 32
+db 112
+db 114
+db 111
+db 100
+db 117
+db 99
+db 101
+db 63
+db 10
+db 0
+align 1
+L748 label byte
+db 32
+db 32
+db 105
+db 110
+db 115
+db 116
+db 101
+db 97
+db 100
+db 44
+db 32
+db 88
+db 32
+db 47
+db 32
+db 88
+db 32
+db 45
+db 32
+db 49
+db 47
+db 50
+db 32
+db 45
+db 32
+db 49
+db 47
+db 50
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L747 label byte
+db 32
+db 32
+db 88
+db 32
+db 47
+db 32
+db 88
+db 32
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 115
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 49
+db 32
+db 119
+db 104
+db 101
+db 110
+db 32
+db 88
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 0
+align 1
+L742 label byte
+db 32
+db 32
+db 88
+db 32
+db 47
+db 32
+db 88
+db 32
+db 32
+db 116
+db 114
+db 97
+db 112
+db 115
+db 32
+db 119
+db 104
+db 101
+db 110
+db 32
+db 88
+db 32
+db 61
+db 32
+db 37
+db 103
+db 10
+db 0
+align 1
+L727 label byte
+db 105
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 102
+db 97
+db 114
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 49
+db 46
+db 10
+db 0
+align 1
+L726 label byte
+db 32
+db 117
+db 110
+db 98
+db 97
+db 108
+db 97
+db 110
+db 99
+db 101
+db 100
+db 32
+db 114
+db 97
+db 110
+db 103
+db 101
+db 59
+db 32
+db 85
+db 102
+db 84
+db 104
+db 111
+db 108
+db 100
+db 32
+db 42
+db 32
+db 86
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 9
+db 37
+db 115
+db 10
+db 0
+align 1
+L725 label byte
+db 66
+db 97
+db 100
+db 108
+db 121
+db 0
+align 1
+L718 label byte
+db 32
+db 105
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 102
+db 97
+db 114
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 115
+db 113
+db 114
+db 116
+db 40
+db 90
+db 41
+db 32
+db 94
+db 32
+db 50
+db 32
+db 40
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 32
+db 46
+db 10
+db 0
+align 1
+L717 label byte
+db 67
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 111
+db 110
+db 32
+db 97
+db 108
+db 108
+db 101
+db 103
+db 101
+db 115
+db 32
+db 116
+db 104
+db 97
+db 116
+db 32
+db 90
+db 32
+db 61
+db 32
+db 37
+db 49
+db 55
+db 101
+db 10
+db 0
+align 1
+L705 label byte
+db 32
+db 105
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 102
+db 97
+db 114
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 115
+db 113
+db 114
+db 116
+db 40
+db 90
+db 41
+db 32
+db 94
+db 32
+db 50
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L704 label byte
+db 67
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 111
+db 110
+db 32
+db 97
+db 108
+db 108
+db 101
+db 103
+db 101
+db 115
+db 32
+db 116
+db 104
+db 97
+db 116
+db 32
+db 119
+db 104
+db 97
+db 116
+db 32
+db 112
+db 114
+db 105
+db 110
+db 116
+db 115
+db 32
+db 97
+db 115
+db 32
+db 90
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 0
+align 1
+L687 label byte
+db 43
+db 45
+db 37
+db 103
+db 44
+db 32
+db 43
+db 45
+db 37
+db 103
+db 10
+db 97
+db 110
+db 100
+db 32
+db 43
+db 45
+db 37
+db 103
+db 32
+db 97
+db 114
+db 101
+db 32
+db 99
+db 111
+db 110
+db 102
+db 117
+db 115
+db 101
+db 100
+db 32
+db 98
+db 121
+db 32
+db 79
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 46
+db 0
+align 1
+L686 label byte
+db 67
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 111
+db 110
+db 115
+db 32
+db 105
+db 110
+db 118
+db 111
+db 108
+db 118
+db 105
+db 110
+db 103
+db 32
+db 0
+align 1
+L680 label byte
+db 97
+db 98
+db 111
+db 118
+db 101
+db 32
+db 105
+db 115
+db 32
+db 97
+db 32
+db 68
+db 69
+db 70
+db 69
+db 67
+db 84
+db 46
+db 10
+db 0
+align 1
+L679 label byte
+db 65
+db 110
+db 121
+db 32
+db 111
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 115
+db 105
+db 103
+db 110
+db 97
+db 108
+db 32
+db 115
+db 101
+db 112
+db 97
+db 114
+db 97
+db 116
+db 105
+db 110
+db 103
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 42
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 116
+db 104
+db 101
+db 32
+db 111
+db 110
+db 101
+db 10
+db 0
+align 1
+L678 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 32
+db 110
+db 111
+db 114
+db 32
+db 102
+db 111
+db 114
+db 32
+db 86
+db 32
+db 47
+db 32
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L677 label byte
+db 78
+db 111
+db 32
+db 79
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 115
+db 104
+db 111
+db 117
+db 108
+db 100
+db 32
+db 98
+db 101
+db 32
+db 115
+db 105
+db 103
+db 110
+db 97
+db 108
+db 101
+db 100
+db 32
+db 102
+db 111
+db 114
+db 32
+db 86
+db 32
+db 42
+db 32
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 0
+align 1
+L676 label byte
+db 84
+db 104
+db 101
+db 114
+db 101
+db 32
+db 105
+db 115
+db 32
+db 110
+db 111
+db 32
+db 115
+db 97
+db 116
+db 117
+db 114
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 32
+db 98
+db 101
+db 99
+db 97
+db 117
+db 115
+db 101
+db 32
+db 116
+db 104
+db 101
+db 32
+db 115
+db 121
+db 115
+db 116
+db 101
+db 109
+db 32
+db 116
+db 114
+db 97
+db 112
+db 115
+db 32
+db 111
+db 110
+db 32
+db 111
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 46
+db 10
+db 0
+align 1
+L675 label byte
+db 79
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 115
+db 97
+db 116
+db 117
+db 114
+db 97
+db 116
+db 101
+db 115
+db 32
+db 97
+db 116
+db 32
+db 86
+db 48
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L672 label byte
+db 79
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 32
+db 105
+db 115
+db 32
+db 86
+db 32
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L663 label byte
+db 111
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 112
+db 97
+db 115
+db 116
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 9
+db 115
+db 104
+db 114
+db 105
+db 110
+db 107
+db 115
+db 32
+db 116
+db 111
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L660 label byte
+db 45
+db 40
+db 45
+db 89
+db 41
+db 32
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 115
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 89
+db 46
+db 10
+db 0
+align 1
+L659 label byte
+db 102
+db 105
+db 110
+db 100
+db 115
+db 32
+db 97
+db 32
+db 0
+align 1
+L658 label byte
+db 83
+db 101
+db 101
+db 109
+db 115
+db 32
+db 79
+db 46
+db 75
+db 46
+db 10
+db 0
+align 1
+L655 label byte
+db 84
+db 114
+db 121
+db 105
+db 110
+db 103
+db 32
+db 105
+db 116
+db 32
+db 111
+db 110
+db 32
+db 89
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L654 label byte
+db 67
+db 97
+db 110
+db 32
+db 96
+db 90
+db 32
+db 61
+db 32
+db 45
+db 89
+db 39
+db 32
+db 111
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 63
+db 10
+db 0
+align 1
+L647 label byte
+db 84
+db 104
+db 105
+db 115
+db 32
+db 109
+db 97
+db 121
+db 32
+db 103
+db 101
+db 110
+db 101
+db 114
+db 97
+db 116
+db 101
+db 32
+db 97
+db 110
+db 32
+db 101
+db 114
+db 114
+db 111
+db 114
+db 46
+db 10
+db 0
+align 1
+L646 label byte
+db 83
+db 101
+db 97
+db 114
+db 99
+db 104
+db 105
+db 110
+db 103
+db 32
+db 102
+db 111
+db 114
+db 32
+db 79
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 58
+db 10
+db 0
+align 1
+L645 label byte
+db 32
+db 46
+db 46
+db 46
+db 32
+db 110
+db 111
+db 32
+db 100
+db 105
+db 115
+db 99
+db 114
+db 101
+db 112
+db 97
+db 110
+db 99
+db 105
+db 101
+db 115
+db 32
+db 102
+db 111
+db 117
+db 110
+db 100
+db 46
+db 10
+db 0
+align 1
+L637 label byte
+db 84
+db 101
+db 115
+db 116
+db 105
+db 110
+db 103
+db 32
+db 112
+db 111
+db 119
+db 101
+db 114
+db 115
+db 32
+db 90
+db 94
+db 81
+db 32
+db 97
+db 116
+db 32
+db 102
+db 111
+db 117
+db 114
+db 32
+db 110
+db 101
+db 97
+db 114
+db 108
+db 121
+db 32
+db 101
+db 120
+db 116
+db 114
+db 101
+db 109
+db 101
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 115
+db 46
+db 10
+db 0
+align 1
+L636 label byte
+db 65
+db 99
+db 99
+db 117
+db 114
+db 97
+db 99
+db 121
+db 32
+db 115
+db 101
+db 101
+db 109
+db 115
+db 32
+db 97
+db 100
+db 101
+db 113
+db 117
+db 97
+db 116
+db 101
+db 46
+db 10
+db 0
+align 1
+L629 label byte
+db 9
+db 99
+db 97
+db 108
+db 99
+db 117
+db 108
+db 97
+db 116
+db 105
+db 111
+db 110
+db 115
+db 32
+db 105
+db 110
+db 118
+db 111
+db 108
+db 118
+db 105
+db 110
+db 103
+db 32
+db 116
+db 105
+db 110
+db 121
+db 32
+db 105
+db 110
+db 116
+db 101
+db 114
+db 101
+db 115
+db 116
+db 32
+db 114
+db 97
+db 116
+db 101
+db 115
+db 46
+db 10
+db 0
+align 1
+L628 label byte
+db 9
+db 84
+db 104
+db 105
+db 115
+db 32
+db 109
+db 117
+db 99
+db 104
+db 32
+db 101
+db 114
+db 114
+db 111
+db 114
+db 32
+db 109
+db 97
+db 121
+db 32
+db 115
+db 112
+db 111
+db 105
+db 108
+db 32
+db 102
+db 105
+db 110
+db 97
+db 110
+db 99
+db 105
+db 97
+db 108
+db 10
+db 0
+align 1
+L627 label byte
+db 9
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 115
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 32
+db 98
+db 121
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L626 label byte
+db 9
+db 40
+db 49
+db 32
+db 43
+db 32
+db 40
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 32
+db 94
+db 32
+db 40
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 59
+db 10
+db 0
+align 1
+L625 label byte
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 102
+db 111
+db 114
+db 10
+db 0
+align 1
+L624 label byte
+db 67
+db 97
+db 108
+db 99
+db 117
+db 108
+db 97
+db 116
+db 101
+db 100
+db 0
+align 1
+L617 label byte
+db 84
+db 101
+db 115
+db 116
+db 105
+db 110
+db 103
+db 32
+db 88
+db 94
+db 40
+db 40
+db 88
+db 32
+db 43
+db 32
+db 49
+db 41
+db 32
+db 47
+db 32
+db 40
+db 88
+db 32
+db 45
+db 32
+db 49
+db 41
+db 41
+db 32
+db 118
+db 115
+db 46
+db 32
+db 101
+db 120
+db 112
+db 40
+db 50
+db 41
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 97
+db 115
+db 32
+db 88
+db 32
+db 45
+db 62
+db 32
+db 49
+db 46
+db 10
+db 0
+align 1
+L613 label byte
+db 84
+db 104
+db 105
+db 115
+db 32
+db 99
+db 111
+db 109
+db 112
+db 117
+db 116
+db 101
+db 100
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 32
+db 105
+db 115
+db 32
+db 79
+db 46
+db 75
+db 46
+db 10
+db 0
+align 1
+L610 label byte
+db 32
+db 32
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L609 label byte
+db 116
+db 104
+db 105
+db 115
+db 32
+db 105
+db 115
+db 32
+db 110
+db 111
+db 116
+db 32
+db 98
+db 101
+db 116
+db 119
+db 101
+db 101
+db 110
+db 32
+db 48
+db 32
+db 97
+db 110
+db 100
+db 32
+db 117
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 10
+db 0
+align 1
+L605 label byte
+db 97
+db 99
+db 116
+db 117
+db 97
+db 108
+db 108
+db 121
+db 32
+db 99
+db 97
+db 108
+db 99
+db 117
+db 108
+db 97
+db 116
+db 105
+db 110
+db 103
+db 32
+db 121
+db 105
+db 101
+db 108
+db 100
+db 115
+db 58
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L604 label byte
+db 115
+db 104
+db 111
+db 117
+db 108
+db 100
+db 32
+db 97
+db 102
+db 102
+db 108
+db 105
+db 99
+db 116
+db 32
+db 116
+db 104
+db 101
+db 32
+db 101
+db 120
+db 112
+db 114
+db 101
+db 115
+db 115
+db 105
+db 111
+db 110
+db 10
+db 9
+db 40
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 32
+db 94
+db 32
+db 40
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 59
+db 10
+db 0
+align 1
+L603 label byte
+db 85
+db 102
+db 84
+db 104
+db 111
+db 108
+db 100
+db 32
+db 61
+db 32
+db 40
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 32
+db 94
+db 32
+db 40
+db 37
+db 46
+db 49
+db 55
+db 101
+db 41
+db 10
+db 111
+db 110
+db 108
+db 121
+db 32
+db 117
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 0
+align 1
+L602 label byte
+db 83
+db 105
+db 110
+db 99
+db 101
+db 32
+db 117
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 111
+db 99
+db 99
+db 117
+db 114
+db 115
+db 32
+db 98
+db 101
+db 108
+db 111
+db 119
+db 32
+db 116
+db 104
+db 101
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 10
+db 0
+align 1
+L601 label byte
+db 82
+db 97
+db 110
+db 103
+db 101
+db 32
+db 105
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 110
+db 97
+db 114
+db 114
+db 111
+db 119
+db 59
+db 32
+db 85
+db 49
+db 94
+db 37
+db 100
+db 32
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 115
+db 46
+db 10
+db 0
+align 1
+L596 label byte
+db 109
+db 101
+db 114
+db 101
+db 108
+db 121
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 111
+db 102
+db 102
+db 46
+db 10
+db 0
+align 1
+L595 label byte
+db 99
+db 97
+db 108
+db 99
+db 117
+db 108
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 109
+db 97
+db 121
+db 32
+db 115
+db 117
+db 102
+db 102
+db 101
+db 114
+db 32
+db 108
+db 97
+db 114
+db 103
+db 101
+db 114
+db 32
+db 82
+db 101
+db 108
+db 97
+db 116
+db 105
+db 118
+db 101
+db 32
+db 101
+db 114
+db 114
+db 111
+db 114
+db 32
+db 116
+db 104
+db 97
+db 110
+db 32
+db 0
+align 1
+L594 label byte
+db 32
+db 98
+db 101
+db 108
+db 111
+db 119
+db 32
+db 119
+db 104
+db 105
+db 99
+db 104
+db 0
+align 1
+L593 label byte
+db 84
+db 104
+db 101
+db 32
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 32
+db 105
+db 115
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 44
+db 32
+db 37
+db 115
+db 10
+db 0
+align 1
+L592 label byte
+db 88
+db 32
+db 47
+db 32
+db 90
+db 32
+db 61
+db 32
+db 49
+db 32
+db 43
+db 32
+db 37
+db 103
+db 32
+db 46
+db 10
+db 0
+align 1
+L591 label byte
+db 88
+db 32
+db 47
+db 32
+db 90
+db 32
+db 102
+db 97
+db 105
+db 108
+db 115
+db 33
+db 10
+db 0
+align 1
+L588 label byte
+db 101
+db 110
+db 99
+db 111
+db 117
+db 110
+db 116
+db 101
+db 114
+db 32
+db 68
+db 105
+db 118
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 98
+db 121
+db 32
+db 90
+db 101
+db 114
+db 111
+db 32
+db 97
+db 108
+db 116
+db 104
+db 111
+db 117
+db 103
+db 104
+db 32
+db 97
+db 99
+db 116
+db 117
+db 97
+db 108
+db 108
+db 121
+db 10
+db 0
+align 1
+L587 label byte
+db 32
+db 32
+db 46
+db 46
+db 46
+db 32
+db 40
+db 102
+db 40
+db 88
+db 41
+db 32
+db 45
+db 32
+db 102
+db 40
+db 90
+db 41
+db 41
+db 32
+db 47
+db 32
+db 40
+db 88
+db 32
+db 45
+db 32
+db 90
+db 41
+db 32
+db 46
+db 46
+db 46
+db 10
+db 0
+align 1
+L586 label byte
+db 32
+db 32
+db 32
+db 32
+db 105
+db 102
+db 32
+db 40
+db 88
+db 32
+db 61
+db 61
+db 32
+db 90
+db 41
+db 32
+db 32
+db 46
+db 46
+db 46
+db 32
+db 32
+db 101
+db 108
+db 115
+db 101
+db 0
+align 1
+L585 label byte
+db 99
+db 111
+db 110
+db 102
+db 117
+db 115
+db 105
+db 111
+db 110
+db 32
+db 119
+db 104
+db 101
+db 110
+db 32
+db 105
+db 110
+db 110
+db 111
+db 99
+db 101
+db 110
+db 116
+db 32
+db 115
+db 116
+db 97
+db 116
+db 101
+db 109
+db 101
+db 110
+db 116
+db 115
+db 32
+db 108
+db 105
+db 107
+db 101
+db 10
+db 0
+align 1
+L584 label byte
+db 116
+db 104
+db 105
+db 115
+db 32
+db 105
+db 115
+db 32
+db 97
+db 32
+db 83
+db 69
+db 82
+db 73
+db 79
+db 85
+db 83
+db 32
+db 68
+db 69
+db 70
+db 69
+db 67
+db 84
+db 10
+db 116
+db 104
+db 97
+db 116
+db 32
+db 99
+db 97
+db 117
+db 115
+db 101
+db 115
+db 32
+db 0
+align 1
+L583 label byte
+db 32
+db 32
+db 32
+db 32
+db 83
+db 104
+db 111
+db 117
+db 108
+db 100
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 78
+db 79
+db 84
+db 32
+db 115
+db 105
+db 103
+db 110
+db 97
+db 108
+db 32
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 44
+db 32
+db 0
+align 1
+L582 label byte
+db 121
+db 101
+db 116
+db 32
+db 88
+db 32
+db 45
+db 32
+db 90
+db 32
+db 121
+db 105
+db 101
+db 108
+db 100
+db 115
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L581 label byte
+db 88
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 9
+db 105
+db 115
+db 32
+db 110
+db 111
+db 116
+db 32
+db 101
+db 113
+db 117
+db 97
+db 108
+db 32
+db 116
+db 111
+db 32
+db 90
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L576 label byte
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 47
+db 32
+db 85
+db 102
+db 84
+db 104
+db 111
+db 108
+db 100
+db 32
+db 102
+db 97
+db 105
+db 108
+db 101
+db 100
+db 33
+db 10
+db 0
+align 1
+L566 label byte
+db 40
+db 114
+db 111
+db 117
+db 110
+db 100
+db 111
+db 102
+db 102
+db 32
+db 105
+db 110
+db 32
+db 85
+db 102
+db 84
+db 104
+db 111
+db 108
+db 100
+db 41
+db 32
+db 60
+db 32
+db 69
+db 48
+db 46
+db 10
+db 0
+align 1
+L565 label byte
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 105
+db 115
+db 32
+db 103
+db 114
+db 97
+db 100
+db 117
+db 97
+db 108
+db 59
+db 32
+db 105
+db 116
+db 32
+db 105
+db 110
+db 99
+db 117
+db 114
+db 115
+db 32
+db 65
+db 98
+db 115
+db 111
+db 108
+db 117
+db 116
+db 101
+db 32
+db 69
+db 114
+db 114
+db 111
+db 114
+db 32
+db 61
+db 10
+db 0
+align 1
+L560 label byte
+db 124
+db 81
+db 32
+db 45
+db 32
+db 89
+db 124
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L559 label byte
+db 112
+db 114
+db 105
+db 110
+db 116
+db 32
+db 111
+db 117
+db 116
+db 32
+db 97
+db 115
+db 32
+db 81
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 44
+db 32
+db 89
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L558 label byte
+db 81
+db 32
+db 61
+db 61
+db 32
+db 89
+db 32
+db 119
+db 104
+db 105
+db 108
+db 101
+db 32
+db 100
+db 101
+db 110
+db 121
+db 105
+db 110
+db 103
+db 32
+db 116
+db 104
+db 97
+db 116
+db 32
+db 124
+db 81
+db 32
+db 45
+db 32
+db 89
+db 124
+db 32
+db 61
+db 61
+db 32
+db 48
+db 59
+db 32
+db 116
+db 104
+db 101
+db 115
+db 101
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 115
+db 10
+db 0
+align 1
+L557 label byte
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 99
+db 111
+db 110
+db 102
+db 117
+db 115
+db 101
+db 115
+db 32
+db 67
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 111
+db 110
+db 44
+db 32
+db 119
+db 104
+db 105
+db 99
+db 104
+db 32
+db 97
+db 108
+db 108
+db 101
+db 103
+db 101
+db 115
+db 32
+db 116
+db 104
+db 97
+db 116
+db 10
+db 0
+align 1
+L555 label byte
+db 32
+db 111
+db 114
+db 32
+db 101
+db 108
+db 115
+db 101
+db 32
+db 109
+db 117
+db 108
+db 116
+db 105
+db 112
+db 108
+db 105
+db 99
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 103
+db 101
+db 116
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 109
+db 97
+db 110
+db 121
+db 32
+db 108
+db 97
+db 115
+db 116
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 119
+db 114
+db 111
+db 110
+db 103
+db 46
+db 10
+db 0
+align 1
+L554 label byte
+db 32
+db 99
+db 111
+db 109
+db 105
+db 110
+db 103
+db 32
+db 100
+db 111
+db 119
+db 110
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 0
+align 1
+L553 label byte
+db 97
+db 112
+db 112
+db 114
+db 111
+db 97
+db 99
+db 104
+db 32
+db 97
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 32
+db 61
+db 32
+db 37
+db 46
+db 49
+db 55
+db 101
+db 10
+db 0
+align 1
+L552 label byte
+db 69
+db 105
+db 116
+db 104
+db 101
+db 114
+db 32
+db 97
+db 99
+db 99
+db 117
+db 114
+db 97
+db 99
+db 121
+db 32
+db 100
+db 101
+db 116
+db 101
+db 114
+db 105
+db 111
+db 114
+db 97
+db 116
+db 101
+db 115
+db 32
+db 97
+db 115
+db 32
+db 110
+db 117
+db 109
+db 98
+db 101
+db 114
+db 115
+db 10
+db 0
+align 1
+L540 label byte
+db 83
+db 109
+db 97
+db 108
+db 108
+db 101
+db 115
+db 116
+db 32
+db 115
+db 116
+db 114
+db 105
+db 99
+db 116
+db 108
+db 121
+db 32
+db 112
+db 111
+db 115
+db 105
+db 116
+db 105
+db 118
+db 101
+db 32
+db 110
+db 117
+db 109
+db 98
+db 101
+db 114
+db 32
+db 102
+db 111
+db 117
+db 110
+db 100
+db 32
+db 105
+db 115
+db 32
+db 69
+db 48
+db 32
+db 61
+db 32
+db 37
+db 103
+db 32
+db 46
+db 10
+db 0
+align 1
+L539 label byte
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 32
+db 116
+db 104
+db 97
+db 110
+db 32
+db 112
+db 114
+db 111
+db 100
+db 117
+db 99
+db 116
+db 115
+db 46
+db 10
+db 0
+align 1
+L538 label byte
+db 68
+db 105
+db 102
+db 102
+db 101
+db 114
+db 101
+db 110
+db 99
+db 101
+db 32
+db 117
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 115
+db 32
+db 97
+db 116
+db 32
+db 97
+db 32
+db 104
+db 105
+db 103
+db 104
+db 101
+db 114
+db 0
+align 1
+L535 label byte
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 32
+db 116
+db 104
+db 97
+db 110
+db 32
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 101
+db 110
+db 99
+db 101
+db 115
+db 46
+db 10
+db 0
+align 1
+L534 label byte
+db 80
+db 114
+db 111
+db 100
+db 117
+db 99
+db 116
+db 115
+db 32
+db 117
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 97
+db 116
+db 32
+db 97
+db 32
+db 104
+db 105
+db 103
+db 104
+db 101
+db 114
+db 0
+align 1
+L527 label byte
+db 118
+db 97
+db 108
+db 117
+db 101
+db 32
+db 80
+db 115
+db 101
+db 117
+db 100
+db 111
+db 90
+db 101
+db 114
+db 111
+db 32
+db 116
+db 104
+db 97
+db 116
+db 32
+db 112
+db 114
+db 105
+db 110
+db 116
+db 115
+db 32
+db 111
+db 117
+db 116
+db 32
+db 97
+db 115
+db 32
+db 37
+db 103
+db 32
+db 46
+db 10
+db 0
+align 1
+L526 label byte
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 99
+db 97
+db 110
+db 32
+db 115
+db 116
+db 105
+db 99
+db 107
+db 32
+db 97
+db 116
+db 32
+db 97
+db 110
+db 32
+db 97
+db 108
+db 108
+db 101
+db 103
+db 101
+db 100
+db 108
+db 121
+db 32
+db 112
+db 111
+db 115
+db 105
+db 116
+db 105
+db 118
+db 101
+db 10
+db 0
+align 1
+L525 label byte
+db 112
+db 111
+db 115
+db 105
+db 116
+db 105
+db 118
+db 101
+db 44
+db 32
+db 105
+db 115
+db 110
+db 39
+db 116
+db 59
+db 32
+db 105
+db 116
+db 32
+db 112
+db 114
+db 105
+db 110
+db 116
+db 115
+db 32
+db 111
+db 117
+db 116
+db 32
+db 97
+db 115
+db 32
+db 32
+db 37
+db 103
+db 32
+db 46
+db 10
+db 0
+align 1
+L524 label byte
+db 66
+db 117
+db 116
+db 32
+db 45
+db 80
+db 115
+db 101
+db 117
+db 100
+db 111
+db 90
+db 101
+db 114
+db 111
+db 44
+db 32
+db 119
+db 104
+db 105
+db 99
+db 104
+db 32
+db 115
+db 104
+db 111
+db 117
+db 108
+db 100
+db 32
+db 98
+db 101
+db 10
+db 0
+align 1
+L521 label byte
+db 80
+db 115
+db 101
+db 117
+db 100
+db 111
+db 90
+db 101
+db 114
+db 111
+db 32
+db 116
+db 104
+db 97
+db 116
+db 32
+db 112
+db 114
+db 105
+db 110
+db 116
+db 115
+db 32
+db 111
+db 117
+db 116
+db 32
+db 97
+db 115
+db 58
+db 32
+db 37
+db 103
+db 32
+db 46
+db 10
+db 0
+align 1
+L520 label byte
+db 97
+db 108
+db 108
+db 101
+db 103
+db 101
+db 100
+db 108
+db 121
+db 32
+db 110
+db 101
+db 103
+db 97
+db 116
+db 105
+db 118
+db 101
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 10
+db 0
+align 1
+L519 label byte
+db 80
+db 111
+db 115
+db 105
+db 116
+db 105
+db 118
+db 101
+db 32
+db 101
+db 120
+db 112
+db 114
+db 101
+db 115
+db 115
+db 105
+db 111
+db 110
+db 115
+db 32
+db 99
+db 97
+db 110
+db 32
+db 117
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 116
+db 111
+db 32
+db 97
+db 110
+db 10
+db 0
+align 1
+L506 label byte
+db 109
+db 117
+db 108
+db 116
+db 105
+db 112
+db 108
+db 105
+db 99
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 103
+db 101
+db 116
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 109
+db 97
+db 110
+db 121
+db 32
+db 108
+db 97
+db 115
+db 116
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 119
+db 114
+db 111
+db 110
+db 103
+db 46
+db 10
+db 0
+align 1
+L482 label byte
+db 83
+db 101
+db 101
+db 107
+db 105
+db 110
+db 103
+db 32
+db 85
+db 110
+db 100
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 32
+db 116
+db 104
+db 114
+db 101
+db 115
+db 104
+db 111
+db 108
+db 100
+db 115
+db 32
+db 85
+db 102
+db 84
+db 104
+db 111
+db 108
+db 100
+db 32
+db 97
+db 110
+db 100
+db 32
+db 69
+db 48
+db 46
+db 10
+db 0
+align 1
+L479 label byte
+db 46
+db 46
+db 46
+db 32
+db 110
+db 111
+db 32
+db 100
+db 105
+db 115
+db 99
+db 114
+db 101
+db 112
+db 97
+db 110
+db 99
+db 105
+db 115
+db 32
+db 102
+db 111
+db 117
+db 110
+db 100
+db 46
+db 10
+db 0
+align 1
+L476 label byte
+db 9
+db 105
+db 110
+db 118
+db 111
+db 108
+db 118
+db 105
+db 110
+db 103
+db 32
+db 105
+db 110
+db 116
+db 101
+db 114
+db 101
+db 115
+db 116
+db 32
+db 114
+db 97
+db 116
+db 101
+db 115
+db 46
+db 10
+db 0
+align 1
+L475 label byte
+db 69
+db 114
+db 114
+db 111
+db 114
+db 115
+db 32
+db 108
+db 105
+db 107
+db 101
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 109
+db 97
+db 121
+db 32
+db 105
+db 110
+db 118
+db 97
+db 108
+db 105
+db 100
+db 97
+db 116
+db 101
+db 32
+db 102
+db 105
+db 110
+db 97
+db 110
+db 99
+db 105
+db 97
+db 108
+db 32
+db 99
+db 97
+db 108
+db 99
+db 117
+db 108
+db 97
+db 116
+db 105
+db 111
+db 110
+db 115
+db 10
+db 0
+align 1
+L454 label byte
+db 84
+db 101
+db 115
+db 116
+db 105
+db 110
+db 103
+db 32
+db 112
+db 111
+db 119
+db 101
+db 114
+db 115
+db 32
+db 90
+db 94
+db 105
+db 32
+db 102
+db 111
+db 114
+db 32
+db 115
+db 109
+db 97
+db 108
+db 108
+db 32
+db 73
+db 110
+db 116
+db 101
+db 103
+db 101
+db 114
+db 115
+db 32
+db 90
+db 32
+db 97
+db 110
+db 100
+db 32
+db 105
+db 46
+db 10
+db 0
+align 1
+L451 label byte
+db 115
+db 113
+db 114
+db 116
+db 32
+db 103
+db 101
+db 116
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 109
+db 97
+db 110
+db 121
+db 32
+db 108
+db 97
+db 115
+db 116
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 119
+db 114
+db 111
+db 110
+db 103
+db 0
+align 1
+L449 label byte
+db 116
+db 111
+db 32
+db 37
+db 46
+db 55
+db 101
+db 32
+db 117
+db 108
+db 112
+db 115
+db 46
+db 10
+db 0
+align 1
+L448 label byte
+db 79
+db 98
+db 115
+db 101
+db 114
+db 118
+db 101
+db 100
+db 32
+db 101
+db 114
+db 114
+db 111
+db 114
+db 115
+db 32
+db 114
+db 117
+db 110
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 37
+db 46
+db 55
+db 101
+db 32
+db 0
+align 1
+L447 label byte
+db 83
+db 113
+db 117
+db 97
+db 114
+db 101
+db 32
+db 114
+db 111
+db 111
+db 116
+db 32
+db 105
+db 115
+db 32
+db 110
+db 101
+db 105
+db 116
+db 104
+db 101
+db 114
+db 32
+db 99
+db 104
+db 111
+db 112
+db 112
+db 101
+db 100
+db 32
+db 110
+db 111
+db 114
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L444 label byte
+db 83
+db 113
+db 117
+db 97
+db 114
+db 101
+db 32
+db 114
+db 111
+db 111
+db 116
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 98
+db 101
+db 32
+db 99
+db 104
+db 111
+db 112
+db 112
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L439 label byte
+db 83
+db 113
+db 117
+db 97
+db 114
+db 101
+db 32
+db 114
+db 111
+db 111
+db 116
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 98
+db 101
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L434 label byte
+db 32
+db 102
+db 97
+db 105
+db 108
+db 115
+db 32
+db 116
+db 101
+db 115
+db 116
+db 32
+db 119
+db 104
+db 101
+db 116
+db 104
+db 101
+db 114
+db 32
+db 115
+db 113
+db 114
+db 116
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 115
+db 32
+db 111
+db 114
+db 32
+db 99
+db 104
+db 111
+db 112
+db 115
+db 46
+db 10
+db 0
+align 1
+L433 label byte
+db 82
+db 97
+db 100
+db 105
+db 120
+db 94
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 10
+db 0
+align 1
+L432 label byte
+db 65
+db 110
+db 111
+db 109
+db 97
+db 108
+db 111
+db 117
+db 115
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 119
+db 105
+db 116
+db 104
+db 32
+db 73
+db 110
+db 116
+db 101
+db 103
+db 101
+db 114
+db 32
+db 60
+db 32
+db 0
+align 1
+L392 label byte
+db 84
+db 101
+db 115
+db 116
+db 105
+db 110
+db 103
+db 32
+db 119
+db 104
+db 101
+db 116
+db 104
+db 101
+db 114
+db 32
+db 115
+db 113
+db 114
+db 116
+db 32
+db 105
+db 115
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 101
+db 100
+db 32
+db 111
+db 114
+db 32
+db 99
+db 104
+db 111
+db 112
+db 112
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L370 label byte
+db 115
+db 113
+db 114
+db 116
+db 40
+db 88
+db 41
+db 32
+db 105
+db 115
+db 32
+db 110
+db 111
+db 110
+db 45
+db 109
+db 111
+db 110
+db 111
+db 116
+db 111
+db 110
+db 105
+db 99
+db 32
+db 102
+db 111
+db 114
+db 32
+db 88
+db 32
+db 110
+db 101
+db 97
+db 114
+db 32
+db 37
+db 46
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L369 label byte
+db 115
+db 113
+db 114
+db 116
+db 32
+db 104
+db 97
+db 115
+db 32
+db 112
+db 97
+db 115
+db 115
+db 101
+db 100
+db 32
+db 97
+db 32
+db 116
+db 101
+db 115
+db 116
+db 32
+db 102
+db 111
+db 114
+db 32
+db 77
+db 111
+db 110
+db 111
+db 116
+db 111
+db 110
+db 105
+db 99
+db 105
+db 116
+db 121
+db 46
+db 10
+db 0
+align 1
+L352 label byte
+db 84
+db 101
+db 115
+db 116
+db 32
+db 102
+db 111
+db 114
+db 32
+db 115
+db 113
+db 114
+db 116
+db 32
+db 109
+db 111
+db 110
+db 111
+db 116
+db 111
+db 110
+db 105
+db 99
+db 105
+db 116
+db 121
+db 46
+db 10
+db 0
+align 1
+L341 label byte
+db 84
+db 101
+db 115
+db 116
+db 105
+db 110
+db 103
+db 32
+db 105
+db 102
+db 32
+db 115
+db 113
+db 114
+db 116
+db 40
+db 88
+db 32
+db 42
+db 32
+db 88
+db 41
+db 32
+db 61
+db 61
+db 32
+db 88
+db 32
+db 102
+db 111
+db 114
+db 32
+db 37
+db 100
+db 32
+db 73
+db 110
+db 116
+db 101
+db 103
+db 101
+db 114
+db 115
+db 32
+db 88
+db 46
+db 10
+db 0
+align 1
+L336 label byte
+db 83
+db 113
+db 117
+db 97
+db 114
+db 101
+db 32
+db 114
+db 111
+db 111
+db 116
+db 32
+db 111
+db 102
+db 32
+db 48
+db 46
+db 48
+db 44
+db 32
+db 45
+db 48
+db 46
+db 48
+db 32
+db 111
+db 114
+db 32
+db 49
+db 46
+db 48
+db 32
+db 119
+db 114
+db 111
+db 110
+db 103
+db 0
+align 1
+L334 label byte
+db 10
+db 82
+db 117
+db 110
+db 110
+db 105
+db 110
+db 103
+db 32
+db 116
+db 101
+db 115
+db 116
+db 32
+db 111
+db 102
+db 32
+db 115
+db 113
+db 117
+db 97
+db 114
+db 101
+db 32
+db 114
+db 111
+db 111
+db 116
+db 40
+db 120
+db 41
+db 46
+db 10
+db 0
+align 1
+L333 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 78
+db 111
+db 32
+db 102
+db 97
+db 105
+db 108
+db 117
+db 114
+db 101
+db 115
+db 32
+db 102
+db 111
+db 117
+db 110
+db 100
+db 32
+db 105
+db 110
+db 32
+db 37
+db 100
+db 32
+db 105
+db 110
+db 116
+db 101
+db 103
+db 101
+db 114
+db 32
+db 112
+db 97
+db 105
+db 114
+db 115
+db 46
+db 10
+db 0
+align 1
+L332 label byte
+db 88
+db 32
+db 42
+db 32
+db 89
+db 32
+db 61
+db 61
+db 32
+db 89
+db 32
+db 42
+db 32
+db 88
+db 32
+db 116
+db 114
+db 105
+db 97
+db 108
+db 32
+db 102
+db 97
+db 105
+db 108
+db 115
+db 46
+db 10
+db 0
+align 4
+L323 label byte
+dd 00H
+dd 040080000H
+align 1
+L322 label byte
+db 84
+db 101
+db 115
+db 116
+db 105
+db 110
+db 103
+db 32
+db 111
+db 110
+db 32
+db 37
+db 100
+db 32
+db 114
+db 97
+db 110
+db 100
+db 111
+db 109
+db 32
+db 112
+db 97
+db 105
+db 114
+db 115
+db 46
+db 10
+db 0
+align 1
+L321 label byte
+db 68
+db 111
+db 101
+db 115
+db 32
+db 77
+db 117
+db 108
+db 116
+db 105
+db 112
+db 108
+db 105
+db 99
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 99
+db 111
+db 109
+db 109
+db 117
+db 116
+db 101
+db 63
+db 32
+db 32
+db 0
+align 1
+L318 label byte
+db 108
+db 97
+db 99
+db 107
+db 40
+db 115
+db 41
+db 32
+db 111
+db 102
+db 32
+db 103
+db 117
+db 97
+db 114
+db 100
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 111
+db 114
+db 32
+db 102
+db 97
+db 105
+db 108
+db 117
+db 114
+db 101
+db 40
+db 115
+db 41
+db 32
+db 116
+db 111
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 32
+db 111
+db 114
+db 32
+db 99
+db 104
+db 111
+db 112
+db 10
+db 40
+db 110
+db 111
+db 116
+db 101
+db 100
+db 32
+db 97
+db 98
+db 111
+db 118
+db 101
+db 41
+db 32
+db 99
+db 111
+db 117
+db 110
+db 116
+db 32
+db 97
+db 115
+db 32
+db 111
+db 110
+db 101
+db 32
+db 102
+db 108
+db 97
+db 119
+db 32
+db 105
+db 110
+db 32
+db 116
+db 104
+db 101
+db 32
+db 102
+db 105
+db 110
+db 97
+db 108
+db 32
+db 116
+db 97
+db 108
+db 108
+db 121
+db 32
+db 98
+db 101
+db 108
+db 111
+db 119
+db 0
+align 1
+L316 label byte
+db 83
+db 116
+db 105
+db 99
+db 107
+db 121
+db 32
+db 98
+db 105
+db 116
+db 32
+db 117
+db 115
+db 101
+db 100
+db 32
+db 105
+db 110
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 32
+db 111
+db 114
+db 32
+db 110
+db 111
+db 116
+db 32
+db 97
+db 116
+db 32
+db 97
+db 108
+db 108
+db 46
+db 10
+db 0
+align 1
+L315 label byte
+db 83
+db 116
+db 105
+db 99
+db 107
+db 121
+db 32
+db 98
+db 105
+db 116
+db 32
+db 97
+db 112
+db 112
+db 97
+db 114
+db 101
+db 110
+db 116
+db 108
+db 121
+db 32
+db 117
+db 115
+db 101
+db 100
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 46
+db 10
+db 0
+align 1
+L298 label byte
+db 67
+db 104
+db 101
+db 99
+db 107
+db 105
+db 110
+db 103
+db 32
+db 102
+db 111
+db 114
+db 32
+db 115
+db 116
+db 105
+db 99
+db 107
+db 121
+db 32
+db 98
+db 105
+db 116
+db 46
+db 10
+db 0
+align 1
+L295 label byte
+db 40
+db 88
+db 32
+db 45
+db 32
+db 89
+db 41
+db 32
+db 43
+db 32
+db 40
+db 89
+db 32
+db 45
+db 32
+db 88
+db 41
+db 32
+db 105
+db 115
+db 32
+db 110
+db 111
+db 110
+db 32
+db 122
+db 101
+db 114
+db 111
+db 33
+db 10
+db 0
+align 1
+L292 label byte
+db 65
+db 100
+db 100
+db 105
+db 116
+db 105
+db 111
+db 110
+db 47
+db 83
+db 117
+db 98
+db 116
+db 114
+db 97
+db 99
+db 116
+db 105
+db 111
+db 110
+db 32
+db 110
+db 101
+db 105
+db 116
+db 104
+db 101
+db 114
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 115
+db 32
+db 110
+db 111
+db 114
+db 32
+db 99
+db 104
+db 111
+db 112
+db 115
+db 46
+db 10
+db 0
+align 1
+L291 label byte
+db 65
+db 100
+db 100
+db 47
+db 83
+db 117
+db 98
+db 116
+db 114
+db 97
+db 99
+db 116
+db 0
+align 1
+L288 label byte
+db 65
+db 100
+db 100
+db 105
+db 116
+db 105
+db 111
+db 110
+db 47
+db 83
+db 117
+db 98
+db 116
+db 114
+db 97
+db 99
+db 116
+db 105
+db 111
+db 110
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 46
+db 10
+db 0
+align 1
+L281 label byte
+db 65
+db 100
+db 100
+db 47
+db 83
+db 117
+db 98
+db 116
+db 114
+db 97
+db 99
+db 116
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 98
+db 101
+db 32
+db 99
+db 104
+db 111
+db 112
+db 112
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L276 label byte
+db 73
+db 110
+db 99
+db 111
+db 109
+db 112
+db 108
+db 101
+db 116
+db 101
+db 32
+db 99
+db 97
+db 114
+db 114
+db 121
+db 45
+db 112
+db 114
+db 111
+db 112
+db 97
+db 103
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 105
+db 110
+db 32
+db 65
+db 100
+db 100
+db 105
+db 116
+db 105
+db 111
+db 110
+db 0
+align 1
+L272 label byte
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 42
+db 32
+db 40
+db 32
+db 49
+db 32
+db 47
+db 32
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 41
+db 32
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 115
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 49
+db 0
+align 1
+L270 label byte
+db 47
+db 32
+db 105
+db 115
+db 32
+db 110
+db 101
+db 105
+db 116
+db 104
+db 101
+db 114
+db 32
+db 99
+db 104
+db 111
+db 112
+db 112
+db 101
+db 100
+db 32
+db 110
+db 111
+db 114
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L267 label byte
+db 68
+db 105
+db 118
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 99
+db 104
+db 111
+db 112
+db 46
+db 10
+db 0
+align 1
+L264 label byte
+db 68
+db 105
+db 118
+db 105
+db 115
+db 105
+db 111
+db 110
+db 0
+align 1
+L261 label byte
+db 68
+db 105
+db 118
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 46
+db 10
+db 0
+align 1
+L256 label byte
+db 77
+db 117
+db 108
+db 116
+db 105
+db 112
+db 108
+db 105
+db 99
+db 97
+db 116
+db 105
+db 111
+db 110
+db 0
+align 1
+L253 label byte
+db 42
+db 32
+db 105
+db 115
+db 32
+db 110
+db 101
+db 105
+db 116
+db 104
+db 101
+db 114
+db 32
+db 99
+db 104
+db 111
+db 112
+db 112
+db 101
+db 100
+db 32
+db 110
+db 111
+db 114
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 101
+db 100
+db 46
+db 10
+db 0
+align 1
+L252 label byte
+db 77
+db 117
+db 108
+db 116
+db 105
+db 112
+db 108
+db 105
+db 99
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 99
+db 104
+db 111
+db 112
+db 46
+db 10
+db 0
+align 1
+L249 label byte
+db 77
+db 117
+db 108
+db 116
+db 105
+db 112
+db 108
+db 105
+db 99
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 32
+db 99
+db 111
+db 114
+db 114
+db 101
+db 99
+db 116
+db 108
+db 121
+db 46
+db 10
+db 0
+align 1
+L239 label byte
+db 88
+db 32
+db 42
+db 32
+db 40
+db 49
+db 47
+db 88
+db 41
+db 32
+db 100
+db 105
+db 102
+db 102
+db 101
+db 114
+db 115
+db 32
+db 102
+db 114
+db 111
+db 109
+db 32
+db 49
+db 0
+align 1
+L220 label byte
+db 67
+db 104
+db 101
+db 99
+db 107
+db 105
+db 110
+db 103
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 105
+db 110
+db 103
+db 32
+db 111
+db 110
+db 32
+db 109
+db 117
+db 108
+db 116
+db 105
+db 112
+db 108
+db 121
+db 44
+db 32
+db 100
+db 105
+db 118
+db 105
+db 100
+db 101
+db 32
+db 97
+db 110
+db 100
+db 32
+db 97
+db 100
+db 100
+db 47
+db 115
+db 117
+db 98
+db 116
+db 114
+db 97
+db 99
+db 116
+db 46
+db 10
+db 0
+align 1
+L219 label byte
+db 32
+db 32
+db 32
+db 32
+db 32
+db 42
+db 44
+db 32
+db 47
+db 44
+db 32
+db 97
+db 110
+db 100
+db 32
+db 45
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 32
+db 116
+db 111
+db 32
+db 104
+db 97
+db 118
+db 101
+db 32
+db 103
+db 117
+db 97
+db 114
+db 100
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 44
+db 32
+db 97
+db 115
+db 32
+db 116
+db 104
+db 101
+db 121
+db 32
+db 115
+db 104
+db 111
+db 117
+db 108
+db 100
+db 46
+db 10
+db 0
+align 1
+L216 label byte
+db 32
+db 32
+db 46
+db 46
+db 46
+db 32
+db 32
+db 105
+db 102
+db 32
+db 40
+db 88
+db 32
+db 61
+db 61
+db 32
+db 49
+db 46
+db 48
+db 41
+db 32
+db 123
+db 46
+db 46
+db 46
+db 46
+db 46
+db 125
+db 32
+db 101
+db 108
+db 115
+db 101
+db 32
+db 123
+db 46
+db 46
+db 46
+db 47
+db 40
+db 88
+db 45
+db 49
+db 46
+db 48
+db 41
+db 46
+db 46
+db 46
+db 125
+db 10
+db 0
+align 1
+L215 label byte
+db 32
+db 32
+db 115
+db 117
+db 99
+db 104
+db 32
+db 112
+db 114
+db 101
+db 99
+db 97
+db 117
+db 116
+db 105
+db 111
+db 110
+db 115
+db 32
+db 97
+db 103
+db 97
+db 105
+db 110
+db 115
+db 116
+db 32
+db 100
+db 105
+db 118
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 98
+db 121
+db 32
+db 122
+db 101
+db 114
+db 111
+db 32
+db 97
+db 115
+db 10
+db 0
+align 1
+L214 label byte
+db 32
+db 32
+db 115
+db 117
+db 98
+db 116
+db 114
+db 97
+db 99
+db 116
+db 105
+db 111
+db 110
+db 32
+db 121
+db 105
+db 101
+db 108
+db 100
+db 115
+db 32
+db 32
+db 40
+db 49
+db 45
+db 85
+db 49
+db 41
+db 32
+db 45
+db 32
+db 49
+db 32
+db 61
+db 32
+db 48
+db 32
+db 44
+db 32
+db 116
+db 104
+db 101
+db 114
+db 101
+db 98
+db 121
+db 32
+db 118
+db 105
+db 116
+db 105
+db 97
+db 116
+db 105
+db 110
+db 103
+db 10
+db 0
+align 1
+L213 label byte
+db 99
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 111
+db 110
+db 32
+db 97
+db 108
+db 108
+db 101
+db 103
+db 101
+db 115
+db 32
+db 32
+db 40
+db 49
+db 45
+db 85
+db 49
+db 41
+db 32
+db 60
+db 32
+db 49
+db 32
+db 32
+db 97
+db 108
+db 116
+db 104
+db 111
+db 117
+db 103
+db 104
+db 10
+db 0
+align 1
+L210 label byte
+db 45
+db 32
+db 108
+db 97
+db 99
+db 107
+db 115
+db 32
+db 71
+db 117
+db 97
+db 114
+db 100
+db 32
+db 68
+db 105
+db 103
+db 105
+db 116
+db 44
+db 32
+db 115
+db 111
+db 32
+db 99
+db 97
+db 110
+db 99
+db 101
+db 108
+db 108
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 105
+db 115
+db 32
+db 111
+db 98
+db 115
+db 99
+db 117
+db 114
+db 101
+db 100
+db 0
+align 1
+L205 label byte
+db 42
+db 32
+db 97
+db 110
+db 100
+db 47
+db 111
+db 114
+db 32
+db 47
+db 32
+db 103
+db 101
+db 116
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 109
+db 97
+db 110
+db 121
+db 32
+db 108
+db 97
+db 115
+db 116
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 119
+db 114
+db 111
+db 110
+db 103
+db 0
+align 1
+L201 label byte
+db 67
+db 111
+db 109
+db 112
+db 117
+db 116
+db 101
+db 100
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 32
+db 111
+db 102
+db 32
+db 49
+db 47
+db 49
+db 46
+db 48
+db 48
+db 48
+db 46
+db 46
+db 49
+db 32
+db 62
+db 61
+db 32
+db 49
+db 0
+align 1
+L199 label byte
+db 68
+db 105
+db 118
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 108
+db 97
+db 99
+db 107
+db 115
+db 32
+db 97
+db 32
+db 71
+db 117
+db 97
+db 114
+db 100
+db 32
+db 68
+db 105
+db 103
+db 105
+db 116
+db 44
+db 32
+db 115
+db 111
+db 32
+db 88
+db 47
+db 49
+db 32
+db 33
+db 61
+db 32
+db 88
+db 0
+align 1
+L194 label byte
+db 68
+db 105
+db 118
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 108
+db 97
+db 99
+db 107
+db 115
+db 32
+db 97
+db 32
+db 71
+db 117
+db 97
+db 114
+db 100
+db 32
+db 68
+db 105
+db 103
+db 105
+db 116
+db 44
+db 32
+db 115
+db 111
+db 32
+db 101
+db 114
+db 114
+db 111
+db 114
+db 32
+db 99
+db 97
+db 110
+db 32
+db 101
+db 120
+db 99
+db 101
+db 101
+db 100
+db 32
+db 49
+db 32
+db 117
+db 108
+db 112
+db 10
+db 111
+db 114
+db 32
+db 32
+db 49
+db 47
+db 51
+db 32
+db 32
+db 97
+db 110
+db 100
+db 32
+db 32
+db 51
+db 47
+db 57
+db 32
+db 32
+db 97
+db 110
+db 100
+db 32
+db 32
+db 57
+db 47
+db 50
+db 55
+db 32
+db 109
+db 97
+db 121
+db 32
+db 100
+db 105
+db 115
+db 97
+db 103
+db 114
+db 101
+db 101
+db 0
+align 1
+L190 label byte
+db 42
+db 32
+db 103
+db 101
+db 116
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 109
+db 97
+db 110
+db 121
+db 32
+db 102
+db 105
+db 110
+db 97
+db 108
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 119
+db 114
+db 111
+db 110
+db 103
+db 46
+db 10
+db 0
+align 1
+L188 label byte
+db 42
+db 32
+db 108
+db 97
+db 99
+db 107
+db 115
+db 32
+db 97
+db 32
+db 71
+db 117
+db 97
+db 114
+db 100
+db 32
+db 68
+db 105
+db 103
+db 105
+db 116
+db 44
+db 32
+db 115
+db 111
+db 32
+db 49
+db 42
+db 88
+db 32
+db 33
+db 61
+db 32
+db 88
+db 0
+align 1
+L185 label byte
+db 10
+db 67
+db 104
+db 101
+db 99
+db 107
+db 105
+db 110
+db 103
+db 32
+db 102
+db 111
+db 114
+db 32
+db 103
+db 117
+db 97
+db 114
+db 100
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 32
+db 105
+db 110
+db 32
+db 42
+db 44
+db 32
+db 47
+db 44
+db 32
+db 97
+db 110
+db 100
+db 32
+db 45
+db 46
+db 10
+db 0
+align 1
+L184 label byte
+db 83
+db 117
+db 98
+db 116
+db 114
+db 97
+db 99
+db 116
+db 105
+db 111
+db 110
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 115
+db 32
+db 116
+db 111
+db 32
+db 98
+db 101
+db 32
+db 110
+db 111
+db 114
+db 109
+db 97
+db 108
+db 105
+db 122
+db 101
+db 100
+db 44
+db 32
+db 97
+db 115
+db 32
+db 105
+db 116
+db 32
+db 115
+db 104
+db 111
+db 117
+db 108
+db 100
+db 32
+db 98
+db 101
+db 46
+db 0
+align 1
+L179 label byte
+db 83
+db 117
+db 98
+db 116
+db 114
+db 97
+db 99
+db 116
+db 105
+db 111
+db 110
+db 32
+db 105
+db 115
+db 32
+db 110
+db 111
+db 116
+db 32
+db 110
+db 111
+db 114
+db 109
+db 97
+db 108
+db 105
+db 122
+db 101
+db 100
+db 32
+db 88
+db 61
+db 89
+db 44
+db 88
+db 43
+db 90
+db 32
+db 33
+db 61
+db 32
+db 89
+db 43
+db 90
+db 33
+db 0
+align 1
+L175 label byte
+db 114
+db 111
+db 117
+db 103
+db 104
+db 108
+db 121
+db 32
+db 37
+db 103
+db 32
+db 101
+db 120
+db 116
+db 114
+db 97
+db 32
+db 115
+db 105
+db 103
+db 110
+db 105
+db 102
+db 105
+db 99
+db 97
+db 110
+db 116
+db 32
+db 100
+db 101
+db 99
+db 105
+db 109
+db 97
+db 108
+db 115
+db 46
+db 10
+db 0
+align 1
+L174 label byte
+db 112
+db 114
+db 101
+db 99
+db 105
+db 115
+db 101
+db 108
+db 121
+db 32
+db 119
+db 105
+db 116
+db 104
+db 32
+db 97
+db 98
+db 111
+db 117
+db 116
+db 32
+db 37
+db 103
+db 32
+db 101
+db 120
+db 116
+db 114
+db 97
+db 32
+db 66
+db 45
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 44
+db 32
+db 105
+db 46
+db 101
+db 46
+db 10
+db 0
+align 1
+L173 label byte
+db 83
+db 111
+db 109
+db 101
+db 32
+db 115
+db 117
+db 98
+db 101
+db 120
+db 112
+db 114
+db 101
+db 115
+db 115
+db 105
+db 111
+db 110
+db 115
+db 32
+db 97
+db 112
+db 112
+db 101
+db 97
+db 114
+db 32
+db 116
+db 111
+db 32
+db 98
+db 101
+db 32
+db 99
+db 97
+db 108
+db 99
+db 117
+db 108
+db 97
+db 116
+db 101
+db 100
+db 32
+db 101
+db 120
+db 116
+db 114
+db 97
+db 10
+db 0
+align 1
+L167 label byte
+db 111
+db 102
+db 32
+db 97
+db 110
+db 10
+db 101
+db 120
+db 116
+db 114
+db 97
+db 45
+db 112
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 0
+align 1
+L166 label byte
+db 90
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 44
+db 32
+db 111
+db 114
+db 32
+db 90
+db 50
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 32
+db 0
+align 1
+L165 label byte
+db 44
+db 32
+db 111
+db 114
+db 32
+db 101
+db 120
+db 97
+db 99
+db 116
+db 32
+db 114
+db 97
+db 116
+db 105
+db 111
+db 110
+db 97
+db 108
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 97
+db 32
+db 114
+db 101
+db 115
+db 117
+db 108
+db 116
+db 10
+db 0
+align 1
+L164 label byte
+db 66
+db 101
+db 99
+db 97
+db 117
+db 115
+db 101
+db 32
+db 111
+db 102
+db 32
+db 117
+db 110
+db 117
+db 115
+db 117
+db 97
+db 108
+db 32
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 61
+db 32
+db 37
+db 102
+db 0
+align 1
+L160 label byte
+db 9
+db 85
+db 50
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 44
+db 32
+db 90
+db 50
+db 32
+db 45
+db 32
+db 85
+db 50
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 10
+db 0
+align 1
+L159 label byte
+db 9
+db 85
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 44
+db 32
+db 90
+db 49
+db 32
+db 45
+db 32
+db 85
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 10
+db 0
+align 1
+L158 label byte
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 0
+align 1
+L157 label byte
+db 0
+align 1
+L150 label byte
+db 84
+db 104
+db 97
+db 116
+db 32
+db 102
+db 101
+db 97
+db 116
+db 117
+db 114
+db 101
+db 32
+db 105
+db 115
+db 32
+db 110
+db 111
+db 116
+db 32
+db 116
+db 101
+db 115
+db 116
+db 101
+db 100
+db 32
+db 102
+db 117
+db 114
+db 116
+db 104
+db 101
+db 114
+db 32
+db 98
+db 121
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 112
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 46
+db 10
+db 0
+align 1
+L145 label byte
+db 80
+db 111
+db 115
+db 115
+db 105
+db 98
+db 108
+db 121
+db 32
+db 115
+db 111
+db 109
+db 101
+db 32
+db 112
+db 97
+db 114
+db 116
+db 32
+db 111
+db 102
+db 32
+db 116
+db 104
+db 105
+db 115
+db 0
+align 1
+L144 label byte
+db 98
+db 121
+db 32
+db 101
+db 120
+db 116
+db 114
+db 97
+db 45
+db 112
+db 114
+db 101
+db 99
+db 105
+db 115
+db 101
+db 32
+db 101
+db 118
+db 97
+db 108
+db 117
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 111
+db 102
+db 32
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 101
+db 116
+db 105
+db 99
+db 32
+db 115
+db 117
+db 98
+db 101
+db 120
+db 112
+db 114
+db 101
+db 115
+db 115
+db 105
+db 111
+db 110
+db 115
+db 46
+db 10
+db 0
+align 1
+L143 label byte
+db 97
+db 114
+db 101
+db 32
+db 115
+db 121
+db 109
+db 112
+db 116
+db 111
+db 109
+db 115
+db 32
+db 111
+db 102
+db 32
+db 105
+db 110
+db 99
+db 111
+db 110
+db 115
+db 105
+db 115
+db 116
+db 101
+db 110
+db 99
+db 105
+db 101
+db 115
+db 32
+db 105
+db 110
+db 116
+db 114
+db 111
+db 100
+db 117
+db 99
+db 101
+db 100
+db 10
+db 0
+align 1
+L142 label byte
+db 114
+db 101
+db 115
+db 112
+db 101
+db 99
+db 116
+db 105
+db 118
+db 101
+db 108
+db 121
+db 32
+db 32
+db 37
+db 46
+db 55
+db 101
+db 44
+db 32
+db 32
+db 37
+db 46
+db 55
+db 101
+db 44
+db 32
+db 32
+db 37
+db 46
+db 55
+db 101
+db 44
+db 10
+db 0
+align 1
+L141 label byte
+db 68
+db 105
+db 115
+db 97
+db 103
+db 114
+db 101
+db 101
+db 109
+db 101
+db 110
+db 116
+db 115
+db 32
+db 97
+db 109
+db 111
+db 110
+db 103
+db 32
+db 116
+db 104
+db 101
+db 32
+db 118
+db 97
+db 108
+db 117
+db 101
+db 115
+db 32
+db 88
+db 49
+db 44
+db 32
+db 89
+db 49
+db 44
+db 32
+db 90
+db 49
+db 44
+db 10
+db 0
+align 1
+L119 label byte
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 119
+db 111
+db 114
+db 115
+db 101
+db 32
+db 116
+db 104
+db 97
+db 110
+db 32
+db 53
+db 32
+db 100
+db 101
+db 99
+db 105
+db 109
+db 97
+db 108
+db 32
+db 102
+db 105
+db 103
+db 117
+db 114
+db 101
+db 115
+db 32
+db 32
+db 0
+align 1
+L117 label byte
+db 84
+db 104
+db 101
+db 32
+db 110
+db 117
+db 109
+db 98
+db 101
+db 114
+db 32
+db 111
+db 102
+db 32
+db 115
+db 105
+db 103
+db 110
+db 105
+db 102
+db 105
+db 99
+db 97
+db 110
+db 116
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 111
+db 102
+db 32
+db 116
+db 104
+db 101
+db 32
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 105
+db 115
+db 32
+db 37
+db 102
+db 32
+db 46
+db 10
+db 0
+align 1
+L116 label byte
+db 108
+db 111
+db 103
+db 97
+db 114
+db 105
+db 116
+db 104
+db 109
+db 105
+db 99
+db 32
+db 101
+db 110
+db 99
+db 111
+db 100
+db 105
+db 110
+db 103
+db 32
+db 104
+db 97
+db 115
+db 32
+db 112
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 99
+db 104
+db 97
+db 114
+db 97
+db 99
+db 116
+db 101
+db 114
+db 105
+db 122
+db 101
+db 100
+db 32
+db 115
+db 111
+db 108
+db 101
+db 108
+db 121
+db 32
+db 98
+db 121
+db 32
+db 85
+db 49
+db 46
+db 10
+db 0
+align 1
+L113 label byte
+db 111
+db 102
+db 32
+db 115
+db 105
+db 103
+db 110
+db 105
+db 102
+db 105
+db 99
+db 97
+db 110
+db 116
+db 32
+db 100
+db 105
+db 103
+db 105
+db 116
+db 115
+db 32
+db 98
+db 117
+db 116
+db 44
+db 32
+db 98
+db 121
+db 32
+db 105
+db 116
+db 115
+db 101
+db 108
+db 102
+db 44
+db 32
+db 116
+db 104
+db 105
+db 115
+db 32
+db 105
+db 115
+db 32
+db 97
+db 32
+db 109
+db 105
+db 110
+db 111
+db 114
+db 32
+db 102
+db 108
+db 97
+db 119
+db 46
+db 10
+db 0
+align 1
+L112 label byte
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 32
+db 99
+db 97
+db 110
+db 110
+db 111
+db 116
+db 32
+db 98
+db 101
+db 32
+db 99
+db 104
+db 97
+db 114
+db 97
+db 99
+db 116
+db 101
+db 114
+db 105
+db 122
+db 101
+db 100
+db 32
+db 98
+db 121
+db 32
+db 97
+db 110
+db 32
+db 73
+db 110
+db 116
+db 101
+db 103
+db 101
+db 114
+db 32
+db 110
+db 117
+db 109
+db 98
+db 101
+db 114
+db 10
+db 0
+align 1
+L99 label byte
+db 67
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 111
+db 110
+db 32
+db 105
+db 115
+db 32
+db 102
+db 117
+db 122
+db 122
+db 121
+db 44
+db 88
+db 61
+db 49
+db 32
+db 98
+db 117
+db 116
+db 32
+db 88
+db 45
+db 49
+db 47
+db 50
+db 45
+db 49
+db 47
+db 50
+db 32
+db 33
+db 61
+db 32
+db 48
+db 0
+align 1
+L95 label byte
+db 40
+db 49
+db 45
+db 85
+db 49
+db 41
+db 45
+db 49
+db 47
+db 50
+db 32
+db 60
+db 32
+db 49
+db 47
+db 50
+db 32
+db 105
+db 115
+db 32
+db 70
+db 65
+db 76
+db 83
+db 69
+db 44
+db 32
+db 112
+db 114
+db 111
+db 103
+db 46
+db 32
+db 102
+db 97
+db 105
+db 108
+db 115
+db 63
+db 0
+align 4
+L93 label byte
+dd 00H
+dd 040240000H
+align 1
+L88 label byte
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 105
+db 115
+db 32
+db 110
+db 111
+db 116
+db 32
+db 97
+db 115
+db 32
+db 103
+db 111
+db 111
+db 100
+db 32
+db 97
+db 115
+db 32
+db 50
+db 32
+db 111
+db 114
+db 32
+db 49
+db 48
+db 0
+align 1
+L84 label byte
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 105
+db 115
+db 32
+db 116
+db 111
+db 111
+db 32
+db 98
+db 105
+db 103
+db 58
+db 32
+db 114
+db 111
+db 117
+db 110
+db 100
+db 111
+db 102
+db 102
+db 32
+db 112
+db 114
+db 111
+db 98
+db 108
+db 101
+db 109
+db 115
+db 0
+align 1
+L82 label byte
+db 77
+db 89
+db 83
+db 84
+db 69
+db 82
+db 89
+db 58
+db 32
+db 114
+db 101
+db 99
+db 97
+db 108
+db 99
+db 117
+db 108
+db 97
+db 116
+db 101
+db 100
+db 32
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L81 label byte
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 99
+db 111
+db 110
+db 102
+db 105
+db 114
+db 109
+db 101
+db 100
+db 46
+db 10
+db 0
+align 4
+L78 label byte
+dd 047ae147bH
+dd 03f847ae1H
+align 1
+L77 label byte
+db 103
+db 101
+db 116
+db 115
+db 32
+db 98
+db 101
+db 116
+db 116
+db 101
+db 114
+db 32
+db 99
+db 108
+db 111
+db 115
+db 101
+db 115
+db 116
+db 32
+db 114
+db 101
+db 108
+db 97
+db 116
+db 105
+db 118
+db 101
+db 32
+db 115
+db 101
+db 112
+db 97
+db 114
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 85
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 32
+db 46
+db 10
+db 0
+align 1
+L76 label byte
+db 99
+db 111
+db 110
+db 102
+db 105
+db 114
+db 109
+db 115
+db 32
+db 99
+db 108
+db 111
+db 115
+db 101
+db 115
+db 116
+db 32
+db 114
+db 101
+db 108
+db 97
+db 116
+db 105
+db 118
+db 101
+db 32
+db 115
+db 101
+db 112
+db 97
+db 114
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 85
+db 49
+db 32
+db 46
+db 10
+db 0
+align 1
+L61 label byte
+db 82
+db 101
+db 99
+db 97
+db 108
+db 99
+db 117
+db 108
+db 97
+db 116
+db 105
+db 110
+db 103
+db 32
+db 114
+db 97
+db 100
+db 105
+db 120
+db 32
+db 97
+db 110
+db 100
+db 32
+db 112
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 10
+db 32
+db 0
+align 1
+L60 label byte
+db 67
+db 108
+db 111
+db 115
+db 101
+db 115
+db 116
+db 32
+db 114
+db 101
+db 108
+db 97
+db 116
+db 105
+db 118
+db 101
+db 32
+db 115
+db 101
+db 112
+db 97
+db 114
+db 97
+db 116
+db 105
+db 111
+db 110
+db 32
+db 102
+db 111
+db 117
+db 110
+db 100
+db 32
+db 105
+db 115
+db 32
+db 85
+db 49
+db 32
+db 61
+db 32
+db 37
+db 46
+db 55
+db 101
+db 32
+db 46
+db 10
+db 10
+db 0
+align 1
+L54 label byte
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 61
+db 32
+db 37
+db 102
+db 32
+db 46
+db 10
+db 0
+align 1
+L45 label byte
+db 83
+db 101
+db 97
+db 114
+db 99
+db 104
+db 105
+db 110
+db 103
+db 32
+db 102
+db 111
+db 114
+db 32
+db 82
+db 97
+db 100
+db 105
+db 120
+db 32
+db 97
+db 110
+db 100
+db 32
+db 80
+db 114
+db 101
+db 99
+db 105
+db 115
+db 105
+db 111
+db 110
+db 46
+db 10
+db 0
+align 1
+L44 label byte
+db 10
+db 0
+align 1
+L43 label byte
+db 45
+db 49
+db 44
+db 32
+db 48
+db 44
+db 32
+db 49
+db 47
+db 50
+db 44
+db 32
+db 49
+db 44
+db 32
+db 50
+db 44
+db 32
+db 51
+db 44
+db 32
+db 52
+db 44
+db 32
+db 53
+db 44
+db 32
+db 57
+db 44
+db 32
+db 50
+db 55
+db 44
+db 32
+db 51
+db 50
+db 32
+db 38
+db 32
+db 50
+db 52
+db 48
+db 32
+db 97
+db 114
+db 101
+db 32
+db 79
+db 46
+db 75
+db 46
+db 10
+db 0
+align 1
+L38 label byte
+db 53
+db 32
+db 33
+db 61
+db 32
+db 52
+db 43
+db 49
+db 44
+db 32
+db 50
+db 52
+db 48
+db 47
+db 51
+db 32
+db 33
+db 61
+db 32
+db 56
+db 48
+db 44
+db 32
+db 50
+db 52
+db 48
+db 47
+db 52
+db 32
+db 33
+db 61
+db 32
+db 54
+db 48
+db 44
+db 32
+db 111
+db 114
+db 32
+db 50
+db 52
+db 48
+db 47
+db 53
+db 32
+db 33
+db 61
+db 32
+db 52
+db 56
+db 0
+align 1
+L34 label byte
+db 57
+db 32
+db 33
+db 61
+db 32
+db 51
+db 42
+db 51
+db 44
+db 32
+db 50
+db 55
+db 32
+db 33
+db 61
+db 32
+db 57
+db 42
+db 51
+db 44
+db 32
+db 51
+db 50
+db 32
+db 33
+db 61
+db 32
+db 56
+db 42
+db 52
+db 44
+db 32
+db 111
+db 114
+db 32
+db 51
+db 50
+db 45
+db 50
+db 55
+db 45
+db 52
+db 45
+db 49
+db 32
+db 33
+db 61
+db 32
+db 48
+db 0
+align 1
+L30 label byte
+db 49
+db 47
+db 50
+db 32
+db 43
+db 32
+db 40
+db 45
+db 49
+db 41
+db 32
+db 43
+db 32
+db 49
+db 47
+db 50
+db 32
+db 33
+db 61
+db 32
+db 48
+db 0
+align 1
+L26 label byte
+db 45
+db 49
+db 43
+db 49
+db 32
+db 33
+db 61
+db 32
+db 48
+db 44
+db 32
+db 40
+db 45
+db 49
+db 41
+db 43
+db 97
+db 98
+db 115
+db 40
+db 49
+db 41
+db 32
+db 33
+db 61
+db 32
+db 48
+db 44
+db 32
+db 111
+db 114
+db 32
+db 45
+db 49
+db 43
+db 40
+db 45
+db 49
+db 41
+db 42
+db 40
+db 45
+db 49
+db 41
+db 32
+db 33
+db 61
+db 32
+db 48
+db 0
+align 1
+L22 label byte
+db 51
+db 32
+db 33
+db 61
+db 32
+db 50
+db 43
+db 49
+db 44
+db 32
+db 52
+db 32
+db 33
+db 61
+db 32
+db 51
+db 43
+db 49
+db 44
+db 32
+db 52
+db 43
+db 50
+db 42
+db 40
+db 45
+db 50
+db 41
+db 32
+db 33
+db 61
+db 32
+db 48
+db 44
+db 32
+db 111
+db 114
+db 32
+db 52
+db 45
+db 51
+db 45
+db 49
+db 32
+db 33
+db 61
+db 32
+db 48
+db 0
+align 4
+L20 label byte
+dd 0d2f1a9fcH
+dd 03f50624dH
+align 1
+L19 label byte
+db 67
+db 111
+db 109
+db 112
+db 97
+db 114
+db 105
+db 115
+db 111
+db 110
+db 32
+db 97
+db 108
+db 108
+db 101
+db 103
+db 101
+db 115
+db 32
+db 116
+db 104
+db 97
+db 116
+db 32
+db 45
+db 48
+db 46
+db 48
+db 32
+db 105
+db 115
+db 32
+db 78
+db 111
+db 110
+db 45
+db 122
+db 101
+db 114
+db 111
+db 33
+db 10
+db 0
+align 1
+L14 label byte
+db 48
+db 43
+db 48
+db 32
+db 33
+db 61
+db 32
+db 48
+db 44
+db 32
+db 49
+db 45
+db 49
+db 32
+db 33
+db 61
+db 32
+db 48
+db 44
+db 32
+db 49
+db 32
+db 60
+db 61
+db 32
+db 48
+db 44
+db 32
+db 111
+db 114
+db 32
+db 49
+db 43
+db 49
+db 32
+db 33
+db 61
+db 32
+db 50
+db 0
+align 1
+L12 label byte
+db 80
+db 114
+db 111
+db 103
+db 114
+db 97
+db 109
+db 32
+db 105
+db 115
+db 32
+db 110
+db 111
+db 119
+db 32
+db 82
+db 85
+db 78
+db 78
+db 73
+db 78
+db 71
+db 32
+db 116
+db 101
+db 115
+db 116
+db 115
+db 32
+db 111
+db 110
+db 32
+db 115
+db 109
+db 97
+db 108
+db 108
+db 32
+db 105
+db 110
+db 116
+db 101
+db 103
+db 101
+db 114
+db 115
+db 58
+db 10
+db 0
+align 4
+L8 label byte
+dd 00H
+dd 03ff00000H
+align 4
+L7 label byte
+dd 00H
+dd 00H
+align 1
+L2 label byte
+db 10
+db 42
+db 32
+db 42
+db 32
+db 42
+db 32
+db 70
+db 76
+db 79
+db 65
+db 84
+db 73
+db 78
+db 71
+db 45
+db 80
+db 79
+db 73
+db 78
+db 84
+db 32
+db 69
+db 82
+db 82
+db 79
+db 82
+db 32
+db 42
+db 32
+db 42
+db 32
+db 42
+db 10
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/sort.1bk b/lcc/x86/win32/tst/sort.1bk
index 380d529..75e1f0d 100755
--- a/lcc/x86/win32/tst/sort.1bk
+++ b/lcc/x86/win32/tst/sort.1bk
@@ -1,20 +1,20 @@
-exchange(1,9)
-exchange(3,7)
-exchange(5,6)
-exchange(0,5)
-exchange(0,3)
-exchange(0,0)
-exchange(1,2)
-exchange(6,6)
-exchange(8,9)
-exchange(7,8)
--51
--1
-0
-1
-3
-10
-18
-32
-567
-789
+exchange(1,9)
+exchange(3,7)
+exchange(5,6)
+exchange(0,5)
+exchange(0,3)
+exchange(0,0)
+exchange(1,2)
+exchange(6,6)
+exchange(8,9)
+exchange(7,8)
+-51
+-1
+0
+1
+3
+10
+18
+32
+567
+789
diff --git a/lcc/x86/win32/tst/sort.2bk b/lcc/x86/win32/tst/sort.2bk
index 27488a1..81e6f38 100755
--- a/lcc/x86/win32/tst/sort.2bk
+++ b/lcc/x86/win32/tst/sort.2bk
@@ -1,5 +1,5 @@
-tst/sort.c:23: warning: missing return value
-tst/sort.c:30: warning: missing return value
-tst/sort.c:37: warning: missing return value
-tst/sort.c:41: warning: missing return value
-tst/sort.c:65: warning: missing return value
+tst/sort.c:23: warning: missing return value
+tst/sort.c:30: warning: missing return value
+tst/sort.c:37: warning: missing return value
+tst/sort.c:41: warning: missing return value
+tst/sort.c:65: warning: missing return value
diff --git a/lcc/x86/win32/tst/sort.sbk b/lcc/x86/win32/tst/sort.sbk
index cdedc1c..3c47aeb 100755
--- a/lcc/x86/win32/tst/sort.sbk
+++ b/lcc/x86/win32/tst/sort.sbk
@@ -1,324 +1,324 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-_DATA segment
-public _in
-align 4
-_in label byte
-dd 10
-dd 32
-dd -1
-dd 567
-dd 3
-dd 18
-dd 1
-dd -51
-dd 789
-dd 0
-public _main
-_DATA ends
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-push 10
-lea edi,(_in)
-push edi
-call _sort
-add esp,8
-mov dword ptr (-4)[ebp],0
-jmp L5
-L2:
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr (_in)[edi*4]
-push edi
-call _putd
-add esp,4
-push 10
-call _putchar
-add esp,4
-L3:
-inc dword ptr (-4)[ebp]
-L5:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,10
-jb L2
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _putd
-_putd:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-cmp dword ptr (20)[ebp],0
-jge L7
-push 45
-call _putchar
-add esp,4
-neg dword ptr (20)[ebp]
-L7:
-mov eax,dword ptr (20)[ebp]
-mov edi,10
-cdq
-idiv edi
-cmp eax,0
-je L9
-mov eax,dword ptr (20)[ebp]
-mov edi,10
-cdq
-idiv edi
-push eax
-call _putd
-add esp,4
-L9:
-mov eax,dword ptr (20)[ebp]
-mov edi,10
-cdq
-idiv edi
-lea edi,(48)[edx]
-push edi
-call _putchar
-add esp,4
-mov eax,0
-L6:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _sort
-_sort:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (24)[ebp]
-sub edi,1
-mov dword ptr (24)[ebp],edi
-push edi
-push 0
-mov edi,dword ptr (20)[ebp]
-mov dword ptr (_xx),edi
-push edi
-call _quick
-add esp,12
-mov eax,0
-L11:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _quick
-_quick:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov edi,dword ptr (28)[ebp]
-cmp dword ptr (24)[ebp],edi
-jl L13
-jmp L12
-L13:
-mov edi,dword ptr (28)[ebp]
-push edi
-mov edi,dword ptr (24)[ebp]
-push edi
-mov edi,dword ptr (20)[ebp]
-push edi
-call _partition
-add esp,12
-mov dword ptr (-4)[ebp],eax
-mov edi,dword ptr (-4)[ebp]
-sub edi,1
-push edi
-mov edi,dword ptr (24)[ebp]
-push edi
-mov edi,dword ptr (20)[ebp]
-push edi
-call _quick
-add esp,12
-mov edi,dword ptr (28)[ebp]
-push edi
-mov edi,dword ptr (-4)[ebp]
-lea edi,(1)[edi]
-push edi
-mov edi,dword ptr (20)[ebp]
-push edi
-call _quick
-add esp,12
-mov eax,0
-L12:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _partition
-_partition:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-inc dword ptr (28)[ebp]
-mov edi,dword ptr (24)[ebp]
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-mov esi,dword ptr (20)[ebp]
-mov edi,dword ptr [esi][edi*4]
-mov dword ptr (-4)[ebp],edi
-jmp L17
-L16:
-inc dword ptr (24)[ebp]
-jmp L20
-L19:
-inc dword ptr (24)[ebp]
-L20:
-mov edi,dword ptr (24)[ebp]
-mov esi,dword ptr (20)[ebp]
-mov ebx,dword ptr (-4)[ebp]
-cmp dword ptr [esi][edi*4],ebx
-jl L19
-dec dword ptr (28)[ebp]
-jmp L23
-L22:
-dec dword ptr (28)[ebp]
-L23:
-mov edi,dword ptr (28)[ebp]
-mov esi,dword ptr (20)[ebp]
-mov ebx,dword ptr (-4)[ebp]
-cmp dword ptr [esi][edi*4],ebx
-jg L22
-mov edi,dword ptr (28)[ebp]
-cmp dword ptr (24)[ebp],edi
-jge L25
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr (28)[ebp]
-lea esi,[edi][esi*4]
-push esi
-mov esi,dword ptr (24)[ebp]
-lea edi,[edi][esi*4]
-push edi
-call _exchange
-add esp,8
-L25:
-L17:
-mov edi,dword ptr (28)[ebp]
-cmp dword ptr (24)[ebp],edi
-jl L16
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr (28)[ebp]
-lea esi,[edi][esi*4]
-push esi
-mov esi,dword ptr (-8)[ebp]
-lea edi,[edi][esi*4]
-push edi
-call _exchange
-add esp,8
-mov eax,dword ptr (28)[ebp]
-L15:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _exchange
-_exchange:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov edi,dword ptr (_xx)
-mov esi,4
-mov ebx,dword ptr (24)[ebp]
-sub ebx,edi
-mov eax,ebx
-cdq
-idiv esi
-push eax
-mov ebx,dword ptr (20)[ebp]
-sub ebx,edi
-mov eax,ebx
-cdq
-idiv esi
-push eax
-lea edi,(L28)
-push edi
-call _printf
-add esp,12
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr [edi]
-mov dword ptr (-4)[ebp],esi
-mov esi,dword ptr (24)[ebp]
-mov esi,dword ptr [esi]
-mov dword ptr [edi],esi
-mov edi,dword ptr (24)[ebp]
-mov esi,dword ptr (-4)[ebp]
-mov dword ptr [edi],esi
-mov eax,0
-L27:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-extrn _putchar:near
-_TEXT segment
-_TEXT ends
-_DATA segment
-public _xx
-align 4
-_xx label byte
-db 4 dup (0)
-_DATA ends
-_TEXT segment
-align 1
-L28 label byte
-db 101
-db 120
-db 99
-db 104
-db 97
-db 110
-db 103
-db 101
-db 40
-db 37
-db 100
-db 44
-db 37
-db 100
-db 41
-db 10
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+_DATA segment
+public _in
+align 4
+_in label byte
+dd 10
+dd 32
+dd -1
+dd 567
+dd 3
+dd 18
+dd 1
+dd -51
+dd 789
+dd 0
+public _main
+_DATA ends
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+push 10
+lea edi,(_in)
+push edi
+call _sort
+add esp,8
+mov dword ptr (-4)[ebp],0
+jmp L5
+L2:
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr (_in)[edi*4]
+push edi
+call _putd
+add esp,4
+push 10
+call _putchar
+add esp,4
+L3:
+inc dword ptr (-4)[ebp]
+L5:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,10
+jb L2
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _putd
+_putd:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+cmp dword ptr (20)[ebp],0
+jge L7
+push 45
+call _putchar
+add esp,4
+neg dword ptr (20)[ebp]
+L7:
+mov eax,dword ptr (20)[ebp]
+mov edi,10
+cdq
+idiv edi
+cmp eax,0
+je L9
+mov eax,dword ptr (20)[ebp]
+mov edi,10
+cdq
+idiv edi
+push eax
+call _putd
+add esp,4
+L9:
+mov eax,dword ptr (20)[ebp]
+mov edi,10
+cdq
+idiv edi
+lea edi,(48)[edx]
+push edi
+call _putchar
+add esp,4
+mov eax,0
+L6:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _sort
+_sort:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (24)[ebp]
+sub edi,1
+mov dword ptr (24)[ebp],edi
+push edi
+push 0
+mov edi,dword ptr (20)[ebp]
+mov dword ptr (_xx),edi
+push edi
+call _quick
+add esp,12
+mov eax,0
+L11:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _quick
+_quick:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov edi,dword ptr (28)[ebp]
+cmp dword ptr (24)[ebp],edi
+jl L13
+jmp L12
+L13:
+mov edi,dword ptr (28)[ebp]
+push edi
+mov edi,dword ptr (24)[ebp]
+push edi
+mov edi,dword ptr (20)[ebp]
+push edi
+call _partition
+add esp,12
+mov dword ptr (-4)[ebp],eax
+mov edi,dword ptr (-4)[ebp]
+sub edi,1
+push edi
+mov edi,dword ptr (24)[ebp]
+push edi
+mov edi,dword ptr (20)[ebp]
+push edi
+call _quick
+add esp,12
+mov edi,dword ptr (28)[ebp]
+push edi
+mov edi,dword ptr (-4)[ebp]
+lea edi,(1)[edi]
+push edi
+mov edi,dword ptr (20)[ebp]
+push edi
+call _quick
+add esp,12
+mov eax,0
+L12:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _partition
+_partition:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+inc dword ptr (28)[ebp]
+mov edi,dword ptr (24)[ebp]
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+mov esi,dword ptr (20)[ebp]
+mov edi,dword ptr [esi][edi*4]
+mov dword ptr (-4)[ebp],edi
+jmp L17
+L16:
+inc dword ptr (24)[ebp]
+jmp L20
+L19:
+inc dword ptr (24)[ebp]
+L20:
+mov edi,dword ptr (24)[ebp]
+mov esi,dword ptr (20)[ebp]
+mov ebx,dword ptr (-4)[ebp]
+cmp dword ptr [esi][edi*4],ebx
+jl L19
+dec dword ptr (28)[ebp]
+jmp L23
+L22:
+dec dword ptr (28)[ebp]
+L23:
+mov edi,dword ptr (28)[ebp]
+mov esi,dword ptr (20)[ebp]
+mov ebx,dword ptr (-4)[ebp]
+cmp dword ptr [esi][edi*4],ebx
+jg L22
+mov edi,dword ptr (28)[ebp]
+cmp dword ptr (24)[ebp],edi
+jge L25
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr (28)[ebp]
+lea esi,[edi][esi*4]
+push esi
+mov esi,dword ptr (24)[ebp]
+lea edi,[edi][esi*4]
+push edi
+call _exchange
+add esp,8
+L25:
+L17:
+mov edi,dword ptr (28)[ebp]
+cmp dword ptr (24)[ebp],edi
+jl L16
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr (28)[ebp]
+lea esi,[edi][esi*4]
+push esi
+mov esi,dword ptr (-8)[ebp]
+lea edi,[edi][esi*4]
+push edi
+call _exchange
+add esp,8
+mov eax,dword ptr (28)[ebp]
+L15:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _exchange
+_exchange:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov edi,dword ptr (_xx)
+mov esi,4
+mov ebx,dword ptr (24)[ebp]
+sub ebx,edi
+mov eax,ebx
+cdq
+idiv esi
+push eax
+mov ebx,dword ptr (20)[ebp]
+sub ebx,edi
+mov eax,ebx
+cdq
+idiv esi
+push eax
+lea edi,(L28)
+push edi
+call _printf
+add esp,12
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr [edi]
+mov dword ptr (-4)[ebp],esi
+mov esi,dword ptr (24)[ebp]
+mov esi,dword ptr [esi]
+mov dword ptr [edi],esi
+mov edi,dword ptr (24)[ebp]
+mov esi,dword ptr (-4)[ebp]
+mov dword ptr [edi],esi
+mov eax,0
+L27:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+extrn _putchar:near
+_TEXT segment
+_TEXT ends
+_DATA segment
+public _xx
+align 4
+_xx label byte
+db 4 dup (0)
+_DATA ends
+_TEXT segment
+align 1
+L28 label byte
+db 101
+db 120
+db 99
+db 104
+db 97
+db 110
+db 103
+db 101
+db 40
+db 37
+db 100
+db 44
+db 37
+db 100
+db 41
+db 10
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/spill.2bk b/lcc/x86/win32/tst/spill.2bk
index f7e3521..afd73e2 100755
--- a/lcc/x86/win32/tst/spill.2bk
+++ b/lcc/x86/win32/tst/spill.2bk
@@ -1,6 +1,6 @@
-tst/spill.c:1: warning: missing return value
-tst/spill.c:3: warning: missing return value
-tst/spill.c:5: warning: missing return value
-tst/spill.c:7: warning: missing return value
-tst/spill.c:9: warning: missing return value
-tst/spill.c:17: warning: missing return value
+tst/spill.c:1: warning: missing return value
+tst/spill.c:3: warning: missing return value
+tst/spill.c:5: warning: missing return value
+tst/spill.c:7: warning: missing return value
+tst/spill.c:9: warning: missing return value
+tst/spill.c:17: warning: missing return value
diff --git a/lcc/x86/win32/tst/spill.sbk b/lcc/x86/win32/tst/spill.sbk
index 51cf7be..12415a0 100755
--- a/lcc/x86/win32/tst/spill.sbk
+++ b/lcc/x86/win32/tst/spill.sbk
@@ -1,259 +1,259 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _main
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f
-_f:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-call _f
-add esp,0
-mov edi,eax
-call _f
-add esp,0
-lea edi,[eax][edi]
-mov dword ptr (20)[ebp],edi
-mov eax,0
-L2:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f2
-_f2:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-call _f
-add esp,0
-mov edi,eax
-cmp dword ptr (20)[ebp],0
-je L5
-call _f
-add esp,0
-mov esi,eax
-mov dword ptr (-4)[ebp],esi
-jmp L6
-L5:
-mov dword ptr (-4)[ebp],1
-L6:
-mov esi,dword ptr (-4)[ebp]
-lea edi,[esi][edi]
-mov dword ptr (20)[ebp],edi
-mov eax,0
-L3:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f3
-_f3:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,44
-mov dword ptr (-4)[ebp],0
-mov dword ptr (-8)[ebp],0
-mov dword ptr (-12)[ebp],0
-mov dword ptr (-16)[ebp],0
-mov dword ptr (-20)[ebp],0
-mov dword ptr (-24)[ebp],0
-mov dword ptr (-28)[ebp],0
-mov dword ptr (-32)[ebp],0
-mov dword ptr (-36)[ebp],0
-mov dword ptr (-40)[ebp],0
-mov edi,dword ptr (24)[ebp]
-lea esi,(4)[edi]
-mov dword ptr (24)[ebp],esi
-cmp dword ptr (20)[ebp],0
-je L9
-call _f
-add esp,0
-mov esi,eax
-mov dword ptr (-44)[ebp],esi
-jmp L10
-L9:
-mov dword ptr (-44)[ebp],0
-L10:
-mov esi,dword ptr (-44)[ebp]
-mov dword ptr [edi],esi
-mov eax,0
-L7:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f4
-_f4:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,52
-mov dword ptr (-4)[ebp],0
-mov dword ptr (-8)[ebp],0
-mov dword ptr (-12)[ebp],0
-mov dword ptr (-16)[ebp],0
-mov dword ptr (-20)[ebp],0
-mov dword ptr (-24)[ebp],0
-mov edi,dword ptr (_i)
-lea esi,[edi*8]
-fld qword ptr (_a)[esi]
-fstp qword ptr (-36)[ebp]
-fld qword ptr (_b)[esi]
-fstp qword ptr (-44)[ebp]
-fld qword ptr (-36)[ebp]
-fadd qword ptr (-44)[ebp]
-fld qword ptr (L15)
-fcompp
-fstsw ax
-sahf
-je L13
-cmp edi,0
-je L13
-fld qword ptr (-36)[ebp]
-fsub qword ptr (-44)[ebp]
-fld qword ptr (L15)
-fcompp
-fstsw ax
-sahf
-je L13
-mov dword ptr (-28)[ebp],1
-jmp L14
-L13:
-mov dword ptr (-28)[ebp],0
-L14:
-mov edi,dword ptr (-28)[ebp]
-mov dword ptr (_i),edi
-mov eax,0
-L11:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f5
-_f5:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (_k)
-mov esi,dword ptr (_m)
-mov ebx,dword ptr (_A)
-mov edx,edi
-imul edx,esi
-lea edx,[ebx][edx*8]
-mov ecx,dword ptr (_j)
-mov eax,ecx
-imul eax,esi
-lea esi,[ebx][eax*8]
-mov ebx,dword ptr (_n)
-mov eax,dword ptr (_B)
-imul edi,ebx
-lea edi,[eax][edi*8]
-imul ecx,ebx
-lea ebx,[eax][ecx*8]
-fld qword ptr [edx]
-fmul qword ptr [esi]
-fld qword ptr [edi]
-fmul qword ptr [ebx]
-faddp st(1),st
-fstp qword ptr (_x)
-fld qword ptr [edx]
-fmul qword ptr [ebx]
-fld qword ptr [edi]
-fmul qword ptr [esi]
-fsubp st(1),st
-fstp qword ptr (_x)
-mov eax,0
-L16:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-public _x
-align 4
-_x label byte
-db 8 dup (0)
-public _B
-align 4
-_B label byte
-db 4 dup (0)
-public _A
-align 4
-_A label byte
-db 4 dup (0)
-public _n
-align 4
-_n label byte
-db 4 dup (0)
-public _m
-align 4
-_m label byte
-db 4 dup (0)
-public _k
-align 4
-_k label byte
-db 4 dup (0)
-public _j
-align 4
-_j label byte
-db 4 dup (0)
-public _i
-align 4
-_i label byte
-db 4 dup (0)
-public _b
-align 4
-_b label byte
-db 80 dup (0)
-public _a
-align 4
-_a label byte
-db 80 dup (0)
-_DATA ends
-_TEXT segment
-align 4
-L15 label byte
-dd 00H
-dd 00H
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _main
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f
+_f:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+call _f
+add esp,0
+mov edi,eax
+call _f
+add esp,0
+lea edi,[eax][edi]
+mov dword ptr (20)[ebp],edi
+mov eax,0
+L2:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f2
+_f2:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+call _f
+add esp,0
+mov edi,eax
+cmp dword ptr (20)[ebp],0
+je L5
+call _f
+add esp,0
+mov esi,eax
+mov dword ptr (-4)[ebp],esi
+jmp L6
+L5:
+mov dword ptr (-4)[ebp],1
+L6:
+mov esi,dword ptr (-4)[ebp]
+lea edi,[esi][edi]
+mov dword ptr (20)[ebp],edi
+mov eax,0
+L3:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f3
+_f3:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,44
+mov dword ptr (-4)[ebp],0
+mov dword ptr (-8)[ebp],0
+mov dword ptr (-12)[ebp],0
+mov dword ptr (-16)[ebp],0
+mov dword ptr (-20)[ebp],0
+mov dword ptr (-24)[ebp],0
+mov dword ptr (-28)[ebp],0
+mov dword ptr (-32)[ebp],0
+mov dword ptr (-36)[ebp],0
+mov dword ptr (-40)[ebp],0
+mov edi,dword ptr (24)[ebp]
+lea esi,(4)[edi]
+mov dword ptr (24)[ebp],esi
+cmp dword ptr (20)[ebp],0
+je L9
+call _f
+add esp,0
+mov esi,eax
+mov dword ptr (-44)[ebp],esi
+jmp L10
+L9:
+mov dword ptr (-44)[ebp],0
+L10:
+mov esi,dword ptr (-44)[ebp]
+mov dword ptr [edi],esi
+mov eax,0
+L7:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f4
+_f4:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,52
+mov dword ptr (-4)[ebp],0
+mov dword ptr (-8)[ebp],0
+mov dword ptr (-12)[ebp],0
+mov dword ptr (-16)[ebp],0
+mov dword ptr (-20)[ebp],0
+mov dword ptr (-24)[ebp],0
+mov edi,dword ptr (_i)
+lea esi,[edi*8]
+fld qword ptr (_a)[esi]
+fstp qword ptr (-36)[ebp]
+fld qword ptr (_b)[esi]
+fstp qword ptr (-44)[ebp]
+fld qword ptr (-36)[ebp]
+fadd qword ptr (-44)[ebp]
+fld qword ptr (L15)
+fcompp
+fstsw ax
+sahf
+je L13
+cmp edi,0
+je L13
+fld qword ptr (-36)[ebp]
+fsub qword ptr (-44)[ebp]
+fld qword ptr (L15)
+fcompp
+fstsw ax
+sahf
+je L13
+mov dword ptr (-28)[ebp],1
+jmp L14
+L13:
+mov dword ptr (-28)[ebp],0
+L14:
+mov edi,dword ptr (-28)[ebp]
+mov dword ptr (_i),edi
+mov eax,0
+L11:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f5
+_f5:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (_k)
+mov esi,dword ptr (_m)
+mov ebx,dword ptr (_A)
+mov edx,edi
+imul edx,esi
+lea edx,[ebx][edx*8]
+mov ecx,dword ptr (_j)
+mov eax,ecx
+imul eax,esi
+lea esi,[ebx][eax*8]
+mov ebx,dword ptr (_n)
+mov eax,dword ptr (_B)
+imul edi,ebx
+lea edi,[eax][edi*8]
+imul ecx,ebx
+lea ebx,[eax][ecx*8]
+fld qword ptr [edx]
+fmul qword ptr [esi]
+fld qword ptr [edi]
+fmul qword ptr [ebx]
+faddp st(1),st
+fstp qword ptr (_x)
+fld qword ptr [edx]
+fmul qword ptr [ebx]
+fld qword ptr [edi]
+fmul qword ptr [esi]
+fsubp st(1),st
+fstp qword ptr (_x)
+mov eax,0
+L16:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+public _x
+align 4
+_x label byte
+db 8 dup (0)
+public _B
+align 4
+_B label byte
+db 4 dup (0)
+public _A
+align 4
+_A label byte
+db 4 dup (0)
+public _n
+align 4
+_n label byte
+db 4 dup (0)
+public _m
+align 4
+_m label byte
+db 4 dup (0)
+public _k
+align 4
+_k label byte
+db 4 dup (0)
+public _j
+align 4
+_j label byte
+db 4 dup (0)
+public _i
+align 4
+_i label byte
+db 4 dup (0)
+public _b
+align 4
+_b label byte
+db 80 dup (0)
+public _a
+align 4
+_a label byte
+db 80 dup (0)
+_DATA ends
+_TEXT segment
+align 4
+L15 label byte
+dd 00H
+dd 00H
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/stdarg.1bk b/lcc/x86/win32/tst/stdarg.1bk
index 097aef7..e973176 100755
--- a/lcc/x86/win32/tst/stdarg.1bk
+++ b/lcc/x86/win32/tst/stdarg.1bk
@@ -1,6 +1,6 @@
-test 1
-test 2
-test 3
-test 4
-test 5.000000
-{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
+test 1
+test 2
+test 3
+test 4
+test 5.000000
+{1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4} {1 2 3 4}
diff --git a/lcc/x86/win32/tst/stdarg.2bk b/lcc/x86/win32/tst/stdarg.2bk
index a832cf9..2b3f417 100755
--- a/lcc/x86/win32/tst/stdarg.2bk
+++ b/lcc/x86/win32/tst/stdarg.2bk
@@ -1 +1 @@
-tst/stdarg.c:51: warning: missing return value
+tst/stdarg.c:51: warning: missing return value
diff --git a/lcc/x86/win32/tst/stdarg.sbk b/lcc/x86/win32/tst/stdarg.sbk
index 35c2f66..d912356 100755
--- a/lcc/x86/win32/tst/stdarg.sbk
+++ b/lcc/x86/win32/tst/stdarg.sbk
@@ -1,415 +1,415 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-_DATA segment
-public _x
-align 4
-_x label byte
-dd 1
-dd 2
-dd 3
-dd 4
-public _main
-_DATA ends
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-lea edi,(L2)
-push edi
-call _print
-add esp,4
-lea edi,(L4)
-push edi
-lea edi,(L3)
-push edi
-call _print
-add esp,8
-push 10
-push 3
-lea edi,(L5)
-push edi
-call _print
-add esp,12
-push 10
-push 4
-lea edi,(L8)
-push edi
-lea edi,(L7)
-push edi
-lea edi,(L6)
-push edi
-call _print
-add esp,20
-push 10
-fld qword ptr (L10)
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L8)
-push edi
-lea edi,(L7)
-push edi
-lea edi,(L9)
-push edi
-call _print
-add esp,24
-lea edi,(_x)
-mov dword ptr (-8)[ebp],edi
-mov esi,edi
-mov dword ptr (-4)[ebp],esi
-sub esp,16
-mov edi,esp
-mov ecx,16
-rep movsb
-mov edi,dword ptr (-8)[ebp]
-mov esi,edi
-sub esp,16
-mov edi,esp
-mov ecx,16
-rep movsb
-mov edi,dword ptr (-8)[ebp]
-mov esi,edi
-sub esp,16
-mov edi,esp
-mov ecx,16
-rep movsb
-mov edi,dword ptr (-8)[ebp]
-mov esi,edi
-sub esp,16
-mov edi,esp
-mov ecx,16
-rep movsb
-mov edi,dword ptr (-8)[ebp]
-mov esi,edi
-sub esp,16
-mov edi,esp
-mov ecx,16
-rep movsb
-mov edi,dword ptr (-8)[ebp]
-mov esi,edi
-sub esp,16
-mov edi,esp
-mov ecx,16
-rep movsb
-lea edi,(L11)
-push edi
-call _print
-add esp,100
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _print
-_print:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,28
-lea edi,(24)[ebp]
-mov dword ptr (-4)[ebp],edi
-jmp L17
-L14:
-mov edi,dword ptr (20)[ebp]
-movsx edi,byte ptr [edi]
-cmp edi,37
-jne L18
-mov edi,dword ptr (20)[ebp]
-lea edi,(1)[edi]
-mov dword ptr (20)[ebp],edi
-movsx edi,byte ptr [edi]
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr (-8)[ebp]
-cmp edi,115
-je L34
-cmp edi,115
-jg L39
-L38:
-mov edi,dword ptr (-8)[ebp]
-cmp edi,98
-jl L20
-cmp edi,102
-jg L20
-jmp dword ptr (L40-392)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L40 label byte
-dd L23
-dd L28
-dd L30
-dd L20
-dd L36
-_TEXT ends
-_TEXT segment
-L39:
-cmp dword ptr (-8)[ebp],119
-je L32
-jmp L20
-L23:
-mov edi,dword ptr (-4)[ebp]
-lea edi,(16)[edi]
-mov dword ptr (-28)[ebp],edi
-mov dword ptr (-4)[ebp],edi
-lea edi,(-24)[ebp]
-mov esi,dword ptr (-28)[ebp]
-lea esi,(-16)[esi]
-mov ecx,16
-rep movsb
-mov edi,dword ptr (-12)[ebp]
-push edi
-mov edi,dword ptr (-16)[ebp]
-push edi
-mov edi,dword ptr (-20)[ebp]
-push edi
-mov edi,dword ptr (-24)[ebp]
-push edi
-lea edi,(L24)
-push edi
-call _printf
-add esp,20
-jmp L19
-L28:
-mov edi,dword ptr (-4)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-4)[ebp],edi
-movsx edi,byte ptr (-4)[edi]
-push edi
-lea edi,(L29)
-push edi
-call _printf
-add esp,8
-jmp L19
-L30:
-mov edi,dword ptr (-4)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (-4)[edi]
-push edi
-lea edi,(L31)
-push edi
-call _printf
-add esp,8
-jmp L19
-L32:
-mov edi,dword ptr (-4)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-4)[ebp],edi
-movsx edi,word ptr (-4)[edi]
-push edi
-lea edi,(L33)
-push edi
-call _printf
-add esp,8
-jmp L19
-L34:
-mov edi,dword ptr (-4)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (-4)[edi]
-push edi
-lea edi,(L35)
-push edi
-call _printf
-add esp,8
-jmp L19
-L36:
-mov edi,dword ptr (-4)[ebp]
-lea edi,(8)[edi]
-mov dword ptr (-4)[ebp],edi
-fld qword ptr (-8)[edi]
-sub esp,8
-fstp qword ptr [esp]
-lea edi,(L37)
-push edi
-call _printf
-add esp,12
-jmp L19
-L20:
-mov edi,dword ptr (20)[ebp]
-movsx edi,byte ptr [edi]
-push edi
-lea edi,(L29)
-push edi
-call _printf
-add esp,8
-jmp L19
-L18:
-mov edi,dword ptr (20)[ebp]
-movsx edi,byte ptr [edi]
-push edi
-lea edi,(L29)
-push edi
-call _printf
-add esp,8
-L19:
-L15:
-inc dword ptr (20)[ebp]
-L17:
-mov edi,dword ptr (20)[ebp]
-movsx edi,byte ptr [edi]
-cmp edi,0
-jne L14
-mov dword ptr (-4)[ebp],0
-mov eax,0
-L12:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_TEXT segment
-align 1
-L37 label byte
-db 37
-db 102
-db 0
-align 1
-L35 label byte
-db 37
-db 115
-db 0
-align 1
-L33 label byte
-db 37
-db 120
-db 0
-align 1
-L31 label byte
-db 37
-db 100
-db 0
-align 1
-L29 label byte
-db 37
-db 99
-db 0
-align 1
-L24 label byte
-db 123
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 32
-db 37
-db 100
-db 125
-db 0
-align 1
-L11 label byte
-db 37
-db 98
-db 32
-db 37
-db 98
-db 32
-db 37
-db 98
-db 32
-db 37
-db 98
-db 32
-db 37
-db 98
-db 32
-db 37
-db 98
-db 10
-db 0
-align 4
-L10 label byte
-dd 00H
-dd 040140000H
-align 1
-L9 label byte
-db 37
-db 115
-db 37
-db 115
-db 32
-db 37
-db 102
-db 37
-db 99
-db 0
-align 1
-L8 label byte
-db 115
-db 116
-db 0
-align 1
-L7 label byte
-db 116
-db 101
-db 0
-align 1
-L6 label byte
-db 37
-db 115
-db 37
-db 115
-db 32
-db 37
-db 119
-db 37
-db 99
-db 0
-align 1
-L5 label byte
-db 116
-db 101
-db 115
-db 116
-db 32
-db 37
-db 100
-db 37
-db 99
-db 0
-align 1
-L4 label byte
-db 50
-db 0
-align 1
-L3 label byte
-db 116
-db 101
-db 115
-db 116
-db 32
-db 37
-db 115
-db 10
-db 0
-align 1
-L2 label byte
-db 116
-db 101
-db 115
-db 116
-db 32
-db 49
-db 10
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+_DATA segment
+public _x
+align 4
+_x label byte
+dd 1
+dd 2
+dd 3
+dd 4
+public _main
+_DATA ends
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+lea edi,(L2)
+push edi
+call _print
+add esp,4
+lea edi,(L4)
+push edi
+lea edi,(L3)
+push edi
+call _print
+add esp,8
+push 10
+push 3
+lea edi,(L5)
+push edi
+call _print
+add esp,12
+push 10
+push 4
+lea edi,(L8)
+push edi
+lea edi,(L7)
+push edi
+lea edi,(L6)
+push edi
+call _print
+add esp,20
+push 10
+fld qword ptr (L10)
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L8)
+push edi
+lea edi,(L7)
+push edi
+lea edi,(L9)
+push edi
+call _print
+add esp,24
+lea edi,(_x)
+mov dword ptr (-8)[ebp],edi
+mov esi,edi
+mov dword ptr (-4)[ebp],esi
+sub esp,16
+mov edi,esp
+mov ecx,16
+rep movsb
+mov edi,dword ptr (-8)[ebp]
+mov esi,edi
+sub esp,16
+mov edi,esp
+mov ecx,16
+rep movsb
+mov edi,dword ptr (-8)[ebp]
+mov esi,edi
+sub esp,16
+mov edi,esp
+mov ecx,16
+rep movsb
+mov edi,dword ptr (-8)[ebp]
+mov esi,edi
+sub esp,16
+mov edi,esp
+mov ecx,16
+rep movsb
+mov edi,dword ptr (-8)[ebp]
+mov esi,edi
+sub esp,16
+mov edi,esp
+mov ecx,16
+rep movsb
+mov edi,dword ptr (-8)[ebp]
+mov esi,edi
+sub esp,16
+mov edi,esp
+mov ecx,16
+rep movsb
+lea edi,(L11)
+push edi
+call _print
+add esp,100
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _print
+_print:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,28
+lea edi,(24)[ebp]
+mov dword ptr (-4)[ebp],edi
+jmp L17
+L14:
+mov edi,dword ptr (20)[ebp]
+movsx edi,byte ptr [edi]
+cmp edi,37
+jne L18
+mov edi,dword ptr (20)[ebp]
+lea edi,(1)[edi]
+mov dword ptr (20)[ebp],edi
+movsx edi,byte ptr [edi]
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr (-8)[ebp]
+cmp edi,115
+je L34
+cmp edi,115
+jg L39
+L38:
+mov edi,dword ptr (-8)[ebp]
+cmp edi,98
+jl L20
+cmp edi,102
+jg L20
+jmp dword ptr (L40-392)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L40 label byte
+dd L23
+dd L28
+dd L30
+dd L20
+dd L36
+_TEXT ends
+_TEXT segment
+L39:
+cmp dword ptr (-8)[ebp],119
+je L32
+jmp L20
+L23:
+mov edi,dword ptr (-4)[ebp]
+lea edi,(16)[edi]
+mov dword ptr (-28)[ebp],edi
+mov dword ptr (-4)[ebp],edi
+lea edi,(-24)[ebp]
+mov esi,dword ptr (-28)[ebp]
+lea esi,(-16)[esi]
+mov ecx,16
+rep movsb
+mov edi,dword ptr (-12)[ebp]
+push edi
+mov edi,dword ptr (-16)[ebp]
+push edi
+mov edi,dword ptr (-20)[ebp]
+push edi
+mov edi,dword ptr (-24)[ebp]
+push edi
+lea edi,(L24)
+push edi
+call _printf
+add esp,20
+jmp L19
+L28:
+mov edi,dword ptr (-4)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-4)[ebp],edi
+movsx edi,byte ptr (-4)[edi]
+push edi
+lea edi,(L29)
+push edi
+call _printf
+add esp,8
+jmp L19
+L30:
+mov edi,dword ptr (-4)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (-4)[edi]
+push edi
+lea edi,(L31)
+push edi
+call _printf
+add esp,8
+jmp L19
+L32:
+mov edi,dword ptr (-4)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-4)[ebp],edi
+movsx edi,word ptr (-4)[edi]
+push edi
+lea edi,(L33)
+push edi
+call _printf
+add esp,8
+jmp L19
+L34:
+mov edi,dword ptr (-4)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (-4)[edi]
+push edi
+lea edi,(L35)
+push edi
+call _printf
+add esp,8
+jmp L19
+L36:
+mov edi,dword ptr (-4)[ebp]
+lea edi,(8)[edi]
+mov dword ptr (-4)[ebp],edi
+fld qword ptr (-8)[edi]
+sub esp,8
+fstp qword ptr [esp]
+lea edi,(L37)
+push edi
+call _printf
+add esp,12
+jmp L19
+L20:
+mov edi,dword ptr (20)[ebp]
+movsx edi,byte ptr [edi]
+push edi
+lea edi,(L29)
+push edi
+call _printf
+add esp,8
+jmp L19
+L18:
+mov edi,dword ptr (20)[ebp]
+movsx edi,byte ptr [edi]
+push edi
+lea edi,(L29)
+push edi
+call _printf
+add esp,8
+L19:
+L15:
+inc dword ptr (20)[ebp]
+L17:
+mov edi,dword ptr (20)[ebp]
+movsx edi,byte ptr [edi]
+cmp edi,0
+jne L14
+mov dword ptr (-4)[ebp],0
+mov eax,0
+L12:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_TEXT segment
+align 1
+L37 label byte
+db 37
+db 102
+db 0
+align 1
+L35 label byte
+db 37
+db 115
+db 0
+align 1
+L33 label byte
+db 37
+db 120
+db 0
+align 1
+L31 label byte
+db 37
+db 100
+db 0
+align 1
+L29 label byte
+db 37
+db 99
+db 0
+align 1
+L24 label byte
+db 123
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 32
+db 37
+db 100
+db 125
+db 0
+align 1
+L11 label byte
+db 37
+db 98
+db 32
+db 37
+db 98
+db 32
+db 37
+db 98
+db 32
+db 37
+db 98
+db 32
+db 37
+db 98
+db 32
+db 37
+db 98
+db 10
+db 0
+align 4
+L10 label byte
+dd 00H
+dd 040140000H
+align 1
+L9 label byte
+db 37
+db 115
+db 37
+db 115
+db 32
+db 37
+db 102
+db 37
+db 99
+db 0
+align 1
+L8 label byte
+db 115
+db 116
+db 0
+align 1
+L7 label byte
+db 116
+db 101
+db 0
+align 1
+L6 label byte
+db 37
+db 115
+db 37
+db 115
+db 32
+db 37
+db 119
+db 37
+db 99
+db 0
+align 1
+L5 label byte
+db 116
+db 101
+db 115
+db 116
+db 32
+db 37
+db 100
+db 37
+db 99
+db 0
+align 1
+L4 label byte
+db 50
+db 0
+align 1
+L3 label byte
+db 116
+db 101
+db 115
+db 116
+db 32
+db 37
+db 115
+db 10
+db 0
+align 1
+L2 label byte
+db 116
+db 101
+db 115
+db 116
+db 32
+db 49
+db 10
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/struct.1bk b/lcc/x86/win32/tst/struct.1bk
index 2358779..807f3da 100755
--- a/lcc/x86/win32/tst/struct.1bk
+++ b/lcc/x86/win32/tst/struct.1bk
@@ -1,5 +1,5 @@
-(-1,-1) is not within [10,10; 310,310]
-(1,1) is not within [10,10; 310,310]
-(20,300) is within [10,10; 310,310]
-(500,400) is not within [10,10; 310,310]
-ab
+(-1,-1) is not within [10,10; 310,310]
+(1,1) is not within [10,10; 310,310]
+(20,300) is within [10,10; 310,310]
+(500,400) is not within [10,10; 310,310]
+ab
diff --git a/lcc/x86/win32/tst/struct.2bk b/lcc/x86/win32/tst/struct.2bk
index 8a01bb1..cb0fbd0 100755
--- a/lcc/x86/win32/tst/struct.2bk
+++ b/lcc/x86/win32/tst/struct.2bk
@@ -1,2 +1,2 @@
-tst/struct.c:49: warning: missing return value
-tst/struct.c:68: warning: missing return value
+tst/struct.c:49: warning: missing return value
+tst/struct.c:68: warning: missing return value
diff --git a/lcc/x86/win32/tst/struct.sbk b/lcc/x86/win32/tst/struct.sbk
index 09775a9..4c3d4f7 100755
--- a/lcc/x86/win32/tst/struct.sbk
+++ b/lcc/x86/win32/tst/struct.sbk
@@ -1,453 +1,453 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _addpoint
-_TEXT segment
-_addpoint:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (32)[ebp]
-add dword ptr (24)[ebp],edi
-mov edi,dword ptr (36)[ebp]
-add dword ptr (28)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea esi,(24)[ebp]
-mov ecx,8
-rep movsb
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _canonrect
-_canonrect:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,32
-mov edi,dword ptr (32)[ebp]
-cmp dword ptr (24)[ebp],edi
-jge L10
-mov edi,dword ptr (24)[ebp]
-mov dword ptr (-20)[ebp],edi
-jmp L11
-L10:
-mov edi,dword ptr (32)[ebp]
-mov dword ptr (-20)[ebp],edi
-L11:
-mov edi,dword ptr (-20)[ebp]
-mov dword ptr (-16)[ebp],edi
-mov edi,dword ptr (36)[ebp]
-cmp dword ptr (28)[ebp],edi
-jge L20
-mov edi,dword ptr (28)[ebp]
-mov dword ptr (-24)[ebp],edi
-jmp L21
-L20:
-mov edi,dword ptr (36)[ebp]
-mov dword ptr (-24)[ebp],edi
-L21:
-mov edi,dword ptr (-24)[ebp]
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (32)[ebp]
-cmp dword ptr (24)[ebp],edi
-jle L26
-mov edi,dword ptr (24)[ebp]
-mov dword ptr (-28)[ebp],edi
-jmp L27
-L26:
-mov edi,dword ptr (32)[ebp]
-mov dword ptr (-28)[ebp],edi
-L27:
-mov edi,dword ptr (-28)[ebp]
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr (36)[ebp]
-cmp dword ptr (28)[ebp],edi
-jle L37
-mov edi,dword ptr (28)[ebp]
-mov dword ptr (-32)[ebp],edi
-jmp L38
-L37:
-mov edi,dword ptr (36)[ebp]
-mov dword ptr (-32)[ebp],edi
-L38:
-mov edi,dword ptr (-32)[ebp]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea esi,(-16)[ebp]
-mov ecx,16
-rep movsb
-L5:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _makepoint
-_makepoint:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-mov edi,dword ptr (24)[ebp]
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr (28)[ebp]
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (20)[ebp]
-lea esi,(-8)[ebp]
-mov ecx,8
-rep movsb
-L39:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _makerect
-_makerect:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,16
-lea edi,(-16)[ebp]
-lea esi,(24)[ebp]
-mov ecx,8
-rep movsb
-lea edi,(-8)[ebp]
-lea esi,(32)[ebp]
-mov ecx,8
-rep movsb
-lea esi,(-16)[ebp]
-sub esp,16
-mov edi,esp
-mov ecx,16
-rep movsb
-mov edi,dword ptr (20)[ebp]
-push edi
-call _canonrect
-add esp,20
-L42:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _ptinrect
-_ptinrect:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov edi,dword ptr (20)[ebp]
-cmp edi,dword ptr (28)[ebp]
-jl L53
-cmp edi,dword ptr (36)[ebp]
-jge L53
-mov edi,dword ptr (32)[ebp]
-cmp dword ptr (24)[ebp],edi
-jl L53
-mov edi,dword ptr (40)[ebp]
-cmp dword ptr (24)[ebp],edi
-jge L53
-mov dword ptr (-4)[ebp],1
-jmp L54
-L53:
-mov dword ptr (-4)[ebp],0
-L54:
-mov eax,dword ptr (-4)[ebp]
-L45:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-public _y
-align 4
-_y label byte
-db 97
-db 98
-db 0
-db 1 dup (0)
-public _odd
-_DATA ends
-_TEXT segment
-_odd:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-lea edi,(-4)[ebp]
-lea esi,(20)[ebp]
-mov ecx,4
-rep movsb
-lea edi,(-4)[ebp]
-push edi
-lea edi,(L56)
-push edi
-call _printf
-add esp,8
-mov eax,0
-L55:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_TEXT segment
-align 4
-L58 label byte
-dd 0
-dd 0
-align 4
-L59 label byte
-dd 320
-dd 320
-align 4
-L60 label byte
-dd -1
-dd -1
-dd 1
-dd 1
-dd 20
-dd 300
-dd 500
-dd 400
-public _main
-_TEXT ends
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,108
-lea edi,(-68)[ebp]
-lea esi,(L58)
-mov ecx,8
-rep movsb
-lea edi,(-76)[ebp]
-lea esi,(L59)
-mov ecx,8
-rep movsb
-lea edi,(-36)[ebp]
-lea esi,(L60)
-mov ecx,32
-rep movsb
-push -10
-push -10
-lea edi,(-84)[ebp]
-push edi
-call _makepoint
-add esp,12
-lea esi,(-84)[ebp]
-sub esp,8
-mov edi,esp
-mov ecx,8
-rep movsb
-lea esi,(-76)[ebp]
-sub esp,8
-mov edi,esp
-mov ecx,8
-rep movsb
-lea edi,(-92)[ebp]
-push edi
-call _addpoint
-add esp,20
-push 10
-push 10
-lea edi,(-100)[ebp]
-push edi
-call _makepoint
-add esp,12
-lea esi,(-100)[ebp]
-sub esp,8
-mov edi,esp
-mov ecx,8
-rep movsb
-lea esi,(-68)[ebp]
-sub esp,8
-mov edi,esp
-mov ecx,8
-rep movsb
-lea edi,(-108)[ebp]
-push edi
-call _addpoint
-add esp,20
-lea esi,(-108)[ebp]
-sub esp,8
-mov edi,esp
-mov ecx,8
-rep movsb
-lea esi,(-92)[ebp]
-sub esp,8
-mov edi,esp
-mov ecx,8
-rep movsb
-lea edi,(-52)[ebp]
-push edi
-call _makerect
-add esp,20
-mov dword ptr (-4)[ebp],0
-jmp L64
-L61:
-mov edi,dword ptr (-4)[ebp]
-lea edi,[edi*8]
-mov esi,dword ptr (-32)[ebp][edi]
-push esi
-mov edi,dword ptr (-36)[ebp][edi]
-push edi
-lea edi,(-60)[ebp]
-push edi
-call _makepoint
-add esp,12
-mov edi,dword ptr (-56)[ebp]
-push edi
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr (-36)[ebp][edi*8]
-push edi
-lea edi,(L65)
-push edi
-call _printf
-add esp,12
-lea esi,(-52)[ebp]
-sub esp,16
-mov edi,esp
-mov ecx,16
-rep movsb
-lea esi,(-60)[ebp]
-sub esp,8
-mov edi,esp
-mov ecx,8
-rep movsb
-call _ptinrect
-add esp,24
-cmp eax,0
-jne L68
-lea edi,(L70)
-push edi
-call _printf
-add esp,4
-L68:
-mov edi,dword ptr (-40)[ebp]
-push edi
-mov edi,dword ptr (-44)[ebp]
-push edi
-mov edi,dword ptr (-48)[ebp]
-push edi
-mov edi,dword ptr (-52)[ebp]
-push edi
-lea edi,(L71)
-push edi
-call _printf
-add esp,20
-L62:
-inc dword ptr (-4)[ebp]
-L64:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,4
-jb L61
-lea esi,(_y)
-sub esp,4
-mov edi,esp
-mov ecx,4
-rep movsb
-call _odd
-add esp,4
-push 0
-call _exit
-add esp,4
-mov eax,0
-L57:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _exit:near
-_TEXT segment
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_TEXT segment
-align 1
-L71 label byte
-db 119
-db 105
-db 116
-db 104
-db 105
-db 110
-db 32
-db 91
-db 37
-db 100
-db 44
-db 37
-db 100
-db 59
-db 32
-db 37
-db 100
-db 44
-db 37
-db 100
-db 93
-db 10
-db 0
-align 1
-L70 label byte
-db 110
-db 111
-db 116
-db 32
-db 0
-align 1
-L65 label byte
-db 40
-db 37
-db 100
-db 44
-db 37
-db 100
-db 41
-db 32
-db 105
-db 115
-db 32
-db 0
-align 1
-L56 label byte
-db 37
-db 115
-db 10
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _addpoint
+_TEXT segment
+_addpoint:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (32)[ebp]
+add dword ptr (24)[ebp],edi
+mov edi,dword ptr (36)[ebp]
+add dword ptr (28)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea esi,(24)[ebp]
+mov ecx,8
+rep movsb
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _canonrect
+_canonrect:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,32
+mov edi,dword ptr (32)[ebp]
+cmp dword ptr (24)[ebp],edi
+jge L10
+mov edi,dword ptr (24)[ebp]
+mov dword ptr (-20)[ebp],edi
+jmp L11
+L10:
+mov edi,dword ptr (32)[ebp]
+mov dword ptr (-20)[ebp],edi
+L11:
+mov edi,dword ptr (-20)[ebp]
+mov dword ptr (-16)[ebp],edi
+mov edi,dword ptr (36)[ebp]
+cmp dword ptr (28)[ebp],edi
+jge L20
+mov edi,dword ptr (28)[ebp]
+mov dword ptr (-24)[ebp],edi
+jmp L21
+L20:
+mov edi,dword ptr (36)[ebp]
+mov dword ptr (-24)[ebp],edi
+L21:
+mov edi,dword ptr (-24)[ebp]
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (32)[ebp]
+cmp dword ptr (24)[ebp],edi
+jle L26
+mov edi,dword ptr (24)[ebp]
+mov dword ptr (-28)[ebp],edi
+jmp L27
+L26:
+mov edi,dword ptr (32)[ebp]
+mov dword ptr (-28)[ebp],edi
+L27:
+mov edi,dword ptr (-28)[ebp]
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr (36)[ebp]
+cmp dword ptr (28)[ebp],edi
+jle L37
+mov edi,dword ptr (28)[ebp]
+mov dword ptr (-32)[ebp],edi
+jmp L38
+L37:
+mov edi,dword ptr (36)[ebp]
+mov dword ptr (-32)[ebp],edi
+L38:
+mov edi,dword ptr (-32)[ebp]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea esi,(-16)[ebp]
+mov ecx,16
+rep movsb
+L5:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _makepoint
+_makepoint:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+mov edi,dword ptr (24)[ebp]
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr (28)[ebp]
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (20)[ebp]
+lea esi,(-8)[ebp]
+mov ecx,8
+rep movsb
+L39:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _makerect
+_makerect:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,16
+lea edi,(-16)[ebp]
+lea esi,(24)[ebp]
+mov ecx,8
+rep movsb
+lea edi,(-8)[ebp]
+lea esi,(32)[ebp]
+mov ecx,8
+rep movsb
+lea esi,(-16)[ebp]
+sub esp,16
+mov edi,esp
+mov ecx,16
+rep movsb
+mov edi,dword ptr (20)[ebp]
+push edi
+call _canonrect
+add esp,20
+L42:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _ptinrect
+_ptinrect:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov edi,dword ptr (20)[ebp]
+cmp edi,dword ptr (28)[ebp]
+jl L53
+cmp edi,dword ptr (36)[ebp]
+jge L53
+mov edi,dword ptr (32)[ebp]
+cmp dword ptr (24)[ebp],edi
+jl L53
+mov edi,dword ptr (40)[ebp]
+cmp dword ptr (24)[ebp],edi
+jge L53
+mov dword ptr (-4)[ebp],1
+jmp L54
+L53:
+mov dword ptr (-4)[ebp],0
+L54:
+mov eax,dword ptr (-4)[ebp]
+L45:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+public _y
+align 4
+_y label byte
+db 97
+db 98
+db 0
+db 1 dup (0)
+public _odd
+_DATA ends
+_TEXT segment
+_odd:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+lea edi,(-4)[ebp]
+lea esi,(20)[ebp]
+mov ecx,4
+rep movsb
+lea edi,(-4)[ebp]
+push edi
+lea edi,(L56)
+push edi
+call _printf
+add esp,8
+mov eax,0
+L55:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_TEXT segment
+align 4
+L58 label byte
+dd 0
+dd 0
+align 4
+L59 label byte
+dd 320
+dd 320
+align 4
+L60 label byte
+dd -1
+dd -1
+dd 1
+dd 1
+dd 20
+dd 300
+dd 500
+dd 400
+public _main
+_TEXT ends
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,108
+lea edi,(-68)[ebp]
+lea esi,(L58)
+mov ecx,8
+rep movsb
+lea edi,(-76)[ebp]
+lea esi,(L59)
+mov ecx,8
+rep movsb
+lea edi,(-36)[ebp]
+lea esi,(L60)
+mov ecx,32
+rep movsb
+push -10
+push -10
+lea edi,(-84)[ebp]
+push edi
+call _makepoint
+add esp,12
+lea esi,(-84)[ebp]
+sub esp,8
+mov edi,esp
+mov ecx,8
+rep movsb
+lea esi,(-76)[ebp]
+sub esp,8
+mov edi,esp
+mov ecx,8
+rep movsb
+lea edi,(-92)[ebp]
+push edi
+call _addpoint
+add esp,20
+push 10
+push 10
+lea edi,(-100)[ebp]
+push edi
+call _makepoint
+add esp,12
+lea esi,(-100)[ebp]
+sub esp,8
+mov edi,esp
+mov ecx,8
+rep movsb
+lea esi,(-68)[ebp]
+sub esp,8
+mov edi,esp
+mov ecx,8
+rep movsb
+lea edi,(-108)[ebp]
+push edi
+call _addpoint
+add esp,20
+lea esi,(-108)[ebp]
+sub esp,8
+mov edi,esp
+mov ecx,8
+rep movsb
+lea esi,(-92)[ebp]
+sub esp,8
+mov edi,esp
+mov ecx,8
+rep movsb
+lea edi,(-52)[ebp]
+push edi
+call _makerect
+add esp,20
+mov dword ptr (-4)[ebp],0
+jmp L64
+L61:
+mov edi,dword ptr (-4)[ebp]
+lea edi,[edi*8]
+mov esi,dword ptr (-32)[ebp][edi]
+push esi
+mov edi,dword ptr (-36)[ebp][edi]
+push edi
+lea edi,(-60)[ebp]
+push edi
+call _makepoint
+add esp,12
+mov edi,dword ptr (-56)[ebp]
+push edi
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr (-36)[ebp][edi*8]
+push edi
+lea edi,(L65)
+push edi
+call _printf
+add esp,12
+lea esi,(-52)[ebp]
+sub esp,16
+mov edi,esp
+mov ecx,16
+rep movsb
+lea esi,(-60)[ebp]
+sub esp,8
+mov edi,esp
+mov ecx,8
+rep movsb
+call _ptinrect
+add esp,24
+cmp eax,0
+jne L68
+lea edi,(L70)
+push edi
+call _printf
+add esp,4
+L68:
+mov edi,dword ptr (-40)[ebp]
+push edi
+mov edi,dword ptr (-44)[ebp]
+push edi
+mov edi,dword ptr (-48)[ebp]
+push edi
+mov edi,dword ptr (-52)[ebp]
+push edi
+lea edi,(L71)
+push edi
+call _printf
+add esp,20
+L62:
+inc dword ptr (-4)[ebp]
+L64:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,4
+jb L61
+lea esi,(_y)
+sub esp,4
+mov edi,esp
+mov ecx,4
+rep movsb
+call _odd
+add esp,4
+push 0
+call _exit
+add esp,4
+mov eax,0
+L57:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _exit:near
+_TEXT segment
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_TEXT segment
+align 1
+L71 label byte
+db 119
+db 105
+db 116
+db 104
+db 105
+db 110
+db 32
+db 91
+db 37
+db 100
+db 44
+db 37
+db 100
+db 59
+db 32
+db 37
+db 100
+db 44
+db 37
+db 100
+db 93
+db 10
+db 0
+align 1
+L70 label byte
+db 110
+db 111
+db 116
+db 32
+db 0
+align 1
+L65 label byte
+db 40
+db 37
+db 100
+db 44
+db 37
+db 100
+db 41
+db 32
+db 105
+db 115
+db 32
+db 0
+align 1
+L56 label byte
+db 37
+db 115
+db 10
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/switch.1bk b/lcc/x86/win32/tst/switch.1bk
index 559e8e3..de46a73 100755
--- a/lcc/x86/win32/tst/switch.1bk
+++ b/lcc/x86/win32/tst/switch.1bk
@@ -1,76 +1,76 @@
-b = 0x8
-f = 0xc
-n = 0xa
-r = 0xd
-t = 0x9
-v = 0xb
-x = 0x78
-f:
-x = 0
-x = 1
-x = 2
-x = 2
-x = 2
-x = 2
-x = 2
-x = 7
-x = 8
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 9
-x = 16
-x = 17
-x = 18
-x = 19
-x = 20
-g:
-1 1
-1 2
-2 3
-2 4
-2 5
-3 6
-d 6
-3 7
-d 7
-3 8
-d 8
-d 9
-d 10
-h:
-i = 8
-i = 16
-i = 120
-i = 128
-i = 248
-i = 264
-i = 272
-i = 280
-i = 288
-i = 296
-i = 304
-i = 312
-488 defaults
-x = 0x1000000
-x = 0x2000000
-x = 0x3000000
-x = 0x4000000
-x = 0x5000000
-x = 0x6000000 (default)
-x = 0x7000000 (default)
-0
-1
-2
-3
-4
-5
-0
-1
-2
-3
-4
-5
+b = 0x8
+f = 0xc
+n = 0xa
+r = 0xd
+t = 0x9
+v = 0xb
+x = 0x78
+f:
+x = 0
+x = 1
+x = 2
+x = 2
+x = 2
+x = 2
+x = 2
+x = 7
+x = 8
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 9
+x = 16
+x = 17
+x = 18
+x = 19
+x = 20
+g:
+1 1
+1 2
+2 3
+2 4
+2 5
+3 6
+d 6
+3 7
+d 7
+3 8
+d 8
+d 9
+d 10
+h:
+i = 8
+i = 16
+i = 120
+i = 128
+i = 248
+i = 264
+i = 272
+i = 280
+i = 288
+i = 296
+i = 304
+i = 312
+488 defaults
+x = 0x1000000
+x = 0x2000000
+x = 0x3000000
+x = 0x4000000
+x = 0x5000000
+x = 0x6000000 (default)
+x = 0x7000000 (default)
+0
+1
+2
+3
+4
+5
+0
+1
+2
+3
+4
+5
diff --git a/lcc/x86/win32/tst/switch.2bk b/lcc/x86/win32/tst/switch.2bk
index 76387b3..709b419 100755
--- a/lcc/x86/win32/tst/switch.2bk
+++ b/lcc/x86/win32/tst/switch.2bk
@@ -1,5 +1,5 @@
-tst/switch.c:55: warning: missing return value
-tst/switch.c:73: warning: missing return value
-tst/switch.c:97: warning: missing return value
-tst/switch.c:112: warning: missing return value
-tst/switch.c:137: warning: missing return value
+tst/switch.c:55: warning: missing return value
+tst/switch.c:73: warning: missing return value
+tst/switch.c:97: warning: missing return value
+tst/switch.c:112: warning: missing return value
+tst/switch.c:137: warning: missing return value
diff --git a/lcc/x86/win32/tst/switch.sbk b/lcc/x86/win32/tst/switch.sbk
index d81a0ea..1f67679 100755
--- a/lcc/x86/win32/tst/switch.sbk
+++ b/lcc/x86/win32/tst/switch.sbk
@@ -1,960 +1,960 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _main
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-lea edi,(L6)
-mov dword ptr (-4)[ebp],edi
-jmp L5
-L2:
-mov edi,dword ptr (-4)[ebp]
-movsx edi,byte ptr [edi]
-push edi
-call _backslash
-add esp,4
-push eax
-mov edi,dword ptr (-4)[ebp]
-movsx edi,byte ptr [edi]
-push edi
-lea edi,(L7)
-push edi
-call _printf
-add esp,12
-L3:
-inc dword ptr (-4)[ebp]
-L5:
-mov edi,dword ptr (-4)[ebp]
-movsx edi,byte ptr [edi]
-cmp edi,0
-jne L2
-call _f
-add esp,0
-call _g
-add esp,0
-call _h
-add esp,0
-mov dword ptr (-8)[ebp],16777216
-jmp L11
-L8:
-mov edi,dword ptr (-8)[ebp]
-push edi
-call _big
-add esp,4
-L9:
-add dword ptr (-8)[ebp],16777216
-L11:
-mov edi,dword ptr (-8)[ebp]
-and edi,117440512
-cmp edi,0
-jne L8
-call _limit
-add esp,0
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _backslash
-_backslash:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-cmp edi,102
-je L16
-cmp edi,102
-jg L22
-L21:
-cmp dword ptr (20)[ebp],98
-je L15
-jmp L13
-L22:
-mov edi,dword ptr (20)[ebp]
-cmp edi,110
-je L17
-cmp edi,110
-jl L13
-L23:
-mov edi,dword ptr (20)[ebp]
-cmp edi,114
-je L18
-cmp edi,116
-je L19
-cmp edi,118
-je L20
-jmp L13
-L15:
-mov eax,8
-jmp L12
-L16:
-mov eax,12
-jmp L12
-L17:
-mov eax,10
-jmp L12
-L18:
-mov eax,13
-jmp L12
-L19:
-mov eax,9
-jmp L12
-L20:
-mov eax,11
-jmp L12
-L13:
-mov eax,dword ptr (20)[ebp]
-L12:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _f
-_f:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,12
-mov dword ptr (-8)[ebp],0
-lea edi,(L25)
-push edi
-call _printf
-add esp,4
-mov dword ptr (-4)[ebp],0
-L26:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (-4)[ebp]
-cmp edi,1
-jl L30
-cmp edi,20
-jg L30
-jmp dword ptr (L42-4)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L42 label byte
-dd L32
-dd L33
-dd L30
-dd L30
-dd L30
-dd L30
-dd L34
-dd L35
-dd L36
-dd L30
-dd L30
-dd L30
-dd L30
-dd L30
-dd L30
-dd L37
-dd L38
-dd L39
-dd L40
-dd L41
-_TEXT ends
-_TEXT segment
-L32:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L31
-L33:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L31
-L34:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L31
-L35:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L31
-L36:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L31
-L37:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L31
-L38:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L31
-L39:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L31
-L40:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L31
-L41:
-mov edi,dword ptr (-4)[ebp]
-mov dword ptr (-8)[ebp],edi
-L30:
-L31:
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L44)
-push edi
-call _printf
-add esp,8
-L27:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],20
-jle L26
-mov eax,0
-L24:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _g
-_g:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-lea edi,(L46)
-push edi
-call _printf
-add esp,4
-mov dword ptr (-4)[ebp],1
-L47:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,1001
-jl L64
-cmp edi,1004
-jg L65
-jmp dword ptr (L66-4004)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L66 label byte
-dd L60
-dd L60
-dd L60
-dd L60
-_TEXT ends
-_TEXT segment
-L64:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,1
-jl L51
-cmp edi,8
-jg L51
-jmp dword ptr (L68-4)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L68 label byte
-dd L53
-dd L53
-dd L55
-dd L55
-dd L55
-dd L57
-dd L57
-dd L57
-_TEXT ends
-_TEXT segment
-L65:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,3001
-jl L51
-cmp edi,3004
-jg L51
-jmp dword ptr (L70-12004)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L70 label byte
-dd L62
-dd L62
-dd L62
-dd L62
-_TEXT ends
-_TEXT segment
-L53:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L54)
-push edi
-call _printf
-add esp,8
-jmp L52
-L55:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L56)
-push edi
-call _printf
-add esp,8
-jmp L52
-L57:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L58)
-push edi
-call _printf
-add esp,8
-L51:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L59)
-push edi
-call _printf
-add esp,8
-jmp L52
-L60:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L61)
-push edi
-call _printf
-add esp,8
-jmp L52
-L62:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L63)
-push edi
-call _printf
-add esp,8
-L52:
-L48:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],10
-jle L47
-mov eax,0
-L45:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _h
-_h:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-mov dword ptr (-8)[ebp],0
-lea edi,(L73)
-push edi
-call _printf
-add esp,4
-mov dword ptr (-4)[ebp],1
-L74:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,264
-je L86
-cmp edi,264
-jg L94
-L93:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,120
-je L84
-cmp edi,120
-jg L96
-L95:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,8
-je L83
-cmp edi,8
-jl L78
-L97:
-cmp dword ptr (-4)[ebp],16
-je L82
-jmp L78
-L96:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,128
-je L80
-cmp edi,128
-jl L78
-L98:
-cmp dword ptr (-4)[ebp],248
-je L87
-jmp L78
-L94:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,288
-je L91
-cmp edi,288
-jg L100
-L99:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,272
-je L88
-cmp edi,272
-jl L78
-L101:
-cmp dword ptr (-4)[ebp],280
-je L85
-jmp L78
-L100:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,304
-je L89
-cmp edi,304
-jg L103
-L102:
-cmp dword ptr (-4)[ebp],296
-je L90
-jmp L78
-L103:
-cmp dword ptr (-4)[ebp],312
-je L92
-jmp L78
-L78:
-inc dword ptr (-8)[ebp]
-jmp L75
-L80:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L82:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L83:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L84:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L85:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L86:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L87:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L88:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L89:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L90:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L91:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-jmp L79
-L92:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L81)
-push edi
-call _printf
-add esp,8
-L79:
-L75:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],500
-jle L74
-mov edi,dword ptr (-8)[ebp]
-push edi
-lea edi,(L104)
-push edi
-call _printf
-add esp,8
-mov eax,0
-L72:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _big
-_big:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov edi,dword ptr (20)[ebp]
-and edi,06000000H
-mov dword ptr (-4)[ebp],edi
-mov edi,dword ptr (-4)[ebp]
-cmp edi,33554432
-je L111
-cmp edi,33554432
-jg L115
-L114:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,-2
-je L109
-cmp edi,-1
-je L109
-cmp edi,0
-je L109
-jmp L106
-L115:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,67108864
-je L112
-jmp L106
-L109:
-mov edi,dword ptr (20)[ebp]
-push edi
-lea edi,(L110)
-push edi
-call _printf
-add esp,8
-jmp L107
-L111:
-mov edi,dword ptr (20)[ebp]
-push edi
-lea edi,(L110)
-push edi
-call _printf
-add esp,8
-jmp L107
-L112:
-mov edi,dword ptr (20)[ebp]
-push edi
-lea edi,(L110)
-push edi
-call _printf
-add esp,8
-jmp L107
-L106:
-mov edi,dword ptr (20)[ebp]
-push edi
-lea edi,(L113)
-push edi
-call _printf
-add esp,8
-L107:
-mov eax,0
-L105:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _limit
-_limit:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov dword ptr (-4)[ebp],-2147483648
-L117:
-mov edi,dword ptr (-4)[ebp]
-mov esi,-2147483648
-cmp edi,-2147483648
-jl L121
-cmp edi,-2147483644
-jg L121
-lea edi,[edi*4]
-lea esi,[esi*4]
-sub edi,esi
-jmp dword ptr (L134)[edi]
-_TEXT ends
-_TEXT segment
-align 4
-L134 label byte
-dd L123
-dd L125
-dd L127
-dd L129
-dd L131
-_TEXT ends
-_TEXT segment
-L123:
-lea edi,(L124)
-push edi
-call _printf
-add esp,4
-jmp L122
-L125:
-lea edi,(L126)
-push edi
-call _printf
-add esp,4
-jmp L122
-L127:
-lea edi,(L128)
-push edi
-call _printf
-add esp,4
-jmp L122
-L129:
-lea edi,(L130)
-push edi
-call _printf
-add esp,4
-jmp L122
-L131:
-lea edi,(L132)
-push edi
-call _printf
-add esp,4
-jmp L122
-L121:
-lea edi,(L133)
-push edi
-call _printf
-add esp,4
-L122:
-L118:
-inc dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],-2147483643
-jle L117
-mov dword ptr (-4)[ebp],2147483647
-L135:
-mov edi,dword ptr (-4)[ebp]
-mov esi,2147483643
-cmp edi,2147483643
-jl L139
-cmp edi,2147483647
-jg L139
-lea edi,[edi*4]
-lea esi,[esi*4]
-sub edi,esi
-jmp dword ptr (L146)[edi]
-_TEXT ends
-_TEXT segment
-align 4
-L146 label byte
-dd L145
-dd L144
-dd L143
-dd L142
-dd L141
-_TEXT ends
-_TEXT segment
-L141:
-lea edi,(L124)
-push edi
-call _printf
-add esp,4
-jmp L140
-L142:
-lea edi,(L126)
-push edi
-call _printf
-add esp,4
-jmp L140
-L143:
-lea edi,(L128)
-push edi
-call _printf
-add esp,4
-jmp L140
-L144:
-lea edi,(L130)
-push edi
-call _printf
-add esp,4
-jmp L140
-L145:
-lea edi,(L132)
-push edi
-call _printf
-add esp,4
-jmp L140
-L139:
-lea edi,(L133)
-push edi
-call _printf
-add esp,4
-L140:
-L136:
-dec dword ptr (-4)[ebp]
-cmp dword ptr (-4)[ebp],2147483642
-jge L135
-mov eax,0
-L116:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_TEXT segment
-align 1
-L133 label byte
-db 53
-db 10
-db 0
-align 1
-L132 label byte
-db 52
-db 10
-db 0
-align 1
-L130 label byte
-db 51
-db 10
-db 0
-align 1
-L128 label byte
-db 50
-db 10
-db 0
-align 1
-L126 label byte
-db 49
-db 10
-db 0
-align 1
-L124 label byte
-db 48
-db 10
-db 0
-align 1
-L113 label byte
-db 120
-db 32
-db 61
-db 32
-db 48
-db 120
-db 37
-db 120
-db 32
-db 40
-db 100
-db 101
-db 102
-db 97
-db 117
-db 108
-db 116
-db 41
-db 10
-db 0
-align 1
-L110 label byte
-db 120
-db 32
-db 61
-db 32
-db 48
-db 120
-db 37
-db 120
-db 10
-db 0
-align 1
-L104 label byte
-db 37
-db 100
-db 32
-db 100
-db 101
-db 102
-db 97
-db 117
-db 108
-db 116
-db 115
-db 10
-db 0
-align 1
-L81 label byte
-db 105
-db 32
-db 61
-db 32
-db 37
-db 100
-db 10
-db 0
-align 1
-L73 label byte
-db 104
-db 58
-db 10
-db 0
-align 1
-L63 label byte
-db 54
-db 32
-db 37
-db 100
-db 10
-db 0
-align 1
-L61 label byte
-db 53
-db 32
-db 37
-db 100
-db 10
-db 0
-align 1
-L59 label byte
-db 100
-db 32
-db 37
-db 100
-db 10
-db 0
-align 1
-L58 label byte
-db 51
-db 32
-db 37
-db 100
-db 10
-db 0
-align 1
-L56 label byte
-db 50
-db 32
-db 37
-db 100
-db 10
-db 0
-align 1
-L54 label byte
-db 49
-db 32
-db 37
-db 100
-db 10
-db 0
-align 1
-L46 label byte
-db 103
-db 58
-db 10
-db 0
-align 1
-L44 label byte
-db 120
-db 32
-db 61
-db 32
-db 37
-db 100
-db 10
-db 0
-align 1
-L25 label byte
-db 102
-db 58
-db 10
-db 0
-align 1
-L7 label byte
-db 37
-db 99
-db 32
-db 61
-db 32
-db 48
-db 120
-db 37
-db 120
-db 10
-db 0
-align 1
-L6 label byte
-db 98
-db 102
-db 110
-db 114
-db 116
-db 118
-db 120
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _main
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+lea edi,(L6)
+mov dword ptr (-4)[ebp],edi
+jmp L5
+L2:
+mov edi,dword ptr (-4)[ebp]
+movsx edi,byte ptr [edi]
+push edi
+call _backslash
+add esp,4
+push eax
+mov edi,dword ptr (-4)[ebp]
+movsx edi,byte ptr [edi]
+push edi
+lea edi,(L7)
+push edi
+call _printf
+add esp,12
+L3:
+inc dword ptr (-4)[ebp]
+L5:
+mov edi,dword ptr (-4)[ebp]
+movsx edi,byte ptr [edi]
+cmp edi,0
+jne L2
+call _f
+add esp,0
+call _g
+add esp,0
+call _h
+add esp,0
+mov dword ptr (-8)[ebp],16777216
+jmp L11
+L8:
+mov edi,dword ptr (-8)[ebp]
+push edi
+call _big
+add esp,4
+L9:
+add dword ptr (-8)[ebp],16777216
+L11:
+mov edi,dword ptr (-8)[ebp]
+and edi,117440512
+cmp edi,0
+jne L8
+call _limit
+add esp,0
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _backslash
+_backslash:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+cmp edi,102
+je L16
+cmp edi,102
+jg L22
+L21:
+cmp dword ptr (20)[ebp],98
+je L15
+jmp L13
+L22:
+mov edi,dword ptr (20)[ebp]
+cmp edi,110
+je L17
+cmp edi,110
+jl L13
+L23:
+mov edi,dword ptr (20)[ebp]
+cmp edi,114
+je L18
+cmp edi,116
+je L19
+cmp edi,118
+je L20
+jmp L13
+L15:
+mov eax,8
+jmp L12
+L16:
+mov eax,12
+jmp L12
+L17:
+mov eax,10
+jmp L12
+L18:
+mov eax,13
+jmp L12
+L19:
+mov eax,9
+jmp L12
+L20:
+mov eax,11
+jmp L12
+L13:
+mov eax,dword ptr (20)[ebp]
+L12:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _f
+_f:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,12
+mov dword ptr (-8)[ebp],0
+lea edi,(L25)
+push edi
+call _printf
+add esp,4
+mov dword ptr (-4)[ebp],0
+L26:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (-4)[ebp]
+cmp edi,1
+jl L30
+cmp edi,20
+jg L30
+jmp dword ptr (L42-4)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L42 label byte
+dd L32
+dd L33
+dd L30
+dd L30
+dd L30
+dd L30
+dd L34
+dd L35
+dd L36
+dd L30
+dd L30
+dd L30
+dd L30
+dd L30
+dd L30
+dd L37
+dd L38
+dd L39
+dd L40
+dd L41
+_TEXT ends
+_TEXT segment
+L32:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L31
+L33:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L31
+L34:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L31
+L35:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L31
+L36:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L31
+L37:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L31
+L38:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L31
+L39:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L31
+L40:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L31
+L41:
+mov edi,dword ptr (-4)[ebp]
+mov dword ptr (-8)[ebp],edi
+L30:
+L31:
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L44)
+push edi
+call _printf
+add esp,8
+L27:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],20
+jle L26
+mov eax,0
+L24:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _g
+_g:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+lea edi,(L46)
+push edi
+call _printf
+add esp,4
+mov dword ptr (-4)[ebp],1
+L47:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,1001
+jl L64
+cmp edi,1004
+jg L65
+jmp dword ptr (L66-4004)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L66 label byte
+dd L60
+dd L60
+dd L60
+dd L60
+_TEXT ends
+_TEXT segment
+L64:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,1
+jl L51
+cmp edi,8
+jg L51
+jmp dword ptr (L68-4)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L68 label byte
+dd L53
+dd L53
+dd L55
+dd L55
+dd L55
+dd L57
+dd L57
+dd L57
+_TEXT ends
+_TEXT segment
+L65:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,3001
+jl L51
+cmp edi,3004
+jg L51
+jmp dword ptr (L70-12004)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L70 label byte
+dd L62
+dd L62
+dd L62
+dd L62
+_TEXT ends
+_TEXT segment
+L53:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L54)
+push edi
+call _printf
+add esp,8
+jmp L52
+L55:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L56)
+push edi
+call _printf
+add esp,8
+jmp L52
+L57:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L58)
+push edi
+call _printf
+add esp,8
+L51:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L59)
+push edi
+call _printf
+add esp,8
+jmp L52
+L60:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L61)
+push edi
+call _printf
+add esp,8
+jmp L52
+L62:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L63)
+push edi
+call _printf
+add esp,8
+L52:
+L48:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],10
+jle L47
+mov eax,0
+L45:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _h
+_h:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+mov dword ptr (-8)[ebp],0
+lea edi,(L73)
+push edi
+call _printf
+add esp,4
+mov dword ptr (-4)[ebp],1
+L74:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,264
+je L86
+cmp edi,264
+jg L94
+L93:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,120
+je L84
+cmp edi,120
+jg L96
+L95:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,8
+je L83
+cmp edi,8
+jl L78
+L97:
+cmp dword ptr (-4)[ebp],16
+je L82
+jmp L78
+L96:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,128
+je L80
+cmp edi,128
+jl L78
+L98:
+cmp dword ptr (-4)[ebp],248
+je L87
+jmp L78
+L94:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,288
+je L91
+cmp edi,288
+jg L100
+L99:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,272
+je L88
+cmp edi,272
+jl L78
+L101:
+cmp dword ptr (-4)[ebp],280
+je L85
+jmp L78
+L100:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,304
+je L89
+cmp edi,304
+jg L103
+L102:
+cmp dword ptr (-4)[ebp],296
+je L90
+jmp L78
+L103:
+cmp dword ptr (-4)[ebp],312
+je L92
+jmp L78
+L78:
+inc dword ptr (-8)[ebp]
+jmp L75
+L80:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L82:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L83:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L84:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L85:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L86:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L87:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L88:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L89:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L90:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L91:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+jmp L79
+L92:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L81)
+push edi
+call _printf
+add esp,8
+L79:
+L75:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],500
+jle L74
+mov edi,dword ptr (-8)[ebp]
+push edi
+lea edi,(L104)
+push edi
+call _printf
+add esp,8
+mov eax,0
+L72:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _big
+_big:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov edi,dword ptr (20)[ebp]
+and edi,06000000H
+mov dword ptr (-4)[ebp],edi
+mov edi,dword ptr (-4)[ebp]
+cmp edi,33554432
+je L111
+cmp edi,33554432
+jg L115
+L114:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,-2
+je L109
+cmp edi,-1
+je L109
+cmp edi,0
+je L109
+jmp L106
+L115:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,67108864
+je L112
+jmp L106
+L109:
+mov edi,dword ptr (20)[ebp]
+push edi
+lea edi,(L110)
+push edi
+call _printf
+add esp,8
+jmp L107
+L111:
+mov edi,dword ptr (20)[ebp]
+push edi
+lea edi,(L110)
+push edi
+call _printf
+add esp,8
+jmp L107
+L112:
+mov edi,dword ptr (20)[ebp]
+push edi
+lea edi,(L110)
+push edi
+call _printf
+add esp,8
+jmp L107
+L106:
+mov edi,dword ptr (20)[ebp]
+push edi
+lea edi,(L113)
+push edi
+call _printf
+add esp,8
+L107:
+mov eax,0
+L105:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _limit
+_limit:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov dword ptr (-4)[ebp],-2147483648
+L117:
+mov edi,dword ptr (-4)[ebp]
+mov esi,-2147483648
+cmp edi,-2147483648
+jl L121
+cmp edi,-2147483644
+jg L121
+lea edi,[edi*4]
+lea esi,[esi*4]
+sub edi,esi
+jmp dword ptr (L134)[edi]
+_TEXT ends
+_TEXT segment
+align 4
+L134 label byte
+dd L123
+dd L125
+dd L127
+dd L129
+dd L131
+_TEXT ends
+_TEXT segment
+L123:
+lea edi,(L124)
+push edi
+call _printf
+add esp,4
+jmp L122
+L125:
+lea edi,(L126)
+push edi
+call _printf
+add esp,4
+jmp L122
+L127:
+lea edi,(L128)
+push edi
+call _printf
+add esp,4
+jmp L122
+L129:
+lea edi,(L130)
+push edi
+call _printf
+add esp,4
+jmp L122
+L131:
+lea edi,(L132)
+push edi
+call _printf
+add esp,4
+jmp L122
+L121:
+lea edi,(L133)
+push edi
+call _printf
+add esp,4
+L122:
+L118:
+inc dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],-2147483643
+jle L117
+mov dword ptr (-4)[ebp],2147483647
+L135:
+mov edi,dword ptr (-4)[ebp]
+mov esi,2147483643
+cmp edi,2147483643
+jl L139
+cmp edi,2147483647
+jg L139
+lea edi,[edi*4]
+lea esi,[esi*4]
+sub edi,esi
+jmp dword ptr (L146)[edi]
+_TEXT ends
+_TEXT segment
+align 4
+L146 label byte
+dd L145
+dd L144
+dd L143
+dd L142
+dd L141
+_TEXT ends
+_TEXT segment
+L141:
+lea edi,(L124)
+push edi
+call _printf
+add esp,4
+jmp L140
+L142:
+lea edi,(L126)
+push edi
+call _printf
+add esp,4
+jmp L140
+L143:
+lea edi,(L128)
+push edi
+call _printf
+add esp,4
+jmp L140
+L144:
+lea edi,(L130)
+push edi
+call _printf
+add esp,4
+jmp L140
+L145:
+lea edi,(L132)
+push edi
+call _printf
+add esp,4
+jmp L140
+L139:
+lea edi,(L133)
+push edi
+call _printf
+add esp,4
+L140:
+L136:
+dec dword ptr (-4)[ebp]
+cmp dword ptr (-4)[ebp],2147483642
+jge L135
+mov eax,0
+L116:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_TEXT segment
+align 1
+L133 label byte
+db 53
+db 10
+db 0
+align 1
+L132 label byte
+db 52
+db 10
+db 0
+align 1
+L130 label byte
+db 51
+db 10
+db 0
+align 1
+L128 label byte
+db 50
+db 10
+db 0
+align 1
+L126 label byte
+db 49
+db 10
+db 0
+align 1
+L124 label byte
+db 48
+db 10
+db 0
+align 1
+L113 label byte
+db 120
+db 32
+db 61
+db 32
+db 48
+db 120
+db 37
+db 120
+db 32
+db 40
+db 100
+db 101
+db 102
+db 97
+db 117
+db 108
+db 116
+db 41
+db 10
+db 0
+align 1
+L110 label byte
+db 120
+db 32
+db 61
+db 32
+db 48
+db 120
+db 37
+db 120
+db 10
+db 0
+align 1
+L104 label byte
+db 37
+db 100
+db 32
+db 100
+db 101
+db 102
+db 97
+db 117
+db 108
+db 116
+db 115
+db 10
+db 0
+align 1
+L81 label byte
+db 105
+db 32
+db 61
+db 32
+db 37
+db 100
+db 10
+db 0
+align 1
+L73 label byte
+db 104
+db 58
+db 10
+db 0
+align 1
+L63 label byte
+db 54
+db 32
+db 37
+db 100
+db 10
+db 0
+align 1
+L61 label byte
+db 53
+db 32
+db 37
+db 100
+db 10
+db 0
+align 1
+L59 label byte
+db 100
+db 32
+db 37
+db 100
+db 10
+db 0
+align 1
+L58 label byte
+db 51
+db 32
+db 37
+db 100
+db 10
+db 0
+align 1
+L56 label byte
+db 50
+db 32
+db 37
+db 100
+db 10
+db 0
+align 1
+L54 label byte
+db 49
+db 32
+db 37
+db 100
+db 10
+db 0
+align 1
+L46 label byte
+db 103
+db 58
+db 10
+db 0
+align 1
+L44 label byte
+db 120
+db 32
+db 61
+db 32
+db 37
+db 100
+db 10
+db 0
+align 1
+L25 label byte
+db 102
+db 58
+db 10
+db 0
+align 1
+L7 label byte
+db 37
+db 99
+db 32
+db 61
+db 32
+db 48
+db 120
+db 37
+db 120
+db 10
+db 0
+align 1
+L6 label byte
+db 98
+db 102
+db 110
+db 114
+db 116
+db 118
+db 120
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/wf1.1bk b/lcc/x86/win32/tst/wf1.1bk
index 095e087..a846267 100755
--- a/lcc/x86/win32/tst/wf1.1bk
+++ b/lcc/x86/win32/tst/wf1.1bk
@@ -1,74 +1,74 @@
-5 a
-2 and
-5 buf
-16 c
-8 char
-1 compare
-4 cond
-5 count
-1 d
-1 die
-3 else
-1 entry
-1 eof
-4 err
-1 error
-1 exit
-1 folded
-1 for
-1 free
-1 frequencies
-1 frequency
-1 get
-2 getchar
-3 getword
-14 if
-2 in
-1 index
-1 input
-1 install
-8 int
-1 into
-1 is
-4 isletter
-1 it
-1 itself
-5 left
-1 letter
-7 lookup
-1 main
-2 malloc
-1 message
-2 n
-1 necessary
-12 next
-9 node
-4 of
-1 on
-1 or
-1 otherwise
-2 out
-8 p
-3 print
-2 printf
-16 return
-5 right
-4 root
-25 s
-2 storage
-3 strcmp
-1 strcpy
-1 strlen
-8 struct
-1 structures
-2 subtree
-1 t
-5 tprint
-9 tree
-1 uses
-1 version
-1 wf
-3 while
-21 word
-9 words
-2 z
+5 a
+2 and
+5 buf
+16 c
+8 char
+1 compare
+4 cond
+5 count
+1 d
+1 die
+3 else
+1 entry
+1 eof
+4 err
+1 error
+1 exit
+1 folded
+1 for
+1 free
+1 frequencies
+1 frequency
+1 get
+2 getchar
+3 getword
+14 if
+2 in
+1 index
+1 input
+1 install
+8 int
+1 into
+1 is
+4 isletter
+1 it
+1 itself
+5 left
+1 letter
+7 lookup
+1 main
+2 malloc
+1 message
+2 n
+1 necessary
+12 next
+9 node
+4 of
+1 on
+1 or
+1 otherwise
+2 out
+8 p
+3 print
+2 printf
+16 return
+5 right
+4 root
+25 s
+2 storage
+3 strcmp
+1 strcpy
+1 strlen
+8 struct
+1 structures
+2 subtree
+1 t
+5 tprint
+9 tree
+1 uses
+1 version
+1 wf
+3 while
+21 word
+9 words
+2 z
diff --git a/lcc/x86/win32/tst/wf1.2bk b/lcc/x86/win32/tst/wf1.2bk
index 0e7a8a6..190e4a1 100755
--- a/lcc/x86/win32/tst/wf1.2bk
+++ b/lcc/x86/win32/tst/wf1.2bk
@@ -1,2 +1,2 @@
-tst/wf1.c:29: warning: missing return value
-tst/wf1.c:87: warning: missing return value
+tst/wf1.c:29: warning: missing return value
+tst/wf1.c:87: warning: missing return value
diff --git a/lcc/x86/win32/tst/wf1.sbk b/lcc/x86/win32/tst/wf1.sbk
index df5688a..d98b2d2 100755
--- a/lcc/x86/win32/tst/wf1.sbk
+++ b/lcc/x86/win32/tst/wf1.sbk
@@ -1,451 +1,451 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-public _main
-_TEXT segment
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,24
-mov dword ptr (-24)[ebp],0
-mov dword ptr (_next),0
-jmp L3
-L2:
-lea edi,(-24)[ebp]
-push edi
-lea edi,(-20)[ebp]
-push edi
-call _lookup
-add esp,8
-inc dword ptr [eax]
-L3:
-lea edi,(-20)[ebp]
-push edi
-call _getword
-add esp,4
-cmp eax,0
-jne L2
-mov edi,dword ptr (-24)[ebp]
-push edi
-call _tprint
-add esp,4
-mov eax,0
-L1:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _err
-_err:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-push edi
-lea edi,(L6)
-push edi
-call _printf
-add esp,8
-push 1
-call _exit
-add esp,4
-mov eax,0
-L5:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _getword
-_getword:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,8
-L8:
-L9:
-call _getchar
-add esp,0
-mov dword ptr (-4)[ebp],eax
-cmp eax,-1
-je L11
-mov edi,dword ptr (-4)[ebp]
-push edi
-call _isletter
-add esp,4
-cmp eax,0
-je L8
-L11:
-mov edi,dword ptr (20)[ebp]
-mov dword ptr (-8)[ebp],edi
-jmp L15
-L12:
-mov edi,dword ptr (-8)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-8)[ebp],esi
-mov esi,dword ptr (-4)[ebp]
-mov ebx,esi
-mov byte ptr [edi],bl
-L13:
-call _getchar
-add esp,0
-mov dword ptr (-4)[ebp],eax
-L15:
-mov edi,dword ptr (-4)[ebp]
-push edi
-call _isletter
-add esp,4
-mov dword ptr (-4)[ebp],eax
-cmp eax,0
-jne L12
-mov edi,dword ptr (-8)[ebp]
-mov byte ptr [edi],0
-mov edi,dword ptr (-8)[ebp]
-mov esi,dword ptr (20)[ebp]
-cmp edi,esi
-jbe L16
-mov eax,1
-jmp L7
-L16:
-mov eax,0
-L7:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _isletter
-_isletter:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-cmp edi,65
-jl L19
-cmp edi,90
-jg L19
-add dword ptr (20)[ebp],32
-L19:
-mov edi,dword ptr (20)[ebp]
-cmp edi,97
-jl L21
-cmp edi,122
-jg L21
-mov eax,dword ptr (20)[ebp]
-jmp L18
-L21:
-mov eax,0
-L18:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _lookup
-_lookup:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-mov edi,dword ptr (24)[ebp]
-mov edi,dword ptr [edi]
-cmp edi,0
-je L24
-mov edi,dword ptr (24)[ebp]
-mov edi,dword ptr [edi]
-mov edi,dword ptr (12)[edi]
-push edi
-mov edi,dword ptr (20)[ebp]
-push edi
-call _strcmp
-add esp,8
-mov dword ptr (-4)[ebp],eax
-cmp dword ptr (-4)[ebp],0
-jge L26
-mov edi,dword ptr (24)[ebp]
-mov edi,dword ptr [edi]
-lea edi,(4)[edi]
-push edi
-mov edi,dword ptr (20)[ebp]
-push edi
-call _lookup
-add esp,8
-mov edi,eax
-jmp L23
-L26:
-cmp dword ptr (-4)[ebp],0
-jle L28
-mov edi,dword ptr (24)[ebp]
-mov edi,dword ptr [edi]
-lea edi,(8)[edi]
-push edi
-mov edi,dword ptr (20)[ebp]
-push edi
-call _lookup
-add esp,8
-mov edi,eax
-jmp L23
-L28:
-mov edi,dword ptr (24)[ebp]
-mov eax,dword ptr [edi]
-jmp L23
-L24:
-cmp dword ptr (_next),2000
-jl L30
-lea edi,(L32)
-push edi
-call _err
-add esp,4
-L30:
-mov edi,dword ptr (_next)
-sal edi,4
-mov dword ptr (_words)[edi],0
-mov edi,dword ptr (_next)
-sal edi,4
-mov dword ptr (_words+8)[edi],0
-mov dword ptr (_words+4)[edi],0
-mov edi,dword ptr (20)[ebp]
-push edi
-call _strlen
-add esp,4
-lea edi,(1)[eax]
-push edi
-call _malloc
-add esp,4
-mov esi,dword ptr (_next)
-sal esi,4
-mov dword ptr (_words+12)[esi],eax
-mov edi,dword ptr (_next)
-sal edi,4
-mov edi,dword ptr (_words+12)[edi]
-cmp edi,0
-jne L36
-lea edi,(L39)
-push edi
-call _err
-add esp,4
-L36:
-mov edi,dword ptr (20)[ebp]
-push edi
-mov edi,dword ptr (_next)
-sal edi,4
-mov edi,dword ptr (_words+12)[edi]
-push edi
-call _strcpy
-add esp,8
-mov edi,dword ptr (_next)
-lea esi,(1)[edi]
-mov dword ptr (_next),esi
-sal edi,4
-lea edi,(_words)[edi]
-mov esi,dword ptr (24)[ebp]
-mov dword ptr [esi],edi
-mov eax,edi
-L23:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _tprint
-_tprint:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-cmp edi,0
-je L42
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (4)[edi]
-push edi
-call _tprint
-add esp,4
-mov edi,dword ptr (20)[ebp]
-mov esi,dword ptr (12)[edi]
-push esi
-mov edi,dword ptr [edi]
-push edi
-lea edi,(L44)
-push edi
-call _printf
-add esp,12
-mov edi,dword ptr (20)[ebp]
-mov edi,dword ptr (8)[edi]
-push edi
-call _tprint
-add esp,4
-L42:
-mov eax,0
-L41:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _strcmp
-_strcmp:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-jmp L47
-L46:
-mov edi,dword ptr (20)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (20)[ebp],esi
-movsx edi,byte ptr [edi]
-cmp edi,0
-jne L49
-mov eax,0
-jmp L45
-L49:
-inc dword ptr (24)[ebp]
-L47:
-mov edi,dword ptr (20)[ebp]
-movsx edi,byte ptr [edi]
-mov esi,dword ptr (24)[ebp]
-movsx esi,byte ptr [esi]
-cmp edi,esi
-je L46
-mov edi,dword ptr (20)[ebp]
-movsx edi,byte ptr [edi]
-cmp edi,0
-jne L51
-mov eax,-1
-jmp L45
-L51:
-mov edi,dword ptr (24)[ebp]
-movsx edi,byte ptr [edi]
-cmp edi,0
-jne L53
-mov eax,1
-jmp L45
-L53:
-mov edi,dword ptr (20)[ebp]
-movsx edi,byte ptr [edi]
-mov esi,dword ptr (24)[ebp]
-movsx esi,byte ptr [esi]
-mov eax,edi
-sub eax,esi
-L45:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-extrn _strcpy:near
-_TEXT segment
-_TEXT ends
-extrn _strlen:near
-_TEXT segment
-_TEXT ends
-extrn _malloc:near
-_TEXT segment
-_TEXT ends
-extrn _getchar:near
-_TEXT segment
-_TEXT ends
-extrn _exit:near
-_TEXT segment
-_TEXT ends
-extrn _printf:near
-_TEXT segment
-_TEXT ends
-_DATA segment
-public _next
-align 4
-_next label byte
-db 4 dup (0)
-public _words
-align 4
-_words label byte
-db 32000 dup (0)
-_DATA ends
-_TEXT segment
-align 1
-L44 label byte
-db 37
-db 100
-db 9
-db 37
-db 115
-db 10
-db 0
-align 1
-L39 label byte
-db 111
-db 117
-db 116
-db 32
-db 111
-db 102
-db 32
-db 119
-db 111
-db 114
-db 100
-db 32
-db 115
-db 116
-db 111
-db 114
-db 97
-db 103
-db 101
-db 0
-align 1
-L32 label byte
-db 111
-db 117
-db 116
-db 32
-db 111
-db 102
-db 32
-db 110
-db 111
-db 100
-db 101
-db 32
-db 115
-db 116
-db 111
-db 114
-db 97
-db 103
-db 101
-db 0
-align 1
-L6 label byte
-db 63
-db 32
-db 37
-db 115
-db 10
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+public _main
+_TEXT segment
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,24
+mov dword ptr (-24)[ebp],0
+mov dword ptr (_next),0
+jmp L3
+L2:
+lea edi,(-24)[ebp]
+push edi
+lea edi,(-20)[ebp]
+push edi
+call _lookup
+add esp,8
+inc dword ptr [eax]
+L3:
+lea edi,(-20)[ebp]
+push edi
+call _getword
+add esp,4
+cmp eax,0
+jne L2
+mov edi,dword ptr (-24)[ebp]
+push edi
+call _tprint
+add esp,4
+mov eax,0
+L1:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _err
+_err:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+push edi
+lea edi,(L6)
+push edi
+call _printf
+add esp,8
+push 1
+call _exit
+add esp,4
+mov eax,0
+L5:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _getword
+_getword:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,8
+L8:
+L9:
+call _getchar
+add esp,0
+mov dword ptr (-4)[ebp],eax
+cmp eax,-1
+je L11
+mov edi,dword ptr (-4)[ebp]
+push edi
+call _isletter
+add esp,4
+cmp eax,0
+je L8
+L11:
+mov edi,dword ptr (20)[ebp]
+mov dword ptr (-8)[ebp],edi
+jmp L15
+L12:
+mov edi,dword ptr (-8)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-8)[ebp],esi
+mov esi,dword ptr (-4)[ebp]
+mov ebx,esi
+mov byte ptr [edi],bl
+L13:
+call _getchar
+add esp,0
+mov dword ptr (-4)[ebp],eax
+L15:
+mov edi,dword ptr (-4)[ebp]
+push edi
+call _isletter
+add esp,4
+mov dword ptr (-4)[ebp],eax
+cmp eax,0
+jne L12
+mov edi,dword ptr (-8)[ebp]
+mov byte ptr [edi],0
+mov edi,dword ptr (-8)[ebp]
+mov esi,dword ptr (20)[ebp]
+cmp edi,esi
+jbe L16
+mov eax,1
+jmp L7
+L16:
+mov eax,0
+L7:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _isletter
+_isletter:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+cmp edi,65
+jl L19
+cmp edi,90
+jg L19
+add dword ptr (20)[ebp],32
+L19:
+mov edi,dword ptr (20)[ebp]
+cmp edi,97
+jl L21
+cmp edi,122
+jg L21
+mov eax,dword ptr (20)[ebp]
+jmp L18
+L21:
+mov eax,0
+L18:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _lookup
+_lookup:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+mov edi,dword ptr (24)[ebp]
+mov edi,dword ptr [edi]
+cmp edi,0
+je L24
+mov edi,dword ptr (24)[ebp]
+mov edi,dword ptr [edi]
+mov edi,dword ptr (12)[edi]
+push edi
+mov edi,dword ptr (20)[ebp]
+push edi
+call _strcmp
+add esp,8
+mov dword ptr (-4)[ebp],eax
+cmp dword ptr (-4)[ebp],0
+jge L26
+mov edi,dword ptr (24)[ebp]
+mov edi,dword ptr [edi]
+lea edi,(4)[edi]
+push edi
+mov edi,dword ptr (20)[ebp]
+push edi
+call _lookup
+add esp,8
+mov edi,eax
+jmp L23
+L26:
+cmp dword ptr (-4)[ebp],0
+jle L28
+mov edi,dword ptr (24)[ebp]
+mov edi,dword ptr [edi]
+lea edi,(8)[edi]
+push edi
+mov edi,dword ptr (20)[ebp]
+push edi
+call _lookup
+add esp,8
+mov edi,eax
+jmp L23
+L28:
+mov edi,dword ptr (24)[ebp]
+mov eax,dword ptr [edi]
+jmp L23
+L24:
+cmp dword ptr (_next),2000
+jl L30
+lea edi,(L32)
+push edi
+call _err
+add esp,4
+L30:
+mov edi,dword ptr (_next)
+sal edi,4
+mov dword ptr (_words)[edi],0
+mov edi,dword ptr (_next)
+sal edi,4
+mov dword ptr (_words+8)[edi],0
+mov dword ptr (_words+4)[edi],0
+mov edi,dword ptr (20)[ebp]
+push edi
+call _strlen
+add esp,4
+lea edi,(1)[eax]
+push edi
+call _malloc
+add esp,4
+mov esi,dword ptr (_next)
+sal esi,4
+mov dword ptr (_words+12)[esi],eax
+mov edi,dword ptr (_next)
+sal edi,4
+mov edi,dword ptr (_words+12)[edi]
+cmp edi,0
+jne L36
+lea edi,(L39)
+push edi
+call _err
+add esp,4
+L36:
+mov edi,dword ptr (20)[ebp]
+push edi
+mov edi,dword ptr (_next)
+sal edi,4
+mov edi,dword ptr (_words+12)[edi]
+push edi
+call _strcpy
+add esp,8
+mov edi,dword ptr (_next)
+lea esi,(1)[edi]
+mov dword ptr (_next),esi
+sal edi,4
+lea edi,(_words)[edi]
+mov esi,dword ptr (24)[ebp]
+mov dword ptr [esi],edi
+mov eax,edi
+L23:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _tprint
+_tprint:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+cmp edi,0
+je L42
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (4)[edi]
+push edi
+call _tprint
+add esp,4
+mov edi,dword ptr (20)[ebp]
+mov esi,dword ptr (12)[edi]
+push esi
+mov edi,dword ptr [edi]
+push edi
+lea edi,(L44)
+push edi
+call _printf
+add esp,12
+mov edi,dword ptr (20)[ebp]
+mov edi,dword ptr (8)[edi]
+push edi
+call _tprint
+add esp,4
+L42:
+mov eax,0
+L41:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _strcmp
+_strcmp:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+jmp L47
+L46:
+mov edi,dword ptr (20)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (20)[ebp],esi
+movsx edi,byte ptr [edi]
+cmp edi,0
+jne L49
+mov eax,0
+jmp L45
+L49:
+inc dword ptr (24)[ebp]
+L47:
+mov edi,dword ptr (20)[ebp]
+movsx edi,byte ptr [edi]
+mov esi,dword ptr (24)[ebp]
+movsx esi,byte ptr [esi]
+cmp edi,esi
+je L46
+mov edi,dword ptr (20)[ebp]
+movsx edi,byte ptr [edi]
+cmp edi,0
+jne L51
+mov eax,-1
+jmp L45
+L51:
+mov edi,dword ptr (24)[ebp]
+movsx edi,byte ptr [edi]
+cmp edi,0
+jne L53
+mov eax,1
+jmp L45
+L53:
+mov edi,dword ptr (20)[ebp]
+movsx edi,byte ptr [edi]
+mov esi,dword ptr (24)[ebp]
+movsx esi,byte ptr [esi]
+mov eax,edi
+sub eax,esi
+L45:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+extrn _strcpy:near
+_TEXT segment
+_TEXT ends
+extrn _strlen:near
+_TEXT segment
+_TEXT ends
+extrn _malloc:near
+_TEXT segment
+_TEXT ends
+extrn _getchar:near
+_TEXT segment
+_TEXT ends
+extrn _exit:near
+_TEXT segment
+_TEXT ends
+extrn _printf:near
+_TEXT segment
+_TEXT ends
+_DATA segment
+public _next
+align 4
+_next label byte
+db 4 dup (0)
+public _words
+align 4
+_words label byte
+db 32000 dup (0)
+_DATA ends
+_TEXT segment
+align 1
+L44 label byte
+db 37
+db 100
+db 9
+db 37
+db 115
+db 10
+db 0
+align 1
+L39 label byte
+db 111
+db 117
+db 116
+db 32
+db 111
+db 102
+db 32
+db 119
+db 111
+db 114
+db 100
+db 32
+db 115
+db 116
+db 111
+db 114
+db 97
+db 103
+db 101
+db 0
+align 1
+L32 label byte
+db 111
+db 117
+db 116
+db 32
+db 111
+db 102
+db 32
+db 110
+db 111
+db 100
+db 101
+db 32
+db 115
+db 116
+db 111
+db 114
+db 97
+db 103
+db 101
+db 0
+align 1
+L6 label byte
+db 63
+db 32
+db 37
+db 115
+db 10
+db 0
+_TEXT ends
+end
diff --git a/lcc/x86/win32/tst/yacc.1bk b/lcc/x86/win32/tst/yacc.1bk
index b08a02f..60de9b5 100755
--- a/lcc/x86/win32/tst/yacc.1bk
+++ b/lcc/x86/win32/tst/yacc.1bk
@@ -1,10 +1,10 @@
-a
-b
-load
-negate
-push 5
-c
-load
-multiply
-add
-store
+a
+b
+load
+negate
+push 5
+c
+load
+multiply
+add
+store
diff --git a/lcc/x86/win32/tst/yacc.2bk b/lcc/x86/win32/tst/yacc.2bk
index a84aa5b..9a4fd61 100755
--- a/lcc/x86/win32/tst/yacc.2bk
+++ b/lcc/x86/win32/tst/yacc.2bk
@@ -1,3 +1,3 @@
-tst/yacc.c:345: warning: missing return value
-tst/yacc.c:349: warning: missing return value
-tst/yacc.c:359: warning: missing return value
+tst/yacc.c:345: warning: missing return value
+tst/yacc.c:349: warning: missing return value
+tst/yacc.c:359: warning: missing return value
diff --git a/lcc/x86/win32/tst/yacc.sbk b/lcc/x86/win32/tst/yacc.sbk
index 432c9a4..860a864 100755
--- a/lcc/x86/win32/tst/yacc.sbk
+++ b/lcc/x86/win32/tst/yacc.sbk
@@ -1,2489 +1,2489 @@
-.486
-.model flat
-extrn __fltused:near
-extrn __ftol:near
-_DATA segment
-public _yyin
-align 4
-_yyin label byte
-dd __iob
-public _yyout
-align 4
-_yyout label byte
-dd __iob+32
-public _yylex
-_DATA ends
-_TEXT segment
-_yylex:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,4
-jmp L4
-L3:
-L6:
-mov edi,dword ptr (-4)[ebp]
-cmp edi,-1
-jl L7
-cmp edi,4
-jg L7
-jmp dword ptr (L18+4)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L18 label byte
-dd L8
-dd L9
-dd L12
-dd L13
-dd L8
-dd L15
-_TEXT ends
-_TEXT segment
-L9:
-call _yywrap
-add esp,0
-cmp eax,0
-je L8
-mov eax,0
-jmp L2
-L12:
-mov eax,257
-jmp L2
-L13:
-mov eax,258
-jmp L2
-L15:
-movsx eax,byte ptr (_yytext)
-jmp L2
-L7:
-mov edi,dword ptr (-4)[ebp]
-push edi
-lea edi,(L17)
-push edi
-mov edi,dword ptr (_yyout)
-push edi
-call _fprintf
-add esp,12
-L8:
-L4:
-call _yylook
-add esp,0
-mov dword ptr (-4)[ebp],eax
-cmp eax,0
-jge L3
-mov eax,0
-L2:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-public _yyvstop
-align 4
-_yyvstop label byte
-dd 0
-dd 4
-dd 0
-dd 3
-dd 4
-dd 0
-dd 2
-dd 4
-dd 0
-dd 1
-dd 4
-dd 0
-dd 2
-dd 0
-dd 1
-dd 0
-dd 0
-public _yycrank
-align 4
-_yycrank label byte
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 1
-db 3
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 1
-db 4
-db 2 dup (0)
-db 1
-db 3
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 1
-db 5
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 5
-db 7
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 1
-db 6
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 6
-db 8
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-db 0
-db 0
-db 2 dup (0)
-public _yysvec
-align 4
-_yysvec label byte
-dd 00H
-dd 00H
-dd 00H
-dd _yycrank-4
-dd 00H
-dd 00H
-dd _yycrank
-dd _yysvec+12
-dd 00H
-dd _yycrank
-dd 00H
-dd _yyvstop+4
-dd _yycrank
-dd 00H
-dd _yyvstop+12
-dd _yycrank+8
-dd 00H
-dd _yyvstop+24
-dd _yycrank+76
-dd 00H
-dd _yyvstop+36
-dd _yycrank
-dd _yysvec+60
-dd _yyvstop+48
-dd _yycrank
-dd _yysvec+72
-dd _yyvstop+56
-dd 00H
-dd 00H
-dd 00H
-public _yytop
-align 4
-_yytop label byte
-dd _yycrank+564
-public _yybgin
-align 4
-_yybgin label byte
-dd _yysvec+12
-public _yymatch
-align 1
-_yymatch label byte
-db 0
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 9
-db 10
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 9
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 48
-db 48
-db 48
-db 48
-db 48
-db 48
-db 48
-db 48
-db 48
-db 48
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 1
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 1
-db 1
-db 1
-db 1
-db 65
-db 1
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 65
-db 1
-db 1
-db 1
-db 1
-db 1
-db 0
-public _yyextra
-align 1
-_yyextra label byte
-db 0
-db 0
-db 0
-db 0
-db 0
-db 0
-db 0
-db 0
-db 0
-public _yylineno
-align 4
-_yylineno label byte
-dd 1
-public _yysptr
-align 4
-_yysptr label byte
-dd _yysbuf
-public _yyprevious
-align 4
-_yyprevious label byte
-dd 10
-public _yylook
-_DATA ends
-_TEXT segment
-_yylook:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,44
-cmp dword ptr (_yymorfg),0
-jne L35
-lea edi,(_yytext)
-mov dword ptr (-16)[ebp],edi
-jmp L36
-L35:
-mov dword ptr (_yymorfg),0
-mov edi,dword ptr (_yyleng)
-lea edi,(_yytext)[edi]
-mov dword ptr (-16)[ebp],edi
-L36:
-L37:
-lea edi,(_yylstate)
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr (_yybgin)
-mov dword ptr (-4)[ebp],edi
-mov dword ptr (_yyestate),edi
-cmp dword ptr (_yyprevious),10
-jne L41
-mov edi,dword ptr (-4)[ebp]
-lea edi,(12)[edi]
-mov dword ptr (-4)[ebp],edi
-L41:
-L43:
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr [edi]
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (-12)[ebp]
-lea esi,(_yycrank)
-cmp edi,esi
-jne L47
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr (4)[edi]
-mov dword ptr (-28)[ebp],edi
-mov edi,dword ptr (-28)[ebp]
-cmp edi,0
-jne L49
-jmp L94
-L49:
-mov edi,dword ptr (-28)[ebp]
-mov edi,dword ptr [edi]
-lea esi,(_yycrank)
-cmp edi,esi
-jne L51
-jmp L94
-L51:
-L47:
-mov edi,dword ptr (-16)[ebp]
-lea esi,(1)[edi]
-mov dword ptr (-16)[ebp],esi
-mov esi,dword ptr (_yysptr)
-lea ebx,(_yysbuf)
-cmp esi,ebx
-jbe L61
-mov esi,dword ptr (_yysptr)
-lea esi,(-1)[esi]
-mov dword ptr (_yysptr),esi
-movsx esi,byte ptr [esi]
-mov dword ptr (-40)[ebp],esi
-jmp L62
-L61:
-mov esi,dword ptr (_yyin)
-lea esi,(4)[esi]
-mov ebx,dword ptr [esi]
-sub ebx,1
-mov dword ptr [esi],ebx
-cmp ebx,0
-jl L63
-mov esi,dword ptr (_yyin)
-mov ebx,dword ptr [esi]
-lea edx,(1)[ebx]
-mov dword ptr [esi],edx
-movsx esi,byte ptr [ebx]
-and esi,255
-mov dword ptr (-44)[ebp],esi
-jmp L64
-L63:
-mov esi,dword ptr (_yyin)
-push esi
-call __filbuf
-add esp,4
-mov esi,eax
-mov dword ptr (-44)[ebp],esi
-L64:
-mov esi,dword ptr (-44)[ebp]
-mov dword ptr (-40)[ebp],esi
-L62:
-mov esi,dword ptr (-40)[ebp]
-mov dword ptr (_yytchar),esi
-cmp esi,10
-jne L59
-inc dword ptr (_yylineno)
-mov esi,dword ptr (_yytchar)
-mov dword ptr (-36)[ebp],esi
-jmp L60
-L59:
-mov esi,dword ptr (_yytchar)
-mov dword ptr (-36)[ebp],esi
-L60:
-cmp dword ptr (-36)[ebp],-1
-jne L57
-mov dword ptr (-32)[ebp],0
-jmp L58
-L57:
-mov esi,dword ptr (_yytchar)
-mov dword ptr (-32)[ebp],esi
-L58:
-mov esi,dword ptr (-32)[ebp]
-mov dword ptr (-20)[ebp],esi
-mov ebx,esi
-mov byte ptr [edi],bl
-L65:
-mov edi,dword ptr (-12)[ebp]
-mov dword ptr (-24)[ebp],edi
-lea esi,(_yycrank)
-cmp edi,esi
-jbe L66
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-24)[ebp]
-lea edi,[esi][edi*4]
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (-12)[ebp]
-mov esi,edi
-mov ebx,dword ptr (_yytop)
-cmp esi,ebx
-ja L67
-movsx edi,byte ptr [edi]
-imul edi,edi,12
-lea edi,(_yysvec)[edi]
-mov esi,dword ptr (-4)[ebp]
-cmp edi,esi
-jne L67
-lea edi,(_yysvec)
-mov esi,dword ptr (-12)[ebp]
-movsx esi,byte ptr (1)[esi]
-imul esi,esi,12
-lea esi,(_yysvec)[esi]
-cmp esi,edi
-jne L70
-mov edi,dword ptr (-16)[ebp]
-lea edi,(-1)[edi]
-mov dword ptr (-16)[ebp],edi
-movsx edi,byte ptr [edi]
-mov dword ptr (_yytchar),edi
-cmp dword ptr (_yytchar),10
-jne L72
-dec dword ptr (_yylineno)
-L72:
-mov edi,dword ptr (_yysptr)
-lea esi,(1)[edi]
-mov dword ptr (_yysptr),esi
-mov esi,dword ptr (_yytchar)
-mov ebx,esi
-mov byte ptr [edi],bl
-jmp L94
-L70:
-mov edi,dword ptr (-8)[ebp]
-lea esi,(4)[edi]
-mov dword ptr (-8)[ebp],esi
-mov esi,dword ptr (-12)[ebp]
-movsx esi,byte ptr (1)[esi]
-imul esi,esi,12
-lea esi,(_yysvec)[esi]
-mov dword ptr (-4)[ebp],esi
-mov dword ptr [edi],esi
-jmp L43
-L66:
-mov edi,dword ptr (-12)[ebp]
-lea esi,(_yycrank)
-cmp edi,esi
-jae L75
-lea edi,(_yycrank)
-mov esi,dword ptr (-12)[ebp]
-sub edi,esi
-mov eax,edi
-mov edi,4
-cdq
-idiv edi
-lea edi,(_yycrank)[eax*4]
-mov dword ptr (-24)[ebp],edi
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (-12)[ebp]
-lea edi,[esi][edi*4]
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (-12)[ebp]
-mov esi,edi
-mov ebx,dword ptr (_yytop)
-cmp esi,ebx
-ja L77
-movsx edi,byte ptr [edi]
-imul edi,edi,12
-lea edi,(_yysvec)[edi]
-mov esi,dword ptr (-4)[ebp]
-cmp edi,esi
-jne L77
-lea edi,(_yysvec)
-mov esi,dword ptr (-12)[ebp]
-movsx esi,byte ptr (1)[esi]
-imul esi,esi,12
-lea esi,(_yysvec)[esi]
-cmp esi,edi
-jne L79
-mov edi,dword ptr (-16)[ebp]
-lea edi,(-1)[edi]
-mov dword ptr (-16)[ebp],edi
-movsx edi,byte ptr [edi]
-mov dword ptr (_yytchar),edi
-cmp dword ptr (_yytchar),10
-jne L81
-dec dword ptr (_yylineno)
-L81:
-mov edi,dword ptr (_yysptr)
-lea esi,(1)[edi]
-mov dword ptr (_yysptr),esi
-mov esi,dword ptr (_yytchar)
-mov ebx,esi
-mov byte ptr [edi],bl
-jmp L94
-L79:
-mov edi,dword ptr (-8)[ebp]
-lea esi,(4)[edi]
-mov dword ptr (-8)[ebp],esi
-mov esi,dword ptr (-12)[ebp]
-movsx esi,byte ptr (1)[esi]
-imul esi,esi,12
-lea esi,(_yysvec)[esi]
-mov dword ptr (-4)[ebp],esi
-mov dword ptr [edi],esi
-jmp L43
-L77:
-mov edi,dword ptr (-20)[ebp]
-movsx edi,byte ptr (_yymatch)[edi]
-mov esi,dword ptr (-24)[ebp]
-lea edi,[esi][edi*4]
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (-12)[ebp]
-mov esi,edi
-mov ebx,dword ptr (_yytop)
-cmp esi,ebx
-ja L83
-movsx edi,byte ptr [edi]
-imul edi,edi,12
-lea edi,(_yysvec)[edi]
-mov esi,dword ptr (-4)[ebp]
-cmp edi,esi
-jne L83
-lea edi,(_yysvec)
-mov esi,dword ptr (-12)[ebp]
-movsx esi,byte ptr (1)[esi]
-imul esi,esi,12
-lea esi,(_yysvec)[esi]
-cmp esi,edi
-jne L85
-mov edi,dword ptr (-16)[ebp]
-lea edi,(-1)[edi]
-mov dword ptr (-16)[ebp],edi
-movsx edi,byte ptr [edi]
-mov dword ptr (_yytchar),edi
-cmp dword ptr (_yytchar),10
-jne L87
-dec dword ptr (_yylineno)
-L87:
-mov edi,dword ptr (_yysptr)
-lea esi,(1)[edi]
-mov dword ptr (_yysptr),esi
-mov esi,dword ptr (_yytchar)
-mov ebx,esi
-mov byte ptr [edi],bl
-jmp L94
-L85:
-mov edi,dword ptr (-8)[ebp]
-lea esi,(4)[edi]
-mov dword ptr (-8)[ebp],esi
-mov esi,dword ptr (-12)[ebp]
-movsx esi,byte ptr (1)[esi]
-imul esi,esi,12
-lea esi,(_yysvec)[esi]
-mov dword ptr (-4)[ebp],esi
-mov dword ptr [edi],esi
-jmp L43
-L83:
-L75:
-L67:
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr (4)[edi]
-mov dword ptr (-4)[ebp],edi
-cmp edi,0
-je L89
-mov edi,dword ptr (-4)[ebp]
-mov edi,dword ptr [edi]
-mov dword ptr (-12)[ebp],edi
-lea esi,(_yycrank)
-cmp edi,esi
-je L89
-jmp L65
-L89:
-mov edi,dword ptr (-16)[ebp]
-lea edi,(-1)[edi]
-mov dword ptr (-16)[ebp],edi
-movsx edi,byte ptr [edi]
-mov dword ptr (_yytchar),edi
-cmp dword ptr (_yytchar),10
-jne L91
-dec dword ptr (_yylineno)
-L91:
-mov edi,dword ptr (_yysptr)
-lea esi,(1)[edi]
-mov dword ptr (_yysptr),esi
-mov esi,dword ptr (_yytchar)
-mov ebx,esi
-mov byte ptr [edi],bl
-jmp L94
-L93:
-mov edi,dword ptr (-16)[ebp]
-lea esi,(-1)[edi]
-mov dword ptr (-16)[ebp],esi
-mov byte ptr [edi],0
-mov edi,dword ptr (-8)[ebp]
-mov edi,dword ptr [edi]
-mov esi,edi
-cmp esi,0
-je L96
-mov edi,dword ptr (8)[edi]
-mov dword ptr (_yyfnd),edi
-cmp edi,0
-je L96
-mov edi,dword ptr (_yyfnd)
-cmp dword ptr [edi],0
-jle L96
-mov edi,dword ptr (-8)[ebp]
-mov dword ptr (_yyolsp),edi
-mov edi,dword ptr (_yyfnd)
-mov edi,dword ptr [edi]
-movsx edi,byte ptr (_yyextra)[edi]
-cmp edi,0
-je L98
-jmp L101
-L100:
-mov edi,dword ptr (-8)[ebp]
-lea edi,(-4)[edi]
-mov dword ptr (-8)[ebp],edi
-mov edi,dword ptr (-16)[ebp]
-lea esi,(-1)[edi]
-mov dword ptr (-16)[ebp],esi
-movsx edi,byte ptr [edi]
-mov dword ptr (_yytchar),edi
-cmp dword ptr (_yytchar),10
-jne L103
-dec dword ptr (_yylineno)
-L103:
-mov edi,dword ptr (_yysptr)
-lea esi,(1)[edi]
-mov dword ptr (_yysptr),esi
-mov esi,dword ptr (_yytchar)
-mov ebx,esi
-mov byte ptr [edi],bl
-L101:
-mov edi,dword ptr (_yyfnd)
-mov edi,dword ptr [edi]
-neg edi
-push edi
-mov edi,dword ptr (-8)[ebp]
-mov edi,dword ptr [edi]
-mov edi,dword ptr (8)[edi]
-push edi
-call _yyback
-add esp,8
-cmp eax,1
-je L105
-mov edi,dword ptr (-8)[ebp]
-lea esi,(_yylstate)
-cmp edi,esi
-ja L100
-L105:
-L98:
-mov edi,dword ptr (-16)[ebp]
-movsx esi,byte ptr [edi]
-mov dword ptr (_yyprevious),esi
-mov esi,dword ptr (-8)[ebp]
-mov dword ptr (_yylsp),esi
-lea esi,(_yytext)
-sub edi,esi
-lea edi,(1)[edi]
-mov dword ptr (_yyleng),edi
-mov edi,dword ptr (_yyleng)
-mov byte ptr (_yytext)[edi],0
-mov edi,dword ptr (_yyfnd)
-lea esi,(4)[edi]
-mov dword ptr (_yyfnd),esi
-mov eax,dword ptr [edi]
-jmp L34
-L96:
-mov edi,dword ptr (-16)[ebp]
-movsx edi,byte ptr [edi]
-mov dword ptr (_yytchar),edi
-cmp dword ptr (_yytchar),10
-jne L106
-dec dword ptr (_yylineno)
-L106:
-mov edi,dword ptr (_yysptr)
-lea esi,(1)[edi]
-mov dword ptr (_yysptr),esi
-mov esi,dword ptr (_yytchar)
-mov ebx,esi
-mov byte ptr [edi],bl
-L94:
-mov edi,dword ptr (-8)[ebp]
-lea esi,(-4)[edi]
-mov dword ptr (-8)[ebp],esi
-lea esi,(_yylstate)
-cmp edi,esi
-ja L93
-movsx edi,byte ptr (_yytext)
-cmp edi,0
-jne L108
-lea edi,(_yysbuf)
-mov dword ptr (_yysptr),edi
-mov eax,0
-jmp L34
-L108:
-mov edi,dword ptr (_yysptr)
-lea esi,(_yysbuf)
-cmp edi,esi
-jbe L118
-mov edi,dword ptr (_yysptr)
-lea edi,(-1)[edi]
-mov dword ptr (_yysptr),edi
-movsx edi,byte ptr [edi]
-mov dword ptr (-40)[ebp],edi
-jmp L119
-L118:
-mov edi,dword ptr (_yyin)
-lea edi,(4)[edi]
-mov esi,dword ptr [edi]
-sub esi,1
-mov dword ptr [edi],esi
-cmp esi,0
-jl L120
-mov edi,dword ptr (_yyin)
-mov esi,dword ptr [edi]
-lea ebx,(1)[esi]
-mov dword ptr [edi],ebx
-movsx edi,byte ptr [esi]
-and edi,255
-mov dword ptr (-44)[ebp],edi
-jmp L121
-L120:
-mov edi,dword ptr (_yyin)
-push edi
-call __filbuf
-add esp,4
-mov edi,eax
-mov dword ptr (-44)[ebp],edi
-L121:
-mov edi,dword ptr (-44)[ebp]
-mov dword ptr (-40)[ebp],edi
-L119:
-mov edi,dword ptr (-40)[ebp]
-mov dword ptr (_yytchar),edi
-cmp edi,10
-jne L116
-inc dword ptr (_yylineno)
-mov edi,dword ptr (_yytchar)
-mov dword ptr (-36)[ebp],edi
-jmp L117
-L116:
-mov edi,dword ptr (_yytchar)
-mov dword ptr (-36)[ebp],edi
-L117:
-cmp dword ptr (-36)[ebp],-1
-jne L114
-mov dword ptr (-32)[ebp],0
-jmp L115
-L114:
-mov edi,dword ptr (_yytchar)
-mov dword ptr (-32)[ebp],edi
-L115:
-mov edi,dword ptr (-32)[ebp]
-mov ebx,edi
-mov byte ptr (_yytext),bl
-movsx edi,bl
-mov dword ptr (_yyprevious),edi
-cmp dword ptr (_yyprevious),0
-jle L122
-mov edi,dword ptr (_yyout)
-lea edi,(4)[edi]
-mov esi,dword ptr [edi]
-sub esi,1
-mov dword ptr [edi],esi
-cmp esi,0
-jl L125
-mov edi,dword ptr (_yyout)
-mov esi,dword ptr [edi]
-lea ebx,(1)[esi]
-mov dword ptr [edi],ebx
-mov edi,dword ptr (_yyprevious)
-mov ebx,edi
-mov byte ptr [esi],bl
-jmp L126
-L125:
-mov edi,dword ptr (_yyout)
-push edi
-mov edi,dword ptr (_yyprevious)
-push edi
-call __flsbuf
-add esp,8
-L126:
-L122:
-lea edi,(_yytext)
-mov dword ptr (-16)[ebp],edi
-jmp L37
-L34:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _yyback
-_yyback:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-cmp edi,0
-jne L131
-mov eax,0
-jmp L127
-L130:
-mov edi,dword ptr (20)[ebp]
-lea esi,(4)[edi]
-mov dword ptr (20)[ebp],esi
-mov esi,dword ptr (24)[ebp]
-cmp dword ptr [edi],esi
-jne L133
-mov eax,1
-jmp L127
-L133:
-L131:
-mov edi,dword ptr (20)[ebp]
-cmp dword ptr [edi],0
-jne L130
-mov eax,0
-L127:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _yyinput
-_yyinput:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,16
-mov edi,dword ptr (_yysptr)
-lea esi,(_yysbuf)
-cmp edi,esi
-jbe L144
-mov edi,dword ptr (_yysptr)
-lea edi,(-1)[edi]
-mov dword ptr (_yysptr),edi
-movsx edi,byte ptr [edi]
-mov dword ptr (-12)[ebp],edi
-jmp L145
-L144:
-mov edi,dword ptr (_yyin)
-lea edi,(4)[edi]
-mov esi,dword ptr [edi]
-sub esi,1
-mov dword ptr [edi],esi
-cmp esi,0
-jl L146
-mov edi,dword ptr (_yyin)
-mov esi,dword ptr [edi]
-lea ebx,(1)[esi]
-mov dword ptr [edi],ebx
-movsx edi,byte ptr [esi]
-and edi,255
-mov dword ptr (-16)[ebp],edi
-jmp L147
-L146:
-mov edi,dword ptr (_yyin)
-push edi
-call __filbuf
-add esp,4
-mov edi,eax
-mov dword ptr (-16)[ebp],edi
-L147:
-mov edi,dword ptr (-16)[ebp]
-mov dword ptr (-12)[ebp],edi
-L145:
-mov edi,dword ptr (-12)[ebp]
-mov dword ptr (_yytchar),edi
-cmp edi,10
-jne L142
-inc dword ptr (_yylineno)
-mov edi,dword ptr (_yytchar)
-mov dword ptr (-8)[ebp],edi
-jmp L143
-L142:
-mov edi,dword ptr (_yytchar)
-mov dword ptr (-8)[ebp],edi
-L143:
-cmp dword ptr (-8)[ebp],-1
-jne L140
-mov dword ptr (-4)[ebp],0
-jmp L141
-L140:
-mov edi,dword ptr (_yytchar)
-mov dword ptr (-4)[ebp],edi
-L141:
-mov eax,dword ptr (-4)[ebp]
-L135:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _yyoutput
-_yyoutput:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (_yyout)
-lea edi,(4)[edi]
-mov esi,dword ptr [edi]
-sub esi,1
-mov dword ptr [edi],esi
-cmp esi,0
-jl L150
-mov edi,dword ptr (_yyout)
-mov esi,dword ptr [edi]
-lea ebx,(1)[esi]
-mov dword ptr [edi],ebx
-mov edi,dword ptr (20)[ebp]
-mov ebx,edi
-mov byte ptr [esi],bl
-jmp L151
-L150:
-mov edi,dword ptr (_yyout)
-push edi
-mov edi,dword ptr (20)[ebp]
-push edi
-call __flsbuf
-add esp,8
-L151:
-mov eax,0
-L148:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _yyunput
-_yyunput:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-mov dword ptr (_yytchar),edi
-cmp dword ptr (_yytchar),10
-jne L153
-dec dword ptr (_yylineno)
-L153:
-mov edi,dword ptr (_yysptr)
-lea esi,(1)[edi]
-mov dword ptr (_yysptr),esi
-mov esi,dword ptr (_yytchar)
-mov ebx,esi
-mov byte ptr [edi],bl
-mov eax,0
-L152:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _main
-_main:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-call _yyparse
-add esp,0
-mov eax,0
-L155:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _yyerror
-_yyerror:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov edi,dword ptr (20)[ebp]
-push edi
-lea edi,(L157)
-push edi
-call _printf
-add esp,8
-mov eax,0
-L156:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-public _yyexca
-align 2
-_yyexca label byte
-dw -1
-dw 1
-dw 0
-dw -1
-dw -2
-dw 0
-public _yyact
-align 2
-_yyact label byte
-dw 12
-dw 2
-dw 9
-dw 8
-dw 17
-dw 11
-dw 25
-dw 17
-dw 15
-dw 18
-dw 16
-dw 10
-dw 18
-dw 17
-dw 15
-dw 7
-dw 16
-dw 13
-dw 18
-dw 5
-dw 3
-dw 1
-dw 0
-dw 19
-dw 20
-dw 0
-dw 0
-dw 21
-dw 22
-dw 23
-dw 24
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 6
-dw 14
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 0
-dw 4
-dw 6
-public _yypact
-align 2
-_yypact label byte
-dw -1000
-dw -9
-dw -1000
-dw 5
-dw -7
-dw -59
-dw -1000
-dw -1000
-dw -1000
-dw -40
-dw -29
-dw -40
-dw -40
-dw -1000
-dw -1000
-dw -40
-dw -40
-dw -40
-dw -40
-dw -38
-dw -35
-dw -38
-dw -38
-dw -1000
-dw -1000
-dw -1000
-public _yypgo
-align 2
-_yypgo label byte
-dw 0
-dw 21
-dw 20
-dw 17
-dw 11
-public _yyr1
-align 2
-_yyr1 label byte
-dw 0
-dw 1
-dw 1
-dw 1
-dw 1
-dw 2
-dw 4
-dw 4
-dw 4
-dw 4
-dw 4
-dw 4
-dw 4
-dw 4
-dw 3
-public _yyr2
-align 2
-_yyr2 label byte
-dw 0
-dw 0
-dw 2
-dw 3
-dw 3
-dw 3
-dw 3
-dw 3
-dw 3
-dw 3
-dw 2
-dw 3
-dw 1
-dw 1
-dw 1
-public _yychk
-align 2
-_yychk label byte
-dw -1000
-dw -1
-dw 10
-dw -2
-dw 256
-dw -3
-dw 257
-dw 10
-dw 10
-dw 61
-dw -4
-dw 45
-dw 40
-dw -3
-dw 258
-dw 43
-dw 45
-dw 42
-dw 47
-dw -4
-dw -4
-dw -4
-dw -4
-dw -4
-dw -4
-dw 41
-public _yydef
-align 2
-_yydef label byte
-dw 1
-dw -2
-dw 2
-dw 0
-dw 0
-dw 0
-dw 14
-dw 3
-dw 4
-dw 0
-dw 5
-dw 0
-dw 0
-dw 12
-dw 13
-dw 0
-dw 0
-dw 0
-dw 0
-dw 10
-dw 0
-dw 6
-dw 7
-dw 8
-dw 9
-dw 11
-public _yychar
-align 4
-_yychar label byte
-dd -1
-public _yynerrs
-align 4
-_yynerrs label byte
-dd 0
-public _yyerrflag
-align 2
-_yyerrflag label byte
-dw 0
-public _yyparse
-_DATA ends
-_TEXT segment
-_yyparse:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-sub esp,332
-mov word ptr (-6)[ebp],0
-mov dword ptr (_yychar),-1
-mov dword ptr (_yynerrs),0
-mov word ptr (_yyerrflag),0
-lea edi,(-328)[ebp]
-mov dword ptr (-12)[ebp],edi
-lea edi,(_yyv-4)
-mov dword ptr (-20)[ebp],edi
-L161:
-mov edi,dword ptr (-12)[ebp]
-lea edi,(2)[edi]
-mov dword ptr (-12)[ebp],edi
-lea esi,(-26)[ebp]
-cmp edi,esi
-jbe L162
-lea edi,(L165)
-push edi
-call _yyerror
-add esp,4
-mov eax,1
-jmp L158
-L162:
-mov edi,dword ptr (-12)[ebp]
-mov si,word ptr (-6)[ebp]
-mov word ptr [edi],si
-mov edi,dword ptr (-20)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-20)[ebp],edi
-mov edi,dword ptr (-20)[ebp]
-mov esi,dword ptr (_yyval)
-mov dword ptr [edi],esi
-L166:
-movsx edi,word ptr (-6)[ebp]
-mov di,word ptr (_yypact)[edi*2]
-mov word ptr (-14)[ebp],di
-movsx edi,word ptr (-14)[ebp]
-cmp edi,-1000
-jg L167
-jmp L169
-L167:
-cmp dword ptr (_yychar),0
-jge L170
-call _yylex
-add esp,0
-mov dword ptr (_yychar),eax
-cmp eax,0
-jge L172
-mov dword ptr (_yychar),0
-L172:
-L170:
-movsx edi,word ptr (-14)[ebp]
-mov esi,dword ptr (_yychar)
-lea edi,[esi][edi]
-mov word ptr (-14)[ebp],di
-movsx edi,di
-cmp edi,0
-jl L176
-movsx edi,word ptr (-14)[ebp]
-cmp edi,249
-jl L174
-L176:
-jmp L169
-L174:
-movsx edi,word ptr (-14)[ebp]
-mov di,word ptr (_yyact)[edi*2]
-mov word ptr (-14)[ebp],di
-movsx edi,di
-movsx edi,word ptr (_yychk)[edi*2]
-cmp edi,dword ptr (_yychar)
-jne L177
-mov dword ptr (_yychar),-1
-mov edi,dword ptr (_yylval)
-mov dword ptr (_yyval),edi
-mov di,word ptr (-14)[ebp]
-mov word ptr (-6)[ebp],di
-movsx edi,word ptr (_yyerrflag)
-cmp edi,0
-jle L161
-movsx edi,word ptr (_yyerrflag)
-sub edi,1
-mov word ptr (_yyerrflag),di
-jmp L161
-L177:
-L169:
-movsx edi,word ptr (-6)[ebp]
-mov di,word ptr (_yydef)[edi*2]
-mov word ptr (-14)[ebp],di
-movsx edi,di
-cmp edi,-2
-jne L181
-cmp dword ptr (_yychar),0
-jge L183
-call _yylex
-add esp,0
-mov dword ptr (_yychar),eax
-cmp eax,0
-jge L185
-mov dword ptr (_yychar),0
-L185:
-L183:
-lea edi,(_yyexca)
-mov dword ptr (-24)[ebp],edi
-jmp L190
-L187:
-L188:
-mov edi,dword ptr (-24)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-24)[ebp],edi
-L190:
-mov edi,dword ptr (-24)[ebp]
-movsx esi,word ptr [edi]
-cmp esi,-1
-jne L187
-movsx edi,word ptr (2)[edi]
-movsx esi,word ptr (-6)[ebp]
-cmp edi,esi
-jne L187
-jmp L192
-L191:
-mov edi,dword ptr (-24)[ebp]
-movsx edi,word ptr [edi]
-cmp edi,dword ptr (_yychar)
-jne L194
-jmp L193
-L194:
-L192:
-mov edi,dword ptr (-24)[ebp]
-lea edi,(4)[edi]
-mov dword ptr (-24)[ebp],edi
-movsx edi,word ptr [edi]
-cmp edi,0
-jge L191
-L193:
-mov edi,dword ptr (-24)[ebp]
-mov di,word ptr (2)[edi]
-mov word ptr (-14)[ebp],di
-movsx edi,di
-cmp edi,0
-jge L196
-mov eax,0
-jmp L158
-L196:
-L181:
-movsx edi,word ptr (-14)[ebp]
-cmp edi,0
-jne L198
-movsx edi,word ptr (_yyerrflag)
-mov dword ptr (-332)[ebp],edi
-mov edi,dword ptr (-332)[ebp]
-cmp edi,0
-jl L200
-cmp edi,3
-jg L200
-jmp dword ptr (L216)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L216 label byte
-dd L203
-dd L206
-dd L206
-dd L213
-_TEXT ends
-_TEXT segment
-L203:
-lea edi,(L204)
-push edi
-call _yyerror
-add esp,4
-L205:
-inc dword ptr (_yynerrs)
-L206:
-mov word ptr (_yyerrflag),3
-jmp L208
-L207:
-mov edi,dword ptr (-12)[ebp]
-movsx edi,word ptr [edi]
-movsx edi,word ptr (_yypact)[edi*2]
-lea edi,(256)[edi]
-mov word ptr (-14)[ebp],di
-movsx edi,word ptr (-14)[ebp]
-cmp edi,0
-jl L210
-cmp edi,249
-jge L210
-movsx edi,word ptr (_yyact)[edi*2]
-movsx edi,word ptr (_yychk)[edi*2]
-cmp edi,256
-jne L210
-movsx edi,word ptr (-14)[ebp]
-mov di,word ptr (_yyact)[edi*2]
-mov word ptr (-6)[ebp],di
-jmp L161
-L210:
-mov edi,dword ptr (-12)[ebp]
-movsx esi,word ptr [edi]
-mov si,word ptr (_yypact)[esi*2]
-mov word ptr (-14)[ebp],si
-lea edi,(-2)[edi]
-mov dword ptr (-12)[ebp],edi
-mov edi,dword ptr (-20)[ebp]
-lea edi,(-4)[edi]
-mov dword ptr (-20)[ebp],edi
-L208:
-mov edi,dword ptr (-12)[ebp]
-lea esi,(-326)[ebp]
-cmp edi,esi
-jae L207
-L212:
-mov eax,1
-jmp L158
-L213:
-cmp dword ptr (_yychar),0
-jne L214
-jmp L212
-L214:
-mov dword ptr (_yychar),-1
-jmp L166
-L200:
-L198:
-mov di,word ptr (-14)[ebp]
-movsx esi,di
-lea esi,[esi*2]
-lea ebx,(_yyr2)[esi]
-mov edx,dword ptr (-12)[ebp]
-movsx ecx,word ptr [ebx]
-lea ecx,[ecx*2]
-sub edx,ecx
-mov dword ptr (-12)[ebp],edx
-mov edx,dword ptr (-20)[ebp]
-mov dword ptr (-4)[ebp],edx
-movsx ebx,word ptr [ebx]
-lea ebx,[ebx*4]
-sub edx,ebx
-mov dword ptr (-20)[ebp],edx
-mov ebx,dword ptr (-20)[ebp]
-mov ebx,dword ptr (4)[ebx]
-mov dword ptr (_yyval),ebx
-mov word ptr (-328)[ebp],di
-mov di,word ptr (_yyr1)[esi]
-mov word ptr (-14)[ebp],di
-movsx edi,word ptr (-14)[ebp]
-movsx edi,word ptr (_yypgo)[edi*2]
-mov esi,dword ptr (-12)[ebp]
-movsx esi,word ptr [esi]
-lea edi,[esi][edi]
-lea edi,(1)[edi]
-mov word ptr (-26)[ebp],di
-movsx edi,word ptr (-26)[ebp]
-cmp edi,249
-jge L219
-mov di,word ptr (_yyact)[edi*2]
-mov word ptr (-6)[ebp],di
-movsx edi,di
-movsx edi,word ptr (_yychk)[edi*2]
-movsx esi,word ptr (-14)[ebp]
-neg esi
-cmp edi,esi
-je L217
-L219:
-movsx edi,word ptr (-14)[ebp]
-movsx edi,word ptr (_yypgo)[edi*2]
-mov di,word ptr (_yyact)[edi*2]
-mov word ptr (-6)[ebp],di
-L217:
-movsx edi,word ptr (-328)[ebp]
-mov dword ptr (-332)[ebp],edi
-mov edi,dword ptr (-332)[ebp]
-cmp edi,4
-jl L161
-cmp edi,14
-jg L161
-jmp dword ptr (L241-16)[edi*4]
-_TEXT ends
-_TEXT segment
-align 4
-L241 label byte
-dd L223
-dd L224
-dd L226
-dd L228
-dd L230
-dd L232
-dd L234
-dd L161
-dd L236
-dd L238
-dd L240
-_TEXT ends
-_TEXT segment
-L223:
-mov word ptr (_yyerrflag),0
-jmp L161
-L224:
-lea edi,(L225)
-push edi
-call _printf
-add esp,4
-jmp L161
-L226:
-lea edi,(L227)
-push edi
-call _printf
-add esp,4
-jmp L161
-L228:
-lea edi,(L229)
-push edi
-call _printf
-add esp,4
-jmp L161
-L230:
-lea edi,(L231)
-push edi
-call _printf
-add esp,4
-jmp L161
-L232:
-lea edi,(L233)
-push edi
-call _printf
-add esp,4
-jmp L161
-L234:
-lea edi,(L235)
-push edi
-call _printf
-add esp,4
-jmp L161
-L236:
-lea edi,(L237)
-push edi
-call _printf
-add esp,4
-jmp L161
-L238:
-lea edi,(_yytext)
-push edi
-lea edi,(L239)
-push edi
-call _printf
-add esp,8
-jmp L161
-L240:
-lea edi,(_yytext)
-push edi
-lea edi,(L157)
-push edi
-call _printf
-add esp,8
-jmp L161
-L158:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-public _yywrap
-_yywrap:
-push ebx
-push esi
-push edi
-push ebp
-mov ebp,esp
-mov eax,1
-L243:
-mov esp,ebp
-pop ebp
-pop edi
-pop esi
-pop ebx
-ret
-_TEXT ends
-_DATA segment
-public _yyv
-align 4
-_yyv label byte
-db 600 dup (0)
-public _yyfnd
-align 4
-_yyfnd label byte
-db 4 dup (0)
-public _yyolsp
-align 4
-_yyolsp label byte
-db 4 dup (0)
-public _yylsp
-align 4
-_yylsp label byte
-db 4 dup (0)
-public _yylstate
-align 4
-_yylstate label byte
-db 800 dup (0)
-public _yyestate
-align 4
-_yyestate label byte
-db 4 dup (0)
-public _yytchar
-align 4
-_yytchar label byte
-db 4 dup (0)
-public _yysbuf
-align 1
-_yysbuf label byte
-db 200 dup (0)
-public _yymorfg
-align 4
-_yymorfg label byte
-db 4 dup (0)
-public _yytext
-align 1
-_yytext label byte
-db 200 dup (0)
-public _yyleng
-align 4
-_yyleng label byte
-db 4 dup (0)
-_DATA ends
-extrn _printf:near
-_DATA segment
-_DATA ends
-extrn _fprintf:near
-_DATA segment
-_DATA ends
-extrn __flsbuf:near
-_DATA segment
-_DATA ends
-extrn __filbuf:near
-_DATA segment
-_DATA ends
-extrn __iob:near
-_DATA segment
-public _yyval
-align 4
-_yyval label byte
-db 4 dup (0)
-public _yylval
-align 4
-_yylval label byte
-db 4 dup (0)
-_DATA ends
-_TEXT segment
-align 1
-L239 label byte
-db 112
-db 117
-db 115
-db 104
-db 32
-db 37
-db 115
-db 10
-db 0
-align 1
-L237 label byte
-db 108
-db 111
-db 97
-db 100
-db 10
-db 0
-align 1
-L235 label byte
-db 110
-db 101
-db 103
-db 97
-db 116
-db 101
-db 10
-db 0
-align 1
-L233 label byte
-db 100
-db 105
-db 118
-db 105
-db 100
-db 101
-db 10
-db 0
-align 1
-L231 label byte
-db 109
-db 117
-db 108
-db 116
-db 105
-db 112
-db 108
-db 121
-db 10
-db 0
-align 1
-L229 label byte
-db 110
-db 101
-db 103
-db 97
-db 116
-db 101
-db 10
-db 97
-db 100
-db 100
-db 10
-db 0
-align 1
-L227 label byte
-db 97
-db 100
-db 100
-db 10
-db 0
-align 1
-L225 label byte
-db 115
-db 116
-db 111
-db 114
-db 101
-db 10
-db 0
-align 1
-L204 label byte
-db 115
-db 121
-db 110
-db 116
-db 97
-db 120
-db 32
-db 101
-db 114
-db 114
-db 111
-db 114
-db 0
-align 1
-L165 label byte
-db 121
-db 97
-db 99
-db 99
-db 32
-db 115
-db 116
-db 97
-db 99
-db 107
-db 32
-db 111
-db 118
-db 101
-db 114
-db 102
-db 108
-db 111
-db 119
-db 0
-align 1
-L157 label byte
-db 37
-db 115
-db 10
-db 0
-align 1
-L17 label byte
-db 98
-db 97
-db 100
-db 32
-db 115
-db 119
-db 105
-db 116
-db 99
-db 104
-db 32
-db 121
-db 121
-db 108
-db 111
-db 111
-db 107
-db 32
-db 37
-db 100
-db 0
-_TEXT ends
-end
+.486
+.model flat
+extrn __fltused:near
+extrn __ftol:near
+_DATA segment
+public _yyin
+align 4
+_yyin label byte
+dd __iob
+public _yyout
+align 4
+_yyout label byte
+dd __iob+32
+public _yylex
+_DATA ends
+_TEXT segment
+_yylex:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,4
+jmp L4
+L3:
+L6:
+mov edi,dword ptr (-4)[ebp]
+cmp edi,-1
+jl L7
+cmp edi,4
+jg L7
+jmp dword ptr (L18+4)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L18 label byte
+dd L8
+dd L9
+dd L12
+dd L13
+dd L8
+dd L15
+_TEXT ends
+_TEXT segment
+L9:
+call _yywrap
+add esp,0
+cmp eax,0
+je L8
+mov eax,0
+jmp L2
+L12:
+mov eax,257
+jmp L2
+L13:
+mov eax,258
+jmp L2
+L15:
+movsx eax,byte ptr (_yytext)
+jmp L2
+L7:
+mov edi,dword ptr (-4)[ebp]
+push edi
+lea edi,(L17)
+push edi
+mov edi,dword ptr (_yyout)
+push edi
+call _fprintf
+add esp,12
+L8:
+L4:
+call _yylook
+add esp,0
+mov dword ptr (-4)[ebp],eax
+cmp eax,0
+jge L3
+mov eax,0
+L2:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+public _yyvstop
+align 4
+_yyvstop label byte
+dd 0
+dd 4
+dd 0
+dd 3
+dd 4
+dd 0
+dd 2
+dd 4
+dd 0
+dd 1
+dd 4
+dd 0
+dd 2
+dd 0
+dd 1
+dd 0
+dd 0
+public _yycrank
+align 4
+_yycrank label byte
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 1
+db 3
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 1
+db 4
+db 2 dup (0)
+db 1
+db 3
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 1
+db 5
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 5
+db 7
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 1
+db 6
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 6
+db 8
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+db 0
+db 0
+db 2 dup (0)
+public _yysvec
+align 4
+_yysvec label byte
+dd 00H
+dd 00H
+dd 00H
+dd _yycrank-4
+dd 00H
+dd 00H
+dd _yycrank
+dd _yysvec+12
+dd 00H
+dd _yycrank
+dd 00H
+dd _yyvstop+4
+dd _yycrank
+dd 00H
+dd _yyvstop+12
+dd _yycrank+8
+dd 00H
+dd _yyvstop+24
+dd _yycrank+76
+dd 00H
+dd _yyvstop+36
+dd _yycrank
+dd _yysvec+60
+dd _yyvstop+48
+dd _yycrank
+dd _yysvec+72
+dd _yyvstop+56
+dd 00H
+dd 00H
+dd 00H
+public _yytop
+align 4
+_yytop label byte
+dd _yycrank+564
+public _yybgin
+align 4
+_yybgin label byte
+dd _yysvec+12
+public _yymatch
+align 1
+_yymatch label byte
+db 0
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 9
+db 10
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 9
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 48
+db 48
+db 48
+db 48
+db 48
+db 48
+db 48
+db 48
+db 48
+db 48
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 1
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 1
+db 1
+db 1
+db 1
+db 65
+db 1
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 65
+db 1
+db 1
+db 1
+db 1
+db 1
+db 0
+public _yyextra
+align 1
+_yyextra label byte
+db 0
+db 0
+db 0
+db 0
+db 0
+db 0
+db 0
+db 0
+db 0
+public _yylineno
+align 4
+_yylineno label byte
+dd 1
+public _yysptr
+align 4
+_yysptr label byte
+dd _yysbuf
+public _yyprevious
+align 4
+_yyprevious label byte
+dd 10
+public _yylook
+_DATA ends
+_TEXT segment
+_yylook:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,44
+cmp dword ptr (_yymorfg),0
+jne L35
+lea edi,(_yytext)
+mov dword ptr (-16)[ebp],edi
+jmp L36
+L35:
+mov dword ptr (_yymorfg),0
+mov edi,dword ptr (_yyleng)
+lea edi,(_yytext)[edi]
+mov dword ptr (-16)[ebp],edi
+L36:
+L37:
+lea edi,(_yylstate)
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr (_yybgin)
+mov dword ptr (-4)[ebp],edi
+mov dword ptr (_yyestate),edi
+cmp dword ptr (_yyprevious),10
+jne L41
+mov edi,dword ptr (-4)[ebp]
+lea edi,(12)[edi]
+mov dword ptr (-4)[ebp],edi
+L41:
+L43:
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr [edi]
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (-12)[ebp]
+lea esi,(_yycrank)
+cmp edi,esi
+jne L47
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr (4)[edi]
+mov dword ptr (-28)[ebp],edi
+mov edi,dword ptr (-28)[ebp]
+cmp edi,0
+jne L49
+jmp L94
+L49:
+mov edi,dword ptr (-28)[ebp]
+mov edi,dword ptr [edi]
+lea esi,(_yycrank)
+cmp edi,esi
+jne L51
+jmp L94
+L51:
+L47:
+mov edi,dword ptr (-16)[ebp]
+lea esi,(1)[edi]
+mov dword ptr (-16)[ebp],esi
+mov esi,dword ptr (_yysptr)
+lea ebx,(_yysbuf)
+cmp esi,ebx
+jbe L61
+mov esi,dword ptr (_yysptr)
+lea esi,(-1)[esi]
+mov dword ptr (_yysptr),esi
+movsx esi,byte ptr [esi]
+mov dword ptr (-40)[ebp],esi
+jmp L62
+L61:
+mov esi,dword ptr (_yyin)
+lea esi,(4)[esi]
+mov ebx,dword ptr [esi]
+sub ebx,1
+mov dword ptr [esi],ebx
+cmp ebx,0
+jl L63
+mov esi,dword ptr (_yyin)
+mov ebx,dword ptr [esi]
+lea edx,(1)[ebx]
+mov dword ptr [esi],edx
+movsx esi,byte ptr [ebx]
+and esi,255
+mov dword ptr (-44)[ebp],esi
+jmp L64
+L63:
+mov esi,dword ptr (_yyin)
+push esi
+call __filbuf
+add esp,4
+mov esi,eax
+mov dword ptr (-44)[ebp],esi
+L64:
+mov esi,dword ptr (-44)[ebp]
+mov dword ptr (-40)[ebp],esi
+L62:
+mov esi,dword ptr (-40)[ebp]
+mov dword ptr (_yytchar),esi
+cmp esi,10
+jne L59
+inc dword ptr (_yylineno)
+mov esi,dword ptr (_yytchar)
+mov dword ptr (-36)[ebp],esi
+jmp L60
+L59:
+mov esi,dword ptr (_yytchar)
+mov dword ptr (-36)[ebp],esi
+L60:
+cmp dword ptr (-36)[ebp],-1
+jne L57
+mov dword ptr (-32)[ebp],0
+jmp L58
+L57:
+mov esi,dword ptr (_yytchar)
+mov dword ptr (-32)[ebp],esi
+L58:
+mov esi,dword ptr (-32)[ebp]
+mov dword ptr (-20)[ebp],esi
+mov ebx,esi
+mov byte ptr [edi],bl
+L65:
+mov edi,dword ptr (-12)[ebp]
+mov dword ptr (-24)[ebp],edi
+lea esi,(_yycrank)
+cmp edi,esi
+jbe L66
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-24)[ebp]
+lea edi,[esi][edi*4]
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (-12)[ebp]
+mov esi,edi
+mov ebx,dword ptr (_yytop)
+cmp esi,ebx
+ja L67
+movsx edi,byte ptr [edi]
+imul edi,edi,12
+lea edi,(_yysvec)[edi]
+mov esi,dword ptr (-4)[ebp]
+cmp edi,esi
+jne L67
+lea edi,(_yysvec)
+mov esi,dword ptr (-12)[ebp]
+movsx esi,byte ptr (1)[esi]
+imul esi,esi,12
+lea esi,(_yysvec)[esi]
+cmp esi,edi
+jne L70
+mov edi,dword ptr (-16)[ebp]
+lea edi,(-1)[edi]
+mov dword ptr (-16)[ebp],edi
+movsx edi,byte ptr [edi]
+mov dword ptr (_yytchar),edi
+cmp dword ptr (_yytchar),10
+jne L72
+dec dword ptr (_yylineno)
+L72:
+mov edi,dword ptr (_yysptr)
+lea esi,(1)[edi]
+mov dword ptr (_yysptr),esi
+mov esi,dword ptr (_yytchar)
+mov ebx,esi
+mov byte ptr [edi],bl
+jmp L94
+L70:
+mov edi,dword ptr (-8)[ebp]
+lea esi,(4)[edi]
+mov dword ptr (-8)[ebp],esi
+mov esi,dword ptr (-12)[ebp]
+movsx esi,byte ptr (1)[esi]
+imul esi,esi,12
+lea esi,(_yysvec)[esi]
+mov dword ptr (-4)[ebp],esi
+mov dword ptr [edi],esi
+jmp L43
+L66:
+mov edi,dword ptr (-12)[ebp]
+lea esi,(_yycrank)
+cmp edi,esi
+jae L75
+lea edi,(_yycrank)
+mov esi,dword ptr (-12)[ebp]
+sub edi,esi
+mov eax,edi
+mov edi,4
+cdq
+idiv edi
+lea edi,(_yycrank)[eax*4]
+mov dword ptr (-24)[ebp],edi
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (-12)[ebp]
+lea edi,[esi][edi*4]
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (-12)[ebp]
+mov esi,edi
+mov ebx,dword ptr (_yytop)
+cmp esi,ebx
+ja L77
+movsx edi,byte ptr [edi]
+imul edi,edi,12
+lea edi,(_yysvec)[edi]
+mov esi,dword ptr (-4)[ebp]
+cmp edi,esi
+jne L77
+lea edi,(_yysvec)
+mov esi,dword ptr (-12)[ebp]
+movsx esi,byte ptr (1)[esi]
+imul esi,esi,12
+lea esi,(_yysvec)[esi]
+cmp esi,edi
+jne L79
+mov edi,dword ptr (-16)[ebp]
+lea edi,(-1)[edi]
+mov dword ptr (-16)[ebp],edi
+movsx edi,byte ptr [edi]
+mov dword ptr (_yytchar),edi
+cmp dword ptr (_yytchar),10
+jne L81
+dec dword ptr (_yylineno)
+L81:
+mov edi,dword ptr (_yysptr)
+lea esi,(1)[edi]
+mov dword ptr (_yysptr),esi
+mov esi,dword ptr (_yytchar)
+mov ebx,esi
+mov byte ptr [edi],bl
+jmp L94
+L79:
+mov edi,dword ptr (-8)[ebp]
+lea esi,(4)[edi]
+mov dword ptr (-8)[ebp],esi
+mov esi,dword ptr (-12)[ebp]
+movsx esi,byte ptr (1)[esi]
+imul esi,esi,12
+lea esi,(_yysvec)[esi]
+mov dword ptr (-4)[ebp],esi
+mov dword ptr [edi],esi
+jmp L43
+L77:
+mov edi,dword ptr (-20)[ebp]
+movsx edi,byte ptr (_yymatch)[edi]
+mov esi,dword ptr (-24)[ebp]
+lea edi,[esi][edi*4]
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (-12)[ebp]
+mov esi,edi
+mov ebx,dword ptr (_yytop)
+cmp esi,ebx
+ja L83
+movsx edi,byte ptr [edi]
+imul edi,edi,12
+lea edi,(_yysvec)[edi]
+mov esi,dword ptr (-4)[ebp]
+cmp edi,esi
+jne L83
+lea edi,(_yysvec)
+mov esi,dword ptr (-12)[ebp]
+movsx esi,byte ptr (1)[esi]
+imul esi,esi,12
+lea esi,(_yysvec)[esi]
+cmp esi,edi
+jne L85
+mov edi,dword ptr (-16)[ebp]
+lea edi,(-1)[edi]
+mov dword ptr (-16)[ebp],edi
+movsx edi,byte ptr [edi]
+mov dword ptr (_yytchar),edi
+cmp dword ptr (_yytchar),10
+jne L87
+dec dword ptr (_yylineno)
+L87:
+mov edi,dword ptr (_yysptr)
+lea esi,(1)[edi]
+mov dword ptr (_yysptr),esi
+mov esi,dword ptr (_yytchar)
+mov ebx,esi
+mov byte ptr [edi],bl
+jmp L94
+L85:
+mov edi,dword ptr (-8)[ebp]
+lea esi,(4)[edi]
+mov dword ptr (-8)[ebp],esi
+mov esi,dword ptr (-12)[ebp]
+movsx esi,byte ptr (1)[esi]
+imul esi,esi,12
+lea esi,(_yysvec)[esi]
+mov dword ptr (-4)[ebp],esi
+mov dword ptr [edi],esi
+jmp L43
+L83:
+L75:
+L67:
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr (4)[edi]
+mov dword ptr (-4)[ebp],edi
+cmp edi,0
+je L89
+mov edi,dword ptr (-4)[ebp]
+mov edi,dword ptr [edi]
+mov dword ptr (-12)[ebp],edi
+lea esi,(_yycrank)
+cmp edi,esi
+je L89
+jmp L65
+L89:
+mov edi,dword ptr (-16)[ebp]
+lea edi,(-1)[edi]
+mov dword ptr (-16)[ebp],edi
+movsx edi,byte ptr [edi]
+mov dword ptr (_yytchar),edi
+cmp dword ptr (_yytchar),10
+jne L91
+dec dword ptr (_yylineno)
+L91:
+mov edi,dword ptr (_yysptr)
+lea esi,(1)[edi]
+mov dword ptr (_yysptr),esi
+mov esi,dword ptr (_yytchar)
+mov ebx,esi
+mov byte ptr [edi],bl
+jmp L94
+L93:
+mov edi,dword ptr (-16)[ebp]
+lea esi,(-1)[edi]
+mov dword ptr (-16)[ebp],esi
+mov byte ptr [edi],0
+mov edi,dword ptr (-8)[ebp]
+mov edi,dword ptr [edi]
+mov esi,edi
+cmp esi,0
+je L96
+mov edi,dword ptr (8)[edi]
+mov dword ptr (_yyfnd),edi
+cmp edi,0
+je L96
+mov edi,dword ptr (_yyfnd)
+cmp dword ptr [edi],0
+jle L96
+mov edi,dword ptr (-8)[ebp]
+mov dword ptr (_yyolsp),edi
+mov edi,dword ptr (_yyfnd)
+mov edi,dword ptr [edi]
+movsx edi,byte ptr (_yyextra)[edi]
+cmp edi,0
+je L98
+jmp L101
+L100:
+mov edi,dword ptr (-8)[ebp]
+lea edi,(-4)[edi]
+mov dword ptr (-8)[ebp],edi
+mov edi,dword ptr (-16)[ebp]
+lea esi,(-1)[edi]
+mov dword ptr (-16)[ebp],esi
+movsx edi,byte ptr [edi]
+mov dword ptr (_yytchar),edi
+cmp dword ptr (_yytchar),10
+jne L103
+dec dword ptr (_yylineno)
+L103:
+mov edi,dword ptr (_yysptr)
+lea esi,(1)[edi]
+mov dword ptr (_yysptr),esi
+mov esi,dword ptr (_yytchar)
+mov ebx,esi
+mov byte ptr [edi],bl
+L101:
+mov edi,dword ptr (_yyfnd)
+mov edi,dword ptr [edi]
+neg edi
+push edi
+mov edi,dword ptr (-8)[ebp]
+mov edi,dword ptr [edi]
+mov edi,dword ptr (8)[edi]
+push edi
+call _yyback
+add esp,8
+cmp eax,1
+je L105
+mov edi,dword ptr (-8)[ebp]
+lea esi,(_yylstate)
+cmp edi,esi
+ja L100
+L105:
+L98:
+mov edi,dword ptr (-16)[ebp]
+movsx esi,byte ptr [edi]
+mov dword ptr (_yyprevious),esi
+mov esi,dword ptr (-8)[ebp]
+mov dword ptr (_yylsp),esi
+lea esi,(_yytext)
+sub edi,esi
+lea edi,(1)[edi]
+mov dword ptr (_yyleng),edi
+mov edi,dword ptr (_yyleng)
+mov byte ptr (_yytext)[edi],0
+mov edi,dword ptr (_yyfnd)
+lea esi,(4)[edi]
+mov dword ptr (_yyfnd),esi
+mov eax,dword ptr [edi]
+jmp L34
+L96:
+mov edi,dword ptr (-16)[ebp]
+movsx edi,byte ptr [edi]
+mov dword ptr (_yytchar),edi
+cmp dword ptr (_yytchar),10
+jne L106
+dec dword ptr (_yylineno)
+L106:
+mov edi,dword ptr (_yysptr)
+lea esi,(1)[edi]
+mov dword ptr (_yysptr),esi
+mov esi,dword ptr (_yytchar)
+mov ebx,esi
+mov byte ptr [edi],bl
+L94:
+mov edi,dword ptr (-8)[ebp]
+lea esi,(-4)[edi]
+mov dword ptr (-8)[ebp],esi
+lea esi,(_yylstate)
+cmp edi,esi
+ja L93
+movsx edi,byte ptr (_yytext)
+cmp edi,0
+jne L108
+lea edi,(_yysbuf)
+mov dword ptr (_yysptr),edi
+mov eax,0
+jmp L34
+L108:
+mov edi,dword ptr (_yysptr)
+lea esi,(_yysbuf)
+cmp edi,esi
+jbe L118
+mov edi,dword ptr (_yysptr)
+lea edi,(-1)[edi]
+mov dword ptr (_yysptr),edi
+movsx edi,byte ptr [edi]
+mov dword ptr (-40)[ebp],edi
+jmp L119
+L118:
+mov edi,dword ptr (_yyin)
+lea edi,(4)[edi]
+mov esi,dword ptr [edi]
+sub esi,1
+mov dword ptr [edi],esi
+cmp esi,0
+jl L120
+mov edi,dword ptr (_yyin)
+mov esi,dword ptr [edi]
+lea ebx,(1)[esi]
+mov dword ptr [edi],ebx
+movsx edi,byte ptr [esi]
+and edi,255
+mov dword ptr (-44)[ebp],edi
+jmp L121
+L120:
+mov edi,dword ptr (_yyin)
+push edi
+call __filbuf
+add esp,4
+mov edi,eax
+mov dword ptr (-44)[ebp],edi
+L121:
+mov edi,dword ptr (-44)[ebp]
+mov dword ptr (-40)[ebp],edi
+L119:
+mov edi,dword ptr (-40)[ebp]
+mov dword ptr (_yytchar),edi
+cmp edi,10
+jne L116
+inc dword ptr (_yylineno)
+mov edi,dword ptr (_yytchar)
+mov dword ptr (-36)[ebp],edi
+jmp L117
+L116:
+mov edi,dword ptr (_yytchar)
+mov dword ptr (-36)[ebp],edi
+L117:
+cmp dword ptr (-36)[ebp],-1
+jne L114
+mov dword ptr (-32)[ebp],0
+jmp L115
+L114:
+mov edi,dword ptr (_yytchar)
+mov dword ptr (-32)[ebp],edi
+L115:
+mov edi,dword ptr (-32)[ebp]
+mov ebx,edi
+mov byte ptr (_yytext),bl
+movsx edi,bl
+mov dword ptr (_yyprevious),edi
+cmp dword ptr (_yyprevious),0
+jle L122
+mov edi,dword ptr (_yyout)
+lea edi,(4)[edi]
+mov esi,dword ptr [edi]
+sub esi,1
+mov dword ptr [edi],esi
+cmp esi,0
+jl L125
+mov edi,dword ptr (_yyout)
+mov esi,dword ptr [edi]
+lea ebx,(1)[esi]
+mov dword ptr [edi],ebx
+mov edi,dword ptr (_yyprevious)
+mov ebx,edi
+mov byte ptr [esi],bl
+jmp L126
+L125:
+mov edi,dword ptr (_yyout)
+push edi
+mov edi,dword ptr (_yyprevious)
+push edi
+call __flsbuf
+add esp,8
+L126:
+L122:
+lea edi,(_yytext)
+mov dword ptr (-16)[ebp],edi
+jmp L37
+L34:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _yyback
+_yyback:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+cmp edi,0
+jne L131
+mov eax,0
+jmp L127
+L130:
+mov edi,dword ptr (20)[ebp]
+lea esi,(4)[edi]
+mov dword ptr (20)[ebp],esi
+mov esi,dword ptr (24)[ebp]
+cmp dword ptr [edi],esi
+jne L133
+mov eax,1
+jmp L127
+L133:
+L131:
+mov edi,dword ptr (20)[ebp]
+cmp dword ptr [edi],0
+jne L130
+mov eax,0
+L127:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _yyinput
+_yyinput:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,16
+mov edi,dword ptr (_yysptr)
+lea esi,(_yysbuf)
+cmp edi,esi
+jbe L144
+mov edi,dword ptr (_yysptr)
+lea edi,(-1)[edi]
+mov dword ptr (_yysptr),edi
+movsx edi,byte ptr [edi]
+mov dword ptr (-12)[ebp],edi
+jmp L145
+L144:
+mov edi,dword ptr (_yyin)
+lea edi,(4)[edi]
+mov esi,dword ptr [edi]
+sub esi,1
+mov dword ptr [edi],esi
+cmp esi,0
+jl L146
+mov edi,dword ptr (_yyin)
+mov esi,dword ptr [edi]
+lea ebx,(1)[esi]
+mov dword ptr [edi],ebx
+movsx edi,byte ptr [esi]
+and edi,255
+mov dword ptr (-16)[ebp],edi
+jmp L147
+L146:
+mov edi,dword ptr (_yyin)
+push edi
+call __filbuf
+add esp,4
+mov edi,eax
+mov dword ptr (-16)[ebp],edi
+L147:
+mov edi,dword ptr (-16)[ebp]
+mov dword ptr (-12)[ebp],edi
+L145:
+mov edi,dword ptr (-12)[ebp]
+mov dword ptr (_yytchar),edi
+cmp edi,10
+jne L142
+inc dword ptr (_yylineno)
+mov edi,dword ptr (_yytchar)
+mov dword ptr (-8)[ebp],edi
+jmp L143
+L142:
+mov edi,dword ptr (_yytchar)
+mov dword ptr (-8)[ebp],edi
+L143:
+cmp dword ptr (-8)[ebp],-1
+jne L140
+mov dword ptr (-4)[ebp],0
+jmp L141
+L140:
+mov edi,dword ptr (_yytchar)
+mov dword ptr (-4)[ebp],edi
+L141:
+mov eax,dword ptr (-4)[ebp]
+L135:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _yyoutput
+_yyoutput:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (_yyout)
+lea edi,(4)[edi]
+mov esi,dword ptr [edi]
+sub esi,1
+mov dword ptr [edi],esi
+cmp esi,0
+jl L150
+mov edi,dword ptr (_yyout)
+mov esi,dword ptr [edi]
+lea ebx,(1)[esi]
+mov dword ptr [edi],ebx
+mov edi,dword ptr (20)[ebp]
+mov ebx,edi
+mov byte ptr [esi],bl
+jmp L151
+L150:
+mov edi,dword ptr (_yyout)
+push edi
+mov edi,dword ptr (20)[ebp]
+push edi
+call __flsbuf
+add esp,8
+L151:
+mov eax,0
+L148:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _yyunput
+_yyunput:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+mov dword ptr (_yytchar),edi
+cmp dword ptr (_yytchar),10
+jne L153
+dec dword ptr (_yylineno)
+L153:
+mov edi,dword ptr (_yysptr)
+lea esi,(1)[edi]
+mov dword ptr (_yysptr),esi
+mov esi,dword ptr (_yytchar)
+mov ebx,esi
+mov byte ptr [edi],bl
+mov eax,0
+L152:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _main
+_main:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+call _yyparse
+add esp,0
+mov eax,0
+L155:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _yyerror
+_yyerror:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov edi,dword ptr (20)[ebp]
+push edi
+lea edi,(L157)
+push edi
+call _printf
+add esp,8
+mov eax,0
+L156:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+public _yyexca
+align 2
+_yyexca label byte
+dw -1
+dw 1
+dw 0
+dw -1
+dw -2
+dw 0
+public _yyact
+align 2
+_yyact label byte
+dw 12
+dw 2
+dw 9
+dw 8
+dw 17
+dw 11
+dw 25
+dw 17
+dw 15
+dw 18
+dw 16
+dw 10
+dw 18
+dw 17
+dw 15
+dw 7
+dw 16
+dw 13
+dw 18
+dw 5
+dw 3
+dw 1
+dw 0
+dw 19
+dw 20
+dw 0
+dw 0
+dw 21
+dw 22
+dw 23
+dw 24
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 6
+dw 14
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 0
+dw 4
+dw 6
+public _yypact
+align 2
+_yypact label byte
+dw -1000
+dw -9
+dw -1000
+dw 5
+dw -7
+dw -59
+dw -1000
+dw -1000
+dw -1000
+dw -40
+dw -29
+dw -40
+dw -40
+dw -1000
+dw -1000
+dw -40
+dw -40
+dw -40
+dw -40
+dw -38
+dw -35
+dw -38
+dw -38
+dw -1000
+dw -1000
+dw -1000
+public _yypgo
+align 2
+_yypgo label byte
+dw 0
+dw 21
+dw 20
+dw 17
+dw 11
+public _yyr1
+align 2
+_yyr1 label byte
+dw 0
+dw 1
+dw 1
+dw 1
+dw 1
+dw 2
+dw 4
+dw 4
+dw 4
+dw 4
+dw 4
+dw 4
+dw 4
+dw 4
+dw 3
+public _yyr2
+align 2
+_yyr2 label byte
+dw 0
+dw 0
+dw 2
+dw 3
+dw 3
+dw 3
+dw 3
+dw 3
+dw 3
+dw 3
+dw 2
+dw 3
+dw 1
+dw 1
+dw 1
+public _yychk
+align 2
+_yychk label byte
+dw -1000
+dw -1
+dw 10
+dw -2
+dw 256
+dw -3
+dw 257
+dw 10
+dw 10
+dw 61
+dw -4
+dw 45
+dw 40
+dw -3
+dw 258
+dw 43
+dw 45
+dw 42
+dw 47
+dw -4
+dw -4
+dw -4
+dw -4
+dw -4
+dw -4
+dw 41
+public _yydef
+align 2
+_yydef label byte
+dw 1
+dw -2
+dw 2
+dw 0
+dw 0
+dw 0
+dw 14
+dw 3
+dw 4
+dw 0
+dw 5
+dw 0
+dw 0
+dw 12
+dw 13
+dw 0
+dw 0
+dw 0
+dw 0
+dw 10
+dw 0
+dw 6
+dw 7
+dw 8
+dw 9
+dw 11
+public _yychar
+align 4
+_yychar label byte
+dd -1
+public _yynerrs
+align 4
+_yynerrs label byte
+dd 0
+public _yyerrflag
+align 2
+_yyerrflag label byte
+dw 0
+public _yyparse
+_DATA ends
+_TEXT segment
+_yyparse:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+sub esp,332
+mov word ptr (-6)[ebp],0
+mov dword ptr (_yychar),-1
+mov dword ptr (_yynerrs),0
+mov word ptr (_yyerrflag),0
+lea edi,(-328)[ebp]
+mov dword ptr (-12)[ebp],edi
+lea edi,(_yyv-4)
+mov dword ptr (-20)[ebp],edi
+L161:
+mov edi,dword ptr (-12)[ebp]
+lea edi,(2)[edi]
+mov dword ptr (-12)[ebp],edi
+lea esi,(-26)[ebp]
+cmp edi,esi
+jbe L162
+lea edi,(L165)
+push edi
+call _yyerror
+add esp,4
+mov eax,1
+jmp L158
+L162:
+mov edi,dword ptr (-12)[ebp]
+mov si,word ptr (-6)[ebp]
+mov word ptr [edi],si
+mov edi,dword ptr (-20)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-20)[ebp],edi
+mov edi,dword ptr (-20)[ebp]
+mov esi,dword ptr (_yyval)
+mov dword ptr [edi],esi
+L166:
+movsx edi,word ptr (-6)[ebp]
+mov di,word ptr (_yypact)[edi*2]
+mov word ptr (-14)[ebp],di
+movsx edi,word ptr (-14)[ebp]
+cmp edi,-1000
+jg L167
+jmp L169
+L167:
+cmp dword ptr (_yychar),0
+jge L170
+call _yylex
+add esp,0
+mov dword ptr (_yychar),eax
+cmp eax,0
+jge L172
+mov dword ptr (_yychar),0
+L172:
+L170:
+movsx edi,word ptr (-14)[ebp]
+mov esi,dword ptr (_yychar)
+lea edi,[esi][edi]
+mov word ptr (-14)[ebp],di
+movsx edi,di
+cmp edi,0
+jl L176
+movsx edi,word ptr (-14)[ebp]
+cmp edi,249
+jl L174
+L176:
+jmp L169
+L174:
+movsx edi,word ptr (-14)[ebp]
+mov di,word ptr (_yyact)[edi*2]
+mov word ptr (-14)[ebp],di
+movsx edi,di
+movsx edi,word ptr (_yychk)[edi*2]
+cmp edi,dword ptr (_yychar)
+jne L177
+mov dword ptr (_yychar),-1
+mov edi,dword ptr (_yylval)
+mov dword ptr (_yyval),edi
+mov di,word ptr (-14)[ebp]
+mov word ptr (-6)[ebp],di
+movsx edi,word ptr (_yyerrflag)
+cmp edi,0
+jle L161
+movsx edi,word ptr (_yyerrflag)
+sub edi,1
+mov word ptr (_yyerrflag),di
+jmp L161
+L177:
+L169:
+movsx edi,word ptr (-6)[ebp]
+mov di,word ptr (_yydef)[edi*2]
+mov word ptr (-14)[ebp],di
+movsx edi,di
+cmp edi,-2
+jne L181
+cmp dword ptr (_yychar),0
+jge L183
+call _yylex
+add esp,0
+mov dword ptr (_yychar),eax
+cmp eax,0
+jge L185
+mov dword ptr (_yychar),0
+L185:
+L183:
+lea edi,(_yyexca)
+mov dword ptr (-24)[ebp],edi
+jmp L190
+L187:
+L188:
+mov edi,dword ptr (-24)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-24)[ebp],edi
+L190:
+mov edi,dword ptr (-24)[ebp]
+movsx esi,word ptr [edi]
+cmp esi,-1
+jne L187
+movsx edi,word ptr (2)[edi]
+movsx esi,word ptr (-6)[ebp]
+cmp edi,esi
+jne L187
+jmp L192
+L191:
+mov edi,dword ptr (-24)[ebp]
+movsx edi,word ptr [edi]
+cmp edi,dword ptr (_yychar)
+jne L194
+jmp L193
+L194:
+L192:
+mov edi,dword ptr (-24)[ebp]
+lea edi,(4)[edi]
+mov dword ptr (-24)[ebp],edi
+movsx edi,word ptr [edi]
+cmp edi,0
+jge L191
+L193:
+mov edi,dword ptr (-24)[ebp]
+mov di,word ptr (2)[edi]
+mov word ptr (-14)[ebp],di
+movsx edi,di
+cmp edi,0
+jge L196
+mov eax,0
+jmp L158
+L196:
+L181:
+movsx edi,word ptr (-14)[ebp]
+cmp edi,0
+jne L198
+movsx edi,word ptr (_yyerrflag)
+mov dword ptr (-332)[ebp],edi
+mov edi,dword ptr (-332)[ebp]
+cmp edi,0
+jl L200
+cmp edi,3
+jg L200
+jmp dword ptr (L216)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L216 label byte
+dd L203
+dd L206
+dd L206
+dd L213
+_TEXT ends
+_TEXT segment
+L203:
+lea edi,(L204)
+push edi
+call _yyerror
+add esp,4
+L205:
+inc dword ptr (_yynerrs)
+L206:
+mov word ptr (_yyerrflag),3
+jmp L208
+L207:
+mov edi,dword ptr (-12)[ebp]
+movsx edi,word ptr [edi]
+movsx edi,word ptr (_yypact)[edi*2]
+lea edi,(256)[edi]
+mov word ptr (-14)[ebp],di
+movsx edi,word ptr (-14)[ebp]
+cmp edi,0
+jl L210
+cmp edi,249
+jge L210
+movsx edi,word ptr (_yyact)[edi*2]
+movsx edi,word ptr (_yychk)[edi*2]
+cmp edi,256
+jne L210
+movsx edi,word ptr (-14)[ebp]
+mov di,word ptr (_yyact)[edi*2]
+mov word ptr (-6)[ebp],di
+jmp L161
+L210:
+mov edi,dword ptr (-12)[ebp]
+movsx esi,word ptr [edi]
+mov si,word ptr (_yypact)[esi*2]
+mov word ptr (-14)[ebp],si
+lea edi,(-2)[edi]
+mov dword ptr (-12)[ebp],edi
+mov edi,dword ptr (-20)[ebp]
+lea edi,(-4)[edi]
+mov dword ptr (-20)[ebp],edi
+L208:
+mov edi,dword ptr (-12)[ebp]
+lea esi,(-326)[ebp]
+cmp edi,esi
+jae L207
+L212:
+mov eax,1
+jmp L158
+L213:
+cmp dword ptr (_yychar),0
+jne L214
+jmp L212
+L214:
+mov dword ptr (_yychar),-1
+jmp L166
+L200:
+L198:
+mov di,word ptr (-14)[ebp]
+movsx esi,di
+lea esi,[esi*2]
+lea ebx,(_yyr2)[esi]
+mov edx,dword ptr (-12)[ebp]
+movsx ecx,word ptr [ebx]
+lea ecx,[ecx*2]
+sub edx,ecx
+mov dword ptr (-12)[ebp],edx
+mov edx,dword ptr (-20)[ebp]
+mov dword ptr (-4)[ebp],edx
+movsx ebx,word ptr [ebx]
+lea ebx,[ebx*4]
+sub edx,ebx
+mov dword ptr (-20)[ebp],edx
+mov ebx,dword ptr (-20)[ebp]
+mov ebx,dword ptr (4)[ebx]
+mov dword ptr (_yyval),ebx
+mov word ptr (-328)[ebp],di
+mov di,word ptr (_yyr1)[esi]
+mov word ptr (-14)[ebp],di
+movsx edi,word ptr (-14)[ebp]
+movsx edi,word ptr (_yypgo)[edi*2]
+mov esi,dword ptr (-12)[ebp]
+movsx esi,word ptr [esi]
+lea edi,[esi][edi]
+lea edi,(1)[edi]
+mov word ptr (-26)[ebp],di
+movsx edi,word ptr (-26)[ebp]
+cmp edi,249
+jge L219
+mov di,word ptr (_yyact)[edi*2]
+mov word ptr (-6)[ebp],di
+movsx edi,di
+movsx edi,word ptr (_yychk)[edi*2]
+movsx esi,word ptr (-14)[ebp]
+neg esi
+cmp edi,esi
+je L217
+L219:
+movsx edi,word ptr (-14)[ebp]
+movsx edi,word ptr (_yypgo)[edi*2]
+mov di,word ptr (_yyact)[edi*2]
+mov word ptr (-6)[ebp],di
+L217:
+movsx edi,word ptr (-328)[ebp]
+mov dword ptr (-332)[ebp],edi
+mov edi,dword ptr (-332)[ebp]
+cmp edi,4
+jl L161
+cmp edi,14
+jg L161
+jmp dword ptr (L241-16)[edi*4]
+_TEXT ends
+_TEXT segment
+align 4
+L241 label byte
+dd L223
+dd L224
+dd L226
+dd L228
+dd L230
+dd L232
+dd L234
+dd L161
+dd L236
+dd L238
+dd L240
+_TEXT ends
+_TEXT segment
+L223:
+mov word ptr (_yyerrflag),0
+jmp L161
+L224:
+lea edi,(L225)
+push edi
+call _printf
+add esp,4
+jmp L161
+L226:
+lea edi,(L227)
+push edi
+call _printf
+add esp,4
+jmp L161
+L228:
+lea edi,(L229)
+push edi
+call _printf
+add esp,4
+jmp L161
+L230:
+lea edi,(L231)
+push edi
+call _printf
+add esp,4
+jmp L161
+L232:
+lea edi,(L233)
+push edi
+call _printf
+add esp,4
+jmp L161
+L234:
+lea edi,(L235)
+push edi
+call _printf
+add esp,4
+jmp L161
+L236:
+lea edi,(L237)
+push edi
+call _printf
+add esp,4
+jmp L161
+L238:
+lea edi,(_yytext)
+push edi
+lea edi,(L239)
+push edi
+call _printf
+add esp,8
+jmp L161
+L240:
+lea edi,(_yytext)
+push edi
+lea edi,(L157)
+push edi
+call _printf
+add esp,8
+jmp L161
+L158:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+public _yywrap
+_yywrap:
+push ebx
+push esi
+push edi
+push ebp
+mov ebp,esp
+mov eax,1
+L243:
+mov esp,ebp
+pop ebp
+pop edi
+pop esi
+pop ebx
+ret
+_TEXT ends
+_DATA segment
+public _yyv
+align 4
+_yyv label byte
+db 600 dup (0)
+public _yyfnd
+align 4
+_yyfnd label byte
+db 4 dup (0)
+public _yyolsp
+align 4
+_yyolsp label byte
+db 4 dup (0)
+public _yylsp
+align 4
+_yylsp label byte
+db 4 dup (0)
+public _yylstate
+align 4
+_yylstate label byte
+db 800 dup (0)
+public _yyestate
+align 4
+_yyestate label byte
+db 4 dup (0)
+public _yytchar
+align 4
+_yytchar label byte
+db 4 dup (0)
+public _yysbuf
+align 1
+_yysbuf label byte
+db 200 dup (0)
+public _yymorfg
+align 4
+_yymorfg label byte
+db 4 dup (0)
+public _yytext
+align 1
+_yytext label byte
+db 200 dup (0)
+public _yyleng
+align 4
+_yyleng label byte
+db 4 dup (0)
+_DATA ends
+extrn _printf:near
+_DATA segment
+_DATA ends
+extrn _fprintf:near
+_DATA segment
+_DATA ends
+extrn __flsbuf:near
+_DATA segment
+_DATA ends
+extrn __filbuf:near
+_DATA segment
+_DATA ends
+extrn __iob:near
+_DATA segment
+public _yyval
+align 4
+_yyval label byte
+db 4 dup (0)
+public _yylval
+align 4
+_yylval label byte
+db 4 dup (0)
+_DATA ends
+_TEXT segment
+align 1
+L239 label byte
+db 112
+db 117
+db 115
+db 104
+db 32
+db 37
+db 115
+db 10
+db 0
+align 1
+L237 label byte
+db 108
+db 111
+db 97
+db 100
+db 10
+db 0
+align 1
+L235 label byte
+db 110
+db 101
+db 103
+db 97
+db 116
+db 101
+db 10
+db 0
+align 1
+L233 label byte
+db 100
+db 105
+db 118
+db 105
+db 100
+db 101
+db 10
+db 0
+align 1
+L231 label byte
+db 109
+db 117
+db 108
+db 116
+db 105
+db 112
+db 108
+db 121
+db 10
+db 0
+align 1
+L229 label byte
+db 110
+db 101
+db 103
+db 97
+db 116
+db 101
+db 10
+db 97
+db 100
+db 100
+db 10
+db 0
+align 1
+L227 label byte
+db 97
+db 100
+db 100
+db 10
+db 0
+align 1
+L225 label byte
+db 115
+db 116
+db 111
+db 114
+db 101
+db 10
+db 0
+align 1
+L204 label byte
+db 115
+db 121
+db 110
+db 116
+db 97
+db 120
+db 32
+db 101
+db 114
+db 114
+db 111
+db 114
+db 0
+align 1
+L165 label byte
+db 121
+db 97
+db 99
+db 99
+db 32
+db 115
+db 116
+db 97
+db 99
+db 107
+db 32
+db 111
+db 118
+db 101
+db 114
+db 102
+db 108
+db 111
+db 119
+db 0
+align 1
+L157 label byte
+db 37
+db 115
+db 10
+db 0
+align 1
+L17 label byte
+db 98
+db 97
+db 100
+db 32
+db 115
+db 119
+db 105
+db 116
+db 99
+db 104
+db 32
+db 121
+db 121
+db 108
+db 111
+db 111
+db 107
+db 32
+db 37
+db 100
+db 0
+_TEXT ends
+end