[Mesa-dev] [PATCH 1/2] nir: Add global invocation id intrinsic.

Jordan Justen jordan.l.justen at intel.com
Fri Jun 1 22:35:50 UTC 2018


Reviewed-by: Jordan Justen <jordan.l.justen at intel.com>

On 2018-06-01 15:21:33, Plamena Manolova wrote:
> Add the missing nir intrinsic for the gl_GlobalInvocationID
> compute shader variable.
> 
> Signed-off-by: Plamena Manolova <plamena.n.manolova at gmail.com>
> ---
>  src/compiler/nir/nir.c             | 4 ++++
>  src/compiler/nir/nir_intrinsics.py | 1 +
>  2 files changed, 5 insertions(+)
> 
> diff --git a/src/compiler/nir/nir.c b/src/compiler/nir/nir.c
> index dc1c560319..36a79f57ee 100644
> --- a/src/compiler/nir/nir.c
> +++ b/src/compiler/nir/nir.c
> @@ -2051,6 +2051,8 @@ nir_intrinsic_from_system_value(gl_system_value val)
>        return nir_intrinsic_load_subgroup_id;
>     case SYSTEM_VALUE_LOCAL_GROUP_SIZE:
>        return nir_intrinsic_load_local_group_size;
> +   case SYSTEM_VALUE_GLOBAL_INVOCATION_ID:
> +      return nir_intrinsic_load_global_invocation_id;
>     default:
>        unreachable("system value does not directly correspond to intrinsic");
>     }
> @@ -2130,6 +2132,8 @@ nir_system_value_from_intrinsic(nir_intrinsic_op intrin)
>        return SYSTEM_VALUE_SUBGROUP_ID;
>     case nir_intrinsic_load_local_group_size:
>        return SYSTEM_VALUE_LOCAL_GROUP_SIZE;
> +   case nir_intrinsic_load_global_invocation_id:
> +      return SYSTEM_VALUE_GLOBAL_INVOCATION_ID;
>     default:
>        unreachable("intrinsic doesn't produce a system value");
>     }
> diff --git a/src/compiler/nir/nir_intrinsics.py b/src/compiler/nir/nir_intrinsics.py
> index ac8a67f44b..484b2d4fd6 100644
> --- a/src/compiler/nir/nir_intrinsics.py
> +++ b/src/compiler/nir/nir_intrinsics.py
> @@ -449,6 +449,7 @@ system_value("subgroup_lt_mask", 0)
>  system_value("num_subgroups", 1)
>  system_value("subgroup_id", 1)
>  system_value("local_group_size", 3)
> +system_value("global_invocation_id", 3)
>  
>  # Blend constant color values.  Float values are clamped.#
>  system_value("blend_const_color_r_float", 1)
> -- 
> 2.11.0
> 


More information about the mesa-dev mailing list