Lines Matching refs:dinfo
352 const struct pipe_draw_info *dinfo,
377 ptr[0] = dinfo->index_size ? draw->index_bias : draw->start;
378 ptr[1] = dinfo->start_instance;
380 ptr[3] = dinfo->index_size ? -1 : 0;
545 const struct pipe_draw_info *dinfo,
564 unsigned size = fill_graphics_state_vars(ctx, dinfo, drawid, draw, shader_sel->current, constants, cmd_sig_key);
675 const struct pipe_draw_info *dinfo,
681 d3d12_draw_vbo(&ctx->base, dinfo, 0, indirect, draw, 1);
745 const struct pipe_draw_info *dinfo,
777 key.base_vertex.indexed = dinfo->index_size > 0;
878 const struct pipe_draw_info *dinfo,
885 util_draw_multi(pctx, dinfo, drawid_offset, indirect, draws, num_draws);
889 if (!indirect && (!draws[0].count || !dinfo->instance_count))
900 if (!prim_supported((enum pipe_prim_type)dinfo->mode) ||
901 dinfo->index_size == 1 ||
902 (dinfo->primitive_restart && dinfo->restart_index != 0xffff &&
903 dinfo->restart_index != 0xffffffff)) {
905 if (!dinfo->primitive_restart &&
907 !u_trim_pipe_prim((enum pipe_prim_type)dinfo->mode, (unsigned *)&draws[0].count))
910 ctx->initial_api_prim = (enum pipe_prim_type)dinfo->mode;
912 util_primconvert_draw_vbo(ctx->primconvert, dinfo, drawid_offset, indirect, draws, num_draws);
917 bool indirect_with_sysvals = !draw_auto && update_draw_indirect_with_sysvals(ctx, dinfo, drawid_offset, &indirect, &patched_indirect);
923 cmd_sig_key.indexed = dinfo->index_size > 0;
946 twoface_emulation(ctx, rast, dinfo, indirect, &draws[0]);
955 enum pipe_prim_type reduced_prim = u_reduced_prim((enum pipe_prim_type)dinfo->mode);
960 if (ctx->gfx_pipeline_state.prim_type != dinfo->mode) {
961 ctx->gfx_pipeline_state.prim_type = (enum pipe_prim_type)dinfo->mode;
965 d3d12_select_shader_variants(ctx, dinfo);
994 if (dinfo->index_size > 0) {
995 assert(dinfo->index_size != 1);
997 if (dinfo->has_user_indices) {
998 if (!util_upload_index_buffer(pctx, dinfo, &draws[0], &index_buffer,
1004 index_buffer = dinfo->index.resource;
1007 if (dinfo->primitive_restart) {
1008 assert(dinfo->restart_index == 0xffff ||
1009 dinfo->restart_index == 0xffffffff);
1010 ib_strip_cut_value = dinfo->restart_index == 0xffff ?
1055 unsigned num_root_descriptors = update_graphics_root_parameters(ctx, dinfo, drawid_offset, &draws[0],
1104 ctx->cmdlist->IASetPrimitiveTopology(topology((enum pipe_prim_type)dinfo->mode, ctx->patch_vertices));
1122 ibv.Format = ib_format(dinfo->index_size);
1131 if (dinfo->has_user_indices)
1231 if (dinfo->index_size > 0)
1232 ctx->cmdlist->DrawIndexedInstanced(draws[0].count, dinfo->instance_count,
1234 dinfo->start_instance);
1236 ctx->cmdlist->DrawInstanced(draws[0].count, dinfo->instance_count,
1237 draws[0].start, dinfo->start_instance);