Home
last modified time | relevance | path

Searched refs:indirect (Results 1 - 25 of 285) sorted by relevance

12345678910>>...12

/third_party/mesa3d/src/gallium/auxiliary/util/
H A Du_draw.c131 const struct pipe_draw_indirect_info *indirect, in util_draw_indirect_read()
139 assert(indirect); in util_draw_indirect_read()
140 assert(!indirect->count_from_stream_output); in util_draw_indirect_read()
142 uint32_t draw_count = indirect->draw_count; in util_draw_indirect_read()
143 if (indirect->indirect_draw_count) { in util_draw_indirect_read()
146 indirect->indirect_draw_count, in util_draw_indirect_read()
147 indirect->indirect_draw_count_offset, in util_draw_indirect_read()
150 debug_printf("%s: failed to map indirect draw count buffer\n", __FUNCTION__); in util_draw_indirect_read()
164 unsigned map_size = (draw_count - 1) * indirect->stride + (num_params * sizeof(uint32_t)); in util_draw_indirect_read()
166 indirect in util_draw_indirect_read()
129 util_draw_indirect_read(struct pipe_context *pipe, const struct pipe_draw_info *info_in, const struct pipe_draw_indirect_info *indirect, unsigned *num_draws) util_draw_indirect_read() argument
195 util_draw_indirect(struct pipe_context *pipe, const struct pipe_draw_info *info_in, const struct pipe_draw_indirect_info *indirect) util_draw_indirect() argument
257 util_draw_multi(struct pipe_context *pctx, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draws, unsigned num_draws) util_draw_multi() argument
[all...]
H A Du_prim_restart.c42 read_indirect_elements(struct pipe_context *context, const struct pipe_draw_indirect_info *indirect) in read_indirect_elements() argument
49 assert(indirect->buffer->width0 > 3 * sizeof(uint32_t)); in read_indirect_elements()
50 map = pipe_buffer_map_range(context, indirect->buffer, in read_indirect_elements()
51 indirect->offset, in read_indirect_elements()
112 DrawElementsIndirectCommand indirect; in util_translate_prim_restart_ib() local
121 indirect = read_indirect_elements(context, indirect_info); in util_translate_prim_restart_ib()
122 count = indirect.count; in util_translate_prim_restart_ib()
123 start = indirect.firstIndex; in util_translate_prim_restart_ib()
298 DrawElementsIndirectCommand indirect; in util_draw_vbo_without_prim_restart() local
316 indirect in util_draw_vbo_without_prim_restart()
[all...]
/third_party/mesa3d/src/gallium/drivers/svga/
H A Dsvga_pipe_draw.c85 const struct pipe_draw_indirect_info *indirect) in retry_draw_auto()
88 assert(indirect->count_from_stream_output); in retry_draw_auto()
121 NULL, /* indirect drawing info */ in retry_draw_auto()
122 indirect->count_from_stream_output)); in retry_draw_auto()
135 const struct pipe_draw_indirect_info *indirect) in retry_draw_indirect()
138 assert(indirect && indirect->buffer); in retry_draw_indirect()
139 /* indirect drawing implies core profile and none of these prim types */ in retry_draw_indirect()
146 util_draw_indirect(&svga->pipe, info, indirect); in retry_draw_indirect()
155 range.primitiveCount = 0; /* specified in indirect buffe in retry_draw_indirect()
83 retry_draw_auto(struct svga_context *svga, const struct pipe_draw_info *info, const struct pipe_draw_indirect_info *indirect) retry_draw_auto() argument
133 retry_draw_indirect(struct svga_context *svga, const struct pipe_draw_info *info, const struct pipe_draw_indirect_info *indirect) retry_draw_indirect() argument
220 svga_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draws, unsigned num_draws) svga_draw_vbo() argument
[all...]
H A Dsvga_pipe_cs.c199 if (info->indirect) { in svga_launch_grid()
200 svga->curr.grid_info.indirect= info->indirect; in svga_launch_grid()
208 if (info->indirect) { in svga_launch_grid()
210 indirect_surf = svga_buffer_handle(svga, info->indirect, in svga_launch_grid()
/third_party/mesa3d/src/gallium/drivers/crocus/
H A Dcrocus_draw.c205 const struct pipe_draw_indirect_info *indirect, in crocus_update_draw_parameters()
213 if (indirect && indirect->buffer) { in crocus_update_draw_parameters()
214 pipe_resource_reference(&draw_params->res, indirect->buffer); in crocus_update_draw_parameters()
216 indirect->offset + (info->index_size ? 12 : 8); in crocus_update_draw_parameters()
276 struct pipe_draw_indirect_info indirect = *dindirect; in crocus_indirect_draw_vbo() local
279 if (devinfo->verx10 >= 75 && indirect.indirect_draw_count && in crocus_indirect_draw_vbo()
288 for (int i = 0; i < indirect.draw_count; i++) { in crocus_indirect_draw_vbo()
294 crocus_update_draw_parameters(ice, &info, drawid_offset + i, &indirect, draws); in crocus_indirect_draw_vbo()
296 screen->vtbl.upload_render_state(ice, batch, &info, drawid_offset + i, &indirect, draw in crocus_indirect_draw_vbo()
202 crocus_update_draw_parameters(struct crocus_context *ice, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draw) crocus_update_draw_parameters() argument
316 crocus_simple_draw_vbo(struct crocus_context *ice, const struct pipe_draw_info *draw, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *sc) crocus_simple_draw_vbo() argument
336 crocus_draw_vbo_get_vertex_count(struct pipe_context *ctx, const struct pipe_draw_info *info_in, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect) crocus_draw_vbo_get_vertex_count() argument
356 crocus_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draws, unsigned num_draws) crocus_draw_vbo() argument
[all...]
/third_party/mesa3d/src/gallium/drivers/iris/
H A Diris_draw.c125 const struct pipe_draw_indirect_info *indirect, in iris_update_draw_parameters()
133 if (indirect && indirect->buffer) { in iris_update_draw_parameters()
134 pipe_resource_reference(&draw_params->res, indirect->buffer); in iris_update_draw_parameters()
136 indirect->offset + (info->index_size ? 12 : 8); in iris_update_draw_parameters()
193 struct pipe_draw_indirect_info indirect = *dindirect; in iris_indirect_draw_vbo() local
195 iris_emit_buffer_barrier_for(batch, iris_resource_bo(indirect.buffer), in iris_indirect_draw_vbo()
198 if (indirect.indirect_draw_count) { in iris_indirect_draw_vbo()
200 iris_resource_bo(indirect.indirect_draw_count); in iris_indirect_draw_vbo()
213 for (int i = 0; i < indirect in iris_indirect_draw_vbo()
122 iris_update_draw_parameters(struct iris_context *ice, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draw) iris_update_draw_parameters() argument
238 iris_simple_draw_vbo(struct iris_context *ice, const struct pipe_draw_info *draw, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *sc) iris_simple_draw_vbo() argument
257 iris_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draws, unsigned num_draws) iris_draw_vbo() argument
[all...]
H A Diris_measure.h48 const struct pipe_draw_indirect_info *indirect,
51 #define iris_measure_snapshot(ice, batch, type, draw, indirect, start_count) \
53 _iris_measure_snapshot(ice, batch, type, draw, indirect, start_count)
/third_party/mesa3d/src/mesa/state_tracker/
H A Dst_draw.c223 const struct pipe_draw_indirect_info *indirect, in rewrite_partial_stride_indirect()
227 struct u_indirect_params *new_draws = util_draw_indirect_read(st->pipe, info, indirect, &draw_count); in rewrite_partial_stride_indirect()
250 struct pipe_draw_indirect_info indirect; in st_indirect_draw_vbo() local
256 memset(&indirect, 0, sizeof(indirect)); in st_indirect_draw_vbo()
275 indirect.buffer = indirect_data->buffer; in st_indirect_draw_vbo()
276 indirect.offset = indirect_offset; in st_indirect_draw_vbo()
279 if (!indirect.buffer) in st_indirect_draw_vbo()
286 indirect.draw_count = 1; in st_indirect_draw_vbo()
288 cso_draw_vbo(st->cso_context, &info, i, &indirect, dra in st_indirect_draw_vbo()
221 rewrite_partial_stride_indirect(struct st_context *st, const struct pipe_draw_info *info, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias draw) rewrite_partial_stride_indirect() argument
319 struct pipe_draw_indirect_info indirect; st_draw_transform_feedback() local
[all...]
/third_party/mesa3d/src/mesa/main/
H A Dcompute.c222 valid_dispatch_indirect(struct gl_context *ctx, GLintptr indirect) in valid_dispatch_indirect() argument
225 const uint64_t end = (uint64_t) indirect + size; in valid_dispatch_indirect()
233 * "An INVALID_VALUE error is generated if indirect is negative or is not a in valid_dispatch_indirect()
236 if (indirect & (sizeof(GLuint) - 1)) { in valid_dispatch_indirect()
238 "%s(indirect is not aligned)", name); in valid_dispatch_indirect()
242 if (indirect < 0) { in valid_dispatch_indirect()
244 "%s(indirect is less than zero)", name); in valid_dispatch_indirect()
357 dispatch_compute_indirect(GLintptr indirect, bool no_error) in dispatch_compute_indirect() argument
364 _mesa_debug(ctx, "glDispatchComputeIndirect(%ld)\n", (long) indirect); in dispatch_compute_indirect()
366 if (!no_error && !valid_dispatch_indirect(ctx, indirect)) in dispatch_compute_indirect()
387 _mesa_DispatchComputeIndirect_no_error(GLintptr indirect) _mesa_DispatchComputeIndirect_no_error() argument
393 _mesa_DispatchComputeIndirect(GLintptr indirect) _mesa_DispatchComputeIndirect() argument
[all...]
H A Ddraw.c608 GLenum mode, const GLvoid *indirect, in valid_draw_indirect()
611 const uint64_t end = (uint64_t) (uintptr_t) indirect + size; in valid_draw_indirect()
654 * (thus allowing transform feedback to work with indirect draw commands). in valid_draw_indirect()
663 * "An INVALID_VALUE error is generated if indirect is not a in valid_draw_indirect()
666 if ((GLsizeiptr)indirect & (sizeof(GLuint) - 1)) in valid_draw_indirect()
687 GLenum mode, GLenum type, const GLvoid *indirect, in valid_draw_indirect_elements()
703 return valid_draw_indirect(ctx, mode, indirect, size); in valid_draw_indirect_elements()
740 const GLvoid *indirect) in _mesa_validate_DrawArraysIndirect()
744 valid_draw_indirect(ctx, mode, indirect, in _mesa_validate_DrawArraysIndirect()
756 const GLvoid *indirect) in _mesa_validate_DrawElementsIndirect()
607 valid_draw_indirect(struct gl_context *ctx, GLenum mode, const GLvoid *indirect, GLsizei size) valid_draw_indirect() argument
686 valid_draw_indirect_elements(struct gl_context *ctx, GLenum mode, GLenum type, const GLvoid *indirect, GLsizeiptr size) valid_draw_indirect_elements() argument
738 _mesa_validate_DrawArraysIndirect(struct gl_context *ctx, GLenum mode, const GLvoid *indirect) _mesa_validate_DrawArraysIndirect() argument
754 _mesa_validate_DrawElementsIndirect(struct gl_context *ctx, GLenum mode, GLenum type, const GLvoid *indirect) _mesa_validate_DrawElementsIndirect() argument
769 _mesa_validate_MultiDrawArraysIndirect(struct gl_context *ctx, GLenum mode, const GLvoid *indirect, GLsizei primcount, GLsizei stride) _mesa_validate_MultiDrawArraysIndirect() argument
797 _mesa_validate_MultiDrawElementsIndirect(struct gl_context *ctx, GLenum mode, GLenum type, const GLvoid *indirect, GLsizei primcount, GLsizei stride) _mesa_validate_MultiDrawElementsIndirect() argument
861 _mesa_validate_MultiDrawArraysIndirectCount(struct gl_context *ctx, GLenum mode, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) _mesa_validate_MultiDrawArraysIndirectCount() argument
894 _mesa_validate_MultiDrawElementsIndirectCount(struct gl_context *ctx, GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) _mesa_validate_MultiDrawElementsIndirectCount() argument
2373 _mesa_validated_multidrawarraysindirect(struct gl_context *ctx, GLenum mode, GLintptr indirect, GLintptr drawcount_offset, GLsizei drawcount, GLsizei stride, struct gl_buffer_object *drawcount_buffer) _mesa_validated_multidrawarraysindirect() argument
2393 _mesa_validated_multidrawelementsindirect(struct gl_context *ctx, GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount_offset, GLsizei drawcount, GLsizei stride, struct gl_buffer_object *drawcount_buffer) _mesa_validated_multidrawelementsindirect() argument
2427 _mesa_DrawArraysIndirect(GLenum mode, const GLvoid *indirect) _mesa_DrawArraysIndirect() argument
2466 _mesa_DrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect) _mesa_DrawElementsIndirect() argument
2526 _mesa_MultiDrawArraysIndirect(GLenum mode, const GLvoid *indirect, GLsizei primcount, GLsizei stride) _mesa_MultiDrawArraysIndirect() argument
2602 _mesa_MultiDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect, GLsizei primcount, GLsizei stride) _mesa_MultiDrawElementsIndirect() argument
2698 _mesa_MultiDrawArraysIndirectCountARB(GLenum mode, GLintptr indirect, GLintptr drawcount_offset, GLsizei maxdrawcount, GLsizei stride) _mesa_MultiDrawArraysIndirectCountARB() argument
2728 _mesa_MultiDrawElementsIndirectCountARB(GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount_offset, GLsizei maxdrawcount, GLsizei stride) _mesa_MultiDrawElementsIndirectCountARB() argument
[all...]
/third_party/mesa3d/src/gallium/drivers/softpipe/
H A Dsp_draw_arrays.c64 const struct pipe_draw_indirect_info *indirect, in softpipe_draw_vbo()
69 util_draw_multi(pipe, info, drawid_offset, indirect, draws, num_draws); in softpipe_draw_vbo()
73 if (!indirect && (!draws[0].count || !info->instance_count)) in softpipe_draw_vbo()
84 if (indirect && indirect->buffer) { in softpipe_draw_vbo()
85 util_draw_indirect(pipe, info, indirect); in softpipe_draw_vbo()
144 draw_vbo(draw, info, drawid_offset, indirect, draws, num_draws, 0); in softpipe_draw_vbo()
61 softpipe_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draws, unsigned num_draws) softpipe_draw_vbo() argument
/third_party/mesa3d/src/gallium/drivers/freedreno/a5xx/
H A Dfd5_draw.h84 const struct pipe_draw_indirect_info *indirect, in fd5_draw_emit()
92 if (indirect && indirect->buffer) { in fd5_draw_emit()
93 struct fd_resource *ind = fd_resource(indirect->buffer); in fd5_draw_emit()
108 OUT_RELOC(ring, ind->bo, indirect->offset, 0, 0); in fd5_draw_emit()
113 OUT_RELOC(ring, ind->bo, indirect->offset, 0, 0); in fd5_draw_emit()
81 fd5_draw_emit(struct fd_batch *batch, struct fd_ringbuffer *ring, enum pc_di_primtype primtype, enum pc_di_vis_cull_mode vismode, const struct pipe_draw_info *info, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draw, unsigned index_offset) fd5_draw_emit() argument
/third_party/mesa3d/src/gallium/drivers/freedreno/a4xx/
H A Dfd4_draw.h90 const struct pipe_draw_indirect_info *indirect, in fd4_draw_emit()
98 if (indirect && indirect->buffer) { in fd4_draw_emit()
99 struct fd_resource *ind = fd_resource(indirect->buffer); in fd4_draw_emit()
114 OUT_RELOC(ring, ind->bo, indirect->offset, 0, 0); in fd4_draw_emit()
119 OUT_RELOC(ring, ind->bo, indirect->offset, 0, 0); in fd4_draw_emit()
87 fd4_draw_emit(struct fd_batch *batch, struct fd_ringbuffer *ring, enum pc_di_primtype primtype, enum pc_di_vis_cull_mode vismode, const struct pipe_draw_info *info, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draw, unsigned index_offset) fd4_draw_emit() argument
/third_party/mesa3d/src/compiler/nir/
H A Dnir_lower_locals_to_regs.c42 * array, it ignores the offset and whether it is direct or indirect
140 src.reg.indirect = NULL; in get_deref_reg_src()
155 if (nir_src_is_const(d->arr.index) && !src.reg.indirect) { in get_deref_reg_src()
159 if (src.reg.indirect) { in get_deref_reg_src()
162 src.reg.indirect = malloc(sizeof(nir_src)); in get_deref_reg_src()
163 *src.reg.indirect = in get_deref_reg_src()
168 assert(src.reg.indirect->is_ssa); in get_deref_reg_src()
170 src.reg.indirect->ssa = in get_deref_reg_src()
171 nir_iadd(b, src.reg.indirect->ssa, in get_deref_reg_src()
273 mov->dest.dest.reg.indirect in lower_locals_to_regs_block()
[all...]
/third_party/mesa3d/src/gallium/drivers/freedreno/
H A Dfreedreno_draw.c197 const struct pipe_draw_indirect_info *indirect) assert_dt
219 /* Mark indirect draw buffer as being read */
220 if (indirect) {
221 if (indirect->buffer)
222 resource_read(batch, indirect->buffer);
223 if (indirect->count_from_stream_output)
225 batch, fd_stream_output_target(indirect->count_from_stream_output)
279 const struct pipe_draw_indirect_info *indirect,
284 /* for debugging problems with indirect draw, it is convenient
288 if (indirect
[all...]
/third_party/mesa3d/src/gallium/drivers/freedreno/a6xx/
H A Dfd6_draw.c48 const struct pipe_draw_indirect_info *indirect) in draw_emit_xfb()
51 fd_stream_output_target(indirect->count_from_stream_output); in draw_emit_xfb()
75 const struct pipe_draw_indirect_info *indirect, in draw_emit_indirect()
78 struct fd_resource *ind = fd_resource(indirect->buffer); in draw_emit_indirect()
88 A5XX_CP_DRAW_INDX_INDIRECT_INDIRECT(ind->bo, indirect->offset)); in draw_emit_indirect()
91 A5XX_CP_DRAW_INDIRECT_INDIRECT(ind->bo, indirect->offset)); in draw_emit_indirect()
135 const struct pipe_draw_indirect_info *indirect,
146 .indirect = indirect,
194 if (!(emit.key.hs || emit.key.ds || emit.key.gs || indirect))
46 draw_emit_xfb(struct fd_ringbuffer *ring, struct CP_DRAW_INDX_OFFSET_0 *draw0, const struct pipe_draw_info *info, const struct pipe_draw_indirect_info *indirect) draw_emit_xfb() argument
72 draw_emit_indirect(struct fd_ringbuffer *ring, struct CP_DRAW_INDX_OFFSET_0 *draw0, const struct pipe_draw_info *info, const struct pipe_draw_indirect_info *indirect, unsigned index_offset) draw_emit_indirect() argument
[all...]
/third_party/mesa3d/src/gallium/drivers/nouveau/nvc0/
H A Dnvc0_vbo.c771 const struct pipe_draw_indirect_info *indirect) in nvc0_draw_stream_output()
774 struct nvc0_so_target *so = nvc0_so_target(indirect->count_from_stream_output); in nvc0_draw_stream_output()
809 const struct pipe_draw_indirect_info *indirect) in nvc0_draw_indirect()
812 struct nv04_resource *buf = nv04_resource(indirect->buffer); in nvc0_draw_indirect()
813 struct nv04_resource *buf_count = nv04_resource(indirect->indirect_draw_count); in nvc0_draw_indirect()
814 unsigned size, macro, count = indirect->draw_count, drawid = drawid_offset; in nvc0_draw_indirect()
815 uint32_t offset = buf->offset + indirect->offset; in nvc0_draw_indirect()
864 if (indirect->stride == size * 4) { in nvc0_draw_indirect()
884 buf_count->offset + indirect->indirect_draw_count_offset, in nvc0_draw_indirect()
891 offset += draws * indirect in nvc0_draw_indirect()
769 nvc0_draw_stream_output(struct nvc0_context *nvc0, const struct pipe_draw_info *info, const struct pipe_draw_indirect_info *indirect) nvc0_draw_stream_output() argument
807 nvc0_draw_indirect(struct nvc0_context *nvc0, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect) nvc0_draw_indirect() argument
927 nvc0_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draws, unsigned num_draws) nvc0_draw_vbo() argument
[all...]
/third_party/mesa3d/src/gallium/drivers/v3d/
H A Dv3dx_draw.c372 cl_emit(&job->indirect, GEOMETRY_SHADER_STATE_RECORD, shader) { in v3d_emit_gs_state_record()
421 cl_emit(&job->indirect, TESSELLATION_GEOMETRY_COMMON_PARAMS, shader) { in v3d_emit_tes_gs_common_params()
457 cl_emit(&job->indirect, TESSELLATION_GEOMETRY_SHADER_PARAMS, shader) { in v3d_emit_tes_gs_shader_params()
492 /* Upload the uniforms to the indirect CL first */ in v3d_emit_gl_shader_state()
550 v3d_cl_ensure_space(&job->indirect, in v3d_emit_gl_shader_state()
599 cl_emit(&job->indirect, GL_SHADER_STATE_RECORD, shader) { in v3d_emit_gl_shader_state()
743 cl_emit_with_prepacked(&job->indirect, in v3d_emit_gl_shader_state()
780 cl_emit(&job->indirect, GL_SHADER_STATE_ATTRIBUTE_RECORD, attr) { in v3d_emit_gl_shader_state()
782 attr.address = cl_address(job->indirect.bo, 0); in v3d_emit_gl_shader_state()
802 state.address = cl_address(job->indirect in v3d_emit_gl_shader_state()
967 v3d_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draws, unsigned num_draws) v3d_draw_vbo() argument
[all...]
H A Dv3d_uniforms.c158 V3D33_TEXTURE_UNIFORM_PARAMETER_1_CFG_MODE1_pack(&job->indirect, in write_texture_p1()
191 cl_aligned_reloc(&job->indirect, uniforms, sview->bo, in write_tmu_p0()
211 cl_aligned_reloc(&job->indirect, uniforms, in write_image_tmu_p0()
243 cl_aligned_reloc(&job->indirect, uniforms, in write_tmu_p1()
262 * uniforms fill up the tail bytes of a page in the indirect in v3d_write_uniforms()
267 v3d_cl_ensure_space(&job->indirect, (uinfo->count + 1) * 4, 4); in v3d_write_uniforms()
269 struct v3d_cl_reloc uniform_stream = cl_get_address(&job->indirect); in v3d_write_uniforms()
273 cl_start(&job->indirect); in v3d_write_uniforms()
374 cl_aligned_reloc(&job->indirect, &uniforms, in v3d_write_uniforms()
385 cl_aligned_reloc(&job->indirect, in v3d_write_uniforms()
[all...]
/third_party/mesa3d/src/gallium/drivers/llvmpipe/
H A Dlp_draw_arrays.c56 const struct pipe_draw_indirect_info *indirect, in llvmpipe_draw_vbo()
60 if (!indirect && (!draws[0].count || !info->instance_count)) in llvmpipe_draw_vbo()
71 if (indirect && indirect->buffer) { in llvmpipe_draw_vbo()
72 util_draw_indirect(pipe, info, indirect); in llvmpipe_draw_vbo()
150 draw_vbo(draw, info, drawid_offset, indirect, draws, num_draws, in llvmpipe_draw_vbo()
54 llvmpipe_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draws, unsigned num_draws) llvmpipe_draw_vbo() argument
/third_party/mesa3d/src/gallium/drivers/radeonsi/
H A Dsi_state_draw.cpp943 * We don't know that for indirect drawing, so treat it as
950 * Assume indirect draws always use small instances.
1048 static bool num_instanced_prims_less_than(const struct pipe_draw_indirect_info *indirect,
1058 if (indirect) {
1059 return indirect->buffer ||
1060 (instance_count > 1 && indirect->count_from_stream_output);
1070 const struct pipe_draw_indirect_info *indirect,
1089 ((indirect && indirect->buffer) || instance_count > 1);
1091 num_instanced_prims_less_than<IS_DRAW_VERTEX_STATE>(indirect, pri
[all...]
/third_party/mesa3d/src/gallium/drivers/freedreno/ir3/
H A Dir3_const.h456 const struct pipe_draw_indirect_info *indirect,
492 /* for indirect draw, we need to copy VTXID_BASE from
493 * indirect-draw parameters buffer.. which is annoying
497 if (indirect && needs_vtxid_base) {
502 unsigned src_off = indirect->offset;
517 ctx->screen->mem_to_mem(ring, vertex_params_rsc, 0, indirect->buffer,
538 const struct pipe_draw_indirect_info *indirect,
548 ir3_emit_driver_params(v, ring, ctx, info, indirect, draw);
582 if (info->indirect) {
583 struct pipe_resource *indirect variable
[all...]
/third_party/mesa3d/src/gallium/auxiliary/gallivm/
H A Dlp_bld_tgsi_info.c103 * to figure out if a texture is considered indirect.
116 boolean indirect = FALSE; in analyse_tex() local
144 /* modifier would be in another not analyzed reg so just say indirect */ in analyse_tex()
146 indirect = TRUE; in analyse_tex()
151 indirect = TRUE; in analyse_tex()
160 indirect = TRUE; in analyse_tex()
178 indirect = TRUE; in analyse_tex()
185 if (indirect) { in analyse_tex()
198 * to figure out if a texture is considered indirect.
213 boolean indirect in analyse_sample() local
[all...]
/third_party/mesa3d/src/gallium/drivers/d3d12/
H A Dd3d12_draw.cpp676 const struct pipe_draw_indirect_info *indirect, in twoface_emulation()
681 d3d12_draw_vbo(&ctx->base, dinfo, 0, indirect, draw, 1); in twoface_emulation()
880 const struct pipe_draw_indirect_info *indirect, in d3d12_draw_vbo()
885 util_draw_multi(pctx, dinfo, drawid_offset, indirect, draws, num_draws); in d3d12_draw_vbo()
889 if (!indirect && (!draws[0].count || !dinfo->instance_count)) in d3d12_draw_vbo()
906 !indirect && in d3d12_draw_vbo()
912 util_primconvert_draw_vbo(ctx->primconvert, dinfo, drawid_offset, indirect, draws, num_draws); in d3d12_draw_vbo()
916 bool draw_auto = update_draw_auto(ctx, &indirect, &patched_indirect); in d3d12_draw_vbo()
917 bool indirect_with_sysvals = !draw_auto && update_draw_indirect_with_sysvals(ctx, dinfo, drawid_offset, &indirect, &patched_indirect); in d3d12_draw_vbo()
921 if (indirect) { in d3d12_draw_vbo()
673 twoface_emulation(struct d3d12_context *ctx, struct d3d12_rasterizer_state *rast, const struct pipe_draw_info *dinfo, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draw) twoface_emulation() argument
877 d3d12_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *dinfo, unsigned drawid_offset, const struct pipe_draw_indirect_info *indirect, const struct pipe_draw_start_count_bias *draws, unsigned num_draws) d3d12_draw_vbo() argument
1313 struct pipe_resource *indirect = info->indirect; d3d12_launch_grid() local
[all...]
/third_party/mesa3d/src/freedreno/ir3/
H A Dir3_sched.c154 /* Is this instruction a direct or indirect dependency for a kill?
442 struct ir3_instruction *indirect = ir->a0_users[i]; in check_instr() local
443 if (!indirect) in check_instr()
445 if (indirect->address->def != instr->dsts[0]) in check_instr()
447 ready = could_sched(ctx, indirect, instr); in check_instr()
459 struct ir3_instruction *indirect = ir->a1_users[i]; in check_instr() local
460 if (!indirect) in check_instr()
462 if (indirect->address->def != instr->dsts[0]) in check_instr()
464 ready = could_sched(ctx, indirect, instr); in check_instr()
925 struct ir3_instruction *indirect in split_addr() local
[all...]

Completed in 28 milliseconds

12345678910>>...12