Unknown W. Brackets
601bf344c1
x86jit: Implement vdot.
2023-08-25 00:01:03 -07:00
Unknown W. Brackets
bfb8df8472
x86jit: Implement fneg/abs.
2023-08-25 00:01:02 -07:00
Unknown W. Brackets
004c35cf76
x86jit: Implement syscalls and some system.
2023-08-25 00:01:02 -07:00
Unknown W. Brackets
2fbdc42a5c
x86jit: Reduce code a bit in SETcc paths.
2023-08-25 00:00:35 -07:00
Unknown W. Brackets
e2c6011906
x86jit: Implement VFPU Fcmp.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
00155790d6
x86jit: Add some notes for vector calls.
...
Let's avoid the thunks to be more similar to other backends.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
ef93b7547e
x86jit: Add vmin/vmax.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
931c84f835
x86jit: Implement FCmp.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
d86f6ae618
x86jit: Implement set less thans.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
5473a5c698
x86jit: Add low MapWithFlags for Ext8to32.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
0b1953e5fd
x86jit: Handle more Vec4 ops, some related.
2023-08-23 22:17:50 -07:00
Henrik Rydgård
77355a1568
Merge pull request #17954 from unknownbrackets/x86-jit-ir
...
x86jit: Fix Ext8to32/Ext16to32, some reg issues
2023-08-23 08:50:02 +02:00
Unknown W. Brackets
a1bddd880d
x86jit: Fix sign extension.
2023-08-22 23:29:13 -07:00
Unknown W. Brackets
74e5e43fdc
jit: Skip known prefix writes.
...
If we already know what's in memory and it's default, we can skip
overwriting with default values. This is common, actually.
2023-08-22 23:26:31 -07:00
Henrik Rydgård
6a3840d9b6
Implement bswap just because
2023-08-22 16:18:03 +02:00
Henrik Rydgård
7384d3d49f
Debug mode buildfix
2023-08-22 16:15:07 +02:00
Henrik Rydgård
c5a076487e
Disable extends on x86-32
2023-08-22 16:09:45 +02:00
Henrik Rydgård
b67741509c
Implement a few ALU ops in the x86 JIT-from-IR.
2023-08-22 16:08:12 +02:00
Unknown W. Brackets
11c40e6889
x86: Implement a few basic float/vec4 ops.
2023-08-22 10:39:46 +02:00
Unknown W. Brackets
521b63dd2b
x86jit: Implement FMul.
2023-08-22 10:39:46 +02:00
Unknown W. Brackets
edcb156897
x86jit: Add Vec4 and Float load/store.
2023-08-22 10:39:46 +02:00
Unknown W. Brackets
07fa1ed573
x86jit: Automatically flush incompatible regs.
2023-08-21 21:16:54 -07:00
Unknown W. Brackets
55654f52b2
x86jit: Fix Store8 on i386.
...
Require an 8-bit capable register in mapping.
2023-08-21 21:05:51 -07:00
Unknown W. Brackets
db34b85107
irjit: Allow flag-based allocation order.
...
Sometimes backends have needs, like XMM0/v0-only, or similar.
2023-08-21 20:46:05 -07:00
Unknown W. Brackets
bea74ba162
x86jit: Avoid negative offset warning.
2023-08-21 20:38:56 -07:00
Unknown W. Brackets
1ccc2d5d2f
x86jit: Fix address offsets with memview mask.
2023-08-21 09:03:10 -07:00
Unknown W. Brackets
40b3ff9573
x86jit: Fix spill issue.
2023-08-21 08:23:58 -07:00
Unknown W. Brackets
538832940a
x86jit: Implement some shifts.
2023-08-21 00:07:42 -07:00
Unknown W. Brackets
2b914046ff
x86jit: Implement most exits.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
104b6d8c15
x86jit: Implement some basic arithmetic.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
08ea31f405
x86jit: Improve debug disasm.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
4e7f8cf213
x86jit: Implement load/store.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
a47b4424e5
x86jit: Fix some silly mistakes.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
4e3f3860f9
x86jit: Stub out op categories to files.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
c491f701ba
x86jit: Add initial IR-based jit backend.
...
It works, but pretty slow in some parts with everything stubbed.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
2b36e0a625
irjit: ZeroFpCond -> FpCondFromReg.
...
We already have a zero reg, so this is more useful and symmetrical.
2023-08-13 10:40:47 -07:00
Unknown W. Brackets
9a8ac1fe08
x86jit: Implement ll/sc.
...
The point here is that breakpoints now work for ll and sc.
2023-07-29 18:49:45 -07:00
Unknown W. Brackets
df2462b1d9
irjit: Implement ll/sc.
...
These occur more than I expected in LittleBigPlanet while loading.
2023-07-29 17:57:44 -07:00
Henrik Rydgård
4a4cd3d977
Add logging when loading a save state that has "unknown-prefix-mode" set
2023-06-14 10:23:23 +02:00
Henrik Rydgård
9db9fec898
VFPU: Some micro-optimizations. Don't fall back to interpreter path for vexp/vlog/vrexp.
2023-06-04 11:28:33 +02:00
Henrik Rydgård
67a35d3476
Merge pull request #17356 from unknownbrackets/minor-cleanup
...
Cleanup some more string formats, mostly in debugger
2023-05-23 08:29:23 +02:00
Unknown W. Brackets
87217053ef
Debugger: Correct PC if replacement breaks.
...
If a memory breakpoint hits within a replacement (like memcpy, memset) we
would previously move PC back to the jal in cases, which would break
things if you tried to resume.
2023-05-06 13:40:01 -07:00
Unknown W. Brackets
46101581c0
Core: Cleanup disasm buffer usage.
2023-04-29 09:07:25 -07:00
Unknown W. Brackets
129700596f
x86jit: Correct wrong PC after bad mem access.
2023-04-16 19:11:20 -07:00
Unknown W. Brackets
0f5859510e
x86jit: Simplify memcheck handling.
...
Now it's mostly the same as the other jits.
2023-04-12 01:07:48 -07:00
Unknown W. Brackets
142707ccf3
x86jit: Reduce memory breakpoint codegen.
...
Was generating a lot of code and, in some games, burning through the jit
cache causing constant recompilation with just a few breakpoints.
2023-04-05 17:14:51 -07:00
Henrik Rydgård
d586ec0d5e
Don't create Host objects except in headless/unittest
2023-03-25 10:47:01 +01:00
Henrik Rydgård
718cb9ee4a
Reorder savestates to put memory before CoreTiming.
...
Also, don't clear the JIT for rounding after saving, only after loading.
2023-02-14 16:43:22 +01:00
Unknown W. Brackets
a7b7bf7826
Global: Set many read-only params as const.
...
This makes what they do and which args to use clearer, if nothing else.
2022-12-10 21:13:36 -08:00
Unknown W. Brackets
f44852bb18
Global: Cleanup virtual/override specifiers.
...
Also missing virtual destructors, hidden non-overrides, etc.
2022-12-10 21:13:36 -08:00