(self)
| 7025 | @no_asan('autodebug logging interferes with asan') |
| 7026 | @with_env_modify({'EMCC_AUTODEBUG': '1'}) |
| 7027 | def test_autodebug_wasm(self): |
| 7028 | # failed to asynchronously prepare wasm: LinkError: WebAssembly.instantiate(): Import #13 module="env" function="get_v128": function import requires a callable |
| 7029 | if '-msimd128' in self.cflags or '-lllvmlibc' in self.cflags: |
| 7030 | self.skipTest('https://github.com/emscripten-core/emscripten/issues/25001') |
| 7031 | |
| 7032 | # Even though the test itself doesn't directly use reference types, |
| 7033 | # Binaryen's '--instrument-locals' will add their logging functions if |
| 7034 | # reference-types is enabled. So make sure this test passes when |
| 7035 | # reference-types feature is enabled as well. |
| 7036 | self.node_args += shared.node_reference_types_flags(get_nodejs()) |
| 7037 | output = self.do_runf('core/test_autodebug.c', 'done\n', cflags=['-mreference-types']) |
| 7038 | # test that the program both works and also emits some of the logging |
| 7039 | # (but without the specific output, as it is logging the actual locals |
| 7040 | # used and so forth, which will change between opt modes and updates of |
| 7041 | # llvm etc.) |
| 7042 | for msg in ('log_execution', 'get_i32', 'set_i32', 'load_ptr', 'load_val', 'store_ptr', 'store_val'): |
| 7043 | self.assertIn(msg, output) |
| 7044 | |
| 7045 | ### Integration tests |
| 7046 |
nothing calls this directly
no test coverage detected