[Mesa-dev] [PATCH 1/3] i965/vec4: don't load src on emit_send if it is BAD_FILE

Alejandro PiƱeiro apinheiro at igalia.com
Fri Mar 4 19:10:06 UTC 2016


This can happens if using emit_untyped_atomic for an atomic dec/inc
---
 src/mesa/drivers/dri/i965/brw_vec4_surface_builder.cpp | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_vec4_surface_builder.cpp b/src/mesa/drivers/dri/i965/brw_vec4_surface_builder.cpp
index 28002c5..ba1e670f 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_surface_builder.cpp
+++ b/src/mesa/drivers/dri/i965/brw_vec4_surface_builder.cpp
@@ -131,9 +131,10 @@ namespace brw {
                bld.MOV(offset(payload, n++),
                        offset(retype(addr, BRW_REGISTER_TYPE_UD), i));
 
-            for (unsigned i = 0; i < src_sz; i++)
-               bld.MOV(offset(payload, n++),
-                       offset(retype(src, BRW_REGISTER_TYPE_UD), i));
+            if (src.file != BAD_FILE)
+               for (unsigned i = 0; i < src_sz; i++)
+                  bld.MOV(offset(payload, n++),
+                          offset(retype(src, BRW_REGISTER_TYPE_UD), i));
 
             /* Reduce the dynamically uniform surface index to a single
              * scalar.
-- 
2.5.0



More information about the mesa-dev mailing list