radv/gfx10: only compile the GS copy shader on-demand
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Tue, 30 Jul 2019 13:14:35 +0000 (15:14 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Tue, 30 Jul 2019 14:51:30 +0000 (16:51 +0200)
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/amd/vulkan/radv_pipeline.c

index 583b600dfdde4ad2f840a9720ecc24166dd6a181..e11196bd82efe84582f45a5f589d0163e787f60e 100644 (file)
@@ -2626,7 +2626,8 @@ void radv_create_shaders(struct radv_pipeline *pipeline,
 
        if(modules[MESA_SHADER_GEOMETRY]) {
                struct radv_shader_binary *gs_copy_binary = NULL;
-               if (!pipeline->gs_copy_shader) {
+               if (!pipeline->gs_copy_shader &&
+                   !radv_pipeline_has_ngg(pipeline)) {
                        pipeline->gs_copy_shader = radv_create_gs_copy_shader(
                                        device, nir[MESA_SHADER_GEOMETRY], &gs_copy_binary,
                                        keys[MESA_SHADER_GEOMETRY].has_multiview_view_index);