Commit graph

357 commits

Author SHA1 Message Date
Nekotekina
8ca33bcb94 SPU ASMJIT v2.0
Use X86Assembler and blocks
2018-04-22 00:06:48 +03:00
Nekotekina
0797164fac SPU: fix possible livelock
The bug affects TSX path
2018-04-07 20:51:21 +03:00
Nekotekina
2b5cf2455f SPU: improve TSX usage
Reduce transaction failure amount
Remove vm::try_to_lock
2018-04-06 21:47:54 +03:00
Nekotekina
d392379c7a Use vm::passive_lock for SPU threads 2018-04-06 15:47:00 +03:00
Nekotekina
e88508b679 SPU: cache barrier/fence masks 2018-04-06 15:47:00 +03:00
Nekotekina
898637f830 Remove mfc_thread
Clear mfc_queue on reset
Improve MFC Proxy a bit
2018-03-31 21:13:12 +03:00
Talkashie
a35bcb131e unimportant teepo fix (#4328)
* ultra teepo fix part 1

* super mega teepo fix part 2
2018-03-24 20:21:50 +04:00
eladash
3426531e38 qt/spu: remove max dma write size setting
This wasn't really used for anything tbh
2018-03-20 02:49:53 +04:00
Nekotekina
76be7d40ac Remove PSP2 2018-02-09 15:24:46 +03:00
scribam
50f2be57f7 Spaces to tabs 2017-12-10 16:48:33 +04:00
Jake
d17093e65b spu: Fix interrupt jump check - also change interrupt variable to atomic bool for ease of setting/checking 2017-12-01 20:29:59 +03:00
Nekotekina
3a08dd7dde RawSPU: implement Prxy_TagStatus_offs
Rollback to immediate MFC transfers
2017-08-31 22:03:47 +03:00
Nekotekina
291ec1eeb2 SPU recompiler: minor optimization 2017-07-20 17:22:09 +03:00
kd-11
99828a8f15 spu: Clean up asmjit - avoid touching the shared db whenever possible
- Gets around the locking issues when fetching from the shared db
2017-07-19 23:28:33 +03:00
kd-11
df7b466656 spu: Speed hacks - Do not starve PPU threads
optionally hint to the OS scheduler to give less attention to SPUs

ui: Add speed 'hacks' as configurable options
2017-05-10 21:50:14 +03:00
Nekotekina
4739eb3601 Reservation fix 2017-03-11 15:48:43 +03:00
Nekotekina
5e3bacbd9b New reservations
Memory system cleanup
sys_memory_get_page_attribute
2017-03-10 15:51:40 +03:00
Nekotekina
d2ddb9882f SPU: IRET, SN event 2017-02-13 16:29:32 +03:00
Oil
1669d0fdbd Minor changes (#2352)
* More initial values for rsx method registers

* Implemented spu decrementer event

* Remove u32 cast
2017-02-07 23:59:59 +03:00
Nekotekina
ec943b38a2 sys_spu... 2017-02-05 02:26:57 +03:00
Nekotekina
6537909fd2 sys_event_queue... 2017-02-04 20:39:04 +03:00
Nekotekina
b21fce4d6f IdManager improved
lv2_obj for kernel objects
Simple lookup (vector)
Another idm API refactoring
2017-01-29 21:37:04 +03:00
Nekotekina
a5a2d43d7c Thread.cpp refinement
Hide thread mutex
Safe notify() method
Other refactoring
2017-01-29 19:52:19 +03:00
Nekotekina
591a6c8671 IdManager improved 2017-01-25 23:29:36 +03:00
Nekotekina
5e0489dcc0 cpu_init removed 2016-08-14 18:07:34 +03:00
Nekotekina
a7e808b35b EXCEPTION macro removed
fmt::throw_exception<> implemented
::narrow improved
Minor fixes
2016-08-08 19:19:32 +03:00
Nekotekina
5a36c57c57 Formatting system improved
`unveil<>` renamed to `fmt_unveil<>`, now packs args to u64 imitating va_args
`bijective...` removed, `cfg::enum_entry` now uses formatting system
`fmt_class_string<>` added, providing type-specific "%s" handler function
Added `fmt::append`, removed `fmt::narrow` (too obscure)
Utilities/cfmt.h: C-style format template function (WIP)
Minor formatting fixes and cleanup
2016-08-04 21:34:00 +03:00
Nekotekina
f8719c1230 PPUThread refactoring
`CallbackManager` removed, added _gcm_intr_thread for cellGcmSys
`PPUThread` renamed to `ppu_thread`, inheritance allowed
Added lightweight command queue for `ppu_thread`
Implemented call stack dump for PPU
`get_current_thread_mutex` removed
`thread_ctrl::spawn`: minor initialization fix
`thread_ctrl::wait_for` added
`named_thread`: some methods added
`cpu_thread::run` added
Some bugs fixes, including SPU channels
2016-07-30 16:35:02 +03:00
Nekotekina
7a921cbdf9 cpu_thread compressed 2016-06-27 16:43:57 +03:00
Nekotekina
e2d82394f6 Cell 2016-05-23 16:22:23 +03:00
John
ce3fdeda5e Replace math macros by function calls from cmath. (#1695) 2016-05-19 19:15:56 +03:00
Ivan
da7472fe81 Optimizations (#1680)
* Optimizations

1) Some headers simplified for better compilation time
2) Some templates simplified for smaller executable size
3) Eliminate std::future to fix compilation for mingw64
4) PKG installation can be cancelled now
5) cellGame fixes
6) XAudio2 fix for mingw64
7) PPUInterpreter bug fixed (Clang)

