Henrik Rydgard
aabc0aa9ef
Quick implementation of LV.Q and SV.Q in x86/x64 JIT
2013-01-25 19:50:30 +01:00
Lioncash
1cc74aa6c0
Get rid of unused iterators.
2013-01-25 13:11:06 -05:00
Unknown W. Brackets
c1757ee166
Check downcount in jit after a syscall.
2013-01-23 22:25:35 -08:00
Unknown W. Brackets
dbe597ce64
Buildfix Android, darn.
2013-01-22 08:23:27 -08:00
Unknown W. Brackets
c324983340
Make the jit support bltzal and friends.
...
Fixes problems with jit in games. Android changes completely untested.
2013-01-22 08:04:01 -08:00
Henrik Rydgard
3ae4cd4e2a
Correct an include path
2013-01-19 11:43:31 +01:00
Unknown W. Brackets
beac991a9e
Clear jit cache when changing breakpoints.
...
For now, only when paused. I don't think clearing the cache while
running is an awesome idea.
2013-01-18 20:12:53 -08:00
Sacha
5552f93fca
Fixes for Qt, Symbian and Blackberry. Reorder and remove some redundant ArmEmitter includes so that _SP doesn't conflict.
2013-01-17 11:00:07 +10:00
Henrik Rydgard
e34288070c
Don't flush the icache from the start, also don't sleep. May help JIT slowdowns.
2013-01-15 20:42:45 +01:00
Henrik Rydgard
66ee2e2933
Remove ArmABI.cpp/h, didn't need that stuff.
2013-01-14 22:19:18 +01:00
Henrik Rydgard
64f953c5e1
8-byte align the ARM stack. Type some ideas.
2013-01-12 12:26:44 +01:00
Henrik Rydgard
674911ddba
Move downcount into MIPSState for efficiency, enable block linking.
...
On ARM JIT we can now reach it through the cpu context reg.
2013-01-12 00:44:18 +01:00
Henrik Rydgard
36eaabd917
Some constant propagation. Comment out sltiu which causes problems aiming in puzbob (???)
2013-01-11 23:42:58 +01:00
Henrik Rydgard
37be2600be
Shave some more instructions
2013-01-11 18:50:05 +01:00
Henrik Rydgard
bc9c3db303
Armjit: Add option for fastmem. Small optimization.
2013-01-11 17:25:54 +01:00
Henrik Rydgard
9b791b9953
More ARMJIT optimization
2013-01-11 15:22:31 +01:00
Henrik Rydgard
ba804cfa89
Cleanup ArmAsm, add idea
2013-01-11 02:28:02 +01:00
Henrik Rydgard
aa59ddad09
Merge AsmRoutineManager into Jit. Allows safe short branches.
2013-01-11 01:59:26 +01:00
Henrik Rydgard
8cd5ae933f
sw/lw
2013-01-10 12:14:23 +01:00
Henrik Rydgard
9dcdb6df90
Jit work! Shifts, 3-operand ops, turn O2 back on...
2013-01-10 01:20:25 +01:00
Henrik Rydgard
71652874c2
Fix jit bugs related to the dirty flag, and more:
...
* Tweak block logging
* Faster calls-to-interpreter.
2013-01-10 00:03:51 +01:00
Henrik Rydgard
209f1d79a9
SpillLock is now per MIPS register instead of per ARM register. Fix array size.
2013-01-09 23:14:21 +01:00
Henrik Rydgard
fb7116ccd5
Add more checks.
2013-01-09 22:55:58 +01:00
Henrik Rydgard
2f4e6eaf01
Remove allocLock until we need it
2013-01-09 22:46:27 +01:00
Henrik Rydgard
dafe2c389c
More regalloc fixing and tweaks. Still not working the way I want it.
2013-01-09 13:38:44 +01:00
Henrik Rydgard
17210c5364
Generate immediates as rot+shift when possible.
2013-01-09 11:52:49 +01:00
Henrik Rydgard
dafc9f62df
Regcache fixes, etc. thing still don't work when I turn on addiu :(
2013-01-09 11:20:48 +01:00
Henrik Rydgard
81c6c4805d
Small dispatcher optimizations, cleanup. Still no cube.
2013-01-09 00:42:03 +01:00
Henrik Rydgard
f5c94775b9
Cleanup
2013-01-09 00:12:02 +01:00
Henrik Rydgard
76481a300c
Icache must be invalidated. Jit now starts to run, but there's no cube in cube.elf!
2013-01-08 23:52:11 +01:00
Henrik Rydgard
8915677241
More progress but it weirds out...
2013-01-08 21:24:42 +01:00
Henrik Rydgard
8c06edc47b
It's getting close to the first totally unoptimized jit run.
2013-01-08 17:03:17 +01:00
Henrik Rydgard
b78ad83f00
R10, not R9, points to the mips state...
2013-01-08 14:29:03 +01:00
Henrik Rydgard
7b4cfb702c
Get rid of CPU class so that MIPSState can be POD, enabling offsetof
2013-01-08 14:20:06 +01:00
Henrik Rydgard
b3fd1ff34c
Lots of various work on the ARM jit. It executes a couple of blocks now.
2013-01-08 13:49:52 +01:00
Henrik Rydgard
5a7f4acc06
More armjit work
2013-01-08 00:26:42 +01:00
Henrik Rydgard
a2ff416534
Rename files. Rewrite ArmRegCache from scratch.
2013-01-07 22:33:09 +01:00
Henrik Rydgard
7cb95bbc89
Merge branch 'master' into armjit
...
Conflicts:
CMakeLists.txt
Core/MIPS/ARM/RegCache.cpp
2013-01-07 10:25:02 +01:00
Henrik Rydgard
38ae09b50f
Merge remote-tracking branch 'origin/armjit' into armjit
...
Conflicts:
android/jni/MenuScreens.cpp
2013-01-07 10:22:50 +01:00
Henrik Rydgard
93470e0c1f
Remove some old PowerPC references...
2013-01-05 19:52:11 +01:00
Arthur Blot
be91ad2f9c
Fixed $zr being non-zero after loading instruction
2013-01-03 16:14:45 +01:00
Henrik Rydgard
6b64554e64
Fix savestates under JIT
2013-01-03 12:46:10 +01:00
Henrik Rydgård
f9133c1a56
Reset JIT before saving/loading state
2012-12-29 00:10:43 +01:00
Henrik Rydgård
e724d82c46
Merge remote-tracking branch 'origin' into armjit
...
Conflicts:
CMakeLists.txt
2012-12-09 09:54:58 +07:00
Sacha
3c903dda24
Improve portability to future platforms. Make use of new USING_GLES2 define throughout PPSSPP. Also use ARM definition where suitable. Remove some redundancy with includes.
2012-11-26 13:25:14 +10:00
Henrik Rydgard
863bc863c9
Some more arm work
2012-11-24 17:51:10 +01:00
Henrik Rydgard
265e70a498
Just some sketchwork on a JIT for ARM. When completed, will bring speed to mobile devices.
2012-11-23 19:41:35 +01:00
Henrik Rydgard
d572d40c36
More warning fixing
2012-11-18 23:35:02 +01:00
Sacha
41f5abab31
PPSSPP ported to Blackberry10
...
Now builds on Playbook and Dev Alpha
Make emulator more compatible with other OS (case sensitivity, defines, includes)
Uses Android's code paths and backend
2012-11-05 23:09:49 +10:00
Henrik Rydgard
687b085357
Missed these somehow
2012-11-04 23:58:25 +01:00