summaryrefslogtreecommitdiff
path: root/src/mesa/shader/prog_execute.c
diff options
context:
space:
mode:
authorVinson Lee <vlee@vmware.com>2010-04-18 00:11:49 -0700
committerVinson Lee <vlee@vmware.com>2010-04-18 00:11:49 -0700
commit4e98116c234c25119c1a3a0c0a138ada2ab69906 (patch)
tree62cef20ca7853f990a0ba2d0102d378ce77fa109 /src/mesa/shader/prog_execute.c
parent4485dd8a3e8aff8d4fb73684d0d7a5a1179f60cc (diff)
glsl: Fix handling of OPCODE_PRINT for no registers case.
A register file value is unsigned so could never be -1. A value of 0 also aliased to PROGRAM_TEMPORARY. If an OPCODE_PRINT has no registers to print, set the register file value to PROGRAM_UNDEFINED and check for that value when executing this instruction.
Diffstat (limited to 'src/mesa/shader/prog_execute.c')
-rw-r--r--src/mesa/shader/prog_execute.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/shader/prog_execute.c b/src/mesa/shader/prog_execute.c
index 37750cc330..0067512cfb 100644
--- a/src/mesa/shader/prog_execute.c
+++ b/src/mesa/shader/prog_execute.c
@@ -1767,7 +1767,7 @@ _mesa_execute_program(GLcontext * ctx,
break;
case OPCODE_PRINT:
{
- if (inst->SrcReg[0].File != -1) {
+ if (inst->SrcReg[0].File != PROGRAM_UNDEFINED) {
GLfloat a[4];
fetch_vector4(&inst->SrcReg[0], machine, a);
printf("%s%g, %g, %g, %g\n", (const char *) inst->Data,