From f13851a58911b94ac56c1ff590a1276db98adf09 Mon Sep 17 00:00:00 2001 From: Jon Leech Date: Fri, 13 May 2016 17:06:37 -0700 Subject: [PATCH] Merge misc. tweaks from private repository. --- .../vk_khr_wayland_surface.txt | 4 +-- .../platformCreateSurface_wayland.txt | 16 ++++----- doc/specs/vulkan/genRelease | 35 +++++++------------ .../protos/vkCmdCopyQueryPoolResults.txt | 4 +-- .../validity/protos/vkGetQueryPoolResults.txt | 4 +-- .../validity/structs/VkSpecializationInfo.txt | 2 +- .../validity/structs/VkSubpassDescription.txt | 2 +- out/index.html | 16 ++++----- src/vulkan/vulkan.h | 2 +- 9 files changed, 37 insertions(+), 48 deletions(-) diff --git a/doc/specs/vulkan/appendices/VK_KHR_wayland_surface/vk_khr_wayland_surface.txt b/doc/specs/vulkan/appendices/VK_KHR_wayland_surface/vk_khr_wayland_surface.txt index 003464e8..6fafc349 100644 --- a/doc/specs/vulkan/appendices/VK_KHR_wayland_surface/vk_khr_wayland_surface.txt +++ b/doc/specs/vulkan/appendices/VK_KHR_wayland_surface/vk_khr_wayland_surface.txt @@ -8,7 +8,7 @@ *IP Status*:: No known IP claims. *Dependencies*:: - - This extension is written against version 0.151.0 of the {apiname} API. + - This extension is written against version 0.151.0 of the Vulkan API. - This extension requires VK_KHR_surface. *Contributors*:: - Patrick Doane, Blizzard @@ -33,7 +33,7 @@ No known IP claims. The VK_KHR_wayland_surface extension is an instance extension. It provides -a mechanism to create a slink:VkSurfaceKHR object (defined by the +a mechanism to create a sname:VkSurfaceKHR object (defined by the VK_KHR_surface extension) that refers to a Wayland wl_surface, as well as a query to determine support for rendering to the windows desktop. diff --git a/doc/specs/vulkan/chapters/VK_KHR_wayland_surface/platformCreateSurface_wayland.txt b/doc/specs/vulkan/chapters/VK_KHR_wayland_surface/platformCreateSurface_wayland.txt index 677379ab..16b289a8 100644 --- a/doc/specs/vulkan/chapters/VK_KHR_wayland_surface/platformCreateSurface_wayland.txt +++ b/doc/specs/vulkan/chapters/VK_KHR_wayland_surface/platformCreateSurface_wayland.txt @@ -37,15 +37,15 @@ the window, after the first image is presented. pname:minImageExtent is latexmath:[$(1,1)$], and pname:maxImageExtent is the maximum supported surface size. -Some {apiname} functions may: send protocol over the specified -code:wl_device connection when using a swapchain or presentable images -created from a slink:VkSurfaceKHR referring to a code:wl_surface. -Applications must: therefore ensure that both the code:wl_device and the -code:wl_surface remain valid for the lifetime of any slink:VkSwapchainKHR -objects created from a particular code:wl_device and code:wl_surface. Also, -calling flink:vkQueuePresentKHR will result in {apiname} sending +Some Vulkan functions may: send protocol over the specified +code:wl_display connection when using a swapchain or presentable images +created from a sname:VkSurfaceKHR referring to a code:wl_surface. +Applications must: therefore ensure that both the code:wl_display and the +code:wl_surface remain valid for the lifetime of any sname:VkSwapchainKHR +objects created from a particular code:wl_display and code:wl_surface. Also, +calling flink:vkQueuePresentKHR will result in Vulkan sending code:wl_surface.commit requests to the underlying code:wl_surface of each -slink:VkSwapchainKHR objects referenced by pname:pPresentInfo. Therefore, if +sname:VkSwapchainKHR objects referenced by pname:pPresentInfo. Therefore, if the application wishes to synchronize any window changes with a particular frame, such requests must: be sent to the Wayland display server prior to calling flink:vkQueuePresentKHR. diff --git a/doc/specs/vulkan/genRelease b/doc/specs/vulkan/genRelease index 535da30d..ae979cdc 100755 --- a/doc/specs/vulkan/genRelease +++ b/doc/specs/vulkan/genRelease @@ -18,9 +18,7 @@ from datetime import * # branch = branch or commit or tag name # label = textual label to apply # outdir = directory to generate specs in -# xmlTargets = targets to build in src/spec/ -# specTargets = targets to build in doc/specs/vulkan/ -def buildRelease(branch,label,outdir,xmlTargets,specTargets): +def buildRelease(branch,label,outdir,targets): global root, xml, spec print('echo Info: Generating branch=' + branch, @@ -28,6 +26,10 @@ def buildRelease(branch,label,outdir,xmlTargets,specTargets): 'outdir=' + outdir) print('git checkout', branch) + print('echo Info: Generating headers and spec include files') + print('cd', xml) + print('make OUTDIR=' + outdir, ' clobber full_install') + print('echo Info: Cleaning spec in', outdir) print('cd', spec) print('rm -rf', @@ -38,15 +40,9 @@ def buildRelease(branch,label,outdir,xmlTargets,specTargets): outdir + '/vkspec.html', 'specversion.txt') - print('echo Info: Generating headers and spec include files') - print('cd', xml) - print('make OUTDIR=' + outdir, xmlTargets) - print('echo Info: Generating spec') - print('cd', spec) print('make specversion.txt') - print('make -j 4 OUTDIR=' + outdir, ' NOTEOPTS="-a implementation-guide"', - specTargets) + print('make -j 4 OUTDIR=' + outdir, ' NOTEOPTS="-a implementation-guide"', targets) print('rm', outdir + '/pdf/vkspec.xml') # Main @@ -72,15 +68,11 @@ wsibranch = '1.0-wsi_extensions' now = datetime.today().strftime('%Y%m%d') # Generate specs -coreXmlTargets='clobber full_install pdf_install' -coreSpecTargets='xhtml pdf styleguide manhtml manpdf manhtmlpages' -buildRelease(corebranch, corebranch, outdir + corebranch, - coreXmlTargets, coreSpecTargets) +coretargets='xhtml pdf styleguide manhtml manpdf manhtmlpages' +buildRelease(corebranch, corebranch, outdir + corebranch, coretargets) -wsiXmlTargets='clobber full_install' -wsiSpecTargets='xhtml pdf' -buildRelease(wsibranch, wsibranch, outdir + wsibranch, - wsiXmlTargets, wsiSpecTargets) +wsitargets='xhtml pdf' +buildRelease(wsibranch, wsibranch, outdir + wsibranch, wsitargets) print('echo Info: post-generation cleanup') @@ -88,9 +80,8 @@ print('git checkout ' + corebranch) print('echo To tag the spec branches, execute these commands:') print('echo git checkout', corebranch) -print('echo git tag -a -m \\"Tag core API specification for', now, - 'release\\"', 'v1.0-core-' + now) +print('echo git tag -a -m \\"Tag core API specification for', now, 'release\\"', 'v1.0-core-' + now) print('echo git checkout', wsibranch) -print('echo git tag -a -m \\"Tag core+WSI API specification for', now, - 'release\\"', 'v1.0-core+wsi-' + now) +print('echo git tag -a -m \\"Tag core+WSI API specification for', now, 'release\\"', 'v1.0-core+wsi-' + now) +print('echo git push --tags') diff --git a/doc/specs/vulkan/validity/protos/vkCmdCopyQueryPoolResults.txt b/doc/specs/vulkan/validity/protos/vkCmdCopyQueryPoolResults.txt index 07bdd94a..34847878 100644 --- a/doc/specs/vulkan/validity/protos/vkCmdCopyQueryPoolResults.txt +++ b/doc/specs/vulkan/validity/protos/vkCmdCopyQueryPoolResults.txt @@ -18,8 +18,8 @@ endif::doctype-manpage[] * pname:dstOffset must: be less than the size of pname:dstBuffer * pname:firstQuery must: be less than the number of queries in pname:queryPool * The sum of pname:firstQuery and pname:queryCount must: be less than or equal to the number of queries in pname:queryPool -* If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags then pname:dstOffset and pname:stride must be multiples of `4` -* If ename:VK_QUERY_RESULT_64_BIT is set in pname:flags then pname:dstOffset and pname:stride must be multiples of `8` +* If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags then pname:dstOffset and pname:stride must: be multiples of `4` +* If ename:VK_QUERY_RESULT_64_BIT is set in pname:flags then pname:dstOffset and pname:stride must: be multiples of `8` * pname:dstBuffer must: have enough storage, from pname:dstOffset, to contain the result of each query, as described <> * pname:dstBuffer must: have been created with ename:VK_BUFFER_USAGE_TRANSFER_DST_BIT usage flag * If the pname:queryType used to create pname:queryPool was ename:VK_QUERY_TYPE_TIMESTAMP, pname:flags mustnot: contain ename:VK_QUERY_RESULT_PARTIAL_BIT diff --git a/doc/specs/vulkan/validity/protos/vkGetQueryPoolResults.txt b/doc/specs/vulkan/validity/protos/vkGetQueryPoolResults.txt index ed588a52..1d5261b8 100644 --- a/doc/specs/vulkan/validity/protos/vkGetQueryPoolResults.txt +++ b/doc/specs/vulkan/validity/protos/vkGetQueryPoolResults.txt @@ -15,8 +15,8 @@ endif::doctype-manpage[] * pname:queryPool must: have been created, allocated or retrieved from pname:device * Each of pname:device and pname:queryPool must: have been created, allocated or retrieved from the same sname:VkPhysicalDevice * pname:firstQuery must: be less than the number of queries in pname:queryPool -* If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags then pname:pData and pname:stride must be multiples of `4` -* If ename:VK_QUERY_RESULT_64_BIT is set in pname:flags then pname:pData and pname:stride must be multiples of `8` +* If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags then pname:pData and pname:stride must: be multiples of `4` +* If ename:VK_QUERY_RESULT_64_BIT is set in pname:flags then pname:pData and pname:stride must: be multiples of `8` * The sum of pname:firstQuery and pname:queryCount must: be less than or equal to the number of queries in pname:queryPool * pname:dataSize must: be large enough to contain the result of each query, as described <> * If the pname:queryType used to create pname:queryPool was ename:VK_QUERY_TYPE_TIMESTAMP, pname:flags mustnot: contain ename:VK_QUERY_RESULT_PARTIAL_BIT diff --git a/doc/specs/vulkan/validity/structs/VkSpecializationInfo.txt b/doc/specs/vulkan/validity/structs/VkSpecializationInfo.txt index 7053c7f8..26e8b37d 100644 --- a/doc/specs/vulkan/validity/structs/VkSpecializationInfo.txt +++ b/doc/specs/vulkan/validity/structs/VkSpecializationInfo.txt @@ -10,7 +10,7 @@ endif::doctype-manpage[] * If pname:mapEntryCount is not `0`, pname:pMapEntries must: be a pointer to an array of pname:mapEntryCount sname:VkSpecializationMapEntry structures * If pname:dataSize is not `0`, pname:pData must: be a pointer to an array of pname:dataSize bytes * The pname:offset member of any given element of pname:pMapEntries must: be less than pname:dataSize -* For any given element of pname:pMapEntries, pname:size must be less than or equal to pname:dataSize minus pname:offset +* For any given element of pname:pMapEntries, pname:size must: be less than or equal to pname:dataSize minus pname:offset ifndef::doctype-manpage[] ******************************************************************************** endif::doctype-manpage[] diff --git a/doc/specs/vulkan/validity/structs/VkSubpassDescription.txt b/doc/specs/vulkan/validity/structs/VkSubpassDescription.txt index a2f507e2..4f39e801 100644 --- a/doc/specs/vulkan/validity/structs/VkSubpassDescription.txt +++ b/doc/specs/vulkan/validity/structs/VkSubpassDescription.txt @@ -25,7 +25,7 @@ endif::doctype-manpage[] * If any input attachments are ename:VK_ATTACHMENT_UNUSED, then any pipelines bound during the subpass mustnot: accesss those input attachments from the fragment shader * The pname:attachment member of any element of pname:pPreserveAttachments mustnot: be ename:VK_ATTACHMENT_UNUSED * Any given element of pname:pPreserveAttachments mustnot: also be an element of any other member of the subpass description -* If any attachment is used as both an input attachment and a color or depth/stencil attachment, then each use must use the same pname:layout +* If any attachment is used as both an input attachment and a color or depth/stencil attachment, then each use must: use the same pname:layout ifndef::doctype-manpage[] ******************************************************************************** endif::doctype-manpage[] diff --git a/out/index.html b/out/index.html index 8c155c73..cfc7ba88 100644 --- a/out/index.html +++ b/out/index.html @@ -9,11 +9,9 @@ related documents. It is updated by hand periodically by Jon Leech.

    -
  • The Vulkan Style Guide is a work in - progress (but significantly complete) document, useful when writing - and modifying Specification and reference page language.
  • -
  • The XML Registry README describes the - schema and some use cases for vk.xml.
  • +
  • The Vulkan Style Guide is a work + in progress (but significantly complete) document, useful when + writing and modifying Specification and reference page language.
  • Core API Specifications
  • The following targets are for internal use only and are probably - not included in, or if included, not up to date in the sandbox -
  • + not included in, or if included, not up to date in the sandbox +
diff --git a/src/vulkan/vulkan.h b/src/vulkan/vulkan.h index f71d23b6..2f180768 100644 --- a/src/vulkan/vulkan.h +++ b/src/vulkan/vulkan.h @@ -3432,7 +3432,7 @@ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhys typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties); typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays); typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties); -typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR*pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode); +typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode); typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities); typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);