i965/gen6/gs: Add instruction URB flags to geometry shaders EOT message.
authorIago Toral Quiroga <itoral@igalia.com>
Wed, 9 Jul 2014 13:32:57 +0000 (15:32 +0200)
committerIago Toral Quiroga <itoral@igalia.com>
Fri, 19 Sep 2014 13:01:15 +0000 (15:01 +0200)
Gen6 seems to require that EOT messages include the complete flag too or else
the GPU hangs. We add will this flag to the instruction when we emit the
thread end opcode.

Acked-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
src/mesa/drivers/dri/i965/brw_vec4_generator.cpp

index f98c472430cad1556b05a2614c4d64687c961205..ebc54916c122f10f805d8f238aadc1042bf6058e 100644 (file)
@@ -500,7 +500,7 @@ vec4_generator::generate_gs_thread_end(vec4_instruction *inst)
                  brw_null_reg(), /* dest */
                  inst->base_mrf, /* starting mrf reg nr */
                  src,
-                 BRW_URB_WRITE_EOT,
+                 BRW_URB_WRITE_EOT | inst->urb_write_flags,
                  brw->gen >= 8 ? 2 : 1,/* message len */
                  0,              /* response len */
                  0,              /* urb destination offset */