iris: Use new PIPE_STAT_QUERY enums rather than hardcoded numbers.
authorKenneth Graunke <kenneth@whitecape.org>
Fri, 11 Jan 2019 08:21:06 +0000 (00:21 -0800)
committerKenneth Graunke <kenneth@whitecape.org>
Thu, 21 Feb 2019 18:26:11 +0000 (10:26 -0800)
src/gallium/drivers/iris/iris_query.c

index 0318b76a0f279a6a74a5404fc5eafce89b5814a8..9d854f4bdcd17322b6b42a5270ccec15d48ef967 100644 (file)
@@ -701,7 +701,9 @@ calculate_result_on_gpu(struct iris_context *ice, struct iris_query *q)
    iris_batch_emit(batch, math, sizeof(math));
 
    /* WaDividePSInvocationCountBy4:HSW,BDW */
-   if (q->type == PIPE_QUERY_PIPELINE_STATISTICS && q->index == 7 && devinfo->gen == 8)
+   if (devinfo->gen == 8 &&
+       q->type == PIPE_QUERY_PIPELINE_STATISTICS &&
+       q->index == PIPE_STAT_QUERY_PS_INVOCATIONS)
       shr_gpr0_by_2_bits(ice);
 
    if (q->type == PIPE_QUERY_OCCLUSION_PREDICATE ||
@@ -724,7 +726,8 @@ iris_create_query(struct pipe_context *ctx,
    q->type = query_type;
    q->index = index;
 
-   if (q->type == PIPE_QUERY_PIPELINE_STATISTICS && q->index == 10)
+   if (q->type == PIPE_QUERY_PIPELINE_STATISTICS &&
+       q->index == PIPE_STAT_QUERY_CS_INVOCATIONS)
       q->batch_idx = IRIS_BATCH_COMPUTE;
    else
       q->batch_idx = IRIS_BATCH_RENDER;