Elad
0fcb15ab18
SPU: Revert 49abd6d8e5
2026-07-18 04:05:46 +03:00
Elad
1d657c4e63
Skip
2026-07-17 22:04:57 +03:00
Elad
5d62ee4b42
Fix possible multi-platform race-condition (depending on kernel)
...
As well as remove another pthread_self call.
2026-07-17 22:04:57 +03:00
Elad
4e49c5319d
Avoid using pthread_self() partially
2026-07-17 22:04:57 +03:00
Elad
6f0e78b6b5
SPU LLVM: Avoid raw pointers
2026-07-17 22:04:57 +03:00
Elad
b35e4434aa
SPU: LLVM: Add spu_thread::state check in Reduced Loop
2026-07-17 22:04:57 +03:00
Elad
21d5336753
SPU LLVM: Disable NaN rulling-out in Reduced Loop on ARM64
2026-07-17 22:04:57 +03:00
Elad
4e2839f3d3
SPU: Fix ppu_check_patch_spu_images
2026-07-17 22:04:57 +03:00
Elad
45a1da2d89
Disable trap on MacOs
2026-07-17 22:04:57 +03:00
Elad
8cc37e036d
SPU: Extend LS memory mirrors
2026-07-17 22:04:57 +03:00
Elad
9bf67f0312
SPU LLVM: Discourage memory mirrors use on LQD/STQD
2026-07-17 22:04:57 +03:00
Elad
e9f833a2e8
PPU LLVM: Accelerate NJ handling in FTZ environment
2026-07-17 12:23:54 +03:00
Elad
49b0306b1d
sys_fs: Secure ENOTDIR for sys_fs_stat
2026-07-14 23:22:41 +03:00
Elad
217769d801
sys_fs: Fix ENOTDIR check for paths ending with /dot or /dotdot
...
They must be directories, even file-path/dot points to itself.
2026-07-14 23:22:41 +03:00
Elad
9d9f210ddb
sys_fs: Debug validation layer for ENOTDIR detector
2026-07-14 23:22:41 +03:00
Elad
2f7b8a7149
Fix sys_rsx_context_iomap error check
2026-07-14 13:00:58 +03:00
Elad
2cacaa2da4
IDM: Optimize IDs for concurrency
2026-07-14 13:00:58 +03:00
Elad
88f81381e8
MacOS/Thread.cpp: Attempt recovery if pthread_jit_write_protect_np state is invalid
2026-07-01 19:31:41 +03:00
Elad
5bbce42adc
MacOS: Do not leak MAP_JIT on utils::memory_decommit
2026-07-01 19:31:41 +03:00
Elad
9dc9730898
vm: Make vm::g_exec_addr not use MAP_JIT
2026-07-01 19:31:41 +03:00
Elad
11b57268e3
PPU LLVM/MacOs: Fix symbol resolver execution
...
Breakdown into relocation and exuection steps, fixing MAP_JIT region interaction
2026-07-01 19:31:41 +03:00
Elad
95c04556f0
Add some logging
2026-07-01 19:31:41 +03:00
Elad
99d15190e5
PPU: Cleanup MacOs executable write protection guards
2026-07-01 19:31:41 +03:00
Elad
60c9705a7d
sysinfo.cpp: Relax TSC calibration constraints
2026-07-01 15:19:31 +03:00
Elad
537ad399bb
Utilities/sema.cpp: Minor optimization
2026-07-01 12:52:13 +03:00
Elad
24a1576629
PPU LLVM: Recycle current thread for exxecution
...
Prevent invoking more than utils::get_max_threads() active thrreads at a time.
Windows sees more than utils::get_max_threads() active threads as potentially malicious behavior and lowers the program's overall CPU time.
2026-07-01 12:52:13 +03:00
Elad
f05ece47ce
PPU LLVM: Fix concurrrency weakness of jit_module_manager
2026-07-01 12:52:13 +03:00
Elad and Megamouse
b90eef3fa7
PPU LLVM: Fix core_lock locking
...
Co-Authored-By: Megamouse <23019877+Megamouse@users.noreply.github.com >
2026-07-01 12:52:13 +03:00
Elad
73d9f34907
cellSysmodule: compilation fix
2026-07-01 12:52:13 +03:00
Elad
5b41d5880d
SPU Precompilation: Add support for unaligned segments
2026-06-29 19:06:48 +03:00
Elad
c1263eeb79
sys_rsx: Fix IOMAP syscalls argument types
2026-06-17 13:25:59 +03:00
Elad
1492d647f4
SaveStates: Fix lv2_timer serialization
2026-06-11 20:55:21 +03:00
Elad
e379fba97d
SPU/PPU: Implement PPU reservation priority over SPUs
2026-06-07 23:30:05 +03:00
Elad
57b4687ac2
cellAudio: Fix _mxr000 event queue hack
2026-06-07 19:52:34 +03:00
Elad
ecf77ecef0
Add type-safe idm::last_id() overload
2026-05-31 19:54:10 +03:00
Elad
db474c292f
utils: Make utils::serial::operator T() explicit
2026-05-31 19:54:10 +03:00
Elad
b08e805020
PPU Analyser: Fix possible infinite loop
...
Because of possible overflow.
2026-05-31 19:54:10 +03:00
Elad
d7da6a713b
RawSPU: Implement 16-bit and 8-bit read MMIO
2026-05-20 20:44:24 +03:00
Elad
53d76db753
SPU: More UB fixes
2026-05-14 13:21:23 +03:00
Elad
c860aa2107
SPU Analyzer: Fix initiate_patterns function
2026-05-14 10:42:20 +03:00
Elad
a545fe92a0
SPU: Log Mega SPU programs properly
2026-05-14 10:42:20 +03:00
Elad
ee436307cf
SPU Update
2026-05-14 10:42:20 +03:00
Elad
33016742f1
SPU: Fix CPU usage of spu_channel on BE configuration
2026-05-14 10:42:20 +03:00
Elad
5dd7792c3d
Remove vm_ref.h
2026-05-03 08:03:28 +03:00
Elad
7dce197ec4
sys_spu: Fix sys_isolated_spu_create
2026-04-25 08:16:32 +03:00
Elad
80b6faef10
SPU Analyzer: Add some logging
2026-04-22 09:59:14 +03:00
Elad
7d0df300ea
SPU LLVM: Fix RCHCNT write channel looping
2026-04-22 09:59:14 +03:00
Elad
1ca8ab393a
sys_fs: Fix O_CREATE and O_TRUNC for BDVD
2026-04-21 15:43:41 +03:00
Elad
a7c606c8ac
sys_fs: Add unit tests
2026-04-16 11:04:37 +03:00
Elad
48acbbe4f5
sys_fs: Reimplement path analysis
2026-04-16 11:04:37 +03:00
Elad
aa841ac332
LLVM: Add source location for bitcast error
2026-04-04 01:08:05 +03:00
Elad
ceb2168375
SPU LLVM: Remove debug code
2026-04-04 01:08:05 +03:00
Elad
02eb549208
SPU LLVM: Fix register updates in second block of Reduced Loop
2026-04-03 18:33:07 +03:00
Elad
13de8233b0
SPU Analyzer: Fix register origin for Reduced Loop
2026-04-03 18:33:07 +03:00
Elad
ff4444b18e
Silence cellNetCtlGetInfo
2026-04-03 18:33:07 +03:00
Elad
555ace0955
rsx: Silence Unknown render mode error
2026-04-03 18:33:07 +03:00
Elad
a03a78dbd2
SPU: Verify SPU Reduced loop completability
2026-04-03 18:33:07 +03:00
Elad
ac104a519e
SPU Analyzer: More fix
2026-03-31 21:56:30 +02:00
Elad
bd95c728f0
sys_fs: Implement ENOTDIR
2026-03-31 21:56:30 +02:00
Elad
80f972cd38
SPU Analyzer: Acknowledge unknown targets
2026-03-31 02:12:40 +02:00
Elad
615f416af3
SPU Anlyzer: Verify bitset index
2026-03-31 02:12:40 +02:00
Elad
976cd1ce66
SaveStates: Fix restart after saving
2026-03-27 22:22:40 +03:00
Elad
a4523651c7
RPCS3: Notify RAM shortage, Log current and peak RAM usage
2026-03-27 20:20:29 +03:00
Elad
bb3e2689d4
Thread.cpp: Fix game exit on access violation
...
Fixes game closing in Twisted Metal.
This commit also aloows to debug such states by using cpu_flag::req_exit as a broker
2026-03-26 13:55:00 +02:00
Elad
4ced11e533
SPU Analyzer: Add pure opcode tag
2026-03-26 13:55:00 +02:00
Elad
9a0a5a1735
LLVM: Try to reuse BitCasts
2026-03-26 13:55:00 +02:00
Elad
e83034624b
SPU Debugger: Measure rate of block ran
2026-03-26 13:55:00 +02:00
Elad
619fe7b14e
SPU LLVM: Classify SPU memory and context memory instructions
2026-03-26 13:55:00 +02:00
Elad
37a07ae545
SPU LLVM: Optimize FM, FMA and FCGT in Reduced Loop
2026-03-26 13:55:00 +02:00
Elad
e1eae3ee49
Add floating ppoint hint
2026-03-26 13:55:00 +02:00
Elad
49abd6d8e5
SPU LLVM: Allow the reuse of address from LQX/STQX
2026-03-26 13:55:00 +02:00
Elad
fbdbf8addf
SPU LLVM: CEQHI pattern
2026-03-26 13:55:00 +02:00
Elad
2e4ee9c9b6
SPU LLVM: Implement reduced loop
2026-03-26 13:55:00 +02:00
Elad
a863e94c25
SPU: Detect reduced loop
2026-03-26 13:55:00 +02:00
Elad
fecb53f86c
Fix SaveStates cellDumxPamf regression
2026-03-10 20:13:29 +02:00
Elad
9811e1cc3b
Debugger: Add HW PPU threads view
2026-03-10 20:13:29 +02:00
Elad
234f2b4648
Silence sys_memory_get_user_memory_size
2026-03-10 20:13:29 +02:00
Elad
0f3275ec82
sys_fs: Fixup op_read
2026-02-28 10:58:25 +02:00
Elad
45c6e938a5
SPU LLVM: Expand SPU Profiling to blocks
2026-02-28 10:58:25 +02:00
Elad
1ec3de9e8f
SPU Analyzer: Fix analysis of instructions without regmod
2026-02-28 10:58:25 +02:00
Elad
35ccd63dbc
Win32/File.cpp: Fix fs::file constraints to avoid crashes
2026-02-28 10:58:25 +02:00
Elad
188151fa99
SPU/misc: Remove outdated Instruction statistics
2026-02-28 10:58:25 +02:00
Elad
16b05c930f
Misc: Force define LLVM for IntelliSense
2026-02-28 10:58:25 +02:00
Elad
f39d82f990
SPU: Fix spu_itype::zregmod
2026-02-28 10:58:25 +02:00
Elad
bbd91dad92
SPU DisAsm: Disable unlikely float representations
2026-02-28 10:58:25 +02:00
Elad
cc1b4c8fd1
Fix strcpy_trunc type validation
2026-02-28 10:58:25 +02:00
Elad
df72f4abed
rsx: Fixup get_address() after #18038
2026-01-13 16:14:49 +02:00
Elad
960e2a9ed8
rsx: Make get_address(MAIN) more strict
2026-01-13 15:28:07 +02:00
Elad
57f162c3c4
rsx/nv3089: Fix wrong suggestion
2026-01-13 15:28:07 +02:00
Elad
2d42a4e25b
rsx/gcm: Do not rely on GCM IOMAP table in HLE gcmIoOffsetToAddress
2026-01-13 15:28:07 +02:00
Elad
8f8d468774
rsx/gcm: Fix cellGcmGetTimeStampLocation
2026-01-13 10:53:42 +02:00
Elad
100a402cd8
rsx/nv3089: Fix image_in source line length estimation
2026-01-12 15:33:41 +02:00
Elad
8188c45b9d
Cut sceNpDrmIsAvailable sleep time
2026-01-11 17:03:41 +02:00
Elad
1f731afbd9
sys_fs: Add PPU sleep
2026-01-11 17:03:41 +02:00
Elad
ddfa773675
sys_fs: Optimize split files handling
2025-12-17 12:39:37 +02:00
Elad
e0cdafddb5
SPU Analyzer: Fix missing jump table entries in Mega mode
2025-12-16 23:20:37 +00:00
Elad
812d84e7f4
Util/sync.h: Fix iterator invalidation in futex emulation
2025-12-16 13:08:58 +02:00
Elad
103d580d9a
Fixup futex emulation
...
std::unordered_multimap::find may return any matching element.. unlike equal_range. (code relied on matching the first)
There was also UB there of reference to an element after it has deleted.
2025-12-16 10:41:21 +02:00
Elad
de8552048f
PPU: Prevent repeated notifications
2025-12-16 10:41:21 +02:00
Elad
65cd4deb77
Prevent atomic cache line collisions
2025-12-16 10:41:21 +02:00