From a3512ddfdf7ff1dff0920568102bfaef99ab498e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 31 Aug 2020 21:00:01 -0400 Subject: [PATCH] st/mesa: don't enable NV_copy_depth_to_color if NIR doesn't support FP64 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes: e512f2cef92 - mesa: add NV_copy_depth_to_color support for nir Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3459 Reviewed-by: Tapani Pälli Part-of: --- src/mesa/state_tracker/st_extensions.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index 1278ef1dd3b..1769d27cf4e 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -1771,8 +1771,12 @@ void st_init_extensions(struct pipe_screen *screen, bool prefer_nir = PIPE_SHADER_IR_NIR == screen->get_shader_param(screen, PIPE_SHADER_FRAGMENT, PIPE_SHADER_CAP_PREFERRED_IR); + const struct nir_shader_compiler_options *nir_options = + consts->ShaderCompilerOptions[MESA_SHADER_FRAGMENT].NirOptions; + if (prefer_nir && screen->get_shader_param(screen, PIPE_SHADER_FRAGMENT, PIPE_SHADER_CAP_INTEGERS) && - extensions->ARB_stencil_texturing) + extensions->ARB_stencil_texturing && + !(nir_options->lower_doubles_options & nir_lower_fp64_full_software)) extensions->NV_copy_depth_to_color = TRUE; }