2017-07-12 00:57:41 +00:00
|
|
|
// Copyright (c) 2017 Khronos Group. This work is licensed under a
|
|
|
|
// Creative Commons Attribution 4.0 International License; see
|
|
|
|
// http://creativecommons.org/licenses/by/4.0/
|
|
|
|
|
Change log for September 5, 2017 Vulkan 1.0.60 spec update:
* Bump API patch number and header version number to 60 for this update.
Github Issues:
* Document that <<queries-timestamps, Timestamp Queries>> can only be
meaningfully compared when they are written from the same queue (public
issue 216).
* Document that the `<extension>` tag `type` attribute is required for
non-disabled extensions (derived from, but does not close public issue
354).
* Clean up registry schema length attribute descriptions to be consistent
and correct (public issue 555).
Internal Issues:
* Replace as much of the hand-written extension appendix metadata as
possible with asciidoc includes generated from corresponding attributes
of +vk.xml+, and enhance the style guide to match. This avoids
inconsistencies between +vk.xml+ and the appendices, and produces a more
uniform style (internal issue 137).
* Remove the generated extDependency.{py,sh} files from the tree and
create them dynamically on demand instead, reducing merge conflicts
(internal issue 713).
* Add a prototype tool for generating in-place difference markup for
sections guarded by asciidoc conditionals, and new syntax for open
blocks to support it (internal issue 833).
* Remove unnecessary restriction of etext:*SYNC_FD_BIT_KHR external handle
types to the same physical device in the
slink:VkPhysicalDeviceIDPropertiesKHR,
flink:VkImportMemoryWin32HandleInfoKHR,
slink:VkImportFenceWin32HandleInfoKHR, slink:VkImportFenceFdInfoKHR,
slink:VkImportSemaphoreWin32HandleInfoKHR,
slink:VkImportSemaphoreFdInfoKHR
<<external-memory-handle-types-compatibility, External memory handle
types compatibility>>, <<external-semaphore-handle-types-compatibility,
External semaphore handle types compatibility>>, and
<<external-fence-handle-types-compatibility, External fence handle types
compatibility>> sections (internal issue 956).
Other Issues:
* Remove dependency of +VK_KHX_device_group+ on +VK_KHR_swapchain+ (there
is an interaction, but not a strict dependency), and add a new
`extension` attribute to the `<require` XML tag to allow classifying a
subset of interfaces of an extension as requiring another extension.
Update the registry schema and documentation accordingly.
New Extensions:
* `VK_AMD_shader_fragment_mask` (and related `GL_AMD_shader_fragment_mask`
GLSL extension)
* `VK_EXT_sample_locations`
* `VK_EXT_validation_cache`
2017-09-04 10:06:55 +00:00
|
|
|
include::meta/VK_KHR_16bit_storage.txt[]
|
2017-07-12 00:57:41 +00:00
|
|
|
|
Change log for September 5, 2017 Vulkan 1.0.60 spec update:
* Bump API patch number and header version number to 60 for this update.
Github Issues:
* Document that <<queries-timestamps, Timestamp Queries>> can only be
meaningfully compared when they are written from the same queue (public
issue 216).
* Document that the `<extension>` tag `type` attribute is required for
non-disabled extensions (derived from, but does not close public issue
354).
* Clean up registry schema length attribute descriptions to be consistent
and correct (public issue 555).
Internal Issues:
* Replace as much of the hand-written extension appendix metadata as
possible with asciidoc includes generated from corresponding attributes
of +vk.xml+, and enhance the style guide to match. This avoids
inconsistencies between +vk.xml+ and the appendices, and produces a more
uniform style (internal issue 137).
* Remove the generated extDependency.{py,sh} files from the tree and
create them dynamically on demand instead, reducing merge conflicts
(internal issue 713).
* Add a prototype tool for generating in-place difference markup for
sections guarded by asciidoc conditionals, and new syntax for open
blocks to support it (internal issue 833).
* Remove unnecessary restriction of etext:*SYNC_FD_BIT_KHR external handle
types to the same physical device in the
slink:VkPhysicalDeviceIDPropertiesKHR,
flink:VkImportMemoryWin32HandleInfoKHR,
slink:VkImportFenceWin32HandleInfoKHR, slink:VkImportFenceFdInfoKHR,
slink:VkImportSemaphoreWin32HandleInfoKHR,
slink:VkImportSemaphoreFdInfoKHR
<<external-memory-handle-types-compatibility, External memory handle
types compatibility>>, <<external-semaphore-handle-types-compatibility,
External semaphore handle types compatibility>>, and
<<external-fence-handle-types-compatibility, External fence handle types
compatibility>> sections (internal issue 956).
Other Issues:
* Remove dependency of +VK_KHX_device_group+ on +VK_KHR_swapchain+ (there
is an interaction, but not a strict dependency), and add a new
`extension` attribute to the `<require` XML tag to allow classifying a
subset of interfaces of an extension as requiring another extension.
Update the registry schema and documentation accordingly.
New Extensions:
* `VK_AMD_shader_fragment_mask` (and related `GL_AMD_shader_fragment_mask`
GLSL extension)
* `VK_EXT_sample_locations`
* `VK_EXT_validation_cache`
2017-09-04 10:06:55 +00:00
|
|
|
*Interactions and External Dependencies*::
|
|
|
|
- This extension requires
|
|
|
|
https://www.khronos.org/registry/spir-v/extensions/KHR/SPV_KHR_16bit_storage.html[+SPV_KHR_16bit_storage+]
|
2017-07-12 00:57:41 +00:00
|
|
|
*Last Modified Date*::
|
|
|
|
2017-03-23
|
|
|
|
*IP Status*::
|
|
|
|
No known IP claims.
|
|
|
|
*Contributors*::
|
|
|
|
- Alexander Galazin, ARM
|
|
|
|
- Jan-Harald Fredriksen, ARM
|
|
|
|
- Joerg Wagner, ARM
|
|
|
|
- Neil Henning, Codeplay
|
|
|
|
- Jeff Bolz, Nvidia
|
|
|
|
- Daniel Koch, Nvidia
|
|
|
|
- David Neto, Google
|
|
|
|
- John Kessenich, Google
|
|
|
|
|
|
|
|
The +VK_KHR_16bit_storage+ extension allows use of 16-bit types in shader
|
|
|
|
input and output interfaces, and push constant blocks.
|
|
|
|
This extension introduces several new optional features which map to SPIR-V
|
|
|
|
capabilities and allow access to 16-bit data in code:Block-decorated objects
|
|
|
|
in the code:Uniform and the code:StorageBuffer storage classes, and objects
|
|
|
|
in the code:PushConstant storage class.
|
|
|
|
This extension allows 16-bit variables to be declared and used as
|
|
|
|
user-defined shader inputs and outputs but does not change location
|
|
|
|
assignment and component assignment rules.
|
|
|
|
|
|
|
|
=== New Enum Constants
|
|
|
|
|
|
|
|
* Extending elink:VkStructureType:
|
|
|
|
** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR
|
|
|
|
|
|
|
|
=== New Structures
|
|
|
|
|
|
|
|
* slink:VkPhysicalDevice16BitStorageFeaturesKHR
|
|
|
|
|
|
|
|
=== New SPIR-V Capabilities
|
Change log for September 5, 2017 Vulkan 1.0.60 spec update:
* Bump API patch number and header version number to 60 for this update.
Github Issues:
* Document that <<queries-timestamps, Timestamp Queries>> can only be
meaningfully compared when they are written from the same queue (public
issue 216).
* Document that the `<extension>` tag `type` attribute is required for
non-disabled extensions (derived from, but does not close public issue
354).
* Clean up registry schema length attribute descriptions to be consistent
and correct (public issue 555).
Internal Issues:
* Replace as much of the hand-written extension appendix metadata as
possible with asciidoc includes generated from corresponding attributes
of +vk.xml+, and enhance the style guide to match. This avoids
inconsistencies between +vk.xml+ and the appendices, and produces a more
uniform style (internal issue 137).
* Remove the generated extDependency.{py,sh} files from the tree and
create them dynamically on demand instead, reducing merge conflicts
(internal issue 713).
* Add a prototype tool for generating in-place difference markup for
sections guarded by asciidoc conditionals, and new syntax for open
blocks to support it (internal issue 833).
* Remove unnecessary restriction of etext:*SYNC_FD_BIT_KHR external handle
types to the same physical device in the
slink:VkPhysicalDeviceIDPropertiesKHR,
flink:VkImportMemoryWin32HandleInfoKHR,
slink:VkImportFenceWin32HandleInfoKHR, slink:VkImportFenceFdInfoKHR,
slink:VkImportSemaphoreWin32HandleInfoKHR,
slink:VkImportSemaphoreFdInfoKHR
<<external-memory-handle-types-compatibility, External memory handle
types compatibility>>, <<external-semaphore-handle-types-compatibility,
External semaphore handle types compatibility>>, and
<<external-fence-handle-types-compatibility, External fence handle types
compatibility>> sections (internal issue 956).
Other Issues:
* Remove dependency of +VK_KHX_device_group+ on +VK_KHR_swapchain+ (there
is an interaction, but not a strict dependency), and add a new
`extension` attribute to the `<require` XML tag to allow classifying a
subset of interfaces of an extension as requiring another extension.
Update the registry schema and documentation accordingly.
New Extensions:
* `VK_AMD_shader_fragment_mask` (and related `GL_AMD_shader_fragment_mask`
GLSL extension)
* `VK_EXT_sample_locations`
* `VK_EXT_validation_cache`
2017-09-04 10:06:55 +00:00
|
|
|
|
2017-07-12 00:57:41 +00:00
|
|
|
* <<spirvenv-capabilities-table-16bitstorage,code:StorageBuffer16BitAccess>>
|
|
|
|
* <<spirvenv-capabilities-table-16bitstorage,code:UniformAndStorageBuffer16BitAccess>>
|
|
|
|
* <<spirvenv-capabilities-table-16bitstorage,code:StoragePushConstant16>>
|
|
|
|
* <<spirvenv-capabilities-table-16bitstorage,code:StorageInputOutput16>>
|
|
|
|
|
|
|
|
=== Issues
|
|
|
|
|
|
|
|
=== Version History
|
Change log for September 5, 2017 Vulkan 1.0.60 spec update:
* Bump API patch number and header version number to 60 for this update.
Github Issues:
* Document that <<queries-timestamps, Timestamp Queries>> can only be
meaningfully compared when they are written from the same queue (public
issue 216).
* Document that the `<extension>` tag `type` attribute is required for
non-disabled extensions (derived from, but does not close public issue
354).
* Clean up registry schema length attribute descriptions to be consistent
and correct (public issue 555).
Internal Issues:
* Replace as much of the hand-written extension appendix metadata as
possible with asciidoc includes generated from corresponding attributes
of +vk.xml+, and enhance the style guide to match. This avoids
inconsistencies between +vk.xml+ and the appendices, and produces a more
uniform style (internal issue 137).
* Remove the generated extDependency.{py,sh} files from the tree and
create them dynamically on demand instead, reducing merge conflicts
(internal issue 713).
* Add a prototype tool for generating in-place difference markup for
sections guarded by asciidoc conditionals, and new syntax for open
blocks to support it (internal issue 833).
* Remove unnecessary restriction of etext:*SYNC_FD_BIT_KHR external handle
types to the same physical device in the
slink:VkPhysicalDeviceIDPropertiesKHR,
flink:VkImportMemoryWin32HandleInfoKHR,
slink:VkImportFenceWin32HandleInfoKHR, slink:VkImportFenceFdInfoKHR,
slink:VkImportSemaphoreWin32HandleInfoKHR,
slink:VkImportSemaphoreFdInfoKHR
<<external-memory-handle-types-compatibility, External memory handle
types compatibility>>, <<external-semaphore-handle-types-compatibility,
External semaphore handle types compatibility>>, and
<<external-fence-handle-types-compatibility, External fence handle types
compatibility>> sections (internal issue 956).
Other Issues:
* Remove dependency of +VK_KHX_device_group+ on +VK_KHR_swapchain+ (there
is an interaction, but not a strict dependency), and add a new
`extension` attribute to the `<require` XML tag to allow classifying a
subset of interfaces of an extension as requiring another extension.
Update the registry schema and documentation accordingly.
New Extensions:
* `VK_AMD_shader_fragment_mask` (and related `GL_AMD_shader_fragment_mask`
GLSL extension)
* `VK_EXT_sample_locations`
* `VK_EXT_validation_cache`
2017-09-04 10:06:55 +00:00
|
|
|
|
2017-07-12 00:57:41 +00:00
|
|
|
* Revision 1, 2017-03-23 (Alexander Galazin)
|
|
|
|
- Initial draft
|