summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2019-04-24 13:08:57 -0700
committerKenneth Graunke <kenneth@whitecape.org>2019-05-23 08:13:09 -0700
commit87f42861372cdb3f82ba36b13467b157d8328ef5 (patch)
tree298d9475e09965f13f8d463caf8b5d3317726f7a /src/mesa/state_tracker
parenta2d783445791363d56d7365ef50f4748840220a2 (diff)
st/mesa: Advertise GL_EXT_shader_framebuffer_fetch_non_coherent
This extension requires the ability to read from all render targets, so we only enable it if PIPE_CAP_FBFETCH >= PIPE_CAP_MAX_RENDER_TARGETS. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r--src/mesa/state_tracker/st_extensions.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 98a3490d4df..f442c08293b 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -1398,6 +1398,11 @@ void st_init_extensions(struct pipe_screen *screen,
if (max_fb_fetch_rts > 0) {
extensions->KHR_blend_equation_advanced = true;
+
+ if (max_fb_fetch_rts >=
+ screen->get_param(screen, PIPE_CAP_MAX_RENDER_TARGETS)) {
+ extensions->EXT_shader_framebuffer_fetch_non_coherent = true;
+ }
}
consts->MaxViewports = screen->get_param(screen, PIPE_CAP_MAX_VIEWPORTS);