radeon: Rename struct radeon_llvm_binary to radeon_shader_binary v2
And move its definition into r600_pipe_common.h; This struct is a just a container for shader code and has nothing to do with LLVM. v2: - Drop unrelated Makefile change Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
This commit is contained in:
parent
d8fde8ffed
commit
1f4a9fc84e
|
@ -827,11 +827,11 @@ unsigned r600_llvm_compile(
|
||||||
unsigned dump)
|
unsigned dump)
|
||||||
{
|
{
|
||||||
unsigned r;
|
unsigned r;
|
||||||
struct radeon_llvm_binary binary;
|
struct radeon_shader_binary binary;
|
||||||
const char * gpu_family = r600_get_llvm_processor_name(family);
|
const char * gpu_family = r600_get_llvm_processor_name(family);
|
||||||
unsigned i;
|
unsigned i;
|
||||||
|
|
||||||
memset(&binary, 0, sizeof(struct radeon_llvm_binary));
|
memset(&binary, 0, sizeof(struct radeon_shader_binary));
|
||||||
r = radeon_llvm_compile(mod, &binary, gpu_family, dump);
|
r = radeon_llvm_compile(mod, &binary, gpu_family, dump);
|
||||||
|
|
||||||
assert(binary.code_size % 4 == 0);
|
assert(binary.code_size % 4 == 0);
|
||||||
|
|
|
@ -91,6 +91,22 @@
|
||||||
|
|
||||||
struct r600_common_context;
|
struct r600_common_context;
|
||||||
|
|
||||||
|
struct radeon_shader_binary {
|
||||||
|
/** Shader code */
|
||||||
|
unsigned char *code;
|
||||||
|
unsigned code_size;
|
||||||
|
|
||||||
|
/** Config/Context register state that accompanies this shader.
|
||||||
|
* This is a stream of dword pairs. First dword contains the
|
||||||
|
* register address, the second dword contains the value.*/
|
||||||
|
unsigned char *config;
|
||||||
|
unsigned config_size;
|
||||||
|
|
||||||
|
/** Set to 1 if the disassembly for this binary has been dumped to
|
||||||
|
* stderr. */
|
||||||
|
int disassembled;
|
||||||
|
};
|
||||||
|
|
||||||
struct r600_resource {
|
struct r600_resource {
|
||||||
struct u_resource b;
|
struct u_resource b;
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,7 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#include "radeon_llvm_emit.h"
|
#include "radeon_llvm_emit.h"
|
||||||
|
#include "r600_pipe_common.h"
|
||||||
#include "util/u_memory.h"
|
#include "util/u_memory.h"
|
||||||
|
|
||||||
#include <llvm-c/Target.h>
|
#include <llvm-c/Target.h>
|
||||||
|
@ -85,7 +86,7 @@ static LLVMTargetRef get_r600_target() {
|
||||||
*
|
*
|
||||||
* @returns 0 for success, 1 for failure
|
* @returns 0 for success, 1 for failure
|
||||||
*/
|
*/
|
||||||
unsigned radeon_llvm_compile(LLVMModuleRef M, struct radeon_llvm_binary *binary,
|
unsigned radeon_llvm_compile(LLVMModuleRef M, struct radeon_shader_binary *binary,
|
||||||
const char * gpu_family, unsigned dump) {
|
const char * gpu_family, unsigned dump) {
|
||||||
|
|
||||||
LLVMTargetRef target;
|
LLVMTargetRef target;
|
||||||
|
|
|
@ -29,19 +29,13 @@
|
||||||
|
|
||||||
#include <llvm-c/Core.h>
|
#include <llvm-c/Core.h>
|
||||||
|
|
||||||
struct radeon_llvm_binary {
|
struct radeon_shader_binary;
|
||||||
unsigned char *code;
|
|
||||||
unsigned code_size;
|
|
||||||
unsigned char *config;
|
|
||||||
unsigned config_size;
|
|
||||||
int disassembled;
|
|
||||||
};
|
|
||||||
|
|
||||||
void radeon_llvm_shader_type(LLVMValueRef F, unsigned type);
|
void radeon_llvm_shader_type(LLVMValueRef F, unsigned type);
|
||||||
|
|
||||||
unsigned radeon_llvm_compile(
|
unsigned radeon_llvm_compile(
|
||||||
LLVMModuleRef M,
|
LLVMModuleRef M,
|
||||||
struct radeon_llvm_binary *binary,
|
struct radeon_shader_binary *binary,
|
||||||
const char * gpu_family,
|
const char * gpu_family,
|
||||||
unsigned dump);
|
unsigned dump);
|
||||||
|
|
||||||
|
|
|
@ -2295,7 +2295,7 @@ int si_compile_llvm(struct si_context *sctx, struct si_pipe_shader *shader,
|
||||||
{
|
{
|
||||||
unsigned i;
|
unsigned i;
|
||||||
uint32_t *ptr;
|
uint32_t *ptr;
|
||||||
struct radeon_llvm_binary binary;
|
struct radeon_shader_binary binary;
|
||||||
bool dump = r600_can_dump_shader(&sctx->screen->b,
|
bool dump = r600_can_dump_shader(&sctx->screen->b,
|
||||||
shader->selector ? shader->selector->tokens : NULL);
|
shader->selector ? shader->selector->tokens : NULL);
|
||||||
memset(&binary, 0, sizeof(binary));
|
memset(&binary, 0, sizeof(binary));
|
||||||
|
|
Loading…
Reference in New Issue