aboutsummaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2018-03-09scripts: Private repo VUID workaroundMike Schuchardt
Workarounds for private codegen and tests so they can run without having to update the VUID mapping or database Change-Id: Idf71df859f55888103f93f863fc73a0c7a01de2c
2018-03-09scripts: Update lvl_genvk.py with 1.1 changesMark Lobodzinski
2018-03-09scripts: Allow for skipping version_1_1 featuresMark Lobodzinski
Treat 1.1 features as 1.0, instead of as an extension.
2018-03-02macOS: Add macOS supportKarl Schultz
2018-03-01layers: Make unique_objects ID map globalMark Lobodzinski
Increasingly, instance objects are referenced by device-level APIs. Made unique ID map global, shared across all instances and devices. Change-Id: I5b62e7b95ec25a2a8b390d46024b43c29f2199ce
2018-03-01scripts: Mod spec.py to use local validusage.jsonMark Lobodzinski
This script by default used the latest version of validusage.json from the web. Changed to use the local copy checked into the repo. Used the json-file option to fetch from a non-default location, removed the -json arg and the URL option entirely. Change-Id: Id088b08c8e66a3cdfca2b9e771797bffe941e5d3
2018-03-01scripts: Add validusage.json to LVL repoMark Lobodzinski
In the future, this file will be updated as part of the Vulkan header update process, and will be used as part of managing VUID identifiers and lifetimes. Change-Id: I6e29c1148e8752147310649a5ccfd99f385c0f46
2018-02-21scripts: Strip xref markup from vu error messagesMike Schuchardt
Convert asciidoctor xref markup from "<<anchor, text>>" to "text" for VU error messages. Longer term plan is to modify the upstream validusage build target in Vulkan-Docs to emit plain text to begin with. Change-Id: I6ca6ffb4701df27c9c1666598fbeceb0f3a03216
2018-02-21header: Update to version 1.0.69 of the Vulkan hdrMark Lobodzinski
- updated vulkan.h - updated vk.xml - updated layer json files - updated vulkan.hpp - updated validation_error_database.txt - updated vk_validation_error_messages.h - updated vuid_mapping.py Note that the VU text in the database file contains artifacts from the registry/VUID toolchain. These will be addressed in a follow-on patch set. Change-Id: I6994ec17a6edcb6c9028c792c68863cd39f1fc56
2018-02-19layers: Move U_O:DestroySwapchain out of codegenMark Lobodzinski
This function in the unique_objects layer will need to clean up some swapchain image index tracking information and so will now be manually written. Change-Id: I306fdd9f7a3c75c21b82fe21951804bd86259781
2018-02-05scripts: Fix error if spirv-tools dir had no .git (#2346)Cort Stratton
external_revision_generator.py generates a UUID for VkValidationCacheEXT objects created by the layers, based on the commit ID of the HEAD revision in the spirv-tools repo used to build those layers. This implicitly required that the spirv-tools source is hosted in a Git repository, which is not the case in all validation layers build environments. The script has been modified to accept *either* a path to a Git working directory to query *or* a path to a file whose contents are SHA1-hashed (if necessary) and treated as the "commit ID" for the project. Call sites for the script in the CMake and Android build paths have been updated to use the --git_dir approach by default, which matches the pre-existing behavior.
2018-01-31layers: Improve doc validation init-list parsingJohn Zulauf
Change VALIDATION_ERROR_ parsing to correctly recognize error ids in initializer lists, including the formatting as done by clang-format. {VALIDATION_ERRROR_nnnn, ... VALIDATION_ERROR_nnnn} Change-Id: I25a1c0d0c9181ece458f7c83d2f184abea8d1f4a
2018-01-26icd: Add VK_KHR_push_descriptor to blacklistJohn Zulauf
As VK_KHR_get_physical_device_properties2 pNext structure queries are not implemented within mock_icd, VkPhysicalDevicePushDescriptorPropertiesKHR::maxPushDescriptors cannot be queried by the validation layers, causing numerous test failures when this limit is checked (in a subsequen commit). Added to ignore until such time it is correctly reported. Change-Id: I77b9a37c9ab2ce3e730b7fa6596e23ccc2be8d8c
2018-01-26layer: Add utility template for sType initJohn Zulauf
Add utility function to auto populate sType field based on typename given to autogen of typemap helper. Return value optimization (copy elision) should make this perfomance neutral vs. inline init. Change-Id: I231cf92d5063c19f9ad5b14189dd162fdac76a43
2018-01-23scripts: Exit from vuid_mapping.py with status 1 on errorsJean-François Roy
This patch modifies scripts/vuid_mapping.py to exit with status 1 on errors. This allows the build system to fail code generation rules that depend on this script. Change-Id: I5659ae80e1989ea7530c9257e7619a9b35cc7294
2018-01-17layers: Fix doc validation file list checkJohn Zulauf
The check for required files was counting the files multiple times and aborting silently. The check now correct counts files and exits with non-zero exit code on failure. Change-Id: I5b158f7cca0dd541571d95c00c3450139daf32c4
2018-01-17header: Update to version 1.0.68 of the Vulkan hdrMark Lobodzinski
- updated vulkan.h - updated vk.xml - updated layer json files - built and updated vulkan.hpp - updated vk_validation_error_messages.h - updated vk_validation_error_database.txt Change-Id: I5aff6147531f9b91164849ee590f7f86e46e4652
2018-01-09loader: Add pre-instance functions for layersLenny Komow
Allow implicit layers (not explicit) to intercept calls before an instance has been created. Change-Id: I41f5bb0f5a6314fbab8003ebe71059dd04afc860
2018-01-08scripts: Default doc validator to non-verbose modeMark Lobodzinski
Change-Id: Ib62e92a3b84609df55179e4868e5030a010f712f
2018-01-08scripts: Remove unused source_line_info.pyMark Lobodzinski
Change-Id: I1e8db79c88749a9c60469f01838dd1c485061528
2018-01-08header: Update to version 1.0.67 of the Vulkan hdrMark Lobodzinski
- updated vulkan.h - updated cgenerator.py - updated generator.py - updated reg.py - updated vk.xml - updated layer json files - updated vulkan.hpp - updated vuid_mapping.py - updated vk_validation_error_database.txt for spec changes, new VUIDs - updated vk_validation_error_messages.h Change-Id: Ifb67cf406aa82bf89e72ccfa4e1320cb3b199656
2018-01-05layers: Remove unique_objects ext list generationMark Lobodzinski
Change-Id: I9b958f1799f1cab76a69c4de35590745d3e7a852
2018-01-05layers: Create instance & device extension listsMark Lobodzinski
Added constant lists of device and instance extension names to vk_extension_helper.h. Change-Id: I4273aea866cbfea176a2631e04223ce92443caf0
2018-01-04icd: GetImageSubresourceLayout zeros passed layoutJohn Zulauf
Calling tests use return values from GetImageSubresourceLayout to compute offsets in texures. Zero'd values are safe for this usage and add minimal overhead to icd. Change-Id: If52cf240925d2f7a41bb22d87519a918be5eb60a
2018-01-04icd: Move include to header to fix clang buildKarl Schultz
Move include <string> to header file to fix clang build when using libstdc++. Fixes #2303 Change-Id: Id2fc97be7cb83fa12ee1495ef57177c0a7dad893
2018-01-02Proper decoding for msbuild version number readoutsaschawillems
2017-12-28layers: Fix git.bat fallback on Windows.Jamie Madill
This fixes the external revision generator script to first try to use 'git', then fall back to 'git.bat' if the first invocation throws a WindowsError.
2017-12-21scripts: Scan CWD in object tracker generator.Jamie Madill
This makes it more easy to locate a header in configs which have the CWD set to something less obvious. In Chrome's case the build directory is completely separated from the script directory. Also reset the CWD after the header is found to keep the build intact. This is similar to the change to the parameter validation generator.
2017-12-19build: Add clang-format checking of pull request changes to CIKarl Schultz
Check modified lines in a pull request for correct clang-format. Note that checking is not performed unless there is a pull request. Heavily leveraged from https://github.com/KhronosGroup/SPIRV-Tools.
2017-12-19layers: Ignore pImmutableSamplers on non-samplersPetr Kraus
2017-12-15scripts: Scan CWD in parameter validation script.Jamie Madill
This makes it more easy to locate the header in configs which have the CWD set to something less obvious. In Chrome's case the build directory is completely separated from the script directory. Also reset the CWD after the header is found to keep the build intact.
2017-12-15scripts: Prefer git.bat on Windows.Jamie Madill
Calling git.bat seems to work in every instance, whereas some installations don't have access to "git" directly.
2017-12-15layers: Fix Graphics Pipeline pointers not ignoredPetr Kraus
Some VkGraphicsPipelineCreateInfo pointers must be ignored under some conditions, but were not in the layers. Add relevant tests. Fix tests found broken (using depth or color without attachment in subpass)
2017-12-08layers: VS2013 compatibilityMike Schuchardt
Remove all usages of constexpr to restore compatibility with Visual Studio 2013. Also make a handful of other minor edits where the VS2013 compiler was reporting errors. Change-Id: I3c426bea460a4a902ab306b01deb1d76d60f5fa2
2017-11-28layers: validation_cache review feedbackCort Stratton
2017-11-28Fix build errors:Cort Stratton
- No more SPIRV-Tools revision file. Instead, the revision-parsing script just runs "git rev-parse HEAD" in the spirv-tools repository to extract the commit ID. - Invoke the revision-parsing script from the .sh Android scripts, in addition to the .bat scripts.
2017-11-28Use SPIRV-Tools commit ID as validation cache versionCort Stratton
2017-11-28header: Update to version 1.0.66 of the Vulkan hdrMark Lobodzinski
- update vulkan.h - update Lin/Win json file versions - update vk.xml - update vuid_mapping.py - update vk_validation_error_messages.h - update vk_validation_error_database.txt - update vulkan.hpp - fixed error in vk.xml, unofficially Change-Id: Ia719bc069cb776c5b174f41667d591b43aaaf4d7
2017-11-21scripts: Update toolchain revision check scriptMark Lobodzinski
No longer need to check spirv-tools or spirv-headers as they are now part of glslang. Change-Id: Ib3594d064d33a94d6443426e02a617c96b243893
2017-11-17icd:Increase WHOLE_SIZE mapped memoryTobin Ehlis
Bump hard-coded mapped memory allocation size for WHOLE_SIZE from 4k to 64k. One validation test (InvalidMemoryMapping) was mapping 64k of memory that was leading to segF as the 4k buffer was overwritten when shadowed.
2017-11-17icd:Expand mock icd memory type bit supportTobin Ehlis
Image/buffer memory requirement memoryTypeBits are still just hard- coded in mock icd, but expand to support more bits for more simulated memory types. This helps the mock work in conjunction with the devsim layer so that if a simulated device has more than 5 memory types, the mock icd won't cause an error.
2017-11-15scripts: Fix incorrect object type mappingsMark Lobodzinski
'Unknown' type was at the end of a couple of the lists, causing incorrect IDs to be emitted. Change-Id: I55cae6ecaff47977dca78e2f73468980f9450bda
2017-11-09layers: Don't confuse VkResult/VkBool32 in generators.Jamie Madill
In some cases, the generator would return the special error for validation failed for functions that return a VkBool32. Fix this, and also some cases of initializing a VkBool32 with VkResult. Change-Id: Icc071e647f293848d62a922d492ed41dfc5a4be1
2017-11-09layers: Make generator helpers Python 2 compatible.Jamie Madill
This is an easy compatiblity change, which uses a workaround to import a version of 'open' that can support unicode across Python versions. Affects the object tracker and parameter validation generators. Change-Id: Ie958dc64168db9e06b36321b4b6ad2336f995ea3
2017-11-09layers: Return an error when generator scripts fail.Jamie Madill
Currently the scripts would abort with an error message, but not an OS error code. Adding an error code allows build systems to correctly detect the script failure as a failed build step. Change-Id: I142a6215a3c02e6a880bfce0c3aba2c3c8fc4ff1
2017-11-06icd:Reduce offset alignment limitsTobin Ehlis
Buffer min offset alignments were set to the max value. Reduce them to 16 to simplify testing of offsets that are a multiple of the min alignment.
2017-11-06icd:Don't return support for Undefined FormatTobin Ehlis
2017-11-03layers: Refactored pNext chain walks to templateJohn Zulauf
The while loops for the walking the pNext chains were implemented by repeated code. These were refactored into a common template. Added autogenerated 'traits' objects for the pNext linked structs. Delete cut and paste duplicate pNext chain walk. Change-Id: I46457bb5432219c74f9356e5230c70e4a9ef16df
2017-11-02icd: thread protect mapsMike Stroyan
Lock to protect threaded access to queue_map and mapped_memory_map.
2017-10-31scripts:Cleanup comments and output for mock icdTobin Ehlis
Commented out a couple of debug output statements. Killed a bunch of comments and code that were carried over from original script but that are no longer relevant.