Unknown W. Brackets
ab978b1eb1
armjit: Fix vfad/vavg sign for -0.000.
...
But, NEON is still broken pretty bad, not sure why.
2015-01-03 11:14:52 -08:00
Henrik Rydgård
5fffe53671
Merge pull request #7258 from unknownbrackets/jit-minor
...
x86jit: Fix vavg, improve vfad
2015-01-03 19:44:22 +01:00
Unknown W. Brackets
a1864b2c78
x86jit: Fix vavg scale.
...
Was completely wrong, darn it.
2015-01-03 10:39:58 -08:00
Unknown W. Brackets
8a089ee583
x86jit: Handle -0.0 in vavg/vfad.
...
Should result in a positive result.
2015-01-03 10:39:26 -08:00
Bovine
2ed4c1bd6b
Fix matrix disassembly notation
...
Changed disassembler output to match gas input for operations on
transposed matrices where row != col.
2015-01-03 02:04:08 -07:00
Henrik Rydgard
13c4a22967
Disable transpose optimization, seems to break games
2015-01-02 01:13:34 +01:00
Henrik Rydgard
6a7e5d1cc2
x86 Jit SIMD: Generate somewhat shorter code for handling transposed matrices in vmmul.
...
TODO: Build into regalloc instead, with a MapMatrix function?
2015-01-01 12:44:03 +01:00
Unknown W. Brackets
5f6f8ac0a2
x86jit: Fix another sequential detect problem.
...
Arg. Maybe should use voffset after all, but it won't fit in a u8
anyway...
2014-12-31 22:43:31 -08:00
Unknown W. Brackets
c5f7b6fa72
x86jit: Disable simd again for now.
2014-12-31 19:43:40 -08:00
Henrik Rydgard
240ebcb085
Fix memory leaks in sceJpeg
2014-12-31 15:34:50 +01:00
Unknown W. Brackets
a62a4a42b3
armjit: handle any known zero in mtc1.
2014-12-28 20:05:29 -08:00
Henrik Rydgård
6bf2c02908
x86 jit: Allow storing all imms directly without bouncing to a register, not just zero.
2014-12-23 22:25:53 +01:00
Henrik Rydgård
f51fcb9e80
Typos
2014-12-23 21:32:26 +01:00
Henrik Rydgård
98f1ac9153
Merge pull request #7217 from hilesaz/master
...
Fix to VFPU register allocation. Fixes #7174
2014-12-23 13:28:53 +01:00
Bovine
a9b7656f93
Fix to VFPU register allocation. Fixes #7174
...
GetFreeXRegs(_,_,true) invalidates registers it can see on spill,
but it can't see all the registers in the array due to how we call it
so we have to invalidate the rest ourselves. Not doing so can get it
to use the same register twice.
2014-12-23 03:39:50 -07:00
Henrik Rydgård
53ab7ab4b2
Fix FakeJit, start preparing a little for ARM64
2014-12-23 09:36:28 +01:00
Unknown W. Brackets
326c298207
armjit: Fix BKPT on simple exits.
...
If we get lucky and write a single-op destination address, we only emit
one op. So we have to check the next op before overwriting.
2014-12-22 22:56:15 -08:00
Unknown W. Brackets
cb50075cf9
armjit: Correct NEON/non-VFPU reg allocation order.
...
This fixes vh2f, which unbreaks games like Dissidia 012 and others.
2014-12-22 21:27:27 -08:00
Unknown W. Brackets
71eb709845
fixup! Fix some missing case warnings.
2014-12-20 09:11:45 -08:00
Unknown W. Brackets
a514603f40
Fix some missing case warnings.
2014-12-20 09:10:09 -08:00
Henrik Rydgård
a9be90229a
Merge pull request #7140 from AbandonedCart/master
...
use libc++ for iOS to avoid additional directives
2014-12-18 22:38:14 +01:00
Henrik Rydgård
76b1313ed9
Merge pull request #7164 from daniel229/func_replace_orenoimouto_2
...
Another replace frame download in Ore no Imouto ga Konnani Kawaii Wake g...
2014-12-18 22:22:20 +01:00
Unknown W. Brackets
a292fa87ea
x86jit: Fix an x32 compile error in disabled code.
2014-12-17 08:50:31 -08:00
Unknown W. Brackets
2743c5cacd
x86jit: Shave off a couple bytes in asm.
2014-12-17 08:25:18 -08:00
Unknown W. Brackets
77777e372d
x86jit: Use R15 when safe for the jit.
...
This is virtually always safe.
2014-12-17 08:09:59 -08:00
Unknown W. Brackets
b9eddc3d25
x86jit: Oops, fix a typesafety error.
2014-12-17 08:07:43 -08:00
Unknown W. Brackets
9022b48069
x86jit: Skip reload of EAX in safe cases.
...
Probably no real improvement in perf, but a bit cleaner and one less TODO.
2014-12-17 01:12:41 -08:00
Unknown W. Brackets
afdbf5610b
jit: Use nicknames for a few more static regs.
2014-12-17 01:11:33 -08:00
Unknown W. Brackets
b6a75bf255
x86jit: Set CTXREG in a fixed place.
2014-12-17 01:00:21 -08:00
Henrik Rydgard
a54e0cf244
Goodbye PowerPC, you can always be resurrected when the time comes
2014-12-16 21:58:38 +01:00
Henrik Rydgard
4ec30d98e1
Port the x86 and ARM emitters over to use the generic CodeBlock class
2014-12-15 22:32:55 +01:00
Henrik Rydgard
b2951f0def
Transplant Dolphin's ARM64 emitter over. Not hooked up to anything (yet...)
2014-12-15 22:09:26 +01:00
Unknown W. Brackets
9a41dec0ff
Fix some type comparison warnings.
2014-12-14 17:35:20 -08:00
Unknown W. Brackets
cb7e7643db
Blackberry buildfix.
2014-12-13 19:38:04 -08:00
Henrik Rydgard
32a452d671
Blackberry buildfix, added a commen this time..
2014-12-13 22:14:53 +01:00
Henrik Rydgard
5de011fe95
Again, sigh..
2014-12-13 21:53:28 +01:00
Henrik Rydgard
db5478135b
Typo fix
2014-12-13 21:26:13 +01:00
Henrik Rydgard
05a8e2e35d
Some work towards being able to build two JITs together
...
This will be useful for testing/debugging, but not there yet.
2014-12-13 21:13:54 +01:00
Henrik Rydgard
8ad1ea4c84
Split JitCommon.h so that you can include it without getting the "NativeJit" definition
2014-12-13 21:13:28 +01:00
Henrik Rydgård
5ae4cc8959
x86: Turn VFPU SIMD off again. See #7173 and #7174
2014-12-13 13:35:29 +01:00
Henrik Rydgard
75a9420b21
Reduce the number of places we include JitCommon.h. Update native.
2014-12-12 23:49:08 +01:00
daniel229
eee73607b5
Another replace frame download in Ore no Imouto ga Konnani Kawaii Wake ga Nai
2014-12-11 11:13:59 +08:00
Unknown W. Brackets
afc779a824
jit: Add IN_RT to lwl/lwr and re-enable clobbering.
2014-12-08 21:17:01 -08:00
Lioncash
cac632424c
Core: Add missing override specifiers
2014-12-08 15:20:31 -05:00
Unknown W. Brackets
bfe5f9276e
jit: Re-disable clobbered thing.
...
No idea what's wrong...
2014-12-08 02:06:25 -08:00
Unknown W. Brackets
7734a4c912
jit: Re-enable clobbering with movz/movn support.
...
Oops, these should be the only ones that take rd "in".
2014-12-08 01:29:41 -08:00
Unknown W. Brackets
119c1ef83e
jit: Disable clobber detection for now.
...
Should still spill better. Something is wrong with flags detection, a
clobber to rd is incorrectly discarding outside a delay slot. Don't have
time now to look into it further.
2014-12-08 01:24:17 -08:00
Unknown W. Brackets
f817d49dfb
jit: Discard clobbered registers on spill.
...
If we're spilling anyway, discard rather than saving.
2014-12-07 23:08:21 -08:00
Unknown W. Brackets
f6531a74e1
Don't allow clobbering in a likely delay slot.
...
Since, we don't know which path it will take. Also, don't clobber when
it's the delay slot of the instruction in question - this was a tricky
case.
2014-12-07 23:04:05 -08:00
Unknown W. Brackets
eeff110c0f
jit: Improve and unify GPR spill logic.
...
Now the same logic on x86 and ARM, and handles HI/LO/etc. better.
2014-12-07 21:10:28 -08:00