Module: Mesa Branch: master Commit: 24c12e6c7f8aa8c2f4c163d23d740b070bfabfc3 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=24c12e6c7f8aa8c2f4c163d23d740b070bfabfc3
Author: Eric Anholt <[email protected]> Date: Tue Sep 7 12:53:19 2010 -0700 i965: Store the byte address in the VS constant buffer as an integer. We carefully multiplied our two ints (since we want to be precise after all) then stored them in a float, which is not specced to really work, in addition to wasting precision. Fixes vp-arl-constant-array-huge-* things since the assertions were added. --- src/mesa/drivers/dri/i965/brw_vs_emit.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_vs_emit.c b/src/mesa/drivers/dri/i965/brw_vs_emit.c index 49ef974..ad0d00b 100644 --- a/src/mesa/drivers/dri/i965/brw_vs_emit.c +++ b/src/mesa/drivers/dri/i965/brw_vs_emit.c @@ -954,7 +954,7 @@ get_reladdr_constant(struct brw_vs_compile *c, struct brw_compile *p = &c->func; struct brw_reg const_reg = c->current_const[argIndex].reg; struct brw_reg addrReg = c->regs[PROGRAM_ADDRESS][0]; - struct brw_reg byte_addr_reg = get_tmp(c); + struct brw_reg byte_addr_reg = retype(get_tmp(c), BRW_REGISTER_TYPE_D); assert(argIndex < 3); _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
