Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency libraries to match Vulkan SDK 1.3.273. #2115

Merged
merged 1 commit into from
Jan 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 36 additions & 2 deletions Docs/Whats_New.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,24 +16,58 @@ Copyright (c) 2015-2024 [The Brenwill Workshop Ltd.](http://www.brenwill.com)
MoltenVK 1.2.7
--------------

Released TBD
Released 2024/01/08

- Add support for extensions:
- `VK_KHR_calibrated_timestamp`
- `VK_KHR_format_feature_flags2`
- `VK_KHR_vertex_attribute_divisor`
- `VK_EXT_extended_dynamic_state3` *(Metal does not support `VK_POLYGON_MODE_POINT`)*
- `VK_EXT_headless_surface`
- `VK_EXT_layer_settings`
- Add support for format `VK_FORMAT_B4G4R4A4_UNORM_PACK16`.
- Add support for vertex formats `VK_FORMAT_B10G11R11_UFLOAT_PACK32` & `VK_FORMAT_E5B9G9R9_UFLOAT_PACK32`.
- Fix regression that broke `VK_POLYGON_MODE_LINE`.
- Fix regression in marking rendering state dirty after `vkCmdClearAttachments()`.
- Reduce disk space consumed after running `fetchDependencies` script by removing intermediate file caches.
- Fix regression error in argument buffer runtime arrays.
- Fix rare deadlock during launch via `dlopen()`.
- Fix initial value of `VkPhysicalDeviceLimits::timestampPeriod` on non-Apple Silicon GPUs.
- Fix swapchain and surface bugs when windowing system is accessed from off the main thread.
- Fix system memory size of _tvOS_.
- Fix `heapUsage` query for non-unified memory devices.
- Add a defensive guard to ensure `heapUsage[0]` calculation is correct.
- Clamp max per-set descriptor limit to minimum `1024`.
- Enable the cube texture gradient workaround for Apple Silicon.
- Ensure `lineWidthGranularity` is zero if the `wideLines` feature isn't supported.
- Ensure `maxDrawIndexedIndexValue` set to `UINT32_MAX`.
- Ignore no external handle types specified for buffers and images.
- Expose `VK_EXT_debug_utils` device functions as device functions, not instance functions.
- Emit `primitiveRestartEnable` disabled warning only for strip topology.
- Enable mandatory `VK_EXT_descriptor_indexing` features, and don't advertise extension if they are not supported.
- Reduce disk space consumed after running `fetchDependencies` script by removing intermediate file caches.
- Deprecate `vkSetMoltenVKConfigurationMVK()`.
- Deprecate `mvk_config.h` and move content to `mvk_private_api.h` and `mvk_deprecated_api.h`.
- Update copyright notices to year 2024.
- Update dependency libraries to match _Vulkan SDK 1.3.273_.
- Update to latest SPIRV-Cross:
- MSL: Fix regression error in argument buffer runtime arrays.
- MSL: Work around broken cube texture gradients on Apple Silicon.
- MSL: Ensure discrete runtime arrays of buffers have known length.
- MSL: Implement Metal 3.1 image atomics natively.
- MSL: Fix patch vertex count with raw buffer tese input.
- MSL: Improve handling of sample masks.
- MSL: Add divide to reserved function names.
- MSL: Support std140 half matrices and arrays.
- MSL: Use more appropriate padded types.
- MSL: Don't use swizzle if we have wrapper.
- MSL: Add ray-cull mask
- MSL: Consider PtrAccessChain on array types.
- MSL: Use LHS expression to determine whether or not to do array copy.
- MSL: Only do address-of expression when needed.
- MSL: Improve PtrAccessChain handling.
- MSL: Use powr instead of pow.
- MSL: Remove special case for threadgroup array wrapper.
- MSL: Added an `Op` field to `SPIRType` and refactor.



Expand Down
30 changes: 0 additions & 30 deletions ExternalDependencies.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -218,12 +218,6 @@
A997FA1C26865A550006F71B /* disassemble.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F95E26865A550006F71B /* disassemble.cpp */; };
A997FA1D26865A550006F71B /* disassemble.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F95E26865A550006F71B /* disassemble.cpp */; };
A997FA1E26865A550006F71B /* disassemble.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F95E26865A550006F71B /* disassemble.cpp */; };
A997FA1F26865A550006F71B /* InitializeDll.h in Headers */ = {isa = PBXBuildFile; fileRef = A997F96126865A550006F71B /* InitializeDll.h */; };
A997FA2026865A550006F71B /* InitializeDll.h in Headers */ = {isa = PBXBuildFile; fileRef = A997F96126865A550006F71B /* InitializeDll.h */; };
A997FA2126865A550006F71B /* InitializeDll.h in Headers */ = {isa = PBXBuildFile; fileRef = A997F96126865A550006F71B /* InitializeDll.h */; };
A997FA2226865A550006F71B /* InitializeDll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F96226865A550006F71B /* InitializeDll.cpp */; };
A997FA2326865A550006F71B /* InitializeDll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F96226865A550006F71B /* InitializeDll.cpp */; };
A997FA2426865A550006F71B /* InitializeDll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F96226865A550006F71B /* InitializeDll.cpp */; };
A997FA2826865A550006F71B /* ossource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F96C26865A550006F71B /* ossource.cpp */; };
A997FA2926865A550006F71B /* ossource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F96C26865A550006F71B /* ossource.cpp */; };
A997FA2A26865A550006F71B /* ossource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F96C26865A550006F71B /* ossource.cpp */; };
Expand Down Expand Up @@ -1783,7 +1777,6 @@
DCFD7CD72A45BA92007BBBF7 /* NonSemanticDebugPrintf.h in Headers */ = {isa = PBXBuildFile; fileRef = A997F94226865A550006F71B /* NonSemanticDebugPrintf.h */; };
DCFD7CD82A45BA92007BBBF7 /* glslang_tab.cpp.h in Headers */ = {isa = PBXBuildFile; fileRef = A997F9A126865A550006F71B /* glslang_tab.cpp.h */; };
DCFD7CD92A45BA92007BBBF7 /* ParseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = A997F9AC26865A550006F71B /* ParseHelper.h */; };
DCFD7CDA2A45BA92007BBBF7 /* InitializeDll.h in Headers */ = {isa = PBXBuildFile; fileRef = A997F96126865A550006F71B /* InitializeDll.h */; };
DCFD7CDC2A45BA92007BBBF7 /* ParseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F98626865A550006F71B /* ParseHelper.cpp */; };
DCFD7CDD2A45BA92007BBBF7 /* doc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F95D26865A550006F71B /* doc.cpp */; };
DCFD7CDE2A45BA92007BBBF7 /* attribute.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F9A426865A550006F71B /* attribute.cpp */; };
Expand All @@ -1805,7 +1798,6 @@
DCFD7CEE2A45BA92007BBBF7 /* SpirvIntrinsics.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F99426865A550006F71B /* SpirvIntrinsics.cpp */; };
DCFD7CEF2A45BA92007BBBF7 /* linkValidate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F9AA26865A550006F71B /* linkValidate.cpp */; };
DCFD7CF02A45BA92007BBBF7 /* parseConst.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F99526865A550006F71B /* parseConst.cpp */; };
DCFD7CF12A45BA92007BBBF7 /* InitializeDll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F96226865A550006F71B /* InitializeDll.cpp */; };
DCFD7CF22A45BA92007BBBF7 /* Link.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F9CD26865A550006F71B /* Link.cpp */; };
DCFD7CF32A45BA92007BBBF7 /* iomapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F99A26865A550006F71B /* iomapper.cpp */; };
DCFD7CF42A45BA92007BBBF7 /* ParseContextBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A997F9B526865A550006F71B /* ParseContextBase.cpp */; };
Expand Down Expand Up @@ -2428,9 +2420,6 @@
A997F95C26865A550006F71B /* Logger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Logger.h; sourceTree = "<group>"; };
A997F95D26865A550006F71B /* doc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = doc.cpp; sourceTree = "<group>"; };
A997F95E26865A550006F71B /* disassemble.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = disassemble.cpp; sourceTree = "<group>"; };
A997F96026865A550006F71B /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
A997F96126865A550006F71B /* InitializeDll.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InitializeDll.h; sourceTree = "<group>"; };
A997F96226865A550006F71B /* InitializeDll.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InitializeDll.cpp; sourceTree = "<group>"; };
A997F96426865A550006F71B /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
A997F96C26865A550006F71B /* ossource.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ossource.cpp; sourceTree = "<group>"; };
A997F96D26865A550006F71B /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
Expand Down Expand Up @@ -2982,7 +2971,6 @@
isa = PBXGroup;
children = (
A997F96326865A550006F71B /* glslang */,
A997F95F26865A550006F71B /* OGLCompilersDLL */,
A997F94126865A550006F71B /* SPIRV */,
);
path = glslang;
Expand Down Expand Up @@ -3073,16 +3061,6 @@
path = CInterface;
sourceTree = "<group>";
};
A997F95F26865A550006F71B /* OGLCompilersDLL */ = {
isa = PBXGroup;
children = (
A997F96026865A550006F71B /* CMakeLists.txt */,
A997F96126865A550006F71B /* InitializeDll.h */,
A997F96226865A550006F71B /* InitializeDll.cpp */,
);
path = OGLCompilersDLL;
sourceTree = "<group>";
};
A997F96326865A550006F71B /* glslang */ = {
isa = PBXGroup;
children = (
Expand Down Expand Up @@ -3796,7 +3774,6 @@
A997F9CF26865A550006F71B /* NonSemanticDebugPrintf.h in Headers */,
A997FAB326865A560006F71B /* glslang_tab.cpp.h in Headers */,
A997FAD126865A560006F71B /* ParseHelper.h in Headers */,
A997FA2026865A550006F71B /* InitializeDll.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -4517,7 +4494,6 @@
A997F9CE26865A550006F71B /* NonSemanticDebugPrintf.h in Headers */,
A997FAB226865A560006F71B /* glslang_tab.cpp.h in Headers */,
A997FAD026865A560006F71B /* ParseHelper.h in Headers */,
A997FA1F26865A550006F71B /* InitializeDll.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -4577,7 +4553,6 @@
A997F9D026865A550006F71B /* NonSemanticDebugPrintf.h in Headers */,
A997FAB426865A560006F71B /* glslang_tab.cpp.h in Headers */,
A997FAD226865A560006F71B /* ParseHelper.h in Headers */,
A997FA2126865A550006F71B /* InitializeDll.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -4694,7 +4669,6 @@
DCFD7CD72A45BA92007BBBF7 /* NonSemanticDebugPrintf.h in Headers */,
DCFD7CD82A45BA92007BBBF7 /* glslang_tab.cpp.h in Headers */,
DCFD7CD92A45BA92007BBBF7 /* ParseHelper.h in Headers */,
DCFD7CDA2A45BA92007BBBF7 /* InitializeDll.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -5549,7 +5523,6 @@
A997FA8C26865A560006F71B /* SpirvIntrinsics.cpp in Sources */,
A997FACE26865A560006F71B /* linkValidate.cpp in Sources */,
A997FA8F26865A560006F71B /* parseConst.cpp in Sources */,
A997FA2326865A550006F71B /* InitializeDll.cpp in Sources */,
A997FB2826865A560006F71B /* Link.cpp in Sources */,
A997FA9E26865A560006F71B /* iomapper.cpp in Sources */,
A997FAE926865A560006F71B /* ParseContextBase.cpp in Sources */,
Expand Down Expand Up @@ -6300,7 +6273,6 @@
A997FA8B26865A560006F71B /* SpirvIntrinsics.cpp in Sources */,
A997FACD26865A560006F71B /* linkValidate.cpp in Sources */,
A997FA8E26865A560006F71B /* parseConst.cpp in Sources */,
A997FA2226865A550006F71B /* InitializeDll.cpp in Sources */,
A997FB2726865A560006F71B /* Link.cpp in Sources */,
A997FA9D26865A560006F71B /* iomapper.cpp in Sources */,
A997FAE826865A560006F71B /* ParseContextBase.cpp in Sources */,
Expand Down Expand Up @@ -6350,7 +6322,6 @@
A997FA8D26865A560006F71B /* SpirvIntrinsics.cpp in Sources */,
A997FACF26865A560006F71B /* linkValidate.cpp in Sources */,
A997FA9026865A560006F71B /* parseConst.cpp in Sources */,
A997FA2426865A550006F71B /* InitializeDll.cpp in Sources */,
A997FB2926865A560006F71B /* Link.cpp in Sources */,
A997FA9F26865A560006F71B /* iomapper.cpp in Sources */,
A997FAEA26865A560006F71B /* ParseContextBase.cpp in Sources */,
Expand Down Expand Up @@ -6442,7 +6413,6 @@
DCFD7CEE2A45BA92007BBBF7 /* SpirvIntrinsics.cpp in Sources */,
DCFD7CEF2A45BA92007BBBF7 /* linkValidate.cpp in Sources */,
DCFD7CF02A45BA92007BBBF7 /* parseConst.cpp in Sources */,
DCFD7CF12A45BA92007BBBF7 /* InitializeDll.cpp in Sources */,
DCFD7CF22A45BA92007BBBF7 /* Link.cpp in Sources */,
DCFD7CF32A45BA92007BBBF7 /* iomapper.cpp in Sources */,
DCFD7CF42A45BA92007BBBF7 /* ParseContextBase.cpp in Sources */,
Expand Down
1 change: 0 additions & 1 deletion ExternalRevisions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,6 @@ if you encounter any building errors, you may need to re-add the *glslang* libra
*Group* in the *Project Navigator* panel:

glslang
OGLCompilersDLL
SPIRV

In the ***Choose options for adding these files*** dialog that opens, select the ***Create groups*** option,
Expand Down
2 changes: 1 addition & 1 deletion ExternalRevisions/SPIRV-Cross_repo_revision
Original file line number Diff line number Diff line change
@@ -1 +1 @@
50e90dd74e0e43e243f12a70f0326d2cf8ed3945
d9f4280f4511e9bff9bdd5147370b9ee49dbe2af
2 changes: 1 addition & 1 deletion ExternalRevisions/Vulkan-Tools_repo_revision
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1532001f7edae559af1988293eec90bc5e2607d5
afb8b9e8caeade2489372b8cf78b70b5301c8741
2 changes: 1 addition & 1 deletion ExternalRevisions/glslang_repo_revision
Original file line number Diff line number Diff line change
@@ -1 +1 @@
be564292f00c5bf0d7251c11f1c9618eb1117762
719b6b7debbfe75bd427daa0e39c347fce16cf9a
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
#include "SPIRVSupport.h"
#include "MVKStrings.h"
#include <glslang/SPIRV/GlslangToSpv.h>
#include <glslang/glslang/Include/intermediate.h>
#include <sstream>

using namespace std;
Expand Down
Binary file modified Templates/spirv-tools/build.zip
Binary file not shown.
2 changes: 1 addition & 1 deletion fetchDependencies
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
# fetchDependencies - Retrieves the correct versions of all dependencies
#
# macOS usage: ./fetchDependencies [--macos] [--ios] [--iossim] [--tvos] [--tvossim]
# macOS usage: ./fetchDependencies [--macos] [--ios] [--iossim] [--maccat] [--tvos] [--tvossim]
# [--visionos] [--visionossim] [--all] [--none]
# [-v] [--debug] [--build-spirv-tools]
# [--v-headers-root path] [--spirv-cross-root path] [--glslang-root path]
Expand Down