[Mesa-dev] [PATCH 1/3] mesa/main: use BITSET_FOREACH_SET in perf_monitor_result_size

Samuel Pitoiset samuel.pitoiset at gmail.com
Mon Dec 14 10:11:06 PST 2015


Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>

On 12/14/2015 06:06 PM, Nicolai Hähnle wrote:
> From: Nicolai Hähnle <nicolai.haehnle at amd.com>
>
> This should make the code both faster and slightly clearer.
> ---
>   src/mesa/main/performance_monitor.c | 7 +++----
>   1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/src/mesa/main/performance_monitor.c b/src/mesa/main/performance_monitor.c
> index 98dfbea..43529b2 100644
> --- a/src/mesa/main/performance_monitor.c
> +++ b/src/mesa/main/performance_monitor.c
> @@ -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 */
>


More information about the mesa-dev mailing list