Looks fine.

Reviewed-by: Timothy Arceri <[email protected]>

On Mon, 2016-12-12 at 19:39 -0800, Jason Ekstrand wrote:
> ---
>  src/compiler/nir/nir_builder.h | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/src/compiler/nir/nir_builder.h
> b/src/compiler/nir/nir_builder.h
> index 0ee7d1a..44d03c8 100644
> --- a/src/compiler/nir/nir_builder.h
> +++ b/src/compiler/nir/nir_builder.h
> @@ -411,6 +411,22 @@ nir_load_var(nir_builder *build, nir_variable
> *var)
>     return &load->dest.ssa;
>  }
>  
> +static inline nir_ssa_def *
> +nir_load_deref_var(nir_builder *build, nir_deref_var *deref)
> +{
> +   const struct glsl_type *type = nir_deref_tail(&deref->deref)-
> >type;
> +   const unsigned num_components = glsl_get_vector_elements(type);
> +
> +   nir_intrinsic_instr *load =
> +      nir_intrinsic_instr_create(build->shader,
> nir_intrinsic_load_var);
> +   load->num_components = num_components;
> +   load->variables[0] = nir_deref_as_var(nir_copy_deref(load,
> &deref->deref));
> +   nir_ssa_dest_init(&load->instr, &load->dest, num_components,
> +                     glsl_get_bit_size(type), NULL);
> +   nir_builder_instr_insert(build, &load->instr);
> +   return &load->dest.ssa;
> +}
> +
>  static inline void
>  nir_store_var(nir_builder *build, nir_variable *var, nir_ssa_def
> *value,
>                unsigned writemask)
_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to