summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGustavo Lima Chaves <[email protected]>2018-03-19 23:06:45 -0700
committerCaio Marcelo de Oliveira Filho <[email protected]>2018-06-08 11:16:01 -0700
commit7dfaf025c5d8fa1487eefc97d615d3cfde50ac6c (patch)
tree009cf096447c5725f79a01326396ee4c259ef320 /src
parent7cc5178bbadff29f7191f5e9ca8ea51a17ad5f06 (diff)
anv: enable VK_EXT_shader_stencil_export
Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/intel/vulkan/anv_extensions.py1
-rw-r--r--src/intel/vulkan/anv_pipeline.c1
-rw-r--r--src/intel/vulkan/genX_pipeline.c1
3 files changed, 3 insertions, 0 deletions
diff --git a/src/intel/vulkan/anv_extensions.py b/src/intel/vulkan/anv_extensions.py
index b5bee0881ce..8160864685f 100644
--- a/src/intel/vulkan/anv_extensions.py
+++ b/src/intel/vulkan/anv_extensions.py
@@ -112,6 +112,7 @@ EXTENSIONS = [
Extension('VK_EXT_global_priority', 1,
'device->has_context_priority'),
Extension('VK_EXT_shader_viewport_index_layer', 1, True),
+ Extension('VK_EXT_shader_stencil_export', 1, 'device->info.gen >= 9'),
]
class VkVersion:
diff --git a/src/intel/vulkan/anv_pipeline.c b/src/intel/vulkan/anv_pipeline.c
index 8f30136b100..240bde036d6 100644
--- a/src/intel/vulkan/anv_pipeline.c
+++ b/src/intel/vulkan/anv_pipeline.c
@@ -152,6 +152,7 @@ anv_shader_compile_to_nir(struct anv_pipeline *pipeline,
.subgroup_quad = true,
.subgroup_shuffle = true,
.subgroup_vote = true,
+ .stencil_export = device->instance->physicalDevice.info.gen >= 9,
},
};
diff --git a/src/intel/vulkan/genX_pipeline.c b/src/intel/vulkan/genX_pipeline.c
index 6016d257584..462c59451cc 100644
--- a/src/intel/vulkan/genX_pipeline.c
+++ b/src/intel/vulkan/genX_pipeline.c
@@ -1600,6 +1600,7 @@ emit_3dstate_ps_extra(struct anv_pipeline *pipeline,
ps.PixelShaderHasUAV = true;
#if GEN_GEN >= 9
+ ps.PixelShaderComputesStencil = wm_prog_data->computed_stencil;
ps.PixelShaderPullsBary = wm_prog_data->pulls_bary;
ps.InputCoverageMaskState = wm_prog_data->uses_sample_mask ?
ICMS_INNER_CONSERVATIVE : ICMS_NONE;