On 01/04/16 21:02, Jason Ekstrand wrote: > On Thu, Mar 31, 2016 at 2:59 AM, Samuel Iglesias Gonsálvez < > sigles...@igalia.com> wrote: > >> Signed-off-by: Samuel Iglesias Gonsálvez <sigles...@igalia.com> >> --- >> src/compiler/nir/glsl_to_nir.cpp | 2 +- >> src/compiler/nir/nir.c | 6 ++++-- >> src/compiler/nir/nir.h | 3 ++- >> src/compiler/nir/nir_builder.h | 2 +- >> src/compiler/nir/nir_clone.c | 3 ++- >> src/compiler/nir/nir_control_flow.c | 5 +++-- >> src/compiler/nir/nir_lower_vars_to_ssa.c | 3 ++- >> src/compiler/nir/nir_phi_builder.c | 3 ++- >> src/compiler/nir/nir_to_ssa.c | 2 +- >> 9 files changed, 18 insertions(+), 11 deletions(-) >> >> diff --git a/src/compiler/nir/glsl_to_nir.cpp >> b/src/compiler/nir/glsl_to_nir.cpp >> index 1fac481..c35ec7e 100644 >> --- a/src/compiler/nir/glsl_to_nir.cpp >> +++ b/src/compiler/nir/glsl_to_nir.cpp >> @@ -735,7 +735,7 @@ nir_visitor::visit(ir_call *ir) >> case nir_intrinsic_image_samples: >> case nir_intrinsic_image_size: { >> nir_ssa_undef_instr *instr_undef = >> - nir_ssa_undef_instr_create(shader, 1); >> + nir_ssa_undef_instr_create(shader, 1, 32); >> nir_builder_instr_insert(&b, &instr_undef->instr); >> >> /* Set the image variable dereference. */ >> diff --git a/src/compiler/nir/nir.c b/src/compiler/nir/nir.c >> index b67916d..e45f727 100644 >> --- a/src/compiler/nir/nir.c >> +++ b/src/compiler/nir/nir.c >> @@ -558,12 +558,14 @@ nir_parallel_copy_instr_create(nir_shader *shader) >> } >> >> nir_ssa_undef_instr * >> -nir_ssa_undef_instr_create(nir_shader *shader, unsigned num_components) >> +nir_ssa_undef_instr_create(nir_shader *shader, >> + unsigned num_components, >> + unsigned bit_size) >> { >> nir_ssa_undef_instr *instr = ralloc(shader, nir_ssa_undef_instr); >> instr_init(&instr->instr, nir_instr_type_ssa_undef); >> >> - nir_ssa_def_init(&instr->instr, &instr->def, num_components, 32, NULL); >> + nir_ssa_def_init(&instr->instr, &instr->def, num_components, bit_size, >> NULL); >> >> return instr; >> } >> diff --git a/src/compiler/nir/nir.h b/src/compiler/nir/nir.h >> index c19ae59..3a4c771 100644 >> --- a/src/compiler/nir/nir.h >> +++ b/src/compiler/nir/nir.h >> @@ -1845,7 +1845,8 @@ nir_phi_instr *nir_phi_instr_create(nir_shader >> *shader); >> nir_parallel_copy_instr *nir_parallel_copy_instr_create(nir_shader >> *shader); >> >> nir_ssa_undef_instr *nir_ssa_undef_instr_create(nir_shader *shader, >> - unsigned num_components); >> + unsigned num_components, >> + unsigned bit_size); >> >> nir_deref_var *nir_deref_var_create(void *mem_ctx, nir_variable *var); >> nir_deref_array *nir_deref_array_create(void *mem_ctx); >> diff --git a/src/compiler/nir/nir_builder.h >> b/src/compiler/nir/nir_builder.h >> index 3dc7c25..a894aba 100644 >> --- a/src/compiler/nir/nir_builder.h >> +++ b/src/compiler/nir/nir_builder.h >> @@ -78,7 +78,7 @@ static inline nir_ssa_def * >> nir_ssa_undef(nir_builder *build, unsigned num_components, unsigned >> bit_size) >> { >> nir_ssa_undef_instr *undef = >> - nir_ssa_undef_instr_create(build->shader, num_components); >> + nir_ssa_undef_instr_create(build->shader, num_components, bit_size); >> undef->def.bit_size = bit_size; >> if (!undef) >> return NULL; >> diff --git a/src/compiler/nir/nir_clone.c b/src/compiler/nir/nir_clone.c >> index 7d2e383..a3d467d 100644 >> --- a/src/compiler/nir/nir_clone.c >> +++ b/src/compiler/nir/nir_clone.c >> @@ -372,7 +372,8 @@ static nir_ssa_undef_instr * >> clone_ssa_undef(clone_state *state, const nir_ssa_undef_instr *sa) >> { >> nir_ssa_undef_instr *nsa = >> - nir_ssa_undef_instr_create(state->ns, sa->def.num_components); >> + nir_ssa_undef_instr_create(state->ns, sa->def.num_components, >> + sa->def.bit_size); >> >> add_remap(state, &nsa->def, &sa->def); >> >> diff --git a/src/compiler/nir/nir_control_flow.c >> b/src/compiler/nir/nir_control_flow.c >> index 33b06d0..6d9fa1b 100644 >> --- a/src/compiler/nir/nir_control_flow.c >> +++ b/src/compiler/nir/nir_control_flow.c >> @@ -281,7 +281,8 @@ insert_phi_undef(nir_block *block, nir_block *pred) >> nir_phi_instr *phi = nir_instr_as_phi(instr); >> nir_ssa_undef_instr *undef = >> nir_ssa_undef_instr_create(ralloc_parent(phi), >> - phi->dest.ssa.num_components); >> + phi->dest.ssa.num_components, >> + 32); >> > > Should be phi->dest.ssa.bit_size > > >> nir_instr_insert_before_cf_list(&impl->body, &undef->instr); >> nir_phi_src *src = ralloc(phi, nir_phi_src); >> src->pred = pred; >> @@ -691,7 +692,7 @@ replace_ssa_def_uses(nir_ssa_def *def, void *void_impl) >> void *mem_ctx = ralloc_parent(impl); >> >> nir_ssa_undef_instr *undef = >> - nir_ssa_undef_instr_create(mem_ctx, def->num_components); >> + nir_ssa_undef_instr_create(mem_ctx, def->num_components, 32); >> > > def->bit_size > > >> nir_instr_insert_before_cf_list(&impl->body, &undef->instr); >> nir_ssa_def_rewrite_uses(def, nir_src_for_ssa(&undef->def)); >> return true; >> diff --git a/src/compiler/nir/nir_lower_vars_to_ssa.c >> b/src/compiler/nir/nir_lower_vars_to_ssa.c >> index 9f9e454..3bd8d6e 100644 >> --- a/src/compiler/nir/nir_lower_vars_to_ssa.c >> +++ b/src/compiler/nir/nir_lower_vars_to_ssa.c >> @@ -504,7 +504,8 @@ rename_variables_block(nir_block *block, struct >> lower_variables_state *state) >> */ >> nir_ssa_undef_instr *undef = >> nir_ssa_undef_instr_create(state->shader, >> - intrin->num_components); >> + intrin->num_components, >> + intrin->dest.ssa.bit_size); >> undef->def.bit_size = intrin->dest.ssa.bit_size; >> >> nir_instr_insert_before(&intrin->instr, &undef->instr); >> diff --git a/src/compiler/nir/nir_phi_builder.c >> b/src/compiler/nir/nir_phi_builder.c >> index a39e360..1f1388a 100644 >> --- a/src/compiler/nir/nir_phi_builder.c >> +++ b/src/compiler/nir/nir_phi_builder.c >> @@ -195,7 +195,8 @@ nir_phi_builder_value_get_block_def(struct >> nir_phi_builder_value *val, >> */ >> nir_ssa_undef_instr *undef = >> nir_ssa_undef_instr_create(val->builder->shader, >> - val->num_components); >> + val->num_components, >> + val->bit_size); >> nir_instr_insert(nir_before_cf_list(&val->builder->impl->body), >> &undef->instr); >> val->defs[block->index] = &undef->def; >> diff --git a/src/compiler/nir/nir_to_ssa.c b/src/compiler/nir/nir_to_ssa.c >> index d588d7d..04276cd 100644 >> --- a/src/compiler/nir/nir_to_ssa.c >> +++ b/src/compiler/nir/nir_to_ssa.c >> @@ -160,7 +160,7 @@ static nir_ssa_def *get_ssa_src(nir_register *reg, >> rewrite_state *state) >> * to preserve the information that this source is undefined >> */ >> nir_ssa_undef_instr *instr = >> - nir_ssa_undef_instr_create(state->mem_ctx, reg->num_components); >> + nir_ssa_undef_instr_create(state->mem_ctx, reg->num_components, >> 32); >> > > reg->bit_size >
OK, I'll fix all of them. Thanks, Sam > >> >> /* >> * We could just insert the undefined instruction before the >> instruction >> -- >> 2.5.0 >> >> _______________________________________________ >> mesa-dev mailing list >> mesa-dev@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev >> > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev