| Age | Commit message (Collapse) | Author |
|
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.
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
- 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
|
|
Allow implicit layers (not explicit) to intercept calls before an
instance has been created.
Change-Id: I41f5bb0f5a6314fbab8003ebe71059dd04afc860
|
|
Change-Id: Ib62e92a3b84609df55179e4868e5030a010f712f
|
|
Change-Id: I1e8db79c88749a9c60469f01838dd1c485061528
|
|
- 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
|
|
Change-Id: I9b958f1799f1cab76a69c4de35590745d3e7a852
|
|
Added constant lists of device and instance extension names to
vk_extension_helper.h.
Change-Id: I4273aea866cbfea176a2631e04223ce92443caf0
|
|
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
|
|
Move include <string> to header file to fix
clang build when using libstdc++.
Fixes #2303
Change-Id: Id2fc97be7cb83fa12ee1495ef57177c0a7dad893
|
|
|
|
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.
|
|
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.
|
|
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.
|
|
|
|
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.
|
|
Calling git.bat seems to work in every instance, whereas some
installations don't have access to "git" directly.
|
|
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)
|
|
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
|
|
|
|
- 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.
|
|
|
|
- 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
|
|
No longer need to check spirv-tools or spirv-headers as they are now
part of glslang.
Change-Id: Ib3594d064d33a94d6443426e02a617c96b243893
|
|
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.
|
|
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.
|
|
'Unknown' type was at the end of a couple of the lists, causing
incorrect IDs to be emitted.
Change-Id: I55cae6ecaff47977dca78e2f73468980f9450bda
|
|
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
|
|
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
|
|
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
|
|
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.
|
|
|
|
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
|
|
Lock to protect threaded access to queue_map and mapped_memory_map.
|
|
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.
|
|
|
|
Modifying hard-coded minImageTransferGranularity for the queue from
{0,0,0}, which has special restrictions, to {1,1,1} which is more
lenient and removes some unexpected errors, allowing six more tests to
pass.
|
|
If an image is linear, return max mips, layers, and sample count of 1.
|
|
Mock ICD doesn't need to implement validation cache extension. Add
simple list of excluded exceptions so we can kill any cases that we
don't want in mock ICD. Initially only excludes validation cache.
|
|
Initial check-in for mock icd which is being built to allow validation
testing without the need for an actual Vulkan device.
ICD is currently building and passing 324/332 tests. It creates ptr
handles for dispatchable objects and unique id handles for
non-dispatchable objects. It currently has some hard-coded values for
various Get* device-query functions in order to allow forward progress.
The long-term intention is to allow the device configuration to be set
by the test itself.
See the ICD README.md file for more info.
|
|
- update vulkan.h
- update vk.xml
- update Win/Lin json file versions
- update vk_validation_error_messages.h
- update vk_validation_error_database.txt
- update vulkan.hpp
Change-Id: Ib20f1955df85a31069c9ffc69c3260973b2c6633
|
|
- updated vulkan.h
- updated vk.xml
- updated Win/Lin json files
- updated vk_validation_error_messages.h
- updated vk_validation_error_database.txt
- updated vulkan.hpp
- updated vuid_mapping.py
- updated cube.cpp for vulkan-hpp changes
Change-Id: I79971c3b54feb1fdad5ea2257e4b1b4c6f9e3c3b
|
|
Change-Id: I3f55bd5ee0296fc962bb2ee624391e793f8f9fe4
|
|
Unknown structures will return a 0 size instead of failing, in order for
them to be ignored properly.
|
|
Change-Id: I12494a129ef8be68170dddf4efe6762f4051b116
|