Skip to content

Commit 8bd7db8

Browse files
committed
zChange log for June 26, 2026 Vulkan 1.4.355 spec update:
Github Issues * Switch to dual Apache 2.0 OR MIT license for generated headers (public Vulkan-Headers issue 605). * Mark superseded VK_KHR_surface commands as legacy (public PR 2763). * Fix two typos in image view usage description (public PR 2765). Internal Issues * Add standalone SPIR-V VU constraining OpUndef (internal issue 4424). * Update common draw VU 09116 to require all / no components to be in write mask for the 999E5 format (internal issue 4758). * Require heap data mappings to UBOs to be aligned in common draw dispatch VU 11441 (internal issues 4817, 4859). * Remove `chunked` Makefile target and related infrastructure, replacing the target rule with an error message pointing to the equivalent chunked presentation of the specification on the Vulkan docs site (internal issue 4872). * Update VkRenderingInfo VUs to explicitly say when resolveImageView is VK_NULL_HANDLE (internal issue 4877). * Combine common draw dynamic state VUs for VK_ANDROID_external_format_resolve (internal MR 7510). * Refactor the various places subgroup size control is discussed into the new <<shaders-varying-subgroup-size, Varying Subgroup Size>>, <<shaders-full-subgroups, Full Subgroups>>, and <<shaders-required-subgroup-size, Required Subgroup Size>> sections (internal MR 8277). * Add an `alias` attribute to XML `member` tags to track feature flags which are shared between extension and core features (internal MR 8360). * Clarify that if vkSetSwapchainPresentTimingQueueSizeEXT is never called, vkQueuePresentKHR with present timing queries will also return VK_ERROR_PRESENT_TIMING_QUEUE_FULL_EXT (internal MR 8337). * Add support for new XML tags introduced by VK_KHR_extended_flags to VulkanObject scripts (internal MR 8356). * Add VkDescriptorSetAndBindingMappingEXT VUs to validate samplerPushOffset alignment / limits (internal MR 8358). * Add VkGpaSessionCreateInfoAMD VU to require secondaryCopySource GPA session to have begun and ended (internal MR 8362). * Update description of VkPhysicalDeviceDataGraphOperationSupportARM XML to remove nonexistent sType / pNext members (internal MR 8367). * Reword the NOTE on vkGetPhysicalDeviceDescriptorSizeEXT for clarity (internal MR 8370). Extensions * VK_ARM_tensor_controls
1 parent c2b4a2a commit 8bd7db8

60 files changed

Lines changed: 808 additions & 4474 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

BUILD.adoc

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,6 @@ targets, or they can individually be found as follows:
102102
Vulkan Specification::
103103
* `html` -- Single-file HTML5 in `$(OUTDIR)/html/vkspec.html`, and KaTeX
104104
dependency in $(OUTDIR)/katex
105-
* `chunked` -- Chunked HTML5 in `$(OUTDIR)/html/chap?.html`
106105
* `pdf` -- PDF in `$(OUTDIR)/pdf/vkspec.pdf`
107106

108107
"`styleguide`" (Vulkan Documentation and Extensions: Procedures and Conventions)::

COPYING.adoc

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,6 @@ The Vulkan-Docs project uses several licenses.
2323
(SPDX license identifier "`LicenseRef-MPLUS`"). This is an open source
2424
license but is not OSI-approved, and is found at
2525
https://osdn.net/softwaremap/trove_list.php?form_cat=370
26-
* Code which converts the single-file HTML specification to a chunked
27-
HTML document, kept in
28-
link:scripts/asciidoctor-chunker[`scripts/asciidoctor-chunker`], is
29-
licensed under the MIT license. The home of the
30-
link:https://github.com/wshito/asciidoctor-chunker[chunker project] is
31-
found on GitHub.
3226
* There are a few remaining files adopted from other open source projects,
3327
such as a copy of the KaTeX distribution. Such files continue under their
3428
original MIT licenses, or in a few cases, like

ChangeLog.adoc

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,57 @@ appears frequently in the change log.
1414

