i965: Pass start_offset to brw_set_uip_jip().
authorMatt Turner <mattst88@gmail.com>
Mon, 29 Aug 2016 22:57:41 +0000 (15:57 -0700)
committerMatt Turner <mattst88@gmail.com>
Wed, 31 Aug 2016 20:11:27 +0000 (13:11 -0700)
commit90eaf01616a8cf7a39dae63a3d5636874fa68fa5
treea54ff03684358b361f38ed418818eed92247f90e
parentbea048752ea95d5e074891f2131f54d6e0760538
i965: Pass start_offset to brw_set_uip_jip().

Without this, we would pass over the instructions in the SIMD8 program
(which is located earlier in the buffer) when brw_set_uip_jip() is
called to handle the SIMD16 program.

The assertion about compacted control flow was bogus: halt, cont, break
cannot be compacted because they have both JIP and UIP. Instead, we
should never see a compacted instruction in this code at all.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
src/mesa/drivers/dri/i965/brw_eu.h
src/mesa/drivers/dri/i965/brw_eu_emit.c
src/mesa/drivers/dri/i965/brw_fs_generator.cpp
src/mesa/drivers/dri/i965/brw_vec4_generator.cpp