10 Commits

Author SHA1 Message Date
Jon Leech
94f03f1cca Change log for August 11, 2019 Vulkan 1.1.118 spec update:
* Update release number to 118.

Github Issues:

  * Update `BUILD.adoc` to specifically require asciidoctor 1.5.8, and make
    that change to the gitlab CI script (public issue 968).
  * Remove redundant slink:VkSubpassDependency and
    slink:VkSubpassDependency2KHR valid usage statements
    (public pull request 995).
  * Clarify the <<vkGetInstanceProcAddr behavior>> and <<vkGetDeviceProcAddr
    behavior>> tables (public pull request 1004).
  * Fix use of nonexistent
    slink:VkSamplerYcbcrConversionImageFormatProperties::pname:maxCombinedImageSamplerDescriptorCount
    (public pull request 1010).
  * Use compatible pathlib for python2 (public pull request 1012).

Internal Issues:

  * Mark the <<VK_KHR_vulkan_memory_model>> extension as no longer
    provisional in `vk.xml` (internal issue 1369).
  * Clarify that use-defined code:Input and code:Output variables cannot be
    code:Boolean in the <<interfaces-iointerfaces-user, User-defined
    Variable Interface>> section (internal issue 1663).
  * Fix naming inconsistencies in
    slink:VkPhysicalDevicePerformanceQueryFeaturesKHR,
    slink:VkPhysicalDevicePerformanceQueryPropertiesKHR,
    slink:VkQueryPoolPerformanceCreateInfoKHR, and associated enumerants
    (internal issue 1746).
  * Use ACM reference style for normative references (internal merge request
    3256).
  * Explicitly list the features changed in Vulkan 1.1 in the
    <<features-requirements, Feature Requirements>> section and the
    <<versions, Core Revisions (Informative)>> appendix (internal merge
    request 3274).
  * Add the slink:VkPhysicalDeviceSubgroupSizeControlFeaturesEXT structure
    to the <<VK_EXT_subgroup_size_control>> extension, which was
    accidentally omitted in the initial release of the extension (internal
    merge request 3287).
  * Add missing slink:VkImageUsageFlag description for
    ename:VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT (internal merge
    request 3292).
  * Add valid usage statements to slink:VkAccelerationStructureInfoNV and
    flink:vkGetAccelerationStructureHandleNV to clarify usage of
    acceleration structure handle and geometries (internal merge request
    3292).

New Extensions:

  * `<<VK_AMD_shader_core_properties2>>`
  * `<<VK_AMD_pipeline_compiler_control>>`
2019-08-11 04:54:43 -07:00
Jon Leech
0e3ceb7574 Change log for July 28, 2019 Vulkan 1.1.117 spec update:
* Update release number to 117.

Github Issues:

  * Add ename:VK_STENCIL_FACE_FRONT_AND_BACK for naming consistency, and
    alias the old ename:VK_STENCIL_FRONT_AND_BACK for backwards
    compatibility (public issue 991).
  * Fix minor issues with valid usage statements for
    flink:vkCreateFramebuffer, slink:VkFramebufferCreateInfo, and
    slink:VkRenderPassBeginInfo when the `<<VK_KHR_imageless_framebuffer>>`
    extension is enabled (public issue 998).
  * Clarify the subpass dependency requirement in the
    <<renderpass-layout-transitions>> section to eliminate the need for a
    subpass dependency for either the same or different layouts as long as
    they're both read-only (relates to
    https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/948).

Internal Issues:

  * Document that <<extendingvulkan-compatibility-promotion, backwards
    compatibility aliases are not promoted>> as part of promoting an
    extension (internal issue 1677).
  * Update VK_ANDROID_native_buffer extension to spec version 8 (internal
    issue 1753).
  * Add missing section to the <<VK_KHR_shader_controls_v4_incompatibility,
    VK_KHR_shader_float_controls>> extension appendix describing
    the reason for the breaking API change in version 4 of the extension,
    and correct the version to 4 in `vk.xml` (internal merge request
    3275).
  * Add valid usage statements to slink:VkAccelerationStructureInfoNV
    requiring the ename:VK_BUFFER_USAGE_RAY_TRACING_BIT_NV usage flag for
    buffers used in acceleration structure building.

New Extensions:

  * `<<VK_EXT_line_rasterization>>`
  * `<<VK_EXT_texture_compression_astc_hdr>>`
  * `<<VK_EXT_index_type_uint8>>`
2019-07-28 21:22:36 -07:00
Jon Leech
7b81afeb9f Change log for July 20, 2019 Vulkan 1.1.116 spec update:
* Happy 50th Lunar Landing Day!
  * Update release number to 116.

