Bugfix after #12523

This commit is contained in:
Eladash 2022-08-22 17:48:45 +03:00 committed by Ivan
parent ee87fdc869
commit 9d8f4d5cfa

View File

@ -2821,8 +2821,13 @@ bool spu_thread::do_putllc(const spu_mfc_cmd& args)
if (cmp_rdata(to_write, rdata))
{
// Writeback of unchanged data. Only check memory change
if (cmp_rdata(rdata, vm::_ref<spu_rdata_t>(addr)) && res.compare_and_swap_test(rtime, rtime + 128))
{
raddr = 0; // Disable notification
return cmp_rdata(rdata, vm::_ref<spu_rdata_t>(addr)) && res.compare_and_swap_test(rtime, rtime + 128);
return true;
}
return false;
}
auto [_oldd, _ok] = res.fetch_op([&](u64& r)