mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 04:48:08 +02:00
kk: Support VK_EXT_post_depth_coverage
Requires slightly different declaration of sample mask input.
This commit is contained in:
parent
c339d8df27
commit
2ca51bf625
3 changed files with 14 additions and 3 deletions
|
|
@ -671,7 +671,7 @@ Khronos extensions that are not part of any Vulkan version:
|
|||
VK_EXT_pci_bus_info DONE (anv, hasvk, nvk, radv, vn)
|
||||
VK_EXT_physical_device_drm DONE (anv, hasvk, hk, nvk, panvk, pvr, radv, tu, v3dv, vn)
|
||||
VK_EXT_pipeline_library_group_handles DONE (anv, lvp, radv, vn)
|
||||
VK_EXT_post_depth_coverage DONE (anv/gfx11+, lvp, nvk, radv/gfx10+, tu, vn)
|
||||
VK_EXT_post_depth_coverage DONE (anv/gfx11+, kk, lvp, nvk, radv/gfx10+, tu, vn)
|
||||
VK_EXT_present_timing DONE (anv, hk, nvk, radv, tu, panvk)
|
||||
VK_EXT_primitive_restart_index DONE (lvp, radv)
|
||||
VK_EXT_primitive_topology_list_restart DONE (anv, hasvk, lvp, nvk, panvk, radv, tu, v3dv, vn, nvk)
|
||||
|
|
|
|||
|
|
@ -62,14 +62,24 @@ static const char *sysval_table[SYSTEM_VALUE_MAX] = {
|
|||
"uint mtl_AmplificationID [[amplification_id]]",
|
||||
[SYSTEM_VALUE_FIRST_VERTEX] = "uint gl_FirstVertex [[base_vertex]]",
|
||||
};
|
||||
static const char *sysval_sample_mask_in_post_depth_coverage =
|
||||
"uint gl_SampleMask [[sample_mask, post_depth_coverage]]";
|
||||
|
||||
static void
|
||||
emit_sysvals(struct nir_to_msl_ctx *ctx, nir_shader *shader)
|
||||
{
|
||||
unsigned i;
|
||||
BITSET_FOREACH_SET(i, shader->info.system_values_read, SYSTEM_VALUE_MAX) {
|
||||
assert(sysval_table[i]);
|
||||
P_IND(ctx, "%s,\n", sysval_table[i]);
|
||||
const char *sysval;
|
||||
if (i == SYSTEM_VALUE_SAMPLE_MASK_IN &&
|
||||
ctx->shader->info.stage == MESA_SHADER_FRAGMENT &&
|
||||
ctx->shader->info.fs.post_depth_coverage)
|
||||
sysval = sysval_sample_mask_in_post_depth_coverage;
|
||||
else
|
||||
sysval = sysval_table[i];
|
||||
|
||||
assert(sysval);
|
||||
P_IND(ctx, "%s,\n", sysval);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -143,6 +143,7 @@ kk_get_device_extensions(const struct kk_instance *instance,
|
|||
.EXT_image_2d_view_of_3d = true,
|
||||
.EXT_load_store_op_none = true,
|
||||
.EXT_mutable_descriptor_type = true,
|
||||
.EXT_post_depth_coverage = true,
|
||||
.EXT_shader_atomic_float = true,
|
||||
.EXT_shader_replicated_composites = true,
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue