Commit graph

7 commits

Author SHA1 Message Date
Fabian
51bd604cc5 remove "use strict" (is default in es6 modules) 2025-04-16 09:26:13 -07:00
Fabian
c11805a70a minor cleanup of imports 2025-04-16 09:26:13 -07:00
Rob Blanckaert
a9219613af Switch to es6 modules. 2025-04-06 08:53:49 -07:00
Fabian
acb8ad5423 Avoid console.assert (doesn't throw) 2020-12-31 19:14:30 -06:00
Fabian
3a8d644d75 Port jit to Rust
The following files and functions were ported:
- jit.c
- codegen.c
- _jit functions in instructions*.c and misc_instr.c
- generate_{analyzer,jit}.js (produces Rust code)
- jit_* from cpu.c

And the following data structures:
- hot_code_addresses
- wasm_table_index_free_list
- entry_points
- jit_cache_array
- page_first_jit_cache_entry

Other miscellaneous changes:
- Page is an abstract type
- Addresses, locals and bitflags are unsigned
- Make the number of entry points a growable type
- Avoid use of global state wherever possible
- Delete string packing
- Make CachedStateFlags abstract
- Make AnalysisType product type
- Make BasicBlockType product type
- Restore opcode assertion
- Set opt-level=2 in debug mode (for test performance)
- Delete JIT_ALWAYS instrumentation (now possible via api)
- Refactor generate_analyzer.js
- Refactor generate_jit.js
2020-08-30 19:29:13 -05:00
Awal Garg
853bf477cc minor fixes 2020-08-30 19:27:07 -05:00
Awal Garg
e33cc8f072 rust restructuring, some refactoring 2020-08-30 19:27:07 -05:00