322de3fe2a2197f9bb4dd39ca9307b315f48a66b |
|
13-Oct-2016 |
Mark Lobodzinski <mark@lunarg.com> |
layers: Update build for v1.0.30 XML code-gen - Updated cmakefiles for new codegen files: renamed genvk.py to lvl_genvk.py as the file is modified in this repo. - Modified dependencies and parameters of cmake build macros. - Updated reg.py to version 1.0.30 - Updated generator.py to version 1.0.30 Change-Id: Ia87fc7fc68e406a724d5ad9822f1f87b964f9977
/external/vulkan-validation-layers/generator.py
|
36f9d19dce58d509c189c22b4e630ba9a450ce5a |
|
07-Sep-2016 |
Mark Lobodzinski <mark@lunarg.com> |
Layers: Implement unique_objects layer using vk.xml UniqueObjects was the final LVL layer not using vk.xml for codegen. The new implementation follows the threading layer model which (outside of safe_struct dependencies) is more tolerant of API changes. Also updated for structure and style. build-android/android-generate.bat - Updated for build build-android/android-generate.sh - Updated for build generator.py - Added Unique Objects Generator genvk.py - Added call to U_O generator layers/CMakeLists.txt - Updated for build layers/unique_objects.cpp - New: manually generated code layers/unique_objects.h - Now a true header file vk-layer-generate.py - killed! Change-Id: I0d57871dfd2600829502f0bffd7cf6f926b7d5e7
/external/vulkan-validation-layers/generator.py
|
4a9b060e126e7cf55992c1b15eeac71456f29444 |
|
27-Sep-2016 |
Mark Lobodzinski <mark@lunarg.com> |
layers: Fix thread/PV codegen for new notation Embedded parameter length variables are now specified in vk.xml as being separated by '::' instead of '->'. Change-Id: I53befe20912d7d7ee628f6819dbd013bcd2a9414
/external/vulkan-validation-layers/generator.py
|
d0a33d72b45719cde2f7a5c74333e3d45b16e984 |
|
22-Jul-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Fix paramter_validation array name codegen Replace std::string with ParameterName for the generated parameter_validation layer code so that the parameter names printed by the generated code contain the correct array subscript values. Also updates the parameter_validation tests to reflect the change to the printed names. Issues-Addressed: GitHub #462 Change-Id: I3032e08052fc003ba066bbe613e5faf3ed049964
/external/vulkan-validation-layers/generator.py
|
059e07e5fff8ea8b6108fe900e573d845fb98bf0 |
|
19-Jul-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Change pNext validation error to warning Change the severity level of the parameter_validation layer's pNext parameter validation messages from error to warning. Also add an explanation that the warning is derived from the Valid Usage language from version X of the Vulkan spec/header, which may be out of date: This warning is based on the Valid Usage documentation for version %d of the Vulkan header. It is possible that you are using a struct from a private extension or an extension that was added to a later version of the Vulkan header, in which case your use of pNext is perfectly valid but is not guaranteed to work correctly with validation enabled Issues-Addressed: LunarXchange 560 Change-Id: I97f55cba7538506d246e45ef603a86db9ad1adcb
/external/vulkan-validation-layers/generator.py
|
bca0b97132b3f147aabd07267c434d4d3c688939 |
|
19-Jul-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add codegen header version Add an integer constant to the parameter_validation layer's generated code to specify the header/XML version from which the code was generated. Change-Id: Id690962856130007a24732a478ffa9c28f774b8f
/external/vulkan-validation-layers/generator.py
|
83eb2cbf733b90eb425c1c2113b5a92abf61db99 |
|
13-Jul-2016 |
Mike Stroyan <stroyan@google.com> |
layers: faster threading layer for single thread Add a check to the threading layer to detect a single thread case. If the application has only called vulkan from one thread at a time, then skip access counters for externally synchronized parameters. This greatly reduces the overhead of the layer for applications that don't truly use vulkan in a multi-threaded way.
/external/vulkan-validation-layers/generator.py
|
07ac0214842b58136fb91d5e5fed309c7000bbb3 |
|
17-Jun-2016 |
Alexander F Rødseth <rodseth@gmail.com> |
Only set scripts that starts with a hashbang as executable Remove executable bit from files like README.md Change-Id: I6a2a86e8312616c175845f0a3b777515a58c52b9
/external/vulkan-validation-layers/generator.py
|
dc2176da60be5727b891a93f527f57c1c1804b7f |
|
31-May-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: More noautovalidity processing for structs Apply 'noautovalidity' code generation logic to struct members. Previously, struct pointers tagged as noautovalidity were ignored by the code generator, but the members of non-NULL struct pointers were still processed. Now both the struct pointer and the struct members are ignored when the struct pointer has the 'noautovalidity' attribute. Change-Id: I14bc231210f2440fb8bb3df8c73ef165100f0daa
/external/vulkan-validation-layers/generator.py
|
3b7fdd0052ab203262cf6e904b6acb4807eb9730 |
|
16-May-2016 |
Chia-I Wu <olv@google.com> |
threading: drop vk prefix for layer functions Drop VK_LAYER_EXPORT as well.
/external/vulkan-validation-layers/generator.py
|
7237de2ef67ff4ae694b1d565ab5153e1c7ca5bb |
|
16-May-2016 |
Chia-I Wu <olv@google.com> |
threading: put layer functions into a namespace Put all layer fucntions/data into threading namespace. I had to add some wrappers to make everything work. This also removes vkEnumerateInstance*Properties from procmap. procmap is used in vkGetDeviceProcAddr and it should not contain vkEnumerateInstance*Properties in the first place.
/external/vulkan-validation-layers/generator.py
|
ccf92a97687d7a802b229bcfa4c92a9f33d98156 |
|
16-May-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Ignore 'noautovalidity' params w/codgen Add special handling to the parameter_validation layer's code generator for vk.xml parameters with the 'noautovalidty' attribute: - Ignore vk.xml parameters with the 'noautovalidity' attribute when generating code for the parameter_validation layer. - Implement custom validation routines for parameters with 'noautovalidity' tags. Issues-Addressed: GitHub 515 Change-Id: I1bd28cc79233fb8b040d6e107ed5e2176a84edb5
/external/vulkan-validation-layers/generator.py
|
8b408b074df08df317a047e913e5ccf7257bf859 |
|
11-May-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Sync XML registry files from Vulkan-Docs Sync the vk.xml and related Python scripts with the latest revisions from Vulkan-Docs: - Update local copy of vk.xml from Vulkan-Docs - Merge minor changes to genvk.py and generator.py from Vulkan-Docs to local copies - Add debug marker function pointers to VkLayerDispatchTable - Update parameter_validation code generation to support use of types across API features; The core API feature needs to be aware of a structure defined by the AMD_rasterization_order feature for the purpose of pNext validation - Modify thread_check code generation to add TODO messages for debug marker support Change-Id: I4d5b98683592f4ef404cb46e5b0f6ad519912382
/external/vulkan-validation-layers/generator.py
|
c5ef2f000603a3e52647b44b3910e2cb6a0143fc |
|
04-May-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add parameter_validation namespace Add parameter_validation namespace for utility functions. Namespace will be extended to include core layer functions in a future update. Change-Id: I0929f5caacbf3e1b4509f051ea020566cce44e3e
/external/vulkan-validation-layers/generator.py
|
c61d22af1b891301c6de083ae8c37e88bba280fa |
|
04-May-2016 |
Jamie Madill <jmadill@chromium.org> |
Add an output directory option to genvk.py. Currently for the threading utils and parameter checker generator, the script is hard-coded to write to the current directory. Add an option to add a custom output directory. Change-Id: Id1b72a934ead74d2f6c01ad4e581af83067d3f49
/external/vulkan-validation-layers/generator.py
|
e1388f48e360fe655bdee490a0d08e9d7499253c |
|
29-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add 0 check for VkFlags array elements - Add parameter validation for the case where the elements in an array of VkFlags values must not be 0 - Replace the template parameter in the VkFlags validation functions with the VkFlags base type. Change-Id: Ie85d4d048b21e73409ff817425a1db64570e1b2f
/external/vulkan-validation-layers/generator.py
|
4ccfe214cc5531f0d6e3574924d181b2aa416e52 |
|
26-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add VkFlags parameter validation Add parameter validation for VkFlags derived types to the parameter_validation layer's code generation scripts. The following validation checks are performed: - If a VkFlags parameter is not marked as optional in the XML, a message is generated when the parameter is 0. - If a VkFlags parameter is not 0, a message is generated if it combines bits that are not defined by its associated flag bits enumeration. - If a VkFlags parameter does not have an associated flag bits enumeration it is treated as a reserved value that must be 0. Change-Id: I6daed360cde46e2a27c84deda1e0798621f92d50
/external/vulkan-validation-layers/generator.py
|
75814c1599a00692c3c9dbe48c63ee57e27abb4e |
|
27-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Merge enum array NULL/value checks - Merge the NULL checks and enumeration value checks performed for arrays of enumeration values into a single function call. This is consistent with the validation for arrays of other types. - Reduce duplicate array checking code. Change-Id: I8c4e05542bb2f52f5623fe6c7ed3629b9b2680e0
/external/vulkan-validation-layers/generator.py
|
1c2f5ef6e0a34edca6de231e73e71db0284778f0 |
|
25-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add missing compute stage sType check The parameter_validation code generator was only generating sType checks for pointers to structures. There is one case where a non-pointer struct parameter needs to be validated: the VkComputePipelineCreateInfo::stage member of the vkCreateComputePipelines pCreateInfos parameter. The code generator has been updated to handle this case. Change-Id: I1e695fcc875574eae94912ceb6338428d7ed8b49
/external/vulkan-validation-layers/generator.py
|
cba0861249f2112e41cd00600a832d7fb605c7b8 |
|
19-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add handle NULL checks to codegen Add support for validating that required handle parameters are not specified as VK_NULL_HANDLE to the parameter validation layer's code generator. - Add new parameter validation utility functions to validate required handles and arrays of handles. - Add new parameter validation layer entrypoints for functions that previously had no parameters to validate. - Add handle validation logic to the parameter validation code generator. Change-Id: I7a5680954245db4c1b12587f78e30e17c3903d6c
/external/vulkan-validation-layers/generator.py
|
43b53e83705f02245da6ae61e31273866a35b833 |
|
19-Apr-2016 |
Jon Ashburn <jon@lunarg.com> |
misc: Update licenses to Apache 2.0 Change-Id: Id447f4c8c53d33f9192940bdd3ae727b7b738a97
/external/vulkan-validation-layers/generator.py
|
d59852fc4166e674833898daa5037270f5c75ea6 |
|
16-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Make logicOp param validation conditional - Only validate that VkPipelineColorBlendStateCreateInfo::logicOp is a valid VkLogicOp enumeration value when VkPipelineColorBlendStateCreateInfo::logicOpEnable is set to VK_TRUE. - Remove redundant VkPipelineColorBlendStateCreateInfo validation (hand written code replaced by generated code). Change-Id: I075c58342678219c5ed1dd5c401e0da2cea53232
/external/vulkan-validation-layers/generator.py
|
7633d69ff5c949e0032df6e7f7cd33c93aedd4eb |
|
14-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Improved generated struct validation code Improvements to the parameter validation code generator, primarily to eliminate string concatenations performed when processing structs. A validation function was being produced for each struct, which received a string specifying the name of the struct parameter. This string was then concatenated with the names of the struct members. The struct validation code is no longer in a separate function, and a single string containing the full names of each struct member (eg. pCreateInfo->pApplicationInfo) is created at code generation time. Change-Id: I2800bfbc26247e4e4c6f8c885c0e7c4b8b3776a2
/external/vulkan-validation-layers/generator.py
|
62448bf7a371ea59fbd95cb679a975195140d13f |
|
12-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Simplify generated param validation code - Remove unnecessary conditional checks for input vs. output parameters from the generated C++ code. - Split some generator code into smaller functions. Change-Id: I32e47d417ab884e5cc0fc7af40cb5657b39c176d
/external/vulkan-validation-layers/generator.py
|
0cf28a250c117cb1d11426ddc75c0327297e32e7 |
|
06-Apr-2016 |
Mike Stroyan <stroyan@google.com> |
Change from using lxml to xml.etree Use xml.etree for xml parsing for greater portability. Change-Id: Ic9b3b487e9b363a89d134d048db9fa79fbd66f6f
/external/vulkan-validation-layers/generator.py
|
bb84994a71bd9b17b407ac33eb82020014b8126a |
|
05-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Fix unsafe bool mix warnings (part 2) Fixes the MSVS warnings regarding unsafe mix of VkBool32 and bool for the device_limits, image, parameter_validation, and threading layers. Converts all Boolean usage internal to the layers to bool/true/false. The VK_TRUE and VK_FALSE values continue to be used with the Vulkan API components. Change-Id: I612d3f26050fadcd77ffca4d8723a7c734613816
/external/vulkan-validation-layers/generator.py
|
16ee6bbd953d920c626490f2fc626d06d7325409 |
|
04-Apr-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Fix paramcheck struct array NULL indexing Fixes an issue where the generated parameter_validation code could index a NULL pointer to an array of structs. Change-Id: If78f1c97ea256911d857b0b8009b38e6ca6f2581
/external/vulkan-validation-layers/generator.py
|
cd99e567ae76ae6a6900b80b2c8f6031a194003a |
|
31-Mar-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Fix param checker struct array handling Fix parameter validation issue with arrays of structs, where only the first item in the array was processed. Validation messages for arrays of structs will currently print the array variable name with the letter 'i' as the array index instead of the actual index number, producing a value like 'pCreateInfos[i]'. This will be fixed by a future update. Change-Id: I2cb773c23c6515a20ac8cb066e7cc61028e569f8
/external/vulkan-validation-layers/generator.py
|
c3fc3d8e91f24136f4e2cc036e92033b826a96e7 |
|
24-Mar-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Codegen VkBool32/enum parameter validation Now generating the VkBool32 and enum checks: - Warns if a VkBool32 parameter is neither VK_TRUE nor VK_FALSE - Warns if an enum token value falls outside of the enum's begin/end range and the token was not added by an extension. Only checkes enum's that have a begin/end range. Detection of tokens added by extensions is based on the base_value defined in appendic C.10 of the Vulkan specification. Change-Id: Id49ace52fea8a35972f96d54247b98aba182c09e
/external/vulkan-validation-layers/generator.py
|
b8458d181ca96c09e5655ecd2a58532bbfb947d3 |
|
29-Mar-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: 1.0.7 update for XML Registry files Update local copies of generator.py, genvk.py, and vk.xml with the latest versions from Vulkan-Docs. Change-Id: Id2a3da34374fb1c39532cd3c124461eb953f6b89
/external/vulkan-validation-layers/generator.py
|
3e04b61c5400de5eae22313be467692a21ffde97 |
|
18-Mar-2016 |
Michael Mc Donnell <michael@mcdonnell.dk> |
layers: Fix signed/unsigned comparison warnings in thread_check.h Change-Id: I3a5e8e64deed53b3817be1fe8e1e2b32c08691a7
/external/vulkan-validation-layers/generator.py
|
1c3335744fd8c4b4299d64153d5d3b411f8f3fa5 |
|
17-Mar-2016 |
Mark Lobodzinski <mark@lunarg.com> |
layers: Rename param_checker to parameter_validation Also, param_check.h -> parameter_validation.h and .json files changed. Change-Id: I9db10563bcc2640fe6b90588d3c80c4fe50a8a83
/external/vulkan-validation-layers/generator.py
|
2949a5aa26e4ae485d9e61c7561743ed84742cf3 |
|
09-Mar-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add pNext parameter checking Validate pNext based on the validextensionstructs tag from the XML registry. If the tag provides a list of valid structures, walk the pNext list and check each node's sType value agains the VkStructureType value associated with the structs from the list. If no valid structure list is provided, ensure that pNext is NULL. Invalid struct types produce errors similar to the following: ERROR: [PARAMCHECK] Code 1 : vkCreateImage: pCreateInfo->pNext chain includes a structure with unexpected VkStructureType VK_STRUCTURE_TYPE_APPLICATION_INFO; Allowed structures are [VkInstanceCreateInfo, VkDeviceCreateInfo] Change-Id: I2c2471a068cb304120c66cb4156331999f8548cd
/external/vulkan-validation-layers/generator.py
|
c3fbcf827392dd7ad90b9b960931a458228679fb |
|
08-Mar-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add string array parameter checking The param_checker layer had previously peformed a NULL check on the pointer to a string array, but had not performed a NULL check for the individual strings in the array. This adds NULL checks for the individual strings. Change-Id: Id4527f670086187e8cd1f146027bfdfd1e134b7b
/external/vulkan-validation-layers/generator.py
|
3e646e3de6f4fe0bfb0f0bf3a4633f3ead86dc66 |
|
08-Mar-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add func pointer NULL checks Add code generated NULL checks for function pointers. This enables parameter checking for the VkAllocationCallbacks struct, with param_checker additions for the vkDestroy functions that receive VkAllocationCallbacks parameters. Change-Id: I9910c52026aa584bb013ee5015b5cb04b2d6ddcd
/external/vulkan-validation-layers/generator.py
|
80c0deae33503793ae085e775d75d77134ce7a54 |
|
03-Mar-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add param checks for CreateInstance/Device Add parameter checks for vkCreateDevice and vkCreateInstance. Includes a local fix for GitHub Vulkan-Docs issue #104 to prevent false positives from being generated for the pCreateInfo->pEnabledFeatures == NULL case. Change-Id: I1f3642e7e18c8bfb32b0996b6e2e57a5f9d8e011
/external/vulkan-validation-layers/generator.py
|
af0d6dc3237346933fb9da9cb13d414bf46cf664 |
|
03-Mar-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Add NULL/sType checks for struct members Add param_checker support for validating struct members. Messages are logged for the following conditions, based on conditions specified in vk.xml: - A pointer is NULL and is not marked as optional in the XML - An array is NULL and is not marked as optional in the XML, unless its count is 0 - An array count is 0 and is not marked as optional in the XML - A structure's sType value does not match the value specified in the XML Addresses GL105, GL109, GH82 Change-Id: I7063fe2582b30fdfc0006fe945a0f9c84a2aa66a
/external/vulkan-validation-layers/generator.py
|
af1f1b86877a3f92fc7c01e1b51749a2ef3daaf4 |
|
29-Feb-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: Handle indirection in param_checker Code was being generated for param_checker that looked like: validate_pointer(pAllocInfo); validate_array(pAllocInfo->count, array); Where validate_array could dereference a NULL pointer. The code generator was updated to insert NULL checks for this case: validate_pointer(pAllocInfo); if (pAllocInfo != NULL) { validate_array(pAllocInfo->count, array); } Change-Id: I1eda66530dbff2e95d604a20d122179be172bedf
/external/vulkan-validation-layers/generator.py
|
f69e3771c85a0f2dd55de84a3ec588eb17a764c8 |
|
11-Feb-2016 |
Dustin Graves <dustin@lunarg.com> |
layers: MR243: Add param checker code generation Generate param checker code to verify that required pointer/array parameters are not NULL and that structures with sType fields have the correct VkStructureType value. The checks are generated from the Vulkan XML API registry based on the optional parameter tag and sType comments.
/external/vulkan-validation-layers/generator.py
|
584ccabfe4526e99ddbdd033b15bbcf16530d373 |
|
03-Feb-2016 |
Michael Lentine <mlentine@google.com> |
layers: Enable Wall and Werror.
/external/vulkan-validation-layers/generator.py
|
8849f9aa3732ef897996f35615714f151d1fedf9 |
|
02-Nov-2015 |
Mike Stroyan <mike@LunarG.com> |
layers: Add threading layer generation Generate threading layer wrappers in thread_check.h. Change path for generated vulkan.h.
/external/vulkan-validation-layers/generator.py
|
a451fa8bcbde4ba46bd83055f6624f812dd7996f |
|
07-Jan-2016 |
Mike Stroyan <stroyan@google.com> |
layers: bring xml and scripts from documentation These are repo git@gitlab.khronos.org:vulkan/vulkan.git from commit 51ffe091889e08ca5196c5635363a5358c85ff82
/external/vulkan-validation-layers/generator.py
|