Henrik Rydgård
|
e0cc126d09
|
Add some more SIMD support to IR interpreter. Mostly just because, but also serves as implementation reference for later code generation backends.
|
2018-01-04 18:27:19 +01:00 |
|
Henrik Rydgård
|
a128624f98
|
IRInterpreter: Fix bugs in floating point truncation functions
|
2018-01-04 18:25:54 +01:00 |
|
Henrik Rydgård
|
1a97f62dc9
|
Fix running the CPU test from the UI.
|
2018-01-04 18:10:41 +01:00 |
|
Henrik Rydgård
|
468b830bec
|
Show IR disassembly in JIT Compare screen
|
2018-01-04 12:23:23 +01:00 |
|
Henrik Rydgård
|
604b3c3e97
|
IR Interpreter: Add missing break; to switch case IROp::FSign.
|
2018-01-04 11:08:56 +01:00 |
|
Unknown W. Brackets
|
bc541bd020
|
irjit: Encode downcount directly as a constant.
Simpler this way, now.
|
2018-01-03 23:32:31 -08:00 |
|
Unknown W. Brackets
|
cffb2d61a7
|
irjit: Embed constant inside IRInst.
This simplifies a bunch of code and improves compile performance by about
30%, at the cost of a bit more memory.
|
2018-01-03 23:24:04 -08:00 |
|
Unknown W. Brackets
|
64b57a0329
|
irjit: Fix swr typo.
Shifting the wrong direction - oops.
|
2018-01-03 08:14:25 -08:00 |
|
Henrik Rydgård
|
3ac2350ad6
|
IR Interpreter: Add a comment, minor cleanup, minor SSE stuff.
|
2018-01-03 16:31:55 +01:00 |
|
Unknown W. Brackets
|
b11858d9a0
|
irjit: Properly account for delay slots in size.
Otherwise we think blocks are 4 bytes too short, which can affect
invalidation.
|
2018-01-01 22:54:40 -08:00 |
|
Unknown W. Brackets
|
3abcc4d6d8
|
irjit: Implement lwl/lwr/swl/swr.
This is very similar to the arm64jit implementation.
|
2018-01-01 08:38:13 -08:00 |
|
Unknown W. Brackets
|
b37ba9e599
|
irjit: Add options for compile/optimize steps.
This way the backend can set flags for the type of IR it wants. It's
seems too complex to combine certain things like lwl/lwr in a pass.
|
2018-01-01 08:38:12 -08:00 |
|
Unknown W. Brackets
|
671be24105
|
irjit: Add extra temps to make lwl/swl/etc. easier.
|
2018-01-01 08:38:11 -08:00 |
|
Unknown W. Brackets
|
905d2c2da6
|
irjit: Cleanup some invalid op handling.
And log blocks the same way as other backends.
|
2018-01-01 08:38:11 -08:00 |
|
Unknown W. Brackets
|
8ffb0101fe
|
jit: Report blocks with uneaten VFPU prefixes.
There may be options to avoid, like continuing these blocks, especially if
they're likely or something.
|
2018-01-01 08:38:10 -08:00 |
|
Unknown W. Brackets
|
3af78883c7
|
irjit: Speed up icache block invalidation.
Turns out, in games using a ton of small memcpys, this was causing perf
issues.
|
2017-12-31 10:37:09 -08:00 |
|
Unknown W. Brackets
|
8c2edd432b
|
irjit: Allow continuing from mips break.
Some games currently generate break instructions, and can be played
otherwise. Should be fixed, but let's not hard crash.
|
2017-12-25 10:21:22 -08:00 |
|
Henrik Rydgård
|
0207739d76
|
Can't call functions through known-nil pointers, even if they don't touch local data - LLVM's optimizer might have done something stupid.
|
2017-11-30 01:07:03 +01:00 |
|
Henrik Rydgård
|
22e65ba80d
|
Get rid of ugly alignment macros and some other cruft, we now have alignas(16) from C++11
|
2017-08-31 01:14:51 +02:00 |
|
Unknown W. Brackets
|
33b073c545
|
Jit: Fix syscall outside delay slot.
Doesn't happen in real games, but useful in debug code.
|
2017-06-04 10:39:01 -07:00 |
|
Unknown W. Brackets
|
b483444fab
|
IR: Cleanup some invalid ops.
|
2017-04-20 21:11:40 -07:00 |
|
Henrik Rydgard
|
b0bd7e3c6f
|
Minor changes for compatibility with VS2017
|
2017-03-12 17:33:00 +01:00 |
|
Henrik Rydgård
|
635b2ada43
|
Remove a function that didn't make a lot of sense.
|
2017-01-26 09:50:16 +01:00 |
|
Henrik Rydgard
|
5d5f10d956
|
Attempts to counter crashes seen in the Google Play developer console
|
2016-12-01 22:07:03 +01:00 |
|
Florent Castelli
|
4145b60a0e
|
symbian: Remove!
|
2016-10-11 18:49:08 +02:00 |
|