pan/midgard: Correct component count clamping PSIZ
authorAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Thu, 11 Jul 2019 20:15:17 +0000 (13:15 -0700)
committerAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Thu, 11 Jul 2019 20:30:55 +0000 (13:30 -0700)
Kind of a funky corner case that does not (as far as I know) apply to
organic shaders from GLES but does pop up in generated shaders from the
fixed-function desktop pipeline.

Fixes: bb483a91663f ("panfrost: Clamp point size")
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
src/gallium/drivers/panfrost/nir/nir_clamp_psiz.c

index fb42406750b436eeb65b3892315894491bf0a4e3..249a400a19e1f54a3c64401c708a6519fa22c8c3 100644 (file)
@@ -54,7 +54,8 @@ nir_clamp_psiz(nir_shader *shader, float min_size, float max_size)
             nir_builder_init(&b, func->impl);
             b.cursor = nir_before_instr(instr);
 
-            nir_ssa_def *in_size = nir_ssa_for_src(&b, intr->src[1], 1);
+            nir_ssa_def *in_size = nir_ssa_for_src(&b, intr->src[1],
+                  intr->num_components);
 
             nir_ssa_def *clamped =
                nir_fmin(&b,