Mesa (master): st/mesa: indicate intel extension support for inner_coverage based on cap
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Apr 23 23:38:27 UTC 2019
Module: Mesa
Branch: master
Commit: e00f6a06050a0d19d49f2b6525bbed2e0c28d44f
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e00f6a06050a0d19d49f2b6525bbed2e0c28d44f
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date: Thu Apr 18 13:18:43 2019 -0400
st/mesa: indicate intel extension support for inner_coverage based on cap
if the driver (iris) indicates support for the inner_coverage pipe cap, this
will set the necessary states in the driver flags and rasterizer structs
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
---
src/mesa/state_tracker/st_atom_rasterizer.c | 2 ++
src/mesa/state_tracker/st_context.c | 1 +
src/mesa/state_tracker/st_extensions.c | 1 +
3 files changed, 4 insertions(+)
diff --git a/src/mesa/state_tracker/st_atom_rasterizer.c b/src/mesa/state_tracker/st_atom_rasterizer.c
index fee992e4c4a..0d7d4c16fa6 100644
--- a/src/mesa/state_tracker/st_atom_rasterizer.c
+++ b/src/mesa/state_tracker/st_atom_rasterizer.c
@@ -306,6 +306,8 @@ st_update_rasterizer(struct st_context *st)
raster->conservative_raster_mode = PIPE_CONSERVATIVE_RASTER_POST_SNAP;
else
raster->conservative_raster_mode = PIPE_CONSERVATIVE_RASTER_PRE_SNAP;
+ } else if (ctx->IntelConservativeRasterization) {
+ raster->conservative_raster_mode = PIPE_CONSERVATIVE_RASTER_POST_SNAP;
} else {
raster->conservative_raster_mode = PIPE_CONSERVATIVE_RASTER_OFF;
}
diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c
index 09d467aa360..41239067084 100644
--- a/src/mesa/state_tracker/st_context.c
+++ b/src/mesa/state_tracker/st_context.c
@@ -513,6 +513,7 @@ st_init_driver_flags(struct st_context *st)
f->NewViewport = ST_NEW_VIEWPORT;
f->NewNvConservativeRasterization = ST_NEW_RASTERIZER;
f->NewNvConservativeRasterizationParams = ST_NEW_RASTERIZER;
+ f->NewIntelConservativeRasterization = ST_NEW_RASTERIZER;
}
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 3851c4ec6cc..b23bd7c044d 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -772,6 +772,7 @@ void st_init_extensions(struct pipe_screen *screen,
{ o(ATI_meminfo), PIPE_CAP_QUERY_MEMORY_INFO },
{ o(AMD_seamless_cubemap_per_texture), PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE },
{ o(ATI_texture_mirror_once), PIPE_CAP_TEXTURE_MIRROR_CLAMP },
+ { o(INTEL_conservative_rasterization), PIPE_CAP_CONSERVATIVE_RASTER_INNER_COVERAGE },
{ o(MESA_tile_raster_order), PIPE_CAP_TILE_RASTER_ORDER },
{ o(NV_compute_shader_derivatives), PIPE_CAP_COMPUTE_SHADER_DERIVATIVES },
{ o(NV_conditional_render), PIPE_CAP_CONDITIONAL_RENDER },
More information about the mesa-commit
mailing list