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

Author: Matt Turner <[email protected]>
Date:   Wed Nov 12 11:07:01 2014 -0800

i965/fs: Remove is_valid_3src() checks from emit_lrp.

The visitor emits MOVs to temporary registers for immediates, so these
never trigger. For further proof, check case ir_triop_fma.

Reviewed-by: Anuj Phogat <[email protected]>

---

 src/mesa/drivers/dri/i965/brw_fs_visitor.cpp |    5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp 
b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
index 21334a2..578e938 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
@@ -226,10 +226,7 @@ void
 fs_visitor::emit_lrp(const fs_reg &dst, const fs_reg &x, const fs_reg &y,
                      const fs_reg &a)
 {
-   if (brw->gen < 6 ||
-       !x.is_valid_3src() ||
-       !y.is_valid_3src() ||
-       !a.is_valid_3src()) {
+   if (brw->gen < 6) {
       /* We can't use the LRP instruction.  Emit x*(1-a) + y*a. */
       fs_reg y_times_a           = fs_reg(this, glsl_type::float_type);
       fs_reg one_minus_a         = fs_reg(this, glsl_type::float_type);

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to