diff options
author | Bas Nieuwenhuizen <[email protected]> | 2017-10-24 20:46:35 +0200 |
---|---|---|
committer | Bas Nieuwenhuizen <[email protected]> | 2017-10-26 00:28:40 +0200 |
commit | 49d035122ee8ff17522f8fa87a862f348904218f (patch) | |
tree | 34e4c1d99de7acd40169fdff9ebb01679d18d244 /src/amd/vulkan/radv_private.h | |
parent | de38491a5719b0c56cfa79b3ef1e6f947cc524d5 (diff) |
radv: Add single pipeline cache key.
To decouple the key used for info gathering and the cache from
whatever we pass to the compiler.
Reviewed-by: Timothy Arceri <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_private.h')
-rw-r--r-- | src/amd/vulkan/radv_private.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/amd/vulkan/radv_private.h b/src/amd/vulkan/radv_private.h index 83529015c5d..e80c47482c6 100644 --- a/src/amd/vulkan/radv_private.h +++ b/src/amd/vulkan/radv_private.h @@ -320,6 +320,16 @@ struct radv_pipeline_cache { VkAllocationCallbacks alloc; }; +struct radv_pipeline_key { + uint32_t instance_rate_inputs; + unsigned tess_input_vertices; + uint32_t col_format; + uint32_t is_int8; + uint32_t is_int10; + uint32_t multisample : 1; + uint32_t has_multiview_view_index : 1; +}; + void radv_pipeline_cache_init(struct radv_pipeline_cache *cache, struct radv_device *device); @@ -976,7 +986,6 @@ struct radv_event { }; struct radv_shader_module; -struct ac_shader_variant_key; #define RADV_HASH_SHADER_IS_GEOM_COPY_SHADER (1 << 0) #define RADV_HASH_SHADER_SISCHED (1 << 1) @@ -985,7 +994,7 @@ void radv_hash_shaders(unsigned char *hash, const VkPipelineShaderStageCreateInfo **stages, const struct radv_pipeline_layout *layout, - const struct ac_shader_variant_key *keys, + const struct radv_pipeline_key *key, uint32_t flags); static inline gl_shader_stage |