mesa: Remove gratuitous padding in prog_dst_register.
authorEric Anholt <eric@anholt.net>
Wed, 18 Nov 2009 11:05:14 +0000 (03:05 -0800)
committerEric Anholt <eric@anholt.net>
Thu, 19 Nov 2009 10:47:21 +0000 (11:47 +0100)
The padding was there to indicate the amount of space left from the
number of expected bytes in the struct minus allocated bits.  But
uint bitfields get packed so that they don't cross uint boundaries, and we
ended up allocating an extra dword to hold the pad field!

src/mesa/drivers/dri/i965/brw_wm_fp.c
src/mesa/main/ffvertex_prog.c
src/mesa/shader/prog_instruction.h

index 7d03179..3737faf 100644 (file)
@@ -138,7 +138,6 @@ static struct prog_dst_register dst_reg(GLuint file, GLuint idx)
    reg.CondMask = COND_TR;
    reg.CondSwizzle = 0;
    reg.CondSrc = 0;
-   reg.pad = 0;
    return reg;
 }
 
index fe2416d..5cfa898 100644 (file)
@@ -523,7 +523,6 @@ static void emit_dst( struct prog_dst_register *dst,
    dst->CondMask = COND_TR;  /* always pass cond test */
    dst->CondSwizzle = SWIZZLE_NOOP;
    dst->CondSrc = 0;
-   dst->pad = 0;
    /* Check that bitfield sizes aren't exceeded */
    ASSERT(dst->Index == reg.idx);
 }
index 1c687bc..224350c 100644 (file)
@@ -312,7 +312,6 @@ struct prog_dst_register
     */
    GLuint CondSrc:1;
    /*@}*/
-   GLuint pad:28;
 };