Browse Source

st/mesa: allow negative index for PROGRAM_STATE_VAR

The piglit vp-address-01 test uses negative address-relative
offsets.  In this test we're indexing into PROGRAM_STATE_VAR
which, in turn, contains references to ENV vars.

We previously fixed this issue for PROGRAM_CONSTANT.

piglit/vp-address-01 (the version from Feb 5) passes now.
tags/mesa-7.7-4
Brian Paul 15 years ago
parent
commit
64be837b0b
1 changed files with 1 additions and 1 deletions
  1. 1
    1
      src/mesa/state_tracker/st_mesa_to_tgsi.c

+ 1
- 1
src/mesa/state_tracker/st_mesa_to_tgsi.c View File

@@ -172,13 +172,13 @@ src_register( struct st_translate *t,
t->temps[index] = ureg_DECL_temporary( t->ureg );
return ureg_src(t->temps[index]);

case PROGRAM_STATE_VAR:
case PROGRAM_NAMED_PARAM:
case PROGRAM_ENV_PARAM:
case PROGRAM_LOCAL_PARAM:
case PROGRAM_UNIFORM:
ASSERT(index >= 0);
return t->constants[index];
case PROGRAM_STATE_VAR:
case PROGRAM_CONSTANT: /* ie, immediate */
if (index < 0)
return ureg_DECL_constant( t->ureg, 0 );

Loading…
Cancel
Save