From: Kenneth Graunke Date: Sun, 25 May 2014 08:08:52 +0000 (-0700) Subject: i965/sf: Move brw_set_predicate_control_flag_value to brw_sf_emit.c. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e287f5937f0381a4ff24583a3cfd74ccaa37f423;p=mesa.git i965/sf: Move brw_set_predicate_control_flag_value to brw_sf_emit.c. Only the Gen4-5 SF program compiler actually uses this function; move it there. Soon the fields will be moved out of brw_compile. Signed-off-by: Kenneth Graunke Reviewed-by: Matt Turner --- diff --git a/src/mesa/drivers/dri/i965/brw_eu.c b/src/mesa/drivers/dri/i965/brw_eu.c index e854a79ad8a..6018339dc40 100644 --- a/src/mesa/drivers/dri/i965/brw_eu.c +++ b/src/mesa/drivers/dri/i965/brw_eu.c @@ -88,24 +88,6 @@ brw_swap_cmod(uint32_t cmod) } } - -/* How does predicate control work when execution_size != 8? Do I - * need to test/set for 0xffff when execution_size is 16? - */ -void brw_set_predicate_control_flag_value( struct brw_compile *p, unsigned value ) -{ - p->current->header.predicate_control = BRW_PREDICATE_NONE; - - if (value != 0xff) { - if (value != p->flag_value) { - brw_MOV(p, brw_flag_reg(0, 0), brw_imm_uw(value)); - p->flag_value = value; - } - - p->current->header.predicate_control = BRW_PREDICATE_NORMAL; - } -} - void brw_set_predicate_control( struct brw_compile *p, unsigned pc ) { p->current->header.predicate_control = pc; diff --git a/src/mesa/drivers/dri/i965/brw_eu.h b/src/mesa/drivers/dri/i965/brw_eu.h index 7be0ccecaae..43cd1728161 100644 --- a/src/mesa/drivers/dri/i965/brw_eu.h +++ b/src/mesa/drivers/dri/i965/brw_eu.h @@ -97,7 +97,6 @@ void brw_set_mask_control( struct brw_compile *p, unsigned value ); void brw_set_saturate( struct brw_compile *p, bool enable ); void brw_set_access_mode( struct brw_compile *p, unsigned access_mode ); void brw_set_compression_control(struct brw_compile *p, enum brw_compression c); -void brw_set_predicate_control_flag_value( struct brw_compile *p, unsigned value ); void brw_set_predicate_control( struct brw_compile *p, unsigned pc ); void brw_set_predicate_inverse(struct brw_compile *p, bool predicate_inverse); void brw_set_conditionalmod( struct brw_compile *p, unsigned conditional ); diff --git a/src/mesa/drivers/dri/i965/brw_sf_emit.c b/src/mesa/drivers/dri/i965/brw_sf_emit.c index 475d4898521..c5308a5af5f 100644 --- a/src/mesa/drivers/dri/i965/brw_sf_emit.c +++ b/src/mesa/drivers/dri/i965/brw_sf_emit.c @@ -413,7 +413,21 @@ calculate_point_sprite_mask(struct brw_sf_compile *c, GLuint reg) return pc; } +static void +brw_set_predicate_control_flag_value(struct brw_compile *p, + unsigned value) +{ + p->current->header.predicate_control = BRW_PREDICATE_NONE; + + if (value != 0xff) { + if (value != p->flag_value) { + brw_MOV(p, brw_flag_reg(0, 0), brw_imm_uw(value)); + p->flag_value = value; + } + p->current->header.predicate_control = BRW_PREDICATE_NORMAL; + } +} void brw_emit_tri_setup(struct brw_sf_compile *c, bool allocate) {