Commit Graph

1388 Commits

Author SHA1 Message Date
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
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
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
daniel229
6846e8b140 Replace frame download in Kenka Banchou Bros: Tokyo Battle Royale 2014-12-03 18:44:04 +08:00
Henrik Rydgard
ca8ba9532c x86 jit: Implement vtfm 2014-12-03 01:45:29 +01:00
Henrik Rydgard
1abadef87f Add "resolving" of a few symbols to x86 disassembler 2014-12-02 01:00:11 +01:00
Unknown W. Brackets
48b3a292d7 x86jit: Add more sanity checks. 2014-11-30 17:43:07 -08:00
Unknown W. Brackets
9cfe801075 x86jit: Ensure we don't sequence temps+regs. 2014-11-30 17:42:43 -08:00
Unknown W. Brackets
23e3916a77 x86jit: Fix a stupid typo. 2014-11-30 17:42:02 -08:00
Unknown W. Brackets
515b954670 x86jit: Re-enable vmmov simd. 2014-11-30 13:06:53 -08:00
Unknown W. Brackets
c6b090d82e x86jit: When storing, verify alignment. 2014-11-30 13:06:16 -08:00
Unknown W. Brackets
fbc453b083 x86jit: Oops, here also.
Maybe I should kill these early returns after all..
2014-11-30 12:39:30 -08:00
Unknown W. Brackets
5758102be6 x86jit: Correct handling of temp vregs in VS. 2014-11-30 12:33:06 -08:00
Unknown W. Brackets
750f40e260 x86jit: Oops, forgot to add this back.
MapRegV() will be too dangerous if it locks so do it here.
2014-11-30 11:02:55 -08:00
Henrik Rydgård
2945a1acc1 Merge pull request #7120 from unknownbrackets/jit-simd
x86jit: Add a MAP_NOLOCK flag
2014-11-30 19:43:35 +01:00
Unknown W. Brackets
29e3819437 x86jit: Improve spilling in vf2i.
This should improve which ones we spill on 32 bit at least.
2014-11-30 10:38:58 -08:00
Unknown W. Brackets
0000be1bb2 x86jit: Add a MAP_NOLOCK flag to not lock.
Only for MapRegs*.  And then lock all by default, including
TryMapRegsVS().
2014-11-30 10:36:44 -08:00
Unknown W. Brackets
52cfe4a8a3 x86jit: Avoid MOVSS into self. 2014-11-30 10:35:26 -08:00
Henrik Rydgard
466cdb8ddf x86 Jit: Basic implementation of SIMD vmmul. Can be improved. 2014-11-30 19:27:43 +01:00