Mesa (gallium-0.2): mesa: update program-> NumAddressRegs field in _slang_update_inputs_outputs()
Keith Whitwell
keithw at kemper.freedesktop.org
Wed Sep 24 00:24:57 UTC 2008
Module: Mesa
Branch: gallium-0.2
Commit: 9118b02fd0e4c5c472d7dbf211eec350a1d37ea4
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9118b02fd0e4c5c472d7dbf211eec350a1d37ea4
Author: Brian Paul <brian.paul at tungstengraphics.com>
Date: Wed Sep 17 13:13:02 2008 -0600
mesa: update program->NumAddressRegs field in _slang_update_inputs_outputs()
---
src/mesa/shader/slang/slang_link.c | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/src/mesa/shader/slang/slang_link.c b/src/mesa/shader/slang/slang_link.c
index b780e87..dd7d5be 100644
--- a/src/mesa/shader/slang/slang_link.c
+++ b/src/mesa/shader/slang/slang_link.c
@@ -381,6 +381,7 @@ static void
_slang_update_inputs_outputs(struct gl_program *prog)
{
GLuint i, j;
+ GLuint maxAddrReg = 0;
prog->InputsRead = 0x0;
prog->OutputsWritten = 0x0;
@@ -406,11 +407,19 @@ _slang_update_inputs_outputs(struct gl_program *prog)
fp->UsesPointCoord = GL_TRUE;
}
}
+ else if (inst->SrcReg[j].File == PROGRAM_ADDRESS) {
+ maxAddrReg = MAX2(maxAddrReg, inst->SrcReg[j].Index + 1);
+ }
}
if (inst->DstReg.File == PROGRAM_OUTPUT) {
prog->OutputsWritten |= 1 << inst->DstReg.Index;
}
+ else if (inst->DstReg.File == PROGRAM_ADDRESS) {
+ maxAddrReg = MAX2(maxAddrReg, inst->DstReg.Index + 1);
+ }
}
+
+ prog->NumAddressRegs = maxAddrReg;
}
More information about the mesa-commit
mailing list