diff --git a/SPIRV/GlslangToSpv.cpp b/SPIRV/GlslangToSpv.cpp index 749d013340cc308ce821c195483a86dbda7e1ed1..6d8910938348dae1fb71390af02ae1b963c09e5f 100755 --- a/SPIRV/GlslangToSpv.cpp +++ b/SPIRV/GlslangToSpv.cpp @@ -340,8 +340,10 @@ void TranslateMemoryDecoration(const glslang::TQualifier& qualifier, std::vector { if (qualifier.coherent) memory.push_back(spv::DecorationCoherent); - if (qualifier.volatil) + if (qualifier.volatil) { memory.push_back(spv::DecorationVolatile); + memory.push_back(spv::DecorationCoherent); + } if (qualifier.restrict) memory.push_back(spv::DecorationRestrict); if (qualifier.readonly) diff --git a/Test/baseResults/spv.memoryQualifier.frag.out b/Test/baseResults/spv.memoryQualifier.frag.out index d6ae535cb43014e8209c7d44496cdb95bb9bb5ea..02783b98355def2346a4024c49230bd9767954b3 100644 --- a/Test/baseResults/spv.memoryQualifier.frag.out +++ b/Test/baseResults/spv.memoryQualifier.frag.out @@ -35,6 +35,7 @@ spv.memoryQualifier.frag Decorate 19(i2D) DescriptorSet 0 Decorate 19(i2D) Binding 1 Decorate 19(i2D) Volatile + Decorate 19(i2D) Coherent Decorate 28(i2DRect) DescriptorSet 0 Decorate 28(i2DRect) Binding 2 Decorate 28(i2DRect) Restrict @@ -48,6 +49,7 @@ spv.memoryQualifier.frag MemberDecorate 49(Data) 1 Offset 8 MemberDecorate 50(Buffer) 0 Coherent MemberDecorate 50(Buffer) 0 Volatile + MemberDecorate 50(Buffer) 0 Coherent MemberDecorate 50(Buffer) 0 Offset 0 MemberDecorate 50(Buffer) 1 Coherent MemberDecorate 50(Buffer) 1 Restrict diff --git a/glslang/Include/revision.h b/glslang/Include/revision.h index 13807bc6cf769c49871bce1af7ac24cfedee4384..d18126d00e060dcb3305ed7bb7e470f69820f3de 100644 --- a/glslang/Include/revision.h +++ b/glslang/Include/revision.h @@ -1,3 +1,3 @@ // This header is generated by the make-revision script. -#define GLSLANG_PATCH_LEVEL 2764 +#define GLSLANG_PATCH_LEVEL 2765