From 7d57528233b8c3f87834221a12db9c3563d011e1 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Wed, 30 Dec 2015 18:44:19 -0800 Subject: [PATCH] nir/clone: Expose nir_constant_clone --- src/glsl/nir/nir.h | 1 + src/glsl/nir/nir_clone.c | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/glsl/nir/nir.h b/src/glsl/nir/nir.h index a050be4d53b..674064c0e20 100644 --- a/src/glsl/nir/nir.h +++ b/src/glsl/nir/nir.h @@ -1994,6 +1994,7 @@ void nir_print_instr(const nir_instr *instr, FILE *fp); nir_shader *nir_shader_clone(void *mem_ctx, const nir_shader *s); nir_function_impl *nir_function_impl_clone(const nir_function_impl *impl); +nir_constant *nir_constant_clone(const nir_constant *c, nir_variable *var); #ifdef DEBUG void nir_validate_shader(nir_shader *shader); diff --git a/src/glsl/nir/nir_clone.c b/src/glsl/nir/nir_clone.c index 116c4b8a7d6..0ea8da77421 100644 --- a/src/glsl/nir/nir_clone.c +++ b/src/glsl/nir/nir_clone.c @@ -109,8 +109,8 @@ remap_var(clone_state *state, const nir_variable *var) return _lookup_ptr(state, var, var->data.mode != nir_var_local); } -static nir_constant * -clone_constant(clone_state *state, const nir_constant *c, nir_variable *nvar) +nir_constant * +nir_constant_clone(const nir_constant *c, nir_variable *nvar) { nir_constant *nc = ralloc(nvar, nir_constant); @@ -118,7 +118,7 @@ clone_constant(clone_state *state, const nir_constant *c, nir_variable *nvar) nc->num_elements = c->num_elements; nc->elements = ralloc_array(nvar, nir_constant *, c->num_elements); for (unsigned i = 0; i < c->num_elements; i++) { - nc->elements[i] = clone_constant(state, c->elements[i], nvar); + nc->elements[i] = nir_constant_clone(c->elements[i], nvar); } return nc; @@ -142,7 +142,7 @@ clone_variable(clone_state *state, const nir_variable *var) var->num_state_slots * sizeof(nir_state_slot)); if (var->constant_initializer) { nvar->constant_initializer = - clone_constant(state, var->constant_initializer, nvar); + nir_constant_clone(var->constant_initializer, nvar); } nvar->interface_type = var->interface_type; -- 2.30.2