Implement the extension GL_ARB_shader_ballot

Add new built-in variables and functions to the parser (SPIR-V tokens are missing).
This commit is contained in:
Rex Xu 2016-04-14 16:53:07 +08:00
parent 97f4e0fe19
commit 574ab04caa
11 changed files with 537 additions and 6 deletions

View file

@ -176,6 +176,7 @@ void TParseVersions::initializeExtensionBehavior()
extensionBehavior[E_GL_ARB_viewport_array] = EBhDisable;
extensionBehavior[E_GL_ARB_gpu_shader_int64] = EBhDisable;
extensionBehavior[E_GL_ARB_gl_spirv] = EBhDisable;
extensionBehavior[E_GL_ARB_shader_ballot] = EBhDisable;
extensionBehavior[E_GL_ARB_sparse_texture2] = EBhDisable;
extensionBehavior[E_GL_ARB_sparse_texture_clamp] = EBhDisable;
// extensionBehavior[E_GL_ARB_cull_distance] = EBhDisable; // present for 4.5, but need extension control over block members
@ -277,6 +278,7 @@ void TParseVersions::getPreamble(std::string& preamble)
"#define GL_ARB_viewport_array 1\n"
"#define GL_ARB_gpu_shader_int64 1\n"
"#define GL_ARB_gl_spirv 1\n"
"#define GL_ARB_shader_ballot 1\n"
"#define GL_ARB_sparse_texture2 1\n"
"#define GL_ARB_sparse_texture_clamp 1\n"
// "#define GL_ARB_cull_distance 1\n" // present for 4.5, but need extension control over block members