diff --git a/Cargo.lock b/Cargo.lock index 5f55a2ea5ca..6d301f57f94 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1036,6 +1036,7 @@ version = "0.1.0" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (git+https://github.com/rust-lang/libc)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", diff --git a/lib/emscripten/Cargo.toml b/lib/emscripten/Cargo.toml index 36831f87d0c..648817eec14 100644 --- a/lib/emscripten/Cargo.toml +++ b/lib/emscripten/Cargo.toml @@ -10,6 +10,7 @@ build = "build/mod.rs" [dependencies] wasmer-runtime-core = { path = "../runtime-core", version = "0.1.0" } +lazy_static = "1.2.0" libc = { git = "https://github.com/rust-lang/libc" } byteorder = "1" time = "0.1.41" diff --git a/lib/emscripten/emtests/FS_exports.wasm b/lib/emscripten/emtests/FS_exports.wasm index 5c65988e014..255839e4ddb 100644 Binary files a/lib/emscripten/emtests/FS_exports.wasm and b/lib/emscripten/emtests/FS_exports.wasm differ diff --git a/lib/emscripten/emtests/clock_gettime.wasm b/lib/emscripten/emtests/clock_gettime.wasm index 1a855a75a51..fd5ddd398d2 100644 Binary files a/lib/emscripten/emtests/clock_gettime.wasm and b/lib/emscripten/emtests/clock_gettime.wasm differ diff --git a/lib/emscripten/emtests/closebitcasts.wasm b/lib/emscripten/emtests/closebitcasts.wasm index 89ed015d5bf..82d90c281ac 100644 Binary files a/lib/emscripten/emtests/closebitcasts.wasm and b/lib/emscripten/emtests/closebitcasts.wasm differ diff --git a/lib/emscripten/emtests/dyncall.wasm b/lib/emscripten/emtests/dyncall.wasm index de0f054453c..13ffc96173b 100644 Binary files a/lib/emscripten/emtests/dyncall.wasm and b/lib/emscripten/emtests/dyncall.wasm differ diff --git a/lib/emscripten/emtests/dyncall_specific.wasm b/lib/emscripten/emtests/dyncall_specific.wasm index d7781255b65..d08d0a861e3 100644 Binary files a/lib/emscripten/emtests/dyncall_specific.wasm and b/lib/emscripten/emtests/dyncall_specific.wasm differ diff --git a/lib/emscripten/emtests/emscripten_get_compiler_setting.wasm b/lib/emscripten/emtests/emscripten_get_compiler_setting.wasm index 3af77a61817..5151cc3a8d0 100644 Binary files a/lib/emscripten/emtests/emscripten_get_compiler_setting.wasm and b/lib/emscripten/emtests/emscripten_get_compiler_setting.wasm differ diff --git a/lib/emscripten/emtests/env.wasm b/lib/emscripten/emtests/env.wasm index 0df9e53a585..fba068d5dc3 100644 Binary files a/lib/emscripten/emtests/env.wasm and b/lib/emscripten/emtests/env.wasm differ diff --git a/lib/emscripten/emtests/getValue_setValue.wasm b/lib/emscripten/emtests/getValue_setValue.wasm index cab7b6cb665..a826f008c5d 100644 Binary files a/lib/emscripten/emtests/getValue_setValue.wasm and b/lib/emscripten/emtests/getValue_setValue.wasm differ diff --git a/lib/emscripten/emtests/legacy_exported_runtime_numbers.wasm b/lib/emscripten/emtests/legacy_exported_runtime_numbers.wasm index e0f1ee78c94..98426ab01ac 100644 Binary files a/lib/emscripten/emtests/legacy_exported_runtime_numbers.wasm and b/lib/emscripten/emtests/legacy_exported_runtime_numbers.wasm differ diff --git a/lib/emscripten/emtests/localtime.wasm b/lib/emscripten/emtests/localtime.wasm index 699d0d96bd3..083d8bd5805 100644 Binary files a/lib/emscripten/emtests/localtime.wasm and b/lib/emscripten/emtests/localtime.wasm differ diff --git a/lib/emscripten/emtests/modularize_closure_pre.wasm b/lib/emscripten/emtests/modularize_closure_pre.wasm index 2eae20cd9e5..a2f6a5507fa 100644 Binary files a/lib/emscripten/emtests/modularize_closure_pre.wasm and b/lib/emscripten/emtests/modularize_closure_pre.wasm differ diff --git a/lib/emscripten/emtests/printf.wasm b/lib/emscripten/emtests/printf.wasm index c3f19ab96f8..b466aa9e70a 100644 Binary files a/lib/emscripten/emtests/printf.wasm and b/lib/emscripten/emtests/printf.wasm differ diff --git a/lib/emscripten/emtests/puts.wasm b/lib/emscripten/emtests/puts.wasm index c01c5d8b7c6..6c7e1d91e8e 100644 Binary files a/lib/emscripten/emtests/puts.wasm and b/lib/emscripten/emtests/puts.wasm differ diff --git a/lib/emscripten/emtests/stackAlloc.wasm b/lib/emscripten/emtests/stackAlloc.wasm index 0787b9ecc62..1b891078607 100644 Binary files a/lib/emscripten/emtests/stackAlloc.wasm and b/lib/emscripten/emtests/stackAlloc.wasm differ diff --git a/lib/emscripten/emtests/stack_overflow.wasm b/lib/emscripten/emtests/stack_overflow.wasm index 515a51e0db6..5cc7a479140 100644 Binary files a/lib/emscripten/emtests/stack_overflow.wasm and b/lib/emscripten/emtests/stack_overflow.wasm differ diff --git a/lib/emscripten/emtests/test_addr_of_stacked.wasm b/lib/emscripten/emtests/test_addr_of_stacked.wasm index fce82c17ac0..12c763c0326 100644 Binary files a/lib/emscripten/emtests/test_addr_of_stacked.wasm and b/lib/emscripten/emtests/test_addr_of_stacked.wasm differ diff --git a/lib/emscripten/emtests/test_alloca.wasm b/lib/emscripten/emtests/test_alloca.wasm index f623c9f2dd2..acbc0b1800b 100644 Binary files a/lib/emscripten/emtests/test_alloca.wasm and b/lib/emscripten/emtests/test_alloca.wasm differ diff --git a/lib/emscripten/emtests/test_alloca_stack.wasm b/lib/emscripten/emtests/test_alloca_stack.wasm index 98985f34a16..d50dc3802d0 100644 Binary files a/lib/emscripten/emtests/test_alloca_stack.wasm and b/lib/emscripten/emtests/test_alloca_stack.wasm differ diff --git a/lib/emscripten/emtests/test_array2.wasm b/lib/emscripten/emtests/test_array2.wasm index 6d3f8434faa..320c7f10080 100644 Binary files a/lib/emscripten/emtests/test_array2.wasm and b/lib/emscripten/emtests/test_array2.wasm differ diff --git a/lib/emscripten/emtests/test_array2b.wasm b/lib/emscripten/emtests/test_array2b.wasm index 6511dbd2c19..c110764577b 100644 Binary files a/lib/emscripten/emtests/test_array2b.wasm and b/lib/emscripten/emtests/test_array2b.wasm differ diff --git a/lib/emscripten/emtests/test_atoX.wasm b/lib/emscripten/emtests/test_atoX.wasm index 5588c91a052..a36b2a59f7c 100644 Binary files a/lib/emscripten/emtests/test_atoX.wasm and b/lib/emscripten/emtests/test_atoX.wasm differ diff --git a/lib/emscripten/emtests/test_atomic.wasm b/lib/emscripten/emtests/test_atomic.wasm index 3b2c89e52d4..e38529b62a8 100644 Binary files a/lib/emscripten/emtests/test_atomic.wasm and b/lib/emscripten/emtests/test_atomic.wasm differ diff --git a/lib/emscripten/emtests/test_atomic_cxx.wasm b/lib/emscripten/emtests/test_atomic_cxx.wasm index 3f12b166321..182df2ce47e 100644 Binary files a/lib/emscripten/emtests/test_atomic_cxx.wasm and b/lib/emscripten/emtests/test_atomic_cxx.wasm differ diff --git a/lib/emscripten/emtests/test_bsearch.wasm b/lib/emscripten/emtests/test_bsearch.wasm index cefea557140..3d0e3d784eb 100644 Binary files a/lib/emscripten/emtests/test_bsearch.wasm and b/lib/emscripten/emtests/test_bsearch.wasm differ diff --git a/lib/emscripten/emtests/test_ccall.wasm b/lib/emscripten/emtests/test_ccall.wasm index 014883f0d0c..b69fc46c566 100644 Binary files a/lib/emscripten/emtests/test_ccall.wasm and b/lib/emscripten/emtests/test_ccall.wasm differ diff --git a/lib/emscripten/emtests/test_complex.wasm b/lib/emscripten/emtests/test_complex.wasm index d8996ad842e..bddd1b919b3 100644 Binary files a/lib/emscripten/emtests/test_complex.wasm and b/lib/emscripten/emtests/test_complex.wasm differ diff --git a/lib/emscripten/emtests/test_demangle_stacks.wasm b/lib/emscripten/emtests/test_demangle_stacks.wasm index e040a3a44d9..dd91254a4dd 100644 Binary files a/lib/emscripten/emtests/test_demangle_stacks.wasm and b/lib/emscripten/emtests/test_demangle_stacks.wasm differ diff --git a/lib/emscripten/emtests/test_demangle_stacks_noassert.wasm b/lib/emscripten/emtests/test_demangle_stacks_noassert.wasm index 0ddaf5d4374..3a85b778c04 100644 Binary files a/lib/emscripten/emtests/test_demangle_stacks_noassert.wasm and b/lib/emscripten/emtests/test_demangle_stacks_noassert.wasm differ diff --git a/lib/emscripten/emtests/test_dlmalloc_partial_2.wasm b/lib/emscripten/emtests/test_dlmalloc_partial_2.wasm index 4791dc76026..5a4dbcc3cdc 100644 Binary files a/lib/emscripten/emtests/test_dlmalloc_partial_2.wasm and b/lib/emscripten/emtests/test_dlmalloc_partial_2.wasm differ diff --git a/lib/emscripten/emtests/test_double_varargs.wasm b/lib/emscripten/emtests/test_double_varargs.wasm index b5fd215874f..1b33500eed3 100644 Binary files a/lib/emscripten/emtests/test_double_varargs.wasm and b/lib/emscripten/emtests/test_double_varargs.wasm differ diff --git a/lib/emscripten/emtests/test_em_asm.wasm b/lib/emscripten/emtests/test_em_asm.wasm index e0c86abd639..464795c7b7c 100644 Binary files a/lib/emscripten/emtests/test_em_asm.wasm and b/lib/emscripten/emtests/test_em_asm.wasm differ diff --git a/lib/emscripten/emtests/test_em_asm_2.wasm b/lib/emscripten/emtests/test_em_asm_2.wasm index 6325ba5c8b3..677cf87035e 100644 Binary files a/lib/emscripten/emtests/test_em_asm_2.wasm and b/lib/emscripten/emtests/test_em_asm_2.wasm differ diff --git a/lib/emscripten/emtests/test_em_asm_parameter_pack.wasm b/lib/emscripten/emtests/test_em_asm_parameter_pack.wasm index 872d966a34a..5a028d06bf1 100644 Binary files a/lib/emscripten/emtests/test_em_asm_parameter_pack.wasm and b/lib/emscripten/emtests/test_em_asm_parameter_pack.wasm differ diff --git a/lib/emscripten/emtests/test_em_asm_signatures.wasm b/lib/emscripten/emtests/test_em_asm_signatures.wasm index e3909729c63..29bf8608365 100644 Binary files a/lib/emscripten/emtests/test_em_asm_signatures.wasm and b/lib/emscripten/emtests/test_em_asm_signatures.wasm differ diff --git a/lib/emscripten/emtests/test_em_asm_unicode.wasm b/lib/emscripten/emtests/test_em_asm_unicode.wasm index bf21149de7e..6313244ca43 100644 Binary files a/lib/emscripten/emtests/test_em_asm_unicode.wasm and b/lib/emscripten/emtests/test_em_asm_unicode.wasm differ diff --git a/lib/emscripten/emtests/test_em_asm_unused_arguments.wasm b/lib/emscripten/emtests/test_em_asm_unused_arguments.wasm index bc217bf2e4e..fcdf088216c 100644 Binary files a/lib/emscripten/emtests/test_em_asm_unused_arguments.wasm and b/lib/emscripten/emtests/test_em_asm_unused_arguments.wasm differ diff --git a/lib/emscripten/emtests/test_em_js.wasm b/lib/emscripten/emtests/test_em_js.wasm index 0f8b21682d3..ce044115e47 100644 Binary files a/lib/emscripten/emtests/test_em_js.wasm and b/lib/emscripten/emtests/test_em_js.wasm differ diff --git a/lib/emscripten/emtests/test_emscripten_api.wasm b/lib/emscripten/emtests/test_emscripten_api.wasm index 0424dd88984..b69ca687e72 100644 Binary files a/lib/emscripten/emtests/test_emscripten_api.wasm and b/lib/emscripten/emtests/test_emscripten_api.wasm differ diff --git a/lib/emscripten/emtests/test_emulate_function_pointer_casts.wasm b/lib/emscripten/emtests/test_emulate_function_pointer_casts.wasm index 52a1a83b655..e115ef77fbb 100644 Binary files a/lib/emscripten/emtests/test_emulate_function_pointer_casts.wasm and b/lib/emscripten/emtests/test_emulate_function_pointer_casts.wasm differ diff --git a/lib/emscripten/emtests/test_erf.wasm b/lib/emscripten/emtests/test_erf.wasm index 124f3af3be5..fe67b717f0e 100644 Binary files a/lib/emscripten/emtests/test_erf.wasm and b/lib/emscripten/emtests/test_erf.wasm differ diff --git a/lib/emscripten/emtests/test_errar.wasm b/lib/emscripten/emtests/test_errar.wasm index 65429609bcf..c512c803c7d 100644 Binary files a/lib/emscripten/emtests/test_errar.wasm and b/lib/emscripten/emtests/test_errar.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_2.wasm b/lib/emscripten/emtests/test_exceptions_2.wasm index 6add03b75b0..52cf48e5f25 100644 Binary files a/lib/emscripten/emtests/test_exceptions_2.wasm and b/lib/emscripten/emtests/test_exceptions_2.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_convert.wasm b/lib/emscripten/emtests/test_exceptions_convert.wasm index f57ab9f7584..216a54fe270 100644 Binary files a/lib/emscripten/emtests/test_exceptions_convert.wasm and b/lib/emscripten/emtests/test_exceptions_convert.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_destroy_virtual.wasm b/lib/emscripten/emtests/test_exceptions_destroy_virtual.wasm index f4794ad147d..2f8f4e81392 100644 Binary files a/lib/emscripten/emtests/test_exceptions_destroy_virtual.wasm and b/lib/emscripten/emtests/test_exceptions_destroy_virtual.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_libcxx.wasm b/lib/emscripten/emtests/test_exceptions_libcxx.wasm index c7019ed8f51..3215a41464a 100644 Binary files a/lib/emscripten/emtests/test_exceptions_libcxx.wasm and b/lib/emscripten/emtests/test_exceptions_libcxx.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_multi.wasm b/lib/emscripten/emtests/test_exceptions_multi.wasm index 2a225775ad5..d2261445dee 100644 Binary files a/lib/emscripten/emtests/test_exceptions_multi.wasm and b/lib/emscripten/emtests/test_exceptions_multi.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_multiple_inherit.wasm b/lib/emscripten/emtests/test_exceptions_multiple_inherit.wasm index 8ee5a6350ed..e608942a2e5 100644 Binary files a/lib/emscripten/emtests/test_exceptions_multiple_inherit.wasm and b/lib/emscripten/emtests/test_exceptions_multiple_inherit.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_multiple_inherit_rethrow.wasm b/lib/emscripten/emtests/test_exceptions_multiple_inherit_rethrow.wasm index 5ca16790c55..6330d0e58ad 100644 Binary files a/lib/emscripten/emtests/test_exceptions_multiple_inherit_rethrow.wasm and b/lib/emscripten/emtests/test_exceptions_multiple_inherit_rethrow.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_primary.wasm b/lib/emscripten/emtests/test_exceptions_primary.wasm index ba76a05b7f4..a072880f454 100644 Binary files a/lib/emscripten/emtests/test_exceptions_primary.wasm and b/lib/emscripten/emtests/test_exceptions_primary.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_refcount.wasm b/lib/emscripten/emtests/test_exceptions_refcount.wasm index e3876ae6a0b..2fd86c1d5d1 100644 Binary files a/lib/emscripten/emtests/test_exceptions_refcount.wasm and b/lib/emscripten/emtests/test_exceptions_refcount.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_resume.wasm b/lib/emscripten/emtests/test_exceptions_resume.wasm index 7fe8366d1d0..c0564c6ea12 100644 Binary files a/lib/emscripten/emtests/test_exceptions_resume.wasm and b/lib/emscripten/emtests/test_exceptions_resume.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_rethrow.wasm b/lib/emscripten/emtests/test_exceptions_rethrow.wasm index b528620c4bb..ff3a1025f03 100644 Binary files a/lib/emscripten/emtests/test_exceptions_rethrow.wasm and b/lib/emscripten/emtests/test_exceptions_rethrow.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_simplify_cfg.wasm b/lib/emscripten/emtests/test_exceptions_simplify_cfg.wasm index 72b2ce843bd..39122af4287 100644 Binary files a/lib/emscripten/emtests/test_exceptions_simplify_cfg.wasm and b/lib/emscripten/emtests/test_exceptions_simplify_cfg.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_std.wasm b/lib/emscripten/emtests/test_exceptions_std.wasm index 4d1de92dc2b..2415458b08e 100644 Binary files a/lib/emscripten/emtests/test_exceptions_std.wasm and b/lib/emscripten/emtests/test_exceptions_std.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_virtual_inheritance.wasm b/lib/emscripten/emtests/test_exceptions_virtual_inheritance.wasm index d984fc85999..6d376d59884 100644 Binary files a/lib/emscripten/emtests/test_exceptions_virtual_inheritance.wasm and b/lib/emscripten/emtests/test_exceptions_virtual_inheritance.wasm differ diff --git a/lib/emscripten/emtests/test_exceptions_white_list.wasm b/lib/emscripten/emtests/test_exceptions_white_list.wasm index a376143f810..346bd9d6971 100644 Binary files a/lib/emscripten/emtests/test_exceptions_white_list.wasm and b/lib/emscripten/emtests/test_exceptions_white_list.wasm differ diff --git a/lib/emscripten/emtests/test_fast_math.wasm b/lib/emscripten/emtests/test_fast_math.wasm index d447858244d..efbae458cf9 100644 Binary files a/lib/emscripten/emtests/test_fast_math.wasm and b/lib/emscripten/emtests/test_fast_math.wasm differ diff --git a/lib/emscripten/emtests/test_flexarray_struct.wasm b/lib/emscripten/emtests/test_flexarray_struct.wasm index c1ea8478d5b..dfaf36ac1ae 100644 Binary files a/lib/emscripten/emtests/test_flexarray_struct.wasm and b/lib/emscripten/emtests/test_flexarray_struct.wasm differ diff --git a/lib/emscripten/emtests/test_float32_precise.wasm b/lib/emscripten/emtests/test_float32_precise.wasm index 99654449cce..7e5a512f46f 100644 Binary files a/lib/emscripten/emtests/test_float32_precise.wasm and b/lib/emscripten/emtests/test_float32_precise.wasm differ diff --git a/lib/emscripten/emtests/test_float_builtins.wasm b/lib/emscripten/emtests/test_float_builtins.wasm index ce0eb52d221..8734671beba 100644 Binary files a/lib/emscripten/emtests/test_float_builtins.wasm and b/lib/emscripten/emtests/test_float_builtins.wasm differ diff --git a/lib/emscripten/emtests/test_frexp.wasm b/lib/emscripten/emtests/test_frexp.wasm index 402260c57e3..44632cf1b5c 100644 Binary files a/lib/emscripten/emtests/test_frexp.wasm and b/lib/emscripten/emtests/test_frexp.wasm differ diff --git a/lib/emscripten/emtests/test_funcptr.wasm b/lib/emscripten/emtests/test_funcptr.wasm index 6ea033f1fd9..4b0ad5aaa6b 100644 Binary files a/lib/emscripten/emtests/test_funcptr.wasm and b/lib/emscripten/emtests/test_funcptr.wasm differ diff --git a/lib/emscripten/emtests/test_funcptr_namecollide.wasm b/lib/emscripten/emtests/test_funcptr_namecollide.wasm index cf4fe2ed613..b58125071be 100644 Binary files a/lib/emscripten/emtests/test_funcptr_namecollide.wasm and b/lib/emscripten/emtests/test_funcptr_namecollide.wasm differ diff --git a/lib/emscripten/emtests/test_funcptrfunc.wasm b/lib/emscripten/emtests/test_funcptrfunc.wasm index a536d7c2377..2c7a06a755f 100644 Binary files a/lib/emscripten/emtests/test_funcptrfunc.wasm and b/lib/emscripten/emtests/test_funcptrfunc.wasm differ diff --git a/lib/emscripten/emtests/test_funcs.wasm b/lib/emscripten/emtests/test_funcs.wasm index 653106f3c61..81f969a1fc3 100644 Binary files a/lib/emscripten/emtests/test_funcs.wasm and b/lib/emscripten/emtests/test_funcs.wasm differ diff --git a/lib/emscripten/emtests/test_functionpointer_libfunc_varargs.wasm b/lib/emscripten/emtests/test_functionpointer_libfunc_varargs.wasm index a90faac40ee..bf7ca7df1e9 100644 Binary files a/lib/emscripten/emtests/test_functionpointer_libfunc_varargs.wasm and b/lib/emscripten/emtests/test_functionpointer_libfunc_varargs.wasm differ diff --git a/lib/emscripten/emtests/test_fwrite_0.wasm b/lib/emscripten/emtests/test_fwrite_0.wasm index 743966f75fb..7317966738e 100644 Binary files a/lib/emscripten/emtests/test_fwrite_0.wasm and b/lib/emscripten/emtests/test_fwrite_0.wasm differ diff --git a/lib/emscripten/emtests/test_getgep.wasm b/lib/emscripten/emtests/test_getgep.wasm index 7fab765ec47..ff3c899d334 100644 Binary files a/lib/emscripten/emtests/test_getgep.wasm and b/lib/emscripten/emtests/test_getgep.wasm differ diff --git a/lib/emscripten/emtests/test_getloadavg.wasm b/lib/emscripten/emtests/test_getloadavg.wasm index ddc4db07ead..cce9f01f534 100644 Binary files a/lib/emscripten/emtests/test_getloadavg.wasm and b/lib/emscripten/emtests/test_getloadavg.wasm differ diff --git a/lib/emscripten/emtests/test_getopt.wasm b/lib/emscripten/emtests/test_getopt.wasm index 674f00335da..025bd912f75 100644 Binary files a/lib/emscripten/emtests/test_getopt.wasm and b/lib/emscripten/emtests/test_getopt.wasm differ diff --git a/lib/emscripten/emtests/test_getopt_long.wasm b/lib/emscripten/emtests/test_getopt_long.wasm index c30c89b3696..3b703125172 100644 Binary files a/lib/emscripten/emtests/test_getopt_long.wasm and b/lib/emscripten/emtests/test_getopt_long.wasm differ diff --git a/lib/emscripten/emtests/test_globaldoubles.wasm b/lib/emscripten/emtests/test_globaldoubles.wasm index 45d14c5c708..0da31aed82f 100644 Binary files a/lib/emscripten/emtests/test_globaldoubles.wasm and b/lib/emscripten/emtests/test_globaldoubles.wasm differ diff --git a/lib/emscripten/emtests/test_globals.wasm b/lib/emscripten/emtests/test_globals.wasm index a1d0fe01017..e36fa05164c 100644 Binary files a/lib/emscripten/emtests/test_globals.wasm and b/lib/emscripten/emtests/test_globals.wasm differ diff --git a/lib/emscripten/emtests/test_gmtime.wasm b/lib/emscripten/emtests/test_gmtime.wasm index 5c8736f9cad..93032ac35ab 100644 Binary files a/lib/emscripten/emtests/test_gmtime.wasm and b/lib/emscripten/emtests/test_gmtime.wasm differ diff --git a/lib/emscripten/emtests/test_hello_world.wasm b/lib/emscripten/emtests/test_hello_world.wasm index f0254d74331..2898d1d8e48 100644 Binary files a/lib/emscripten/emtests/test_hello_world.wasm and b/lib/emscripten/emtests/test_hello_world.wasm differ diff --git a/lib/emscripten/emtests/test_i16_emcc_intrinsic.wasm b/lib/emscripten/emtests/test_i16_emcc_intrinsic.wasm index da792700013..ddc191ccf09 100644 Binary files a/lib/emscripten/emtests/test_i16_emcc_intrinsic.wasm and b/lib/emscripten/emtests/test_i16_emcc_intrinsic.wasm differ diff --git a/lib/emscripten/emtests/test_i32_mul_precise.wasm b/lib/emscripten/emtests/test_i32_mul_precise.wasm index 8b23cf534ee..ab7d9a5d3e9 100644 Binary files a/lib/emscripten/emtests/test_i32_mul_precise.wasm and b/lib/emscripten/emtests/test_i32_mul_precise.wasm differ diff --git a/lib/emscripten/emtests/test_i64.wasm b/lib/emscripten/emtests/test_i64.wasm index 4efffd06802..5a0ced60d5f 100644 Binary files a/lib/emscripten/emtests/test_i64.wasm and b/lib/emscripten/emtests/test_i64.wasm differ diff --git a/lib/emscripten/emtests/test_i64_4.wasm b/lib/emscripten/emtests/test_i64_4.wasm index c87b72defd4..4622fb24bb3 100644 Binary files a/lib/emscripten/emtests/test_i64_4.wasm and b/lib/emscripten/emtests/test_i64_4.wasm differ diff --git a/lib/emscripten/emtests/test_i64_7z.wasm b/lib/emscripten/emtests/test_i64_7z.wasm index 6685749b201..60498708b68 100644 Binary files a/lib/emscripten/emtests/test_i64_7z.wasm and b/lib/emscripten/emtests/test_i64_7z.wasm differ diff --git a/lib/emscripten/emtests/test_i64_cmp2.wasm b/lib/emscripten/emtests/test_i64_cmp2.wasm index 80f8591b68a..c15965948e9 100644 Binary files a/lib/emscripten/emtests/test_i64_cmp2.wasm and b/lib/emscripten/emtests/test_i64_cmp2.wasm differ diff --git a/lib/emscripten/emtests/test_i64_i16.wasm b/lib/emscripten/emtests/test_i64_i16.wasm index f2b5179685f..7a627eb2fdf 100644 Binary files a/lib/emscripten/emtests/test_i64_i16.wasm and b/lib/emscripten/emtests/test_i64_i16.wasm differ diff --git a/lib/emscripten/emtests/test_i64_llabs.wasm b/lib/emscripten/emtests/test_i64_llabs.wasm index d97b3be74a5..bfeb4cd4db6 100644 Binary files a/lib/emscripten/emtests/test_i64_llabs.wasm and b/lib/emscripten/emtests/test_i64_llabs.wasm differ diff --git a/lib/emscripten/emtests/test_i64_precise.wasm b/lib/emscripten/emtests/test_i64_precise.wasm index b13dd72e2d3..0b203d96af5 100644 Binary files a/lib/emscripten/emtests/test_i64_precise.wasm and b/lib/emscripten/emtests/test_i64_precise.wasm differ diff --git a/lib/emscripten/emtests/test_i64_precise_needed.wasm b/lib/emscripten/emtests/test_i64_precise_needed.wasm index 74f4fd7604c..255aa6efd9c 100644 Binary files a/lib/emscripten/emtests/test_i64_precise_needed.wasm and b/lib/emscripten/emtests/test_i64_precise_needed.wasm differ diff --git a/lib/emscripten/emtests/test_i64_precise_unneeded.wasm b/lib/emscripten/emtests/test_i64_precise_unneeded.wasm index 97db9c75e5a..70d8a469fe6 100644 Binary files a/lib/emscripten/emtests/test_i64_precise_unneeded.wasm and b/lib/emscripten/emtests/test_i64_precise_unneeded.wasm differ diff --git a/lib/emscripten/emtests/test_i64_qdouble.wasm b/lib/emscripten/emtests/test_i64_qdouble.wasm index af01fdac730..2312bdfc638 100644 Binary files a/lib/emscripten/emtests/test_i64_qdouble.wasm and b/lib/emscripten/emtests/test_i64_qdouble.wasm differ diff --git a/lib/emscripten/emtests/test_i64_umul.wasm b/lib/emscripten/emtests/test_i64_umul.wasm index ed0dfd5f6dc..fc936deb1d1 100644 Binary files a/lib/emscripten/emtests/test_i64_umul.wasm and b/lib/emscripten/emtests/test_i64_umul.wasm differ diff --git a/lib/emscripten/emtests/test_i64_varargs.wasm b/lib/emscripten/emtests/test_i64_varargs.wasm index 2b1bf9567cd..5a937850a66 100644 Binary files a/lib/emscripten/emtests/test_i64_varargs.wasm and b/lib/emscripten/emtests/test_i64_varargs.wasm differ diff --git a/lib/emscripten/emtests/test_i64_zextneg.wasm b/lib/emscripten/emtests/test_i64_zextneg.wasm index e7072ede976..0b322d33ad1 100644 Binary files a/lib/emscripten/emtests/test_i64_zextneg.wasm and b/lib/emscripten/emtests/test_i64_zextneg.wasm differ diff --git a/lib/emscripten/emtests/test_if.wasm b/lib/emscripten/emtests/test_if.wasm index 35c2dce9f6a..1363ac90563 100644 Binary files a/lib/emscripten/emtests/test_if.wasm and b/lib/emscripten/emtests/test_if.wasm differ diff --git a/lib/emscripten/emtests/test_if_else.wasm b/lib/emscripten/emtests/test_if_else.wasm index 218dcfa1b99..4cf4d816d1a 100644 Binary files a/lib/emscripten/emtests/test_if_else.wasm and b/lib/emscripten/emtests/test_if_else.wasm differ diff --git a/lib/emscripten/emtests/test_indirectbr.wasm b/lib/emscripten/emtests/test_indirectbr.wasm index 38a98b0d7d8..ead37257e0d 100644 Binary files a/lib/emscripten/emtests/test_indirectbr.wasm and b/lib/emscripten/emtests/test_indirectbr.wasm differ diff --git a/lib/emscripten/emtests/test_indirectbr_many.wasm b/lib/emscripten/emtests/test_indirectbr_many.wasm index 52d9bf1bac5..0b45da62a30 100644 Binary files a/lib/emscripten/emtests/test_indirectbr_many.wasm and b/lib/emscripten/emtests/test_indirectbr_many.wasm differ diff --git a/lib/emscripten/emtests/test_intentional_fault.wasm b/lib/emscripten/emtests/test_intentional_fault.wasm index 52100daa127..0847ebc061e 100644 Binary files a/lib/emscripten/emtests/test_intentional_fault.wasm and b/lib/emscripten/emtests/test_intentional_fault.wasm differ diff --git a/lib/emscripten/emtests/test_isnan.wasm b/lib/emscripten/emtests/test_isnan.wasm index b2372094a3e..cd5817ebb6e 100644 Binary files a/lib/emscripten/emtests/test_isnan.wasm and b/lib/emscripten/emtests/test_isnan.wasm differ diff --git a/lib/emscripten/emtests/test_libcextra.wasm b/lib/emscripten/emtests/test_libcextra.wasm index 94e3bbd365d..e130a879d46 100644 Binary files a/lib/emscripten/emtests/test_libcextra.wasm and b/lib/emscripten/emtests/test_libcextra.wasm differ diff --git a/lib/emscripten/emtests/test_libgen.wasm b/lib/emscripten/emtests/test_libgen.wasm index f444d6f6bff..547f5101750 100644 Binary files a/lib/emscripten/emtests/test_libgen.wasm and b/lib/emscripten/emtests/test_libgen.wasm differ diff --git a/lib/emscripten/emtests/test_literal_negative_zero.wasm b/lib/emscripten/emtests/test_literal_negative_zero.wasm index 5729ab2bd99..df965adf2f5 100644 Binary files a/lib/emscripten/emtests/test_literal_negative_zero.wasm and b/lib/emscripten/emtests/test_literal_negative_zero.wasm differ diff --git a/lib/emscripten/emtests/test_llrint.wasm b/lib/emscripten/emtests/test_llrint.wasm index 4784e2bd8db..ea04c0e10a7 100644 Binary files a/lib/emscripten/emtests/test_llrint.wasm and b/lib/emscripten/emtests/test_llrint.wasm differ diff --git a/lib/emscripten/emtests/test_llvm_fabs.wasm b/lib/emscripten/emtests/test_llvm_fabs.wasm index a8fafb48c0e..6a656b36018 100644 Binary files a/lib/emscripten/emtests/test_llvm_fabs.wasm and b/lib/emscripten/emtests/test_llvm_fabs.wasm differ diff --git a/lib/emscripten/emtests/test_llvm_intrinsics.wasm b/lib/emscripten/emtests/test_llvm_intrinsics.wasm index 1eb8441d8e5..0261df971dd 100644 Binary files a/lib/emscripten/emtests/test_llvm_intrinsics.wasm and b/lib/emscripten/emtests/test_llvm_intrinsics.wasm differ diff --git a/lib/emscripten/emtests/test_llvmswitch.wasm b/lib/emscripten/emtests/test_llvmswitch.wasm index 9966cf2205e..98a9135e99f 100644 Binary files a/lib/emscripten/emtests/test_llvmswitch.wasm and b/lib/emscripten/emtests/test_llvmswitch.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp.wasm b/lib/emscripten/emtests/test_longjmp.wasm index a34adcd2c51..d616a89d073 100644 Binary files a/lib/emscripten/emtests/test_longjmp.wasm and b/lib/emscripten/emtests/test_longjmp.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp2.wasm b/lib/emscripten/emtests/test_longjmp2.wasm index 78cd20e749d..e7c3fcf9820 100644 Binary files a/lib/emscripten/emtests/test_longjmp2.wasm and b/lib/emscripten/emtests/test_longjmp2.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp3.wasm b/lib/emscripten/emtests/test_longjmp3.wasm index 519adc53b9b..160aa0cfd17 100644 Binary files a/lib/emscripten/emtests/test_longjmp3.wasm and b/lib/emscripten/emtests/test_longjmp3.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp4.wasm b/lib/emscripten/emtests/test_longjmp4.wasm index 87efd3a02f7..cd296ac01ba 100644 Binary files a/lib/emscripten/emtests/test_longjmp4.wasm and b/lib/emscripten/emtests/test_longjmp4.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp_exc.wasm b/lib/emscripten/emtests/test_longjmp_exc.wasm index 6ee493a5989..f901e34cab7 100644 Binary files a/lib/emscripten/emtests/test_longjmp_exc.wasm and b/lib/emscripten/emtests/test_longjmp_exc.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp_funcptr.wasm b/lib/emscripten/emtests/test_longjmp_funcptr.wasm index b7669987915..8c9b1015ccb 100644 Binary files a/lib/emscripten/emtests/test_longjmp_funcptr.wasm and b/lib/emscripten/emtests/test_longjmp_funcptr.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp_repeat.wasm b/lib/emscripten/emtests/test_longjmp_repeat.wasm index 27419d80e7d..2d92be64c3b 100644 Binary files a/lib/emscripten/emtests/test_longjmp_repeat.wasm and b/lib/emscripten/emtests/test_longjmp_repeat.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp_stacked.wasm b/lib/emscripten/emtests/test_longjmp_stacked.wasm index 21645b31c14..ed768c814cd 100644 Binary files a/lib/emscripten/emtests/test_longjmp_stacked.wasm and b/lib/emscripten/emtests/test_longjmp_stacked.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp_throw.wasm b/lib/emscripten/emtests/test_longjmp_throw.wasm index 4cb6e05a6d5..4ba7ac0fbfe 100644 Binary files a/lib/emscripten/emtests/test_longjmp_throw.wasm and b/lib/emscripten/emtests/test_longjmp_throw.wasm differ diff --git a/lib/emscripten/emtests/test_longjmp_unwind.wasm b/lib/emscripten/emtests/test_longjmp_unwind.wasm index 219c20777f6..a65f578cee1 100644 Binary files a/lib/emscripten/emtests/test_longjmp_unwind.wasm and b/lib/emscripten/emtests/test_longjmp_unwind.wasm differ diff --git a/lib/emscripten/emtests/test_loop.wasm b/lib/emscripten/emtests/test_loop.wasm index b1d7090cfeb..976f6c965f7 100644 Binary files a/lib/emscripten/emtests/test_loop.wasm and b/lib/emscripten/emtests/test_loop.wasm differ diff --git a/lib/emscripten/emtests/test_lower_intrinsics.wasm b/lib/emscripten/emtests/test_lower_intrinsics.wasm index d9f919b159f..8cd046a4639 100644 Binary files a/lib/emscripten/emtests/test_lower_intrinsics.wasm and b/lib/emscripten/emtests/test_lower_intrinsics.wasm differ diff --git a/lib/emscripten/emtests/test_main_module_static_align.wasm b/lib/emscripten/emtests/test_main_module_static_align.wasm index 09f107bbfa6..786b9c93a1c 100644 Binary files a/lib/emscripten/emtests/test_main_module_static_align.wasm and b/lib/emscripten/emtests/test_main_module_static_align.wasm differ diff --git a/lib/emscripten/emtests/test_main_thread_async_em_asm.wasm b/lib/emscripten/emtests/test_main_thread_async_em_asm.wasm index 9bd6baf28fa..68db09f1d49 100644 Binary files a/lib/emscripten/emtests/test_main_thread_async_em_asm.wasm and b/lib/emscripten/emtests/test_main_thread_async_em_asm.wasm differ diff --git a/lib/emscripten/emtests/test_mainenv.wasm b/lib/emscripten/emtests/test_mainenv.wasm index 79d3de95a16..9385f5ab9bc 100644 Binary files a/lib/emscripten/emtests/test_mainenv.wasm and b/lib/emscripten/emtests/test_mainenv.wasm differ diff --git a/lib/emscripten/emtests/test_mathfuncptr.wasm b/lib/emscripten/emtests/test_mathfuncptr.wasm index 0b589a7e62a..6942507fb32 100644 Binary files a/lib/emscripten/emtests/test_mathfuncptr.wasm and b/lib/emscripten/emtests/test_mathfuncptr.wasm differ diff --git a/lib/emscripten/emtests/test_memcpy2.wasm b/lib/emscripten/emtests/test_memcpy2.wasm index 38085d4730c..84eb5e87aba 100644 Binary files a/lib/emscripten/emtests/test_memcpy2.wasm and b/lib/emscripten/emtests/test_memcpy2.wasm differ diff --git a/lib/emscripten/emtests/test_memcpy3.wasm b/lib/emscripten/emtests/test_memcpy3.wasm index 86019187f95..f2d5212be85 100644 Binary files a/lib/emscripten/emtests/test_memcpy3.wasm and b/lib/emscripten/emtests/test_memcpy3.wasm differ diff --git a/lib/emscripten/emtests/test_memcpy_memcmp.wasm b/lib/emscripten/emtests/test_memcpy_memcmp.wasm index 076fb1b026e..ed5be2c5120 100644 Binary files a/lib/emscripten/emtests/test_memcpy_memcmp.wasm and b/lib/emscripten/emtests/test_memcpy_memcmp.wasm differ diff --git a/lib/emscripten/emtests/test_memmove.wasm b/lib/emscripten/emtests/test_memmove.wasm index 6fd995f3dd5..a50bd5c8a28 100644 Binary files a/lib/emscripten/emtests/test_memmove.wasm and b/lib/emscripten/emtests/test_memmove.wasm differ diff --git a/lib/emscripten/emtests/test_memmove2.wasm b/lib/emscripten/emtests/test_memmove2.wasm index ff460adeb1e..a7aabf8677e 100644 Binary files a/lib/emscripten/emtests/test_memmove2.wasm and b/lib/emscripten/emtests/test_memmove2.wasm differ diff --git a/lib/emscripten/emtests/test_memmove3.wasm b/lib/emscripten/emtests/test_memmove3.wasm index a50bc29d5b4..6da6c09288f 100644 Binary files a/lib/emscripten/emtests/test_memmove3.wasm and b/lib/emscripten/emtests/test_memmove3.wasm differ diff --git a/lib/emscripten/emtests/test_memorygrowth.wasm b/lib/emscripten/emtests/test_memorygrowth.wasm index e9a9d5b3b11..e0d5e924252 100644 Binary files a/lib/emscripten/emtests/test_memorygrowth.wasm and b/lib/emscripten/emtests/test_memorygrowth.wasm differ diff --git a/lib/emscripten/emtests/test_memorygrowth_2.wasm b/lib/emscripten/emtests/test_memorygrowth_2.wasm index 2d9955bf533..138953fc31c 100644 Binary files a/lib/emscripten/emtests/test_memorygrowth_2.wasm and b/lib/emscripten/emtests/test_memorygrowth_2.wasm differ diff --git a/lib/emscripten/emtests/test_memorygrowth_3.wasm b/lib/emscripten/emtests/test_memorygrowth_3.wasm index b37ca7a2663..d3571b2c6f1 100644 Binary files a/lib/emscripten/emtests/test_memorygrowth_3.wasm and b/lib/emscripten/emtests/test_memorygrowth_3.wasm differ diff --git a/lib/emscripten/emtests/test_memorygrowth_wasm_mem_max.wasm b/lib/emscripten/emtests/test_memorygrowth_wasm_mem_max.wasm index 9587238a2f3..2f62b2a4edf 100644 Binary files a/lib/emscripten/emtests/test_memorygrowth_wasm_mem_max.wasm and b/lib/emscripten/emtests/test_memorygrowth_wasm_mem_max.wasm differ diff --git a/lib/emscripten/emtests/test_memset.wasm b/lib/emscripten/emtests/test_memset.wasm index f1a907bf603..5ef44eaea4f 100644 Binary files a/lib/emscripten/emtests/test_memset.wasm and b/lib/emscripten/emtests/test_memset.wasm differ diff --git a/lib/emscripten/emtests/test_mmap.wasm b/lib/emscripten/emtests/test_mmap.wasm index 7bb65037620..4f9395d72b7 100644 Binary files a/lib/emscripten/emtests/test_mmap.wasm and b/lib/emscripten/emtests/test_mmap.wasm differ diff --git a/lib/emscripten/emtests/test_negative_zero.wasm b/lib/emscripten/emtests/test_negative_zero.wasm index 25b6001506a..bdd0e80d8d5 100644 Binary files a/lib/emscripten/emtests/test_negative_zero.wasm and b/lib/emscripten/emtests/test_negative_zero.wasm differ diff --git a/lib/emscripten/emtests/test_nested_struct_varargs.wasm b/lib/emscripten/emtests/test_nested_struct_varargs.wasm index ad58548f971..0dbf108ad5f 100644 Binary files a/lib/emscripten/emtests/test_nested_struct_varargs.wasm and b/lib/emscripten/emtests/test_nested_struct_varargs.wasm differ diff --git a/lib/emscripten/emtests/test_nl_types.wasm b/lib/emscripten/emtests/test_nl_types.wasm index 6754a6f0916..669796b9635 100644 Binary files a/lib/emscripten/emtests/test_nl_types.wasm and b/lib/emscripten/emtests/test_nl_types.wasm differ diff --git a/lib/emscripten/emtests/test_perrar.wasm b/lib/emscripten/emtests/test_perrar.wasm index 4df7353bcd2..d94df231337 100644 Binary files a/lib/emscripten/emtests/test_perrar.wasm and b/lib/emscripten/emtests/test_perrar.wasm differ diff --git a/lib/emscripten/emtests/test_phiundef.wasm b/lib/emscripten/emtests/test_phiundef.wasm index cdf2ceaf504..cad15db8f87 100644 Binary files a/lib/emscripten/emtests/test_phiundef.wasm and b/lib/emscripten/emtests/test_phiundef.wasm differ diff --git a/lib/emscripten/emtests/test_poll.wasm b/lib/emscripten/emtests/test_poll.wasm index 4805800651c..8ffdc04e829 100644 Binary files a/lib/emscripten/emtests/test_poll.wasm and b/lib/emscripten/emtests/test_poll.wasm differ diff --git a/lib/emscripten/emtests/test_posixtime.wasm b/lib/emscripten/emtests/test_posixtime.wasm index df3392fb1fd..a7a455af3aa 100644 Binary files a/lib/emscripten/emtests/test_posixtime.wasm and b/lib/emscripten/emtests/test_posixtime.wasm differ diff --git a/lib/emscripten/emtests/test_printf_2.wasm b/lib/emscripten/emtests/test_printf_2.wasm index 000bd448918..839d8a3ef30 100644 Binary files a/lib/emscripten/emtests/test_printf_2.wasm and b/lib/emscripten/emtests/test_printf_2.wasm differ diff --git a/lib/emscripten/emtests/test_printf_more.wasm b/lib/emscripten/emtests/test_printf_more.wasm index 5bc1b3d1d41..8dec5a6f8d9 100644 Binary files a/lib/emscripten/emtests/test_printf_more.wasm and b/lib/emscripten/emtests/test_printf_more.wasm differ diff --git a/lib/emscripten/emtests/test_regex.wasm b/lib/emscripten/emtests/test_regex.wasm index 32735a4dc5c..3f9fa0901ba 100644 Binary files a/lib/emscripten/emtests/test_regex.wasm and b/lib/emscripten/emtests/test_regex.wasm differ diff --git a/lib/emscripten/emtests/test_relocatable_void_function.wasm b/lib/emscripten/emtests/test_relocatable_void_function.wasm index aab5206a143..db5e5eefc36 100644 Binary files a/lib/emscripten/emtests/test_relocatable_void_function.wasm and b/lib/emscripten/emtests/test_relocatable_void_function.wasm differ diff --git a/lib/emscripten/emtests/test_rounding.wasm b/lib/emscripten/emtests/test_rounding.wasm index 050f2db67e7..20dd299ba98 100644 Binary files a/lib/emscripten/emtests/test_rounding.wasm and b/lib/emscripten/emtests/test_rounding.wasm differ diff --git a/lib/emscripten/emtests/test_runtime_stacksave.wasm b/lib/emscripten/emtests/test_runtime_stacksave.wasm index 5afe815a432..8f7a420737f 100644 Binary files a/lib/emscripten/emtests/test_runtime_stacksave.wasm and b/lib/emscripten/emtests/test_runtime_stacksave.wasm differ diff --git a/lib/emscripten/emtests/test_set_align.wasm b/lib/emscripten/emtests/test_set_align.wasm index 8cd2c3d7ea1..4255623cdbc 100644 Binary files a/lib/emscripten/emtests/test_set_align.wasm and b/lib/emscripten/emtests/test_set_align.wasm differ diff --git a/lib/emscripten/emtests/test_siglongjmp.wasm b/lib/emscripten/emtests/test_siglongjmp.wasm index 5085f747a24..5b6e13c7b91 100644 Binary files a/lib/emscripten/emtests/test_siglongjmp.wasm and b/lib/emscripten/emtests/test_siglongjmp.wasm differ diff --git a/lib/emscripten/emtests/test_sintvars.wasm b/lib/emscripten/emtests/test_sintvars.wasm index d95f735c0ae..85c55ec59df 100644 Binary files a/lib/emscripten/emtests/test_sintvars.wasm and b/lib/emscripten/emtests/test_sintvars.wasm differ diff --git a/lib/emscripten/emtests/test_sizeof.wasm b/lib/emscripten/emtests/test_sizeof.wasm index 7826daca1cf..796e7053b71 100644 Binary files a/lib/emscripten/emtests/test_sizeof.wasm and b/lib/emscripten/emtests/test_sizeof.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf.wasm b/lib/emscripten/emtests/test_sscanf.wasm index 64bc72f9b47..caab61961e5 100644 Binary files a/lib/emscripten/emtests/test_sscanf.wasm and b/lib/emscripten/emtests/test_sscanf.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_3.wasm b/lib/emscripten/emtests/test_sscanf_3.wasm index aaf6940c5b4..a2b079166b0 100644 Binary files a/lib/emscripten/emtests/test_sscanf_3.wasm and b/lib/emscripten/emtests/test_sscanf_3.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_4.wasm b/lib/emscripten/emtests/test_sscanf_4.wasm index e19b937d0ea..e01c5db9783 100644 Binary files a/lib/emscripten/emtests/test_sscanf_4.wasm and b/lib/emscripten/emtests/test_sscanf_4.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_5.wasm b/lib/emscripten/emtests/test_sscanf_5.wasm index ff2ea0d6fae..4e47c5ea479 100644 Binary files a/lib/emscripten/emtests/test_sscanf_5.wasm and b/lib/emscripten/emtests/test_sscanf_5.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_6.wasm b/lib/emscripten/emtests/test_sscanf_6.wasm index 37c7583fb55..5adcee63e5c 100644 Binary files a/lib/emscripten/emtests/test_sscanf_6.wasm and b/lib/emscripten/emtests/test_sscanf_6.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_caps.wasm b/lib/emscripten/emtests/test_sscanf_caps.wasm index c909033f39d..d107a18f8bb 100644 Binary files a/lib/emscripten/emtests/test_sscanf_caps.wasm and b/lib/emscripten/emtests/test_sscanf_caps.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_float.wasm b/lib/emscripten/emtests/test_sscanf_float.wasm index 5807d73d64b..3bde6bce1f5 100644 Binary files a/lib/emscripten/emtests/test_sscanf_float.wasm and b/lib/emscripten/emtests/test_sscanf_float.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_hex.wasm b/lib/emscripten/emtests/test_sscanf_hex.wasm index 338c0ace327..a3c8fd7cbff 100644 Binary files a/lib/emscripten/emtests/test_sscanf_hex.wasm and b/lib/emscripten/emtests/test_sscanf_hex.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_n.wasm b/lib/emscripten/emtests/test_sscanf_n.wasm index e5dc001d698..be7e6d8eef6 100644 Binary files a/lib/emscripten/emtests/test_sscanf_n.wasm and b/lib/emscripten/emtests/test_sscanf_n.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_other_whitespace.wasm b/lib/emscripten/emtests/test_sscanf_other_whitespace.wasm index 31015310aad..8c511d06773 100644 Binary files a/lib/emscripten/emtests/test_sscanf_other_whitespace.wasm and b/lib/emscripten/emtests/test_sscanf_other_whitespace.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_skip.wasm b/lib/emscripten/emtests/test_sscanf_skip.wasm index 0fb1dac6122..df88b1995c6 100644 Binary files a/lib/emscripten/emtests/test_sscanf_skip.wasm and b/lib/emscripten/emtests/test_sscanf_skip.wasm differ diff --git a/lib/emscripten/emtests/test_sscanf_whitespace.wasm b/lib/emscripten/emtests/test_sscanf_whitespace.wasm index 19118832c20..cb1b462b21b 100644 Binary files a/lib/emscripten/emtests/test_sscanf_whitespace.wasm and b/lib/emscripten/emtests/test_sscanf_whitespace.wasm differ diff --git a/lib/emscripten/emtests/test_stack_align.wasm b/lib/emscripten/emtests/test_stack_align.wasm index a120d6f1103..10172e1a8e6 100644 Binary files a/lib/emscripten/emtests/test_stack_align.wasm and b/lib/emscripten/emtests/test_stack_align.wasm differ diff --git a/lib/emscripten/emtests/test_stack_varargs.wasm b/lib/emscripten/emtests/test_stack_varargs.wasm index 309f838f815..c726a6a3c2b 100644 Binary files a/lib/emscripten/emtests/test_stack_varargs.wasm and b/lib/emscripten/emtests/test_stack_varargs.wasm differ diff --git a/lib/emscripten/emtests/test_stack_void.wasm b/lib/emscripten/emtests/test_stack_void.wasm index 978b0607a28..3efc2573032 100644 Binary files a/lib/emscripten/emtests/test_stack_void.wasm and b/lib/emscripten/emtests/test_stack_void.wasm differ diff --git a/lib/emscripten/emtests/test_statvfs.wasm b/lib/emscripten/emtests/test_statvfs.wasm index ef002f4fdb4..175d0e1456b 100644 Binary files a/lib/emscripten/emtests/test_statvfs.wasm and b/lib/emscripten/emtests/test_statvfs.wasm differ diff --git a/lib/emscripten/emtests/test_std_cout_new.wasm b/lib/emscripten/emtests/test_std_cout_new.wasm index 8f322ee36cd..e05464c1dcd 100644 Binary files a/lib/emscripten/emtests/test_std_cout_new.wasm and b/lib/emscripten/emtests/test_std_cout_new.wasm differ diff --git a/lib/emscripten/emtests/test_strcasecmp.wasm b/lib/emscripten/emtests/test_strcasecmp.wasm index 8aca91e7a92..c1d8d2dd75f 100644 Binary files a/lib/emscripten/emtests/test_strcasecmp.wasm and b/lib/emscripten/emtests/test_strcasecmp.wasm differ diff --git a/lib/emscripten/emtests/test_strcmp_uni.wasm b/lib/emscripten/emtests/test_strcmp_uni.wasm index 0069da1a983..c070216d667 100644 Binary files a/lib/emscripten/emtests/test_strcmp_uni.wasm and b/lib/emscripten/emtests/test_strcmp_uni.wasm differ diff --git a/lib/emscripten/emtests/test_strftime.wasm b/lib/emscripten/emtests/test_strftime.wasm index 561f44349df..ea2687c7c3e 100644 Binary files a/lib/emscripten/emtests/test_strftime.wasm and b/lib/emscripten/emtests/test_strftime.wasm differ diff --git a/lib/emscripten/emtests/test_strings.wasm b/lib/emscripten/emtests/test_strings.wasm index 27f160b0fca..bc26ff0e4d7 100644 Binary files a/lib/emscripten/emtests/test_strings.wasm and b/lib/emscripten/emtests/test_strings.wasm differ diff --git a/lib/emscripten/emtests/test_strndup.wasm b/lib/emscripten/emtests/test_strndup.wasm index 3d032b1979c..2f7b39502de 100644 Binary files a/lib/emscripten/emtests/test_strndup.wasm and b/lib/emscripten/emtests/test_strndup.wasm differ diff --git a/lib/emscripten/emtests/test_strptime_days.wasm b/lib/emscripten/emtests/test_strptime_days.wasm index 86c51f93e59..988fa26413e 100644 Binary files a/lib/emscripten/emtests/test_strptime_days.wasm and b/lib/emscripten/emtests/test_strptime_days.wasm differ diff --git a/lib/emscripten/emtests/test_strptime_reentrant.wasm b/lib/emscripten/emtests/test_strptime_reentrant.wasm index 49716b6fa8f..24d08d7cf88 100644 Binary files a/lib/emscripten/emtests/test_strptime_reentrant.wasm and b/lib/emscripten/emtests/test_strptime_reentrant.wasm differ diff --git a/lib/emscripten/emtests/test_strstr.wasm b/lib/emscripten/emtests/test_strstr.wasm index 239a78b336f..1f9a363ae8d 100644 Binary files a/lib/emscripten/emtests/test_strstr.wasm and b/lib/emscripten/emtests/test_strstr.wasm differ diff --git a/lib/emscripten/emtests/test_strtod.wasm b/lib/emscripten/emtests/test_strtod.wasm index 3e349c2c652..34243695aa9 100644 Binary files a/lib/emscripten/emtests/test_strtod.wasm and b/lib/emscripten/emtests/test_strtod.wasm differ diff --git a/lib/emscripten/emtests/test_strtok.wasm b/lib/emscripten/emtests/test_strtok.wasm index aa7bef69285..30a7fb7a7fd 100644 Binary files a/lib/emscripten/emtests/test_strtok.wasm and b/lib/emscripten/emtests/test_strtok.wasm differ diff --git a/lib/emscripten/emtests/test_strtol_bin.wasm b/lib/emscripten/emtests/test_strtol_bin.wasm index a6d4248a0d4..e189c8d677b 100644 Binary files a/lib/emscripten/emtests/test_strtol_bin.wasm and b/lib/emscripten/emtests/test_strtol_bin.wasm differ diff --git a/lib/emscripten/emtests/test_strtol_dec.wasm b/lib/emscripten/emtests/test_strtol_dec.wasm index 9219a0b6cb9..071fb413088 100644 Binary files a/lib/emscripten/emtests/test_strtol_dec.wasm and b/lib/emscripten/emtests/test_strtol_dec.wasm differ diff --git a/lib/emscripten/emtests/test_strtol_hex.wasm b/lib/emscripten/emtests/test_strtol_hex.wasm index be2d48a0f98..546f42a9f74 100644 Binary files a/lib/emscripten/emtests/test_strtol_hex.wasm and b/lib/emscripten/emtests/test_strtol_hex.wasm differ diff --git a/lib/emscripten/emtests/test_strtol_oct.wasm b/lib/emscripten/emtests/test_strtol_oct.wasm index 52c00a59d68..4e5d3b97c43 100644 Binary files a/lib/emscripten/emtests/test_strtol_oct.wasm and b/lib/emscripten/emtests/test_strtol_oct.wasm differ diff --git a/lib/emscripten/emtests/test_strtold.wasm b/lib/emscripten/emtests/test_strtold.wasm index 38a2819f9cb..2d9da6204f4 100644 Binary files a/lib/emscripten/emtests/test_strtold.wasm and b/lib/emscripten/emtests/test_strtold.wasm differ diff --git a/lib/emscripten/emtests/test_strtoll_bin.wasm b/lib/emscripten/emtests/test_strtoll_bin.wasm index be521b0cf17..b2ee57309ac 100644 Binary files a/lib/emscripten/emtests/test_strtoll_bin.wasm and b/lib/emscripten/emtests/test_strtoll_bin.wasm differ diff --git a/lib/emscripten/emtests/test_strtoll_dec.wasm b/lib/emscripten/emtests/test_strtoll_dec.wasm index 36e22518aa5..8e0291c942a 100644 Binary files a/lib/emscripten/emtests/test_strtoll_dec.wasm and b/lib/emscripten/emtests/test_strtoll_dec.wasm differ diff --git a/lib/emscripten/emtests/test_strtoll_hex.wasm b/lib/emscripten/emtests/test_strtoll_hex.wasm index d85c91409cd..010f15b422c 100644 Binary files a/lib/emscripten/emtests/test_strtoll_hex.wasm and b/lib/emscripten/emtests/test_strtoll_hex.wasm differ diff --git a/lib/emscripten/emtests/test_strtoll_oct.wasm b/lib/emscripten/emtests/test_strtoll_oct.wasm index b577d59e347..f25d954e3ae 100644 Binary files a/lib/emscripten/emtests/test_strtoll_oct.wasm and b/lib/emscripten/emtests/test_strtoll_oct.wasm differ diff --git a/lib/emscripten/emtests/test_struct_varargs.wasm b/lib/emscripten/emtests/test_struct_varargs.wasm index 82667ab3edc..607530d4ea9 100644 Binary files a/lib/emscripten/emtests/test_struct_varargs.wasm and b/lib/emscripten/emtests/test_struct_varargs.wasm differ diff --git a/lib/emscripten/emtests/test_time_c.wasm b/lib/emscripten/emtests/test_time_c.wasm index 8003cc40159..263cedc6183 100644 Binary files a/lib/emscripten/emtests/test_time_c.wasm and b/lib/emscripten/emtests/test_time_c.wasm differ diff --git a/lib/emscripten/emtests/test_tracing.wasm b/lib/emscripten/emtests/test_tracing.wasm index 212bcf7ffe6..35d45a0ca35 100644 Binary files a/lib/emscripten/emtests/test_tracing.wasm and b/lib/emscripten/emtests/test_tracing.wasm differ diff --git a/lib/emscripten/emtests/test_transtrcase.wasm b/lib/emscripten/emtests/test_transtrcase.wasm index fc14fb98b32..fc54b2a415b 100644 Binary files a/lib/emscripten/emtests/test_transtrcase.wasm and b/lib/emscripten/emtests/test_transtrcase.wasm differ diff --git a/lib/emscripten/emtests/test_trickystring.wasm b/lib/emscripten/emtests/test_trickystring.wasm index def39a82483..99c45e80029 100644 Binary files a/lib/emscripten/emtests/test_trickystring.wasm and b/lib/emscripten/emtests/test_trickystring.wasm differ diff --git a/lib/emscripten/emtests/test_uname.wasm b/lib/emscripten/emtests/test_uname.wasm index 097a46649bd..c28801d39b0 100644 Binary files a/lib/emscripten/emtests/test_uname.wasm and b/lib/emscripten/emtests/test_uname.wasm differ diff --git a/lib/emscripten/emtests/test_unary_literal.wasm b/lib/emscripten/emtests/test_unary_literal.wasm index 14042277d5a..aa7695bfed0 100644 Binary files a/lib/emscripten/emtests/test_unary_literal.wasm and b/lib/emscripten/emtests/test_unary_literal.wasm differ diff --git a/lib/emscripten/emtests/test_utf.wasm b/lib/emscripten/emtests/test_utf.wasm index 92e6da9ab40..6e0f90770d2 100644 Binary files a/lib/emscripten/emtests/test_utf.wasm and b/lib/emscripten/emtests/test_utf.wasm differ diff --git a/lib/emscripten/emtests/test_varargs.wasm b/lib/emscripten/emtests/test_varargs.wasm index daf5c40aae5..f672fe8dc95 100644 Binary files a/lib/emscripten/emtests/test_varargs.wasm and b/lib/emscripten/emtests/test_varargs.wasm differ diff --git a/lib/emscripten/emtests/test_varargs_multi.wasm b/lib/emscripten/emtests/test_varargs_multi.wasm index 99e2b5b8670..d81b0a17616 100644 Binary files a/lib/emscripten/emtests/test_varargs_multi.wasm and b/lib/emscripten/emtests/test_varargs_multi.wasm differ diff --git a/lib/emscripten/emtests/test_vprintf.wasm b/lib/emscripten/emtests/test_vprintf.wasm index 0c2d4d46255..34391ea23aa 100644 Binary files a/lib/emscripten/emtests/test_vprintf.wasm and b/lib/emscripten/emtests/test_vprintf.wasm differ diff --git a/lib/emscripten/emtests/test_vsnprintf.wasm b/lib/emscripten/emtests/test_vsnprintf.wasm index dca3d57e4c8..22e33b19ac7 100644 Binary files a/lib/emscripten/emtests/test_vsnprintf.wasm and b/lib/emscripten/emtests/test_vsnprintf.wasm differ diff --git a/lib/emscripten/emtests/test_wprintf.wasm b/lib/emscripten/emtests/test_wprintf.wasm index 5914aa25d85..dbcd76f4cf9 100644 Binary files a/lib/emscripten/emtests/test_wprintf.wasm and b/lib/emscripten/emtests/test_wprintf.wasm differ diff --git a/lib/emscripten/emtests/test_write_stdout_fileno.wasm b/lib/emscripten/emtests/test_write_stdout_fileno.wasm index a12aab93f19..18aafd632fb 100644 Binary files a/lib/emscripten/emtests/test_write_stdout_fileno.wasm and b/lib/emscripten/emtests/test_write_stdout_fileno.wasm differ diff --git a/lib/emscripten/emtests/test_zero_multiplication.wasm b/lib/emscripten/emtests/test_zero_multiplication.wasm index bf8da640ab0..664643eeeff 100644 Binary files a/lib/emscripten/emtests/test_zero_multiplication.wasm and b/lib/emscripten/emtests/test_zero_multiplication.wasm differ diff --git a/lib/emscripten/emtests/test_zerodiv.wasm b/lib/emscripten/emtests/test_zerodiv.wasm index 7af5932ca3e..42f047cdab0 100644 Binary files a/lib/emscripten/emtests/test_zerodiv.wasm and b/lib/emscripten/emtests/test_zerodiv.wasm differ diff --git a/lib/emscripten/src/lib.rs b/lib/emscripten/src/lib.rs index df0a0da6c8f..3ed5c36dd47 100644 --- a/lib/emscripten/src/lib.rs +++ b/lib/emscripten/src/lib.rs @@ -1,6 +1,7 @@ #[macro_use] extern crate wasmer_runtime_core; +use lazy_static::lazy_static; use std::cell::UnsafeCell; use std::{f64, ffi::c_void}; use wasmer_runtime_core::{ @@ -11,11 +12,12 @@ use wasmer_runtime_core::{ import::ImportObject, imports, memory::Memory, + module::ImportName, table::Table, - types::{ElementType, MemoryDescriptor, TableDescriptor, Value}, + types::{ElementType, FuncSig, MemoryDescriptor, TableDescriptor, Type, Value}, units::Pages, vm::Ctx, - Func, Instance, Module, + Func, Instance, IsExport, Module, }; #[macro_use] @@ -56,6 +58,11 @@ const DYNAMICTOP_PTR_DIFF: u32 = 1088; // TODO: make this variable const STATIC_BUMP: u32 = 215_536; +lazy_static! { + static ref OLD_ABORT_ON_CANNOT_GROW_MEMORY_SIG: FuncSig = + { FuncSig::new(vec![], vec![Type::I32]) }; +} + // The address globals begin at. Very low in memory, for code size and optimization opportunities. // Above 0 is static memory, starting with globals. // Then the stack. @@ -187,6 +194,7 @@ pub struct EmscriptenGlobalsData { memory_base: u32, table_base: u32, temp_double_ptr: u32, + use_old_abort_on_cannot_grow_memory: bool, // Global namespace infinity: f64, @@ -205,6 +213,27 @@ pub struct EmscriptenGlobals { impl EmscriptenGlobals { pub fn new(module: &Module /*, static_bump: u32 */) -> Self { + let mut use_old_abort_on_cannot_grow_memory = false; + for ( + index, + ImportName { + namespace_index, + name_index, + }, + ) in &module.0.info.imported_functions + { + let namespace = module.0.info.namespace_table.get(*namespace_index); + let name = module.0.info.name_table.get(*name_index); + if name == "abortOnCannotGrowMemory" && namespace == "env" { + let sig_index = module.0.info.func_assoc[index.convert_up(&module.0)]; + let expected_sig = &module.0.info.signatures[sig_index]; + if **expected_sig == *OLD_ABORT_ON_CANNOT_GROW_MEMORY_SIG { + use_old_abort_on_cannot_grow_memory = true; + } + break; + } + } + let (table_min, table_max) = get_emscripten_table_size(&module); let (memory_min, memory_max) = get_emscripten_memory_size(&module); @@ -247,6 +276,7 @@ impl EmscriptenGlobals { memory_base, table_base, temp_double_ptr, + use_old_abort_on_cannot_grow_memory, infinity: std::f64::INFINITY, nan: std::f64::NAN, @@ -266,6 +296,12 @@ impl EmscriptenGlobals { } pub fn generate_emscripten_env(globals: &mut EmscriptenGlobals) -> ImportObject { + let abort_on_cannot_grow_memory_export = if globals.data.use_old_abort_on_cannot_grow_memory { + func!(crate::memory::abort_on_cannot_grow_memory_old).to_export() + } else { + func!(crate::memory::abort_on_cannot_grow_memory).to_export() + }; + imports! { "env" => { "memory" => Export::Memory(globals.memory.clone()), @@ -409,8 +445,10 @@ pub fn generate_emscripten_env(globals: &mut EmscriptenGlobals) -> ImportObject "_sigsuspend" => func!(crate::signal::_sigsuspend), // Memory - "abortOnCannotGrowMemory" => func!(crate::memory::abort_on_cannot_grow_memory), + "abortOnCannotGrowMemory" => abort_on_cannot_grow_memory_export, "_emscripten_memcpy_big" => func!(crate::memory::_emscripten_memcpy_big), + "_emscripten_get_heap_size" => func!(crate::memory::_emscripten_get_heap_size), + "_emscripten_resize_heap" => func!(crate::memory::_emscripten_resize_heap), "enlargeMemory" => func!(crate::memory::enlarge_memory), "getTotalMemory" => func!(crate::memory::get_total_memory), "___map_file" => func!(crate::memory::___map_file), diff --git a/lib/emscripten/src/memory.rs b/lib/emscripten/src/memory.rs index c4540dff08e..dcd98c317da 100644 --- a/lib/emscripten/src/memory.rs +++ b/lib/emscripten/src/memory.rs @@ -16,6 +16,20 @@ pub fn _emscripten_memcpy_big(ctx: &mut Ctx, dest: u32, src: u32, len: u32) -> u dest } +/// emscripten: _emscripten_get_heap_size +pub fn _emscripten_get_heap_size(ctx: &mut Ctx) -> u32 { + debug!("emscripten::_emscripten_get_heap_size",); + // TODO: Fix implementation + 16_777_216 +} + +/// emscripten: _emscripten_resize_heap +pub fn _emscripten_resize_heap(ctx: &mut Ctx, requested_size: u32) -> u32 { + debug!("emscripten::_emscripten_resize_heap {}", requested_size); + // TODO: Fix implementation + 0 +} + /// emscripten: getTotalMemory pub fn get_total_memory(_ctx: &mut Ctx) -> u32 { debug!("emscripten::get_total_memory"); @@ -33,7 +47,14 @@ pub fn enlarge_memory(_ctx: &mut Ctx) -> u32 { } /// emscripten: abortOnCannotGrowMemory -pub fn abort_on_cannot_grow_memory(ctx: &mut Ctx) -> u32 { +pub fn abort_on_cannot_grow_memory(ctx: &mut Ctx, requested_size: u32) -> u32 { + debug!("emscripten::abort_on_cannot_grow_memory {}", requested_size); + abort_with_message(ctx, "Cannot enlarge memory arrays!"); + 0 +} + +/// emscripten: abortOnCannotGrowMemory +pub fn abort_on_cannot_grow_memory_old(ctx: &mut Ctx) -> u32 { debug!("emscripten::abort_on_cannot_grow_memory"); abort_with_message(ctx, "Cannot enlarge memory arrays!"); 0 diff --git a/lib/runtime-core/src/lib.rs b/lib/runtime-core/src/lib.rs index 18c3ae76cac..d130b8899b2 100644 --- a/lib/runtime-core/src/lib.rs +++ b/lib/runtime-core/src/lib.rs @@ -35,6 +35,8 @@ use self::error::CompileResult; #[doc(inline)] pub use self::error::Result; #[doc(inline)] +pub use self::import::IsExport; +#[doc(inline)] pub use self::instance::Instance; #[doc(inline)] pub use self::module::Module;