Update external dependency libraries for Vulkan SDK 1.2.170.

This commit is contained in:
Bill Hollings 2021-02-22 19:14:00 -05:00
parent d2ddba1b52
commit d78de04b56
10 changed files with 3164 additions and 3196 deletions

View File

@ -26,19 +26,67 @@ Released 2021/02/22
can now be used with a `VkInstance` from another Vulkan layer, or with a `VK_NULL_HANDLE VkInstance`. can now be used with a `VkInstance` from another Vulkan layer, or with a `VK_NULL_HANDLE VkInstance`.
- `MVKConfiguration` extended to cover all MoltenVK environment variables. - `MVKConfiguration` extended to cover all MoltenVK environment variables.
- Report accurate value of 8 for `VkPhysicalDeviceLimits::maxBoundDescriptorSets`. - Report accurate value of 8 for `VkPhysicalDeviceLimits::maxBoundDescriptorSets`.
- Add ability to automatically capture first GPU frame by setting `MVKConfiguration::autoGPUCaptureScope` - Advertise macOS M1 GPU as `VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU`.
(or environment variable `MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE`) to `2`. - For Vulkan semaphores, prefer using `MTLFence` over `MTLEvent`.
- Support `immmutableSamplers` with sampler arrays.
- Query pools write to dedicated temporary internal buffer to span multiple render passes
and support larger query counts.
- Fixes for race conditions in CTS multithread tests, guarding `MTLDevice` on cross-thread syncing.
- Set Metal buffer alignment to 256 on non-Apple Silicon iOS/tvOS simulators.
- `MVKMTLBufferAllocation`: Support device-local temp buffers for tessellation,
indirect multiview, or occlusion queries buffer usage.
- `MVKPixelFormats`: Enable `RenderTarget` usage for linear textures on Apple GPUs.
- `MVKRenderPass`: Use a non-trivial granularity for TBDR GPUs.
- Don't use barriers in render passes on Apple GPUs.
- `MVKGraphicsPipeline`: Fix color write mask with `RGB9E5` RTs.
- `MVKImagePlane`: When sync'ing, create the texture if it doesn't exist.
- `MVKRenderPass`: Don't use `Load/Store` actions for memoryless.
- `MVKRenderPass`: Only use `MTLStorageModeMemoryless` where available.
- `MVKDeviceMemory`: Don't consider Memoryless host-accessible on *macOS/tvOS*.
- `MVKCmdResolveImage` fix incorrectly changing first resolve layer's src/dst base layer.
- `MVKPhysicalDevice`: Require Mac family 2 for render without attachments.
- `MVKPhysicalDevice`: Disable SIMD-group permutation for Mac family 1.
- `MVKPhysicalDevice`: Clamp maximum buffer range to 4 GiB - 1.
- `MVKMTLBufferAllocation`: Mark temp buffers as volatile.
- `SPIRVReflection`: Multiple entry point support for `getShaderOutputs()`.
- Remove obsolete `MVKVector`, which was long ago replaced with `MVKSmallVector`.
- Remove official support for submitting shaders directly containing MSL source code or compiled MSL code. - Remove official support for submitting shaders directly containing MSL source code or compiled MSL code.
MSL shaders may still be direclty submitted, and may work, but it is not officially supported at this time. MSL shaders may still be directly submitted, and may work, but it is not officially supported at this time.
Future versions of **MoltenVK** may support direct MSL submission again. Future versions of **MoltenVK** may support direct MSL submission again.
- Remove `ONLY_ACTIVE_ARCH` from Debug builds. **MoltenVK _Debug_** builds now build for all platform architectures. - Remove `ONLY_ACTIVE_ARCH` from Debug builds. **MoltenVK _Debug_** builds now build for all platform architectures.
- Add ability to automatically capture first GPU frame by setting `MVKConfiguration::autoGPUCaptureScope`
(or environment variable `MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE`) to `2`.
- Support _GitHub Actions_ for CI builds on pull requests. - Support _GitHub Actions_ for CI builds on pull requests.
- Support pre-built binary artifacts from _GitHub Actions_ CI builds.
- `Makefile` and `fetchDependencies` support `xcpretty`, if available.
- Remove support for _Travis-CI_. - Remove support for _Travis-CI_.
- `Makefile` and `fetchDependencies` support `xcpretty` (if available)
- Update `VK_MVK_MOLTENVK_SPEC_VERSION` to `30`. - Update `VK_MVK_MOLTENVK_SPEC_VERSION` to `30`.
- Update copyright notices to year 2021. - Update copyright notices to year 2021.
- Update Xcode build settings check to _Xcode 12.4_. - Update Xcode build settings check to _Xcode 12.4_.
- Support legacy building on _Xcode 11.7_.
- Update dependency libraries to match *Vulkan SDK 1.2.170*.
- Update to latest SPIRV-Cross version:
- MSL: Gracefully assign automatic input locations to builtin attributes.
- MSL: Refactor out location consumption count computation.
- MSL: Always return `[[position]]` when required.
- MSL: Fix some edge cases in input attachment handling.
- MSL: Fix various bugs with framebuffer fetch on macOS and argument buffers.
- MSL: Always use input_attachment_index for framebuffer fetch binding.
- MSL: Make sure initialized output builtins are considered active.
- MSL: Always enable Outputs in vertex stages.
- MSL: Only consider builtin variables and flatten builtin arrays if they are part of IO interface.
- MSL: Handle load and store to TessLevel array in TESC.
- MSL: Fixup type when using tessellation levels in TESC functions.
- MSL: Fix automatic assign of builtin attributes in tessellation.
- GLSL/MSL: Handle more complicated tessellation Output initializers.
- MSL: Emit correct initializer for tessellation control points.
- MSL: Handle initializers for tess levels.
- MSL: Fix initializer for tess level outputs.
- MSL: Fix broken reserved identifier handling for entry points.
- MSL: Handle reserved identifiers for entry point.
- Fix pathological complexity explosion for certain shaders.
- Improve handling of complex variable initialization.
- Expose position invariance.
MoltenVK 1.1.1 MoltenVK 1.1.1

