diff options
author | Keith Whitwell <[email protected]> | 2010-10-11 16:30:14 +0100 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2010-10-12 11:50:07 +0100 |
commit | 2cf98d5a6dccba3fd69b8469e67f66dfb5fc9651 (patch) | |
tree | 1165147c536688689eaf994975cdba5836a3b63a /src/gallium/drivers/llvmpipe/lp_rast.h | |
parent | 4cb3b4ced80891ce8760cf5a0c06db9dbee36b76 (diff) |
llvmpipe: try to do more of rast_tri_3_16 with intrinsics
There was actually a large quantity of scalar code in these functions
previously. This tries to move more into intrinsics.
Introduce an sse2 mm_mullo_epi32 replacement to avoid sse4 dependency
in the new rasterization code.
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_rast.h')
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_rast.h | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_rast.h b/src/gallium/drivers/llvmpipe/lp_rast.h index df0bea04b9a..e2bcc450168 100644 --- a/src/gallium/drivers/llvmpipe/lp_rast.h +++ b/src/gallium/drivers/llvmpipe/lp_rast.h @@ -89,19 +89,21 @@ struct lp_rast_shader_inputs { const struct lp_rast_state *state; }; - +/* Note: the order of these values is important as they are loaded by + * sse code in rasterization: + */ struct lp_rast_plane { - /* one-pixel sized trivial accept offsets for each plane */ - int ei; - - /* one-pixel sized trivial reject offsets for each plane */ - int eo; - /* edge function values at minx,miny ?? */ int c; int dcdx; int dcdy; + + /* one-pixel sized trivial reject offsets for each plane */ + int eo; + + /* one-pixel sized trivial accept offsets for each plane */ + int ei; }; /** |