| Age | Commit message (Collapse) | Author |
|
Use latest version of Spir-V tools, Spir-V headers, and Glslang.
Change-Id: Id4675f369e016c507b09a355663b487d29b980c5
|
|
|
|
Change-Id: Ib7cbe624aabedec172bead14d0f6d8314f7fc743
|
|
rather than a compile time decision
Change-Id: Ia13400f03d1881ca3d923f47f76b068a19670435
|
|
Get rid of flush in staging code where it's probably unexpected, considering
it doesn't begin another command buffer, and then wait until the expected
flush to free staging texture resources
Change-Id: I80945c3f002a7efe212608895b91ccf0934fe6f9
|
|
Create, begin, end, and submit the setup command buffer all from the same routine
Change-Id: I1ea93e14e930dc3330f722fe212cd8f66555f618
|
|
- updated vulkan.h
- updated vk.xml (note that the validity tags have been removed in
this update)
- updated vulkan.hpp
- updated loader's SOVERSION
- updated json files to version 1.0.32
Change-Id: Ie650c1d6e0bdff3c8cc9c38d74715c454dec37de
|
|
Was mucking around in here anyway, so fixed up a few var names.
Change-Id: I15f6eab8a94ed73ad3d2f0db143f099732ff54f7
|
|
The validity checks have been removed from vk.xml. PV needed a small
fixup to replace a check that was formerly autogen'd.
Change-Id: Ic4249ff17c22899b6e5324131c644d054ac2a0cf
|
|
Added RenderPassInUseDestroyedSignaled test to verify
VALIDATION_ERROR_00393, renderPass in-use when destroyed.
This test exercises case when renderPass is bound to cmd buffer as
a child of a bound pipeline.
Updated database file.
|
|
When creating the cmd buffer<->object linkage, need to account for any
renderPass that is tied to the pipeline and bind it as well.
|
|
Removing 'AllPlatforms' arg simplifies and further isolates this
script from API changes.
Change-Id: Iaa3e7c63984e177471fe207b342d79bffa0614b7
|
|
Allplatforms was specified unnecessarily, resulting in more work
downstream to filter out undefined entrypoints.
Change-Id: Iba542dd4cf4b51592833e704f3d166be5e73b046
|
|
Change-Id: I349e8513e8de69580e3a2bed6b69205c377079cb
|
|
Reduced the number of lists, standardized the accepted parameters
for using vulkan.py, and fixed up naming in preparation for
codegening vulkan.py.
Change-Id: I4dd4fff15733fc73bf0712b306fc651333568ece
|
|
Change-Id: Ic1d6ebdb73e796cbb1207963973e410c9928c04f
|
|
defined
This commit fixes GH-1084. (see the issue for more details)
Note that this adds /usr/local/etc and /usr/local/share to the
loader's search path for drivers and layers.
Change-Id: I2cf502cc7d905225c8d38383ea6f856a4daed3ea
Signed-off-by: Dor Askayo <dor.askayo@gmail.com>
|
|
In order to improve the loader's compatibility with different filesystem hierarchies
under Linux, use CMake's CMAKE_INSTALL_FULL_<dir> instead of CMAKE_INSTALL_<dir> to
correctly resolve the absolute paths of SYSCONFDIR and DATADIR in compliance with
the GNU Coding Standard [1] and Linux Foundation's Filesystem Hierarchy Standard [2],
as explained in CMake's documentation [3].
Note to packagers: When using CMAKE_INSTALL_PREFIX, this commit obviates the
definition of other CMAKE_INSTALL_ defines to properly detect ICD and layer
manifests in GNU/Linux-compliant filesystems.
This commit fixes GH-1083. (see the issue for more details)
[1] https://www.gnu.org/prep/standards/html_node/Directory-Variables.html
[2] https://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html
[3] https://cmake.org/cmake/help/v3.4/module/GNUInstallDirs.html
Change-Id: If743a3c8f5f7381e00c0d23b95b9e13c0dead144
Signed-off-by: Dor Askayo <dor.askayo@gmail.com>
|
|
The loader was freeing a previously allocated struct of physical
devices every vkEnumeratePhysicalDevice call. This caused
pointers to become stale. This change doesn't fix every scenario,
but it does return the loader to the behavior it had before.
Future work will re-evaluate the list every time and add/remove
items as necessary.
Change-Id: I32b27df1fab521826e6cd15c534d3ab4b2ea0688
|
|
Change-Id: I97ba1643e17bb97faa868123f5ef6e6f140a9b13
|
|
Change-Id: I78f9c5ecb36edbd2515f7ef2a889519e45707ea8
|
|
Change-Id: Ib6638235ccf006e962ea3bacac82fdc1a75e08e4
|
|
Instead of using a bool array and both checking and writing to it every
frame for no reason, just create the presentation fences with the
VK_FENCE_CREATE_SIGNALED_BIT flag.
Change-Id: Icfa630a821bade51439ecbc6edddd4973d7bd4ed
|
|
Change-Id: Ibdebf762561e5e0888c3c04e5047d9d879d5f45a
|
|
Mult-purpose the image aspect mask validation code to run both at
CreateImageView time and at ValidateBarriers time. There was some basic
image aspect mask validation at ValidateBarriers, but this makes it
more complete and will catch some escapes.
Update the tests related to these checks to account changes in error
messages and also trying to remove some unexpected errors.
|
|
Move CreateImageView checks from image layer to core_validation.
This is in preparation of dual-purposing the aspect mask checking
code to perform the same check on barriers.
Also updated these checks to use unique errors enums and made
corresponsing changes to the database file.
|
|
Rename skip_call->skip in CreateImageView()
|
|
We'd already excluded edges to/from VK_SUBPASS_EXTERNAL, but we don't
want any of the other weird cases either; if we attempted to trace use
of an attachment, and found a subpass which /didn't/ use it, but had a
self-dependency, we'd get stuck chasing that dependency recursively
until we exhausted the stack.
Fixes #1094
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
If a dispatch table entry needed to be protected by a #ifdef and was
the last prototype in the list, the corresponding #endif was not
generated causing compilation failures.
Change-Id: I8760bf546bc38d6fc7d80cd3a095e52977dc554e
|
|
VulkanTools still uses some of the removed vulkan.py functionality.
Adding back in to facilitate trunk merges.
Change-Id: I92b4793f551e5d2afa46f353984a97ee87d831f4
|
|
Simplify the code based on review feedback. Don't need loop guard and
don't need to clear the set of struct that's about to be freed.
|
|
All of the Destroy functions Pre* calls had a bug where, if the disable
flag was on, the state ptr and object struct were not correctly set.
Updated all of these cases to first update state ptr and obj_struct and
only then check the disable flag.
|
|
|
|
Update DestroyEvent to use the Pre/Post call pattern and add a
validation flag.
|
|
Updated FreeMemory to follow the Pre/Post call pattern. There was some
old code that I was able to just throw away such as clearing memory
struct members before the struct was freed, a few separate info
messages that aren't very useful, and some broken code that would clear
every mem reference on a cmd buffer when only a single mem object would
be freed.
Also added validation flag, unique error enum, and updated database
file.
|
|
If memory object is invalid, object_tracker should not call down the
chain. Also, update validation test to expect that object_tracker
will flag the invalid handle instead of core_validation.
|
|
Rename some vars from camelCase to lowercase to meet style guide.
There was one line where we re-did a calculation that I updated to use
the already calculated value.
|
|
Memory objects inherit cb_bindings from BASE_NODE so don't need
redundant command_buffer_bindings. Remove that and update the code to
use the standard cb_bindings.
Also renamed a few vars from camelCase while touching code.
|
|
Update DestroyCommandPool to use the Pre/Post pattern and add a
validation flag for these checks.
|
|
Add 4 unique enums for cmd buffer & pool free and reset cases.
Update the database file as well.
|
|
|
|
Update DestroySampler to use the Pre/Post pattern and add a validation
flag for these checks.
|
|
Streamline duplicate binding check, use [] operator instead of emplace,
remove dead comment and add new comment.
|
|
Test case where descriptor set layout had two bindings with the same
value.
|
|
Update CreateDescriptorSetLayout() to use Pre/Post pattern and split
out validation of createInfo for the layout to occur before the
creation of the layout.
|
|
Add unique error enum for the case where descriptor bindings are
duplicated.
|
|
Fixes #870
CBSTATUS_ALL was not clear so changed to more descriptive
CBSTATUS_ALL_STATE_SET. This mask is used to flag all of the pipeline
state for a cmd buffer as "set." The setting can then be adjusted based
on which state was flagged as dynamic in the pipeline state object.
|
|
Bring spec.py up-to-date so that it properly reads in the API and
note columns from the database file, and retains any note text when
updating.
|
|
This adds two columns to the error database file.
The first is the Vulkan api call that the error is related to.
The second is a free txt field for "notes" as the last column.
The spec.py script in this commit is a slightly hacky version that
was used to generate the updated database file. In follow-on commit
I'll update the spec.py file to correctly handle the updated database
file format.
|
|
When generating unique error enums, detect and flag identical error
strings and then skip them. The error strings should be unique so this
recognizes cases when they aren't and recommends spec review and filing
a spec bug as appropriate.
|