diff --git a/SPIRV/GlslangToSpv.cpp b/SPIRV/GlslangToSpv.cpp index 03e9cd043..2d5aa7a73 100755 --- a/SPIRV/GlslangToSpv.cpp +++ b/SPIRV/GlslangToSpv.cpp @@ -1635,7 +1635,7 @@ TGlslangToSpvTraverser::TGlslangToSpvTraverser(unsigned int spvVersion, builder.addExtension(spv::E_SPV_KHR_subgroup_uniform_control_flow); builder.addExecutionMode(shaderEntry, spv::ExecutionModeSubgroupUniformControlFlowKHR); } - if (glslangIntermediate->getMaximalReconvergence()) { + if (glslangIntermediate->getMaximallyReconverges()) { builder.addExtension(spv::E_SPV_KHR_maximal_reconvergence); builder.addExecutionMode(shaderEntry, spv::ExecutionModeMaximallyReconvergesKHR); } diff --git a/Test/spv.maximalReconvergence.vert b/Test/spv.maximalReconvergence.vert index dfd59d6c7..e152f4e97 100644 --- a/Test/spv.maximalReconvergence.vert +++ b/Test/spv.maximalReconvergence.vert @@ -2,6 +2,6 @@ #extension GL_EXT_maximal_reconvergence : enable -[[random(4)]] void main() [[maximal_reconvergence]] +[[random(4)]] void main() [[maximally_reconverges]] { } diff --git a/glslang/MachineIndependent/attribute.cpp b/glslang/MachineIndependent/attribute.cpp index 58fbc49bd..19e8faac3 100644 --- a/glslang/MachineIndependent/attribute.cpp +++ b/glslang/MachineIndependent/attribute.cpp @@ -125,8 +125,8 @@ TAttributeType TParseContext::attributeFromName(const TString& name) const return EatSubgroupUniformControlFlow; else if (name == "export") return EatExport; - else if (name == "maximal_reconvergence") - return EatMaximalReconvergence; + else if (name == "maximally_reconverges") + return EatMaximallyReconverges; else return EatNone; } @@ -362,9 +362,9 @@ void TParseContext::handleFunctionAttributes(const TSourceLoc& loc, const TAttri requireExtensions(loc, 1, &E_GL_EXT_subgroup_uniform_control_flow, "attribute"); intermediate.setSubgroupUniformControlFlow(); break; - case EatMaximalReconvergence: + case EatMaximallyReconverges: requireExtensions(loc, 1, &E_GL_EXT_maximal_reconvergence, "attribute"); - intermediate.setMaximalReconvergence(); + intermediate.setMaximallyReconverges(); break; default: warn(loc, "attribute does not apply to a function", "", ""); diff --git a/glslang/MachineIndependent/attribute.h b/glslang/MachineIndependent/attribute.h index 1fe8138f1..3b480c6f0 100644 --- a/glslang/MachineIndependent/attribute.h +++ b/glslang/MachineIndependent/attribute.h @@ -121,7 +121,7 @@ namespace glslang { EatNonReadable, EatSubgroupUniformControlFlow, EatExport, - EatMaximalReconvergence, + EatMaximallyReconverges, }; class TIntermAggregate; diff --git a/glslang/MachineIndependent/intermOut.cpp b/glslang/MachineIndependent/intermOut.cpp index 47e4b59e5..8dcdc6792 100644 --- a/glslang/MachineIndependent/intermOut.cpp +++ b/glslang/MachineIndependent/intermOut.cpp @@ -1512,8 +1512,8 @@ void TIntermediate::output(TInfoSink& infoSink, bool tree) if (getSubgroupUniformControlFlow()) infoSink.debug << "subgroup_uniform_control_flow\n"; - if (getMaximalReconvergence()) - infoSink.debug << "maximal_reconvergence\n"; + if (getMaximallyReconverges()) + infoSink.debug << "maximally_reconverges\n"; switch (language) { case EShLangVertex: diff --git a/glslang/MachineIndependent/localintermediate.h b/glslang/MachineIndependent/localintermediate.h index 865ce690a..3cd958057 100644 --- a/glslang/MachineIndependent/localintermediate.h +++ b/glslang/MachineIndependent/localintermediate.h @@ -345,7 +345,7 @@ public: needToLegalize(false), binaryDoubleOutput(false), subgroupUniformControlFlow(false), - maximalReconvergence(false), + maximallyReconverges(false), usePhysicalStorageBuffer(false), spirvRequirement(nullptr), spirvExecutionMode(nullptr), @@ -964,8 +964,8 @@ public: void setSubgroupUniformControlFlow() { subgroupUniformControlFlow = true; } bool getSubgroupUniformControlFlow() const { return subgroupUniformControlFlow; } - void setMaximalReconvergence() { maximalReconvergence = true; } - bool getMaximalReconvergence() const { return maximalReconvergence; } + void setMaximallyReconverges() { maximallyReconverges = true; } + bool getMaximallyReconverges() const { return maximallyReconverges; } // GL_EXT_spirv_intrinsics void insertSpirvRequirement(const TSpirvRequirement* spirvReq); @@ -1230,7 +1230,7 @@ protected: bool needToLegalize; bool binaryDoubleOutput; bool subgroupUniformControlFlow; - bool maximalReconvergence; + bool maximallyReconverges; bool usePhysicalStorageBuffer; TSpirvRequirement* spirvRequirement;