The open source OpenXR runtime

a/vk: Add specialization_info argument to vk_create_compute_pipeline

+6
+1
src/xrt/auxiliary/vk/vk_helpers.h
··· 938 938 VkPipelineCache pipeline_cache, 939 939 VkShaderModule shader, 940 940 VkPipelineLayout pipeline_layout, 941 + const VkSpecializationInfo *specialization_info, 941 942 VkPipeline *out_compute_pipeline); 942 943 943 944
+2
src/xrt/auxiliary/vk/vk_state_creators.c
··· 173 173 VkPipelineCache pipeline_cache, 174 174 VkShaderModule shader, 175 175 VkPipelineLayout pipeline_layout, 176 + const VkSpecializationInfo *specialization_info, 176 177 VkPipeline *out_compute_pipeline) 177 178 { 178 179 VkResult ret; ··· 183 184 .stage = VK_SHADER_STAGE_COMPUTE_BIT, 184 185 .module = shader, 185 186 .pName = "main", 187 + .pSpecializationInfo = specialization_info, 186 188 }; 187 189 188 190 VkComputePipelineCreateInfo pipeline_info = {
+3
src/xrt/compositor/render/render_resources.c
··· 651 651 r->pipeline_cache, // pipeline_cache 652 652 r->shaders->clear_comp, // shader 653 653 r->compute.pipeline_layout, // pipeline_layout 654 + NULL, // specialization_info 654 655 &r->compute.clear_pipeline)); // out_compute_pipeline 655 656 656 657 C(vk_create_compute_pipeline( // ··· 658 659 r->pipeline_cache, // pipeline_cache 659 660 r->shaders->distortion_comp, // shader 660 661 r->compute.pipeline_layout, // pipeline_layout 662 + NULL, // specialization_info 661 663 &r->compute.distortion_pipeline)); // out_compute_pipeline 662 664 663 665 C(vk_create_compute_pipeline( // ··· 665 667 r->pipeline_cache, // pipeline_cache 666 668 r->shaders->distortion_timewarp_comp, // shader 667 669 r->compute.pipeline_layout, // pipeline_layout 670 + NULL, // specialization_info 668 671 &r->compute.distortion_timewarp_pipeline)); // out_compute_pipeline 669 672 670 673