Looks great Chris.

Keith

On Wed, 2009-09-02 at 05:11 -0700, Chris Wilson wrote:
> By rearranging the bitfields within the key we can reduce the size
> of the key from 644 to 196 bytes, reducing the cost of both the
> hashing and equality tests.
> ---
>  src/mesa/main/texenvprogram.c |    7 ++++---
>  1 files changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/src/mesa/main/texenvprogram.c b/src/mesa/main/texenvprogram.c
> index 5913957..3851937 100644
> --- a/src/mesa/main/texenvprogram.c
> +++ b/src/mesa/main/texenvprogram.c
> @@ -82,8 +82,8 @@ texenv_doing_secondary_color(GLcontext *ctx)
>  #define DISASSEM (MESA_VERBOSE & VERBOSE_DISASSEM)
>  
>  struct mode_opt {
> -   GLuint Source:4;  /**< SRC_x */
> -   GLuint Operand:3; /**< OPR_x */
> +   GLubyte Source:4;  /**< SRC_x */
> +   GLubyte Operand:3; /**< OPR_x */
>  };
>  
>  struct state_key {
> @@ -103,10 +103,11 @@ struct state_key {
>  
>        GLuint NumArgsRGB:3;  /**< up to MAX_COMBINER_TERMS */
>        GLuint ModeRGB:5;     /**< MODE_x */
> -      struct mode_opt OptRGB[MAX_COMBINER_TERMS];
>  
>        GLuint NumArgsA:3;  /**< up to MAX_COMBINER_TERMS */
>        GLuint ModeA:5;     /**< MODE_x */
> +
> +      struct mode_opt OptRGB[MAX_COMBINER_TERMS];
>        struct mode_opt OptA[MAX_COMBINER_TERMS];
>     } unit[MAX_TEXTURE_UNITS];
>  };


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to