vk_pipeline_cache: Small fixes to the pipeline cache

This commit is contained in:
FernandoS27 2021-04-03 02:27:25 +02:00 committed by ameerj
parent baec84247f
commit 480dc0d5e6
1 changed files with 14 additions and 10 deletions

View File

@ -539,11 +539,13 @@ void PipelineCache::LoadDiskResources(u64 title_id, std::stop_token stop_loading
ShaderPools pools; ShaderPools pools;
auto pipeline{CreateComputePipeline(pools, key, envs.front(), false)}; auto pipeline{CreateComputePipeline(pools, key, envs.front(), false)};
std::lock_guard lock{state.mutex}; {
compute_cache.emplace(key, std::move(pipeline)); std::lock_guard lock{state.mutex};
++state.built; compute_cache.emplace(key, std::move(pipeline));
if (state.has_loaded) { ++state.built;
callback(VideoCore::LoadCallbackStage::Build, state.built, state.total); if (state.has_loaded) {
callback(VideoCore::LoadCallbackStage::Build, state.built, state.total);
}
} }
}); });
} else { } else {
@ -558,11 +560,13 @@ void PipelineCache::LoadDiskResources(u64 title_id, std::stop_token stop_loading
} }
auto pipeline{CreateGraphicsPipeline(pools, key, MakeSpan(env_ptrs), false)}; auto pipeline{CreateGraphicsPipeline(pools, key, MakeSpan(env_ptrs), false)};
std::lock_guard lock{state.mutex}; {
graphics_cache.emplace(key, std::move(pipeline)); std::lock_guard lock{state.mutex};
++state.built; graphics_cache.emplace(key, std::move(pipeline));
if (state.has_loaded) { ++state.built;
callback(VideoCore::LoadCallbackStage::Build, state.built, state.total); if (state.has_loaded) {
callback(VideoCore::LoadCallbackStage::Build, state.built, state.total);
}
} }
}); });
} }