calculate_result_on_gpu(struct iris_context *ice, struct iris_query *q)
 {
    struct iris_batch *batch = &ice->batches[q->batch_idx];
-   struct iris_screen *screen = (void *) ice->ctx.screen;
    const struct gen_device_info *devinfo = &batch->screen->devinfo;
    struct iris_bo *bo = iris_resource_bo(q->query_state_ref.res);
    uint32_t offset = q->query_state_ref.offset;
        * We would need to do a bit of fixed point math on the CS ALU, or
        * launch an actual shader to calculate this with full precision.
        */
-      emit_mul_gpr0(batch, (1000000000ull / screen->devinfo.timestamp_frequency));
+      emit_mul_gpr0(batch, (1000000000ull / devinfo->timestamp_frequency));
       keep_gpr0_lower_n_bits(ice, 36);
       return;
    }
 
    if (q->type == PIPE_QUERY_TIME_ELAPSED) {
       /* TODO: This discards fractional bits (see above). */
-      emit_mul_gpr0(batch, (1000000000ull / screen->devinfo.timestamp_frequency));
+      emit_mul_gpr0(batch, (1000000000ull / devinfo->timestamp_frequency));
    }
 }