|
|
|
@ -117,12 +117,10 @@ public:
|
|
|
|
|
void Query(GPUVAddr gpu_addr, VideoCore::QueryType type, std::optional<u64> timestamp) {
|
|
|
|
|
std::unique_lock lock{mutex};
|
|
|
|
|
auto& memory_manager = system.GPU().MemoryManager();
|
|
|
|
|
const std::optional<VAddr> cpu_addr_opt =
|
|
|
|
|
memory_manager.GpuToCpuAddress(gpu_addr);
|
|
|
|
|
const std::optional<VAddr> cpu_addr_opt = memory_manager.GpuToCpuAddress(gpu_addr);
|
|
|
|
|
ASSERT(cpu_addr_opt);
|
|
|
|
|
VAddr cpu_addr = *cpu_addr_opt;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CachedQuery* query = TryGet(cpu_addr);
|
|
|
|
|
if (!query) {
|
|
|
|
|
ASSERT_OR_EXECUTE(cpu_addr_opt, return;);
|
|
|
|
@ -221,9 +219,8 @@ private:
|
|
|
|
|
return nullptr;
|
|
|
|
|
}
|
|
|
|
|
auto& contents = it->second;
|
|
|
|
|
const auto found =
|
|
|
|
|
std::find_if(std::begin(contents), std::end(contents),
|
|
|
|
|
[addr](auto& query) { return query.GetCpuAddr() == addr; });
|
|
|
|
|
const auto found = std::find_if(std::begin(contents), std::end(contents),
|
|
|
|
|
[addr](auto& query) { return query.GetCpuAddr() == addr; });
|
|
|
|
|
return found != std::end(contents) ? &*found : nullptr;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|