[Mesa-dev] [PATCH 2/4] nir: Add gl_WorkGroupID system variable

Jordan Justen jordan.l.justen at intel.com
Tue Aug 4 11:24:08 PDT 2015


Signed-off-by: Jordan Justen <jordan.l.justen at intel.com>
---
 src/glsl/nir/nir_intrinsics.h          | 1 +
 src/glsl/nir/nir_lower_system_values.c | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/src/glsl/nir/nir_intrinsics.h b/src/glsl/nir/nir_intrinsics.h
index 29b5e64..6987d42 100644
--- a/src/glsl/nir/nir_intrinsics.h
+++ b/src/glsl/nir/nir_intrinsics.h
@@ -138,6 +138,7 @@ SYSTEM_VALUE(sample_pos, 2)
 SYSTEM_VALUE(sample_mask_in, 1)
 SYSTEM_VALUE(invocation_id, 1)
 SYSTEM_VALUE(local_invocation_id, 3)
+SYSTEM_VALUE(work_group_id, 3)
 
 /*
  * The first and only index is the base address to load from.  Indirect
diff --git a/src/glsl/nir/nir_lower_system_values.c b/src/glsl/nir/nir_lower_system_values.c
index ee375ea..855dff8 100644
--- a/src/glsl/nir/nir_lower_system_values.c
+++ b/src/glsl/nir/nir_lower_system_values.c
@@ -73,6 +73,9 @@ convert_instr(nir_intrinsic_instr *instr)
    case SYSTEM_VALUE_LOCAL_INVOCATION_ID:
       op = nir_intrinsic_load_local_invocation_id;
       break;
+   case SYSTEM_VALUE_WORK_GROUP_ID:
+      op = nir_intrinsic_load_work_group_id;
+      break;
    default:
       unreachable("not reached");
    }
-- 
2.1.4



More information about the mesa-dev mailing list