webruby 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/webruby/rake/mruby.rake +1 -0
- data/modules/emscripten/AUTHORS +7 -0
- data/modules/emscripten/LICENSE +26 -0
- data/modules/emscripten/emcc +58 -20
- data/modules/emscripten/emlink.py +2 -265
- data/modules/emscripten/emscripten.py +38 -18
- data/modules/emscripten/scons-tools/emscripten.py +11 -6
- data/modules/emscripten/scons-tools/llvm.py +4 -3
- data/modules/emscripten/src/analyzer.js +32 -13
- data/modules/emscripten/src/embind/embind.js +13 -13
- data/modules/emscripten/src/embind/emval.js +8 -7
- data/modules/emscripten/src/intertyper.js +10 -0
- data/modules/emscripten/src/jsifier.js +28 -6
- data/modules/emscripten/src/library.js +2949 -1322
- data/modules/emscripten/src/library_browser.js +27 -23
- data/modules/emscripten/src/library_egl.js +7 -2
- data/modules/emscripten/src/library_gl.js +15 -2
- data/modules/emscripten/src/library_glut.js +1 -1
- data/modules/emscripten/src/library_jansson.js +1 -1
- data/modules/emscripten/src/library_openal.js +464 -132
- data/modules/emscripten/src/library_path.js +134 -0
- data/modules/emscripten/src/library_sdl.js +222 -50
- data/modules/emscripten/src/modules.js +22 -5
- data/modules/emscripten/src/parseTools.js +13 -2
- data/modules/emscripten/src/postamble.js +60 -34
- data/modules/emscripten/src/preamble.js +67 -18
- data/modules/emscripten/src/relooper/Relooper.cpp +1 -1
- data/modules/emscripten/src/runtime.js +12 -2
- data/modules/emscripten/src/settings.js +869 -826
- data/modules/emscripten/src/shell.js +63 -51
- data/modules/emscripten/src/utility.js +6 -0
- data/modules/emscripten/system/include/bsd/sys/mman.h +1 -1
- data/modules/emscripten/system/include/emscripten/bind.h +28 -28
- data/modules/emscripten/system/include/libc/math.h +8 -0
- data/modules/emscripten/system/include/libc/sys/signal.h +3 -1
- data/modules/emscripten/system/include/libc/sys/stat.h +2 -1
- data/modules/emscripten/system/include/libc/sys/types.h +4 -0
- data/modules/emscripten/system/include/libcxx/CREDITS.TXT +24 -0
- data/modules/emscripten/system/include/libcxx/__bit_reference +27 -8
- data/modules/emscripten/system/include/libcxx/__config +62 -15
- data/modules/emscripten/system/include/libcxx/__debug +5 -1
- data/modules/emscripten/system/include/libcxx/__functional_03 +24 -24
- data/modules/emscripten/system/include/libcxx/__functional_base +22 -4
- data/modules/emscripten/system/include/libcxx/__hash_table +566 -54
- data/modules/emscripten/system/include/libcxx/__locale +11 -3
- data/modules/emscripten/system/include/libcxx/__split_buffer +6 -6
- data/modules/emscripten/system/include/libcxx/__std_stream +58 -30
- data/modules/emscripten/system/include/libcxx/__tree +58 -51
- data/modules/emscripten/system/include/libcxx/__tuple +9 -9
- data/modules/emscripten/system/include/libcxx/algorithm +223 -13
- data/modules/emscripten/system/include/libcxx/array +18 -17
- data/modules/emscripten/system/include/libcxx/atomic +15 -5
- data/modules/emscripten/system/include/libcxx/cctype +2 -2
- data/modules/emscripten/system/include/libcxx/chrono +131 -36
- data/modules/emscripten/system/include/libcxx/cmath +41 -36
- data/modules/emscripten/system/include/libcxx/complex +49 -49
- data/modules/emscripten/system/include/libcxx/cstdio +2 -2
- data/modules/emscripten/system/include/libcxx/cstdlib +5 -5
- data/modules/emscripten/system/include/libcxx/cstring +2 -2
- data/modules/emscripten/system/include/libcxx/cwchar +22 -13
- data/modules/emscripten/system/include/libcxx/deque +27 -14
- data/modules/emscripten/system/include/libcxx/forward_list +36 -35
- data/modules/emscripten/system/include/libcxx/fstream +16 -0
- data/modules/emscripten/system/include/libcxx/functional +348 -23
- data/modules/emscripten/system/include/libcxx/future +66 -0
- data/modules/emscripten/system/include/libcxx/ios +27 -0
- data/modules/emscripten/system/include/libcxx/istream +2 -4
- data/modules/emscripten/system/include/libcxx/iterator +17 -9
- data/modules/emscripten/system/include/libcxx/limits +2 -2
- data/modules/emscripten/system/include/libcxx/list +165 -105
- data/modules/emscripten/system/include/libcxx/locale +154 -43
- data/modules/emscripten/system/include/libcxx/map +165 -224
- data/modules/emscripten/system/include/libcxx/memory +113 -54
- data/modules/emscripten/system/include/libcxx/random +2 -29
- data/modules/emscripten/system/include/libcxx/readme.txt +1 -1
- data/modules/emscripten/system/include/libcxx/regex +60 -15
- data/modules/emscripten/system/include/libcxx/sstream +124 -40
- data/modules/emscripten/system/include/libcxx/string +345 -182
- data/modules/emscripten/system/include/libcxx/support/win32/limits_win32.h +3 -3
- data/modules/emscripten/system/include/libcxx/support/win32/locale_win32.h +15 -2
- data/modules/emscripten/system/include/libcxx/support/win32/math_win32.h +3 -3
- data/modules/emscripten/system/include/libcxx/support/win32/support.h +10 -11
- data/modules/emscripten/system/include/libcxx/thread +2 -2
- data/modules/emscripten/system/include/libcxx/tuple +134 -65
- data/modules/emscripten/system/include/libcxx/type_traits +232 -24
- data/modules/emscripten/system/include/libcxx/unordered_map +314 -161
- data/modules/emscripten/system/include/libcxx/unordered_set +160 -2
- data/modules/emscripten/system/include/libcxx/utility +225 -40
- data/modules/emscripten/system/include/libcxx/vector +52 -57
- data/modules/emscripten/system/include/net/if.h +20 -1
- data/modules/emscripten/system/include/net/netinet/in.h +69 -5
- data/modules/emscripten/system/include/netdb.h +36 -0
- data/modules/emscripten/system/include/sys/ioctl.h +55 -3
- data/modules/emscripten/system/include/sys/select.h +2 -0
- data/modules/emscripten/system/include/sys/sendfile.h +16 -0
- data/modules/emscripten/system/include/sys/socket.h +181 -35
- data/modules/emscripten/system/lib/dlmalloc.c +10 -12
- data/modules/emscripten/system/lib/libc/musl/src/stdlib/ecvt.c +19 -0
- data/modules/emscripten/system/lib/libc/musl/src/stdlib/fcvt.c +25 -0
- data/modules/emscripten/system/lib/libc/musl/src/stdlib/gcvt.c +8 -0
- data/modules/emscripten/system/lib/libcextra.symbols +3 -0
- data/modules/emscripten/system/lib/libcxx/CREDITS.TXT +24 -0
- data/modules/emscripten/system/lib/libcxx/debug.cpp +11 -9
- data/modules/emscripten/system/lib/libcxx/exception.cpp +9 -0
- data/modules/emscripten/system/lib/libcxx/hash.cpp +6 -0
- data/modules/emscripten/system/lib/libcxx/iostream.cpp +4 -4
- data/modules/emscripten/system/lib/libcxx/locale.cpp +91 -42
- data/modules/emscripten/system/lib/libcxx/readme.txt +1 -1
- data/modules/emscripten/system/lib/libcxx/stdexcept.cpp +1 -1
- data/modules/emscripten/system/lib/libcxx/string.cpp +332 -491
- data/modules/emscripten/system/lib/libcxx/support/win32/locale_win32.cpp +4 -2
- data/modules/emscripten/system/lib/libcxx/support/win32/support.cpp +140 -41
- data/modules/emscripten/system/lib/libcxx/symbols +9 -256
- data/modules/emscripten/system/lib/libcxx/system_error.cpp +3 -0
- data/modules/emscripten/system/lib/libcxx/thread.cpp +16 -3
- data/modules/emscripten/system/lib/libcxx/typeinfo.cpp +12 -2
- data/modules/emscripten/third_party/stb_image.c +4673 -0
- data/modules/emscripten/tools/asm_module.py +273 -0
- data/modules/emscripten/tools/exec_llvm.py +2 -2
- data/modules/emscripten/tools/file_packager.py +36 -16
- data/modules/emscripten/tools/find_bigfuncs.py +9 -9
- data/modules/emscripten/tools/js-optimizer.js +485 -131
- data/modules/emscripten/tools/js_optimizer.py +22 -15
- data/modules/emscripten/tools/merge_asm.py +26 -0
- data/modules/emscripten/tools/nativize_llvm.py +2 -2
- data/modules/emscripten/tools/settings_template_readonly.py +1 -1
- data/modules/emscripten/tools/shared.py +63 -20
- data/modules/emscripten/tools/split_asm.py +30 -0
- data/modules/emscripten/tools/test-js-optimizer-asm-outline1-output.js +686 -0
- data/modules/emscripten/tools/test-js-optimizer-asm-outline1.js +263 -0
- data/modules/emscripten/tools/test-js-optimizer-asm-outline2-output.js +747 -0
- data/modules/emscripten/tools/{test-js-optimizer-asm-outline.js → test-js-optimizer-asm-outline2.js} +1 -1
- data/modules/emscripten/tools/test-js-optimizer-asm-outline3-output.js +28 -0
- data/modules/emscripten/tools/test-js-optimizer-asm-outline3.js +30 -0
- data/modules/emscripten/tools/test-js-optimizer-asm-pre-output.js +4 -4
- data/modules/mruby/AUTHORS +1 -0
- data/modules/mruby/README.md +4 -2
- data/modules/mruby/build_config.rb +6 -6
- data/modules/mruby/doc/mrbgems/README.md +4 -4
- data/modules/mruby/examples/mrbgems/c_and_ruby_extension_example/mrbgem.rake +1 -1
- data/modules/mruby/examples/mrbgems/c_extension_example/mrbgem.rake +1 -1
- data/modules/mruby/examples/mrbgems/ruby_extension_example/mrbgem.rake +1 -1
- data/modules/mruby/include/mrbconf.h +3 -0
- data/modules/mruby/include/mruby/array.h +2 -2
- data/modules/mruby/include/mruby/class.h +4 -4
- data/modules/mruby/include/mruby/compile.h +1 -0
- data/modules/mruby/include/mruby/data.h +1 -1
- data/modules/mruby/include/mruby/hash.h +2 -2
- data/modules/mruby/include/mruby/irep.h +3 -2
- data/modules/mruby/include/mruby/proc.h +1 -1
- data/modules/mruby/include/mruby/range.h +1 -1
- data/modules/mruby/include/mruby/string.h +2 -2
- data/modules/mruby/include/mruby/value.h +43 -26
- data/modules/mruby/include/mruby.h +10 -2
- data/modules/mruby/minirake +2 -2
- data/modules/mruby/mrbgems/mruby-array-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-bin-mirb/mrbgem.rake +4 -1
- data/modules/mruby/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c +32 -0
- data/modules/mruby/mrbgems/mruby-bin-mruby/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-bin-mruby/tools/mruby/mruby.c +13 -5
- data/modules/mruby/mrbgems/mruby-enum-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-enum-ext/test/enum.rb +10 -11
- data/modules/mruby/mrbgems/mruby-eval/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-exit/mrbgem.rake +4 -0
- data/modules/mruby/mrbgems/mruby-exit/src/mruby-exit.c +24 -0
- data/modules/mruby/mrbgems/mruby-fiber/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-fiber/src/fiber.c +4 -2
- data/modules/mruby/mrbgems/mruby-hash-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-hash-ext/test/hash.rb +5 -7
- data/modules/mruby/mrbgems/mruby-math/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-numeric-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-numeric-ext/test/numeric.rb +2 -2
- data/modules/mruby/mrbgems/mruby-object-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-object-ext/src/object.c +3 -3
- data/modules/mruby/mrbgems/mruby-object-ext/test/nil.rb +3 -3
- data/modules/mruby/mrbgems/mruby-object-ext/test/object.rb +1 -1
- data/modules/mruby/mrbgems/mruby-objectspace/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-objectspace/test/objectspace.rb +36 -37
- data/modules/mruby/mrbgems/mruby-print/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-proc-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-proc-ext/test/proc.rb +8 -8
- data/modules/mruby/mrbgems/mruby-random/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-range-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-range-ext/test/range.rb +6 -6
- data/modules/mruby/mrbgems/mruby-sprintf/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-string-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-string-ext/test/string.rb +6 -6
- data/modules/mruby/mrbgems/mruby-struct/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-symbol-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-symbol-ext/test/symbol.rb +2 -2
- data/modules/mruby/mrbgems/mruby-time/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-time/src/time.c +2 -8
- data/modules/mruby/mrbgems/mruby-toplevel-ext/mrbgem.rake +1 -1
- data/modules/mruby/mrbgems/mruby-toplevel-ext/test/toplevel.rb +10 -10
- data/modules/mruby/mrblib/class.rb +15 -9
- data/modules/mruby/mrblib/string.rb +12 -0
- data/modules/mruby/src/array.c +4 -3
- data/modules/mruby/src/class.c +13 -8
- data/modules/mruby/src/codegen.c +9 -8
- data/modules/mruby/src/error.c +7 -5
- data/modules/mruby/src/error.h +1 -0
- data/modules/mruby/src/etc.c +1 -1
- data/modules/mruby/src/gc.c +163 -128
- data/modules/mruby/src/kernel.c +43 -15
- data/modules/mruby/src/numeric.c +9 -7
- data/modules/mruby/src/object.c +1 -1
- data/modules/mruby/src/parse.y +37 -19
- data/modules/mruby/src/range.c +10 -24
- data/modules/mruby/src/state.c +2 -6
- data/modules/mruby/src/string.c +0 -9
- data/modules/mruby/src/variable.c +2 -2
- data/modules/mruby/src/vm.c +12 -6
- data/modules/mruby/tasks/mrbgem_spec.rake +7 -0
- data/modules/mruby/tasks/mrbgems.rake +2 -1
- data/modules/mruby/tasks/mrbgems_test.rake +1 -1
- data/modules/mruby/tasks/mruby_build.rake +4 -3
- data/modules/mruby/tasks/mruby_build_commands.rake +6 -1
- data/modules/mruby/tasks/mruby_build_gem.rake +2 -2
- data/modules/mruby/tasks/toolchains/androideabi.rake +2 -0
- data/modules/mruby/test/assert.rb +2 -2
- data/modules/mruby/test/t/argumenterror.rb +3 -3
- data/modules/mruby/test/t/array.rb +55 -55
- data/modules/mruby/test/t/basicobject.rb +1 -1
- data/modules/mruby/test/t/bs_block.rb +12 -12
- data/modules/mruby/test/t/class.rb +21 -21
- data/modules/mruby/test/t/enumerable.rb +18 -18
- data/modules/mruby/test/t/exception.rb +20 -20
- data/modules/mruby/test/t/false.rb +3 -3
- data/modules/mruby/test/t/float.rb +40 -40
- data/modules/mruby/test/t/gc.rb +10 -10
- data/modules/mruby/test/t/hash.rb +41 -41
- data/modules/mruby/test/t/indexerror.rb +2 -2
- data/modules/mruby/test/t/integer.rb +41 -41
- data/modules/mruby/test/t/kernel.rb +33 -33
- data/modules/mruby/test/t/literals.rb +82 -82
- data/modules/mruby/test/t/localjumperror.rb +1 -1
- data/modules/mruby/test/t/module.rb +170 -31
- data/modules/mruby/test/t/nameerror.rb +5 -5
- data/modules/mruby/test/t/nil.rb +2 -2
- data/modules/mruby/test/t/nomethoderror.rb +1 -1
- data/modules/mruby/test/t/numeric.rb +5 -5
- data/modules/mruby/test/t/object.rb +2 -2
- data/modules/mruby/test/t/proc.rb +8 -8
- data/modules/mruby/test/t/range.rb +9 -9
- data/modules/mruby/test/t/rangeerror.rb +2 -2
- data/modules/mruby/test/t/runtimeerror.rb +1 -1
- data/modules/mruby/test/t/standarderror.rb +2 -2
- data/modules/mruby/test/t/string.rb +100 -100
- data/modules/mruby/test/t/symbol.rb +5 -5
- data/modules/mruby/test/t/syntax.rb +15 -6
- data/modules/mruby/test/t/true.rb +3 -3
- data/modules/mruby/test/t/typeerror.rb +2 -2
- data/modules/mruby/tools/mrbc/mrbc.c +10 -4
- data/modules/mruby/travis_config.rb +1 -0
- data/scripts/gen_gems_config.rb +5 -1
- metadata +19 -4
- data/modules/emscripten/tools/test-js-optimizer-asm-outline-output.js +0 -570
@@ -0,0 +1,747 @@
|
|
1
|
+
function linear() {
|
2
|
+
var sp = 0;
|
3
|
+
sp = STACKTOP;
|
4
|
+
STACKTOP = STACKTOP + 152 | 0;
|
5
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
6
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
7
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
8
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
9
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
10
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
11
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
12
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
13
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
14
|
+
HEAP32[sp + 16 >> 2] = 0;
|
15
|
+
HEAP32[sp + 20 >> 2] = 0;
|
16
|
+
linear$1(sp);
|
17
|
+
HEAP32[sp + 8 >> 2] = 0;
|
18
|
+
HEAP32[sp + 12 >> 2] = 0;
|
19
|
+
linear$0(sp);
|
20
|
+
STACKTOP = sp;
|
21
|
+
}
|
22
|
+
function _free($mem) {
|
23
|
+
$mem = $mem | 0;
|
24
|
+
var $5 = 0, $10 = 0, $16 = 0, $21 = 0, $25 = 0, $26 = 0, $psize_0 = 0, $p_0 = 0, $189 = 0, $194 = 0, sp = 0, helper$0 = 0;
|
25
|
+
sp = STACKTOP;
|
26
|
+
if (($mem | 0) == 0) {
|
27
|
+
STACKTOP = sp;
|
28
|
+
return;
|
29
|
+
}
|
30
|
+
$5 = HEAP32[24] | 0;
|
31
|
+
if (($mem - 8 | 0) >>> 0 < $5 >>> 0) {
|
32
|
+
_abort();
|
33
|
+
}
|
34
|
+
$10 = HEAP32[$mem - 4 >> 2] | 0;
|
35
|
+
if (($10 & 3 | 0) == 1) {
|
36
|
+
_abort();
|
37
|
+
}
|
38
|
+
$16 = $mem + (($10 & -8) - 8) | 0;
|
39
|
+
L621 : do {
|
40
|
+
helper$0 = 1;
|
41
|
+
if (helper$0) {
|
42
|
+
helper$0 = 0;
|
43
|
+
if (($10 & 1 | 0) == 0) {
|
44
|
+
$21 = HEAP32[($mem - 8 | 0) >> 2] | 0;
|
45
|
+
if (($10 & 3 | 0) == 0) {
|
46
|
+
return;
|
47
|
+
}
|
48
|
+
$25 = $mem + (-8 - $21 | 0) | 0;
|
49
|
+
$26 = $21 + ($10 & -8) | 0;
|
50
|
+
if (($mem + (-8 - $21 | 0) | 0) >>> 0 < $5 >>> 0) {
|
51
|
+
_abort();
|
52
|
+
}
|
53
|
+
HEAP32[sp + 664 >> 2] = 0;
|
54
|
+
HEAP32[sp + 668 >> 2] = 0;
|
55
|
+
HEAP32[sp + 48 >> 2] = $25;
|
56
|
+
HEAP32[sp + 8 >> 2] = $mem;
|
57
|
+
HEAP32[sp + 24 >> 2] = $10;
|
58
|
+
HEAP32[sp + 56 >> 2] = $26;
|
59
|
+
HEAP32[sp + 40 >> 2] = $21;
|
60
|
+
HEAP32[sp + 16 >> 2] = $5;
|
61
|
+
HEAP32[sp + 224 >> 2] = $p_0;
|
62
|
+
HEAP32[sp + 216 >> 2] = $psize_0;
|
63
|
+
_free$1(sp);
|
64
|
+
$p_0 = HEAP32[sp + 224 >> 2] | 0;
|
65
|
+
$psize_0 = HEAP32[sp + 216 >> 2] | 0;
|
66
|
+
tempValue = HEAP32[sp + 664 >> 2] | 0;
|
67
|
+
tempInt = HEAP32[sp + 668 >> 2] | 0;
|
68
|
+
tempDouble = +HEAPF32[sp + 668 >> 2];
|
69
|
+
HEAP32[sp + 664 >> 2] = 0;
|
70
|
+
HEAP32[sp + 668 >> 2] = 0;
|
71
|
+
if ((tempValue | 0) == 5) {
|
72
|
+
return;
|
73
|
+
}
|
74
|
+
if ((tempValue | 0) == 1) {
|
75
|
+
break;
|
76
|
+
}
|
77
|
+
if ((tempValue | 0) == 2) {
|
78
|
+
switch (tempInt | 0) {
|
79
|
+
case 2:
|
80
|
+
{
|
81
|
+
break L621;
|
82
|
+
}
|
83
|
+
}
|
84
|
+
}
|
85
|
+
} else {
|
86
|
+
helper$0 = 1;
|
87
|
+
}
|
88
|
+
}
|
89
|
+
if (helper$0) {
|
90
|
+
helper$0 = 0;
|
91
|
+
if (1) {
|
92
|
+
$p_0 = $mem - 8 | 0;
|
93
|
+
$psize_0 = $10 & -8;
|
94
|
+
} else {
|
95
|
+
helper$0 = 1;
|
96
|
+
}
|
97
|
+
}
|
98
|
+
} while (0);
|
99
|
+
$189 = $p_0;
|
100
|
+
if ($189 >>> 0 >= ($mem + (($10 & -8) - 8) | 0) >>> 0) {
|
101
|
+
_abort();
|
102
|
+
}
|
103
|
+
$194 = HEAP32[($mem + (($10 & -8) - 4) | 0) >> 2] | 0;
|
104
|
+
if (($194 & 1 | 0) == 0) {
|
105
|
+
_abort();
|
106
|
+
}
|
107
|
+
HEAP32[sp + 672 >> 2] = 0;
|
108
|
+
HEAP32[sp + 676 >> 2] = 0;
|
109
|
+
HEAP32[sp + 240 >> 2] = $194;
|
110
|
+
HEAP32[sp + 32 >> 2] = $16;
|
111
|
+
HEAP32[sp + 216 >> 2] = $psize_0;
|
112
|
+
HEAP32[sp + 224 >> 2] = $p_0;
|
113
|
+
HEAP32[sp + 232 >> 2] = $189;
|
114
|
+
HEAP32[sp + 8 >> 2] = $mem;
|
115
|
+
HEAP32[sp + 24 >> 2] = $10;
|
116
|
+
_free$2(sp);
|
117
|
+
tempValue = HEAP32[sp + 672 >> 2] | 0;
|
118
|
+
tempInt = HEAP32[sp + 676 >> 2] | 0;
|
119
|
+
tempDouble = +HEAPF32[sp + 676 >> 2];
|
120
|
+
HEAP32[sp + 672 >> 2] = 0;
|
121
|
+
HEAP32[sp + 676 >> 2] = 0;
|
122
|
+
if ((tempValue | 0) == 5) {
|
123
|
+
return;
|
124
|
+
}
|
125
|
+
}
|
126
|
+
function linear$0(sp) {
|
127
|
+
sp = sp | 0;
|
128
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
129
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
130
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
131
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
132
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
133
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
134
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
135
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
136
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
137
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
138
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
139
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
140
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
141
|
+
}
|
142
|
+
function linear$1(sp) {
|
143
|
+
sp = sp | 0;
|
144
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
145
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
146
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
147
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
148
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
149
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
150
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
151
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
152
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
153
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
154
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
155
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
156
|
+
cheez(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
|
157
|
+
}
|
158
|
+
function _free$0(sp) {
|
159
|
+
sp = sp | 0;
|
160
|
+
var $16 = 0, $220 = 0, $psize_0 = 0, $p_0 = 0, $189 = 0, $227 = 0, $194 = 0, $233 = 0, $mem = 0, $10 = 0, $236 = 0, $_pre_phi305 = 0, $267 = 0, $270 = 0, $273 = 0, $294 = 0, $299 = 0, $R7_1 = 0, $R7_0 = 0, $RP9_0 = 0, $301 = 0, $302 = 0, $305 = 0, $306 = 0, $278 = 0, $320 = 0, $351 = 0, $364 = 0, $psize_1 = 0;
|
161
|
+
$psize_1 = HEAP32[sp + 424 >> 2] | 0;
|
162
|
+
$10 = HEAP32[sp + 24 >> 2] | 0;
|
163
|
+
$mem = HEAP32[sp + 8 >> 2] | 0;
|
164
|
+
$194 = HEAP32[sp + 240 >> 2] | 0;
|
165
|
+
$189 = HEAP32[sp + 232 >> 2] | 0;
|
166
|
+
$p_0 = HEAP32[sp + 224 >> 2] | 0;
|
167
|
+
$psize_0 = HEAP32[sp + 216 >> 2] | 0;
|
168
|
+
$16 = HEAP32[sp + 32 >> 2] | 0;
|
169
|
+
OL : do {
|
170
|
+
if (($16 | 0) == (HEAP32[25] | 0)) {
|
171
|
+
$220 = (HEAP32[22] | 0) + $psize_0 | 0;
|
172
|
+
HEAP32[22] = $220;
|
173
|
+
HEAP32[25] = $p_0;
|
174
|
+
HEAP32[$p_0 + 4 >> 2] = $220 | 1;
|
175
|
+
HEAP32[$189 + $220 >> 2] = $220;
|
176
|
+
HEAP32[sp + 656 >> 2] = 5;
|
177
|
+
break OL;
|
178
|
+
}
|
179
|
+
$227 = ($194 & -8) + $psize_0 | 0;
|
180
|
+
L726 : do {
|
181
|
+
if ($194 >>> 0 < 256) {
|
182
|
+
$233 = HEAP32[$mem + ($10 & -8) >> 2] | 0;
|
183
|
+
$236 = HEAP32[$mem + ($10 & -8 | 4) >> 2] | 0;
|
184
|
+
do {
|
185
|
+
if (($233 | 0) != (120 + ($194 >>> 3 << 1 << 2) | 0 | 0)) {
|
186
|
+
if ($233 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
187
|
+
_abort();
|
188
|
+
}
|
189
|
+
if ((HEAP32[$233 + 12 >> 2] | 0) == ($16 | 0)) {
|
190
|
+
break;
|
191
|
+
}
|
192
|
+
_abort();
|
193
|
+
}
|
194
|
+
} while (0);
|
195
|
+
if (($236 | 0) == ($233 | 0)) {
|
196
|
+
HEAP32[20] = HEAP32[20] & (1 << ($194 >>> 3) ^ -1);
|
197
|
+
break;
|
198
|
+
}
|
199
|
+
do {
|
200
|
+
if (($236 | 0) == (120 + ($194 >>> 3 << 1 << 2) | 0 | 0)) {
|
201
|
+
$_pre_phi305 = $236 + 8 | 0;
|
202
|
+
} else {
|
203
|
+
if ($236 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
204
|
+
_abort();
|
205
|
+
}
|
206
|
+
if ((HEAP32[($236 + 8 | 0) >> 2] | 0) == ($16 | 0)) {
|
207
|
+
$_pre_phi305 = $236 + 8 | 0;
|
208
|
+
break;
|
209
|
+
}
|
210
|
+
_abort();
|
211
|
+
}
|
212
|
+
} while (0);
|
213
|
+
HEAP32[$233 + 12 >> 2] = $236;
|
214
|
+
HEAP32[$_pre_phi305 >> 2] = $233;
|
215
|
+
} else {
|
216
|
+
$267 = $mem + (($10 & -8) - 8) | 0;
|
217
|
+
$270 = HEAP32[$mem + (($10 & -8) + 16) >> 2] | 0;
|
218
|
+
$273 = HEAP32[$mem + ($10 & -8 | 4) >> 2] | 0;
|
219
|
+
do {
|
220
|
+
if (($273 | 0) == ($267 | 0)) {
|
221
|
+
$294 = HEAP32[($mem + (($10 & -8) + 12) | 0) >> 2] | 0;
|
222
|
+
if (($294 | 0) == 0) {
|
223
|
+
$299 = HEAP32[($mem + (($10 & -8) + 8) | 0) >> 2] | 0;
|
224
|
+
if (($299 | 0) == 0) {
|
225
|
+
$R7_1 = 0;
|
226
|
+
break;
|
227
|
+
} else {
|
228
|
+
$R7_0 = $299;
|
229
|
+
$RP9_0 = $mem + (($10 & -8) + 8) | 0;
|
230
|
+
}
|
231
|
+
} else {
|
232
|
+
$R7_0 = $294;
|
233
|
+
$RP9_0 = $mem + (($10 & -8) + 12) | 0;
|
234
|
+
}
|
235
|
+
while (1) {
|
236
|
+
$301 = $R7_0 + 20 | 0;
|
237
|
+
$302 = HEAP32[$301 >> 2] | 0;
|
238
|
+
if (($302 | 0) != 0) {
|
239
|
+
$R7_0 = $302;
|
240
|
+
$RP9_0 = $301;
|
241
|
+
continue;
|
242
|
+
}
|
243
|
+
$305 = $R7_0 + 16 | 0;
|
244
|
+
$306 = HEAP32[$305 >> 2] | 0;
|
245
|
+
if (($306 | 0) == 0) {
|
246
|
+
break;
|
247
|
+
} else {
|
248
|
+
$R7_0 = $306;
|
249
|
+
$RP9_0 = $305;
|
250
|
+
}
|
251
|
+
}
|
252
|
+
if ($RP9_0 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
253
|
+
_abort();
|
254
|
+
} else {
|
255
|
+
HEAP32[$RP9_0 >> 2] = 0;
|
256
|
+
$R7_1 = $R7_0;
|
257
|
+
break;
|
258
|
+
}
|
259
|
+
} else {
|
260
|
+
$278 = HEAP32[$mem + ($10 & -8) >> 2] | 0;
|
261
|
+
if ($278 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
262
|
+
_abort();
|
263
|
+
}
|
264
|
+
if ((HEAP32[($278 + 12 | 0) >> 2] | 0) != ($267 | 0)) {
|
265
|
+
_abort();
|
266
|
+
}
|
267
|
+
if ((HEAP32[($273 + 8 | 0) >> 2] | 0) == ($267 | 0)) {
|
268
|
+
HEAP32[($278 + 12 | 0) >> 2] = $273;
|
269
|
+
HEAP32[($273 + 8 | 0) >> 2] = $278;
|
270
|
+
$R7_1 = $273;
|
271
|
+
break;
|
272
|
+
} else {
|
273
|
+
_abort();
|
274
|
+
}
|
275
|
+
}
|
276
|
+
} while (0);
|
277
|
+
if (($270 | 0) == 0) {
|
278
|
+
break;
|
279
|
+
}
|
280
|
+
$320 = 384 + (HEAP32[($mem + (($10 & -8) + 20) | 0) >> 2] << 2) | 0;
|
281
|
+
do {
|
282
|
+
if (($267 | 0) == (HEAP32[$320 >> 2] | 0)) {
|
283
|
+
HEAP32[$320 >> 2] = $R7_1;
|
284
|
+
if (($R7_1 | 0) != 0) {
|
285
|
+
break;
|
286
|
+
}
|
287
|
+
HEAP32[21] = HEAP32[21] & (1 << HEAP32[($mem + (($10 & -8) + 20) | 0) >> 2] ^ -1);
|
288
|
+
break L726;
|
289
|
+
} else {
|
290
|
+
if ($270 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
291
|
+
_abort();
|
292
|
+
}
|
293
|
+
if ((HEAP32[($270 + 16 | 0) >> 2] | 0) == ($267 | 0)) {
|
294
|
+
HEAP32[($270 + 16 | 0) >> 2] = $R7_1;
|
295
|
+
} else {
|
296
|
+
HEAP32[$270 + 20 >> 2] = $R7_1;
|
297
|
+
}
|
298
|
+
if (($R7_1 | 0) == 0) {
|
299
|
+
break L726;
|
300
|
+
}
|
301
|
+
}
|
302
|
+
} while (0);
|
303
|
+
if ($R7_1 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
304
|
+
_abort();
|
305
|
+
}
|
306
|
+
HEAP32[$R7_1 + 24 >> 2] = $270;
|
307
|
+
$351 = HEAP32[$mem + (($10 & -8) + 8) >> 2] | 0;
|
308
|
+
do {
|
309
|
+
if (($351 | 0) != 0) {
|
310
|
+
if ($351 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
311
|
+
_abort();
|
312
|
+
} else {
|
313
|
+
HEAP32[$R7_1 + 16 >> 2] = $351;
|
314
|
+
HEAP32[$351 + 24 >> 2] = $R7_1;
|
315
|
+
break;
|
316
|
+
}
|
317
|
+
}
|
318
|
+
} while (0);
|
319
|
+
$364 = HEAP32[$mem + (($10 & -8) + 12) >> 2] | 0;
|
320
|
+
if (($364 | 0) == 0) {
|
321
|
+
break;
|
322
|
+
}
|
323
|
+
if ($364 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
324
|
+
_abort();
|
325
|
+
} else {
|
326
|
+
HEAP32[$R7_1 + 20 >> 2] = $364;
|
327
|
+
HEAP32[$364 + 24 >> 2] = $R7_1;
|
328
|
+
break;
|
329
|
+
}
|
330
|
+
}
|
331
|
+
} while (0);
|
332
|
+
HEAP32[$p_0 + 4 >> 2] = $227 | 1;
|
333
|
+
HEAP32[$189 + $227 >> 2] = $227;
|
334
|
+
if (($p_0 | 0) != (HEAP32[25] | 0)) {
|
335
|
+
$psize_1 = $227;
|
336
|
+
HEAP32[sp + 656 >> 2] = 1;
|
337
|
+
break OL;
|
338
|
+
}
|
339
|
+
HEAP32[22] = $227;
|
340
|
+
HEAP32[sp + 656 >> 2] = 5;
|
341
|
+
break OL;
|
342
|
+
} while (0);
|
343
|
+
HEAP32[sp + 424 >> 2] = $psize_1;
|
344
|
+
}
|
345
|
+
function _free$1(sp) {
|
346
|
+
sp = sp | 0;
|
347
|
+
var $25 = 0, $mem = 0, $10 = 0, $26 = 0, $21 = 0, $37 = 0, $40 = 0, $5 = 0, $_pre_phi307 = 0, $69 = 0, $72 = 0, $75 = 0, $95 = 0, $100 = 0, $R_1 = 0, $R_0 = 0, $RP_0 = 0, $102 = 0, $103 = 0, $106 = 0, $107 = 0, $80 = 0, $120 = 0, $151 = 0, $164 = 0, $p_0 = 0, $psize_0 = 0;
|
348
|
+
$psize_0 = HEAP32[sp + 216 >> 2] | 0;
|
349
|
+
$p_0 = HEAP32[sp + 224 >> 2] | 0;
|
350
|
+
$5 = HEAP32[sp + 16 >> 2] | 0;
|
351
|
+
$21 = HEAP32[sp + 40 >> 2] | 0;
|
352
|
+
$26 = HEAP32[sp + 56 >> 2] | 0;
|
353
|
+
$10 = HEAP32[sp + 24 >> 2] | 0;
|
354
|
+
$mem = HEAP32[sp + 8 >> 2] | 0;
|
355
|
+
$25 = HEAP32[sp + 48 >> 2] | 0;
|
356
|
+
OL : do {
|
357
|
+
if (($25 | 0) == (HEAP32[25] | 0)) {
|
358
|
+
if ((HEAP32[($mem + (($10 & -8) - 4) | 0) >> 2] & 3 | 0) != 3) {
|
359
|
+
$p_0 = $25;
|
360
|
+
$psize_0 = $26;
|
361
|
+
HEAP32[sp + 664 >> 2] = 1;
|
362
|
+
break OL;
|
363
|
+
}
|
364
|
+
HEAP32[22] = $26;
|
365
|
+
HEAP32[($mem + (($10 & -8) - 4) | 0) >> 2] = HEAP32[($mem + (($10 & -8) - 4) | 0) >> 2] & -2;
|
366
|
+
HEAP32[$mem + ((-8 - $21 | 0) + 4) >> 2] = $26 | 1;
|
367
|
+
HEAP32[($mem + (($10 & -8) - 8) | 0) >> 2] = $26;
|
368
|
+
HEAP32[sp + 664 >> 2] = 5;
|
369
|
+
break OL;
|
370
|
+
}
|
371
|
+
if ($21 >>> 0 < 256) {
|
372
|
+
$37 = HEAP32[$mem + ((-8 - $21 | 0) + 8) >> 2] | 0;
|
373
|
+
$40 = HEAP32[$mem + ((-8 - $21 | 0) + 12) >> 2] | 0;
|
374
|
+
do {
|
375
|
+
if (($37 | 0) != (120 + ($21 >>> 3 << 1 << 2) | 0 | 0)) {
|
376
|
+
if ($37 >>> 0 < $5 >>> 0) {
|
377
|
+
_abort();
|
378
|
+
}
|
379
|
+
if ((HEAP32[$37 + 12 >> 2] | 0) == ($25 | 0)) {
|
380
|
+
break;
|
381
|
+
}
|
382
|
+
_abort();
|
383
|
+
}
|
384
|
+
} while (0);
|
385
|
+
if (($40 | 0) == ($37 | 0)) {
|
386
|
+
HEAP32[20] = HEAP32[20] & (1 << ($21 >>> 3) ^ -1);
|
387
|
+
$p_0 = $25;
|
388
|
+
$psize_0 = $26;
|
389
|
+
HEAP32[sp + 664 >> 2] = 1;
|
390
|
+
break OL;
|
391
|
+
}
|
392
|
+
do {
|
393
|
+
if (($40 | 0) == (120 + ($21 >>> 3 << 1 << 2) | 0 | 0)) {
|
394
|
+
$_pre_phi307 = $40 + 8 | 0;
|
395
|
+
} else {
|
396
|
+
if ($40 >>> 0 < $5 >>> 0) {
|
397
|
+
_abort();
|
398
|
+
}
|
399
|
+
if ((HEAP32[($40 + 8 | 0) >> 2] | 0) == ($25 | 0)) {
|
400
|
+
$_pre_phi307 = $40 + 8 | 0;
|
401
|
+
break;
|
402
|
+
}
|
403
|
+
_abort();
|
404
|
+
}
|
405
|
+
} while (0);
|
406
|
+
HEAP32[$37 + 12 >> 2] = $40;
|
407
|
+
HEAP32[$_pre_phi307 >> 2] = $37;
|
408
|
+
$p_0 = $25;
|
409
|
+
$psize_0 = $26;
|
410
|
+
HEAP32[sp + 664 >> 2] = 1;
|
411
|
+
break OL;
|
412
|
+
}
|
413
|
+
$69 = $mem + (-8 - $21 | 0) | 0;
|
414
|
+
$72 = HEAP32[$mem + ((-8 - $21 | 0) + 24) >> 2] | 0;
|
415
|
+
$75 = HEAP32[$mem + ((-8 - $21 | 0) + 12) >> 2] | 0;
|
416
|
+
do {
|
417
|
+
if (($75 | 0) == ($69 | 0)) {
|
418
|
+
$95 = HEAP32[($mem + ((-8 - $21 | 0) + 20) | 0) >> 2] | 0;
|
419
|
+
if (($95 | 0) == 0) {
|
420
|
+
$100 = HEAP32[($mem + ((-8 - $21 | 0) + 16) | 0) >> 2] | 0;
|
421
|
+
if (($100 | 0) == 0) {
|
422
|
+
$R_1 = 0;
|
423
|
+
break;
|
424
|
+
} else {
|
425
|
+
$R_0 = $100;
|
426
|
+
$RP_0 = $mem + ((-8 - $21 | 0) + 16) | 0;
|
427
|
+
}
|
428
|
+
} else {
|
429
|
+
$R_0 = $95;
|
430
|
+
$RP_0 = $mem + ((-8 - $21 | 0) + 20) | 0;
|
431
|
+
}
|
432
|
+
while (1) {
|
433
|
+
$102 = $R_0 + 20 | 0;
|
434
|
+
$103 = HEAP32[$102 >> 2] | 0;
|
435
|
+
if (($103 | 0) != 0) {
|
436
|
+
$R_0 = $103;
|
437
|
+
$RP_0 = $102;
|
438
|
+
continue;
|
439
|
+
}
|
440
|
+
$106 = $R_0 + 16 | 0;
|
441
|
+
$107 = HEAP32[$106 >> 2] | 0;
|
442
|
+
if (($107 | 0) == 0) {
|
443
|
+
break;
|
444
|
+
} else {
|
445
|
+
$R_0 = $107;
|
446
|
+
$RP_0 = $106;
|
447
|
+
}
|
448
|
+
}
|
449
|
+
if ($RP_0 >>> 0 < $5 >>> 0) {
|
450
|
+
_abort();
|
451
|
+
} else {
|
452
|
+
HEAP32[$RP_0 >> 2] = 0;
|
453
|
+
$R_1 = $R_0;
|
454
|
+
break;
|
455
|
+
}
|
456
|
+
} else {
|
457
|
+
$80 = HEAP32[$mem + ((-8 - $21 | 0) + 8) >> 2] | 0;
|
458
|
+
if ($80 >>> 0 < $5 >>> 0) {
|
459
|
+
_abort();
|
460
|
+
}
|
461
|
+
if ((HEAP32[($80 + 12 | 0) >> 2] | 0) != ($69 | 0)) {
|
462
|
+
_abort();
|
463
|
+
}
|
464
|
+
if ((HEAP32[($75 + 8 | 0) >> 2] | 0) == ($69 | 0)) {
|
465
|
+
HEAP32[($80 + 12 | 0) >> 2] = $75;
|
466
|
+
HEAP32[($75 + 8 | 0) >> 2] = $80;
|
467
|
+
$R_1 = $75;
|
468
|
+
break;
|
469
|
+
} else {
|
470
|
+
_abort();
|
471
|
+
}
|
472
|
+
}
|
473
|
+
} while (0);
|
474
|
+
if (($72 | 0) == 0) {
|
475
|
+
$p_0 = $25;
|
476
|
+
$psize_0 = $26;
|
477
|
+
HEAP32[sp + 664 >> 2] = 1;
|
478
|
+
break OL;
|
479
|
+
}
|
480
|
+
$120 = 384 + (HEAP32[($mem + ((-8 - $21 | 0) + 28) | 0) >> 2] << 2) | 0;
|
481
|
+
do {
|
482
|
+
if (($69 | 0) == (HEAP32[$120 >> 2] | 0)) {
|
483
|
+
HEAP32[$120 >> 2] = $R_1;
|
484
|
+
if (($R_1 | 0) != 0) {
|
485
|
+
break;
|
486
|
+
}
|
487
|
+
HEAP32[21] = HEAP32[21] & (1 << HEAP32[($mem + ((-8 - $21 | 0) + 28) | 0) >> 2] ^ -1);
|
488
|
+
$p_0 = $25;
|
489
|
+
$psize_0 = $26;
|
490
|
+
HEAP32[sp + 664 >> 2] = 2;
|
491
|
+
HEAP32[sp + 668 >> 2] = 2;
|
492
|
+
break OL;
|
493
|
+
} else {
|
494
|
+
if ($72 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
495
|
+
_abort();
|
496
|
+
}
|
497
|
+
if ((HEAP32[($72 + 16 | 0) >> 2] | 0) == ($69 | 0)) {
|
498
|
+
HEAP32[($72 + 16 | 0) >> 2] = $R_1;
|
499
|
+
} else {
|
500
|
+
HEAP32[$72 + 20 >> 2] = $R_1;
|
501
|
+
}
|
502
|
+
if (($R_1 | 0) == 0) {
|
503
|
+
$p_0 = $25;
|
504
|
+
$psize_0 = $26;
|
505
|
+
HEAP32[sp + 664 >> 2] = 2;
|
506
|
+
HEAP32[sp + 668 >> 2] = 2;
|
507
|
+
break OL;
|
508
|
+
}
|
509
|
+
}
|
510
|
+
} while (0);
|
511
|
+
if ($R_1 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
512
|
+
_abort();
|
513
|
+
}
|
514
|
+
HEAP32[$R_1 + 24 >> 2] = $72;
|
515
|
+
$151 = HEAP32[$mem + ((-8 - $21 | 0) + 16) >> 2] | 0;
|
516
|
+
do {
|
517
|
+
if (($151 | 0) != 0) {
|
518
|
+
if ($151 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
519
|
+
_abort();
|
520
|
+
} else {
|
521
|
+
HEAP32[$R_1 + 16 >> 2] = $151;
|
522
|
+
HEAP32[$151 + 24 >> 2] = $R_1;
|
523
|
+
break;
|
524
|
+
}
|
525
|
+
}
|
526
|
+
} while (0);
|
527
|
+
$164 = HEAP32[$mem + ((-8 - $21 | 0) + 20) >> 2] | 0;
|
528
|
+
if (($164 | 0) == 0) {
|
529
|
+
$p_0 = $25;
|
530
|
+
$psize_0 = $26;
|
531
|
+
HEAP32[sp + 664 >> 2] = 1;
|
532
|
+
break OL;
|
533
|
+
}
|
534
|
+
if ($164 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
535
|
+
_abort();
|
536
|
+
} else {
|
537
|
+
HEAP32[$R_1 + 20 >> 2] = $164;
|
538
|
+
HEAP32[$164 + 24 >> 2] = $R_1;
|
539
|
+
$p_0 = $25;
|
540
|
+
$psize_0 = $26;
|
541
|
+
HEAP32[sp + 664 >> 2] = 1;
|
542
|
+
break OL;
|
543
|
+
}
|
544
|
+
} while (0);
|
545
|
+
HEAP32[sp + 224 >> 2] = $p_0;
|
546
|
+
HEAP32[sp + 216 >> 2] = $psize_0;
|
547
|
+
}
|
548
|
+
function _free$2(sp) {
|
549
|
+
sp = sp | 0;
|
550
|
+
var helper$1 = 0, $194 = 0, $16 = 0, $204 = 0, $psize_0 = 0, $p_0 = 0, $189 = 0, $mem = 0, $10 = 0, $psize_1 = 0, $390 = 0, $396 = 0, $F16_0 = 0, $_pre_phi = 0, $404 = 0, $414 = 0, $415 = 0, $I18_0 = 0, $428 = 0, $436 = 0, $443 = 0, $447 = 0, $448 = 0, $463 = 0, $K19_0 = 0, $T_0 = 0, $472 = 0, $473 = 0, label = 0, $486 = 0, $487 = 0, $489 = 0, $501 = 0, $sp_0_in_i = 0, $sp_0_i = 0;
|
551
|
+
$10 = HEAP32[sp + 24 >> 2] | 0;
|
552
|
+
$mem = HEAP32[sp + 8 >> 2] | 0;
|
553
|
+
$189 = HEAP32[sp + 232 >> 2] | 0;
|
554
|
+
$p_0 = HEAP32[sp + 224 >> 2] | 0;
|
555
|
+
$psize_0 = HEAP32[sp + 216 >> 2] | 0;
|
556
|
+
$16 = HEAP32[sp + 32 >> 2] | 0;
|
557
|
+
$194 = HEAP32[sp + 240 >> 2] | 0;
|
558
|
+
OL : do {
|
559
|
+
do {
|
560
|
+
helper$1 = 1;
|
561
|
+
if (helper$1) {
|
562
|
+
helper$1 = 0;
|
563
|
+
if (($194 & 2 | 0) == 0) {
|
564
|
+
if (($16 | 0) == (HEAP32[26] | 0)) {
|
565
|
+
$204 = (HEAP32[23] | 0) + $psize_0 | 0;
|
566
|
+
HEAP32[23] = $204;
|
567
|
+
HEAP32[26] = $p_0;
|
568
|
+
HEAP32[$p_0 + 4 >> 2] = $204 | 1;
|
569
|
+
if (($p_0 | 0) == (HEAP32[25] | 0)) {
|
570
|
+
HEAP32[25] = 0;
|
571
|
+
HEAP32[22] = 0;
|
572
|
+
}
|
573
|
+
if ($204 >>> 0 <= (HEAP32[27] | 0) >>> 0) {
|
574
|
+
HEAP32[sp + 672 >> 2] = 5;
|
575
|
+
break OL;
|
576
|
+
}
|
577
|
+
_sys_trim(0) | 0;
|
578
|
+
HEAP32[sp + 672 >> 2] = 5;
|
579
|
+
break OL;
|
580
|
+
}
|
581
|
+
HEAP32[sp + 656 >> 2] = 0;
|
582
|
+
HEAP32[sp + 660 >> 2] = 0;
|
583
|
+
HEAP32[sp + 32 >> 2] = $16;
|
584
|
+
HEAP32[sp + 216 >> 2] = $psize_0;
|
585
|
+
HEAP32[sp + 224 >> 2] = $p_0;
|
586
|
+
HEAP32[sp + 232 >> 2] = $189;
|
587
|
+
HEAP32[sp + 240 >> 2] = $194;
|
588
|
+
HEAP32[sp + 8 >> 2] = $mem;
|
589
|
+
HEAP32[sp + 24 >> 2] = $10;
|
590
|
+
HEAP32[sp + 424 >> 2] = $psize_1;
|
591
|
+
_free$0(sp);
|
592
|
+
$psize_1 = HEAP32[sp + 424 >> 2] | 0;
|
593
|
+
tempValue = HEAP32[sp + 656 >> 2] | 0;
|
594
|
+
tempInt = HEAP32[sp + 660 >> 2] | 0;
|
595
|
+
tempDouble = +HEAPF32[sp + 660 >> 2];
|
596
|
+
HEAP32[sp + 656 >> 2] = 0;
|
597
|
+
HEAP32[sp + 660 >> 2] = 0;
|
598
|
+
if ((tempValue | 0) == 5) {
|
599
|
+
HEAP32[sp + 672 >> 2] = 5;
|
600
|
+
break OL;
|
601
|
+
}
|
602
|
+
if ((tempValue | 0) == 1) {
|
603
|
+
break;
|
604
|
+
}
|
605
|
+
} else {
|
606
|
+
helper$1 = 1;
|
607
|
+
}
|
608
|
+
}
|
609
|
+
if (helper$1) {
|
610
|
+
helper$1 = 0;
|
611
|
+
if (1) {
|
612
|
+
HEAP32[($mem + (($10 & -8) - 4) | 0) >> 2] = $194 & -2;
|
613
|
+
HEAP32[$p_0 + 4 >> 2] = $psize_0 | 1;
|
614
|
+
HEAP32[$189 + $psize_0 >> 2] = $psize_0;
|
615
|
+
$psize_1 = $psize_0;
|
616
|
+
} else {
|
617
|
+
helper$1 = 1;
|
618
|
+
}
|
619
|
+
}
|
620
|
+
} while (0);
|
621
|
+
$390 = $psize_1 >>> 3;
|
622
|
+
if ($psize_1 >>> 0 < 256) {
|
623
|
+
$396 = HEAP32[20] | 0;
|
624
|
+
do {
|
625
|
+
if (($396 & 1 << $390 | 0) == 0) {
|
626
|
+
HEAP32[20] = $396 | 1 << $390;
|
627
|
+
$F16_0 = 120 + ($390 << 1 << 2) | 0;
|
628
|
+
$_pre_phi = 120 + (($390 << 1) + 2 << 2) | 0;
|
629
|
+
} else {
|
630
|
+
$404 = HEAP32[(120 + (($390 << 1) + 2 << 2) | 0) >> 2] | 0;
|
631
|
+
if ($404 >>> 0 >= (HEAP32[24] | 0) >>> 0) {
|
632
|
+
$F16_0 = $404;
|
633
|
+
$_pre_phi = 120 + (($390 << 1) + 2 << 2) | 0;
|
634
|
+
break;
|
635
|
+
}
|
636
|
+
_abort();
|
637
|
+
}
|
638
|
+
} while (0);
|
639
|
+
HEAP32[$_pre_phi >> 2] = $p_0;
|
640
|
+
HEAP32[$F16_0 + 12 >> 2] = $p_0;
|
641
|
+
HEAP32[$p_0 + 8 >> 2] = $F16_0;
|
642
|
+
HEAP32[$p_0 + 12 >> 2] = 120 + ($390 << 1 << 2) | 0;
|
643
|
+
HEAP32[sp + 672 >> 2] = 5;
|
644
|
+
break OL;
|
645
|
+
}
|
646
|
+
$414 = $p_0;
|
647
|
+
$415 = $psize_1 >>> 8;
|
648
|
+
do {
|
649
|
+
if (($415 | 0) == 0) {
|
650
|
+
$I18_0 = 0;
|
651
|
+
} else {
|
652
|
+
if ($psize_1 >>> 0 > 16777215) {
|
653
|
+
$I18_0 = 31;
|
654
|
+
break;
|
655
|
+
}
|
656
|
+
$428 = $415 << (($415 + 1048320 | 0) >>> 16 & 8) << ((($415 << (($415 + 1048320 | 0) >>> 16 & 8)) + 520192 | 0) >>> 16 & 4);
|
657
|
+
$436 = 14 - ((($415 << (($415 + 1048320 | 0) >>> 16 & 8)) + 520192 | 0) >>> 16 & 4 | ($415 + 1048320 | 0) >>> 16 & 8 | ($428 + 245760 | 0) >>> 16 & 2) + ($428 << (($428 + 245760 | 0) >>> 16 & 2) >>> 15) | 0;
|
658
|
+
$I18_0 = $psize_1 >>> (($436 + 7 | 0) >>> 0) & 1 | $436 << 1;
|
659
|
+
}
|
660
|
+
} while (0);
|
661
|
+
$443 = 384 + ($I18_0 << 2) | 0;
|
662
|
+
HEAP32[$p_0 + 28 >> 2] = $I18_0;
|
663
|
+
HEAP32[$p_0 + 20 >> 2] = 0;
|
664
|
+
HEAP32[$p_0 + 16 >> 2] = 0;
|
665
|
+
$447 = HEAP32[21] | 0;
|
666
|
+
$448 = 1 << $I18_0;
|
667
|
+
do {
|
668
|
+
if (($447 & $448 | 0) == 0) {
|
669
|
+
HEAP32[21] = $447 | $448;
|
670
|
+
HEAP32[$443 >> 2] = $414;
|
671
|
+
HEAP32[$p_0 + 24 >> 2] = $443;
|
672
|
+
HEAP32[$p_0 + 12 >> 2] = $p_0;
|
673
|
+
HEAP32[$p_0 + 8 >> 2] = $p_0;
|
674
|
+
} else {
|
675
|
+
if (($I18_0 | 0) == 31) {
|
676
|
+
$463 = 0;
|
677
|
+
} else {
|
678
|
+
$463 = 25 - ($I18_0 >>> 1) | 0;
|
679
|
+
}
|
680
|
+
$K19_0 = $psize_1 << $463;
|
681
|
+
$T_0 = HEAP32[$443 >> 2] | 0;
|
682
|
+
while (1) {
|
683
|
+
if ((HEAP32[$T_0 + 4 >> 2] & -8 | 0) == ($psize_1 | 0)) {
|
684
|
+
break;
|
685
|
+
}
|
686
|
+
$472 = $T_0 + 16 + ($K19_0 >>> 31 << 2) | 0;
|
687
|
+
$473 = HEAP32[$472 >> 2] | 0;
|
688
|
+
if (($473 | 0) == 0) {
|
689
|
+
label = 569;
|
690
|
+
break;
|
691
|
+
} else {
|
692
|
+
$K19_0 = $K19_0 << 1;
|
693
|
+
$T_0 = $473;
|
694
|
+
}
|
695
|
+
}
|
696
|
+
if ((label | 0) == 569) {
|
697
|
+
if ($472 >>> 0 < (HEAP32[24] | 0) >>> 0) {
|
698
|
+
_abort();
|
699
|
+
} else {
|
700
|
+
HEAP32[$472 >> 2] = $414;
|
701
|
+
HEAP32[$p_0 + 24 >> 2] = $T_0;
|
702
|
+
HEAP32[$p_0 + 12 >> 2] = $p_0;
|
703
|
+
HEAP32[$p_0 + 8 >> 2] = $p_0;
|
704
|
+
break;
|
705
|
+
}
|
706
|
+
}
|
707
|
+
$486 = $T_0 + 8 | 0;
|
708
|
+
$487 = HEAP32[$486 >> 2] | 0;
|
709
|
+
$489 = HEAP32[24] | 0;
|
710
|
+
if ($T_0 >>> 0 < $489 >>> 0) {
|
711
|
+
_abort();
|
712
|
+
}
|
713
|
+
if ($487 >>> 0 < $489 >>> 0) {
|
714
|
+
_abort();
|
715
|
+
} else {
|
716
|
+
HEAP32[$487 + 12 >> 2] = $414;
|
717
|
+
HEAP32[$486 >> 2] = $414;
|
718
|
+
HEAP32[$p_0 + 8 >> 2] = $487;
|
719
|
+
HEAP32[$p_0 + 12 >> 2] = $T_0;
|
720
|
+
HEAP32[$p_0 + 24 >> 2] = 0;
|
721
|
+
break;
|
722
|
+
}
|
723
|
+
}
|
724
|
+
} while (0);
|
725
|
+
$501 = (HEAP32[28] | 0) - 1 | 0;
|
726
|
+
HEAP32[28] = $501;
|
727
|
+
if (($501 | 0) == 0) {
|
728
|
+
$sp_0_in_i = 536;
|
729
|
+
} else {
|
730
|
+
HEAP32[sp + 672 >> 2] = 5;
|
731
|
+
break OL;
|
732
|
+
}
|
733
|
+
while (1) {
|
734
|
+
$sp_0_i = HEAP32[$sp_0_in_i >> 2] | 0;
|
735
|
+
if (($sp_0_i | 0) == 0) {
|
736
|
+
break;
|
737
|
+
} else {
|
738
|
+
$sp_0_in_i = $sp_0_i + 8 | 0;
|
739
|
+
}
|
740
|
+
}
|
741
|
+
HEAP32[28] = -1;
|
742
|
+
STACKTOP = sp;
|
743
|
+
HEAP32[sp + 672 >> 2] = 5;
|
744
|
+
break OL;
|
745
|
+
} while (0);
|
746
|
+
}
|
747
|
+
|