Make minimum GLSL version for compute shaders GLSL 430
Compute shaders were added to the core OpenGL spec in version 4.3.
Also don't output GL_ARB_explicit_attrib_location extension directive
for compute shaders. This extension is only relevant for vertex and
fragment shaders.
BUG=angleproject:1442
TEST=angle_end2end_tests
Change-Id: I92021ac048b38ffbc5a61af408b37c387193389b
Reviewed-on: https://chromium-review.googlesource.com/418657
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
diff --git a/src/compiler/translator/VersionGLSL.cpp b/src/compiler/translator/VersionGLSL.cpp
index 9e593ac..37e8ce1 100644
--- a/src/compiler/translator/VersionGLSL.cpp
+++ b/src/compiler/translator/VersionGLSL.cpp
@@ -6,6 +6,8 @@
#include "compiler/translator/VersionGLSL.h"
+#include "angle_gl.h"
+
namespace sh
{
@@ -55,6 +57,10 @@
{
ensureVersionIsAtLeast(GLSL_VERSION_120);
}
+ if (type == GL_COMPUTE_SHADER)
+ {
+ ensureVersionIsAtLeast(GLSL_VERSION_430);
+ }
}
void TVersionGLSL::visitSymbol(TIntermSymbol *node)