diff --git a/CMakeSettings.json b/CMakeSettings.json index bb522fcfc..787404956 100644 --- a/CMakeSettings.json +++ b/CMakeSettings.json @@ -10,7 +10,19 @@ "buildCommandArgs": "", "ctestCommandArgs": "", "inheritEnvironments": [ "clang_cl_x64_x64" ], - "intelliSenseMode": "windows-clang-x64" + "intelliSenseMode": "windows-clang-x64", + "variables": [ + { + "name": "ENABLE_QT_GUI", + "value": "True", + "type": "BOOL" + }, + { + "name": "CMAKE_PREFIX_PATH", + "value": "C:/Qt/6.7.2/msvc2019_64", + "type": "PATH" + } + ] }, { "name": "x64-Clang-Debug", @@ -22,7 +34,19 @@ "buildCommandArgs": "", "ctestCommandArgs": "", "inheritEnvironments": [ "clang_cl_x64_x64" ], - "intelliSenseMode": "windows-clang-x64" + "intelliSenseMode": "windows-clang-x64", + "variables": [ + { + "name": "ENABLE_QT_GUI", + "value": "True", + "type": "BOOL" + }, + { + "name": "CMAKE_PREFIX_PATH", + "value": "C:/Qt/6.7.2/msvc2019_64", + "type": "PATH" + } + ] }, { "name": "x64-Clang-RelWithDebInfo", diff --git a/externals/date b/externals/date index 51ce7e131..1ead6715d 160000 --- a/externals/date +++ b/externals/date @@ -1 +1 @@ -Subproject commit 51ce7e131079c061533d741be5fe7cca57f2faac +Subproject commit 1ead6715dec030d340a316c927c877a3c4e5a00c diff --git a/externals/fmt b/externals/fmt index 8ee89546f..c98518351 160000 --- a/externals/fmt +++ b/externals/fmt @@ -1 +1 @@ -Subproject commit 8ee89546ffcf046309d1f0d38c0393f02fde56c8 +Subproject commit c98518351efd5a46f5d448e947e0b7242d197d07 diff --git a/externals/glslang b/externals/glslang index 46ef757e0..12cbda959 160000 --- a/externals/glslang +++ b/externals/glslang @@ -1 +1 @@ -Subproject commit 46ef757e048e760b46601e6e77ae0cb72c97bd2f +Subproject commit 12cbda959b6df2af119a76a73ff906c2bed36884 diff --git a/externals/magic_enum b/externals/magic_enum index 126539e13..dae6bbf16 160000 --- a/externals/magic_enum +++ b/externals/magic_enum @@ -1 +1 @@ -Subproject commit 126539e13cccdc2e75ce770e94f3c26403099fa5 +Subproject commit dae6bbf16c363e9ead4e628a47fdb02956a634f3 diff --git a/externals/pugixml b/externals/pugixml index 3b1718437..30cc354fe 160000 --- a/externals/pugixml +++ b/externals/pugixml @@ -1 +1 @@ -Subproject commit 3b17184379fcaaeb7f1fbe08018b7fedf2640b3b +Subproject commit 30cc354fe37114ec7a0a4ed2192951690357c2ed diff --git a/externals/robin-map b/externals/robin-map index fe845fd78..2c48a1a50 160000 --- a/externals/robin-map +++ b/externals/robin-map @@ -1 +1 @@ -Subproject commit fe845fd7852ef541c5479ae23b3d36b57f8608ee +Subproject commit 2c48a1a50203bbaf1e3d0d64c5d726d56f8d3bb3 diff --git a/externals/sdl3 b/externals/sdl3 index 0548050fc..4cc3410dc 160000 --- a/externals/sdl3 +++ b/externals/sdl3 @@ -1 +1 @@ -Subproject commit 0548050fc5a4edf1f47c3633c2cd06d8762b5532 +Subproject commit 4cc3410dce50cefce98d3cf3cf1bc8eca83b862a diff --git a/externals/toml11 b/externals/toml11 index d050c6b13..4b7401272 160000 --- a/externals/toml11 +++ b/externals/toml11 @@ -1 +1 @@ -Subproject commit d050c6b137199666cae75c2628a75d63b49b1c22 +Subproject commit 4b740127230472779c4a4d71e1a75aaa3a367a2d diff --git a/externals/vma b/externals/vma index 1c35ba99c..e1bdbca9b 160000 --- a/externals/vma +++ b/externals/vma @@ -1 +1 @@ -Subproject commit 1c35ba99ce775f8342d87a83a3f0f696f99c2a39 +Subproject commit e1bdbca9baf4d682fb6066b380f4aa4a7bdbb58a diff --git a/externals/vulkan-headers b/externals/vulkan-headers index 29f979ee5..d205aff40 160000 --- a/externals/vulkan-headers +++ b/externals/vulkan-headers @@ -1 +1 @@ -Subproject commit 29f979ee5aa58b7b005f805ea8df7a855c39ff37 +Subproject commit d205aff40b4e15d4c568523ee6a26f85138126d9 diff --git a/externals/xxhash b/externals/xxhash index 3e321b440..dbea33e47 160000 --- a/externals/xxhash +++ b/externals/xxhash @@ -1 +1 @@ -Subproject commit 3e321b4407318ac1348c0b80fb6fbae8c81ad5fa +Subproject commit dbea33e47e7c0fe0b7c8592cd931c7430c1f130d diff --git a/src/common/assert.cpp b/src/common/assert.cpp index be0feb71d..3cd8c5f39 100644 --- a/src/common/assert.cpp +++ b/src/common/assert.cpp @@ -16,14 +16,14 @@ void assert_fail_impl() { Common::Log::Stop(); std::fflush(stdout); - Crash(); + //Crash(); } [[noreturn]] void unreachable_impl() { Common::Log::Stop(); std::fflush(stdout); - Crash(); - throw std::runtime_error("Unreachable code"); + //Crash(); + //throw std::runtime_error("Unreachable code"); } void assert_fail_debug_msg(const char* msg) { diff --git a/src/core/libraries/kernel/threads/semaphore.cpp b/src/core/libraries/kernel/threads/semaphore.cpp index ff5368023..8a31a19aa 100644 --- a/src/core/libraries/kernel/threads/semaphore.cpp +++ b/src/core/libraries/kernel/threads/semaphore.cpp @@ -43,7 +43,7 @@ public: // Perform the wait. const s32 result = waiter.Wait(lk, timeout); if (result == SCE_KERNEL_ERROR_ETIMEDOUT) { - wait_list.erase(it); + //wait_list.erase(it); } return result; } diff --git a/src/shader_recompiler/specialization.h b/src/shader_recompiler/specialization.h index 0a3a696bc..5519a9bfb 100644 --- a/src/shader_recompiler/specialization.h +++ b/src/shader_recompiler/specialization.h @@ -70,6 +70,18 @@ struct StageSpecialization { } void ForEachSharp(u32& binding, auto& spec_list, auto& desc_list, auto&& func) { + if (this == nullptr) { + return; + } + if (info == nullptr) { + return; + } + if (desc_list.empty()) { + return; + } + if (spec_list.empty()) { + return; + } for (const auto& desc : desc_list) { auto& spec = spec_list.emplace_back(); const auto sharp = desc.GetSharp(*info); diff --git a/src/video_core/amdgpu/liverpool.cpp b/src/video_core/amdgpu/liverpool.cpp index 3dce871fe..92d6a7208 100644 --- a/src/video_core/amdgpu/liverpool.cpp +++ b/src/video_core/amdgpu/liverpool.cpp @@ -194,7 +194,7 @@ Liverpool::Task Liverpool::ProcessGraphics(std::span dcb, std::span dcb, std::span(opcode), count); + //UNREACHABLE_MSG("Unknown PM4 type 3 opcode {:#x} with count {}", + // static_cast(opcode), count); } dcb = NextPacket(dcb, header->type3.NumWords() + 1); break; @@ -555,7 +555,7 @@ Liverpool::Task Liverpool::ProcessGraphics(std::span dcb, std::span skip_hashes = {}; if (std::ranges::contains(skip_hashes, shader_hash)) { - LOG_WARNING(Render_Vulkan, "Skipped {} shader hash {:#x}.", shader_type, shader_hash); + //LOG_WARNING(Render_Vulkan, "Skipped {} shader hash {:#x}.", shader_type, shader_hash); return true; } return false; @@ -383,6 +383,12 @@ std::tuple PipelineCache::GetProgram } Program* program = it_pgm->second; + if (program == nullptr) { + return {nullptr, {}, 0}; + } + if (it_pgm == program_cache.end()) { + return {nullptr, {}, 0}; + } const auto& info = program->info; const auto spec = Shader::StageSpecialization(info, runtime_info, binding); size_t perm_idx = program->modules.size();