From 7efb1c4b2940bba97624e9c92c47121c3f1ab19e Mon Sep 17 00:00:00 2001 From: Ilia Mirkin Date: Mon, 22 Nov 2021 17:54:50 -0500 Subject: [PATCH] nir/lower_clip: increment num_inputs/outputs by appropriate amount The inputs/outputs are meant to be in vec4 units. Signed-off-by: Ilia Mirkin Reviewed-by: Emma Anholt Part-of: --- src/compiler/nir/nir_lower_clip.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/compiler/nir/nir_lower_clip.c b/src/compiler/nir/nir_lower_clip.c index e722012..3513834 100644 --- a/src/compiler/nir/nir_lower_clip.c +++ b/src/compiler/nir/nir_lower_clip.c @@ -46,13 +46,14 @@ create_clipdist_var(nir_shader *shader, { nir_variable *var = rzalloc(shader, nir_variable); - /* TODO use type_size() for num_inputs/outputs */ if (output) { - var->data.driver_location = shader->num_outputs++; + var->data.driver_location = shader->num_outputs; var->data.mode = nir_var_shader_out; + shader->num_outputs += MAX2(1, DIV_ROUND_UP(array_size, 4)); } else { - var->data.driver_location = shader->num_inputs++; + var->data.driver_location = shader->num_inputs; var->data.mode = nir_var_shader_in; + shader->num_inputs += MAX2(1, DIV_ROUND_UP(array_size, 4)); } var->name = ralloc_asprintf(var, "clipdist_%d", var->data.driver_location); var->data.index = 0; -- 2.7.4