Internal Issues:

  * Clarify that flink:vkCmdBeginQuery is the same as
    flink:vkCmdBeginQueryIndexEXT with index = 0, and that
    flink:vkCmdEndQuery is the same as flink:vkCmdEndQueryIndexEXT with
    index = 0 (internal issue 1735).
  * Clarify that when copying the depth aspect between buffers and images
    via slink:VkBufferImage Copy, the depth values in buffer memory must be
    in range if the `<<VK_EXT_depth_range_unrestricted>>` extension is not
    enabled (internal issue 1737).
  * Minor language tweaks in the <<spirvenv-module-validation, Validation
    Rules within a Module>> section (internal issue 1744).
  * Change the slink:VkPhysicalDeviceFloatControlsPropertiesKHR structure in
    the `<<VK_KHR_shader_controls>>` extension. This is a rare case of
    breaking the interface of an existing extension to acknowledge the
    reality of divergent vendor implementations that could not be described
    properly otherwise, and the breaking change is considered acceptable
    given the expected low use of the extension (internal issue 1734).
    Specific changes:
  ** Added the slink:VkShaderFloatControlsIndependenceKHR enumeration to
     describe the three possible behaviors.
  ** Renamed pname:separateDenormSettings to
     pname:denormBehaviorIndependence.
  ** Renamed pname:separateRoundingModeSettings to
     pname:roundingModeIndependence
  * Add a missing valid usage statement for
    slink:VkQueryPoolCreateInfo::pname:queryCount (internal issue 1742).
  * Update the `<<VK_NV_shading_rate_image>>` appendix to list all
    interfaces defined by the extension.
  * Add a valid usage statement to
    slink:VkWriteDescriptorSetAccelerationStructureNV to clarify that
    acceleration structure descriptors must be top level structures.

New Extensions:

  * `<<VK_EXT_subgroup_size_control>>`
2019-07-20 01:49:16 -07:00
Jon Leech
57b7cd572d Change log for July 14, 2019 Vulkan 1.1.115 spec update:
* Update release number to 115.

GitHub issues:

  * Add valid usage statements to slink:VkWriteDescriptorSet and
    slink:VkCopyDescriptorSet specifying that updating immutable descriptors
    with ename:VK_DESCRIPTOR_TYPE_SAMPLER is invalid, and that updating
    ename:VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER ignores the update's
    samplers (public issue 985).
  * Document that the `manhtmlpages` target requires building with all
    extensions enabled, in `BUILD.adoc` (public issue 992).
  * Fix reference to the wrong subpass in valid usage statement for
    slink:VkRenderPassCreateInfo (public pull request 994).

Internal Issues:

  * Rename slink:VkPhysicalDeviceShaderIntegerFunctions2INTEL and
    ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS2_FEATURES_INTEL
    for consistency with global naming conventions, and to help code
    generation in other projects (internal issue 1685).
  * Update valid usage statements for image code:Offset / code:ConstOffset
    usage in the <<textures-gather, Texel Gathering>> and
    <<spirvenv-module-validation, Validation Rules within a Module>>
    sections, and for the <<limits-minTexelGatherOffset>> and
    <<limits-maxTexelGatherOffset>> limits (internal issue 1723).
  * Require code:code:OpGroupNonUniformBroadcast to take a constant `Id`
    operand in the <<spirvenv-module-validation, Validation Rules within a
    Module>> sections (internal issue 1726).
  * Note that the swapchain specified in slink:VkImageSwapchainCreateInfoKHR
    when creating an image must match the one specified in
    slink:VkBindImageMemorySwapchainInfoKHR when binding memory to the image
    (internal issue 1729).
  * Remove stext:KHR suffix from some structure cross-references that were
    promoted to Vulkan 1.1 (internal issue 1730).
  * Fix structure name in `structextends` attribute for
    slink:VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT in `vk.xml`
    (internal issue 1740).
  * Fix an error in the code:ClipColor() pseudocode for
    <<VK_EXT_blend_operation_advanced>> (internal issue 1741).
  * Add a row for
    ename:VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV to the
    description of elink:VkQueryType, and make a few related minor text
    cleanups.
  * Rename slink:VkPhysicalDeviceFloat16Int8FeaturesKHR to
    slink:VkPhysicalDeviceShaderFloat16Int8FeaturesKHR for consistency,
    retaining aliases of the old structure name and structure type enum for
    backwards compatibility.
2019-07-14 06:04:09 -07:00
Jon Leech
8897c572ce Change log for June 30, 2019 Vulkan 1.1.113 spec update:
* Update release number to 113.

Github Issues:

  * Fix typo in `<<VK_EXT_global_priority>>` appendix (public issue 979).

Internal Issues:

  * Expand the explanation of
    slink:VkSamplerYcbcrConversionImageFormatPropertiesKHR::pname:combinedImageSamplerDescriptorCount,
    and explain how it interacts with slink:VkWriteDescriptorSet,
    slink:VkDescriptorSetLayoutBinding::pname:descriptorCount, and
    slink:VkDescriptorPoolSize::pname:descriptorCount (internal issue 1643).
  * Clarify restrictions on components for code:OpImageGather in the
    <<spirvenv-module-validation, Validation Rules within a Module>> section
    (internal issue 1707).
  * Clarify the descriptions of <<limits-computeUnitsPerShaderArray,
    pname:computeUnitsPerShaderArray>> and <<limits-wavefrontSize,
    pname:wavefrontSize>> fields in
    slink:VkPhysicalDeviceShaderCorePropertiesAMD.

