Implement GL_EXT_maximal_reconvergence

This commit is contained in:
Jeff Bolz 2022-01-06 19:47:45 -06:00 committed by arcady-lunarg
parent 7eea61b5a3
commit 8066fa086b
16 changed files with 1452 additions and 1384 deletions

View file

@ -345,6 +345,7 @@ public:
needToLegalize(false),
binaryDoubleOutput(false),
subgroupUniformControlFlow(false),
maximalReconvergence(false),
usePhysicalStorageBuffer(false),
spirvRequirement(nullptr),
spirvExecutionMode(nullptr),
@ -963,6 +964,9 @@ public:
void setSubgroupUniformControlFlow() { subgroupUniformControlFlow = true; }
bool getSubgroupUniformControlFlow() const { return subgroupUniformControlFlow; }
void setMaximalReconvergence() { maximalReconvergence = true; }
bool getMaximalReconvergence() const { return maximalReconvergence; }
// GL_EXT_spirv_intrinsics
void insertSpirvRequirement(const TSpirvRequirement* spirvReq);
bool hasSpirvRequirement() const { return spirvRequirement != nullptr; }
@ -1226,6 +1230,7 @@ protected:
bool needToLegalize;
bool binaryDoubleOutput;
bool subgroupUniformControlFlow;
bool maximalReconvergence;
bool usePhysicalStorageBuffer;
TSpirvRequirement* spirvRequirement;