Lines Matching defs:batch
51 struct zink_batch *batch = &ctx->batch;
70 zink_batch_reference_resource_rw(batch, res, true);
78 VKCTX(CmdBindTransformFeedbackBuffersEXT)(batch->state->cmdbuf, 0, ctx->num_so_targets,
109 zink_bind_vertex_buffers(struct zink_batch *batch, struct zink_context *ctx)
141 VKCTX(CmdBindVertexBuffers2EXT)(batch->state->cmdbuf, 0,
145 VKSCR(CmdBindVertexBuffers)(batch->state->cmdbuf, 0,
150 VKCTX(CmdSetVertexInputEXT)(batch->state->cmdbuf,
158 zink_bind_vertex_state(struct zink_batch *batch, struct zink_context *ctx,
168 zink_batch_resource_usage_set(&ctx->batch, res, false);
170 VKCTX(CmdBindVertexBuffers)(batch->state->cmdbuf, 0,
174 VKCTX(CmdSetVertexInputEXT)(batch->state->cmdbuf,
210 zink_batch_reference_program(&ctx->batch, &prog->base);
229 VKCTX(CmdPushConstants)(ctx->batch.state->cmdbuf, ctx->curr_program->base.layout, VK_SHADER_STAGE_VERTEX_BIT,
242 VkCommandBuffer cmdbuf = ctx->batch.state->cmdbuf;
271 VkCommandBuffer cmdbuf = ctx->batch.state->cmdbuf;
306 VkCommandBuffer cmdbuf = ctx->batch.state->cmdbuf;
386 struct zink_batch_state *bs = ctx->batch.state;
394 if (bs != ctx->batch.state) {
423 struct zink_batch *batch = &ctx->batch;
433 unsigned work_count = ctx->batch.work_count;
465 zink_batch_reference_resource_move(batch, zink_resource(index_buffer));
467 zink_batch_reference_resource(batch, zink_resource(index_buffer));
470 zink_batch_reference_resource_rw(batch, zink_resource(index_buffer), false);
520 VKSCR(CmdPipelineBarrier)(ctx->batch.state->cmdbuf,
528 if (unlikely(!ctx->batch.in_rp))
563 VKCTX(CmdBindIndexBuffer)(batch->state->cmdbuf, res->obj->buffer, index_offset, index_type[index_size >> 1]);
574 bool pipeline_changed = update_gfx_pipeline<BATCH_CHANGED>(ctx, batch->state, mode);
603 VKCTX(CmdSetViewportWithCountEXT)(batch->state->cmdbuf, ctx->vp_state.num_viewports, viewports);
605 VKCTX(CmdSetViewport)(batch->state->cmdbuf, 0, ctx->vp_state.num_viewports, viewports);
625 VKCTX(CmdSetScissorWithCountEXT)(batch->state->cmdbuf, ctx->vp_state.num_viewports, scissors);
627 VKCTX(CmdSetScissor)(batch->state->cmdbuf, 0, ctx->vp_state.num_viewports, scissors);
633 VKCTX(CmdSetStencilReference)(batch->state->cmdbuf, VK_STENCIL_FACE_FRONT_BIT,
635 VKCTX(CmdSetStencilReference)(batch->state->cmdbuf, VK_STENCIL_FACE_BACK_BIT,
641 VKCTX(CmdSetDepthBoundsTestEnableEXT)(batch->state->cmdbuf, dsa_state->hw_state.depth_bounds_test);
643 VKCTX(CmdSetDepthBounds)(batch->state->cmdbuf,
646 VKCTX(CmdSetDepthTestEnableEXT)(batch->state->cmdbuf, dsa_state->hw_state.depth_test);
648 VKCTX(CmdSetDepthCompareOpEXT)(batch->state->cmdbuf, dsa_state->hw_state.depth_compare_op);
649 VKCTX(CmdSetDepthWriteEnableEXT)(batch->state->cmdbuf, dsa_state->hw_state.depth_write);
650 VKCTX(CmdSetStencilTestEnableEXT)(batch->state->cmdbuf, dsa_state->hw_state.stencil_test);
652 VKCTX(CmdSetStencilOpEXT)(batch->state->cmdbuf, VK_STENCIL_FACE_FRONT_BIT,
657 VKCTX(CmdSetStencilOpEXT)(batch->state->cmdbuf, VK_STENCIL_FACE_BACK_BIT,
663 VKCTX(CmdSetStencilWriteMask)(batch->state->cmdbuf, VK_STENCIL_FACE_FRONT_BIT, dsa_state->hw_state.stencil_front.writeMask);
664 VKCTX(CmdSetStencilWriteMask)(batch->state->cmdbuf, VK_STENCIL_FACE_BACK_BIT, dsa_state->hw_state.stencil_back.writeMask);
665 VKCTX(CmdSetStencilCompareMask)(batch->state->cmdbuf, VK_STENCIL_FACE_FRONT_BIT, dsa_state->hw_state.stencil_front.compareMask);
666 VKCTX(CmdSetStencilCompareMask)(batch->state->cmdbuf, VK_STENCIL_FACE_BACK_BIT, dsa_state->hw_state.stencil_back.compareMask);
668 VKCTX(CmdSetStencilWriteMask)(batch->state->cmdbuf, VK_STENCIL_FACE_FRONT_AND_BACK, dsa_state->hw_state.stencil_front.writeMask);
669 VKCTX(CmdSetStencilCompareMask)(batch->state->cmdbuf, VK_STENCIL_FACE_FRONT_AND_BACK, dsa_state->hw_state.stencil_front.compareMask);
672 VKCTX(CmdSetStencilWriteMask)(batch->state->cmdbuf, VK_STENCIL_FACE_FRONT_AND_BACK, dsa_state->hw_state.stencil_front.writeMask);
673 VKCTX(CmdSetStencilCompareMask)(batch->state->cmdbuf, VK_STENCIL_FACE_FRONT_AND_BACK, dsa_state->hw_state.stencil_front.compareMask);
680 VKCTX(CmdSetFrontFaceEXT)(batch->state->cmdbuf, (VkFrontFace)ctx->gfx_pipeline_state.dyn_state1.front_face);
681 VKCTX(CmdSetCullModeEXT)(batch->state->cmdbuf, ctx->gfx_pipeline_state.dyn_state1.cull_mode);
685 VKCTX(CmdSetLineStippleEXT)(batch->state->cmdbuf, rast_state->base.line_stipple_factor, rast_state->base.line_stipple_pattern);
710 VKCTX(CmdSetLineWidth)(batch->state->cmdbuf, rast_state->line_width);
713 VKCTX(CmdSetDepthBias)(batch->state->cmdbuf, rast_state->offset_units * ctx->depth_bias_scale_factor, rast_state->offset_clamp, rast_state->offset_scale);
715 VKCTX(CmdSetDepthBias)(batch->state->cmdbuf, rast_state->offset_units, rast_state->offset_clamp, rast_state->offset_scale);
718 VKCTX(CmdSetDepthBias)(batch->state->cmdbuf, 0.0f, 0.0f, 0.0f);
727 VKCTX(CmdSetSampleLocationsEXT)(batch->state->cmdbuf, &loc);
734 VKCTX(CmdSetBlendConstants)(batch->state->cmdbuf, ctx->blend_constants);
739 zink_bind_vertex_state(batch, ctx, vstate, partial_velem_mask);
742 zink_bind_vertex_buffers<DYNAMIC_STATE>(batch, ctx);
744 zink_bind_vertex_buffers<ZINK_NO_DYNAMIC_STATE>(batch, ctx);
753 VKCTX(CmdSetPrimitiveTopologyEXT)(batch->state->cmdbuf, zink_primitive_topology(mode));
757 VKCTX(CmdSetPrimitiveRestartEnableEXT)(batch->state->cmdbuf, dinfo->primitive_restart);
762 VKCTX(CmdSetRasterizerDiscardEnableEXT)(batch->state->cmdbuf, ctx->gfx_pipeline_state.dyn_state2.rasterizer_discard);
777 VKCTX(CmdPushConstants)(batch->state->cmdbuf, ctx->curr_program->base.layout, VK_SHADER_STAGE_VERTEX_BIT,
782 VKCTX(CmdPushConstants)(batch->state->cmdbuf, ctx->curr_program->base.layout, VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT,
794 zink_batch_reference_resource_rw(batch, res, true);
802 VKCTX(CmdBeginTransformFeedbackEXT)(batch->state->cmdbuf, 0, ctx->num_so_targets, counter_buffers, counter_buffer_offsets);
813 zink_batch_reference_resource_rw(batch, indirect, false);
816 zink_batch_reference_resource_rw(batch, indirect_draw_count, false);
817 VKCTX(CmdDrawIndexedIndirectCount)(batch->state->cmdbuf, indirect->obj->buffer, dindirect->offset,
821 VKCTX(CmdDrawIndexedIndirect)(batch->state->cmdbuf, indirect->obj->buffer, dindirect->offset, dindirect->draw_count, dindirect->stride);
837 zink_batch_reference_resource_rw(batch, zink_resource(so_target->base.buffer), false);
838 zink_batch_reference_resource_rw(batch, zink_resource(so_target->counter_buffer), true);
839 VKCTX(CmdDrawIndirectByteCountEXT)(batch->state->cmdbuf, dinfo->instance_count, dinfo->start_instance,
848 zink_batch_reference_resource_rw(batch, indirect, false);
851 zink_batch_reference_resource_rw(batch, indirect_draw_count, false);
852 VKCTX(CmdDrawIndirectCount)(batch->state->cmdbuf, indirect->obj->buffer, dindirect->offset,
856 VKCTX(CmdDrawIndirect)(batch->state->cmdbuf, indirect->obj->buffer, dindirect->offset, dindirect->draw_count, dindirect->stride);
871 VKCTX(CmdEndTransformFeedbackEXT)(batch->state->cmdbuf, 0, ctx->num_so_targets, counter_buffers, counter_buffer_offsets);
873 batch->has_work = true;
874 batch->last_was_compute = false;
875 ctx->batch.work_count = work_count;
929 struct zink_batch *batch = &ctx->batch;
956 VKSCR(CmdPipelineBarrier)(ctx->batch.state->cmdbuf,
972 zink_batch_reference_program(&ctx->batch, &ctx->curr_compute->base);
984 VKCTX(CmdBindPipeline)(batch->state->cmdbuf, VK_PIPELINE_BIND_POINT_COMPUTE, pipeline);
991 VKCTX(CmdPushConstants)(batch->state->cmdbuf, ctx->curr_compute->base.layout, VK_SHADER_STAGE_COMPUTE_BIT,
995 batch->work_count++;
998 VKCTX(CmdDispatchIndirect)(batch->state->cmdbuf, zink_resource(info->indirect)->obj->buffer, info->indirect_offset);
999 zink_batch_reference_resource_rw(batch, zink_resource(info->indirect), false);
1001 VKCTX(CmdDispatch)(batch->state->cmdbuf, info->grid[0], info->grid[1], info->grid[2]);
1002 batch->has_work = true;
1003 batch->last_was_compute = true;
1005 if (unlikely(ctx->batch.work_count >= 30000) || ctx->oom_flush)
1136 [2]; //batch changed
1138 [2]; //batch changed