| Age | Commit message (Collapse) | Author |
|
Initial batch of updates to use unique validation error enums and
messages for a few checks. Updated the database file and flagged
some other checks that are missing along with "TODO" notes in the
code.
|
|
|
|
Change-Id: Id3ac6abb9288d2a36d68b67a605b4681ce20f539
|
|
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
|
|
Cut-and-paste error
|
|
This is the initial commit of spec.py script that's used to generate a header
and database file that contain unique error enums per valid usage line in the
spec.
The basic usage is just "python spec.py" which will write out a header file to
"vk_validation_error_messages.h" that contains unique error enum values for
each valid usage line in the current spec that's online at
https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html
The header also contains validation_error_map with unique enum values as keys
that map to customized output messages for each validation error.
Updated one check to use the new model in core_validation.
The database file contains an enum value and error message on each line, as well
as fields indicating if the enum has been implemented in code and the testname
for a layer validation test that verifies that particular check. Initially the
implemented fields are set to 'U' and testname set to 'Unknown' to indicate that
they haven't yet been checked. Will be updated manually as the code is scrubbed
and new error enums are added.
When updating the header as the spec changes, the "-update" option to spec.py
will pull the database file and use it as a baseline reference to compare against
the updated spec. The script will attempt to keep errors with same message to have
the same error enum. When it's unsure if messages are updated or new, the script
will flag errors for manual review.
|
|
Don't destroy buffer_view from map until after invalidating bound cmd buffers.
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Change-Id: Ib9b20635225528d2fd6d012e6487d95f27a0f95d
|
|
Change-Id: I8a614f915ab9b61eca5b3b94f4cf43a33cacf250
|
|
Checks for underflow and overflow when flushing mapped memory where using the
flush offset instead of the original mapped region offset to determine size of
total mapped region.
|
|
V2: Don't leave commented-out junk lying around; init
SURFACE_STATE::surface in default-constructed case.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Change-Id: I21af32fb017de15760d72d4b32d99d84c383755f
|
|
Change-Id: I8f94d27f16864730514beb3e326b604f24bbb65a
|
|
Change-Id: I7722a31a6ef576cf8bc79c6893e70bc4b1cf1c09
|
|
Instead of initializing dispatch tabled for up to *pPhysicalDeviceCount devices, initialize
always all dispatch tables.
This fixes corruption _after_ VulkanCTS dEQP-VK.api.info.instance.physical_devices test.
Change-Id: I29ff42456bed9acb6d2c4016fe7f1940b7f4bd3b
|
|
We had a function that was called only from one other place and
it wasn't necessary. So removed the extra function call.
Change-Id: I3579215dc1d2f46b8c30b4ec3cb416c390fcf597
|
|
Change-Id: Iec47464d56c862cb1a6f132241d200d6f68efa21
|
|
Change-Id: I39daaa144e82eeabbe532cb32d334d4e60e6a7e2
|
|
This comes from the Khronos-internal discussion of
https://github.com/LunarG/VulkanSamples/issues/98. Cube will, by default,
choose VK_PRESENT_FIFO_KHR mode. However, when that change was made, the old
(example) code was lost that showed how to search for the other present modes.
It was also discussed that there isn't good guidance on why an application
might want to use a mode other than FIFO. This change adds both of those, but
only selects FIFO by default. #ifdef's can be used to select other modes.
With that code is a reason why an application might wish to use that present
mode.
|
|
The previous approach doesn't actually work.
|
|
Hide symbols from layers that don't need to be exported.
This makes libraries smaller.
It reduces symbol lookup time and call overhead.
It prevents possible symbol collisions.
|
|
Use -Bsymbolic linking android layers so they don't get symbols
like vkCreateDebugReportCallbackEXT from outside the layer.
|
|
Core_validation was exporting SPRIV symbols that might
collide with application use.
|
|
This reverts commit dd96dd21b438d48aa78e9de60ad0c550c856cf29.
|
|
This allows layers to hide many functions that don't need export.
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Change-Id: I52f48c40290ff56df98d9eae3dfc3fe8748b5008
|
|
Change-Id: Ifc3484471e8f1e7ca585055b243f0688e7dfd33c
|
|
Change-Id: Ieb1befd5370d96404af8abf85bfed30fe43b5995
|
|
Change-Id: Ibea474bc21a54251372f757d21a5cfb401876a35
|
|
Change-Id: If3dbe050a7d8c9954ba1d7bc6aa29123a123a359
|
|
Change-Id: Iae35f784b40eeafe07e1cf1af96924bd151ecd59
|
|
Change-Id: I500e04c6545daa53d21b8cf552a922a0462d066c
|
|
Added CmdDrawIndirectCountAMD and CmdDrawIndexedIndirectCountAMD APIs
for this extension to object_tracker.
Change-Id: I99fcadc9660316864666f86040e256a392565569
|
|
Added GetMemoryWin32HandleNV API for this extension to object_tracker.
Change-Id: I94cc6a3928f90c6ff964f7a2e5cba9aa2548d653
|
|
Added GetPhysicalDeviceExternalImageFormatPropertiesNV API for the
VK_NV_external_memory_capabilities extension to object_tracker.
Change-Id: I36ab9a1656dbecbb2384ee173359968ea8e454eb
|
|
Added object_tracker checking for Debug Marker functions SetObjectTag,
SetObjectName, Begin, End, and Insert.
Change-Id: Ibc13192bed2003d176df97719c9162b90051b703
|
|
Previously this didn't bother to clean up the descriptor sets associated
with the pool.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Same deal.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
These did exactly the same thing, except for the slight wrinkle of
needing to cast to uint64_t & in the nondispatchable case to account for
MSVC crankiness. We can just do that always.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
This is now covered by object_tracker
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|