Commit graph

2344 commits

Author SHA1 Message Date
Fabian 6abb23cb69 Fix fist (store float as 32-bit integer) 2020-12-31 19:14:30 -06:00
Fabian 1c8d11d306 Update comment 2020-12-31 19:14:30 -06:00
Fabian 0edc821618 Jit DIV/IDIV 2020-12-31 19:14:30 -06:00
Fabian 3ef82c8c2f Fix 2020-12-31 19:14:30 -06:00
Fabian 3026e985fa Jit BT 2020-12-31 19:14:30 -06:00
Fabian fc43119406 Optimise returns and indirect jumps/calls into same page 2020-12-31 19:14:30 -06:00
Fabian 693b905013 Remove ENABLE_PROFILER (is configured via cargo.toml) 2020-12-31 19:14:30 -06:00
Fabian ee542c5f84 Optimise lazy flag handling
- remove last_add_result and last_op2 from arithmetic instructions
- optimise getcf
2020-12-31 19:14:30 -06:00
Fabian 27a1f00657 Simplify 2020-12-31 19:14:30 -06:00
Fabian fdaf79eaa9 jit jo, jno, js, jns, jl, jnl, jle, jnle (the remaining arithmetic bits) 2020-12-31 19:14:30 -06:00
Fabian e4b41a8cbe Mark mousewheel event non-passive 2020-12-31 19:14:30 -06:00
Fabian 88613c3f27 Remove page_fault 2020-12-31 19:14:30 -06:00
Fabian 90517dcc7c Restore check_tlb_invariants (was lost during c2rust translation) 2020-12-31 19:14:30 -06:00
Fabian 745abd3e2a Add emulator.automatically 2020-12-31 19:14:30 -06:00
Fabian 9394624353 Stub MSR_TEST_CTRL and MSR_IA32_FEAT_CTL (Linux 5.7) 2020-12-31 19:14:30 -06:00
Fabian c10cf41a49 fixup: improve safe_write_slow_jit 2020-12-31 19:14:30 -06:00
Fabian d31e0edb5a Improved code generation for jitted memory reads and writes 2020-12-31 19:14:30 -06:00
Fabian 5e48b2da83 Workaround for Rust compiler bug 2020-12-31 19:14:30 -06:00
Fabian 46671b5354 Jit inc16/dec16 2020-12-31 19:14:30 -06:00
Fabian ce0f34eff2 Jit cmp8/test8 2020-12-31 19:14:30 -06:00
Fabian 4723249259 Jit more cmp16/test16 2020-12-31 19:14:30 -06:00
Fabian 741d6005d2 Simplify 2020-12-31 19:14:30 -06:00
Fabian 3a41694efb Jit cmp16/test16 2020-12-31 19:14:30 -06:00
Fabian fe89acfc80 Jit xchg r, r/m 2020-12-31 19:14:30 -06:00
Fabian 5bfd56571c Delete more JS (port lss and enter) 2020-12-31 19:14:30 -06:00
Fabian d9bfbad2f6 Fix: safe_read_write16_jit was incorrectly calling read_jit method 2020-12-31 19:14:30 -06:00
Fabian 35312b2c3f Use let bindings to avoid some memory loads, fix casts 2020-12-31 19:14:30 -06:00
Fabian 962155f560 Improve 2020-12-31 19:14:30 -06:00
Fabian 8427a30d89 Simplify 2020-12-31 19:14:30 -06:00
Fabian 860833e80f Custom inc32 & dec32 2020-12-31 19:14:30 -06:00
Fabian c59115599f Clear cache when restoring state 2020-12-31 19:14:30 -06:00
Fabian b5c1f2b09f Fix release build 2020-12-31 19:14:30 -06:00
Fabian 6557445653 Generate less debug code in release 2020-12-31 19:14:30 -06:00
Fabian 9da94d5438 Move wasm ops to WasmBuilder 2020-12-31 19:14:30 -06:00
Fabian 5c243725c5 Simplify 2020-12-31 19:14:30 -06:00
Fabian 97205c67a2 Rename to wasm_builder 2020-12-31 19:14:30 -06:00
Fabian df46ffb598 Less JS, more happiness 2020-12-31 19:14:30 -06:00
Fabian e1f8a563ad Simplify (remove c_api) 2020-12-31 19:14:30 -06:00
Fabian 23988f50f6 Restore xlat in jit mode 2020-12-31 19:14:30 -06:00
Fabian 1ea2209499 Restore #gp when accessing null segment, only non-jit (fixes Windows 95 and 98) 2020-12-31 19:14:30 -06:00
Fabian 26728d11a9 Fix debug printing of registers 2020-12-31 19:14:30 -06:00
Fabian cd3c103fa1 Dead 2020-12-31 19:14:30 -06:00
Fabian a96de034ce Fix DSL 2020-12-31 19:14:30 -06:00
Fabian 8f5553e091 Avoid compiling page that already has code being compiled (fixes: Assertion failed: !ctx.wasm_table_index_free_list.is_empty()) 2020-12-31 19:14:30 -06:00
Fabian 1b7435c05e Assert certain functions not being called when in jit 2020-12-31 19:14:30 -06:00
Fabian f3c56e7684 Simplify 2020-12-31 19:14:30 -06:00
Fabian 8bef61183e Better name 2020-12-31 19:14:30 -06:00
Fabian 5bbc11a51d Dead 2020-12-31 19:14:30 -06:00
Fabian 3a473aad79 Remove prefix handling from jit and exceptions 2020-12-31 19:14:30 -06:00
Fabian 62010e64e8 Make string instructions partially custom 2020-12-31 19:14:30 -06:00