Lines Matching refs:pt

86          draw->clip_user) && !draw->pt.test_fse) {
90 if (draw->pt.middle.llvm) {
91 middle = draw->pt.middle.llvm;
93 if (opt == PT_SHADE && !draw->pt.no_fse)
94 middle = draw->pt.middle.fetch_shade_emit;
96 middle = draw->pt.middle.general;
99 frontend = draw->pt.frontend;
102 if (draw->pt.prim != prim || draw->pt.opt != opt) {
110 } else if (draw->pt.eltSize != draw->pt.user.eltSize) {
122 frontend = draw->pt.front.vsplit;
126 draw->pt.frontend = frontend;
127 draw->pt.eltSize = draw->pt.user.eltSize;
128 draw->pt.prim = prim;
129 draw->pt.opt = opt;
132 if (draw->pt.rebind_parameters) {
135 draw->pt.rebind_parameters = FALSE;
145 first = draw->pt.vertices_per_patch;
146 incr = draw->pt.vertices_per_patch;
150 draw->pt.user.eltBias = draw->pt.user.eltSize ?
156 if (num_draws > 1 && draw->pt.user.increment_draw_id)
157 draw->pt.user.drawid++;
169 if (draw->pt.frontend) {
170 draw->pt.frontend->flush(draw->pt.frontend, flags);
174 draw->pt.frontend = NULL;
178 draw->pt.rebind_parameters = TRUE;
186 draw->pt.test_fse = debug_get_option_draw_fse();
187 draw->pt.no_fse = debug_get_option_draw_no_fse();
189 draw->pt.front.vsplit = draw_pt_vsplit(draw);
190 if (!draw->pt.front.vsplit)
193 draw->pt.middle.fetch_shade_emit = draw_pt_middle_fse(draw);
194 if (!draw->pt.middle.fetch_shade_emit)
197 draw->pt.middle.general = draw_pt_fetch_pipeline_or_emit(draw);
198 if (!draw->pt.middle.general)
203 draw->pt.middle.llvm = draw_pt_fetch_pipeline_or_emit_llvm(draw);
213 if (draw->pt.middle.llvm) {
214 draw->pt.middle.llvm->destroy(draw->pt.middle.llvm);
215 draw->pt.middle.llvm = NULL;
218 if (draw->pt.middle.general) {
219 draw->pt.middle.general->destroy(draw->pt.middle.general);
220 draw->pt.middle.general = NULL;
223 if (draw->pt.middle.fetch_shade_emit) {
224 draw->pt.middle.fetch_shade_emit->destroy(draw->pt.middle.fetch_shade_emit);
225 draw->pt.middle.fetch_shade_emit = NULL;
228 if (draw->pt.front.vsplit) {
229 draw->pt.front.vsplit->destroy(draw->pt.front.vsplit);
230 draw->pt.front.vsplit = NULL;
248 if (draw->pt.user.eltSize) {
251 switch (draw->pt.user.eltSize) {
254 const ubyte *elem = (const ubyte *) draw->pt.user.elts;
260 const ushort *elem = (const ushort *) draw->pt.user.elts;
266 const uint *elem = (const uint *) draw->pt.user.elts;
284 for (unsigned j = 0; j < draw->pt.nr_vertex_elements; j++) {
285 uint buf = draw->pt.vertex_element[j].vertex_buffer_index;
286 ubyte *ptr = (ubyte *) draw->pt.user.vbuffer[buf].map;
288 if (draw->pt.vertex_element[j].instance_divisor) {
289 ii = draw->instance_id / draw->pt.vertex_element[j].instance_divisor;
292 ptr += draw->pt.vertex_buffer[buf].buffer_offset;
293 ptr += draw->pt.vertex_buffer[buf].stride * ii;
294 ptr += draw->pt.vertex_element[j].src_offset;
297 switch (draw->pt.vertex_element[j].src_format) {
339 util_format_name(draw->pt.vertex_element[j].src_format));
353 const unsigned elt_max = draw->pt.user.eltMax;
364 switch (draw->pt.user.eltSize) {
411 if (draw->pt.user.eltSize) {
414 prim_restart_loop(draw, info, &draw_info[i], draw->pt.user.elts);
476 draw->pt.user.drawid = drawid_offset;
522 &resolved_draw, &(draw->pt.vertex_buffer[0]));
529 assert(draw->pt.user.elts);
530 draw->pt.user.min_index = use_info->index_bounds_valid ? use_info->min_index : 0;
531 draw->pt.user.max_index = use_info->index_bounds_valid ? use_info->max_index : ~0;
533 draw->pt.user.min_index = 0;
534 draw->pt.user.max_index = ~0;
536 draw->pt.user.eltSize = use_info->index_size ? draw->pt.user.eltSizeIB : 0;
537 draw->pt.user.drawid = drawid_offset;
538 draw->pt.user.increment_draw_id = use_info->increment_draw_id;
539 draw->pt.user.viewid = 0;
540 draw->pt.vertices_per_patch = patch_vertices;
553 for (unsigned i = 0; i < draw->pt.nr_vertex_elements; i++) {
556 draw->pt.vertex_element[i].src_offset,
557 draw->pt.vertex_element[i].instance_divisor,
558 draw->pt.vertex_element[i].vertex_buffer_index,
559 util_format_name(draw->pt.vertex_element[i].src_format));
562 for (unsigned i = 0; i < draw->pt.nr_vertex_buffers; i++) {
565 draw->pt.vertex_buffer[i].stride,
566 draw->pt.vertex_buffer[i].buffer_offset,
567 (int) draw->pt.user.vbuffer[i].size,
568 draw->pt.user.vbuffer[i].map);
581 index_limit = util_draw_max_index(draw->pt.vertex_buffer,
582 draw->pt.vertex_element,
583 draw->pt.nr_vertex_elements,
602 draw->pt.max_index = index_limit - 1;
606 * TODO: We could use draw->pt.max_index to further narrow
612 draw->pt.user.viewid = i;