Update dependency libraries to match Vulkan SDK 1.2.154.
This commit is contained in:
parent
ec7189b3f7
commit
9f2fc8f7d0
@ -39,6 +39,7 @@ Released 2020/09/28
|
|||||||
- `VK_KHR_external_semaphore_capabilities` (non-functional groundwork for
|
- `VK_KHR_external_semaphore_capabilities` (non-functional groundwork for
|
||||||
future `MTLSharedEvent` Vulkan extension)
|
future `MTLSharedEvent` Vulkan extension)
|
||||||
- `VK_KHR_multiview`
|
- `VK_KHR_multiview`
|
||||||
|
- `VK_KHR_shader_subgroup_extended_types`
|
||||||
- Remove support for obsolete `VK_EXTX_portability_subset` extension.
|
- Remove support for obsolete `VK_EXTX_portability_subset` extension.
|
||||||
- Redesign build and linking options that leverage newer framework technology:
|
- Redesign build and linking options that leverage newer framework technology:
|
||||||
- Add comprehensive support for multi-platform, multi-architecture `XCFrameworks`.
|
- Add comprehensive support for multi-platform, multi-architecture `XCFrameworks`.
|
||||||
@ -46,18 +47,83 @@ Released 2020/09/28
|
|||||||
- Add support for *Apple Silicon* builds for *macOS* and *Simulators*.
|
- Add support for *Apple Silicon* builds for *macOS* and *Simulators*.
|
||||||
- Remove support for distinct legacy frameworks and static libraries.
|
- Remove support for distinct legacy frameworks and static libraries.
|
||||||
- Remove support for fat libraries and frameworks that span device and simulators.
|
- Remove support for fat libraries and frameworks that span device and simulators.
|
||||||
|
- Combine `MoltenVKSPIRVToMSLConverter` and `MoltenVKGLSLToSPIRVConverter` frameworks
|
||||||
|
into a single `MoltenVKShaderConverter` framework.
|
||||||
|
- Support copying between 3D and 2D images.
|
||||||
|
- Support clearing 3D images.
|
||||||
|
- Support linear images and buffer views in shared memory on *macOS 10.15.5+*.
|
||||||
|
- Support `VK_IMAGE_CREATE_EXTENDED_USAGE_BIT`.
|
||||||
|
- Support multiple aliased images for dedicated image memory allocations.
|
||||||
- Improve performance of tessellation control pipeline stage by processing multiple
|
- Improve performance of tessellation control pipeline stage by processing multiple
|
||||||
patches per workgroup.
|
patches per workgroup.
|
||||||
- `vkCmdBindDescriptorSets` order `pDynamicOffsets` by descriptor binding number
|
- `vkCmdBindDescriptorSets` order `pDynamicOffsets` by descriptor binding number
|
||||||
within each descriptor set.
|
within each descriptor set.
|
||||||
- `vkCmdCopyImage` on macOS flush non-coherent image memory before copy operation.
|
- `vkCmdCopyImage` on macOS flush non-coherent image memory before copy operation.
|
||||||
|
- Process multiple patches per workgroup in a tessellation control shader.
|
||||||
|
- Initialize tessellation related variables conditionally in indirect draws.
|
||||||
|
- Fix build errors on Simulator not supporting `MTLDrawable` present time options.
|
||||||
|
- Fix `dynamicOffsets` ordering based on binding index.
|
||||||
|
- Ensure the base texture is created when creating a view texture.
|
||||||
|
- Fix features, alignment, and image properties of chroma subsampled formats.
|
||||||
|
- Disable `variableMultisampleRate` feature.
|
||||||
|
- Permit renderpass to have no attachments.
|
||||||
|
- Clear linear images using a compute shader.
|
||||||
|
- Reject attempts to create compressed linear images.
|
||||||
|
- Always use a texel buffer for atomic linear storage images.
|
||||||
|
- Use deferred store actions instead of tracking multi-pass draws.
|
||||||
|
- Use `MTLRenderPassDescriptor renderTargetWidth` and `renderTargetHeight` on macOS 10.15 and newer.
|
||||||
|
- Use a 2D non-arrayed view for 2D non-arrayed attachments.
|
||||||
|
- Use arrayed textures for layered subpass input.
|
||||||
|
- Use layered rendering when clearing or resolving images whenever possible,
|
||||||
|
and take `renderArea` into account.
|
||||||
|
- Streamline image copying when the entire source is being copied to the entire destination.
|
||||||
|
- Don't set `renderTargetArrayLength` on devices that don't support it.
|
||||||
|
- Don't attempt to clear unused attachments and fix vertex count for clearing multiple layers.
|
||||||
|
- Don't encode commands that draw zero vertices.
|
||||||
|
- Ignore `addressModeW` on samplers with unnormalized coordinates.
|
||||||
|
- Flip GPU when swapchain is created, not when device object is created,
|
||||||
|
to optimize this condition if it is not needed.
|
||||||
|
- Flush source image of a transfer on *macOS*.
|
||||||
|
- Fix offset for texel buffers and heaps for multi-planar images.
|
||||||
|
- Fix memory leak when object create fails.
|
||||||
|
- Fix several use-after-freed errors.
|
||||||
|
- Fix applying divisors to instanced vertex attributes.
|
||||||
|
- Fix issue in accessing `MTLTexture` for swapchain image planes.
|
||||||
|
- Fix occasional crash on vertex stage indirect draws.
|
||||||
|
- Fix reported image format properties for 1D images as 2D.
|
||||||
|
- `VK_EXT_vertex_attribute_divisor` fix issues with zero divisors.
|
||||||
- Re-add support for bitcode generation on *iOS* and *tvOS*.
|
- Re-add support for bitcode generation on *iOS* and *tvOS*.
|
||||||
- `fetchDependencies` builds serially by default for better build script integration.
|
- `fetchDependencies` builds serially by default for better build script integration.
|
||||||
- Combine `MoltenVKSPIRVToMSLConverter` and `MoltenVKGLSLToSPIRVConverter`
|
- Combine `MoltenVKSPIRVToMSLConverter` and `MoltenVKGLSLToSPIRVConverter`
|
||||||
frameworks into a single `MoltenVKShaderConverter` framework.
|
frameworks into a single `MoltenVKShaderConverter` framework.
|
||||||
- Fix Metal validation error when occlusion query and renderpass are in separate
|
- Fix Metal validation error when occlusion query and renderpass are in separate
|
||||||
Vulkan command buffers.
|
Vulkan command buffers.
|
||||||
|
- Fix a crash on starting a query outside a render pass.
|
||||||
|
- Fix Metal validation error that forbids rendering to an image of zero size.
|
||||||
|
- Fix issue where descriptor pool releasing descriptor sets it doesn't own.
|
||||||
|
- Fix issue where load/store actions not set in renderpass that includes compute stage.
|
||||||
|
- Prevent accidental `setColorStoreAction` for non-color attachments.
|
||||||
|
- Fix image copy destination extent of compressed images.
|
||||||
|
- Fix image resolve sub-region extent.
|
||||||
|
- Fix owner of merged `MVKShaderLibraries`.
|
||||||
|
- Fix rounding of buffer sizing when `VK_WHOLE_SIZE` is used.
|
||||||
|
- Fix detection of indexed draw calls.
|
||||||
- `vkSetMTLTextureMVK()` Fix crash if incoming `MTLTexture` does not have an associated `IOSurface`.
|
- `vkSetMTLTextureMVK()` Fix crash if incoming `MTLTexture` does not have an associated `IOSurface`.
|
||||||
|
- Update dependency libraries to match *Vulkan SDK 1.2.154*.
|
||||||
|
- Update to latest SPIRV-Cross version:
|
||||||
|
- MSL: Fix handling of matrices and structs in the output control point array.
|
||||||
|
- MSL: Enclose args when convert `distance(a,b)` to `abs(a-b)`.
|
||||||
|
- MSL: Fix multiview view index calculation with a non-zero base instance.
|
||||||
|
- MSL: Don't set the layer for multiview if the device doesn't support it.
|
||||||
|
- MSL: Fix `OpCompositeInsert` and `OpVectorInsertDynamic`.
|
||||||
|
- MSL: Support layered input attachments.
|
||||||
|
- Ensure that we use primary alias type when emitting flattened members.
|
||||||
|
- Only rewrite type aliases for the base type.
|
||||||
|
- Overhaul how we deal with reserved identifiers.
|
||||||
|
- Implement a simple evaluator of specialization constants.
|
||||||
|
- Deal with case where a selection construct conditionally merges/breaks.
|
||||||
|
- Allow `flip_vert_y` in all relevant stages.
|
||||||
|
- Clean up conditional branch codegen.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1 +1 @@
|
|||||||
bad9dab8df6f2e6b80da9693db247b9357aebd2f
|
e6f5ce6b8998f551f3400ad743b77be51bbe3019
|
||||||
|
@ -1 +1 @@
|
|||||||
3b36fdc64014844db78671fa0ca1c0ef184e5b0d
|
2bfd6a752dc6cb26ceda4ec9d56e7dce98527680
|
||||||
|
@ -1 +1 @@
|
|||||||
91721642252a38f9162ec888d48886efce536eb6
|
a1fe1176690ec2574deb4dd3be6c4e62d1f5d186
|
||||||
|
@ -1 +1 @@
|
|||||||
3ee5f2f1d3316e228916788b300d786bb574d337
|
bacaef3237c515e40d1a24722be48c0a0b30f75f
|
||||||
|
@ -16,7 +16,7 @@ TPLT_BLD_DIR="${TPLT_DIR}/build"
|
|||||||
|
|
||||||
# Ensure the SPIRV-Tools library is fully built
|
# Ensure the SPIRV-Tools library is fully built
|
||||||
cd ".."
|
cd ".."
|
||||||
./fetchDependencies --build-spirv-tools --no-parallel-build --none
|
./fetchDependencies --build-spirv-tools --none
|
||||||
cd - > /dev/null
|
cd - > /dev/null
|
||||||
|
|
||||||
echo Updating SPIRV-Tools template build directory
|
echo Updating SPIRV-Tools template build directory
|
||||||
|
Binary file not shown.
@ -92,27 +92,22 @@ while (( "$#" )); do
|
|||||||
case "$1" in
|
case "$1" in
|
||||||
--ios)
|
--ios)
|
||||||
BLD_IOS="Y"
|
BLD_IOS="Y"
|
||||||
BLD_SPECIFIED="Y"
|
|
||||||
shift 1
|
shift 1
|
||||||
;;
|
;;
|
||||||
--iossim)
|
--iossim)
|
||||||
BLD_IOS_SIM="Y"
|
BLD_IOS_SIM="Y"
|
||||||
BLD_SPECIFIED="Y"
|
|
||||||
shift 1
|
shift 1
|
||||||
;;
|
;;
|
||||||
--tvos)
|
--tvos)
|
||||||
BLD_TVOS="Y"
|
BLD_TVOS="Y"
|
||||||
BLD_SPECIFIED="Y"
|
|
||||||
shift 1
|
shift 1
|
||||||
;;
|
;;
|
||||||
--tvossim)
|
--tvossim)
|
||||||
BLD_TVOS_SIM="Y"
|
BLD_TVOS_SIM="Y"
|
||||||
BLD_SPECIFIED="Y"
|
|
||||||
shift 1
|
shift 1
|
||||||
;;
|
;;
|
||||||
--macos)
|
--macos)
|
||||||
BLD_MACOS="Y"
|
BLD_MACOS="Y"
|
||||||
BLD_SPECIFIED="Y"
|
|
||||||
shift 1
|
shift 1
|
||||||
;;
|
;;
|
||||||
--all)
|
--all)
|
||||||
@ -121,12 +116,10 @@ while (( "$#" )); do
|
|||||||
BLD_TVOS="Y"
|
BLD_TVOS="Y"
|
||||||
BLD_TVOS_SIM="Y"
|
BLD_TVOS_SIM="Y"
|
||||||
BLD_MACOS="Y"
|
BLD_MACOS="Y"
|
||||||
BLD_SPECIFIED="Y"
|
|
||||||
shift 1
|
shift 1
|
||||||
;;
|
;;
|
||||||
--none)
|
--none)
|
||||||
BLD_NONE="Y"
|
BLD_NONE="Y"
|
||||||
BLD_SPECIFIED="Y"
|
|
||||||
shift 1
|
shift 1
|
||||||
;;
|
;;
|
||||||
--debug)
|
--debug)
|
||||||
@ -362,15 +355,6 @@ cd ..
|
|||||||
|
|
||||||
# -------------- Build MoltenVK external library dependencies -----------------
|
# -------------- Build MoltenVK external library dependencies -----------------
|
||||||
|
|
||||||
# if no platform was specified, print usage message and exit
|
|
||||||
if [ "$BLD_SPECIFIED" = "" ]; then
|
|
||||||
echo "ERROR: You did not specify a platform to build."
|
|
||||||
echo "Include one or more of the following platform options:"
|
|
||||||
echo " --macos --ios --iossim --tvos --tvossim --all"
|
|
||||||
echo "See the instructions in the fetchDependencies script for more info."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo ========== Started building dependency libraries at `date +"%r"` ==========
|
echo ========== Started building dependency libraries at `date +"%r"` ==========
|
||||||
echo Please be patient on first build
|
echo Please be patient on first build
|
||||||
@ -379,6 +363,7 @@ echo Please be patient on first build
|
|||||||
# 1 - OS
|
# 1 - OS
|
||||||
# 2 - platform
|
# 2 - platform
|
||||||
function build_impl() {
|
function build_impl() {
|
||||||
|
BLD_SPECIFIED="Y"
|
||||||
XC_OS=${1}
|
XC_OS=${1}
|
||||||
XC_PLTFM=${2}
|
XC_PLTFM=${2}
|
||||||
|
|
||||||
@ -422,10 +407,6 @@ if [ "$XC_USE_BCKGND" != "" ]; then
|
|||||||
trap "kill 0" EXIT
|
trap "kill 0" EXIT
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$BLD_NONE" != "" ]; then
|
|
||||||
echo Not building any platforms
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$BLD_MACOS" != "" ]; then
|
if [ "$BLD_MACOS" != "" ]; then
|
||||||
build "macOS" "macOS"
|
build "macOS" "macOS"
|
||||||
fi
|
fi
|
||||||
@ -451,11 +432,23 @@ if [ "$XC_USE_BCKGND" != "" ]; then
|
|||||||
wait
|
wait
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Build XCFrameworks, update latest symlink, and clean MoltenVK for rebuild
|
if [ "$BLD_SPECIFIED" != "" ]; then
|
||||||
PROJECT_DIR="."
|
# Build XCFrameworks, update latest symlink, and clean MoltenVK for rebuild
|
||||||
CONFIGURATION=${XC_CONFIG}
|
PROJECT_DIR="."
|
||||||
. "./Scripts/create_ext_lib_xcframeworks.sh"
|
CONFIGURATION=${XC_CONFIG}
|
||||||
. "./Scripts/package_ext_libs_finish.sh"
|
. "./Scripts/create_ext_lib_xcframeworks.sh"
|
||||||
|
. "./Scripts/package_ext_libs_finish.sh"
|
||||||
|
else
|
||||||
|
if [ "$BLD_NONE" != "" ]; then
|
||||||
|
echo Not building any platforms
|
||||||
|
else
|
||||||
|
echo "WARNING: You did not specify a platform to build."
|
||||||
|
echo "To build the external libraries, include one or"
|
||||||
|
echo "more of the following platform options:"
|
||||||
|
echo " --macos --ios --iossim --tvos --tvossim --all"
|
||||||
|
echo "See the instructions in the fetchDependencies script for more info."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
echo ========== Finished at `date +"%r"` ==========
|
echo ========== Finished at `date +"%r"` ==========
|
||||||
exit 0
|
exit 0
|
||||||
|
Loading…
x
Reference in New Issue
Block a user