From: Ian Romanick <ian.d.roman...@intel.com> While this file lives in src/mesa/tnl_dd, it is built only in drivers that live in src/mesa/drivers/dri. We don't generally allow C99-isms in common code, but we have allowed C99-isms in src/mesa/drivers/dri for quite some time.
Signed-off-by: Ian Romanick <ian.d.roman...@intel.com> --- src/mesa/tnl_dd/t_dd_dmatmp.h | 77 ++++++++++++++++--------------------------- 1 file changed, 29 insertions(+), 48 deletions(-) diff --git a/src/mesa/tnl_dd/t_dd_dmatmp.h b/src/mesa/tnl_dd/t_dd_dmatmp.h index 228555c..4eff883 100644 --- a/src/mesa/tnl_dd/t_dd_dmatmp.h +++ b/src/mesa/tnl_dd/t_dd_dmatmp.h @@ -69,16 +69,15 @@ static void TAG(render_points_verts)(struct gl_context *ctx, { LOCAL_VARS; const unsigned dmasz = GET_SUBSEQUENT_VB_MAX_VERTS(); - unsigned currentsz; - GLuint j, nr; INIT(GL_POINTS); - currentsz = GET_CURRENT_VB_MAX_VERTS(); + unsigned currentsz = GET_CURRENT_VB_MAX_VERTS(); if (currentsz < 8) currentsz = dmasz; - for (j = 0; j < count; j += nr) { + unsigned nr; + for (unsigned j = 0; j < count; j += nr) { nr = MIN2(currentsz, count - j); TAG(emit_verts)(ctx, start + j, nr, ALLOC_VERTS(nr)); currentsz = dmasz; @@ -92,21 +91,19 @@ static void TAG(render_lines_verts)(struct gl_context *ctx, { LOCAL_VARS; const unsigned dmasz = GET_SUBSEQUENT_VB_MAX_VERTS() & ~1; - unsigned currentsz; - GLuint j, nr; INIT(GL_LINES); /* Emit whole number of lines in total and in each buffer: */ count -= count & 1; - currentsz = GET_CURRENT_VB_MAX_VERTS(); - currentsz -= currentsz & 1; + unsigned currentsz = GET_CURRENT_VB_MAX_VERTS() & ~1; if (currentsz < 8) currentsz = dmasz; - for (j = 0; j < count; j += nr) { + unsigned nr; + for (unsigned j = 0; j < count; j += nr) { nr = MIN2(currentsz, count - j); TAG(emit_verts)(ctx, start + j, nr, ALLOC_VERTS(nr)); currentsz = dmasz; @@ -121,16 +118,15 @@ static void TAG(render_line_strip_verts)(struct gl_context *ctx, { LOCAL_VARS; const unsigned dmasz = GET_SUBSEQUENT_VB_MAX_VERTS(); - unsigned currentsz; - GLuint j, nr; INIT(GL_LINE_STRIP); - currentsz = GET_CURRENT_VB_MAX_VERTS(); + unsigned currentsz = GET_CURRENT_VB_MAX_VERTS(); if (currentsz < 8) currentsz = dmasz; - for (j = 0; j + 1 < count; j += nr - 1) { + unsigned nr; + for (unsigned j = 0; j + 1 < count; j += nr - 1) { nr = MIN2(currentsz, count - j); TAG(emit_verts)(ctx, start + j, nr, ALLOC_VERTS(nr)); currentsz = dmasz; @@ -147,22 +143,18 @@ static void TAG(render_line_loop_verts)(struct gl_context *ctx, { LOCAL_VARS; const unsigned dmasz = GET_SUBSEQUENT_VB_MAX_VERTS() - 1; - unsigned currentsz; - GLuint j, nr; + unsigned j = (flags & PRIM_BEGIN) ? 0 : 1; INIT(GL_LINE_STRIP); - j = (flags & PRIM_BEGIN) ? 0 : 1; - /* Ensure last vertex won't wrap buffers: */ - currentsz = GET_CURRENT_VB_MAX_VERTS(); - currentsz--; - + unsigned currentsz = GET_CURRENT_VB_MAX_VERTS() - 1; if (currentsz < 8) currentsz = dmasz; if (j + 1 < count) { + unsigned nr; for (/* empty */; j + 1 < count; j += nr - 1) { nr = MIN2(currentsz, count - j); @@ -198,12 +190,10 @@ static void TAG(render_triangles_verts)(struct gl_context *ctx, { LOCAL_VARS; const unsigned dmasz = (GET_SUBSEQUENT_VB_MAX_VERTS() / 3) * 3; - unsigned currentsz; - GLuint j, nr; INIT(GL_TRIANGLES); - currentsz = (GET_CURRENT_VB_MAX_VERTS() / 3) * 3; + unsigned currentsz = (GET_CURRENT_VB_MAX_VERTS() / 3) * 3; /* Emit whole number of tris in total. dmasz is already a multiple * of 3. @@ -213,7 +203,8 @@ static void TAG(render_triangles_verts)(struct gl_context *ctx, if (currentsz < 8) currentsz = dmasz; - for (j = 0; j < count; j += nr) { + unsigned nr; + for (unsigned j = 0; j < count; j += nr) { nr = MIN2(currentsz, count - j); TAG(emit_verts)(ctx, start + j, nr, ALLOC_VERTS(nr)); currentsz = dmasz; @@ -228,14 +219,11 @@ static void TAG(render_tri_strip_verts)(struct gl_context *ctx, GLuint flags) { LOCAL_VARS; - GLuint j, nr; const unsigned dmasz = GET_SUBSEQUENT_VB_MAX_VERTS() & ~1; - unsigned currentsz; INIT(GL_TRIANGLE_STRIP); - currentsz = GET_CURRENT_VB_MAX_VERTS(); - + unsigned currentsz = GET_CURRENT_VB_MAX_VERTS(); if (currentsz < 8) currentsz = dmasz; @@ -243,7 +231,8 @@ static void TAG(render_tri_strip_verts)(struct gl_context *ctx, */ currentsz -= (currentsz & 1); - for (j = 0; j + 2 < count; j += nr - 2) { + unsigned nr; + for (unsigned j = 0; j + 2 < count; j += nr - 2) { nr = MIN2(currentsz, count - j); TAG(emit_verts)(ctx, start + j, nr, ALLOC_VERTS(nr)); currentsz = dmasz; @@ -258,17 +247,16 @@ static void TAG(render_tri_fan_verts)(struct gl_context *ctx, GLuint flags) { LOCAL_VARS; - GLuint j, nr; const unsigned dmasz = GET_SUBSEQUENT_VB_MAX_VERTS(); - unsigned currentsz; INIT(GL_TRIANGLE_FAN); - currentsz = GET_CURRENT_VB_MAX_VERTS(); + unsigned currentsz = GET_CURRENT_VB_MAX_VERTS(); if (currentsz < 8) currentsz = dmasz; - for (j = 1; j + 1 < count; j += nr - 2) { + unsigned nr; + for (unsigned j = 1; j + 1 < count; j += nr - 2) { void *tmp; nr = MIN2(currentsz, count - j + 1); tmp = ALLOC_VERTS(nr); @@ -289,18 +277,17 @@ static void TAG(render_poly_verts)(struct gl_context *ctx, { if (HAVE_POLYGONS) { LOCAL_VARS; - GLuint j, nr; const unsigned dmasz = GET_SUBSEQUENT_VB_MAX_VERTS(); - unsigned currentsz; INIT(GL_POLYGON); - currentsz = GET_CURRENT_VB_MAX_VERTS(); + unsigned currentsz = GET_CURRENT_VB_MAX_VERTS(); if (currentsz < 8) { currentsz = dmasz; } - for (j = 1; j + 1 < count; j += nr - 2) { + unsigned nr; + for (unsigned j = 1; j + 1 < count; j += nr - 2) { void *tmp; nr = MIN2(currentsz, count - j + 1); tmp = ALLOC_VERTS(nr); @@ -324,12 +311,9 @@ static void TAG(render_quad_strip_verts)(struct gl_context *ctx, GLuint count, GLuint flags) { - GLuint j, nr; - if (ctx->Light.ShadeModel == GL_SMOOTH) { LOCAL_VARS; const unsigned dmasz = GET_SUBSEQUENT_VB_MAX_VERTS() & ~1; - unsigned currentsz; /* Emit smooth-shaded quadstrips as tristrips: */ @@ -338,14 +322,14 @@ static void TAG(render_quad_strip_verts)(struct gl_context *ctx, /* Emit whole number of quads in total, and in each buffer. */ - currentsz = GET_CURRENT_VB_MAX_VERTS(); - currentsz -= currentsz & 1; count -= count & 1; + unsigned currentsz = GET_CURRENT_VB_MAX_VERTS() & ~1; if (currentsz < 8) currentsz = dmasz; - for (j = 0; j + 3 < count; j += nr - 2) { + unsigned nr; + for (unsigned j = 0; j + 3 < count; j += nr - 2) { nr = MIN2(currentsz, count - j); TAG(emit_verts)(ctx, start + j, nr, ALLOC_VERTS(nr)); currentsz = dmasz; @@ -366,7 +350,6 @@ static void TAG(render_quads_verts)(struct gl_context *ctx, if (ctx->Light.ShadeModel == GL_SMOOTH || ctx->Light.ProvokingVertex == GL_LAST_VERTEX_CONVENTION) { LOCAL_VARS; - GLuint j; /* Emit whole number of quads in total. */ count -= count & 3; @@ -377,7 +360,7 @@ static void TAG(render_quads_verts)(struct gl_context *ctx, */ INIT(GL_TRIANGLES); - for (j = 0; j + 3 < count; j += 4) { + for (unsigned j = 0; j + 3 < count; j += 4) { void *tmp = ALLOC_VERTS(6); /* Send v0, v1, v3 */ @@ -425,15 +408,13 @@ static const tnl_render_func TAG(render_tab_verts)[GL_POLYGON+2] = static bool TAG(validate_render)(struct gl_context *ctx, struct vertex_buffer *VB) { - GLint i; - if (VB->ClipOrMask & ~CLIP_CULL_BIT) return false; if (VB->Elts) return false; - for (i = 0 ; i < VB->PrimitiveCount ; i++) { + for (unsigned i = 0; i < VB->PrimitiveCount; i++) { GLuint prim = VB->Primitive[i].mode; GLuint count = VB->Primitive[i].count; bool ok = false; -- 2.1.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev