mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-02-23 03:28:19 +00:00
Change log for February 10, 2019 Vulkan 1.1.100 spec update:
* Update release number to 100. Public Issues: * Clarify that scoped modification order only relates to <<memory-model-atomic-operation, atomic writes>> (public pull request 906). * Remove `readme.txt` reference from `xml/README.adoc` (public pull request 907). * Add missing slink:VkShaderResourceUsageAMD to the <<Vk_AMD_shader_info>> appendix (public pull request 908). * Fix markup for <<VK_EXT_filter_cubic>> appendix (public pull request 911). * Fix typo "`attachment`" (public pull request 914). * Alias the enums for `VK_IMG_filter_cubic` properly to the corresponding `VK_EXT_filter_cubic` enums, so they appear in the corresponding enumerated types, instead of as #defines (Vulkan-Headers issue 40). Internal Issues: * Remove nested conditionals in valid usage statements for slink:VkFramebufferCreateInfo and flink:vkCmdPipelineBarrier by duplicating statements along ifdef/ifndef paths for VK_KHR_depth_stencil_resolve (internal issue 1527). * Clarify allowed values of <<spirv-precision-operation, SPIR-V operations near infinity>>. For very large results of operations the allowed range of return values as defined in the spec didn't include the largest finite number. In some rounding modes (eg. RTZ) the largest finite number is the correctly rounded result, so it should be allowed. * Require descriptor types to match in slink:VkCopyDescriptorSet.
This commit is contained in:
parent
bc1025510e
commit
fcf5980cf6
@ -8,6 +8,41 @@ public pull requests that have been accepted.
|
||||
|
||||
-----------------------------------------------------
|
||||
|
||||
Change log for February 10, 2019 Vulkan 1.1.100 spec update:
|
||||
|
||||
* Update release number to 100.
|
||||
|
||||
Public Issues:
|
||||
|
||||
* Clarify that scoped modification order only relates to
|
||||
<<memory-model-atomic-operation, atomic writes>> (public pull request
|
||||
906).
|
||||
* Remove `readme.txt` reference from `xml/README.adoc` (public pull
|
||||
request 907).
|
||||
* Add missing slink:VkShaderResourceUsageAMD to the <<Vk_AMD_shader_info>>
|
||||
appendix (public pull request 908).
|
||||
* Fix markup for <<VK_EXT_filter_cubic>> appendix (public pull request
|
||||
911).
|
||||
* Fix typo "`attachment`" (public pull request 914).
|
||||
* Alias the enums for `VK_IMG_filter_cubic` properly to the corresponding
|
||||
`VK_EXT_filter_cubic` enums, so they appear in the corresponding
|
||||
enumerated types, instead of as #defines (Vulkan-Headers issue 40).
|
||||
|
||||
Internal Issues:
|
||||
|
||||
* Remove nested conditionals in valid usage statements for
|
||||
slink:VkFramebufferCreateInfo and flink:vkCmdPipelineBarrier by
|
||||
duplicating statements along ifdef/ifndef paths for
|
||||
VK_KHR_depth_stencil_resolve (internal issue 1527).
|
||||
* Clarify allowed values of <<spirv-precision-operation, SPIR-V operations
|
||||
near infinity>>. For very large results of operations the allowed range
|
||||
of return values as defined in the spec didn't include the largest
|
||||
finite number. In some rounding modes (eg. RTZ) the largest finite
|
||||
number is the correctly rounded result, so it should be allowed.
|
||||
* Require descriptor types to match in slink:VkCopyDescriptorSet.
|
||||
|
||||
-----------------------------------------------------
|
||||
|
||||
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
|
||||
|
||||
* Update release number to 99.
|
||||
|
2
Makefile
2
Makefile
@ -115,7 +115,7 @@ VERBOSE =
|
||||
# ADOCOPTS options for asciidoc->HTML5 output
|
||||
|
||||
NOTEOPTS = -a editing-notes -a implementation-guide
|
||||
PATCHVERSION = 99
|
||||
PATCHVERSION = 100
|
||||
ifneq (,$(findstring VK_VERSION_1_1,$(VERSIONS)))
|
||||
SPECREVISION = 1.1.$(PATCHVERSION)
|
||||
else
|
||||
|
@ -189,9 +189,8 @@ other as if they were non-atomic operations.
|
||||
[[memory-model-scoped-modification-order]]
|
||||
== Scoped Modification Order
|
||||
|
||||
For a given atomic write A, all atomic writes that are
|
||||
mutually-ordered with A occur in an order known as A's _scoped modification
|
||||
order_.
|
||||
For a given atomic write A, all atomic writes that are mutually-ordered with
|
||||
A occur in an order known as A's _scoped modification order_.
|
||||
A's scoped modification order relates no other operations.
|
||||
|
||||
NOTE: Invocations outside the instance of A's memory scope may: observe the
|
||||
|
@ -1038,7 +1038,7 @@ returned.
|
||||
|
||||
.ULP
|
||||
Where an error bound of [eq]#n# ULP (units in the last place) is given, for
|
||||
an operation with infinitely precise result #x# the value returned must be
|
||||
an operation with infinitely precise result #x# the value returned must: be
|
||||
in the range #[x - n * ulp(x), x + n * ulp(x)]#.
|
||||
The function #ulp(x)# is defined as follows:
|
||||
|
||||
@ -1050,7 +1050,9 @@ between the two finite floating-point numbers nearest to #x#.
|
||||
|
||||
Where the range of allowed return values includes any value of magnitude
|
||||
larger than that of the largest representable finite floating-point number,
|
||||
operations may return an infinity of the appropriate sign.
|
||||
operations may:, additionally, return either an infinity of the appropriate
|
||||
sign or the finite number with the largest magnitude of the appropriate
|
||||
sign.
|
||||
If the infinitely precise result of the operation is not mathematically
|
||||
defined then the value returned is undefined:.
|
||||
|
||||
|
@ -3050,6 +3050,9 @@ endif::VK_EXT_inline_uniform_block[]
|
||||
than or equal to the number of array elements in the descriptor set
|
||||
binding specified by pname:dstBinding, and all applicable consecutive
|
||||
bindings, as described by <<descriptorsets-updates-consecutive>>
|
||||
* [[VUID-VkCopyDescriptorSet-dstBinding-02632]]
|
||||
The type of pname:dstBinding within pname:dstSet must: be equal to the
|
||||
type of pname:srcBinding within pname:srcSet
|
||||
* [[VUID-VkCopyDescriptorSet-srcSet-00349]]
|
||||
If pname:srcSet is equal to pname:dstSet, then the source and
|
||||
destination ranges of descriptors must: not overlap, where the ranges
|
||||
|
@ -2344,14 +2344,18 @@ slink:VkPipelineMultisampleStateCreateInfo::pname:rasterizationSamples.
|
||||
Each element of pname:pAttachments that is used as a color attachment or
|
||||
resolve attachment by pname:renderPass must: have been created with a
|
||||
pname:usage value including ename:VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
|
||||
* [[VUID-VkFramebufferCreateInfo-pAttachments-02603]]
|
||||
* [[VUID-VkFramebufferCreateInfo-pAttachments-02633]]
|
||||
Each element of pname:pAttachments that is used as a depth/stencil
|
||||
ifdef::VK_KHR_depth_stencil_resolve[]
|
||||
attachment or depth/stencil resolve
|
||||
endif::VK_KHR_depth_stencil_resolve[]
|
||||
attachment by pname:renderPass must: have been created with a
|
||||
pname:usage value including
|
||||
ename:VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
|
||||
ifdef::VK_KHR_depth_stencil_resolve[]
|
||||
* [[VUID-VkFramebufferCreateInfo-pAttachments-02634]]
|
||||
Each element of pname:pAttachments that is used as a depth/stencil
|
||||
resolve attachment by pname:renderPass must: have been created with a
|
||||
pname:usage value including
|
||||
ename:VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
|
||||
endif::VK_KHR_depth_stencil_resolve[]
|
||||
* [[VUID-VkFramebufferCreateInfo-pAttachments-00879]]
|
||||
Each element of pname:pAttachments that is used as an input attachment
|
||||
by pname:renderPass must: have been created with a pname:usage value
|
||||
|
@ -3661,32 +3661,47 @@ framebuffer-space>> pipeline stages is
|
||||
* [[VUID-vkCmdPipelineBarrier-bufferMemoryBarrierCount-01178]]
|
||||
If fname:vkCmdPipelineBarrier is called within a render pass instance,
|
||||
pname:bufferMemoryBarrierCount must: be `0`
|
||||
* [[VUID-vkCmdPipelineBarrier-image-01179]]
|
||||
ifdef::VK_KHR_depth_stencil_resolve[]
|
||||
* [[VUID-vkCmdPipelineBarrier-image-02635]]
|
||||
If fname:vkCmdPipelineBarrier is called within a render pass instance,
|
||||
the pname:image member of any element of pname:pImageMemoryBarriers
|
||||
must: be equal to one of the elements of pname:pAttachments that the
|
||||
current pname:framebuffer was created with, that is also referred to by
|
||||
one of the elements of the pname:pColorAttachments,
|
||||
pname:pResolveAttachments or pname:pDepthStencilAttachment members of
|
||||
the sname:VkSubpassDescription instance
|
||||
ifdef::VK_KHR_depth_stencil_resolve[]
|
||||
or by the pname:pDepthStencilResolveAttachment member of the
|
||||
sname:VkSubpassDescriptionDepthStencilResolveKHR structure
|
||||
endif::VK_KHR_depth_stencil_resolve[]
|
||||
that the current subpass was created with
|
||||
* [[VUID-vkCmdPipelineBarrier-oldLayout-01180]]
|
||||
the sname:VkSubpassDescription instance or by the
|
||||
pname:pDepthStencilResolveAttachment member of the
|
||||
sname:VkSubpassDescriptionDepthStencilResolveKHR structure that the
|
||||
current subpass was created with
|
||||
* [[VUID-vkCmdPipelineBarrier-oldLayout-02636]]
|
||||
If fname:vkCmdPipelineBarrier is called within a render pass instance,
|
||||
the pname:oldLayout and pname:newLayout members of any element of
|
||||
pname:pImageMemoryBarriers must: be equal to the pname:layout member of
|
||||
an element of the pname:pColorAttachments, pname:pResolveAttachments or
|
||||
pname:pDepthStencilAttachment members of the sname:VkSubpassDescription
|
||||
instance
|
||||
ifdef::VK_KHR_depth_stencil_resolve[]
|
||||
or by the pname:pDepthStencilResolveAttachment member of the
|
||||
sname:VkSubpassDescriptionDepthStencilResolveKHR structure
|
||||
instance or by the pname:pDepthStencilResolveAttachment member of the
|
||||
sname:VkSubpassDescriptionDepthStencilResolveKHR structure that the
|
||||
current subpass was created with, that refers to the same pname:image
|
||||
endif::VK_KHR_depth_stencil_resolve[]
|
||||
ifndef::VK_KHR_depth_stencil_resolve[]
|
||||
* [[VUID-vkCmdPipelineBarrier-image-02637]]
|
||||
If fname:vkCmdPipelineBarrier is called within a render pass instance,
|
||||
the pname:image member of any element of pname:pImageMemoryBarriers
|
||||
must: be equal to one of the elements of pname:pAttachments that the
|
||||
current pname:framebuffer was created with, that is also referred to by
|
||||
one of the elements of the pname:pColorAttachments,
|
||||
pname:pResolveAttachments or pname:pDepthStencilAttachment members of
|
||||
the sname:VkSubpassDescription instance that the current subpass was
|
||||
created with
|
||||
* [[VUID-vkCmdPipelineBarrier-oldLayout-02638]]
|
||||
If fname:vkCmdPipelineBarrier is called within a render pass instance,
|
||||
the pname:oldLayout and pname:newLayout members of any element of
|
||||
pname:pImageMemoryBarriers must: be equal to the pname:layout member of
|
||||
an element of the pname:pColorAttachments, pname:pResolveAttachments or
|
||||
pname:pDepthStencilAttachment members of the sname:VkSubpassDescription
|
||||
instance that the current subpass was created with, that refers to the
|
||||
same pname:image
|
||||
endif::VK_KHR_depth_stencil_resolve[]
|
||||
that the current subpass was created with, that refers to the same
|
||||
pname:image
|
||||
* [[VUID-vkCmdPipelineBarrier-oldLayout-01181]]
|
||||
If fname:vkCmdPipelineBarrier is called within a render pass instance,
|
||||
the pname:oldLayout and pname:newLayout members of an element of
|
||||
|
@ -43,7 +43,7 @@ extern "C" {
|
||||
#define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff)
|
||||
#define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff)
|
||||
// Version of this file
|
||||
#define VK_HEADER_VERSION 99
|
||||
#define VK_HEADER_VERSION 100
|
||||
|
||||
|
||||
#define VK_NULL_HANDLE 0
|
||||
@ -1143,7 +1143,8 @@ typedef enum VkDynamicState {
|
||||
typedef enum VkFilter {
|
||||
VK_FILTER_NEAREST = 0,
|
||||
VK_FILTER_LINEAR = 1,
|
||||
VK_FILTER_CUBIC_EXT = 1000015000,
|
||||
VK_FILTER_CUBIC_IMG = 1000015000,
|
||||
VK_FILTER_CUBIC_EXT = VK_FILTER_CUBIC_IMG,
|
||||
VK_FILTER_BEGIN_RANGE = VK_FILTER_NEAREST,
|
||||
VK_FILTER_END_RANGE = VK_FILTER_LINEAR,
|
||||
VK_FILTER_RANGE_SIZE = (VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1),
|
||||
@ -1343,7 +1344,7 @@ typedef enum VkFormatFeatureFlagBits {
|
||||
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT = 0x00200000,
|
||||
VK_FORMAT_FEATURE_DISJOINT_BIT = 0x00400000,
|
||||
VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT = 0x00800000,
|
||||
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT = 0x00002000,
|
||||
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,
|
||||
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT = 0x00010000,
|
||||
VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT = 0x01000000,
|
||||
VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
|
||||
@ -1355,6 +1356,7 @@ typedef enum VkFormatFeatureFlagBits {
|
||||
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,
|
||||
VK_FORMAT_FEATURE_DISJOINT_BIT_KHR = VK_FORMAT_FEATURE_DISJOINT_BIT,
|
||||
VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,
|
||||
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,
|
||||
VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
|
||||
} VkFormatFeatureFlagBits;
|
||||
typedef VkFlags VkFormatFeatureFlags;
|
||||
@ -6385,10 +6387,6 @@ VKAPI_ATTR void VKAPI_CALL vkDebugReportMessageEXT(
|
||||
#define VK_IMG_filter_cubic 1
|
||||
#define VK_IMG_FILTER_CUBIC_SPEC_VERSION 1
|
||||
#define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic"
|
||||
#define VK_FILTER_CUBIC_EXT 1000015000
|
||||
#define VK_FILTER_CUBIC_IMG VK_FILTER_CUBIC_EXT
|
||||
#define VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT 0x00002000
|
||||
#define VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT
|
||||
|
||||
|
||||
#define VK_AMD_rasterization_order 1
|
||||
|
@ -1,2 +1,2 @@
|
||||
# The value to start tagging VU statements at, unless overridden by -nextvu
|
||||
startVUID = 2632
|
||||
startVUID = 2639
|
||||
|
10
xml/vk.xml
10
xml/vk.xml
@ -146,7 +146,7 @@ server.
|
||||
<type category="define">// Vulkan 1.1 version number
|
||||
#define <name>VK_API_VERSION_1_1</name> <type>VK_MAKE_VERSION</type>(1, 1, 0)// Patch version should always be set to 0</type>
|
||||
<type category="define">// Version of this file
|
||||
#define <name>VK_HEADER_VERSION</name> 99</type>
|
||||
#define <name>VK_HEADER_VERSION</name> 100</type>
|
||||
|
||||
<type category="define">
|
||||
#define <name>VK_DEFINE_HANDLE</name>(object) typedef struct object##_T* object;</type>
|
||||
@ -7883,10 +7883,8 @@ server.
|
||||
<require>
|
||||
<enum value="1" name="VK_IMG_FILTER_CUBIC_SPEC_VERSION"/>
|
||||
<enum value=""VK_IMG_filter_cubic"" name="VK_IMG_FILTER_CUBIC_EXTENSION_NAME"/>
|
||||
<enum offset="0" extends="VkFilter" name="VK_FILTER_CUBIC_EXT"/>
|
||||
<enum bitpos="13" extends="VkFormatFeatureFlagBits" name="VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" comment="Format can be filtered with VK_FILTER_CUBIC_EXT when being sampled"/>
|
||||
<enum name="VK_FILTER_CUBIC_IMG" alias="VK_FILTER_CUBIC_EXT"/>
|
||||
<enum name="VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG" alias="VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT"/>
|
||||
<enum offset="0" extends="VkFilter" name="VK_FILTER_CUBIC_IMG"/>
|
||||
<enum bitpos="13" extends="VkFormatFeatureFlagBits" name="VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG" comment="Format can be filtered with VK_FILTER_CUBIC_IMG when being sampled"/>
|
||||
</require>
|
||||
</extension>
|
||||
<extension name="VK_AMD_extension_17" number="17" author="AMD" contact="Daniel Rakos @drakos-amd" supported="disabled">
|
||||
@ -9781,6 +9779,8 @@ server.
|
||||
<require>
|
||||
<enum value="1" name="VK_EXT_FILTER_CUBIC_SPEC_VERSION"/>
|
||||
<enum value=""VK_EXT_filter_cubic"" name="VK_EXT_FILTER_CUBIC_EXTENSION_NAME"/>
|
||||
<enum extends="VkFilter" name="VK_FILTER_CUBIC_EXT" alias="VK_FILTER_CUBIC_IMG"/>
|
||||
<enum extends="VkFormatFeatureFlagBits" name="VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" alias="VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG"/>
|
||||
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT"/>
|
||||
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT"/>
|
||||
<type name="VkPhysicalDeviceImageViewImageFormatInfoEXT"/>
|
||||
|
Loading…
x
Reference in New Issue
Block a user