diff --git a/Docs/Whats_New.md b/Docs/Whats_New.md index eea6263d..6c389d44 100644 --- a/Docs/Whats_New.md +++ b/Docs/Whats_New.md @@ -32,6 +32,12 @@ Released 2020/03/30 - Update the `README.md` and `MoltenVK_Runtime_UserGuide.md` documents to clarify that **MoltenVK** is not a fully-compliant implementation of *Vulkan*. - Support Xcode 11.4. +- Update dependency libraries to match *Vulkan SDK 1.2.135*. +- Update to latest SPIRV-Cross version: + - MSL: Support inline uniform blocks in argument buffers. + - MSL: Move inline uniform blocks to the end of the argument buffer. + - MSL: Remove old memory_scope flag from iOS barriers. + - MSL: Fixes to array handling. diff --git a/ExternalRevisions/SPIRV-Cross_repo_revision b/ExternalRevisions/SPIRV-Cross_repo_revision index 4101c6fc..c6488227 100644 --- a/ExternalRevisions/SPIRV-Cross_repo_revision +++ b/ExternalRevisions/SPIRV-Cross_repo_revision @@ -1 +1 @@ -f9818f0804e6e73ec8afcc523b7e7f8bfc362632 +9b3c5e12be12c55533f3bd3ab9cc617ec0f393d8 diff --git a/ExternalRevisions/Vulkan-Headers_repo_revision b/ExternalRevisions/Vulkan-Headers_repo_revision index 1602b8ed..9c7eac2c 100644 --- a/ExternalRevisions/Vulkan-Headers_repo_revision +++ b/ExternalRevisions/Vulkan-Headers_repo_revision @@ -1 +1 @@ -881bbb347a08d1b5aa77f61a52a30b506de9f2bf +fb7f9c9bcd1d1544ea203a1f3d4253d0e90c5a90 diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm b/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm index cadf19ba..4e89cc79 100644 --- a/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm +++ b/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm @@ -1544,7 +1544,7 @@ void MVKPipelineCache::readData(const VkPipelineCacheCreateInfo* pCreateInfo) { if (NSSwapLittleIntToHost(hdrComponent) != pDevProps->deviceID) { return; } reader(pcUUID); // Pipeline cache UUID - if (mvkAreEqual(pcUUID, pDevProps->pipelineCacheUUID, VK_UUID_SIZE)) { return; } + if ( !mvkAreEqual(pcUUID, pDevProps->pipelineCacheUUID, VK_UUID_SIZE) ) { return; } bool done = false; while ( !done ) { @@ -1632,8 +1632,16 @@ namespace SPIRV_CROSS_NAMESPACE { opt.dispatch_base, opt.texture_1D_as_2D, opt.argument_buffers, + opt.enable_base_index_zero, opt.pad_fragment_output_components, - opt.texture_buffer_native); + opt.ios_support_base_vertex_instance, + opt.ios_use_framebuffer_fetch_subpasses, + opt.invariant_float_math, + opt.emulate_cube_array, + opt.enable_decoration_binding, + opt.texture_buffer_native, + opt.force_active_argument_buffer_resources, + opt.force_native_arrays); } template @@ -1671,9 +1679,19 @@ namespace SPIRV_CROSS_NAMESPACE { cs.lod_clamp_min, cs.lod_clamp_max, cs.max_anisotropy, + cs.planes, + cs.resolution, + cs.chroma_filter, + cs.x_chroma_offset, + cs.y_chroma_offset, + cs.swizzle, + cs.ycbcr_model, + cs.ycbcr_range, + cs.bpc, cs.compare_enable, cs.lod_clamp_enable, - cs.anisotropy_enable); + cs.anisotropy_enable, + cs.ycbcr_conversion_enable); } } @@ -1721,7 +1739,9 @@ namespace mvk { template void serialize(Archive & archive, SPIRVToMSLConversionConfiguration& ctx) { - archive(ctx.options, ctx.vertexAttributes, ctx.resourceBindings); + archive(ctx.options, + ctx.vertexAttributes, + ctx.resourceBindings); } template @@ -1740,7 +1760,8 @@ namespace mvk { template void serialize(Archive & archive, MVKShaderModuleKey& k) { - archive(k.codeSize, k.codeHash); + archive(k.codeSize, + k.codeHash); }