diff --git a/src/amd/vulkan/nir/radv_meta_nir.c b/src/amd/vulkan/nir/radv_meta_nir.c index 7a05f2d74f8..412802f32fc 100644 --- a/src/amd/vulkan/nir/radv_meta_nir.c +++ b/src/amd/vulkan/nir/radv_meta_nir.c @@ -18,7 +18,6 @@ nir_builder PRINTFLIKE(3, 4) radv_meta_nir_init_shader(struct radv_device *dev, mesa_shader_stage stage, const char *name, ...) { - const struct radv_physical_device *pdev = radv_device_physical(dev); nir_builder b = nir_builder_init_simple_shader(stage, NULL, NULL); if (name) { va_list args; @@ -27,8 +26,6 @@ nir_builder PRINTFLIKE(3, 4) va_end(args); } - b.shader->options = &pdev->nir_options[stage]; - return b; } diff --git a/src/amd/vulkan/nir/radv_nir_rt_traversal_shader.c b/src/amd/vulkan/nir/radv_nir_rt_traversal_shader.c index a320e099171..cd4030069b4 100644 --- a/src/amd/vulkan/nir/radv_nir_rt_traversal_shader.c +++ b/src/amd/vulkan/nir/radv_nir_rt_traversal_shader.c @@ -1297,6 +1297,7 @@ radv_build_traversal_shader(struct radv_device *device, struct radv_ray_tracing_ /* Create the traversal shader as an intersection shader to prevent validation failures due to * invalid variable modes.*/ nir_builder b = radv_meta_nir_init_shader(device, MESA_SHADER_INTERSECTION, "rt_traversal"); + b.shader->options = &pdev->nir_options[MESA_SHADER_INTERSECTION]; b.shader->info.workgroup_size[0] = pdev->rt_wave_size; b.shader->info.api_subgroup_size = pdev->rt_wave_size; b.shader->info.max_subgroup_size = pdev->rt_wave_size; diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c index a0c500545cb..cecbf4c2af3 100644 --- a/src/amd/vulkan/radv_shader.c +++ b/src/amd/vulkan/radv_shader.c @@ -457,6 +457,8 @@ radv_shader_spirv_to_nir(struct radv_device *device, const struct radv_shader_st bool progress; if (stage->internal_nir) { + stage->internal_nir->options = &pdev->nir_options[stage->internal_nir->info.stage]; + /* Some things such as our meta clear/blit code will give us a NIR * shader directly. In that case, we just ignore the SPIR-V entirely * and just use the NIR shader. We don't want to alter meta and RT