freedreno/ir3: Fix an off-by-one in so->outputs_count safety assert.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13747>
This commit is contained in:
Emma Anholt
2021-11-10 13:28:32 -08:00
committed by Marge Bot
parent 02079cbb77
commit 2ce44a0298
2 changed files with 2 additions and 2 deletions

View File

@@ -457,7 +457,7 @@ spec@glsl-1.50@execution@geometry@tri-strip-ordering-with-prim-restart gl_triang
spec@glsl-1.50@execution@primitive-id-no-gs-quads,Fail
spec@glsl-1.50@execution@primitive-id-no-gs-quad-strip,Fail
# "failed assert: so->outputs_count < ARRAY_SIZE(so->outputs)"
# "ir3_shader.h:923:ir3_link_add: Assertion `i < ARRAY_SIZE(l->var)' failed"
spec@glsl-1.50@execution@variable-indexing@gs-output-array-vec4-index-wr,Crash
spec@glsl-1.50@gs-max-output-components,Fail

View File

@@ -3717,7 +3717,7 @@ setup_output(struct ir3_context *ctx, nir_intrinsic_instr *intr)
}
so->outputs_count = MAX2(so->outputs_count, n + 1);
compile_assert(ctx, so->outputs_count < ARRAY_SIZE(so->outputs));
compile_assert(ctx, so->outputs_count <= ARRAY_SIZE(so->outputs));
so->outputs[n].slot = slot;
if (io.per_view)