summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2010-01-21 19:09:59 -0700
committerBrian Paul <[email protected]>2010-01-21 19:10:03 -0700
commit3bca8691b51a1ca91572c62139f28b64c558ada2 (patch)
treedc428b7e34a98b7ccfea51c95f21aa46afb9569c
parent1d23954a0848f8dd87b214f3a7ec3ae3c04ab0c1 (diff)
llvmpipe: use some local vars to index step arrays
Saves a few more cycles.
-rw-r--r--src/gallium/drivers/llvmpipe/lp_rast_tri.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_rast_tri.c b/src/gallium/drivers/llvmpipe/lp_rast_tri.c
index e9d15727a7b..3f76f159df1 100644
--- a/src/gallium/drivers/llvmpipe/lp_rast_tri.c
+++ b/src/gallium/drivers/llvmpipe/lp_rast_tri.c
@@ -153,16 +153,18 @@ do_block_16( struct lp_rasterizer_task *rast_task,
const int eo1 = tri->eo1 * 4;
const int eo2 = tri->eo2 * 4;
const int eo3 = tri->eo3 * 4;
-
+ const int *step0 = tri->inputs.step[0];
+ const int *step1 = tri->inputs.step[1];
+ const int *step2 = tri->inputs.step[2];
int i;
assert(x % 16 == 0);
assert(y % 16 == 0);
for (i = 0; i < 16; i++) {
- int cx1 = c1 + (tri->inputs.step[0][i] * 4);
- int cx2 = c2 + (tri->inputs.step[1][i] * 4);
- int cx3 = c3 + (tri->inputs.step[2][i] * 4);
+ int cx1 = c1 + step0[i] * 4;
+ int cx2 = c2 + step1[i] * 4;
+ int cx3 = c3 + step2[i] * 4;
if (cx1 + eo1 < 0 ||
cx2 + eo2 < 0 ||