Commit Graph

13 Commits

Author SHA1 Message Date
Jon Leech 099174883d Change log for October 28, 2018 Vulkan 1.1.90 spec update:
* Update release number to 90.

Public Issues:

  * Tag flink:vkQueueWaitIdle as `externsync` in `vk.xml` (public pull
    request 815).
  * Update README (public pull request 834).
  * `VK_NV_framebuffer_mixed_samples` and `VK_AMD_mixed_attachment_samples`
    had confusing and contradictory valid usage statements when read in the
    all-extensions spec build. Change them to explicitly mention which
    extension each is for (public issue Vulkan-ValidationLayers/issues/353).

Internal Issues:

  * Update `COPYING.md` to clarify how externally generated Vulkan
    Specifications (for translations, annotations, or other reasons) must be
    copyrighted, and acknowledge the Exception Clause on the `vk.xml`
    license (internal issue 1079).
  * Specify that flink:vkGetPhysicalDeviceImageFormatProperties may: return
    pname:maxMipLevels 1 if the format is ycbcr (internal issue 1361).
  * Clarify previously underspecified language for
    flink:vkCmdPushConstants::pname:pStageFlags regarding use of push
    constants across multiple pipelines (internal issue 1403).
  * Fix typo in XML/headers for
    ename:VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT,
    which was previously
    etext:VK_STRUCTURE_TYPE_IMAGE_EXCPLICIT_DRM_FORMAT_MODIFIER_CREATE_INFO_EXT
    (internal issue 1428).
  * Fix markup of equations that were sporadically breaking the
    `optimize-pdf` step of PDF generation, due (apparently) to inconsistent
    treatment of unwrapped multicharacter terms by different LaTeX parsers
    (internal issue 1435).
  * For the <<memory-model-synchronizes-with synchronizes-with>> memory
    model relation cases involving a release barrier plus relaxed atomic
    write, treat the atomic as if it were a release atomic and allow the
    acquire side to read from its hypothetical release sequence. This is
    more consistent with how C++ defines synchronization for release fences
    (internal issue cross-api/memory-model#72).
  * Minor editorial changes to the <<memory-model, memory model>> appendix
    based on external feedback.
2018-10-28 21:32:44 -07:00
Jon Leech 8d6a7b23a7 Change log for October 21, 2018 Vulkan 1.1.89 spec update:
* Update release number to 89.

Public Issues:

  * Clarify the reference to <<features-limits-mipmapPrecisionBits, mipmap
    precision bits>> in the <<textures-image-level-selection, Image Level(s)
    Selection>> section (public issue 660).
  * Update <<debugging-object-types,VkObjectType and Vulkan Handle
    Relationship>> table with missing types (public pull request 820).
  * Miscellaneous minor markup cleanup (public pull request 822).
  * Fix copy/paste bugs in the description of how implicit
    availability/visibility operations for atomics/barriers are ordered in
    the <<memory-model-availability-visibility-semantics, Availability and
    Visibility Semantics>> section (public issue 823).
  * Add missing shading_rate_image bit from mesh pipeline list in the
    <<synchronization-pipeline-stages-types>> list (public issue 824).

Internal Issues:

  * Clarify that only statically used members of a push constant block need
    to be in the push constant range, and stop referring to block members as
    "`variables`" in the <<interfaces-resources-pushconst, Push Constant
    Interface>> section. This is related to
    https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/340
    (internal issue 1401).
  * Clarify interaction between flink:vkCmdSetDeviceMask and render pass
    control commands in the slink:VkDeviceGroupRenderPassBeginInfo section
    (internal issue 1416).
  * Miscellaneous minor markup cleanup.
  * Remove types defined by `"disabled"` extensions from
    validextensionstructs in the XML processing scripts, so downstream code
    generators don't emit them.
2018-10-21 06:08:41 -07:00
Jon Leech 911a764694 Change log for October 7, 2018 Vulkan 1.1.87 spec update:
* Update release number to 87.

Public Issues:

  * Merge flink:vkCmdPipelineBarrier self-dependency barrier VUs referring
    to the same subpass dependency (public pull request 756).
  * Describe default value of `"optional"` attribute in the registry schema
    document (public issue 769)
  * Fix links in <<VK_NVX_raytracing>> extension (public pull request 805).
  * Mark the <<VK_KHR_mir_surface>> extension obsolete (see public issue 814
    - does not close this, however).
  * Fix missing endif in Image Creation block (public issue 817).

Internal Issues:

  * Clarify that the compressed texture formats corresponding to
    <<features-features-textureCompressionETC2>>,
    <<features-features-textureCompressionASTC_LDR>>, and
    <<features-features-textureCompressionBC>> is not contingent on the
    feature bits, and may be supported even if the features are not enabled
    (internal issue 663).
  * Clarify that code:FragStencilRefEXT is output only in the
    <<interfaces-builtin-variables, Built-In Variables>> section (internal
    issue 1173).
  * Identify and correct many overly-aggressive uses of "`undefined`", and
    narrow them down, where straightforward to do so. Mark such resolved
    uses of "`undefined`" with the custom undefined: macro. Add a new
    <<writing-undefined, Describing Undefined Behavior>> section (internal
    issue 1267).
  * Don't require code:inline_uniform_block descriptors to be populated
    before use in the flink:vkAllocateDescriptorSets section (internal issue
    1380).
  * Allow suppressing inline SVG images by controlling this with an
    attribute set in the Makefile, rather than the explicit [%inline]
    directive (internal issue 1391).
  * Mark 'Khronos' as a registered trademark in several places, now that it
    is one.
  * Fix typo in the <<VK_KHR_shader_atomic_int64>> appendix using the GLSL
    naming of the compare exchange op when referring to the SPIR-V op.
  * Specify in the flink:vkGetPhysicalDeviceQueueFamilyProperties section
    that all implementations must support at least one queue family, and
    that every queue family must contain at least one queue.
  * Make slink:VkPipelineDynamicStateCreateInfo::pname:dynamicStateCount,
    slink:VkSampleLocationsInfoEXT::pname:sampleLocationsPerPixel, and
    slink:VkSampleLocationsInfoEXT::pname:sampleLocationsCount optional, to
    fix bogus implicit valid usage checks that were causing failures in the
    conformance tests.
  * Fix vendor tag in reserved extension 237 constants. Does not affect
    anything since it's just a placeholder, but this should avoid further
    comments.
  * Minor markup fixes in some extension appendices.

New Extensions:

  * `<<VK_FUCHSIA_imagepipe_surface>>`
2018-10-07 06:10:21 -07:00
Jon Leech 9858c1e89e Change log for September 19, 2018 Vulkan 1.1.85 spec update:
* Update release number to 85.

Public Issues:

  * Add self-dependency ename:VK_DEPENDENCY_BY_REGION_BIT valid usage
    statements for slink:VkSubpassDependency(public pull request 778).
  * Apply fix from pull request 742 to slink:VkSubpassDependency and
    slink:VkSubpassDependency2 (public pull request 779).
  * Specify the units of slink:VkBufferImageCopy::pname:bufferRowLength and
    pname:bufferImageHeight as texels (public pull request 781).
  * Better specify promoted parameter mapping in the
    `<<VK_KHR_create_renderpass2>>` appendix (public pull request 782).

Internal Issues:

  * Only include the <<fundamentals-validusage-versions, Valid Usage for
    Newer Core Versions>> section in Vulkan 1.1 or later (internal issue
    1381).

Other Issues:

  * Clean up redundant valid usage language for the
    `VK_ANDROID_external_memory_android_hardware_buffer` extension
    interaction with slink:VkImageCreateInfo.
  * Fix error in a flag name within valid usage statements for
    slink:VkMemoryAllocateInfo.
  * Clarify that memory types are not totally ordered in
    slink:VkPhysicalDeviceMemoryProperties.
  * For slink:VkWriteDescriptorSetInlineUniformBlockEXT, set
    structextends="VkWriteDescriptorSet" in `vk.xml`, and make
    slink:VkDescriptorSetLayoutBindingFlagsCreateInfoEXT::pname:pBindingFlags
    optional.
  * Add documentation of 'provisional' XML attribute to registry.txt.

New Extensions:

  * `VK_NV_compute_shader_derivatives`
  * `VK_NV_corner_sampled_image`
  * `VK_NV_fragment_shader_barycentric`
  * `VK_NV_mesh_shader`
  * `VK_NV_representative_fragment_test`
  * `VK_NV_scissor_exclusive`
  * `VK_NV_shader_image_footprint`
  * `VK_NV_shading_rate_image`
  * `VK_NVX_raytracing`
2018-09-15 18:35:16 -07:00
Jon Leech adadfce8a3 Change log for September 8, 2018 Vulkan 1.1.84 spec update:
* Update release number to 84.

Public Issues:

  * Fix code sample in the `<<VK_EXT_debug_utils>>` extension (public issue
    751).
  * Fix misleading comment in `vk.xml` for
    slink:VkDescriptorBufferInfo::pname:buffer (public pull request 762).
  * Fix formatting of deprecation attributes in schema doc (public pull
    request 767).
  * Change `can` to `may` in the description of
    elink:VkSparseImageFormatFlagBits, which are return values from queries
    (public pull request 768).
  * Prettify generated contact list in extension appendices, adding logos
    and a New Issue link (public pull request 770).
  * Enable sRGB conversion based on the image view format, not the image
    format, in the <<textures-format-conversion, Format Conversion>> section
    (public pull request 773).
  * Fix typo in equation in the <<primsrast-lines-basic, Basic Line Segment
    Rasterization>> section (public pull request 780).
  * Fix special characters in GitHub contacts links (public pull request
    783).
  * Make clean_pdf target remove pdf folder (public pull request 784).
  * Fix styleguide bad markup of block continuation (public pull request
    792).

Other Issues:

  * Allow a zero vertex attribute divisor in the
    `<<VK_EXT_vertex_attribute_divisor>>` extension, exposed via the
    slink:VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT feature.
  * Add missing `structextends="VkDeviceCreateInfo"` to
    slink:VkPhysicalDeviceShaderDrawParameterFeatures and
    slink:VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.

New Extensions:

  * `VK_KHR_memory_model`
  * `VK_EXT_astc_decode_mode`
  * `VK_EXT_inline_uniform_block`
2018-09-08 15:52:13 -07:00
Alexandre Thibodeau 2587c97687 Added potentially missing word, assuming that sRGB is enabled based on the image view format, not based on the image format. 2018-08-23 12:58:27 -04:00
Jon Leech dd9919749a Change log for August 13, 2018 Vulkan 1.1.83 spec update:
* Update release number to 83.

Public Issues:

  * Use [%inline] directive for all SVGs to reduce file size (public pull
    request 734).
  * Convert XML `value` aliases into \<alias> tags (public pull request
    747).
  * Fix metadoc script showing non-selected extensions (public pull request
    748).
  * Reapply public pull request 742 to make
    ename:VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT part of the
    graphices pipeline (public pull request 749).
  * Fix numerous typos related to accidental duplication of words (public
    pull request 760).
  * Fix `vk.xml` contact typos (public pull request 761).

Internal Issues:

  * Add images to the <<Standard sample locations>> table (internal issue
    1115).
  * Add a definition of "`Inherited from`" precision in the
    <<spirvenv-precision-operation, Precision and Operation of SPIR-V
    Instructions>> section (internal issue 1314).
  * Clarify that both built-in and user-defined variables count against the
    location limits for shader interfaces in the
    <<interfaces-iointerfaces-locations, Location Assignment>> section
    (internal issue 1316).
  * Merge "`required`" capabilities into the <<spirvenv-capabilities-table,
    list of optional: SPIR-V capabilities>> (internal issue 1320).
  * Relax the layout matching rules of descriptors referring to only a
    single aspect of a depth/stencil image, by reference to the new
    <<resources-image-layouts-matching-rule, Image Layout Matching Rules>>
    section (internal issue 1346).
  * Revert extension metadoc generator warning about name mismatches to a
    diagnostic, due to annoying warnings in build output for conscious
    choices we've made (internal issue 1351).

Other Issues:

  * Reserve bits for pending vendor extensions.
  * Make Vulkan consistent with SPIR-V regarding code:DepthReplacing and
    code:FragDepth in the <<interfaces-builtin-variables, Built-In
    Variables>> section.
  * Add missing ChangeLog entries for the previous three spec updates.
2018-08-13 06:23:03 -07:00
Jon Leech d957f42e8d
Merge pull request #734 from kainino0x/svg-inline
Use [%inline] for all SVGs
2018-08-13 04:29:49 -07:00
Jon Leech ff9357a4ba Change log for July 1, 2018 Vulkan 1.1.79 spec update:
* Update release number to 79.

Public Issues:

  * Add a note to the <<features-required-format-support, Required Format
    Support>> section clarifying that the required formats don't depend on
    the used flags (public issue 671).
  * Add a valid usage statement for flink:vkUpdateDescriptors that was
    previously described for slink:VkImageSubresourceRange, but not as a
    valid usage statement (public issue 713).
  * Modify implicit valid usage generator script to not emit 'must: not be
    0' for a parameter that is a pointer to a flags field, such as
    pname:pPeerMemoryFeatures (public issue 729).

Internal Issues:

  * Add definitions of "`obsoleted`" and "`deprecated`", and modify the
    definition of "`promoted`" in the <<glossary, Glossary>> (internal issue
    988).
  * Add language for integer texel output conversions (the conversion is
    undefined) to the <<textures-output-format-conversion]] Texel Output
    Format Conversion>> section. Simplify and clarify the floating-point
    conversion language in the <<fundamentals-general, General
    Requirements>> section and the new <<fundamentals-fp-conversion,
    Floating-Point Format Conversions>> section, and remove obsolete
    language in the format-specific floating-point sections (internal issue
    1275).
  * Add the elink:VkVendorId enumerated type to the Vulkan API / XML /
    header, so reserved Khronos vendor IDs can be referred to symbolically
    by clients. Note that only Khronos vendor IDs (e.g. non-PCI vendor IDs)
    are defined (internal issue 1299).
  * Fix typo in the <<fig-non-strict-lines, Non strict lines>> table
    (internal issue 1315).
  * Clean up and simplify the
    <<features-formats-requiring-sampler-ycbcr-conversion, YCbCr format
    properties>> table and use symbols consistently with other tables. Add a
    column for the number of planes.
  * Add code:Float16 to the <<spirvenv-capabilities-table, List of optional
    SPIR-V capabilities>> for the `VK_AMD_gpu_shader_half_float` extension.
2018-07-01 21:26:49 -07:00
Kai Ninomiya 4ba7c06e72 Use [%inline] for all SVGs
Provides a 12.6% size savings for vkspec.html
(697770 B -> 609679 B, gzipped), because:
(1) plaintext is smaller than base64-encoded plaintext, and
(2) base64 does not gzip as well as plaintext SVG.
2018-06-28 16:37:10 -07:00
Jon Leech 5300d9f05e Change log for April 15, 2018 Vulkan 1.1.73 spec update:
* Update release number to 73.

Github Issues:

  * Refine swapchain association with surface for slink:VkSwapchainKHR, with
    matching valid usage statements for slink:VkSwapchainCreateInfoKHR and
    discussion following the <<swapchain-wsi-image-create-info>> table
    (public issue 637).
  * Re-remove several valid usage statements from slink:VkImageCreateInfo
    that had previously been removed at the time that
    ename:VK_IMAGE_CREATE_EXTENDED_USAGE_BIT was introduced. These
    statements had incorrectly been restored due to an glitch while merging
    from the old `1.0` branch to the current `master` branch (public issue
    683).

Internal Issues:

  * Fix reference page generation and configure build to generate reference
    pages 1.1 with all extensions, rather than core only, as was the case
    for the 1.0 ref pages (internal issues 484, 1056, 1205).
  * Require that
    slink:VkMemoryDedicatedRequirements::pname:prefersDedicateAllocation is
    ename:VK_TRUE when
    slink:VkMemoryDedicatedRequirements::pname:requiresDedicateAllocation is
    ename:VK_TRUE (internal issue 1222).
  * Fix Ruby extension code so `diff_html` Makefile target works (internal
    issue 1230).
  * Update `genRelease` script to generate 1.1 + all extensions reference
    pages - but not the single-page HTML / PDF versions, which are even
    larger than the API spec (internal issue 1245).

