radeonsi/nir: call nir_serialize only once per shader
[mesa.git] / src / gallium / drivers / freedreno / freedreno_query.c
index def6166479b11fb6e6c10eb473c71239431e2525..1c98f4db15637de4d02950f4e13522fb4f62e46a 100644 (file)
@@ -41,11 +41,12 @@ static struct pipe_query *
 fd_create_query(struct pipe_context *pctx, unsigned query_type, unsigned index)
 {
        struct fd_context *ctx = fd_context(pctx);
-       struct fd_query *q;
+       struct fd_query *q = NULL;
 
-       q = fd_sw_create_query(ctx, query_type);
-       if (!q && ctx->create_query)
-               q = ctx->create_query(ctx, query_type);
+       if (ctx->create_query)
+               q = ctx->create_query(ctx, query_type, index);
+       if (!q)
+               q = fd_sw_create_query(ctx, query_type, index);
 
        return (struct pipe_query *) q;
 }