Commit graph

4124 commits

Author SHA1 Message Date
Fabian d47be4342d set_reg16 unmasked 2021-05-22 23:58:23 -05:00
Fabian c430c1141c Minor optimisation for bt{,s,r,c} with zero offset 2021-05-22 23:58:23 -05:00
Fabian da4470233c fix paste into serial console 2021-05-22 23:58:23 -05:00
Fabian ffe80edece Remove function from non-profiled builds 2021-05-22 23:58:23 -05:00
Fabian 2078d439c6 Remove some hard-coded memory sizes so they can be overwritten 2021-05-22 23:58:23 -05:00
Fabian ffac529747 Rewrite write_leb_i64 (fixes bug with upper bits of constant) 2021-05-22 23:58:23 -05:00
Fabian 2f2fff26a9 tlb_set_has_code_multiple 2021-05-22 23:58:22 -05:00
Fabian 7666805117 Fix tlb invariant check 2021-05-22 23:20:47 -05:00
Fabian fd1626cd87 Fix movs jit 2021-05-22 23:20:47 -05:00
viorelcanja 757d95b6be
Mem fast path optimization (#469)
Remove one addition from the memory access fast path
2021-05-23 06:03:34 +02:00
viorelcanja 0297f48346
resize tlb_data to proper size (#468)
Resize tlb_data to proper size

Reduce initial memory size
2021-05-08 22:49:37 +02:00
ParkerTomatoes b11c54cd5a detect host triplet when finding rust-lld 2021-05-04 17:26:05 -05:00
Viorel Canja 5b79e47bc9 avoid ending jit_run_interpreted in the middle of a basic block 2021-05-04 20:30:08 +02:00
Simon Kadisch 690354e69e Provide access to CPU memory via V86Starter 2021-04-23 01:07:50 +02:00
Simon Kadisch c8581d9ba6 Restore UART2 and UART3 correctly 2021-04-21 20:12:39 +02:00
Mikhail B 3791d63ffd workaround to support i686 + clang 5.0+
clang version 5.0.0 (http://root.cern.ch/git/clang.git 354b25b5d915ff3b1946479ad07f3f2768ea1621) (http://root.cern.ch/git/llvm.git 9c749361ba8c2d400b83d8cc5c544287465b7489)
Target: i686-pc-linux-gnu
Thread model: posix

rustup 1.23.1 (3df2264a9 2020-11-30)

rustc 1.53.0-nightly (d0695c908 2021-04-12)
2021-04-13 09:47:17 -05:00
Fabian 3137bf4171 Fix movsw jit 2021-04-12 15:17:43 -05:00
Fabian 9e9af6d45b NetBSD, floppy bird 2021-04-10 17:22:28 -05:00
Fabian 74dd588b75 vga: dac color index wrap-around 2021-04-10 17:19:40 -05:00
Fabian f48c851b17 Allow logging screen while running full test 2021-04-10 16:59:21 -05:00
Fabian b1025783a1 Assertion in CachedStateFlags 2021-04-10 16:50:28 -05:00
Fabian 594caa2a73 Simplify 2021-04-10 16:48:44 -05:00
Fabian 0db7ab6505 Dead code 2021-04-10 16:48:11 -05:00
Fabian 48464a18d7 jit movsb/movsw/movsd 2021-04-10 14:27:14 -05:00
Fabian 6049e0c46c jit stosb/stosw/stosd 2021-04-09 21:52:00 -05:00
Fabian 4de8584cff jit scasw/scasd/lodsw/lodsd 2021-04-09 21:15:25 -05:00
Fabian 7b66ae874d jit scasb 2021-04-09 20:37:55 -05:00
Fabian 2e25308f17 jit lodsb 2021-04-09 19:51:27 -05:00
Fabian b48166280b gen_pushf_popf_check 2021-04-09 18:54:54 -05:00
Fabian d929f4d7fd jit some 8-bit arithmetic 2021-04-09 15:35:22 -05:00
Fabian b684342b2b Revert "jit 8E (mov sreg, reg)".
This optimisation was completely invalid, it's not possible call
switch_seg while in jit mode without saving registers.
2021-04-09 15:32:46 -05:00
Fabian bc1f239c2b jit {,66}0F{14,15} (unpcklps, unpcklpd, unpckhps, unpckhpd) 2021-04-05 01:58:42 -05:00
Fabian f4f3ec0ca1 jit {,66}0F{12,13} (movhlps, movlps, movlpd, movlps, movlpd) 2021-04-05 01:58:42 -05:00
Fabian 904593ca68 Skip snowdrop test if missing image 2021-04-05 01:58:42 -05:00
Fabian 1632498c9e elf parser: ignore PT_GNU_PROPERTY 2021-04-05 01:58:42 -05:00
Fabian 209879273f elf parser: improve error message 2021-04-05 01:58:42 -05:00
Fabian aacb6a49d7 Rust: Switch from nightly to stable 2021-04-05 01:58:42 -05:00
Fabian 5f3453acf9 Update expect tests 2021-04-04 23:47:40 -05:00
Fabian bbeca7a13d jit {F2,F3}0FC2 (cmpsd, cmpss) 2021-04-04 23:36:54 -05:00
Fabian 2a22980cf7 jit {F2,F3}0F2A (cvtsi2ss, cvtsi2sd) 2021-04-04 23:32:06 -05:00
Fabian 2b2d22f6d3 jit {,66}0F2A (cvtpi2ps, cvtsi2ss, cvtpi2pd, cvtsi2sd) 2021-04-04 22:56:50 -05:00
Fabian 9e63bab294 jit {,66}0F{2E,2F} (ucomiss, ucomisd, comiss, comisd) 2021-04-04 22:32:36 -05:00
Fabian a0c4c32352 jit {,66,F2,F3}0F{5A,5B} (cvtps2pd, cvtpd2ps, cvtss2sd, cvtsd2ss, cvtdq2ps, cvtps2dq, cvttps2dq) 2021-04-04 20:58:40 -05:00
Fabian c5ca3ca09e jit 0F{74,75,76} (pcmpeqb, pcmpeqw, pcmpeqd) 2021-04-04 16:27:26 -05:00
Fabian 44c606f5a6 jit 660F{75,76} (pcmpeqw, pcmpeqd) 2021-04-04 16:23:37 -05:00
Fabian 73aa610f72 jit 8E (mov sreg, reg) 2021-04-04 16:02:22 -05:00
Fabian 28369ed790 jit {,66,F2,F3}0F{58,59,5C,5D,5E,5F} ({add,mul,sub,min,div,max}{ps,ss,pd,sd}) 2021-04-04 15:41:54 -05:00
Fabian 12ec5d753d jit {,66}0F{54,55,56,57} ({and,andn,or,xor}{ps,pd}) 2021-04-04 15:35:21 -05:00
Fabian 03566c2067 jit {,F3}0F53 (rcp{ps,ss}) 2021-04-04 15:35:21 -05:00
Fabian 38c484629d jit {,F3}0F52 (rsqrt{ps,ss}) 2021-04-04 15:35:21 -05:00