Mesa (master): gallium/trace: add a pipe_screen::get_compiler_options method

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Feb 17 12:39:45 UTC 2021


Module: Mesa
Branch: master
Commit: 4feca7ecde9f5486a55dffe8d6899d1114b799bf
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4feca7ecde9f5486a55dffe8d6899d1114b799bf

Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Tue Feb 16 11:44:14 2021 -0500

gallium/trace: add a pipe_screen::get_compiler_options method

this fixes crashes on startup

Fixes: a3512ddfdf7 ("st/mesa: don't enable NV_copy_depth_to_color if NIR doesn't support FP64")

fixes mesa/mesa#4312

Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9082>

---

 src/gallium/auxiliary/driver_trace/tr_screen.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/src/gallium/auxiliary/driver_trace/tr_screen.c b/src/gallium/auxiliary/driver_trace/tr_screen.c
index 143161b70b2..fc2e68f52bb 100644
--- a/src/gallium/auxiliary/driver_trace/tr_screen.c
+++ b/src/gallium/auxiliary/driver_trace/tr_screen.c
@@ -103,6 +103,18 @@ trace_screen_get_device_vendor(struct pipe_screen *_screen)
 }
 
 
+static const void *
+trace_screen_get_compiler_options(struct pipe_screen *_screen,
+                                  enum pipe_shader_ir ir,
+                                  enum pipe_shader_type shader)
+{
+   struct trace_screen *tr_scr = trace_screen(_screen);
+   struct pipe_screen *screen = tr_scr->screen;
+
+   return screen->get_compiler_options(screen, ir, shader);
+}
+
+
 static struct disk_cache *
 trace_screen_get_disk_shader_cache(struct pipe_screen *_screen)
 {
@@ -707,6 +719,7 @@ trace_screen_create(struct pipe_screen *screen)
    tr_scr->base.get_name = trace_screen_get_name;
    tr_scr->base.get_vendor = trace_screen_get_vendor;
    tr_scr->base.get_device_vendor = trace_screen_get_device_vendor;
+   SCR_INIT(get_compiler_options);
    SCR_INIT(get_disk_shader_cache);
    tr_scr->base.get_param = trace_screen_get_param;
    tr_scr->base.get_shader_param = trace_screen_get_shader_param;



More information about the mesa-commit mailing list