* any_pod<> implemented

Aliases: any16, any32, any64
rsx::make_command fixed
2016-04-25 13:49:12 +03:00
Ivan
efc8779275 SPU channel optimization (#1675) 2016-04-19 16:04:02 +03:00
Nekotekina
c4e99dbdb2 Partial commit: Cell 2016-04-15 19:22:34 +03:00
Nekotekina
ca6783ba9a Threads improved, ID manager improved 2015-12-04 23:37:34 +03:00
Nekotekina
a974ee009e vm::var improved, cleanup
Mostly vm::var initialization introduced.
Added vm::make_var function.
2015-10-14 18:17:37 +03:00
Nekotekina
8ae3401ffa Some things improved
shared_mutex_t implemented
GUI Emu Callbacks rewritten
fxm::import, fxm::import_always implemented
cellMsgDialog rewritten
Emu.CallAfter improved (returns std::future)
2015-09-22 16:48:21 +03:00
Nekotekina
7e01c81154 SPU Recompiler fixed 2015-09-07 00:36:32 +03:00
Nekotekina
817fec9684 SPU Cleanup
SPURecompiler improved
Old SPU decoder removed
SPU Interpreters merged
2015-09-02 00:38:44 +03:00
Nekotekina
ce494f8847 fmt::by_value, fmt::Format removed 2015-08-24 21:22:42 +03:00
Nekotekina
eb63558c6d KernelExplorer improved 2015-08-24 21:22:34 +03:00
Nekotekina
6f3c50eba2 u128 renamed to v128
Since it's vector union type
2015-08-24 21:22:23 +03:00
Danila Malyutin
5ae6586803 Add missing override specifiers 2015-07-26 18:37:14 +03:00
Nekotekina
2f7fe35f5c Minor style change 2015-07-21 23:14:31 +03:00
Nekotekina
8175630619 sys_cond/sys_mutex improved 2015-07-21 23:14:29 +03:00
Nekotekina
43d3ccce95 SPU Channels improved 2015-07-21 23:14:28 +03:00
Nekotekina
5bd83516ba SPU Interrupt Enable Status implemented
SPU Interrupts are still NOT implemented
2015-07-21 23:14:25 +03:00
Nekotekina
a7668ff57f SPU_EVENT_LR improved 2015-07-21 23:14:22 +03:00
Nekotekina
a8fcf71f9c Minor bugfix, cleanup 2015-07-21 23:14:04 +03:00
Nekotekina
3bc6c53eb3 sys_interrupt improved 2015-07-18 03:12:10 +03:00