Unknown W. Brackets
e9b5e6f277
armjit: Maintain rounding mode throughout jit.
2014-08-22 19:57:50 -07:00
Unknown W. Brackets
5a89c17cf0
armjit: Allow R1 in regalloc, use LR as temp.
...
LR should be safe, although it may make stack traces not work within jit,
they don't really tend to work anyway.
2014-03-28 18:38:38 -07:00
Unknown W. Brackets
58c5179d8e
Push and pop the callee saved NEON registers.
2014-03-25 22:34:42 -07:00
Unknown W. Brackets
2f5c6a5660
Fix VLDM/VSTM encoding for double/quad regs.
...
Duh, forgot to check Vd. Fixes #5723 .
2014-03-25 22:08:20 -07:00
Unknown W. Brackets
e6b2d00a2f
Avoid reseved identifiers like _SP, etc.
...
R_SP is not that bad.
2013-12-29 14:25:34 -08:00
Henrik Rydgard
1d2f1efd06
Fix function replacement on ARM
2013-12-18 00:09:08 +01:00
Henrik Rydgard
2140892074
Initial preparations for ability to replace game functions with custom implementations.
...
Also auto-saves hashmap additions and reapplies the hashmap on function
rename so that if you rename a function that exists in several copies
they will all be labelled.
Note that actual function replacement is not activated yet.
2013-12-17 12:27:20 +01:00
Henrik Rydgård
483bf4c74d
Don't leak icon textures when shutting down the graphics system.
...
Happens on Android task switching for example.
Also update the README (got rid of kitkat fullscreen temporary because
I can't get it to work reliably).
2013-12-09 15:28:47 +01:00
Henrik Rydgård
9e42086e21
Logspam reduction
2013-12-09 13:45:17 +01:00
Unknown W. Brackets
98fb2e0402
armjit: Refer to R11 as MEMBASEREG for clarity.
2013-11-14 23:37:48 -08:00
Henrik Rydgard
309f904c0c
Extract JitState into its own header (arm/x86)
2013-11-08 18:51:52 +01:00
Henrik Rydgard
8c88dff5a4
More log categories, use them (and existing ones). Improve log config.
2013-09-07 22:02:55 +02:00
Henrik Rydgard
76a937f489
ARMJIT Experiment: Keep downcount in a register. Needs benchmarking.
2013-07-27 17:27:26 +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
724a600381
Buildfix android, misc other fixes, some include cleanup
2013-03-29 20:55:32 +01:00
Unknown W. Brackets
f1498b68e0
Re-read R9 on iOS each time.
...
There's maybe a better way. Anyhow, seems to run.
2013-03-14 02:18:12 -07:00
Sacha
529803e429
Sonic's ArmEmitter changes (cross-project merge from Dolphin)
2013-03-14 12:47:29 +10:00
Sacha
ae3b881a7f
Use correct args for Operand2(..) through armjit. Fix STR(..).
2013-03-07 00:59:07 +10:00
Sacha
0fc6b60874
Fix Lit Pools for cases where offset goes out of range. For example: Zero no Kiseki has a block that is 7K large.
2013-03-04 14:36:23 +10:00
Sacha
9633239f18
Update for lit pools. Works in some games now thanks to [Unknown].
2013-03-04 14:29:17 +10:00
Henrik Rydgard
e32721c72a
Merge branch 'master' into armjit-fpu
...
Conflicts:
Core/MIPS/MIPSVFPUUtils.cpp
Core/MIPS/x86/CompVFPU.cpp
GPU/GLES/VertexDecoder.cpp
2013-02-19 00:50:33 +01:00
Sacha
d99c9fb2ff
Fix Symbian JIT + FastMem by using a mapped virtual address RChunk.
2013-02-17 15:23:56 +10:00
Henrik Rydgard
b8abb77eee
More armjit-fpu work - dot product working for example. Add some non working DISABLEd stuff too.
2013-02-16 09:27:48 +01:00
Henrik Rydgard
81589b67e5
Save one instruction on jal, shorten block exits by one instruction (moved to dispatcher).
2013-02-15 23:37:59 +01:00
Henrik Rydgard
23cddab1d7
Some mostly disabled armjit VFPU stuff.
2013-02-15 22:38:39 +01:00
Henrik Rydgard
048cf35922
More ARMJit FPU work - some instructions and optimizations.
2013-02-14 00:02:09 +01:00
Sacha
7bba8c68c4
Fix JIT on Symbian (HACK).
2013-02-01 09:01:00 +10:00
Henrik Rydgard
d8f4e27926
Rename ARMABI_MOVI2R to MOVI2R
2013-01-31 23:41:05 +01:00
Henrik Rydgard
739b76a55a
Armjit: branch code cleanup #1
2013-01-30 01:05:36 +01:00
Unknown W. Brackets
c1757ee166
Check downcount in jit after a syscall.
2013-01-23 22:25:35 -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
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
37be2600be
Shave some more instructions
2013-01-11 18:50:05 +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
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
dafe2c389c
More regalloc fixing and tweaks. Still not working the way I want it.
2013-01-09 13:38:44 +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
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