Merge pull request #9988 from rschlaikjer/rs-gpu-page-table-copy-elision

Pass GPU page table by reference inside TextureCache::ForEachImageInRegionGPU
This commit is contained in:
Morph 2023-03-25 01:59:08 -04:00 committed by GitHub
commit 6892a0942f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 32 additions and 31 deletions

View File

@ -1616,7 +1616,8 @@ void TextureCache<P>::ForEachImageInRegionGPU(size_t as_id, GPUVAddr gpu_addr, s
return; return;
} }
auto& gpu_page_table = gpu_page_table_storage[*storage_id]; auto& gpu_page_table = gpu_page_table_storage[*storage_id];
ForEachGPUPage(gpu_addr, size, [this, gpu_page_table, &images, gpu_addr, size, func](u64 page) { ForEachGPUPage(gpu_addr, size,
[this, &gpu_page_table, &images, gpu_addr, size, func](u64 page) {
const auto it = gpu_page_table.find(page); const auto it = gpu_page_table.find(page);
if (it == gpu_page_table.end()) { if (it == gpu_page_table.end()) {
if constexpr (BOOL_BREAK) { if constexpr (BOOL_BREAK) {