Commit Graph
403 Commits
Author SHA1 Message Date
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