Mesa (master): radv: Add inputs read by TES to radv_shader_info.
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Apr 24 18:09:08 UTC 2020
Module: Mesa
Branch: master
Commit: b779d05d711dedb32f6aca85ba4f9b28be78e7ea
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b779d05d711dedb32f6aca85ba4f9b28be78e7ea
Author: Timur Kristóf <timur.kristof at gmail.com>
Date: Mon Apr 13 18:35:57 2020 +0200
radv: Add inputs read by TES to radv_shader_info.
Signed-off-by: Timur Kristóf <timur.kristof at gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02 at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4536>
---
src/amd/vulkan/radv_pipeline.c | 7 +++++++
src/amd/vulkan/radv_shader.h | 2 ++
2 files changed, 9 insertions(+)
diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c
index 984a095aad8..2e535a33e39 100644
--- a/src/amd/vulkan/radv_pipeline.c
+++ b/src/amd/vulkan/radv_pipeline.c
@@ -2602,6 +2602,13 @@ radv_fill_shader_info(struct radv_pipeline *pipeline,
filled_stages |= (1 << MESA_SHADER_FRAGMENT);
}
+ if (nir[MESA_SHADER_TESS_CTRL]) {
+ infos[MESA_SHADER_TESS_CTRL].tcs.tes_inputs_read =
+ nir[MESA_SHADER_TESS_EVAL]->info.inputs_read;
+ infos[MESA_SHADER_TESS_CTRL].tcs.tes_patch_inputs_read =
+ nir[MESA_SHADER_TESS_EVAL]->info.patch_inputs_read;
+ }
+
if (pipeline->device->physical_device->rad_info.chip_class >= GFX9 &&
nir[MESA_SHADER_TESS_CTRL]) {
struct nir_shader *combined_nir[] = {nir[MESA_SHADER_VERTEX], nir[MESA_SHADER_TESS_CTRL]};
diff --git a/src/amd/vulkan/radv_shader.h b/src/amd/vulkan/radv_shader.h
index 23ff7ddcdcc..165df3afe2e 100644
--- a/src/amd/vulkan/radv_shader.h
+++ b/src/amd/vulkan/radv_shader.h
@@ -316,6 +316,8 @@ struct radv_shader_info {
struct {
uint64_t outputs_written;
uint64_t patch_outputs_written;
+ uint64_t tes_inputs_read;
+ uint64_t tes_patch_inputs_read;
unsigned tcs_vertices_out;
uint32_t num_patches;
uint32_t lds_size;
More information about the mesa-commit
mailing list