Eladash
72bef8dd7f
PPU: Clear reservation on context switch
...
Ensure that only 2 PPU reservations exist at maximum at a time.
2020-05-02 14:57:38 +03:00
Eladash
0e6937a359
SPU GETLLAR: Don't use loop detection for TSX
2020-05-02 14:57:38 +03:00
Malcolm Jestadt
c1bd154bcd
SPU: Optimize FMA ops with 0 addend
2020-05-01 17:52:10 +03:00
Eladash
2b75df22d9
sys_event_queue: Fix ports disconnection after queue destruction
2020-04-30 18:58:42 +03:00
Eladash
37110098c7
cellAudioOut Improvements
2020-04-30 15:45:20 +03:00
Nekotekina
19acf260d8
SPU DMA: Fix PUTLLUC (TSX)
...
Prevent edge case of missing store.
2020-04-29 15:40:41 +03:00
Eladash
f4f0fb88b1
kernel explorer: Add more information about SPU/PPU threads
2020-04-29 15:32:16 +03:00
Eladash
dd6825a7bd
Fix sys_ppu_thread_start error checking, fix rare bug in sys_ppu_thread_create
...
* Correct error code to EBUSY.
* lv2_obj::awake was called even when EBSUY should be returned.
* Fix sys_ppu_thread_create for a newly created thread with the same id as ppu_thread::id_base. (can happen if main thread exited before its creation)
2020-04-29 08:58:09 +03:00
Eladash
c1dc6838fa
Fix sys_ppu_thread_get_priority page faults
2020-04-29 07:57:47 +03:00
Eladash
69f82a7311
Make spu_mfc_cmd fmt properly show stalled commands
2020-04-29 07:47:49 +03:00
Eladash
791ec95313
sys_rwlock: Do not allow SYS_SYNC_PRIORITY_INHERIT
2020-04-29 05:56:47 +03:00
Eladash
954e3f6e6c
Fixup for cpu_flag::pause state check after #8114
2020-04-29 05:56:47 +03:00
Nekotekina
689419b0ca
Remove test_stopped() check from ppu_load_acquire_reservation
...
Fixes warning.
2020-04-29 00:09:40 +03:00
Eladash
a505d87565
Partial revert of 3be687cd18
2020-04-28 20:20:19 +03:00
Nekotekina
790fd9ce14
SPU DMA: implement cmp_rdata_avx
...
Use technique similar to mov_rdata_avx with inline assembly.
2020-04-28 17:58:26 +03:00
Eladash
7da8ba5c15
Wait for SPU event to be received in sys_spu_thread_group_exit
...
Also use atomic check for group->run_state outside the mutex,
explicitly forbid group termination while we are waiting for an event to be received.
2020-04-28 14:58:17 +03:00
Eladash
a9c18964b6
Add missing cpu state check sys_spu_thread_receive_event
2020-04-28 14:58:17 +03:00
Eladash
fe7933b0d2
Make ESTAT consistent in sys_spu_thread_group_terminate
2020-04-28 14:58:17 +03:00
Eladash
9506676223
SPU debugger: dump Stall Stat and SRR0
2020-04-28 14:27:40 +03:00
Eladash
7d7909149f
SPU: Detect reservation spinning loop
2020-04-28 14:27:40 +03:00
Eladash
3be687cd18
PPU: Fix LWARX/LDARX on TSX path
2020-04-28 14:27:40 +03:00
Eladash
e423128a32
SPU: New GETLLAR technique
2020-04-28 14:27:40 +03:00
Nekotekina
3ec73b651e
SPU DMA: more tuning for mov_rdata_avx
...
Avoid unaligned stores.
Prefer asm path if __AVX2__ is not set.
Don't emit vzeroupper if __AVX__ is set.
2020-04-27 18:05:52 +03:00
Nekotekina
4f71c570bd
SPU DMA: disable memcpy path
...
Due to update of the alternative path (SSE/AVX)
2020-04-26 22:36:55 +03:00
Nekotekina
8ae2554505
Implement mov_rdata_avx
2020-04-26 22:36:45 +03:00
Nekotekina
58ba6d68bb
Don't use std::popcount (workaround)
...
It seems MSVC uses POPCNT instruction when compiling for SSE2.
2020-04-25 18:01:39 +03:00
scribam
3fd3bd7ca1
spu: Add some "if constexpr"
2020-04-25 14:56:47 +03:00
Megamouse
e4cb9ef7cd
cellpad: add pclass_profile flags
2020-04-25 10:17:48 +02:00
Megamouse
4e6d95c5b8
Qt/input/cellpad: enable product choice
2020-04-25 10:17:48 +02:00
Eladash
256c74def2
sys_rsx: Fix error code instead of success on invalid context
2020-04-23 14:01:04 +03:00
Eladash
c48ccc6f3c
sys_rsx: Fix zcull bind error checking regression
2020-04-23 14:01:04 +03:00
Eladash
8c747bf0a2
sys_rsx: More error checks for ZCULL area binding
...
And clamp zcull offset to 256MB, it's unknown if only the error check clamps or it is clamped entirely.
2020-04-21 16:18:32 +01:00
Eladash
dbce10d0e3
PPU LLVM: Fix rounding regression of FNMADDS, FNMSUBS ( #8066 )
...
* PPU LLVM: Fix rounding regression of FNMADDS, FNMSUBS
2020-04-19 20:55:26 +01:00
rxys
5101bc189e
Fix FMA copypasta ( #8060 )
2020-04-19 19:17:19 +01:00
Eladash
5960de2e20
PPUAnalyzer: Check if TOC from OPD is a valid address
2020-04-19 10:56:42 +01:00
Eladash
1cb3bf6dab
Minor fixup for unimplemented syscall args dump
2020-04-19 10:56:42 +01:00
Eladash
0bf73ba0bc
PPU debugger: report functions on registers display
2020-04-19 10:56:42 +01:00
Eladash
368bd7cf02
PPU debugger: read 32-bit pointer instead of 64-bit
...
PPU ABI supports only 32-bit pointers in userland, also fix it to use super ptr.
2020-04-19 10:56:42 +01:00
Eladash
83c7f6f149
debugger: Rephrase "Current function" to "In function"
...
Takes less space which makes actual function name display a bit nicer.
Also the meaning is clearer.
2020-04-19 10:56:42 +01:00
Eladash
6210507a37
sys_rsx: Fix tiles on MAIN memory error checking
2020-04-18 10:20:03 +03:00
Eladash
06d4505992
sceNp: Override k_licensee for PE game category
...
Co-Authored-By: AniLeo <ani-leo@outlook.com>
2020-04-17 11:41:50 +01:00
Eladash
a3f2dfa232
sys_isolated_spu
2020-04-17 11:41:50 +01:00
Eladash
921b1aadfb
lv2: Log all arguments of unimplemented syscalls
2020-04-17 11:41:50 +01:00
Nekotekina
c7fe8567b8
Experimental squashing of reservation memory area.
...
Enables trivial synchronization between shared mem.
Reduces memory usage, but potentially degrades performance.
Rename an overload of vm::passive_lock to vm::range_lock.
2020-04-16 02:25:43 +03:00
Eladash
8cb1f4fe26
liblv2 HLE: Fix spu_elf_info loader for SCE SPU images ( #8045 )
2020-04-15 21:19:46 +01:00
Nekotekina
074b9f94db
Fix regression in SPU ASMJIT
...
Incorrect arithmetics.
2020-04-15 12:19:15 +03:00
Nekotekina
b1b67a13c6
Revert "Replace rotate utils with std::rotl" (partial)
...
This reverts commit 4d8bfe328b .
2020-04-14 19:45:53 +03:00
Eladash
bc3b70c338
Fix ppu_rotate_mask
2020-04-14 19:10:30 +03:00
Eladash
63be05d5d3
minor ppu fixup
...
does not affect anything except consistency.
2020-04-14 17:09:58 +03:00
Eladash
ec1e82bc9d
SPU debugger: Implement blocking functions dumping
2020-04-14 17:09:58 +03:00