summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolai Haehnle <nhaehnle@gmail.com>2007-03-26 22:20:46 +0200
committerNicolai Haehnle <nhaehnle@gmail.com>2007-03-26 22:25:06 +0200
commit0426d3c0c85b652c2c4e8509f709863e08644295 (patch)
tree267800f01e915a38222aab71acd44eab5ef1811c
parentb53745ce914d66f98ae7bea3e6ee0d05940af787 (diff)
r300: Remove a warning when vertex programs produce an unused output
As far as we know, the hardware prefers outputs packed tightly together with no holes caused by outputs that are not even read by the fragment program. Therefore, we slightly rewrite vertex programs in this case. It would be interesting to test this interaction between vertex programs and fragment programs further, because some of that rewrite may be unnecessary. However, play it safe for now and don't change the current behaviour.
-rw-r--r--src/mesa/drivers/dri/r300/r300_vertprog.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_vertprog.c b/src/mesa/drivers/dri/r300/r300_vertprog.c
index b453e315a8..52fd1de449 100644
--- a/src/mesa/drivers/dri/r300/r300_vertprog.c
+++ b/src/mesa/drivers/dri/r300/r300_vertprog.c
@@ -331,10 +331,9 @@ static unsigned long op_operands(enum prog_opcode opcode)
static GLboolean valid_dst(struct r300_vertex_program *vp, struct prog_dst_register *dst)
{
- if(dst->File == PROGRAM_OUTPUT && vp->outputs[dst->Index] == -1){
- WARN_ONCE("Output %d not used by fragment program\n", dst->Index);
+ if(dst->File == PROGRAM_OUTPUT && vp->outputs[dst->Index] == -1) {
return GL_FALSE;
- }else if(dst->File == PROGRAM_ADDRESS) {
+ } else if(dst->File == PROGRAM_ADDRESS) {
assert(dst->Index == 0);
}