Mesa (master): i965: Don't do 1/w multiplication in new FS for gen6

Eric Anholt anholt at kemper.freedesktop.org
Wed Oct 6 19:15:33 UTC 2010


Module: Mesa
Branch: master
Commit: fe6efc25ed3c1edf26073c4e6b6a3a45c857c1eb
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fe6efc25ed3c1edf26073c4e6b6a3a45c857c1eb

Author: Eric Anholt <eric at anholt.net>
Date:   Wed Oct  6 11:00:31 2010 -0700

i965: Don't do 1/w multiplication in new FS for gen6

Not needed now that we're doing barycentric.

---

 src/mesa/drivers/dri/i965/brw_fs.cpp |   14 ++++++++------
 1 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index 6e5ea07..7327c3a 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -810,12 +810,14 @@ fs_visitor::emit_general_interpolation(ir_variable *ir)
 	 }
 	 attr.reg_offset -= type->vector_elements;
 
-	 for (unsigned int c = 0; c < type->vector_elements; c++) {
-	    emit(fs_inst(BRW_OPCODE_MUL,
-			 attr,
-			 attr,
-			 this->pixel_w));
-	    attr.reg_offset++;
+	 if (intel->gen < 6) {
+	    for (unsigned int c = 0; c < type->vector_elements; c++) {
+	       emit(fs_inst(BRW_OPCODE_MUL,
+			    attr,
+			    attr,
+			    this->pixel_w));
+	       attr.reg_offset++;
+	    }
 	 }
 	 location++;
       }




More information about the mesa-commit mailing list