i965/fs: Emit interpolation setup if non-coherent framebuffer fetch is in use.
authorFrancisco Jerez <currojerez@riseup.net>
Fri, 22 Jul 2016 03:35:29 +0000 (20:35 -0700)
committerFrancisco Jerez <currojerez@riseup.net>
Fri, 26 Aug 2016 01:36:06 +0000 (18:36 -0700)
This will be required for the next commit since the non-coherent path
makes use of the fragment coordinates implicitly, so they need to be
calculated.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_fs.cpp

index 9f66dc7e024e707758701d378bf8562fbfcb0a7b..0cbb7de8e12e11cb5b66555c7bcba9d5296583de 100644 (file)
@@ -6176,7 +6176,8 @@ fs_visitor::run_fs(bool allow_spilling, bool do_rep_send)
          emit_shader_time_begin();
 
       calculate_urb_setup();
-      if (nir->info.inputs_read > 0) {
+      if (nir->info.inputs_read > 0 ||
+          (nir->info.outputs_read > 0 && !wm_key->coherent_fb_fetch)) {
          if (devinfo->gen < 6)
             emit_interpolation_setup_gen4();
          else