Commit graph

265 commits

Author SHA1 Message Date
Fabian bc11d7089e jit 0fc2/cmpps 660fc2/cmppd 2020-12-31 19:14:34 -06:00
Fabian 2b7b562a56 jit 0fc6/shufps 2020-12-31 19:14:34 -06:00
Fabian 1dfdc9d19a jit 660fc6/shufpd 2020-12-31 19:14:34 -06:00
Fabian 3a8102811d jit f30f11/movss 2020-12-31 19:14:34 -06:00
Fabian cf4af74d95 jit f30f10/movss 2020-12-31 19:14:34 -06:00
Fabian b43a5f4818 Mark fwait as block boundary again (fixes qnx hanging) 2020-12-31 19:14:33 -06:00
Fabian 699bf5a2ce Explain 2020-12-31 19:14:33 -06:00
Fabian 37c3d1f83c Generate direct control flow, using wasm blocks and loops 2020-12-31 19:14:33 -06:00
Fabian 0c4e8a7e09 partially jit some sse conversion instructions 2020-12-31 19:14:33 -06:00
Fabian b859ce5085 jit fcomip df_6 2020-12-31 19:14:33 -06:00
Fabian 81e1b7e5d2 jit movsd f20f11 2020-12-31 19:14:33 -06:00
Fabian 307aed5fbc jit movsd f20f10 2020-12-31 19:14:33 -06:00
Fabian cbafb411f0 jit bswap 2020-12-31 19:14:33 -06:00
Fabian 9da02b46f1 jit bts/btr/btc 2020-12-31 19:14:33 -06:00
Fabian 6a18618e76 jit cmpxchg8b 2020-12-31 19:14:32 -06:00
Fabian 51b09ade51 jit clc/stc (F8/F9) 2020-12-31 19:14:32 -06:00
Fabian 5081529b56 jit inc8/dec8 2020-12-31 19:14:32 -06:00
Fabian dc7108ee00 jit sse shift instructions (660F71/660F72/660F73) 2020-12-31 19:14:32 -06:00
Fabian 6e68839365 jit mmx shift instructions (0F71/0F72/0F73) 2020-12-31 19:14:32 -06:00
Fabian 7dc24ba180 jit pshufw (0F70) 2020-12-31 19:14:32 -06:00
Fabian 835396386e jit more mmx instructions (0F6*) 2020-12-31 19:14:32 -06:00
Fabian 03d0c02a56 jit more sse instructions (660F6*) 2020-12-31 19:14:32 -06:00
Fabian 8c7bcdf094 jit sse mov instructions 2020-12-31 19:14:32 -06:00
Fabian a86d6c8f7e jit more sse instructions (660FD*) 2020-12-31 19:14:32 -06:00
Fabian 61b429c0b6 jit more sse instructions (660FE*) 2020-12-31 19:14:32 -06:00
Fabian 98ecc0d244 jit more sse instructions (660FF*) 2020-12-31 19:14:32 -06:00
Fabian 09c0099632 jit pmovmsk (0fd7/660fd7) 2020-12-31 19:14:32 -06:00
Fabian 78e6bc5995 jit more mmx instructions (0FD*) 2020-12-31 19:14:32 -06:00
Fabian 2711a3b356 jit more mmx instructions (0FE*) 2020-12-31 19:14:32 -06:00
Fabian 0b47c75a06 jit more mmx instructions (0FF*) 2020-12-31 19:14:32 -06:00
Fabian 5dd03792c2 jit RDTSC 2020-12-31 19:14:31 -06:00
Fabian 5fea295191 lfence doesn't need to be a block boundary 2020-12-31 19:14:31 -06:00
Fabian 8f94cc2716 jit DB/6 FCOMI 2020-12-31 19:14:31 -06:00
Fabian 57b6421fae jit one more mmx instruction 2020-12-31 19:14:31 -06:00
Fabian 7ad30c7148 partially jit bsf/bsr 2020-12-31 19:14:31 -06:00
Fabian 8d39542271 Partially jit popcnt 2020-12-31 19:14:31 -06:00
Fabian 6e6762b293 jit some mmx instructions 2020-12-31 19:14:31 -06:00
Fabian 4860c6f461 jit 0F7E/0F7F mmx movd/movq 2020-12-31 19:14:31 -06:00
Fabian 44974370af jit 0F6E/0F6F mmx movd/movq 2020-12-31 19:14:31 -06:00
Fabian 3711ed7f23 jit LAHF 2020-12-31 19:14:31 -06:00
Fabian 29e0ef8c4c jit MOVNTI 2020-12-31 19:14:31 -06:00
Fabian c5eea8a8d1 Jit POPF 2020-12-31 19:14:30 -06:00
Fabian 03b88668ab Remove some unused #[no_mangle] 2020-12-31 19:14:30 -06:00
Fabian 822d1efcff Dead 2020-12-31 19:14:30 -06:00
Fabian 4e49468b7b Fix some minor fpu bugs and add more nasm tests 2020-12-31 19:14:30 -06:00
Fabian 2b36795763 Rename only_{reg,mem} to skip_{mem,reg} (only relevant to tests these days) 2020-12-31 19:14:30 -06:00
Fabian a26eb43719 Fix: Inhibit interrupts for one instruction after STI (fixes ReactOS) 2020-12-31 19:14:30 -06:00
Fabian 0edc821618 Jit DIV/IDIV 2020-12-31 19:14:30 -06:00
Fabian 3026e985fa Jit BT 2020-12-31 19:14:30 -06:00
Fabian e1c7b6ff9a Enable BT{,S,C,R} memory tests with immediate 2020-12-31 19:14:30 -06:00