mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-03-30 07:20:13 +00:00
SPU: Remove inaccurate GETLLAR option
This commit is contained in:
parent
55ed95b42c
commit
ac5d907002
@ -4430,7 +4430,7 @@ bool spu_thread::process_mfc_cmd()
|
||||
// Need to check twice for it to be accurate, the code is before and not after this check for:
|
||||
// 1. Reduce time between reservation accesses so TSX panelty would be lowered
|
||||
// 2. Increase the chance of change detection: if GETLLAR has been called again new data is probably wanted
|
||||
if (rtime == vm::reservation_acquire(addr) && (!g_cfg.core.spu_accurate_getllar || cmp_rdata(rdata, data)))
|
||||
if (rtime == vm::reservation_acquire(addr) && cmp_rdata(rdata, data))
|
||||
{
|
||||
if ([&]() -> bool
|
||||
{
|
||||
@ -4607,7 +4607,7 @@ bool spu_thread::process_mfc_cmd()
|
||||
continue;
|
||||
}
|
||||
|
||||
if (g_cfg.core.spu_accurate_getllar && !cmp_rdata(rdata, data))
|
||||
if (!cmp_rdata(rdata, data))
|
||||
{
|
||||
i += 2;
|
||||
continue;
|
||||
|
@ -41,7 +41,6 @@ struct cfg_root : cfg::node
|
||||
cfg::_bool spu_loop_detection{ this, "SPU loop detection", false }; // Try to detect wait loops and trigger thread yield
|
||||
cfg::_int<0, 6> max_spurs_threads{ this, "Max SPURS Threads", 6 }; // HACK. If less then 6, max number of running SPURS threads in each thread group.
|
||||
cfg::_enum<spu_block_size_type> spu_block_size{ this, "SPU Block Size", spu_block_size_type::safe };
|
||||
cfg::_bool spu_accurate_getllar{ this, "Accurate GETLLAR", false, true };
|
||||
cfg::_bool spu_accurate_dma{ this, "Accurate SPU DMA", false };
|
||||
cfg::_bool spu_accurate_reservations{ this, "Accurate SPU Reservations", true };
|
||||
cfg::_bool accurate_cache_line_stores{ this, "Accurate Cache Line Stores", false };
|
||||
|
@ -21,7 +21,6 @@ enum class emu_settings_type
|
||||
MaxLLVMThreads,
|
||||
LLVMPrecompilation,
|
||||
EnableTSX,
|
||||
AccurateGETLLAR,
|
||||
AccurateSpuDMA,
|
||||
AccurateClineStores,
|
||||
AccurateRSXAccess,
|
||||
@ -213,7 +212,6 @@ inline static const QMap<emu_settings_type, cfg_location> settings_location =
|
||||
{ emu_settings_type::MaxLLVMThreads, { "Core", "Max LLVM Compile Threads"}},
|
||||
{ emu_settings_type::LLVMPrecompilation, { "Core", "LLVM Precompilation"}},
|
||||
{ emu_settings_type::EnableTSX, { "Core", "Enable TSX"}},
|
||||
{ emu_settings_type::AccurateGETLLAR, { "Core", "Accurate GETLLAR"}},
|
||||
{ emu_settings_type::AccurateSpuDMA, { "Core", "Accurate SPU DMA"}},
|
||||
{ emu_settings_type::AccurateClineStores, { "Core", "Accurate Cache Line Stores"}},
|
||||
{ emu_settings_type::AccurateRSXAccess, { "Core", "Accurate RSX reservation access"}},
|
||||
|
@ -1461,9 +1461,6 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> gui_settings, std
|
||||
SubscribeTooltip(ui->accurateDFMA, tooltips.settings.accurate_dfma);
|
||||
ui->accurateDFMA->setDisabled(utils::has_fma3() || utils::has_fma4());
|
||||
|
||||
m_emu_settings->EnhanceCheckBox(ui->accurateGETLLAR, emu_settings_type::AccurateGETLLAR);
|
||||
SubscribeTooltip(ui->accurateGETLLAR, tooltips.settings.accurate_getllar);
|
||||
|
||||
m_emu_settings->EnhanceCheckBox(ui->accurateRSXAccess, emu_settings_type::AccurateRSXAccess);
|
||||
SubscribeTooltip(ui->accurateRSXAccess, tooltips.settings.accurate_rsx_access);
|
||||
|
||||
|
@ -2389,13 +2389,6 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="accurateGETLLAR">
|
||||
<property name="text">
|
||||
<string>Accurate GETLLAR</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="accurateRSXAccess">
|
||||
<property name="text">
|
||||
|
@ -26,7 +26,6 @@ public:
|
||||
const QString lib_default_lle = tr("Select to HLE. (LLE by default)");
|
||||
|
||||
const QString debug_console_mode = tr("Increases the amount of usable system memory to match a DECR console and more.\nCauses some software to behave differently than on retail hardware.");
|
||||
const QString accurate_getllar = tr("Accurately processes SPU MFC_GETLLAR operation.");
|
||||
const QString accurate_rsx_access = tr("Forces RSX pauses on SPU MFC_GETLLAR and SPU MFC_PUTLLUC operations.");
|
||||
const QString accurate_spu_dma = tr("Accurately processes SPU DMA operations.");
|
||||
const QString fixup_ppunj = tr("Legacy option. Fixup result vector values in Non-Java Mode in PPU LLVM.\nIf unsure, do not modify this setting.");
|
||||
|
Loading…
x
Reference in New Issue
Block a user