File diff suppressed because it is too large Load Diff

View File

@ -205,7 +205,7 @@ the *SPIRV-Tools* library to the `ExternalDependencies` *Xcode* project as follo
6. In the `Scripts` folder, run `./packagePregenSpirvToolsHeaders`, which will fetch and build the 6. In the `Scripts` folder, run `./packagePregenSpirvToolsHeaders`, which will fetch and build the
full `SPIRV-Tools` library and will update `Templates/spirv-tools/build.zip` from the `*.h` and full `SPIRV-Tools` library and will update `Templates/spirv-tools/build.zip` from the `*.h` and
`*.inc` files in `External/glslang/External/spirv-tools/build`. Test by running `./fetchDependencies` `*.inc` files in `External/glslang/External/spirv-tools/build`. Test by running `./fetchDependencies --all`
and a **MoltenVK** build. and a **MoltenVK** build.

View File

@ -1 +1 @@
4741bbaa641d118ca1864094decd1ba977316161 621884d70917038caf7509f7b1b3c143807ff43f

View File

@ -1 +1 @@
87aaa16d4c8e1ac70f8f04acdcd46eed4bd77209 1d99b835ec3cd5a7fb2f2a2dd9a615ee2d1f0101

View File

@ -1 +1 @@
0387f633882df56347c368149759b825ec55fd71 88ea55de928a08ba5c5f65a93d1e7c8f666fc43f

View File

@ -1 +1 @@
753fc69bac132e58da6d8864a9930cc587fde60a 16cb7667f5de831ac042c7fa9eb8c771260197fe

View File

@ -1 +1 @@
c594de23cdd790d64ad5f9c8b059baae0ee2941d e56beaee736863ce48455955158f1839e6e4c1a1

Binary file not shown.

View File

@ -32,7 +32,7 @@
# binaries for all supported platforms. # binaries for all supported platforms.
# #
# --none # --none
# Don't build the external libraries for any platform. # Don't build the external libraries for any platform (this is the default).
# #
# Multiple platform options may be specified. At least one platform option must be specified. # Multiple platform options may be specified. At least one platform option must be specified.
# #