Commit graph

2338 commits

Author SHA1 Message Date
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
Fabian 75dbbbc55a Update rustfmt 2020-12-31 19:14:30 -06:00
Fabian ca2409b024 Pass asize_32 and get_seg_prefix to string instructions 2020-12-31 19:14:30 -06:00
Fabian a73988a817 Make loop, loopz, loopnz and jcxz custom generated 2020-12-31 19:14:30 -06:00
Fabian ea0cd01207 Comment so that I don't delete this again 2020-12-31 19:14:30 -06:00
Fabian 2c5fc9ee40 Make dbg_trace pub 2020-12-31 19:14:30 -06:00
Fabian 232d3763d9 Make maskmov* custom 2020-12-31 19:14:30 -06:00