mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-05 04:00:34 +01:00
r600, radeon: move radeon_shader_binary_{init,clean} back to radeon
Those are used by r600 and radeonsi, so moving them within the former
was a bad idea.
Fixes: d96a210842 ("r600g,compute: provide local copy of functions
from ac_binary.c")
Cc: Jan Vesely <jan.vesely@rutgers.edu>
Cc: Aaron Watry <awatry@gmail.com>
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Tested-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
This commit is contained in:
parent
84bf7e5ad6
commit
7e1c42cf89
3 changed files with 28 additions and 23 deletions
|
|
@ -180,27 +180,6 @@ static void evergreen_cs_set_constant_buffer(struct r600_context *rctx,
|
|||
#define R_028850_SQ_PGM_RESOURCES_PS 0x028850
|
||||
|
||||
#ifdef HAVE_OPENCL
|
||||
/*
|
||||
* shader binary helpers.
|
||||
*/
|
||||
static void r600_shader_binary_init(struct ac_shader_binary *b)
|
||||
{
|
||||
memset(b, 0, sizeof(*b));
|
||||
}
|
||||
|
||||
static void r600_shader_binary_clean(struct ac_shader_binary *b)
|
||||
{
|
||||
if (!b)
|
||||
return;
|
||||
FREE(b->code);
|
||||
FREE(b->config);
|
||||
FREE(b->rodata);
|
||||
FREE(b->global_symbol_offsets);
|
||||
FREE(b->relocs);
|
||||
FREE(b->disasm_string);
|
||||
FREE(b->llvm_ir_string);
|
||||
}
|
||||
|
||||
static void parse_symbol_table(Elf_Data *symbol_table_data,
|
||||
const GElf_Shdr *symbol_table_header,
|
||||
struct ac_shader_binary *binary)
|
||||
|
|
@ -435,7 +414,7 @@ static void *evergreen_create_compute_state(struct pipe_context *ctx,
|
|||
COMPUTE_DBG(rctx->screen, "*** evergreen_create_compute_state\n");
|
||||
header = cso->prog;
|
||||
code = cso->prog + sizeof(struct pipe_llvm_program_header);
|
||||
r600_shader_binary_init(&shader->binary);
|
||||
radeon_shader_binary_init(&shader->binary);
|
||||
r600_elf_read(code, header->num_bytes, &shader->binary);
|
||||
r600_create_shader(&shader->bc, &shader->binary, &use_kill);
|
||||
|
||||
|
|
@ -467,7 +446,7 @@ static void evergreen_delete_compute_state(struct pipe_context *ctx, void *state
|
|||
return;
|
||||
|
||||
#ifdef HAVE_OPENCL
|
||||
r600_shader_binary_clean(&shader->binary);
|
||||
radeon_shader_binary_clean(&shader->binary);
|
||||
#endif
|
||||
r600_destroy_shader(&shader->bc);
|
||||
|
||||
|
|
|
|||
|
|
@ -63,6 +63,27 @@ struct r600_multi_fence {
|
|||
} gfx_unflushed;
|
||||
};
|
||||
|
||||
/*
|
||||
* shader binary helpers.
|
||||
*/
|
||||
void radeon_shader_binary_init(struct ac_shader_binary *b)
|
||||
{
|
||||
memset(b, 0, sizeof(*b));
|
||||
}
|
||||
|
||||
void radeon_shader_binary_clean(struct ac_shader_binary *b)
|
||||
{
|
||||
if (!b)
|
||||
return;
|
||||
FREE(b->code);
|
||||
FREE(b->config);
|
||||
FREE(b->rodata);
|
||||
FREE(b->global_symbol_offsets);
|
||||
FREE(b->relocs);
|
||||
FREE(b->disasm_string);
|
||||
FREE(b->llvm_ir_string);
|
||||
}
|
||||
|
||||
/*
|
||||
* pipe_context
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -34,6 +34,8 @@
|
|||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "amd/common/ac_binary.h"
|
||||
|
||||
#include "radeon/radeon_winsys.h"
|
||||
|
||||
#include "util/disk_cache.h"
|
||||
|
|
@ -132,6 +134,9 @@ struct r600_perfcounters;
|
|||
struct tgsi_shader_info;
|
||||
struct r600_qbo_state;
|
||||
|
||||
void radeon_shader_binary_init(struct ac_shader_binary *b);
|
||||
void radeon_shader_binary_clean(struct ac_shader_binary *b);
|
||||
|
||||
/* Only 32-bit buffer allocations are supported, gallium doesn't support more
|
||||
* at the moment.
|
||||
*/
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue