Henrik Rydgard
1cb7965cb1
Jit feature preparation: Introduce "proxy blocks".
...
When these are invalidated, the block they point to gets invalidated too.
Will be useful to implement various types of block merging and function inlining
without affecting correctness of cache clears etc.
Also, with this commit we can now fully inline replaced functions. fabsf() boils
down to 1-2 instructions and the block continues, for example.
2013-12-19 00:39:49 +01:00
Henrik Rydgard
2d8429ac48
Assorted cleanup in the MIPS emulation
2013-12-10 13:15:16 +01:00
Henrik Rydgard
f696650437
Implement vasin (fastasin5 from unittest) in ARM jit, add a sanity check.
2013-12-01 14:14:04 +01:00
Unknown W. Brackets
5ba94aa939
Correct jit block size for profiling.
2013-12-01 02:34:37 -08:00
Unknown W. Brackets
5d2ff64252
Support for modified jit-enabled VerySleepy.
...
This allows profiling the jit. Should have zero perf impact when not
in use, since it's entirely triggered by VerySleepy.
2013-11-30 19:20:21 -08:00
Unknown W. Brackets
394d91371f
Avoid clearing the jit cache on savestate.
...
Downside: saving state could "fix" some issues with games detecting jit,
which won't happen anymore.
However, it's now faster to savestate.
2013-09-29 14:26:13 -07:00
Unknown W. Brackets
14bcca1f53
Fix InvalidateICache() breaking binary searching.
2013-09-01 00:32:42 -07:00
Unknown W. Brackets
109ad17ac6
Use a typesafe struct for opcodes.
...
Also, correctly read delayslots using Read_Instruction on ARM.
2013-08-24 15:36:24 -07:00
Henrik Rydgård
a678621caf
Merge pull request #3191 from Ced2911/ppc_basic
...
ppc support + ppc jit
2013-08-16 12:16:49 -07:00
Ced2911
1a5c6b59c5
add ppc jit
2013-08-16 14:40:29 +02:00
Unknown W. Brackets
14b719a7ac
Make it possible to have more block exits.
2013-08-16 00:12:49 -07:00
Unknown W. Brackets
7b7801d59a
Switch to including Windows.h from an intermediate.
...
This makes it easier for Xbox which uses a separate header.
2013-07-28 21:04:19 -07:00
Unknown W. Brackets
7c238f4567
Avoid a signed/unsigned compare.
...
This one is pretty pedantic.
2013-07-26 22:50:55 -07:00
Unknown W. Brackets
fcfcadaef2
Fix potential crash looking up block_num.
2013-04-28 20:59:13 -07:00
Henrik Rydgard
338bc0049d
Seems block linking got too slow, speed it up again.
2013-04-27 23:40:17 +02:00
Henrik Rydgard
7375706d2f
Crashfix
2013-04-27 20:50:12 +02:00
Henrik Rydgard
6f4ad05582
Remove some unused code, add some stubs to vfpu jit, some cleanup
2013-04-27 19:35:42 +02:00
Henrik Rydgard
5ced57953d
Fix a bug caused by the recent JIT optimization : ignore destroyed blocks.
2013-04-27 18:33:56 +02:00
Henrik Rydgard
2a39a3b972
JIT: Get rid of one memory access per dispatch, and get rid of blockcodepointers.
2013-04-27 01:32:03 +02:00
Henrik Rydgard
9eace8a80e
Combine the two JitCache implementations (x86, ARM) into one.
2013-04-27 01:32:03 +02:00