Commit Graph

17 Commits

Author SHA1 Message Date
Jon Leech e24e42dcff Change log for November 4, 2018 Vulkan 1.1.91 spec update:
* Update release number to 91.

Public Issues:

  * Update Ubuntu subsystem build instructions in `BUILD.adoc` (public pull
    request 624).
  * Delete the `VK_KHR_mir_surface` extension from the Specification and
    XML, due to EOL of the only driver known to have supported it, and
    near-EOL of Mir itself (public issue 814).
  * Fix options for some figures that were using old ones (public pull
    request 841).
  * Fix various accidentally repeated words (public pull request 843).
  * Use `time.process_time()`, introduced in Python 3.3, in the scripts
    instead of `time.clock()`, which will be removed in Python 3.8 (public
    pull request 844).

Internal Issues:

  * Update valid usage statements for
    `VK_ANDROID_external_memory_android_hardware_buffer` in
    slink:VkMemoryAllocateInfo,
    slink:VkImportAndroidHardwareBufferInfoANDROID, and
    flink:vkGetAndroidHardwareBufferPropertiesANDROID to actually be
    verifiable (internal issue 1419).
  * Update valid usage statements for
    `VK_ANDROID_external_memory_android_hardware_buffer` in
    slink:VkMemoryAllocateInfo, slink:VkImageCreateInfo, and
    slink:VkImageViewCreateInfo to move valid usage statements in
    doubly-nested bullet points up one level, accomodating limitations of
    the valid usage extraction script that creates `validusage.json`
    (internal issue 1434).
  * Fix typo etext:VK_ACCESS_SHADING_RATE_IMAGE_BIT_NV to the correct
    ename:VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV.
  * Add missing etext:VK_STRUCTURE_TYPE_* tokens to appendices for
    extensions missing them.

New Extensions:

  * `VK_AMD_memory_overallocation_behavior`
  * `VK_NV_ray_tracing`, replacing `VK_NVX_raytracing`
2018-11-03 23:50:13 -07:00
Jon Leech 93d65eb125
Merge pull request #822 from krOoze/markup
Random markup fixes
2018-10-21 04:18:00 -07:00
Jon Leech 0a7a04f32b Change log for October 13, 2018 Vulkan 1.1.88 spec update:
* Update release number to 88.

Public Issues:

  * Make clear that
    tname:PFN_vkDebugUtilsMessengerCallbackEXT::pname:messageTypes is a
    bitmask, and correct a typo in the spelling of
    slink:VkDebugUtilsMessengerCreateInfoEXT.txt::pname:messageType (public
    pull request 800).
  * Make an ABI-compatible change of the type of
    slink:VkPhysicalDeviceDriverPropertiesKHR::pname:driverID to use the new
    elink:VkDriverIdKHR type (public issue 811).