Other Issues:

  * Add missing attributes to `vk.xml` for `VK_ANDROID_native_buffer`.
  * Specify that the slink:VkAttachmentDescription::pname:format member is
    the format of the image *view* that will be used for the attachment.
  * Use core sname:VkPhysicalDeviceFeatures2 in the `structextends` `vk.xml`
    attribute for sname:VkPhysicalDeviceDescriptorIndexingFeaturesEXT and
    sname:VkPhysicalDeviceDescriptorIndexingPropertiesEXT, rather than the
    KHR equivalent it was promoted from.
  * Fix the "`Fragment Input Attachment Interface`" glossary entry to match
    the specification body.
  * Clarify the interaction of sRGB images used as storage or texel buffers
    with <<textures-output-format-conversion, Texel Output Format
    Conversion>>.
  * Moved three valid usage statements from
    slink:VkRenderPassMultiviewCreateInfo up to
    slink:VkRenderPassCreateInfo, and added a new valid usage statement for
    slink:VkRenderPassInputAttachmentAspectCreateInfo.
  * Added valid usage statements for slink:VkBufferMemoryBarrier and
    slink:VkImageMemoryBarrier reflecting the global requirement that
    "`non-sparse resources must be bound to memory before being recorded to
    command`".

New Extensions:
2018-04-15 03:32:07 -07:00
Jon Leech 26f0bdbf1e Change log for March 5, 2018 Vulkan 1.1.72 spec update:
* Update release number to 72.

Github Issues:

  * Restructure the repository to put the specification `Makefile` and
    associated spec source material at the top level, `vk.xml` and
    associated scripts material in `xml/`, and generated include and source
    files in `include/vulkan/` and `src/ext_loader/`, respectively (public
    issue 436).
  * Add missing bullet point markup to flink:vkCmdCopyImage valid usage
    statement, so it gets a VUID assigned (public issue 627).
  * Fix broken links in a couple of extension appendices (public pull
    request 665).
  * Add the \<platform> tag to the index in section 4.1 of the registry
    schema documentation, and add the protect= attribute of \<extension>
    tags to the comments in `registry.rnc` (public issues 673, 678).
  * Add missing valid usage statements for sparse image interactions to
    flink:VkImageCreateInfo (public pull request 675).
  * Fix improper usage and grammar of "`can: not`" (public pull request
    681).
  * Remove duplicate spec language and NOTE on present layout between the
    flink:vkAcquireNextImageKHR and flink:vkAcquireNextImage2KHR commands
    (public pull request 685).
  * Fix some typos and markup issues (public pull request 689; public issues
    642, 667, 687).
  * Fix typo etext:VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FENCE_FD_BIT ->
    ename:VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT in the
    <<external-semaphore-handle-types-compatibility, External semaphore
    handle types compatibility>> table (public pull request 691).

Internal Issues:

  * Remove the need for the "`noautovalidity`" attribute on extension
    structures in `vk.xml`. It is now implied by the "`structextends`"
    attribute instead (internal issue 942).
  * Replace uses of "`currently bound`" with "`bound`", since "`currently`"
    is redundant and distracting, and add a corresponding rule to the style
    guide (internal issue 993).
  * Fixed subtle issues with the last updates to flink:vkAcquireNextImageKHR
    language that had resulted in ambiguities (internal issue 1178).
  * Make it clear that only one query of a given type is allowed at a time
    by reordering valid usage statements for flink:vkCmdBeginQuery and
    flink:vkCmdEndQuery, and removing redundant ones (internal issue 1213).
  * Swapped OL1 and OL3 in `tessparamUL.svg` to match previous version, and
    fixed where "`(no edge)`" appears (internal issue 1215).

Other Issues:

  * Fixed a minor problem with the valid usage statement extraction script,
    and corresponding markup in the spec source.

New Extensions:

  * `VK_AMD_shader_core_properties`
  * `VK_EXT_descriptor_indexing`
  * `VK_NV_shader_subgroup_partitioned`
2018-04-05 04:24:56 -07:00
Jon Leech 9a8314cd41 Restructure the repository to put the specification Makefile and
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).
2018-04-04 23:08:43 -07:00