* Update release number to 98.
Public Issues:
* Fix missing markup in flink:vkDestroyPipelineLayout valid usage
statement (pull request 882).
* Add missing contributors for `<<VK_EXT_buffer_device_address>>` (public
pull request 891).
Internal Issues:
* Detect nested bullet points in valid usage blocks and warn about them
during VUID assignment (internal issue 1382).
* Update the style guide to document the process for reserving new bits in
bitmask types (internal issue 1411).
* Clarify for slink:VkApplicationInfo::pname:apiVersion and in the
<<fundamentals-validusage-versions, Valid Usage for Newer Core
Versions>> section when it is valid for an application to use a certain
version of Vulkan API functionality (for an instance and for a
device/physical device); and when the validation layers must generate an
error (internal issue 1412).
* Add optional <<memory-model-availability-visibility, transitive
availability/visibility operations to the memory model, including a new
pname:vulkanMemoryModelAvailabilityVisibilityChains feature for
slink:VkPhysicalDeviceVulkanMemoryModelFeaturesKHR (internal issue
1460).
* Add the code:StorageBuffer storage class to those in the
<<interfaces-resources-descset, Descriptor Set Interface>> (internal
issue 1480).
* Add missing `returnedonly` tags for a number of returned extension
structures that can be passed in pname:pNext chains (internal issue
1515).
* Clean up and rearrange some spec language for
slink:VkRenderPassCreateInfo and slink:VkAttachmentReference.txt
(internal issue 1522).
* Correctly round the code:OpVectorTimesScalar and
code:OpMatrixTimesScalar SPIR-V operations in the <<Precision of core
SPIR-V Instructions>> table (internal merge request 2996).
* Work around cases in flink:vkCmdBeginTransformFeedbackEXT,
flink:vkCmdEndTransformFeedbackEXT, and
slink:VkPipelineCoverageModulationStateCreateInfoNV where an array
parameter is `optional` but the length is not in `vk.xml`. This is an
interim fix using `noautovalidity` + handcoded VU replacing those that
should be autogenerated (internal issue 2944 and
https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/480).
* Remove redundant capability validation of the code:float16 and code:int8
SPIR-V capabilities from the <<spirvenv-capabilities, Capabilities>>
section, since they are already covered in the preceding table.
* Update check_spec_links script, including validation for reference page
open blocks. Fix errors identified by the script.
* Update release number to 97.
Public Issues:
* Add a special case to the <<renderpass-compatibility, Render Pass
Compatibility>> rules allowing single-subpass renderpasses to be
compatible even if they have different resolve attachment references
(public issue 835).
* Fix the miss shader binding table record address rule in the
<<shader-binding-table-indexing-rules, Miss Shaders>> section to index
by code:missIndex, not code:sbtOffset (public issue 875).
Internal Issues:
* Add a missing anchor to the elink:VkSamplerCreateFlagBits language
(internal issue 1483).
* Add missing implicit valid usage include for slink:VkHdrMetadataEXT and
corresponding `noautovalidity` attributes in `vk.xml` for the
externally-defined metadata properties (internal issue 1514).
* Remove restrictions on the `mask` parameter of SPIR-V's
code:OpGroupNonUniformXor in the <<spirvenv-module-validation,
Validation Rules within a Module>> appendix (internal merge request
2971).
* Restore `noautovalidity` attribute for
slink:VkPipelineViewportWScalingStateCreateInfoNV::pname:pViewportWScalings
in `vk.xml` (internal merge request 2975).
* Update copyright dates on Khronos-copyrighted files to 2019 (internal
merge request 2980).
New Extensions:
* `VK_KHR_depth_stencil_resolve`
* `VK_EXT_buffer_device_address`
* `VK_EXT_memory_budget`
* `VK_EXT_memory_priority`
* `VK_EXT_validation_features`
* Update release number to 93.
Public Issues:
* Add spec language for ename:VK_INDEX_TYPE_NONE_NV and fix up
slink:VkAccelerationStructureTypeNV (public issue 848).
* Add missing suffix in description of slink:VkSubpassDescription2KHR
parameters (public pull request 851).
* Fix miscellaneous typos (public pull request 855).
* Add driver ID for Pastel (public pull request 856).
* Add missing include directive for slink:VkMemoryWin32HandlePropertiesKHR
implicit valid usage statements (public pull request 857).
Internal Issues:
* Restrict the storage classes permitted for SPIR-V atomics to what is
actually supported, in the <<spirvenv-module-validation, Validation
Rules within a Module>> section (internal issue 1123).
* Add a missing Valid Usage statement to slink:VkRenderPassCreateInfo for
the case pname:stencilLoadOp == ename:VK_LOAD_OP_CLEAR, pname:layout ==
ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL (internal issue
1408).
* Modify optimize-pdf script and Makefile to retain non-optimized original
PDF on errors (internal issue 1435).
* Add <<spirvenv-module-validation, SPIR-V validation rules>> stating that
only the listed code:BuiltIn decorations are permitted, and only when
relevante features and extensions are enabled (internal issue 1449).
* Remove some duplicated Valid Usage IDs created via cut & paste error
(internal issue 1455).
* Build HTML output for extension reference pages (internal issue 1461).
** Improve genRef.py handling of aliases defined inside other refpages.
** Emit aliases in pygenerator.py.
** Add XML noautovalidity flag for VkRenderPassCreateFlags until there
are some corresponding FlagBits defined.
** Corrected types= attribute on some refpage blocks to 'flags'
** Added refpage blocks for some missing types detected by CI tests.
* Fixed many Valid Usage statement issues in slink:VkRenderPassCreateInfo,
slink:VkSubpassDescription, slink:VkSubpassDescription2KHR,
slink:VkSubpassDependency2KHR, flink:vkCmdBeginRenderPass,
flink:vkCmdBeginRenderPass2KHR, and slink:VkRenderPassBeginInfo
discovered while adding `VK_KHR_create_renderpass2` to the validation
layers.
New Extensions:
* `VK_EXT_scalar_block_layout`
* `VK_EXT_separate_stencil_usage`
* Update release number to 78.
Public Issues:
* Change markup so parameter descriptions include links to structures,
instead of just their names (public issue 697).
* Resume publishing updated Vulkan 1.0 + KHR extensions and Vulkan 1.0 +
all extensions versions of the specification (public issue 722).
* Reapply fixes from public pull request 698 for
`VK_ANDROID_external_memory_android_hardware_buffer`, which accidentally
were reverted at some point (public pull request 724).
* Fix undefined format valid usage statements for slink:VkImageCreateInfo
in the presence of the
`VK_ANDROID_external_memory_android_hardware_buffer` extension (public
pull request 725).
* Miscellaneous markup consistency fixes (public pull request 728).
Internal Issues:
* When building specifications containing vendor extensions, add terms to
the Khronos spec copyright specifying that the result is not a ratified
specification (internal issue 739).
* Change the value of the
pname:maxDescriptorSetUpdateAfterBindUniformBuffers minimum limit to 72
(6 times pname:maxPerStageDescriptorUpdateAfterBindUniformBuffers) in
the <<features-limits-required, Required Limits>> table (internal issue
1300).
Other Issues:
* Fix link to resource image view compatibility table in the valid usage
statements for slink:VkImageFormatListCreateInfoKHR (internal pull
request 2711).
associated material at the top level, vk.xml and associated material in
xml/, and generated include and source files in include/vulkan/ and
src/ext_loader/, respectively (public issue 436).