Skip to content

Commit

Permalink
Support for Vulkan 1.4 (#1665)
Browse files Browse the repository at this point in the history
  • Loading branch information
Xphalnos authored Dec 7, 2024
1 parent 941a668 commit 2266622
Show file tree
Hide file tree
Showing 44 changed files with 50 additions and 44 deletions.
2 changes: 2 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,8 @@
[submodule "externals/LibAtrac9"]
path = externals/LibAtrac9
url = https://github.com/shadps4-emu/ext-LibAtrac9.git
shallow = true
[submodule "externals/libpng"]
path = externals/libpng
url = https://github.com/pnggroup/libpng
shallow = true
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ find_package(SDL3 3.1.2 CONFIG)
find_package(stb MODULE)
find_package(toml11 4.2.0 CONFIG)
find_package(tsl-robin-map 1.3.0 CONFIG)
find_package(VulkanHeaders 1.3.289 CONFIG)
find_package(VulkanHeaders 1.4.303 CONFIG)
find_package(VulkanMemoryAllocator 3.1.0 CONFIG)
find_package(xbyak 7.07 CONFIG)
find_package(xxHash 0.8.2 MODULE)
Expand Down
4 changes: 2 additions & 2 deletions externals/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ else()
if (NOT TARGET cryptopp::cryptopp)
set(CRYPTOPP_INSTALL OFF)
set(CRYPTOPP_BUILD_TESTING OFF)
set(CRYPTOPP_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/cryptopp/)
set(CRYPTOPP_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/cryptopp)
add_subdirectory(cryptopp-cmake)
file(COPY cryptopp DESTINATION cryptopp FILES_MATCHING PATTERN "*.h")
# remove externals/cryptopp from include directories because it contains a conflicting zlib.h file
Expand Down Expand Up @@ -216,7 +216,7 @@ endif()
# Discord RPC
if (ENABLE_DISCORD_RPC)
set(BUILD_EXAMPLES OFF)
add_subdirectory(discord-rpc/)
add_subdirectory(discord-rpc)
target_include_directories(discord-rpc INTERFACE discord-rpc/include)
endif()

Expand Down
2 changes: 1 addition & 1 deletion externals/LibAtrac9
Submodule LibAtrac9 updated 0 files
2 changes: 1 addition & 1 deletion externals/date
2 changes: 1 addition & 1 deletion externals/glslang
Submodule glslang updated 69 files
+10 −10 .github/workflows/continuous_deployment.yml
+30 −30 .github/workflows/continuous_integration.yml
+3 −3 .github/workflows/scorecard.yml
+7 −15 README.md
+6 −0 SPIRV/GLSL.ext.NV.h
+360 −377 SPIRV/GlslangToSpv.cpp
+34 −1 SPIRV/SPVRemapper.cpp
+35 −0 SPIRV/SpvBuilder.cpp
+9 −2 SPIRV/SpvBuilder.h
+2 −0 SPIRV/SpvTools.cpp
+46 −10 SPIRV/disassemble.cpp
+104 −0 SPIRV/doc.cpp
+1 −0 SPIRV/doc.h
+2,120 −25 SPIRV/spirv.hpp
+7 −0 StandAlone/StandAlone.cpp
+8 −8 Test/baseResults/findFunction.frag.out
+8 −8 Test/baseResults/hlsl.wavevote.comp.out
+2 −2 Test/baseResults/iomap.crossStage.2.vert.out
+2 −2 Test/baseResults/iomap.crossStage.vert.out
+2 −2 Test/baseResults/iomap.crossStage.vk.vert.out
+45 −0 Test/baseResults/iomap.mismatchedBufferTypes.vert.out
+1,051 −1,031 Test/baseResults/spv.400.frag.nanclamp.out
+1,051 −1,031 Test/baseResults/spv.400.frag.out
+536 −528 Test/baseResults/spv.Operations.frag.out
+12 −10 Test/baseResults/spv.bufferhandle_Error.frag.out
+251 −0 Test/baseResults/spv.coopmat2_constructor.comp.out
+26 −0 Test/baseResults/spv.coopmat2_error.comp.out
+245 −0 Test/baseResults/spv.coopmat2_tensor.comp.out
+3 −1 Test/baseResults/spv.coopmatKHR_Error.comp.out
+410 −405 Test/baseResults/spv.float16.frag.out
+358 −353 Test/baseResults/spv.float32.frag.out
+361 −356 Test/baseResults/spv.float64.frag.out
+1 −0 Test/baseResults/validation_fails.txt
+2 −2 Test/baseResults/vk.relaxed.errorcheck.vert.out
+10 −0 Test/iomap.mismatchedBufferTypes.frag
+10 −0 Test/iomap.mismatchedBufferTypes.vert
+4 −0 Test/spv.bufferhandle_Error.frag
+77 −0 Test/spv.coopmat2_constructor.comp
+79 −0 Test/spv.coopmat2_error.comp
+66 −0 Test/spv.coopmat2_tensor.comp
+19 −1 build_info.py
+2 −0 glslang/CInterface/glslang_c_interface.cpp
+2 −1 glslang/HLSL/hlslParseHelper.cpp
+27 −0 glslang/Include/BaseTypes.h
+44 −11 glslang/Include/Types.h
+2 −1 glslang/Include/glslang_c_shader_types.h
+37 −185 glslang/Include/intermediate.h
+157 −271 glslang/MachineIndependent/Constant.cpp
+144 −73 glslang/MachineIndependent/Initialize.cpp
+30 −319 glslang/MachineIndependent/Intermediate.cpp
+348 −125 glslang/MachineIndependent/ParseHelper.cpp
+2 −1 glslang/MachineIndependent/ParseHelper.h
+13 −0 glslang/MachineIndependent/Scan.cpp
+3 −0 glslang/MachineIndependent/SymbolTable.cpp
+7 −3 glslang/MachineIndependent/SymbolTable.h
+14 −1 glslang/MachineIndependent/Versions.cpp
+1 −0 glslang/MachineIndependent/Versions.h
+16 −1 glslang/MachineIndependent/glslang.y
+4,555 −4,500 glslang/MachineIndependent/glslang_tab.cpp
+300 −297 glslang/MachineIndependent/glslang_tab.cpp.h
+34 −186 glslang/MachineIndependent/intermOut.cpp
+10 −6 glslang/MachineIndependent/iomapper.cpp
+39 −30 glslang/MachineIndependent/linkValidate.cpp
+5 −2 glslang/MachineIndependent/localintermediate.h
+1 −0 glslang/MachineIndependent/parseVersions.h
+2 −1 glslang/Public/ShaderLang.h
+1 −0 gtests/GlslMapIO.FromFile.cpp
+11 −1 gtests/Spv.FromFile.cpp
+2 −2 known_good.json
2 changes: 1 addition & 1 deletion externals/magic_enum
Submodule magic_enum updated 42 files
+58 −0 .cmake-format
+9 −0 .dockerignore
+1 −1 .github/workflows/bzlmod-archive.yml
+3 −3 .github/workflows/scorecard.yml
+60 −0 .github/workflows/ubuntu_test_installed_version.yml
+3 −1 .gitignore
+1 −1 BUILD.bazel
+131 −100 CMakeLists.txt
+71 −0 Dockerfile
+1 −1 MODULE.bazel
+16 −1 README.md
+17 −4 cmake/GenPkgConfig/GenPkgConfig.cmake
+2 −2 doc/limitations.md
+46 −6 doc/reference.md
+2 −2 example/enum_flag_example.cpp
+2 −2 example/example.cpp
+1 −1 example/example_containers_array.cpp
+1 −1 example/example_containers_bitset.cpp
+1 −1 example/example_containers_set.cpp
+1 −1 example/example_custom_name.cpp
+1 −1 example/example_nonascii_name.cpp
+1 −1 example/example_switch.cpp
+2 −2 include/magic_enum/magic_enum.hpp
+1 −1 include/magic_enum/magic_enum_all.hpp
+1 −1 include/magic_enum/magic_enum_containers.hpp
+1 −1 include/magic_enum/magic_enum_flags.hpp
+1 −1 include/magic_enum/magic_enum_format.hpp
+2 −2 include/magic_enum/magic_enum_fuse.hpp
+1 −1 include/magic_enum/magic_enum_iostream.hpp
+1 −1 include/magic_enum/magic_enum_switch.hpp
+1 −1 include/magic_enum/magic_enum_utility.hpp
+12 −2 meson.build
+2 −2 module/magic_enum.cppm
+1 −1 package.xml
+97 −49 test/CMakeLists.txt
+5 −5 test/test.cpp
+2 −2 test/test_aliases.cpp
+2 −2 test/test_containers.cpp
+8 −8 test/test_flags.cpp
+3 −3 test/test_nonascii.cpp
+2 −2 test/test_wchar_t.cpp
+13 −0 test_installed_version.bash
2 changes: 1 addition & 1 deletion externals/sdl3
Submodule sdl3 updated 432 files
2 changes: 1 addition & 1 deletion externals/toml11
Submodule toml11 updated 1 files
+10 −1 README.md
2 changes: 1 addition & 1 deletion externals/vma
Submodule vma updated 1 files
+10 −7 include/vk_mem_alloc.h
2 changes: 1 addition & 1 deletion externals/xxhash
2 changes: 1 addition & 1 deletion externals/zydis
2 changes: 1 addition & 1 deletion src/core/devtools/widget/common.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#include <type_traits>
#include <variant>

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/bit_field.h"
#include "common/io_file.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/devtools/widget/frame_dump.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#include <cstdio>
#include <fmt/chrono.h>
#include <imgui.h>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/io_file.h"
#include "core/devtools/options.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/devtools/widget/memory_map.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

#include <cinttypes>
#include <imgui.h>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "core/debug_state.h"
#include "core/memory.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/devtools/widget/reg_popup.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

#include <cstdio>
#include <imgui.h>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "cmd_list.h"
#include "common.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/devtools/widget/reg_view.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include <optional>
#include <string>
#include <imgui.h>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>
#include <stdio.h>

#include "common.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/ajm/ajm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "core/libraries/error_codes.h"
#include "core/libraries/libs.h"

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

namespace Libraries::Ajm {

Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/ajm/ajm_instance.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include "core/libraries/ajm/ajm_instance.h"
#include "core/libraries/ajm/ajm_mp3.h"

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

namespace Libraries::Ajm {

Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/audio/audioout.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later

#include <memory>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/assert.h"
#include "common/logging/log.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/avplayer/avplayer_file_streamer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later

#include <algorithm> // std::max, std::min
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>
#include "core/libraries/avplayer/avplayer_file_streamer.h"

extern "C" {
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/avplayer/avplayer_source.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#include "core/libraries/avplayer/avplayer_file_streamer.h"
#include "core/libraries/avplayer/avplayer_source.h"

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

extern "C" {
#include <libavcodec/avcodec.h>
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/avplayer/avplayer_state.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#include "core/libraries/avplayer/avplayer_state.h"
#include "core/tls.h"

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

namespace Libraries::AvPlayer {

Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/ime/error_dialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

#include <utility>
#include <imgui.h>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/assert.h"
#include "common/logging/log.h"
Expand Down
3 changes: 2 additions & 1 deletion src/core/libraries/ime/ime_dialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
// SPDX-License-Identifier: GPL-2.0-or-later

#include <array>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/logging/log.h"
#include "core/libraries/error_codes.h"
#include "core/libraries/libs.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/ime/ime_dialog_ui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#include <cwchar>
#include <string>
#include <imgui.h>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/assert.h"
#include "common/logging/log.h"
Expand Down
3 changes: 2 additions & 1 deletion src/core/libraries/jpeg/jpegenc.cpp
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
// SPDX-FileCopyrightText: Copyright 2024 shadPS4 Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/alignment.h"
#include "common/assert.h"
#include "common/logging/log.h"
Expand Down
3 changes: 2 additions & 1 deletion src/core/libraries/save_data/dialog/savedatadialog.cpp
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
// SPDX-FileCopyrightText: Copyright 2024 shadPS4 Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later

#include <magic_enum/magic_enum.hpp>

#include "common/elf_info.h"
#include "common/logging/log.h"
#include "core/libraries/libs.h"
#include "core/libraries/system/commondialog.h"
#include "magic_enum.hpp"
#include "savedatadialog.h"
#include "savedatadialog_ui.h"

Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/save_data/dialog/savedatadialog_ui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

#include <fmt/chrono.h>
#include <imgui.h>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/elf_info.h"
#include "common/singleton.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/save_data/save_backup.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include <mutex>
#include <semaphore>

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "save_backup.h"
#include "save_instance.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/save_data/save_instance.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

#include <iostream>

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/assert.h"
#include "common/config.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/save_data/savedata.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include <vector>

#include <core/libraries/system/msgdialog_ui.h>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/assert.h"
#include "common/cstring.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/system/msgdialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later

#include <imgui.h>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/assert.h"
#include "common/logging/log.h"
Expand Down
2 changes: 1 addition & 1 deletion src/core/libraries/system/sysmodule.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

#define MAGIC_ENUM_RANGE_MIN 0
#define MAGIC_ENUM_RANGE_MAX 300
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#include "common/logging/log.h"
#include "core/libraries/error_codes.h"
Expand Down
3 changes: 2 additions & 1 deletion src/core/platform.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@
#include "common/logging/log.h"
#include "common/singleton.h"
#include "common/types.h"
#include "magic_enum.hpp"

#include <magic_enum/magic_enum.hpp>

#include <functional>
#include <mutex>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include "shader_recompiler/backend/spirv/emit_spirv_instructions.h"
#include "shader_recompiler/backend/spirv/spirv_emit_context.h"

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

namespace Shader::Backend::SPIRV {
namespace {
Expand Down
2 changes: 1 addition & 1 deletion src/shader_recompiler/frontend/decode.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include "common/assert.h"
#include "shader_recompiler/frontend/decode.h"

#include "magic_enum.hpp"
#include <magic_enum/magic_enum.hpp>

namespace Shader::Gcn {

Expand Down
2 changes: 1 addition & 1 deletion src/shader_recompiler/frontend/translate/translate.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

#define MAGIC_ENUM_RANGE_MIN 0
#define MAGIC_ENUM_RANGE_MAX 1515
#include "magic_enum.hpp"
#include <magic_enum/magic_enum.hpp>

namespace Shader::Gcn {

Expand Down
2 changes: 1 addition & 1 deletion src/video_core/renderer_vulkan/liverpool_to_vk.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#include "video_core/amdgpu/pixel_format.h"
#include "video_core/renderer_vulkan/liverpool_to_vk.h"

#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>

#define INVALID_NUMBER_FORMAT_COMBO \
LOG_ERROR(Render_Vulkan, "Unsupported number type {} for format {}", number_type, format);
Expand Down
2 changes: 1 addition & 1 deletion src/video_core/renderer_vulkan/vk_platform.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include "video_core/renderer_vulkan/vk_platform.h"

#if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL
static vk::DynamicLoader dl;
static vk::detail::DynamicLoader dl;
#else
extern "C" {
VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(VkInstance instance,
Expand Down
2 changes: 1 addition & 1 deletion src/video_core/texture_cache/tile_manager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
#include "video_core/host_shaders/detile_m8x2_comp.h"

#include <boost/container/static_vector.hpp>
#include <magic_enum.hpp>
#include <magic_enum/magic_enum.hpp>
#include <vk_mem_alloc.h>

namespace VideoCore {
Expand Down

0 comments on commit 2266622

Please sign in to comment.