Mesa (master): i965: Reduce the number of fs_reg(brw_reg) calls in LINTERP handling.

Kenneth Graunke kwg at kemper.freedesktop.org
Sat Jul 16 00:51:20 UTC 2016


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

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Mon Jul 11 17:14:50 2016 -0700

i965: Reduce the number of fs_reg(brw_reg) calls in LINTERP handling.

A bit tidier.

Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Matt Turner <mattst88 at gmail.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

---

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

diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index c6f193a..1f6ff59 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -1180,7 +1180,7 @@ fs_visitor::emit_general_interpolation(fs_reg *attr, const char *name,
       } else {
          /* Smooth/noperspective interpolation case. */
          for (unsigned int i = 0; i < type->vector_elements; i++) {
-            struct brw_reg interp = interp_reg(*location, i);
+            fs_reg interp(interp_reg(*location, i));
             if (devinfo->needs_unlit_centroid_workaround && mod_centroid) {
                /* Get the pixel/sample mask into f0 so that we know
                 * which pixels are lit.  Then, for each channel that is
@@ -1190,14 +1190,14 @@ fs_visitor::emit_general_interpolation(fs_reg *attr, const char *name,
                bld.emit(FS_OPCODE_MOV_DISPATCH_TO_FLAGS);
 
                fs_inst *inst;
-               inst = emit_linterp(*attr, fs_reg(interp), interpolation_mode,
+               inst = emit_linterp(*attr, interp, interpolation_mode,
                                    false, false);
                inst->predicate = BRW_PREDICATE_NORMAL;
                inst->predicate_inverse = true;
                if (devinfo->has_pln)
                   inst->no_dd_clear = true;
 
-               inst = emit_linterp(*attr, fs_reg(interp), interpolation_mode,
+               inst = emit_linterp(*attr, interp, interpolation_mode,
                                    mod_centroid, mod_sample);
                inst->predicate = BRW_PREDICATE_NORMAL;
                inst->predicate_inverse = false;
@@ -1205,7 +1205,7 @@ fs_visitor::emit_general_interpolation(fs_reg *attr, const char *name,
                   inst->no_dd_check = true;
 
             } else {
-               emit_linterp(*attr, fs_reg(interp), interpolation_mode,
+               emit_linterp(*attr, interp, interpolation_mode,
                             mod_centroid, mod_sample);
             }
             if (devinfo->gen < 6 && interpolation_mode == INTERP_QUALIFIER_SMOOTH) {




More information about the mesa-commit mailing list