Unknown W. Brackets
|
455a7e090d
|
Compile the cache instruction to nothing.
Was showing up in a few profiles, does nothing currently.
|
2013-11-10 14:38:10 -08:00 |
|
Henrik Rydgard
|
5ad04a23f4
|
x86 jit: Rename BindToRegister to MapReg
|
2013-11-09 15:23:31 +01:00 |
|
Unknown W. Brackets
|
97aa1a631e
|
Improve typesafety in the x86 regalloc.
|
2013-08-24 19:41:10 -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 |
|
Unknown W. Brackets
|
286c153c6a
|
Fix memchecks for halfwords and bytes.
Before it was doing the range on a 4 byte read, which would trip a
memcheck that wasn't actually being hit if the byte of halfword was
unaligned.
|
2013-07-06 13:15:48 -07:00 |
|
Unknown W. Brackets
|
2d15eb2acd
|
Re-enable lwl/lwr/swl/swr on the x86 jit.
Now correctly handling ECX on x64.
|
2013-07-06 01:21:52 -07:00 |
|
Unknown W. Brackets
|
1c9086617a
|
DISABLE the swr/swl and friends for now.
Broke Disgaea on x64 only, not sure why right now.
|
2013-07-05 02:53:15 -07:00 |
|
Unknown W. Brackets
|
e27ab6fa11
|
Add swl/swr to the x86 jit.
|
2013-07-04 17:34:56 -07:00 |
|
Unknown W. Brackets
|
203daf955b
|
Implement lwl/lwr in the x86 jit.
|
2013-07-04 17:30:36 -07:00 |
|
Unknown W. Brackets
|
2d6a730cac
|
Add some basics for memory checks to x86 jit.
Specifically, we will need to be able to bail in delayslots,
and we will need to know the size of the access (useful anyway.)
|
2013-03-09 02:41:46 -08:00 |
|
Unknown W. Brackets
|
f6f2927526
|
Add curlies around DISABLE/CONDITIONAL_DISABLE.
|
2013-02-15 08:35:33 -08:00 |
|
Unknown W. Brackets
|
f777c872e6
|
Jit unaligned reads/writes.
This mostly just improves perf on debug, not really on the map for release.
|
2013-02-02 13:12:34 -08:00 |
|
Unknown W. Brackets
|
b77ce99d01
|
Oops, no slow read for immediates usually.
|
2013-01-26 09:27:52 -08:00 |
|
Unknown W. Brackets
|
9cd5836b85
|
Rename WriteFinish() to Finish() is safe mem.
It's nothing to do with writing.
|
2013-01-26 09:09:47 -08:00 |
|
Unknown W. Brackets
|
3e419f513a
|
Refactor jit safe memory reads without dup code.
But, maybe too automagical...
|
2013-01-26 08:42:34 -08:00 |
|
Unknown W. Brackets
|
b7ef3e7bef
|
Make sure to log / check bad immediate mem access.
Although, theoretically, this should never happen.
Also, definitely time to refactor.
|
2013-01-25 23:06:43 -08:00 |
|
Unknown W. Brackets
|
3418383917
|
Immediately break on bad mem access in jit slowmem.
|
2013-01-25 22:52:51 -08:00 |
|
Unknown W. Brackets
|
f5963df0dc
|
Optimize write to a single x64 op too.
|
2013-01-20 13:06:19 -08:00 |
|
Unknown W. Brackets
|
e8dc99328a
|
Avoid using EAX as a temporary where possible.
All the regs should be indirect addressing compatible. So if it's
in a reg, let's use that instead of EAX.
|
2013-01-20 12:57:14 -08:00 |
|
Unknown W. Brackets
|
eaa24ee047
|
Use EDX as a temporary for sb, and jit it.
|
2013-01-20 12:25:08 -08:00 |
|
Unknown W. Brackets
|
30f6a4ba87
|
Fix stupid stupid typo breaking slowmem jit.
|
2013-01-20 09:39:13 -08:00 |
|
Unknown W. Brackets
|
53600161ba
|
Don't write anything to a bad static pointer.
Not sure what came over me...
|
2013-01-20 00:19:18 -08:00 |
|
Unknown W. Brackets
|
e78223d2c0
|
Since flipping the op is easy, also do lb/lh.
|
2013-01-19 16:25:57 -08:00 |
|
Unknown W. Brackets
|
5e8f1917ee
|
Fix 64-bit memory dereferencing.
|
2013-01-19 16:25:57 -08:00 |
|
Unknown W. Brackets
|
90e6f0b7df
|
Optimize static memory read/writes in jit as well.
Like the arm jit does.
|
2013-01-19 16:25:56 -08:00 |
|
Unknown W. Brackets
|
c64966c16e
|
Oops, lost the CONDITIONAL_DISABLE.
|
2013-01-19 16:25:56 -08:00 |
|
Unknown W. Brackets
|
37fb64ac83
|
Fast path scratchpad too, shouldn't be expensive.
|
2013-01-19 11:11:45 -08:00 |
|
Unknown W. Brackets
|
72e547420d
|
Refactor jit slowmem, add lbu to jit since easy.
|
2013-01-19 11:11:45 -08:00 |
|
Unknown W. Brackets
|
5305017fc3
|
Properly save registers before the slowmem call.
|
2013-01-19 11:11:44 -08:00 |
|
Unknown W. Brackets
|
f1295f6262
|
Don't muck with currentMIPS->r in the slowmem jit.
|
2013-01-19 11:11:44 -08:00 |
|
Unknown W. Brackets
|
2ad77aa9c8
|
Gotta flush before the call, too.
|
2013-01-19 01:53:11 -08:00 |
|
Unknown W. Brackets
|
09422d5adb
|
Avoid a func if possible when fastmem is off.
|
2013-01-19 01:02:47 -08:00 |
|
Unknown W. Brackets
|
bc75b68c36
|
Also jit sh and lhu, which are pretty common ops.
|
2013-01-18 23:10:51 -08:00 |
|
Unknown W. Brackets
|
d5ae85201c
|
Optimize sw/lw even under safe memory.
They're very common instructions, so shaving cycles helps.
|
2013-01-18 23:10:50 -08:00 |
|
Arthur Blot
|
be91ad2f9c
|
Fixed $zr being non-zero after loading instruction
|
2013-01-03 16:14:45 +01:00 |
|
Henrik Rydgard
|
f5efd6f2b1
|
JIT: add option to enable/disable jit of memory instructions. for crash safety.
|
2012-12-21 16:50:13 +01:00 |
|
Henrik Rydgard
|
d485b76e11
|
Jit fixes, test update
|
2012-11-12 14:35:10 +01:00 |
|
Henrik Rydgard
|
64cc573703
|
Switch to "GPL 2.0 or later" for various reasons. I wrote most of the code I imported from Dolphin (which is GPL2-but-not-later), so it should be OK.
|
2012-11-04 23:24:00 +01:00 |
|
Henrik Rydgard
|
4f7ad15758
|
Add snapshot of the whole source code.
|
2012-11-01 16:19:01 +01:00 |
|