mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-14 10:48:36 +12:00
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
This commit is contained in:
parent
75fe95eeb1
commit
da7472fe81
96 changed files with 2086 additions and 1772 deletions
|
@ -14,15 +14,14 @@ void lv2_int_serv_t::join(PPUThread& ppu, lv2_lock_t lv2_lock)
|
|||
{
|
||||
// Use is_joining to stop interrupt thread and signal
|
||||
thread->is_joining = true;
|
||||
|
||||
thread->cv.notify_one();
|
||||
thread->notify();
|
||||
|
||||
// Start joining
|
||||
while (!(thread->state & cpu_state::exit))
|
||||
{
|
||||
CHECK_EMU_STATUS;
|
||||
|
||||
ppu.cv.wait_for(lv2_lock, std::chrono::milliseconds(1));
|
||||
get_current_thread_cv().wait_for(lv2_lock, std::chrono::milliseconds(1));
|
||||
}
|
||||
|
||||
// Cleanup
|
||||
|
@ -122,14 +121,14 @@ s32 _sys_interrupt_thread_establish(vm::ptr<u32> ih, u32 intrtag, u32 intrthread
|
|||
continue;
|
||||
}
|
||||
|
||||
ppu.cv.wait(lv2_lock);
|
||||
get_current_thread_cv().wait(lv2_lock);
|
||||
}
|
||||
|
||||
ppu.state += cpu_state::exit;
|
||||
};
|
||||
|
||||
it->state -= cpu_state::stop;
|
||||
it->safe_notify();
|
||||
it->lock_notify();
|
||||
|
||||
*ih = handler->id;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue