Commit Graph

27 Commits

Author SHA1 Message Date
Jon Leech 5abf83f95d Change log for April 16, 2019 Vulkan 1.1.107 spec update:
* Update release number to 107.

Public Issues:

  * Fix revision date for the `<<VK_AMD_gpu_shader_half_float>>` appendix
    (public issue 617).
  * Make <<synchronization-pipeline-barriers-subpass-self-dependencies,
    subpass self-dependencies>> less restrictive (public issue 777).
  * Fix the `<<VK_EXT_full_screen_exclusive>>` dependency on
    `<<VK_KHR_win32_surface>>` in `vk.xml` (public pull request 849).
  * Remove single-page (`apispec.html`) refpage sub-targets from the
    Makefile `allman` target and the build instructions. The target is still
    present in the Makefile, but we have not been actively maintaining the
    single-page document and do not promise it will work. The full
    Specification and the individual API reference pages are what we support
    and publish at present (public issue 949).

Internal Issues:

  * De-duplicate common valid usage statements shared by multiple commands
    or structures by using asciidoctor includes and dynamically assigning
    part of the valid usage ID based on which command or structure they're
    being applied to (internal issue 779).
  * Add reference pages for constructs not part of the formal API, such as
    platform calling convention macros, and script changes supporting them
    This required suppressing some check_spec_links warning classes in order
    to pass CI, until a more sophisticated fix can be done (internal issue
    888).
  * Change math notation for the elink:VkPrimitiveTopology descriptions to
    use short forms `v` and `p` instead of `vertex` and `primitive`,
    increasing legibility (internal issue 1611).
  * Rewrite generated file includes relative to a globally specified path,
    fixing some issues with refpage generation (internal issue 1630).
  * Update contributor list for `<<VK_EXT_calibrated_timestamps>>`.
  * Fix use of pathlin in `scripts/generator.py` so the script will work on
    Windows under Python 3.5 (internal merge request 3107).
  * Add missing conditionals around the
    <<descriptorsets-accelerationstructure, Acceleration Structure>>
    section (internal merge request 3108).
  * More script synchronization with OpenXR spec repository (internal merge
    request 3109).
  * Mark the `<<VK_AMD_gpu_shader_half_float>>` and
    `<<VK_AMD_gpu_shader_int16>>` extensions as deprecated in `vk.xml` and
    the corresponding extension appendices (internal merge request 3112).

New Extensions:

  * `<<VK_EXT_headless_surface>>`
