Home
last modified time | relevance | path

Searched refs:xfb_info (Results 1 – 22 of 22) sorted by relevance

/third_party/mesa3d/src/compiler/glsl/
Dgl_nir_link_xfb.c69 nir_xfb_info *xfb_info = NULL; in gl_nir_link_assign_xfb_resources() local
78 xfb_info = sh->Program->nir->xfb_info; in gl_nir_link_assign_xfb_resources()
87 if (!xfb_info) { in gl_nir_link_assign_xfb_resources()
96 prog->TransformFeedback.BufferStride[buf] = xfb_info->buffers[buf].stride; in gl_nir_link_assign_xfb_resources()
105 xfb_info->output_count); in gl_nir_link_assign_xfb_resources()
106 linked_xfb->NumOutputs = xfb_info->output_count; in gl_nir_link_assign_xfb_resources()
117 xfb_info->outputs[0].buffer : 0; in gl_nir_link_assign_xfb_resources()
166 for (unsigned i = 0; i < xfb_info->output_count; i++) { in gl_nir_link_assign_xfb_resources()
167 nir_xfb_output_info *xfb_output = &xfb_info->outputs[i]; in gl_nir_link_assign_xfb_resources()
175 output->StreamId = xfb_info->buffer_to_stream[xfb_output->buffer]; in gl_nir_link_assign_xfb_resources()
[all …]
Dgl_nir_link_varyings.c3202 sh->Program->nir->xfb_info = in gl_nir_link_varyings()
/third_party/mesa3d/src/intel/vulkan/
Danv_pipeline_cache.c87 VK_MULTIALLOC_DECL_SIZE(&ma, nir_xfb_info, xfb_info, in anv_shader_bin_create()
164 *xfb_info = *xfb_info_in; in anv_shader_bin_create()
165 typed_memcpy(xfb_info->outputs, xfb_info_in->outputs, in anv_shader_bin_create()
167 shader->xfb_info = xfb_info; in anv_shader_bin_create()
169 shader->xfb_info = NULL; in anv_shader_bin_create()
205 if (shader->xfb_info) { in anv_shader_bin_serialize()
207 nir_xfb_info_size(shader->xfb_info->output_count); in anv_shader_bin_serialize()
209 blob_write_bytes(blob, shader->xfb_info, xfb_info_size); in anv_shader_bin_serialize()
263 const nir_xfb_info *xfb_info = NULL; in anv_shader_bin_deserialize() local
266 xfb_info = blob_read_bytes(blob, xfb_size); in anv_shader_bin_deserialize()
[all …]
DgenX_pipeline.c1271 nir_xfb_info *xfb_info; in emit_3dstate_streamout() local
1273 xfb_info = pipeline->shaders[MESA_SHADER_GEOMETRY]->xfb_info; in emit_3dstate_streamout()
1275 xfb_info = pipeline->shaders[MESA_SHADER_TESS_EVAL]->xfb_info; in emit_3dstate_streamout()
1277 xfb_info = pipeline->shaders[MESA_SHADER_VERTEX]->xfb_info; in emit_3dstate_streamout()
1279 if (xfb_info) { in emit_3dstate_streamout()
1286 for (unsigned i = 0; i < xfb_info->output_count; i++) { in emit_3dstate_streamout()
1287 const nir_xfb_output_info *output = &xfb_info->outputs[i]; in emit_3dstate_streamout()
1289 unsigned stream = xfb_info->buffer_to_stream[buffer]; in emit_3dstate_streamout()
1356 if (xfb_info->buffers_written & (1 << b)) in emit_3dstate_streamout()
1357 sbs[xfb_info->buffer_to_stream[b]] |= 1 << b; in emit_3dstate_streamout()
[all …]
Danv_private.h1145 const struct nir_xfb_info *xfb_info,
3034 struct nir_xfb_info *xfb_info; member
3047 const struct nir_xfb_info *xfb_info,
Danv_pipeline.c1729 stages[s].nir->xfb_info, in anv_graphics_pipeline_compile()
/third_party/mesa3d/src/gallium/frontends/lavapipe/
Dlvp_pipeline.c583 nir_xfb_info *xfb_info = pipeline->pipeline_nir[stage]->xfb_info; in lvp_pipeline_xfb_init() local
584 if (xfb_info) { in lvp_pipeline_xfb_init()
595 pipeline->stream_output.num_outputs = xfb_info->output_count; in lvp_pipeline_xfb_init()
597 if (xfb_info->buffers_written & (1 << i)) { in lvp_pipeline_xfb_init()
598 pipeline->stream_output.stride[i] = xfb_info->buffers[i].stride / 4; in lvp_pipeline_xfb_init()
601 for (unsigned i = 0; i < xfb_info->output_count; i++) { in lvp_pipeline_xfb_init()
602 pipeline->stream_output.output[i].output_buffer = xfb_info->outputs[i].buffer; in lvp_pipeline_xfb_init()
603 pipeline->stream_output.output[i].dst_offset = xfb_info->outputs[i].offset / 4; in lvp_pipeline_xfb_init()
604 … pipeline->stream_output.output[i].register_index = output_mapping[xfb_info->outputs[i].location]; in lvp_pipeline_xfb_init()
605 …pipeline->stream_output.output[i].num_components = util_bitcount(xfb_info->outputs[i].component_ma… in lvp_pipeline_xfb_init()
[all …]
/third_party/mesa3d/src/compiler/nir/
Dnir_clone.c790 if (s->xfb_info) { in nir_shader_clone()
791 size_t size = nir_xfb_info_size(s->xfb_info->output_count); in nir_shader_clone()
792 ns->xfb_info = ralloc_size(ns, size); in nir_shader_clone()
793 memcpy(ns->xfb_info, s->xfb_info, size); in nir_shader_clone()
Dnir_sweep.c166 ralloc_steal(nir, nir->xfb_info); in nir_sweep()
Dnir_gather_xfb_info.c287 ralloc_free(shader->xfb_info); in nir_gather_xfb_info_with_varyings()
288 shader->xfb_info = xfb; in nir_gather_xfb_info_with_varyings()
Dnir_validate.c1803 if (shader->xfb_info != NULL) { in nir_validate_shader()
1810 validate_assert(&state, shader->xfb_info->buffers_written != 0); in nir_validate_shader()
1811 validate_assert(&state, shader->xfb_info->streams_written != 0); in nir_validate_shader()
1812 validate_assert(&state, shader->xfb_info->output_count > 0); in nir_validate_shader()
Dnir_lower_io.c3010 nir->info.xfb_stride[i] = nir->xfb_info->buffers[i].stride / 4; in nir_io_add_intrinsic_xfb_info()
3040 for (unsigned i = 0; i < nir->xfb_info->output_count; i++) { in nir_io_add_intrinsic_xfb_info()
3041 nir_xfb_output_info *out = &nir->xfb_info->outputs[i]; in nir_io_add_intrinsic_xfb_info()
3097 nir->xfb_info == NULL; in nir_lower_io_passes()
3130 if (nir->xfb_info) in nir_lower_io_passes()
Dnir_serialize.c2146 write_xfb_info(&ctx, nir->xfb_info); in nir_serialize()
2203 ctx.nir->xfb_info = read_xfb_info(&ctx); in nir_deserialize()
Dnir.h3734 struct nir_xfb_info *xfb_info; member
/third_party/mesa3d/src/gallium/drivers/panfrost/
Dpan_assemble.c50 if (s->xfb_info && !s->info.internal) { in panfrost_shader_compile()
/third_party/mesa3d/src/freedreno/vulkan/
Dtu_shader.c682 if (!nir->xfb_info) in tu_gather_xfb_info()
685 nir_xfb_info *xfb = nir->xfb_info; in tu_gather_xfb_info()
/third_party/mesa3d/src/amd/vulkan/
Dradv_shader_info.c404 if (!nir->xfb_info) in gather_xfb_info()
407 const nir_xfb_info *xfb = nir->xfb_info; in gather_xfb_info()
Dradv_pipeline.c3053 stages[last_vgt_api_stage].nir->xfb_info; in radv_link_shaders()
3503 stages[last_xfb_stage].nir->xfb_info; in radv_fill_shader_info_ngg()
/third_party/mesa3d/src/panfrost/midgard/
Dmidgard_compile.c366 if (nir->xfb_info != NULL && nir->info.has_transform_feedback_varyings) { in optimise_nir()
/third_party/mesa3d/src/panfrost/bifrost/
Dbifrost_compile.c4921 if (nir->xfb_info != NULL && nir->info.has_transform_feedback_varyings) { in bi_finalize_nir()
/third_party/mesa3d/docs/relnotes/
D22.2.0.rst2852 - glsl/nir: Populate nir_shader::xfb_info after linking varyings
2854 - glsl/nir: Stash the xfb_info in the nir_shader when linking XFB
2855 - st,nir: Use nir_shader::xfb_info in nir_lower_io_passes
D19.0.0.rst1379 - anv: Add pipeline cache support for xfb_info