diff --git a/src/amd/common/ac_rgp.h b/src/amd/common/ac_rgp.h index aef658a3940..205e06e9a4f 100644 --- a/src/amd/common/ac_rgp.h +++ b/src/amd/common/ac_rgp.h @@ -36,6 +36,7 @@ struct rgp_shader_data { uint32_t vgpr_count; uint32_t sgpr_count; uint32_t scratch_memory_size; + uint32_t lds_size; uint32_t wavefront_size; uint64_t base_address; uint32_t elf_symbol_offset; diff --git a/src/amd/common/ac_rgp_elf_object_pack.c b/src/amd/common/ac_rgp_elf_object_pack.c index c396866b094..f55fd6b1e50 100644 --- a/src/amd/common/ac_rgp_elf_object_pack.c +++ b/src/amd/common/ac_rgp_elf_object_pack.c @@ -132,7 +132,7 @@ ac_rgp_write_msgpack(FILE *output, ac_msgpack_add_fixstr(&msgpack, hw_stage_string[ record->shader_data[i].hw_stage]); - ac_msgpack_add_fixmap_op(&msgpack, 5); + ac_msgpack_add_fixmap_op(&msgpack, 6); ac_msgpack_add_fixstr(&msgpack, ".entry_point"); ac_msgpack_add_fixstr(&msgpack, hw_stage_symbol_string[ record->shader_data[i].hw_stage]); @@ -152,6 +152,9 @@ ac_rgp_write_msgpack(FILE *output, ac_msgpack_add_fixstr(&msgpack, ".wavefront_size"); ac_msgpack_add_uint(&msgpack, record->shader_data[i].wavefront_size); + + ac_msgpack_add_fixstr(&msgpack, ".lds_size"); + ac_msgpack_add_uint(&msgpack, record->shader_data[i].lds_size); } /* 5 */ diff --git a/src/amd/vulkan/layers/radv_sqtt_layer.c b/src/amd/vulkan/layers/radv_sqtt_layer.c index 77ea3665fb1..02b2f70b03f 100644 --- a/src/amd/vulkan/layers/radv_sqtt_layer.c +++ b/src/amd/vulkan/layers/radv_sqtt_layer.c @@ -1135,6 +1135,7 @@ radv_add_code_object(struct radv_device *device, struct radv_pipeline *pipeline) record->shader_data[i].vgpr_count = shader->config.num_vgprs; record->shader_data[i].sgpr_count = shader->config.num_sgprs; record->shader_data[i].scratch_memory_size = shader->config.scratch_bytes_per_wave; + record->shader_data[i].lds_size = 0; record->shader_data[i].wavefront_size = shader->info.wave_size; record->shader_data[i].base_address = va & 0xffffffffffff; record->shader_data[i].elf_symbol_offset = 0;