rsx: tiny zcull optimizations
This commit is contained in:
@@ -1711,8 +1711,7 @@ work_item& GLGSRender::post_flush_request(u32 address, gl::texture_cache::thrash
|
|||||||
{
|
{
|
||||||
std::lock_guard lock(queue_guard);
|
std::lock_guard lock(queue_guard);
|
||||||
|
|
||||||
work_queue.emplace_back();
|
work_item &result = work_queue.emplace_back();
|
||||||
work_item &result = work_queue.back();
|
|
||||||
result.address_to_flush = address;
|
result.address_to_flush = address;
|
||||||
result.section_data = std::move(flush_data);
|
result.section_data = std::move(flush_data);
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@@ -3201,11 +3201,12 @@ namespace rsx
|
|||||||
const auto memory_end = memory_address + memory_range;
|
const auto memory_end = memory_address + memory_range;
|
||||||
u32 sync_address = 0;
|
u32 sync_address = 0;
|
||||||
|
|
||||||
for (const auto &writer : m_pending_writes)
|
for (auto It = m_pending_writes.crbegin(); It != m_pending_writes.crend(); ++It)
|
||||||
{
|
{
|
||||||
if (writer.sink >= memory_address && writer.sink < memory_end)
|
if (It->sink >= memory_address && It->sink < memory_end)
|
||||||
{
|
{
|
||||||
sync_address = writer.sink;
|
sync_address = It->sink;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user