From 5507c11f85dda4fbcdc9b36494551c933471a070 Mon Sep 17 00:00:00 2001 From: Zack Rusin Date: Mon, 10 Jun 2013 23:36:59 -0400 Subject: gallium/draw: add limits to the clip and cull distances There are strict limits on those registers. Define the maximums and use them instead of magic numbers. Also allows us to add some extra sanity checks. Suggested by Brian. Signed-off-by: Zack Rusin Reviewed-by: Roland Scheidegger Reviewed-by: Jose Fonseca --- src/gallium/auxiliary/draw/draw_vs.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/gallium/auxiliary/draw/draw_vs.c') diff --git a/src/gallium/auxiliary/draw/draw_vs.c b/src/gallium/auxiliary/draw/draw_vs.c index a0bebcc..bbccbe4 100644 --- a/src/gallium/auxiliary/draw/draw_vs.c +++ b/src/gallium/auxiliary/draw/draw_vs.c @@ -86,12 +86,12 @@ draw_create_vertex_shader(struct draw_context *draw, found_clipvertex = TRUE; vs->clipvertex_output = i; } else if (vs->info.output_semantic_name[i] == TGSI_SEMANTIC_CLIPDIST) { - if (vs->info.output_semantic_index[i] == 0) - vs->clipdistance_output[0] = i; - else - vs->clipdistance_output[1] = i; + debug_assert(vs->info.output_semantic_index[i] < + PIPE_MAX_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT); + vs->clipdistance_output[vs->info.output_semantic_index[i]] = i; } else if (vs->info.output_semantic_name[i] == TGSI_SEMANTIC_CULLDIST) { - debug_assert(vs->info.output_semantic_index[i] < Elements(vs->culldistance_output)); + debug_assert(vs->info.output_semantic_index[i] < + PIPE_MAX_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT); vs->culldistance_output[vs->info.output_semantic_index[i]] = i; } } -- cgit v1.1