summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2017-09-03 18:57:49 +1000
committerDave Airlie <airlied@redhat.com>2017-09-04 08:40:37 +1000
commit979be4f9c80a51c7294726bb75a00d5acbb0acc8 (patch)
tree378a55477b519cb4b489a0a6395982cd2a04a784
parent2b79bbde892a9a07149f8bb0f374fc0d34db4bd8 (diff)
ac: reorg ac_shader_binary struct to take less space.
This reduces the size from 96 to 80 bytes but putting all the 32-bit sizes at the start. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--src/amd/common/ac_binary.h17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/amd/common/ac_binary.h b/src/amd/common/ac_binary.h
index 45f554e4fe0..f81b821f82a 100644
--- a/src/amd/common/ac_binary.h
+++ b/src/amd/common/ac_binary.h
@@ -36,31 +36,32 @@ struct ac_shader_reloc {
};
struct ac_shader_binary {
+ unsigned code_size;
+ unsigned config_size;
+ /** The number of bytes of config information for each global symbol.
+ */
+ unsigned config_size_per_symbol;
+ unsigned rodata_size;
+ unsigned global_symbol_count;
+ unsigned reloc_count;
+
/** 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;
- /** The number of bytes of config information for each global symbol.
- */
- unsigned config_size_per_symbol;
/** Constant data accessed by the shader. This will be uploaded
* into a constant buffer. */
unsigned char *rodata;
- unsigned rodata_size;
/** List of symbol offsets for the shader */
uint64_t *global_symbol_offsets;
- unsigned global_symbol_count;
struct ac_shader_reloc *relocs;
- unsigned reloc_count;
/** Disassembled shader in a string. */
char *disasm_string;