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
Unknown W. Brackets
487e175cf9
Fix a sign comparison warning.
...
This isn't really negative anyway.
2014-12-07 21:08:03 -08:00
Unknown W. Brackets
9dd6bb56bb
jit: Make available js_ and jo_ in regcaches.
2014-12-07 21:07:23 -08:00
Unknown W. Brackets
58ff826b73
Cleanup to link assembler on arm unittest builds.
2014-12-07 15:41:11 -08:00
Henrik Rydgård
9ea5c8a1c4
Merge pull request #7116 from Kingcom/master
...
Update assembler again
2014-12-08 00:26:39 +01:00
Henrik Rydgård
e46976f08e
Merge pull request #7147 from lioncash/moarconst
...
Mark some functions as const
2014-12-08 00:25:42 +01:00
Henrik Rydgard
50bb3e1e05
Minor fixes
2014-12-08 00:18:13 +01:00
Lioncash
a962bc5a6c
Mark some functions as const
2014-12-07 17:08:13 -05:00
Henrik Rydgard
51d55bd645
Namespacing cleanup (it's bad to do "using namespace" in a header)
2014-12-07 14:44:15 +01:00
Henrik Rydgard
4457dca4c9
Rename the ARM Jit class to ArmJit
2014-12-07 14:25:22 +01:00
Henrik Rydgard
7740caeade
Buildfix the arm emitter test in the unittest.
...
Also do some preparation for being able to have two JITs compiled at the same time
which may be useful in testing parts of the ARM jit on Windows.
2014-12-07 14:12:13 +01:00
Henrik Rydgard
e2f61459d3
ARM Jit: Implement vfad/vavg
2014-12-07 13:02:16 +01:00
Henrik Rydgard
80ce45f9fb
ARM Jit: Join adjacent vrot ops on ARM too
2014-12-07 12:07:54 +01:00
Henrik Rydgard
c2503b1406
ARM jit: Prepare for joining vrot ops
2014-12-07 11:58:19 +01:00
Henrik Rydgard
37413f8119
We can use sincosf again on Android - the bug in the NDK has been fixed.
2014-12-07 11:53:46 +01:00
Henrik Rydgard
4d8db38798
Some more
2014-12-07 00:30:45 +01:00
Henrik Rydgard
ceed0a92c3
Undo some accidental reverts
2014-12-07 00:25:15 +01:00
Henrik Rydgard
ff4746cd17
Merge the rest of the old NEON branch.
2014-12-06 13:14:03 +01:00
Henrik Rydgard
d98bde8e50
Merge the RegCache changes from the old neon-vfpu branch
2014-12-06 12:26:58 +01:00
Henrik Rydgard
29dcc0a303
Minor cleanups, warning fixes
2014-12-06 12:25:28 +01:00
Henrik Rydgard
d46c9c2f74
x86 jit: Minor optimization in vmmul
2014-12-06 11:35:01 +01:00
TwistedUmbrella
3f4d58b0b2
use libc++ for iOS to avoid additional directives
2014-12-05 19:47:02 -05:00
Lioncash
15aa29d178
MIPSAnalyst: Pass strings by const reference.
2014-12-05 13:12:49 -05:00
Henrik Rydgard
ea6371921a
x86 jit: Hack around running out of regs on x86-32 with SIMD
2014-12-04 00:19:08 +01:00
Henrik Rydgard
e3a81f4346
x86 Jit: Basic implementation of vbfy1/2 (mostly to just cross another one off the list..)
2014-12-04 00:18:58 +01:00
Henrik Rydgard
5290ffd929
Minor cleanup in vtfm. Re-enable vrot combination. Optimize vfad/vavg when dpps is available.
...
Also fixes bug in emitter of dpps.
2014-12-03 22:44:32 +01:00