early-access version 2456
This commit is contained in:
parent
77c401380f
commit
591ab4a56e
@ -1,7 +1,7 @@
|
|||||||
yuzu emulator early access
|
yuzu emulator early access
|
||||||
=============
|
=============
|
||||||
|
|
||||||
This is the source code for early-access 2455.
|
This is the source code for early-access 2456.
|
||||||
|
|
||||||
## Legal Notice
|
## Legal Notice
|
||||||
|
|
||||||
|
@ -170,7 +170,7 @@ void ShaderCache::RemovePendingShaders() {
|
|||||||
marked_for_removal.clear();
|
marked_for_removal.clear();
|
||||||
|
|
||||||
if (!removed_shaders.empty()) {
|
if (!removed_shaders.empty()) {
|
||||||
RemoveShadersFromStorage(std::move(removed_shaders));
|
RemoveShadersFromStorage(removed_shaders);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -213,7 +213,7 @@ void ShaderCache::UnmarkMemory(Entry* entry) {
|
|||||||
rasterizer.UpdatePagesCachedCount(addr, size, -1);
|
rasterizer.UpdatePagesCachedCount(addr, size, -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ShaderCache::RemoveShadersFromStorage(std::vector<ShaderInfo*> removed_shaders) {
|
void ShaderCache::RemoveShadersFromStorage(std::span<ShaderInfo*> removed_shaders) {
|
||||||
// Remove them from the cache
|
// Remove them from the cache
|
||||||
std::erase_if(storage, [&removed_shaders](const std::unique_ptr<ShaderInfo>& shader) {
|
std::erase_if(storage, [&removed_shaders](const std::unique_ptr<ShaderInfo>& shader) {
|
||||||
return std::ranges::find(removed_shaders, shader.get()) != removed_shaders.end();
|
return std::ranges::find(removed_shaders, shader.get()) != removed_shaders.end();
|
||||||
|
@ -4,7 +4,6 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <algorithm>
|
|
||||||
#include <array>
|
#include <array>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <mutex>
|
#include <mutex>
|
||||||
@ -138,7 +137,7 @@ private:
|
|||||||
/// @param removed_shaders Shaders to be removed from the storage
|
/// @param removed_shaders Shaders to be removed from the storage
|
||||||
/// @pre invalidation_mutex is locked
|
/// @pre invalidation_mutex is locked
|
||||||
/// @pre lookup_mutex is locked
|
/// @pre lookup_mutex is locked
|
||||||
void RemoveShadersFromStorage(std::vector<ShaderInfo*> removed_shaders);
|
void RemoveShadersFromStorage(std::span<ShaderInfo*> removed_shaders);
|
||||||
|
|
||||||
/// @brief Creates a new entry in the lookup cache and returns its pointer
|
/// @brief Creates a new entry in the lookup cache and returns its pointer
|
||||||
/// @pre lookup_mutex is locked
|
/// @pre lookup_mutex is locked
|
||||||
|
Loading…
Reference in New Issue
Block a user