On 03/24/2019 09:41 PM, Dave Airlie wrote:
From: Dave Airlie <[email protected]>With indirect rendering it's fine to set the instance count parameter to 0, and expect the rendering to be ignored. Fixes assert in KHR-GLES31.core.compute_shader.pipeline-gen-draw-commands on softpipe v2: return earlier before changing fpstate --- src/gallium/auxiliary/draw/draw_pt.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/auxiliary/draw/draw_pt.c b/src/gallium/auxiliary/draw/draw_pt.c index be76a30f97c..50286149cd4 100644 --- a/src/gallium/auxiliary/draw/draw_pt.c +++ b/src/gallium/auxiliary/draw/draw_pt.c @@ -464,6 +464,9 @@ draw_vbo(struct draw_context *draw, unsigned fpstate = util_fpstate_get(); struct pipe_draw_info resolved_info;+ if (info->instance_count == 0)+ return; + /* Make sure that denorms are treated like zeros. This is * the behavior required by D3D10. OpenGL doesn't care. */ @@ -472,7 +475,6 @@ draw_vbo(struct draw_context *draw, resolve_draw_info(info, &resolved_info, &(draw->pt.vertex_buffer[0])); info = &resolved_info;- assert(info->instance_count > 0);if (info->index_size) assert(draw->pt.user.elts);
Reviewed-by: Brian Paul <[email protected]> _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