1515
'''
1616

17+
zChange log for June 26, 2026 Vulkan 1.4.355 spec update:
18+
19+
Github Issues
20+
21+
* Switch to dual Apache 2.0 OR MIT license for generated headers (public
22+
Vulkan-Headers issue 605).
23+
* Mark superseded VK_KHR_surface commands as legacy (public PR 2763).
24+
* Fix two typos in image view usage description (public PR 2765).
25+
26+
Internal Issues
27+
28+
* Add standalone SPIR-V VU constraining OpUndef (internal issue 4424).
29+
* Update common draw VU 09116 to require all / no components to be in
30+
write mask for the 999E5 format (internal issue 4758).
31+
* Require heap data mappings to UBOs to be aligned in common draw dispatch
32+
VU 11441 (internal issues 4817, 4859).
33+
* Remove `chunked` Makefile target and related infrastructure, replacing
34+
the target rule with an error message pointing to the equivalent chunked
35+
presentation of the specification on the Vulkan docs site (internal
36+
issue 4872).
37+
* Update VkRenderingInfo VUs to explicitly say when resolveImageView is
38+
VK_NULL_HANDLE (internal issue 4877).
39+
* Combine common draw dynamic state VUs for
40+
VK_ANDROID_external_format_resolve (internal MR 7510).
41+
* Refactor the various places subgroup size control is discussed into the
42+
new <<shaders-varying-subgroup-size, Varying Subgroup Size>>,
43+
<<shaders-full-subgroups, Full Subgroups>>, and
44+
<<shaders-required-subgroup-size, Required Subgroup Size>> sections
45+
(internal MR 8277).
46+
* Add an `alias` attribute to XML `member` tags to track feature flags
47+
which are shared between extension and core features (internal MR 8360).
48+
* Clarify that if vkSetSwapchainPresentTimingQueueSizeEXT is never called,
49+
vkQueuePresentKHR with present timing queries will also return
50+
VK_ERROR_PRESENT_TIMING_QUEUE_FULL_EXT (internal MR 8337).
51+
* Add support for new XML tags introduced by VK_KHR_extended_flags to
52+
VulkanObject scripts (internal MR 8356).
53+
* Add VkDescriptorSetAndBindingMappingEXT VUs to validate
54+
samplerPushOffset alignment / limits (internal MR 8358).
55+
* Add VkGpaSessionCreateInfoAMD VU to require secondaryCopySource GPA
56+
session to have begun and ended (internal MR 8362).
57+
* Update description of VkPhysicalDeviceDataGraphOperationSupportARM XML
58+
to remove nonexistent sType / pNext members (internal MR 8367).
59+
* Reword the NOTE on vkGetPhysicalDeviceDescriptorSizeEXT for clarity
60+
(internal MR 8370).
61+
62+
Extensions
63+
64+
* VK_ARM_tensor_controls
65+
66+
'''
67+
1768
Change log for June 12, 2026 Vulkan 1.4.354 spec update:
1869

1970
Github Issues

Makefile

Lines changed: 5 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ VERBOSE =
151151
# ADOCOPTS options for asciidoc->HTML5 output
152152

153153
NOTEOPTS = -a editing-notes -a implementation-guide
154-
PATCHVERSION = 354
154+
PATCHVERSION = 355
155155
BASEOPTS =
156156

157157
ifneq (,$(findstring VKSC_VERSION_1_0,$(VERSIONS)))
@@ -333,33 +333,10 @@ $(KATEXINSTDIR): $(KATEXSRCDIR)
333333
# There is some complexity to try and avoid short virtual targets like 'html'
334334
# causing specs to *always* be regenerated.
335335

