33 Commits

Author SHA1 Message Date
Unknown W. Brackets
ccb8f8d77e jit-ir: Fix replacement hooks. 2016-05-09 00:36:38 -07:00
Unknown W. Brackets
f6d245f3c4 jit-ir: Remove redundant simplify pass.
This is just doing the same thing as the const folding pass, really.
2016-05-09 00:13:01 -07:00
Unknown W. Brackets
f638477b9a jit-ir: Add the rest to PropagateConstants.
Just for completeness.
2016-05-08 22:17:39 -07:00
Unknown W. Brackets
7ce923d01f jit-ir: Fix SetConstV.
Oops.
2016-05-08 22:11:53 -07:00
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
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
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