Unknown W. Brackets
3f29b4c713
Merge pull request #18068 from unknownbrackets/arm64jit-shuffle
...
arm64jit: Implement shuffle optimizer
2023-09-05 00:10:08 -07:00
Unknown W. Brackets
d8231ecb17
arm64jit: Implement divide in IR.
2023-09-04 23:38:55 -07:00
Unknown W. Brackets
c272284043
arm64jit: Implement multiplies in IR.
2023-09-04 23:38:55 -07:00
Unknown W. Brackets
17ffc9c261
arm64jit: Special case some shuffles.
...
To avoid 4 instruction shuffles.
2023-09-04 23:37:40 -07:00
Unknown W. Brackets
885ae5c805
arm64jit: Implement shuffle optimizer.
2023-09-04 12:27:39 -07:00
Henrik Rydgård
9690a71a14
Merge pull request #18061 from unknownbrackets/arm64-ir-jit
...
arm64jit: Implement most ALU and load/store in IR jit
2023-09-04 10:02:24 +02:00
Unknown W. Brackets
494aab62fc
Merge pull request #18063 from unknownbrackets/arm64-ir-float
...
arm64jit: Add some initial float and vec4 ops
2023-09-04 00:08:08 -07:00
Unknown W. Brackets
85b80bc9e5
arm64jit: Implement load/store in IR.
2023-09-04 00:04:36 -07:00
Unknown W. Brackets
ccee8e41ee
arm64jit: Implement exits.
2023-09-03 21:16:08 -07:00
Unknown W. Brackets
e02426cbbf
arm64jit: Implement some system ops.
2023-09-03 21:16:08 -07:00
Unknown W. Brackets
0933381b9e
arm64jit: Add some simple vec4 ops.
2023-09-03 21:14:58 -07:00
Unknown W. Brackets
87b9633258
arm64jit: Add some simple float ops.
2023-09-03 21:14:58 -07:00
Unknown W. Brackets
c44f0e1fca
arm64jit: Implement most ALU in IR jit.
2023-09-03 15:30:55 -07:00
Unknown W. Brackets
7607280837
arm64jit: Implement just the most basic ops.
...
This improves the slowness a good bit.
2023-09-03 12:20:16 -07:00
Unknown W. Brackets
1b756ff8c1
arm64jit: Add initial base for IR jit.
...
This works, but very slowly at this point.
2023-09-03 12:14:28 -07:00
Henrik Rydgård
c59e9e51b2
Non-change to see if CI fixes itself..
2023-08-25 12:39:19 +02: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
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
4aa2b1fcac
Merge pull request #17783 from unknownbrackets/riscv-jit
...
Implement float/vec operations in RISC-V jit
2023-07-28 08:38:19 +02:00
Unknown W. Brackets
067a033dc0
riscv: Add FPU regcache.
2023-07-25 20:33:56 -07:00
Unknown W. Brackets
c3db3d5187
arm64jit: When rouding unset, use nearest.
...
The 0/default rounding mode is nearest, not toward zero.
We set hasSetRounding only when fcr31 has a non-zero rounding mode or
flush to zero set.
2023-07-25 20:30:05 -07:00
Unknown W. Brackets
8ee73264bf
riscv: Correct depointerify on FlushAll().
2023-07-23 18:01:00 -07:00
Unknown W. Brackets
47b81985bd
riscv: Initial untested dispatcher.
...
The minimum to actually, probably, running code. Pretty slow.
2023-07-23 18:01:00 -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
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
5b1235537f
Debugger: Make disasm more thread safe.
2023-04-29 09:56:17 -07:00
Unknown W. Brackets
46101581c0
Core: Cleanup disasm buffer usage.
2023-04-29 09:07:25 -07:00
Henrik Rydgård
237c3ce128
Apply the fix to avoid jit clearing for rewind savestates to all platforms
...
Silly oversight made in commit 718cb9e
.
2023-04-16 00:02:16 +02:00
Unknown W. Brackets
6df939034a
Core: Cleanup some sign extensions for clarity.
2023-04-05 17:16:51 -07:00
Unknown W. Brackets
b9fe48f42d
Crash: Lookup block numbers more efficiently.
...
We only care about the first one in these places anyway. Also make sure
we don't try to match an invalid block number.
2022-12-20 21:02:52 -08:00
Unknown W. Brackets
b2798c7ada
jit: Add more reasonable estimates for RX protect.
2022-11-20 10:55:35 -08:00
Unknown W. Brackets
b9de1a44df
jit: Reduce some include pollution.
...
Usually no need for all of MIPSAnalyst.
2022-10-27 23:26:44 -07:00
Unknown W. Brackets
fa5f9d5e74
jit: Consistently check range on invalidate.
...
We did this on x86, we should do it everywhere or nowhere.
2022-10-15 18:30:13 -07:00
Unknown W. Brackets
f75dadd1d6
arm64jit: Handle branch/jump in branch delay slots.
2022-09-03 21:04:54 -07:00
Unknown W. Brackets
80e481bbdc
Core: Show exception on misaligned jump.
2022-08-21 14:49:34 -07:00
Henrik Rydgård
1bbaba4103
Fix some NEON code that had bad compile-time checks (and some didn't compile)
2022-04-15 00:54:44 +02:00
Henrik Rydgård
fdacf751ce
NEON/SSE-optimize some matrix multiplications used by software transform
...
Will hopefully reclaim any potential speed loss from the recent
refactor.
2021-10-31 13:36:34 +01:00
Unknown W. Brackets
52e9856b4b
Debugger: Fix breakpoints on delay slots.
2021-08-23 23:00:30 -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
cae0815095
jit: Avoid using mips identifier directly.
...
Apparently this gets defined on mips systems.
2021-02-26 07:24:58 -08:00
Henrik Rydgård
6df37b86bc
Merge pull request #14076 from unknownbrackets/zhp-map
...
GPU: Force texture invalidation for ZHP minimap
2021-02-15 11:33:32 +01:00
Henrik Rydgård
6b4356a060
Handle exec addr errors better - don't let IgnoreBadMemoryAccesses skip dispatcher exceptions.
...
It would then just fall through into the compiler and die.
Should remove one of the "mystery" crashes from #14082 .
2021-02-09 09:32:38 +01: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
1b596ef82b
Fix/workaround ARM64 with the MASKED_PSP_MEMORY build flag.
2020-11-03 00:20:16 +01:00
Henrik Rydgård
4c034ce988
Make all the Comp_Cache implementations the same.
...
We have the informative comments in the interpreter implementation
anyway.
2020-10-16 09:13:41 +02:00
Henrik Rydgård
821817e6d4
Move the profiler to Common
2020-10-04 11:42:16 +02:00