Internal Issues:

  * Clarify for the <<features-features-shaderStorageImageExtendedFormats>>
    feature and in the <<spirvenv-capabilities-table>> that the feature
    means that all of the formats are supported, and that otherwise the
    features can be queried per-format (internal issue 1273).
  * Clarified interactions of `VK_EXT_external_memory_host` with host cache
    management commands and structures flink:vkMapMemory,
    flink:vkFlushMappedMemoryRanges, slink:VkMappedMemoryRange, and
    flink:vkUnmapMemory using the new glossary term "`Host Mapped Device
    Memory`" (internal issue 1385).
  * Update the language for flink:vkCreateViSurfaceNN.txt describing the
    pname:currentExtent of a VI surface to more accurately reflect current
    capabilities, replacing "`undefined`" with more explicit behavior
    (internal issue 1410).

New Extensions:

  * `VK_EXT_calibrated_timestamps`
  * `VK_EXT_image_drm_format_modifier` (this extension was previously
    disabled in vk.xml, and has now been enabled after some changes to fix
    performance issues).
  * `VK_EXT_pci_bus_info`
  * `VK_EXT_transform_feedback`
  * `VK_GOOGLE_hlsl_functionality1`, exposing support for
    `SPV_GOOGLE_hlsl_functionality1`.
  * `VK_GOOGLE_decorate_string`, exposing support for
    `SPV_GOOGLE_decorate_string`.
2018-10-13 03:23:03 -07:00
Petr Kraus d9e73159f2 Convert to pretty quotes 2018-10-09 01:41:40 +02: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 7ea62a02a9 Change log for September 29, 2018 Vulkan 1.1.86 spec update:
* Update release number to 86.

Internal Issues:

  * Add new <<resources-image-creation-limits, Image Creation Limits>>
    section and reference that from valid usage statements, reducing
    combinatorial complexity of extension-dependent VUs. Also fixes some
    underspecified limits (such as pname:maxMipLevels) in the VUs for
    slink:VkImageCreateInfo when
    slink:VkExternalMemoryImageCreateInfo::pname:externalMemoryHandles
    contains multiple bits, and fixes incorrectly (and underspecified)
    limits when an Android external format is used (internal issue 1370).
  * Remove unused "`Fragment Area Granularity`" glossary entry accidentally
    introduced in the 1.1.85 update.

New Extensions:

  * `VK_KHR_driver_properties`
  * `VK_KHR_shader_atomic_int64`
  * The specification sources contain text for another extension,
    `VK_EXT_image_drm_format_modifier`, but this extension is not yet
    complete, and is marked disabled in `vk.xml`. The extension will be
    enabled, and become part of the spec, only when the authors decide it is
    ready.
2018-09-29 03:23:41 -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
Jon Leech ff0c233908 Change log for July 30, 2018 Vulkan 1.1.82 spec update:
* Update release number to 82.

Public Issues:

  * Add flink:vkDestroyPipelineLayout valid usage statement that the layout
    must not have been used with command buffers still in the recording
    state (public issue 730).
  * Correct \<unused> tag for elink:VkResult in `vk.xml` (public merge
    request 746).

Internal Issues:

  * Add a valid usage statement to flink:vkQueueSubmit, and similar language
    to the definitions of <<synchronization-queue-transfers-acquire, acquire
    operations>> requiring that an acquire operation follow a previous
    release of the same subresource (internal issue 1290).
  * Add <<resources-image-format-features,Image Format Features>> and
    <<resources-image-view-format-features,Image View Format Features>>
    sections that precisely define the slink:VkFormatFeatures supported by
    images and image views, and rewrite valid usage statements to reference
    these sections instead of duplicating language (internal issue 1310).
  * Reword and consolidate synchronization valid usage statements for
    flink:vkCmdPipelineBarrier such that they correctly account for mutiple
    possible self-dependencies (internal issue 1322).
  * Change order of <<Standard sample locations>> for 2xMSAA (internal issue
    1347).
  * Add definitions of "`<<Correctly Rounded>>`" and "`<<ULP>>`" in the
    SPIR-V environment appendix, and "`Units in the Last Place (ULP)`" in
    the glossary.

New Extensions:

  * `VK_NV_device_diagnostic_checkpoints`
2018-07-30 03:20:00 -07:00
Jon Leech 831e2d4525 Change log for July 7, 2018 Vulkan 1.1.80 spec update:
* Update release number to 80.

Public Issues:

  * Remove unused "`API Order`" term from glossary (public issue 657).
  * Dynamically generate the extension appendix includes based on
    information in `vk.xml`, including new metadata tags describing
    deprecated, obsoleted, and promoted extensions (public pull request
    690).

Internal Issues:

  * Add valid usage statements to flink:vkCmdBindDescriptorSets to keep
    offsets + range less than or equal to the buffer size (internal issue
    1174).

New Extensions:

  * `VK_EXT_conditional_render`
  * `VK_KHR_create_renderpass2` (public issue 736)
  * `VK_KHR_8bit_storage` (public issue 737)
2018-07-07 02:21:56 -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
Petr Kraus 9adcc2f19f Random markup fixes 2018-06-11 21:04:31 +02:00
Jon Leech ee13fc355f Change log for May 25, 2018 Vulkan 1.1.76 spec update:
* Update release number to 76.

Internal Issues:

  * Add an exception clause to the license on `vk.xml`, enabling its use
    with GPL-based projects (internal issue 1017).
  * Remove the generated `vulkan_ext.[ch]` files, which are no longer
    supported. Add `src/ext_loader/README.md` explaining why, and update
    files in `xml/` to not generate them by default (internal issue 1268)

Other Issues:

  * Fix typos in valid usage statements for the
    ftext:vkDrawIndexedIndirectCount* commands, replacing
    sizeof(VkDrawIndirectComment) with sizeof(VkDrawIndexedIndirectCommand).
  * Modify the <<spirvenv-module-validation, Validation Rules within a
    Module>> section to require code:NonReadable or code:NonWriteable in
    SPIR-V code for images with an image format of code:Unknown if one of
    the requisite code:shaderImageReadWithoutFormat or
    code:shaderImageWriteWithoutFormat features is disabled.

New Extensions:

  * `VK_KHR_get_display_properties2`
  * `VK_KHR_draw_indirect_count`
2018-05-25 04:00:32 -07:00
Jon Leech deabecf729
Merge pull request #693 from krOoze/dev_inst_ext_dependencies
Refine extension dependencies
2018-04-21 02:46:37 -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
Petr Kraus b6aea0ffaf Refine extension dependencies
- requires impls to honor resolution in #659
- addresses some confusion in Vulkan-LoaderAndValidationLayers/#2366
- require impls to support dependencies
2018-04-09 14:52:32 +02: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