summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Leech <oddhack@sonic.net>2023-11-26 21:15:11 -0800
committerJon Leech <oddhack@sonic.net>2023-11-26 21:15:11 -0800
commitdbad946f7edc9137dbb972ea8e271592e3fb9746 (patch)
treeccd0354bd9421cce4841b4149f2ee5e6ee3150d1
parentb4792eab92a1d132ef95b56a7681cc6af69b570e (diff)
downloadgfxstream-protocols-dbad946f7edc9137dbb972ea8e271592e3fb9746.tar.gz
Change log for November 17, 2023 Vulkan 1.3.271 spec update:
Github Issues * Add zero stride VU for flink:vkGetQueryPoolResults and flink:vkCmdCopyQueryPoolResults (public issue 2265). * Move pname:timingCount to flink:vkGetLatencyMarkerInfoNV for apiext:VK_NV_low_latency2 (public issue 2269). Internal Issues * Allow vkCmdBeginTransformFeedbackEXT to be called without an active graphics pipeline bound when using shader objects (internal issue 2785). * Autogenerate SPIR-V extension dependencies for extension appendices, and remove explicit dependencies now (or already) generated by the scripts (internal issue 3678). * Consolidate synchronization VUs (internal MR 6164). * Rewrite some spec language for apiext:VK_NV_cuda_kernel_launch to be internally consistent and follow style guidelines (internal MR 6234). * Fix names of apiext:VK_NV_cuda_kernnel_launch enums for use with apiext:VK_EXT_debug_report (internal MR 6235). * Fix common VUs for slink:VkDeviceImageSubresourceInfoKHR to insert correct image parameter name (internal MR 6264). * Document some missing apiext:VK_EXT_multi_draw interactions in the extension appendix (internal MR 6276). * Clarify descriptions of etext:*_MICROMAP_BIT_EXT pipeline flags (internal MR 6277). * Make pname:deviceRenderAreaCount VU language consistent (internal MR 6288). * Make slink:VkCuModuleCreateInfoNVX::pname:dataSize `optional` in XML (internal MR 6291). * Add `not` XML `limittype` attribute value for features that are supported when the capability value is false (internal MR 6292). * Mark apiext:VK_EXT_nested_command_buffer as ratified (internal MR 6293). * Add commonvalidity file for query result VUs (internal MR 6295). * Autogenerate "`API Interactions`" section in extension appendices from XML (internal MR 6297).
-rw-r--r--ChangeLog.adoc41
-rw-r--r--Makefile2
-rw-r--r--appendices/VK_AMDX_shader_enqueue.adoc3
-rw-r--r--appendices/VK_AMD_draw_indirect_count.adoc2
-rw-r--r--appendices/VK_AMD_gcn_shader.adoc2
-rw-r--r--appendices/VK_AMD_gpu_shader_half_float.adoc2
-rw-r--r--appendices/VK_AMD_gpu_shader_int16.adoc2
-rw-r--r--appendices/VK_AMD_shader_ballot.adoc2
-rw-r--r--appendices/VK_AMD_shader_early_and_late_fragment_tests.adoc2
-rw-r--r--appendices/VK_AMD_shader_explicit_vertex_parameter.adoc2
-rw-r--r--appendices/VK_AMD_shader_fragment_mask.adoc2
-rw-r--r--appendices/VK_AMD_shader_image_load_store_lod.adoc2
-rw-r--r--appendices/VK_AMD_shader_trinary_minmax.adoc2
-rw-r--r--appendices/VK_AMD_texture_gather_bias_lod.adoc2
-rw-r--r--appendices/VK_ARM_shader_core_builtins.adoc2
-rw-r--r--appendices/VK_EXT_4444_formats.adoc2
-rw-r--r--appendices/VK_EXT_buffer_device_address.adoc2
-rw-r--r--appendices/VK_EXT_descriptor_indexing.adoc3
-rw-r--r--appendices/VK_EXT_extended_dynamic_state.adoc2
-rw-r--r--appendices/VK_EXT_extended_dynamic_state2.adoc2
-rw-r--r--appendices/VK_EXT_fragment_density_map.adoc2
-rw-r--r--appendices/VK_EXT_fragment_shader_interlock.adoc2
-rw-r--r--appendices/VK_EXT_host_query_reset.adoc2
-rw-r--r--appendices/VK_EXT_image_robustness.adoc2
-rw-r--r--appendices/VK_EXT_inline_uniform_block.adoc2
-rw-r--r--appendices/VK_EXT_mesh_shader.adoc2
-rw-r--r--appendices/VK_EXT_multi_draw.adoc3
-rw-r--r--appendices/VK_EXT_opacity_micromap.adoc2
-rw-r--r--appendices/VK_EXT_pipeline_creation_cache_control.adoc2
-rw-r--r--appendices/VK_EXT_pipeline_creation_feedback.adoc2
-rw-r--r--appendices/VK_EXT_post_depth_coverage.adoc2
-rw-r--r--appendices/VK_EXT_private_data.adoc2
-rw-r--r--appendices/VK_EXT_sampler_filter_minmax.adoc2
-rw-r--r--appendices/VK_EXT_scalar_block_layout.adoc2
-rw-r--r--appendices/VK_EXT_separate_stencil_usage.adoc2
-rw-r--r--appendices/VK_EXT_shader_atomic_float.adoc2
-rw-r--r--appendices/VK_EXT_shader_atomic_float2.adoc5
-rw-r--r--appendices/VK_EXT_shader_demote_to_helper_invocation.adoc4
-rw-r--r--appendices/VK_EXT_shader_image_atomic_int64.adoc2
-rw-r--r--appendices/VK_EXT_shader_stencil_export.adoc2
-rw-r--r--appendices/VK_EXT_shader_subgroup_ballot.adoc2
-rw-r--r--appendices/VK_EXT_shader_subgroup_vote.adoc2
-rw-r--r--appendices/VK_EXT_shader_tile_image.adoc2
-rw-r--r--appendices/VK_EXT_shader_viewport_index_layer.adoc3
-rw-r--r--appendices/VK_EXT_subgroup_size_control.adoc2
-rw-r--r--appendices/VK_EXT_texel_buffer_alignment.adoc2
-rw-r--r--appendices/VK_EXT_texture_compression_astc_hdr.adoc2
-rw-r--r--appendices/VK_EXT_tooling_info.adoc2
-rw-r--r--appendices/VK_EXT_ycbcr_2plane_444_formats.adoc2
-rw-r--r--appendices/VK_GOOGLE_decorate_string.adoc3
-rw-r--r--appendices/VK_GOOGLE_hlsl_functionality1.adoc3
-rw-r--r--appendices/VK_GOOGLE_user_type.adoc3
-rw-r--r--appendices/VK_HUAWEI_cluster_culling_shader.adoc2
-rw-r--r--appendices/VK_HUAWEI_subpass_shading.adoc2
-rw-r--r--appendices/VK_INTEL_shader_integer_functions2.adoc6
-rw-r--r--appendices/VK_KHR_16bit_storage.adoc3
-rw-r--r--appendices/VK_KHR_8bit_storage.adoc3
-rw-r--r--appendices/VK_KHR_bind_memory2.adoc2
-rw-r--r--appendices/VK_KHR_buffer_device_address.adoc3
-rw-r--r--appendices/VK_KHR_cooperative_matrix.adoc2
-rw-r--r--appendices/VK_KHR_copy_commands2.adoc4
-rw-r--r--appendices/VK_KHR_create_renderpass2.adoc2
-rw-r--r--appendices/VK_KHR_dedicated_allocation.adoc2
-rw-r--r--appendices/VK_KHR_depth_stencil_resolve.adoc2
-rw-r--r--appendices/VK_KHR_descriptor_update_template.adoc1
-rw-r--r--appendices/VK_KHR_device_group.adoc4
-rw-r--r--appendices/VK_KHR_device_group_creation.adoc2
-rw-r--r--appendices/VK_KHR_draw_indirect_count.adoc2
-rw-r--r--appendices/VK_KHR_driver_properties.adoc2
-rw-r--r--appendices/VK_KHR_dynamic_rendering.adoc2
-rw-r--r--appendices/VK_KHR_external_fence.adoc2
-rw-r--r--appendices/VK_KHR_external_fence_capabilities.adoc2
-rw-r--r--appendices/VK_KHR_external_memory.adoc1
-rw-r--r--appendices/VK_KHR_external_memory_capabilities.adoc1
-rw-r--r--appendices/VK_KHR_external_semaphore.adoc2
-rw-r--r--appendices/VK_KHR_external_semaphore_capabilities.adoc2
-rw-r--r--appendices/VK_KHR_format_feature_flags2.adoc2
-rw-r--r--appendices/VK_KHR_fragment_shader_barycentric.adoc2
-rw-r--r--appendices/VK_KHR_fragment_shading_rate.adoc2
-rw-r--r--appendices/VK_KHR_get_memory_requirements2.adoc2
-rw-r--r--appendices/VK_KHR_get_physical_device_properties2.adoc2
-rw-r--r--appendices/VK_KHR_image_format_list.adoc2
-rw-r--r--appendices/VK_KHR_imageless_framebuffer.adoc2
-rw-r--r--appendices/VK_KHR_maintenance1.adoc2
-rw-r--r--appendices/VK_KHR_maintenance2.adoc2
-rw-r--r--appendices/VK_KHR_maintenance3.adoc2
-rw-r--r--appendices/VK_KHR_maintenance4.adoc1
-rw-r--r--appendices/VK_KHR_multiview.adoc3
-rw-r--r--appendices/VK_KHR_ray_query.adoc2
-rw-r--r--appendices/VK_KHR_ray_tracing_maintenance1.adoc2
-rw-r--r--appendices/VK_KHR_ray_tracing_pipeline.adoc2
-rw-r--r--appendices/VK_KHR_ray_tracing_position_fetch.adoc2
-rw-r--r--appendices/VK_KHR_relaxed_block_layout.adoc2
-rw-r--r--appendices/VK_KHR_sampler_mirror_clamp_to_edge.adoc2
-rw-r--r--appendices/VK_KHR_sampler_ycbcr_conversion.adoc2
-rw-r--r--appendices/VK_KHR_separate_depth_stencil_layouts.adoc2
-rw-r--r--appendices/VK_KHR_shader_atomic_int64.adoc1
-rw-r--r--appendices/VK_KHR_shader_clock.adoc6
-rw-r--r--appendices/VK_KHR_shader_draw_parameters.adoc3
-rw-r--r--appendices/VK_KHR_shader_float16_int8.adoc1
-rw-r--r--appendices/VK_KHR_shader_float_controls.adoc4
-rw-r--r--appendices/VK_KHR_shader_integer_dot_product.adoc3
-rw-r--r--appendices/VK_KHR_shader_non_semantic_info.adoc4
-rw-r--r--appendices/VK_KHR_shader_subgroup_extended_types.adoc1
-rw-r--r--appendices/VK_KHR_shader_subgroup_uniform_control_flow.adoc2
-rw-r--r--appendices/VK_KHR_shader_terminate_invocation.adoc5
-rw-r--r--appendices/VK_KHR_spirv_1_4.adoc1
-rw-r--r--appendices/VK_KHR_storage_buffer_storage_class.adoc4
-rw-r--r--appendices/VK_KHR_synchronization2.adoc1
-rw-r--r--appendices/VK_KHR_timeline_semaphore.adoc1
-rw-r--r--appendices/VK_KHR_uniform_buffer_standard_layout.adoc2
-rw-r--r--appendices/VK_KHR_variable_pointers.adoc4
-rw-r--r--appendices/VK_KHR_vulkan_memory_model.adoc4
-rw-r--r--appendices/VK_KHR_workgroup_memory_explicit_layout.adoc2
-rw-r--r--appendices/VK_KHR_zero_initialize_workgroup_memory.adoc2
-rw-r--r--appendices/VK_NVX_multiview_per_view_attributes.adoc2
-rw-r--r--appendices/VK_NV_compute_shader_derivatives.adoc2
-rw-r--r--appendices/VK_NV_cooperative_matrix.adoc2
-rw-r--r--appendices/VK_NV_cuda_kernel_launch.adoc9
-rw-r--r--appendices/VK_NV_fragment_shader_barycentric.adoc2
-rw-r--r--appendices/VK_NV_geometry_shader_passthrough.adoc2
-rw-r--r--appendices/VK_NV_low_latency2.adoc6
-rw-r--r--appendices/VK_NV_mesh_shader.adoc2
-rw-r--r--appendices/VK_NV_ray_tracing.adoc2
-rw-r--r--appendices/VK_NV_ray_tracing_invocation_reorder.adoc2
-rw-r--r--appendices/VK_NV_ray_tracing_motion_blur.adoc2
-rw-r--r--appendices/VK_NV_sample_mask_override_coverage.adoc2
-rw-r--r--appendices/VK_NV_shader_image_footprint.adoc2
-rw-r--r--appendices/VK_NV_shader_sm_builtins.adoc2
-rw-r--r--appendices/VK_NV_shader_subgroup_partitioned.adoc2
-rw-r--r--appendices/VK_NV_shading_rate_image.adoc2
-rw-r--r--appendices/VK_NV_viewport_array2.adoc2
-rw-r--r--appendices/VK_QCOM_image_processing.adoc2
-rw-r--r--appendices/VK_QCOM_image_processing2.adoc2
-rw-r--r--appendices/extensions.adoc7
-rw-r--r--chapters/VK_NV_cuda_kernel_launch/dispatch.adoc49
-rw-r--r--chapters/VK_NV_cuda_kernel_launch/module.adoc80
-rw-r--r--chapters/VK_NV_low_latency2/low_latency2.adoc16
-rw-r--r--chapters/commonvalidity/get_image_subresource_layout_common.adoc57
-rw-r--r--chapters/commonvalidity/image_layout_transition_common.adoc32
-rw-r--r--chapters/commonvalidity/query_pool_count_common.adoc10
-rw-r--r--chapters/commonvalidity/query_results_common.adoc30
-rw-r--r--chapters/dispatch.adoc2
-rw-r--r--chapters/features.adoc2
-rw-r--r--chapters/limits.adoc2
-rw-r--r--chapters/pipelines.adoc16
-rw-r--r--chapters/queries.adoc84
-rw-r--r--chapters/renderpass.adoc10
-rw-r--r--chapters/resources.adoc40
-rw-r--r--chapters/sparsemem.adoc4
-rw-r--r--chapters/synchronization.adoc10
-rw-r--r--chapters/vertexpostproc.adoc9
-rw-r--r--proposals/VK_EXT_depth_bias_control.adoc2
-rw-r--r--proposals/VK_EXT_opacity_micromap.adoc2
-rw-r--r--proposals/VK_KHR_maintenance5.adoc2
-rw-r--r--proposals/VK_MSFT_layered_driver.adoc2
-rw-r--r--registry.adoc1
-rw-r--r--scripts/extensionmetadocgenerator.py106
-rw-r--r--scripts/generator.py5
-rwxr-xr-xscripts/parse_dependency.py37
-rw-r--r--scripts/scriptgenerator.py14
-rw-r--r--scripts/spec_tools/conventions.py83
-rw-r--r--scripts/spec_tools/util.py1
-rwxr-xr-xscripts/vkconventions.py16
-rwxr-xr-xscripts/xml_consistency.py2
-rw-r--r--styleguide.adoc4
-rw-r--r--xml/registry.rnc2
-rw-r--r--xml/vk.xml53
168 files changed, 528 insertions, 615 deletions
diff --git a/ChangeLog.adoc b/ChangeLog.adoc
index e60cf75f..afa9ea7a 100644
--- a/ChangeLog.adoc
+++ b/ChangeLog.adoc
@@ -14,6 +14,47 @@ appears frequently in the change log.
-----------------------------------------------------
+Change log for November 17, 2023 Vulkan 1.3.271 spec update:
+
+Github Issues
+
+ * Add zero stride VU for flink:vkGetQueryPoolResults and
+ flink:vkCmdCopyQueryPoolResults (public issue 2265).
+ * Move pname:timingCount to flink:vkGetLatencyMarkerInfoNV for
+ apiext:VK_NV_low_latency2 (public issue 2269).
+
+Internal Issues
+
+ * Allow vkCmdBeginTransformFeedbackEXT to be called without an active
+ graphics pipeline bound when using shader objects (internal issue 2785).
+ * Autogenerate SPIR-V extension dependencies for extension appendices, and
+ remove explicit dependencies now (or already) generated by the scripts
+ (internal issue 3678).
+ * Consolidate synchronization VUs (internal MR 6164).
+ * Rewrite some spec language for apiext:VK_NV_cuda_kernel_launch to be
+ internally consistent and follow style guidelines (internal MR 6234).
+ * Fix names of apiext:VK_NV_cuda_kernnel_launch enums for use with
+ apiext:VK_EXT_debug_report (internal MR 6235).
+ * Fix common VUs for slink:VkDeviceImageSubresourceInfoKHR to insert
+ correct image parameter name (internal MR 6264).
+ * Document some missing apiext:VK_EXT_multi_draw interactions in the
+ extension appendix (internal MR 6276).
+ * Clarify descriptions of etext:*_MICROMAP_BIT_EXT pipeline flags
+ (internal MR 6277).
+ * Make pname:deviceRenderAreaCount VU language consistent (internal MR
+ 6288).
+ * Make slink:VkCuModuleCreateInfoNVX::pname:dataSize `optional` in XML
+ (internal MR 6291).
+ * Add `not` XML `limittype` attribute value for features that are
+ supported when the capability value is false (internal MR 6292).
+ * Mark apiext:VK_EXT_nested_command_buffer as ratified (internal MR 6293).
+ * Add commonvalidity file for query result VUs (internal MR 6295).
+ * Autogenerate "`API Interactions`" section in extension appendices from
+ XML (internal MR 6297).
+
+
+-----------------------------------------------------
+
Change log for November 9, 2023 Vulkan 1.3.270 spec update:
Github Issues
diff --git a/Makefile b/Makefile
index d1ca26a7..f2927cff 100644
--- a/Makefile
+++ b/Makefile
@@ -136,7 +136,7 @@ VERBOSE =
# ADOCOPTS options for asciidoc->HTML5 output
NOTEOPTS = -a editing-notes -a implementation-guide
-PATCHVERSION = 270
+PATCHVERSION = 271
BASEOPTS =
ifneq (,$(findstring VKSC_VERSION_1_0,$(VERSIONS)))
diff --git a/appendices/VK_AMDX_shader_enqueue.adoc b/appendices/VK_AMDX_shader_enqueue.adoc
index 09c2eb3c..23127183 100644
--- a/appendices/VK_AMDX_shader_enqueue.adoc
+++ b/appendices/VK_AMDX_shader_enqueue.adoc
@@ -8,9 +8,6 @@ include::{generated}/meta/{refprefix}VK_AMDX_shader_enqueue.adoc[]
*Last Modified Date*::
2021-07-22
-*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMDX_shader_enqueue.html[`SPV_AMDX_shader_enqueue`].
*Provisional*::
diff --git a/appendices/VK_AMD_draw_indirect_count.adoc b/appendices/VK_AMD_draw_indirect_count.adoc
index 1cbeb0fd..1ebc376f 100644
--- a/appendices/VK_AMD_draw_indirect_count.adoc
+++ b/appendices/VK_AMD_draw_indirect_count.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_AMD_draw_indirect_count.adoc[]
*Last Modified Date*::
2016-08-23
-*Interactions and External Dependencies*::
- - Promoted to `apiext:VK_KHR_draw_indirect_count`
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_AMD_gcn_shader.adoc b/appendices/VK_AMD_gcn_shader.adoc
index d0aece01..95b3eeea 100644
--- a/appendices/VK_AMD_gcn_shader.adoc
+++ b/appendices/VK_AMD_gcn_shader.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_AMD_gcn_shader.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_gcn_shader.html[`SPV_AMD_gcn_shader`]
- This extension provides API support for
{GLregistry}/AMD/AMD_gcn_shader.txt[`GL_AMD_gcn_shader`]
*Contributors*::
diff --git a/appendices/VK_AMD_gpu_shader_half_float.adoc b/appendices/VK_AMD_gpu_shader_half_float.adoc
index dcbb239d..0eb1caff 100644
--- a/appendices/VK_AMD_gpu_shader_half_float.adoc
+++ b/appendices/VK_AMD_gpu_shader_half_float.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_AMD_gpu_shader_half_float.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_gpu_shader_half_float.html[`SPV_AMD_gpu_shader_half_float`]
- This extension provides API support for
{GLregistry}/AMD/AMD_gpu_shader_half_float.txt[`GL_AMD_gpu_shader_half_float`]
*Contributors*::
diff --git a/appendices/VK_AMD_gpu_shader_int16.adoc b/appendices/VK_AMD_gpu_shader_int16.adoc
index 39d708f1..4e460a25 100644
--- a/appendices/VK_AMD_gpu_shader_int16.adoc
+++ b/appendices/VK_AMD_gpu_shader_int16.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_AMD_gpu_shader_int16.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_gpu_shader_int16.html[`SPV_AMD_gpu_shader_int16`]
- This extension provides API support for
{GLregistry}/AMD/AMD_gpu_shader_int16.txt[`GL_AMD_gpu_shader_int16`]
*Contributors*::
diff --git a/appendices/VK_AMD_shader_ballot.adoc b/appendices/VK_AMD_shader_ballot.adoc
index 55ba92d4..71e3b7d1 100644
--- a/appendices/VK_AMD_shader_ballot.adoc
+++ b/appendices/VK_AMD_shader_ballot.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_AMD_shader_ballot.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_shader_ballot.html[`SPV_AMD_shader_ballot`]
- This extension provides API support for
{GLregistry}/AMD/AMD_shader_ballot.txt[`GL_AMD_shader_ballot`]
*Contributors*::
diff --git a/appendices/VK_AMD_shader_early_and_late_fragment_tests.adoc b/appendices/VK_AMD_shader_early_and_late_fragment_tests.adoc
index b6aa3ace..fb24747b 100644
--- a/appendices/VK_AMD_shader_early_and_late_fragment_tests.adoc
+++ b/appendices/VK_AMD_shader_early_and_late_fragment_tests.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_AMD_shader_early_and_late_fragment_tests
*Last Modified Date*::
2021-09-14
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_shader_early_and_late_fragment_tests.html[`SPV_AMD_shader_early_and_late_fragment_tests`]
- This extension interacts with `apiext:VK_EXT_shader_stencil_export`
*Contributors*::
- Tobias Hector, AMD
diff --git a/appendices/VK_AMD_shader_explicit_vertex_parameter.adoc b/appendices/VK_AMD_shader_explicit_vertex_parameter.adoc
index 996cfc5d..515bd811 100644
--- a/appendices/VK_AMD_shader_explicit_vertex_parameter.adoc
+++ b/appendices/VK_AMD_shader_explicit_vertex_parameter.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_AMD_shader_explicit_vertex_parameter.ado
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_shader_explicit_vertex_parameter.html[`SPV_AMD_shader_explicit_vertex_parameter`]
- This extension provides API support for
{GLregistry}/AMD/AMD_shader_explicit_vertex_parameter.txt[`GL_AMD_shader_explicit_vertex_parameter`]
*Contributors*::
diff --git a/appendices/VK_AMD_shader_fragment_mask.adoc b/appendices/VK_AMD_shader_fragment_mask.adoc
index 714609b5..54780fd7 100644
--- a/appendices/VK_AMD_shader_fragment_mask.adoc
+++ b/appendices/VK_AMD_shader_fragment_mask.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_AMD_shader_fragment_mask.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_shader_fragment_mask.html[`SPV_AMD_shader_fragment_mask`]
- This extension provides API support for
{GLSLregistry}/amd/GL_AMD_shader_fragment_mask.txt[`GL_AMD_shader_fragment_mask`]
*Contributors*::
diff --git a/appendices/VK_AMD_shader_image_load_store_lod.adoc b/appendices/VK_AMD_shader_image_load_store_lod.adoc
index e241481d..9d884168 100644
--- a/appendices/VK_AMD_shader_image_load_store_lod.adoc
+++ b/appendices/VK_AMD_shader_image_load_store_lod.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_AMD_shader_image_load_store_lod.adoc[]
*Last Modified Date*::
2017-08-21
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_shader_image_load_store_lod.html[`SPV_AMD_shader_image_load_store_lod`]
- This extension provides API support for
{GLregistry}/AMD/AMD_shader_image_load_store_lod.txt[`GL_AMD_shader_image_load_store_lod`]
*IP Status*::
diff --git a/appendices/VK_AMD_shader_trinary_minmax.adoc b/appendices/VK_AMD_shader_trinary_minmax.adoc
index e0264aea..d45655c7 100644
--- a/appendices/VK_AMD_shader_trinary_minmax.adoc
+++ b/appendices/VK_AMD_shader_trinary_minmax.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_AMD_shader_trinary_minmax.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_shader_trinary_minmax.html[`SPV_AMD_shader_trinary_minmax`]
- This extension provides API support for
{GLregistry}/AMD/AMD_shader_trinary_minmax.txt[`GL_AMD_shader_trinary_minmax`]
*Contributors*::
diff --git a/appendices/VK_AMD_texture_gather_bias_lod.adoc b/appendices/VK_AMD_texture_gather_bias_lod.adoc
index 90ecbc6a..05e1a914 100644
--- a/appendices/VK_AMD_texture_gather_bias_lod.adoc
+++ b/appendices/VK_AMD_texture_gather_bias_lod.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_AMD_texture_gather_bias_lod.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/AMD/SPV_AMD_texture_gather_bias_lod.html[`SPV_AMD_texture_gather_bias_lod`]
- This extension provides API support for
{GLregistry}/AMD/AMD_texture_gather_bias_lod.txt[`GL_AMD_texture_gather_bias_lod`]
*Contributors*::
diff --git a/appendices/VK_ARM_shader_core_builtins.adoc b/appendices/VK_ARM_shader_core_builtins.adoc
index ef27a2f5..72c5820e 100644
--- a/appendices/VK_ARM_shader_core_builtins.adoc
+++ b/appendices/VK_ARM_shader_core_builtins.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_ARM_shader_core_builtins.adoc[]
*Last Modified Date*::
2022-10-05
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/ARM/SPV_ARM_core_builtins.html[`SPV_ARM_core_builtins`].
- This extension provides API support for
{GLSLregistry}/arm/GLSL_ARM_shader_core_builtins.txt[`GL_ARM_shader_core_builtins`]
*Contributors*::
diff --git a/appendices/VK_EXT_4444_formats.adoc b/appendices/VK_EXT_4444_formats.adoc
index ff5c19c7..6bdcc7c8 100644
--- a/appendices/VK_EXT_4444_formats.adoc
+++ b/appendices/VK_EXT_4444_formats.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_4444_formats.adoc[]
*Last Modified Date*::
2020-07-28
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_buffer_device_address.adoc b/appendices/VK_EXT_buffer_device_address.adoc
index 987c04bb..e854f63a 100644
--- a/appendices/VK_EXT_buffer_device_address.adoc
+++ b/appendices/VK_EXT_buffer_device_address.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_EXT_buffer_device_address.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_physical_storage_buffer.html[`SPV_EXT_physical_storage_buffer`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_buffer_reference.txt[`GLSL_EXT_buffer_reference`]
and
diff --git a/appendices/VK_EXT_descriptor_indexing.adoc b/appendices/VK_EXT_descriptor_indexing.adoc
index ce49fd55..ebe0fd0e 100644
--- a/appendices/VK_EXT_descriptor_indexing.adoc
+++ b/appendices/VK_EXT_descriptor_indexing.adoc
@@ -9,9 +9,6 @@ include::{generated}/meta/{refprefix}VK_EXT_descriptor_indexing.adoc[]
*Last Modified Date*::
2017-10-02
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
- - This extension requires
- {spirv}/EXT/SPV_EXT_descriptor_indexing.html[`SPV_EXT_descriptor_indexing`]
- This extension provides API support for
{GLSLregistry}/ext/GL_EXT_nonuniform_qualifier.txt[`GL_EXT_nonuniform_qualifier`]
*Contributors*::
diff --git a/appendices/VK_EXT_extended_dynamic_state.adoc b/appendices/VK_EXT_extended_dynamic_state.adoc
index d79f522f..1ffd890e 100644
--- a/appendices/VK_EXT_extended_dynamic_state.adoc
+++ b/appendices/VK_EXT_extended_dynamic_state.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_extended_dynamic_state.adoc[]
*Last Modified Date*::
2019-12-09
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_extended_dynamic_state2.adoc b/appendices/VK_EXT_extended_dynamic_state2.adoc
index fa0401af..867e3dce 100644
--- a/appendices/VK_EXT_extended_dynamic_state2.adoc
+++ b/appendices/VK_EXT_extended_dynamic_state2.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_extended_dynamic_state2.adoc[]
*Last Modified Date*::
2021-04-12
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_fragment_density_map.adoc b/appendices/VK_EXT_fragment_density_map.adoc
index 81205f5d..ec18fdd8 100644
--- a/appendices/VK_EXT_fragment_density_map.adoc
+++ b/appendices/VK_EXT_fragment_density_map.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_EXT_fragment_density_map.adoc[]
*Last Modified Date*::
2021-09-30
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_fragment_invocation_density.html[`SPV_EXT_fragment_invocation_density`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_fragment_invocation_density.txt[`GL_EXT_fragment_invocation_density`]
*Contributors*::
diff --git a/appendices/VK_EXT_fragment_shader_interlock.adoc b/appendices/VK_EXT_fragment_shader_interlock.adoc
index 0bb7f69c..9b266e28 100644
--- a/appendices/VK_EXT_fragment_shader_interlock.adoc
+++ b/appendices/VK_EXT_fragment_shader_interlock.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_EXT_fragment_shader_interlock.adoc[]
*Last Modified Date*::
2019-05-02
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_fragment_shader_interlock.html[`SPV_EXT_fragment_shader_interlock`]
- This extension provides API support for
{GLregistry}/ARB/ARB_fragment_shader_interlock.txt[`GL_ARB_fragment_shader_interlock`]
*Contributors*::
diff --git a/appendices/VK_EXT_host_query_reset.adoc b/appendices/VK_EXT_host_query_reset.adoc
index 8a25b26a..954ba01a 100644
--- a/appendices/VK_EXT_host_query_reset.adoc
+++ b/appendices/VK_EXT_host_query_reset.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_EXT_host_query_reset.adoc[]
2019-03-06
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Bas Nieuwenhuizen, Google
- Faith Ekstrand, Intel
diff --git a/appendices/VK_EXT_image_robustness.adoc b/appendices/VK_EXT_image_robustness.adoc
index 4d25d456..3e22446a 100644
--- a/appendices/VK_EXT_image_robustness.adoc
+++ b/appendices/VK_EXT_image_robustness.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_image_robustness.adoc[]
*Last Modified Date*::
2020-04-27
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_inline_uniform_block.adoc b/appendices/VK_EXT_inline_uniform_block.adoc
index 9f6c6a1b..71f48b29 100644
--- a/appendices/VK_EXT_inline_uniform_block.adoc
+++ b/appendices/VK_EXT_inline_uniform_block.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_inline_uniform_block.adoc[]
*Last Modified Date*::
2018-08-01
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_mesh_shader.adoc b/appendices/VK_EXT_mesh_shader.adoc
index ca54605d..d19a8659 100644
--- a/appendices/VK_EXT_mesh_shader.adoc
+++ b/appendices/VK_EXT_mesh_shader.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_EXT_mesh_shader.adoc[]
*Last Modified Date*::
2022-01-20
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_mesh_shader.html[`SPV_EXT_mesh_shader`]
- This extension provides API support for
https://github.com/KhronosGroup/GLSL/blob/master/extensions/ext/GLSL_EXT_mesh_shader.txt[`GLSL_EXT_mesh_shader`]
- Interacts with Vulkan 1.1
diff --git a/appendices/VK_EXT_multi_draw.adoc b/appendices/VK_EXT_multi_draw.adoc
index 2fc9a603..497d0b97 100644
--- a/appendices/VK_EXT_multi_draw.adoc
+++ b/appendices/VK_EXT_multi_draw.adoc
@@ -8,6 +8,9 @@ include::{generated}/meta/{refprefix}VK_EXT_multi_draw.adoc[]
*Last Modified Date*::
2021-05-19
+*Interactions and External Dependencies*::
+ - Interacts with Vulkan 1.1.
+ - Interacts with `apiext:VK_KHR_shader_draw_parameters`.
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_opacity_micromap.adoc b/appendices/VK_EXT_opacity_micromap.adoc
index b6a720bf..0f6a8123 100644
--- a/appendices/VK_EXT_opacity_micromap.adoc
+++ b/appendices/VK_EXT_opacity_micromap.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_EXT_opacity_micromap.adoc[]
*Last Modified Date*::
2022-08-24
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_opacity_micromap.html[`SPV_EXT_opacity_micromap`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_opacity_micromap.txt[`GLSL_EXT_opacity_micromap`]
*Contributors*::
diff --git a/appendices/VK_EXT_pipeline_creation_cache_control.adoc b/appendices/VK_EXT_pipeline_creation_cache_control.adoc
index 46f49793..21e6da87 100644
--- a/appendices/VK_EXT_pipeline_creation_cache_control.adoc
+++ b/appendices/VK_EXT_pipeline_creation_cache_control.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_pipeline_creation_cache_control.adoc
*Last Modified Date*::
2020-03-23
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_pipeline_creation_feedback.adoc b/appendices/VK_EXT_pipeline_creation_feedback.adoc
index ff8fdb20..dac4bd15 100644
--- a/appendices/VK_EXT_pipeline_creation_feedback.adoc
+++ b/appendices/VK_EXT_pipeline_creation_feedback.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_pipeline_creation_feedback.adoc[]
*Last Modified Date*::
2019-03-12
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_post_depth_coverage.adoc b/appendices/VK_EXT_post_depth_coverage.adoc
index 58e9bef0..a4071fd7 100644
--- a/appendices/VK_EXT_post_depth_coverage.adoc
+++ b/appendices/VK_EXT_post_depth_coverage.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_EXT_post_depth_coverage.adoc[]
*Last Modified Date*::
2017-07-17
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_post_depth_coverage.html[`SPV_KHR_post_depth_coverage`]
- This extension provides API support for
{GLregistry}/ARB/ARB_post_depth_coverage.txt[`GL_ARB_post_depth_coverage`]
and
diff --git a/appendices/VK_EXT_private_data.adoc b/appendices/VK_EXT_private_data.adoc
index cdf8a45f..3d3185c8 100644
--- a/appendices/VK_EXT_private_data.adoc
+++ b/appendices/VK_EXT_private_data.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_private_data.adoc[]
*Last Modified Date*::
2020-03-25
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_sampler_filter_minmax.adoc b/appendices/VK_EXT_sampler_filter_minmax.adoc
index a3cea86e..209c141b 100644
--- a/appendices/VK_EXT_sampler_filter_minmax.adoc
+++ b/appendices/VK_EXT_sampler_filter_minmax.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_sampler_filter_minmax.adoc[]
*Last Modified Date*::
2017-05-19
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_scalar_block_layout.adoc b/appendices/VK_EXT_scalar_block_layout.adoc
index 66f29035..3a059eff 100644
--- a/appendices/VK_EXT_scalar_block_layout.adoc
+++ b/appendices/VK_EXT_scalar_block_layout.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_scalar_block_layout.adoc[]
*Last Modified Date*::
2018-11-14
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Jeff Bolz
- Jan-Harald Fredriksen
diff --git a/appendices/VK_EXT_separate_stencil_usage.adoc b/appendices/VK_EXT_separate_stencil_usage.adoc
index e9a3bc28..99f9cdaa 100644
--- a/appendices/VK_EXT_separate_stencil_usage.adoc
+++ b/appendices/VK_EXT_separate_stencil_usage.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_separate_stencil_usage.adoc[]
*Last Modified Date*::
2018-11-08
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_shader_atomic_float.adoc b/appendices/VK_EXT_shader_atomic_float.adoc
index 9292ffca..ccf2917c 100644
--- a/appendices/VK_EXT_shader_atomic_float.adoc
+++ b/appendices/VK_EXT_shader_atomic_float.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_EXT_shader_atomic_float.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_shader_atomic_float_add.html[`SPV_EXT_shader_atomic_float_add`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_shader_atomic_float.txt[`GL_EXT_shader_atomic_float`]
*Contributors*::
diff --git a/appendices/VK_EXT_shader_atomic_float2.adoc b/appendices/VK_EXT_shader_atomic_float2.adoc
index 2ee46d35..ce3446b7 100644
--- a/appendices/VK_EXT_shader_atomic_float2.adoc
+++ b/appendices/VK_EXT_shader_atomic_float2.adoc
@@ -11,11 +11,6 @@ include::{generated}/meta/{refprefix}VK_EXT_shader_atomic_float2.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires the VK_EXT_shader_atomic_float extension.
- - This extension requires
- {spirv}/EXT/SPV_EXT_shader_atomic_float_min_max.html[`SPV_EXT_shader_atomic_float_min_max`]
- and
- {spirv}/EXT/SPV_EXT_shader_atomic_float16_add.html[`SPV_EXT_shader_atomic_float16_add`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_shader_atomic_float2.txt[`GLSL_EXT_shader_atomic_float2`]
*Contributors*::
diff --git a/appendices/VK_EXT_shader_demote_to_helper_invocation.adoc b/appendices/VK_EXT_shader_demote_to_helper_invocation.adoc
index 27bb4aae..29e29160 100644
--- a/appendices/VK_EXT_shader_demote_to_helper_invocation.adoc
+++ b/appendices/VK_EXT_shader_demote_to_helper_invocation.adoc
@@ -8,13 +8,9 @@ include::{generated}/meta/{refprefix}VK_EXT_shader_demote_to_helper_invocation.a
*Last Modified Date*::
2019-06-01
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_demote_to_helper_invocation.html[`SPV_EXT_demote_to_helper_invocation`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_demote_to_helper_invocation.txt[`GL_EXT_demote_to_helper_invocation`]
*Contributors*::
diff --git a/appendices/VK_EXT_shader_image_atomic_int64.adoc b/appendices/VK_EXT_shader_image_atomic_int64.adoc
index a3c724aa..cf905129 100644
--- a/appendices/VK_EXT_shader_image_atomic_int64.adoc
+++ b/appendices/VK_EXT_shader_image_atomic_int64.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_EXT_shader_image_atomic_int64.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_shader_image_int64.html[`SPV_EXT_shader_image_int64`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_shader_image_int64.txt[`GLSL_EXT_shader_image_int64`]
*Contributors*::
diff --git a/appendices/VK_EXT_shader_stencil_export.adoc b/appendices/VK_EXT_shader_stencil_export.adoc
index a31f7ea6..aadffffb 100644
--- a/appendices/VK_EXT_shader_stencil_export.adoc
+++ b/appendices/VK_EXT_shader_stencil_export.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_EXT_shader_stencil_export.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_shader_stencil_export.html[`SPV_EXT_shader_stencil_export`]
- This extension provides API support for
{GLregistry}/ARB/ARB_shader_stencil_export.txt[`GL_ARB_shader_stencil_export`]
*Contributors*::
diff --git a/appendices/VK_EXT_shader_subgroup_ballot.adoc b/appendices/VK_EXT_shader_subgroup_ballot.adoc
index 283a3aeb..53098bb2 100644
--- a/appendices/VK_EXT_shader_subgroup_ballot.adoc
+++ b/appendices/VK_EXT_shader_subgroup_ballot.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_EXT_shader_subgroup_ballot.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_shader_ballot.html[`SPV_KHR_shader_ballot`]
- This extension provides API support for
{GLregistry}/ARB/ARB_shader_ballot.txt[`GL_ARB_shader_ballot`]
*Contributors*::
diff --git a/appendices/VK_EXT_shader_subgroup_vote.adoc b/appendices/VK_EXT_shader_subgroup_vote.adoc
index 5a18e41b..fce8267a 100644
--- a/appendices/VK_EXT_shader_subgroup_vote.adoc
+++ b/appendices/VK_EXT_shader_subgroup_vote.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_EXT_shader_subgroup_vote.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_subgroup_vote.html[`SPV_KHR_subgroup_vote`]
- This extension provides API support for
{GLregistry}/ARB/ARB_shader_group_vote.txt[`GL_ARB_shader_group_vote`]
*Contributors*::
diff --git a/appendices/VK_EXT_shader_tile_image.adoc b/appendices/VK_EXT_shader_tile_image.adoc
index a0d2ff94..7f8baf19 100644
--- a/appendices/VK_EXT_shader_tile_image.adoc
+++ b/appendices/VK_EXT_shader_tile_image.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_EXT_shader_tile_image.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/EXT/SPV_EXT_shader_tile_image.html[`SPV_EXT_shader_tile_image`]
- This extension provides API support for
https://raw.githubusercontent.com/KhronosGroup/GLSL/master/extensions/ext/GLSL_EXT_shader_tile_image.txt[`GL_EXT_shader_tile_image`]
*Contributors*::
diff --git a/appendices/VK_EXT_shader_viewport_index_layer.adoc b/appendices/VK_EXT_shader_viewport_index_layer.adoc
index 14bc773e..7c623a40 100644
--- a/appendices/VK_EXT_shader_viewport_index_layer.adoc
+++ b/appendices/VK_EXT_shader_viewport_index_layer.adoc
@@ -9,9 +9,6 @@ include::{generated}/meta/{refprefix}VK_EXT_shader_viewport_index_layer.adoc[]
*Last Modified Date*::
2017-08-08
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
- - This extension requires
- {spirv}/EXT/SPV_EXT_shader_viewport_index_layer.html[`SPV_EXT_shader_viewport_index_layer`]
- This extension provides API support for
{GLregistry}/ARB/ARB_shader_viewport_layer_array.txt[`GL_ARB_shader_viewport_layer_array`],
{GLregistry}/AMD/AMD_vertex_shader_layer.txt[`GL_AMD_vertex_shader_layer`],
diff --git a/appendices/VK_EXT_subgroup_size_control.adoc b/appendices/VK_EXT_subgroup_size_control.adoc
index 2743de7d..e4adffe2 100644
--- a/appendices/VK_EXT_subgroup_size_control.adoc
+++ b/appendices/VK_EXT_subgroup_size_control.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_subgroup_size_control.adoc[]
*Last Modified Date*::
2019-03-05
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*Contributors*::
- Jeff Bolz, NVIDIA
- Faith Ekstrand, Intel
diff --git a/appendices/VK_EXT_texel_buffer_alignment.adoc b/appendices/VK_EXT_texel_buffer_alignment.adoc
index 6faf8d62..553c7003 100644
--- a/appendices/VK_EXT_texel_buffer_alignment.adoc
+++ b/appendices/VK_EXT_texel_buffer_alignment.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_texel_buffer_alignment.adoc[]
*Last Modified Date*::
2019-06-06
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_EXT_texture_compression_astc_hdr.adoc b/appendices/VK_EXT_texture_compression_astc_hdr.adoc
index 5eb9e9be..a52e8e66 100644
--- a/appendices/VK_EXT_texture_compression_astc_hdr.adoc
+++ b/appendices/VK_EXT_texture_compression_astc_hdr.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_texture_compression_astc_hdr.adoc[]
*Last Modified Date*::
2019-05-28
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known issues.
*Contributors*::
diff --git a/appendices/VK_EXT_tooling_info.adoc b/appendices/VK_EXT_tooling_info.adoc
index fc498fb1..ffa085c0 100644
--- a/appendices/VK_EXT_tooling_info.adoc
+++ b/appendices/VK_EXT_tooling_info.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_tooling_info.adoc[]
*Last Modified Date*::
2018-11-05
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*Contributors*::
- Rolando Caloca
- Matthaeus Chajdas
diff --git a/appendices/VK_EXT_ycbcr_2plane_444_formats.adoc b/appendices/VK_EXT_ycbcr_2plane_444_formats.adoc
index 82f32242..bcd918b1 100644
--- a/appendices/VK_EXT_ycbcr_2plane_444_formats.adoc
+++ b/appendices/VK_EXT_ycbcr_2plane_444_formats.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_EXT_ycbcr_2plane_444_formats.adoc[]
*Last Modified Date*::
2020-07-28
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_GOOGLE_decorate_string.adoc b/appendices/VK_GOOGLE_decorate_string.adoc
index 864ad4d1..e6fce0c5 100644
--- a/appendices/VK_GOOGLE_decorate_string.adoc
+++ b/appendices/VK_GOOGLE_decorate_string.adoc
@@ -10,9 +10,6 @@ include::{generated}/meta/{refprefix}VK_GOOGLE_decorate_string.adoc[]
2018-07-09
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/GOOGLE/SPV_GOOGLE_decorate_string.html[`SPV_GOOGLE_decorate_string`]
*Contributors*::
- Hai Nguyen, Google
- Neil Henning, AMD
diff --git a/appendices/VK_GOOGLE_hlsl_functionality1.adoc b/appendices/VK_GOOGLE_hlsl_functionality1.adoc
index 63cf0305..496c7cd2 100644
--- a/appendices/VK_GOOGLE_hlsl_functionality1.adoc
+++ b/appendices/VK_GOOGLE_hlsl_functionality1.adoc
@@ -10,9 +10,6 @@ include::{generated}/meta/{refprefix}VK_GOOGLE_hlsl_functionality1.adoc[]
2018-07-09
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/GOOGLE/SPV_GOOGLE_hlsl_functionality1.html[`SPV_GOOGLE_hlsl_functionality1`]
*Contributors*::
- Hai Nguyen, Google
- Neil Henning, AMD
diff --git a/appendices/VK_GOOGLE_user_type.adoc b/appendices/VK_GOOGLE_user_type.adoc
index 8e5fd6b1..cec559aa 100644
--- a/appendices/VK_GOOGLE_user_type.adoc
+++ b/appendices/VK_GOOGLE_user_type.adoc
@@ -10,9 +10,6 @@ include::{generated}/meta/{refprefix}VK_GOOGLE_user_type.adoc[]
2019-07-09
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/GOOGLE/SPV_GOOGLE_user_type.html[`SPV_GOOGLE_user_type`]
*Contributors*::
- Kaye Mason, Google
- Hai Nguyen, Google
diff --git a/appendices/VK_HUAWEI_cluster_culling_shader.adoc b/appendices/VK_HUAWEI_cluster_culling_shader.adoc
index b1f90c53..34b022da 100644
--- a/appendices/VK_HUAWEI_cluster_culling_shader.adoc
+++ b/appendices/VK_HUAWEI_cluster_culling_shader.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_HUAWEI_cluster_culling_shader.adoc[]
*Last Modified Date*::
2022-11-17
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/HUAWEI/SPV_HUAWEI_cluster_culling_shader.html[`SPV_HUAWEI_cluster_culling_shader`].
- This extension provides API support for
{GLSLregistry}/huawei/GLSL_HUAWEI_cluster_culling_shader.txt[`GL_HUAWEI_cluster_culling_shader`].
*Contributors*::
diff --git a/appendices/VK_HUAWEI_subpass_shading.adoc b/appendices/VK_HUAWEI_subpass_shading.adoc
index c6e581fd..b32e97f4 100644
--- a/appendices/VK_HUAWEI_subpass_shading.adoc
+++ b/appendices/VK_HUAWEI_subpass_shading.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_HUAWEI_subpass_shading.adoc[]
*Last Modified Date*::
2021-06-01
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/HUAWEI/SPV_HUAWEI_subpass_shading.html[`SPV_HUAWEI_subpass_shading`].
- This extension provides API support for
{GLSLregistry}/huawei/GLSL_HUAWEI_subpass_shading.txt[`GL_HUAWEI_subpass_shading`].
*Contributors*::
diff --git a/appendices/VK_INTEL_shader_integer_functions2.adoc b/appendices/VK_INTEL_shader_integer_functions2.adoc
index 44a29f95..9b2f1f44 100644
--- a/appendices/VK_INTEL_shader_integer_functions2.adoc
+++ b/appendices/VK_INTEL_shader_integer_functions2.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_INTEL_shader_integer_functions2.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/INTEL/SPV_INTEL_shader_integer_functions2.html[`SPV_INTEL_shader_integer_functions2`].
- This extension provides API support for
{GLregistry}/INTEL/INTEL_shader_integer_functions2.txt[`GL_INTEL_shader_integer_functions2`].
*Contributors*::
@@ -28,8 +26,8 @@ environment.
The added integer functions are defined by the
{spirv}/INTEL/SPV_INTEL_shader_integer_functions2.html[`SPV_INTEL_shader_integer_functions2`]
-SPIR-V extension and can be used with the GL_INTEL_shader_integer_functions2
-GLSL extension.
+SPIR-V extension and can be used with the
+`GL_INTEL_shader_integer_functions2` GLSL extension.
include::{generated}/interfaces/VK_INTEL_shader_integer_functions2.adoc[]
diff --git a/appendices/VK_KHR_16bit_storage.adoc b/appendices/VK_KHR_16bit_storage.adoc
index 03af3dd3..8e04525f 100644
--- a/appendices/VK_KHR_16bit_storage.adoc
+++ b/appendices/VK_KHR_16bit_storage.adoc
@@ -11,9 +11,6 @@ include::{generated}/meta/{refprefix}VK_KHR_16bit_storage.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
- - This extension requires
- {spirv}/KHR/SPV_KHR_16bit_storage.html[`SPV_KHR_16bit_storage`]
- This extension provides API support for
{GLSLregistry}/ext/GL_EXT_shader_16bit_storage.txt[`GL_EXT_shader_16bit_storage`]
*Contributors*::
diff --git a/appendices/VK_KHR_8bit_storage.adoc b/appendices/VK_KHR_8bit_storage.adoc
index c5201ea3..0e82896d 100644
--- a/appendices/VK_KHR_8bit_storage.adoc
+++ b/appendices/VK_KHR_8bit_storage.adoc
@@ -9,9 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_8bit_storage.adoc[]
*Last Modified Date*::
2018-02-05
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
- - This extension requires
- {spirv}/KHR/SPV_KHR_8bit_storage.html[`SPV_KHR_8bit_storage`]
- This extension provides API support for
{GLSLregistry}/ext/GL_EXT_shader_16bit_storage.txt[`GL_EXT_shader_16bit_storage`]
*IP Status*::
diff --git a/appendices/VK_KHR_bind_memory2.adoc b/appendices/VK_KHR_bind_memory2.adoc
index ef8ecae7..de14330b 100644
--- a/appendices/VK_KHR_bind_memory2.adoc
+++ b/appendices/VK_KHR_bind_memory2.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_bind_memory2.adoc[]
2017-09-05
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jeff Bolz, NVIDIA
- Tobias Hector, Imagination Technologies
diff --git a/appendices/VK_KHR_buffer_device_address.adoc b/appendices/VK_KHR_buffer_device_address.adoc
index 0bd4e9a0..b87f3401 100644
--- a/appendices/VK_KHR_buffer_device_address.adoc
+++ b/appendices/VK_KHR_buffer_device_address.adoc
@@ -11,9 +11,6 @@ include::{generated}/meta/{refprefix}VK_KHR_buffer_device_address.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
- - This extension requires
- {spirv}/KHR/SPV_KHR_physical_storage_buffer.html[`SPV_KHR_physical_storage_buffer`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_buffer_reference.txt[`GL_EXT_buffer_reference`]
and
diff --git a/appendices/VK_KHR_cooperative_matrix.adoc b/appendices/VK_KHR_cooperative_matrix.adoc
index eb709cdb..d3d3edc6 100644
--- a/appendices/VK_KHR_cooperative_matrix.adoc
+++ b/appendices/VK_KHR_cooperative_matrix.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_cooperative_matrix.adoc[]
*Last Modified Date*::
2023-05-03
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_cooperative_matrix.html[`SPV_KHR_cooperative_matrix`]
- This extension provides API support for
{GLSLregistry}/khr/GLSL_KHR_cooperative_matrix.txt[`GLSL_KHR_cooperative_matrix`]
*Contributors*::
diff --git a/appendices/VK_KHR_copy_commands2.adoc b/appendices/VK_KHR_copy_commands2.adoc
index c8d634b5..b78ebe41 100644
--- a/appendices/VK_KHR_copy_commands2.adoc
+++ b/appendices/VK_KHR_copy_commands2.adoc
@@ -8,10 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_copy_commands2.adoc[]
*Last Modified Date*::
2020-07-06
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
-*Interactions and External Dependencies*::
- - None
*Contributors*::
- Jeff Leger, Qualcomm
- Tobias Hector, AMD
diff --git a/appendices/VK_KHR_create_renderpass2.adoc b/appendices/VK_KHR_create_renderpass2.adoc
index 62c87c24..040356b3 100644
--- a/appendices/VK_KHR_create_renderpass2.adoc
+++ b/appendices/VK_KHR_create_renderpass2.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_create_renderpass2.adoc[]
*Last Modified Date*::
2018-02-07
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Tobias Hector
- Jeff Bolz
diff --git a/appendices/VK_KHR_dedicated_allocation.adoc b/appendices/VK_KHR_dedicated_allocation.adoc
index 1bcbdafa..45a3f34b 100644
--- a/appendices/VK_KHR_dedicated_allocation.adoc
+++ b/appendices/VK_KHR_dedicated_allocation.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_dedicated_allocation.adoc[]
2017-09-05
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jeff Bolz, NVIDIA
- Faith Ekstrand, Intel
diff --git a/appendices/VK_KHR_depth_stencil_resolve.adoc b/appendices/VK_KHR_depth_stencil_resolve.adoc
index 0b9352ef..11557589 100644
--- a/appendices/VK_KHR_depth_stencil_resolve.adoc
+++ b/appendices/VK_KHR_depth_stencil_resolve.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_depth_stencil_resolve.adoc[]
*Last Modified Date*::
2018-04-09
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Jan-Harald Fredriksen, Arm
- Andrew Garrard, Samsung Electronics
diff --git a/appendices/VK_KHR_descriptor_update_template.adoc b/appendices/VK_KHR_descriptor_update_template.adoc
index 4fa9b0c8..edd38006 100644
--- a/appendices/VK_KHR_descriptor_update_template.adoc
+++ b/appendices/VK_KHR_descriptor_update_template.adoc
@@ -12,7 +12,6 @@ include::{generated}/meta/{refprefix}VK_KHR_descriptor_update_template.adoc[]
No known IP claims.
*Interactions and External Dependencies*::
- Interacts with `apiext:VK_KHR_push_descriptor`
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jeff Bolz, NVIDIA
- Michael Worcester, Imagination Technologies
diff --git a/appendices/VK_KHR_device_group.adoc b/appendices/VK_KHR_device_group.adoc
index 01a73630..5d3a11ad 100644
--- a/appendices/VK_KHR_device_group.adoc
+++ b/appendices/VK_KHR_device_group.adoc
@@ -10,10 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_device_group.adoc[]
2017-10-10
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_device_group.html[`SPV_KHR_device_group`]
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jeff Bolz, NVIDIA
- Tobias Hector, Imagination Technologies
diff --git a/appendices/VK_KHR_device_group_creation.adoc b/appendices/VK_KHR_device_group_creation.adoc
index 41c44f92..85e01e59 100644
--- a/appendices/VK_KHR_device_group_creation.adoc
+++ b/appendices/VK_KHR_device_group_creation.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_device_group_creation.adoc[]
2016-10-19
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jeff Bolz, NVIDIA
diff --git a/appendices/VK_KHR_draw_indirect_count.adoc b/appendices/VK_KHR_draw_indirect_count.adoc
index c9b0f1bb..6ffe49d8 100644
--- a/appendices/VK_KHR_draw_indirect_count.adoc
+++ b/appendices/VK_KHR_draw_indirect_count.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_draw_indirect_count.adoc[]
*Last Modified Date*::
2017-08-25
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_KHR_driver_properties.adoc b/appendices/VK_KHR_driver_properties.adoc
index 9455c8e9..3f44845c 100644
--- a/appendices/VK_KHR_driver_properties.adoc
+++ b/appendices/VK_KHR_driver_properties.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_driver_properties.adoc[]
*Last Modified Date*::
2018-04-11
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_KHR_dynamic_rendering.adoc b/appendices/VK_KHR_dynamic_rendering.adoc
index de866f8e..fa30601b 100644
--- a/appendices/VK_KHR_dynamic_rendering.adoc
+++ b/appendices/VK_KHR_dynamic_rendering.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_dynamic_rendering.adoc[]
*Last Modified Date*::
2021-10-06
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*Contributors*::
- Tobias Hector, AMD
- Arseny Kapoulkine, Roblox
diff --git a/appendices/VK_KHR_external_fence.adoc b/appendices/VK_KHR_external_fence.adoc
index b00e63be..9e6b81ce 100644
--- a/appendices/VK_KHR_external_fence.adoc
+++ b/appendices/VK_KHR_external_fence.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_external_fence.adoc[]
2017-05-08
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jesse Hall, Google
- James Jones, NVIDIA
diff --git a/appendices/VK_KHR_external_fence_capabilities.adoc b/appendices/VK_KHR_external_fence_capabilities.adoc
index 722b6867..c64a28b6 100644
--- a/appendices/VK_KHR_external_fence_capabilities.adoc
+++ b/appendices/VK_KHR_external_fence_capabilities.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_external_fence_capabilities.adoc[]
2017-05-08
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jesse Hall, Google
- James Jones, NVIDIA
diff --git a/appendices/VK_KHR_external_memory.adoc b/appendices/VK_KHR_external_memory.adoc
index 07fe8add..3b19ec9a 100644
--- a/appendices/VK_KHR_external_memory.adoc
+++ b/appendices/VK_KHR_external_memory.adoc
@@ -13,7 +13,6 @@ include::{generated}/meta/{refprefix}VK_KHR_external_memory.adoc[]
*Interactions and External Dependencies*::
- Interacts with `apiext:VK_KHR_dedicated_allocation`.
- Interacts with `apiext:VK_NV_dedicated_allocation`.
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Faith Ekstrand, Intel
- Ian Elliott, Google
diff --git a/appendices/VK_KHR_external_memory_capabilities.adoc b/appendices/VK_KHR_external_memory_capabilities.adoc
index 3afe0aa4..5f893f80 100644
--- a/appendices/VK_KHR_external_memory_capabilities.adoc
+++ b/appendices/VK_KHR_external_memory_capabilities.adoc
@@ -13,7 +13,6 @@ include::{generated}/meta/{refprefix}VK_KHR_external_memory_capabilities.adoc[]
*Interactions and External Dependencies*::
- Interacts with `apiext:VK_KHR_dedicated_allocation`.
- Interacts with `apiext:VK_NV_dedicated_allocation`.
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Ian Elliott, Google
- Jesse Hall, Google
diff --git a/appendices/VK_KHR_external_semaphore.adoc b/appendices/VK_KHR_external_semaphore.adoc
index 7294247e..f09df09a 100644
--- a/appendices/VK_KHR_external_semaphore.adoc
+++ b/appendices/VK_KHR_external_semaphore.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_external_semaphore.adoc[]
2016-10-21
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Faith Ekstrand, Intel
- Jesse Hall, Google
diff --git a/appendices/VK_KHR_external_semaphore_capabilities.adoc b/appendices/VK_KHR_external_semaphore_capabilities.adoc
index 7e0eb22d..030bd864 100644
--- a/appendices/VK_KHR_external_semaphore_capabilities.adoc
+++ b/appendices/VK_KHR_external_semaphore_capabilities.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_external_semaphore_capabilities.adoc
2016-10-20
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jesse Hall, Google
- James Jones, NVIDIA
diff --git a/appendices/VK_KHR_format_feature_flags2.adoc b/appendices/VK_KHR_format_feature_flags2.adoc
index b2c8bf6d..b5e1cea3 100644
--- a/appendices/VK_KHR_format_feature_flags2.adoc
+++ b/appendices/VK_KHR_format_feature_flags2.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_format_feature_flags2.adoc[]
*Last Modified Date*::
2021-07-01
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_KHR_fragment_shader_barycentric.adoc b/appendices/VK_KHR_fragment_shader_barycentric.adoc
index 2edc7d68..1da7d9ef 100644
--- a/appendices/VK_KHR_fragment_shader_barycentric.adoc
+++ b/appendices/VK_KHR_fragment_shader_barycentric.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_KHR_fragment_shader_barycentric.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_fragment_shader_barycentric.html[`SPV_KHR_fragment_shader_barycentric`]
- This extension provides API support for
https://github.com/KhronosGroup/GLSL/blob/master/extensions/ext/GLSL_EXT_fragment_shader_barycentric.txt[`GL_EXT_fragment_shader_barycentric`]
*Contributors*::
diff --git a/appendices/VK_KHR_fragment_shading_rate.adoc b/appendices/VK_KHR_fragment_shading_rate.adoc
index ee394286..23a614c9 100644
--- a/appendices/VK_KHR_fragment_shading_rate.adoc
+++ b/appendices/VK_KHR_fragment_shading_rate.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_fragment_shading_rate.adoc[]
*Last Modified Date*::
2021-09-30
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_fragment_shading_rate.html[`SPV_KHR_fragment_shading_rate`].
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_fragment_shading_rate.txt[`GL_EXT_fragment_shading_rate`]
*Contributors*::
diff --git a/appendices/VK_KHR_get_memory_requirements2.adoc b/appendices/VK_KHR_get_memory_requirements2.adoc
index 4a95df10..9449b1ec 100644
--- a/appendices/VK_KHR_get_memory_requirements2.adoc
+++ b/appendices/VK_KHR_get_memory_requirements2.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_get_memory_requirements2.adoc[]
2017-09-05
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Faith Ekstrand, Intel
- Jeff Bolz, NVIDIA
diff --git a/appendices/VK_KHR_get_physical_device_properties2.adoc b/appendices/VK_KHR_get_physical_device_properties2.adoc
index fbffdcce..d2caee9f 100644
--- a/appendices/VK_KHR_get_physical_device_properties2.adoc
+++ b/appendices/VK_KHR_get_physical_device_properties2.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_get_physical_device_properties2.adoc
2017-09-05
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jeff Bolz, NVIDIA
- Ian Elliott, Google
diff --git a/appendices/VK_KHR_image_format_list.adoc b/appendices/VK_KHR_image_format_list.adoc
index 96a3ced1..1fba688c 100644
--- a/appendices/VK_KHR_image_format_list.adoc
+++ b/appendices/VK_KHR_image_format_list.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_image_format_list.adoc[]
*Last Modified Date*::
2017-03-20
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_KHR_imageless_framebuffer.adoc b/appendices/VK_KHR_imageless_framebuffer.adoc
index 30ed932d..9071264d 100644
--- a/appendices/VK_KHR_imageless_framebuffer.adoc
+++ b/appendices/VK_KHR_imageless_framebuffer.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_imageless_framebuffer.adoc[]
*Last Modified Date*::
2018-12-14
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Tobias Hector
- Graham Wihlidal
diff --git a/appendices/VK_KHR_maintenance1.adoc b/appendices/VK_KHR_maintenance1.adoc
index a8e26439..61070e9f 100644
--- a/appendices/VK_KHR_maintenance1.adoc
+++ b/appendices/VK_KHR_maintenance1.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_maintenance1.adoc[]
*Last Modified Date*::
2018-03-13
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Dan Ginsburg, Valve
- Daniel Koch, NVIDIA
diff --git a/appendices/VK_KHR_maintenance2.adoc b/appendices/VK_KHR_maintenance2.adoc
index 622d83bd..d0b3398c 100644
--- a/appendices/VK_KHR_maintenance2.adoc
+++ b/appendices/VK_KHR_maintenance2.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_maintenance2.adoc[]
*Last Modified Date*::
2017-09-05
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Michael Worcester, Imagination Technologies
- Stuart Smith, Imagination Technologies
diff --git a/appendices/VK_KHR_maintenance3.adoc b/appendices/VK_KHR_maintenance3.adoc
index 36f7cda3..6e38e38c 100644
--- a/appendices/VK_KHR_maintenance3.adoc
+++ b/appendices/VK_KHR_maintenance3.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_maintenance3.adoc[]
*Last Modified Date*::
2017-09-05
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Jeff Bolz, NVIDIA
diff --git a/appendices/VK_KHR_maintenance4.adoc b/appendices/VK_KHR_maintenance4.adoc
index 3be30bd7..86f977d0 100644
--- a/appendices/VK_KHR_maintenance4.adoc
+++ b/appendices/VK_KHR_maintenance4.adoc
@@ -9,7 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_maintenance4.adoc[]
*Last Modified Date*::
2021-10-25
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
- Requires SPIR-V 1.2 for code:LocalSizeId
*Contributors*::
- Lionel Duc, NVIDIA
diff --git a/appendices/VK_KHR_multiview.adoc b/appendices/VK_KHR_multiview.adoc
index f331c8df..d575f35e 100644
--- a/appendices/VK_KHR_multiview.adoc
+++ b/appendices/VK_KHR_multiview.adoc
@@ -11,9 +11,6 @@ include::{generated}/meta/{refprefix}VK_KHR_multiview.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
- - This extension requires
- {spirv}/KHR/SPV_KHR_multiview.html[`SPV_KHR_multiview`]
- This extension provides API support for
{GLSLregistry}/ext/GL_EXT_multiview.txt[`GL_EXT_multiview`]
*Contributors*::
diff --git a/appendices/VK_KHR_ray_query.adoc b/appendices/VK_KHR_ray_query.adoc
index 39f91f41..53a23e83 100644
--- a/appendices/VK_KHR_ray_query.adoc
+++ b/appendices/VK_KHR_ray_query.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_ray_query.adoc[]
*Last Modified Date*::
2020-11-12
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_ray_query.html[`SPV_KHR_ray_query`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_ray_query.txt[`GLSL_EXT_ray_query`]
*Contributors*::
diff --git a/appendices/VK_KHR_ray_tracing_maintenance1.adoc b/appendices/VK_KHR_ray_tracing_maintenance1.adoc
index 3ac6cb15..48d5a5a6 100644
--- a/appendices/VK_KHR_ray_tracing_maintenance1.adoc
+++ b/appendices/VK_KHR_ray_tracing_maintenance1.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_ray_tracing_maintenance1.adoc[]
*Last Modified Date*::
2022-02-21
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_ray_cull_mask.html[`SPV_KHR_ray_cull_mask`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_ray_cull_mask.txt[`GLSL_EXT_ray_cull_mask`]
- Interacts with `apiext:VK_KHR_ray_tracing_pipeline`
diff --git a/appendices/VK_KHR_ray_tracing_pipeline.adoc b/appendices/VK_KHR_ray_tracing_pipeline.adoc
index 15d3935f..3c27c264 100644
--- a/appendices/VK_KHR_ray_tracing_pipeline.adoc
+++ b/appendices/VK_KHR_ray_tracing_pipeline.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_ray_tracing_pipeline.adoc[]
*Last Modified Date*::
2020-11-12
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_ray_tracing.html[`SPV_KHR_ray_tracing`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_ray_tracing.txt[`GLSL_EXT_ray_tracing`]
- This extension interacts with <<versions-1.2, Vulkan 1.2>> and
diff --git a/appendices/VK_KHR_ray_tracing_position_fetch.adoc b/appendices/VK_KHR_ray_tracing_position_fetch.adoc
index 39b6831f..4772ecf4 100644
--- a/appendices/VK_KHR_ray_tracing_position_fetch.adoc
+++ b/appendices/VK_KHR_ray_tracing_position_fetch.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_ray_tracing_position_fetch.adoc[]
*Last Modified Date*::
2023-02-17
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_ray_tracing_position_fetch.html[`SPV_KHR_ray_tracing_position_fetch`]
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_ray_tracing_position_fetch.txt[`GLSL_EXT_ray_tracing_position_fetch`]
- Interacts with `apiext:VK_KHR_ray_tracing_pipeline`
diff --git a/appendices/VK_KHR_relaxed_block_layout.adoc b/appendices/VK_KHR_relaxed_block_layout.adoc
index 4c8b0ea8..1d7cdcfd 100644
--- a/appendices/VK_KHR_relaxed_block_layout.adoc
+++ b/appendices/VK_KHR_relaxed_block_layout.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_relaxed_block_layout.adoc[]
2017-03-26
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- John Kessenich, Google
diff --git a/appendices/VK_KHR_sampler_mirror_clamp_to_edge.adoc b/appendices/VK_KHR_sampler_mirror_clamp_to_edge.adoc
index 975f4753..9b211136 100644
--- a/appendices/VK_KHR_sampler_mirror_clamp_to_edge.adoc
+++ b/appendices/VK_KHR_sampler_mirror_clamp_to_edge.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_sampler_mirror_clamp_to_edge.adoc[]
*Last Modified Date*::
2019-08-17
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Tobias Hector, Imagination Technologies
- Jon Leech, Khronos
diff --git a/appendices/VK_KHR_sampler_ycbcr_conversion.adoc b/appendices/VK_KHR_sampler_ycbcr_conversion.adoc
index 86566bec..3eb87b79 100644
--- a/appendices/VK_KHR_sampler_ycbcr_conversion.adoc
+++ b/appendices/VK_KHR_sampler_ycbcr_conversion.adoc
@@ -10,8 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_sampler_ycbcr_conversion.adoc[]
2017-08-11
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Andrew Garrard, Samsung Electronics
- Tobias Hector, Imagination Technologies
diff --git a/appendices/VK_KHR_separate_depth_stencil_layouts.adoc b/appendices/VK_KHR_separate_depth_stencil_layouts.adoc
index 2667887a..93e19b26 100644
--- a/appendices/VK_KHR_separate_depth_stencil_layouts.adoc
+++ b/appendices/VK_KHR_separate_depth_stencil_layouts.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_separate_depth_stencil_layouts.adoc[
*Last Modified Date*::
2019-06-25
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Daniel Koch, NVIDIA
- Jeff Bolz, NVIDIA
diff --git a/appendices/VK_KHR_shader_atomic_int64.adoc b/appendices/VK_KHR_shader_atomic_int64.adoc
index bad0b2ae..c2ccd000 100644
--- a/appendices/VK_KHR_shader_atomic_int64.adoc
+++ b/appendices/VK_KHR_shader_atomic_int64.adoc
@@ -9,7 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_atomic_int64.adoc[]
*Last Modified Date*::
2018-07-05
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
- This extension provides API support for
{GLregistry}/ARB/ARB_gpu_shader_int64.txt[`GL_ARB_gpu_shader_int64`] and
{GLSLregistry}/ext/GL_EXT_shader_atomic_int64.txt[`GL_EXT_shader_atomic_int64`]
diff --git a/appendices/VK_KHR_shader_clock.adoc b/appendices/VK_KHR_shader_clock.adoc
index 8deccb0d..50982490 100644
--- a/appendices/VK_KHR_shader_clock.adoc
+++ b/appendices/VK_KHR_shader_clock.adoc
@@ -11,11 +11,9 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_clock.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_shader_clock.html[`SPV_KHR_shader_clock`].
- This extension provides API support for
- {GLregistry}/ARB/ARB_shader_clock.txt[`ARB_shader_clock`] and
- {GLSLregistry}/ext/GL_EXT_shader_realtime_clock.txt[`EXT_shader_realtime_clock`]
+ {GLregistry}/ARB/ARB_shader_clock.txt[`GL_ARB_shader_clock`] and
+ {GLSLregistry}/ext/GL_EXT_shader_realtime_clock.txt[`GL_EXT_shader_realtime_clock`]
*Contributors*::
- Aaron Hagan, AMD
- Daniel Koch, NVIDIA
diff --git a/appendices/VK_KHR_shader_draw_parameters.adoc b/appendices/VK_KHR_shader_draw_parameters.adoc
index 8f242f60..93d6ddac 100644
--- a/appendices/VK_KHR_shader_draw_parameters.adoc
+++ b/appendices/VK_KHR_shader_draw_parameters.adoc
@@ -11,11 +11,8 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_draw_parameters.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_shader_draw_parameters.html[`SPV_KHR_shader_draw_parameters`]
- This extension provides API support for
{GLregistry}/ARB/ARB_shader_draw_parameters.txt[`GL_ARB_shader_draw_parameters`]
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Daniel Koch, NVIDIA Corporation
- Jeff Bolz, NVIDIA
diff --git a/appendices/VK_KHR_shader_float16_int8.adoc b/appendices/VK_KHR_shader_float16_int8.adoc
index b4149ff2..0d56fef5 100644
--- a/appendices/VK_KHR_shader_float16_int8.adoc
+++ b/appendices/VK_KHR_shader_float16_int8.adoc
@@ -9,7 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_float16_int8.adoc[]
*Last Modified Date*::
2018-03-07
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
- This extension interacts with `apiext:VK_KHR_8bit_storage`
- This extension interacts with `apiext:VK_KHR_16bit_storage`
- This extension interacts with `apiext:VK_KHR_shader_float_controls`
diff --git a/appendices/VK_KHR_shader_float_controls.adoc b/appendices/VK_KHR_shader_float_controls.adoc
index 0dcae497..86a9a003 100644
--- a/appendices/VK_KHR_shader_float_controls.adoc
+++ b/appendices/VK_KHR_shader_float_controls.adoc
@@ -8,10 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_float_controls.adoc[]
*Last Modified Date*::
2018-09-11
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
- - This extension requires
- {spirv}/KHR/SPV_KHR_float_controls.html[`SPV_KHR_float_controls`]
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_KHR_shader_integer_dot_product.adoc b/appendices/VK_KHR_shader_integer_dot_product.adoc
index 48cad46c..38c6b544 100644
--- a/appendices/VK_KHR_shader_integer_dot_product.adoc
+++ b/appendices/VK_KHR_shader_integer_dot_product.adoc
@@ -9,9 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_integer_dot_product.adoc[]
*Last Modified Date*::
2021-06-16
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
- - This extension requires
- {spirv}/KHR/SPV_KHR_integer_dot_product.html[`SPV_KHR_integer_dot_product`].
- This extension interacts with `apiext:VK_KHR_shader_float16_int8`.
*IP Status*::
No known IP claims.
diff --git a/appendices/VK_KHR_shader_non_semantic_info.adoc b/appendices/VK_KHR_shader_non_semantic_info.adoc
index a2543339..115d0171 100644
--- a/appendices/VK_KHR_shader_non_semantic_info.adoc
+++ b/appendices/VK_KHR_shader_non_semantic_info.adoc
@@ -8,10 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_non_semantic_info.adoc[]
*Last Modified Date*::
2019-10-16
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
- - This extension requires
- {spirv}/KHR/SPV_KHR_non_semantic_info.html[`SPV_KHR_non_semantic_info`]
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_KHR_shader_subgroup_extended_types.adoc b/appendices/VK_KHR_shader_subgroup_extended_types.adoc
index 7b619a61..05e9a96f 100644
--- a/appendices/VK_KHR_shader_subgroup_extended_types.adoc
+++ b/appendices/VK_KHR_shader_subgroup_extended_types.adoc
@@ -11,7 +11,6 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_subgroup_extended_types.adoc[
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
- This extension provides API support for
{GLSLregistry}/ext/GLSL_EXT_shader_subgroup_extended_types.txt[`GLSL_EXT_shader_subgroup_extended_types`]
*Contributors*::
diff --git a/appendices/VK_KHR_shader_subgroup_uniform_control_flow.adoc b/appendices/VK_KHR_shader_subgroup_uniform_control_flow.adoc
index fb557095..1ba751da 100644
--- a/appendices/VK_KHR_shader_subgroup_uniform_control_flow.adoc
+++ b/appendices/VK_KHR_shader_subgroup_uniform_control_flow.adoc
@@ -12,8 +12,6 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_subgroup_uniform_control_flow
No known IP claims.
*Interactions and External Dependencies*::
- Requires SPIR-V 1.3.
- - This extension requires
- {spirv}/KHR/SPV_KHR_subgroup_uniform_control_flow.html[`SPV_KHR_subgroup_uniform_control_flow`]
- This extension provides API support for
{GLSLregistry}/ext/GL_EXT_subgroupuniform_qualifier.txt[`GL_EXT_subgroupuniform_qualifier`]
*Contributors*::
diff --git a/appendices/VK_KHR_shader_terminate_invocation.adoc b/appendices/VK_KHR_shader_terminate_invocation.adoc
index f0ed1b18..39ce1917 100644
--- a/appendices/VK_KHR_shader_terminate_invocation.adoc
+++ b/appendices/VK_KHR_shader_terminate_invocation.adoc
@@ -8,11 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_shader_terminate_invocation.adoc[]
*Last Modified Date*::
2020-08-11
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
- - Requires the
- {spirv}/KHR/SPV_KHR_terminate_invocation.html[`SPV_KHR_terminate_invocation`]
- SPIR-V extension.
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_KHR_spirv_1_4.adoc b/appendices/VK_KHR_spirv_1_4.adoc
index 695d4184..7965a8bf 100644
--- a/appendices/VK_KHR_spirv_1_4.adoc
+++ b/appendices/VK_KHR_spirv_1_4.adoc
@@ -12,7 +12,6 @@ include::{generated}/meta/{refprefix}VK_KHR_spirv_1_4.adoc[]
No known IP claims.
*Interactions and External Dependencies*::
- Requires SPIR-V 1.4.
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Alexander Galazin, Arm
- David Neto, Google
diff --git a/appendices/VK_KHR_storage_buffer_storage_class.adoc b/appendices/VK_KHR_storage_buffer_storage_class.adoc
index 636faddd..0f6a8bce 100644
--- a/appendices/VK_KHR_storage_buffer_storage_class.adoc
+++ b/appendices/VK_KHR_storage_buffer_storage_class.adoc
@@ -10,10 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_storage_buffer_storage_class.adoc[]
2017-09-05
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_storage_buffer_storage_class.html[`SPV_KHR_storage_buffer_storage_class`]
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- Alexander Galazin, ARM
- David Neto, Google
diff --git a/appendices/VK_KHR_synchronization2.adoc b/appendices/VK_KHR_synchronization2.adoc
index 65c8db15..375eef73 100644
--- a/appendices/VK_KHR_synchronization2.adoc
+++ b/appendices/VK_KHR_synchronization2.adoc
@@ -9,7 +9,6 @@ include::{generated}/meta/{refprefix}VK_KHR_synchronization2.adoc[]
*Last Modified Date*::
2020-12-03
*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
- Interacts with `apiext:VK_KHR_create_renderpass2`
*Contributors*::
- Tobias Hector
diff --git a/appendices/VK_KHR_timeline_semaphore.adoc b/appendices/VK_KHR_timeline_semaphore.adoc
index 46ceca44..77ea5dde 100644
--- a/appendices/VK_KHR_timeline_semaphore.adoc
+++ b/appendices/VK_KHR_timeline_semaphore.adoc
@@ -15,7 +15,6 @@ include::{generated}/meta/{refprefix}VK_KHR_timeline_semaphore.adoc[]
`apiext:VK_KHR_external_semaphore_capabilities`
- This extension interacts with `apiext:VK_KHR_external_semaphore`
- This extension interacts with `apiext:VK_KHR_external_semaphore_win32`
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Jeff Bolz, NVIDIA
- Yuriy O'Donnell, Epic Games
diff --git a/appendices/VK_KHR_uniform_buffer_standard_layout.adoc b/appendices/VK_KHR_uniform_buffer_standard_layout.adoc
index 153dfca9..77056d64 100644
--- a/appendices/VK_KHR_uniform_buffer_standard_layout.adoc
+++ b/appendices/VK_KHR_uniform_buffer_standard_layout.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_uniform_buffer_standard_layout.adoc[
*Last Modified Date*::
2019-01-25
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
*Contributors*::
- Graeme Leese, Broadcom
- Jeff Bolz, NVIDIA
diff --git a/appendices/VK_KHR_variable_pointers.adoc b/appendices/VK_KHR_variable_pointers.adoc
index 25474647..0e892e29 100644
--- a/appendices/VK_KHR_variable_pointers.adoc
+++ b/appendices/VK_KHR_variable_pointers.adoc
@@ -10,10 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_variable_pointers.adoc[]
2017-09-05
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_variable_pointers.html[`SPV_KHR_variable_pointers`]
- - Promoted to Vulkan 1.1 Core
*Contributors*::
- John Kessenich, Google
- Neil Henning, Codeplay
diff --git a/appendices/VK_KHR_vulkan_memory_model.adoc b/appendices/VK_KHR_vulkan_memory_model.adoc
index 4c3824c6..fe5357ac 100644
--- a/appendices/VK_KHR_vulkan_memory_model.adoc
+++ b/appendices/VK_KHR_vulkan_memory_model.adoc
@@ -10,10 +10,6 @@ include::{generated}/meta/{refprefix}VK_KHR_vulkan_memory_model.adoc[]
2018-12-10
*IP Status*::
No known IP claims.
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.2 Core
- - This extension requires
- {spirv}/KHR/SPV_KHR_vulkan_memory_model.html[`SPV_KHR_vulkan_memory_model`]
*Contributors*::
- Jeff Bolz, NVIDIA
- Alan Baker, Google
diff --git a/appendices/VK_KHR_workgroup_memory_explicit_layout.adoc b/appendices/VK_KHR_workgroup_memory_explicit_layout.adoc
index 5320b8cd..6498fa74 100644
--- a/appendices/VK_KHR_workgroup_memory_explicit_layout.adoc
+++ b/appendices/VK_KHR_workgroup_memory_explicit_layout.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_KHR_workgroup_memory_explicit_layout.ado
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/KHR/SPV_KHR_workgroup_memory_explicit_layout.html[`SPV_KHR_workgroup_memory_explicit_layout`]
- This extension provides API support for
{GLSLregistry}/ext/GL_EXT_shared_memory_block.txt[`GL_EXT_shared_memory_block`]
*Contributors*::
diff --git a/appendices/VK_KHR_zero_initialize_workgroup_memory.adoc b/appendices/VK_KHR_zero_initialize_workgroup_memory.adoc
index 9f0932b1..c9820751 100644
--- a/appendices/VK_KHR_zero_initialize_workgroup_memory.adoc
+++ b/appendices/VK_KHR_zero_initialize_workgroup_memory.adoc
@@ -8,8 +8,6 @@ include::{generated}/meta/{refprefix}VK_KHR_zero_initialize_workgroup_memory.ado
*Last Modified Date*::
2020-11-18
-*Interactions and External Dependencies*::
- - Promoted to Vulkan 1.3 Core
*IP Status*::
No known IP claims.
*Contributors*::
diff --git a/appendices/VK_NVX_multiview_per_view_attributes.adoc b/appendices/VK_NVX_multiview_per_view_attributes.adoc
index 03054c92..60e2084b 100644
--- a/appendices/VK_NVX_multiview_per_view_attributes.adoc
+++ b/appendices/VK_NVX_multiview_per_view_attributes.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_NVX_multiview_per_view_attributes.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NVX_multiview_per_view_attributes.html[`SPV_NVX_multiview_per_view_attributes`]
- This extension provides API support for
{GLSLregistry}/nvx/GL_NVX_multiview_per_view_attributes.txt[`GL_NVX_multiview_per_view_attributes`]
- This extension interacts with `apiext:VK_NV_viewport_array2`.
diff --git a/appendices/VK_NV_compute_shader_derivatives.adoc b/appendices/VK_NV_compute_shader_derivatives.adoc
index 7f9e98d8..ac5e090e 100644
--- a/appendices/VK_NV_compute_shader_derivatives.adoc
+++ b/appendices/VK_NV_compute_shader_derivatives.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_NV_compute_shader_derivatives.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_compute_shader_derivatives.html[`SPV_NV_compute_shader_derivatives`]
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_compute_shader_derivatives.txt[`GL_NV_compute_shader_derivatives`]
*Contributors*::
diff --git a/appendices/VK_NV_cooperative_matrix.adoc b/appendices/VK_NV_cooperative_matrix.adoc
index 6c36e748..7cca129c 100644
--- a/appendices/VK_NV_cooperative_matrix.adoc
+++ b/appendices/VK_NV_cooperative_matrix.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_cooperative_matrix.adoc[]
*Last Modified Date*::
2019-02-05
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_cooperative_matrix.html[`SPV_NV_cooperative_matrix`]
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_cooperative_matrix.txt[`GL_NV_cooperative_matrix`]
*Contributors*::
diff --git a/appendices/VK_NV_cuda_kernel_launch.adoc b/appendices/VK_NV_cuda_kernel_launch.adoc
index f64cdff2..df6bacfc 100644
--- a/appendices/VK_NV_cuda_kernel_launch.adoc
+++ b/appendices/VK_NV_cuda_kernel_launch.adoc
@@ -47,13 +47,12 @@ initialization of the CUDA module.
As with slink:VkPipelineCache, the binary cache depends on the hardware
architecture.
-Therefore the application must assume the cache might fail, and thus need to
-handle falling back to the original PTX code as necessary.
+The application must assume the cache might fail, and need to handle falling
+back to the original PTX code as necessary.
Most often, the cache will succeed if the same GPU driver and architecture
is used between the cache generation from PTX and the use of this cache.
-But most often, in the event of a new driver version or a if using a
-different GPU But in the event of a new driver version or if using a
-different GPU architecture, the cache is likely to become invalid.
+In the event of a new driver version, or if using a different GPU
+architecture, the cache is likely to become invalid.
include::{generated}/interfaces/VK_NV_cuda_kernel_launch.adoc[]
diff --git a/appendices/VK_NV_fragment_shader_barycentric.adoc b/appendices/VK_NV_fragment_shader_barycentric.adoc
index a09082f6..914148ee 100644
--- a/appendices/VK_NV_fragment_shader_barycentric.adoc
+++ b/appendices/VK_NV_fragment_shader_barycentric.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_NV_fragment_shader_barycentric.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_fragment_shader_barycentric.html[`SPV_NV_fragment_shader_barycentric`]
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_fragment_shader_barycentric.txt[`GL_NV_fragment_shader_barycentric`]
*Contributors*::
diff --git a/appendices/VK_NV_geometry_shader_passthrough.adoc b/appendices/VK_NV_geometry_shader_passthrough.adoc
index 31780011..c2c067b9 100644
--- a/appendices/VK_NV_geometry_shader_passthrough.adoc
+++ b/appendices/VK_NV_geometry_shader_passthrough.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_geometry_shader_passthrough.adoc[]
*Last Modified Date*::
2017-02-15
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_geometry_shader_passthrough.html[`SPV_NV_geometry_shader_passthrough`]
- This extension provides API support for
{GLregistry}/NV/NV_geometry_shader_passthrough.txt[`GL_NV_geometry_shader_passthrough`]
- This extension requires the pname:geometryShader feature.
diff --git a/appendices/VK_NV_low_latency2.adoc b/appendices/VK_NV_low_latency2.adoc
index 3461b361..93199bb6 100644
--- a/appendices/VK_NV_low_latency2.adoc
+++ b/appendices/VK_NV_low_latency2.adoc
@@ -40,5 +40,11 @@ Low Latency 2 does not support device groups.
=== Version History
+ * Revision 2, 2023-11-15 (Charles Hansen)
+ ** Update vkGetLatencyTimingsNV.
+ This is a breaking API change which brings behavior in line with other
+ array querying commands.
+ More background can be found in
+ https://github.com/KhronosGroup/Vulkan-Docs/issues/2269
* Revision 1, 2023-09-25 (Charles Hansen)
** Internal revisions
diff --git a/appendices/VK_NV_mesh_shader.adoc b/appendices/VK_NV_mesh_shader.adoc
index e5d18499..dc709076 100644
--- a/appendices/VK_NV_mesh_shader.adoc
+++ b/appendices/VK_NV_mesh_shader.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_mesh_shader.adoc[]
*Last Modified Date*::
2018-07-19
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_mesh_shader.html[`SPV_NV_mesh_shader`]
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_mesh_shader.txt[`GLSL_NV_mesh_shader`]
*Contributors*::
diff --git a/appendices/VK_NV_ray_tracing.adoc b/appendices/VK_NV_ray_tracing.adoc
index 38e35bff..a156c09b 100644
--- a/appendices/VK_NV_ray_tracing.adoc
+++ b/appendices/VK_NV_ray_tracing.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_ray_tracing.adoc[]
*Last Modified Date*::
2018-11-20
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_ray_tracing.html[`SPV_NV_ray_tracing`]
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_ray_tracing.txt[`GL_NV_ray_tracing`]
*Contributors*::
diff --git a/appendices/VK_NV_ray_tracing_invocation_reorder.adoc b/appendices/VK_NV_ray_tracing_invocation_reorder.adoc
index 3689b685..a981e371 100644
--- a/appendices/VK_NV_ray_tracing_invocation_reorder.adoc
+++ b/appendices/VK_NV_ray_tracing_invocation_reorder.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_ray_tracing_invocation_reorder.adoc[]
*Last Modified Date*::
2022-11-02
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_shader_invocation_reorder.html[`SPV_NV_shader_invocation_reorder`]
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_shader_invocation_reorder.txt[`GL_NV_shader_invocation_reorder`]
*Contributors*::
diff --git a/appendices/VK_NV_ray_tracing_motion_blur.adoc b/appendices/VK_NV_ray_tracing_motion_blur.adoc
index 0b460d99..0a9f8809 100644
--- a/appendices/VK_NV_ray_tracing_motion_blur.adoc
+++ b/appendices/VK_NV_ray_tracing_motion_blur.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_ray_tracing_motion_blur.adoc[]
*Last Modified Date*::
2021-06-16
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_ray_tracing_motion_blur.html[`SPV_NV_ray_tracing_motion_blur`]
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_ray_tracing_motion_blur.txt[`GL_NV_ray_tracing_motion_blur`]
*Contributors*::
diff --git a/appendices/VK_NV_sample_mask_override_coverage.adoc b/appendices/VK_NV_sample_mask_override_coverage.adoc
index d559a036..c804eaca 100644
--- a/appendices/VK_NV_sample_mask_override_coverage.adoc
+++ b/appendices/VK_NV_sample_mask_override_coverage.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_NV_sample_mask_override_coverage.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_sample_mask_override_coverage.html[`SPV_NV_sample_mask_override_coverage`]
- This extension provides API support for
{GLregistry}/NV/NV_sample_mask_override_coverage.txt[`GL_NV_sample_mask_override_coverage`]
*Contributors*::
diff --git a/appendices/VK_NV_shader_image_footprint.adoc b/appendices/VK_NV_shader_image_footprint.adoc
index ead314cc..966dbb10 100644
--- a/appendices/VK_NV_shader_image_footprint.adoc
+++ b/appendices/VK_NV_shader_image_footprint.adoc
@@ -11,8 +11,6 @@ include::{generated}/meta/{refprefix}VK_NV_shader_image_footprint.adoc[]
*IP Status*::
No known IP claims.
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_shader_image_footprint.html[`SPV_NV_shader_image_footprint`]
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_shader_texture_footprint.txt[`GL_NV_shader_texture_footprint`]
*Contributors*::
diff --git a/appendices/VK_NV_shader_sm_builtins.adoc b/appendices/VK_NV_shader_sm_builtins.adoc
index 924de5c9..e7d194d2 100644
--- a/appendices/VK_NV_shader_sm_builtins.adoc
+++ b/appendices/VK_NV_shader_sm_builtins.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_shader_sm_builtins.adoc[]
*Last Modified Date*::
2019-05-28
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_shader_sm_builtins.html[`SPV_NV_shader_sm_builtins`].
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_shader_sm_builtins.txt[`GL_NV_shader_sm_builtins`]
*Contributors*::
diff --git a/appendices/VK_NV_shader_subgroup_partitioned.adoc b/appendices/VK_NV_shader_subgroup_partitioned.adoc
index d9227737..2c43167d 100644
--- a/appendices/VK_NV_shader_subgroup_partitioned.adoc
+++ b/appendices/VK_NV_shader_subgroup_partitioned.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_shader_subgroup_partitioned.adoc[]
*Last Modified Date*::
2018-03-17
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_shader_subgroup_partitioned.html[`SPV_NV_shader_subgroup_partitioned`]
- This extension provides API support for
{GLSLregistry}/nv/GL_NV_shader_subgroup_partitioned.txt[`GL_NV_shader_subgroup_partitioned`]
*Contributors*::
diff --git a/appendices/VK_NV_shading_rate_image.adoc b/appendices/VK_NV_shading_rate_image.adoc
index 99372733..850036aa 100644
--- a/appendices/VK_NV_shading_rate_image.adoc
+++ b/appendices/VK_NV_shading_rate_image.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_shading_rate_image.adoc[]
*Last Modified Date*::
2019-07-18
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_shading_rate.html[`SPV_NV_shading_rate`]
- This extension provides API support for
{GLSLregistry}/nv/GLSL_NV_shading_rate_image.txt[`GL_NV_shading_rate_image`]
*Contributors*::
diff --git a/appendices/VK_NV_viewport_array2.adoc b/appendices/VK_NV_viewport_array2.adoc
index 6837aa75..b9b7c064 100644
--- a/appendices/VK_NV_viewport_array2.adoc
+++ b/appendices/VK_NV_viewport_array2.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_NV_viewport_array2.adoc[]
*Last Modified Date*::
2017-02-15
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/NV/SPV_NV_viewport_array2.html[`SPV_NV_viewport_array2`]
- This extension provides API support for
{GLregistry}/NV/NV_viewport_array2.txt[`GL_NV_viewport_array2`]
- This extension requires the pname:geometryShader and pname:multiViewport
diff --git a/appendices/VK_QCOM_image_processing.adoc b/appendices/VK_QCOM_image_processing.adoc
index 74a5f74f..cb7246a1 100644
--- a/appendices/VK_QCOM_image_processing.adoc
+++ b/appendices/VK_QCOM_image_processing.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_QCOM_image_processing.adoc[]
*Last Modified Date*::
2022-07-08
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/QCOM/SPV_QCOM_image_processing.html[`SPV_QCOM_image_processing`]
- This extension provides API support for
{GLSLregistry}/qcom/GLSL_QCOM_image_processing.txt[`GL_QCOM_image_processing`]
diff --git a/appendices/VK_QCOM_image_processing2.adoc b/appendices/VK_QCOM_image_processing2.adoc
index e23beaf4..c9f2d015 100644
--- a/appendices/VK_QCOM_image_processing2.adoc
+++ b/appendices/VK_QCOM_image_processing2.adoc
@@ -9,8 +9,6 @@ include::{generated}/meta/{refprefix}VK_QCOM_image_processing2.adoc[]
*Last Modified Date*::
2023-03-10
*Interactions and External Dependencies*::
- - This extension requires
- {spirv}/QCOM/SPV_QCOM_image_processing2.html[`SPV_QCOM_image_processing2`]
- This extension provides API support for
{GLSLregistry}/qcom/GLSL_QCOM_image_processing2.txt[`GL_QCOM_image_processing2`]
diff --git a/appendices/extensions.adoc b/appendices/extensions.adoc
index 20c7a19c..1bbaefc5 100644
--- a/appendices/extensions.adoc
+++ b/appendices/extensions.adoc
@@ -40,6 +40,7 @@ alphabetically by author ID.
Within each group, extensions are listed in alphabetical order by their
name.
+
== Extension Dependencies
Extensions which have dependencies on specific core versions or on other
@@ -57,6 +58,12 @@ extension requires only that any extensions that extension depends on be
supported at runtime.
+== Extension Interactions
+
+Some extensions define APIs which are only supported when other extensions
+or core versions are supported at runtime.
+Such interactions are noted as "`API Interactions`".
+
include::{generated}/meta/current_extensions_appendix.adoc[]
include::{generated}/meta/provisional_extensions_appendix.adoc[]
include::{generated}/meta/deprecated_extensions_appendix.adoc[]
diff --git a/chapters/VK_NV_cuda_kernel_launch/dispatch.adoc b/chapters/VK_NV_cuda_kernel_launch/dispatch.adoc
index cb6a0e6d..ae9f6a7b 100644
--- a/chapters/VK_NV_cuda_kernel_launch/dispatch.adoc
+++ b/chapters/VK_NV_cuda_kernel_launch/dispatch.adoc
@@ -88,6 +88,23 @@ include::{generated}/api/structs/VkCudaLaunchInfoNV.adoc[]
* pname:extraCount is reserved for future use.
* pname:pExtras is reserved for future use.
+Kernel parameters of pname:function are specified via pname:pParams, very
+much the same way as described in
+link:++https://docs.nvidia.com/cuda/cuda-driver-api/group__CUDA__EXEC.html#group__CUDA__EXEC_1gb8f3dc3031b40da29d5f9a7139e52e15++[cuLaunchKernel]
+
+If pname:function has N parameters, then pname:pParams must: be an array of
+N pointers and pname:paramCount must: be set to N. Each of
+pname:kernelParams[0] through pname:kernelParams[N-1] must: point to a
+region of memory from which the actual kernel parameter will be copied.
+The number of kernel parameters and their offsets and sizes are not
+specified here as that information is stored in the slink:VkCudaFunctionNV
+object.
+
+The application-owned memory pointed to by pname:pParams and
+pname:kernelParams[0] through pname:kernelParams[N-1] are consumed
+immediately, and may: be altered or freed after
+flink:vkCmdCudaLaunchKernelNV has returned.
+
.Valid Usage
****
* [[VUID-VkCudaLaunchInfoNV-gridDimX-09406]]
@@ -114,24 +131,9 @@ include::{generated}/api/structs/VkCudaLaunchInfoNV.adoc[]
include::{generated}/validity/structs/VkCudaLaunchInfoNV.adoc[]
--
-Kernel parameters of pname:function are specified via pname:pParams, very
-much the same way as described in
-link:++https://docs.nvidia.com/cuda/cuda-driver-api/group__CUDA__EXEC.html#group__CUDA__EXEC_1gb8f3dc3031b40da29d5f9a7139e52e15++[cuLaunchKernel]
-
-If pname:function has N parameters, then pname:pParams must: be an array of
-N pointers and pname:paramCount must: be set to N. Each of
-pname:kernelParams[0] through pname:kernelParams[N-1] must: point to a
-region of memory from which the actual kernel parameter will be copied.
-The number of kernel parameters and their offsets and sizes are not
-specified here as that information is stored in the slink:VkCudaFunctionNV
-object.
-The application-owned memory pointed to by pname:pParams and
-pname:kernelParams[0] through pname:kernelParams[N-1] are consumed
-immediately, and may: be altered or freed after
-flink:vkCmdCudaLaunchKernelNV has returned.
[[cudadispatch_sharing_resources]]
-=== Resources sharing from Vulkan to the CUDA Kernel
+=== Resource Sharing from Vulkan to the CUDA Kernel
Given that one key limitation of this extension is that Vulkan cannot:
access, nor bind any global resource of CUDA modules, the only way to
@@ -141,15 +143,14 @@ of the function__.
ifdef::VK_KHR_buffer_device_address[]
You can use apiext:VK_KHR_buffer_device_address to write/read to/from a
slink:VkBuffer object.
-<<VK_KHR_buffer_device_address>> allows you to get the device address of the
-buffer to pass it as an argument into pname:pParams.
+apiext:VK_KHR_buffer_device_address allows you to get the device address of
+the buffer to pass it as an argument into pname:pParams.
Application-side pointer arithmetic on the device address is legal, but will
not be bounds-checked on the device.
The corresponding argument of the CUDA function should: be declared as a
pointer of the same type as the referenced buffer.
-And the CUDA code may: simply read or write to this buffer in the typical C
-way.
+CUDA code may: simply read or write to this buffer in the typical C way.
endif::VK_KHR_buffer_device_address[]
@@ -160,10 +161,10 @@ to read/write from/to a slink:VkImage.
The corresponding argument of the CUDA function must: be typed as
`cudaSurfaceObject_t`.
- * You may: then read from it by using the CUDA surface-read functions such
- as `surf3Dread`/`surf2Dread`/`surf1Dread`
- * You may: then write to it by using the CUDA surface-write functions such
- as `surf3Dwrite`/`surf2Dwrite`/`surf1Dwrite`
+ * You may: read from it by using CUDA surface-read functions such as
+ `surf3Dread`, `surf2Dread`, and `surf1Dread`
+ * You may: write to it by using CUDA surface-write functions such as
+ `surf3Dwrite`, `surf2Dwrite`, and `surf1Dwrite`
Please refer to CUDA
link:https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html%23surface-object-api-appendix[surface
diff --git a/chapters/VK_NV_cuda_kernel_launch/module.adoc b/chapters/VK_NV_cuda_kernel_launch/module.adoc
index e8ea51cf..3f739f13 100644
--- a/chapters/VK_NV_cuda_kernel_launch/module.adoc
+++ b/chapters/VK_NV_cuda_kernel_launch/module.adoc
@@ -33,11 +33,10 @@ include::{generated}/api/protos/vkCreateCudaModuleNV.adoc[]
* pname:pModule is a pointer to a slink:VkCudaModuleNV handle in which the
resulting CUDA module object is returned.
-Once a CUDA module has been created, you may: create the function entry
-point that must: refer to one function in the module.
+Once a CUDA module has been created, the application may: create the
+function entry point, which must: refer to one function in the module.
include::{generated}/validity/protos/vkCreateCudaModuleNV.adoc[]
-
--
[open,refpage='VkCudaModuleCreateInfoNV',desc='Structure specifying the parameters to create a CUDA Module',type='structs']
@@ -100,9 +99,9 @@ The sname:VkCudaFunctionCreateInfoNV structure is defined as:
include::{generated}/api/structs/VkCudaFunctionCreateInfoNV.adoc[]
* pname:sType is a elink:VkStructureType value identifying this structure.
- * pname:pNext may: be `NULL` or may: be a pointer to a structure extending
- this structure.
- * pname:module must: be the CUDA slink:VkCudaModuleNV module in which the
+ * pname:pNext is `NULL` or a pointer to a structure extending this
+ structure.
+ * pname:module is the CUDA slink:VkCudaModuleNV module in which the
function resides.
* pname:pName is a null-terminated UTF-8 string containing the name of the
shader entry point for this stage.
@@ -169,72 +168,61 @@ include::{generated}/api/protos/vkGetCudaModuleCacheNV.adoc[]
* pname:pCacheData is a pointer to a buffer in which to copy the binary
cache
-.Valid Usage
-****
- * [[VUID-vkGetCudaModuleCacheNV-pCacheSize-09414]]
- pname:pCacheSize must: be a pointer containing the amount of bytes to be
- copied in pname:pCacheData.
- If pname:pCacheData is NULL, the function will return in this pointer
- the total amount of bytes required to later perform the copy into
- pname:pCacheData.
- * [[VUID-vkGetCudaModuleCacheNV-pCacheData-09415]]
- pname:pCacheData may: be a pointer to a buffer in which the binary cache
- will be copied.
- The amount of bytes copied is defined by the value in pname:pCacheSize.
- This pointer may: be NULL.
- In this case, the function will write the total amount of required data
- in pname:pCacheSize.
-****
-
-include::{generated}/validity/protos/vkGetCudaModuleCacheNV.adoc[]
---
-
-A typical use of vkGetCudaModuleCacheNV happens in two steps:
-
- * First call it without with pname:pCacheData set to NULL and with a valid
- pointer pname:pCacheSize.
- * Another call with a valid pname:pCacheData pointing to the expected size
- returned by pname:pCacheSize, and pname:pCacheSize containing the amount
- in bytes to copy.
+If pname:pCacheData is `NULL`, then the size of the binary cache, in bytes,
+is returned in pname:pCacheSize.
+Otherwise, pname:pCacheSize must: point to a variable set by the user to the
+size of the buffer, in bytes, pointed to by pname:pCacheData, and on return
+the variable is overwritten with the amount of data actually written to
+pname:pCacheData.
+If pname:pCacheSize is less than the size of the binary shader code, nothing
+is written to pname:pCacheData, and ename:VK_INCOMPLETE will be returned
+instead of ename:VK_SUCCESS.
The returned cache may: then be used later for further initialization of the
-CUDA module, by sending this cache _instead_ of the PTX code, when using
+CUDA module, by sending this cache _instead_ of the PTX code when using
flink:vkCreateCudaModuleNV.
+[NOTE]
+.Note
+====
Using the binary cache instead of the original PTX code should:
significantly speed up initialization of the CUDA module, given that the
whole compilation and validation will not be necessary.
As with slink:VkPipelineCache, the binary cache depends on the specific
implementation.
-Therefore the application must: assume the cache upload might fail in many
+The application must: assume the cache upload might fail in many
circumstances and thus may: have to get ready for falling back to the
original PTX code if necessary.
Most often, the cache may: succeed if the same device driver and
architecture is used between the cache generation from PTX and the use of
this cache.
-But most of the time, in the event of a new driver version or a if using a
-different device architecture, this cache may: become invalid.
+In the event of a new driver version or if using a different device
+architecture, this cache may: become invalid.
+====
+
+include::{generated}/validity/protos/vkGetCudaModuleCacheNV.adoc[]
+--
[[cuda-modules-limitations]]
=== Limitations
-CUDA and Vulkan do not use the device in the same configuration, therefore,
-few limitations must be taken into account:
+CUDA and Vulkan do not use the device in the same configuration.
+The following limitations must: be taken into account:
* It is not possible to read or write global parameters from Vulkan.
The only way to share resources or send values to the PTX kernel is to
pass them as arguments of the function.
See <<cudadispatch_sharing_resources, Resources sharing between CUDA
Kernel and Vulkan>> for more details.
- * No calls to functions external to the module PTX are supported
+ * No calls to functions external to the module PTX are supported.
* Vulkan disables some shader/kernel exceptions, which could break CUDA
- kernels relying on exceptions
+ kernels relying on exceptions.
* CUDA kernels submitted to Vulkan are limited to the amount of shared
- memory you can query from physical capabilities.
- It may be less than what CUDA can offer
- * CUDA instruction-level preemption (CILP) does not work
+ memory, which can be queried from the physical capabilities.
+ It may be less than what CUDA can offer.
+ * CUDA instruction-level preemption (CILP) does not work.
* CUDA Unified Memory will not work in this extension.
- * CUDA Dynamic parallelism is not supported
- * DispatchIndirect not available
+ * CUDA Dynamic parallelism is not supported.
+ * ftext:vk*DispatchIndirect is not available.
diff --git a/chapters/VK_NV_low_latency2/low_latency2.adoc b/chapters/VK_NV_low_latency2/low_latency2.adoc
index 12822ef0..85cfeed9 100644
--- a/chapters/VK_NV_low_latency2/low_latency2.adoc
+++ b/chapters/VK_NV_low_latency2/low_latency2.adoc
@@ -195,9 +195,6 @@ include::{generated}/api/protos/vkGetLatencyTimingsNV.adoc[]
* pname:device is the device associated with pname:swapchain.
* pname:swapchain is the swapchain to return data from.
- * pname:pTimingCount is a pointer to an integer related to the number of
- of previous frames of latency data available or queried, as described
- below.
* pname:pGetLatencyMarkerInfo is a pointer to a
slink:VkGetLatencyMarkerInfoNV structure specifying the parameters for
returning latency information.
@@ -206,12 +203,6 @@ The timings returned by fname:vkGetLatencyTimingsNV contain the timestamps
requested from flink:vkSetLatencyMarkerNV and additional
implementation-specific markers defined in
slink:VkLatencyTimingsFrameReportNV.
-If pname:pTimings is `NULL`, then the maximum number of queryable frame data
-is returned in pname:pTimingCount.
-Otherwise, pname:pTimingCount must: point to a variable set by the user to
-the number of elements in the pname:pTimings array in
-pname:pGetLatencyMarkerInfo, and on return the variable is overwritten with
-the number of values actually written to pname:pTimings.
include::{generated}/validity/protos/vkGetLatencyTimingsNV.adoc[]
--
@@ -225,9 +216,16 @@ include::{generated}/api/structs/VkGetLatencyMarkerInfoNV.adoc[]
* pname:sType is a elink:VkStructureType value identifying this structure.
* pname:pNext is either `NULL` or a pointer to a structure extending this
structure.
+ * pname:timingCount is an integer related to the number of of previous
+ frames of latency data available or queried, as described below.
* pname:pTimings is either `NULL` or a pointer to an array of
slink:VkLatencyTimingsFrameReportNV structures.
+If pname:pTimings is `NULL` then the maximum number of queryable frame data
+is returned in pname:timingCount.
+Otherwise, pname:timingCount must: be set by the user to the number of
+elements in the pname:pTimings array, and on return the variable is
+overwritten with the number of values actually written to pname:pTimings.
The elements of pname:pTimings are arranged in the order they were requested
in, with the oldest data in the first entry.
diff --git a/chapters/commonvalidity/get_image_subresource_layout_common.adoc b/chapters/commonvalidity/get_image_subresource_layout_common.adoc
index 35560214..89f033fd 100644
--- a/chapters/commonvalidity/get_image_subresource_layout_common.adoc
+++ b/chapters/commonvalidity/get_image_subresource_layout_common.adoc
@@ -4,69 +4,52 @@
// Common Valid Usage
// Common to vkGetImageSubresourceLayout and vkGetImageSubresourceLayout2EXT
+// Also common to VkDeviceImageSubresourceInfoKHR which has different image param
* [[VUID-{refpage}-aspectMask-00997]]
The pname:aspectMask member of pname:pSubresource must: only have a
single bit set
* [[VUID-{refpage}-mipLevel-01716]]
The pname:mipLevel member of pname:pSubresource must: be less than the
- pname:mipLevels specified in slink:VkImageCreateInfo when pname:image
- was created
+ pname:mipLevels specified in pname:{imageparam}
* [[VUID-{refpage}-arrayLayer-01717]]
The pname:arrayLayer member of pname:pSubresource must: be less than the
- pname:arrayLayers specified in slink:VkImageCreateInfo when pname:image
- was created
+ pname:arrayLayers specified in pname:{imageparam}
ifdef::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
* [[VUID-{refpage}-format-08886]]
- If pname:format of the pname:image is a color format, pname:tiling of
- the pname:image is ename:VK_IMAGE_TILING_LINEAR or
- ename:VK_IMAGE_TILING_OPTIMAL, and does not have a
+ If pname:format of the pname:{imageparam} is a color format,
+ pname:tiling of the pname:{imageparam} is ename:VK_IMAGE_TILING_LINEAR
+ or ename:VK_IMAGE_TILING_OPTIMAL, and does not have a
<<formats-requiring-sampler-ycbcr-conversion, multi-planar image
format>>, the pname:aspectMask member of pname:pSubresource must: be
ename:VK_IMAGE_ASPECT_COLOR_BIT
endif::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
ifndef::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
* [[VUID-{refpage}-format-08887]]
- If pname:format of the pname:image is a color format and pname:tiling of
- the pname:image is ename:VK_IMAGE_TILING_LINEAR or
- ename:VK_IMAGE_TILING_OPTIMAL, the pname:aspectMask member of
+ If pname:format of the pname:{imageparam} is a color format and
+ pname:tiling of the pname:{imageparam} is ename:VK_IMAGE_TILING_LINEAR
+ or ename:VK_IMAGE_TILING_OPTIMAL, the pname:aspectMask member of
pname:pSubresource must: be ename:VK_IMAGE_ASPECT_COLOR_BIT
endif::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
* [[VUID-{refpage}-format-04462]]
- If pname:format of the pname:image has a depth component, the
+ If pname:format of the pname:{imageparam} has a depth component, the
pname:aspectMask member of pname:pSubresource must: contain
ename:VK_IMAGE_ASPECT_DEPTH_BIT
* [[VUID-{refpage}-format-04463]]
- If pname:format of the pname:image has a stencil component, the
+ If pname:format of the pname:{imageparam} has a stencil component, the
pname:aspectMask member of pname:pSubresource must: contain
ename:VK_IMAGE_ASPECT_STENCIL_BIT
* [[VUID-{refpage}-format-04464]]
- If pname:format of the pname:image does not contain a stencil or depth
- component, the pname:aspectMask member of pname:pSubresource must: not
- contain ename:VK_IMAGE_ASPECT_DEPTH_BIT or
+ If pname:format of the pname:{imageparam} does not contain a stencil or
+ depth component, the pname:aspectMask member of pname:pSubresource must:
+ not contain ename:VK_IMAGE_ASPECT_DEPTH_BIT or
ename:VK_IMAGE_ASPECT_STENCIL_BIT
ifdef::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
* [[VUID-{refpage}-tiling-08717]]
- If the pname:tiling of the pname:image is ename:VK_IMAGE_TILING_LINEAR
- and has a <<formats-requiring-sampler-ycbcr-conversion, multi-planar
- image format>>, then the pname:aspectMask member of pname:pSubresource
- must: be a single valid <<formats-planes-image-aspect,multi-planar
- aspect mask>> bit
+ If the pname:tiling of the pname:{imageparam} is
+ ename:VK_IMAGE_TILING_LINEAR and has a
+ <<formats-requiring-sampler-ycbcr-conversion, multi-planar image
+ format>>, then the pname:aspectMask member of pname:pSubresource must:
+ be a single valid <<formats-planes-image-aspect,multi-planar aspect
+ mask>> bit
endif::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
-ifdef::VK_ANDROID_external_memory_android_hardware_buffer[]
- * [[VUID-{refpage}-image-01895]]
- If pname:image was created with the
- ename:VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
- external memory handle type, then pname:image must: be bound to memory
-endif::VK_ANDROID_external_memory_android_hardware_buffer[]
-ifdef::VK_EXT_image_drm_format_modifier[]
- * [[VUID-{refpage}-tiling-02271]]
- If the pname:tiling of the pname:image is
- ename:VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, then the pname:aspectMask
- member of pname:pSubresource must: be
- `VK_IMAGE_ASPECT_MEMORY_PLANE__{ibit}__BIT_EXT` and the index _i_ must:
- be less than the
- slink:VkDrmFormatModifierPropertiesEXT::pname:drmFormatModifierPlaneCount
- associated with the image's pname:format and
- slink:VkImageDrmFormatModifierPropertiesEXT::pname:drmFormatModifier
-endif::VK_EXT_image_drm_format_modifier[]
// Common Valid Usage
diff --git a/chapters/commonvalidity/image_layout_transition_common.adoc b/chapters/commonvalidity/image_layout_transition_common.adoc
index 208e33c7..efd03b85 100644
--- a/chapters/commonvalidity/image_layout_transition_common.adoc
+++ b/chapters/commonvalidity/image_layout_transition_common.adoc
@@ -29,16 +29,14 @@
* [[VUID-{refpage}-image-01932]]
If pname:image is non-sparse then it must: be bound completely and
contiguously to a single sname:VkDeviceMemory object
-ifndef::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
- * [[VUID-{refpage}-image-02902]]
- If pname:image has a color format, then the pname:aspectMask member of
- pname:subresourceRange must: be ename:VK_IMAGE_ASPECT_COLOR_BIT
-endif::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
-ifdef::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
* [[VUID-{refpage}-image-09241]]
- If pname:image has a color format that is single-plane, then the
- pname:aspectMask member of pname:subresourceRange must: be
+ If pname:image has a color format
+ifdef::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
+ that is single-plane,
+endif::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
+ then the pname:aspectMask member of pname:subresourceRange must: be
ename:VK_IMAGE_ASPECT_COLOR_BIT
+ifdef::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
* [[VUID-{refpage}-image-09242]]
If pname:image has a color format and is not _disjoint_, then the
pname:aspectMask member of pname:subresourceRange must: be
@@ -49,13 +47,15 @@ ifdef::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
at least one <<formats-planes-image-aspect,multi-planar aspect mask>>
bit or ename:VK_IMAGE_ASPECT_COLOR_BIT
endif::VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion[]
-ifndef::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[]
- * [[VUID-{refpage}-image-01207]]
+ * [[VUID-{refpage}-image-03320]]
If pname:image has a depth/stencil format with both depth and stencil
- components, then the pname:aspectMask member of pname:subresourceRange
- must: include both ename:VK_IMAGE_ASPECT_DEPTH_BIT and
- ename:VK_IMAGE_ASPECT_STENCIL_BIT
+ifdef::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[]
+ and the <<features-separateDepthStencilLayouts,
+ pname:separateDepthStencilLayouts>> feature is not enabled,
endif::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[]
+ then the pname:aspectMask member of pname:subresourceRange must: include
+ both ename:VK_IMAGE_ASPECT_DEPTH_BIT and
+ ename:VK_IMAGE_ASPECT_STENCIL_BIT
ifdef::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[]
* [[VUID-{refpage}-image-03319]]
If pname:image has a depth/stencil format with both depth and stencil
@@ -64,12 +64,6 @@ ifdef::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[]
pname:aspectMask member of pname:subresourceRange must: include either
or both ename:VK_IMAGE_ASPECT_DEPTH_BIT and
ename:VK_IMAGE_ASPECT_STENCIL_BIT
- * [[VUID-{refpage}-image-03320]]
- If pname:image has a depth/stencil format with both depth and stencil
- and the <<features-separateDepthStencilLayouts,
- pname:separateDepthStencilLayouts>> feature is not enabled, then the
- pname:aspectMask member of pname:subresourceRange must: include both
- ename:VK_IMAGE_ASPECT_DEPTH_BIT and ename:VK_IMAGE_ASPECT_STENCIL_BIT
* [[VUID-{refpage}-aspectMask-08702]]
If the pname:aspectMask member of pname:subresourceRange includes
ename:VK_IMAGE_ASPECT_DEPTH_BIT, pname:oldLayout and pname:newLayout
diff --git a/chapters/commonvalidity/query_pool_count_common.adoc b/chapters/commonvalidity/query_pool_count_common.adoc
new file mode 100644
index 00000000..a91e3c2e
--- /dev/null
+++ b/chapters/commonvalidity/query_pool_count_common.adoc
@@ -0,0 +1,10 @@
+// Copyright 2023 The Khronos Group Inc.
+//
+// SPDX-License-Identifier: CC-BY-4.0
+
+// Common include
+ * pname:firstQuery must: be less than the number of queries in
+ pname:queryPool
+ * The sum of pname:firstQuery and pname:queryCount must: be less than or
+ equal to the number of queries in pname:queryPool
+// Common include
diff --git a/chapters/commonvalidity/query_results_common.adoc b/chapters/commonvalidity/query_results_common.adoc
new file mode 100644
index 00000000..bca535a1
--- /dev/null
+++ b/chapters/commonvalidity/query_results_common.adoc
@@ -0,0 +1,30 @@
+// Copyright 2023 The Khronos Group Inc.
+//
+// SPDX-License-Identifier: CC-BY-4.0
+
+// Common include
+ * If pname:queryCount is greater than 1, pname:stride must: not be zero
+ * If the pname:queryType used to create pname:queryPool was
+ ename:VK_QUERY_TYPE_TIMESTAMP, pname:flags must: not contain
+ ename:VK_QUERY_RESULT_PARTIAL_BIT
+ifdef::VK_KHR_performance_query[]
+ * If the pname:queryType used to create pname:queryPool was
+ ename:VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, pname:flags must: not contain
+ ename:VK_QUERY_RESULT_WITH_AVAILABILITY_BIT,
+ifdef::VK_KHR_video_queue[]
+ ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR,
+endif::VK_KHR_video_queue[]
+ ename:VK_QUERY_RESULT_PARTIAL_BIT, or ename:VK_QUERY_RESULT_64_BIT
+ * If the pname:queryType used to create pname:queryPool was
+ ename:VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, the pname:queryPool must:
+ have been recorded once for each pass as retrieved via a call to
+ flink:vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR
+endif::VK_KHR_performance_query[]
+ifdef::VK_KHR_video_queue[]
+ * If the pname:queryType used to create pname:queryPool was
+ ename:VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR, then pname:flags must:
+ include ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR
+ * If pname:flags includes ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR, then
+ it must: not include ename:VK_QUERY_RESULT_WITH_AVAILABILITY_BIT
+endif::VK_KHR_video_queue[]
+// Common include
diff --git a/chapters/dispatch.adoc b/chapters/dispatch.adoc
index 04f9c151..223a27dd 100644
--- a/chapters/dispatch.adoc
+++ b/chapters/dispatch.adoc
@@ -230,4 +230,4 @@ endif::VK_HUAWEI_subpass_shading[]
ifdef::VK_NV_cuda_kernel_launch[]
include::{chapters}/VK_NV_cuda_kernel_launch/dispatch.adoc[]
-endif::VK_NV_cuda_kernel_launch[] \ No newline at end of file
+endif::VK_NV_cuda_kernel_launch[]
diff --git a/chapters/features.adoc b/chapters/features.adoc
index 7f746e94..d1614a8d 100644
--- a/chapters/features.adoc
+++ b/chapters/features.adoc
@@ -7124,11 +7124,9 @@ This structure describes the following feature:
include::{chapters}/features.adoc[tag=features]
include::{generated}/validity/structs/VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV.adoc[]
-
--
endif::VK_NV_descriptor_pool_overallocation[]
-
ifdef::VK_NV_cuda_kernel_launch[]
[open,refpage='VkPhysicalDeviceCudaKernelLaunchFeaturesNV',desc='Structure describing whether cuda kernel launch is supported by the implementation',type='structs']
--
diff --git a/chapters/limits.adoc b/chapters/limits.adoc
index e705ce03..27f00ca6 100644
--- a/chapters/limits.adoc
+++ b/chapters/limits.adoc
@@ -4363,7 +4363,6 @@ include::{generated}/validity/structs/VkPhysicalDeviceExtendedSparseAddressSpace
endif::VK_NV_extended_sparse_address_space[]
ifdef::VK_NV_cuda_kernel_launch[]
-
[open,refpage='VkPhysicalDeviceCudaKernelLaunchPropertiesNV',desc='Structure describing the compute capability version available',type='structs']
--
The sname:VkPhysicalDeviceCudaKernelLaunchPropertiesNV structure is defined
@@ -4384,7 +4383,6 @@ include::{chapters}/limits.adoc[tag=limits_desc]
include::{generated}/validity/structs/VkPhysicalDeviceCudaKernelLaunchPropertiesNV.adoc[]
--
-
endif::VK_NV_cuda_kernel_launch[]
ifdef::VK_ANDROID_external_format_resolve[]
diff --git a/chapters/pipelines.adoc b/chapters/pipelines.adoc
index 4529c6d9..b5b1c1e2 100644
--- a/chapters/pipelines.adoc
+++ b/chapters/pipelines.adoc
@@ -4659,13 +4659,13 @@ ifdef::VK_EXT_attachment_feedback_loop_layout[]
endif::VK_EXT_attachment_feedback_loop_layout[]
ifdef::VK_EXT_opacity_micromap[]
* ename:VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT
- specifies that the pipeline can: be used with acceleration structures
- which reference an opacity micromap array.
+ specifies that the ray tracing pipeline can: be used with acceleration
+ structures which reference an opacity micromap array.
endif::VK_EXT_opacity_micromap[]
ifdef::VK_NV_displacement_micromap[]
* ename:VK_PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV
- specifies that the pipeline can: be used with aceleration structures
- which reference a displacement micromap array.
+ specifies that the ray tracing pipeline can: be used with acceleration
+ structures which reference a displacement micromap array.
endif::VK_NV_displacement_micromap[]
ifdef::VK_EXT_pipeline_protected_access[]
* ename:VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXT specifies that
@@ -4911,13 +4911,13 @@ endif::VK_EXT_attachment_feedback_loop_dynamic_state[]
endif::VK_EXT_attachment_feedback_loop_layout[]
ifdef::VK_EXT_opacity_micromap[]
* ename:VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT specifies
- that the pipeline can: be used with acceleration structures which
- reference an opacity micromap array.
+ that the ray tracing pipeline can: be used with acceleration structures
+ which reference an opacity micromap array.
endif::VK_EXT_opacity_micromap[]
ifdef::VK_NV_displacement_micromap[]
* ename:VK_PIPELINE_CREATE_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV
- specifies that the pipeline can: be used with aceleration structures
- which reference a displacement micromap array.
+ specifies that the ray tracing pipeline can: be used with acceleration
+ structures which reference a displacement micromap array.
endif::VK_NV_displacement_micromap[]
ifdef::VK_EXT_pipeline_protected_access[]
* ename:VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT specifies that the
diff --git a/chapters/queries.adoc b/chapters/queries.adoc
index a1f967af..d7aadc91 100644
--- a/chapters/queries.adoc
+++ b/chapters/queries.adoc
@@ -435,12 +435,7 @@ endif::VK_KHR_performance_query[]
.Valid Usage
****
- * [[VUID-vkCmdResetQueryPool-firstQuery-00796]]
- pname:firstQuery must: be less than the number of queries in
- pname:queryPool
- * [[VUID-vkCmdResetQueryPool-firstQuery-00797]]
- The sum of pname:firstQuery and pname:queryCount must: be less than or
- equal to the number of queries in pname:queryPool
+include::{chapters}/commonvalidity/query_pool_count_common.adoc[]
* [[VUID-vkCmdResetQueryPool-None-02841]]
All queries used by the command must: not be active
ifdef::VK_KHR_performance_query[]
@@ -489,15 +484,10 @@ endif::VK_KHR_performance_query[]
.Valid Usage
****
+include::{chapters}/commonvalidity/query_pool_count_common.adoc[]
* [[VUID-vkResetQueryPool-None-02665]]
The <<features-hostQueryReset, pname:hostQueryReset>> feature must: be
enabled
- * [[VUID-vkResetQueryPool-firstQuery-02666]]
- pname:firstQuery must: be less than the number of queries in
- pname:queryPool
- * [[VUID-vkResetQueryPool-firstQuery-02667]]
- The sum of pname:firstQuery and pname:queryCount must: be less than or
- equal to the number of queries in pname:queryPool
* [[VUID-vkResetQueryPool-firstQuery-02741]]
Submitted commands that refer to the range specified by pname:firstQuery
and pname:queryCount in pname:queryPool must: have completed execution
@@ -1222,11 +1212,10 @@ include::{chapters}/commonvalidity/no_dynamic_allocations_common.adoc[]
.Valid Usage
****
+include::{chapters}/commonvalidity/query_pool_count_common.adoc[]
+include::{chapters}/commonvalidity/query_results_common.adoc[]
* [[VUID-vkGetQueryPoolResults-None-09401]]
All queries used by the command must: not be uninitialized
- * [[VUID-vkGetQueryPoolResults-firstQuery-00813]]
- pname:firstQuery must: be less than the number of queries in
- pname:queryPool
* [[VUID-vkGetQueryPoolResults-flags-02828]]
If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags
ifdef::VK_KHR_performance_query[]
@@ -1257,40 +1246,9 @@ ifdef::VK_KHR_performance_query[]
to create pname:queryPool times the size of
slink:VkPerformanceCounterResultKHR
endif::VK_KHR_performance_query[]
- * [[VUID-vkGetQueryPoolResults-firstQuery-00816]]
- The sum of pname:firstQuery and pname:queryCount must: be less than or
- equal to the number of queries in pname:queryPool
* [[VUID-vkGetQueryPoolResults-dataSize-00817]]
pname:dataSize must: be large enough to contain the result of each
query, as described <<queries-operation-memorylayout,here>>
- * [[VUID-vkGetQueryPoolResults-queryType-00818]]
- If the pname:queryType used to create pname:queryPool was
- ename:VK_QUERY_TYPE_TIMESTAMP, pname:flags must: not contain
- ename:VK_QUERY_RESULT_PARTIAL_BIT
-ifdef::VK_KHR_performance_query[]
- * [[VUID-vkGetQueryPoolResults-queryType-03230]]
- If the pname:queryType used to create pname:queryPool was
- ename:VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, pname:flags must: not contain
- ename:VK_QUERY_RESULT_WITH_AVAILABILITY_BIT,
-ifdef::VK_KHR_video_queue[]
- ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR,
-endif::VK_KHR_video_queue[]
- ename:VK_QUERY_RESULT_PARTIAL_BIT, or ename:VK_QUERY_RESULT_64_BIT
- * [[VUID-vkGetQueryPoolResults-queryType-03231]]
- If the pname:queryType used to create pname:queryPool was
- ename:VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, the pname:queryPool must:
- have been recorded once for each pass as retrieved via a call to
- flink:vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR
-endif::VK_KHR_performance_query[]
-ifdef::VK_KHR_video_queue[]
- * [[VUID-vkGetQueryPoolResults-queryType-04810]]
- If the pname:queryType used to create pname:queryPool was
- ename:VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR, then pname:flags must:
- include ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR
- * [[VUID-vkGetQueryPoolResults-flags-04811]]
- If pname:flags includes ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR, then
- it must: not include ename:VK_QUERY_RESULT_WITH_AVAILABILITY_BIT
-endif::VK_KHR_video_queue[]
****
include::{generated}/validity/protos/vkGetQueryPoolResults.adoc[]
@@ -1468,17 +1426,13 @@ before using the results.
.Valid Usage
****
+include::{chapters}/commonvalidity/query_pool_count_common.adoc[]
+include::{chapters}/commonvalidity/query_results_common.adoc[]
* [[VUID-vkCmdCopyQueryPoolResults-None-09402]]
All queries used by the command must: not be uninitialized when the
command is executed
* [[VUID-vkCmdCopyQueryPoolResults-dstOffset-00819]]
pname:dstOffset must: be less than the size of pname:dstBuffer
- * [[VUID-vkCmdCopyQueryPoolResults-firstQuery-00820]]
- pname:firstQuery must: be less than the number of queries in
- pname:queryPool
- * [[VUID-vkCmdCopyQueryPoolResults-firstQuery-00821]]
- The sum of pname:firstQuery and pname:queryCount must: be less than or
- equal to the number of queries in pname:queryPool
* [[VUID-vkCmdCopyQueryPoolResults-flags-00822]]
If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags then
pname:dstOffset and pname:stride must: be multiples of `4`
@@ -1495,29 +1449,12 @@ before using the results.
* [[VUID-vkCmdCopyQueryPoolResults-dstBuffer-00826]]
If pname:dstBuffer is non-sparse then it must: be bound completely and
contiguously to a single sname:VkDeviceMemory object
- * [[VUID-vkCmdCopyQueryPoolResults-queryType-00827]]
- If the pname:queryType used to create pname:queryPool was
- ename:VK_QUERY_TYPE_TIMESTAMP, pname:flags must: not contain
- ename:VK_QUERY_RESULT_PARTIAL_BIT
ifdef::VK_KHR_performance_query[]
* [[VUID-vkCmdCopyQueryPoolResults-queryType-03232]]
If the pname:queryType used to create pname:queryPool was
ename:VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR,
slink:VkPhysicalDevicePerformanceQueryPropertiesKHR::pname:allowCommandBufferQueryCopies
must: be ename:VK_TRUE
- * [[VUID-vkCmdCopyQueryPoolResults-queryType-03233]]
- If the pname:queryType used to create pname:queryPool was
- ename:VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, pname:flags must: not contain
- ename:VK_QUERY_RESULT_WITH_AVAILABILITY_BIT,
-ifdef::VK_KHR_video_queue[]
- ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR,
-endif::VK_KHR_video_queue[]
- ename:VK_QUERY_RESULT_PARTIAL_BIT, or ename:VK_QUERY_RESULT_64_BIT
- * [[VUID-vkCmdCopyQueryPoolResults-queryType-03234]]
- If the pname:queryType used to create pname:queryPool was
- ename:VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, the pname:queryPool must:
- have been submitted once for each pass as retrieved via a call to
- flink:vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR
endif::VK_KHR_performance_query[]
ifdef::VK_INTEL_performance_query[]
* [[VUID-vkCmdCopyQueryPoolResults-queryType-02734]]
@@ -1525,15 +1462,6 @@ ifdef::VK_INTEL_performance_query[]
pname:queryType used to create pname:queryPool was
ename:VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL
endif::VK_INTEL_performance_query[]
-ifdef::VK_KHR_video_queue[]
- * [[VUID-vkCmdCopyQueryPoolResults-queryType-06901]]
- If the pname:queryType used to create pname:queryPool was
- ename:VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR, then pname:flags must:
- include ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR
- * [[VUID-vkCmdCopyQueryPoolResults-flags-06902]]
- If pname:flags includes ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR, then
- it must: not include ename:VK_QUERY_RESULT_WITH_AVAILABILITY_BIT
-endif::VK_KHR_video_queue[]
* [[VUID-vkCmdCopyQueryPoolResults-None-07429]]
All queries used by the command must: not be active
* [[VUID-vkCmdCopyQueryPoolResults-None-08752]]
diff --git a/chapters/renderpass.adoc b/chapters/renderpass.adoc
index 82512b5a..17009411 100644
--- a/chapters/renderpass.adoc
+++ b/chapters/renderpass.adoc
@@ -5993,14 +5993,16 @@ pass.
structure specified when creating pname:framebuffer
* [[VUID-VkRenderPassBeginInfo-None-08996]]
ifdef::VK_VERSION_1_1,VK_KHR_device_group[]
- If slink:VkDeviceGroupRenderPassBeginInfo::pname:deviceRenderAreaCount
- is 0,
+ If the pname:pNext chain does not contain
+ slink:VkDeviceGroupRenderPassBeginInfo or its
+ pname:deviceRenderAreaCount member is equal to 0,
endif::VK_VERSION_1_1,VK_KHR_device_group[]
pname:renderArea.extent.width must: be greater than 0
* [[VUID-VkRenderPassBeginInfo-None-08997]]
ifdef::VK_VERSION_1_1,VK_KHR_device_group[]
- If slink:VkDeviceGroupRenderPassBeginInfo::pname:deviceRenderAreaCount
- is 0,
+ If the pname:pNext chain does not contain
+ slink:VkDeviceGroupRenderPassBeginInfo or its
+ pname:deviceRenderAreaCount member is equal to 0,
endif::VK_VERSION_1_1,VK_KHR_device_group[]
pname:renderArea.extent.height must: be greater than 0
* [[VUID-VkRenderPassBeginInfo-pNext-02850]]
diff --git a/chapters/resources.adoc b/chapters/resources.adoc
index dd361f5d..ff3c48e3 100644
--- a/chapters/resources.adoc
+++ b/chapters/resources.adoc
@@ -3457,6 +3457,8 @@ memory, so applications must: not call flink:vkGetImageSubresourceLayout for
such an image before it has been bound.
endif::VK_ANDROID_external_memory_android_hardware_buffer,VK_QNX_external_memory_screen_buffer[]
+:imageparam: image
+
.Valid Usage
****
ifndef::VK_EXT_image_drm_format_modifier[]
@@ -3471,6 +3473,23 @@ ifdef::VK_EXT_image_drm_format_modifier[]
ename:VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT
endif::VK_EXT_image_drm_format_modifier[]
include::{chapters}/commonvalidity/get_image_subresource_layout_common.adoc[]
+ifdef::VK_ANDROID_external_memory_android_hardware_buffer[]
+ * [[VUID-vkGetImageSubresourceLayout-image-09432]]
+ If pname:image was created with the
+ ename:VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
+ external memory handle type, then pname:image must: be bound to memory
+endif::VK_ANDROID_external_memory_android_hardware_buffer[]
+ifdef::VK_EXT_image_drm_format_modifier[]
+ * [[VUID-vkGetImageSubresourceLayout-tiling-09433]]
+ If the pname:tiling of the pname:image is
+ ename:VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, then the pname:aspectMask
+ member of pname:pSubresource must: be
+ `VK_IMAGE_ASPECT_MEMORY_PLANE__{ibit}__BIT_EXT` and the index _i_ must:
+ be less than the
+ slink:VkDrmFormatModifierPropertiesEXT::pname:drmFormatModifierPlaneCount
+ associated with the image's pname:format and
+ slink:VkImageDrmFormatModifierPropertiesEXT::pname:drmFormatModifier
+endif::VK_EXT_image_drm_format_modifier[]
****
include::{generated}/validity/protos/vkGetImageSubresourceLayout.adoc[]
@@ -3656,9 +3675,28 @@ Structures chained from slink:VkImageSubresource2KHR::pname:pNext will also
be updated when pname:tiling is equal to ename:VK_IMAGE_TILING_OPTIMAL.
====
+:imageparam: image
+
.Valid Usage
****
include::{chapters}/commonvalidity/get_image_subresource_layout_common.adoc[]
+ifdef::VK_ANDROID_external_memory_android_hardware_buffer[]
+ * [[VUID-vkGetImageSubresourceLayout2KHR-image-09434]]
+ If pname:image was created with the
+ ename:VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
+ external memory handle type, then pname:image must: be bound to memory
+endif::VK_ANDROID_external_memory_android_hardware_buffer[]
+ifdef::VK_EXT_image_drm_format_modifier[]
+ * [[VUID-vkGetImageSubresourceLayout2KHR-tiling-09435]]
+ If the pname:tiling of the pname:image is
+ ename:VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, then the pname:aspectMask
+ member of pname:pSubresource must: be
+ `VK_IMAGE_ASPECT_MEMORY_PLANE__{ibit}__BIT_EXT` and the index _i_ must:
+ be less than the
+ slink:VkDrmFormatModifierPropertiesEXT::pname:drmFormatModifierPlaneCount
+ associated with the image's pname:format and
+ slink:VkImageDrmFormatModifierPropertiesEXT::pname:drmFormatModifier
+endif::VK_EXT_image_drm_format_modifier[]
****
include::{generated}/validity/protos/vkGetImageSubresourceLayout2KHR.adoc[]
@@ -3780,6 +3818,8 @@ include::{generated}/api/structs/VkDeviceImageSubresourceInfoKHR.adoc[]
slink:VkImageSubresource2KHR structure selecting a specific image
subresource for the query.
+:imageparam: pCreateInfo
+
.Valid Usage
****
include::{chapters}/commonvalidity/get_image_subresource_layout_common.adoc[]
diff --git a/chapters/sparsemem.adoc b/chapters/sparsemem.adoc
index 7ebe0f40..f4d6c048 100644
--- a/chapters/sparsemem.adoc
+++ b/chapters/sparsemem.adoc
@@ -933,7 +933,7 @@ include::{generated}/api/protos/vkGetPhysicalDeviceSparseImageFormatProperties.a
* pname:physicalDevice is the physical device from which to query the
sparse image format properties.
* pname:format is the image format.
- * pname:type is the dimensionality of image.
+ * pname:type is the dimensionality of the image.
* pname:samples is a elink:VkSampleCountFlagBits value specifying the
number of samples per texel.
* pname:usage is a bitmask describing the intended usage of the image.
@@ -1035,7 +1035,7 @@ endif::VK_KHR_get_physical_device_properties2[]
* pname:pNext is `NULL` or a pointer to a structure extending this
structure.
* pname:format is the image format.
- * pname:type is the dimensionality of image.
+ * pname:type is the dimensionality of the image.
* pname:samples is a elink:VkSampleCountFlagBits value specifying the
number of samples per texel.
* pname:usage is a bitmask describing the intended usage of the image.
diff --git a/chapters/synchronization.adoc b/chapters/synchronization.adoc
index 67d003ed..c7fb0e20 100644
--- a/chapters/synchronization.adoc
+++ b/chapters/synchronization.adoc
@@ -4039,19 +4039,15 @@ endif::VK_NV_external_sci_sync2[]
.Valid Usage
****
-ifndef::VK_NV_external_sci_sync2[]
- * [[VUID-vkDestroySemaphore-semaphore-01137]]
- All submitted batches that refer to pname:semaphore must: have completed
- execution
-endif::VK_NV_external_sci_sync2[]
-ifdef::VK_NV_external_sci_sync2[]
* [[VUID-vkDestroySemaphore-semaphore-05149]]
+ifdef::VK_NV_external_sci_sync2[]
If pname:semaphore was not created with
slink:VkSemaphoreSciSyncCreateInfoNV present in the
slink:VkSemaphoreCreateInfo::pname:pNext chain when it was created, all
+endif::VK_NV_external_sci_sync2[]
+ifndef::VK_NV_external_sci_sync2[All]
submitted batches that refer to pname:semaphore must: have completed
execution
-endif::VK_NV_external_sci_sync2[]
ifndef::VKSC_VERSION_1_0[]
* [[VUID-vkDestroySemaphore-semaphore-01138]]
If sname:VkAllocationCallbacks were provided when pname:semaphore was
diff --git a/chapters/vertexpostproc.adoc b/chapters/vertexpostproc.adoc
index 2c39ffa2..0dd04187 100644
--- a/chapters/vertexpostproc.adoc
+++ b/chapters/vertexpostproc.adoc
@@ -346,7 +346,14 @@ feedback buffer will not be captured.
containing
ename:VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT
* [[VUID-vkCmdBeginTransformFeedbackEXT-None-06233]]
- A valid graphics pipeline must: be bound to
+ifdef::VK_EXT_shader_object[]
+ If the <<features-shaderObject, pname:shaderObject>> feature is not
+ enabled, a
+endif::VK_EXT_shader_object[]
+ifndef::VK_EXT_shader_object[]
+ A
+endif::VK_EXT_shader_object[]
+ valid graphics pipeline must: be bound to
ename:VK_PIPELINE_BIND_POINT_GRAPHICS
* [[VUID-vkCmdBeginTransformFeedbackEXT-None-04128]]
The last
diff --git a/proposals/VK_EXT_depth_bias_control.adoc b/proposals/VK_EXT_depth_bias_control.adoc
index 932e0bc7..30059c99 100644
--- a/proposals/VK_EXT_depth_bias_control.adoc
+++ b/proposals/VK_EXT_depth_bias_control.adoc
@@ -2,7 +2,7 @@
//
// SPDX-License-Identifier: CC-BY-4.0
-= Proposal Template
+= VK_EXT_depth_bias_control
:toc: left
:refpage: https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/
:sectnums:
diff --git a/proposals/VK_EXT_opacity_micromap.adoc b/proposals/VK_EXT_opacity_micromap.adoc
index ec816cdf..13ef2a5f 100644
--- a/proposals/VK_EXT_opacity_micromap.adoc
+++ b/proposals/VK_EXT_opacity_micromap.adoc
@@ -2,7 +2,7 @@
//
// SPDX-License-Identifier: CC-BY-4.0
-= Proposal Template
+= VK_EXT_opacity_micromap
:toc: left
:refpage: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/
:sectnums:
diff --git a/proposals/VK_KHR_maintenance5.adoc b/proposals/VK_KHR_maintenance5.adoc
index e8736acb..142a4a66 100644
--- a/proposals/VK_KHR_maintenance5.adoc
+++ b/proposals/VK_KHR_maintenance5.adoc
@@ -2,7 +2,7 @@
//
// SPDX-License-Identifier: CC-BY-4.0
-= Proposal Template
+= VK_KHR_maintenance5
:toc: left
:refpage: https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/
:sectnums:
diff --git a/proposals/VK_MSFT_layered_driver.adoc b/proposals/VK_MSFT_layered_driver.adoc
index 0561f917..03aa41aa 100644
--- a/proposals/VK_MSFT_layered_driver.adoc
+++ b/proposals/VK_MSFT_layered_driver.adoc
@@ -2,7 +2,7 @@
//
// SPDX-License-Identifier: CC-BY-4.0
-= Proposal Template
+= VK_MSFT_layered_driver
:toc: left
:refpage: https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/
:sectnums:
diff --git a/registry.adoc b/registry.adoc
index ff173280..22584d0e 100644
--- a/registry.adoc
+++ b/registry.adoc
@@ -635,6 +635,7 @@ Explicitly specifying `optional="false"` is not supported, but
Valid values:
** `"min"` and `"max"` denote minimum and maximum limits.
They may also apply to arrays and `VkExtent*D`.
+ ** `"not"` specifies a feature is supported when false.
** `"pot"` denotes a value that has to be a power of two value.
They may also apply to arrays and `VkExtent*D`.
** `"mul"` denotes a value that must be an integer multiple of this limit.
diff --git a/scripts/extensionmetadocgenerator.py b/scripts/extensionmetadocgenerator.py
index 6f5e0efc..1dbb22e3 100644
--- a/scripts/extensionmetadocgenerator.py
+++ b/scripts/extensionmetadocgenerator.py
@@ -9,7 +9,7 @@ import re
import sys
from functools import total_ordering
from generator import GeneratorOptions, OutputGenerator, regSortFeatures, write
-from parse_dependency import dependencyMarkup
+from parse_dependency import dependencyMarkup, dependencyNames
class ExtensionMetaDocGeneratorOptions(GeneratorOptions):
"""ExtensionMetaDocGeneratorOptions - subclass of GeneratorOptions.
@@ -23,6 +23,7 @@ class Extension:
def __init__(self,
generator, # needed for logging and API conventions
filename,
+ interface,
name,
number,
ext_type,
@@ -36,9 +37,14 @@ class Extension:
specialuse,
ratified
):
+ """Object encapsulating information from an XML <extension> tag.
+ Most of the parameters / members are XML tag values.
+ 'interface' is the actual XML <extension> element."""
+
self.generator = generator
self.conventions = generator.genOpts.conventions
self.filename = filename
+ self.interface = interface
self.name = name
self.number = number
self.ext_type = ext_type
@@ -86,7 +92,7 @@ class Extension:
pass # supercedingAPIVersion, supercedingExtension is None
elif supercededBy.startswith(self.conventions.api_version_prefix):
self.supercedingAPIVersion = supercededBy
- elif supercededBy.startswith(self.conventions.api_prefix):
+ elif supercededBy.startswith(self.conventions.extension_name_prefix):
self.supercedingExtension = supercededBy
else:
self.generator.logMsg('error', 'Unrecognized ' + self.deprecationType + ' attribute value \'' + supercededBy + '\'!')
@@ -238,12 +244,14 @@ class Extension:
if isRefpage:
write('', file=fp)
- def makeMetafile(self, extensions, isRefpage = False):
+ def makeMetafile(self, extensions, SPV_deps, isRefpage = False):
"""Generate a file containing extension metainformation in
asciidoctor markup form.
- extensions - dictionary of Extension objects for extensions spec
is being generated against
+ - SPV_deps - dictionary of SPIR-V extension names required for each
+ extension and version name
- isRefpage - True if generating a refpage include, False if
generating a specification extension appendix include"""
@@ -260,10 +268,13 @@ class Extension:
write('', file=fp)
self.writeTag('Name String', '`' + self.name + '`', isRefpage, fp)
- self.writeTag('Extension Type', self.typeToStr(), isRefpage, fp)
+ if self.conventions.write_extension_type:
+ self.writeTag('Extension Type', self.typeToStr(), isRefpage, fp)
- self.writeTag('Registered Extension Number', self.number, isRefpage, fp)
- self.writeTag('Revision', self.revision, isRefpage, fp)
+ if self.conventions.write_extension_number:
+ self.writeTag('Registered Extension Number', self.number, isRefpage, fp)
+ if self.conventions.write_extension_revision:
+ self.writeTag('Revision', self.revision, isRefpage, fp)
if self.conventions.xml_api_name in self.ratified.split(','):
ratstatus = 'Ratified'
@@ -285,8 +296,9 @@ class Extension:
dependencyMarkup(self.depends) +
'--', file=fp)
else:
- # Do not bother specifying the base Vulkan 1.0 API redundantly
- True
+ # Do not specify the base API redundantly, but put something
+ # here to avoid formatting trouble.
+ self.writeTag(None, 'None', isRefpage, fp)
if self.provisional == 'true' and self.conventions.provisional_extension_warning:
write(' * *This is a _provisional_ extension and must: be used with caution.', file=fp)
@@ -297,6 +309,30 @@ class Extension:
' of provisional header files for enablement and stability details.*', file=fp)
write('', file=fp)
+ # Determine version and extension interactions from 'depends'
+ # attributes of <require> tags.
+ interacts = set()
+ for elem in self.interface.findall('require[@depends]'):
+ names = dependencyNames(elem.get('depends'))
+ interacts |= names
+
+ if len(interacts) > 0:
+ self.writeTag('API Interactions', None, isRefpage, fp)
+
+ def versionKey(name):
+ """Sort _VERSION_ names before extension names"""
+ return '_VERSION_' not in name
+
+ names = sorted(sorted(interacts), key=versionKey)
+ for name in names:
+ write(f'* Interacts with {name}', file=fp)
+
+ if self.name in SPV_deps:
+ self.writeTag('SPIR-V Dependencies', None, isRefpage, fp)
+
+ for spvname in SPV_deps[self.name]:
+ write(f' * {self.conventions.formatSPIRVlink(spvname)}', file=fp)
+
if self.deprecationType:
self.writeTag('Deprecation State', None, isRefpage, fp)
@@ -358,10 +394,10 @@ class Extension:
if handle.startswith('gitlab:'):
prettyHandle = 'icon:gitlab[alt=GitLab, role="red"]' + handle.replace('gitlab:@', '')
elif handle.startswith('@'):
- issuePlaceholderText = '[' + self.name + '] ' + handle
- issuePlaceholderText += '%0A*Here describe the issue or question you have about the ' + self.name + ' extension*'
- trackerLink = 'link:++https://github.com/KhronosGroup/Vulkan-Docs/issues/new?body=' + issuePlaceholderText + '++'
- prettyHandle = trackerLink + '[icon:github[alt=GitHub,role="black"]' + handle[1:] + ',window=_blank,opts=nofollow]'
+ issuePlaceholderText = f'[{self.name}] {handle}'
+ issuePlaceholderText += f'%0A*Here describe the issue or question you have about the {self.name} extension*'
+ trackerLink = f'link:++https://github.com/KhronosGroup/Vulkan-Docs/issues/new?body={issuePlaceholderText}++'
+ prettyHandle = f'{trackerLink}[icon:github[alt=GitHub,role="black"]{handle[1:]},window=_blank,opts=nofollow]'
else:
prettyHandle = handle
@@ -442,6 +478,8 @@ class ExtensionMetaDocOutputGenerator(OutputGenerator):
# List of strings containing all vendor tags
self.vendor_tags = []
self.file_suffix = ''
+ # SPIR-V dependencies, generated in beginFile()
+ self.SPV_deps = {}
def newFile(self, filename):
self.logMsg('diag', '# Generating include file:', filename)
@@ -461,6 +499,28 @@ class ExtensionMetaDocOutputGenerator(OutputGenerator):
for tag in root.findall('tags/tag'):
self.vendor_tags.append(tag.get('name'))
+ # If there are <spirvextension> elements in the XML, generate a
+ # reverse map from API version and extension names to the SPV
+ # extensions they depend on.
+
+ def add_dep(SPV_deps, name, spvname):
+ """Add spvname as a dependency of name.
+ name may be an API or extension name."""
+
+ if name not in SPV_deps:
+ SPV_deps[name] = set()
+ SPV_deps[name].add(spvname)
+
+ for spvext in root.findall('spirvextensions/spirvextension'):
+ spvname = spvext.get('name')
+ for elem in spvext.findall('enable'):
+ if elem.get('version'):
+ version_name = elem.get('version')
+ add_dep(self.SPV_deps, version_name, spvname)
+ elif elem.get('extension'):
+ ext_name = elem.get('extension')
+ add_dep(self.SPV_deps, ext_name, spvname)
+
# Create subdirectory, if needed
self.makeDir(self.directory)
@@ -512,9 +572,9 @@ class ExtensionMetaDocOutputGenerator(OutputGenerator):
# Generate metadoc extension files, in refpage and non-refpage form
for ext in self.extensions.values():
- ext.makeMetafile(self.extensions, isRefpage = False)
+ ext.makeMetafile(self.extensions, self.SPV_deps, isRefpage = False)
if self.conventions.write_refpage_include:
- ext.makeMetafile(self.extensions, isRefpage = True)
+ ext.makeMetafile(self.extensions, self.SPV_deps, isRefpage = True)
# Key to sort extensions alphabetically within 'KHR', 'EXT', vendor
# extension prefixes.
@@ -643,15 +703,21 @@ class ExtensionMetaDocOutputGenerator(OutputGenerator):
self.logMsg('diag', 'beginFeature: ignoring non-extension feature', self.featureName)
return
- # These attributes must exist
name = self.featureName
- number = self.getAttrib(interface, 'number')
- ext_type = self.getAttrib(interface, 'type')
- revision = self.getSpecVersion(interface, name)
+
+ # These attributes may be required to exist, depending on the API
+ number = self.getAttrib(interface, 'number',
+ self.conventions.write_extension_number)
+ ext_type = self.getAttrib(interface, 'type',
+ self.conventions.write_extension_type)
+ if self.conventions.write_extension_revision:
+ revision = self.getSpecVersion(interface, name)
+ else:
+ revision = None
# These attributes are optional
OPTIONAL = False
- depends = self.getAttrib(interface, 'depends', OPTIONAL) # TODO should default to VK_VERSION_1_0?
+ depends = self.getAttrib(interface, 'depends', OPTIONAL) # TODO should default to base API version 1.0?
contact = self.getAttrib(interface, 'contact', OPTIONAL)
promotedTo = self.getAttrib(interface, 'promotedto', OPTIONAL)
deprecatedBy = self.getAttrib(interface, 'deprecatedby', OPTIONAL)
@@ -665,6 +731,7 @@ class ExtensionMetaDocOutputGenerator(OutputGenerator):
extdata = Extension(
generator = self,
filename = filename,
+ interface = interface,
name = name,
number = number,
ext_type = ext_type,
@@ -714,6 +781,7 @@ class ExtensionMetaDocOutputGenerator(OutputGenerator):
def getSpecVersion(self, elem, extname, default=None):
"""Determine the extension revision from the EXTENSION_NAME_SPEC_VERSION
enumerant.
+ This only makes sense for Vulkan.
- elem - <extension> element to query
- extname - extension name from the <extension> 'name' attribute
diff --git a/scripts/generator.py b/scripts/generator.py
index 669e5d68..5fb63700 100644
--- a/scripts/generator.py
+++ b/scripts/generator.py
@@ -64,9 +64,8 @@ def regSortCategoryKey(feature):
return 0.5
else:
return 0
- if (feature.category == 'ARB'
- or feature.category == 'KHR'
- or feature.category == 'OES'):
+
+ if feature.category.upper() in ['ARB', 'KHR', 'OES']:
return 1
return 2
diff --git a/scripts/parse_dependency.py b/scripts/parse_dependency.py
index 313b3c08..b3ef841e 100755
--- a/scripts/parse_dependency.py
+++ b/scripts/parse_dependency.py
@@ -52,45 +52,20 @@ import operator
import pyparsing as pp
import re
+from apiconventions import APIConventions as APIConventions
+conventions = APIConventions()
+
def markupPassthrough(name):
"""Pass a name (leaf or operator) through without applying markup"""
return name
-# A regexp matching Vulkan and VulkanSC core version names
-# The Conventions is_api_version_name() method is similar, but does not
-# return the matches.
-apiVersionNamePat = re.compile(r'(VK|VKSC)_VERSION_([0-9]+)_([0-9]+)')
-
-def apiVersionNameMatch(name):
- """Return [ apivariant, major, minor ] if name is an API version name,
- or [ None, None, None ] if it is not."""
-
- match = apiVersionNamePat.match(name)
- if match is not None:
- return [ match.group(1), match.group(2), match.group(3) ]
- else:
- return [ None, None, None ]
-
def leafMarkupAsciidoc(name):
"""Markup a leaf name as an asciidoc link to an API version or extension
anchor.
- name - version or extension name"""
- (apivariant, major, minor) = apiVersionNameMatch(name)
-
- if apivariant is not None:
- version = major + '.' + minor
- if apivariant == 'VKSC':
- # Vulkan SC has a different anchor pattern for version appendices
- if version == '1.0':
- return 'Vulkan SC 1.0'
- else:
- return f'<<versions-sc-{version}, Version SC {version}>>'
- else:
- return f'<<versions-{version}, Version {version}>>'
- else:
- return f'apiext:{name}'
+ return conventions.formatVersionOrExtension(name)
def leafMarkupC(name):
"""Markup a leaf name as a C expression, using conventions of the
@@ -344,6 +319,10 @@ def dependencyMarkup(dependency):
return markupTraverse(parsed)
if __name__ == "__main__":
+ for str in [ 'VK_VERSION_1_0', 'cl_khr_extension_name', 'XR_VERSION_3_2', 'CL_VERSION_1_0' ]:
+ print(f'{str} -> {conventions.formatVersionOrExtension(str)}')
+ import sys
+ sys.exit(0)
termdict = {
'VK_VERSION_1_1' : True,
diff --git a/scripts/scriptgenerator.py b/scripts/scriptgenerator.py
index 18ce9de4..993c97d2 100644
--- a/scripts/scriptgenerator.py
+++ b/scripts/scriptgenerator.py
@@ -9,15 +9,19 @@ from generator import OutputGenerator, enquote, noneStr
def mostOfficial(api, newapi):
"""Return the 'most official' of two related names, api and newapi.
KHR is more official than EXT is more official than everything else.
- If there is ambiguity, return api."""
+ If there is ambiguity, return api.
+ Accommodate APIs using lower-case vendor suffixes."""
- if api[-3:] == 'KHR':
+ apicat = api[-3:].upper()
+ newapicat = newapi[-3:].upper()
+
+ if apicat == 'KHR':
return api
- if newapi[-3:] == 'KHR':
+ if newapicat == 'KHR':
return newapi;
- if api[-3:] == 'EXT':
+ if apicat == 'EXT':
return api
- if newapi[-3:] == 'EXT':
+ if newapicat == 'EXT':
return newapi;
return api
diff --git a/scripts/spec_tools/conventions.py b/scripts/spec_tools/conventions.py
index 00d2b81d..9118feaf 100644
--- a/scripts/spec_tools/conventions.py
+++ b/scripts/spec_tools/conventions.py
@@ -32,12 +32,12 @@ TYPES_KNOWN_ALWAYS_VALID = set(('char',
))
# Split an extension name into vendor ID and name portions
-EXT_NAME_DECOMPOSE_RE = re.compile(r'[A-Z]+_(?P<vendor>[A-Z]+)_(?P<name>[\w_]+)')
+EXT_NAME_DECOMPOSE_RE = re.compile(r'(?P<prefix>[A-Za-z]+)_(?P<vendor>[A-Za-z]+)_(?P<name>[\w_]+)')
# Match an API version name.
+# Match object includes API prefix, major, and minor version numbers.
# This could be refined further for specific APIs.
-API_VERSION_NAME_RE = re.compile(r'[A-Z]+_VERSION_[0-9]')
-
+API_VERSION_NAME_RE = re.compile(r'(?P<apivariant>[A-Za-z]+)_VERSION_(?P<major>[0-9]+)_(?P<minor>[0-9]+)')
class ProseListFormats(Enum):
"""A connective, possibly with a quantifier."""
@@ -80,10 +80,39 @@ class ConventionsBase(abc.ABC):
self._command_prefix = None
self._type_prefix = None
+ def formatVersionOrExtension(self, name):
+ """Mark up an API version or extension name as a link in the spec."""
+
+ # Is this a version name?
+ match = API_VERSION_NAME_RE.match(name)
+ if match is not None:
+ return self.formatVersion(name,
+ match.group('apivariant'),
+ match.group('major'),
+ match.group('minor'))
+ else:
+ # If not, assumed to be an extension name. Might be worth checking.
+ return self.formatExtension(name)
+
+ def formatVersion(self, name, apivariant, major, minor):
+ """Mark up an API version name as a link in the spec."""
+ return '`<<{}>>`'.format(name)
+
def formatExtension(self, name):
- """Mark up an extension name as a link the spec."""
+ """Mark up an extension name as a link in the spec."""
return '`<<{}>>`'.format(name)
+ def formatSPIRVlink(self, name):
+ """Mark up a SPIR-V extension name as an external link in the spec.
+ Since these are external links, the formatting probably will be
+ the same for all APIs creating such links, so long as they use
+ the asciidoctor {spirv} attribute for the base path to the SPIR-V
+ extensions."""
+
+ (vendor, _) = self.extension_name_split(name)
+
+ return f'{{spirv}}/{vendor}/{name}.html[{name}]'
+
@property
@abc.abstractmethod
def null(self):
@@ -261,6 +290,42 @@ class ConventionsBase(abc.ABC):
raise NotImplementedError
@property
+ def extension_name_prefix(self):
+ """Return extension name prefix.
+
+ Typically two uppercase letters followed by an underscore.
+
+ Assumed to be the same as api_prefix, but some APIs use different
+ case conventions."""
+
+ return self.api_prefix
+
+ @property
+ def write_contacts(self):
+ """Return whether contact list should be written to extension appendices"""
+ return False
+
+ @property
+ def write_extension_type(self):
+ """Return whether extension type should be written to extension appendices"""
+ return True
+
+ @property
+ def write_extension_number(self):
+ """Return whether extension number should be written to extension appendices"""
+ return True
+
+ @property
+ def write_extension_revision(self):
+ """Return whether extension revision number should be written to extension appendices"""
+ return True
+
+ @property
+ def write_refpage_include(self):
+ """Return whether refpage include should be written to extension appendices"""
+ return True
+
+ @property
def api_version_prefix(self):
"""Return API core version token prefix.
@@ -375,6 +440,16 @@ class ConventionsBase(abc.ABC):
documentation includes."""
return False
+ def extension_name_split(self, name):
+ """Split an extension name, returning (vendor, rest of name).
+ The API prefix of the name is ignored."""
+
+ match = EXT_NAME_DECOMPOSE_RE.match(name)
+ vendor = match.group('vendor')
+ bare_name = match.group('name')
+
+ return (vendor, bare_name)
+
@abc.abstractmethod
def extension_file_path(self, name):
"""Return file path to an extension appendix relative to a directory
diff --git a/scripts/spec_tools/util.py b/scripts/spec_tools/util.py
index bf258450..b4b45696 100644
--- a/scripts/spec_tools/util.py
+++ b/scripts/spec_tools/util.py
@@ -1,7 +1,6 @@
"""Utility functions not closely tied to other spec_tools types."""
# Copyright (c) 2018-2019 Collabora, Ltd.
# Copyright 2013-2023 The Khronos Group Inc.
-#
# SPDX-License-Identifier: Apache-2.0
diff --git a/scripts/vkconventions.py b/scripts/vkconventions.py
index b4e79666..6f0edd72 100755
--- a/scripts/vkconventions.py
+++ b/scripts/vkconventions.py
@@ -50,9 +50,21 @@ class VulkanConventions(ConventionsBase):
"""Preferred spelling of NULL."""
return '`NULL`'
+ def formatVersion(self, name, apivariant, major, minor):
+ """Mark up an API version name as a link in the spec."""
+ version = f'{major}.{minor}'
+ if apivariant == 'VKSC':
+ # Vulkan SC has a different anchor pattern for version appendices
+ if version == '1.0':
+ return 'Vulkan SC 1.0'
+ else:
+ return f'<<versions-sc-{version}, Version SC {version}>>'
+ else:
+ return f'<<versions-{version}, Version {version}>>'
+
def formatExtension(self, name):
- """Mark up an extension name as a link the spec."""
- return '`apiext:{}`'.format(name)
+ """Mark up an extension name as a link in the spec."""
+ return f'apiext:{name}'
@property
def struct_macro(self):
diff --git a/scripts/xml_consistency.py b/scripts/xml_consistency.py
index 0de982d5..889bc9a8 100755
--- a/scripts/xml_consistency.py
+++ b/scripts/xml_consistency.py
@@ -432,7 +432,7 @@ class Checker(XMLChecker):
limittypeDiags = namedtuple('limittypeDiags', ['missing', 'invalid'])
badFields = defaultdict(lambda : limittypeDiags(missing=[], invalid=[]))
- validLimittypes = { 'min', 'max', 'pot', 'mul', 'bits', 'bitmask', 'range', 'struct', 'exact', 'noauto' }
+ validLimittypes = { 'min', 'max', 'not', 'pot', 'mul', 'bits', 'bitmask', 'range', 'struct', 'exact', 'noauto' }
for member in info.getMembers():
memberName = member.findtext('name')
if memberName in ['sType', 'pNext']:
diff --git a/styleguide.adoc b/styleguide.adoc
index 1dfdfa58..ad1ea978 100644
--- a/styleguide.adoc
+++ b/styleguide.adoc
@@ -38,6 +38,10 @@ include::{config}/copyright-ccby.adoc[]
include::{style}/introduction.adoc[]
+apiext: apiext:VK_KHR_surface
+
+apiext (with backquotes): `apiext:VK_KHR_surface`
+
include::{style}/naming.adoc[]
include::{style}/extensions.adoc[]
diff --git a/xml/registry.rnc b/xml/registry.rnc
index 21efce80..34d71d60 100644
--- a/xml/registry.rnc
+++ b/xml/registry.rnc
@@ -129,7 +129,7 @@ Types = element types {
# limittype - only applicable for members of VkPhysicalDeviceProperties and
# VkPhysicalDeviceProperties2, their substructures, and extensions.
# Specifies the type of a device limit.
-# Valid values: 'min', 'max', 'pot', 'mul', 'bits', bitmask', 'range', 'struct', 'exact', 'noauto'
+# Valid values: 'min', 'max', 'not', 'pot', 'mul', 'bits', bitmask', 'range', 'struct', 'exact', 'noauto'
# objecttype - only applicable for members representing a handle as
# a uint64_t value. Specifies the name of another member which is
# a VkObjectType or VkDebugReportObjectTypeEXT value specifying
diff --git a/xml/vk.xml b/xml/vk.xml
index f365b71e..ab05ed3d 100644
--- a/xml/vk.xml
+++ b/xml/vk.xml
@@ -175,7 +175,7 @@ branch of the member gitlab server.
#define <name>VKSC_API_VERSION_1_0</name> <type>VK_MAKE_API_VERSION</type>(VKSC_API_VARIANT, 1, 0, 0)// Patch version should always be set to 0</type>
<type api="vulkan" category="define">// Version of this file
-#define <name>VK_HEADER_VERSION</name> 270</type>
+#define <name>VK_HEADER_VERSION</name> 271</type>
<type api="vulkan" category="define" requires="VK_HEADER_VERSION">// Complete version of this file
#define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, VK_HEADER_VERSION)</type>
<type api="vulkansc" category="define">// Version of this file
@@ -1861,7 +1861,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard2DBlockShape</name><comment>Sparse resources support: GPU will access all 2D (single sample) sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member>
<member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard2DMultisampleBlockShape</name><comment>Sparse resources support: GPU will access all 2D (multisample) sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member>
<member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard3DBlockShape</name><comment>Sparse resources support: GPU will access all 3D sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member>
- <member limittype="bitmask"><type>VkBool32</type> <name>residencyAlignedMipSize</name><comment>Sparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail</comment></member>
+ <member limittype="not"><type>VkBool32</type> <name>residencyAlignedMipSize</name><comment>Sparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail</comment></member>
<member limittype="bitmask"><type>VkBool32</type> <name>residencyNonResidentStrict</name><comment>Sparse resources support: GPU can consistently access non-resident regions of a resource, all reads return as if data is 0, writes are discarded</comment></member>
</type>
<type category="struct" name="VkPhysicalDeviceLimits" returnedonly="true">
@@ -7248,8 +7248,8 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type category="struct" name="VkCuModuleCreateInfoNVX">
<member values="VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
- <member><type>size_t</type> <name>dataSize</name></member>
- <member len="dataSize">const <type>void</type>* <name>pData</name></member>
+ <member optional="true"><type>size_t</type> <name>dataSize</name></member>
+ <member len="dataSize">const <type>void</type>* <name>pData</name></member>
</type>
<type category="struct" name="VkCuFunctionCreateInfoNVX">
<member values="VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member>
@@ -8739,7 +8739,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type category="struct" name="VkPhysicalDeviceExternalFormatResolvePropertiesANDROID" structextends="VkPhysicalDeviceProperties2" returnedonly="true">
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_PROPERTIES_ANDROID"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member>
- <member limittype="noauto"><type>VkBool32</type> <name>nullColorAttachmentWithExternalFormatResolve</name></member>
+ <member limittype="not"><type>VkBool32</type> <name>nullColorAttachmentWithExternalFormatResolve</name></member>
<member limittype="noauto"><type>VkChromaLocation</type> <name>externalFormatResolveChromaOffsetX</name></member>
<member limittype="noauto"><type>VkChromaLocation</type> <name>externalFormatResolveChromaOffsetY</name></member>
</type>
@@ -8770,7 +8770,8 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type category="struct" name="VkGetLatencyMarkerInfoNV">
<member values="VK_STRUCTURE_TYPE_GET_LATENCY_MARKER_INFO_NV"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member>
- <member><type>VkLatencyTimingsFrameReportNV</type>* <name>pTimings</name></member>
+ <member optional="true"><type>uint32_t</type> <name>timingCount</name></member>
+ <member optional="true" len="timingCount"><type>VkLatencyTimingsFrameReportNV</type>* <name>pTimings</name></member>
</type>
<type category="struct" name="VkLatencyTimingsFrameReportNV">
<member values="VK_STRUCTURE_TYPE_LATENCY_TIMINGS_FRAME_REPORT_NV"><type>VkStructureType</type> <name>sType</name></member>
@@ -15033,7 +15034,6 @@ typedef void* <name>MTLSharedEvent_id</name>;
<proto><type>void</type> <name>vkGetLatencyTimingsNV</name></proto>
<param><type>VkDevice</type> <name>device</name></param>
<param><type>VkSwapchainKHR</type> <name>swapchain</name></param>
- <param><type>uint32_t</type>* <name>pTimingCount</name></param>
<param><type>VkGetLatencyMarkerInfoNV</type>* <name>pLatencyMarkerInfo</name></param>
</command>
<command>
@@ -18438,10 +18438,18 @@ typedef void* <name>MTLSharedEvent_id</name>;
<enum bitpos="25" extends="VkBufferUsageFlagBits2KHR" name="VK_BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDX"/>
</require>
</extension>
- <extension name="VK_AMD_extension_136" number="136" author="AMD" contact="Mais Alnasser @malnasse" supported="disabled">
+ <extension name="VK_KHR_extension_136" number="136" type="device" author="KHR" contact="Tobias Hector @tobski" supported="disabled">
<require>
- <enum value="0" name="VK_AMD_EXTENSION_136_SPEC_VERSION"/>
- <enum value="&quot;VK_AMD_extension_136&quot;" name="VK_AMD_EXTENSION_136_EXTENSION_NAME"/>
+ <enum value="0" name="VK_KHR_EXTENSION_136_SPEC_VERSION"/>
+ <enum value="&quot;VK_KHR_extension_136&quot;" name="VK_KHR_EXTENSION_136_EXTENSION_NAME"/>
+ <enum bitpos="28" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RESERVED_28_BIT_KHR"/>
+ <enum bitpos="29" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RESERVED_29_BIT_KHR"/>
+ <enum bitpos="30" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RESERVED_30_BIT_KHR"/>
+ </require>
+ <require depends="VK_KHR_maintenance5">
+ <enum bitpos="28" extends="VkBufferUsageFlagBits2KHR" name="VK_BUFFER_USAGE_2_RESERVED_28_BIT_KHR"/>
+ <enum bitpos="29" extends="VkBufferUsageFlagBits2KHR" name="VK_BUFFER_USAGE_2_RESERVED_29_BIT_KHR"/>
+ <enum bitpos="30" extends="VkBufferUsageFlagBits2KHR" name="VK_BUFFER_USAGE_2_RESERVED_30_BIT_KHR"/>
</require>
</extension>
<extension name="VK_AMD_mixed_attachment_samples" number="137" type="device" author="AMD" contact="Matthaeus G. Chajdas @anteru" supported="vulkan">
@@ -20815,8 +20823,6 @@ typedef void* <name>MTLSharedEvent_id</name>;
<enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_PROPERTIES_NV"/>
<enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_CUDA_MODULE_NV"/>
<enum offset="1" extends="VkObjectType" name="VK_OBJECT_TYPE_CUDA_FUNCTION_NV"/>
- <enum offset="0" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_MODULE_NV"/>
- <enum offset="1" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV"/>
<type name="VkCudaModuleNV"/>
<type name="VkCudaFunctionNV"/>
<type name="VkCudaModuleCreateInfoNV"/>
@@ -20831,6 +20837,10 @@ typedef void* <name>MTLSharedEvent_id</name>;
<command name="vkDestroyCudaFunctionNV"/>
<command name="vkCmdCudaLaunchKernelNV"/>
</require>
+ <require depends="VK_EXT_debug_report">
+ <enum offset="0" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_MODULE_NV_EXT"/>
+ <enum offset="1" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV_EXT"/>
+ </require>
</extension>
<extension name="VK_KHR_object_refresh" number="309" type="device" author="KHR" contact="Aidan Fabius @afabius" supported="vulkansc" ratified="vulkansc">
<require>
@@ -22493,7 +22503,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<enum value="&quot;VK_SEC_extension_451&quot;" name="VK_SEC_EXTENSION_451_EXTENSION_NAME"/>
</require>
</extension>
- <extension name="VK_EXT_nested_command_buffer" number="452" type="device" depends="VK_KHR_get_physical_device_properties2" author="EXT" contact="Piers Daniell @pdaniell-nv" supported="vulkan">
+ <extension name="VK_EXT_nested_command_buffer" number="452" type="device" depends="VK_KHR_get_physical_device_properties2" author="EXT" contact="Piers Daniell @pdaniell-nv" supported="vulkan" ratified="vulkan">
<require>
<enum value="1" name="VK_EXT_NESTED_COMMAND_BUFFER_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_nested_command_buffer&quot;" name="VK_EXT_NESTED_COMMAND_BUFFER_EXTENSION_NAME"/>
@@ -23321,7 +23331,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
</extension>
<extension name="VK_NV_low_latency2" number="506" author="NV" depends="VK_VERSION_1_2,VK_KHR_timeline_semaphore" contact="Charles Hansen @cshansen" type="device" supported="vulkan">
<require>
- <enum value="1" name="VK_NV_LOW_LATENCY_2_SPEC_VERSION"/>
+ <enum value="2" name="VK_NV_LOW_LATENCY_2_SPEC_VERSION"/>
<enum value="&quot;VK_NV_low_latency2&quot;" name="VK_NV_LOW_LATENCY_2_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_LATENCY_SLEEP_MODE_INFO_NV"/>
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_LATENCY_SLEEP_INFO_NV"/>
@@ -23703,6 +23713,12 @@ typedef void* <name>MTLSharedEvent_id</name>;
<enum value="&quot;VK_KHR_extension_554&quot;" name="VK_KHR_EXTENSION_554_EXTENSION_NAME"/>
</require>
</extension>
+ <extension name="VK_IMG_extension_555" number="555" author="IMG" contact="Jarred Davies" supported="disabled">
+ <require>
+ <enum value="0" name="VK_IMG_EXTENSION_555_SPEC_VERSION"/>
+ <enum value="&quot;VK_IMG_extension_555&quot;" name="VK_IMG_EXTENSION_555_EXTENSION_NAME"/>
+ </require>
+ </extension>
</extensions>
<formats>
<format name="VK_FORMAT_R4G4_UNORM_PACK8" class="8-bit" blockSize="1" texelsPerBlock="1" packed="8">
@@ -25322,6 +25338,15 @@ typedef void* <name>MTLSharedEvent_id</name>;
<spirvextension name="SPV_AMDX_shader_enqueue">
<enable extension="VK_AMDX_shader_enqueue"/>
</spirvextension>
+ <spirvextension name="SPV_HUAWEI_cluster_culling_shader">
+ <enable extension="VK_HUAWEI_cluster_culling_shader"/>
+ </spirvextension>
+ <spirvextension name="SPV_HUAWEI_subpass_shading">
+ <enable extension="VK_HUAWEI_subpass_shading"/>
+ </spirvextension>
+ <spirvextension name="SPV_NV_ray_tracing_motion_blur">
+ <enable extension="VK_NV_ray_tracing_motion_blur"/>
+ </spirvextension>
</spirvextensions>
<spirvcapabilities comment="SPIR-V Capabilities allowed in Vulkan and what is required to use it">
<spirvcapability name="Matrix">