Unknown W. Brackets
5128083d93
Mask out fcr31 bits that can't be set on a PSP.
2013-11-14 23:57:28 -08:00
Unknown W. Brackets
3c73d0d1f1
armjit: Read fpu control regs other than 0/31 as 0.
...
Always seem to give zero, regardless of the value of fcr31, etc.
2013-11-14 23:39:39 -08:00
Unknown W. Brackets
26f5922174
Return the correct value for fcr0/fir.
...
This is what the PSP actually returns, it's read only.
2013-11-14 23:39:08 -08:00
Unknown W. Brackets
98fb2e0402
armjit: Refer to R11 as MEMBASEREG for clarity.
2013-11-14 23:37:48 -08:00
Sacha
20e8a81268
Switch to compile-time ARMV7 define.
2013-11-15 11:20:39 +10:00
Henrik Rydgård
17074f5a7f
Cache fpcond in a register to avoid store/load between compare and branch
2013-11-12 10:33:38 +01:00
Unknown W. Brackets
7e46ee0b0f
armjit: Replace MOVI2R with using the regcache.
...
So that it can optimize the value with existing imms.
Not actually optimizing yet.
2013-11-10 15:50:45 -08:00
Henrik Rydgard
502f772856
Add experimental mode to cache pointers in the arm jit.
...
Turned off for now as it needs more work but seems quite promising already.
2013-11-09 17:15:30 +01:00
Henrik Rydgard
dff0c431aa
ARMjit: Optimize mfc1, mtc1
2013-11-08 12:43:48 +01:00
Henrik Rydgård
9be3f8fc0a
Use ANDI2R instead of a BIC with a too large parameter
2013-11-06 10:50:30 +01:00
Sacha
81d3df0841
ARMJIT: Minor optimisations for armv6 and armv7.
2013-11-06 15:28:26 +10:00
Sacha
18b7503dd5
Fix rounding errors in armjit.
2013-10-14 19:24:13 +10: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
Henrik Rydgard
ebcdd637ee
ARMJit bugfixes, enable vmul, vadd, vdiv, vsub.
...
Prefixes disabled until I can fix clamping.
2013-07-31 00:12:43 +02:00
Henrik Rydgard
d8294f025f
More VFPU stuff (nothing new activated)
2013-07-30 01:09:11 +02:00
Henrik Rydgard
59644ad59b
Jit: Implement VMMUL for ARM, optimize the x86 implementation. Also add VCST.
2013-07-28 12:14:35 +02:00
Henrik Rydgard
2eaf581bbe
Add experimental UV prescaling hack, hidden as it's not finished yet.
...
Most people should ignore this for now, it's a step towards faster skinning in the future.
2013-07-27 23:23:17 +02:00
Henrik Rydgard
afcb5add51
Minor code cleanup/reindent around ARM jit
2013-07-27 22:14:01 +02:00
Unknown W. Brackets
7c238f4567
Avoid a signed/unsigned compare.
...
This one is pretty pedantic.
2013-07-26 22:50:55 -07:00
Jake Traynham
e89b2055a6
Reenabled armv7s for iOS with JIT fixes
2013-06-20 11:44:59 -05:00
Sacha
583927988c
Armjit Update: Improvements
...
Implement vsat0 and vsat1
Introduce VMOV for immediates. Use in MOVI2F where possible by detecting if float val can be encoded.
Combine some vneg ops in ApplyPrefixST.
2013-06-09 21:27:16 +10:00
Sacha
f21218c3f9
Armjit: Combine mul.s + neg.s to VNMUL. Implement VNMUL, VNMLA, VNMLS.
...
I had implemented mul.s + add/sub.s + add/sub.s -> VADD/VSUB + V(N)ML(A/S). Turns out it doesn't happen enough though (once or twice per game).
2013-06-08 16:39:59 +10:00
Sonicadvance1
cd9b49acfd
Updates to ArmEmitter from Dolphin.
2013-04-12 10:14:18 -07:00
Unknown W. Brackets
3466f3c721
armjit: Add fastmem check to FPU.
...
Could reduce crashes that don't happen on x86.
2013-03-16 20:31:51 -07:00