Mesa (master): glsl: add gl_LocalGroupSizeARB as a system value

Samuel Pitoiset hakzsam at kemper.freedesktop.org
Thu Oct 6 22:25:22 UTC 2016


Module: Mesa
Branch: master
Commit: 48de9aaa72ee0f5eb9232784f54c7feb97e3fb85
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=48de9aaa72ee0f5eb9232784f54c7feb97e3fb85

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Thu Sep  8 21:28:11 2016 +0200

glsl: add gl_LocalGroupSizeARB as a system value

v2: - only add it if the ext is enabled (Ilia)

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

---

 src/compiler/glsl/builtin_variables.cpp | 6 ++++++
 src/compiler/shader_enums.h             | 1 +
 2 files changed, 7 insertions(+)

diff --git a/src/compiler/glsl/builtin_variables.cpp b/src/compiler/glsl/builtin_variables.cpp
index 36a8667..10a8750 100644
--- a/src/compiler/glsl/builtin_variables.cpp
+++ b/src/compiler/glsl/builtin_variables.cpp
@@ -1249,6 +1249,12 @@ builtin_variable_generator::generate_cs_special_vars()
                     "gl_LocalInvocationID");
    add_system_value(SYSTEM_VALUE_WORK_GROUP_ID, uvec3_t, "gl_WorkGroupID");
    add_system_value(SYSTEM_VALUE_NUM_WORK_GROUPS, uvec3_t, "gl_NumWorkGroups");
+
+   if (state->ARB_compute_variable_group_size_enable) {
+      add_system_value(SYSTEM_VALUE_LOCAL_GROUP_SIZE,
+                       uvec3_t, "gl_LocalGroupSizeARB");
+   }
+
    if (state->ctx->Const.LowerCsDerivedVariables) {
       add_variable("gl_GlobalInvocationID", uvec3_t, ir_var_auto, 0);
       add_variable("gl_LocalInvocationIndex", uint_t, ir_var_auto, 0);
diff --git a/src/compiler/shader_enums.h b/src/compiler/shader_enums.h
index c3a62e0..b6e048e 100644
--- a/src/compiler/shader_enums.h
+++ b/src/compiler/shader_enums.h
@@ -472,6 +472,7 @@ typedef enum
    SYSTEM_VALUE_GLOBAL_INVOCATION_ID,
    SYSTEM_VALUE_WORK_GROUP_ID,
    SYSTEM_VALUE_NUM_WORK_GROUPS,
+   SYSTEM_VALUE_LOCAL_GROUP_SIZE,
    /*@}*/
 
    /**




More information about the mesa-commit mailing list