diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2023-12-30 04:37:25 +0100 |
---|---|---|
committer | Liam <byteslice@airmail.cc> | 2024-01-19 03:12:30 +0100 |
commit | 303cd311621b25fbb8d55e0ed2cc4c3248de44ad (patch) | |
tree | f52d147d935449c21e8a8edf8ad28272859d94c5 /src/video_core | |
parent | GPU-SMMU: Estimate game leak and preallocate device region. (diff) | |
download | yuzu-303cd311621b25fbb8d55e0ed2cc4c3248de44ad.tar yuzu-303cd311621b25fbb8d55e0ed2cc4c3248de44ad.tar.gz yuzu-303cd311621b25fbb8d55e0ed2cc4c3248de44ad.tar.bz2 yuzu-303cd311621b25fbb8d55e0ed2cc4c3248de44ad.tar.lz yuzu-303cd311621b25fbb8d55e0ed2cc4c3248de44ad.tar.xz yuzu-303cd311621b25fbb8d55e0ed2cc4c3248de44ad.tar.zst yuzu-303cd311621b25fbb8d55e0ed2cc4c3248de44ad.zip |
Diffstat (limited to 'src/video_core')
-rw-r--r-- | src/video_core/host1x/gpu_device_memory_manager.h | 2 | ||||
-rw-r--r-- | src/video_core/host1x/host1x.cpp | 2 | ||||
-rw-r--r-- | src/video_core/host1x/host1x.h | 1 | ||||
-rw-r--r-- | src/video_core/memory_manager.h | 2 | ||||
-rw-r--r-- | src/video_core/query_cache/query_cache.h | 6 |
5 files changed, 8 insertions, 5 deletions
diff --git a/src/video_core/host1x/gpu_device_memory_manager.h b/src/video_core/host1x/gpu_device_memory_manager.h index 6c7858848..9ccd84b9a 100644 --- a/src/video_core/host1x/gpu_device_memory_manager.h +++ b/src/video_core/host1x/gpu_device_memory_manager.h @@ -17,7 +17,7 @@ struct MaxwellDeviceTraits { static constexpr bool supports_pinning = false; static constexpr size_t device_virtual_bits = 34; using DeviceInterface = typename VideoCore::RasterizerInterface; - using DeviceMethods = typename MaxwellDeviceMethods; + using DeviceMethods = MaxwellDeviceMethods; }; using MaxwellDeviceMemoryManager = Core::DeviceMemoryManager<MaxwellDeviceTraits>; diff --git a/src/video_core/host1x/host1x.cpp b/src/video_core/host1x/host1x.cpp index b7f9a08cf..c4c7a5883 100644 --- a/src/video_core/host1x/host1x.cpp +++ b/src/video_core/host1x/host1x.cpp @@ -13,6 +13,8 @@ Host1x::Host1x(Core::System& system_) memory_manager(system.DeviceMemory()), gmmu_manager{system, memory_manager, 32, 12}, allocator{std::make_unique<Common::FlatAllocator<u32, 0, 32>>(1 << 12)} {} +Host1x::~Host1x() = default; + } // namespace Host1x } // namespace Tegra diff --git a/src/video_core/host1x/host1x.h b/src/video_core/host1x/host1x.h index 13c37e6b4..d72d97b7b 100644 --- a/src/video_core/host1x/host1x.h +++ b/src/video_core/host1x/host1x.h @@ -21,6 +21,7 @@ namespace Host1x { class Host1x { public: explicit Host1x(Core::System& system); + ~Host1x(); SyncpointManager& GetSyncpointManager() { return syncpoint_manager; diff --git a/src/video_core/memory_manager.h b/src/video_core/memory_manager.h index 6b2cd7efb..00d64dcce 100644 --- a/src/video_core/memory_manager.h +++ b/src/video_core/memory_manager.h @@ -68,7 +68,7 @@ public: if (!address) { return {}; } - return memory.GetPointer(*address); + return memory.GetPointer<T>(*address); } template <typename T> diff --git a/src/video_core/query_cache/query_cache.h b/src/video_core/query_cache/query_cache.h index 508afb10a..b5e90cf8c 100644 --- a/src/video_core/query_cache/query_cache.h +++ b/src/video_core/query_cache/query_cache.h @@ -256,8 +256,8 @@ void QueryCacheBase<Traits>::CounterReport(GPUVAddr addr, QueryType counter_type return std::make_pair<u64, u32>(cur_addr >> Core::Memory::YUZU_PAGEBITS, static_cast<u32>(cur_addr & Core::Memory::YUZU_PAGEMASK)); }; - u8* pointer = impl->device_memory.GetPointer<u8>(cpu_addr); - u8* pointer_timestamp = impl->device_memory.GetPointer<u8>(cpu_addr + 8); + u8* pointer = impl->device_memory.template GetPointer<u8>(cpu_addr); + u8* pointer_timestamp = impl->device_memory.template GetPointer<u8>(cpu_addr + 8); bool is_synced = !Settings::IsGPULevelHigh() && is_fence; std::function<void()> operation([this, is_synced, streamer, query_base = query, query_location, pointer, pointer_timestamp] { @@ -561,7 +561,7 @@ bool QueryCacheBase<Traits>::SemiFlushQueryDirty(QueryCacheBase<Traits>::QueryLo } if (True(query_base->flags & QueryFlagBits::IsFinalValueSynced) && False(query_base->flags & QueryFlagBits::IsGuestSynced)) { - auto* ptr = impl->device_memory.GetPointer<u8>(query_base->guest_address); + auto* ptr = impl->device_memory.template GetPointer<u8>(query_base->guest_address); if (True(query_base->flags & QueryFlagBits::HasTimestamp)) { std::memcpy(ptr, &query_base->value, sizeof(query_base->value)); return false; |