const struct brw_state_flags *b ) { result->mesa = a->mesa ^ b->mesa; result->brw = a->brw ^ b->brw; } struct dirty_bit_map { uint64_t bit; char *name; uint32_t count; }; #define DEFINE_BIT(name) {name, #name, 0} static struct dirty_bit_map mesa_bits[] = { DEFINE_BIT(_NEW_MODELVIEW), DEFINE_BIT(_NEW_PROJECTION), DEFINE_BIT(_NEW_TEXTURE_MATRIX), DEFINE_BIT(_NEW_COLOR), DEFINE_BIT(_NEW_DEPTH), DEFINE_BIT(_NEW_EVAL), DEFINE_BIT(_NEW_FOG), DEFINE_BIT(_NEW_HINT), DEFINE_BIT(_NEW_LIGHT), DEFINE_BIT(_NEW_LINE), DEFINE_BIT(_NEW_PIXEL), DEFINE_BIT(_NEW_POINT), DEFINE_BIT(_NEW_POLYGON), DEFINE_BIT(_NEW_POLYGONSTIPPLE), DEFINE_BIT(_NEW_SCISSOR), DEFINE_BIT(_NEW_STENCIL),
{ result->mesa = a->mesa ^ b->mesa; result->brw = a->brw ^ b->brw; result->cache = a->cache ^ b->cache; } struct dirty_bit_map { uint32_t bit; char *name; uint32_t count; }; #define DEFINE_BIT(name) {name, #name, 0} static struct dirty_bit_map mesa_bits[] = { DEFINE_BIT(_NEW_MODELVIEW), DEFINE_BIT(_NEW_PROJECTION), DEFINE_BIT(_NEW_TEXTURE_MATRIX), DEFINE_BIT(_NEW_COLOR), DEFINE_BIT(_NEW_DEPTH), DEFINE_BIT(_NEW_EVAL), DEFINE_BIT(_NEW_FOG), DEFINE_BIT(_NEW_HINT), DEFINE_BIT(_NEW_LIGHT), DEFINE_BIT(_NEW_LINE), DEFINE_BIT(_NEW_PIXEL), DEFINE_BIT(_NEW_POINT), DEFINE_BIT(_NEW_POLYGON), DEFINE_BIT(_NEW_POLYGONSTIPPLE), DEFINE_BIT(_NEW_SCISSOR), DEFINE_BIT(_NEW_STENCIL),