Mesa (master): gallium: fixup register indexes for fog/frontface/ point coord
Jakob Bornecrantz
wallbraker at kemper.freedesktop.org
Thu Jul 9 00:16:05 UTC 2009
Module: Mesa
Branch: master
Commit: 7b861b9b9efdb3ac0dfc3806afcd494cd0ea006c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7b861b9b9efdb3ac0dfc3806afcd494cd0ea006c
Author: Zack Rusin <zackr at vmware.com>
Date: Tue Jul 7 12:48:50 2009 -0700
gallium: fixup register indexes for fog/frontface/point coord
---
src/mesa/state_tracker/st_atom_shader.c | 15 ++++++++++++---
1 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/src/mesa/state_tracker/st_atom_shader.c b/src/mesa/state_tracker/st_atom_shader.c
index 299aa76..5219119 100644
--- a/src/mesa/state_tracker/st_atom_shader.c
+++ b/src/mesa/state_tracker/st_atom_shader.c
@@ -142,9 +142,18 @@ find_translated_vp(struct st_context *st,
if ((fragInputsRead & FRAG_BIT_FOGC)) {
/* leave placeholders for the
* extra registers we extract from fog */
- if (stfp->Base.UsesFrontFacing ||
- stfp->Base.UsesPointCoord) {
- numIn += 2;
+ if (stfp->Base.UsesFrontFacing) {
+ if (!stfp->Base.UsesFogFragCoord)
+ --stfp->input_to_slot[inAttr];
+ else
+ ++numIn;
+ }
+ if (stfp->Base.UsesPointCoord) {
+ if (!stfp->Base.UsesFrontFacing &&
+ !stfp->Base.UsesFogFragCoord)
+ stfp->input_to_slot[inAttr] -= 2;
+ else
+ ++numIn;
}
}
}
More information about the mesa-commit
mailing list