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
|
||||
future `MTLSharedEvent` Vulkan extension)
|
||||
- `VK_KHR_multiview`
|
||||
- `VK_KHR_shader_subgroup_extended_types`
|
||||
- Remove support for obsolete `VK_EXTX_portability_subset` extension.
|
||||
- Redesign build and linking options that leverage newer framework technology:
|
||||
- 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*.
|
||||
- Remove support for distinct legacy frameworks and static libraries.
|
||||
- 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
|
||||
patches per workgroup.
|
||||
- `vkCmdBindDescriptorSets` order `pDynamicOffsets` by descriptor binding number
|
||||
within each descriptor set.
|
||||
- `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*.
|
||||
- `fetchDependencies` builds serially by default for better build script integration.
|
||||
- Combine `MoltenVKSPIRVToMSLConverter` and `MoltenVKGLSLToSPIRVConverter`
|
||||
frameworks into a single `MoltenVKShaderConverter` framework.
|
||||
- Fix Metal validation error when occlusion query and renderpass are in separate
|
||||
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`.
|
||||
- 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
|
||||
cd ".."
|
||||
./fetchDependencies --build-spirv-tools --no-parallel-build --none
|
||||
./fetchDependencies --build-spirv-tools --none
|
||||
cd - > /dev/null
|
||||
|
||||
echo Updating SPIRV-Tools template build directory
|
||||
|
Binary file not shown.
@ -92,27 +92,22 @@ while (( "$#" )); do
|
||||
case "$1" in
|
||||
--ios)
|
||||
BLD_IOS="Y"
|
||||
BLD_SPECIFIED="Y"
|
||||
shift 1
|
||||
;;
|
||||
--iossim)
|
||||
BLD_IOS_SIM="Y"
|
||||
BLD_SPECIFIED="Y"
|
||||
shift 1
|
||||
;;
|
||||
--tvos)
|
||||
BLD_TVOS="Y"
|
||||
BLD_SPECIFIED="Y"
|
||||
shift 1
|
||||
;;
|
||||
--tvossim)
|
||||
BLD_TVOS_SIM="Y"
|
||||
BLD_SPECIFIED="Y"
|
||||
shift 1
|
||||
;;
|
||||
--macos)
|
||||
BLD_MACOS="Y"
|
||||
BLD_SPECIFIED="Y"
|
||||
shift 1
|
||||
;;
|
||||
--all)
|
||||
@ -121,12 +116,10 @@ while (( "$#" )); do
|
||||
BLD_TVOS="Y"
|
||||
BLD_TVOS_SIM="Y"
|
||||
BLD_MACOS="Y"
|
||||
BLD_SPECIFIED="Y"
|
||||
shift 1
|
||||
;;
|
||||
--none)
|
||||
BLD_NONE="Y"
|
||||
BLD_SPECIFIED="Y"
|
||||
shift 1
|
||||
;;
|
||||
--debug)
|
||||
@ -362,15 +355,6 @@ cd ..
|
||||
|
||||
# -------------- 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 ========== Started building dependency libraries at `date +"%r"` ==========
|
||||
echo Please be patient on first build
|
||||
@ -379,6 +363,7 @@ echo Please be patient on first build
|
||||
# 1 - OS
|
||||
# 2 - platform
|
||||
function build_impl() {
|
||||
BLD_SPECIFIED="Y"
|
||||
XC_OS=${1}
|
||||
XC_PLTFM=${2}
|
||||
|
||||
@ -422,10 +407,6 @@ if [ "$XC_USE_BCKGND" != "" ]; then
|
||||
trap "kill 0" EXIT
|
||||
fi
|
||||
|
||||
if [ "$BLD_NONE" != "" ]; then
|
||||
echo Not building any platforms
|
||||
fi
|
||||
|
||||
if [ "$BLD_MACOS" != "" ]; then
|
||||
build "macOS" "macOS"
|
||||
fi
|
||||
@ -451,11 +432,23 @@ if [ "$XC_USE_BCKGND" != "" ]; then
|
||||
wait
|
||||
fi
|
||||
|
||||
if [ "$BLD_SPECIFIED" != "" ]; then
|
||||
# Build XCFrameworks, update latest symlink, and clean MoltenVK for rebuild
|
||||
PROJECT_DIR="."
|
||||
CONFIGURATION=${XC_CONFIG}
|
||||
. "./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"` ==========
|
||||
exit 0
|
||||
|
Loading…
x
Reference in New Issue
Block a user