summaryrefslogtreecommitdiffstats
path: root/src/intel/vulkan/anv_pipeline.c
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2017-10-26 18:11:25 -0700
committerJason Ekstrand <[email protected]>2018-08-01 18:02:28 -0700
commitde9e5cf35a1fd0c66288e49c30dc100ad3e1d3aa (patch)
treefd3f197f426b26ed80bfb2a6970d646ce3a1203c /src/intel/vulkan/anv_pipeline.c
parente621f57556cfc26cc4753ad3b1db292f623905ec (diff)
anv/pipeline: Add populate_tcs/tes_key helpers
They don't really do anything interesting, but it's more consistent this way. Reviewed-by: Timothy Arceri <[email protected]>
Diffstat (limited to 'src/intel/vulkan/anv_pipeline.c')
-rw-r--r--src/intel/vulkan/anv_pipeline.c28
1 files changed, 25 insertions, 3 deletions
diff --git a/src/intel/vulkan/anv_pipeline.c b/src/intel/vulkan/anv_pipeline.c
index f0c694c5621..07706025527 100644
--- a/src/intel/vulkan/anv_pipeline.c
+++ b/src/intel/vulkan/anv_pipeline.c
@@ -308,6 +308,27 @@ populate_vs_prog_key(const struct gen_device_info *devinfo,
}
static void
+populate_tcs_prog_key(const struct gen_device_info *devinfo,
+ unsigned input_vertices,
+ struct brw_tcs_prog_key *key)
+{
+ memset(key, 0, sizeof(*key));
+
+ populate_sampler_prog_key(devinfo, &key->tex);
+
+ key->input_vertices = input_vertices;
+}
+
+static void
+populate_tes_prog_key(const struct gen_device_info *devinfo,
+ struct brw_tes_prog_key *key)
+{
+ memset(key, 0, sizeof(*key));
+
+ populate_sampler_prog_key(devinfo, &key->tex);
+}
+
+static void
populate_gs_prog_key(const struct gen_device_info *devinfo,
struct brw_gs_prog_key *key)
{
@@ -629,9 +650,10 @@ anv_pipeline_compile_tcs_tes(struct anv_pipeline *pipeline,
struct anv_shader_bin *tcs_bin = NULL;
struct anv_shader_bin *tes_bin = NULL;
- populate_sampler_prog_key(&pipeline->device->info, &tcs_key.tex);
- populate_sampler_prog_key(&pipeline->device->info, &tes_key.tex);
- tcs_key.input_vertices = info->pTessellationState->patchControlPoints;
+ populate_tcs_prog_key(&pipeline->device->info,
+ info->pTessellationState->patchControlPoints,
+ &tcs_key);
+ populate_tes_prog_key(&pipeline->device->info, &tes_key);
ANV_FROM_HANDLE(anv_pipeline_layout, layout, info->layout);