Henrik Rydgård
ba148e5ec7
JIT/IRJit: Delete an old "function preloading" experiment
...
This caused some confusion while trying to debug #20502
2025-06-11 15:45:18 +02:00
Henrik Rydgård
962bd8239d
Remove more excessive error reporting.
2025-03-02 02:28:45 +01:00
Henrik Rydgård
e01ca5b057
Logging API change (refactor) ( #19324 )
...
* Rename LogType to Log
* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.
* Mac/ARM64 buildfix
* Do the same with the hle result log macros
* Rename the log names to mixed case while at it.
* iOS buildfix
* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Unknown W. Brackets
a8edf5fa24
riscv: Reduce bloat in jit fallbacks.
2023-07-25 19:42:04 -07:00
Unknown W. Brackets
bac36df453
x86jit: Refactor and fix jump in branch delay slot.
...
This seems cleaner, instead of the duplication of lines for each branch
type.
2022-09-03 19:58:46 -07:00
Unknown W. Brackets
d08ee44cf4
irjit: Handle branch/jump in branch delay slots.
...
See #15952 for more detail.
2022-09-03 19:05:31 -07:00
Unknown W. Brackets
bc16a55028
jit: Count delay slot cycles separately.
...
This makes it easier to count cycles per instruction, instead of ignoring
the delay slot's instruction for cycle count.
2021-04-12 07:04:22 -07:00
Unknown W. Brackets
5d60fa0d0d
Common: Maintain C++11 support in sign extend.
2021-01-31 08:44:02 -08:00
Unknown W. Brackets
1b00da2f3a
Common: Sign extend w/func not chained casts.
...
Should be clearer to read and easier to get right.
2021-01-31 01:25:52 -08:00
Unknown W. Brackets
e99c69f19e
jit: Be very clear on sign extension.
2021-01-30 11:41:30 -08:00
Unknown W. Brackets
c179cad5c2
jit: Make branch shift more obvious.
...
And also not technically undefined behavior.
2021-01-29 20:53:41 -08:00
Henrik Rydgård
821817e6d4
Move the profiler to Common
2020-10-04 11:42:16 +02:00
Henrik Rydgård
c5e0b799d9
Remove category from _assert_msg_ functions. We don't filter these by category anyway.
...
Fixes the inconsistency where we _assert_ didn't take a category but
_assert_msg_ did.
2020-07-19 20:33:25 +02:00
Unknown W. Brackets
3c34c7c456
irjit: Add jump crash checks.
...
Doesn't seem to have any significant impact on performance.
2020-07-12 22:17:36 -07:00
Unknown W. Brackets
97674b80bd
irjit: Skip preloading blocks with jump to 0.
...
These will be changed before executing anyway.
2018-01-06 17:23:53 -08: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
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
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
7cd666c351
jit-ir: Decrease downcount after delayslot.
...
Except for likely delay slots. This makes breakpoints work more
correctly when they trigger within a delay slot.
2016-07-02 16:35:56 -07:00
Henrik Rydgard
0541fe36df
Symbian buildfix, fix for fpu test
2016-05-14 15:26:43 +02:00
Henrik Rydgard
64eda6a4ec
IR: Split Syscall into Syscall and ExitToPC, so we can put ApplyRoundingMode in between.
2016-05-14 14:32:22 +02:00
Unknown W. Brackets
efc8a8e353
Hack to make Symbian build.
2016-05-13 23:56:17 -07:00
Henrik Rydgard
f636b2a315
Minor build and other fixes
2016-05-13 19:31:27 +02:00
Unknown W. Brackets
066b0b7fdf
jit-ir: Optimize out beql; break; sequences.
...
These are often used following divs, and are harmless. Things get a bit
easier if we just never compile them.
2016-05-13 07:59:39 -07:00
Unknown W. Brackets
29ed8d2201
jit-ir: ExitToReg doesn't write to registers.
2016-05-12 18:34:27 -07:00
Henrik Rydgard
558bb197c7
More VFPU
2016-05-09 23:47:56 +02:00
Henrik Rydgard
e806c369b2
Separate the IR frontend from the IR "Jit"
2016-05-09 19:57:18 +02:00
Unknown W. Brackets
eb6551d72a
jit-ir: Correct downcount handling.
...
Oops, was wrong - already accounted for delay slots. Clear so we don't
double count when emitting a syscall.
Fixes FF4 utility msg flickering.
2016-05-09 01:13:53 -07:00
Henrik Rydgard
492ea5fac4
Address a bunch of comments, thanks for the review
2016-05-08 21:38:03 +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
ce8aae5ed1
Make the IRJit core selectable in developer tools
2016-05-08 01:43:27 +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
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