2019-04-16 05:19:43 -07:00
Petr Kraus f4d8a49e87 Fix random markup (#935) 2019-03-19 00:38:42 -07:00
Jon Leech 35e7bee5f0 Change log for March 3, 2019 Vulkan 1.1.102 spec update:
* Update release number to 102.

Public Issues:

  * Simplify flink:vkGetImageMemoryRequirements constraint for
    ename:VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT (public pull request 817).
  * Fix typo in markup of the <<textures-texel-coordinate-systems-diagrams,
    Texel Coordinate Systems, Corner Sampling>> image that was generating
    complaints from chunked HTML output generation (public pull request
    928).

Internal Issues:

  * Split the old <<features, Features>> chapter into four chapters:
    <<features, Features>>, <<limits, Limits>>, <<formats, Formats>>, and
    <<capabilities, Capabilities>>, with minor edits to the introductory
    paragraph of each chapter. Anchor names in these chapters were changed,
    with corresponding effects to xrefs to these anchors elsewhere in spec
    markup . The purpose is to make the chunked HTML spec output load faster
    on what was previously a single, gigantic chapter (internal issue 1554).
  * Add ename:VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV, to the supported
    pipeline stages for ename:VK_ACCESS_UNIFORM_READ,
    ename:VK_ACCESS_SHADER_READ, and ename:VK_ACCESS_SHADER_WRITE in the
    <<synchronization-access-types-supported>> table.
  * Correct legal name of Google, LLC in vk.xml \<tags> section and a
    copyright statement.
  * Clarify that Vulkan treats the Android
    code:AHARDWAREBUFFER_FORMAT_R8G8B8X8_UNORM format as RGBA, and the
    application is responsible for forcing the X/A component to be read as
    1.0, in the <<memory-external-android-hardware-buffer-formats>> table.
  * Clarify the vertex order of various primitive topologies, and define the
    order of transform feedback vertex capture based on that. This involves
    a lot of refactoring and cleanup in the <<drawing-primitive-topologies,
    Primitive Topologies>>, <<geometry-input, Geometry Shader Input
    Primitives>> sections, and <<vertexpostproc-transform-feedback Transform
    Feedback>> sections, and numerous places in the <<tessellation>>
    chapter,

New Extensions:

  * `VK_EXT_metal_surface`
  * `VK_EXT_ycbcr_image_arrays` (internal issue 1361).
  * `VK_NVX_image_view_handle`
2019-03-03 21:05:48 -08:00
Jon Leech 55220784e0 Change log for February 17, 2019 Vulkan 1.1.101 spec update:
* Update release number to 101.

Public Issues:

  * Make clear that memory types for imported host memory must be host
    visible in slink:VkMemoryHostPointerPropertiesEXT.txt (public issue
    897).
  * Make <<interfaces-resources-layout, WARNING block>> into a NOTE block,
    per the styleguide (public pull request 916).

Internal Issues:

  * Make <<textures-output-format-conversion, computation of derivatives in
    non-uniform flow control>> have undefined behavior (internal issue
    1367).
  * Make behavior, not just values, undefined for
    <<textures-layout-validation, reads from inconsistent YCbCr layouts>>
    (internal issue 1366).
  * Consolidate version and extension behavior documentation in the
    <<extended-functionality, Extended Functionality>> appendix, While a
    great deal of text was moved from other parts of the Specification into
    the appendix, this just serves to simplify and make consistent
    discussions of versions and extensions (internal issue 1473).
  * Add limits for slink:VkPhysicalDeviceRayTracingPropertiesNV in the
    <<features-limits-types, Required Limit Types>> and
    <<features-limits-required, Required Limits>> tables (internal issue
    1511).
  * Disallow <<memory-protected-memory, indirect calls within protected
    command buffers>> by adding valid usage statements for the related
    indirect dispatch and draw commands (internal issue 1513).
  * Add valid usage stataements to slink:VkGraphicsPipelineCreateInfo,
    slink:VkSubpassDescription, slink:VkSubpassDescription2KHR,
    slink:VkSubpassDescriptionDepthStencilResolveKHR, and
    slink:VkImageViewCreateInfo preventing the creation of a renderpass with
    attachments in formats that are not supported for rendering (internal
    issue 1552).
  * Qualify valid usage statements for
    slink:VkAttachmentReference::pname:layout parameter so restrictions only
    apply if an attachment is ename:VK_ATTACHMENT_UNUSED (internal issue
    1561).
  * Add valid usage statement for flink:vkCmdDrawIndirectByteCountEXT
    restricting pname:vertexStride to be positive (internal issue 1566).
  * Make the `VK_EXT_sample_locations` extension depend on
    `VK_KHR_get_physical_device_properties2` in `vk.xml`.
  * Rearrange and simplify the <<interfaces-resources-layout, block layout
    rules>>.

New Extensions:

  * `VK_NV_cooperative_matrix`
  * `VK_EXT_depth_clip_enable` (internal issue 1485).
2019-02-15 04:00:36 -08:00
Jon Leech 56e0289318 Change log for January 05, 2019 Vulkan 1.1.97 spec update:
* 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`
2019-01-05 19:40:12 -08:00
Jon Leech b557dd2167 Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.

Public Issues:

  * Fix typo in `vk.xml` for `structextends` attribute of
    slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
  * Fix links in optimized PDF output (public PR 879).

Internal Issues:

  * Add a link to GitHub contributors in the <<credits, Other Credits>>
    section (internal issue 808).
  * Clarify the behavior of command aliases described in the <<versions,Core
    Revisions>> and <<initialization-functionpointers, Command Function
    Pointers>> sections and the registry schema document with respect to
    whether they are or are not the same entry point, and what the behaviour
    of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
    1462).
  * Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
    writing to code:Layer and code:viewportIndex to apply to any vertex
    processing stage (internal issue 1475).
  * Make sparse image creation optional for Y'C~B~C~R~ formats in the
    <<features-required-format-support, Required Format Support>> section
    and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
    requiring sampler Y'C~B~C~R~ conversion for
    ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
    1476).
  * Modify the valid usage statement for
    flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
    pname:maxTransformFeedbackBufferDataStride limit rather than the
    pname:maxVertexInputBindingStride limit, which is a better match for
    transform feedback related operations (internal issue 1487).
  * Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
    have the `uint32_t` type. This is an imcompatible change to an EXT
    that's very recently released; although this is against usual Vulkan WG
    policy, we discussed and consider this an acceptable risk, but have
    polled the mesa-dev list in case there are use cases we missed (internal
    issue 1492).
  * Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
    `VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
  * Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
    (internal MR 2950).
  * Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
    minor markup issues discovered by the script (internal MR 2955).
  * Update `BUILD.md` to the current Ruby version (2.5.3), and make some
    corresponding updates to per-platform build instructions (internal MR
    2956).
  * Fix binding numbers and other details in
    flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
    (internal MR 2960).
  * Remove some nautovalidity="true" in `vk.xml` for NV extensions where
    it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
Jon Leech ef29cea94b Change log for December 3, 2018 Vulkan 1.1.95 spec update:
* Update release number to 95.

Public Issues:

  * Fix valid usage and XML issues found in public issues 789 and 790 for
    the `VK_EXT_debug_utils` extension (public pull request 794).
  * Replace references to `VK_NV_dedicated_allocation` with links to the
    corresponding slink:slink:VkMemoryDedicatedRequirements and
    slink:slink:VkMemoryDedicatedAllocateInfo structures in the description
    of elink:VkExternalMemoryFeatureFlagBits (public issue 801).
  * Fix miscellaneous minor markup and spelling issues in
    `VK_NV_ray_tracing` extension (public pull request 860).
  * Remove "returnedonly" from XML for
    slink:VkPhysicalDeviceInlineUniformBlockFeaturesEXT and
    slink:VkPhysicalDeviceVulkanMemoryModelFeaturesKHR (public issue 862).

Internal Issues:

  * Add to the description of the
    <<features-limits-maxComputeSharedMemorySize,
    pname:maxCompureSharedMemorySize>> feature to state the shared variables
    should be packed at least as tightly as std430 (internal issue 1386).
  * Fix and clarify various references to image and image view usage in
    flink:vkCmdBindShadingRateImageNV, flink:vkCmdBeginRenderPass, and
    slink:VkImageStencilUsageCreateInfoEXT (internal issue 1432).
  * Require that the slink:VkImage mipmap chain match the Android hardware
    buffer mipmap chain for slink:VkMemoryAllocateInfo (internal issue
    1479).
  * Fix the definition of slink:VkSwapchainCreateInfoKHR valid usage
    statement 01778 (Vulkan-ValidationLayers!15)
  * Fix descriptions of <<interfaces-builtin-variables-launchid,
    code:LaunchIDNV>> and <<interfaces-builtin-variables-launchsize,
    code:LaunchSizeNV>> to code:uvec3.

New Extensions:

  * `VK_KHR_shader_float16_int8`
  * `VK_KHR_shader_float_controls`
2018-12-03 02:41:34 -08:00
Jon Leech c24b84795f Change log for November 25, 2018 Vulkan 1.1.94 spec update:
* Update release number to 94.

Public Issues:

  * Use the terms "`texel block`" and "`texel block size`" instead of "`data
    element`" and "`element size`", and define "`element`" as an array slot.
    In addition to the terminology changes, retitled the <<texel-block-size,
    Representation and Texel Block Size>> section and added texel block size
    / no. of texels/block information to the
    <<features-formats-compatibility, Compatible Formats>> table. There is
    some additional work underway to make sure the compatibility language
    makes sense for all of uncompressed, compressed, and multiplanar formats
    (public issue 763).
  * Cleanup `VK_NV_ray_tracing` language (public issues 858, 859).

Internal Issues:

  * Specify in <<shaders-invocationgroups, Invocation and Derivative
    Groups>> and <<textures-output-format-conversion, Texel Output Format
    Conversion>> that derivative groups are quads when code:SubgroupSize >=
    4 (internal issue 1390).
  * Make the type of slink:VkDescriptorUpdateTemplateCreateInfo::pNext
    `const` following pattern for the other stext:Vk*CreateInfo structures
    (internal issue 1459).
  * Specify that flink:vkCmdClearAttachments executes as a drawing command,
    rather than a transfer command (internal issue 1463).
  * Update `VK_NV_ray_tracing` to use code:InstanceId instead of
    code:InstanceIndex.

New Extensions:

  * `VK_KHR_swapchain_mutable_format`
  * `VK_EXT_fragment_density_map`
2018-11-25 23:27:30 -08:00
Jon Leech 256a1ef661 Change log for November 18, 2018 Vulkan 1.1.93 spec update:
* 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`
2018-11-18 02:55:14 -08:00
Jon Leech 279452463a Change log for November 12, 2018 Vulkan 1.1.92 spec update:
* Update release number to 92.

Public Issues:

  * Move and modify valid usage statements dealing with pname:aspectMask in
    flink:vkCmdClearColorImage, flink:vkCmdClearDepthStencilImage, and
    slink:VkClearAttachment, so they are in places where all necessary
    information is available (public issue 529).
  * Fix math markup in <<textures-texel-anisotropic-filtering, Texel
    Anisotropic Filtering>> (public pull request 840).
  * Fix misspellings (public pull request 845).

Internal Issues:

  * Add installation instructions and a Makefile "`chunked`" target for
    chunked HTML generation (internal issue 1352).
  * Fix pipeline mesh diagram style; also fix a minor bug in the classic
    pipeline diagram where vertex/index buffers wrongly fed into the vertex
    shader (internal issue 1436).
  * Make asciidoctor ERROR output raise an error, and don't suppress
    executed command output from CI make invocation (internal issue 1454).
  * Minor typo fixes and clarifications for `VK_NV_raytracing`.
  * Cleanup extension-specific properties
  ** Remove duplicated documentation for pname:maxDiscardRectangles,
     pname:pointClippingBehavior, and pname:maxVertexAttribDivisor (they
     shouldn't be documented with the other members of
     slink:VkPhysicalDeviceLimits at all).
  ** Remove duplicate anchor for pname:maxVertexAttribDivisor
  ** Consistently document stext:VkPhysicalDevice<Extension>PropertiesKHR
  *** Always document pname:sType/pname:pNext (was inconsistent before)
  *** Always mention chaining to slink:VkPhysicalDeviceProperties2 (and not
      as slink:VkPhysicalDeviceProperties2KHR)
  *** Always include Valid Usage statements last
  * Update Makefile 'checklinks' target and associated scripts, and fix
    markup problems identified by checkLinks.py, so that we can rely on the
    checklinks script as part of Gitlab CI.
2018-11-12 04:40:40 -08:00
Petr Kraus 9ba8128418 Try to fix html page content overflow 2018-11-05 02:54:34 +01:00
Petr Kraus 572413c176 Fix bad figures options
- remove `{fullimagewidth}` (not sure what it is, but it does not seem to exist)
- add missing `{imageopts}`
2018-10-31 04:20:09 +01:00
Jon Leech 894211de5f (The previous commit didn't actually include internal gitlab changes
since 1.1.89; fixed now).

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 23:53:18 -07:00
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 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
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
Yunchao He fe10c9647c Fix a small typo in chapter 24.6.1: Basic Line Segment Rasterization 2018-08-28 10:02:20 -06: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 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 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
Petr Kraus 9adcc2f19f Random markup fixes 2018-06-11 21:04:31 +02:00
Petr Kraus ec4632fa37 Fix leftover $ inline latexmath 2018-04-16 01:56:17 +02: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