New Extensions:

  * `<<VK_EXT_texel_buffer_alignment>>`
  * `<<VK_EXT_shader_demote_to_helper_invocation>>`
2019-06-29 23:14:02 -07:00
Jon Leech
619084d44a Change log for June 2, 2019 Vulkan 1.1.110 spec update:
* Update release number to 110.

Github Issues:

  * Fix typo (public pull request 972).
  * Rename Pastel driver ID to SwiftShader (public pull request 974).

New Extensions:

  * `<<VK_EXT_fragment_shader_interlock>>`
  * `<<VK_NV_shader_sm_builtins>>`
2019-06-02 05:15:30 -07:00
Jon Leech
6635a81b5b Change log for May 24, 2019 Vulkan 1.1.109 spec update:
* Update release number to 109.

Github Issues:

  * Require matching for physical devices to be in a device group in the
    <<devsandqueues-devices, Devices>> section (public issue 695).
  * Fix typo in an equation in the <<fragmentdensitymap-fetch-density-value,
    Fetch Density Value>> section (public issue 954).
  * Fix styleguide links (public pull request 965).

Internal Issues:

  * Allow <<renderpass-compatibility, compatibility of single-subpass
    renderpasses>> with different resolve attachments (internal issue 1464).
  * Add some missing empty flags types to API spec so custom refpage
    generation doesn't break (internal issue 1607).
  * Add a "`SPIR-V Sampled Type`" column to the <<formats-numericformat,
    Interpretation of Numeric Formats>> table, and clarify the requirement
    that the code:OpTypeImage sampled type match the bound image's numeric
    format for slink:VkClearColorValue and in the
    <<interfaces-resources-descset, Descriptor Set Interface>> section
    (internal issue 1646).
  * Fix a typo in the <<tessellation-quad-tessellation, Quad Tessellation>>
    section which should refer to rectangles, not triangles (internal issue
    1667).
  * Clarify the definition of time domains in elink:VkTimeDomainEXT
    (internal merge request 3110).
  * Add R10X6 and R12X4 formats to the <<formats-mandatory-features-10bit>>
    table (internal merge request 3137).
  * Don't require extern sync on wait/signal semaphores in `vk.xml` for
    flink:vkQueueSubmit and flink:vkQueueBindSparse (internal merge request
    3116).
  * Improve phrasing of compute and mesh shader size related to
    code:LocalSize and code:WorkgroupSize in
    slink:VkPhysicalDeviceMeshShaderPropertiesNV and
    slink:VkPhysicalDeviceMaintenance3Properties (internal merge request
    3156).
  * Make the flink:vkCmdBindShadingRateImageNV pname:imageView parameter
    optional in `vk.xml` (internal merge request 3157).

New Extensions:

  * `<<VK_INTEL_performance_query>>`
  * `<<VK_INTEL_shader_integer_functions2>>`
2019-05-24 05:29:25 -07:00
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
Jon Leech
476e3f422d Change log for March 18, 2019 Vulkan 1.1.104 spec update:
* Update release number to 104.

Public Issues:

  * Remove the incorrect line from "`Initial`" to "`Invalid`" state in the
    <<commandbuffer-lifecycle-diagram, Lifecycle of a command buffer>>
    diagram (public issue 881).
  * Add Fuchsia platform to <<boilerplate-wsi-header-table, Window System
    Extensions and Headers>> table (public pull request 933).
  * Change the type of
    slink:VkBufferDeviceAddressCreateInfoEXT::pname:deviceAddress from
    basetype:VkDeviceSize to basetype:VkDeviceAddress. These are both
    typedefs of code:uint64_t, so it is an ABI-compatible change (public
    issue 934).

Internal Issues:

  * Remove generated header files and update the CI tests to build a copy of
    the headers for use by the hpp-generate / hpp-compile CI stages. Targets
    to generate the headers will not be removed, but keeping these generated
    files in the repository increased the frequency of conflicts between
    branches when merging to master (internal issue 745).
  * Reword "`undefined: behavior if *action*" to "`must: not do *action*`"
    in the places the old terminology was used, and add a new
    <<writing-undefined, Describing Undefined Behavior>> section of the
    style guide to explain how to write such language in the future
    (internal issue 1579).
  * Move almost all Python scripts into the toplevel `scripts/` directory.
    Apply extensive internal edits to clean up and simplify the scripts, and
    try to follow PEP8 guidelines. Generalize the scripts with the use of a
    Conventions object controlling many aspects of output generation, to
    enable their use in other Khronos projects with similar requirements.
    Autogenerate extension interface refpages (these are experimental and
    may be retired going forward).

New Extensions:

  * `VK_AMD_display_native_hdr`
  * `VK_EXT_full_screen_exclusive` (internal issue 1439)
  * `VK_EXT_host_query_reset`
  * `VK_EXT_pipeline_creation_feedback` (internal issue 1560)
  * `VK_KHR_surface_protected_capabilities` (internal issue 1520)
2019-03-17 06:05:46 -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