mesa: implement system values in program interpreter

This commit is contained in:
Brian Paul 2010-12-10 09:29:00 -07:00
parent dcb48e7eb4
commit 6a0d3b7696
2 changed files with 5 additions and 0 deletions

View file

@ -159,6 +159,10 @@ get_src_register_pointer(const struct prog_src_register *source,
return ZeroVec;
return prog->Parameters->ParameterValues[reg];
case PROGRAM_SYSTEM_VALUE:
assert(reg < Elements(machine->SystemValues));
return machine->SystemValues[reg];
default:
_mesa_problem(NULL,
"Invalid src register file %d in get_src_register_pointer()",

View file

@ -61,6 +61,7 @@ struct gl_program_machine
GLfloat (*EnvParams)[4]; /**< Vertex or Fragment env parameters */
GLuint CondCodes[4]; /**< COND_* value for x/y/z/w */
GLint AddressReg[MAX_PROGRAM_ADDRESS_REGS][4];
GLfloat SystemValues[SYSTEM_VALUE_MAX][4];
const GLubyte *Samplers; /** Array mapping sampler var to tex unit */