336-
CHUNKER = $(SCRIPTS)/asciidoctor-chunker/asciidoctor-chunker.js
337-
CHUNKINDEX = $(CONFIGS)/chunkindex
338-
# Only the $(CHUNKER) step is required unless the search index is to be
339-
# generated and incorporated into the chunked spec.
340-
#
341-
# Dropped $(QUIET) for now
342-
# Should set NODE_PATH=/usr/local/lib/node_modules or wherever, outside Makefile
343-
# Copying chunked.js into target avoids a warning from the chunker
344-
chunked: $(HTMLDIR)/vkspec.html $(SPECSRC) $(COMMONDOCS)
345-
$(QUIET)$(CHUNKINDEX)/addscripts.sh $(HTMLDIR)/vkspec.html $(HTMLDIR)/prechunked.html
346-
$(QUIET)$(CP) $(CHUNKINDEX)/chunked.css $(CHUNKINDEX)/chunked.js \
347-
$(CHUNKINDEX)/lunr.js $(HTMLDIR)
348-
$(QUIET)$(NODEJS) $(CHUNKER) $(HTMLDIR)/prechunked.html -o $(HTMLDIR)
349-
$(QUIET)$(RM) $(HTMLDIR)/prechunked.html
350-
$(QUIET)$(RUBY) $(CHUNKINDEX)/generate-index.rb $(HTMLDIR)/chap*html | \
351-
$(NODEJS) $(CHUNKINDEX)/build-index.js > $(HTMLDIR)/search.index.js
352-
353-
# This is a temporary target while the new chunker is pre-release.
354-
# Eventually we will either pull the chunker into CI, or permanently
355-
# store a copy of the short JavaScript chunker in this repository.
356-
CHUNKERVERSION = asciidoctor-chunker_v1.0.0
357-
CHUNKURL = https://github.com/wshito/asciidoctor-chunker/releases/download/v1.0.0/$(CHUNKERVERSION).zip
358-
getchunker:
359-
wget $(CHUNKURL) -O $(CHUNKERVERSION).zip
360-
unzip $(CHUNKERVERSION).zip
361-
mv $(CHUNKERVERSION)/* scripts/asciidoctor-chunker/
362-
$(RMRF) $(CHUNKERVERSION).zip $(CHUNKERVERSION)
336+
chunked:
337+
$(QUIET)echo "The 'chunked' target is no longer supported as of the 1.4.355 spec update."
338+
$(QUIET)echo "Please use https://docs.vulkan.org instead."
339+
$(QUIET)false
363340

364341
html: $(HTMLDIR)/vkspec.html $(SPECSRC) $(COMMONDOCS)
365342

REUSE.toml

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ SPDX-PackageName = "Vulkan-Docs"
33
SPDX-PackageDownloadLocation = "https://github.com/KhronosGroup/Vulkan-Docs"
44

55
[[annotations]]
6-
path = ["images/**.svg", "config/chunkindex/custom.patch", "config/CI/**", "config/**/docinfo-header.html", "build_tests/expectations/**", "build_tests/images/**.svg", "images/proposals/**.svg"]
6+
path = ["images/**.svg", "config/CI/**", "config/**/docinfo-header.html", "build_tests/expectations/**", "build_tests/images/**.svg", "images/proposals/**.svg"]
77
precedence = "aggregate"
88
SPDX-FileCopyrightText = "2015-2026 The Khronos Group Inc."
99
SPDX-License-Identifier = "CC-BY-4.0"
@@ -14,12 +14,6 @@ precedence = "aggregate"
1414
SPDX-FileCopyrightText = "2013-2019 Khan Academy and other contributors"
1515
SPDX-License-Identifier = "MIT"
1616

17-
[[annotations]]
18-
path = "config/chunkindex/lunr.js"
19-
precedence = "aggregate"
20-
SPDX-FileCopyrightText = "2019 Oliver Nightingale"
21-
SPDX-License-Identifier = "MIT"
22-
2317
[[annotations]]
2418
path = "config/optimize-pdf"
2519
precedence = "aggregate"
@@ -45,7 +39,7 @@ SPDX-FileCopyrightText = ["1998-2006 MACS, Inc.", "2007 SiSco, Inc."]
4539
SPDX-License-Identifier = "MIT"
4640

4741
[[annotations]]
48-
path = ["**.json", "scripts/vuidCounts.py", "config/chunkindex/addscript.**"]
42+
path = ["**.json", "scripts/vuidCounts.py"]
4943
precedence = "aggregate"
5044
SPDX-FileCopyrightText = "2020-2026 The Khronos Group Inc."
5145
SPDX-License-Identifier = "Apache-2.0"
@@ -56,12 +50,6 @@ precedence = "aggregate"
5650
SPDX-FileCopyrightText = "2014-2026 The Khronos Group Inc"
5751
SPDX-License-Identifier = "LicenseRef-KhronosSpecCopyright"
5852

59-
[[annotations]]
60-
path = "scripts/asciidoctor-chunker/**"
61-
precedence = "aggregate"
62-
SPDX-FileCopyrightText = "2021 Wataru Shito (@waterloo_jp)"
63-
SPDX-License-Identifier = "MIT"
64-
6553
[[annotations]]
6654
path = ".gitlab/merge_request_templates/extensiontemplate.md"
6755
precedence = "aggregate"
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
// Copyright (c) 2022-2026 Arm Ltd.
2+
//
3+
// SPDX-License-Identifier: CC-BY-4.0
4+
5+
include::{generated}/meta/{refprefix}VK_ARM_tensor_controls.adoc[]
6+
7+
=== Other Extension Metadata
8+
9+
*Last Modified Date*::
10+
2026-06-17
11+
*Interactions and External Dependencies*::
12+
None
13+
*IP Status*::
14+
No known IP claims.
15+
*Contributors*::
16+
- Kévin Petit, Arm Ltd.
17+
- Emma Lynn Mulier (Ben Yossef), Arm Ltd.
18+
- Oualid Khelifi, Arm Ltd.
19+
- Matteo Martincigh, Arm Ltd.
20+
- Matt Wash, Arm Ltd.
21+
- Einar Hov, Arm Ltd.
22+
23+
=== Description
24+
25+
This extension adds support for a few tensor features supported on Arm
26+
hardware.
27+
28+
include::{generated}/interfaces/VK_ARM_tensor_controls.adoc[]
29+
30+
=== New SPIR-V Capabilities
31+
32+
None.
33+
34+
=== Issues
35+
36+
None.
37+
38+
=== Version History
39+
40+
* Revision 1, 2026-06-17 (Kévin Petit)
41+
** Initial revision

appendices/VK_KHR_extended_flags.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ include::{generated}/meta/{refprefix}VK_KHR_extended_flags.adoc[]
1212
*Contributors*::
1313
- Andreas Süßenbach, NVIDIA
1414
- Daniel Koch, NVIDIA
15-
- Daniel Rakos, AMD
15+
- Daniel Rakos, RasterGrid
1616
- Jon Leech, Independent
1717
- Matthew Netsch, QUALCOMM
1818
- Noah Fredriks, AMD

appendices/glossary.adoc

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1227,6 +1227,14 @@ endif::VK_EXT_image_drm_format_modifier[]
12271227
ifdef::VK_ARM_tensors[]
12281228
* a slink:VkTensorARM created with ename:VK_TENSOR_TILING_OPTIMAL_ARM
12291229
endif::VK_ARM_tensors[]
1230+
ifdef::VK_ARM_tensor_controls[]
1231+
* a slink:VkTensorARM created with
1232+
ename:VK_TENSOR_TILING_BRICK_16_WIDE_ARM,
1233+
ename:VK_TENSOR_TILING_BRICK_8_WIDE_ARM,
1234+
ename:VK_TENSOR_TILING_BRICK_4_WIDE_ARM,
1235+
ename:VK_TENSOR_TILING_BLOCK_U_INTERLEAVED_ARM, or
1236+
ename:VK_TENSOR_TILING_BLOCK_U_INTERLEAVED_64K_ARM.
1237+
endif::VK_ARM_tensor_controls[]
12301238
--
12311239

12321240
ifdef::VK_EXT_image_drm_format_modifier[]

appendices/legacy.adoc

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -103,18 +103,17 @@ ifdef::VK_KHR_get_surface_capabilities2[]
103103
=== Physical Device Surface Queries: Superseded via version 2
104104

105105
Some parts of apiext:VK_KHR_surface were superseded by
106-
apiext:VK_KHR_get_surface_capabilities2, which introduced new versions
107-
of some physical device surface query functions.
108-
These provide the same functionality as the VK_KHR_surface functionality
109-
but with greater extensibility.
106+
apiext:VK_KHR_get_surface_capabilities2, which introduced new versions of
107+
some physical device surface query functions.
108+
These provide the same functionality as the VK_KHR_surface functionality but
109+
with greater extensibility.
110110

111111
When querying surface capabilities,
112112
flink:vkGetPhysicalDeviceSurfaceCapabilities2KHR should: be used instead of
113113
flink:vkGetPhysicalDeviceSurfaceCapabilitiesKHR.
114114

115-
When querying surface formats,
116-
flink:vkGetPhysicalDeviceSurfaceFormats2KHR should: be used instead of
117-
flink:vkGetPhysicalDeviceSurfaceFormatsKHR.
115+
When querying surface formats, flink:vkGetPhysicalDeviceSurfaceFormats2KHR
116+
should: be used instead of flink:vkGetPhysicalDeviceSurfaceFormatsKHR.
118117
endif::VK_KHR_get_surface_capabilities2[]
119118

120119

appendices/spirvenv.adoc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -968,6 +968,10 @@ endif::VK_EXT_shader_split_barrier[]
968968
{StorageClass} of code:Function, code:Private, code:Uniform,
969969
code:Workgroup, code:StorageBuffer, code:PhysicalStorageBuffer,
970970
code:PushConstant, or code:ShaderRecordBufferKHR
971+
* [[VUID-{refpage}-OpUndef-12464]]
972+
Any code:OpUndef instruction must: not have a code:Result code:Type of
973+
code:OpTypeImage, code:OpTypeSampler, code:OpTypeSampledImage,
974+
code:OpTypeAccelerationStructureKHR, or code:OpTypeTensorARM
971975
****
972976
--
973977

0 commit comments

Comments
 (0)