mesa/main: use BITSET_FOREACH_SET in perf_monitor_result_size

This should make the code both faster and slightly clearer.

Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
This commit is contained in:
Nicolai Hähnle 2015-12-12 15:20:33 -05:00
parent 9c0773958e
commit 819543adb4

View file

@ -591,11 +591,10 @@ perf_monitor_result_size(const struct gl_context *ctx,
for (group = 0; group < ctx->PerfMonitor.NumGroups; group++) {
const struct gl_perf_monitor_group *g = &ctx->PerfMonitor.Groups[group];
for (counter = 0; counter < g->NumCounters; counter++) {
const struct gl_perf_monitor_counter *c = &g->Counters[counter];
BITSET_WORD tmp;
if (!BITSET_TEST(m->ActiveCounters[group], counter))
continue;
BITSET_FOREACH_SET(counter, tmp, m->ActiveCounters[group], g->NumCounters) {
const struct gl_perf_monitor_counter *c = &g->Counters[counter];
size += sizeof(uint32_t); /* Group ID */
size += sizeof(uint32_t); /* Counter ID */