From 9baa33cef01f0e1fe221379d78387fe9e8517c74 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Thu, 7 Nov 2019 17:16:14 -0600 Subject: anv: Rework push constant handling This substantially reworks both the state setup side of push constant handling and the pipeline compile side. The fundamental change here is that we're no longer respecting the prog_data::param array and instead are just instructing the back-end compiler to leave the array alone. This makes the state setup side substantially simpler because we can now just memcpy the whole block of push constants and don't have to upload one DWORD at a time. This also means that we can compute the full push constant layout up-front and just trust the back-end compiler to not mess with it. Maybe one day we'll decide that the back-end compiler can do useful things there again but for now, this is functionally no different from what we had before this commit and makes the NIR handling cleaner. Reviewed-by: Lionel Landwerlin --- src/intel/Makefile.sources | 1 - 1 file changed, 1 deletion(-) (limited to 'src/intel/Makefile.sources') diff --git a/src/intel/Makefile.sources b/src/intel/Makefile.sources index b3861af32f5..252a0cb5320 100644 --- a/src/intel/Makefile.sources +++ b/src/intel/Makefile.sources @@ -260,7 +260,6 @@ VULKAN_FILES := \ vulkan/anv_nir_apply_pipeline_layout.c \ vulkan/anv_nir_compute_push_layout.c \ vulkan/anv_nir_lower_multiview.c \ - vulkan/anv_nir_lower_push_constants.c \ vulkan/anv_nir_lower_ycbcr_textures.c \ vulkan/anv_pass.c \ vulkan/anv_perf.c \ -- cgit v1.2.3