Lines Matching refs:ice

39 iris_is_color_fast_clear_compatible(struct iris_context *ice,
43 struct iris_batch *batch = &ice->batches[IRIS_BATCH_RENDER];
47 perf_debug(&ice->dbg, "Integer fast clear not enabled for %s\n",
67 can_fast_clear_color(struct iris_context *ice,
96 ice->state.predicate == IRIS_PREDICATE_STATE_USE_BIT) {
121 if (!iris_is_color_fast_clear_compatible(ice, res->surf.format, color))
164 fast_clear_color(struct iris_context *ice,
170 struct iris_batch *batch = &ice->batches[IRIS_BATCH_RENDER];
209 iris_resource_prepare_access(ice, res,
214 perf_debug(&ice->dbg,
220 perf_debug(&ice->dbg,
235 iris_resource_set_clear_color(ice, res, color);
277 blorp_batch_init(&ice->blorp, &blorp_batch, batch, blorp_flags);
298 iris_resource_set_aux_state(ice, res, level, box->z,
300 ice->state.dirty |= IRIS_DIRTY_RENDER_BUFFER;
301 ice->state.stage_dirty |= IRIS_ALL_STAGE_DIRTY_BINDINGS;
306 clear_color(struct iris_context *ice,
317 struct iris_batch *batch = &ice->batches[IRIS_BATCH_RENDER];
322 if (ice->state.predicate == IRIS_PREDICATE_STATE_DONT_RENDER)
325 if (ice->state.predicate == IRIS_PREDICATE_STATE_USE_BIT)
334 bool can_fast_clear = can_fast_clear_color(ice, p_res, level, box,
338 fast_clear_color(ice, res, level, box, color);
343 iris_resource_render_aux_usage(ice, res, level, format, false);
345 iris_resource_prepare_render(ice, res, level, box->z, box->depth,
356 blorp_batch_init(&ice->blorp, &blorp_batch, batch, blorp_flags);
370 iris_dirty_for_history(ice, res);
372 iris_resource_finish_render(ice, res, level,
377 can_fast_clear_depth(struct iris_context *ice,
385 struct pipe_context *ctx = (void *) ice;
404 ice->state.predicate == IRIS_PREDICATE_STATE_USE_BIT) {
422 fast_clear_depth(struct iris_context *ice,
428 struct iris_batch *batch = &ice->batches[IRIS_BATCH_RENDER];
462 iris_hiz_exec(ice, batch, res, res_level, layer, 1,
464 iris_resource_set_aux_state(ice, res, res_level, layer, 1,
469 iris_resource_set_clear_color(ice, res, clear_value);
495 perf_debug(&ice->dbg, "Performing HiZ clear just to update the "
498 iris_hiz_exec(ice, batch, res, level,
504 iris_resource_set_aux_state(ice, res, level, box->z, box->depth,
506 ice->state.dirty |= IRIS_DIRTY_DEPTH_BUFFER;
507 ice->state.stage_dirty |= IRIS_ALL_STAGE_DIRTY_BINDINGS;
511 clear_depth_stencil(struct iris_context *ice,
523 struct iris_batch *batch = &ice->batches[IRIS_BATCH_RENDER];
527 if (ice->state.predicate == IRIS_PREDICATE_STATE_DONT_RENDER)
530 if (ice->state.predicate == IRIS_PREDICATE_STATE_USE_BIT)
543 can_fast_clear_depth(ice, z_res, level, box, render_condition_enabled,
545 fast_clear_depth(ice, z_res, level, box, depth);
546 iris_dirty_for_history(ice, res);
560 iris_resource_render_aux_usage(ice, z_res, level, z_res->surf.format,
562 iris_resource_prepare_render(ice, z_res, level, box->z, box->depth,
571 iris_resource_prepare_access(ice, stencil_res, level, 1, box->z,
583 blorp_batch_init(&ice->blorp, &blorp_batch, batch, blorp_flags);
596 iris_dirty_for_history(ice, res);
599 iris_resource_finish_render(ice, z_res, level, box->z, box->depth,
604 iris_resource_finish_write(ice, stencil_res, level, box->z, box->depth,
622 struct iris_context *ice = (void *) ctx;
623 struct pipe_framebuffer_state *cso_fb = &ice->state.framebuffer;
644 clear_depth_stencil(ice, psurf->texture, psurf->u.tex.level, &box, true,
658 clear_color(ice, psurf->texture, psurf->u.tex.level, &box,
678 struct iris_context *ice = (void *) ctx;
695 clear_depth_stencil(ice, p_res, level, box, true, true, true,
725 clear_color(ice, p_res, level, box, true, format,
743 struct iris_context *ice = (void *) ctx;
754 clear_color(ice, psurf->texture, psurf->u.tex.level, &box,
775 struct iris_context *ice = (void *) ctx;
787 clear_depth_stencil(ice, psurf->texture, psurf->u.tex.level, &box,