Nekotekina
0c034ad7de
PPU LLVM: upgrade to GHC call conv
...
Get rid of some global variables.
Implement ppu_escape (unused yet).
Bump PPU cache version to v4.
2021-02-01 11:30:50 +03:00
Nekotekina
aeeceb7d0b
Minor fixups
2021-02-01 11:30:50 +03:00
Nekotekina
d5f16ce272
PPU Analyser: better constraints for SPRX
2021-02-01 11:30:50 +03:00
Nekotekina
c89362f6a2
PPU LLVM: don't use module name as PRX indicator
2021-02-01 11:30:50 +03:00
Nekotekina
8a029159cd
PPU Analyser: compile certain functions on per-instruction basis
...
PPU LLVM: optimize small blocks
2021-02-01 11:30:50 +03:00
Nekotekina
891ebd0cb1
PPU Analyser: use reloc info (disabled for now)
...
Add blocks from relocations.
2021-02-01 11:30:50 +03:00
Nekotekina
382509d778
PPU LLVM: Implement inline __add_get_ov
2021-02-01 11:30:50 +03:00
Nekotekina
f9ee8978ff
PPU LLVM: improve analyser
...
Compile possibly executable holes between detected functions.
Add unused "PPU LLVM Greedy Mode" option (for future updates).
Add "nounwind" attribute to compiled functions (reduces size).
2021-02-01 11:30:50 +03:00
Eladash
e71c2df39d
Debugger: Add some more shortcut descriptions in F1 helper
2021-02-01 00:21:50 +03:00
Eladash
cfc7865f82
Debugger: Allow to unpause a thread which has been paused by global pause
2021-02-01 00:21:50 +03:00
Nekotekina
cf6606065d
PPU: fix some typos in asm code
2021-01-31 20:00:04 +03:00
Megamouse
9feb92df1b
More informative Error message on Vulkan driver crash
...
The message might not be the only reason, but at least it might help someone like me, who had no idea what he was looking at.
2021-01-31 15:51:21 +01:00
Megamouse
be26810cd7
RSX: Implement set_value for progress dialogs
2021-01-31 15:02:26 +01:00
Megamouse
df79b6c238
RSX: update shader loading dialog at 60 fps
...
Looks much smoother
2021-01-31 15:02:26 +01:00
Eladash
82c86ed2f7
Implement standalone OVL (overlay) loading mode
...
* Allow to load OVL alone.
* Add error checks in ppu_load_exec(), do not crash on error.
* Fix crash on exit from standalone PRX mode, allow kernel explorer to work with it as well for the added OVL mode.
2021-01-31 15:47:05 +03:00
Eladash
9077563dac
Add missing destructor of progress dialog
2021-01-31 12:55:20 +01:00
Eladash
8d15f44b33
Fix ppu progress dialog percentage
2021-01-31 12:55:20 +01:00
Eladash
b3fbada10e
Fix potential crash of progress dialog
2021-01-31 12:55:20 +01:00
Megamouse
31cdd7bdd2
Prevent minor race in Progress Dialog Server
2021-01-31 12:18:32 +03:00
Megamouse
c464e90d5d
Fix stop exit of check_only ppu_initialize
2021-01-31 12:18:32 +03:00
Megamouse
670d2b191c
Minor optimization for check_only ppu_initialize
2021-01-31 12:18:32 +03:00
Megamouse
7bddb87306
Simplify compile threads
2021-01-31 12:18:32 +03:00
Megamouse
2025f02105
Search for more game data directories.
...
Also properly remove duplicate paths
2021-01-31 11:42:33 +03:00
Megamouse
1078626eea
Fix ppu compilation progress dialog
...
We could only increase the value because we completely based the dialog on cellMsgDialog.
This led to an issue where the dialog would increase its maximum and thus decrease the current percentage.
It then couldn't decrease and was stuck on the old percentage.
2021-01-30 21:34:16 +01:00
Eladash
16c6b44f55
Fix #9680 ( #9687 )
...
Fix regression from #9680
2021-01-30 19:05:02 +03:00
Eladash
6b3b06df25
rsx: Set frame limit to auto by default
2021-01-30 16:53:14 +03:00
Eladash
e3b3b0cda7
PPU LLVM: Precompile all executable (PRX, MSELF, overlay) code at startup ( #9680 )
...
* Precompile LLVM cache at startup of games, like the GUI "Create PPU Cache" option.
* Allow OVL (overlay) precompilation as well (used by certain games).
Co-authored-by: Megamouse <studienricky89@googlemail.com>
Co-authored-by: Nekotekina <nekotekina@gmail.com>
2021-01-30 16:08:22 +03:00
Nekotekina
bb2cc196a6
Fixup for preloading SPRX from MSELF
...
Forgot to append the offset.
Forgot to use different loop variable.
2021-01-29 21:26:34 +03:00
Eladash
d3bc96a201
Fix minor issue with usage of STL thread::hardware_concurrency()
2021-01-29 18:23:29 +03:00
Nekotekina
11ba6e45ab
Add MSELF support to SPRX precompilation.
...
Add ppu_precompile() function in PPUThread.cpp
Co-authored-by: Eladash <elad3356p@gmail.com>
2021-01-29 13:34:43 +03:00
Eladash
a742501a4f
Do not account RSX for TSX pauses
2021-01-29 10:31:15 +03:00
Eladash
70346028c5
Fix GCM HLE
...
Oops.
2021-01-29 10:31:15 +03:00
Megamouse
3359458175
Handle missing cases of Emu.BootGame failure
2021-01-28 20:54:27 +01:00
Nekotekina
6784301376
Check for rsx::thread existence in Emu.Stop/Pause/Resume
2021-01-28 20:23:13 +03:00
Megamouse
51d19e7c31
Input: remove debug error
2021-01-28 18:02:23 +01:00
Eladash
0652870204
New RSX Debugger
2021-01-28 17:40:26 +03:00
Nekotekina
67dd6754a6
Seal cereal includes in util/cereal.cpp
2021-01-28 10:48:53 +03:00
Nekotekina
34274ec391
Purge unused typeid() invocations
2021-01-28 10:23:29 +03:00
Eladash
28feea0447
Unfatal Segfaults
2021-01-27 21:54:29 +03:00
Nekotekina
53267e283b
PPU LLVM: implement ppu_finalize
...
Properly free certain compiled PRX/OVL modules (except dev_flash)
2021-01-27 18:03:49 +03:00
Nekotekina
15ed963a29
UI: Add supporters
2021-01-27 14:23:26 +03:00
Nekotekina
c652d0b183
Detect execution access violation
...
Don't try to handle it, treat as fatal.
2021-01-27 11:53:10 +03:00
Nekotekina
22c55cbcfa
Add trace logging to thread_ctrl::set_thread_affinity_mask
2021-01-26 19:59:48 +03:00
Nekotekina
c24d89dd34
Threads: fix typo in emergency_exit (dump useful info)
2021-01-26 19:58:47 +03:00
Nekotekina
f10ea1fb9b
Thread pool: try to fix resetting affinity mask
...
Attempt to address #9657
2021-01-26 16:45:36 +03:00
Nekotekina
eb72cc9f04
Thread pool: reset thread affinity mask
2021-01-25 22:05:38 +03:00
Nekotekina
ee288340b0
Implement thread_ctrl::scoped_priority
...
RAII priority control (+1, or -1)
2021-01-25 21:49:16 +03:00
Nekotekina
a69248299d
SPU: Don't use shm::map_critical in SPU LS allocations
...
Use shm::try_map instead until proper area is found.
2021-01-25 17:45:47 +03:00
Nekotekina
caa83d20f7
vm_native.cpp: implement shm::try_map
...
Treats addr as a hint, emulating windows behaviour.
2021-01-25 16:55:19 +03:00
Malcolm Jestadt
486d48e4f8
SPU LLVM: Optimize ROTQBY family for VBMI
...
- Avoid masking pshufb index by 0xf by using vpermb instead.
- Also fix conversion of vperm2b index to ShuffleVector index.
2021-01-25 13:18:23 +03:00