| Age | Commit message (Collapse) | Author |
|
The unique_objects layer wraps objects -- layers that wrap objects
should output an error message if used with any extension that is
not explicitly supported by the layer. Added a whitelist of supported
extensions and error messages for unsupported extensions.
Change-Id: I9ce0acb22ddfa5b81e36c7e03fffad0777b5410d
|
|
Change-Id: Idfc67481589ea9698ab82501889680044fcf8276
|
|
Enable config file control of debug output from the unique_objects
layer.
Change-Id: I31ac885743aa3b03b70b55329b3fea852db2cd27
|
|
Allows messages to be output from this layer in configurations with
no explicit output settings.
Change-Id: I17c604db7461ae10eedd0b3fb3f9440a6dc52eab
|
|
Change-Id: Ib276761a94e627c0e5504ca22737649c7722113c
|
|
A pending Vulkan spec change contains updates to the WSI example code. This is
a coordinated, cosmetic change, that allows the example code and demo code to
more-closely match.
|
|
Updated to more recent SPIRV, SPIRV_headers, and glslang commits.
This also required updating the overall build to use a new
library SPVRemapper.lib.
Change-Id: I47573be7a1fe62c519f504920590ceb6510a7a13
|
|
Change-Id: Ie159ffd434b98e5679e7645dc8dc4c913b26fa4f
|
|
|
|
As part of the 1.0.24 header updates, changed the format information
query functions to lookup via a map in order to handle non-sequential
format enums incorporated as part of an extension.
Change-Id: I558d710889c7e9f6878141a8213777afb1077c99
|
|
Change-Id: I3825299492a89ea9d43f42052877e91bd2f8f76f
|
|
Change-Id: Ic256fc2ae1214b26b32a3f61459235359cfd8249
|
|
Change-Id: I1114e34656061fb2de34649c63dd480ec6069d77
|
|
Change-Id: Ic0bea63b6ec898e496ba124b57ad8b848bdd0b7d
|
|
Change-Id: I151125e8cc140d41b533707eb1b28dbe9b63a914
|
|
The loader had a stale file version. This version gets replaced
as part of a standard SDK build, but we should have a unique
ID for a developer built loader. I updated it to have build 1111
and patch 2222 by default.
Change-Id: I70c3152b2ea5f29a072af94ca5f5a19227bbee67
|
|
Update the README.md to have a note about updating your Nvidia
driver to resolve failures with the glslang hack removal.
Change-Id: Id1b71cc7baae90571bef624f07ff1c7511718b0c
|
|
This reverts commit d6decaa8f78fba8746c55e9247add042b90b56fa.
Attempting to see if this is causing the newly encountered errors
on Nvidia Linux, or if it's related to the glslang issue that
was fixed and people just need to update drivers.
|
|
For new sampleCount/Image tests
Change-Id: Ie857e56b38170e343486f2958a4d5afe7fcdcc12
|
|
Check that an image's sampleCount is valid for BlitImage,
CopyImageToBuffer and CopyBufferToImage.
Change-Id: I5e012e35bd2eb87cd42798a0cacdb03ed64b3c3b
|
|
Linux's sh file didn't clobber previous external items synced.
This is having a problem with the previous changes which reverted
the glslang texel fetch patch, and then updated the revision.
Change-Id: I0e8e28d11fa40df00a5fb9164624f113b2adf084
|
|
Update the SPIR-V Tools, SPIR-V Headers, and Glslang revisions
for the upcoming SDK.
Change-Id: I12d57d75691d1a0e40efd986247ecdb58bf0bf61
|
|
Previously, we had to revert a texel fetch fix in glslang as
part of the update_external_sources.bat/sh due to a bug in the
certain drivers. The drivers have been fixed and released so
we can remove the change.
Change-Id: I018a0dbbc5fb27d7fbd91bc3073f0f5bef5cd346
|
|
This is clearer at the call site, should be no slower in C++11+, and
complies with the style guide.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
And document supported configurations
Change-Id: Ib6cdccf48c75373acfc2ebe625719360caa16657
|
|
only window system
Change-Id: I76a36e3aad059356bcb69455702ade1cfec8b924
Signed-off-by: Mun Gwan-gyeong <elongbug@gmail.com>
|
|
A test application was written that didn't properly call some count-based query
commands. In this particular case, they always hard-coded the count variable
to 1 the 2nd time the query was called. The swapchain layer was only recording
the 1st count value in this case, and this caused a seg fault when the
vkCreateSwapchainKHR command validation code was run.
This commit better defends against such poorly-written applications, so that
the vkCreateSwapchainKHR command validation code won't seg fault. This
includes looking for VK_INCOMPLETE as a successful return code from the ICD.
|
|
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
|
|
Replace std::string with ParameterName for the parameter_validation
utility functions so that the parameter names printed by these
functions contain the correct array subscript values.
Issues-Addressed: GitHub #462
Change-Id: I09fc6a45e8e41ba28ef7d8fc44ce9e8874feefad
|
|
Add a custom parameter name class with support for deferred
formatting of names containing array subscripts. The class
stores a format string and a vector of index values, and
performs string formatting when an accessor function is called
to retrieve the name string.
Change-Id: I941116a16b6fa19e63314cbeab33223e0fa072d3
|
|
Change-Id: Iae099e6edffacdfad010aebe099e8e13d2ef8510
|
|
When dealing with dynamic offsets, the binding numbers, and array indices within
a binding, are all sequential.
This is according to the spec "Descriptor Set Binding" section which states,
"...entries are ordered by the binding numbers in the descriptor set layouts; and
within a binding array, elements are in order."
This means when processing the binding numbers to validate the dynamic offsets at
draw time, we should do so in order to make sure that the sequential dynamic offset
index correctly correlates with the dynamic offset being processed.
|
|
This test hits 3 newly added checks of an invalid cmd buffer at submit time due to:
1. Bound descriptor set sampler being destroyed
2. Bound descriptor set image being destroyed
3. Bound descriptor set being destroyed
|
|
This test creates a cmd buffer and binds a buffer-type descriptor set.
Then it detroys the buffer prior to submitting cmd buffer and verifies
that the cmd buffer is flagged as invalid.
|
|
This commit creates bindings between a cmd buffer and the images/buffers
and their memory allocations that are tied to that cmd buffer's active
descriptor slots (set/binding combination).
The active resources are anything that's in use during any of the draws
issued in the cmd buffer.
If any of the bound resources are deleted, the cmd buffer will become
invalid and an error will be issued on the next attempt to submit it.
|
|
The AddCommandBufferBinding[Image|Buffer]() functions both had an
unused parameter that was killed, and they both returned a bool
that was not needed so removed that too.
Also made layer_data* param const and put prototypes into
core_validation_types.h in prepration of using these functions
from the DescriptorSet class.
|
|
Update SAMPLER_NODE to inherit from BASE_NODE and keep track of
cb_bindings for sampler.
At draw time, add any bindings between cmd buffer and samplers that
are connected to active descriptors.
At DestroySampler() time, set CB_INVALID for any cmd buffers in
cb_bindings.
Also includes some additional plumbing to prepare for connecting
images/buffers that are tied to descriptor sets to cmd buffers that
those sets are bound to.
|
|
Don't create a binding between every set bound to a cmd buffer, but only
the sets that are verified active at draw time.
Gather up active descriptorset bindings in prepration of also binding the
resources from each individual active set to the cmd buffer.
|
|
Move PIPELINE_NODE struct to core_validation_types.h so that it's visible to
descriptorSet class. Update cmd buffer lastBound state to store ptr to
PIPELINE_NODE instead of VkPipeline which saves extra lookups.
|
|
Rename a bit of code as I touch it to match general code style.
Switch a few CamelCase to lower_case and use "dev_data" instead
of "my_data" as it's more descriptive.
|
|
This is start of a series intended to enable CB_INVALID tracking for
descriptor sets. Much of the tracking is already in place in the
special-purpose uniqueBoundSets data struct, so I'll be migrating
the tracking from that struct to the more general-purpose
object_bindings set.
|
|
These formats were incorrectly specified as using an 8-byte storage
class, but each 4x4 block is actually compressed to 128 bits.
Change-Id: I33353cbe3574f0c640b68c8c3c544a286c79ed49
|
|
Plumbed function name through for more descriptive error
messages from validate_and_update_drawtime_descriptor_state().
Change-Id: I109e14e07e6a5ba29c45dc3e0ad075ff3575d67f
|
|
Change-Id: I9a0cca05f387c291494edf6970e0dd34d5922fe6
|
|
CmdCopyImage and CmdCopyImageToBuffer/CmdCopyBufferToImage have
parameters that must respect the Image Transfer Granularity
requirements set in queue family property minImageTransferGranularity.
Change-Id: Ic0fed33c201310bafe86f6f509a63b675de1d572
|
|
Updated entry for new BufferImageCopy checks.
Change-Id: I85ea2eeacae6885fbd6729180167cbe1abe4c176
|
|
Added valid usage checks for members of this structure used in
vkCmdCopyImageToBuffer and vkCmdCopyBufferToImage.
Change-Id: I62ec7b04504e91fa33c86d1a5b606ba8fb7a294a
|
|
Change-Id: I5ca986c95b97cdf97a0f65b0c34db32d91428645
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|
|
Signed-off-by: Chris Forbes <chrisforbes@google.com>
|