PR for automatic paired functions cross-referencing#615
Open
avoroshilov wants to merge 4 commits intoKhronosGroup:mainfrom
Open
PR for automatic paired functions cross-referencing#615avoroshilov wants to merge 4 commits intoKhronosGroup:mainfrom
avoroshilov wants to merge 4 commits intoKhronosGroup:mainfrom
Conversation
…llocate/free functions
…settings dict into related functions, adding makefile dependency
…teGraphicsPipelines) vs vkDestroyPipeline
…End), (vkMap, vkUnmap)
|
|
Member
|
We changed the CLA to acknowledge that changes to the specification source documents fall under the Khronos IP policy, unlike changes to the Apache-licensed scripts. This change requires you, the contributor, to re-sign the CLA before your contribution can be accepted. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Originally defined in issue #608
Short description:
doc/specs/vulkan/config/vulkan-api-tuples.txtanddoc/specs/vulkan/config/vulkan-api-sorting.txt.vulkan-api-tuples.txtdefines paired functions, pairs delimiter is empty string.vulkan-api-sorting.txtdefines the order how prefixes appear in the cross-references list,*(meaning "any other function) denotes place where functions that didn't match any prefix go; function keep case-sensitive alphabetical order within the prefix, as it was prior to this change.doc/specs/vulkan/genRef.pyis modified to read, process and apply data supplied by the two config files mentioned.doc/specs/vulkan/Makefilemodified to have the config files as dependencies, to facilitate rebuild when config files changeddoc/specs/vulkan/chapters/pipelines.txtmodified to have explicit cross references, due to the way paired functions are named: (vkCreateComputePipelines, vkCreateGraphicsPipelines) vs vkDestroyPipeline.The idea behind this way of implementing the cross-references is in this comment.
There is a problem with pairing functions, provided by extensions (e.g.
vkCreateSwapchainKHRvsvkDestroySwapchainKHR) - they are NOT automatically generated. Manual cross-referencing won't work too, becausedoc/specs/vulkan/vkapi.pysimply doesn't have anything but the core functions, hence auto-cross-reference validation will fail and functions won't appear on the reference list. Manual referencing via addingxref- won't work either, becausemacroPrefixfunction indoc/specs/vulkan/genRef.pywill not recognize the reference properly and return "UNKNOWN" prefix. Hence, in this revision paired extension functions do not get cross-references.