Home
last modified time | relevance | path

Searched full:blorp (Results 1 – 25 of 156) sorted by relevance

1234567

/aosp_15_r20/external/mesa3d/src/intel/blorp/
H A Dblorp_elk.c14 blorp_nir_options_elk(struct blorp_context *blorp, in blorp_nir_options_elk() argument
17 const struct elk_compiler *compiler = blorp->compiler->elk; in blorp_nir_options_elk()
22 blorp_compile_fs_elk(struct blorp_context *blorp, void *mem_ctx, in blorp_compile_fs_elk() argument
27 const struct elk_compiler *compiler = blorp->compiler->elk; in blorp_compile_fs_elk()
54 .log_data = blorp->driver_ctx, in blorp_compile_fs_elk()
74 blorp_compile_vs_elk(struct blorp_context *blorp, void *mem_ctx, in blorp_compile_vs_elk() argument
77 const struct elk_compiler *compiler = blorp->compiler->elk; in blorp_compile_vs_elk()
98 .log_data = blorp->driver_ctx, in blorp_compile_vs_elk()
127 blorp_compile_cs_elk(struct blorp_context *blorp, void *mem_ctx, in blorp_compile_cs_elk() argument
130 const struct elk_compiler *compiler = blorp->compiler->elk; in blorp_compile_cs_elk()
[all …]
H A Dblorp_clear.c56 batch->blorp->isl_dev->info->ver < 20; in blorp_params_get_clear_kernel_fs()
57 struct blorp_context *blorp = batch->blorp; in blorp_params_get_clear_kernel_fs() local
70 if (blorp->lookup_shader(batch, &blorp_key, sizeof(blorp_key), in blorp_params_get_clear_kernel_fs()
77 blorp_nir_init_shader(&b, blorp, mem_ctx, MESA_SHADER_FRAGMENT, in blorp_params_get_clear_kernel_fs()
98 blorp_compile_fs(blorp, mem_ctx, b.shader, multisample_fbo, use_replicated_data); in blorp_params_get_clear_kernel_fs()
101 blorp->upload_shader(batch, MESA_SHADER_FRAGMENT, in blorp_params_get_clear_kernel_fs()
116 struct blorp_context *blorp = batch->blorp; in blorp_params_get_clear_kernel_cs() local
129 if (blorp->lookup_shader(batch, &blorp_key, sizeof(blorp_key), in blorp_params_get_clear_kernel_cs()
136 blorp_nir_init_shader(&b, blorp, mem_ctx, MESA_SHADER_COMPUTE, in blorp_params_get_clear_kernel_cs()
137 "BLORP-gpgpu-clear"); in blorp_params_get_clear_kernel_cs()
[all …]
H A Dblorp_brw.c13 blorp_nir_options_brw(struct blorp_context *blorp, in blorp_nir_options_brw() argument
16 const struct brw_compiler *compiler = blorp->compiler->brw; in blorp_nir_options_brw()
21 blorp_compile_fs_brw(struct blorp_context *blorp, void *mem_ctx, in blorp_compile_fs_brw() argument
26 const struct brw_compiler *compiler = blorp->compiler->brw; in blorp_compile_fs_brw()
46 .log_data = blorp->driver_ctx, in blorp_compile_fs_brw()
66 blorp_compile_vs_brw(struct blorp_context *blorp, void *mem_ctx, in blorp_compile_vs_brw() argument
69 const struct brw_compiler *compiler = blorp->compiler->brw; in blorp_compile_vs_brw()
90 .log_data = blorp->driver_ctx, in blorp_compile_vs_brw()
119 blorp_compile_cs_brw(struct blorp_context *blorp, void *mem_ctx, in blorp_compile_cs_brw() argument
122 const struct brw_compiler *compiler = blorp->compiler->brw; in blorp_compile_cs_brw()
[all …]
H A Dblorp.c84 [BLORP_SHADER_TYPE_COPY] = "BLORP-copy", in blorp_shader_type_to_name()
85 [BLORP_SHADER_TYPE_BLIT] = "BLORP-blit", in blorp_shader_type_to_name()
86 [BLORP_SHADER_TYPE_CLEAR] = "BLORP-clear", in blorp_shader_type_to_name()
87 [BLORP_SHADER_TYPE_MCS_PARTIAL_RESOLVE] = "BLORP-mcs-partial-resolve", in blorp_shader_type_to_name()
88 [BLORP_SHADER_TYPE_LAYER_OFFSET_VS] = "BLORP-layer-offset-vs", in blorp_shader_type_to_name()
89 [BLORP_SHADER_TYPE_GFX4_SF] = "BLORP-gfx4-sf", in blorp_shader_type_to_name()
109 blorp_init(struct blorp_context *blorp, void *driver_ctx, in blorp_init() argument
112 memset(blorp, 0, sizeof(*blorp)); in blorp_init()
114 blorp->driver_ctx = driver_ctx; in blorp_init()
115 blorp->isl_dev = isl_dev; in blorp_init()
[all …]
H A Dblorp_priv.h32 #include "blorp.h"
38 void blorp_init(struct blorp_context *blorp, void *driver_ctx,
45 const nir_shader_compiler_options *(*nir_options)(struct blorp_context *blorp,
48 struct blorp_program (*compile_fs)(struct blorp_context *blorp, void *mem_ctx,
52 struct blorp_program (*compile_vs)(struct blorp_context *blorp, void *mem_ctx,
55 struct blorp_program (*compile_cs)(struct blorp_context *blorp, void *mem_ctx,
66 * Binding table indices used by BLORP.
290 .name = "blorp", \
422 * \name BLORP internals
443 blorp_compile_fs(struct blorp_context *blorp, void *mem_ctx, in blorp_compile_fs() argument
[all …]
H A Dblorp.h103 void blorp_init_brw(struct blorp_context *blorp, void *driver_ctx,
107 void blorp_init_elk(struct blorp_context *blorp, void *driver_ctx,
111 void blorp_finish(struct blorp_context *blorp);
116 * This flag indicates that blorp should *not* re-emit the depth and
123 /* This flag indicates that the blorp call should be predicated. */
126 /* This flag indicates that blorp should use a compute program for the
139 struct blorp_context *blorp; member
144 void blorp_batch_init(struct blorp_context *blorp, struct blorp_batch *batch,
266 blorp_clear_supports_compute(struct blorp_context *blorp,
271 blorp_clear_supports_blitter(struct blorp_context *blorp,
[all …]
H A Dblorp_blit.c938 /* Blorp likes to assume that colors are vec4s */ in bit_cast_color()
1019 * Generator for WM programs used in BLORP blits.
1158 blorp_build_nir_shader(struct blorp_context *blorp, in blorp_build_nir_shader() argument
1162 const struct intel_device_info *devinfo = blorp->isl_dev->info; in blorp_build_nir_shader()
1198 blorp_nir_init_shader(&b, blorp, mem_ctx, stage, NULL); in blorp_build_nir_shader()
1396 unreachable("Invalid blorp filter"); in blorp_build_nir_shader()
1502 struct blorp_context *blorp = batch->blorp; in blorp_get_blit_kernel_fs() local
1504 if (blorp->lookup_shader(batch, key, sizeof(*key), in blorp_get_blit_kernel_fs()
1510 nir_shader *nir = blorp_build_nir_shader(blorp, batch, mem_ctx, key); in blorp_get_blit_kernel_fs()
1517 blorp_compile_fs(blorp, mem_ctx, nir, multisample_fbo, false); in blorp_get_blit_kernel_fs()
[all …]
H A Dblorp_genX_exec_brw.h36 * This file provides the blorp pipeline setup and execution functionality.
40 * blorp_exec(struct blorp_context *blorp, void *batch_data,
279 intel_get_urb_config(batch->blorp->compiler->brw->devinfo, in emit_urb_config()
296 if (batch->blorp->config.use_mesh_shading) { in emit_urb_config()
391 GFX_VER < 10 ? batch->blorp->isl_dev->ss.clear_value_size : 4 * 4; in blorp_emit_input_varying_data()
599 if (GFX_VER != 9 && batch->blorp->config.use_cached_dynamic_states) { in blorp_emit_cc_viewport()
603 vp.MinimumDepth = batch->blorp->config.use_unrestricted_depth_range ? in blorp_emit_cc_viewport()
605 vp.MaximumDepth = batch->blorp->config.use_unrestricted_depth_range ? in blorp_emit_cc_viewport()
646 uint32_t offset = batch->blorp->config.use_cached_dynamic_states ? in blorp_emit_sampler_state_ps()
680 batch->blorp->isl_dev->info->max_vs_threads - 1; in blorp_emit_vs_config()
[all …]
H A Dblorp_genX_exec_elk.h40 * This file provides the blorp pipeline setup and execution functionality.
44 * blorp_exec(struct blorp_context *blorp, void *batch_data,
275 intel_get_urb_config(batch->blorp->compiler->elk->devinfo, in emit_urb_config()
403 const unsigned clear_color_size = batch->blorp->isl_dev->ss.clear_value_size; in blorp_emit_input_varying_data()
481 bool need_ndc = batch->blorp->compiler->elk->devinfo->ver <= 5; in blorp_emit_vertex_elements()
657 vp.MinimumDepth = batch->blorp->config.use_unrestricted_depth_range ? in blorp_emit_cc_viewport()
659 vp.MaximumDepth = batch->blorp->config.use_unrestricted_depth_range ? in blorp_emit_cc_viewport()
751 batch->blorp->isl_dev->info->max_vs_threads - 1; in blorp_emit_vs_config()
876 const struct intel_device_info *devinfo = batch->blorp->compiler->elk->devinfo; in blorp_emit_ps_config()
974 const struct intel_device_info *devinfo = batch->blorp->compiler->elk->devinfo; in blorp_emit_ps_config()
[all …]
H A Dblorp_nir_builder.h29 struct blorp_context *blorp, in blorp_nir_init_shader() argument
35 blorp->compiler->nir_options(blorp, stage); in blorp_nir_init_shader()
66 /* Blorp only has one texture and it's bound at unit 0 */ in blorp_nir_txf_ms_mcs()
H A Dmeson.build5 'blorp.c',
6 'blorp.h',
24 'blorp',
/aosp_15_r20/external/mesa3d/src/gallium/drivers/iris/
H A Diris_blorp.c30 * GenX specific code for working with BLORP (blitting, resolves, clears
32 * implement the BLORP API.
50 #include "blorp/blorp_genX_exec_brw.h"
52 #include "blorp/blorp_genX_exec_elk.h"
150 struct iris_context *ice = blorp_batch->blorp->driver_ctx; in blorp_alloc_dynamic_state()
176 struct iris_context *ice = blorp_batch->blorp->driver_ctx; in blorp_alloc_binding_table()
215 struct iris_context *ice = blorp_batch->blorp->driver_ctx; in blorp_alloc_vertex_buffer()
245 struct iris_context *ice = blorp_batch->blorp->driver_ctx; in blorp_vf_invalidate_for_vb_48b_transitions()
261 "workaround: VF cache 32-bit key [blorp]", in blorp_vf_invalidate_for_vb_48b_transitions()
309 struct iris_context *ice = blorp_batch->blorp->driver_ctx; in iris_blorp_exec_render()
[all …]
H A Diris_program_cache.c120 /* Blorp shader must have a mem_ctx. */ in iris_create_shader_variant()
127 /* Shaders that are neither blorp nor tessellation control must not have in iris_create_shader_variant()
221 struct blorp_context *blorp = blorp_batch->blorp; in iris_blorp_lookup_shader() local
222 struct iris_context *ice = blorp->driver_ctx; in iris_blorp_lookup_shader()
250 struct blorp_context *blorp = blorp_batch->blorp; in iris_blorp_upload_shader() local
251 struct iris_context *ice = blorp->driver_ctx; in iris_blorp_upload_shader()
H A Diris_blit.c32 #include "intel/blorp/blorp.h"
187 * blorp blit operation slightly. What we want to do here is detect the in apply_blit_scissor()
409 iris_copy_region(&ice->blorp, &ice->batches[IRIS_BATCH_BLITTER], in iris_blit()
465 blorp_batch_init(&ice->blorp, &blorp_batch, batch, blorp_flags); in iris_blit()
644 iris_copy_region(struct blorp_context *blorp, in iris_copy_region() argument
654 struct iris_context *ice = blorp->driver_ctx; in iris_copy_region()
680 blorp_batch_init(blorp, &blorp_batch, batch, blorp_flags); in iris_copy_region()
762 iris_copy_region(&ice->blorp, batch, p_dst, dst_level, dstx, dsty, dstz, in iris_resource_copy_region()
771 iris_copy_region(&ice->blorp, batch, &s_dst_res->base.b, dst_level, dstx, in iris_resource_copy_region()
/aosp_15_r20/external/mesa3d/src/intel/vulkan_hasvk/
H A Danv_blorp.c31 struct blorp_context *blorp = batch->blorp; in lookup_blorp_shader() local
32 struct anv_device *device = blorp->driver_ctx; in lookup_blorp_shader()
59 struct blorp_context *blorp = batch->blorp; in upload_blorp_shader() local
60 struct anv_device *device = blorp->driver_ctx; in upload_blorp_shader()
92 blorp_init_elk(&device->blorp, device, &device->isl_dev, in anv_device_init_blorp()
94 device->blorp.lookup_shader = lookup_blorp_shader; in anv_device_init_blorp()
95 device->blorp.upload_shader = upload_blorp_shader; in anv_device_init_blorp()
98 device->blorp.exec = gfx7_blorp_exec; in anv_device_init_blorp()
101 device->blorp.exec = gfx75_blorp_exec; in anv_device_init_blorp()
104 device->blorp.exec = gfx8_blorp_exec; in anv_device_init_blorp()
[all …]
H A DgenX_blorp_exec.c35 #include "blorp/blorp_genX_exec_elk.h"
228 * really matter for blorp because we never call apply_pipe_flushes after in blorp_vf_invalidate_for_vb_48b_transitions()
283 /* BLORP doesn't do anything fancy with depth such as discards, so we want in blorp_exec_on_render()
290 /* Calculate state that does not get touched by blorp. in blorp_exec_on_render()
348 /* The MI_LOAD/STORE_REGISTER_MEM commands which BLORP uses to implement in genX()
356 "before blorp prep fast clear"); in genX()
/aosp_15_r20/external/mesa3d/src/intel/vulkan/
H A Danv_blorp.c32 struct blorp_context *blorp = batch->blorp; in lookup_blorp_shader() local
33 struct anv_device *device = blorp->driver_ctx; in lookup_blorp_shader()
60 struct blorp_context *blorp = batch->blorp; in upload_blorp_shader() local
61 struct anv_device *device = blorp->driver_ctx; in upload_blorp_shader()
101 device->blorp.dynamic_states[name] = in upload_dynamic_state()
116 blorp_init_brw(&device->blorp.context, device, &device->isl_dev, in anv_device_init_blorp()
118 device->blorp.context.lookup_shader = lookup_blorp_shader; in anv_device_init_blorp()
119 device->blorp.context.upload_shader = upload_blorp_shader; in anv_device_init_blorp()
120 device->blorp.context.enable_tbimr = device->physical->instance->enable_tbimr; in anv_device_init_blorp()
121 device->blorp.context.exec = anv_genX(device->info, blorp_exec); in anv_device_init_blorp()
[all …]
H A DgenX_blorp_exec.c35 #include "blorp/blorp_genX_exec_brw.h"
124 return cmd_buffer->device->blorp.dynamic_states[name].offset; in blorp_get_dynamic_state()
239 * really matter for blorp because we never call apply_pipe_flushes after in blorp_vf_invalidate_for_vb_48b_transitions()
313 "before blorp BTI change"); in blorp_exec_on_render()
318 /* Check if blorp ds state matches ours. */ in blorp_exec_on_render()
328 /* Add the stall that will flush prior to the blorp operation by in blorp_exec_on_render()
361 /* BLORP doesn't do anything fancy with depth such as discards, so we want in blorp_exec_on_render()
381 "after blorp BTI change"); in blorp_exec_on_render()
385 /* Flag all the instructions emitted by BLORP. */ in blorp_exec_on_render()
418 if (batch->blorp->config.use_mesh_shading) { in blorp_exec_on_render()
[all …]
/aosp_15_r20/external/mesa3d/src/gallium/drivers/crocus/
H A Dcrocus_blorp.c30 * GenX specific code for working with BLORP (blitting, resolves, clears
32 * implement the BLORP API.
46 #include "blorp/blorp_genX_exec_elk.h"
294 struct crocus_context *ice = blorp_batch->blorp->driver_ctx; in crocus_blorp_exec()
301 * data with different formats, which blorp does for stencil and depth in crocus_blorp_exec()
372 /* BLORP disabled tessellation, that's fine for the next draw */ in crocus_blorp_exec()
382 /* BLORP disabled geometry shaders, that's fine for the next draw */ in crocus_blorp_exec()
447 blorp_init_elk(&ice->blorp, ice, &screen->isl_dev, screen->compiler, NULL); in genX()
448 ice->blorp.lookup_shader = crocus_blorp_lookup_shader; in genX()
449 ice->blorp.upload_shader = crocus_blorp_upload_shader; in genX()
[all …]
H A Dcrocus_blit.c32 #include "intel/blorp/blorp.h"
226 * blorp blit operation slightly. What we want to do here is detect the in apply_blit_scissor()
528 blorp_batch_init(&ice->blorp, &blorp_batch, batch, blorp_flags); in crocus_blit()
567 /* on SNB blorp will use render target instead of depth in crocus_blit()
669 crocus_copy_region(struct blorp_context *blorp, in crocus_copy_region() argument
679 struct crocus_context *ice = blorp->driver_ctx; in crocus_copy_region()
716 blorp_batch_init(&ice->blorp, &blorp_batch, batch, 0); in crocus_copy_region()
735 blorp_batch_init(&ice->blorp, &blorp_batch, batch, 0); in crocus_copy_region()
780 crocus_copy_region(&ice->blorp, batch, p_dst, dst_level, dstx, dsty, dstz, in crocus_resource_copy_region()
790 crocus_copy_region(&ice->blorp, batch, &s_dst_res->base.b, dst_level, dstx, in crocus_resource_copy_region()
H A Dcrocus_program_cache.c243 struct blorp_context *blorp = blorp_batch->blorp; in crocus_blorp_lookup_shader() local
244 struct crocus_context *ice = blorp->driver_ctx; in crocus_blorp_lookup_shader()
265 struct blorp_context *blorp = blorp_batch->blorp; in crocus_blorp_upload_shader() local
266 struct crocus_context *ice = blorp->driver_ctx; in crocus_blorp_upload_shader()
319 return "BLORP"; in cache_name()
/aosp_15_r20/external/mesa3d/docs/relnotes/
H A D21.3.0.rst1943 - intel/blorp: Use nir_texop_txl
1949 - anv/blorp: Drop some can_ycbcr checks
1950 - anv/blorp: Use the isl_surf for computing level_width/height in anv_image_ccs_op
2199 - intel/blorp: Move most of BLORP_CREATE_NIR_INPUT into a function
2200 - intel/blorp: Add compute support to BLORP_CREATE_NIR_INPUT
2201 - intel/blorp: Add shader_pipeline to brw_blorp_base_key
2202 - intel/blorp: Add brw_blorp_init_cs_prog_key
2203 - intel/compiler: Use INTEL_DEBUG=blorp to dump blorp compute shaders
2204 - intel/blorp: Add subgroup_id input for compute programs
2205 - intel/blorp: Add blorp_compile_cs
[all …]
H A D24.1.0.rst97 - blorp: avoid dirtying push constants in 3D
949 - intel/blorp: Don't require specific prog_data type in callback
950 - intel/blorp: Remove brw\_ prefix when not applicable
951 - intel/blorp: Simplify blorp_compile_fs() interface
952 - intel/blorp: Simplify blorp_compile_cs() interface
953 - intel/blorp: Use a struct to return blorp_compile_*() results
954 - intel/blorp: Remove outdated reference in comment
955 - intel/blorp: Move brw_blorp_get_urb_length helper
956 - intel/blorp: Avoid brw types in blorp_priv.h
957 - intel/blorp: Move brw_compiler.h include to where is needed
[all …]
H A D19.3.0.rst1763 - blorp: Memset surface info to zero when initializing it
1764 - intel/blorp: Expose surf_retile_w_to_y internally
1765 - intel/blorp: Expose surf_fake_interleaved_msaa internally
1766 - intel/blorp: Use wide formats for nicely aligned stencil clears
1795 - intel/blorp: Use surf instead of aux_surf for image dimensions
2098 - iris: Skip double-disabling TCS/TES/GS after BLORP operations
2618 - anv/blorp: Use BLORP_BATCH_NO_UPDATE_CLEAR_COLOR
2627 - intel/blorp: Halve the Gen12 fast-clear/resolve rectangle
2628 - intel/blorp: Don't assert aux slices match main slices
2636 - intel/blorp: Disable depth testing for slow depth clears
[all …]
H A D17.2.5.rst48 - cherry-ignore: i965: fix blorp stage_prog_data->param leak
79 - i965/blorp: Use blorp_to_isl_format for src_isl_format in
81 - i965/blorp: Use more temporary isl_format variables

1234567