anv: Rename anv_shader_bin to anv_shader_internal

It is now only used by internal shaders to the rename make it more clear.

Suggested-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37749>
This commit is contained in:
José Roberto de Souza 2025-10-08 10:17:37 -07:00 committed by Marge Bot
parent 5c8d7c30f5
commit a21b925caa
12 changed files with 97 additions and 97 deletions

View file

@ -33,7 +33,7 @@ lookup_blorp_shader(struct blorp_batch *batch,
struct blorp_context *blorp = batch->blorp;
struct anv_device *device = blorp->driver_ctx;
struct anv_shader_bin *bin =
struct anv_shader_internal *bin =
anv_device_search_for_kernel(device, device->internal_cache,
key, key_size, NULL);
if (!bin)
@ -42,7 +42,7 @@ lookup_blorp_shader(struct blorp_batch *batch,
/* The cache already has a reference and it's not going anywhere so there
* is no need to hold a second reference.
*/
anv_shader_bin_unref(device, bin);
anv_shader_internal_unref(device, bin);
*kernel_out = bin->kernel.offset;
*(const struct brw_stage_prog_data **)prog_data_out = bin->prog_data;
@ -75,7 +75,7 @@ upload_blorp_shader(struct blorp_batch *batch, uint32_t stage,
.push_desc_info = &empty_push_desc_info,
};
struct anv_shader_bin *bin =
struct anv_shader_internal *bin =
anv_device_upload_kernel(device, device->internal_cache, &upload_params);
if (!bin)
@ -84,7 +84,7 @@ upload_blorp_shader(struct blorp_batch *batch, uint32_t stage,
/* The cache already has a reference and it's not going anywhere so there
* is no need to hold a second reference.
*/
anv_shader_bin_unref(device, bin);
anv_shader_internal_unref(device, bin);
if (INTEL_DEBUG(DEBUG_SHADERS_LINENO)) {
/* shader hash is zero in this context */

View file

@ -295,7 +295,7 @@ void genX(batch_emit_fast_color_dummy_blit)(struct anv_batch *batch,
struct anv_device *device);
#if GFX_VERx10 >= 300
#define anv_shader_bin_get_handler(bin, local_arg_offset) ({ \
#define anv_shader_internal_get_handler(bin, local_arg_offset) ({ \
assert((local_arg_offset) % 8 == 0); \
const struct brw_bs_prog_data *prog_data = \
brw_bs_prog_data_const(bin->prog_data); \
@ -341,7 +341,7 @@ void genX(batch_emit_fast_color_dummy_blit)(struct anv_batch *batch,
#endif
#if GFX_VERx10 >= 300
#define anv_shader_bin_get_bsr(bin, local_arg_offset) ({ \
#define anv_shader_internal_get_bsr(bin, local_arg_offset) ({ \
assert((local_arg_offset) % 8 == 0); \
const struct brw_bs_prog_data *prog_data = \
brw_bs_prog_data_const(bin->prog_data); \
@ -355,7 +355,7 @@ void genX(batch_emit_fast_color_dummy_blit)(struct anv_batch *batch,
}; \
})
#else
#define anv_shader_bin_get_bsr(bin, local_arg_offset) ({ \
#define anv_shader_internal_get_bsr(bin, local_arg_offset) ({ \
assert((local_arg_offset) % 8 == 0); \
const struct brw_bs_prog_data *prog_data = \
brw_bs_prog_data_const(bin->prog_data); \

View file

@ -56,7 +56,7 @@ check_sends(struct genisa_stats *stats, unsigned send_count)
assert(stats->send_messages == send_count);
}
static struct anv_shader_bin *
static struct anv_shader_internal *
compile_shader(struct anv_device *device,
enum anv_internal_kernel_name shader_name,
mesa_shader_stage stage,
@ -210,7 +210,7 @@ compile_shader(struct anv_device *device,
assert(prog_data.base.total_scratch == 0);
assert(program != NULL);
struct anv_shader_bin *kernel = NULL;
struct anv_shader_internal *kernel = NULL;
if (program == NULL)
goto exit;
@ -240,7 +240,7 @@ exit:
VkResult
anv_device_get_internal_shader(struct anv_device *device,
enum anv_internal_kernel_name name,
struct anv_shader_bin **out_bin)
struct anv_shader_internal **out_bin)
{
const struct {
struct {
@ -300,7 +300,7 @@ anv_device_get_internal_shader(struct anv_device *device,
},
};
struct anv_shader_bin *bin =
struct anv_shader_internal *bin =
p_atomic_read(&device->internal_kernels[name]);
if (bin != NULL) {
*out_bin = bin;
@ -333,7 +333,7 @@ anv_device_get_internal_shader(struct anv_device *device,
/* The cache already has a reference and it's not going anywhere so
* there is no need to hold a second reference.
*/
anv_shader_bin_unref(device, bin);
anv_shader_internal_unref(device, bin);
p_atomic_set(&device->internal_kernels[name], bin);

View file

@ -38,23 +38,23 @@
static bool
anv_shader_bin_serialize(struct vk_pipeline_cache_object *object,
struct blob *blob);
anv_shader_internal_serialize(struct vk_pipeline_cache_object *object,
struct blob *blob);
struct vk_pipeline_cache_object *
anv_shader_bin_deserialize(struct vk_pipeline_cache *cache,
const void *key_data, size_t key_size,
struct blob_reader *blob);
anv_shader_internal_deserialize(struct vk_pipeline_cache *cache,
const void *key_data, size_t key_size,
struct blob_reader *blob);
static void
anv_shader_bin_destroy(struct vk_device *_device,
struct vk_pipeline_cache_object *object)
anv_shader_internal_destroy(struct vk_device *_device,
struct vk_pipeline_cache_object *object)
{
struct anv_device *device =
container_of(_device, struct anv_device, vk);
struct anv_shader_bin *shader =
container_of(object, struct anv_shader_bin, base);
struct anv_shader_internal *shader =
container_of(object, struct anv_shader_internal, base);
for (uint32_t i = 0; i < shader->bind_map.embedded_sampler_count; i++)
anv_embedded_sampler_unref(device, shader->embedded_samplers[i]);
@ -65,31 +65,31 @@ anv_shader_bin_destroy(struct vk_device *_device,
vk_free(&device->vk.alloc, shader);
}
static const struct vk_pipeline_cache_object_ops anv_shader_bin_ops = {
.serialize = anv_shader_bin_serialize,
.deserialize = anv_shader_bin_deserialize,
.destroy = anv_shader_bin_destroy,
static const struct vk_pipeline_cache_object_ops anv_shader_internal_ops = {
.serialize = anv_shader_internal_serialize,
.deserialize = anv_shader_internal_deserialize,
.destroy = anv_shader_internal_destroy,
};
const struct vk_pipeline_cache_object_ops *const anv_cache_import_ops[2] = {
&anv_shader_bin_ops,
&anv_shader_internal_ops,
NULL
};
static struct anv_shader_bin *
anv_shader_bin_create(struct anv_device *device,
mesa_shader_stage stage,
const void *key_data, uint32_t key_size,
const void *kernel_data, uint32_t kernel_size,
const struct brw_stage_prog_data *prog_data_in,
uint32_t prog_data_size,
const struct genisa_stats *stats, uint32_t num_stats,
const nir_xfb_info *xfb_info_in,
const struct anv_pipeline_bind_map *bind_map,
const struct anv_push_descriptor_info *push_desc_info)
static struct anv_shader_internal *
anv_shader_internal_create(struct anv_device *device,
mesa_shader_stage stage,
const void *key_data, uint32_t key_size,
const void *kernel_data, uint32_t kernel_size,
const struct brw_stage_prog_data *prog_data_in,
uint32_t prog_data_size,
const struct genisa_stats *stats, uint32_t num_stats,
const nir_xfb_info *xfb_info_in,
const struct anv_pipeline_bind_map *bind_map,
const struct anv_push_descriptor_info *push_desc_info)
{
VK_MULTIALLOC(ma);
VK_MULTIALLOC_DECL(&ma, struct anv_shader_bin, shader, 1);
VK_MULTIALLOC_DECL(&ma, struct anv_shader_internal, shader, 1);
VK_MULTIALLOC_DECL_SIZE(&ma, void, obj_key_data, key_size);
VK_MULTIALLOC_DECL_SIZE(&ma, struct brw_stage_prog_data, prog_data,
prog_data_size);
@ -117,7 +117,7 @@ anv_shader_bin_create(struct anv_device *device,
memcpy(obj_key_data, key_data, key_size);
vk_pipeline_cache_object_init(&device->vk, &shader->base,
&anv_shader_bin_ops, obj_key_data, key_size);
&anv_shader_internal_ops, obj_key_data, key_size);
shader->stage = stage;
if(INTEL_DEBUG(DEBUG_SHOW_SHADER_STAGE))
@ -185,11 +185,11 @@ anv_shader_bin_create(struct anv_device *device,
}
static bool
anv_shader_bin_serialize(struct vk_pipeline_cache_object *object,
struct blob *blob)
anv_shader_internal_serialize(struct vk_pipeline_cache_object *object,
struct blob *blob)
{
struct anv_shader_bin *shader =
container_of(object, struct anv_shader_bin, base);
struct anv_shader_internal *shader =
container_of(object, struct anv_shader_internal, base);
blob_write_uint32(blob, shader->stage);
@ -254,9 +254,9 @@ anv_shader_bin_serialize(struct vk_pipeline_cache_object *object,
}
struct vk_pipeline_cache_object *
anv_shader_bin_deserialize(struct vk_pipeline_cache *cache,
const void *key_data, size_t key_size,
struct blob_reader *blob)
anv_shader_internal_deserialize(struct vk_pipeline_cache *cache,
const void *key_data, size_t key_size,
struct blob_reader *blob)
{
struct anv_device *device =
container_of(cache->base.device, struct anv_device, vk);
@ -319,13 +319,13 @@ anv_shader_bin_deserialize(struct vk_pipeline_cache *cache,
return NULL;
}
struct anv_shader_bin *shader =
anv_shader_bin_create(device, stage,
key_data, key_size,
kernel_data, kernel_size,
&prog_data.base, prog_data_size,
stats, num_stats, xfb_info, &bind_map,
&push_desc_info);
struct anv_shader_internal *shader =
anv_shader_internal_create(device, stage,
key_data, key_size,
kernel_data, kernel_size,
&prog_data.base, prog_data_size,
stats, num_stats, xfb_info, &bind_map,
&push_desc_info);
ralloc_free(mem_ctx);
@ -335,7 +335,7 @@ anv_shader_bin_deserialize(struct vk_pipeline_cache *cache,
return &shader->base;
}
struct anv_shader_bin *
struct anv_shader_internal *
anv_device_search_for_kernel(struct anv_device *device,
struct vk_pipeline_cache *cache,
const void *key_data, uint32_t key_size,
@ -348,7 +348,7 @@ anv_device_search_for_kernel(struct anv_device *device,
bool cache_hit = false;
struct vk_pipeline_cache_object *object =
vk_pipeline_cache_lookup_object(cache, key_data, key_size,
&anv_shader_bin_ops, &cache_hit);
&anv_shader_internal_ops, &cache_hit);
if (user_cache_hit != NULL) {
*user_cache_hit = object != NULL && cache_hit &&
cache != device->vk.mem_cache;
@ -357,10 +357,10 @@ anv_device_search_for_kernel(struct anv_device *device,
if (object == NULL)
return NULL;
return container_of(object, struct anv_shader_bin, base);
return container_of(object, struct anv_shader_internal, base);
}
struct anv_shader_bin *
struct anv_shader_internal *
anv_device_upload_kernel(struct anv_device *device,
struct vk_pipeline_cache *cache,
const struct anv_shader_upload_params *params)
@ -369,27 +369,27 @@ anv_device_upload_kernel(struct anv_device *device,
if (cache == NULL)
cache = device->vk.mem_cache;
struct anv_shader_bin *shader =
anv_shader_bin_create(device,
params->stage,
params->key_data,
params->key_size,
params->kernel_data,
params->kernel_size,
params->prog_data,
params->prog_data_size,
params->stats,
params->num_stats,
params->xfb_info,
params->bind_map,
params->push_desc_info);
struct anv_shader_internal *shader =
anv_shader_internal_create(device,
params->stage,
params->key_data,
params->key_size,
params->kernel_data,
params->kernel_size,
params->prog_data,
params->prog_data_size,
params->stats,
params->num_stats,
params->xfb_info,
params->bind_map,
params->push_desc_info);
if (shader == NULL)
return NULL;
struct vk_pipeline_cache_object *cached =
vk_pipeline_cache_add_object(cache, &shader->base);
return container_of(cached, struct anv_shader_bin, base);
return container_of(cached, struct anv_shader_internal, base);
}
#define SHA1_KEY_SIZE 20

View file

@ -1782,7 +1782,7 @@ struct anv_push_descriptor_info;
extern const struct vk_pipeline_cache_object_ops *const anv_cache_import_ops[2];
struct anv_shader_bin *
struct anv_shader_internal *
anv_device_search_for_kernel(struct anv_device *device,
struct vk_pipeline_cache *cache,
const void *key_data, uint32_t key_size,
@ -1790,7 +1790,7 @@ anv_device_search_for_kernel(struct anv_device *device,
struct anv_shader_upload_params;
struct anv_shader_bin *
struct anv_shader_internal *
anv_device_upload_kernel(struct anv_device *device,
struct vk_pipeline_cache *cache,
const struct anv_shader_upload_params *params);
@ -2553,16 +2553,16 @@ struct anv_device {
*/
struct anv_bo *ray_query_bo[2];
struct anv_shader_bin *rt_trampoline;
struct anv_shader_bin *rt_trivial_return;
struct anv_shader_bin *rt_null_ahs;
struct anv_shader_internal *rt_trampoline;
struct anv_shader_internal *rt_trivial_return;
struct anv_shader_internal *rt_null_ahs;
/** Draw generation shader
*
* Generates direct draw calls out of indirect parameters. Used to
* workaround slowness with indirect draw calls.
*/
struct anv_shader_bin *internal_kernels[ANV_INTERNAL_KERNEL_COUNT];
struct anv_shader_internal *internal_kernels[ANV_INTERNAL_KERNEL_COUNT];
const struct intel_l3_config *internal_kernels_l3_config;
pthread_mutex_t mutex;
@ -4291,7 +4291,7 @@ struct anv_simple_shader {
/* Where to emit the commands (can be different from cmd_buffer->batch) */
struct anv_batch *batch;
/* Shader to use */
struct anv_shader_bin *kernel;
struct anv_shader_internal *kernel;
/* Managed by the simpler shader helper*/
struct anv_state bt_state;
@ -5134,7 +5134,7 @@ anv_device_get_embedded_samplers(struct anv_device *device,
struct anv_embedded_sampler **out_samplers,
const struct anv_pipeline_bind_map *bind_map);
struct anv_shader_bin {
struct anv_shader_internal {
struct vk_pipeline_cache_object base;
mesa_shader_stage stage;
@ -5161,8 +5161,8 @@ struct anv_shader_bin {
struct anv_embedded_sampler **embedded_samplers;
};
static inline struct anv_shader_bin *
anv_shader_bin_ref(struct anv_shader_bin *shader)
static inline struct anv_shader_internal *
anv_shader_internal_ref(struct anv_shader_internal *shader)
{
vk_pipeline_cache_object_ref(&shader->base);
@ -5170,7 +5170,7 @@ anv_shader_bin_ref(struct anv_shader_bin *shader)
}
static inline void
anv_shader_bin_unref(struct anv_device *device, struct anv_shader_bin *shader)
anv_shader_internal_unref(struct anv_device *device, struct anv_shader_internal *shader)
{
vk_pipeline_cache_object_unref(&device->vk, &shader->base);
}
@ -6697,7 +6697,7 @@ VkResult anv_device_init_internal_kernels(struct anv_device *device);
void anv_device_finish_internal_kernels(struct anv_device *device);
VkResult anv_device_get_internal_shader(struct anv_device *device,
enum anv_internal_kernel_name name,
struct anv_shader_bin **out_bin);
struct anv_shader_internal **out_bin);
VkResult anv_device_init_astc_emu(struct anv_device *device);
void anv_device_finish_astc_emu(struct anv_device *device);

View file

@ -405,7 +405,7 @@ anv_device_init_rt_shaders(struct anv_device *device)
/* The cache already has a reference and it's not going anywhere so there
* is no need to hold a second reference.
*/
anv_shader_bin_unref(device, device->rt_trampoline);
anv_shader_internal_unref(device, device->rt_trampoline);
struct brw_rt_trivial_return {
char name[16];
@ -463,7 +463,7 @@ anv_device_init_rt_shaders(struct anv_device *device)
/* The cache already has a reference and it's not going anywhere so there
* is no need to hold a second reference.
*/
anv_shader_bin_unref(device, device->rt_trivial_return);
anv_shader_internal_unref(device, device->rt_trivial_return);
struct brw_rt_null_ahs {
char name[16];
@ -521,7 +521,7 @@ anv_device_init_rt_shaders(struct anv_device *device)
/* The cache already has a reference and it's not going anywhere so there
* is no need to hold a second reference.
*/
anv_shader_bin_unref(device, device->rt_null_ahs);
anv_shader_internal_unref(device, device->rt_null_ahs);
return VK_SUCCESS;
}

View file

@ -225,7 +225,7 @@ anv_device_utrace_flush_cmd_buffers(struct anv_queue *queue,
anv_genX(device->info, emit_so_memcpy_end)(&submit->memcpy_state);
} else {
struct anv_shader_bin *copy_kernel;
struct anv_shader_internal *copy_kernel;
VkResult ret =
anv_device_get_internal_shader(device,
ANV_INTERNAL_KERNEL_MEMCPY_COMPUTE,

View file

@ -926,10 +926,10 @@ cmd_buffer_emit_rt_dispatch_globals(struct anv_cmd_buffer *cmd_buffer,
.offset = rt->scratch.layout.ray_stack_start,
},
#if GFX_VERx10 == 300
.CallStackHandler = anv_shader_bin_get_handler(
.CallStackHandler = anv_shader_internal_get_handler(
cmd_buffer->device->rt_trivial_return, 0),
#else
.CallStackHandler = anv_shader_bin_get_bsr(
.CallStackHandler = anv_shader_internal_get_bsr(
cmd_buffer->device->rt_trivial_return, 0),
#endif
.AsyncRTStackSize = rt->scratch.layout.ray_stack_stride / 64,
@ -994,10 +994,10 @@ cmd_buffer_emit_rt_dispatch_globals_indirect(struct anv_cmd_buffer *cmd_buffer,
.offset = rt->scratch.layout.ray_stack_start,
},
#if GFX_VERx10 == 300
.CallStackHandler = anv_shader_bin_get_handler(
.CallStackHandler = anv_shader_internal_get_handler(
cmd_buffer->device->rt_trivial_return, 0),
#else
.CallStackHandler = anv_shader_bin_get_bsr(
.CallStackHandler = anv_shader_internal_get_bsr(
cmd_buffer->device->rt_trivial_return, 0),
#endif
.AsyncRTStackSize = rt->scratch.layout.ray_stack_stride / 64,

View file

@ -173,7 +173,7 @@ genX(cmd_buffer_emit_indirect_generated_draws_init)(struct anv_cmd_buffer *cmd_b
trace_intel_end_generate_draws(&cmd_buffer->trace);
struct anv_shader_bin *gen_kernel;
struct anv_shader_internal *gen_kernel;
VkResult ret =
anv_device_get_internal_shader(
cmd_buffer->device,
@ -509,7 +509,7 @@ genX(cmd_buffer_emit_indirect_generated_draws_inring)(struct anv_cmd_buffer *cmd
*/
struct anv_address gen_addr = anv_batch_current_address(&cmd_buffer->batch);
struct anv_shader_bin *gen_kernel;
struct anv_shader_internal *gen_kernel;
VkResult ret =
anv_device_get_internal_shader(
cmd_buffer->device,

View file

@ -1911,7 +1911,7 @@ copy_query_results_with_shader(struct anv_cmd_buffer *cmd_buffer,
genX(cmd_buffer_apply_pipe_flushes)(cmd_buffer);
}
struct anv_shader_bin *copy_kernel;
struct anv_shader_internal *copy_kernel;
VkResult ret =
anv_device_get_internal_shader(
cmd_buffer->device,

View file

@ -1397,7 +1397,7 @@ genX(write_rt_shader_group)(struct anv_device *device,
}
}
if (!anyhit_seen)
sh.AnyHit = anv_shader_bin_get_bsr(device->rt_null_ahs, 24);
sh.AnyHit = anv_shader_internal_get_bsr(device->rt_null_ahs, 24);
GENX(RT_TRIANGLES_SBT_HANDLE_pack)(NULL, output, &sh);
break;
}

View file

@ -402,7 +402,7 @@ genX(emit_simpler_shader_init_compute)(struct anv_simple_shader *state)
state->cmd_buffer->state.current_pipeline == GPGPU);
#if GFX_VERx10 >= 125
struct anv_shader_bin *cs_bin = state->kernel;
struct anv_shader_internal *cs_bin = state->kernel;
const struct brw_cs_prog_data *prog_data =
(const struct brw_cs_prog_data *) cs_bin->prog_data;
/* Currently our simple shaders are simple enough that they never spill. */