radeonsi: make radeon_shader_reloc name string fixed-sized
This will simplify implementations of binary shaders. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
parent
1fe73d55e3
commit
50ac2612d0
|
@ -97,7 +97,7 @@ struct r600_common_context;
|
|||
struct r600_perfcounters;
|
||||
|
||||
struct radeon_shader_reloc {
|
||||
char *name;
|
||||
char name[32];
|
||||
uint64_t offset;
|
||||
};
|
||||
|
||||
|
|
|
@ -98,7 +98,8 @@ static void parse_relocs(Elf *elf, Elf_Data *relocs, Elf_Data *symbols,
|
|||
symbol_name = elf_strptr(elf, symbol_sh_link, symbol.st_name);
|
||||
|
||||
reloc->offset = rel.r_offset;
|
||||
reloc->name = strdup(symbol_name);
|
||||
strncpy(reloc->name, symbol_name, sizeof(reloc->name)-1);
|
||||
reloc->name[sizeof(reloc->name)-1] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -198,10 +199,6 @@ const unsigned char *radeon_shader_binary_config_start(
|
|||
void radeon_shader_binary_free_relocs(struct radeon_shader_reloc *relocs,
|
||||
unsigned reloc_count)
|
||||
{
|
||||
unsigned i;
|
||||
for (i = 0; i < reloc_count; i++) {
|
||||
FREE(relocs[i].name);
|
||||
}
|
||||
FREE(relocs);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue