Unknown W. Brackets
6bd31ecb27
jit-ir: Flush consts better for a few f/v ops.
2016-05-08 21:37:46 -07:00
Unknown W. Brackets
5221a02db4
jit-ir: Propagate constants for shifts.
...
This might optimize away an IRTEMP_0 in such cases.
2016-05-08 19:11:58 -07:00
Unknown W. Brackets
a1b4b5170c
jit-ir: Propagate constants even for overlaps.
2016-05-08 19:05:39 -07:00
Unknown W. Brackets
a22ff68e9e
jit-ir: Skip flushing when updating PC.
2016-05-08 18:49:00 -07:00
Unknown W. Brackets
d09f3a22a8
jit-ir: Propagate single-op constants.
2016-05-08 16:21:17 -07:00
Unknown W. Brackets
0d7f151167
jit-ir: Add a utility func for applying passes.
2016-05-08 16:08:35 -07:00
Unknown W. Brackets
d19174b52b
jit-ir: Skip const flush on downcount op.
...
This allows discarding more unused constants.
2016-05-08 14:56:43 -07:00
Henrik Rydgard
c7e4658b6d
More constant propagation
2016-05-08 23:25:47 +02:00
Henrik Rydgard
d4480d50fd
jit-ir: Less instructions cause flushing in constant propagation.
2016-05-08 23:25:08 +02:00
Unknown W. Brackets
5dbac165f4
Qt, gcc, and Symbian buildfixes.
2016-05-08 14:10:07 -07:00
Henrik Rydgard
52517ab609
Fix the fix
2016-05-08 22:32:08 +02:00
Henrik Rydgard
ed0a0378d7
Another buildfix
2016-05-08 22:27:20 +02:00
Henrik Rydgard
4e52f613f1
Additional fixes and buildfixes
2016-05-08 22:23:51 +02:00
Henrik Rydgard
f8659b8e1e
Move the IR interpreter out into its own file. Rename it in the UI. First CMake and Android fixes.
2016-05-08 22:06:13 +02:00
Henrik Rydgard
492ea5fac4
Address a bunch of comments, thanks for the review
2016-05-08 21:38:03 +02:00
Henrik Rydgard
3eb5480ade
Initial VFPU
2016-05-08 13:32:22 +02:00
Henrik Rydgard
98113edbd4
More simplify pass
2016-05-08 11:29:11 +02:00
Henrik Rydgard
14df39d7c9
Fix IRTEMP clash bug. Add more cases to the constant propagation pass.
2016-05-08 10:36:37 +02:00
Henrik Rydgard
aae32bd929
ir-jit: Re-enable mult. Fix bvf/bvt
2016-05-08 02:47:19 +02:00
Henrik Rydgard
46e839b2b2
ir-jit: Fix bugs in rounding
2016-05-08 02:26:36 +02:00
Henrik Rydgard
e750987052
ir-jit: Fix bug in ext
2016-05-08 02:09:01 +02:00
Henrik Rydgard
7d4774db4c
Fix wsbw
2016-05-08 02:08:25 +02:00
Henrik Rydgard
1a2edc67d0
Add support for float store/load
2016-05-08 02:03:11 +02:00
Henrik Rydgard
ce8aae5ed1
Make the IRJit core selectable in developer tools
2016-05-08 01:43:27 +02:00
Henrik Rydgard
09969c0156
Use the regcache in a new (incomplete) pass, PropagateConstants.
2016-05-08 01:06:07 +02:00
Henrik Rydgard
a33f8b68c6
ir-jit: Get rid of the regcache. Should be replaced with optimization passes.
2016-05-07 23:12:53 +02:00
Henrik Rydgard
750d520cc7
Initial work on mult and friends. Fix another bug.
2016-05-07 22:27:58 +02:00
Henrik Rydgard
3c5510e5a3
Disable debug file logging, fix issue with replacement functions, etc
2016-05-07 21:35:12 +02:00
Henrik Rydgard
38b7d89dfb
Fix a performance issue in CallSyscall
2016-05-07 21:34:27 +02:00
Henrik Rydgard
12edfcea5a
Enough to run cpu_alu.prx.
2016-05-07 21:00:30 +02:00
Henrik Rydgard
4acf85aa06
It's kind of starting to run
2016-05-07 17:37:19 +02:00
Henrik Rydgard
d399c4a470
Initial commit for IRJit
2016-05-07 13:58:29 +02:00
Henrik Rydgard
49a6a2f6cf
Minor refactor - let's not access a global when we don't need to
2016-05-06 21:22:36 +02:00
Henrik Rydgard
a4ca07e683
Hide the Vulkan option on Android until it works.
2016-05-02 17:47:54 -07:00
Unknown W. Brackets
9280bb3eda
Merge pull request #8715 from unknownbrackets/tex-replace
...
Initial texture replacement support
2016-05-01 09:58:16 -07:00
Unknown W. Brackets
2e1986d0c8
Fix a few reorder warnings.
2016-05-01 09:50:03 -07:00
Henrik Rydgård
b6d7aab8dc
Merge pull request #8716 from hrydgard/remove-preprocessor-hacks
...
Remove preprocessor hacks around the JITs
2016-05-01 18:47:59 +02:00
Henrik Rydgard
ccce19e14a
Fix accidentally truncated comment.
2016-05-01 18:47:32 +02:00
Unknown W. Brackets
c30287c4e5
Another buildfix for Qt, linking issue.
...
This is a bit of a hack, but it resolves the linking issue that only
seems to happen in the Qt build system.
2016-05-01 09:17:55 -07:00
Unknown W. Brackets
994d2dd85e
Skip video in replacement saving by default.
2016-05-01 08:58:14 -07:00
Unknown W. Brackets
c20075b0e0
Pass video info to texture replacements.
2016-05-01 08:54:43 -07:00
Unknown W. Brackets
f5b93bc6f0
Remove global num videos hack.
2016-05-01 08:53:48 -07:00
Unknown W. Brackets
99d29356d7
Track video addresses in texture cache.
2016-05-01 08:39:18 -07:00
Unknown W. Brackets
329be68f57
Fix error when disabled.
...
We want to return a reference here, so let's always return.
2016-05-01 08:04:15 -07:00
Henrik Rydgård
e91fc59bbe
Merge pull request #8693 from sum2012/pmp-video
...
Temporarily disable PMP video for non-windows
2016-05-01 11:49:55 +02:00
Henrik Rydgard
ffe4c266ef
Add CodeBlockCommon base class to remove further arch-specificity in JitBlockCache
...
Remove unused ArmThunk.
2016-05-01 11:40:00 +02:00
Henrik Rydgard
8b450c8034
Merge NativeJit.cpp/h with JitCommon.cpp/h
2016-05-01 11:39:59 +02:00
Henrik Rydgard
5aadce59a2
Move architecture-specific code out of JitBlockCache
2016-05-01 11:39:58 +02:00
Henrik Rydgard
a5be0976bd
Remove preprocessor hacks to choose JIT implementation.
...
Opens up for having multiple JIT implementations available at runtime,
which could be use for experimenting with new JIT compiler types or for
unit testing one JIT on another architecture.
Very few of the newly virtual calls are on any sort of critical path so
hopefully there will not be a performance loss.
2016-05-01 11:39:53 +02:00
Henrik Rydgard
106a7d6a3b
Remove more unused code (advanceCallback)
2016-05-01 11:35:16 +02:00