From: Paul Berry Date: Fri, 10 Jan 2014 23:40:57 +0000 (-0800) Subject: i965: Create a macro for checking a dirty bit. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c5bdf9be;p=mesa.git i965: Create a macro for checking a dirty bit. This will make it easier to extend dirty bit handling to support compute shaders. Reviewed-by: Jordan Justen --- diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index 5ffd9604a9c..a44b77f4717 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -259,6 +259,12 @@ struct brw_state_flags { } while (false) +/** + * Check one of the bits in a field of brw_state_flags. + */ +#define CHECK_DIRTY_BIT(FIELD, FLAG) ((brw->state.dirty.FIELD & (FLAG)) != 0) + + /** Subclass of Mesa vertex program */ struct brw_vertex_program { struct gl_vertex_program program; diff --git a/src/mesa/drivers/dri/i965/brw_vec4_gs.c b/src/mesa/drivers/dri/i965/brw_vec4_gs.c index ecab59ae8e5..d99502de613 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_gs.c +++ b/src/mesa/drivers/dri/i965/brw_vec4_gs.c @@ -272,7 +272,7 @@ brw_upload_gs_prog(struct brw_context *brw) if (gp == NULL) { /* No geometry shader. Vertex data just passes straight through. */ - if (brw->state.dirty.brw & BRW_NEW_VUE_MAP_VS) { + if (CHECK_DIRTY_BIT(brw, BRW_NEW_VUE_MAP_VS)) { brw->vue_map_geom_out = brw->vue_map_vs; SET_DIRTY_BIT(brw, BRW_NEW_VUE_MAP_GEOM_OUT); }