diff --git a/SPIRV/SpvBuilder.cpp b/SPIRV/SpvBuilder.cpp index 289d59af..c795ca89 100644 --- a/SPIRV/SpvBuilder.cpp +++ b/SPIRV/SpvBuilder.cpp @@ -469,7 +469,10 @@ Id Builder::makeImageType(Id sampledType, Dim dim, bool depth, bool arrayed, boo if (ms) { if (sampled == 2) { - addCapability(CapabilityStorageImageMultisample); + // Images used with subpass data are not storage + // images, so don't require the capability for them. + if (dim != Dim::DimSubpassData) + addCapability(CapabilityStorageImageMultisample); if (arrayed) addCapability(CapabilityImageMSArray); } diff --git a/Test/baseResults/hlsl.subpass.frag.out b/Test/baseResults/hlsl.subpass.frag.out index 4eb63374..470699a7 100644 --- a/Test/baseResults/hlsl.subpass.frag.out +++ b/Test/baseResults/hlsl.subpass.frag.out @@ -434,7 +434,6 @@ gl_FragCoord origin is upper left // Id's are bound by 204 Capability Shader - Capability StorageImageMultisample Capability InputAttachment 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 diff --git a/Test/baseResults/spv.register.subpass.frag.out b/Test/baseResults/spv.register.subpass.frag.out index 8b7c2923..2a223264 100644 --- a/Test/baseResults/spv.register.subpass.frag.out +++ b/Test/baseResults/spv.register.subpass.frag.out @@ -4,7 +4,6 @@ spv.register.subpass.frag // Id's are bound by 40 Capability Shader - Capability StorageImageMultisample Capability InputAttachment 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 diff --git a/Test/baseResults/spv.shaderFragMaskAMD.frag.out b/Test/baseResults/spv.shaderFragMaskAMD.frag.out index dc3eb0d7..56081b12 100644 --- a/Test/baseResults/spv.shaderFragMaskAMD.frag.out +++ b/Test/baseResults/spv.shaderFragMaskAMD.frag.out @@ -4,7 +4,6 @@ spv.shaderFragMaskAMD.frag // Id's are bound by 80 Capability Shader - Capability StorageImageMultisample Capability InputAttachment Capability FragmentMaskAMD Extension "SPV_AMD_shader_fragment_mask" diff --git a/Test/baseResults/spv.subpass.frag.out b/Test/baseResults/spv.subpass.frag.out index 8233653e..76248982 100644 --- a/Test/baseResults/spv.subpass.frag.out +++ b/Test/baseResults/spv.subpass.frag.out @@ -4,7 +4,6 @@ spv.subpass.frag // Id's are bound by 67 Capability Shader - Capability StorageImageMultisample Capability InputAttachment 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450