From: Daniel Borca Date: Wed, 7 Jan 2004 12:50:30 +0000 (+0000) Subject: teensy bit of optimization in interp code X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=63f025c5adba242c760fc3156b4aa92ee6f29f76;p=mesa.git teensy bit of optimization in interp code --- diff --git a/src/mesa/drivers/glide/fxvbtmp.h b/src/mesa/drivers/glide/fxvbtmp.h index 4e1b10f1d03..9e46f755957 100644 --- a/src/mesa/drivers/glide/fxvbtmp.h +++ b/src/mesa/drivers/glide/fxvbtmp.h @@ -214,8 +214,8 @@ static void TAG(interp)( GLcontext *ctx, GrVertex *dst = (GrVertex *) (fxverts + edst); const GrVertex *out = (const GrVertex *) (fxverts + eout); const GrVertex *in = (const GrVertex *) (fxverts + ein); - const GLfloat wout = 1.0F / out->oow; - const GLfloat win = 1.0F / in->oow; + const GLfloat wout = oow / out->oow; + const GLfloat win = oow / in->oow; VIEWPORT_X(dst->x, dstclip[0] * oow); VIEWPORT_Y(dst->y, dstclip[1] * oow); @@ -248,68 +248,36 @@ static void TAG(interp)( GLcontext *ctx, } if (IND & SETUP_TMU0) { + INTERP_F( t, + dst->tmuvtx[0].sow, + out->tmuvtx[0].sow * wout, + in->tmuvtx[0].sow * win ); + INTERP_F( t, + dst->tmuvtx[0].tow, + out->tmuvtx[0].tow * wout, + in->tmuvtx[0].tow * win ); if (IND & SETUP_PTEX) { - INTERP_F( t, - dst->tmuvtx[0].sow, - out->tmuvtx[0].sow * wout, - in->tmuvtx[0].sow * win ); - INTERP_F( t, - dst->tmuvtx[0].tow, - out->tmuvtx[0].tow * wout, - in->tmuvtx[0].tow * win ); INTERP_F( t, dst->tmuvtx[0].oow, out->tmuvtx[0].oow * wout, in->tmuvtx[0].oow * win ); - - dst->tmuvtx[0].sow *= oow; - dst->tmuvtx[0].tow *= oow; - dst->tmuvtx[0].oow *= oow; - } else { - INTERP_F( t, - dst->tmuvtx[0].sow, - out->tmuvtx[0].sow * wout, - in->tmuvtx[0].sow * win ); - INTERP_F( t, - dst->tmuvtx[0].tow, - out->tmuvtx[0].tow * wout, - in->tmuvtx[0].tow * win ); - - dst->tmuvtx[0].sow *= oow; - dst->tmuvtx[0].tow *= oow; } } if (IND & SETUP_TMU1) { + INTERP_F( t, + dst->tmuvtx[1].sow, + out->tmuvtx[1].sow * wout, + in->tmuvtx[1].sow * win ); + INTERP_F( t, + dst->tmuvtx[1].tow, + out->tmuvtx[1].tow * wout, + in->tmuvtx[1].tow * win ); if (IND & SETUP_PTEX) { - INTERP_F( t, - dst->tmuvtx[1].sow, - out->tmuvtx[1].sow * wout, - in->tmuvtx[1].sow * win ); - INTERP_F( t, - dst->tmuvtx[1].tow, - out->tmuvtx[1].tow * wout, - in->tmuvtx[1].tow * win ); INTERP_F( t, dst->tmuvtx[1].oow, out->tmuvtx[1].oow * wout, in->tmuvtx[1].oow * win ); - - dst->tmuvtx[1].sow *= oow; - dst->tmuvtx[1].tow *= oow; - dst->tmuvtx[1].oow *= oow; - } else { - INTERP_F( t, - dst->tmuvtx[1].sow, - out->tmuvtx[1].sow * wout, - in->tmuvtx[1].sow * win ); - INTERP_F( t, - dst->tmuvtx[1].tow, - out->tmuvtx[1].tow * wout, - in->tmuvtx[1].tow * win ); - - dst->tmuvtx[1].sow *= oow; - dst->tmuvtx[1].tow *= oow; } } }