mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-09-07 12:48:03 +00:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| eacb5f40a1 | |||
| e1dcee37bf |
@@ -117,6 +117,7 @@ template <typename T>
|
|||||||
static void GetFuncAddress(Common::DynamicLibrary& dll, const char* name, T& pfn) {
|
static void GetFuncAddress(Common::DynamicLibrary& dll, const char* name, T& pfn) {
|
||||||
if (!dll.GetSymbol(name, &pfn)) {
|
if (!dll.GetSymbol(name, &pfn)) {
|
||||||
LOG_CRITICAL(HW_Memory, "Failed to load {}", name);
|
LOG_CRITICAL(HW_Memory, "Failed to load {}", name);
|
||||||
|
throw std::bad_alloc{};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -55,11 +55,11 @@ constexpr u64 GpuClockMultiplier(Settings::GpuClock clock) {
|
|||||||
|
|
||||||
struct GPU::Impl {
|
struct GPU::Impl {
|
||||||
explicit Impl(Core::System& system_, bool is_async_, bool use_nvdec_)
|
explicit Impl(Core::System& system_, bool is_async_, bool use_nvdec_)
|
||||||
: system{system_}
|
: gpu_thread{system_}
|
||||||
|
, system{system_}
|
||||||
, use_nvdec{use_nvdec_}
|
, use_nvdec{use_nvdec_}
|
||||||
, shader_notify()
|
, shader_notify()
|
||||||
, is_async{is_async_}
|
, is_async{is_async_}
|
||||||
, gpu_thread{system_}
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
~Impl() = default;
|
~Impl() = default;
|
||||||
@@ -301,6 +301,10 @@ struct GPU::Impl {
|
|||||||
return out;
|
return out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Destruction of thread must be done before all (non trivial)
|
||||||
|
// previous members has been destroyed
|
||||||
|
VideoCommon::GPUThread::ThreadManager gpu_thread;
|
||||||
|
|
||||||
Core::System& system;
|
Core::System& system;
|
||||||
|
|
||||||
std::unique_ptr<VideoCore::RendererBase> renderer;
|
std::unique_ptr<VideoCore::RendererBase> renderer;
|
||||||
@@ -329,7 +333,6 @@ struct GPU::Impl {
|
|||||||
|
|
||||||
const bool is_async;
|
const bool is_async;
|
||||||
|
|
||||||
VideoCommon::GPUThread::ThreadManager gpu_thread;
|
|
||||||
std::unique_ptr<Core::Frontend::GraphicsContext> cpu_context;
|
std::unique_ptr<Core::Frontend::GraphicsContext> cpu_context;
|
||||||
|
|
||||||
Tegra::Control::Scheduler scheduler;
|
Tegra::Control::Scheduler scheduler;
|
||||||
|
|||||||
Reference in New Issue
Block a user